diff --git a/MOD/Witcher/changelog.txt b/MOD/Witcher/changelog.txt index 7f0616bb5..1f90ef810 100644 --- a/MOD/Witcher/changelog.txt +++ b/MOD/Witcher/changelog.txt @@ -2,7 +2,7 @@ v0.11.0 Next release ---------------------------------------------------------------------------------------------------------------- -Compatibility with vanilla 3.1.1 #129 +Compatibility with vanilla 3.2.0 #129 Feature: - Add maritime trade route with Ofier #55 @@ -11,6 +11,7 @@ Feature: - Nudge positions.txt to display great works on the map - Adapt great works conditions to the lore - Disable great works within mage towers and wilderness provinces +- Transform Coram Agh Tera religion into a dark cult based off vanilla satanist society #41 - Add a placeholder Witcher society #42 - Add Hugo of Rivia (32410) - Add "the Seer" nickname diff --git a/MOD/Witcher/common/scripted_triggers/00_scripted_triggers.txt b/MOD/Witcher/common/scripted_triggers/00_scripted_triggers.txt index 0017fd1f7..4dc156086 100644 --- a/MOD/Witcher/common/scripted_triggers/00_scripted_triggers.txt +++ b/MOD/Witcher/common/scripted_triggers/00_scripted_triggers.txt @@ -3356,7 +3356,7 @@ has_assassins_prerequisites = { } has_common_devilworship_prerequisites = { - age = 16 + age = 15 custom_tooltip = { text = must_be_a_sinner_tooltip hidden_tooltip = { @@ -3372,14 +3372,37 @@ has_common_devilworship_prerequisites = { } has_satanists_prerequisites = { - has_common_devilworship_prerequisites = yes + #has_common_devilworship_prerequisites = yes + is_adult = yes + OR = { + religion = melitele + religion = kreve + religion = lebioda + religion = eternal_fire + religion = solar + } OR = { - religion_group = christian - religion_group = muslim - religion_group = zoroastrian_group - religion_group = jewish_group - religion = zun_pagan - religion = zun_pagan_reformed + trait = possessed + trait = lunatic + # Cruelty + trait = cruel + trait = cannibal_trait + trait = impaler + is_any_kinslayer_trigger = yes + any_kill_list_character = { + count = 5 + } + # Close to death + trait = duelist + trait = veteran + trait = physician + # Tragedy + any_child_even_if_dead = { + is_alive = no + } + any_spouse_even_if_dead = { + is_alive = no + } } } diff --git a/MOD/Witcher/common/societies/00_societies.txt b/MOD/Witcher/common/societies/00_societies.txt index b1cfe267e..9b5e8205b 100644 --- a/MOD/Witcher/common/societies/00_societies.txt +++ b/MOD/Witcher/common/societies/00_societies.txt @@ -1 +1,4254 @@ -# Empty \ No newline at end of file +###MONASTIC ORDER### + +hermetics = { + primary_attribute = learning + society_ranks_gfx = generic_ranks + opinion_to_other_members = +10 + opinion_per_rank_above = +5 + sound = hermetic_society_interface + society_influence = no + non_interference = { + always = yes + } + + active = { + has_dlc = "Mystics" + always = no + } + indestructible = yes + + can_join_society = { + hidden_trigger = { + NAND = { + ai = yes + is_society_rank_full = { + society = hermetics + rank = 1 + } + } + OR = { + is_landed = yes + is_patrician = yes + } + } + learning = 10 + NOR = { + is_nomadic = yes + is_tribal = yes + } + hidden_trigger = { mercenary = no } + age = 16 + hidden_trigger = { + NOT = { has_character_flag = society_join_block } + } + trigger_if = { + limit = { prisoner = yes } + prisoner = no + } + } + + show_society = { + OR = { + #society_member_of = hermetics + } + } + + potential = { + #If something is added here, it could break apprenticeship. Create an event if they can get kicked out. title_hermetics_apprentice + } + + society_rank = { + level = 1 + limit = 200 + startup_limit = 10 + modifier = { + church_opinion = -10 + #economy_techpoints = 0.05 + } + decisions = { + hermetics_write_theory_paper # Enables you to write a theorem paper that, if approved, gives you society power + } + } + + society_rank = { + level = 2 + limit = 100 + startup_limit = 6 + modifier = { + learning = 1 + church_opinion = -10 + } + decisions = { + hermetics_perform_scrying # Enables you to perform a scrying and gain an omen + brew_happiness_potion # Enables you to brew a potion + } + } + + society_rank = { + level = 3 + limit = 50 + startup_limit = 4 + modifier = { + learning = 2 + church_opinion = -10 + } + decisions = { + hermetics_make_horoscope # Enables you to "predict" your children's future + } + } + + society_rank = { + level = 4 + limit = 20 + startup_limit = 2 + modifier = { + learning = 3 + church_opinion = -10 + } + decisions = { + choose_hermetic_art # Enables you to pick/change your lifestyle trait + hermetics_write_magnum_opus # Write an enciphered book of lore (artifact) + } + } + + plots = { + } + + monthly_currency_gain = { + name = currency_name_hermetics + + per_attribute = { + name = learning + value = 0.5 + } + has_trait = { + value = 2 + trait = diligent + } + has_trait = { + value = 1 + trait = scholar + } + has_trait = { + value = 1 + trait = mystic + } + has_trait = { + value = 1 + trait = erudite + } + has_trait = { + value = 1 + trait = stubborn + } + has_trait = { + value = 1 + trait = patient + } + has_trait = { + value = 1 + trait = genius + } + has_trait = { + value = 1 + trait = quick + } + has_trait = { + value = 1 + trait = shrewd + } + has_trait = { + value = 1 + trait = just + } + society_rank = { + rank = 4 + value = 10 + } + } + + member_score_per_attribute = 3 + member_score_per_rank = 100 + + member_score = { + value = 10 + + modifier = { + factor = 2 + trait = diligent + } + modifier = { + factor = 1.5 + trait = scholar + } + modifier = { + factor = 1.5 + trait = mystic + } + modifier = { + factor = 1.5 + trait = erudite + } + modifier = { + factor = 1.5 + trait = stubborn + } + modifier = { + factor = 1.5 + trait = patient + } + modifier = { + factor = 1.5 + OR = { + trait = genius + trait = quick + trait = shrewd + } + } + modifier = { + factor = 1.5 + trait = just + } + } + + startup_populate = { + trigger = { + ai = yes + controls_religion = no + age = 16 + is_in_society = no + is_dumb_trigger = no + OR = { + NOT = { is_priest = yes } + OR = { + trait = mystic + trait = scholar + trait = cynical + } + } + OR = { + AND = { + is_landed = yes + OR = { + learning = 14 + trait = scholar + trait = faqih + trait = erudite + trait = genius + trait = mystic + } + } + AND = { + learning = 18 + OR = { + trait = scholar + trait = faqih + trait = erudite + trait = genius + trait = mystic + learning = 20 + } + } + } + } + } +} + +###THE ASSASSINS### +the_assassins = { + primary_attribute = intrigue + is_secret = yes + devil_worshipper = no + opinion_to_other_members = +10 + opinion_to_pretenders = -20 #Pretenders is the opinion you have of people perceived/discovered to be in your society. + opinion_to_perceived_members = -20 #Perceived is the opinion you have of people perceived/discovered to be of a society you're not part of + opinion_per_rank_above = +10 + society_rank_up_decision = request_to_rank_up_within_society + sound = assassins_interface + society_ranks_gfx = generic_ranks + society_influence = no + + active = { + has_dlc = "Mystics" + always = no + } + indestructible = yes + + can_join_society = { + hidden_trigger = { + NAND = { + ai = yes + is_society_rank_full = { + society = the_assassins + rank = 1 + } + } + } + age = 16 + OR = { + true_religion = shiite + religion_group = muslim + AND = { + trait = sympathy_islam + trait = deceitful + NOT = { trait = zealous } + OR = { + trait = schemer + trait = elusive_shadow + intrigue = 18 + } + } + AND = { + ai = no + NOT = { trait = zealous } + any_playable_ruler = { + religion = shiite + NOT = { + distance_from_realm = { value = 300 who = ROOT } + } + } + } + } + OR = { + is_female = no + has_game_rule = { + name = gender + value = all + } + has_religion_feature = religion_matriarchal + } + OR = { + is_female = yes + NOT = { + has_religion_feature = religion_matriarchal + } + } + hidden_trigger = { + NOT = { has_character_flag = society_join_block } + } + trigger_if = { + limit = { prisoner = yes } + prisoner = no + } + } + + show_society = { + OR = { + society_member_of = the_assassins #You can always see the society you are a part of + AND = { + OR = { + religion_group = muslim + secret_religion = shiite + AND = { + ai = no + NOT = { trait = zealous } + any_playable_ruler = { + religion = shiite + NOT = { + distance_from_realm = { value = 300 who = ROOT } + } + } + } + } + age = 16 + OR = { + is_female = no + has_game_rule = { + name = gender + value = all + } + has_religion_feature = religion_matriarchal + } + OR = { + is_female = yes + NOT = { + has_religion_feature = religion_matriarchal + } + } + } + } + } + + potential = { + OR = { + religion = shiite + secret_religion = shiite + } + } + + society_rank = { + level = 1 + limit = 20 + startup_limit = 10 + modifier = { + is_visible = { + OR = { + society_member_of = the_assassins + FROM = { is_society_discovered = yes } + } + } + murder_plot_power_modifier = 0.1 # increased plotpower + } + decisions = { + decision_abduct + assassins_borrow_money + assassins_donate + assassins_drug_effect + } + } + + society_rank = { + level = 2 + limit = 15 + startup_limit = 6 + modifier = { + is_visible = { + OR = { + society_member_of = the_assassins + FROM = { is_society_discovered = yes } + } + } + murder_plot_power_modifier = 0.2 # further increased plotpower + defensive_plot_power_modifier = 0.1 + intrigue = 1 + combat_rating = 10 # bonus to dueling + } + decisions = { + assassins_scare_ruler #Available (targeted) Power: Can scare rulers to get a Favor (leave a dagger on their pillow, etc. + } + } + + society_rank = { + level = 3 + limit = 5 + startup_limit = 3 + modifier = { + is_visible = { + OR = { + society_member_of = the_assassins + FROM = { is_society_discovered = yes } + } + } + murder_plot_power_modifier = 0.30 # further increased plotpower + defensive_plot_power_modifier = 0.15 + intrigue = 2 # further increase + combat_rating = 10 # bonus to dueling (left over) + plot_discovery_chance = 0.1 # bonus to plot discovery chance + } + decisions = { + assassins_raise_ships #Available Power: Can raise special fleet of Ships + } + } + + society_rank = { + level = 4 + limit = 1 + startup_limit = 1 + modifier = { + is_visible = { + OR = { + society_member_of = the_assassins + FROM = { is_society_discovered = yes } + } + } + murder_plot_power_modifier = 0.50 # further increased plotpower + defensive_plot_power_modifier = 0.25 + intrigue = 3 # further increase + combat_rating = 10 # bonus to dueling (left over) + plot_discovery_chance = 0.2 # further bonus to plot discovery chance + } + decisions = { + assassins_raise_troops #Available Power: Can raise a special regiment + assassins_mark_for_death #Available (targeted) Power: Mark for death (+ assassins_clear_marked_for_death_target i.e. the clearing of the mark) + } + obedience_tooltip = obedience_tooltip #this can be unique per rank/society + obedient = { + ROOT = { + always = yes + } + } + } + + monthly_currency_gain = { + name = currency_name_the_assassins + + per_attribute = { + name = intrigue + value = 0.5 + } + has_trait = { + trait = zealous + value = 3 + } + has_trait = { + trait = erudite + value = 3 + } + has_trait = { + trait = scholar + value = 3 + } + has_trait = { + trait = theologian + value = 3 + } + has_trait = { + trait = schemer + value = 3 + } + has_trait = { + trait = strong + value = 1 + } + has_trait = { + trait = robust + value = 1 + } + has_trait = { + trait = genius + value = 1 + } + has_trait = { + trait = quick + value = 1 + } + has_trait = { + trait = shrewd + value = 1 + } + has_trait = { + trait = diligent + value = 1 + } + has_trait = { + trait = patient + value = 1 + } + has_trait = { + trait = temperate + value = 1 + } + has_trait = { + trait = charitable + value = 1 + } + society_rank = { + rank = 4 + value = 10 + } + } + + member_score_per_attribute = 3 + member_score_per_rank = 100 + + member_score = { + value = 10 + + modifier = { + primary_title = { title = d_hashshashin } + factor = 2 + } + modifier = { + trait = zealous + factor = 1.3 + } + modifier = { + trait = erudite + factor = 1.3 + } + modifier = { + trait = scholar + factor = 1.3 + } + modifier = { + trait = theologian + factor = 1.3 + } + modifier = { + trait = schemer + factor = 1.3 + } + modifier = { + trait = strong + factor = 1.1 + } + modifier = { + trait = robust + factor = 1.1 + } + modifier = { + trait = genius + factor = 1.1 + } + modifier = { + trait = quick + factor = 1.1 + } + modifier = { + trait = shrewd + factor = 1.1 + } + modifier = { + trait = diligent + factor = 1.1 + } + modifier = { + trait = patient + factor = 1.1 + } + modifier = { + trait = temperate + factor = 1.1 + } + modifier = { + trait = charitable + factor = 1.1 + } + } + + startup_populate = { + trigger = { + ai = yes + controls_religion = no + religion = shiite + age = 16 + OR = { + is_female = no + has_game_rule = { + name = gender + value = all + } + has_religion_feature = religion_matriarchal + } + OR = { + is_female = yes + NOT = { + has_religion_feature = religion_matriarchal + } + } + NOT = { trait = decadent } + OR = { + trait = zealous + trait = schemer + trait = elusive_shadow + trait = deceitful + trait = ambitious + intrigue = 18 + } + is_in_society = no + NOT = { higher_tier_than = DUKE } + NOT = { mercenary = yes } + OR = { + NOT = { holy_order = yes } + primary_title = { title = d_hashshashin } + } + } + } +} + +###DEVIL WORSHIPERS### +the_satanists = { + primary_attribute = intrigue + is_secret = yes + criminal = yes + devil_worshipper = yes + opinion_to_other_members = +5 + opinion_to_pretenders = -40 #Pretenders is the opinion you have of people perceived/discovered to be in your society. + opinion_to_perceived_members = -40 #Perceived is the opinion you have of people perceived/discovered to be of a society you're not part of + opinion_per_rank_above = +10 + sound = devil_worshippers_interface + society_ranks_gfx = devil_ranks + society_influence = no + + active = { + has_dlc = "Mystics" + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + } + indestructible = yes + + can_join_society = { + hidden_trigger = { + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + NAND = { + ai = yes + is_society_rank_full = { + society = the_satanists + rank = 1 + } + } + } + has_satanists_prerequisites = yes + hidden_trigger = { + NOT = { has_character_flag = society_join_block } + } + trigger_if = { + limit = { prisoner = yes } + prisoner = no + } + } + + show_society = { + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + is_adult = yes + OR = { + religion = melitele + religion = kreve + religion = lebioda + religion = eternal_fire + religion = solar + society_member_of = the_satanists + } + } + + potential = { } #no rules + + society_rank = { + level = 1 + limit = 100 + startup_limit = 10 + decisions = { + decision_abduct + prisoner_dark_sacrifice #Available Decision: Sacrifice Prisoner + #Over time, lose virtues, gain vices. A Soul Corruption-effect is on a yearly pulse (with a chance to do nothing) + } + + #custom_tooltip = unlockable_DW_powers_at_rank_2; + } + + society_rank = { + level = 2 + limit = 50 + startup_limit = 6 + modifier = { + is_visible = { + OR = { + society_member_of = the_satanists + FROM = { is_society_discovered = yes } + } + } + intrigue = 1 + } + decisions = { + devil_worshipers_summon_familiar #Available Power: Summon Familiar + the_devil_worshipers_tainted_touch #Available Power: Curse people with disease + devil_worshipers_demonic_possession #Available Power: Possess someone to make fanatically loyal + #Available Power: Abduction plot + #unlock new options in Seduction and Spy On? + } + + #custom_tooltip = unlockable_DW_powers_at_rank_3; + } + + society_rank = { + level = 3 + limit = 25 + startup_limit = 3 + modifier = { + is_visible = { + OR = { + society_member_of = the_satanists + FROM = { is_society_discovered = yes } + } + } + intrigue = 2 + } + decisions = { + devil_worshipers_dark_divorce #Available Power: Dark Divorce + devil_worshipers_dark_healing #Available Power: Demonic Healing. Sacrifice a prisoner to heal a random illness or maiming. + devil_worshipers_invite_disciple_of_devil #Available Decision: Invite a witch to court + #Available Power: Love Potion + } + + #custom_tooltip = unlockable_DW_powers_at_rank_4; + } + + society_rank = { + level = 4 + limit = 1 + startup_limit = 1 + modifier = { + is_visible = { + OR = { + society_member_of = the_satanists + FROM = { is_society_discovered = yes } + } + } + intrigue = 3 + } + decisions = { + + DW_prolong_life #Available Power: Prolong Life + DW_demonic_impregnation #Available power: Unholy Impregnation + } + obedience_tooltip = obedience_tooltip #this can be unique per rank/society + obedient = { + ROOT = { + always = yes + } + } + } + + plots = { + plot1_tag + plot2_tag + } + + ambitions = { + ambition1_tag + ambition2_tag + } + + monthly_currency_gain = { + name = currency_name_the_satanists + + per_attribute = { + name = intrigue + value = 0.5 + } + triggered_gain = { + desc = loc_is_revealed_antichrist + trigger = { has_character_modifier = demon_horns + } + value = 10 + } + has_trait = { + trait = ambitious + value = 5 + } + has_trait = { + trait = genius + value = 4 + } + has_trait = { + trait = quick + value = 3 + } + has_trait = { + trait = shrewd + value = 3 + } + has_trait = { + trait = hedonist + value = 3 + } + has_trait = { + trait = mystic + value = 3 + } + has_trait = { + trait = seducer + value = 3 + } + has_trait = { + trait = seductress + value = 3 + } + has_trait = { + trait = schemer + value = 3 + } + has_trait = { + trait = impaler + value = 3 + } + has_trait = { + trait = cannibal_trait + value = 3 + } + has_trait = { + trait = cruel + value = 2 + } + has_trait = { + trait = lustful + value = 1 + } + has_trait = { + trait = proud + value = 1 + } + has_trait = { + trait = greedy + value = 1 + } + has_trait = { + trait = deceitful + value = 1 + } + has_trait = { + trait = arbitrary + value = 1 + } + has_trait = { + trait = kinslayer + value = 5 + } + has_trait = { + trait = familial_kinslayer + value = 3 + } + has_trait = { + trait = dynastic_kinslayer + value = 1 + } + has_trait = { + trait = baptized_by_satan + value = 5 + } + society_rank = { + rank = 4 + value = 10 + } + } + + member_score_per_attribute = 3 + member_score_per_rank = 100 + + member_score = { + value = 10 + + modifier = { + has_character_modifier = demon_horns + factor = 2 + } + modifier = { + trait = baptized_by_satan + factor = 1.75 + } + modifier = { + trait = ambitious + factor = 1.5 + } + modifier = { + trait = genius + factor = 1.3 + } + modifier = { + trait = quick + factor = 1.3 + } + modifier = { + trait = shrewd + factor = 1.3 + } + modifier = { + trait = hedonist + factor = 1.3 + } + modifier = { + trait = mystic + factor = 1.3 + } + modifier = { + trait = seducer + factor = 1.3 + } + modifier = { + trait = seductress + factor = 1.3 + } + modifier = { + trait = schemer + factor = 1.3 + } + modifier = { + trait = impaler + factor = 1.3 + } + modifier = { + trait = cannibal_trait + factor = 1.3 + } + modifier = { + trait = lustful + factor = 1.1 + } + modifier = { + trait = proud + factor = 1.1 + } + modifier = { + trait = greedy + factor = 1.1 + } + modifier = { + trait = deceitful + factor = 1.1 + } + modifier = { + trait = arbitrary + factor = 1.1 + } + modifier = { + trait = cruel + factor = 1.2 + } + has_trait = { + trait = kinslayer + value = 1.5 + } + has_trait = { + trait = familial_kinslayer + value = 1.3 + } + has_trait = { + trait = dynastic_kinslayer + value = 1.1 + } + } + + startup_populate = { + trigger = { + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + ai = yes + controls_religion = no + OR = { + true_religion = melitele + true_religion = kreve + true_religion = lebioda + true_religion = eternal_fire + true_religion = solar + } + has_satanists_prerequisites = yes + is_in_society = no + NOT = { higher_tier_than = DUKE } + NOR = { + mercenary = yes + holy_order = yes + } + } + } +} + +the_trollcrafters = { + primary_attribute = intrigue + is_secret = yes + criminal = yes + devil_worshipper = yes + opinion_to_other_members = +5 + opinion_to_pretenders = -40 #Pretenders is the opinion you have of people perceived/discovered to be in your society. + opinion_to_perceived_members = -40 #Perceived is the opinion you have of people perceived/discovered to be of a society you're not part of + opinion_per_rank_above = +10 + sound = devil_worshippers_interface + society_ranks_gfx = devil_ranks + society_influence = no + + active = { + always = no + has_dlc = "Mystics" + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + } + indestructible = yes + + can_join_society = { + hidden_trigger = { + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + NAND = { + ai = yes + is_society_rank_full = { + society = the_trollcrafters + rank = 1 + } + } + } + has_trollcrafters_prerequisites = yes + hidden_trigger = { + NOT = { has_character_flag = society_join_block } + } + trigger_if = { + limit = { prisoner = yes } + prisoner = no + } + } + + show_society = { + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + age = 16 + OR = { + religion = norse_pagan + religion = norse_pagan_reformed + secret_religion = norse_pagan + secret_religion = norse_pagan_reformed + society_member_of = the_trollcrafters + } + } + + potential = { } #no rules + + society_rank = { + level = 1 + limit = 100 + startup_limit = 10 + decisions = { + decision_abduct + prisoner_dark_sacrifice #Available Decision: Sacrifice Prisoner + #Over time, lose virtues, gain vices. A Soul Corruption-effect is on a yearly pulse (with a chance to do nothing) + } + + #custom_tooltip = unlockable_DW_powers_at_rank_2; + } + + society_rank = { + level = 2 + limit = 50 + startup_limit = 6 + modifier = { + is_visible = { + OR = { + society_member_of = the_trollcrafters + FROM = { is_society_discovered = yes } + } + } + intrigue = 1 + } + decisions = { + devil_worshipers_summon_familiar #Available Power: Summon Familiar + the_devil_worshipers_tainted_touch #Available Power: Curse people with disease + devil_worshipers_demonic_possession #Available Power: Possess someone to make fanatically loyal + #Available Power: Abduction plot + #unlock new options in Seduction and Spy On? + } + + #custom_tooltip = unlockable_DW_powers_at_rank_3; + } + + society_rank = { + level = 3 + limit = 25 + startup_limit = 3 + modifier = { + is_visible = { + OR = { + society_member_of = the_trollcrafters + FROM = { is_society_discovered = yes } + } + } + intrigue = 2 + } + decisions = { + devil_worshipers_dark_divorce #Available Power: Dark Divorce + devil_worshipers_dark_healing #Available Power: Demonic Healing. Sacrifice a prisoner to heal a random illness or maiming. + devil_worshipers_invite_disciple_of_devil #Available Decision: Invite a witch to court + #Available Power: Love Potion + } + + #custom_tooltip = unlockable_DW_powers_at_rank_4; + } + + society_rank = { + level = 4 + limit = 1 + startup_limit = 1 + modifier = { + is_visible = { + OR = { + society_member_of = the_trollcrafters + FROM = { is_society_discovered = yes } + } + } + intrigue = 3 + } + decisions = { + DW_prolong_life #Available Power: Prolong Life + DW_demonic_impregnation #Available power: Unholy Impregnation + } + obedience_tooltip = obedience_tooltip #this can be unique per rank/society + obedient = { + ROOT = { + always = yes + } + } + } + + plots = { + plot1_tag + plot2_tag + } + + ambitions = { + ambition1_tag + ambition2_tag + } + + monthly_currency_gain = { + name = currency_name_the_trollcrafters + + per_attribute = { + name = intrigue + value = 0.5 + } + has_trait = { + trait = ambitious + value = 5 + } + has_trait = { + trait = genius + value = 4 + } + has_trait = { + trait = quick + value = 3 + } + has_trait = { + trait = shrewd + value = 3 + } + has_trait = { + trait = hedonist + value = 3 + } + has_trait = { + trait = mystic + value = 3 + } + has_trait = { + trait = seducer + value = 3 + } + has_trait = { + trait = seductress + value = 3 + } + has_trait = { + trait = schemer + value = 3 + } + has_trait = { + trait = impaler + value = 3 + } + has_trait = { + trait = one_eyed + value = 3 + } + has_trait = { + trait = lustful + value = 1 + } + has_trait = { + trait = proud + value = 1 + } + has_trait = { + trait = greedy + value = 1 + } + has_trait = { + trait = deceitful + value = 1 + } + has_trait = { + trait = arbitrary + value = 1 + } + society_rank = { + rank = 4 + value = 10 + } + } + + member_score_per_attribute = 3 + member_score_per_rank = 100 + + member_score = { + value = 10 + + modifier = { + trait = ambitious + factor = 1.5 + } + modifier = { + trait = genius + factor = 1.3 + } + modifier = { + trait = quick + factor = 1.3 + } + modifier = { + trait = shrewd + factor = 1.3 + } + modifier = { + trait = hedonist + factor = 1.3 + } + modifier = { + trait = mystic + factor = 1.3 + } + modifier = { + trait = seducer + factor = 1.3 + } + modifier = { + trait = seductress + factor = 1.3 + } + modifier = { + trait = schemer + factor = 1.3 + } + modifier = { + trait = impaler + factor = 1.3 + } + modifier = { + trait = one_eyed + factor = 1.3 + } + modifier = { + trait = lustful + factor = 1.1 + } + modifier = { + trait = proud + factor = 1.1 + } + modifier = { + trait = greedy + factor = 1.1 + } + modifier = { + trait = deceitful + factor = 1.1 + } + modifier = { + trait = arbitrary + factor = 1.1 + } + } + + startup_populate = { + trigger = { + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + ai = yes + controls_religion = no + OR = { + true_religion_norse_pagan_reformed_trigger = yes + true_religion_norse_pagan_trigger = yes + } + OR = { + has_impious_trait_trigger = yes + has_vice_trigger = yes + trait = drunkard + trait = possessed + trait = lunatic + } + age = 16 + is_in_society = no + NOT = { higher_tier_than = DUKE } + NOR = { + mercenary = yes + holy_order = yes + } + } + } +} + + +the_cult_of_kali = { + primary_attribute = intrigue + is_secret = yes + criminal = yes + devil_worshipper = yes + opinion_to_other_members = +5 + opinion_to_pretenders = -40 #Pretenders is the opinion you have of people perceived/discovered to be in your society. + opinion_to_perceived_members = -40 #Perceived is the opinion you have of people perceived/discovered to be of a society you're not part of + opinion_per_rank_above = +10 + sound = devil_worshippers_interface + society_ranks_gfx = devil_ranks + society_influence = no + + active = { + always = no + has_dlc = "Mystics" + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + } + indestructible = yes + + can_join_society = { + hidden_trigger = { + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + NAND = { + ai = yes + is_society_rank_full = { + society = the_cult_of_kali + rank = 1 + } + } + } + has_cult_of_kali_prerequisites = yes + hidden_trigger = { + NOT = { has_character_flag = society_join_block } + } + trigger_if = { + limit = { prisoner = yes } + prisoner = no + } + } + + show_society = { + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + age = 16 + OR = { + religion = hindu + secret_religion = hindu + society_member_of = the_cult_of_kali + } + } + + society_rank = { + level = 1 + limit = 100 + startup_limit = 10 + decisions = { + decision_abduct + prisoner_dark_sacrifice #Available Decision: Sacrifice Prisoner + #Over time, lose virtues, gain vices. A Soul Corruption-effect is on a yearly pulse (with a chance to do nothing) + } + + #custom_tooltip = unlockable_DW_powers_at_rank_2; + } + + potential = { } #no rules + + society_rank = { + level = 2 + limit = 50 + startup_limit = 6 + modifier = { + is_visible = { + OR = { + society_member_of = the_cult_of_kali + FROM = { is_society_discovered = yes } + } + } + intrigue = 1 + } + decisions = { + devil_worshipers_summon_familiar #Available Power: Summon Familiar + the_devil_worshipers_tainted_touch #Available Power: Curse people with disease + devil_worshipers_demonic_possession #Available Power: Possess someone to make fanatically loyal + #Available Power: Abduction plot + #unlock new options in Seduction and Spy On? + } + + #custom_tooltip = unlockable_DW_powers_at_rank_3; + } + + society_rank = { + level = 3 + limit = 25 + startup_limit = 3 + modifier = { + is_visible = { + OR = { + society_member_of = the_cult_of_kali + FROM = { is_society_discovered = yes } + } + } + intrigue = 2 + } + decisions = { + devil_worshipers_dark_divorce #Available Power: Dark Divorce + devil_worshipers_dark_healing #Available Power: Demonic Healing. Sacrifice a prisoner to heal a random illness or maiming. + devil_worshipers_invite_disciple_of_devil #Available Decision: Invite a witch to court + #Available Power: Love Potion + } + + #custom_tooltip = unlockable_DW_powers_at_rank_4; + } + + society_rank = { + level = 4 + limit = 1 + startup_limit = 1 + modifier = { + is_visible = { + OR = { + society_member_of = the_cult_of_kali + FROM = { is_society_discovered = yes } + } + } + intrigue = 3 + } + decisions = { + DW_prolong_life #Available Power: Prolong Life + DW_demonic_impregnation #Available power: Unholy Impregnation + } + obedience_tooltip = obedience_tooltip #this can be unique per rank/society + obedient = { + ROOT = { + always = yes + } + } + } + + plots = { + plot1_tag + plot2_tag + } + + ambitions = { + ambition1_tag + ambition2_tag + } + + monthly_currency_gain = { + name = currency_name_the_cult_of_kali + + per_attribute = { + name = intrigue + value = 0.5 + } + has_trait = { + trait = ambitious + value = 5 + } + has_trait = { + trait = genius + value = 4 + } + has_trait = { + trait = quick + value = 3 + } + has_trait = { + trait = shrewd + value = 3 + } + has_trait = { + trait = hedonist + value = 3 + } + has_trait = { + trait = mystic + value = 3 + } + has_trait = { + trait = seducer + value = 3 + } + has_trait = { + trait = seductress + value = 3 + } + has_trait = { + trait = schemer + value = 3 + } + has_trait = { + trait = impaler + value = 3 + } + has_trait = { + trait = lustful + value = 1 + } + has_trait = { + trait = proud + value = 1 + } + has_trait = { + trait = greedy + value = 1 + } + has_trait = { + trait = deceitful + value = 1 + } + has_trait = { + trait = arbitrary + value = 1 + } + society_rank = { + rank = 4 + value = 10 + } + } + + member_score_per_attribute = 3 + member_score_per_rank = 100 + + member_score = { + value = 10 + + modifier = { + trait = ambitious + factor = 1.5 + } + modifier = { + trait = genius + factor = 1.3 + } + modifier = { + trait = quick + factor = 1.3 + } + modifier = { + trait = shrewd + factor = 1.3 + } + modifier = { + trait = hedonist + factor = 1.3 + } + modifier = { + trait = mystic + factor = 1.3 + } + modifier = { + trait = seducer + factor = 1.3 + } + modifier = { + trait = seductress + factor = 1.3 + } + modifier = { + trait = schemer + factor = 1.3 + } + modifier = { + trait = impaler + factor = 1.3 + } + modifier = { + trait = lustful + factor = 1.1 + } + modifier = { + trait = proud + factor = 1.1 + } + modifier = { + trait = greedy + factor = 1.1 + } + modifier = { + trait = deceitful + factor = 1.1 + } + modifier = { + trait = arbitrary + factor = 1.1 + } + } + + startup_populate = { + trigger = { + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + ai = yes + controls_religion = no + true_religion_hindu_trigger = yes + OR = { + has_impious_trait_trigger = yes + has_vice_trigger = yes + trait = drunkard + trait = possessed + trait = lunatic + } + age = 16 + is_in_society = no + NOT = { higher_tier_than = DUKE } + NOR = { + mercenary = yes + holy_order = yes + } + } + } +} + +the_cold_ones = { + primary_attribute = intrigue + is_secret = yes + criminal = yes + devil_worshipper = yes + opinion_to_other_members = +5 + opinion_to_pretenders = -40 #Pretenders is the opinion you have of people perceived/discovered to be in your society. + opinion_to_perceived_members = -40 #Perceived is the opinion you have of people perceived/discovered to be of a society you're not part of + opinion_per_rank_above = +10 + sound = devil_worshippers_interface + society_ranks_gfx = devil_ranks + society_influence = no + + active = { + always = no + has_dlc = "Mystics" + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + } + indestructible = yes + + can_join_society = { + hidden_trigger = { + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + NAND = { + ai = yes + is_society_rank_full = { + society = the_cold_ones + rank = 1 + } + } + } + has_cold_ones_prerequisites = yes + hidden_trigger = { + NOT = { has_character_flag = society_join_block } + } + trigger_if = { + limit = { prisoner = yes } + prisoner = no + } + } + + show_society = { + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + age = 16 + OR = { + religion = baltic_pagan + religion = baltic_pagan_reformed + secret_religion = baltic_pagan + secret_religion = baltic_pagan_reformed + religion = slavic_pagan + religion = slavic_pagan_reformed + secret_religion = slavic_pagan + secret_religion = slavic_pagan_reformed + religion = finnish_pagan + religion = finnish_pagan_reformed + secret_religion = finnish_pagan + secret_religion = finnish_pagan_reformed + society_member_of = the_cold_ones + } + } + + society_rank = { + level = 1 + limit = 100 + startup_limit = 10 + decisions = { + decision_abduct + prisoner_dark_sacrifice #Available Decision: Sacrifice Prisoner + #Over time, lose virtues, gain vices. A Soul Corruption-effect is on a yearly pulse (with a chance to do nothing) + } + + #custom_tooltip = unlockable_DW_powers_at_rank_2; + } + + society_rank = { + level = 2 + limit = 50 + startup_limit = 6 + modifier = { + is_visible = { + OR = { + society_member_of = the_cold_ones + FROM = { is_society_discovered = yes } + } + } + intrigue = 1 + } + decisions = { + devil_worshipers_summon_familiar #Available Power: Summon Familiar + the_devil_worshipers_tainted_touch #Available Power: Curse people with disease + devil_worshipers_demonic_possession #Available Power: Possess someone to make fanatically loyal + #Available Power: Abduction plot + #unlock new options in Seduction and Spy On? + } + + #custom_tooltip = unlockable_DW_powers_at_rank_3; + } + + society_rank = { + level = 3 + limit = 25 + startup_limit = 3 + modifier = { + is_visible = { + OR = { + society_member_of = the_cold_ones + FROM = { is_society_discovered = yes } + } + } + intrigue = 2 + } + decisions = { + devil_worshipers_dark_divorce #Available Power: Dark Divorce + devil_worshipers_dark_healing #Available Power: Demonic Healing. Sacrifice a prisoner to heal a random illness or maiming. + devil_worshipers_invite_disciple_of_devil #Available Decision: Invite a witch to court + #Available Power: Love Potion + } + + #custom_tooltip = unlockable_DW_powers_at_rank_4; + } + + society_rank = { + level = 4 + limit = 1 + startup_limit = 1 + modifier = { + is_visible = { + OR = { + society_member_of = the_cold_ones + FROM = { is_society_discovered = yes } + } + } + intrigue = 3 + } + decisions = { + DW_prolong_life #Available Power: Prolong Life + DW_demonic_impregnation #Available power: Unholy Impregnation + } + obedience_tooltip = obedience_tooltip #this can be unique per rank/society + obedient = { + ROOT = { + always = yes + } + } + } + + monthly_currency_gain = { + name = currency_name_the_cold_ones + + per_attribute = { + name = intrigue + value = 0.5 + } + has_trait = { + trait = ambitious + value = 5 + } + has_trait = { + trait = genius + value = 4 + } + has_trait = { + trait = quick + value = 3 + } + has_trait = { + trait = shrewd + value = 3 + } + has_trait = { + trait = hedonist + value = 3 + } + has_trait = { + trait = mystic + value = 3 + } + has_trait = { + trait = seducer + value = 3 + } + has_trait = { + trait = seductress + value = 3 + } + has_trait = { + trait = schemer + value = 3 + } + has_trait = { + trait = impaler + value = 3 + } + has_trait = { + trait = lustful + value = 1 + } + has_trait = { + trait = proud + value = 1 + } + has_trait = { + trait = greedy + value = 1 + } + has_trait = { + trait = deceitful + value = 1 + } + has_trait = { + trait = arbitrary + value = 1 + } + society_rank = { + rank = 4 + value = 10 + } + } + + member_score_per_attribute = 3 + member_score_per_rank = 100 + + member_score = { + value = 10 + + modifier = { + trait = ambitious + factor = 1.5 + } + modifier = { + trait = genius + factor = 1.3 + } + modifier = { + trait = quick + factor = 1.3 + } + modifier = { + trait = shrewd + factor = 1.3 + } + modifier = { + trait = hedonist + factor = 1.3 + } + modifier = { + trait = mystic + factor = 1.3 + } + modifier = { + trait = seducer + factor = 1.3 + } + modifier = { + trait = seductress + factor = 1.3 + } + modifier = { + trait = schemer + factor = 1.3 + } + modifier = { + trait = impaler + factor = 1.3 + } + modifier = { + trait = lustful + factor = 1.1 + } + modifier = { + trait = proud + factor = 1.1 + } + modifier = { + trait = greedy + factor = 1.1 + } + modifier = { + trait = deceitful + factor = 1.1 + } + modifier = { + trait = arbitrary + factor = 1.1 + } + } + + startup_populate = { + trigger = { + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + ai = yes + controls_religion = no + OR = { + religion = baltic_pagan + religion = baltic_pagan_reformed + secret_religion = baltic_pagan + secret_religion = baltic_pagan_reformed + religion = slavic_pagan + religion = slavic_pagan_reformed + secret_religion = slavic_pagan + secret_religion = slavic_pagan_reformed + } + OR = { + has_impious_trait_trigger = yes + has_vice_trigger = yes + trait = drunkard + trait = possessed + trait = lunatic + } + age = 16 + is_in_society = no + NOT = { higher_tier_than = DUKE } + NOR = { + mercenary = yes + holy_order = yes + } + } + } +} + +the_plaguebringers = { + primary_attribute = intrigue + is_secret = yes + criminal = yes + devil_worshipper = yes + opinion_to_other_members = +5 + opinion_to_pretenders = -40 #Pretenders is the opinion you have of people perceived/discovered to be in your society. + opinion_to_perceived_members = -40 #Perceived is the opinion you have of people perceived/discovered to be of a society you're not part of + opinion_per_rank_above = +10 + sound = devil_worshippers_interface + society_ranks_gfx = devil_ranks + society_influence = no + + active = { + always = no + has_dlc = "Mystics" + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + } + indestructible = yes + + can_join_society = { + hidden_trigger = { + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + NAND = { + ai = yes + is_society_rank_full = { + society = the_plaguebringers + rank = 1 + } + } + } + has_plaguebringers_prerequisites = yes + hidden_trigger = { + NOT = { has_character_flag = society_join_block } + } + trigger_if = { + limit = { prisoner = yes } + prisoner = no + } + } + + show_society = { + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + age = 16 + OR = { + religion = tengri_pagan + religion = tengri_pagan_reformed + secret_religion = tengri_pagan + secret_religion = tengri_pagan_reformed + society_member_of = the_plaguebringers + } + } + + society_rank = { + level = 1 + limit = 100 + startup_limit = 10 + decisions = { + decision_abduct + prisoner_dark_sacrifice #Available Decision: Sacrifice Prisoner + #Over time, lose virtues, gain vices. A Soul Corruption-effect is on a yearly pulse (with a chance to do nothing) + } + + #custom_tooltip = unlockable_DW_powers_at_rank_2; + } + + society_rank = { + level = 2 + limit = 50 + startup_limit = 6 + modifier = { + is_visible = { + OR = { + society_member_of = the_plaguebringers + FROM = { is_society_discovered = yes } + } + } + intrigue = 1 + } + decisions = { + devil_worshipers_summon_familiar #Available Power: Summon Familiar + the_devil_worshipers_tainted_touch #Available Power: Curse people with disease + devil_worshipers_demonic_possession #Available Power: Possess someone to make fanatically loyal + #Available Power: Abduction plot + #unlock new options in Seduction and Spy On? + } + + #custom_tooltip = unlockable_DW_powers_at_rank_3; + } + + society_rank = { + level = 3 + limit = 25 + startup_limit = 3 + modifier = { + is_visible = { + OR = { + society_member_of = the_plaguebringers + FROM = { is_society_discovered = yes } + } + } + intrigue = 2 + } + decisions = { + devil_worshipers_dark_divorce #Available Power: Dark Divorce + devil_worshipers_dark_healing #Available Power: Demonic Healing. Sacrifice a prisoner to heal a random illness or maiming. + devil_worshipers_invite_disciple_of_devil #Available Decision: Invite a witch to court + #Available Power: Love Potion + } + + #custom_tooltip = unlockable_DW_powers_at_rank_4; + } + + society_rank = { + level = 4 + limit = 1 + startup_limit = 1 + modifier = { + is_visible = { + OR = { + society_member_of = the_plaguebringers + FROM = { is_society_discovered = yes } + } + } + intrigue = 3 + } + decisions = { + DW_prolong_life #Available Power: Prolong Life + DW_demonic_impregnation #Available power: Unholy Impregnation + } + obedience_tooltip = obedience_tooltip #this can be unique per rank/society + obedient = { + ROOT = { + always = yes + } + } + } + + plots = { + plot1_tag + plot2_tag + } + + ambitions = { + ambition1_tag + ambition2_tag + } + + monthly_currency_gain = { + name = currency_name_the_plaguebringers + + per_attribute = { + name = intrigue + value = 0.5 + } + has_trait = { + trait = ambitious + value = 5 + } + has_trait = { + trait = genius + value = 4 + } + has_trait = { + trait = quick + value = 3 + } + has_trait = { + trait = shrewd + value = 3 + } + has_trait = { + trait = hedonist + value = 3 + } + has_trait = { + trait = mystic + value = 3 + } + has_trait = { + trait = seducer + value = 3 + } + has_trait = { + trait = seductress + value = 3 + } + has_trait = { + trait = schemer + value = 3 + } + has_trait = { + trait = impaler + value = 3 + } + has_trait = { + trait = lustful + value = 1 + } + has_trait = { + trait = proud + value = 1 + } + has_trait = { + trait = greedy + value = 1 + } + has_trait = { + trait = deceitful + value = 1 + } + has_trait = { + trait = arbitrary + value = 1 + } + society_rank = { + rank = 4 + value = 10 + } + } + + member_score_per_attribute = 3 + member_score_per_rank = 100 + + member_score = { + value = 10 + + modifier = { + trait = ambitious + factor = 1.5 + } + modifier = { + trait = genius + factor = 1.3 + } + modifier = { + trait = quick + factor = 1.3 + } + modifier = { + trait = shrewd + factor = 1.3 + } + modifier = { + trait = hedonist + factor = 1.3 + } + modifier = { + trait = mystic + factor = 1.3 + } + modifier = { + trait = seducer + factor = 1.3 + } + modifier = { + trait = seductress + factor = 1.3 + } + modifier = { + trait = schemer + factor = 1.3 + } + modifier = { + trait = impaler + factor = 1.3 + } + modifier = { + trait = lustful + factor = 1.1 + } + modifier = { + trait = proud + factor = 1.1 + } + modifier = { + trait = greedy + factor = 1.1 + } + modifier = { + trait = deceitful + factor = 1.1 + } + modifier = { + trait = arbitrary + factor = 1.1 + } + } + + startup_populate = { + trigger = { + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + ai = yes + controls_religion = no + OR = { + true_religion_tengri_pagan_trigger = yes + true_religion_tengri_pagan_reformed_trigger = yes + } + OR = { + has_impious_trait_trigger = yes + has_vice_trigger = yes + trait = drunkard + trait = possessed + trait = lunatic + } + age = 16 + is_in_society = no + NOT = { higher_tier_than = DUKE } + NOR = { + mercenary = yes + holy_order = yes + } + } + } +} + +the_vodouns = { + primary_attribute = intrigue + is_secret = yes + criminal = yes + devil_worshipper = yes + opinion_to_other_members = +5 + opinion_to_pretenders = -40 #Pretenders is the opinion you have of people perceived/discovered to be in your society. + opinion_to_perceived_members = -40 #Perceived is the opinion you have of people perceived/discovered to be of a society you're not part of + opinion_per_rank_above = +10 + sound = devil_worshippers_interface + society_ranks_gfx = devil_ranks + society_influence = no + + active = { + always = no + has_dlc = "Mystics" + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + } + indestructible = yes + + can_join_society = { + hidden_trigger = { + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + NAND = { + ai = yes + is_society_rank_full = { + society = the_vodouns + rank = 1 + } + } + } + has_vodouns_prerequisites = yes + hidden_trigger = { + NOT = { has_character_flag = society_join_block } + } + trigger_if = { + limit = { prisoner = yes } + prisoner = no + } + } + + show_society = { + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + age = 16 + OR = { + religion = west_african_pagan + religion = west_african_pagan_reformed + secret_religion = west_african_pagan + secret_religion = west_african_pagan_reformed + society_member_of = the_vodouns + } + } + + society_rank = { + level = 1 + limit = 100 + startup_limit = 10 + decisions = { + decision_abduct + prisoner_dark_sacrifice #Available Decision: Sacrifice Prisoner + #Over time, lose virtues, gain vices. A Soul Corruption-effect is on a yearly pulse (with a chance to do nothing) + } + + #custom_tooltip = unlockable_DW_powers_at_rank_2; + } + + society_rank = { + level = 2 + limit = 50 + startup_limit = 6 + modifier = { + is_visible = { + OR = { + society_member_of = the_vodouns + FROM = { is_society_discovered = yes } + } + } + intrigue = 1 + } + decisions = { + devil_worshipers_summon_familiar #Available Power: Summon Familiar + the_devil_worshipers_tainted_touch #Available Power: Curse people with disease + devil_worshipers_demonic_possession #Available Power: Possess someone to make fanatically loyal + #Available Power: Abduction plot + #unlock new options in Seduction and Spy On? + } + + #custom_tooltip = unlockable_DW_powers_at_rank_3; + } + + society_rank = { + level = 3 + limit = 25 + startup_limit = 3 + modifier = { + is_visible = { + OR = { + society_member_of = the_vodouns + FROM = { is_society_discovered = yes } + } + } + intrigue = 2 + } + decisions = { + devil_worshipers_dark_divorce #Available Power: Dark Divorce + devil_worshipers_dark_healing #Available Power: Demonic Healing. Sacrifice a prisoner to heal a random illness or maiming. + devil_worshipers_invite_disciple_of_devil #Available Decision: Invite a witch to court + #Available Power: Love Potion + } + + #custom_tooltip = unlockable_DW_powers_at_rank_4; + } + + society_rank = { + level = 4 + limit = 1 + startup_limit = 1 + modifier = { + is_visible = { + OR = { + society_member_of = the_vodouns + FROM = { is_society_discovered = yes } + } + } + intrigue = 3 + } + decisions = { + DW_prolong_life #Available Power: Prolong Life + DW_demonic_impregnation #Available power: Unholy Impregnation + } + obedience_tooltip = obedience_tooltip #this can be unique per rank/society + obedient = { + ROOT = { + always = yes + } + } + } + + plots = { + plot1_tag + plot2_tag + } + + ambitions = { + ambition1_tag + ambition2_tag + } + + monthly_currency_gain = { + name = currency_name_the_vodouns + + per_attribute = { + name = intrigue + value = 0.5 + } + has_trait = { + trait = ambitious + value = 5 + } + has_trait = { + trait = genius + value = 4 + } + has_trait = { + trait = quick + value = 3 + } + has_trait = { + trait = shrewd + value = 3 + } + has_trait = { + trait = hedonist + value = 3 + } + has_trait = { + trait = mystic + value = 3 + } + has_trait = { + trait = seducer + value = 3 + } + has_trait = { + trait = seductress + value = 3 + } + has_trait = { + trait = schemer + value = 3 + } + has_trait = { + trait = impaler + value = 3 + } + has_trait = { + trait = lustful + value = 1 + } + has_trait = { + trait = proud + value = 1 + } + has_trait = { + trait = greedy + value = 1 + } + has_trait = { + trait = deceitful + value = 1 + } + has_trait = { + trait = arbitrary + value = 1 + } + society_rank = { + rank = 4 + value = 10 + } + } + + member_score_per_attribute = 3 + member_score_per_rank = 100 + + member_score = { + value = 10 + + modifier = { + trait = ambitious + factor = 1.5 + } + modifier = { + trait = genius + factor = 1.3 + } + modifier = { + trait = quick + factor = 1.3 + } + modifier = { + trait = shrewd + factor = 1.3 + } + modifier = { + trait = hedonist + factor = 1.3 + } + modifier = { + trait = mystic + factor = 1.3 + } + modifier = { + trait = seducer + factor = 1.3 + } + modifier = { + trait = seductress + factor = 1.3 + } + modifier = { + trait = schemer + factor = 1.3 + } + modifier = { + trait = impaler + factor = 1.3 + } + modifier = { + trait = lustful + factor = 1.1 + } + modifier = { + trait = proud + factor = 1.1 + } + modifier = { + trait = greedy + factor = 1.1 + } + modifier = { + trait = deceitful + factor = 1.1 + } + modifier = { + trait = arbitrary + factor = 1.1 + } + } + + startup_populate = { + trigger = { + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + ai = yes + controls_religion = no + OR = { + true_religion_west_african_pagan_trigger = yes + true_religion_west_african_pagan_reformed_trigger = yes + } + OR = { + has_impious_trait_trigger = yes + has_vice_trigger = yes + trait = drunkard + trait = possessed + trait = lunatic + } + age = 16 + is_in_society = no + NOT = { higher_tier_than = DUKE } + NOR = { + mercenary = yes + holy_order = yes + } + } + } +} + +the_bacchants = { + primary_attribute = intrigue + is_secret = yes + criminal = yes + devil_worshipper = yes + opinion_to_other_members = +5 + opinion_to_pretenders = -40 #Pretenders is the opinion you have of people perceived/discovered to be in your society. + opinion_to_perceived_members = -40 #Perceived is the opinion you have of people perceived/discovered to be of a society you're not part of + opinion_per_rank_above = +10 + sound = devil_worshippers_interface + society_ranks_gfx = devil_ranks + society_influence = no + + active = { + always = no + has_dlc = "Mystics" + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + has_global_flag = flag_restored_bacchants + } + indestructible = yes + + can_join_society = { + has_global_flag = flag_restored_bacchants + hidden_trigger = { + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + NAND = { + ai = yes + is_society_rank_full = { + society = the_bacchants + rank = 1 + } + } + } + has_bacchants_prerequisites = yes + hidden_trigger = { + NOT = { has_character_flag = society_join_block } + } + trigger_if = { + limit = { prisoner = yes } + prisoner = no + } + } + + show_society = { + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + age = 16 + OR = { + religion = hellenic_pagan + religion = hellenic_pagan_reformed + secret_religion = hellenic_pagan + secret_religion = hellenic_pagan_reformed + society_member_of = the_bacchants + top_liege = { true_religion_hellenic_pagan_reformed_trigger = yes } + top_liege = { true_religion_hellenic_pagan_trigger = yes } + culture = roman #Historically fashionable thrill for bored patricians. + AND = { + has_global_flag = flag_started_roman_renaissance + top_liege = { has_landed_title = e_roman_empire } #Historically a plague for the Empire. + } + } + } + + potential = { } #no rules + + society_rank = { + level = 1 + limit = 100 + startup_limit = 10 + decisions = { + decision_abduct + prisoner_dark_sacrifice #Available Decision: Sacrifice Prisoner + #Over time, lose virtues, gain vices. A Soul Corruption-effect is on a yearly pulse (with a chance to do nothing) + } + + #custom_tooltip = unlockable_DW_powers_at_rank_2; + } + + society_rank = { + level = 2 + limit = 50 + startup_limit = 6 + modifier = { + is_visible = { + OR = { + society_member_of = the_bacchants + FROM = { is_society_discovered = yes } + } + } + intrigue = 1 + } + decisions = { + devil_worshipers_summon_familiar #Available Power: Summon Familiar + the_devil_worshipers_tainted_touch #Available Power: Curse people with disease + devil_worshipers_demonic_possession #Available Power: Possess someone to make fanatically loyal + #Available Power: Abduction plot + #unlock new options in Seduction and Spy On? + } + + #custom_tooltip = unlockable_DW_powers_at_rank_3; + } + + society_rank = { + level = 3 + limit = 25 + startup_limit = 3 + modifier = { + is_visible = { + OR = { + society_member_of = the_bacchants + FROM = { is_society_discovered = yes } + } + } + intrigue = 2 + } + decisions = { + devil_worshipers_dark_divorce #Available Power: Dark Divorce + devil_worshipers_dark_healing #Available Power: Demonic Healing. Sacrifice a prisoner to heal a random illness or maiming. + devil_worshipers_invite_disciple_of_devil #Available Decision: Invite a witch to court + #Available Power: Love Potion + } + + #custom_tooltip = unlockable_DW_powers_at_rank_4; + } + + society_rank = { + level = 4 + limit = 1 + startup_limit = 1 + modifier = { + is_visible = { + OR = { + society_member_of = the_bacchants + FROM = { is_society_discovered = yes } + } + } + intrigue = 3 + } + decisions = { + DW_prolong_life #Available Power: Prolong Life + DW_demonic_impregnation #Available power: Unholy Impregnation + } + obedience_tooltip = obedience_tooltip #this can be unique per rank/society + obedient = { + ROOT = { + always = yes + } + } + } + + plots = { + plot1_tag + plot2_tag + } + + ambitions = { + ambition1_tag + ambition2_tag + } + + monthly_currency_gain = { + name = currency_name_the_bacchants + + per_attribute = { + name = intrigue + value = 0.5 + } + has_trait = { + trait = ambitious + value = 5 + } + has_trait = { + trait = genius + value = 4 + } + has_trait = { + trait = quick + value = 3 + } + has_trait = { + trait = shrewd + value = 3 + } + has_trait = { + trait = hedonist + value = 3 + } + has_trait = { + trait = mystic + value = 3 + } + has_trait = { + trait = seducer + value = 3 + } + has_trait = { + trait = seductress + value = 3 + } + has_trait = { + trait = schemer + value = 3 + } + has_trait = { + trait = impaler + value = 3 + } + has_trait = { + trait = one_eyed + value = 3 + } + has_trait = { + trait = lustful + value = 1 + } + has_trait = { + trait = proud + value = 1 + } + has_trait = { + trait = greedy + value = 1 + } + has_trait = { + trait = deceitful + value = 1 + } + has_trait = { + trait = arbitrary + value = 1 + } + society_rank = { + rank = 4 + value = 10 + } + } + + member_score_per_attribute = 3 + member_score_per_rank = 100 + + member_score = { + value = 10 + + modifier = { + trait = ambitious + factor = 1.5 + } + modifier = { + trait = genius + factor = 1.3 + } + modifier = { + trait = quick + factor = 1.3 + } + modifier = { + trait = shrewd + factor = 1.3 + } + modifier = { + trait = hedonist + factor = 1.3 + } + modifier = { + trait = mystic + factor = 1.3 + } + modifier = { + trait = seducer + factor = 1.3 + } + modifier = { + trait = seductress + factor = 1.3 + } + modifier = { + trait = schemer + factor = 1.3 + } + modifier = { + trait = impaler + factor = 1.3 + } + modifier = { + trait = one_eyed + factor = 1.3 + } + modifier = { + trait = lustful + factor = 1.1 + } + modifier = { + trait = proud + factor = 1.1 + } + modifier = { + trait = greedy + factor = 1.1 + } + modifier = { + trait = deceitful + factor = 1.1 + } + modifier = { + trait = arbitrary + factor = 1.1 + } + } + + startup_populate = { + trigger = { + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + ai = yes + controls_religion = no + OR = { + true_religion_hellenic_pagan_reformed_trigger = yes + true_religion_hellenic_pagan_trigger = yes + culture = roman + AND = { + has_global_flag = flag_started_roman_renaissance + top_liege = { has_landed_title = e_roman_empire } #Historically a plague for the Empire. + } + } + OR = { + has_impious_trait_trigger = yes + has_vice_trigger = yes + trait = drunkard + trait = possessed + trait = lunatic + } + age = 16 + is_in_society = no + NOT = { higher_tier_than = DUKE } + NOR = { + mercenary = yes + holy_order = yes + } + } + } +} + +#WARRIOR LODGES: +#warrior_lodge_norse - The Wolf Warriors +#warrior_lodge_tengri - The Eagle Warriors +#warrior_lodge_baltic - The Band of Medeina +#warrior_lodge_finnish - The Followers of Otso +#warrior_lodge_slavic - The Champions of Perun +#warrior_lodge_west_african - The Children of the Storm +#warrior_lodge_zun - The Keepers of the Flame +#warrior_lodge_bon - The Sentinels of Light +#warrior_lodge_hellenic - The Olympian Champions + +warrior_lodge_norse = { + primary_attribute = martial + opinion_to_other_members = +10 + opinion_per_rank_above = +5 + sound = warrior_lodge_ambient_01 + society_ranks_gfx = warriors_ranks + society_influence = no + + non_interference = { + always = yes + } + + active = { + always = no + has_dlc = "Holy Fury" + } + indestructible = yes + + can_join_society = { + hidden_trigger = { + NAND = { + ai = yes + is_society_rank_full = { + society = warrior_lodge_norse + rank = 1 + } + } + } + is_adult = yes + custom_tooltip = { + text = has_not_angered_society_tt + hidden_trigger = { NOT = { has_character_modifier = warrior_lodge_failed_joining_cd } } + } + NOT = { has_character_modifier = warrior_lodge_failed_joining_cd } + hidden_trigger = { + NOT = { has_character_flag = society_join_block } + } + trigger_if = { + limit = { prisoner = yes } + prisoner = no + } + OR = { + religion_openly_norse_or_reformed_trigger = yes + AND = { + custom_tooltip = { + text = society_has_at_least_10_members_tt + FROM = { num_of_society_members >= 10 } + } + has_tribal_or_nomadic_government_trigger = yes + custom_tooltip = { + text = special_join_warrior_lodge_trigger_tt + special_join_warrior_lodge_trigger = yes + } + NOT = { trait = zealous } + } + } + } + + show_society = { + OR = { + #You are this religion: will show only this lodge (the other "show_society"'s will make sure) + religion_openly_norse_or_reformed_trigger = yes + AND = { + #You are of a religion that doesn't match *any* warrior lodge + has_religion_matching_available_warrior_lodge_trigger = no + + OR = { + #You have neighbors, etc, of the correct religion... + any_vassal = { religion_openly_norse_or_reformed_trigger = yes } + any_liege = { religion_openly_norse_or_reformed_trigger = yes } + any_neighbor_independent_ruler = { religion_openly_norse_or_reformed_trigger = yes } + } + } + NOT = { #Hide if: you don't have a religion that corresponds to this lodge, but there is another society available to you already + religion_openly_norse_or_reformed_trigger = no + has_religion_matching_available_warrior_lodge_trigger = yes + } + #Always show if: You are already a member. Duh. + society_member_of = warrior_lodge_norse + } + } + + potential = { #if you change religion or become zealous while NOT pagan, you are kicked out + OR = { + religion_openly_norse_or_reformed_trigger = yes + AND = { + religion_openly_norse_or_reformed_trigger = no + NOT = { trait = zealous } + } + } + } + + society_rank = { #"Fledling" + level = 1 + limit = 50 + startup_limit = 10 + modifier = { + monthly_character_prestige = 0.25 + } + powers = { + warrior_lodge_duel #Passive Power: Unlocks Duel + warrior_lodge_shieldmaiden #Passive Power: Unlocks Shieldmaidens + warrior_lodge_survivor #Passive Power: Survivor + warrior_lodge_lifetime_of_war #Passive Power: A Lifetime of War + warrior_lodge_norse_go_berserk #Power: Go Berserk + } + } + + society_rank = { #"Warrior" + level = 2 + limit = 20 + startup_limit = 6 + modifier = { + monthly_character_prestige = 0.5 + combat_rating = 5 + martial = 1 + } + powers = { + warrior_lodge_reaver #Passive Power: Reaver + warrior_lodge_warrior_training #Power: Warrior Training + warrior_lodge_summon_commander #Power: Summon Commander + } + } + + society_rank = { #"Veteran" + level = 3 + limit = 10 + startup_limit = 4 + modifier = { + monthly_character_prestige = 0.75 + combat_rating = 10 + martial = 2 + } + powers = { + warrior_lodge_inspire_warriors #Power: Inspire Warriors + warrior_lodge_war_sacrifice #Power: War Sacrifice + } + } + + society_rank = { #"Hero" + level = 4 + limit = 4 + startup_limit = 3 + modifier = { + monthly_character_prestige = 1 + combat_rating = 15 + martial = 3 + } + powers = { + warrior_lodge_indomitable #Passive Power: Indomitable + warrior_lodge_call_to_glory #Power: Call to Glory + warrior_lodge_choose_military_aspect #Power: Choose Military Aspect + } + } + + plots = { + + } + + monthly_currency_gain = { + name = currency_name_warrior_lodge_norse + + per_attribute = { + name = martial + value = 0.25 + } + has_trait = { + trait = hunter + value = 1 + } + has_trait = { + trait = strategist + value = 1 + } + has_trait = { + trait = duelist + value = 1 + } + has_trait = { + trait = scarred + value = 1 + } + has_trait = { + trait = scarred_mid + value = 2 + } + has_trait = { + trait = scarred_high + value = 3 + } + has_trait = { + trait = genius + value = 1 + } + has_trait = { + trait = quick + value = 1 + } + has_trait = { + trait = shrewd + value = 1 + } + has_trait = { + trait = strong + value = 3 + } + has_trait = { + trait = robust + value = 2 + } + has_trait = { + trait = giant + value = 2 + } + has_trait = { + trait = impaler + value = 1 + } + has_trait = { + trait = falconer + value = 1 + } + has_trait = { + trait = wroth + value = 1 + } + has_trait = { + trait = proud + value = 1 + } + has_trait = { + trait = patient + value = 1 + } + has_trait = { + trait = diligent + value = 1 + } + has_trait = { + trait = humble + value = 1 + } + has_trait = { + trait = brave + value = 2 + } + has_trait = { + trait = ambitious + value = 1 + } + has_trait = { + trait = cruel + value = 1 + } + has_trait = { + trait = stubborn + value = 1 + } + has_trait = { + trait = adventurer + value = 1 + } + has_trait = { + trait = viking + value = 1 + } + has_trait = { + trait = pirate + value = 1 + } + has_trait = { + trait = ravager + value = 2 + } + has_trait = { + trait = seaking + value = 3 + } + has_trait = { + trait = sea_queen + value = 3 + } + has_trait = { + trait = shieldmaiden + value = 1 + } + has_trait = { + trait = berserker + value = 1 + } + has_trait = { + trait = varangian + value = 1 + } + has_trait = { + trait = valhalla_bound + value = 1 + } + has_trait = { + trait = eagle_warrior + value = 1 + } + has_trait = { + trait = sun_warrior + value = 1 + } + has_trait = { + trait = ukkos_shield + value = 1 + } + has_trait = { + trait = nyames_shield + value = 1 + } + has_trait = { + trait = peruns_chosen + value = 1 + } + has_trait = { + trait = romuvas_own + value = 1 + } + has_trait = { + trait = ares_own + value = 1 + } + has_trait = { + trait = tengri_warrior + value = 1 + } + #NEGATIVE modifiers + has_trait = { + trait = craven + value = -3 + } + has_trait = { + trait = weak + value = -2 + } + has_trait = { + trait = feeble + value = -1 + } + has_trait = { + trait = slothful + value = -1 + } + has_trait = { + trait = content + value = -1 + } + has_trait = { + trait = dwarf + value = -1 + } + has_trait = { + trait = clubfooted + value = -1 + } + has_trait = { + trait = hunchback + value = -1 + } + } + + member_score_per_attribute = 3 + member_score_per_rank = 100 + + member_score = { + value = 10 + + #POSITIVE modifiers + modifier = { + trait = hunter + factor = 1.3 + } + modifier = { + trait = strategist + factor = 1.5 + } + modifier = { + trait = duelist + factor = 1.5 + } + modifier = { + trait = misguided_warrior + factor = 1.1 + } + modifier = { + trait = tough_soldier + factor = 1.2 + } + modifier = { + trait = skilled_tactician + factor = 1.4 + } + modifier = { + trait = brilliant_strategist + factor = 1.6 + } + modifier = { + trait = scarred + factor = 1.1 + } + modifier = { + trait = one_eyed + factor = 1.1 + } + modifier = { + trait = genius + factor = 1.2 + } + modifier = { + trait = quick + factor = 1.1 + } + modifier = { + trait = shrewd + factor = 1.1 + } + modifier = { + trait = strong + factor = 1.2 + } + modifier = { + trait = robust + factor = 1.1 + } + modifier = { + trait = giant + factor = 1.1 + } + modifier = { + trait = impaler + factor = 1.1 + } + modifier = { + trait = falconer + factor = 1.1 + } + modifier = { + trait = wroth + factor = 1.1 + } + modifier = { + trait = proud + factor = 1.1 + } + modifier = { + trait = patient + factor = 1.1 + } + modifier = { + trait = diligent + factor = 1.1 + } + modifier = { + trait = humble + factor = 1.1 + } + modifier = { + trait = brave + factor = 1.2 + } + modifier = { + trait = ambitious + factor = 1.1 + } + modifier = { + trait = cruel + factor = 1.1 + } + modifier = { + trait = stubborn + factor = 1.1 + } + modifier = { + trait = adventurer + factor = 1.1 + } + modifier = { + trait = viking + factor = 1.1 + } + modifier = { + trait = pirate + factor = 1.1 + } + modifier = { + trait = ravager + factor = 1.1 + } + modifier = { + trait = seaking + factor = 1.1 + } + modifier = { + trait = sea_queen + factor = 1.1 + } + modifier = { + trait = shieldmaiden + factor = 1.1 + } + modifier = { + trait = berserker + factor = 1.1 + } + modifier = { + trait = varangian + factor = 1.1 + } + modifier = { + trait = valhalla_bound + factor = 1.1 + } + #NEGATIVE modifiers + modifier = { + trait = craven + factor = 0.8 + } + modifier = { + trait = weak + factor = 0.8 + } + modifier = { + trait = feeble + factor = 0.8 + } + modifier = { + trait = slothful + factor = 0.9 + } + modifier = { + trait = content + factor = 0.9 + } + modifier = { + trait = dwarf + factor = 0.8 + } + modifier = { + trait = clubfooted + factor = 0.8 + } + modifier = { + trait = hunchback + factor = 0.8 + } + } + + startup_populate = { + trigger = { + ai = yes + controls_religion = no + religion_openly_norse_or_reformed_trigger = yes + is_adult = yes + is_in_society = no + OR = { + trait = zealous + martial = 12 + has_lifestyle_martial_trigger = yes + has_education_martial_trigger = yes + OR = { + duelist_skill_is_medium_group_trigger = yes + duelist_skill_is_high_group_trigger = yes + } + } + } + } +} + +warrior_lodge_tengri = { # Also generally for Nomads + primary_attribute = martial + opinion_to_other_members = +10 + opinion_per_rank_above = +5 + sound = warrior_lodge_ambient_02 + society_ranks_gfx = warriors_ranks + society_influence = no + + non_interference = { + always = yes + } + + active = { + always = no + has_dlc = "Holy Fury" + } + indestructible = yes + + can_join_society = { + hidden_trigger = { + NAND = { + ai = yes + is_society_rank_full = { + society = warrior_lodge_tengri + rank = 1 + } + } + } + is_adult = yes + custom_tooltip = { + text = has_not_angered_society_tt + hidden_trigger = { NOT = { has_character_modifier = warrior_lodge_failed_joining_cd } } + } + NOT = { has_character_modifier = warrior_lodge_failed_joining_cd } + hidden_trigger = { + NOT = { has_character_flag = society_join_block } + } + trigger_if = { + limit = { prisoner = yes } + prisoner = no + } + OR = { + religion_openly_tengri_or_reformed_trigger = yes + is_nomadic = yes + AND = { + custom_tooltip = { + text = society_has_at_least_10_members_tt + FROM = { num_of_society_members >= 10 } + } + has_tribal_or_nomadic_government_trigger = yes + custom_tooltip = { + text = special_join_warrior_lodge_trigger_tt + special_join_warrior_lodge_trigger = yes + } + NOT = { trait = zealous } + } + } + } + + show_society = { + OR = { + #You are this religion: will show only this lodge (the other "show_society"'s will make sure) + religion_openly_tengri_or_reformed_trigger = yes + is_nomadic = yes + AND = { + #You are of a religion that doesn't match *any* warrior lodge + has_religion_matching_available_warrior_lodge_trigger = no + + OR = { + #You have neighbors, etc, of the correct religion... + any_vassal = { religion_openly_tengri_or_reformed_trigger = yes } + any_liege = { religion_openly_tengri_or_reformed_trigger = yes } + any_neighbor_independent_ruler = { religion_openly_tengri_or_reformed_trigger = yes } + } + } + NOT = { #Hide if: you don't have a religion that corresponds to this lodge, but there is another society available to you already + religion_openly_tengri_or_reformed_trigger = no + has_religion_matching_available_warrior_lodge_trigger = yes + } + #Always show if: You are already a member. Duh. + society_member_of = warrior_lodge_tengri + } + } + + potential = { #if you change religion or become zealous while NOT pagan, you are kicked out + OR = { + religion_openly_tengri_or_reformed_trigger = yes + is_nomadic = yes + AND = { + religion_openly_tengri_or_reformed_trigger = no + NOT = { trait = zealous } + } + } + } + + society_rank = { #"Fledling" + level = 1 + limit = 50 + startup_limit = 10 + modifier = { + monthly_character_prestige = 0.25 + } + powers = { + warrior_lodge_duel #Passive Power: Unlocks Duel + warrior_lodge_shieldmaiden #Passive Power: Unlocks Shieldmaidens + warrior_lodge_survivor #Passive Power: Survivor + warrior_lodge_lifetime_of_war #Passive Power: A Lifetime of War + } + } + + society_rank = { #"Warrior" + level = 2 + limit = 20 + startup_limit = 6 + modifier = { + monthly_character_prestige = 0.5 + combat_rating = 5 + martial = 1 + } + powers = { + warrior_lodge_reaver #Passive Power: Reaver + warrior_lodge_warrior_training #Power: Warrior Training + warrior_lodge_summon_commander #Power: Summon Commander + warrior_lodge_tengri_call_of_the_steppe #Power: Call of the Steppe + } + } + + society_rank = { #"Veteran" + level = 3 + limit = 10 + startup_limit = 4 + modifier = { + monthly_character_prestige = 0.75 + combat_rating = 10 + martial = 2 + } + powers = { + warrior_lodge_inspire_warriors #Power: Inspire Warriors + warrior_lodge_war_sacrifice #Power: War Sacrifice + } + } + + society_rank = { #"Hero" + level = 4 + limit = 4 + startup_limit = 3 + modifier = { + monthly_character_prestige = 1 + combat_rating = 15 + martial = 3 + } + powers = { + warrior_lodge_indomitable #Passive Power: Indomitable + warrior_lodge_call_to_glory #Power: Call to Glory + warrior_lodge_choose_military_aspect #Power: Choose Military Aspect + } + } + + plots = { + + } + + monthly_currency_gain = { + name = currency_name_warrior_lodge_norse + + per_attribute = { + name = martial + value = 0.25 + } + has_trait = { + trait = hunter + value = 1 + } + has_trait = { + trait = strategist + value = 1 + } + has_trait = { + trait = duelist + value = 1 + } + has_trait = { + trait = scarred + value = 1 + } + has_trait = { + trait = scarred_mid + value = 2 + } + has_trait = { + trait = scarred_high + value = 3 + } + has_trait = { + trait = genius + value = 1 + } + has_trait = { + trait = quick + value = 1 + } + has_trait = { + trait = shrewd + value = 1 + } + has_trait = { + trait = strong + value = 3 + } + has_trait = { + trait = robust + value = 2 + } + has_trait = { + trait = giant + value = 2 + } + has_trait = { + trait = impaler + value = 1 + } + has_trait = { + trait = falconer + value = 1 + } + has_trait = { + trait = wroth + value = 1 + } + has_trait = { + trait = proud + value = 1 + } + has_trait = { + trait = patient + value = 1 + } + has_trait = { + trait = diligent + value = 1 + } + has_trait = { + trait = humble + value = 1 + } + has_trait = { + trait = brave + value = 2 + } + has_trait = { + trait = ambitious + value = 1 + } + has_trait = { + trait = cruel + value = 1 + } + has_trait = { + trait = stubborn + value = 1 + } + has_trait = { + trait = adventurer + value = 1 + } + has_trait = { + trait = viking + value = 1 + } + has_trait = { + trait = pirate + value = 1 + } + has_trait = { + trait = ravager + value = 2 + } + has_trait = { + trait = seaking + value = 3 + } + has_trait = { + trait = sea_queen + value = 3 + } + has_trait = { + trait = shieldmaiden + value = 1 + } + has_trait = { + trait = berserker + value = 1 + } + has_trait = { + trait = varangian + value = 1 + } + has_trait = { + trait = valhalla_bound + value = 1 + } + has_trait = { + trait = eagle_warrior + value = 1 + } + has_trait = { + trait = sun_warrior + value = 1 + } + has_trait = { + trait = ukkos_shield + value = 1 + } + has_trait = { + trait = nyames_shield + value = 1 + } + has_trait = { + trait = peruns_chosen + value = 1 + } + has_trait = { + trait = romuvas_own + value = 1 + } + has_trait = { + trait = ares_own + value = 1 + } + has_trait = { + trait = tengri_warrior + value = 1 + } + #NEGATIVE modifiers + has_trait = { + trait = craven + value = -3 + } + has_trait = { + trait = weak + value = -2 + } + has_trait = { + trait = feeble + value = -1 + } + has_trait = { + trait = slothful + value = -1 + } + has_trait = { + trait = content + value = -1 + } + has_trait = { + trait = dwarf + value = -1 + } + has_trait = { + trait = clubfooted + value = -1 + } + has_trait = { + trait = hunchback + value = -1 + } + } + + member_score_per_attribute = 3 + member_score_per_rank = 100 + + member_score = { + value = 10 + + #POSITIVE modifiers + modifier = { + trait = hunter + factor = 1.3 + } + modifier = { + trait = strategist + factor = 1.5 + } + modifier = { + trait = duelist + factor = 1.5 + } + modifier = { + trait = misguided_warrior + factor = 1.1 + } + modifier = { + trait = tough_soldier + factor = 1.2 + } + modifier = { + trait = skilled_tactician + factor = 1.4 + } + modifier = { + trait = brilliant_strategist + factor = 1.6 + } + modifier = { + trait = scarred + factor = 1.1 + } + modifier = { + trait = one_eyed + factor = 1.1 + } + modifier = { + trait = genius + factor = 1.2 + } + modifier = { + trait = quick + factor = 1.1 + } + modifier = { + trait = shrewd + factor = 1.1 + } + modifier = { + trait = strong + factor = 1.2 + } + modifier = { + trait = robust + factor = 1.1 + } + modifier = { + trait = giant + factor = 1.1 + } + modifier = { + trait = impaler + factor = 1.1 + } + modifier = { + trait = falconer + factor = 1.1 + } + modifier = { + trait = wroth + factor = 1.1 + } + modifier = { + trait = proud + factor = 1.1 + } + modifier = { + trait = patient + factor = 1.1 + } + modifier = { + trait = diligent + factor = 1.1 + } + modifier = { + trait = humble + factor = 1.1 + } + modifier = { + trait = brave + factor = 1.2 + } + modifier = { + trait = ambitious + factor = 1.1 + } + modifier = { + trait = cruel + factor = 1.1 + } + modifier = { + trait = stubborn + factor = 1.1 + } + modifier = { + trait = adventurer + factor = 1.1 + } + modifier = { + trait = viking + factor = 1.1 + } + modifier = { + trait = pirate + factor = 1.1 + } + modifier = { + trait = ravager + factor = 1.1 + } + modifier = { + trait = seaking + factor = 1.1 + } + modifier = { + trait = sea_queen + factor = 1.1 + } + modifier = { + trait = shieldmaiden + factor = 1.1 + } + modifier = { + trait = berserker + factor = 1.1 + } + modifier = { + trait = varangian + factor = 1.1 + } + modifier = { + trait = tengri_warrior + factor = 1.1 + } + #NEGATIVE modifiers + modifier = { + trait = craven + factor = 0.8 + } + modifier = { + trait = weak + factor = 0.8 + } + modifier = { + trait = feeble + factor = 0.8 + } + modifier = { + trait = slothful + factor = 0.9 + } + modifier = { + trait = content + factor = 0.9 + } + modifier = { + trait = dwarf + factor = 0.8 + } + modifier = { + trait = clubfooted + factor = 0.8 + } + modifier = { + trait = hunchback + factor = 0.8 + } + } + + startup_populate = { + trigger = { + ai = yes + controls_religion = no + OR = { + religion_openly_tengri_or_reformed_trigger = yes + is_nomadic = yes + } + is_adult = yes + is_in_society = no + OR = { + trait = zealous + martial = 12 + has_lifestyle_martial_trigger = yes + has_education_martial_trigger = yes + OR = { + duelist_skill_is_medium_group_trigger = yes + duelist_skill_is_high_group_trigger = yes + } + } + } + } +} diff --git a/MOD/Witcher/decisions/mnm_devil_worshipers_decisions.txt b/MOD/Witcher/decisions/mnm_devil_worshipers_decisions.txt new file mode 100644 index 000000000..2da8fa26d --- /dev/null +++ b/MOD/Witcher/decisions/mnm_devil_worshipers_decisions.txt @@ -0,0 +1,439 @@ +########################################### +# +# Devil worshiper decisions for Monks and Mystics +# +########################################### + +targeted_decisions = { + + #Power: Summon familiar + devil_worshipers_summon_familiar = { + is_in_society = yes + + filter = self + ai_target_filter = self + ai_check_interval = 12 + + potential = { + prisoner = no + NOT = { trait = incapable } + character = FROM + has_dlc = "Mystics" + society_rank >= 2 + is_devil_worshiper_trigger = yes + } + + allow = { + custom_tooltip = { + text = devil_worshipers_summon_familiar_cd_tooltip + NOT = { has_character_modifier = summon_familiar_cooldown } + } + has_society_currency_major_trigger = yes + } + + effect = { + increase_visibility_effect = yes + hidden_effect = { + add_character_modifier = { + name = summon_familiar_cooldown + years = 5 + hidden = yes + } + character_event = { id = MNM.7815 } + } + detract_society_currency_major_effect = yes + } + + revoke_allowed = { + always = no + } + + ai_will_do = { + factor = 1 + modifier = { + factor = 0 + OR = { + has_character_modifier = wolf_familiar + has_character_modifier = cat_familiar + has_character_modifier = owl_familiar + has_character_modifier = raven_familiar + } + } + } + } + + #Power: Tainted touch + the_devil_worshipers_tainted_touch = { + is_in_society = yes + + ai_target_filter = realm + ai_check_interval = 6 + + from_potential = { + prisoner = no + NOT = { trait = incapable } + + OR = { + has_society_currency_major_trigger = yes + ai = no + } + + OR = { + war = yes + num_of_rivals = 1 + ai = no + } + + is_devil_worshiper_trigger = yes + society_rank > 1 + #NOT = { character = FROM } + } + + potential = { + NOT = { character = FROM } + + OR = { + NOR = { + character_disease_trigger = yes + has_character_flag = developing_illness + has_character_flag = disease_not_serious + } + FROM = { + ai = no + } + } + + OR = { + NOT = { + has_character_modifier = curse_cooldown_timer + } + FROM = { + ai = no + } + } + + OR = { + AND = { + FROM = { ai = no } + is_within_diplo_range = FROM + } + AND = { + FROM = { ai = yes } + same_realm = FROM + } + } + + #Makes sure the AI does good choices + OR = { + FROM = { ai = no } + is_foe = FROM + war_with = FROM + holds_favor_on = FROM + any_spouse = { #Unfaithful spouse + character = FROM + any_lover = { NOT = { character = FROM } } + } + any_lover = { any_spouse = { character = FROM } } #Lover of spouse + any_lover = { any_lover = { character = FROM } } #Lover of lover + } + } + + allow = { + FROM = { has_society_currency_major_trigger = yes } + + OR = { + same_realm = FROM + is_foe = FROM + same_society_as = FROM + war_with = FROM + } + + custom_tooltip = { + text = the_devil_worshipers_tainted_touch_allow_2_tt + hidden_tooltip = { + NOT = { + has_character_modifier = curse_cooldown_timer + } + } + } + + custom_tooltip = { + text = the_devil_worshipers_tainted_touch_allow_tt + NOR = { + character_disease_trigger = yes + has_character_flag = developing_illness + has_character_flag = disease_not_serious + } + } + } + + effect = { + FROM = { increase_visibility_effect = yes } + hidden_tooltip = { + add_character_modifier = { + name = curse_cooldown_timer + hidden = yes + years = 10 + } + } + custom_tooltip = { + text = the_devil_worshipers_tainted_touch_tooltip + + if = { + limit = { has_dlc = "Reapers" } + character_event = { id = MNM.7819 days = 3 } + } + if = { + limit = { NOT = { has_dlc = "Reapers" } } + character_event = { id = MNM.7819 days = 14 random = 14 } + } + } + + FROM = { + save_event_target_as = curser + detract_society_currency_major_effect = yes + } + } + + revoke_allowed = { + always = no + } + + ai_will_do = { + factor = 1 + } + } + + + #Power: dark divorce + devil_worshipers_dark_divorce = { + is_in_society = yes + + filter = spouse + ai_target_filter = spouse + ai_check_interval = 120 + + from_potential = { + is_devil_worshiper_trigger = yes + society_rank > 2 + is_married = yes + prisoner = no + NOT = { trait = incapable } + } + + potential = { + ai = yes + any_spouse = { character = FROM } + NOT = { has_character_flag = being_dark_divorced } + + is_within_diplo_range = FROM + + #Reasons allowing dark divorce for ai + OR = { + FROM = { ai = no } + NOT = { + reverse_opinion = { + who = FROM + value = 0 + } + } + is_rival = FROM + has_character_modifier = adulterer + has_character_modifier = adulteress + has_character_modifier = incestuous_adulterer + has_character_modifier = incestuous_adulteress + AND = { + FROM = { is_ruler = yes } + is_female = yes + OR = { + age = 45 + NOT = { fertility = 0.3 } + } + FROM = { current_heir = { dynasty = FROM } } + } + trait = lunatic + trait = possessed + trait = cruel + is_any_kinslayer_trigger = yes + trait = cannibal_trait + AND = { + trait = wroth + trait = drunkard + } + AND = { + trait = zealous + is_devil_worshiper_trigger = no + } + } + + #Stopping the ai from making stupid choices + OR = { + FROM = { ai = no } + NOR = { + is_friend = FROM + is_lover = FROM + is_pregnant = yes + } + } + } + + allow = { + FROM = { + NOT = { has_character_modifier = recently_did_dark_divorce } + has_society_currency_minor_trigger = yes + } + } + + effect = { + FROM = { increase_visibility_effect = yes } + set_character_flag = being_dark_divorced + FROM = { + add_character_modifier = { + name = recently_did_dark_divorce + years = 2 + } + } + hidden_effect = { + character_event = { id = MNM.7800 days = 1 } + } + } + revoke_allowed = { + always = no + } + + ai_will_do = { + factor = 1 + modifier = { + factor = 0.01 # slow down + } + modifier = { + factor = 0.5 + FROM = { is_benevolent_trigger = yes } + } + modifier = { + factor = 100 + FROM = { is_evil_trigger = yes } + } + modifier = { + is_heir = yes + factor = 0.01 + } + } + } +} + +title_decisions = { + #Execute desecrate temple mission + + devil_worshiper_desecrate_temple_decision = { + only_playable = yes + + ai_target_filter = realm_owned + ai_check_interval = 12 + + from_potential = { + prisoner = no + NOT = { trait = incapable } + has_dlc = "Mystics" + has_quest = quest_devil_worshipers_desecrate_temple + NOT = { has_character_flag = desecration_in_progress } + is_devil_worshiper_trigger = yes + } + + potential = { + OR = { + tier = BARON + tier = COUNT + } + OR = { + is_quest_target_of = FROM + location = { capital_holding = { is_quest_target_of = FROM } } + } + FROM = { NOT = { has_character_flag = desecration_in_progress } } + } + + allow = { + FROM = { has_quest = quest_devil_worshipers_desecrate_temple } + OR = { + is_quest_target_of = FROM + location = { capital_holding = { is_quest_target_of = FROM } } + } + } + + effect = { + FROM = { + increase_visibility_minor_effect = yes + custom_tooltip = { + text = devil_worshiper_desecrate_temple_decision_tt + } + set_character_flag = desecration_in_progress + + ROOT = { + if = { + limit = { + owner = { character = FROM } + } + add_holding_modifier = { + name = desecrated_temple + years = 5 + } + FROM = { + sound_effect = devil_worshippers_desecrate_temple + clr_quest = quest_devil_worshipers_desecrate_temple + add_society_currency_medium_effect = yes + break = yes + } + } + } + hidden_effect = { character_event = { id = MNM.7112 days = 7 } } + } + } + revoke_allowed = { + always = no + } + ai_will_do = { + factor = 1 + } + } +} + +society_decisions = { + #Power: Invite disciple of devil + devil_worshipers_invite_disciple_of_devil = { + only_playable = yes + + potential = { + has_dlc = "Mystics" + society_rank >= 3 + is_devil_worshiper_trigger = yes + NOT = { has_character_flag = disciple_arriving } + } + + allow = { + has_society_currency_minor_trigger = yes + is_inaccessible_trigger = no + } + + effect = { + #increase_visibility_effect = yes + set_character_flag = disciple_arriving + detract_society_currency_minor_effect = yes + + custom_tooltip = { + text = devil_worshipers_invite_disciple_of_devil_tt + character_event = { id = MNM.7822 days = 7 } + } + } + revoke_allowed = { + always = no + } + ai_will_do = { + factor = 0 + # factor = 0.001 + # modifier = { + # factor = 0.1 + # any_courtier = { is_devil_worshiper_trigger = yes } #Less likely to invite if there is already someone else at court + # } + } + } +} \ No newline at end of file diff --git a/MOD/Witcher/decisions/mnm_hermetics_decisions.txt b/MOD/Witcher/decisions/mnm_hermetics_decisions.txt new file mode 100644 index 000000000..c202079b4 --- /dev/null +++ b/MOD/Witcher/decisions/mnm_hermetics_decisions.txt @@ -0,0 +1,668 @@ +########################################### +# +# Hermetics decisions for Monks and Mystics +# +########################################### + +targeted_decisions = { + brew_happiness_potion = { + is_in_society = yes + filter = realm_including_me + ai_target_filter = realm_including_me + ai_check_interval = 24 + + from_potential = { + has_dlc = "Mystics" + society_rank = { + rank >= 2 + society = hermetics + } + } + + potential = { + OR = { + trait = stressed + trait = depressed + } + OR = { + liege = { + character = FROM + } + character = FROM + } + OR = { + FROM = { ai = no } + character = FROM + is_close_relative = FROM + is_friend = FROM + is_lover = FROM + } + } + + allow = { + FROM = { has_society_currency_minor_trigger = yes } + OR = { + trait = stressed + trait = depressed + } + custom_tooltip = { + text = must_have_ingredients_tt + hidden_tooltip = { + FROM = { + any_artifact = { + count = 2 + has_artifact_flag = ingredient + } + } + } + } + custom_tooltip = { + text = must_not_already_be_preparing_potion_tt + hidden_tooltip = { FROM = { NOT = { has_character_flag = preparing_potion } } } + } + } + + effect = { + FROM = { detract_society_currency_minor_effect = yes } + FROM = { set_character_flag = preparing_potion } + + if = { + limit = { character = FROM } #Making yourself a potion + custom_tooltip = { + text = brew_happiness_potion_effect_self + set_character_flag = potion_target_is_self + character_event = { id = MNM.5115 } + } + } + + if = { + limit = { NOT = { character = FROM } } #Making someone else a potion + save_event_target_as = potion_target + custom_tooltip = { + text = brew_happiness_potion_effect_other + FROM = { character_event = { id = MNM.5115 } } + } + } + + tooltip = { + if = { + limit = { trait = stressed } + remove_trait = stressed + } + if = { + limit = { trait = depressed } + remove_trait = depressed + } + if = { + limit = { has_character_modifier = apathetic } + remove_character_modifier = apathetic + } + } + } + + revoke_allowed = { always = no } + + ai_will_do = { + + factor = 0.01 + modifier = { + factor = 100 + character = FROM + } + modifier = { + factor = 10 + reverse_opinion = { + who = FROM + value = 30 + } + } + } + } + + hermetics_perform_scrying = { + is_in_society = yes + + filter = self + ai_target_filter = self + ai_check_interval = 10 + + potential = { + character = FROM + has_dlc = "Mystics" + society_member_of = hermetics + society_rank >= 2 + } + + allow = { + has_society_currency_minor_trigger = yes + custom_tooltip = { + text = hermetics_scrying_cooldown_tooltip + has_an_omen_modifier_trigger = no + NOT = { has_character_modifier = scrying_cooldown } + } + } + + effect = { + hidden_effect = { + add_character_modifier = { + name = scrying_cooldown + years = 1 + hidden = yes + } + character_event = { id = MNM.1200 days = 1 } + } + detract_society_currency_minor_effect = yes + } + + revoke_allowed = { always = no } + + ai_will_do = { + factor = 0.5 + + modifier = { + factor = 0.5 + is_dumb_trigger = yes + } + modifier = { + factor = 0.5 + trait = content + } + modifier = { + factor = 0.5 + trait = cynical + } + modifier = { + factor = 1.5 + trait = ambitious + } + modifier = { + factor = 1.5 + trait = trusting + } + } + } + + hermetics_make_horoscope = { + is_in_society = yes + + ai_target_filter = court + + ai_check_interval = 10 + + from_potential = { + has_dlc = "Mystics" + society_member_of = hermetics + society_rank = 3 + } + + potential = { + is_child_of = FROM + } + + allow = { + is_adult = no + custom_tooltip = { + text = hermetics_horoscope_cooldown_tooltip + NOT = { has_character_modifier = horoscope_cooldown } + } + FROM = { has_society_currency_medium_trigger = yes } + } + + effect = { + hidden_effect = { + add_character_modifier = { + name = horoscope_cooldown + duration =-1 #not actually a cooldown, but blocks decision until cleared (which does happen, promise) + hidden = yes + } + save_event_target_as = horoscope_child + FROM = { character_event = { id = MNM.1250 days = 5 } } + } + FROM = { detract_society_currency_medium_effect = yes } + } + + revoke_allowed = { always = no } + + ai_will_do = { + factor = 0.1 + + modifier = { + factor = 1.5 + is_dumb_trigger = yes + } + modifier = { + factor = 1.5 + is_smart_trigger = yes + } + modifier = { + factor = 10 + is_primary_heir = FROM + } + modifier = { + factor = 1.5 + FROM = { trait = trusting } + } + modifier = { + factor = 0.5 + FROM = { trait = cynical } + } + } + } + + choose_hermetic_art = { + only_playable = yes + + filter = self + ai_target_filter = self + + ai_check_interval = 60 + + potential = { + character = FROM + has_dlc = "Mystics" + is_playable = yes + is_adult = yes + society_member_of = hermetics + society_rank == 4 + } + + allow = { + custom_tooltip = { + text = choose_hermetic_art_allow_tooltip + + NOT = { has_character_flag = choosing_hermetic_art } + } + OR = { + NOT = { lifestyle_traits = 1 } + trait = scholar + trait = mystic + trait = theologian + } + has_society_currency_minor_trigger = yes + } + + effect = { + hidden_tooltip = { + if = { + limit = { + NOT = { lifestyle_traits = 1 } + } + + character_event = { id = MNM.1900 } + } + if = { + limit = { + OR = { + trait = scholar + trait = mystic + trait = theologian + } + } + + character_event = { id = MNM.1901 } + } + } + set_character_flag = choosing_hermetic_art + detract_society_currency_minor_effect = yes + } + + revoke_allowed = { always = no } + + ai_will_do = { + factor = 1 + modifier = { + factor = 0 + lifestyle_traits = 1 + } + } + } + + #Power: write Magnum Opus + hermetics_write_magnum_opus = { + is_in_society = yes + + filter = self + ai_target_filter = self + + ai_check_interval = 12 + + potential = { + society_member_of = hermetics + society_rank = 4 + prisoner = no + NOT = { trait = incapable } + } + + allow = { + FROM = { + custom_tooltip = { + text = hermetics_wrote_magnum_opus_cd_tooltip + NOT = { has_character_flag = wrote_magnum_opus } + } + has_society_currency_major_trigger = yes + custom_tooltip = { + text = hermetics_wrote_magnum_opus_duplicate + OR = { + NOR = { + has_artifact = magnum_opus_theurgy_ritual_1 + has_artifact = magnum_opus_theurgy_ritual_2 + has_artifact = magnum_opus_theurgy_ritual_3 + has_artifact = magnum_opus_theurgy_ritual_4 + } + NOR = { + has_artifact = magnum_opus_theurgy_contemplation_1 + has_artifact = magnum_opus_theurgy_contemplation_2 + has_artifact = magnum_opus_theurgy_contemplation_3 + has_artifact = magnum_opus_theurgy_contemplation_4 + } + NOR = { + has_artifact = magnum_opus_astrology_stars_1 + has_artifact = magnum_opus_astrology_stars_2 + has_artifact = magnum_opus_astrology_stars_3 + has_artifact = magnum_opus_astrology_stars_4 + } + NOR = { + has_artifact = magnum_opus_astrology_planets_1 + has_artifact = magnum_opus_astrology_planets_2 + has_artifact = magnum_opus_astrology_planets_3 + has_artifact = magnum_opus_astrology_planets_4 + } + NOR = { + has_artifact = magnum_opus_alchemy_panacea_1 + has_artifact = magnum_opus_alchemy_panacea_2 + has_artifact = magnum_opus_alchemy_panacea_3 + has_artifact = magnum_opus_alchemy_panacea_4 + } + NOR = { + has_artifact = magnum_opus_alchemy_transmutation_1 + has_artifact = magnum_opus_alchemy_transmutation_2 + has_artifact = magnum_opus_alchemy_transmutation_3 + has_artifact = magnum_opus_alchemy_transmutation_4 + } + } + } + } + } + + effect = { + hidden_effect = { + character_event = { id = MNM.1610 days = 1 } + set_character_flag = wrote_magnum_opus + } + detract_society_currency_major_effect = yes + } + revoke_allowed = { + always = no + } + } + + invite_hermetic_to_stargazing = { + only_playable = yes + ai_check_interval = 36 + + from_potential = { + has_dlc = "Mystics" + is_playable = yes + is_adult = yes + prisoner = no + society_member_of = hermetics + } + + potential = { + NOT = { character = FROM } + is_adult = yes + prisoner = no + society_member_of = hermetics + is_within_diplo_range = FROM + } + + allow = { + ROOT = { + war = no + NOT = { trait = incapable } + NOT = { trait = blinded } + NOT = { is_inaccessible_trigger = yes } + custom_tooltip = { + text = tooltip_not_busy + NOT = { has_character_flag = do_not_disturb } + } + } + FROM = { + war = no + NOT = { trait = incapable } + NOT = { trait = blinded } + NOT = { is_inaccessible_trigger = yes } + custom_tooltip = { + text = has_not_recently_performed_stargazing + NOT = { has_character_modifier = stargazing_timer } + NOT = { has_character_modifier = inviting_to_stargazing } + } + } + } + + effect = { + FROM = { + if = { + limit = { + NOT = { has_character_modifier = inviting_to_stargazing } + } + add_character_modifier = { + modifier = inviting_to_stargazing + duration = 182 + hidden = yes + } + set_character_flag = inviting_guests_to_stargazing_timer + } + set_character_flag = do_not_disturb + } + hidden_tooltip = { + letter_event = { id = MNM.1920 days = 7 } # Invitation + } + } + + revoke_allowed = { always = no } + + ai_will_do = { + factor = 1 + + modifier = { + factor = 0.01 # Slow down + } + modifier = { + factor = 0 + OR = { + trait = leper + trait = has_bubonic_plague + trait = has_typhoid_fever + trait = has_typhus + trait = has_measles + trait = has_small_pox + } + } + modifier = { + factor = 0 + is_rival = FROM + } + } + } + + +} + +society_decisions = { + hermetics_acquire_ingredients_decision = { + ai_check_interval = 24 + + potential = { + society_member_of = hermetics + } + + allow = { + custom_tooltip = { + text = tooltip_not_busy + hidden_trigger = { + block_general_event_trigger = no + } + } + custom_tooltip = { + text = acquire_ingredients_decision_cooldown_timer_tt + hidden_trigger = { + NOT = { + has_character_modifier = acquire_ingredients_decision_cooldown_timer + } + } + } + custom_tooltip = { + text = acquire_ingredients_decision_apprentice_requirement + hidden_trigger = { + any_courtier_or_vassal = { + liege = { character = ROOT } + has_minor_title = title_hermetics_apprentice + } + } + } + custom_tooltip = { + text = acquire_ingredients_decision_too_many_ingredients + hidden_trigger = { + NOT = { + any_artifact = { + count = 5 + has_artifact_flag = ingredient + } + } + } + } + } + + effect = { + custom_tooltip = { + text = acquire_ingredients_effect_tooltip + } + add_character_modifier = { + modifier = acquire_ingredients_decision_cooldown_timer + years = 5 + hidden = yes + } + character_event = { id = MNM.1800 } + } + + revoke_allowed = { always = no } + + ai_will_do = { + factor = 1 + modifier = { + factor = 0.01 # Slow down + } + modifier = { + factor = 0 # Already have ingredients + any_artifact = { + has_artifact_flag = ingredient + } + } + } + } + + #Write a Theory Paper + hermetics_write_theory_paper = { + ai_check_interval = 24 + + potential = { + society_member_of = hermetics + } + + allow = { + prisoner = no + custom_tooltip = { + text = write_theory_paper_decision_cooldown_timer_tt + hidden_trigger = { + NOT = { + has_character_modifier = write_theory_paper_decision_cooldown_timer + } + } + } + NOT = { is_inaccessible_trigger = yes } + prisoner = no + NOT = { trait = incapable } + } + + effect = { + custom_tooltip = { + text = write_theory_paper_decision_effect_tt + add_character_modifier = { + modifier = write_theory_paper_decision_cooldown_timer + years = 5 + hidden = yes + } + character_event = { id = MNM.1630 } + } + } + + ai_will_do = { + factor = 1 + modifier = { + factor = 0.001 # Slow down + } + } + } + + hermetic_grand_debate = { + only_playable = yes + is_high_prio = yes + ai_check_interval = 24 + + potential = { + has_dlc = "Mystics" + is_playable = yes + is_adult = yes + society_member_of = hermetics + society_rank == 4 + } + + allow = { + wealth = 100 + prestige = 400 + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = incapable } + custom_tooltip = { + text = is_not_busy_trigger_tooltip + hidden_tooltip = { NOT = { has_character_flag = do_not_disturb } } + } + custom_tooltip = { + text = GRAND_DEBATE_HOLDING_TOOLTIP + OR = { + NOT = { has_global_flag = holding_grand_debate } + had_global_flag = { flag = holding_grand_debate days = 150 } + } + } + custom_tooltip = { + text = GRAND_DEBATE_COOLDOWN_TOOLTIP + OR = { + NOT = { has_global_flag = held_grand_debate } + had_global_flag = { flag = held_grand_debate days = 3650 } + } + } + } + + effect = { + character_event = { id = MNM.1980 tooltip = GRAND_DEBATE_INVITE_TOOLTIP } + wealth = -100 + hidden_tooltip = { + clr_character_flag = grand_debate_has_ended + set_character_flag = do_not_disturb + set_global_flag = holding_grand_debate + character_event = { id = MNM.1982 days = 300 } # Safety catch flag clearing + } + } + + revoke_allowed = { always = no } + + ai_will_do = { + factor = 1 + + modifier = { + factor = 0.01 # Slow down + } + } + } +} \ No newline at end of file diff --git a/MOD/Witcher/decisions/mnm_society_decisions.txt b/MOD/Witcher/decisions/mnm_society_decisions.txt new file mode 100644 index 000000000..c63f764cb --- /dev/null +++ b/MOD/Witcher/decisions/mnm_society_decisions.txt @@ -0,0 +1,4253 @@ +########################################### +# +# Society decisions for Monks and Mystics +# +# Hermetic/mystic +# Secret religious cults +# Monastic orders +# Assassins +# Devil worshipers +# +########################################### + + +# General +society_decisions = { # Society decisions are only evaluated by members of societies + request_to_rank_up_within_society = { + only_playable = yes + + hide_in_decisions_list = yes # This is shown in the Society View + + ai_check_interval = 24 + + potential = { + hidden_tooltip = { + OR = { #In some societies, there can only be 1 member at rank 4 + society_rank < 3 + NOR = { + society_member_of = the_assassins + is_devil_worshiper_trigger = yes + } + } + society_rank < 4 + days_in_society > 365 + #has_dlc = "Mystics" + is_in_society = yes + OR = { #Players can always rank up (if they have the power) + ai = no + AND = { + ai = yes + society_can_rank_up = yes + } + } + } + } + + allow = { + #Rank requirements. IMPORTANT!!! If you change the requirements, the customizable loc keys "GetSocietyRankUpTooltip" 1, 2, 3, and 4 must be updated, as it displays these requirements. + custom_tooltip = { # Sufficient currency + text = request_to_rank_up_within_society_currency_tt + OR = { + AND = { + society_rank == 1 + society_currency >= 750 + } + AND = { + society_rank == 2 + society_currency >= 1000 + } + society_currency >= 2000 # rank 3 + } + } + # custom_tooltip = { # No vices for Buddhist/Jain ###Merged below + # text = request_to_rank_up_within_society_vices_tt + # OR = { + # NOR = { society_member_of = monastic_order_jain society_member_of = monastic_order_buddhist } + # NOR = { + # trait = greedy + # trait = gluttonous + # trait = slothful + # trait = envious + # trait = wroth + # trait = cruel + # trait = proud + # } + # } + # } + trigger_if = { + limit = { has_character_modifier = lost_rank_up_duel_cooldown } + custom_tooltip = { + text = recently_lost_rank_up_duel_tt + NOT = { has_character_modifier = lost_rank_up_duel_cooldown } + } + } + trigger_if = { + limit = { + ai = no #if you are a player + any_society_member = { #and there are already 4 other Heroes (rank is full). + count = 4 + society_rank == 4 + } + } + custom_tooltip = { + text = there_is_a_hero_available_to_duel_tt + any_society_member = { #there is no one to duel for the spot... + ai = yes + NOT = { has_character_flag = call_to_legend_active } + NOT = { trait = incapable } + prisoner = no + society_rank == 4 + } + } + } + trigger_if = { + limit = { has_character_flag = rank_up_blocked } + custom_tooltip = { + text = rank_up_blocked_tt + NOT = { has_character_flag = rank_up_blocked } + } + } + custom_tooltip = { + text = request_to_rank_up_within_society_cynical_tt + OR = { + NOR = { society_member_of = monastic_order_jain society_member_of = monastic_order_buddhist society_member_of = monastic_order_stoics } + AND = { + society_rank == 1 + NOT = { + trait = cruel + } + } + AND = { + society_rank == 2 + NOR = { + trait = cruel + trait = cynical + } + } + AND = { + society_rank == 3 + NOR = { + trait = cruel + trait = cynical + trait = greedy + trait = gluttonous + trait = slothful + trait = envious + trait = wroth + trait = cruel + trait = proud + } + } + } + } + custom_tooltip = { + text = request_to_rank_up_within_society_virtues_tt + OR = { + NOR = { society_member_of = monastic_order_jain society_member_of = monastic_order_buddhist society_member_of = monastic_order_stoics } + AND = { + society_rank == 1 + OR = { + trait = humble + trait = charitable + trait = chaste + trait = kind + trait = temperate + trait = patient + trait = diligent + } + } + AND = { + society_rank == 2 + calc_true_if = { + amount = 2 + trait = humble + trait = charitable + trait = chaste + trait = kind + trait = temperate + trait = patient + trait = diligent + } + } + AND = { + society_rank == 3 + calc_true_if = { + amount = 3 + trait = humble + trait = charitable + trait = chaste + trait = kind + trait = temperate + trait = patient + trait = diligent + } + } + } + } + + custom_tooltip = { + text = must_not_have_sent_request_already_tooltip + NOT = { has_character_flag = has_sent_request_to_rank_up } + } + + custom_tooltip = { + text = must_be_allowed_to_rank_up_tooltip + days_at_current_society_rank >= 1095 #IMPORTANT! Update tooltip. + } + + custom_tooltip = { + text = must_have_grandmaster_tooltip #You must have a grand master + any_society_member = { + is_society_grandmaster = yes + same_society_as = ROOT + } + } + + custom_tooltip = { + text = must_have_multiple_rank_4 #Society must allow multiple characters at Rank 4 + NAND = { + society_rank == 3 + OR = { + society_member_of = the_assassins + is_devil_worshiper_trigger = yes + } + } + } + } + + effect = { + society = { save_event_target_as = my_society } + if = { # Special handling for warrior lodge rank 3 members (in a society with enough Heroes already)... + limit = { + ai = no + is_member_of_any_warrior_lodge_trigger = yes + society_rank == 3 + society = { + any_society_member = { #make sure there is someone you can duel for the spot. + NOT = { has_character_flag = call_to_legend_active } + ai = yes + prisoner = no + society_rank == 4 + } + any_society_member = { #make sure there are already 4 other Heroes (rank is full). + count = 4 + society_rank == 4 + } + } + } + set_character_flag = has_sent_request_to_rank_up + character_event = { id = HF.10060 } #sends event presenting choice: to duel a current Hero or nah? + } + + else = { #For everyone else... + #Rank up cost + if = { + limit = { society_rank == 1 } + change_society_currency = -750 + } + if = { + limit = { society_rank == 2 } + change_society_currency = -1000 + } + if = { + limit = { society_rank == 3 } + change_society_currency = -2000 + } + + #Perform rank up + hidden_tooltip = { + save_event_target_as = rank_up_target + set_character_flag = has_sent_request_to_rank_up + character_event = { id = MNM.10002 days = 20 random = 10 } # sends hidden delayed event to self, which then sends request to Leader of the society + + #Conversus power for benedictines + if = { + limit = { + society_member_of = monastic_order_benedictine + society_rank == 3 + } + character_event = { id = MNM.4600 days = 10 random = 350 } + } + } + } + } + + revoke_allowed = { + always = no + } + + ai_will_do = { + factor = 1 + + modifier = { + factor = 0.5 #Slow down + } + modifier = { + factor = 0.5 + trait = content + } + modifier = { + factor = 2 + trait = ambitious + } + } + } +} + + #Hermetic/mystic + +society_decisions = { + + # Build a Laboratory + build_laboratory = { + only_playable = yes + is_high_prio = yes + ai_check_interval = 36 + + potential = { + has_dlc = "Mystics" + society_member_of = hermetics + has_quest = quest_hermetics_build_laboratory + is_playable = yes + block_general_event_trigger = no + NOT = { has_character_flag = building_laboratory } + NOT = { has_character_flag = built_laboratory } + } + allow = { + wealth = 50 + } + effect = { + wealth = -50 + set_character_flag = building_laboratory + custom_tooltip = { text = start_constructing_laboratory_tooltip } + hidden_tooltip = { character_event = { id = MNM.1100 } } + } + revoke_allowed = { + always = no + } + ai_will_do = { + factor = 1 + + modifier = { + factor = 0 + NOT = { wealth = 75 } + } + + modifier = { + factor = 0.1 + NOT = { age = 30 } + } + } + } +} + + #Secret religious cults + +#Monastic orders +society_decisions = { + monastic_order_penance = { + ai_check_interval = 24 + potential = { + has_dlc = "Mystics" + is_christian_monastic_member_trigger = yes + has_quest = quest_monastic_order_penance + NOT = { has_character_modifier = doing_penance } + } + + allow = { + has_quest = quest_monastic_order_penance + custom_tooltip = { + text = monastic_order_penance_allow_tt + OR = { + NOT = { has_character_flag = holy_seclusion_timer } + had_character_flag = { flag = holy_seclusion_timer days = 1000 } + } + } + } + + effect = { + add_character_modifier = { + name = doing_penance + duration = -1 + } + hidden_effect = { character_event = { id = MNM.4403 } } + } + + revoke_allowed = { + always = no + } + + ai_will_do = { + factor = 1 + + modifier = { + factor = 0.01 + war = yes + } + modifier = { + factor = 0.1 + OR = { + trait = gregarious + trait = socializer + } + } + modifier = { + factor = 5 + is_virtous = yes + } + } + } + + monastic_order_meditation = { + ai_check_interval = 24 + potential = { + has_dlc = "Mystics" + OR = { + society_member_of = monastic_order_stoics + is_dharmic_monastic_member_trigger = yes + } + has_quest = quest_monastic_order_meditation + } + + allow = { + has_quest = quest_monastic_order_meditation + custom_tooltip = { + text = monastic_order_meditation_allow_tt + OR = { + NOT = { has_character_flag = holy_seclusion_timer } + had_character_flag = { flag = holy_seclusion_timer days = 1000 } + } + } + } + + effect = { + add_character_modifier = { + name = in_meditation + duration = -1 + } + hidden_effect = { character_event = { id = MNM.4403 } } + } + + revoke_allowed = { + always = no + } + + ai_will_do = { + factor = 1 + + modifier = { + factor = 0.01 + war = yes + } + modifier = { + factor = 0.1 + OR = { + trait = gregarious + trait = socializer + } + } + modifier = { + factor = 5 + is_virtous = yes + } + } + } + + monastic_order_rejoin_world = { + ai_check_interval = 24 + + potential = { + has_dlc = "Mystics" + OR = { + has_character_modifier = doing_penance + has_character_modifier = in_meditation + } + } + + allow = { + OR = { + has_character_modifier = doing_penance + has_character_modifier = in_meditation + } + piety = 100 + } + + effect = { + remove_character_modifier = doing_penance + remove_character_modifier = in_meditation + hidden_effect = { + clr_character_flag = success_seculison_desc_A #Flags from 4426 + clr_character_flag = success_seculison_desc_B + clr_character_flag = success_seculison_desc_C + } + piety = -100 + } + + revoke_allowed = { always = no } + + ai_will_do = { + factor = 0 + } + } +} + + + +###THE ASSASSINS### +society_decisions = { + #Assassins + assassins_borrow_money = { + only_playable = yes + + ai_check_interval = 80 + potential = { + has_dlc = "Mystics" + society_member_of = the_assassins + NOT = { + society_rank = { + society = the_assassins + rank == 4 + } + } + NOT = { has_character_modifier = assassins_debt } + } + + allow = { + custom_tooltip = { + text = assassins_borrow_money_tooltip + + any_society_member = { + is_society_grandmaster = yes + society_member_of = the_assassins + OR = { + ai = no + NOT = { primary_title = { title = d_hashshashin } } + AND = { + primary_title = { title = d_hashshashin } + wealth = 50 + } + } + } + } + } + + effect = { + custom_tooltip = { text = assassins_borrow_money_effect_tooltip } + hidden_tooltip = { + random_society_member = { + limit = { + is_society_grandmaster = yes + society_member_of = the_assassins + } + character_event = { id = MNM.6000 } + } + } + } + + revoke_allowed = { + always = no + } + + ai_will_do = { + factor = 1 + + modifier = { + factor = 0.5 #Slow down + } + modifier = { + factor = 0 + wealth = 1 + } + modifier = { + factor = 0.1 + war = no + } + } + } + + assassins_pay_debt = { + only_playable = yes + ai_check_interval = 18 + + potential = { + has_dlc = "Mystics" + has_character_modifier = assassins_debt + NOT = { has_character_flag = block_payback } + any_society_member = { + is_society_grandmaster = yes + society_member_of = the_assassins + } + } + + allow = { + custom_tooltip = { + text = assassins_pay_debt_tooltip + + OR = { + AND = { + is_variable_equal = { which = assassins_debt value = 50 } + wealth = 50 + } + AND = { + is_variable_equal = { which = assassins_debt value = 250 } + wealth = 250 + } + AND = { + is_variable_equal = { which = assassins_debt value = 500 } + wealth = 500 + } + } + } + } + + effect = { + pay_back_assassins_effect = yes + remove_assassins_debt_effect = yes + } + + revoke_allowed = { + always = no + } + + ai_will_do = { + factor = 1 + + modifier = { + factor = 0.5 #Slow it down + } + modifier = { + factor = 0.1 + trait = greedy + } + modifier = { + factor = 0.1 + war = yes + } + modifier = { + factor = 0 + has_character_flag = assassins_refused_to_pay_debt + } + modifier = { + factor = 0 + + OR = { + AND = { + is_variable_equal = { which = assassins_debt value = 50 } + OR = { + NOT = { wealth = 50 } + AND = { + NOT = { monthly_income = 0 } + NOT = { wealth = 100 } + } + } + } + AND = { + is_variable_equal = { which = assassins_debt value = 250 } + OR = { + NOT = { wealth = 250 } + AND = { + NOT = { monthly_income = 0 } + NOT = { wealth = 500 } + } + } + } + AND = { + is_variable_equal = { which = assassins_debt value = 500 } + OR = { + NOT = { wealth = 500 } + AND = { + NOT = { monthly_income = 0 } + NOT = { wealth = 1000 } + } + } + } + } + } + } + } + + assassins_donate = { + only_playable = yes + ai_check_interval = 120 + + potential = { + has_dlc = "Mystics" + society_member_of = the_assassins + society_rank < 4 + } + + allow = { + wealth = 200 + } + + effect = { + tooltip = { + wealth = -200 + add_society_currency_minor_effect = yes + } + hidden_effect = { + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_assassins + } + } + character_event = { id = MNM.6004 } + } + } + } + + revoke_allowed = { + always = no + } + + ai_will_do = { + factor = 1 + + modifier = { + factor = 0.1 #Slow it down + } + modifier = { + factor = 0.1 + trait = greedy + } + modifier = { + factor = 0.1 + war = yes + } + modifier = { + factor = 0 + NOT = { wealth = 300 } + } + } + } + + assassins_raise_troops = { + only_playable = yes + + is_high_prio = yes + is_mercenary = yes + ai_check_interval = 24 + + potential = { + has_dlc = "Mystics" + society_rank = { + society = the_assassins + rank == 4 + } + } + + allow = { + war = yes + has_society_currency_major_trigger = yes + conditional_tooltip = { + trigger = { + has_character_modifier = assassins_raise_troops_cooldown + } + + custom_tooltip = { + text = assassins_raise_troops_cooldown_TT + + always = no + } + } + } + + effect = { + capital_scope = { + ROOT = { + spawn_unit = { + owner = ROOT + province = PREV + home = PREV + troops = { + archers = { 1500 1500 } + light_infantry = { 2500 2500 } + light_cavalry = { 1000 1000 } + } + attrition = 1.0 + disband_on_peace = yes + maintenance_multiplier = 1 + earmark = assassin_troops + } + } + } + hidden_tooltip = { + add_character_modifier = { + name = assassins_raise_troops_cooldown + hidden = yes + years = 1 + } + } + detract_society_currency_major_effect = yes + sound_effect = generic_click_01 + } + + revoke_allowed = { + always = no + } + + ai_will_do = { + factor = 0 # decisions with the "is_mercenary" will not be calculated from the script + } + } + + assassins_raise_ships = { + only_playable = yes + + is_high_prio = yes + is_mercenary = yes + + ai_check_interval = 24 + + potential = { + has_dlc = "Mystics" + society_rank = { + society = the_assassins + rank >= 3 + } + } + + allow = { + war = yes + has_society_currency_medium_trigger = yes + } + + effect = { + spawn_fleet = { + province = closest + owner = ROOT + disband_on_peace = yes + earmark = assassin_ships + troops = + { + galleys = { 45 45 } + } + } + detract_society_currency_medium_effect = yes + sound_effect = generic_click_01 + } + + revoke_allowed = { + always = no + } + + ai_will_do = { + factor = 0 + } + } + + assassins_drug_effect = { + ai_check_interval = 36 + + potential = { + has_dlc = "Mystics" + society_member_of = the_assassins + NOT = { has_character_flag = assassins_taking_drugs } + } + + allow = { + has_society_currency_minor_trigger = yes + } + + effect = { + detract_society_currency_minor_effect = yes + custom_tooltip = { text = assassins_drug_decision_tt } + hidden_effect = { + remove_character_modifier = withdrawal_symptoms + character_event = { id = MNM.6800 days = 0} + } + } + + ai_will_do = { + factor = 0 + } + } +} + +targeted_decisions = { + + #Action: recruit assassins + assassins_recruit = { + ai_target_filter = realm + is_in_society = yes # Note - Only works for targeted_decisions. For non-targeted decisions you can use "society_decisions" + ai_check_interval = 24 + + from_potential = { + is_adult = yes + prisoner = no + NOT = { trait = incapable } + NOT = { has_character_modifier = recruitment_timer } + society_member_of = the_assassins + + #Only level 2 and 3 AIs recruit + OR = { + ai = no + society_rank == 2 + society_rank == 3 + } + } + potential = { + OR = { + FROM = { ai = no } + ai = no + } + OR = { + FROM = { ai = yes } + is_within_diplo_range = FROM # AI only checks inside realm, so is by definition in range + } + is_adult = yes + prisoner = no + NOT = { trait = incapable } + is_in_society = no + OR = { + is_female = no + has_game_rule = { + name = gender + value = all + } + } + + #AI cannot invite other AIs when society is full + NAND = { + ai = yes + FROM = { ai = yes } + NOT = { can_join_society = the_assassins } + } + + #Stopping the ai from making stupid choices + OR = { + FROM = { ai = no } + is_friend = FROM + is_lover = FROM + is_close_relative = FROM + interested_in_society = the_assassins + } + + NAND = { + FROM = { ai = yes } + ai = yes + trait = zealous + NOT = { true_religion_group = muslim } + } + } + allow = { + has_assassins_prerequisites = yes + is_inaccessible_trigger = no + + FROM = { + custom_tooltip = { + text = recruit_delay_timer_tooltip + NOT = { has_character_modifier = recruitment_delay_timer } + } + } + + ROOT = { + is_inaccessible_trigger = no + custom_tooltip = { + text = assassins_recruit_block_tooltip + OR = { + NOT = { has_character_flag = assassins_attempted_recruitment } + interested_in_society = the_assassins + } + NOT = { has_character_flag = ongoing_recruitment } + } + } + } + effect = { + set_character_flag = assassins_attempted_recruitment + set_character_flag = ongoing_recruitment + hidden_effect = { + if = { + limit = { NOT = { religion = shiite } } + character_event = { id = MNM.6020 days = 3 } + } + if = { + limit = { religion = shiite } + character_event = { id = MNM.6022 days = 3 } + } + character_event = { id = MNM.7030 days = 365 } + FROM = { + if = { + limit = { ai = yes } + add_character_modifier = { + name = recruitment_timer + days = 730 + hidden = yes + } + } + add_character_modifier = { + name = recruitment_delay_timer + days = 90 + hidden = yes + } + } + } + } + revoke_allowed = { + always = no + } + ai_will_do = { + factor = 1 + modifier = { + factor = 0.1 # slow down + } + modifier = { + factor = 10 # recruit interested parties + interested_in_society = the_assassins + } + modifier = { + factor = 0 # don't recruit characters interested in something else + NOT = { interested_in_society = the_assassins } + is_interested_in_any_society = yes + } + modifier = { + factor = 0.1 + NOT = { religion_group = muslim } + } + } + } + + #Power: scare ruler + assassins_scare_ruler = { + only_playable = yes + + ai_target_filter = realm + ai_check_interval = 60 + + from_potential = { + has_dlc = "Conclave" + is_playable = yes + is_adult = yes + NOT = { trait = incapable } + society_rank = { + society = the_assassins + rank >= 2 + } + prisoner = no + } + + potential = { + NOT = { character = FROM } + age = 10 + is_ruler = yes + OR = { + FROM = { ai = yes } # Only checks realm, so by definition in range + is_within_diplo_range = FROM + } + } + + allow = { + ROOT = { + NOT = { society_member_of = the_assassins } + prisoner = no + is_inaccessible_trigger = no + NOT = { owes_favor_to = FROM } + } + OR = { + FROM = { society_rank == 4 } + ROOT = { same_realm = FROM } + } + FROM = { + has_society_currency_medium_trigger = yes + is_inaccessible_trigger = no + } + NOT = { + has_opinion_modifier = { + modifier = opinion_threatened_me + who = FROM + } + } + } + + effect = { + FROM = { detract_society_currency_medium_effect = yes } + + random_list = { + 50 = { + modifier = { + factor = 9 + FROM = { society_rank == 4 } + } + modifier = { + factor = 3 + FROM = { society_rank == 3 } + } + hidden_effect = { character_event = { id = MNM.6840 days = 1 } } + FROM = { add_favor = ROOT } + } + 50 = { + modifier = { #Makes it even harder to threaten someone 2 steps above you + factor = 3 + OR = { + AND = { + tier = EMPEROR + FROM = { lower_tier_than = KING } + } + AND = { + tier = KING + FROM = { tier = BARON } + } + } + } + modifier = { #Makes it harder to threaten someone above you + factor = 3 + higher_tier_than = FROM + } + custom_tooltip = { text = assassins_scare_ruler_fail } + hidden_effect = { FROM = { character_event = { id = MNM.6980 days = 1 } } } + } + } + + } + + revoke_allowed = { + always = no + } + + ai_will_do = { + factor = 1 + modifier = { + factor = 0.5 # slow down + } + modifier = { + FROM = { is_benevolent_trigger = yes } + factor = 0.1 + } + modifier = { + FROM = { is_evil_trigger = yes } + factor = 2 + } + modifier = { + OR = { + is_friend = FROM + is_lover = FROM + NOR = { + liege = { character = FROM } + is_liege_of = FROM + } + } + factor = 0 + } + } + } + + #Power: mark for death + assassins_mark_for_death = { + only_playable = yes + + ai_target_filter = realm + ai_target_filter = rivals + ai_check_interval = 24 + + from_potential = { + is_playable = yes + is_adult = yes + prisoner = no + society_rank = { + society = the_assassins + rank == 4 + } + } + + potential = { + NOT = { character = FROM } + is_adult = yes + is_within_diplo_range = FROM + + #Limits for performance and sense-making + OR = { + FROM = { ai = no } + is_foe = FROM + NOT = { reverse_opinion = { who = FROM value = -30 } } + holds_favor_on = FROM + any_spouse = { #Unfaithful spouse + character = FROM + any_lover = { NOT = { character = FROM } } + } + any_lover = { any_spouse = { character = FROM } } #Lover of spouse + any_lover = { any_lover = { character = FROM } } #Lover of lover + ROOT = { any_claim = { any_claimant = { character = FROM } } } #Somneone sharing claims + AND = { + true_religion_shiite_trigger = no + is_ruler = yes + OR = { + trait = zealous + trait = cruel + trait = arbitrary + } + } + } + } + + allow = { + custom_tooltip = { + text = assassins_mark_for_death_allow_tooltip + FROM = { + NOT = { has_character_flag = assassins_marked_someone_for_death } + has_society_currency_medium_trigger = yes + } + } + } + + effect = { + custom_tooltip = { + text = assassins_mark_for_death_effect_tooltip + FROM = { + set_character_flag = assassins_marked_someone_for_death + character_event = { id = MNM.6842 } + } + set_character_flag = assassins_target_marked_for_death + } + FROM = { detract_society_currency_medium_effect = yes } + } + + revoke_allowed = { + always = no + } + + ai_will_do = { + factor = 1 + modifier = { + factor = 0.2 # slow down + } + modifier = { + FROM = { is_benevolent_trigger = yes } + factor = 0.1 + } + modifier = { + FROM = { is_evil_trigger = yes } + factor = 4 + } + modifier = { + FROM = { trait = ambitious } + factor = 2 + } + modifier = { + OR = { + is_friend = FROM + is_lover = FROM + } + factor = 0 + } + } + } + + #Action: Clear marked for death + assassins_clear_marked_for_death_target = { + only_playable = yes + + ai_target_filter = realm + ai = no + + from_potential = { + is_playable = yes + is_adult = yes + prisoner = no + society_rank = { + society = the_assassins + rank == 4 + } + } + + potential = { + NOT = { character = FROM } + is_adult = yes + is_within_diplo_range = FROM + has_character_flag = assassins_target_marked_for_death + } + + allow = { + custom_tooltip = { + text = assassins_clear_marked_for_death_target_allow_tooltip + has_character_flag = assassins_target_marked_for_death + } + } + + effect = { + custom_tooltip = { + text = assassins_clear_marked_for_death_target_effect_tooltip + clr_character_flag = assassins_target_marked_for_death + FROM = { clr_character_flag = assassins_marked_someone_for_death } + } + } + + revoke_allowed = { + always = no + } + + ai_will_do = { + factor = 0 + } + } + #Action: (Mission only: Train Protege) + train_assassin_protege = { + only_playable = yes + is_high_prio = yes + ai_check_interval = 36 + + from_potential = { + has_dlc = "Mystics" + is_playable = yes + is_adult = yes + prisoner = no + society_member_of = the_assassins + has_regent = no + is_inaccessible_trigger = no + has_quest = quest_the_assassins_protege + NOT = { has_character_flag = training_protege } + } + + potential = { + NOT = { character = FROM } + prisoner = no + #is_child_of = FROM + } + + allow = { + host = { character = FROM } #must be in your court...? + age = 12 + NOT = { age = 21 } + is_ruler = no + is_abroad = no + is_married = no + #NOT = { any_spouse = { is_landed = yes } } + + trigger_if = { + limit = { #can't be in a society already... + is_in_society = yes + } + is_in_society = no + } + + is_inaccessible_trigger = no + + custom_tooltip = { + text = characters_are_not_busy_tt + hidden_tooltip = { + FROM = { + NOT = { has_character_flag = do_not_disturb } + NOT = { war = yes } + } + NOT = { has_character_flag = do_not_disturb } + NOT = { war = yes } + } + } + trigger_if = { + limit = { NOT = { is_within_diplo_range = FROM } } + is_within_diplo_range = FROM # CPU HEAVY! + } + } + + effect = { + save_event_target_as = assassin_protege + + FROM = { + set_character_flag = is_using_train_protege_decision + character_event = { id = MNM.6250 } + } + } + + revoke_allowed = { + always = no + } + ai_will_do = { + factor = 1 + modifier = { + factor = 0 + #if the target has already recruited someone + any_child = { + same_society_as = ROOT + } + + } + modifier = { + factor = 0.3 + } + } + } +} + + +society_decisions = { + + #Monastic Orders + + #Switch Celibate + monastic_orders_go_celibate = { + ai = no + + potential = { + OR = { + is_dharmic_monastic_member_trigger = yes + is_christian_monastic_member_trigger = yes + society_member_of = monastic_order_stoics + } + society_rank >= 2 + NOT = { has_character_modifier = promise_of_celibacy } + NOT = { trait = celibate } + } + + allow = { + NOT = { + trait = celibate + trait = hedonist + trait = seducer + trait = seductress + } + } + + effect = { + tooltip = { + add_trait = celibate + } + character_event = { + id = MNM.4090 + } + } + + ai_will_do = { + factor = 0 + } + } + + monastic_orders_stop_celibate = { + ai = no + + potential = { + OR = { + is_christian_monastic_member_trigger = yes + is_dharmic_monastic_member_trigger = yes + society_member_of = monastic_order_stoics + } + society_rank >= 2 + trait = celibate + NOT = { + has_character_flag = flag_papal_celibacy #No weaseling. + } + } + + allow = { + trait = celibate + } + + effect = { + tooltip = { + remove_trait = celibate + } + character_event = { + id = MNM.4091 + } + } + + ai_will_do = { + factor = 0 + } + } + + monastic_orders_donate_to_charity = { + only_playable = yes + ai_check_interval = 36 + + potential = { + is_monastic_member_trigger = yes + NOT = { society_member_of = monastic_order_stoics } + OR = { + has_quest = quest_monastic_order_donate_to_charity + NOT = { has_character_modifier = recently_donated_to_charity} + } + NOT = { has_character_flag = donate_to_charity_cooldown } + } + + allow = { + wealth = 100 + } + + effect = { + set_character_flag = donate_to_charity_cooldown + tooltip = { + wealth = -100 + if = { + limit = { has_quest = quest_monastic_order_donate_to_charity } + add_society_currency_medium_effect = yes + } + if = { + limit = { NOT = { has_quest = quest_monastic_order_donate_to_charity } } + add_society_currency_minor_effect = yes + } + add_character_modifier = { + modifier = recently_donated_to_charity + days = 360 + } + if = { + limit = { + NOR = { + trait = charitable + trait = greedy + } + } + random = { + chance = 30 + add_trait = charitable + } + } + if = { + limit = { trait = greedy } + random = { + chance = 40 + remove_trait = greedy + } + } + } + hidden_effect = { + if = { + limit = { + is_society_grandmaster = no + } + random_society_member = { + limit = { + same_society_as = ROOT + is_society_grandmaster = yes + } + character_event = { + id = MNM.4013 + } + } + } + else_if = { + limit = { + is_society_grandmaster = yes + any_society_member = { + same_society_as = ROOT + is_society_grandmaster = no + } + } + random_society_member = { + limit = { + same_society_as = ROOT + is_society_grandmaster = no + } + character_event = { + id = MNM.4013 + } + } + } + else = { + wealth = -100 + if = { + limit = { NOT = { has_quest = quest_monastic_order_donate_to_charity } } + add_society_currency_minor_effect = yes + } + + if = { + limit = { has_quest = quest_monastic_order_donate_to_charity } + clr_quest = quest_monastic_order_donate_to_charity + sound_effect = monastic_orders_donate_charity + hidden_effect = { monastic_order_purity_effect = yes } + add_society_currency_medium_effect = yes + } + + add_character_modifier = { + modifier = recently_donated_to_charity + days = 360 + } + if = { + limit = { NOT = { trait = greedy } } + random = { + chance = 30 + add_trait = charitable + } + } + if = { + limit = { trait = greedy } + random = { + chance = 40 + remove_trait = greedy + } + } + clr_character_flag = donate_to_charity_cooldown + } + } + } + } + + +} + +targeted_decisions = { + + #Power: Dark healing + devil_worshipers_dark_healing = { + is_in_society = yes + + filter = self + ai_target_filter = self + ai_check_interval = 6 + + potential = { + has_dlc = "Mystics" + is_devil_worshiper_trigger = yes + society_rank >= 3 + NOR = { + has_character_flag = dark_healing_in_effect + has_character_modifier = dark_healing_recent + } + } + + allow = { + has_society_currency_medium_trigger = yes + custom_tooltip = { + text = devil_worshipers_dark_healing_tooltip + OR = { + + has_disease_trigger = yes + has_symptom_trigger = yes + has_injury_trigger = yes + is_maimed_trigger = yes + trait = infirm + trait = mangled + trait = eunuch + trait = blinded + trait = incapable + } + } + } + effect = { + increase_visibility_effect = yes + character_event = { id = MNM.7118 days = 0 } + detract_society_currency_medium_effect = yes + set_character_flag = dark_healing_in_effect + } + ai_will_do = { + factor = 1 + } + } + + #Power: Demonic Possession + devil_worshipers_demonic_possession = { + is_in_society = yes + + ai_target_filter = sub_realm + ai_check_interval = 12 + + from_potential = { + is_devil_worshiper_trigger = yes + society_rank > 1 + } + + potential = { + OR = { + host = { character = FROM } + liege = { character = FROM } + } + NOT = { character = FROM } + ai = yes + } + + allow = { + FROM = { + prisoner = no + NOT = { trait = incapable } + has_society_currency_minor_trigger = yes + + custom_tooltip = { + text = is_accessible + OR = { + is_inaccessible_trigger = no + AND = { + FROM = { + has_character_modifier = in_seclusion + at_location = ROOT + } + ROOT = { + has_character_modifier = in_seclusion + } + } + } + } + } + ROOT = { + + NOT = { trait = incapable } + + custom_tooltip = { + text = possess_courtier_already_done + NOR = { + has_character_flag = possessing_courtier + has_opinion_modifier = { who = FROM modifier = opinion_loyal_servant } + trait = possessed + trait = lunatic + } + } + } + } + + effect = { + ROOT = { + set_character_flag = possessing_courtier + hidden_effect = { + character_event = { id = MNM.7840 days = 3 random = 7 } + } + } + FROM = { + detract_society_currency_minor_effect = yes + } + if = { + limit = { + NOT = { + is_quest_target_of = FROM + } + } + FROM = { + increase_visibility_effect = yes + } + } + if = { + limit = { + is_quest_target_of = FROM + } + FROM = { + increase_visibility_minor_effect = yes + } + } + } + + ai_will_do = { + factor = 1 + modifier = { + factor = 0.1 # slow down + } + modifier = { + factor = 0.5 + is_benevolent_trigger = yes + } + modifier = { + factor = 0.25 + ROOT = { + is_landed = no + } + } + modifier = { + factor = 3 + ROOT = { + among_most_powerful_vassals = 5 + } + } + } + } + + #Action: satanist recruit + satanists_recruit = { + is_in_society = yes + + filter = all + ai_target_filter = realm + ai_check_interval = 24 + + from_potential = { + is_adult = yes + prisoner = no + NOT = { trait = incapable } + NOT = { has_character_modifier = recruitment_timer } + society_member_of = the_satanists + OR = { + ai = no + society_rank = { + society = the_satanists + rank == 2 + } + society_rank = { + society = the_satanists + rank == 3 + } + } + } + potential = { + OR = { + FROM = { ai = no } + ai = no + } + OR = { + FROM = { ai = yes } # Only checks realm, so by definition in range + is_within_diplo_range = FROM + } + is_adult = yes + prisoner = no + NOT = { trait = incapable } + is_in_society = no + + + #AI cannot invite other AIs when society is full + NAND = { + ai = yes + FROM = { ai = yes } + NOT = { can_join_society = the_satanists } + } + + #Blocks so AI recruits sensible people (who might say no) + OR = { + FROM = { ai = no } + is_friend = FROM + is_lover = FROM + is_close_relative = FROM + trait = trusting + has_satanists_prerequisites = yes + interested_in_society = the_satanists + } + } + allow = { + is_inaccessible_trigger = no + custom_tooltip = { + text = satanists_recruit_block_tooltip + OR = { + NOT = { has_character_flag = satanists_attempted_recruitment } + interested_in_society = the_satanists + } + NOT = { has_character_flag = being_recruited_by_the_satanists } + } + has_satanists_prerequisites = yes + FROM = { + is_inaccessible_trigger = no + custom_tooltip = { + text = recruit_delay_timer_tooltip + NOT = { has_character_modifier = recruitment_delay_timer } + } + } + } + effect = { + set_character_flag = satanists_attempted_recruitment + set_character_flag = being_recruited_by_the_satanists + FROM = { + save_event_target_as = satanists_recruiter + } + hidden_effect = { + character_event = { id = MNM.7001 days = 3 } # recruitment chain + character_event = { id = MNM.7030 days = 365 } # sends delayed back up, in case recruitment fails somehow + FROM = { + if = { + limit = { ai = yes } + add_character_modifier = { + name = recruitment_timer + days = 730 + hidden = yes + } + } + add_character_modifier = { + name = recruitment_delay_timer + days = 90 + hidden = yes + } + } + } + } + revoke_allowed = { + always = no + } + ai_will_do = { + factor = 1 + modifier = { + factor = 0.2 # slow down + FROM = { + society = { num_of_society_members > 20 } + } + } + modifier = { + factor = 10 # recruit interested parties + interested_in_society = the_satanists + } + modifier = { + factor = 0 # don't recruit characters interested in something else + NOT = { interested_in_society = the_satanists } + is_interested_in_any_society = yes + } + } + } + + #Action: trollcrafters recruit + trollcrafters_recruit = { + is_in_society = yes + + ai_target_filter = realm + ai_check_interval = 24 + + from_potential = { + is_adult = yes + prisoner = no + NOT = { trait = incapable } + NOT = { has_character_modifier = recruitment_timer } + society_member_of = the_trollcrafters + OR = { + ai = no + society_rank = { + society = the_trollcrafters + rank == 2 + } + society_rank = { + society = the_trollcrafters + rank == 3 + } + } + } + potential = { + OR = { + FROM = { ai = no } + ai = no + } + OR = { + FROM = { ai = yes } # Only checks realm, so by definition in range + is_within_diplo_range = FROM + } + is_adult = yes + prisoner = no + NOT = { trait = incapable } + is_in_society = no + + #AI cannot invite other AIs when society is full + NAND = { + ai = yes + FROM = { ai = yes } + NOT = { can_join_society = the_trollcrafters } + } + + #Blocks so AI recruits sensible people (who might say no) + OR = { + FROM = { ai = no } + is_friend = FROM + is_lover = FROM + is_close_relative = FROM + trait = trusting + has_impious_trait_trigger = yes + trait = drunkard + trait = possessed + trait = lunatic + interested_in_society = the_trollcrafters + } + + NAND = { + FROM = { ai = yes } + trait = zealous + } + } + allow = { + OR = { + religion = norse_pagan + religion = norse_pagan_reformed + } + is_inaccessible_trigger = no + custom_tooltip = { + text = trollcrafters_recruit_block_tooltip + OR = { + NOT = { has_character_flag = trollcrafters_attempted_recruitment } + interested_in_society = the_trollcrafters + } + NOT = { has_character_flag = being_recruited_by_the_trollcrafters } + } + has_trollcrafters_prerequisites = yes + FROM = { + is_inaccessible_trigger = no + custom_tooltip = { + text = recruit_delay_timer_tooltip + NOT = { has_character_modifier = recruitment_delay_timer } + } + } + } + effect = { + set_character_flag = trollcrafters_attempted_recruitment + set_character_flag = being_recruited_by_the_trollcrafters + FROM = { + save_event_target_as = satanists_recruiter + } + hidden_effect = { + character_event = { id = MNM.7001 days = 3 } # recruitment chain + character_event = { id = MNM.7030 days = 365 } # sends delayed back up, in case recruitment fails somehow + FROM = { + if = { + limit = { ai = yes } + add_character_modifier = { + name = recruitment_timer + days = 730 + hidden = yes + } + } + add_character_modifier = { + name = recruitment_delay_timer + days = 90 + hidden = yes + } + } + } + } + revoke_allowed = { + always = no + } + ai_will_do = { + factor = 1 + modifier = { + factor = 0.2 # slow down + FROM = { + society = { num_of_society_members > 20 } + } + } + modifier = { + factor = 10 # recruit interested parties + interested_in_society = the_trollcrafters + } + modifier = { + factor = 0 # don't recruit characters interested in something else + NOT = { interested_in_society = the_trollcrafters } + is_interested_in_any_society = yes + } + } + } + + #Action: cult of kali recruit + cult_of_kali_recruit = { + is_in_society = yes + + ai_target_filter = realm + ai_check_interval = 24 + + from_potential = { + is_adult = yes + prisoner = no + NOT = { trait = incapable } + NOT = { has_character_modifier = recruitment_timer } + society_member_of = the_cult_of_kali + OR = { + ai = no + society_rank = { + society = the_cult_of_kali + rank == 2 + } + society_rank = { + society = the_cult_of_kali + rank == 3 + } + } + } + potential = { + OR = { + FROM = { ai = no } + ai = no + } + OR = { + FROM = { ai = yes } # Only checks realm, so by definition in range + is_within_diplo_range = FROM + } + is_adult = yes + prisoner = no + NOT = { trait = incapable } + is_in_society = no + + #AI cannot invite other AIs when society is full + NAND = { + ai = yes + FROM = { ai = yes } + NOT = { can_join_society = the_trollcrafters } + } + + #Blocks so AI recruits sensible people (who might say no) + OR = { + FROM = { ai = no } + is_friend = FROM + is_lover = FROM + is_close_relative = FROM + trait = trusting + has_impious_trait_trigger = yes + trait = drunkard + trait = possessed + trait = lunatic + interested_in_society = the_cult_of_kali + } + + NAND = { + FROM = { ai = yes } + trait = zealous + } + } + allow = { + religion = hindu + is_inaccessible_trigger = no + custom_tooltip = { + text = cult_of_kali_recruit_block_tooltip + OR = { + NOT = { has_character_flag = cult_of_kali_attempted_recruitment } + interested_in_society = the_cult_of_kali + } + NOT = { has_character_flag = being_recruited_by_the_cult_of_kali } + } + has_cult_of_kali_prerequisites = yes + FROM = { + is_inaccessible_trigger = no + custom_tooltip = { + text = recruit_delay_timer_tooltip + NOT = { has_character_modifier = recruitment_delay_timer } + } + } + } + effect = { + set_character_flag = cult_of_kali_attempted_recruitment + set_character_flag = being_recruited_by_the_cult_of_kali + FROM = { + save_event_target_as = satanists_recruiter + } + hidden_effect = { + character_event = { id = MNM.7001 days = 3 } # recruitment chain + character_event = { id = MNM.7030 days = 365 } # sends delayed back up, in case recruitment fails somehow + FROM = { + if = { + limit = { ai = yes } + add_character_modifier = { + name = recruitment_timer + days = 730 + hidden = yes + } + } + add_character_modifier = { + name = recruitment_delay_timer + days = 90 + hidden = yes + } + } + } + } + revoke_allowed = { + always = no + } + ai_will_do = { + factor = 1 + modifier = { + factor = 0.2 # slow down + FROM = { + society = { num_of_society_members > 20 } + } + } + modifier = { + factor = 10 # recruit interested parties + interested_in_society = the_cult_of_kali + } + modifier = { + factor = 0 # don't recruit characters interested in something else + NOT = { interested_in_society = the_cult_of_kali } + is_interested_in_any_society = yes + } + } + } + + #Action: cold ones recruit + cold_ones_recruit = { + is_in_society = yes + + ai_target_filter = realm + ai_check_interval = 24 + + from_potential = { + is_adult = yes + prisoner = no + NOT = { trait = incapable } + NOT = { has_character_modifier = recruitment_timer } + society_member_of = the_cold_ones + OR = { + ai = no + society_rank = { + society = the_cold_ones + rank == 2 + } + society_rank = { + society = the_cold_ones + rank == 3 + } + } + } + potential = { + OR = { + FROM = { ai = no } + ai = no + } + OR = { + FROM = { ai = yes } # Only checks realm, so by definition in range + is_within_diplo_range = FROM + } + is_adult = yes + prisoner = no + NOT = { trait = incapable } + is_in_society = no + + #AI cannot invite other AIs when society is full + NAND = { + ai = yes + FROM = { ai = yes } + NOT = { can_join_society = the_cold_ones } + } + + #Blocks so AI recruits sensible people (who might say no) + OR = { + FROM = { ai = no } + is_friend = FROM + is_lover = FROM + is_close_relative = FROM + trait = trusting + has_impious_trait_trigger = yes + trait = drunkard + trait = possessed + trait = lunatic + interested_in_society = the_cold_ones + } + + NAND = { + FROM = { ai = yes } + trait = zealous + } + } + allow = { + OR = { + religion = baltic_pagan + religion = baltic_pagan_reformed + religion = slavic_pagan + religion = slavic_pagan_reformed + religion = finnish_pagan + religion = finnish_pagan_reformed + } + is_inaccessible_trigger = no + custom_tooltip = { + text = cold_ones_recruit_block_tooltip + OR = { + NOT = { has_character_flag = cold_ones_attempted_recruitment } + interested_in_society = the_cold_ones + } + NOT = { has_character_flag = being_recruited_by_the_cold_ones } + } + has_cold_ones_prerequisites = yes + FROM = { + is_inaccessible_trigger = no + custom_tooltip = { + text = recruit_delay_timer_tooltip + NOT = { has_character_modifier = recruitment_delay_timer } + } + } + } + effect = { + set_character_flag = cold_ones_attempted_recruitment + set_character_flag = being_recruited_by_the_cold_ones + FROM = { + save_event_target_as = satanists_recruiter + } + hidden_effect = { + character_event = { id = MNM.7001 days = 3 } # recruitment chain + character_event = { id = MNM.7030 days = 365 } # sends delayed back up, in case recruitment fails somehow + FROM = { + if = { + limit = { ai = yes } + add_character_modifier = { + name = recruitment_timer + days = 730 + hidden = yes + } + } + add_character_modifier = { + name = recruitment_delay_timer + days = 90 + hidden = yes + } + } + } + } + revoke_allowed = { + always = no + } + ai_will_do = { + factor = 1 + modifier = { + factor = 0.2 # slow down + FROM = { + society = { num_of_society_members > 20 } + } + } + modifier = { + factor = 10 # recruit interested parties + interested_in_society = the_cold_ones + } + modifier = { + factor = 0 # don't recruit characters interested in something else + NOT = { interested_in_society = the_cold_ones } + is_interested_in_any_society = yes + } + } + } + + #Action: plaguebringers_recruit + plaguebringers_recruit = { + is_in_society = yes + + ai_target_filter = realm + ai_check_interval = 24 + + from_potential = { + is_adult = yes + prisoner = no + NOT = { trait = incapable } + NOT = { has_character_modifier = recruitment_timer } + society_member_of = the_plaguebringers + OR = { + ai = no + society_rank = { + society = the_plaguebringers + rank == 2 + } + society_rank = { + society = the_plaguebringers + rank == 3 + } + } + } + potential = { + OR = { + FROM = { ai = no } + ai = no + } + OR = { + FROM = { ai = yes } # Only checks realm, so by definition in range + is_within_diplo_range = FROM + } + is_adult = yes + prisoner = no + NOT = { trait = incapable } + is_in_society = no + + #AI cannot invite other AIs when society is full + NAND = { + ai = yes + FROM = { ai = yes } + NOT = { can_join_society = the_plaguebringers } + } + + #Blocks so AI recruits sensible people (who might say no) + OR = { + FROM = { ai = no } + is_friend = FROM + is_lover = FROM + is_close_relative = FROM + trait = trusting + has_impious_trait_trigger = yes + trait = drunkard + trait = possessed + trait = lunatic + interested_in_society = the_plaguebringers + } + + NAND = { + FROM = { ai = yes } + trait = zealous + } + } + allow = { + OR = { + religion = tengri_pagan + religion = tengri_pagan_reformed + } + is_inaccessible_trigger = no + custom_tooltip = { + text = plaguebringers_recruit_block_tooltip + OR = { + NOT = { has_character_flag = plaguebringers_attempted_recruitment } + interested_in_society = the_plaguebringers + } + NOT = { has_character_flag = being_recruited_by_the_plaguebringers } + } + has_plaguebringers_prerequisites = yes + FROM = { + is_inaccessible_trigger = no + custom_tooltip = { + text = recruit_delay_timer_tooltip + NOT = { has_character_modifier = recruitment_delay_timer } + } + } + } + effect = { + set_character_flag = plaguebringers_attempted_recruitment + set_character_flag = being_recruited_by_the_plaguebringers + FROM = { + save_event_target_as = satanists_recruiter + } + hidden_effect = { + character_event = { id = MNM.7001 days = 3 } # recruitment chain + character_event = { id = MNM.7030 days = 365 } # sends delayed back up, in case recruitment fails somehow + FROM = { + if = { + limit = { ai = yes } + add_character_modifier = { + name = recruitment_timer + days = 730 + hidden = yes + } + } + add_character_modifier = { + name = recruitment_delay_timer + days = 90 + hidden = yes + } + } + } + } + revoke_allowed = { + always = no + } + ai_will_do = { + factor = 1 + modifier = { + factor = 0.2 # slow down + FROM = { + society = { num_of_society_members > 20 } + } + } + modifier = { + factor = 10 # recruit interested parties + interested_in_society = the_plaguebringers + } + modifier = { + factor = 0 # don't recruit characters interested in something else + NOT = { interested_in_society = the_plaguebringers } + is_interested_in_any_society = yes + } + } + } + #Action: vodouns recruit + vodouns_recruit = { + is_in_society = yes + + ai_target_filter = realm + ai_check_interval = 24 + + from_potential = { + is_adult = yes + prisoner = no + NOT = { trait = incapable } + NOT = { has_character_modifier = recruitment_timer } + society_member_of = the_vodouns + OR = { + ai = no + society_rank = { + society = the_vodouns + rank == 2 + } + society_rank = { + society = the_vodouns + rank == 3 + } + } + } + potential = { + OR = { + FROM = { ai = no } + ai = no + } + OR = { + FROM = { ai = yes } # Only checks realm, so by definition in range + is_within_diplo_range = FROM + } + is_adult = yes + prisoner = no + NOT = { trait = incapable } + is_in_society = no + + #AI cannot invite other AIs when society is full + NAND = { + ai = yes + FROM = { ai = yes } + NOT = { can_join_society = the_vodouns } + } + + #Blocks so AI recruits sensible people (who might say no) + OR = { + FROM = { ai = no } + is_friend = FROM + is_lover = FROM + is_close_relative = FROM + trait = trusting + has_impious_trait_trigger = yes + trait = drunkard + trait = possessed + trait = lunatic + interested_in_society = the_vodouns + } + + NAND = { + FROM = { ai = yes } + trait = zealous + } + } + allow = { + OR = { + religion = west_african_pagan + religion = west_african_pagan_reformed + } + is_inaccessible_trigger = no + custom_tooltip = { + text = vodouns_recruit_block_tooltip + OR = { + NOT = { has_character_flag = vodouns_attempted_recruitment } + interested_in_society = the_vodouns + } + NOT = { has_character_flag = being_recruited_by_the_vodouns } + } + has_vodouns_prerequisites = yes + FROM = { + is_inaccessible_trigger = no + custom_tooltip = { + text = recruit_delay_timer_tooltip + NOT = { has_character_modifier = recruitment_delay_timer } + } + } + } + effect = { + set_character_flag = vodouns_attempted_recruitment + set_character_flag = being_recruited_by_the_vodouns + FROM = { + save_event_target_as = satanists_recruiter + } + hidden_effect = { + character_event = { id = MNM.7001 days = 3 } # recruitment chain + character_event = { id = MNM.7030 days = 365 } # sends delayed back up, in case recruitment fails somehow + FROM = { + if = { + limit = { ai = yes } + add_character_modifier = { + name = recruitment_timer + days = 730 + hidden = yes + } + } + add_character_modifier = { + name = recruitment_delay_timer + days = 90 + hidden = yes + } + } + } + } + revoke_allowed = { + always = no + } + ai_will_do = { + factor = 1 + modifier = { + factor = 0.2 # slow down + FROM = { + society = { num_of_society_members > 20 } + } + } + modifier = { + factor = 10 # recruit interested parties + interested_in_society = the_vodouns + } + modifier = { + factor = 0 # don't recruit characters interested in something else + NOT = { interested_in_society = the_vodouns } + is_interested_in_any_society = yes + } + } + } + #Action: Bacchants_recruit + bacchants_recruit = { + is_in_society = yes + + ai_target_filter = realm + ai_check_interval = 24 + + from_potential = { + is_adult = yes + prisoner = no + NOT = { trait = incapable } + NOT = { has_character_modifier = recruitment_timer } + society_member_of = the_bacchants + OR = { + ai = no + society_rank = { + society = the_bacchants + rank == 2 + } + society_rank = { + society = the_bacchants + rank == 3 + } + } + } + potential = { + OR = { + FROM = { ai = no } + ai = no + } + OR = { + FROM = { ai = yes } # Only checks realm, so by definition in range + is_within_diplo_range = FROM + } + is_adult = yes + prisoner = no + NOT = { trait = incapable } + is_in_society = no + + #AI cannot invite other AIs when society is full + NAND = { + ai = yes + FROM = { ai = yes } + NOT = { can_join_society = the_bacchants } + } + + #Blocks so AI recruits sensible people (who might say no) + OR = { + FROM = { ai = no } + is_friend = FROM + is_lover = FROM + is_close_relative = FROM + trait = trusting + has_impious_trait_trigger = yes + trait = drunkard + trait = possessed + trait = lunatic + interested_in_society = the_bacchants + } + + NAND = { + FROM = { ai = yes } + trait = zealous + } + } + allow = { + is_inaccessible_trigger = no + custom_tooltip = { + text = bacchants_recruit_block_tooltip + OR = { + NOT = { has_character_flag = bacchants_attempted_recruitment } + interested_in_society = the_bacchants + } + NOT = { has_character_flag = being_recruited_by_the_bacchants } + } + has_bacchants_prerequisites = yes + FROM = { + is_inaccessible_trigger = no + custom_tooltip = { + text = recruit_delay_timer_tooltip + NOT = { has_character_modifier = recruitment_delay_timer } + } + } + } + effect = { + set_character_flag = bacchants_attempted_recruitment + set_character_flag = being_recruited_by_the_bacchants + FROM = { + save_event_target_as = satanists_recruiter + } + hidden_effect = { + character_event = { id = MNM.7001 days = 3 } # recruitment chain + character_event = { id = MNM.7030 days = 365 } # sends delayed back up, in case recruitment fails somehow + FROM = { + if = { + limit = { ai = yes } + add_character_modifier = { + name = recruitment_timer + days = 730 + hidden = yes + } + } + add_character_modifier = { + name = recruitment_delay_timer + days = 90 + hidden = yes + } + } + } + } + revoke_allowed = { + always = no + } + ai_will_do = { + factor = 1 + modifier = { + factor = 0.2 # slow down + FROM = { + society = { num_of_society_members > 20 } + } + } + modifier = { + factor = 10 # recruit interested parties + interested_in_society = the_bacchants + } + modifier = { + factor = 0 # don't recruit characters interested in something else + NOT = { interested_in_society = the_bacchants } + is_interested_in_any_society = yes + } + } + } + + #Action: Sacrifice prisoner + prisoner_dark_sacrifice = { + only_playable = yes + + filter = court + ai_target_filter = court + ai_check_interval = 12 + + from_potential = { + has_dlc = "Mystics" + is_playable = yes + is_adult = yes + prisoner = no + NOT = { trait = incapable } + is_devil_worshiper_trigger = yes + } + + potential = { + host = { character = FROM } + NOT = { has_character_flag = demon_child_non_pagan } + prisoner = yes + } + + allow = { + NOT = { diplomatic_immunity = yes } + } + + ai_will_do = { + factor = 1 + modifier = { + factor = 0.01 + NOR = { + trait = dwarf + is_priest = yes + is_ascetic_trigger = yes + is_virgin_trigger = yes + is_landed = yes + } + } + } + + effect = { + death = { + death_reason = death_missing + } + hidden_effect = { character_event = { id = MNM.7506 } } + FROM = { + show_scope_change = no + increase_visibility_minor_effect = yes + minor_soul_corruption_effect = yes + hidden_effect = { murder_bloodline_check_effect = yes } + } + #Head of Religion + if = { + limit = { + controls_religion = yes + } + hidden_effect = { FROM = { character_event = { id = MNM.7500 } } } + #Check quests to resolve, add extra currency and play special sound effect + if = { #Virgin + limit = { + is_virgin_trigger = yes + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_virgin } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_virgin + add_society_currency_major_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_virgin_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_virgin_male } } + } + break = yes + } + if = { #Priestly + limit = { + OR = { + is_priest = yes + is_ascetic_trigger = yes + } + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_holy_person } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_holy_person + add_society_currency_major_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_holy_woman } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_holy_man } } + } + break = yes + } + if = { #Dwarf + limit = { + trait = dwarf + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_dwarf } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_dwarf + add_society_currency_major_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_dwarf_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_dwarf_male } } + } + break = yes + } + if = { #Ruler + limit = { + is_landed = yes + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_ruler } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_ruler + add_society_currency_major_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_male } } + } + break = yes + } + #No quest so add default + FROM = { + show_scope_change = no + add_society_currency_medium_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_male } } + } + break = yes + } + #Holy Man + if = { + limit = { + OR = { + is_priest = yes + is_ascetic_trigger = yes + } + } + hidden_effect = { FROM = { character_event = { id = MNM.7501 } } } + #Check quests to resolve, add extra currency and play special sound effect + if = { #Virgin + limit = { + is_virgin_trigger = yes + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_virgin } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_virgin + add_society_currency_medium_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_virgin_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_virgin_male } } + } + break = yes + } + if = { #Priestly + limit = { + OR = { + is_priest = yes + is_ascetic_trigger = yes + } + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_holy_person } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_holy_person + add_society_currency_medium_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_holy_woman } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_holy_man } } + } + break = yes + } + if = { #Dwarf + limit = { + trait = dwarf + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_dwarf } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_dwarf + add_society_currency_medium_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_dwarf_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_dwarf_male } } + } + break = yes + } + if = { #Ruler + limit = { + is_landed = yes + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_ruler } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_ruler + add_society_currency_medium_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_male } } + } + break = yes + } + #No quest so add default + FROM = { + show_scope_change = no + add_society_currency_minor_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_male } } + } + break = yes + } + #Dwarf + if = { + limit = { + trait = dwarf + } + hidden_effect = { FROM = { character_event = { id = MNM.7502 } } } + #Check quests to resolve, add extra currency and play special sound effect + if = { #Virgin + limit = { + is_virgin_trigger = yes + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_virgin } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_virgin + add_society_currency_medium_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_virgin_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_virgin_male } } + } + break = yes + } + if = { #Priestly + limit = { + OR = { + is_priest = yes + is_ascetic_trigger = yes + } + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_holy_person } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_holy_person + add_society_currency_medium_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_holy_woman } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_holy_man } } + } + break = yes + } + if = { #Dwarf + limit = { + trait = dwarf + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_dwarf } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_dwarf + add_society_currency_medium_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_dwarf_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_dwarf_male } } + } + break = yes + } + if = { #Ruler + limit = { + is_landed = yes + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_ruler } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_ruler + add_society_currency_medium_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_male } } + } + break = yes + } + #No quest so add default + FROM = { + show_scope_change = no + add_society_currency_minor_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_male } } + } + break = yes + } + #Child + if = { + limit = { + NOT = { age = 16 } + } + hidden_effect = { FROM = { character_event = { id = MNM.7503 } } } + #Check quests to resolve, add extra currency and play special sound effect + if = { #Virgin + limit = { + is_virgin_trigger = yes + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_virgin } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_virgin + add_society_currency_minor_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_virgin_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_virgin_male } } + } + break = yes + } + if = { #Priestly + limit = { + OR = { + is_priest = yes + is_ascetic_trigger = yes + } + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_holy_person } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_holy_person + add_society_currency_minor_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_holy_woman } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_holy_man } } + } + break = yes + } + if = { #Dwarf + limit = { + trait = dwarf + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_dwarf } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_dwarf + add_society_currency_minor_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_dwarf_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_dwarf_male } } + } + break = yes + } + if = { #Ruler + limit = { + is_landed = yes + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_ruler } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_ruler + add_society_currency_minor_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_male } } + } + break = yes + } + #No quest so add default + FROM = { + show_scope_change = no + add_society_currency_trivial_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_male } } + } + break = yes + } + #Virgin + if = { + limit = { + is_virgin_trigger = yes + } + hidden_effect = { FROM = { character_event = { id = MNM.7504 } } } + #Check quests to resolve, add extra currency and play special sound effect + if = { #Virgin + limit = { + is_virgin_trigger = yes + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_virgin } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_virgin + add_society_currency_minor_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_virgin_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_virgin_male } } + } + break = yes + } + if = { #Priestly + limit = { + OR = { + is_priest = yes + is_ascetic_trigger = yes + } + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_holy_person } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_holy_person + add_society_currency_minor_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_holy_woman } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_holy_man } } + } + break = yes + } + if = { #Dwarf + limit = { + trait = dwarf + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_dwarf } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_dwarf + add_society_currency_minor_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_dwarf_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_dwarf_male } } + } + break = yes + } + if = { #Ruler + limit = { + is_landed = yes + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_ruler } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_ruler + add_society_currency_minor_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_male } } + } + break = yes + } + #No quest so add default + FROM = { + show_scope_change = no + add_society_currency_trivial_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_male } } + } + break = yes + } + #Regular character + hidden_effect = { FROM = { character_event = { id = MNM.7505 } } } + #Check quests to resolve, add extra currency and play special sound effect + if = { #Virgin + limit = { + is_virgin_trigger = yes + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_virgin } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_virgin + add_society_currency_minor_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_virgin_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_virgin_male } } + } + break = yes + } + if = { #Priestly + limit = { + OR = { + is_priest = yes + is_ascetic_trigger = yes + } + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_holy_person } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_holy_person + add_society_currency_minor_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_holy_woman } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_holy_man } } + } + break = yes + } + if = { #Dwarf + limit = { + trait = dwarf + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_dwarf } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_dwarf + add_society_currency_minor_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_dwarf_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_dwarf_male } } + } + break = yes + } + if = { #Ruler + limit = { + is_landed = yes + FROM = { has_quest = quest_the_devil_worshipers_sacrifice_ruler } + } + FROM = { + show_scope_change = no + clr_quest = quest_the_devil_worshipers_sacrifice_ruler + add_society_currency_minor_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_male } } + } + break = yes + } + #No quest so add default + FROM = { + show_scope_change = no + add_society_currency_trivial_effect = yes + } + trigger_switch = { + on_trigger = is_female + yes = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_female } } + no = { FROM = { sound_effect = devil_worshippers_sacrifice_ruler_male } } + } + } + } + + #Action: Demonic impregnation + DW_demonic_impregnation = { + only_playable = yes + + filter = court_including_me + ai_target_filter = court_including_me + ai_check_interval = 120 + + from_potential = { + has_dlc = "Mystics" + is_playable = yes + is_adult = yes + prisoner = no + NOT = { trait = incapable } + is_devil_worshiper_trigger = yes + OR = { + AND = { + society_rank >= 3 + has_quest = quest_the_devil_worshipers_demonic_impregnation + } + society_rank >= 4 + } + } + + potential = { + host = { character = FROM } + is_female = yes + is_pregnant = no + age = 16 + OR = { + NOT = { age = 45 } + immortal = yes + } + OR = { + character = FROM + FROM = { has_quest = quest_the_devil_worshipers_demonic_impregnation } + } + } + + allow = { + FROM = { has_society_currency_major_trigger = yes } + is_female = yes + is_pregnant = no + is_devil_worshiper_trigger = yes + } + + ai_will_do = { + factor = 1 + modifier = { + factor = 0.01 #Slow down + } + modifier = { + factor = 100 + has_quest = quest_the_devil_worshipers_demonic_impregnation + } + } + + effect = { + FROM = { + increase_visibility_effect = yes + } + detract_society_currency_major_effect = yes + hidden_effect = { #ROOT is target, FROM is doer + FROM = { + character_event = { id = MNM.7507 } + } + } + } + } + + #Action: Prolong Life/Absorb Lifeforce + DW_prolong_life = { + only_playable = yes + + filter = dynasty + ai_target_filter = dynasty + ai_check_interval = 12 + + from_potential = { + has_dlc = "Mystics" + is_playable = yes + is_adult = yes + prisoner = no + NOT = { trait = incapable } + is_devil_worshiper_trigger = yes + society_rank == 4 + } + + potential = { + host = { character = FROM } + is_child_of = FROM + NOT = { age = 16 } + NOT = { has_character_flag = demon_child_non_pagan } + } + + allow = { + FROM = { has_society_currency_major_trigger = yes } + } + + ai_will_do = { + factor = 1 + modifier = { + factor = 0.1 #Slow down + } + modifier = { + factor = 10 + NOR = { + has_character_modifier = stolen_life_minor + has_character_modifier = stolen_life_medium + has_character_modifier = stolen_life_major + } + } + modifier = { + factor = 0 + has_character_modifier = stolen_life_major + } + } + + effect = { + FROM = { increase_visibility_effect = yes } + FROM = { detract_society_currency_major_effect = yes } + hidden_effect = { #ROOT is target, FROM is doer + FROM = { + character_event = { id = MNM.7509 } + } + } + } + } + + #Action: corrupt a priest + devil_worshipers_corrupt_priest = { + only_playable = yes + + ai_target_filter = realm + ai_check_interval = 12 + + from_potential = { + is_devil_worshiper_trigger = yes + society_rank > 1 + } + + potential = { + ai = yes + is_within_diplo_range = FROM + religion = FROM + OR = { + AND = { + same_realm = FROM + OR = { + AND = { + is_landed = yes + capital_holding = { holding_type = TEMPLE } + } + AND = { + tier = baron + liege = { + any_demesne_province = { + any_province_holding = { + owner = { character = ROOT } + holding_type = TEMPLE + } + } + } + } + } + } + FROM = { + has_quest = quest_devil_worshipers_corrupt_priest + quest_target = { character = ROOT } + } + } + + OR = { + is_inaccessible_trigger = no + AND = { + FROM = { + has_character_modifier = in_seclusion + at_location = ROOT + } + ROOT = { + has_character_modifier = in_seclusion + } + } + } + } + + allow = { + FROM = { + prisoner = no + NOT = { trait = incapable } + OR = { + has_society_currency_tiny_trigger = yes + custom_tooltip = { + text = corrupt_priest_has_quest + has_quest = quest_devil_worshipers_corrupt_priest + } + } + + custom_tooltip = { + text = is_accessible + OR = { + is_inaccessible_trigger = no + AND = { + FROM = { + has_character_modifier = in_seclusion + at_location = ROOT + } + ROOT = { + has_character_modifier = in_seclusion + } + } + } + } + OR = { + custom_tooltip = { + text = corrupt_priest_not_recently_attempted + ROOT = { + NOR = { + has_character_flag = attempted_corrupt_priest + has_opinion_modifier = { who = FROM modifier = opinion_successful_corruption } + has_opinion_modifier = { who = FROM modifier = opinion_failed_corruption } + } + } + } + custom_tooltip = { + text = corrupt_priest_has_quest + has_quest = quest_devil_worshipers_corrupt_priest + } + } + } + ROOT = { + prisoner = no + + NOT = { trait = incapable } + + is_inaccessible_trigger = no + } + } + + effect = { + if = { + limit = { + FROM = { + NOT = { + has_quest = quest_devil_worshipers_corrupt_priest + } + } + } + FROM = { + detract_society_currency_tiny_effect = yes + } + } + if = { + limit = { + NOT = { + is_quest_target_of = FROM + } + } + FROM = { + increase_visibility_effect = yes + } + } + if = { + limit = { + is_quest_target_of = FROM + } + FROM = { + increase_visibility_minor_effect = yes + } + } + custom_tooltip = { + text = corrupt_priest_effect_TOOLTIP + } + ROOT = { + set_character_flag = attempted_corrupt_priest + hidden_effect = { + character_event = { id = MNM.7825 days = 3 random = 7 } + } + } + } + + ai_will_do = { + factor = 1 + modifier = { + factor = 0.1 # slow down + } + modifier = { + factor = 0.5 + is_benevolent_trigger = yes + } + modifier = { + factor = 2 + is_evil_trigger = yes + } + modifier = { + factor = 50 + FROM = { is_quest_target_of = ROOT } + } + modifier = { + factor = 0.5 + NOT = { + FROM = { + any_vassal = { character = ROOT } + } + } + } + } + } + + devil_worshipers_induction = { + is_in_society = yes + filter = court + ai_target_filter = court + ai_check_interval = 12 + + from_potential = { + is_devil_worshiper_trigger = yes + society_rank >= 2 + NOR = { + is_inaccessible_trigger = yes + prisoner = yes + } + OR = { + ai = no + NOR = { + AND = { + society_member_of = the_satanists + is_society_rank_full = { + society = the_satanists + rank = 1 + } + } + AND = { + society_member_of = the_cold_ones + is_society_rank_full = { + society = the_cold_ones + rank = 1 + } + } + AND = { + society_member_of = the_plaguebringers + is_society_rank_full = { + society = the_plaguebringers + rank = 1 + } + } + AND = { + society_member_of = the_cult_of_kali + is_society_rank_full = { + society = the_cult_of_kali + rank = 1 + } + } + AND = { + society_member_of = the_trollcrafters + is_society_rank_full = { + society = the_trollcrafters + rank = 1 + } + } + AND = { + society_member_of = the_vodouns + is_society_rank_full = { + society = the_vodouns + rank = 1 + } + } + AND = { + society_member_of = the_bacchants + is_society_rank_full = { + society = the_bacchants + rank = 1 + } + } + } + } + } + potential = { + ai = yes + prisoner = yes + age = 16 + NOT = { + trait = incapable + } + OR = { + AND = { + FROM = { + society_member_of = the_satanists + } + OR = { + religion = melitele + religion = kreve + religion = lebioda + religion = eternal_fire + religion = solar + } + } + AND = { + FROM = { + society_member_of = the_plaguebringers + } + OR = { + religion = tengri_pagan + religion = tengri_pagan_reformed + secret_religion = tengri_pagan + secret_religion = tengri_pagan_reformed + } + } + AND = { + FROM = { + society_member_of = the_cult_of_kali + } + OR = { + religion = hindu + secret_religion = hindu + } + } + AND = { + FROM = { + society_member_of = the_trollcrafters + } + OR = { + religion = norse_pagan + religion = norse_pagan_reformed + secret_religion = norse_pagan + secret_religion = norse_pagan_reformed + } + } + AND = { + FROM = { + society_member_of = the_vodouns + } + OR = { + religion = west_african_pagan + religion = west_african_pagan_reformed + secret_religion = west_african_pagan + secret_religion = west_african_pagan_reformed + } + } + AND = { + FROM = { + society_member_of = the_bacchants + } + OR = { + religion = hellenic_pagan + religion = hellenic_pagan_reformed + secret_religion = hellenic_pagan + secret_religion = hellenic_pagan_reformed + } + } + } + } + + allow = { + age = 16 + FROM = { society_currency >= 25 } + NOT = { same_society_as = FROM } + NOT = { trait = zealous } + NOT = { has_character_modifier = recent_induction_attempt } + } + effect = { + FROM = { + increase_visibility_minor_effect = yes + change_society_currency = -25 + character_event = { + id = MNM.7121 + days = 0 + } + } + } + + ai_will_do = { + factor = 1 + modifier = { + is_rival = FROM + factor = 0 + } + modifier = { + NOT = { dynasty = FROM } + is_ruler = no + factor = 0 + } + } + } + + search_for_artifact = { + only_playable = yes + + ai_target_filter = court + ai_check_interval = 12 + + from_potential = { + is_ruler = yes + prisoner = no + is_inaccessible_trigger = no + OR = { + has_character_modifier = relic_rumor_major + has_character_modifier = relic_rumor_medium + has_character_modifier = relic_rumor_minor + } + OR = { + ai = no + NOT = { any_courtier_or_vassal = { has_character_flag = relic_hunter } } + } + } + + potential = { + is_councillor = yes + liege = { character = FROM } + NOT = { trait = incapable } + prisoner = no + is_inaccessible_trigger = no + NOT = { has_character_flag = relic_hunter } + } + + allow = { + custom_tooltip = { + text = search_for_artifact_allow_tt + is_councillor = yes + liege = { character = FROM } + } + } + + effect = { + if = { + limit = { FROM = { any_courtier_or_vassal = { has_character_flag = relic_hunter } } } + custom_tooltip = { + text = search_for_artifact_effect_replace_tt + FROM = { + random_courtier_or_vassal = { + limit = { has_character_flag = relic_hunter } + clr_character_flag = relic_hunter + } + } + } + } + custom_tooltip = { + text = search_for_artifact_effect_tt + set_character_flag = relic_hunter + save_event_target_as = relic_hunter + FROM = { save_event_target_as = relic_ruler } + character_event = { id = MNM.9007 days = 30 } # The looping evaluation for progress increase/decrease begins... + } + if = { + limit = { FROM = { check_variable = { which = relic_score value = 1 } } } + custom_tooltip = { + text = search_for_artifact_effect_progress_tt + hidden_effect = { FROM = { multiply_variable = { which = relic_score value = 0.75 } } } + } + } + FROM = { add_artifact_search_payment_effect = yes } + custom_tooltip = { + text = outcome_will_depend_on_roots_skill_tt + } + } + + revoke_allowed = { always = no } + + ai_will_do = { + factor = 0.01 + modifier = { + OR = { + diplomacy = 14 + martial = 14 + stewardship = 14 + intrigue = 14 + learning = 14 + } + factor = 10 + } + modifier = { + OR = { + is_friend = FROM + reverse_opinion = { who = FROM value = 30 } + } + factor = 10 + } + modifier = { + FROM = { NOT = { wealth = 50 } } + factor = 0 + } + modifier = { + ai = no + factor = 0 + } + } + } + + stop_artifact_search = { + only_playable = yes + + ai_target_filter = court + ai_check_interval = 36 + + from_potential = { + is_ruler = yes + prisoner = no + OR = { + has_character_modifier = relic_rumor_major + has_character_modifier = relic_rumor_medium + has_character_modifier = relic_rumor_minor + } + is_inaccessible_trigger = no + OR = { + has_character_modifier = pays_for_artifact_hunt_minor + has_character_modifier = pays_for_artifact_hunt_medium + has_character_modifier = pays_for_artifact_hunt_major + } + } + + potential = { + has_character_flag = relic_hunter + } + + effect = { + custom_tooltip = { + text = stop_artifact_search_effect_tt + hidden_effect = { + FROM = { + if = { + limit = { has_character_modifier = pays_for_artifact_hunt_minor } + remove_character_modifier = pays_for_artifact_hunt_minor + } + if = { + limit = { has_character_modifier = pays_for_artifact_hunt_medium } + remove_character_modifier = pays_for_artifact_hunt_medium + } + if = { + limit = { has_character_modifier = pays_for_artifact_hunt_major } + remove_character_modifier = pays_for_artifact_hunt_major + } + } + } + hidden_effect = { + clr_character_flag = relic_hunter + } + } + } + + revoke_allowed = { always = no } + + ai_will_do = { + factor = 0.3 + modifier = { + factor = 0 + wealth = -100 + } + modifier = { + factor = 0 + check_variable = { which = relic_score value = -2 } + } + } + } + + decision_abduct = { + filter = all + ai_target_filter = realm + + only_playable = yes + ai = no + + from_potential = { + OR = { + is_devil_worshiper_trigger = yes + society_member_of = the_assassins + } + NOT = { trait = incapable } + prisoner = no + NOT = { has_any_opinion_modifier = opinion_abducting } + } + + potential = { + ai = yes + NOT = { character = FROM } + is_patrician = no + OR = { + lower_tier_than = DUKE + is_landed = no + } + OR = { + father_even_if_dead = { + lower_tier_than = DUKE + is_patrician = no + ai = yes + } + NOT = { + father = { + always = yes + } + } + } + OR = { + mother_even_if_dead = { + lower_tier_than = DUKE + is_patrician = no + ai = yes + } + NOT = { + mother = { + always = yes + } + } + } + OR = { + spouse = { + lower_tier_than = DUKE + is_patrician = no + ai = yes + } + is_married = no + } + } + + allow = { + in_revolt = no + NOT = { war_with = FROM } + NOT = { same_society_as = FROM } + prisoner = no + OR = { + AND = { + is_landed = no + FROM = { + has_society_currency_tiny_trigger = yes + } + } + AND = { + is_landed = yes + NOT = { + higher_tier_than = BARON + } + FROM = { + has_society_currency_minor_trigger = yes + } + } + AND = { + higher_tier_than = BARON + FROM = { + has_society_currency_medium_trigger = yes + } + } + } + is_within_diplo_range = FROM + } + + effect = { + if = { + limit = { + NOT = { + is_ruler = yes + } + } + FROM = { + detract_society_currency_tiny_effect = yes + } + } + if = { + limit = { + is_ruler = yes + lower_tier_than = COUNT + } + FROM = { + detract_society_currency_minor_effect = yes + } + } + if = { + limit = { + higher_tier_than = BARON + } + FROM = { + detract_society_currency_medium_effect = yes + } + } + hidden_tooltip = { + FROM = { + any_opinion_modifier_target = { + limit = { + reverse_has_opinion_modifier = { + who = PREV + modifier = opinion_abducting + } + } + reverse_remove_opinion = { + who = PREV + modifier = opinion_abducting + } + } + opinion = { + who = ROOT + modifier = opinion_abducting + months = 12000 + } + character_event = { id = MNM.20070 days = 1 } + } + } + } + + revoke_allowed = { + always = no + } + ai_will_do = { + factor = 0 # 1 = 100% chance every month (for each allowed target!) + } + } + + stop_abduct_decision = { + filter = self + ai_target_filter = self + ai = no + + potential = { + OR = { + is_devil_worshiper_trigger = yes + society_member_of = the_assassins + } + has_any_opinion_modifier = opinion_abducting + } + + effect = { + random_opinion_modifier_target = { + limit = { + ROOT = { + has_opinion_modifier = { + who = PREV + modifier = opinion_abducting + } + } + } + save_event_target_as = target_abduction + ROOT = { character_event = { id = MNM.20100 tooltip = stop_abduct_decision_tt } } + } + } + + revoke_allowed = { + always = no + } + + ai_will_do = { + factor = 0 + } + } + + stop_abduct_decision_target = { + filter = all + ai_target_filter = realm + ai = no + + from_potential = { + OR = { + is_devil_worshiper_trigger = yes + society_member_of = the_assassins + } + has_any_opinion_modifier = opinion_abducting + } + + potential = { + FROM = { + has_opinion_modifier = { + who = ROOT + modifier = opinion_abducting + } + } + } + + effect = { + save_event_target_as = target_abduction + hidden_tooltip = { + FROM = { character_event = { id = MNM.20100 } } + } + } + + revoke_allowed = { + always = no + } + + ai_will_do = { + factor = 0 + } + } + +} + +decisions = { + employ_a_smith = { + only_playable = yes + ai_check_interval = 36 + potential = { + NOT = { government = order_government } + OR = { + has_dlc = "Mystics" + has_dlc = "Jade Dragon" + } + OR = { + mercenary = no + ai = no + } + age = 16 + is_incapable = no + OR = { + ai = no + higher_tier_than = COUNT + } + is_landed = yes + is_lowborn = no + + # Block player from action if they have already gotten all of the artifacts which they can obtain from this action + NAND = { + have_all_armorsmith_artifacts_all_flags_trigger = yes + have_all_weaponsmith_artifacts_all_flags_trigger = yes + have_duplicate_goldsmith_artifacts_flag_okay_trigger = yes + have_duplicate_goldsmith_artifacts_flag_good_trigger = yes + have_duplicate_goldsmith_artifacts_flag_expensive_trigger = yes + have_duplicate_goldsmith_artifacts_flag_amazing_trigger = yes + } + } + allow = { + hidden_trigger = { + OR = { + ai = no + wealth = 500 + } + } + is_inaccessible_trigger = no + + custom_tooltip = { + text = employ_a_smith_cooldown_tt + hidden_trigger = { + NOT = { + has_character_modifier = employ_a_smith_cd + } + } + } + } + effect = { + custom_tooltip = { + text = employ_a_smith_tt + hidden_effect = { + character_event = { id = MNM.9130 } + add_character_modifier = { + name = employ_a_smith_cd + hidden = yes + years = 2 + } + } + } + } + revoke_allowed = { + always = no + } + ai_will_do = { + factor = 1 + modifier = { + factor = 0.5 + NOR = { + tier = KING + tier = EMPEROR + } + } + modifier = { + factor = 0.5 + trait = greedy + } + modifier = { + factor = 2 + trait = ambitious + } + modifier = { + factor = 0.1 + trait = content + } + modifier = { + factor = 0 + any_artifact = { has_artifact_flag = combat_weapon } + any_artifact = { has_artifact_flag = armor_set } + any_artifact = { has_artifact_flag = crown_jewel } + } + } + } +} \ No newline at end of file diff --git a/MOD/Witcher/events/HF_warrior_lodge_child_events.txt b/MOD/Witcher/events/HF_warrior_lodge_child_events.txt new file mode 100644 index 000000000..48e3f7465 --- /dev/null +++ b/MOD/Witcher/events/HF_warrior_lodge_child_events.txt @@ -0,0 +1,2022 @@ +# Written by Flavio + +namespace = HF +############################################# + +#Fired after inducting a child into a Warrior Lodge. + +############################################# + + # Child starts focusing on combat training # + +############################################# +#Hidden random list of events for child. +character_event = { + id = HF.25400 + hide_window = yes + + is_triggered_only = yes + + trigger = { + has_dlc = "Holy Fury" + NOT = { age = 20 } + NOT = { trait = incapable } + society_member_of = event_target:warrior_lodge_to_join + event_target:recruiting_parent = { + same_society_as = ROOT #Events will keep firing as long as both parent and child are in the same society and capable. + NOT = { trait = incapable } + } + } + + immediate = { + #Child forsakes Learning studies for training. + #Child forsakes Stewardship studies for training. + #Child forsakes Diplomacy studies for training. + #Brawny for Shrewd switch. + #Brawny for Groomed switch. + #Hero wants to make child brave. + #Hero wants to strengthen feeble/sturdy child. + #Hero wants to train child. (duel exp). + + #First, check if child wanted to be a warrior in the first place. + + if = { + limit = { + NOR = { + has_education_martial_trigger = yes + has_lifestyle_martial_trigger = yes + trait = brave + trait = rowdy + has_focus = focus_ch_struggle + has_focus = focus_ed_martial + has_focus = focus_war + has_focus = focus_hunting + has_character_flag = flag_child_is_a_warrior #Only first time. + } + } + random = { + chance = 20 + modifier = { + factor = 0.75 + trait = wroth + } + modifier = { + factor = 0.75 + trait = haughty + } + modifier = { + factor = 1.5 + trait = slothful + } + modifier = { + factor = 1.5 + trait = indolent + } + modifier = { + factor = 1.5 + trait = fussy + } + modifier = { + factor = 1.75 + trait = timid + } + modifier = { + factor = 1.5 + trait = shy + } + modifier = { + factor = 2 + trait = craven + } + modifier = { + factor = 1.5 + trait = feeble + } + modifier = { + factor = 1.25 + trait = sturdy + } + modifier = { + factor = 0.5 + trait = robust + } + modifier = { + factor = 1.5 + trait = weak + } + modifier = { + factor = 0.5 + trait = strong + } + modifier = { + factor = 1.5 + NOT = { martial = 6 } + } + modifier = { + factor = 1.75 + NOT = { martial = 3 } + } + modifier = { + factor = 2 + is_female = yes + NOR = { + has_religion_feature = religion_matriarchal + has_religion_feature = religion_equal + has_religion_feature = religion_feature_bon + } + } + modifier = { + factor = 2 + is_female = no + has_religion_feature = religion_matriarchal + } + ROOT = { character_event = { id = HF.25425 days = 150 random = 150 } } #Child gets event first this time, just in case it's not an AI. + break = yes + } + } + set_character_flag = flag_child_is_a_warrior + random_list = { + 25 = { #Child forsakes Learning studies for training. + event_target:recruiting_parent = { character_event = { id = HF.25401 days = 250 random = 150 } } + } + 25 = { #Child forsakes Stewardship studies for training. + event_target:recruiting_parent = { character_event = { id = HF.25404 days = 250 random = 150 } } + } + 25 = { #Child forsakes Diplomacy studies for training. + event_target:recruiting_parent = { character_event = { id = HF.25407 days = 250 random = 150 } } + } + 15 = { #Brawny for Shrewd switch. + trigger = { NOR = { trait = robust trait = sturdy trait = feeble } } #Only if from average physical shape. + event_target:recruiting_parent = { character_event = { id = HF.25410 days = 250 random = 150 } } + } + 15 = { #Brawny for Groomed switch. + trigger = { NOT = { trait = robust trait = sturdy trait = feeble } } + event_target:recruiting_parent = { character_event = { id = HF.25413 days = 250 random = 150 } } + } + 15 = { #Hero wants to make child brave. + trigger = { + NOT = { trait = brave } + any_society_member = { #A potential hero teacher exists. + same_society_as = ROOT + NOT = { trait = incapable } + NOT = { trait = craven } + society_rank = 4 + NOT = { event_target:recruiting_parent = { character = PREV } } + NOR = { + character = ROOT + is_rival = ROOT + is_rival = event_target:recruiting_parent + } + } + } + if = { + limit = { + event_target:child_hero_mentor = { + is_alive = yes + same_society_as = ROOT + NOT = { trait = incapable } + NOT = { trait = craven } + society_rank = 4 + NOT = { event_target:recruiting_parent = { character = PREV } } + NOR = { + character = ROOT + is_rival = ROOT + is_rival = event_target:recruiting_parent + } + } + } + #If similar event already picked one in the past and he is still available, do nothing. + } + else = { #Otherwise save hero as target for training. + random_society_member = { #A potential hero teacher exists. + limit = { + same_society_as = ROOT + NOT = { trait = incapable } + NOT = { trait = craven } + society_rank = 4 + NOT = { event_target:recruiting_parent = { character = PREV } } + NOR = { + character = ROOT + is_rival = ROOT + is_rival = event_target:recruiting_parent + } + } + save_event_target_as = child_hero_mentor + } + } + event_target:recruiting_parent = { character_event = { id = HF.25416 days = 350 random = 250 } } + } + 15 = { #Hero wants to strengthen feeble/sturdy child. + trigger = { + OR = { + trait = sturdy + trait = feeble + } + any_society_member = { #A potential hero teacher exists. + same_society_as = ROOT + NOT = { trait = incapable } + society_rank = 4 + NOT = { event_target:recruiting_parent = { character = PREV } } + NOR = { + trait = feeble + trait = sturdy + character = ROOT + is_rival = ROOT + is_rival = event_target:recruiting_parent + } + } + } + if = { + limit = { + event_target:child_hero_mentor = { + is_alive = yes + same_society_as = ROOT + NOT = { trait = incapable } + society_rank = 4 + NOT = { event_target:recruiting_parent = { character = PREV } } + NOR = { + trait = feeble + trait = sturdy + character = ROOT + is_rival = ROOT + is_rival = event_target:recruiting_parent + } + } + } + #If similar event already picked one in the past and he is still available, do nothing. + } + else = { #Otherwise save hero as target for training. + random_society_member = { #A potential hero teacher exists. + limit = { + same_society_as = ROOT + NOT = { trait = incapable } + society_rank = 4 + NOT = { event_target:recruiting_parent = { character = PREV } } + NOR = { + trait = feeble + trait = sturdy + character = ROOT + is_rival = ROOT + is_rival = event_target:recruiting_parent + } + } + save_event_target_as = child_hero_mentor + } + } + event_target:recruiting_parent = { character_event = { id = HF.25418 days = 350 random = 250 } } + } + 5 = { #Hero wants to train child (duel exp) + trigger = { + any_society_member = { #A potential hero teacher exists. + same_society_as = ROOT + NOT = { trait = incapable } + society_rank = 4 + NOT = { event_target:recruiting_parent = { character = PREV } } + NOR = { + character = ROOT + is_rival = ROOT + is_rival = event_target:recruiting_parent + } + } + } + if = { + limit = { + event_target:child_hero_mentor = { + is_alive = yes + same_society_as = ROOT + NOT = { trait = incapable } + society_rank = 4 + NOT = { event_target:recruiting_parent = { character = PREV } } + NOR = { + character = ROOT + is_rival = ROOT + is_rival = event_target:recruiting_parent + } + } + } + #If similar event already picked one in the past and he is still available, do nothing. + } + else = { #Otherwise save hero as target for training. + random_society_member = { #A potential hero teacher exists. + limit = { + same_society_as = ROOT + NOT = { trait = incapable } + society_rank = 4 + NOT = { event_target:recruiting_parent = { character = PREV } } + NOR = { + character = ROOT + is_rival = ROOT + is_rival = event_target:recruiting_parent + } + } + save_event_target_as = child_hero_mentor + } + } + event_target:recruiting_parent = { character_event = { id = HF.25423 days = 150 random = 150 } } + } + } + } +} + +#Child forsakes Learning studies for training. +character_event = { + id = HF.25401 + title = EVTTITLEHF25400_CHILDS_TRAINING + desc = EVTDESCHF25401 + picture = GFX_evt_child_sword + border = GFX_event_normal_frame_war + hide_new = yes + portrait = FROM + + + trigger = { + has_dlc = "Holy Fury" + FROM = { + NOT = { age = 20 } + NOT = { trait = incapable } + society_member_of = event_target:warrior_lodge_to_join + same_society_as = ROOT + } + } + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25401 + tooltip = { + FROM = { + change_martial = 1 + change_learning = -2 + } + } + hidden_tooltip = { + FROM = { character_event = { id = HF.25402 } } + } + ai_chance = { factor = 100 } + } + option = { + name = EVTOPTBHF25401 + tooltip = { + FROM = { + if = { + limit = { trait = stressed } + random = { + chance = 15 + health = -1.0 + } + } + if = { + limit = { NOT = { trait = stressed } } + random = { + chance = 15 + add_trait = stressed + } + } + } + } + hidden_tooltip = { + FROM = { character_event = { id = HF.25403 } } + } + ai_chance = { factor = 10 } + } +} + +#Child loses Learning for Martial. +character_event = { + id = HF.25402 + title = EVTTITLEHF25400_MY_TRAINING + desc = EVTDESCHF25402 + picture = GFX_evt_child_sword + border = GFX_event_normal_frame_war + hide_new = yes + portrait = FROM + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25402 + change_martial = 1 + change_learning = -2 + } + after = { hidden_tooltip = { character_event = { id = HF.25400 } } } #Umbrella again. +} + +#Conflincted orders stress out child. +character_event = { + id = HF.25403 + title = EVTTITLEHF25400_MY_TRAINING + desc = EVTDESCHF25403 + picture = GFX_evt_child_sword + border = GFX_event_normal_frame_war + hide_new = yes + portrait = FROM + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25403 + if = { + limit = { trait = stressed } + random = { + chance = 15 + health = -1.0 + } + } + if = { + limit = { NOT = { trait = stressed } } + random = { + chance = 15 + add_trait = stressed + } + } + } + after = { hidden_tooltip = { character_event = { id = HF.25400 } } } #Umbrella again. +} + +#Child forsakes Stewardship studies for training. +character_event = { + id = HF.25404 + title = EVTTITLEHF25400_CHILDS_TRAINING + desc = EVTDESCHF25404 + picture = GFX_evt_child_sword + border = GFX_event_normal_frame_war + hide_new = yes + portrait = FROM + + + trigger = { + has_dlc = "Holy Fury" + FROM = { + NOT = { age = 20 } + NOT = { trait = incapable } + society_member_of = event_target:warrior_lodge_to_join + same_society_as = ROOT + } + } + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25404 + tooltip = { + FROM = { + change_martial = 1 + change_stewardship = -1 + } + } + hidden_tooltip = { + FROM = { character_event = { id = HF.25405 } } + } + ai_chance = { factor = 100 } + } + option = { + name = EVTOPTBHF25404 + tooltip = { + FROM = { + if = { + limit = { trait = stressed } + random = { + chance = 15 + health = -1.0 + } + } + if = { + limit = { NOT = { trait = stressed } } + random = { + chance = 15 + add_trait = stressed + } + } + } + } + hidden_tooltip = { + FROM = { character_event = { id = HF.25406 } } + } + ai_chance = { factor = 10 } + } +} + +#Child loses Stewardship for Martial. +character_event = { + id = HF.25405 + title = EVTTITLEHF25400_MY_TRAINING + desc = EVTDESCHF25405 + picture = GFX_evt_child_sword + border = GFX_event_normal_frame_war + hide_new = yes + portrait = FROM + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25405 + change_martial = 1 + change_stewardship = -1 + } + after = { hidden_tooltip = { character_event = { id = HF.25400 } } } #Umbrella again. +} + +#Conflincted orders stress out child. +character_event = { + id = HF.25406 + title = EVTTITLEHF25400_MY_TRAINING + desc = EVTDESCHF25406 + picture = GFX_evt_child_sword + border = GFX_event_normal_frame_war + hide_new = yes + portrait = FROM + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25406 + if = { + limit = { trait = stressed } + random = { + chance = 15 + health = -1.0 + } + } + if = { + limit = { NOT = { trait = stressed } } + random = { + chance = 15 + add_trait = stressed + } + } + } + after = { hidden_tooltip = { character_event = { id = HF.25400 } } } #Umbrella again. +} + +#Child forsakes Diplomatic studies for training. +character_event = { + id = HF.25407 + title = EVTTITLEHF25400_CHILDS_TRAINING + desc = EVTDESCHF25407 + picture = GFX_evt_child_sword + border = GFX_event_normal_frame_war + hide_new = yes + portrait = FROM + + trigger = { + has_dlc = "Holy Fury" + FROM = { + NOT = { age = 20 } + NOT = { trait = incapable } + society_member_of = event_target:warrior_lodge_to_join + same_society_as = ROOT + } + } + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25407 + tooltip = { + FROM = { + change_martial = 1 + change_diplomacy = -1 + } + } + hidden_tooltip = { + FROM = { character_event = { id = HF.25408 } } + } + ai_chance = { factor = 100 } + } + option = { + name = EVTOPTBHF25407 + tooltip = { + FROM = { + if = { + limit = { trait = stressed } + random = { + chance = 15 + health = -1.0 + } + } + if = { + limit = { NOT = { trait = stressed } } + random = { + chance = 15 + add_trait = stressed + } + } + } + } + hidden_tooltip = { + FROM = { character_event = { id = HF.25409 } } + } + ai_chance = { factor = 10 } + } +} + +#Child loses Diplomacy for Martial. +character_event = { + id = HF.25408 + title = EVTTITLEHF25400_MY_TRAINING + desc = EVTDESCHF25408 + picture = GFX_evt_child_sword + border = GFX_event_normal_frame_war + hide_new = yes + portrait = FROM + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25408 + change_martial = 1 + change_diplomacy = -1 + } + after = { hidden_tooltip = { character_event = { id = HF.25400 } } } #Umbrella again. +} + +#Conflincted orders stress out child. +character_event = { + id = HF.25409 + title = EVTTITLEHF25400_MY_TRAINING + desc = EVTDESCHF25409 + picture = GFX_evt_child_sword + border = GFX_event_normal_frame_war + hide_new = yes + portrait = FROM + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25409 + if = { + limit = { trait = stressed } + random = { + chance = 15 + health = -1.0 + } + } + if = { + limit = { NOT = { trait = stressed } } + random = { + chance = 15 + add_trait = stressed + } + } + } + after = { hidden_tooltip = { character_event = { id = HF.25400 } } } #Umbrella again. +} + +#Child forsaking intellectual activities for physical training. +character_event = { + id = HF.25410 + title = EVTTITLEHF25400_CHILDS_TRAINING + desc = EVTDESCHF25410 + picture = GFX_evt_child_sword + border = GFX_event_normal_frame_war + hide_new = yes + portrait = FROM + + trigger = { + has_dlc = "Holy Fury" + FROM = { + NOT = { age = 20 } + NOT = { trait = incapable } + society_member_of = event_target:warrior_lodge_to_join + same_society_as = ROOT + } + } + + is_triggered_only = yes + + option = { #A smart fighter is a good fighter. + name = EVTOPTAHF25410 + trigger = { is_smart_trigger = yes } + tooltip_info_custom = available_due_to_smart + tooltip = { + FROM = { + change_martial = 1 + change_intrigue = 1 + } + } + hidden_tooltip = { + FROM = { character_event = { id = HF.25411 } } + } + ai_chance = { factor = 100 } + } + option = { + name = EVTOPTBHF25410 + tooltip = { + FROM = { + if = { #First remove brains. + limit = { trait = dull } + change_diplomacy = -1 + change_stewardship = -1 + change_intrigue = -1 + change_learning = -1 + } + else_if = { + limit = { NOR = { trait = dull trait = shrewd } } + add_trait = dull + } + else_if = { + limit = { trait = shrewd } + remove_trait = shrewd + } + + if = { #Then add brawn. + limit = { trait = robust } + health = 0.5 #Safety check, shouldn't fire if already Brawny. + } + else_if = { + limit = { NOR = { trait = feeble trait = sturdy trait = robust } } + add_trait = robust + } + else_if = { + limit = { trait = feeble } + remove_trait = feeble + } + else_if = { + limit = { trait = sturdy } + remove_trait = sturdy + } + } + } + hidden_tooltip = { + FROM = { character_event = { id = HF.25412 } } + } + ai_chance = { factor = 100 } + } +} + +#Child learns lesson from smart fighter. +character_event = { + id = HF.25411 + title = EVTTITLEHF25400_MY_TRAINING + desc = EVTDESCHF25411 + picture = GFX_evt_child_sword + border = GFX_event_normal_frame_war + hide_new = yes + portrait = FROM + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25411 + change_martial = 1 + change_intrigue = 1 + } + after = { hidden_tooltip = { character_event = { id = HF.25400 } } } #Umbrella again. +} + +#Child is strong but dumb. +character_event = { + id = HF.25412 + title = EVTTITLEHF25400_MY_TRAINING + desc = EVTDESCHF25412 + picture = GFX_evt_child_sword + border = GFX_event_normal_frame_war + hide_new = yes + portrait = FROM + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25412 + if = { #First remove brains. + limit = { trait = dull } + change_diplomacy = -1 + change_stewardship = -1 + change_intrigue = -1 + change_learning = -1 + } + else_if = { + limit = { NOR = { trait = dull trait = shrewd } } + add_trait = dull + } + else_if = { + limit = { trait = shrewd } + remove_trait = shrewd + } + + if = { #Then add brawn. + limit = { trait = robust } + health = 0.5 #Safety check, shouldn't fire if already Brawny. + } + else_if = { + limit = { NOR = { trait = feeble trait = sturdy trait = robust } } + add_trait = robust + } + else_if = { + limit = { trait = feeble } + remove_trait = feeble + } + else_if = { + limit = { trait = sturdy } + remove_trait = sturdy + } + } + after = { hidden_tooltip = { character_event = { id = HF.25400 } } } #Umbrella again. +} + +#Child forsaking grooming for physical training. +character_event = { + id = HF.25413 + title = EVTTITLEHF25400_CHILDS_TRAINING + desc = { + text = EVTDESCAHF25413 + trigger = { + FROM = { + is_female = no + } + } + } + desc = { + text = EVTDESCBHF25413 + trigger = { + FROM = { + is_female = yes + } + } + } + picture = GFX_evt_child_sword + border = GFX_event_normal_frame_war + hide_new = yes + portrait = FROM + + trigger = { + has_dlc = "Holy Fury" + FROM = { + NOT = { age = 20 } + NOT = { trait = incapable } + society_member_of = event_target:warrior_lodge_to_join + same_society_as = ROOT + } + } + + is_triggered_only = yes + + option = { #Intolerable. + name = EVTOPTAHF25413 + trigger = { trait = groomed } + tooltip_info = groomed + tooltip = { + FROM = { + if = { + limit = { trait = stressed } + random = { + chance = 15 + health = -1.0 + } + } + if = { + limit = { NOT = { trait = stressed } } + random = { + chance = 15 + add_trait = stressed + } + } + } + } + hidden_tooltip = { + FROM = { character_event = { id = HF.25414 } } + } + ai_chance = { factor = 100 } + } + option = { #Intolerable. + name = EVTOPTAHF25413 + trigger = { trait = proud NOT = { trait = groomed } } + tooltip_info = proud + tooltip = { + FROM = { + if = { + limit = { trait = stressed } + random = { + chance = 15 + health = -1.0 + } + } + if = { + limit = { NOT = { trait = stressed } } + random = { + chance = 15 + add_trait = stressed + } + } + } + } + hidden_tooltip = { + FROM = { character_event = { id = HF.25414 } } + } + ai_chance = { factor = 100 } + } + option = { + name = EVTOPTBHF25413 + tooltip = { + FROM = { + if = { #First remove looks. + limit = { trait = uncouth } + change_diplomacy = -3 + change_intrigue = -1 + } + else_if = { + limit = { NOR = { trait = uncouth trait = groomed } } + add_trait = uncouth + } + else_if = { + limit = { trait = groomed } + remove_trait = groomed + } + + if = { #Then add brawn. + limit = { trait = robust } + health = 0.5 #Safety check, shouldn't fire if already Brawny. + } + else_if = { + limit = { NOR = { trait = feeble trait = sturdy trait = robust } } + add_trait = robust + } + else_if = { + limit = { trait = feeble } + remove_trait = feeble + } + else_if = { + limit = { trait = sturdy } + remove_trait = sturdy + } + } + } + hidden_tooltip = { + FROM = { character_event = { id = HF.25415 } } + } + ai_chance = { factor = 100 } + } +} + +#Conflincted orders stress out child. +character_event = { + id = HF.25414 + title = EVTTITLEHF25400_MY_TRAINING + desc = EVTDESCHF25414 + picture = GFX_evt_child_sword + border = GFX_event_normal_frame_war + hide_new = yes + portrait = FROM + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25414 + if = { + limit = { trait = stressed } + random = { + chance = 15 + health = -1.0 + } + } + if = { + limit = { NOT = { trait = stressed } } + random = { + chance = 15 + add_trait = stressed + } + } + } + after = { hidden_tooltip = { character_event = { id = HF.25400 } } } #Umbrella again. +} + +#Child is strong but uncouth. +character_event = { + id = HF.25415 + title = EVTTITLEHF25400_MY_TRAINING + desc = EVTDESCHF25415 + picture = GFX_evt_child_sword + border = GFX_event_normal_frame_war + hide_new = yes + portrait = FROM + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25415 + if = { #First remove looks. + limit = { trait = uncouth } + change_diplomacy = -2 + change_intrigue = -2 + } + else_if = { + limit = { NOR = { trait = uncouth trait = groomed } } + add_trait = uncouth + } + else_if = { + limit = { trait = groomed } + remove_trait = groomed + } + + if = { #Then add brawn. + limit = { trait = robust } + health = 0.5 #Safety check, shouldn't fire if already Brawny. + } + else_if = { + limit = { NOR = { trait = feeble trait = sturdy trait = robust } } + add_trait = robust + } + else_if = { + limit = { trait = feeble } + remove_trait = feeble + } + else_if = { + limit = { trait = sturdy } + remove_trait = sturdy + } + } + after = { hidden_tooltip = { character_event = { id = HF.25400 } } } #Umbrella again. +} + +#Hero tries to make child brave. +character_event = { + id = HF.25416 + title = EVTTITLEHF25400_CHILDS_BRAVERY + desc = EVTDESCHF25416 + picture = GFX_evt_child_sword + border = GFX_event_normal_frame_war + hide_new = yes + portrait = event_target:child_hero_mentor + + is_triggered_only = yes + + trigger = { + has_dlc = "Holy Fury" + FROM = { + NOT = { age = 20 } + NOT = { trait = incapable } + society_member_of = event_target:warrior_lodge_to_join + same_society_as = ROOT + } + } + #Allow it. + #Forbid it. + + option = { + name = EVTOPTAHF25416 + tooltip = { + FROM = { + random_list = { + 25 = { add_trait = brave } + 60 = { + if = { + limit = { trait = craven } + remove_trait = craven + } + add_trait = wounded + } + 15 = { death = { death_reason = death_accident_generic_beast } } + } + } + } + hidden_tooltip = { FROM = { character_event = { id = HF.25417 } } } + ai_chance = { factor = 100 } + } + option = { + name = EVTOPTBHF25416 + detract_society_currency_minor_effect = yes + hidden_tooltip = { FROM = { character_event = { id = HF.25400 } } } #Umbrella again. + ai_chance = { factor = 0 } + } +} + +#Child is left in the wilderness, to build character, obviously. +character_event = { + id = HF.25417 + title = EVTTITLEHF25400_MY_BRAVERY + desc = EVTDESCHF25417 + picture = GFX_evt_mysterious_forest + border = GFX_event_normal_frame_war + portrait = event_target:child_hero_mentor + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25417 + random_list = { + 25 = { + add_trait = brave + hidden_tooltip = { character_event = { id = 38270 } } + } + 60 = { + if = { + limit = { trait = craven } + remove_trait = craven + hidden_tooltip = { character_event = { id = 38296 } } + } + add_trait = wounded + } + 15 = { death = { death_reason = death_accident_generic_beast } } + } + ai_chance = { factor = 0 } + } + after = { hidden_tooltip = { character_event = { id = HF.25400 } } } #Umbrella again. +} + +#Hero tries to train sturdy/feeble child. +character_event = { + id = HF.25418 + title = EVTTITLEHF25400_CHILDS_SHAPE + desc = { + text = EVTDESCAHF25418 + trigger = { + FROM = { + trait = sturdy + } + } + } + desc = { + text = EVTDESCBHF25418 + trigger = { + FROM = { + trait = feeble + } + } + } + picture = GFX_evt_child_sword + border = GFX_event_normal_frame_war + hide_new = yes + portrait = event_target:child_hero_mentor + + is_triggered_only = yes + + trigger = { + has_dlc = "Holy Fury" + FROM = { + NOT = { age = 20 } + NOT = { trait = incapable } + society_member_of = event_target:warrior_lodge_to_join + same_society_as = ROOT + } + } + #Allow it. + #Forbid it. + + option = { + name = EVTOPTAHF25418 + custom_tooltip = { text = TT_EVTOPTAHF25418 } + hidden_tooltip = { FROM = { character_event = { id = HF.25419 } } } + ai_chance = { factor = 100 } + } + option = { + name = EVTOPTBHF25418 + detract_society_currency_minor_effect = yes + hidden_tooltip = { FROM = { character_event = { id = HF.25400 } } } #Umbrella again. + ai_chance = { factor = 0 } + } +} + +#Child scolded by hero to get in better shape. +character_event = { + id = HF.25419 + title = EVTTITLEHF25400_MY_SHAPE + desc = { + text = EVTDESCAHF25419 + trigger = { + FROM = { + trait = sturdy + } + } + } + desc = { + text = EVTDESCBHF25419 + trigger = { + FROM = { + trait = feeble + } + } + } + picture = GFX_evt_guardian + border = GFX_event_normal_frame_war + portrait = event_target:child_hero_mentor + + is_triggered_only = yes + + #Child listens + #Child ignores. + + option = { + name = EVTOPTAHF25419 + if = { + limit = { NOT = { trait = stressed } } + random = { chance = 15 add_trait = stressed } + } + if = { + limit = { trait = sturdy } + remove_trait = sturdy + hidden_tooltip = { FROM = { character_event = { id = HF.25420 days = 50 } } } + } + if = { + limit = { trait = feeble } + remove_trait = feeble + hidden_tooltip = { FROM = { character_event = { id = HF.25421 days = 50 } } } + } + ai_chance = { + factor = 50 + modifier = { + factor = 1.5 + has_focus = focus_ch_struggle + } + modifier = { + factor = 1.75 + has_focus = focus_ed_martial + } + modifier = { + factor = 1.75 + trait = diligent + } + } + } + option = { + name = EVTOPTBHF25419 + hidden_tooltip = { FROM = { character_event = { id = HF.25422 days = 50 } } } + ai_chance = { + factor = 50 + modifier = { + factor = 1.5 + trait = slothful + } + modifier = { + factor = 1.5 + trait = indolent + } + modifier = { + factor = 1.5 + trait = fussy + } + modifier = { + factor = 1.75 + trait = sturdy + trait = gluttonous + } + modifier = { + factor = 1.75 + trait = feeble + trait = temperate + } + modifier = { + factor = 1.25 + trait = craven + } + } + } + after = { hidden_tooltip = { character_event = { id = HF.25400 } } } #Umbrella again. +} + +#Parent notified that child is no longer Sturdy. +character_event = { + id = HF.25420 + title = EVTTITLEHF25400_CHILDS_SHAPE + desc = EVTDESCAHF25420 + picture = GFX_evt_child_sword + border = GFX_event_normal_frame_war + hide_new = yes + portrait = event_target:child_hero_mentor + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25420 + if = { + limit = { same_society_as = FROM } + add_society_currency_trivial_effect = yes + } + ai_chance = { factor = 0 } + } +} + +#Parent notified that child is no longer Feeble. +character_event = { + id = HF.25421 + title = EVTTITLEHF25400_CHILDS_SHAPE + desc = EVTDESCAHF25420 + picture = GFX_evt_child_sword + border = GFX_event_normal_frame_war + hide_new = yes + portrait = event_target:child_hero_mentor + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25420 + if = { + limit = { same_society_as = FROM } + add_society_currency_trivial_effect = yes + } + ai_chance = { factor = 0 } + } +} + +#Child is still Sturdy/Feeble. +character_event = { + id = HF.25422 + title = EVTTITLEHF25400_CHILDS_SHAPE + desc = { + text = EVTDESCAHF25422 + trigger = { + FROM = { + trait = sturdy + } + } + } + desc = { + text = EVTDESCBHF25422 + trigger = { + FROM = { + trait = feeble + } + } + } + picture = GFX_evt_child_sword + border = GFX_event_normal_frame_war + hide_new = yes + portrait = event_target:child_hero_mentor + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25422 + if = { + limit = { same_society_as = FROM } + detract_society_currency_tiny_effect = yes + } + ai_chance = { factor = 0 } + } +} + +#Hero tries to train child. +character_event = { + id = HF.25423 + title = EVTTITLEHF25400_CHILDS_TRAINING + desc = EVTDESCAHF25423 + picture = GFX_evt_child_sword + border = GFX_event_normal_frame_war + hide_new = yes + portrait = event_target:child_hero_mentor + + is_triggered_only = yes + + trigger = { + has_dlc = "Holy Fury" + FROM = { + NOT = { age = 20 } + NOT = { trait = incapable } + society_member_of = event_target:warrior_lodge_to_join + same_society_as = ROOT + } + } + #Allow it. + #Forbid it. + + option = { + name = EVTOPTAHF25423 + tooltip = { + FROM = { + if = { + limit = { NOT = { trait = wounded } } + random = { chance = 25 add_trait = wounded } + } + add_one_duel_experience_modifier = yes + } + } + hidden_tooltip = { FROM = { character_event = { id = HF.25424 } } } + ai_chance = { factor = 100 } + } + option = { + name = EVTOPTBHF25423 + detract_society_currency_minor_effect = yes + hidden_tooltip = { FROM = { character_event = { id = HF.25400 } } } #Umbrella again. + ai_chance = { factor = 0 } + } +} + +#Child is given tough training. +character_event = { + id = HF.25424 + title = EVTTITLEHF25400_MY_TRAINING + desc = EVTDESCHF25424 + picture = GFX_evt_child_sword + border = GFX_event_normal_frame_war + portrait = event_target:child_hero_mentor + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25424 + if = { + limit = { NOT = { trait = wounded } } + random = { chance = 25 add_trait = wounded } + } + add_one_duel_experience_modifier = yes + ai_chance = { factor = 0 } + } + after = { hidden_tooltip = { character_event = { id = HF.25400 } } } #Umbrella again. +} + +################################################################################### + +# The child was not interested in being a warrior. + +character_event = { + id = HF.25425 + title = EVTTITLEHF25425_NOT_A_FIGHTER + desc = { + text = EVTDESCAHF25425 + trigger = { + ROOT = { + has_character_flag = flag_prospective_child_warrior_is_lazy + } + } + } + desc = { + text = EVTDESCBHF25425 + trigger = { + ROOT = { + has_character_flag = flag_prospective_child_warrior_is_scholar + } + } + } + desc = { + text = EVTDESCCHF25425 + trigger = { + ROOT = { + has_character_flag = flag_prospective_child_warrior_is_lady + } + } + } + desc = { + text = EVTDESCDHF25425 + trigger = { + ROOT = { + has_character_flag = flag_prospective_child_warrior_is_coward + } + } + } + + picture = GFX_evt_child_reading + border = GFX_event_normal_frame_war + hide_new = yes + + is_triggered_only = yes + + immediate = { + #First determine why is that. + random_list = { + 20 = { + trigger = { + NOR = { + trait = diligent + trait = conscientious + } + } + modifier = { + factor = 2 + trait = slothful + } + modifier = { + factor = 2 + trait = indolent + } + set_character_flag = flag_prospective_child_warrior_is_lazy + } + 20 = { + modifier = { + factor = 2 + has_focus = focus_ed_learning + } + modifier = { + factor = 2 + trait = diligent + } + modifier = { + factor = 2 + trait = conscientious + } + set_character_flag = flag_prospective_child_warrior_is_scholar + } + 20 = { + trigger = { + OR = { + AND = { + is_female = yes + NOT = { has_religion_feature = religion_matriarchal } + } + AND = { + is_female = no + has_religion_feature = religion_matriarchal + } + } + } + modifier = { + factor = 2 + trait = groomed + } + modifier = { + factor = 2 + trait = proud + } + modifier = { + factor = 2 + trait = fussy + } + modifier = { + factor = 0.5 + trait = uncouth + } + set_character_flag = flag_prospective_child_warrior_is_lady + } + 20 = { + modifier = { + factor = 2.5 + trait = timid + } + modifier = { + factor = 3 + trait = craven + } + set_character_flag = flag_prospective_child_warrior_is_coward + } + + } + } + + #Complain. + #Endure. + + option = { + name = EVTOPTAHF25425 + hidden_tooltip = { event_target:recruiting_parent = { character_event = { id = HF.25426 } } } #Inducting Parent receives complaint. + ai_chance = { factor = 100 } + } + option = { + name = EVTOPTBHF25425 + if = { + limit = { NOT = { trait = stressed } } + random = { chance = 25 add_trait = stressed } + } + ai_chance = { factor = 0 } + } +} + +# Parent receives complaint. +character_event = { + id = HF.25426 + title = EVTTITLEHF25425_NOT_A_FIGHTER + desc = { + text = EVTDESCAHF25426 + trigger = { + FROM = { + has_character_flag = flag_prospective_child_warrior_is_lazy + } + } + } + desc = { + text = EVTDESCBHF25426 + trigger = { + FROM = { + has_character_flag = flag_prospective_child_warrior_is_scholar + } + } + } + desc = { + text = EVTDESCCHF25426 + trigger = { + FROM = { + has_character_flag = flag_prospective_child_warrior_is_lady + } + } + } + desc = { + text = EVTDESCDHF25426 + trigger = { + FROM = { + has_character_flag = flag_prospective_child_warrior_is_coward + } + } + } + + picture = GFX_evt_child_reading + border = GFX_event_normal_frame_war + hide_new = yes + + is_triggered_only = yes + + option = { #But thou must. + name = EVTOPTAHF25426 + custom_tooltip = { text = TT_EVTOPTAHF25426 } + hidden_tooltip = { FROM = { character_event = { id = HF.25427 } } } + ai_chance = { factor = 0 } + } + + option = { #Let him go. + name = EVTOPTBHF25426 + trigger = { NOT = { trait = stubborn } } + FROM = { + leave_society = yes + set_character_flag = flag_child_abandoned_lodge + } + tiered_prestige_negative_effect = yes + detract_society_currency_minor_effect = yes + ai_chance = { factor = 0 } + } +} +# Son receives denial of parent. +character_event = { + id = HF.25427 + title = EVTTITLEHF25425_NOT_A_FIGHTER + desc = EVTDESCAHF25427 + picture = GFX_evt_child_reading + border = GFX_event_normal_frame_war + hide_new = yes + portrait = FROM + + is_triggered_only = yes + + #Child endures, becomes depressed. + #Child flees home, never to return. + #Child commits suicide. + + immediate = { + if = { + limit = { + any_independent_ruler = { + is_within_diplo_range = FROM + NOR = { + character = ROOT + character = FROM + same_society_as = FROM + same_society_as = ROOT + } + } + } + random_independent_ruler = { + limit = { + is_within_diplo_range = FROM + NOR = { + character = ROOT + character = FROM + same_society_as = FROM + same_society_as = ROOT + } + } + preferred_limit = { + is_rival = FROM + } + preferred_limit = { + religion = ROOT + culture = ROOT + } + preferred_limit = { + religion = ROOT + } + save_event_target_as = fleeing_target + } + } + } + option = { + name = EVTOPTAHF25427 + trigger = { NOT = { trait = depressed } } + add_trait = depressed + hidden_tooltip = { FROM = { character_event = { id = HF.25428 days = 25 } } } + clr_character_flag = flag_prospective_child_warrior_is_lazy + clr_character_flag = flag_prospective_child_warrior_is_scholar + clr_character_flag = flag_prospective_child_warrior_is_lady + clr_character_flag = flag_prospective_child_warrior_is_coward + ai_chance = { factor = 40 } + } + option = { + name = EVTOPTBHF25427 + trigger = { + is_ruler = no + host = { character = FROM } + event_target:fleeing_target = { is_alive = yes } + } + tooltip = { + FROM = { + show_scope_change = no + transfer_scaled_wealth = { to = ROOT value = 0.5 min = 100 max = 250 } + } + } + hidden_tooltip = { FROM = { character_event = { id = HF.25429 } } } + hidden_tooltip = { + move_character = event_target:fleeing_target + set_character_flag = no_court_invites + leave_society = yes + set_character_flag = flag_child_abandoned_lodge + character_event = { id = HF.25431 days = 450 random = 250 } #Whatever happened to X? + } + ai_chance = { + factor = 50 + } + } + option = { + name = EVTOPTCHF25427 + trigger = { age = 16 } + death = { death_reason = death_suicide } + hidden_tooltip = { FROM = { character_event = { id = HF.25430 } } } + ai_chance = { factor = 10 } + } +} + +#Parent notified of depression. +character_event = { + id = HF.25428 + title = EVTTITLEHF25425_NOT_A_FIGHTER + desc = EVTDESCAHF25428 + picture = GFX_evt_child_reading + border = GFX_event_normal_frame_war + hide_new = yes + portrait = FROM + + is_triggered_only = yes + + option = { + name = { + text = EVTOPTAHF25428_A + trigger = { + trait = kind + } + } + name = { + text = EVTOPTAHF25428_B + trigger = { + NOT = { trait = kind } + } + } + if = { + limit = { + trait = kind + NOT = { trait = stressed } + } + add_trait = stressed + } + ai_chance = { factor = 100 } + } +} + +#Parent notified of escape. +character_event = { + id = HF.25429 + title = EVTTITLEHF25425_NOT_A_FIGHTER + desc = EVTDESCAHF25429 + picture = GFX_evt_spymaster + border = GFX_event_normal_frame_war + hide_new = yes + portrait = FROM + + is_triggered_only = yes + + option = { + name = { + text = EVTOPTAHF25429_A + trigger = { + trait = kind + } + } + name = { + text = EVTOPTAHF25429_B + trigger = { + NOT = { trait = kind } + } + } + name = { + text = EVTOPTAHF25429_C + trigger = { + is_evil_trigger = yes + } + } + transfer_scaled_wealth = { to = FROM value = 0.5 min = 100 max = 250 } + if = { + limit = { + trait = kind + NOT = { trait = stressed } + } + add_trait = stressed + } + if = { + limit = { + is_evil_trigger = yes + NOR = { + is_rival = FROM + num_of_rivals = 3 + } + } + add_rival = FROM + } + ai_chance = { factor = 100 } + } +} + +#Parent notified of suicide. +character_event = { + id = HF.25430 + title = EVTTITLEHF25425_NOT_A_FIGHTER + desc = EVTDESCAHF25430 + picture = GFX_evt_spymaster + border = GFX_event_normal_frame_war + hide_new = yes + portrait = FROM + + is_triggered_only = yes + + option = { + name = { + text = EVTOPTAHF25430_A + trigger = { + trait = kind + } + } + name = { + text = EVTOPTAHF25430_B + trigger = { + NOT = { trait = kind } + } + } + name = { + text = EVTOPTAHF25430_C + trigger = { + is_evil_trigger = yes + } + } + if = { + limit = { + trait = kind + NOT = { trait = depressed } + } + add_trait = depressed + } + ai_chance = { factor = 100 } + } +} + +#Child's random future abroad. (courtier event) +character_event = { + id = HF.25431 + hide_window = yes + + is_triggered_only = yes + + trigger = { + is_ruler = no + NOR = { + top_liege = { character = FROMFROM } + trait = incapable + } + } + + immediate = { + if = { + limit = { + has_character_flag = flag_prospective_child_warrior_is_lazy + } + #Child has become debauched hedonist + change_martial = -3 + add_trait = sturdy + add_trait = slothful + add_trait = gluttonous + add_trait = drunkard + FROMFROM = { character_event = { id = HF.25432 } } #Inform parent of disgrace. + if = { + limit = { has_nickname = no } + random_list = { + 25 = { give_nickname = nick_the_merry } + 25 = { give_nickname = nick_the_drunkard } + 25 = { give_nickname = nick_the_fat } + 50 = { } + } + } + } + if = { + limit = { + has_character_flag = flag_prospective_child_warrior_is_scholar + } + #Child has become frail bookworm + change_martial = -3 + add_trait = feeble + add_trait = erudite + add_trait = craven + add_trait = uncouth + FROMFROM = { character_event = { id = HF.25433 } } #Inform parent of disgrace. + if = { + limit = { has_nickname = no } + random_list = { + 25 = { give_nickname = nick_the_frail } + 25 = { give_nickname = nick_the_recluse } + 25 = { give_nickname = nick_the_wise } + 50 = { } + } + } + } + if = { + limit = { + has_character_flag = flag_prospective_child_warrior_is_lady + } + #Child has become vapid courtier + change_martial = -3 + add_trait = dull + add_trait = proud + add_trait = content + add_trait = groomed + FROMFROM = { character_event = { id = HF.25434 } } #Inform parent of disgrace. + if = { + limit = { has_nickname = no } + random_list = { + 25 = { give_nickname = nick_the_frail } + 25 = { give_nickname = nick_the_fair } + 25 = { give_nickname = nick_the_gracious } + 50 = { } + } + } + } + if = { + limit = { + has_character_flag = flag_prospective_child_warrior_is_coward + } + #Child has become paranoid loner + change_martial = -3 + add_trait = paranoid + add_trait = craven + add_trait = uncouth + add_trait = shy + FROMFROM = { character_event = { id = HF.25435 } } #Inform parent of disgrace. + if = { + limit = { has_nickname = no } + random_list = { + 25 = { give_nickname = nick_the_shadow } + 25 = { give_nickname = nick_the_whisperer } + 25 = { give_nickname = nick_the_twitchy } + 50 = { } + } + } + } + } +} + +#Parent notified of lazy son. +character_event = { + id = HF.25432 + title = EVTTITLEHF25425_NOT_A_FIGHTER + desc = EVTDESCAHF25432 + picture = GFX_evt_spymaster + border = GFX_event_normal_frame_war + hide_new = yes + portrait = FROM + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25432 + ai_chance = { factor = 100 } + } +} +#Parent notified of bookworm son. +character_event = { + id = HF.25433 + title = EVTTITLEHF25425_NOT_A_FIGHTER + desc = EVTDESCAHF25433 + picture = GFX_evt_spymaster + border = GFX_event_normal_frame_war + hide_new = yes + portrait = FROM + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25433 + ai_chance = { factor = 100 } + } +} +#Parent notified of vapid son. +character_event = { + id = HF.25434 + title = EVTTITLEHF25425_NOT_A_FIGHTER + desc = EVTDESCAHF25434 + picture = GFX_evt_spymaster + border = GFX_event_normal_frame_war + hide_new = yes + portrait = FROM + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25434 + ai_chance = { factor = 100 } + } +} +#Parent notified of coward son. +character_event = { + id = HF.25435 + title = EVTTITLEHF25425_NOT_A_FIGHTER + desc = EVTDESCAHF25435 + picture = GFX_evt_spymaster + border = GFX_event_normal_frame_war + hide_new = yes + portrait = FROM + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25435 + ai_chance = { factor = 100 } + } +} \ No newline at end of file diff --git a/MOD/Witcher/events/HF_warrior_lodge_feast_events.txt b/MOD/Witcher/events/HF_warrior_lodge_feast_events.txt new file mode 100644 index 000000000..17540255e --- /dev/null +++ b/MOD/Witcher/events/HF_warrior_lodge_feast_events.txt @@ -0,0 +1,8822 @@ +# Written by Flavio + +namespace = HF + + +#############################################ù + +## Alone ## +#Dice throwing (hellenics and bon) + +## 1v1 ## +#Armwrestling +#Flyting (insult contest, only northern pagans) +#Drinking (no bon) + +############################################# + +#All chains are fired by on_by_yearly_action. + +############################################# + + # Arm-wrestling. # + +############################################# +#Warrior Lodge Member picks a challenger. +character_event = { + id = HF.25200 + title = EVTTITLEHF25200 + desc = EVTDESCHF25200 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + hide_new = yes + + + trigger = { + has_dlc = "Holy Fury" + is_adult = yes + in_command = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = incapable } + NOT = { has_character_flag = do_not_disturb } + NOT = { has_character_modifier = arm_wrestling_challenge_cooldown } + is_member_of_any_warrior_lodge_trigger = yes + any_society_member = { #Make sure there are enough contenders to pick. + same_society_as = ROOT + is_adult = yes + in_command = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = incapable } + NOT = { has_character_flag = do_not_disturb } + NOT = { has_character_modifier = arm_wrestling_challenge_cooldown } + NOT = { character = ROOT } + OR = { + is_strong_trigger = yes + trait = duelist + trait = skilled_tactician + trait = brilliant_strategist + combat_rating = 60 + } + any_society_member = { + same_society_as = ROOT + is_adult = yes + in_command = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { has_character_modifier = arm_wrestling_challenge_cooldown } + NOT = { trait = incapable } + NOT = { has_character_flag = do_not_disturb } + NOT = { character = ROOT } + NOT = { character = PREV } # Do not check for the same character. + NOR = { + is_strong_trigger = yes + has_lifestyle_martial_trigger = yes + combat_rating = 60 + } + count = 2 + } + } + } + immediate = { + random_list = { + 33 = { sound_effect = pagan_cheering_01 } + 33 = { sound_effect = pagan_cheering_02 } + 33 = { sound_effect = pagan_cheering_03 } + 33 = { sound_effect = warrior_lodge_ambient_02 } + } + hidden_tooltip = { #Pick potential contenders + clr_character_flag = arm_wrestling_strong #Safety cleanup + clr_character_flag = arm_wrestling_medium + clr_character_flag = arm_wrestling_weak + save_event_target_as = arm_wrestling_fighter_1 + random_society_member = { #First pick a very strong guy. + limit = { + same_society_as = ROOT + is_adult = yes + in_command = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = incapable } + NOT = { has_character_flag = do_not_disturb } + NOT = { has_character_modifier = arm_wrestling_challenge_cooldown } + NOT = { character = ROOT } + OR = { + is_strong_trigger = yes + trait = duelist + trait = skilled_tactician + trait = brilliant_strategist + combat_rating = 60 + } + } + preferred_limit = { + ai = no + is_strong_trigger = yes + is_ill = no + has_education_martial_trigger = yes + has_lifestyle_martial_trigger = yes + combat_rating = 60 + } + preferred_limit = { + ai = no + is_strong_trigger = yes + has_education_martial_trigger = yes + has_lifestyle_martial_trigger = yes + combat_rating = 60 + } + preferred_limit = { + ai = no + is_strong_trigger = yes + OR = { + has_education_martial_trigger = yes + has_lifestyle_martial_trigger = yes + } + combat_rating = 60 + } + preferred_limit = { + ai = no + OR = { + is_strong_trigger = yes + has_education_martial_trigger = yes + has_lifestyle_martial_trigger = yes + } + combat_rating = 60 + } + preferred_limit = { + ai = no + combat_rating = 60 + } + preferred_limit = { + is_strong_trigger = yes + is_ill = no + has_education_martial_trigger = yes + has_lifestyle_martial_trigger = yes + combat_rating = 20 + } + preferred_limit = { + is_strong_trigger = yes + has_education_martial_trigger = yes + has_lifestyle_martial_trigger = yes + combat_rating = 20 + } + preferred_limit = { + is_strong_trigger = yes + OR = { + has_education_martial_trigger = yes + has_lifestyle_martial_trigger = yes + } + combat_rating = 20 + } + preferred_limit = { + OR = { + is_strong_trigger = yes + has_education_martial_trigger = yes + has_lifestyle_martial_trigger = yes + } + combat_rating = 20 + } + preferred_limit = { + ai = no + is_strong_trigger = yes + is_ill = no + has_education_martial_trigger = yes + has_lifestyle_martial_trigger = yes + combat_rating = 20 + } + preferred_limit = { + ai = no + is_strong_trigger = yes + has_education_martial_trigger = yes + has_lifestyle_martial_trigger = yes + combat_rating = 20 + } + preferred_limit = { + ai = no + is_strong_trigger = yes + OR = { + has_education_martial_trigger = yes + has_lifestyle_martial_trigger = yes + } + combat_rating = 20 + } + preferred_limit = { + ai = no + OR = { + is_strong_trigger = yes + has_education_martial_trigger = yes + has_lifestyle_martial_trigger = yes + } + combat_rating = 20 + } + preferred_limit = { + ai = no + combat_rating = 20 + } + preferred_limit = { + is_strong_trigger = yes + is_ill = no + has_education_martial_trigger = yes + has_lifestyle_martial_trigger = yes + combat_rating = 20 + } + preferred_limit = { + is_strong_trigger = yes + has_education_martial_trigger = yes + has_lifestyle_martial_trigger = yes + combat_rating = 20 + } + preferred_limit = { + is_strong_trigger = yes + OR = { + has_education_martial_trigger = yes + has_lifestyle_martial_trigger = yes + } + combat_rating = 20 + } + preferred_limit = { + OR = { + is_strong_trigger = yes + has_education_martial_trigger = yes + has_lifestyle_martial_trigger = yes + } + combat_rating = 20 + } + preferred_limit = { + combat_rating = 90 + } + preferred_limit = { + combat_rating = 60 + } + preferred_limit = { + combat_rating = 20 + } + preferred_limit = { + combat_rating = 10 + } + preferred_limit = { + combat_rating = 0 + } + preferred_limit = { + is_weak_trigger = no + } + preferred_limit = { + trait = brave + } + clr_character_flag = arm_wrestling_strong #Safety cleanup + clr_character_flag = arm_wrestling_medium + clr_character_flag = arm_wrestling_weak + save_event_target_as = arm_wrestling_opponent_1 + } + random_society_member = { #Second pick a weakling. + limit = { + same_society_as = ROOT + is_adult = yes + in_command = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = incapable } + NOT = { has_character_flag = do_not_disturb } + NOT = { character = ROOT } + NOT = { has_character_modifier = arm_wrestling_challenge_cooldown } + NOT = { event_target:arm_wrestling_opponent_1 = { character = PREV } } + NOR = { + is_strong_trigger = yes + has_lifestyle_martial_trigger = yes + has_education_martial_trigger = yes + combat_rating = 25 + } + } + preferred_limit = { + ai = no + is_ill = yes + age = 40 + is_weak_trigger = yes + NOT = { combat_rating = 0 } + } + preferred_limit = { + ai = no + age = 40 + is_weak_trigger = yes + NOT = { combat_rating = 0 } + } + preferred_limit = { + ai = no + is_weak_trigger = yes + NOT = { combat_rating = 0 } + } + preferred_limit = { + ai = no + trait = craven + NOT = { combat_rating = 0 } + } + preferred_limit = { + is_ill = yes + age = 40 + is_weak_trigger = yes + NOT = { combat_rating = 0 } + } + preferred_limit = { + age = 40 + is_weak_trigger = yes + NOT = { combat_rating = 0 } + } + preferred_limit = { + is_weak_trigger = yes + NOT = { combat_rating = 0 } + } + preferred_limit = { + trait = craven + NOT = { combat_rating = 0 } + } + preferred_limit = { + ai = no + is_ill = yes + age = 40 + is_weak_trigger = yes + NOT = { combat_rating = 20 } + } + preferred_limit = { + ai = no + age = 40 + is_weak_trigger = yes + NOT = { combat_rating = 20 } + } + preferred_limit = { + ai = no + is_weak_trigger = yes + NOT = { combat_rating = 20 } + } + preferred_limit = { + ai = no + trait = craven + NOT = { combat_rating = 20 } + } + preferred_limit = { + is_ill = yes + age = 40 + is_weak_trigger = yes + NOT = { combat_rating = 20 } + } + preferred_limit = { + age = 40 + is_weak_trigger = yes + NOT = { combat_rating = 20 } + } + preferred_limit = { + is_weak_trigger = yes + NOT = { combat_rating = 20 } + } + preferred_limit = { + trait = craven + NOT = { combat_rating = 20 } + } + preferred_limit = { + ai = no + is_ill = yes + age = 40 + is_weak_trigger = yes + NOT = { combat_rating = 40 } + } + preferred_limit = { + ai = no + age = 40 + is_weak_trigger = yes + NOT = { combat_rating = 40 } + } + preferred_limit = { + ai = no + is_weak_trigger = yes + NOT = { combat_rating = 40 } + } + preferred_limit = { + ai = no + trait = craven + NOT = { combat_rating = 40 } + } + preferred_limit = { + is_ill = yes + age = 40 + is_weak_trigger = yes + NOT = { combat_rating = 40 } + } + preferred_limit = { + age = 40 + is_weak_trigger = yes + NOT = { combat_rating = 40 } + } + preferred_limit = { + is_weak_trigger = yes + NOT = { combat_rating = 40 } + } + preferred_limit = { + trait = craven + NOT = { combat_rating = 40 } + } + clr_character_flag = arm_wrestling_strong #Safety cleanup + clr_character_flag = arm_wrestling_medium + clr_character_flag = arm_wrestling_weak + save_event_target_as = arm_wrestling_opponent_3 + } + random_society_member = { #Third pick an average guy. + limit = { + same_society_as = ROOT + is_adult = yes + in_command = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = incapable } + NOT = { has_character_flag = do_not_disturb } + NOT = { character = ROOT } + NOT = { has_character_modifier = arm_wrestling_challenge_cooldown } + NOT = { event_target:arm_wrestling_opponent_1 = { character = PREV } } + NOT = { event_target:arm_wrestling_opponent_3 = { character = PREV } } + NOR = { + is_strong_trigger = yes + has_lifestyle_martial_trigger = yes + combat_rating = 80 + } + } + preferred_limit = { + ai = no + is_ill = no + has_education_martial_trigger = yes + combat_rating = 60 + } + preferred_limit = { + ai = no + has_education_martial_trigger = yes + combat_rating = 60 + } + preferred_limit = { + ai = no + combat_rating = 60 + } + preferred_limit = { + ai = no + is_ill = no + has_education_martial_trigger = yes + combat_rating = 25 + } + preferred_limit = { + ai = no + has_education_martial_trigger = yes + combat_rating = 25 + } + preferred_limit = { + ai = no + combat_rating = 25 + } + preferred_limit = { + is_ill = no + has_education_martial_trigger = yes + combat_rating = 60 + } + preferred_limit = { + has_education_martial_trigger = yes + combat_rating = 60 + } + preferred_limit = { + combat_rating = 60 + } + preferred_limit = { + is_ill = no + has_education_martial_trigger = yes + combat_rating = 25 + } + preferred_limit = { + has_education_martial_trigger = yes + combat_rating = 25 + } + preferred_limit = { + combat_rating = 25 + } + preferred_limit = { + is_ill = no + has_education_martial_trigger = yes + combat_rating = 25 + } + preferred_limit = { + has_education_martial_trigger = yes + combat_rating = 25 + } + preferred_limit = { + combat_rating = 25 + } + preferred_limit = { + is_ill = no + has_education_martial_trigger = yes + combat_rating = 0 + } + preferred_limit = { + has_education_martial_trigger = yes + combat_rating = 0 + } + preferred_limit = { + combat_rating = 0 + } + preferred_limit = { + is_weak_trigger = no + } + clr_character_flag = arm_wrestling_strong #Safety cleanup + clr_character_flag = arm_wrestling_medium + clr_character_flag = arm_wrestling_weak + save_event_target_as = arm_wrestling_opponent_2 + } + #Then assign flag to determine what kind of opponent you are. + if = { + limit = { + OR = { + is_strong_trigger = yes + combat_rating = 60 + } + } + set_character_flag = arm_wrestling_strong + } + else_if = { + limit = { + NOR = { + is_strong_trigger = yes + is_weak_trigger = yes + combat_rating = 60 + } + combat_rating = 25 + + } + set_character_flag = arm_wrestling_medium + } + else_if = { + limit = { + OR = { + is_weak_trigger = yes + NOT= { combat_rating = 25 } + } + } + set_character_flag = arm_wrestling_weak + } + #Safety check + if = { + limit = { + NOR = { + has_character_flag = arm_wrestling_strong + has_character_flag = arm_wrestling_medium + has_character_flag = arm_wrestling_weak + } + } + set_character_flag = arm_wrestling_medium + } + set_character_flag = do_not_disturb + hidden_tooltip = { + character_event = { id = HF.25301 days = 15 } #Clear flag. + } + } + } + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25200 + custom_tooltip = { text = TT_EVTOPTAHF25200 } + trigger = { event_target:arm_wrestling_opponent_1 = { is_alive = yes } } + show_portrait = event_target:arm_wrestling_opponent_1 + hidden_tooltip = { + event_target:arm_wrestling_opponent_1 = { + save_event_target_as = arm_wrestling_fighter_2 + set_character_flag = arm_wrestling_strong + set_character_flag = do_not_disturb + hidden_tooltip = { + character_event = { id = HF.25301 days = 15 } #Clear flag. + } + character_event = { id = HF.25201 } + } + if = { + limit = { event_target:arm_wrestling_opponent_2 = { is_alive = yes } } + event_target:arm_wrestling_opponent_2 = { + clr_character_flag = arm_wrestling_strong + clr_character_flag = arm_wrestling_medium + clr_character_flag = arm_wrestling_weak + clr_character_flag = do_not_disturb + } + } + if = { + limit = { event_target:arm_wrestling_opponent_3 = { is_alive = yes } } + event_target:arm_wrestling_opponent_3 = { + clr_character_flag = arm_wrestling_strong + clr_character_flag = arm_wrestling_medium + clr_character_flag = arm_wrestling_weak + clr_character_flag = do_not_disturb + } + } + } + + ai_chance = { factor = 10 } + } + option = { + name = EVTOPTBHF25200 + custom_tooltip = { text = TT_EVTOPTBHF25200 } + trigger = { event_target:arm_wrestling_opponent_2 = { is_alive = yes } } + show_portrait = event_target:arm_wrestling_opponent_2 + hidden_tooltip = { + event_target:arm_wrestling_opponent_2 = { + save_event_target_as = arm_wrestling_fighter_2 + set_character_flag = arm_wrestling_medium + set_character_flag = do_not_disturb + hidden_tooltip = { + character_event = { id = HF.25301 days = 15 } #Clear flag. + } + character_event = { id = HF.25201 } + } + if = { + limit = { event_target:arm_wrestling_opponent_1 = { is_alive = yes } } + event_target:arm_wrestling_opponent_1 = { + clr_character_flag = arm_wrestling_strong + clr_character_flag = arm_wrestling_medium + clr_character_flag = arm_wrestling_weak + clr_character_flag = do_not_disturb + } + } + if = { + limit = { event_target:arm_wrestling_opponent_3 = { is_alive = yes } } + event_target:arm_wrestling_opponent_3 = { + clr_character_flag = arm_wrestling_strong + clr_character_flag = arm_wrestling_medium + clr_character_flag = arm_wrestling_weak + clr_character_flag = do_not_disturb + } + } + } + ai_chance = { factor = 20 } + } + option = { + name = EVTOPTCHF25200 + custom_tooltip = { text = TT_EVTOPTCHF25200 } + trigger = { event_target:arm_wrestling_opponent_3 = { is_alive = yes } } + show_portrait = event_target:arm_wrestling_opponent_3 + if = { + limit = { + has_character_flag = arm_wrestling_strong + } + tiered_prestige_negative_effect = yes + } + hidden_tooltip = { + event_target:arm_wrestling_opponent_3 = { + save_event_target_as = arm_wrestling_fighter_2 + set_character_flag = arm_wrestling_weak + set_character_flag = do_not_disturb + hidden_tooltip = { + character_event = { id = HF.25301 days = 15 } #Clear flag. + } + character_event = { id = HF.25201 } + } + if = { + limit = { event_target:arm_wrestling_opponent_1 = { is_alive = yes } } + event_target:arm_wrestling_opponent_1 = { + clr_character_flag = arm_wrestling_strong + clr_character_flag = arm_wrestling_medium + clr_character_flag = arm_wrestling_weak + clr_character_flag = do_not_disturb + } + } + if = { + limit = { event_target:arm_wrestling_opponent_2 = { is_alive = yes } } + event_target:arm_wrestling_opponent_2 = { + clr_character_flag = arm_wrestling_strong + clr_character_flag = arm_wrestling_medium + clr_character_flag = arm_wrestling_weak + clr_character_flag = do_not_disturb + } + } + } + ai_chance = { + factor = 30 + modifier = { + factor = 2 + trait = craven + } + modifier = { + factor = 0.5 + trait = brave + } + } + } + option = { #Not interested. -End of line. + name = EVTOPTDHF25200 + tiered_prestige_negative_effect = yes + if = { + limit = { + has_character_flag = arm_wrestling_strong + } + detract_society_currency_medium_effect = yes + } + if = { + limit = { + has_character_flag = arm_wrestling_medium + } + detract_society_currency_minor_effect = yes + } + if = { + limit = { + has_character_flag = arm_wrestling_weak + } + detract_society_currency_tiny_effect = yes + } + hidden_tooltip = { + if = { + limit = { + event_target:arm_wrestling_opponent_1 = { is_alive = yes } + } + event_target:arm_wrestling_opponent_1 = { + clr_character_flag = arm_wrestling_strong + clr_character_flag = arm_wrestling_medium + clr_character_flag = arm_wrestling_weak + clr_character_flag = do_not_disturb + } + } + if = { + limit = { + event_target:arm_wrestling_opponent_2 = { is_alive = yes } + } + event_target:arm_wrestling_opponent_2 = { + clr_character_flag = arm_wrestling_strong + clr_character_flag = arm_wrestling_medium + clr_character_flag = arm_wrestling_weak + clr_character_flag = do_not_disturb + } + } + if = { + limit = { + event_target:arm_wrestling_opponent_3 = { is_alive = yes } + } + event_target:arm_wrestling_opponent_3 = { + clr_character_flag = arm_wrestling_strong + clr_character_flag = arm_wrestling_medium + clr_character_flag = arm_wrestling_weak + clr_character_flag = do_not_disturb + } + } + warrior_lodge_arm_wrestling_cleanup_effect = yes + } + ai_chance = { factor = 0 } + } +} + +#Second warrior receives challenge. +character_event = { + id = HF.25201 + title = EVTTITLEHF25200 + desc = EVTDESCHF25201 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + } + fail_trigger_effect = { + warrior_lodge_arm_wrestling_cleanup_effect = yes + } + + option = { #Accept Challenge. + name = EVTOPTAHF25201 + custom_tooltip = { text = TT_EVTOPTAHF25201 } + show_portrait = FROM + FROM = { character_event = { id = HF.25203 } } + hidden_tooltip = { + add_character_modifier = { + name = arm_wrestling_challenge_cooldown + hidden = yes + years = 2 + } + FROM = { + add_character_modifier = { + name = arm_wrestling_challenge_cooldown + hidden = yes + years = 2 + } + } + } + ai_chance = { factor = 95 } + } + + option = { #Not interested. -End of line. + name = EVTOPTBHF25201 + tiered_prestige_negative_effect = yes + if = { + limit = { + has_character_flag = arm_wrestling_strong + } + detract_society_currency_medium_effect = yes + } + if = { + limit = { + has_character_flag = arm_wrestling_medium + } + detract_society_currency_minor_effect = yes + } + if = { + limit = { + has_character_flag = arm_wrestling_weak + } + detract_society_currency_tiny_effect = yes + } + if = { + limit = { + trait = craven + } + custom_tooltip = { text = TT_EVTOPTBHF25201 } + hidden_tooltip = { + any_society_member = { + limit = { + same_society_as = ROOT + NOT = { character = ROOT } + } + opinion = { + who = ROOT + modifier = opinion_coward + years = 5 + } + } + } + } + if = { + limit = { + NOR = { + trait = brave + trait = craven + } + } + random = { + chance = 5 + add_trait = craven + hidden_tooltip = { character_event = { id = 38257 } } + } + } + if = { + limit = { + trait = brave + } + random = { + chance = 5 + remove_trait = brave + hidden_tooltip = { character_event = { id = 38320 } } + } + } + hidden_tooltip = { + FROM = { character_event = { id = HF.25202 } } #Notify. + } + ai_chance = { + factor = 5 + modifier = { + factor = 5 + trait = craven + } + } + } +} + +#First character notified that the challenge is off. +character_event = { + id = HF.25202 + title = EVTTITLEHF25200 + desc = EVTDESCHF25202 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + } + fail_trigger_effect = { + warrior_lodge_arm_wrestling_cleanup_effect = yes + } + + option = { + name = EVTOPTAHF25202 + tiered_prestige_reward_effect = yes + hidden_tooltip = { + warrior_lodge_arm_wrestling_cleanup_effect = yes + } + ai_chance = { factor = 100 } + } +} + +#First character: challenge begins. +character_event = { + id = HF.25203 + title = EVTTITLEHF25200 + desc = EVTDESCHF25203 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + } + fail_trigger_effect = { + warrior_lodge_arm_wrestling_cleanup_effect = yes + } + + immediate = { + FROM = { character_event = { id = HF.25204 } } #Notify opponent. + } + + option = { #Begin. + name = EVTOPTAHF25203 + ai_chance = { factor = 100 } + } +} + +#Copy of above, opponent notified. +character_event = { + id = HF.25204 + title = EVTTITLEHF25200 + desc = EVTDESCHF25203 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + } + fail_trigger_effect = { + warrior_lodge_arm_wrestling_cleanup_effect = yes + } + + option = { #Begin. + name = EVTOPTAHF25203 + hidden_tooltip = { + warrior_lodge_arm_wrestling_first_round_effect = yes + } + ai_chance = { factor = 100 } + } +} + +#Post-first round: Either character is losing. +character_event = { + id = HF.25205 + title = EVTTITLEHF25200 + desc = { + text = EVTDESCAHF25205 + trigger = { + event_target:arm_wrestling_fighter_1 = { character = ROOT } + } + } + desc = { + text = EVTDESCBHF25205 + trigger = { + event_target:arm_wrestling_fighter_2 = { character = ROOT } + } + } + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + } + fail_trigger_effect = { + warrior_lodge_arm_wrestling_cleanup_effect = yes + } + + option = { #Slide elbow. + name = EVTOPTAHF25205 + trigger = { intrigue = 8 } + tooltip_info = intrigue + custom_tooltip = { text = TOOLTIP_EVTOPTDHF25205 } + hidden_tooltip = { + if = { + limit = { event_target:arm_wrestling_fighter_1 = { character = ROOT } } + event_target:arm_wrestling_fighter_2 = { character_event = { id = HF.25206 } } + } + if = { + limit = { event_target:arm_wrestling_fighter_2 = { character = ROOT } } + event_target:arm_wrestling_fighter_1 = { character_event = { id = HF.25206 } } + } + } + ai_chance = { factor = 100 } + } + option = { #Charm distraction. (male) + name = { + text = EVTOPTBHF25205_A + trigger = { + event_target:arm_wrestling_fighter_1 = { character = ROOT } + } + } + name = { + text = EVTOPTBHF25205_B + trigger = { + event_target:arm_wrestling_fighter_2 = { character = ROOT } + } + } + trigger = { + FROM = { is_female = yes } + prefers_men_trigger = no + is_attractive_trigger = yes + NOT = { trait = celibate } + } + tooltip_info_custom = available_because_pretty + custom_tooltip = { text = TOOLTIP_EVTOPTDHF25205 } + hidden_tooltip = { + if = { + limit = { event_target:arm_wrestling_fighter_1 = { character = ROOT } } + event_target:arm_wrestling_fighter_2 = { character_event = { id = HF.25209 } } + } + if = { + limit = { event_target:arm_wrestling_fighter_2 = { character = ROOT } } + event_target:arm_wrestling_fighter_1 = { character_event = { id = HF.25209 } } + } + } + ai_chance = { factor = 50 } + } + option = { #Charm distraction. (female) + name = EVTOPTCHF25205 + trigger = { + FROM = { is_female = no } + prefers_men_trigger = yes + is_attractive_trigger = yes + NOT = { trait = celibate } + } + tooltip_info_custom = available_because_pretty + custom_tooltip = { text = TOOLTIP_EVTOPTDHF25205 } + hidden_tooltip = { + if = { + limit = { event_target:arm_wrestling_fighter_1 = { character = ROOT } } + event_target:arm_wrestling_fighter_2 = { character_event = { id = HF.25209 } } + } + if = { + limit = { event_target:arm_wrestling_fighter_2 = { character = ROOT } } + event_target:arm_wrestling_fighter_1 = { character_event = { id = HF.25209 } } + } + } + ai_chance = { factor = 50 } + } + option = { #Cheap distraction. + name = EVTOPTDHF25205 + detract_society_currency_trivial_effect = yes + custom_tooltip = { text = TOOLTIP_EVTOPTDHF25205 } + hidden_tooltip = { + if = { + limit = { event_target:arm_wrestling_fighter_1 = { character = ROOT } } + event_target:arm_wrestling_fighter_2 = { character_event = { id = HF.25212 } } + } + if = { + limit = { event_target:arm_wrestling_fighter_2 = { character = ROOT } } + event_target:arm_wrestling_fighter_1 = { character_event = { id = HF.25212 } } + } + } + ai_chance = { + factor = 10 + modifier = { + factor = 1.5 + trait = arbitrary + } + modifier = { + factor = 0 + trait = just + } + modifier = { + factor = 0 + trait = honest + } + modifier = { + factor = 1.5 + trait = deceitful + } + + } + } + option = { #Just Resist. + name = EVTOPTEHF25205 + add_society_currency_trivial_effect = yes + hidden_tooltip = { + warrior_lodge_arm_wrestling_second_round_effect = yes #Decide who wins. + } + ai_chance = { + factor = 10 + modifier = { + factor = 2 + trait = just + } + modifier = { + factor = 2 + trait = honest + } + } + } +} + +#Opponent is cheating sneakily. +character_event = { + id = HF.25206 + title = EVTTITLEHF25200 + desc = EVTDESCHF25206 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + } + fail_trigger_effect = { + warrior_lodge_arm_wrestling_cleanup_effect = yes + } + + option = { #Saw it! + name = EVTOPTAHF25206 + trigger = { intrigue = 13 } + tooltip_info = intrigue + ai_chance = { factor = 100 } + } + option = { #Saw it! + name = EVTOPTAHF25206 + trigger = { trait = genius + NOT = { intrigue = 13 } + } + tooltip_info = genius + ai_chance = { factor = 100 } + } + option = { #Saw it! + name = EVTOPTAHF25206 + trigger = { + trait = quick + NOR = { + trait = genius + intrigue = 13 + } + } + tooltip_info = quick + ai_chance = { factor = 100 } + } + option = { #Saw it! + name = EVTOPTAHF25206 + trigger = { + trait = shrewd + NOR = { + trait = quick + trait = genius + intrigue = 13 + } + } + tooltip_info = quick + ai_chance = { factor = 100 } + } + + option = { #How could this be?! + name = EVTOPTBHF25206 + trigger = { + is_dumb_trigger = no + } + set_character_flag = wl_arm_wrestling_being_tricked_1 + ai_chance = { factor = 100 } + } + + option = { #What is happening? + name = EVTOPTCHF25206 + trigger = { + is_dumb_trigger = yes + } + tooltip_info_custom = available_because_dumb + set_character_flag = wl_arm_wrestling_being_tricked_2 + ai_chance = { factor = 100 } + } + after = { + warrior_lodge_arm_wrestling_second_round_effect = yes #Decide who wins. + } +} + +#Opponent tried to charm-trick. +character_event = { + id = HF.25209 + title = EVTTITLEHF25200 + desc = { + text = EVTDESCAHF25209 + trigger = { + FROM = { is_female = yes } + } + } + desc = { + text = EVTDESCBHF25209 + trigger = { + FROM = { is_female = no } + } + } + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + } + fail_trigger_effect = { + warrior_lodge_arm_wrestling_cleanup_effect = yes + } + option = { #Not interested. + name = EVTOPTAHF25209 + trigger = { trait = celibate } + tooltip_info = celibate + ai_chance = { factor = 100 } + } + option = { #Not interested. + name = EVTOPTBHF25209 + trigger = { + NOT = { trait = celibate } + trait = chaste + OR = { + num_of_spouses = 1 + num_of_lovers = 1 + } + FROM = { + NOR = { + is_married = ROOT + is_lover = ROOT + } + } + } + tooltip_info = chaste + ai_chance = { factor = 100 } + } + option = { #Wrong sex. + name = EVTOPTCHF25209 + trigger = { + OR = { + AND = { + FROM = { is_female = yes } + prefers_men_trigger = yes + } + AND = { + FROM = { is_female = no } + prefers_men_trigger = no + } + } + } + ai_chance = { factor = 100 } + } + option = { #Failed check. + name = EVTOPTDHF25209 + trigger = { + NOT = { trait = lustful } + OR = { + AND = { + FROM = { is_female = yes } + prefers_men_trigger = no + } + AND = { + FROM = { is_female = no } + prefers_men_trigger = yes + } + } + } + set_character_flag = wl_arm_wrestling_being_tricked_1 + ai_chance = { factor = 10 } + } + option = { #Critical Fail check. + name = { + text = EVTOPTEHF25209_A + trigger = { + FROM = { + is_female = yes + } + } + } + name = { + text = EVTOPTEHF25209_B + trigger = { + FROM = { + is_female = no + } + } + } + trigger = { + trait = lustful + OR = { + AND = { + FROM = { is_female = yes } + prefers_men_trigger = no + } + AND = { + FROM = { is_female = no } + prefers_men_trigger = yes + } + } + } + tooltip_info = lustful + set_character_flag = wl_arm_wrestling_being_tricked_2 + ai_chance = { factor = 10 } + } + after = { + warrior_lodge_arm_wrestling_second_round_effect = yes #Decide who wins. + } +} + +#Opponent used cheap trick. +character_event = { + id = HF.25212 + title = EVTTITLEHF25200 + desc = EVTDESCHF25212 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + } + fail_trigger_effect = { + warrior_lodge_arm_wrestling_cleanup_effect = yes + } + + option = { #Do you think I am that stupid? + name = EVTOPTAHF25212 + trigger = { + is_dumb_trigger = no + } + ai_chance = { factor = 100 } + } + + option = { #Actually, I am. + name = EVTOPTBHF25212 + trigger = { + is_dumb_trigger = yes + } + tooltip_info_custom = available_because_dumb + set_character_flag = wl_arm_wrestling_being_tricked_1 + ai_chance = { factor = 100 } + } + after = { + warrior_lodge_arm_wrestling_second_round_effect = yes #Decide who wins. + } +} + +#Second round over: the winner is notified of victory. +character_event = { + id = HF.25215 + title = EVTTITLEHF25200 + desc = EVTDESCHF25215 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + } + fail_trigger_effect = { + warrior_lodge_arm_wrestling_cleanup_effect = yes + } + option = { #Mock loser. + name = EVTOPTAHF25215 + custom_tooltip = { text = TT_EVTOPTAHF25215 } + #Influence reward based on opponent's strength. + if = { + limit = { + OR = { + event_target:arm_wrestling_fighter_1 = { + NOT = { character = ROOT } + has_character_flag = arm_wrestling_strong + } + event_target:arm_wrestling_fighter_2 = { + NOT = { character = ROOT } + has_character_flag = arm_wrestling_strong + } + } + } + add_society_currency_minor_effect = yes + hidden_tooltip = { #If defeated a strong guy, gain nickname. + if = { + limit = { + NOR = { + this_has_average_nickname_trigger = yes + this_has_cool_nickname_trigger = yes + this_has_super_cool_nickname_trigger = yes + } + } + random_list = { + 25 = { give_nickname = nick_the_strongarm } + 25 = { give_nickname = nick_the_iron_grip } + 25 = { give_nickname = nick_the_knuckle_slammer } + 25 = { give_nickname = nick_the_gods_arm } + 25 = { give_nickname = nick_the_bone_squeezer } + 25 = { + trigger = { is_female = no } + give_nickname = nick_the_bull + } + 25 = { + trigger = { is_female = yes } + give_nickname = nick_the_butch + } + 15 = {} + } + } + } + } + if = { + limit = { + OR = { + event_target:arm_wrestling_fighter_1 = { + NOT = { character = ROOT } + has_character_flag = arm_wrestling_medium + } + event_target:arm_wrestling_fighter_2 = { + NOT = { character = ROOT } + has_character_flag = arm_wrestling_medium + } + } + } + add_society_currency_tiny_effect = yes + } + if = { + limit = { + OR = { + event_target:arm_wrestling_fighter_1 = { + NOT = { character = ROOT } + has_character_flag = arm_wrestling_weak + } + event_target:arm_wrestling_fighter_2 = { + NOT = { character = ROOT } + has_character_flag = arm_wrestling_weak + } + } + } + add_society_currency_trivial_effect = yes + } + tooltip = { + #Notify loser. + if = { + limit = { event_target:arm_wrestling_fighter_1 = { character = ROOT } } + event_target:arm_wrestling_fighter_2 = { + show_scope_change = no + opinion = { + who = ROOT + modifier = opinion_lousy_winner + years = 5 + } + } + } + if = { + limit = { event_target:arm_wrestling_fighter_2 = { character = ROOT } } + event_target:arm_wrestling_fighter_1 = { + show_scope_change = no + opinion = { + who = ROOT + modifier = opinion_lousy_winner + years = 5 + } + } + } + } + hidden_tooltip = { + #Notify loser. + if = { + limit = { event_target:arm_wrestling_fighter_1 = { character = ROOT } } + event_target:arm_wrestling_fighter_2 = { character_event = { id = HF.25216 } } + } + if = { + limit = { event_target:arm_wrestling_fighter_2 = { character = ROOT } } + event_target:arm_wrestling_fighter_1 = { character_event = { id = HF.25216 } } + } + } + ai_chance = { + factor = 50 + modifier = { + factor = 1.5 + is_evil_trigger = yes + } + } + } + option = { #Kind to loser. + name = EVTOPTBHF25215 + #Influence reward based on opponent's strength. + if = { + limit = { + OR = { + event_target:arm_wrestling_fighter_1 = { + NOT = { character = ROOT } + has_character_flag = arm_wrestling_strong + } + event_target:arm_wrestling_fighter_2 = { + NOT = { character = ROOT } + has_character_flag = arm_wrestling_strong + } + } + } + add_society_currency_tiny_effect = yes + hidden_tooltip = { #If defeated a strong guy, gain nickname. + if = { + limit = { + NOR = { + this_has_average_nickname_trigger = yes + this_has_cool_nickname_trigger = yes + this_has_super_cool_nickname_trigger = yes + } + } + random_list = { + 25 = { give_nickname = nick_the_strongarm } + 25 = { give_nickname = nick_the_iron_grip } + 25 = { give_nickname = nick_the_knuckle_slammer } + 25 = { give_nickname = nick_the_gods_arm } + 25 = { give_nickname = nick_the_bone_squeezer } + 25 = { + trigger = { is_female = no } + give_nickname = nick_the_bull + } + 25 = { + trigger = { is_female = yes } + give_nickname = nick_the_butch + } + 15 = {} + } + } + } + } + if = { + limit = { + OR = { + event_target:arm_wrestling_fighter_1 = { + NOT = { character = ROOT } + has_character_flag = arm_wrestling_medium + } + event_target:arm_wrestling_fighter_2 = { + NOT = { character = ROOT } + has_character_flag = arm_wrestling_medium + } + } + } + add_society_currency_trivial_effect = yes + } + if = { + limit = { + OR = { + event_target:arm_wrestling_fighter_1 = { + NOT = { character = ROOT } + has_character_flag = arm_wrestling_weak + } + event_target:arm_wrestling_fighter_2 = { + NOT = { character = ROOT } + has_character_flag = arm_wrestling_weak + } + } + } + prestige = 10 + } + tooltip = { + #Notify loser. + if = { + limit = { event_target:arm_wrestling_fighter_1 = { character = ROOT } } + event_target:arm_wrestling_fighter_2 = { + show_scope_change = no + opinion = { + who = ROOT + modifier = opinion_kind_winner + years = 5 + } + } + } + if = { + limit = { event_target:arm_wrestling_fighter_2 = { character = ROOT } } + event_target:arm_wrestling_fighter_1 = { + show_scope_change = no + opinion = { + who = ROOT + modifier = opinion_kind_winner + years = 5 + } + } + } + } + hidden_tooltip = { + #Notify loser. + if = { + limit = { event_target:arm_wrestling_fighter_1 = { character = ROOT } } + event_target:arm_wrestling_fighter_2 = { character_event = { id = HF.25217 } } + } + if = { + limit = { event_target:arm_wrestling_fighter_2 = { character = ROOT } } + event_target:arm_wrestling_fighter_1 = { character_event = { id = HF.25217 } } + } + } + ai_chance = { + factor = 50 + modifier = { + factor = 1.5 + is_benevolent_trigger = yes + } + } + } + after = { + add_legend_progress_trivial_effect = yes + hidden_tooltip = { post_arm_wrestling_flavor_effect = yes } + } +} + +#You lost. Mocked by winner. +character_event = { + id = HF.25216 + title = EVTTITLEHF25200 + desc = EVTDESCHF25216 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + } + fail_trigger_effect = { + warrior_lodge_arm_wrestling_cleanup_effect = yes + } + + option = { #Special option. - character starts duel! + name = EVTOPTYHF25216 + custom_tooltip = { text = tooltip_22022_Y } + trigger = { + this_can_duel_with_from_trigger = yes + } + opinion = { + modifier = opinion_antagonized_3 + who = ROOT + years = 15 + } + #REQUIRED event targets for setting up duel evaluation! + hidden_tooltip = { + save_event_target_as = combatant_1 #the person issuing the duel... + FROM = { save_event_target_as = combatant_2 } #the target of the duel... + } + FROM = { + show_scope_change = no + apply_degree_of_dishonorable_duel_effect = yes #checks a bunch of age and health statuses... + } + + pacifists_lose_piety_effect = yes + add_character_modifier = { + modifier = recent_duel_timer + duration = 365 + hidden = yes + } + hidden_tooltip = { + FROM = { character_event = { id = HFP.10095 days = 1 } } #Duel evaluation (hidden) + result event as follow-up. + } + ai_chance = { + factor = 40 + modifier = { + factor = 0.1 + trait = craven + } + modifier = { + factor = 1.5 + trait = brave + } + modifier = { + factor = 0.75 + is_tribal = no + is_nomadic = no + } + modifier = { + factor = 1.25 + ROOT = { attribute_diff = { character = FROM attribute = combat_rating value = 5 } } + } + modifier = { + factor = 1.25 + ROOT = { attribute_diff = { character = FROM attribute = combat_rating value = 10 } } + } + modifier = { + factor = 1.5 + ROOT = { attribute_diff = { character = FROM attribute = combat_rating value = 15 } } + } + modifier = { + factor = 1.75 + ROOT = { attribute_diff = { character = FROM attribute = combat_rating value = 20 } } + } + } + } + + option = { + name = EVTOPTAHF25216 + #Influence penalty based on opponent's strength. + if = { + limit = { + FROM = { + has_character_flag = arm_wrestling_strong + } + } + detract_society_currency_minor_effect = yes + } + if = { + limit = { + FROM = { + has_character_flag = arm_wrestling_medium + } + } + detract_society_currency_tiny_effect = yes + } + if = { + limit = { + FROM = { + has_character_flag = arm_wrestling_weak + } + } + detract_society_currency_trivial_effect = yes + hidden_tooltip = { #If defeated by a weak guy, gain nickname. + if = { + limit = { + has_nickname = no + } + random_list = { + 25 = { give_nickname = nick_the_feeble } + 25 = { give_nickname = nick_the_milkdrinker } + 25 = { + trigger = { is_female = no } + give_nickname = nick_the_girls_arm + } + 25 = { + trigger = { is_female = yes } + give_nickname = nick_the_flower + } + 25 = {} + } + } + } + } + opinion = { + who = FROM + modifier = opinion_lousy_winner + years = 5 + } + custom_tooltip = { text = TT_EVTOPTAHF25216 } + hidden_tooltip = { + any_society_member = { + limit = { + is_adult = yes + same_society_as = ROOT + NOT = { + character = FROM + } + } + opinion = { + who = ROOT + modifier = opinion_loser + years = 2 + } + } + warrior_lodge_arm_wrestling_cleanup_effect = yes + } + ai_chance = { factor = 100 } + } +} + +#You lost, but the winner is polite. +character_event = { + id = HF.25217 + title = EVTTITLEHF25200 + desc = EVTDESCHF25217 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + } + fail_trigger_effect = { + warrior_lodge_arm_wrestling_cleanup_effect = yes + } + option = { + name = EVTOPTAHF25217 + #Influence penalty based on opponent's strength. + if = { + limit = { + FROM = { + has_character_flag = arm_wrestling_strong + } + } + detract_society_currency_minor_effect = yes + } + if = { + limit = { + FROM = { + has_character_flag = arm_wrestling_medium + } + } + detract_society_currency_tiny_effect = yes + } + if = { + limit = { + FROM = { + has_character_flag = arm_wrestling_weak + } + } + detract_society_currency_trivial_effect = yes + hidden_tooltip = { #If defeated by a weak guy, gain nickname. + if = { + limit = { + has_nickname = no + } + random_list = { + 25 = { give_nickname = nick_the_feeble } + 25 = { give_nickname = nick_the_milkdrinker } + 25 = { + trigger = { is_female = no } + give_nickname = nick_the_girls_arm + } + 25 = { + trigger = { is_female = yes } + give_nickname = nick_the_flower + } + 25 = {} + } + } + } + } + opinion = { + who = FROM + modifier = opinion_kind_winner + years = 5 + } + hidden_tooltip = { + warrior_lodge_arm_wrestling_cleanup_effect = yes + } + ai_chance = { factor = 100 } + } +} + +####################################################################### +#Post-competition events. + +#Random society member sees winner and falls in love. +character_event = { + id = HF.25218 + desc = EVTDESCAHF25218 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + trigger = { + FROM = { is_alive = yes } + } + + option = { #Approach him. + name = EVTOPTAHF25218 + custom_tooltip = { text = TT_EVTOPTAHF25218 } + hidden_tooltip = { FROM = { character_event = { id = HF.25219 } } } + ai_chance = { factor = 100 } + } + option = { #Do nothing. + name = EVTOPTBHF25218 + ai_chance = { factor = 0 } + } +} + +#Winner is approached. Reciprocate? +character_event = { + id = HF.25219 + desc = EVTDESCAHF25219 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + trigger = { + FROM = { is_alive = yes } + } + + option = { #Yes. + name = EVTOPTAHF25219 + add_lover = FROM + hidden_tooltip = { FROM = { character_event = { id = HF.25220 } } } + ai_chance = { + factor = 70 + modifier = { + factor = 0 #Incompatible + FROM = { is_female = yes } + prefers_men_trigger = yes + } + modifier = { + factor = 0 #Incompatible + FROM = { is_female = no } + prefers_men_trigger = no + } + modifier = { + factor = 0 #Uninterested + trait = celibate + } + modifier = { + factor = 0 #Uninterested + trait = chaste + NOT = { is_married = FROM } + is_married = yes + } + modifier = { + factor = 0.85 + NOT = { age = 30 } + FROM = { age = 30 } + } + modifier = { + factor = 0.75 + NOT = { age = 40 } + FROM = { age = 40 } + } + modifier = { + factor = 0.75 + NOT = { age = 50 } + FROM = { age = 50 } + } + modifier = { + factor = 1.5 + FROM = { is_attractive_trigger = yes } + } + modifier = { + factor = 0.35 + FROM = { is_unattractive_trigger = yes } + } + modifier = { + factor = 1.5 + FROM = { has_fair_trait_trigger = yes } + } + modifier = { + factor = 1.5 + FROM = { trait = strong } + } + modifier = { + factor = 1.5 + FROM = { is_strong_trigger = yes } + } + modifier = { + factor = 0.5 + FROM = { is_weak_trigger = yes } + } + } + } + option = { #No. + name = EVTOPTBHF25219 + hidden_tooltip = { FROM = { character_event = { id = HF.25221 } } } + ai_chance = { + factor = 30 + modifier = { + factor = 0 + trait = lustful + } + } + } +} + +#Reciprocated. +character_event = { + id = HF.25220 + desc = EVTDESCAHF25220 + picture = GFX_evt_lovers + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + trigger = { + FROM = { is_alive = yes } + } + + option = { + name = EVTOPTAHF25220 + add_lover = FROM + ai_chance = { factor = 100 } + } +} + +#Rejected. +character_event = { + id = HF.25221 + desc = EVTDESCAHF25221 + picture = GFX_evt_quarrel + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + trigger = { + FROM = { is_alive = yes } + } + + option = { #Special option. - character starts duel! + name = EVTOPTYHF25221 + custom_tooltip = { text = tooltip_22022_Y } + trigger = { + this_can_duel_with_from_trigger = yes + } + opinion = { + modifier = opinion_antagonized_3 + who = ROOT + years = 15 + } + #REQUIRED event targets for setting up duel evaluation! + hidden_tooltip = { + save_event_target_as = combatant_1 #the person issuing the duel... + FROM = { save_event_target_as = combatant_2 } #the target of the duel... + } + FROM = { + show_scope_change = no + apply_degree_of_dishonorable_duel_effect = yes #checks a bunch of age and health statuses... + } + + pacifists_lose_piety_effect = yes + add_character_modifier = { + modifier = recent_duel_timer + duration = 365 + hidden = yes + } + hidden_tooltip = { + FROM = { character_event = { id = HFP.10095 days = 1 } } #Duel evaluation (hidden) + result event as follow-up. + } + ai_chance = { + factor = 40 + modifier = { + factor = 0.1 + trait = craven + } + modifier = { + factor = 1.5 + trait = brave + } + modifier = { + factor = 0.75 + is_tribal = no + is_nomadic = no + } + modifier = { + factor = 1.25 + ROOT = { attribute_diff = { character = FROM attribute = combat_rating value = 5 } } + } + modifier = { + factor = 1.25 + ROOT = { attribute_diff = { character = FROM attribute = combat_rating value = 10 } } + } + modifier = { + factor = 1.5 + ROOT = { attribute_diff = { character = FROM attribute = combat_rating value = 15 } } + } + modifier = { + factor = 1.75 + ROOT = { attribute_diff = { character = FROM attribute = combat_rating value = 20 } } + } + } + } + option = { + name = EVTOPTAHF25221 + if = { + limit = { is_evil_trigger = no } + random = { + chance = 15 + add_trait = depressed + } + } + ai_chance = { factor = 50 } + } +} + +#Friendship events +#Random society member sees winner and declares friendship. +character_event = { + id = HF.25222 + desc = EVTDESCAHF25222 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + trigger = { + FROM = { is_alive = yes } + } + + option = { #Approach him. + name = EVTOPTAHF25222 + custom_tooltip = { text = TT_EVTOPTAHF25222 } + hidden_tooltip = { FROM = { character_event = { id = HF.25223 } } } + ai_chance = { factor = 100 } + } + option = { #Do nothing. + name = EVTOPTBHF25222 + ai_chance = { factor = 0 } + } +} + +#Winner is approached. Reciprocate? +character_event = { + id = HF.25223 + desc = EVTDESCAHF25223 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + trigger = { + FROM = { is_alive = yes } + } + + option = { #Yes. + name = EVTOPTAHF25223 + add_friend = FROM + hidden_tooltip = { FROM = { character_event = { id = HF.25224 } } } + ai_chance = { + factor = 70 + modifier = { + factor = 0.85 + NOT = { age = 30 } + FROM = { age = 30 } + } + modifier = { + factor = 0.75 + NOT = { age = 40 } + FROM = { age = 40 } + } + modifier = { + factor = 0.75 + NOT = { age = 50 } + FROM = { age = 50 } + } + modifier = { + factor = 1.5 + is_smart_trigger = yes + FROM = { is_smart_trigger = yes } + } + modifier = { + factor = 1.5 + FROM = { is_strong_trigger = yes } + } + modifier = { + factor = 0.5 + FROM = { is_weak_trigger = yes } + } + modifier = { + factor = 0.5 + ROOT = { FROM = { has_at_least_3_traits_opposite_prev_trigger = yes } } + } + } + } + option = { #No. + name = EVTOPTBHF25223 + hidden_tooltip = { FROM = { character_event = { id = HF.25225 } } } + ai_chance = { + factor = 30 + modifier = { + factor = 0 + trait = lustful + } + } + } +} + +#Reciprocated. +character_event = { + id = HF.25224 + desc = EVTDESCAHF25224 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + trigger = { + FROM = { is_alive = yes } + } + + option = { + name = EVTOPTAHF25224 + add_friend = FROM + ai_chance = { factor = 100 } + } +} + +#Rejected. +character_event = { + id = HF.25225 + desc = EVTDESCAHF25225 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + trigger = { + FROM = { is_alive = yes } + } + + option = { + name = EVTOPTAHF25225 + if = { + limit = { is_evil_trigger = no } + random = { + chance = 15 + add_trait = stressed + } + } + ai_chance = { factor = 50 } + } +} + +############################################# + + # Dice-throwing # + +############################################# +#Warrior Lodge Member is offered chance to start. +character_event = { + id = HF.25226 + title = EVTTITLEHF25226 + desc = EVTDESCHF25226 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + ai = no + + trigger = { + ai = no #Only involves one character. + is_adult = yes + in_command = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = incapable } + NOT = { has_character_flag = do_not_disturb } + is_member_of_any_warrior_lodge_trigger = yes + OR = { + society_member_of = warrior_lodge_bon + society_member_of = warrior_lodge_hellenic + } + wealth = 75 + } + + immediate = { + random_list = { + 33 = { sound_effect = pagan_cheering_01 } + 33 = { sound_effect = pagan_cheering_02 } + 33 = { sound_effect = pagan_cheering_03 } + 33 = { sound_effect = warrior_lodge_ambient_02 } + } + warrior_lodge_dice_game_cleanup_effect = yes + } + + is_triggered_only = yes + + option = { #Start playing. + name = EVTOPTAHF25226 + character_event = { id = HF.25228 } + } + option = { #Refuse to join. + name = EVTOPTBHF25226 + detract_society_currency_minor_effect = yes + } +} + +#Decide how much to bet. - Integrated in event below. +#character_event = { +# id = HF.25227 +# title = EVTTITLEHF25226 +# desc = EVTDESCHF25227 +# picture = GFX_evt_camaraderie +# border = GFX_event_normal_frame_diplomacy +# +# is_triggered_only = yes +# +# trigger = { +# OR = { +# society_member_of = warrior_lodge_bon +## society_member_of = warrior_lodge_hellenic +# } +# } +# +# option = { # +# name = EVTOPTAHF25227 +# trigger = { wealth = 500 } +# custom_tooltip = { text = TT_EVTOPTAHF25227 } +# set_character_flag = flag_betting_money_500 +# } +# option = { # +# name = EVTOPTBHF25227 +# trigger = { wealth = 250 } +# custom_tooltip = { text = TT_EVTOPTBHF25227 } +# set_character_flag = flag_betting_money_250 +# } +# option = { # +# name = EVTOPTCHF25227 +# custom_tooltip = { text = TT_EVTOPTCHF25227 } +# set_character_flag = flag_betting_money_100 +# } +# option = { # +# name = EVTOPTDHF25227 +# custom_tooltip = { text = TT_EVTOPTDHF25227 } +# set_character_flag = flag_betting_money_50 +# } +# after = { +# hidden_tooltip = { character_event = { id = HF.25228 } } +# } +#} + +#Decide what side to bet on. (from highest to lowest stake). +character_event = { + id = HF.25228 + title = EVTTITLEHF25226 + desc = EVTDESCHF25228 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + trigger = { + OR = { + society_member_of = warrior_lodge_bon + society_member_of = warrior_lodge_hellenic + } + } + is_triggered_only = yes + + option = { + name = { + text = EVTOPTDHF25228 + trigger = { + society_member_of = warrior_lodge_bon + } + } + name = { + text = EVTOPTDHF25228_HELLENIC #Dionysus + trigger = { + society_member_of = warrior_lodge_hellenic + } + } + trigger = { + OR = { + wealth = 500 + AND = { + OR = { is_tribal = yes is_nomadic = yes } + wealth = 100 + } + } + } + custom_tooltip = { text = tooltip_betting_hardest_side } + if = { + limit = { + NOR = { + is_tribal = yes + is_nomadic = yes + } + } + custom_tooltip = { text = tooltip_betting_500_gold } + set_character_flag = flag_betting_money_500 + } + if = { + limit = { + OR = { + is_tribal = yes + is_nomadic = yes + } + } + custom_tooltip = { text = tooltip_betting_100_gold } + set_character_flag = flag_betting_money_100 + } + set_character_flag = flag_betting_on_kali + } + option = { + name = { + text = EVTOPTCHF25228 + trigger = { + society_member_of = warrior_lodge_bon + } + } + name = { + text = EVTOPTCHF25228_HELLENIC #Hermes + trigger = { + society_member_of = warrior_lodge_hellenic + } + } + trigger = { + OR = { + wealth = 250 + AND = { + OR = { is_tribal = yes is_nomadic = yes } + wealth = 50 + } + } + } + custom_tooltip = { text = tooltip_betting_hard_side } + if = { + limit = { + NOR = { + is_tribal = yes + is_nomadic = yes + } + } + custom_tooltip = { text = tooltip_betting_250_gold } + set_character_flag = flag_betting_money_250 + } + if = { + limit = { + OR = { + is_tribal = yes + is_nomadic = yes + } + } + custom_tooltip = { text = tooltip_betting_50_gold } + set_character_flag = flag_betting_money_50 + } + set_character_flag = flag_betting_on_dwapara + } + option = { + name = { + text = EVTOPTBHF25228 + trigger = { + society_member_of = warrior_lodge_bon + } + } + name = { + text = EVTOPTBHF25228_HELLENIC #Athena + trigger = { + society_member_of = warrior_lodge_hellenic + } + } + trigger = { + OR = { + wealth = 100 + AND = { + OR = { is_tribal = yes is_nomadic = yes } + wealth = 25 + } + } + } + custom_tooltip = { text = tooltip_betting_easy_side } + if = { + limit = { + NOR = { + is_tribal = yes + is_nomadic = yes + } + } + custom_tooltip = { text = tooltip_betting_100_gold } + set_character_flag = flag_betting_money_100 + } + if = { + limit = { + OR = { + is_tribal = yes + is_nomadic = yes + } + } + custom_tooltip = { text = tooltip_betting_25_gold } + set_character_flag = flag_betting_money_25 + } + set_character_flag = flag_betting_on_treta + } + option = { + name = { + text = EVTOPTAHF25228 + trigger = { + society_member_of = warrior_lodge_bon + } + } + name = { + text = EVTOPTAHF25228_HELLENIC #Apollo + trigger = { + society_member_of = warrior_lodge_hellenic + } + } + custom_tooltip = { text = tooltip_betting_easiest_side } + if = { + limit = { + NOR = { + is_tribal = yes + is_nomadic = yes + } + } + custom_tooltip = { text = tooltip_betting_50_gold } + set_character_flag = flag_betting_money_50 + } + if = { + limit = { + OR = { + is_tribal = yes + is_nomadic = yes + } + } + custom_tooltip = { text = tooltip_betting_10_gold } + set_character_flag = flag_betting_money_10 + } + set_character_flag = flag_betting_on_krita + } + after = { + hidden_tooltip = { character_event = { id = HF.25229 } } + } +} + +#Almost time to throw. +character_event = { + id = HF.25229 + title = EVTTITLEHF25226 + desc = EVTDESCHF25229 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + trigger = { + OR = { + society_member_of = warrior_lodge_bon + society_member_of = warrior_lodge_hellenic + } + } + is_triggered_only = yes + + option = { #Use weighted die. + name = EVTOPTAHF25229 + trigger = { intrigue = 15 } + tooltip_info = intrigue + random_list = { + 30 = { + #Discovered. + custom_tooltip = { text = TT_FAKE_DIE_DISCOVERED } + hidden_tooltip = { character_event = { id = HF.25230 } } + } + 70 = { + #Unnoticed. + custom_tooltip = { text = TT_FAKE_DIE_WINS } + hidden_tooltip = { character_event = { id = HF.25231 } } + } + } + } + option = { #Use weighted die. + name = EVTOPTAHF25229 + trigger = { trait = schemer NOT = { intrigue = 15 } } + tooltip_info = schemer + random_list = { + 30 = { + #Discovered. + custom_tooltip = { text = TT_FAKE_DIE_DISCOVERED } + hidden_tooltip = { character_event = { id = HF.25230 } } + } + 70 = { + #Unnoticed. + custom_tooltip = { text = TT_FAKE_DIE_WINS } + hidden_tooltip = { character_event = { id = HF.25231 } } + } + } + } + option = { #Bump under the table. + name = EVTOPTBHF25229 + trigger = { intrigue = 8 } + tooltip_info = intrigue + random_list = { + 30 = { + #Discovered. + custom_tooltip = { text = TT_DIE_TABLE_BUMP_DISCOVERED } + hidden_tooltip = { character_event = { id = HF.25232 } } + } + 10 = { + #Fails + custom_tooltip = { text = TT_DIE_TABLE_BUMP_FAILS } + hidden_tooltip = { character_event = { id = HF.25233 } } + } + 60 = { + #Unnoticed. + custom_tooltip = { text = TT_DIE_TABLE_BUMP_WINS } + hidden_tooltip = { character_event = { id = HF.25234 } } + } + } + } + option = { #Bump under the table. + name = EVTOPTBHF25229 + trigger = { trait = deceitful NOT = { intrigue = 8 } } + tooltip_info = deceitful + random_list = { + 30 = { + #Discovered. + custom_tooltip = { text = TT_DIE_TABLE_BUMP_DISCOVERED } + hidden_tooltip = { character_event = { id = HF.25232 } } + } + 10 = { + #Fails + custom_tooltip = { text = TT_DIE_TABLE_BUMP_FAILS } + hidden_tooltip = { character_event = { id = HF.25233 } } + } + 60 = { + #Unnoticed. + custom_tooltip = { text = TT_DIE_TABLE_BUMP_WINS } + hidden_tooltip = { character_event = { id = HF.25234 } } + } + } + } + option = { #Play fair. + name = EVTOPTCHF25229 + custom_tooltip = { text = TT_EVTOPTCHF25229 } + hidden_tooltip = { + random_list = { + 60 = { + #Krita. + set_character_flag = flag_warrior_lodge_die_is_krita + hidden_tooltip = { character_event = { id = HF.25235 } } + } + 25 = { + #Treta. + set_character_flag = flag_warrior_lodge_die_is_treta + hidden_tooltip = { character_event = { id = HF.25235 } } + } + 10 = { + #Dwapara. + set_character_flag = flag_warrior_lodge_die_is_dwapara + hidden_tooltip = { character_event = { id = HF.25235 } } + } + 5 = { + #Kali. + set_character_flag = flag_warrior_lodge_die_is_kali + hidden_tooltip = { character_event = { id = HF.25235 } } + } + } + } + } +} + +#Discovered using fake die. +character_event = { + id = HF.25230 + title = EVTTITLEHF25226 + desc = { + text = EVTDESCHF25230 + trigger = { + event_target:random_society_winner = { is_alive = no } + } + } + desc = { + text = EVTDESCHF25230_B + trigger = { + event_target:random_society_winner = { is_alive = yes } + } + } + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + trigger = { + OR = { + society_member_of = warrior_lodge_bon + society_member_of = warrior_lodge_hellenic + } + } + is_triggered_only = yes + + immediate = { + random_society_member = { + limit = { + is_adult = yes + same_society_as = ROOT + NOR = { + character = ROOT + trait = incapable + } + } + save_event_target_as = random_society_winner + } + } + + option = { #Pay. + name = EVTOPTAHF25230 + trigger = { event_target:random_society_winner = { is_alive = no } } + custom_tooltip = { text = TT_EVTOPTAHF25230 } + detract_society_currency_minor_effect = yes + warrior_lodge_pay_dice_debt_effect = yes + hidden_tooltip = { + any_society_member = { + limit = { + is_adult = yes + same_society_as = ROOT + NOT = { + character = FROM + } + } + opinion = { + who = ROOT + modifier = opinion_cheater + years = 5 + } + } + } + } + option = { #Special option. - Character starts duel! + name = EVTOPTYHF25230 + custom_tooltip = { text = tooltip_EVTOPTYHF25230 } + trigger = { + event_target:random_society_winner = { + ai = yes + is_alive = yes + this_can_duel_with_from_trigger = yes + } + } + tiered_prestige_negative_effect = yes + warrior_lodge_dice_game_cleanup_effect = yes + #REQUIRED event targets for setting up duel evaluation! + hidden_tooltip = { + save_event_target_as = combatant_1 #the person issuing the duel... + event_target:random_society_winner = { save_event_target_as = combatant_2 } #the target of the duel... + } + event_target:random_society_winner = { + show_scope_change = no + apply_degree_of_dishonorable_duel_effect = yes #checks a bunch of age and health statuses... + } + + pacifists_lose_piety_effect = yes + add_character_modifier = { + modifier = recent_duel_timer + duration = 365 + hidden = yes + } + hidden_tooltip = { + event_target:random_society_winner = { character_event = { id = HFP.10095 days = 1 } } #Duel evaluation (hidden) + result event as follow-up. + } + ai_chance = { + factor = 20 + modifier = { + factor = 0.1 + trait = craven + } + modifier = { + factor = 1.5 + trait = brave + } + modifier = { + factor = 0.75 + is_tribal = no + is_nomadic = no + } + modifier = { + factor = 1.25 + ROOT = { attribute_diff = { character = event_target:random_society_winner attribute = combat_rating value = 5 } } + } + modifier = { + factor = 1.25 + ROOT = { attribute_diff = { character = event_target:random_society_winner attribute = combat_rating value = 10 } } + } + modifier = { + factor = 1.5 + ROOT = { attribute_diff = { character = event_target:random_society_winner attribute = combat_rating value = 15 } } + } + modifier = { + factor = 1.75 + ROOT = { attribute_diff = { character = event_target:random_society_winner attribute = combat_rating value = 20 } } + } + } + } + option = { #Pay your debtor. + name = EVTOPTBHF25230 + trigger = { event_target:random_society_winner = { is_alive = yes } } + custom_tooltip = { text = TT_EVTOPTAHF25230 } + detract_society_currency_minor_effect = yes + warrior_lodge_pay_dice_debt_effect = yes + hidden_tooltip = { + event_target:random_society_winner = { character_event = { id = HF.25239 } } #Notify other warrior. + any_society_member = { + limit = { + is_adult = yes + same_society_as = ROOT + NOT = { + character = FROM + } + } + opinion = { + who = ROOT + modifier = opinion_cheater + years = 5 + } + } + } + } + option = { #Call in favor. + name = EVTOPTCHF25230 + trigger = { + event_target:random_society_winner = { + is_alive = yes + owes_favor_to = ROOT + } + } + custom_tooltip = { text = TT_EVTOPTAHF25230 } + detract_society_currency_minor_effect = yes + event_target:random_society_winner = { + remove_favor = ROOT + } + hidden_tooltip = { + event_target:random_society_winner = { character_event = { id = HF.25240 } } #Notify other warrior. + any_society_member = { + limit = { + is_adult = yes + same_society_as = ROOT + NOT = { + character = FROM + } + } + opinion = { + who = ROOT + modifier = opinion_cheater + years = 5 + } + } + } + } + option = { #Pay with favor. + name = EVTOPTDHF25230 + trigger = { + event_target:random_society_winner = { + is_alive = yes + NOT = { owes_favor_to = ROOT } + } + NOT = { owes_favor_to = event_target:random_society_winner } + } + custom_tooltip = { text = TT_EVTOPTAHF25230 } + detract_society_currency_minor_effect = yes + event_target:random_society_winner = { + add_favor = ROOT + } + hidden_tooltip = { + event_target:random_society_winner = { character_event = { id = HF.25241 } } #Notify other warrior. + any_society_member = { + limit = { + is_adult = yes + same_society_as = ROOT + NOT = { + character = FROM + } + } + opinion = { + who = ROOT + modifier = opinion_cheater + years = 5 + } + } + } + } + after = { + warrior_lodge_dice_game_cleanup_effect = yes + } +} + +#Won using fake die. +character_event = { + id = HF.25231 + title = EVTTITLEHF25226 + desc = EVTDESCHF25231 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + trigger = { + OR = { + society_member_of = warrior_lodge_bon + society_member_of = warrior_lodge_hellenic + } + } + is_triggered_only = yes + + option = { #Double or nothing. + name = EVTOPTAHF25231 + if = { + limit = { has_character_flag = flag_betting_money_500 } + clr_character_flag = flag_betting_money_500 + set_character_flag = flag_betting_money_1000 + custom_tooltip = { text = tooltip_betting_1000_gold } + } + else_if = { + limit = { has_character_flag = flag_betting_money_250 } + clr_character_flag = flag_betting_money_250 + set_character_flag = flag_betting_money_500 + custom_tooltip = { text = tooltip_betting_500_gold } + } + else_if = { + limit = { has_character_flag = flag_betting_money_100 } + clr_character_flag = flag_betting_money_100 + set_character_flag = flag_betting_money_200 + custom_tooltip = { text = tooltip_betting_200_gold } + } + else_if = { + limit = { has_character_flag = flag_betting_money_50 } + clr_character_flag = flag_betting_money_50 + set_character_flag = flag_betting_money_100 + custom_tooltip = { text = tooltip_betting_100_gold } + } + else_if = { + limit = { has_character_flag = flag_betting_money_25 } + clr_character_flag = flag_betting_money_25 + set_character_flag = flag_betting_money_50 + custom_tooltip = { text = tooltip_betting_50_gold } + } + else_if = { + limit = { has_character_flag = flag_betting_money_10 } + clr_character_flag = flag_betting_money_10 + set_character_flag = flag_betting_money_20 + custom_tooltip = { text = tooltip_betting_20_gold } + } + random_list = { + 50 = { + #Discovered. + custom_tooltip = { text = TT_FAKE_DIE_DISCOVERED } + hidden_tooltip = { character_event = { id = HF.25230 } } + } + 50 = { + #Unnoticed. + custom_tooltip = { text = TT_FAKE_DIE_WINS } + hidden_tooltip = { character_event = { id = HF.25237 } } + } + } + } + option = { #Leave while ahead. + name = EVTOPTBHF25231 + warrior_lodge_get_dice_bet_effect = yes + warrior_lodge_dice_game_cleanup_effect = yes + } +} + +#Discovered bumping the table. +character_event = { + id = HF.25232 + title = EVTTITLEHF25226 + desc = { + text = EVTDESCHF25232 + trigger = { + event_target:random_society_winner = { is_alive = no } + } + } + desc = { + text = EVTDESCHF25232_B + trigger = { + event_target:random_society_winner = { is_alive = yes } + } + } + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + trigger = { + OR = { + society_member_of = warrior_lodge_bon + society_member_of = warrior_lodge_hellenic + } + } + is_triggered_only = yes + + immediate = { + random_society_member = { + limit = { + is_adult = yes + same_society_as = ROOT + NOR = { + character = ROOT + trait = incapable + } + } + save_event_target_as = random_society_winner + } + } + + option = { #Special option. - Character starts duel! + name = EVTOPTYHF25230 + custom_tooltip = { text = tooltip_EVTOPTYHF25230 } + trigger = { + event_target:random_society_winner = { + ai = yes + is_alive = yes + this_can_duel_with_from_trigger = yes + } + } + tiered_prestige_negative_effect = yes + warrior_lodge_dice_game_cleanup_effect = yes + #REQUIRED event targets for setting up duel evaluation! + hidden_tooltip = { + save_event_target_as = combatant_1 #the person issuing the duel... + event_target:random_society_winner = { save_event_target_as = combatant_2 } #the target of the duel... + } + event_target:random_society_winner = { + show_scope_change = no + apply_degree_of_dishonorable_duel_effect = yes #checks a bunch of age and health statuses... + } + + pacifists_lose_piety_effect = yes + add_character_modifier = { + modifier = recent_duel_timer + duration = 365 + hidden = yes + } + hidden_tooltip = { + event_target:random_society_winner = { character_event = { id = HFP.10095 days = 1 } } #Duel evaluation (hidden) + result event as follow-up. + } + ai_chance = { + factor = 20 + modifier = { + factor = 0.1 + trait = craven + } + modifier = { + factor = 1.5 + trait = brave + } + modifier = { + factor = 0.75 + is_tribal = no + is_nomadic = no + } + modifier = { + factor = 1.25 + ROOT = { attribute_diff = { character = event_target:random_society_winner attribute = combat_rating value = 5 } } + } + modifier = { + factor = 1.25 + ROOT = { attribute_diff = { character = event_target:random_society_winner attribute = combat_rating value = 10 } } + } + modifier = { + factor = 1.5 + ROOT = { attribute_diff = { character = event_target:random_society_winner attribute = combat_rating value = 15 } } + } + modifier = { + factor = 1.75 + ROOT = { attribute_diff = { character = event_target:random_society_winner attribute = combat_rating value = 20 } } + } + } + } + option = { #Pay your debtor. + name = EVTOPTBHF25230 + trigger = { event_target:random_society_winner = { is_alive = yes } } + custom_tooltip = { text = TT_EVTOPTAHF25230 } + detract_society_currency_minor_effect = yes + warrior_lodge_pay_dice_debt_effect = yes + hidden_tooltip = { + event_target:random_society_winner = { character_event = { id = HF.25239 } } #Notify other warrior. + any_society_member = { + limit = { + is_adult = yes + same_society_as = ROOT + NOT = { + character = FROM + } + } + opinion = { + who = ROOT + modifier = opinion_cheater + years = 5 + } + } + } + } + option = { #Call in favor. + name = EVTOPTCHF25230 + trigger = { + event_target:random_society_winner = { + is_alive = yes + owes_favor_to = ROOT + } + } + custom_tooltip = { text = TT_EVTOPTAHF25230 } + detract_society_currency_minor_effect = yes + event_target:random_society_winner = { + remove_favor = ROOT + } + hidden_tooltip = { + event_target:random_society_winner = { character_event = { id = HF.25240 } } #Notify other warrior. + any_society_member = { + limit = { + is_adult = yes + same_society_as = ROOT + NOT = { + character = FROM + } + } + opinion = { + who = ROOT + modifier = opinion_cheater + years = 5 + } + } + } + } + option = { #Pay with favor. + name = EVTOPTDHF25230 + trigger = { + event_target:random_society_winner = { + is_alive = yes + NOT = { owes_favor_to = ROOT } + } + NOT = { owes_favor_to = event_target:random_society_winner } + } + custom_tooltip = { text = TT_EVTOPTAHF25230 } + detract_society_currency_minor_effect = yes + event_target:random_society_winner = { + add_favor = ROOT + } + hidden_tooltip = { + event_target:random_society_winner = { character_event = { id = HF.25241 } } #Notify other warrior. + any_society_member = { + limit = { + is_adult = yes + same_society_as = ROOT + NOT = { + character = FROM + } + } + opinion = { + who = ROOT + modifier = opinion_cheater + years = 5 + } + } + } + } + option = { # + name = EVTOPTAHF25232 + trigger = { event_target:random_society_winner = { is_alive = no } } + custom_tooltip = { text = TT_EVTOPTAHF25232 } + detract_society_currency_tiny_effect = yes + warrior_lodge_pay_dice_debt_effect = yes + hidden_tooltip = { + any_society_member = { + limit = { + is_adult = yes + same_society_as = ROOT + NOT = { + character = FROM + } + } + opinion = { + who = ROOT + modifier = opinion_cheater + years = 5 + } + } + } + } + after = { + warrior_lodge_dice_game_cleanup_effect = yes + } +} + +#Failed to cheat. +character_event = { + id = HF.25233 + title = EVTTITLEHF25226 + desc = { + text = EVTDESCHF25233 + trigger = { + event_target:random_society_winner = { is_alive = no } + } + } + desc = { + text = EVTDESCHF25233_B + trigger = { + event_target:random_society_winner = { is_alive = yes } + } + } + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + trigger = { + OR = { + society_member_of = warrior_lodge_bon + society_member_of = warrior_lodge_hellenic + } + } + is_triggered_only = yes + + immediate = { + random_society_member = { + limit = { + is_adult = yes + same_society_as = ROOT + NOR = { + character = ROOT + trait = incapable + } + } + save_event_target_as = random_society_winner + } + } + + option = { #Special option. - Character starts duel! + name = EVTOPTYHF25230 + custom_tooltip = { text = tooltip_EVTOPTYHF25230 } + trigger = { + event_target:random_society_winner = { + ai = yes + is_alive = yes + this_can_duel_with_from_trigger = yes + } + } + tiered_prestige_negative_effect = yes + warrior_lodge_dice_game_cleanup_effect = yes + #REQUIRED event targets for setting up duel evaluation! + hidden_tooltip = { + save_event_target_as = combatant_1 #the person issuing the duel... + event_target:random_society_winner = { save_event_target_as = combatant_2 } #the target of the duel... + } + event_target:random_society_winner = { + show_scope_change = no + apply_degree_of_dishonorable_duel_effect = yes #checks a bunch of age and health statuses... + } + + pacifists_lose_piety_effect = yes + add_character_modifier = { + modifier = recent_duel_timer + duration = 365 + hidden = yes + } + hidden_tooltip = { + event_target:random_society_winner = { character_event = { id = HFP.10095 days = 1 } } #Duel evaluation (hidden) + result event as follow-up. + } + ai_chance = { + factor = 20 + modifier = { + factor = 0.1 + trait = craven + } + modifier = { + factor = 1.5 + trait = brave + } + modifier = { + factor = 0.75 + is_tribal = no + is_nomadic = no + } + modifier = { + factor = 1.25 + ROOT = { attribute_diff = { character = event_target:random_society_winner attribute = combat_rating value = 5 } } + } + modifier = { + factor = 1.25 + ROOT = { attribute_diff = { character = event_target:random_society_winner attribute = combat_rating value = 10 } } + } + modifier = { + factor = 1.5 + ROOT = { attribute_diff = { character = event_target:random_society_winner attribute = combat_rating value = 15 } } + } + modifier = { + factor = 1.75 + ROOT = { attribute_diff = { character = event_target:random_society_winner attribute = combat_rating value = 20 } } + } + } + } + option = { #Pay your debtor. + name = EVTOPTBHF25230 + trigger = { event_target:random_society_winner = { is_alive = yes } } + warrior_lodge_pay_dice_debt_effect = yes + hidden_tooltip = { + event_target:random_society_winner = { character_event = { id = HF.25239 } } #Notify other warrior. + } + } + option = { #Call in favor. + name = EVTOPTCHF25230 + trigger = { + event_target:random_society_winner = { + is_alive = yes + owes_favor_to = ROOT + } + } + event_target:random_society_winner = { + remove_favor = ROOT + } + hidden_tooltip = { + event_target:random_society_winner = { character_event = { id = HF.25240 } } #Notify other warrior. + } + } + option = { #Pay with favor. + name = EVTOPTDHF25230 + trigger = { + event_target:random_society_winner = { + is_alive = yes + NOT = { owes_favor_to = ROOT } + } + NOT = { owes_favor_to = event_target:random_society_winner } + } + event_target:random_society_winner = { + add_favor = ROOT + } + hidden_tooltip = { + event_target:random_society_winner = { character_event = { id = HF.25241 } } #Notify other warrior. + } + } + option = { # + name = EVTOPTAHF25233 + trigger = { event_target:random_society_winner = { is_alive = no } } + warrior_lodge_pay_dice_debt_effect = yes + } + after = { + warrior_lodge_dice_game_cleanup_effect = yes + } +} + +#Won bumping the table. +character_event = { + id = HF.25234 + title = EVTTITLEHF25226 + desc = EVTDESCHF25234 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + trigger = { + OR = { + society_member_of = warrior_lodge_bon + society_member_of = warrior_lodge_hellenic + } + } + is_triggered_only = yes + + option = { #Double or nothing. + name = EVTOPTAHF25234 + warrior_lodge_double_dice_bet_effect = yes + random_list = { + 40 = { + #Discovered. + custom_tooltip = { text = TT_DIE_TABLE_BUMP_DISCOVERED } + hidden_tooltip = { character_event = { id = HF.25232 } } + } + 30 = { + #Fails + custom_tooltip = { text = TT_DIE_TABLE_BUMP_FAILS } + hidden_tooltip = { character_event = { id = HF.25233 } } + } + 30 = { + #Unnoticed. + custom_tooltip = { text = TT_DIE_TABLE_BUMP_WINS } + hidden_tooltip = { character_event = { id = HF.25238 } } + } + } + } + option = { # + name = EVTOPTBHF25234 + warrior_lodge_get_dice_bet_effect = yes + warrior_lodge_dice_game_cleanup_effect = yes + } +} + +#Die has been cast. +character_event = { + id = HF.25235 + title = EVTTITLEHF25226 + desc = { + text = EVTDESCHF25235 #You won. + trigger = { + OR = { + AND = { + has_character_flag = flag_warrior_lodge_die_is_krita + has_character_flag = flag_betting_on_krita + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_treta + has_character_flag = flag_betting_on_treta + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_dwapara + has_character_flag = flag_betting_on_dwapara + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_kali + has_character_flag = flag_betting_on_kali + } + } + } + } + desc = { + text = EVTDESCHF25235_B #You lost. + trigger = { + event_target:random_society_winner = { is_alive = yes } + NOR = { + AND = { + has_character_flag = flag_warrior_lodge_die_is_krita + has_character_flag = flag_betting_on_krita + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_treta + has_character_flag = flag_betting_on_treta + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_dwapara + has_character_flag = flag_betting_on_dwapara + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_kali + has_character_flag = flag_betting_on_kali + } + } + } + } + desc = { + text = EVTDESCHF25235 #You lost. - No winner. + trigger = { + event_target:random_society_winner = { is_alive = no } + NOR = { + AND = { + has_character_flag = flag_warrior_lodge_die_is_krita + has_character_flag = flag_betting_on_krita + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_treta + has_character_flag = flag_betting_on_treta + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_dwapara + has_character_flag = flag_betting_on_dwapara + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_kali + has_character_flag = flag_betting_on_kali + } + } + } + } + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + trigger = { + OR = { + society_member_of = warrior_lodge_bon + society_member_of = warrior_lodge_hellenic + } + } + is_triggered_only = yes + + immediate = { + if = { + limit = { + NOR = { + AND = { + has_character_flag = flag_warrior_lodge_die_is_krita + has_character_flag = flag_betting_on_krita + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_treta + has_character_flag = flag_betting_on_treta + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_dwapara + has_character_flag = flag_betting_on_dwapara + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_kali + has_character_flag = flag_betting_on_kali + } + } + } + random_society_member = { + limit = { + is_adult = yes + same_society_as = ROOT + NOR = { + character = ROOT + trait = incapable + } + } + save_event_target_as = random_society_winner + } + } + } + + option = { #You won. Double or nothing. + name = EVTOPTAHF25235 + trigger = { + OR = { + AND = { + has_character_flag = flag_warrior_lodge_die_is_krita + has_character_flag = flag_betting_on_krita + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_treta + has_character_flag = flag_betting_on_treta + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_dwapara + has_character_flag = flag_betting_on_dwapara + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_kali + has_character_flag = flag_betting_on_kali + } + } + } + warrior_lodge_double_dice_bet_effect = yes + add_legend_progress_trivial_effect = yes + hidden_tooltip = { + clr_character_flag = flag_warrior_lodge_die_is_krita + clr_character_flag = flag_warrior_lodge_die_is_treta + clr_character_flag = flag_warrior_lodge_die_is_dwapara + clr_character_flag = flag_warrior_lodge_die_is_kali + random_list = { + 60 = { + #Krita. + set_character_flag = flag_warrior_lodge_die_is_krita + hidden_tooltip = { character_event = { id = HF.25236 } } + } + 40 = { + #Treta. + set_character_flag = flag_warrior_lodge_die_is_treta + hidden_tooltip = { character_event = { id = HF.25236 } } + } + 20 = { + #Dwapara. + set_character_flag = flag_warrior_lodge_die_is_dwapara + hidden_tooltip = { character_event = { id = HF.25236 } } + } + 10 = { + #Kali. + set_character_flag = flag_warrior_lodge_die_is_kali + hidden_tooltip = { character_event = { id = HF.25236 } } + } + } + } + } + option = { #You won. Leave while ahead. + name = EVTOPTBHF25235 + trigger = { + OR = { + AND = { + has_character_flag = flag_warrior_lodge_die_is_krita + has_character_flag = flag_betting_on_krita + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_treta + has_character_flag = flag_betting_on_treta + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_dwapara + has_character_flag = flag_betting_on_dwapara + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_kali + has_character_flag = flag_betting_on_kali + } + } + } + warrior_lodge_get_dice_bet_effect = yes + warrior_lodge_dice_game_cleanup_effect = yes + } + option = { #You lost. + name = EVTOPTCHF25235 + trigger = { + event_target:random_society_winner = { is_alive = no } + NOR = { + AND = { + has_character_flag = flag_warrior_lodge_die_is_krita + has_character_flag = flag_betting_on_krita + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_treta + has_character_flag = flag_betting_on_treta + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_dwapara + has_character_flag = flag_betting_on_dwapara + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_kali + has_character_flag = flag_betting_on_kali + } + } + } + warrior_lodge_pay_dice_debt_effect = yes + warrior_lodge_dice_game_cleanup_effect = yes + } + option = { #Special option. - Sore loser starts duel! + name = EVTOPTYHF25235 + custom_tooltip = { text = tooltip_EVTOPTYHF25235 } + trigger = { + trait = arbitrary + event_target:random_society_winner = { + ai = yes + is_alive = yes + this_can_duel_with_from_trigger = yes + } + NOR = { + AND = { + has_character_flag = flag_warrior_lodge_die_is_krita + has_character_flag = flag_betting_on_krita + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_treta + has_character_flag = flag_betting_on_treta + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_dwapara + has_character_flag = flag_betting_on_dwapara + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_kali + has_character_flag = flag_betting_on_kali + } + } + } + tooltip_info = arbitrary + tiered_prestige_negative_effect = yes + warrior_lodge_dice_game_cleanup_effect = yes + #REQUIRED event targets for setting up duel evaluation! + hidden_tooltip = { + save_event_target_as = combatant_1 #the person issuing the duel... + event_target:random_society_winner = { save_event_target_as = combatant_2 } #the target of the duel... + } + event_target:random_society_winner = { + show_scope_change = no + apply_degree_of_dishonorable_duel_effect = yes #checks a bunch of age and health statuses... + } + + pacifists_lose_piety_effect = yes + add_character_modifier = { + modifier = recent_duel_timer + duration = 365 + hidden = yes + } + hidden_tooltip = { + event_target:random_society_winner = { character_event = { id = HFP.10095 days = 1 } } #Duel evaluation (hidden) + result event as follow-up. + } + ai_chance = { + factor = 20 + modifier = { + factor = 0.1 + trait = craven + } + modifier = { + factor = 1.5 + trait = brave + } + modifier = { + factor = 0.75 + is_tribal = no + is_nomadic = no + } + modifier = { + factor = 1.25 + ROOT = { attribute_diff = { character = event_target:random_society_winner attribute = combat_rating value = 5 } } + } + modifier = { + factor = 1.25 + ROOT = { attribute_diff = { character = event_target:random_society_winner attribute = combat_rating value = 10 } } + } + modifier = { + factor = 1.5 + ROOT = { attribute_diff = { character = event_target:random_society_winner attribute = combat_rating value = 15 } } + } + modifier = { + factor = 1.75 + ROOT = { attribute_diff = { character = event_target:random_society_winner attribute = combat_rating value = 20 } } + } + } + } + option = { #You lost. Pay your debtor. + name = EVTOPTBHF25230 + trigger = { + event_target:random_society_winner = { is_alive = yes } + NOR = { + AND = { + has_character_flag = flag_warrior_lodge_die_is_krita + has_character_flag = flag_betting_on_krita + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_treta + has_character_flag = flag_betting_on_treta + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_dwapara + has_character_flag = flag_betting_on_dwapara + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_kali + has_character_flag = flag_betting_on_kali + } + } + } + warrior_lodge_pay_dice_debt_effect = yes + hidden_tooltip = { + event_target:random_society_winner = { character_event = { id = HF.25239 } } #Notify other warrior. + } + warrior_lodge_dice_game_cleanup_effect = yes + } + option = { #You lost. Call in favor. + name = EVTOPTCHF25230 + trigger = { + event_target:random_society_winner = { + is_alive = yes + owes_favor_to = ROOT + } + NOR = { + AND = { + has_character_flag = flag_warrior_lodge_die_is_krita + has_character_flag = flag_betting_on_krita + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_treta + has_character_flag = flag_betting_on_treta + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_dwapara + has_character_flag = flag_betting_on_dwapara + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_kali + has_character_flag = flag_betting_on_kali + } + } + } + event_target:random_society_winner = { + remove_favor = ROOT + } + hidden_tooltip = { + event_target:random_society_winner = { character_event = { id = HF.25240 } } #Notify other warrior. + } + warrior_lodge_dice_game_cleanup_effect = yes + } + option = { #You lost. Pay with favor. + name = EVTOPTDHF25230 + trigger = { + event_target:random_society_winner = { + is_alive = yes + NOT = { owes_favor_to = ROOT } + } + NOT = { owes_favor_to = event_target:random_society_winner } + NOR = { + AND = { + has_character_flag = flag_warrior_lodge_die_is_krita + has_character_flag = flag_betting_on_krita + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_treta + has_character_flag = flag_betting_on_treta + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_dwapara + has_character_flag = flag_betting_on_dwapara + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_kali + has_character_flag = flag_betting_on_kali + } + } + } + event_target:random_society_winner = { + add_favor = ROOT + } + hidden_tooltip = { + event_target:random_society_winner = { character_event = { id = HF.25241 } } #Notify other warrior. + } + warrior_lodge_dice_game_cleanup_effect = yes + } +} + +#Die has been cast. - Second row. +character_event = { + id = HF.25236 + title = EVTTITLEHF25226 + desc = { + text = EVTDESCHF25236 #You won. + trigger = { + OR = { + AND = { + has_character_flag = flag_warrior_lodge_die_is_krita + has_character_flag = flag_betting_on_krita + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_treta + has_character_flag = flag_betting_on_treta + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_dwapara + has_character_flag = flag_betting_on_dwapara + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_kali + has_character_flag = flag_betting_on_kali + } + } + } + } + desc = { + text = EVTDESCHF25236_B #You lost. + trigger = { + event_target:random_society_winner = { is_alive = yes } + NOR = { + AND = { + has_character_flag = flag_warrior_lodge_die_is_krita + has_character_flag = flag_betting_on_krita + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_treta + has_character_flag = flag_betting_on_treta + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_dwapara + has_character_flag = flag_betting_on_dwapara + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_kali + has_character_flag = flag_betting_on_kali + } + } + } + } + desc = { + text = EVTDESCHF25236_C #You lost. - No winner. + trigger = { + event_target:random_society_winner = { is_alive = no } + NOR = { + AND = { + has_character_flag = flag_warrior_lodge_die_is_krita + has_character_flag = flag_betting_on_krita + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_treta + has_character_flag = flag_betting_on_treta + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_dwapara + has_character_flag = flag_betting_on_dwapara + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_kali + has_character_flag = flag_betting_on_kali + } + } + } + } + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + trigger = { + OR = { + society_member_of = warrior_lodge_bon + society_member_of = warrior_lodge_hellenic + } + } + is_triggered_only = yes + + option = { #You won. + name = EVTOPTAHF25236 + trigger = { + OR = { + AND = { + has_character_flag = flag_warrior_lodge_die_is_krita + has_character_flag = flag_betting_on_krita + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_treta + has_character_flag = flag_betting_on_treta + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_dwapara + has_character_flag = flag_betting_on_dwapara + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_kali + has_character_flag = flag_betting_on_kali + } + } + } + warrior_lodge_get_dice_bet_effect = yes + } + option = { #Special option. - Sore loser starts duel! + name = EVTOPTYHF25235 + custom_tooltip = { text = tooltip_EVTOPTYHF25235 } + trigger = { + trait = arbitrary + event_target:random_society_winner = { + ai = yes + is_alive = yes + this_can_duel_with_from_trigger = yes + } + NOR = { + AND = { + has_character_flag = flag_warrior_lodge_die_is_krita + has_character_flag = flag_betting_on_krita + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_treta + has_character_flag = flag_betting_on_treta + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_dwapara + has_character_flag = flag_betting_on_dwapara + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_kali + has_character_flag = flag_betting_on_kali + } + } + } + tooltip_info = arbitrary + tiered_prestige_negative_effect = yes + warrior_lodge_dice_game_cleanup_effect = yes + #REQUIRED event targets for setting up duel evaluation! + hidden_tooltip = { + save_event_target_as = combatant_1 #the person issuing the duel... + event_target:random_society_winner = { save_event_target_as = combatant_2 } #the target of the duel... + } + event_target:random_society_winner = { + show_scope_change = no + apply_degree_of_dishonorable_duel_effect = yes #checks a bunch of age and health statuses... + } + + pacifists_lose_piety_effect = yes + add_character_modifier = { + modifier = recent_duel_timer + duration = 365 + hidden = yes + } + hidden_tooltip = { + event_target:random_society_winner = { character_event = { id = HFP.10095 days = 1 } } #Duel evaluation (hidden) + result event as follow-up. + } + ai_chance = { + factor = 20 + modifier = { + factor = 0.1 + trait = craven + } + modifier = { + factor = 1.5 + trait = brave + } + modifier = { + factor = 0.75 + is_tribal = no + is_nomadic = no + } + modifier = { + factor = 1.25 + ROOT = { attribute_diff = { character = event_target:random_society_winner attribute = combat_rating value = 5 } } + } + modifier = { + factor = 1.25 + ROOT = { attribute_diff = { character = event_target:random_society_winner attribute = combat_rating value = 10 } } + } + modifier = { + factor = 1.5 + ROOT = { attribute_diff = { character = event_target:random_society_winner attribute = combat_rating value = 15 } } + } + modifier = { + factor = 1.75 + ROOT = { attribute_diff = { character = event_target:random_society_winner attribute = combat_rating value = 20 } } + } + } + } + option = { #You lost. + name = EVTOPTBHF25236 + trigger = { + NOR = { + AND = { + has_character_flag = flag_warrior_lodge_die_is_krita + has_character_flag = flag_betting_on_krita + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_treta + has_character_flag = flag_betting_on_treta + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_dwapara + has_character_flag = flag_betting_on_dwapara + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_kali + has_character_flag = flag_betting_on_kali + } + } + } + warrior_lodge_pay_dice_debt_effect = yes + } + option = { #You lost. Pay your debtor. + name = EVTOPTBHF25230 + trigger = { + event_target:random_society_winner = { is_alive = yes } + NOR = { + AND = { + has_character_flag = flag_warrior_lodge_die_is_krita + has_character_flag = flag_betting_on_krita + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_treta + has_character_flag = flag_betting_on_treta + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_dwapara + has_character_flag = flag_betting_on_dwapara + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_kali + has_character_flag = flag_betting_on_kali + } + } + } + warrior_lodge_pay_dice_debt_effect = yes + hidden_tooltip = { + event_target:random_society_winner = { character_event = { id = HF.25239 } } #Notify other warrior. + } + } + option = { #You lost. Call in favor. + name = EVTOPTCHF25230 + trigger = { + event_target:random_society_winner = { + is_alive = yes + owes_favor_to = ROOT + } + NOR = { + AND = { + has_character_flag = flag_warrior_lodge_die_is_krita + has_character_flag = flag_betting_on_krita + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_treta + has_character_flag = flag_betting_on_treta + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_dwapara + has_character_flag = flag_betting_on_dwapara + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_kali + has_character_flag = flag_betting_on_kali + } + } + } + event_target:random_society_winner = { + remove_favor = ROOT + } + hidden_tooltip = { + event_target:random_society_winner = { character_event = { id = HF.25240 } } #Notify other warrior. + } + } + option = { #You lost. Pay with favor. + name = EVTOPTDHF25230 + trigger = { + event_target:random_society_winner = { + is_alive = yes + NOT = { owes_favor_to = ROOT } + } + NOT = { owes_favor_to = event_target:random_society_winner } + NOR = { + AND = { + has_character_flag = flag_warrior_lodge_die_is_krita + has_character_flag = flag_betting_on_krita + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_treta + has_character_flag = flag_betting_on_treta + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_dwapara + has_character_flag = flag_betting_on_dwapara + } + AND = { + has_character_flag = flag_warrior_lodge_die_is_kali + has_character_flag = flag_betting_on_kali + } + } + } + event_target:random_society_winner = { + add_favor = ROOT + } + hidden_tooltip = { + event_target:random_society_winner = { character_event = { id = HF.25241 } } #Notify other warrior. + } + } + after = { + warrior_lodge_dice_game_cleanup_effect = yes + } +} +#Won with fake die again. - Second row. +character_event = { + id = HF.25237 + title = EVTTITLEHF25226 + desc = EVTDESCHF25237 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + trigger = { + OR = { + society_member_of = warrior_lodge_bon + society_member_of = warrior_lodge_hellenic + } + } + is_triggered_only = yes + + option = { #You won. + name = EVTOPTAHF25237 + warrior_lodge_get_dice_bet_effect = yes + warrior_lodge_dice_game_cleanup_effect = yes + } +} +#Won with bumping table again. - Second row. +character_event = { + id = HF.25238 + title = EVTTITLEHF25226 + desc = EVTDESCHF25238 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + trigger = { + OR = { + society_member_of = warrior_lodge_bon + society_member_of = warrior_lodge_hellenic + } + } + is_triggered_only = yes + + option = { #You won. + name = EVTOPTAHF25238 + warrior_lodge_get_dice_bet_effect = yes + warrior_lodge_dice_game_cleanup_effect = yes + } +} + +#Random Warrior informed that he has earned money from loser. +character_event = { + id = HF.25239 + title = EVTTITLEHF25226 + desc = EVTDESCHF25239 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + trigger = { + OR = { + society_member_of = warrior_lodge_bon + society_member_of = warrior_lodge_hellenic + } + } + is_triggered_only = yes + + option = { #You won. + name = EVTOPTAHF25239 + add_society_currency_trivial_effect = yes + } +} + +#Random Warrior informed that loser called in favor to not pay debt. +character_event = { + id = HF.25240 + title = EVTTITLEHF25226 + desc = EVTDESCHF25240 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + trigger = { + OR = { + society_member_of = warrior_lodge_bon + society_member_of = warrior_lodge_hellenic + } + } + is_triggered_only = yes + + option = { #You won. + name = EVTOPTAHF25240 + add_society_currency_trivial_effect = yes + } +} +#Random Warrior informed that loser gave favor to not pay debt. +character_event = { + id = HF.25241 + title = EVTTITLEHF25226 + desc = EVTDESCHF25241 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + trigger = { + OR = { + society_member_of = warrior_lodge_bon + society_member_of = warrior_lodge_hellenic + } + } + is_triggered_only = yes + + option = { #You won. + name = EVTOPTAHF25241 + add_society_currency_trivial_effect = yes + } +} + +############################################# + + # Flyting # + +############################################# +#Warrior Lodge Member picks a challenger. +character_event = { + id = HF.25250 + title = EVTTITLEHF25250 + desc = EVTDESCHF25250 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + hide_new = yes + + + trigger = { + has_dlc = "Holy Fury" + is_adult = yes + in_command = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = incapable } + NOT = { has_character_flag = do_not_disturb } + NOT = { has_character_modifier = flyting_challenge_cooldown } + OR = { #Only for northeners + society_member_of = warrior_lodge_norse + society_member_of = warrior_lodge_slavic + society_member_of = warrior_lodge_baltic + society_member_of = warrior_lodge_finnish + } + any_society_member = { #Make sure there are enough contenders to pick. + same_society_as = ROOT + is_adult = yes + in_command = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = incapable } + NOT = { has_character_flag = do_not_disturb } + NOT = { character = ROOT } + NOT = { has_character_modifier = flyting_challenge_cooldown } + OR = { + is_smart_trigger = yes + trait = scholarly_theologian + trait = grey_eminence + trait = poet + diplomacy = 15 + } + any_society_member = { + same_society_as = ROOT + is_adult = yes + in_command = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = incapable } + NOT = { has_character_flag = do_not_disturb } + NOT = { character = ROOT } + NOT = { character = PREV } #Make sure it doesn't check the same good candidate as above.v + NOT = { has_character_modifier = flyting_challenge_cooldown } + NOR = { + is_smart_trigger = yes + has_education_diplomacy_trigger = yes + has_lifestyle_diplomacy_trigger = yes + diplomacy = 15 + } + count = 2 + } + } + } + immediate = { + random_list = { + 33 = { sound_effect = pagan_cheering_01 } + 33 = { sound_effect = pagan_cheering_02 } + 33 = { sound_effect = pagan_cheering_03 } + 33 = { sound_effect = warrior_lodge_ambient_02 } + } + hidden_tooltip = { #Pick potential contenders + clr_character_flag = flyting_strong #Safety cleanup + clr_character_flag = flyting_medium + clr_character_flag = flyting_weak + save_event_target_as = flyting_contender_1 + random_society_member = { #First pick a very smart/talkative guy. + limit = { + same_society_as = ROOT + is_adult = yes + in_command = no + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = incapable } + NOT = { has_character_flag = do_not_disturb } + NOT = { character = ROOT } + NOT = { has_character_modifier = flyting_challenge_cooldown } + prisoner = no + OR = { + is_smart_trigger = yes + trait = scholarly_theologian + trait = grey_eminence + trait = poet + diplomacy = 15 + } + } + preferred_limit = { + ai = no + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + is_ill = no + is_smart_trigger = yes + has_education_diplomacy_trigger = yes + has_lifestyle_diplomacy_trigger = yes + diplomacy = 20 + } + + preferred_limit = { + ai = no + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + is_smart_trigger = yes + OR = { + has_education_diplomacy_trigger = yes + has_lifestyle_diplomacy_trigger = yes + } + diplomacy = 20 + } + preferred_limit = { + ai = no + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + OR = { + is_smart_trigger = yes + has_education_diplomacy_trigger = yes + has_lifestyle_diplomacy_trigger = yes + trait = gregarious + } + diplomacy = 20 + } + preferred_limit = { + ai = no + OR = { + is_smart_trigger = yes + has_education_diplomacy_trigger = yes + has_lifestyle_diplomacy_trigger = yes + trait = gregarious + } + diplomacy = 20 + } + preferred_limit = { + ai = no + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + diplomacy = 20 + } + preferred_limit = { + ai = no + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + OR = { + is_smart_trigger = yes + has_education_diplomacy_trigger = yes + has_lifestyle_diplomacy_trigger = yes + trait = gregarious + } + diplomacy = 15 + } + preferred_limit = { + ai = no + OR = { + is_smart_trigger = yes + has_education_diplomacy_trigger = yes + has_lifestyle_diplomacy_trigger = yes + trait = gregarious + } + diplomacy = 15 + } + preferred_limit = { + ai = no + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + diplomacy = 15 + } + preferred_limit = { + ai = no + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + OR = { + is_smart_trigger = yes + has_education_diplomacy_trigger = yes + has_lifestyle_diplomacy_trigger = yes + trait = gregarious + } + diplomacy = 10 + } + preferred_limit = { + ai = no + OR = { + is_smart_trigger = yes + has_education_diplomacy_trigger = yes + has_lifestyle_diplomacy_trigger = yes + trait = gregarious + } + diplomacy = 10 + } + preferred_limit = { + ai = no + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + diplomacy = 10 + } + preferred_limit = { + ai = no + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + OR = { + is_smart_trigger = yes + has_education_diplomacy_trigger = yes + has_lifestyle_diplomacy_trigger = yes + trait = gregarious + } + diplomacy = 5 + } + preferred_limit = { + ai = no + OR = { + is_smart_trigger = yes + has_education_diplomacy_trigger = yes + has_lifestyle_diplomacy_trigger = yes + trait = gregarious + } + diplomacy = 5 + } + preferred_limit = { + ai = no + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + diplomacy = 5 + } + preferred_limit = { + ai = no + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + } + preferred_limit = { + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + is_ill = no + is_smart_trigger = yes + has_education_diplomacy_trigger = yes + has_lifestyle_diplomacy_trigger = yes + diplomacy = 20 + } + + preferred_limit = { + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + is_smart_trigger = yes + OR = { + has_education_diplomacy_trigger = yes + has_lifestyle_diplomacy_trigger = yes + } + diplomacy = 20 + } + preferred_limit = { + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + OR = { + is_smart_trigger = yes + has_education_diplomacy_trigger = yes + has_lifestyle_diplomacy_trigger = yes + trait = gregarious + } + diplomacy = 20 + } + preferred_limit = { + OR = { + is_smart_trigger = yes + has_education_diplomacy_trigger = yes + has_lifestyle_diplomacy_trigger = yes + trait = gregarious + } + diplomacy = 20 + } + preferred_limit = { + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + diplomacy = 20 + } + preferred_limit = { + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + OR = { + is_smart_trigger = yes + has_education_diplomacy_trigger = yes + has_lifestyle_diplomacy_trigger = yes + trait = gregarious + } + diplomacy = 15 + } + preferred_limit = { + OR = { + is_smart_trigger = yes + has_education_diplomacy_trigger = yes + has_lifestyle_diplomacy_trigger = yes + trait = gregarious + } + diplomacy = 15 + } + preferred_limit = { + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + diplomacy = 15 + } + preferred_limit = { + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + OR = { + is_smart_trigger = yes + has_education_diplomacy_trigger = yes + has_lifestyle_diplomacy_trigger = yes + trait = gregarious + } + diplomacy = 10 + } + preferred_limit = { + OR = { + is_smart_trigger = yes + has_education_diplomacy_trigger = yes + has_lifestyle_diplomacy_trigger = yes + trait = gregarious + } + diplomacy = 10 + } + preferred_limit = { + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + diplomacy = 10 + } + preferred_limit = { + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + OR = { + is_smart_trigger = yes + has_education_diplomacy_trigger = yes + has_lifestyle_diplomacy_trigger = yes + trait = gregarious + } + diplomacy = 5 + } + preferred_limit = { + OR = { + is_smart_trigger = yes + has_education_diplomacy_trigger = yes + has_lifestyle_diplomacy_trigger = yes + trait = gregarious + } + diplomacy = 5 + } + preferred_limit = { + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + diplomacy = 5 + is_dumb_trigger = no + } + preferred_limit = { + is_dumb_trigger = no + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + } + preferred_limit = { + is_dumb_trigger = no + } + clr_character_flag = flyting_strong + clr_character_flag = flyting_medium + clr_character_flag = flyting_weak + save_event_target_as = flyting_potential_opponent_1 + } + random_society_member = { #Second pick a weakling. + limit = { + same_society_as = ROOT + is_adult = yes + in_command = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = incapable } + NOT = { has_character_flag = do_not_disturb } + NOT = { character = ROOT } + NOT = { event_target:flyting_potential_opponent_1 = { character = PREV } } + NOT = { has_character_modifier = flyting_challenge_cooldown } + NOR = { + is_smart_trigger = yes + has_lifestyle_diplomacy_trigger = yes + diplomacy = 12 + } + } + preferred_limit = { + ai = no + is_dumb_trigger = yes + NOT = { diplomacy = 5 } + OR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + } + preferred_limit = { + ai = no + NOT = { diplomacy = 5 } + OR = { + is_dumb_trigger = yes + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + } + preferred_limit = { + ai = no + is_dumb_trigger = yes + NOT = { diplomacy = 10 } + OR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + } + preferred_limit = { + ai = no + NOT = { diplomacy = 10 } + OR = { + is_dumb_trigger = yes + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + } + preferred_limit = { + is_dumb_trigger = yes + NOT = { diplomacy = 5 } + OR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + } + preferred_limit = { + NOT = { diplomacy = 5 } + OR = { + is_dumb_trigger = yes + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + } + preferred_limit = { + NOT = { diplomacy = 3 } + } + preferred_limit = { + NOT = { diplomacy = 5 } + } + preferred_limit = { + is_dumb_trigger = yes + NOT = { diplomacy = 10 } + OR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + } + preferred_limit = { + NOT = { diplomacy = 10 } + OR = { + is_dumb_trigger = yes + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + } + clr_character_flag = flyting_strong + clr_character_flag = flyting_medium + clr_character_flag = flyting_weak + save_event_target_as = flyting_potential_opponent_3 + } + random_society_member = { #Third pick an average guy. + limit = { + same_society_as = ROOT + is_adult = yes + in_command = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = incapable } + NOT = { has_character_flag = do_not_disturb } + NOT = { character = ROOT } + NOT = { event_target:flyting_potential_opponent_1 = { character = PREV } } + NOT = { event_target:flyting_potential_opponent_3 = { character = PREV } } + NOT = { has_character_modifier = flyting_challenge_cooldown } + NOR = { + is_smart_trigger = yes + has_lifestyle_diplomacy_trigger = yes + diplomacy = 20 + } + } + preferred_limit = { + is_ill = no + has_education_diplomacy_trigger = yes + diplomacy = 5 + NOT = { diplomacy = 12 } + } + preferred_limit = { + has_education_diplomacy_trigger = yes + diplomacy = 5 + NOT = { diplomacy = 12 } + } + preferred_limit = { + diplomacy = 5 + NOT = { diplomacy = 12 } + } + preferred_limit = { + is_dumb_trigger = no + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + } + preferred_limit = { + is_dumb_trigger = no + } + preferred_limit = { + is_ill = no + has_education_diplomacy_trigger = yes + diplomacy = 5 + NOT = { diplomacy = 12 } + } + preferred_limit = { + has_education_diplomacy_trigger = yes + diplomacy = 5 + NOT = { diplomacy = 12 } + } + preferred_limit = { + diplomacy = 5 + NOT = { diplomacy = 12 } + } + preferred_limit = { + is_dumb_trigger = no + NOR = { + trait = shy + trait = stutter + trait = lisp + trait = harelip + } + } + preferred_limit = { + is_dumb_trigger = no + } + clr_character_flag = flyting_strong + clr_character_flag = flyting_medium + clr_character_flag = flyting_weak + save_event_target_as = flyting_potential_opponent_2 + } + #Then assign flag to determine what kind of opponent you are. + if = { + limit = { + OR = { + is_smart_trigger = yes + has_lifestyle_diplomacy_trigger = yes + diplomacy = 15 + } + } + set_character_flag = flyting_strong + } + else_if = { + limit = { + NOR = { + is_smart_trigger = yes + has_lifestyle_diplomacy_trigger = yes + diplomacy = 15 + } + diplomacy = 8 + } + set_character_flag = flyting_medium + } + else_if = { + limit = { + NOR = { + is_smart_trigger = yes + has_lifestyle_diplomacy_trigger = yes + diplomacy = 8 + has_education_diplomacy_trigger = yes + } + } + set_character_flag = flyting_weak + } + #Safety check + if = { + limit = { + NOR = { + has_character_flag = flyting_strong + has_character_flag = flyting_medium + has_character_flag = flyting_weak + } + } + set_character_flag = flyting_medium + } + set_character_flag = do_not_disturb + hidden_tooltip = { + character_event = { id = HF.25301 days = 15 } #Clear flag. + } + } + } + + is_triggered_only = yes + + option = { #Pick tough fight. + name = EVTOPTAHF25250 + custom_tooltip = { text = TT_EVTOPTAHF25250 } + trigger = { event_target:flyting_potential_opponent_1 = { is_alive = yes } } + show_portrait = event_target:flyting_potential_opponent_1 + hidden_tooltip = { + event_target:flyting_potential_opponent_1 = { + save_event_target_as = flyting_contender_2 + set_character_flag = flyting_strong + set_character_flag = do_not_disturb + hidden_tooltip = { + character_event = { id = HF.25301 days = 15 } #Clear flag. + } + } + if = { + limit = { event_target:flyting_potential_opponent_2 = { is_alive = yes } } + event_target:flyting_potential_opponent_2 = { + clr_character_flag = flyting_strong + clr_character_flag = flyting_medium + clr_character_flag = flyting_weak + clr_character_flag = do_not_disturb + } + } + if = { + limit = { event_target:flyting_potential_opponent_3 = { is_alive = yes } } + event_target:flyting_potential_opponent_3 = { + clr_character_flag = flyting_strong + clr_character_flag = flyting_medium + clr_character_flag = flyting_weak + clr_character_flag = do_not_disturb + } + } + set_flyting_patience_effect = yes + event_target:flyting_contender_2 = { character_event = { id = HF.25253 } } + } + + ai_chance = { factor = 10 } + } + option = { #Pick average opponent. + name = EVTOPTBHF25250 + custom_tooltip = { text = TT_EVTOPTBHF25250 } + trigger = { event_target:flyting_potential_opponent_2 = { is_alive = yes } } + show_portrait = event_target:flyting_potential_opponent_2 + hidden_tooltip = { + event_target:flyting_potential_opponent_2 = { + save_event_target_as = flyting_contender_2 + set_character_flag = flyting_medium + set_character_flag = do_not_disturb + hidden_tooltip = { + character_event = { id = HF.25301 days = 15 } #Clear flag. + } + } + if = { + limit = { event_target:flyting_potential_opponent_1 = { is_alive = yes } } + event_target:flyting_potential_opponent_1 = { + clr_character_flag = flyting_strong + clr_character_flag = flyting_medium + clr_character_flag = flyting_weak + clr_character_flag = do_not_disturb + } + } + if = { + limit = { event_target:flyting_potential_opponent_3 = { is_alive = yes } } + event_target:flyting_potential_opponent_3 = { + clr_character_flag = flyting_strong + clr_character_flag = flyting_medium + clr_character_flag = flyting_weak + clr_character_flag = do_not_disturb + } + } + set_flyting_patience_effect = yes + event_target:flyting_contender_2 = { character_event = { id = HF.25253 } } + } + + ai_chance = { factor = 20 } + } + option = { #Pick lousy opponent. + name = EVTOPTCHF25250 + custom_tooltip = { text = TT_EVTOPTCHF25250 } + trigger = { event_target:flyting_potential_opponent_3 = { is_alive = yes } } + show_portrait = event_target:flyting_potential_opponent_3 + hidden_tooltip = { + event_target:flyting_potential_opponent_3 = { + save_event_target_as = flyting_contender_2 + set_character_flag = flyting_weak + set_character_flag = do_not_disturb + hidden_tooltip = { + character_event = { id = HF.25301 days = 15 } #Clear flag. + } + } + if = { + limit = { event_target:flyting_potential_opponent_1 = { is_alive = yes } } + event_target:flyting_potential_opponent_1 = { + clr_character_flag = flyting_strong + clr_character_flag = flyting_medium + clr_character_flag = flyting_weak + clr_character_flag = do_not_disturb + } + } + if = { + limit = { event_target:flyting_potential_opponent_2 = { is_alive = yes } } + event_target:flyting_potential_opponent_2 = { + clr_character_flag = flyting_strong + clr_character_flag = flyting_medium + clr_character_flag = flyting_weak + clr_character_flag = do_not_disturb + } + } + set_flyting_patience_effect = yes + event_target:flyting_contender_2 = { character_event = { id = HF.25253 } } + } + + ai_chance = { + factor = 30 + modifier = { + factor = 2 + trait = craven + } + modifier = { + factor = 0.5 + trait = brave + } + } + } + option = { #Not interested. -End of line. + name = EVTOPTDHF25250 + tiered_prestige_negative_effect = yes + if = { + limit = { + has_character_flag = flyting_strong + } + detract_society_currency_medium_effect = yes + } + if = { + limit = { + has_character_flag = flyting_medium + } + detract_society_currency_minor_effect = yes + } + if = { + limit = { + has_character_flag = flyting_weak + } + detract_society_currency_tiny_effect = yes + } + hidden_tooltip = { + if = { + limit = { + event_target:flyting_potential_opponent_1 = { is_alive = yes } + } + event_target:flyting_potential_opponent_1 = { + clr_character_flag = flyting_strong + clr_character_flag = flyting_medium + clr_character_flag = flyting_weak + clr_character_flag = do_not_disturb + } + } + if = { + limit = { + event_target:flyting_potential_opponent_2 = { is_alive = yes } + } + event_target:flyting_potential_opponent_2 = { + clr_character_flag = flyting_strong + clr_character_flag = flyting_medium + clr_character_flag = flyting_weak + clr_character_flag = do_not_disturb + } + } + if = { + limit = { + event_target:flyting_potential_opponent_3 = { is_alive = yes } + } + event_target:flyting_potential_opponent_3 = { + clr_character_flag = flyting_strong + clr_character_flag = flyting_medium + clr_character_flag = flyting_weak + clr_character_flag = do_not_disturb + } + } + warrior_lodge_flyting_cleanup_effect = yes + } + ai_chance = { factor = 0 } + } +} + +#Second character: hidden ping. +character_event = { + id = HF.25253 + hide_window = yes + + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + } + fail_trigger_effect = { + warrior_lodge_flyting_cleanup_effect = yes + } + + immediate = { + add_character_modifier = { name = flyting_challenge_cooldown duration = 1250 hidden = yes } + FROM = { + add_character_modifier = { name = flyting_challenge_cooldown duration = 1250 hidden = yes } + character_event = { id = HF.25254 } + } + } +} + +#First character: First round of Flything. +character_event = { + id = HF.25254 + title = EVTTITLEHF25250 + desc = EVTDESCHF25254 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + } + fail_trigger_effect = { + warrior_lodge_flyting_cleanup_effect = yes + } + + option = { #Insulting Opponent's prowess. - Normal + name = EVTOPTAHF25254 + trigger = { + NOR = { + is_lover = FROM + is_close_relative = FROM + } + } + custom_tooltip = { text = TT_FLYTING_INSULTING_PROWESS } + set_character_flag = insulting_prowess + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25255 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25255 } } + } + } + ai_chance = { factor = 50 } + } + option = { #Insulting Opponent's prowess. - As a relative. + name = EVTOPTAHF25254 + trigger = { + OR = { + is_close_relative = FROM + is_lover = FROM + } + } + tooltip_info_custom = available_because_relative + custom_tooltip = { text = TT_FLYTING_INSULTING_PROWESS } + set_character_flag = insulting_prowess_relative + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25255 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25255 } } + } + } + ai_chance = { factor = 80 } + } + + option = { #Insulting Opponent's character. - Normal + name = EVTOPTBHF25254 + trigger = { + NOT = { + trait = poet + } + } + custom_tooltip = { text = TT_FLYTING_INSULTING_CHARACTER } + set_character_flag = insulting_character + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25257 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25257 } } + } + } + ai_chance = { factor = 80 } + } + option = { #Insulting Opponent's character. - Poet + name = EVTOPTBHF25254 + trigger = { + trait = poet + } + tooltip_info = poet + custom_tooltip = { text = TT_FLYTING_INSULTING_CHARACTER } + set_character_flag = insulting_character_poet + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25257 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25257 } } + } + } + ai_chance = { factor = 100 } + } + option = { #Insulting Opponent's accomplishments. - Normal + name = EVTOPTCHF25254 + trigger = { + NOT = { + FROM = { vassal_of = ROOT } + } + } + prestige = -20 + custom_tooltip = { text = TT_FLYTING_INSULTING_ACCOMPLISHMENTS } + set_character_flag = insulting_accomplishments + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25259 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25259 } } + } + } + ai_chance = { + factor = 50 + modifier = { + factor = 1.5 + trait = arbitrary + } + modifier = { + factor = 0.5 + trait = just + } + modifier = { + factor = 0.5 + trait = kind + } + modifier = { + factor = 0.5 + NOT = { prestige = 100 } + } + } + } + option = { #Insulting Opponent's accomplishments. - As Superior + name = EVTOPTCHF25254 + trigger = { + FROM = { vassal_of = ROOT } + } + tooltip_info_custom = available_because_better + prestige = -20 + custom_tooltip = { text = TT_FLYTING_INSULTING_ACCOMPLISHMENTS } + set_character_flag = insulting_accomplishments_liege + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25259 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25259 } } + } + } + ai_chance = { + factor = 80 + modifier = { + factor = 1.5 + trait = arbitrary + } + modifier = { + factor = 0.5 + trait = just + } + modifier = { + factor = 0.5 + trait = kind + } + modifier = { + factor = 0.5 + NOT = { prestige = 100 } + } + } + } + option = { #Insulting Opponent's family. - Normal + name = EVTOPTDHF25254 + trigger = { + NOR = { + is_close_relative = FROM + dynasty = FROM + trait = cruel + } + } + piety = -5 + custom_tooltip = { text = TT_FLYTING_INSULTING_FAMILY } + set_character_flag = insulting_family + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25261 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25261 } } + } + } + ai_chance = { + factor = 50 + modifier = { + factor = 0.5 + has_focus = focus_family + } + modifier = { + factor = 0.5 + trait = kind + } + modifier = { + factor = 0.5 + NOT = { piety = 100 } + } + } + } + option = { #Insulting Opponent's family. - Cruel + name = EVTOPTDHF25254 + trigger = { + NOR = { + is_close_relative = FROM + dynasty = FROM + } + trait = cruel + } + tooltip_info = cruel + piety = -5 + custom_tooltip = { text = TT_FLYTING_INSULTING_FAMILY } + set_character_flag = insulting_family_cruel + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25261 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25261 } } + } + } + ai_chance = { + factor = 80 + modifier = { + factor = 0.5 + has_focus = focus_family + } + modifier = { + factor = 0.5 + trait = kind + } + modifier = { + factor = 0.5 + NOT = { piety = 100 } + } + } + } +} + +#Opponent: receive insults on prowess - Normal. +character_event = { + id = HF.25255 + title = EVTTITLEHF25250 + desc = { + text = EVTDESCBHF25255 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + } + } + desc = { + text = EVTDESCAHF25255 + trigger = { + OR = { #Second round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + } + } + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + } + fail_trigger_effect = { + warrior_lodge_flyting_cleanup_effect = yes + } + + option = { #Character does not care much because celibate. + name = EVTOPTBHF25255 + trigger = { + OR = { #Second round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + trait = celibate + } + tooltip_info = celibate + custom_tooltip = { text = TT_FLYTING_INSULT_MILD_REACTION } + hidden_tooltip = { + warrior_lodge_flyting_winner_selection_effect = yes + } + ai_chance = { factor = 50 } + } + option = { #Character does not care much because master seducer. + name = EVTOPTCHF25255 + trigger = { + OR = { #Second round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + trait = seducer + } + tooltip_info = seducer + custom_tooltip = { text = TT_FLYTING_INSULT_MILD_REACTION } + hidden_tooltip = { + warrior_lodge_flyting_winner_selection_effect = yes + } + ai_chance = { factor = 50 } + } + option = { #Character does not care much because master seductress. + name = EVTOPTDHF25255 + trigger = { + OR = { #Second round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + trait = seductress + } + tooltip_info = seductress + custom_tooltip = { text = TT_FLYTING_INSULT_MILD_REACTION } + hidden_tooltip = { + warrior_lodge_flyting_winner_selection_effect = yes + } + ai_chance = { factor = 50 } + } + option = { #Character feels mocked. + name = EVTOPTEHF25255 + trigger = { + OR = { #Second round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOR = { + trait = celibate + trait = seducer + trait = seductress + trait = lustful + } + } + custom_tooltip = { text = TT_FLYTING_INSULT_AVERAGE_REACTION } + hidden_tooltip = { + warrior_lodge_flyting_winner_selection_effect = yes + } + ai_chance = { factor = 50 } + } + option = { #Character feels mocked a lot. + name = EVTOPTFHF25255 + trigger = { + OR = { #Second round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOR = { + trait = celibate + trait = seducer + trait = seductress + } + trait = lustful + } + tooltip_info = lustful + custom_tooltip = { text = TT_FLYTING_INSULT_POOR_REACTION } + hidden_tooltip = { + warrior_lodge_flyting_winner_selection_effect = yes + } + ai_chance = { factor = 50 } + } + option = { #Insulting Opponent's prowess. - Normal + name = EVTOPTAHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOR = { + is_lover = FROM + is_close_relative = FROM + } + } + custom_tooltip = { text = TT_FLYTING_INSULTING_PROWESS } + set_character_flag = insulting_prowess + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25255 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25255 } } + } + } + ai_chance = { factor = 50 } + } + option = { #Insulting Opponent's prowess. - As a relative. + name = EVTOPTAHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + OR = { + is_close_relative = FROM + is_lover = FROM + } + } + tooltip_info_custom = available_because_relative + custom_tooltip = { text = TT_FLYTING_INSULTING_PROWESS } + set_character_flag = insulting_prowess_relative + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25255 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25255 } } + } + } + ai_chance = { factor = 80 } + } + + option = { #Insulting Opponent's character. - Normal + name = EVTOPTBHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOT = { + trait = poet + } + } + custom_tooltip = { text = TT_FLYTING_INSULTING_CHARACTER } + set_character_flag = insulting_character + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25257 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25257 } } + } + } + ai_chance = { factor = 80 } + } + option = { #Insulting Opponent's character. - Poet + name = EVTOPTBHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + trait = poet + } + tooltip_info = poet + custom_tooltip = { text = TT_FLYTING_INSULTING_CHARACTER } + set_character_flag = insulting_character_poet + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25257 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25257 } } + } + } + ai_chance = { factor = 100 } + } + option = { #Insulting Opponent's accomplishments. - Normal + name = EVTOPTCHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOT = { + FROM = { vassal_of = ROOT } + } + } + prestige = -20 + custom_tooltip = { text = TT_FLYTING_INSULTING_ACCOMPLISHMENTS } + set_character_flag = insulting_accomplishments + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25259 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25259 } } + } + } + ai_chance = { + factor = 50 + modifier = { + factor = 1.5 + trait = arbitrary + } + modifier = { + factor = 0.5 + trait = just + } + modifier = { + factor = 0.5 + trait = kind + } + modifier = { + factor = 0.5 + NOT = { prestige = 100 } + } + } + } + option = { #Insulting Opponent's accomplishments. - As Superior + name = EVTOPTCHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + FROM = { vassal_of = ROOT } + } + tooltip_info_custom = available_because_better + prestige = -20 + custom_tooltip = { text = TT_FLYTING_INSULTING_ACCOMPLISHMENTS } + set_character_flag = insulting_accomplishments_liege + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25259 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25259 } } + } + } + ai_chance = { + factor = 80 + modifier = { + factor = 1.5 + trait = arbitrary + } + modifier = { + factor = 0.5 + trait = just + } + modifier = { + factor = 0.5 + trait = kind + } + modifier = { + factor = 0.5 + NOT = { prestige = 100 } + } + } + } + option = { #Insulting Opponent's family. - Normal + name = EVTOPTDHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOR = { + is_close_relative = FROM + dynasty = FROM + trait = cruel + } + } + piety = -5 + custom_tooltip = { text = TT_FLYTING_INSULTING_FAMILY } + set_character_flag = insulting_family + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25261 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25261 } } + } + } + ai_chance = { + factor = 50 + modifier = { + factor = 0.5 + has_focus = focus_family + } + modifier = { + factor = 0.5 + trait = kind + } + modifier = { + factor = 0.5 + NOT = { piety = 100 } + } + } + } + option = { #Insulting Opponent's family. - Cruel + name = EVTOPTDHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOR = { + is_close_relative = FROM + dynasty = FROM + } + trait = cruel + } + tooltip_info = cruel + piety = -5 + custom_tooltip = { text = TT_FLYTING_INSULTING_FAMILY } + set_character_flag = insulting_family_cruel + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25261 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25261 } } + } + } + ai_chance = { + factor = 80 + modifier = { + factor = 0.5 + has_focus = focus_family + } + modifier = { + factor = 0.5 + trait = kind + } + modifier = { + factor = 0.5 + NOT = { piety = 100 } + } + } + } +} + +#Opponent: receive insults on character. +character_event = { + id = HF.25257 + title = EVTTITLEHF25250 + desc = { + text = EVTDESCBHF25257 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + } + } + desc = { + text = EVTDESCAHF25257 + trigger = { + OR = { #Second round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + } + } + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + } + fail_trigger_effect = { + warrior_lodge_flyting_cleanup_effect = yes + } + + option = { #Character does not care much because humble. + name = EVTOPTBHF25257 + trigger = { + OR = { #Second round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + trait = humble + } + tooltip_info = humble + custom_tooltip = { text = TT_FLYTING_INSULT_MILD_REACTION } + hidden_tooltip = { + warrior_lodge_flyting_winner_selection_effect = yes + } + ai_chance = { factor = 50 } + } + option = { #Character feels mocked. + name = EVTOPTCHF25257 + trigger = { + OR = { #Second round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOR = { + trait = humble + trait = arbitrary + } + } + custom_tooltip = { text = TT_FLYTING_INSULT_AVERAGE_REACTION } + hidden_tooltip = { + warrior_lodge_flyting_winner_selection_effect = yes + } + ai_chance = { factor = 50 } + } + option = { #Character feels mocked a lot. + name = EVTOPTDHF25257 + trigger = { + OR = { #Second round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + trait = arbitrary + } + tooltip_info = arbitrary + custom_tooltip = { text = TT_FLYTING_INSULT_POOR_REACTION } + hidden_tooltip = { + warrior_lodge_flyting_winner_selection_effect = yes + } + ai_chance = { factor = 50 } + } + option = { #Insulting Opponent's prowess. - Normal + name = EVTOPTAHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOR = { + is_lover = FROM + is_close_relative = FROM + } + } + custom_tooltip = { text = TT_FLYTING_INSULTING_PROWESS } + set_character_flag = insulting_prowess + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25255 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25255 } } + } + } + ai_chance = { factor = 50 } + } + option = { #Insulting Opponent's prowess. - As a relative. + name = EVTOPTAHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + OR = { + is_close_relative = FROM + is_lover = FROM + } + } + tooltip_info_custom = available_because_relative + custom_tooltip = { text = TT_FLYTING_INSULTING_PROWESS } + set_character_flag = insulting_prowess_relative + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25255 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25255 } } + } + } + ai_chance = { factor = 80 } + } + + option = { #Insulting Opponent's character. - Normal + name = EVTOPTBHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOT = { + trait = poet + } + } + custom_tooltip = { text = TT_FLYTING_INSULTING_CHARACTER } + set_character_flag = insulting_character + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25257 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25257 } } + } + } + ai_chance = { factor = 80 } + } + option = { #Insulting Opponent's character. - Poet + name = EVTOPTBHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + trait = poet + } + tooltip_info = poet + custom_tooltip = { text = TT_FLYTING_INSULTING_CHARACTER } + set_character_flag = insulting_character_poet + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25257 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25257 } } + } + } + ai_chance = { factor = 100 } + } + option = { #Insulting Opponent's accomplishments. - Normal + name = EVTOPTCHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOT = { + FROM = { vassal_of = ROOT } + } + } + prestige = -20 + custom_tooltip = { text = TT_FLYTING_INSULTING_ACCOMPLISHMENTS } + set_character_flag = insulting_accomplishments + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25259 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25259 } } + } + } + ai_chance = { + factor = 50 + modifier = { + factor = 1.5 + trait = arbitrary + } + modifier = { + factor = 0.5 + trait = just + } + modifier = { + factor = 0.5 + trait = kind + } + modifier = { + factor = 0.5 + NOT = { prestige = 100 } + } + } + } + option = { #Insulting Opponent's accomplishments. - As Superior + name = EVTOPTCHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + FROM = { vassal_of = ROOT } + } + tooltip_info_custom = available_because_better + prestige = -20 + custom_tooltip = { text = TT_FLYTING_INSULTING_ACCOMPLISHMENTS } + set_character_flag = insulting_accomplishments_liege + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25259 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25259 } } + } + } + ai_chance = { + factor = 80 + modifier = { + factor = 1.5 + trait = arbitrary + } + modifier = { + factor = 0.5 + trait = just + } + modifier = { + factor = 0.5 + trait = kind + } + modifier = { + factor = 0.5 + NOT = { prestige = 100 } + } + } + } + option = { #Insulting Opponent's family. - Normal + name = EVTOPTDHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOR = { + is_close_relative = FROM + dynasty = FROM + trait = cruel + } + } + piety = -5 + custom_tooltip = { text = TT_FLYTING_INSULTING_FAMILY } + set_character_flag = insulting_family + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25261 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25261 } } + } + } + ai_chance = { + factor = 50 + modifier = { + factor = 0.5 + has_focus = focus_family + } + modifier = { + factor = 0.5 + trait = kind + } + modifier = { + factor = 0.5 + NOT = { piety = 100 } + } + } + } + option = { #Insulting Opponent's family. - Cruel + name = EVTOPTDHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOR = { + is_close_relative = FROM + dynasty = FROM + } + trait = cruel + } + tooltip_info = cruel + piety = -5 + custom_tooltip = { text = TT_FLYTING_INSULTING_FAMILY } + set_character_flag = insulting_family_cruel + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25261 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25261 } } + } + } + ai_chance = { + factor = 80 + modifier = { + factor = 0.5 + has_focus = focus_family + } + modifier = { + factor = 0.5 + trait = kind + } + modifier = { + factor = 0.5 + NOT = { piety = 100 } + } + } + } +} + +#Opponent: receive insults on accomplishments. +character_event = { + id = HF.25259 + title = EVTTITLEHF25250 + desc = { + text = EVTDESCBHF25259 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + } + } + desc = { + text = EVTDESCAHF25259 + trigger = { + OR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + } + } + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + } + fail_trigger_effect = { + warrior_lodge_flyting_cleanup_effect = yes + } + + option = { #Character does not care much. + name = EVTOPTBHF25259 + trigger = { + OR = { #Second round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + trait = content + } + tooltip_info = content + custom_tooltip = { text = TT_FLYTING_INSULT_MILD_REACTION } + hidden_tooltip = { + warrior_lodge_flyting_winner_selection_effect = yes + } + ai_chance = { factor = 50 } + } + option = { #Character feels mocked. + name = EVTOPTCHF25259 + trigger = { + OR = { #Second round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOR = { + trait = content + trait = ambitious + } + } + custom_tooltip = { text = TT_FLYTING_INSULT_AVERAGE_REACTION } + hidden_tooltip = { + warrior_lodge_flyting_winner_selection_effect = yes + } + ai_chance = { factor = 50 } + } + option = { #Character feels mocked a lot. + name = EVTOPTDHF25259 + trigger = { + OR = { #Second round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + trait = ambitious + } + tooltip_info = ambitious + custom_tooltip = { text = TT_FLYTING_INSULT_POOR_REACTION } + hidden_tooltip = { + warrior_lodge_flyting_winner_selection_effect = yes + } + ai_chance = { factor = 50 } + } + option = { #Insulting Opponent's prowess. - Normal + name = EVTOPTAHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOR = { + is_lover = FROM + is_close_relative = FROM + } + } + custom_tooltip = { text = TT_FLYTING_INSULTING_PROWESS } + set_character_flag = insulting_prowess + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25255 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25255 } } + } + } + ai_chance = { factor = 50 } + } + option = { #Insulting Opponent's prowess. - As a relative. + name = EVTOPTAHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + OR = { + is_close_relative = FROM + is_lover = FROM + } + } + tooltip_info_custom = available_because_relative + custom_tooltip = { text = TT_FLYTING_INSULTING_PROWESS } + set_character_flag = insulting_prowess_relative + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25255 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25255 } } + } + } + ai_chance = { factor = 80 } + } + + option = { #Insulting Opponent's character. - Normal + name = EVTOPTBHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOT = { + trait = poet + } + } + custom_tooltip = { text = TT_FLYTING_INSULTING_CHARACTER } + set_character_flag = insulting_character + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25257 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25257 } } + } + } + ai_chance = { factor = 80 } + } + option = { #Insulting Opponent's character. - Poet + name = EVTOPTBHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + trait = poet + } + tooltip_info = poet + custom_tooltip = { text = TT_FLYTING_INSULTING_CHARACTER } + set_character_flag = insulting_character_poet + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25257 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25257 } } + } + } + ai_chance = { factor = 100 } + } + option = { #Insulting Opponent's accomplishments. - Normal + name = EVTOPTCHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOT = { + FROM = { vassal_of = ROOT } + } + } + prestige = -20 + custom_tooltip = { text = TT_FLYTING_INSULTING_ACCOMPLISHMENTS } + set_character_flag = insulting_accomplishments + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25259 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25259 } } + } + } + ai_chance = { + factor = 50 + modifier = { + factor = 1.5 + trait = arbitrary + } + modifier = { + factor = 0.5 + trait = just + } + modifier = { + factor = 0.5 + trait = kind + } + modifier = { + factor = 0.5 + NOT = { prestige = 100 } + } + } + } + option = { #Insulting Opponent's accomplishments. - As Superior + name = EVTOPTCHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + FROM = { vassal_of = ROOT } + } + tooltip_info_custom = available_because_better + prestige = -20 + custom_tooltip = { text = TT_FLYTING_INSULTING_ACCOMPLISHMENTS } + set_character_flag = insulting_accomplishments_liege + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25259 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25259 } } + } + } + ai_chance = { + factor = 80 + modifier = { + factor = 1.5 + trait = arbitrary + } + modifier = { + factor = 0.5 + trait = just + } + modifier = { + factor = 0.5 + trait = kind + } + modifier = { + factor = 0.5 + NOT = { prestige = 100 } + } + } + } + option = { #Insulting Opponent's family. - Normal + name = EVTOPTDHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOR = { + is_close_relative = FROM + dynasty = FROM + trait = cruel + } + } + piety = -5 + custom_tooltip = { text = TT_FLYTING_INSULTING_FAMILY } + set_character_flag = insulting_family + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25261 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25261 } } + } + } + ai_chance = { + factor = 50 + modifier = { + factor = 0.5 + has_focus = focus_family + } + modifier = { + factor = 0.5 + trait = kind + } + modifier = { + factor = 0.5 + NOT = { piety = 100 } + } + } + } + option = { #Insulting Opponent's family. - Cruel + name = EVTOPTDHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOR = { + is_close_relative = FROM + dynasty = FROM + } + trait = cruel + } + tooltip_info = cruel + piety = -5 + custom_tooltip = { text = TT_FLYTING_INSULTING_FAMILY } + set_character_flag = insulting_family_cruel + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25261 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25261 } } + } + } + ai_chance = { + factor = 80 + modifier = { + factor = 0.5 + has_focus = focus_family + } + modifier = { + factor = 0.5 + trait = kind + } + modifier = { + factor = 0.5 + NOT = { piety = 100 } + } + } + } +} + +#Opponent: receive insults on family. +character_event = { + id = HF.25261 + title = EVTTITLEHF25250 + desc = { + text = EVTDESCBHF25261 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + } + } + desc = { + text = EVTDESCAHF25261 + trigger = { + OR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + } + } + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + } + fail_trigger_effect = { + warrior_lodge_flyting_cleanup_effect = yes + } + + option = { #Character does not care much. + name = EVTOPTBHF25261 + trigger = { + OR = { #Second round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + trait = cruel + NOR = { + has_focus = focus_family + any_lover = { is_married = ROOT } + any_lover = { is_close_relative = ROOT } + any_friend = { is_married = ROOT } + any_friend = { is_close_relative = ROOT } + } + } + tooltip_info = cruel + custom_tooltip = { text = TT_FLYTING_INSULT_MILD_REACTION } + hidden_tooltip = { + warrior_lodge_flyting_winner_selection_effect = yes + } + ai_chance = { factor = 50 } + } + option = { #Character feels mocked. + name = EVTOPTCHF25261 + trigger = { + OR = { #Second round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOR = { + trait = cruel + has_focus = focus_family + any_lover = { is_married = ROOT } + any_lover = { is_close_relative = ROOT } + any_friend = { is_married = ROOT } + any_friend = { is_close_relative = ROOT } + } + } + custom_tooltip = { text = TT_FLYTING_INSULT_AVERAGE_REACTION } + hidden_tooltip = { + warrior_lodge_flyting_winner_selection_effect = yes + } + ai_chance = { factor = 50 } + } + option = { #Character feels mocked a lot. + name = EVTOPTDHF25261 + trigger = { + OR = { #Second round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOT = { trait = cruel } + OR = { + has_focus = focus_family + any_lover = { is_married = ROOT } + any_lover = { is_close_relative = ROOT } + any_friend = { is_married = ROOT } + any_friend = { is_close_relative = ROOT } + } + } + tooltip_info_custom = available_because_loves_family + custom_tooltip = { text = TT_FLYTING_INSULT_POOR_REACTION } + hidden_tooltip = { + warrior_lodge_flyting_winner_selection_effect = yes + } + ai_chance = { factor = 50 } + } + option = { #Insulting Opponent's prowess. - Normal + name = EVTOPTAHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOR = { + is_lover = FROM + is_close_relative = FROM + } + } + custom_tooltip = { text = TT_FLYTING_INSULTING_PROWESS } + set_character_flag = insulting_prowess + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25255 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25255 } } + } + } + ai_chance = { factor = 50 } + } + option = { #Insulting Opponent's prowess. - As a relative. + name = EVTOPTAHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + OR = { + is_close_relative = FROM + is_lover = FROM + } + } + tooltip_info_custom = available_because_relative + custom_tooltip = { text = TT_FLYTING_INSULTING_PROWESS } + set_character_flag = insulting_prowess_relative + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25255 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25255 } } + } + } + ai_chance = { factor = 80 } + } + + option = { #Insulting Opponent's character. - Normal + name = EVTOPTBHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOT = { + trait = poet + } + } + custom_tooltip = { text = TT_FLYTING_INSULTING_CHARACTER } + set_character_flag = insulting_character + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25257 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25257 } } + } + } + ai_chance = { factor = 80 } + } + option = { #Insulting Opponent's character. - Poet + name = EVTOPTBHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + trait = poet + } + tooltip_info = poet + custom_tooltip = { text = TT_FLYTING_INSULTING_CHARACTER } + set_character_flag = insulting_character_poet + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25257 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25257 } } + } + } + ai_chance = { factor = 100 } + } + option = { #Insulting Opponent's accomplishments. - Normal + name = EVTOPTCHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOT = { + FROM = { vassal_of = ROOT } + } + } + prestige = -20 + custom_tooltip = { text = TT_FLYTING_INSULTING_ACCOMPLISHMENTS } + set_character_flag = insulting_accomplishments + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25259 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25259 } } + } + } + ai_chance = { + factor = 50 + modifier = { + factor = 1.5 + trait = arbitrary + } + modifier = { + factor = 0.5 + trait = just + } + modifier = { + factor = 0.5 + trait = kind + } + modifier = { + factor = 0.5 + NOT = { prestige = 100 } + } + } + } + option = { #Insulting Opponent's accomplishments. - As Superior + name = EVTOPTCHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + FROM = { vassal_of = ROOT } + } + tooltip_info_custom = available_because_better + prestige = -20 + custom_tooltip = { text = TT_FLYTING_INSULTING_ACCOMPLISHMENTS } + set_character_flag = insulting_accomplishments_liege + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25259 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25259 } } + } + } + ai_chance = { + factor = 80 + modifier = { + factor = 1.5 + trait = arbitrary + } + modifier = { + factor = 0.5 + trait = just + } + modifier = { + factor = 0.5 + trait = kind + } + modifier = { + factor = 0.5 + NOT = { prestige = 100 } + } + } + } + option = { #Insulting Opponent's family. - Normal + name = EVTOPTDHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOR = { + is_close_relative = FROM + dynasty = FROM + trait = cruel + } + } + piety = -5 + custom_tooltip = { text = TT_FLYTING_INSULTING_FAMILY } + set_character_flag = insulting_family + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25261 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25261 } } + } + } + ai_chance = { + factor = 50 + modifier = { + factor = 0.5 + has_focus = focus_family + } + modifier = { + factor = 0.5 + trait = kind + } + modifier = { + factor = 0.5 + NOT = { piety = 100 } + } + } + } + option = { #Insulting Opponent's family. - Cruel + name = EVTOPTDHF25254 + trigger = { + NOR = { #First round. + has_character_flag = insulting_prowess + has_character_flag = insulting_prowess_relative + has_character_flag = insulting_character + has_character_flag = insulting_character_poet + has_character_flag = insulting_accomplishments + has_character_flag = insulting_accomplishments_liege + has_character_flag = insulting_family + has_character_flag = insulting_family_cruel + } + NOR = { + is_close_relative = FROM + dynasty = FROM + } + trait = cruel + } + tooltip_info = cruel + piety = -5 + custom_tooltip = { text = TT_FLYTING_INSULTING_FAMILY } + set_character_flag = insulting_family_cruel + hidden_tooltip = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25261 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25261 } } + } + } + ai_chance = { + factor = 80 + modifier = { + factor = 0.5 + has_focus = focus_family + } + modifier = { + factor = 0.5 + trait = kind + } + modifier = { + factor = 0.5 + NOT = { piety = 100 } + } + } + } +} + +#Loser ping. +character_event = { + id = HF.25262 + hide_window = yes + + is_triggered_only = yes + + immediate = { + if = { #Receiver could be either. + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25263 } } + } + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25263 } } + } + } +} + +#Opponent: notified previous character lost his temper and has thus lost the game. +character_event = { + id = HF.25263 + title = EVTTITLEHF25250 + desc = EVTDESCAHF25263 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + } + fail_trigger_effect = { + warrior_lodge_flyting_cleanup_effect = yes + } + + option = { #Mock loser. + name = EVTOPTAHF25263 + custom_tooltip = { text = TT_EVTOPTAHF25263 } + #Influence reward based on opponent's strength. + if = { + limit = { + OR = { + event_target:flyting_contender_1 = { + NOT = { character = ROOT } + has_character_flag = flyting_strong + } + event_target:flyting_contender_2 = { + NOT = { character = ROOT } + has_character_flag = flyting_strong + } + } + } + add_society_currency_minor_effect = yes + hidden_tooltip = { #If defeated a strong guy, gain nickname. + if = { + limit = { + NOR = { + this_has_average_nickname_trigger = yes + this_has_cool_nickname_trigger = yes + this_has_super_cool_nickname_trigger = yes + } + } + random_list = { + 25 = { give_nickname = nick_the_sharp_tongue } + 25 = { give_nickname = nick_the_trickster } + 25 = { give_nickname = nick_the_merciless } + 25 = { give_nickname = nick_the_word_slayer } + 25 = { give_nickname = nick_the_grinner } + 25 = { give_nickname = nick_the_poison_tooth } + 25 = { give_nickname = nick_the_bellower } + 25 = { + trigger = { is_female = no } + give_nickname = nick_the_fox + } + 25 = { + trigger = { is_female = yes } + give_nickname = nick_the_vixen + } + 25 = { + trigger = { society_member_of = warrior_lodge_west_african } + give_nickname = nick_the_hyena + } + 15 = {} + } + } + } + } + if = { + limit = { + OR = { + event_target:flyting_contender_1 = { + NOT = { character = ROOT } + has_character_flag = flyting_medium + } + event_target:flyting_contender_2 = { + NOT = { character = ROOT } + has_character_flag = flyting_medium + } + } + } + add_society_currency_tiny_effect = yes + } + if = { + limit = { + OR = { + event_target:flyting_contender_1 = { + NOT = { character = ROOT } + has_character_flag = flyting_weak + } + event_target:flyting_contender_2 = { + NOT = { character = ROOT } + has_character_flag = flyting_weak + } + } + } + add_society_currency_trivial_effect = yes + } + tooltip = { + #Notify loser. + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { + show_scope_change = no + opinion = { + who = ROOT + modifier = opinion_lousy_winner + years = 5 + } + } + } + if = { + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { + show_scope_change = no + opinion = { + who = ROOT + modifier = opinion_lousy_winner + years = 5 + } + } + } + } + hidden_tooltip = { + #Notify loser. + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25268 } } + } + if = { + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25268 } } + } + } + ai_chance = { + factor = 30 + modifier = { + factor = 1.5 + is_evil_trigger = yes + } + } + } + option = { #Kind to loser. + name = EVTOPTBHF25263 + #Influence reward based on opponent's strength. + if = { + limit = { + OR = { + event_target:flyting_contender_1 = { + NOT = { character = ROOT } + has_character_flag = flyting_strong + } + event_target:flyting_contender_2 = { + NOT = { character = ROOT } + has_character_flag = flyting_strong + } + } + } + add_society_currency_tiny_effect = yes + hidden_tooltip = { #If defeated a strong guy, gain nickname. + if = { + limit = { + NOR = { + this_has_average_nickname_trigger = yes + this_has_cool_nickname_trigger = yes + this_has_super_cool_nickname_trigger = yes + } + } + random_list = { + 25 = { give_nickname = nick_the_sharp_tongue } + 25 = { give_nickname = nick_the_trickster } + 25 = { give_nickname = nick_the_merciless } + 25 = { give_nickname = nick_the_word_slayer } + 25 = { give_nickname = nick_the_grinner } + 25 = { give_nickname = nick_the_poison_tooth } + 25 = { give_nickname = nick_the_bellower } + 25 = { + trigger = { is_female = no } + give_nickname = nick_the_fox + } + 25 = { + trigger = { is_female = yes } + give_nickname = nick_the_vixen + } + 25 = { + trigger = { society_member_of = warrior_lodge_west_african } + give_nickname = nick_the_hyena + } + 15 = {} + } + } + } + } + if = { + limit = { + OR = { + event_target:flyting_contender_1 = { + NOT = { character = ROOT } + has_character_flag = flyting_medium + } + event_target:flyting_contender_2 = { + NOT = { character = ROOT } + has_character_flag = flyting_medium + } + } + } + add_society_currency_trivial_effect = yes + } + if = { + limit = { + OR = { + event_target:flyting_contender_1 = { + NOT = { character = ROOT } + has_character_flag = flyting_weak + } + event_target:flyting_contender_2 = { + NOT = { character = ROOT } + has_character_flag = flyting_weak + } + } + } + prestige = 10 + } + tooltip = { + #Notify loser. + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { + show_scope_change = no + opinion = { + who = ROOT + modifier = opinion_kind_winner + years = 5 + } + } + } + if = { + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { + show_scope_change = no + opinion = { + who = ROOT + modifier = opinion_kind_winner + years = 5 + } + } + } + } + hidden_tooltip = { + #Notify loser. + if = { + limit = { event_target:flyting_contender_1 = { character = ROOT } } + event_target:flyting_contender_2 = { character_event = { id = HF.25269 } } + } + if = { + limit = { event_target:flyting_contender_2 = { character = ROOT } } + event_target:flyting_contender_1 = { character_event = { id = HF.25269 } } + } + } + ai_chance = { + factor = 70 + modifier = { + factor = 1.5 + is_benevolent_trigger = yes + } + } + } + after = { + add_legend_progress_trivial_effect = yes + } +} + +#You lost. Mocked by winner. +character_event = { + id = HF.25268 + title = EVTTITLEHF25250 + desc = EVTDESCHF25268 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + } + fail_trigger_effect = { + warrior_lodge_flyting_cleanup_effect = yes + } + option = { #Special option. - Character starts duel! + name = EVTOPTYHF25268 + custom_tooltip = { text = tooltip_22022_Y } + trigger = { + this_can_duel_with_from_trigger = yes + } + tiered_prestige_negative_effect = yes + opinion = { + modifier = opinion_antagonized_3 + who = ROOT + years = 15 + } + #Influence penalty based on opponent's strength. + if = { + limit = { + FROM = { + has_character_flag = flyting_strong + } + } + detract_society_currency_minor_effect = yes + } + if = { + limit = { + FROM = { + has_character_flag = flyting_medium + } + } + detract_society_currency_tiny_effect = yes + } + if = { + limit = { + FROM = { + has_character_flag = flyting_weak + } + } + detract_society_currency_trivial_effect = yes + hidden_tooltip = { #If defeated by a weak guy, gain nickname. + if = { + limit = { + has_nickname = no + } + random_list = { + 25 = { give_nickname = nick_the_short_tempered } + 25 = { give_nickname = nick_the_red_cheeks } + 25 = { give_nickname = nick_the_whiner } + 25 = { give_nickname = nick_the_moaner } + 25 = { + trigger = { is_female = no } + give_nickname = nick_the_blushing + } + 25 = { + trigger = { is_female = yes } + give_nickname = nick_the_shrinking_violet + } + 25 = {} + } + } + } + } + #REQUIRED event targets for setting up duel evaluation! + hidden_tooltip = { + save_event_target_as = combatant_1 #the person issuing the duel... + FROM = { save_event_target_as = combatant_2 } #the target of the duel... + } + FROM = { + show_scope_change = no + apply_degree_of_dishonorable_duel_effect = yes #checks a bunch of age and health statuses... + } + + pacifists_lose_piety_effect = yes + add_character_modifier = { + modifier = recent_duel_timer + duration = 365 + hidden = yes + } + hidden_tooltip = { + FROM = { character_event = { id = HFP.10095 days = 1 } } #Duel evaluation (hidden) + result event as follow-up. + } + ai_chance = { + factor = 40 + modifier = { + factor = 0.1 + trait = craven + } + modifier = { + factor = 1.5 + trait = brave + } + modifier = { + factor = 0.75 + is_tribal = no + is_nomadic = no + } + modifier = { + factor = 1.25 + ROOT = { attribute_diff = { character = FROM attribute = combat_rating value = 5 } } + } + modifier = { + factor = 1.25 + ROOT = { attribute_diff = { character = FROM attribute = combat_rating value = 10 } } + } + modifier = { + factor = 1.5 + ROOT = { attribute_diff = { character = FROM attribute = combat_rating value = 15 } } + } + modifier = { + factor = 1.75 + ROOT = { attribute_diff = { character = FROM attribute = combat_rating value = 20 } } + } + } + } + option = { #Become a rival. + name = EVTOPTAHF25268 + trigger = { + NOT = { num_of_rivals = 3 } + NOT = { FROM = { num_of_rivals = 3 } } + NOR = { + is_rival = FROM + is_friend = FROM + is_lover = FROM + } + } + add_rival = FROM + hidden_tooltip = { FROM = { character_event = { id = HF.25270 } } } #Notify. + tiered_prestige_negative_effect = yes + #Influence penalty based on opponent's strength. + if = { + limit = { + FROM = { + has_character_flag = flyting_strong + } + } + detract_society_currency_minor_effect = yes + } + if = { + limit = { + FROM = { + has_character_flag = flyting_medium + } + } + detract_society_currency_tiny_effect = yes + } + if = { + limit = { + FROM = { + has_character_flag = flyting_weak + } + } + hidden_tooltip = { #If defeated by a weak guy, gain nickname. + if = { + limit = { + has_nickname = no + } + random_list = { + 25 = { give_nickname = nick_the_short_tempered } + 25 = { give_nickname = nick_the_red_cheeks } + 25 = { give_nickname = nick_the_whiner } + 25 = { give_nickname = nick_the_moaner } + 25 = { + trigger = { is_female = no } + give_nickname = nick_the_blushing + } + 25 = { + trigger = { is_female = yes } + give_nickname = nick_the_shrinking_violet + } + 25 = {} + } + } + } + } + opinion = { + who = FROM + modifier = opinion_lousy_winner + years = 5 + } + custom_tooltip = { text = TT_EVTOPTAHF25268 } + hidden_tooltip = { + any_society_member = { + limit = { + is_adult = yes + same_society_as = ROOT + NOT = { + character = FROM + } + } + opinion = { + who = ROOT + modifier = opinion_loser + years = 2 + } + } + warrior_lodge_flyting_cleanup_effect = yes #Decide who wins. + } + ai_chance = { factor = 20 } + } + option = { + name = EVTOPTBHF25268 + #Influence penalty based on opponent's strength. + tiered_prestige_negative_effect = yes + if = { + limit = { + FROM = { + has_character_flag = flyting_strong + } + } + detract_society_currency_minor_effect = yes + } + if = { + limit = { + FROM = { + has_character_flag = flyting_medium + } + } + detract_society_currency_tiny_effect = yes + } + if = { + limit = { + FROM = { + has_character_flag = flyting_weak + } + } + detract_society_currency_trivial_effect = yes + hidden_tooltip = { #If defeated by a weak guy, gain nickname. + if = { + limit = { + has_nickname = no + } + random_list = { + 25 = { give_nickname = nick_the_short_tempered } + 25 = { give_nickname = nick_the_red_cheeks } + 25 = { give_nickname = nick_the_whiner } + 25 = { give_nickname = nick_the_moaner } + 25 = { + trigger = { is_female = no } + give_nickname = nick_the_blushing + } + 25 = { + trigger = { is_female = yes } + give_nickname = nick_the_shrinking_violet + } + 25 = {} + } + } + } + } + opinion = { + who = FROM + modifier = opinion_lousy_winner + years = 5 + } + custom_tooltip = { text = TT_EVTOPTAHF25268 } + hidden_tooltip = { + any_society_member = { + limit = { + is_adult = yes + same_society_as = ROOT + NOT = { + character = FROM + } + } + opinion = { + who = ROOT + modifier = opinion_loser + years = 2 + } + } + warrior_lodge_flyting_cleanup_effect = yes #Decide who wins. + } + ai_chance = { factor = 100 } + } +} + +#You lost, but the winner is polite. +character_event = { + id = HF.25269 + title = EVTTITLEHF25250 + desc = EVTDESCHF25269 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + } + fail_trigger_effect = { + warrior_lodge_flyting_cleanup_effect = yes + } + option = { #Become a rival. - Only envious when the winner is kind. + name = EVTOPTAHF25269 + trigger = { + trait = envious + NOT = { num_of_rivals = 3 } + NOT = { FROM = { num_of_rivals = 3 } } + NOR = { + is_rival = FROM + is_friend = FROM + is_lover = FROM + } + } + tooltip_info = envious + add_rival = FROM + tiered_prestige_negative_effect = yes + hidden_tooltip = { FROM = { character_event = { id = HF.25271 } } } #Notify. + #Influence penalty based on opponent's strength. + if = { + limit = { + FROM = { + has_character_flag = flyting_strong + } + } + detract_society_currency_minor_effect = yes + } + if = { + limit = { + FROM = { + has_character_flag = flyting_medium + } + } + detract_society_currency_tiny_effect = yes + } + if = { + limit = { + FROM = { + has_character_flag = flyting_weak + } + } + detract_society_currency_trivial_effect = yes + hidden_tooltip = { #If defeated by a weak guy, gain nickname. + if = { + limit = { + has_nickname = no + } + random_list = { + 25 = { give_nickname = nick_the_short_tempered } + 25 = { give_nickname = nick_the_red_cheeks } + 25 = { give_nickname = nick_the_whiner } + 25 = { give_nickname = nick_the_moaner } + 25 = { + trigger = { is_female = no } + give_nickname = nick_the_blushing + } + 25 = { + trigger = { is_female = yes } + give_nickname = nick_the_shrinking_violet + } + 25 = {} + } + } + } + } + opinion = { + who = FROM + modifier = opinion_lousy_winner + years = 5 + } + custom_tooltip = { text = TT_EVTOPTAHF25269 } + hidden_tooltip = { + any_society_member = { + limit = { + is_adult = yes + same_society_as = ROOT + NOT = { + character = FROM + } + } + opinion = { + who = ROOT + modifier = opinion_loser + years = 2 + } + } + warrior_lodge_flyting_cleanup_effect = yes #Decide who wins. + } + ai_chance = { factor = 20 } + } + option = { + name = EVTOPTBHF25269 + tiered_prestige_negative_effect = yes + #Influence penalty based on opponent's strength. + if = { + limit = { + FROM = { + has_character_flag = flyting_strong + } + } + detract_society_currency_minor_effect = yes + } + if = { + limit = { + FROM = { + has_character_flag = flyting_medium + } + } + detract_society_currency_tiny_effect = yes + } + if = { + limit = { + FROM = { + has_character_flag = flyting_weak + } + } + detract_society_currency_trivial_effect = yes + hidden_tooltip = { #If defeated by a weak guy, gain nickname. + if = { + limit = { + has_nickname = no + } + random_list = { + 25 = { give_nickname = nick_the_short_tempered } + 25 = { give_nickname = nick_the_red_cheeks } + 25 = { give_nickname = nick_the_whiner } + 25 = { give_nickname = nick_the_moaner } + 25 = { + trigger = { is_female = no } + give_nickname = nick_the_blushing + } + 25 = { + trigger = { is_female = yes } + give_nickname = nick_the_shrinking_violet + } + 25 = {} + } + } + } + } + opinion = { + who = FROM + modifier = opinion_kind_winner + years = 5 + } + hidden_tooltip = { + warrior_lodge_flyting_cleanup_effect = yes #Decide who wins. + } + ai_chance = { factor = 100 } + } +} + +#Loser declared rivalry because you mocked him. +character_event = { + id = HF.25270 + title = EVTTITLEHF25250 + desc = EVTDESCHF25270 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + } + fail_trigger_effect = { + warrior_lodge_flyting_cleanup_effect = yes + } + option = { # + name = EVTOPTAHF25270 + add_rival = FROM + warrior_lodge_flyting_cleanup_effect = yes + } +} + +#Loser declared rivalry despite your kindness.. +character_event = { + id = HF.25271 + title = EVTTITLEHF25250 + desc = EVTDESCHF25271 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + } + fail_trigger_effect = { + warrior_lodge_flyting_cleanup_effect = yes + } + option = { # + name = EVTOPTAHF25270 + add_rival = FROM + warrior_lodge_flyting_cleanup_effect = yes + } +} + +############################################# + + # Drinking game # + +############################################# +#Warrior Lodge Hero decides whether to start. +character_event = { + id = HF.25280 + title = EVTTITLEHF25280 + desc = EVTDESCHF25280 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + hide_new = yes + + is_triggered_only = yes + + trigger = { + has_dlc = "Holy Fury" + is_adult = yes + in_command = no + prisoner = no + society_rank = 4 + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = incapable } + NOT = { has_character_flag = do_not_disturb } + NOT = { society_member_of = warrior_lodge_bon } + is_member_of_any_warrior_lodge_trigger = yes + any_society_member = { #Make sure there are enough contenders to join in. + same_society_as = ROOT + is_adult = yes + prisoner = no + in_command = no + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = incapable } + NOT = { has_character_flag = do_not_disturb } + NOT = { character = ROOT } + count = 4 #At least a few other members should be around. + } + } + immediate = { + random_list = { + 33 = { sound_effect = pagan_cheering_01 } + 33 = { sound_effect = pagan_cheering_02 } + 33 = { sound_effect = pagan_cheering_03 } + 33 = { sound_effect = warrior_lodge_ambient_02 } + } + set_character_flag = do_not_disturb + hidden_tooltip = { + character_event = { id = HF.25301 days = 15 } #Clear flag. + } + } + option = { #Start tournament + name = EVTOPTAHF25280 + custom_tooltip = { text = TOOLTIP_EVTOPTAHF25280 } + hidden_tooltip = { + any_society_member = { + limit = { + same_society_as = ROOT + is_adult = yes + in_command = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = incapable } + NOT = { has_character_flag = do_not_disturb } + NOT = { character = ROOT } + } + character_event = { id = HF.25281 } #Call in contenders. + } + save_event_target_as = WL_host_drinking_game + character_event = { id = HF.25283 days = 5 } #Actually start. + } + hidden_tooltip = { character_event = { id = HF.25282 days = 60 } } #Clear flags. + ai_chance = { factor = 100 } + } + option = { #Do not. - End of line. + name = EVTOPTBHF25280 + detract_society_currency_major_effect = yes + clr_character_flag = do_not_disturb + ai_chance = { factor = 0 } + } +} + +#Other Warrior Lodge Members join in. +character_event = { + id = HF.25281 + title = EVTTITLEHF25280 + desc = EVTDESCHF25281 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + NOT = { has_character_flag = do_not_disturb } + } + immediate = { + set_character_flag = do_not_disturb + hidden_tooltip = { + character_event = { id = HF.25301 days = 15 } #Clear flag. + } + } + + option = { # + name = EVTOPTAHF25281 + custom_tooltip = { text = TT_EVTOPTAHF25281 } + set_character_flag = flag_WL_drinking_game_contender + ai_chance = { factor = 100 } + hidden_tooltip = { character_event = { id = HF.25282 days = 60 } } #Clear flags. + } + option = { # + name = EVTOPTBHF25281 + detract_society_currency_medium_effect = yes + tiered_prestige_negative_effect = yes + clr_character_flag = do_not_disturb + ai_chance = { factor = 0 } + } +} + +#Delayed cleanup for guests, just in case something happens. +character_event = { + id = HF.25282 + hide_window = yes + + is_triggered_only = yes + + immediate = { + warrior_lodge_drinking_game_cleanup_effect = yes + } +} + +#Host: The game begins. +character_event = { + id = HF.25283 + title = EVTTITLEHF25280 + desc = EVTDESCHF25283 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + option = { # + name = EVTOPTAHF25283 + custom_tooltip = { text = TT_EVTOPTAHF25283 } + hidden_tooltip = { + any_society_member = { #Notify all contenders. + limit = { + same_society_as = ROOT + has_character_flag = flag_WL_drinking_game_contender + } + character_event = { id = HF.25284 } + } + character_event = { id = HF.25285 days = 5 } #Scope two finalists. + } + ai_chance = { factor = 100 } + } +} + +#Contenders notified. +character_event = { + id = HF.25284 + title = EVTTITLEHF25280 + desc = EVTDESCHF25284 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + option = { # + name = EVTOPTAHF25284 + custom_tooltip = { text = TT_EVTOPTAHF25284 } + ai_chance = { factor = 100 } + } +} + +#hidden event for the host, picking two finalists and sending event to underdog. +character_event = { + id = HF.25285 + hide_window = yes + + is_triggered_only = yes + + immediate = { + pick_potential_WL_drinking_finalists_effect = yes + } +} + +#Host Fallback: There was no winner for some reason. +character_event = { + id = HF.25286 + title = EVTTITLEHF25280 + desc = EVTDESCHF25286 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + option = { # + name = EVTOPTAHF25286 + tiered_prestige_reward_effect = yes + hidden_tooltip = { + warrior_lodge_drinking_game_cleanup_effect = yes + any_society_member = { #Notify all contenders. + limit = { + same_society_as = ROOT + has_character_flag = flag_WL_drinking_game_contender + } + character_event = { id = HF.25287 } + } + } + ai_chance = { factor = 100 } + } +} + +#Contenders informed no winner was found. +character_event = { + id = HF.25287 + title = EVTTITLEHF25280 + desc = EVTDESCHF25287 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + option = { # + name = EVTOPTAHF25287 + add_society_currency_trivial_effect = yes + if = { + limit = { NOT = { trait = drunkard } } + random = { chance = 2 add_trait = drunkard } + } + hidden_tooltip = { warrior_lodge_drinking_game_cleanup_effect = yes } + ai_chance = { factor = 100 } + } +} + +#A finalist is losing: chance to use special action. +character_event = { + id = HF.25288 + title = EVTTITLEHF25280 + desc = { + text = EVTDESCAHF25288 + trigger = { + event_target:warrior_lodge_drinking_finalist_1 = { character = ROOT } + } + } + desc = { + text = EVTDESCBHF25288 + trigger = { + event_target:warrior_lodge_drinking_finalist_2 = { character = ROOT } + } + } + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + #Intrigue. + #Strong/Robust power through. + #Normal. + + option = { # + name = EVTOPTAHF25288 + trigger = { intrigue = 10 } + tooltip_info = intrigue + custom_tooltip = { text = TT_EVTOPTAHF25288 } + set_character_flag = flag_intrigue_cheating_WL_drinking_game + ai_chance = { + factor = 50 + modifier = { + factor = 1.5 + trait = deceitful + } + modifier = { + factor = 0.5 + trait = honest + } + modifier = { + factor = 0.5 + trait = stubborn + } + modifier = { + factor = 0.5 + trait = just + } + } + } + option = { # + name = EVTOPTBHF25288 + trigger = { trait = strong } + tooltip_info = strong + custom_tooltip = { text = TT_EVTOPTBHF25288 } + set_character_flag = flag_strong_boost_WL_drinking_game + ai_chance = { factor = 100 } + } + option = { # + name = EVTOPTBHF25288 + trigger = { trait = robust } + tooltip_info = robust + custom_tooltip = { text = TT_EVTOPTBHF25288 } + set_character_flag = flag_strong_boost_WL_drinking_game + ai_chance = { factor = 100 } + } + option = { # + name = EVTOPTCHF25288 + ai_chance = { factor = 10 } + } + after = { # + hidden_tooltip = { pick_potential_WL_drinking_winner_effect = yes } + } +} + +#Host discovers cheater. +character_event = { + id = HF.25289 + title = EVTTITLEHF25280 + desc = EVTDESCHF25289 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + portrait = FROM + + is_triggered_only = yes + + option = { #Let it slide. + name = EVTOPTAHF25289 + custom_tooltip = { text = TT_EVTOPTAHF25289 } + set_character_flag = flag_WL_drinking_host_approves_of_cheating + hidden_tooltip = { pick_potential_WL_drinking_winner_effect = yes } #Once again. + ai_chance = { + factor = 20 + modifier = { + factor = 1.5 + is_friend = FROM + } + modifier = { + factor = 1.5 + is_lover = FROM + } + modifier = { + factor = 1.25 + is_close_relative = FROM + } + modifier = { + factor = 0 + is_rival = FROM + } + modifier = { + factor = 1.5 + trait = deceitful + } + modifier = { + factor = 0.5 + trait = honest + } + modifier = { + factor = 0.5 + trait = stubborn + } + modifier = { + factor = 0.5 + trait = just + } + } + } + option = { # + name = EVTOPTBHF25289 + custom_tooltip = { text = TT_EVTOPTBHF25289 } + tooltip = { + FROM = { + tiered_prestige_negative_effect = yes + detract_society_currency_medium_effect = yes + } + } + hidden_tooltip = { + FROM = { character_event = { id = HF.25290 } } #Inform the guy. + } + ai_chance = { factor = 100 } + } +} + +#Cheater was discovered. +character_event = { + id = HF.25290 + title = EVTTITLEHF25280 + desc = EVTDESCHF25290 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25290 + custom_tooltip = { text = TT_EVTOPTAHF25290 } + tiered_prestige_negative_effect = yes + detract_society_currency_medium_effect = yes + random = { chance = 10 add_trait = wounded } + hidden_tooltip = { + any_society_member = { + limit = { + is_adult = yes + prisoner = no + same_society_as = ROOT + NOT = { + character = FROM + } + } + opinion = { + who = ROOT + modifier = opinion_cheater + years = 5 + } + } + if = { + limit = { + has_nickname = no + } + random_list = { + 15 = { give_nickname = nick_the_cheater } + 15 = { give_nickname = nick_the_liar } + 15 = { give_nickname = nick_the_dry_throat } + 70 = {} + } + } + if = { + limit = { + event_target:warrior_lodge_drinking_finalist_1 = { is_alive = yes NOT = { character = ROOT } } #If other guy still exists, he has won. + } + event_target:warrior_lodge_drinking_finalist_1 = { character_event = { id = HF.25291 } } + } + else_if = { + limit = { + event_target:warrior_lodge_drinking_finalist_2 = { is_alive = yes NOT = { character = ROOT } } #If other guy still exists, he has won. + } + event_target:warrior_lodge_drinking_finalist_2 = { character_event = { id = HF.25291 } } + } + else = { + event_target:WL_host_drinking_game = { character_event = { id = HF.25286 } } #Otherwise inform host that nobody won. + } + warrior_lodge_drinking_game_cleanup_effect = yes + } + } +} + +#Other guy was cheating, you are the last one standing. +character_event = { + id = HF.25291 + title = EVTTITLEHF25280 + desc = EVTDESCHF25291 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25291 + add_society_currency_tiny_effect = yes + warrior_lodge_drinking_game_cleanup_effect = yes + hidden_tooltip = { + if = { + limit = { + NOR = { + this_has_average_nickname_trigger = yes + this_has_cool_nickname_trigger = yes + this_has_super_cool_nickname_trigger = yes + } + } + random_list = { + 10 = { give_nickname = nick_the_hundred_flagons } + 10 = { give_nickname = nick_the_bottomless } + 80 = {} + } + } + } + hidden_tooltip = { + #Notify host. + event_target:WL_host_drinking_game = { character_event = { id = HF.25293 } } + } + ai_chance = { factor = 100 } + } +} + +#Winner receives event. +character_event = { + id = HF.25292 + title = EVTTITLEHF25280 + desc = EVTDESCHF25292 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25292 + add_society_currency_tiny_effect = yes + warrior_lodge_drinking_game_cleanup_effect = yes + add_legend_progress_trivial_effect = yes + if = { + limit = { NOT = { trait = drunkard } } + random = { chance = 10 add_trait = drunkard } + } + hidden_tooltip = { + if = { + limit = { + NOR = { + this_has_average_nickname_trigger = yes + this_has_cool_nickname_trigger = yes + this_has_super_cool_nickname_trigger = yes + } + } + random_list = { + 10 = { give_nickname = nick_the_hundred_flagons } + 10 = { give_nickname = nick_the_bottomless } + 80 = {} + } + } + } + hidden_tooltip = { + if = { #Notify the other finalist. + limit = { + event_target:warrior_lodge_drinking_finalist_1 = { is_alive = yes NOT = { character = ROOT } } #If other guy still exists, he has won. + } + event_target:warrior_lodge_drinking_finalist_1 = { character_event = { id = HF.25295 } } + } + else_if = { + limit = { + event_target:warrior_lodge_drinking_finalist_2 = { is_alive = yes NOT = { character = ROOT } } #If other guy still exists, he has won. + } + event_target:warrior_lodge_drinking_finalist_2 = { character_event = { id = HF.25295 } } + } + #Notify host. + event_target:WL_host_drinking_game = { character_event = { id = HF.25293 } } + } + ai_chance = { factor = 100 } + } +} + +#Host: From has won. +character_event = { + id = HF.25293 + title = EVTTITLEHF25280 + desc = EVTDESCHF25293 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + portrait = FROM + + is_triggered_only = yes + + #Make non-aggression pact. (Trusting only, rulers only) + #Make friend. + #Give gold for currency. + #Nothing. + + option = { + name = EVTOPTAHF25293 + trigger = { + trait = trusting + higher_real_tier_than = BARON + FROM = { + is_landed = yes + higher_real_tier_than = BARON + } + NOT = { vassal_of = FROM } + NOT = { has_non_aggression_pact_with = FROM } + } + tooltip_info = trusting + add_society_currency_minor_effect = yes + tooltip = { + opinion = { + modifier = in_non_aggression_pact + years = 50 + who = FROM + } + } + hidden_tooltip = { FROM = { character_event = { id = HF.25296 } } } #Inform winner. + ai_chance = { factor = 10 } + } + option = { + name = EVTOPTBHF25293 + trigger = { + NOR = { + num_of_friends = 3 + is_rival = FROM + is_friend = FROM + is_lover = FROM + FROM = { num_of_friends = 3 } + } + NOT = { trait = paranoid } + } + add_society_currency_tiny_effect = yes + tooltip = { + add_friend = FROM + } + hidden_tooltip = { FROM = { character_event = { id = HF.25298 } } } #Inform winner. + ai_chance = { + factor = 10 + modifier = { + factor = 2 + trait = gregarious + } + modifier = { + factor = 2 + trait = socializer + } + modifier = { + factor = 2 + trait = trusting + } + } + } + option = { + name = EVTOPTCHF25293 + add_society_currency_tiny_effect = yes + tooltip = { + transfer_scaled_wealth = { to = FROM value = 0.5 min = 50 max = 100 } + } + hidden_tooltip = { FROM = { character_event = { id = HF.25300 } } } #Inform winner. + ai_chance = { + factor = 10 + modifier = { + factor = 2 + trait = charitable + } + modifier = { + factor = 2 + trait = just + } + modifier = { + factor = 2 + trait = kind + } + } + } + option = { + name = EVTOPTDHF25293 + ai_chance = { + factor = 10 + } + } + after = { + tooltip = { add_legend_progress_trivial_effect = yes } #*actually* added only *once*, for the winner... + hidden_tooltip = { + warrior_lodge_drinking_game_cleanup_effect = yes + any_society_member = { #Notify all other contenders. + limit = { + same_society_as = ROOT + has_character_flag = flag_WL_drinking_game_contender + NOT = { character = FROM } + NOT = { event_target:warrior_lodge_drinking_finalist_1 = { character = PREV } } + NOT = { event_target:warrior_lodge_drinking_finalist_2 = { character = PREV } } + } + character_event = { id = HF.25294 } + } + } + } +} + +#All other contenders notified that they have lost. +character_event = { + id = HF.25294 + title = EVTTITLEHF25280 + desc = EVTDESCHF25294 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + portrait = FROMFROM + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25294 + prestige = 25 + if = { + limit = { NOT = { trait = drunkard } } + random = { chance = 1 add_trait = drunkard } + } + warrior_lodge_drinking_game_cleanup_effect = yes + tooltip = { add_legend_progress_trivial_effect = yes } #*actually* added only *once*, for the winner... + ai_chance = { factor = 100 } + } +} + +#Second finalist notified of loss. +character_event = { + id = HF.25295 + title = EVTTITLEHF25280 + desc = EVTDESCHF25295 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + option = { # + name = EVTOPTAHF25295 + add_society_currency_tiny_effect = yes + if = { + limit = { NOT = { trait = drunkard } } + random = { chance = 3 add_trait = drunkard } + } + warrior_lodge_drinking_game_cleanup_effect = yes + tooltip = { add_legend_progress_trivial_effect = yes } #*actually* added only *once*, for the winner... + ai_chance = { factor = 100 } + } +} + +#Winner informed of non-aggression pact offer from Hero. +character_event = { + id = HF.25296 + title = EVTTITLEHF25280 + desc = EVTDESCHF25296 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + option = { # + name = EVTOPTAHF25296 + opinion = { + modifier = in_non_aggression_pact + years = 50 + who = FROM + } + hidden_tooltip = { + FROM = { + show_scope_change = no + opinion = { + modifier = in_non_aggression_pact + years = 50 + who = ROOT + } + } + } + warrior_lodge_drinking_game_cleanup_effect = yes + ai_chance = { factor = 100 } + } + option = { # + name = EVTOPTBHF25296 + tiered_prestige_negative_effect = yes + detract_society_currency_tiny_effect = yes + tooltip = { + FROM = { + show_scope_change = no + opinion = { + modifier = opinion_antagonized_2 + years = 20 + who = ROOT + } + } + } + hidden_tooltip = { + warrior_lodge_drinking_game_cleanup_effect = yes + character_event = { id = HF.25297 } + } + ai_chance = { factor = 0 } + } +} + +#Hero informed that the winner scorned your offer. +character_event = { + id = HF.25297 + title = EVTTITLEHF25280 + desc = EVTDESCHF25297 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + option = { # + name = EVTOPTAHF25297 + warrior_lodge_drinking_game_cleanup_effect = yes + opinion = { + modifier = opinion_antagonized_2 + years = 20 + who = FROM + } + ai_chance = { factor = 100 } + } +} +#Winner informed of friendship offer from Hero. +character_event = { + id = HF.25298 + title = EVTTITLEHF25280 + desc = EVTDESCHF25298 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + option = { # + name = EVTOPTAHF25298 + add_friend = FROM + warrior_lodge_drinking_game_cleanup_effect = yes + ai_chance = { factor = 100 } + } + option = { #Refuse + name = EVTOPTBHF25298 + tiered_prestige_negative_effect = yes + tooltip = { + FROM = { + show_scope_change = no + opinion = { + modifier = opinion_antagonized_2 + years = 20 + who = ROOT + } + } + } + hidden_tooltip = { + character_event = { id = HF.25299 } + } + ai_chance = { factor = 0 } + } +} + +#Hero informed that the winner scorned your offer. +character_event = { + id = HF.25299 + title = EVTTITLEHF25280 + desc = EVTDESCHF25299 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + option = { # + name = EVTOPTAHF25299 + opinion = { + modifier = opinion_antagonized_2 + years = 20 + who = FROM + } + ai_chance = { factor = 100 } + } +} + +#Winner gets money. +character_event = { + id = HF.25300 + title = EVTTITLEHF25280 + desc = EVTDESCHF25300 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + option = { # + name = EVTOPTAHF25300 + FROM = { + show_scope_change = no + transfer_scaled_wealth = { to = ROOT value = 0.5 min = 50 max = 100 } + } + ai_chance = { factor = 100 } + } +} + +#Safety flag clearance, just in case anybody dies in the middle of a chain. +character_event = { + id = HF.25301 + hide_window = yes + + is_triggered_only = yes + + immediate = { + clr_character_flag = do_not_disturb + } +} \ No newline at end of file diff --git a/MOD/Witcher/events/HF_warrior_lodge_flavor_events.txt b/MOD/Witcher/events/HF_warrior_lodge_flavor_events.txt new file mode 100644 index 000000000..90eefcd36 --- /dev/null +++ b/MOD/Witcher/events/HF_warrior_lodge_flavor_events.txt @@ -0,0 +1,4657 @@ +########################################### +# # +# Warrior Lodge flavor events # +# # +# ID HF.500-HF. # +# ID HF.51000-HF.51010 # +# # +########################################### + +namespace = HF + +character_event = { + id = HF.500 + picture = GFX_evt_melee + border = GFX_event_normal_frame_war + desc = HFP_500_DESC + is_triggered_only = yes + + is_in_society = yes + + portrait = event_target:combatant_1 + + trigger = { + NOT = { has_character_flag = call_to_legend_active } + war = no + society_rank == 4 + is_member_of_any_warrior_lodge_trigger = yes + is_inaccessible_or_incapable_trigger = no + is_adult = yes + any_society_member = { + count = 4 + same_society_as = ROOT + NOR = { + is_inaccessible_or_incapable_trigger = yes + society_rank == 4 + has_character_modifier = recent_duel_timer + character = ROOT + } + in_command = no + is_adult = yes + ai = yes + } + } + + immediate = { + + random_list = { + 10 = { + sound_effect = fighting_instructions_01 + } + 10 = { + sound_effect = fighting_instructions_02 + } + } + + hidden_effect = { + save_event_target_as = hero_instigating_duel + random_society_member = { # Picks someone who would need some training... + limit = { + same_society_as = ROOT + NOR = { + is_inaccessible_or_incapable_trigger = yes + society_rank == 4 + has_character_modifier = recent_duel_timer + character = ROOT + } + in_command = no + is_adult = yes + ai = yes + } + preferred_limit = { + NOT = { + combat_rating = 11 + } + } + preferred_limit = { + NOT = { + combat_rating = 16 + } + } + preferred_limit = { + NOT = { + combat_rating = 21 + } + } + preferred_limit = { + NOT = { + combat_rating = 26 + } + } + save_event_target_as = combatant_1 + } + event_target:combatant_1 = { + any_society_member = { # Pick someone even + limit = { + same_society_as = ROOT + NOR = { + is_inaccessible_or_incapable_trigger = yes + society_rank == 4 + has_character_modifier = recent_duel_timer + character = ROOT + character = event_target:combatant_1 + character = event_target:society_practice_duelist_target_1 + character = event_target:society_practice_duelist_target_2 + character = event_target:society_practice_duelist_target_3 + } + in_command = no + is_adult = yes + ai = yes + } + score_value = { + value = 10 + matching_soldier_score = yes + } + save_event_target_as = society_practice_duelist_target_2 + } + } + any_society_member = { # Pick someone bad + limit = { + same_society_as = ROOT + NOR = { + is_inaccessible_or_incapable_trigger = yes + society_rank == 4 + has_character_modifier = recent_duel_timer + character = ROOT + character = event_target:combatant_1 + character = event_target:society_practice_duelist_target_1 + character = event_target:society_practice_duelist_target_2 + character = event_target:society_practice_duelist_target_3 + } + in_command = no + is_adult = yes + ai = yes + } + score_value = { + value = 10 + bad_soldier_outcome_score = yes + } + save_event_target_as = society_practice_duelist_target_1 + } + any_society_member = { # Pick someone awesome + limit = { + same_society_as = ROOT + NOR = { + is_inaccessible_or_incapable_trigger = yes + society_rank == 4 + has_character_modifier = recent_duel_timer + character = ROOT + character = event_target:combatant_1 + character = event_target:society_practice_duelist_target_1 + character = event_target:society_practice_duelist_target_2 + character = event_target:society_practice_duelist_target_3 + } + in_command = no + is_adult = yes + ai = yes + } + score_value = { + value = 10 + good_soldier_outcome_score = yes + } + save_event_target_as = society_practice_duelist_target_3 + } + } + } + + option = { # Duel option 1 + name = EVTOPTA_HF_500 + show_portrait = event_target:society_practice_duelist_target_1 + + hidden_effect = { + event_target:combatant_1 = { + set_character_flag = mock_duel + set_character_flag = easy_duel + set_character_flag = notify_instigating_hero + } + event_target:society_practice_duelist_target_1 = { + save_event_target_as = combatant_2 + } + event_target:combatant_2 = { + apply_degree_of_dishonorable_duel_effect = yes #checks a bunch of age and health statuses... + character_event = { id = HFP.10095 } + } + } + + custom_tooltip = { + text = easy_duel_tt + } + } + option = { # Duel option 2 + name = EVTOPTB_HF_500 + show_portrait = event_target:society_practice_duelist_target_2 + + hidden_effect = { + event_target:combatant_1 = { + set_character_flag = mock_duel + set_character_flag = even_duel + set_character_flag = notify_instigating_hero + } + event_target:society_practice_duelist_target_2 = { + save_event_target_as = combatant_2 + } + event_target:combatant_2 = { + apply_degree_of_dishonorable_duel_effect = yes #checks a bunch of age and health statuses... + character_event = { id = HFP.10095 } + } + } + + custom_tooltip = { + text = even_duel_tt + } + } + option = { # Duel option 3 + name = EVTOPTC_HF_500 + show_portrait = event_target:society_practice_duelist_target_3 + + hidden_effect = { + event_target:combatant_1 = { + set_character_flag = mock_duel + set_character_flag = hard_duel + set_character_flag = notify_instigating_hero + } + event_target:society_practice_duelist_target_3 = { + save_event_target_as = combatant_2 + } + event_target:combatant_2 = { + apply_degree_of_dishonorable_duel_effect = yes #checks a bunch of age and health statuses... + character_event = { id = HFP.10095 } + } + } + + custom_tooltip = { + text = dangerous_duel_tt + } + } + option = { # Do not duel anyone + name = EVTOPTD_HF_500 + detract_society_currency_trivial_effect = yes + ai_chance = { + factor = 0 + } + } +} + +character_event = { # Win! + id = HFP.501 + picture = GFX_evt_melee + border = GFX_event_normal_frame_war + desc = HFP_501_DESC + portrait = event_target:combatant_1 + is_triggered_only = yes + + immediate = { + sound_effect = duel_win + event_target:combatant_1 = { + random_list = { + 10 = { # I Appreciated this! + set_character_flag = appreciated_duel + + modifier = { + factor = 3 + trait = trusting + } + + # For Easy Duels + modifier = { + factor = 2 + trait = greedy + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = slothful + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = envious + has_character_flag = easy_duel + } + modifier = { + factor = 3 + trait = proud + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = ambitious + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = cruel + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = arbitrary + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = craven + has_character_flag = easy_duel + } + + # For Even Duels + modifier = { + factor = 2 + trait = brave + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = honest + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = patient + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = kind + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = humble + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = temperate + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = cynical + has_character_flag = even_duel + } + modifier = { + factor = 5 + trait = just + has_character_flag = even_duel + } + + # For Hard Duels + modifier = { + factor = 5 + trait = proud + has_character_flag = hard_duel + } + modifier = { + factor = 5 + trait = ambitious + has_character_flag = hard_duel + } + modifier = { + factor = 5 + trait = brave + has_character_flag = hard_duel + } + modifier = { + factor = 2 + trait = humble + has_character_flag = hard_duel + } + } + 10 = { # This was beneath me... + set_character_flag = beneath_me_duel + + modifier = { + factor = 2 + trait = honest + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = patient + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = kind + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = humble + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = temperate + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = cynical + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = just + has_character_flag = easy_duel + } + modifier = { + factor = 5 + trait = brave + has_character_flag = easy_duel + } + + # For Even Duels + modifier = { + factor = 2 + trait = envious + has_character_flag = even_duel + } + modifier = { + factor = 5 + trait = proud + has_character_flag = even_duel + } + modifier = { + factor = 5 + trait = ambitious + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = cruel + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = arbitrary + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = paranoid + has_character_flag = even_duel + } + + # For Hard Duels + modifier = { + factor = 5 + trait = just + has_character_flag = hard_duel + } + modifier = { + factor = 2 + trait = temperate + has_character_flag = hard_duel + } + modifier = { + factor = 2 + trait = content + has_character_flag = hard_duel + } + modifier = { + factor = 2 + trait = cynical + has_character_flag = hard_duel + } + modifier = { + factor = 2 + trait = stubborn + has_character_flag = hard_duel + } + modifier = { + factor = 2 + trait = paranoid + has_character_flag = hard_duel + } + } + 10 = { # I could have died! + set_character_flag = feared_for_life_duel + + modifier = { + factor = 0 + has_character_flag = easy_duel + } + modifier = { + factor = 0.25 + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = stubborn + } + modifier = { + factor = 2 + trait = arbitrary + } + modifier = { + factor = 2 + trait = honest + } + modifier = { + factor = 2 + trait = proud + } + modifier = { + factor = 2 + trait = cynical + } + modifier = { + factor = 2 + trait = wounded + } + modifier = { + factor = 2 + trait = severely_injured + } + modifier = { + factor = 5 + trait = paranoid + } + modifier = { + factor = 5 + trait = craven + } + } + } + } + } + + trigger = { + event_target:combatant_1 = { + is_alive = yes + } + } + + option = { + name = EVTOPTA_HF_501 + show_portrait = event_target:combatant_2 + event_target:combatant_1 = { + show_scope_change = no + + trigger_switch = { + on_trigger = has_character_flag + easy_duel = { add_society_currency_tiny_effect = yes } + even_duel = { add_society_currency_minor_effect = yes } + hard_duel = { add_society_currency_medium_effect = yes } + } + + if = { + limit = { + has_character_flag = appreciated_duel + } + opinion = { + modifier = opinion_great_leader + who = ROOT + years = 5 + } + if = { + limit = { + NOT = { + is_friend = ROOT + } + } + random = { + chance = 5 + add_friend = ROOT + } + } + ROOT = { + show_scope_change = no + add_society_currency_tiny_effect = yes + } + } + else_if = { + limit = { + OR = { + has_character_flag = beneath_me_duel + has_character_flag = poor_choice_duel + } + } + opinion = { + modifier = opinion_disrespects_me + who = ROOT + years = 5 + } + if = { + limit = { + NOT = { + is_rival = ROOT + } + } + random = { + chance = 5 + add_rival = ROOT + } + } + ROOT = { + show_scope_change = no + detract_society_currency_trivial_effect = yes + } + } + else_if = { + limit = { + has_character_flag = feared_for_life_duel + } + opinion = { + modifier = opinion_tried_to_get_me_killed + who = ROOT + years = 5 + } + if = { + limit = { + NOT = { + is_rival = ROOT + } + } + random = { + chance = 15 + add_rival = ROOT + } + } + ROOT = { + show_scope_change = no + detract_society_currency_trivial_effect = yes + } + } + } + } + + after = { + clr_character_flag = notify_mild_injury + clr_character_flag = notify_severely_injured + event_target:combatant_1 = { + clr_character_flag = easy_duel + clr_character_flag = even_duel + clr_character_flag = hard_duel + clr_character_flag = appreciated_duel + clr_character_flag = beneath_me_duel + clr_character_flag = feared_for_life_duel + clr_character_flag = poor_choice_duel + } + } +} + +character_event = { # Lose... + id = HFP.502 + picture = GFX_evt_melee + border = GFX_event_normal_frame_war + desc = HFP_502_DESC + portrait = event_target:combatant_1 + is_triggered_only = yes + + immediate = { + sound_effect = duel_lose + event_target:combatant_1 = { + random_list = { + 10 = { # I Appreciated this! + set_character_flag = appreciated_duel + + # These traits do not mind losing + modifier = { + factor = 5 + trait = humble + } + modifier = { + factor = 2 + trait = brave + } + modifier = { + factor = 5 + trait = patient + } + modifier = { + factor = 2 + trait = content + } + modifier = { + factor = 2 + trait = kind + } + modifier = { + factor = 2 + trait = temperate + } + modifier = { + factor = 3 + trait = trusting + } + + # For Easy Duels + modifier = { + factor = 2 + trait = honest + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = cynical + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = just + has_character_flag = easy_duel + } + + # For Even Duels + modifier = { + factor = 2 + trait = honest + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = cynical + has_character_flag = even_duel + } + modifier = { + factor = 5 + trait = just + has_character_flag = even_duel + } + } + 10 = { # This was beneath me... + set_character_flag = poor_choice_duel + + # These traits just hate losing + modifier = { + factor = 2 + trait = envious + } + modifier = { + factor = 5 + trait = wroth + } + modifier = { + factor = 2 + trait = proud + } + modifier = { + factor = 5 + trait = ambitious + } + modifier = { + factor = 2 + trait = cruel + } + modifier = { + factor = 2 + trait = arbitrary + } + modifier = { + factor = 2 + trait = paranoid + } + + # For Easy Duels + modifier = { + factor = 2 + trait = greedy + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = slothful + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = craven + has_character_flag = easy_duel + } + + # For Even Duels + modifier = { + factor = 2 + trait = paranoid + has_character_flag = even_duel + } + + # For Hard Duels + modifier = { + factor = 5 + trait = just + has_character_flag = hard_duel + } + modifier = { + factor = 2 + trait = brave + has_character_flag = hard_duel + } + modifier = { + factor = 2 + trait = cynical + has_character_flag = hard_duel + } + modifier = { + factor = 2 + trait = stubborn + has_character_flag = hard_duel + } + modifier = { + factor = 2 + trait = paranoid + has_character_flag = hard_duel + } + } + 10 = { # I could have died! + set_character_flag = feared_for_life_duel + + modifier = { + factor = 0 + has_character_flag = easy_duel + } + modifier = { + factor = 0.25 + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = stubborn + } + modifier = { + factor = 2 + trait = arbitrary + } + modifier = { + factor = 2 + trait = honest + } + modifier = { + factor = 2 + trait = proud + } + modifier = { + factor = 2 + trait = cynical + } + modifier = { + factor = 2 + trait = wounded + } + modifier = { + factor = 2 + trait = severely_injured + } + modifier = { + factor = 5 + trait = paranoid + } + modifier = { + factor = 5 + trait = craven + } + } + } + } + } + + trigger = { + event_target:combatant_1 = { + is_alive = yes + } + } + + option = { + name = EVTOPTA_HF_501 + show_portrait = event_target:combatant_2 + + event_target:combatant_1 = { + show_scope_change = no + + trigger_switch = { + on_trigger = has_character_flag + easy_duel = { detract_society_currency_trivial_effect = yes } + even_duel = { detract_society_currency_tiny_effect = yes } + hard_duel = { detract_society_currency_minor_effect = yes } + } + + if = { + limit = { + has_character_flag = appreciated_duel + } + opinion = { + modifier = opinion_great_leader + who = ROOT + years = 5 + } + if = { + limit = { + NOT = { + is_friend = ROOT + } + } + random = { + chance = 5 + add_friend = ROOT + } + } + ROOT = { + show_scope_change = no + add_society_currency_tiny_effect = yes + } + } + else_if = { + limit = { + OR = { + has_character_flag = beneath_me_duel + has_character_flag = poor_choice_duel + } + } + opinion = { + modifier = opinion_disrespects_me + who = ROOT + years = 5 + } + if = { + limit = { + NOT = { + is_rival = ROOT + } + } + random = { + chance = 5 + add_rival = ROOT + } + } + ROOT = { + show_scope_change = no + detract_society_currency_trivial_effect = yes + } + } + else_if = { + limit = { + has_character_flag = feared_for_life_duel + } + opinion = { + modifier = opinion_tried_to_get_me_killed + who = ROOT + years = 5 + } + if = { + limit = { + NOT = { + is_rival = ROOT + } + } + random = { + chance = 15 + add_rival = ROOT + } + } + ROOT = { + show_scope_change = no + detract_society_currency_trivial_effect = yes + } + } + } + } + + after = { + clr_character_flag = notify_mild_injury + clr_character_flag = notify_severely_injured + event_target:combatant_1 = { + clr_character_flag = easy_duel + clr_character_flag = even_duel + clr_character_flag = hard_duel + clr_character_flag = appreciated_duel + clr_character_flag = beneath_me_duel + clr_character_flag = feared_for_life_duel + clr_character_flag = poor_choice_duel + } + } +} + +character_event = { # Defender ran away! + id = HFP.503 + picture = GFX_evt_melee + border = GFX_event_normal_frame_war + desc = HFP_503_DESC + portrait = event_target:combatant_1 + is_triggered_only = yes + + trigger = { + event_target:combatant_1 = { + is_alive = yes + } + } + + option = { + name = EVTOPTA_HF_503 + show_portrait = event_target:combatant_2 + event_target:combatant_1 = { + show_scope_change = no + + add_society_currency_trivial_effect = yes + } + } + + after = { + clr_character_flag = notify_mild_injury + clr_character_flag = notify_severely_injured + event_target:combatant_1 = { + clr_character_flag = easy_duel + clr_character_flag = even_duel + clr_character_flag = hard_duel + clr_character_flag = appreciated_duel + clr_character_flag = beneath_me_duel + clr_character_flag = feared_for_life_duel + clr_character_flag = poor_choice_duel + } + } +} + +character_event = { # Attacker ran away... + id = HFP.504 + picture = GFX_evt_melee + border = GFX_event_normal_frame_war + desc = HFP_504_DESC + portrait = event_target:combatant_1 + is_triggered_only = yes + + trigger = { + event_target:combatant_1 = { + is_alive = yes + } + } + + option = { + name = EVTOPTA_HF_503 + show_portrait = event_target:combatant_2 + event_target:combatant_1 = { + show_scope_change = no + + detract_society_currency_trivial_effect = yes + } + } + + after = { + clr_character_flag = notify_mild_injury + clr_character_flag = notify_severely_injured + event_target:combatant_1 = { + clr_character_flag = easy_duel + clr_character_flag = even_duel + clr_character_flag = hard_duel + clr_character_flag = appreciated_duel + clr_character_flag = beneath_me_duel + clr_character_flag = feared_for_life_duel + clr_character_flag = poor_choice_duel + } + } +} + +character_event = { # Won, but both wounded + id = HFP.505 + picture = GFX_evt_melee + border = GFX_event_normal_frame_war + desc = HFP_505_DESC + portrait = event_target:combatant_1 + is_triggered_only = yes + + trigger = { + event_target:combatant_1 = { + is_alive = yes + } + } + + immediate = { + sound_effect = duel_win + event_target:combatant_1 = { + random_list = { + 10 = { # I Appreciated this! + set_character_flag = appreciated_duel + + modifier = { + factor = 3 + trait = trusting + } + + # For Easy Duels + modifier = { + factor = 2 + trait = greedy + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = slothful + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = envious + has_character_flag = easy_duel + } + modifier = { + factor = 3 + trait = proud + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = ambitious + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = cruel + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = arbitrary + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = craven + has_character_flag = easy_duel + } + + # For Even Duels + modifier = { + factor = 2 + trait = brave + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = honest + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = patient + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = kind + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = humble + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = temperate + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = cynical + has_character_flag = even_duel + } + modifier = { + factor = 5 + trait = just + has_character_flag = even_duel + } + + # For Hard Duels + modifier = { + factor = 5 + trait = proud + has_character_flag = hard_duel + } + modifier = { + factor = 5 + trait = ambitious + has_character_flag = hard_duel + } + modifier = { + factor = 5 + trait = brave + has_character_flag = hard_duel + } + modifier = { + factor = 2 + trait = humble + has_character_flag = hard_duel + } + } + 10 = { # This was beneath me... + set_character_flag = beneath_me_duel + + modifier = { + factor = 2 + trait = honest + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = patient + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = kind + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = humble + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = temperate + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = cynical + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = just + has_character_flag = easy_duel + } + modifier = { + factor = 5 + trait = brave + has_character_flag = easy_duel + } + + # For Even Duels + modifier = { + factor = 2 + trait = envious + has_character_flag = even_duel + } + modifier = { + factor = 5 + trait = proud + has_character_flag = even_duel + } + modifier = { + factor = 5 + trait = ambitious + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = cruel + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = arbitrary + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = paranoid + has_character_flag = even_duel + } + + # For Hard Duels + modifier = { + factor = 5 + trait = just + has_character_flag = hard_duel + } + modifier = { + factor = 2 + trait = temperate + has_character_flag = hard_duel + } + modifier = { + factor = 2 + trait = content + has_character_flag = hard_duel + } + modifier = { + factor = 2 + trait = cynical + has_character_flag = hard_duel + } + modifier = { + factor = 2 + trait = stubborn + has_character_flag = hard_duel + } + modifier = { + factor = 2 + trait = paranoid + has_character_flag = hard_duel + } + } + 10 = { # I could have died! + set_character_flag = feared_for_life_duel + + modifier = { + factor = 0 + has_character_flag = easy_duel + } + modifier = { + factor = 0.25 + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = stubborn + } + modifier = { + factor = 2 + trait = arbitrary + } + modifier = { + factor = 2 + trait = honest + } + modifier = { + factor = 2 + trait = proud + } + modifier = { + factor = 2 + trait = cynical + } + modifier = { + factor = 2 + trait = wounded + } + modifier = { + factor = 2 + trait = severely_injured + } + modifier = { + factor = 5 + trait = paranoid + } + modifier = { + factor = 5 + trait = craven + } + } + } + } + } + + option = { + name = EVTOPTA_HF_501 + show_portrait = event_target:combatant_2 + event_target:combatant_1 = { + show_scope_change = no + + trigger_switch = { + on_trigger = has_character_flag + easy_duel = { add_society_currency_tiny_effect = yes } + even_duel = { add_society_currency_minor_effect = yes } + hard_duel = { add_society_currency_medium_effect = yes } + } + + if = { + limit = { + has_character_flag = appreciated_duel + } + opinion = { + modifier = opinion_great_leader + who = ROOT + years = 5 + } + if = { + limit = { + NOT = { + is_friend = ROOT + } + } + random = { + chance = 5 + add_friend = ROOT + } + } + ROOT = { + show_scope_change = no + add_society_currency_tiny_effect = yes + } + } + else_if = { + limit = { + OR = { + has_character_flag = beneath_me_duel + has_character_flag = poor_choice_duel + } + } + opinion = { + modifier = opinion_disrespects_me + who = ROOT + years = 5 + } + if = { + limit = { + NOT = { + is_rival = ROOT + } + } + random = { + chance = 5 + add_rival = ROOT + } + } + ROOT = { + show_scope_change = no + detract_society_currency_trivial_effect = yes + } + } + else_if = { + limit = { + has_character_flag = feared_for_life_duel + } + opinion = { + modifier = opinion_tried_to_get_me_killed + who = ROOT + years = 5 + } + if = { + limit = { + NOT = { + is_rival = ROOT + } + } + random = { + chance = 15 + add_rival = ROOT + } + } + ROOT = { + show_scope_change = no + detract_society_currency_trivial_effect = yes + } + } + } + } + + after = { + clr_character_flag = notify_mild_injury + clr_character_flag = notify_severely_injured + event_target:combatant_1 = { + clr_character_flag = easy_duel + clr_character_flag = even_duel + clr_character_flag = hard_duel + clr_character_flag = appreciated_duel + clr_character_flag = beneath_me_duel + clr_character_flag = feared_for_life_duel + clr_character_flag = poor_choice_duel + } + } +} + +character_event = { # Lost, but both wounded + id = HFP.506 + picture = GFX_evt_melee + border = GFX_event_normal_frame_war + desc = HFP_506_DESC + portrait = event_target:combatant_1 + is_triggered_only = yes + + trigger = { + event_target:combatant_1 = { + is_alive = yes + } + } + + immediate = { + sound_effect = duel_lose + event_target:combatant_1 = { + random_list = { + 10 = { # I Appreciated this! + set_character_flag = appreciated_duel + + # These traits do not mind losing + modifier = { + factor = 5 + trait = humble + } + modifier = { + factor = 2 + trait = brave + } + modifier = { + factor = 5 + trait = patient + } + modifier = { + factor = 2 + trait = content + } + modifier = { + factor = 2 + trait = kind + } + modifier = { + factor = 2 + trait = temperate + } + modifier = { + factor = 3 + trait = trusting + } + + # For Easy Duels + modifier = { + factor = 2 + trait = honest + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = cynical + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = just + has_character_flag = easy_duel + } + + # For Even Duels + modifier = { + factor = 2 + trait = honest + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = cynical + has_character_flag = even_duel + } + modifier = { + factor = 5 + trait = just + has_character_flag = even_duel + } + } + 10 = { # This was beneath me... + set_character_flag = poor_choice_duel + + # These traits just hate losing + modifier = { + factor = 2 + trait = envious + } + modifier = { + factor = 5 + trait = wroth + } + modifier = { + factor = 2 + trait = proud + } + modifier = { + factor = 5 + trait = ambitious + } + modifier = { + factor = 2 + trait = cruel + } + modifier = { + factor = 2 + trait = arbitrary + } + modifier = { + factor = 2 + trait = paranoid + } + + # For Easy Duels + modifier = { + factor = 2 + trait = greedy + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = slothful + has_character_flag = easy_duel + } + modifier = { + factor = 2 + trait = craven + has_character_flag = easy_duel + } + + # For Even Duels + modifier = { + factor = 2 + trait = paranoid + has_character_flag = even_duel + } + + # For Hard Duels + modifier = { + factor = 5 + trait = just + has_character_flag = hard_duel + } + modifier = { + factor = 2 + trait = cynical + has_character_flag = hard_duel + } + modifier = { + factor = 2 + trait = stubborn + has_character_flag = hard_duel + } + modifier = { + factor = 2 + trait = paranoid + has_character_flag = hard_duel + } + } + 10 = { # I could have died! + set_character_flag = feared_for_life_duel + + modifier = { + factor = 0 + has_character_flag = easy_duel + } + modifier = { + factor = 0.25 + has_character_flag = even_duel + } + modifier = { + factor = 2 + trait = stubborn + } + modifier = { + factor = 2 + trait = arbitrary + } + modifier = { + factor = 2 + trait = honest + } + modifier = { + factor = 2 + trait = proud + } + modifier = { + factor = 2 + trait = cynical + } + modifier = { + factor = 2 + trait = wounded + } + modifier = { + factor = 2 + trait = severely_injured + } + modifier = { + factor = 5 + trait = paranoid + } + modifier = { + factor = 5 + trait = craven + } + } + } + } + } + + option = { + name = EVTOPTA_HF_501 + show_portrait = event_target:combatant_2 + event_target:combatant_1 = { + show_scope_change = no + + trigger_switch = { + on_trigger = has_character_flag + easy_duel = { detract_society_currency_trivial_effect = yes } + even_duel = { detract_society_currency_tiny_effect = yes } + hard_duel = { detract_society_currency_minor_effect = yes } + } + + if = { + limit = { + has_character_flag = appreciated_duel + } + opinion = { + modifier = opinion_great_leader + who = ROOT + years = 5 + } + if = { + limit = { + NOT = { + is_friend = ROOT + } + } + random = { + chance = 5 + add_friend = ROOT + } + } + ROOT = { + show_scope_change = no + add_society_currency_tiny_effect = yes + } + } + else_if = { + limit = { + OR = { + has_character_flag = beneath_me_duel + has_character_flag = poor_choice_duel + } + } + opinion = { + modifier = opinion_disrespects_me + who = ROOT + years = 5 + } + if = { + limit = { + NOT = { + is_rival = ROOT + } + } + random = { + chance = 5 + add_rival = ROOT + } + } + ROOT = { + show_scope_change = no + detract_society_currency_trivial_effect = yes + } + } + else_if = { + limit = { + has_character_flag = feared_for_life_duel + } + opinion = { + modifier = opinion_tried_to_get_me_killed + who = ROOT + years = 5 + } + if = { + limit = { + NOT = { + is_rival = ROOT + } + } + random = { + chance = 15 + add_rival = ROOT + } + } + ROOT = { + show_scope_change = no + detract_society_currency_trivial_effect = yes + } + } + } + } + + after = { + clr_character_flag = notify_mild_injury + clr_character_flag = notify_severely_injured + event_target:combatant_1 = { + clr_character_flag = easy_duel + clr_character_flag = even_duel + clr_character_flag = hard_duel + clr_character_flag = appreciated_duel + clr_character_flag = beneath_me_duel + clr_character_flag = feared_for_life_duel + clr_character_flag = poor_choice_duel + } + } +} + +character_event = { # Warrior Lodge members with high PCS might go out and duel random people to the death, symbolizes the mission + id = HF.550 + hide_window = yes + is_triggered_only = yes + + ai = yes + is_in_society = yes + + weight_multiplier = { + days = 1 + + modifier = { + factor = 25 + NOT = { + any_kill_list_character = { + death_reason = death_duel + } + } + } + modifier = { + factor = 3 + society_rank == 4 + } + modifier = { + factor = 2 + society_rank == 3 + } + modifier = { + factor = 2 + combat_rating = 50 + } + modifier = { + factor = 2 + combat_rating = 70 + } + modifier = { + factor = 2 + combat_rating = 90 + } + modifier = { + factor = 3 + trait = ambitious + } + modifier = { + factor = 3 + trait = brave + } + modifier = { + factor = 2 + trait = gregarious + } + modifier = { + factor = 2 + trait = zealous + } + modifier = { + factor = 2 + trait = wroth + } + modifier = { + factor = 2 + trait = diligent + } + modifier = { + factor = 2 + trait = proud + } + modifier = { + factor = 0 + trait = shy + } + modifier = { + factor = 0.5 + trait = content + } + modifier = { + factor = 0.5 + trait = patient + } + modifier = { + factor = 0.5 + trait = temperate + } + modifier = { + factor = 0.5 + trait = slothful + } + } + + trigger = { + NOT = { has_character_flag = call_to_legend_active } + OR = { + combat_rating = 25 + society_rank == 4 + AND = { + society_rank == 3 + combat_rating = 15 + } + } + is_inaccessible_or_incapable_trigger = no + ai = yes + is_adult = yes + in_command = no + NOR = { + has_injury_trigger = yes + has_disease_trigger = yes + has_symptom_trigger = yes + has_character_modifier = recent_duel_timer + } + OR = { + top_liege = { + any_neighbor_independent_ruler = { + any_realm_character = { + is_inaccessible_or_incapable_trigger = no + ai = yes + is_adult = yes + liege = { ai = yes } + NOR = { + has_character_modifier = bedridden_illness + has_character_modifier = severe_illness + any_spouse = { character = ROOT } + same_society_as = ROOT + religion = ROOT + higher_tier_than = DUKE + spouse = { higher_tier_than = DUKE } + father = { higher_tier_than = DUKE } + mother = { higher_tier_than = DUKE } + } + } + } + any_realm_character = { + is_inaccessible_or_incapable_trigger = no + ai = yes + is_adult = yes + liege = { ai = yes } + NOR = { + has_character_modifier = bedridden_illness + has_character_modifier = severe_illness + any_spouse = { character = ROOT } + same_society_as = ROOT + religion = ROOT + higher_tier_than = DUKE + spouse = { higher_tier_than = DUKE } + father = { higher_tier_than = DUKE } + mother = { higher_tier_than = DUKE } + } + } + } + } + } + + immediate = { + save_event_target_as = combatant_1 + if = { + limit = { + top_liege = { + any_realm_character = { + is_inaccessible_or_incapable_trigger = no + ai = yes + is_adult = yes + liege = { ai = yes } + same_sex = ROOT + NOR = { + has_character_modifier = bedridden_illness + has_character_modifier = severe_illness + any_spouse = { character = ROOT } + same_society_as = ROOT + religion = ROOT + higher_tier_than = DUKE + spouse = { higher_tier_than = DUKE } + father = { higher_tier_than = DUKE } + mother = { higher_tier_than = DUKE } + } + } + } + } + top_liege = { + any_realm_character = { + limit = { + is_inaccessible_or_incapable_trigger = no + ai = yes + is_adult = yes + liege = { ai = yes } + same_sex = ROOT + NOR = { + has_character_modifier = bedridden_illness + has_character_modifier = severe_illness + any_spouse = { character = ROOT } + same_society_as = ROOT + religion = ROOT + higher_tier_than = DUKE + spouse = { higher_tier_than = DUKE } + father = { higher_tier_than = DUKE } + mother = { higher_tier_than = DUKE } + } + } + score_value = { + value = 10 + bad_soldier_outcome_score = yes + } + save_event_target_as = combatant_2 + } + } + event_target:combatant_2 = { + apply_degree_of_dishonorable_duel_effect = yes #checks a bunch of age and health statuses... + character_event = { id = HFP.10095 } + } + } + else_if = { + limit = { + top_liege = { + any_neighbor_independent_ruler = { + any_realm_character = { + is_inaccessible_or_incapable_trigger = no + ai = yes + is_adult = yes + liege = { ai = yes } + same_sex = ROOT + NOR = { + has_character_modifier = bedridden_illness + has_character_modifier = severe_illness + any_spouse = { character = ROOT } + same_society_as = ROOT + religion = ROOT + higher_tier_than = DUKE + spouse = { higher_tier_than = DUKE } + father = { higher_tier_than = DUKE } + mother = { higher_tier_than = DUKE } + } + } + } + } + } + top_liege = { + random_neighbor_independent_ruler = { + limit = { + any_realm_character = { + is_inaccessible_or_incapable_trigger = no + ai = yes + is_adult = yes + liege = { ai = yes } + same_sex = ROOT + NOR = { + has_character_modifier = bedridden_illness + has_character_modifier = severe_illness + any_spouse = { character = ROOT } + same_society_as = ROOT + religion = ROOT + higher_tier_than = DUKE + spouse = { higher_tier_than = DUKE } + father = { higher_tier_than = DUKE } + mother = { higher_tier_than = DUKE } + } + } + } + any_realm_character = { + limit = { + is_inaccessible_or_incapable_trigger = no + is_inaccessible_or_incapable_trigger = no + ai = yes + is_adult = yes + liege = { ai = yes } + same_sex = ROOT + NOR = { + has_character_modifier = bedridden_illness + has_character_modifier = severe_illness + any_spouse = { character = ROOT } + same_society_as = ROOT + religion = ROOT + higher_tier_than = DUKE + spouse = { higher_tier_than = DUKE } + father = { higher_tier_than = DUKE } + mother = { higher_tier_than = DUKE } + } + } + score_value = { + value = 10 + bad_soldier_outcome_score = yes + } + save_event_target_as = combatant_2 + } + } + } + event_target:combatant_2 = { + apply_degree_of_dishonorable_duel_effect = yes #checks a bunch of age and health statuses... + character_event = { id = HFP.10095 } + } + } + } +} + +character_event = { # Notify when a lodge member is killed in a duel + id = HF.560 + hide_window = yes + + is_triggered_only = yes + + is_in_society = yes + + trigger = { + is_member_of_any_warrior_lodge_trigger = yes + OR = { + death_reason = death_duel + death_reason = death_battle_duel + death_reason = death_mission_duel + } + } + + immediate = { + hidden_tooltip = { # Inform players that fellow society member has been killed in a duel + save_event_target_as = lodge_member_killed + killer = { + save_event_target_as = lodge_member_killer + } + any_player = { + limit = { + same_society_as = ROOT + NOT = { + character = ROOT + } + } + character_event = { id = HF.561 } + } + } + } +} + +character_event = { + id = HF.561 + desc = HF_561_DESC + picture = GFX_evt_battle + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + is_in_society = yes + + notification = yes + + option = { + name = CURSES + } +} + + +##### Teaching Moment ##### + +# Hidden setup event, selecting target, etc... +character_event = { + id = HF.14000 + is_triggered_only = yes + hide_window = yes + + trigger = { + has_dlc = "Holy Fury" + is_inaccessible_or_incapable_trigger = no + is_member_of_any_warrior_lodge_trigger = yes + NOT = { has_character_flag = do_not_disturb } + war = no + is_adult = yes + + NOT = { has_character_modifier = teaching_moment_cooldown } + + OR = { + AND = { + trait = brave + any_society_member = { + is_available_fellow_society_member_trigger = yes + NOT = { trait = brave } + NOT = { has_character_modifier = teaching_moment_cooldown } + } + } + AND = { + trait = ambitious + any_society_member = { + is_available_fellow_society_member_trigger = yes + NOT = { trait = ambitious } + NOT = { has_character_modifier = teaching_moment_cooldown } + } + } + AND = { + trait = patient + any_society_member = { + is_available_fellow_society_member_trigger = yes + NOT = { trait = patient } + NOT = { has_character_modifier = teaching_moment_cooldown } + } + } + AND = { + trait = diligent + any_society_member = { + is_available_fellow_society_member_trigger = yes + NOT = { trait = diligent } + NOT = { has_character_modifier = teaching_moment_cooldown } + } + } + } + } + immediate = { + save_event_target_as = teacher + + add_character_modifier = { name = teaching_moment_cooldown duration = 1825 hidden = yes } #to prevent spam + + random_list = { # Select a society member to teach a thing or two... + 10 = { + trigger = { + trait = brave + any_society_member = { + is_available_fellow_society_member_trigger = yes + NOT = { trait = brave } + NOT = { has_character_modifier = teaching_moment_cooldown } + } + } + modifier = { #more likely if someone is actually Craven + factor = 2 + any_society_member = { + is_available_fellow_society_member_trigger = yes + trait = craven + NOT = { has_character_modifier = teaching_moment_cooldown } + } + } + random_society_member = { + limit = { + is_available_fellow_society_member_trigger = yes + NOT = { trait = brave } + NOT = { has_character_modifier = teaching_moment_cooldown } + } + preferred_limit = { + NOT = { society_rank == 4 } + } + preferred_limit = { + war = no + } + set_character_flag = learning_bravery@event_target:teacher + save_event_target_as = student + } + set_character_flag = teaching_bravery@event_target:student + } + 10 = { + trigger = { + trait = ambitious + any_society_member = { + is_available_fellow_society_member_trigger = yes + NOT = { trait = ambitious } + NOT = { has_character_modifier = teaching_moment_cooldown } + } + } + modifier = { #more likely if someone is actually Content + factor = 2 + any_society_member = { + is_available_fellow_society_member_trigger = yes + trait = content + NOT = { has_character_modifier = teaching_moment_cooldown } + } + } + random_society_member = { + limit = { + is_available_fellow_society_member_trigger = yes + NOT = { trait = ambitious } + NOT = { has_character_modifier = teaching_moment_cooldown } + } + preferred_limit = { + NOT = { society_rank == 4 } + } + preferred_limit = { + war = no + } + set_character_flag = learning_ambition@event_target:teacher + save_event_target_as = student + } + set_character_flag = teaching_ambition@event_target:student + } + 10 = { + trigger = { + trait = patient + any_society_member = { + is_available_fellow_society_member_trigger = yes + NOT = { trait = patient } + NOT = { has_character_modifier = teaching_moment_cooldown } + } + } + random_society_member = { + limit = { + is_available_fellow_society_member_trigger = yes + NOT = { trait = patient } + NOT = { has_character_modifier = teaching_moment_cooldown } + } + preferred_limit = { + NOT = { society_rank == 4 } + } + preferred_limit = { + war = no + } + set_character_flag = learning_patience@event_target:teacher + save_event_target_as = student + } + set_character_flag = teaching_patience@event_target:student + } + 10 = { + trigger = { + trait = diligent + any_society_member = { + is_available_fellow_society_member_trigger = yes + NOT = { trait = diligent } + NOT = { has_character_modifier = teaching_moment_cooldown } + } + } + modifier = { #more likely if someone is actually Slotful + factor = 2 + any_society_member = { + is_available_fellow_society_member_trigger = yes + trait = slothful + NOT = { has_character_modifier = teaching_moment_cooldown } + } + } + random_society_member = { + limit = { + is_available_fellow_society_member_trigger = yes + NOT = { trait = diligent } + NOT = { has_character_modifier = teaching_moment_cooldown } + } + preferred_limit = { + NOT = { society_rank == 4 } + } + preferred_limit = { + war = no + } + set_character_flag = learning_diligence@event_target:teacher + save_event_target_as = student + } + set_character_flag = teaching_diligence@event_target:student + } + } + event_target:student = { + add_character_modifier = { name = teaching_moment_cooldown duration = 1825 hidden = yes } #to prevent spam + } + character_event = { id = HF.14001 } + } +} + +# Event for "Teacher" +character_event = { + id = HF.14001 + title = teaching_moment_lack_of_focus_title + picture = GFX_evt_teaching_moment + border = GFX_event_normal_frame_war + is_triggered_only = yes + sound = fighting_instructions_01 + trigger = { + is_alive = yes + event_target:student = { is_alive = yes } + } + + portrait = event_target:student + + desc = { + text = EVTDESC_HF_14001_bravery + trigger = { has_character_flag = teaching_bravery@event_target:student } + } + desc = { + text = EVTDESC_HF_14001_ambition + trigger = { has_character_flag = teaching_ambition@event_target:student } + } + desc = { + text = EVTDESC_HF_14001_patience + trigger = { has_character_flag = teaching_patience@event_target:student } + } + desc = { + text = EVTDESC_HF_14001_diligence + trigger = { has_character_flag = teaching_diligence@event_target:student } + } + + option = { # Yes, let's offer them some guidance... + name = { + text = EVTOPTA_HF_14001_bravery + trigger = { has_character_flag = teaching_bravery@event_target:student } + } + name = { + text = EVTOPTA_HF_14001_ambition + trigger = { has_character_flag = teaching_ambition@event_target:student } + } + name = { + text = EVTOPTA_HF_14001_patience + trigger = { has_character_flag = teaching_patience@event_target:student } + } + name = { + text = EVTOPTA_HF_14001_diligence + trigger = { has_character_flag = teaching_diligence@event_target:student } + } + + custom_tooltip = { text = EVTOPTA_HF_14001_TT } + add_society_currency_tiny_effect = yes + event_target:student = { character_event = { id = HF.14002 days = 1 } } # Offer guidance... + } + option = { # Nah/Opt out + name = EVTOPTB_HF_14001 + custom_tooltip = { text = EVTOPTB_HF_14001_TT } + clr_character_flag = teaching_bravery@event_target:student + clr_character_flag = teaching_ambition@event_target:student + clr_character_flag = teaching_patience@event_target:student + clr_character_flag = teaching_diligence@event_target:student + + ai_chance = { + factor = 0 + } + } +} + +# Event for "Student" - Someone wants to offer me guidance +character_event = { + id = HF.14002 + title = teaching_moment_lack_of_focus_title + picture = GFX_evt_teaching_moment + border = GFX_event_normal_frame_war + is_triggered_only = yes + sound = fighting_instructions_02 + trigger = { + is_alive = yes + event_target:teacher = { is_alive = yes } + } + + immediate = { + + } + + desc = { + text = EVTDESC_HF_14002_bravery + trigger = { has_character_flag = learning_bravery@event_target:teacher } + } + desc = { + text = EVTDESC_HF_14002_ambition + trigger = { has_character_flag = learning_ambition@event_target:teacher } + } + desc = { + text = EVTDESC_HF_14002_patience + trigger = { has_character_flag = learning_patience@event_target:teacher } + } + desc = { + text = EVTDESC_HF_14002_diligence + trigger = { has_character_flag = learning_diligence@event_target:teacher } + } + + option = { # Yes, I need help + name = EVTOPTA_HF_14002 + custom_tooltip = { text = EVTOPTA_HF_14002_TT } + + trigger_switch = { + on_trigger = has_character_flag + learning_bravery@event_target:teacher = { show_trait = brave custom_tooltip = { text = could_lead_to_brave_tt} } + learning_ambition@event_target:teacher = { show_trait = ambitious custom_tooltip = { text = could_lead_to_ambitious_tt} } + learning_patience@event_target:teacher = { show_trait = patient custom_tooltip = { text = could_lead_to_patient_tt} } + learning_diligence@event_target:teacher = { show_trait = diligent custom_tooltip = { text = could_lead_to_diligent_tt} } + } + + event_target:teacher = { character_event = { id = HF.14003 days = 3 } } # Offer accepted... + + ai_chance = { + factor = 10 + modifier = { + factor = 0 + is_rival = FROM + } + modifier = { + factor = 10 + has_pleasant_personality_trigger = yes + } + modifier = { + factor = 10 + is_friend = FROM + } + modifier = { + factor = 10 + FROM = { ROOT_possibly_romantically_interested_trigger = yes } + } + } + } + option = { # No, what a rude suggestion! + name = EVTOPTB_HF_14002 + custom_tooltip = { text = EVTOPTB_HF_14002_TT } + prestige = 10 + event_target:teacher = { + set_character_flag = they_insulted_me + character_event = { id = HF.14004 days = 5 } #Offer rejected! How insulting! + } + clr_character_flag = learning_bravery@event_target:teacher + clr_character_flag = learning_ambition@event_target:teacher + clr_character_flag = learning_patience@event_target:teacher + clr_character_flag = learning_diligence@event_target:teacher + + ai_chance = { + factor = 1 + modifier = { + factor = 100 + is_rival = FROM + } + modifier = { + factor = 0 + is_friend = FROM + } + modifier = { + factor = 10 + is_evil_trigger = yes + } + modifier = { + factor = 10 + has_unpleasant_personality_trigger = yes + } + } + } + + option = { # Leave me alone! + name = EVTOPTC_HF_14002 + custom_tooltip = { text = EVTOPTC_HF_14002_TT } + event_target:teacher = { character_event = { id = HF.14004 days = 3 } } # Offer rejected! + clr_character_flag = learning_bravery@event_target:teacher + clr_character_flag = learning_ambition@event_target:teacher + clr_character_flag = learning_patience@event_target:teacher + clr_character_flag = learning_diligence@event_target:teacher + + ai_chance = { + factor = 1 + modifier = { + factor = 10 + trait = depressed + } + modifier = { + factor = 10 + trait = stressed + } + modifier = { + factor = 10 + is_pregnant = yes + } + } + } +} + + +# Event for "Teacher" - They accepted my help! +character_event = { + id = HF.14003 + title = teaching_moment_lack_of_focus_title + desc = EVTDESC_HF_14003 + picture = GFX_evt_teaching_moment + border = GFX_event_normal_frame_war + is_triggered_only = yes + trigger = { + is_alive = yes + event_target:student = { is_alive = yes } + } + + option = { # I'll bring my [thing] + name = EVTOPTA_HF_14003 + custom_tooltip = { text = EVTOPTA_HF_14003_TT } + scaled_wealth = { value = -1 min = -15 } + prestige = 5 + if = { + limit = { ai = no } #AIs don't have to pay + if = { + limit = { NOT = { trait = proud } } + random = { + chance = 25 + add_trait = proud + hidden_effect = { character_event = { id = 38261 } } #Notify Proud + } + } + } + ai_chance = { + factor = 1 + modifier = { #to not have AIs change traits all the time + factor = 10 + trait = proud + } + } + } + option = { # Let's not get carried away + name = EVTOPTB_HF_14003 + custom_tooltip = { text = EVTOPTB_HF_14003_TT } + if = { + limit = { NOT = { trait = humble } } + random = { + chance = 25 + add_trait = humble + hidden_effect = { character_event = { id = 38260 } } #Notify Humble + } + } + ai_chance = { + factor = 1 + modifier = { #to not have AIs change traits all the time + factor = 10 + trait = humble + } + } + } + after = { + hidden_effect = { + random_list = { + 10 = { #Great success + event_target:student = { character_event = { id = HF.14006 days = 10 random = 25 } } # Training result + modifier = { + factor = 10 + is_benevolent_trigger = yes #Nice characters want to learn + } + modifier = { + factor = 10 + has_pleasant_personality_trigger = yes #Friendly characters are easier to teach + } + modifier = { + factor = 1.5 + has_pleasant_trait_trigger = yes #Unfriendly characters are hard to teach + } + } + 20 = { #Some success + event_target:student = { character_event = { id = HF.14007 days = 10 random = 25 } } # Training result! + } + 5 = { #Failure + event_target:student = { character_event = { id = HF.14008 days = 10 random = 25 } } # Training result! + modifier = { + factor = 10 + is_evil_trigger = yes #Evil characters don't wanna learn + } + modifier = { + factor = 10 + has_unpleasant_personality_trigger = yes #Unfriendly characters are hard to teach + } + modifier = { + factor = 1.5 + has_unpleasant_trait_trigger = yes #Unfriendly characters are hard to teach + } + } + } + } + } +} + +# Event for "Teacher" - They rejected my help +character_event = { + id = HF.14004 + title = teaching_moment_lack_of_focus_title + picture = GFX_evt_teaching_moment + border = GFX_event_normal_frame_war + is_triggered_only = yes + + desc = { + text = EVTDESC_HF_14004_A + trigger = { NOT = { has_character_flag = they_insulted_me } } + } + desc = { + text = EVTDESC_HF_14004_B + trigger = { has_character_flag = they_insulted_me } + } + + option = { # That ungrateful little... (RIVALRY) + name = EVTOPTA_HF_14004 + tooltip = { add_rival = FROM } + clr_character_flag = they_insulted_me + + event_target:student = { character_event = { id = HF.14005 days = 3 } } # Offense *taken*! + + ai_chance = { + factor = 1 + modifier = { + factor = 10 + trait = wroth + } + modifier = { + factor = 10 + has_unpleasant_personality_trigger = yes + } + modifier = { + factor = 10 + event_target:student = { root_potentially_interested_in_rivaling_this_trigger = yes } + } + } + + trigger = { has_character_flag = they_insulted_me } + } + option = { # I can't force progress (Let it go!) + name = EVTOPTB_HF_14004 + ai_chance = { + factor = 1 + modifier = { + factor = 10 + trait = humble + } + modifier = { + factor = 10 + trait = patient + } + } + } + after = { + clr_character_flag = they_insulted_me + clr_character_flag = teaching_bravery@event_target:student + clr_character_flag = teaching_ambition@event_target:student + clr_character_flag = teaching_patience@event_target:student + clr_character_flag = teaching_diligence@event_target:student + } +} + +# Event for "Student" - They took offense to my rejection +character_event = { + id = HF.14005 + title = teaching_moment_lack_of_focus_title + desc = EVTDESC_HF_14005 + picture = GFX_evt_teaching_moment + border = GFX_event_normal_frame_war + is_triggered_only = yes + + + option = { # Some people sure are sensitive... + name = EVTOPTA_HF_14005 + add_rival = FROM + } +} + +## ### Outcome events ### ## +# Great success (fires for Student) +character_event = { + id = HF.14006 + title = teaching_moment_lack_of_focus_title + picture = GFX_evt_teaching_moment + border = GFX_event_normal_frame_war + sound = fighting_instructions_01 + is_triggered_only = yes + + trigger = { + is_alive = yes + } + + desc = { + text = EVTDESC_HF_14006_bravery + trigger = { has_character_flag = learning_bravery@event_target:teacher } + } + desc = { + text = EVTDESC_HF_14006_ambition + trigger = { has_character_flag = learning_ambition@event_target:teacher } + } + desc = { + text = EVTDESC_HF_14006_patience + trigger = { has_character_flag = learning_patience@event_target:teacher } + } + desc = { + text = EVTDESC_HF_14006_diligence + trigger = { has_character_flag = learning_diligence@event_target:teacher } + } + + + option = { #It went fantastic! Adds trait immediately + name = EVTOPTA_HF_14006 + prestige = 15 + add_society_currency_trivial_effect = yes + trigger_switch = { + on_trigger = has_character_flag + learning_bravery@event_target:teacher = { + add_trait = brave + event_target:teacher = { set_character_flag = they_gained_brave } + } + learning_ambition@event_target:teacher = { + add_trait = ambitious + event_target:teacher = { set_character_flag = they_gained_ambitious } + } + learning_patience@event_target:teacher = { + add_trait = patient + event_target:teacher = { set_character_flag = they_gained_patient } + } + learning_diligence@event_target:teacher = { + add_trait = diligent + event_target:teacher = { set_character_flag = they_gained_diligent } + } + } + tooltip = { add_friend = FROM } #*actually* added in the follow-up + ai_chance = { + factor = 10 + modifier = { + factor = 10 + event_target:teacher = { any_friend = { always = no } } + } + } + } + + option = { # Kiss them in gratitude + name = EVTOPTB_HF_14006 + prestige = 15 + add_society_currency_trivial_effect = yes + FROM = { set_character_flag = kiss_of_gratitude } + trigger_switch = { + on_trigger = has_character_flag + learning_bravery@event_target:teacher = { + add_trait = brave + event_target:teacher = { set_character_flag = they_gained_brave } + } + learning_ambition@event_target:teacher = { + add_trait = ambitious + event_target:teacher = { set_character_flag = they_gained_ambitious } + } + learning_patience@event_target:teacher = { + add_trait = patient + event_target:teacher = { set_character_flag = they_gained_patient } + } + learning_diligence@event_target:teacher = { + add_trait = diligent + event_target:teacher = { set_character_flag = they_gained_diligent } + } + } + if = { + limit = { trait = chaste } + remove_trait = chaste + } + else_if = { + limit = { NOT = { trait = lustful } } + add_trait = lustful + } + + if = { + limit = { + event_target:teacher = { + OR = { + has_opinion_modifier = { who = ROOT modifier = opinion_budding_romance } + has_character_flag = carried_torch_for@ROOT + has_character_flag = carrying_torch_for@ROOT + } + } + } + custom_tooltip = { text = EVTOPTB_HF_14006_TT_romance } + tooltip = { add_lover = event_target:teacher } + event_target:teacher = { set_character_flag = become_lovers } + } + else_if = { + limit = { + event_target:teacher = { + root_attraction_trigger = yes + attacted_to_root_trigger = yes + opinion = { who = ROOT value = 15 } + NOT = { trait = chaste } + NOT = { trait = celibate } + } + } + custom_tooltip = { text = EVTOPTB_HF_14006_TT_romance } + tooltip = { + opinion = { + who = FROM + modifier = opinion_budding_romance + years = 10 + } + reverse_opinion = { + who = FROM + modifier = opinion_budding_romance + years = 10 + } + } + + event_target:teacher = { set_character_flag = both_gain_romance } + } + else_if = { + limit = { + event_target:teacher = { + root_attraction_trigger = yes + } + } + custom_tooltip = { text = EVTOPTB_HF_14006_TT_student_crushes } + tooltip = { + opinion = { + who = FROM + modifier = opinion_budding_romance + years = 10 + } + } + event_target:teacher = { set_character_flag = student_gains_crush } + } + else_if = { + limit = { + event_target:teacher = { + attacted_to_root_trigger = yes + } + } + custom_tooltip = { text = EVTOPTB_HF_14006_TT_teacher_crushes } + tooltip = { + reverse_opinion = { + who = FROM + modifier = opinion_budding_romance + years = 10 + } + } + event_target:teacher = { set_character_flag = teacher_gains_crush } + } + ai_chance = { + factor = 1 + modifier = { + factor = 100 + event_target:teacher = { prev_is_lonely_this_romance_makes_sense_trigger = yes } + } + modifier = { + factor = 10 + event_target:teacher = { has_lover = no } + } + modifier = { + factor = 10 + trait = lustful + } + modifier = { + factor = 0.1 + trait = chaste + } + modifier = { + factor = 0.1 + trait = eunuch + } + } + trigger = { + event_target:teacher = { + NOT = { is_lover = ROOT } + OR = { + ROOT = { has_religion_feature = religion_holy_family } + ROOT = { religion = messalian } + ROOT = { religion = zoroastrian } + NOT = { is_close_relative = ROOT } + } + root_attraction_trigger = yes + attacted_to_root_trigger = yes + } + # for safety + NOT = { trait = celibate } + is_adult = yes + event_target:teacher = { is_adult = yes } + } + } + + after = { + FROM = { set_character_flag = great_outcome } + FROM = { character_event = { id = HF.14009 } } # Notify teacher of ending... + } +} + +# Alright outcome (fires for Student) +character_event = { + id = HF.14007 + title = teaching_moment_lack_of_focus_title + picture = GFX_evt_teaching_moment + border = GFX_event_normal_frame_war + sound = fighting_instructions_01 + is_triggered_only = yes + + desc = { + text = EVTDESC_HF_14007_bravery + trigger = { has_character_flag = learning_bravery@event_target:teacher } + } + desc = { + text = EVTDESC_HF_14007_ambition + trigger = { has_character_flag = learning_ambition@event_target:teacher } + } + desc = { + text = EVTDESC_HF_14007_patience + trigger = { has_character_flag = learning_patience@event_target:teacher } + } + desc = { + text = EVTDESC_HF_14007_diligence + trigger = { has_character_flag = learning_diligence@event_target:teacher } + } + + option = { #Removes bad trait/adds good trait + name = { + text = EVTOPTA_HF_14007_bravery + trigger = { has_character_flag = learning_bravery@event_target:teacher } + } + name = { + text = EVTOPTA_HF_14007_ambition + trigger = { has_character_flag = learning_ambition@event_target:teacher } + } + name = { + text = EVTOPTA_HF_14007_patience + trigger = { has_character_flag = learning_patience@event_target:teacher } + } + name = { + text = EVTOPTA_HF_14007_diligence + trigger = { has_character_flag = learning_diligence@event_target:teacher } + } + + add_society_currency_tiny_effect = yes + + trigger_switch = { + on_trigger = has_character_flag + learning_bravery@event_target:teacher = { + add_trait_silently_brave_effect = yes + event_target:teacher = { set_character_flag = they_gained_brave } + break = yes + remove_trait_silently_craven_effect = yes + event_target:teacher = { set_character_flag = they_lost_craven } + } + learning_ambition@event_target:teacher = { + add_trait_silently_ambitious_effect = yes + event_target:teacher = { set_character_flag = they_gained_ambitious } + break = yes + remove_trait_silently_content_effect = yes + event_target:teacher = { set_character_flag = they_lost_content } + } + learning_patience@event_target:teacher = { + #because Wroth isn't necessarily *bad*, compared to Patient, we skip the in-between state + add_trait = patient + event_target:teacher = { set_character_flag = they_gained_patient } + } + learning_diligence@event_target:teacher = { + add_trait_silently_diligent_effect = yes + event_target:teacher = { set_character_flag = they_gained_diligent } + break = yes + remove_trait_silently_slothful_effect = yes + event_target:teacher = { set_character_flag = they_lost_slothful } + } + } + + + + } + + after = { + #Effects run here to avoid "break = yes" breaking more than it should, but still keeping the order nice and neat. + FROM = { set_character_flag = good_outcome } + + if = { #if you already have an opinion in place, become friends... + limit = { + OR = { + reverse_has_opinion_modifier = { who = FROM modifier = opinion_budding_friendship } + has_opinion_modifier = { who = FROM modifier = opinion_budding_friendship } + } + } + tooltip = { add_friend = FROM } + } + else = { #otherwise, add opinions... (*actually* added in follow-up) + tooltip = { + opinion = { + who = FROM + modifier = opinion_budding_friendship + years = 10 + } + reverse_opinion = { + who = FROM + modifier = opinion_budding_friendship + years = 10 + } + } + } + FROM = { character_event = { id = HF.14009 } } # Notify teacher of ending... + } +} + +# Bad outcome (fires for Student) +character_event = { + id = HF.14008 + title = teaching_moment_lack_of_focus_title + picture = GFX_evt_teaching_moment + border = GFX_event_normal_frame_war + sound = fighting_instructions_01 + is_triggered_only = yes + + trigger = { + is_alive = yes + } + + desc = { + text = EVTDESC_HF_14008_bravery + trigger = { has_character_flag = learning_bravery@event_target:teacher } + } + desc = { + text = EVTDESC_HF_14008_ambition + trigger = { has_character_flag = learning_ambition@event_target:teacher } + } + desc = { + text = EVTDESC_HF_14008_patience + trigger = { has_character_flag = learning_patience@event_target:teacher } + } + desc = { + text = EVTDESC_HF_14008_diligence + trigger = { has_character_flag = learning_diligence@event_target:teacher } + } + + option = { + name = EVTOPTA_HF_14008 #I don't know why I don't learn + prestige = -15 + trigger_switch = { + on_trigger = has_character_flag + learning_bravery@event_target:teacher = { + add_trait = vomiting + set_character_flag = disease_not_serious + hidden_effect = { character_event = { id = HFP.14005 days = 10 random = 30 } } #remove vomiting + add_trait_silently_craven_effect = yes + event_target:teacher = { set_character_flag = they_gained_craven } + break = yes + remove_trait_silently_brave_effect = yes + event_target:teacher = { set_character_flag = they_lost_brave } + } + learning_ambition@event_target:teacher = { + add_trait_silently_content_effect = yes + event_target:teacher = { set_character_flag = they_gained_content } + break = yes + remove_trait_silently_ambitious_effect = yes + event_target:teacher = { set_character_flag = they_lost_ambitious } + } + learning_patience@event_target:teacher = { + if = { + limit = { NOT = { trait = wroth } } + add_trait = wroth + event_target:teacher = { set_character_flag = they_gained_wroth } + } + else_if = { + limit = { NOT = { trait = envious } } + add_trait = envious + event_target:teacher = { set_character_flag = they_gained_envious } + } + else_if = { + limit = { NOT = { trait = stubborn } } + add_trait = stubborn + event_target:teacher = { set_character_flag = they_gained_stubborn } + } + } + learning_diligence@event_target:teacher = { + add_trait_silently_slothful_effect = yes + event_target:teacher = { set_character_flag = they_gained_slothful } + break = yes + remove_trait_silently_diligent_effect = yes + event_target:teacher = { set_character_flag = they_lost_diligent } + } + } + } + option = { + name = EVTOPTB_HF_14008 #It was *their* fault! + FROM = { set_character_flag = they_blame_me } + tooltip = { + opinion = { + who = FROM + modifier = opinion_lousy_teacher + years = 10 + } + reverse_opinion = { + who = FROM + modifier = opinion_spoiled_ingrate + years = 10 + } + } + trigger_switch = { + on_trigger = has_character_flag + learning_bravery@event_target:teacher = { + hidden_effect = { character_event = { id = HFP.14005 days = 10 random = 30 } } #remove vomiting + add_trait_silently_craven_effect = yes + event_target:teacher = { set_character_flag = they_gained_craven } + break = yes + remove_trait_silently_brave_effect = yes + event_target:teacher = { set_character_flag = they_lost_brave } + } + learning_ambition@event_target:teacher = { + add_trait_silently_content_effect = yes + event_target:teacher = { set_character_flag = they_gained_content } + break = yes + remove_trait_silently_ambitious_effect = yes + event_target:teacher = { set_character_flag = they_lost_ambitious } + } + learning_patience@event_target:teacher = { + if = { + limit = { NOT = { trait = wroth } } + add_trait = wroth + event_target:teacher = { set_character_flag = they_gained_wroth } + } + else_if = { + limit = { NOT = { trait = envious } } + add_trait = envious + event_target:teacher = { set_character_flag = they_gained_envious } + } + else_if = { + limit = { NOT = { trait = stubborn } } + add_trait = stubborn + event_target:teacher = { set_character_flag = they_gained_stubborn } + } + } + learning_diligence@event_target:teacher = { + add_trait_silently_slothful_effect = yes + event_target:teacher = { set_character_flag = they_gained_slothful } + break = yes + remove_trait_silently_diligent_effect = yes + event_target:teacher = { set_character_flag = they_lost_diligent } + } + } + } + after = { + + FROM = { set_character_flag = bad_outcome } + FROM = { character_event = { id = HF.14009 } } # Notify teacher of ending + + clr_character_flag = learning_bravery@event_target:teacher + clr_character_flag = learning_ambition@event_target:teacher + clr_character_flag = learning_patience@event_target:teacher + clr_character_flag = learning_diligence@event_target:teacher + } +} + + +# Final outcome notification (fires for Teacher) +character_event = { + id = HF.14009 + title = teaching_moment_lack_of_focus_title + picture = GFX_evt_teaching_moment + border = GFX_event_normal_frame_war + sound = fighting_instructions_02 + is_triggered_only = yes + + desc = { + text = EVTDESC_HF_14009_bravery + trigger = { has_character_flag = teaching_bravery@event_target:student } + } + desc = { + text = EVTDESC_HF_14009_ambition + trigger = { has_character_flag = teaching_ambition@event_target:student } + } + desc = { + text = EVTDESC_HF_14009_patience + trigger = { has_character_flag = teaching_patience@event_target:student } + } + desc = { + text = EVTDESC_HF_14009_diligence + trigger = { has_character_flag = teaching_diligence@event_target:student } + } + + option = { + name = EVTOPTA_HF_14009 #They did *so* well! + trigger_switch = { + on_trigger = has_character_flag + they_gained_brave = { event_target:student = { show_scope_change = no add_trait = brave } } + they_gained_ambitious = { event_target:student = { show_scope_change = no add_trait = ambitious } } + they_gained_patient = { event_target:student = { show_scope_change = no add_trait = patient } } + they_gained_diligent = { event_target:student = { show_scope_change = no add_trait = diligent } } + they_gained_craven = { event_target:student = { show_scope_change = no add_trait = craven } } + they_gained_content = { event_target:student = { show_scope_change = no add_trait = content } } + they_gained_wroth = { event_target:student = { show_scope_change = no add_trait = wroth } } + they_gained_slothful = { event_target:student = { show_scope_change = no add_trait = slothful } } + they_gained_envious = { event_target:student = { show_scope_change = no add_trait = envious } } + they_gained_stubborn = { event_target:student = { show_scope_change = no add_trait = stubborn } } + they_lost_brave = { event_target:student = { show_scope_change = no remove_trait = brave } } + they_lost_ambitious = { event_target:student = { show_scope_change = no remove_trait = ambitious } } + they_lost_patient = { event_target:student = { show_scope_change = no remove_trait = patient } } + they_lost_diligent = { event_target:student = { show_scope_change = no remove_trait = diligent } } + they_lost_craven = { event_target:student = { show_scope_change = no remove_trait = craven } } + they_lost_content = { event_target:student = { show_scope_change = no remove_trait = content } } + they_lost_slothful = { event_target:student = { show_scope_change = no remove_trait = slothful } } + } + + add_friend = FROM + + trigger = { + has_character_flag = great_outcome + NOT = { has_character_flag = kiss_of_gratitude } + } + } + option = { + name = EVTOPTA_HF_14009_romance #They want to kiss me! + trigger_switch = { + on_trigger = has_character_flag + they_gained_brave = { event_target:student = { show_scope_change = no add_trait = brave } } + they_gained_ambitious = { event_target:student = { show_scope_change = no add_trait = ambitious } } + they_gained_patient = { event_target:student = { show_scope_change = no add_trait = patient } } + they_gained_diligent = { event_target:student = { show_scope_change = no add_trait = diligent } } + they_gained_craven = { event_target:student = { show_scope_change = no add_trait = craven } } + they_gained_content = { event_target:student = { show_scope_change = no add_trait = content } } + they_gained_wroth = { event_target:student = { show_scope_change = no add_trait = wroth } } + they_gained_slothful = { event_target:student = { show_scope_change = no add_trait = slothful } } + they_gained_envious = { event_target:student = { show_scope_change = no add_trait = envious } } + they_gained_stubborn = { event_target:student = { show_scope_change = no add_trait = stubborn } } + they_lost_brave = { event_target:student = { show_scope_change = no remove_trait = brave } } + they_lost_ambitious = { event_target:student = { show_scope_change = no remove_trait = ambitious } } + they_lost_patient = { event_target:student = { show_scope_change = no remove_trait = patient } } + they_lost_diligent = { event_target:student = { show_scope_change = no remove_trait = diligent } } + they_lost_craven = { event_target:student = { show_scope_change = no remove_trait = craven } } + they_lost_content = { event_target:student = { show_scope_change = no remove_trait = content } } + they_lost_slothful = { event_target:student = { show_scope_change = no remove_trait = slothful } } + } + trigger_switch = { + on_trigger = has_character_flag + become_lovers = { + add_lover = event_target:student + } + both_gain_romance = { + opinion = { + who = FROM + modifier = opinion_budding_romance + years = 10 + } + reverse_opinion = { + who = FROM + modifier = opinion_budding_romance + years = 10 + } + } + student_gains_crush = { + reverse_opinion = { + who = FROM + modifier = opinion_budding_romance + years = 10 + } + } + teacher_gains_crush = { + opinion = { + who = FROM + modifier = opinion_budding_romance + years = 10 + } + } + } + + trigger = { + has_character_flag = great_outcome + has_character_flag = kiss_of_gratitude + } + } + option = { + name = EVTOPTB_HF_14009 #They did fairly well! + + trigger_switch = { + on_trigger = has_character_flag + they_gained_brave = { event_target:student = { show_scope_change = no add_trait = brave } } + they_gained_ambitious = { event_target:student = { show_scope_change = no add_trait = ambitious } } + they_gained_patient = { event_target:student = { show_scope_change = no add_trait = patient } } + they_gained_diligent = { event_target:student = { show_scope_change = no add_trait = diligent } } + they_gained_craven = { event_target:student = { show_scope_change = no add_trait = craven } } + they_gained_content = { event_target:student = { show_scope_change = no add_trait = content } } + they_gained_wroth = { event_target:student = { show_scope_change = no add_trait = wroth } } + they_gained_slothful = { event_target:student = { show_scope_change = no add_trait = slothful } } + they_gained_envious = { event_target:student = { show_scope_change = no add_trait = envious } } + they_gained_stubborn = { event_target:student = { show_scope_change = no add_trait = stubborn } } + they_lost_brave = { event_target:student = { show_scope_change = no remove_trait = brave } } + they_lost_ambitious = { event_target:student = { show_scope_change = no remove_trait = ambitious } } + they_lost_patient = { event_target:student = { show_scope_change = no remove_trait = patient } } + they_lost_diligent = { event_target:student = { show_scope_change = no remove_trait = diligent } } + they_lost_craven = { event_target:student = { show_scope_change = no remove_trait = craven } } + they_lost_content = { event_target:student = { show_scope_change = no remove_trait = content } } + they_lost_slothful = { event_target:student = { show_scope_change = no remove_trait = slothful } } + } + + if = { #if you already have an opinion in place, become friends... + limit = { + OR = { + reverse_has_opinion_modifier = { who = FROM modifier = opinion_budding_friendship } + has_opinion_modifier = { who = FROM modifier = opinion_budding_friendship } + } + } + add_friend = FROM + } + else = { #otherwise, add opinions... + opinion = { + who = FROM + modifier = opinion_budding_friendship + years = 10 + } + reverse_opinion = { + who = FROM + modifier = opinion_budding_friendship + years = 10 + } + } + + trigger = { has_character_flag = good_outcome } + } + option = { # They failed... + name = { + trigger = { has_character_flag = they_blame_me } + text = EVTOPTC_HF_14009_1 + } + name = { + trigger = { NOT = { has_character_flag = they_blame_me } } + text = EVTOPTC_HF_14009_2 + } + trigger_switch = { + on_trigger = has_character_flag + they_gained_brave = { event_target:student = { add_trait = brave } } + they_gained_ambitious = { event_target:student = { add_trait = ambitious } } + they_gained_patient = { event_target:student = { add_trait = patient } } + they_gained_diligent = { event_target:student = { add_trait = diligent } } + they_gained_craven = { event_target:student = { add_trait = craven } } + they_gained_content = { event_target:student = { add_trait = content } } + they_gained_wroth = { event_target:student = { add_trait = wroth } } + they_gained_slothful = { event_target:student = { add_trait = slothful } } + they_gained_envious = { event_target:student = { add_trait = envious } } + they_gained_stubborn = { event_target:student = { add_trait = stubborn } } + they_lost_brave = { event_target:student = { remove_trait = brave } } + they_lost_ambitious = { event_target:student = { remove_trait = ambitious } } + they_lost_patient = { event_target:student = { remove_trait = patient } } + they_lost_diligent = { event_target:student = { remove_trait = diligent } } + they_lost_craven = { event_target:student = { remove_trait = craven } } + they_lost_content = { event_target:student = { remove_trait = content } } + they_lost_slothful = { event_target:student = { remove_trait = slothful } } + } + + if = { + limit = { has_character_flag = they_blame_me } + opinion = { + who = FROM + modifier = opinion_spoiled_ingrate + years = 10 + } + reverse_opinion = { + who = FROM + modifier = opinion_lousy_teacher + years = 10 + } + } + + trigger = { has_character_flag = bad_outcome } + } + after = { + clr_character_flag = great_outcome + clr_character_flag = good_outcome + clr_character_flag = bad_outcome + clr_character_flag = teaching_bravery@event_target:student + clr_character_flag = teaching_ambition@event_target:student + clr_character_flag = teaching_patience@event_target:student + clr_character_flag = teaching_diligence@event_target:student + clr_character_flag = kiss_of_gratitude + clr_character_flag = student_gains_crush + clr_character_flag = teacher_gains_crush + clr_character_flag = both_gain_romance + clr_character_flag = become_lovers + clr_character_flag = they_blame_me + clr_character_flag = they_gained_brave + clr_character_flag = they_gained_ambitious + clr_character_flag = they_gained_patient + clr_character_flag = they_gained_diligent + clr_character_flag = they_gained_craven + clr_character_flag = they_gained_content + clr_character_flag = they_gained_wroth + clr_character_flag = they_gained_slothful + clr_character_flag = they_gained_envious + clr_character_flag = they_gained_stubborn + clr_character_flag = they_lost_brave + clr_character_flag = they_lost_ambitious + clr_character_flag = they_lost_patient + clr_character_flag = they_lost_diligent + clr_character_flag = they_lost_craven + clr_character_flag = they_lost_content + clr_character_flag = they_lost_slothful + } +} + +#On death, spawn crucible steel weapon chain? +character_event = { + id = HF.51000 + is_triggered_only = yes + has_dlc = "Holy Fury" + hide_window = yes + + is_in_society = yes + + trigger = { + has_any_leadership_trait_trigger = yes + is_adult = yes + + OR = + { + death_reason = death_battle + death_reason = death_duel + death_reason = death_battle_duel + death_reason = death_mission_duel + } + + calc_true_if = { + amount = 2 + + martial = 18 + trait = shieldmaiden + trait = berserker + has_lifestyle_martial_trigger = yes + this_is_sea_raider_trigger = yes + has_crusade_trait_trigger = yes + } + + + + OR = { + any_friend = { + same_society_as = ROOT + is_member_of_any_warrior_lodge_trigger = yes + block_general_event_trigger = no + } + any_lover = { + same_society_as = ROOT + is_member_of_any_warrior_lodge_trigger = yes + block_general_event_trigger = no + } + } + } + + immediate = { + random_friend = { + limit = { + same_society_as = ROOT + is_member_of_any_warrior_lodge_trigger = yes + block_general_event_trigger = no + } + save_event_target_as = mourning_friend + } + + random_lover = { + limit = { + same_society_as = ROOT + is_member_of_any_warrior_lodge_trigger = yes + block_general_event_trigger = no + } + save_event_target_as = mourning_lover + } + + random_list = { + 40 = { + trigger = { + event_target:mourning_friend = { is_alive = yes } + } + modifier = { + event_target:mourning_friend = { + num_of_artifacts = 0 + } + factor = 2 + } + event_target:mourning_friend = { + character_event = { id = HF.51001 } + } + } + 40 = { + trigger = { + event_target:mourning_lover = { is_alive = yes } + } + modifier = { + event_target:mourning_lover = { + num_of_artifacts = 0 + } + factor = 2 + } + event_target:mourning_lover = { + character_event = { id = HF.51001 } + } + } + 20 = { + #nothing happens + } + } + } +} + +# Mourning friend/lover decides how to mourn FROM +character_event = { + id = HF.51001 + is_triggered_only = yes + border = GFX_event_normal_frame_war + picture = GFX_evt_died_battle + desc = EVTDESC_HF_51001 + + trigger = { + FROM = { is_alive = no } + is_member_of_any_warrior_lodge_trigger = yes + is_inaccessible_or_incapable_trigger = no + } + + immediate = { + FROM = { + save_event_target_as = dead_warrior + } + } + + option = # I shall have a weapon forged [From.GetHerHis] honor! + { + trigger = { + any_courtier = { + OR = { + is_learned_trigger = yes + has_character_flag = is_court_physician + has_minor_title = title_court_physician + has_minor_title = title_teacher + has_minor_title = title_volva + has_minor_title = title_lawspeaker + has_minor_title = title_court_skald + has_minor_title = title_venerable_elder + has_minor_title = title_lawspeaker + learning = 18 + } + } + } + name = EVTOPTA_HF_51001 + custom_tooltip = { + text = EVTTTA_HF_51001 #You try to find a smithy of worth to make this weapon...;;;;;;;;;;;;x + } + character_event = { id = HF.51002 days = 35 } + } + + option = # Their techniques must continue to be taught! + { + name = EVTOPTB_HF_51001 + trigger = { can_have_more_leadership_traits = yes } + add_same_commander_trait_as_FROM = yes + } + option = # A moment in calm solitude is the best way to pay respects. + { + name = EVTOPTC_HF_51001 + custom_tooltip = { text = tooltip_HF_A_51008 } + hidden_tooltip = { this_post_weight_gain_flavor_effect = yes } + } +} + +# ROOT learns of a ritual on how to infuse a weapon with the strength of FROM +character_event = { + id = HF.51002 + is_triggered_only = yes + border = GFX_event_normal_frame_war + picture = GFX_evt_armory + desc = EVTDESC_HF_51002 + portrait = event_target:weapon_forger + + immediate = { + if = { + FROM = { + any_close_relative = { + limit = { + is_alive = yes + } + save_event_target_as = potential_sacrifice + } + } + } + + if = { + any_courtier = { + limit = { + OR = { + is_learned_trigger = yes + has_character_flag = is_court_physician + has_minor_title = title_court_physician + has_minor_title = title_teacher + has_minor_title = title_volva + has_minor_title = title_lawspeaker + has_minor_title = title_court_skald + has_minor_title = title_venerable_elder + has_minor_title = title_lawspeaker + learning = 18 + } + } + save_event_target_as = weapon_forger + } + } + } + + option = # Forgive me, my friend, but I require your strength. + { + name = EVTOPTA_HF_51002 + show_portrait = event_target:dead_warrior + hidden_tooltip = { + random_list = { + 50 = { + modifier = { + factor = 1.5 + trait = deceitful + } + modifier = { + factor = 1.1 + trait = paranoid + } + modifier = { + factor = 1.4 + trait = patient + } + modifier = { + factor = 1.1 + trait = cruel + } + modifier = { + factor = 0.9 + trait = wroth + } + modifier = { + factor = 0.9 + trait = honest + } + modifier = { + factor = 0.9 + trait = trusting + } + modifier = { + factor = 0.1 + has_severe_disability_trigger = yes + } + modifier = { + factor = 0.5 + has_medium_disability_trigger = yes + } + modifier = { + factor = 0.5 + has_mental_disorder_trigger = yes + } + modifier = { + factor = 1.2 + intrigue = 15 + } + modifier = { + factor = 1.5 + intrigue = 18 + } + modifier = { + factor = 1.5 + is_strong_trigger = yes + } + modifier = { + factor = 1.5 + is_smart_trigger = yes + } + modifier = { + factor = 0.8 + is_weak_trigger = yes + } + modifier = { + factor = 0.8 + is_dumb_trigger = yes + } + character_event = { id = HF.51003 days = 35 } #Things go wrong + } + 50 = { + character_event = { id = HF.51004 days = 35 } #Things go right + } + } + } + + custom_tooltip = { + text = EVTTTA_HF_51002 #You decide to risk getting caught retrieving [dead_warrior.GetFirstName] remains... + } + set_character_flag = decided_to_dig_up + } + + option = # The blood of a family member will have to do. + { + name = EVTOPTB_HF_51002 + trigger = { + event_target:potential_sacrifice = { + is_alive = yes + } + } + show_portrait = event_target:potential_sacrifice + + custom_tooltip = { + text = EVTTTB_HF_51002 #You decide to try and kidnap [potential_sacrifice.GetFirstName]... + } + + hidden_tooltip = { + random_list = { + 50 = { + modifier = { + factor = 1.5 + trait = deceitful + } + modifier = { + factor = 1.1 + trait = paranoid + } + modifier = { + factor = 1.4 + trait = patient + } + modifier = { + factor = 1.1 + trait = cruel + } + modifier = { + factor = 0.9 + trait = wroth + } + modifier = { + factor = 0.9 + trait = honest + } + modifier = { + factor = 0.9 + trait = trusting + } + modifier = { + factor = 0.1 + has_severe_disability_trigger = yes + } + modifier = { + factor = 0.5 + has_medium_disability_trigger = yes + } + modifier = { + factor = 0.5 + has_mental_disorder_trigger = yes + } + modifier = { + factor = 1.2 + intrigue = 15 + } + modifier = { + factor = 1.5 + intrigue = 18 + } + modifier = { + factor = 1.5 + is_strong_trigger = yes + } + modifier = { + factor = 1.5 + is_smart_trigger = yes + } + modifier = { + factor = 0.8 + is_weak_trigger = yes + } + modifier = { + factor = 0.8 + is_dumb_trigger = yes + } + character_event = { id = HF.51003 days = 35 } #Things go wrong + } + 50 = { + character_event = { id = HF.51004 days = 35 } #Things go right + } + } + } + set_character_flag = decided_to_kidnap + } + option = # No, stop this nonsense! Away with you! + { + name = EVTOPTC_HF_51002 + event_target:weapon_forger = { + opinion = { + modifier = opinion_extremely_disappointed + who = ROOT + years = 5 + } + } + } +} + +# ROOT gets caught doing something controversial... +character_event = { + id = HF.51003 + is_triggered_only = yes + border = GFX_event_normal_frame_war + picture = GFX_evt_armory + desc = EVTDESC_HF_51003 + + trigger = { + any_courtier = { + count = 2 + block_general_event_trigger = no + } + } + + fail_trigger_effect = { + character_event = { id = HF.51004 days = 35 } #Things go right + } + + immediate = { + if = { + any_courtier = { + limit = { + block_general_event_trigger = no + } + save_event_target_as = witness1 + } + } + + if = { + any_courtier = { + limit = { + block_general_event_trigger = no + NOT= { character = event_target:witness1} + } + save_event_target_as = witness2 + } + } + } + + option = # No! It's not what you think! + { + name = EVTOPTA_HF_51003 + + reverse_opinion = { + modifier = opinion_heretic + who = event_target:witness1 + years = 5 + } + reverse_opinion = { + modifier = opinion_heretic + who = event_target:witness2 + years = 5 + } + } + + option = # It was [weapon_forger.GetTitledFirstName]! [weapon_forger.GetSheHeCap] told me to do this! + { + name = EVTOPTB_HF_51003 + reverse_opinion = { + modifier = opinion_heretic + who = event_target:weapon_forger + years = 5 + } + } + + after = { + add_character_modifier = { name = crucible_weapon_caught_heretic duration = 1825 } + + clr_character_flag = decided_to_kidnap + clr_character_flag = decided_to_dig_up + } +} + +# ROOT succeeds! Time to pick a weapon... +character_event = { + id = HF.51004 + is_triggered_only = yes + border = GFX_event_normal_frame_war + picture = GFX_evt_camaraderie + desc = EVTDESC_HF_51004 + + portrait = event_target:dead_warrior + + trigger = { + OR = { + event_target:weapon_forger = { is_alive = yes } + any_courtier = { + OR = { + is_learned_trigger = yes + has_character_flag = is_court_physician + has_minor_title = title_court_physician + has_minor_title = title_teacher + has_minor_title = title_volva + has_minor_title = title_lawspeaker + has_minor_title = title_court_skald + has_minor_title = title_venerable_elder + has_minor_title = title_lawspeaker + learning = 18 + } + } + } + } + + immediate = { + #In case the previous weapon forger is dead, get a new one + if = { + limit = { + event_target:weapon_forger = { is_alive = no } + } + + any_courtier = { + limit = { + OR = { + is_learned_trigger = yes + has_character_flag = is_court_physician + has_minor_title = title_court_physician + has_minor_title = title_teacher + has_minor_title = title_volva + has_minor_title = title_lawspeaker + has_minor_title = title_court_skald + has_minor_title = title_venerable_elder + has_minor_title = title_lawspeaker + learning = 18 + } + } + save_event_target_as = weapon_forger + } + } + } + + + option = # An axe is the most appropriate way to honor [dead_warrior.GetFirstName]. + { + name = EVTOPTA_HF_51004 + set_character_flag = crucible_steel_axe + show_portrait = event_target:weapon_forger + } + + option = # [dead_warrior.GetFirstName] would have wanted a sword in [dead_warrior.GetHerHis] name. + { + name = EVTOPTB_HF_51004 + set_character_flag = crucible_steel_sword + show_portrait = event_target:weapon_forger + } + + option = # A mace to crush both my and the old enemies of [dead_warrior.GetFirstName]. + { + name = EVTOPTC_HF_51004 + set_character_flag = crucible_steel_mace + show_portrait = event_target:weapon_forger + } + + after = { + clr_character_flag = decided_to_kidnap + clr_character_flag = decided_to_dig_up + + hidden_effect = { + random_list= { + 20 = { #Bad stuff! + random_list = { + 30 = { + character_event = { id = HF.51005 days = 65 } #Weapon shatters on first use + } + 30 = { + character_event = { id = HF.51006 days = 65 } #Weapon vanishes + } + 30 = { + trigger = { + any_courtier = { + is_adult = no + NOT = { is_inaccessible_or_incapable_trigger = yes } + } + } + character_event = { id = HF.51007 days = 65 } #Child accident + } + } + } + 80 = { #Good stuff! + random_list = { + 30 = { + character_event = { id = HF.51008 days = 65 } #Good weapon + } + 30 = { + character_event = { id = HF.51009 days = 65 } #Soulbound + } + 30 = { + character_event = { id = HF.51010 days = 65 } #Legendary weapon + } + } + } + } + } + } +} + +# Bad - Weapon shatters on first use +character_event = { + id = HF.51005 + is_triggered_only = yes + border = GFX_event_normal_frame_war + picture = GFX_evt_duel_scene + desc = EVTDESC_HF_51005 + + portrait = event_target:dead_warrior + + trigger = { + NOT = { is_inaccessible_or_incapable_trigger = yes } + } + fail_trigger_effect = { + #Try again later... + character_event = { + id = HF.51011 # random list of outcomes again + days = 65 + } + } + + immediate = { + #In case the previous weapon forger is dead, get a new one + if = { + limit = { + event_target:weapon_forger = { is_alive = no } + } + any_courtier = { + limit = { + OR = { + is_learned_trigger = yes + has_character_flag = is_court_physician + has_minor_title = title_court_physician + has_minor_title = title_teacher + has_minor_title = title_volva + has_minor_title = title_lawspeaker + has_minor_title = title_court_skald + has_minor_title = title_venerable_elder + has_minor_title = title_lawspeaker + learning = 18 + } + } + save_event_target_as = weapon_forger + } + } + } + + option = # ...It was simply bad luck, nothing else. + { + name = EVTOPTA_HF_51005 + + add_character_modifier = { name = crucible_weapon_very_bad_omen duration = 1825 } + } + + option = # This is clearly your fault! + { + name = EVTOPTB_HF_51005 + + reverse_opinion = { + modifier = opinion_horrified + who = event_target:weapon_forger + years = 5 + } + add_character_modifier = { name = crucible_weapon_caught_heretic duration = 1825 } + } + + option = # I will sacrifice your life to appease the gods. + { + name = EVTOPTC_HF_51005 + event_target:weapon_forger = + { + death = { death_reason = death_sacrificed } + } + } + + after = { + clr_character_flag = crucible_steel_axe + clr_character_flag = crucible_steel_sword + clr_character_flag = crucible_steel_mace + } +} + +# Bad - Weapon forger mysteriously vanishes? +character_event = { + id = HF.51006 + is_triggered_only = yes + border = GFX_event_normal_frame_war + picture = GFX_evt_duel_scene + desc = EVTDESC_HF_51006 + + portrait = event_target:dead_warrior + + trigger = { + NOT = { is_inaccessible_or_incapable_trigger = yes } + } + fail_trigger_effect = { + #Try again later... + character_event = { + id = HF.51011 # random list of outcomes again + days = 65 + } + } + + immediate = { + #In case the previous weapon forger is dead, get a new one + if = { + limit = { + event_target:weapon_forger = { is_alive = no } + } + any_courtier = { + limit = { + OR = { + is_learned_trigger = yes + has_character_flag = is_court_physician + has_minor_title = title_court_physician + has_minor_title = title_teacher + has_minor_title = title_volva + has_minor_title = title_lawspeaker + has_minor_title = title_court_skald + has_minor_title = title_venerable_elder + has_minor_title = title_lawspeaker + learning = 18 + } + } + save_event_target_as = weapon_forger + } + } + } + + option = # Find [weapon_forger.GetHerHim] and kill [weapon_forger.GetHerHim]! + { + name = EVTOPTA_HF_51006 + + random_list = { + 30 = { #They run off with good weapon! + event_target:weapon_forger = { + banish = yes + hidden_tooltip = { + if = { + limit = { + ROOT = { has_character_flag = crucible_steel_axe } + } + add_artifact = axe_whispering + } + if = { + limit = { + ROOT = { has_character_flag = crucible_steel_sword } + } + add_artifact = sword_whispering + } + if = { + limit = { + ROOT = { has_character_flag = crucible_steel_mace } + } + add_artifact = mace_whispering + } + } + } + } + 70 = { + event_target:weapon_forger = + { + death = { death_reason = death_execution } + } + remove_trait_patient_effect = yes + add_trait_wroth_effect = yes + } + } + } + + option = # [weapon_forger.GetSheHeCap] is simply running late, that is all. + { + name = EVTOPTB_HF_51006 + add_character_modifier = { name = crucible_weapon_caught_heretic duration = 1825 } + random_list = { + 50 = { #They run off with good weapon! + event_target:weapon_forger = { + banish = yes + hidden_tooltip = { + if = { + limit = { + ROOT = { has_character_flag = crucible_steel_axe } + } + add_artifact = axe_whispering + } + if = { + limit = { + ROOT = { has_character_flag = crucible_steel_sword } + } + add_artifact = sword_whispering + } + if = { + limit = { + ROOT = { has_character_flag = crucible_steel_mace } + } + add_artifact = mace_whispering + } + } + } + } + 50 = { + event_target:weapon_forger = + { + death = { death_reason = death_execution } + } + add_trait_trusting_effect = yes + add_trait_patient_effect = yes + } + } + } + + after = { + clr_character_flag = crucible_steel_axe + clr_character_flag = crucible_steel_sword + clr_character_flag = crucible_steel_mace + } +} + +# Bad - A child injures themselves +character_event = { + id = HF.51007 + is_triggered_only = yes + border = GFX_event_normal_frame_war + picture = GFX_evt_child_play + desc = EVTDESC_HF_51007 + + portrait = event_target:dead_warrior + + trigger = { + NOT = { is_inaccessible_or_incapable_trigger = yes } + any_courtier = { + is_adult = no + NOT = { is_inaccessible_or_incapable_trigger = yes } + } + } + fail_trigger_effect = { + #Try again later... + character_event = { + id = HF.51011 # random list of outcomes again + days = 65 + } + } + + immediate = { + #In case the previous weapon forger is dead, get a new one + if = { + limit = { + event_target:weapon_forger = { is_alive = no } + } + any_courtier = { + limit = { + OR = { + is_learned_trigger = yes + has_character_flag = is_court_physician + has_minor_title = title_court_physician + has_minor_title = title_teacher + has_minor_title = title_volva + has_minor_title = title_lawspeaker + has_minor_title = title_court_skald + has_minor_title = title_venerable_elder + has_minor_title = title_lawspeaker + learning = 18 + } + } + save_event_target_as = weapon_forger + } + } + any_courtier = { + limit = { + is_adult = no + NOT = { is_inaccessible_or_incapable_trigger = yes } + } + save_event_target_as = unfortunate_child + } + } + + option = { # This is a cursed weapon that thirsts for blood! Get rid of it! + name = EVTOPTA_HF_51007 + event_target:unfortunate_child = { show_scope_change = no add_maimed_trait_effect = yes } + } + + option = { # The weapon is not what injured the child. The blame is on [unfortunate_child.GetFirstName] + name = EVTOPTB_HF_51007 + + if = { + limit = { has_character_flag = crucible_steel_axe } + add_artifact = axe_whispering + } + if = { + limit = { has_character_flag = crucible_steel_sword } + add_artifact = sword_whispering + } + if = { + limit = { has_character_flag = crucible_steel_mace } + add_artifact = mace_whispering + } + event_target:unfortunate_child = { show_scope_change = no add_maimed_trait_effect = yes } + + reverse_opinion = { + modifier = opinion_horrified + who = event_target:weapon_forger + years = 5 + } + add_character_modifier = { name = crucible_weapon_very_bad_omen duration = 1825 } + } + + + after = { + #event_target:unfortunate_child = { add_maimed_trait_effect = yes } #Moved into options, because "after" does not show portraits + + clr_character_flag = crucible_steel_axe + clr_character_flag = crucible_steel_sword + clr_character_flag = crucible_steel_mace + } +} + +# Good - A weapon is forged +character_event = { + id = HF.51008 + is_triggered_only = yes + border = GFX_event_normal_frame_war + picture = GFX_evt_armory + desc = EVTDESC_HF_51008 + + portrait = event_target:dead_warrior + + trigger = { + NOT = { is_inaccessible_or_incapable_trigger = yes } + } + fail_trigger_effect = { + #Try again later... + character_event = { + id = HF.51011 # random list of outcomes again + days = 65 + } + } + + immediate = { + #In case the previous weapon forger is dead, get a new one + if = { + limit = { + event_target:weapon_forger = { is_alive = no } + } + any_courtier = { + limit = { + OR = { + is_learned_trigger = yes + has_character_flag = is_court_physician + has_minor_title = title_court_physician + has_minor_title = title_teacher + has_minor_title = title_volva + has_minor_title = title_lawspeaker + has_minor_title = title_court_skald + has_minor_title = title_venerable_elder + has_minor_title = title_lawspeaker + learning = 18 + } + } + save_event_target_as = weapon_forger + } + } + } + + option = # I hope [dead_warrior.GetFirstName] is witnessing this from the afterlife. + { + name = EVTOPTA_HF_51008 + custom_tooltip = { text = tooltip_HF_A_51008 } + hidden_tooltip = { this_post_weight_gain_flavor_effect = yes } + } + + option = # Well, if you say so...;;;;;;;;;;;;x + { + name = EVTOPTB_HF_51008 + remove_trait_trusting_effect = yes + add_trait_cynical_effect = yes + } + + option = # I do not appreciate you lying to me, [weapon_forger.GetFirstName] + { + name = EVTOPTC_HF_51008 + add_trait_cruel_effect = yes + remove_trait_kind_effect = yes + + event_target:weapon_forger = { + death = { death_reason = death_execution } + } + } + + after = { + if = { + limit = { + has_character_flag = crucible_steel_axe + } + add_artifact = axe_tier_1_new + } + if = { + limit = { + has_character_flag = crucible_steel_sword + } + add_artifact = sword_tier_1_new + } + if = { + limit = { + has_character_flag = crucible_steel_mace + } + add_artifact = mace_tier_1_new + } + + clr_character_flag = crucible_steel_axe + clr_character_flag = crucible_steel_sword + clr_character_flag = crucible_steel_mace + } +} + +# Good - Whispering weapon +character_event = { + id = HF.51009 + is_triggered_only = yes + border = GFX_event_normal_frame_war + picture = GFX_evt_duel_scene + desc = EVTDESC_HF_51009 + + portrait = event_target:dead_warrior + + trigger = { + NOT = { is_inaccessible_or_incapable_trigger = yes } + } + fail_trigger_effect = { + #Try again later... + character_event = { + id = HF.51011 # random list of outcomes again + days = 65 + } + } + + immediate = { + #In case the previous weapon forger is dead, get a new one + if = { + limit = { + event_target:weapon_forger = { is_alive = no } + } + any_courtier = { + limit = { + OR = { + is_learned_trigger = yes + has_character_flag = is_court_physician + has_minor_title = title_court_physician + has_minor_title = title_teacher + has_minor_title = title_volva + has_minor_title = title_lawspeaker + has_minor_title = title_court_skald + has_minor_title = title_venerable_elder + has_minor_title = title_lawspeaker + learning = 18 + } + } + save_event_target_as = weapon_forger + } + } + } + + option = # A part of [dead_warrior.GetFirstName] truly is in this weapon. + { + name = EVTOPTA_HF_51009 + + if = { + limit = { + has_character_flag = crucible_steel_axe + } + add_artifact = axe_whispering + } + if = { + limit = { + has_character_flag = crucible_steel_sword + } + add_artifact = sword_whispering + } + if = { + limit = { + has_character_flag = crucible_steel_mace + } + add_artifact = mace_whispering + } + } + + option = # No! This is a cursed weapon that thirsts for blood! Get rid of it! + { + name = EVTOPTB_HF_51009 + } + + after = { + clr_character_flag = crucible_steel_axe + clr_character_flag = crucible_steel_sword + clr_character_flag = crucible_steel_mace + } +} + +# Good - Whispering weapon +character_event = { + id = HF.51010 + is_triggered_only = yes + border = GFX_event_normal_frame_war + picture = GFX_evt_duel_scene + desc = EVTDESC_HF_51010 + + portrait = event_target:dead_warrior + + trigger = { + NOT = { is_inaccessible_or_incapable_trigger = yes } + } + fail_trigger_effect = { + #Try again later... + character_event = { + id = HF.51011 # random list of outcomes again + days = 65 + } + } + + immediate = { + #In case the previous weapon forger is dead, get a new one + if = { + limit = { + event_target:weapon_forger = { is_alive = no } + } + any_courtier = { + limit = { + OR = { + is_learned_trigger = yes + has_character_flag = is_court_physician + has_minor_title = title_court_physician + has_minor_title = title_teacher + has_minor_title = title_volva + has_minor_title = title_lawspeaker + has_minor_title = title_court_skald + has_minor_title = title_venerable_elder + has_minor_title = title_lawspeaker + learning = 18 + } + } + save_event_target_as = weapon_forger + } + } + } + + option = # A part of [dead_warrior.GetFirstName] truly is in this weapon. + { + name = EVTOPTA_HF_51009 + + if = { + limit = { + has_character_flag = crucible_steel_axe + } + add_artifact = axe_whispering + } + if = { + limit = { + has_character_flag = crucible_steel_sword + } + add_artifact = sword_whispering + } + if = { + limit = { + has_character_flag = crucible_steel_mace + } + add_artifact = mace_whispering + } + } + + option = # No! This is a cursed weapon that thirsts for blood! Get rid of it! + { + name = EVTOPTB_HF_51009 + } + + after = { + clr_character_flag = crucible_steel_axe + clr_character_flag = crucible_steel_sword + clr_character_flag = crucible_steel_mace + } +} + + +# Fallback/Gating event for the reward, in case you failed the inaccessible trigger or are in prison... +character_event = { + id = HF.51011 + is_triggered_only = yes + hide_window = yes + + immediate = { + random_list = { + 20 = { #Bad stuff! + random_list = { + 30 = { + character_event = { id = HF.51005 } #Weapon shatters on first use + } + 30 = { + character_event = { id = HF.51006 } #Weapon vanishes + } + 3000 = { + trigger = { + any_courtier = { + is_adult = no + NOT = { is_inaccessible_or_incapable_trigger = yes } + } + } + character_event = { id = HF.51007 } #Child accident + } + } + } + 80 = { #Good stuff! + random_list = { + 30 = { + character_event = { id = HF.51008 } #Good weapon + } + 30 = { + character_event = { id = HF.51009 } #Soulbound + } + 30 = { + character_event = { id = HF.51010 } #Legendary weapon + } + } + } + } + } +} + +namespace = HFP +# Removing vomiting (non-dlc locked version) +character_event = { + id = HFP.14005 + picture = GFX_evt_recovery + desc = EVTDESC_RIP_11005 + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + trigger = { + trait = vomiting + } + + option = { + name = EVTOPTA_RIP_11001 + remove_trait = vomiting + clr_character_flag = disease_not_serious + hidden_tooltip = { + remove_character_modifier = symptom_treatment_1 + remove_character_modifier = symptom_treatment_2 + remove_character_modifier = symptom_treatment_3 + remove_character_modifier = symptom_treatment_4 + } + } +} \ No newline at end of file diff --git a/MOD/Witcher/events/HF_warrior_lodge_mission_events.txt b/MOD/Witcher/events/HF_warrior_lodge_mission_events.txt new file mode 100644 index 000000000..532b383c5 --- /dev/null +++ b/MOD/Witcher/events/HF_warrior_lodge_mission_events.txt @@ -0,0 +1,2134 @@ +# Written by Flavio (HF.25500 - HF.25511) +# Written by Milla (HF.10500, etc) + +namespace = HF + +###MISSIONS### +##WL Mission Tombola +character_event = { + id = HF.25500 + hide_window = yes + + is_triggered_only = yes + is_in_society = yes + only_capable = yes + + trigger = { + is_member_of_any_warrior_lodge_trigger = yes + has_any_quest = no + NOT = { has_character_modifier = quest_cooldown_timer } + NOT = { is_inaccessible_trigger = yes } + } + + immediate = { + random_society_member = { + limit = { + NOT = { character = ROOT } + society_rank == 4 + same_society_as = ROOT + } + save_event_target_as = lodge_hero #Character for handing out missions... + } + if = { + limit = { is_landed = yes } + capital_scope = { save_event_target_as = home_capital } #For some distance checks... + } + + ### AVAILABLE MISSIONS: ### + # Raid and loot barony. ....................... HF.25501 + # Lose Weak Focus.............................. HF.25504 + # Duel . First blood. ................ HF.10500 + # Duel . To the death! ............... HF.10510 + # Wage war against someone! ................... HF.10512 + # Recruit child into warrior lodge! ........... HF.10520 + + random_list = { + 20 = { + trigger = { #Ruler should be allowed to loot at all in the first place + is_landed = yes + is_allowed_to_loot = yes + OR = { + independent = yes + top_liege = { + is_allowed_to_loot = yes + } + } + #A lootable province must exist. + any_independent_ruler = { + NOT = { war_with = ROOT } + NOR = { + is_liege_of = ROOT + has_non_aggression_pact_with = ROOT + is_allied_with = ROOT + AND = { + is_tributary = yes + suzerain = { + OR = { + character = ROOT + any_liege = { + character = ROOT + } + } + } + } + } + OR = { + AND = { + ROOT = { + OR = { + religion = norse_pagan + has_religion_feature = religion_seafaring + is_seafarer = yes + } + } + NOT = { distance_from_realm = { who = ROOT value = 250 } } + } + NOT = { + distance_from_realm = { who = ROOT value = 50 } + } + } + any_realm_province = { + is_occupied = no + OR = { + any_neighbor_province = { + owner = { is_liege_or_above = ROOT } + } + any_neighbor_province = { + owner = { character = ROOT } + } + ROOT = { + any_demesne_province = { + port = yes + TECH_NAVAL = 1 + OR = { + has_building = tb_shipyard_1 + has_building = ca_shipyard_1 + has_building = tp_shipyard_1 + has_building = ct_shipyard_1 + } + can_naval_path_to = PREVPREV + } + } + } + capital_holding = { NOT = { holding_type = nomad } } + holder_scope = { + NOT = { + character = ROOT + } + } + holder_scope = { + NOT = { same_society_as = ROOT } + top_liege = { NOT = { same_society_as = ROOT } } + } + } + } + } + event_target:lodge_hero = { + character_event = { id = HF.25501 } #Raid and loot barony. + } + } + 20 = { + trigger = { + has_dlc = "Way of Life" + is_landed = yes + NOR = { + has_focus = focus_war + has_focus = focus_hunting + has_focus = focus_rulership + has_focus = focus_carousing + } + } + event_target:lodge_hero = { + character_event = { id = HF.25504 } #Lose Weak Focus. + } + } + 20 = { + trigger = { + age = 16 + society = { + any_society_member = { + ai = yes + age = 16 + NOT = { character = ROOT } + is_inaccessible_or_incapable_trigger = no + NOT = { has_character_modifier = bedridden_illness } + NOT = { has_character_modifier = severe_illness } + NOT = { has_character_flag = call_to_legend_active } + } + } + } + event_target:lodge_hero = { + character_event = { id = HF.10500 } #Duel . First blood. + } + } + 5 = { + trigger = { + ai = no + age = 16 + OR = { + AND = { + any_society_member = { + NOT = { same_society_as = ROOT } + is_member_of_any_warrior_lodge_trigger = yes + is_inaccessible_or_incapable_trigger = no + NOT = { has_character_modifier = bedridden_illness } + NOT = { has_character_modifier = severe_illness } + NOT = { any_spouse = { character = ROOT } } + is_adult = yes + ai = yes + is_within_diplo_range = ROOT + } + } + AND = { + any_rival = { + is_inaccessible_or_incapable_trigger = no + NOT = { has_character_modifier = bedridden_illness } + NOT = { has_character_modifier = severe_illness } + is_adult = yes + ai = yes + ROOT = { capital_scope = { distance = { where = PREV distance < 1000 } } } + } + } + AND = { + any_realm_character = { + is_inaccessible_or_incapable_trigger = no + NOT = { has_character_modifier = bedridden_illness } + NOT = { has_character_modifier = severe_illness } + NOT = { any_spouse = { character = ROOT } } + ai = yes + is_adult = yes + } + } + AND = { + any_neighbor_independent_ruler = { + any_realm_character = { + is_inaccessible_or_incapable_trigger = no + NOT = { has_character_modifier = bedridden_illness } + NOT = { has_character_modifier = severe_illness } + NOT = { any_spouse = { character = ROOT } } + is_adult = yes + ai = yes + ROOT = { capital_scope = { distance = { where = PREV distance < 1000 } } } + } + } + } + } + } + event_target:lodge_hero = { + character_event = { id = HF.10510 } #Duel . To the death! + } + + } + 20 = { + trigger = { + is_landed = yes + any_independent_ruler = { + any_realm_title = { + tier = COUNT + ROOT = { + can_use_cb = { #against target + target = PREVPREV + thirdparty_title = PREV + casus_belli = pagan_county_conquest + } + } + location = { + OR = { + AND = { #Either you can travel via water to them... + is_coastal = yes + can_naval_path_to = { target = event_target:home_capital distance < 1000 } + } + AND = { + #Or they are accessible via land... + event_target:home_capital = { is_coastal = no } + can_land_path_to = { target = event_target:home_capital distance < 1000 } + } + AND = { #Or not a coastal place... + is_coastal = no + can_land_path_to = { target = event_target:home_capital distance < 1000 } + #event_target:home_capital = { distance = { where = PREV distance < 1000 } } + } + } + } + } + holder_scope = { + top_liege = { + NOT = { has_truce = ROOT } + # target should not be stronger than 120% of your strength, and not weaker than 50% of your strength: + NOT = { relative_power = { who = ROOT power = 1.2 } } + relative_power = { who = ROOT power = 0.5 } + } + } + } + } + + event_target:lodge_hero = { + character_event = { id = HF.10512 } #Wage war against someone! + } + } + 20 = { + trigger = { + is_playable = yes + is_adult = yes + any_child = { + is_child_of = PREV + is_in_society = no + is_alive = yes + age = 12 + prisoner = no + NOT = { has_character_flag = flag_child_abandoned_lodge } + OR = { #AIs should only strive to recruit their main heir + PREV = { ai = no } + is_primary_heir = PREV + } + } + } + + event_target:lodge_hero = { + character_event = { id = HF.10520 } #Recruit child into warrior lodge! + } + } + 75 = { # AI bypasses missions at times + trigger = { + ai = yes + } + random_list = { + 70 = { + modifier = { + factor = 0.9 + society_influence >= 30 + } + modifier = { + factor = 0.9 + society_influence >= 40 + } + modifier = { + factor = 0.8 + society_influence >= 50 + } + modifier = { + factor = 0.7 + society_influence >= 70 + } + modifier = { + factor = 0.6 + society_influence >= 80 + } + modifier = { + factor = 0.5 + society_influence >= 90 + } + add_mission_succeed_influence_effect = yes + } + 30 = { + add_mission_fail_influence_effect = yes + } + } + random = { + chance = 10 + character_event = { id = HF.25070 } #Small chance for tattoos to Rank 3 and 4s. + } + } + + 200 = { + trigger = { + ai = yes + } + #Do nothing for AI + } + } + } +} +###Raid and Loot Barony### + +#MISSION: +#Ping event for the mission Raid a Barony +character_event = { + id = HF.25501 + hide_window = yes + + is_triggered_only = yes + + immediate = { FROM = { society_quest_event = { id = HF.25502 days = 7 random = 7 } } } +} + +#Assign event +society_quest_event = { + id = HF.25502 + desc = EVTDESCHF25502 + + is_triggered_only = yes + is_in_society = yes + only_capable = yes + + trigger = { + is_member_of_any_warrior_lodge_trigger = yes + has_any_quest = no + same_society_as = FROM + NOT = { has_character_modifier = quest_cooldown_timer } + NOT = { is_inaccessible_trigger = yes } + is_landed = yes + is_allowed_to_loot = yes + OR = { + independent = yes + top_liege = { + is_allowed_to_loot = yes + } + } + } + + + immediate = { + random_independent_ruler = { + limit = { + NOT = { war_with = ROOT } + NOR = { + is_liege_of = ROOT + has_non_aggression_pact_with = ROOT + is_allied_with = ROOT + AND = { + is_tributary = yes + suzerain = { + OR = { + character = ROOT + any_liege = { + character = ROOT + } + } + } + } + } + OR = { + AND = { + ROOT = { + OR = { + religion = norse_pagan + has_religion_feature = religion_seafaring + is_seafarer = yes + } + } + NOT = { distance_from_realm = { who = ROOT value = 250 } } + } + NOT = { + distance_from_realm = { who = ROOT value = 50 } + } + } + any_realm_province = { + is_occupied = no + OR = { + any_neighbor_province = { + owner = { is_liege_or_above = ROOT } + } + any_neighbor_province = { + owner = { character = ROOT } + } + ROOT = { + any_demesne_province = { + port = yes + TECH_NAVAL = 1 + OR = { + has_building = tb_shipyard_1 + has_building = ca_shipyard_1 + has_building = tp_shipyard_1 + has_building = ct_shipyard_1 + } + can_naval_path_to = PREVPREV + } + } + } + capital_holding = { NOT = { holding_type = nomad } } + holder_scope = { + NOT = { + character = ROOT + } + } + holder_scope = { + NOT = { same_society_as = ROOT } + top_liege = { NOT = { same_society_as = ROOT } } + } + } + } + preferred_limit = { + NOR = { + is_tribal = yes + is_nomadic = yes + } + } + random_realm_province = { + limit = { + is_occupied = no + capital_holding = { NOT = { holding_type = nomad } } + OR = { + any_neighbor_province = { + owner = { is_liege_or_above = ROOT } + } + any_neighbor_province = { + owner = { character = ROOT } + } + ROOT = { + any_demesne_province = { + port = yes + TECH_NAVAL = 1 + OR = { + has_building = tb_shipyard_1 + has_building = ca_shipyard_1 + has_building = tp_shipyard_1 + has_building = ct_shipyard_1 + } + can_naval_path_to = PREVPREV + } + } + } + holder_scope = { + NOT = { + character = ROOT + } + } + holder_scope = { + NOT = { same_society_as = ROOT } + top_liege = { NOT = { same_society_as = ROOT } } + } + } + preferred_limit = { + OR = { + AND = { + ROOT = { + OR = { + religion = norse_pagan + has_religion_feature = religion_seafaring + is_seafarer = yes + } + } + NOT = { distance_from_realm = { who = ROOT value = 200 } } + } + NOT = { + distance_from_realm = { who = ROOT value = 50 } + } + } + capital_holding = { + OR = { #Prefer cities and temples. + holding_type = city + holding_type = temple + } + } + } + preferred_limit = { + OR = { + AND = { + ROOT = { + OR = { + religion = norse_pagan + has_religion_feature = religion_seafaring + is_seafarer = yes + } + } + NOT = { distance_from_realm = { who = ROOT value = 200 } } + } + NOT = { + distance_from_realm = { who = ROOT value = 50 } + } + } + capital_holding = { + holding_type = castle #Or at least not tribes. + } + } + preferred_limit = { + OR = { + AND = { + ROOT = { + OR = { + religion = norse_pagan + has_religion_feature = religion_seafaring + is_seafarer = yes + } + } + NOT = { distance_from_realm = { who = ROOT value = 200 } } + } + NOT = { + distance_from_realm = { who = ROOT value = 50 } + } + } + } + preferred_limit = { + OR = { + AND = { + ROOT = { + OR = { + religion = norse_pagan + has_religion_feature = religion_seafaring + is_seafarer = yes + } + } + NOT = { distance_from_realm = { who = ROOT value = 250 } } + } + NOT = { + distance_from_realm = { who = ROOT value = 100 } + } + } + capital_holding = { + OR = { #Prefer cities and temples. + holding_type = city + holding_type = temple + } + } + } + preferred_limit = { + OR = { + AND = { + ROOT = { + OR = { + religion = norse_pagan + has_religion_feature = religion_seafaring + is_seafarer = yes + } + } + NOT = { distance_from_realm = { who = ROOT value = 250 } } + } + NOT = { + distance_from_realm = { who = ROOT value = 100 } + } + } + capital_holding = { + holding_type = castle #Or at least not tribes. + } + } + preferred_limit = { + OR = { + AND = { + ROOT = { + OR = { + religion = norse_pagan + has_religion_feature = religion_seafaring + is_seafarer = yes + } + } + NOT = { distance_from_realm = { who = ROOT value = 250 } } + } + NOT = { + distance_from_realm = { who = ROOT value = 100 } + } + } + } + capital_holding = { + save_event_target_as = wl_looting_target + } + } + } + } + + quest_target = event_target:wl_looting_target + + option = { + name = ACCEPT + event_target:wl_looting_target = { + show_scope_change = no + set_quest_target = { + id = quest_warrior_lodge_raid_and_loot + holder = ROOT + } + } + } + option = { + name = DECLINE + custom_tooltip = { text = decline_quest_tooltip } + + add_character_modifier = { + name = quest_cooldown_timer + hidden = yes + days = 1000 + } + + ai_chance = { factor = 0 } + } +} + +#on_loot_settlement: Raid the province and end the quest. +character_event = { + id = HF.25503 + desc = EVTDESCAHF25503 + picture = GFX_evt_vikings_arriving_oldgods + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + trigger = { + is_member_of_any_warrior_lodge_trigger = yes + has_quest = quest_warrior_lodge_raid_and_loot + FROM = { is_quest_target_of = ROOT } + } + + option = { + name = EVTOPTAHF25503 + clr_quest = quest_warrior_lodge_raid_and_loot + add_society_currency_medium_effect = yes + add_legend_progress_trivial_effect = yes + if = { + limit = { + FROM = { + holding_type = tribal + } + } + scaled_wealth = { value = 1.0 min = 20 max = 50 } + } + if = { + limit = { + FROM = { + holding_type = castle + } + } + scaled_wealth = { value = 1.0 min = 50 max = 150 } + } + if = { + limit = { + FROM = { + OR = { + holding_type = city + holding_type = temple + } + } + } + scaled_wealth = { value = 1.0 min = 100 max = 250 } + } + hidden_tooltip = { + destroy_random_building = FROM + destroy_random_building = FROM + } + } +} + +###Lose Weak Focus### + +#MISSION: +#Ping event for the mission Lose Weak Focus +character_event = { + id = HF.25504 + hide_window = yes + + is_triggered_only = yes + + immediate = { FROM = { society_quest_event = { id = HF.25505 days = 7 random = 7 } } } +} + +#Assign event +society_quest_event = { + id = HF.25505 + desc = { + trigger = { + ROOT = { + has_character_flag = flag_renounce_focus_for_war + } + } + text = EVTDESCAHF25505 + } + desc = { + trigger = { + ROOT = { + has_character_flag = flag_renounce_focus_for_hunting + } + } + text = EVTDESCBHF25505 + } + desc = { + trigger = { + ROOT = { + has_character_flag = flag_renounce_focus_for_rulership + } + } + text = EVTDESCCHF25505 + } + desc = { + trigger = { + ROOT = { + has_character_flag = flag_renounce_focus_for_carousing + } + } + text = EVTDESCDHF25505 + } + + is_triggered_only = yes + is_in_society = yes + only_capable = yes + + trigger = { + is_member_of_any_warrior_lodge_trigger = yes + same_society_as = FROM + has_any_quest = no + NOT = { has_character_modifier = quest_cooldown_timer } + NOT = { is_inaccessible_trigger = yes } + has_dlc = "Way of Life" + is_landed = yes + NOR = { + has_focus = focus_war + has_focus = focus_hunting + has_focus = focus_carousing + has_focus = focus_rulership + } + } + + immediate = { + random_list = { + 25 = { set_character_flag = flag_renounce_focus_for_war } + 25 = { set_character_flag = flag_renounce_focus_for_hunting } + 25 = { set_character_flag = flag_renounce_focus_for_rulership } + 25 = { set_character_flag = flag_renounce_focus_for_carousing } + } + } + + quest_target = ROOT + + option = { + name = ACCEPT + ROOT = { + show_scope_change = no + if = { + limit = { has_character_flag = flag_renounce_focus_for_war } + set_quest_target = { + id = quest_warrior_lodge_weak_focus_to_war + holder = ROOT + } + } + if = { + limit = { has_character_flag = flag_renounce_focus_for_hunting } + set_quest_target = { + id = quest_warrior_lodge_weak_focus_to_hunting + holder = ROOT + } + } + if = { + limit = { has_character_flag = flag_renounce_focus_for_rulership } + set_quest_target = { + id = quest_warrior_lodge_weak_focus_to_rulership + holder = ROOT + } + } + if = { + limit = { has_character_flag = flag_renounce_focus_for_carousing } + set_quest_target = { + id = quest_warrior_lodge_weak_focus_to_carousing + holder = ROOT + } + } + } + } + option = { + name = DECLINE + custom_tooltip = { text = decline_quest_tooltip } + + add_character_modifier = { + name = quest_cooldown_timer + hidden = yes + days = 1000 + } + + ai_chance = { factor = 0 } + } + after = { + hidden_effect = { #For the one who instantly selected the focus, bypassing the mission-trigger + trigger_switch = { + on_trigger = has_character_flag + flag_renounce_focus_for_war = { + if = { + limit = { has_focus = focus_war } + character_event = { id = HF.25506 days = 1 } + } + } + flag_renounce_focus_for_hunting = { + if = { + limit = { has_focus = focus_hunting } + character_event = { id = HF.25507 days = 1 } + } + } + flag_renounce_focus_for_rulership = { + if = { + limit = { has_focus = focus_rulership } + character_event = { id = HF.25508 days = 1 } + } + } + flag_renounce_focus_for_carousing = { + if = { + limit = { has_focus = focus_carousing } + character_event = { id = HF.25509 days = 1 } + } + } + } + } + + clr_character_flag = flag_renounce_focus_for_war + clr_character_flag = flag_renounce_focus_for_hunting + clr_character_flag = flag_renounce_focus_for_rulership + clr_character_flag = flag_renounce_focus_for_carousing + } +} +#on_focus_selected: Changing to War focus. +character_event = { + id = HF.25506 + desc = EVTDESCAHF25506 + picture = GFX_evt_vikings_arriving_oldgods + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + trigger = { + is_member_of_any_warrior_lodge_trigger = yes + has_quest = quest_warrior_lodge_weak_focus_to_war + has_focus = focus_war + } + + option = { + name = EVTOPTAHF25506 + clr_quest = quest_warrior_lodge_weak_focus_to_war + add_society_currency_minor_effect = yes + add_legend_progress_trivial_effect = yes + } +} +#on_focus_selected: Changing to Hunting focus. +character_event = { + id = HF.25507 + desc = EVTDESCAHF25507 + picture = GFX_evt_mysterious_forest + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + trigger = { + is_member_of_any_warrior_lodge_trigger = yes + has_quest = quest_warrior_lodge_weak_focus_to_hunting + has_focus = focus_hunting + } + + option = { + name = EVTOPTAHF25507 + clr_quest = quest_warrior_lodge_weak_focus_to_hunting + add_society_currency_minor_effect = yes + add_legend_progress_trivial_effect = yes + } +} +#on_focus_selected: Changing to Rulership focus. +character_event = { + id = HF.25508 + desc = EVTDESCAHF25508 + picture = GFX_evt_tengri_throneroom_oldgods + border = GFX_event_normal_frame_economy + + is_triggered_only = yes + + trigger = { + is_member_of_any_warrior_lodge_trigger = yes + has_quest = quest_warrior_lodge_weak_focus_to_rulership + has_focus = focus_rulership + } + + option = { + name = EVTOPTAHF25508 + clr_quest = quest_warrior_lodge_weak_focus_to_rulership + add_society_currency_minor_effect = yes + add_legend_progress_trivial_effect = yes + } +} +#on_focus_selected: Changing to Carousing focus. +character_event = { + id = HF.25509 + desc = EVTDESCAHF25509 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_diplomacy + + is_triggered_only = yes + + trigger = { + is_member_of_any_warrior_lodge_trigger = yes + has_quest = quest_warrior_lodge_weak_focus_to_carousing + has_focus = focus_carousing + } + + option = { + name = EVTOPTAHF25509 + clr_quest = quest_warrior_lodge_weak_focus_to_carousing + add_society_currency_minor_effect = yes + add_legend_progress_trivial_effect = yes + } +} + + +#MISSION: +#Ping event for the mission Duel +character_event = { + id = HF.10500 + hide_window = yes + + is_triggered_only = yes + + immediate = { FROM = { society_quest_event = { id = HF.10501 days = 7 random = 7 } } } +} + +#Hero character wants you to duel someone! +society_quest_event = { + id = HF.10501 + is_triggered_only = yes + is_in_society = yes + only_capable = yes + + desc = { + text = EVTDESCHF10501_A #default + trigger = { event_target:duel_target = { NOT = { character = event_target:lodge_hero } } } + } + desc = { + text = EVTDESCHF10501_B #if target is also the person giving you the quest... + trigger = { event_target:duel_target = { character = event_target:lodge_hero } } + } + + trigger = { + FROM = { is_alive = yes } + is_member_of_any_warrior_lodge_trigger = yes + same_society_as = FROM + has_any_quest = no + NOT = { has_character_modifier = quest_cooldown_timer } + NOT = { is_inaccessible_trigger = yes } + is_landed = yes + + society = { + any_society_member = { + ai = yes + age = 16 + NOT = { character = ROOT } + is_inaccessible_or_incapable_trigger = no + NOT = { has_character_modifier = bedridden_illness } + NOT = { has_character_modifier = severe_illness } + } + } + } + + immediate = { + if = { + limit = { #best case (someone within diplo-range, not sick, not seriously injured already)... + any_society_member = { + same_society_as = ROOT + ai = yes + age = 16 + NOT = { character = ROOT } + NOT = { age = 60 } + is_maimed_trigger = no + has_medium_disability_trigger = no #limits the character to some extent + has_severe_disability_trigger = no + character_disease_trigger = no + NOT = { has_character_flag = call_to_legend_active } + is_within_diplo_range = ROOT + } + } + + any_society_member = { + limit = { + same_society_as = ROOT + ai = yes + age = 16 + NOT = { character = ROOT } + NOT = { age = 60 } + is_maimed_trigger = no + has_medium_disability_trigger = no #limits the character to some extent + has_severe_disability_trigger = no + character_disease_trigger = no + NOT = { has_character_flag = call_to_legend_active } + is_within_diplo_range = ROOT + } + score_value = { #Prioritizes selecting some kind of warrior... + value = 10 + matching_soldier_score = yes + } + save_event_target_as = duel_target + } + + } + else_if = { #second best choice (same, but outside of diplo-range)... + limit = { + any_society_member = { + same_society_as = ROOT + ai = yes + age = 16 + NOT = { character = ROOT } + NOT = { age = 60 } + has_medium_disability_trigger = no #limits the character to some extent + is_maimed_trigger = no #has a maimed trait + has_severe_disability_trigger = no + character_disease_trigger = no + NOT = { has_character_flag = call_to_legend_active } + } + } + any_society_member = { + limit = { + same_society_as = ROOT + ai = yes + age = 16 + NOT = { character = ROOT } + NOT = { age = 60 } + has_medium_disability_trigger = no #limits the character to some extent + is_maimed_trigger = no #has a maimed trait + has_severe_disability_trigger = no + character_disease_trigger = no + NOT = { has_character_flag = call_to_legend_active } + } + score_value = { #Prioritizes selecting some kind of warrior... + value = 10 + matching_soldier_score = yes + } + save_event_target_as = duel_target + } + } + else_if = { #third best option (now also injured or old folks allowed)... + limit = { + any_society_member = { + same_society_as = ROOT + ai = yes + age = 16 + NOT = { character = ROOT } + is_inaccessible_or_incapable_trigger = no + NOT = { has_character_modifier = bedridden_illness } + NOT = { has_character_modifier = severe_illness } + NOT = { has_character_flag = call_to_legend_active } + } + } + any_society_member = { + limit = { + same_society_as = ROOT + ai = yes + age = 16 + NOT = { character = ROOT } + is_inaccessible_or_incapable_trigger = no + NOT = { has_character_modifier = bedridden_illness } + NOT = { has_character_modifier = severe_illness } + NOT = { has_character_flag = call_to_legend_active } + } + score_value = { #Prioritizes selecting some kind of warrior... + value = 10 + matching_soldier_score = yes + } + save_event_target_as = duel_target + } + } + } + + quest_target = event_target:duel_target #Is this how it's done? + + option = { + name = ACCEPT + event_target:duel_target = { + show_scope_change = no + set_quest_target = { + id = quest_warrior_lodge_duel_honor + holder = ROOT + } + } + } + option = { + name = DECLINE + custom_tooltip = { text = decline_quest_tooltip } + + add_character_modifier = { + name = quest_cooldown_timer + hidden = yes + days = 1000 + } + + ai_chance = { factor = 0 } + } +} + + +# Hidden Cleanup event for (prematurely) dead quest targets... +character_event = { + id = HF.10502 + hide_window = yes + has_dlc = "Holy Fury" + + is_triggered_only = yes + + trigger = { + is_quest_target = yes + } + + immediate = { + any_quester_targeting_this = { + limit = { + OR = { + has_quest = quest_warrior_lodge_duel_honor + has_quest = quest_warrior_lodge_duel_deadly + } + } + character_event = { id = HF.10503 days = 15 } #Clears duel mission + } + any_quester_targeting_this = { + limit = { + has_quest = quest_warrior_lodge_war + } + character_event = { id = HF.10503 days = 15 } #Clears war mission + } + any_quester_targeting_this = { + limit = { + has_quest = quest_warrior_lodge_recruit + } + character_event = { id = HF.10503 days = 15 } #Clears recruit mission + } + } +} + +# Notification "I have failed my mission duel ..." +character_event = { + id = HF.10503 + picture = GFX_evt_battle + border = GFX_event_normal_frame_war + has_dlc = "Holy Fury" + + is_triggered_only = yes + + desc = { + text = EVTDESC_HF_10503_duel + trigger = { + OR = { + has_quest = quest_warrior_lodge_duel_honor + has_quest = quest_warrior_lodge_duel_deadly + } + NOT = { has_quest = quest_warrior_lodge_war } + NOT = { has_quest = quest_warrior_lodge_recruit } + } + } + desc = { + text = EVTDESC_HF_10503_war + trigger = { + has_quest = quest_warrior_lodge_war + NOT = { has_quest = quest_warrior_lodge_duel_honor } + NOT = { has_quest = quest_warrior_lodge_duel_deadly } + NOT = { has_quest = quest_warrior_lodge_recruit } + } + } + desc = { + text = EVTDESC_HF_10503_recruit + trigger = { + has_quest = quest_warrior_lodge_recruit + NOT = { has_quest = quest_warrior_lodge_duel_honor } + NOT = { has_quest = quest_warrior_lodge_duel_deadly } + NOT = { has_quest = quest_warrior_lodge_war } + } + } + + trigger = { + OR = { + has_quest = quest_warrior_lodge_duel_honor + has_quest = quest_warrior_lodge_duel_deadly + has_quest = quest_warrior_lodge_war + has_quest = quest_warrior_lodge_recruit + } + } + + notification = yes + + option = { #Alas + name = ALAS + character_event = { id = HF.10504 days = 1 } # ACTUAL cleanup + } +} + +character_event = { #*Actual* clean up, because the event above can't handle all the instant stuff + id = HF.10504 + hide_window = yes + is_triggered_only = yes + immediate = { + if = { + limit = { + has_quest = quest_warrior_lodge_war + } + add_character_modifier = { + name = quest_cooldown_timer + hidden = yes + days = 1000 + } + } + + clr_quest = { id = quest_warrior_lodge_duel_honor failure = yes } + clr_quest = { id = quest_warrior_lodge_duel_deadly failure = yes } + clr_quest = { id = quest_warrior_lodge_war failure = yes } + clr_quest = { id = quest_warrior_lodge_recruit failure = yes } + clr_character_flag = deadly_duel@FROM + } +} + +#MISSION: +#Ping event for the mission Duel & Slay +character_event = { + id = HF.10510 + hide_window = yes + + is_triggered_only = yes + + immediate = { FROM = { society_quest_event = { id = HF.10511 days = 7 random = 7 } } } +} + +#Hero character wants you to duel and slay someone! +society_quest_event = { + id = HF.10511 + is_triggered_only = yes + is_in_society = yes + only_capable = yes + + trigger = { + FROM = { is_alive = yes } + is_member_of_any_warrior_lodge_trigger = yes + same_society_as = FROM + has_any_quest = no + NOT = { has_character_modifier = quest_cooldown_timer } + NOT = { is_inaccessible_trigger = yes } + is_landed = yes + } + + desc = { + text = EVTDESCHF10511_A #default + trigger = { event_target:duel_target = { is_member_of_any_warrior_lodge_trigger = yes } } + } + desc = { + text = EVTDESCHF10511_B #if target is not in a warrior lodge... + trigger = { event_target:duel_target = { is_member_of_any_warrior_lodge_trigger = no } } + } + + immediate = { + if = { #Best case... (a society member of *another* warrior lodge, who matches or is below your PCS) + limit = { + any_society_member = { + NOT = { same_society_as = ROOT } + is_member_of_any_warrior_lodge_trigger = yes + is_inaccessible_or_incapable_trigger = no + NOT = { has_character_modifier = bedridden_illness } + NOT = { has_character_modifier = severe_illness } + NOT = { any_spouse = { character = ROOT } } + is_adult = yes + ai = yes + is_within_diplo_range = ROOT + top_liege = { + any_demesne_title = { + lower_tier_than = DUKE + } + } + } + } + any_society_member = { + limit = { + NOT = { same_society_as = ROOT } + is_member_of_any_warrior_lodge_trigger = yes + is_inaccessible_or_incapable_trigger = no + NOT = { has_character_modifier = bedridden_illness } + NOT = { has_character_modifier = severe_illness } + NOT = { any_spouse = { character = ROOT } } + is_adult = yes + ai = yes + is_within_diplo_range = ROOT + top_liege = { + any_demesne_title = { + lower_tier_than = DUKE + } + } + } + score_value = { #Prioritizes selecting some kind of character you wouldn't get along with... + value = 10 + potential_rival_score = yes + } + score_value = { #Extra weight for characters you've encountered before... + value = 10 + disliked_target_selection_score = yes + } + score_value = { #Reduced chance to pick people currently at war (unable to duel)... + value = 10 + at_war_reduction_score = yes + } + + save_event_target_as = duel_target + break = yes + } + } + if = { #2nd best case (a rival) - PCS is second prio... + limit = { + any_rival = { + is_inaccessible_or_incapable_trigger = no + NOT = { has_character_modifier = bedridden_illness } + NOT = { has_character_modifier = severe_illness } + is_adult = yes + ai = yes + ROOT = { capital_scope = { distance = { where = PREV distance < 1000 } } } + } + } + any_rival = { + limit = { + is_inaccessible_or_incapable_trigger = no + NOT = { has_character_modifier = bedridden_illness } + NOT = { has_character_modifier = severe_illness } + is_adult = yes + ai = yes + ROOT = { capital_scope = { distance = { where = PREV distance < 1000 } } } + } + score_value = { #Prioritizes selecting some kind of character you wouldn't get along with... + value = 10 + potential_rival_score = yes + } + score_value = { #Extra weight for characters you've encountered before... + value = 10 + disliked_target_selection_score = yes + } + save_event_target_as = duel_target + break = yes + } + } + if = { #3rd best case (a realm character) who fits the bill... + limit = { + any_realm_character = { + is_inaccessible_or_incapable_trigger = no + NOT = { has_character_modifier = bedridden_illness } + NOT = { has_character_modifier = severe_illness } + NOT = { any_spouse = { character = ROOT } } + ai = yes + is_adult = yes + } + } + any_realm_character = { + limit = { + is_inaccessible_or_incapable_trigger = no + NOT = { has_character_modifier = bedridden_illness } + NOT = { has_character_modifier = severe_illness } + NOT = { any_spouse = { character = ROOT } } + ai = yes + is_adult = yes + } + score_value = { #Prioritizes selecting some kind of character you wouldn't get along with... + value = 10 + potential_rival_score = yes + } + score_value = { #Extra weight for characters you've encountered before... + value = 10 + disliked_target_selection_score = yes + } + save_event_target_as = duel_target + break = yes + } + } + if = { #4th case (a *neighbor's* realm character) who fits the bill... + limit = { + any_neighbor_independent_ruler = { + any_realm_character = { + is_inaccessible_or_incapable_trigger = no + NOT = { has_character_modifier = bedridden_illness } + NOT = { has_character_modifier = severe_illness } + NOT = { any_spouse = { character = ROOT } } + is_adult = yes + ai = yes + ROOT = { capital_scope = { distance = { where = PREV distance < 1000 } } } + } + } + } + random_neighbor_independent_ruler = { + limit = { + any_realm_character = { + is_inaccessible_or_incapable_trigger = no + NOT = { has_character_modifier = bedridden_illness } + NOT = { has_character_modifier = severe_illness } + NOT = { any_spouse = { character = ROOT } } + is_adult = yes + ai = yes + ROOT = { capital_scope = { distance = { where = PREV distance < 1000 } } } + } + } + any_realm_character = { + limit = { + is_inaccessible_or_incapable_trigger = no + NOT = { has_character_modifier = bedridden_illness } + NOT = { has_character_modifier = severe_illness } + NOT = { any_spouse = { character = ROOT } } + is_adult = yes + ai = yes + is_within_diplo_range = ROOT + ROOT = { capital_scope = { distance = { where = PREV distance < 1000 } } } + } + score_value = { #Prioritizes selecting some kind of character you wouldn't get along with... + value = 10 + potential_rival_score = yes + } + score_value = { #Extra weight for characters you've encountered before... + value = 10 + disliked_target_selection_score = yes + } + save_event_target_as = duel_target + break = yes + } + } + } + if = { # Warrior Lodge members who are without diplomatic range, such as mercenaries + limit = { + any_society_member = { + NOT = { same_society_as = ROOT } + is_member_of_any_warrior_lodge_trigger = yes + is_inaccessible_or_incapable_trigger = no + NOT = { has_character_modifier = bedridden_illness } + NOT = { has_character_modifier = severe_illness } + NOT = { any_spouse = { character = ROOT } } + is_adult = yes + ai = yes + is_within_diplo_range = ROOT + } + } + any_society_member = { + limit = { + NOT = { same_society_as = ROOT } + is_member_of_any_warrior_lodge_trigger = yes + is_inaccessible_or_incapable_trigger = no + NOT = { has_character_modifier = bedridden_illness } + NOT = { has_character_modifier = severe_illness } + NOT = { any_spouse = { character = ROOT } } + is_adult = yes + ai = yes + is_within_diplo_range = ROOT + } + score_value = { #Prioritizes selecting some kind of character you wouldn't get along with... + value = 10 + potential_rival_score = yes + } + score_value = { #Extra weight for characters you've encountered before... + value = 10 + disliked_target_selection_score = yes + } + score_value = { #Reduced chance to pick people currently at war (unable to duel)... + value = 10 + at_war_reduction_score = yes + } + + save_event_target_as = duel_target + break = yes + } + } + } + + quest_target = event_target:duel_target + + option = { + name = ACCEPT + set_character_flag = deadly_duel@event_target:duel_target + event_target:duel_target = { + show_scope_change = no + set_quest_target = { + id = quest_warrior_lodge_duel_deadly + holder = ROOT + } + } + } + option = { + name = DECLINE + custom_tooltip = { text = decline_quest_tooltip } + + add_character_modifier = { + name = quest_cooldown_timer + hidden = yes + days = 1000 + } + + ai_chance = { factor = 0 } + } +} + + +#MISSION: +#Ping event for the mission Wage War +character_event = { + id = HF.10512 + hide_window = yes + + is_triggered_only = yes + + immediate = { FROM = { society_quest_event = { id = HF.10513 days = 7 random = 7 } } } +} + +#Hero character wants you to wage war against someone! +society_quest_event = { + id = HF.10513 + is_triggered_only = yes + is_in_society = yes + only_capable = yes + + trigger = { + FROM = { is_alive = yes } + is_member_of_any_warrior_lodge_trigger = yes + same_society_as = FROM + has_any_quest = no + NOT = { has_character_modifier = quest_cooldown_timer } + NOT = { is_inaccessible_trigger = yes } + is_landed = yes + any_independent_ruler = { + any_realm_title = { + tier = COUNT + ROOT = { + can_use_cb = { #against target + target = PREVPREV + thirdparty_title = PREV + casus_belli = pagan_county_conquest + } + } + location = { + OR = { + AND = { #Either you can travel via water to them... + is_coastal = yes + can_naval_path_to = { target = event_target:home_capital distance < 1000 } + } + AND = { + #Or they are accessible via land... + event_target:home_capital = { is_coastal = no } + can_land_path_to = { target = event_target:home_capital distance < 1000 } + } + AND = { #Or not a coastal place... + is_coastal = no + can_land_path_to = { target = event_target:home_capital distance < 1000 } + #event_target:home_capital = { distance = { where = PREV distance < 1000 } } + } + } + } + holder_scope = { + top_liege = { + NOT = { has_truce = ROOT } + # target should not be stronger than 120% of your strength, and not weaker than 50% of your strength. + NOT = { relative_power = { who = ROOT power = 1.2 } } + relative_power = { who = ROOT power = 0.5 } + } + } + } + } + } + + desc = { + text = EVTDESCHF10513 #default + trigger = { event_target:my_war_target_holder = { NOT = { character = event_target:lodge_hero } } } + } + desc = { + text = EVTDESCHF10513_B #if target is also the person giving you the quest... + trigger = { event_target:my_war_target_holder = { character = event_target:lodge_hero } } + } + + immediate = { + #Declare a county conquest against someone + random_independent_ruler = { + limit = { + any_realm_title = { + tier = COUNT + ROOT = { + can_use_cb = { #against target + target = PREVPREV + thirdparty_title = PREV + casus_belli = pagan_county_conquest + } + } + location = { + OR = { + AND = { #Either you can travel via water to them... + is_coastal = yes + can_naval_path_to = { target = event_target:home_capital distance < 1000 } + } + AND = { + #Or they are accessible via land... + event_target:home_capital = { is_coastal = no } + can_land_path_to = { target = event_target:home_capital distance < 1000 } + } + AND = { #Or not a coastal place... + is_coastal = no + can_land_path_to = { target = event_target:home_capital distance < 1000 } + #event_target:home_capital = { distance = { where = PREV distance < 1000 } } + } + } + } + holder_scope = { + top_liege = { + NOT = { has_truce = ROOT } + # target should not be stronger than 120% of your strength, and not weaker than 50% of your strength. + NOT = { relative_power = { who = ROOT power = 1.2 } } + relative_power = { who = ROOT power = 0.5 } + } + } + } + } + random_realm_title = { + limit = { + tier = COUNT + ROOT = { + can_use_cb = { #against target + target = PREVPREV + thirdparty_title = PREV + casus_belli = pagan_county_conquest + } + } + location = { + OR = { + AND = { #Either you can travel via water to them... + is_coastal = yes + can_naval_path_to = { target = event_target:home_capital distance < 1000 } + } + AND = { + #Or they are accessible via land... + event_target:home_capital = { is_coastal = no } + can_land_path_to = { target = event_target:home_capital distance < 1000 } + } + AND = { #Or not a coastal place... + is_coastal = no + can_land_path_to = { target = event_target:home_capital distance < 1000 } + #event_target:home_capital = { distance = { where = PREV distance < 1000 } } + } + } + } + holder_scope = { + top_liege = { + NOT = { has_truce = ROOT } + # target should not be stronger than 120% of your strength, and not weaker than 50% of your strength. + NOT = { relative_power = { who = ROOT power = 1.2 } } + relative_power = { who = ROOT power = 0.5 } + } + } + } + save_event_target_as = my_war_target + holder_scope = { + top_liege = { + save_event_target_as = my_war_target_holder + } + } + } + } + } + + quest_target = event_target:my_war_target #Is this how it's done? + + option = { + name = ACCEPT + event_target:my_war_target = { + show_scope_change = no + set_quest_target = { + id = quest_warrior_lodge_war + holder = ROOT + } + } + } + option = { + name = DECLINE + custom_tooltip = { text = decline_quest_tooltip } + + add_character_modifier = { + name = quest_cooldown_timer + hidden = yes + days = 1000 + } + + ai_chance = { factor = 0 } + } +} + + +#Mission to Wage War complete: Warrior lodge hero says good job on the war! +letter_event = { + id = HF.10514 + border = GFX_event_letter_frame_war + + portrait = event_target:lodge_hero + + trigger = { + has_quest = quest_warrior_lodge_war + } + + immediate = { + hidden_effect = { + + if = { #Find some folks who are impressed by your victory... + limit = { has_character_flag = won_war@event_target:defender_target } + any_society_member = { + limit = { + same_society_as = ROOT + NOT = { character = ROOT } + NOT = { character = event_target:defender_target } + } + count = 3 + score_value = { #Prioritizes selecting some kind of warrior... + value = 10 + warrior_recruit_score = yes + } + set_character_flag = impressed@ROOT + } + } + + #Selects someone to congratulate you... + random_society_member = { + limit = { + same_society_as = ROOT + society_rank == 4 + NOT = { character = ROOT } + NOT = { character = event_target:defender_target } + } + save_event_target_as = lodge_hero + break = yes + } + random_society_member = { + limit = { + same_society_as = ROOT + society_rank == 3 + NOT = { character = ROOT } + NOT = { character = event_target:defender_target } + } + save_event_target_as = lodge_hero + break = yes + } + random_society_member = { + limit = { + same_society_as = ROOT + society_rank == 2 + NOT = { character = ROOT } + NOT = { character = event_target:defender_target } + } + save_event_target_as = lodge_hero + break = yes + } + random_society_member = { + limit = { + same_society_as = ROOT + society_rank == 1 #This is likely never really ever going to be needed. But still. + NOT = { character = ROOT } + NOT = { character = event_target:defender_target } + } + save_event_target_as = lodge_hero + break = yes + } + } + } + + desc = { + text = EVTDESC_HF_10514_won + trigger = { has_character_flag = won_war@event_target:defender_target } + } + desc = { + text = EVTDESC_HF_10514_white_peace + trigger = { has_character_flag = white_peace@event_target:defender_target } + } + desc = { + text = EVTDESC_HF_10514_lost + trigger = { has_character_flag = lost_war@event_target:defender_target } + } + + is_triggered_only = yes + + #I understand + option = { + name = { + text = EVTOPTA_HF_10514_won + trigger = { has_character_flag = won_war@event_target:defender_target } + } + name = { + text = EVTOPTA_HF_10514_white_peace + trigger = { has_character_flag = white_peace@event_target:defender_target } + } + name = { + text = EVTOPTA_HF_10514_lost + trigger = { has_character_flag = lost_war@event_target:defender_target } + } + trigger_switch = { + on_trigger = has_character_flag + won_war@event_target:defender_target = { + any_society_member = { + limit = { has_character_flag = impressed@ROOT } + show_scope_change = no + opinion = { + who = ROOT + modifier = opinion_conquered_new_land + years = 10 + } + clr_character_flag = impressed@ROOT + } + add_society_currency_major_effect = yes + } + white_peace@event_target:defender_target = { add_society_currency_medium_effect = yes } + lost_war@event_target:defender_target = { add_society_currency_minor_effect = yes } + } + clr_quest = quest_warrior_lodge_war + add_legend_progress_trivial_effect = yes + clr_character_flag = won_war@event_target:defender_target + clr_character_flag = white_peace@event_target:defender_target + clr_character_flag = lost_war@event_target:defender_target + } +} + +#on_war_ended_victory: Clear Wage War mission correctly +# From = Attacker, Root = Defender +character_event = { + id = HF.10515 + hide_window = yes + is_triggered_only = yes + has_dlc = "Holy Fury" + trigger = { + FROM = { + is_member_of_any_warrior_lodge_trigger = yes + has_quest = quest_warrior_lodge_war + } + any_realm_title = { + is_quest_target_of = FROM + } + } + + immediate = { + #To handle Warrior Lodge mission "Wage War" completion... + random_realm_title = { + limit = { is_quest_target_of = FROM } + save_event_target_as = target_title + } + FROM = { save_event_target_as = attacker_target } + save_event_target_as = defender_target + + event_target:attacker_target = { + set_character_flag = won_war@event_target:defender_target + character_event = { id = HF.10514 days = 6 } # Hero character states that you completed the mission... + } + } +} + +#on_war_ended_whitepeace: Clear Wage War mission correctly +# From = Attacker, Root = Defender +character_event = { + id = HF.10516 + hide_window = yes + is_triggered_only = yes + has_dlc = "Holy Fury" + trigger = { + FROM = { + is_member_of_any_warrior_lodge_trigger = yes + has_quest = quest_warrior_lodge_war + } + any_realm_title = { + is_quest_target_of = FROM + } + } + + immediate = { + #To handle Warrior Lodge mission "Wage War" completion... + random_realm_title = { + limit = { is_quest_target_of = FROM } + save_event_target_as = target_title + } + FROM = { save_event_target_as = attacker_target } + save_event_target_as = defender_target + + event_target:attacker_target = { + set_character_flag = white_peace@event_target:defender_target + character_event = { id = HF.10514 days = 6 } # Hero character states that you completed the mission... + } + } +} +#on_war_ended_defeat: Clear Wage War mission correctly +# From = Attacker, Root = Defender +character_event = { + id = HF.10517 + hide_window = yes + is_triggered_only = yes + has_dlc = "Holy Fury" + trigger = { + FROM = { + is_member_of_any_warrior_lodge_trigger = yes + has_quest = quest_warrior_lodge_war + } + any_realm_title = { + is_quest_target_of = FROM + } + } + + immediate = { + #To handle Warrior Lodge mission "Wage War" completion... + random_realm_title = { + limit = { is_quest_target_of = FROM } + save_event_target_as = target_title + } + FROM = { save_event_target_as = attacker_target } + save_event_target_as = defender_target + + event_target:attacker_target = { + set_character_flag = lost_war@event_target:defender_target + character_event = { id = HF.10514 days = 6 } # Hero character states that you completed the mission... + } + } +} +#on_war_ended_invalid: Clear Wage War mission correctly +# From = Attacker, Root = Defender +character_event = { + id = HF.10518 + hide_window = yes + is_triggered_only = yes + has_dlc = "Holy Fury" + trigger = { + FROM = { + is_member_of_any_warrior_lodge_trigger = yes + has_quest = quest_warrior_lodge_war + } + any_realm_title = { + is_quest_target_of = FROM + } + } + + immediate = { + #To handle Warrior Lodge mission "Wage War" completion... + random_realm_title = { + limit = { is_quest_target_of = FROM } + save_event_target_as = target_title + } + FROM = { save_event_target_as = attacker_target } + save_event_target_as = defender_target + + event_target:attacker_target = { + character_event = { id = HF.10503 days = 6 } # Mission target is no longer valid-notification... + } + } +} + + +#on_new_holder: Clear Raid Province mission if the province is now under your control. +# ROOT is the character, FROM is the title, FROMFROM is the old holder +character_event = { + id = HF.25510 + hide_window = yes + + is_triggered_only = yes + + trigger = { + OR = { + AND = { + is_member_of_any_warrior_lodge_trigger = yes + has_quest = quest_warrior_lodge_raid_and_loot + } + any_liege = { + is_member_of_any_warrior_lodge_trigger = yes + has_quest = quest_warrior_lodge_raid_and_loot + } + } + } + + immediate = { + if = { + limit = { + is_member_of_any_warrior_lodge_trigger = yes + has_quest = quest_warrior_lodge_raid_and_loot + } + character_event = { id = HF.25511 days = 1 } + } + if = { + limit = { + any_liege = { + is_member_of_any_warrior_lodge_trigger = yes + has_quest = quest_warrior_lodge_raid_and_loot + } + } + any_liege = { + limit = { + is_member_of_any_warrior_lodge_trigger = yes + has_quest = quest_warrior_lodge_raid_and_loot + } + character_event = { id = HF.25511 days = 1 } + } + } + } +} + +character_event = { + id = HF.25511 + hide_window = yes + + is_triggered_only = yes + + immediate = { + if = { + limit = { + is_member_of_any_warrior_lodge_trigger = yes + has_quest = quest_warrior_lodge_raid_and_loot + any_realm_title = { + is_quest_target_of = ROOT + } + } + clr_quest = quest_warrior_lodge_raid_and_loot + } + } +} + +#MISSION: +#Ping event for the mission Recruit Your Child +character_event = { + id = HF.10520 + hide_window = yes + + is_triggered_only = yes + + immediate = { FROM = { society_quest_event = { id = HF.10521 days = 7 random = 7 } } } +} + +#Hero character wants you to Recruit Your Child +society_quest_event = { + id = HF.10521 + is_triggered_only = yes + is_in_society = yes + only_capable = yes + + trigger = { + is_landed = yes + is_adult = yes + FROM = { is_alive = yes } + is_member_of_any_warrior_lodge_trigger = yes + same_society_as = FROM + has_any_quest = no + NOT = { has_character_modifier = quest_cooldown_timer } + NOT = { is_inaccessible_trigger = yes } + any_child = { + is_child_of = PREV + is_alive = yes + is_in_society = no + age = 12 + prisoner = no + NOT = { has_character_flag = flag_child_abandoned_lodge } + OR = { #AIs should only strive to recruit their main heir + PREV = { ai = no } + is_primary_heir = PREV + } + } + } + + desc = EVTDESCHF10521 #default + + immediate = { + random_child = { #Select a child to recruit + limit = { + is_alive = yes + age = 12 + is_in_society = no + prisoner = no + NOT = { has_character_flag = flag_child_abandoned_lodge } + OR = { #AIs should only strive to recruit their main heir + PREV = { ai = no } + is_primary_heir = PREV + } + } + preferred_limit = { + is_primary_heir = PREV + } + save_event_target_as = recruit_to_be + } + } + + quest_target = event_target:recruit_to_be + + option = { + name = ACCEPT + event_target:recruit_to_be = { + show_scope_change = no + set_quest_target = { + id = quest_warrior_lodge_recruit + holder = ROOT + } + } + } + option = { + name = DECLINE + custom_tooltip = { text = decline_quest_tooltip } + + add_character_modifier = { + name = quest_cooldown_timer + hidden = yes + days = 1000 + } + + ai_chance = { factor = 0 } + } +} diff --git a/MOD/Witcher/events/HF_warrior_lodge_powers_events.txt b/MOD/Witcher/events/HF_warrior_lodge_powers_events.txt new file mode 100644 index 000000000..143483552 --- /dev/null +++ b/MOD/Witcher/events/HF_warrior_lodge_powers_events.txt @@ -0,0 +1,5075 @@ +# Written by Flavio (HF.25000 - HF.25071) + +namespace = HF + +############################################# +## Power 2: Summon Commander +character_event = { + id = HF.25000 + desc = EVTDESCHFA25000 + picture = { + trigger = { event_target:invited_lodge_soldier = { society_member_of = warrior_lodge_tengri } } + picture = GFX_evt_eagle_warriors + } + picture = { + trigger = { event_target:invited_lodge_soldier = { OR = { society_member_of = warrior_lodge_zun society_member_of = warrior_lodge_west_african } } } + picture = GFX_evt_sun_temple + } + picture = { + trigger = { event_target:invited_lodge_soldier = { society_member_of = warrior_lodge_hellenic } } + picture = GFX_evt_hellenic_temple + } + picture = { + trigger = { + event_target:invited_lodge_soldier = { + NOR = { + society_member_of = warrior_lodge_zun + society_member_of = warrior_lodge_west_african + society_member_of = warrior_lodge_tengri + society_member_of = warrior_lodge_hellenic + } + } + } + picture = GFX_evt_viking_battle_oldgods + } + + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + option = { + name = EVTOPTCHF25000 + + trigger = { + OR = { + NOT = { ROOT = { has_law = succ_byzantine_elective } } #Either not Imperial... + NOT = { #...Or there are no valid vassal candidates that can be commanders. + any_vassal = { + higher_real_tier_than = BARON + NOT = { + primary_title = { temporary = yes } + } + OR = { + AND = { + OR = { + male_can_hold_minor_title_trigger = yes + female_can_hold_minor_commander_title_trigger = yes + } + OR = { + NOT = { religion = hindu } + trait = kshatriya + } + is_adult = yes + } + has_character_flag = special_marshal + } + + prisoner = no + NOT = { trait = incapable } + NOT = { is_inaccessible_trigger = yes } + NOT = { has_character_flag = guru } + NOT = { has_character_modifier = refusing_to_lead } + NOR = { + has_job_title = job_chancellor + has_job_title = job_marshal + has_job_title = job_treasurer + has_job_title = job_spymaster + has_job_title = job_spiritual + has_minor_title = title_commander + } + } + } + } + any_realm_character = { + NOT = { + higher_tier_than = BARON + } + liege = { character = ROOT } + has_minor_title = title_commander + NOT = { + martial = 10 + } + } + OR = { + AND = { + tier = COUNT + any_realm_character = { + count = 2 + liege = { character = ROOT } + has_minor_title = title_commander + } + } + AND = { + tier = DUKE + any_realm_character = { + count = 4 + liege = { character = ROOT } + has_minor_title = title_commander + } + } + AND = { + tier = KING + is_nomadic = no + any_realm_character = { + count = 6 + liege = { character = ROOT } + has_minor_title = title_commander + } + } + AND = { + tier = EMPEROR + is_nomadic = no + any_realm_character = { + count = 8 + liege = { character = ROOT } + has_minor_title = title_commander + } + } + AND = { + tier = KING + is_nomadic = yes + any_realm_character = { + count = 2 + liege = { character = ROOT } + has_minor_title = title_commander + } + } + AND = { + tier = EMPEROR + is_nomadic = yes + any_realm_character = { + count = 4 + liege = { character = ROOT } + has_minor_title = title_commander + } + } + } + } + + random_realm_character = { + limit = { + NOT = { + higher_tier_than = BARON + } + liege = { character = ROOT } + has_minor_title = title_commander + NOT = { + martial = 12 + } + } + opinion = { + modifier = insulted + who = ROOT + years = 2 + } + remove_title = title_commander + } + + event_target:invited_lodge_soldier = { + show_scope_change = no + opinion = { + modifier = opinion_loyal_servant + who = ROOT + years = 100 + } + give_minor_title = title_commander + } + } + option = { + name = EVTOPTAHF25000 + trigger = { + OR = { + NOT = { ROOT = { has_law = succ_byzantine_elective } } #Either not Imperial... + NOT = { #...Or there are no valid vassal candidates that can be commanders. + any_vassal = { + higher_real_tier_than = BARON + NOT = { + primary_title = { temporary = yes } + } + OR = { + AND = { + OR = { + male_can_hold_minor_title_trigger = yes + female_can_hold_minor_commander_title_trigger = yes + } + OR = { + NOT = { religion = hindu } + trait = kshatriya + } + is_adult = yes + } + has_character_flag = special_marshal + } + + prisoner = no + NOT = { trait = incapable } + NOT = { is_inaccessible_trigger = yes } + NOT = { has_character_flag = guru } + NOT = { has_character_modifier = refusing_to_lead } + NOR = { + has_job_title = job_chancellor + has_job_title = job_marshal + has_job_title = job_treasurer + has_job_title = job_spymaster + has_job_title = job_spiritual + has_minor_title = title_commander + } + } + } + } + OR = { + AND = { + tier = COUNT + NOT = { + any_realm_character = { + count = 2 + liege = { character = ROOT } + has_minor_title = title_commander + } + } + } + AND = { + tier = DUKE + NOT = { + any_realm_character = { + count = 4 + liege = { character = ROOT } + has_minor_title = title_commander + } + } + } + AND = { + tier = KING + is_nomadic = no + NOT = { + any_realm_character = { + count = 6 + liege = { character = ROOT } + has_minor_title = title_commander + } + } + } + AND = { + tier = EMPEROR + is_nomadic = no + NOT = { + any_realm_character = { + count = 8 + liege = { character = ROOT } + has_minor_title = title_commander + } + } + } + AND = { + tier = KING + is_nomadic = yes + NOT = { + any_realm_character = { + count = 2 + liege = { character = ROOT } + has_minor_title = title_commander + } + } + } + AND = { + tier = EMPEROR + is_nomadic = yes + NOT = { + any_realm_character = { + count = 4 + liege = { character = ROOT } + has_minor_title = title_commander + } + } + } + } + } + + event_target:invited_lodge_soldier = { + show_scope_change = no + opinion = { + modifier = opinion_loyal_servant + who = ROOT + years = 100 + } + give_minor_title = title_commander + } + } + option = { + name = EVTOPTBHF25000 + event_target:invited_lodge_soldier = { + show_scope_change = no + opinion = { + modifier = opinion_loyal_servant + who = ROOT + years = 100 + } + } + ai_chance = { + factor = 100 + } + } +} +############################################# +## Power 3: Summon Warriors of Ukko +#Which kind? +character_event = { + id = HF.25001 + desc = EVTDESCHF25001 + picture = GFX_evt_mysterious_forest + border = GFX_event_normal_frame_war + + has_dlc = "Holy Fury" + + is_triggered_only = yes + + immediate = { + random_list = { + 33 = { sound_effect = warriors_of_ukko_01 } + 33 = { sound_effect = warriors_of_ukko_02 } + 33 = { sound_effect = warriors_of_ukko_03 } + } + } + option = { + name = EVTOPTAHF25001 + capital_scope = { + show_scope_change = no + ROOT = { + show_scope_change = no + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 1000 1000 } + heavy_infantry = { 500 500 } + } + earmark = ukko_warriors + attrition = 0.5 + disband_on_peace = yes + } + } + } + ai_chance = { + factor = 30 + } + } + option = { + name = EVTOPTBHF25001 + capital_scope = { + show_scope_change = no + ROOT = { + show_scope_change = no + spawn_unit = { + province = PREV + owner = ROOT + troops = { + pikemen = { 1000 1000 } + } + earmark = ukko_warriors + attrition = 0.5 + disband_on_peace = yes + } + } + } + ai_chance = { + factor = 30 + } + } + option = { + name = EVTOPTCHF25001 + capital_scope = { + show_scope_change = no + ROOT = { + show_scope_change = no + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_cavalry = { 1500 1500 } + } + earmark = ukko_warriors + attrition = 0.5 + disband_on_peace = yes + } + } + } + ai_chance = { + factor = 30 + } + } + option = { #Changed my mind + name = EVTOPTDHF25001 + hidden_tooltip = { + remove_character_modifier = lodge_summon_warriors_cooldown + if = { + limit = { society_member_of = warrior_lodge_finnish } #Safety check for sneaky players. + add_society_currency_medium_effect = yes + } + } + ai_chance = { + factor = 0 + } + } +} + +#Only when war ends, remove the modifier that prevents you from taking the decision again. +character_event = { + id = HF.25002 + hide_window = yes + is_triggered_only = yes + + trigger = { + OR = { + FROM = { + has_character_modifier = lodge_summon_warriors_cooldown + } + ROOT = { + has_character_modifier = lodge_summon_warriors_cooldown + } + FROM = { + has_character_modifier = lodge_slavic_stand_together_cooldown + } + ROOT = { + has_character_modifier = lodge_slavic_stand_together_cooldown + } + + } + } + + immediate = { + if = { + limit = { + FROM = { + has_character_modifier = lodge_summon_warriors_cooldown + } + } + FROM = { character_event = { id = HF.25003 days = 1 } } #One day delay to check if this was the last war. + } + if = { + limit = { + ROOT = { + has_character_modifier = lodge_summon_warriors_cooldown + } + } + ROOT = { character_event = { id = HF.25003 days = 1 } } + } + if = { + limit = { + FROM = { + has_character_modifier = lodge_slavic_stand_together_cooldown + } + } + FROM = { character_event = { id = HF.25003 days = 1 } } #One day delay to check if this was the last war. + } + if = { + limit = { + ROOT = { + has_character_modifier = lodge_slavic_stand_together_cooldown + } + } + ROOT = { character_event = { id = HF.25003 days = 1 } } + } + + } +} + +character_event = { + id = HF.25003 + hide_window = yes + + is_triggered_only = yes + + immediate = { + if = { + limit = { + FROM = { + has_character_modifier = lodge_summon_warriors_cooldown + war = no #Avoid exploitation. + } + } + FROM = { remove_character_modifier = lodge_summon_warriors_cooldown } + } + if = { + limit = { + ROOT = { + has_character_modifier = lodge_summon_warriors_cooldown + war = no #Avoid exploitation. + } + } + ROOT = { remove_character_modifier = lodge_summon_warriors_cooldown } + } + if = { + limit = { + FROM = { + has_character_modifier = lodge_slavic_stand_together_cooldown + war = no #Avoid exploitation. + } + } + FROM = { remove_character_modifier = lodge_slavic_stand_together_cooldown } + } + if = { + limit = { + ROOT = { + has_character_modifier = lodge_slavic_stand_together_cooldown + war = no #Avoid exploitation. + } + } + ROOT = { remove_character_modifier = lodge_slavic_stand_together_cooldown } + } + } +} + +############################################# +## Power 2: Call of the Steppe +#Call of the Steppe - Nomad version. +character_event = { + id = HF.25004 + desc = EVTDESCHF25004 + picture = GFX_evt_horsemanship + border = GFX_event_normal_frame_war + + immediate = { + random_list = { + 33 = { sound_effect = call_of_the_steppe_01 } + 33 = { sound_effect = call_of_the_steppe_02 } + 33 = { sound_effect = call_of_the_steppe_03 } + } + } + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25004 + population = 1000 + manpower = 500 + } +} +#Call of the Steppe - Non-nomad version. +character_event = { + id = HF.25005 + desc = EVTDESCHF25005 + picture = GFX_evt_mongols + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25005 + add_character_modifier = { + modifier = lodge_call_of_the_steppe_boost + duration = 3650 + } + clr_character_flag = flag_using_call_of_the_steppes + } +} + +#Zun Battle trance. +character_event = { + id = HF.25006 + desc = EVTDESCHF25006 + picture = GFX_evt_sun_temple + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + immediate = { + random_list = { + 33 = { trigger = { is_female = no } sound_effect = battle_trance_male_01 } + 33 = { trigger = { is_female = no } sound_effect = battle_trance_male_02 } + 33 = { trigger = { is_female = no } sound_effect = battle_trance_male_03 } + 33 = { trigger = { is_female = yes } sound_effect = battle_trance_female_01 } + 33 = { trigger = { is_female = yes } sound_effect = battle_trance_female_02 } + 33 = { trigger = { is_female = yes } sound_effect = battle_trance_female_03 } + } + } + option = { + name = EVTOPTAHF25006 + add_character_modifier = { + modifier = lodge_zun_battle_trance_1 + duration = 2655 + } + ai_chance = { + factor = 30 + } + } + option = { + name = EVTOPTBHF25006 + add_character_modifier = { + modifier = lodge_zun_battle_trance_2 + duration = 2655 + } + ai_chance = { + factor = 30 + } + } + option = { + name = EVTOPTCHF25006 + add_character_modifier = { + modifier = lodge_zun_battle_trance_3 + duration = 2655 + } + ai_chance = { + factor = 30 + } + } + option = { #Changed my mind. + name = EVTOPTDHF25006 + hidden_tooltip = { + if = { + limit = { society_member_of = warrior_lodge_zun } #Safety check for sneaky players. + add_society_currency_minor_effect = yes + } + } + ai_chance = { + factor = 0 + } + } + after = { + clr_character_flag = flag_picking_battle_trance + } +} + +############################################# +## Power 2: Slavic Stand Together. +#Hidden character ping. +character_event = { + id = HF.25007 + hide_window = yes + + is_triggered_only = yes + immediate = { + random_society_member = { + limit = { + is_ruler = no + religion = ROOT + is_unimportant_trigger = yes + NOR = { + host = { character = ROOT } + any_spouse = { is_ruler = yes } + prisoner = yes + any_close_relative = { ai = no } + host = { ai = no } + is_heir = ROOT + trait = incapable + is_inaccessible_trigger = yes + in_command = yes + has_minor_title = title_commander + has_character_flag = no_court_invites + } + } + preferred_limit = { + trait = brave + trait = zealous + trait = strong + trait = brilliant_strategist + dynasty = ROOT + } + preferred_limit = { + trait = brave + trait = zealous + trait = strong + trait = brilliant_strategist + } + preferred_limit = { + trait = brave + trait = zealous + trait = brilliant_strategist + dynasty = ROOT + } + preferred_limit = { + trait = brave + trait = zealous + trait = brilliant_strategist + } + preferred_limit = { + trait = brave + trait = zealous + trait = skilled_tactician + dynasty = ROOT + } + preferred_limit = { + trait = brave + trait = zealous + trait = skilled_tactician + } + preferred_limit = { + trait = brave + trait = zealous + dynasty = ROOT + } + preferred_limit = { + trait = brave + trait = zealous + } + preferred_limit = { + trait = brave + } + save_event_target_as = scoped_slavic_savior + } + character_event = { id = HF.25008 } + } +} + +#Slavic Stand Together. Spawn troops and move character. +character_event = { + id = HF.25008 + desc = EVTDESCHF25008 + picture = GFX_evt_viking_battle_oldgods + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + immediate = { + random_list = { + 33 = { sound_effect = stand_together_01 } + 33 = { sound_effect = stand_together_02 } + 33 = { sound_effect = stand_together_03 } + } + } + option = { + name = EVTOPTAHF25008 + event_target:scoped_slavic_savior = { move_character = ROOT } + hidden_tooltip = { + random_realm_character = { + limit = { has_minor_title = title_commander } + preferred_limit = { NOT = { martial = 10 } } + preferred_limit = { NOT = { martial = 15 } } + remove_title = title_commander + } + event_target:scoped_slavic_savior = { give_minor_title = title_commander } + } + capital_scope = { + show_scope_change = no + ROOT = { + show_scope_change = no + spawn_unit = { + province = PREV + home = PREV + owner = THIS + leader = event_target:scoped_slavic_savior + match_character = THIS + match_mult = 0.075 + match_min = 100 + match_max = 3000 + attrition = 1.0 + earmark = lodge_stand_together + disband_on_peace = yes + can_toggle_looting = no + } + spawn_unit = { + province = PREV + home = PREV + owner = THIS + match_character = THIS + match_mult = 0.075 + match_min = 100 + match_max = 3000 + attrition = 1.0 + earmark = lodge_stand_together + disband_on_peace = yes + can_toggle_looting = no + } + spawn_unit = { + province = PREV + home = PREV + owner = THIS + match_character = THIS + match_mult = 0.075 + match_min = 100 + match_max = 3000 + attrition = 1.0 + earmark = lodge_stand_together + disband_on_peace = yes + can_toggle_looting = no + } + } + } + hidden_tooltip = { + random_list = { #chance of befriending the savior. + 25 = { + trigger = { #Becoming lovers. + NOT = { num_of_lovers = 3 } + event_target:scoped_slavic_savior = { NOT = { num_of_lovers = 3 } } + opinion = { + who = event_target:scoped_slavic_savior + value = -20 + } + OR = { + has_religion_feature = religion_holy_family + NOT = { is_close_relative = event_target:scoped_slavic_savior } + } + OR = { + AND = { + prefers_men_trigger = yes + event_target:scoped_slavic_savior = { is_female = no } + } + AND = { + prefers_men_trigger = no + event_target:scoped_slavic_savior = { is_female = yes } + } + } + } + modifier = { + factor = 0.5 + age = 35 + } + modifier = { + factor = 1.5 + trait = gregarious + } + modifier = { + factor = 1.5 + event_target:scoped_slavic_savior = { trait = gregarious } + } + modifier = { + factor = 0.5 + trait = shy + } + modifier = { + factor = 0.5 + event_target:scoped_slavic_savior = { trait = shy } + } + modifier = { + factor = 1.25 + event_target:scoped_slavic_savior = { martial = 15 } #Helpful + } + modifier = { + factor = 1.25 + event_target:scoped_slavic_savior = { martial = 20 } #Helpful + } + modifier = { + factor = 0.25 + trait = envious + } + modifier = { + factor = 0.25 + trait = cruel + } + modifier = { + factor = 0.25 + trait = paranoid + } + modifier = { + factor = 0.75 + event_target:scoped_slavic_savior = { has_ugly_trait_trigger = yes } + } + modifier = { + factor = 0.75 + event_target:scoped_slavic_savior = { trait = lisp } + } + modifier = { + factor = 0.75 + event_target:scoped_slavic_savior = { trait = hunchback } + } + modifier = { + factor = 0.75 + event_target:scoped_slavic_savior = { trait = inbred } + } + modifier = { + factor = 0.5 + event_target:scoped_slavic_savior = { age = 50 } + } + modifier = { + factor = 1.5 + event_target:scoped_slavic_savior = { has_fair_trait_trigger = yes } + } + modifier = { + factor = 1.5 + event_target:scoped_slavic_savior = { trait = strong } + } + modifier = { + factor = 1.5 + event_target:scoped_slavic_savior = { NOT = { age = 30 } } + } + character_event = { id = HF.25009 days = 30 random = 15 } #Falling in Love. + } + 25 = { + trigger = { #Becoming friends + NOT = { num_of_friends = 3 } + event_target:scoped_slavic_savior = { NOT = { num_of_friends = 3 } } + opinion = { + who = event_target:scoped_slavic_savior + value = -20 + } + } + modifier = { + factor = 0.5 + age = 35 + } + modifier = { + factor = 1.5 + trait = gregarious + } + modifier = { + factor = 1.5 + event_target:scoped_slavic_savior = { trait = gregarious } + } + modifier = { + factor = 0.5 + trait = shy + } + modifier = { + factor = 0.5 + event_target:scoped_slavic_savior = { trait = shy } + } + modifier = { + factor = 1.25 + event_target:scoped_slavic_savior = { martial = 15 } #Helpful + } + modifier = { + factor = 1.25 + event_target:scoped_slavic_savior = { martial = 20 } #Helpful + } + modifier = { + factor = 0.25 + trait = envious + } + modifier = { + factor = 0.25 + trait = cruel + } + modifier = { + factor = 0.25 + trait = paranoid + } + modifier = { + factor = 0.75 + event_target:scoped_slavic_savior = { trait = hunchback } + } + modifier = { + factor = 0.75 + event_target:scoped_slavic_savior = { trait = inbred } + } + modifier = { + factor = 0.5 + event_target:scoped_slavic_savior = { age = 50 } + } + modifier = { + factor = 1.5 + event_target:scoped_slavic_savior = { NOT = { age = 30 } } + } + character_event = { id = HF.25013 days = 30 random = 15 } #Becoming friends. + } + 1 = { + + } + } + } + } +} + +#Falling in love with new commander. +character_event = { + id = HF.25009 + desc = EVTDESCHF25009 + picture = GFX_evt_viking_battle_oldgods + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + trigger = { event_target:scoped_slavic_savior = { is_alive = yes } } + + option = { + name = EVTOPTAHF25009 + tooltip = { add_lover = event_target:scoped_slavic_savior } + hidden_tooltip = { + event_target:scoped_slavic_savior = { + character_event = { id = HF.25010 } + } + } + } + option = { + name = EVTOPTBHF25009 + } +} +#Commander reacts. +character_event = { + id = HF.25010 + desc = EVTDESCHF25010 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25010 + trigger = { + OR = { + AND = { + prefers_men_trigger = yes + FROM = { is_female = no } + } + AND = { + prefers_men_trigger = no + FROM = { is_female = yes } + } + } + } + add_lover = FROM + hidden_tooltip = { + FROM = { + add_lover = ROOT + character_event = { id = HF.25011 } + } + } + } + option = { + name = EVTOPTBHF25010 + trigger = { + NOR = { + AND = { + prefers_men_trigger = yes + FROM = { is_female = no } + } + AND = { + prefers_men_trigger = no + FROM = { is_female = yes } + } + } + } + hidden_tooltip = { + FROM = { + character_event = { id = HF.25012 } + } + } + } +} +character_event = { + id = HF.25011 + desc = EVTDESCHF25011 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25011 + } +} + +character_event = { + id = HF.25012 + desc = EVTDESCHF25012 + picture = GFX_evt_quarrel + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25012 + if = { + limit = { + NOT = { trait = depressed } + } + random = { chance = 5 add_trait = depressed } + } + } +} + +#Becoming friends with new commander. +character_event = { + id = HF.25013 + desc = EVTDESCHF25013 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_war + + trigger = { event_target:scoped_slavic_savior = { is_alive = yes } } + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25013 + add_friend = event_target:scoped_slavic_savior + hidden_tooltip = { + event_target:scoped_slavic_savior = { + add_friend = ROOT + } + } + } + option = { + name = EVTOPTBHF25013 + } +} + + +#################################################################### + +#On_start: setup event for scarred traits visuals and variable. +character_event = { + id = HF.25020 + hide_window = yes + + is_triggered_only = yes + + trigger = { + is_save_game = no + OR = { + trait = scarred + trait = scarred_mid + trait = scarred_high + } + } + immediate = { + add_scarred_start_effect = yes + } +} + +#War Sacrifice power. +character_event = { + id = HF.25021 + desc = { + trigger = { + religion_group = pagan_group + } + text = EVTDESCAHF25021 + } + desc = { + trigger = { + NOT = { + religion_group = pagan_group + } + } + text = EVTDESCBHF25021 + } + picture = GFX_evt_religious_exultation + border = GFX_event_normal_frame_religion + hide_new = yes + + is_triggered_only = yes + + immediate = { + hidden_effect = { + random_dynasty_member = { + limit = { + is_ruler = no + is_adult = yes + host = { character = ROOT } + NOT = { is_heir = ROOT } + } + save_event_target_as = scoped_war_sacrifice + } + random_courtier = { + limit = { + NOT = { dynasty = ROOT } + is_ruler = no + is_adult = yes + is_alive = yes + } + preferred_limit = { + is_unimportant_trigger = yes + } + save_event_target_as = sacrificed_courtier + } + clr_character_flag = flag_painted_by_norse #Safety cleanup + clr_character_flag = flag_painted_by_tengri + clr_character_flag = flag_painted_by_baltic + clr_character_flag = flag_painted_by_finnish + clr_character_flag = flag_painted_by_slavic + clr_character_flag = flag_painted_by_west_african + clr_character_flag = flag_painted_by_zun + clr_character_flag = flag_painted_by_bon + clr_character_flag = flag_painted_by_hellenic + #Bon and Hellenics would not paint their faces. They only get the blood splatter effect when sacrificing. Flags only used for localization. + if = { + limit = { + society_member_of = warrior_lodge_norse #Tie to flag to avoid potential multiplayer delay issues. + } + set_character_flag = flag_painted_by_norse + } + if = { + limit = { + society_member_of = warrior_lodge_tengri + } + set_character_flag = flag_painted_by_tengri + } + if = { + limit = { + society_member_of = warrior_lodge_baltic + } + set_character_flag = flag_painted_by_baltic + } + if = { + limit = { + society_member_of = warrior_lodge_finnish + } + set_character_flag = flag_painted_by_finnish + } + if = { + limit = { + society_member_of = warrior_lodge_slavic + } + set_character_flag = flag_painted_by_slavic + } + if = { + limit = { + society_member_of = warrior_lodge_west_african + } + set_character_flag = flag_painted_by_west_african + } + if = { + limit = { + society_member_of = warrior_lodge_zun + } + set_character_flag = flag_painted_by_zun + } + if = { + limit = { + society_member_of = warrior_lodge_bon + } + set_character_flag = flag_painted_by_bon + } + if = { + limit = { + society_member_of = warrior_lodge_hellenic + } + set_character_flag = flag_painted_by_hellenic + } + } + } + option = { #Sacrifice family member + name = EVTOPTAHF25021 + trigger = { + event_target:scoped_war_sacrifice = { is_alive = yes } + OR = { + religion = norse_pagan + religion = norse_pagan_reformed + religion = slavic_pagan + religion = slavic_pagan_reformed + religion = baltic_pagan + religion = baltic_pagan_reformed + religion = tengri_pagan + religion = tengri_pagan_reformed + religion = finnish_pagan + religion = finnish_pagan_reformed + religion = zun_pagan + religion = zun_pagan_reformed + religion = west_african_pagan + religion = west_african_pagan_reformed + has_religion_feature = religion_ritual_sacrifice + } + } + add_character_modifier = { + modifier = lodge_war_sacrifice_4 + years = 5 + } + add_blood_splatter_effect = yes + event_target:scoped_war_sacrifice = { + show_scope_change = no + save_event_target_as = kinslayer_target + death = { + death_reason = death_execution_aztec_sacrifice + killer = ROOT + } + } + add_kinslayer_trait_effect = yes + pacifists_lose_piety_effect = yes + hidden_tooltip = { character_event = { id = HF.25022 } } + hidden_tooltip = { + clr_character_flag = flag_picking_war_sacrifice + add_character_modifier = { + modifier = lodge_war_sacrifice_cooldown + years = 10 + hidden = yes + } + event_target:scoped_war_sacrifice = { + mother = { + opinion = { + modifier = opinion_killed_close_kin + who = ROOT + } + } + father = { + opinion = { + modifier = opinion_killed_close_kin + who = ROOT + } + } + spouse = { + opinion = { + modifier = opinion_spouse_slayer + who = ROOT + } + } + any_child = { + opinion = { + modifier = opinion_killed_close_kin + who = ROOT + } + } + } + } + } + option = { #Sacrifice servant + name = EVTOPTBHF25021 + trigger = { + any_courtier = { + NOT = { dynasty = ROOT } + is_ruler = no + is_adult = yes + is_alive = yes + } + OR = { + religion = norse_pagan + religion = norse_pagan_reformed + religion = slavic_pagan + religion = slavic_pagan_reformed + religion = baltic_pagan + religion = baltic_pagan_reformed + religion = tengri_pagan + religion = tengri_pagan_reformed + religion = finnish_pagan + religion = finnish_pagan_reformed + religion = zun_pagan + religion = zun_pagan_reformed + religion = west_african_pagan + religion = west_african_pagan_reformed + has_religion_feature = religion_ritual_sacrifice + } + } + add_character_modifier = { + modifier = lodge_war_sacrifice_3 + years = 5 + } + event_target:sacrificed_courtier = { + show_scope_change = no + death = { + death_reason = death_execution_aztec_sacrifice + killer = ROOT + } + } + custom_tooltip = { + text = tooltip_EVTOPTBHF25021 + hidden_tooltip = { + any_courtier_or_vassal = { + limit = { + NOR = { + trait = impaler + trait = cruel + is_member_of_any_warrior_lodge_trigger = yes + } + } + opinion = { + who = ROOT + modifier = opinion_savage_butcher + years = 5 + } + } + event_target:scoped_war_sacrifice = { + mother = { + opinion = { + modifier = opinion_killed_close_kin + who = ROOT + } + } + father = { + opinion = { + modifier = opinion_killed_close_kin + who = ROOT + } + } + spouse = { + opinion = { + modifier = opinion_spouse_slayer + who = ROOT + } + } + any_child = { + opinion = { + modifier = opinion_killed_close_kin + who = ROOT + } + } + } + } + } + pacifists_lose_piety_effect = yes + add_blood_splatter_effect = yes + hidden_tooltip = { character_event = { id = HF.25023 } } + hidden_tooltip = { + clr_character_flag = flag_picking_war_sacrifice + add_character_modifier = { + modifier = lodge_war_sacrifice_cooldown + years = 10 + hidden = yes + } + } + } + option = { #Sacrifice livestock + name = { + text = EVTOPTCHF25021_A + trigger = { + is_nomadic = no + } + } + name = { + text = EVTOPTCHF25021_B + trigger = { + is_nomadic = yes + } + } + add_character_modifier = { + modifier = lodge_war_sacrifice_2 + years = 5 + } + if = { + limit = { ai = no is_nomadic = no } + scaled_wealth = { value = -0.75 min = -50 max = -150 } + } + if = { + limit = { ai = no is_nomadic = yes } + manpower = -150 + } + if = { + limit = { NOR = { religion_group = pagan_group has_religion_feature = religion_ritual_sacrifice } } + tiered_high_piety_negative_effect = yes + } + add_blood_splatter_effect = yes + hidden_tooltip = { character_event = { id = HF.25024 } } + hidden_tooltip = { + clr_character_flag = flag_picking_war_sacrifice + add_character_modifier = { + modifier = lodge_war_sacrifice_cooldown + years = 10 + hidden = yes + } + } + } + option = { #Never mind. + name = EVTOPTEHF25021 + trigger = { ai = no } + add_society_currency_medium_effect = yes + clr_character_flag = flag_picking_war_sacrifice + } +# option = { #Sacrifice wealth +# name = EVTOPTDHF25021 +# if = { +# limit = { ai = no } +# scaled_wealth = { value = -0.25 min = -25 max = -75 } +# } +# if = { +# limit = { NOT = { religion_group = pagan_group } } +# tiered_piety_negative_effect = yes +# } +# hidden_tooltip = { character_event = { id = HF.25025 } } +# add_character_modifier = { +# modifier = lodge_war_sacrifice_1 +# years = 5 +# } +# } +} + +#Sacrificed relative to the gods. +character_event = { + id = HF.25022 + desc = { + trigger = { + has_character_flag = flag_painted_by_norse + } + text = EVTDESCAHF25022 + picture = GFX_evt_midwinter_blot_oldgods + } + desc = { + trigger = { + has_character_flag = flag_painted_by_tengri + } + text = EVTDESCBHF25022 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_painted_by_baltic + has_character_flag = flag_painted_by_slavic + has_character_flag = flag_painted_by_finnish + } + } + text = EVTDESCCHF25022 + picture = GFX_evt_mysterious_forest + } + desc = { + trigger = { + has_character_flag = flag_painted_by_west_african + } + text = EVTDESCDHF25022 + picture = GFX_evt_sun_temple + } + desc = { + trigger = { + has_character_flag = flag_painted_by_zun + } + text = EVTDESCEHF25022 + picture = GFX_evt_sun_temple + } + desc = { + trigger = { + OR = { + has_character_flag = flag_painted_by_bon + has_character_flag = flag_painted_by_hellenic + } + } + text = EVTDESCFHF25022 + } + hide_new = yes + + picture = GFX_evt_religious_exultation + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { #Tattoos/warpaint assignment is tiered, depending on the sacrifice performed. Tattoos can only be applied once. + random_list = { + 33 = { sound_effect = sacrifice_family_01 } + 33 = { sound_effect = sacrifice_family_02 } + 33 = { sound_effect = sacrifice_family_03 } + } + if = { + limit = { + has_character_flag = flag_painted_by_norse + NOR = { + trait = african_tattoo_1 + trait = african_tattoo_2 + trait = african_tattoo_3 + trait = african_tattoo_4 + trait = african_tattoo_5 + trait = african_tattoo_6 + trait = african_tattoo_7 + trait = african_tattoo_8 + trait = african_tattoo_9 + trait = african_tattoo_10 + trait = african_tattoo_11 + trait = african_tattoo_12 + trait = slavic_tattoo_1 + trait = slavic_tattoo_2 + trait = slavic_tattoo_3 + trait = slavic_tattoo_4 + trait = slavic_tattoo_5 + trait = slavic_tattoo_6 + trait = norse_tattoo_1 + trait = norse_tattoo_2 + trait = norse_tattoo_3 + trait = norse_tattoo_4 + trait = norse_tattoo_5 + trait = norse_tattoo_6 + } + } + random_list = { + 50 = { add_trait = norse_tattoo_5 } + 50 = { add_trait = norse_tattoo_6 } + } + } + if = { + limit = { + has_character_flag = flag_painted_by_west_african + NOR = { + trait = african_tattoo_1 + trait = african_tattoo_2 + trait = african_tattoo_3 + trait = african_tattoo_4 + trait = african_tattoo_5 + trait = african_tattoo_6 + trait = african_tattoo_7 + trait = african_tattoo_8 + trait = african_tattoo_9 + trait = african_tattoo_10 + trait = african_tattoo_11 + trait = african_tattoo_12 + trait = slavic_tattoo_1 + trait = slavic_tattoo_2 + trait = slavic_tattoo_3 + trait = slavic_tattoo_4 + trait = slavic_tattoo_5 + trait = slavic_tattoo_6 + trait = norse_tattoo_1 + trait = norse_tattoo_2 + trait = norse_tattoo_3 + trait = norse_tattoo_4 + trait = norse_tattoo_5 + trait = norse_tattoo_6 + } + } + random_list = { + 50 = { add_trait = african_tattoo_7 } + 50 = { add_trait = african_tattoo_8 } + } + } + if = { + limit = { + OR = { + has_character_flag = flag_painted_by_slavic + has_character_flag = flag_painted_by_baltic + } + NOR = { + trait = african_tattoo_1 + trait = african_tattoo_2 + trait = african_tattoo_3 + trait = african_tattoo_4 + trait = african_tattoo_5 + trait = african_tattoo_6 + trait = african_tattoo_7 + trait = african_tattoo_8 + trait = african_tattoo_9 + trait = african_tattoo_10 + trait = african_tattoo_11 + trait = african_tattoo_12 + trait = slavic_tattoo_1 + trait = slavic_tattoo_2 + trait = slavic_tattoo_3 + trait = slavic_tattoo_4 + trait = slavic_tattoo_5 + trait = slavic_tattoo_6 + trait = norse_tattoo_1 + trait = norse_tattoo_2 + trait = norse_tattoo_3 + trait = norse_tattoo_4 + trait = norse_tattoo_5 + trait = norse_tattoo_6 + } + } + random_list = { + 50 = { add_trait = slavic_tattoo_5 } + 50 = { add_trait = slavic_tattoo_6 } + } + } + if = { + limit = { + has_character_flag = flag_painted_by_tengri + } + remove_character_modifier = tengri_warpaint_1 #Remove all previous paint that might still be lingering, for whatever reason. + remove_character_modifier = tengri_warpaint_2 + remove_character_modifier = aztec_warpaint_1 + remove_character_modifier = aztec_warpaint_2 + remove_character_modifier = finnish_warpaint_1 + remove_character_modifier = finnish_warpaint_2 + remove_character_modifier = zun_warpaint_1 + remove_character_modifier = zun_warpaint_2 + random_list = { + 50 = { + add_character_modifier = { + modifier = tengri_warpaint_1 + years = 5 + hidden = yes + } + } + 50 = { + add_character_modifier = { + modifier = tengri_warpaint_2 + years = 5 + hidden = yes + } + } + } + } + if = { + limit = { + has_character_flag = flag_painted_by_finnish + } + remove_character_modifier = tengri_warpaint_1 #Remove all previous paint that might still be lingering, for whatever reason. + remove_character_modifier = tengri_warpaint_2 + remove_character_modifier = aztec_warpaint_1 + remove_character_modifier = aztec_warpaint_2 + remove_character_modifier = finnish_warpaint_1 + remove_character_modifier = finnish_warpaint_2 + remove_character_modifier = zun_warpaint_1 + remove_character_modifier = zun_warpaint_2 + random_list = { + 50 = { + add_character_modifier = { + modifier = finnish_warpaint_1 + years = 5 + hidden = yes + } + } + 50 = { + add_character_modifier = { + modifier = finnish_warpaint_2 + years = 5 + hidden = yes + } + } + } + } + if = { + limit = { + has_character_flag = flag_painted_by_zun + } + remove_character_modifier = tengri_warpaint_1 #Remove all previous paint that might still be lingering, for whatever reason. + remove_character_modifier = tengri_warpaint_2 + remove_character_modifier = aztec_warpaint_1 + remove_character_modifier = aztec_warpaint_2 + remove_character_modifier = finnish_warpaint_1 + remove_character_modifier = finnish_warpaint_2 + remove_character_modifier = zun_warpaint_1 + remove_character_modifier = zun_warpaint_2 + random_list = { + 50 = { + add_character_modifier = { + modifier = zun_warpaint_1 + years = 5 + hidden = yes + } + } + 50 = { + add_character_modifier = { + modifier = zun_warpaint_2 + years = 5 + hidden = yes + } + } + } + } + } + + option = { + name = EVTOPTAHF25022 + clr_character_flag = flag_painted_by_norse # Flag cleanup + clr_character_flag = flag_painted_by_tengri + clr_character_flag = flag_painted_by_baltic + clr_character_flag = flag_painted_by_finnish + clr_character_flag = flag_painted_by_slavic + clr_character_flag = flag_painted_by_west_african + clr_character_flag = flag_painted_by_zun + clr_character_flag = flag_painted_by_bon + clr_character_flag = flag_painted_by_hellenic + } +} + +#Sacrificed courtier to the gods. +character_event = { + id = HF.25023 + desc = { + trigger = { + has_character_flag = flag_painted_by_norse + } + text = EVTDESCAHF25023 + picture = GFX_evt_midwinter_blot_oldgods + } + desc = { + trigger = { + has_character_flag = flag_painted_by_tengri + } + text = EVTDESCBHF25023 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_painted_by_baltic + has_character_flag = flag_painted_by_slavic + has_character_flag = flag_painted_by_finnish + } + } + text = EVTDESCCHF25023 + picture = GFX_evt_mysterious_forest + } + desc = { + trigger = { + has_character_flag = flag_painted_by_west_african + } + text = EVTDESCDHF25023 + picture = GFX_evt_sun_temple + } + desc = { + trigger = { + has_character_flag = flag_painted_by_zun + } + text = EVTDESCEHF25023 + picture = GFX_evt_sun_temple + } + desc = { + trigger = { + OR = { + has_character_flag = flag_painted_by_bon + has_character_flag = flag_painted_by_hellenic + } + } + text = EVTDESCFHF25023 + } + hide_new = yes + + picture = GFX_evt_religious_exultation + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { #Tattoos/warpaint assignment is tiered, depending on the sacrifice performed. Tattoos can only be applied once. + random_list = { + 33 = { sound_effect = sacrifice_family_01 } + 33 = { sound_effect = sacrifice_family_02 } + 33 = { sound_effect = sacrifice_family_03 } + } + if = { + limit = { + has_character_flag = flag_painted_by_norse + NOR = { + trait = african_tattoo_1 + trait = african_tattoo_2 + trait = african_tattoo_3 + trait = african_tattoo_4 + trait = african_tattoo_5 + trait = african_tattoo_6 + trait = african_tattoo_7 + trait = african_tattoo_8 + trait = african_tattoo_9 + trait = african_tattoo_10 + trait = african_tattoo_11 + trait = african_tattoo_12 + trait = slavic_tattoo_1 + trait = slavic_tattoo_2 + trait = slavic_tattoo_3 + trait = slavic_tattoo_4 + trait = slavic_tattoo_5 + trait = slavic_tattoo_6 + trait = norse_tattoo_1 + trait = norse_tattoo_2 + trait = norse_tattoo_3 + trait = norse_tattoo_4 + trait = norse_tattoo_5 + trait = norse_tattoo_6 + } + } + random_list = { + 50 = { add_trait = norse_tattoo_3 } + 50 = { add_trait = norse_tattoo_4 } + } + } + if = { + limit = { + has_character_flag = flag_painted_by_west_african + NOR = { + trait = african_tattoo_1 + trait = african_tattoo_2 + trait = african_tattoo_3 + trait = african_tattoo_4 + trait = african_tattoo_5 + trait = african_tattoo_6 + trait = african_tattoo_7 + trait = african_tattoo_8 + trait = african_tattoo_9 + trait = african_tattoo_10 + trait = african_tattoo_11 + trait = african_tattoo_12 + trait = slavic_tattoo_1 + trait = slavic_tattoo_2 + trait = slavic_tattoo_3 + trait = slavic_tattoo_4 + trait = slavic_tattoo_5 + trait = slavic_tattoo_6 + trait = norse_tattoo_1 + trait = norse_tattoo_2 + trait = norse_tattoo_3 + trait = norse_tattoo_4 + trait = norse_tattoo_5 + trait = norse_tattoo_6 + } + } + random_list = { + 50 = { add_trait = african_tattoo_5 } + 50 = { add_trait = african_tattoo_6 } + } + } + if = { + limit = { + OR = { + has_character_flag = flag_painted_by_slavic + has_character_flag = flag_painted_by_baltic + } + NOR = { + trait = african_tattoo_1 + trait = african_tattoo_2 + trait = african_tattoo_3 + trait = african_tattoo_4 + trait = african_tattoo_5 + trait = african_tattoo_6 + trait = african_tattoo_7 + trait = african_tattoo_8 + trait = african_tattoo_9 + trait = african_tattoo_10 + trait = african_tattoo_11 + trait = african_tattoo_12 + trait = slavic_tattoo_1 + trait = slavic_tattoo_2 + trait = slavic_tattoo_3 + trait = slavic_tattoo_4 + trait = slavic_tattoo_5 + trait = slavic_tattoo_6 + trait = norse_tattoo_1 + trait = norse_tattoo_2 + trait = norse_tattoo_3 + trait = norse_tattoo_4 + trait = norse_tattoo_5 + trait = norse_tattoo_6 + } + } + random_list = { + 50 = { add_trait = slavic_tattoo_3 } + 50 = { add_trait = slavic_tattoo_4 } + } + } + if = { + limit = { + has_character_flag = flag_painted_by_tengri + } + remove_character_modifier = tengri_warpaint_1 #Remove all previous paint that might still be lingering, for whatever reason. + remove_character_modifier = tengri_warpaint_2 + remove_character_modifier = aztec_warpaint_1 + remove_character_modifier = aztec_warpaint_2 + remove_character_modifier = finnish_warpaint_1 + remove_character_modifier = finnish_warpaint_2 + remove_character_modifier = zun_warpaint_1 + remove_character_modifier = zun_warpaint_2 + random_list = { + 50 = { + add_character_modifier = { + modifier = tengri_warpaint_1 + years = 5 + hidden = yes + } + } + 50 = { + add_character_modifier = { + modifier = tengri_warpaint_2 + years = 5 + hidden = yes + } + } + } + } + if = { + limit = { + has_character_flag = flag_painted_by_finnish + } + remove_character_modifier = tengri_warpaint_1 #Remove all previous paint that might still be lingering, for whatever reason. + remove_character_modifier = tengri_warpaint_2 + remove_character_modifier = aztec_warpaint_1 + remove_character_modifier = aztec_warpaint_2 + remove_character_modifier = finnish_warpaint_1 + remove_character_modifier = finnish_warpaint_2 + remove_character_modifier = zun_warpaint_1 + remove_character_modifier = zun_warpaint_2 + random_list = { + 50 = { + add_character_modifier = { + modifier = finnish_warpaint_1 + years = 5 + hidden = yes + } + } + 50 = { + add_character_modifier = { + modifier = finnish_warpaint_2 + years = 5 + hidden = yes + } + } + } + } + if = { + limit = { + has_character_flag = flag_painted_by_zun + } + remove_character_modifier = tengri_warpaint_1 #Remove all previous paint that might still be lingering, for whatever reason. + remove_character_modifier = tengri_warpaint_2 + remove_character_modifier = aztec_warpaint_1 + remove_character_modifier = aztec_warpaint_2 + remove_character_modifier = finnish_warpaint_1 + remove_character_modifier = finnish_warpaint_2 + remove_character_modifier = zun_warpaint_1 + remove_character_modifier = zun_warpaint_2 + random_list = { + 50 = { + add_character_modifier = { + modifier = zun_warpaint_1 + years = 5 + hidden = yes + } + } + 50 = { + add_character_modifier = { + modifier = zun_warpaint_2 + years = 5 + hidden = yes + } + } + } + } + } + + option = { + name = EVTOPTAHF25023 + clr_character_flag = flag_painted_by_norse # Flag cleanup + clr_character_flag = flag_painted_by_tengri + clr_character_flag = flag_painted_by_baltic + clr_character_flag = flag_painted_by_finnish + clr_character_flag = flag_painted_by_slavic + clr_character_flag = flag_painted_by_west_african + clr_character_flag = flag_painted_by_zun + clr_character_flag = flag_painted_by_bon + clr_character_flag = flag_painted_by_hellenic + } +} + +#Sacrificed cattle to the gods. +character_event = { + id = HF.25024 + desc = { + trigger = { + is_nomadic = no + } + text = EVTDESCAHF25024 + } + desc = { + trigger = { + is_nomadic = yes + } + text = EVTDESCBHF25024 + } + + hide_new = yes + picture = GFX_evt_religious_exultation + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { #Tattoos/warpaint assignment is tiered, depending on the sacrifice performed. Tattoos can only be applied once. + random_list = { + 33 = { sound_effect = sacrifice_cattle_01 } + 33 = { sound_effect = sacrifice_cattle_02 } + 33 = { sound_effect = sacrifice_cattle_03 } + } + if = { + limit = { + has_character_flag = flag_painted_by_norse + NOR = { + trait = african_tattoo_1 + trait = african_tattoo_2 + trait = african_tattoo_3 + trait = african_tattoo_4 + trait = african_tattoo_5 + trait = african_tattoo_6 + trait = african_tattoo_7 + trait = african_tattoo_8 + trait = african_tattoo_9 + trait = african_tattoo_10 + trait = african_tattoo_11 + trait = african_tattoo_12 + trait = slavic_tattoo_1 + trait = slavic_tattoo_2 + trait = slavic_tattoo_3 + trait = slavic_tattoo_4 + trait = slavic_tattoo_5 + trait = slavic_tattoo_6 + trait = norse_tattoo_1 + trait = norse_tattoo_2 + trait = norse_tattoo_3 + trait = norse_tattoo_4 + trait = norse_tattoo_5 + trait = norse_tattoo_6 + } + } + random_list = { + 50 = { add_trait = norse_tattoo_1 } + 50 = { add_trait = norse_tattoo_2 } + } + } + if = { + limit = { + has_character_flag = flag_painted_by_west_african + NOR = { + trait = african_tattoo_1 + trait = african_tattoo_2 + trait = african_tattoo_3 + trait = african_tattoo_4 + trait = african_tattoo_5 + trait = african_tattoo_6 + trait = african_tattoo_7 + trait = african_tattoo_8 + trait = african_tattoo_9 + trait = african_tattoo_10 + trait = african_tattoo_11 + trait = african_tattoo_12 + trait = slavic_tattoo_1 + trait = slavic_tattoo_2 + trait = slavic_tattoo_3 + trait = slavic_tattoo_4 + trait = slavic_tattoo_5 + trait = slavic_tattoo_6 + trait = norse_tattoo_1 + trait = norse_tattoo_2 + trait = norse_tattoo_3 + trait = norse_tattoo_4 + trait = norse_tattoo_5 + trait = norse_tattoo_6 + } + } + random_list = { + 50 = { add_trait = african_tattoo_1 } + 50 = { add_trait = african_tattoo_2 } + 50 = { add_trait = african_tattoo_3 } + 50 = { add_trait = african_tattoo_4 } + } + } + if = { + limit = { + OR = { + has_character_flag = flag_painted_by_slavic + has_character_flag = flag_painted_by_baltic + } + NOR = { + trait = african_tattoo_1 + trait = african_tattoo_2 + trait = african_tattoo_3 + trait = african_tattoo_4 + trait = african_tattoo_5 + trait = african_tattoo_6 + trait = african_tattoo_7 + trait = african_tattoo_8 + trait = african_tattoo_9 + trait = african_tattoo_10 + trait = african_tattoo_11 + trait = african_tattoo_12 + trait = slavic_tattoo_1 + trait = slavic_tattoo_2 + trait = slavic_tattoo_3 + trait = slavic_tattoo_4 + trait = slavic_tattoo_5 + trait = slavic_tattoo_6 + trait = norse_tattoo_1 + trait = norse_tattoo_2 + trait = norse_tattoo_3 + trait = norse_tattoo_4 + trait = norse_tattoo_5 + trait = norse_tattoo_6 + } + } + random_list = { + 50 = { add_trait = slavic_tattoo_1 } + 50 = { add_trait = slavic_tattoo_2 } + } + } + if = { + limit = { + has_character_flag = flag_painted_by_tengri + } + remove_character_modifier = tengri_warpaint_1 #Remove all previous paint that might still be lingering, for whatever reason. + remove_character_modifier = tengri_warpaint_2 + remove_character_modifier = aztec_warpaint_1 + remove_character_modifier = aztec_warpaint_2 + remove_character_modifier = finnish_warpaint_1 + remove_character_modifier = finnish_warpaint_2 + remove_character_modifier = zun_warpaint_1 + remove_character_modifier = zun_warpaint_2 + random_list = { + 50 = { + add_character_modifier = { + modifier = tengri_warpaint_1 + years = 5 + hidden = yes + } + } + 50 = { + add_character_modifier = { + modifier = tengri_warpaint_2 + years = 5 + hidden = yes + } + } + } + } + if = { + limit = { + has_character_flag = flag_painted_by_finnish + } + remove_character_modifier = tengri_warpaint_1 #Remove all previous paint that might still be lingering, for whatever reason. + remove_character_modifier = tengri_warpaint_2 + remove_character_modifier = aztec_warpaint_1 + remove_character_modifier = aztec_warpaint_2 + remove_character_modifier = finnish_warpaint_1 + remove_character_modifier = finnish_warpaint_2 + remove_character_modifier = zun_warpaint_1 + remove_character_modifier = zun_warpaint_2 + random_list = { + 50 = { + add_character_modifier = { + modifier = finnish_warpaint_1 + years = 5 + hidden = yes + } + } + 50 = { + add_character_modifier = { + modifier = finnish_warpaint_2 + years = 5 + hidden = yes + } + } + } + } + if = { + limit = { + has_character_flag = flag_painted_by_zun + } + remove_character_modifier = tengri_warpaint_1 #Remove all previous paint that might still be lingering, for whatever reason. + remove_character_modifier = tengri_warpaint_2 + remove_character_modifier = aztec_warpaint_1 + remove_character_modifier = aztec_warpaint_2 + remove_character_modifier = finnish_warpaint_1 + remove_character_modifier = finnish_warpaint_2 + remove_character_modifier = zun_warpaint_1 + remove_character_modifier = zun_warpaint_2 + random_list = { + 50 = { + add_character_modifier = { + modifier = aztec_warpaint_1 + years = 5 + hidden = yes + } + } + 50 = { + add_character_modifier = { + modifier = aztec_warpaint_2 + years = 5 + hidden = yes + } + } + } + } + } + + option = { + name = EVTOPTAHF25024 + clr_character_flag = flag_painted_by_norse # Flag cleanup + clr_character_flag = flag_painted_by_tengri + clr_character_flag = flag_painted_by_baltic + clr_character_flag = flag_painted_by_finnish + clr_character_flag = flag_painted_by_slavic + clr_character_flag = flag_painted_by_west_african + clr_character_flag = flag_painted_by_zun + clr_character_flag = flag_painted_by_bon + clr_character_flag = flag_painted_by_hellenic + } +} + +#Sacrificed wealth to the gods. - REMOVED +#character_event = { +# id = HF.25025 +# desc = EVTDESCAHF25025 +# +# hide_new = yes +# picture = GFX_evt_religious_exultation +# border = GFX_event_normal_frame_religion +# +# is_triggered_only = yes +# +# immediate = { #Tattoos/warpaint assignment is tiered, depending on the sacrifice performed. Tattoos can only be applied once. +# if = { +# limit = { +# has_character_flag = flag_painted_by_norse +# NOR = { +# trait = norse_tattoo_1 +# trait = norse_tattoo_2 +# trait = norse_tattoo_3 +# trait = norse_tattoo_4 +# trait = norse_tattoo_5 +# trait = norse_tattoo_6 +# } +# } +# random_list = { +# 50 = { add_trait = norse_tattoo_1 } +# 50 = { add_trait = norse_tattoo_2 } +# } +# } +# if = { +# limit = { +# has_character_flag = flag_painted_by_west_african +# NOR = { +# trait = african_tattoo_1 +# trait = african_tattoo_2 +# trait = african_tattoo_3 +# trait = african_tattoo_4 +# trait = african_tattoo_5 +# trait = african_tattoo_6 +# trait = african_tattoo_7 +# trait = african_tattoo_8 +# } +# } +# random_list = { +# 50 = { add_trait = african_tattoo_1 } +# 50 = { add_trait = african_tattoo_2 } +# } +# } +# if = { +# limit = { +# OR = { +# has_character_flag = flag_painted_by_slavic +# has_character_flag = flag_painted_by_baltic +# } +# NOR = { +# trait = slavic_tattoo_1 +# trait = slavic_tattoo_2 +# trait = slavic_tattoo_3 +# trait = slavic_tattoo_4 +# trait = slavic_tattoo_5 +# trait = slavic_tattoo_6 +# } +# } +# random_list = { +# 50 = { add_trait = slavic_tattoo_1 } +# 50 = { add_trait = slavic_tattoo_2 } +# } +# } +# if = { +# limit = { +# has_character_flag = flag_painted_by_tengri +# } +# remove_character_modifier = tengri_warpaint_1 #Remove all previous paint that might still be lingering, for whatever reason. +# remove_character_modifier = tengri_warpaint_2 +# remove_character_modifier = aztec_warpaint_1 +# remove_character_modifier = aztec_warpaint_2 +# remove_character_modifier = finnish_warpaint_1 +# remove_character_modifier = finnish_warpaint_2 +# remove_character_modifier = zun_warpaint_1 +# remove_character_modifier = zun_warpaint_2 +# random_list = { +# 50 = { +# add_character_modifier = { +# modifier = tengri_warpaint_1 +# years = 5 +# hidden = yes +# } +# } +# 50 = { +# add_character_modifier = { +# modifier = tengri_warpaint_2 +# years = 5 +# hidden = yes +# } +# } +# } +# } +# if = { +# limit = { +# has_character_flag = flag_painted_by_finnish +# } +# remove_character_modifier = tengri_warpaint_1 #Remove all previous paint that might still be lingering, for whatever reason. +# remove_character_modifier = tengri_warpaint_2 +# remove_character_modifier = aztec_warpaint_1 +# remove_character_modifier = aztec_warpaint_2 +# remove_character_modifier = finnish_warpaint_1 +# remove_character_modifier = finnish_warpaint_2 +# remove_character_modifier = zun_warpaint_1 +# remove_character_modifier = zun_warpaint_2 +# random_list = { +# 50 = { +# add_character_modifier = { +# modifier = finnish_warpaint_1 +# years = 5 +# hidden = yes +# } +# } +# 50 = { +# add_character_modifier = { +# modifier = finnish_warpaint_2 +# years = 5 +# hidden = yes +# } +# } +# } +# } +# if = { +# limit = { +# has_character_flag = flag_painted_by_zun +# } +# remove_character_modifier = tengri_warpaint_1 #Remove all previous paint that might still be lingering, for whatever reason. +# remove_character_modifier = tengri_warpaint_2 +# remove_character_modifier = aztec_warpaint_1 +# remove_character_modifier = aztec_warpaint_2 +# remove_character_modifier = finnish_warpaint_1 +# remove_character_modifier = finnish_warpaint_2 +# remove_character_modifier = zun_warpaint_1 +# remove_character_modifier = zun_warpaint_2 +# random_list = { +# 50 = { +# add_character_modifier = { +# modifier = aztec_warpaint_1 +# years = 5 +# hidden = yes +# } +# } +# 50 = { +# add_character_modifier = { +# modifier = aztec_warpaint_2 +# years = 5 +# hidden = yes +# } +# } +# } +# } +# } +# +# option = { +# name = EVTOPTAHF25025 +# clr_character_flag = flag_painted_by_norse # Flag cleanup +# clr_character_flag = flag_painted_by_tengri +# clr_character_flag = flag_painted_by_baltic +# clr_character_flag = flag_painted_by_finnish +# clr_character_flag = flag_painted_by_slavic +# clr_character_flag = flag_painted_by_west_african +# clr_character_flag = flag_painted_by_zun +# clr_character_flag = flag_painted_by_bon +# clr_character_flag = flag_painted_by_hellenic +# } +#} + +################################################################## +#Hellenic Warrior Lodge has been recreated. +#Players notified. +narrative_event = { + id = HF.25026 + title = EVTTITLEHF25026 + desc = EVTDESCHF25026 + hide_from = yes + hide_new = yes + + picture = GFX_evt_hippodrome_byzantine + + only_playable = yes + hide_from = yes + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25026 + trigger = { + OR = { + society_member_of = warrior_lodge_hellenic + religion = hellenic_pagan + religion = hellenic_pagan_reformed + secret_religion = hellenic_pagan + secret_religion = hellenic_pagan_reformed + can_join_society = warrior_lodge_hellenic + } + } + if = { + limit = { + NOT = { society_member_of = warrior_lodge_hellenic } + can_join_society = warrior_lodge_hellenic + } + join_society = warrior_lodge_hellenic + } + } + option = { + name = EVTOPTBHF25026 + trigger = { + NOR = { + society_member_of = warrior_lodge_hellenic + religion = hellenic_pagan + religion = hellenic_pagan_reformed + secret_religion = hellenic_pagan + secret_religion = hellenic_pagan_reformed + } + } + } +} + +#################################### +#Call to Glory Power - First notification. +character_event = { + id = HF.25030 + desc = EVTDESCHF25030 + picture = GFX_evt_viking_battle_oldgods + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25030 + custom_tooltip = { + text = TT_EVTOPTAHF25030 + } + hidden_tooltip = { character_event = { id = HF.25031 days = 25 random = 5 } } #Hidden random list. + } +} + +#Main list +character_event = { + id = HF.25031 + hide_window = yes + + is_triggered_only = yes + + immediate = { + random_list = { + 30 = { + trigger = { + in_command = yes + is_at_sea = no + war = yes + has_character_modifier = call_to_glory + is_member_of_any_warrior_lodge_trigger = yes + society_rank = 4 + NOT = { check_variable = { which = "call_to_glory_variable" value = 20 } } #Stop after a while. + } + character_event = { id = HF.25032 } # Main reinforcement notification event. + } + 50 = { + trigger = { + OR = { + in_command = no + is_at_sea = yes + } + war = yes + has_character_modifier = call_to_glory + is_member_of_any_warrior_lodge_trigger = yes + society_rank = 4 + NOT = { check_variable = { which = "call_to_glory_variable" value = 20 } } + } + #If not in command, loop the event, just in case the player gets back into action. + character_event = { id = HF.25031 days = 35 random = 5 } + } + 100 = { + trigger = { + OR = { + is_member_of_any_warrior_lodge_trigger = no + war = no + AND = { + is_member_of_any_warrior_lodge_trigger = yes + NOT = { society_rank = 4 } + } + NOT = { has_character_modifier = call_to_glory } + } + } + #If basic requirements for the power are no longer met, clean everything and stop the chain. + remove_character_modifier = call_to_glory + disband_event_forces = call_to_glory_disciplined + disband_event_forces = call_to_glory_rowdy + set_variable = { which = "call_to_glory_variable" value = 0 } + } + 100 = { + trigger = { + in_command = yes + is_at_sea = no + war = yes + has_character_modifier = call_to_glory + is_member_of_any_warrior_lodge_trigger = yes + society_rank = 4 + check_variable = { which = "call_to_glory_variable" value = 20 } + } + character_event = { id = HF.25033 } #Once troops have spawned 20 times, they will stop spawning unless ruler succeeds in a persuasion check to lower the variable. + } + 5 = { + trigger = { + in_command = yes + is_at_sea = no + war = yes + has_character_modifier = call_to_glory + is_member_of_any_warrior_lodge_trigger = yes + society_rank = 4 + has_earmarked_regiments = call_to_glory_rowdy #should have at least some rowdy troops. + check_variable = { which = "call_to_glory_variable" value = 5 } #Shouldn't happen immediately after firing the power. + + NOT = { check_variable = { which = "call_to_glory_variable" value = 20 } } #Stop after a while. + } + character_event = { id = HF.25034 } # Rowdy troops are threatening to leave if they are not given more spoils. + } + 5 = { + trigger = { + in_command = yes + is_at_sea = no + war = yes + has_character_modifier = call_to_glory + is_member_of_any_warrior_lodge_trigger = yes + society_rank = 4 + check_variable = { which = "call_to_glory_variable" value = 5 } #Shouldn't happen immediately after firing the power. + } + character_event = { id = HF.25037 } # Chance for either levy reinforcement bonus in capital, prestige, cheap troops, or raider ships. + } + } + } +} + +#Main reinforcement event. +character_event = { + id = HF.25032 + desc = EVTDESCHF25032 + picture = GFX_evt_viking_battle_oldgods + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + notification = yes + + trigger = { + has_character_modifier = call_to_glory + in_command = yes + is_at_sea = no + war = yes + is_member_of_any_warrior_lodge_trigger = yes + society_rank = 4 + NOT = { check_variable = { which = "call_to_glory_variable" value = 20 } } + } + + fail_trigger_effect = { + if = { + limit = { + OR = { + is_member_of_any_warrior_lodge_trigger = no + war = no + AND = { + is_member_of_any_warrior_lodge_trigger = yes + NOT = { society_rank = 4 } + } + NOT = { has_character_modifier = call_to_glory } + } + } + #If basic requirements for the power are no longer met, clean everything and stop the chain. + remove_character_modifier = call_to_glory + disband_event_forces = call_to_glory_disciplined + disband_event_forces = call_to_glory_rowdy + set_variable = { which = "call_to_glory_variable" value = 0 } + break = yes + } + if = { + limit = { + OR = { + in_command = no + is_at_sea = yes + } + war = yes + has_character_modifier = call_to_glory + } + #If not in command, loop the event, just in case the player gets back into action. + character_event = { id = HF.25031 days = 25 random = 5 } + } + } + + option = { + name = EVTOPTAHF25032 + #Norse Lodge: light_infantry + heavy_infantry 150 + 100 + #Tengri Lodge: light_cavalry + horse_archers 100 + 150 + #Slavic Lodge: light_infantry + light_cavalry 200 + 50 + #Baltic Lodge: light_infantry + heavy_infantry + archers 100 + 100 + 50 + #Finnish Lodge: light_infantry + archers 100 + 150 + #West-African Lodge: light_infantry + pikemen 150 + 100 + #Zunist Lodge: pikemen + archers 150 + 100 + #Bon Lodge: light_infantry + light_cavalry + archers 100 + 50 + 100 + #Hellenic Lodge: pikemen + heavy infantry 200 + 50 + + #Numbers balanced based on realm size (30 or less, between 30 and 70, more than 70) + if = { #Low spawn + limit = { society_member_of = warrior_lodge_norse NOT = { realm_size = 30 } } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 50 50 } + heavy_infantry = { 10 10 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 50 50 } + heavy_infantry = { 25 25 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_tengri NOT = { realm_size = 30 } } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_cavalry = { 50 50 } + horse_archers = { 10 10 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_cavalry = { 60 60 } + horse_archers = { 25 25 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_slavic NOT = { realm_size = 30 } } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 50 50 } + light_cavalry = { 10 10 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 60 60 } + light_cavalry = { 25 25 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_baltic NOT = { realm_size = 30 } } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 25 25 } + heavy_infantry = { 25 25 } + archers = { 10 10 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 30 30 } + heavy_infantry = { 30 30 } + archers = { 10 10 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_finnish NOT = { realm_size = 30 } } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 25 25 } + archers = { 30 30 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 30 30 } + archers = { 50 50 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_west_african NOT = { realm_size = 30 } } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 30 30 } + pikemen = { 25 25 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 50 50 } + pikemen = { 30 30 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_zun NOT = { realm_size = 30 } } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + pikemen = { 30 30 } + archers = { 25 25 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + pikemen = { 50 50 } + archers = { 30 30 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_bon NOT = { realm_size = 30 } } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 25 25 } + light_cavalry = { 10 10 } + archers = { 25 25 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 30 30 } + light_cavalry = { 10 10 } + archers = { 30 30 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_hellenic NOT = { realm_size = 30 } } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + pikemen = { 50 50 } + heavy_infantry = { 10 10 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + pikemen = { 75 75 } + heavy_infantry = { 10 10 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { #Mid spawn + limit = { society_member_of = warrior_lodge_norse realm_size = 30 NOT = { realm_size = 70 } } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 100 100 } + heavy_infantry = { 25 25 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 100 100 } + heavy_infantry = { 50 50 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_tengri realm_size = 30 NOT = { realm_size = 70 } } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_cavalry = { 100 100 } + horse_archers = { 25 25 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_cavalry = { 125 125 } + horse_archers = { 50 50 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_slavic realm_size = 30 NOT = { realm_size = 70 } } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 100 100 } + light_cavalry = { 25 25 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 125 125 } + light_cavalry = { 50 50 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_baltic realm_size = 30 NOT = { realm_size = 70 } } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 50 50 } + heavy_infantry = { 50 50 } + archers = { 25 25 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 75 75 } + heavy_infantry = { 75 75 } + archers = { 25 25 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_finnish realm_size = 30 NOT = { realm_size = 70 } } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 50 50 } + archers = { 75 75 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 75 75 } + archers = { 100 100 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_west_african realm_size = 30 NOT = { realm_size = 70 } } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 75 75 } + pikemen = { 50 50 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 100 100 } + pikemen = { 75 75 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_zun realm_size = 30 NOT = { realm_size = 70 } } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + pikemen = { 75 75 } + archers = { 50 50 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + pikemen = { 100 100 } + archers = { 75 75 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_bon realm_size = 30 NOT = { realm_size = 70 } } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 50 50 } + light_cavalry = { 25 25 } + archers = { 50 50 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 75 75 } + light_cavalry = { 25 25 } + archers = { 75 75 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_hellenic realm_size = 30 NOT = { realm_size = 70 } } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + pikemen = { 100 100 } + heavy_infantry = { 25 25 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + pikemen = { 150 150 } + heavy_infantry = { 25 25 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { #Top spawn + limit = { society_member_of = warrior_lodge_norse realm_size = 70 } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 150 150 } + heavy_infantry = { 50 50 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 200 200 } + heavy_infantry = { 100 100 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_tengri realm_size = 70 } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_cavalry = { 200 200 } + horse_archers = { 50 50 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_cavalry = { 250 250 } + horse_archers = { 100 100 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_slavic realm_size = 70 } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 200 200 } + light_cavalry = { 50 50 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 250 250 } + light_cavalry = { 100 100 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_baltic realm_size = 70 } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 100 100 } + heavy_infantry = { 100 100 } + archers = { 50 50 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 150 150 } + heavy_infantry = { 150 150 } + archers = { 50 50 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_finnish realm_size = 70 } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 100 100 } + archers = { 150 150 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 150 150 } + archers = { 200 200 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_west_african realm_size = 70 } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 150 150 } + pikemen = { 100 100 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 200 200 } + pikemen = { 150 150 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_zun realm_size = 70 } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + pikemen = { 150 150 } + archers = { 100 100 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + pikemen = { 200 200 } + archers = { 150 150 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_bon realm_size = 70 } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 100 100 } + light_cavalry = { 50 50 } + archers = { 100 100 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 150 150 } + light_cavalry = { 50 50 } + archers = { 150 150 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + if = { + limit = { society_member_of = warrior_lodge_hellenic realm_size = 70 } + location = { + show_scope_change = no + ROOT = { + show_scope_change = no + random_list = { + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + pikemen = { 200 200 } + heavy_infantry = { 50 50 } + } + earmark = call_to_glory_disciplined + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + 50 = { + spawn_unit = { + province = PREV + owner = ROOT + troops = { + pikemen = { 300 300 } + heavy_infantry = { 50 50 } + } + earmark = call_to_glory_rowdy #Might leave early on occasion. + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + } + } + + hidden_tooltip = { + change_variable = { which = "call_to_glory_variable" value = 1 } + character_event = { id = HF.25031 days = 35 random = 5 } #Hidden random list. + } + } +} + +#Troop limit reached. What to do? +character_event = { + id = HF.25033 + desc = EVTDESCHF25033 + picture = GFX_evt_viking_battle_oldgods + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + trigger = { + has_character_modifier = call_to_glory + war = yes + is_member_of_any_warrior_lodge_trigger = yes + society_rank = 4 + NOT = { check_variable = { which = "call_to_glory_variable" value = 20 } } + } + + fail_trigger_effect = { + if = { + limit = { + OR = { + is_member_of_any_warrior_lodge_trigger = no + war = no + AND = { + is_member_of_any_warrior_lodge_trigger = yes + NOT = { society_rank = 4 } + } + NOT = { has_character_modifier = call_to_glory } + } + } + #If basic requirements for the power are no longer met, clean everything and stop the chain. + remove_character_modifier = call_to_glory + disband_event_forces = call_to_glory_disciplined + disband_event_forces = call_to_glory_rowdy + set_variable = { which = "call_to_glory_variable" value = 0 } + break = yes + } + } + + option = { #Inspire with combat rating. + name = EVTOPTAHF25033 + trigger = { combat_rating = 50 ai = no } + tooltip_info = combat_rating + custom_tooltip = { text = tooltip_call_to_glory_resume_reinforcements } + hidden_tooltip = { change_variable = { which = "call_to_glory_variable" value = -10 } } + hidden_tooltip = { + character_event = { id = HF.25031 days = 45 random = 5 } #Hidden random list. + } + + } + option = { #Bribe them. + name = EVTOPTBHF25033 + trigger = { ai = no } + if = { + limit = { ai = no } + scaled_wealth = { value = -1.0 min = -150 max = -250 } + } + custom_tooltip = { text = tooltip_call_to_glory_resume_reinforcements } + hidden_tooltip = { change_variable = { which = "call_to_glory_variable" value = -10 } } + hidden_tooltip = { + character_event = { id = HF.25031 days = 45 random = 5 } #Hidden random list. + } + + } + option = { #Do nothing - No more reinforcements. + name = EVTOPTCHF25033 + custom_tooltip = { text = tooltip_call_to_glory_end_reinforcements } + hidden_tooltip = { set_variable = { which = "call_to_glory_variable" value = 0 } } + } +} + + +#Rowdy Troops demand a greater share of the loot or they will leave. +character_event = { + id = HF.25034 + desc = EVTDESCHF25034 + picture = GFX_evt_viking_battle_oldgods + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + trigger = { + has_character_modifier = call_to_glory + war = yes + is_member_of_any_warrior_lodge_trigger = yes + society_rank = 4 + NOT = { check_variable = { which = "call_to_glory_variable" value = 20 } } + } + + fail_trigger_effect = { + if = { + limit = { + OR = { + is_member_of_any_warrior_lodge_trigger = no + war = no + AND = { + is_member_of_any_warrior_lodge_trigger = yes + NOT = { society_rank = 4 } + } + NOT = { has_character_modifier = call_to_glory } + } + } + #If basic requirements for the power are no longer met, clean everything and stop the chain. + remove_character_modifier = call_to_glory + disband_event_forces = call_to_glory_disciplined + disband_event_forces = call_to_glory_rowdy + set_variable = { which = "call_to_glory_variable" value = 0 } + break = yes + } + } + + option = { #Use diplomacy. + name = EVTOPTAHF25034 + trigger = { ai = no diplomacy = 20 } + tooltip_info = diplomacy + + } + option = { #Bribe them. + name = EVTOPTBHF25034 + trigger = { ai = no } + if = { + limit = { ai = no } + scaled_wealth = { value = -0.8 min = -50 max = -150 } + } + + } + option = { #Let all rowdy troops go. + name = EVTOPTCHF25034 + custom_tooltip = { text = tooltip_rowdy_troops_leave } + hidden_tooltip = { disband_event_forces = call_to_glory_rowdy } + hidden_tooltip = { change_variable = { which = "call_to_glory_variable" value = -3 } } + } + after = { + hidden_tooltip = { + character_event = { id = HF.25031 days = 25 random = 5 } #Hidden random list. + } + } +} + +#Surplus manpower. How to use? Chance for either levy reinforcement bonus in capital, prestige, cheap troops, or raider ships. +character_event = { + id = HF.25037 + desc = EVTDESCHF25037 + picture = GFX_evt_viking_battle_oldgods + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + trigger = { + has_character_modifier = call_to_glory + war = yes + is_member_of_any_warrior_lodge_trigger = yes + society_rank = 4 + NOT = { check_variable = { which = "call_to_glory_variable" value = 20 } } + } + + fail_trigger_effect = { + if = { + limit = { + OR = { + is_member_of_any_warrior_lodge_trigger = no + war = no + AND = { + is_member_of_any_warrior_lodge_trigger = yes + NOT = { society_rank = 4 } + } + NOT = { has_character_modifier = call_to_glory } + } + } + #If basic requirements for the power are no longer met, clean everything and stop the chain. + remove_character_modifier = call_to_glory + disband_event_forces = call_to_glory_disciplined + disband_event_forces = call_to_glory_rowdy + set_variable = { which = "call_to_glory_variable" value = 0 } + break = yes + } + } + + option = { #Capital levy reinforcement rate/manpower. + name = EVTOPTAHF25037 + if = { + limit = { is_nomadic = yes } + manpower = 200 + } + if = { + limit = { is_nomadic = no } + any_demesne_province = { + add_province_modifier = { name = capital_call_to_glory duration = 150 stacking = yes } + } + } + } + + option = { #Bonus Prestige. + name = EVTOPTBHF25037 + prestige = 150 + } + option = { #Bonus infantry. + name = EVTOPTCHF25037 + capital_scope = { + show_scope_change = no + ROOT = { + hidden_tooltip = { change_variable = { which = "call_to_glory_variable" value = 1 } } + show_scope_change = no + spawn_unit = { + province = PREV + owner = ROOT + troops = { + light_infantry = { 400 400 } + } + earmark = call_to_glory_rowdy + attrition = 0 + merge = yes + maintenance_multiplier = 0 + disband_on_peace = yes + } + } + } + } + option = { #Bonus ships. + name = EVTOPTDHF25037 + spawn_fleet = { + province = closest # closest sea zone + owner = ROOT + disband_on_peace = yes + troops = { + galleys = { 50 50 } + } + earmark = call_to_glory_rowdy + } + } + after = { + hidden_tooltip = { + character_event = { id = HF.25031 days = 45 random = 5 } #Hidden random list. + } + } +} + +#On war over/leave_society, remove call_to_glory modifier. +character_event = { + id = HF.25035 + hide_window = yes + + is_triggered_only = yes + + trigger = { + OR = { + ROOT = { + has_character_modifier = call_to_glory + } + ROOT = { + has_character_modifier = call_to_glory + } + } + } + immediate = { + ROOT = { character_event = { id = HF.25036 days = 1 } } #One day delay to check for any other wars. + FROM = { character_event = { id = HF.25036 days = 1 } } #One day delay to check for any other wars. + } +} +character_event = { + id = HF.25036 + hide_window = yes + + is_triggered_only = yes + + immediate = { + ROOT = { + if = { + limit = { + has_character_modifier = call_to_glory + OR = { + war = no + is_member_of_any_warrior_lodge_trigger = no + AND = { #Switched to another Warrior Lodge. + is_member_of_any_warrior_lodge_trigger = yes + NOT = { society_rank = 4 } + } + } + } + remove_character_modifier = call_to_glory + disband_event_forces = call_to_glory_disciplined + disband_event_forces = call_to_glory_rowdy + set_variable = { which = "call_to_glory_variable" value = 0 } + any_demesne_province = { remove_province_modifier = capital_call_to_glory } + } + } + } +} + +##################################################### +#Create Fetish Lodge Power for West-Africans. +#Decide whether you want a mask or an idol. +character_event = { + id = HF.25040 + desc = EVTDESCHF25040 + picture = GFX_evt_west_african_ruler + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25040 + trigger = { + NOT = { + any_artifact = { + has_artifact_flag = mask + } + } + } + hidden_tooltip = { character_event = { id = HF.25041 days = 35 random = 45 } } #Pick Mask Quality. + ai_chance = { + factor = 70 #More visible to other players. + } + } + option = { + name = EVTOPTBHF25040 + trigger = { + NOT = { + any_artifact = { + has_artifact_flag = totem + } + } + } + hidden_tooltip = { character_event = { id = HF.25042 days = 65 random = 45 } } #Pick Fetish Type. + ai_chance = { + factor = 30 + } + } +} + +#Mask: Pick quality. +character_event = { + id = HF.25041 + desc = EVTDESCHF25041 + picture = GFX_evt_west_african_ruler + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { #Good + name = EVTOPTAHF25041 + custom_tooltip = { text = TOOLTIP_EVTOPTAHF25041 } + if = { + limit = { + ai = no + } + scaled_wealth = { value = -1 min = -150 max = -500 } + } + hidden_tooltip = { character_event = { id = HF.25043 days = 35 random = 25 } } #Pick Top Tier Mask Type. + ai_chance = { + factor = 30 + } + } + option = { #Mid + name = EVTOPTBHF25041 + custom_tooltip = { text = TOOLTIP_EVTOPTBHF25041 } + if = { + limit = { + ai = no + } + scaled_wealth = { value = -0.5 min = -25 max = -100 } + } + hidden_tooltip = { character_event = { id = HF.25044 days = 35 random = 25 } } #Pick Mid-Tier Mask Type. + ai_chance = { + factor = 40 + } + } + option = { #Low quality + name = EVTOPTCHF25041 + custom_tooltip = { text = TOOLTIP_EVTOPTCHF25041 } + hidden_tooltip = { character_event = { id = HF.25045 days = 35 random = 25 } } #Pick Low Tier Mask Type. + ai_chance = { + factor = 30 + } + } +} + +#Idol: Pick type. +character_event = { + id = HF.25042 + desc = EVTDESCHF25042 + picture = GFX_evt_west_african_ruler + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { #Carved Totem + name = EVTOPTAHF25042 + custom_tooltip = { text = TOOLTIP_EVTOPTAHF25042 } + if = { + limit = { + ai = no + } + scaled_wealth = { value = -0.75 min = -50 max = -200 } + } + hidden_tooltip = { character_event = { id = HF.25046 } } + ai_chance = { + factor = 30 + } + } + option = { #Ivory Idol + name = EVTOPTBHF25042 + custom_tooltip = { text = TOOLTIP_EVTOPTBHF25042 } + if = { + limit = { + ai = no + } + scaled_wealth = { value = -0.75 min = -50 max = -200 } + } + hidden_tooltip = { character_event = { id = HF.25047 } } + ai_chance = { + factor = 30 + } + } + option = { #Rainstick + name = EVTOPTCHF25042 + custom_tooltip = { text = TOOLTIP_EVTOPTCHF25042 } + hidden_tooltip = { character_event = { id = HF.25048 } } + ai_chance = { + factor = 30 + } + } +} + +#Top Tier Mask: Pick spirit to inhabit it with. +character_event = { + id = HF.25043 + desc = EVTDESCHF25043 + picture = GFX_evt_west_african_ruler + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { #Inspiring + name = EVTOPTAHF25043 + custom_tooltip = { text = TOOLTIP_EVTOPTAHF25043 } + hidden_tooltip = { character_event = { id = HF.25049 } } + ai_chance = { + factor = 50 + modifier = { + factor = 2 + has_pleasant_trait_trigger = yes + } + } + } + option = { #Terrifying + name = EVTOPTBHF25043 + custom_tooltip = { text = TOOLTIP_EVTOPTBHF25043 } + hidden_tooltip = { character_event = { id = HF.25050 } } + ai_chance = { + factor = 50 + modifier = { + factor = 2 + has_unpleasant_trait_trigger = yes + } + } + } +} +#Mid Tier Mask: Pick spirit to inhabit it with. +character_event = { + id = HF.25044 + desc = EVTDESCHF25044 + picture = GFX_evt_west_african_ruler + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { #Unyielding + name = EVTOPTAHF25044 + custom_tooltip = { text = TOOLTIP_EVTOPTAHF25044 } + hidden_tooltip = { character_event = { id = HF.25051 } } + ai_chance = { + factor = 30 + modifier = { + factor = 1.75 + OR = { + trait = stubborn + trait = brave + } + } + } + } + option = { #Ruthless + name = EVTOPTBHF25044 + custom_tooltip = { text = TOOLTIP_EVTOPTBHF25044 } + hidden_tooltip = { character_event = { id = HF.25052 } } + ai_chance = { + factor = 30 + modifier = { + factor = 1.75 + OR = { + trait = impaler + trait = cruel + } + } + } + } + option = { #Trickster + name = EVTOPTCHF25044 + custom_tooltip = { text = TOOLTIP_EVTOPTCHF25044 } + hidden_tooltip = { character_event = { id = HF.25053 } } + ai_chance = { + factor = 30 + modifier = { + factor = 1.75 + OR = { + trait = deceitful + trait = shy + } + } + } + } +} + +#Low Tier Mask: Pick spirit to inhabit it with. +character_event = { + id = HF.25045 + desc = EVTDESCHF25045 + picture = GFX_evt_west_african_ruler + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { #Angry + name = EVTOPTAHF25045 + custom_tooltip = { text = TOOLTIP_EVTOPTAHF25045 } + hidden_tooltip = { character_event = { id = HF.25054 } } + ai_chance = { + factor = 30 + modifier = { + factor = 1.75 + OR = { + trait = wroth + trait = stubborn + } + } + } + } + option = { #Staunch + name = EVTOPTBHF25045 + custom_tooltip = { text = TOOLTIP_EVTOPTBHF25045 } + hidden_tooltip = { character_event = { id = HF.25055 } } + ai_chance = { + factor = 30 + modifier = { + factor = 1.75 + OR = { + trait = brave + trait = zealous + } + } + } + } + option = { #Fleeting + name = EVTOPTCHF25045 + custom_tooltip = { text = TOOLTIP_EVTOPTCHF25045 } + hidden_tooltip = { character_event = { id = HF.25056 } } + ai_chance = { + factor = 30 + modifier = { + factor = 1.75 + OR = { + trait = craven + trait = shy + } + } + } + } +} + +#Receive Carved Totem Artifact. +character_event = { + id = HF.25046 + desc = EVTDESCHF25046 + picture = GFX_evt_west_african_ruler + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + random_list = { + 33 = { sound_effect = create_fetish_01 } + 33 = { sound_effect = create_fetish_02 } + 33 = { sound_effect = create_fetish_03 } + } + } + + option = { + name = EVTOPTAHF25046 + custom_tooltip = { text = TOOLTIP_EVTOPTAHF25046 } + hidden_tooltip = { + clr_character_flag = flag_ordered_fetish_creation + add_artifact = scepter_african_1 + new_artifact = { + random_list = { + 20 = { trigger = { ROOT = { NOT = { dynasty = none } } } set_name = scepter_african_1_random_a } #Randomize names to avoid too much repetition. + 20 = { set_name = scepter_african_1_random_b } + 20 = { trigger = { ROOT = { NOT = { dynasty = none } } } set_name = scepter_african_1_random_c } + 20 = { set_name = scepter_african_1_random_d } + } + } + } + } +} +#Receive Ivory Idol Artifact. +character_event = { + id = HF.25047 + desc = EVTDESCHF25047 + picture = GFX_evt_west_african_ruler + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + random_list = { + 33 = { sound_effect = create_fetish_01 } + 33 = { sound_effect = create_fetish_02 } + 33 = { sound_effect = create_fetish_03 } + } + } + + option = { + name = EVTOPTAHF25047 + custom_tooltip = { text = TOOLTIP_EVTOPTAHF25047 } + hidden_tooltip = { + clr_character_flag = flag_ordered_fetish_creation + add_artifact = scepter_african_2 + new_artifact = { + random_list = { + 20 = { set_name = scepter_african_2_random_a } #Randomize names to avoid too much repetition. + 20 = { set_name = scepter_african_2_random_b } + 20 = { set_name = scepter_african_2_random_c } + 20 = { set_name = scepter_african_2_random_d } + } + } + } + } +} + +#Receive Rainstick Artifact. +character_event = { + id = HF.25048 + desc = EVTDESCHF25048 + picture = GFX_evt_west_african_ruler + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + random_list = { + 33 = { sound_effect = create_fetish_01 } + 33 = { sound_effect = create_fetish_02 } + 33 = { sound_effect = create_fetish_03 } + } + } + + option = { + name = EVTOPTAHF25048 + custom_tooltip = { text = TOOLTIP_EVTOPTAHF25048 } + hidden_tooltip = { + clr_character_flag = flag_ordered_fetish_creation + add_artifact = scepter_african_3 + new_artifact = { + random_list = { + 20 = { set_name = scepter_african_3_random_a } #Randomize names to avoid too much repetition. + 20 = { set_name = scepter_african_3_random_b } + 20 = { set_name = scepter_african_3_random_c } + 20 = { set_name = scepter_african_3_random_d } + } + } + } + } +} + +#Receive Top Tier Inspiring Mask +character_event = { + id = HF.25049 + desc = EVTDESCHF25049 + picture = GFX_evt_west_african_ruler + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + random_list = { + 33 = { sound_effect = create_fetish_01 } + 33 = { sound_effect = create_fetish_02 } + 33 = { sound_effect = create_fetish_03 } + } + } + + option = { + name = EVTOPTAHF25049 + custom_tooltip = { text = TOOLTIP_EVTOPTAHF25049 } + hidden_tooltip = { + clr_character_flag = flag_ordered_fetish_creation + add_artifact = crown_african_mask_1 + new_artifact = { + random_list = { + 20 = { set_name = crown_african_mask_1_random_a } #Randomize names to avoid too much repetition. + 20 = { set_name = crown_african_mask_1_random_b } + 20 = { set_name = crown_african_mask_1_random_c } + 20 = { set_name = crown_african_mask_1_random_d } + } + } + } + } +} + +#Receive Top Tier Terrifying Mask +character_event = { + id = HF.25050 + desc = EVTDESCHF25050 + picture = GFX_evt_west_african_ruler + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + random_list = { + 33 = { sound_effect = create_fetish_01 } + 33 = { sound_effect = create_fetish_02 } + 33 = { sound_effect = create_fetish_03 } + } + } + + option = { + name = EVTOPTAHF25050 + custom_tooltip = { text = TOOLTIP_EVTOPTAHF25050 } + hidden_tooltip = { + clr_character_flag = flag_ordered_fetish_creation + add_artifact = crown_african_mask_2 + new_artifact = { + random_list = { + 20 = { set_name = crown_african_mask_2_random_a } #Randomize names to avoid too much repetition. + 20 = { set_name = crown_african_mask_2_random_b } + 20 = { set_name = crown_african_mask_2_random_c } + 20 = { set_name = crown_african_mask_2_random_d } + } + } + } + } +} + +#Receive Mid Tier Unyielding Mask +character_event = { + id = HF.25051 + desc = EVTDESCHF25051 + picture = GFX_evt_west_african_ruler + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + random_list = { + 33 = { sound_effect = create_fetish_01 } + 33 = { sound_effect = create_fetish_02 } + 33 = { sound_effect = create_fetish_03 } + } + } + + option = { + name = EVTOPTAHF25051 + custom_tooltip = { text = TOOLTIP_EVTOPTAHF25051 } + hidden_tooltip = { + clr_character_flag = flag_ordered_fetish_creation + add_artifact = crown_african_mask_3 + new_artifact = { + random_list = { + 20 = { set_name = crown_african_mask_3_random_a } #Randomize names to avoid too much repetition. + 20 = { set_name = crown_african_mask_3_random_b } + 20 = { set_name = crown_african_mask_3_random_c } + 20 = { set_name = crown_african_mask_3_random_d } + } + } + } + } +} + +#Receive Mid Tier Ruthless Mask +character_event = { + id = HF.25052 + desc = EVTDESCHF25052 + picture = GFX_evt_west_african_ruler + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + random_list = { + 33 = { sound_effect = create_fetish_01 } + 33 = { sound_effect = create_fetish_02 } + 33 = { sound_effect = create_fetish_03 } + } + } + + option = { + name = EVTOPTAHF25052 + custom_tooltip = { text = TOOLTIP_EVTOPTAHF25052 } + hidden_tooltip = { + clr_character_flag = flag_ordered_fetish_creation + add_artifact = crown_african_mask_4 + new_artifact = { + random_list = { + 20 = { set_name = crown_african_mask_4_random_a } #Randomize names to avoid too much repetition. + 20 = { set_name = crown_african_mask_4_random_b } + 20 = { set_name = crown_african_mask_4_random_c } + 20 = { set_name = crown_african_mask_4_random_d } + } + } + } + } +} + +#Receive Mid Tier Trickster Mask +character_event = { + id = HF.25053 + desc = EVTDESCHF25053 + picture = GFX_evt_west_african_ruler + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + random_list = { + 33 = { sound_effect = create_fetish_01 } + 33 = { sound_effect = create_fetish_02 } + 33 = { sound_effect = create_fetish_03 } + } + } + + option = { + name = EVTOPTAHF25053 + custom_tooltip = { text = TOOLTIP_EVTOPTAHF25053 } + hidden_tooltip = { + clr_character_flag = flag_ordered_fetish_creation + add_artifact = crown_african_mask_5 + new_artifact = { + random_list = { + 20 = { set_name = crown_african_mask_5_random_a } #Randomize names to avoid too much repetition. + 20 = { trigger = { ROOT = { NOT = { dynasty = none } } } set_name = crown_african_mask_5_random_b } + 20 = { set_name = crown_african_mask_5_random_c } + 20 = { set_name = crown_african_mask_5_random_d } + } + } + } + } +} + +#Receive Low Tier Angry Mask +character_event = { + id = HF.25054 + desc = EVTDESCHF25054 + picture = GFX_evt_west_african_ruler + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + random_list = { + 33 = { sound_effect = create_fetish_01 } + 33 = { sound_effect = create_fetish_02 } + 33 = { sound_effect = create_fetish_03 } + } + } + + option = { + name = EVTOPTAHF25054 + custom_tooltip = { text = TOOLTIP_EVTOPTAHF25054 } + hidden_tooltip = { + clr_character_flag = flag_ordered_fetish_creation + add_artifact = crown_african_mask_6 + new_artifact = { + random_list = { + 20 = { set_name = crown_african_mask_6_random_a } #Randomize names to avoid too much repetition. + 20 = { set_name = crown_african_mask_6_random_b } + 20 = { trigger = { ROOT = { NOT = { dynasty = none } } } set_name = crown_african_mask_6_random_c } + 20 = { set_name = crown_african_mask_6_random_d } + } + } + } + } +} + +#Receive Low Tier Staunch Mask +character_event = { + id = HF.25055 + desc = EVTDESCHF25055 + picture = GFX_evt_west_african_ruler + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + random_list = { + 33 = { sound_effect = create_fetish_01 } + 33 = { sound_effect = create_fetish_02 } + 33 = { sound_effect = create_fetish_03 } + } + } + + option = { + name = EVTOPTAHF25055 + custom_tooltip = { text = TOOLTIP_EVTOPTAHF25055 } + hidden_tooltip = { + clr_character_flag = flag_ordered_fetish_creation + add_artifact = crown_african_mask_7 + new_artifact = { + random_list = { + 20 = { set_name = crown_african_mask_7_random_a } #Randomize names to avoid too much repetition. + 20 = { set_name = crown_african_mask_7_random_b } + 20 = { set_name = crown_african_mask_7_random_c } + 20 = { set_name = crown_african_mask_7_random_d } + } + } + } + } +} + +#Receive Low Tier Fleeting Mask +character_event = { + id = HF.25056 + desc = EVTDESCHF25056 + picture = GFX_evt_west_african_ruler + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + random_list = { + 33 = { sound_effect = create_fetish_01 } + 33 = { sound_effect = create_fetish_02 } + 33 = { sound_effect = create_fetish_03 } + } + } + + option = { + name = EVTOPTAHF25056 + custom_tooltip = { text = TOOLTIP_EVTOPTAHF25056 } + hidden_tooltip = { + clr_character_flag = flag_ordered_fetish_creation + add_artifact = crown_african_mask_8 + new_artifact = { + random_list = { + 20 = { set_name = crown_african_mask_8_random_a } #Randomize names to avoid too much repetition. + 20 = { set_name = crown_african_mask_8_random_b } + 20 = { set_name = crown_african_mask_8_random_c } + 20 = { set_name = crown_african_mask_8_random_d } + } + } + } + } +} +#on_startup event giving masks to Grand Masters of the Warrior Lodge. +character_event = { + id = HF.25057 + hide_window = yes + + is_triggered_only = yes + + trigger = { + is_save_game = no + society_member_of = warrior_lodge_west_african + society_rank = 4 + OR = { + religion = west_african_pagan + religion = west_african_pagan_reformed + } + } + + immediate = { + generate_mask_effect = yes + } +} + +#Notifications for Baltic Holds Power. +#tb_defensive_fortifications_1 +character_event = { + id = HF.25060 + desc = EVTDESCHF25060 + picture = GFX_evt_pagan + border = GFX_event_normal_frame_religion + + notification = yes + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25060 + } +} +#tb_defensive_fortifications_2 +character_event = { + id = HF.25061 + desc = EVTDESCHF25061 + picture = GFX_evt_pagan + border = GFX_event_normal_frame_religion + + notification = yes + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25060 + } +} +#tb_defensive_fortifications_3 +character_event = { + id = HF.25062 + desc = EVTDESCHF25062 + picture = GFX_evt_pagan + border = GFX_event_normal_frame_religion + + notification = yes + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25060 + } +} +#tb_defensive_fortifications_4 +character_event = { + id = HF.25063 + desc = EVTDESCHF25063 + picture = GFX_evt_pagan + border = GFX_event_normal_frame_religion + + notification = yes + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25060 + } +} +#tb_hillfort_1 +character_event = { + id = HF.25064 + desc = EVTDESCHF25064 + picture = GFX_evt_pagan + border = GFX_event_normal_frame_religion + + notification = yes + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25060 + } +} +#tb_hillfort_2 +character_event = { + id = HF.25065 + desc = EVTDESCHF25065 + picture = GFX_evt_pagan + border = GFX_event_normal_frame_religion + + notification = yes + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25060 + } +} +#tb_hillfort_3 +character_event = { + id = HF.25066 + desc = EVTDESCHF25066 + picture = GFX_evt_pagan + border = GFX_event_normal_frame_religion + + notification = yes + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25060 + } +} +#tb_hillfort_4 +character_event = { + id = HF.25067 + desc = EVTDESCHF25067 + picture = GFX_evt_pagan + border = GFX_event_normal_frame_religion + + notification = yes + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25060 + } +} +#castle_walls +character_event = { + id = HF.25068 + desc = EVTDESCHF25068 + picture = GFX_evt_pagan + border = GFX_event_normal_frame_religion + + notification = yes + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25060 + } +} +#castle_fortifications +character_event = { + id = HF.25069 + desc = EVTDESCHF25069 + picture = GFX_evt_pagan + border = GFX_event_normal_frame_religion + + notification = yes + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25060 + } +} +#on_startup event giving tattoos to Grand Masters/Veterans of the Warrior Lodges who have them. +character_event = { + id = HF.25070 + hide_window = yes + + is_triggered_only = yes + + trigger = { + is_save_game = no + society_rank = 3 + ai = yes + is_ruler = no + OR = { + society_member_of = warrior_lodge_norse + society_member_of = warrior_lodge_baltic + society_member_of = warrior_lodge_slavic + society_member_of = warrior_lodge_west_african + } + NOR = { + trait = african_tattoo_1 + trait = african_tattoo_2 + trait = african_tattoo_3 + trait = african_tattoo_4 + trait = african_tattoo_5 + trait = african_tattoo_6 + trait = african_tattoo_7 + trait = african_tattoo_8 + trait = african_tattoo_9 + trait = african_tattoo_10 + trait = african_tattoo_11 + trait = african_tattoo_12 + trait = norse_tattoo_1 + trait = norse_tattoo_2 + trait = norse_tattoo_3 + trait = norse_tattoo_4 + trait = norse_tattoo_5 + trait = norse_tattoo_6 + trait = slavic_tattoo_1 + trait = slavic_tattoo_2 + trait = slavic_tattoo_3 + trait = slavic_tattoo_4 + trait = slavic_tattoo_5 + trait = slavic_tattoo_6 + } + } + + immediate = { + if = { + limit = { society_member_of = warrior_lodge_west_african } + + random_list = { + 25 = { + trigger = { NOT = { society_rank = 4 } } + add_trait = african_tattoo_1 + } + 25 = { + trigger = { NOT = { society_rank = 4 } } + add_trait = african_tattoo_2 + } + 25 = { + trigger = { NOT = { society_rank = 4 } } + add_trait = african_tattoo_3 + } + 25 = { + trigger = { NOT = { society_rank = 4 } } + add_trait = african_tattoo_4 + } + 25 = { + trigger = { society_rank = 4 } + add_trait = african_tattoo_5 + } + 25 = { + trigger = { society_rank = 4 } + add_trait = african_tattoo_6 + } + 25 = { + trigger = { society_rank = 4 } + add_trait = african_tattoo_7 + } + 25 = { + trigger = { society_rank = 4 } + add_trait = african_tattoo_8 + } + } + } + if = { + limit = { society_member_of = warrior_lodge_norse } + + random_list = { + 25 = { + trigger = { NOT = { society_rank = 4 } } + add_trait = norse_tattoo_1 + } + 25 = { + trigger = { NOT = { society_rank = 4 } } + add_trait = norse_tattoo_2 + } + 25 = { + trigger = { NOT = { society_rank = 4 } } + add_trait = norse_tattoo_3 + } + 25 = { + trigger = { society_rank = 4 } + add_trait = norse_tattoo_4 + } + 25 = { + trigger = { society_rank = 4 } + add_trait = norse_tattoo_5 + } + 25 = { + trigger = { society_rank = 4 } + add_trait = norse_tattoo_6 + } + } + } + if = { + limit = { + OR = { + society_member_of = warrior_lodge_slavic + society_member_of = warrior_lodge_baltic + } + } + random_list = { + 25 = { + trigger = { NOT = { society_rank = 4 } } + add_trait = slavic_tattoo_1 + } + 25 = { + trigger = { NOT = { society_rank = 4 } } + add_trait = slavic_tattoo_2 + } + 25 = { + trigger = { NOT = { society_rank = 4 } } + add_trait = slavic_tattoo_3 + } + 25 = { + trigger = { society_rank = 4 } + add_trait = slavic_tattoo_4 + } + 25 = { + trigger = { society_rank = 4 } + add_trait = slavic_tattoo_5 + } + 25 = { + trigger = { society_rank = 4 } + add_trait = slavic_tattoo_6 + } + } + } + } +} + +#Safety removal on_death and leave_society for Warriors of Ukko event troops. +character_event = { + id = HF.25071 + hide_window = yes + + is_triggered_only = yes + + trigger = { + has_earmarked_regiments = ukko_warriors + + } + immediate = { + disband_event_forces = ukko_warriors + } +} \ No newline at end of file diff --git a/MOD/Witcher/events/HF_warrior_lodges_hunting_events.txt b/MOD/Witcher/events/HF_warrior_lodges_hunting_events.txt new file mode 100644 index 000000000..db3a684da --- /dev/null +++ b/MOD/Witcher/events/HF_warrior_lodges_hunting_events.txt @@ -0,0 +1,6155 @@ +# Written by Flavio + +############################################# + + # Ritual Hunting # + +############################################# + +#Norse: Hunting Great Wolf (male). +#Baltic: Hunting She-wolf (Medeina). +#Hellenics: Hunting Werewolf. + +#Slavic: Hunting Eagle (Perun). +#Tengri: Hunting Eagle. +#Bon: Hunting Eagle. + +#Finnish: Hunting Bear (Otso) + +#WAfrican: Hunting Lion (River Warriors) +#Zunists: Hunting Lion (Fire Warriors) + +############################################# + +#First event. + +#Preparation event: pick co-hunter. (strong, loyal, smart) +#Preparation event II: make sacrifice to endear gods. (warpaint/tattoo application) - Start setting variable to determine how well the hunt is going. + +#Begin hunt. + +#Flavor events: (increasing/decreasing hunt variable) +## Character is about to fall/drown/random. (might result in Friendship/Rivalry/Love) +## Characters looking for tracks. (intrigue) +## Characters need to examine carcass killed by target. (martial) +## Characters reflect upon their target. (learning) +## Characters find hermit, ask info on target. (diplomacy) +## Characters need to interpret old map and pathways. (stewardship) + +## Lunatic/Possessed character goes on a Wild Hunt and kills partner. + +#Prey is found and fought: +#If variable is too low, hunt will simply fail before this (prey will not be found). +#If variable is mid value, chance of wounding, loss of co-hunter. +#If the variable is high value, easy win. + +#Post-hunting: pick trophy/take eagle egg to train (Tengri only). + +#Warrior Lodge Hero decides whether to start. +character_event = { + id = HF.25600 + title = EVTTITLEHF25600 + desc = { + trigger = { + has_character_flag = flag_hunting_wolf_norse + } + text = EVTDESCAHF25600 + } + desc = { + trigger = { + has_character_flag = flag_hunting_wolf_baltic + } + text = EVTDESCBHF25600 + } + desc = { + trigger = { + has_character_flag = flag_hunting_wolf_hellenic + } + text = EVTDESCCHF25600 + } + desc = { + trigger = { + has_character_flag = flag_hunting_eagle_slavic + } + text = EVTDESCDHF25600 + } + desc = { + trigger = { + has_character_flag = flag_hunting_eagle_tengri + } + text = EVTDESCEHF25600 + } + desc = { + trigger = { + has_character_flag = flag_hunting_eagle_bon + } + text = EVTDESCFHF25600 + } + desc = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + text = EVTDESCGHF25600 + } + desc = { + trigger = { + has_character_flag = flag_hunting_lion_west_african + } + text = EVTDESCHHF25600 + } + desc = { + trigger = { + has_character_flag = flag_hunting_lion_zun + } + text = EVTDESCIHF25600 + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + hide_new = yes + portrait = event_target:scoped_WL_co_hunter #Empty. + + is_triggered_only = yes + + trigger = { + has_dlc = "Holy Fury" + is_adult = yes + in_command = no + society_rank = 3 + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = incapable } + NOT = { has_character_flag = do_not_disturb } + NOT = { has_character_flag = flag_WL_had_ritual_hunt_event } + is_member_of_any_warrior_lodge_trigger = yes + any_society_member = { #Make sure there are enough friends to pick from. + same_society_as = ROOT + is_adult = yes + in_command = no + prisoner = no + NOT = { has_job_action = yes } + #is_ill = no + ai = yes #Co-hunter used as buff, not receiving actual events. + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = incapable } + NOT = { has_character_flag = do_not_disturb } + NOT = { character = ROOT } + #NOT = { society_rank = 3 } + count = 3 #At least a few other members should be around. + } + } + + + immediate = { + hidden_tooltip = { + set_character_flag = flag_WL_had_ritual_hunt_event #Fires once per character. + WL_ritual_hunt_cleanup_effect = yes #Safety cleanup. + if = { + limit = { society_member_of = warrior_lodge_norse } + set_character_flag = flag_hunting_wolf_norse + } + if = { + limit = { society_member_of = warrior_lodge_baltic } + set_character_flag = flag_hunting_wolf_baltic + } + if = { + limit = { society_member_of = warrior_lodge_hellenic } + set_character_flag = flag_hunting_wolf_hellenic + } + if = { + limit = { society_member_of = warrior_lodge_slavic } + set_character_flag = flag_hunting_eagle_slavic + } + if = { + limit = { society_member_of = warrior_lodge_tengri } + set_character_flag = flag_hunting_eagle_tengri + } + if = { + limit = { society_member_of = warrior_lodge_bon } + set_character_flag = flag_hunting_eagle_bon + } + if = { + limit = { society_member_of = warrior_lodge_finnish } + set_character_flag = flag_hunting_bear_finnish + } + if = { + limit = { society_member_of = warrior_lodge_west_african } + set_character_flag = flag_hunting_lion_west_african + } + if = { + limit = { society_member_of = warrior_lodge_zun } + set_character_flag = flag_hunting_lion_zun + } + + random_list = { + 33 = { sound_effect = pagan_cheering_01 } + 33 = { sound_effect = pagan_cheering_02 } + 33 = { sound_effect = pagan_cheering_03 } + } + set_character_flag = do_not_disturb + random_society_member = { #Then, try to scope for a strong character. + limit = { + same_society_as = ROOT + is_adult = yes + NOT = { has_job_action = yes } + in_command = no + prisoner = no + ai = yes #Co-hunter used as buff, not receiving actual events. + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = incapable } + NOT = { has_character_flag = do_not_disturb } + NOT = { character = ROOT } + NOT = { character = event_target:loyal_hunting_partner } + #NOT = { society_rank = 3 } + #is_ill = no + } + preferred_limit = { + trait = strong + } + preferred_limit = { + combat_rating = 60 + } + preferred_limit = { + combat_rating = 50 + } + preferred_limit = { + combat_rating = 40 + } + preferred_limit = { + combat_rating = 30 + } + preferred_limit = { + combat_rating = 20 + } + preferred_limit = { + combat_rating = 10 + } + preferred_limit = { + combat_rating = 0 + } + preferred_limit = { + is_weak_trigger = no + } + preferred_limit = { + trait = brave + } + save_event_target_as = strong_hunting_partner + set_character_flag = do_not_disturb + } + random_society_member = { #First scope for somebody that likes you. + limit = { + same_society_as = ROOT + is_adult = yes + NOT = { has_job_action = yes } + in_command = no + prisoner = no + #is_ill = no + ai = yes #Co-hunter used as buff, not receiving actual events. + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = incapable } + NOT = { has_character_flag = do_not_disturb } + NOT = { character = ROOT } + #NOT = { society_rank = 3 } + NOT = { is_rival = ROOT } + opinion = { who = ROOT value = 20 } + } + preferred_limit = { + is_lover = ROOT + } + preferred_limit = { + is_friend = ROOT + } + preferred_limit = { + opinion = { who = ROOT value = 90 } + } + preferred_limit = { + opinion = { who = ROOT value = 80 } + } + preferred_limit = { + opinion = { who = ROOT value = 70 } + } + preferred_limit = { + opinion = { who = ROOT value = 60 } + } + preferred_limit = { + opinion = { who = ROOT value = 50 } + } + preferred_limit = { + opinion = { who = ROOT value = 40 } + } + preferred_limit = { + opinion = { who = ROOT value = 30 } + } + save_event_target_as = loyal_hunting_partner + set_character_flag = do_not_disturb + } + random_society_member = { #Finally, try to scope for a smart character. + limit = { + same_society_as = ROOT + is_adult = yes + NOT = { has_job_action = yes } + in_command = no + prisoner = no + #is_ill = no + ai = yes #Co-hunter used as buff, not receiving actual events. + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = incapable } + NOT = { has_character_flag = do_not_disturb } + NOT = { character = ROOT } + NOT = { character = event_target:loyal_hunting_partner } + NOT = { character = event_target:strong_hunting_partner } + #NOT = { society_rank = 3 } + } + preferred_limit = { + OR = { + is_smart_trigger = yes + trait = midas_touched + trait = elusive_shadow + trait = grey_eminence + trait = mastermind_theologian + } + OR = { + diplomacy = 12 + stewardship = 12 + intrigue = 12 + learning = 12 + } + } + preferred_limit = { + is_dumb_trigger = no + OR = { + diplomacy = 12 + stewardship = 12 + intrigue = 12 + learning = 12 + } + } + preferred_limit = { + OR = { + diplomacy = 12 + stewardship = 12 + intrigue = 12 + learning = 12 + } + } + preferred_limit = { + OR = { + is_smart_trigger = yes + trait = midas_touched + trait = elusive_shadow + trait = grey_eminence + trait = mastermind_theologian + } + OR = { + diplomacy = 10 + stewardship = 10 + intrigue = 10 + learning = 10 + } + } + preferred_limit = { + is_dumb_trigger = no + OR = { + diplomacy = 10 + stewardship = 10 + intrigue = 10 + learning = 10 + } + } + preferred_limit = { + OR = { + diplomacy = 10 + stewardship = 10 + intrigue = 10 + learning = 10 + } + } + preferred_limit = { + OR = { + is_smart_trigger = yes + trait = midas_touched + trait = elusive_shadow + trait = grey_eminence + trait = mastermind_theologian + } + OR = { + diplomacy = 8 + stewardship = 8 + intrigue = 8 + learning = 8 + } + } + preferred_limit = { + is_dumb_trigger = no + OR = { + diplomacy = 8 + stewardship = 8 + intrigue = 8 + learning = 8 + } + } + preferred_limit = { + OR = { + diplomacy = 8 + stewardship = 8 + intrigue = 8 + learning = 8 + } + } + preferred_limit = { + OR = { + is_smart_trigger = yes + trait = midas_touched + trait = elusive_shadow + trait = grey_eminence + trait = mastermind_theologian + } + OR = { + diplomacy = 6 + stewardship = 6 + intrigue = 6 + learning = 6 + } + } + preferred_limit = { + is_dumb_trigger = no + OR = { + diplomacy = 6 + stewardship = 6 + intrigue = 6 + learning = 6 + } + } + preferred_limit = { + OR = { + diplomacy = 6 + stewardship = 6 + intrigue = 6 + learning = 6 + } + } + save_event_target_as = smart_hunting_partner + set_character_flag = do_not_disturb + } + } + } + option = { #Pick strong co-hunter. + name = EVTOPTAHF25600 + custom_tooltip = { text = TT_EVTOPTAHF25600 } + trigger = { event_target:strong_hunting_partner = { is_alive = yes } } + show_portrait = event_target:strong_hunting_partner + hidden_tooltip = { + event_target:strong_hunting_partner = { + save_event_target_as = scoped_WL_co_hunter + } + if = { + limit = { event_target:loyal_hunting_partner = { is_alive = yes } } + event_target:loyal_hunting_partner = { + clr_character_flag = do_not_disturb + } + } + if = { + limit = { event_target:smart_hunting_partner = { is_alive = yes } } + event_target:smart_hunting_partner = { + clr_character_flag = do_not_disturb + } + } + } + hidden_tooltip = { character_event = { id = HF.25601 days = 12 } } #Make sacrifice. + ai_chance = { factor = 10 } + } + option = { #Pick smart co-hunter. + name = EVTOPTBHF25600 + custom_tooltip = { text = TT_EVTOPTBHF25600 } + trigger = { event_target:smart_hunting_partner = { is_alive = yes } } + show_portrait = event_target:smart_hunting_partner + hidden_tooltip = { + event_target:smart_hunting_partner = { + save_event_target_as = scoped_WL_co_hunter + } + if = { + limit = { event_target:loyal_hunting_partner = { is_alive = yes } } + event_target:loyal_hunting_partner = { + clr_character_flag = do_not_disturb + } + } + if = { + limit = { event_target:strong_hunting_partner = { is_alive = yes } } + event_target:strong_hunting_partner = { + clr_character_flag = do_not_disturb + } + } + } + hidden_tooltip = { character_event = { id = HF.25601 days = 12 } } #Make sacrifice. + ai_chance = { factor = 10 } + } + option = { #Pick loyal co-hunter. + name = EVTOPTCHF25600 + custom_tooltip = { text = TT_EVTOPTCHF25600 } + trigger = { event_target:loyal_hunting_partner = { is_alive = yes } } + show_portrait = event_target:loyal_hunting_partner + hidden_tooltip = { + event_target:loyal_hunting_partner = { + save_event_target_as = scoped_WL_co_hunter + } + if = { + limit = { event_target:smart_hunting_partner = { is_alive = yes } } + event_target:smart_hunting_partner = { + clr_character_flag = do_not_disturb + } + } + if = { + limit = { event_target:strong_hunting_partner = { is_alive = yes } } + event_target:strong_hunting_partner = { + clr_character_flag = do_not_disturb + } + } + } + hidden_tooltip = { character_event = { id = HF.25601 days = 12 } } #Make sacrifice. + ai_chance = { factor = 10 } + } + option = { #Safety option, in case no partner exists. + name = EVTOPTZHF25600 + trigger = { + NOR = { + event_target:strong_hunting_partner = { is_alive = yes } + event_target:smart_hunting_partner = { is_alive = yes } + event_target:loyal_hunting_partner = { is_alive = yes } + } + } + hidden_tooltip = { character_event = { id = HF.25601 days = 12 } } #Make sacrifice. + hidden_tooltip = { event_target:strong_hunting_partner = { clr_character_flag = do_not_disturb } } + hidden_tooltip = { event_target:smart_hunting_partner = { clr_character_flag = do_not_disturb } } + hidden_tooltip = { event_target:loyal_hunting_partner = { clr_character_flag = do_not_disturb } } + ai_chance = { factor = 0 } + } + option = { #Do not. - End of line. + name = EVTOPTDHF25600 + detract_society_currency_major_effect = yes + WL_ritual_hunt_cleanup_effect = yes + tiered_piety_negative_effect = yes + hidden_tooltip = { event_target:strong_hunting_partner = { clr_character_flag = do_not_disturb } } + hidden_tooltip = { event_target:smart_hunting_partner = { clr_character_flag = do_not_disturb } } + hidden_tooltip = { event_target:loyal_hunting_partner = { clr_character_flag = do_not_disturb } } + ai_chance = { factor = 0 } + } +} + +#Before leaving: What do you sacrifice? +character_event = { + id = HF.25601 + title = EVTTITLEHF25600 + desc = EVTDESCHF25601 + picture = GFX_evt_religious_exultation + border = GFX_event_normal_frame_diplomacy + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + option = { #Make great sacrifice. Gain Tattoo/Warpaint, piety, hunt_variable. + name = EVTOPTAHF25601 + + if = { + limit = { ai = no } #Cheaty AI... + scaled_wealth = { value = -0.5 min = -50 max = -150 } + } + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 10 } + #Tattoos and Warpaint. + add_blood_splatter_effect = yes + if = { + limit = { + society_member_of = warrior_lodge_norse + NOR = { + trait = african_tattoo_1 + trait = african_tattoo_2 + trait = african_tattoo_3 + trait = african_tattoo_4 + trait = african_tattoo_5 + trait = african_tattoo_6 + trait = african_tattoo_7 + trait = african_tattoo_8 + trait = slavic_tattoo_1 + trait = slavic_tattoo_2 + trait = slavic_tattoo_3 + trait = slavic_tattoo_4 + trait = slavic_tattoo_5 + trait = slavic_tattoo_6 + trait = norse_tattoo_1 + trait = norse_tattoo_2 + trait = norse_tattoo_3 + trait = norse_tattoo_4 + trait = norse_tattoo_5 + trait = norse_tattoo_6 + } + } + random_list = { + 40 = { add_trait = norse_tattoo_1 } + 40 = { add_trait = norse_tattoo_2 } + 20 = { add_trait = norse_tattoo_3 } + 20 = { add_trait = norse_tattoo_4 } + 10 = { add_trait = norse_tattoo_5 } + 10 = { add_trait = norse_tattoo_6 } + } + } + if = { + limit = { + society_member_of = warrior_lodge_west_african + NOR = { + trait = african_tattoo_1 + trait = african_tattoo_2 + trait = african_tattoo_3 + trait = african_tattoo_4 + trait = african_tattoo_5 + trait = african_tattoo_6 + trait = african_tattoo_7 + trait = african_tattoo_8 + trait = slavic_tattoo_1 + trait = slavic_tattoo_2 + trait = slavic_tattoo_3 + trait = slavic_tattoo_4 + trait = slavic_tattoo_5 + trait = slavic_tattoo_6 + trait = norse_tattoo_1 + trait = norse_tattoo_2 + trait = norse_tattoo_3 + trait = norse_tattoo_4 + trait = norse_tattoo_5 + trait = norse_tattoo_6 + } + } + random_list = { + 50 = { add_trait = african_tattoo_1 } + 50 = { add_trait = african_tattoo_2 } + 40 = { add_trait = african_tattoo_3 } + 40 = { add_trait = african_tattoo_4 } + 30 = { add_trait = african_tattoo_5 } + 30 = { add_trait = african_tattoo_6 } + 20 = { add_trait = african_tattoo_7 } + 20 = { add_trait = african_tattoo_8 } + } + } + if = { + limit = { + OR = { + society_member_of = warrior_lodge_slavic + society_member_of = warrior_lodge_baltic + } + NOR = { + trait = african_tattoo_1 + trait = african_tattoo_2 + trait = african_tattoo_3 + trait = african_tattoo_4 + trait = african_tattoo_5 + trait = african_tattoo_6 + trait = african_tattoo_7 + trait = african_tattoo_8 + trait = slavic_tattoo_1 + trait = slavic_tattoo_2 + trait = slavic_tattoo_3 + trait = slavic_tattoo_4 + trait = slavic_tattoo_5 + trait = slavic_tattoo_6 + trait = norse_tattoo_1 + trait = norse_tattoo_2 + trait = norse_tattoo_3 + trait = norse_tattoo_4 + trait = norse_tattoo_5 + trait = norse_tattoo_6 + } + } + random_list = { + 30 = { add_trait = slavic_tattoo_1 } + 30 = { add_trait = slavic_tattoo_2 } + 20 = { add_trait = slavic_tattoo_3 } + 20 = { add_trait = slavic_tattoo_4 } + 10 = { add_trait = slavic_tattoo_5 } + 10 = { add_trait = slavic_tattoo_6 } + } + } + if = { + limit = { + society_member_of = warrior_lodge_tengri + } + remove_character_modifier = tengri_warpaint_1 #Remove all previous paint that might still be lingering, for whatever reason. + remove_character_modifier = tengri_warpaint_2 + remove_character_modifier = aztec_warpaint_1 + remove_character_modifier = aztec_warpaint_2 + remove_character_modifier = finnish_warpaint_1 + remove_character_modifier = finnish_warpaint_2 + remove_character_modifier = zun_warpaint_1 + remove_character_modifier = zun_warpaint_2 + random_list = { + 50 = { + add_character_modifier = { + modifier = tengri_warpaint_1 + years = 5 + hidden = yes + } + } + 50 = { + add_character_modifier = { + modifier = tengri_warpaint_2 + years = 5 + hidden = yes + } + } + } + } + if = { + limit = { + society_member_of = warrior_lodge_finnish + } + remove_character_modifier = tengri_warpaint_1 #Remove all previous paint that might still be lingering, for whatever reason. + remove_character_modifier = tengri_warpaint_2 + remove_character_modifier = aztec_warpaint_1 + remove_character_modifier = aztec_warpaint_2 + remove_character_modifier = finnish_warpaint_1 + remove_character_modifier = finnish_warpaint_2 + remove_character_modifier = zun_warpaint_1 + remove_character_modifier = zun_warpaint_2 + random_list = { + 50 = { + add_character_modifier = { + modifier = finnish_warpaint_1 + years = 5 + hidden = yes + } + } + 50 = { + add_character_modifier = { + modifier = finnish_warpaint_2 + years = 5 + hidden = yes + } + } + } + } + if = { + limit = { + society_member_of = warrior_lodge_zun + } + remove_character_modifier = tengri_warpaint_1 #Remove all previous paint that might still be lingering, for whatever reason. + remove_character_modifier = tengri_warpaint_2 + remove_character_modifier = aztec_warpaint_1 + remove_character_modifier = aztec_warpaint_2 + remove_character_modifier = finnish_warpaint_1 + remove_character_modifier = finnish_warpaint_2 + remove_character_modifier = zun_warpaint_1 + remove_character_modifier = zun_warpaint_2 + random_list = { + 50 = { + add_character_modifier = { + modifier = zun_warpaint_1 + years = 5 + hidden = yes + } + } + 50 = { + add_character_modifier = { + modifier = zun_warpaint_2 + years = 5 + hidden = yes + } + } + } + } + #Tattoos and Warpaint. - For partner. + + event_target:scoped_WL_co_hunter = { + add_blood_splatter_effect = yes + if = { + limit = { + society_member_of = warrior_lodge_norse + NOR = { + trait = african_tattoo_1 + trait = african_tattoo_2 + trait = african_tattoo_3 + trait = african_tattoo_4 + trait = african_tattoo_5 + trait = african_tattoo_6 + trait = african_tattoo_7 + trait = african_tattoo_8 + trait = slavic_tattoo_1 + trait = slavic_tattoo_2 + trait = slavic_tattoo_3 + trait = slavic_tattoo_4 + trait = slavic_tattoo_5 + trait = slavic_tattoo_6 + trait = norse_tattoo_1 + trait = norse_tattoo_2 + trait = norse_tattoo_3 + trait = norse_tattoo_4 + trait = norse_tattoo_5 + trait = norse_tattoo_6 + } + } + random_list = { + 40 = { add_trait = norse_tattoo_1 } + 40 = { add_trait = norse_tattoo_2 } + 20 = { add_trait = norse_tattoo_3 } + 20 = { add_trait = norse_tattoo_4 } + 10 = { add_trait = norse_tattoo_5 } + 10 = { add_trait = norse_tattoo_6 } + } + } + if = { + limit = { + society_member_of = warrior_lodge_west_african + NOR = { + trait = african_tattoo_1 + trait = african_tattoo_2 + trait = african_tattoo_3 + trait = african_tattoo_4 + trait = african_tattoo_5 + trait = african_tattoo_6 + trait = african_tattoo_7 + trait = african_tattoo_8 + trait = slavic_tattoo_1 + trait = slavic_tattoo_2 + trait = slavic_tattoo_3 + trait = slavic_tattoo_4 + trait = slavic_tattoo_5 + trait = slavic_tattoo_6 + trait = norse_tattoo_1 + trait = norse_tattoo_2 + trait = norse_tattoo_3 + trait = norse_tattoo_4 + trait = norse_tattoo_5 + trait = norse_tattoo_6 + } + } + random_list = { + 50 = { add_trait = african_tattoo_1 } + 50 = { add_trait = african_tattoo_2 } + 40 = { add_trait = african_tattoo_3 } + 40 = { add_trait = african_tattoo_4 } + 30 = { add_trait = african_tattoo_5 } + 30 = { add_trait = african_tattoo_6 } + 20 = { add_trait = african_tattoo_7 } + 20 = { add_trait = african_tattoo_8 } + } + } + if = { + limit = { + OR = { + society_member_of = warrior_lodge_slavic + society_member_of = warrior_lodge_baltic + } + NOR = { + trait = african_tattoo_1 + trait = african_tattoo_2 + trait = african_tattoo_3 + trait = african_tattoo_4 + trait = african_tattoo_5 + trait = african_tattoo_6 + trait = african_tattoo_7 + trait = african_tattoo_8 + trait = slavic_tattoo_1 + trait = slavic_tattoo_2 + trait = slavic_tattoo_3 + trait = slavic_tattoo_4 + trait = slavic_tattoo_5 + trait = slavic_tattoo_6 + trait = norse_tattoo_1 + trait = norse_tattoo_2 + trait = norse_tattoo_3 + trait = norse_tattoo_4 + trait = norse_tattoo_5 + trait = norse_tattoo_6 + } + } + random_list = { + 30 = { add_trait = slavic_tattoo_1 } + 30 = { add_trait = slavic_tattoo_2 } + 20 = { add_trait = slavic_tattoo_3 } + 20 = { add_trait = slavic_tattoo_4 } + 10 = { add_trait = slavic_tattoo_5 } + 10 = { add_trait = slavic_tattoo_6 } + } + } + if = { + limit = { + society_member_of = warrior_lodge_tengri + } + remove_character_modifier = tengri_warpaint_1 #Remove all previous paint that might still be lingering, for whatever reason. + remove_character_modifier = tengri_warpaint_2 + remove_character_modifier = aztec_warpaint_1 + remove_character_modifier = aztec_warpaint_2 + remove_character_modifier = finnish_warpaint_1 + remove_character_modifier = finnish_warpaint_2 + remove_character_modifier = zun_warpaint_1 + remove_character_modifier = zun_warpaint_2 + random_list = { + 50 = { + add_character_modifier = { + modifier = tengri_warpaint_1 + years = 5 + hidden = yes + } + } + 50 = { + add_character_modifier = { + modifier = tengri_warpaint_2 + years = 5 + hidden = yes + } + } + } + } + if = { + limit = { + society_member_of = warrior_lodge_finnish + } + remove_character_modifier = tengri_warpaint_1 #Remove all previous paint that might still be lingering, for whatever reason. + remove_character_modifier = tengri_warpaint_2 + remove_character_modifier = aztec_warpaint_1 + remove_character_modifier = aztec_warpaint_2 + remove_character_modifier = finnish_warpaint_1 + remove_character_modifier = finnish_warpaint_2 + remove_character_modifier = zun_warpaint_1 + remove_character_modifier = zun_warpaint_2 + random_list = { + 50 = { + add_character_modifier = { + modifier = finnish_warpaint_1 + years = 5 + hidden = yes + } + } + 50 = { + add_character_modifier = { + modifier = finnish_warpaint_2 + years = 5 + hidden = yes + } + } + } + } + if = { + limit = { + society_member_of = warrior_lodge_zun + } + remove_character_modifier = tengri_warpaint_1 #Remove all previous paint that might still be lingering, for whatever reason. + remove_character_modifier = tengri_warpaint_2 + remove_character_modifier = aztec_warpaint_1 + remove_character_modifier = aztec_warpaint_2 + remove_character_modifier = finnish_warpaint_1 + remove_character_modifier = finnish_warpaint_2 + remove_character_modifier = zun_warpaint_1 + remove_character_modifier = zun_warpaint_2 + random_list = { + 50 = { + add_character_modifier = { + modifier = zun_warpaint_1 + years = 5 + hidden = yes + } + } + 50 = { + add_character_modifier = { + modifier = zun_warpaint_2 + years = 5 + hidden = yes + } + } + } + } + } + } + ai_chance = { + factor = 10 + modifier = { + factor = 1.5 + trait = zealous + } + } + } + option = { #Make medium sacrifice. + name = EVTOPTBHF25601 + if = { + limit = { ai = no } #Cheaty AI... + scaled_wealth = { value = -0.35 min = -25 max = -50 } + } + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 5 } + } + ai_chance = { factor = 30 } + } + option = { #Make small sacrifice. + name = EVTOPTCHF25601 + if = { + limit = { ai = no } #Cheaty AI... + scaled_wealth = { value = -0.25 min = -5 max = -20 } + } + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 2 } + } + ai_chance = { factor = 40 } + } + option = { #Make no sacrifice. + name = EVTOPTDHF25601 + ai_chance = { + factor = 20 + modifier = { + factor = 1.5 + trait = cynical + } + } + } + after = { character_event = { id = HF.25602 } } +} + +#The ritual hunt actually starts. +character_event = { + id = HF.25602 + title = EVTTITLEHF25600 + desc = { + trigger = { + event_target:scoped_WL_co_hunter = { is_alive = yes } + } + text = EVTDESCAHF25602 + } + desc = { + trigger = { + event_target:scoped_WL_co_hunter = { is_alive = no } + } + text = EVTDESCBHF25602 + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + option = { + name = EVTOPTAHF25602 + WL_ritual_hunt_flavor_events_effect = yes + ai_chance = { factor = 20 } + } + +} + +#################################### +#Flavor events for the hunt. + +#The hunter is about to fall. +character_event = { + id = HF.25603 + title = EVTTITLEHF25600 + desc = EVTDESCAHF25603 + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + #Combat rating saves. + #Ask for help to co-hunter. + #Default. + + option = { + name = EVTOPTAHF25603 + trigger = { combat_rating = 50 } + tooltip_info = combat_rating + custom_tooltip = { text = TT_EVTOPTAHF25603 } + tiered_prestige_reward_effect = yes + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 3 } + } + ai_chance = { factor = 80 } + } + option = { + name = EVTOPTBHF25603 + trigger = { event_target:scoped_WL_co_hunter = { is_alive = yes } } + custom_tooltip = { text = TT_EVTOPTBHF25603 } + hidden_tooltip = { + random_list = { + 70 = { #Co-hunter helps you. + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { opinion = { who = ROOT value = 20 } } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { opinion = { who = ROOT value = 40 } } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { opinion = { who = ROOT value = 60 } } + } + modifier = { + factor = 1.75 + event_target:scoped_WL_co_hunter = { opinion = { who = ROOT value = 80 } } + } + modifier = { + factor = 1.75 + event_target:scoped_WL_co_hunter = { opinion = { who = ROOT value = 100 } } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = kind } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = just } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = brave } + } + modifier = { + factor = 1.75 + event_target:scoped_WL_co_hunter = { is_friend = ROOT } + } + modifier = { + factor = 1.75 + event_target:scoped_WL_co_hunter = { is_lover = ROOT } + } + character_event = { id = HF.25604 } + } + 30 = { #Co-hunter wavers. + modifier = { + factor = 1.5 + NOT = { event_target:scoped_WL_co_hunter = { opinion = { who = ROOT value = -20 } } } + } + modifier = { + factor = 1.5 + NOT = { event_target:scoped_WL_co_hunter = { opinion = { who = ROOT value = -40 } } } + } + modifier = { + factor = 1.5 + NOT = { event_target:scoped_WL_co_hunter = { opinion = { who = ROOT value = -60 } } } + } + modifier = { + factor = 1.75 + NOT = { event_target:scoped_WL_co_hunter = { opinion = { who = ROOT value = -80 } } } + } + modifier = { + factor = 1.75 + NOT = { event_target:scoped_WL_co_hunter = { opinion = { who = ROOT value = -90 } } } + } + modifier = { + factor = 1.75 + event_target:scoped_WL_co_hunter = { trait = deceitful } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = cruel } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = envious } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = arbitrary } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = craven } + } + modifier = { + factor = 2 + event_target:scoped_WL_co_hunter = { is_rival = ROOT } + } + character_event = { id = HF.25605 } + + } + } + } + ai_chance = { factor = 70 } + } + option = { + name = EVTOPTCHF25603 + random_list = { + 70 = { + add_character_modifier = { name = badly_bruised duration = 60 } + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = -3 } } + } + 25 = { + trigger = { NOT = { trait = wounded } } + add_trait = wounded + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = -6 } } + } + 5 = { + if = { + limit = { has_dlc = "Reapers" } + add_trait = mangled + } + else_if = { + limit = { NOT = { has_dlc = "Reapers" } } + add_trait = maimed + } + else_if = { + limit = { OR = { trait = maimed trait = mangled } } + death = { death_reason = death_accident } + } + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = -9 } } + } + } + ai_chance = { factor = 20 } + } + after = { + hidden_tooltip = { character_event = { id = HF.25616 days = 20 random = 15 } } #Find prey. + } +} + +#The co-hunter has helped you. +character_event = { + id = HF.25604 + title = EVTTITLEHF25600 + desc = EVTDESCAHF25604 + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + #Friendship. + #Romance. + #Default. + #Envious is upset. + + option = { #Befriend. + name = EVTOPTAHF25604 + trigger = { NOT = { is_friend = event_target:scoped_WL_co_hunter } } + add_friend = event_target:scoped_WL_co_hunter + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 3 } + } + ai_chance = { factor = 50 } + } + option = { #Romance. + name = EVTOPTBHF25604 + trigger = { + NOT = { is_lover = event_target:scoped_WL_co_hunter } + OR = { #Check compatibility. + AND = { + is_female = no + prefers_men_trigger = yes + event_target:scoped_WL_co_hunter = { + is_female = no + prefers_men_trigger = yes + } + } + AND = { + is_female = yes + prefers_men_trigger = yes + event_target:scoped_WL_co_hunter = { + is_female = yes + prefers_men_trigger = yes + } + } + AND = { + is_female = no + prefers_men_trigger = no + event_target:scoped_WL_co_hunter = { + is_female = yes + prefers_men_trigger = yes + } + } + AND = { + is_female = yes + prefers_men_trigger = yes + event_target:scoped_WL_co_hunter = { + is_female = no + prefers_men_trigger = no + } + } + } + } + add_lover = event_target:scoped_WL_co_hunter + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 3 } + } + ai_chance = { factor = 50 } + } + option = { #Default. + name = EVTOPTCHF25604 + if = { + limit = { + NOT = { owes_favor_to = event_target:scoped_WL_co_hunter } + } + event_target:scoped_WL_co_hunter = { + add_favor = ROOT + } + } + opinion = { + who = event_target:scoped_WL_co_hunter + modifier = opinion_saved_me + years = 10 + } + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 1 } + } + ai_chance = { factor = 50 } + } + option = { #Envious. + name = EVTOPTDHF25604 + trigger = { trait = envious } + tooltip_info = envious + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = -1 } + } + ai_chance = { factor = 50 } + } +} + +#The co-hunter has NOT helped you. +character_event = { + id = HF.25605 + title = EVTTITLEHF25600 + desc = EVTDESCAHF25605 + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + #Rivalry. + #Default. + #Envious/Paranoid kills in revenge. + #Kind forgives. + + option = { #Rivalry. + name = EVTOPTAHF25605 + trigger = { NOT = { is_rival = event_target:scoped_WL_co_hunter } } + add_rival = event_target:scoped_WL_co_hunter + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = -3 } + } + ai_chance = { factor = 50 } + } + option = { #Default. + name = EVTOPTBHF25605 + opinion = { + who = event_target:scoped_WL_co_hunter + modifier = left_me_to_die + } + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = -1 } + } + ai_chance = { factor = 50 } + } + option = { #Envuious kills in revenge. + name = EVTOPTCHF25605 + trigger = { trait = envious NOT = { trait = paranoid } } + tooltip_info = envious + event_target:scoped_WL_co_hunter = { + death = { death_reason = death_accident } + } + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 3 } + } + ai_chance = { factor = 50 } + } + option = { #Paranoid kills in revenge. + name = EVTOPTDHF25605 + trigger = { trait = paranoid } + tooltip_info = paranoid + event_target:scoped_WL_co_hunter = { + death = { death_reason = death_accident } + } + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 3 } + } + ai_chance = { factor = 50 } + } + option = { #Kind forgives. + name = EVTOPTEHF25605 + trigger = { trait = kind } + tooltip_info = kind + reverse_opinion = { + who = event_target:scoped_WL_co_hunter + modifier = grace_to_forgive + years = 5 + } + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 2 } + } + ai_chance = { factor = 50 } + } +} + +#The co-hunter is about to fall/drown/random etc. +character_event = { + id = HF.25606 + title = EVTTITLEHF25600 + desc = EVTDESCAHF25606 + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + #Combat rating saves. + #Try to help to co-hunter. + #Default. + + option = { + name = EVTOPTAHF25606 + trigger = { combat_rating = 50 } + tooltip_info = combat_rating + custom_tooltip = { text = TT_EVTOPTAHF25606 } + tiered_prestige_reward_effect = yes + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 3 } + } + ai_chance = { factor = 80 } + } + option = { + name = EVTOPTBHF25606 + trigger = { event_target:scoped_WL_co_hunter = { is_alive = yes } } + custom_tooltip = { text = TT_EVTOPTBHF25606 } + hidden_tooltip = { + random_list = { + 70 = { #Co-hunter saved. + modifier = { + factor = 1.5 + trait = strong + } + modifier = { + factor = 1.5 + trait = robust + } + modifier = { + factor = 0.5 + NOT = { combat_rating = 10 } + } + modifier = { + factor = 1.5 + martial = 10 + } + modifier = { + factor = 1.75 + martial = 15 + } + modifier = { + factor = 1.75 + martial = 20 + } + modifier = { + factor = 1.5 + martial = 25 + } + modifier = { + factor = 1.5 + trait = brave + } + modifier = { + factor = 0.5 + trait = craven + } + character_event = { id = HF.25607 } + } + 30 = { #Co-hunter still injured. + character_event = { id = HF.25627 } + } + } + } + ai_chance = { factor = 70 } + } + option = { + name = EVTOPTCHF25606 + random_list = { + 70 = { + add_character_modifier = { name = badly_bruised duration = 60 } + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = -2 } } + } + 25 = { + trigger = { NOT = { trait = wounded } } + add_trait = wounded + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = -3 } } + } + 5 = { + if = { + limit = { has_dlc = "Reapers" NOR = { trait = mangled trait = maimed } } + add_trait = mangled + } + else_if = { + limit = { NOR = { has_dlc = "Reapers" trait = maimed trait = mangled } } + add_trait = maimed + } + else_if = { + limit = { OR = { trait = maimed trait = mangled } } + death = { death_reason = death_accident } + } + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = -6 } } + } + } + ai_chance = { factor = 20 } + } + after = { + hidden_tooltip = { character_event = { id = HF.25616 days = 20 random = 15 } } #Find prey. + } +} + +#The co-hunter was saved. +character_event = { + id = HF.25607 + title = EVTTITLEHF25600 + desc = EVTDESCAHF25607 + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + #Friendship. + #Romance. + #Default. + + option = { #Befriend. + name = EVTOPTAHF25607 + trigger = { NOT = { is_friend = event_target:scoped_WL_co_hunter } } + add_friend = event_target:scoped_WL_co_hunter + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 3 } + } + ai_chance = { factor = 50 } + } + option = { #Romance. + name = EVTOPTBHF25607 + trigger = { + NOT = { is_lover = event_target:scoped_WL_co_hunter } + OR = { #Check compatibility. + AND = { + is_female = no + prefers_men_trigger = yes + event_target:scoped_WL_co_hunter = { + is_female = no + prefers_men_trigger = yes + } + } + AND = { + is_female = yes + prefers_men_trigger = yes + event_target:scoped_WL_co_hunter = { + is_female = yes + prefers_men_trigger = yes + } + } + AND = { + is_female = no + prefers_men_trigger = no + event_target:scoped_WL_co_hunter = { + is_female = yes + prefers_men_trigger = yes + } + } + AND = { + is_female = yes + prefers_men_trigger = yes + event_target:scoped_WL_co_hunter = { + is_female = no + prefers_men_trigger = no + } + } + } + } + add_lover = event_target:scoped_WL_co_hunter + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 3 } + } + ai_chance = { factor = 50 } + } + option = { #Default. + name = EVTOPTCHF25607 + if = { + limit = { owes_favor_to = event_target:scoped_WL_co_hunter } + remove_favor = event_target:scoped_WL_co_hunter + } + else_if = { + limit = { NOR = { owes_favor_to = event_target:scoped_WL_co_hunter event_target:scoped_WL_co_hunter = { owes_favor_to = ROOT } } } + add_favor = event_target:scoped_WL_co_hunter + } + reverse_opinion = { + who = event_target:scoped_WL_co_hunter + modifier = opinion_saved_me + years = 10 + } + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 1 } + } + ai_chance = { factor = 50 } + } +} + +#The co-hunter was not saved. +character_event = { + id = HF.25627 + title = EVTTITLEHF25600 + desc = EVTDESCAHF25627 + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + option = { + name = EVTOPTAHF25627 + event_target:scoped_WL_co_hunter = { death = { death_reason = death_accident } } + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = -6 } } + ai_chance = { factor = 50 } + } +} + +#Looking for tracks (intrigue). +character_event = { + id = HF.25608 + title = EVTTITLEHF25600 + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + text = EVTDESCAHF25608 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + text = EVTDESCBHF25608 + } + desc = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + text = EVTDESCCHF25608 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + text = EVTDESCDHF25608 + } + + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + #Special paranoid override. + #Do it yourself. + #Let co-hunter do it. + + option = { #Paranoid override. + name = EVTOPTAHF25608 + trigger = { trait = paranoid } + tooltip_info = paranoid + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 4 } + } + ai_chance = { factor = 50 } + } + option = { #Genius override. + name = EVTOPTBHF25608 + trigger = { trait = genius } + tooltip_info = genius + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 4 } + } + ai_chance = { factor = 50 } + } + option = { #Quick override. + name = EVTOPTBHF25608 + trigger = { trait = quick NOT = { trait = genius } } + tooltip_info = quick + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 3 } + } + ai_chance = { factor = 50 } + } + option = { #Shrewd override. + name = EVTOPTBHF25608 + trigger = { trait = shrewd NOR = { trait = genius trait = quick} } + tooltip_info = shrewd + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 2 } + } + ai_chance = { factor = 50 } + } + option = { #Do it yourself. + name = EVTOPTEHF25608 + custom_tooltip = { text = TT_EVTOPTEHF25608 } + hidden_tooltip = { + random_list = { + 50 = { #Successful Check. + modifier = { + factor = 0.5 + trait = slow + } + modifier = { + factor = 0.5 + trait = imbecile + } + modifier = { + factor = 0.5 + trait = inbred + } + modifier = { + factor = 0.5 + trait = dull + } + modifier = { + factor = 0.5 + NOT = { intrigue = 5 } + } + modifier = { + factor = 0.5 + NOT = { intrigue = 10 } + } + modifier = { + factor = 1.5 + intrigue = 15 + } + modifier = { + factor = 1.5 + intrigue = 20 + } + modifier = { + factor = 1.5 + intrigue = 25 + } + modifier = { + factor = 1.75 + intrigue = 30 + } + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = 2 } } + } + 50 = { #Failed Check. + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = -5 } } + } + } + } + ai_chance = { factor = 50 } + } + option = { #Let co-hunter do it. + name = EVTOPTFHF25608 + trigger = { event_target:scoped_WL_co_hunter = { is_alive = yes } } + custom_tooltip = { text = TT_EVTOPTFHF25608 } + hidden_tooltip = { + random_list = { + 50 = { #Successful Check. + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = slow } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = imbecile } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = inbred } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = dull } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = paranoid } + } + modifier = { + factor = 1.75 + event_target:scoped_WL_co_hunter = { trait = genius } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = quick } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = shrewd } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { NOT = { intrigue = 5 } } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { NOT = { intrigue = 10 } } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { intrigue = 15 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { intrigue = 20 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { intrigue = 25 } + } + modifier = { + factor = 1.75 + event_target:scoped_WL_co_hunter = { intrigue = 30 } + } + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = 2 } } + } + 50 = { #Failed Check. + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = -5 } } + } + } + } + ai_chance = { factor = 50 } + } + after = { + hidden_tooltip = { character_event = { id = HF.25616 days = 20 random = 15 } } #Find prey. + } +} + +#Characters need to examine carcass killed by target. (martial) +character_event = { + id = HF.25609 + title = EVTTITLEHF25600 + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + text = EVTDESCAHF25609 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + text = EVTDESCBHF25609 + } + desc = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + text = EVTDESCCHF25609 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + text = EVTDESCDHF25609 + } + + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + #Special Cruel override. + #Strong override. + #Do it yourself. + #Let co-hunter do it. + + option = { #Cruel override. + name = EVTOPTAHF25609 + trigger = { trait = cruel } + tooltip_info = cruel + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 4 } + } + ai_chance = { factor = 50 } + } + option = { #Strong override. + name = EVTOPTBHF25609 + trigger = { trait = strong } + tooltip_info = strong + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 4 } + } + ai_chance = { factor = 50 } + } + option = { #Robust override. + name = EVTOPTBHF25609 + trigger = { trait = robust NOT = { trait = strong } } + tooltip_info = robust + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 2 } + } + ai_chance = { factor = 50 } + } + option = { #Do it yourself. + name = EVTOPTDHF25609 + custom_tooltip = { text = TT_EVTOPTDHF25609 } + hidden_tooltip = { + random_list = { + 50 = { #Successful Check. + modifier = { + factor = 0.5 + trait = weak + } + modifier = { + factor = 0.5 + trait = feeble + } + modifier = { + factor = 0.5 + trait = inbred + } + modifier = { + factor = 0.5 + NOT = { martial = 5 } + } + modifier = { + factor = 0.5 + NOT = { martial = 10 } + } + modifier = { + factor = 1.5 + martial = 15 + } + modifier = { + factor = 1.5 + martial = 20 + } + modifier = { + factor = 1.5 + martial = 25 + } + modifier = { + factor = 1.75 + martial = 30 + } + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = 2 } } + } + 50 = { #Failed Check. + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = -5 } } + } + } + } + ai_chance = { factor = 50 } + } + option = { #Let co-hunter do it. + name = EVTOPTFHF25608 + trigger = { event_target:scoped_WL_co_hunter = { is_alive = yes } } + custom_tooltip = { text = TT_EVTOPTEHF25609 } + hidden_tooltip = { + random_list = { + 50 = { #Successful Check. + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = weak } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = feeble } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = inbred } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = cruel } + } + modifier = { + factor = 1.75 + event_target:scoped_WL_co_hunter = { trait = strong } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = robust } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { NOT = { martial = 5 } } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { NOT = { martial = 10 } } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { martial = 15 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { martial = 20 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { martial = 25 } + } + modifier = { + factor = 1.75 + event_target:scoped_WL_co_hunter = { martial = 30 } + } + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = 2 } } + } + 50 = { #Failed Check. + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = -5 } } + } + } + } + ai_chance = { factor = 50 } + } + after = { + hidden_tooltip = { character_event = { id = HF.25616 days = 20 random = 15 } } #Find prey. + } +} + +#Characters reflect upon their target. (learning) - scholar +character_event = { + id = HF.25610 + title = EVTTITLEHF25600 + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + text = EVTDESCAHF25610 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + text = EVTDESCBHF25610 + } + desc = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + text = EVTDESCCHF25610 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + text = EVTDESCDHF25610 + } + + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + #Special Scholar override. + #Genius override. + #Do it yourself. + #Let co-hunter do it. + + option = { #Scholar override. + name = EVTOPTAHF25610 + trigger = { trait = scholar } + tooltip_info = scholar + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 4 } + } + ai_chance = { factor = 50 } + } + option = { #Genius override. + name = EVTOPTBHF25610 + trigger = { trait = genius } + tooltip_info = genius + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 4 } + } + ai_chance = { factor = 50 } + } + option = { #Quick override. + name = EVTOPTBHF25610 + trigger = { trait = quick NOT = { trait = genius } } + tooltip_info = quick + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 3 } + } + ai_chance = { factor = 50 } + } + option = { #Shrewd override. + name = EVTOPTBHF25610 + trigger = { trait = shrewd NOR = { trait = genius trait = quick } } + tooltip_info = shrewd + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 2 } + } + ai_chance = { factor = 50 } + } + option = { #Do it yourself. + name = EVTOPTEHF25610 + custom_tooltip = { text = TT_EVTOPTEHF25610 } + hidden_tooltip = { + random_list = { + 50 = { #Successful Check. + modifier = { + factor = 0.5 + trait = imbecile + } + modifier = { + factor = 0.5 + trait = slow + } + modifier = { + factor = 0.5 + trait = inbred + } + modifier = { + factor = 0.5 + NOT = { learning = 5 } + } + modifier = { + factor = 0.5 + NOT = { learning = 10 } + } + modifier = { + factor = 1.5 + learning = 15 + } + modifier = { + factor = 1.5 + learning = 20 + } + modifier = { + factor = 1.5 + learning = 25 + } + modifier = { + factor = 1.75 + learning = 30 + } + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = 2 } } + } + 50 = { #Failed Check. + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = -5 } } + } + } + } + ai_chance = { factor = 50 } + } + option = { #Let co-hunter do it. + name = EVTOPTFHF25610 + trigger = { event_target:scoped_WL_co_hunter = { is_alive = yes } } + custom_tooltip = { text = TT_EVTOPTFHF25610 } + hidden_tooltip = { + random_list = { + 50 = { #Successful Check. + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = imbecile } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = slow } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = inbred } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = dull } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = scholar } + } + modifier = { + factor = 1.75 + event_target:scoped_WL_co_hunter = { trait = genius } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = quick } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = shrewd } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { NOT = { learning = 5 } } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { NOT = { learning = 10 } } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { learning = 15 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { learning = 20 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { learning = 25 } + } + modifier = { + factor = 1.75 + event_target:scoped_WL_co_hunter = { learning = 30 } + } + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = 2 } } + } + 50 = { #Failed Check. + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = -5 } } + } + } + } + ai_chance = { factor = 50 } + } + after = { + hidden_tooltip = { character_event = { id = HF.25616 days = 20 random = 15 } } #Find prey. + } +} + +# Characters find hermit, ask info on target. (diplomacy) - charitable +character_event = { + id = HF.25611 + title = EVTTITLEHF25600 + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + text = EVTDESCAHF25611 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + text = EVTDESCBHF25611 + } + desc = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + text = EVTDESCCHF25611 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + text = EVTDESCDHF25611 + } + + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + #Special charitable override. + #Strong override. + #Do it yourself. + #Let co-hunter do it. + + option = { #He must be the werewolf. + name = EVTOPTZHF25611 + trigger = { trait = paranoid has_character_flag = flag_hunting_wolf_hellenic } + tooltip_info = paranoid + add_legend_progress_trivial_effect = yes + WL_ritual_hunt_cleanup_effect = yes + ai_chance = { factor = 50 } + } + option = { #charitable override. + name = EVTOPTAHF25611 + trigger = { trait = charitable NAND = { trait = paranoid has_character_flag = flag_hunting_wolf_hellenic } } + tooltip_info = charitable + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 4 } + } + ai_chance = { factor = 50 } + hidden_tooltip = { character_event = { id = HF.25616 days = 20 random = 15 } } #Find prey. + } + option = { #Strong override. + name = EVTOPTBHF25611 + trigger = { trait = strong } + tooltip_info = strong + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 4 } + } + ai_chance = { factor = 50 } + hidden_tooltip = { character_event = { id = HF.25616 days = 20 random = 15 } } #Find prey. + } + option = { #Robust override. + name = EVTOPTBHF25611 + trigger = { trait = robust NOT = { trait = strong } } + tooltip_info = robust + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 3 } + } + ai_chance = { factor = 50 } + hidden_tooltip = { character_event = { id = HF.25616 days = 20 random = 15 } } #Find prey. + } + option = { #Do it yourself. + name = EVTOPTDHF25611 + custom_tooltip = { text = TT_EVTOPTDHF25611 } + hidden_tooltip = { + random_list = { + 50 = { #Successful Check. + modifier = { + factor = 0.5 + trait = weak + } + modifier = { + factor = 0.5 + trait = feeble + } + modifier = { + factor = 0.5 + NOT = { combat_rating = 5 } + } + modifier = { + factor = 0.5 + NOT = { combat_rating = 10 } + } + modifier = { + factor = 1.5 + combat_rating = 20 + } + modifier = { + factor = 1.5 + combat_rating = 25 + } + modifier = { + factor = 1.5 + combat_rating = 40 + } + modifier = { + factor = 1.75 + combat_rating = 60 + } + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = 2 } } + } + 50 = { #Failed Check. + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = -5 } } + } + } + } + ai_chance = { factor = 50 } + hidden_tooltip = { character_event = { id = HF.25616 days = 20 random = 15 } } #Find prey. + } + option = { #Let co-hunter do it. + name = EVTOPTEHF25611 + trigger = { event_target:scoped_WL_co_hunter = { is_alive = yes } } + custom_tooltip = { text = TT_EVTOPTEHF25611 } + hidden_tooltip = { + random_list = { + 50 = { #Successful Check. + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = weak } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = feeble } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = charitable } + } + modifier = { + factor = 1.75 + event_target:scoped_WL_co_hunter = { trait = strong } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = robust } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { NOT = { combat_rating = 5 } } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { NOT = { combat_rating = 10 } } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { combat_rating = 20 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { combat_rating = 25 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { combat_rating = 40 } + } + modifier = { + factor = 1.75 + event_target:scoped_WL_co_hunter = { combat_rating = 60 } + } + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = 2 } } + } + 50 = { #Failed Check. + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = -5 } } + } + } + } + ai_chance = { factor = 50 } + hidden_tooltip = { character_event = { id = HF.25616 days = 20 random = 15 } } #Find prey. + } +} + +#Characters need to interpret old map and pathways. (stewardship) - administrator +character_event = { + id = HF.25612 + title = EVTTITLEHF25600 + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + text = EVTDESCAHF25612 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + text = EVTDESCBHF25612 + } + desc = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + text = EVTDESCCHF25612 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + text = EVTDESCDHF25612 + } + + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + #Special Administrator override. + #Genius override. + #Do it yourself. + #Let co-hunter do it. + + option = { #Administrator override. + name = EVTOPTAHF25612 + trigger = { trait = administrator } + tooltip_info = administrator + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 4 } + } + ai_chance = { factor = 50 } + } + option = { #Genius override. + name = EVTOPTBHF25612 + trigger = { trait = genius } + tooltip_info = genius + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 4 } + } + ai_chance = { factor = 50 } + } + option = { #Quick override. + name = EVTOPTBHF25612 + trigger = { trait = quick NOT = { trait = genius } } + tooltip_info = quick + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 3 } + } + ai_chance = { factor = 50 } + } + option = { #Shrewd override. + name = EVTOPTBHF25612 + trigger = { trait = shrewd NOR = { trait = genius trait = quick } } + tooltip_info = shrewd + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 2 } + } + ai_chance = { factor = 50 } + } + option = { #Do it yourself. + name = EVTOPTEHF25612 + custom_tooltip = { text = TT_EVTOPTFHF25612 } + hidden_tooltip = { + random_list = { + 50 = { #Successful Check. + modifier = { + factor = 0.5 + trait = imbecile + } + modifier = { + factor = 0.5 + trait = slow + } + modifier = { + factor = 0.5 + trait = inbred + } + modifier = { + factor = 0.5 + NOT = { stewardship = 5 } + } + modifier = { + factor = 0.5 + NOT = { stewardship = 10 } + } + modifier = { + factor = 1.5 + stewardship = 15 + } + modifier = { + factor = 1.5 + stewardship = 20 + } + modifier = { + factor = 1.5 + stewardship = 25 + } + modifier = { + factor = 1.75 + stewardship = 30 + } + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = 2 } } + } + 50 = { #Failed Check. + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = -5 } } + } + } + } + ai_chance = { factor = 50 } + } + option = { #Let co-hunter do it. + name = EVTOPTGHF25612 + trigger = { event_target:scoped_WL_co_hunter = { is_alive = yes } } + custom_tooltip = { text = TT_EVTOPTGHF25612 } + hidden_tooltip = { + random_list = { + 50 = { #Successful Check. + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = imbecile } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = slow } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = inbred } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = dull } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = administrator } + } + modifier = { + factor = 1.75 + event_target:scoped_WL_co_hunter = { trait = genius } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = quick } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = shrewd } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { NOT = { stewardship = 5 } } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { NOT = { stewardship = 10 } } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { stewardship = 15 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { stewardship = 20 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { stewardship = 25 } + } + modifier = { + factor = 1.75 + event_target:scoped_WL_co_hunter = { stewardship = 30 } + } + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = 2 } } + } + 50 = { #Failed Check. + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = -5 } } + } + } + } + ai_chance = { factor = 50 } + } + after = { + hidden_tooltip = { character_event = { id = HF.25616 days = 20 random = 15 } } #Find prey. + } +} + +#Characters see a bad omen. (low piety triggers) - theologian +character_event = { + id = HF.25613 + title = EVTTITLEHF25600 + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + text = EVTDESCAHF25613 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + text = EVTDESCBHF25613 + } + desc = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + text = EVTDESCCHF25613 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + text = EVTDESCDHF25613 + } + + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + #Special Theologian override. + #Piety override. + #Do it yourself. + #Let co-hunter do it. + + option = { #Theologian override. + name = EVTOPTAHF25613 + trigger = { trait = theologian } + tooltip_info = theologian + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 4 } + } + ai_chance = { factor = 50 } + } + option = { #Piety override. + name = EVTOPTBHF25613 + trigger = { piety = 200 } + piety = -150 + custom_tooltip = { text = TT_EVTOPTBHF25613 } + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 4 } + } + ai_chance = { factor = 50 } + } + option = { #Do it yourself. + name = EVTOPTCHF25613 + custom_tooltip = { text = TT_EVTOPTCHF25613 } + hidden_tooltip = { + random_list = { + 50 = { #Successful Check. + modifier = { + factor = 0.5 + trait = imbecile + } + modifier = { + factor = 0.5 + trait = slow + } + modifier = { + factor = 0.5 + trait = inbred + } + modifier = { + factor = 0.5 + NOT = { learning = 5 } + } + modifier = { + factor = 0.5 + NOT = { learning = 10 } + } + modifier = { + factor = 1.5 + learning = 15 + } + modifier = { + factor = 1.5 + learning = 20 + } + modifier = { + factor = 1.5 + learning = 25 + } + modifier = { + factor = 1.75 + learning = 30 + } + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = 2 } } + } + 50 = { #Failed Check. + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = -5 } } + } + } + } + ai_chance = { factor = 50 } + } + option = { #Let co-hunter do it. + name = EVTOPTDHF25613 + trigger = { event_target:scoped_WL_co_hunter = { is_alive = yes } } + custom_tooltip = { text = TT_EVTOPTDHF25613 } + hidden_tooltip = { + random_list = { + 50 = { #Successful Check. + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = imbecile } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = slow } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = inbred } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = dull } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = theologian } + } + modifier = { + factor = 1.75 + event_target:scoped_WL_co_hunter = { trait = genius } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = quick } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = shrewd } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { NOT = { learning = 5 } } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { NOT = { learning = 10 } } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { learning = 15 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { learning = 20 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { learning = 25 } + } + modifier = { + factor = 1.75 + event_target:scoped_WL_co_hunter = { learning = 30 } + } + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = 2 } } + } + 50 = { #Failed Check. + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = -5 } } + } + } + } + ai_chance = { factor = 50 } + } + after = { + hidden_tooltip = { character_event = { id = HF.25616 days = 20 random = 15 } } #Find prey. + } +} + +#Characters see a good omen. (high piety triggers) - theologian +character_event = { + id = HF.25614 + title = EVTTITLEHF25600 + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + text = EVTDESCAHF25614 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + text = EVTDESCBHF25614 + } + desc = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + text = EVTDESCCHF25614 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + text = EVTDESCDHF25614 + } + + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + #Special Theologian override. + + option = { #Theologian override. + name = EVTOPTAHF25614 + trigger = { trait = theologian } + tooltip_info = theologian + piety = 50 + hidden_tooltip = { + change_variable = { which = wl_ritual_hunting value = 4 } + } + ai_chance = { factor = 50 } + } + option = { #Default. + name = EVTOPTBHF25614 + piety = 25 + hidden_tooltip = { change_variable = { which = wl_ritual_hunting value = 2 } } + ai_chance = { factor = 50 } + } + after = { + hidden_tooltip = { character_event = { id = HF.25616 days = 20 random = 15 } } #Find prey. + } +} + +#Lunatic Character goes on a Wild Hunt. +character_event = { + id = HF.25615 + title = EVTTITLEHF25615 + desc = { + trigger = { + has_character_modifier = lycanthropy + } + text = EVTDESCAHF25615 + } + desc = { + trigger = { + NOT = { has_character_modifier = lycanthropy } + } + text = EVTDESCBHF25615 + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + #Kill. + #Proceed alone. + #Kind contains. + + option = { # + name = EVTOPTZHF25615 + trigger = { has_character_modifier = lycanthropy } + piety = 100 + event_target:scoped_WL_co_hunter = { + death = { death_reason = death_accident_generic_beast } + } + add_legend_progress_trivial_effect = yes + WL_ritual_hunt_cleanup_effect = yes + ai_chance = { factor = 50 } + } + option = { # + name = EVTOPTAHF25615 + trigger = { trait = lunatic NOT = { trait = possessed } } + tooltip_info = lunatic + piety = 100 + event_target:scoped_WL_co_hunter = { + death = { death_reason = death_accident_generic_beast } + } + add_legend_progress_trivial_effect = yes + WL_ritual_hunt_cleanup_effect = yes + ai_chance = { factor = 50 } + } + option = { # + name = EVTOPTBHF25615 + trigger = { trait = lunatic NOT = { trait = possessed } } + tooltip_info = lunatic + custom_tooltip = { text = TT_EVTOPTBHF25615 } + if = { + limit = { NOT = { trait = wounded } } + random = { + chance = 25 + add_trait = wounded + } + } + hidden_tooltip = { clear_event_target = scoped_WL_co_hunter change_variable = { which = wl_ritual_hunting value = -4 } } + hidden_tooltip = { character_event = { id = HF.25616 days = 20 random = 15 } } #Find prey. + ai_chance = { factor = 50 } + } + option = { # + name = EVTOPTAHF25615 + trigger = { trait = possessed NOT = { trait = lunatic } } + tooltip_info = possessed + piety = 100 + event_target:scoped_WL_co_hunter = { + death = { death_reason = death_accident_generic_beast } + } + add_legend_progress_trivial_effect = yes + WL_ritual_hunt_cleanup_effect = yes + ai_chance = { factor = 50 } + } + option = { # + name = EVTOPTBHF25615 + trigger = { trait = possessed NOT = { trait = lunatic } } + tooltip_info = possessed + custom_tooltip = { text = TT_EVTOPTBHF25615 } + if = { + limit = { NOT = { trait = wounded } } + random = { + chance = 25 + add_trait = wounded + } + } + hidden_tooltip = { clear_event_target = scoped_WL_co_hunter change_variable = { which = wl_ritual_hunting value = -4 } } + hidden_tooltip = { character_event = { id = HF.25616 days = 20 random = 15 } } #Find prey. + ai_chance = { factor = 50 } + } + option = { #Kind saves. + name = EVTOPTCHF25615 + trigger = { trait = kind } + tooltip_info = kind + hidden_tooltip = { character_event = { id = HF.25616 days = 20 random = 15 } } #Find prey. + } +} + +#Finding the prey: +character_event = { + id = HF.25616 + hide_window = yes + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + #Completely missed prey. + #Prey ambushed hunters. + #Hunters ambushed prey. + + immediate = { + random_list = { + 10 = { + trigger = { #Completely missed prey. + NOT = { check_variable = { which = wl_ritual_hunting value = 0 } } + } + modifier = { + factor = 1.5 + trait = imbecile + } + modifier = { + factor = 1.5 + trait = inbred + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = imbecile } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = inbred } + } + character_event = { id = HF.25617 } + } + 25 = { #Prey ambushed hunters. + character_event = { id = HF.25618 } + } + 25 = { #Hunters ambushed prey. + modifier = { + factor = 0.5 + NOT ={ check_variable = { which = wl_ritual_hunting value = -5 } } + } + modifier = { + factor = 1.5 + check_variable = { which = wl_ritual_hunting value = 3 } + } + modifier = { + factor = 1.75 + check_variable = { which = wl_ritual_hunting value = 6 } + } + modifier = { + factor = 1.75 + check_variable = { which = wl_ritual_hunting value = 9 } + } + modifier = { + factor = 1.75 + check_variable = { which = wl_ritual_hunting value = 12 } + } + modifier = { + factor = 1.5 + trait = strong + } + modifier = { + factor = 1.5 + trait = robust + } + modifier = { + factor = 0.75 + trait = weak + } + modifier = { + factor = 0.75 + trait = feeble + } + modifier = { + factor = 1.75 + trait = hunter + } + modifier = { + factor = 1.25 + combat_rating = 15 + } + modifier = { + factor = 1.25 + combat_rating = 25 + } + modifier = { + factor = 1.25 + combat_rating = 35 + } + modifier = { + factor = 1.25 + combat_rating = 45 + } + modifier = { + factor = 1.5 + combat_rating = 55 + } + modifier = { + factor = 1.5 + combat_rating = 65 + } + modifier = { + factor = 1.5 + combat_rating = 75 + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = strong } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = robust } + } + modifier = { + factor = 0.75 + event_target:scoped_WL_co_hunter = { trait = weak } + } + modifier = { + factor = 0.75 + event_target:scoped_WL_co_hunter = { trait = feeble } + } + modifier = { + factor = 1.75 + event_target:scoped_WL_co_hunter = { trait = hunter } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 15 } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 25 } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 35 } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 45 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { combat_rating = 55 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { combat_rating = 65 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { combat_rating = 75 } + } + character_event = { id = HF.25619 } + } + } + } +} + +#Too incompetent to even find the prey. +character_event = { + id = HF.25617 + title = EVTTITLEHF25600 + desc = EVTDESCAHF25617 + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + option = { # + name = EVTOPTAHF25617 + tiered_piety_negative_effect = yes + WL_ritual_hunt_cleanup_effect = yes + ai_chance = { factor = 50 } + } +} + +#Prey ambushes hunters. +character_event = { + id = HF.25618 + title = EVTTITLEHF25600 + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + text = EVTDESCAHF25618 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + text = EVTDESCBHF25618 + } + desc = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + text = EVTDESCCHF25618 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + text = EVTDESCDHF25618 + } + + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + #Hunter saves. + #Attack anyway. + #Try to flee. + #Envious sacrifices co-hunter. + + option = { + name = EVTOPTAHF25618 + trigger = { trait = hunter } + tooltip_info = hunter + tiered_piety_reward_effect = yes + #Overcome beast. + #Wounded, beast escapes. + add_blood_splatter_effect = yes + random_list = { + 30 = { + modifier = { + factor = 1.5 + trait = strong + } + modifier = { + factor = 1.5 + trait = robust + } + modifier = { + factor = 0.75 + trait = weak + } + modifier = { + factor = 0.75 + trait = feeble + } + modifier = { + factor = 1.75 + trait = hunter + } + modifier = { + factor = 1.25 + combat_rating = 15 + } + modifier = { + factor = 1.25 + combat_rating = 25 + } + modifier = { + factor = 1.25 + combat_rating = 35 + } + modifier = { + factor = 1.25 + combat_rating = 45 + } + modifier = { + factor = 1.5 + combat_rating = 55 + } + modifier = { + factor = 1.5 + combat_rating = 65 + } + modifier = { + factor = 1.5 + combat_rating = 75 + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = strong } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = robust } + } + modifier = { + factor = 0.75 + event_target:scoped_WL_co_hunter = { trait = weak } + } + modifier = { + factor = 0.75 + event_target:scoped_WL_co_hunter = { trait = feeble } + } + modifier = { + factor = 1.75 + event_target:scoped_WL_co_hunter = { trait = hunter } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 15 } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 25 } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 35 } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 45 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { combat_rating = 55 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { combat_rating = 65 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { combat_rating = 75 } + } + custom_tooltip = { text = TT_HF25618_BEAST_KILLED } + hidden_tooltip = { character_event = { id = HF.25620 } } + } + 70 = { + custom_tooltip = { text = TT_HF25618_BEAST_WOUNDS_ESCAPES } + hidden_tooltip = { character_event = { id = HF.25622 } } + } + } + ai_chance = { factor = 50 } + } + option = { #Attack + name = EVTOPTBHF25618 + tiered_piety_reward_effect = yes + #Overcome beast. + #Wounded, beast escapes. + #Killed, beast escapes. + add_blood_splatter_effect = yes + random_list = { + 10 = { + modifier = { + factor = 1.5 + trait = strong + } + modifier = { + factor = 1.5 + trait = robust + } + modifier = { + factor = 0.75 + trait = weak + } + modifier = { + factor = 0.75 + trait = feeble + } + modifier = { + factor = 1.75 + trait = hunter + } + modifier = { + factor = 1.25 + combat_rating = 15 + } + modifier = { + factor = 1.25 + combat_rating = 25 + } + modifier = { + factor = 1.25 + combat_rating = 35 + } + modifier = { + factor = 1.25 + combat_rating = 45 + } + modifier = { + factor = 1.5 + combat_rating = 55 + } + modifier = { + factor = 1.5 + combat_rating = 65 + } + modifier = { + factor = 1.5 + combat_rating = 75 + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = strong } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = robust } + } + modifier = { + factor = 0.75 + event_target:scoped_WL_co_hunter = { trait = weak } + } + modifier = { + factor = 0.75 + event_target:scoped_WL_co_hunter = { trait = feeble } + } + modifier = { + factor = 1.75 + event_target:scoped_WL_co_hunter = { trait = hunter } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 15 } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 25 } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 35 } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 45 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { combat_rating = 55 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { combat_rating = 65 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { combat_rating = 75 } + } + custom_tooltip = { text = TT_HF25618_BEAST_KILLED } + hidden_tooltip = { character_event = { id = HF.25620 } } + } + 60 = { + custom_tooltip = { text = TT_HF25618_BEAST_WOUNDS_ESCAPES } + hidden_tooltip = { character_event = { id = HF.25622 } } + } + 30 = { + custom_tooltip = { text = TT_HF25618_BEAST_KILLS } + hidden_tooltip = { character_event = { id = HF.25623 } } + } + } + ai_chance = { factor = 20 } + } + option = { #Flee + name = EVTOPTCHF25618 + if = { + limit = { + NOT = { trait = craven } + } + add_trait = craven + } + tiered_piety_negative_effect = yes + #Wounded, beast escapes. + #Killed, beast escapes. + random_list = { + 85 = { + modifier = { + factor = 1.5 + trait = strong + } + modifier = { + factor = 1.5 + trait = robust + } + modifier = { + factor = 0.75 + trait = weak + } + modifier = { + factor = 0.75 + trait = feeble + } + modifier = { + factor = 1.75 + trait = hunter + } + modifier = { + factor = 1.25 + combat_rating = 15 + } + modifier = { + factor = 1.25 + combat_rating = 25 + } + modifier = { + factor = 1.25 + combat_rating = 35 + } + modifier = { + factor = 1.25 + combat_rating = 45 + } + modifier = { + factor = 1.5 + combat_rating = 55 + } + modifier = { + factor = 1.5 + combat_rating = 65 + } + modifier = { + factor = 1.5 + combat_rating = 75 + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = strong } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = robust } + } + modifier = { + factor = 0.75 + event_target:scoped_WL_co_hunter = { trait = weak } + } + modifier = { + factor = 0.75 + event_target:scoped_WL_co_hunter = { trait = feeble } + } + modifier = { + factor = 1.75 + event_target:scoped_WL_co_hunter = { trait = hunter } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 15 } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 25 } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 35 } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 45 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { combat_rating = 55 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { combat_rating = 65 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { combat_rating = 75 } + } + custom_tooltip = { text = TT_HF25618_BEAST_WOUNDS_ESCAPES } + hidden_tooltip = { character_event = { id = HF.25622 } } + } + 15 = { + custom_tooltip = { text = TT_HF25618_BEAST_KILLS } + hidden_tooltip = { character_event = { id = HF.25623 } } + } + } + ai_chance = { factor = 20 } + } + option = { #Sacrifice co-hunter to survive. + name = EVTOPTDHF25618 + trigger = { trait = envious } + tooltip_info = envious + tiered_piety_negative_effect = yes + if = { + limit = { + NOT = { trait = craven } + } + add_trait = craven + } + #Escape, beast eats co-hunter. + #Wounded, beast eats co-hunter. + random_list = { + 65 = { + modifier = { + factor = 1.5 + trait = strong + } + modifier = { + factor = 1.5 + trait = robust + } + modifier = { + factor = 0.75 + trait = weak + } + modifier = { + factor = 0.75 + trait = feeble + } + modifier = { + factor = 1.75 + trait = hunter + } + modifier = { + factor = 1.25 + combat_rating = 15 + } + modifier = { + factor = 1.25 + combat_rating = 25 + } + modifier = { + factor = 1.25 + combat_rating = 35 + } + modifier = { + factor = 1.25 + combat_rating = 45 + } + modifier = { + factor = 1.5 + combat_rating = 55 + } + modifier = { + factor = 1.5 + combat_rating = 65 + } + modifier = { + factor = 1.5 + combat_rating = 75 + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = strong } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = robust } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { trait = weak } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { trait = feeble } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { trait = hunter } + } + modifier = { + factor = 0.75 + event_target:scoped_WL_co_hunter = { combat_rating = 15 } + } + modifier = { + factor = 0.75 + event_target:scoped_WL_co_hunter = { combat_rating = 25 } + } + modifier = { + factor = 0.75 + event_target:scoped_WL_co_hunter = { combat_rating = 35 } + } + modifier = { + factor = 0.75 + event_target:scoped_WL_co_hunter = { combat_rating = 45 } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { combat_rating = 55 } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { combat_rating = 65 } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { combat_rating = 75 } + } + custom_tooltip = { text = TT_HF25618_BEAST_EATS_COHUNTER } + hidden_tooltip = { character_event = { id = HF.25624 } } + } + 35 = { + custom_tooltip = { text = TT_HF25618_BEAST_WOUNDS_EATS_COHUNTER } + hidden_tooltip = { character_event = { id = HF.25625 } } + } + } + ai_chance = { factor = 20 } + } + option = { #Sacrifice co-hunter to survive. + name = EVTOPTDHF25618 + trigger = { trait = cruel NOT = { trait = envious } } + tooltip_info = cruel + tiered_piety_negative_effect = yes + if = { + limit = { + NOT = { trait = craven } + } + add_trait = craven + } + #Escape, beast eats co-hunter. + #Wounded, beast eats co-hunter. + random_list = { + 65 = { + modifier = { + factor = 1.5 + trait = strong + } + modifier = { + factor = 1.5 + trait = robust + } + modifier = { + factor = 0.75 + trait = weak + } + modifier = { + factor = 0.75 + trait = feeble + } + modifier = { + factor = 1.75 + trait = hunter + } + modifier = { + factor = 1.25 + combat_rating = 15 + } + modifier = { + factor = 1.25 + combat_rating = 25 + } + modifier = { + factor = 1.25 + combat_rating = 35 + } + modifier = { + factor = 1.25 + combat_rating = 45 + } + modifier = { + factor = 1.5 + combat_rating = 55 + } + modifier = { + factor = 1.5 + combat_rating = 65 + } + modifier = { + factor = 1.5 + combat_rating = 75 + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = strong } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { trait = robust } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { trait = weak } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { trait = feeble } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { trait = hunter } + } + modifier = { + factor = 0.75 + event_target:scoped_WL_co_hunter = { combat_rating = 15 } + } + modifier = { + factor = 0.75 + event_target:scoped_WL_co_hunter = { combat_rating = 25 } + } + modifier = { + factor = 0.75 + event_target:scoped_WL_co_hunter = { combat_rating = 35 } + } + modifier = { + factor = 0.75 + event_target:scoped_WL_co_hunter = { combat_rating = 45 } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { combat_rating = 55 } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { combat_rating = 65 } + } + modifier = { + factor = 0.5 + event_target:scoped_WL_co_hunter = { combat_rating = 75 } + } + custom_tooltip = { text = TT_HF25618_BEAST_EATS_COHUNTER } + hidden_tooltip = { character_event = { id = HF.25624 } } + } + 35 = { + custom_tooltip = { text = TT_HF25618_BEAST_WOUNDS_EATS_COHUNTER } + hidden_tooltip = { character_event = { id = HF.25625 } } + } + } + ai_chance = { factor = 20 } + } +} + +#Hunters ambush prey. +character_event = { + id = HF.25619 + title = EVTTITLEHF25600 + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + text = EVTDESCAHF25619 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + text = EVTDESCBHF25619 + } + desc = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + text = EVTDESCCHF25619 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + text = EVTDESCDHF25619 + } + + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + #High variable brings easy win. + #Hunter saves. + #Attack. + #Try to flee. + + option = { + name = EVTOPTAHF25619 + trigger = { check_variable = { which = wl_ritual_hunting value = 12 } } + tooltip_info_custom = available_because_good_hunter + custom_tooltip = { text = TT_HF25619_BEAST_KILLED } + add_blood_splatter_effect = yes + tiered_piety_reward_effect = yes + hidden_tooltip = { character_event = { id = HF.25620 } } + ai_chance = { factor = 70 } + } + + option = { + name = EVTOPTBHF25619 + trigger = { trait = hunter } + tooltip_info = hunter + add_blood_splatter_effect = yes + tiered_piety_reward_effect = yes + #Overcome beast. + #Wounded, beast escapes. + random_list = { + 50 = { + modifier = { + factor = 1.5 + trait = strong + } + modifier = { + factor = 1.5 + trait = robust + } + modifier = { + factor = 0.75 + trait = weak + } + modifier = { + factor = 0.75 + trait = feeble + } + modifier = { + factor = 1.75 + trait = hunter + } + modifier = { + factor = 1.25 + combat_rating = 15 + } + modifier = { + factor = 1.25 + combat_rating = 25 + } + modifier = { + factor = 1.25 + combat_rating = 35 + } + modifier = { + factor = 1.25 + combat_rating = 45 + } + modifier = { + factor = 1.5 + combat_rating = 55 + } + modifier = { + factor = 1.5 + combat_rating = 65 + } + modifier = { + factor = 1.5 + combat_rating = 75 + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = strong } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = robust } + } + modifier = { + factor = 0.75 + event_target:scoped_WL_co_hunter = { trait = weak } + } + modifier = { + factor = 0.75 + event_target:scoped_WL_co_hunter = { trait = feeble } + } + modifier = { + factor = 1.75 + event_target:scoped_WL_co_hunter = { trait = hunter } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 15 } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 25 } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 35 } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 45 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { combat_rating = 55 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { combat_rating = 65 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { combat_rating = 75 } + } + custom_tooltip = { text = TT_HF25618_BEAST_KILLED } + hidden_tooltip = { character_event = { id = HF.25620 } } + } + 50 = { + custom_tooltip = { text = TT_HF25618_BEAST_WOUNDS_ESCAPES } + hidden_tooltip = { character_event = { id = HF.25622 } } + } + } + ai_chance = { factor = 50 } + } + option = { #Attack + name = EVTOPTCHF25619 + tiered_piety_reward_effect = yes + add_blood_splatter_effect = yes + #Overcome beast. + #Wounded, beast killed. + #Killed, beast escapes. + random_list = { + 30 = { + modifier = { + factor = 1.5 + trait = strong + } + modifier = { + factor = 1.5 + trait = robust + } + modifier = { + factor = 0.75 + trait = weak + } + modifier = { + factor = 0.75 + trait = feeble + } + modifier = { + factor = 1.75 + trait = hunter + } + modifier = { + factor = 1.25 + combat_rating = 15 + } + modifier = { + factor = 1.25 + combat_rating = 25 + } + modifier = { + factor = 1.25 + combat_rating = 35 + } + modifier = { + factor = 1.25 + combat_rating = 45 + } + modifier = { + factor = 1.5 + combat_rating = 55 + } + modifier = { + factor = 1.5 + combat_rating = 65 + } + modifier = { + factor = 1.5 + combat_rating = 75 + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = strong } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { trait = robust } + } + modifier = { + factor = 0.75 + event_target:scoped_WL_co_hunter = { trait = weak } + } + modifier = { + factor = 0.75 + event_target:scoped_WL_co_hunter = { trait = feeble } + } + modifier = { + factor = 1.75 + event_target:scoped_WL_co_hunter = { trait = hunter } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 15 } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 25 } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 35 } + } + modifier = { + factor = 1.25 + event_target:scoped_WL_co_hunter = { combat_rating = 45 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { combat_rating = 55 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { combat_rating = 65 } + } + modifier = { + factor = 1.5 + event_target:scoped_WL_co_hunter = { combat_rating = 75 } + } + custom_tooltip = { text = TT_HF25618_BEAST_KILLED } + hidden_tooltip = { character_event = { id = HF.25620 } } + } + 40 = { + custom_tooltip = { text = TT_HF25618_BEAST_WOUNDS_KILLED } + hidden_tooltip = { character_event = { id = HF.25621 } } + } + 10 = { + custom_tooltip = { text = TT_HF25618_BEAST_WOUNDS_ESCAPES } + hidden_tooltip = { character_event = { id = HF.25622 } } + } + } + ai_chance = { factor = 20 } + } + option = { #Flee + name = EVTOPTDHF25619 + custom_tooltip = { text = TT_EVTOPTDHF25619 } + add_blood_splatter_effect = yes + if = { + limit = { + NOT = { trait = craven } + } + add_trait = craven + } + tiered_piety_negative_effect = yes + tiered_prestige_negative_effect = yes + WL_ritual_hunt_cleanup_effect = yes + reverse_opinion = { + who = event_target:scoped_WL_co_hunter + name = opinion_coward + years = 15 + } + ai_chance = { factor = 20 } + } +} + +#Prey has been killed. +character_event = { + id = HF.25620 + title = EVTTITLEHF25600 + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + text = EVTDESCAHF25620 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + text = EVTDESCBHF25620 + } + desc = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + text = EVTDESCCHF25620 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + text = EVTDESCDHF25620 + } + + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + #Pick trophy (dyn modifier). + #Burn carcass to the gods./(Finns) Celebration of the Bear. + #Take meat to share with society members. + #(Tengri) search nest. + + option = { #Pick trophy. + name = EVTOPTAHF25620 + if = { + limit = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + add_character_modifier = { + name = ritual_hunt_trophy_wolf + duration = 36500 + } + } + if = { + limit = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + add_character_modifier = { + name = ritual_hunt_trophy_eagle + duration = 36500 + } + } + if = { + limit = { + has_character_flag = flag_hunting_bear_finnish + } + add_character_modifier = { + name = ritual_hunt_trophy_bear + duration = 36500 + } + } + if = { + limit = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + add_character_modifier = { + name = ritual_hunt_trophy_lion + duration = 36500 + } + } + tiered_prestige_reward_effect = yes + ai_chance = { factor = 20 } + } + option = { #Burn carcass to the gods./(Finns) Celebration of the Bear. + name = { + text = EVTOPTBHF25620_A + trigger = { + NOT = { + has_character_flag = flag_hunting_bear_finnish + } + } + } + name = { + text = EVTOPTBHF25620_B + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + } + if = { + limit = { + society_rank == 1 + } + piety = 25 + } + else_if = { + limit = { + society_rank == 2 + } + piety = 50 + } + else_if = { + limit = { + society_rank == 3 + } + piety = 75 + } + else_if = { + limit = { + society_rank == 4 + } + piety = 100 + } + + if = { + limit = { has_character_flag = flag_hunting_bear_finnish OR = { religion = finnish_pagan religion = finnish_pagan_reformed } } + hidden_tooltip = { character_event = { id = HF.25626 } } #Fluff. + } + ai_chance = { factor = 20 } + } + option = { #Take meat to share with society members. + name = EVTOPTCHF25620 + if = { + limit = { + society_rank == 1 + } + prestige = 50 + } + else_if = { + limit = { + society_rank == 2 + } + prestige = 100 + } + else_if = { + limit = { + society_rank == 3 + } + prestige = 150 + } + else_if = { + limit = { + society_rank == 4 + } + prestige = 250 + } + + hidden_tooltip = { character_event = { id = HF.25628 } } #Fluff. + ai_chance = { factor = 20 } + } + option = { #Tengri finds eagle. + name = EVTOPTDHF25620 + trigger = { has_character_flag = flag_hunting_eagle_tengri OR = { religion = tengri_pagan religion = tengri_pagan_reformed } } + custom_tooltip = { text = TT_EVTOPTDHF252620 } + hidden_tooltip = { character_event = { id = HF.25629 } } #Fluff. + ai_chance = { factor = 50 } + } + + after = { + add_legend_progress_minor_effect = yes + WL_ritual_hunt_cleanup_effect = yes + if = { + limit = { event_target:scoped_WL_co_hunter = { is_alive = yes } } + reverse_opinion = { + who = event_target:scoped_WL_co_hunter + modifier = opinion_hunted_with_me + years = 8 + } + } + } +} + +#Prey has been killed, but it has wounded you and killed the other. +character_event = { + id = HF.25621 + title = EVTTITLEHF25600 + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + text = EVTDESCAHF25621 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + text = EVTDESCBHF25621 + } + desc = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + text = EVTDESCCHF25621 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + text = EVTDESCDHF25621 + } + + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + #Pick trophy (dyn modifier). + #Burn carcass to the gods./(Finns) Celebration of the Bear. + #Take meat to share with society members. + #(Tengri) search nest. + + option = { #Pick trophy. + name = EVTOPTAHF25620 + if = { + limit = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + add_character_modifier = { + name = ritual_hunt_trophy_wolf + duration = 36500 + } + } + if = { + limit = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + add_character_modifier = { + name = ritual_hunt_trophy_eagle + duration = 36500 + } + } + if = { + limit = { + has_character_flag = flag_hunting_bear_finnish + } + add_character_modifier = { + name = ritual_hunt_trophy_bear + duration = 36500 + } + } + if = { + limit = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + add_character_modifier = { + name = ritual_hunt_trophy_lion + duration = 36500 + } + } + tiered_prestige_reward_effect = yes + WL_ritual_hunt_cleanup_effect = yes + ai_chance = { factor = 20 } + } + option = { #Burn carcass to the gods./(Finns) Celebration of the Bear. + name = { + text = EVTOPTBHF25620_A + trigger = { + NOT = { + has_character_flag = flag_hunting_bear_finnish + } + } + } + name = { + text = EVTOPTBHF25620_B + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + } + if = { + limit = { + society_rank == 1 + } + piety = 25 + } + else_if = { + limit = { + society_rank == 2 + } + piety = 50 + } + else_if = { + limit = { + society_rank == 3 + } + piety = 75 + } + else_if = { + limit = { + society_rank == 4 + } + piety = 100 + } + + if = { + limit = { has_character_flag = flag_hunting_bear_finnish } + hidden_tooltip = { character_event = { id = HF.25626 } } #Fluff. + } + ai_chance = { factor = 20 } + } + option = { #Take meat to share with society members. + name = EVTOPTCHF25620 + if = { + limit = { + society_rank == 1 + } + prestige = 50 + } + else_if = { + limit = { + society_rank == 2 + } + prestige = 100 + } + else_if = { + limit = { + society_rank == 3 + } + prestige = 150 + } + else_if = { + limit = { + society_rank == 4 + } + prestige = 250 + } + + hidden_tooltip = { character_event = { id = HF.25628 } } #Fluff. + ai_chance = { factor = 20 } + } + option = { #Tengri finds eagle. + name = EVTOPTDHF25620 + trigger = { has_character_flag = flag_hunting_eagle_tengri } + custom_tooltip = { text = TT_EVTOPTDHF252620 } + hidden_tooltip = { character_event = { id = HF.25629 } } #Give pet. + ai_chance = { factor = 50 } + } + + after = { + if = { + limit = { event_target:scoped_WL_co_hunter = { is_alive = yes } } + event_target:scoped_WL_co_hunter = { death = { death_reason = death_accident_generic_beast } } + } + if = { + limit = { NOT = { trait = wounded } } + add_trait = wounded + } + else_if = { + limit = { trait = wounded has_dlc = "Reapers" } + if = { + limit = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + NOT = { trait = blinded } + } + add_trait = blinded + } + else = { + add_trait = mangled + } + } + else_if = { + limit = { trait = wounded NOT = { has_dlc = "Reapers" } } + if = { + limit = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + NOT = { trait = blinded } + } + add_trait = blinded + } + else = { + add_trait = maimed + } + } + add_legend_progress_minor_effect = yes + } +} + +#Prey has fled, after wounding you and killing the other guy. +character_event = { + id = HF.25622 + title = EVTTITLEHF25600 + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + text = EVTDESCAHF25622 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + text = EVTDESCBHF25622 + } + desc = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + text = EVTDESCCHF25622 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + text = EVTDESCDHF25622 + } + + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + option = { + name = EVTOPTAHF25622 + tiered_prestige_negative_effect = yes + if = { + limit = { event_target:scoped_WL_co_hunter = { is_alive = yes } } + event_target:scoped_WL_co_hunter = { death = { death_reason = death_accident_generic_beast } } + } + if = { + limit = { NOT = { trait = wounded } } + add_trait = wounded + } + else_if = { + limit = { trait = wounded has_dlc = "Reapers" } + if = { + limit = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + NOT = { trait = blinded } + } + add_trait = blinded + } + else = { + add_trait = mangled + } + } + else_if = { + limit = { trait = wounded NOT = { has_dlc = "Reapers" } } + if = { + limit = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + NOT = { trait = blinded } + } + add_trait = blinded + } + else = { + add_trait = maimed + } + } + WL_ritual_hunt_cleanup_effect = yes + ai_chance = { factor = 20 } + } +} + +#Prey kills both hunters. +character_event = { + id = HF.25623 + title = EVTTITLEHF25600 + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + text = EVTDESCAHF25623 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + text = EVTDESCBHF25623 + } + desc = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + text = EVTDESCCHF25623 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + text = EVTDESCDHF25623 + } + + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + option = { + name = EVTOPTAHF25623 + death = { death_reason = death_accident_generic_beast } + if = { + limit = { event_target:scoped_WL_co_hunter = { is_alive = yes } } + event_target:scoped_WL_co_hunter = { death = { death_reason = death_accident_generic_beast } } + } + WL_ritual_hunt_cleanup_effect = yes + ai_chance = { factor = 20 } + } +} + +#Fed Co-hunter to flee beast. +character_event = { + id = HF.25624 + title = EVTTITLEHF25600 + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + text = EVTDESCAHF25624 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + text = EVTDESCBHF25624 + } + desc = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + text = EVTDESCCHF25624 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + text = EVTDESCDHF25624 + } + + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + option = { + name = EVTOPTAHF25624 + if = { + limit = { + society_rank == 1 + } + prestige = -50 + detract_society_currency_tiny_effect = yes + } + else_if = { + limit = { + society_rank == 2 + } + prestige = -100 + detract_society_currency_minor_effect = yes + } + else_if = { + limit = { + society_rank == 3 + } + prestige = -150 + detract_society_currency_medium_effect = yes + } + else_if = { + limit = { + society_rank == 4 + } + prestige = -200 + detract_society_currency_major_effect = yes + } + if = { + limit = { event_target:scoped_WL_co_hunter = { is_alive = yes } } + event_target:scoped_WL_co_hunter = { death = { death_reason = death_accident_generic_beast } } + } + WL_ritual_hunt_cleanup_effect = yes + ai_chance = { factor = 20 } + } +} + +#Fed Co-hunter to flee beast, but still wounded. +character_event = { + id = HF.25625 + title = EVTTITLEHF25600 + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + text = EVTDESCAHF25624 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + text = EVTDESCBHF25624 + } + desc = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + text = EVTDESCCHF25624 + } + desc = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + text = EVTDESCDHF25624 + } + + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_wolf_norse + has_character_flag = flag_hunting_wolf_baltic + has_character_flag = flag_hunting_wolf_hellenic + } + } + picture = GFX_evt_mysterious_forest + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + } + picture = GFX_evt_desert + } + picture = { + trigger = { + has_character_flag = flag_hunting_bear_finnish + } + picture = GFX_evt_midwinter_blot_oldgods + } + picture = { + trigger = { + OR = { + has_character_flag = flag_hunting_lion_west_african + has_character_flag = flag_hunting_lion_zun + } + } + picture = GFX_evt_bandits + } + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + } + + fail_trigger_effect = { + WL_ritual_hunt_cleanup_effect = yes + } + + option = { + name = EVTOPTAHF25625 + if = { + limit = { + society_rank == 1 + } + prestige = -50 + detract_society_currency_tiny_effect = yes + } + else_if = { + limit = { + society_rank == 2 + } + prestige = -100 + detract_society_currency_minor_effect = yes + } + else_if = { + limit = { + society_rank == 3 + } + prestige = -150 + detract_society_currency_medium_effect = yes + } + else_if = { + limit = { + society_rank == 4 + } + prestige = -200 + detract_society_currency_major_effect = yes + } + if = { + limit = { NOT = { trait = wounded } } + add_trait = wounded + } + else_if = { + limit = { trait = wounded has_dlc = "Reapers" } + if = { + limit = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + NOT = { trait = blinded } + } + add_trait = blinded + } + else = { + add_trait = mangled + } + } + else_if = { + limit = { trait = wounded NOT = { has_dlc = "Reapers" } } + if = { + limit = { + OR = { + has_character_flag = flag_hunting_eagle_slavic + has_character_flag = flag_hunting_eagle_tengri + has_character_flag = flag_hunting_eagle_bon + } + NOT = { trait = blinded } + } + add_trait = blinded + } + else = { + add_trait = maimed + } + } + if = { + limit = { event_target:scoped_WL_co_hunter = { is_alive = yes } } + event_target:scoped_WL_co_hunter = { death = { death_reason = death_accident_generic_beast } } + } + WL_ritual_hunt_cleanup_effect = yes + ai_chance = { factor = 20 } + } +} + +#Bear burning. +character_event = { + id = HF.25626 + title = EVTTITLEHF25600 + desc = EVTDESCAHF25626 + picture = GFX_evt_mysterious_forest + border = GFX_event_normal_frame_war + portrait = event_target:scoped_WL_co_hunter + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25626 + add_character_modifier = { + name = finnish_bear_burning + years = 2 + } + } +} + +#HF.25627 taken by double event. + +#Bringing spoils back to warrior lodge. +character_event = { + id = HF.25628 + title = EVTTITLEHF25600 + desc = EVTDESCAHF25628 + picture = GFX_evt_feast + border = GFX_event_normal_frame_war + portrait = ROOT + hide_new = yes + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25628 + custom_tooltip = { text = TT_EVTOPTAHF25628 } + hidden_tooltip = { + any_society_member = { + opinion = { + who = ROOT + modifier = opinion_shared_spoils + years = 5 + } + } + } + } +} + +#Taking eagle pet. +character_event = { + id = HF.25629 + title = EVTTITLEHF25600 + desc = EVTDESCAHF25629 + picture = GFX_evt_desert + border = GFX_event_normal_frame_war + portrait = ROOT + hide_new = yes + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25629 + custom_tooltip = { text = TT_EVTOPTAHF25629 } + hidden_tooltip = { + character_event = { id = HF.25630 days = 130 } #Growth. + } + ai_chance = { + factor = 100 + } + } + option = { + name = EVTOPTBHF25629 + ai_chance = { + factor = 0 + } + } +} + +#Eagle has grown. +character_event = { + id = HF.25630 + desc = EVTDESCAHF25630 + picture = GFX_evt_falconing + border = GFX_event_normal_frame_war + portrait = ROOT + hide_new = yes + + is_triggered_only = yes + + option = { + name = EVTOPTAHF25630 + add_character_modifier = { + name = pet_hunting_eagle + duration = -1 + } + hidden_tooltip = { + character_event = { id = HF.25631 days = 7300 random = 1500 } #Death. + } + } +} + +#Eagle died of old age. +character_event = { + id = HF.25631 + desc = EVTDESCAHF25631 + picture = GFX_evt_falconing + border = GFX_event_normal_frame_war + portrait = ROOT + hide_new = yes + + is_triggered_only = yes + + option = { # Invite the whole court + name = EVTOPTAHF25631 + custom_tooltip = { text = EVTOPTAHF25631_TOOLTIP } + scaled_wealth = -0.6 + if = { + limit = { + NOT = { + trait = greedy + trait = charitable + } + } + add_trait = charitable + } + + if = { + limit = { trait = greedy } + remove_trait = greedy + } + remove_character_modifier = pet_hunting_eagle + } + option = { # Regular funeral + name = EVTOPTBHF25631 + custom_tooltip = { text = EVTOPTBHF25631_TOOLTIP } + remove_character_modifier = pet_hunting_eagle + } + after = { + send_new_eagle_event_effect = yes #Only for certain bloodlines...! + } +} diff --git a/MOD/Witcher/events/hf_warrior_lodge_events.txt b/MOD/Witcher/events/hf_warrior_lodge_events.txt new file mode 100644 index 000000000..f0aa9026a --- /dev/null +++ b/MOD/Witcher/events/hf_warrior_lodge_events.txt @@ -0,0 +1,3297 @@ +########################################### +# # +# Warrior Lodge events # +# Fired from all overrun # +# # +# ID HF.10100-HF.10200 # +# # +########################################### + +namespace = HF + +#From on_character_ask_to_join_society +#Set up for finding an appropriate Hero character, who will tell the new recruit about the initation duel +character_event = { + id = HF.10003 + is_triggered_only = yes + hide_window = yes + #ai = no + + trigger = { + NOT = { has_character_flag = is_being_recruited_to_warrior_lodge_by_parent } + NOT = { has_character_flag = awaiting_initiation_trial } + FROM = { leader = { is_member_of_any_warrior_lodge_trigger = yes } } + } + + immediate = { + FROM = { save_event_target_as = warrior_lodge_to_join } #used later for joining correct society + set_character_flag = society_join_block + set_character_flag = awaiting_initiation_trial + save_event_target_as = new_recruit + + if = { #Find a non-prisoner member + limit = { FROM = { leader = { prisoner = yes } } } + FROM = { + random_society_member = { + limit = { + society_member_of = event_target:warrior_lodge_to_join + society_rank == 4 + prisoner = no + } + character_event = { id = HF.10004 } + break = yes + } + random_society_member = { + limit = { + society_member_of = event_target:warrior_lodge_to_join + society_rank == 3 + prisoner = no + } + character_event = { id = HF.10004 } + break = yes + } + random_society_member = { + limit = { + society_member_of = event_target:warrior_lodge_to_join + society_rank == 2 + prisoner = no + } + character_event = { id = HF.10004 } + break = yes + } + random_society_member = { + limit = { + society_member_of = event_target:warrior_lodge_to_join + society_rank == 1 + prisoner = no + } + character_event = { id = HF.10004 } + break = yes + } + } + #Everyone is somehow in prison so just use the leader anyway + } + FROM = { leader = { character_event = { id = HF.10004 } } } + } +} + +#Event for hero character (unless MP, this is an AI) +character_event = { + id = HF.10004 + desc = EVTDESC_HF_10004 + picture = GFX_evt_melee + border = GFX_event_normal_frame_war + is_triggered_only = yes + + immediate = { hidden_effect = { save_event_target_as = hero_character } } + + option = { + name = EVTOPTA_HF_10004 #I'll put on my most intimidating face + custom_tooltip = { text = EVTOPTA_HF_10004_TT } + add_legend_progress_trivial_effect = yes + hidden_effect = { + event_target:new_recruit = { character_event = { id = HF.10005 } } #sends event to player + } + } +} + + +#Do you want to accept the challenge to fight a member of the society, or not? +character_event = { + id = HF.10005 + desc = EVTDESC_HF_10005 + picture = GFX_evt_teaching_moment + border = GFX_event_normal_frame_war + is_triggered_only = yes + + immediate = { + if = { + limit = { + any_owned_bloodline = { + has_bloodline_flag = bloodline_legendary_warrior + } + } + random_owned_bloodline = { + limit = { + has_bloodline_flag = bloodline_legendary_warrior + } + preferred_limit = { + founder = { NOT = { character = ROOT } } + } + founder = { save_event_target_as = founder_target } + } + } + } + + + desc = { + text = EVTDESC_HF_10005 #Default desc + trigger = { + NOT = { + any_owned_bloodline = { + has_bloodline_flag = bloodline_legendary_warrior + } + } + } + } + desc = { + text = EVTDESC_HF_10005_bloodline # Bloodline special desc + trigger = { + any_owned_bloodline = { + has_bloodline_flag = bloodline_legendary_warrior + } + } + } + + option = { #I'll gladly fight to prove myself! + name = { + text = EVTOPTA_HF_10005 #default "Yeah, sure" + trigger = { + NOT = { + any_owned_bloodline = { + has_bloodline_flag = bloodline_legendary_warrior + } + } + } + } + name = { + text = EVTOPTA_HF_10005_bloodline + trigger = { + any_owned_bloodline = { + has_bloodline_flag = bloodline_legendary_warrior + } + } + } + custom_tooltip = { text = EVTOPTA_HF_10005_TT } + hidden_effect = { + event_target:hero_character = { #Sends notification to the hero character + set_character_flag = they_accepted@ROOT + character_event = { id = HF.10006 } + } + } + + #FALLBACK: + if = { #If FROM is no longer alive, clear relevant flags, etc... + limit = { FROM = { NOT = { is_alive = yes } } } + reset_warrior_lodge_joining_chain_effect = yes + } + ai_chance = { + factor = 100 + } + } + option = { #I changed my mind... + name = EVTOPTB_HF_10005 + custom_tooltip = { text = EVTOPTB_HF_10005_TT } + + tooltip = { + reverse_opinion = { + who = event_target:hero_character + modifier = opinion_disappointed + years = 5 + } + } + ai_chance = { + factor = 1 + modifier = { + factor = 0 + has_character_flag = is_being_recruited_to_warrior_lodge_by_parent + } + } + + hidden_effect = { + clr_character_flag = society_join_block + clr_character_flag = awaiting_initiation_trial + event_target:hero_character = { #Sends notification to the hero character + set_character_flag = they_declined@ROOT + character_event = { id = HF.10006 } + } + } + } +} + +#The new recruit accepted/chickened out (for the hero character) +character_event = { + id = HF.10006 + picture = GFX_evt_melee + border = GFX_event_normal_frame_war + is_triggered_only = yes + + immediate = { + hidden_effect = { #Selects duel targets... + if = { + limit = { has_character_flag = they_accepted@FROM } + any_society_member = { + limit = { same_society_as = ROOT } + score_value = { #Prioritizes selecting a rank 1 member, who's available...! + value = 1 + #Ranks... + additive_modifier = { + society_rank == 1 + value = 100000 + } + additive_modifier = { + society_rank == 2 + value = 1000 + } + additive_modifier = { + society_rank == 3 + value = 10 + } + additive_modifier = { + society_rank == 4 + value = 1 + } + #The fighters should be somewhat evenly matched... + additive_modifier = { + OR = { + AND = { + duelist_skill_is_low_group_trigger = yes + FROM = { duelist_skill_is_low_group_trigger = yes } + } + AND = { + duelist_skill_is_medium_group_trigger = yes + FROM = { duelist_skill_is_medium_group_trigger = yes } + } + AND = { + duelist_skill_is_high_group_trigger = yes + FROM = { duelist_skill_is_high_group_trigger = yes } + } + } + value = 1000 + } + #If recruit is bad duelist, the fighters should be as evenly bad as can be... + additive_modifier = { + OR = { + AND = { + is_the_worst_duelist_trigger = yes + FROM = { is_the_worst_duelist_trigger = yes } + } + AND = { + is_terrible_duelist_trigger = yes + FROM = { is_terrible_duelist_trigger = yes } + } + AND = { + is_bad_duelist_trigger = yes + FROM = { is_bad_duelist_trigger = yes } + } + } + value = 1000 + } + #Relationship with FROM... (so new ones can form) + additive_modifier = { + NOR = { + is_rival = FROM + is_lover = FROM + is_friend = FROM + } + value = 100 + } + additive_modifier = { + OR = { + reverse_has_opinion_modifier = { who = FROM modifier = opinion_hate } + reverse_has_opinion_modifier = { who = FROM modifier = opinion_tortured_me } + reverse_has_opinion_modifier = { who = FROM modifier = opinion_mutilated_me } + reverse_has_opinion_modifier = { who = FROM modifier = opinion_imprisoned } + } + value = 100 + } + additive_modifier = { + FROM = { PREV = { prev_is_lonely_this_romance_makes_sense_trigger = yes } } + value = 200 + } + #Shouldn't be in prison/incapable, etc... + additive_modifier = { + block_general_event_trigger = yes + value = -5000 + } + #Shouldn't be ROOT in this case... + additive_modifier = { + character = ROOT + value = -1000 + } + #Should *absolutely* preferably be an AI... + additive_modifier = { + NOT = { ai = yes } + value = -1000 + } + #Shouldn't be sick, etc... + additive_modifier = { + value = -500 + OR = { + has_character_modifier = bedridden_illness + has_character_modifier = severe_illness + character_disease_trigger = yes + has_severe_disability_trigger = yes + } + } + #Shouldn't be prone to dying and breaking the events... + additive_modifier = { + value = -500 + OR = { + age = 60 + is_maimed_trigger = yes #has a maimed trait + } + } + } + save_event_target_as = duel_target + } + } + } + } + + desc = { + text = EVTDESC_HF_10006_yes + trigger = { + has_character_flag = they_accepted@FROM + } + } + desc = { + text = EVTDESC_HF_10006_no + trigger = { + has_character_flag = they_declined@FROM + } + } + + option = { #Let's find someone to duel them! + name = EVTOPTA_HF_10006_yes + custom_tooltip = { text = EVTOPTA_HF_10006_TT_1 } + show_portrait = event_target:duel_target + trigger = { + has_character_flag = they_accepted@FROM + } + } + option = { #That little coward + name = EVTOPTA_HF_10006_no + opinion = { + who = FROM + modifier = opinion_disappointed + years = 5 + } + trigger = { + has_character_flag = they_declined@FROM + } + } + after = { + hidden_effect = { + if = { + limit = { + has_character_flag = they_accepted@FROM + } + event_target:new_recruit = { character_event = { id = HF.10007 } } #send ping to set up duel + } + clr_character_flag = they_accepted@FROM + clr_character_flag = they_declined@FROM + } + } +} + + +#Ping to player to set scopes +character_event = { + id = HF.10007 + hide_window = yes + is_triggered_only = yes + immediate = { + #FALLBACK: + if = { #If FROM is no longer alive, clear relevant flags, etc... + limit = { event_target:duel_target = { NOT = { is_alive = yes } } } + reset_warrior_lodge_joining_chain_effect = yes + } + + set_character_flag = mock_duel + #REQUIRED event targets for setting up duel evaluation! (1 & 2) + save_event_target_as = combatant_1 #the person issuing the duel... + event_target:duel_target = { + save_event_target_as = combatant_2 #the target of the duel... + character_event = { id = HFP.10095 } #player challenges you to a duel + } + } +} + +character_event = { #Hero character's reaction, who then sends acceptance/refusal letter to player + id = HF.10008 + picture = GFX_evt_melee + border = GFX_event_normal_frame_war + is_triggered_only = yes + trigger = { + + } + + immediate = { + + } + + desc = { + text = EVTDESC_HF_10008_they_succeeded_greatly + trigger = { + FROM = { + NOR = { + has_character_flag = was_mildly_injured + has_character_flag = was_actually_injured + has_character_flag = duel_fled + } + } + } + } + desc = { + text = EVTDESC_HF_10008_they_were_mildly_injured + trigger = { + FROM = { has_character_flag = was_mildly_injured } + } + } + desc = { + text = EVTDESC_HF_10008_they_were_seriously_injured + trigger = { + FROM = { has_character_flag = was_actually_injured } + } + } + desc = { + text = EVTDESC_HF_10008_they_fled + trigger = { + FROM = { has_character_flag = duel_fled } + } + } + + option = { + name = { + text = EVTOPTA_HF_10008_impressed + trigger = { + FROM = { + NOR = { + has_character_flag = was_mildly_injured + has_character_flag = was_actually_injured + has_character_flag = duel_fled + } + } + } + } + name = { + text = EVTOPTA_HF_10008_accepting + trigger = { + FROM = { has_character_flag = was_mildly_injured } + } + } + name = { + text = EVTOPTA_HF_10008_surprised + trigger = { + FROM = { has_character_flag = was_actually_injured } + } + } + name = { + text = EVTOPTA_HF_10008_unimpressed + trigger = { + FROM = { has_character_flag = duel_fled } + } + } + if = { + limit = { + NOT = { FROM = { has_character_flag = duel_fled } } + } + custom_tooltip = { text = EVTOPTA_HF_10008_TT } + add_legend_progress_trivial_effect = yes + FROM = { letter_event = { id = HF.10009 days = 5 } } + } + else = { + custom_tooltip = { text = EVTOPTB_HF_10008_TT } + FROM = { letter_event = { id = HF.10010 days = 5 } } + } + } +} + +letter_event = { #SUCCESS: Welcome to the society! + id = HF.10009 + picture = GFX_evt_melee + border = GFX_event_letter_frame_war + is_triggered_only = yes + + trigger = { + NOT = { has_character_flag = show_once_flag } + } + + immediate = { + set_character_flag = show_once_flag + } + + desc = { + text = EVTDESC_HF_10009_succeeded_greatly + trigger = { + NOR = { + has_character_flag = was_mildly_injured + has_character_flag = was_actually_injured + has_character_flag = duel_fled + } + } + } + desc = { + text = EVTDESC_HF_10009_was_mildly_injured + trigger = { has_character_flag = was_mildly_injured } + } + desc = { + text = EVTDESC_HF_10009_was_seriously_injured + trigger = { has_character_flag = was_actually_injured } + } + + option = { + name = EVTOPTA_HF_10009 + + join_society = event_target:warrior_lodge_to_join + + + if = { + limit = { has_character_flag = minor_reward } + add_society_currency_minor_effect = yes + } + if = { + limit = { has_character_flag = medium_reward } + add_society_currency_medium_effect = yes + } + + if = { # Give Sympathy trait if appropriate... + limit = { + NOT = { religion_group = pagan_group } + } + #Give Sympathy trait + add_trait = sympathy_pagans + } + + hidden_effect = { + clr_character_flag = was_actually_injured + clr_character_flag = was_mildly_injured + clr_character_flag = awaiting_initiation_trial + clr_character_flag = duel_fled + clr_character_flag = minor_reward + clr_character_flag = medium_reward + clr_character_flag = show_once_flag + } + + ### For characters who were recruited by their parents... + if = { + limit = { + has_character_flag = is_being_recruited_to_warrior_lodge_by_parent + event_target:recruiting_parent = { is_alive = yes } + } + custom_tooltip = { text = your_parent_will_be_proud_tt } + tooltip = { #You are happy to have been recruited, and they are impressed you succeeded... + opinion = { + modifier = opinion_grateful + who = event_target:recruiting_parent + years = 5 + } + reverse_opinion = { + modifier = opinion_impressed + who = event_target:recruiting_parent + years = 5 + } + } + + set_character_flag = passed_initiation + event_target:recruiting_parent = { character_event = { id = HF.10013 } } + } + ### + clr_character_flag = society_join_block + } +} + +letter_event = { #FAILURE: You can't sit with us + id = HF.10010 + desc = EVTDESC_HF_10010 + picture = GFX_evt_melee + border = GFX_event_letter_frame_war + is_triggered_only = yes + trigger = { + + } + + immediate = { + + } + + option = { + name = EVTOPTA_HF_10010 + custom_tooltip = { text = EVTOPTA_HF_10010_TT } #You will be blocked from joining for 10 years + #add blocking modifier (hidden) + + hidden_effect = { + clr_character_flag = was_actually_injured + clr_character_flag = was_mildly_injured + clr_character_flag = awaiting_initiation_trial + clr_character_flag = duel_fled + clr_character_flag = minor_reward + clr_character_flag = medium_reward + } + + if = { #For characters who were recruited by their parents... + limit = { + has_character_flag = is_being_recruited_to_warrior_lodge_by_parent + event_target:recruiting_parent = { is_alive = yes } + } + custom_tooltip = { text = notify_parent_recruiter_tt } #Your parent will be notified. + set_character_flag = failed_initiation + event_target:recruiting_parent = { character_event = { id = HF.10014 } } + } + clr_character_flag = society_join_block + } +} + +#In case the hero character has died or something odd happens: +### Gating event on player to make sure societies are joined correctly! [sent from clean up, after duels] +character_event = { + id = HF.10011 + hide_window = yes + is_triggered_only = yes + immediate = { + #sends outcome of the initiation duel to leader, who instantly sends a response to the player: Join us!/Banned for 10 years! + if = { #check if original hero is still around... + limit = { + event_target:hero_character = { + block_general_event_trigger = no + } + } + event_target:hero_character = { character_event = { id = HF.10008 } } + } + else = { #Otherwise, look elsewhere... + if = { #Find a non-prisoner member to send the response... + limit = { event_target:warrior_lodge_to_join = { leader = { prisoner = yes } } } + event_target:warrior_lodge_to_join = { + random_society_member = { + limit = { + society_member_of = event_target:warrior_lodge_to_join + society_rank == 4 + prisoner = no + } + save_event_target_as = hero_character + character_event = { id = HF.10008 } + break = yes + } + random_society_member = { + limit = { + society_member_of = event_target:warrior_lodge_to_join + society_rank == 3 + prisoner = no + } + save_event_target_as = hero_character + character_event = { id = HF.10008 } + break = yes + } + random_society_member = { + limit = { + society_member_of = event_target:warrior_lodge_to_join + society_rank == 2 + prisoner = no + } + save_event_target_as = hero_character + character_event = { id = HF.10008 } + break = yes + } + random_society_member = { + limit = { + society_member_of = event_target:warrior_lodge_to_join + society_rank == 1 + prisoner = no + } + save_event_target_as = hero_character + character_event = { id = HF.10008 } + break = yes + } + } + #Everyone is somehow in prison so just use the leader anyway (there was no "break = yes") + } + event_target:warrior_lodge_to_join = { leader = { character_event = { id = HF.10008 } } } + event_target:hero_character = { character_event = { id = HF.10008 } } + } + } +} + + +######################################################## +# Recruit/Induct your Child into your Warrior Lodge +######################################################## +character_event = { #Fires for the adult child (from decision) + id = HF.10016 + desc = EVTDESC_HF_10016 + picture = GFX_evt_melee + border = GFX_event_normal_frame_war + is_triggered_only = yes + + trigger = { + + } + + immediate = { + #Find a non-prisoner member + any_society_member = { + limit = { + society_member_of = event_target:warrior_lodge_to_join + prisoner = no + } + score_value = { #Prioritizes selecting some kind of warrior... + value = 10 + warrior_hero_score = yes + } + save_event_target_as = hero_character + } + if = { #If it failed to save anyone... + limit = { event_target:hero_character = { always = no } } + #Means everyone is somehow in prison so just use the leader anyway...? + event_target:warrior_lodge_to_join = { leader = { save_event_target_as = hero_character } } + } + } + + option = { + name = EVTOPTA_HF_10016 #YES - It's what I always wanted + custom_tooltip = { text = EVTOPTA_HF_10016_TT } + + event_target:hero_character = { + character_event = { id = HF.10004 } #Send regular "I wanna join"-event to high-ranking member + } + set_character_flag = accepted_trial + + ai_chance = { + factor = 100 + #warrior_recruit_score = yes + modifier = { + factor = 0 + is_in_society = yes + } + } + trigger = { # Kids only say yes if they not already a secret member of some kind... + is_secret_religious_society_member_trigger = no + is_devil_worshiper_trigger = no + NOT = { society_member_of = the_assassins } + } + } + option = { + name = EVTOPTB_HF_10016 #NO - I will carve my own path + custom_tooltip = { text = EVTOPTB_HF_10016_TT } + set_character_flag = refused_trial + + clr_character_flag = society_join_block + clr_character_flag = awaiting_initiation_trial + + hidden_effect = { character_event = { id = HF.10015 days = 365 } } + + ai_chance = { + factor = 10 + modifier = { + factor = 1.5 + trait = stubborn + } + } + trigger = { #Only show this option if parent does *not* have a mission to recruit you (or if you have somehow had time to join a secret society *before* they tried recruiting you)... + OR = { + NOT = { + event_target:recruiting_parent = { + has_quest = quest_warrior_lodge_recruit + quest_target = { character = ROOT } + } + } + is_secret_religious_society_member_trigger = yes + is_devil_worshiper_trigger = yes + society_member_of = the_assassins + } + } + } + + after = { #Answer is relayed to parent... + event_target:recruiting_parent = { + character_event = { id = HF.10012 days = 1 } + } + } +} + +#Delayed clean up event (for child who turned down recruitment) +character_event = { + id = HF.10015 + hide_window = yes + is_triggered_only = yes + immediate = { + clr_character_flag = is_being_recruited_to_warrior_lodge_by_parent + clr_character_flag = refused_trial + } +} + +#For the parent - Child said yes/no. If yes, you will updated after the trial again. +character_event = { + id = HF.10012 + picture = GFX_evt_melee + border = GFX_event_normal_frame_war + is_triggered_only = yes + + desc = { + text = EVTDESC_HF_10012_A + trigger = { + FROM = { has_character_flag = accepted_trial } + NOT = { event_target:hero_character = { character = ROOT } } + } + } + desc = { + text = EVTDESC_HF_10012_A_hero_is_parent + trigger = { + FROM = { has_character_flag = accepted_trial } + event_target:hero_character = { character = ROOT } + } + } + desc = { + text = EVTDESC_HF_10012_B + trigger = { + FROM = { has_character_flag = refused_trial } + NOT = { event_target:hero_character = { character = ROOT } } + } + } + desc = { + text = EVTDESC_HF_10012_B_hero_is_parent + trigger = { + FROM = { has_character_flag = refused_trial } + event_target:hero_character = { character = ROOT } + } + } + + option = { + + name = { + text = EVTOPTA_HF_10012_1 #I was just waiting for you to be ready! + trigger = { event_target:hero_character = { NOT = { character = ROOT } } } + } + name = { + text = EVTOPTA_HF_10012_2 #We'll do this the right way. + trigger = { event_target:hero_character = { character = ROOT } } + } + if = { + limit = { event_target:hero_character = { NOT = { character = ROOT } } } + custom_tooltip = { text = EVTOPTA_HF_10012_TT } + show_portrait = event_target:hero_character + } + + trigger = { FROM = { has_character_flag = accepted_trial } } + } + option = { + name = EVTOPTB_HF_10012 #Why, you ungrateful little... + custom_tooltip = { text = EVTOPTB_HF_10012_TT } + if = { + limit = { event_target:hero_character = { NOT = { character = ROOT } } } + show_portrait = event_target:hero_character + } + trigger = { FROM = { has_character_flag = refused_trial } } + } + + after = { + FROM = { + clr_character_flag = accepted_trial + clr_character_flag = refused_trial + } + } +} + +#For the parent - Child made it through the duel and has joined the Warrior Lodge! +character_event = { + id = HF.10013 + picture = GFX_evt_camaraderie + desc = EVTDESC_HF_10013_A #"I am one of you guys now!" + border = GFX_event_normal_frame_war + is_triggered_only = yes + + trigger = { + NOT = { has_character_flag = show_only_once@FROM } + } + + immediate = { + set_character_flag = show_only_once@FROM + } + + option = { + name = EVTOPTA_HF_10013 #I knew you had it in you. + custom_tooltip = { text = EVTOPTA_HF_10013_TT } + prestige = 20 + reverse_opinion = { + modifier = opinion_grateful + who = FROM + years = 5 + } + opinion = { + modifier = opinion_impressed + who = FROM + years = 5 + } + if = { + limit = { + has_quest = quest_warrior_lodge_recruit + quest_target = { character = FROM } + } + clr_quest = quest_warrior_lodge_recruit + add_society_currency_medium_effect = yes + } + add_legend_progress_trivial_effect = yes + trigger = { same_society_as = FROM } + } + + ### Only if left society: ### + option = { + name = EVTOPTB_HF_10013 #You make me regret my decision to leave... + custom_tooltip = { text = EVTOPTB_HF_10013_TT } + if = { + limit = { NOT = { trait = depressed } } + random = { + chance = 10 + add_trait_depressed_effect = yes + } + } + trigger = { NOT = { same_society_as = FROM } } + } + option = { + name = EVTOPTC_HF_10013 #I'm not impressed. + custom_tooltip = { text = EVTOPTC_HF_10013_TT } + + if = { + limit = { + NOT = { trait = kind } + NOT = { trait = cruel } + } + add_trait = cruel + } + else_if = { + limit = { + trait = kind + } + remove_trait = kind + } + reverse_opinion = { + modifier = opinion_disappointed + who = FROM + years = 5 + } + + trigger = { NOT = { same_society_as = FROM } } + } + + after = { + FROM = { + clr_character_flag = passed_initiation + clr_character_flag = is_being_recruited_to_warrior_lodge_by_parent + hidden_tooltip = { character_event = { id = HF.25400 } } #Flavor Tombola for underage recruits. + } + clr_character_flag = show_only_once@FROM + } +} + +#For the parent - Child somehow failed to join Warrior Lodge... +character_event = { + id = HF.10014 + picture = GFX_evt_teaching_moment + border = GFX_event_normal_frame_war + is_triggered_only = yes + + trigger = { + NOT = { has_character_flag = show_only_once@FROM } + } + + immediate = { + set_character_flag = show_only_once@FROM + } + + desc = { + text = EVTDESC_HF_10014_A + trigger = { + FROM = { NOT = { has_character_flag = chickened_out } } + } + } + desc = { + text = EVTDESC_HF_10014_B + trigger = { + FROM = { has_character_flag = chickened_out } + } + } + + + option = { + name = EVTOPTA_HF_10014 #I'm still proud to call you family. + custom_tooltip = { text = EVTOPTA_HF_10014_TT } + + if = { + limit = { + NOT = { trait = kind } + NOT = { trait = cruel } + } + add_trait = kind + } + else_if = { + limit = { + trait = cruel + } + remove_trait = cruel + } + FROM = { set_character_flag = parent_was_supportive } + } + option = { + name = EVTOPTB_HF_10014 #I expected more, honestly... + custom_tooltip = { text = EVTOPTB_HF_10014_TT } + + prestige = 20 + + if = { + limit = { + NOT = { trait = kind } + NOT = { trait = cruel } + } + add_trait = cruel + } + else_if = { + limit = { + trait = kind + } + remove_trait = kind + } + else_if = { + limit = { + NOT = { trait = honest } + } + add_trait = honest + } + FROM = { set_character_flag = parent_was_mean } + } + + after = { + if = { + limit = { + has_quest = quest_warrior_lodge_recruit + quest_target = { character = FROM } + } + clr_quest = { id = quest_warrior_lodge_recruit failure = yes } + } + FROM = { + clr_character_flag = failed_initiation + clr_character_flag = chickened_out + clr_character_flag = is_being_recruited_to_warrior_lodge_by_parent + character_event = { id = HF.10017 days = 5 } + } + clr_character_flag = show_only_once@FROM + } +} + +#Adult Child receives parent's reaction to failure to join Warrior Lodge. +character_event = { + id = HF.10017 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_war + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + } + + desc = { + text = EVTDESC_HF_10017_A #They took it well. + trigger = { has_character_flag = parent_was_supportive } + } + desc = { + text = EVTDESC_HF_10017_B #They took it poorly. + trigger = { has_character_flag = parent_was_mean } + } + + ############### Good reaction ######### + option = { + name = EVTOPTA_HF_10017_1 #Family is most important, after all. + if = { + limit = { has_dlc = "Way of Life" } + set_focus = focus_family + } + opinion = { + modifier = comforted_opinion + who = FROM + years = 5 + } + trigger = { has_character_flag = parent_was_supportive } + } + option = { + name = EVTOPTA_HF_10017_2 #I'm lucky to have him/her. + + opinion = { + modifier = comforted_opinion + who = FROM + years = 5 + } + + trigger = { has_character_flag = parent_was_supportive } + } + ############### Poor reaction ######### + option = { + name = EVTOPTB_HF_10017_2 #This is not the end of my story! + + if = { + limit = { NOT = { trait = stressed } } + add_trait = stressed + } + if = { + limit = { NOT = { trait = ambitious } } + add_trait = ambitious + } + + custom_tooltip = { text = EVTOPTB_HF_10017_TT } + trigger = { has_character_flag = parent_was_mean } + } + option = { + name = EVTOPTB_HF_10017_1 #I am an embarrassment. + trigger = { has_character_flag = parent_was_mean } + } +} + + + +######################################################## +# RANK 4 POWER - Choose Military Aspect/Lifestyle trait +######################################################## + +# START & END: Has either Duelist, Strategist, or Hunter already - Replace the existing trait +character_event = { + id = HF.10020 + picture = GFX_evt_armory + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + desc = { + trigger = { trait = duelist } + picture = GFX_evt_battle + text = EVTDESC_HF_10020_duelist + } + + desc = { + trigger = { trait = strategist } + picture = GFX_evt_battle + text = EVTDESC_HF_10020_strategist + } + + desc = { + trigger = { trait = hunter } + picture = GFX_evt_battle + text = EVTDESC_HF_10020_hunter + } + + option = { # Change to Duelist + name = EVTOPTA_HF_10020 + if = { limit = { trait = strategist } + remove_trait = strategist + } + if = { limit = { trait = hunter } + remove_trait = hunter + } + add_trait = duelist + trigger = { NOT = { trait = duelist } } + } + + option = { # Change to Strategist + name = EVTOPTB_HF_10020 + if = { limit = { trait = duelist } + remove_trait = duelist + } + if = { limit = { trait = hunter } + remove_trait = hunter + } + add_trait = strategist + trigger = { NOT = { trait = strategist } } + } + + option = { # Change to Hunter + name = EVTOPTC_HF_10020 + if = { limit = { trait = duelist } + remove_trait = duelist + } + if = { limit = { trait = strategist } + remove_trait = strategist + } + add_trait = hunter + trigger = { NOT = { trait = hunter } } + } + + option = { # Change your mind + name = EVTOPTD_HF_10020 + add_society_currency_minor_effect = yes + } + + after = { clr_character_flag = choosing_military_aspect } +} + + +# START: No Previous Lifestyle trait - Choose one +character_event = { + id = HF.10021 + desc = EVTDESC_HF_10021 + picture = GFX_evt_armory + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + option = { # Choose Dueling + name = EVTOPTA_HF_10021 + show_trait = duelist + + custom_tooltip = { + text = EVTOPTA_HF_10021_tt + character_event = { id = HF.10022 days = 20 random = 20 } + } + + + ai_chance = { + factor = 1 + modifier = { + factor = 1.1 + has_duel_exp_modifier_trigger = yes + } + modifier = { + factor = 3 + trait = brave + } + } + } + + option = { # Choose Strategy + name = EVTOPTB_HF_10021 + + show_trait = strategist + + custom_tooltip = { + text = EVTOPTB_HF_10021_tt + character_event = { id = HF.10025 days = 20 random = 20 } + } + + ai_chance = { + factor = 1 + modifier = { + factor = 1.5 + has_education_stewardship_trigger = yes + } + } + } + + option = { # Choose Hunting + name = EVTOPTC_HF_10021 + + show_trait = hunter + + custom_tooltip = { + text = EVTOPTC_HF_10021_tt + character_event = { id = HF.10030 days = 20 random = 20 } + } + + ai_chance = { + factor = 1 + modifier = { + factor = 5 + trait = falconer + } + } + } + + option = { # Change your mind + name = EVTOPTD_MNM_1900 + + add_society_currency_minor_effect = yes + clr_character_flag = choosing_military_aspect + } +} + +# Become a Duelist +character_event = { + id = HF.10022 + desc = EVTDESC_HF_10022 + picture = GFX_evt_armory + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + immediate = { + hidden_effect = { + if = { + limit = { + any_society_member = { #If there is a character with the desired trait... + same_society_as = ROOT + ai = yes + NOT = { character = ROOT } + NOT = { block_general_event_trigger = yes } + trait = duelist + } + } + random_society_member = { #save them as mentor... + limit = { + same_society_as = ROOT + ai = yes + NOT = { character = ROOT } + NOT = { block_general_event_trigger = yes } + trait = duelist + } + save_event_target_as = mentor_target + } + } + } + } + + option = { + name = EVTOPTA_HF_10022 #I will ask fellow society member for guidance! + + set_character_flag = opt_A + + if = { #if you already have a friend-opinion in place, become friends... + limit = { + OR = { + reverse_has_opinion_modifier = { who = event_target:mentor_target modifier = opinion_budding_friendship } + has_opinion_modifier = { who = event_target:mentor_target modifier = opinion_budding_friendship } + } + } + tooltip = { add_friend = event_target:mentor_target } + } + else_if = { #if they don't hate you, they feel professionally praised... + limit = { + event_target:mentor_target = { + potentially_interested_in_rivaling_root_trigger = no + } + } + tooltip = { + reverse_opinion = { + who = event_target:mentor_target + modifier = opinion_was_praised + years = 10 + } + } + } + else = { #otherwise, they probably hate you, but are strangely flattered by your request... + tooltip = { + reverse_opinion = { + who = event_target:mentor_target + modifier = opinion_strangely_flattered + years = 10 + } + } + } + + prestige = -25 + + if = { + limit = { event_target:mentor_target = { is_alive = yes } } + event_target:mentor_target = { + character_event = { id = HF.10023 } #Ping, before trait is awarded + } + } + else = { #so to not freeze the decision (in case MP and time ticks and they die) + clr_character_flag = choosing_military_aspect + add_society_currency_minor_effect = yes + } + + ai_chance = { + factor = 1 + modifier = { + factor = 2 + has_pleasant_personality_trigger = yes + } + } + + trigger = { + event_target:mentor_target = { always = yes } + } + } + + option = { + name = EVTOPTB_HF_10022 #hire someone to train you + set_character_flag = opt_B + + scaled_wealth = { value = -0.4 min = -40 } + + add_trait_silently_diligent_effect = yes + remove_trait_silently_slothful_effect = yes + + add_character_modifier = { + modifier = rigorous_practice + duration = 3650 + } + + hidden_effect = { + clear_event_target = mentor_target + character_event = { id = HF.10024 days = 60 random = 30 } #Lifestyle achieved: DUELIST + } + + ai_chance = { + factor = 1 + modifier = { + factor = 0.2 + trait = greedy + } + modifier = { + factor = 1.5 + trait = proud + } + modifier = { + factor = 0 + NOT = { wealth = 50 } + } + } + } + + option = { + name = EVTOPTC_HF_10022 #go about it alone + + set_character_flag = opt_C + + hidden_effect = { + clear_event_target = mentor_target + character_event = { id = HF.10024 days = 90 random = 30 } #Lifestyle achieved: DUELIST + } + + ai_chance = { + factor = 1 + } + } +} + +#[Sidetrack from option A] - For the mentor: how involved do you wanna be? +character_event = { + id = HF.10023 + desc = EVTDESC_HF_10023 + picture = GFX_evt_teaching_moment + border = GFX_event_normal_frame_war + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + is_alive = yes + } + + fail_trigger_effect = { + if = { + limit = { NOT = { is_alive = yes } } #so to not freeze the decision + FROM = { + clr_character_flag = choosing_military_aspect + add_society_currency_minor_effect = yes + } + } + } + + option = { + name = EVTOPTA_HF_10023 + add_character_modifier = { + modifier = duelist_mentor + duration = 730 + } + } + option = { + name = EVTOPTB_HF_10023 + + scaled_wealth = { value = -0.2 min = -20 } + } + after = { + if = { #if you already have a friend-opinion in place, become friends... + limit = { + OR = { + reverse_has_opinion_modifier = { who = FROM modifier = opinion_budding_friendship } + has_opinion_modifier = { who = FROM modifier = opinion_budding_friendship } + } + } + add_friend = FROM + } + else_if = { #if you don't hate them, feel professionally praised... + limit = { + FROM = { root_potentially_interested_in_rivaling_this_trigger = no } + } + reverse_opinion = { + who = FROM + modifier = opinion_was_praised + years = 10 + } + } + else = { #otherwise, you probably hate them, but are strangely flattered by the request... + reverse_opinion = { + who = FROM + modifier = opinion_strangely_flattered + years = 10 + } + } + FROM = { character_event = { id = HF.10024 days = 60 random = 30 } } #Lifestyle achieved: DUELIST + } +} + +#Lifestyle achieved: DUELIST +character_event = { + id = HF.10024 + picture = GFX_evt_duel_team + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + desc = { #fallback in case mentor died + trigger = { + has_character_flag = opt_A + FROM = { NOT = { is_alive = yes } } + } + text = EVTDESC_HF_10024_mentor_died + } + desc = { + trigger = { + has_character_flag = opt_A + FROM = { is_alive = yes } + } + text = EVTDESC_HF_10024_A + } + desc = { + trigger = { + OR = { + has_character_flag = opt_B + has_character_flag = opt_C + } + } + text = EVTDESC_HF_10024_B + } + option = { + name = { + text = EVTOPTA_HF_10024_A + trigger = { has_character_flag = opt_A } + } + name = { + text = EVTOPTA_HF_10024_B + trigger = { has_character_flag = opt_B } + } + name = { + text = EVTOPTA_HF_10024_C + trigger = { has_character_flag = opt_C } + } + + hidden_tooltip = { + if = { + limit = { + lifestyle_traits = 1 + } + remove_lifestyle_trait_effect = yes + } + } + add_trait = duelist + add_legend_progress_trivial_effect = yes + clr_character_flag = choosing_military_aspect + clr_character_flag = opt_A + clr_character_flag = opt_B + clr_character_flag = opt_C + } +} + +# Become a Strategist +character_event = { + id = HF.10025 + desc = EVTDESC_HF_10025 + picture = GFX_evt_upsetting_letter + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + option = { + name = EVTOPTA_HF_10025 + + if = { + limit = { + NOT = { trait = patient } + NOT = { trait = wroth } + } + add_trait = patient + } + + add_character_modifier = { + modifier = hitting_the_books + duration = 730 + } + + ai_chance = { + factor = 1 + modifier = { + factor = 4 + trait = brave + } + modifier = { + factor = 3 + trait = ambitious + } + } + } + + option = { + name = EVTOPTB_HF_10025 + + if = { + limit = { + NOT = { trait = diligent } + NOT = { trait = slothful } + } + add_trait = diligent + } + if = { + limit = { + trait = slothful + } + remove_trait = slothful + } + + add_character_modifier = { + modifier = observing_the_troops + duration = 730 + } + + ai_chance = { + factor = 1 + modifier = { + factor = 4 + trait = craven + } + modifier = { + factor = 3 + trait = erudite + } + } + } + after = { + character_event = { id = HF.10026 days = 60 random = 30 } #Lifestyle achieved: STRATEGIST + } +} + +#Lifestyle achieved: STRATEGIST +character_event = { + id = HF.10026 + desc = EVTDESC_HF_10026 + picture = GFX_evt_teaching_moment + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + option = { + name = EVTOPTA_HF_10026 + custom_tooltip = { text = EVTOPTA_HF_10026_tt } + + hidden_tooltip = { + if = { + limit = { + lifestyle_traits = 1 + } + remove_lifestyle_trait_effect = yes + } + } + add_trait = strategist + add_legend_progress_trivial_effect = yes + clr_character_flag = choosing_military_aspect + } +} + +# Become a Hunter +character_event = { + id = HF.10030 + desc = EVTDESC_HF_10030 + picture = GFX_evt_hunt + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + option = { + name = EVTOPTA_HF_10030 + + add_character_modifier = { + modifier = tracker_student + duration = 3650 + } + + ai_chance = { + factor = 1 + modifier = { + factor = 4 + trait = erudite + } + modifier = { + factor = 4 + trait = honest + } + } + } + + option = { + name = EVTOPTB_HF_10030 + + add_character_modifier = { + modifier = trapper_student + duration = 3650 + } + + ai_chance = { + factor = 1 + modifier = { + factor = 5 + trait = deceitful + } + modifier = { + factor = 3 + trait = cynical + } + } + } + after = { + character_event = { id = HF.10031 days = 60 random = 30 } #Lifestyle achieved: HUNTER + } +} + +#Lifestyle achieved: HUNTER +character_event = { + id = HF.10031 + desc = EVTDESC_HF_10031 + picture = GFX_evt_hunt + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + option = { + name = EVTOPTA_HF_10031 + + hidden_tooltip = { + if = { + limit = { + lifestyle_traits = 1 + } + remove_lifestyle_trait_effect = yes + } + } + if = { + limit = { has_nickname = no } + give_nickname = nick_the_hunter + } + add_trait = hunter + add_legend_progress_trivial_effect = yes + clr_character_flag = choosing_military_aspect + } +} + +######################################################## +# RANK 2 POWER - Warrior Training +######################################################## +character_event = { + id = HF.10040 + picture = GFX_evt_teaching_moment + border = GFX_event_normal_frame_war + has_dlc = "Holy Fury" + + is_triggered_only = yes + + desc = { + text = EVTDESC_HF_10040_A + trigger = { has_religion_matching_joined_warrior_lodge_trigger = yes } + } + desc = { + text = EVTDESC_HF_10040_B + trigger = { has_religion_matching_joined_warrior_lodge_trigger = no } + } + + picture = { + picture = GFX_evt_horsemanship + trigger = { + OR = { + society_member_of = warrior_lodge_tengri + society_member_of = warrior_lodge_bon + } + } + } + + immediate = { + hidden_effect = { select_and_save_fellow_society_member_effect = yes } + } + + option = { #Finally! + name = EVTOPTA_HF_10040 + + if = { #To punish characters of the "wrong" religion... + limit = { has_religion_matching_joined_warrior_lodge_trigger = no } + custom_tooltip = { text = EVTOPTA_HF_10040_piety_loss_tt } + piety =-150 + } + + add_warrior_lodge_leader_trait_effect = yes + add_legend_progress_trivial_effect = yes + clr_character_flag = choosing_warrior_training + } +} + +######################################################## +# RANK 1 POWER - Toughness (Bon only) +######################################################## +character_event = { + id = HF.10055 + picture = GFX_evt_religious_exultation + border = GFX_event_normal_frame_war + has_dlc = "Holy Fury" + + is_triggered_only = yes + + immediate = { + hidden_effect = { + random_list = { #Triggered text explains what happened exactly... + 1 = { + trigger = { trait = wounded } # -1 health + set_character_flag = removed_wounded #least severe, so low prio + } + 100 = { + trigger = { trait = severely_injured } # -2 health + set_character_flag = removed_severely_injured + } + 100 = { + trigger = { trait = maimed } # -2 health + set_character_flag = removed_maimed + } + 1000 = { # -3 health + trigger = { trait = mangled } + set_character_flag = removed_mangled #most severe, so high prio + } + 100 = { + trigger = { trait = infection } # -2 health + set_character_flag = removed_infection + } + } + if = { #So you don't get infected from something that is no longer there... + limit = { has_character_flag = pending_infection } + clr_character_flag = pending_infection + } + } + } + + desc = { + text = EVTDESC_HF_10055_WOUNDED + trigger = { has_character_flag = removed_wounded } + } + desc = { + text = EVTDESC_HF_10055_SEVERELY_INJURED + trigger = { has_character_flag = removed_severely_injured } + } + desc = { + text = EVTDESC_HF_10055_MAIMED + trigger = { has_character_flag = removed_maimed } + } + desc = { + text = EVTDESC_HF_10055_MANGLED + trigger = { has_character_flag = removed_mangled } + } + desc = { + text = EVTDESC_HF_10055_INFECTION + trigger = { has_character_flag = removed_infection } + } + + option = { #I feel better! + name = EVTOPTA_HF_10055 + trigger_switch = { + on_trigger = has_character_flag + removed_wounded = { remove_trait = wounded } + removed_severely_injured = { remove_trait = severely_injured } + removed_maimed = { remove_trait = maimed } + removed_mangled = { remove_trait = mangled } + removed_infection = { remove_trait = infection } + } + + # If you have it, also remove one minor injury-modifier (prioritizing the worst one)... + if = { + limit = { has_character_modifier = swollen_wrist } + remove_character_modifier = swollen_wrist # -6 PCR + } + else_if = { + limit = { has_character_modifier = black_eye } + remove_character_modifier = black_eye # -4 PCR + } + else_if = { + limit = { has_character_modifier = swollen_ankle } + remove_character_modifier = swollen_ankle # -4 PCR + } + else_if = { + limit = { has_character_modifier = concussion } + remove_character_modifier = concussion # -4 PCR + } + else_if = { + limit = { has_character_modifier = cracked_ribs } + remove_character_modifier = cracked_ribs # -4 PCR + } + else_if = { + limit = { has_character_modifier = badly_bruised } + remove_character_modifier = badly_bruised # -3 PCR + } + else_if = { + limit = { has_character_modifier = sore_muscles } + remove_character_modifier = sore_muscles # -3 PCR + } + + add_scarred_tiered_effect = yes + } + option = { #[God] is with me. + name = EVTOPTB_HF_10055 + piety = 5 + trigger_switch = { + on_trigger = has_character_flag + removed_wounded = { remove_trait = wounded } + removed_severely_injured = { remove_trait = severely_injured } + removed_maimed = { remove_trait = maimed } + removed_mangled = { remove_trait = mangled } + removed_infection = { remove_trait = infection } + } + add_trait = zealous + add_scarred_tiered_effect = yes + trigger = { NOT = { trait = zealous } } + } + after = { + + hidden_effect = { + random_list = { + 10 = { + sound_effect = toughness_01 + } + 10 = { + sound_effect = toughness_02 + } + 10 = { + sound_effect = toughness_03 + } + } + } + + clr_character_flag = using_toughness + clr_character_flag = removed_wounded + clr_character_flag = removed_severely_injured + clr_character_flag = removed_maimed + clr_character_flag = removed_mangled + clr_character_flag = removed_infection + } +} + +######################################################## +# RANK 1 POWER - Go Berserk (Norse only) +######################################################## +character_event = { + id = HF.10056 + picture = GFX_evt_duel_team + border = GFX_event_normal_frame_war + has_dlc = "Holy Fury" + + is_triggered_only = yes + + portrait = event_target:kinslayer_target + + desc = { + text = EVTDESC_HF_10056_no_harm_1 + trigger = { + has_character_flag = no_harm + event_target:fellow_member = { always = yes } + } + } + desc = { + text = EVTDESC_HF_10056_no_harm_2 + trigger = { + has_character_flag = no_harm + event_target:my_beloved = { always = yes } + } + } + desc = { + text = EVTDESC_HF_10056_casualty + trigger = { + has_character_flag = someone_is_hurt + } + } + + immediate = { + hidden_effect = { + #Play SFX... + if = { + limit = { is_female = yes } + random_list = { + 10 = { + sound_effect = berserk_female_01 + } + 10 = { + sound_effect = berserk_female_02 + } + 10 = { + sound_effect = berserk_female_03 + } + } + } + else = { + random_list = { + 10 = { + sound_effect = berserk_male_01 + } + 10 = { + sound_effect = berserk_male_02 + } + 10 = { + sound_effect = berserk_male_03 + } + } + } + + random_list = { # Decide if someone actually gets hurt... + 2 = { + set_character_flag = someone_is_hurt + } + 8 = { + set_character_flag = no_harm + } + } + random_list = { #Find someone to get caught in the crossfire... + 10 = { + any_courtier_or_vassal = { #event_target:my_beloved (might be platonic, children, etc) + limit = { + is_adult = yes + ai = yes + prisoner = no + } + score_value = { #Prioritizes selecting some kind of loved person... + value = 1 + beloved_target_selection_score = yes + } + score_value = { #Prioritizes selecting some kind of not great warrior... + value = 1 + bad_soldier_outcome_score = yes + } + #Effect: + save_event_target_as = my_beloved + } + } + 10 = { + any_society_member = { #event_target:fellow_member (could be anyone in your society) + limit = { + society_member_of = warrior_lodge_norse + NOT = { character = ROOT } + ai = yes + prisoner = no + } + score_value = { #Prioritizes selecting some kind of not great warrior... + value = 10 + bad_soldier_outcome_score = yes + } + save_event_target_as = fellow_member + } + } + } + if = { + limit = { event_target:my_beloved = { always = yes } } + event_target:my_beloved = { save_event_target_as = kinslayer_target } + } + else_if = { + limit = { event_target:fellow_member = { always = yes } } + event_target:fellow_member = { save_event_target_as = kinslayer_target } + } + } + } + + option = { #I am stronger than ever! + name = { + text = EVTOPTA_HF_10056_1 + trigger = { has_character_flag = no_harm } + } + name = { + text = EVTOPTA_HF_10056_2 + trigger = { has_character_flag = someone_is_hurt } + } + + prestige = 15 + add_trait = berserker + + if = { limit = { has_character_flag = someone_is_hurt } + event_target:kinslayer_target = { + show_scope_change = no + hidden_effect = { + random_list = { #Find someone who cares about the person caught in the fury... + 10 = { + trigger = { + any_spouse = { NOT = { character = ROOT } } + is_married = yes + } + random_spouse = { + limit = { NOT = { character = ROOT } } + save_event_target_as = potential_rival + } + } + 10 = { + trigger = { + any_friend = { NOT = { character = ROOT } } + any_friend = { always = yes } + } + random_friend = { + limit = { NOT = { character = ROOT } } + save_event_target_as = potential_rival + } + } + 10 = { + trigger = { + any_lover = { NOT = { character = ROOT } } + any_lover = { always = yes } + } + random_lover = { + limit = { NOT = { character = ROOT } } + save_event_target_as = potential_rival + } + } + 10 = { + trigger = { + current_heir = { + is_adult = yes + prisoner = no + NOT = { character = ROOT } + is_close_relative = event_target:kinslayer_target + } + } + current_heir = { + save_event_target_as = potential_rival + } + } + 10 = { + trigger = { + any_child = { + is_adult = yes + NOT = { character = ROOT } + } + } + random_child = { + limit = { + is_adult = yes + NOT = { character = ROOT } + } + save_event_target_as = potential_rival + } + } + } + event_target:potential_rival = { character_event = { id = HF.10057 days = 3 } } #Send them a choice to become rival or not... + } + death = { + death_reason = death_berserker_rage + killer = ROOT + } + } + add_kinslayer_trait_effect = yes + } + else = { + if = { + limit = { + event_target:kinslayer_target = { any_spouse = { character = ROOT } } + } + reverse_opinion = { + who = event_target:kinslayer_target + modifier = opinion_impressed_infatuated + years = 10 + } + } + else = { + reverse_opinion = { + who = event_target:kinslayer_target + modifier = opinion_impressed + years = 5 + } + } + } + } + option = { #W-wait, what did I do? [OPTIONAL: "only" maiming the other person] + name = EVTOPTB_HF_10056 + add_trait = berserker + + event_target:kinslayer_target = { + show_scope_change = no + add_maimed_trait_effect = yes + } + + if = { + limit = { trait = cruel } + remove_trait = cruel + } + else = { + add_trait = kind + } + + if = { + limit = { event_target:kinslayer_target = { is_close_relative = ROOT } } + random = { + chance = 5 + add_trait = lunatic + hidden_effect = { character_event = { id = 38304 } }# notify lunatic + } + } + + trigger = { + has_character_flag = someone_is_hurt + NOT = { trait = kind } + } + } + option = { #W-wait, what did I do? [OPTIONAL: "only" maiming the other person] KIND VERSION + name = EVTOPTC_HF_10056 + tooltip_info = kind + add_trait = berserker + + event_target:kinslayer_target = { + show_scope_change = no + add_maimed_trait_effect = yes + } + trigger = { has_character_flag = someone_is_hurt trait = kind } + } + after = { + clr_character_flag = no_harm + clr_character_flag = someone_is_hurt + clr_character_flag = going_berserk + } +} + +# Ping to relation of the casualty. To become rivals, or nah? +character_event = { + id = HF.10057 + desc = EVTDESC_HF_10057 + picture = GFX_evt_duel_team + border = GFX_event_normal_frame_war + has_dlc = "Holy Fury" + is_triggered_only = yes + + trigger = { + NOT = { trait = incapable } + is_alive = yes + } + option = { + name = EVTOPTA_HF_10057 #I will not let this insult stand! + prestige = 10 + tooltip = { add_rival = FROM } + FROM = { character_event = { id = HF.10058 } } + } + option = { + name = EVTOPTB_HF_10057 #My [relation] should have known better. + if = { + limit = { NOT = { trait = cruel } } + add_trait = cruel + } + } +} + +# Someone has sworn to take vengeance upon you (fires for the original berserker)... +character_event = { + id = HF.10058 + desc = EVTDESC_HF_10058 + picture = GFX_evt_upsetting_letter + border = GFX_event_normal_frame_war + has_dlc = "Holy Fury" + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + is_alive = yes + } + + option = { + name = EVTOPTA_HF_10058 #I am sure we will settle this, in time.. + add_rival = FROM + } +} + +### IN PRISON VERSION ### +character_event = { + id = HF.10070 + title = HF_10070_title + picture = GFX_evt_jailbreak + border = GFX_event_normal_frame_war + has_dlc = "Holy Fury" + + is_triggered_only = yes + + portrait = event_target:kinslayer_target + + only_capable = yes + prisoner = yes + + trigger = { + is_adult = yes + OR = { + has_character_modifier = the_oubliette + has_character_modifier = the_dungeon + } + host = { + OR = { + any_courtier = { # There is either another prisoner... + NOT = { character = PREV } + NOT = { character = ROOT } + NOT = { trait = incapable } + prisoner = yes + NOT = { is_friend = ROOT } + ai = yes + } + any_courtier = { #Or someone "unimportant" around... + NOT = { character = PREV } + NOT = { character = ROOT } + NOT = { trait = incapable } + prisoner = no + NOT = { is_friend = ROOT } + NOR = { + is_lover = PREV + is_friend = PREV + is_rival = PREV + } + ai = yes + } + } + } + } + + desc = { + text = EVTDESC_HF_10070_A #You injured yourself, accosting courtier + trigger = { + has_character_flag = hurt_self + event_target:crossfire_target = { prisoner = no } + } + } + desc = { + text = EVTDESC_HF_10070_B #You injured yourself, assaulting fellow prisoner + trigger = { + has_character_flag = hurt_self + event_target:crossfire_target = { prisoner = yes } + } + } + desc = { + text = EVTDESC_HF_10070_C #You succeed to escape, hurting whoever gets in your way + trigger = { + has_character_flag = someone_is_hurt + } + } + + immediate = { + hidden_effect = { + #Play SFX... + if = { + limit = { is_female = yes } + random_list = { + 10 = { sound_effect = berserk_female_01 } + 10 = { sound_effect = berserk_female_02 } + 10 = { sound_effect = berserk_female_03 } + } + } + else = { + random_list = { + 10 = { sound_effect = berserk_male_01 } + 10 = { sound_effect = berserk_male_02 } + 10 = { sound_effect = berserk_male_03 } + } + } + + random_list = { # Decide if someone else actually gets hurt... + 5 = { set_character_flag = someone_is_hurt } + 5 = { set_character_flag = hurt_self } #means *you* get harmed instead + } + + hidden_effect = { + host = { save_event_target_as = host_target } + } + + random_list = { #Find someone to get caught in the crossfire... + 100 = { + trigger = { + host = { + any_courtier = { # There is either another prisoner... + NOT = { character = PREV } + NOT = { character = ROOT } + NOT = { trait = incapable } + prisoner = yes + NOT = { is_friend = ROOT } + ai = yes + } + } + } + host = { + random_courtier = { # There is either another prisoner... + limit = { + NOT = { character = ROOT } + NOT = { character = PREV } + NOT = { trait = incapable } + prisoner = yes + NOT = { is_friend = ROOT } + ai = yes + } + preferred_limit = { + is_unimportant_trigger = yes + } + #Effect: + save_event_target_as = crossfire_target + } + } + } + 10 = { + host = { + random_courtier = { #Or someone "unimportant" around... + limit = { + NOT = { character = ROOT } + NOT = { character = PREV } + NOT = { trait = incapable } + prisoner = no + NOT = { is_friend = ROOT } + NOR = { + is_lover = PREV + is_friend = PREV + is_rival = PREV + } + ai = yes + } + preferred_limit = { + is_unimportant_trigger = yes + } + #Effect: + save_event_target_as = crossfire_target + } + } + } + } + if = { + limit = { event_target:crossfire_target = { always = yes } } + event_target:crossfire_target = { save_event_target_as = kinslayer_target } + } + } + } + + option = { #I am stronger than ever! + name = { + text = EVTOPTA_HF_10070_1 #You injured yourself, accosting courtier + trigger = { + has_character_flag = hurt_self + event_target:crossfire_target = { prisoner = no } + } + } + name = { + text = EVTOPTA_HF_10070_2 #You injured yourself, assaulting fellow prisoner + trigger = { + has_character_flag = hurt_self + event_target:crossfire_target = { prisoner = yes } + } + } + name = { + text = EVTOPTA_HF_10070_3 #You succeed to escape, hurting whoever gets in your way + trigger = { + has_character_flag = someone_is_hurt + } + } + + if = { + limit = { # Hurt courtier and self + has_character_flag = hurt_self + event_target:crossfire_target = { prisoner = no } + } + if = { + limit = { NOT = { trait = one_handed } } + random_list = { + 50 = { + add_trait = one_handed + hidden_effect = { + add_trait = severely_injured + #after all severe injuries... + resolve_severely_injured_effect = yes + } + } + 50 = { + add_character_modifier = { + modifier = swollen_wrist + months = 12 + } + } + } + } + else = { + add_trait = severely_injured + resolve_severely_injured_effect = yes + } + event_target:kinslayer_target = { + show_scope_change = no + add_maimed_trait_effect = yes + } + } + else_if = { + limit = { #Hurt other prisoner and self + has_character_flag = hurt_self + event_target:crossfire_target = { prisoner = yes } + } + + add_maimed_trait_effect = yes + + event_target:kinslayer_target = { + show_scope_change = no + add_maimed_trait_effect = yes + } + + } + + else_if = { #Succeeds in escaping and kills someone else (courtier/prisoner, doesn't matter) + limit = { has_character_flag = someone_is_hurt } + + custom_tooltip = { + text = you_break_out_of_prison_tt + prisoner = no + } + + event_target:kinslayer_target = { + show_scope_change = no + hidden_effect = { + random_list = { #Find someone who cares about the person caught in the fury... + 10 = { + trigger = { + any_spouse = { NOT = { character = ROOT } } + is_married = yes + } + random_spouse = { + limit = { NOT = { character = ROOT } } + save_event_target_as = potential_rival + } + } + 10 = { + trigger = { + any_friend = { NOT = { character = ROOT } } + any_friend = { always = yes } + } + random_friend = { + limit = { NOT = { character = ROOT } } + save_event_target_as = potential_rival + } + } + 10 = { + trigger = { + any_lover = { NOT = { character = ROOT } } + any_lover = { always = yes } + } + random_lover = { + limit = { NOT = { character = ROOT } } + save_event_target_as = potential_rival + } + } + 10 = { + trigger = { + current_heir = { + is_adult = yes + prisoner = no + NOT = { character = ROOT } + is_close_relative = event_target:kinslayer_target + } + } + current_heir = { + save_event_target_as = potential_rival + } + } + 10 = { + trigger = { + any_child = { + is_adult = yes + NOT = { character = ROOT } + } + } + random_child = { + limit = { + is_adult = yes + NOT = { character = ROOT } + } + save_event_target_as = potential_rival + } + } + } + event_target:potential_rival = { character_event = { id = HF.10071 days = 3 } } #Send them a choice to become rival or not... + } + + if = { #if it found a potential enemy + limit = { event_target:potential_rival = { always = yes } } + if = { + limit = { #check if they are the same character as the host + event_target:potential_rival = { character = event_target:host_target } + } + event_target:potential_rival = { set_character_flag = i_am_hurt_and_original_captor } + } + else = { + event_target:host_target = { character_event = { id = HF.10071 days = 1 } } #Also send this person a choice to become rival or not... + } + } + if = { + limit = { prisoner = yes} + custom_tooltip = { + text = fellow_prisoner_dies_tt + death = { + death_reason = death_berserker_rage + killer = ROOT + } + } + } + else = { + custom_tooltip = { + text = courtier_dies_tt + death = { + death_reason = death_berserker_rage + killer = ROOT + } + } + } + } + add_kinslayer_trait_effect = yes + } + + prestige = 15 + + if = { limit = { NOT = { trait = berserker } } + add_trait = berserker + } + } + option = { #W-wait, what did I do? [OPTIONAL: "only" maiming the other person] + name = EVTOPTB_HF_10070 + if = { limit = { NOT = { trait = berserker } } + add_trait = berserker + } + + if = { + limit = { trait = cruel } + remove_trait = cruel + } + else = { + add_trait = kind + } + + event_target:kinslayer_target = { + show_scope_change = no + add_maimed_trait_effect = yes + } + + + if = { + limit = { event_target:kinslayer_target = { is_close_relative = ROOT } } + random = { + chance = 5 + add_trait = lunatic + hidden_effect = { character_event = { id = 38304 } }# notify lunatic + } + } + + trigger = { + has_character_flag = someone_is_hurt + NOT = { trait = kind } + } + } + option = { #W-wait, what did I do? [OPTIONAL: "only" maiming the other person] KIND VERSION + name = EVTOPTC_HF_10056 + tooltip_info = kind + add_trait = berserker + + event_target:kinslayer_target = { + show_scope_change = no + add_maimed_trait_effect = yes + } + trigger = { has_character_flag = someone_is_hurt trait = kind } + } + after = { + clr_character_flag = hurt_self + clr_character_flag = someone_is_hurt + clr_character_flag = going_berserk + } +} + +# Ping to relation of the casualty. To become rivals, or nah? +character_event = { + id = HF.10071 + title = HF_10070_title + picture = GFX_evt_jailbreak + border = GFX_event_normal_frame_war + has_dlc = "Holy Fury" + is_triggered_only = yes + + desc = { + text = EVTDESC_HF_10071_A + trigger = { has_character_flag = i_am_hurt_and_original_captor } + } + desc = { + text = EVTDESC_HF_10071_B + trigger = { NOT = { has_character_flag = i_am_hurt_and_original_captor } } + } + + trigger = { + NOT = { trait = incapable } + is_alive = yes + } + + option = { + name = EVTOPTA_HF_10057 #I will not let this insult stand! + prestige = 10 + tooltip = { add_rival = FROM } + FROM = { character_event = { id = HF.10058 } } + } + option = { + name = EVTOPTB_HF_10057 #My [relation] should have known better. + if = { + limit = { NOT = { trait = cruel } } + add_trait = cruel + } + } + after = { + clr_character_flag = i_am_hurt_and_original_captor + } +} + +######################################################## +# RANK 3 POWER - Inspire Warriors +######################################################## +character_event = { + id = HF.10059 + desc = EVTDESC_HF_10059 + picture = GFX_evt_battle + border = GFX_event_normal_frame_war + has_dlc = "Holy Fury" + + is_triggered_only = yes + + notification = yes + + option = { #Finally! + name = EXCELLENT + event_target:target_holding = { refill_holding_levy = yes } + clr_character_flag = inspiring_warriors + hidden_effect = { + random_list = { + 10 = { + sound_effect = inspire_warriors_01 + } + 10 = { + sound_effect = inspire_warriors_02 + } + 10 = { + sound_effect = inspire_warriors_03 + } + } + } + } +} + + + +######################################################## +# Maintenance AI population and rank up event +######################################################## +#(fired from on_five_year_pulse) +# Root = Character +# From = Society +character_event = { + id = HF.10050 + picture = GFX_evt_battle + border = GFX_event_normal_frame_war + hide_window = yes + only_independent = yes + has_dlc = "Holy Fury" + + is_triggered_only = yes + + trigger = { + is_alive = yes + } + + immediate = { + #Make others join a warrior lodge... + any_realm_lord = { + limit = { + ai = yes + OR = { + has_religion_matching_empty_warrior_lodge_trigger = yes + has_religion_matching_warrior_lodge_in_need_of_members_trigger = yes + } + is_in_society = no + has_secret_religion_trait_trigger = no + is_adult = yes + NOT = { block_general_event_trigger = yes } + higher_tier_than = BARON + NOT = { character = ROOT } + } + score_value = { #Prioritizes selecting some kind of warrior... + value = 10 + warrior_recruit_score = yes + } + count = 2 + character_event = { id = HF.10051 } + } + any_realm_character = { + limit = { + ai = yes + OR = { + has_religion_matching_empty_warrior_lodge_trigger = yes + has_religion_matching_warrior_lodge_in_need_of_members_trigger = yes + } + is_in_society = no + has_secret_religion_trait_trigger = no + is_adult = yes + NOT = { block_general_event_trigger = yes } + } + score_value = { #Prioritizes selecting some kind of warrior... + value = 10 + warrior_recruit_score = yes + } + count = 1 + character_event = { id = HF.10051 } + } + + #And maybe join yourself? + if = { + limit = { + ai = yes + has_religion_matching_warrior_lodge_in_need_of_members_trigger = yes + is_in_society = no + has_secret_religion_trait_trigger = no + is_adult = yes + NOT = { block_general_event_trigger = yes } + } + log = "[Root.GetTitledName] is trying to joining a lodge!" + character_event = { id = HF.10051 } + } + } +} + +### Follow-up: If was eligible, AI joins a warrior lodge +character_event = { + id = HF.10051 + hide_window = yes + is_triggered_only = yes + immediate = { + if = { + limit = { + religion_openly_norse_or_reformed_trigger = yes + can_join_society = warrior_lodge_norse + } + join_society = warrior_lodge_norse + } + else_if = { + limit = { + religion_openly_baltic_or_reformed_trigger = yes + can_join_society = warrior_lodge_baltic + } + join_society = warrior_lodge_baltic + } + else_if = { + limit = { + religion_openly_finnish_or_reformed_trigger = yes + can_join_society = warrior_lodge_finnish + } + join_society = warrior_lodge_finnish + } + else_if = { + limit = { + religion_openly_slavic_or_reformed_trigger = yes + can_join_society = warrior_lodge_slavic + } + join_society = warrior_lodge_slavic + } + else_if = { + limit = { + religion_openly_west_african_or_reformed_trigger = yes + can_join_society = warrior_lodge_west_african + } + join_society = warrior_lodge_west_african + } + else_if = { + limit = { + religion_openly_zun_or_reformed_trigger = yes + can_join_society = warrior_lodge_zun + } + join_society = warrior_lodge_zun + } + else_if = { + limit = { + religion_openly_bon_or_reformed_trigger = yes + can_join_society = warrior_lodge_bon + } + join_society = warrior_lodge_bon + } + else_if = { + limit = { + religion_openly_hellenic_or_reformed_trigger = yes + can_join_society = warrior_lodge_hellenic + } + join_society = warrior_lodge_hellenic + } + else_if = { + limit = { + OR = { + religion_openly_tengri_or_reformed_trigger = yes + is_nomadic = yes + } + can_join_society = warrior_lodge_tengri + } + join_society = warrior_lodge_tengri + } + else = { + log = "[Root.GetTitledName] failed to join a society in event HF.10051" + break = yes + } + log = "[Root.GetTitledName] joined [Root.Society.GetName] society!" + + apply_random_minor_injury_effect = yes #So it seems they were in a duel! + + if = { + limit = { + NOT = { + society = { + any_society_member = { + is_society_grandmaster = yes + } + } + } + } + log = "[This.Society.GetName] is a society without a grandmaster and I am trying to be set as the grandmaster." + set_society_grandmaster = yes # Set character as Grand Master (if there was none) + add_society_currency_massive_effect = yes + } + + society = { + any_society_member = { #Send notification to players that society is growing... + limit = { + ai = no + society_rank = 4 + } + character_event = { id = HF.10052 days = 1 random = 15 } + } + } + } +} + +#Notification for players, that their warrior lodge is growing +character_event = { + id = HF.10052 + desc = EVTDESC_HF_10052 + picture = GFX_evt_battle + is_triggered_only = yes + + hide_from = yes + + trigger = { + is_alive = yes + NOT = { has_character_modifier = warrior_lodge_HF_10052_cooldown } + } + + notification = yes + + immediate = { + hidden_effect = { + add_character_modifier = { + name = warrior_lodge_HF_10052_cooldown + duration = 30 + hidden = yes + } + } + } + + option = { + name = EXCELLENT + } +} + +### Maintenance: Warrior Lodge Society spawns if it died (fired from on_society_destroyed) +# Root = Character +# From = Society +character_event = { + id = HF.10053 + is_triggered_only = yes + has_dlc = "Holy Fury" + hide_window = yes + hide_from = yes + + trigger = { + FROM = { this_society_is_a_warrior_lodge_trigger = yes } + } + + immediate = { + FROM = { save_event_target_as = warrior_lodge_to_revive } + + if = { + limit = { + is_landed = yes + } + #Pick someone under you to lead the warrior lodge... + any_courtier_or_vassal = { + limit = { + ai = yes + OR = { + has_religion_matching_warrior_lodge_to_revive_trigger = yes + special_join_warrior_lodge_trigger = yes + NOT = { trait = zealous } + has_tribal_or_nomadic_government_trigger = yes + } + has_secret_religion_trait_trigger = no + is_in_society = no + age = 16 + NOT = { block_general_event_trigger = yes } + } + score_value = { #Prioritizes selecting some kind of warrior... + value = 10 + warrior_recruit_score = yes + warrior_lodge_revival_selection_score = yes + } + join_society = event_target:warrior_lodge_to_revive + if = { + limit = { + NOT = { + society = { + any_society_member = { + is_society_grandmaster = yes + } + } + } + } + set_society_grandmaster = yes # Set character as Grand Master + add_society_currency_massive_effect = yes + } + add_society_currency_massive_effect = yes + } + } + else = { + liege = { + #Pick someone under your *liege* to lead the warrior lodge... + any_courtier_or_vassal = { + limit = { + ai = yes + OR = { + has_religion_matching_warrior_lodge_to_revive_trigger = yes + special_join_warrior_lodge_trigger = yes + NOT = { trait = zealous } + has_tribal_or_nomadic_government_trigger = yes + } + has_secret_religion_trait_trigger = no + is_in_society = no + age = 16 + NOT = { block_general_event_trigger = yes } + } + score_value = { #Prioritizes selecting some kind of warrior... + value = 10 + warrior_recruit_score = yes + warrior_lodge_revival_selection_score = yes + } + join_society = event_target:warrior_lodge_to_revive + if = { + limit = { + NOT = { + society = { + any_society_member = { + is_society_grandmaster = yes + } + } + } + } + set_society_grandmaster = yes # Set character as Grand Master + add_society_currency_massive_effect = yes + } + } + } + } + log = "The revive event fired for [From.GetName]." + } +} + +### Maintenance: Rank up event (AI only) +character_event = { + id = HF.10054 + hide_window = yes + is_triggered_only = yes + has_dlc = "Holy Fury" + ai = yes + + is_in_society = yes + + trigger = { + is_member_of_any_warrior_lodge_trigger = yes + is_inaccessible_or_incapable_trigger = no + society_can_rank_up = yes + has_society_currency_minor_trigger = yes + } + + immediate = { + society = { + save_event_target_as = my_warrior_lodge + } + random_list = { + 50 = {} + 50 = { + trigger = { + society_rank < 3 + } + society_rank_up = 1 + detract_society_currency_medium_effect = yes # at a worst, they are put at 0 currency + } + 500 = { + trigger = { + society_rank == 3 + NOT = { + is_society_rank_full = { # Checks if named society's rank is full + society = event_target:my_warrior_lodge + rank = 4 + } + } + } + society_rank_up = 1 + detract_society_currency_medium_effect = yes # at a worst, they are put at 0 currency + } + } + + #If the warrior lodge has been blocked from the Legendary Gathering decision for 100 years... + if = { + limit = { + event_target:my_warrior_lodge = { + had_flag = { + flag = used_legendary_gathering + years = 100 + } + } + } + event_target:my_warrior_lodge = { + clr_flag = used_legendary_gathering #So the whole thing is reset... + clr_flag = block_society_progress + set_society_progress = 0 + } + } + } +} + +### Trying to rank up to Hero: To duel a current hero or not? (for players) +character_event = { + id = HF.10060 + title = proving_your_worth_title + desc = EVTDESC_HF_10060 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_war + has_dlc = "Holy Fury" + ai = no + is_triggered_only = yes + portrait = event_target:combatant_2 + + trigger = { + is_alive = yes + } + + immediate = { + event_target:my_society = { #choose a target... + any_society_member = { + limit = { + prisoner = no + society_rank == 4 + ai = yes + NOT = { trait = incapable } + NOT = { has_character_flag = call_to_legend_active } + } + score_value = { #Prioritizes selecting some kind of warrior... + value = 10 + bad_soldier_outcome_score = yes + } + save_event_target_as = combatant_2 + } + } + save_event_target_as = combatant_1 + } + + option = { + name = EVTOPTA_HF_10060 #I have been itching for a fight anyway! + change_society_currency = -2000 + set_character_flag = fighting_to_rank_up + character_event = { id = HFP.10100 } #Send actual duel events... + } + option = { + name = EVTOPTB_HF_10060 #Perhaps it is better I simply wait this out... + clr_character_flag = has_sent_request_to_rank_up + } +} + +#Ping to opponent (provided they did not die)... +character_event = { + id = HF.10061 + hide_window = yes + is_triggered_only = yes + trigger = { + #OR = { + # event_target:other_combatant = { has_character_flag = fighting_to_rank_up } + # event_target:hero_character = { character = ROOT } + #} + } + + immediate = { + if = { + limit = { + has_character_flag = may_join_society + } + event_target:combatant_1 = { letter_event = { id = HF.10062 } } #Send rank-up request accepted-event... + } + else = { + event_target:combatant_1 = { letter_event = { id = HF.10063 } } #Send rank-up request rejected-event... + } + } +} + +#Hero admits defeat: "YES, you may take my place at rank 4"... (for player) +letter_event = { + id = HF.10062 + border = GFX_event_letter_frame_intrigue + has_dlc = "Holy Fury" + ai = no + is_triggered_only = yes + + trigger = { is_alive = yes } + + desc = { + trigger = { event_target:combatant_2 = { character = FROM } } + text = EVTDESC_HF_10062_A + } + desc = { + trigger = { event_target:combatant_2 = { NOT = { character = FROM } } } + text = EVTDESC_HF_10062_B + } + + option = { + name = EVTOPTA_HF_10062 #Thank you for understanding. + society_rank_up = 1 + clr_character_flag = has_sent_request_to_rank_up + clr_character_flag = fighting_to_rank_up + hidden_effect = { #Demote the other character...! + if = { limit = { FROM = { character = event_target:combatant_2 } } + FROM = { society_rank_down = 1 } + } + } + } +} + +#No, you may *not* take my place at rank 4... (for player) +letter_event = { + id = HF.10063 + border = GFX_event_letter_frame_intrigue + has_dlc = "Holy Fury" + ai = no + is_triggered_only = yes + + desc = EVTDESC_HF_10063_A + + option = { + name = EVTOPTA_HF_10063 #I would angry, if I wasn't so humiliated... + change_society_currency = 500 + clr_character_flag = has_sent_request_to_rank_up + clr_character_flag = fighting_to_rank_up + hidden_effect = { add_character_modifier = { name = lost_rank_up_duel_cooldown duration = 600 hidden = yes } } + } +} + +########################################################## +################ Other Maintenance events ################ +########################################################## + +namespace = HFP + +# Root = the character that got a new host +# From = the previous host +# FromFrom = new employer +character_event = { + id = HFP.19000 + hide_window = yes + + has_dlc = "Reapers" + + is_triggered_only = yes + + trigger = { + is_alive = yes + FROMFROM = { #If new liege is *not* In Seclusion + NOT = { has_character_modifier = in_seclusion } + } + OR = { # But you still have some left over modifiers... + has_character_modifier = in_seclusion + has_character_modifier = tiny_food_shortage + has_character_modifier = minor_food_shortage + has_character_modifier = normal_food_shortage + has_character_modifier = starving_food_shortage + } + } + + immediate = { + remove_character_modifier = in_seclusion + remove_character_modifier = tiny_food_shortage + remove_character_modifier = minor_food_shortage + remove_character_modifier = normal_food_shortage + remove_character_modifier = starving_food_shortage + } +} \ No newline at end of file diff --git a/MOD/Witcher/events/hf_warrior_lodge_legends_events.txt b/MOD/Witcher/events/hf_warrior_lodge_legends_events.txt new file mode 100644 index 000000000..6a4c7ec1a --- /dev/null +++ b/MOD/Witcher/events/hf_warrior_lodge_legends_events.txt @@ -0,0 +1,3385 @@ +########################################### +# # +# Warrior Lodge events # +# Fired from on-actions mostly # +# # +# ID HF.12000-HF.13000 # +# # +########################################### + +namespace = HF + +#character_event = { +# id = HF.12000 +# desc = EVTDESC_HF_12000 +# picture = GFX_evt_battle +# border = GFX_event_normal_frame_war +# is_triggered_only = yes +# +# trigger = { +# is_member_of_any_warrior_lodge_trigger = yes +# NOT = { is_inaccessible_trigger = yes } +# } +# +# +# immediate = { +# #start_society_progress = yes +# } +# +# option = { +# name = EVTOPTA_HF_12000 +# #custom_tooltip = { text = EVTOPTA_HF_12000_TT } +# start_society_progress = yes +# trigger = { +# society_has_active_progress = no +# } +# } +# option = { +# name = EVTOPTB_HF_12000 +# add_society_progress = 10 +# trigger = { +# society_progress < 25 +# } +# } +# option = { +# name = EVTOPTC_HF_12000 +# add_society_progress = -5 +# trigger = { +# society_progress = 0.25 +# } +# } +# option = { # Add 50 regardless +# name = EVTOPTD_HF_12000 +# add_society_progress = 50 +# } +# option = { +# name = EVTOPTE_HF_12000 +# stop_society_progress = yes +# trigger = { +# society_progress = 0.5 +# } +# } +#} + +###################################################################################### +### Setup/Ping event to [WHICHEVER SOCIETY] that had it's legend progress to 100%] ### +################ ! Runs multiple times (depending on situation) ! #################### +###################################################################################### +#From on_action "on_society_progress_full" +# Root = The affected society grandmaster +# From = The affected society +character_event = { + id = HF.11999 + hide_window = yes + is_triggered_only = yes + + trigger = { + FROM = { this_society_is_a_warrior_lodge_trigger = yes } + #log = "LEGENDARY JOURNEY: legend triggered!" + } + + immediate = { + #log = "LEGENDARY JOURNEY: legend *actually* triggered" + FROM = { + set_flag = block_society_progress #So progress is halted for members... + save_event_target_as = legendary_society + } + random_province = { #Because societies cannot process events...! D: + limit = { is_land = yes } + #log = "LEGENDARY JOURNEY: [This.GetName] is the province" + set_province_flag = initiating_legendary_journey + province_event = { id = HF.12000 days = 5 random = 7 } #Checks status of society... + holder_scope = { save_event_target_as = province_holder } + } + } +} + +# Sent from event_target:legendary_society (above) +province_event = { + id = HF.12000 + is_triggered_only = yes + hide_window = yes + + trigger = { + event_target:legendary_society = { society_has_members = yes } + has_province_flag = initiating_legendary_journey + } + + fail_trigger_effect = { + if = { + limit = { NOT = { has_province_flag = initiating_legendary_journey } } #@event_target:legendary_society } } + #log = "[LEGENDARY JOURNEY]: Somehow [This.GetName] got event HF.12000, without having the right flag to help [event_target:legendary_society.GetName], so stopped chain before it started." + } + else = { + event_target:legendary_society = { + clr_flag = block_society_progress + set_society_progress = 0 + } + #log = "[LEGENDARY JOURNEY]: [This.GetName] got event HF.12000, but found out that [event_target:legendary_society.GetName] has no members left, so stopped chain before it started." + } + } + + immediate = { + if = { + limit = { + has_province_flag = initiating_legendary_journey #It has begun... + #There are at least two members at rank 4... + event_target:legendary_society = { + any_society_member = { + society_rank == 4 + NOT = { is_inaccessible_trigger = yes } + count = 2 + } + } + } + event_target:legendary_society = { + random_society_member = { + limit = { + society_rank == 4 + NOT = { is_inaccessible_trigger = yes } + } + preferred_limit = { ai = no } #We'd rather it was a player... + + character_event = { id = HF.12001 } #START: Sends event to a warrior lodge member/hero... + #log = "[LEGENDARY JOURNEY]: Event HF.12000 fired and [This.GetTitledFirstName] is the original hero, who starts it all!" + } + } + clr_province_flag = initiating_legendary_journey + } + else_if = { + limit = { + has_province_flag = initiating_legendary_journey #It has begun... + #But there are not enough members at rank 4... + NOT = { + any_society_member = { + society_rank == 4 + NOT = { is_inaccessible_trigger = yes } + count = 2 + } + } + } + #log = "[LEGENDARY JOURNEY]: Event HF.12000 fired, but there were not enough members. Checking back in max 265 days." + character_event = { id = HF.12000 days = 165 random = 100 } #Check back in a while... + } + } +} + + +#LEGEND START: Our warrior lodge is *legendary*. My brothers and sisters are saying we have a name to live up to! Or to make for ourselves! +character_event = { + id = HF.12001 + title = legendary_prep_title + desc = EVTDESC_HF_12001 + sound = rowdy_banter_short + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_war + is_triggered_only = yes + + trigger = { + is_member_of_any_warrior_lodge_trigger = yes + NOT = { is_inaccessible_trigger = yes } + + #There has to be at least two members at rank 4. + any_society_member = { + society_rank == 4 + same_society_as = ROOT + count = 2 + } + } + + portrait = event_target:target_ruler + + immediate = { + #event_targets set here: + # original_hero + # fellow_hero_1 + # fellow_hero_2 (if applicable) + # fellow_hero_3 (if applicable) + + # For loc purposes, to have somewhere to refer to, and also for choosing a target... + if = { + limit = { is_landed = yes } + capital_scope = { save_event_target_as = home_capital } + } + else_if = { + limit = { liege = { is_landed = yes } } + liege = { capital_scope = { save_event_target_as = home_capital } } + } + else = { + random_society_member = { + limit = { is_landed = yes } + capital_scope = { save_event_target_as = home_capital } + } + } + + #select target realm... + any_independent_ruler = { + limit = { + NOT = { religion_group = ROOT } + distance = { where = event_target:home_capital distance < 1000 } + } + score_value = { #Prioritizes selecting some Emperor, if it can... + value = 10 + title_tier_increase_score = yes + } + score_value = { #Prioritizes selecting some Emperor, if it can... + value = 10 + nomad_reduction_score = yes + } + save_event_target_as = target_ruler + primary_title = { + save_event_target_as = target_title + } + } + save_persistent_event_target = { #also saves the same as a persistent target, for safety (on_death) + name = target_title + scope = event_target:target_title + } + + save_event_target_as = original_hero + set_character_flag = call_to_legend_active + hidden_effect = { + society = { #Find and save your fellow heroes (can be other players)... + random_society_member = { + limit = { + society_rank == 4 + NOT = { character = ROOT } + } + set_character_flag = do_not_disturb + set_character_flag = call_to_legend_active + save_event_target_as = fellow_hero_1 + } + random_society_member = { + limit = { + society_rank == 4 + NOT = { character = ROOT } + NOT = { character = event_target:fellow_hero_1 } + } + set_character_flag = do_not_disturb + set_character_flag = call_to_legend_active + save_event_target_as = fellow_hero_2 + } + random_society_member = { + limit = { + society_rank == 4 + NOT = { character = ROOT } + NOT = { character = event_target:fellow_hero_1 } + NOT = { character = event_target:fellow_hero_2 } + } + set_character_flag = do_not_disturb + set_character_flag = call_to_legend_active + save_event_target_as = fellow_hero_3 + } + } + } + } + + option = { + name = EVTOPTA_HF_12001 #Start the whole thing + + show_portrait = event_target:province_holder + + hidden_effect = { + set_variable = { + which = legendary_event_progress + value = 0 + } + } + hidden_effect = { add_1_point_to_legendary_progress_effect = yes } + evaluate_legendary_progress_effect = yes + + hidden_effect = { + #Other heroes, they get the choice to back out... + any_society_member = { + limit = { + same_society_as = ROOT + has_character_flag = call_to_legend_active + NOT = { character = ROOT } + } + character_event = { id = HF.12002 } # Give them the choice to back out... + } + any_society_member = { + limit = { + same_society_as = ROOT + NOT = { has_character_flag = call_to_legend_active } + NOT = { character = ROOT } + } + character_event = { id = HF.12011 } # Let other society members know what is going on + } + } + + custom_tooltip = { text = EVTOPTA_HF_12001_TT } + hidden_effect = { character_event = { id = HF.12003 days = 5 } } #Hidden tombola... + } + option = { # (AI's don't get this option) + name = EVTOPTB_HF_12001 #I'd rather not start anything... + set_character_flag = rank_up_blocked + clr_character_flag = call_to_legend_active + society_rank_down = 1 + custom_tooltip = { text = EVTOPTB_HF_12002_TT } + + if = { + limit = { + # If there are no adventures left (because you're in a weird MP where everyone is in this lodge and at rank 4 and you all decided to turn this epic chain down for some reason) + NOT = { + any_society_member = { + society_rank == 4 + same_society_as = ROOT + has_character_flag = call_to_legend_active + NOT = { character = ROOT } + } + } + } + stop_society_progress = yes # To prevent things from breaking + } + + hidden_effect = { + if = { + limit = { is_society_grandmaster = yes } + set_society_grandmaster = no + } + } + + hidden_effect = { + #Other heroes get the choice to continue without you... + any_society_member = { + limit = { + same_society_as = ROOT + has_character_flag = call_to_legend_active + NOT = { character = ROOT } + } + character_event = { id = HF.12002 } # Give them the choice to back out... + } + } + + trigger = { + ai = no #Because the ai will never refuse... + } + } +} + +#Potential follow-up, for OTHER HEROES only (if there were more heroes at rank 4). +character_event = { + id = HF.12002 + title = legendary_prep_title + desc = EVTDESC_HF_12002 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_war + is_triggered_only = yes + + immediate = { + capital_scope = { save_event_target_as = home_capital } + save_event_target_as = player_hero + } + + option = { + name = EVTOPTA_HF_12002 #Let's go! + custom_tooltip = { text = EVTOPTA_HF_12002_TT } + hidden_effect = { + set_variable = { + which = legendary_event_progress + value = 0 + } + } + add_2_points_to_legendary_progress_effect = yes + evaluate_legendary_progress_effect = yes + show_portrait = event_target:target_ruler + character_event = { id = HF.12003 days = 5 } #Send hidden tombola on self... + + hidden_effect = { # Lower-ranking player members are notified... + any_society_member = { + limit = { + ai = no + same_society_as = ROOT + NOT = { has_character_flag = call_to_legend_active } + NOT = { character = ROOT } + } + character_event = { id = HF.12011 } # Let other society members know what is going on + } + } + } + option = { + name = EVTOPTB_HF_12001 #I'd rather stay here. + custom_tooltip = { text = EVTOPTB_HF_12002_TT } + clr_character_flag = do_not_disturb + clr_character_flag = call_to_legend_active + set_character_flag = rank_up_blocked + society_rank_down = 1 + + hidden_effect = { + if = { + limit = { is_society_grandmaster = yes } + set_society_grandmaster = no + } + } + + if = { + limit = { + # If there are no adventures left (because you're in a weird MP where everyone is in this lodge and at rank 4 and you all decided to turn this epic chain down for some reason) + NOT = { + any_society_member = { + society_rank == 4 + same_society_as = ROOT + has_character_flag = call_to_legend_active + NOT = { character = ROOT } + } + } + } + stop_society_progress = yes # To prevent things from breaking + } + + trigger = { + ai = no + } + } +} + +#Other society members are informed of the journey starting... +character_event = { + id = HF.12011 + title = legendary_prep_title + desc = EVTDESC_HF_12011 + picture = GFX_evt_camaraderie + border = GFX_event_normal_frame_war + is_triggered_only = yes + + trigger = { + NOT = { has_character_modifier = warrior_lodge_HF_12011_cooldown } # to prevent MP spam + } + + immediate = { + hidden_effect = { + add_character_modifier = { + name = warrior_lodge_HF_12011_cooldown + duration = 60 + hidden = yes + } + } + } + + option = { + name = EVTOPTA_HF_12011 + if = { + limit = { NOT = { trait = proud } } + random = { + chance = 40 + add_trait = proud + hidden_tooltip = { character_event = { id = 38261 } } # Notify Proud + } + } + show_portrait = event_target:target_ruler + } + + option = { + name = EVTOPTB_HF_12011 + if = { + limit = { NOT = { trait = humble } } + random = { + chance = 40 + add_trait = humble + hidden_tooltip = { character_event = { id = 38260 } } #Notify Humble + } + } + show_portrait = event_target:target_ruler + } +} + +### Hidden Tombola (prep/travel? events) +character_event = { + id = HF.12003 + is_triggered_only = yes + + hide_window = yes + + trigger = { + is_member_of_any_warrior_lodge_trigger = yes + has_character_flag = call_to_legend_active + #NOT = { is_inaccessible_trigger = yes } + } + + immediate = { + # Check if you are an "additional" player_hero or the original one? In case of outcomes? + # Check if the other heroes are still alive? + + if = { #Back up, in case the ruler we are talking about is dead... + limit = { persistent_event_target:target_ruler = { NOT = { is_alive = yes } } } + persistent_event_target:target_title = { + holder_scope = { + top_liege = { + save_event_target_as = target_ruler + } + } + } + save_persistent_event_target = { #also saves the same as a persistent target, for safety (on_death) + name = target_ruler + scope = event_target:target_ruler + } + } + + #event_targets usable: + # original_hero + # home_capital + # fellow_hero_1 (can be player) + # fellow_hero_2 (if applicable - can be player) + # fellow_hero_3 (if applicable - can be player) + # target_ruler + # target_title + + random_list = { + 10 = { #AI fakes progress (start_bracket)... + trigger = { + ai = yes + has_character_flag = start_bracket + } + random = { + chance = 25 + #Run single progress point... + add_1_point_to_legendary_progress_effect = yes #up variable for outcomes... + evaluate_legendary_progress_effect = yes + additive_modifier = { + duelist_skill_is_high_group_trigger = no + value = -5 + } + } + send_legendary_tombola_effect = yes #sends tombola again... + } + 10 = { #Receive an artifact... + trigger = { + has_character_flag = start_bracket + NOT = { has_character_flag = HF_legend_artifact } + any_society_member = { + ai = yes + same_society_as = ROOT + NOT = { character = ROOT } + any_artifact = { + OR = { + has_artifact_flag = combat_weapon + has_artifact_flag = armor + } + } + } + } + additive_modifier = { #more likely if you have no artifacts at all... + num_of_artifacts > 0 + value = 5 + } + + set_character_flag = HF_legend_artifact + + random_society_member = { + limit = { + ai = yes + same_society_as = ROOT + NOT = { character = ROOT } + any_artifact = { + OR = { + has_artifact_flag = combat_weapon + has_artifact_flag = armor + } + } + } + save_event_target_as = giving_member + character_event = { id = HF.12004 } #Ping to select artifact... + } + } + 10 = { #Hold a feast in honor of old hero (currently only yourself)... + trigger = { + has_character_flag = start_bracket + NOT = { has_character_flag = HF_legend_feast } + event_target:home_capital = { # Something cool happened at your capital once... +# OR = { +# AND = { +# persistent_event_target:local_dead_commander_target = { always = yes } +# } +# AND = { + #persistent_event_target:local_inspiring_commander_target = { always = yes } +# } +# AND = { + persistent_event_target:local_fearsome_commander_target = { + always = yes + character = ROOT + } +# } + # } + } + } + set_character_flag = HF_legend_feast + character_event = { id = HF.12006 } + } + 10 = { #Turn a skull into a cup + trigger = { + has_character_flag = start_bracket + NOT = { has_character_flag = HF_legend_skull } + any_artifact = { + OR = { + artifact_type = enemy_skull + artifact_type = rival_skull + } + } + } + set_character_flag = HF_legend_skull + character_event = { id = HF.12007 } + } + 20 = { #Bond with your bird + trigger = { + has_character_flag = start_bracket + has_character_modifier = pet_hunting_eagle + NOT = { has_character_flag = HF_legend_eagle } + } + set_character_flag = HF_legend_eagle + character_event = { id = HF.12008 } + } + 10 = { #Have your battlefield-weapon upgraded + trigger = { + has_character_flag = start_bracket + NOT = { has_character_flag = HF_legend_upgrade_weapon } + has_a_warrior_lodge_battle_blade_trigger = yes + job_marshal = { + NOR = { + character = event_target:original_hero + character = event_target:fellow_hero_1 + character = event_target:fellow_hero_2 + character = event_target:fellow_hero_3 + } + is_alive = yes + } + } + set_character_flag = HF_legend_upgrade_weapon + character_event = { id = HF.12012 } + } + + 1 = { #Player fakes progress... + trigger = { + ai = no + has_character_flag = start_bracket + } + random = { + chance = 75 + #Run single progress point... + additive_modifier = { + duelist_skill_is_high_group_trigger = no + value = -5 + } + add_1_point_to_legendary_progress_effect = yes #up variable for outcomes... + evaluate_legendary_progress_effect = yes + } + send_legendary_tombola_effect = yes #sends tombola again... + } + + 10 = { ### Travel starts! + trigger = { + NOT = { has_character_modifier = out_traveling } + has_character_flag = mid_bracket + OR = { + ai = no #Either you are a player... + NOT = { #Or there are no players involved... + any_society_member = { + same_society_as = PREV + NOT = { character = PREV } + has_character_flag = call_to_legend_active + ai = no + } + } + } + } + + set_character_flag = i_am_special@ROOT + character_event = { id = HF.12009 } #You are now in enemy territory (branches to all heroes)... + } + 1 = { #Player fakes progress... + trigger = { + ai = no + has_character_flag = mid_bracket + } + random = { + chance = 85 + #Run single progress point... + add_1_point_to_legendary_progress_effect = yes #up variable for outcomes... + evaluate_legendary_progress_effect = yes + } + send_legendary_tombola_effect = yes #sends tombola again... + } + 1 = { #AI fakes progress (mid_bracker)... + trigger = { + ai = yes + has_character_flag = mid_bracket + } + random = { + chance = 25 + #Run single progress point... + add_1_point_to_legendary_progress_effect = yes #up variable for outcomes... + evaluate_legendary_progress_effect = yes + } + send_legendary_tombola_effect = yes #sends tombola again... + } + + ### No more possible prep/travel events - Continue to dueling some enemies! + 10 = { + trigger = { + ai = no + has_character_flag = top_bracket + } + character_event = { id = HF.12010 } #Player heroes encounter a duel opportunity... + } + 10 = { + trigger = { + ai = yes + has_character_flag = top_bracket + } + character_event = { id = HF.12100 } #AI heroes challenges a random char to a duel (risk of being imprisoned)... + } + 10 = { #AI fakes progress (top_bracket)... + trigger = { + ai = yes + has_character_flag = top_bracket + } + random = { + chance = 50 + #Run single progress point... + add_1_point_to_legendary_progress_effect = yes #up variable for outcomes... + evaluate_legendary_progress_effect = yes + } + send_legendary_tombola_effect = yes #sends tombola again... + } + 10 = { # FINAL EVENTS... + trigger = { + OR = { #Either you died, or you reached "the end"... + is_dying = yes + has_character_flag = call_it_a_day + } + } + if = { + limit = { is_member_of_any_warrior_lodge_trigger = yes } + society = { + save_event_target_as = target_society + } + } + if = { #You died, but reached the end... + limit = { + is_dying = yes + has_character_flag = call_it_a_day + has_killed_at_least_1_trigger = yes + } + died_founding_a_bloodline_effect = yes + } + else_if = { #You successfully reached the end of the chain... + limit = { + has_character_flag = call_it_a_day + is_alive = yes + } + found_a_bloodline_effect = yes #sets flag for quality and sends conclusion event... + } + else = { #means you are just dying... :D + died_before_achieveing_greatness_effect = yes + } + + # To ensure that characters which the players knows about stand a chance... + if = { + limit = { + ai = no + any_society_member = { + same_society_as = ROOT + NOT = { character = ROOT } + has_character_flag = call_to_legend_active + } + } + any_society_member = { + limit = { + same_society_as = ROOT + NOT = { character = ROOT } + has_character_flag = call_to_legend_active + ai = yes + } + set_character_flag = player_was_involved + } + } + } + } + } +} + +# For dead travelers (essentially the same as the last part of the tombola above) +character_event = { + id = HF.12304 + is_triggered_only = yes + hide_window = yes + + trigger = { + is_member_of_any_warrior_lodge_trigger = yes + has_character_flag = call_to_legend_active + } + + immediate = { + society = { + save_event_target_as = target_society + } + if = { #Back up, in case the ruler we are talking about is dead... + limit = { persistent_event_target:target_ruler = { NOT = { is_alive = yes } } } + persistent_event_target:target_title = { + holder_scope = { + top_liege = { + save_event_target_as = target_ruler + } + } + } + save_persistent_event_target = { #also saves the same as a persistent target, for safety (on_death) + name = target_ruler + scope = event_target:target_ruler + } + } + if = { #You died, but reached the end... + limit = { + is_dying = yes + has_character_flag = call_it_a_day + has_killed_at_least_1_trigger = yes + } + died_founding_a_bloodline_effect = yes + } + else = { #means you are just dying... :D + died_before_achieveing_greatness_effect = yes + } + # To ensure that characters which the players knows about stand a chance... + if = { + limit = { + ai = no + any_society_member = { + same_society_as = ROOT + NOT = { character = ROOT } + has_character_flag = call_to_legend_active + } + } + any_society_member = { + limit = { + same_society_as = ROOT + NOT = { character = ROOT } + has_character_flag = call_to_legend_active + ai = yes + } + set_character_flag = player_was_involved + } + } + } +} + +# Prep phase: pepp by fellow member +character_event = { + id = HF.12004 + is_triggered_only = yes + hide_window = yes + + immediate = { + any_artifact = { + limit = { + OR = { + has_artifact_flag = combat_weapon + has_artifact_flag = armor + } + } + score_value = { #Prioritizes selecting an appropriate artifact... + value = 10 + artifact_selection_score = yes + } + save_event_target_as = artifact_gift + } + FROM = { + character_event = { id = HF.12005 } #Send event + } + } +} + +## Prep phase: an artifact is given to you +character_event = { + id = HF.12005 + title = legendary_prep_title + desc = EVTDESC_HF_12005_A #Hey, I have a gift for you, for the upcoming battles to come. + picture = GFX_evt_battle + border = GFX_event_normal_frame_war + is_triggered_only = yes + + option = { + name = EVTOPTA_HF_12005 #Yes, I'll accept your gift + + event_target:artifact_gift = { + show_scope_change = no + transfer_artifact = { + from = FROM + to = ROOT + } + } + add_2_points_to_legendary_progress_effect = yes # Great progress on journey! + } + option = { + name = EVTOPTB_HF_12005 #I'll pay you for it! + + event_target:artifact_gift = { + show_scope_change = no + transfer_artifact = { + from = FROM + to = ROOT + } + } + if = { + limit = { + is_tribal = yes + } + scaled_wealth = { + value = -0.5 + min = -10 + max = -100 + } + } + else = { + scaled_wealth = { + value = -1 + min = -35 + max = -750 + } + } + + reverse_opinion = { + who = FROM + modifier = opinion_grateful + years = 3 + } + + add_2_points_to_legendary_progress_effect = yes # Great progress on journey! + } + option = { #Uh, no thanks. + name = EVTOPTC_HF_12005 + + add_1_point_to_legendary_progress_effect = yes # Good progress on journey... + } + after = { + evaluate_legendary_progress_effect = yes + send_legendary_tombola_effect = yes #sends tombola again... + } +} + +## Prep phase: past battle events inspire +character_event = { + id = HF.12006 + title = legendary_prep_title + desc = EVTDESC_HF_12006 #Heroes of old are with me! + picture = GFX_evt_battle + border = GFX_event_normal_frame_war + is_triggered_only = yes + + immediate = { + #Find someone to talk to... + save_fellow_member_effect = yes + random_list = { +# 10 = { #the least interesting choice... +# trigger = { +# event_target:home_capital = { +# persistent_event_target:local_dead_commander_target = { always = yes } +# } +# } +# if = { +# limit = { +# event_target:home_capital = { +# persistent_event_target:local_dead_commander_target = { dynasty = ROOT } +# } +# } +# set_character_flag = kin_was_fallen_commander +# } +# else = { set_character_flag = remember_fallen_commander } +# event_target:home_capital = { + #persistent_event_target:local_dead_commander_target = { save_event_target_as = target } +# } +# } +# 50 = { +# trigger = { +# event_target:home_capital = { +# persistent_event_target:local_inspiring_commander_target = { always = yes } +# } +# } +# if = { +# limit = { +# event_target:home_capital = { + #persistent_event_target:local_inspiring_commander_target = { character = ROOT } +# } +# } +# set_character_flag = i_was_inspiring_commander +# } +# else = { +# set_character_flag = remember_inspiring_commander +# event_target:home_capital = { + #persistent_event_target:local_inspiring_commander_target = { save_event_target_as = target } +# } +# } +# } + 100 = { #Means people remember a ruler once decapitated an enemy here... + trigger = { + event_target:home_capital = { + persistent_event_target:local_fearsome_commander_target = { always = yes } + } + } + if = { #Means YOU did it and text should reflect that. + limit = { + event_target:home_capital = { + persistent_event_target:local_fearsome_commander_target = { character = ROOT } + } + } + set_character_flag = i_was_fearsome_commander + } + else = { + set_character_flag = remember_fearsome_commander + event_target:home_capital = { + persistent_event_target:local_fearsome_commander_target = { save_event_target_as = target } + } + } + } + } + } + + option = { + name = EVTOPTA_HF_12006 #Yes, hold a feast in their name + + scaled_wealth = { value = -0.5 min = -25 max = -50 } + + add_2_points_to_legendary_progress_effect = yes # Great progress on journey! + } + option = { #Uh, no thanks. + name = EVTOPTB_HF_12006 + add_1_point_to_legendary_progress_effect = yes # Good progress on journey... + } + after = { + evaluate_legendary_progress_effect = yes + send_legendary_tombola_effect = yes #sends tombola again... + } +} + +#I could turn my skull trophy into a skull cup! +character_event = { + id = HF.12007 + title = legendary_prep_title + desc = EVTDESC_HF_12007 #"You should turn this into a cup!" + picture = GFX_evt_battle + border = GFX_event_normal_frame_war + is_triggered_only = yes + + portrait = event_target:fellow_member + + trigger = { + + } + + immediate = { + random_artifact = { + limit = { + OR = { + artifact_type = enemy_skull + artifact_type = rival_skull + } + } + preferred_limit = { + artifact_type = enemy_skull + } + save_event_target_as = target_artifact + } + + #Find someone to talk to... + save_fellow_member_effect = yes + } + + option = { + name = EVTOPTA_HF_12007 #Yes! + #custom_tooltip = { text = EVTOPTA_HF_12007_TT } + + scaled_wealth = { value = -0.6 min = -23 max = -65 } + + + add_artifact = skull_cup + + new_artifact = { + copy_artifact_history = event_target:target_artifact + } + + event_target:target_artifact = { + show_scope_change = no + destroy_artifact = yes + } + + add_2_points_to_legendary_progress_effect = yes # Great progress on journey! + } + option = { + name = EVTOPTB_HF_12007 #Nah... + #custom_tooltip = { text = EVTOPTB_HF_12007_TT } + + add_1_point_to_legendary_progress_effect = yes # Good progress on journey... + } + after = { + evaluate_legendary_progress_effect = yes + send_legendary_tombola_effect = yes #sends tombola again... + } +} + +#Bond with your bird +character_event = { + id = HF.12008 + title = legendary_prep_title + desc = EVTDESC_HF_12008 #Fierce bird + picture = GFX_evt_battle + border = GFX_event_normal_frame_war + is_triggered_only = yes + + portrait = event_target:fellow_member + + trigger = { + + } + + immediate = { + #Find someone to talk to... + save_fellow_member_effect = yes + } + + option = { #Stressed/Depressed + name = EVTOPTA_HF_12008 #Yes! + custom_tooltip = { text = EVTOPTA_HF_12008_TT } + + if = { + limit = { trait = depressed } + remove_trait = depressed + } + else_if = { + limit = { trait = stressed } + remove_trait = stressed + } + + add_2_points_to_legendary_progress_effect = yes # Great progress on journey! + trigger = { + OR = { + trait = stressed + trait = depressed + } + } + } + + option = { + name = EVTOPTA_HF_12008 #Yes! + custom_tooltip = { text = EVTOPTA_HF_12008_TT } + + add_character_modifier = { + name = friend_of_eagles + years = 3 + } + + add_1_point_to_legendary_progress_effect = yes # Good progress on journey... + + trigger = { + NOR = { + trait = stressed + trait = depressed + } + } + } + + option = { + name = EVTOPTB_HF_12008 #Nah... + if = { + limit = { NOT = { trait = cruel } } + add_trait = cruel + } + + add_character_modifier = { + name = callous + years = 3 + } + add_1_point_to_legendary_progress_effect = yes # Good progress on journey... + } + after = { + evaluate_legendary_progress_effect = yes + send_legendary_tombola_effect = yes #sends tombola again... + } +} + +#Because you have a battlefield-weapon... Upgrade? +character_event = { + id = HF.12012 + title = legendary_prep_title + desc = EVTDESC_HF_12012 + picture = GFX_evt_battle + border = GFX_event_normal_frame_war + is_triggered_only = yes + + portrait = event_target:marshal_character + + immediate = { + if = { + limit = { + job_marshal = { always = yes } + } + job_marshal = { save_event_target_as = marshal_character } + } + any_artifact = { + limit = { + weapon_was_found_on_battlefield_trigger = yes + NOT = { has_artifact_flag = upgraded } + } + score_value = { #Prioritizes selecting an appropriate artifact... + value = 10 + artifact_selection_score = yes + } + save_event_target_as = target_artifact + } + } + + option = { + name = EVTOPTA_HF_12012 #Brilliant idea! + #custom_tooltip = { text = EVTOPTA_HF_12012_TT } + + scaled_wealth = { value = -0.4 min = -25 max = -67 } + + if = { + limit = { #In case we ever add other battlefield artifacts.... + event_target:target_artifact = { has_artifact_flag = sword } + } + if = { #Make sure it upgrades into the correct item... + limit = { event_target:target_artifact = { artifact_type = sword_1_battlefield } } + add_artifact = sword_1_battlefield_upgraded + } + else_if = { + limit = { event_target:target_artifact = { artifact_type = sword_2_battlefield } } + add_artifact = sword_2_battlefield_upgraded + } + else_if = { + limit = { event_target:target_artifact = { artifact_type = sword_3_battlefield } } + add_artifact = sword_3_battlefield_upgraded + } + } + + new_artifact = { + copy_artifact_history = event_target:target_artifact #Keep history... + set_name = weapon_battlefield_rename + set_description = weapon_battlefield_upgraded_desc_rename + } + + event_target:target_artifact = { + show_scope_change = no + destroy_artifact = yes + } + add_2_points_to_legendary_progress_effect = yes # Great progress on journey! + } + option = { + name = EVTOPTA_HF_12012_diplo #Brilliant idea (for free)! + tooltip_info = diplomacy + + if = { + limit = { #In case we ever add other battlefield artifacts.... + event_target:target_artifact = { has_artifact_flag = sword } + } + if = { #Make sure it upgrades into the correct item... + limit = { event_target:target_artifact = { artifact_type = sword_1_battlefield } } + add_artifact = sword_1_battlefield_upgraded + } + else_if = { + limit = { event_target:target_artifact = { artifact_type = sword_2_battlefield } } + add_artifact = sword_2_battlefield_upgraded + } + else_if = { + limit = { event_target:target_artifact = { artifact_type = sword_3_battlefield } } + add_artifact = sword_3_battlefield_upgraded + } + } + + new_artifact = { + set_name = weapon_battlefield_rename_1 + set_description = weapon_battlefield_upgraded_desc_rename + copy_artifact_history = event_target:target_artifact #Keep history... + } + + event_target:target_artifact = { + show_scope_change = no + destroy_artifact = yes + } + + reverse_opinion = { + who = event_target:marshal_character + modifier = opinion_was_praised + years = 10 + } + + add_2_points_to_legendary_progress_effect = yes # Great progress on journey! + + trigger = { diplomacy = 12 } + } + option = { + name = EVTOPTB_HF_12012 #Give it to your marshal? + #custom_tooltip = { text = EVTOPTB_HF_12012_TT } + + reverse_opinion = { + who = event_target:marshal_character + modifier = opinion_inspiring_leader + years = 10 + } + + event_target:target_artifact = { + show_scope_change = no + transfer_artifact = { + from = ROOT + to = event_target:marshal_character + } + } + add_1_point_to_legendary_progress_effect = yes # Good progress on journey... + } + option = { + name = EVTOPTC_HF_12012 + #custom_tooltip = { text = EVTOPTB_HF_12012_TT } + add_1_point_to_legendary_progress_effect = yes # Good progress on journey... + } + after = { + evaluate_legendary_progress_effect = yes + send_legendary_tombola_effect = yes #sends tombola again... + } +} + + +### TRAVEL TO THE DISTANT LAND ### +character_event = { + id = HF.12009 + title = legendary_raid_title + desc = EVTDESC_HF_12009 + picture = GFX_evt_battle + border = GFX_event_normal_frame_war + is_triggered_only = yes + trigger = { + NOT = { has_character_modifier = out_traveling } + } + + portrait = event_target:fellow_member + + immediate = { + #Find someone to talk to... + save_fellow_member_effect = yes + } + + option = { #We are stronger together! + name = EVTOPTA_HF_12009 + #custom_tooltip = { text = EVTOPTA_HF_12009_TT } + piety = 10 + add_2_points_to_legendary_progress_effect = yes # Great progress on journey! + } + option = { #All the glory shall be mine! + name = EVTOPTB_HF_12009 + #custom_tooltip = { text = EVTOPTB_HF_12009_TT } + prestige = 20 + add_1_point_to_legendary_progress_effect = yes # Good progress on journey... + } + after = { + add_character_modifier = { modifier = out_traveling duration = -1 } + + if = { + limit = { has_character_flag = i_am_special@ROOT } #set in the tombola (to make sure the other members do not get the tombola double-running)... + clr_character_flag = i_am_special@ROOT + evaluate_legendary_progress_effect = yes + send_legendary_tombola_effect = yes #sends tombola again... + } + + hidden_effect = { + any_society_member = { + limit = { + same_society_as = ROOT + NOT = { character = ROOT } + has_character_flag = call_to_legend_active + } + character_event = { id = HF.12009 days = 1 } #Runs this event for those who don't have the modifier yet (so everyone's on the same page)... + } + } + } +} + +### A DUEL! +character_event = { + id = HF.12010 + title = legendary_raid_title + picture = GFX_evt_bandits + border = GFX_event_normal_frame_war + is_triggered_only = yes + + portrait = event_target:my_duel_target + + + immediate = { + + hidden_effect = { + #Find someone to talk to... + save_fellow_member_effect = yes + #Find someone to duel... + event_target:target_ruler = { + if = { # First fight, just find *someone*... + limit = { + ROOT = { + NOT = { + any_kill_list_character = { + count = 3 + death_reason = death_legendary_win_duel + } + } + } + } + if = { #if there is anyone who fits the base bill... + limit = { #base requirements + any_realm_character = { + is_adult = yes + NOT = { same_society_as = ROOT } + is_inaccessible_or_incapable_trigger = no + NOT = { has_character_modifier = bedridden_illness } + NOT = { has_character_modifier = severe_illness } + NOT = { has_character_flag = do_not_disturb } + NOT = { has_character_flag = fought_duel_against@ROOT } + NOT = { character = event_target:my_duel_target } #Can't have previously dueled... + NOT = { character = event_target:target_ruler } #Should not be the ruler themselves... + ai = yes + } + } + any_realm_character = { + limit = { #same base requirements + is_adult = yes + NOT = { same_society_as = ROOT } + is_inaccessible_or_incapable_trigger = no + NOT = { has_character_modifier = bedridden_illness } + NOT = { has_character_modifier = severe_illness } + NOT = { has_character_flag = do_not_disturb } + NOT = { has_character_flag = fought_duel_against@ROOT } + NOT = { character = event_target:my_duel_target } #Can't have previously dueled... + NOT = { character = event_target:target_ruler } #Should not be the ruler themselves... + ai = yes + } + score_value = { #Prioritizes selecting a good warrior, if it can... + value = 10 + good_soldier_outcome_score = yes + } + score_value = { #tries to make sure you fight someone the same gender as you... + value = 10 + same_gender_preference_score = yes + } + save_event_target_as = my_duel_target + set_character_flag = fought_duel_against@ROOT + + #REQUIRED event targets for setting up duel evaluation! + save_event_target_as = combatant_2 #the target of the duel... + ROOT = { save_event_target_as = combatant_1 } #the person issuing the duel... + } + } + else = { #There was no one available, so we spawn a character instead... + # Spawn a character + spawn_great_commander_effect = yes + event_target:invited_character = { + upgrade_education_effect = yes + add_one_duel_experience_modifier = yes + save_event_target_as = my_duel_target + set_character_flag = fought_duel_against@ROOT + + #REQUIRED event targets for setting up duel evaluation! + save_event_target_as = combatant_2 #the target of the duel... + ROOT = { save_event_target_as = combatant_1 } #the person issuing the duel... + } + } + } + + else = { #You have killed X amount of characters already... + ROOT = { + randomize_XYZ_desc_flag_effect = yes + } + + #Spawn different characters, depending X/Y/Z-flag... + if = { + limit = { ROOT = { has_character_flag = WL_desc_X } } # Old man/woman + spawn_old_duelist_effect = yes + #event_target:invited_character = { add_age = 50 health = 2 } #For future reference: additional functionality would be cool + } + else_if = { + limit = { ROOT = { has_character_flag = WL_desc_Y } } #Giant + spawn_giant_duelist_effect = yes + } + else_if = { + limit = { ROOT = { has_character_flag = WL_desc_Z } } # Actual bear + spawn_creature_champion_effect = yes + } + + event_target:invited_character = { + save_event_target_as = my_duel_target + set_character_flag = fought_duel_against@ROOT + + #REQUIRED event targets for setting up duel evaluation! + save_event_target_as = combatant_2 #the target of the duel... + } + ROOT = { save_event_target_as = combatant_1 } #the person issuing the duel... + } + + event_target:my_duel_target = { + if = { + limit = { + ROOT = { combat_rating_diff = { who = PREV value = 85 } } # if ROOT is 85 better + } + remove_trait = erudite + remove_disease_trait_effect = yes + clear_disease_level_effect = yes + remove_disease_flags_effect = yes + remove_education_effect = yes + add_trait = brilliant_strategist + remove_lifestyle_trait_effect = yes + add_trait = duelist + remove_all_negative_congenital_traits_effect = yes + add_trait = strong + add_trait = wroth + if = { + limit = { has_severe_disability_trigger = yes } + remove_trait = infirm + remove_trait = mangled + remove_trait = inbred + remove_trait = blinded + remove_trait = incapable + remove_trait = maimed + } + if = { + limit = { has_injury_trigger = yes } + remove_trait = wounded + remove_trait = severely_injured + } + add_one_duel_experience_modifier = yes + add_one_duel_experience_modifier = yes + add_one_duel_experience_modifier = yes + add_one_duel_experience_modifier = yes + add_one_duel_experience_modifier = yes + add_one_duel_experience_modifier = yes + add_one_duel_experience_modifier = yes + add_one_duel_experience_modifier = yes + } + else_if = { + limit = { + ROOT = { combat_rating_diff = { who = PREV value = 65 } } # if ROOT is 65 better + } + remove_trait = erudite + remove_disease_trait_effect = yes + clear_disease_level_effect = yes + remove_disease_flags_effect = yes + remove_education_effect = yes + random_list = { + 10 = { add_trait = elusive_shadow } + 10 = { add_trait = brilliant_strategist } + } + remove_lifestyle_trait_effect = yes + random_list = { + 10 = { add_trait = hunter } + 10 = { add_trait = duelist } + } + random_list = { + 20 = { + add_trait = robust + } + 10 = { + add_trait = strong + } + 10 = { + add_trait = genius + } + 5 = { + health = 1 + } + } + if = { + limit = { has_severe_disability_trigger = yes } + remove_trait = infirm + remove_trait = mangled + remove_trait = inbred + remove_trait = blinded + remove_trait = incapable + remove_trait = maimed + } + if = { + limit = { has_injury_trigger = yes } + remove_trait = wounded + remove_trait = severely_injured + } + add_one_duel_experience_modifier = yes + add_one_duel_experience_modifier = yes + add_one_duel_experience_modifier = yes + } + else_if = { + limit = { + ROOT = { combat_rating_diff = { who = PREV value = 50 } } # if ROOT is 50 better + } + remove_trait = erudite + remove_disease_trait_effect = yes + clear_disease_level_effect = yes + remove_disease_flags_effect = yes + remove_education_effect = yes + random_list = { + 10 = { add_trait = elusive_shadow } + 10 = { add_trait = brilliant_strategist } + } + remove_lifestyle_trait_effect = yes + random_list = { + 10 = { add_trait = hunter } + 10 = { add_trait = duelist } + } + if = { + limit = { has_severe_disability_trigger = yes } + remove_trait = infirm + remove_trait = mangled + remove_trait = inbred + remove_trait = blinded + remove_trait = incapable + remove_trait = maimed + } + if = { + limit = { has_injury_trigger = yes } + remove_trait = wounded + remove_trait = severely_injured + } + add_one_duel_experience_modifier = yes + add_one_duel_experience_modifier = yes + add_one_duel_experience_modifier = yes + } + else_if = { + limit = { + ROOT = { combat_rating_diff = { who = PREV value = 35 } } # if ROOT is 35 better + } + remove_trait = erudite + remove_disease_trait_effect = yes + clear_disease_level_effect = yes + remove_disease_flags_effect = yes + remove_education_effect = yes + remove_lifestyle_trait_effect = yes + if = { + limit = { has_severe_disability_trigger = yes } + remove_trait = infirm + remove_trait = mangled + remove_trait = inbred + remove_trait = blinded + remove_trait = incapable + remove_trait = maimed + } + else_if = { + limit = { has_injury_trigger = yes } + remove_trait = wounded + remove_trait = severely_injured + } + else = { + random_list = { + 10 = { + add_trait = elusive_shadow + random_list = { + 10 = { add_trait = impaler } + 10 = { add_trait = schemer } + } + } + 10 = { + add_trait = brilliant_strategist + random_list = { + 10 = { add_trait = hunter } + 10 = { add_trait = duelist } + } + } + } + } + add_one_duel_experience_modifier = yes + add_one_duel_experience_modifier = yes + } + else_if = { + limit = { + ROOT = { combat_rating_diff = { who = PREV value = 20 } } # if ROOT is 20 better + } + remove_trait = erudite + remove_lifestyle_trait_effect = yes + random_list = { + 10 = { add_trait = hunter } + 10 = { add_trait = duelist } + } + if = { + limit = { NOT = { trait = brave } } + add_trait = brave + } + else_if = { + limit = { has_severe_disability_trigger = yes } + remove_trait = infirm + remove_trait = mangled + remove_trait = inbred + remove_trait = blinded + remove_trait = incapable + remove_trait = maimed + } + else_if = { + limit = { has_injury_trigger = yes } + remove_trait = wounded + remove_trait = severely_injured + } + else_if = { + limit = { NOT = { trait = wroth } } + add_trait = wroth + } + else_if = { + limit = { NOT = { trait = cruel } } + add_trait = cruel + } + } + else_if = { + limit = { + ROOT = { combat_rating_diff = { who = PREV value = 10 } } # if ROOT is 10 better + } + remove_trait = erudite + if = { + limit = { NOT = { trait = brave } } + add_trait = brave + } + else_if = { + limit = { NOT = { trait = wroth } } + add_trait = wroth + } + else_if = { + limit = { NOT = { trait = cruel } } + add_trait = cruel + } + else_if = { + limit = { has_severe_disability_trigger = yes } + remove_trait = infirm + remove_trait = mangled + remove_trait = inbred + remove_trait = blinded + remove_trait = incapable + remove_trait = maimed + } + else_if = { + limit = { has_injury_trigger = yes } + remove_trait = wounded + remove_trait = severely_injured + } + else = { + add_trait = strong + } + } + else = { + #do nothing + } + } + } + if = { # Means you have not reached the "boss" fight + limit = { + NOR = { + has_character_flag = WL_desc_X + has_character_flag = WL_desc_Y + has_character_flag = WL_desc_Z + } + } + randomize_ABCDEF_desc_flag_effect = yes # Get a random desc + } + } + } + + + desc = { + text = EVTDESC_HF_12010_A #Someone is hunting! Aha! + picture = GFX_evt_bandits + trigger = { has_character_flag = WL_desc_A } + } + desc = { + text = EVTDESC_HF_12010_B #Outside the campfire, someone is tending to nature's call + picture = GFX_evt_carriage + trigger = { has_character_flag = WL_desc_B } + } + desc = { + text = EVTDESC_HF_12010_C #In the streets of a village, accosted by locals + picture = GFX_evt_market + trigger = { has_character_flag = WL_desc_C } + } + desc = { + text = EVTDESC_HF_12010_D #A moonlit night, listening to companion snoring, sneaky assassin? + picture = GFX_evt_mysterious_forest + trigger = { has_character_flag = WL_desc_D } + } + desc = { + text = EVTDESC_HF_12010_E #Urchin tips you off, pointing you to finest warrior around + picture = GFX_evt_market + trigger = { has_character_flag = WL_desc_E } + } + # "Boss" fights... + desc = { + text = EVTDESC_HF_12010_X #Boss fight nr 1 (Old Fencer) + picture = GFX_evt_outside_tavern_hf + trigger = { has_character_flag = WL_desc_X } + } + desc = { + text = EVTDESC_HF_12010_Y #Boss fight nr 2 (Giant) + picture = GFX_evt_mounted_combat_day_hf + trigger = { has_character_flag = WL_desc_Y } + } + desc = { + text = EVTDESC_HF_12010_Z #Boss fight nr 3 (Bear) + picture = GFX_evt_sway_hf + trigger = { has_character_flag = WL_desc_Z } + } + + option = { #I shall challenge them to a duel! + name = { + text = EVTOPTA_HF_12010_A #A challenge! Yes, you! Let's fight! + trigger = { has_character_flag = WL_desc_A } + } + name = { + text = EVTOPTA_HF_12010_B #Excellent! I will duel this one! + trigger = { has_character_flag = WL_desc_B } + } + name = { + text = EVTOPTA_HF_12010_C #You wanna say that to me face? Let's fight! + trigger = { has_character_flag = WL_desc_C } + } + name = { + text = EVTOPTA_HF_12010_D #You come armed, eh...? + trigger = { has_character_flag = WL_desc_D } + } + name = { + text = EVTOPTA_HF_12010_E #Aah, such fortune! + trigger = { has_character_flag = WL_desc_E } + } + name = { + text = EVTOPTA_HF_12010_X #I won't go easy on you + trigger = { has_character_flag = WL_desc_X } + } + name = { + text = EVTOPTA_HF_12010_Y #Finally, a challenge! + trigger = { has_character_flag = WL_desc_Y } + } + name = { + text = EVTOPTA_HF_12010_Z #I'll duel anyone sent at me! + trigger = { has_character_flag = WL_desc_Z } + } + trigger_switch = { #To set/display effects properly... + on_trigger = has_character_flag + WL_desc_A = { custom_tooltip = { text = EVTOPTA_HF_12010_A_TT } } + #WL_desc_B = { custom_tooltip = { text = EVTOPTA_HF_12010_B_TT } } + #WL_desc_C = { custom_tooltip = { text = EVTOPTA_HF_12010_C_TT } } + WL_desc_D = { custom_tooltip = { text = EVTOPTA_HF_12010_D_TT } } + WL_desc_E = { custom_tooltip = { text = EVTOPTA_HF_12010_E_TT } } + WL_desc_X = { custom_tooltip = { text = EVTOPTA_HF_12010_X_TT } } + WL_desc_Y = { custom_tooltip = { text = EVTOPTA_HF_12010_Y_TT } } + WL_desc_Z = { custom_tooltip = { text = EVTOPTA_HF_12010_Z_TT } } + } + show_portrait = event_target:my_duel_target + duel_someone_effect = yes + add_2_points_to_legendary_progress_effect = yes # Great progress on journey! + hidden_effect = { + if = { + limit = { + has_character_flag = WL_desc_Z + } + event_target:combatant_2 = { + set_graphical_culture = bear + } + } + } + } + + option = { #You somehow avoid fighting... + name = { + text = EVTOPTB_HF_12010_A # This one looks too big for me + trigger = { has_character_flag = WL_desc_A } + } + name = { + text = EVTOPTB_HF_12010_B + trigger = { has_character_flag = WL_desc_B } + } + name = { + text = EVTOPTB_HF_12010_C + trigger = { has_character_flag = WL_desc_C } + } + name = { + text = EVTOPTB_HF_12010_D #Guys! Wake up! Help! + trigger = { has_character_flag = WL_desc_D } + } + name = { + text = EVTOPTB_HF_12010_E #On second thought, maybe this one is for you, [fellow_member]? + trigger = { has_character_flag = WL_desc_E } + } + + trigger_switch = { #To set/display effects properly... + on_trigger = has_character_flag + WL_desc_A = { custom_tooltip = { text = EVTOPTB_HF_12010_A_TT } } + #WL_desc_B = { custom_tooltip = { text = EVTOPTB_HF_12010_B_TT } } + #WL_desc_C = { custom_tooltip = { text = EVTOPTB_HF_12010_C_TT } } + WL_desc_D = { + custom_tooltip = { text = EVTOPTB_HF_12010_D_TT } + add_character_modifier = { + modifier = black_eye + months = 10 + } + show_portrait = event_target:fellow_member + } + WL_desc_E = { + custom_tooltip = { text = EVTOPTB_HF_12010_E_TT } + if = { + limit = { trait = brave } + remove_trait = brave + } + else = { add_trait = craven } + show_portrait = event_target:fellow_member + } + } + + prestige = -50 + add_1_point_to_legendary_progress_effect = yes # Good progress on journey... + evaluate_legendary_progress_effect = yes + send_legendary_tombola_effect = yes #EDIT: actually *not* superfluous (otehrwise fired from resolve_legendary_duel_effect, which only happens after actual duels) + clr_ABCDEF_desc_flag_effect = yes #to not leave any weird desc-flags behind for next time around... + trigger = { + ai = no + NOR = { #This is not a boss fight... + has_character_flag = WL_desc_X + has_character_flag = WL_desc_Y + has_character_flag = WL_desc_Z + } + } + } + + option = { #This is getting too dangerous... + name = EVTOPTB_HF_12102 + custom_tooltip = { text = EVTOPTB_HF_12010_TT } #Journey is over for you, you return home in shame... + add_trait = craven + prestige = -500 + clean_up_after_legendary_showdown_effect = yes + clr_XYZ_desc_flag_effect = yes + set_character_flag = failed_call_to_legend + + if = { + limit = { + NOT = { + any_society_member = { + same_society_as = ROOT + has_character_flag = call_to_legend_active + NOT = { character = ROOT } + prisoner = no + is_alive = yes + is_dying = no + NOT = { trait = incapable } + } + } + } + custom_tooltip = { + text = EVTOPTC_HF_12103_TT + stop_society_progress = yes + } + } + + trigger = { + has_character_flag = call_to_legend_active + ai = no + OR = { + has_character_flag = WL_desc_X + has_character_flag = WL_desc_Y + has_character_flag = WL_desc_Z + } + } + } +} + +#HF.12011 not in use + +### AI ONLY: AI picks some targets to fight... +character_event = { + id = HF.12100 + is_triggered_only = yes + + trigger = { + ai = yes + } + + hide_window = yes + + immediate = { + event_target:target_ruler = { + any_realm_character = { + limit = { + is_adult = yes + NOT = { same_society_as = ROOT } + is_inaccessible_or_incapable_trigger = no + NOT = { has_character_modifier = bedridden_illness } + NOT = { has_character_modifier = severe_illness } + NOT = { has_character_flag = do_not_disturb } + NOT = { has_character_flag = fought_duel_against@ROOT } + NOT = { character = event_target:my_duel_target } #Can't have previously dueled... + NOT = { character = event_target:target_ruler } #Should not be the ruler themselves... + is_theocracy = no #preferably not, really. It feels weird. + ai = yes + } + score_value = { #Prioritizes selecting a good warrior, if it can... + value = 10 + matching_soldier_score = yes + } + save_event_target_as = my_duel_target + set_character_flag = fought_duel_against@ROOT + character_event = { id = HF.12101 } #give them the challenge... + } + } + } +} + +### AI'S TARGET: Random realm character (my_duel_target) gets to accept or not +character_event = { + id = HF.12101 + is_triggered_only = yes + trigger = { + FROM = { is_alive = yes } + } + + hide_window = yes + + option = { #Oh please. Whatever, let's fight. + #Duel calculation. + #REQUIRED event targets for setting up duel evaluation! + save_event_target_as = combatant_2 #the target of the duel... + FROM = { + set_character_flag = add_duel_xp + set_character_flag = is_legendary_duel + save_event_target_as = combatant_1 #the person issuing the duel... + character_event = { id = HFP.10100 } + } + ai_chance = { + factor = 90 + } + } + option = { #I'll do no such thing. Guards! Imprison this one. + FROM = { imprison = ROOT } #FROM is imprisoned *by* ROOT + set_character_flag = captured_wildling@FROM + + ai_chance = { + factor = 10 + modifier = { + factor = 0.1 #way less likely if there has already been one capture + any_society_member = { + same_society_as = FROM + NOT = { character = FROM } + OR = { + has_character_flag = call_to_legend_active + has_character_flag = completed_call_to_legend + has_character_flag = failed_call_to_legend + } + prisoner = yes + } + } + modifier = { + factor = 0.1 #way less likely if there is no player involved at all + NOT = { + any_society_member = { + same_society_as = FROM + ai = no # player + } + } + } + } + + trigger = { + is_landed = yes + FROM = { + #if they have made it past 10, they can no longer be imprisoned... + NOT = { check_variable = { which = legendary_event_progress value = 10 } } + } + } + } +} + +# on_become_imprisoned_any_reason: make sure people know what happened! +character_event = { + id = HF.12305 + hide_window = yes + is_triggered_only = yes + + trigger = { + has_character_flag = call_to_legend_active #means you were captured somehow, while on this journey + } + + immediate = { + FROM = { save_event_target_as = enemy_captor } + + if = { + limit = { + any_society_member = { + same_society_as = ROOT + NOT = { character = ROOT } + ai = no #if there is a player in the society, basically + } + } + #send event to player... + any_society_member = { + limit = { + same_society_as = ROOT + NOT = { character = ROOT } + ai = no + } + character_event = { id = HF.12102 days = 1 } #my friend was captured (+ how)..! + } + } + else = { #if this is an observer game...? + FROM = { clr_character_flag = captured_wildling@ROOT } + if = { + limit = { + NOT = { + any_society_member = { + same_society_as = ROOT + has_character_flag = call_to_legend_active + NOT = { character = ROOT } + prisoner = no + is_alive = yes + is_dying = no + NOT = { trait = incapable } + } + } + } + stop_society_progress = yes + } + } + set_character_flag = failed_call_to_legend + clean_up_after_legendary_showdown_effect = yes + } +} + + +# PLAYER: Original hero (and other players involved in the chain) finds out their friend was imprisoned... +character_event = { + id = HF.12102 + title = legendary_loss_title + picture = GFX_evt_duel_scene + border = GFX_event_normal_frame_war + is_triggered_only = yes + + portrait = FROM + + trigger = { + is_alive = yes + } + + immediate = { + if = { + limit = { event_target:enemy_captor = { has_character_flag = captured_wildling@FROM } } + set_character_flag = dueler_captured@FROM + } + } + + desc = { + text = EVTDESC_HF_12102 #My travel companion was imprisoned, after issuing a challenge! + trigger = { + has_character_flag = call_to_legend_active + has_character_flag = dueler_captured@FROM + } + } + desc = { + text = EVTDESC_HF_12102_B #A hero was imprisoned by the enemy, after issuing a challenge! + trigger = { + NOT = { has_character_flag = call_to_legend_active } + has_character_flag = dueler_captured@FROM + } + } + + desc = { + text = EVTDESC_HF_12102_other_reason #My travel companion was imprisoned, somehow + trigger = { + has_character_flag = call_to_legend_active + NOT = { has_character_flag = dueler_captured@FROM } + } + } + desc = { + text = EVTDESC_HF_12102_B_other_reason #A hero was imprisoned, somehow + trigger = { + NOT = { has_character_flag = call_to_legend_active } + NOT = { has_character_flag = dueler_captured@FROM } + } + } + + option = { #How unfortunate (but there are still people left on the journey) + name = EVTOPTA_HF_12103 + custom_tooltip = { text = EVTOPTA_HF_12102_TT } #Their journey is over + show_portrait = event_target:enemy_captor + clr_character_flag = dueler_captured@FROM + custom_tooltip = { text = EVTOPTA_HF_12103_TT } #Others will carry on + trigger = { + any_society_member = { + same_society_as = ROOT + NOT = { character = ROOT } + has_character_flag = call_to_legend_active + prisoner = no + is_alive = yes + is_dying = no + NOT = { trait = incapable } + } + } + } + option = { # I am the last one standing then + name = EVTOPTB_HF_12103_B + custom_tooltip = { text = EVTOPTA_HF_12102_TT } #Their journey is over + show_portrait = event_target:enemy_captor + clr_character_flag = dueler_captured@FROM + trigger = { + has_character_flag = call_to_legend_active + NOT = { + any_society_member = { + same_society_as = ROOT + has_character_flag = call_to_legend_active + NOT = { character = ROOT } + prisoner = no + is_alive = yes + is_dying = no + NOT = { trait = incapable } + } + } + } + } + option = { # That's the end of it then (all heroes are gone somehow) + name = EVTOPTC_HF_12103 + custom_tooltip = { text = EVTOPTA_HF_12102_TT } #Their journey is over + show_portrait = event_target:enemy_captor + clr_character_flag = dueler_captured@FROM + custom_tooltip = { + text = EVTOPTC_HF_12103_TT + stop_society_progress = yes + } + trigger = { + NOT = { + any_society_member = { + same_society_as = ROOT + has_character_flag = call_to_legend_active + prisoner = no + is_alive = yes + is_dying = no + NOT = { trait = incapable } + } + } + } + } + option = { #This is getting too dangerous... + name = EVTOPTB_HF_12102 + custom_tooltip = { text = EVTOPTB_HF_12102_TT } + add_trait = craven + prestige = -500 + show_portrait = event_target:enemy_captor + clean_up_after_legendary_showdown_effect = yes + clr_character_flag = dueler_captured@FROM + set_character_flag = failed_call_to_legend + + if = { + limit = { + NOT = { + any_society_member = { + same_society_as = ROOT + has_character_flag = call_to_legend_active + NOT = { character = ROOT } + prisoner = no + is_alive = yes + is_dying = no + NOT = { trait = incapable } + } + } + } + custom_tooltip = { + text = EVTOPTC_HF_12103_TT + stop_society_progress = yes + } + } + + trigger = { + ai = no + has_character_flag = call_to_legend_active + has_character_flag = dueler_captured@FROM + } + } + after = { + event_target:enemy_captor = { clr_character_flag = captured_wildling@FROM } + } +} + +# PLAYER: Original hero (and other players involved in the chain) finds out their friend died... +character_event = { + id = HF.12103 + title = legendary_loss_title + desc = EVTDESC_HF_12103 #They were killed by the enemy... + picture = GFX_evt_battle + border = GFX_event_normal_frame_war + is_triggered_only = yes + + trigger = { + NOT = { has_character_flag = viewing_event_HF_12103 } #As this might fire from multiple places... + } + + immediate = { + set_character_flag = viewing_event_HF_12103 + } + + option = { #How unfortunate (but there are still people left on the journey) + name = EVTOPTA_HF_12103 + custom_tooltip = { + text = EVTOPTA_HF_12103_TT + } + trigger = { + event_target:target_society = { + any_society_member = { + NOT = { character = ROOT } + has_character_flag = call_to_legend_active + prisoner = no + is_alive = yes + is_dying = no + NOT = { trait = incapable } + } + } + } + } + option = { # I am the last one standing then + name = EVTOPTB_HF_12103 + custom_tooltip = { text = EVTOPTB_HF_12103_TT } #It is you! The last one! + trigger = { + has_character_flag = call_to_legend_active + society_member_of = event_target:target_society + NOT = { + event_target:target_society = { + any_society_member = { + same_society_as = ROOT + NOT = { character = ROOT } + has_character_flag = call_to_legend_active + prisoner = no + is_alive = yes + is_dying = no + NOT = { trait = incapable } + } + } + } + } + } + option = { # That's the end of it then (all heroes are gone somehow) + name = EVTOPTC_HF_12103 + if = { + limit = { society_member_of = event_target:target_society } + custom_tooltip = { + text = EVTOPTC_HF_12103_TT + stop_society_progress = yes #Only if you are still in a warrior lodge + } + } + if = { + limit = { society_member_of = event_target:target_society } + add_character_modifier = { + modifier = drinking_to_fallen_friends + years = 10 + } + } + hidden_effect = { + if = { + limit = { society_member_of = event_target:target_society } + any_society_member = { + limit = { + same_society_as = ROOT + NOT = { character = ROOT } + prisoner = no + is_alive = yes + is_dying = no + NOT = { trait = incapable } + } + + add_character_modifier = { + modifier = drinking_to_fallen_friends + years = 10 + } + } + } + } + + trigger = { + society_member_of = event_target:target_society + NOT = { + any_society_member = { + same_society_as = ROOT + has_character_flag = call_to_legend_active + prisoner = no + is_alive = yes + is_dying = no + NOT = { trait = incapable } + } + } + } + } + after = { + clr_character_flag = viewing_event_HF_12103 + } +} + +# PLAYER: Original hero (and other players involved in the chain) finds out their friend did well! +character_event = { + id = HF.12104 + title = legendary_victory_title + desc = EVTDESC_HF_12104 #They did so well! + picture = GFX_evt_battle + border = GFX_event_normal_frame_war + is_triggered_only = yes + trigger = { + is_alive = yes + } + + immediate = { + + } + + option = { #So it is. + name = EVTOPTA_HF_12104 + #custom_tooltip = { text = EVTOPTA_HF_12104_TT } + stop_society_progress = yes + } +} + +### New duel outcomes ### +#DEATH: I killed my opponent - I won! +character_event = { + id = HF.12200 + title = getDuelTitle + picture = GFX_evt_duel_scene + border = GFX_event_normal_frame_war + is_triggered_only = yes + portrait = event_target:other_combatant + + immediate = { + set_winner_flags_and_save_opponent_effect = yes + + hidden_effect = { + if = { + limit = { + event_target:combatant_1 = { has_character_flag = WL_desc_Z } + } + event_target:combatant_2 = { + set_graphical_culture = bear + } + } + } + + random_list = { + 5 = { # You will be injured somehow (flags already set)... + bad_soldier_outcome_score = yes #Increases risk, if you are bad at this... + bad_soldier_outcome_score = yes #Increases risk, if you are bad at this... + } + 10 = { # ONLY gives the Severely Injured trait, but no maiming... + set_character_flag = severely_injured + bad_soldier_outcome_score = yes #Increases risk, if you are bad at this... + } + 20 = { # ONLY gives bruises, etc... + set_character_flag = mildly_injured + good_soldier_outcome_score = yes #Increases chance, if you are good at this... + } + 20 = { # You are completely safe... + good_soldier_outcome_score = yes #Increases chance, if you are good at this... + good_soldier_outcome_score = yes #Increases chance, if you are good at this... + set_character_flag = ignore_damage + } + } + } + + desc = { + text = EVTDESC_HF_12200_A #Someone is hunting! Aha! + trigger = { has_character_flag = WL_desc_A } + } + desc = { + text = EVTDESC_HF_12200_B #Outside the campfire, someone is tending to nature's call + trigger = { has_character_flag = WL_desc_B } + } + desc = { + text = EVTDESC_HF_12200_C #In the streets of a village, accosted by locals + trigger = { has_character_flag = WL_desc_C } + } + desc = { + text = EVTDESC_HF_12200_D #A moonlit night, listening to companion snoring, sneaky assassin? + trigger = { has_character_flag = WL_desc_D } + } + desc = { + text = EVTDESC_HF_12200_E #Urchin tips you off, pointing you to finest warrior around + trigger = { has_character_flag = WL_desc_E } + } +# desc = { +# text = EVTDESC_HF_12200_F #TBD +# trigger = { has_character_flag = WL_desc_F } +# } + + # Boss fights... + desc = { + text = EVTDESC_HF_12200_X #Old man/woman + picture = GFX_evt_dueling_knights_hf + trigger = { has_character_flag = WL_desc_X } + } + desc = { + text = EVTDESC_HF_12200_Y #Giant local tournament + picture = GFX_evt_dueling_knights_hf + trigger = { has_character_flag = WL_desc_Y } + } + desc = { + text = EVTDESC_HF_12200_Z #Bear/Dragon + picture = GFX_evt_dueling_knights_hf + trigger = { has_character_flag = WL_desc_Z } + } + + option = { + name = { + text = EVTOPTA_HFP_10103_default #I... Yes, that was on purpose! + trigger = { + NOR = { + trait = duelist + trait = kind + is_rival = event_target:other_combatant + is_friend = event_target:other_combatant + event_target:other_combatant = { duelist_skill_compared_to_prev_low_group_trigger = yes } + duelist_skill_is_high_group_trigger = yes + } + } + } + name = { + text = EVTOPTA_HFP_10103_duelist #Another victorious match. + trigger = { + OR = { + trait = duelist + event_target:other_combatant = { duelist_skill_compared_to_prev_low_group_trigger = yes } + duelist_skill_is_high_group_trigger = yes + } + } + } + name = { + text = EVTOPTA_HFP_10103_sad #I'm sorry it had to end this way. + trigger = { + OR = { + trait = kind + is_friend = event_target:other_combatant + } + } + } + name = { + text = EVTOPTA_HFP_10103_mean #Your death makes sense + trigger = { + OR = { + trait = cruel + is_rival = event_target:other_combatant + } + } + } + custom_tooltip = { text = you_win_the_duel_tt } + apply_generic_duel_victory_effect = yes + + if = { # Only add injury if you were unlucky enough to get it... + limit = { NOT = { has_character_flag = ignore_damage } } + apply_selected_duel_injury_effect = yes + } + + add_blood_splatter_effect = yes + + tooltip = { + event_target:other_combatant = { + show_scope_change = no + death = { + death_reason = death_duel + killer = ROOT + } + } + } + } + after = { + hidden_effect = { + event_target:other_combatant = { character_event = { id = HF.12201 } } #"I was decapitated" event + } + tooltip = { + clean_up_after_duel_effect = yes + } + } +} + +#DEATH: I died in the duel - I lost (fired from HFP.10103 above) +character_event = { + id = HF.12201 + picture = GFX_evt_duel_scene + border = GFX_event_normal_frame_war + title = getDuelTitle + is_triggered_only = yes + portrait = event_target:other_combatant + + immediate = { + set_loser_flags_and_save_opponent_effect = yes + hidden_effect = { + if = { limit = { has_character_flag = is_legendary_duel } } #means you were the instigator/hero + current_heir = { save_event_target_as = new_story_owner } #So your heir will find out what happened and can be referred to in text... + } + if = { + limit = { multiplayer = yes } + if = { + limit = { event_target:combatant_1 = { character = ROOT } } #if you instigated this... + death = { + death_reason = death_legendary_fail_duel #you died trying... + killer = event_target:other_combatant + } + } + else = { + death = { + death_reason = death_legendary_win_duel #you successfully killed someone on your hunt for glory! + killer = event_target:other_combatant + } + } + } + } + + desc = { + text = EVTDESC_HF_12201_A #Someone is hunting! Aha! + trigger = { has_character_flag = WL_desc_A } + } + desc = { + text = EVTDESC_HF_12201_B #Outside the campfire, someone is tending to nature's call + trigger = { has_character_flag = WL_desc_B } + } + desc = { + text = EVTDESC_HF_12201_C #In the streets of a village, accosted by locals + trigger = { has_character_flag = WL_desc_C } + } + desc = { + text = EVTDESC_HF_12201_D #A moonlit night, listening to companion snoring, sneaky assassin? + trigger = { has_character_flag = WL_desc_D } + } + desc = { + text = EVTDESC_HF_12201_E #Urchin tips you off, pointing you to finest warrior around + trigger = { has_character_flag = WL_desc_E } + } +# desc = { +# text = EVTDESC_HF_12201_F #TBD +# trigger = { has_character_flag = WL_desc_F } +# } + + # Boss fights. + desc = { + text = EVTDESC_HF_12201_X #Old man/woman + picture = GFX_evt_cornered_duel_hf + trigger = { has_character_flag = WL_desc_X } + } + desc = { + text = EVTDESC_HF_12201_Y #Giant (local tournament) + picture = GFX_evt_dueling_knights_hf + trigger = { has_character_flag = WL_desc_Y } + } + desc = { + text = EVTDESC_HF_12201_Z #Bear/Dragon + picture = GFX_evt_dueling_knights_hf + trigger = { has_character_flag = WL_desc_Z } + } + + option = { + name = EVTOPTA_HFP_10104 #Nooooo...! + custom_tooltip = { text = you_lose_the_duel_tt } + if = { + limit = { has_character_flag = WL_desc_C } + show_portrait = event_target:target_ruler + } + if = { + limit = { multiplayer = no } + if = { + limit = { event_target:combatant_1 = { character = ROOT } } #if you instigated this... + death = { + death_reason = death_legendary_fail_duel #you died trying... + killer = event_target:other_combatant + } + } + else = { + death = { + death_reason = death_legendary_win_duel #you successfully killed someone on your hunt for glory! + killer = event_target:other_combatant + } + } + } + } + after = { + hidden_effect = { + FROM = { clean_up_after_duel_effect = yes } #test if this works, even if character is_dying + clean_up_after_duel_effect = yes + } + } +} + +#Double death - Attacker +character_event = { + id = HF.12204 + picture = GFX_evt_duel_scene + border = GFX_event_normal_frame_war + title = getDuelTitle + is_triggered_only = yes + portrait = event_target:combatant_2 + immediate = { + hidden_effect = { + if = { limit = { has_character_flag = is_legendary_duel } } #means you were the instigator/hero + current_heir = { save_event_target_as = new_story_owner } #So your heir will find out what happened and can be referred to in text... + } + hidden_effect = { + if = { + limit = { + event_target:combatant_1 = { has_character_flag = WL_desc_Z } + } + event_target:combatant_2 = { + set_graphical_culture = bear + } + } + } + + if = { + limit = { multiplayer = yes } + if = { + limit = { event_target:combatant_1 = { character = ROOT } } #if you instigated this... + death = { + death_reason = death_legendary_fail_duel #you died trying... + killer = event_target:combatant_2 + } + } + else = { + death = { + death_reason = death_legendary_win_duel #you successfully killed someone on your hunt for glory! + killer = event_target:combatant_1 + } + } + } + } + desc = { + trigger = { NOR = { has_character_flag = elegant_double_KO has_character_flag = clumsy_double_KO } } + text = EVTDESC_HFP_10101_default + } + desc = { + trigger = { has_character_flag = clumsy_double_KO } + text = EVTDESC_HFP_10101_clumsy + } + desc = { + trigger = { has_character_flag = elegant_double_KO } + text = EVTDESC_HFP_10101_elegant + } + + option = { + name = { + text = EVTOPTA_HFP_10101_default + trigger = { NOR = { has_character_flag = elegant_double_KO has_character_flag = clumsy_double_KO } } + } + name = { + text = EVTOPTA_HFP_10101_clumsy + trigger = { has_character_flag = clumsy_double_KO } + } + name = { + text = EVTOPTA_HFP_10101_elegant + trigger = { has_character_flag = elegant_double_KO } + } + custom_tooltip = { text = no_one_wins_the_duel_tt } + tooltip = { + event_target:combatant_2 = { + show_scope_change = no + death = { + death_reason = death_legendary_win_duel + killer = ROOT + } + } + } + if = { + limit = { multiplayer = no } + if = { + limit = { event_target:combatant_1 = { character = ROOT } } #if you instigated this... + death = { + death_reason = death_legendary_fail_duel #you died trying... + killer = event_target:combatant_2 + } + } + else = { + death = { + death_reason = death_legendary_win_duel #you successfully killed someone on your hunt for glory! + killer = event_target:combatant_1 + } + } + } + } + after = { + hidden_effect = { + clean_up_after_duel_effect = yes + } + } +} + +#Double death - Defender +character_event = { + id = HF.12205 + picture = GFX_evt_duel_scene + border = GFX_event_normal_frame_war + title = getDuelTitle + is_triggered_only = yes + portrait = event_target:combatant_1 + + immediate = { + hidden_effect = { + if = { limit = { has_character_flag = is_legendary_duel } } #means you were the instigator/hero + current_heir = { save_event_target_as = new_story_owner } #So your heir will find out what happened and can be referred to in text... + } + hidden_effect = { + if = { + limit = { + event_target:combatant_1 = { has_character_flag = WL_desc_Z } + } + event_target:combatant_2 = { + set_graphical_culture = bear + } + } + } + + if = { + limit = { multiplayer = yes } + if = { + limit = { event_target:combatant_1 = { character = ROOT } } #if you instigated this... + death = { + death_reason = death_legendary_fail_duel #you died trying... + killer = event_target:combatant_2 + } + } + else = { + death = { + death_reason = death_legendary_win_duel #you successfully killed someone on your hunt for glory! + killer = event_target:combatant_1 + } + } + } + } + + desc = { + trigger = { NOR = { has_character_flag = elegant_double_KO has_character_flag = clumsy_double_KO } } + text = EVTDESC_HFP_10102_default + } + desc = { + trigger = { has_character_flag = clumsy_double_KO } + text = EVTDESC_HFP_10102_clumsy + } + desc = { + trigger = { has_character_flag = elegant_double_KO } + text = EVTDESC_HFP_10102_elegant + } + + option = { + name = { + text = EVTOPTA_HFP_10102_default + trigger = { NOR = { has_character_flag = elegant_double_KO has_character_flag = clumsy_double_KO } } + } + name = { + text = EVTOPTA_HFP_10102_clumsy + trigger = { has_character_flag = clumsy_double_KO } + } + name = { + text = EVTOPTA_HFP_10102_elegant + trigger = { has_character_flag = elegant_double_KO } + } + custom_tooltip = { text = no_one_wins_the_duel_tt } + tooltip = { + event_target:combatant_1 = { + show_scope_change = no + death = { + death_reason = death_legendary_win_duel + killer = ROOT + } + } + } + if = { + limit = { multiplayer = no } + if = { + limit = { event_target:combatant_1 = { character = ROOT } } #if you instigated this... + death = { + death_reason = death_legendary_fail_duel #you died trying... + killer = event_target:combatant_2 + } + } + else = { + death = { + death_reason = death_legendary_win_duel #you successfully killed someone on your hunt for glory! + killer = event_target:combatant_1 + } + } + } + } + after = { + hidden_effect = { + clean_up_after_duel_effect = yes + } + } +} + + +#Cowardly display? Humiliation? - I won! +character_event = { + id = HF.12202 + desc = EVTDESC_HFP_10107 + picture = GFX_evt_duel_scene + border = GFX_event_normal_frame_war + title = getDuelTitle + is_triggered_only = yes + + portrait = event_target:other_combatant + + immediate = { + set_winner_flags_and_save_opponent_effect = yes + } + + option = { + name = EVTOPTA_HFP_10107 # Look at them run! + custom_tooltip = { text = you_win_the_duel_tt } + apply_generic_duel_victory_effect = yes + } + after = { + clean_up_after_duel_effect = yes + } +} + +#Cowardly display - I lost +character_event = { + id = HF.12203 + desc = EVTDESC_HFP_10108 #I ran away...! + picture = GFX_evt_duel_scene + border = GFX_event_normal_frame_war + title = getDuelTitle + is_triggered_only = yes + immediate = { + set_loser_flags_and_save_opponent_effect = yes + clr_character_flag = add_duel_xp #Because you are chicken! No reward! + set_character_flag = failed_mission #Because makes no sense this clears the mission... + } + + portrait = event_target:other_combatant + + option = { + name = { + text = EVTOPTA_HFP_10108_craven + trigger = { trait = craven } + } + name = { + text = EVTOPTA_HFP_10108_shy + trigger = { trait = shy } + } + name = { + text = EVTOPTA_HFP_10108_wroth + trigger = { trait = wroth } + } + name = { + text = EVTOPTA_HFP_10108 #I should've stayed and fought! + trigger = { + NOR = { + trait = craven + trait = shy + trait = wroth + } + } + } + custom_tooltip = { text = you_lose_the_duel_tt } + } + after = { + set_character_flag = skip_blood_effect + clean_up_after_duel_effect = yes + } +} + +### Final event. Found a bloodline?! ALIVE ### +narrative_event = { + id = HF.12300 + title = EVTTITLE_HF_12300 + desc = EVTDESC_HF_12300 + picture = GFX_evt_diplomatic_greeting + border = GFX_event_narrative_frame_war + is_triggered_only = yes + + portrait = event_target:my_beloved + + trigger = { + + } + + immediate = { + hidden_effect = { + if = { #Back up, in case the ruler we are talking about is dead... + limit = { event_target:target_ruler = { NOT = { is_alive = yes } } } + event_target:target_title = { + holder_scope = { top_liege = { save_event_target_as = target_ruler } } + } + } + any_courtier_or_vassal = { + limit = { + is_inaccessible_or_incapable_trigger = no + age = 14 + } + score_value = { #Prioritizes selecting some kind of loved person... + value = 1 + beloved_target_selection_score = yes + } + #Effect: + save_event_target_as = my_beloved + } + } + } + + option = { + name = EVTOPTA_HF_12300 + + #Create a bloodline that fits your achievements... + found_a_legendary_bloodline_effect = yes + + sound_effect = bloodline_added + set_character_flag = completed_call_to_legend + + if = { + limit = { ai = no } + set_character_flag = achievement_zero_to_hero + } + + trigger_switch = { + on_trigger = has_character_flag + bloodline_quality_1 = { + prestige = 100 + } + bloodline_quality_2 = { + prestige = 300 + } + bloodline_quality_3 = { + prestige = 500 + } + } + + add_character_modifier = { #For life + name = renowned_hero + duration =-1 + } + + any_society_member = { + limit = { + same_society_as = ROOT + NOT = { character = ROOT } + } + narrative_event = { id = HF.12302 } #News event to fellow society members... + } + if = { + limit = { + NOT = { + any_society_member = { + same_society_as = ROOT + has_character_flag = call_to_legend_active + NOT = { character = ROOT } + prisoner = no + is_alive = yes + is_dying = no + NOT = { trait = incapable } + } + } + } + custom_tooltip = { + text = EVTOPTC_HF_12103_TT + stop_society_progress = yes + } + } + hidden_effect = { + event_target:target_ruler = { + narrative_event = { id = HF.12303 } #News event to the target ruler... + } + } + clean_up_after_legendary_showdown_effect = yes + stop_slow_AIs_effect = yes #To make sure this thing does not go on forever... + } +} + +### Final event. Found a bloodline?! DEAD. ### For current heir +narrative_event = { + id = HF.12301 + title = EVTTITLE_HF_12300 + desc = EVTDESC_HF_12301 + picture = GFX_evt_bloodlines + border = GFX_event_narrative_frame_war + is_triggered_only = yes + + immediate = { + if = { #Back up, in case the ruler we are talking about is dead... + limit = { event_target:target_ruler = { NOT = { is_alive = yes } } } + event_target:target_title = { + holder_scope = { top_liege = { save_event_target_as = target_ruler } } + } + } + } + option = { + name = EVTOPTA_HF_12301 + sound_effect = bloodline_added + event_target:bloodline_founder = { + custom_tooltip = { text = found_bloodline_tt } + } + hidden_effect = { + event_target:target_ruler = { + narrative_event = { id = HF.12303 } #News event to the target ruler... + } + } + } +} + +### News events to society members ### +narrative_event = { + id = HF.12302 + title = EVTTITLE_HF_12300 + picture = GFX_evt_diplomatic_greeting + border = GFX_event_narrative_frame_war + is_triggered_only = yes + + desc = { + text = EVTDESC_HF_12302_A + picture = GFX_evt_diplomatic_greeting + trigger = { event_target:bloodline_founder = { is_alive = yes } } + } + desc = { + text = EVTDESC_HF_12302_B + picture = GFX_evt_bloodlines + trigger = { + event_target:bloodline_founder = { + OR = { + is_dying = yes + is_alive = no + } + } + } + } + + option = { + name = EVTOPTA_HF_12302 + add_character_modifier = { + modifier = inspired_by_legends + years = 10 + } + event_target:bloodline_founder = { + custom_tooltip = { text = found_bloodline_tt } + } + } +} + +### News events to target_ruler ### +narrative_event = { + id = HF.12303 + title = EVTTITLE_HF_12300 + desc = EVTDESC_HF_12303 + picture = GFX_evt_bloodlines + border = GFX_event_narrative_frame_war + is_triggered_only = yes + + option = { + name = EVTOPTA_HF_12303 + add_character_modifier = { + modifier = annoyed_with_barbarians + years = 10 + } + } +} + +######################################################## +####### Legendary Bloodline effects/flavor events ###### +######################################################## + +# EAGLE: Dream about hunting with your bird and tadaaa: an eagle has snuck into your chambers! +character_event = { + id = HF.12400 + desc = EVTDESC_HF_12400 + picture = GFX_evt_hunt + border = GFX_event_normal_frame_war + is_triggered_only = yes + trigger = { + NOT = { has_character_modifier = pet_hunting_eagle } + any_owned_bloodline = { has_bloodline_flag = bloodline_pet_eagle } + is_inaccessible_trigger = no + war = no + } + + fail_trigger_effect = { #Basically, if something temporary is affecting this, check back later... + if = { + limit = { + NOT = { has_character_modifier = pet_hunting_eagle } + any_owned_bloodline = { has_bloodline_flag = bloodline_pet_eagle } + OR = { + is_inaccessible_trigger = yes + war = yes + } + } + character_event = { id = HF.12400 days = 365 random = 60 } #Check back if you have yet not received a new bird... + } + } + + immediate = { + random_owned_bloodline = { + limit = { + has_bloodline_flag = bloodline_pet_eagle + founder = { NOT = { character = ROOT } } + } + founder = { + save_event_target_as = bloodline_founder + } + } + } + + # A.1 + option = { # A new friend? + name = EVTOPTA_HF_12400 + custom_tooltip = { text = EVTOPTA_HF_12400_TT } + add_character_modifier = { + name = pet_hunting_eagle + duration = -1 + } + hidden_effect = { + character_event = { id = HF.25631 days = 7300 random = 1500 } #Death. + #character_event = { id = HF.25631 days = 5 random = 1 } #Death. #Test values + } + trigger = { + NOT = { event_target:bloodline_founder = { always = yes } } #(Means you are the founder) + } + } + # A.2 + option = { # My ancestor would be approve + name = EVTOPTB_HF_12400 + custom_tooltip = { text = EVTOPTB_HF_12400_TT } + add_character_modifier = { + name = pet_hunting_eagle + duration = -1 + } + hidden_effect = { + character_event = { id = HF.25631 days = 7300 random = 1500 } #Death. + #character_event = { id = HF.25631 days = 5 random = 1 } #Death. #Test values + } + trigger = { + event_target:bloodline_founder = { always = yes } #(Means you are NOT the founder) + } + } + + #B. Dismiss + option = { # I'm going back to sleep + name = EVTOPTC_HF_12400 + custom_tooltip = { text = EVTOPTC_HF_12400_TT } + } +} + + +# DOG: Sparring, hear barking dog and tadaaa: it's for you! +character_event = { + id = HF.12401 + desc = EVTDESC_HF_12401 + picture = GFX_evt_hunting_scene + border = GFX_event_normal_frame_war + is_triggered_only = yes + + trigger = { + NOT = { has_character_modifier = pet_hunting_dog } + any_owned_bloodline = { has_bloodline_flag = bloodline_pet_dog } + is_inaccessible_trigger = no + war = no + } + + fail_trigger_effect = { #Basically, if something temporary is affecting this, check back later... + if = { + limit = { + NOT = { has_character_modifier = pet_hunting_dog } + any_owned_bloodline = { has_bloodline_flag = bloodline_pet_dog } + OR = { + is_inaccessible_trigger = yes + war = yes + } + } + character_event = { id = HF.12400 days = 365 random = 60 } #Check back if you have yet not received a new bird... + } + } + + immediate = { + random_owned_bloodline = { + limit = { + has_bloodline_flag = bloodline_pet_dog + founder = { NOT = { character = ROOT } } + } + founder = { + save_event_target_as = bloodline_founder + } + } + } + + # A.1 + option = { # A new friend? + name = EVTOPTA_HF_12401 + custom_tooltip = { text = EVTOPTA_HF_12401_TT } + add_character_modifier = { + name = pet_hunting_dog + duration = -1 + } + hidden_effect = { + character_event = { id = HF.12402 days = 7300 random = 1500 } #Dog dies... + } + trigger = { + NOT = { event_target:bloodline_founder = { always = yes } } #(Means you are the founder) + } + } + # A.2 + option = { # My ancestor would be approve + name = EVTOPTB_HF_12401 + custom_tooltip = { text = EVTOPTB_HF_12401_TT } + add_character_modifier = { + name = pet_hunting_dog + duration = -1 + } + hidden_effect = { + character_event = { id = HF.12402 days = 7300 random = 1500 } #Dog dies... + } + trigger = { + event_target:bloodline_founder = { always = yes } #(Means you are NOT the founder) + } + } + #B. Dismiss + option = { # I'm going back to sleep + name = EVTOPTC_HF_12401 + custom_tooltip = { text = EVTOPTC_HF_12401_TT } + } +} + +# DOG: New dog funeral event (for non-WoL dog above) +character_event = { + id = HF.12402 + desc = EVTDESC_HF_12402 + picture = GFX_evt_hunting_scene + border = GFX_event_normal_frame_war + is_triggered_only = yes + trigger = { + + } + + immediate = { + + } + + option = { + name = EVTOPTA_HF_12402 + custom_tooltip = { text = EVTOPTA_HF_12402_TT } + remove_character_modifier = pet_hunting_dog + } +# option = { +# name = EVTOPTB_HF_12402 +# custom_tooltip = { text = EVTOPTB_HF_12402_TT } +# remove_character_modifier = pet_hunting_dog +# } +} + +# BATTLE EVENT: Bonus battle event for any *battle bard bloodline* +character_event = { + id = HF.12405 + title = the_battle_at_location + desc = EVTDESC_HF_12405 + picture = GFX_evt_duel_scene + border = GFX_event_normal_frame_war + is_triggered_only = yes + trigger = { + NOR = { + has_character_modifier = inspired_singer + has_character_modifier = inspired_drummer + } + } + + immediate = { + + } + + option = { + name = EVTOPTA_HF_12405 + #custom_tooltip = { text = EVTOPTA_HF_12405_TT } + add_character_modifier = { + name = inspired_singer + years = 3 + } + } + option = { + name = EVTOPTB_HF_12405 + #custom_tooltip = { text = EVTOPTB_HF_12405_TT } + add_character_modifier = { + name = inspired_drummer + years = 3 + } + } +} + diff --git a/MOD/Witcher/events/hf_warrior_lodge_war_aid_events.txt b/MOD/Witcher/events/hf_warrior_lodge_war_aid_events.txt new file mode 100644 index 000000000..f9ff1312a --- /dev/null +++ b/MOD/Witcher/events/hf_warrior_lodge_war_aid_events.txt @@ -0,0 +1,1163 @@ +########################################### +# # +# Warrior Lodge War Aid events # +# # +# # +# ID HF.50000-HF.50107 # +# # +########################################### + +namespace = HF + +#Consider sending a proposal for aid in war +# From = Attacker, Root = Defender +character_event = { + id = HF.50000 + + is_triggered_only = yes + has_dlc = "Holy Fury" + war = yes + ai = yes + hide_window = yes + + trigger = { + is_member_of_any_warrior_lodge_trigger = yes + + is_primary_war_defender = yes + + any_war = { + NOR = { + attacker = { using_cb = peasant_revolt } + defender = { using_cb = peasant_revolt } + } + } + + any_player= { + war = no + is_within_diplo_range = ROOT + same_society_as = ROOT + NOT = { vassal_of = ROOT } + + is_within_diplo_range = FROM + NOR = { + vassal_of = FROM + has_non_aggression_pact_with = FROM + is_allied_with = FROM + } + NAND = { #So the player is not liege of both characters... + ROOT = { + any_liege = { + character = PREVPREV + } + } + FROM = { + any_liege = { + character = PREVPREV + } + } + } + NAND = { + is_tributary = yes + suzerain = { + OR = { + character = ROOT + character = FROM + any_liege = { character = ROOT } + any_liege = { character = FROM } + } + } + } + } + } + + immediate = { + save_event_target_as = warrior_lodge_war_defender + + FROM = { + save_event_target_as = warrior_lodge_war_attacker + character_event = { id = HF.50001 } + } + + random_player= { + limit = { + war = no + is_within_diplo_range = ROOT + same_society_as = ROOT + NOT = { vassal_of = ROOT } + + is_within_diplo_range = FROM + NOR = { + vassal_of = FROM + has_non_aggression_pact_with = FROM + is_allied_with = FROM + } + NAND = { #So the player is not liege of both characters... + ROOT = { + any_liege = { + character = PREVPREV + } + } + FROM = { + any_liege = { + character = PREVPREV + } + } + } + + NAND = { + is_tributary = yes + suzerain = { + OR = { + character = ROOT + character = FROM + any_liege = { character = ROOT } + any_liege = { character = FROM } + } + } + } + } + save_event_target_as = player_target + } + + event_target:player_target = { + random_list = + { + 40 = { + modifier = { + event_target:player_target = { + is_lover = event_target:warrior_lodge_war_defender + } + factor = 2 + } + modifier = { + event_target:player_target = { + is_friend = event_target:warrior_lodge_war_defender + } + factor = 2 + } + modifier = { + event_target:warrior_lodge_war_defender = { + opinion = { who = event_target:player_target value = 30 } + } + factor = 1.1 + } + modifier = { + event_target:warrior_lodge_war_defender = { + opinion = { who = event_target:player_target value = 30 } + } + factor = 1.2 + } + character_event = { id = HF.50002 } + } + 60 = { + #Nothing happens + } + } + } + } +} + +#Can the Attacker consider sending a proposal for aid in war? +character_event = { + id = HF.50001 + + is_triggered_only = yes + has_dlc = "Holy Fury" + war = yes + ai = yes + hide_window = yes + + trigger = { + is_member_of_any_warrior_lodge_trigger = yes + + is_primary_war_attacker = yes + + any_player= { + war = no + is_within_diplo_range = ROOT + same_society_as = ROOT + NOT = { vassal_of = ROOT } + + is_within_diplo_range = FROM + NOR = { + vassal_of = FROM + has_non_aggression_pact_with = FROM + is_allied_with = FROM + same_society_as = FROM + } + + NAND = { + is_tributary = yes + suzerain = { + OR = { + character = ROOT + character = FROM + any_liege = { character = ROOT } + any_liege = { character = FROM } + } + } + } + } + } + + immediate = { + random_player= { + limit = { + war = no + same_society_as = ROOT + NOT = { same_society_as = event_target:warrior_lodge_war_defender } + NOT = { vassal_of = ROOT } + NOT = { vassal_of = event_target:warrior_lodge_war_defender } + } + save_event_target_as = player_target + } + + event_target:player_target = { + random_list = + { + 40 = { + modifier = { + event_target:player_target = { + is_lover = event_target:warrior_lodge_war_attacker + } + factor = 2 + } + modifier = { + event_target:player_target = { + is_friend = event_target:warrior_lodge_war_attacker + } + factor = 2 + } + modifier = { + event_target:warrior_lodge_war_attacker = { + opinion = { + who = event_target:player_target + value = 30 } + } + factor = 1.1 + } + modifier = { + event_target:warrior_lodge_war_attacker = { + opinion = { + who = event_target:player_target + value = 50 } + } + factor = 1.2 + } + character_event = { id = HF.50004 } + } + 60 = { + #Nothing happens + } + } + } + } +} + +# Player receives a letter asking for aid (Defender) +letter_event = { + id = HF.50002 + is_triggered_only = yes + ai = no + border = GFX_event_letter_frame_war + desc = EVTDESC_HF_50002 + + trigger = { + war = no + } + immediate = { + set_character_flag = got_war_invite_from_defender + save_event_target_as = warrior_lodge_player_siding_with_defender + } + + option = # Join war + { + name = EVTOPTA_HF_50002 + join_defender_wars = FROM + FROM = + { + show_scope_change = no + opinion = { + modifier = opinion_grateful + who = ROOT + years = 5 + } + set_character_flag = invited_player_to_war + } + clr_character_flag = got_war_invite_from_defender + set_character_flag = accepted_war_invite_from_defender + + event_target:warrior_lodge_war_attacker = + { set_character_flag = defender_invited_player_to_war } + } + + option = # Decline + { + name = EVTOPTB_HF_50002 + FROM = + { + show_scope_change = no + opinion = { + modifier = opinion_disappointed + who = ROOT + years = 5 + } + } + + if = + { + limit = + { + event_target:warrior_lodge_war_attacker = { + same_society_as = ROOT + same_society_as = event_target:warrior_lodge_war_attacker + NOT = { vassal_of = ROOT } + } + } + event_target:warrior_lodge_war_attacker = { character_event = { id = HF.50003 } } + } + } +} + +# ATTACKER will send letter to Player following the rejection +letter_event = { + id = HF.50003 + is_triggered_only = yes + has_dlc = "Holy Fury" + war = yes + ai = yes + hide_window = yes + + trigger = { + is_member_of_any_warrior_lodge_trigger = yes + + is_primary_war_defender = yes + + any_player= { + war = no + same_society_as = ROOT + NOT = { vassal_of = ROOT } + has_character_flag = got_war_invite_from_attacker + } + } + + immediate = { + random_player= { + limit = { + war = no + same_society_as = ROOT + has_character_flag = got_war_invite_from_defender + } + character_event = { id = HF.50005 days = 30 } + } + } +} + +# Player receives a letter asking for aid (Attacker) +letter_event = { + id = HF.50004 + is_triggered_only = yes + ai = no + border = GFX_event_letter_frame_war + desc = EVTDESC_HF_50004 + + trigger = { + is_member_of_any_warrior_lodge_trigger = yes + war = no + FROM = { + same_society_as = ROOT + } + } + + option = # Join war + { + name = EVTOPTA_HF_50002 + join_defender_wars = FROM + FROM = + { + opinion = { + modifier = opinion_grateful + who = ROOT + years = 5 + } + set_character_flag = invited_player_to_war + } + set_character_flag = accepted_war_invite_from_attacker + } + + option = # Decline + { + name = EVTOPTB_HF_50002 + FROM = + { + opinion = { + modifier = opinion_disappointed + who = ROOT + years = 5 + } + } + clr_character_flag = got_war_invite_from_defender + } +} + +# Player receives a letter asking for aid (Defender) after rejecting the attacker +letter_event = { + id = HF.50005 + is_triggered_only = yes + ai = no + border = GFX_event_letter_frame_war + desc = EVTDESC_HF_50005 + + trigger = { + war = no + } + immediate = { + save_event_target_as = warrior_lodge_player_siding_with_defender + } + + option = # Join war + { + name = EVTOPTA_HF_50002 + join_defender_wars = FROM + FROM = + { + opinion = { + modifier = opinion_grateful + who = ROOT + years = 5 + } + set_character_flag = invited_player_to_war + } + set_character_flag = accepted_war_invite_from_defender + } + + option = # Decline + { + name = EVTOPTB_HF_50002 + FROM = + { + opinion = { + modifier = opinion_disappointed + who = ROOT + years = 5 + } + } + } + + after = { + clr_character_flag = got_war_invite_from_attacker + } +} + +#Hidden event to setup the letter to the player - Attacker won the war +# From = Attacker, Root = Defender +character_event = { + id = HF.50100 + ai = yes + is_triggered_only = yes + has_dlc = "Holy Fury" + hide_window = yes + + trigger = { + war = no #Only after the last one. + OR = { + has_character_flag = invited_player_to_war + has_character_flag = defender_invited_player_to_war + } + } + + immediate = { + if = { + limit = { + has_character_flag = invited_player_to_war + block_general_event_trigger = yes + } + character_event = { id = HF.50107 } # cleanup of flags + } + + if = { + limit = { + has_character_flag = invited_player_to_war + NOT = { + has_character_flag = defender_invited_player_to_war + } + } + save_event_target_as = warrior_lodge_war_side + } + + save_event_target_as = warrior_lodge_war_defender + FROM = { + save_event_target_as = warrior_lodge_war_attacker + save_event_target_as = warrior_lodge_war_victor + } + + random_player = { + limit = { + same_society_as = ROOT + NOT = { vassal_of = ROOT } + has_character_flag = accepted_war_invite_from_defender + } + character_event = { id = HF.50104 days = 30 } + set_character_flag = attacker_won + set_character_flag = negative_war_letter + } + + FROM = { + set_character_flag = attacker_won + character_event = { id = HF.50103 } # Setting up the right FROM for when the player gets their event + } + } +} + +#Hidden event to setup the letter to the player - White peace +# From = Attacker, Root = Defender +character_event = { + id = HF.50101 + ai = yes + is_triggered_only = yes + has_dlc = "Holy Fury" + hide_window = yes + + trigger = { + war = no #Only after the last one. + OR = { + has_character_flag = invited_player_to_war + has_character_flag = defender_invited_player_to_war + } + } + + immediate = { + set_character_flag = silfae_test_2 + if = { + limit = { + has_character_flag = invited_player_to_war + block_general_event_trigger = yes + } + character_event = { id = HF.50107 } # cleanup of flags + } + + if = { + limit = { + has_character_flag = invited_player_to_war + NOT = { + has_character_flag = defender_invited_player_to_war + } + } + save_event_target_as = warrior_lodge_war_side + } + + save_event_target_as = warrior_lodge_war_defender + FROM = { + save_event_target_as = warrior_lodge_war_attacker + } + + random_player = { + limit = { + same_society_as = ROOT + NOT = { vassal_of = ROOT } + has_character_flag = accepted_war_invite_from_defender + } + character_event = { id = HF.50104 days = 5 } + set_character_flag = white_peace + set_character_flag = positive_war_letter + } + + FROM = { + set_character_flag = white_peace + character_event = { id = HF.50103 } # Setting up the right FROM for when the player gets their event + } + } +} + +#Hidden event to setup the letter to the player - Defender won +# From = Attacker, Root = Defender +character_event = { + id = HF.50102 + is_triggered_only = yes + has_dlc = "Holy Fury" + hide_window = yes + ai = yes + + trigger = { + war = no #Only after the last one. + OR = { + has_character_flag = invited_player_to_war + has_character_flag = defender_invited_player_to_war + } + #block_general_event_trigger = yes + } + + immediate = { + set_character_flag = silfae_test_3 + if = { + limit = { + has_character_flag = invited_player_to_war + block_general_event_trigger = yes + } + character_event = { id = HF.50107 } # cleanup of flags + } + + if = { + limit = { + has_character_flag = invited_player_to_war + NOT = { + has_character_flag = defender_invited_player_to_war + } + } + save_event_target_as = warrior_lodge_war_side + } + + save_event_target_as = warrior_lodge_war_defender + save_event_target_as = warrior_lodge_war_victor + FROM = { + save_event_target_as = warrior_lodge_war_attacker + } + + random_player= { + limit = { + same_society_as = ROOT + NOT = { vassal_of = ROOT } + has_character_flag = accepted_war_invite_from_defender + } + character_event = { id = HF.50104 days = 5 } + set_character_flag = defender_won + set_character_flag = positive_war_letter + } + + FROM = { + set_character_flag = defender_won + character_event = { id = HF.50103 } # Setting up the right FROM for when the player gets their event + } + if = + { + limit = { + NOT = { has_character_flag = invited_player_to_war } + } + character_event = { id = HF.50107 } #Clean up + } + } +} + +#Hidden event to setup the letter to the player if they were on the attacking side +character_event = { + id = HF.50103 + + is_triggered_only = yes + has_dlc = "Holy Fury" + hide_window = yes + ai = yes + + trigger = + { + war = no #Only after the last one. + has_character_flag = invited_player_to_war + } + + immediate = { + if = { + limit = { + has_character_flag = invited_player_to_war + block_general_event_trigger = yes + } + character_event = { id = HF.50107 } # cleanup of flags + } + + save_event_target_as = warrior_lodge_war_side + + random_player= { + limit = { + same_society_as = ROOT + NOT = { vassal_of = ROOT } + has_character_flag = accepted_war_invite_from_attacker + } + save_event_target_as = warrior_lodge_player + } + + if = + { + limit = { has_character_flag = attacker_won } + event_target:warrior_lodge_player = + { + set_character_flag = attacker_won + set_character_flag = positive_war_letter + } + } + if = + { + limit = { has_character_flag = defender_won } + event_target:warrior_lodge_player = + { + set_character_flag = defender_won + set_character_flag = negative_war_letter + } + } + if = + { + limit = { has_character_flag = white_peace } + event_target:warrior_lodge_player = + { + set_character_flag = white_peace + set_character_flag = negative_war_letter + } + } + + event_target:warrior_lodge_player = + { + character_event = { id = HF.50104 days = 5 } + } + } +} + + +#Player gets letter +character_event = { + id = HF.50104 + + is_triggered_only = yes + has_dlc = "Holy Fury" + border = GFX_event_normal_frame_diplomacy + ai = no + + picture = { + trigger = { + has_character_flag = positive_war_letter + } + picture = GFX_evt_pleasing_letter + } + + picture = { + trigger = { + has_character_flag = negative_war_letter + } + picture = GFX_evt_upsetting_letter + } + + desc = { + trigger = { + has_character_flag = attacker_won + } + text = EVTDESC_HF_50104_attacker_won + } + desc = { + trigger = { + has_character_flag = white_peace + } + text = EVTDESC_HF_50104_white_peace + } + desc = { + trigger = { + has_character_flag = defender_won + } + text = EVTDESC_HF_50104_defender_won + } + + #trigger = { + # event_target:warrior_lodge_player = { block_general_event_trigger = yes } + # event_target:warrior_lodge_war_side = { block_general_event_trigger = yes } + #} + + option = { + name = EVTOPTA_HF_50104 # I am pleased to hear this. + trigger = { + has_character_flag = positive_war_letter + } + add_society_currency_major_effect = yes + character_event = { id = HF.50105 days = 5 } + } + + option = { + name = EVTOPTB_HF_50104 # Is that all? I expected more... + trigger = { + has_character_flag = positive_war_letter + } + add_society_currency_major_effect = yes + wealth = 50 + opinion = { + modifier = opinion_very_disappointed + who = FROM + years = 5 + } + hidden_tooltip = { + event_target:warrior_lodge_war_side = { + if = { + limit = { + wealth <= 50 + } + wealth = -50 + } + } + random = + { + chance = 50 + character_event = { id = HF.50105 days = 30 } + } + } + } + + option = { + name = EVTOPTC_HF_50104 # The nerve of this brazen fool! + trigger = { + has_character_flag = negative_war_letter + } + character_event = { id = HF.50107 } + event_target:warrior_lodge_war_side = { character_event = { id = HF.50107 } } + } + + option = { + name = EVTOPTD_HF_50104 # What should I have done differently...? + trigger = { + has_character_flag = negative_war_letter + } + character_event = { id = HF.50107 } + event_target:warrior_lodge_war_side = { character_event = { id = HF.50107 } } + } + + option = { + name = EVTOPTE_HF_50104 # There is truth in his harsh words. I must abandon my craven ways. + trigger = { + has_character_flag = negative_war_letter + trait = craven + } + remove_trait_craven_effect = yes + character_event = { id = HF.50107 } + event_target:warrior_lodge_war_side = { character_event = { id = HF.50107 } } + } +} + + +# Player receives a letter inviting them for a fun activity +character_event = { + id = HF.50105 + is_triggered_only = yes + border = GFX_event_normal_frame_diplomacy + picture = GFX_evt_pleasing_letter + desc = EVTDESC_HF_50105 + + trigger = { + event_target:warrior_lodge_war_side = { is_alive = yes } + } + + option = # I happily accept! What a joyous occasion to share with [warrior_lodge_war_side.GetFirstName] + { + name = EVTOPTA_HF_50105 + + event_target:warrior_lodge_war_side = + { + opinion = { + modifier = common_interests_opinion + who = ROOT + years = 5 + } + } + hidden_tooltip = + { + opinion = { + modifier = common_interests_opinion + who = event_target:warrior_lodge_war_side + years = 5 + } + } + + if = { + limit = { + event_target:warrior_lodge_war_side = { + OR = { + has_focus = focus_hunting + trait = falconer + trait = hunter + } + } + } + + random_list = { + 50 = { #success + modifier = { + trait = falconer + factor = 2 + } + modifier = { + trait = hunter + factor = 2 + } + modifier = { + is_strong_trigger = yes + factor = 2 + } + modifier = { + martial = 16 + factor = 2 + } + } + 50 = { #failure + modifier = { + is_weak_trigger = yes + factor = 2 + } + modifier = { + has_disability_trigger = yes + factor = 2 + } + add_maimed_trait_effect = yes + } + } + } + + if = { + limit = { + event_target:warrior_lodge_war_side = { + NAND = { + has_focus = focus_hunting + trait = falconer + trait = hunter + } + OR = + { + trait = trickster + trait = gamer + trait = strategist + } + } + } + + random_list = { + 50 = { #success + modifier = { + trait = trickster + factor = 2 + } + modifier = { + trait = gamer + factor = 2 + } + modifier = { + is_smart_trigger = yes + factor = 2 + } + modifier = { + trait = strategist + factor = 2 + } + modifier = { + trait = patient + factor = 2 + } + add_trait = organizer + } + 25 = { #failure + modifier = { + is_dumb_trigger = yes + factor = 2 + } + add_trait_depressed_effect = yes + } + 25 = { #failure + modifier = { + is_dumb_trigger = yes + factor = 2 + } + add_trait_wroth_effect = yes + } + } + } + + if = { + limit = { + event_target:warrior_lodge_war_side = { + NAND = { + has_focus = focus_hunting + trait = falconer + trait = hunter + trait = trickster + trait = gamer + trait = strategist + } + OR = + { + trait = scholar + trait = mystic + trait = erudite + learning = 18 + trait = physician + } + } + } + + random_list = { + 50 = { #success + modifier = { + trait = scholar + factor = 2 + } + modifier = { + trait = mystic + factor = 2 + } + modifier = { + is_smart_trigger = yes + factor = 2 + } + modifier = { + trait = erudite + factor = 2 + } + modifier = { + trait = physician + factor = 2 + } + modifier = { + trait = erudite + factor = 2 + } + add_trait = organizer + } + 25 = { #failure + modifier = { + is_dumb_trigger = yes + factor = 2 + } + add_trait_depressed_effect = yes + } + 25 = { #failure + modifier = { + is_dumb_trigger = yes + factor = 2 + } + add_trait_wroth_effect = yes + } + } + } + + if = { + limit = { + event_target:warrior_lodge_war_side = { + NAND = { + has_focus = focus_hunting + trait = falconer + trait = hunter + trait = trickster + trait = gamer + trait = strategist + trait = scholar + trait = mystic + trait = erudite + learning = 18 + trait = physician + } + } + } + + random_list = { + 50 = { #success + modifier = { + has_pleasant_trait_trigger = yes + factor = 2 + } + modifier = { + has_pleasant_personality_trigger = yes + factor = 2 + } + remove_trait_depressed_effect = yes + add_trait_gregarious_effect = yes + + if = { + limit = { trait = stressed } + remove_trait = stressed + } + } + 50 = { #failure + modifier = { + has_mental_disorder_trigger = yes + factor = 2 + } + add_trait_depressed_effect = yes + add_trait = drunkard + } + } + } + } + + option = # Decline the invitation. It is not suitable to my taste. + { + name = EVTOPTB_HF_50105 + event_target:warrior_lodge_war_side = + { + opinion = { + modifier = opinion_extremely_disappointed + who = ROOT + years = 5 + } + } + } +} + +# Player receives yet another letter +character_event = { + id = HF.50106 + is_triggered_only = yes + border = GFX_event_normal_frame_diplomacy + picture = GFX_evt_pleasing_letter + desc = EVTDESC_HF_50106 + + trigger = { + event_target:warrior_lodge_war_side = { is_alive = yes } + } + + option = # Time spent [warrior_lodge_war_side.GetFirstName] are precious memories I forever will cherish. + { + name = EVTOPTA_HF_50106 + add_friend = event_target:warrior_lodge_war_side + } + + option = # I never thought that I could find love as a consequence of war.. + { + name = EVTOPTB_HF_50106 + trigger = + { + event_target:warrior_lodge_war_side = { + root_attraction_trigger = yes + attacted_to_root_trigger = yes + } + } + add_lover = event_target:warrior_lodge_war_side + } + option = # My letters to [warrior_lodge_war_side.GetFirstName] is nothing but formality. + { + name = EVTOPTC_HF_50106 + + FROM = + { + opinion = { + modifier = opinion_very_disappointed + who = ROOT + years = 5 + } + } + } + after = + { + character_event = { id = HF.50107 } + event_target:warrior_lodge_war_side = { character_event = { id = HF.50107 } } + } +} + +#CLEANUP +character_event = { + id = HF.50107 + is_triggered_only = yes + has_dlc = "Holy Fury" + hide_window = yes + + immediate = { + clr_character_flag = invited_player_to_war + clr_character_flag = defender_invited_player_to_war + clr_character_flag = accepted_war_invite_from_defender + clr_character_flag = accepted_war_invite_from_attacker + clr_character_flag = got_war_invite_from_defender + clr_character_flag = got_war_invite_from_attacker + clr_character_flag = attacker_won + clr_character_flag = defender_won + clr_character_flag = white_peace + clr_character_flag = negative_war_letter + clr_character_flag = positive_war_letter + } +} \ No newline at end of file diff --git a/MOD/Witcher/events/mnm_assassins_events.txt b/MOD/Witcher/events/mnm_assassins_events.txt new file mode 100644 index 000000000..e6c40dac5 --- /dev/null +++ b/MOD/Witcher/events/mnm_assassins_events.txt @@ -0,0 +1,9196 @@ +########################################### +# # +# M&M Assassins Society Events # +# # +# ID MNM.6000-MNM.6999 # +# # +########################################### + +namespace = MNM + +###BORROWING/DONATING MONEY### + +character_event = { + id = MNM.6000 + hide_window = yes + + is_triggered_only = yes + + immediate = { + save_event_target_as = grand_master + FROM = { letter_event = { id = MNM.6001 } } + } +} + +#Borrowing money +letter_event = { + id = MNM.6001 + desc = EVTDESC_MNM_6001 + border = GFX_event_letter_frame_religion + + is_triggered_only = yes + + immediate = { + set_variable = { which = assassins_debt value = 0 } + add_character_modifier = { + name = assassins_debt + duration = -1 + } + set_character_flag = block_payback + } + + #50 + option = { + trigger = { + event_target:grand_master = { + OR = { + ai = no + NOT = { primary_title = { title = d_hashshashin } } + wealth = 50 + } + } + } + name = EVTOPTA_MNM_6001 + wealth = 50 + hidden_tooltip = { + change_variable = { which = assassins_debt value = 50 } + + character_event = { id = MNM.6009 days = 1000 random = 1000 } + + event_target:grand_master = { + if = { + limit = { + ai = yes + primary_title = { title = d_hashshashin } + } + wealth = -50 + } + } + } + clr_character_flag = block_payback + + ai_chance = { + factor = 1 + modifier = { + factor = 0 + monthly_income = 10 + } + } + } + + #250 + option = { + trigger = { + event_target:grand_master = { + OR = { + ai = no + NOT = { primary_title = { title = d_hashshashin } } + wealth = 250 + } + } + has_society_currency_minor_trigger = yes + } + name = EVTOPTB_MNM_6001 + wealth = 250 + detract_society_currency_minor_effect = yes + hidden_tooltip = { + change_variable = { which = assassins_debt value = 250 } + + character_event = { id = MNM.6009 days = 1000 random = 1000 } + + event_target:grand_master = { + if = { + limit = { + ai = yes + primary_title = { title = d_hashshashin } + } + wealth = -250 + } + } + } + clr_character_flag = block_payback + + ai_chance = { + factor = 1 + modifier = { + factor = 0 + OR = { + monthly_income = 20 + NOT = { monthly_income = 10 } + } + } + } + } + + #500 + option = { + trigger = { + event_target:grand_master = { + OR = { + ai = no + NOT = { primary_title = { title = d_hashshashin } } + wealth = 500 + } + } + has_society_currency_medium_trigger = yes + } + name = EVTOPTC_MNM_6001 + wealth = 500 + detract_society_currency_medium_effect = yes + hidden_tooltip = { + change_variable = { which = assassins_debt value = 500 } + + character_event = { id = MNM.6009 days = 1000 random = 1000 } + + event_target:grand_master = { + if = { + limit = { + ai = yes + primary_title = { title = d_hashshashin } + } + wealth = -500 + } + } + } + clr_character_flag = block_payback + + ai_chance = { + factor = 1 + modifier = { + factor = 0 + NOT = { monthly_income = 20 } + } + } + } + + #Opt out + option = { + name = EVTOPTD_MNM_6001 + + hidden_tooltip = { + remove_character_modifier = assassins_debt + } + clr_character_flag = block_payback + + ai_chance = { + factor = 1 + modifier = { + factor = 0 + } + } + } +} + +#Transfer debt to heir +character_event = { + id = MNM.6012 + hide_window = yes + + trigger = { + has_character_modifier = assassins_debt + } + + is_triggered_only = yes + + immediate = { + current_heir = { + add_character_modifier = { + name = assassins_debt + duration = -1 + } + + if = { + limit = { ROOT = { check_variable = { which = assassins_debt value = 50 } } } + set_variable = { which = assassins_debt value = 50 } + } + if = { + limit = { ROOT = { check_variable = { which = assassins_debt value = 250 } } } + set_variable = { which = assassins_debt value = 250 } + } + if = { + limit = { ROOT = { check_variable = { which = assassins_debt value = 500 } } } + set_variable = { which = assassins_debt value = 500 } + } + + character_event = { id = MNM.6009 days = 50 } + } + } +} + +#Donating +character_event = { + id = MNM.6004 + hide_window = yes + + is_triggered_only = yes + + immediate = { + save_event_target_as = grand_master + FROM = { letter_event = { id = MNM.6005 } } + } +} + +letter_event = { + id = MNM.6005 + desc = EVTDESC_MNM_6005 + border = GFX_event_letter_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_6005 + wealth = -200 + add_society_currency_minor_effect = yes + + hidden_tooltip = { + event_target:grand_master = { + if = { + limit = { + ai = no + has_landed_title = d_hashshashin + } + wealth = 100 + } + } + } + } +} + +character_event = { + id = MNM.6009 + hide_window = yes + + is_triggered_only = yes + + immediate = { + save_event_target_as = in_debt + random_society_member = { + limit = { + society_rank == 4 + society_member_of = the_assassins + } + character_event = { id = MNM.6010 } + } + } +} + +character_event = { + id = MNM.6010 + hide_window = yes + + is_triggered_only = yes + + immediate = { + event_target:in_debt = { letter_event = { id = MNM.6006 } } + } +} + + +#Events for demands to pay back loan +letter_event = { + id = MNM.6006 + border = GFX_event_letter_frame_religion + + desc = { + trigger = { + OR = { + is_variable_equal = { which = assassins_debt value = 50 } + AND = { + is_variable_equal = { which = assassins_debt value = 250 } + NAND = { + event_target:child_offer = { always = yes } + event_target:d_hashshashin_holder = { always = yes } + } + } + AND = { + is_variable_equal = { which = assassins_debt value = 500 } + NAND = { + event_target:castle_offer = { always = yes } + event_target:d_hashshashin_holder = { always = yes } + } + } + } + } + text = EVTDESC_MNM_6006_A #Just gold + } + desc = { + trigger = { + event_target:child_offer = { always = yes } + is_variable_equal = { which = assassins_debt value = 250 } + event_target:d_hashshashin_holder = { always = yes } + } + text = EVTDESC_MNM_6006_B #Gold or child + } + desc = { + trigger = { + event_target:castle_offer = { always = yes } + is_variable_equal = { which = assassins_debt value = 500 } + event_target:d_hashshashin_holder = { always = yes } + } + text = EVTDESC_MNM_6006_C #Gold or castle + } + + is_triggered_only = yes + + trigger = { + has_character_modifier = assassins_debt + check_variable = { which = assassins_debt value = 50 } + } + + immediate = { + random_child = { + limit = { + is_primary_heir = no + OR = { + is_female = no + ROOT = { gender_equality_trigger = yes } + } + is_adult = yes + useless_character_trigger = no + } + save_event_target_as = child_offer + } + random_demesne_province = { + limit = { + is_capital = no + has_empty_holding = yes + } + save_event_target_as = castle_offer + } + random_independent_ruler = { + limit = { + has_landed_title = d_hashshashin + society_member_of = the_assassins + } + save_event_target_as = d_hashshashin_holder + } + } + + #Pay back + option = { + name = EVTOPTA_MNM_6006 + + pay_back_assassins_effect = yes + + remove_assassins_debt_effect = yes + } + + #Child + option = { + trigger = { + is_variable_equal = { which = assassins_debt value = 250 } + event_target:child_offer = { always = yes } + event_target:d_hashshashin_holder = { always = yes } + } + name = EVTOPTB_MNM_6006 + custom_tooltip = { text = EVTOPTB_MNM_6006_TOOLTIP } + + event_target:child_offer = { + move_character = event_target:d_hashshashin_holder + join_society = the_assassins + hidden_tooltip = { + clear_wealth = yes + end_inaccessibility_effect = yes + add_trait = disinherited + } + } + + remove_assassins_debt_effect = yes + } + + #Castle + option = { + trigger = { + is_variable_equal = { which = assassins_debt value = 500 } + event_target:castle_offer = { always = yes } + event_target:d_hashshashin_holder = { always = yes } + } + name = EVTOPTC_MNM_6006 + + wealth = -100 + + event_target:castle_offer = { + build_holding = { + type = castle + holder = event_target:d_hashshashin_holder + } + } + + remove_assassins_debt_effect = yes + } + + #Nope + option = { + name = EVTOPTD_MNM_6006 + custom_tooltip = { text = EVTOPTD_MNM_6006_TOOLTIP } + + set_character_flag = assassins_refused_to_pay_debt + } +} + + +###JOINING & RECRUITMENT EVENTS### + +#Does recruit approve of shia? +character_event = { + id = MNM.6020 + picture = GFX_evt_feast + border = GFX_event_normal_frame_diplomacy + + desc = { + trigger = { NOT = { religion_group = muslim } } + text = EVTDESC_MNM_6020_A + } + desc = { + trigger = { religion_group = muslim } + text = EVTDESC_MNM_6020_B + } + + is_triggered_only = yes + + immediate = { + if = { + limit = { NOT = { event_target:assassins_recruiter = { always = yes } } } + FROMFROM = { save_event_target_as = assassins_recruiter } + } + save_event_target_as = assassins_recruitee + set_character_flag = ongoing_recruitment + } + + #Acccepting of Shia + option = { + name = { + trigger = { NOT = { religion_group = muslim } } + text = EVTOPTA_6020_NOTMUSLIM + } + + name = { + trigger = { religion_group = muslim } + text = EVTOPTA_6020_MUSLIM + } + + reverse_opinion = { + who = event_target:assassins_recruiter + modifier = opinion_agreed_with_opinion + years = 5 + } + + set_character_flag = approves_of_shia + + hidden_effect = { event_target:assassins_recruiter = { character_event = { id = MNM.6021 days = 3 } } } + + ai_chance = { + factor = 20 + modifier = { + factor = 0 + trait = zealous + NOT = { secret_religion = shiite } + } + modifier = { + factor = 0 + true_religion_shiite_trigger = no + OR = { + controls_religion = yes + capital_holding = { holding_type = TEMPLE } + } + } + modifier = { + factor = 1.5 + trait = cynical + } + modifier = { + factor = 1.5 + trait = trusting + } + modifier = { + factor = 1.5 + is_dumb_trigger = yes + } + modifier = { + factor = 1.5 + true_religion_group_muslim_trigger = yes + } + modifier = { + factor = 100 + has_character_flag = was_trained_as_assassin_protege + } + } + } + + #Disapproving of shia + option = { + trigger = { true_religion_shiite_trigger = no } + + name = { + trigger = { NOT = { religion_group = muslim } } + text = EVTOPTB_6020_NOTMUSLIM + } + name = { + trigger = { religion_group = muslim } + text = EVTOPTB_6020_MUSLIM + } + + reverse_opinion = { + who = event_target:assassins_recruiter + modifier = opinion_disagreed_with_opinion + years = 5 + } + + set_character_flag = disapproves_of_shia + + hidden_effect = { event_target:assassins_recruiter = { character_event = { id = MNM.6021 days = 3 } } } + + ai_chance = { + factor = 80 + modifier = { + factor = 1.5 + has_pious_trait_trigger = yes + } + modifier = { + factor = 2 + has_crusade_trait_trigger = yes + NOT = { trait = mujahid } + } + } + } +} + +#True religion, or sympathetic? +character_event = { + id = MNM.6021 + picture = GFX_evt_feast + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { FROM = { has_character_flag = approves_of_shia } } + text = EVTDESC_MNM_6021_A + } + desc = { + trigger = { + FROM = { has_character_flag = disapproves_of_shia } + NOT = { has_alternate_start_parameter = { key = religion_names value = random } } + } + text = EVTDESC_MNM_6021_B + } + desc = { + trigger = { + FROM = { has_character_flag = disapproves_of_shia } + has_alternate_start_parameter = { key = religion_names value = random } + } + text = EVTDESC_MNM_6021_c + } + + is_triggered_only = yes + + #Go ahead + option = { + trigger = { FROM = { has_character_flag = approves_of_shia } } + name = EVTOPTA_6021 + custom_tooltip = { text = EVTOPTA_6021_TOOLTIP } + + hidden_effect = { + FROM = { + character_event = { id = MNM.6022 days = 14 } + clr_character_flag = approves_of_shia + } + } + ai_chance = { factor = 100 } + } + + #Too risky, end + option = { + trigger = { FROM = { has_character_flag = approves_of_shia } } + name = EVTOPTB_6021 + custom_tooltip = { text = EVTOPTB_6021_TOOLTIP } + hidden_effect = { FROM = { clr_character_flag = approves_of_shia } } + hidden_effect = { FROM = { clr_character_flag = ongoing_recruitment } } + ai_chance = { factor = 0 } + } + + #Dislikes shia, end + option = { + trigger = { FROM = { has_character_flag = disapproves_of_shia } } + name = EVTOPTC_6021 + custom_tooltip = { text = EVTOPTB_6021_TOOLTIP } + hidden_effect = { FROM = { clr_character_flag = disapproves_of_shia } } + hidden_effect = { FROM = { clr_character_flag = ongoing_recruitment } } + } +} + +#Talking about fighting for the faith, reaction +character_event = { + id = MNM.6022 + picture = GFX_evt_shady_meeting + border = GFX_event_normal_frame_diplomacy + + desc = { + trigger = { FROM = { NOT = { religion = shiite } } } + text = EVTDESC_MNM_6022_A + } + desc = { + trigger = { FROM = { religion = shiite } } + text = EVTDESC_MNM_6022_B + } + + is_triggered_only = yes + + immediate = { + if = { + limit = { NOT = { event_target:assassins_recruiter = { always = yes } } } + FROMFROM = { save_event_target_as = assassins_recruiter } + save_event_target_as = assassins_recruitee + } + } + + #Willing to join + option = { + name = EVTOPTA_6022 + + reverse_opinion = { + who = event_target:assassins_recruiter + modifier = opinion_honorable + years = 5 + } + + set_character_flag = willing_to_join + + hidden_effect = { event_target:assassins_recruiter = { character_event = { id = MNM.6023 days = 1 } } } + + ai_chance = { + factor = 50 + modifier = { + factor = 3 + trait = zealous + } + modifier = { + factor = 1.5 + trait = ambitious + } + modifier = { + factor = 1.5 + has_education_intrigue_trigger = yes + } + modifier = { + factor = 1.5 + has_lifestyle_intrigue_trigger = yes + } + modifier = { + factor = 1.5 + FROM = { diplomacy = 12 } + } + modifier = { + factor = 1.5 + FROM = { intrigue = 12 } + } + modifier = { + factor = 10 + has_character_flag = was_trained_as_assassin_protege + } + } + } + + #Not willing to join + option = { + name = EVTOPTB_6022 + + reverse_opinion = { + who = event_target:assassins_recruiter + modifier = opinion_lacks_conviction + years = 5 + } + + set_character_flag = unwilling_to_join + + hidden_effect = { event_target:assassins_recruiter = { character_event = { id = MNM.6023 days = 1 } } } + + ai_chance = { + factor = 50 + modifier = { + factor = 0.5 + true_religion_shiite_trigger = no + } + modifier = { + factor = 2 + trait = craven + } + modifier = { + factor = 2 + trait = content + } + modifier = { + factor = 2 + trait = cynical + } + modifier = { + factor = 1.5 + FROM = { NOT = { diplomacy = 8 } } + } + modifier = { + factor = 1.5 + FROM = { NOT = { intrigue = 8 } } + } + } + } +} + +#Wants to join? Make the offer +character_event = { + id = MNM.6023 + picture = GFX_evt_shady_meeting + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { FROM = { has_character_flag = willing_to_join } } + text = EVTDESC_MNM_6023_A + } + desc = { + trigger = { FROM = { has_character_flag = unwilling_to_join } } + text = EVTDESC_MNM_6023_B + } + + is_triggered_only = yes + + #Pose the question + option = { + trigger = { FROM = { has_character_flag = willing_to_join } } + name = EVTOPTA_6023 + custom_tooltip = { text = EVTOPTA_6023_TOOLTIP } + + hidden_effect = { + FROM = { + character_event = { id = MNM.6024 days = 1 } + clr_character_flag = willing_to_join + } + } + + ai_chance = { factor = 100 } + } + + #Too risky, end + option = { + trigger = { FROM = { has_character_flag = willing_to_join } } + name = EVTOPTB_6023 + custom_tooltip = { text = EVTOPTB_6021_TOOLTIP } + hidden_effect = { FROM = { clr_character_flag = willing_to_join } } + hidden_effect = { FROM = { clr_character_flag = ongoing_recruitment } } + ai_chance = { factor = 0 } + } + + #Not interested, end + option = { + trigger = { FROM = { has_character_flag = unwilling_to_join } } + name = EVTOPTC_6023 + custom_tooltip = { text = EVTOPTB_6021_TOOLTIP } + hidden_effect = { FROM = { clr_character_flag = unwilling_to_join } } + hidden_effect = { FROM = { clr_character_flag = ongoing_recruitment } } + } +} + +#Offer to join, yes or no? +character_event = { + id = MNM.6024 + picture = GFX_evt_shady_meeting + desc = { + trigger = { + NOT = { has_alternate_start_parameter = { key = religion_names value = random } } + } + text = EVTDESC_MNM_6024_A + } + desc = { + trigger = { + has_alternate_start_parameter = { key = religion_names value = random } + } + text = EVTDESC_MNM_6024_B + } + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + #Yes + option = { + name = EVTOPTA_6024 + custom_tooltip = { text = EVTOPTA_6024_TOOLTIP } + + hidden_effect = { event_target:assassins_recruiter = { character_event = { id = MNM.6026 days = 1 } } } + ai_chance = { + factor = 10 + modifier = { + factor = 100 + has_character_flag = was_trained_as_assassin_protege + } + } + } + + #No + option = { + name = EVTOPTB_6024 + custom_tooltip = { text = EVTOPTB_6024_TOOLTIP } + + hidden_effect = { event_target:assassins_recruiter = { character_event = { id = MNM.6025 days = 1 } } } + + ai_chance = { + factor = 10 + } + } +} + +#Recruit said no +character_event = { + id = MNM.6025 + picture = GFX_evt_quarrel + desc = EVTDESC_MNM_6025 + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = EVTOPTA_6025 + custom_tooltip = { text = EVTOPTB_6021_TOOLTIP } + hidden_effect = { FROM = { clr_character_flag = ongoing_recruitment } } + } +} + +#Recruit said yes +character_event = { + id = MNM.6026 + picture = GFX_evt_whispers + desc = EVTDESC_MNM_6026 + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + hide_new = yes + + immediate = { + if = { + limit = { + NOT = { + any_society_member = { + society_rank = { + society = the_assassins + rank == 3 + } + } + } + } + random_society_member = { + limit = { + society_rank = { + society = the_assassins + rank == 4 + } + } + create_character = { + age = 30 + female = no + random_traits = no + dynasty = random + trait = elusive_shadow + trait = patient + trait = zealous + trait = scholar + trait = chaste + trait = temperate + } + new_character = { + join_society = the_assassins + society_rank_up = { + rank = 2 + society = the_assassins + } + if = { + limit = { NOT = { religion = shiite } } + set_secret_religion = shiite + } + } + } + } + + random_society_member = { + limit = { + society_rank = { + society = the_assassins + rank == 3 + } + } + save_event_target_as = assassins_inductor + } + } + + option = { + name = EVTOPTA_6026 + custom_tooltip = { text = EVTOPTA_6026_TOOLTIP } + + hidden_effect = { FROM = { character_event = { id = MNM.6027 days = 1 } } } + } +} + +#Confirmation for recruit +character_event = { + id = MNM.6027 + picture = GFX_evt_whispers + desc = { + trigger = { + NOT = { has_alternate_start_parameter = { key = religion_names value = random } } + } + text = EVTDESC_MNM_6027_A + } + desc = { + trigger = { + has_alternate_start_parameter = { key = religion_names value = random } + } + text = EVTDESC_MNM_6027_B + } + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = EVTOPTA_6027 + custom_tooltip = { text = EVTOPTA_6027_TOOLTIP } + + hidden_effect = { + character_event = { id = MNM.6028 days = 14 random = 7 } + } + } +} + +#Joining begins +character_event = { + id = MNM.6028 + picture = GFX_evt_shadow + desc = { + trigger = { + NOT = { + has_alternate_start_parameter = { key = religion_names value = random } + } + } + text = EVTDESC_MNM_6028 + } + desc = { + trigger = { + has_alternate_start_parameter = { key = religion_names value = random } + } + text = EVTDESC_MNM_6028_ALT + } + border = GFX_event_normal_frame_intrigue + + hide_from = yes + + is_triggered_only = yes + + immediate = { + hidden_effect = { + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_assassins + } + } + save_event_target_as = grand_master + } + } + set_character_flag = assassins_attempted_recruitment + } + + #Allahu akbar! + option = { + trigger = { true_religion_shiite_trigger = yes } + name = { + trigger = { + NOT = { + has_alternate_start_parameter = { key = religion_names value = random } + } + } + text = EVTOPTA_6028_B + } + name = { + trigger = { + has_alternate_start_parameter = { key = religion_names value = random } + } + text = EVTOPTA_6028_ALT + } + + if = { + limit = { + NOT = { + has_alternate_start_parameter = { key = religion_names value = random } + } + } + custom_tooltip = { text = EVTOPTA_6028_TOOLTIP } + } + + hidden_effect = { character_event = { id = MNM.6029 days = 1 } } + } + + #I will convert + option = { + trigger = { true_religion_shiite_trigger = no } + name = { + trigger = { + NOT = { + has_alternate_start_parameter = { key = religion_names value = random } + } + } + text = EVTOPTB_6028 + } + name = { + trigger = { + has_alternate_start_parameter = { key = religion_names value = random } + } + text = EVTOPTB_6028_ALT + } + + if = { + limit = { + NOT = { + has_alternate_start_parameter = { key = religion_names value = random } + } + } + custom_tooltip = { text = EVTOPTB_6028_TOOLTIP } + } + + religion = shiite + + hidden_effect = { character_event = { id = MNM.6029 days = 1 } } + + ai_chance = { + factor = 20 + + modifier = { + true_religion_group_muslim_trigger = yes + factor = 2 + } + modifier = { + independent = yes + factor = 2 + } + modifier = { + trait = brave + factor = 2 + } + modifier = { + trait = honest + factor = 2 + } + } + } + + #I will convert, secretly + option = { + trigger = { true_religion_shiite_trigger = no } + name = { + trigger = { + NOT = { + has_alternate_start_parameter = { key = religion_names value = random } + } + } + text = EVTOPTC_6028 + } + name = { + trigger = { + has_alternate_start_parameter = { key = religion_names value = random } + } + text = EVTOPTC_6028_ALT + } + + if = { + limit = { + NOT = { + has_alternate_start_parameter = { key = religion_names value = random } + } + } + custom_tooltip = { text = EVTOPTC_6028_TOOLTIP } + } + + hidden_effect = { clear_secret_religion = yes } #To hide spammy tooltips... + set_secret_religion = shiite + + hidden_effect = { character_event = { id = MNM.6029 days = 1 } } + + ai_chance = { + factor = 80 + modifier = { + trait = craven + factor = 2 + } + modifier = { + trait = deceitful + factor = 2 + } + } + } + + #Nope! + option = { + name = EVTOPTD_6028 + custom_tooltip = { text = EVTOPTD_6028_TOOLTIP } + + hidden_effect = { + FROM = { character_event = { id = MNM.6039 days = 3 } } #Fail + + if = { + limit = { event_target:assassins_recruiter = { always = yes } } + event_target:assassins_recruiter = { set_character_flag = recruitment_fail } + event_target:grand_master = { character_event = { id = MNM.6040 } } + } + } + + ai_chance = { + factor = 0 + } + } +} + +#Sign written delcaration of loyalty to grand master +character_event = { + id = MNM.6029 + picture = GFX_evt_shadow + desc = EVTDESC_MNM_6029 + border = GFX_event_normal_frame_intrigue + + hide_from = yes + + is_triggered_only = yes + + #Yes + option = { + name = EVTOPTA_6029 + custom_tooltip = { text = EVTOPTA_6029_TOOLTIP } + + hidden_effect = { character_event = { id = MNM.6030 days = 1 } } + + ai_chance = { + factor = 100 + } + } + + #No + option = { + name = EVTOPTB_6029 + custom_tooltip = { text = EVTOPTB_6029_TOOLTIP } + + hidden_effect = { + FROM = { character_event = { id = MNM.6039 days = 3 } } #Fail + + if = { + limit = { event_target:assassins_recruiter = { always = yes } } + event_target:assassins_recruiter = { set_character_flag = recruitment_fail } + event_target:grand_master = { character_event = { id = MNM.6040 } } + } + } + + ai_chance = { + factor = 0 + } + } +} + +#Inductor will get in contact with you +character_event = { + id = MNM.6030 + picture = GFX_evt_shadow + desc = EVTDESC_MNM_6030 + border = GFX_event_normal_frame_intrigue + + hide_from = yes + + is_triggered_only = yes + + option = { + name = EVTOPTA_6030 + custom_tooltip = { text = EVTOPTA_6030_TOOLTIP } + + hidden_effect = { character_event = { id = MNM.6031 days = 30 random = 6 } } + } +} + +#Sending event to inductor +character_event = { + id = MNM.6031 + hide_window = yes + + is_triggered_only = yes + + immediate = { + if = { + limit = { NOT = { event_target:assassins_inductor = { is_alive = yes } } } + + if = { + limit = { + NOT = { + any_society_member = { + society_rank = { + society = the_assassins + rank == 3 + } + } + } + } + random_society_member = { + limit = { + society_rank = { + society = the_assassins + rank == 4 + } + } + + create_character = { + age = 30 + female = no + random_traits = no + dynasty = random + trait = elusive_shadow + trait = patient + trait = zealous + trait = scholar + trait = chaste + trait = temperate + } + new_character = { + join_society = the_assassins + society_rank_up = { + rank = 2 + society = the_assassins + } + if = { + limit = { NOT = { religion = shiite } } + set_secret_religion = shiite + } + } + } + } + random_society_member = { + limit = { + society_rank = { + society = the_assassins + rank == 3 + } + } + save_event_target_as = assassins_inductor + } + } + event_target:assassins_inductor = { + set_character_flag = event_MNM_6033 + character_event = { id = MNM.6032 } + } + } +} + +#Ping event for inductor +character_event = { + id = MNM.6032 + hide_window = yes + + is_triggered_only = yes + + immediate = { + if = { + limit = { is_alive = no } + FROM = { character_event = { id = MNM.7030 days = 10 } } + break = yes + } + trigger_switch = { + on_trigger = has_character_flag + event_MNM_6033 = { FROM = { letter_event = { id = MNM.6033 } } } + event_MNM_6034 = { FROM = { character_event = { id = MNM.6034 days = 14 } } } + event_MNM_6035 = { FROM = { character_event = { id = MNM.6035 days = 3 } } } + event_MNM_6036 = { FROM = { character_event = { id = MNM.6036 days = 5 } } } + event_MNM_6037 = { FROM = { character_event = { id = MNM.6037 days = 1 } } } + event_MNM_6038 = { FROM = { character_event = { id = MNM.6038 days = 1 } } } + } + clr_character_flag = event_MNM_6033 + clr_character_flag = event_MNM_6034 + clr_character_flag = event_MNM_6035 + clr_character_flag = event_MNM_6036 + clr_character_flag = event_MNM_6037 + clr_character_flag = event_MNM_6038 + } +} + +#Invitation to stronghold +letter_event = { + id = MNM.6033 + desc = EVTDESC_MNM_6033 + border = GFX_event_letter_frame_intrigue + + is_triggered_only = yes + + immediate = { + FROM = { host = { capital_holding = { save_event_target_as = inductor_rendezvous } } } + + FROM = { + host = { capital_holding = { save_event_target_as = inductor_rendezvous } } } + + random_independent_ruler = { + limit = { + any_demesne_title = { title = d_hashshashin } + society_member_of = the_assassins + } + capital_holding = { save_event_target_as = inductor_rendezvous } + } + } + + option = { + name = EVTOPTA_6033 + custom_tooltip = { text = EVTOPTA_6033_TOOLTIP } + + hidden_effect = { + event_target:assassins_inductor = { + clr_character_flag = event_MNM_6033 + set_character_flag = event_MNM_6034 + character_event = { id = MNM.6032 } + } + } + } +} + +#Welcome by GM +character_event = { + id = MNM.6034 + picture = GFX_evt_magnificent_castle + desc = EVTDESC_MNM_6034 + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = EVTOPTA_6034 + + hidden_effect = { + event_target:assassins_inductor = { + clr_character_flag = event_MNM_6034 + set_character_flag = event_MNM_6035 + character_event = { id = MNM.6032 } + } + } + } +} + +#Secret ritual +character_event = { + id = MNM.6035 + picture = GFX_evt_into_the_dungeon + desc = EVTDESC_MNM_6035 + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = EVTOPTA_6035 + + hidden_effect = { + event_target:assassins_inductor = { + clr_character_flag = event_MNM_6035 + set_character_flag = event_MNM_6036 + character_event = { id = MNM.6032 } + } + } + } +} + +#Kill to prove +character_event = { + id = MNM.6036 + picture = GFX_evt_whispers + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { event_target:assassins_sacrifice = { always = yes } } + text = EVTDESC_MNM_6036_A + } + desc = { + trigger = { NOT = { event_target:assassins_sacrifice = { always = yes } } } + text = EVTDESC_MNM_6036_B + } + + is_triggered_only = yes + + immediate = { + random_courtier_or_vassal = { + limit = { + NOT = { society_member_of = the_assassins } + trait = cynical + religion = shiite + is_adult = yes + ai = yes + } + save_event_target_as = assassins_sacrifice + } + random_courtier_or_vassal = { + limit = { + NOT = { society_member_of = the_assassins } + true_religion_shiite_trigger = no + is_adult = yes + ai = yes + } + save_event_target_as = assassins_sacrifice + } + random_courtier_or_vassal = { + limit = { + NOT = { society_member_of = the_assassins } + true_religion_shiite_trigger = no + trait = zealous + is_adult = yes + ai = yes + } + save_event_target_as = assassins_sacrifice + } + random_courtier_or_vassal = { + limit = { + NOT = { society_member_of = the_assassins } + is_primary_heir = no + OR = { + is_lover = ROOT + is_friend = ROOT + is_close_relative = ROOT + } + OR = { + true_religion_shiite_trigger = no + trait = cynical + } + is_adult = yes + ai = yes + } + save_event_target_as = assassins_sacrifice + } + } + + #do it + option = { + name = EVTOPTA_6036 + + if = { + limit = { event_target:assassins_sacrifice = { always = yes } } + event_target:assassins_sacrifice = { death = { death_reason = death_murder_unknown killer = ROOT } } + } + if = { + limit = { NOT = { event_target:assassins_sacrifice = { always = yes } } } + custom_tooltip = { text = EVTOPTA_6036_TOOLTIP } + } + + hidden_effect = { + event_target:assassins_inductor = { + clr_character_flag = event_MNM_6036 + set_character_flag = event_MNM_6037 + character_event = { id = MNM.6032 } + } + } + + ai_chance = { factor = 100 } + } + + #don't do it, fight your way out + option = { + name = EVTOPTB_6036 + custom_tooltip = { text = EVTOPTB_6036_TOOLTIP } + + hidden_effect = { + random_list = { + #Getaway + 33 = { + set_character_flag = escape_successful + + if = { #Saves root for loc nouns + limit = { NOT = { event_target:assassins_sacrifice = { always = yes } } } + save_event_target_as = assassins_sacrifice + } + + modifier = { + factor = 1.4 + attribute_diff = { character = FROM attribute = intrigue value = 2 } + } + modifier = { + factor = 1.4 + attribute_diff = { character = FROM attribute = intrigue value = 4 } + } + modifier = { + factor = 1.4 + attribute_diff = { character = FROM attribute = intrigue value = 6 } + } + modifier = { + factor = 1.4 + combat_rating_diff = { character = FROM value = 10 } + } + modifier = { + factor = 1.4 + combat_rating_diff = { character = FROM value = 20 } + } + modifier = { + factor = 1.4 + combat_rating_diff = { character = FROM value = 30 } + } + } + #Injured + 33 = { + set_character_flag = escape_injured + } + #Death + 33 = { + set_character_flag = escape_death + modifier = { + factor = 1.4 + FROM = { attribute_diff = { character = ROOT attribute = intrigue value = 2 } } + } + modifier = { + factor = 1.4 + FROM = { attribute_diff = { character = ROOT attribute = intrigue value = 4 } } + } + modifier = { + factor = 1.4 + FROM = { attribute_diff = { character = ROOT attribute = intrigue value = 6 } } + } + modifier = { + factor = 1.4 + FROM = { combat_rating_diff = { character = ROOT value = 10 } } + } + modifier = { + factor = 1.4 + FROM = { combat_rating_diff = { character = ROOT value = 20 } } + } + modifier = { + factor = 1.4 + FROM = { combat_rating_diff = { character = ROOT value = 30 } } + } + } + } + + event_target:assassins_inductor = { + clr_character_flag = event_MNM_6036 + set_character_flag = event_MNM_6038 + character_event = { id = MNM.6032 } + } + } + + ai_chance = { factor = 0 } + } + + #bribe + option = { + trigger = { diplomacy = 12 } + tooltip_info = diplomacy + + name = EVTOPTC_6036 + custom_tooltip = { text = EVTOPTC_6036_TOOLTIP } + + scaled_wealth = { value = -0.5 min = -100 } + + hidden_effect = { + set_character_flag = escape_bribe + event_target:assassins_inductor = { + clr_character_flag = event_MNM_6036 + set_character_flag = event_MNM_6038 + character_event = { id = MNM.6032 } + } + } + ai_chance = { factor = 0 } + } +} + +#You are a member! +character_event = { + id = MNM.6037 + picture = GFX_evt_society_joining + desc = EVTDESC_MNM_6037 + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = EVTOPTA_6037 + + join_society = the_assassins + + hidden_effect = { + if = { + limit = { event_target:assassins_recruiter = { always = yes } } + event_target:assassins_recruiter = { set_character_flag = recruitment_success } + event_target:grand_master = { character_event = { id = MNM.6040 } } + } + } + } +} + +#You flee +character_event = { + id = MNM.6038 + picture = GFX_evt_assassination + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { has_character_flag = escape_successful } + text = EVTDESC_MNM_6038_A + picture = GFX_evt_assassination + } + desc = { + trigger = { has_character_flag = escape_injured } + text = EVTDESC_MNM_6038_B + picture = GFX_evt_bloody_man + } + desc = { + trigger = { has_character_flag = escape_death } + text = EVTDESC_MNM_6038_C + picture = GFX_evt_assassination + } + desc = { + trigger = { has_character_flag = escape_bribe } + text = EVTDESC_MNM_6038_D + picture = GFX_evt_whispers + } + + is_triggered_only = yes + + immediate = { + if = { + limit = { event_target:assassins_recruiter = { always = yes } } + event_target:assassins_recruiter = { set_character_flag = recruitment_fail } + event_target:grand_master = { character_event = { id = MNM.6040 } } + } + clr_character_flag = ongoing_recruitment + } + + #Escape successfully + option = { + trigger = { has_character_flag = escape_successful } + name = EVTOPTA_6038 + custom_tooltip = { text = EVTOPTA_6038_TOOLTIP } + + clr_character_flag = escape_successful + + if = { + limit = { event_target:assassins_sacrifice = { NOT = { character = ROOT } } } + add_friend = event_target:assassins_sacrifice + } + + hidden_effect = { + random_list = { + 33 = { + FROM = { add_trait = wounded } + set_character_flag = assassins_target_assaulted_member + } + 33 = { + FROM = { add_maimed_trait_effect = yes } + set_character_flag = assassins_target_assaulted_member + } + 33 = { + FROM = { death = { death_reason = death_murder_unknown killer = ROOT } } + set_character_flag = assassins_target_killed_member + } + } + } + } + + #Escaped but got injured + option = { + trigger = { has_character_flag = escape_injured } + name = EVTOPTB_6038 + custom_tooltip = { text = EVTOPTA_6038_TOOLTIP } + + clr_character_flag = escape_injured + + add_maimed_trait_effect = yes + + if = { + limit = { event_target:assassins_sacrifice = { always = yes } } + event_target:assassins_sacrifice = { death = { death_reason = death_murder_unknown killer = FROM } } + } + + hidden_effect = { + random_list = { + 33 = { + FROM = { add_trait = wounded } + set_character_flag = assassins_target_assaulted_member + } + 33 = { + FROM = { add_maimed_trait_effect = yes } + set_character_flag = assassins_target_assaulted_member + } + 33 = { + FROM = { death = { death_reason = death_murder_unknown killer = ROOT } } + set_character_flag = assassins_target_killed_member + } + } + } + } + + #Escaped but died + option = { + trigger = { has_character_flag = escape_death } + name = EVTOPTC_6038 + + death = { death_reason = death_murder_unknown killer = FROM } + + if = { + limit = { event_target:assassins_sacrifice = { always = yes } } + event_target:assassins_sacrifice = { death = { death_reason = death_murder_unknown killer = FROM } } + } + + } + + #Bribe + option = { + trigger = { has_character_flag = escape_bribe } + name = EVTOPTD_6038 + custom_tooltip = { text = EVTOPTA_6038_TOOLTIP } + clr_character_flag = escape_bribe + } +} + +#Opt out failstate +character_event = { + id = MNM.6039 + picture = GFX_evt_shadow + desc = EVTDESC_MNM_6039 + border = GFX_event_normal_frame_intrigue + + hide_from = yes + + is_triggered_only = yes + + option = { + name = EVTOPTA_6039 + hidden_effect = { clr_character_flag = ongoing_recruitment } + } +} + +#Ping event GM for outcome notification +character_event = { + id = MNM.6040 + hide_window = yes + + is_triggered_only = yes + + immediate = { event_target:assassins_recruiter = { letter_event = { id = MNM.6041 days = 5 } } } +} + +#Outcome of recruitment for recruiter (if there is one) +letter_event = { + id = MNM.6041 + border = GFX_event_letter_frame_religion + + desc = { + trigger = { has_character_flag = recruitment_success } + text = EVTDESC_MNM_6041_A + } + desc = { + trigger = { has_character_flag = recruitment_fail } + text = EVTDESC_MNM_6041_B + } + + is_triggered_only = yes + + option = { + trigger = { has_character_flag = recruitment_success } + name = EXCELLENT + + clr_character_flag = recruitment_success + add_society_currency_minor_effect = yes + } + + option = { + trigger = { has_character_flag = recruitment_fail } + name = CURSES + + clr_character_flag = recruitment_fail + } +} + +###MURDER PLOT EVENTS (start on 6100) + +#Plotter sees an opportunity - assassinate +character_event = { + id = MNM.6100 + picture = GFX_evt_shadow + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_after_temple } } + text = EVTDESC_MNM_6100_A + picture = GFX_evt_market_byzantine + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_prison } } + text = EVTDESC_MNM_6100_B + picture = GFX_evt_into_the_dungeon + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_hiding } } + text = EVTDESC_MNM_6100_C + picture = GFX_evt_shadow + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_seclusion } } + text = EVTDESC_MNM_6100_D + picture = GFX_evt_shadow + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_incapable } } + text = EVTDESC_MNM_6100_E + picture = GFX_evt_magnificent_castle + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_during_feast } } + text = EVTDESC_MNM_6100_F + picture = GFX_evt_state_diplomacy + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_while_asleep } } + text = EVTDESC_MNM_6100_E + picture = GFX_evt_magnificent_castle + } + + is_part_of_plot = yes + is_in_society = yes + capable_only = yes + prisoner = no + + trigger = { + society_member_of = the_assassins + OR = { + has_plot = plot_kill_character + has_plot = plot_kill_spouse + } + plot_target_char = { + is_murder_quest_target_of_root_trigger = yes + OR = { + at_location = ROOT + ROOT = { is_inaccessible_trigger = no } + } + } + NOT = { has_character_flag = murder_in_motion } + } + + mean_time_to_happen = { + months = 4000 + + modifier = { + society_rank = { + society = the_assassins + rank == 3 + } + factor = 0.3 + } + modifier = { + society_rank = { + society = the_assassins + rank == 2 + } + factor = 0.6 + } + modifier = { + plot_target_char = { is_inaccessible_trigger = yes } + factor = 1.5 + } + modifier = { + plot_target_char = { prisoner = yes } + factor = 1.5 + } + modifier = { + plot_power = 0.1 + factor = 0.6 + } + modifier = { + plot_power = 0.2 + factor = 0.6 + } + modifier = { + factor = 0.6 + plot_power = 0.3 + } + modifier = { + factor = 0.6 + plot_power = 0.4 + } + modifier = { + factor = 0.6 + plot_power = 0.5 + } + modifier = { + factor = 0.6 + plot_power = 0.6 + } + modifier = { + factor = 0.6 + plot_power = 0.7 + } + modifier = { + factor = 0.6 + plot_power = 0.8 + } + modifier = { + factor = 0.6 + plot_power = 0.9 + } + modifier = { + factor = 0.6 + plot_power = 1 + } + modifier = { + factor = 0.3 + plot_power = 1.5 + } + modifier = { + factor = 0.3 + plot_power = 2 + } + } + + immediate = { + plot_target_char = { save_event_target_as = plot_target } + save_event_target_as = assassin_plot_owner + + #Set the assassination method + event_target:plot_target = { + if = { + limit = { + NOR = { + prisoner = yes + trait = in_hiding + trait = incapable + has_character_modifier = in_seclusion + } + } + random_list = { + 40 = { set_character_flag = assassination_after_temple } + 30 = { set_character_flag = assassination_during_feast } + 30 = { set_character_flag = assassination_while_asleep } + } + } + if = { + limit = { prisoner = yes } + set_character_flag = assassination_in_prison + } + if = { + limit = { trait = in_hiding } + set_character_flag = assassination_in_hiding + } + if = { + limit = { has_character_modifier = in_seclusion } + set_character_flag = assassination_in_seclusion + } + if = { + limit = { trait = incapable } + set_character_flag = assassination_incapable + } + } + + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_assassins + } + } + save_event_target_as = grand_master #for loc + } + } + + #Do it + option = { + name = EVTOPTA_MNM_6100 + custom_tooltip = { text = EVTOPTA_MNM_6100_TOOLTIP } + hidden_effect = { + event_target:plot_target = { character_event = { id = MNM.6104 days = 7 } } + set_character_flag = murder_in_motion + } + } + + #Wait + option = { + name = EVTOPTB_MNM_6100 + custom_tooltip = { text = EVTOPTB_MNM_6100_TOOLTIP } + } +} + +#Plot backer sees an opportunity - assassinate +character_event = { + id = MNM.6101 + picture = GFX_evt_market_byzantine + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_after_temple } } + text = EVTDESC_MNM_6100_A + picture = GFX_evt_market_byzantine + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_prison } } + text = EVTDESC_MNM_6100_B + picture = GFX_evt_into_the_dungeon + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_hiding } } + text = EVTDESC_MNM_6100_C + picture = GFX_evt_shadow + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_seclusion } } + text = EVTDESC_MNM_6100_D + picture = GFX_evt_shadow + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_incapable } } + text = EVTDESC_MNM_6100_E + picture = GFX_evt_magnificent_castle + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_during_feast } } + text = EVTDESC_MNM_6100_F + picture = GFX_evt_state_diplomacy + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_while_asleep } } + text = EVTDESC_MNM_6100_E + picture = GFX_evt_magnificent_castle + } + + capable_only = yes + prisoner = no + is_part_of_plot = yes + + trigger = { + any_backed_character = { + plot_target_char = { is_murder_quest_target_of_root_trigger = yes } + society_rank = { + rank == 2 + society = the_assassins + } + OR = { + has_plot = plot_kill_character + has_plot = plot_kill_spouse + } + NOT = { has_character_flag = murder_in_motion } + } + NOT = { has_character_flag = murder_in_motion } + } + + mean_time_to_happen = { + months = 4000 + + modifier = { + society_rank = { + society = the_assassins + rank == 3 + } + factor = 0.3 + } + modifier = { + society_rank = { + society = the_assassins + rank == 2 + } + factor = 0.6 + } + + modifier = { + plot_target_char = { is_inaccessible_trigger = yes } + factor = 1.5 + } + modifier = { + plot_target_char = { prisoner = yes } + factor = 1.5 + } + modifier = { + plot_power = 0.1 + factor = 0.6 + } + modifier = { + plot_power = 0.2 + factor = 0.6 + } + modifier = { + factor = 0.6 + plot_power = 0.3 + } + modifier = { + factor = 0.6 + plot_power = 0.4 + } + modifier = { + factor = 0.6 + plot_power = 0.5 + } + modifier = { + factor = 0.6 + plot_power = 0.6 + } + modifier = { + factor = 0.6 + plot_power = 0.7 + } + modifier = { + factor = 0.6 + plot_power = 0.8 + } + modifier = { + factor = 0.6 + plot_power = 0.9 + } + modifier = { + factor = 0.6 + plot_power = 1 + } + modifier = { + factor = 0.3 + plot_power = 1.5 + } + modifier = { + factor = 0.3 + plot_power = 2 + } + } + + immediate = { + any_backed_character = { + limit = { + plot_target_char = { is_murder_quest_target_of_root_trigger = yes } + society_member_of = the_assassins + OR = { + has_plot = plot_kill_character + has_plot = plot_kill_spouse + } + NOT = { has_character_flag = murder_in_motion } + } + save_event_target_as = assassin_plot_owner + plot_target_char = { save_event_target_as = plot_target } + } + + #Set the assassination method + event_target:plot_target = { + if = { + limit = { + NOR = { + prisoner = yes + trait = in_hiding + trait = incapable + has_character_modifier = in_seclusion + } + } + random_list = { + 40 = { set_character_flag = assassination_after_temple } + 30 = { set_character_flag = assassination_during_feast } + 30 = { set_character_flag = assassination_while_asleep } + } + } + if = { + limit = { prisoner = yes } + set_character_flag = assassination_in_prison + } + if = { + limit = { trait = in_hiding } + set_character_flag = assassination_in_hiding + } + if = { + limit = { has_character_modifier = in_seclusion } + set_character_flag = assassination_in_seclusion + } + if = { + limit = { trait = incapable } + set_character_flag = assassination_incapable + } + } + + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_assassins + } + } + save_event_target_as = grand_master #for loc + } + } + + #Do it + option = { + name = EVTOPTA_MNM_6101 + custom_tooltip = { text = EVTOPTA_MNM_6100_TOOLTIP } + hidden_effect = { + set_character_flag = murder_in_motion + event_target:plot_target = { character_event = { id = MNM.6104 days = 7 } } + event_target:assassin_plot_owner = { letter_event = { id = MNM.6102 } } + } + } +} + +#Plot owner recieves a letter informing them about the coming attempt +letter_event = { + id = MNM.6102 + border = GFX_event_letter_frame_intrigue + + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_after_temple } } + text = EVTDESC_MNM_6102_A + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_prison } } + text = EVTDESC_MNM_6102_B + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_hiding } } + text = EVTDESC_MNM_6102_C + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_seclusion } } + text = EVTDESC_MNM_6102_D + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_incapable } } + text = EVTDESC_MNM_6102_D + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_during_feast } } + text = EVTDESC_MNM_6102_D + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_while_asleep } } + text = EVTDESC_MNM_6102_D + } + + is_triggered_only = yes + + option = { + name = EXCELLENT + custom_tooltip = { text = EVTOPTA_MNM_6102_TOOLTIP } + } +} + + +#Assassination attempt +character_event = { + id = MNM.6104 + picture = GFX_evt_shadow + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + hide_from = yes + + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_after_temple } } + text = EVTDESC_MNM_6104_A + picture = GFX_evt_market_byzantine + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_prison } } + text = EVTDESC_MNM_6104_B + picture = GFX_evt_into_the_dungeon + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_hiding } } + text = EVTDESC_MNM_6104_C + picture = GFX_evt_shadow + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_seclusion } } + text = EVTDESC_MNM_6104_D + picture = GFX_evt_state_diplomacy + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_incapable } } + text = EVTDESC_MNM_6104_E + picture = GFX_evt_magnificent_castle + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_during_feast } } + text = EVTDESC_MNM_6104_F + picture = GFX_evt_state_diplomacy + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_while_asleep } } + text = EVTDESC_MNM_6104_C + picture = GFX_evt_shadow + } + + + immediate = { + FROM = { save_event_target_as = assassin } + random_courtier = { + limit = { + at_location = ROOT + prisoner = no + is_adult = yes + } + save_event_target_as = conversationalist + } + if = { + limit = { NOT = { event_target:conversationalist = { always = yes } } } + random_realm_character = { + limit = { dynasty = none } + save_event_target_as = conversationalist + } + } + } + + option = { + name = EVTOPTA_MNM_6104 + + event_target:assassin_plot_owner = { clr_character_flag = murder_in_motion } + + hidden_effect = { + random_list = { + 60 = { #Die + random_list = { + 75 = { #Not discovered + modifier = { + event_target:assassin = { intrigue = 12 } + factor = 1.5 + } + modifier = { + event_target:assassin = { intrigue = 15 } + factor = 1.5 + } + character_event = { id = MNM.6105 days = 3 } + tooltip = { add_trait = schemer } + } + 25 = { #Discovered + modifier = { + event_target:assassin = { NOT = { intrigue = 8 } } + factor = 1.5 + } + modifier = { + event_target:assassin = { NOT = { intrigue = 5 } } + factor = 1.5 + } + character_event = { id = MNM.6108 days = 3 } + event_target:assassin_plot_owner = { character_event = { id = 10 } } + if = { + limit = { NOT = { event_target:assassin = { character = event_target:assassin_plot_owner } } } + event_target:assassin = { character_event = { id = 10 } } + } + tooltip = { add_trait = deceitful } + } + } + modifier = { + event_target:assassin = { + society_rank = { + society = the_assassins + rank == 2 + } + } + factor = 1.75 + } + modifier = { + event_target:assassin = { + society_rank = { + society = the_assassins + rank == 3 + } + } + factor = 3 + } + modifier = { + event_target:assassin = { + society_rank = { + society = the_assassins + rank == 4 + } + } + factor = 5 + } + modifier = { + factor = 3 + trait = incapable + } + modifier = { + factor = 2 + prisoner = yes + } + modifier = { + factor = 1.3 + FROM = { attribute_diff = { character = ROOT attribute = intrigue value = 2 } } + } + modifier = { + factor = 1.3 + FROM = { attribute_diff = { character = ROOT attribute = intrigue value = 4 } } + } + modifier = { + factor = 1.3 + FROM = { attribute_diff = { character = ROOT attribute = intrigue value = 6 } } + } + modifier = { + factor = 1.3 + FROM = { combat_rating_diff = { character = ROOT value = 10 } } + } + modifier = { + factor = 1.3 + FROM = { combat_rating_diff = { character = ROOT value = 20 } } + } + modifier = { + factor = 1.3 + FROM = { combat_rating_diff = { character = ROOT value = 30 } } + } + } + 40 = { #Survive + random_list = { + 50 = { #Not discovered + modifier = { + event_target:assassin = { intrigue = 12 } + factor = 1.5 + } + modifier = { + event_target:assassin = { intrigue = 15 } + factor = 1.5 + } + character_event = { id = MNM.6111 days = 3 } + } + 25 = { #Discovered and wounded + modifier = { + event_target:assassin = { NOT = { intrigue = 8 } } + factor = 1.5 + } + modifier = { + event_target:assassin = { NOT = { intrigue = 5 } } + factor = 1.5 + } + character_event = { id = MNM.6114 days = 3 } + event_target:assassin_plot_owner = { character_event = { id = 11 } } + if = { + limit = { NOT = { event_target:assassin = { character = event_target:assassin_plot_owner } } } + event_target:assassin = { character_event = { id = 11 } } + } + } + 25 = { #Killed assailant + modifier = { + factor = 1.3 + combat_rating_diff = { character = event_target:assassin value = 10 } + } + modifier = { + factor = 1.3 + combat_rating_diff = { character = event_target:assassin value = 20 } + } + modifier = { + factor = 1.3 + combat_rating_diff = { character = event_target:assassin value = 30 } + } + character_event = { id = MNM.6117 days = 3 } + event_target:assassin_plot_owner = { character_event = { id = 11 } } + if = { + limit = { NOT = { event_target:assassin = { character = event_target:assassin_plot_owner } } } + event_target:assassin = { character_event = { id = 11 } } + } + } + } + modifier = { + factor = 1.3 + attribute_diff = { character = event_target:assassin attribute = intrigue value = 2 } + } + modifier = { + factor = 1.3 + attribute_diff = { character = event_target:assassin attribute = intrigue value = 4 } + } + modifier = { + factor = 1.3 + attribute_diff = { character = event_target:assassin attribute = intrigue value = 6 } + } + modifier = { + factor = 1.3 + combat_rating_diff = { character = event_target:assassin value = 10 } + } + modifier = { + factor = 1.3 + combat_rating_diff = { character = event_target:assassin value = 20 } + } + modifier = { + factor = 1.3 + combat_rating_diff = { character = event_target:assassin value = 30 } + } + } + } + } + } +} + +#Plot target dies, undiscovered +character_event = { + id = MNM.6105 + picture = GFX_evt_shadow + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_after_temple } } + text = EVTDESC_MNM_6105_A + picture = GFX_evt_assassination + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_prison } } + text = EVTDESC_MNM_6105_B + picture = GFX_evt_into_the_dungeon + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_hiding } } + text = EVTDESC_MNM_6105_C + picture = GFX_evt_shadow + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_seclusion } } + text = EVTDESC_MNM_6105_D + picture = GFX_evt_assassination + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_incapable } } + text = EVTDESC_MNM_6105_E + picture = GFX_evt_shadow + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_during_feast } } + text = EVTDESC_MNM_6105_D + picture = GFX_evt_assassination + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_while_asleep } } + text = EVTDESC_MNM_6105_C + picture = GFX_evt_shadow + } + + is_triggered_only = yes + hide_from = yes + + option = { + name = EVTOPTA_MNM_6105 + + tooltip = { death = { death_reason = death_murder_unknown_hashashin killer = event_target:assassin_plot_owner } } + + + + hidden_effect = { + event_target:assassin = { character_event = { id = MNM.6106 } } + } + } +} + +#Assassin notified of "Plot target dies, undiscovered" +character_event = { + id = MNM.6106 + picture = GFX_evt_shadow + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_after_temple } } + text = EVTDESC_MNM_6106_A + picture = GFX_evt_assassination + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_prison } } + text = EVTDESC_MNM_6106_B + picture = GFX_evt_into_the_dungeon + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_hiding } } + text = EVTDESC_MNM_6106_C + picture = GFX_evt_shadow + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_seclusion } } + text = EVTDESC_MNM_6106_D + picture = GFX_evt_assassination + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_incapable } } + text = EVTDESC_MNM_6106_E + picture = GFX_evt_shadow + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_during_feast } } + text = EVTDESC_MNM_6106_D + picture = GFX_evt_assassination + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_while_asleep } } + text = EVTDESC_MNM_6106_C + picture = GFX_evt_shadow + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_6106 + FROM = { death = { death_reason = death_murder_unknown_hashashin killer = event_target:assassin_plot_owner } } + + #If quest holder, clear quest and reward + if = { + limit = { + has_quest = quest_the_assassins_assassination + quest_target = { character = event_target:plot_target } + } + clr_quest = quest_the_assassins_assassination + sound_effect = assassins_assassinate_character + + if = { + limit = { event_target:plot_target = { higher_tier_than = DUKE } } + add_society_currency_major_effect = yes + } + if = { + limit = { event_target:plot_target = { tier = DUKE } } + add_society_currency_medium_effect = yes + } + if = { + limit = { event_target:plot_target = { lower_tier_than = DUKE } } + add_society_currency_minor_effect = yes + } + } + + #If this is not your plot, give standard amount and notifiy plot holder + if = { + limit = { NOT = { event_target:assassin_plot_owner = { character = event_target:assassin } } } + hidden_effect = { event_target:assassin_plot_owner = { letter_event = { id = MNM.6107 } } } + add_society_currency_minor_effect = yes + } + + if = { + limit = { event_target:plot_target = { has_character_flag = assassins_target_marked_for_death } } + + random_society_member = { + limit = { society_rank = { rank == 4 society = the_assassins } } + letter_event = { id = MNM.6843 } + } + } + + hidden_effect = { + event_target:plot_target = { character_event = { id = MNM.6120 days = 1 } } #Clears flags + clr_character_flag = murder_in_motion + } + } +} + +#Plot owner notified "Plot target dies, undiscovered" +letter_event = { + id = MNM.6107 + border = GFX_event_letter_frame_intrigue + desc = EVTDESC_MNM_6107 + + is_triggered_only = yes + + option = { + name = EXCELLENT + clr_character_flag = murder_in_motion + + + if = { + limit = { + has_quest = quest_the_assassins_assassination + quest_target = { character = event_target:plot_target } + } + clr_quest = quest_the_assassins_assassination + sound_effect = assassins_assassinate_character + + if = { + limit = { event_target:plot_target = { higher_tier_than = DUKE } } + add_society_currency_major_effect = yes + } + if = { + limit = { event_target:plot_target = { tier = DUKE } } + add_society_currency_medium_effect = yes + } + if = { + limit = { event_target:plot_target = { lower_tier_than = DUKE } } + add_society_currency_minor_effect = yes + } + } + } +} + +#Plot target dies, discovered +character_event = { + id = MNM.6108 + picture = GFX_evt_assassination + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_after_temple } } + text = EVTDESC_MNM_6108_A + picture = GFX_evt_assassination + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_prison } } + text = EVTDESC_MNM_6108_B + picture = GFX_evt_into_the_dungeon + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_hiding } } + text = EVTDESC_MNM_6108_C + picture = GFX_evt_shadow + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_seclusion } } + text = EVTDESC_MNM_6108_D + picture = GFX_evt_assassination + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_incapable } } + text = EVTDESC_MNM_6108_E + picture = GFX_evt_shadow + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_during_feast } } + text = EVTDESC_MNM_6108_D + picture = GFX_evt_assassination + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_while_asleep } } + text = EVTDESC_MNM_6108_C + picture = GFX_evt_shadow + } + + is_triggered_only = yes + hide_from = yes + + option = { + name = EVTOPTA_MNM_6105 + + tooltip = { death = { death_reason = death_murder_hashashin killer = event_target:assassin_plot_owner } } + + hidden_effect = { + event_target:assassin = { character_event = { id = MNM.6109 } } + } + } +} + +#Assassin notified of "Plot target dies, discovered" +character_event = { + id = MNM.6109 + picture = GFX_evt_assassination + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_after_temple } } + text = EVTDESC_MNM_6109_A + picture = GFX_evt_assassination + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_prison } } + text = EVTDESC_MNM_6109_B + picture = GFX_evt_into_the_dungeon + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_hiding } } + text = EVTDESC_MNM_6109_C + picture = GFX_evt_shadow + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_seclusion } } + text = EVTDESC_MNM_6109_D + picture = GFX_evt_assassination + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_incapable } } + text = EVTDESC_MNM_6109_E + picture = GFX_evt_shadow + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_during_feast } } + text = EVTDESC_MNM_6109_D + picture = GFX_evt_assassination + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_while_asleep } } + text = EVTDESC_MNM_6109_C + picture = GFX_evt_shadow + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_6109 + custom_tooltip = { text = EVTOPTA_MNM_6109_TOOLTIP } + + FROM = { death = { death_reason = death_murder_hashashin killer = event_target:assassin } } + + #If quest holder, clear quest and reward + if = { + limit = { + has_quest = quest_the_assassins_assassination + quest_target = { character = event_target:plot_target } + } + clr_quest = quest_the_assassins_assassination + sound_effect = assassins_assassinate_character + + if = { + limit = { event_target:plot_target = { higher_tier_than = DUKE } } + add_society_currency_major_effect = yes + } + if = { + limit = { event_target:plot_target = { tier = DUKE } } + add_society_currency_medium_effect = yes + } + if = { + limit = { event_target:plot_target = { lower_tier_than = DUKE } } + add_society_currency_minor_effect = yes + } + } + + #If this is not your plot, give standard amount and notifiy plot holder + if = { + limit = { NOT = { event_target:assassin_plot_owner = { character = event_target:assassin } } } + hidden_effect = { event_target:assassin_plot_owner = { letter_event = { id = MNM.6110 } } } + add_society_currency_minor_effect = yes + } + + if = { + limit = { event_target:plot_target = { has_character_flag = assassins_target_marked_for_death } } + random_society_member = { + limit = { society_rank = { rank == 4 society = the_assassins } } + letter_event = { id = MNM.6843 } + } + } + + hidden_effect = { + event_target:plot_target = { character_event = { id = MNM.6120 days = 1 } } #Clears flags + clr_character_flag = murder_in_motion + } + } +} + +#Plot owner notified "Plot target dies, discovered" +letter_event = { + id = MNM.6110 + border = GFX_event_letter_frame_intrigue + desc = EVTDESC_MNM_6110 + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_6110 + custom_tooltip = { text = EVTOPTA_MNM_6110_TOOLTIP } + clr_character_flag = murder_in_motion + + #If quest holder, clear quest and reward + if = { + limit = { + has_quest = quest_the_assassins_assassination + quest_target = { character = event_target:plot_target } + } + clr_quest = quest_the_assassins_assassination + sound_effect = assassins_assassinate_character + + if = { + limit = { event_target:plot_target = { higher_tier_than = DUKE } } + add_society_currency_major_effect = yes + } + if = { + limit = { event_target:plot_target = { tier = DUKE } } + add_society_currency_medium_effect = yes + } + if = { + limit = { event_target:plot_target = { lower_tier_than = DUKE } } + add_society_currency_minor_effect = yes + } + } + } +} + +#Plot target survives, undiscovered +character_event = { + id = MNM.6111 + picture = GFX_evt_melee + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_after_temple } } + text = EVTDESC_MNM_6111_A + picture = GFX_evt_melee + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_prison } } + text = EVTDESC_MNM_6111_B + picture = GFX_evt_into_the_dungeon + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_hiding } } + text = EVTDESC_MNM_6111_C + picture = GFX_evt_melee + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_seclusion } } + text = EVTDESC_MNM_6111_D + picture = GFX_evt_melee + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_incapable } } + text = EVTDESC_MNM_6111_E + picture = GFX_evt_melee + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_during_feast } } + text = EVTDESC_MNM_6111_D + picture = GFX_evt_melee + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_while_asleep } } + text = EVTDESC_MNM_6111_C + picture = GFX_evt_melee + } + + is_triggered_only = yes + hide_from = yes + + option = { + name = EVTOPTA_MNM_6111 + custom_tooltip = { text = EVTOPTA_MNM_6111_TOOLTIP } + + hidden_effect = { + event_target:assassin = { character_event = { id = MNM.6112 } } + } + } +} + +#Assassin notified of "Plot target survives, undiscovered" +character_event = { + id = MNM.6112 + picture = GFX_evt_melee + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_after_temple } } + text = EVTDESC_MNM_6112_A + picture = GFX_evt_melee + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_prison } } + text = EVTDESC_MNM_6112_B + picture = GFX_evt_into_the_dungeon + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_hiding } } + text = EVTDESC_MNM_6112_C + picture = GFX_evt_melee + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_seclusion } } + text = EVTDESC_MNM_6112_D + picture = GFX_evt_melee + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_incapable } } + text = EVTDESC_MNM_6112_E + picture = GFX_evt_melee + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_during_feast } } + text = EVTDESC_MNM_6112_D + picture = GFX_evt_melee + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_while_asleep } } + text = EVTDESC_MNM_6112_C + picture = GFX_evt_melee + } + + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_6112 + custom_tooltip = { text = EVTOPTA_MNM_6112_TOOLTIP } + + hidden_effect = { + if = { + limit = { NOT = { event_target:assassin_plot_owner = { character = event_target:assassin } } } + event_target:assassin_plot_owner = { letter_event = { id = MNM.6113 } } + } + event_target:plot_target = { character_event = { id = MNM.6120 days = 1 } } #Clears flags + clr_character_flag = murder_in_motion + } + } +} + +#Plot owner notified "Plot target survives, undiscovered" +letter_event = { + id = MNM.6113 + border = GFX_event_letter_frame_intrigue + desc = EVTDESC_MNM_6113 + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_6113 + custom_tooltip = { text = EVTOPTA_MNM_6113_TOOLTIP } + clr_character_flag = murder_in_motion + } +} + +#Plot target survives, wounded +character_event = { + id = MNM.6114 + picture = GFX_evt_melee + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_after_temple } } + text = EVTDESC_MNM_6114_A + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_prison } } + text = EVTDESC_MNM_6114_B + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_hiding } } + text = EVTDESC_MNM_6114_B + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_seclusion } } + text = EVTDESC_MNM_6114_B + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_incapable } } + text = EVTDESC_MNM_6114_E + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_during_feast } } + text = EVTDESC_MNM_6114_B + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_while_asleep } } + text = EVTDESC_MNM_6114_B + } + + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_6114 + custom_tooltip = { text = EVTOPTA_MNM_6111_TOOLTIP } + + random_list = { + 70 = { + event_target:assassin = { + tooltip = { add_trait = wounded } + set_character_flag = assassin_wounded + } + } + 30 = { + event_target:assassin = { + tooltip = { add_maimed_trait_effect = yes } + set_character_flag = assassin_maimed + } + } + } + + hidden_effect = { + event_target:assassin = { character_event = { id = MNM.6115 } } + } + } +} + +#Assassin notified of "Plot target survives, wounded" +character_event = { + id = MNM.6115 + picture = GFX_evt_melee + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_after_temple } } + text = EVTDESC_MNM_6115_A + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_prison } } + text = EVTDESC_MNM_6115_B + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_hiding } } + text = EVTDESC_MNM_6115_C + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_seclusion } } + text = EVTDESC_MNM_6115_D + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_incapable } } + text = EVTDESC_MNM_6115_E + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_during_feast } } + text = EVTDESC_MNM_6115_D + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_while_asleep } } + text = EVTDESC_MNM_6115_C + } + + + is_triggered_only = yes + + option = { + name = CURSES + custom_tooltip = { text = EVTOPTA_MNM_6109_TOOLTIP } + + if = { + limit = { has_character_flag = assassin_wounded } + add_trait_wounded_effect = yes + clr_character_flag = assassin_wounded + } + if = { + limit = { has_character_flag = assassin_maimed } + add_maimed_trait_effect = yes + clr_character_flag = assassin_maimed + } + + hidden_effect = { + if = { + limit = { NOT = { event_target:assassin_plot_owner = { character = event_target:assassin } } } + event_target:assassin_plot_owner = { letter_event = { id = MNM.6116 } } + } + event_target:plot_target = { character_event = { id = MNM.6120 days = 1 } } #Clears flags + clr_character_flag = murder_in_motion + } + } +} + +#Plot owner notified "Plot target survives, wounded" +letter_event = { + id = MNM.6116 + border = GFX_event_letter_frame_intrigue + desc = EVTDESC_MNM_6116 + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_6116 + custom_tooltip = { text = EVTOPTA_MNM_6116_TOOLTIP } + clr_character_flag = murder_in_motion + } +} + +#Plot target survives, killed +character_event = { + id = MNM.6117 + picture = GFX_evt_melee + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_after_temple } } + text = EVTDESC_MNM_6117_A + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_prison } } + text = EVTDESC_MNM_6117_B + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_hiding } } + text = EVTDESC_MNM_6117_B + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_seclusion } } + text = EVTDESC_MNM_6117_B + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_incapable } } + text = EVTDESC_MNM_6117_E + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_during_feast } } + text = EVTDESC_MNM_6117_B + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_while_asleep } } + text = EVTDESC_MNM_6117_B + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_6117 + custom_tooltip = { text = EVTOPTA_MNM_6111_TOOLTIP } + + tooltip = { event_target:assassin = { death = { death_reason = death_battle killer = event_target:plot_target } } } + + hidden_effect = { + event_target:assassin = { character_event = { id = MNM.6118 } } + } + } +} + +#Assassin notified of "Plot target survives, killed" +character_event = { + id = MNM.6118 + picture = GFX_evt_melee + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_after_temple } } + text = EVTDESC_MNM_6118_A + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_prison } } + text = EVTDESC_MNM_6118_B + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_hiding } } + text = EVTDESC_MNM_6118_C + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_in_seclusion } } + text = EVTDESC_MNM_6118_D + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_incapable } } + text = EVTDESC_MNM_6118_E + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_during_feast } } + text = EVTDESC_MNM_6118_D + } + desc = { + trigger = { event_target:plot_target = { has_character_flag = assassination_while_asleep } } + text = EVTDESC_MNM_6118_C + } + + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_6105 + + hidden_effect = { + if = { + limit = { NOT = { event_target:assassin_plot_owner = { character = event_target:assassin } } } + event_target:assassin_plot_owner = { character_event = { id = MNM.6119 } } + } + clr_character_flag = murder_in_motion + event_target:plot_target = { character_event = { id = MNM.6120 days = 1 } } #Clears flags + } + death = { death_reason = death_battle killer = event_target:plot_target } + } +} + +#Plot owner notified "Plot target survives, killed" +character_event = { + id = MNM.6119 + border = GFX_event_letter_frame_intrigue + desc = EVTDESC_MNM_6119 + picture = GFX_evt_melee + + is_triggered_only = yes + + option = { + name = CURSES + clr_character_flag = murder_in_motion + } +} + +#Clean-up for target +character_event = { + id = MNM.6120 + hide_window = yes + + is_triggered_only = yes + + immediate = { + clr_character_flag = assassination_after_temple + clr_character_flag = assassination_in_prison + clr_character_flag = assassination_in_hiding + clr_character_flag = assassination_in_seclusion + clr_character_flag = assassination_incapable + clr_character_flag = assassination_during_feast + clr_character_flag = assassination_while_asleep + } +} + +###MISSIONS### (start on 6199) + +#Mission tombola +character_event = { + id = MNM.6199 + hide_window = yes + + is_triggered_only = yes + is_in_society = yes + only_capable = yes + + trigger = { + society_member_of = the_assassins + has_any_quest = no + NOT = { has_character_modifier = quest_cooldown_timer } + is_society_grandmaster = no + NOT = { is_inaccessible_trigger = yes } + } + + immediate = { + random_society_member = { + limit = { + is_society_grandmaster = yes + society_member_of = the_assassins + } + save_event_target_as = grand_master + } + + random_list = { + 15 = { + #modifier = { + # factor = 10 + # ai = yes + #} + character_event = { id = MNM.6200 } #Assassination + } + 20 = { + modifier = { factor = 0 ai = yes } + modifier = { factor = 0 NOT = { religion = shiite } } + event_target:grand_master = { character_event = { id = MNM.6203 } } #Convert a specific holding + } + 15 = { + modifier = { + factor = 0 + NOT = { + any_character = { + is_offmap_ruler = no + is_within_diplo_range = ROOT + is_adult = yes + has_character_flag = assassins_refused_to_pay_debt + OR = { + has_character_modifier = borrowed_from_assassins + has_character_modifier = assassins_debt + } + } + } + } + event_target:grand_master = { character_event = { id = MNM.6214 } } # Collect debt + } + 10 = { + modifier = { + factor = 0 + is_playable = no + } + modifier = { + factor = 0 + NOT = { religion = shiite } + } + modifier = { + factor = 0 + independent = no + } + modifier = { + factor = 0 + ai = yes + } + modifier = { + factor = 0 + NOT = { + any_realm_province = { + any_neighbor_province = { + owner = { + top_liege = { + NOT = { character = ROOT } + NOT = { religion = shiite } + any_realm_province = { + owner = { NOT = { religion = shiite } } + any_province_holding = { + owner = { NOT = { religion = shiite } } + OR = { + holding_type = temple + holding_type = castle + } + } + } + } + } + } + } + } + } + event_target:grand_master = { character_event = { id = MNM.6220 } } #Occupy infidel holding + } + 5 = { + event_target:grand_master = { character_event = { id = MNM.6248 } } #Train protege + } + 50 = { # AI bypasses missions at times + modifier = { + factor = 0 + ai = no + } + random_list = { + 70 = { + modifier = { + factor = 0.9 + society_influence >= 30 + } + modifier = { + factor = 0.9 + society_influence >= 40 + } + modifier = { + factor = 0.8 + society_influence >= 50 + } + modifier = { + factor = 0.7 + society_influence >= 70 + } + modifier = { + factor = 0.6 + society_influence >= 80 + } + modifier = { + factor = 0.5 + society_influence >= 90 + } + add_mission_succeed_influence_effect = yes + if = { # Added to promote landless assassins to rank 2, so they can participate in plots + limit = { + society_rank < 2 + society_can_rank_up = yes + } + random_list = { + 50 = {} + 50 = { + society_rank_up = 1 + } + } + } + } + 30 = { + add_mission_fail_influence_effect = yes + } + } + } + 125 = { + modifier = { + factor = 0 + ai = no + } + #Do nothing for AI + } + } + } +} + +#MISSION: Assassinate a target +character_event = { + id = MNM.6200 + hide_window = yes + + is_triggered_only = yes + + immediate = { + random_list = { + 40 = { #Infidel ruler at war with shia, or their vassal/commander + trigger = { + any_independent_ruler = { + is_within_diplo_range = ROOT #Not using assassins_appropriate_target_trigger here to also find vassals/commanders + NOT = { character = ROOT } + NOT = { religion = shiite } + NOT = { society_member_of = the_assassins } + any_war = { + attacker = { character = PREV } + defender = { + religion = shiite + NOT = { character = ROOT } + } + } + } + } + + #Find the ruler + random_independent_ruler = { + limit = { + is_within_diplo_range = ROOT #Not using assassins_appropriate_target_trigger here to also find vassals/commanders + NOT = { character = ROOT } + NOT = { religion = shiite } + NOT = { society_member_of = the_assassins } + any_war = { + any_attacker = { character = PREV } + defender = { + religion = shiite + NOT = { character = ROOT } + } + } + } + + if = { + limit = { + assassins_appropriate_target_trigger = yes + } + save_event_target_as = assassins_target + } + + else = { + + save_event_target_as = assassins_aggressor + + random_vassal = { + limit = { + assassins_appropriate_target_trigger = yes + NOT = { character = ROOT } + NOT = { society_member_of = the_assassins } + OR = { + liege = { is_feudal = yes } + any_war = { + any_attacker = { character = PREV } + defender = { religion = shiite } + } + } + } + save_event_target_as = assassins_target + } + + random_courtier_or_vassal = { + limit = { + assassins_appropriate_target_trigger = yes + NOT = { society_member_of = the_assassins } + in_command = yes + OR = { + is_ruler = no + OR = { + liege = { is_feudal = yes } + any_war = { + any_attacker = { character = PREV } + defender = { religion = shiite } + } + } + } + } + save_event_target_as = assassins_target + } + + event_target:assassins_target = { + if = { + limit = { independent = yes } + set_character_flag = assassins_target_war_attacker + } + if = { + limit = { + independent = no + in_command = no + } + set_character_flag = assassins_target_war_attacker_vassal + } + if = { + limit = { + independent = no + in_command = yes + } + set_character_flag = assassins_target_war_attacker_commander + } + } + } + } + } + 15 = { #Assaulted an assassin + trigger = { + any_character = { + is_offmap_ruler = no + NOT = { character = ROOT } + assassins_appropriate_target_trigger = yes + has_character_flag = assassins_target_assaulted_member + } + } + random_character = { + limit = { + is_offmap_ruler = no + NOT = { character = ROOT } + assassins_appropriate_target_trigger = yes + has_character_flag = assassins_target_assaulted_member + } + save_event_target_as = assassins_target + } + } + 20 = { #Killed an assassin + trigger = { + any_character = { + is_offmap_ruler = no + NOT = { character = ROOT } + assassins_appropriate_target_trigger = yes + has_character_flag = assassins_target_killed_member + } + } + random_character = { + limit = { + is_offmap_ruler = no + NOT = { character = ROOT } + assassins_appropriate_target_trigger = yes + has_character_flag = assassins_target_killed_member + } + save_event_target_as = assassins_target + } + } + 20 = { #Marked for death by GM + trigger = { + any_character = { + is_offmap_ruler = no + NOT = { character = ROOT } + assassins_appropriate_target_trigger = yes + has_character_flag = assassins_target_marked_for_death + } + } + random_character = { + limit = { + is_offmap_ruler = no + NOT = { character = ROOT } + assassins_appropriate_target_trigger = yes + has_character_flag = assassins_target_marked_for_death + } + save_event_target_as = assassins_target + } + } + 15 = { #Cruel non-shia ruler with shia population + trigger = { + any_independent_ruler = { + assassins_appropriate_target_trigger = yes + NOT = { character = ROOT } + NOT = { society_member_of = the_assassins } + OR = { + is_evil_trigger = yes + trait = zealous + } + NOT = { religion = shiite } + any_realm_province = { religion = shiite } + } + } + random_independent_ruler = { + limit = { + assassins_appropriate_target_trigger = yes + NOT = { character = ROOT } + NOT = { society_member_of = the_assassins } + OR = { + is_evil_trigger = yes + trait = zealous + } + NOT = { religion = shiite } + any_realm_province = { religion = shiite } + } + save_event_target_as = assassins_target + set_character_flag = assassins_target_persecutes_shiites + } + } + } + + if = { #Fallback + limit = { NOT = { event_target:assassins_target = { always = yes } } } + random_playable_ruler = { + limit = { + assassins_appropriate_target_trigger = yes + NOT = { character = ROOT } + NOT = { religion = shiite } + NOT = { society_member_of = the_assassins } + OR = { + NOT = { + any_playable_ruler = { + assassins_appropriate_target_trigger = yes + NOT = { religion = shiite } + NOT = { society_member_of = the_assassins } + + OR = { + is_evil_trigger = yes + trait = zealous + } + } + } + OR = { + is_evil_trigger = yes + trait = zealous + } + } + } + save_event_target_as = assassins_target + set_character_flag = assassins_target_fallback + } + } + + if = { + limit = { + event_target:assassins_target = { always = yes } + is_within_diplo_range = event_target:assassins_target + } + random_society_member = { + limit = { society_rank = { rank == 4 society = the_assassins } } + character_event = { id = MNM.6201 } + } + } + if = { + limit = { NOT = { is_within_diplo_range = event_target:assassins_target } } + event_target:assassins_target = { + clr_character_flag = assassins_target_persecutes_shiites + clr_character_flag = assassins_target_fallback + clr_character_flag = assassins_target_war_attacker + clr_character_flag = assassins_target_war_attacker_vassal + clr_character_flag = assassins_target_war_attacker_commander + } + } + } +} + +#Ping event for GM +character_event = { + id = MNM.6201 + hide_window = yes + + is_triggered_only = yes + + immediate = { + if = { + limit = { event_target:assassins_target = { always = yes } } + FROM = { society_quest_event = { id = MNM.6202 days = 7 random = 7 } } + } + } +} + +#You get your target +society_quest_event = { + id = MNM.6202 + title = quest_the_assassins_assassination + quest_target = event_target:assassins_target + + trigger = { + is_in_society = yes + event_target:assassins_target = { + is_alive = yes + } + } + + desc = { + trigger = { event_target:assassins_target = { has_character_flag = assassins_target_war_attacker } } + text = EVTDESC_MNM_6202_WAR_ATTACKER + } + desc = { + trigger = { event_target:assassins_target = { has_character_flag = assassins_target_war_attacker_vassal } } + text = EVTDESC_MNM_6202_WAR_ATTACKER_VASSAL + } + desc = { + trigger = { event_target:assassins_target = { has_character_flag = assassins_target_war_attacker_commander } } + text = EVTDESC_MNM_6202_WAR_ATTACKER_COMMANDER + } + desc = { + trigger = { event_target:assassins_target = { has_character_flag = assassins_target_assaulted_member } } + text = EVTDESC_MNM_6202_ASSAULTED_MEMBER + } + desc = { + trigger = { event_target:assassins_target = { has_character_flag = assassins_target_killed_member } } + text = EVTDESC_MNM_6202_KILLED_MEMBER + } + desc = { + trigger = { event_target:assassins_target = { has_character_flag = assassins_target_marked_for_death } } + text = EVTDESC_MNM_6202_MARKED_FOR_DEATH + } + desc = { + trigger = { event_target:assassins_target = { has_character_flag = assassins_target_persecutes_shiites } } + text = EVTDESC_MNM_6202_PERSECUTED_SHIITES + } + desc = { + trigger = { event_target:assassins_target = { has_character_flag = assassins_target_fallback } } + text = EVTDESC_MNM_6202_FALLBACK + } + + is_triggered_only = yes + + immediate = { #For loc + hidden_effect = { + event_target:assassins_target = { + any_war = { + limit = { defender = { religion = shiite } } + defender = { save_event_target_as = shiite_defender } + } + any_realm_province = { + limit = { religion = shiite } + save_event_target_as = shiite_province + } + } + } + } + + option = { + name = ACCEPT + + event_target:assassins_target = { + set_quest_target = { + id = quest_the_assassins_assassination + holder = ROOT + } + } + + hidden_effect = { + if = { #Makes sure the AI actually does the mission + limit = { ai = yes } + random_list = { + 20 = { + trigger = { + attribute_diff = { character = event_target:assassins_target attribute = intrigue value = 6 } + society_rank = 2 + } + modifier = { intrigue = 12 factor = 1.2 } + modifier = { intrigue = 14 factor = 1.2 } + modifier = { intrigue = 16 factor = 1.2 } + modifier = { intrigue = 18 factor = 1.2 } + character_event = { id = MNM.6948 days = 150 random = 100 } #Triggers plot event + } + 20 = { + trigger = { attribute_diff = { character = event_target:assassins_target attribute = intrigue value = 3 } } + modifier = { intrigue = 12 factor = 1.2 } + modifier = { intrigue = 14 factor = 1.2 } + modifier = { intrigue = 16 factor = 1.2 } + modifier = { intrigue = 18 factor = 1.2 } + character_event = { id = MNM.6948 days = 300 random = 100 } #Triggers plot event + } + 20 = { + modifier = { intrigue = 12 factor = 1.2 } + modifier = { intrigue = 14 factor = 1.2 } + modifier = { intrigue = 16 factor = 1.2 } + modifier = { intrigue = 18 factor = 1.2 } + character_event = { id = MNM.6948 days = 500 random = 300 } #Triggers plot event + } + 40 = { + modifier = { event_target:assassins_target = { intrigue = 12 } factor = 1.2 } + modifier = { event_target:assassins_target = { intrigue = 14 } factor = 1.2 } + modifier = { event_target:assassins_target = { intrigue = 16 } factor = 1.2 } + modifier = { event_target:assassins_target = { intrigue = 18 } factor = 1.2 } + modifier = { event_target:assassins_target = { tier = COUNT } factor = 1.5 } + modifier = { event_target:assassins_target = { tier = DUKE } factor = 2 } + modifier = { event_target:assassins_target = { tier = KING } factor = 2.5 } + modifier = { event_target:assassins_target = { tier = EMPEROR } factor = 5 } + character_event = { id = MNM.6949 } #Clears quest + } + } + } + } + event_target:assassins_target = { + set_character_flag = appear_in_option + clr_character_flag = appear_in_option + + hidden_effect = { + clr_character_flag = assassins_target_persecutes_shiites + clr_character_flag = assassins_target_fallback + clr_character_flag = assassins_target_war_attacker + clr_character_flag = assassins_target_war_attacker_vassal + clr_character_flag = assassins_target_war_attacker_commander + } + } + } + + option = { + name = DECLINE + custom_tooltip = { text = decline_quest_tooltip } + + hidden_effect = { + event_target:assassins_target = { + clr_character_flag = assassins_target_persecutes_shiites + clr_character_flag = assassins_target_fallback + clr_character_flag = assassins_target_war_attacker + clr_character_flag = assassins_target_war_attacker_vassal + clr_character_flag = assassins_target_war_attacker_commander + } + + add_character_modifier = { + name = quest_cooldown_timer + hidden = yes + days = 1000 + } + } + + ai_chance = { factor = 0 } + } +} + +#Helps AI do mission +character_event = { + id = MNM.6948 + hide_window = yes + is_triggered_only = yes + trigger = { + NOT = { plot_target_char = { is_quest_target_of = ROOT } } + has_quest = quest_the_assassins_assassination + } + immediate = { + character_event = { id = MNM.6100 } + } +} + +#AI clean-up +character_event = { + id = MNM.6949 + hide_window = yes + is_triggered_only = yes + trigger = { + NOT = { plot_target_char = { is_quest_target_of = ROOT } } + has_quest = quest_the_assassins_assassination + } + immediate = { + clr_quest = { + id = quest_the_assassins_assassination + failure = yes + } + } +} + +character_event = { + id = MNM.6950 + desc = EVTDESC_MNM_6950 + picture = GFX_evt_assassination + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + trigger = { + has_quest = quest_the_assassins_assassination + } + + option = { + name = EVTOPTA_MNM_6106 + clr_quest = quest_the_assassins_assassination + sound_effect = assassins_assassinate_character + + if = { + limit = { event_target:plot_target = { higher_tier_than = DUKE } } + add_society_currency_medium_effect = yes + } + if = { + limit = { event_target:plot_target = { lower_tier_than = KING } } + add_society_currency_minor_effect = yes + } + } +} + +#MISSION: Convert specific province to Shia +#GM ping event +character_event = { + id = MNM.6203 + hide_window = yes + + is_triggered_only = yes + + trigger = { + FROM = { + religion = shiite + any_realm_province = { NOT = { religion = shiite } } + } + } + + immediate = { + FROM = { society_quest_event = { id = MNM.6204 days = 7 random = 7 } } + } +} + +society_quest_event = { + id = MNM.6204 + quest_target = event_target:conversion_province + + desc = { + trigger = { + event_target:conversion_province = { owner = { character = ROOT } } + NOT = { has_alternate_start_parameter = { key = religion_names value = random } } + } + text = EVTDESC_MNM_6204_A + } + desc = { + trigger = { + event_target:conversion_province = { NOT = { owner = { character = ROOT } } } + NOT = { has_alternate_start_parameter = { key = religion_names value = random } } + } + text = EVTDESC_MNM_6204_B + } + desc = { + trigger = { has_alternate_start_parameter = { key = religion_names value = random } } + text = EVTDESC_MNM_6204_c + } + + is_triggered_only = yes + + immediate = { + random_realm_province = { + limit = { + NOT = { religion = shiite } + } + save_event_target_as = conversion_province + } + random_realm_province = { + limit = { + owner = { NOT = { religion = shiite } } + NOT = { religion = shiite } + } + save_event_target_as = conversion_province + } + random_demesne_province = { + limit = { NOT = { religion = shiite } } + save_event_target_as = conversion_province + } + event_target:conversion_province = { owner = { save_event_target_as = conversion_province_owner } } + } + + option = { + name = ACCEPT + + event_target:conversion_province = { + set_quest_target = { + id = quest_the_assassins_convert_province + holder = ROOT + } + } + } + + option = { + name = DECLINE + custom_tooltip = { text = decline_quest_tooltip } + + add_character_modifier = { + name = quest_cooldown_timer + hidden = yes + days = 1000 + } + + ai_chance = { factor = 0 } + } +} + +#The province in question is converted +province_event = { + id = MNM.6206 + hide_window = yes + + is_triggered_only = yes + + immediate = { + any_quester_targeting_this = { + limit = { has_quest = quest_the_assassins_convert_province } + character_event = { id = MNM.6205 } + } + } +} + +#character_event = { #Eve,t for clearing quest_the_assassins_convert_province +# id = MNM.6230 +# hide_window = yes +# is_triggered_only = yes +# trigger = { +# FROM = { +# tier = COUNT +# location = { is_quest_target = yes } +# OR = { +# location = { +# any_quester_targeting_this = { +# character = FROMFROM +# NOT = { is_vassal_or_below = ROOT } +# has_quest = quest_the_assassins_convert_province +# } +# } +# location = { +# any_quester_targeting_this = { +# is_vassal_or_below = FROMFROM +# NOR = { +# character = ROOT +# is_vassal_or_below = ROOT +# } +# has_quest = quest_the_assassins_convert_province +# } +# } +# } +# } +# } +# immediate = { +# FROM = { +# location = { +# any_quester_targeting_this = { +# limit = { +# OR = { +# AND = { +# character = FROMFROM +# NOT = { is_vassal_or_below = ROOT } +# has_quest = quest_the_assassins_convert_province +# } +# AND = { +# is_vassal_or_below = FROMFROM +# NOR = { +# character = ROOT +# is_vassal_or_below = ROOT +# } +# } +# } +# has_quest = quest_the_assassins_convert_province +# } +# wealth = 5000 +# } +# } +# } +# } +#} + +#Mission completion +character_event = { + id = MNM.6205 + desc = { + trigger = { NOT = { has_alternate_start_parameter = { key = religion_names value = random } } } + text = EVTDESC_MNM_6205_A + } + desc = { + trigger = { has_alternate_start_parameter = { key = religion_names value = random } } + text = EVTDESC_MNM_6205_B + } + picture = GFX_evt_imam + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + hide_from = yes + + trigger = { + religion = FROM + } + + immediate = { + FROM = { save_event_target_as = conversion_province } + } + + option = { + trigger = { + NOT = { has_alternate_start_parameter = { key = religion_names value = random } } + } + name = EVTOPTA_MNM_6205_A + clr_quest = quest_the_assassins_convert_province + sound_effect = assassins_convert_province + } + option = { + trigger = { + has_alternate_start_parameter = { key = religion_names value = random } + } + name = EVTOPTA_MNM_6205_B + clr_quest = quest_the_assassins_convert_province + sound_effect = assassins_convert_province + } +} + + + +#MISSION: Collect debt +character_event = { + id = MNM.6214 + hide_window = yes + + is_triggered_only = yes + + immediate = { FROM = { society_quest_event = { id = MNM.6207 days = 7 random = 7 } } } +} + +society_quest_event = { + id = MNM.6207 + desc = EVTDESC_MNM_6207 + quest_target = event_target:owes_the_assassins + + is_triggered_only = yes + + trigger = { + society_member_of = the_assassins + any_character = { + is_offmap_ruler = no + is_within_diplo_range = ROOT + is_adult = yes + has_character_flag = assassins_refused_to_pay_debt + OR = { + has_character_modifier = borrowed_from_assassins + has_character_modifier = assassins_debt + } + is_quest_target = no + } + } + + immediate = { + random_character = { + limit = { + is_offmap_ruler = no + is_within_diplo_range = ROOT + is_adult = yes + has_character_flag = assassins_refused_to_pay_debt + OR = { + has_character_modifier = borrowed_from_assassins + has_character_modifier = assassins_debt + } + is_quest_target = no + } + save_event_target_as = owes_the_assassins + } + } + + option = { + name = ACCEPT + + event_target:owes_the_assassins = { + set_quest_target = { + id = quest_the_assassins_collect_debt + holder = ROOT + } + } + + event_target:owes_the_assassins = { + set_character_flag = appear_on_option + clr_character_flag = appear_on_option + } + + } + + option = { + name = DECLINE + custom_tooltip = { text = decline_quest_tooltip } + + add_character_modifier = { + name = quest_cooldown_timer + hidden = yes + days = 1000 + } + + ai_chance = { factor = 0 } + } +} + +#plot triggers, ping event +character_event = { + id = MNM.6217 + hide_window = yes + + is_in_society = yes + is_part_of_plot = yes + capable_only = yes + prisoner = no + min_age = 16 + + trigger = { + society_member_of = the_assassins + has_plot = plot_assassins_collect_debt + NOT = { has_character_flag = collecting_debt } + NOT = { has_character_flag = collected_debt_failure } + NOT = { has_character_flag = collected_debt_success } + } + + mean_time_to_happen = { + months = 2000 + + modifier = { + society_rank = { + society = the_assassins + rank == 3 + } + factor = 3 + } + modifier = { + society_rank = { + society = the_assassins + rank == 2 + } + factor = 1.75 + } + modifier = { + plot_target_char = { is_inaccessible_trigger = yes } + factor = 1.5 + } + modifier = { + plot_target_char = { prisoner = yes } + factor = 1.5 + } + modifier = { + plot_power = 0.1 + factor = 0.6 + } + modifier = { + plot_power = 0.2 + factor = 0.6 + } + modifier = { + factor = 0.6 + plot_power = 0.3 + } + modifier = { + factor = 0.6 + plot_power = 0.4 + } + modifier = { + factor = 0.6 + plot_power = 0.5 + } + modifier = { + factor = 0.6 + plot_power = 0.6 + } + modifier = { + factor = 0.6 + plot_power = 0.7 + } + modifier = { + factor = 0.6 + plot_power = 0.8 + } + modifier = { + factor = 0.6 + plot_power = 0.9 + } + modifier = { + factor = 0.6 + plot_power = 1 + } + modifier = { + factor = 0.3 + plot_power = 1.5 + } + modifier = { + factor = 0.3 + plot_power = 2 + } + } + + immediate = { + save_event_target_as = assassin + set_character_flag = collecting_debt + + if = { + limit = { + has_quest = quest_the_assassins_collect_debt + } + quest_target = { save_event_target_as = owes_the_assassins } + } + + event_target:owes_the_assassins = { + random_friend = { + limit = { NOT = { society_member_of = the_assassins } } + save_event_target_as = threaten_dear_relation } + host = { + random_courtier = { + limit = { + NOT = { society_member_of = the_assassins } + is_close_relative = event_target:owes_the_assassins + reverse_opinion = { who = event_target:owes_the_assassins value = 40 } + } + save_event_target_as = threaten_dear_relation + } + } + random_lover = { + limit = { NOT = { society_member_of = the_assassins } } + save_event_target_as = threaten_dear_relation + } + random_realm_province = { + limit = { any_province_holding = { holding_type = city } } + save_event_target_as = fire_town_province + random_province_holding = { + limit = { holding_type = city } + save_event_target_as = fire_town + } + } + if = { + limit = { NOT = { event_target:fire_town = { always = yes } } } + capital_scope = { + save_event_target_as = fire_town_province + random_province_holding = { + limit = { holding_type = city } + save_event_target_as = fire_town + } + } + } + + character_event = { id = MNM.6218 } + } + } +} + +#Target ping event +character_event = { + id = MNM.6218 + hide_window = yes + + is_triggered_only = yes + + immediate = { + FROM = { character_event = { id = MNM.6208 } } + } +} + +#How do you go about collecting the debt? +character_event = { + id = MNM.6208 + desc = EVTDESC_MNM_6208 + picture = GFX_evt_shadow + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + + + #Threaten them personally + option = { + name = EVTOPTA_MNM_6208 + custom_tooltip = { text = EVTOPTA_MNM_6208_TOOLTIP } + hidden_effect = { event_target:owes_the_assassins = { character_event = { id = MNM.6209 days = 7 } } } + hidden_effect = { set_character_flag = threaten_personally } + } + + #Threaten someone they hold dear + option = { + trigger = { event_target:threaten_dear_relation = { always = yes } } + name = EVTOPTB_MNM_6208 + custom_tooltip = { text = EVTOPTB_MNM_6208_TOOLTIP } + hidden_effect = { event_target:threaten_dear_relation = { character_event = { id = MNM.6211 days = 7 } } } + hidden_effect = { set_character_flag = threaten_relation } + } + + #Threaten their wealth + option = { + trigger = { event_target:fire_town = { always = yes } } + name = EVTOPTC_MNM_6208 + custom_tooltip = { text = EVTOPTC_MNM_6208_TOOLTIP } + hidden_effect = { event_target:owes_the_assassins = { character_event = { id = MNM.6213 days = 7 } } } + hidden_effect = { set_character_flag = threaten_wealth } + } +} + + +#You threaten them personally +character_event = { + id = MNM.6209 + picture = GFX_evt_shadow + border = GFX_event_normal_frame_intrigue + hide_from = yes + + desc = { + trigger = { + OR = { + trait = paranoid + trait = schemer + intrigue = 15 + } + } + text = EVTDESC_MNM_6209_A + } + desc = { + trigger = { + NOR = { + trait = paranoid + trait = schemer + intrigue = 15 + } + } + text = EVTDESC_MNM_6209_B + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_6209 + + if = { + limit = { + OR = { + trait = paranoid + trait = schemer + intrigue = 15 + } + } + custom_tooltip = { text = EVTOPTA_MNM_6209_TOOLTIP_A } + } + + if = { + limit = { + NOR = { + trait = paranoid + trait = schemer + intrigue = 15 + } + } + custom_tooltip = { text = EVTOPTA_MNM_6209_TOOLTIP_B } + if = { + limit = { + has_dlc = "Reapers" + NOT = { has_character_flag = developing_illness } + NOT = { has_character_flag = disease_not_serious } + NOT = { trait = vomiting } + } + + set_character_flag = disease_not_serious + add_trait = vomiting + hidden_tooltip = { character_event = { id = RIP.11005 days = 15 random = 10 } } + } + if = { + limit = { + NOT = { has_dlc = "Reapers" } + NOT = { trait = ill } + } + + add_trait = ill + hidden_tooltip = { character_event = { id = 6061 days = 15 random = 10 } } + } + } + hidden_tooltip = { character_event = { id = MNM.6210 days = 3 } } + } +} + +character_event = { + id = MNM.6210 + desc = EVTDESC_MNM_6210 + picture = GFX_evt_shadow + border = GFX_event_normal_frame_intrigue + + min_age = 16 + hide_from = yes + + immediate = { + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_assassins + } + } + save_event_target_as = grand_master + } + } + + is_triggered_only = yes + + #Yes + option = { + name = EVTOPTA_MNM_6210 + custom_tooltip = { text = EVTOPTA_MNM_6210_TOOLTIP } + + pay_back_assassins_effect = yes + + remove_assassins_debt_effect = yes + + clr_character_flag = assassins_refused_to_pay_debt + + hidden_effect = { event_target:assassin = { character_event = { id = MNM.6215 } } } + + ai_chance = { + factor = 50 + modifier = { + trait = craven + factor = 5 + } + modifier = { + has_mental_disorder_trigger = yes + factor = 2 + } + modifier = { + has_mental_disorder_trigger = yes + factor = 2 + } + modifier = { + event_target:assassin = { attribute_diff = { character = ROOT attribute = intrigue value = 2 } } + factor = 1.3 + } + modifier = { + event_target:assassin = { attribute_diff = { character = ROOT attribute = intrigue value = 4 } } + factor = 1.3 + } + modifier = { + event_target:assassin = { attribute_diff = { character = ROOT attribute = intrigue value = 6 } } + factor = 1.4 + } + modifier = { + event_target:assassin = { attribute_diff = { character = ROOT attribute = intrigue value = 8 } } + factor = 1.5 + } + } + } + + option = { + name = EVTOPTB_MNM_6210 + custom_tooltip = { text = EVTOPTB_MNM_6210_TOOLTIP } + clr_character_flag = assassins_refused_to_pay_debt + set_character_flag = assassins_target_debt + + hidden_effect = { event_target:assassin = { character_event = { id = MNM.6216 } } } + + ai_chance = { + factor = 50 + modifier = { + trait = brave + factor = 4 + } + modifier = { + can_pay_assassins_debt = no + factor = 2 + } + } + } +} + +character_event = { + id = MNM.6211 + hide_window = yes + + is_triggered_only = yes + + immediate = { + event_target:owes_the_assassins = { character_event = { id = MNM.6212 } } + } +} + +#You threaten someone dear to them +character_event = { + id = MNM.6212 + desc = EVTDESC_MNM_6212 + picture = GFX_evt_uncomfortable + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + #Yes + option = { + name = EVTOPTA_MNM_6210 + custom_tooltip = { text = EVTOPTA_MNM_6210_TOOLTIP } + + pay_back_assassins_effect = yes + remove_assassins_debt_effect = yes + + clr_character_flag = assassins_refused_to_pay_debt + + hidden_effect = { event_target:assassin = { character_event = { id = MNM.6215 } } } + + reverse_opinion = { + who = FROM + modifier = opinion_grateful + years = 5 + } + + ai_chance = { + factor = 50 + modifier = { + is_benevolent_trigger = yes + factor = 5 + } + modifier = { + opinion = { who = event_target:threaten_dear_relation value = 75 } + factor = 2 + } + modifier = { + event_target:assassin = { attribute_diff = { character = ROOT attribute = intrigue value = 2 } } + factor = 1.3 + } + modifier = { + event_target:assassin = { attribute_diff = { character = ROOT attribute = intrigue value = 4 } } + factor = 1.3 + } + modifier = { + event_target:assassin = { attribute_diff = { character = ROOT attribute = intrigue value = 6 } } + factor = 1.4 + } + modifier = { + event_target:assassin = { attribute_diff = { character = ROOT attribute = intrigue value = 8 } } + factor = 1.5 + } + } + } + + option = { + name = EVTOPTB_MNM_6210 + custom_tooltip = { text = EVTOPTB_MNM_6210_TOOLTIP } + clr_character_flag = assassins_refused_to_pay_debt + set_character_flag = assassins_target_debt + + hidden_effect = { event_target:assassin = { character_event = { id = MNM.6216 } } } + + reverse_opinion = { + who = FROM + modifier = opinion_angry + years = 5 + } + + ai_chance = { + factor = 50 + modifier = { + is_evil_trigger = yes + factor = 4 + } + modifier = { + NOT = { opinion = { who = event_target:threaten_dear_relation value = 50 } } + factor = 2 + } + modifier = { + can_pay_assassins_debt = no + factor = 2 + } + } + } +} + +#Threaten their money +character_event = { + id = MNM.6213 + desc = EVTDESC_MNM_6213 + picture = GFX_evt_uncomfortable + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + hide_from = yes + + #Yes + option = { + name = EVTOPTA_MNM_6210 + custom_tooltip = { text = EVTOPTA_MNM_6210_TOOLTIP } + + pay_back_assassins_effect = yes + remove_assassins_debt_effect = yes + + clr_character_flag = assassins_refused_to_pay_debt + + hidden_effect = { event_target:assassin = { character_event = { id = MNM.6215 } } } + + event_target:fire_town_province = { + add_province_modifier = { + name = trade_district_fire + duration = 3650 + } + } + + ai_chance = { + factor = 50 + modifier = { + trait = greedy + factor = 5 + } + modifier = { + trait = ambitious + factor = 1.5 + } + modifier = { + event_target:assassin = { attribute_diff = { character = ROOT attribute = intrigue value = 2 } } + factor = 1.3 + } + modifier = { + event_target:assassin = { attribute_diff = { character = ROOT attribute = intrigue value = 4 } } + factor = 1.3 + } + modifier = { + event_target:assassin = { attribute_diff = { character = ROOT attribute = intrigue value = 6 } } + factor = 1.4 + } + modifier = { + event_target:assassin = { attribute_diff = { character = ROOT attribute = intrigue value = 8 } } + factor = 1.5 + } + } + } + + option = { + name = EVTOPTB_MNM_6210 + custom_tooltip = { text = EVTOPTB_MNM_6210_TOOLTIP } + clr_character_flag = assassins_refused_to_pay_debt + set_character_flag = assassins_target_debt + + hidden_effect = { event_target:assassin = { character_event = { id = MNM.6216 } } } + + event_target:fire_town_province = { + add_province_modifier = { + name = trade_district_fire + duration = 3650 + } + } + + ai_chance = { + factor = 50 + modifier = { + trait = charitable + factor = 4 + } + modifier = { + trait = content + factor = 1.5 + } + modifier = { + can_pay_assassins_debt = no + factor = 2 + } + } + } +} + +#They payed back, mission successful +character_event = { + id = MNM.6215 + picture = GFX_evt_relic_box + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { has_character_flag = threaten_personally } + text = EVTDESC_MNM_6215_A + } + desc = { + trigger = { has_character_flag = threaten_relation } + text = EVTDESC_MNM_6215_B + } + desc = { + trigger = { has_character_flag = threaten_wealth } + text = EVTDESC_MNM_6215_C + } + + immediate = { + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_assassins + } + } + save_event_target_as = grand_master + } + } + + is_triggered_only = yes + + option = { + name = EXCELLENT + + clr_quest = quest_the_assassins_collect_debt + sound_effect = assassins_collect_debt + add_society_currency_minor_effect = yes #reward + + hidden_effect = { + clr_character_flag = threaten_personally + clr_character_flag = threaten_relation + clr_character_flag = threaten_wealth + clr_character_flag = collecting_debt + set_character_flag = collected_debt_success + } + } +} + +#They refused to pay back, mission unsuccessful +character_event = { + id = MNM.6216 + picture = GFX_evt_uncomfortable + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { has_character_flag = threaten_personally } + text = EVTDESC_MNM_6216_A + } + desc = { + trigger = { has_character_flag = threaten_relation } + text = EVTDESC_MNM_6216_B + } + desc = { + trigger = { has_character_flag = threaten_wealth } + text = EVTDESC_MNM_6216_C + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_6215 + clr_quest = { id = quest_the_assassins_collect_debt failure = yes } + hidden_effect = { + clr_character_flag = threaten_personally + clr_character_flag = threaten_relation + clr_character_flag = threaten_wealth + clr_character_flag = collecting_debt + set_character_flag = collected_debt_failure + } + } +} + +#MISSION: Occupy infidel holding +character_event = { + id = MNM.6220 + hide_window = yes + + is_triggered_only = yes + + immediate = { + FROM = { society_quest_event = { id = MNM.6221 days = 7 random = 7 } } + } +} + +society_quest_event = { + id = MNM.6221 + desc = EVTDESC_MNM_6221 + quest_target = event_target:infidel_holding + + is_triggered_only = yes + + immediate = { + random_realm_province = { + limit = { + any_neighbor_province = { + owner = { + top_liege = { + NOT = { character = ROOT } + OR = { + NOT = { religion_group = muslim } + AND = { + NOT = { religion = shiite } + NOT = { ROOT = { any_realm_province = { any_neighbor_province = { owner = { top_liege = { NOT = { religion_group = muslim } } } } } } } + } + } + any_realm_province = { + any_province_holding = { + owner = { NOT = { religion = shiite } } + OR = { + holding_type = temple + holding_type = castle + } + } + } + } + } + } + } + random_neighbor_province = { + limit = { + owner = { + top_liege = { + NOT = { character = ROOT } + OR = { + NOT = { religion_group = muslim } + AND = { + NOT = { religion = shiite } + NOT = { ROOT = { any_realm_province = { any_neighbor_province = { owner = { top_liege = { NOT = { religion_group = muslim } } } } } } } + } + } + any_realm_province = { + owner = { NOT = { religion = shiite } } + any_province_holding = { + owner = { NOT = { religion = shiite } } + OR = { + holding_type = temple + holding_type = castle + } + } + } + } + } + } + + owner = { + top_liege = { + random_realm_province = { + limit = { + any_province_holding = { + owner = { NOT = { religion = shiite } } + OR = { + holding_type = temple + holding_type = castle + } + } + } + random_province_holding = { + limit = { + owner = { NOT = { religion = shiite } } + OR = { + holding_type = temple + holding_type = castle + } + } + save_event_target_as = infidel_holding #Lowest prio, random holding in neigbor's realm + } + } + random_demesne_province = { + limit = { + any_province_holding = { + owner = { NOT = { religion = shiite } } + OR = { + holding_type = temple + holding_type = castle + } + } + } + random_province_holding = { + limit = { + owner = { NOT = { religion = shiite } } + OR = { + holding_type = temple + holding_type = castle + } + } + save_event_target_as = infidel_holding #Hgihest prio, top liege neigbor's holding + } + } + } + } + } + } + event_target:infidel_holding = { location = { owner = { save_event_target_as = infidel_holding_owner } } } + event_target:infidel_holding = { location = { save_event_target_as = infidel_holding_province } } + } + + option = { + name = ACCEPT + + event_target:infidel_holding = { + set_quest_target = { + id = quest_the_assassins_occupy_holding + holder = ROOT + } + } + + event_target:infidel_holding_owner = { + set_character_flag = appear_on_option + clr_character_flag = appear_on_option + } + } + + option = { + name = DECLINE + custom_tooltip = { text = decline_quest_tooltip } + + add_character_modifier = { + name = quest_cooldown_timer + hidden = yes + days = 1000 + } + + ai_chance = { factor = 0 } + } +} + +#Holding occupied +character_event = { + id = MNM.6222 + desc = EVTDESC_MNM_6222 + picture = GFX_evt_magnificent_castle + border = GFX_event_normal_frame_intrigue + + trigger = { + has_quest = quest_the_assassins_occupy_holding + quest_target = { title = FROM } + } + + is_triggered_only = yes + + immediate = { + + FROM = { + save_event_target_as = infidel_holding + owner = { save_event_target_as = infidel_holding_owner } + } + } + + option = { + trigger = { + NOT = { has_alternate_start_parameter = { key = religion_names value = random } } + } + name = EVTOPTA_6028_A + clr_quest = quest_the_assassins_occupy_holding + sound_effect = assassins_occupy_infidel_holding + add_society_currency_medium_effect = yes + } + option = { + trigger = { + has_alternate_start_parameter = { key = religion_names value = random } + } + name = EVTOPTA_6028_B + clr_quest = quest_the_assassins_occupy_holding + sound_effect = assassins_occupy_infidel_holding + add_society_currency_medium_effect = yes + } +} + +###POWERS### + +#POWER: Drugs +character_event = { + id = MNM.6800 + desc = EVTDESC_MNM_6800 + picture = GFX_evt_dark_prayer + border = GFX_event_normal_frame_religion + + immediate = { + set_character_flag = assassins_taking_drugs #Is removed in 6802 + } + + is_triggered_only = yes + + #Small dose + option = { + name = EVTOPTA_MNM_6800 + custom_tooltip = { text = EVTOPTA_MNM_6800_TOOLTIP } + + set_character_flag = drugs_small_dose + + hidden_effect = { character_event = { id = MNM.6801 } } + } + + #Regular dose + option = { + name = EVTOPTB_MNM_6800 + custom_tooltip = { text = EVTOPTB_MNM_6800_TOOLTIP } + + hidden_effect = { character_event = { id = MNM.6801 } } + } + + #Big dose + option = { + name = EVTOPTC_MNM_6800 + custom_tooltip = { text = EVTOPTC_MNM_6800_TOOLTIP } + + set_character_flag = drugs_big_dose + + hidden_effect = { character_event = { id = MNM.6801 } } + } +} + +#Drug tombola! +character_event = { + id = MNM.6801 + hide_window = yes + + is_triggered_only = yes + + immediate = { + #How will the trip be, over all? + random_list = { + 20 = { #Great + set_character_flag = great_trip + + modifier = { + has_character_flag = drugs_big_dose + factor = 2 + } + modifier = { + has_character_flag = drugs_small_dose + factor = 0.5 + } + modifier = { + trait = hedonist + factor = 1.5 + } + } + 60 = { #Good + set_character_flag = good_trip + } + 20 = { #Bad + set_character_flag = bad_trip + + modifier = { + has_character_flag = drugs_big_dose + factor = 1.5 + } + modifier = { + has_character_flag = drugs_small_dose + factor = 0.5 + } + modifier = { + has_mental_disorder_trigger = yes + factor = 1.5 + } + modifier = { + has_character_modifier = hashish_addict + factor = 1.5 + } + modifier = { + trait = paranoid + factor = 1.5 + } + } + } + + #Outcome + character_event = { id = MNM.6802 days = 7 } #Overall outcome + + #Special events, all with 4 day delays, weight with trip flags + random_list = { + 10 = { #Nothing + modifier = { + has_character_flag = drugs_small_dose + factor = 2 + } + modifier = { + has_character_flag = drugs_big_dose + factor = 0.5 + } + } + 10 = { #Become posessed + modifier = { + NOT = { has_character_flag = bad_trip} + factor = 0 + } + modifier = { + has_character_flag = drugs_big_dose + factor = 1.5 + } + modifier = { + has_character_flag = drugs_small_dose + factor = 0.5 + } + modifier = { + has_character_modifier = hashish_addict + factor = 1.5 + } + + if = { + limit = { + NOT = { trait = possessed} + } + set_character_flag = become_possessed + character_event = { id = MNM.6810 days = 4} + } + } + 10 = { #Become paranoid + modifier = { + NOT = { has_character_flag = bad_trip} + factor = 0 + } + modifier = { + has_character_flag = drugs_big_dose + factor = 1.5 + } + modifier = { + has_character_flag = drugs_small_dose + factor = 0.5 + } + modifier = { + has_character_modifier = hashish_addict + factor = 1.5 + } + modifier = { + trait = trusting + factor = 0.5 + } + if = { + limit = { + NOT = { trait = paranoid} + } + set_character_flag = become_paranoid + character_event = { id = MNM.6810 days = 4} + } + } + 5 = { #Become gluttonous + modifier = { + has_character_flag = drugs_big_dose + factor = 1.5 + } + modifier = { + has_character_flag = drugs_small_dose + factor = 0.5 + } + modifier = { + has_character_modifier = hashish_addict + factor = 1.5 + } + modifier = { + trait = temperate + factor = 0.5 + } + if = { + limit = { + NOT = { trait = gluttonous } + } + set_character_flag = become_gluttonous + character_event = { id = MNM.6810 days = 4} + } + } + 5 = { #Become slothful + modifier = { + has_character_flag = drugs_big_dose + factor = 1.5 + } + modifier = { + has_character_flag = drugs_small_dose + factor = 0.5 + } + modifier = { + has_character_modifier = hashish_addict + factor = 1.5 + } + modifier = { + trait = diligent + factor = 0.5 + } + if = { + limit = { + NOT = { trait = slothful } + } + set_character_flag = become_slothful + character_event = { id = MNM.6810 days = 4} + } + } + 10 = { #Discover a plot + modifier = { + NOT = {has_character_flag = good_trip} + factor = 2 + } + modifier = { + trait = paranoid + factor = 2 + } + modifier = { + trait = possessed + factor = 1.5 + } + modifier = { + NOT = { + top_liege = { + any_realm_character = { + has_plot = yes + NOT = { + plot_is_known_by = ROOT + } + } + } + } + factor = 0 + } + character_event = { id = MNM.6811} + } + 10 = { #Gain a lover, perhaps your spouse? + modifier = { + has_character_flag = great_trip + factor = 2 + } + modifier = { + has_character_flag = bad_trip + factor = 0 + } + modifier = { + trait = lustful + factor = 1.5 + } + modifier = { + trait = eunuch + factor = 0 + } + modifier = { + has_lover = yes + factor = 0.5 + } + set_character_flag = drug_lover + character_event = { id = MNM.6812 days = 4} + } + 20 = { #Gain a friend + modifier = { + has_character_flag = great_trip + factor = 2 + } + modifier = { + has_character_flag = bad_trip + factor = 0 + } + modifier = { + trait = paranoid + factor = 0.5 + } + set_character_flag = drug_friend + character_event = { id = MNM.6812 days = 4} + } + 10 = { #Discover a cheating spouse + modifier = { + is_married = no + factor = 0 + } + modifier = { + NOR = { + any_spouse = { + any_lover = { + NOT = { + character = ROOT + } + } + } + AND = { + trait = paranoid + any_realm_character = { + same_sex = root + NOT = { character = ROOT } + } + } + } + factor = 0 + } + character_event = { id = MNM.6813 days = 4} + } + 10 = { #Make a fool of yourself + modifier = { + has_character_flag = drugs_big_dose + factor = 1.5 + } + modifier = { + has_character_flag = drugs_small_dose + factor = 0.5 + } + character_event = { id = MNM.6814 days = 4} + } + 10 = { #Die, only if you're already an addict + modifier = { + NOT = { has_character_flag = drugs_big_dose} + factor = 0.5 + } + modifier = { + NOT = { has_character_flag = bad_trip} + factor = 0 + } + modifier = { + NOT = { has_character_modifier = hashish_addict } + factor = 0 + } + modifier = { + has_character_modifier = withdrawal_symptoms + factor = 1.5 + } + modifier = { + has_character_modifier = drugs_timer + factor = 2 + } + modifier = { + trait = gluttonous + factor = 1.5 + } + modifier = { + trait = temperate + factor = 0.5 + } + modifier = { + health = 5 + factor = 0 + } + modifier = { + OR = { + trait = ill + trait = pneumonic + trait = has_tuberculosis + trait = cough + trait = chest_pain + } + factor = 2 + } + character_event = { id = MNM.6815 days = 4} + } + 10 = { # Cure stressed + modifier = { + factor = 0 + NOT = { trait = stressed } + } + modifier = { + factor = 0.5 + has_character_flag = drugs_small_dose + } + set_character_flag = drugs_curing_stressed + character_event = { id = MNM.6816 days = 4 } + } + 10 = { # Cure possessed + modifier = { + factor = 0 + NOT = { trait = possessed } + } + modifier = { + factor = 0.5 + has_character_flag = drugs_small_dose + } + set_character_flag = drugs_curing_possessed + character_event = { id = MNM.6816 days = 4 } + } + 10 = { # Cure depressed + modifier = { + factor = 0 + NOT = { trait = depressed } + } + modifier = { + factor = 0.5 + NOT = { has_character_flag = drugs_big_dose } + } + set_character_flag = drugs_curing_depressed + character_event = { id = MNM.6816 days = 4 } + } + 10 = { # Cure lunatic + modifier = { + factor = 0 + NOT = { trait = lunatic } + } + modifier = { + factor = 0 + NOT = { has_character_flag = drugs_big_dose } + } + set_character_flag = drugs_curing_lunatic + character_event = { id = MNM.6816 days = 4 } + } + 10 = { # Diplomatic insight + modifier = { + factor = 0 + NOT = { + OR = { + has_character_flag = great_trip + has_character_flag = good_trip + } + } + } + modifier = { + factor = 2 + has_character_flag = great_trip + } + modifier = { + factor = 2 + NOT = { + diplomacy = 8 + } + } + modifier = { + factor = 2 + NOT = { + diplomacy = 15 + } + } + modifier = { + factor = 0 + has_character_modifier = diplomatic_insight + } + set_character_flag = gains_diplomatic_insight_flag + character_event = { id = MNM.6817 days = 4 } + } + 10 = { # Martial insight + modifier = { + factor = 0 + NOT = { + OR = { + has_character_flag = great_trip + has_character_flag = good_trip + } + } + } + modifier = { + factor = 2 + has_character_flag = great_trip + } + modifier = { + factor = 2 + NOT = { + martial = 8 + } + } + modifier = { + factor = 2 + NOT = { + martial = 15 + } + } + modifier = { + factor = 0 + has_character_modifier = martial_insight + } + set_character_flag = gains_martial_insight_flag + character_event = { id = MNM.6817 days = 4 } + } + 10 = { # Intrigue insight + modifier = { + factor = 0 + NOT = { + OR = { + has_character_flag = great_trip + has_character_flag = good_trip + } + } + } + modifier = { + factor = 2 + has_character_flag = great_trip + } + modifier = { + factor = 2 + NOT = { + intrigue = 8 + } + } + modifier = { + factor = 2 + NOT = { + intrigue = 15 + } + } + modifier = { + factor = 0 + has_character_modifier = intrigue_insight + } + set_character_flag = gains_intrigue_insight_flag + character_event = { id = MNM.6817 days = 4 } + } + 10 = { # Learning insight + modifier = { + factor = 0 + NOT = { + OR = { + has_character_flag = great_trip + has_character_flag = good_trip + } + } + } + modifier = { + factor = 2 + has_character_flag = great_trip + } + modifier = { + factor = 2 + NOT = { + learning = 8 + } + } + modifier = { + factor = 2 + NOT = { + learning = 15 + } + } + modifier = { + factor = 0 + has_character_modifier = learning_insight + } + set_character_flag = gains_learning_insight_flag + character_event = { id = MNM.6817 days = 4 } + } + 10 = { # Stewardship insight + modifier = { + factor = 0 + NOT = { + OR = { + has_character_flag = great_trip + has_character_flag = good_trip + } + } + } + modifier = { + factor = 2 + has_character_flag = great_trip + } + modifier = { + factor = 2 + NOT = { + stewardship = 8 + } + } + modifier = { + factor = 2 + NOT = { + stewardship = 15 + } + } + modifier = { + factor = 0 + has_character_modifier = stewardship_insight + } + set_character_flag = gains_stewardship_insight_flag + character_event = { id = MNM.6817 days = 4 } + } + 10 = { #Cure your disease + modifier = { + factor = 0 + NOT = { has_dlc = "Reapers" } + } + modifier = { + factor = 0 + has_disease_trigger = no + } + modifier = { + factor = 3 + has_character_flag = great_trip + } + character_event = { id = MNM.6818 days = 4 } + } + } + random = { + chance = 5 + + character_event = { id = MNM.6803 days = 20 random = 20 } #Gives addiction + + modifier = { + has_character_modifier = hashish_addict + factor = 0 + } + modifier = { + has_character_modifier = drugs_timer + factor = 4 + } + modifier = { + has_character_flag = drugs_big_dose + factor = 1.5 + } + modifier = { + has_character_flag = drugs_small_dose + factor = 0.5 + } + modifier = { + trait = gluttonous + factor = 1.5 + } + modifier = { + trait = temperate + factor = 0.5 + } + modifier = { + has_mental_disorder_trigger = yes + factor = 2 + } + } + + #Add drug timer based on dosage + if = { + limit = { has_character_flag = drugs_small_dose } + add_character_modifier = { + name = drugs_timer + hidden = yes + days = 365 + } + } + if = { + limit = { + NOR = { + has_character_flag = drugs_small_dose + has_character_flag = drugs_big_dose + } + } + add_character_modifier = { + name = drugs_timer + hidden = yes + days = 600 + } + } + if = { + limit = { has_character_flag = drugs_big_dose } + add_character_modifier = { + name = drugs_timer + hidden = yes + days = 900 + } + } + + #Illness handling + random = { + chance = 5 + give_cancer_effect = yes + } + + #Removing flags + clr_character_flag = drugs_small_dose + clr_character_flag = drugs_big_dose + } +} + +#Outcome of trip +character_event = { + id = MNM.6802 + picture = GFX_evt_dark_prayer + border = GFX_event_normal_frame_religion + + desc = { + trigger = { has_character_flag = great_trip } + text = EVTDESC_MNM_6802_GREAT + picture = GFX_evt_religious_exultation + } + desc = { + trigger = { has_character_flag = good_trip } + text = EVTDESC_MNM_6802_GOOD + picture = GFX_evt_dark_prayer + } + desc = { + trigger = { has_character_flag = bad_trip } + text = EVTDESC_MNM_6802_BAD + picture = GFX_evt_impalement + } + + is_triggered_only = yes + + option = { + name = { + trigger = { has_character_flag = great_trip } + text = EVTOPTA_MNM_6802_GREAT + } + name = { + trigger = { has_character_flag = good_trip } + text = EVTOPTA_MNM_6802_GOOD + } + name = { + trigger = { has_character_flag = bad_trip } + text = EVTOPTA_MNM_6802_BAD + } + + if = { + limit = { has_character_flag = great_trip } + if = { + limit = { has_character_modifier = astounding_visions } + remove_character_modifier = astounding_visions + } + if = { + limit = { has_character_modifier = uplifting_visions } + remove_character_modifier = uplifting_visions + } + if = { + limit = { has_character_modifier = frightening_visions } + remove_character_modifier = frightening_visions + } + add_character_modifier = { + name = astounding_visions + days = 365 + } + clr_character_flag = great_trip + } + if = { + limit = { has_character_flag = good_trip } + if = { + limit = { has_character_modifier = astounding_visions } + remove_character_modifier = astounding_visions + } + if = { + limit = { has_character_modifier = uplifting_visions } + remove_character_modifier = uplifting_visions + } + if = { + limit = { has_character_modifier = frightening_visions } + remove_character_modifier = frightening_visions + } + add_character_modifier = { + name = uplifting_visions + days = 365 + } + clr_character_flag = good_trip + } + + if = { + limit = { has_character_flag = bad_trip } + if = { + limit = { has_character_modifier = astounding_visions } + remove_character_modifier = astounding_visions + } + if = { + limit = { has_character_modifier = uplifting_visions } + remove_character_modifier = uplifting_visions + } + if = { + limit = { has_character_modifier = frightening_visions } + remove_character_modifier = frightening_visions + } + add_character_modifier = { + name = frightening_visions + days = 365 + } + clr_character_flag = bad_trip + } + clr_character_flag = assassins_taking_drugs + } +} + +#You're an addict +character_event = { + id = MNM.6803 + desc = EVTDESC_MNM_6803 + picture = GFX_evt_drunk + border = GFX_event_normal_frame_religion + + trigger = { NOT = { has_character_modifier = hashish_addict } } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_6803 + custom_tooltip = { text = EVTOPTA_6803_TOOLTIP } + + add_character_modifier = { + name = hashish_addict + duration = -1 + } + + hidden_effect = { character_event = { id = MNM.6804 days = 100 } } + } +} + +#Hidden addiction handling +character_event = { + id = MNM.6804 + hide_window = yes + + trigger = { has_character_modifier = hashish_addict } + + is_triggered_only = yes + + immediate = { + #Withdrawal syptoms + random = { + chance = 20 + character_event = { id = MNM.6805 } + } + #Recover + if = { + limit = { has_character_modifier = withdrawal_symptoms } + random = { + chance = 40 + character_event = { id = MNM.6806 } + } + } + + character_event = { id = MNM.6804 days = 100 } + } +} + +#You're having withdrawal symptoms +character_event = { + id = MNM.6805 + desc = EVTDESC_MNM_6805 + picture = GFX_evt_illness + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + trigger = { NOT = { has_character_modifier = withdrawal_symptoms } } + + option = { + name = EVTOPTA_MNM_6805 + + add_character_modifier = { + name = withdrawal_symptoms + duration = -1 + } + } +} + +#Recovered from addiction +character_event = { + id = MNM.6806 + desc = EVTDESC_MNM_6806 + picture = GFX_evt_recovery + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + trigger = { + has_character_modifier = hashish_addict + has_character_modifier = withdrawal_symptoms + } + + option = { + name = EVTOPTA_MNM_6806 + + remove_character_modifier = hashish_addict + remove_character_modifier = withdrawal_symptoms + } +} + +#Special events +#Get Trait +#Three descs and options +character_event = { + id = MNM.6810 + picture = GFX_evt_drunk + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + desc = { + trigger = { has_character_flag = become_gluttonous } + text = EVTDESCA_MNM_6810 + } + desc = { + trigger = { has_character_flag = become_paranoid } + text = EVTDESCB_MNM_6810 + } + desc = { + trigger = { has_character_flag = become_slothful } + text = EVTDESCC_MNM_6810 + } + desc = { + trigger = { has_character_flag = become_possessed } + text = EVTDESCD_MNM_6810 + } + + option = { + name = EVTOPTA_MNM_6810 + if = { + limit = { + NOT = { trait = temperate } + } + add_trait = gluttonous + } + if = { + limit = { trait = temperate } + remove_trait = temperate + } + clr_character_flag = become_gluttonous + + trigger = { has_character_flag = become_gluttonous } + } + + option = { + name = EVTOPTB_MNM_6810 + if = { + limit = { + NOT = { trait = trusting } + } + add_trait = paranoid + } + if = { + limit = { trait = trusting } + remove_trait = trusting + } + clr_character_flag = become_paranoid + + trigger = { has_character_flag = become_paranoid } + } + + option = { + name = EVTOPTC_MNM_6810 + if = { + limit = { + NOT = { trait = diligent } + } + add_trait = slothful + } + if = { + limit = { trait = diligent } + remove_trait = diligent + } + clr_character_flag = become_slothful + + trigger = { has_character_flag = become_slothful } + } + + option = { + name = EVTOPTD_MNM_6810 + add_trait = possessed + clr_character_flag = become_possessed + trigger = { has_character_flag = become_possessed } + } +} + +#Discover Plot +character_event = { + id = MNM.6811 + is_triggered_only = yes + hide_window = yes + immediate = { + random_list = { + 40 = { + modifier = { + NOT= { + top_liege = { + any_realm_character = { + plot_target_char = { character = ROOT } + NOT = { plot_is_known_by = ROOT } + } + } + } + factor = 0 + } + modifier = { + NOT= { + top_liege = { + any_realm_lord = { + plot_target_char = { character = ROOT } + NOT = { plot_is_known_by = ROOT } + } + } + } + factor = 0.5 + } + save_event_target_as = drug_plotter_target + top_liege = { + random_realm_character = { + limit = { + plot_target_char = { character = ROOT } + NOT = { plot_is_known_by = ROOT } + } + save_event_target_as = drug_plotter_reveal + character_event = { id = MNM.68111 } + } + } + top_liege = { + random_realm_lord = { + limit = { + plot_target_char = { character = ROOT } + NOT = { plot_is_known_by = ROOT } + } + save_event_target_as = drug_plotter_reveal + character_event = { id = MNM.68111 } + } + } + } + 20 = { + modifier = { + NOT = { + any_realm_character = { + NOT = { plot_is_known_by = ROOT } + plot_target_char = { + dynasty = ROOT + } + } + } + factor = 0 + } + modifier = { + any_realm_lord = { + plot_target_char = { + dynasty = ROOT + } + NOT = { plot_is_known_by = ROOT } + } + factor = 1.5 + } + random_realm_character = { + limit = { + has_plot = yes + NOT = { plot_is_known_by = ROOT } + } + save_event_target_as = drug_plotter_reveal + plot_target_char = { + save_event_target_as = drug_plotter_target + } + character_event = { id = MNM.68111 } + } + random_realm_lord = { + limit = { + has_plot = yes + NOT = { plot_is_known_by = ROOT } + plot_target_char = { + dynasty = ROOT + } + } + save_event_target_as = drug_plotter_reveal + plot_target_char = { + save_event_target_as = drug_plotter_target + } + character_event = { id = MNM.68111 } + } + } + 10 = { + modifier = { + NOT = { + any_realm_character = { + has_plot = yes + NOT = { plot_is_known_by = ROOT } + } + } + factor = 0 + } + random_realm_character = { + limit = { + has_plot = yes + NOT = { plot_is_known_by = ROOT } + } + save_event_target_as = drug_plotter_reveal + plot_target_char = { + save_event_target_as = drug_plotter_target + } + character_event = { id = MNM.68111 } + + } + } + 1 = { + top_liege = { + random_realm_character = { + limit = { + has_plot = yes + NOT = { + plot_is_known_by = ROOT + } + } + save_event_target_as = drug_plotter_reveal + plot_target_char = { + save_event_target_as = drug_plotter_target + } + character_event = { id = MNM.68111 } + } + } + } + } + } +} +#Ping +character_event = { + id = MNM.68111 + hide_window = yes + is_triggered_only = yes + immediate = { + FROM = { + character_event = { + id = MNM.68112 days = 4 + } + } + } +} +#Four Descs, one or two options +character_event = { + id = MNM.68112 + picture = GFX_evt_shadow + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + + desc = { + text = EVTDESCA_MNM_68112 + trigger = { + event_target:drug_plotter_target = { character = ROOT } + event_target:drug_plotter_reveal = { + OR = { + has_plot = plot_kill_character + has_plot = plot_kill_spouse + } + } + } + } + + desc = { + text = EVTDESCB_MNM_68112 + trigger = { + event_target:drug_plotter_target = { character = ROOT } + event_target:drug_plotter_reveal = { + NOT = { + has_plot = plot_kill_character + has_plot = plot_kill_spouse + } + } + } + } + + desc = { + text = EVTDESCC_MNM_68112 + trigger = { + event_target:drug_plotter_target = { NOT ={ character = ROOT } } + event_target:drug_plotter_reveal = { + OR = { + has_plot = plot_kill_character + has_plot = plot_kill_spouse + } + } + } + } + + desc = { + text = EVTDESCD_MNM_68112 + trigger = { + event_target:drug_plotter_target = { NOT ={ character = ROOT } } + event_target:drug_plotter_reveal = { + NOT = { + has_plot = plot_kill_character + has_plot = plot_kill_spouse + } + } + } + } + immediate = { + event_target:drug_plotter_reveal = { + reveal_plot = ROOT + } + } + option = { + trigger = { + event_target:drug_plotter_target = { character = ROOT } + event_target:drug_plotter_reveal = { + OR = { + has_plot = plot_kill_character + has_plot = plot_kill_spouse + } + } + } + name = EVTOPTA_MNM_68112 + } + option = { + trigger = { + event_target:drug_plotter_target = { character = ROOT } + event_target:drug_plotter_reveal = { + NOT = { + has_plot = plot_kill_character + has_plot = plot_kill_spouse + } + } + } + name = EVTOPTB_MNM_68112 + } + option = { + trigger = { + event_target:drug_plotter_target = { NOT ={ character = ROOT } } + event_target:drug_plotter_reveal = { + OR = { + has_plot = plot_kill_character + has_plot = plot_kill_spouse + } + } + } + name = EVTOPTC_MNM_68112 + } + option = { + trigger = { + event_target:drug_plotter_target = { NOT ={ character = ROOT } } + event_target:drug_plotter_reveal = { + NOT = { + has_plot = plot_kill_character + has_plot = plot_kill_spouse + } + } + } + name = EVTOPTD_MNM_68112 + } +} + +#Gain Relation +#One desc and option +character_event = { + id = MNM.6812 + picture = GFX_evt_feast + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + immediate = { + if = { + limit = { has_character_flag = drug_friend } + create_character = { + random_traits = yes + } + new_character = { + remove_trait = trusting + remove_trait = temperate + remove_trait = celibate + remove_trait = diligent + add_trait = paranoid + add_trait = gluttonous + add_trait = hedonist + add_trait = slothful + save_event_target_as = slacker_buddy + } + } + if = { + limit = { has_character_flag = drug_lover } + + random_list = { + 10 = { + modifier = { + NOT = { + any_spouse = { + NOT = { is_lover = ROOT } + opinion = { + who = ROOT + value = 0 + } + } + } + factor = 0 + } + random_spouse = { + limit = { + NOT = { is_lover = ROOT } + opinion = { + who = ROOT + value = 0 + } + } + save_event_target_as = drug_new_lover + } + } + 5 = { + modifier = { + NOT = { + any_courtier = { + OR = { + AND = { + same_sex = ROOT + trait = homosexual + ROOT = { + trait = homosexual + } + } + AND = { + is_opposite_sex = ROOT + NOT = { + trait = homosexual + ROOT = { trait = homosexual } + } + } + } + opinion = { + who = ROOT + value = 0 + } + } + } + factor = 0 + } + random_courtier = { + limit = { + OR = { + AND = { + same_sex = ROOT + trait = homosexual + ROOT = { + trait = homosexual + } + } + AND = { + is_opposite_sex = ROOT + NOT = { + trait = homosexual + ROOT = { trait = homosexual } + } + } + } + opinion = { + who = ROOT + value = 0 + } + } + save_event_target_as = drug_new_lover + } + } + 5 = { + if = { + limit = { + OR = { + is_female = yes + AND = { + is_female = no + trait = homosexual + } + } + } + create_character = { + female = no + } + new_character = { + save_event_target_as = drug_new_lover + } + } + if = { + limit = { + OR = { + is_female = no + AND = { + is_female = yes + trait = homosexual + } + } + } + create_character = { + female = yes + } + new_character = { + save_event_target_as = drug_new_lover + } + } + } + } + } + } + + desc = { + trigger = { has_character_flag = drug_friend } + text = EVTDESCA_MNM_6812 + picture = GFX_evt_feast + } + option = { + name = EVTOPTA_MNM_6812 + trigger = { has_character_flag = drug_friend } + add_friend = event_target:slacker_buddy + clr_character_flag = drug_friend + } + + desc = { + trigger = { has_character_flag = drug_lover } + text = EVTDESCB_MNM_6812 + picture = GFX_evt_dark_love + } + option = { + name = EVTOPTB_MNM_6812 + trigger = { has_character_flag = drug_lover } + add_lover = event_target:drug_new_lover + clr_character_flag = drug_lover + } +} + +#Cheating Spouse +#One desc and option, separate handling for "real" and "paranoid" affair +character_event = { + id = MNM.6813 + picture = GFX_evt_dark_love + border = GFX_event_normal_frame_religion + is_triggered_only = yes + desc = EVTDESC_MNM_6813 + + immediate = { + random_spouse = { + limit = { + has_lover = yes + NOT = { + is_lover = ROOT + } + } + save_event_target_as = drug_cheater_spouse + random_lover = { + limit = { NOT = { character = ROOT } } + save_event_target_as = drug_cheater_lover + } + } + random_spouse = { + limit = { + OR = { + has_lover = no + is_lover = ROOT + } + } + random_realm_character = { + limit = { + same_sex = root + NOT = { character = ROOT } + } + save_event_target_as = drug_cheater_lover + } + save_event_target_as = drug_cheater_spouse + + } + } + + #reveal + option = { + name = EVTOPTA_MNM_6813 + if = { + limit = { + event_target:drug_cheater_lover = { + is_opposite_sex = root + } + } + event_target:drug_cheater_lover = { + add_character_modifier = { + name = known_sodomite + days = -1 + } + } + event_target:drug_cheater_spouse = { + add_character_modifier = { + name = known_sodomite + days = -1 + } + } + } + if = { + limit = { + event_target:drug_cheater_lover = { + same_sex = root + } + event_target:drug_cheater_spouse = { + dynasty = event_target:drug_cheater_lover + } + } + if = { + limit = { is_female = no } + event_target:drug_cheater_lover = { + add_character_modifier = { + name = incestuous_adulterer + days = -1 + } + } + event_target:drug_cheater_spouse = { + add_character_modifier = { + name = incestuous_adulteress + days = -1 + } + } + } + if = { + limit = { is_female = yes } + event_target:drug_cheater_lover = { + add_character_modifier = { + name = incestuous_adulteress + days = -1 + } + } + event_target:drug_cheater_spouse = { + add_character_modifier = { + name = incestuous_adulterer + days = -1 + } + } + } + } + if = { + limit = { + event_target:drug_cheater_lover = { + same_sex = root + } + NOT = { + event_target:drug_cheater_spouse = { + dynasty = event_target:drug_cheater_lover + } + } + } + if = { + limit = { is_female = no } + event_target:drug_cheater_lover = { + add_character_modifier = { + name = adulterer + days = -1 + } + } + event_target:drug_cheater_spouse = { + add_character_modifier = { + name = adulteress + days = -1 + } + } + } + if = { + limit = { is_female = yes } + event_target:drug_cheater_lover = { + add_character_modifier = { + name = adulteress + days = -1 + } + } + event_target:drug_cheater_spouse = { + add_character_modifier = { + name = adulterer + days = -1 + } + } + } + } + } + #keep to self + option = { + name = EVTOPTB_MNM_6813 + #opinion modifier? + } +} + +#Make a fool of yourself +#one desc and option +#drug fool +character_event = { + id = MNM.6814 + picture = GFX_evt_drunk + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + desc = EVTDESC_MNM_6814 + option = { + name = EVTOPTA_MNM_6814 + add_character_modifier = { name = foolish_behavior years = 3 } + custom_tooltip = { text = EVTOPTA_MNM_6814_TOOLTIP } + } +} + +#Die +#One Desc and option +character_event = { + id = MNM.6815 + picture = GFX_evt_impalement + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + desc = EVTDESC_MNM_6815 + option = { + name = EVTOPTA_MNM_6815 + death = { + death_reason = death_hashish_overdose + } + } +} + + +# Become cured of a bad trait +character_event = { + id = MNM.6816 + picture = GFX_evt_dark_prayer + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + desc = EVTDESC_MNM_6816 + + option = { + name = EVTOPTA_MNM_6816 + trigger = { + has_character_flag = drugs_curing_stressed + } + remove_trait = stressed + } + option = { + name = EVTOPTB_MNM_6816 + trigger = { + has_character_flag = drugs_curing_possessed + } + remove_trait = possessed + } + option = { + name = EVTOPTC_MNM_6816 + trigger = { + has_character_flag = drugs_curing_depressed + } + remove_trait = depressed + } + option = { + name = EVTOPTD_MNM_6816 + trigger = { + has_character_flag = drugs_curing_lunatic + } + remove_trait = lunatic + } + + after = { + hidden_effect = { + clr_character_flag = drugs_curing_stressed + clr_character_flag = drugs_curing_possessed + clr_character_flag = drugs_curing_depressed + clr_character_flag = drugs_curing_lunatic + } + } +} + +#Gain insight +character_event = { + id = MNM.6817 + picture = GFX_evt_dark_prayer + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + desc = EVTDESC_MNM_6817 + + option = { + name = EVTOPTA_MNM_6817 + trigger = { + has_character_flag = gains_diplomatic_insight_flag + } + if = { + limit = { has_character_modifier = martial_insight } + remove_character_modifier = martial_insight + } + if = { + limit = { has_character_modifier = learning_insight } + remove_character_modifier = learning_insight + } + if = { + limit = { has_character_modifier = stewardship_insight } + remove_character_modifier = stewardship_insight + } + if = { + limit = { has_character_modifier = intrigue_insight } + remove_character_modifier = intrigue_insight + } + add_character_modifier = { + name = diplomatic_insight + days = 1825 + } + } + option = { + name = EVTOPTB_MNM_6817 + trigger = { + has_character_flag = gains_martial_insight_flag + } + if = { + limit = { has_character_modifier = diplomatic_insight } + remove_character_modifier = diplomatic_insight + } + if = { + limit = { has_character_modifier = learning_insight } + remove_character_modifier = learning_insight + } + if = { + limit = { has_character_modifier = stewardship_insight } + remove_character_modifier = stewardship_insight + } + if = { + limit = { has_character_modifier = intrigue_insight } + remove_character_modifier = intrigue_insight + } + add_character_modifier = { + name = martial_insight + days = 1825 + } + } + option = { + name = EVTOPTA_MNM_6817 + trigger = { + has_character_flag = gains_intrigue_insight_flag + } + if = { + limit = { has_character_modifier = martial_insight } + remove_character_modifier = martial_insight + } + if = { + limit = { has_character_modifier = learning_insight } + remove_character_modifier = learning_insight + } + if = { + limit = { has_character_modifier = stewardship_insight } + remove_character_modifier = stewardship_insight + } + if = { + limit = { has_character_modifier = diplomatic_insight } + remove_character_modifier = diplomatic_insight + } + add_character_modifier = { + name = intrigue_insight + days = 1825 + } + } + option = { + name = EVTOPTD_MNM_6817 + trigger = { + has_character_flag = gains_learning_insight_flag + } + if = { + limit = { has_character_modifier = martial_insight } + remove_character_modifier = martial_insight + } + if = { + limit = { has_character_modifier = diplomatic_insight } + remove_character_modifier = diplomatic_insight + } + if = { + limit = { has_character_modifier = stewardship_insight } + remove_character_modifier = stewardship_insight + } + if = { + limit = { has_character_modifier = intrigue_insight } + remove_character_modifier = intrigue_insight + } + add_character_modifier = { + name = learning_insight + days = 1825 + } + } + option = { + name = EVTOPTE_MNM_6817 + trigger = { + has_character_flag = gains_stewardship_insight_flag + } + if = { + limit = { has_character_modifier = martial_insight } + remove_character_modifier = martial_insight + } + if = { + limit = { has_character_modifier = learning_insight } + remove_character_modifier = learning_insight + } + if = { + limit = { has_character_modifier = diplomatic_insight } + remove_character_modifier = diplomatic_insight + } + if = { + limit = { has_character_modifier = intrigue_insight } + remove_character_modifier = intrigue_insight + } + add_character_modifier = { + name = stewardship_insight + days = 1825 + } + } + + after = { + clr_character_flag = gains_diplomatic_insight_flag + clr_character_flag = gains_martial_insight_flag + clr_character_flag = gains_intrigue_insight_flag + clr_character_flag = gains_learning_insight_flag + clr_character_flag = gains_stewardship_insight_flag + } +} + +#Cure your illness +character_event = { + id = MNM.6818 + picture = GFX_evt_dark_prayer + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + desc = EVTDESC_MNM_6818 + + option = { + name = EVTOPTA_MNM_6818 + remove_disease_trait_effect = yes + } +} + + +#POWER: Intimidate for favor +character_event = { + id = MNM.6840 + desc = EVTDESC_MNM_6840 + picture = GFX_evt_uncomfortable + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_6840 + tooltip = { FROMFROM = { add_favor = ROOT } } + opinion = { + modifier = opinion_threatened_me + who = FROMFROM + years = 5 + } + hidden_effect = { FROMFROM = { character_event = { id = MNM.6841 } } } + } +} + +character_event = { + id = MNM.6841 + desc = EVTDESC_MNM_6841 + picture = GFX_evt_uncomfortable + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_6841 + tooltip = { add_favor = FROM } + tooltip = { + reverse_opinion = { + modifier = opinion_threatened_me + who = FROMFROM + years = 5 + } + } + } +} + +#Fail +character_event = { + id = MNM.6980 + desc = EVTDESC_MNM_6980 + picture = GFX_evt_uncomfortable + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = CURSES + reverse_opinion = { + modifier = opinion_threatened_me + who = FROM + years = 5 + } + } +} + +#POWER: mark of death +#Confirmation of mark +character_event = { + id = MNM.6842 + desc = EVTDESC_MNM_6842 + picture = GFX_evt_assassination + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = EXCELLENT + } +} + +#Confirmation of kill +letter_event = { + id = MNM.6843 + desc = EVTDESC_MNM_6843 + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EXCELLENT + } +} + +#Clearing the flag from GM +character_event = { + id = MNM.6844 + hide_window = yes + is_triggered_only = yes + + trigger = { has_character_flag = assassins_target_marked_for_death } + + immediate = { + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_assassins + } + has_character_flag = assassins_marked_someone_for_death + } + clr_character_flag = assassins_marked_someone_for_death + } + } +} + + +#MISSION: Train a protege +character_event = { + id = MNM.6248 + hide_window = yes + + is_triggered_only = yes + + immediate = { FROM = { society_quest_event = { id = MNM.6249 days = 7 random = 7 } } } +} + +society_quest_event = { + id = MNM.6249 + desc = EVTDESC_MNM_6249 + title = quest_the_assassins_protege + + is_triggered_only = yes + + option = { + name = ACCEPT + + set_quest = quest_the_assassins_protege + + hidden_effect = { + character_event = { id = MNM.6250 days = 14 random = 60 } + } + } + + option = { + name = DECLINE + custom_tooltip = { text = decline_quest_tooltip } + add_character_modifier = { + name = quest_cooldown_timer + hidden = yes + days = 1000 + } + ai_chance = { factor = 0 } + } +} + +#Choose a child to train / A child is caught trying to pickpocket you +character_event = { + id = MNM.6250 + picture = GFX_evt_secret_ceremony + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + hide_new = yes + hide_from = yes + + portrait = event_target:assassin_protege + + trigger = { + NOT = { has_character_flag = training_protege } + } + + immediate = { + hidden_effect = { + set_character_flag = training_protege + if = { + limit = { has_character_flag = is_using_train_protege_decision } + event_target:assassin_protege = { save_event_target_as = assassin_protege_1 } #for text purposes + } + else = { #Means you got this as a pulse-event + random_child = { + limit = { + is_child_of = ROOT + age = 12 + is_ruler = no + is_abroad = no + NOT = { any_spouse = { is_landed = yes } } + NOT = { age = 21 } + NOT = { has_character_flag = assassin_protege_1_flag } + OR = { + is_female = no + has_game_rule = { + name = gender + value = all + } + } + } + set_character_flag = assassin_protege_1_flag + save_event_target_as = assassin_protege_1 + } + random_child = { + limit = { + is_child_of = ROOT + age = 12 + is_ruler = no + is_abroad = no + NOT = { any_spouse = { is_landed = yes } } + NOT = { age = 21 } + NOT = { has_character_flag = assassin_protege_1_flag } + NOT = { has_character_flag = assassin_protege_2_flag } + OR = { + is_female = no + has_game_rule = { + name = gender + value = all + } + } + } + set_character_flag = assassin_protege_2_flag + save_event_target_as = assassin_protege_2 + } + random_child = { + limit = { + is_child_of = ROOT + age = 12 + is_ruler = no + is_abroad = no + NOT = { any_spouse = { is_landed = yes } } + NOT = { age = 21 } + NOT = { has_character_flag = assassin_protege_1_flag } + NOT = { has_character_flag = assassin_protege_2_flag } + NOT = { has_character_flag = assassin_protege_3_flag } + OR = { + is_female = no + has_game_rule = { + name = gender + value = all + } + } + } + set_character_flag = assassin_protege_3_flag + save_event_target_as = assassin_protege_3 + } + + if = { + limit = { + NOR = { + event_target:assassin_protege_1 = { always = yes } + event_target:assassin_protege_2 = { always = yes } + event_target:assassin_protege_3 = { always = yes } + } + } + random_list = { + 10 = { + modifier = { + factor = 0 + NOT = { + has_game_rule = { + name = gender + value = all + } + } + } + + create_character = { + age = 12 + female = yes + random_traits = yes + attributes = { + intrigue = 4 + } + religion = ROOT + dynasty = none + race = ROOT + culture = ROOT + } + new_character = { + save_event_target_as = assassin_protege + } + } + 10 = { + create_character = { + age = 12 + female = no + random_traits = yes + attributes = { + intrigue = 4 + } + religion = ROOT + dynasty = none + race = ROOT + culture = ROOT + } + new_character = { + save_event_target_as = assassin_protege + } + } + } + } + } + } + } + + desc = { + text = EVTDESC_MNM_6250_A + trigger = { + OR = { + event_target:assassin_protege_1 = { always = yes } + event_target:assassin_protege_2 = { always = yes } + event_target:assassin_protege_3 = { always = yes } + } + } + } + desc = { + text = EVTDESC_MNM_6250_B + trigger = { + NOR = { + event_target:assassin_protege_1 = { always = yes } + event_target:assassin_protege_2 = { always = yes } + event_target:assassin_protege_3 = { always = yes } + } + } + } + + option = { #Begin training (ONLY for those who used the targeted decision to start this) + name = EVTOPTA_MNM_6250 + custom_tooltip = { text = EVTOPTA_MNM_6250_TT } + + + if = { + limit = { + event_target:assassin_protege = { is_child_of = ROOT } + } + event_target:assassin_protege = { + show_scope_change = no + opinion = { + who = ROOT + modifier = opinion_parental_praise + years = 5 + } + } + } + event_target:assassin_protege = { + hidden_effect = { character_event = { id = MNM.6251 } } # training ping event + } + show_portrait = event_target:assassin_protege + + clr_character_flag = is_using_train_protege_decision + + trigger = { + has_character_flag = is_using_train_protege_decision + } + } + + option = { #Choose random child 1 + name = EVTOPTA_MNM_6250 + custom_tooltip = { text = EVTOPTA_MNM_6250_TT } + + event_target:assassin_protege_1 = { + opinion = { + who = ROOT + modifier = opinion_parental_praise + years = 5 + } + save_event_target_as = assassin_protege + hidden_effect = { character_event = { id = MNM.6251 } } # training ping event + } + hidden_effect = { + event_target:assassin_protege_2 = { + clr_character_flag = assassin_protege_2_flag + } + event_target:assassin_protege_3 = { + clr_character_flag = assassin_protege_3_flag + } + } + trigger = { + any_child = { + is_child_of = ROOT + has_character_flag = assassin_protege_1_flag + } + } + } + option = { #Choose random child 2 + name = EVTOPTB_MNM_6250 + custom_tooltip = { text = EVTOPTB_MNM_6250_TT } + + event_target:assassin_protege_2 = { + opinion = { + who = ROOT + modifier = opinion_parental_praise + years = 5 + } + save_event_target_as = assassin_protege + hidden_effect = { character_event = { id = MNM.6251 } } # training ping event + } + hidden_effect = { + event_target:assassin_protege_1 = { + clr_character_flag = assassin_protege_1_flag + } + event_target:assassin_protege_3 = { + clr_character_flag = assassin_protege_3_flag + } + } + trigger = { + any_child = { + is_child_of = ROOT + has_character_flag = assassin_protege_2_flag + } + } + } + option = { #Choose random child 3 + name = EVTOPTC_MNM_6250 + custom_tooltip = { text = EVTOPTC_MNM_6250_TT } + + event_target:assassin_protege_3 = { + opinion = { + who = ROOT + modifier = opinion_parental_praise + years = 5 + } + save_event_target_as = assassin_protege + hidden_effect = { character_event = { id = MNM.6251 } } # training ping event + } + hidden_effect = { + event_target:assassin_protege_1 = { + clr_character_flag = assassin_protege_1_flag + } + event_target:assassin_protege_2 = { + clr_character_flag = assassin_protege_2_flag + } + } + trigger = { + any_child = { + is_child_of = ROOT + has_character_flag = assassin_protege_3_flag + } + } + } + option = { # Take the child under your wing + name = EVTOPTD_MNM_6250 + custom_tooltip = { text = EVTOPTD_MNM_6250_TT } + set_character_flag = apprentice_is_not_bloodrelation + + event_target:assassin_protege = { + opinion = { + who = ROOT + modifier = opinion_was_shown_mercy + years = 5 + } + hidden_effect = { character_event = { id = MNM.6251 } } # training ping event + } + trigger = { + NOR = { + event_target:assassin_protege_1 = { always = yes } + event_target:assassin_protege_2 = { always = yes } + event_target:assassin_protege_3 = { always = yes } + } + } + } + option = { #Imprison the urchin! + name = EVTOPTE_MNM_6250 + custom_tooltip = { text = EVTOPTE_MNM_6250_TT } + + clr_quest = { id = quest_the_assassins_protege failure = yes } + + hidden_effect = { + event_target:assassin_protege = { + imprison = ROOT + } + } + trigger = { + NOR = { + event_target:assassin_protege_1 = { always = yes } + event_target:assassin_protege_2 = { always = yes } + event_target:assassin_protege_3 = { always = yes } + } + } + } + option = { # You are busy right now + name = EVTOPTF_MNM_6250 + custom_tooltip = { text = EVTOPTF_MNM_6250_TT } + + clr_quest = { id = quest_the_assassins_protege failure = yes } + + hidden_effect = { + any_child = { + clr_character_flag = assassin_protege_1_flag + clr_character_flag = assassin_protege_2_flag + clr_character_flag = assassin_protege_3_flag + } + } + trigger = { + any_child = { + is_child_of = ROOT + has_character_flag = assassin_protege_1_flag + } + } + } +} + +character_event = { # ping event + id = MNM.6251 + picture = GFX_evt_secret_ceremony + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + hide_window = yes + + option = { + clr_character_flag = assassin_protege_1_flag + clr_character_flag = assassin_protege_2_flag + clr_character_flag = assassin_protege_3_flag + set_quest_target = { + id = quest_the_assassins_protege + society = the_assassins + holder = FROM + } + hidden_effect = { FROM = { character_event = { id = MNM.6252 days = 60 random = 20 } } } # specialization event + } +} + +character_event = { # choose specialization for kid + id = MNM.6252 + desc = EVTDESC_MNM_6252 + picture = GFX_evt_shady_meeting + border = GFX_event_normal_frame_intrigue + + portrait = event_target:assassin_protege + + trigger = { has_character_flag = training_protege } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_6252 + custom_tooltip = { text = EVTOPTA_MNM_6252_TT } + set_character_flag = chose_intrigue_focus + + hidden_effect = { character_event = { id = MNM.6253 days = 90 random = 60 } } # intrigue focus + } + option = { + name = EVTOPTB_MNM_6252 + custom_tooltip = { text = EVTOPTB_MNM_6252_TT } + set_character_flag = chose_martial_focus + + hidden_effect = { character_event = { id = MNM.6253 days = 90 random = 60 } } # martial focus + } + option = { + name = EVTOPTC_MNM_6252 + custom_tooltip = { text = EVTOPTC_MNM_6252_TT } + set_character_flag = chose_even_focus + + hidden_effect = { character_event = { id = MNM.6253 days = 90 random = 60 } } # even focus + } +} + +character_event = { # they are hard at work and time has come for a test + id = MNM.6253 + picture = GFX_evt_shady_meeting + border = GFX_event_normal_frame_intrigue + + portrait = event_target:assassin_protege + + trigger = { + has_character_flag = training_protege + } + + is_triggered_only = yes + + desc = { + trigger = { has_character_flag = chose_intrigue_focus } + text = EVTDESC_MNM_6253_A + } + desc = { + trigger = { has_character_flag = chose_martial_focus } + text = EVTDESC_MNM_6253_B + } + desc = { + trigger = { has_character_flag = chose_even_focus } + text = EVTDESC_MNM_6253_C + } + + option = { + name = EVTOPTA_MNM_6253 + custom_tooltip = { text = EVTOPTA_MNM_6253_TT } + + if = { + limit = { has_character_flag = chose_intrigue_focus } + event_target:assassin_protege = { + add_trait_deceitful_effect = yes + remove_trait_honest_effect = yes + } + } + if = { + limit = { has_character_flag = chose_martial_focus } + event_target:assassin_protege = { + add_trait_brave_effect = yes + remove_trait_craven_effect = yes + } + } + if = { + limit = { has_character_flag = chose_even_focus } + event_target:assassin_protege = { + add_trait_diligent_effect = yes + remove_trait_slothful_effect = yes + } + } + + hidden_effect = { + random_list = { + 10 = { + modifier = { + factor = 1.1 + event_target:assassin_protege = { martial = 3 } + } + modifier = { + factor = 1.1 + event_target:assassin_protege = { martial = 4 } + } + modifier = { + factor = 1.1 + event_target:assassin_protege = { martial = 5 } + } + modifier = { + factor = 1.1 + event_target:assassin_protege = { martial = 6 } + } + modifier = { + factor = 1.1 + event_target:assassin_protege = { martial = 7 } + } + modifier = { + factor = 1.1 + event_target:assassin_protege = { martial = 8 } + } + modifier = { + factor = 1.1 + event_target:assassin_protege = { martial = 9 } + } + modifier = { + factor = 1.1 + event_target:assassin_protege = { martial = 10 } + } + modifier = { + factor = 1.1 + event_target:assassin_protege = { intrigue = 3 } + } + modifier = { + factor = 1.1 + event_target:assassin_protege = { intrigue = 4 } + } + modifier = { + factor = 1.1 + event_target:assassin_protege = { intrigue = 5 } + } + modifier = { + factor = 1.1 + event_target:assassin_protege = { intrigue = 6 } + } + modifier = { + factor = 1.1 + event_target:assassin_protege = { intrigue = 7 } + } + modifier = { + factor = 1.1 + event_target:assassin_protege = { intrigue = 8 } + } + modifier = { + factor = 1.1 + event_target:assassin_protege = { intrigue = 9 } + } + modifier = { + factor = 1.1 + event_target:assassin_protege = { intrigue = 10 } + } + modifier = { + factor = 1.1 + event_target:assassin_protege = { trait = deceitful } + } + modifier = { + factor = 1.5 + event_target:assassin_protege = { + OR = { + trait = shrewd + trait = quick + trait = genius + } + } + } + character_event = { id = MNM.6254 days = 5 } # good outcome 1 + } + 10 = { + character_event = { id = MNM.6255 days = 5 } # mediocre outcome 1 + } + 5 = { + modifier = { + factor = 10 + event_target:assassin_protege = { + OR = { + trait = slow + trait = imbecile + trait = dull + } + } + } + character_event = { id = MNM.6256 days = 5 } # bad outcome 1 + } + } + } + + trigger = { has_character_flag = chose_intrigue_focus } + } +} + +character_event = { # good outcome + id = MNM.6254 + picture = GFX_evt_secret_ceremony + border = GFX_event_normal_frame_intrigue + + portrait = event_target:assassin_protege + + hide_from = yes + + trigger = { has_character_flag = training_protege } + + is_triggered_only = yes + + desc = { + trigger = { has_character_flag = chose_intrigue_focus } + text = EVTDESC_MNM_6254_A + } + desc = { + trigger = { has_character_flag = chose_martial_focus } + text = EVTDESC_MNM_6254_B + } + desc = { + trigger = { has_character_flag = chose_even_focus } + text = EVTDESC_MNM_6254_C + } + + option = { + name = EVTOPTA_MNM_6254 + custom_tooltip = { text = EVTOPTA_MNM_6254_TT } + set_character_flag = apprentice_did_great + character_event = { id = MNM.6261 days = 25 } + } +} + +character_event = { # mediocre outcome + id = MNM.6255 + picture = GFX_evt_secret_ceremony + border = GFX_event_normal_frame_intrigue + + hide_from = yes + + portrait = event_target:assassin_protege + + trigger = { has_character_flag = training_protege } + + is_triggered_only = yes + + desc = { + trigger = { has_character_flag = chose_intrigue_focus } + text = EVTDESC_MNM_6255_A + } + desc = { + trigger = { has_character_flag = chose_martial_focus } + text = EVTDESC_MNM_6255_B + } + desc = { + trigger = { has_character_flag = chose_even_focus } + text = EVTDESC_MNM_6255_C + } + + option = { + name = EVTOPTA_MNM_6255 + custom_tooltip = { text = EVTOPTA_MNM_6255_TT } + set_character_flag = apprentice_did_ok + + event_target:assassin_protege = { + add_maimed_trait_effect = yes + } + + character_event = { id = MNM.6261 days = 25 } + } +} + +character_event = { # bad outcome + id = MNM.6256 + desc = EVTDESC_MNM_6256 + picture = GFX_evt_assassination + border = GFX_event_normal_frame_intrigue + + portrait = event_target:assassin_protege + + hide_from = yes + + has_character_flag = training_protege + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_6256 + custom_tooltip = { text = EVTOPTA_MNM_6256_TT } + set_character_flag = apprentice_failed_miserably + + event_target:assassin_protege = { + death = { death_reason = death_murder_unknown killer = ROOT } + } + + character_event = { id = MNM.6259 days = 10 } + + trigger = { + event_target:assassin_protege = { + NOT = { is_child_of = ROOT } + } + } + } + option = { + name = EVTOPTB_MNM_6256 + custom_tooltip = { text = EVTOPTB_MNM_6256_TT } + set_character_flag = apprentice_failed_miserably + character_event = { id = MNM.6259 days = 10 } + + event_target:assassin_protege = { + death = { death_reason = death_murder_unknown killer = ROOT } + } + + trigger = { + event_target:assassin_protege = { + is_child_of = ROOT + } + } + } +} + +character_event = { # clean-up after training apprentice + id = MNM.6257 + picture = GFX_evt_secret_ceremony + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + hide_window = yes + + option = { + if = { limit = { event_target:assassin_protege = { true_religion_shiite_trigger = no } } + custom_tooltip = { text = 6252_CONVERT_APPRENTICE_TT } + event_target:assassin_protege = { + character_event = { id = MNM.6258 } # convert + } + } + event_target:assassin_protege = { clr_character_flag = show_picture_in_option } + clr_character_flag = training_protege + clr_character_flag = chose_intrigue_focus + clr_character_flag = chose_martial_focus + clr_character_flag = chose_even_focus + clr_character_flag = apprentice_is_not_bloodrelation + clr_character_flag = apprentice_did_great + clr_character_flag = apprentice_did_ok + clr_character_flag = apprentice_failed_miserably + } +} + +character_event = { # Conversion event (for apprentice) if they are not already Shia (sent from MNM.6052) + id = MNM.6258 + desc = EVTDESC_MNM_6258 + picture = GFX_evt_secret_ceremony + border = GFX_event_normal_frame_intrigue + + trigger = { + event_target:assassin_protege = { is_alive = yes } + true_religion_shiite_trigger = no + } + + is_triggered_only = yes + + option = { #I (apprentice) will convert + name = EVTOPTA_MNM_6258 + + religion = shiite + + ai_chance = { + factor = 20 + + modifier = { + true_religion_group_muslim_trigger = yes + factor = 2 + } + modifier = { + independent = yes + factor = 2 + } + modifier = { + trait = brave + factor = 2 + } + modifier = { + trait = honest + factor = 2 + } + } + } + option = { # I (apprentice) will convert, secretly + name = EVTOPTB_MNM_6258 + + clear_secret_religion = yes + set_secret_religion = shiite + + ai_chance = { + factor = 80 + modifier = { + trait = craven + factor = 2 + } + modifier = { + trait = deceitful + factor = 2 + } + } + } +} + +character_event = { # Final talk with apprentice + id = MNM.6259 + picture = GFX_evt_secret_ceremony + border = GFX_event_normal_frame_intrigue + + hide_from = yes + + portrait = event_target:assassin_protege + + has_character_flag = training_protege + + is_triggered_only = yes + + immediate = { + if = { + limit = { has_character_flag = apprentice_failed_miserably } + clr_character_flag = training_protege #to block extra fallback spam + } + } + + desc = { + trigger = { + has_character_flag = apprentice_did_great + event_target:assassin_protege = { true_religion_shiite_trigger = yes } + } + text = EVTDESC_MNM_6259_A # apprentice is a fine example and already a believer + } + desc = { + trigger = { + has_character_flag = apprentice_did_ok + event_target:assassin_protege = { true_religion_shiite_trigger = yes } + } + text = EVTDESC_MNM_6259_B # Apprentice has done alright, all things considered + } + desc = { + trigger = { + has_character_flag = apprentice_failed_miserably + event_target:assassin_protege = { true_religion_shiite_trigger = yes } + } + text = EVTDESC_MNM_6259_C # believer apprentice is dead, I might train a new one? + } + desc = { + trigger = { + has_character_flag = apprentice_did_great + event_target:assassin_protege = { true_religion_shiite_trigger = no } + } + text = EVTDESC_MNM_6259_D # apprentice is a fine example and already a believer + } + desc = { + trigger = { + has_character_flag = apprentice_did_ok + event_target:assassin_protege = { true_religion_shiite_trigger = no } + } + text = EVTDESC_MNM_6259_E # Apprentice has done alright, all things considered AND will convert + } + desc = { + trigger = { + has_character_flag = apprentice_failed_miserably + event_target:assassin_protege = { true_religion_shiite_trigger = no } + } + text = EVTDESC_MNM_6259_F # to-be-converted apprentice is dead, I might train a new one? + } + + + option = { + name = EVTOPTA_MNM_6259 # Great! + clr_quest = quest_the_assassins_protege + sound_effect = assassins_train_protege + add_society_currency_medium_effect = yes + hidden_effect = { character_event = { id = MNM.6257 } } # clean up + event_target:assassin_protege = { set_character_flag = show_picture_in_option } + + if = { limit = { event_target:assassin_protege = { true_religion_shiite_trigger = no } } + custom_tooltip = { text = 6252_CONVERT_APPRENTICE_TT_2 } + event_target:assassin_protege = { + character_event = { id = MNM.6258 } # convert + } + } + event_target:assassin_protege = { + clr_character_flag = show_picture_in_option + set_character_flag = was_trained_as_assassin_protege + } + trigger = { has_character_flag = apprentice_did_great } + } + + option = { + name = EVTOPTB_MNM_6259 # OK + clr_quest = quest_the_assassins_protege + sound_effect = assassins_train_protege + add_society_currency_minor_effect = yes + hidden_effect = { character_event = { id = MNM.6257 } } # clean up + event_target:assassin_protege = { set_character_flag = show_picture_in_option } + if = { limit = { event_target:assassin_protege = { true_religion_shiite_trigger = no } } + custom_tooltip = { text = 6252_CONVERT_APPRENTICE_TT_2 } + event_target:assassin_protege = { + character_event = { id = MNM.6258 } # convert + } + } + event_target:assassin_protege = { + clr_character_flag = show_picture_in_option + set_character_flag = was_trained_as_assassin_protege + } + trigger = { has_character_flag = apprentice_did_ok } + } + + option = { + name = EVTOPTC_MNM_6259 # Typical + clr_quest = { id = quest_the_assassins_protege failure = yes } + hidden_effect = { character_event = { id = MNM.6257 } } # clean up + event_target:assassin_protege = { set_character_flag = show_picture_in_option } + event_target:assassin_protege = { clr_character_flag = show_picture_in_option } + trigger = { has_character_flag = apprentice_failed_miserably } + } +} + + +character_event = { # Fallback - apprentice has died somehow during chain + id = MNM.6260 + picture = GFX_evt_secret_ceremony + border = GFX_event_normal_frame_intrigue + + has_character_flag = training_protege + + is_triggered_only = yes + + desc = { + trigger = { NOT = { has_character_flag = apprentice_is_not_bloodrelation } } + text = EVTDESC_MNM_6260_A + } + desc = { + trigger = { has_character_flag = apprentice_is_not_bloodrelation } + text = EVTDESC_MNM_6260_B + } + + + option = { + name = EVTOPTA_MNM_6260 # Drat + clr_quest = { id = quest_the_assassins_protege failure = yes } + hidden_effect = { character_event = { id = MNM.6257 } } # clean up + } +} + +character_event = { #Fallback doublecheck - apprentice died before the Assassins could be notified of the success (leads to fail of mission) + id = MNM.6261 + hide_window = yes + + has_character_flag = training_protege + + is_triggered_only = yes + + immediate = { + if = { + limit = { event_target:assassin_protege = { is_alive = yes } } + character_event = { id = MNM.6259 } + } + } +} + +###INTERACTIONS### + +#Interaction: Friend or foe? +character_event = { + id = MNM.6899 + hide_window = yes + + min_age = 16 + only_playable = yes + only_capable = yes + prisoner = no + has_dlc = "Mystics" + is_in_society = yes + + is_triggered_only = yes + + trigger = { + society_member_of = the_assassins + NOR = { + has_character_modifier = won_duel + has_character_modifier = outwitted_opponent + has_character_modifier = focused_on_training + } + society = { + any_society_member = { + block_general_event_trigger = no + ai = yes + ROOT = { same_society_rank_as_prev_trigger = yes } + NOR = { + trait = incapable + prisoner = yes + is_rival = ROOT + is_friend = ROOT + is_lover = ROOT + is_close_relative = ROOT + } + } + } + } + + immediate = { + society = { + random_society_member = { + limit = { + block_general_event_trigger = no + ai = yes + ROOT = { same_society_rank_as_prev_trigger = yes } + NOR = { + trait = incapable + prisoner = yes + is_rival = ROOT + is_friend = ROOT + is_lover = ROOT + is_close_relative = ROOT + } + } + save_event_target_as = friend_or_foe + } + } + society = { + random_society_member = { + limit = { + block_general_event_trigger = no + ai = yes + ROOT = { same_society_rank_as_prev_trigger = yes } + NOR = { + trait = incapable + prisoner = yes + is_rival = ROOT + is_friend = ROOT + is_lover = ROOT + is_close_relative = ROOT + } + age_diff = { who = ROOT years = 5 } + } + save_event_target_as = friend_or_foe + } + } + event_target:friend_or_foe = { character_event = { id = MNM.6900 } } + } +} + +character_event = { + id = MNM.6900 + hide_window = yes + is_triggered_only = yes + immediate = { FROM = { character_event = { id = MNM.6901 } } } +} + + +#They're so infuriating! What do? +character_event = { + id = MNM.6901 + desc = EVTDESC_MNM_6901 + picture = GFX_evt_quarrel + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + #Challenge him/her + option = { + name = EVTOPTA_MNM_6901 + custom_tooltip = { text = EVTOPTA_MNM_6901_TT } + + hidden_effect = { + random_list = { + 17 = { #Win - outwit + modifier = { is_smart_trigger = yes factor = 2 } + modifier = { FROM = { is_dumb_trigger = yes } factor = 2 } + modifier = { trait = erudite factor = 2 } + modifier = { attribute_diff = { character = FROM attribute = intrigue value = 3 } factor = 2 } + + set_character_flag = won_outwit + + random_list = { + 75 = { set_character_flag = modifier_outwit } + 25 = { + modifier = { OR = { is_smart_trigger = yes is_dumb_trigger = yes } factor = 0 } + set_character_flag = trait_shrewd + } + } + } + 17 = { #Win - outstrong + modifier = { is_strong_trigger = yes factor = 2 } + modifier = { FROM = { is_weak_trigger = yes } factor = 2 } + modifier = { combat_rating_diff = { who = FROM value = 10 } factor = 2 } + modifier = { attribute_diff = { character = FROM attribute = martial value = 3 } factor = 2 } + + set_character_flag = won_outstrong + + random_list = { + 75 = { set_character_flag = modifier_outstrong } + 25 = { + modifier = { OR = { is_strong_trigger = yes is_weak_trigger = yes } factor = 0 } + set_character_flag = trait_robust + } + } + } + 33 = { + set_character_flag = draw + } + 17 = { #Lose - outwit + modifier = { FROM = { is_smart_trigger = yes } factor = 2 } + modifier = { is_dumb_trigger = yes factor = 2 } + modifier = { FROM = { trait = erudite } factor = 2 } + modifier = { FROM = { attribute_diff = { character = ROOT attribute = intrigue value = 3 } } factor = 2 } + + set_character_flag = lost_outwit + } + 17 = { #Lose - outstrong + modifier = { FROM = { is_strong_trigger = yes } factor = 2 } + modifier = { is_weak_trigger = yes factor = 2 } + modifier = { FROM = { combat_rating_diff = { who = ROOT value = 10 } } factor = 2 } + modifier = { FROM = { attribute_diff = { character = ROOT attribute = martial value = 3 } } factor = 2 } + + set_character_flag = lost_outstrong + } + } + + FROM = { character_event = { id = MNM.6902 } } + } + } + + #Ignore him/her + option = { + name = EVTOPTB_MNM_6901 + custom_tooltip = { text = EVTOPTB_MNM_6901_TT } + + reverse_opinion = { + who = FROM + modifier = opinion_very_disappointed + years = 10 + } + + add_character_modifier = { + name = focused_on_training + years = 5 + } + } +} + +#Ping event outcome +character_event = { + id = MNM.6902 + hide_window = yes + is_triggered_only = yes + + immediate = { + random_list = { + 50 = { + modifier = { is_benevolent_trigger = yes factor = 2 } + modifier = { has_pleasant_personality_trigger = yes factor = 1.3 } + modifier = { trait = content factor = 1.3 } + modifier = { opinion = { who = FROM value = 30 } factor = 1.5 } + FROM = { set_character_flag = nice_opponent } + } + 50 = { + modifier = { is_evil_trigger = yes factor = 2 } + modifier = { has_unpleasant_personality_trigger = yes factor = 1.3 } + modifier = { trait = ambitious factor = 1.2 } + modifier = { NOT = { opinion = { who = FROM value = 0 } } factor = 1.3 } + FROM = { set_character_flag = mean_opponent } + } + } + + #Challenge is set + FROM = { + character_event = { id = MNM.6908 days = 14 } + } + + #Outcome + FROM = { + #Nice win + if = { + limit = { + OR = { + has_character_flag = won_outwit + has_character_flag = won_outstrong + } + has_character_flag = nice_opponent + } + character_event = { id = MNM.6903 days = 20 } + } + #Mean win + if = { + limit = { + OR = { + has_character_flag = won_outwit + has_character_flag = won_outstrong + } + has_character_flag = mean_opponent + } + character_event = { id = MNM.6904 days = 20 } + } + #Draw + if = { + limit = { has_character_flag = draw } + character_event = { id = MNM.6903 days = 20 } + } + #Nice lose + if = { + limit = { + OR = { + has_character_flag = lost_outwit + has_character_flag = lost_outstrong + } + has_character_flag = nice_opponent + } + character_event = { id = MNM.6903 days = 20 } + } + #Mean lose + if = { + limit = { + OR = { + has_character_flag = lost_outwit + has_character_flag = lost_outstrong + } + has_character_flag = mean_opponent + } + character_event = { id = MNM.6905 days = 20 } + } + } + } +} + +character_event = { + id = MNM.6908 + picture = GFX_evt_market_byzantine + border = GFX_event_normal_frame_war + + desc = { + trigger = { + OR = { + has_character_flag = won_outwit + has_character_flag = lost_outwit + } + } + text = EVTDESC_MNM_6908_A + picture = GFX_evt_market_byzantine + } + desc = { + trigger = { + OR = { + has_character_flag = lost_outstrong + has_character_flag = won_outstrong + has_character_flag = draw + } + } + text = EVTDESC_MNM_6908_B + picture = GFX_evt_melee + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_6908 + custom_tooltip = { text = EVTOPTA_MNM_6908_TT } + } +} + +#Nice win/draw/nice lose +character_event = { + id = MNM.6903 + border = GFX_event_normal_frame_diplomacy + picture = GFX_evt_market_byzantine + + desc = { + trigger = { has_character_flag = won_outwit } + text = EVTDESC_MNM_6903_A + picture = GFX_evt_market_byzantine + } + desc = { + trigger = { has_character_flag = won_outstrong } + text = EVTDESC_MNM_6903_B + picture = GFX_evt_melee + } + desc = { + trigger = { has_character_flag = draw } + text = EVTDESC_MNM_6903_C + picture = GFX_evt_melee + } + desc = { + trigger = { has_character_flag = lost_outwit } + text = EVTDESC_MNM_6903_D + picture = GFX_evt_market_byzantine + } + desc = { + trigger = { has_character_flag = lost_outstrong } + text = EVTDESC_MNM_6903_E + picture = GFX_evt_melee + } + + is_triggered_only = yes + + #Friends + option = { + name = EVTOPTA_MNM_6903 + + add_friend = FROM + } + + #Love? + option = { + trigger = { FROM = { root_attraction_trigger = yes } } + name = EVTOPTB_MNM_6903 + custom_tooltip = { text = EVTOPTB_MNM_6903_TT } + + hidden_effect = { FROM = { character_event = { id = MNM.6906 days = 3 } } } + + ai_chance = { + factor = 1 + modifier = { + factor = 0 + NOR = { + trait = lustful + AND = { + NOT = { any_lover = { is_alive = yes } } + is_married = yes + } + FROM = { has_attractive_trait_trigger = yes } + } + } + } + } + + #Glory + option = { + trigger = { + OR = { + has_character_flag = won_outwit + has_character_flag = won_outstrong + } + } + name = EVTOPTC_MNM_6903 + custom_tooltip = { text = EVTOPTC_MNM_6903_TT } + + prestige = 100 + add_society_currency_major_effect = yes + } + + after = { + if = { + limit = { has_character_flag = modifier_outwit } + add_character_modifier = { + name = outwitted_opponent + years = 10 + } + } + if = { + limit = { has_character_flag = trait_shrewd } + add_trait = shrewd + } + if = { + limit = { has_character_flag = modifier_outstrong } + add_character_modifier = { + name = won_duel + years = 10 + } + } + if = { + limit = { has_character_flag = trait_robust } + add_trait = robust + } + hidden_effect = { + clr_character_flag = won_outwit + clr_character_flag = won_outstrong + clr_character_flag = draw + clr_character_flag = lost_outwit + clr_character_flag = lost_outstrong + clr_character_flag = nice_opponent + clr_character_flag = mean_opponent + clr_character_flag = modifier_outwit + clr_character_flag = trait_shrewd + clr_character_flag = modifier_outstrong + clr_character_flag = trait_robust + } + } +} + +#Mean win +character_event = { + id = MNM.6904 + border = GFX_event_normal_frame_war + picture = GFX_evt_market_byzantine + + desc = { + trigger = { has_character_flag = won_outwit } + text = EVTDESC_MNM_6904_A + picture = GFX_evt_market_byzantine + } + desc = { + trigger = { has_character_flag = won_outstrong } + text = EVTDESC_MNM_6904_B + picture = GFX_evt_melee + } + + is_triggered_only = yes + + #Beat + option = { + name = EVTOPTA_MNM_6904 + custom_tooltip = { text = EVTOPTA_MNM_6904_TT } + + add_rival = FROM + + FROM = { + if = { + limit = { NOT = { trait = wounded } } + add_trait = wounded + } + } + } + + #Let it be + option = { + name = EVTOPTB_MNM_6904 + custom_tooltip = { text = EVTOPTB_MNM_6904_TT } + + prestige = 100 + add_society_currency_major_effect = yes + } + + after = { + if = { + limit = { has_character_flag = modifier_outwit } + add_character_modifier = { + name = outwitted_opponent + years = 10 + } + } + if = { + limit = { has_character_flag = trait_shrewd } + add_trait = shrewd + } + if = { + limit = { has_character_flag = modifier_outstrong } + add_character_modifier = { + name = won_duel + years = 10 + } + } + if = { + limit = { has_character_flag = trait_robust } + add_trait = robust + } + hidden_effect = { + clr_character_flag = won_outwit + clr_character_flag = won_outstrong + clr_character_flag = mean_opponent + clr_character_flag = modifier_outwit + clr_character_flag = trait_shrewd + clr_character_flag = modifier_outstrong + clr_character_flag = trait_robust + } + } +} + +#Mean lose +character_event = { + id = MNM.6905 + border = GFX_event_normal_frame_war + picture = GFX_evt_assassination + + desc = { + trigger = { has_character_flag = lost_outwit } + text = EVTDESC_MNM_6905_A + picture = GFX_evt_assassination + } + desc = { + trigger = { has_character_flag = lost_outstrong } + text = EVTDESC_MNM_6905_B + picture = GFX_evt_melee + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_6905 + + add_rival = FROM + if = { + limit = { NOT = { trait = wounded } } + add_trait = wounded + } + } + + after = { + clr_character_flag = lost_outwit + clr_character_flag = lost_outstrong + clr_character_flag = mean_opponent + clr_character_flag = modifier_outwit + clr_character_flag = trait_shrewd + clr_character_flag = modifier_outstrong + clr_character_flag = trait_robust + } +} + +#Love ping event +character_event = { + id = MNM.6906 + hide_window = yes + is_triggered_only = yes + immediate = { + + random_list = { + 50 = { #Not interested + modifier = { is_married = yes factor = 2 } + modifier = { any_lover = { is_alive = yes } factor = 4 } + modifier = { trait = chaste factor = 4 } + modifier = { trait = celibate factor = 10 } + modifier = { has_unpleasant_trait_trigger = yes factor = 2 } + modifier = { NOT = { opinion = { who = FROM value = 20 } } factor = 2 } + modifier = { + root_attraction_trigger = no + NOT = { trait = homosexual } + factor = 0.5 + } + modifier = { + root_attraction_trigger = no + trait = homosexual + factor = 0 + } + set_character_flag = not_interested + } + 50 = { #Interested + modifier = { trait = lustful factor = 4 } + modifier = { has_pleasant_trait_trigger = yes factor = 2 } + modifier = { opinion = { who = FROM value = 40 } factor = 2 } + modifier = { FROM = { has_attractive_trait_trigger = yes } factor = 3 } + + set_character_flag = interested + + if = { + limit = { same_sex = FROM } + add_trait = homosexual + } + } + } + + FROM = { character_event = { id = MNM.6907 } } + } +} + +#Love outcome +character_event = { + id = MNM.6907 + border = GFX_event_normal_frame_diplomacy + picture = GFX_evt_lovers + + desc = { + trigger = { FROM = { has_character_flag = not_interested } } + text = EVTDESC_MNM_6907_A + picture = GFX_evt_courtiers_talking + } + desc = { + trigger = { FROM = { has_character_flag = interested } } + text = EVTDESC_MNM_6907_B + picture = GFX_evt_lovers + } + + is_triggered_only = yes + + #Friends instead? + option = { + trigger = { FROM = { has_character_flag = not_interested } } + name = EVTOPTC_MNM_6907 + + add_friend = FROM + } + + #Nah + option = { + trigger = { FROM = { has_character_flag = not_interested } } + name = EVTOPTA_MNM_6907 + + opinion = { + modifier = opinion_distressing_encounter + who = FROM + years = 5 + } + reverse_opinion = { + modifier = opinion_distressing_encounter + who = FROM + years = 5 + } + } + + #Love + option = { + trigger = { FROM = { has_character_flag = interested } } + name = EVTOPTB_MNM_6907 + + add_lover = FROM + } + + after = { + hidden_effect = { + FROM = { + clr_character_flag = not_interested + clr_character_flag = interested + } + } + } +} + +#Interaction: Help someone's murder plot +character_event = { + id = MNM.6910 + hide_window = yes + + min_age = 16 + only_playable = yes + only_capable = yes + prisoner = no + is_in_society = yes + + is_triggered_only = yes + + trigger = { + society_member_of = the_assassins + society = { + any_society_member = { + block_general_event_trigger = no + ai = yes + society_rank >= 2 + has_quest = quest_the_assassins_assassination + NOT = { any_plot_backer = { character = ROOT } } + OR = { + AND = { + has_plot = plot_kill_character + plot_target_char = { is_quest_target_of = PREV } + } + AND = { + has_plot = plot_kill_spouse + plot_target_char = { is_quest_target_of = PREV } + } + } + } + } + } + + immediate = { + society = { + random_society_member = { + limit = { + block_general_event_trigger = no + ai = yes + society_rank >= 2 + has_quest = quest_the_assassins_assassination + NOT = { any_plot_backer = { character = ROOT } } + OR = { + AND = { + has_plot = plot_kill_character + plot_target_char = { is_quest_target_of = PREV } + } + AND = { + has_plot = plot_kill_spouse + plot_target_char = { is_quest_target_of = PREV } + } + } + } + save_event_target_as = assassins_plotter + } + random_society_member = { + limit = { + block_general_event_trigger = no + ai = yes + society_rank >= 3 + has_quest = quest_the_assassins_assassination + NOT = { any_plot_backer = { character = ROOT } } + OR = { + AND = { + has_plot = plot_kill_character + plot_target_char = { is_quest_target_of = PREV } + } + AND = { + has_plot = plot_kill_spouse + plot_target_char = { is_quest_target_of = PREV } + } + } + } + save_event_target_as = assassins_plotter + } + } + event_target:assassins_plotter = { character_event = { id = MNM.6911 } } + } +} + + +character_event = { + id = MNM.6911 + hide_window = yes + is_triggered_only = yes + immediate = { FROM = { character_event = { id = MNM.6912 } } } +} + +#I can offer my help, but against what? +character_event = { + id = MNM.6912 + desc = EVTDESC_MNM_6912 + picture = GFX_evt_assassination + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + immediate = { + FROM = { plot_target_char = { save_event_target_as = assassin_quest_target } } + plot_target_char = { save_event_target_as = my_quest_target } + } + + #You scratch my back, I scratch yours + option = { + trigger = { + has_quest = quest_the_assassins_assassination + plot_target_char = { is_quest_target_of = ROOT } + } + name = EVTOPTA_MNM_6912 + + FROM = { back_plot = ROOT } + + back_plot = FROM + + reverse_opinion = { + who = FROM + modifier = opinion_grateful + years = 10 + } + + ai_chance = { factor = 100 } + } + + #Some influence + option = { + name = EVTOPTB_MNM_6912 + + add_society_currency_medium_effect = yes + + back_plot = FROM + + reverse_opinion = { + who = FROM + modifier = opinion_grateful + years = 10 + } + + ai_chance = { factor = 50 } + } + + #Anything for a friend! + option = { + name = EVTOPTC_MNM_6912 + + if = { + limit = { is_friend = FROM } + reverse_opinion = { + who = FROM + modifier = opinion_grateful + years = 10 + } + } + + if = { + limit = { NOT = { is_friend = FROM } } + add_friend = FROM + } + + back_plot = FROM + + ai_chance = { + factor = 10 + modifier = { + OR = { + trait = kind + trait = gregarious + trait = socializer + } + factor = 20 + } + } + } + + #Not interested + option = { + name = EVTOPTD_MNM_6912 + + reverse_opinion = { + who = FROM + modifier = opinion_disappointed + years = 10 + } + + ai_chance = { factor = 0 } + } +} + +#Interaction: Blackmailing superior +character_event = { + id = MNM.6920 + hide_window = yes + + is_in_society = yes + capable_only = yes + prisoner = no + min_age = 16 + + is_triggered_only = yes + + trigger = { + society_member_of = the_assassins + any_society_member = { + same_society_as = ROOT + block_general_event_trigger = no + ai = yes + higher_society_rank_than_root_trigger = yes + NOT = { is_rival = ROOT } + NOT = { has_opinion_modifier = { who = ROOT modifier = opinion_very_grateful } } + } + } + + immediate = { + + random_list = { + 10 = { + modifier = { + factor = 0 + NOT = { + any_society_member = { + same_society_as = ROOT + block_general_event_trigger = no + ai = yes + higher_society_rank_than_root_trigger = yes + NOT = { is_rival = ROOT } + NOT = { has_opinion_modifier = { who = ROOT modifier = opinion_very_grateful } } + OR = { + trait = lustful + trait = seducer + trait = seductress + any_lover = { is_alive = yes } + } + } + } + } + random_society_member = { + limit = { + same_society_as = ROOT + block_general_event_trigger = no + ai = yes + higher_society_rank_than_root_trigger = yes + NOT = { is_rival = ROOT } + NOT = { has_opinion_modifier = { who = ROOT modifier = opinion_very_grateful } } + OR = { + trait = lustful + trait = seducer + trait = seductress + any_lover = { is_alive = yes } + } + } + save_event_target_as = assassin_blackmail_target + set_character_flag = blackmail_lover + } + } + 10 = { + modifier = { + factor = 0 + NOT = { + any_society_member = { + same_society_as = ROOT + block_general_event_trigger = no + ai = yes + higher_society_rank_than_root_trigger = yes + NOT = { is_rival = ROOT } + NOT = { has_opinion_modifier = { who = ROOT modifier = opinion_very_grateful } } + OR = { + trait = decadent + trait = hedonist + trait = gluttonous + trait = drunkard + } + } + } + } + random_society_member = { + limit = { + same_society_as = ROOT + block_general_event_trigger = no + ai = yes + higher_society_rank_than_root_trigger = yes + NOT = { is_rival = ROOT } + NOT = { has_opinion_modifier = { who = ROOT modifier = opinion_very_grateful } } + OR = { + trait = decadent + trait = hedonist + trait = gluttonous + trait = drunkard + } + } + save_event_target_as = assassin_blackmail_target + set_character_flag = blackmail_decadence + } + } + 10 = { + modifier = { + factor = 0 + NOT = { + any_society_member = { + block_general_event_trigger = no + same_society_as = ROOT + ai = yes + higher_society_rank_than_root_trigger = yes + NOT = { is_rival = ROOT } + NOT = { has_opinion_modifier = { who = ROOT modifier = opinion_very_grateful } } + OR = { + trait = craven + is_weak_trigger = yes + has_disease_trigger = yes + has_disability_trigger = yes + has_mental_disorder_trigger = yes + } + } + } + } + random_society_member = { + limit = { + block_general_event_trigger = no + same_society_as = ROOT + ai = yes + higher_society_rank_than_root_trigger = yes + NOT = { is_rival = ROOT } + NOT = { has_opinion_modifier = { who = ROOT modifier = opinion_very_grateful } } + OR = { + trait = craven + is_weak_trigger = yes + has_disease_trigger = yes + has_disability_trigger = yes + has_mental_disorder_trigger = yes + } + } + save_event_target_as = assassin_blackmail_target + set_character_flag = blackmail_weak + } + } + } + + if = { + limit = { NOT = { event_target:assassin_blackmail_target = { always = yes } } } + random_society_member = { + limit = { + block_general_event_trigger = no + same_society_as = ROOT + ai = yes + higher_society_rank_than_root_trigger = yes + NOT = { is_rival = ROOT } + NOT = { has_opinion_modifier = { who = ROOT modifier = opinion_very_grateful } } + } + save_event_target_as = assassin_blackmail_target + set_character_flag = blackmail_decadence + } + } + + event_target:assassin_blackmail_target = { character_event = { id = MNM.6921 } } + } +} + +character_event = { + id = MNM.6921 + hide_window = yes + is_triggered_only = yes + immediate = { FROM = { character_event = { id = MNM.6922 } } } +} + +#I found out their secret, what do? +character_event = { + id = MNM.6922 + picture = GFX_evt_shady_meeting + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { FROM = { has_character_flag = blackmail_decadence } } + text = EVTDESC_MNM_6922_A + } + desc = { + trigger = { FROM = { has_character_flag = blackmail_lover } } + text = EVTDESC_MNM_6922_B + } + desc = { + trigger = { FROM = { has_character_flag = blackmail_weak } } + text = EVTDESC_MNM_6922_C + } + + is_triggered_only = yes + + immediate = { + hidden_effect = { + FROM = { + random_lover = { save_event_target_as = lover_of_target } + if = { + limit = { + has_character_flag = blackmail_lover + NOT = { any_lover = { is_alive = yes } } + } + host = { + if = { + limit = { prefers_men_trigger = yes } + create_random_diplomat = { + female = no + random_traits = yes + dynasty = none + age = 30 + } + new_character = { + add_lover = event_target:assassin_blackmail_target + save_event_target_as = lover_of_target + } + } + if = { + limit = { prefers_men_trigger = no } + create_random_diplomat = { + female = yes + random_traits = yes + dynasty = none + age = 30 + } + new_character = { + add_lover = event_target:assassin_blackmail_target + save_event_target_as = lover_of_target + } + } + if = { + limit = { trait = homosexual } + event_target:lover_of_target = { add_trait = homosexual } + } + } + } + } + } + } + + #Promote me + option = { + trigger = { + society_rank < 3 + OR = { + ai = no + society_can_rank_up = yes + } + days_at_current_society_rank = 3650 + } + name = EVTOPTA_MNM_6922 + + society_rank_up = 1 + + add_rival = FROM + + ai_chance = { factor = 100 } + } + + #Give me some influence + option = { + name = EVTOPTB_MNM_6922 + + add_society_currency_major_effect = yes + + add_rival = FROM + + ai_chance = { factor = 10 } + } + + #I will keep your secret safe + option = { + name = EVTOPTD_MNM_6922 + + reverse_opinion = { + who = FROM + modifier = opinion_very_grateful + years = 20 + } + + ai_chance = { + factor = 10 + modifier = { + factor = 20 + OR = { + trait = kind + trait = honest + trait = content + trait = just + } + } + } + } +} + + + +###MISC EVENTS### + +#Makes sure d_hashashin owner and subjects have appropriate religion and assassins membership +character_event = { + id = MNM.6990 + hide_window = yes + + trigger = { + primary_title = { title = d_hashshashin } + ai = yes + } + + is_triggered_only = yes + + immediate = { + #Changes religion + if = { + limit = { + independent = yes + primary_title = { title = d_hashshashin } + NOT = { religion = shiite } + } + religion = shiite + } + + if = { + limit = { + NAND = { + independent = yes + primary_title = { title = d_hashshashin } + religion = shiite + } + NOT = { secret_religion = shiite } + } + clear_secret_religion = yes + set_secret_religion = shiite + } + + #Try and force them to lvl 3 of the assassins + if = { + limit = { NOT = { society_member_of = the_assassins } } + join_society = the_assassins + } + if = { + limit = { + society_rank = { + rank == 1 + society = the_assassins + } + } + society_rank_up = { + rank = 2 + society = the_assassins + } + } + if = { + limit = { + society_rank = { + rank == 2 + society = the_assassins + } + } + society_rank_up = { + rank = 1 + society = the_assassins + } + } + + #Make every apropriate courtier member of society + if = { + limit = { + primary_title = { title = d_hashshashin } + religion = shiite + } + any_courtier = { + religion = shiite + + if = { + limit = { + is_in_society = no + is_adult = yes + prisoner = no + NOT = { trait = incapable } + OR = { + is_female = no + has_game_rule = { + name = gender + value = all + } + } + } + join_society = the_assassins + } + } + any_vassal = { + religion = shiite + + if = { + limit = { + is_in_society = no + is_adult = yes + prisoner = no + NOT = { trait = incapable } + OR = { + is_female = no + has_game_rule = { + name = gender + value = all + } + } + } + join_society = the_assassins + } + } + } + } +} + + diff --git a/MOD/Witcher/events/mnm_devil_worshipers_events.txt b/MOD/Witcher/events/mnm_devil_worshipers_events.txt new file mode 100644 index 000000000..579daad35 --- /dev/null +++ b/MOD/Witcher/events/mnm_devil_worshipers_events.txt @@ -0,0 +1,13506 @@ +########################################### +# # +# M&M Satanists Society Events # +# # +# ID MNM.7000-MNM.7999 # +# # +########################################### + +namespace = MNM + +### minor/major soul corruption effect (on yearly pulse) +character_event = { + id = MNM.7000 + + hide_window = yes + is_triggered_only = yes + + trigger = { + is_devil_worshiper_trigger = yes + days_in_society > 1095 + has_dlc = Mystics + } + + immediate = { + random_list = { #randomizes between big or small effect, both containing a chance of nothing happening + 80 = { + minor_soul_corruption_effect = yes + } + 20 = { + major_soul_corruption_effect = yes + modifier = { + factor = 1.1 + check_variable = { which = visibility_value value = 10 } + } + modifier = { + factor = 1.1 + check_variable = { which = visibility_value value = 15 } + } + modifier = { + factor = 1.1 + check_variable = { which = visibility_value value = 20 } + } + modifier = { + factor = 1.1 + check_variable = { which = visibility_value value = 25 } + } + modifier = { + factor = 1.1 + check_variable = { which = visibility_value value = 30 } + } + modifier = { + factor = 1.1 + check_variable = { which = visibility_value value = 35 } + } + modifier = { + factor = 1.1 + check_variable = { which = visibility_value value = 40 } + } + } + } + } +} + + +###JOINING & RECRUITMENT EVENTS### + +#For the recruit: Do you approve of "alternative views"? +character_event = { + id = MNM.7001 + desc = { #Zeus doesn't deal with Salvation. + text = EVTDESC_MNM_7001_B + } + picture = GFX_evt_shady_meeting + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + prisoner = no + + trigger = { has_dlc = Mystics } + + immediate = { + if = { + limit = { NOT = { event_target:satanists_recruiter = { always = yes } } } + FROMFROM = { save_event_target_as = satanists_recruiter } + } + save_event_target_as = satanists_recruit + } + + fail_trigger_effect = { + clr_character_flag = being_recruited_by_the_satanists + clr_character_flag = being_recruited_by_the_trollcrafters + clr_character_flag = being_recruited_by_the_cult_of_kali + clr_character_flag = being_recruited_by_the_cold_ones + clr_character_flag = being_recruited_by_the_plaguebringers + clr_character_flag = being_recruited_by_the_vodouns + clr_character_flag = being_recruited_by_the_bacchants + } + + #Approving of heretics + option = { + name = { + text = EVTOPTA_7001_B + } + + trigger = { + OR = { + ai = no + NOT = { controls_religion = yes } + trait = bad_priest_christian + trait = bad_priest_muslim + trait = bad_priest_norse + trait = bad_priest_tengri + trait = bad_priest_zoroastrian + trait = bad_priest_aztec + trait = possessed + } + } + + custom_tooltip = { text = EVTOPTA_7001_TT } + + reverse_opinion = { + who = event_target:satanists_recruiter + modifier = opinion_agreed_with_opinion + years = 5 + } + + set_character_flag = approves_of_satanism + + hidden_effect = { + character_event = { id = MNM.6999 days = 3 } + } + + ai_chance = { + factor = 20 + modifier = { + factor = 0 + trait = zealous + } + modifier = { + factor = 1.5 + trait = trusting + } + modifier = { + factor = 50 #likely if "possessed" + has_opinion_modifier = { who = event_target:satanists_recruiter modifier = opinion_loyal_servant } + } + modifier = { + factor = 1.5 + is_dumb_trigger = yes + } + modifier = { + factor = 1.5 + OR = { + trait = bad_priest_christian + trait = bad_priest_muslim + trait = bad_priest_norse + trait = bad_priest_tengri + trait = bad_priest_zoroastrian + trait = bad_priest_aztec + } + } + modifier = { + factor = 1.5 + trait = hedonist + } + modifier = { + factor = 1.5 + trait = lustful + } + modifier = { + factor = 1.5 + trait = cynical + } + modifier = { + factor = 1.75 + has_character_flag = being_recruited_by_the_bacchants + culture = roman #Decadence + } + modifier = { + factor = 1.5 + has_character_flag = being_recruited_by_the_bacchants + is_close_relative = yes #Decadence + } + modifier = { + factor = 0.2 + OR = { + AND = { + has_character_flag = being_recruited_by_the_satanists + true_religion_group_christian_trigger = no + true_religion_group_muslim_trigger = no + true_religion_group_jewish_group_trigger = no + true_religion_group_zoroastrian_group_trigger = no + } + AND = { + has_character_flag = being_recruited_by_the_trollcrafters + true_religion_norse_pagan_reformed_trigger = no + true_religion_norse_pagan_trigger = no + } + AND = { + has_character_flag = being_recruited_by_the_cult_of_kali + true_religion_hindu_trigger = no + } + AND = { + has_character_flag = being_recruited_by_the_cold_ones + true_religion_baltic_pagan_trigger = no + true_religion_baltic_pagan_reformed_trigger = no + true_religion_slavic_pagan_trigger = no + true_religion_slavic_pagan_reformed_trigger = no + } + AND = { + has_character_flag = being_recruited_by_the_plaguebringers + true_religion_tengri_pagan_trigger = no + true_religion_tengri_pagan_reformed_trigger = no + } + AND = { + has_character_flag = being_recruited_by_the_vodouns + true_religion_west_african_pagan_trigger = no + true_religion_west_african_pagan_reformed_trigger = no + } + AND = { + has_character_flag = being_recruited_by_the_bacchants + true_religion_hellenic_pagan_trigger = no + true_religion_hellenic_pagan_reformed_trigger = no + } + } + } + } + } + + #Disapproving of heretics + option = { + name = { + text = EVTOPTB_7001 + } + + custom_tooltip = { text = EVTOPTB_7001_TT } + + reverse_opinion = { + who = event_target:satanists_recruiter + modifier = opinion_disagreed_with_opinion + years = 5 + } + + set_character_flag = disapproves_of_satanism + + clr_character_flag = being_recruited_by_the_satanists + clr_character_flag = being_recruited_by_the_trollcrafters + clr_character_flag = being_recruited_by_the_cult_of_kali + clr_character_flag = being_recruited_by_the_cold_ones + clr_character_flag = being_recruited_by_the_plaguebringers + clr_character_flag = being_recruited_by_the_vodouns + clr_character_flag = being_recruited_by_the_bacchants + + hidden_effect = { + event_target:satanists_recruiter = { + character_event = { id = MNM.7002 days = 15 } + } + } + + ai_chance = { + factor = 80 + modifier = { + factor = 1.5 + has_pious_trait_trigger = yes + } + modifier = { + factor = 1.5 + has_crusade_trait_trigger = yes + } + } + } +} + +# Safety ping. +character_event = { + id = MNM.6999 + hide_window = yes + + is_triggered_only = yes + + immediate = { + if = { + limit = { + prisoner = yes + } + set_character_flag = dw_recruitment_end_unable + character_event = { id = MNM.6995 } + break = yes + } + if = { + limit = { + event_target:satanists_recruiter = { + is_alive = yes + is_devil_worshiper_trigger = yes + prisoner = no + } + } + event_target:satanists_recruiter = { + character_event = { id = MNM.7002 } + } + break = yes + } + # Else notify broken chain + character_event = { id = MNM.6995 } + } +} + +# Safety ping. +character_event = { + id = MNM.6998 + hide_window = yes + + is_triggered_only = yes + + immediate = { + if = { + limit = { + prisoner = yes + } + set_character_flag = dw_recruitment_end_unable + character_event = { id = MNM.6995 } + break = yes + } + if = { + limit = { + event_target:satanists_recruiter = { + is_alive = yes + is_devil_worshiper_trigger = yes + prisoner = no + } + } + event_target:satanists_recruiter = { + character_event = { id = MNM.7004 } + } + break = yes + } + # Else notify broken chain + character_event = { id = MNM.6995 } + } +} + +# Safety ping. +character_event = { + id = MNM.6997 + hide_window = yes + + is_triggered_only = yes + + immediate = { + if = { + limit = { + OR = { + prisoner = yes + event_target:satanists_recruiter = { prisoner = yes } + } + } + set_character_flag = dw_recruitment_end_unable + character_event = { id = MNM.6995 } + break = yes + } + if = { + limit = { + event_target:satanists_recruiter = { + is_alive = yes + is_devil_worshiper_trigger = yes + prisoner = no + } + } + event_target:satanists_recruiter = { + character_event = { id = MNM.7007 } + } + break = yes + } + # Else notify broken chain + character_event = { id = MNM.6995 } + } +} + +# Safety ping. +character_event = { + id = MNM.6996 + hide_window = yes + + is_triggered_only = yes + + immediate = { + if = { + limit = { + OR = { + prisoner = yes + event_target:satanists_recruiter = { prisoner = yes } + } + } + set_character_flag = dw_recruitment_end_unable + character_event = { id = MNM.6995 } + break = yes + } + if = { + limit = { + event_target:satanists_recruiter = { + is_alive = yes + is_devil_worshiper_trigger = yes + prisoner = no + } + } + event_target:satanists_recruiter = { + character_event = { id = MNM.7006 } + } + break = yes + } + # Else notify broken chain + character_event = { id = MNM.6995 } + } +} + +character_event = { # event notifying recruitee that "Something must've gone wrong" (in case recruiter/inductor dies) + id = MNM.6995 + desc = { + text = EVTDESCA_MNM_6995 + trigger = { NOT = { has_character_flag = dw_recruitment_end_unable } } + } + desc = { + text = EVTDESCB_MNM_6995 + trigger = { has_character_flag = dw_recruitment_end_unable } + picture = GFX_evt_into_the_dungeon + } + picture = GFX_evt_state_diplomacy + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + show_root = yes + + option = { + name = { + text = EVTOPTA_MNM_6995 + trigger = { NOT = { has_character_flag = dw_recruitment_end_unable } } + } + name = { + text = EVTOPTB_MNM_6995 + trigger = { has_character_flag = dw_recruitment_end_unable } + } + custom_tooltip = { text = EVTTOOLTIP_MNM_6995 } + clr_character_flag = being_recruited_by_the_satanists + clr_character_flag = being_recruited_by_the_trollcrafters + clr_character_flag = being_recruited_by_the_cult_of_kali + clr_character_flag = being_recruited_by_the_cold_ones + clr_character_flag = being_recruited_by_the_plaguebringers + clr_character_flag = being_recruited_by_the_vodouns + clr_character_flag = being_recruited_by_the_bacchants + clr_character_flag = dw_recruitment_end_unable + } +} + +# For recruiter: consider the target's reaction, continue or abandon endeavor +character_event = { + id = MNM.7002 + picture = GFX_evt_shady_meeting + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { FROM = { has_character_flag = approves_of_satanism } } #They seemed kinda fine with it + text = EVTDESC_MNM_7002_C + } + desc = { + trigger = { FROM = { has_character_flag = disapproves_of_satanism } } #They seemed kinda hesitant to the whole thing + text = EVTDESC_MNM_7002_D + } + + is_triggered_only = yes + + #Continue recruitment-attempt + option = { + trigger = { FROM = { has_character_flag = approves_of_satanism } } + name = EVTOPTA_7002 + custom_tooltip = { text = EVTOPTA_7002_TT } + + hidden_effect = { + FROM = { + character_event = { id = MNM.7003 } + clr_character_flag = approves_of_satanism + } + } + ai_chance = { factor = 100 } + } + + #Too risky - Recruitment attempt ends + option = { + trigger = { FROM = { has_character_flag = approves_of_satanism } } + name = EVTOPTB_7002 + custom_tooltip = { text = EVTOPTB_7002_TT } + hidden_effect = { FROM = { clr_character_flag = approves_of_satanism } } + ai_chance = { factor = 0 } + } + + # The recruit refuses to question their god - Recruitment attempt ends + option = { + trigger = { FROM = { has_character_flag = disapproves_of_satanism } } + name = EVTOPTC_7002 + custom_tooltip = { text = EVTOPTB_7002_TT } + hidden_effect = { FROM = { clr_character_flag = disapproves_of_satanism } } + } +} + +#For the recruit: Recruiter contiunes offering more radical ideas, gives strange idol +character_event = { + id = MNM.7003 + desc = EVTDESC_MNM_7003_A + picture = GFX_evt_shady_meeting + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + immediate = { + if = { + limit = { NOT = { event_target:satanists_recruit = { always = yes } } } + FROMFROM = { save_event_target_as = satanists_recruiter } + save_event_target_as = satanists_recruit + } + } + + #You encourage the recruiter + option = { + name = EVTOPTA_7003 + custom_tooltip = { text = EVTOPTA_7003_TT } + + trigger = { + OR = { + ai = no + NOT = { controls_religion = yes } + trait = bad_priest_christian + trait = bad_priest_muslim + trait = bad_priest_norse + trait = bad_priest_tengri + trait = bad_priest_zoroastrian + trait = bad_priest_aztec + trait = possessed + } + } + + reverse_opinion = { + who = event_target:satanists_recruiter + modifier = opinion_open_minded + years = 5 + } + + set_character_flag = willing_to_join + + hidden_effect = { character_event = { id = MNM.6998 } } #to recruiter - via ping: make the offer? + + ai_chance = { + factor = 50 + modifier = { + factor = 1.5 + trait = ambitious + } + modifier = { + factor = 1.1 + has_education_intrigue_trigger = yes + } + modifier = { + factor = 1.1 + has_lifestyle_intrigue_trigger = yes + } + modifier = { + factor = 1.1 + trait = trusting + } + modifier = { + factor = 1.5 + is_dumb_trigger = yes + } + modifier = { + factor = 1.5 + OR = { + trait = bad_priest_christian + trait = bad_priest_muslim + trait = bad_priest_norse + trait = bad_priest_tengri + trait = bad_priest_zoroastrian + trait = bad_priest_aztec + } + } + modifier = { + factor = 1.5 + trait = hedonist + } + modifier = { + factor = 1.5 + trait = lustful + } + modifier = { + factor = 1.5 + trait = cynical + } + modifier = { + factor = 1.5 + FROM = { diplomacy = 12 } + } + modifier = { + factor = 1.5 + FROM = { intrigue = 12 } + } + modifier = { + factor = 1.1 + FROM = { has_fair_trait_trigger = yes } + } + modifier = { + factor = 1.1 + FROM = { has_attractive_trait_trigger = yes } + } + modifier = { + factor = 1.1 + FROM = { is_attractive_trigger = yes } + } + } + } + + #You strongly discourage the recruiter + option = { + name = EVTOPTB_7003 + custom_tooltip = { text = EVTOPTB_7003_TT } + + reverse_opinion = { + who = event_target:satanists_recruiter + modifier = opinion_narrow_minded + years = 5 + } + + set_character_flag = unwilling_to_join + + clr_character_flag = being_recruited_by_the_satanists + clr_character_flag = being_recruited_by_the_trollcrafters + clr_character_flag = being_recruited_by_the_cult_of_kali + clr_character_flag = being_recruited_by_the_cold_ones + clr_character_flag = being_recruited_by_the_plaguebringers + clr_character_flag = being_recruited_by_the_bacchants + clr_character_flag = being_recruited_by_the_vodouns + + + + hidden_effect = { character_event = { id = MNM.6998 } } #to recruiter - via ping: recruit said no + + ai_chance = { + factor = 50 + modifier = { + factor = 1.5 + trait = craven + } + modifier = { + factor = 1.5 + trait = content + } + modifier = { + factor = 1.5 + FROM = { trait = ugly } + } + modifier = { + factor = 1.5 + FROM = { has_unattractive_trait_trigger = yes } + } + modifier = { + factor = 1.5 + FROM = { is_unattractive_trigger = yes } + } + } + } +} + +#For the recruiter: Can, and will, you make the offer? +character_event = { + id = MNM.7004 + picture = GFX_evt_shady_meeting + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { FROM = { has_character_flag = willing_to_join } } + text = EVTDESC_MNM_7004_A + } + desc = { + trigger = { FROM = { has_character_flag = unwilling_to_join } } + text = EVTDESC_MNM_7004_B + } + + is_triggered_only = yes + + #Pose the question (only available if recruit is willing to join) + option = { + trigger = { FROM = { has_character_flag = willing_to_join } } + name = EVTOPTA_7004 + custom_tooltip = { text = EVTOPTA_7004_TT } + + hidden_effect = { + FROM = { + character_event = { id = MNM.7005 days = 1 } + clr_character_flag = willing_to_join + } + } + + ai_chance = { factor = 100 } + } + + #Too risky, volontary end (only available if recruit is willing to join) + option = { + trigger = { FROM = { has_character_flag = willing_to_join } } + name = EVTOPTB_7004 + custom_tooltip = { text = EVTOPTB_7002_TT } + hidden_effect = { FROM = { clr_character_flag = willing_to_join } } + + ai_chance = { factor = 0 } + } + + # The recruit refuses to see it my way - Recruitment attempt ends + option = { + trigger = { FROM = { has_character_flag = unwilling_to_join } } + name = EVTOPTC_7004 + custom_tooltip = { text = EVTOPTB_7002_TT } + hidden_effect = { FROM = { clr_character_flag = unwilling_to_join } } + } +} + +#For Recruit: Join Satanists? (this is where it is more or less confirmed that this is some devil-worshiping going on) +character_event = { + id = MNM.7005 + picture = GFX_evt_shady_meeting + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { event_target:satanists_recruiter = { society_member_of = the_satanists } } # Recruiter reveals symbol on their arm + text = EVTDESC_MNM_7005_ALT + } + desc = { + trigger = { event_target:satanists_recruiter = { society_member_of = the_satanists } } + text = EVTDESC_MNM_7005_ALT2 + } + + is_triggered_only = yes + + immediate = { + hidden_effect = { + if = { + limit = { any_lover = { has_disease_trigger = yes } } + set_character_flag = has_ill_lover_loc + } + if = { + limit = { any_spouse = { has_disease_trigger = yes }} + set_character_flag = has_ill_spouse_loc + } + if = { + limit = { any_child = { has_disease_trigger = yes } } + set_character_flag = has_ill_child_loc + } + if = { + limit = { NOT = { wealth = 0 } } + set_character_flag = has_money_troubles_loc + } + if = { + limit = { NOT = { wealth = 0 } } + set_character_flag = has_money_troubles_loc + } + if = { + limit = { has_disease_trigger = yes } + set_character_flag = has_some_illness_loc + } + if = { + limit = { war = yes } + set_character_flag = has_need_of_winning_battles_loc + } + if = { + limit = { any_rival = { always = yes } } + set_character_flag = has_a_rival_loc + } + if = { + limit = { + OR = { + trait = weak + trait = feeble + trait = dwarf + trait = hunchback + } + } + set_character_flag = is_weak_loc + } + if = { + limit = { + OR = { + trait = imbecile + trait = inbred + trait = slow + } + } + set_character_flag = is_dumb_loc + } + } + } + + #Yes - can you help me [GetDWReasonToJoin]? + option = { + name = EVTOPTA_7005 + custom_tooltip = { text = EVTOPTA_7005_TT } + + hidden_effect = { character_event = { id = MNM.6997 days = 5 } } + + } + + #No - this is blasphemy, get out of my sight + option = { + name = EVTOPTB_7005 + custom_tooltip = { text = EVTOPTB_7005_TT } + clr_character_flag = being_recruited_by_the_satanists + clr_character_flag = being_recruited_by_the_trollcrafters + clr_character_flag = being_recruited_by_the_cult_of_kali + clr_character_flag = being_recruited_by_the_cold_ones + clr_character_flag = being_recruited_by_the_plaguebringers + clr_character_flag = being_recruited_by_the_vodouns + clr_character_flag = being_recruited_by_the_bacchants + + hidden_effect = { character_event = { id = MNM.6996 days = 1 } } # turn down the satanists + + ai_chance = { factor = 0 } + } +} + +#For Recruiter: Recruit said no +character_event = { + id = MNM.7006 + picture = GFX_evt_secret_ceremony + desc = EVTDESC_MNM_7006 + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { # The recruit refuses to see it my way - Recruitment attempt ends + name = EVTOPTA_7006 + custom_tooltip = { text = EVTOPTB_7002_TT } + } +} + +#For Recruiter: Recruit said yes +character_event = { + id = MNM.7007 + picture = GFX_evt_secret_ceremony + desc = EVTDESC_MNM_7007 + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + immediate = { + random_society_member = { + limit = { + society_rank >= 3 + same_society_as = event_target:satanists_recruiter + } + save_event_target_as = satanists_inductor + } + } + + option = { + name = EVTOPTA_7007 + custom_tooltip = { text = EVTOPTA_7007_TT } + + hidden_effect = { FROM = { character_event = { id = MNM.7008 } } } + } +} + +#For Recruit: Confirmation +character_event = { + id = MNM.7008 + picture = GFX_evt_secret_ceremony + desc = EVTDESC_MNM_7008 + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = EVTOPTA_7008 + custom_tooltip = { text = EVTOPTA_7008_TT } + + hidden_effect = { + character_event = { id = MNM.7009 days = 14 random = 21 } + } + } +} + +#For Recruit: Joining begins (seek out books and knowledge on the occult) +character_event = { + id = MNM.7009 + picture = GFX_evt_ritual_scroll + border = GFX_event_normal_frame_intrigue + + desc = { + text = EVTDESC_MNM_7009_ALT + } + + hide_from = yes + + is_triggered_only = yes + + trigger = { + NOR = { + prisoner = yes + event_target:satanists_recruiter = { + OR = { + is_alive = no + is_devil_worshiper_trigger = no + } + } + } + } + + fail_trigger_effect = { + if = { + limit = { + prisoner = yes + } + set_character_flag = dw_recruitment_end_unable + character_event = { id = MNM.6995 } #notify broken chain + break = yes + } + if = { + limit = { + event_target:satanists_recruiter = { + OR = { + is_alive = no + is_devil_worshiper_trigger = no + prisoner = yes + } + } + } + event_target:satanists_recruiter = { + character_event = { id = MNM.6995 } #notify broken chain + } + break = yes + } + } + + # I have been blinded by convention + option = { + name = EVTOPTA_7009 + custom_tooltip = { text = EVTOPTA_7009_TT } + remove_trait_zealous_effect = yes + + hidden_effect = { character_event = { id = MNM.7010 days = 20 random = 15 } } + } + # I can't believe I have been so gullible! + option = { + name = EVTOPTB_7009 + custom_tooltip = { text = EVTOPTA_7009_TT } + tooltip_info = trusting + + remove_trait_trusting_effect = yes + + hidden_effect = { character_event = { id = MNM.7010 days = 20 random = 15 } } + + trigger = { + trait = trusting + } + } + # I am beginning to feel that I have been missing out... + option = { + name = EVTOPTC_7009 + custom_tooltip = { text = EVTOPTA_7009_TT } + tooltip_info = chaste + + remove_trait_chaste_effect = yes + + hidden_effect = { character_event = { id = MNM.7010 days = 20 random = 15 } } + + trigger = { + trait = chaste + } + } + # I am beginning to feel that I have been missing out... + option = { + name = EVTOPTD_7009 + custom_tooltip = { text = EVTOPTA_7009_TT } + tooltip_info = charitable + + remove_trait_charitable_effect = yes + + hidden_effect = { character_event = { id = MNM.7010 days = 20 random = 15 } } + + trigger = { + trait = charitable + } + } + # Why put the needs of others before our own? + option = { + name = EVTOPTD_7009 + custom_tooltip = { text = EVTOPTA_7009_TT } + + add_trait_greedy_effect = yes + + hidden_effect = { character_event = { id = MNM.7010 days = 20 random = 15 } } + + trigger = { + NOT = { trait = charitable } + NOT = { trait = greedy } + } + } +} + +#Seal it with blood (loyalty to grand master) +character_event = { + id = MNM.7010 + picture = GFX_evt_dark_prayer + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { event_target:satanists_inductor = { society_member_of = the_satanists } } # Recruiter reveals pentagram on their arm + text = EVTDESC_MNM_7010_A + } + desc = { + trigger = { event_target:satanists_inductor = { NOT = { society_member_of = the_satanists } } } + text = EVTDESC_MNM_7010_ALT + } + + hide_from = yes + + is_triggered_only = yes + + trigger = { + NOR = { + prisoner = yes + event_target:satanists_recruiter = { + OR = { + is_alive = no + is_devil_worshiper_trigger = no + } + } + } + } + + fail_trigger_effect = { + if = { + limit = { + prisoner = yes + } + set_character_flag = dw_recruitment_end_unable + character_event = { id = MNM.6995 } #notify broken chain + break = yes + } + if = { + limit = { + event_target:satanists_recruiter = { + OR = { + is_alive = no + is_devil_worshiper_trigger = no + prisoner = yes + } + } + } + event_target:satanists_recruiter = { + character_event = { id = MNM.6995 } #notify broken chain + } + break = yes + } + } + + #Yes + option = { + name = EVTOPTA_7010 + if = { + limit = { event_target:satanists_inductor = { society_member_of = the_satanists } } + custom_tooltip = { text = EVTOPTA_7010_TT_1 } + } + if = { + limit = { event_target:satanists_inductor = { NOT = { society_member_of = the_satanists } } } + custom_tooltip = { text = EVTOPTA_7010_TT_1_ALT } + } + + hidden_effect = { character_event = { id = MNM.7012 days = 35 random = 20 } } #Inductor will get in contact with you + + add_character_modifier = { + name = bandaged_arm + days = 65 + } + + ai_chance = { + factor = 100 + } + } + + #No + option = { + name = EVTOPTB_7010 + custom_tooltip = { text = EVTOPTB_7010_TT } + + hidden_effect = { + FROM = { character_event = { id = MNM.7020 days = 60 random = 20 } } #Fail + + if = { + limit = { event_target:satanists_recruiter = { always = yes } } + event_target:satanists_recruiter = { + set_character_flag = recruitment_fail + character_event = { id = MNM.7021 } #Tell original recruiter what happened (if there is one) OR grand master of cult? + } + } + } + + ai_chance = { + factor = 0 + } + } +} + +#Sending event to inductor - hidden event to find somebody appropriate to invite you +character_event = { + id = MNM.7012 + hide_window = yes + is_triggered_only = yes + + immediate = { + if = { + limit = { NOT = { event_target:satanists_inductor = { always = yes } } } + + random_society_member = { + limit = { + society_rank >= 3 + same_society_as = event_target:satanists_recruiter + prisoner = no + } + save_event_target_as = satanists_inductor + } + } + event_target:satanists_inductor = { + set_character_flag = event_MNM_7014 + character_event = { id = MNM.7013 } + } + } +} + +#Ping event for inductors +character_event = { + id = MNM.7013 + hide_window = yes + + is_triggered_only = yes + + immediate = { + trigger_switch = { + on_trigger = has_character_flag + event_MNM_7014 = { FROM = { letter_event = { id = MNM.7014 } } } + event_MNM_7015 = { FROM = { character_event = { id = MNM.7015 days = 14 } } } + event_MNM_7016 = { FROM = { character_event = { id = MNM.7016 days = 3 } } } + event_MNM_7017 = { FROM = { character_event = { id = MNM.7017 days = 5 } } } + event_MNM_7018 = { FROM = { character_event = { id = MNM.7018 days = 1 } } } + event_MNM_7019 = { FROM = { character_event = { id = MNM.7019 days = 1 } } } + } + clr_character_flag = event_MNM_7014 + clr_character_flag = event_MNM_7015 + clr_character_flag = event_MNM_7016 + clr_character_flag = event_MNM_7017 + clr_character_flag = event_MNM_7018 + clr_character_flag = event_MNM_7019 + } +} + +#"Await the messenger" a letter reads +letter_event = { + id = MNM.7014 + desc = EVTDESC_MNM_7014 + border = GFX_event_letter_frame_intrigue + + is_triggered_only = yes + + trigger = { + NOR = { + prisoner = yes + event_target:satanists_recruiter = { + OR = { + is_alive = no + is_devil_worshiper_trigger = no + } + } + } + } + + fail_trigger_effect = { + if = { + limit = { + prisoner = yes + } + set_character_flag = dw_recruitment_end_unable + character_event = { id = MNM.6995 } #notify broken chain + break = yes + } + if = { + limit = { + event_target:satanists_recruiter = { + OR = { + is_alive = no + is_devil_worshiper_trigger = no + prisoner = yes + } + } + } + event_target:satanists_recruiter = { + character_event = { id = MNM.6995 } #notify broken chain + } + break = yes + } + } + + option = { + name = EVTOPTA_7014 + custom_tooltip = { text = EVTOPTA_7014_TT } + + hidden_effect = { + event_target:satanists_inductor = { + clr_character_flag = event_MNM_7014 + } + if = { + limit = { + prefers_men_trigger = yes + has_character_flag = being_recruited_by_the_satanists + any_society_member = { + society_member_of = the_satanists + is_female = no + is_attractive_trigger = yes + } + } + random_society_member = { + limit = { + society_member_of = the_satanists + is_female = no + is_attractive_trigger = yes + } + save_event_target_as = satanists_inductor + set_character_flag = event_MNM_7015 + character_event = { id = MNM.7013 } + break = yes + } + } + if = { + limit = { + prefers_men_trigger = yes + has_character_flag = being_recruited_by_the_trollcrafters + any_society_member = { + society_member_of = the_trollcrafters + is_female = no + is_attractive_trigger = yes + } + } + random_society_member = { + limit = { + society_member_of = the_trollcrafters + is_female = no + is_attractive_trigger = yes + } + save_event_target_as = satanists_inductor + set_character_flag = event_MNM_7015 + character_event = { id = MNM.7013 } + break = yes + } + } + if = { + limit = { + prefers_men_trigger = yes + has_character_flag = being_recruited_by_the_cult_of_kali + any_society_member = { + society_member_of = the_cult_of_kali + is_female = no + is_attractive_trigger = yes + } + } + random_society_member = { + limit = { + society_member_of = the_cult_of_kali + is_female = no + is_attractive_trigger = yes + } + save_event_target_as = satanists_inductor + set_character_flag = event_MNM_7015 + character_event = { id = MNM.7013 } + break = yes + } + } + if = { + limit = { + prefers_men_trigger = yes + has_character_flag = being_recruited_by_the_cold_ones + any_society_member = { + society_member_of = the_cold_ones + is_female = no + is_attractive_trigger = yes + } + } + random_society_member = { + limit = { + society_member_of = the_cold_ones + is_female = no + is_attractive_trigger = yes + } + save_event_target_as = satanists_inductor + set_character_flag = event_MNM_7015 + character_event = { id = MNM.7013 } + break = yes + } + } + if = { + limit = { + prefers_men_trigger = yes + has_character_flag = being_recruited_by_the_plaguebringers + any_society_member = { + society_member_of = the_plaguebringers + is_female = no + is_attractive_trigger = yes + } + } + random_society_member = { + limit = { + society_member_of = the_plaguebringers + is_female = no + is_attractive_trigger = yes + } + save_event_target_as = satanists_inductor + set_character_flag = event_MNM_7015 + character_event = { id = MNM.7013 } + break = yes + } + } + if = { + limit = { + prefers_men_trigger = yes + has_character_flag = being_recruited_by_the_bacchants + any_society_member = { + society_member_of = the_bacchants + is_female = no + is_attractive_trigger = yes + } + } + random_society_member = { + limit = { + society_member_of = the_bacchants + is_female = no + is_attractive_trigger = yes + } + save_event_target_as = satanists_inductor + set_character_flag = event_MNM_7015 + character_event = { id = MNM.7013 } + break = yes + } + } + if = { + limit = { + prefers_men_trigger = yes + has_character_flag = being_recruited_by_the_vodouns + any_society_member = { + society_member_of = the_vodouns + is_female = no + is_attractive_trigger = yes + } + } + random_society_member = { + limit = { + society_member_of = the_vodouns + is_female = no + is_attractive_trigger = yes + } + save_event_target_as = satanists_inductor + set_character_flag = event_MNM_7015 + character_event = { id = MNM.7013 } + break = yes + } + } + #start of prefer women + if = { + limit = { + prefers_men_trigger = no + has_character_flag = being_recruited_by_the_satanists + any_society_member = { + society_member_of = the_satanists + is_female = yes + is_attractive_trigger = yes + } + } + random_society_member = { + limit = { + society_member_of = the_satanists + is_female = yes + is_attractive_trigger = yes + } + save_event_target_as = satanists_inductor + set_character_flag = event_MNM_7015 + character_event = { id = MNM.7013 } + break = yes + } + } + if = { + limit = { + prefers_men_trigger = no + has_character_flag = being_recruited_by_the_trollcrafters + any_society_member = { + society_member_of = the_trollcrafters + is_female = yes + is_attractive_trigger = yes + } + } + random_society_member = { + limit = { + society_member_of = the_trollcrafters + is_female = yes + is_attractive_trigger = yes + } + save_event_target_as = satanists_inductor + set_character_flag = event_MNM_7015 + character_event = { id = MNM.7013 } + break = yes + } + } + if = { + limit = { + prefers_men_trigger = no + has_character_flag = being_recruited_by_the_cult_of_kali + any_society_member = { + society_member_of = the_cult_of_kali + is_female = yes + is_attractive_trigger = yes + } + } + random_society_member = { + limit = { + society_member_of = the_cult_of_kali + is_female = yes + is_attractive_trigger = yes + } + save_event_target_as = satanists_inductor + set_character_flag = event_MNM_7015 + character_event = { id = MNM.7013 } + break = yes + } + } + if = { + limit = { + prefers_men_trigger = no + has_character_flag = being_recruited_by_the_cold_ones + any_society_member = { + society_member_of = the_cold_ones + is_female = yes + is_attractive_trigger = yes + } + } + random_society_member = { + limit = { + society_member_of = the_cold_ones + is_female = yes + is_attractive_trigger = yes + } + save_event_target_as = satanists_inductor + set_character_flag = event_MNM_7015 + character_event = { id = MNM.7013 } + break = yes + } + } + if = { + limit = { + prefers_men_trigger = no + has_character_flag = being_recruited_by_the_plaguebringers + any_society_member = { + society_member_of = the_plaguebringers + is_female = yes + is_attractive_trigger = yes + } + } + random_society_member = { + limit = { + society_member_of = the_plaguebringers + is_female = yes + is_attractive_trigger = yes + } + save_event_target_as = satanists_inductor + set_character_flag = event_MNM_7015 + character_event = { id = MNM.7013 } + break = yes + } + } + if = { + limit = { + prefers_men_trigger = no + has_character_flag = being_recruited_by_the_bacchants + any_society_member = { + society_member_of = the_bacchants + is_female = yes + is_attractive_trigger = yes + } + } + random_society_member = { + limit = { + society_member_of = the_bacchants + is_female = yes + is_attractive_trigger = yes + } + save_event_target_as = satanists_inductor + set_character_flag = event_MNM_7015 + character_event = { id = MNM.7013 } + break = yes + } + } + if = { + limit = { + prefers_men_trigger = no + has_character_flag = being_recruited_by_the_vodouns + any_society_member = { + society_member_of = the_vodouns + is_female = yes + is_attractive_trigger = yes + } + } + random_society_member = { + limit = { + society_member_of = the_vodouns + is_female = yes + is_attractive_trigger = yes + } + save_event_target_as = satanists_inductor + set_character_flag = event_MNM_7015 + character_event = { id = MNM.7013 } + break = yes + } + } + + if = { #back up if there is no eligble society member + limit = { prefers_men_trigger = yes } + create_character = { + random_traits = yes + dynasty = none + religion = ROOT + culture = ROOT + female = no + age = 20 + attributes = { + intrigue = 5 + } + trait = elusive_shadow + historical = yes + } + new_character = { + remove_trait = ugly + remove_trait = hunchback + remove_trait = dwarf + remove_trait = chaste + add_trait = lustful + add_trait = fair + save_event_target_as = satanists_inductor + set_character_flag = event_MNM_7015 + ROOT = { + trigger_switch = { + on_trigger = has_character_flag + being_recruited_by_the_satanists = { PREV = { join_society = the_satanists } } + being_recruited_by_the_trollcrafters = { PREV = { join_society = the_trollcrafters } } + being_recruited_by_the_cult_of_kali = { PREV = { join_society = the_cult_of_kali } } + being_recruited_by_the_cold_ones = { PREV = { join_society = the_cold_ones } } + being_recruited_by_the_plaguebringers = { PREV = { join_society = the_plaguebringers } } + being_recruited_by_the_vodouns = { PREV = { join_society = the_vodouns } } + being_recruited_by_the_bacchants = { PREV = { join_society = the_bacchants } } + } + } + character_event = { id = MNM.7013 } + } + } + if = { limit = { prefers_men_trigger = no } + create_character = { + random_traits = yes + dynasty = none + religion = ROOT + culture = ROOT + female = yes + age = 20 + attributes = { + intrigue = 5 + } + trait = elusive_shadow + historical = yes + } + new_character = { + remove_trait = ugly + remove_trait = hunchback + remove_trait = dwarf + remove_trait = chaste + add_trait = lustful + add_trait = fair + save_event_target_as = satanists_inductor + set_character_flag = event_MNM_7015 + ROOT = { + trigger_switch = { + on_trigger = has_character_flag + being_recruited_by_the_satanists = { PREV = { join_society = the_satanists } } + being_recruited_by_the_trollcrafters = { PREV = { join_society = the_trollcrafters } } + being_recruited_by_the_cult_of_kali = { PREV = { join_society = the_cult_of_kali } } + being_recruited_by_the_cold_ones = { PREV = { join_society = the_cold_ones } } + being_recruited_by_the_plaguebringers = { PREV = { join_society = the_plaguebringers } } + being_recruited_by_the_vodouns = { PREV = { join_society = the_vodouns } } + being_recruited_by_the_bacchants = { PREV = { join_society = the_bacchants } } + } + } + character_event = { id = MNM.7013 } + } + } + } + } +} + +##ping event for the messenger +#character_event = { +# id = MNM.7011 +# hide_window = yes# + +# is_triggered_only = yes# + +# immediate = { FROM = { character_event = { id = MNM.7015 days = 5 } } } +#} + +#For Recruit: Have met an intriguing person at court +character_event = { + id = MNM.7015 + picture = GFX_evt_shady_meeting + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { event_target:satanists_inductor = { society_member_of = the_satanists } } + text = EVTDESC_MNM_7015 + } + desc = { + trigger = { event_target:satanists_inductor = { NOT = { society_member_of = the_satanists } } } + text = EVTDESC_MNM_7015_ALT + } + + is_triggered_only = yes + + trigger = { + NOR = { + prisoner = yes + event_target:satanists_inductor = { + OR = { + is_alive = no + is_devil_worshiper_trigger = no + } + } + } + } + + fail_trigger_effect = { + if = { + limit = { + prisoner = yes + } + set_character_flag = dw_recruitment_end_unable + character_event = { id = MNM.6993 } #notify broken chain + break = yes + } + if = { + limit = { + event_target:satanists_inductor = { + OR = { + is_alive = no + is_devil_worshiper_trigger = no + } + } + } + event_target:satanists_inductor = { + character_event = { id = MNM.6993 } #notify broken chain + } + break = yes + } + } + + option = { + name = EVTOPTA_7015 + + hidden_effect = { + character_event = { id = MNM.6994 } + } + } +} + +# Safety ping +character_event = { + id = MNM.6994 + hide_window = yes + + is_triggered_only = yes + + immediate = { + if = { + limit = { + prisoner = yes + } + set_character_flag = dw_recruitment_end_unable + character_event = { id = MNM.6993 } + break = yes + } + if = { + limit = { + event_target:satanists_inductor = { is_alive = yes } + } + event_target:satanists_inductor = { + clr_character_flag = event_MNM_7015 + set_character_flag = event_MNM_7016 + character_event = { id = MNM.7013 } + } + break = yes + } + # Else notify failure + character_event = { id = MNM.6993 } + } +} + +character_event = { + id = MNM.6989 + hide_window = yes + + is_triggered_only = yes + + immediate = { + if = { + limit = { + prisoner = yes + } + set_character_flag = dw_recruitment_end_unable + character_event = { id = MNM.6993 } + break = yes + } + if = { + limit = { + event_target:satanists_inductor = { is_alive = yes } + } + event_target:satanists_inductor = { + clr_character_flag = event_MNM_7017 + set_character_flag = event_MNM_7018 + character_event = { id = MNM.7013 } + } + break = yes + } + # Else notify failure + character_event = { id = MNM.6993 } + } +} + +character_event = { + id = MNM.6988 + hide_window = yes + + is_triggered_only = yes + + immediate = { + if = { + limit = { + prisoner = yes + } + set_character_flag = dw_recruitment_end_unable + character_event = { id = MNM.6993 } + break = yes + } + if = { + limit = { + event_target:satanists_inductor = { is_alive = yes } + } + event_target:satanists_inductor = { + clr_character_flag = event_MNM_7017 + set_character_flag = event_MNM_7019 + character_event = { id = MNM.7013 } + + } + break = yes + } + # Else notify failure + character_event = { id = MNM.6993 } + } +} + +character_event = { + id = MNM.6987 + hide_window = yes + + is_triggered_only = yes + + immediate = { + if = { + limit = { + prisoner = yes + } + set_character_flag = dw_recruitment_end_unable + character_event = { id = MNM.6993 } + break = yes + } + if = { + limit = { + event_target:satanists_inductor = { is_alive = yes } + } + event_target:satanists_inductor = { + clr_character_flag = event_MNM_7016 + set_character_flag = event_MNM_7017 + character_event = { id = MNM.7013 } + } + break = yes + } + # Else notify failure + character_event = { id = MNM.6993 } + } +} + +character_event = { + id = MNM.6993 + desc = { + text = EVTDESCA_MNM_6993 + trigger = { NOT = { has_character_flag = dw_recruitment_end_unable } } + } + desc = { + text = EVTDESCB_MNM_6993 + trigger = { has_character_flag = dw_recruitment_end_unable } + picture = GFX_evt_into_the_dungeon + } + picture = GFX_evt_dark_prayer + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + show_root = yes + + option = { + name = { + text = EVTOPTA_MNM_6993 + trigger = { NOT = { has_character_flag = dw_recruitment_end_unable } } + } + name = { + text = EVTOPTB_MNM_6993 + trigger = { has_character_flag = dw_recruitment_end_unable } + } + custom_tooltip = { text = EVTTOOLTIP_MNM_6993 } + clr_character_flag = being_recruited_by_the_satanists + clr_character_flag = being_recruited_by_the_trollcrafters + clr_character_flag = being_recruited_by_the_cult_of_kali + clr_character_flag = being_recruited_by_the_cold_ones + clr_character_flag = being_recruited_by_the_plaguebringers + clr_character_flag = being_recruited_by_the_vodouns + clr_character_flag = being_recruited_by_the_bacchants + clr_character_flag = dw_recruitment_end_unable + } +} + +#Meet the Seducer/Seductress who then leads you away +character_event = { + id = MNM.7016 + picture = GFX_evt_secret_ceremony + desc = EVTDESC_MNM_7016 + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + trigger = { + NOR = { + prisoner = yes + event_target:satanists_inductor = { + OR = { + is_alive = no + is_devil_worshiper_trigger = no + } + } + } + } + + fail_trigger_effect = { + if = { + limit = { + prisoner = yes + } + set_character_flag = dw_recruitment_end_unable + character_event = { id = MNM.6993 } #notify broken chain + break = yes + } + if = { + limit = { + event_target:satanists_inductor = { + OR = { + is_alive = no + is_devil_worshiper_trigger = no + } + } + } + event_target:satanists_inductor = { + character_event = { id = MNM.6993 } #notify broken chain + } + break = yes + } + } + + option = { + name = EVTOPTA_7016 + custom_tooltip = { text = EVTOPTA_7016_TT } + + hidden_effect = { + character_event = { id = MNM.6987 } + } + } +} + +# Prove your ambition +character_event = { + id = MNM.7017 + picture = GFX_evt_secret_ceremony + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { } + text = EVTDESC_MNM_7017_A + } + + is_triggered_only = yes + + immediate = { + + } + + #Anything for the coven and the power you offer + option = { + name = EVTOPTA_7017 + custom_tooltip = { text = EVTOPTA_7017_TT } + + hidden_effect = { + character_event = { id = MNM.6989 } + } + + ai_chance = { factor = 100 } + } + + #I... I can't do this! + option = { + name = { + text = EVTOPTB_7017 + trigger = { + OR = { + is_married = no + any_spouse = { + character = event_target:satanists_inductor + } + } + } + } + name = { + text = EVTOPTC_7017 #I am married! (and not to the inductor) + trigger = { + is_married = yes + NOT = { + any_spouse = { + character = event_target:satanists_inductor + } + } + } + } + custom_tooltip = { text = EVTOPTB_7017_TT } + + hidden_effect = { + random_list = { + #Getaway + 33 = { + set_character_flag = escape_successful + + modifier = { + factor = 1.4 + attribute_diff = { character = FROM attribute = intrigue value = 2 } + } + modifier = { + factor = 1.4 + attribute_diff = { character = FROM attribute = intrigue value = 4 } + } + modifier = { + factor = 1.4 + attribute_diff = { character = FROM attribute = intrigue value = 6 } + } + modifier = { + factor = 1.4 + combat_rating_diff = { character = FROM value = 10 } + } + modifier = { + factor = 1.4 + combat_rating_diff = { character = FROM value = 20 } + } + modifier = { + factor = 1.4 + combat_rating_diff = { character = FROM value = 30 } + } + } + #Injured + 33 = { + set_character_flag = escape_injured + } + #Death + 33 = { + set_character_flag = escape_death + modifier = { + factor = 1.4 + FROM = { attribute_diff = { character = ROOT attribute = intrigue value = 2 } } + } + modifier = { + factor = 1.4 + FROM = { attribute_diff = { character = ROOT attribute = intrigue value = 4 } } + } + modifier = { + factor = 1.4 + FROM = { attribute_diff = { character = ROOT attribute = intrigue value = 6 } } + } + modifier = { + factor = 1.4 + FROM = { combat_rating_diff = { character = ROOT value = 10 } } + } + modifier = { + factor = 1.4 + FROM = { combat_rating_diff = { character = ROOT value = 20 } } + } + modifier = { + factor = 1.4 + FROM = { combat_rating_diff = { character = ROOT value = 30 } } + } + } + } + + character_event = { id = MNM.6988 } + } + + ai_chance = { factor = 0 } + } +} + +#You are a member! - The inductor sleeping soundly +character_event = { + id = MNM.7018 + picture = GFX_evt_dark_love + desc = EVTDESC_MNM_7018 + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + immediate = { + #If original recruiter is still around, find Grand Master and have them send word of success to that original recruiter + hidden_effect = { + if = { + limit = { event_target:satanists_recruiter = { always = yes } } + event_target:satanists_recruiter = { set_character_flag = recruitment_success } + + if = { limit = { has_character_flag = being_recruited_by_the_satanists } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_satanists + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_trollcrafters } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_trollcrafters + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_cult_of_kali } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_cult_of_kali + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_cold_ones } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_cold_ones + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_plaguebringers } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_plaguebringers + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_vodouns } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_vodouns + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_bacchants } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_bacchants + } + } + save_event_target_as = grand_master + } + } + event_target:grand_master = { character_event = { id = MNM.7021 } } + } + } + } + + option = { + name = EVTOPTA_7018 # I wish you'd found me sooner + + if = { + limit = { has_character_flag = being_recruited_by_the_satanists } + join_society = the_satanists + } + if = { + limit = { has_character_flag = being_recruited_by_the_trollcrafters } + join_society = the_trollcrafters + } + if = { + limit = { has_character_flag = being_recruited_by_the_cult_of_kali } + join_society = the_cult_of_kali + } + if = { + limit = { has_character_flag = being_recruited_by_the_cold_ones } + join_society = the_cold_ones + } + if = { + limit = { has_character_flag = being_recruited_by_the_plaguebringers } + join_society = the_plaguebringers + } + if = { + limit = { has_character_flag = being_recruited_by_the_vodouns } + join_society = the_vodouns + } + if = { + limit = { has_character_flag = being_recruited_by_the_bacchants } + join_society = the_bacchants + } + + if = { + limit = { ai = no } + } + + opinion = { + who = event_target:satanists_inductor + modifier = opinion_budding_romance + } + + event_target:satanists_inductor = { + opinion = { + who = ROOT + modifier = opinion_budding_friendship + } + } + + hidden_effect = { + clr_character_flag = being_recruited_by_the_satanists + clr_character_flag = being_recruited_by_the_trollcrafters + clr_character_flag = being_recruited_by_the_cult_of_kali + clr_character_flag = being_recruited_by_the_cold_ones + clr_character_flag = being_recruited_by_the_plaguebringers + clr_character_flag = being_recruited_by_the_vodouns + clr_character_flag = being_recruited_by_the_bacchants + } + } + option = { + name = EVTOPTB_7018 # this was a necessary evil + + if = { + limit = { has_character_flag = being_recruited_by_the_satanists } + join_society = the_satanists + } + if = { + limit = { has_character_flag = being_recruited_by_the_trollcrafters } + join_society = the_trollcrafters + } + if = { + limit = { has_character_flag = being_recruited_by_the_cult_of_kali } + join_society = the_cult_of_kali + } + if = { + limit = { has_character_flag = being_recruited_by_the_cold_ones } + join_society = the_cold_ones + } + if = { + limit = { has_character_flag = being_recruited_by_the_plaguebringers } + join_society = the_plaguebringers + } + if = { + limit = { has_character_flag = being_recruited_by_the_vodouns } + join_society = the_vodouns + } + if = { + limit = { has_character_flag = being_recruited_by_the_bacchants } + join_society = the_bacchants + } + + event_target:satanists_inductor = { + opinion = { + who = ROOT + modifier = opinion_very_disappointed + } + } + + hidden_effect = { + if = { + limit = { event_target:satanists_recruiter = { always = yes } } + event_target:satanists_recruiter = { set_character_flag = recruitment_success } #notify original recruiter + if = { limit = { has_character_flag = being_recruited_by_the_satanists } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_satanists + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_trollcrafters } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_trollcrafters + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_cult_of_kali } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_cult_of_kali + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_cold_ones } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_cold_ones + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_plaguebringers } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_plaguebringers + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_bacchants } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_bacchants + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_vodouns } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_vodouns + } + } + save_event_target_as = grand_master + } + } + event_target:grand_master = { character_event = { id = MNM.7021 } } + } + clr_character_flag = being_recruited_by_the_satanists + clr_character_flag = being_recruited_by_the_trollcrafters + clr_character_flag = being_recruited_by_the_cult_of_kali + clr_character_flag = being_recruited_by_the_cold_ones + clr_character_flag = being_recruited_by_the_plaguebringers + clr_character_flag = being_recruited_by_the_vodouns + clr_character_flag = being_recruited_by_the_bacchants + } + } +} + +#You flee +character_event = { + id = MNM.7019 + picture = GFX_evt_secret_ceremony + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { has_character_flag = escape_successful } + text = EVTDESC_MNM_7019_A + } + desc = { + trigger = { has_character_flag = escape_injured } + text = EVTDESC_MNM_7019_B + } + desc = { + trigger = { has_character_flag = escape_death } + text = EVTDESC_MNM_7019_C + } + + is_triggered_only = yes + + immediate = { + #If original recruiter is still around, find Grand Master and have them send word of failure to that original recruiter + hidden_effect = { + if = { + limit = { event_target:satanists_recruiter = { always = yes } } + event_target:satanists_recruiter = { set_character_flag = recruitment_fail } + + if = { limit = { has_character_flag = being_recruited_by_the_satanists } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_satanists + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_trollcrafters } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_trollcrafters + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_cult_of_kali } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_cult_of_kali + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_cold_ones } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_cold_ones + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_plaguebringers } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_plaguebringers + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_vodouns } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_vodouns + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_bacchants } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_bacchants + } + } + save_event_target_as = grand_master + } + } + event_target:grand_master = { character_event = { id = MNM.7021 } } + } + } + + clr_character_flag = being_recruited_by_the_satanists + clr_character_flag = being_recruited_by_the_trollcrafters + clr_character_flag = being_recruited_by_the_cult_of_kali + clr_character_flag = being_recruited_by_the_cold_ones + clr_character_flag = being_recruited_by_the_plaguebringers + clr_character_flag = being_recruited_by_the_vodouns + clr_character_flag = being_recruited_by_the_bacchants + } + + #Escape successfully + option = { + trigger = { has_character_flag = escape_successful } + name = EVTOPTA_7019 + custom_tooltip = { text = EVTOPTA_7019_TT } + + clr_character_flag = escape_successful + } + + #Escaped but got injured + option = { + trigger = { has_character_flag = escape_injured } + name = EVTOPTB_7019 + custom_tooltip = { text = EVTOPTB_7019_TT } + + clr_character_flag = escape_injured + + add_maimed_trait_effect = yes + } + + #Escaped but died + option = { + trigger = { has_character_flag = escape_death } + name = EVTOPTC_7019 + custom_tooltip = { text = EVTOPTC_7019_TT } + + death = { death_reason = death_murder_unknown killer = FROM } + } +} + +#Opt out failstate +character_event = { + id = MNM.7020 + picture = GFX_evt_secret_ceremony + desc = EVTDESC_MNM_7020 + border = GFX_event_normal_frame_intrigue + + hide_from = yes + + is_triggered_only = yes + + option = { + name = EVTOPTA_7020 + custom_tooltip = { text = EVTOPTA_7020_TT} + clr_character_flag = being_recruited_by_the_satanists + clr_character_flag = being_recruited_by_the_trollcrafters + clr_character_flag = being_recruited_by_the_cult_of_kali + clr_character_flag = being_recruited_by_the_cold_ones + clr_character_flag = being_recruited_by_the_plaguebringers + clr_character_flag = being_recruited_by_the_vodouns + clr_character_flag = being_recruited_by_the_bacchants + } +} + +#Ping event GM for outcome notification +character_event = { + id = MNM.7021 + hide_window = yes + + is_triggered_only = yes + + immediate = { event_target:satanists_recruiter = { letter_event = { id = MNM.7022 days = 5 } } } +} + +#Outcome of recruitment for the original recruiter (if there is one) +letter_event = { + id = MNM.7022 + border = GFX_event_letter_frame_intrigue + + trigger = { is_devil_worshiper_trigger = yes } + + desc = { + trigger = { has_character_flag = recruitment_success } + text = EVTDESC_MNM_7022_A + } + desc = { + trigger = { has_character_flag = recruitment_fail } + text = EVTDESC_MNM_7022_B + } + + is_triggered_only = yes + + option = { + trigger = { has_character_flag = recruitment_success } + name = EXCELLENT + + add_society_currency_medium_effect = yes + clr_character_flag = recruitment_success + } + + option = { + trigger = { has_character_flag = recruitment_fail } + name = CURSES + + clr_character_flag = recruitment_fail + + } +} + +#First ping event for joining in case inductor(s) died +character_event = { + id = MNM.7030 + hide_window = yes + + is_triggered_only = yes + + immediate = { + hidden_effect = { + if = { + limit = { + AND = { + is_in_society = no + OR = { + has_character_flag = being_recruited_by_the_satanists + has_character_flag = being_recruited_by_the_trollcrafters + has_character_flag = being_recruited_by_the_cult_of_kali + has_character_flag = being_recruited_by_the_cold_ones + has_character_flag = being_recruited_by_the_plaguebringers + has_character_flag = being_recruited_by_the_vodouns + has_character_flag = being_recruited_by_the_bacchants + has_character_flag = assassins_attempted_recruitment + } + } + } + if = { limit = { has_character_flag = being_recruited_by_the_satanists } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_satanists + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_trollcrafters } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_trollcrafters + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_cult_of_kali } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_cult_of_kali + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_cold_ones } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_cold_ones + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_plaguebringers } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_plaguebringers + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_vodouns } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_vodouns + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = being_recruited_by_the_bacchants } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_bacchants + } + } + save_event_target_as = grand_master + } + } + if = { limit = { has_character_flag = assassins_attempted_recruitment } + random_society_member = { + limit = { + society_rank = { + rank == 4 + society = the_assassins + } + } + save_event_target_as = grand_master + } + } + event_target:grand_master = { character_event = { id = MNM.7031 } } + } + #Assassins + clr_character_flag = ongoing_recruitment + clr_character_flag = approves_of_shia + clr_character_flag = disapproves_of_shia + clr_character_flag = willing_to_join + clr_character_flag = unwilling_to_join + clr_character_flag = escape_successful + clr_character_flag = escape_injured + clr_character_flag = escape_death + clr_character_flag = escape_bribe + #Devil Worshipers + clr_character_flag = approves_of_satanism + clr_character_flag = disapproves_of_satanism + clr_character_flag = has_ill_lover_loc + clr_character_flag = has_ill_spouse_loc + clr_character_flag = has_ill_child_loc + clr_character_flag = has_money_troubles_loc + clr_character_flag = has_some_illness_loc + clr_character_flag = has_need_of_winning_battles_loc + clr_character_flag = has_a_rival_loc + clr_character_flag = is_weak_loc + clr_character_flag = is_dumb_loc + } + } +} + +#Second ping event for joining in case inductor(s) died +character_event = { + id = MNM.7031 + hide_window = yes + + is_triggered_only = yes + + immediate = { + FROM = { + letter_event = { id = MNM.7032 } + } + } +} + +#Joining event in case inductor(s) died +letter_event = { + id = MNM.7032 + desc = { + trigger = { NOT = { FROM = { society_member_of = the_assassins } } } + text = EVTDESC_MNM_7032_A + } + desc = { + trigger = { FROM = { society_member_of = the_assassins } } + text = EVTDESC_MNM_7032_B + } + border = GFX_event_letter_frame_intrigue + + is_triggered_only = yes + + option = { + name = EVTOPTA_7032 #I will join + if = { + limit = { has_character_flag = being_recruited_by_the_satanists } + join_society = the_satanists + } + if = { + limit = { has_character_flag = being_recruited_by_the_trollcrafters } + join_society = the_trollcrafters + } + if = { + limit = { has_character_flag = being_recruited_by_the_cult_of_kali } + join_society = the_cult_of_kali + } + if = { + limit = { has_character_flag = being_recruited_by_the_cold_ones } + join_society = the_cold_ones + } + if = { + limit = { has_character_flag = being_recruited_by_the_plaguebringers } + join_society = the_plaguebringers + } + if = { + limit = { has_character_flag = being_recruited_by_the_vodouns } + join_society = the_vodouns + } + if = { + limit = { has_character_flag = being_recruited_by_the_bacchants } + join_society = the_bacchants + } + if = { + limit = { has_character_flag = assassins_attempted_recruitment } + join_society = the_assassins + } + + hidden_effect = { + clr_character_flag = being_recruited_by_the_satanists + clr_character_flag = being_recruited_by_the_trollcrafters + clr_character_flag = being_recruited_by_the_cult_of_kali + clr_character_flag = being_recruited_by_the_cold_ones + clr_character_flag = being_recruited_by_the_plaguebringers + clr_character_flag = being_recruited_by_the_vodouns + clr_character_flag = being_recruited_by_the_bacchants + clr_character_flag = assassins_attempted_recruitment + } + } + + option = { + name = EVTOPTB_7032 #Changed my mind + event_target:grand_master = { + opinion = { + who = ROOT + modifier = opinion_very_disappointed + } + } + hidden_effect = { + clr_character_flag = being_recruited_by_the_satanists + clr_character_flag = being_recruited_by_the_trollcrafters + clr_character_flag = being_recruited_by_the_cult_of_kali + clr_character_flag = being_recruited_by_the_cold_ones + clr_character_flag = being_recruited_by_the_plaguebringers + clr_character_flag = being_recruited_by_the_vodouns + clr_character_flag = being_recruited_by_the_bacchants + clr_character_flag = assassins_attempted_recruitment + } + ai_chance = { factor = 0 } + } +} + +#Soul Corruption event +character_event = { + id = MNM.7050 + picture = GFX_evt_dark_prayer + desc = EVTDESC_MNM_7050 + border = GFX_event_normal_frame_intrigue + + hide_from = yes + + is_triggered_only = yes + option = { + name = EVTOPTA_MNM_7050 + trigger_switch = { + on_trigger = has_character_flag + corruption_remove_kind = { + remove_trait = kind + clr_character_flag = corruption_remove_kind + } + corruption_add_cruel = { + add_trait = cruel + clr_character_flag = corruption_add_cruel + } + corruption_remove_just = { + remove_trait = just + clr_character_flag = corruption_remove_just + } + corruption_add_arbitrary = { + add_trait = arbitrary + clr_character_flag = corruption_add_arbitrary + } + corruption_remove_honest = { + remove_trait = honest + clr_character_flag = corruption_remove_honest + } + corruption_add_deceitful = { + add_trait = deceitful + clr_character_flag = corruption_add_deceitful + } + corruption_add_possessed = { + add_trait = possessed + clr_character_flag = corruption_add_possessed + } + } + } +} + +#Soul corruption adds stress +character_event = { + id = MNM.7051 + desc = EVTDESC_MNM_7051 + picture = GFX_evt_illness + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + hide_from = yes + + trigger = { + NOT = { trait = stressed } + } + + option = { + name = EVTOPTA_MNM_7051 + custom_tooltip = { text = EVTOPTA_MNM_7051_TT } + add_trait = stressed + } +} + +#Soul corruption adds lunatic +character_event = { + id = MNM.7052 + desc = EVTDESC_MNM_7052 + picture = GFX_evt_lunatic + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + hide_from = yes + + trigger = { + NOT = { trait = lunatic } + } + + option = { + name = EVTOPTA_MNM_7052 + custom_tooltip = { text = EVTOPTA_MNM_7051_TT } + add_trait = lunatic + } +} + +#Soul corruption adds stutter +character_event = { + id = MNM.7053 + desc = EVTDESC_MNM_7053 + picture = GFX_evt_uncomfortable + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + hide_from = yes + + trigger = { + NOT = { trait = stutter } + } + + option = { + name = EVTOPTA_MNM_7051 + custom_tooltip = { text = EVTOPTA_MNM_7051_TT } + add_trait = stutter + } +} + +#Soul corruption adds clubfooted +character_event = { + id = MNM.7054 + desc = EVTDESC_MNM_7054 + picture = GFX_evt_uncomfortable + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + hide_from = yes + + trigger = { + NOT = { trait = clubfooted } + } + + option = { + name = EVTOPTA_MNM_7051 + custom_tooltip = { text = EVTOPTA_MNM_7051_TT } + add_trait = clubfooted + } +} + +#Soul corruption adds hunchback +character_event = { + id = MNM.7055 + desc = EVTDESC_MNM_7055 + picture = GFX_evt_uncomfortable + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + hide_from = yes + + trigger = { + NOT = { trait = hunchback } + } + + option = { + name = EVTOPTA_MNM_7051 + custom_tooltip = { text = EVTOPTA_MNM_7051_TT } + add_trait = hunchback + } +} + +#Soul corruption adds ugly +character_event = { + id = MNM.7056 + desc = EVTDESC_MNM_7056 + picture = GFX_evt_uncomfortable + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + hide_from = yes + + trigger = { + NOT = { trait = ugly } + } + + option = { + name = EVTOPTA_MNM_7051 + custom_tooltip = { text = EVTOPTA_MNM_7051_TT } + add_trait = ugly + hidden_effect = { remove_trait = fair } + } +} + +#Soul corruption adds corrupting_magic_major +character_event = { + id = MNM.7057 + desc = EVTDESC_MNM_7057_NEW + picture = GFX_evt_illness + border = GFX_event_normal_frame_intrigue + + notification = yes + + is_triggered_only = yes + hide_from = yes + + #trigger = { + # NOR = { + # NOT = { health = 3 } + # has_character_modifier = corrupting_magic_minor + # has_character_modifier = corrupting_magic_major + # } + #} + + immediate = { + add_character_modifier = { + name = corrupting_magic_minor + years = 5 + stacking = yes + } + add_character_modifier = { + name = corrupting_magic_minor + years = 5 + stacking = yes + } + } + + option = { + name = EVTOPTA_MNM_7051 + custom_tooltip = { text = EVTOPTA_MNM_7051_TT } + } +} + + +#Soul corruption adds corrupting_magic_minor +character_event = { + id = MNM.7058 + desc = EVTDESC_MNM_7057_NEW + picture = GFX_evt_illness + border = GFX_event_normal_frame_intrigue + + notification = yes + + is_triggered_only = yes + hide_from = yes + + #trigger = { + # NOR = { + # NOT = { health = 3 } + # has_character_modifier = corrupting_magic_minor + # has_character_modifier = corrupting_magic_major + # } + #} + + immediate = { + add_character_modifier = { + name = corrupting_magic_minor + years = 5 + stacking = yes + } + } + + option = { + name = EVTOPTA_MNM_7051 + custom_tooltip = { text = EVTOPTA_MNM_7051_TT } + } +} + +#Soul corruption adds frail +character_event = { + id = MNM.7059 + desc = EVTDESC_MNM_7059 + picture = GFX_evt_illness + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + hide_from = yes + + trigger = { + NOR = { + trait = feeble + trait = weak + trait = strong + } + } + + option = { + name = EVTOPTA_MNM_7051 + custom_tooltip = { text = EVTOPTA_MNM_7051_TT } + add_trait = feeble + hidden_effect = { remove_trait = robust } + } +} + +### MISSIONS ### + +#Desecration temporarily moved to mnm_devil_worshipers_events_axel to prevent future conflicts + +### POWERS ### + +#Power: Corrupt a priest + +#Ping event for Corrupt a priest +character_event = { + id = MNM.7825 + hide_window = yes + + is_triggered_only = yes + + immediate = { + save_event_target_as = corrupt_priest_target + FROMFROM = { + save_event_target_as = corrupt_priest_spell_caster + } + event_target:corrupt_priest_spell_caster = { + character_event = { id = MNM.7826 } + } + } +} + +#Corrupt a Priest (find out whether corruptible) +character_event = { + id = MNM.7826 + picture = GFX_evt_dark_prayer + desc = EVTDESC_MNM_7826 + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + trigger = { + is_devil_worshiper_trigger = yes + } + + option = { + name = EVTOPTA_MNM_7826 #try to find something new to corrupt them with (add new sinful traits) + trigger = { + event_target:corrupt_priest_target = { + OR = { + AND = { + NOT = { trait = lustful } + NOT = { trait = chaste } + } + AND = { + NOT = { trait = temperate } + NOT = { trait = gluttonous } + } + AND = { + NOT = { trait = charitable } + NOT = { trait = greedy } + } + AND = { + NOT = { trait = diligent } + NOT = { trait = slothful } + } + AND = { + NOT = { trait = kind } + OR = { + NOT = { trait = envious } + NOT = { trait = cruel } + } + } + AND = { + NOT = { trait = patient } + NOT = { trait = wroth } + } + AND = { + NOT = { trait = humble } + NOT = { trait = proud } + } + AND = { + NOT = { trait = honest } + NOT = { trait = deceitful } + } + AND = { + NOT = { trait = just } + NOT = { trait = arbitrary } + } + } + } + } + custom_tooltip = { text = EVTOPTA_MNM_7826_TOOLTIP } + hidden_effect = { + event_target:corrupt_priest_target = { + character_event = { id = MNM.7827 days = 3 random = 27 } + } + } + } + option = { + name = EVTOPTB_MNM_7826 #remove virtues (slight chance to add new sinful traits) + trigger = { + event_target:corrupt_priest_target = { + OR = { + trait = chaste + trait = temperate + trait = charitable + trait = diligent + trait = kind + trait = patient + trait = humble + trait = honest + trait = just + } + } + } + custom_tooltip = { text = EVTOPTB_MNM_7826_TOOLTIP } + hidden_effect = { + event_target:corrupt_priest_target = { + character_event = { id = MNM.7828 days = 3 random = 27 } + } + } + } + option = { + name = EVTOPTC_MNM_7826 #nevermind I'm a nice guy + custom_tooltip = { text = EVTOPTC_MNM_7826_TOOLTIP } + hidden_effect = { + event_target:corrupt_priest_target = { + clr_character_flag = attempted_corrupt_priest + } + } + } +} + +#Ping event for Corrupt a Priest find new sinful traits +character_event = { + id = MNM.7827 + hide_window = yes + + is_triggered_only = yes + + trigger = { + FROM = { is_devil_worshiper_trigger = yes } + } + + immediate = { + event_target:corrupt_priest_target = { + random_list = { + 10 = { + modifier = { + factor = 0 + OR = { + trait = lustful + trait = chaste + } + } + set_character_flag = corrupt_priest_add_lustful + } + 10 = { + modifier = { + factor = 0 + OR = { + trait = gluttonous + trait = temperate + } + } + set_character_flag = corrupt_priest_add_gluttonous + } + 10 = { + modifier = { + factor = 0 + OR = { + trait = greedy + trait = charitable + } + } + set_character_flag = corrupt_priest_add_greedy + } + 10 = { + modifier = { + factor = 0 + OR = { + trait = slothful + trait = diligent + } + } + set_character_flag = corrupt_priest_add_slothful + } + 10 = { + modifier = { + factor = 0 + OR = { + trait = envious + trait = kind + } + } + set_character_flag = corrupt_priest_add_envious + } + 10 = { + modifier = { + factor = 0 + OR = { + trait = wroth + trait = patient + } + } + set_character_flag = corrupt_priest_add_wroth + } + 10 = { + modifier = { + factor = 0 + OR = { + trait = proud + trait = humble + } + } + set_character_flag = corrupt_priest_add_proud + } + 10 = { + modifier = { + factor = 0 + OR = { + trait = deceitful + trait = honest + } + } + set_character_flag = corrupt_priest_add_deceitful + } + 10 = { + modifier = { + factor = 0 + OR = { + trait = arbitrary + trait = just + } + } + set_character_flag = corrupt_priest_add_arbitrary + } + 10 = { + modifier = { + factor = 0 + OR = { + trait = cruel + trait = kind + } + } + set_character_flag = corrupt_priest_add_cruel + } + } + } + event_target:corrupt_priest_spell_caster = { + character_event = { id = MNM.7830 } + } + } +} + +#Ping event for Corrupt a Priest remove virtue traits +character_event = { + id = MNM.7828 + hide_window = yes + + is_triggered_only = yes + + immediate = { + event_target:corrupt_priest_target = { + random_list = { + 10 = { + modifier = { + factor = 0 + NOT = { trait = chaste } + } + set_character_flag = corrupt_priest_remove_chaste + } + 10 = { + modifier = { + factor = 0 + NOT = { trait = temperate } + } + set_character_flag = corrupt_priest_remove_temperate + } + 10 = { + modifier = { + factor = 0 + NOT = { trait = charitable } + } + set_character_flag = corrupt_priest_remove_charitable + } + 10 = { + modifier = { + factor = 0 + NOT = { trait = diligent } + } + set_character_flag = corrupt_priest_remove_diligent + } + 10 = { + modifier = { + factor = 0 + NOT = { trait = kind } + } + set_character_flag = corrupt_priest_remove_kind + } + 10 = { + modifier = { + factor = 0 + NOT = { trait = patient } + } + set_character_flag = corrupt_priest_remove_patient + } + 10 = { + modifier = { + factor = 0 + NOT = { trait = humble } + } + set_character_flag = corrupt_priest_remove_humble + } + 10 = { + modifier = { + factor = 0 + NOT = { trait = honest } + } + set_character_flag = corrupt_priest_remove_honest + } + 10 = { + modifier = { + factor = 0 + NOT = { trait = just } + } + set_character_flag = corrupt_priest_remove_just + } + } + } + event_target:corrupt_priest_spell_caster = { + character_event = { id = MNM.7835 } + } + } +} + +#Corrupt a priest add trait: corrupt them! +character_event = { + id = MNM.7830 + picture = GFX_evt_eavesdropping + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_add_lustful + } + } + text = EVTDESC_MNM_7830_lustful + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_add_gluttonous + } + } + text = EVTDESC_MNM_7830_gluttonous + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_add_greedy + } + } + text = EVTDESC_MNM_7830_greedy + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_add_slothful + } + } + text = EVTDESC_MNM_7830_slothful + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_add_envious + } + } + text = EVTDESC_MNM_7830_envious + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_add_wroth + } + } + text = EVTDESC_MNM_7830_wroth + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_add_proud + } + } + text = EVTDESC_MNM_7830_proud + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_add_deceitful + } + } + text = EVTDESC_MNM_7830_deceitful + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_add_arbitrary + } + } + text = EVTDESC_MNM_7830_arbitrary + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_add_cruel + } + } + text = EVTDESC_MNM_7830_cruel + } + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_7830 #try to corrupt them + custom_tooltip = { text = EVTOPTA_MNM_7830_TOOLTIP } + hidden_effect = { + random_list = { + 50 = { + modifier = { + factor = 2 + event_target:corrupt_priest_target = { + OR = { + trait = bad_priest_christian + trait = bad_priest_muslim + trait = bad_priest_norse + trait = bad_priest_tengri + trait = bad_priest_zoroastrian + trait = bad_priest_aztec + } + } + } + hidden_effect = { + event_target:corrupt_priest_target = { + character_event = { id = MNM.7831 days = 15 random = 45 } #success event + } + } + } + 50 = { + hidden_effect = { + event_target:corrupt_priest_target = { + character_event = { id = MNM.7833 days = 15 random = 45 } #failure event + } + } + } + } + } + ai_chance = { + factor = 33 + modifier = { + factor = 0 + OR = { + diplomacy = 15 + intrigue = 15 + } + } + } + } + option = { + trigger = { + AND = { + has_society_currency_minor_trigger = yes + NAND = { + has_quest = quest_devil_worshipers_corrupt_priest + quest_target = { character = event_target:corrupt_priest_target } + } + } + } + name = EVTOPTB_MNM_7830 #use dark power to corrupt them + custom_tooltip = { text = EVTOPTB_MNM_7830_TOOLTIP } + hidden_effect = { + event_target:corrupt_priest_spell_caster = { + detract_society_currency_minor_effect = yes + } + event_target:corrupt_priest_target = { + character_event = { id = MNM.7831 days = 15 random = 45 } #success event + } + } + ai_chance = { factor = 0 } + } + option = { + name = EVTOPTC_MNM_7830 #use diplomacy to talk them into it + tooltip_info = diplomacy + trigger = { + diplomacy = 15 + } + custom_tooltip = { text = EVTOPTC_MNM_7830_TOOLTIP } + hidden_effect = { + random_list = { + 90 = { + modifier = { + factor = 2 + event_target:corrupt_priest_target = { + OR = { + trait = bad_priest_christian + trait = bad_priest_muslim + trait = bad_priest_norse + trait = bad_priest_tengri + trait = bad_priest_zoroastrian + trait = bad_priest_aztec + } + } + } + hidden_effect = { + event_target:corrupt_priest_target = { + character_event = { id = MNM.7831 days = 15 random = 45 } #success event + } + } + } + 10 = { + hidden_effect = { + event_target:corrupt_priest_target = { + character_event = { id = MNM.7833 days = 15 random = 45 } #failure event + } + } + } + } + } + ai_chance = { + factor = 33 + } + } + option = { + name = EVTOPTD_MNM_7830 #use learning to reason them into it + tooltip_info = learning + trigger = { + learning = 15 + } + custom_tooltip = { text = EVTOPTD_MNM_7830_TOOLTIP } + hidden_effect = { + random_list = { + 90 = { + modifier = { + factor = 2 + event_target:corrupt_priest_target = { + OR = { + trait = bad_priest_christian + trait = bad_priest_muslim + trait = bad_priest_norse + trait = bad_priest_tengri + trait = bad_priest_zoroastrian + trait = bad_priest_aztec + } + } + } + hidden_effect = { + event_target:corrupt_priest_target = { + character_event = { id = MNM.7831 days = 15 random = 45 } #success event + } + } + } + 10 = { + hidden_effect = { + event_target:corrupt_priest_target = { + character_event = { id = MNM.7833 days = 15 random = 45 } #failure event + } + } + } + } + } + ai_chance = { + factor = 33 + } + } +} + + +#Ping event for corrupt a priest adding trait successful +character_event = { + id = MNM.7831 + hide_window = yes + + is_triggered_only = yes + + immediate = { + if = { + limit = { + has_character_flag = corrupt_priest_add_lustful + } + event_target:corrupt_priest_target = { + add_trait_lustful_effect = yes + } + } + if = { + limit = { + has_character_flag = corrupt_priest_add_gluttonous + } + event_target:corrupt_priest_target = { + add_trait_gluttonous_effect = yes + } + } + if = { + limit = { + has_character_flag = corrupt_priest_add_greedy + } + event_target:corrupt_priest_target = { + add_trait_greedy_effect = yes + } + } + if = { + limit = { + has_character_flag = corrupt_priest_add_slothful + } + event_target:corrupt_priest_target = { + add_trait_slothful_effect = yes + } + } + if = { + limit = { + has_character_flag = corrupt_priest_add_envious + } + event_target:corrupt_priest_target = { + add_trait_envious_effect = yes + } + } + if = { + limit = { + has_character_flag = corrupt_priest_add_wroth + } + event_target:corrupt_priest_target = { + add_trait_wroth_effect = yes + } + } + if = { + limit = { + has_character_flag = corrupt_priest_add_proud + } + event_target:corrupt_priest_target = { + add_trait_proud_effect = yes + } + } + if = { + limit = { + has_character_flag = corrupt_priest_add_deceitful + } + event_target:corrupt_priest_target = { + add_trait_deceitful_effect = yes + } + } + if = { + limit = { + has_character_flag = corrupt_priest_add_arbitrary + } + event_target:corrupt_priest_target = { + add_trait_arbitrary_effect = yes + } + } + if = { + limit = { + has_character_flag = corrupt_priest_add_cruel + } + event_target:corrupt_priest_target = { + add_trait_cruel_effect = yes + } + } + event_target:corrupt_priest_spell_caster = { + character_event = { id = MNM.7832 } + } + } +} + +#Corrupt a Priest successful corruption notification +character_event = { + id = MNM.7832 + picture = GFX_evt_shady_meeting + ###default descriptions + desc = { + trigger = { + event_target:corrupt_priest_target = { + AND = { + has_character_flag = corrupt_priest_add_lustful + NOT = { has_opinion_modifier = { who = event_target:corrupt_priest_spell_caster modifier = opinion_successful_corruption } } + } + } + } + text = EVTDESC_MNM_7832_lustful + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + AND = { + has_character_flag = corrupt_priest_add_gluttonous + NOT = { has_opinion_modifier = { who = event_target:corrupt_priest_spell_caster modifier = opinion_successful_corruption } } + } + } + } + text = EVTDESC_MNM_7832_gluttonous + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + AND = { + has_character_flag = corrupt_priest_add_greedy + NOT = { has_opinion_modifier = { who = event_target:corrupt_priest_spell_caster modifier = opinion_successful_corruption } } + } + } + } + text = EVTDESC_MNM_7832_greedy + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + AND = { + has_character_flag = corrupt_priest_add_slothful + NOT = { has_opinion_modifier = { who = event_target:corrupt_priest_spell_caster modifier = opinion_successful_corruption } } + } + } + } + text = EVTDESC_MNM_7832_slothful + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + AND = { + has_character_flag = corrupt_priest_add_envious + NOT = { has_opinion_modifier = { who = event_target:corrupt_priest_spell_caster modifier = opinion_successful_corruption } } + } + } + } + text = EVTDESC_MNM_7832_envious + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + AND = { + has_character_flag = corrupt_priest_add_wroth + NOT = { has_opinion_modifier = { who = event_target:corrupt_priest_spell_caster modifier = opinion_successful_corruption } } + } + } + } + text = EVTDESC_MNM_7832_wroth + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + AND = { + has_character_flag = corrupt_priest_add_proud + NOT = { has_opinion_modifier = { who = event_target:corrupt_priest_spell_caster modifier = opinion_successful_corruption } } + } + } + } + text = EVTDESC_MNM_7832_proud + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + AND = { + has_character_flag = corrupt_priest_add_deceitful + NOT = { has_opinion_modifier = { who = event_target:corrupt_priest_spell_caster modifier = opinion_successful_corruption } } + } + } + } + text = EVTDESC_MNM_7832_deceitful + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + AND = { + has_character_flag = corrupt_priest_add_arbitrary + NOT = { has_opinion_modifier = { who = event_target:corrupt_priest_spell_caster modifier = opinion_successful_corruption } } + } + } + } + text = EVTDESC_MNM_7832_arbitrary + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + AND = { + has_character_flag = corrupt_priest_add_cruel + NOT = { has_opinion_modifier = { who = event_target:corrupt_priest_spell_caster modifier = opinion_successful_corruption } } + } + } + } + text = EVTDESC_MNM_7832_cruel + } + + ###bonus descriptions if resulting from event id = MNM.7836 + + desc = { + trigger = { + event_target:corrupt_priest_target = { + AND = { + OR = { + has_character_flag = corrupt_priest_add_lustful + has_character_flag = corrupt_priest_add_gluttonous + has_character_flag = corrupt_priest_add_greedy + has_character_flag = corrupt_priest_add_slothful + has_character_flag = corrupt_priest_add_envious + has_character_flag = corrupt_priest_add_wroth + has_character_flag = corrupt_priest_add_proud + has_character_flag = corrupt_priest_add_deceitful + has_character_flag = corrupt_priest_add_arbitrary + has_character_flag = corrupt_priest_add_cruel + } + has_opinion_modifier = { who = event_target:corrupt_priest_spell_caster modifier = opinion_successful_corruption } + } + } + } + text = EVTDESC_MNM_7832_bonus + } + + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_7832 #event option if standard event + trigger = { + event_target:corrupt_priest_target = { + NOT = { has_opinion_modifier = { who = event_target:corrupt_priest_spell_caster modifier = opinion_successful_corruption } } + } + } + custom_tooltip = { text = EVTOPTA_MNM_7832_TOOLTIP } + reverse_opinion = { + who = event_target:corrupt_priest_target + modifier = opinion_successful_corruption + years = 100 + } + if = { + limit = { + event_target:corrupt_priest_spell_caster = { ai = no } + } + event_target:corrupt_priest_target = { set_character_flag = corrupted_by_player } + } + hidden_effect = { + event_target:corrupt_priest_target = { + clr_character_flag = corrupt_priest_add_lustful + clr_character_flag = corrupt_priest_add_gluttonous + clr_character_flag = corrupt_priest_add_greedy + clr_character_flag = corrupt_priest_add_slothful + clr_character_flag = corrupt_priest_add_envious + clr_character_flag = corrupt_priest_add_wroth + clr_character_flag = corrupt_priest_add_proud + clr_character_flag = corrupt_priest_add_deceitful + clr_character_flag = corrupt_priest_add_arbitrary + clr_character_flag = corrupt_priest_add_cruel + clr_character_flag = attempted_corrupt_priest + } + event_target:corrupt_priest_spell_caster = { + if = { + limit = { + NAND = { + has_quest = quest_devil_worshipers_corrupt_priest + quest_target = { character = event_target:corrupt_priest_target } + } + } + add_society_currency_minor_effect = yes + } + #If quest holder, clear quest and reward + if = { + limit = { + has_quest = quest_devil_worshipers_corrupt_priest + quest_target = { character = event_target:corrupt_priest_target } + } + clr_quest = quest_devil_worshipers_corrupt_priest + sound_effect = devil_worshippers_corrupt_priest + + if = { + limit = { event_target:corrupt_priest_target = { higher_tier_than = DUKE } } + add_society_currency_major_effect = yes + } + if = { + limit = { event_target:corrupt_priest_target = { tier = DUKE } } + add_society_currency_medium_effect = yes + } + if = { + limit = { event_target:corrupt_priest_target = { lower_tier_than = DUKE } } + add_society_currency_minor_effect = yes + } + } + minor_soul_corruption_effect = yes + } + } + } + + option = { + name = EVTOPTB_MNM_7832 #event option if bonus event + trigger = { + event_target:corrupt_priest_target = { + has_opinion_modifier = { who = event_target:corrupt_priest_spell_caster modifier = opinion_successful_corruption } + } + } + custom_tooltip = { text = EVTOPTB_MNM_7832_TOOLTIP } + hidden_effect = { + event_target:corrupt_priest_spell_caster = { + add_society_currency_medium_effect = yes + } + event_target:corrupt_priest_target = { + clr_character_flag = corrupt_priest_add_lustful + clr_character_flag = corrupt_priest_add_gluttonous + clr_character_flag = corrupt_priest_add_greedy + clr_character_flag = corrupt_priest_add_slothful + clr_character_flag = corrupt_priest_add_envious + clr_character_flag = corrupt_priest_add_wroth + clr_character_flag = corrupt_priest_add_proud + clr_character_flag = corrupt_priest_add_deceitful + clr_character_flag = corrupt_priest_add_arbitrary + clr_character_flag = corrupt_priest_add_cruel + } + } + } +} + +#Ping event for corrupt a priest adding trait failure +character_event = { + id = MNM.7833 + hide_window = yes + + is_triggered_only = yes + + immediate = { + event_target:corrupt_priest_spell_caster = { + character_event = { id = MNM.7834 } + } + } +} + +#Corrupt a Priest failed corruption notification +character_event = { + id = MNM.7834 + picture = GFX_evt_scandal + desc = EVTDESC_MNM_7834 + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + trigger = { + is_alive = yes + } + + option = { + name = EVTOPTA_MNM_7834 + custom_tooltip = { text = EVTOPTA_MNM_7834_TOOLTIP } + hidden_effect = { + increase_visibility_effect = yes + reverse_opinion = { + who = event_target:corrupt_priest_target + modifier = opinion_failed_corruption + years = 10 + } + any_realm_character = { #exposed corrupter -10 + opinion = { + who = event_target:corrupt_priest_spell_caster + modifier = opinion_known_corrupter + years = 10 + } + } + event_target:corrupt_priest_target = { + clr_character_flag = corrupt_priest_add_lustful + clr_character_flag = corrupt_priest_add_gluttonous + clr_character_flag = corrupt_priest_add_greedy + clr_character_flag = corrupt_priest_add_slothful + clr_character_flag = corrupt_priest_add_envious + clr_character_flag = corrupt_priest_add_wroth + clr_character_flag = corrupt_priest_add_proud + clr_character_flag = corrupt_priest_add_deceitful + clr_character_flag = corrupt_priest_add_arbitrary + clr_character_flag = corrupt_priest_add_cruel + clr_character_flag = attempted_corrupt_priest + } + } + if = { + limit = { + has_quest = quest_devil_worshipers_corrupt_priest + } + clr_quest = { id = quest_devil_worshipers_corrupt_priest failure = yes } + } + } +} + +#Corrupt a priest remove trait: corrupt them! +character_event = { + id = MNM.7835 + picture = GFX_evt_eavesdropping + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_remove_chaste + } + } + text = EVTDESC_MNM_7835_remove_chaste + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_remove_temperate + } + } + text = EVTDESC_MNM_7835_remove_temperate + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_remove_charitable + } + } + text = EVTDESC_MNM_7835_remove_charitable + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_remove_diligent + } + } + text = EVTDESC_MNM_7835_remove_diligent + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_remove_kind + } + } + text = EVTDESC_MNM_7835_remove_kind + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_remove_patient + } + } + text = EVTDESC_MNM_7835_remove_patient + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_remove_humble + } + } + text = EVTDESC_MNM_7835_remove_humble + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_remove_honest + } + } + text = EVTDESC_MNM_7835_remove_honest + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_remove_just + } + } + text = EVTDESC_MNM_7835_remove_just + } + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_7835 #try to corrupt them + custom_tooltip = { text = EVTOPTA_MNM_7835_TOOLTIP } + hidden_effect = { + random_list = { + 50 = { + modifier = { + factor = 2 + event_target:corrupt_priest_target = { + OR = { + trait = bad_priest_christian + trait = bad_priest_muslim + trait = bad_priest_norse + trait = bad_priest_tengri + trait = bad_priest_zoroastrian + trait = bad_priest_aztec + } + } + } + hidden_effect = { + event_target:corrupt_priest_target = { + character_event = { id = MNM.7836 days = 15 random = 45 } #success event + } + } + } + 50 = { + hidden_effect = { + event_target:corrupt_priest_target = { + character_event = { id = MNM.7833 days = 15 random = 45 } #failure event + } + } + } + } + } + ai_chance = { + factor = 33 + modifier = { + factor = 0 + OR = { + diplomacy = 15 + intrigue = 15 + } + } + } + } + option = { + trigger = { + AND = { + has_society_currency_minor_trigger = yes + NAND = { + has_quest = quest_devil_worshipers_corrupt_priest + quest_target = { character = event_target:corrupt_priest_target } + } + } + } + name = EVTOPTB_MNM_7835 #use dark power to corrupt them + custom_tooltip = { text = EVTOPTB_MNM_7835_TOOLTIP } + hidden_effect = { + event_target:corrupt_priest_spell_caster = { + detract_society_currency_minor_effect = yes + } + event_target:corrupt_priest_target = { + character_event = { id = MNM.7836 days = 15 random = 45 } #success event + } + } + ai_chance = { factor = 0 } + } + option = { + name = EVTOPTC_MNM_7835 #use diplomacy to talk them into it + tooltip_info = diplomacy + trigger = { + diplomacy = 15 + } + custom_tooltip = { text = EVTOPTC_MNM_7835_TOOLTIP } + hidden_effect = { + random_list = { + 90 = { + modifier = { + factor = 2 + event_target:corrupt_priest_target = { + OR = { + trait = bad_priest_christian + trait = bad_priest_muslim + trait = bad_priest_norse + trait = bad_priest_tengri + trait = bad_priest_zoroastrian + trait = bad_priest_aztec + } + } + } + hidden_effect = { + event_target:corrupt_priest_target = { + character_event = { id = MNM.7836 days = 15 random = 45 } #success event + } + } + } + 10 = { + hidden_effect = { + event_target:corrupt_priest_target = { + character_event = { id = MNM.7833 days = 15 random = 45 } #failure event + } + } + } + } + } + ai_chance = { + factor = 33 + } + } + option = { + name = EVTOPTD_MNM_7835 #use learning to reason them into it + tooltip_info = learning + trigger = { + learning = 15 + } + custom_tooltip = { text = EVTOPTD_MNM_7835_TOOLTIP } + hidden_effect = { + random_list = { + 90 = { + modifier = { + factor = 2 + event_target:corrupt_priest_target = { + OR = { + trait = bad_priest_christian + trait = bad_priest_muslim + trait = bad_priest_norse + trait = bad_priest_tengri + trait = bad_priest_zoroastrian + trait = bad_priest_aztec + } + } + } + hidden_effect = { + event_target:corrupt_priest_target = { + character_event = { id = MNM.7836 days = 15 random = 45 } #success event + } + } + } + 10 = { + hidden_effect = { + event_target:corrupt_priest_target = { + character_event = { id = MNM.7833 days = 15 random = 45 } #failure event + } + } + } + } + } + ai_chance = { + factor = 33 + } + } +} + +#Ping event for corrupt a priest removing trait successful, leads back to event id = MNM.7831 (because recycling = awesome!) +character_event = { + id = MNM.7836 + hide_window = yes + + is_triggered_only = yes + + immediate = { + if = { + limit = { + has_character_flag = corrupt_priest_remove_chaste + } + event_target:corrupt_priest_target = { + remove_trait_chaste_effect = yes + random = { + chance = 10 + set_character_flag = corrupt_priest_add_lustful + character_event = { id = MNM.7831 days = 30 random = 330 } + } + } + } + if = { + limit = { + has_character_flag = corrupt_priest_remove_temperate + } + event_target:corrupt_priest_target = { + remove_trait_temperate_effect = yes + random = { + chance = 10 + set_character_flag = corrupt_priest_add_gluttonous + character_event = { id = MNM.7831 days = 30 random = 330 } + } + } + } + if = { + limit = { + has_character_flag = corrupt_priest_remove_charitable + } + event_target:corrupt_priest_target = { + remove_trait_charitable_effect = yes + random = { + chance = 10 + set_character_flag = corrupt_priest_add_greedy + character_event = { id = MNM.7831 days = 30 random = 330 } + } + } + } + if = { + limit = { + has_character_flag = corrupt_priest_remove_diligent + } + event_target:corrupt_priest_target = { + remove_trait_diligent_effect = yes + random = { + chance = 10 + set_character_flag = corrupt_priest_add_slothful + character_event = { id = MNM.7831 days = 30 random = 330 } + } + } + } + if = { + limit = { + has_character_flag = corrupt_priest_remove_kind + } + event_target:corrupt_priest_target = { + remove_trait_kind_effect = yes + random_list = { + 5 = { + set_character_flag = corrupt_priest_add_envious + character_event = { id = MNM.7831 days = 30 random = 330 } + } + 5 = { + set_character_flag = corrupt_priest_add_cruel + character_event = { id = MNM.7831 days = 30 random = 330 } + } + 90 = { } + } + } + } + if = { + limit = { + has_character_flag = corrupt_priest_remove_patient + } + event_target:corrupt_priest_target = { + remove_trait_patient_effect = yes + random = { + chance = 10 + set_character_flag = corrupt_priest_add_wroth + character_event = { id = MNM.7831 days = 30 random = 330 } + } + } + } + if = { + limit = { + has_character_flag = corrupt_priest_remove_humble + } + event_target:corrupt_priest_target = { + remove_trait_humble_effect = yes + random = { + chance = 10 + set_character_flag = corrupt_priest_add_proud + character_event = { id = MNM.7831 days = 30 random = 330 } + } + } + } + if = { + limit = { + has_character_flag = corrupt_priest_remove_honest + } + event_target:corrupt_priest_target = { + remove_trait_honest_effect = yes + random = { + chance = 10 + set_character_flag = corrupt_priest_add_deceitful + character_event = { id = MNM.7831 days = 30 random = 330 } + } + } + } + if = { + limit = { + has_character_flag = corrupt_priest_remove_just + } + event_target:corrupt_priest_target = { + remove_trait_just_effect = yes + random = { + chance = 10 + set_character_flag = corrupt_priest_add_arbitrary + character_event = { id = MNM.7831 days = 30 random = 330 } + } + } + } + event_target:corrupt_priest_spell_caster = { + character_event = { id = MNM.7837 } + } + } +} + +#Corrupt a Priest successful corruption notification (remove trait) +character_event = { + id = MNM.7837 + picture = GFX_evt_shady_meeting + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_remove_chaste + } + } + text = EVTDESC_MNM_7837_chaste + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_remove_temperate + } + } + text = EVTDESC_MNM_7837_temperate + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_remove_charitable + } + } + text = EVTDESC_MNM_7837_charitable + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_remove_diligent + } + } + text = EVTDESC_MNM_7837_diligent + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_remove_kind + } + } + text = EVTDESC_MNM_7837_kind + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_remove_patient + } + } + text = EVTDESC_MNM_7837_patient + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_remove_humble + } + } + text = EVTDESC_MNM_7837_humble + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_remove_honest + } + } + text = EVTDESC_MNM_7837_honest + } + desc = { + trigger = { + event_target:corrupt_priest_target = { + has_character_flag = corrupt_priest_remove_just + } + } + text = EVTDESC_MNM_7837_just + } + + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_7837 + custom_tooltip = { text = EVTOPTA_MNM_7837_TOOLTIP } + reverse_opinion = { + who = event_target:corrupt_priest_target + modifier = opinion_successful_corruption + years = 100 + } + if = { + limit = { + event_target:corrupt_priest_spell_caster = { ai = no } + } + event_target:corrupt_priest_target = { set_character_flag = corrupted_by_player } + } + hidden_effect = { + event_target:corrupt_priest_target = { + clr_character_flag = corrupt_priest_remove_chaste + clr_character_flag = corrupt_priest_remove_temperate + clr_character_flag = corrupt_priest_remove_charitable + clr_character_flag = corrupt_priest_remove_diligent + clr_character_flag = corrupt_priest_remove_kind + clr_character_flag = corrupt_priest_remove_patient + clr_character_flag = corrupt_priest_remove_humble + clr_character_flag = corrupt_priest_remove_honest + clr_character_flag = corrupt_priest_remove_just + clr_character_flag = attempted_corrupt_priest + } + event_target:corrupt_priest_spell_caster = { + #If not quest holder, give some currency + if = { + limit = { + NAND = { + has_quest = quest_devil_worshipers_corrupt_priest + quest_target = { character = event_target:corrupt_priest_target } + } + } + add_society_currency_minor_effect = yes + } + #If quest holder, clear quest and reward + if = { + limit = { + has_quest = quest_devil_worshipers_corrupt_priest + quest_target = { character = event_target:corrupt_priest_target } + } + clr_quest = quest_devil_worshipers_corrupt_priest + sound_effect = devil_worshippers_corrupt_priest + + if = { + limit = { event_target:corrupt_priest_target = { higher_tier_than = DUKE } } + add_society_currency_major_effect = yes + } + if = { + limit = { event_target:corrupt_priest_target = { tier = DUKE } } + add_society_currency_medium_effect = yes + } + if = { + limit = { event_target:corrupt_priest_target = { lower_tier_than = DUKE } } + add_society_currency_minor_effect = yes + } + } + minor_soul_corruption_effect = yes + } + } + } +} + +##Demonic Healing## + +#Demonic Healing opening# +character_event = { + id = MNM.7118 + picture = GFX_evt_magic_ritual + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + desc = EVTDESC_MNM_7118 + immediate = { + if = { + limit = { has_disease_trigger = yes } + set_character_flag = dark_healing_disease_flag + } + if = { + limit = { is_maimed_trigger = yes } + set_character_flag = dark_healing_maimed_flag + } + if = { + limit = { + OR = { + trait = wounded + AND = { + has_dlc = "Reapers" + OR = { + trait = severely_injured + trait = infection + } + } + } + } + set_character_flag = dark_healing_injured + } + } + + option = { + name = EVTOPTA_MNM_7118 + custom_tooltip = { + text = EVTOPTA_MNM_7118_TOOLTIP + } + character_event = { id = MNM.7119 days = 2 } + } +} + +#Demonic Healing result +character_event = { + id = MNM.7119 + picture = GFX_evt_magic_ritual + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + if = { + limit = { NOT = { has_dlc = "Reapers" } } + random_list = { + 3 = { set_character_flag = dark_healing_nothing_happened } + 7 = { + random_list = { + 10 = { + modifier = { + NOT = {trait = maimed} + factor = 0 + } + set_character_flag = dark_healing_maimed_healed + } + 10 = { + modifier = { + NOT = {trait = infirm} + factor = 0 + } + set_character_flag = dark_healing_infirm + } + 5 = { + modifier = { + NOT = { trait = incapable } + factor = 0 + } + set_character_flag = dark_healing_incapable + } + 5 = { + modifier = { + NOT = { trait = eunuch } + factor = 0 + } + set_character_flag = dark_healing_eunuch + } + 5 = { + modifier = { + NOT = { trait = blinded } + factor = 0 + } + set_character_flag = dark_healing_blinded + } + } + } + } + } + + if = { + limit = { has_dlc = "Reapers" } + + random_list = { + 3 = { set_character_flag = dark_healing_nothing_happened } + 7 = { + random_list = { + 10 = { + modifier = { + OR = { + trait = flu + trait = food_poisoning + } + factor = 2 + } + modifier = { + trait = cancer + NOT = { trait = has_measles } + NOT = { trait = flu } + NOT = { trait = food_poisoning } + NOT = { trait = gout } + NOT = { trait = scurvy } + NOT = { trait = lovers_pox } + NOT = { trait = pneumonic } + NOT = { trait = syphilitic } + NOT = { trait = leper } + factor = 0.5 + } + remove_random_disease_effect = yes # sets a flag to remove random "regular" disease + set_character_flag = dark_healing_disease_removed + } + 10 = { + modifier = { + NOT = { has_epidemic_disease_trigger = yes } + factor = 0 + } + remove_random_epidemic_disease_effect = yes # sets a flag to remove random epidemic disease + set_character_flag = dark_healing_disease_removed + } + 10 = { + modifier = { + is_maimed_trigger = no + factor = 0 + } + modifier = { + trait = mangled + factor = 2 + } + remove_random_maimed_effect = yes + set_character_flag = dark_healing_maimed_healed + } + 10 = { + modifier = { + NOT = { trait = infirm } + factor = 0 + } + set_character_flag = dark_healing_infirm + } + 10 = { + modifier = { + NOT = { trait = incapable } + factor = 0 + } + set_character_flag = dark_healing_incapable + } + 10 = { + modifier = { + NOT = { trait = eunuch } + factor = 0 + } + set_character_flag = dark_healing_eunuch + } + 10 = { + modifier = { + NOT = { trait = blinded } + factor = 0 + } + set_character_flag = dark_healing_blinded + } + } + } + } + } + } + + desc = { + trigger = { + OR = { + has_character_flag = dark_healing_incapable + has_character_flag = dark_healing_infirm + } + } + text = EVTDESC_MNM_7119_INCAPABLE_INFIRM + } + desc = { + trigger = { + has_character_flag = dark_healing_blinded + } + text = EVTDESC_MNM_7119_BLINDED + } + desc = { + trigger = { + has_character_flag = dark_healing_eunuch + } + text = EVTDESC_MNM_7119_EUNUCH + } + + desc = { + trigger = { + has_character_flag = dark_healing_maimed_healed + } + text = EVTDESC_MNM_7119_MAIMED + } + + desc = { + trigger = { + NOT = { + has_character_flag = dark_healing_incapable + has_character_flag = dark_healing_eunuch + has_character_flag = dark_healing_blinded + has_character_flag = dark_healing_maimed_healed + has_character_flag = dark_healing_infirm + } + has_character_flag = dark_healing_disease_flag + has_character_flag = dark_healing_disease_removed + } + text = EVTDESC_MNM_7119_DISEASE + } + + desc = { + trigger = { + NAND = { + has_character_flag = dark_healing_disease_flag + has_character_flag = dark_healing_disease_removed + } + has_character_flag = dark_healing_nothing_happened + OR = { + has_character_flag = dark_healing_disease_flag + has_character_flag = dark_healing_maimed_flag + } + } + text = EVTDESC_MNM_7119_NOTHING_HAPPENED + } + + desc = { + trigger = { + NAND = { + has_character_flag = dark_healing_disease_flag + has_character_flag = dark_healing_disease_removed + } + has_character_flag = dark_healing_injured + has_character_flag = dark_healing_nothing_happened + NOR = { + has_character_flag = dark_healing_disease_flag + has_character_flag = dark_healing_maimed_flag + } + } + text = EVTDESC_MNM_7119_NORMAL + } + + desc = { + trigger = { + NAND = { + has_character_flag = dark_healing_injured + has_character_flag = dark_healing_disease_removed + } + has_character_flag = dark_healing_nothing_happened + } + text = EVTDESC_MNM_7119_TOO_WEAK + } + + option = { + name = EVTOPT_MNM_7119 + + if = { + limit = { has_character_flag = dark_healing_disease_removed } + #general disease clearing effects: + remove_symptoms_effect = yes + clear_disease_level_effect = yes + remove_disease_flags_effect = yes + hidden_effect = { remove_treatment_modifiers_effect = yes } + } + + if = { limit = { trait = infection } remove_trait = infection } + if = { limit = { trait = severely_injured } remove_trait = severely_injured } + if = { limit = { trait = ill } remove_trait = ill } + + if = { limit = { trait = wounded } remove_trait = wounded + add_scarred_tiered_effect = yes + } + + if = { + limit = { has_character_flag = dark_healing_infirm } + remove_trait = infirm + } + if = { + limit = { has_character_flag = dark_healing_blinded } + remove_trait = blinded + } + if = { + limit = { has_character_flag = dark_healing_incapable } + remove_trait = incapable + } + if = { + limit = { has_character_flag = dark_healing_eunuch } + remove_trait = eunuch + } + if = { + limit = { NOT = { has_dlc = "Reapers" } has_character_flag = dark_healing_maimed_healed } + remove_trait = maimed + } + if = { + limit = { has_character_flag = removed_maimed } + remove_trait = maimed + } + if = { + limit = { has_character_flag = removed_mangled } + remove_trait = mangled + } + if = { + limit = { has_character_flag = removed_one_eyed } + remove_trait = one_eyed + if = { + limit = { + has_character_modifier = glass_eye + } + remove_character_modifier = glass_eye + } + if = { + limit = { + has_character_modifier = phantom_pain + NOT = { trait = one_handed } + NOT = { trait = one_legged } + NOT = { trait = disfigured } + } + remove_character_modifier = phantom_pain + } + } + if = { + limit = { has_character_flag = removed_one_handed } + remove_trait = one_handed + if = { + limit = { + has_artifact = prosthetic_hand_gold + } + destroy_artifact = prosthetic_hand_gold + wealth = 10 + } + if = { + limit = { + has_artifact = prosthetic_hand_metal + } + destroy_artifact = prosthetic_hand_metal + } + if = { + limit = { + has_character_modifier = phantom_pain + NOT = { trait = one_eyed } + NOT = { trait = one_legged } + NOT = { trait = disfigured } + } + remove_character_modifier = phantom_pain + } + } + if = { + limit = { has_character_flag = removed_one_legged } + remove_trait = one_legged + if = { + limit = { + has_character_modifier = peg_leg + } + remove_character_modifier = peg_leg + } + if = { + limit = { + has_artifact = prosthetic_leg_artifact + } + destroy_artifact = prosthetic_leg_artifact + } + if = { + limit = { + has_character_modifier = phantom_pain + NOT = { trait = one_handed } + NOT = { trait = one_eyed } + NOT = { trait = disfigured } + } + remove_character_modifier = phantom_pain + } + } + if = { + limit = { has_character_flag = removed_disfigured } + remove_trait = disfigured + if = { + limit = { + has_character_modifier = golden_mask + } + remove_character_modifier = golden_mask + wealth = 10 + } + if = { + limit = { + has_character_modifier = phantom_pain + NOT = { trait = one_handed } + NOT = { trait = one_legged } + NOT = { trait = one_eyed } + } + remove_character_modifier = phantom_pain + } + } + if = { + limit = { has_character_flag = removing_flu } + remove_trait = flu + } + if = { + limit = { has_character_flag = removing_measles } + remove_trait = has_measles + set_character_flag = immune_measles + } + if = { + limit = { has_character_flag = removing_food_poisoning } + remove_trait = food_poisoning + } + if = { + limit = { has_character_flag = removing_gout } + remove_trait = gout + } + if = { + limit = { has_character_flag = removing_scurvy } + remove_trait = scurvy + } + if = { + limit = { has_character_flag = removing_lovers_pox } + remove_trait = lovers_pox + } + if = { + limit = { has_character_flag = removing_cancer } + remove_trait = cancer + } + if = { + limit = { has_character_flag = removing_pneumonic } + remove_trait = pneumonic + } + if = { + limit = { has_character_flag = removing_syphilitic } + remove_trait = syphilitic + set_character_flag = immune_syphilis + } + if = { + limit = { has_character_flag = removing_leper } + remove_trait = leper + } + if = { + limit = { has_character_flag = removing_has_tuberculosis } + remove_trait = has_tuberculosis + set_character_flag = immune_tuberculosis + } + if = { + limit = { has_character_flag = removing_has_aztec_disease } + remove_trait = has_aztec_disease + set_character_flag = immune_aztec_disease + } + if = { + limit = { has_character_flag = removing_has_small_pox } + remove_trait = has_small_pox + set_character_flag = immune_smallpox + } + if = { + limit = { has_character_flag = removing_has_bubonic_plague } + remove_trait = has_bubonic_plague + set_character_flag = immune_bubonic_plague + } + if = { + limit = { has_character_flag = removing_has_typhus } + remove_trait = has_typhus + set_character_flag = immune_typhus + } + if = { + limit = { has_character_flag = removing_has_typhoid_fever } + remove_trait = has_typhoid_fever + set_character_flag = immune_typhoid_fever + } + + add_character_modifier = { + modifier = dark_healing_recent + years = 1 + } + + # demonic healing specific clearing: + clr_character_flag = dark_healing_in_effect + clr_character_flag = dark_healing_nothing_happened + clr_character_flag = dark_healing_maimed_flag + clr_character_flag = dark_healing_disease_flag + clr_character_flag = dark_healing_disease_removed + clr_character_flag = dark_healing_maimed_healed + clr_character_flag = dark_healing_incapable + clr_character_flag = dark_healing_infirm + clr_character_flag = dark_healing_blinded + clr_character_flag = dark_healing_eunuch + clr_character_flag = dark_healing_injured + clr_character_flag = removed_maimed + clr_character_flag = removed_mangled + clr_character_flag = removed_one_eyed + clr_character_flag = removed_one_handed + clr_character_flag = removed_one_legged + clr_character_flag = removed_disfigured + clr_character_flag = removing_flu + clr_character_flag = removing_measles + clr_character_flag = removing_food_poisoning + clr_character_flag = removing_gout + clr_character_flag = removing_scurvy + clr_character_flag = removing_lovers_pox + clr_character_flag = removing_cancer + clr_character_flag = removing_leper + clr_character_flag = removing_has_tuberculosis + clr_character_flag = removing_has_aztec_disease + clr_character_flag = removing_has_small_pox + clr_character_flag = removing_has_bubonic_plague + clr_character_flag = removing_has_typhus + clr_character_flag = removing_has_typhoid_fever + } +} + +##Induction## + +#Opening Event +character_event = { + id = MNM.7121 + picture = GFX_evt_dark_prayer + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + } + + desc = EVTDESC_MNM_7121 + + option = { + name = EVTOPTA_MNM_7121 + FROM = { + character_event = { + id = MNM.7122 + days = 0 + } + } + } +} + +#Result Ping# +character_event = { + id = MNM.7122 + picture = GFX_evt_dark_prayer + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + hide_window = yes + + immediate = { + random = { + chance = 30 + + modifier = { + is_rival = FROM + factor = 0 + } + modifier = { + trait = trusting + factor = 2 + } + modifier = { + trait = paranoid + factor = 0.5 + } + modifier = { + trait = lunatic + factor = 2 + } + modifier = { + trait = possessed + factor = 2 + } + modifier = { + trait = depressed + factor = 2 + } + modifier = { + has_negative_congenital_trigger = yes + factor = 2 + } + modifier = { + trait = ambitious + factor = 2 + } + modifier = { + has_impious_trait_trigger = yes + factor = 2 + } + modifier = { + FROM = { + any_vassal = { + character = ROOT + } + } + factor = 2 + } + modifier = { + NOT = { + religion_group = FROM + } + factor = 0.5 + } + modifier = { + is_ruler = no + factor = 2 + } + modifier = { + dynasty = FROM + factor = 2 + } + modifier = { + is_in_society = yes + factor = 0 + } + join_from_devil_worshiper_society_effect = yes + } + + random = { + chance = 50 + set_character_flag = wounded_induction + } + random = { + chance = 10 + set_character_flag = lunatic_induction + } + random = { + chance = 10 + set_character_flag = possessed_induction + } + add_character_modifier = { + modifier = recent_induction_attempt + days = 90 + } + + if = { + limit = { + same_society_as = FROM + } + FROM = { + character_event = { + id = MNM.7123 + days = 7 + } + } + } + if = { + limit = { + NOT= { same_society_as = FROM } + } + FROM = { + character_event = { + id = MNM.7124 + days = 7 + } + } + } + } +} + +#Successful Induction# +character_event = { + id = MNM.7123 + picture = GFX_evt_dark_prayer + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + desc = { + trigger = { + FROM = { + has_character_flag = wounded_induction + is_alive = yes + } + } + + text = EVTDESC_MNM_7123_WOUNDED + } + + desc = { + trigger = { + FROM = { + OR = { + has_character_flag = lunatic_induction + has_character_flag = possessed_induction + } + is_alive = yes + } + } + + text = EVTDESC_MNM_7123_INSANE + } + + desc = { + trigger = { + FROM = { + NOR = { + has_character_flag = wounded_induction + has_character_flag = lunatic_induction + has_character_flag = possessed_induction + } + is_alive = yes + } + } + + text = EVTDESC_MNM_7123_NOT_WOUNDED + } + + desc = { + trigger = { + FROM = { + is_alive = no + } + } + text = EVTDESC_MNM_7123_DEAD + } + + option = { + custom_tooltip = { + text = successful_induction_tooltip + FROM = { + if = { + limit = { + has_character_flag = wounded_induction + } + add_trait = wounded + clr_character_flag = wounded_induction + } + if = { + limit = { + has_character_flag = lunatic_induction + } + add_trait = lunatic + clr_character_flag = lunatic_induction + } + if = { + limit = { + has_character_flag = possessed_induction + } + add_trait = possessed + clr_character_flag = possessed_induction + } + + } + } + FROM = { + if = { + limit = { + is_in_society = yes + } + leave_society = yes + } + if = { + limit = { ROOT = { society_member_of = the_satanists } } + join_society = the_satanists + } + if = { + limit = { ROOT = { society_member_of = the_trollcrafters } } + join_society = the_trollcrafters + } + if = { + limit = { ROOT = { society_member_of = the_cult_of_kali } } + join_society = the_cult_of_kali + } + if = { + limit = { ROOT = { society_member_of = the_cold_ones } } + join_society = the_cold_ones + } + if = { + limit = { ROOT = { society_member_of = the_plaguebringers } } + join_society = the_plaguebringers + } + if = { + limit = { ROOT = { society_member_of = the_vodouns } } + join_society = the_vodouns + } + if = { + limit = { ROOT = { society_member_of = the_bacchants } } + join_society = the_bacchants + } + } + + name = EVTOPTA_MNM_7123 + } + + option = { + trigger = { + FROM = { + is_alive = no + } + } + + name = EVTOPTB_MNM_7123 + } +} + +#Failed Induction# +character_event = { + id = MNM.7124 + picture = GFX_evt_dark_prayer + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + desc = { + trigger = { + FROM = { + has_character_flag = wounded_induction + is_alive = yes + } + } + text = EVTDESC_MNM_7124_WOUNDED + } + + desc = { + trigger = { + FROM = { + OR = { + has_character_flag = lunatic_induction + has_character_flag = possessed_induction + } + is_alive = yes + } + } + text = EVTDESC_MNM_7124_INSANE + } + + desc = { + trigger = { + FROM = { + NOR = { + has_character_flag = wounded_induction + has_character_flag = lunatic_induction + has_character_flag = possessed_induction + } + is_alive = yes + } + } + + text = EVTDESC_MNM_7124_NOT_WOUNDED + } + + desc = { + trigger = { + FROM = { + is_alive = no + } + } + text = EVTDESC_MNM_7123_DEAD + } + + option = { + trigger = { + FROM = { + is_alive = yes + } + } + FROM = { + if = { + limit = { + has_character_flag = wounded_induction + } + add_trait = wounded + clr_character_flag = wounded_induction + } + if = { + limit = { + has_character_flag = lunatic_induction + } + add_trait = lunatic + clr_character_flag = lunatic_induction + } + if = { + limit = { + has_character_flag = possessed_induction + } + add_trait = possessed + clr_character_flag = possessed_induction + } + } + + name = EVTOPTA_MNM_7124 + } + + option = { + trigger = { + FROM = { + is_alive = no + } + } + + name = EVTOPTB_MNM_7123 + } +} +## Dark Divorce + +#Ping event for spouse (use of power) +character_event = { + id = MNM.7800 + hide_window = yes + + is_triggered_only = yes + + immediate = { + save_event_target_as = dark_divorce_target + FROMFROM = { + save_event_target_as = dark_divorce_spell_caster + } + event_target:dark_divorce_spell_caster = { + character_event = { id = MNM.7801 } + } + } +} + +#Dark Divorce spellcasting event +character_event = { + id = MNM.7801 + picture = GFX_evt_dark_prayer + desc = EVTDESC_MNM_7801 + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + immediate = { + event_target:dark_divorce_target = { + random_list = { + 20 = { + set_character_flag = supernatural_death_fear + } + 20 = { + set_character_flag = supernatural_death_lightning + } + 20 = { + set_character_flag = supernatural_death_combustion + } + 20 = { + set_character_flag = supernatural_death_crows + } + 20 = { + set_character_flag = supernatural_death_suicide + } + } + } + } + option = { #Bye bye baby + trigger = { + event_target:dark_divorce_spell_caster = { + has_society_currency_minor_trigger = yes + } + } + name = EVTOPTA_MNM_7801 + custom_tooltip = { text = EVTOPTA_MNM_7801_TOOLTIP } + hidden_effect = { + event_target:dark_divorce_spell_caster = { + detract_society_currency_minor_effect = yes + } + event_target:dark_divorce_target = { + if = { + limit = { + OR = { + has_character_flag = supernatural_death_fear + has_character_flag = supernatural_death_lightning + has_character_flag = supernatural_death_combustion + has_character_flag = supernatural_death_crows + } + } + character_event = { id = MNM.7802 days = 3 random = 27 } + } + if = { + limit = { + has_character_flag = supernatural_death_suicide + } + character_event = { id = MNM.7807 days = 1 random = 6 } + } + } + } + } + option = { #No I won't + name = EVTOPTB_MNM_7801 + custom_tooltip = { text = EVTOPTB_MNM_7801_TOOLTIP } + event_target:dark_divorce_target = { + hidden_effect = { + clr_character_flag = supernatural_death_fear + clr_character_flag = supernatural_death_lightning + clr_character_flag = supernatural_death_combustion + clr_character_flag = supernatural_death_crows + clr_character_flag = supernatural_death_suicide + clr_character_flag = being_dark_divorced + } + } + event_target:dark_divorce_spell_caster = { + remove_character_modifier = recently_did_dark_divorce + } + ai_chance = { factor = 0 } + } +} + +#Ping event for spouse death (not possessed suicide) +character_event = { + id = MNM.7802 + hide_window = yes + + is_triggered_only = yes + + immediate = { + if = { + limit = { + has_character_flag = supernatural_death_fear + } + event_target:dark_divorce_spell_caster = { + character_event = { id = MNM.7803 } + } + } + if = { + limit = { + has_character_flag = supernatural_death_lightning + } + event_target:dark_divorce_spell_caster = { + character_event = { id = MNM.7804 } + } + } + if = { + limit = { + has_character_flag = supernatural_death_combustion + } + event_target:dark_divorce_spell_caster = { + character_event = { id = MNM.7805 } + } + } + if = { + limit = { + has_character_flag = supernatural_death_crows + } + event_target:dark_divorce_spell_caster = { + character_event = { id = MNM.7806 } + } + } + } +} + +#Dark Divorce spouse dies from fear event +character_event = { + id = MNM.7803 + picture = GFX_evt_illness + desc = EVTDESC_MNM_7803 + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_7803 + event_target:dark_divorce_target = { + death = { + death_reason = death_murder_unknown_fear + killer = ROOT + } + clr_character_flag = supernatural_death_fear + } + hidden_effect = { + event_target:dark_divorce_spell_caster = { + major_soul_corruption_effect = yes + } + } + } +} + +#Dark Divorce spouse dies from lightning event +character_event = { + id = MNM.7804 + picture = GFX_evt_religious_exultation + desc = EVTDESC_MNM_7804 + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_7804 + event_target:dark_divorce_target = { + death = { + death_reason = death_murder_unknown_lightning + killer = ROOT + } + clr_character_flag = supernatural_death_lightning + } + hidden_effect = { + event_target:dark_divorce_spell_caster = { + major_soul_corruption_effect = yes + } + } + } +} + +#Dark Divorce spouse dies from spontaneous combustion event +character_event = { + id = MNM.7805 + picture = GFX_evt_burning_house + desc = EVTDESC_MNM_7805 + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_7805 + event_target:dark_divorce_target = { + death = { + death_reason = death_murder_unknown_combustion + killer = ROOT + } + clr_character_flag = supernatural_death_combustion + } + hidden_effect = { + event_target:dark_divorce_spell_caster = { + major_soul_corruption_effect = yes + } + } + } +} + +#Dark Divorce spouse dies from crows event +character_event = { + id = MNM.7806 + picture = GFX_evt_garden + desc = EVTDESC_MNM_7806 + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_7806 + event_target:dark_divorce_target = { + death = { + death_reason = death_murder_unknown_crows + killer = ROOT + } + clr_character_flag = supernatural_death_crows + } + hidden_effect = { + event_target:dark_divorce_spell_caster = { + major_soul_corruption_effect = yes + } + } + } +} + +#Ping event for Dark Divorce spouse becoming possessed +character_event = { + id = MNM.7807 + hide_window = yes + + is_triggered_only = yes + + immediate = { + event_target:dark_divorce_target = { + add_trait_possessed_effect = yes + } + event_target:dark_divorce_spell_caster = { + character_event = { id = MNM.7808 } + } + } +} + +#Dark Divorce spouse becomes possessed event +character_event = { + id = MNM.7808 + picture = GFX_evt_bad_news + desc = { + text = EVTDESC_MNM_7808 + picture = GFX_evt_bad_news_female + trigger = { is_female = no } + } + desc = { + text = EVTDESC_MNM_7808 + picture = GFX_evt_bad_news + trigger = { is_female = yes } + } + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_7808 + hidden_effect = { + event_target:dark_divorce_target = { + character_event = { id = MNM.7809 days = 1 random = 22 } + } + } + } +} + +#Ping event for Dark Divorce spouse suicide +character_event = { + id = MNM.7809 + hide_window = yes + + is_triggered_only = yes + + immediate = { + event_target:dark_divorce_spell_caster = { + character_event = { id = MNM.7810 } + } + } +} + +#Dark Divorce spouse dies from suicide event +character_event = { + id = MNM.7810 + picture = GFX_evt_bad_news + desc = { + text = EVTDESC_MNM_7810 + picture = GFX_evt_bad_news_female + trigger = { is_female = no } + } + desc = { + text = EVTDESC_MNM_7810 + picture = GFX_evt_bad_news + trigger = { is_female = yes } + } + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_7810 + event_target:dark_divorce_target = { + death = { + death_reason = death_murder_unknown_possessed_fall + killer = ROOT + } + clr_character_flag = supernatural_death_suicide + } + hidden_effect = { + event_target:dark_divorce_spell_caster = { + major_soul_corruption_effect = yes + } + } + } +} + +### POWERS ### + +#Power: Summon familiar +character_event = { + id = MNM.7815 + desc = EVTDESC_MNM_7815 + picture = GFX_evt_mysterious_forest + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + remove_character_modifier = cat_familiar + remove_character_modifier = raven_familiar + remove_character_modifier = owl_familiar + remove_character_modifier = wolf_familiar + } + + #Intrigue (cat) + option = { + name = EVTOPTA_MNM_7815 + + add_character_modifier = { + name = cat_familiar + duration = -1 + } + + ai_chance = { + factor = 1 + modifier = { + factor = 3 + has_education_intrigue_trigger = yes + } + } + } + + #Martial (wolf) + option = { + name = EVTOPTB_MNM_7815 + + add_character_modifier = { + name = wolf_familiar + duration = -1 + } + ai_chance = { + factor = 1 + modifier = { + factor = 3 + has_education_martial_trigger = yes + } + } + } + + #Owl (learning) + option = { + name = EVTOPTC_MNM_7815 + + add_character_modifier = { + name = owl_familiar + duration = -1 + } + + ai_chance = { + factor = 1 + modifier = { + factor = 3 + has_education_learning_trigger = yes + } + } + } + + #Raven familiar + option = { + name = EVTOPTD_MNM_7815 + + add_character_modifier = { + name = raven_familiar + duration = -1 + } + + ai_chance = { + factor = 1 + modifier = { + factor = 3 + has_education_stewardship_trigger = yes + } + } + } +} + +#Power: Tainted touch +character_event = { + id = MNM.7819 + hide_window = yes + is_triggered_only = yes + + immediate = { + FROMFROM = { save_event_target_as = curser } + + random_list = { + 30 = { #Mild + random_list = { + 10 = { give_ill_effect = yes } + 10 = { + modifier = { factor = 0 NOT = { has_dlc = "Reapers" } } + give_flu_effect = yes + } + 10 = { + modifier = { factor = 0 NOT = { has_dlc = "Reapers" } } + give_food_poisoning_effect = yes + } + 10 = { + modifier = { factor = 0 NOT = { has_dlc = "Reapers" } } + give_gout_effect = yes + } + } + } + 50 = { #Dangerous + modifier = { + factor = 1.3 + event_target:curser = { + society_rank == 4 + } + } + modifier = { + factor = 1.3 + event_target:curser = { + is_learned_trigger = yes + } + } + modifier = { + factor = 0.75 + has_character_flag = small_defense_against_dark_forces + } + modifier = { + factor = 0.5 + has_character_flag = medium_defense_against_dark_forces + } + modifier = { + factor = 0.1 + has_character_flag = large_defense_against_dark_forces + } + random_list = { + 10 = { give_pneumonic_effect = yes } + 10 = { give_syphilitic_effect = yes } + 10 = { give_has_tuberculosis_effect = yes } + 10 = { give_has_small_pox_effect = yes } + 10 = { give_has_measles_effect = yes } + 10 = { give_has_typhoid_fever_effect = yes } + 10 = { + modifier = { factor = 0 NOT = { has_dlc = "Reapers" } } + give_dysentery_effect = yes + } + 10 = { + modifier = { factor = 0 NOT = { has_dlc = "Reapers" } } + give_cancer_effect = yes + } + } + } + 20 = { #Lethal + modifier = { + factor = 1.5 + event_target:curser = { + society_rank == 4 + } + } + modifier = { + factor = 1.5 + event_target:curser = { + is_learned_trigger = yes + } + } + modifier = { + factor = 0.75 + has_character_flag = small_defense_against_dark_forces + } + modifier = { + factor = 0.5 + has_character_flag = medium_defense_against_dark_forces + } + modifier = { + factor = 0.1 + has_character_flag = large_defense_against_dark_forces + } + random_list = { + 10 = { give_has_bubonic_plague_effect = yes } + 10 = { + modifier = { factor = 0 NOT = { has_dlc = "Reapers" } } + give_rabies_effect = yes + } + } + } + } + character_event = { id = MNM.7820 days = 7 } + } +} + +character_event = { + id = MNM.7820 + hide_window = yes + is_triggered_only = yes + + immediate = { + if = { + limit = { has_disease_trigger = yes } + event_target:curser = { + character_event = { id = MNM.7821 } + hidden_effect = { + major_soul_corruption_effect = yes + } + } + #the three following lines are hook-ins from hermetics ward off evil-event: + clr_character_flag = small_defense_against_dark_forces + clr_character_flag = medium_defense_against_dark_forces + clr_character_flag = large_defense_against_dark_forces + } + if = { + limit = { has_disease_trigger = no } + character_event = { id = MNM.7820 days = 5 } + } + } +} + +character_event = { + id = MNM.7821 + picture = GFX_evt_illness + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { FROM = { has_character_flag = cursed_mild_illness } } + text = EVTDESC_7821_MILD + picture = GFX_evt_recovery + } + desc = { + trigger = { FROM = { has_character_flag = cursed_dangerous_illness } } + text = EVTDESC_7821_DANGEROUS + picture = GFX_evt_illness + } + + is_triggered_only = yes + + immediate = { + FROM = { + if = { + limit = { + OR = { + trait = ill + trait = syphilitic + trait = flu + trait = food_poisoning + trait = gout + } + } + set_character_flag = cursed_mild_illness + } + if = { + limit = { + OR = { + trait = pneumonic + trait = has_tuberculosis + trait = has_typhoid_fever + trait = has_small_pox + trait = has_measles + trait = dysentery + trait = cancer + trait = has_bubonic_plague + trait = rabies + } + } + set_character_flag = cursed_dangerous_illness + } + } + } + + option = { + name = { + trigger = { FROM = { has_character_flag = cursed_mild_illness } } + text = EVTOPTA_MNM_7821_MILD + } + name = { + trigger = { FROM = { has_character_flag = cursed_dangerous_illness } } + text = EVTOPTA_MNM_7821_DANGEROUS + } + + FROM = { + clr_character_flag = cursed_mild_illness + clr_character_flag = cursed_dangerous_illness + } + } +} + +#Power: invite witch to court +character_event = { + id = MNM.7822 + hide_window = yes + + is_triggered_only = yes + + immediate = { + clr_character_flag = disciple_arriving + random_list = { + #Witch + 60 = { + random_list = { + 33 = { + create_character = { + random_traits = yes + dynasty = none + religion = ROOT + female = yes + age = 19 + health = 7 + } + new_character = { save_event_target_as = devil_disciple } + } + 33 = { + create_character = { + random_traits = yes + dynasty = none + religion = ROOT + female = yes + age = 37 + health = 7 + } + new_character = { save_event_target_as = devil_disciple } + } + 33 = { + create_character = { + random_traits = yes + dynasty = none + religion = ROOT + female = yes + age = 68 + health = 7 + } + new_character = { save_event_target_as = devil_disciple } + } + } + } + #Warlock + 40 = { + random_list = { + 33 = { + create_character = { + random_traits = yes + dynasty = none + religion = ROOT + female = no + age = 22 + health = 7 + } + new_character = { save_event_target_as = devil_disciple } + } + 33 = { + create_character = { + random_traits = yes + dynasty = none + religion = ROOT + female = no + age = 42 + health = 7 + } + new_character = { save_event_target_as = devil_disciple } + } + 33 = { + create_character = { + random_traits = yes + dynasty = none + religion = ROOT + female = no + age = 65 + health = 7 + } + new_character = { save_event_target_as = devil_disciple } + } + } + } + } + + event_target:devil_disciple = { + #Join PREV's (ROOT's) society + if = { + limit = { + ROOT = { ai = no } + } + join_prev_devil_worshiper_society_effect = yes + } + + #Set correct education + remove_education_effect = yes + random_list = { + 15 = { add_trait = flamboyant_schemer } + 15 = { add_trait = intricate_webweaver } + 10 = { add_trait = elusive_shadow } + 5 = { add_trait = grey_eminence } + 5 = { add_trait = brilliant_strategist } + 5 = { add_trait = midas_touched } + } + + #Up intrigue + random_list = { + 33 = { change_intrigue = 2 } + 33 = { change_intrigue = 3 } + 33 = { change_intrigue = 4 } + } + + #Set some interesting traits + + #Possessed/lunatic + random = { + chance = 10 + add_trait = possessed + } + random = { + chance = 5 + add_trait = lunatic + } + + #Nice congenital + random_list = { + 10 = { + add_trait = fair + remove_trait = ugly + } + 5 = { + add_trait = genius + remove_trait = imbecile + remove_trait = quick + remove_trait = slow + } + 10 = { + add_trait = quick + remove_trait = imbecile + remove_trait = genius + remove_trait = slow + } + 5 = { + add_trait = strong + remove_trait = weak + } + 20 = { } + } + + #Bad congenital + random_list = { + 10 = { + add_trait = ugly + remove_trait = fair + } + 10 = { + add_trait = hunchback + } + 10 = { + add_trait = clubfooted + } + 50 = { } + } + + #Lifestyle + remove_lifestyle_trait_effect = yes + random_list = { + 15 = { add_trait = hedonist } + 15 = { add_trait = mystic } + 10 = { add_trait = schemer } + 10 = { + if = { limit = { is_female = yes } add_trait = seductress } + if = { limit = { is_female = no } add_trait = seducer } + } + 5 = { add_trait = gardener } + 5 = { add_trait = impaler } + 20 = { } + } + + #Vices + remove_trait = chaste + remove_trait = humble + random = { + chance = 25 + add_trait = lustful + } + random = { + chance = 25 + add_trait = proud + } + random = { + chance = 15 + add_trait = greedy + remove_trait = charitable + } + random = { + chance = 10 + add_trait = gluttonous + remove_trait = temperate + } + random = { + chance = 10 + add_trait = envious + remove_trait = kind + } + + #Misc traits + remove_trait = honest + remove_trait = content + remove_trait = zealous + remove_trait = trusting + random = { + chance = 15 + add_trait = deceitful + } + random = { + chance = 33 + add_trait = ambitious + } + random = { + chance = 15 + add_trait = paranoid + } + random = { + chance = 15 + add_trait = cruel + remove_trait = kind + } + random = { + chance = 15 + add_trait = homosexual + } + if = { + limit = { has_dlc = "Reapers" } + random = { + chance = 15 + add_trait = physician + } + random = { + chance = 5 + modifier = { + society_member_of = the_trollcrafters + factor = 4 + } + add_trait = one_eyed + } + } + + # Females should be able to lead armies + set_character_flag = special_marshal + + #Nicknames + random_list = { + 10 = { + give_nickname = nick_the_alchemist + } + 10 = { + modifier = { + factor = 0 + NOR = { + trait = deceitful + trait = elusive_shadow + trait = intricate_webweaver + } + } + give_nickname = nick_the_spider + } + 10 = { + modifier = { + factor = 0 + has_education_intrigue_trigger = no + } + give_nickname = nick_the_whisperer + } + 10 = { + modifier = { + factor = 0 + has_education_intrigue_trigger = no + } + give_nickname = nick_the_shadow + } + 10 = { + give_nickname = nick_of_the_wilds + } + 10 = { + modifier = { + factor = 0 + NAND = { + is_female = yes + OR = { + trait = seductress + trait = lustful + } + } + } + give_nickname = nick_the_temptress + } + 10 = { + modifier = { + factor = 0 + NAND = { + is_female = no + OR = { + trait = seducer + trait = lustful + } + } + } + give_nickname = nick_the_seducer + } + 10 = { + modifier = { + factor = 0 + NAND = { + is_female = yes + has_fair_trait_trigger = yes + } + } + give_nickname = nick_the_fair + } + 10 = { + modifier = { + factor = 0 + NAND = { + is_female = no + has_fair_trait_trigger = yes + } + } + give_nickname = nick_the_handsome + } + 10 = { + give_nickname = nick_the_black + } + 10 = { + modifier = { + factor = 0 + NOT = { trait = hunchback } + } + give_nickname = nick_the_hunchback + } + 50 = { } + } + character_event = { id = MNM.7823 } + } + } +} + +#Ping event for new witch/warlock +character_event = { + id = MNM.7823 + hide_window = yes + + is_triggered_only = yes + + immediate = { + FROM = { character_event = { id = MNM.7824 } } + } +} + +#Introduction of witch/warlock +character_event = { + id = MNM.7824 + picture = GFX_evt_magic_ritual + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { + has_dlc = Reapers + FROM = { is_female = yes } + } + text = EVTDESC_MNM_7824 + picture = GFX_evt_wise_woman + } + desc = { + trigger = { + NAND = { + has_dlc = Reapers + FROM = { is_female = yes } + } + } + text = EVTDESC_MNM_7824 + picture = GFX_evt_magic_ritual + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_7824 + reverse_opinion = { + who = FROM + modifier = opinion_loyal_servant + } + } +} + +character_event = { + id = MNM.7829 + hide_window = yes + + is_triggered_only = yes + + ai = yes + is_in_society = yes + + trigger = { + has_dlc = "Mystics" + is_devil_worshiper_trigger = yes + society_rank >= 3 + NOT = { has_character_flag = disciple_arriving } + } + + immediate = { + character_event = { id = MNM.7822 } + } +} + + +##Sacrifice prisoner events +character_event = { #Head of Religion + id = MNM.7500 + picture = GFX_evt_sacrifice + desc = MNM.7500.d + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = MNM.7500.a + } +} + +character_event = { #Holy man + id = MNM.7501 + picture = GFX_evt_sacrifice + desc = MNM.7500.d + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = MNM.7500.a + } +} + +character_event = { #Dwarf + id = MNM.7502 + picture = GFX_evt_sacrifice + desc = MNM.7502.d + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = MNM.7502.a + } +} + +character_event = { #child + id = MNM.7503 + picture = GFX_evt_sacrifice + desc = MNM.7503.d + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = MNM.7503.a + } +} + +character_event = { #Virgin + id = MNM.7504 + picture = GFX_evt_sacrifice + desc = MNM.7504.d + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = MNM.7504.a + } +} + +character_event = { #regular dude + id = MNM.7505 + picture = GFX_evt_sacrifice + desc = MNM.7505.d + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = MNM.7505.a + } +} + +long_character_event = { #reaction + id = MNM.7506 + picture = GFX_evt_sacrifice + desc = MNM.7506.d + border = GFX_event_long_frame_intrigue + + is_triggered_only = yes + + immediate = { + if = { + limit = { + FROM = { + is_alive = yes + } + } + FROM = { + save_event_target_as = satanist + } + } + else = { + FROMFROM = { + save_event_target_as = satanist + } + } + } + + option = { + name = MNM.7506.a + + } +} + +character_event = { #demonic impregnation + id = MNM.7507 + picture = GFX_evt_dark_love + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { FROM = { character = ROOT } } + text = EVTDESC_MNM_7507_SELF + } + desc = { + trigger = { NOT = { FROM = { character = ROOT } } } + text = EVTDESC_MNM_7507_OTHER + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_7507 + custom_tooltip = { text = EVTOPTA_MNM_7507_TOOLTIP } + hidden_effect = { + if = { + limit = { has_quest = quest_the_devil_worshipers_demonic_impregnation } + FROM = { + set_quest_target = { + id = quest_the_devil_worshipers_demonic_impregnation + holder = ROOT + } + } + } + FROM = { + impregnate = 0 + set_character_flag = DW_unholy_mother + } + } + } +} + +character_event = { #birth + id = MNM.7508 + hide_window = yes + is_triggered_only = yes + + trigger = { + mother = { + has_character_flag = DW_unholy_mother + } + } + + immediate = { + add_trait = lefthanded + set_character_flag = demon_child_non_pagan + set_global_flag = demon_child_born + add_character_modifier = { + name = demon_child_non_pagan + hidden = yes + days = -1 + } + if = { + limit = { + mother = { society_member_of = the_satanists } + } + ROOT = { + set_character_flag = demonspawn_will_join_satanists + } + } + if = { + limit = { + mother = { society_member_of = the_cold_ones } + } + ROOT = { + set_character_flag = demonspawn_will_join_cold_ones + } + } + if = { + limit = { + mother = { society_member_of = the_plaguebringers } + } + ROOT = { + set_character_flag = demonspawn_will_join_plaguebringers + } + } + if = { + limit = { + mother = { society_member_of = the_cult_of_kali } + } + ROOT = { + set_character_flag = demonspawn_will_join_cult_of_kali + } + } + if = { + limit = { + mother = { society_member_of = the_trollcrafters } + } + ROOT = { + set_character_flag = demonspawn_will_join_trollcrafters + } + } + if = { + limit = { + mother = { society_member_of = the_bacchants } + } + ROOT = { + set_character_flag = demonspawn_will_join_bacchants + } + } + if = { + limit = { + mother = { society_member_of = the_vodouns } + } + ROOT = { + set_character_flag = demonspawn_will_join_vodouns + } + } + remove_trait = sickly + character_event = { id = SoA.3019 days = 90 random = 90 } # Demon child tombola + #random_list = { + # 50 = { set_character_flag = demon_child_non_pagan } + # 50 = { set_character_flag = demon_child_fake } + #} + mother = { + clr_character_flag = DW_unholy_mother + save_event_target_as = unholy_mother + any_quester_targeting_this = { + limit = { has_quest = quest_the_devil_worshipers_demonic_impregnation } + character_event = { id = MNM.7511 days = 10 } + } + } + } +} + +character_event = { #Announcement + id = MNM.7511 + picture = GFX_evt_magic_ritual + border = GFX_event_normal_frame_intrigue + + trigger = { + has_quest = quest_the_devil_worshipers_demonic_impregnation + } + + desc = { + trigger = { any_child = { character = FROM } } + text = EVTDESC_MNM_7511_SELF + } + desc = { + trigger = { NOT = { any_child = { character = FROM } } } + text = EVTDESC_MNM_7511_OTHER + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_7511 + + clr_quest = quest_the_devil_worshipers_demonic_impregnation + if = { + limit = { FROM = { is_female = yes } } + sound_effect = devil_worshippers_impregnation_courtier_female + } + if = { + limit = { FROM = { is_female = no } } + sound_effect = devil_worshippers_impregnation_courtier_male + } + add_society_currency_massive_effect = yes + } +} + +character_event = { #prolong life sacrifice + id = MNM.7509 + picture = GFX_evt_sacrifice + desc = MNM.7509.d + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = MNM.7509.a + FROM = { + hidden_effect = { character_event = { id = MNM.7506 } } + death = { + death_reason = death_missing + } + } + add_prolong_life_effect = yes + hidden_effect = { + minor_soul_corruption_effect = yes + } + character_event = { id = MNM.7510 days = 3651 } + } +} + +character_event = { #prolong life effect fades + id = MNM.7510 + picture = GFX_evt_dark_prayer + desc = MNM.7510.d + border = GFX_event_normal_frame_religion + + trigger = { + NOR = { + has_character_modifier = stolen_life_minor + has_character_modifier = stolen_life_medium + has_character_modifier = stolen_life_major + } + } + + is_triggered_only = yes + + option = { + name = MNM.7510.a + #Info only + } +} + +###MISSIONS### +##DW Mission Tombola +character_event = { + id = MNM.7200 + hide_window = yes + + is_triggered_only = yes + is_in_society = yes + only_capable = yes + + trigger = { + is_devil_worshiper_trigger = yes + has_any_quest = no + NOT = { has_character_modifier = quest_cooldown_timer } + NOT = { is_society_grandmaster = yes } + NOT = { is_inaccessible_trigger = yes } + } + + immediate = { + random_society_member = { + limit = { + is_society_grandmaster = yes + same_society_as = ROOT + } + save_event_target_as = grand_enchanter + } + + random_list = { + 20 = { + modifier = { + factor = 0 + society_rank == 1 + } + modifier = { + factor = 0 + is_playable = no + } + modifier = { + factor = 0 + NOT = { + any_character = { + is_offmap_ruler = no + is_priest = yes + ai = yes + NOT = { character = ROOT } + is_within_diplo_range = ROOT + is_inaccessible_trigger = no + religion = ROOT + prisoner = no + NOT = { trait = incapable } + NOT = { same_society_as = ROOT } + } + } + } + event_target:grand_enchanter = { + character_event = { id = MNM.7838 } #Corrupt a priest + } + } + 20 = { + modifier = { + factor = 0 + is_playable = no + } + modifier = { + factor = 0 + NOT = { + any_realm_province = { + any_province_holding = { + holding_type = temple + holder_scope = { + religion = ROOT + } + holder_scope = { + NOT = { + character = ROOT + } + } + holder_scope = { + NOT = { same_society_as = ROOT } + } + } + } + } + } + event_target:grand_enchanter = { + character_event = { id = MNM.7023 } #desecrate a temple + } + } + 20 = { + modifier = { + factor = 0 + is_playable = no + } + event_target:grand_enchanter = { + character_event = { id = MNM.7024 } #sacrifice someone + } + } + 20 = { + trigger = { + society_rank >= 3 + is_playable = yes + NOT = { has_character_flag = given_unholy_impregnation_mission } + } + set_character_flag = given_unholy_impregnation_mission + event_target:grand_enchanter = { + character_event = { id = MNM.7026 } #demonic impregnation + } + } + 20 = { + modifier = { + factor = 0 + is_playable = no + } + modifier = { + factor = 0 + society_rank == 1 + } + event_target:grand_enchanter = { + character_event = { id = MNM.7028 } #demonic possession + } + } + + 75 = { # AI bypasses missions at times + modifier = { + factor = 0 + ai = no + } + random_list = { + 70 = { + modifier = { + factor = 0.9 + society_influence >= 30 + } + modifier = { + factor = 0.9 + society_influence >= 40 + } + modifier = { + factor = 0.8 + society_influence >= 50 + } + modifier = { + factor = 0.7 + society_influence >= 70 + } + modifier = { + factor = 0.6 + society_influence >= 80 + } + modifier = { + factor = 0.5 + society_influence >= 90 + } + add_mission_succeed_influence_effect = yes + } + 30 = { + add_mission_fail_influence_effect = yes + } + } + } + + 200 = { + modifier = { + factor = 0 + ai = no + } + #Do nothing for AI + } + } + } +} + +###Desecrate temple### + +#MISSION: +#Ping event for the mission Desecrate a temple +character_event = { + id = MNM.7023 + hide_window = yes + + is_triggered_only = yes + + immediate = { FROM = { society_quest_event = { id = MNM.7110 days = 7 random = 7 } } } +} + +#Assign event +society_quest_event = { + id = MNM.7110 + desc = EVTDESC_MNM_7110 + + is_triggered_only = yes + + immediate = { + random_realm_province = { + limit = { + any_province_holding = { + holding_type = temple + holder_scope = { religion = ROOT } + holder_scope = { NOT = { character = ROOT } } + holder_scope = { NOT = { same_society_as = ROOT } } + } + } + random_province_holding = { + limit = { + holding_type = temple + holder_scope = { religion = ROOT } + holder_scope = { NOT = { character = ROOT } } + holder_scope = { NOT = { same_society_as = ROOT } } + } + save_event_target_as = dw_desecration_target + } + } + + random_realm_province = { + limit = { + NOT = { holder_scope = { character = ROOT } } + any_province_holding = { + holding_type = temple + holder_scope = { religion = ROOT } + holder_scope = { NOT = { same_society_as = ROOT } } + } + } + random_province_holding = { + limit = { + holding_type = temple + holder_scope = { religion = ROOT } + holder_scope = { NOT = { same_society_as = ROOT } } + } + save_event_target_as = dw_desecration_target + } + } + } + + quest_target = event_target:dw_desecration_target + + option = { + name = ACCEPT + event_target:dw_desecration_target = { + set_quest_target = { + id = quest_devil_worshipers_desecrate_temple + holder = ROOT + } + } + } + option = { + name = DECLINE + custom_tooltip = { text = decline_quest_tooltip } + + add_character_modifier = { + name = quest_cooldown_timer + hidden = yes + days = 1000 + } + + ai_chance = { factor = 0 } + } +} + +#To be Fired by on_siege_over_winner +character_event = { + id = MNM.7111 + picture = GFX_evt_shadowy_cabal + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + trigger = { + FROM = { + is_quest_target_of = ROOT + } + has_quest = quest_devil_worshipers_desecrate_temple + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = incapable } + } + + desc = EVTDESC_MNM_7111 + + immediate = { + FROM = { save_event_target_as = dw_desecration_target} + set_character_flag = desecration_in_progress + } + + #take opportunity to desecrate, start desecration chain + option = { + name = EVTOPTA_MNM_7111 + set_character_flag = desecration_violent + character_event = { + id = MNM.7113 days = 4 + } + } + #too dangerous + option = { + name = EVTOPTB_MNM_7111 + clr_character_flag = desecration_in_progress + detract_society_currency_minor_effect = yes + } +} + +#To be fired by plot decision +character_event = { + id = MNM.7112 + picture = GFX_evt_sacrifice + border = GFX_event_normal_frame_intrigue + is_triggered_only = yes + + hide_from = yes + + desc = EVTDESC_MNM_7112 + + immediate = { + random_quest_target = { + limit = { + is_quest_target_of = ROOT + } + save_event_target_as = dw_desecration_target + } + } + + + option = { + name = EVTOPT_MNM_7112 + set_character_flag = desecration_plotting + character_event = { id = MNM.7113 days = 7 } + } +} + +#detection choice, martial to cover up with violence, intrigue to be real sneaky, general choice of lots of currency but risk of discovery or little currency but little risk +character_event = { + id = MNM.7113 + picture = GFX_evt_secluded_in_prayer + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + trigger = { + is_devil_worshiper_trigger = yes + has_quest = quest_devil_worshipers_desecrate_temple + } + + immediate = { + event_target:dw_desecration_target = { + holder_scope = { + if = { + limit = { is_abroad = no } + random_list = { + 50 = {} + 50 = { + set_character_flag = desecration_at_home + } + } + } + save_event_target_as = desecration_holder + } + } + } + + desc = { + trigger = { + has_character_flag = desecration_violent + event_target:desecration_holder = { + has_character_flag = desecration_at_home + } + } + text = EVTDESC_MNM_7113_VIOLENT_HOLDER + } + + desc = { + trigger = { + has_character_flag = desecration_plotting + event_target:desecration_holder = { + has_character_flag = desecration_at_home + } + } + text = EVTDESC_MNM_7113_PLOTTING_HOLDER + } + + desc = { + trigger = { + has_character_flag = desecration_violent + NOT = { + event_target:desecration_holder = { + has_character_flag = desecration_at_home + } + } + } + text = EVTDESC_MNM_7113_VIOLENT + } + + desc = { + trigger = { + has_character_flag = desecration_plotting + NOT = { + event_target:desecration_holder = { + has_character_flag = desecration_at_home + } + } + } + text = EVTDESC_MNM_7113_PLOTTING + } + + option = { + trigger = { + has_character_flag = desecration_violent + OR = { + martial = 14 + combat_rating = 30 + } + } + tooltip_info = martial + name = EVTOPT_MNM_7113_MARTIAL + add_society_currency_minor_effect = yes + event_target:desecration_holder = { + if = { + death = { + death_reason = death_sacrificed + } + } + } + hidden_effect = { + minor_soul_corruption_effect = yes + } + character_event = { id = MNM.7116 days = 7 } + } + option = { + trigger = { + has_character_flag = desecration_plotting + intrigue = 14 + } + tooltip_info = intrigue + name = EVTOPT_MNM_7113_INTRIGUE + add_society_currency_minor_effect = yes + event_target:desecration_holder = { + death = { + death_reason = death_sacrificed + } + } + hidden_effect = { + minor_soul_corruption_effect = yes + } + character_event = { id = MNM.7116 days = 7 } + } + option = { + name = EVTOPTA_MNM_7113 + + hidden_effect = { + random_list = { + 25 = {character_event = { id = MNM.7114 days = 3 } } + 75 = { + character_event = { id = MNM.7116 days = 7 } + } + } + } + } + option = { + name = { + trigger = { has_character_flag = desecration_violent } + text = EVTOPTB_MNM_7113_VIOLENT + } + name = { + trigger = { has_character_flag = desecration_plotting } + text = EVTOPTB_MNM_7113_PLOTTING + } + + hidden_effect = { + random_list = { + 25 = { + #DETECTED! + modifier = { + has_character_flag = desecration_violent + factor = 3 + } + character_event = { id = MNM.7114 days = 3 } + } + 25 = { + #SNEAKY + modifier = { + has_character_flag = desecration_plotting + factor = 3 + } + character_event = { id = MNM.7116 days = 7 } + } + } + } + } +} + +#Priest/escape +character_event = { + id = MNM.7114 + picture = GFX_evt_shadowy_cabal + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + trigger = { + is_devil_worshiper_trigger = yes + has_quest = quest_devil_worshipers_desecrate_temple + } + + desc = { + trigger = { + event_target:desecration_holder = { + has_character_flag = desecration_at_home + } + } + text = EVTDESC_MNM_7114_HOLDER + } + desc = { + trigger = { + NOT = { + event_target:desecration_holder = { + has_character_flag = desecration_at_home + } + } + } + text = EVTDESC_MNM_7114 + } + + option = { + name = EVTOPTA_MNM_7114 + hidden_effect = { + random_list = { + 50 = { + event_target:desecration_holder = { death = { death_reason = death_murder_unknown killer = ROOT } } + } + 50 = { + increase_visibility_effect = yes + set_character_flag = desecration_revealed + } + } + } + random_list = { + 75 = { + } + 20 = { + add_trait = wounded + } + 5 = { + add_trait = maimed + } + } + character_event = { id = MNM.7116 days = 7 } + } + option = { + name = EVTOPTB_MNM_7114 + + clr_quest = { + id = quest_devil_worshipers_desecrate_temple + failure = yes + } + + clr_character_flag = desecration_in_progress + + event_target:desecration_holder = { + clr_character_flag = desecration_at_home + } + } +} + + +#Finds holy relics, steal or destroy +character_event = { + id = MNM.7116 + picture = GFX_evt_burning_house + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + trigger = { + is_devil_worshiper_trigger = yes + has_quest = quest_devil_worshipers_desecrate_temple + } + + desc = { + trigger = { + event_target:dw_desecration_target = { + is_rich_holding = no + } + } + text = EVTDESC_MNM_7116_POOR + } + + desc = { + trigger = { + event_target:dw_desecration_target = { + is_rich_holding = yes + is_richer_holding = no + } + } + picture = GFX_evt_treasure_chamber + text = EVTDESC_MNM_7116_RICH + } + + desc = { + trigger = { + event_target:dw_desecration_target = { + is_rich_holding = yes + is_richer_holding = yes + } + } + picture = GFX_evt_treasure_chamber + text = EVTDESC_MNM_7116_RICHER + } + + #take most valuable + option = { + trigger = { + stewardship = 20 + } + name = EVTOPT_MNM_7116_STEWARDSHIP + tooltip_info = stewardship + add_society_currency_minor_effect = yes + if = { + limit = { + event_target:dw_desecration_target = { + is_rich_holding = no + is_richer_holding = no + } + } + scaled_wealth = { + value = 0.1 min = 15 + } + } + if = { + limit = { + event_target:dw_desecration_target = { + is_rich_holding = yes + is_richer_holding = no + } + } + scaled_wealth = { + value = 0.2 min = 40 + } + } + if = { + limit = { + event_target:dw_desecration_target = { + is_rich_holding = yes + is_richer_holding = yes + } + } + scaled_wealth = { + value = 0.3 min = 100 + } + } + character_event = { id = MNM.7117 days = 4 } + } + + #identify and destroy most holy + option = { + trigger = { + learning = 20 + } + tooltip_info = learning + name = EVTOPT_MNM_7116_LEARNING + add_society_currency_medium_effect = yes + character_event = { id = MNM.7117 days = 4 } + } + option = { + name = EVTOPTA_MNM_7116 + + if = { + limit = { + event_target:dw_desecration_target = { + is_rich_holding = no + is_richer_holding = no + } + } + scaled_wealth = { + value = 0.05 min = 5 + } + } + if = { + limit = { + event_target:dw_desecration_target = { + is_rich_holding = yes + is_richer_holding = no + } + } + scaled_wealth = { + value = 0.1 min = 20 + } + } + if = { + limit = { + event_target:dw_desecration_target = { + is_rich_holding = yes + is_richer_holding = yes + } + } + scaled_wealth = { + value = 0.2 min = 40 + } + } + + + character_event = { id = MNM.7117 days = 4 } + } + option = { + name = EVTOPTB_MNM_7116 + + add_society_currency_trivial_effect = yes + + character_event = { id = MNM.7117 days = 4 } + } +} + +#finishing narrative piece +character_event = { + id = MNM.7117 + picture = GFX_evt_sacrifice + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + trigger = { + is_devil_worshiper_trigger = yes + has_quest = quest_devil_worshipers_desecrate_temple + } + + desc = { + trigger = { has_character_flag = desecration_violent } + text = EVTDESC_MNM_7117_VIOLENT + } + + desc = { + trigger = { has_character_flag = desecration_plotting } + text = EVTDESC_MNM_7117_PLOTTING + } + + option = { + trigger = { has_character_flag = desecration_violent } + name = EVTOPT_MNM_7117_VIOLENT + + clr_quest = quest_devil_worshipers_desecrate_temple + add_society_currency_minor_effect = yes + + event_target:dw_desecration_target = { + add_holding_modifier = { + name = desecrated_temple + years = 5 + } + holder_scope = { + religion_authority = { + modifier = temple_desecrated + years = 30 + } + } + } + + hidden_effect = { + clr_character_flag = desecration_violent + sound_effect = devil_worshippers_desecrate_temple + random = { + chance = 50 + minor_soul_corruption_effect = yes + } + clr_character_flag = desecration_in_progress + } + + event_target:desecration_holder = { + clr_character_flag = desecration_at_home + } + } + option = { + trigger = { has_character_flag = desecration_plotting } + name = EVTOPT_MNM_7117_PLOTTING + + clr_quest = quest_devil_worshipers_desecrate_temple + add_society_currency_medium_effect = yes + + event_target:dw_desecration_target = { + add_holding_modifier = { + name = desecrated_temple + years = 5 + hidden = yes + } + holder_scope = { + religion_authority = { + modifier = temple_desecrated + years = 30 + } + } + } + + hidden_effect = { + clr_character_flag = desecration_violent + sound_effect = devil_worshippers_desecrate_temple + clr_character_flag = desecration_in_progress + random = { + chance = 50 + minor_soul_corruption_effect = yes + } + } + event_target:desecration_holder = { + clr_character_flag = desecration_at_home + } + } +} + + + +#MISSION: Corrupt a priest +#Ping event for mission Corrupt a Priest +character_event = { + id = MNM.7838 + hide_window = yes + + is_triggered_only = yes + + immediate = { + FROM = { society_quest_event = { id = MNM.7839 days = 7 random = 7 } } + } +} + +#MISSION: +#We want you to corrupt this priest! +society_quest_event = { + id = MNM.7839 + desc = EVTDESC_MNM_7839 + quest_target = event_target:corrupt_priest_mission_target + + is_triggered_only = yes + + immediate = { + random_character = { + limit = { + is_offmap_ruler = no + is_priest = yes + ai = yes + NOT = { character = ROOT } + is_within_diplo_range = ROOT + is_inaccessible_trigger = no + religion = ROOT + prisoner = no + NOT = { trait = incapable } + NOT = { same_society_as = ROOT } + } + save_event_target_as = corrupt_priest_mission_target + } + if = { + limit = { society_rank >= 2 } + random_character = { + limit = { + is_offmap_ruler = no + is_ruler = yes + ai = yes + NOT = { character = ROOT } + is_within_diplo_range = ROOT + is_inaccessible_trigger = no + religion = ROOT + prisoner = no + NOT = { trait = incapable } + higher_tier_than = BARON + lower_tier_than = KING + is_priest = yes + NOT = { same_society_as = ROOT } + } + save_event_target_as = corrupt_priest_mission_target + } + } + if = { + limit = { society_rank >= 3 } + random_character = { + limit = { + is_offmap_ruler = no + is_ruler = yes + ai = yes + NOT = { character = ROOT } + is_within_diplo_range = ROOT + is_inaccessible_trigger = no + religion = ROOT + prisoner = no + NOT = { trait = incapable } + higher_tier_than = BARON + is_priest = yes + NOT = { same_society_as = ROOT } + } + save_event_target_as = corrupt_priest_mission_target + } + } + } + + option = { #accept + name = ACCEPT + event_target:corrupt_priest_mission_target = { + set_character_flag = appear_in_option + clr_character_flag = appear_in_option + } + event_target:corrupt_priest_mission_target = { + set_quest_target = { + id = quest_devil_worshipers_corrupt_priest + holder = ROOT + } + } + } + option = { #nah thx + name = DECLINE + custom_tooltip = { text = decline_quest_tooltip } + + hidden_effect = { + add_character_modifier = { + name = quest_cooldown_timer + hidden = yes + days = 1000 + } + } + ai_chance = { factor = 0 } + } +} + + +#MISSION: Sacrifice character +#Ping event for the mission Sacrifice Someone +character_event = { + id = MNM.7024 + hide_window = yes + + is_triggered_only = yes + + immediate = { FROM = { society_quest_event = { id = MNM.7025 days = 7 random = 7 } } } +} + +## For the character that gets the mission Sacrifice someone +society_quest_event = { + id = MNM.7025 + desc = EVTDESC_MNM_7025 + border = GFX_event_letter_frame_intrigue + + is_triggered_only = yes + + immediate = { + random_list = { + 10 = { set_character_flag = sacrifice_ruler } + 10 = { set_character_flag = sacrifice_holy_person } + 10 = { set_character_flag = sacrifice_virgin } + 5 = { set_character_flag = sacrifice_dwarf } + } + } + + option = { + name = ACCEPT + + if = { + limit = { has_character_flag = sacrifice_ruler } + set_quest = quest_the_devil_worshipers_sacrifice_ruler + } + if = { + limit = { has_character_flag = sacrifice_holy_person } + set_quest = quest_the_devil_worshipers_sacrifice_holy_person + } + if = { + limit = { has_character_flag = sacrifice_virgin } + set_quest = quest_the_devil_worshipers_sacrifice_virgin + } + if = { + limit = { has_character_flag = sacrifice_dwarf } + set_quest = quest_the_devil_worshipers_sacrifice_dwarf + } + } + + option = { + name = DECLINE + custom_tooltip = { text = decline_quest_tooltip } + + add_character_modifier = { + name = quest_cooldown_timer + hidden = yes + days = 1000 + } + + ai_chance = { factor = 0 } + } + + after = { + hidden_effect = { + clr_character_flag = sacrifice_ruler + clr_character_flag = sacrifice_holy_person + clr_character_flag = sacrifice_virgin + clr_character_flag = sacrifice_dwarf + } + } +} + + +#MISSION: Demonic impregnation +#Ping event for the mission Demonic Impregnation +character_event = { + id = MNM.7026 + hide_window = yes + + is_triggered_only = yes + + immediate = { FROM = { society_quest_event = { id = MNM.7027 days = 7 random = 7 } } } +} + +## For the character that gets the mission Demonic Impregnation +society_quest_event = { + id = MNM.7027 + desc = EVTDESC_MNM_7027 + + is_triggered_only = yes + + option = { + name = ACCEPT + set_quest = quest_the_devil_worshipers_demonic_impregnation + } + + option = { + name = DECLINE + custom_tooltip = { text = decline_quest_tooltip } + + add_character_modifier = { + name = quest_cooldown_timer + hidden = yes + days = 1000 + } + + ai_chance = { factor = 0 } + } +} + + +#MISSION: Demonic posesssion +#Ping event for the mission Demonic Possession +character_event = { + id = MNM.7028 + hide_window = yes + + is_triggered_only = yes + + immediate = { FROM = { society_quest_event = { id = MNM.7029 days = 7 random = 7 } } } +} + +## For the character that gets the mission Demonic Possession +society_quest_event = { + id = MNM.7029 + desc = EVTDESC_MNM_7029 + border = GFX_event_letter_frame_intrigue + + is_triggered_only = yes + quest_target = event_target:demonic_possession_mission_target + + immediate = { + random_courtier = { + limit = { + ai = yes + NOT = { character = ROOT } + NOT = { trait = incapable } + NOT = { trait = lunatic } + NOT = { trait = possessed } + is_adult = yes + NOT = { same_society_as = ROOT } + } + save_event_target_as = demonic_possession_mission_target + } + } + + option = { + name = ACCEPT + + event_target:demonic_possession_mission_target = { + set_character_flag = appear_in_option + clr_character_flag = appear_in_option + } + + event_target:demonic_possession_mission_target = { + set_quest_target = { + id = quest_the_devil_worshipers_demonic_possession + holder = ROOT + } + } + + } + + option = { + name = DECLINE + custom_tooltip = { text = decline_quest_tooltip } + + add_character_modifier = { + name = quest_cooldown_timer + hidden = yes + days = 1000 + } + + ai_chance = { factor = 0 } + } +} + +##Demonic Possession## + +#Ping event for Demonic Possession +character_event = { + id = MNM.7840 + hide_window = yes + + is_triggered_only = yes + + immediate = { + save_event_target_as = possess_courtier_target + FROMFROM = { + save_event_target_as = possess_courtier_spell_caster + character_event = { id = MNM.7841 } + } + } +} + +#Event for Demonic Possession Spellcasting +character_event = { + id = MNM.7841 + picture = GFX_evt_dark_prayer + desc = EVTDESC_MNM_7841 + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { #Possess them + name = EVTOPTA_MNM_7841 + custom_tooltip = { text = EVTOPTA_MNM_7841_TOOLTIP } + hidden_effect = { + event_target:possess_courtier_target = { + character_event = { id = MNM.7842 days = 3 random = 27 } + } + } + } + option = { #No I won't + name = EVTOPTB_MNM_7841 + custom_tooltip = { text = EVTOPTB_MNM_7841_TOOLTIP } + event_target:possess_courtier_target = { + hidden_effect = { + clr_character_flag = possessing_courtier + } + } + ai_chance = { factor = 0 } + } +} + +#Ping event for Demonic Possession outcome +character_event = { + id = MNM.7842 + hide_window = yes + + is_triggered_only = yes + + immediate = { + event_target:possess_courtier_spell_caster = { + random_list = { + 80 = { + character_event = { id = MNM.7843 days = 3 random = 27 } #controlled possession + } + 10 = { + character_event = { id = MNM.7844 days = 3 random = 27 } #just possession + } + 10 = { + character_event = { id = MNM.7845 days = 3 random = 27 } #lunatic instead of possession + } + } + } + } +} + +#Demonic Possession Success event +character_event = { + id = MNM.7843 + picture = GFX_evt_shady_meeting + desc = EVTDESC_MNM_7843 + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + immediate = { + event_target:possess_courtier_target = { add_trait = possessed } + } + + option = { + name = EVTOPTA_MNM_7843 + #If quest holder, clear quest and reward + if = { + limit = { + has_quest = quest_the_devil_worshipers_demonic_possession + quest_target = { character = event_target:possess_courtier_target } + } + clr_quest = quest_the_devil_worshipers_demonic_possession + if = { + limit = { FROM = { is_female = yes } } + sound_effect = devil_worshippers_demonic_possession_female + } + if = { + limit = { FROM = { is_female = no } } + sound_effect = devil_worshippers_demonic_possession_male + } + add_society_currency_medium_effect = yes + } + reverse_opinion = { + who = event_target:possess_courtier_target + modifier = opinion_loyal_servant + } + hidden_effect = { + minor_soul_corruption_effect = yes + event_target:possess_courtier_target = { + random = { #might kill you first year + chance = 2 + character_event = { id = MNM.7846 days = 180 random = 180 } + } + } + } + } +} + +#Demonic Possession Failure event (possession) +character_event = { + id = MNM.7844 + picture = GFX_evt_lunatic + desc = EVTDESC_MNM_7844 + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + immediate = { + event_target:possess_courtier_target = { add_trait = possessed } + } + + option = { + name = EVTOPTA_MNM_7844 + custom_tooltip = { text = EVTOPTA_MNM_7844_TOOLTIP } + if = { + limit = { + has_quest = quest_the_devil_worshipers_demonic_possession + quest_target = { character = FROM } + } + clr_quest = { + id = quest_the_devil_worshipers_demonic_possession + failure = yes + } + } + hidden_effect = { + major_soul_corruption_effect = yes + } + } +} + +#Demonic Possession Failure event (lunatic) +character_event = { + id = MNM.7845 + picture = GFX_evt_lunatic + desc = EVTDESC_MNM_7845 + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + immediate = { + event_target:possess_courtier_target = { add_trait = lunatic } + } + + option = { + name = EVTOPTA_MNM_7845 + custom_tooltip = { text = EVTOPTA_MNM_7845_TOOLTIP } + if = { + limit = { + has_quest = quest_the_devil_worshipers_demonic_possession + quest_target = { character = FROM } + } + clr_quest = { + id = quest_the_devil_worshipers_demonic_possession + failure = yes + } + } + hidden_effect = { + major_soul_corruption_effect = yes + } + } +} + +#Ping event for Demonic Possession courtier kills you +character_event = { + id = MNM.7846 + hide_window = yes + + is_triggered_only = yes + + trigger = { is_alive = yes } + + immediate = { + event_target:possess_courtier_spell_caster = { + character_event = { id = MNM.7847 } + } + } +} + +#Demonic Possession Failure event (they kill you) +character_event = { + id = MNM.7847 + picture = GFX_evt_shadow + desc = EVTDESC_MNM_7847 + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_7847 + + death = { + death_reason = death_murder_unknown + killer = FROM + } + hidden_tooltip = { + event_target:possess_courtier_target = { + add_character_modifier = { + name = suspected_assassin + months = 48 + } + } + } + } +} + +########################################### +# Member Interaction Events +# Fired from 'on_society_bi_yearly_pulse' +# By Henrik Fahraeus +########################################### + +########################################### +# Satanic Orgy - Hidden start +# Fired from on_society_bi_yearly_pulse +########################################### +character_event = { + id = MNM.20000 + hide_window = yes + + is_triggered_only = yes + + only_playable = yes + only_capable = yes + prisoner = no + is_in_society = yes + + trigger = { + is_devil_worshiper_trigger = yes + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = celibate } + is_ill = no + } + + weight_multiplier = { + factor = 1 + modifier = { + factor = 2.0 + trait = lustful + } + modifier = { + factor = 1.5 + trait = hedonist + } + modifier = { + factor = 3.0 + has_focus = focus_seduction + } + modifier = { + factor = 0.5 + trait = chaste + } + modifier = { + factor = 0.25 + has_character_flag = had_an_orgy + } + } + + immediate = { + # First look for someone at court + society = { + random_society_member = { + limit = { + ai = yes + is_incapable = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = celibate } + OR = { + is_female = no + NOT = { age = 45 } + is_pregnant = no + is_ill = no + } + NOT = { character = ROOT } + in_command = no + host = { character = ROOT } + } + character_event = { id = MNM.20001 } + break = yes + } + + # Then look for someone in the same realm + random_society_member = { + limit = { + ai = yes + is_incapable = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = celibate } + OR = { + is_female = no + NOT = { age = 45 } + is_pregnant = no + is_ill = no + } + NOT = { character = ROOT } + in_command = no + same_realm = yes + } + character_event = { id = MNM.20001 } + break = yes + } + + # Then look abroad... + random_society_member = { + limit = { + ai = yes + is_incapable = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { trait = celibate } + OR = { + is_female = no + NOT = { age = 45 } + is_pregnant = no + is_ill = no + } + NOT = { character = ROOT } + in_command = no + is_within_diplo_range = ROOT + } + character_event = { id = MNM.20001 } + } + } + } +} + +# Bounce +character_event = { + id = MNM.20001 + hide_window = yes + + is_triggered_only = yes + + immediate = { + FROM = { character_event = { id = MNM.20002 } } + } +} + +# Satanic Orgy - Invitation +character_event = { + id = MNM.20002 + picture = GFX_evt_sultan + border = GFX_event_normal_frame_intrigue + + desc = { + text = EVTDESC_MNM_20002 + trigger = { + FROM = { + NOT = { host = { character = ROOT } } + } + } + } + desc = { + text = EVTDESC_MNM_20002_COURT + trigger = { + FROM = { + host = { character = ROOT } + } + } + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_20002 # Of course + ai_chance = { + factor = 100 + } + + FROM = { character_event = { id = MNM.20003 tooltip = EVT_TT_20003 } } + } + option = { + name = EVTOPTB_MNM_20002 # No way! + ai_chance = { + factor = 1 + modifier = { + factor = 200 + trait = chaste + } + modifier = { + factor = 50 + trait = craven + } + } + + detract_society_currency_minor_effect = yes + reverse_opinion = { who = FROM modifier = opinion_coward years = 5 } + } +} + +# Bounce +character_event = { + id = MNM.20003 + hide_window = yes + + is_triggered_only = yes + + immediate = { + save_event_target_as = sex_partner + FROM = { character_event = { id = MNM.20004 days = 3 } } + } +} + +# Satanic Orgy - Aftermath +character_event = { + id = MNM.20004 + picture = GFX_evt_bad_news + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + immediate = { + set_character_flag = had_an_orgy + + random = { + chance = 50 + + unprotected_sex_effect_event_target = yes + set_character_flag = orgy_sex + + # Hetero + if = { + limit = { + NOT = { same_sex = FROM } + } + if = { + limit = { + trait = homosexual + } + random = { + chance = 50 + set_character_flag = orgy_lose_homo_trait + } + } + } + + # Homo + if = { + limit = { + same_sex = FROM + } + if = { + limit = { + NOT = { trait = homosexual } + } + random = { + chance = 25 + set_character_flag = orgy_gain_homo_trait + } + } + } + + # Gain Lover? + if = { + limit = { + NOT = { is_lover = FROM } + OR = { + has_character_flag = orgy_lose_homo_trait + has_character_flag = orgy_gain_homo_trait + AND = { + same_sex = FROM + trait = homosexual + } + AND = { + NOT = { same_sex = FROM } + NOT = { trait = homosexual } + } + } + } + random = { + chance = 50 + set_character_flag = orgy_lover + } + } + } + + random_list = { + 100 = { # Become more lustful + modifier = { + factor = 0 + trait = lustful + } + set_character_flag = orgy_sex_lustify + } + 20 = { # Gain a "sex dwarf" + set_character_flag = orgy_sex_dwarf + modifier = { + factor = 0 + any_courtier = { + trait = dwarf + } + } + } + 100 = { # Gain the "Robust" trait + modifier = { + factor = 0 + trait = robust + } + set_character_flag = orgy_gain_robust + } + 100 = { # Gain the "Feeble" trait + modifier = { + factor = 0 + trait = feeble + } + set_character_flag = orgy_gain_feeble + } + 50 = { # Gain the "Cannibal" trait + modifier = { + factor = 0 + trait = cannibal_trait + } + set_character_flag = orgy_cannibal + } + 100 = { # Gain a demonic blessing + modifier = { + factor = 0 + OR = { + has_character_modifier = satyric_blessing + has_character_modifier = blessing_of_lilith + } + } + set_character_flag = orgy_blessing + } + } + + # Random courtier is ritually murdered + random = { + chance = 20 + random_courtier = { + limit = { + NOR = { + character = ROOT + character = FROM + is_married = ROOT + is_close_relative = ROOT + } + is_adult = yes + prisoner = no + is_ruler = no + NOT = { same_society_as = ROOT } + } + ROOT = { set_character_flag = orgy_murder } + save_event_target_as = orgy_casualty + death = { death_reason = death_murder_unknown killer = ROOT } + } + } + } + + desc = { + text = EVTDESC_MNM_20004 + picture = GFX_evt_sultan + trigger = { + NOT = { has_character_flag = orgy_sex } + } + } + + desc = { + text = EVTDESC_MNM_20004_SEX + picture = GFX_evt_sultan + trigger = { + has_character_flag = orgy_sex + OR = { + AND = { + same_sex = FROM + trait = homosexual + } + AND = { + NOT = { same_sex = FROM } + NOT = { trait = homosexual } + } + } + } + } + + desc = { + text = EVTDESC_MNM_20004_ODD_SEX + trigger = { + has_character_flag = orgy_sex + OR = { + AND = { + same_sex = FROM + NOT = { trait = homosexual } + } + AND = { + NOT = { same_sex = FROM } + trait = homosexual + } + } + } + } + + option = { + name = { + text = EVTOPTA_MNM_20004_CANNIBAL + trigger = { + has_character_flag = orgy_cannibal + } + } + name = { + text = EVTOPTA_MNM_20004_GOOD # I feel good! + trigger = { + NOT = { has_character_flag = orgy_cannibal } + OR = { + has_character_flag = orgy_gain_robust + has_character_flag = orgy_blessing + } + } + } + name = { + text = EVTOPTA_MNM_20004_BAD # I feel drained... + trigger = { + NOT = { has_character_flag = orgy_cannibal } + has_character_flag = orgy_gain_feeble + } + } + name = { + text = EVTOPTA_MNM_20004_CHANGE + trigger = { + NOT = { has_character_flag = orgy_cannibal } + OR = { + has_character_flag = orgy_gain_homo_trait + has_character_flag = orgy_lose_homo_trait + } + } + } + + name = { + text = EVTOPTA_MNM_20004 + trigger = { + NOR = { + has_character_flag = orgy_cannibal + has_character_flag = orgy_gain_robust + has_character_flag = orgy_blessing + has_character_flag = orgy_gain_feeble + has_character_flag = orgy_gain_homo_trait + has_character_flag = orgy_lose_homo_trait + } + } + } + + # Dark Power gain + add_society_currency_minor_effect = yes + + if = { + limit = { has_character_flag = orgy_gain_homo_trait } + add_trait = homosexual + } + + if = { + limit = { has_character_flag = orgy_lose_homo_trait } + remove_trait = homosexual + } + + if = { + limit = { has_character_flag = orgy_lover } + if = { + limit = { NOT = { is_rival = FROM } } + add_lover = FROM + } + + if = { + limit = { is_rival = FROM } + remove_rival = FROM + } + } + + if = { + limit = { has_character_flag = orgy_sex_lustify } + if = { + limit = { NOT = { trait = chaste } } + add_trait = lustful + } + if = { + limit = { trait = chaste } + remove_trait = chaste + } + } + + if = { + limit = { has_character_flag = orgy_sex_dwarf } + create_character = { + random_traits = no + dynasty = none + religion = FROM + culture = FROM + female = no + age = 30 + attributes = { + intrigue = 6 + diplomacy = 9 + } + trait = elusive_shadow + trait = dwarf + trait = one_eyed + trait = cruel + trait = seducer + trait = lustful + trait = drunkard + trait = ugly + trait = gregarious + } + new_character = { + set_character_flag = sex_dwarf + + if = { + limit = { + ROOT = { + NOT = { has_character_flag = orgy_sex } + OR = { + is_female = yes + trait = homosexual + } + } + } + save_event_target_as = sex_partner + ROOT = { set_character_flag = orgy_sex_with_dwarf } + } + } + if = { + limit = { has_character_flag = orgy_sex_with_dwarf } + unprotected_sex_effect_event_target = yes + } + } + + # Impregnated by unspecified participant + if = { + limit = { + is_female = yes + NOT = { age = 45 } + fertility = 0.4 + is_pregnant = no + NOR = { + has_character_flag = orgy_sex_with_dwarf + has_character_flag = orgy_sex + } + society = { any_society_member = { is_female = no prisoner = no fertility = 1 } } + } + hidden_tooltip = { + random = { + chance = 25 + society = { + random_society_member = { + limit = { + is_female = no + prisoner = no + fertility = 1 + } + save_event_target_as = impregnator + } + } + impregnate_cuckoo = event_target:impregnator + set_character_flag = orgy_impregnated + } + } + } + + clr_character_flag = orgy_sex_with_dwarf + + if = { + limit = { has_character_flag = orgy_gain_robust } + if = { + limit = { NOT = { trait = feeble } } + add_trait = robust + } + if = { + limit = { trait = feeble } + remove_trait = feeble + } + } + + if = { + limit = { has_character_flag = orgy_gain_feeble } + if = { + limit = { NOT = { trait = robust } } + add_trait = feeble + } + if = { + limit = { trait = robust } + remove_trait = robust + } + } + + if = { + limit = { has_character_flag = orgy_cannibal } + add_trait = cannibal_trait + } + + if = { + limit = { has_character_flag = orgy_blessing } + if = { + limit = { is_female = yes } + add_character_modifier = { + modifier = blessing_of_lilith + days = -1 + } + } + if = { + limit = { is_female = no } + add_character_modifier = { + modifier = satyric_blessing + days = -1 + } + } + } + + # Friend gained / Rivalry lost + if = { + limit = { + NOR = { + is_lover = FROM + is_friend = FROM + is_rival = FROM + } + random = 75 + } + add_friend = FROM + } + if = { + limit = { + is_rival = FROM + } + remove_rival = FROM + } + + if = { + limit = { + has_character_flag = orgy_murder + } + event_target:orgy_casualty = { + tooltip = { + death = { death_reason = death_murder_unknown killer = ROOT } + } + show_portrait = yes + } + } + + clr_character_flag = orgy_sex + clr_character_flag = orgy_lose_homo_trait + clr_character_flag = orgy_gain_homo_trait + clr_character_flag = orgy_lover + clr_character_flag = orgy_sex_lustify + clr_character_flag = orgy_sex_dwarf + clr_character_flag = orgy_gain_robust + clr_character_flag = orgy_gain_feeble + clr_character_flag = orgy_cannibal + clr_character_flag = orgy_blessing + clr_character_flag = orgy_murder + } +} + +########################################### +# Satanic Night at the Town - Hidden start +# Fired from on_society_bi_yearly_pulse +########################################### +character_event = { + id = MNM.20010 + hide_window = yes + + is_triggered_only = yes + + only_playable = yes + only_capable = yes + prisoner = no + is_in_society = yes + + trigger = { + is_devil_worshiper_trigger = yes + NOT = { is_inaccessible_trigger = yes } + is_ill = no + } + + weight_multiplier = { + factor = 1 + modifier = { + factor = 1.25 + trait = impaler + } + modifier = { + factor = 1.25 + trait = cruel + } + modifier = { + factor = 1.25 + trait = arbitrary + } + modifier = { + factor = 1.25 + trait = socializer + } + modifier = { + factor = 1.25 + trait = drunkard + } + modifier = { + factor = 1.25 + trait = gluttonous + } + modifier = { + factor = 3.0 + has_focus = focus_carousing + } + modifier = { + factor = 0.5 + trait = temperate + } + modifier = { + factor = 0.5 + trait = just + } + modifier = { + factor = 0.25 + trait = kind + } + modifier = { + factor = 0.25 + has_character_flag = had_a_night_at_the_town + } + } + + immediate = { + # First look for someone at court + society = { + random_society_member = { + limit = { + ai = yes + is_incapable = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + is_ill = no + NOT = { character = ROOT } + in_command = no + host = { character = ROOT } + } + character_event = { id = MNM.20011 } + break = yes + } + + # Then look for someone in the same realm + random_society_member = { + limit = { + ai = yes + is_incapable = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + is_ill = no + NOT = { character = ROOT } + in_command = no + same_realm = yes + } + character_event = { id = MNM.20011 } + break = yes + } + + # Then look abroad... + random_society_member = { + limit = { + ai = yes + is_incapable = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + is_ill = no + NOT = { character = ROOT } + in_command = no + is_within_diplo_range = ROOT + } + character_event = { id = MNM.20011 } + } + } + } +} + +# Bounce +character_event = { + id = MNM.20011 + hide_window = yes + + is_triggered_only = yes + + immediate = { + FROM = { character_event = { id = MNM.20012 } } + } +} + +# Satanic Night at the Town - Invitation +character_event = { + id = MNM.20012 + picture = GFX_evt_shady_meeting #GFX_evt_council + border = GFX_event_normal_frame_intrigue + + desc = { + text = EVTDESC_MNM_20012 + trigger = { + FROM = { + NOT = { host = { character = ROOT } } + } + } + } + desc = { + text = EVTDESC_MNM_20012_COURT + trigger = { + FROM = { + host = { character = ROOT } + } + } + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_20012 # Of course + ai_chance = { + factor = 100 + } + + FROM = { character_event = { id = MNM.20013 tooltip = EVT_TT_20013 portrait = no } } + } + option = { + name = EVTOPTB_MNM_20012 # No way! + ai_chance = { + factor = 1 + modifier = { + factor = 20 + trait = temperate + } + modifier = { + factor = 10 + trait = kind + } + modifier = { + factor = 10 + trait = just + } + } + + detract_society_currency_minor_effect = yes + reverse_opinion = { who = FROM modifier = opinion_coward years = 5 } + } +} + +# Next step decided +character_event = { + id = MNM.20013 + hide_window = yes + + is_triggered_only = yes + + immediate = { + if = { + limit = { + FROM = { + OR = { + trait = arbitrary + trait = wroth + trait = cruel + trait = impaler + trait = lunatic + trait = possessed + } + } + } + FROM = { character_event = { id = MNM.20014 days = 1 } } + break = yes + } + + FROM = { character_event = { id = MNM.20021 days = 2 } } + } +} + +# Satanic Night at the Town - Choice +character_event = { + id = MNM.20014 + picture = GFX_evt_tribal_lands + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + immediate = { + set_character_flag = had_a_night_at_the_town + } + + desc = { + text = EVTDESC_MNM_20014 + picture = GFX_evt_stone_church + trigger = { + OR = { + society_member_of = the_satanists + society_member_of = the_cold_ones + society_member_of = the_cult_of_kali + society_member_of = the_trollcrafters + society_member_of = the_vodouns + } + } + } + desc = { + text = EVTDESC_MNM_20014_NOMAD + picture = GFX_evt_nomad_camp + trigger = { + society_member_of = the_plaguebringers + has_dlc = "Horse Lords" + } + } + desc = { + text = EVTDESC_MNM_20014_NOMAD + trigger = { + society_member_of = the_plaguebringers + NOT = { has_dlc = "Horse Lords" } + } + } + desc = { + text = EVTDESC_MNM_20014_BACCHANALIS + picture = GFX_evt_bacchants_initiation + trigger = { + society_member_of = the_bacchants + } + } + + option = { + name = { + text = EVTOPTA_MNM_20014 # Head for the town + trigger = { + NOT = { + society_member_of = the_bacchants + } + } + } + name = { + text = EVTOPTA_MNM_20014_B # Prefers orgy to murder. + trigger = { + society_member_of = the_bacchants + } + } + FROM = { character_event = { id = MNM.20020 days = 2 portrait = no } } + } + + option = { + name = { + text = EVTOPTB_MNM_20014 # Home Invasion + trigger = { + NOT = { + society_member_of = the_bacchants + } + } + } + name = { + text = EVTOPTB_MNM_20014_B # Intoxicated massacre. + trigger = { + society_member_of = the_bacchants + } + } + character_event = { id = MNM.20015 days = 2 tooltip = EVT_TT_20015 } + } +} + +# Home Invasion - Main event +character_event = { + id = MNM.20015 + picture = GFX_evt_burning_house + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + immediate = { + # Chance of a bad effect + random = { + chance = 25 + random_list = { + 100 = { # Buddy dies + modifier = { + factor = 0 + FROMFROM = { + is_ruler = yes + } + } + set_character_flag = home_invasion_buddy_dies + } + 100 = { # Wounded + modifier = { + factor = 0 + trait = wounded + } + set_character_flag = home_invasion_wounded + } + 100 = { # Become Arbitrary + modifier = { + factor = 0 + trait = arbitrary + } + set_character_flag = home_invasion_gain_arbitrary + } + 100 = { # Become Cannibal + modifier = { + factor = 0 + trait = cannibal_trait + } + set_character_flag = home_invasion_gain_cannibal + } + } + } + + # Increased ambition? + if = { + limit = { + NOT = { trait = ambitious } + } + random = { + chance = 25 + set_character_flag = home_invasion_inc_ambition + } + } + + # Increased cruelty? (Cruel and Impaler) + if = { + limit = { + OR = { + NOT = { trait = cruel } + NOT = { lifestyle_traits = 1 } + } + } + random = { + chance = 50 + set_character_flag = home_invasion_inc_cruelty + } + } + + # Remove stress? + if = { + limit = { + trait = stressed + } + random = { + chance = 25 + set_character_flag = home_invasion_remove_stress + } + } + + # Remove depression? + if = { + limit = { + trait = depressed + NOT = { trait = stressed } + } + random = { + chance = 25 + set_character_flag = home_invasion_remove_depression + } + } + + # Chance of peasant revolt in case you leave the scene intact + if = { + limit = { + location = { + NAND = { + has_empty_holding = yes + owner = { + is_nomadic = yes + } + } + + any_province_holding = { + NOT = { holding_type = nomad } + } + } + } + random = { + chance = 50 + set_character_flag = peasants_revolt + } + } + } + + desc = { + trigger = { + has_dlc = "Reapers" + NOT = { has_character_flag = home_invasion_buddy_dies } + NOT = { society_member_of = the_bacchants } + } + picture = GFX_evt_impalement + text = EVTDESC_MNM_20015 + } + desc = { + trigger = { + NOT = { has_dlc = "Reapers" } + NOT = { has_character_flag = home_invasion_buddy_dies } + NOT = { society_member_of = the_bacchants } + } + text = EVTDESC_MNM_20015 + } + desc = { + trigger = { + has_dlc = "Reapers" + has_character_flag = home_invasion_buddy_dies + NOT = { society_member_of = the_bacchants } + } + picture = GFX_evt_impalement + text = EVTDESC_MNM_20015_DEATH + } + desc = { + trigger = { + NOT = { has_dlc = "Reapers" } + has_character_flag = home_invasion_buddy_dies + NOT = { society_member_of = the_bacchants } + } + text = EVTDESC_MNM_20015_DEATH + } + desc = { + trigger = { + society_member_of = the_bacchants + NOT = { has_character_flag = home_invasion_buddy_dies } + } + picture = GFX_evt_bacchants_initiation + text = EVTDESC_MNM_20015_B + } + desc = { + trigger = { + society_member_of = the_bacchants + has_character_flag = home_invasion_buddy_dies + } + picture = GFX_evt_bacchants_initiation + text = EVTDESC_MNM_20015_DEATH_B + } + + option = { + + name = { + text = EVTOPTA_MNM_20015 # Burn everything! No one must know. + trigger = { + NOT = { + society_member_of = the_bacchants + } + } + } + name = { + text = EVTOPTA_MNM_20015_B # Clean up the mess. + trigger = { + society_member_of = the_bacchants + } + } + add_society_currency_minor_effect = yes + + # Buddy dies + if = { + limit = { + has_character_flag = home_invasion_buddy_dies + } + FROMFROM = { + death = { death_reason = death_accident } + } + } + + # Wounded + if = { + limit = { + has_character_flag = home_invasion_wounded + } + add_trait = wounded + } + + # Become Arbitrary + if = { + limit = { + has_character_flag = home_invasion_gain_arbitrary + } + if = { + limit = { + NOT = { trait = just } + } + add_trait = arbitrary + } + if = { + limit = { + trait = just + } + remove_trait = just + } + } + + # Cannibal + if = { + limit = { + has_character_flag = home_invasion_gain_cannibal + } + add_trait = cannibal_trait + } + + # Ambition + if = { + limit = { + has_character_flag = home_invasion_inc_ambition + } + if = { + limit = { + NOT = { trait = content } + } + add_trait = ambitious + } + if = { + limit = { + trait = content + } + remove_trait = content + } + } + + # Increase Cruelty + if = { + limit = { + has_character_flag = home_invasion_inc_cruelty + } + if = { + limit = { + trait = cruel + NOT = { lifestyle_traits = 1 } + } + add_trait = impaler + } + if = { + limit = { + NOT = { trait = kind } + NOT = { trait = cruel } + } + add_trait = cruel + } + if = { + limit = { + trait = kind + } + remove_trait = kind + } + } + + # Relieve Stress + if = { + limit = { + has_character_flag = home_invasion_remove_stress + } + remove_trait = stressed + } + + # Cure Depression + if = { + limit = { + has_character_flag = home_invasion_remove_depression + } + remove_trait = depressed + } + + # Friend gained / Rivalry lost + if = { + limit = { + NOT = { has_character_flag = home_invasion_buddy_dies } + NOT = { is_friend = FROMFROM } + } + if = { + limit = { + NOR = { + is_lover = FROMFROM + is_friend = FROMFROM + is_rival = FROMFROM + } + } + add_friend = FROMFROM + } + if = { + limit = { + is_rival = FROMFROM + } + remove_rival = FROMFROM + } + } + + clr_character_flag = home_invasion_buddy_dies + clr_character_flag = home_invasion_wounded + clr_character_flag = home_invasion_gain_arbitrary + clr_character_flag = home_invasion_gain_cannibal + clr_character_flag = home_invasion_inc_ambition + clr_character_flag = home_invasion_inc_cruelty + clr_character_flag = home_invasion_remove_stress + clr_character_flag = home_invasion_remove_depression + clr_character_flag = peasants_revolt + } + + option = { + name = EVTOPTB_MNM_20015 # Leave it as a monument (risk of revolt) + + name = { + text = EVTOPTB_MNM_20015 # Leave it as a monument (risk of revolt) + trigger = { + NOT = { + society_member_of = the_bacchants + } + } + } + name = { + text = EVTOPTB_MNM_20015_B # Leave it as a monument (risk of revolt) + trigger = { + society_member_of = the_bacchants + } + } + add_society_currency_medium_effect = yes + + # Buddy dies + if = { + limit = { + has_character_flag = home_invasion_buddy_dies + } + FROMFROM = { + death = { death_reason = death_accident } + } + } + + # Wounded + if = { + limit = { + has_character_flag = home_invasion_wounded + } + add_trait = wounded + } + + # Become Arbitrary + if = { + limit = { + has_character_flag = home_invasion_gain_arbitrary + } + if = { + limit = { + NOT = { trait = just } + } + add_trait = arbitrary + } + if = { + limit = { + trait = just + } + remove_trait = just + } + } + + # Cannibal + if = { + limit = { + has_character_flag = home_invasion_gain_cannibal + } + add_trait = cannibal_trait + } + + # Ambition + if = { + limit = { + has_character_flag = home_invasion_inc_ambition + } + if = { + limit = { + NOT = { trait = content } + } + add_trait = ambitious + } + if = { + limit = { + trait = content + } + remove_trait = content + } + } + + # Increase Cruelty + if = { + limit = { + has_character_flag = home_invasion_inc_cruelty + } + if = { + limit = { + trait = cruel + NOT = { lifestyle_traits = 1 } + } + add_trait = impaler + } + if = { + limit = { + NOT = { trait = kind } + NOT = { trait = cruel } + } + add_trait = cruel + } + if = { + limit = { + trait = kind + } + remove_trait = kind + } + } + + # Relieve Stress + if = { + limit = { + has_character_flag = home_invasion_remove_stress + } + remove_trait = stressed + } + + # Cure Depression + if = { + limit = { + has_character_flag = home_invasion_remove_depression + } + remove_trait = depressed + } + + # Blessing of Berith + if = { + limit = { + NOT = { has_character_modifier = blessing_of_berith } + } + add_character_modifier = { + modifier = blessing_of_berith + years = 5 + } + } + + # Friend gained / Rivalry lost + if = { + limit = { + NOT = { has_character_flag = home_invasion_buddy_dies } + NOT = { is_friend = FROMFROM } + } + if = { + limit = { + NOR = { + is_lover = FROMFROM + is_friend = FROMFROM + is_rival = FROMFROM + } + } + add_friend = FROMFROM + } + if = { + limit = { + is_rival = FROMFROM + } + remove_rival = FROMFROM + } + } + + if = { + limit = { NOT = { has_character_flag = peasants_revolt } } + character_event = { id = MNM.20016 days = 3 tooltip = EVT_TT_20016 } + } + + if = { + limit = { has_character_flag = peasants_revolt } + clr_character_flag = peasants_revolt + character_event = { id = MNM.20017 days = 3 tooltip = EVT_TT_20016 } + } + + clr_character_flag = home_invasion_buddy_dies + clr_character_flag = home_invasion_wounded + clr_character_flag = home_invasion_gain_arbitrary + clr_character_flag = home_invasion_gain_cannibal + clr_character_flag = home_invasion_inc_ambition + clr_character_flag = home_invasion_inc_cruelty + clr_character_flag = home_invasion_remove_stress + clr_character_flag = home_invasion_remove_depression + } +} + +# Home Invasion - Demonic Monument outcome - increased revolt risk +character_event = { + id = MNM.20016 + picture = GFX_evt_peasants + border = GFX_event_normal_frame_intrigue + + desc = EVTDESC_MNM_20016 + + is_triggered_only = yes + + immediate = { + location = { + add_province_modifier = { + modifier = rumors_of_witchcraft + years = 3 + } + } + } + + option = { + name = EVTOPTA_MNM_20016 + } +} + +# Home Invasion - Demonic Monument outcome - rebellion +character_event = { + id = MNM.20017 + picture = GFX_evt_peasants + border = GFX_event_normal_frame_intrigue + + desc = EVTDESC_MNM_20017 + + is_triggered_only = yes + + immediate = { + location = { + set_province_flag = force_peasant_revolt + province_event = { id = TOG.1000 } + clr_province_flag = force_peasant_revolt + } + } + + option = { + name = EVTOPTA_MNM_20017 + trigger = { + location = { + owner = { + OR = { + character = ROOT + is_liege_or_above = ROOT + } + } + } + } + } + + option = { + name = EVTOPTA_MNM_20017_OTHER + trigger = { + location = { + owner = { + NOR = { + character = ROOT + is_liege_or_above = ROOT + } + } + } + } + } +} + + +# Night at the tavern - Bounce +character_event = { + id = MNM.20020 + hide_window = yes + + is_triggered_only = yes + + immediate = { + FROM = { character_event = { id = MNM.20021 } } + } +} + +# Debauchery at the Tavern - Main event +character_event = { + id = MNM.20021 + picture = GFX_evt_brothel + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + immediate = { + # Gain Wroth? + if = { + limit = { + NOT = { trait = wroth } + } + random = { + chance = 25 + set_character_flag = nt_gain_wroth + } + } + + # Gain Cruel? + if = { + limit = { + NOT = { trait = cruel } + } + random = { + chance = 50 + set_character_flag = nt_gain_cruel + } + } + + # Remove stress? + if = { + limit = { + trait = stressed + } + random = { + chance = 25 + set_character_flag = nt_remove_stress + } + } + + # Remove depression? + if = { + limit = { + trait = depressed + NOT = { trait = stressed } + } + random = { + chance = 25 + set_character_flag = nt_remove_depression + } + } + + # Friendship or Rivalry? + if = { + limit = { + NOT = { is_lover = FROM } + } + random_list = { + 100 = { + modifier = { + factor = 0 + is_friend = FROM + } + set_character_flag = nt_bonding + } + 20 = { + modifier = { + factor = 0 + is_rival = FROM + } + set_character_flag = nt_rivalry + } + } + } + + # Oops, I drank the beer. + random = { + chance = 20 + modifier = { + factor = 0.5 + trait = shrewd + } + modifier = { + factor = 0.5 + trait = quick + } + modifier = { + factor = 0.25 + trait = genius + } + modifier = { + factor = 3.0 + trait = slow + } + modifier = { + factor = 2.0 + trait = dull + } + modifier = { + factor = 2.0 + trait = drunkard + } + modifier = { + factor = 2.0 + trait = hedonist + } + modifier = { + factor = 5.0 + trait = imbecile + } + modifier = { #Taking drugs is the whole point of the ritual. + factor = 0 + society_member_of = the_bacchants + } + set_character_flag = nt_drank_the_beer + } + } + + desc = { + trigger = { + NOT = { has_character_flag = nt_rivalry } + NOT = { society_member_of = the_bacchants } + } + text = EVTDESC_MNM_20021 + } + + desc = { + trigger = { + has_character_flag = nt_rivalry + NOT = { society_member_of = the_bacchants } + } + text = EVTDESC_MNM_20021_RIVALRY + } + desc = { + trigger = { + NOT = { has_character_flag = nt_rivalry } + society_member_of = the_bacchants + } + picture = GFX_evt_magic_ritual + text = EVTDESC_MNM_20021_B + } + + desc = { + trigger = { + has_character_flag = nt_rivalry + society_member_of = the_bacchants + } + picture = GFX_evt_magic_ritual + text = EVTDESC_MNM_20021_RIVALRY_B + } + + option = { + name = { + trigger = { + has_character_flag = nt_rivalry + NOT = { has_character_flag = nt_drank_the_beer } + } + text = EVTOPTA_MNM_20021_RIVALRY + } + + name = { + trigger = { + NOT = { has_character_flag = nt_drank_the_beer } + NOT = { has_character_flag = nt_rivalry } + NOT = { society_member_of = the_bacchants } + } + text = EVTOPTA_MNM_20021 + } + + name = { + trigger = { + NOT = { has_character_flag = nt_drank_the_beer } + NOT = { has_character_flag = nt_rivalry } + society_member_of = the_bacchants + } + text = EVTOPTA_MNM_20021_B + } + + name = { + trigger = { + has_character_flag = nt_drank_the_beer + } + text = EVTOPTA_MNM_20021_OOPS + } + + add_society_currency_minor_effect = yes + + # Gain Wroth + if = { + limit = { + has_character_flag = nt_gain_wroth + } + if = { + limit = { + NOT = { trait = patient } + } + add_trait = wroth + } + if = { + limit = { + trait = patient + } + remove_trait = patient + } + } + + # Gain Cruel + if = { + limit = { + has_character_flag = nt_gain_cruel + } + if = { + limit = { + NOT = { trait = kind } + } + add_trait = cruel + } + if = { + limit = { + trait = kind + } + remove_trait = kind + } + } + + # Relieve Stress + if = { + limit = { + has_character_flag = nt_remove_stress + } + remove_trait = stressed + } + + # Cure Depression + if = { + limit = { + has_character_flag = nt_remove_depression + } + remove_trait = depressed + } + + # Friend gained + if = { + limit = { + has_character_flag = nt_bonding + } + if = { + limit = { + NOR = { + is_lover = FROM + is_friend = FROM + is_rival = FROM + } + } + add_friend = FROM + } + if = { + limit = { + is_rival = FROM + } + remove_rival = FROM + } + } + + # Rival gained + if = { + limit = { + has_character_flag = nt_rivalry + } + if = { + limit = { + NOR = { + is_friend = FROM + is_rival = FROM + } + } + add_rival = FROM + } + if = { + limit = { + is_friend = FROM + } + remove_friend = FROM + } + } + + if = { + limit = { + has_character_flag = nt_drank_the_beer + } + character_event = { id = MNM.20022 days = 1 tooltip = EVT_TT_20022 } + } + + clr_character_flag = nt_gain_wroth + clr_character_flag = nt_gain_cruel + clr_character_flag = nt_remove_stress + clr_character_flag = nt_remove_depression + clr_character_flag = nt_bonding + clr_character_flag = nt_rivalry + clr_character_flag = nt_drank_the_beer + } +} + +# Debauchery at the Tavern - Drank the drugged beer +character_event = { + id = MNM.20022 + picture = GFX_evt_drunk + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + immediate = { + random_list = { + 100 = { + modifier = { + factor = 0 + trait = drunkard + } + set_character_flag = nt_gain_drunkard + } + 25 = { + modifier = { + factor = 0 + trait = lunatic + } + set_character_flag = nt_gain_lunatic + } + 100 = { + set_character_flag = nt_grow_dumber + } + 100 = { + modifier = { + factor = 0 + has_character_modifier = hallucinating + } + set_character_flag = nt_bad_modifier + } + } + } + + desc = EVTDESC_MNM_20022 + + option = { + name = EVTOPTA_MNM_20022 + + # Become a drunkard + if = { + limit = { + has_character_flag = nt_gain_drunkard + } + add_trait = drunkard + } + + #Go insane + if = { + limit = { + has_character_flag = nt_gain_lunatic + } + add_trait = lunatic + } + + #Brain damage + if = { + limit = { + has_character_flag = nt_grow_dumber + } + if = { + limit = { + NOR = { + trait = dull + trait = shrewd + trait = genius + trait = quick + trait = slow + trait = imbecile + } + } + add_trait = dull + } + if = { + limit = { + trait = slow + } + remove_trait = slow + add_trait = imbecile + } + if = { + limit = { + trait = shrewd + } + remove_trait = shrewd + } + if = { + limit = { + trait = quick + } + remove_trait = quick + } + if = { + limit = { + trait = genius + } + remove_trait = genius + add_trait = quick + } + } + + # Poisoned + if = { + limit = { + has_character_flag = nt_bad_modifier + } + add_character_modifier = { + name = hallucinating + days = 120 + } + } + + clr_character_flag = nt_gain_drunkard + clr_character_flag = nt_gain_lunatic + clr_character_flag = nt_grow_dumber + clr_character_flag = nt_bad_modifier + } +} + +########################################### +# Grand Demon Summoning - Hidden start +# Fired from on_society_bi_yearly_pulse +########################################### + +character_event = { + id = MNM.20030 + hide_window = yes + + is_triggered_only = yes + + only_playable = yes + only_capable = yes + prisoner = no + is_in_society = yes + + trigger = { + is_devil_worshiper_trigger = yes + NOT = { is_inaccessible_trigger = yes } + is_ill = no + } + + weight_multiplier = { + factor = 1 + modifier = { + factor = 2.0 + society_rank >= 3 + } + modifier = { + factor = 0.5 + society_rank == 1 + } + modifier = { + factor = 3.0 + OR = { + has_focus = focus_scholarship + has_focus = focus_theology + } + } + modifier = { + factor = 3.0 + trait = genius + } + modifier = { + factor = 3.0 + trait = mystic + } + modifier = { + factor = 2.0 + trait = quick + } + modifier = { + factor = 2.0 + trait = shrewd + } + modifier = { + factor = 0.5 + trait = dull + } + modifier = { + factor = 0.5 + trait = slow + } + modifier = { + factor = 0.1 + trait = imbecile + } + modifier = { + factor = 0.25 + has_character_flag = had_a_grand_demon_summoning + } + } + + immediate = { + # First look for someone at court + society = { + random_society_member = { + limit = { + ai = yes + is_incapable = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + is_ill = no + NOT = { character = ROOT } + in_command = no + host = { character = ROOT } + } + character_event = { id = MNM.20031 } + break = yes + } + + # Then look for someone in the same realm + random_society_member = { + limit = { + ai = yes + is_incapable = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + is_ill = no + NOT = { character = ROOT } + in_command = no + same_realm = yes + } + character_event = { id = MNM.20031 } + break = yes + } + + # Then look abroad... + random_society_member = { + limit = { + ai = yes + is_incapable = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + is_ill = no + NOT = { character = ROOT } + in_command = no + is_within_diplo_range = ROOT + } + character_event = { id = MNM.20031 } + } + } + } +} + +# Bounce +character_event = { + id = MNM.20031 + hide_window = yes + + is_triggered_only = yes + + immediate = { + FROM = { character_event = { id = MNM.20032 } } + } +} + +# Demon Summoning - Planning +narrative_event = { + id = MNM.20032 + picture = GFX_evt_shadowy_cabal + border = GFX_event_narrative_frame_intrigue + + title = EVTTITLE_MNM_20034 + + desc = { + text = EVTDESC_MNM_20032 + trigger = { + FROM = { + NOT = { host = { character = ROOT } } + } + } + } + desc = { + text = EVTDESC_MNM_20032_COURT + trigger = { + FROM = { + host = { character = ROOT } + } + } + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_20032 # Unlimited Power! + ai_chance = { + factor = 100 + modifier = { + factor = 50 + trait = ambitious + } + modifier = { + factor = 50 + trait = mystic + } + } + + set_character_flag = had_a_grand_demon_summoning + + FROM = { character_event = { id = MNM.20033 tooltip = EVT_TT_20033 portrait = no } } + } + option = { + name = EVTOPTB_MNM_20032 # Let's think this through + ai_chance = { + factor = 1 + modifier = { + factor = 50 + trait = craven + } + modifier = { + factor = 25 + trait = content + } + } + + detract_society_currency_minor_effect = yes + reverse_opinion = { who = FROM modifier = opinion_coward years = 5 } + } +} + +# Bounce +character_event = { + id = MNM.20033 + hide_window = yes + + is_triggered_only = yes + + immediate = { + FROM = { character_event = { id = MNM.20034 days = 3 } } + } +} + +# Demon Summoning - The Ritual +narrative_event = { + id = MNM.20034 + picture = GFX_evt_magic_ritual + border = GFX_event_narrative_frame_intrigue + + title = EVTTITLE_MNM_20034 + + immediate = { + hidden_effect = { + random_list = { + 100 = { # Stewardship Demon + modifier = { + factor = 0 + has_character_modifier = blessing_of_mammon + NOR = { + trait = indulgent_wastrel + trait = thrifty_clerk + trait = fortune_builder + } + } + modifier = { + factor = 2 + OR = { + trait = indulgent_wastrel + trait = thrifty_clerk + trait = fortune_builder + trait = midas_touched + } + } + modifier = { + factor = 2 + OR = { + has_focus = focus_rulership + has_focus = focus_business + } + } + set_character_flag = ds_STE + } + 100 = { # Diplomacy Demon + modifier = { + factor = 0 + has_character_modifier = blessing_of_belial + NOR = { + trait = naive_appeaser + trait = underhanded_rogue + trait = charismatic_negotiator + } + } + modifier = { + factor = 2 + OR = { + trait = naive_appeaser + trait = underhanded_rogue + trait = charismatic_negotiator + trait = grey_eminence + } + } + modifier = { + factor = 2 + OR = { + has_focus = focus_family + has_focus = focus_carousing + } + } + set_character_flag = ds_DIP + } + 100 = { # Martial Demon + modifier = { + factor = 0 + has_character_modifier = blessing_of_azazel + NOR = { + trait = misguided_warrior + trait = tough_soldier + trait = skilled_tactician + } + } + modifier = { + factor = 2 + OR = { + trait = misguided_warrior + trait = tough_soldier + trait = skilled_tactician + trait = brilliant_strategist + } + } + modifier = { + factor = 2 + OR = { + has_focus = focus_war + has_focus = focus_hunting + } + } + set_character_flag = ds_MAR + } + 100 = { # Intrigue Demon + modifier = { + factor = 0 + NOT = { + any_rival = { + always = yes + } + } + has_character_modifier = blessing_of_vetis + NOR = { + trait = amateurish_plotter + trait = flamboyant_schemer + trait = intricate_webweaver + } + } + modifier = { + factor = 2 + OR = { + trait = amateurish_plotter + trait = flamboyant_schemer + trait = intricate_webweaver + trait = elusive_shadow + } + } + modifier = { + factor = 2 + OR = { + has_focus = focus_seduction + has_focus = focus_intrigue + } + } + random_rival = { + ROOT = { set_character_flag = ds_kill_a_rival_1 } + save_event_target_as = rival_1 + } + random_rival = { + limit = { + NOT = { character = event_target:rival_1 } + } + ROOT = { set_character_flag = ds_kill_a_rival_2 } + save_event_target_as = rival_2 + } + set_character_flag = ds_INT + } + 100 = { # Learning Demon + modifier = { + factor = 0 + has_character_modifier = blessing_of_avnas + NOR = { + trait = detached_priest + trait = martial_cleric + trait = scholarly_theologian + trait = shrewd + } + } + modifier = { + factor = 2 + OR = { + trait = detached_priest + trait = martial_cleric + trait = scholarly_theologian + trait = mastermind_theologian + } + } + modifier = { + factor = 2 + OR = { + has_focus = focus_scholarship + has_focus = focus_theology + } + } + set_character_flag = ds_LEA + } + 100 = { # Disaster! + modifier = { + factor = 0.5 + trait = genius + } + modifier = { + factor = 0.5 + trait = mystic + } + modifier = { + factor = 0.75 + trait = quick + } + modifier = { + factor = 0.75 + trait = shrewd + } + modifier = { + factor = 2.0 + trait = slow + } + modifier = { + factor = 2.0 + trait = dull + } + modifier = { + factor = 5.0 + trait = imbecile + } + modifier = { + factor = 3.0 + trait = inbred + } + random_list = { + 100 = { + set_character_flag = ds_illness + } + 100 = { + modifier = { + factor = 0 + location = { + has_disease = yes + } + } + set_character_flag = ds_epidemic + } + 100 = { + modifier = { + factor = 0 + OR = { + is_female = yes + trait = eunuch + } + } + set_character_flag = ds_eunuch + } + 100 = { + set_character_flag = ds_stupid + } + 100 = { + modifier = { + factor = 0 + has_character_modifier = known_witch + } + set_character_flag = ds_exposure + } + 100 = { + modifier = { + factor = 0 + is_rival = FROM + } + set_character_flag = ds_rivalry + } + 100 = { + modifier = { + factor = 0 + trait = possessed + } + set_character_flag = ds_possess + } + } + + set_character_flag = ds_disaster + } + } + } + } + + desc = { + trigger = { + NOT = { has_character_flag = ds_disaster } + } + text = EVTDESC_MNM_20034 + } + desc = { + trigger = { + has_character_flag = ds_disaster + } + text = EVTOPTA_MNM_20034_DISASTER + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_20034 + trigger = { + NOT = { has_character_flag = ds_disaster } + } + + add_society_currency_minor_effect = yes + + increase_visibility_effect = yes + + # Stewardship Boon + if = { + limit = { + has_character_flag = ds_STE + } + if = { + limit = { + has_character_modifier = blessing_of_mammon + } + if = { + limit = { trait = fortune_builder } + hidden_tooltip = { remove_trait = fortune_builder } + add_trait = midas_touched + } + if = { + limit = { trait = thrifty_clerk } + hidden_tooltip = { remove_trait = thrifty_clerk } + add_trait = fortune_builder + } + if = { + limit = { trait = indulgent_wastrel } + hidden_tooltip = { remove_trait = indulgent_wastrel } + add_trait = thrifty_clerk + } + } + if = { + limit = { + NOT = { has_character_modifier = blessing_of_mammon } + } + add_character_modifier = { + modifier = blessing_of_mammon + days = -1 + } + } + } + + # Diplomacy Boon + if = { + limit = { + has_character_flag = ds_DIP + } + if = { + limit = { + has_character_modifier = blessing_of_belial + } + if = { + limit = { trait = charismatic_negotiator } + hidden_tooltip = { remove_trait = charismatic_negotiator } + add_trait = grey_eminence + } + if = { + limit = { trait = underhanded_rogue } + hidden_tooltip = { remove_trait = underhanded_rogue } + add_trait = charismatic_negotiator + } + if = { + limit = { trait = naive_appeaser } + hidden_tooltip = { remove_trait = naive_appeaser } + add_trait = underhanded_rogue + } + } + if = { + limit = { + NOT = { has_character_modifier = blessing_of_belial } + } + add_character_modifier = { + modifier = blessing_of_belial + days = -1 + } + } + } + + # Martial Boon + if = { + limit = { + has_character_flag = ds_MAR + } + if = { + limit = { + has_character_modifier = blessing_of_azazel + } + if = { + limit = { trait = skilled_tactician } + hidden_tooltip = { remove_trait = skilled_tactician } + add_trait = brilliant_strategist + } + if = { + limit = { trait = tough_soldier } + hidden_tooltip = { remove_trait = tough_soldier } + add_trait = skilled_tactician + } + if = { + limit = { trait = misguided_warrior } + hidden_tooltip = { remove_trait = misguided_warrior } + add_trait = tough_soldier + } + } + if = { + limit = { + NOT = { has_character_modifier = blessing_of_azazel } + } + add_character_modifier = { + modifier = blessing_of_azazel + days = -1 + } + } + } + + # Intrigue Boon + if = { + limit = { + has_character_flag = ds_INT + } + if = { + limit = { + has_character_modifier = blessing_of_vetis + } + if = { + limit = { trait = intricate_webweaver } + hidden_tooltip = { remove_trait = intricate_webweaver } + add_trait = elusive_shadow + } + if = { + limit = { trait = flamboyant_schemer } + hidden_tooltip = { remove_trait = flamboyant_schemer } + add_trait = intricate_webweaver + } + if = { + limit = { trait = amateurish_plotter } + hidden_tooltip = { remove_trait = amateurish_plotter } + add_trait = flamboyant_schemer + } + } + if = { + limit = { + NOT = { has_character_modifier = blessing_of_vetis } + } + add_character_modifier = { + modifier = blessing_of_vetis + days = -1 + } + } + } + + # Learning Boon + if = { + limit = { + has_character_flag = ds_LEA + } + if = { + limit = { + has_character_modifier = blessing_of_avnas + } + if = { + limit = { trait = scholarly_theologian } + hidden_tooltip = { remove_trait = scholarly_theologian } + add_trait = mastermind_theologian + set_character_flag = ds_better_ed + } + if = { + limit = { trait = martial_cleric } + hidden_tooltip = { remove_trait = martial_cleric } + add_trait = scholarly_theologian + set_character_flag = ds_better_ed + } + if = { + limit = { trait = detached_priest } + hidden_tooltip = { remove_trait = detached_priest } + add_trait = martial_cleric + set_character_flag = ds_better_ed + } + if = { + limit = { NOT = { has_character_flag = ds_better_ed } } + if = { + limit = { NOT = { trait = dull } } + add_trait = shrewd + } + if = { + limit = { trait = dull } + remove_trait = dull + } + } + + clr_character_flag = ds_better_ed + } + if = { + limit = { + NOT = { has_character_modifier = blessing_of_avnas } + } + add_character_modifier = { + modifier = blessing_of_avnas + days = -1 + } + } + } + + clr_character_flag = ds_INT + clr_character_flag = ds_STE + clr_character_flag = ds_MAR + clr_character_flag = ds_DIP + clr_character_flag = ds_LEA + clr_character_flag = ds_kill_a_rival_1 + clr_character_flag = ds_kill_a_rival_2 + } + + option = { + trigger = { + has_character_flag = ds_disaster + } + + name = { + text = EVTOPTA_MNM_20034_ILLNESS + trigger = { + has_character_flag = ds_illness + } + } + name = { + text = EVTOPTA_MNM_20034_EPIDEMIC + trigger = { + has_character_flag = ds_epidemic + } + } + name = { + text = EVTOPTA_MNM_20034_EUNUCH + trigger = { + has_character_flag = ds_eunuch + } + } + name = { + text = EVTOPTA_MNM_20034_STUPID + trigger = { + has_character_flag = ds_stupid + } + } + name = { + text = EVTOPTA_MNM_20034_EXPOSURE + trigger = { + has_character_flag = ds_exposure + } + } + name = { + text = EVTOPTA_MNM_20034_POSSESS + trigger = { + has_character_flag = ds_possess + } + } + name = { + text = EVTOPTA_MNM_20034_RIVALRY + trigger = { + has_character_flag = ds_rivalry + } + } + + if = { + limit = { + has_character_flag = ds_illness + } + if = { + limit = { + has_dlc = "Reapers" + } + add_trait = cancer + } + } + + if = { + limit = { + has_character_flag = ds_epidemic + } + location = { + spawn_disease = typhoid_fever + } + } + + if = { + limit = { + has_character_flag = ds_eunuch + } + add_trait = eunuch + } + + if = { + limit = { + has_character_flag = ds_stupid + } + if = { + limit = { + NOR = { + trait = dull + trait = shrewd + trait = genius + trait = quick + trait = slow + trait = imbecile + } + } + add_trait = dull + } + if = { + limit = { + trait = slow + } + remove_trait = slow + add_trait = imbecile + } + if = { + limit = { + trait = shrewd + } + remove_trait = shrewd + } + if = { + limit = { + trait = quick + } + remove_trait = quick + } + if = { + limit = { + trait = genius + } + remove_trait = genius + add_trait = quick + } + } + + if = { + limit = { + has_character_flag = ds_exposure + } + if = { + limit = { + NOR = { + has_character_modifier = suspected_witch + has_character_modifier = known_witch + } + } + add_character_modifier = { + name = suspected_witch + duration = -1 + } + } + else_if = { + limit = { has_character_modifier = suspected_witch } + remove_character_modifier = suspected_witch + add_character_modifier = { + name = known_witch + duration = -1 + } + } + } + + if = { + limit = { + has_character_flag = ds_possess + } + add_trait = possessed + add_character_modifier = { + name = voice_of_satan + duration = -1 + } + } + + if = { + limit = { + has_character_flag = ds_rivalry + } + if = { + limit = { + NOR ={ + is_lover = FROM + is_friend = FROM + } + } + add_rival = FROM + } + if = { + limit = { + is_lover = FROM + } + remove_lover = FROM + } + if = { + limit = { + is_friend = FROM + } + remove_friend = FROM + } + } + + clr_character_flag = ds_disaster + clr_character_flag = ds_illness + clr_character_flag = ds_epidemic + clr_character_flag = ds_eunuch + clr_character_flag = ds_stupid + clr_character_flag = ds_exposure + clr_character_flag = ds_possess + clr_character_flag = ds_rivalry + } + + option = { + name = EVTOPTA_MNM_20034_KILL_RIVAL_1 + trigger = { + has_character_flag = ds_kill_a_rival_1 + } + + add_society_currency_minor_effect = yes + + increase_visibility_effect = yes + + event_target:rival_1 = { + tooltip = { + death = { death_reason = death_murder_unknown killer = ROOT } + } + character_event = { id = MNM.20035 } + } + + clr_character_flag = ds_INT + clr_character_flag = ds_kill_a_rival_1 + clr_character_flag = ds_kill_a_rival_2 + } + + option = { + name = EVTOPTA_MNM_20034_KILL_RIVAL_2 + trigger = { + has_character_flag = ds_kill_a_rival_2 + } + + add_society_currency_minor_effect = yes + + increase_visibility_effect = yes + + event_target:rival_2 = { + tooltip = { + death = { death_reason = death_murder_unknown killer = ROOT } + } + character_event = { id = MNM.20035 } + } + + clr_character_flag = ds_INT + clr_character_flag = ds_kill_a_rival_1 + clr_character_flag = ds_kill_a_rival_2 + } +} + +# Demon Summoning - Rival is killed +character_event = { + id = MNM.20035 + picture = GFX_evt_magic_ritual + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + immediate = { + death = { death_reason = death_murder_unknown killer = FROM } + } + + desc = EVTDESC_MNM_20035 + + option = { + name = EVTOPTA_MNM_20035 + } +} + +########################################### +# Impersonating Priests - Hidden start +# Fired from on_society_bi_yearly_pulse +########################################### + +character_event = { + id = MNM.20040 + hide_window = yes + + is_triggered_only = yes + + only_playable = yes + only_capable = yes + prisoner = no + is_in_society = yes + + trigger = { + is_devil_worshiper_trigger = yes + NOT = { is_inaccessible_trigger = yes } + is_ill = no + in_command = no + } + + weight_multiplier = { + factor = 1 + modifier = { + factor = 1.75 + has_focus = focus_theology + } + + modifier = { + factor = 1.75 + OR = { + trait = detached_priest + trait = martial_cleric + trait = scholarly_theologian + trait = mastermind_theologian + } + } + + modifier = { + factor = 0.25 + has_character_flag = impersonated_priests + } + } + + immediate = { + # First look for someone at court + society = { + random_society_member = { + limit = { + ai = yes + is_incapable = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + is_ill = no + NOT = { character = ROOT } + in_command = no + NOT = { same_sex = ROOT } # One of us can always masquerade as a local priest + host = { character = ROOT } + } + save_event_target_as = dw_buddy + character_event = { id = MNM.20041 } + break = yes + } + + # Then look for someone in the same realm + random_society_member = { + limit = { + ai = yes + is_incapable = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + is_ill = no + NOT = { character = ROOT } + in_command = no + NOT = { same_sex = ROOT } # One of us can always masquerade as a local priest + same_realm = yes + } + save_event_target_as = dw_buddy + character_event = { id = MNM.20041 } + break = yes + } + + # Then look abroad... + random_society_member = { + limit = { + ai = yes + is_incapable = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + is_ill = no + NOT = { character = ROOT } + in_command = no + NOT = { same_sex = ROOT } # One of us can always masquerade as a local priest + is_within_diplo_range = ROOT + } + save_event_target_as = dw_buddy + character_event = { id = MNM.20041 } + } + } + } +} + +# Bounce +character_event = { + id = MNM.20041 + hide_window = yes + + is_triggered_only = yes + + immediate = { + FROM = { + random_realm_province = { + limit = { + any_neighbor_province = { + has_owner = yes + owner = { + NOR = { + character = PREVPREVPREV + is_liege_or_above = PREVPREVPREV + character = event_target:dw_buddy + is_liege_or_above = event_target:dw_buddy + } + } + } + } + random_neighbor_province = { + limit = { + has_owner = yes + owner = { + NOR = { + character = PREVPREVPREV + is_liege_or_above = PREVPREVPREV + character = event_target:dw_buddy + is_liege_or_above = event_target:dw_buddy + } + } + } + province_event = { id = MNM.20042 } + } + } + } + } +} + +province_event = { + id = MNM.20042 + hide_window = yes + + is_triggered_only = yes + + immediate = { + FROMFROM = { character_event = { id = MNM.20043 } } + } +} + +# Impersonating Priests - Planning +character_event = { + id = MNM.20043 + picture = GFX_evt_shady_meeting + border = GFX_event_normal_frame_intrigue + + show_from_from = yes + + desc = { + text = EVTDESC_MNM_20043 + trigger = { + FROMFROM = { + NOT = { host = { character = ROOT } } + } + } + } + + desc = { + text = EVTDESC_MNM_20043_COURT + trigger = { + FROMFROM = { + host = { character = ROOT } + } + } + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_20043 # Yes + ai_chance = { + factor = 100 + modifier = { + factor = 20 + has_focus = focus_theology + } + modifier = { + factor = 10 + OR = { + trait = detached_priest + trait = martial_cleric + trait = scholarly_theologian + trait = mastermind_theologian + } + } + } + + set_character_flag = impersonated_priests + + FROMFROM = { character_event = { id = MNM.20044 tooltip = EVT_TT_20044 portrait = no } } + } + option = { + name = EVTOPTB_MNM_20043 # Bad idea... + ai_chance = { + factor = 1 + modifier = { + factor = 50 + trait = craven + } + modifier = { + factor = 25 + trait = content + } + } + + detract_society_currency_minor_effect = yes + reverse_opinion = { who = FROMFROM modifier = opinion_coward years = 5 } + } +} + +# Bounce +character_event = { + id = MNM.20044 + hide_window = yes + + is_triggered_only = yes + + immediate = { + FROM = { character_event = { id = MNM.20045 days = 2 } } + } +} + +# Impersonating Priests - The Fun Begins +character_event = { + id = MNM.20045 + picture = GFX_evt_secluded_in_prayer # GFX_evt_bishop + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + immediate = { + } + + desc = EVTDESC_MNM_20045 + + option = { + name = EVTOPTA_MNM_20045 # Firebrand preaching to the peasants (Agitation) + ai_chance = { + factor = 100 + modifier = { + factor = 10 + trait = zealous + } + modifier = { + factor = 10 + OR = { + trait = temperate + trait = just + trait = diligent + } + } + } + + FROMFROMFROM = { province_event = { id = MNM.20046 tooltip = EVT_TT_20046 } } + } + + option = { + name = EVTOPTB_MNM_20045 # Depraved feast + ai_chance = { + factor = 100 + modifier = { + factor = 10 + trait = cynical + } + modifier = { + factor = 10 + OR = { + trait = gluttonous + trait = hedonist + trait = drunkard + trait = arbitrary + trait = slothful + } + } + } + FROMFROMFROM = { province_event = { id = MNM.20047 tooltip = EVT_TT_20047 } } + } + +} + +# Province Bounce - Agitation +character_event = { + id = MNM.20046 + hide_window = yes + + is_triggered_only = yes + + immediate = { + FROM = { character_event = { id = MNM.20048 days = 7 } } + } +} + +# Province Bounce - Depraved Feast +character_event = { + id = MNM.20047 + hide_window = yes + + is_triggered_only = yes + + immediate = { + FROM = { character_event = { id = MNM.20049 days = 3 } } + } +} + +# Impersonating Priests - Agitation +character_event = { + id = MNM.20048 + picture = GFX_evt_heretic + border = GFX_event_normal_frame_intrigue + + show_from_from_from = yes + + is_triggered_only = yes + + trigger = { + FROMFROMFROM = { + is_alive = yes + prisoner = no + is_incapable = no + } + FROMFROM = { + is_alive = yes + prisoner = no + is_incapable = no + } + } + + immediate = { + if = { + limit = { + FROM = { + has_heresies = yes + is_heretic = no + } + } + set_character_flag = ip_heresy + } + + if = { + limit = { NOT = { trait = deceitful } } + random = { + chance = 25 + set_character_flag = ip_deceitful + } + } + if = { + limit = { NOT = { trait = gregarious } } + random = { + chance = 50 + set_character_flag = ip_gregarious + } + } + + if = { + limit = { + NOR = { + is_friend = FROMFROMFROM + is_lover = FROMFROMFROM + } + } + random_list = { + 85 = { + set_character_flag = ip_friendify + } + 15 = { + modifier = { + factor = 0 + FROMFROMFROM = { trait = honest } + } + modifier = { + factor = 2 + FROMFROMFROM = { trait = deceitful } + } + modifier = { + factor = 2 + FROMFROMFROM = { trait = cruel } + } + FROMFROMFROM = { character_event = { id = MNM.20051 days = 7 } } # Rivalry + } + } + } + } + + desc = EVTDESC_MNM_20048 + + option = { + name = EVTOPTA_MNM_20048 + + if = { + limit = { + has_character_flag = ip_heresy + } + FROM = { + add_province_modifier = { + modifier = heretic_stronghold + years = 3 + } + become_heretic = yes + province_event = { id = MNM.20050 } # Notify lieges + } + } + + if = { + limit = { + NOT = { has_character_flag = ip_heresy } + } + FROM = { + add_province_modifier = { + modifier = religious_unrest + years = 5 + } + } + } + + if = { + limit = { + has_character_flag = ip_deceitful + } + if = { + limit = { + NOT = { trait = honest } + NOT = { trait = deceitful } + } + add_trait = deceitful + } + if = { + limit = { + trait = honest + } + remove_trait = honest + } + } + + if = { + limit = { + has_character_flag = ip_gregarious + } + if = { + limit = { + NOT = { trait = shy } + NOT = { trait = gregarious } + } + add_trait = gregarious + } + if = { + limit = { + trait = shy + } + remove_trait = shy + } + } + + # Friend gained / Rivalry lost + if = { + limit = { + has_character_flag = ip_friendify + } + if = { + limit = { + NOT = { + is_rival = FROMFROMFROM + } + } + add_friend = FROMFROMFROM + } + if = { + limit = { + is_rival = FROMFROMFROM + } + remove_rival = FROMFROMFROM + } + } + + add_society_currency_minor_effect = yes + + clr_character_flag = ip_heresy + clr_character_flag = ip_deceitful + clr_character_flag = ip_gregarious + clr_character_flag = ip_friendify + } +} + +# Impersonating Priests - Depraved Feast +character_event = { + id = MNM.20049 + picture = GFX_evt_pope_feast + border = GFX_event_normal_frame_intrigue + + show_from_from_from = yes + + is_triggered_only = yes + + trigger = { + FROMFROMFROM = { + is_alive = yes + prisoner = no + is_incapable = no + } + FROMFROM = { + is_alive = yes + prisoner = no + is_incapable = no + } + } + + immediate = { + if = { + limit = { NOT = { trait = deceitful } } + random = { + chance = 25 + set_character_flag = ip_deceitful + } + } + if = { + limit = { NOT = { trait = gluttonous } } + random = { + chance = 10 + set_character_flag = ip_gluttonous + } + } + } + + desc = EVTDESC_MNM_20049 + + option = { + name = EVTOPTA_MNM_20049 + + if = { + limit = { + ai = no + } + religion_authority = { + modifier = decadent_clergy + years = 10 + } + } + + # Friend gained / Rivalry lost + if = { + limit = { + NOR = { + is_lover = FROM + is_friend = FROM + is_rival = FROM + } + } + add_friend = FROM + } + if = { + limit = { + is_rival = FROM + } + remove_rival = FROM + } + + add_society_currency_minor_effect = yes + + clr_character_flag = ip_deceitful + clr_character_flag = ip_gluttonous + } +} + +# Province: notify lieges of heresy +province_event = { + id = MNM.20050 + hide_window = yes + + is_triggered_only = yes + + immediate = { + owner = { + top_liege = { + if = { + limit = { + NOT = { character = PREV } + } + character_event = { id = 39400 days = 2 } + } + any_vassal = { + limit = { + OR = { + is_parent_religion = ROOT + religion = ROOT + } + } + character_event = { id = 39400 days = 2 } + } + } + } + } +} + +# Agitation - Rivalry aftermath bounce +character_event = { + id = MNM.20051 + hide_window = yes + + is_triggered_only = yes + + immediate = { + FROM = { character_event = { id = MNM.20052 } } + } +} + +# Agitation - Rivalry aftermath +character_event = { + id = MNM.20052 + picture = GFX_evt_suspicious_noble + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + immediate = { + FROMFROMFROM = { + save_event_target_as = local_province + owner = { + save_event_target_as = local_ruler + } + } + } + + desc = EVTDESC_MNM_20052 + + option = { + name = EVTOPTA_MNM_20052 + add_rival = FROM + event_target:local_ruler = { + character_event = { id = MNM.20053 days = 3 } + hidden_tooltip = { + remove_friend = ROOT + remove_lover = ROOT + } + } + add_rival = event_target:local_ruler + } +} + +# Agitation - Rivalry aftermath - local ruler notified +character_event = { + id = MNM.20053 + picture = GFX_evt_heretic + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + desc = EVTDESC_MNM_20053 + + option = { + name = EVTOPTA_MNM_20053 + tooltip = { add_rival = FROM } + } +} + +########################################### +# Infernal Choir - Hidden start +# Only with rivals +# Fired from on_society_bi_yearly_pulse +########################################### + +character_event = { + id = MNM.20060 + hide_window = yes + + is_triggered_only = yes + + only_playable = yes + only_capable = yes + prisoner = no + + trigger = { + is_devil_worshiper_trigger = yes + NOT = { has_character_modifier = in_seclusion } + NOT = { trait = in_hiding } + is_ill = no + society = { + any_society_member = { + is_incapable = no + prisoner = no + NOT = { has_character_modifier = in_seclusion } + NOT = { trait = in_hiding } + is_ill = no + NOT = { character = ROOT } + OR = { + is_rival = ROOT + ROOT = { trait = lunatic } + ROOT = { trait = possessed } + } + NOT = { + reverse_has_opinion_modifier = { + who = ROOT + modifier = opinion_nemesis + } + } + } + } + } + + weight_multiplier = { + factor = 1 + modifier = { + factor = 1.25 + OR = { + trait = lunatic + trait = possessed + } + } + modifier = { + factor = 1.25 + trait = cruel + } + modifier = { + factor = 1.25 + trait = impaler + } + modifier = { + factor = 1.25 + trait = deceitful + } + } + + immediate = { + society = { + random_society_member = { + limit = { + ai = yes + is_incapable = no + prisoner = no + NOT = { has_character_modifier = in_seclusion } + NOT = { trait = in_hiding } + is_ill = no + NOT = { character = ROOT } + OR = { + is_rival = ROOT + ROOT = { trait = lunatic } + ROOT = { trait = possessed } + } + NOT = { + reverse_has_opinion_modifier = { + who = ROOT + modifier = opinion_nemesis + } + } + } + save_event_target_as = dw_buddy + ROOT = { character_event = { id = MNM.20061 } } + } + } + } +} + +# Infernal Choir - Planning +narrative_event = { + id = MNM.20061 + picture = GFX_evt_lunatic + border = GFX_event_narrative_frame_intrigue + + title = EVTTITLE_MNM_20061 + desc = EVTDESC_MNM_20061 + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_20061 # Do it! + ai_chance = { + factor = 100 + } + + set_character_flag = had_infernal_choir + + event_target:dw_buddy = { character_event = { id = MNM.20062 days = 3 tooltip = EVT_TT_20062 portrait = no } } + } + option = { + name = EVTOPTB_MNM_20061 # Not a good idea + ai_chance = { + factor = 0 + } + } +} + +# Infernal Choir - Invitation (looks like MNM.20012 to the rival) +character_event = { + id = MNM.20062 + picture = GFX_evt_shady_meeting + border = GFX_event_normal_frame_intrigue + + desc = { + text = EVTDESC_MNM_20012 + trigger = { + NOT = { trait = paranoid } + } + } + + desc = { + text = EVTDESC_MNM_20012_PARANOID + trigger = { + trait = paranoid + } + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_20012 # Of course + trigger = { + NOT = { trait = paranoid } + } + ai_chance = { + factor = 100 + } + + FROM = { character_event = { id = MNM.20064 days = 3 tooltip = EVT_TT_20013 portrait = no } } + } + option = { + name = EVTOPTC_MNM_20062 # I knew it! + trigger = { + trait = paranoid + } + tooltip_info = paranoid + + ai_chance = { + factor = 1000 + } + + set_character_flag = dw_double_cross + FROM = { character_event = { id = MNM.20064 tooltip = EVT_TT_20064 days = 3 portrait = no } } + } + option = { + name = EVTOPTB_MNM_20012 # No way! + trigger = { + NOT = { trait = paranoid } + } + + ai_chance = { + factor = 1 + modifier = { + factor = 20 + trait = temperate + } + modifier = { + factor = 10 + trait = kind + } + modifier = { + factor = 10 + trait = just + } + } + + detract_society_currency_minor_effect = yes + reverse_opinion = { who = FROM modifier = opinion_coward years = 5 } + + FROM = { character_event = { id = MNM.20063 days = 3 } } + } +} + +# Rival declined +character_event = { + id = MNM.20063 + picture = GFX_evt_shady_meeting + border = GFX_event_normal_frame_intrigue + desc = EVTDESC_MNM_20063 + title = EVTTITLE_MNM_20061 + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_20063 + detract_society_currency_minor_effect = yes + } +} + +# Rival accepts the invitation +narrative_event = { + id = MNM.20064 + picture = GFX_evt_sacrifice #GFX_evt_witch_burning + border = GFX_event_narrative_frame_intrigue + + title = EVTTITLE_MNM_20061 + + desc = { + text = EVTDESC_MNM_20064 + trigger = { FROM = { is_female = no } } + sound = boiled_alive_male_01 + } + desc = { + text = EVTDESC_MNM_20064 + trigger = { FROM = { is_female = no } } + sound = boiled_alive_male_02 + } + desc = { + text = EVTDESC_MNM_20064 + trigger = { FROM = { is_female = yes } } + sound = boiled_alive_female_01 + } + desc = { + text = EVTDESC_MNM_20064 + trigger = { FROM = { is_female = yes } } + sound = boiled_alive_female_02 + } + + is_triggered_only = yes + + immediate = { + if = { + limit = { + FROM = { has_character_flag = dw_double_cross } + } + FROM = { clr_character_flag = dw_double_cross } + random_courtier = { + limit = { + ai = yes + prisoner = no + age = 6 + OR = { + is_close_relative = ROOT + is_married = ROOT + is_consort = ROOT + } + } + save_event_target_as = dw_real_victim + ROOT = { set_character_flag = dw_double_cross } + } + if = { + limit = { + NOT = { has_character_flag = dw_double_cross } + } + random_courtier = { + limit = { + ai = yes + prisoner = no + age = 6 + } + save_event_target_as = dw_real_victim + ROOT = { set_character_flag = dw_double_cross } + } + } + } + + if = { + limit = { + NOT = { has_character_flag = dw_double_cross } + } + FROM = { character_event = { id = MNM.20065 } } + } + + if = { + limit = { + NOT = { trait = poet } + } + random = { + chance = 33 + set_character_flag = dw_gain_poet + } + } + } + + option = { + name = EVTOPTA_MNM_20064 + + tooltip = { + FROM = { + death = { + death_reason = death_vanished killer = ROOT + } + } + } + + add_society_currency_medium_effect = yes + + # Increase Cruelty + if = { + limit = { + trait = cruel + NOT = { lifestyle_traits = 1 } + } + add_trait = impaler + } + if = { + limit = { + NOT = { trait = kind } + NOT = { trait = cruel } + } + add_trait = cruel + } + if = { + limit = { + trait = kind + } + remove_trait = kind + } + + if = { + limit = { + has_character_flag = dw_double_cross + } + event_target:dw_real_victim = { character_event = { id = MNM.20066 days = 3 } } + clr_character_flag = dw_double_cross + } + + if = { + limit = { + has_character_flag = dw_gain_poet + } + add_trait = poet + } + + clr_character_flag = dw_gain_poet + } +} + +# Rival dies horribly +narrative_event = { + id = MNM.20065 + picture = GFX_evt_sacrifice #GFX_evt_witch_burning + border = GFX_event_narrative_frame_intrigue + + title = EVTTITLE_MNM_20061 + + desc = { + text = EVTDESC_MNM_20065 + trigger = { is_female = no } + sound = boiled_alive_male_01 + } + desc = { + text = EVTDESC_MNM_20065 + trigger = { is_female = no } + sound = boiled_alive_male_02 + } + desc = { + text = EVTDESC_MNM_20065 + trigger = { is_female = yes } + sound = boiled_alive_female_01 + } + desc = { + text = EVTDESC_MNM_20065 + trigger = { is_female = yes } + sound = boiled_alive_female_02 + } + + is_triggered_only = yes + + immediate = { + death = { + death_reason = death_vanished killer = FROM + } + } + + option = { + name = EVTOPTA_MNM_20065 + } +} + +# Rival replaced with close relative - Bounce through the real victim +character_event = { + id = MNM.20066 + hide_window = yes + + is_triggered_only = yes + + immediate = { + FROMFROM = { character_event = { id = MNM.20067 } } + FROM = { character_event = { id = MNM.20068 } } + + death = { + death_reason = death_vanished killer = FROM + } + } +} + +# Rival replaced with close relative! +narrative_event = { + id = MNM.20067 + picture = GFX_evt_sacrifice #GFX_evt_witch_burning + border = GFX_event_narrative_frame_intrigue + + title = EVTTITLE_MNM_20061 + + show_from_from = yes + + desc = { + text = EVTDESC_MNM_20067 + trigger = { event_target:dw_real_victim = { is_female = no } } + sound = boiled_alive_male_01 + } + desc = { + text = EVTDESC_MNM_20067 + trigger = { event_target:dw_real_victim = { is_female = no } } + sound = boiled_alive_male_02 + } + desc = { + text = EVTDESC_MNM_20067 + trigger = { event_target:dw_real_victim = { is_female = yes } } + sound = boiled_alive_female_01 + } + desc = { + text = EVTDESC_MNM_20067 + trigger = { event_target:dw_real_victim = { is_female = yes } } + sound = boiled_alive_female_02 + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_20067 + tooltip = { + event_target:dw_real_victim = { + death = { + death_reason = death_vanished killer = FROMFROM + } + } + } + add_society_currency_medium_effect = yes + } +} + +# You realize what your rival has done! +character_event = { + id = MNM.20068 + picture = GFX_evt_lunatic + border = GFX_event_normal_frame_intrigue + + title = EVTTITLE_MNM_20061 + desc = EVTDESC_MNM_20068 + + is_triggered_only = yes + + immediate = { + if = { + limit = { + NOT = { trait = lunatic } + } + random = { + chance = 34 + set_character_flag = gain_lunatic + } + } + } + + option = { + name = EVTOPTA_MNM_20068 + opinion = { + who = FROMFROMFROM + modifier = opinion_nemesis + years = 100 + } + hidden_tooltip = { + FROMFROMFROM = { + opinion = { + who = ROOT + modifier = opinion_nemesis + years = 100 + } + } + } + + if = { + limit = { + NOT = { trait = paranoid } + NOT = { trait = trusting } + } + add_trait = paranoid + } + if = { + limit = { + trait = trusting + } + remove_trait = trusting + } + + if = { + limit = { + has_character_flag = gain_lunatic + } + add_trait = lunatic + } + + clr_character_flag = gain_lunatic + } +} + +########################################### +# Abduction Decision - Hidden start +# Fired from decision_abduct +########################################### + +# Abduction Start +character_event = { + id = MNM.20070 + desc = EVTDESC_MNM_20070 + picture = GFX_evt_shady_meeting + border = GFX_event_normal_frame_intrigue + + capable_only = yes + prisoner = no + + is_triggered_only = yes + + immediate = { + FROM = { + save_event_target_as = target_abduction + } + save_event_target_as = target_kidnapper + } + + option = { + name = EXCELLENT + character_event = { id = MNM.20080 days = 20 random = 20 tooltip = EVTTOOLTIP_MNM_20080 } + } +} + +# Hidden 'outcome tombola' event for the "Abduct" decision +character_event = { + id = MNM.20080 + hide_window = yes + + is_triggered_only = yes + + immediate = { + if = { + limit = { + OR = { + prisoner = yes # I have become imprisoned + trait = incapable # I have become incapable + AND = { + is_devil_worshiper_trigger = no + NOT = { society_member_of = the_assassins } + } + } + } + character_event = { id = MNM.20100 } # Clear out any flags, etc + break = yes # Stop execution here + } + + if = { + limit = { + FROMFROM = { + is_alive = no + } + } + + character_event = { id = MNM.20101 } + break = yes + } + + if = { + limit = { + FROMFROM = { + prisoner = yes + } + } + character_event = { id = MNM.20102 } + break = yes + } + + if = { + limit = { + FROMFROM = { + same_society_as = ROOT + } + } + character_event = { id = MNM.20104 } + break = yes + } + + if = { + limit = { + NOT = { + has_opinion_modifier = { + who = FROMFROM + modifier = opinion_abducting + } + } + } + break = yes # I have stopped spying on this character + } + + repeat_event = { id = MNM.20080 days = 30 random = 30 } # Fire again with no scope changes + + if = { + limit = { + FROMFROM = { + OR = { + trait = on_hajj + is_inaccessible_trigger = yes + trait = on_pilgrimage + } + } + } + break = yes + } + + random_list = { + 10000 = { # No luck yet + modifier = { + factor = 0.75 + has_character_modifier = wol_schemer_1 + } + modifier = { + factor = 0.5 + has_character_modifier = wol_schemer_2 + } + modifier = { + factor = 0.2 + trait = schemer + } + modifier = { + factor = 0.5 + FROMFROM = { trait = trusting } + } + modifier = { + factor = 1.5 + FROMFROM = { has_character_modifier = wol_schemer_1 } + } + modifier = { + factor = 3.0 + FROMFROM = { has_character_modifier = wol_schemer_2 } + } + modifier = { + factor = 5.0 + FROMFROM = { trait = schemer } + } + modifier = { + factor = 3.0 + FROMFROM = { trait = paranoid } + } + modifier = { + factor = 1.5 + FROMFROM = { tier = BARON } + } + modifier = { + factor = 2.0 + FROMFROM = { tier = COUNT } + } + modifier = { + factor = 3 #Makes sure it's very hard to abduct the same person twice + FROMFROM = { + OR = { + has_opinion_modifier = { + who = ROOT + modifier = opinion_attempted_abduction + } + has_opinion_modifier = { + who = ROOT + modifier = opinion_abducted + } + } + } + } + modifier = { + factor = 0.25 + FROMFROM = { + is_ruler = no + liege = { character = ROOT } + } + } + random = { + chance = 25 + character_event = { id = MNM.20103 } # Time to give up? + } + } + 10000 = { # Success! + character_event = { id = MNM.20081 } + } + } + } +} + +# Chance to abduct the target! +character_event = { + id = MNM.20081 + picture = GFX_evt_bandits + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + desc = { + text = EVTDESC_MNM_20081 + trigger = { + FROMFROMFROM = { + age = 14 + } + } + } + + desc = { + text = EVTDESC_MNM_20081_CHILD + picture = GFX_evt_child_play + trigger = { + FROMFROMFROM = { + NOT = { age = 14 } + } + } + } + + option = { + name = EVTOPTA_MNM_20081 + ai_chance = { + factor = 100 + } + increase_visibility_effect = yes + FROMFROMFROM = { + character_event = { id = MNM.20082 days = 3 tooltip = EVTTOOLTIP_MNM_20081 } + } + } + option = { + name = EVTOPTB_MNM_20081 + ai_chance = { + factor = 10 + } + } +} + +# Target gets abducted... or not. +character_event = { + id = MNM.20082 + picture = GFX_evt_bandits + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + desc = { + text = EVTDESC_WOL_2121 + picture = GFX_evt_child_play + trigger = { + age = 14 + } + } + + desc = { + text = EVTDESC_MNM_20082_CHILD + picture = GFX_evt_children_talking + trigger = { + NOT = { age = 14 } + age = 4 + } + } + + desc = { + text = EVTDESC_MNM_20082_BABY + picture = GFX_evt_children_talking + trigger = { + NOT = { age = 4 } + } + } + + immediate = { + random = { + chance = 75 + modifier = { + factor = 0.1 #Makes sure it's very hard to abduct the same person twice + OR = { + has_opinion_modifier = { + who = FROM + modifier = opinion_attempted_abduction + } + has_opinion_modifier = { + who = FROM + modifier = opinion_abducted + } + } + } + modifier = { + factor = 0.1 + age = 14 + OR = { + has_character_modifier = seduced_loyal_bodyguard + has_character_modifier = seduced_loyal_spy_maid + } + } + modifier = { + factor = 2.0 + trait = trusting + } + + set_character_flag = abduction_success + } + } + + option = { + name = { + text = EVTOPT_WOL_2121_CAUGHT + trigger = { + age = 14 + } + } + name = { + text = EVTOPT_MNM_20082_CHILD_CAUGHT + trigger = { + NOT = { age = 14 } + age = 4 + } + } + name = { + text = EVTOPT_MNM_20082_BABY_CAUGHT + trigger = { + NOT = { age = 4 } + } + } + + trigger = { has_character_flag = abduction_success } + + imprison = FROM + + opinion = { + who = FROM + modifier = opinion_abducted + years = 50 + } + + hidden_effect = { + FROM = { + character_event = { id = MNM.20083 } + } + } + + clr_character_flag = abduction_success + } + + option = { + name = { + text = EVTOPT_WOL_2121 + trigger = { + age = 14 + } + } + name = { + text = EVTOPT_MNM_20082_CHILD + trigger = { + NOT = { age = 14 } + age = 4 + } + } + name = { + text = EVTOPT_MNM_20082_BABY + trigger = { + NOT = { age = 4 } + } + } + + trigger = { NOT = { has_character_flag = abduction_success } } + + if = { + limit = { + is_incapable = no + age = 4 + OR = { + trait = paranoid + random = 50 + } + } + custom_tooltip = { + text = EVTTOOLTIP_MNM_20082_PERP + } + opinion = { + who = FROM + modifier = opinion_attempted_abduction + years = 10 + } + } + + hidden_effect = { + FROM = { + character_event = { id = MNM.20084 } + } + } + } +} + +# Target gets abducted! +character_event = { + id = MNM.20083 + picture = GFX_evt_into_the_dungeon + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + desc = EVTDESC_MNM_20083 + + immediate = { + character_event = { id = MNM.20100 } + } + + option = { + name = EXCELLENT + + tooltip = { + reverse_opinion = { + who = FROM + modifier = opinion_abducted + years = 50 + } + } + } +} + +# Abduction fails +character_event = { + id = MNM.20084 + picture = GFX_evt_bandits + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + desc = EVTDESC_MNM_20084 + + option = { + name = EVTOPTA_MNM_20084 + + tooltip = { + reverse_opinion = { + who = FROM + modifier = opinion_attempted_abduction + years = 10 + } + } + } +} + +# End of "Abduction" events to clear out flags, etc +character_event = { + id = MNM.20100 + hide_window = yes + + is_triggered_only = yes + + immediate = { + remove_opinion = { + who = event_target:target_abduction + modifier = opinion_abducting + } + + clear_delayed_event = { id = MNM.20080 } + } +} + +# My target has died! +character_event = { + id = MNM.20101 + + desc = EVTDESC_MNM_20101 + picture = GFX_evt_death + border = GFX_event_normal_frame_intrigue + + show_from_from_from = yes + + is_triggered_only = yes + + immediate = { + character_event = { id = MNM.20100 } + } + + option = { + name = EVTOPTA_MNM_20101 + } +} + +# My target has been imprisoned! +character_event = { + id = MNM.20102 + + desc = EVTDESC_MNM_20102 + picture = GFX_evt_into_the_dungeon + border = GFX_event_normal_frame_intrigue + + show_from_from_from = yes + + is_triggered_only = yes + + immediate = { + character_event = { id = MNM.20100 } + } + + option = { + name = EVTOPTA_MNM_20102 + } +} + +# My efforts are not bearing fruit. Give up? +character_event = { + id = MNM.20103 + + desc = EVTDESC_MNM_20103 + picture = GFX_evt_eavesdropping + border = GFX_event_normal_frame_intrigue + + show_from_from_from = yes + + is_triggered_only = yes + + option = { + name = EVTOPTA_WOL_2065 # Give up + ai_chance = { + factor = 10 + } + character_event = { id = MNM.20100 } + } + + option = { + name = EVTOPTB_MNM_20103 # Keep at it + ai_chance = { + factor = 100 + } + } +} + +# My target has joined my Society +character_event = { + id = MNM.20104 + + desc = EVTDESC_MNM_20104 + picture = GFX_evt_shadowy_cabal + border = GFX_event_normal_frame_intrigue + + show_from_from_from = yes + + is_triggered_only = yes + + immediate = { + character_event = { id = MNM.20100 } + } + + option = { + name = EVTOPTA_MNM_20101 + } +} + +####### Hidden: Demon/Witch-hunters SET-UP ######## +character_event = { + id = MNM.7854 + hide_window = yes + is_triggered_only = yes + + trigger = { + has_dlc = "Mystics" + #is_devil_worshiper_trigger = yes + OR = { + has_character_modifier = known_satanist + has_character_flag = was_ratted_out_by_fellow_member + has_character_flag = has_it_coming + } + } + + weight_multiplier = { + factor = 1 + modifier = { + factor = 1.5 + society_rank == 3 + } + modifier = { + factor = 2 + society_rank == 4 + } + modifier = { + factor = 2 + independent = yes + } + modifier = { + factor = 2 + is_devil_worshiper_trigger = yes + } + } + + immediate = { + if = { #Incapable ruler attacked in bed + limit = { is_incapable = yes } + set_character_flag = DW_was_attacked_is_incapable + break = yes + } + #chooses who attacks you... + random_list = { + 10 = { + trigger = { NOT = { has_character_flag = DW_was_attacked_by_the_slayer } } + set_character_flag = DW_was_attacked_by_the_slayer + } + 10 = { + set_character_flag = DW_was_attacked_by_angry_villagers + trigger = { + OR = { + has_character_modifier = cat_familiar + has_character_modifier = wolf_familiar + has_character_modifier = raven_familiar + has_character_modifier = owl_familiar + } + NOT = { has_character_flag = DW_was_attacked_by_angry_villagers } + } + } + 10 = { + trigger = { NOT = { has_character_flag = DW_was_attacked_by_demon_hunters } } + set_character_flag = DW_was_attacked_by_demon_hunters + } + 10 = { + trigger = { NOT = { has_character_flag = DW_was_attacked_by_lone_demon_hunter } } + set_character_flag = DW_was_attacked_by_lone_demon_hunter + } + 10 = { + trigger = { NOT = { has_character_flag = DW_was_attacked_by_righteous_knights } } + set_character_flag = DW_was_attacked_by_righteous_knights + } + + #if attacked a second time... + 10 = { + trigger = { has_character_flag = DW_was_attacked_by_the_slayer } + modifier = { + factor = 1000 + has_character_flag = DW_was_attacked_by_the_slayer + } + set_character_flag = DW_was_attacked_by_the_slayer_again + clr_character_flag = DW_was_attacked_by_the_slayer + } + 10 = { + trigger = { has_character_flag = DW_was_attacked_by_angry_villagers } + modifier = { + factor = 1000 + has_character_flag = DW_was_attacked_by_angry_villagers + } + set_character_flag = DW_was_attacked_by_angry_villagers_again + clr_character_flag = DW_was_attacked_by_angry_villagers + } + 10 = { + trigger = { has_character_flag = DW_was_attacked_by_demon_hunters } + modifier = { + factor = 1000 + has_character_flag = DW_was_attacked_by_demon_hunters + } + set_character_flag = DW_was_attacked_by_demon_hunters_again + clr_character_flag = DW_was_attacked_by_demon_hunters + } + 10 = { + trigger = { has_character_flag = DW_was_attacked_by_lone_demon_hunter } + modifier = { + factor = 1000 + has_character_flag = DW_was_attacked_by_lone_demon_hunter + } + set_character_flag = DW_was_attacked_by_lone_demon_hunter_again + clr_character_flag = DW_was_attacked_by_lone_demon_hunter + } + 10 = { + trigger = { has_character_flag = DW_was_attacked_by_righteous_knights } + modifier = { + factor = 1000 + has_character_flag = DW_was_attacked_by_righteous_knights + } + set_character_flag = DW_was_attacked_by_righteous_knights_again + clr_character_flag = DW_was_attacked_by_righteous_knights + } + } + + #Finds someone else to blame... + hidden_effect = { + society = { + #first look for someone you like... + random_society_member = { + limit = { + is_incapable = no + prisoner = no + NOT = { character = ROOT } + OR = { + is_friend = ROOT + is_lover = ROOT + } + } + save_event_target_as = other_member_to_blame + break = yes + } + #Then look for someone you rival... + random_society_member = { + limit = { + is_incapable = no + prisoner = no + is_rival = ROOT + NOT = { character = ROOT } + } + save_event_target_as = other_member_to_blame + break = yes + } + #Then look for someone of your own dynasty... + random_society_member = { + limit = { + is_incapable = no + prisoner = no + is_blood_relative_of_root_trigger = yes + NOT = { character = ROOT } + } + save_event_target_as = other_member_to_blame + break = yes + } + #find someone at court... + random_society_member = { + limit = { + is_incapable = no + prisoner = no + host = { character = ROOT } + NOT = { character = ROOT } + } + save_event_target_as = other_member_to_blame + break = yes + } + + # Then look for someone in the same realm + random_society_member = { + limit = { + is_incapable = no + prisoner = no + NOT = { character = ROOT } + same_realm = yes + } + save_event_target_as = other_member_to_blame + break = yes + } + + # Then look abroad... + random_society_member = { + limit = { + is_incapable = no + prisoner = no + NOT = { character = ROOT } + is_within_diplo_range = ROOT + } + save_event_target_as = other_member_to_blame + } + } + } + } + after = { + character_event = { id = MNM.7855 } + clr_character_flag = has_it_coming + } +} + +#Demon/Witch-hunters have tracked you down! +character_event = { + id = MNM.7855 + title = EVTTITLE_MNM_7855 + picture = GFX_evt_catching_heretic + border = GFX_event_normal_frame_war + is_triggered_only = yes + + hide_from = yes + + trigger = { + has_dlc = "Mystics" + OR = { + has_character_modifier = known_satanist + has_character_flag = was_ratted_out_by_fellow_member + } + } + + desc = { + trigger = { has_character_flag = DW_was_attacked_by_the_slayer } #The Slayer + text = EVTDESC_MNM_7855_A + picture = GFX_evt_whispers + } + desc = { #To set pictures... + trigger = { + has_character_flag = DW_was_attacked_by_angry_villagers # Angry Villagers + has_dlc = "Reapers" + } + text = EVTDESC_MNM_7855_B + picture = GFX_evt_witch_burning + } + desc = { #To set pictures (if NOT has Reapers)... + trigger = { + has_character_flag = DW_was_attacked_by_angry_villagers + NOT = { has_dlc = "Reapers" } + } + text = EVTDESC_MNM_7855_B + picture = GFX_evt_catching_heretic + } + desc = { + trigger = { has_character_flag = DW_was_attacked_by_demon_hunters } #Winchesters + text = EVTDESC_MNM_7855_C + picture = GFX_evt_catching_heretic + } + desc = { + trigger = { has_character_flag = DW_was_attacked_by_lone_demon_hunter } #Demon Hunter + text = EVTDESC_MNM_7855_D + picture = GFX_evt_dark_love + } + desc = { + trigger = { has_character_flag = DW_was_attacked_by_righteous_knights } #Holy Knights + text = EVTDESC_MNM_7855_E + picture = GFX_evt_catching_heretic + } + desc = { + trigger = { has_character_flag = DW_was_attacked_is_incapable } #Incapable ruler attacked in bed + text = EVTDESC_MNM_7855_F + picture = GFX_evt_illness + } + desc = { + trigger = { has_character_flag = DW_was_attacked_by_the_slayer_again } #The Slayer II + text = EVTDESC_MNM_7855_A_again + picture = GFX_evt_whispers + } + desc = { #To set pictures... + trigger = { + has_character_flag = DW_was_attacked_by_angry_villagers_again # Angry Villagers II + has_dlc = "Reapers" + } + text = EVTDESC_MNM_7855_B_again + picture = GFX_evt_witch_burning + } + desc = { #To set pictures (if NOT has Reapers)... + trigger = { + has_character_flag = DW_was_attacked_by_angry_villagers_again + NOT = { has_dlc = "Reapers" } + } + text = EVTDESC_MNM_7855_B_again + picture = GFX_evt_catching_heretic + } + desc = { + trigger = { has_character_flag = DW_was_attacked_by_demon_hunters_again } #Winchesters II + text = EVTDESC_MNM_7855_C_again + picture = GFX_evt_dark_prayer + } + desc = { + trigger = { has_character_flag = DW_was_attacked_by_lone_demon_hunter_again } #Demon Hunter II + text = EVTDESC_MNM_7855_D_again + picture = GFX_evt_shadow + } + desc = { + trigger = { has_character_flag = DW_was_attacked_by_righteous_knights_again } #Holy Knights II + text = EVTDESC_MNM_7855_E_again + picture = GFX_evt_battle + } + + option = { #fight them... + trigger = { NOT = { has_character_flag = DW_was_attacked_is_incapable } } + name = { + trigger = { + OR = { + has_character_flag = DW_was_attacked_by_the_slayer + has_character_flag = DW_was_attacked_by_angry_villagers + has_character_flag = DW_was_attacked_by_demon_hunters + has_character_flag = DW_was_attacked_by_lone_demon_hunter + has_character_flag = DW_was_attacked_by_righteous_knights + } + } + text = EVTOPTA_MNM_7855 + } + name = { + trigger = { + OR = { + has_character_flag = DW_was_attacked_by_the_slayer_again + has_character_flag = DW_was_attacked_by_angry_villagers_again + has_character_flag = DW_was_attacked_by_demon_hunters_again + has_character_flag = DW_was_attacked_by_lone_demon_hunter_again + has_character_flag = DW_was_attacked_by_righteous_knights_again + } + } + text = EVTOPTA_MNM_7855_again + } + custom_tooltip = { text = EVTOPTA_MNM_7855_TT } + + random_list = { + 10 = { + #Nothing happens + modifier = { + factor = 0.9 + has_injury_trigger = yes + } + modifier = { + factor = 0.9 + is_maimed_trigger = yes + } + modifier = { + factor = 0.9 + has_severe_disability_trigger = yes + } + modifier = { + factor = 0.9 + has_medium_disability_trigger = yes + } + modifier = { + factor = 1.1 + is_smart_trigger = yes + } + modifier = { + factor = 1.1 + is_strong_trigger = yes + } + custom_tooltip = { text = they_escape_TT } + } + 30 = { #You are injured + modifier = { + factor = 0.9 + combat_rating = 10 + } + modifier = { + factor = 0.9 + combat_rating = 20 + } + modifier = { + factor = 0.9 + combat_rating = 30 + } + modifier = { + factor = 0.9 + combat_rating = 40 + } + modifier = { + factor = 0.9 + combat_rating = 50 + } + custom_tooltip = { + text = you_are_seriously_injured_TT + hidden_effect = { add_maimed_trait_effect = yes } + } + } + 50 = { #You are slain in personal combat + modifier = { + factor = 0.9 + combat_rating = 10 + } + modifier = { + factor = 0.9 + combat_rating = 20 + } + modifier = { + factor = 0.9 + combat_rating = 30 + } + modifier = { + factor = 0.9 + combat_rating = 40 + } + modifier = { + factor = 0.9 + combat_rating = 50 + } + modifier = { + factor = 0.9 + has_lifestyle_martial_trigger = yes + } + modifier = { + factor = 0.9 + has_education_martial_trigger = yes + has_top_tier_education_trait_trigger = yes + } + modifier = { + factor = 1.1 + has_severe_disability_trigger = yes + } + modifier = { + factor = 1.1 + is_dumb_trigger = yes + } + modifier = { + factor = 1.1 + is_weak_trigger = yes + } + custom_tooltip = { + text = you_are_killed_in_personal_combat_TT + hidden_effect = { death = { death_reason = death_duel } } + } + } + } + } + + option = { #attempt to bribe them... + trigger = { NOT = { has_character_flag = DW_was_attacked_is_incapable } } + name = { + text = EVTOPTC_MNM_7855_A + trigger = { has_character_flag = DW_was_attacked_by_the_slayer } + } + name = { + text = EVTOPTC_MNM_7855_B + trigger = { has_character_flag = DW_was_attacked_by_angry_villagers } + } + name = { + text = EVTOPTC_MNM_7855_C + trigger = { has_character_flag = DW_was_attacked_by_demon_hunters } + } + name = { + text = EVTOPTC_MNM_7855_D + trigger = { has_character_flag = DW_was_attacked_by_lone_demon_hunter } + } + name = { + text = EVTOPTC_MNM_7855_E + trigger = { has_character_flag = DW_was_attacked_by_righteous_knights } + } + name = { + text = EVTOPTC_MNM_7855_A_again + trigger = { has_character_flag = DW_was_attacked_by_the_slayer_again } + } + name = { + text = EVTOPTC_MNM_7855_B_again + trigger = { has_character_flag = DW_was_attacked_by_angry_villagers_again } + } + name = { + text = EVTOPTC_MNM_7855_C_again + trigger = { has_character_flag = DW_was_attacked_by_demon_hunters_again } + } + name = { + text = EVTOPTC_MNM_7855_D_again + trigger = { has_character_flag = DW_was_attacked_by_lone_demon_hunter_again } + } + name = { + text = EVTOPTC_MNM_7855_E_again + trigger = { has_character_flag = DW_was_attacked_by_righteous_knights_again } + } + + custom_tooltip = { + text = EVTOPTC_MNM_7855_TT + } + + scaled_wealth = { + value = -1 min = -100 + } + + random_list = { + 10 = { + modifier = { + factor = 0.9 + has_unattractive_trait_trigger = yes + } + modifier = { + factor = 0.9 + is_unattractive_trigger = yes + } + modifier = { + factor = 1.1 + diplomacy = 10 + } + modifier = { + factor = 1.1 + diplomacy = 15 + } + modifier = { + factor = 1.1 + diplomacy = 17 + } + modifier = { + factor = 1.1 + diplomacy = 20 + } + modifier = { + factor = 1.1 + has_top_tier_education_trait_trigger = yes + has_education_diplomacy_trigger = yes + } + modifier = { + factor = 1.1 + has_attractive_trait_trigger = yes + } + modifier = { + factor = 1.1 + is_attractive_trigger = yes + } + custom_tooltip = { text = they_accept_your_offer_TT } + } + 20 = { #You are injured + custom_tooltip = { text = you_are_seriously_injured_TT } + hidden_effect = { add_maimed_trait_effect = yes } + } + 40 = { #You are dragged off and burnt as a witch/warlock + trigger = { + OR = { + has_character_flag = DW_was_attacked_by_angry_villagers + has_character_flag = DW_was_attacked_by_demon_hunters + has_character_flag = DW_was_attacked_by_righteous_knights + has_character_flag = DW_was_attacked_by_angry_villagers_again + has_character_flag = DW_was_attacked_by_demon_hunters_again + has_character_flag = DW_was_attacked_by_righteous_knights_again + } + } + custom_tooltip = { + text = they_drag_you_off_to_burn + hidden_effect = { death = { death_reason = death_execution_burning } } + } + } + 10 = { #You are dragged off and burnt as a witch/warlock + trigger = { + OR = { + has_character_flag = DW_was_attacked_by_lone_demon_hunter + has_character_flag = DW_was_attacked_by_lone_demon_hunter_again + } + } + custom_tooltip = { + text = they_saw_you_in_half + hidden_effect = { death = { death_reason = death_execution_sawing } } + } + } + 10 = { #You are dragged off and burnt as a witch/warlock + trigger = { + OR = { + has_character_flag = DW_was_attacked_by_the_slayer + has_character_flag = DW_was_attacked_by_the_slayer_again + } + } + custom_tooltip = { + text = they_impale_you + hidden_effect = { death = { death_reason = death_execution_impaling } } + } + } + } + } + + option = { #do a spell (sacrifice your child)... + name = EVTOPTB_MNM_7855 + custom_tooltip = { text = EVTOPTB_MNM_7855_TT } + + if = { + limit = { + OR = { + has_character_flag = DW_was_attacked_by_the_slayer + has_character_flag = DW_was_attacked_by_lone_demon_hunter + } + } + custom_tooltip = { text = EVTOPTB_MNM_7855_TT_singular } + } + if = { + limit = { + OR = { + has_character_flag = DW_was_attacked_by_angry_villagers + has_character_flag = DW_was_attacked_by_demon_hunters + has_character_flag = DW_was_attacked_by_righteous_knights + } + } + custom_tooltip = { text = EVTOPTB_MNM_7855_TT_plural } + } + + detract_society_currency_major_effect = yes + + random_child = { + limit = { is_child_of = ROOT } + random_accident_death_effect = yes + } + + trigger = { + NOT = { has_character_flag = DW_was_attacked_is_incapable } + has_society_currency_major_trigger = yes + num_of_children = 1 + any_child = { + is_child_of = ROOT + ai = yes + } + } + } + + option = { #offer them another member...! + name = EVTOPTD_MNM_7855 + custom_tooltip = { text = EVTOPTD_MNM_7855_TT } + + if = { + limit = { + OR = { + has_character_flag = DW_was_attacked_by_angry_villagers + has_character_flag = DW_was_attacked_by_demon_hunters + has_character_flag = DW_was_attacked_by_righteous_knights + has_character_flag = DW_was_attacked_by_angry_villagers_again + has_character_flag = DW_was_attacked_by_demon_hunters_again + has_character_flag = DW_was_attacked_by_righteous_knights_again + } + } + random = { + chance = 50 + custom_tooltip = { + text = they_drag_you_off_to_burn + hidden_effect = { death = { death_reason = death_execution_burning } } + } + } + } + if = { + limit = { + OR = { + has_character_flag = DW_was_attacked_by_lone_demon_hunter + has_character_flag = DW_was_attacked_by_lone_demon_hunter_again + } + } + random = { + chance = 50 + custom_tooltip = { + text = they_saw_you_in_half + hidden_effect = { death = { death_reason = death_execution_sawing } } + } + } + } + if = { + limit = { + OR = { + has_character_flag = DW_was_attacked_by_the_slayer + has_character_flag = DW_was_attacked_by_the_slayer_again + } + } + random = { + chance = 50 + custom_tooltip = { + text = they_impale_you + hidden_effect = { death = { death_reason = death_execution_impaling } } + } + } + } + + event_target:other_member_to_blame = { + set_character_flag = was_ratted_out_by_fellow_member + if = { + limit = { + ai = yes + } + increase_visibility_minor_effect = yes + } + } + + trigger = { + NOT = { has_character_flag = DW_was_attacked_is_incapable } + is_devil_worshiper_trigger = yes + society_rank < 4 + + event_target:other_member_to_blame = { always = yes } + } + } + option = { + name = EVTOPTE_MNM_7855 + trigger = { has_character_flag = DW_was_attacked_is_incapable } + death = { death_reason = death_execution_burning } + } + + after = { + #CLEAR ALL FLAGS + clr_character_flag = DW_was_attacked_by_the_slayer_again + clr_character_flag = DW_was_attacked_by_angry_villagers_again + clr_character_flag = DW_was_attacked_by_demon_hunters_again + clr_character_flag = DW_was_attacked_by_lone_demon_hunter_again + clr_character_flag = DW_was_attacked_by_righteous_knights_again + clr_character_flag = was_ratted_out_by_fellow_member + } +} \ No newline at end of file diff --git a/MOD/Witcher/events/mnm_grand_debate_events.txt b/MOD/Witcher/events/mnm_grand_debate_events.txt new file mode 100644 index 000000000..d0cd01978 --- /dev/null +++ b/MOD/Witcher/events/mnm_grand_debate_events.txt @@ -0,0 +1,2538 @@ +########################################### +# # +# M&M Grand Debate Events # +# # +# MNM.5000-5299 # +# # +########################################### + +#IDs: +#5000-5099 Emil +#5100-5199 Joel +#5200-5299 Milla + +namespace = MNM + +################## +# THE GRAND DEBATE +################## +# Invitations has been sent out +character_event = { + id = MNM.1980 + title = GRAND_DEBATE_TITLE + desc = EVTDESC_MNM_1980 + picture = GFX_evt_gathering_of_minds + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1980 + hidden_tooltip = { + character_event = { id = MNM.1983 days = 60 } + set_character_flag = hosting_grand_debate + society = { + any_society_member = { + limit = { + age = 16 + NOT = { trait = incapable } + NOT = { is_inaccessible_trigger = yes } + NOT = { has_character_flag = do_not_disturb } + prisoner = no + } + clr_character_flag = tournament_has_ended + character_event = { id = MNM.1981 } + } + } + } + } +} + +# Debate Invite +character_event = { + id = MNM.1981 + title = GRAND_DEBATE_TITLE + desc = EVTDESC_MNM_1981 + picture = GFX_evt_courier + + is_triggered_only = yes + + trigger = { NOT = { is_inaccessible_trigger = yes } } + + option = { # Accept + name = EVTOPTA_MNM_1981 + ai_chance = { + factor = 100 + modifier = { + factor = 0.001 + ai = yes + is_inaccessible_trigger = yes + } + } + prestige = 50 + set_character_flag = attending_grand_debate + set_character_flag = do_not_disturb + hidden_tooltip = { + character_event = { id = MNM.1982 days = 300 } # Safety catch flag clearing + set_variable = { which = debate_score value = 0 } # Reset debate score + } + } + option = { # Decline + name = EVTOPTB_MNM_1981 + ai_chance = { + factor = 0.1 + } + } +} + +# Safety catch - clears character flags and modifiers +character_event = { + id = MNM.1982 + + hide_window = yes + + is_triggered_only = yes + + immediate = { + clr_character_flag = do_not_disturb + clr_character_flag = attending_grand_debate + clr_character_flag = grand_debate_has_ended + clr_character_flag = debate_winner + clr_character_flag = grand_debate_begins + society = { + any_society_member = { + limit = { + has_character_flag = attending_grand_debate + } + clr_character_flag = debate_winner + clr_character_flag = attending_grand_debate + clr_character_flag = do_not_disturb + clr_character_flag = grand_debate_has_ended + } + } + } +} + + +# The Grand Debate starts +character_event = { + id = MNM.1983 + title = GRAND_DEBATE_TITLE + desc = EVTDESC_MNM_1983 + picture = GFX_evt_gathering_of_minds + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1983 + + hidden_tooltip = { + save_event_target_as = debate_host + set_character_flag = grand_debate_begins + set_character_flag = attending_grand_debate + chronicle = { + entry = CHRONICLE_GRAND_DEBATE + picture = GFX_evt_gathering_of_minds + } + society = { + any_society_member = { + limit = { + has_character_flag = attending_grand_debate + } + character_event = { id = MNM.1984 days = 1 random = 15 } # Random events + character_event = { id = MNM.1985 days = 46 } # Set score + } + } + character_event = { id = MNM.1986 days = 48 } # Select winner + character_event = { id = MNM.1988 days = 51 } # Notify winners + } + } +} + +# Random events during Grand Debate +character_event = { + id = MNM.1984 + + hide_window = yes + + is_triggered_only = yes + + trigger = { + has_character_flag = attending_grand_debate + is_incapable = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + } + + immediate = { + random_list = { + 10 = { + trigger = { + NOT = { trait = poet } + society = { + any_society_member = { + has_character_flag = attending_grand_debate + is_incapable = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { character = ROOT } + in_command = no + NOT = { is_rival = ROOT } + trait = poet + } + } + } + character_event = { id = MNM.5201 } #Choose to gain Poet, or progress + } + 10 = { + trigger = { + society = { + any_society_member = { + is_rival = ROOT + has_character_flag = attending_grand_debate + is_incapable = no + prisoner = no + NOT = { character = ROOT } + in_command = no + NOT = { + has_opinion_modifier = { + modifier = opinion_scholarly_appreciation + who = ROOT + } + } + } + } + } + character_event = { id = MNM.5202 } #Sway a rival + } + 10 = { + trigger = { + society = { + any_society_member = { + has_character_flag = attending_grand_debate + is_incapable = no + prisoner = no + NOT = { character = ROOT } + in_command = no + NOT = { is_close_relative = ROOT } + } + } + } + character_event = { id = MNM.5203 } #Develop feelings towards other member maybe + } + 10 = { + character_event = { id = MNM.5204 } #Try the comedic approach + } + 10 = { + trigger = { + society = { + any_society_member = { + count = 2 + has_character_flag = attending_grand_debate + is_incapable = no + prisoner = no + NOT = { character = ROOT } + in_command = no + NOT = { is_close_relative = ROOT } + } + } + } + character_event = { id = MNM.5207 } #The Mediator + } + 10 = { + trigger = { + NOT = { has_character_modifier = childish_prankster } + society = { + any_society_member = { + has_character_flag = attending_grand_debate + is_incapable = no + prisoner = no + NOT = { character = ROOT } + in_command = no + NOT = { is_close_relative = ROOT } + } + } + any_artifact = { + has_artifact_flag = ingredient + } + } + character_event = { id = MNM.5208 } #Sabotage someone else (and yourself)? + } + 10 = { + trigger = { + OR = { + any_lover = { + prisoner = no + is_incapable = no + } + any_spouse = { + prisoner = no + is_incapable = no + } + any_friend = { + prisoner = no + is_incapable = no + } + any_child = { + is_incapable = no + prisoner = no + is_child_of = ROOT + age = 6 + NOT = { is_rival = ROOT } + opinion = { who = ROOT value = 0 } + } + mother = { + is_alive = yes + is_incapable = no + prisoner = no + NOT = { is_rival = ROOT } + } + father = { + is_alive = yes + is_incapable = no + prisoner = no + NOT = { is_rival = ROOT } + } + } + } + character_event = { id = MNM.5209 } # Surge of creativity: focus on studies, or write letter to someone? + } + 5 = { + trigger = { NOT = { trait = stressed } } + character_event = { id = MNM.5211 } # Mental break-down + } + 10 = { # Bad lodgings/homesick + trigger = { + NOT = { character = event_target:debate_host } + } + character_event = { id = MNM.5100 } + } + 3 = { # Sabotage notes + modifier = { + factor = 2 + trait = deceitful + } + trigger = { + society = { + any_society_member = { + NOT = { character = ROOT } + has_character_flag = attending_grand_debate + learning = ROOT + } + } + } + character_event = { id = MNM.5101 } + } + 10 = { # Find abandoned notes + character_event = { id = MNM.5102 } + } + } + } +} + +# Set debate score +character_event = { + id = MNM.1985 + + hide_window = yes + + is_triggered_only = yes + + immediate = { + export_to_variable = { + which = debate_learning + value = learning + } + change_variable = { + which = debate_score + which = debate_learning + which = ROOT + } + if = { + limit = { trait = gregarious } + change_variable = { which = debate_score value = 1 } + } + if = { + limit = { trait = socializer } + change_variable = { which = debate_score value = 1 } + } + if = { + limit = { trait = shy } + change_variable = { which = debate_score value = -1 } + } + if = { + limit = { has_fair_trait_trigger = yes } + change_variable = { which = debate_score value = 1 } + } + if = { + limit = { trait = stutter } + change_variable = { which = debate_score value = -2 } + } + if = { + limit = { trait = lisp } + change_variable = { which = debate_score value = -2 } + } + if = { + limit = { trait = incapable } + change_variable = { which = debate_score value = -100 } + } + random_list = { + 10 = { + set_character_flag = debate_score_20 + modifier = { + factor = 0 + NOT = { check_variable = { which = debate_score value = 54 } } + } + } + 10 = { + set_character_flag = debate_score_19 + modifier = { + factor = 0 + NOT = { check_variable = { which = debate_score value = 51 } } + } + modifier = { + factor = 0 + check_variable = { which = debate_score value = 60 } + } + } + 10 = { + set_character_flag = debate_score_18 + modifier = { + factor = 0 + NOT = { check_variable = { which = debate_score value = 48 } } + } + modifier = { + factor = 0 + check_variable = { which = debate_score value = 57 } + } + } + 10 = { + set_character_flag = debate_score_17 + modifier = { + factor = 0 + NOT = { check_variable = { which = debate_score value = 45 } } + } + modifier = { + factor = 0 + check_variable = { which = debate_score value = 54 } + } + } + 10 = { + set_character_flag = debate_score_16 + modifier = { + factor = 0 + NOT = { check_variable = { which = debate_score value = 42 } } + } + modifier = { + factor = 0 + check_variable = { which = debate_score value = 51 } + } + } + 10 = { + set_character_flag = debate_score_15 + modifier = { + factor = 0 + NOT = { check_variable = { which = debate_score value = 39 } } + } + modifier = { + factor = 0 + check_variable = { which = debate_score value = 48 } + } + } + 10 = { + set_character_flag = debate_score_14 + modifier = { + factor = 0 + NOT = { check_variable = { which = debate_score value = 36 } } + } + modifier = { + factor = 0 + check_variable = { which = debate_score value = 45 } + } + } + 10 = { + set_character_flag = debate_score_13 + modifier = { + factor = 0 + NOT = { check_variable = { which = debate_score value = 33 } } + } + modifier = { + factor = 0 + check_variable = { which = debate_score value = 42 } + } + } + 10 = { + set_character_flag = debate_score_12 + modifier = { + factor = 0 + NOT = { check_variable = { which = debate_score value = 30 } } + } + modifier = { + factor = 0 + check_variable = { which = debate_score value = 39 } + } + } + 10 = { + set_character_flag = debate_score_11 + modifier = { + factor = 0 + NOT = { check_variable = { which = debate_score value = 27 } } + } + modifier = { + factor = 0 + check_variable = { which = debate_score value = 36 } + } + } + 10 = { + set_character_flag = debate_score_10 + modifier = { + factor = 0 + NOT = { check_variable = { which = debate_score value = 24 } } + } + modifier = { + factor = 0 + check_variable = { which = debate_score value = 33 } + } + } + 10 = { + set_character_flag = debate_score_09 + modifier = { + factor = 0 + NOT = { check_variable = { which = debate_score value = 21 } } + } + modifier = { + factor = 0 + check_variable = { which = debate_score value = 30 } + } + } + 10 = { + set_character_flag = debate_score_08 + modifier = { + factor = 0 + NOT = { check_variable = { which = debate_score value = 18 } } + } + modifier = { + factor = 0 + check_variable = { which = debate_score value = 27 } + } + } + 10 = { + set_character_flag = debate_score_07 + modifier = { + factor = 0 + NOT = { check_variable = { which = debate_score value = 15 } } + } + modifier = { + factor = 0 + check_variable = { which = debate_score value = 24 } + } + } + 10 = { + set_character_flag = debate_score_06 + modifier = { + factor = 0 + NOT = { check_variable = { which = debate_score value = 12 } } + } + modifier = { + factor = 0 + check_variable = { which = debate_score value = 21 } + } + } + 10 = { + set_character_flag = debate_score_05 + modifier = { + factor = 0 + NOT = { check_variable = { which = debate_score value = 9 } } + } + modifier = { + factor = 0 + check_variable = { which = debate_score value = 18 } + } + } + 10 = { + set_character_flag = debate_score_04 + modifier = { + factor = 0 + NOT = { check_variable = { which = debate_score value = 6 } } + } + modifier = { + factor = 0 + check_variable = { which = debate_score value = 15 } + } + } + 10 = { + set_character_flag = debate_score_03 + modifier = { + factor = 0 + NOT = { check_variable = { which = debate_score value = 3 } } + } + modifier = { + factor = 0 + check_variable = { which = debate_score value = 12 } + } + } + 10 = { + set_character_flag = debate_score_02 + modifier = { + factor = 0 + check_variable = { which = debate_score value = 9 } + } + } + 10 = { + set_character_flag = debate_score_01 + modifier = { + factor = 0 + check_variable = { which = debate_score value = 6 } + } + } + 10 = { + set_character_flag = debate_score_00 + modifier = { + factor = 0 + check_variable = { which = debate_score value = 3 } + } + } + } + } +} + +# Select the winner +character_event = { + id = MNM.1986 + + hide_window = yes + + is_triggered_only = yes + + immediate = { + society = { + random_society_member = { + limit = { has_character_flag = debate_score_20 } + clr_character_flag = debate_score_20 + set_character_flag = debate_winner + break = yes + } + random_society_member = { + limit = { has_character_flag = debate_score_19 } + clr_character_flag = debate_score_19 + set_character_flag = debate_winner + break = yes + } + random_society_member = { + limit = { has_character_flag = debate_score_18 } + clr_character_flag = debate_score_18 + set_character_flag = debate_winner + break = yes + } + random_society_member = { + limit = { has_character_flag = debate_score_17 } + clr_character_flag = debate_score_17 + set_character_flag = debate_winner + break = yes + } + random_society_member = { + limit = { has_character_flag = debate_score_16 } + clr_character_flag = debate_score_16 + set_character_flag = debate_winner + break = yes + } + random_society_member = { + limit = { has_character_flag = debate_score_15 } + clr_character_flag = debate_score_15 + set_character_flag = debate_winner + break = yes + } + random_society_member = { + limit = { has_character_flag = debate_score_14 } + clr_character_flag = debate_score_14 + set_character_flag = debate_winner + break = yes + } + random_society_member = { + limit = { has_character_flag = debate_score_13 } + clr_character_flag = debate_score_13 + set_character_flag = debate_winner + break = yes + } + random_society_member = { + limit = { has_character_flag = debate_score_12 } + clr_character_flag = debate_score_12 + set_character_flag = debate_winner + break = yes + } + random_society_member = { + limit = { has_character_flag = debate_score_11 } + clr_character_flag = debate_score_11 + set_character_flag = debate_winner + break = yes + } + random_society_member = { + limit = { has_character_flag = debate_score_10 } + clr_character_flag = debate_score_10 + set_character_flag = debate_winner + break = yes + } + random_society_member = { + limit = { has_character_flag = debate_score_09 } + clr_character_flag = debate_score_09 + set_character_flag = debate_winner + break = yes + } + random_society_member = { + limit = { has_character_flag = debate_score_08 } + clr_character_flag = debate_score_08 + set_character_flag = debate_winner + break = yes + } + random_society_member = { + limit = { has_character_flag = debate_score_07 } + clr_character_flag = debate_score_07 + set_character_flag = debate_winner + break = yes + } + random_society_member = { + limit = { has_character_flag = debate_score_06 } + clr_character_flag = debate_score_06 + set_character_flag = debate_winner + break = yes + } + random_society_member = { + limit = { has_character_flag = debate_score_05 } + clr_character_flag = debate_score_05 + set_character_flag = debate_winner + break = yes + } + random_society_member = { + limit = { has_character_flag = debate_score_04 } + clr_character_flag = debate_score_04 + set_character_flag = debate_winner + break = yes + } + random_society_member = { + limit = { has_character_flag = debate_score_03 } + clr_character_flag = debate_score_03 + set_character_flag = debate_winner + break = yes + } + random_society_member = { + limit = { has_character_flag = debate_score_02 } + clr_character_flag = debate_score_02 + set_character_flag = debate_winner + break = yes + } + random_society_member = { + limit = { has_character_flag = debate_score_01 } + clr_character_flag = debate_score_01 + set_character_flag = debate_winner + break = yes + } + random_society_member = { + limit = { has_character_flag = debate_score_00 } + clr_character_flag = debate_score_00 + set_character_flag = debate_winner + break = yes + } + } + } +} + +# Notify winners +character_event = { + id = MNM.1988 + + hide_window = yes + + is_triggered_only = yes + + immediate = { + society = { + any_society_member = { + limit = { has_character_flag = debate_winner } + character_event = { id = MNM.1989 } + } + } + } +} + +# Character scores top placement +character_event = { + id = MNM.1989 + title = GRAND_DEBATE_TITLE + desc = EVTDESC_MNM_1989 + picture = GFX_evt_gathering_of_minds + + has_character_flag = attending_grand_debate + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1989 + + wealth = 100 + prestige = 300 + change_society_currency = 200 + hidden_tooltip = { + society = { + any_society_member = { + limit = { + has_character_flag = hosting_grand_debate + NOT = { character = ROOT } + } + character_event = { id = MNM.1990 days = 3 } # Inform host + } + any_society_member = { + limit = { + has_character_flag = hosting_grand_debate + character = ROOT + } + character_event = { id = MNM.1993 days = 3 } # If host is winner - End the debate + } + any_society_member = { + limit = { + has_character_flag = attending_grand_debate + NOT = { has_character_flag = hosting_grand_debate } + NOT = { character = ROOT } + } + character_event = { id = MNM.1991 days = 3 } # Inform other participants + } + } + } + } +} + +# Inform host about winner +character_event = { + id = MNM.1990 + title = GRAND_DEBATE_TITLE + desc = EVTDESC_MNM_1990 + picture = GFX_evt_gathering_of_minds + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1990 + opinion = { + modifier = opinion_debate_winner + who = FROM + years = 10 + } + character_event = { id = MNM.1993 days = 5 } + } +} + +# Inform others about winner +character_event = { + id = MNM.1991 + title = GRAND_DEBATE_TITLE + desc = EVTDESC_MNM_1990 + picture = GFX_evt_gathering_of_minds + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1991 + } +} + +# The Grand Debate ends +character_event = { + id = MNM.1993 + title = GRAND_DEBATE_TITLE + desc = EVTDESC_MNM_1993 + picture = GFX_evt_gathering_of_minds + + hide_from = yes + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1993 + + add_society_modifier = { + modifier = held_grand_debate_modifier + years = 5 + } + + custom_tooltip = { + text = GRAND_DEBATE_PARTICIPANT_OPINION_TOOLTIP + } + hidden_tooltip = { + society = { + any_society_member = { + limit = { + has_character_flag = attending_grand_debate + NOT = { has_character_flag = debate_winner } + } + if = { + limit = { + NOT = { character = PREVPREV } + } + opinion = { + modifier = opinion_debate_participant + who = PREVPREV + years = 5 + } + } + + random_list = { # Select outcome + 10 = { # Good outcome - Upgrade your education trait + modifier = { + factor = 2 + OR = { + has_character_flag = debate_score_20 + has_character_flag = debate_score_19 + has_character_flag = debate_score_18 + has_character_flag = debate_score_17 + has_character_flag = debate_score_16 + } + } + modifier = { + factor = 0 + OR = { + trait = grey_eminence + trait = brilliant_strategist + trait = midas_touched + trait = elusive_shadow + trait = mastermind_theologian + } + } + character_event = { id = MNM.1994 } + } + 20 = { # Good outcome + modifier = { + factor = 2 + OR = { + has_character_flag = debate_score_20 + has_character_flag = debate_score_19 + has_character_flag = debate_score_18 + has_character_flag = debate_score_17 + has_character_flag = debate_score_16 + has_character_flag = debate_score_15 + has_character_flag = debate_score_14 + has_character_flag = debate_score_13 + has_character_flag = debate_score_12 + } + } + character_event = { id = MNM.1995 } + } + 30 = { # Decent outcome + character_event = { id = MNM.1996 } + } + 30 = { # Normal outcome + character_event = { id = MNM.1997 } + } + 10 = { # Bad outcome + modifier = { + factor = 2 + OR = { + has_character_flag = debate_score_03 + has_character_flag = debate_score_02 + has_character_flag = debate_score_01 + has_character_flag = debate_score_00 + } + } + modifier = { + factor = 0 + OR = { + has_character_flag = debate_score_20 + has_character_flag = debate_score_19 + has_character_flag = debate_score_18 + has_character_flag = debate_score_17 + has_character_flag = debate_score_16 + has_character_flag = debate_score_15 + has_character_flag = debate_score_14 + has_character_flag = debate_score_13 + has_character_flag = debate_score_12 + } + } + character_event = { id = MNM.1998 } + } + } + clr_character_flag = attending_grand_debate + clr_character_flag = do_not_disturb + clr_character_flag = debate_score_20 + clr_character_flag = debate_score_19 + clr_character_flag = debate_score_18 + clr_character_flag = debate_score_17 + clr_character_flag = debate_score_16 + clr_character_flag = debate_score_15 + clr_character_flag = debate_score_14 + clr_character_flag = debate_score_13 + clr_character_flag = debate_score_12 + clr_character_flag = debate_score_11 + clr_character_flag = debate_score_10 + clr_character_flag = debate_score_09 + clr_character_flag = debate_score_08 + clr_character_flag = debate_score_07 + clr_character_flag = debate_score_06 + clr_character_flag = debate_score_05 + clr_character_flag = debate_score_04 + clr_character_flag = debate_score_03 + clr_character_flag = debate_score_02 + clr_character_flag = debate_score_01 + clr_character_flag = debate_score_00 + } + any_society_member = { + limit = { + has_character_flag = attending_grand_debate + has_character_flag = debate_winner + } + clr_character_flag = debate_winner + clr_character_flag = attending_grand_debate + clr_character_flag = do_not_disturb + set_character_flag = grand_debate_has_ended + } + } + clr_global_flag = holding_grand_debate + clr_global_flag = held_grand_debate + set_global_flag = held_grand_debate + clr_character_flag = attending_grand_debate + clr_character_flag = hosting_grand_debate + clr_character_flag = grand_debate_begins + clr_character_flag = debate_winner + clr_character_flag = do_not_disturb + set_character_flag = grand_debate_has_ended + } + } +} + +# The Grand Debate ends - Education upgrade +character_event = { + id = MNM.1994 + title = GRAND_DEBATE_TITLE + picture = GFX_evt_gathering_of_minds + + desc = { + text = EVTDESC_MNM_1994 + trigger = { + event_target:debate_host = { NOT = { character = ROOT } } + } + } + desc = { + text = EVTDESC_MNM_1994_HOST + trigger = { + event_target:debate_host = { character = ROOT } + } + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1994 + + prestige = 50 + upgrade_education_effect = yes + } +} + +# The Grand Debate ends - Good outcome +character_event = { + id = MNM.1995 + title = GRAND_DEBATE_TITLE + picture = GFX_evt_gathering_of_minds + + desc = { + text = EVTDESC_MNM_1995 + trigger = { + event_target:debate_host = { NOT = { character = ROOT } } + } + } + desc = { + text = EVTDESC_MNM_1995_HOST + trigger = { + event_target:debate_host = { character = ROOT } + } + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1995 + + prestige = 50 + add_character_modifier = { + name = debater + years = 3 + } + } +} + +# The Grand Debate ends - Decent outcome +character_event = { + id = MNM.1996 + title = GRAND_DEBATE_TITLE + picture = GFX_evt_gathering_of_minds + + desc = { + text = EVTDESC_MNM_1996 + trigger = { + event_target:debate_host = { NOT = { character = ROOT } } + } + } + desc = { + text = EVTDESC_MNM_1996_HOST + trigger = { + event_target:debate_host = { character = ROOT } + } + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1996 + + prestige = 50 + } +} + +# The Grand Debate ends - Normal outcome +character_event = { + id = MNM.1997 + title = GRAND_DEBATE_TITLE + picture = GFX_evt_gathering_of_minds + + desc = { + text = EVTDESC_MNM_1997 + trigger = { + event_target:debate_host = { NOT = { character = ROOT } } + } + } + desc = { + text = EVTDESC_MNM_1997_HOST + trigger = { + event_target:debate_host = { character = ROOT } + } + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1997 + + random = { + chance = 10 + change_learning = 1 + } + } +} + +# The Grand Debate ends - Bad outcome +character_event = { + id = MNM.1998 + title = GRAND_DEBATE_TITLE + desc = EVTDESC_MNM_1998 + picture = GFX_evt_gathering_of_minds + + desc = { + text = EVTDESC_MNM_1998 + trigger = { + event_target:debate_host = { NOT = { character = ROOT } } + } + } + desc = { + text = EVTDESC_MNM_1998_HOST + trigger = { + event_target:debate_host = { character = ROOT } + } + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1998 + + prestige = -100 + random = { + chance = 10 + change_learning = -1 + } + } +} + + +###################################################### +######## RANDOM EVENTS (for participants) ############ +###################################################### + +character_event = { # Gain Poet trait (or not) + id = MNM.5201 + desc = EVTDESC_MNM_5201 + picture = GFX_evt_shady_meeting + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + NOT = { trait = poet } + + society = { + any_society_member = { + has_character_flag = attending_grand_debate + is_incapable = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { character = ROOT } + in_command = no + NOT = { is_rival = ROOT } + trait = poet + } + } + } + + immediate = { + society = { + random_society_member = { #find a fellow poet if you can + limit = { + has_character_flag = attending_grand_debate + is_incapable = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { character = ROOT } + in_command = no + NOT = { is_rival = ROOT } + trait = poet + } + save_event_target_as = fellow_debater_target + break = yes + } + random_society_member = { #otherwise grab anyone + limit = { + has_character_flag = attending_grand_debate + is_incapable = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { character = ROOT } + in_command = no + NOT = { is_rival = ROOT } + } + save_event_target_as = fellow_debater_target + break = yes + } + } + } + + option = { + name = EVTOPTA_MNM_5201 #sit down and write something beautiful + custom_tooltip = { text = EVTOPTA_MNM_5201_TT } + add_trait = poet + } + option = { + name = EVTOPTB_MNM_5201 #Steer my arguments back to logos + custom_tooltip = { text = EVTOPTB_MNM_5201_TT } + hidden_effect = { change_variable = { which = debate_score value = 1 } } + } +} + +character_event = { # Sway a rival + id = MNM.5202 + desc = EVTDESC_MNM_5202 + picture = GFX_evt_gathering_of_minds + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + society = { + any_society_member = { + is_rival = ROOT + has_character_flag = attending_grand_debate + is_incapable = no + prisoner = no + NOT = { character = ROOT } + in_command = no + NOT = { + has_opinion_modifier = { + modifier = opinion_scholarly_appreciation + who = ROOT + } + } + } + } + } + + immediate = { + society = { + random_society_member = { + limit = { + has_character_flag = attending_grand_debate + is_incapable = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { character = ROOT } + in_command = no + NOT = { + has_opinion_modifier = { + modifier = opinion_scholarly_appreciation + who = ROOT + } + } + } + save_event_target_as = rival_debater_target + break = yes + } + } + } + + option = { + name = EVTOPTA_MNM_5202 # I am glad we can see beyond our differences + reverse_opinion = { + who = event_target:rival_debater_target + modifier = opinion_scholarly_appreciation + years = 10 + } + } +} + +character_event = { # Develop a crush of some sort (on random hermetic present at debate) + id = MNM.5203 + picture = GFX_evt_gathering_of_minds + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + society = { + any_society_member = { + has_character_flag = attending_grand_debate + is_incapable = no + prisoner = no + NOT = { character = ROOT } + in_command = no + NOT = { is_close_relative = ROOT } + } + } + } + + immediate = { + society = { + random_society_member = { + limit = { + has_character_flag = attending_grand_debate + is_incapable = no + prisoner = no + NOT = { character = ROOT } + in_command = no + NOT = { is_close_relative = ROOT } + } + save_event_target_as = striking_debater_target + break = yes + } + } + } + + desc = { + text = EVTDESC_MNM_5203_A # Wow, they are so great + trigger = { + event_target:striking_debater_target = { + NOR = { + is_lover = ROOT + ROOT_possibly_romantically_interested_trigger = yes + } + } + } + } + desc = { + text = EVTDESC_MNM_5203_B # I knew I already liked them, but wow + trigger = { + event_target:striking_debater_target = { + OR = { + is_lover = ROOT + ROOT_possibly_romantically_interested_trigger = yes + } + } + } + } + + option = { + name = EVTOPTA_MNM_5203 # I am not sure what these feelings are + if = { + limit = { + event_target:striking_debater_target = { + NOR = { + is_lover = ROOT + ROOT_possibly_romantically_interested_trigger = yes + } + } + } + random_list = { + 10 = { + opinion = { + who = event_target:striking_debater_target + modifier = opinion_scholarly_appreciation + years = 10 + } + } + 10 = { + opinion = { + who = event_target:striking_debater_target + modifier = opinion_budding_friendship + years = 10 + } + hidden_effect = { + reverse_opinion = { + who = event_target:striking_debater_target + modifier = opinion_budding_friendship + years = 10 + } + } + } + 10 = { + trigger = { NOT = { trait = envious } } + add_trait_envious_effect = yes + } + } + } + + if = { + limit = { + event_target:striking_debater_target = { + OR = { + is_lover = ROOT + ROOT_possibly_romantically_interested_trigger = yes + } + } + } + random_list = { + 35 = { + opinion = { + who = event_target:striking_debater_target + modifier = opinion_scholarly_appreciation + years = 10 + } + } + 25 = { + opinion = { + who = event_target:striking_debater_target + modifier = opinion_budding_romance + years = 10 + } + hidden_effect = { + reverse_opinion = { + who = event_target:striking_debater_target + modifier = opinion_budding_romance + years = 10 + } + } + } + 20 = { + opinion = { + who = event_target:striking_debater_target + modifier = opinion_budding_friendship + years = 10 + } + hidden_effect = { + reverse_opinion = { + who = event_target:striking_debater_target + modifier = opinion_budding_friendship + years = 10 + } + } + } + 5 = { + trigger = { NOT = { trait = envious } } + add_trait = envious + hidden_tooltip = { character_event = { id = 38271 } } + } + } + } + } +} + +character_event = { # Use humor? + id = MNM.5204 + desc = EVTDESC_MNM_5204 + picture = GFX_evt_gathering_of_minds + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_5204 # I will try to use humor! + custom_tooltip = { text = EVTOPTA_MNM_5204_TT } + hidden_effect = { + random_list = { + 50 = { + modifier = { + factor = 1.1 + diplomacy = 7 + } + modifier = { + factor = 1.1 + diplomacy = 9 + } + modifier = { + factor = 1.1 + diplomacy = 11 + } + modifier = { + factor = 1.1 + diplomacy = 13 + } + modifier = { + factor = 1.1 + diplomacy = 15 + } + modifier = { + factor = 1.1 + diplomacy = 17 + } + modifier = { + factor = 1.1 + diplomacy = 19 + } + modifier = { + factor = 1.1 + diplomacy = 21 + } + modifier = { + factor = 1.1 + diplomacy = 23 + } + modifier = { + factor = 1.2 + trait = genius + } + modifier = { + factor = 1.1 + trait = quick + } + modifier = { + factor = 1.1 + trait = shrewd + } + modifier = { + factor = 1.1 + trait = gregarious + } + modifier = { + factor = 0.5 + trait = dull + } + modifier = { + factor = 0.5 + trait = slow + } + modifier = { + factor = 0.1 + trait = imbecile + } + character_event = { id = MNM.5205 days = 3 random = 5 } #it works! + } + 50 = { + character_event = { id = MNM.5206 days = 3 random = 5 } #it fails + } + } + } + } + option = { + name = EVTOPTB_MNM_5204 # I will NOT stoop that low + custom_tooltip = { text = EVTOPTB_MNM_5204_TT } + } +} + +character_event = { # SUCCESS - I charmed their socks off with my jokes! + id = MNM.5205 + desc = EVTDESC_MNM_5205 + picture = GFX_evt_gathering_of_minds + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + is_alive = yes + } + + option = { + name = EVTOPTA_MNM_5205 # I am great! + if = { + limit = { + NOT = { trait = gregarious } + } + add_trait = gregarious + } + hidden_effect = { change_variable = { which = debate_score value = 1 } } + } +} + +character_event = { # FAILURE - People find me a philistine + id = MNM.5206 + desc = EVTDESC_MNM_5206 + picture = GFX_evt_gathering_of_minds + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + is_alive = yes + } + + option = { + name = EVTOPTA_MNM_5206 # I am great! + if = { + limit = { + NOT = { trait = shy } + } + add_trait = shy + } + hidden_effect = { change_variable = { which = debate_score value = -1 } } + } +} + +character_event = { #The Mediator + id = MNM.5207 + desc = EVTDESC_MNM_5207 + picture = GFX_evt_gathering_of_minds + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + society = { + any_society_member = { + count = 2 + has_character_flag = attending_grand_debate + is_incapable = no + prisoner = no + NOT = { character = ROOT } + in_command = no + NOT = { is_close_relative = ROOT } + } + } + } + + immediate = { + society = { + random_society_member = { + limit = { + has_character_flag = attending_grand_debate + is_incapable = no + prisoner = no + NOT = { character = ROOT } + in_command = no + } + save_event_target_as = fellow_member_1 + } + random_society_member = { + limit = { + has_character_flag = attending_grand_debate + is_incapable = no + prisoner = no + NOT = { character = ROOT } + in_command = no + } + save_event_target_as = fellow_member_2 + } + } + } + + option = { + name = EVTOPTA_MNM_5207 #member 1 is pleased, 2 not so much + + reverse_opinion = { + who = event_target:fellow_member_1 + modifier = opinion_mediator + years = 10 + } + reverse_opinion = { + who = event_target:fellow_member_2 + modifier = opinion_meddler + years = 10 + } + } + option = { + name = EVTOPTB_MNM_5207 #member 2 is pleased, 1 not so much + + reverse_opinion = { + who = event_target:fellow_member_1 + modifier = opinion_meddler + years = 10 + } + reverse_opinion = { + who = event_target:fellow_member_2 + modifier = opinion_mediator + years = 10 + } + } + option = { + name = EVTOPTC_MNM_5207 # both are pleased + tooltip_info = diplomacy + + reverse_opinion = { + who = event_target:fellow_member_1 + modifier = opinion_mediator + years = 10 + } + reverse_opinion = { + who = event_target:fellow_member_2 + modifier = opinion_mediator + years = 10 + } + + hidden_effect = { change_variable = { which = debate_score value = 1 } } + + trigger = { + diplomacy = 17 + } + } + option = { + name = EVTOPTD_MNM_5207 #nothing happens + } +} + + +#Dragging someone down with you +character_event = { + id = MNM.5208 + desc = EVTDESC_MNM_5208 # Fellow hermetic is being pompous + picture = GFX_evt_gathering_of_minds + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + society = { + any_society_member = { + has_character_flag = attending_grand_debate + is_incapable = no + prisoner = no + NOT = { character = ROOT } + in_command = no + NOT = { is_close_relative = ROOT } + } + } + } + + immediate = { + select_random_hermetic_ingredient_effect = yes + select_random_hermetic_ingredient_effect = yes + society = { + random_society_member = { + limit = { + has_character_flag = attending_grand_debate + is_incapable = no + prisoner = no + NOT = { character = ROOT } + in_command = no + is_rival = ROOT + } + save_event_target_as = fellow_member_target + break = yes + } + random_society_member = { + limit = { + has_character_flag = attending_grand_debate + is_incapable = no + prisoner = no + NOT = { character = ROOT } + in_command = no + } + save_event_target_as = fellow_member_target + } + } + } + + option = { + name = EVTOPTA_MNM_5208 # it would be worth sabotaging them + custom_tooltip = { text = EVTOPTA_MNM_5208_TT } + add_character_modifier = { + name = childish_prankster + years = 5 + } + + event_target:fellow_member_target = { + add_character_modifier = { + name = tarnished_reputation + years = 5 + } + } + if = { + limit = { + has_selected_ingredient_2_trigger = yes + } + destroy_selected_ingredient_1_and_2_effect = yes + } + if = { + limit = { + has_selected_ingredient_1_trigger = yes + has_selected_ingredient_2_trigger = no + } + destroy_selected_ingredient_1_effect = yes + } + ai_chance = { + factor = 10 + modifier = { + factor = 50 + OR = { + trait = ambitious + trait = cruel + has_vice_trigger = yes + } + } + } + } + option = { + name = EVTOPTB_MNM_5208 #I respect my fellow scholars! + custom_tooltip = { text = EVTOPTB_MNM_5208_TT } + + ai_chance = { + factor = 1 + modifier = { + factor = 50 + trait = kind + } + } + } + after = { + remove_selection_of_ingredients_effect = yes + } +} + +#Deal with surge of inspiration (prepare arguments for tomorrow's discussion, or write a letter to someone you care about?) +character_event = { + id = MNM.5209 + desc = EVTDESC_MNM_5209 + picture = GFX_evt_gathering_of_minds + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + OR = { + any_lover = { + always = yes + } + any_spouse = { + always = yes + } + any_friend = { + always = yes + } + any_child = { + is_incapable = no + prisoner = no + is_child_of = ROOT + age = 6 + NOT = { is_rival = ROOT } + opinion = { who = ROOT value = 0 } + } + } + } + + immediate = { + random_lover = { # Find a target, preferably lover, then spouse, then friend, then a child... + limit = { + is_incapable = no + prisoner = no + } + save_event_target_as = inspired_letter_target + set_character_flag = love_letters_flag + break = yes + } + random_spouse = { + limit = { + is_incapable = no + prisoner = no + } + save_event_target_as = inspired_letter_target + set_character_flag = love_letters_flag + break = yes + } + random_friend = { + limit = { + is_incapable = no + prisoner = no + } + save_event_target_as = inspired_letter_target + set_character_flag = pen_pal_flag + break = yes + } + random_child = { + limit = { + is_incapable = no + prisoner = no + is_child_of = ROOT + age = 6 + NOT = { is_rival = ROOT } + opinion = { who = ROOT value = 0 } + } + save_event_target_as = inspired_letter_target + set_character_flag = pen_pal_flag + break = yes + } + mother = { + if = { + limit = { + is_alive = yes + is_incapable = no + prisoner = no + NOT = { is_rival = ROOT } + opinion = { who = ROOT value = 0 } + } + save_event_target_as = inspired_letter_target + set_character_flag = delighted_parent_flag + break = yes + } + } + father = { + if = { + limit = { + is_alive = yes + is_incapable = no + prisoner = no + NOT = { is_rival = ROOT } + opinion = { who = ROOT value = 0 } + } + save_event_target_as = inspired_letter_target + set_character_flag = delighted_parent_flag + break = yes + } + } + } + + option = { + name = { + text = EVTOPTA_MNM_5209_love_target # I will write a letter to them + trigger = { + event_target:inspired_letter_target = { + OR = { + has_opinion_modifier = { who = ROOT modifier = opinion_budding_romance } + has_opinion_modifier = { who = ROOT modifier = opinion_lover } + } + } + } + } + + name = { + text = EVTOPTA_MNM_5209_friendly_target # I will write a letter to them + trigger = { + event_target:inspired_letter_target = { + opinion = { who = ROOT value = 0 } + } + } + } + + name = { + text = EVTOPTA_MNM_5209_hostile_target # I will write a letter to them + trigger = { + event_target:inspired_letter_target = { + NOT = { opinion = { who = ROOT value = 0 } } + } + } + } + custom_tooltip = { text = EVTOPTA_MNM_5209_TT } + event_target:inspired_letter_target = { + trigger_switch = { + on_trigger = has_character_flag + love_letters_flag = { + opinion = { + who = ROOT + modifier = opinion_love_letters + years = 10 + } + } + pen_pal_flag = { + opinion = { + who = ROOT + modifier = opinion_pen_pal + years = 10 + } + } + delighted_parent_flag = { + opinion = { + who = ROOT + modifier = opinion_delighted_parent + years = 10 + } + } + } + } + event_target:inspired_letter_target = { character_event = { id = MNM.5210 days = 10 } } + } + + option = { #special poet trait option + name = { + text = EVTOPTB_MNM_5209_love_target # I will write a letter to them + trigger = { + event_target:inspired_letter_target = { + OR = { + has_opinion_modifier = { who = ROOT modifier = opinion_budding_romance } + has_opinion_modifier = { who = ROOT modifier = opinion_lover } + } + } + } + } + + name = { + text = EVTOPTB_MNM_5209_friendly_target # I will write a letter to them + trigger = { + event_target:inspired_letter_target = { + opinion = { who = ROOT value = 0 } + } + } + } + + name = { + text = EVTOPTB_MNM_5209_hostile_target # I will write a letter to them + trigger = { + event_target:inspired_letter_target = { + NOT = { opinion = { who = ROOT value = 0 } } + } + } + } + + + custom_tooltip = { text = EVTOPTB_MNM_5209_TT } + + event_target:inspired_letter_target = { + trigger_switch = { + on_trigger = has_character_flag + love_letters_flag = { + opinion = { + who = ROOT + modifier = opinion_poet_love_letters + years = 10 + } + } + pen_pal_flag = { + opinion = { + who = ROOT + modifier = opinion_poet_pen_pal + years = 10 + } + } + delighted_parent_flag = { + opinion = { + who = ROOT + modifier = opinion_poet_delighted_parent + years = 10 + } + } + } + } + event_target:inspired_letter_target = { + set_character_flag = poetic_letter + character_event = { id = MNM.5210 days = 10 } + } + + tooltip_info = poet + trigger = { trait = poet } + } + option = { + name = EVTOPTC_MNM_5209 # I will focus on the debate + custom_tooltip = { text = EVTOPTC_MNM_5209_TT } + hidden_effect = { change_variable = { which = debate_score value = 1 } } + } +} + +character_event = { # inspired_letter_target recieves a letter + id = MNM.5210 + desc = EVTDESC_MNM_5210 + picture = GFX_evt_recieve_letter + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + is_incapable = no + prisoner = no + } + + option = { + name = EVTOPTA_MNM_5210 + if = { + limit = { has_character_flag = poetic_flag } + tooltip = { + trigger_switch = { + on_trigger = has_character_flag + love_letters_flag = { + opinion = { + who = ROOT + modifier = opinion_love_letters + years = 10 + } + } + pen_pal_flag = { + opinion = { + who = ROOT + modifier = opinion_pen_pal + years = 10 + } + } + delighted_parent_flag = { + opinion = { + who = ROOT + modifier = opinion_delighted_parent + years = 10 + } + } + } + } + } + if = { + limit = { NOT = { has_character_flag = poetic_flag } } + tooltip = { + trigger_switch = { + on_trigger = has_character_flag + love_letters_flag = { + opinion = { + who = ROOT + modifier = opinion_poet_love_letters + years = 10 + } + } + pen_pal_flag = { + opinion = { + who = ROOT + modifier = opinion_poet_pen_pal + years = 10 + } + } + delighted_parent_flag = { + opinion = { + who = ROOT + modifier = opinion_poet_delighted_parent + years = 10 + } + } + } + } + } + + clr_character_flag = love_letters_flag + clr_character_flag = pen_pal_flag + clr_character_flag = delighted_parent_flag + clr_character_flag = poetic_flag + } +} + +character_event = { # Mental break-down + id = MNM.5211 + desc = EVTDESC_MNM_5211 + picture = GFX_evt_secret_ceremony + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + NOT = { trait = stressed } + } + + immediate = { + #picks a herb... + select_random_hermetic_ingredient_herb_effect = yes + if = { #if no herb was available... + limit = { has_selected_ingredient_1_trigger = no } + select_random_hermetic_ingredient_effect = yes + } + } + + option = { # It's a lot of pressure, but it's worth it + name = EVTOPTA_MNM_5211 + custom_tooltip = { text = EVTOPTA_MNM_5211_TT } + + add_trait = stressed + } + option = { # I'll use my potions + name = EVTOPTC_MNM_5211 + tooltip_info = yes + custom_tooltip = { text = ingredient_option_available_tt } + + custom_tooltip = { text = EVTOPTA_MNM_5211_TT } + + + random = { + chance = 50 + add_trait = stressed + } + + if = { + limit = { selected_ingredient_is_sleep_inducing_trigger = no } + random = { + chance = 50 + add_character_modifier = { + modifier = nauseous_from_potion + years = 1 + } + } + } + + destroy_selected_ingredient_1_effect = yes + + trigger = { + any_artifact = { + has_artifact_flag = ingredient + } + } + } + option = { # I should back down + name = EVTOPTB_MNM_5211 + custom_tooltip = { text = EVTOPTB_MNM_5211_TT } + hidden_effect = { change_variable = { which = debate_score value = -2 } } + } + + after = { + remove_selection_of_ingredients_effect = yes + } +} + +#Complain about lodgings / be homesick +character_event = { + id = MNM.5100 + desc = EVTDESC_MNM_5100 + picture = GFX_evt_secret_ceremony + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_5100 # My back! + add_character_modifier = { + modifier = bad_nights_sleep + months = 12 + } + opinion = { + who = event_target:debate_host + modifier = opinion_poor_accommodations + } + } + + option = { + name = EVTOPTB_MNM_5100 + + clear_delayed_event = { id = MNM.1984 } + clear_delayed_event = { id = MNM.1985 } + clr_character_flag = attending_grand_debate + } + + option = { + name = EVTOPTC_MNM_5100 # I can use these sleepless nights to get some more work done + trigger = { + trait = diligent + } + tooltip_info = diligent + + add_character_modifier = { + modifier = nocturnal_studies + months = 12 + } + } +} + +#Sabotage others +character_event = { + id = MNM.5101 + desc = EVTDESC_MNM_5101 + picture = GFX_evt_shady_meeting + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + society = { + random_society_member = { + limit = { + NOT = { character = ROOT } + has_character_flag = attending_grand_debate + learning = ROOT + } + save_event_target_as = sabotage_target + } + } + } + + option = { # Leave fake notes + name = EVTOPTA_MNM_5101 + custom_tooltip = { + text = EVTTOOLTIPA_MNM_5101 + } + event_target:sabotage_target = { + set_character_flag = got_fake_note_planted + character_event = { id = MNM.5102 } + } + } + + option = { # Destroy notes + name = EVTOPTB_MNM_5101 + custom_tooltip = { + text = EVTTOOLTIPB_MNM_5101 + } + event_target:sabotage_target = { + character_event = { id = MNM.5103 } + } + } + + option = { # Leave it be + name = EVTOPTC_MNM_5101 + if = { + limit = { + trait = deceitful + } + remove_trait = deceitful + break = yes + } + random = { + chance = 35 + add_trait_kind_effect = yes + } + } +} + +#Finding strange notes/Flying notes (read, or discard?) +character_event = { + id = MNM.5102 + desc = { + text = EVTDESCA_MNM_5102 + trigger = { + NOT = { has_character_flag = got_fake_note_planted } + } + } + desc = { + text = EVTDESCB_MNM_5102 + trigger = { + has_character_flag = got_fake_note_planted + } + } + picture = GFX_evt_gathering_of_minds + border = GFX_event_normal_frame_religion + + hide_from = yes + + is_triggered_only = yes + + option = { # Take the notes and use them + name = EVTOPTA_MNM_5102 + + custom_tooltip = { + text = EVTTOOLTIP_MNM_5102 + hidden_effect = { + if = { + limit = { + has_character_flag = got_fake_note_planted + } + set_character_flag = embarrassingly_misinformed + } + character_event = { id = MNM.5105 days = 5 } + } + } + } + + option = { # Disregard the notes / I trust in my own work + name = EVTOPTB_MNM_5102 + trigger = { + NOR = { + has_character_flag = got_fake_note_planted + intrigue = 18 + } + } + + prestige = 25 + } + + option = { # This is clearly made up nonsense + name = EVTOPTC_MNM_5102 + trigger = { + has_character_flag = got_fake_note_planted + intrigue = 18 + } + tooltip_info = intrigue + + prestige = 25 + } + + after = { + hidden_effect = { + if = { + limit = { + has_character_flag = got_fake_note_planted + } + FROM = { character_event = { id = MNM.5106 days = 5 } } + } + } + clr_character_flag = got_fake_note_planted + } +} + +#Someone sabotaged my notes +character_event = { + id = MNM.5103 + desc = EVTDESC_MNM_5103 + picture = GFX_evt_secret_ceremony + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { # An unfortunate accident + name = EVTOPTA_MNM_5103 + custom_tooltip = { + text = EVTTOOLTIP_MNM_5103 + hidden_effect = { + change_variable = { which = debate_score value = -2 } + } + } + + random = { + chance = 35 + add_trait_patient_effect = yes + } + } + + option = { # She/he did that on purpose + name = EVTOPTB_MNM_5103 + custom_tooltip = { + text = EVTTOOLTIP_MNM_5103 + hidden_effect = { + change_variable = { which = debate_score value = -2 } + } + } + tooltip = { add_rival = FROM } + hidden_effect = { FROM = { character_event = { id = MNM.5104 days = 5 } } } + } +} + +#Notify rival +character_event = { + id = MNM.5104 + desc = EVTDESC_MNM_5104 + picture = GFX_evt_secret_ceremony + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_5104 + add_rival = FROM + } +} + +character_event = { # Outcome of notes + id = MNM.5105 + desc = { + text = EVTDESCA_MNM_5015 + trigger = { + NOR = { + has_character_flag = embarrassingly_misinformed + has_character_flag = plagiarism_discovered + } + } + } + desc = { + text = EVTDESCB_MNM_5015 + trigger = { + has_character_flag = embarrassingly_misinformed + } + } + desc = { + text = EVTDESCC_MNM_5015 + trigger = { + has_character_flag = plagiarism_discovered + } + } + picture = GFX_evt_gathering_of_minds + border = GFX_event_normal_frame_religion + + hide_from = yes + is_triggered_only = yes + + immediate = { + if = { + limit = { + NOT = { has_character_flag = embarrassingly_misinformed } + } + random = { + chance = 15 + set_character_flag = plagiarism_discovered + } + } + } + + option = { + name = EVTOPTA_MNM_5105 + trigger = { + NOR = { + has_character_flag = embarrassingly_misinformed + has_character_flag = plagiarism_discovered + } + } + + prestige = 50 + custom_tooltip = { + text = EVTTOOLTIPA_MNM_5105 + hidden_effect = { + change_variable = { which = debate_score value = 2 } + } + } + } + + option = { + name = EVTOPTB_MNM_5105 + trigger = { + has_character_flag = embarrassingly_misinformed + } + + prestige = -25 + custom_tooltip = { + text = EVTTOOLTIPB_MNM_5105 + hidden_effect = { + change_variable = { which = debate_score value = -2 } + } + } + } + + option = { + name = EVTOPTC_MNM_5105 + trigger = { + has_character_flag = plagiarism_discovered + } + + prestige = -25 + custom_tooltip = { + text = EVTTOOLTIPB_MNM_5105 + hidden_effect = { + change_variable = { which = debate_score value = -2 } + } + } + } + + option = { + name = EVTOPTD_MNM_5105 + trigger = { + has_character_flag = plagiarism_discovered + diplomacy = 18 + } + } +} + +character_event = { # Outcome of planting notes + id = MNM.5106 + desc = { + text = EVTDESCA_MNM_5106 + trigger = { + FROM = { has_character_flag = embarrassingly_misinformed } + } + } + desc = { + text = EVTDESCB_MNM_5106 + trigger = { + NOT = { + FROM = { has_character_flag = embarrassingly_misinformed } + } + } + } + picture = GFX_evt_shady_meeting + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_5106 + trigger = { + FROM = { has_character_flag = embarrassingly_misinformed } + } + + add_character_modifier = { + modifier = mischievous_deeds + years = 2 + } + } + + option = { + name = EVTOPTB_MNM_5106 + trigger = { + NOT = { + FROM = { has_character_flag = embarrassingly_misinformed } + } + } + } + + after = { + clr_character_flag = embarrassingly_misinformed + clr_character_flag = plagiarism_discovered + } +} \ No newline at end of file diff --git a/MOD/Witcher/events/mnm_hermetics_events.txt b/MOD/Witcher/events/mnm_hermetics_events.txt new file mode 100644 index 000000000..061804180 --- /dev/null +++ b/MOD/Witcher/events/mnm_hermetics_events.txt @@ -0,0 +1,16978 @@ +########################################### +# # +# M&M Hermetics Society Events # +# # +# ID MNM.1000-MNM.1999 # +# # +########################################### + +#IDs: +#1000-1099 David +#1100-1199 Henrik +#1200-1399 Milla +#1400-1599 Mathilda +#1600-1799 Drikus +#1800-1899 Joel +#1900-1999 Emil + + +namespace = MNM + +###JOINING### + +#From on_character_ask_to_join_society +character_event = { + id = MNM.100 + hide_window = yes + is_triggered_only = yes + trigger = { + FROM = { leader = { society_member_of = hermetics } } + } + immediate = { + if = { #Find a non-prisoner member + limit = { FROM = { leader = { prisoner = yes } } } + FROM = { + any_society_member = { + limit = { + society_member_of = hermetics + society_rank == 4 + prisoner = no + } + character_event = { id = MNM.101 } + break = yes + } + any_society_member = { + limit = { + society_member_of = hermetics + society_rank == 3 + prisoner = no + } + character_event = { id = MNM.101 } + break = yes + } + any_society_member = { + limit = { + society_member_of = hermetics + society_rank == 2 + prisoner = no + } + character_event = { id = MNM.101 } + break = yes + } + any_society_member = { + limit = { + society_member_of = hermetics + society_rank == 1 + prisoner = no + } + character_event = { id = MNM.101 } + break = yes + } + } + #Everyone is somehow in prison so just use teh leader anyway + } + FROM = { leader = { character_event = { id = MNM.101 } } } + } +} + +#Ping event +character_event = { + id = MNM.101 + hide_window = yes + is_triggered_only = yes + immediate = { + FROM = { letter_event = { id = MNM.102 } } + } +} + +#Welcome letter +letter_event = { + id = MNM.102 + desc = EVTDESC_MNM_102 #Shamefully borrowing from the Pomandres + border = GFX_event_letter_frame_religion + + is_triggered_only = yes + + immediate = { set_character_flag = society_join_block } + + option = { + name = EVTOPTA_MNM_102 + + join_society = hermetics + + clr_character_flag = society_join_block + } +} + +#MISSIONS + +#Mission tombola +character_event = { + id = MNM.1000 + hide_window = yes + + is_triggered_only = yes + capable_only = yes + is_in_society = yes + + trigger = { + society_member_of = hermetics + has_any_quest = no + NOT = { has_character_modifier = quest_cooldown_timer } + NOT = { is_inaccessible_trigger = yes } + prisoner = no + society = { + any_society_member = { + NOT = { character = ROOT } + prisoner = no + is_within_diplo_range = ROOT + opinion = { who = ROOT value = 0 } + } + } + } + + immediate = { + #Picks out mission giver + random_list = { + 20 = { #International society member + society = { + any_society_member = { + limit = { + NOT = { character = ROOT } + prisoner = no + is_within_diplo_range = ROOT + opinion = { who = ROOT value = 0 } + } + save_event_target_as = hermetic_collaborator + } + } + } + 40 = { #Realm society member + trigger = { + society = { + any_society_member = { + NOT = { character = ROOT } + prisoner = no + is_within_diplo_range = ROOT + opinion = { who = ROOT value = 0 } + same_realm = ROOT + } + } + } + society = { + any_society_member = { + limit = { + NOT = { character = ROOT } + prisoner = no + is_within_diplo_range = ROOT + opinion = { who = ROOT value = 0 } + same_realm = ROOT + } + save_event_target_as = hermetic_collaborator + } + } + } + 40 = { #Apprentice + trigger = { + any_courtier_or_vassal = { has_minor_title = title_hermetics_apprentice prisoner = no } + society_member_of = hermetics + } + random_courtier_or_vassal = { + limit = { has_minor_title = title_hermetics_apprentice } + save_event_target_as = hermetic_collaborator + } + } + } + + + #Randomizes mission + random_list = { + + 20 = { #Find an apprentice + trigger = { + NOT = { any_courtier_or_vassal = { has_minor_title = title_hermetics_apprentice } } + ai = no + } + event_target:hermetic_collaborator = { character_event = { id = MNM.1404 days = 7 random = 7 } } + } + + 20 = { #Build a laboratory + trigger = { + NOT = { has_character_flag = building_laboratory } + NOT = { has_character_flag = built_laboratory } + OR = { + ai = no + society_rank == 4 + } + is_landed = yes + } + event_target:hermetic_collaborator = { character_event = { id = MNM.1120 days = 7 random = 7 } } + } + 15 = { #Find a rare scroll/book/tablet + trigger = { + is_landed = yes + } + event_target:hermetic_collaborator = { character_event = { id = MNM.1417 days = 7 random = 7 } } + } + 20 = { #Acquire/gather ingredients + trigger = { + is_landed = yes + NOT = { + any_artifact = { + has_artifact_flag = ingredient + } + } + event_target:hermetic_collaborator = { ai = yes } + } + event_target:hermetic_collaborator = { character_event = { id = MNM.1801 days = 7 random = 7 } } + } + 10 = { #Infiltrate lab + trigger = { + society = { + any_society_member = { + is_within_diplo_range = ROOT + NOR = { + character = ROOT + character = event_target:hermetic_collaborator + reverse_opinion = { who = event_target:hermetic_collaborator value = 20 } + reverse_opinion = { who = ROOT value = 20 } + has_character_flag = infiltration_rival + has_character_flag = infiltration_mutual_dislike + has_character_flag = infiltration_rich + } + } + } + } + event_target:hermetic_collaborator = { character_event = { id = MNM.1430 days = 7 random = 7 } } + } + 10 = { #Observe stars + event_target:hermetic_collaborator = { character_event = { id = MNM.1828 days = 7 random = 7 } } + } + + 105 = { # AI bypasses missions at times + modifier = { + factor = 0 + ai = no + } + random_list = { + 70 = { + modifier = { + factor = 0.9 + society_influence >= 30 + } + modifier = { + factor = 0.9 + society_influence >= 40 + } + modifier = { + factor = 0.8 + society_influence >= 50 + } + modifier = { + factor = 0.7 + society_influence >= 70 + } + modifier = { + factor = 0.6 + society_influence >= 80 + } + modifier = { + factor = 0.5 + society_influence >= 90 + } + add_mission_succeed_influence_effect = yes + } + 30 = { + add_mission_fail_influence_effect = yes + } + } + } + + 175 = { + modifier = { + factor = 0 + ai = no + } + #Do nothing for AI + } + } + } +} + +#Mission: Building a Laboratory +#Flags: +#Temporary: +#building_laboratory (cleared at end) +#decided_on_glass (cleared at end) +#decided_on_crucibles (cleared at end) +#decided_on_tools (cleared at end) +#decided_on_books (cleared at end) +#Not Temporary: +#built_laboratory (not cleared -> set at end, marks this as done for this character) +#hidden_lab (not cleared -> to be used to weight stealing of secrets) +#very_hidden_lab (not cleared -> to be used to weight stealing of secrets) +character_event = { + id = MNM.1100 + desc = EVTDESC_MNM_1100 + picture = GFX_evt_castle_construction + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1100 + hidden_tooltip = { + character_event = { id = MNM.1101 days = 7 } + set_variable = { which = laboratory_level value = 1 } + } + } + option = { + name = EVTOPTB_MNM_1100 + clr_character_flag = building_laboratory + wealth = 50 + } +} + +#Where should the Laboratory be built? +character_event = { + id = MNM.1101 + desc = EVTDESC_MNM_1101 + picture = GFX_evt_castle_construction + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + trigger = { + has_quest = quest_hermetics_build_laboratory + } + + option = { + name = EVTOPTA_MNM_1101 #In my Castle, hidden away + custom_tooltip = { + text = hidden_lab_tooltip + set_character_flag = hidden_lab + } + hidden_effect = { + change_variable = { which = laboratory_level value = 2 } + character_event = { id = MNM.1102 days = 30 } + } + } + option = { + name = EVTOPTB_MNM_1101 #In an accessible place + custom_tooltip = { + text = accessible_lab_tooltip + } + hidden_effect = { + change_variable = { which = laboratory_level value = 5 } + character_event = { id = MNM.1102 days = 30 } + } + } + option = { + name = EVTOPTC_MNM_1101 #On an island or other very remote place + trigger = { + OR = { + intrigue = 15 + trait = paranoid + } + capital_scope = { port = yes } + } + custom_tooltip = { + text = very_hidden_lab_tooltip + set_character_flag = very_hidden_lab + } + hidden_effect = { + change_variable = { which = laboratory_level value = 3 } + character_event = { id = MNM.1102 days = 30 } + } + } + option = { + name = EVTOPTD_MNM_1101 #On an island or other very remote place + trigger = { + OR = { + intrigue = 15 + trait = paranoid + } + capital_scope = { + port = no + } + } + custom_tooltip = { + text = very_hidden_lab_tooltip + set_character_flag = very_hidden_lab + } + hidden_effect = { + change_variable = { which = laboratory_level value = 3 } + character_event = { id = MNM.1102 days = 30 } + } + } +} + +#What kind of laboratory should we build? +character_event = { + id = MNM.1102 + desc = EVTDESC_MNM_1102 + picture = GFX_evt_weaponsmith + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1102 # + custom_tooltip = { + text = cheap_laboratory_setup + } + hidden_effect = { + change_variable = { which = laboratory_level value = 1 } + set_variable = { which = lab_ambition value = 1 } + random_list = { + 25 = { + trigger = { NOT = { has_character_flag = decided_on_glass } } + character_event = { id = MNM.1103 days = 60 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_crucibles } } + character_event = { id = MNM.1104 days = 60 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_tools } } + character_event = { id = MNM.1105 days = 60 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_books } } + character_event = { id = MNM.1106 days = 60 } + } + } + random_list = { #Accidents + 25 = { } #Nothing Happens + 25 = { character_event = { id = MNM.1113 days = 30 } } + 25 = { character_event = { id = MNM.1114 days = 30 } } + 25 = { character_event = { id = MNM.1115 days = 30 } } + } + } + } + option = { + name = EVTOPTB_MNM_1102 # + wealth = -20 + custom_tooltip = { + text = efficient_laboratory_setup + } + hidden_effect = { + change_variable = { which = laboratory_level value = 3 } + set_variable = { which = lab_ambition value = 2 } + random_list = { + 25 = { + trigger = { NOT = { has_character_flag = decided_on_glass } } + character_event = { id = MNM.1103 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_crucibles } } + character_event = { id = MNM.1104 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_tools } } + character_event = { id = MNM.1105 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_books } } + character_event = { id = MNM.1106 days = 30 } + } + } + random_list = { #Accidents + 25 = { } #Nothing Happens + 25 = { character_event = { id = MNM.1113 days = 45 } } + 25 = { character_event = { id = MNM.1114 days = 45 } } + 25 = { character_event = { id = MNM.1115 days = 45 } } + } + } + } + option = { + name = EVTOPTC_MNM_1102 #State of the Art. + trigger = { + OR = { + learning = 15 + AND = { #Both master and apprentice have acceptable learning + learning = 12 + any_courtier_or_vassal = { + has_minor_title = title_hermetics_apprentice + learning = 12 + } + } + } + } + wealth = -35 + custom_tooltip = { + text = large_laboratory_setup + } + hidden_effect = { + change_variable = { which = laboratory_level value = 5 } + set_variable = { which = lab_ambition value = 3 } + random_list = { + 25 = { + trigger = { NOT = { has_character_flag = decided_on_glass } } + character_event = { id = MNM.1103 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_crucibles } } + character_event = { id = MNM.1104 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_tools } } + character_event = { id = MNM.1105 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_books } } + character_event = { id = MNM.1106 days = 30 } + } + } + random_list = { #Accidents + 25 = { } #Nothing Happens + 25 = { character_event = { id = MNM.1113 days = 45 } } + 25 = { character_event = { id = MNM.1114 days = 45 } } + 25 = { character_event = { id = MNM.1115 days = 45 } } + } + } + } + option = { + name = EVTOPTD_MNM_1102 #Experimental setup + trigger = { + OR = { + learning = 25 + AND = { #Both have good learning + learning = 15 + any_courtier_or_vassal = { + has_minor_title = title_hermetics_apprentice + learning = 15 + } + } + } + } + wealth = -50 + custom_tooltip = { + text = extravagant_laboratory_setup + } + hidden_effect = { + change_variable = { which = laboratory_level value = 8 } + set_variable = { which = lab_ambition value = 4 } + random_list = { + 25 = { + trigger = { NOT = { has_character_flag = decided_on_glass } } + character_event = { id = MNM.1103 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_crucibles } } + character_event = { id = MNM.1104 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_tools } } + character_event = { id = MNM.1105 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_books } } + character_event = { id = MNM.1106 days = 30 } + } + } + random_list = { #Accidents + 25 = { } #Nothing Happens + 25 = { character_event = { id = MNM.1113 days = 45 } } + 25 = { character_event = { id = MNM.1114 days = 45 } } + 25 = { character_event = { id = MNM.1115 days = 45 } } + } + } + } +} + +#What kind of equipment do we need? +#Variant 1 - Flasks, Alembics, test tubes, etc +character_event = { + id = MNM.1103 + desc = EVTDESC_MNM_1103 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + hidden_effect = { + set_character_flag = decided_on_glass + } + } + + option = { + name = EVTOPTA_MNM_1103 # + custom_tooltip = { + text = non_fancy_laboratory_glass_tooltip + } + hidden_effect = { + change_variable = { + which = laboratory_level value = 1 + } + change_variable = { which = lab_ambition value = -1 } + if = { + limit = { + check_variable = { + which = lab_ambition + value = 1 + } + } + random_list = { + 25 = { + trigger = { NOT = { has_character_flag = decided_on_glass } } + character_event = { id = MNM.1103 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_crucibles } } + character_event = { id = MNM.1104 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_tools } } + character_event = { id = MNM.1105 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_books } } + character_event = { id = MNM.1106 days = 30 } + } + } + } + if = { + limit = { + NOT = { + check_variable = { + which = lab_ambition + value = 1 + } + } + } + character_event = { id = MNM.1107 days = 60 } + } + } + } + option = { + name = EVTOPTB_MNM_1103 # + wealth = -20 + custom_tooltip = { + text = fancy_laboratory_glass_tooltip + } + hidden_effect = { + change_variable = { which = laboratory_level value = 2 } + change_variable = { which = lab_ambition value = -1 } + if = { + limit = { + check_variable = { + which = lab_ambition + value = 1 + } + } + random_list = { + 25 = { + trigger = { NOT = { has_character_flag = decided_on_glass } } + character_event = { id = MNM.1103 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_crucibles } } + character_event = { id = MNM.1104 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_tools } } + character_event = { id = MNM.1105 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_books } } + character_event = { id = MNM.1106 days = 30 } + } + } + } + if = { + limit = { + NOT = { + check_variable = { + which = lab_ambition + value = 1 + } + } + } + character_event = { id = MNM.1107 days = 60 } + } + } + } +} + +#Variant 2 - Crucibles +character_event = { + id = MNM.1104 + desc = EVTDESC_MNM_1104 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + hidden_effect = { + set_character_flag = decided_on_crucibles + } + } + + option = { + name = EVTOPTA_MNM_1104 # + custom_tooltip = { + text = non_fancy_laboratory_crucibles_tooltip + } + hidden_effect = { + change_variable = { which = laboratory_level value = 1 } + change_variable = { which = lab_ambition value = -1 } + if = { + limit = { + check_variable = { + which = lab_ambition + value = 1 + } + } + random_list = { + 25 = { + trigger = { NOT = { has_character_flag = decided_on_glass } } + character_event = { id = MNM.1103 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_crucibles } } + character_event = { id = MNM.1104 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_tools } } + character_event = { id = MNM.1105 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_books } } + character_event = { id = MNM.1106 days = 30 } + } + } + } + if = { + limit = { + NOT = { + check_variable = { + which = lab_ambition + value = 1 + } + } + } + character_event = { id = MNM.1107 days = 60 } + } + } + } + option = { + name = EVTOPTB_MNM_1104 # + wealth = -20 + custom_tooltip = { + text = fancy_laboratory_crucibles_tooltip + } + hidden_effect = { + change_variable = { which = laboratory_level value = 2 } + change_variable = { which = lab_ambition value = -1 } + if = { + limit = { + check_variable = { + which = lab_ambition + value = 1 + } + } + random_list = { + 25 = { + trigger = { NOT = { has_character_flag = decided_on_glass } } + character_event = { id = MNM.1103 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_crucibles } } + character_event = { id = MNM.1104 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_tools } } + character_event = { id = MNM.1105 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_books } } + character_event = { id = MNM.1106 days = 30 } + } + } + } + if = { + limit = { + NOT = { + check_variable = { + which = lab_ambition + value = 1 + } + } + } + character_event = { id = MNM.1107 days = 60 } + } + } + } +} + +#Variant 3 - Iron Tools +character_event = { + id = MNM.1105 + desc = EVTDESC_MNM_1105 + picture = GFX_evt_weaponsmith + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + hidden_effect = { + set_character_flag = decided_on_tools + } + } + + option = { + name = EVTOPTA_MNM_1105 # + custom_tooltip = { + text = non_fancy_laboratory_tools_tooltip + } + hidden_effect = { + change_variable = { which = laboratory_level value = 1 } + change_variable = { which = lab_ambition value = -1 } + if = { + limit = { + check_variable = { + which = lab_ambition + value = 1 + } + } + random_list = { + 25 = { + trigger = { NOT = { has_character_flag = decided_on_glass } } + character_event = { id = MNM.1103 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_crucibles } } + character_event = { id = MNM.1104 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_tools } } + character_event = { id = MNM.1105 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_books } } + character_event = { id = MNM.1106 days = 30 } + } + } + } + if = { + limit = { + NOT = { + check_variable = { + which = lab_ambition + value = 1 + } + } + } + character_event = { id = MNM.1107 days = 60 } + } + } + } + option = { + name = EVTOPTB_MNM_1105 # + wealth = -20 + custom_tooltip = { + text = fancy_laboratory_tools_tooltip + } + hidden_effect = { + change_variable = { which = laboratory_level value = 2 } + change_variable = { which = lab_ambition value = -1 } + if = { + limit = { + check_variable = { + which = lab_ambition + value = 1 + } + } + random_list = { + 25 = { + trigger = { NOT = { has_character_flag = decided_on_glass } } + character_event = { id = MNM.1103 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_crucibles } } + character_event = { id = MNM.1104 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_tools } } + character_event = { id = MNM.1105 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_books } } + character_event = { id = MNM.1106 days = 30 } + } + } + } + if = { + limit = { + NOT = { + check_variable = { + which = lab_ambition + value = 1 + } + } + } + character_event = { id = MNM.1107 days = 60 } + } + } + } +} + +#Variant 4 - Books +#Herbals, Lapidarii, etc +character_event = { + id = MNM.1106 + desc = EVTDESC_MNM_1106 + picture = GFX_evt_book_carolingian_script + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + hidden_effect = { + set_character_flag = decided_on_books + } + } + + option = { + name = EVTOPTA_MNM_1106 # + custom_tooltip = { + text = non_fancy_laboratory_books_tooltip + } + hidden_effect = { + change_variable = { which = laboratory_level value = 1 } + change_variable = { which = lab_ambition value = -1 } + if = { + limit = { + check_variable = { + which = lab_ambition + value = 1 + } + } + random_list = { + 25 = { + trigger = { NOT = { has_character_flag = decided_on_glass } } + character_event = { id = MNM.1103 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_crucibles } } + character_event = { id = MNM.1104 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_tools } } + character_event = { id = MNM.1105 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_books } } + character_event = { id = MNM.1106 days = 30 } + } + } + } + if = { + limit = { + NOT = { + check_variable = { + which = lab_ambition + value = 1 + } + } + } + character_event = { id = MNM.1107 days = 60 } + } + } + } + option = { + name = EVTOPTB_MNM_1106 # + wealth = -20 + custom_tooltip = { + text = fancy_laboratory_books_tooltip + } + hidden_effect = { + change_variable = { which = laboratory_level value = 2 } + change_variable = { which = lab_ambition value = -1 } + if = { + limit = { + check_variable = { + which = lab_ambition + value = 1 + } + } + random_list = { + 25 = { + trigger = { NOT = { has_character_flag = decided_on_glass } } + character_event = { id = MNM.1103 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_crucibles } } + character_event = { id = MNM.1104 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_tools } } + character_event = { id = MNM.1105 days = 30 } + } + 25 = { + trigger = { NOT = { has_character_flag = decided_on_books } } + character_event = { id = MNM.1106 days = 30 } + } + } + } + if = { + limit = { + NOT = { + check_variable = { + which = lab_ambition + value = 1 + } + } + } + character_event = { id = MNM.1107 days = 60 } + } + } + } +} + +#Work is done +character_event = { + id = MNM.1107 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + hide_window = yes + is_triggered_only = yes + + immediate = { + hidden_effect = { + set_character_flag = built_laboratory + clr_character_flag = building_laboratory + clr_character_flag = decided_on_glass + clr_character_flag = decided_on_crucibles + clr_character_flag = decided_on_tools + clr_character_flag = decided_on_books + if = { + limit = { + NOT = { + check_variable = { + which = laboratory_level + value = 6 + } + } + } + character_event = { id = MNM.1108 } # Cheap Laboratory + } + if = { + limit = { + check_variable = { + which = laboratory_level + value = 6 + } + NOT = { + check_variable = { + which = laboratory_level + value = 12 + } + } + } + character_event = { id = MNM.1109 } # Normal Laboratory + } + if = { + limit = { + check_variable = { + which = laboratory_level + value = 12 + } + NOT = { + check_variable = { + which = laboratory_level + value = 18 + } + } + } + character_event = { id = MNM.1110 } # Good Laboratory + } + if = { + limit = { + check_variable = { + which = laboratory_level + value = 18 + } + NOT = { + check_variable = { + which = laboratory_level + value = 23 + } + } + } + narrative_event = { id = MNM.1111 } # Great Laboratory + } + if = { + limit = { + check_variable = { + which = laboratory_level + value = 23 + } + } + narrative_event = { id = MNM.1112 } # Best Laboratory + } + } + } +} + +#Finished Cheap Lab +character_event = { + id = MNM.1108 + desc = EVTDESC_MNM_1108 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1108 # + add_character_modifier = { + name = "cheap_laboratory" + duration = -1 + } + hidden_effect = { + character_event = { id = MNM.1122 } + } + } +} + +#Finished Normal Lab +character_event = { + id = MNM.1109 + desc = EVTDESC_MNM_1109 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1109 # + economy_techpoints = 5 + add_character_modifier = { + name = "normal_laboratory" + duration = -1 + } + hidden_effect = { + character_event = { id = MNM.1122 } + } + } +} + +#Finished Good Lab +character_event = { + id = MNM.1110 + desc = EVTDESC_MNM_1110 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1110 # + economy_techpoints = 15 + add_character_modifier = { + name = "good_laboratory" + duration = -1 + } + hidden_effect = { + character_event = { id = MNM.1122 } + } + } +} + +#Finished Great Lab +narrative_event = { + id = MNM.1111 + title = EVTNAME_MNM_1111 + desc = EVTDESC_MNM_1111 + picture = GFX_evt_experiment + border = GFX_event_narrative_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1111 # + economy_techpoints = 30 + add_character_modifier = { + name = "great_laboratory" + duration = -1 + } + hidden_effect = { + character_event = { id = MNM.1122 } + } + } +} + +#Finished Best Lab +narrative_event = { + id = MNM.1112 + title = EVTNAME_MNM_1112 + desc = EVTDESC_MNM_1112 + picture = GFX_evt_experiment + border = GFX_event_narrative_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1112 # + economy_techpoints = 50 + add_character_modifier = { + name = "best_laboratory" + duration = -1 + } + hidden_effect = { + character_event = { id = MNM.1122 } + } + } +} + +#Laboratory Accidents + +character_event = { + id = MNM.1113 + desc = EVTDESC_MNM_1113 + picture = GFX_evt_burning_house_arabic + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + hidden_effect = { + any_courtier = { + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_dislikes_this_score = yes + } + save_event_target_as = sacrifice_for_science + } + } + } + + option = { + name = EVTOPTA_MNM_1113 # + hidden_effect = { + change_variable = { which = laboratory_level value = -2 } + } + if = { + limit = { has_character_flag = hidden_lab } #Lab built in castle + event_target:sacrifice_for_science = { + add_maimed_trait_effect = yes + if = { + limit = { + is_close_relative = ROOT + NOT = { trait = cruel } + } + random_list = { + 80 = { } + 20 = { ROOT = { add_trait_depressed_effect = yes } } + } + } + } + } + } + option = { + name = EVTOPTB_MNM_1113 # + custom_tooltip = { + text = efforts_to_improve_lab_security_tooltip + } + hidden_effect = { + change_variable = { which = laboratory_level value = -1 } + } + wealth = -10 + if = { + limit = { has_character_flag = hidden_lab } #Lab built in castle + event_target:sacrifice_for_science = { + add_maimed_trait_effect = yes + if = { + limit = { + is_close_relative = ROOT + NOT = { trait = cruel } + } + random_list = { + 80 = { } + 20 = { ROOT = { add_trait_depressed_effect = yes } } + } + } + } + } + } + + after = { + #destroy ingredients + if = { + limit = { + any_artifact = { + has_artifact_flag = ingredient + } + } + destroy_random_ingredients_effect = yes + } + } +} + +# Locals are gossiping +character_event = { + id = MNM.1114 + desc = EVTDESC_MNM_1114 + picture = GFX_evt_riots_byzantine + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1114 # + custom_tooltip = { + text = accomodate_gossipers_tooltip + } + hidden_effect = { + change_variable = { which = laboratory_level value = -2 } + } + + } + option = { + name = EVTOPTB_MNM_1114 # + prestige = -50 + } +} + +#Rotting Ingredients +character_event = { + id = MNM.1115 + desc = EVTDESC_MNM_1115 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1115 # + hidden_effect = { + change_variable = { which = laboratory_level value = -1 } + } + } + option = { + name = EVTOPTB_MNM_1115 # + wealth = -25 + hidden_effect = { + change_variable = { which = laboratory_level value = 1 } + } + } + + after = { + #destroy ingredients + if = { + limit = { + OR = { + has_a_herb_ingredient_trigger = yes + has_an_animal_part_ingredient_trigger = yes + } + } + custom_tooltip = { + text = random_ingredients_are_destroyed_tt + destroy_random_herb_or_animal_part_ingredients_effect = yes + } + } + } +} + +#Mission: Build a Laboratory +character_event = { + id = MNM.1120 + hide_window = yes + is_triggered_only = yes + immediate = { + FROM = { + society_quest_event = { id = MNM.1121 days = 7 random = 7 } + } + } +} + +#Letter from quest giver +society_quest_event = { + id = MNM.1121 + + desc = { + text = EVTDESC_MNM_1121 + trigger = { + event_target:hermetic_collaborator = { + NOT = { has_minor_title = title_hermetics_apprentice } + } + } + } + desc = { + text = EVTDESC_MNM_1121_apprentice + trigger = { + event_target:hermetic_collaborator = { + has_minor_title = title_hermetics_apprentice + } + } + } + + is_triggered_only = yes + + option = { + name = ACCEPT + ai_chance = { factor = 100 } + set_quest = quest_hermetics_build_laboratory + } + + option = { + name = DECLINE + ai_chance = { factor = 0 } + custom_tooltip = { text = decline_quest_tooltip } + add_character_modifier = { + name = quest_cooldown_timer + hidden = yes + days = 1000 + } + } +} + +#Quest Completed +character_event = { + id = MNM.1122 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + desc = { + text = EVTDESC_MNM_1122_normal + trigger = { + FROM = { + NOT = { has_character_modifier = good_laboratory } + NOT = { has_character_modifier = great_laboratory } + NOT = { has_character_modifier = best_laboratory } + } + } + } + + desc = { + text = EVTDESC_MNM_1122_rich + trigger = { + FROM = { + OR = { + has_character_modifier = good_laboratory + has_character_modifier = great_laboratory + has_character_modifier = best_laboratory + } + } + } + } + + trigger = { has_quest = quest_hermetics_build_laboratory } + + option = { + name = EVTOPTA_MNM_1122 + + clr_quest = quest_hermetics_find_apprentice + sound_effect = hermetic_society_perform_experiment + + if = { + limit = { + FROM = { + NOT = { has_character_modifier = good_laboratory } + NOT = { has_character_modifier = great_laboratory } + NOT = { has_character_modifier = best_laboratory } + } + } + add_society_currency_minor_effect = yes + } + if = { + limit = { + FROM = { + OR = { + has_character_modifier = good_laboratory + has_character_modifier = great_laboratory + } + } + } + add_society_currency_medium_effect = yes + } + if = { + limit = { FROM = { has_character_modifier = best_laboratory } } + add_society_currency_major_effect = yes + } + } +} + + +#Mission: Find an apprentice +character_event = { + id = MNM.1404 + hide_window = yes + is_triggered_only = yes + immediate = { FROM = { society_quest_event = { id = MNM.1405 days = 7 random = 7 } } } +} + +society_quest_event = { + id = MNM.1405 + desc = EVTDESC_MNM_1405 + + is_triggered_only = yes + + option = { + name = ACCEPT + + set_quest = quest_hermetics_find_apprentice + + hidden_effect = { character_event = { id = MNM.1406 days = 150 random = 50 } } + } + + option = { + name = DECLINE + custom_tooltip = { text = decline_quest_tooltip } + + add_character_modifier = { + name = quest_cooldown_timer + hidden = yes + days = 1000 + } + + ai_chance = { factor = 0 } + } +} + +#Still no apprentice? Make one +character_event = { + id = MNM.1406 + hide_window = yes + is_triggered_only = yes + trigger = { has_quest = quest_hermetics_find_apprentice } + immediate = { + random_list = { + 50 = { + modifier = { + is_female = no + factor = 1.5 + } + create_random_priest = { + random_traits = yes + dynasty = none + female = yes + age = 28 + } + new_character = { + save_event_target_as = apprentice_candidate + } + } + 50 = { + modifier = { + is_female = yes + factor = 1.5 + } + create_random_priest = { + random_traits = yes + dynasty = none + female = no + age = 28 + } + new_character = { + save_event_target_as = apprentice_candidate + } + } + } + + event_target:apprentice_candidate = { + remove_trait = slow + remove_trait = imbecile + remove_trait = inbred + remove_trait = dull + remove_trait = zealous + remove_trait = cynical + remove_trait = genius + remove_trait = quick + remove_trait = shrewd + remove_trait = slothful + + #Add great trait + random_list = { + 10 = { add_trait = genius } + 10 = { add_trait = quick } + 10 = { add_trait = shrewd } + 10 = { trigger = { NOT = { religion_group = muslim } } add_trait = scholar } + 10 = { trigger = { religion_group = muslim } add_trait = faqih } + 10 = { add_trait = mystic } + 10 = { add_trait = gardener } + 10 = { trigger = { has_dlc = Reapers} add_trait = physician } + 40 = { } #Nothing + } + + #Add good trait + random_list = { + 10 = { add_trait = erudite } + 10 = { add_trait = diligent } + 10 = { + add_trait = patient + remove_trait = wroth + } + 10 = { + add_trait = chaste + remove_trait = lustful + } + 30 = { + add_trait = ambitious + remove_trait = content + } + } + + while = { + limit = { NOT = { learning = 10 } } + change_learning = 1 + } + + character_event = { id = MNM.1407 } + } + } +} + +character_event = { + id = MNM.1407 + hide_window = yes + is_triggered_only = yes + immediate = { FROM = { character_event = { id = MNM.1408 } } } +} + +#What about this servant? +character_event = { + id = MNM.1408 + desc = EVTDESC_MNM_1408 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + + } + + option = { + name = EVTOPTA_MNM_1408 + + FROM = { give_minor_title = title_hermetics_apprentice } + + clr_quest = quest_hermetics_find_apprentice + sound_effect = hermetic_society_perform_experiment + add_society_currency_minor_effect = yes + } + + option = { + name = EVTOPTB_MNM_1408 + custom_tooltip = { text = EVTOPTB_MNM_1408_TT } + } +} + +#You completed the quest by assigning someone the title +character_event = { + id = MNM.1409 + desc = EVTDESC_MNM_1409 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1409 + + clr_quest = quest_hermetics_find_apprentice + sound_effect = hermetic_society_perform_experiment + + if = { + limit = { FROM = { NOT = { learning = 12 } } } + add_society_currency_minor_effect = yes + } + if = { + limit = { FROM = { learning = 12 } } + add_society_currency_medium_effect = yes + } + } +} + + +#Mission: Find rare scroll/tome/tablet +character_event = { + id = MNM.1417 + hide_window = yes + is_triggered_only = yes + + trigger = { + is_alive = yes + NOT = { is_dying = yes } + } + + immediate = { FROM = { character_event = { id = MNM.1418 } } } +} + + +society_quest_event = { + id = MNM.1418 + desc = EVTDESC_MNM_1418 + + is_triggered_only = yes + + trigger = { + is_alive = yes + } + + option = { + name = ACCEPT + + FROM = { + set_quest_target = { + id = quest_hermetics_find_text + holder = ROOT + } + } + + hidden_effect = { FROM = { character_event = { id = MNM.1419 days = 5 } } } + } + + option = { + name = DECLINE + custom_tooltip = { text = decline_quest_tooltip } + + add_character_modifier = { + name = quest_cooldown_timer + hidden = yes + days = 1000 + } + + ai_chance = { factor = 0 } + } +} + +#Ping event +character_event = { + id = MNM.1419 + hide_window = yes + is_triggered_only = yes + immediate = { FROM = { letter_event = { id = MNM.1420 } } } +} + +#Where should we go looking? +letter_event = { + id = MNM.1420 + border = GFX_event_letter_frame_religion + + is_triggered_only = yes + + trigger = { has_quest = quest_hermetics_find_text } + + desc = { + trigger = { + OR = { + NOT = { FROM = { has_character_flag = alexandria } } + has_artifact = emerald_tablet + } + } + text = EVTDESC_MNM_1420_A + } + desc = { + trigger = { + FROM = { has_character_flag = alexandria } + NOT = { has_artifact = emerald_tablet } + } + text = EVTDESC_MNM_1420_B + } + + immediate = { + set_character_flag = do_not_disturb + + FROM = { #Chance of having Alexandria as an option + random = { + chance = 10 + modifier = { + learning = 12 + factor = 1.2 + } + modifier = { + learning = 14 + factor = 1.2 + } + modifier = { + learning = 16 + factor = 1.2 + } + modifier = { + learning = 18 + factor = 1.2 + } + modifier = { + learning = 20 + factor = 1.2 + } + set_character_flag = alexandria + } + } + + #Locations + random_independent_ruler = { + limit = { + is_within_diplo_range = ROOT + NOT = { same_realm = ROOT } + any_realm_province = { is_capital = no } + } + random_realm_province = { + limit = { is_capital = no } + save_event_target_as = ruin_site + owner = { top_liege = { save_event_target_as = ruin_site_top_liege } } + } + } + if = { + limit = { ai = no } + random_independent_ruler = { + limit = { + is_within_diplo_range = ROOT + NOT = { same_realm = ROOT } + any_realm_title = { + tier = DUKE + OR = { + title = d_alexandria + title = d_damietta + title = d_cairo + title = d_aswan + title = d_nobatia + region = world_middle_east_jerusalem + region = world_europe_south_east + region = world_asia_minor + } + } + } + random_realm_province = { + save_event_target_as = ruin_site + owner = { top_liege = { save_event_target_as = ruin_site_top_liege } } + } + } + } + random_realm_province = { + save_event_target_as = temple_site + } + random_realm_province = { + limit = { + any_province_holding = { holding_type = temple } + is_capital = no + } + save_event_target_as = temple_site + } + } + + #Go to Alexandria! + option = { + trigger = { + FROM = { has_character_flag = alexandria } + NOT = { has_artifact = emerald_tablet } + OR = { + ai = no + scaled_wealth = 1 + wealth = 200 + } + } + name = EVTOPTA_MNM_1420 + custom_tooltip = { text = EVTOPTA_MNM_1420_TT } + + scaled_wealth = { value = -1 min = -200 } + + random_list = { + 20 = { + modifier = { learning = 8 factor = 1.2 } + modifier = { learning = 11 factor = 1.2 } + modifier = { learning = 14 factor = 1.2 } + modifier = { learning = 17 factor = 1.2 } + modifier = { learning = 20 factor = 1.2 } + modifier = { FROM = { learning = 8 } factor = 1.2 } + modifier = { FROM = { learning = 11 } factor = 1.2 } + modifier = { FROM = { learning = 14 } factor = 1.2 } + modifier = { FROM = { learning = 17 } factor = 1.2 } + modifier = { FROM = { learning = 20 } factor = 1.2 } + custom_tooltip = { + text = EVTOPTX_MNM_1420_SUCCESS + FROM = { + set_character_flag = A_SUCCESS + character_event = { id = MNM.1421 days = 300 random = 150 } + } + } + tooltip = { add_society_currency_massive_effect = yes } + } + 80 = { + tooltip = { clr_quest = { id = quest_hermetics_find_text failure = yes } } + hidden_effect = { + FROM = { + set_character_flag = A_FAIL + character_event = { id = MNM.1421 days = 300 random = 150 } + } + } + } + } + } + + #Search foreign ruin + option = { + trigger = { + OR = { + ai = no + scaled_wealth = 0.5 + wealth = 100 + } + } + name = EVTOPTB_MNM_1420 + custom_tooltip = { text = EVTOPTB_MNM_1420_TT } + + scaled_wealth = { value = -0.5 min = -100 } + + random_list = { + 35 = { + modifier = { learning = 8 factor = 1.2 } + modifier = { learning = 11 factor = 1.2 } + modifier = { learning = 14 factor = 1.2 } + modifier = { learning = 17 factor = 1.2 } + modifier = { learning = 20 factor = 1.2 } + modifier = { FROM = { learning = 8 } factor = 1.2 } + modifier = { FROM = { learning = 11 } factor = 1.2 } + modifier = { FROM = { learning = 14 } factor = 1.2 } + modifier = { FROM = { learning = 17 } factor = 1.2 } + modifier = { FROM = { learning = 20 } factor = 1.2 } + custom_tooltip = { + text = EVTOPTX_MNM_1420_SUCCESS + FROM = { + set_character_flag = B_SUCCESS + character_event = { id = MNM.1421 days = 150 random = 75 } + } + } + tooltip = { add_society_currency_major_effect = yes } + } + 65 = { + tooltip = { clr_quest = { id = quest_hermetics_find_text failure = yes } } + hidden_effect = { + FROM = { + set_character_flag = B_FAIL + character_event = { id = MNM.1421 days = 150 random = 75 } + } + } + } + } + } + + #Search local ruin + option = { + trigger = { + OR = { + ai = no + scaled_wealth = 0.2 + wealth = 40 + } + } + name = EVTOPTC_MNM_1420 + custom_tooltip = { text = EVTOPTC_MNM_1420_TT } + + scaled_wealth = { value = -0.2 min = -40 } + + random_list = { + 55 = { + modifier = { learning = 8 factor = 1.2 } + modifier = { learning = 11 factor = 1.2 } + modifier = { learning = 14 factor = 1.2 } + modifier = { learning = 17 factor = 1.2 } + modifier = { learning = 20 factor = 1.2 } + modifier = { FROM = { learning = 8 } factor = 1.2 } + modifier = { FROM = { learning = 11 } factor = 1.2 } + modifier = { FROM = { learning = 14 } factor = 1.2 } + modifier = { FROM = { learning = 17 } factor = 1.2 } + modifier = { FROM = { learning = 20 } factor = 1.2 } + custom_tooltip = { + text = EVTOPTX_MNM_1420_SUCCESS + FROM = { + set_character_flag = C_SUCCESS + character_event = { id = MNM.1421 days = 100 random = 50 } + } + } + tooltip = { add_society_currency_medium_effect = yes } + } + 45 = { + tooltip = { clr_quest = { id = quest_hermetics_find_text failure = yes } } + hidden_effect = { + FROM = { + set_character_flag = C_FAIL + character_event = { id = MNM.1421 days = 100 random = 50 } + } + } + } + } + } + + #Local antiquarian + option = { + name = EVTOPTD_MNM_1420 + custom_tooltip = { text = EVTOPTD_MNM_1420_TT } + + scaled_wealth = { value = -0.05 min = -10 } + + random_list = { + 70 = { + modifier = { learning = 8 factor = 1.2 } + modifier = { learning = 11 factor = 1.2 } + modifier = { learning = 14 factor = 1.2 } + modifier = { learning = 17 factor = 1.2 } + modifier = { learning = 20 factor = 1.2 } + modifier = { FROM = { learning = 8 } factor = 1.2 } + modifier = { FROM = { learning = 11 } factor = 1.2 } + modifier = { FROM = { learning = 14 } factor = 1.2 } + modifier = { FROM = { learning = 17 } factor = 1.2 } + modifier = { FROM = { learning = 20 } factor = 1.2 } + custom_tooltip = { + text = EVTOPTX_MNM_1420_SUCCESS + FROM = { + set_character_flag = D_SUCCESS + character_event = { id = MNM.1421 days = 30 random = 10 } + } + } + tooltip = { add_society_currency_minor_effect = yes } + } + 30 = { + tooltip = { clr_quest = { id = quest_hermetics_find_text failure = yes } } + hidden_effect = { + FROM = { + set_character_flag = D_FAIL + character_event = { id = MNM.1421 days = 30 random = 10 } + } + } + } + } + } + #after = { hidden_effect = { character_event = { id = MNM.1427 days = 450 } } } +} + +#Ping event for outcome in book search +character_event = { + id = MNM.1421 + hide_window = yes + is_triggered_only = yes + + immediate = { + if = { + limit = { FROM = { has_quest = quest_hermetics_find_text } } + trigger_switch = { + on_trigger = has_character_flag + A_SUCCESS = { FROM = { narrative_event = { id = MNM.1422 } } } + B_SUCCESS = { FROM = { character_event = { id = MNM.1423 } } } + C_SUCCESS = { FROM = { character_event = { id = MNM.1424 } } } + D_SUCCESS = { FROM = { character_event = { id = MNM.1425 } } } + A_FAIL = { FROM = { character_event = { id = MNM.1426 } } } + B_FAIL = { FROM = { character_event = { id = MNM.1426 } } } + C_FAIL = { FROM = { character_event = { id = MNM.1426 } } } + D_FAIL = { FROM = { character_event = { id = MNM.1426 } } } + } + } + if = { + limit = { NOT = { FROM = { has_quest = quest_hermetics_find_text } } } + clr_character_flag = A_FAIL + clr_character_flag = B_FAIL + clr_character_flag = C_FAIL + clr_character_flag = D_FAIL + } + clr_character_flag = A_SUCCESS + clr_character_flag = B_SUCCESS + clr_character_flag = C_SUCCESS + clr_character_flag = D_SUCCESS + clr_character_flag = alexandria + + FROM = { clr_character_flag = do_not_disturb } + } +} + +#Emerald tablet in library of Alexandria +narrative_event = { + id = MNM.1422 + title = EVTTITLE_MNM_1422 + desc = EVTDESC_MNM_1422 + picture = GFX_evt_religious_exultation + border = GFX_event_narrative_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1422 + + add_artifact = emerald_tablet + + clr_quest = quest_hermetics_find_text + sound_effect = hermetic_society_recover_scroll + add_society_currency_massive_effect = yes + + hidden_effect = { + opinion = { + who = FROM + modifier = epic_adventure + years = 30 + } + } + reverse_opinion = { + who = FROM + modifier = epic_adventure + years = 30 + } + } +} + +#You found tablet in old ruin +character_event = { + id = MNM.1423 + desc = EVTDESC_MNM_1423 + picture = GFX_evt_pagan + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1423 + + clr_quest = quest_hermetics_find_text + sound_effect = hermetic_society_recover_scroll + add_society_currency_major_effect = yes + + hidden_effect = { + opinion = { + who = FROM + modifier = great_adventure + years = 30 + } + } + reverse_opinion = { + who = FROM + modifier = great_adventure + years = 30 + } + } +} + +#You found old scroll in temple +character_event = { + id = MNM.1424 + desc = EVTDESC_MNM_1424 + picture = GFX_evt_bishop + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1424 + + clr_quest = quest_hermetics_find_text + sound_effect = hermetic_society_recover_scroll + add_society_currency_medium_effect = yes + + hidden_effect = { + opinion = { + who = FROM + modifier = nice_adventure + years = 30 + } + } + reverse_opinion = { + who = FROM + modifier = nice_adventure + years = 30 + } + } +} + +#You found tome in library +character_event = { + id = MNM.1425 + desc = EVTDESC_MNM_1425 + picture = GFX_evt_library + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1425 + + clr_quest = quest_hermetics_find_text + sound_effect = hermetic_society_recover_scroll + add_society_currency_minor_effect = yes + } +} + +#Failure +character_event = { + id = MNM.1426 + picture = GFX_evt_desert + border = GFX_event_normal_frame_religion + + desc = { + trigger = { FROM = { has_character_flag = A_FAIL } } + text = EVTDESC_MNM_1426_A + picture = GFX_evt_desert + } + desc = { + trigger = { FROM = { has_character_flag = B_FAIL } } + text = EVTDESC_MNM_1426_B + picture = GFX_evt_pagan + } + desc = { + trigger = { FROM = { has_character_flag = C_FAIL } } + text = EVTDESC_MNM_1426_C + picture = GFX_evt_bishop + } + desc = { + trigger = { FROM = { has_character_flag = D_FAIL } } + text = EVTDESC_MNM_1426_D + picture = GFX_evt_market + } + + is_triggered_only = yes + + option = { + name = CURSES + + clr_quest = { id = quest_hermetics_find_text failure = yes } + + if = { + limit = { FROM = { has_character_flag = A_FAIL } } + add_rival = FROM + } + + FROM = { + clr_character_flag = A_FAIL + clr_character_flag = B_FAIL + clr_character_flag = C_FAIL + clr_character_flag = D_FAIL + } + } +} + + + +##Clearing of flag +#character_event = { +# id = MNM.1427 +# hide_window = yes +# is_triggered_only = yes +# immediate = { clr_character_flag = do_not_disturb } +#} + + +#Mission: Infiltrate laboratory +character_event = { + id = MNM.1430 + hide_window = yes + is_triggered_only = yes + immediate = { + FROM = { society_quest_event = { id = MNM.1431 days = 7 random = 7 } } + } +} + +society_quest_event = { + id = MNM.1431 + + desc = { + trigger = { event_target:infiltration_target = { has_character_flag = infiltration_rival } } + text = EVTDESC_MNM_1431_A + } + desc = { + trigger = { event_target:infiltration_target = { has_character_flag = infiltration_mutual_dislike } } + text = EVTDESC_MNM_1431_B + } + desc = { + trigger = { event_target:infiltration_target = { has_character_flag = infiltration_rich } } + text = EVTDESC_MNM_1431_C + } + + is_triggered_only = yes + + quest_target = event_target:infiltration_target + + immediate = { + random_list = { + 30 = { #Their nemesis + trigger = { + society = { + any_society_member = { + is_within_diplo_range = ROOT + NOR = { + has_character_flag = infiltration_rival + has_character_flag = infiltration_mutual_dislike + has_character_flag = infiltration_rich + } + is_rival = FROM + NOT = { reverse_opinion = { who = ROOT value = 20 } } + } + } + } + society = { + random_society_member = { + limit = { + is_within_diplo_range = ROOT + NOR = { + has_character_flag = infiltration_rival + has_character_flag = infiltration_mutual_dislike + has_character_flag = infiltration_rich + } + is_rival = FROM + NOT = { reverse_opinion = { who = ROOT value = 20 } } + } + save_event_target_as = infiltration_target + set_character_flag = infiltration_rival + } + } + } + 10 = { #Shared dislike + trigger = { + society = { + any_society_member = { + is_within_diplo_range = ROOT + NOR = { + has_character_flag = infiltration_rival + has_character_flag = infiltration_mutual_dislike + has_character_flag = infiltration_rich + } + NOT = { reverse_opinion = { who = ROOT value = 0 } } + NOT = { reverse_opinion = { who = FROM value = 0 } } + } + } + } + society = { + random_society_member = { + limit = { + is_within_diplo_range = ROOT + NOR = { + has_character_flag = infiltration_rival + has_character_flag = infiltration_mutual_dislike + has_character_flag = infiltration_rich + } + NOT = { reverse_opinion = { who = ROOT value = 0 } } + NOT = { reverse_opinion = { who = FROM value = 0 } } + } + save_event_target_as = infiltration_target + set_character_flag = infiltration_mutual_dislike + } + } + } + 10 = { #Rich target + trigger = { + society = { + any_society_member = { + is_within_diplo_range = ROOT + NOR = { + has_character_flag = infiltration_rival + has_character_flag = infiltration_mutual_dislike + has_character_flag = infiltration_rich + } + NOT = { reverse_opinion = { who = ROOT value = 20 } } + NOT = { reverse_opinion = { who = FROM value = 20 } } + OR = { + any_artifact = { has_artifact_flag = hermetic } + wealth = 200 + has_character_modifier = best_laboratory + has_character_modifier = great_laboratory + } + } + } + } + modifier = { + OR = { + trait = greedy + trait = ambitious + } + factor = 2 + } + society = { + random_society_member = { + limit = { + is_within_diplo_range = ROOT + NOR = { + has_character_flag = infiltration_rival + has_character_flag = infiltration_mutual_dislike + has_character_flag = infiltration_rich + } + NOT = { reverse_opinion = { who = ROOT value = 20 } } + NOT = { reverse_opinion = { who = FROM value = 20 } } + OR = { + any_artifact = { + has_artifact_flag = hermetic + has_artifact_flag = text + } + wealth = 200 + has_character_modifier = best_laboratory + has_character_modifier = great_laboratory + } + } + save_event_target_as = infiltration_target + set_character_flag = infiltration_rich + } + } + } + 1 = { #Fallback + society = { + random_society_member = { + limit = { + is_within_diplo_range = ROOT + NOR = { + reverse_opinion = { who = FROM value = 20 } + reverse_opinion = { who = ROOT value = 20 } + has_character_flag = infiltration_rival + has_character_flag = infiltration_mutual_dislike + has_character_flag = infiltration_rich + } + } + save_event_target_as = infiltration_target + set_character_flag = infiltration_rich + } + } + } + } + } + + option = { + name = ACCEPT + ai_chance = { factor = 100 } + + event_target:infiltration_target = { + set_quest_target = { + id = quest_hermetics_infiltrate_laboratory + holder = ROOT + } + } + + hidden_effect = { + FROM = { + save_event_target_as = infiltration_companion + opinion = { who = ROOT modifier = opinion_infiltration_companion months = 100 } + character_event = { id = MNM.1432 days = 14 } + } + event_target:infiltration_target = { character_event = { id = MNM.1456 days = 150 } } + } + } + + option = { + name = DECLINE + ai_chance = { factor = 0 } + custom_tooltip = { text = decline_quest_tooltip } + add_character_modifier = { + name = quest_cooldown_timer + hidden = yes + days = 1000 + } + hidden_effect = { event_target:infiltration_target = { character_event = { id = MNM.1456 } } } + } +} + +#Search for lab or skip to security, done by collaborator +character_event = { + id = MNM.1432 + hide_window = yes + is_triggered_only = yes + immediate = { + + if = { + limit = { + event_target:infiltration_target = { + OR = { + has_character_flag = hidden_lab + has_character_flag = very_hidden_lab + } + } + } + FROM = { letter_event = { id = MNM.1433 } } + } + if = { + limit = { + event_target:infiltration_target = { + NOR = { + has_character_flag = hidden_lab + has_character_flag = very_hidden_lab + } + } + } + FROM = { character_event = { id = MNM.1435 } } + } + } +} + +#Find out where the laboratory is hid +letter_event = { + id = MNM.1433 + desc = EVTDESC_MNM_1433 + border = GFX_event_letter_frame_intrigue + + is_triggered_only = yes + + + option = { + name = EVTOPTA_MNM_1433 + custom_tooltip = { text = EVTOPTA_MNM_1433_TT } + + hidden_effect = { + random_list = { + 33 = { #It goes fast + modifier = { FROM = { intrigue = 12 } factor = 1.2 } + modifier = { FROM = { intrigue = 14 } factor = 1.2 } + modifier = { FROM = { intrigue = 16 } factor = 1.2 } + modifier = { FROM = { intrigue = 18 } factor = 1.2 } + FROM = { character_event = { id = MNM.1434 days = 15 random = 10 } } + + } + 33 = { #It goes slowly + modifier = { event_target:infiltration_target = { has_character_flag = hidden_lab } factor = 1.5 } + modifier = { FROM = { intrigue = 12 } factor = 1.1 } + modifier = { FROM = { intrigue = 14 } factor = 1.1 } + modifier = { FROM = { intrigue = 16 } factor = 1.1 } + modifier = { FROM = { intrigue = 18 } factor = 1.1 } + FROM = { character_event = { id = MNM.1434 days = 45 random = 30 } } + } + 33 = { #It goes super slow + modifier = { event_target:infiltration_target = { has_character_flag = very_hidden_lab } factor = 2 } + FROM = { character_event = { id = MNM.1434 days = 90 random = 45 } } + } + } + } + } +} + + +character_event = { + id = MNM.1434 + hide_window = yes + is_triggered_only = yes + + trigger = { FROM = { has_quest = quest_hermetics_infiltrate_laboratory } } + + immediate = { FROM = { character_event = { id = MNM.1435 } } } +} + + +#Get past the guards +character_event = { + id = MNM.1435 + picture = GFX_evt_eavesdropping + border = GFX_event_normal_frame_intrigue + + trigger = { has_quest = quest_hermetics_infiltrate_laboratory } + + immediate = { + # Will select two ingredients, by prioritizing from the top, until it hits two available ones... + select_random_hermetic_ingredient_herb_effect = yes + select_random_hermetic_ingredient_animal_part_effect = yes + select_random_hermetic_ingredient_powder_effect = yes + select_random_hermetic_ingredient_liquid_effect = yes + select_random_hermetic_ingredient_herb_effect = yes + select_random_hermetic_ingredient_powder_effect = yes + select_random_hermetic_ingredient_animal_part_effect = yes + select_random_hermetic_ingredient_liquid_effect = yes + } + + desc = { + trigger = { event_target:infiltration_target = { has_character_flag = very_hidden_lab } } + text = EVTDESC_MNM_1435_A + } + desc = { + trigger = { event_target:infiltration_target = { has_character_flag = hidden_lab } } + text = EVTDESC_MNM_1435_B + } + desc = { + trigger = { + event_target:infiltration_target = { + NOR = { + has_character_flag = very_hidden_lab + has_character_flag = hidden_lab + } + } + } + text = EVTDESC_MNM_1435_C + } + + is_triggered_only = yes + + #Bribe + option = { + trigger = { + OR = { + ai = no + scaled_wealth = 0.5 + } + diplomacy = 12 + } + name = EVTOPTA_MNM_1435 + custom_tooltip = { text = EVTOPTA_MNM_1435_TT } + tooltip_info = diplomacy + + if = { + limit = { event_target:infiltration_target = { has_character_flag = very_hidden_lab } } + scaled_wealth = { value = -0.75 min = -75 } + } + if = { + limit = { event_target:infiltration_target = { has_character_flag = hidden_lab } } + scaled_wealth = { value = -0.5 min = -50 } + } + if = { + limit = { + NOR = { + event_target:infiltration_target = { has_character_flag = very_hidden_lab } + event_target:infiltration_target = { has_character_flag = hidden_lab } + } + } + scaled_wealth = { value = -0.3 min = -30 } + } + + set_character_flag = bribed_guards + character_event = { id = MNM.1436 days = 7 } + } + + #Make a sleeping potion (potentially great effect) + option = { + tooltip_info = yes + name = EVTOPTB_MNM_1435 + custom_tooltip = { text = multiple_ingredient_option_available_tt } + custom_tooltip = { text = EVTOPTB_MNM_1435_TT } + + random_list = { + 60 = { + modifier = { learning = 10 factor = 1.2 } + modifier = { learning = 12 factor = 1.2 } + modifier = { learning = 14 factor = 1.2 } + modifier = { learning = 16 factor = 1.2 } + modifier = { learning = 18 factor = 1.2 } + modifier = { + factor = 1.1 + has_selected_herb_ingredient_1_trigger = yes + } + modifier = { + factor = 1.1 + has_selected_herb_ingredient_2_trigger = yes + } + modifier = { + factor = 1.1 + has_selected_animal_part_ingredient_1_trigger = yes + } + modifier = { + factor = 1.1 + has_selected_animal_part_ingredient_2_trigger = yes + } + modifier = { + factor = 1.5 + selected_ingredient_is_sleep_inducing_trigger = yes + } + custom_tooltip = { text = EVTOPTX_MNM_1435_SUCCESS_TT character_event = { id = MNM.1436 days = 7 } } + } + 40 = { + modifier = { event_target:infiltration_target = { has_character_flag = hidden_lab } factor = 1.2 } + modifier = { event_target:infiltration_target = { has_character_flag = very_hidden_lab } factor = 1.5 } + custom_tooltip = { + text = EVTOPTX_MNM_1435_FAIL_TT + hidden_effect = { + random_list = { + 50 = { + character_event = { id = MNM.1436 days = 7 } #You get deteced later, but continue for now + set_character_flag = guards_wake_up + } + 50 = { + character_event = { id = MNM.1437 days = 7 } #Hard fail + } + } + } + } + } + } + + destroy_selected_ingredient_1_and_2_effect = yes + + trigger = { + any_artifact = { + count = 2 + has_artifact_flag = ingredient + } + } + } + + #Make a sleeping potion (mild effect) + option = { + tooltip_info = yes + name = EVTOPTB_MNM_1435_single_ingredient + custom_tooltip = { text = ingredient_option_available_tt } + custom_tooltip = { text = EVTOPTB_MNM_1435_TT } + + random_list = { + 50 = { + modifier = { learning = 10 factor = 1.2 } + modifier = { learning = 12 factor = 1.2 } + modifier = { learning = 14 factor = 1.2 } + modifier = { learning = 16 factor = 1.2 } + modifier = { learning = 18 factor = 1.2 } + modifier = { + factor = 1.2 + selected_ingredient_is_sleep_inducing_trigger = yes + } + custom_tooltip = { text = EVTOPTX_MNM_1435_SUCCESS_TT character_event = { id = MNM.1436 days = 7 } } + } + 50 = { + modifier = { event_target:infiltration_target = { has_character_flag = hidden_lab } factor = 1.2 } + modifier = { event_target:infiltration_target = { has_character_flag = very_hidden_lab } factor = 1.5 } + custom_tooltip = { + text = EVTOPTX_MNM_1435_FAIL_TT + hidden_effect = { + random_list = { + 50 = { + character_event = { id = MNM.1436 days = 7 } #You get deteced later, but continue for now + set_character_flag = guards_wake_up + } + 50 = { + character_event = { id = MNM.1437 days = 7 } #Hard fail + } + } + } + } + } + } + + destroy_selected_ingredient_1_effect = yes + + trigger = { + any_artifact = { + has_artifact_flag = ingredient + } + } + } + + #Distraction + option = { + name = EVTOPTC_MNM_1435 + custom_tooltip = { text = EVTOPTC_MNM_1435_TT } + + random_list = { + 60 = { + modifier = { FROM = { intrigue = 10 } factor = 1.2 } + modifier = { FROM = { intrigue = 12 } factor = 1.2 } + modifier = { FROM = { intrigue = 14 } factor = 1.2 } + modifier = { FROM = { intrigue = 16 } factor = 1.2 } + modifier = { FROM = { intrigue = 18 } factor = 1.2 } + custom_tooltip = { text = EVTOPTX_MNM_1435_SUCCESS_TT character_event = { id = MNM.1438 days = 7 } } + } + 40 = { + modifier = { event_target:infiltration_target = { has_character_flag = hidden_lab } factor = 1.2 } + modifier = { event_target:infiltration_target = { has_character_flag = very_hidden_lab } factor = 1.5 } + custom_tooltip = { + text = EVTOPTX_MNM_1435_FAIL_TT + hidden_effect = { + random_list = { + 50 = { + character_event = { id = MNM.1438 days = 7 } #You get deteced later, but continue for now + set_character_flag = distraction_failed + } + 50 = { + character_event = { id = MNM.1439 days = 7 } #Hard fail + } + } + } + } + } + } + } + + #Bad idea + option = { + name = EVTOPTD_MNM_1435 + custom_tooltip = { text = EVTOPTD_MNM_1435_TT } + clr_quest = { id = quest_hermetics_infiltrate_laboratory failure = yes } + reverse_opinion = { + who = FROM + modifier = opinion_very_disappointed + years = 10 + } + hidden_effect = { + FROM = { remove_opinion = { who = ROOT modifier = opinion_infiltration_companion } } + } + } + + after = { + remove_selection_of_ingredients_effect = yes + } +} + +#The sleeping potion worked/you bribed the guards +character_event = { + id = MNM.1436 + picture = GFX_evt_drunk + border = GFX_event_normal_frame_intrigue + + trigger = { has_quest = quest_hermetics_infiltrate_laboratory } + + desc = { + trigger = { has_character_flag = bribed_guards } + text = EVTDESC_MNM_1436_A + picture = GFX_evt_shady_meeting + } + desc = { + trigger = { NOT = { has_character_flag = bribed_guards } } + text = EVTDESC_MNM_1436_B + picture = GFX_evt_drunk + } + + is_triggered_only = yes + + #You destroy, I will steal + option = { + name = EVTOPTA_MNM_1436 + custom_tooltip = { text = EVTOPTA_MNM_1436_TT } + + hidden_effect = { + if = { + limit = { + OR = { + has_character_flag = guards_wake_up + has_character_flag = distraction_failed + } + } + set_character_flag = caught_stealing + character_event = { id = MNM.1440 days = 25 } #Guards catch you stealing + } + if = { + limit = { + NOR = { + has_character_flag = guards_wake_up + has_character_flag = distraction_failed + } + } + character_event = { id = MNM.1441 days = 25 } #You steal + event_target:infiltration_companion = { character_event = { id = MNM.1445 days = 14 } } + } + } + } + + #I destroy, you steal + option = { + name = EVTOPTB_MNM_1436 + custom_tooltip = { text = EVTOPTA_MNM_1436_TT } + + hidden_effect = { + if = { + limit = { + OR = { + has_character_flag = guards_wake_up + has_character_flag = distraction_failed + } + } + set_character_flag = caught_destroying + character_event = { id = MNM.1440 days = 25 } #Guards catch you destroying + } + if = { + limit = { + NOR = { + has_character_flag = guards_wake_up + has_character_flag = distraction_failed + } + } + character_event = { id = MNM.1443 days = 25 } #You destroy + event_target:infiltration_companion = { character_event = { id = MNM.1447 days = 14 } } + } + } + } + + #We steal + option = { + name = EVTOPTC_MNM_1436 + custom_tooltip = { text = EVTOPTC_MNM_1436_TT } + + hidden_effect = { + if = { + limit = { + OR = { + has_character_flag = guards_wake_up + has_character_flag = distraction_failed + } + } + set_character_flag = caught_stealing + character_event = { id = MNM.1440 days = 25 } #Guards catch you stealing + } + if = { + limit = { + NOR = { + has_character_flag = guards_wake_up + has_character_flag = distraction_failed + } + } + character_event = { id = MNM.1441 days = 25 } #You steal + } + } + } + + #We destroy + option = { + name = EVTOPTD_MNM_1436 + custom_tooltip = { text = EVTOPTC_MNM_1436_TT } + + hidden_effect = { + if = { + limit = { + OR = { + has_character_flag = guards_wake_up + has_character_flag = distraction_failed + } + } + set_character_flag = caught_destroying + character_event = { id = MNM.1440 days = 25 } #Guards catch you destroying + } + if = { + limit = { + NOR = { + has_character_flag = guards_wake_up + has_character_flag = distraction_failed + } + } + character_event = { id = MNM.1443 days = 25 } #You destroy + } + } + } + + after = { hidden_effect = { clr_character_flag = bribed_guards } } +} + +#You fail to make a sleeping potion +character_event = { + id = MNM.1437 + desc = EVTDESC_MNM_1437 + picture = GFX_evt_quarrel + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + trigger = { has_quest = quest_hermetics_infiltrate_laboratory } + + option = { + name = EVTOPTA_MNM_1437 + + clr_quest = { id = quest_hermetics_infiltrate_laboratory failure = yes } + reverse_opinion = { + who = event_target:infiltration_companion + modifier = opinion_very_disappointed + years = 10 + } + hidden_effect = { + event_target:infiltration_companion = { remove_opinion = { who = ROOT modifier = opinion_infiltration_companion } } + } + } +} + +#The distraction is successful +character_event = { + id = MNM.1438 + desc = EVTDESC_MNM_1438 + picture = GFX_evt_shadowy_cabal + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + trigger = { has_quest = quest_hermetics_infiltrate_laboratory } + + #Steal + option = { + name = EVTOPTA_MNM_1438 + + hidden_effect = { + if = { + limit = { + OR = { + has_character_flag = guards_wake_up + has_character_flag = distraction_failed + } + } + set_character_flag = caught_stealing + character_event = { id = MNM.1440 days = 25 } #Guards catch you stealing + } + if = { + limit = { + NOR = { + has_character_flag = guards_wake_up + has_character_flag = distraction_failed + } + } + character_event = { id = MNM.1441 days = 25 } #You steal + } + } + } + + #Destroy + option = { + name = EVTOPTB_MNM_1438 + + hidden_effect = { + if = { + limit = { + OR = { + has_character_flag = guards_wake_up + has_character_flag = distraction_failed + } + } + set_character_flag = caught_destroying + character_event = { id = MNM.1440 days = 25 } #Guards catch you destroying + } + if = { + limit = { + NOR = { + has_character_flag = guards_wake_up + has_character_flag = distraction_failed + } + } + character_event = { id = MNM.1443 days = 25 } #You destroy + } + } + } +} + +#The diversion fails +character_event = { + id = MNM.1439 + desc = EVTDESC_MNM_1439 + picture = GFX_evt_quarrel + border = GFX_event_normal_frame_intrigue + + trigger = { has_quest = quest_hermetics_infiltrate_laboratory } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1439 + + clr_quest = { id = quest_hermetics_infiltrate_laboratory failure = yes } + hidden_effect = { + event_target:infiltration_companion = { remove_opinion = { who = ROOT modifier = opinion_infiltration_companion } } + } + } +} + +#You get caught +character_event = { + id = MNM.1440 + picture = GFX_evt_into_the_dungeon + border = GFX_event_normal_frame_intrigue + + trigger = { has_quest = quest_hermetics_infiltrate_laboratory } + + desc = { + trigger = { + has_character_flag = guards_wake_up + has_character_flag = caught_destroying + } + text = EVTDESC_MNM_1440_A + } + desc = { + trigger = { + OR = { + AND = { + has_character_flag = distraction_failed + has_character_flag = caught_destroying + } + FROM = { has_character_flag = bad_theft } + } + } + text = EVTDESC_MNM_1440_B + } + desc = { + trigger = { + has_character_flag = guards_wake_up + has_character_flag = caught_stealing + } + text = EVTDESC_MNM_1440_C + } + desc = { + trigger = { + has_character_flag = distraction_failed + has_character_flag = caught_stealing + } + text = EVTDESC_MNM_1440_D + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1440 + + + event_target:infiltration_target = { + if = { + limit = { is_landed = yes } + ROOT = { imprison = PREV } + if = { + limit = { event_target:infiltration_companion = { ai = yes } } + event_target:infiltration_companion = { imprison = PREV } + } + } + + if = { + limit = { is_landed = no } + host = { + ROOT = { imprison = PREV } + if = { + limit = { event_target:infiltration_companion = { ai = yes } } + event_target:infiltration_companion = { imprison = PREV } + } + } + } + } + + reverse_opinion = { + who = event_target:infiltration_target + modifier = opinion_thief + years = 20 + } + hidden_effect = { + event_target:infiltration_companion = { + reverse_opinion = { + who = event_target:infiltration_target + modifier = opinion_thief + years = 20 + } + } + } + + hidden_effect = { + clr_character_flag = distraction_failed + clr_character_flag = guards_wake_up + clr_character_flag = caught_stealing + clr_character_flag = caught_destroying + FROM = { clr_character_flag = bad_theft } + } + clr_quest = { id = quest_hermetics_infiltrate_laboratory failure = yes } + hidden_effect = { + event_target:infiltration_target = { character_event = { id = MNM.1451 days = 7 } } + event_target:infiltration_companion = { remove_opinion = { who = ROOT modifier = opinion_infiltration_companion } } + } + } +} + +#The captor decides what to do with you +character_event = { + id = MNM.1451 + desc = EVTDESC_MNM_1451 + picture = GFX_evt_catching_heretic + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + #Trade secrets for freedom + option = { + trigger = { + FROM = { + has_society_currency_medium_trigger = yes + prisoner = yes + } + } + name = EVTOPTA_MNM_1451 + + tooltip = { + random_list = { + 60 = { + modifier = { trait = craven factor = 1.5 } + add_society_currency_major_effect = yes + } + 40 = { + modifier = { + OR = { + trait = greedy + trait = ambitious + trait = wroth + trait = paranoid + } + factor = 2 + } + custom_tooltip = { text = EVTOPTA_MNM_1451_FAIL_TT } + } + + } + } + + hidden_effect = { FROM = { character_event = { id = MNM.1452 } } } + + ai_chance = { + factor = 60 + modifier = { + OR = { + trait = greedy + trait = ambitious + learning = 14 + } + factor = 2 + } + } + } + + #Let them rot + option = { + name = EVTOPTB_MNM_1451 + + if = { + limit = { NOT = { is_rival = FROM } } + tooltip = { add_rival = FROM } + } + if = { + limit = { NOT = { is_rival = event_target:infiltration_companion } } + tooltip = { add_rival = event_target:infiltration_companion } + } + + hidden_effect = { FROM = { character_event = { id = MNM.1455 } } } + + ai_chance = { + factor = 40 + modifier = { + is_rival = FROM + factor = 2 + } + } + } +} + +#Give me secrets, I will let you out +character_event = { + id = MNM.1452 + desc = EVTDESC_MNM_1452 + picture = GFX_evt_catching_heretic + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + trigger = { prisoner = yes } + + #Alright... + option = { + name = EVTOPTA_MNM_1452 + + detract_society_currency_medium_effect = yes + + tooltip = { imprison = no } + + hidden_effect = { FROM = { character_event = { id = MNM.1453 days = 3 } } } + + ai_chance = { + modifier = { trait = craven factor = 1.5 } + factor = 60 + } + } + + #Never! + option = { + name = EVTOPTB_MNM_1452 + custom_tooltip = { text = EVTOPTB_MNM_1452_TT } + + if = { + limit = { NOT = { is_rival = FROM } } + tooltip = { add_rival = FROM } + } + + hidden_effect = { FROM = { character_event = { id = MNM.1454 days = 3 } } } + + ai_chance = { + modifier = { + OR = { + trait = greedy + trait = ambitious + trait = wroth + trait = paranoid + } + factor = 2 + } + factor = 40 + } + } +} + +#Infiltration target get their secrets +character_event = { + id = MNM.1453 + desc = EVTDESC_MNM_1453 + picture = GFX_evt_dark_prayer + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1453 + + add_society_currency_major_effect = yes + + FROM = { imprison = no } + } +} + +#Infiltration target is denied +character_event = { + id = MNM.1454 + desc = EVTDESC_MNM_1454 + picture = GFX_evt_into_the_dungeon + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1454 + + if = { + limit = { NOT = { is_rival = FROM } } + add_rival = FROM + } + } +} + +#Infiltration target wants you to rot +character_event = { + id = MNM.1455 + desc = EVTDESC_MNM_1455 + picture = GFX_evt_catching_heretic + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1455 + + if = { + limit = { NOT = { is_rival = FROM } } + add_rival = FROM + } + } +} + +#You steal +character_event = { + id = MNM.1441 + picture = GFX_evt_library + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { has_character_flag = great_theft } + text = EVTDESC_MNM_1441_A + } + desc = { + trigger = { has_character_flag = good_theft } + text = EVTDESC_MNM_1441_B + } + desc = { + trigger = { has_character_flag = ok_theft } + text = EVTDESC_MNM_1441_C + } + + is_triggered_only = yes + hide_from = yes + + trigger = { has_quest = quest_hermetics_infiltrate_laboratory } + + immediate = { + random_list = { + 33 = { #Great theft + trigger = { + event_target:infiltration_target = { + any_artifact = { + has_artifact_flag = hermetics + has_artifact_flag = text + } + } + } + modifier = { learning = 12 factor = 1.2 } + modifier = { learning = 13 factor = 1.2 } + modifier = { learning = 16 factor = 1.2 } + modifier = { learning = 18 factor = 1.2 } + modifier = { event_target:infiltration_target = { ai = no } factor = 0.5 } + set_character_flag = great_theft + } + 33 = { #Good theft + trigger = { + event_target:infiltration_target = { + any_artifact = { + has_artifact_flag = hermetics + has_artifact_flag = ingredient + } + } + } + modifier = { learning = 10 factor = 1.2 } + modifier = { learning = 12 factor = 1.1 } + modifier = { learning = 13 factor = 1.1 } + modifier = { learning = 16 factor = 1.1 } + modifier = { learning = 18 factor = 1.1 } + set_character_flag = good_theft + } + 33 = { #Ok theft + modifier = { event_target:infiltration_target = { has_character_flag = hidden_lab } factor = 1.2 } + modifier = { event_target:infiltration_target = { has_character_flag = very_hidden_lab } factor = 1.5 } + set_character_flag = ok_theft + } + } + } + + #Great theft + option = { + trigger = { has_character_flag = great_theft } + name = EVTOPTA_MNM_1441 + + custom_tooltip = { text = EVTOPTA_MNM_1441_steal_text } + + if = { + limit = { + event_target:infiltration_target = { + any_artifact = { + has_artifact_flag = hermetics + has_artifact_flag = ingredient + } + } + } + custom_tooltip = { text = EVTOPTA_MNM_1441_steal_ingredient } + } + + #Money and knowledge + transfer_scaled_wealth = { from = event_target:infiltration_target value = 0.5 min = 50 } + add_society_currency_massive_effect = yes + } + + #Good theft + option = { + trigger = { has_character_flag = good_theft } + name = EVTOPTA_MNM_1441 + + #You get artifacts + custom_tooltip = { text = EVTOPTA_MNM_1441_steal_ingredient } + + #Money and knowledge + transfer_scaled_wealth = { from = event_target:infiltration_target value = 0.25 min = 25 } + add_society_currency_major_effect = yes + } + + option = { + trigger = { has_character_flag = ok_theft } + name = EVTOPTC_MNM_1441 + + #Money and knowledge + transfer_scaled_wealth = { from = event_target:infiltration_target value = 0.1 min = 10 } + add_society_currency_medium_effect = yes + } + + after = { + hidden_effect = { + event_target:infiltration_target = { character_event = { id = MNM.1442 } } + character_event = { id = MNM.1450 days = 40 } + } + } +} + +#Person who gets stolen from gets notified +character_event = { + id = MNM.1442 + picture = GFX_evt_burning_house + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { FROM = { has_character_flag = great_theft } } + text = EVTDESC_MNM_1442_A + } + desc = { + trigger = { FROM = { has_character_flag = good_theft } } + text = EVTDESC_MNM_1442_B + } + desc = { + trigger = { FROM = { has_character_flag = ok_theft } } + text = EVTDESC_MNM_1442_C + } + + hide_from = yes + is_triggered_only = yes + + + option = { + name = CURSES + + #Artifacts get stolen + if = { + limit = { FROM = { has_character_flag = great_theft } } + random_artifact = { + limit = { + has_artifact_flag = hermetics + has_artifact_flag = text + } + + tooltip = { destroy_artifact = yes } + hidden_effect = { + transfer_artifact = { + from = ROOT + to = FROM + } + } + } + } + + if = { + limit = { + FROM = { + OR = { + has_character_flag = great_theft + has_character_flag = good_theft + } + } + } + if = { + limit = { + any_artifact = { + has_artifact_flag = hermetics + has_artifact_flag = ingredient + } + } + random_artifact = { + limit = { + has_artifact_flag = hermetics + has_artifact_flag = ingredient + } + tooltip = { destroy_artifact = yes } + hidden_effect = { + transfer_artifact = { + from = ROOT + to = FROM + } + } + } + } + } + + #Money + if = { + limit = { FROM = { has_character_flag = great_theft } } + tooltip = { scaled_wealth = { value = -0.5 min = -50 } } + } + if = { + limit = { FROM = { has_character_flag = good_theft } } + tooltip = { scaled_wealth = { value = -0.25 min = -25 } } + } + if = { + limit = { FROM = { has_character_flag = ok_theft } } + tooltip = { scaled_wealth = { value = -0.1 min = -10 } } + } + + hidden_effect = { + FROM = { + clr_character_flag = great_theft + clr_character_flag = good_theft + clr_character_flag = ok_theft + } + } + } +} + +#You destroy +character_event = { + id = MNM.1443 + picture = GFX_evt_burning_house + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + hide_from = yes + + desc = { + trigger = { has_character_flag = lab_destruction } + text = EVTDESC_MNM_1443_A + } + desc = { + trigger = { has_character_flag = lab_damage } + text = EVTDESC_MNM_1443_B + } + desc = { + trigger = { has_character_flag = lab_explosion_death } + text = EVTDESC_MNM_1443_C + } + + trigger = { has_quest = quest_hermetics_infiltrate_laboratory } + + immediate = { + random_list = { + 40 = { #Total destruction + trigger = { event_target:infiltration_target = { has_character_flag = built_laboratory } } + modifier = { learning = 12 factor = 1.2 } + modifier = { learning = 13 factor = 1.2 } + modifier = { learning = 16 factor = 1.2 } + modifier = { learning = 18 factor = 1.2 } + set_character_flag = lab_destruction + } + 55 = { #Major damage + modifier = { learning = 10 factor = 1.2 } + modifier = { learning = 12 factor = 1.1 } + modifier = { learning = 13 factor = 1.1 } + modifier = { learning = 16 factor = 1.1 } + modifier = { learning = 18 factor = 1.1 } + set_character_flag = lab_damage + } + 5 = { #You die in an accident + modifier = { event_target:infiltration_target = { has_character_flag = hidden_lab } factor = 1.2 } + modifier = { event_target:infiltration_target = { has_character_flag = very_hidden_lab } factor = 1.5 } + trigger = { event_target:infiltration_target = { has_character_flag = built_laboratory } } + modifier = { NOT = { learning = 10 } factor = 1.5 } + modifier = { NOT = { learning = 8 } factor = 2 } + modifier = { NOT = { learning = 6 } factor = 2 } + set_character_flag = lab_explosion_death + } + } + } + + option = { + trigger = { has_character_flag = lab_destruction } + name = EVTOPTA_MNM_1443 + + event_target:infiltration_target = { + tooltip = { + trigger_switch = { + on_trigger = has_character_modifier + cheap_laboratory = { remove_character_modifier = cheap_laboratory } + normal_laboratory = { remove_character_modifier = normal_laboratory } + good_laboratory = { remove_character_modifier = good_laboratory } + great_laboratory = { remove_character_modifier = great_laboratory } + best_laboratory = { remove_character_modifier = best_laboratory } + } + destroy_all_ingredients_effect = yes + } + } + + add_society_currency_major_effect = yes + } + + option = { + trigger = { has_character_flag = lab_damage } + name = EVTOPTA_MNM_1443 + + tooltip = { + event_target:infiltration_target = { + scaled_wealth = { value = -0.3 min = -30 } + destroy_random_ingredients_effect = yes + } + } + + add_society_currency_medium_effect = yes + } + + option = { + trigger = { has_character_flag = lab_explosion_death } + name = EVTOPTC_MNM_1443 + death = { death_reason = death_accident } + } + + after = { + hidden_effect = { + event_target:infiltration_target = { character_event = { id = MNM.1444 } } + character_event = { id = MNM.1450 days = 40 } + } + } +} + +#Infiltration target gets notified of destroyed lab +character_event = { + id = MNM.1444 + picture = GFX_evt_burning_house + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { FROM = { has_character_flag = lab_destruction } } + text = EVTDESC_MNM_1444_A + } + desc = { + trigger = { FROM = { has_character_flag = lab_damage } } + text = EVTDESC_MNM_1444_B + } + desc = { + trigger = { + FROM = { + NOR = { + has_character_flag = lab_destruction + has_character_flag = lab_damage + } + } + } + text = EVTDESC_MNM_1444_C + } + + hide_from = yes + + is_triggered_only = yes + + option = { + trigger = { + FROM = { + OR = { + has_character_flag = lab_destruction + has_character_flag = lab_damage + } + } + } + name = CURSES + + if = { + limit = { FROM = { has_character_flag = lab_destruction } } + destroy_all_ingredients_effect = yes + trigger_switch = { + on_trigger = has_character_modifier + cheap_laboratory = { remove_character_modifier = cheap_laboratory } + normal_laboratory = { remove_character_modifier = normal_laboratory } + good_laboratory = { remove_character_modifier = good_laboratory } + great_laboratory = { remove_character_modifier = great_laboratory } + best_laboratory = { remove_character_modifier = best_laboratory } + } + hidden_effect = { + clr_character_flag = built_laboratory + clr_character_flag = hidden_lab + clr_character_flag = very_hidden_lab + } + } + + if = { + limit = { FROM = { has_character_flag = lab_damage } } + scaled_wealth = { value = -0.3 min = -30 } + destroy_random_ingredients_effect = yes + } + } + + option = { + trigger = { + FROM = { + NOR = { + has_character_flag = lab_destruction + has_character_flag = lab_damage + } + } + } + name = EVTOPTB_MNM_1444 + FROM = { clr_character_flag = lab_explosion_death } + } + + after = { + hidden_effect = { + FROM = { + clr_character_flag = lab_destruction + clr_character_flag = lab_damage + } + } + } +} + +#Companion attempts to steal +character_event = { + id = MNM.1445 + hide_window = yes + is_triggered_only = yes + + trigger = { FROM = { has_quest = quest_hermetics_infiltrate_laboratory } } + + immediate = { + random_list = { + 40 = { #Good theft + trigger = { + any_artifact = { + has_artifact_flag = hermetics + has_artifact_flag = ingredient + } + } + modifier = { learning = 10 factor = 1.2 } + modifier = { learning = 12 factor = 1.1 } + modifier = { learning = 13 factor = 1.1 } + modifier = { learning = 16 factor = 1.1 } + modifier = { learning = 18 factor = 1.1 } + set_character_flag = good_theft + FROM = { character_event = { id = MNM.1446 days = 20 } } + } + 40 = { #Ok theft + set_character_flag = ok_theft + FROM = { character_event = { id = MNM.1446 days = 20 } } + } + 20 = { #Bad theft + modifier = { event_target:infiltration_target = { has_character_flag = hidden_lab } factor = 1.2 } + modifier = { event_target:infiltration_target = { has_character_flag = very_hidden_lab } factor = 1.5 } + modifier = { NOT = { learning = 10 } factor = 1.5 } + modifier = { NOT = { learning = 8 } factor = 2 } + modifier = { NOT = { intrigue = 10 } factor = 1.5 } + modifier = { NOT = { intrigue = 8 } factor = 2 } + set_character_flag = bad_theft + FROM = { character_event = { id = MNM.1440 } } + } + } + } +} + +#Companion steal attempt good/ok outcome +character_event = { + id = MNM.1446 + picture = GFX_evt_library + border = GFX_event_normal_frame_intrigue + + desc = { + trigger = { FROM = { has_character_flag = good_theft } } + text = EVTDESC_MNM_1446_A + } + desc = { + trigger = { FROM = { has_character_flag = ok_theft } } + text = EVTDESC_MNM_1446_B + } + + is_triggered_only = yes + + trigger = { has_quest = quest_hermetics_infiltrate_laboratory } + + option = { + trigger = { FROM = { has_character_flag = good_theft } } + name = EVTOPTA_MNM_1446 + + add_artifact = ingredient_metal_exotic5 + add_society_currency_minor_effect = yes + + hidden_effect = { FROM = { clr_character_flag = good_theft } } + } + + option = { + trigger = { FROM = { has_character_flag = ok_theft } } + name = EVTOPTA_MNM_1446 + + add_society_currency_minor_effect = yes + hidden_effect = { FROM = { clr_character_flag = ok_theft } } + } +} + +#Companion attempts to destroy +character_event = { + id = MNM.1447 + hide_window = yes + is_triggered_only = yes + + trigger = { FROM = { has_quest = quest_hermetics_infiltrate_laboratory } } + + immediate = { + random_list = { + 90 = { #Lab damage + modifier = { learning = 10 factor = 1.2 } + modifier = { learning = 12 factor = 1.1 } + modifier = { learning = 13 factor = 1.1 } + modifier = { learning = 16 factor = 1.1 } + modifier = { learning = 18 factor = 1.1 } + FROM = { character_event = { id = MNM.1448 days = 20 } } + } + 10 = { #They die + modifier = { event_target:infiltration_target = { has_character_flag = hidden_lab } factor = 1.2 } + modifier = { event_target:infiltration_target = { has_character_flag = very_hidden_lab } factor = 1.5 } + modifier = { NOT = { learning = 10 } factor = 1.5 } + modifier = { NOT = { learning = 8 } factor = 2 } + modifier = { NOT = { intrigue = 10 } factor = 1.5 } + modifier = { NOT = { intrigue = 8 } factor = 2 } + FROM = { character_event = { id = MNM.1449 } } + } + } + } +} + +#Companion manages to damage lab +character_event = { + id = MNM.1448 + desc = EVTDESC_MNM_1448 + picture = GFX_evt_burning_house + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + trigger = { has_quest = quest_hermetics_infiltrate_laboratory } + + option = { + name = EVTOPTA_MNM_1448 + + add_society_currency_minor_effect = yes + } +} + +#Companion dies in an explotion +character_event = { + id = MNM.1449 + desc = EVTDESC_MNM_1449 + picture = GFX_evt_burning_house + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + trigger = { has_quest = quest_hermetics_infiltrate_laboratory } + + option = { + name = EVTOPTA_MNM_1449 + + FROM = { death = { death_reason = death_accident } } + + clr_quest = { id = quest_hermetics_infiltrate_laboratory failure = yes } + hidden_effect = { + event_target:infiltration_companion = { remove_opinion = { who = ROOT modifier = opinion_infiltration_companion } } + } + } +} + +#You escape and mission is complete +character_event = { + id = MNM.1450 + desc = EVTDESC_MNM_1450 + picture = GFX_evt_burning_house + border = GFX_event_normal_frame_intrigue + + is_triggered_only = yes + + trigger = { has_quest = quest_hermetics_infiltrate_laboratory } + + option = { + name = EVTOPTA_MNM_1450 + + clr_quest = quest_hermetics_infiltrate_laboratory + sound_effect = hermetic_society_perform_experiment + hidden_effect = { + event_target:infiltration_companion = { remove_opinion = { who = ROOT modifier = opinion_infiltration_companion } } + } + + if = { + limit = { + opinion = { who = event_target:infiltration_companion value = 40 } + reverse_opinion = { who = event_target:infiltration_companion value = 40 } + NOT = { is_friend = event_target:infiltration_companion } + } + add_friend = event_target:infiltration_companion + break = yes + } + reverse_opinion = { + who = event_target:infiltration_companion + modifier = opinion_accomplice + years = 10 + } + hidden_effect = { + opinion = { + who = event_target:infiltration_companion + modifier = opinion_accomplice + years = 10 + } + } + } +} + +#Clears flags from infiltration target +character_event = { + id = MNM.1456 + hide_window = yes + is_triggered_only = yes + immediate = { + clr_character_flag = infiltration_rival + clr_character_flag = infiltration_mutual_dislike + clr_character_flag = infiltration_rich + } +} + +############ +# POWERS +############ +####################### Start of Scrying events ####################### +######## Power: Perform Scrying - what do you want to look for? ####### +character_event = { + id = MNM.1200 + picture = GFX_evt_dark_prayer + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + has_dlc = "Mystics" + has_an_omen_modifier_trigger = no + } + + desc = { + text = EVTDESC_MNM_1200_A + trigger = { NOT = { any_artifact = { has_artifact_flag = ingredient } } } + } + desc = { + text = EVTDESC_MNM_1200_B + trigger = { any_artifact = { has_artifact_flag = ingredient } } + } + + immediate = { + if = { + limit = { + any_artifact = { + has_artifact_flag = ingredient + } + } + select_random_hermetic_ingredient_effect = yes + } + } + + option = { # I want to know about battles to come + name = EVTOPTA_MNM_1200 + set_character_flag = battle_focused_scrying_flag + } + option = { # I want to know where my relationships will lead + name = EVTOPTB_MNM_1200 + set_character_flag = relationship_focused_scrying_flag + } + option = { # I want to find out how to increase my power + name = EVTOPTC_MNM_1200 + set_character_flag = power_hungry_scrying_flag + } + + option = { # I am gonna throw some ingredients into the water... + tooltip_info = yes + + custom_tooltip = { text = ingredient_option_available_tt } + custom_tooltip = { text = EVTOPTD_MNM_1200_tt } + name = { + text = EVTOPTD_MNM_1200_herb + trigger = { + any_artifact = { + has_artifact_flag = selected_ingredient + is_ingredient_herb_trigger = yes + } + } + } + name = { + text = EVTOPTD_MNM_1200_animal_part + trigger = { + any_artifact = { + has_artifact_flag = selected_ingredient + is_ingredient_animal_part_trigger = yes + } + } + } + name = { + text = EVTOPTD_MNM_1200_powder + trigger = { + any_artifact = { + has_artifact_flag = selected_ingredient + is_ingredient_powder_trigger = yes + } + } + } + name = { + text = EVTOPTD_MNM_1200_liquid + trigger = { + any_artifact = { + has_artifact_flag = selected_ingredient + is_ingredient_liquid_trigger = yes + } + } + } + hidden_effect = { + random_list = { + 10 = { + set_character_flag = battle_focused_scrying_flag + } + 10 = { + set_character_flag = relationship_focused_scrying_flag + } + 10 = { + set_character_flag = power_hungry_scrying_flag + } + } + set_character_flag = used_ingredient_flag + } + destroy_selected_ingredient_1_effect = yes + + ai_chance = { #AI should use ingredients if they can + factor = 100 + modifier = { + factor = 50 + trait = ambitious + } + } + + trigger = { + any_artifact = { has_artifact_flag = ingredient } + } + } + + after = { + hidden_effect = { + character_event = { id = MNM.1201 days = 5 random = 1 } + remove_selection_of_ingredients_effect = yes + } + } +} + +character_event = { # You see something in the water and react well or poorly to it + id = MNM.1201 + picture = GFX_evt_dark_prayer + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + has_dlc = "Mystics" + has_an_omen_modifier_trigger = no + society_member_of = hermetics + } + + desc = { + trigger = { has_character_flag = battle_focused_scrying_flag has_character_flag = desc_variation_A_flag } + text = EVTDESC_MNM_1201_BATTLE_A + } + desc = { + trigger = { has_character_flag = battle_focused_scrying_flag has_character_flag = desc_variation_B_flag } + text = EVTDESC_MNM_1201_BATTLE_B + } + desc = { + trigger = { has_character_flag = battle_focused_scrying_flag has_character_flag = desc_variation_C_flag } + text = EVTDESC_MNM_1201_BATTLE_C + } + + desc = { + trigger = { has_character_flag = relationship_focused_scrying_flag has_character_flag = desc_variation_A_flag } + text = EVTDESC_MNM_1201_RELATIONSHIP_A + } + desc = { + trigger = { has_character_flag = relationship_focused_scrying_flag has_character_flag = desc_variation_B_flag } + text = EVTDESC_MNM_1201_RELATIONSHIP_B + } + desc = { + trigger = { has_character_flag = relationship_focused_scrying_flag has_character_flag = desc_variation_C_flag } + text = EVTDESC_MNM_1201_RELATIONSHIP_C + } + + desc = { + trigger = { has_character_flag = power_hungry_scrying_flag has_character_flag = desc_variation_A_flag } + text = EVTDESC_MNM_1201_POWER_A + } + desc = { + trigger = { has_character_flag = power_hungry_scrying_flag has_character_flag = desc_variation_B_flag } + text = EVTDESC_MNM_1201_POWER_B + } + desc = { + trigger = { has_character_flag = power_hungry_scrying_flag has_character_flag = desc_variation_C_flag } + text = EVTDESC_MNM_1201_POWER_C + } + + immediate = { + random_list = { + 10 = { set_character_flag = desc_variation_A_flag } + 10 = { set_character_flag = desc_variation_B_flag } + 10 = { set_character_flag = desc_variation_C_flag } + } + random_list = { + 30 = { + modifier = { + factor = 1.5 + has_character_flag = used_ingredient_flag + } + set_character_flag = positive_reaction_to_scrying_flag + } + 30 = { + set_character_flag = negative_reaction_to_scrying_flag + } + } + } + option = { + name = EVTOPTA_MNM_1201 + + if = { limit = { has_character_flag = battle_focused_scrying_flag } + add_character_modifier = { + name = good_battle_omen + duration = -1 + } + + } + if = { limit = { has_character_flag = relationship_focused_scrying_flag } + add_character_modifier = { + name = good_relationship_omen + duration = -1 + } + } + if = { limit = { has_character_flag = power_hungry_scrying_flag } + add_character_modifier = { + name = good_power_omen + duration = -1 + } + } + + trigger = { + has_character_flag = positive_reaction_to_scrying_flag + } + } + option = { + name = EVTOPTB_MNM_1201 + + if = { limit = { has_character_flag = battle_focused_scrying_flag } + add_character_modifier = { + name = bad_battle_omen + duration = -1 + } + } + if = { limit = { has_character_flag = relationship_focused_scrying_flag } + add_character_modifier = { + name = bad_relationship_omen + duration = -1 + } + } + if = { limit = { has_character_flag = power_hungry_scrying_flag } + add_character_modifier = { + name = bad_power_omen + duration = -1 + } + } + + trigger = { + has_character_flag = negative_reaction_to_scrying_flag + } + } + after = { + hidden_effect = { + random_list = { # For sending fallbacks, in case nothing else triggers from the omen-modifiers during the next few years + 10 = { + character_event = { id = MNM.1225 days = 1500 random = 300 } + } + 10 = { + character_event = { id = MNM.1226 days = 1500 random = 300 } + } + 10 = { + character_event = { id = MNM.1227 days = 1500 random = 300 } + } + } + remove_character_modifier = scrying_cooldown + } + clr_character_flag = desc_variation_A_flag + clr_character_flag = desc_variation_B_flag + clr_character_flag = desc_variation_C_flag + clr_character_flag = battle_focused_scrying_flag + clr_character_flag = relationship_focused_scrying_flag + clr_character_flag = power_hungry_scrying_flag + clr_character_flag = used_ingredient_flag + } +} + +character_event = { # Gain a leadership trait (fired from on_combat_pulse) + id = MNM.1202 + title = the_battle_at_location + picture = GFX_evt_battle + border = GFX_event_normal_frame_war + is_triggered_only = yes + + trigger = { + has_dlc = "Mystics" + is_alive = yes + can_have_more_leadership_traits = yes + OR = { + NOT = { trait = experimenter } + NOT = { trait = unyielding_leader } + NOT = { trait = inspiring_leader } + } + has_battle_omen_modifier_trigger = yes + } + + desc = { + trigger = { has_character_modifier = good_battle_omen } + text = EVTDESC_MNM_1202_A + } + desc = { + trigger = { has_character_modifier = bad_battle_omen } + text = EVTDESC_MNM_1202_B + } + + immediate = { + disallow_new_battle_events_effect = yes + random_list = { + 10 = { + trigger = { NOT = { trait = experimenter } } + set_character_flag = gain_direct_leader + } + 10 = { + trigger = { NOT = { trait = unyielding_leader } } + set_character_flag = gain_unyielding_leader + } + 10 = { + trigger = { NOT = { trait = inspiring_leader } } + set_character_flag = gain_inspiring_leader + } + } + } + + option = { # Gain Direct Leader + name = EVTOPTA_MNM_1202 + trigger = { has_character_flag = gain_direct_leader } + add_trait = experimenter + } + option = { # Gain Unyielding + name = EVTOPTB_MNM_1202 + trigger = { has_character_flag = gain_unyielding_leader } + add_trait = unyielding_leader + } + option = { # Gain Inspiring Leader + name = EVTOPTC_MNM_1202 + trigger = { has_character_flag = gain_inspiring_leader } + add_trait = inspiring_leader + } + after = { + if = { + limit = { has_character_modifier = good_battle_omen } + upgrade_seer_modifier_effect = yes + } + if = { + limit = { has_character_modifier = bad_battle_omen } + downgrade_seer_modifier_effect = yes + } + remove_scrying_omen_modifiers_effect = yes + clr_character_flag = gain_direct_leader + clr_character_flag = gain_unyielding_leader + clr_character_flag = gain_inspiring_leader + allow_new_battle_events_effect = yes + } +} + +character_event = { # Fight goes badly (fired from on_combat_pulse) + id = MNM.1203 + title = the_battle_at_location + picture = GFX_evt_battle + border = GFX_event_normal_frame_war + is_triggered_only = yes + + trigger = { + has_dlc = "Mystics" + is_alive = yes + has_battle_omen_modifier_trigger = yes + } + + immediate = { + disallow_new_battle_events_effect = yes + } + + desc = { + trigger = { has_character_modifier = bad_battle_omen } + text = EVTDESC_MNM_1203_A + } + desc = { + trigger = { has_character_modifier = good_battle_omen } + text = EVTDESC_MNM_1203_B + } + + option = { # At least I was right + name = EVTOPTA_MNM_1203 + upgrade_seer_modifier_effect = yes + + trigger = { has_character_modifier = bad_battle_omen } + } + option = { # Curses! Where's the glory in this?! + name = EVTOPTB_MNM_1203 + downgrade_seer_modifier_effect = yes + + trigger = { has_character_modifier = good_battle_omen } + } + + after = { + random_list = { + 40 = { + add_trait_wounded_effect = yes + } + 40 = { + modifier = { + factor = 0 + OR = { + trait = one_legged + NOT = { has_dlc = "Reapers" } + } + } + add_trait = one_legged + + character_event = { id = RIP.11503 } # Notify one-legged + if = { + limit = { + AND = { + has_dlc = "Reapers" + NOT = { trait = severely_injured } + } + } + add_trait = severely_injured + resolve_severely_injured_effect = yes + } + } + 5 = { + death = { death_reason = death_battle } + } + } + remove_scrying_omen_modifiers_effect = yes + allow_new_battle_events_effect = yes + } +} + +character_event = { # A Child is born - you have a good feeling about the kid! (fired from on_birth) + id = MNM.1204 + picture = GFX_evt_state_diplomacy + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + has_dlc = "Mystics" + is_alive = yes + + FROM = { + is_alive = yes + OR = { + is_smart_trigger = yes + is_strong_trigger = yes + } + NOT = { has_negative_congenital_trigger = yes } + } + has_relationship_omen_modifier_trigger = yes + } + + weight_multiplier = { + days = 1 + modifier = { + factor = 5 + has_character_modifier = good_relationship_omen + } + modifier = { + factor = 0.5 + has_character_modifier = bad_relationship_omen + } + } + + immediate = { + if = { limit = { has_character_modifier = good_relationship_omen } set_character_flag = omen_opt1 } + if = { limit = { has_character_modifier = bad_relationship_omen } set_character_flag = omen_opt2 } + remove_scrying_omen_modifiers_effect = yes + } + + desc = { + trigger = { has_character_modifier = good_relationship_omen } + text = EVTDESC_MNM_1204_A + } + desc = { + trigger = { has_character_modifier = bad_relationship_omen } + text = EVTDESC_MNM_1204_B + } + + option = { # I knew something great would happen! + name = EVTOPTA_MNM_1204 + tooltip = { + remove_character_modifier = good_relationship_omen + } + upgrade_seer_modifier_effect = yes + + trigger = { has_character_flag = omen_opt1 } + } + option = { # I am not sure I interpreted the omen correctly... + name = EVTOPTB_MNM_1204 + tooltip = { + remove_character_modifier = bad_relationship_omen + } + downgrade_seer_modifier_effect = yes + + trigger = { has_character_flag = omen_opt2 } + } + + after = { + clr_character_flag = omen_opt1 + clr_character_flag = omen_opt2 + } +} + +character_event = { # A Child is born - you're not impressed (fired from on_birth) + id = MNM.1205 + picture = GFX_evt_secluded_in_prayer + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + has_dlc = "Mystics" + is_alive = yes + + FROM = { + is_alive = yes + has_negative_congenital_trigger = yes + NOT = { is_smart_trigger = yes } + NOT = { is_strong_trigger = yes } + } + + OR = { + has_character_modifier = good_relationship_omen + has_character_modifier = bad_relationship_omen + } + } + + weight_multiplier = { + days = 1 + modifier = { + factor = 5 + has_character_modifier = bad_relationship_omen + } + modifier = { + factor = 0.5 + has_character_modifier = good_relationship_omen + } + } + + immediate = { + if = { limit = { has_character_modifier = bad_relationship_omen } set_character_flag = omen_opt1 } + if = { limit = { has_character_modifier = good_relationship_omen } set_character_flag = omen_opt2 } + remove_scrying_omen_modifiers_effect = yes + } + + desc = { + trigger = { has_character_modifier = bad_relationship_omen } + text = EVTDESC_MNM_1205_A + } + desc = { + trigger = { has_character_modifier = good_relationship_omen } + text = EVTDESC_MNM_1205_B + } + + + option = { # I knew something bad would happen! + name = EVTOPTA_MNM_1205 + tooltip = { + remove_character_modifier = bad_relationship_omen + } + upgrade_seer_modifier_effect = yes + + trigger = { has_character_flag = omen_opt1 } + } + option = { # I am not sure I interpreted the omen correctly... + name = EVTOPTB_MNM_1205 + tooltip = { + remove_character_modifier = good_relationship_omen + } + downgrade_seer_modifier_effect = yes + + trigger = { has_character_flag = omen_opt2 } + } + + after = { + clr_character_flag = omen_opt1 + clr_character_flag = omen_opt2 + } +} + +character_event = { #newborn sends event to parents + id = MNM.1206 + is_triggered_only = yes + hide_window = yes + + weight_multiplier = { + days = 1 + modifier = { + factor = 5 + OR = { + has_character_modifier = bad_relationship_omen + has_character_modifier = good_relationship_omen + } + } + } + + immediate = { + father = { + character_event = { id = MNM.1204 days = 15 } + character_event = { id = MNM.1205 days = 15 } + } + mother = { + character_event = { id = MNM.1204 days = 15 } + character_event = { id = MNM.1205 days = 15 } + } + } +} + +character_event = { # PING/Set-up event: Someone dies - is this what you foretold? (fired from on_death) + id = MNM.1207 + hide_window = yes + is_triggered_only = yes + + trigger = { + OR = { + any_lover = { + is_alive = yes + has_relationship_omen_modifier_trigger = yes + } + any_friend = { + is_alive = yes + has_relationship_omen_modifier_trigger = yes + } + + AND = { + is_adult = yes + any_rival = { + is_alive = yes + has_relationship_omen_modifier_trigger = yes + } + } + any_child = { + is_alive = yes + is_adult = yes + has_relationship_omen_modifier_trigger = yes + } + mother = { + is_alive = yes + has_relationship_omen_modifier_trigger = yes + } + father = { + is_alive = yes + has_relationship_omen_modifier_trigger = yes + } + } + NOR = { + death_no_trace_trigger = yes + death_in_china_trigger = yes + } + } + + option = { + save_event_target_as = mnm_scrying_dead + + spouse = { save_event_target_as = mnm_scrying_widow } + + #Lover gets event + random_lover = { + limit = { + NOT = { trait = incapable } + has_relationship_omen_modifier_trigger = yes + } + character_event = { id = MNM.1208 days = 20 } + } + + #Friend gets event + random_friend = { + limit = { + NOT = { trait = incapable } + has_relationship_omen_modifier_trigger = yes + } + save_event_target_as = mnm_scrying_friend + character_event = { id = MNM.1209 days = 30 } + } + + #Rival gets event + random_rival = { + limit = { + NOT = { trait = incapable } + has_relationship_omen_modifier_trigger = yes + } + save_event_target_as = mnm_scrying_enemy + character_event = { id = MNM.1210 days = 30 } + } + + # Adult child gets event + random_child = { + limit = { + is_adult = yes + NOT = { trait = incapable } + has_relationship_omen_modifier_trigger = yes + } + save_event_target_as = mnm_scrying_child + character_event = { id = MNM.1211 days = 30 } + } + # Parent + if = { + limit = { + mother = { + NOT = { trait = incapable } + has_relationship_omen_modifier_trigger = yes + } + } + mother = { + save_event_target_as = mnm_scrying_parent + character_event = { id = MNM.1212 days = 30 } + } + } + + if = { + limit = { + father = { + NOT = { trait = incapable } + has_relationship_omen_modifier_trigger = yes + } + } + father = { + save_event_target_as = mnm_scrying_parent + character_event = { id = MNM.1212 days = 30 } + } + } + } +} + +character_event = { # scrying vision result: the passing of a lover + id = MNM.1208 + picture = GFX_evt_secluded_in_prayer + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + has_relationship_omen_modifier_trigger = yes + NOT = { trait = incapable } + } + + desc = { + trigger = { has_character_modifier = bad_relationship_omen } + text = EVTDESC_MNM_1208_A + } + desc = { + trigger = { has_character_modifier = good_relationship_omen } + text = EVTDESC_MNM_1208_B + } + + option = { + name = EVTOPTA_MNM_1208 + upgrade_seer_modifier_effect = yes + + trigger = { has_character_modifier = bad_relationship_omen } + } + option = { + name = EVTOPTB_MNM_1208 + downgrade_seer_modifier_effect = yes + + trigger = { has_character_modifier = good_relationship_omen } + } + + after = { + remove_scrying_omen_modifiers_effect = yes + } +} + +character_event = { # scrying vision result: the passing of a friend + id = MNM.1209 + picture = GFX_evt_secluded_in_prayer + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + has_relationship_omen_modifier_trigger = yes + NOT = { trait = incapable } + } + + desc = { + trigger = { has_character_modifier = bad_relationship_omen } + text = EVTDESC_MNM_1209_A + } + desc = { + trigger = { has_character_modifier = good_relationship_omen } + text = EVTDESC_MNM_1209_B + } + + option = { + name = EVTOPTA_MNM_1209 + upgrade_seer_modifier_effect = yes + + trigger = { has_character_modifier = bad_relationship_omen } + } + option = { + name = EVTOPTB_MNM_1209 + downgrade_seer_modifier_effect = yes + + trigger = { has_character_modifier = good_relationship_omen } + } + + after = { + remove_scrying_omen_modifiers_effect = yes + } +} + +character_event = { # scrying vision result: the passing of a rival + id = MNM.1210 + picture = GFX_evt_state_diplomacy + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + has_relationship_omen_modifier_trigger = yes + NOT = { trait = incapable } + } + + desc = { + trigger = { has_character_modifier = bad_relationship_omen } + text = EVTDESC_MNM_1210_A + } + desc = { + trigger = { has_character_modifier = good_relationship_omen } + text = EVTDESC_MNM_1210_B + } + + option = { + name = EVTOPTA_MNM_1210 + upgrade_seer_modifier_effect = yes + + trigger = { has_character_modifier = good_relationship_omen } + } + option = { + name = EVTOPTB_MNM_1210 + downgrade_seer_modifier_effect = yes + + trigger = { has_character_modifier = bad_relationship_omen } + } + + after = { + remove_scrying_omen_modifiers_effect = yes + } +} + +character_event = { # scrying vision result: the passing of a parent + id = MNM.1211 + picture = GFX_evt_secluded_in_prayer + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + has_relationship_omen_modifier_trigger = yes + NOT = { trait = incapable } + } + + desc = { + trigger = { has_character_modifier = bad_relationship_omen } + text = EVTDESC_MNM_1211_A + } + desc = { + trigger = { has_character_modifier = good_relationship_omen } + text = EVTDESC_MNM_1211_B + } + + option = { + name = EVTOPTA_MNM_1211 + upgrade_seer_modifier_effect = yes + + trigger = { has_character_modifier = bad_relationship_omen } + } + option = { + name = EVTOPTB_MNM_1211 + downgrade_seer_modifier_effect = yes + + trigger = { has_character_modifier = good_relationship_omen } + } + + after = { + remove_scrying_omen_modifiers_effect = yes + } +} + +character_event = { # scrying vision result: the passing of a child + id = MNM.1212 + picture = GFX_evt_secluded_in_prayer + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + has_relationship_omen_modifier_trigger = yes + NOT = { trait = incapable } + } + + desc = { + trigger = { has_character_modifier = bad_relationship_omen } + text = EVTDESC_MNM_1212_A + } + desc = { + trigger = { has_character_modifier = good_relationship_omen } + text = EVTDESC_MNM_1212_B + } + + option = { + name = EVTOPTA_MNM_1212 + upgrade_seer_modifier_effect = yes + + trigger = { has_character_modifier = bad_relationship_omen } + } + option = { + name = EVTOPTB_MNM_1212 + downgrade_seer_modifier_effect = yes + + trigger = { has_character_modifier = good_relationship_omen } + } + + after = { + remove_scrying_omen_modifiers_effect = yes + } +} + +character_event = { # Ping event for pets + id = MNM.1213 + is_triggered_only = yes + hide_window = yes + + trigger = { + OR = { + has_character_flag = cat_death_omen + has_character_flag = dog_death_omen + } + } + + immediate = { + if = { + limit = { + has_relationship_omen_modifier_trigger = yes + NOT = { trait = incapable } + } + character_event = { id = MNM.1214 } + } + if = { + limit = { trait = incapable } + clr_character_flag = cat_death_omen + clr_character_flag = dog_death_omen + } + } +} + +character_event = { # scrying vision result: Cat/Dog death (other pet?) + id = MNM.1214 + picture = GFX_evt_secluded_in_prayer + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + has_relationship_omen_modifier_trigger = yes + OR = { + has_character_flag = cat_death_omen + has_character_flag = dog_death_omen + } + NOT = { trait = incapable } + } + + desc = { + trigger = { has_character_modifier = bad_relationship_omen NOT = { trait = lunatic } } + text = EVTDESC_MNM_1214_A + } + desc = { + trigger = { has_character_modifier = good_relationship_omen NOT = { trait = lunatic } } + text = EVTDESC_MNM_1214_B + } + desc = { + trigger = { has_character_modifier = bad_relationship_omen trait = lunatic } + text = EVTDESC_MNM_1214_A_lunatic + } + desc = { + trigger = { has_character_modifier = good_relationship_omen trait = lunatic } + text = EVTDESC_MNM_1214_B_lunatic + } + + option = { + name = { + text = EVTOPTA_MNM_1214_cat + trigger = { has_character_flag = cat_death_omen } + } + name = { + text = EVTOPTA_MNM_1214_dog + trigger = { has_character_flag = dog_death_omen } + } + name = { + text = EVTOPTA_MNM_1214_other + trigger = { + NOT = { has_character_flag = cat_death_omen } + NOT = { has_character_flag = dog_death_omen } + } + } + + upgrade_seer_modifier_effect = yes + + trigger = { has_character_modifier = bad_relationship_omen } + } + option = { + name = { + text = EVTOPTB_MNM_1214_cat + trigger = { has_character_flag = cat_death_omen } + } + name = { + text = EVTOPTB_MNM_1214_dog + trigger = { has_character_flag = dog_death_omen } + } + name = { + text = EVTOPTB_MNM_1214_other + trigger = { + NOT = { has_character_flag = cat_death_omen } + NOT = { has_character_flag = dog_death_omen } + } + } + + downgrade_seer_modifier_effect = yes + + trigger = { has_character_modifier = good_relationship_omen } + } + + after = { + clr_character_flag = cat_death_omen + clr_character_flag = dog_death_omen + remove_scrying_omen_modifiers_effect = yes + } +} + +character_event = { # Scrying vision result: gaining a new title + id = MNM.1215 + picture = GFX_evt_gathering_of_minds + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + has_power_omen_modifier_trigger = yes + NOT = { trait = incapable } + } + + immediate = { + if = { limit = { has_character_modifier = good_power_omen } set_character_flag = omen_opt1 } + if = { limit = { has_character_modifier = bad_power_omen } set_character_flag = omen_opt2 } + remove_scrying_omen_modifiers_effect = yes + } + + desc = { + trigger = { has_character_flag = omen_opt1 } + text = EVTDESC_MNM_1215_A + } + desc = { + trigger = { has_character_flag = omen_opt2 } + text = EVTDESC_MNM_1215_B + } + + option = { + name = EVTOPTA_MNM_1215 + tooltip = { + remove_character_modifier = good_power_omen + } + upgrade_seer_modifier_effect = yes + + trigger = { has_character_flag = omen_opt1 } + } + option = { + name = EVTOPTB_MNM_1215 + tooltip = { + remove_character_modifier = bad_power_omen + } + downgrade_seer_modifier_effect = yes + + trigger = { has_character_flag = omen_opt2 } + } + + after = { + clr_character_flag = omen_opt1 + clr_character_flag = omen_opt2 + } +} + +### To handle loss of titles: +character_event = { # 1. new holder of title (ROOT) sends event to old holder (FROMFROM), if they are still alive (sent from on_new_holder, on_new_holder_inheritance and on_new_holder_usurpation) + id = MNM.1216 + is_triggered_only = yes + hide_window = yes + + trigger = { + FROMFROM = { is_alive = yes } + } + + immediate = { + save_event_target_as = new_holder_target + FROMFROM = { save_event_target_as = old_holder_target } + character_event = { id = MNM.1218 days = 1 } + } +} + +diploresponse_event = { # 1.B: new holder of title gets exception flag, if the title was granted voluntarily (sent from GRANT_LANDED_TITLE_INTERACTION_ACCEPT_EVENT) + id = MNM.1217 + is_triggered_only = yes + hide_window = yes + + immediate = { + FROM = { set_character_flag = was_granted_title_voluntarily } + } +} + +character_event = { # 2: gating event, to send event or clearing flag for the new holder + id = MNM.1218 + is_triggered_only = yes + hide_window = yes + + immediate = { + if = { + limit = { NOT = { has_character_flag = was_granted_title_voluntarily } } + event_target:old_holder_target = { character_event = { id = MNM.1219 days = 3 } } + } + if = { + limit = { has_character_flag = was_granted_title_voluntarily } + clr_character_flag = was_granted_title_voluntarily + } + } +} + +character_event = { # 3: Scrying vision result: losing a title (not sent if given away freely via targeted decision) + id = MNM.1219 + picture = GFX_evt_gathering_of_minds + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + event_target:new_holder_target = { NOT = { has_character_flag = was_granted_title_voluntarily } } + has_power_omen_modifier_trigger = yes + NOT = { trait = incapable } + } + + immediate = { + if = { limit = { has_character_modifier = bad_power_omen } set_character_flag = omen_opt1 } + if = { limit = { has_character_modifier = good_power_omen } set_character_flag = omen_opt2 } + remove_scrying_omen_modifiers_effect = yes + } + + desc = { + trigger = { has_character_flag = omen_opt1 } + text = EVTDESC_MNM_1219_A + } + desc = { + trigger = { has_character_flag = omen_opt2 } + text = EVTDESC_MNM_1219_B + } + + option = { + name = EVTOPTA_MNM_1219 + tooltip = { + remove_character_modifier = bad_power_omen + } + upgrade_seer_modifier_effect = yes + + trigger = { has_character_flag = omen_opt1 } + } + option = { + name = EVTOPTB_MNM_1219 + tooltip = { + remove_character_modifier = good_power_omen + } + downgrade_seer_modifier_effect = yes + + trigger = { has_character_flag = omen_opt2 } + } + + after = { + clr_character_flag = omen_opt1 + clr_character_flag = omen_opt2 + } +} + +character_event = { # Scrying vision result: you are sick + id = MNM.1220 + picture = GFX_evt_recovery + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + has_power_omen_modifier_trigger = yes + } + + immediate = { + if = { limit = { has_character_modifier = bad_power_omen } set_character_flag = omen_opt1 } + if = { limit = { has_character_modifier = good_power_omen } set_character_flag = omen_opt2 } + remove_scrying_omen_modifiers_effect = yes + } + + desc = { + trigger = { has_character_flag = omen_opt1 } + text = EVTDESC_MNM_1220_A + } + desc = { + trigger = { has_character_flag = omen_opt2 } + text = EVTDESC_MNM_1220_B + } + + option = { + name = EVTOPTA_MNM_1220 + tooltip = { + remove_character_modifier = bad_power_omen + } + upgrade_seer_modifier_effect = yes + + trigger = { has_character_flag = omen_opt1 } + } + option = { + name = EVTOPTB_MNM_1220 + tooltip = { + remove_character_modifier = good_power_omen + } + downgrade_seer_modifier_effect = yes + + trigger = { has_character_flag = omen_opt2 } + } + + after = { + clr_character_flag = omen_opt1 + clr_character_flag = omen_opt2 + } +} +character_event = { # Scrying vision result: FROM is sick + id = MNM.1221 + picture = GFX_evt_recovery + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + OR = { + has_character_modifier = good_relationship_omen + has_character_modifier = bad_relationship_omen + } + } + + immediate = { + if = { limit = { has_character_modifier = bad_relationship_omen } set_character_flag = omen_opt1 } + if = { limit = { has_character_modifier = good_relationship_omen } set_character_flag = omen_opt2 } + remove_scrying_omen_modifiers_effect = yes + } + + desc = { + trigger = { FROM = { NOT = { character = ROOT } } has_character_flag = omen_opt1 } + text = EVTDESC_MNM_1221_A + } + desc = { + trigger = { FROM = { NOT = { character = ROOT } } has_character_flag = omen_opt2 } + text = EVTDESC_MNM_1221_B + } + desc = { + trigger = { FROM = { character = ROOT } has_character_flag = omen_opt1 } + text = EVTDESC_MNM_1221_C + } + desc = { + trigger = { FROM = { character = ROOT } has_character_flag = omen_opt2 } + text = EVTDESC_MNM_1221_D + } + + option = { + name = EVTOPTA_MNM_1221 + tooltip = { + remove_character_modifier = bad_relationship_omen + } + upgrade_seer_modifier_effect = yes + + trigger = { has_character_flag = omen_opt1 } + } + option = { + name = EVTOPTB_MNM_1221 + tooltip = { + remove_character_modifier = good_relationship_omen + } + downgrade_seer_modifier_effect = yes + + trigger = { has_character_flag = omen_opt2 } + } + + after = { + clr_character_flag = omen_opt1 + clr_character_flag = omen_opt2 + } +} + +character_event = { # Scrying vision result: you are healthy! + id = MNM.1222 + picture = GFX_evt_recovery + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + has_power_omen_modifier_trigger = yes + } + + immediate = { + if = { limit = { has_character_modifier = good_power_omen } set_character_flag = omen_opt1 } + if = { limit = { has_character_modifier = bad_power_omen } set_character_flag = omen_opt2 } + remove_scrying_omen_modifiers_effect = yes + } + + desc = { + trigger = { has_character_flag = omen_opt1 } + text = EVTDESC_MNM_1222_A + } + desc = { + trigger = { has_character_flag = omen_opt2 } + text = EVTDESC_MNM_1222_B + } + + option = { + name = EVTOPTA_MNM_1222 + tooltip = { + remove_character_modifier = good_power_omen + } + upgrade_seer_modifier_effect = yes + + trigger = { has_character_flag = omen_opt1 } + } + option = { + name = EVTOPTB_MNM_1222 + tooltip = { + remove_character_modifier = bad_power_omen + } + downgrade_seer_modifier_effect = yes + + trigger = { has_character_flag = omen_opt2 } + } + + after = { + clr_character_flag = omen_opt1 + clr_character_flag = omen_opt2 + } +} + +character_event = { # Scrying vision result: FROM is healthy! + id = MNM.1223 + picture = GFX_evt_recovery + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + FROM = { is_alive = yes } + OR = { + has_character_modifier = good_relationship_omen + has_character_modifier = bad_relationship_omen + } + } + + immediate = { + if = { limit = { has_character_modifier = good_relationship_omen } set_character_flag = omen_opt1 } + if = { limit = { has_character_modifier = bad_relationship_omen } set_character_flag = omen_opt2 } + remove_scrying_omen_modifiers_effect = yes + } + + desc = { + trigger = { has_character_flag = omen_opt1 } + text = EVTDESC_MNM_1223_A + } + desc = { + trigger = { has_character_flag = omen_opt2 } + text = EVTDESC_MNM_1223_B + } + + option = { + name = EVTOPTA_MNM_1223 + tooltip = { + remove_character_modifier = good_relationship_omen + } + upgrade_seer_modifier_effect = yes + + trigger = { has_character_flag = omen_opt1 } + } + option = { + name = EVTOPTB_MNM_1223 + tooltip = { + remove_character_modifier = bad_relationship_omen + } + downgrade_seer_modifier_effect = yes + + trigger = { has_character_flag = omen_opt2 } + } + + after = { + clr_character_flag = omen_opt1 + clr_character_flag = omen_opt2 + } +} + +character_event = { # FALLBACK (delayed event): Something good happens + id = MNM.1225 + border = GFX_event_normal_frame_religion + is_triggered_only = yes + picture = GFX_evt_state_diplomacy + trigger = { + has_an_omen_modifier_trigger = yes + } + + immediate = { + if = { + limit = { + has_character_modifier = good_battle_omen + } + set_character_flag = omen_opt_good_battle + } + if = { + limit = { + has_character_modifier = bad_battle_omen + } + set_character_flag = omen_opt_bad_battle + } + if = { + limit = { + has_character_modifier = good_relationship_omen + } + hidden_effect = { + #... Find a friend + if = { + limit = { any_courtier = { NOR = { is_friend = ROOT is_rival = ROOT is_lover = ROOT } is_adult = yes } } + + any_courtier = { + limit = { NOR = { is_friend = ROOT is_rival = ROOT is_lover = ROOT } is_adult = yes } + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + save_event_target_as = envisioned_friend + } + } + #... Or create a new one + if = { + limit = { NOT = { any_courtier = { NOR = { is_friend = ROOT is_rival = ROOT is_lover = ROOT } is_adult = yes } } } + + create_character = { + random_traits = yes + dynasty = random + } + new_character = { + save_event_target_as = envisioned_friend + } + } + } + set_character_flag = omen_opt_good_relationship + } + if = { + limit = { + has_character_modifier = bad_relationship_omen + } + hidden_effect = { + #... Find a friend + if = { + limit = { any_courtier = { NOR = { is_friend = ROOT is_rival = ROOT is_lover = ROOT } is_adult = yes } } + + any_courtier = { + limit = { NOR = { is_friend = ROOT is_rival = ROOT is_lover = ROOT } is_adult = yes } + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + save_event_target_as = envisioned_friend + } + } + #... Or create a new one + if = { + limit = { NOT = { any_courtier = { NOR = { is_friend = ROOT is_rival = ROOT is_lover = ROOT } is_adult = yes } } } + + create_character = { + random_traits = yes + dynasty = random + } + new_character = { + save_event_target_as = envisioned_friend + } + } + } + set_character_flag = omen_opt_bad_relationship + } + if = { + limit = { + has_character_modifier = good_power_omen + } + set_character_flag = omen_opt_good_power + } + if = { + limit = { + has_character_modifier = bad_power_omen + } + set_character_flag = omen_opt_bad_power + } + remove_scrying_omen_modifiers_effect = yes + } + + desc = { + trigger = { has_character_flag = omen_opt_good_battle } + picture = GFX_evt_hunt + text = EVTDESC_MNM_1225_A + } + desc = { + trigger = { has_character_flag = omen_opt_bad_battle } + picture = GFX_evt_hunt + text = EVTDESC_MNM_1225_B + } + desc = { + trigger = { has_character_flag = omen_opt_good_relationship } + picture = GFX_evt_state_diplomacy + text = EVTDESC_MNM_1225_C + } + desc = { + trigger = { has_character_flag = omen_opt_bad_relationship } + picture = GFX_evt_state_diplomacy + text = EVTDESC_MNM_1225_D + } + desc = { + trigger = { has_character_flag = omen_opt_good_power } + picture = GFX_evt_prospering_province + text = EVTDESC_MNM_1225_E + } + desc = { + trigger = { has_character_flag = omen_opt_bad_power } + picture = GFX_evt_prospering_province + text = EVTDESC_MNM_1225_F + } + + option = { + name = { + text = EVTOPTA_MNM_1225_battle + trigger = { has_character_flag = omen_opt_good_battle } + } + name = { + text = EVTOPTA_MNM_1225_relationship + trigger = { has_character_flag = omen_opt_good_relationship } + } + name = { + text = EVTOPTA_MNM_1225_power + trigger = { has_character_flag = omen_opt_good_power } + } + if = { limit = { has_character_flag = omen_opt_good_battle } + tooltip = { + remove_character_modifier = good_battle_omen + } + capital_scope = { + add_province_modifier = { + name = proud_hunters_spirit + duration = 2920 + } + } + } + if = { limit = { has_character_flag = omen_opt_good_relationship } + tooltip = { + remove_character_modifier = good_relationship_omen + } + add_friend = event_target:envisioned_friend + } + if = { limit = { has_character_flag = omen_opt_good_power } + tooltip = { + remove_character_modifier = good_power_omen + } + add_pet_owl_effect = yes + } + upgrade_seer_modifier_effect = yes + + trigger = { + OR = { + has_character_flag = omen_opt_good_battle + has_character_flag = omen_opt_good_relationship + has_character_flag = omen_opt_good_power + } + } + } + option = { + name = { + text = EVTOPTB_MNM_1225_battle + trigger = { has_character_flag = omen_opt_bad_battle } + } + name = { + text = EVTOPTB_MNM_1225_relationship + trigger = { has_character_flag = omen_opt_bad_relationship } + } + name = { + text = EVTOPTB_MNM_1225_power + trigger = { has_character_flag = omen_opt_bad_power } + } + if = { limit = { has_character_flag = omen_opt_bad_battle } + tooltip = { + remove_character_modifier = bad_battle_omen + } + capital_scope = { + add_province_modifier = { + name = proud_hunters_spirit + duration = 2920 + } + } + } + if = { limit = { has_character_flag = omen_opt_bad_relationship } + tooltip = { + remove_character_modifier = bad_relationship_omen + } + add_friend = event_target:envisioned_friend + } + if = { limit = { has_character_flag = omen_opt_bad_power } + tooltip = { + remove_character_modifier = bad_power_omen + } + add_pet_owl_effect = yes + } + downgrade_seer_modifier_effect = yes + + trigger = { + OR = { + has_character_flag = omen_opt_bad_battle + has_character_flag = omen_opt_bad_relationship + has_character_flag = omen_opt_bad_power + } + } + } + + after = { + clr_character_flag = omen_opt_good_battle + clr_character_flag = omen_opt_bad_battle + clr_character_flag = omen_opt_good_relationship + clr_character_flag = omen_opt_bad_relationship + clr_character_flag = omen_opt_good_power + clr_character_flag = omen_opt_bad_power + } +} + + +character_event = { # FALLBACK (delayed event): Something bad happens + id = MNM.1226 + border = GFX_event_normal_frame_religion + picture = GFX_evt_gathering_of_minds + is_triggered_only = yes + trigger = { + has_an_omen_modifier_trigger = yes + } + + immediate = { + if = { + limit = { + has_character_modifier = good_battle_omen + } + set_character_flag = omen_opt_good_battle + } + if = { + limit = { + has_character_modifier = bad_battle_omen + } + set_character_flag = omen_opt_bad_battle + } + if = { + limit = { + has_character_modifier = good_relationship_omen + } + hidden_effect = { + #... Find a rival + if = { + limit = { any_courtier = { NOR = { is_friend = ROOT is_rival = ROOT is_lover = ROOT } is_adult = yes } } + + any_courtier = { + limit = { NOR = { is_friend = ROOT is_rival = ROOT is_lover = ROOT } is_adult = yes } + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_dislikes_this_score = yes + } + save_event_target_as = envisioned_rival + } + } + + #... Or create a new one + if = { + limit = { NOT = { any_courtier = { NOR = { is_friend = ROOT is_rival = ROOT is_lover = ROOT } is_adult = yes } } } + + create_character = { + random_traits = yes + dynasty = random + } + new_character = { + save_event_target_as = envisioned_rival + } + } + } + set_character_flag = omen_opt_good_relationship + } + if = { + limit = { + has_character_modifier = bad_relationship_omen + } + hidden_effect = { + #... Find a rival + if = { + limit = { any_courtier = { NOR = { is_friend = ROOT is_rival = ROOT is_lover = ROOT } is_adult = yes } } + + any_courtier = { + limit = { NOR = { is_friend = ROOT is_rival = ROOT is_lover = ROOT } is_adult = yes } + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_dislikes_this_score = yes + } + save_event_target_as = envisioned_rival + } + } + + #... Or create a new one + if = { + limit = { NOT = { any_courtier = { NOR = { is_friend = ROOT is_rival = ROOT is_lover = ROOT } is_adult = yes } } } + + create_character = { + random_traits = yes + dynasty = random + } + new_character = { + save_event_target_as = envisioned_rival + } + } + } + set_character_flag = omen_opt_bad_relationship + } + if = { + limit = { + has_character_modifier = good_power_omen + } + set_character_flag = omen_opt_good_power + } + if = { + limit = { + has_character_modifier = bad_power_omen + } + set_character_flag = omen_opt_bad_power + } + remove_scrying_omen_modifiers_effect = yes + } + + desc = { + trigger = { has_character_flag = omen_opt_bad_battle } + picture = GFX_evt_hunt + text = EVTDESC_MNM_1226_A + } + desc = { + trigger = { has_character_flag = omen_opt_good_battle } + picture = GFX_evt_hunt + text = EVTDESC_MNM_1226_B + } + desc = { + trigger = { has_character_flag = omen_opt_bad_relationship } + picture = GFX_evt_gathering_of_minds + text = EVTDESC_MNM_1226_C + } + desc = { + trigger = { has_character_flag = omen_opt_good_relationship } + picture = GFX_evt_gathering_of_minds + text = EVTDESC_MNM_1226_D + } + desc = { + trigger = { has_character_flag = omen_opt_bad_power } + picture = GFX_evt_prospering_province + text = EVTDESC_MNM_1226_E + } + desc = { + trigger = { has_character_flag = omen_opt_good_power } + picture = GFX_evt_prospering_province + text = EVTDESC_MNM_1226_F + } + + option = { + name = { + text = EVTOPTA_MNM_1226_battle + trigger = { has_character_flag = omen_opt_bad_battle } + } + name = { + text = EVTOPTA_MNM_1226_relationship + trigger = { has_character_flag = omen_opt_bad_relationship } + } + name = { + text = EVTOPTA_MNM_1226_power + trigger = { has_character_flag = omen_opt_bad_power } + } + + if = { limit = { has_character_flag = omen_opt_bad_battle } + tooltip = { + remove_character_modifier = bad_battle_omen + } + add_maimed_trait_effect = yes + } + if = { limit = { has_character_flag = omen_opt_bad_relationship } + tooltip = { + remove_character_modifier = bad_relationship_omen + } + add_rival = event_target:envisioned_rival + } + if = { limit = { has_character_flag = omen_opt_bad_power } + tooltip = { + remove_character_modifier = bad_power_omen + } + } + upgrade_seer_modifier_effect = yes + + trigger = { + OR = { + has_character_flag = omen_opt_bad_battle + has_character_flag = omen_opt_bad_relationship + has_character_flag = omen_opt_bad_power + } + } + } + option = { + name = { + text = EVTOPTB_MNM_1226_battle + trigger = { has_character_flag = omen_opt_good_battle } + } + name = { + text = EVTOPTB_MNM_1226_relationship + trigger = { has_character_flag = omen_opt_good_relationship } + } + name = { + text = EVTOPTB_MNM_1226_power + trigger = { has_character_flag = omen_opt_good_power } + } + + if = { limit = { has_character_flag = omen_opt_good_battle } + tooltip = { + remove_character_modifier = good_battle_omen + } + add_maimed_trait_effect = yes + } + if = { limit = { has_character_flag = omen_opt_good_relationship } + tooltip = { + remove_character_modifier = good_relationship_omen + } + add_rival = event_target:envisioned_rival + } + if = { limit = { has_character_flag = omen_opt_good_power } + tooltip = { + remove_character_modifier = good_power_omen + } + } + downgrade_seer_modifier_effect = yes + + trigger = { + OR = { + has_character_flag = omen_opt_good_battle + has_character_flag = omen_opt_good_relationship + has_character_flag = omen_opt_good_power + } + } + } + + after = { + clr_character_flag = omen_opt_good_battle + clr_character_flag = omen_opt_bad_battle + clr_character_flag = omen_opt_good_relationship + clr_character_flag = omen_opt_bad_relationship + clr_character_flag = omen_opt_good_power + clr_character_flag = omen_opt_bad_power + } +} + +character_event = { # Scrying result fallback: Nothing happened, after all this time + id = MNM.1227 + desc = EVTDESC_MNM_1227 + picture = GFX_evt_secluded_in_prayer + border = GFX_event_normal_frame_religion + is_triggered_only = yes + trigger = { + has_an_omen_modifier_trigger = yes + } + + immediate = { + if = { + limit = { + has_character_modifier = good_battle_omen + } + set_character_flag = omen_opt_good_battle + } + if = { + limit = { + has_character_modifier = bad_battle_omen + } + set_character_flag = omen_opt_bad_battle + } + if = { + limit = { + has_character_modifier = good_relationship_omen + } + set_character_flag = omen_opt_good_relationship + } + if = { + limit = { + has_character_modifier = bad_relationship_omen + } + set_character_flag = omen_opt_bad_relationship + } + if = { + limit = { + has_character_modifier = good_power_omen + } + set_character_flag = omen_opt_good_power + } + if = { + limit = { + has_character_modifier = bad_power_omen + } + set_character_flag = omen_opt_bad_power + } + remove_scrying_omen_modifiers_effect = yes + } + + option = { + name = EVTOPTA_MNM_1227 + custom_tooltip = { text = EVTOPTA_MNM_1227_TT } + + if = { limit = { has_character_flag = omen_opt_good_battle } + tooltip = { + remove_character_modifier = good_battle_omen + } + } + if = { limit = { has_character_flag = omen_opt_good_relationship } + tooltip = { + remove_character_modifier = good_relationship_omen + } + } + if = { limit = { has_character_flag = omen_opt_good_power } + tooltip = { + remove_character_modifier = good_power_omen + } + } + if = { limit = { has_character_flag = omen_opt_bad_battle } + tooltip = { + remove_character_modifier = bad_battle_omen + } + } + if = { limit = { has_character_flag = omen_opt_bad_relationship } + tooltip = { + remove_character_modifier = bad_relationship_omen + } + } + if = { limit = { has_character_flag = omen_opt_bad_power } + tooltip = { + remove_character_modifier = bad_power_omen + } + } + + clr_character_flag = omen_opt_good_battle + clr_character_flag = omen_opt_bad_battle + clr_character_flag = omen_opt_good_relationship + clr_character_flag = omen_opt_bad_relationship + clr_character_flag = omen_opt_good_power + clr_character_flag = omen_opt_bad_power + } +} +######################## /end of Scrying events ######################## + +### POWER: Make Horoscope #### +character_event = { # You prepare the horoscope (for horoscope_maker) + id = MNM.1250 + desc = EVTDESC_MNM_1250 + picture = GFX_evt_secluded_in_prayer + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + has_dlc = "Mystics" + } + + immediate = { + save_event_target_as = horoscope_maker + event_target:horoscope_child = { + set_character_flag = horoscope_path_1 #they are destined for grandeur + } + } + + option = { # "Come what may" + name = EVTOPTA_MNM_1250 + custom_tooltip = { text = EVTOPTA_MNM_1250_TT } + } + + after = { + hidden_effect = { + event_target:horoscope_child = { + set_variable = { which = horoscope_destiny_points value = 0 } # to track truthfulness of horoscope + set_character_flag = horoscope_destiny_revealed # to track and handle horoscope_maker dying + character_event = { id = MNM.1297 days = 5 } # Gating event + } + } + } +} + +character_event = { #Child is destined for grandeur (for horoscope_maker) + id = MNM.1251 + picture = GFX_evt_secluded_in_prayer + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + has_dlc = "Mystics" + } + + immediate = { + hidden_effect = { + event_target:horoscope_child = { + random_list = { + 10 = { + set_character_flag = destined_steward + } + 10 = { + set_character_flag = destined_fighter + } + 10 = { + set_character_flag = destined_diplomat + } + 10 = { + set_character_flag = destined_schemer + } + 10 = { + set_character_flag = destined_scholar + } + } + } + } + } + + desc = { + trigger = { event_target:horoscope_child = { has_character_flag = destined_steward } } + text = EVTDESC_MNM_1251_steward + } + desc = { + trigger = { event_target:horoscope_child = { has_character_flag = destined_fighter } } + text = EVTDESC_MNM_1251_fighter + } + desc = { + trigger = { event_target:horoscope_child = { has_character_flag = destined_diplomat } } + text = EVTDESC_MNM_1251_diplomat + } + desc = { + trigger = { event_target:horoscope_child = { has_character_flag = destined_schemer } } + text = EVTDESC_MNM_1251_schemer + } + desc = { + trigger = { event_target:horoscope_child = { has_character_flag = destined_scholar } } + text = EVTDESC_MNM_1251_scholar + } + + option = { # This is exactly what I want for them + name = EVTOPTA_MNM_1251 + custom_tooltip = { text = EVTOPTA_MNM_1251_TT } + event_target:horoscope_child = { + set_character_flag = encouraged_horoscope_pattern + } + hidden_effect = { event_target:horoscope_child = { change_variable = { which = horoscope_destiny_points value = 5 } } } # increase likelyhood of fulfilling horoscope... + } + option = { # We need to discourage these tendencies + name = EVTOPTB_MNM_1251 + custom_tooltip = { text = EVTOPTB_MNM_1251_TT } + event_target:horoscope_child = { + set_character_flag = discouraged_horoscope_pattern + } + hidden_effect = { event_target:horoscope_child = { change_variable = { which = horoscope_destiny_points value = -5 } } } # decrease likelyhood of fulfilling horoscope... + } + + after = { + hidden_effect = { + event_target:horoscope_child = { + if = { limit = { ROOT = { is_female = yes } } + set_character_flag = horoscope_maker_is_mother + } + if = { limit = { ROOT = { is_female = no } } + set_character_flag = horoscope_maker_is_father + } + + set_character_flag = horoscope_child_receives_horoscope + character_event = { id = MNM.1297 days = 60 } #gating event, then notify child of this + } + } + } +} + +character_event = { # Child receives horoscope (for horoscope_child) + id = MNM.1252 + picture = GFX_evt_gathering_of_minds + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + has_dlc = "Mystics" + } + + desc = { + trigger = { + has_character_flag = encouraged_horoscope_pattern + NOT = { has_character_flag = horoscope_maker_died } + } + text = EVTDESC_MNM_1252_A + } + desc = { + trigger = { + has_character_flag = discouraged_horoscope_pattern + NOT = { has_character_flag = horoscope_maker_died } + } + text = EVTDESC_MNM_1252_B + } + desc = { + trigger = { + has_character_flag = encouraged_horoscope_pattern + has_character_flag = horoscope_maker_died + } + text = EVTDESC_MNM_1252_C + } + desc = { + trigger = { + has_character_flag = discouraged_horoscope_pattern + has_character_flag = horoscope_maker_died + } + text = EVTDESC_MNM_1252_D + } + + option = { # chain continues (if horoscope_maker lives) + name = { + text = EVTOPTA_MNM_1252_1 # I wouldn't mind being great at something + trigger = { has_character_flag = encouraged_horoscope_pattern } + } + name = { + text = EVTOPTA_MNM_1252_2 # I hope I didn't do anything wrong + trigger = { has_character_flag = discouraged_horoscope_pattern } + } + custom_tooltip = { text = EVTOPTA_MNM_1252_TT } #You try to put it out of your mind + + hidden_effect = { character_event = { id = MNM.1297 days = 10 } } #send gating event before next step... + set_horoscope_modifier_effect = yes + + trigger = { NOT = { has_character_flag = horoscope_maker_died } } + } + option = { # - END (if horoscope_maker is dead) + name = { + text = EVTOPTB_MNM_1252_1 #I wonder what they saw + trigger = { has_character_flag = encouraged_horoscope_pattern } + } + name = { + text = EVTOPTB_MNM_1252_2 # that certainly takes the pressure off! + trigger = { has_character_flag = discouraged_horoscope_pattern } + } + custom_tooltip = { text = EVTOPTA_MNM_1252_TT } #You try to put it out of your mind + hidden_effect = { clean_up_horoscope_effect = yes } + trigger = { has_character_flag = horoscope_maker_died } + } +} + +character_event = { # You receive update (for horoscope_maker, kid has to be over 6 years old?) + id = MNM.1253 + picture = GFX_evt_gathering_of_minds + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + event_target:horoscope_child = { is_alive = yes } + society_member_of = hermetics + } + + desc = { + trigger = { event_target:horoscope_child = { has_character_flag = destined_steward } } + text = EVTDESC_MNM_1253_steward + } + desc = { + trigger = { event_target:horoscope_child = { has_character_flag = destined_fighter } } + text = EVTDESC_MNM_1253_fighter + } + desc = { + trigger = { event_target:horoscope_child = { has_character_flag = destined_diplomat } } + text = EVTDESC_MNM_1253_diplomat + } + desc = { + trigger = { event_target:horoscope_child = { has_character_flag = destined_schemer } } + text = EVTDESC_MNM_1253_schemer + } + desc = { + trigger = { event_target:horoscope_child = { has_character_flag = destined_scholar } } + text = EVTDESC_MNM_1253_scholar + } + + option = { + name = EVTOPTA_MNM_1253 #This is great! Just as the stars predicted... + custom_tooltip = { text = EVTOPTA_MNM_1253_TT } + hidden_effect = { event_target:horoscope_child = { change_variable = { which = horoscope_destiny_points value = 3 } } } # increase likelyhood of fulfilling horoscope... + + trigger = { event_target:horoscope_child = { has_character_flag = encouraged_horoscope_pattern } } + } + option = { + name = EVTOPTB_MNM_1253 # This is not so great. This is not a path I want for them... + custom_tooltip = { text = EVTOPTB_MNM_1253_TT } + hidden_effect = { event_target:horoscope_child = { change_variable = { which = horoscope_destiny_points value = -7 } } } # decrease likelyhood of fulfilling horoscope... + + trigger = { event_target:horoscope_child = { has_character_flag = encouraged_horoscope_pattern } } + } + option = { + name = EVTOPTC_MNM_1253 #This is not so terrible, I guess. In spite of my doubts... + custom_tooltip = { text = EVTOPTC_MNM_1253_TT } + hidden_effect = { event_target:horoscope_child = { change_variable = { which = horoscope_destiny_points value = 3 } } } # increase likelyhood of fulfilling horoscope... + + trigger = { event_target:horoscope_child = { has_character_flag = discouraged_horoscope_pattern } } + } + option = { + name = EVTOPTD_MNM_1253 #This is terrible! Still not at ALL what I want for them...! + custom_tooltip = { text = EVTOPTD_MNM_1253_TT } + hidden_effect = { event_target:horoscope_child = { change_variable = { which = horoscope_destiny_points value = -7 } } } # decrease likelyhood of fulfilling horoscope... + + trigger = { event_target:horoscope_child = { has_character_flag = discouraged_horoscope_pattern } } + } + after = { + hidden_effect = { + event_target:horoscope_child = { character_event = { id = MNM.1297 days = 10 } } + } + } +} + +character_event = { # Child contemplates their destiny - is this what they want? (for horoscope_child) + id = MNM.1254 + picture = GFX_evt_ritual_scroll + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + is_alive = yes + any_courtier = { + is_adult = yes + prisoner = no + } + } + + immediate = { + any_courtier = { + limit = { is_adult = yes prisoner = no } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + if = { limit = { has_guardian = yes } + trigger_switch = { # finds an appropriate inspiring adult... + on_trigger = has_character_flag + destined_steward = { + any_courtier = { + limit = { is_adult = yes prisoner = no is_guardian = ROOT } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no stewardship = 15 is_guardian = ROOT } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no stewardship = 15 has_education_stewardship_trigger = yes } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no stewardship = 15 has_education_stewardship_trigger = yes has_top_tier_education_trait_trigger = yes } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + } + destined_fighter = { + any_courtier = { + limit = { is_adult = yes prisoner = no is_guardian = ROOT } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no martial = 15 is_guardian = ROOT } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no martial = 15 has_education_martial_trigger = yes } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no martial = 15 has_education_martial_trigger = yes has_top_tier_education_trait_trigger = yes } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + } + destined_diplomat = { + any_courtier = { + limit = { is_adult = yes prisoner = no is_guardian = ROOT } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no diplomacy = 15 is_guardian = ROOT } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no diplomacy = 15 has_education_diplomacy_trigger = yes } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no diplomacy = 15 has_education_diplomacy_trigger = yes has_top_tier_education_trait_trigger = yes } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + } + destined_schemer = { + any_courtier = { + limit = { is_adult = yes prisoner = no is_guardian = ROOT } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no intrigue = 15 is_guardian = ROOT } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no intrigue = 15 has_education_intrigue_trigger = yes } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no intrigue = 15 has_education_intrigue_trigger = yes has_top_tier_education_trait_trigger = yes } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + } + destined_scholar = { + any_courtier = { + limit = { is_adult = yes prisoner = no is_guardian = ROOT } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no learning = 15 is_guardian = ROOT } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no learning = 15 has_education_learning_trigger = yes } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no learning = 15 has_education_learning_trigger = yes has_top_tier_education_trait_trigger = yes } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + } + } + } + if = { limit = { has_guardian = no } + trigger_switch = { # finds an appropriate inspiring adult... + on_trigger = has_character_flag + destined_steward = { + any_courtier = { + limit = { is_adult = yes prisoner = no } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no stewardship = 15 } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no stewardship = 15 has_education_stewardship_trigger = yes } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no stewardship = 15 has_education_stewardship_trigger = yes has_top_tier_education_trait_trigger = yes } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + } + destined_fighter = { + any_courtier = { + limit = { is_adult = yes prisoner = no } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no martial = 15 } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no martial = 15 has_education_martial_trigger = yes } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no martial = 15 has_education_martial_trigger = yes has_top_tier_education_trait_trigger = yes } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + } + destined_diplomat = { + any_courtier = { + limit = { is_adult = yes prisoner = no } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no diplomacy = 15 } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no diplomacy = 15 has_education_diplomacy_trigger = yes } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no diplomacy = 15 has_education_diplomacy_trigger = yes has_top_tier_education_trait_trigger = yes } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + } + destined_schemer = { + any_courtier = { + limit = { is_adult = yes prisoner = no } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no intrigue = 15 } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no intrigue = 15 has_education_intrigue_trigger = yes } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no intrigue = 15 has_education_intrigue_trigger = yes has_top_tier_education_trait_trigger = yes } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + } + destined_scholar = { + any_courtier = { + limit = { is_adult = yes prisoner = no } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no learning = 15 } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no learning = 15 has_education_learning_trigger = yes } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + any_courtier = { + limit = { is_adult = yes prisoner = no learning = 15 has_education_learning_trigger = yes has_top_tier_education_trait_trigger = yes } + save_event_target_as = inspiring_adult + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + } + } + } + } + } + + desc = { + trigger = { event_target:horoscope_child = { has_character_flag = destined_steward } } + text = EVTDESC_MNM_1254_steward + } + desc = { + trigger = { event_target:horoscope_child = { has_character_flag = destined_fighter } } + text = EVTDESC_MNM_1254_fighter + } + desc = { + trigger = { event_target:horoscope_child = { has_character_flag = destined_diplomat } } + text = EVTDESC_MNM_1254_diplomat + } + desc = { + trigger = { event_target:horoscope_child = { has_character_flag = destined_schemer } } + text = EVTDESC_MNM_1254_schemer + } + desc = { + trigger = { event_target:horoscope_child = { has_character_flag = destined_scholar } } + text = EVTDESC_MNM_1254_scholar + } + + option = { + name = EVTOPTA_MNM_1254 # I feel like this is what I am MEANT to be doing. Just as [parent's] horoscope predicted... + hidden_effect = { change_variable = { which = horoscope_destiny_points value = 5 } } + set_character_flag = embraced_destiny + + event_target:inspiring_adult = { + opinion = { + modifier = opinion_delighted + who = ROOT + years = 10 + } + } + + ai_chance = { #If ai is already on the right track... + factor = 50 + modifier = { + factor = 1.5 + OR = { + AND = { + has_character_flag = destined_steward + OR = { trait = conscientious trait = fussy trait = curious } + } + AND = { + has_character_flag = destined_fighter + OR = { trait = rowdy trait = haughty } + } + AND = { + has_character_flag = destined_diplomat + OR = { trait = playful trait = affectionate } + } + AND = { + has_character_flag = destined_schemer + OR = { trait = willful trait = brooding trait = indolent } + } + AND = { + has_character_flag = destined_scholar + OR = { trait = idolizer trait = timid } + } + } + } + modifier = { + factor = 1.5 + OR = { + AND = { stewardship = 5 has_character_flag = destined_steward } + AND = { martial = 5 has_character_flag = destined_fighter } + AND = { diplomacy = 5 has_character_flag = destined_diplomat } + AND = { intrigue = 5 has_character_flag = destined_schemer } + AND = { learning = 5 has_character_flag = destined_scholar } + } + } + modifier = { + factor = 1.5 + OR = { + AND = { stewardship = 7 has_character_flag = destined_steward } + AND = { martial = 7 has_character_flag = destined_fighter } + AND = { diplomacy = 7 has_character_flag = destined_diplomat } + AND = { intrigue = 7 has_character_flag = destined_schemer } + AND = { learning = 7 has_character_flag = destined_scholar } + } + } + modifier = { + factor = 1.5 + OR = { + AND = { stewardship = 9 has_character_flag = destined_steward } + AND = { martial = 9 has_character_flag = destined_fighter } + AND = { diplomacy = 9 has_character_flag = destined_diplomat } + AND = { intrigue = 9 has_character_flag = destined_schemer } + AND = { learning = 9 has_character_flag = destined_scholar } + } + } + } + } + option = { + name = EVTOPTB_MNM_1254 # I don't think this is my path... + + ai_chance = { # AI shouldn't pick this... + factor = 30 + } + + random = { + chance = 50 + add_trait = stressed + hidden_tooltip = { + character_event = { + id = 38282 #Notify Stressed + } + } + } + + hidden_effect = { change_variable = { which = horoscope_destiny_points value = -5 } } + set_character_flag = refused_destiny + } + + after = { + hidden_effect = { + character_event = { id = MNM.1297 days = 100 } + } + } +} + +character_event = { # Parent receives update about how the child is taking to their destiny (for horoscope_maker) + id = MNM.1255 + picture = GFX_evt_gathering_of_minds + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + event_target:horoscope_child = { is_alive = yes } + society_member_of = hermetics + } + + desc = { + text = EVTDESC_MNM_1255_A + trigger = { event_target:horoscope_child = { has_character_flag = encouraged_horoscope_pattern has_character_flag = embraced_destiny } } + } + desc = { + text = EVTDESC_MNM_1255_B + trigger = { event_target:horoscope_child = { has_character_flag = discouraged_horoscope_pattern has_character_flag = embraced_destiny } } + } + desc = { + text = EVTDESC_MNM_1255_C + trigger = { event_target:horoscope_child = { has_character_flag = encouraged_horoscope_pattern has_character_flag = refused_destiny } } + } + desc = { + text = EVTDESC_MNM_1255_D + trigger = { event_target:horoscope_child = { has_character_flag = discouraged_horoscope_pattern has_character_flag = refused_destiny } } + } + + option = { + name = EVTOPTA_MNM_1255 # Good! I believe the heavens have a plan for [horoscope_child.GetTitledFirstName] + custom_tooltip = { text = EVTOPTA_MNM_1255_TT } + hidden_effect = { + event_target:horoscope_child = { + change_variable = { which = horoscope_destiny_points value = 2 } + character_event = { id = MNM.1297 days = 30 } + } + } + } + option = { + name = EVTOPTB_MNM_1255 # Actually, I think the stars have something else in store for my [horoscope_child.GetDaugtherSon]. + custom_tooltip = { text = EVTOPTB_MNM_1255_TT } + hidden_effect = { + event_target:horoscope_child = { + change_variable = { which = horoscope_destiny_points value = -2 } + character_event = { id = MNM.1297 days = 30 } + } + } + } +} + +character_event = { # Upgrade modifiers (for horoscope_child, fired from on_adulthood) + id = MNM.1269 + hide_window = yes + is_triggered_only = yes + + trigger = { + has_dlc = "Mystics" + has_childhood_horoscope_modifier_trigger = yes + NOT = { has_character_flag = avoided_destiny } + } + option = { + set_horoscope_modifier_effect = yes + } +} + +character_event = { # Destiny fulfilled (for horoscope_child) + id = MNM.1270 + picture = GFX_evt_state_diplomacy + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + desc = { + trigger = { event_target:horoscope_child = { has_character_flag = encouraged_horoscope_pattern has_character_flag = embraced_destiny } } + text = EVTDESC_MNM_1270_A + } + desc = { + trigger = { event_target:horoscope_child = { has_character_flag = discouraged_horoscope_pattern has_character_flag = embraced_destiny } } + text = EVTDESC_MNM_1270_B + } + desc = { + trigger = { event_target:horoscope_child = { has_character_flag = encouraged_horoscope_pattern has_character_flag = refused_destiny } } + text = EVTDESC_MNM_1270_C + } + desc = { + trigger = { event_target:horoscope_child = { has_character_flag = discouraged_horoscope_pattern has_character_flag = refused_destiny } } + text = EVTDESC_MNM_1270_D + } + + option = { + name = EVTOPTA_MNM_1270 # Destiny fulfilled + + trigger_switch = { + on_trigger = has_character_flag + destined_steward = { + if = { limit = { has_education_stewardship_trigger = yes } + upgrade_education_effect = yes + set_character_flag = upgraded_stewardship + } + if = { limit = { has_education_stewardship_trigger = no } + change_stewardship = 1 + set_character_flag = stewardship_1 + } + } + destined_fighter = { + if = { limit = { has_education_martial_trigger = yes } + upgrade_education_effect = yes + set_character_flag = upgraded_martial + } + if = { limit = { has_education_martial_trigger = no } + change_martial = 1 + set_character_flag = martial_1 + } + } + destined_diplomat = { + if = { limit = { has_education_diplomacy_trigger = yes } + upgrade_education_effect = yes + set_character_flag = upgraded_diplomacy + } + if = { limit = { has_education_diplomacy_trigger = no } + change_diplomacy = 1 + set_character_flag = diplomacy_1 + } + } + destined_schemer = { + if = { limit = { has_education_intrigue_trigger = yes } + upgrade_education_effect = yes + set_character_flag = upgraded_intrigue + } + if = { limit = { has_education_intrigue_trigger = no } + change_intrigue = 1 + set_character_flag = intrigue_1 + } + } + destined_scholar = { + if = { limit = { has_education_learning_trigger = yes } + upgrade_education_effect = yes + set_character_flag = upgraded_learning + } + if = { limit = { has_education_learning_trigger = no } + change_learning = 1 + set_character_flag = learning_1 + } + } + } + trigger = { has_top_tier_education_trait_trigger = no } + } + option = { + name = EVTOPTB_MNM_1270 # Destiny fulfilled (already maxed "correct" education) + trigger_switch = { + on_trigger = has_character_flag + destined_steward = { + if = { limit = { has_education_stewardship_trigger = yes } + change_stewardship = 2 + set_character_flag = stewardship_2 + } + if = { limit = { has_education_stewardship_trigger = no } + change_stewardship = 1 + set_character_flag = stewardship_1 + } + } + destined_fighter = { + if = { limit = { has_education_martial_trigger = yes } + change_martial = 2 + set_character_flag = martial_2 + } + if = { limit = { has_education_martial_trigger = no } + change_martial = 1 + set_character_flag = martial_1 + } + } + destined_diplomat = { + if = { limit = { has_education_diplomacy_trigger = yes } + change_diplomacy = 2 + set_character_flag = diplomacy_2 + } + if = { limit = { has_education_diplomacy_trigger = no } + change_diplomacy = 1 + set_character_flag = diplomacy_1 + } + } + destined_schemer = { + if = { limit = { has_education_intrigue_trigger = yes } + change_intrigue = 2 + set_character_flag = intrigue_2 + } + if = { limit = { has_education_intrigue_trigger = no } + change_intrigue = 1 + set_character_flag = intrigue_1 + } + } + destined_scholar = { + if = { limit = { has_education_learning_trigger = yes } + change_learning = 2 + set_character_flag = learning_2 + } + if = { limit = { has_education_learning_trigger = no } + change_learning = 1 + set_character_flag = learning_1 + } + } + } + trigger = { has_top_tier_education_trait_trigger = yes } + } + after = { + hidden_effect = { + event_target:horoscope_maker = { + set_character_flag = child_fulfilled_destiny_flag + character_event = { id = MNM.1265 } + } + clean_up_horoscope_effect = yes + if = { + limit = { event_target:horoscope_maker = { NOT = { is_alive = yes } } } + clr_character_flag = martial_1 + clr_character_flag = martial_2 + clr_character_flag = diplomacy_1 + clr_character_flag = diplomacy_2 + clr_character_flag = stewardship_1 + clr_character_flag = stewardship_2 + clr_character_flag = intrigue_1 + clr_character_flag = intrigue_2 + clr_character_flag = learning_1 + clr_character_flag = learning_2 + clr_character_flag = upgraded_martial + clr_character_flag = upgraded_diplomacy + clr_character_flag = upgraded_stewardship + clr_character_flag = upgraded_intrigue + clr_character_flag = upgraded_learning + } + } + } +} + +character_event = { #Destiny avoided/backfired (for horoscope_child) + id = MNM.1271 + picture = GFX_evt_secluded_in_prayer + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + has_dlc = "Mystics" + } + + immediate = { + set_character_flag = avoided_destiny + } + + desc = { + trigger = { has_character_flag = horoscope_maker_died } + text = EVTDESC_MNM_1271_A + } + desc = { + trigger = { NOT = { has_character_flag = horoscope_maker_died } } + text = EVTDESC_MNM_1271_B + } + + option = { + name = EVTOPTA_MNM_1271 # I always had mixed feelings about this + set_horoscope_modifier_effect = yes + + } + after = { + hidden_effect = { + event_target:horoscope_maker = { + set_character_flag = child_avoided_destiny_flag + character_event = { id = MNM.1265 } + } + clean_up_horoscope_effect = yes + } + } +} + +character_event = { #Final follow-up for parent + id = MNM.1265 + picture = GFX_evt_state_diplomacy + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + trigger = { + society_member_of = hermetics + } + + desc = { + trigger = { has_character_flag = child_avoided_destiny_flag } + text = final_horoscope_outcome_for_parent_desc_1 + } + desc = { + trigger = { has_character_flag = child_fulfilled_destiny_flag } + text = final_horoscope_outcome_for_parent_desc_2 + } + + option = { + name = fina_horoscope_outcome_for_parent_opt + + event_target:horoscope_child = { #to show effects achieved for kid... + show_scope_change = no + trigger_switch = { + on_trigger = has_character_flag + martial_1 = { custom_tooltip = { text = improved_martial_1_tt } } + martial_2 = { custom_tooltip = { text = improved_martial_2_tt } } + diplomacy_1 = { custom_tooltip = { text = improved_diplo_1_tt } } + diplomacy_2 = { custom_tooltip = { text = improved_diplo_2_tt } } + stewardship_1 = { custom_tooltip = { text = improved_stew_1_tt } } + stewardship_2 = { custom_tooltip = { text = improved_stew_2_tt } } + intrigue_1 = { custom_tooltip = { text = improved_int_1_tt } } + intrigue_2 = { custom_tooltip = { text = improved_int_2_tt } } + learning_1 = { custom_tooltip = { text = improved_learn_1_tt } } + learning_2 = { custom_tooltip = { text = improved_learn_2_tt } } + upgraded_martial = { custom_tooltip = { text = upgraded_martial_tt } } + upgraded_diplomacy = { custom_tooltip = { text = upgraded_diplo_tt } } + upgraded_stewardship = { custom_tooltip = { text = upgraded_stew_tt } } + upgraded_intrigue = { custom_tooltip = { text = upgraded_int_tt } } + upgraded_learning = { custom_tooltip = { text = upgraded_learn_tt } } + } + } + + clr_character_flag = child_fulfilled_destiny_flag + clr_character_flag = child_avoided_destiny_flag + + event_target:horoscope_child = { + clr_character_flag = martial_1 + clr_character_flag = martial_2 + clr_character_flag = diplomacy_1 + clr_character_flag = diplomacy_2 + clr_character_flag = stewardship_1 + clr_character_flag = stewardship_2 + clr_character_flag = intrigue_1 + clr_character_flag = intrigue_2 + clr_character_flag = learning_1 + clr_character_flag = learning_2 + clr_character_flag = upgraded_martial + clr_character_flag = upgraded_diplomacy + clr_character_flag = upgraded_stewardship + clr_character_flag = upgraded_intrigue + clr_character_flag = upgraded_learning + } + } +} + +character_event = { # gating event for the horoscope_child (to check status of horoscope_maker - alive or no?) + id = MNM.1297 + hide_window = yes + is_triggered_only = yes + + trigger = { is_alive = yes } + + immediate = { + # If horoscope maker remains alive... + if = { + limit = { event_target:horoscope_maker = { is_alive = yes } } + trigger_switch = { + on_trigger = has_character_flag # to determine which stage is on-going + horoscope_destiny_revealed = { + clr_character_flag = horoscope_destiny_revealed + set_character_flag = horoscope_child_receives_horoscope + event_target:horoscope_maker = { character_event = { id = MNM.1251 } } # for maker: the child is destined for grandeur within [horoscope_child.GetHermeticsDestinedExpertise] + } + horoscope_child_receives_horoscope = { + if = { limit = { age = 4 } + clr_character_flag = horoscope_child_receives_horoscope + set_character_flag = horoscope_maker_receives_update + character_event = { id = MNM.1252 } # for child: child learns of their destiny + } + if = { limit = { NOT = { age = 4 } } + character_event = { id = MNM.1297 days = 365 } # for child: loops this to check back when old enough + } + } + horoscope_maker_receives_update = { + if = { limit = { age = 6 } + clr_character_flag = horoscope_maker_receives_update + set_character_flag = horoscope_child_contemplates_their_destiny + event_target:horoscope_maker = { character_event = { id = MNM.1253 } } # for maker: the child is showing signs of talent + } + if = { limit = { NOT = { age = 6 } } + character_event = { id = MNM.1297 days = 365 } # for child: loops this to check back when old enough + } + } + horoscope_child_contemplates_their_destiny = { + if = { limit = { age = 13 } + clr_character_flag = horoscope_child_contemplates_their_destiny + set_character_flag = horoscope_parent_is_informed + character_event = { id = MNM.1254 } # for child: the child contemplates their "destiny" + } + if = { limit = { NOT = { age = 13 } } + character_event = { id = MNM.1297 days = 365 } # for child: loops this to check back when old enough + } + } + horoscope_parent_is_informed = { + clr_character_flag = horoscope_parent_is_informed + set_character_flag = horoscope_child_evaluate + event_target:horoscope_maker = { character_event = { id = MNM.1255 } } # for maker: the child is embracing/or not their destiny + } + horoscope_child_evaluate = { + character_event = { id = MNM.1298 } # for child: begin evaluating + } + } + break = yes + } + + # If horoscope maker died along the chain... + + set_character_flag = horoscope_maker_died + + trigger_switch = { + on_trigger = has_character_flag # to determine which horoscope is on-going + + horoscope_destiny_revealed = { #nothing happens + clr_character_flag = horoscope_destiny_revealed + clean_up_horoscope_effect = yes + } + horoscope_child_receives_horoscope = { + clr_character_flag = horoscope_child_receives_horoscope + character_event = { id = MNM.1252 } # for child: child learns of their destiny (chain ENDS) + } + horoscope_maker_receives_update = { + clr_character_flag = horoscope_maker_receives_update + set_character_flag = horoscope_child_contemplates_their_destiny + character_event = { id = MNM.1297 days = 365 } # for child: skips ahead to next step + } + horoscope_child_contemplates_their_destiny = { + clr_character_flag = horoscope_child_contemplates_their_destiny + if = { limit = { age = 13 } + clr_character_flag = horoscope_child_contemplates_their_destiny + set_character_flag = horoscope_parent_is_informed + character_event = { id = MNM.1254 } # for child: the child contemplates their "destiny" + } + if = { limit = { NOT = { age = 13 } } + character_event = { id = MNM.1297 days = 365 } # for child: loops this to check back when old enough + } + } + horoscope_parent_is_informed = { + clr_character_flag = horoscope_parent_is_informed + set_character_flag = horoscope_child_evaluate + character_event = { id = MNM.1297 days = 365 } # for child: skips ahead to next step + } + horoscope_child_evaluate = { + character_event = { id = MNM.1298 } # for child: begin evaluating + } + } + } +} + +character_event = { # evaluate outcome (for horoscope_child, sends itself again if not fulfilled) + id = MNM.1298 + hide_window = yes + is_triggered_only = yes + + trigger = { + has_dlc = "Mystics" + } + + immediate = { + if = { + limit = { + age = 17 + OR = { + check_variable = { which = horoscope_destiny_points value = 10 } + NOT = { check_variable = { which = horoscope_destiny_points value = -10 } } + } + } + character_event = { id = MNM.1299 } #Destiny fulfilled/avoided + } + + if = { + limit = { + OR = { + NOT = { age = 17 } + NOR = { + check_variable = { which = horoscope_destiny_points value = 10 } + NOT = { check_variable = { which = horoscope_destiny_points value = -10 } } + } + } + } + + if = { + limit = { is_dumb_trigger = no } + change_variable = { which = horoscope_destiny_points value = 1 } #slowly ticking upwards + } + if = { + limit = { is_dumb_trigger = yes } + subtract_variable = { which = horoscope_destiny_points value = 1 } #slowly ticking downwards + } + + character_event = { id = MNM.1297 days = 365 random = 100 } #Destiny NOT fulfilled/avoided (send gating event again...) + } + } +} + +#Fulfilling/Avoiding Horoscope Destiny +character_event = { + id = MNM.1299 + hide_window = yes + + is_triggered_only = yes + + immediate = { + if = { + limit = { check_variable = { which = horoscope_destiny_points value = 10 } } + character_event = { id = MNM.1270 } # fulfilled destiny + } + if = { + limit = { NOT = { check_variable = { which = horoscope_destiny_points value = -10 } } } + character_event = { id = MNM.1271 } # avoided destiny + } + } +} + +###Power: Happiness potion +#Gating event to check amount of/which ingredients used +character_event = { + id = MNM.5115 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + desc = { + text = EVTDESC_MNM_5115_self + trigger = { has_character_flag = potion_target_is_self } + } + desc = { + text = EVTDESC_MNM_5115_other + trigger = { NOT = { has_character_flag = potion_target_is_self } } + } + + immediate = { + #Selects two ingredients... + select_random_hermetic_ingredient_effect = yes + select_random_hermetic_ingredient_effect = yes + } + + option = { # I will use ingredient 1 + name = { + text = EVTOPTA_MNM_5115_herb + trigger = { has_selected_herb_ingredient_1_trigger = yes } + } + name = { + text = EVTOPTA_MNM_5115_animal_part + trigger = { has_selected_animal_part_ingredient_1_trigger = yes } + } + name = { + text = EVTOPTA_MNM_5115_powder + trigger = { has_selected_powder_ingredient_1_trigger = yes } + } + name = { + text = EVTOPTA_MNM_5115_liquid + trigger = { has_selected_liquid_ingredient_1_trigger = yes } + } + calculate_health_level_of_ingredient_1_effect = yes + destroy_selected_ingredient_1_effect = yes + + ai_chance = { factor = 0 } + + trigger = { + selected_ingredient_1_and_2_are_same = no + } + } + + option = { # I will use ingredient 2 + name = { + text = EVTOPTB_MNM_5115_herb + trigger = { has_selected_herb_ingredient_2_trigger = yes } + } + name = { + text = EVTOPTB_MNM_5115_animal_part + trigger = { has_selected_animal_part_ingredient_2_trigger = yes } + } + name = { + text = EVTOPTB_MNM_5115_powder + trigger = { has_selected_powder_ingredient_2_trigger = yes } + } + name = { + text = EVTOPTB_MNM_5115_liquid + trigger = { has_selected_liquid_ingredient_2_trigger = yes } + } + calculate_health_level_of_ingredient_2_effect = yes + destroy_selected_ingredient_2_effect = yes + + ai_chance = { factor = 0 } + + trigger = { + has_selected_ingredient_2_trigger = yes + selected_ingredient_1_and_2_are_same = no + } + } + + option = { # I will only use one (IF DUPLICATE SELECTIONS) + name = { + text = EVTOPTC_MNM_5115_herb + trigger = { has_selected_herb_ingredient_1_trigger = yes } + } + name = { + text = EVTOPTC_MNM_5115_animal_part + trigger = { has_selected_animal_part_ingredient_1_trigger = yes } + } + name = { + text = EVTOPTC_MNM_5115_powder + trigger = { has_selected_powder_ingredient_1_trigger = yes } + } + name = { + text = EVTOPTC_MNM_5115_liquid + trigger = { has_selected_liquid_ingredient_1_trigger = yes } + } + calculate_health_level_of_ingredient_1_effect = yes + destroy_selected_ingredient_1_effect = yes + + ai_chance = { factor = 0 } + + trigger = { + has_selected_ingredient_2_trigger = yes + selected_ingredient_1_and_2_are_same = yes + } + } + + option = { #I will use ingredient 1 and 2 + name = { + text = EVTOPTD_MNM_5115 + trigger = { selected_ingredient_1_and_2_are_same = no } + } + name = { + text = EVTOPTD_MNM_5115_duplicate + trigger = { selected_ingredient_1_and_2_are_same = yes } + } + + calculate_health_level_of_ingredient_1_and_2_effect = yes + + destroy_selected_ingredient_1_and_2_effect = yes + + ai_chance = { factor = 25 } + + trigger = { + has_selected_ingredient_2_trigger = yes + } + } + + option = { #I'll throw a bit of everything in there! + name = EVTOPTE_MNM_5115 + custom_tooltip = { text = EVTOPTE_MNM_5115_tt } + + calculate_health_level_of_all_ingredients_effect = yes + + destroy_all_ingredients_effect = yes + + ai_chance = { factor = 100 } + + trigger = { + any_artifact = { + count = 4 + has_artifact_flag = ingredient + } + } + } + + after = { + remove_selection_of_ingredients_effect = yes + + hidden_effect = { + if = { + limit = { has_character_flag = potion_target_is_self } + character_event = { id = MNM.1400 days = 15 } + } + if = { + limit = { NOT = { has_character_flag = potion_target_is_self } } + clr_character_flag = preparing_potion + event_target:potion_target = { character_event = { id = MNM.1401 days = 10 } } + } + clr_character_flag = potion_target_is_self + } + } +} + +#Giving the potion to yourself +character_event = { + id = MNM.1400 + desc = EVTDESC_MNM_1400 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + hide_from = yes + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1400 + + if = { + limit = { trait = stressed } + remove_trait = stressed + } + if = { + limit = { trait = depressed } + remove_trait = depressed + } + if = { + limit = { has_character_modifier = apathetic } + remove_character_modifier = apathetic + } + + hidden_effect = { + clr_character_flag = preparing_potion + random = { + chance = 40 + modifier = { + factor = 0.5 + check_variable = { which = current_potion_quality value = 1 } + } + modifier = { + factor = 0.5 + check_variable = { which = current_potion_quality value = 2 } + } + modifier = { + factor = 0.5 + check_variable = { which = current_potion_quality value = 4 } + } + modifier = { + factor = 0.5 + check_variable = { which = current_potion_quality value = 6 } + } + modifier = { + factor = 1.1 + NOT = { check_variable = { which = current_potion_quality value = -1 } } + } + modifier = { + factor = 1.2 + NOT = { check_variable = { which = current_potion_quality value = -2 } } + } + modifier = { + factor = 1.3 + NOT = { check_variable = { which = current_potion_quality value = -4 } } + } + modifier = { + factor = 1.4 + NOT = { check_variable = { which = current_potion_quality value = -6 } } + } + character_event = { id = MNM.1403 days = 150 random = 600 } + } + + set_variable = { # Reset potion quality + which = current_potion_quality + value = 0 + } + } + } +} + +#The other person gets offered a potion +character_event = { + id = MNM.1401 + desc = EVTDESC_MNM_1401 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1401 + custom_tooltip = { text = EVTOPTA_MNM_1401_TT } + + tooltip = { + if = { + limit = { trait = stressed } + remove_trait = stressed + } + if = { + limit = { trait = depressed } + remove_trait = depressed + } + if = { + limit = { has_character_modifier = apathetic } + remove_character_modifier = apathetic + } + } + + hidden_effect = { FROM = { character_event = { id = MNM.1402 } } } + + ai_chance = { + factor = 50 + modifier = { + society_member_of = hermetics + factor = 3 + } + } + } + + option = { + name = EVTOPTB_MNM_1401 + custom_tooltip = { text = EVTOPTB_MNM_1401_TT } + + reverse_opinion = { + who = FROM + modifier = opinion_ungrateful + } + #Does not give follow-up because if a player recieves this, the sender is a courtier + + ai_chance = { + factor = 50 + modifier = { + trait = zealous + factor = 3 + } + modifier = { + liege = { character = FROM } #A player will always get a yes + factor = 0 + } + } + } +} + + +#Giving the potion to someone else +character_event = { + id = MNM.1402 + desc = EVTDESC_MNM_1402 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1402 + + + FROM = { + if = { + limit = { trait = stressed } + remove_trait = stressed + } + if = { + limit = { trait = depressed } + remove_trait = depressed + } + if = { + limit = { has_character_modifier = apathetic } + remove_character_modifier = apathetic + } + + hidden_effect = { + random = { + chance = 20 + modifier = { + factor = 0.5 + ROOT = { check_variable = { which = current_potion_quality value = 1 } } + } + modifier = { + factor = 0.5 + ROOT = { check_variable = { which = current_potion_quality value = 2 } } + } + modifier = { + factor = 0.5 + ROOT = { check_variable = { which = current_potion_quality value = 4 } } + } + modifier = { + factor = 0.5 + ROOT = { check_variable = { which = current_potion_quality value = 6 } } + } + modifier = { + factor = 1.1 + ROOT = { NOT = { check_variable = { which = current_potion_quality value = -1 } } } + } + modifier = { + factor = 1.2 + ROOT = { NOT = { check_variable = { which = current_potion_quality value = -2 } } } + } + modifier = { + factor = 1.3 + ROOT = { NOT = { check_variable = { which = current_potion_quality value = -4 } } } + } + modifier = { + factor = 1.4 + ROOT = { NOT = { check_variable = { which = current_potion_quality value = -6 } } } + } + character_event = { id = MNM.1403 days = 150 random = 600 } + } + } + } + hidden_effect = { + set_variable = { # Reset potion quality + which = current_potion_quality + value = 0 + } + } + + reverse_opinion = { + who = FROM + modifier = opinion_grateful + } + + } +} + +#The good effect didn't last +character_event = { + id = MNM.1403 + desc = EVTDESC_MNM_1403 + picture = GFX_evt_illness + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + trigger = { NOT = { trait = depressed } } + + option = { + name = EVTOPTA_MNM_1403 + + add_trait = depressed + + add_character_modifier = { + name = apathetic + years = 5 + } + } +} + +#################################################### +# MAGUS: POWER - Choose Hermetic Art/Lifestyle trait +#################################################### +# No Previous Lifestyle trait - Choose one +character_event = { + id = MNM.1900 + desc = EVTDESC_MNM_1900 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { # Choose Astrology/Scholar + name = EVTOPTA_MNM_1900 + + custom_tooltip = { + text = EVTOPTA_MNM_1900_TOOLTIP + character_event = { id = MNM.1902 days = 10 random = 20 } + } + + ai_chance = { + factor = 1 + modifier = { + factor = 5 + trait = cynical + } + modifier = { + factor = 3 + trait = erudite + } + } + } + + option = { # Choose Alchemy/Mystic + name = EVTOPTB_MNM_1900 + + custom_tooltip = { + text = EVTOPTB_MNM_1900_TOOLTIP + character_event = { id = MNM.1904 days = 10 random = 20 } + } + + ai_chance = { + factor = 1 + modifier = { + factor = 5 + trait = cynical + } + } + } + + option = { # Choose Theurgy/Theologian + name = EVTOPTC_MNM_1900 + + custom_tooltip = { + text = EVTOPTC_MNM_1900_TOOLTIP + character_event = { id = MNM.1906 days = 10 random = 20 } + } + + ai_chance = { + factor = 1 + modifier = { + factor = 5 + trait = zealous + } + } + } + + option = { # Change your mind + name = EVTOPTD_MNM_1900 + + add_society_currency_minor_effect = yes + clr_character_flag = choosing_hermetic_art + } +} + +# Has either Scholar, Mystic, or Theologian already - Replace the existing trait +character_event = { + id = MNM.1901 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + desc = { + trigger = { trait = scholar } + picture = GFX_evt_comet + text = EVTDESCA_MNM_1901 + } + + desc = { + trigger = { trait = mystic } + picture = GFX_evt_experiment + text = EVTDESCB_MNM_1901 + } + + desc = { + trigger = { trait = theologian } + picture = GFX_evt_secluded_in_prayer + text = EVTDESCC_MNM_1901 + } + + option = { # Change to Astrology/Scholar + name = EVTOPTA_MNM_1901 + + trigger = { + NOT = { trait = scholar } + } + + if = { + limit = { trait = mystic } + remove_trait = mystic + } + if = { + limit = { trait = theologian } + remove_trait = theologian + } + add_trait = scholar + clr_character_flag = choosing_hermetic_art + } + + option = { # Change to Alchemy/Mystic + name = EVTOPTB_MNM_1901 + + trigger = { + NOT = { trait = mystic } + } + + if = { + limit = { trait = scholar } + remove_trait = scholar + } + if = { + limit = { trait = theologian } + remove_trait = theologian + } + add_trait = mystic + clr_character_flag = choosing_hermetic_art + } + + option = { # Change to Theurgy/Theologian + name = EVTOPTC_MNM_1901 + + trigger = { + NOT = { trait = theologian } + } + + if = { + limit = { trait = scholar } + remove_trait = scholar + } + if = { + limit = { trait = mystic } + remove_trait = mystic + } + add_trait = theologian + clr_character_flag = choosing_hermetic_art + } + + option = { # Change your mind + name = EVTOPTD_MNM_1901 + + add_society_currency_minor_effect = yes + clr_character_flag = choosing_hermetic_art + } +} + +# Become Scholar +character_event = { + id = MNM.1902 + desc = EVTDESC_MNM_1902 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1902 + + if = { + limit = { + has_character_flag = owns_observatory_equipment + } + custom_tooltip = { + text = CUSTOM_TOOLTIP_OWNS_OBSERVATORY_EQUIPMENT + } + if = { + limit = { + NOT = { trait = diligent } + NOT = { trait = slothful } + } + add_trait = diligent + } + if = { + limit = { + trait = slothful + } + remove_trait = slothful + } + prestige = 25 + add_character_modifier = { + modifier = stargazer + duration = 3650 + } + } + if = { + limit = { + NOT = { has_character_flag = owns_observatory_equipment } + } + custom_tooltip = { + text = CUSTOM_TOOLTIP_BUY_OBSERVATORY_EQUIPMENT + } + set_character_flag = owns_observatory_equipment + scaled_wealth = { value = -0.4 min = -40 } + if = { + limit = { + NOT = { trait = diligent } + NOT = { trait = slothful } + } + add_trait = diligent + } + if = { + limit = { + trait = slothful + } + remove_trait = slothful + } + add_character_modifier = { + modifier = stargazer + duration = 3650 + } + } + character_event = { id = MNM.1903 days = 60 random = 30 } + + ai_chance = { + factor = 1 + } + } + + option = { + name = EVTOPTB_MNM_1902 + + random_list = { + 50 = { change_learning = 1 } + 40 = { + modifier = { + factor = 0 + trait = erudite + } + add_trait = erudite + } + 10 = { + modifier = { + factor = 0 + OR = { + trait = shrewd + trait = dull + } + } + add_trait = shrewd + } + } + character_event = { id = MNM.1903 days = 60 random = 30 } + + ai_chance = { + factor = 1 + modifier = { + factor = 2 + trait = erudite + } + } + } +} + +character_event = { + id = MNM.1903 + desc = EVTDESC_MNM_1903 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + desc = { + trigger = { } + text = EVTDESC_MNM_1903 + } + desc = { + trigger = { } + text = EVTDESC_MNM_1903 + } + option = { + name = EVTOPTA_MNM_1903 + + hidden_tooltip = { + if = { + limit = { + lifestyle_traits = 1 + } + remove_lifestyle_trait_effect = yes + } + } + add_trait = scholar + clr_character_flag = choosing_hermetic_art + } +} + +# Become Mystic +character_event = { + id = MNM.1904 + desc = EVTDESC_MNM_1904 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1904 + + if = { + limit = { + NOT = { trait = diligent } + NOT = { trait = slothful } + } + add_trait = diligent + } + if = { + limit = { + trait = slothful + } + remove_trait = slothful + } + add_character_modifier = { + modifier = experimenting_alchemist + duration = 3650 + } + character_event = { id = MNM.1905 days = 60 random = 30 } + + ai_chance = { + factor = 1 + modifier = { + factor = 4 + trait = brave + } + modifier = { + factor = 3 + trait = ambitious + } + } + } + + option = { + name = EVTOPTB_MNM_1904 + + if = { + limit = { + NOT = { trait = patient } + NOT = { trait = wroth } + } + add_trait = patient + } + if = { + limit = { + trait = wroth + } + remove_trait = wroth + } + add_character_modifier = { + modifier = theoretical_alchemist + duration = 3650 + } + character_event = { id = MNM.1905 days = 60 random = 30 } + + ai_chance = { + factor = 1 + modifier = { + factor = 4 + trait = craven + } + modifier = { + factor = 3 + trait = erudite + } + } + } +} + +character_event = { + id = MNM.1905 + desc = EVTDESC_MNM_1905 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1905 + + hidden_tooltip = { + if = { + limit = { + lifestyle_traits = 1 + } + remove_lifestyle_trait_effect = yes + } + } + add_trait = mystic + clr_character_flag = choosing_hermetic_art + } +} + +# Become Theologian +character_event = { + id = MNM.1906 + desc = EVTDESC_MNM_1906 + picture = GFX_evt_secluded_in_prayer + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1906 + + add_character_modifier = { + modifier = divine_spirit_alliance + duration = 3650 + } + character_event = { id = MNM.1907 days = 60 random = 30 } + + ai_chance = { + factor = 1 + modifier = { + factor = 4 + trait = zealous + } + modifier = { + factor = 4 + trait = honest + } + } + } + + option = { + name = EVTOPTB_MNM_1906 + + add_character_modifier = { + modifier = demon_alliance + duration = 3650 + } + character_event = { id = MNM.1907 days = 60 random = 30 } + + ai_chance = { + factor = 1 + modifier = { + factor = 5 + trait = deceitful + } + modifier = { + factor = 3 + trait = cynical + } + } + } +} + +character_event = { + id = MNM.1907 + desc = EVTDESC_MNM_1907 + picture = GFX_evt_secluded_in_prayer + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1907 + + hidden_tooltip = { + if = { + limit = { + lifestyle_traits = 1 + } + remove_lifestyle_trait_effect = yes + } + } + add_trait = theologian + clr_character_flag = choosing_hermetic_art + } +} +################ +# INTERACTIONS +################ +#The flags hidden_lab and very_hidden_lab can be used for events about stealing secrets from others/having your secrets stolen. + +#Interaction: Gathering of the Great Minds +character_event = { + id = MNM.1460 + desc = EVTDESC_MNM_1460 + picture = GFX_evt_gathering_of_minds + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + capable_only = yes + + trigger = { + society_member_of = hermetics + society_rank >= 2 + learning = 10 + OR = { + martial = 8 + stewardship = 8 + } + is_landed = yes + has_character_flag = built_laboratory + war = no + block_general_event_trigger = no + NOT = { has_character_flag = gathering_of_the_minds } + any_society_member = { + count = 4 + opinion = { who = ROOT value = 15 } + reverse_opinion = { who = ROOT value = 15 } + } + } + + option = { + name = EVTOPTA_MNM_1460 + custom_tooltip = { text = EVTOPTA_MNM_1460_TT } + scaled_wealth = { value = -0.5 min = -20 } + hidden_effect = { + character_event = { id = MNM.1461 days = 7 } + set_character_flag = gathering_of_the_minds + } + } + + option = { + name = EVTOPTB_MNM_1460 + } +} + +#Send out letters +character_event = { + id = MNM.1461 + desc = EVTDESC_MNM_1461 + picture = GFX_evt_recieve_letter + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + hide_from = yes + + trigger = { has_character_flag = gathering_of_the_minds } + + immediate = { + hidden_effect = { + #Guest of honor (1) + random_list = { + 50 = { + trigger = { society = { any_society_member = { is_friend = ROOT ai = yes } } } + society = { random_society_member = { limit = { is_friend = ROOT ai = yes } save_event_target_as = great_minds_guest_1 } } + } + 50 = { + trigger = { + society = { + any_society_member = { + ai = yes + OR = { + learning = 16 + society_rank == 4 + } + is_within_diplo_range = ROOT + opinion = { who = ROOT value = 20 } + reverse_opinion = { who = ROOT value = 20 } + } + } + } + society = { + random_society_member = { + limit = { + ai = yes + OR = { + learning = 16 + society_rank == 4 + } + is_within_diplo_range = ROOT + opinion = { who = ROOT value = 20 } + reverse_opinion = { who = ROOT value = 20 } + } + save_event_target_as = great_minds_guest_1 + } + } + } + 1 = { + society = { + random_society_member = { + limit = { + ai = yes + opinion = { who = ROOT value = 15 } + reverse_opinion = { who = ROOT value = 15 } + } + save_event_target_as = great_minds_guest_1 + } + } + } + } + } + + #Guest 2 + society = { + random_society_member = { + limit = { + ai = yes + NOT = { character = event_target:great_minds_guest_1 } + opinion = { who = ROOT value = 15 } + reverse_opinion = { who = ROOT value = 15 } + } + save_event_target_as = great_minds_guest_2 + } + } + + #Guest 3 and 4 + random_list = { + 70 = { #Your rival gets invited + trigger = { society = { any_society_member = { ai = yes NOT = { reverse_opinion = { who = ROOT value = -30 } } } } } + set_character_flag = disliked_hermetic_colleague + + society = { + random_society_member = { + limit = { ai = yes NOT = { reverse_opinion = { who = ROOT value = -30 } } } + save_event_target_as = great_minds_guest_4 + } + + random_society_member = { + limit = { + ai = yes + opinion = { who = event_target:great_minds_guest_4 value = 20 } + reverse_opinion = { who = ROOT value = 15 } + NOR = { + character = event_target:great_minds_guest_1 + character = event_target:great_minds_guest_2 + } + } + save_event_target_as = great_minds_guest_3 + } + } + if = { + limit = { NOT = { event_target:great_minds_guest_3 = { always = yes } } } + society = { + random_society_member = { + limit = { + ai = yes + NOR = { + character = event_target:great_minds_guest_1 + character = event_target:great_minds_guest_2 + } + opinion = { who = ROOT value = 15 } + reverse_opinion = { who = ROOT value = 15 } + } + save_event_target_as = great_minds_guest_3 + } + } + } + } + 30 = { #Nothing special + society = { + random_society_member = { + limit = { + ai = yes + NOR = { + character = event_target:great_minds_guest_1 + character = event_target:great_minds_guest_2 + } + opinion = { who = ROOT value = 15 } + reverse_opinion = { who = ROOT value = 15 } + } + save_event_target_as = great_minds_guest_3 + } + } + society = { + random_society_member = { + limit = { + ai = yes + NOR = { + character = event_target:great_minds_guest_1 + character = event_target:great_minds_guest_2 + character = event_target:great_minds_guest_3 + } + opinion = { who = ROOT value = 15 } + reverse_opinion = { who = ROOT value = 15 } + } + save_event_target_as = great_minds_guest_4 + } + } + } + } + } + + option = { + name = EVTOPTA_MNM_1461 + + reverse_opinion = { who = event_target:great_minds_guest_1 modifier = opinion_grateful_invitation months = 3 } + reverse_opinion = { who = event_target:great_minds_guest_2 modifier = opinion_grateful_invitation months = 3 } + reverse_opinion = { who = event_target:great_minds_guest_3 modifier = opinion_grateful_invitation months = 3 } + if = { + limit = { NOT = { has_character_flag = disliked_hermetic_colleague } } + reverse_opinion = { who = event_target:great_minds_guest_4 modifier = opinion_grateful_invitation months = 3 } + } + hidden_effect = { + if = { + limit = { has_character_flag = disliked_hermetic_colleague } + event_target:great_minds_guest_3 = { character_event = { id = MNM.1462 days = 10 } } + clr_character_flag = disliked_hermetic_colleague + break = yes + } + character_event = { id = MNM.1464 days = 30 } + } + } +} + +#Ping to rival inviter +character_event = { + id = MNM.1462 + hide_window = yes + is_triggered_only = yes + immediate = { FROM = { letter_event = { id = MNM.1463 } } } +} + +#Another guests wants rival to come +letter_event = { + id = MNM.1463 + desc = EVTDESC_MNM_1463 + border = GFX_event_letter_frame_religion + + is_triggered_only = yes + + trigger = { has_character_flag = gathering_of_the_minds } + + #Diplomatic excuse + option = { + trigger = { diplomacy = 12 } + tooltip_info = diplomacy + name = EVTOPTD_MNM_1463 + custom_tooltip = { text = EVTOPTD_MNM_1463_TT } + + clear_event_target = great_minds_guest_4 + + } + + #I guess they can come + option = { + name = EVTOPTA_MNM_1463 + custom_tooltip = { text = EVTOPTA_MNM_1463_TT } + + event_target:great_minds_guest_4 = { + set_character_flag = show_in_option + clr_character_flag = show_in_option + } + + reverse_opinion = { who = FROM modifier = opinion_grateful years = 3 } + } + + #I don't want them here + option = { + name = EVTOPTB_MNM_1463 + custom_tooltip = { text = EVTOPTB_MNM_1463_TT } + + clear_event_target = great_minds_guest_4 + + hidden_effect = { character_event = { id = MNM.1480 } } #Handles scandals + + reverse_opinion = { who = FROM modifier = opinion_very_disappointed years = 3 } + } + + #Neither are invited! + option = { + name = EVTOPTC_MNM_1463 + custom_tooltip = { text = EVTOPTC_MNM_1463_TT } + + clear_event_target = great_minds_guest_3 + clear_event_target = great_minds_guest_4 + + set_character_flag = hermetics_minor_scandal #Will be upgraded to major in 1480 + hidden_effect = { character_event = { id = MNM.1480 } } #Handles scandals + + reverse_opinion = { who = FROM modifier = opinion_offended years = 10 } + } + + after = { + hidden_effect = { character_event = { id = MNM.1464 days = 20 } } + } +} + +#You suggest what you make +character_event = { + id = MNM.1464 + desc = EVTDESC_MNM_1464 + picture = GFX_evt_gathering_of_minds + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + hide_from = yes + + trigger = { has_character_flag = gathering_of_the_minds } + + #Something for war (handgun, giant crossbow, plate armor) + option = { + trigger = { martial = 8 } + tooltip_info = martial + name = EVTOPTA_MNM_1464 + custom_tooltip = { text = EVTOPTA_MNM_1464_TT } + set_character_flag = war_invention + } + + #Something for prosperity (mill, compass, blast furnace) + option = { + trigger = { stewardship = 8 } + tooltip_info = stewardship + name = EVTOPTB_MNM_1464 + custom_tooltip = { text = EVTOPTB_MNM_1464_TT } + set_character_flag = prosperity_invention + } + + #Something for learning (glassess, cross staff, cipher disc) + option = { + tooltip_info = learning + name = EVTOPTD_MNM_1464 + custom_tooltip = { text = EVTOPTD_MNM_1464_TT } + set_character_flag = knowledge_invention + } + + after = { + hidden_effect = { + random_list = { + 50 = { + trigger = { + always = yes + OR = { + event_target:great_minds_guest_1 = { NOT = { opinion = { who = ROOT value = 10 } } } + event_target:great_minds_guest_1 = { is_dumb_trigger = yes } + event_target:great_minds_guest_1 = { trait = ambitious } + } + } + modifier = { is_rival = event_target:great_minds_guest_1 factor = 3 } + event_target:great_minds_guest_1 = { character_event = { id = MNM.1465 days = 3 } } + } + 50 = { + trigger = { + always = yes + OR = { + event_target:great_minds_guest_2 = { NOT = { opinion = { who = ROOT value = 10 } } } + event_target:great_minds_guest_2 = { is_dumb_trigger = yes } + event_target:great_minds_guest_2 = { trait = ambitious } + } + } + modifier = { is_rival = event_target:great_minds_guest_2 factor = 3 } + event_target:great_minds_guest_2 = { character_event = { id = MNM.1465 days = 3 } } + } + 50 = { + trigger = { + always = yes + OR = { + event_target:great_minds_guest_3 = { NOT = { opinion = { who = ROOT value = 10 } } } + event_target:great_minds_guest_3 = { is_dumb_trigger = yes } + event_target:great_minds_guest_3 = { trait = ambitious } + } + } + modifier = { is_rival = event_target:great_minds_guest_3 factor = 3 } + event_target:great_minds_guest_3 = { character_event = { id = MNM.1465 days = 3 } } + } + 50 = { + trigger = { + always = yes + OR = { + event_target:great_minds_guest_4 = { NOT = { opinion = { who = ROOT value = 10 } } } + event_target:great_minds_guest_4 = { is_dumb_trigger = yes } + event_target:great_minds_guest_4 = { trait = ambitious } + } + } + modifier = { is_rival = event_target:great_minds_guest_4 factor = 3 } + event_target:great_minds_guest_4 = { character_event = { id = MNM.1465 days = 3 } } + } + 50 = { #They agree + character_event = { id = MNM.1467 days = 3 } + } + } + } + } +} + + +#Someone protests (ping) +character_event = { + id = MNM.1465 + hide_window = yes + is_triggered_only = yes + immediate = { FROM = { character_event = { id = MNM.1466 } } } +} + +#Someone protests and has their own suggestion +character_event = { + id = MNM.1466 + desc = EVTDESC_MNM_1466 + picture = GFX_evt_quarrel + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + trigger = { has_character_flag = gathering_of_the_minds } + + immediate = { + FROM = { + random_list = { + 33 = { + trigger = { NOT = { ROOT = { has_character_flag = war_invention } } } + modifier = { has_education_martial_trigger = yes factor = 1.5 } + modifier = { has_lifestyle_martial_trigger = yes factor = 1.5 } + set_character_flag = war_invention + } + 33 = { + trigger = { NOT = { ROOT = { has_character_flag = prosperity_invention } } } + modifier = { has_education_stewardship_trigger = yes factor = 1.5 } + modifier = { has_lifestyle_stewardship_trigger = yes factor = 1.5 } + set_character_flag = prosperity_invention + } + 33 = { + trigger = { NOT = { ROOT = { has_character_flag = knowledge_invention } } } + modifier = { has_education_learning_trigger = yes factor = 1.5 } + modifier = { has_lifestyle_learning_trigger = yes factor = 1.5 } + set_character_flag = knowledge_invention + } + } + } + } + + #Debate them + option = { + trigger = { learning = 12 } + name = EVTOPTA_MNM_1466 + custom_tooltip = { text = EVTOPTA_MNM_1466_TT } + + random_list = { + 50 = { #You win + modifier = { learning = 8 factor = 1.2 } + modifier = { learning = 10 factor = 1.2 } + modifier = { learning = 12 factor = 1.2 } + modifier = { learning = 14 factor = 1.2 } + modifier = { learning = 16 factor = 1.2 } + modifier = { learning = 18 factor = 1.2 } + modifier = { learning = 20 factor = 1.2 } + custom_tooltip = { text = EVTOPTA_MNM_1466_SUCCESS_TT } + hidden_effect = { character_event = { id = MNM.1468 days = 7 } } + } + 50 = { #They win + modifier = { FROM = { learning = 8 } factor = 1.2 } + modifier = { FROM = { learning = 10 } factor = 1.2 } + modifier = { FROM = { learning = 12 } factor = 1.2 } + modifier = { FROM = { learning = 14 } factor = 1.2 } + modifier = { FROM = { learning = 16 } factor = 1.2 } + modifier = { FROM = { learning = 18 } factor = 1.2 } + modifier = { FROM = { learning = 20 } factor = 1.2 } + custom_tooltip = { text = EVTOPTA_MNM_1466_FAILURE_TT } + hidden_effect = { character_event = { id = MNM.1469 days = 7 } } + } + } + } + + #Agree, it begins + option = { + name = EVTOPTB_MNM_1466 + custom_tooltip = { text = EVTOPTB_MNM_1466_TT } + + hidden_effect = { + clr_character_flag = war_invention + clr_character_flag = prosperity_invention + clr_character_flag = knowledge_invention + + if = { + limit = { FROM = { has_character_flag = war_invention } } + FROM = { clr_character_flag = war_invention } + set_character_flag = war_invention + } + if = { + limit = { FROM = { has_character_flag = prosperity_invention } } + FROM = { clr_character_flag = prosperity_invention } + set_character_flag = prosperity_invention + } + if = { + limit = { FROM = { has_character_flag = knowledge_invention } } + FROM = { clr_character_flag = knowledge_invention } + set_character_flag = knowledge_invention + } + } + hidden_effect = { character_event = { id = MNM.1470 days = 30 } } + } + + #Forbid, it begins + option = { + name = EVTOPTC_MNM_1466 + custom_tooltip = { text = EVTOPTC_MNM_1466_TT } + + reverse_opinion = { who = event_target:great_minds_guest_1 modifier = opinion_unreasonable years = 5 } + reverse_opinion = { who = event_target:great_minds_guest_2 modifier = opinion_unreasonable years = 5 } + if = { + limit = { event_target:great_minds_guest_3 = { always = yes } } + reverse_opinion = { who = event_target:great_minds_guest_3 modifier = opinion_unreasonable years = 5 } + } + if = { + limit = { event_target:great_minds_guest_4 = { always = yes } } + reverse_opinion = { who = event_target:great_minds_guest_4 modifier = opinion_unreasonable years = 5 } + } + hidden_effect = { + character_event = { id = MNM.1480 } + character_event = { id = MNM.1470 days = 30 } + } + FROM = { + clr_character_flag = war_invention + clr_character_flag = prosperity_invention + clr_character_flag = knowledge_invention + } + } +} + +#They agreed, it begins +character_event = { + id = MNM.1467 + desc = EVTDESC_MNM_1467 + picture = GFX_evt_gathering_of_minds + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1467 + custom_tooltip = { text = EVTOPTA_MNM_1467_TT } + + hidden_effect = { character_event = { id = MNM.1470 days = 30 } } + } +} + +#You won debate +character_event = { + id = MNM.1468 + desc = EVTDESC_MNM_1468 + picture = GFX_evt_religious_exultation + border = GFX_event_normal_frame_religion + + trigger = { has_character_flag = gathering_of_the_minds } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1468 + custom_tooltip = { text = EVTOPTA_MNM_1467_TT } + + add_society_currency_minor_effect = yes + + hidden_effect = { character_event = { id = MNM.1470 days = 30 } } + + FROMFROM = { + clr_character_flag = war_invention + clr_character_flag = prosperity_invention + clr_character_flag = knowledge_invention + } + } +} + +#You lost debate +character_event = { + id = MNM.1469 + desc = EVTDESC_MNM_1469 + picture = GFX_evt_rival_rulers + border = GFX_event_normal_frame_religion + + trigger = { has_character_flag = gathering_of_the_minds } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1469 + custom_tooltip = { text = EVTOPTA_MNM_1469_TT } + + prestige = -50 + + hidden_effect = { + clr_character_flag = war_invention + clr_character_flag = prosperity_invention + clr_character_flag = knowledge_invention + + if = { + limit = { FROMFROM = { has_character_flag = war_invention } } + FROMFROM = { clr_character_flag = war_invention } + set_character_flag = war_invention + } + if = { + limit = { FROMFROM = { has_character_flag = prosperity_invention } } + FROMFROM = { clr_character_flag = prosperity_invention } + set_character_flag = prosperity_invention + } + if = { + limit = { FROMFROM = { has_character_flag = knowledge_invention } } + FROMFROM = { clr_character_flag = knowledge_invention } + set_character_flag = knowledge_invention + } + } + + hidden_effect = { character_event = { id = MNM.1470 days = 30 } } + } +} + +#Risky or safe project +character_event = { + id = MNM.1470 + desc = EVTDESC_MNM_1470 + picture = GFX_evt_rival_rulers + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + hide_from = yes + + trigger = { has_character_flag = gathering_of_the_minds } + + #The safer + option = { + name = EVTOPTA_MNM_1470 + custom_tooltip = { text = EVTOPTA_MNM_1470_TT } + + reverse_opinion = { who = event_target:great_minds_guest_2 modifier = opinion_grateful years = 5 } + reverse_opinion = { who = event_target:great_minds_guest_1 modifier = opinion_disappointed years = 5 } + + hidden_effect = { set_character_flag = safe_invention } + } + + #The riskier + option = { + name = EVTOPTB_MNM_1470 + custom_tooltip = { text = EVTOPTB_MNM_1470_TT } + + reverse_opinion = { who = event_target:great_minds_guest_1 modifier = opinion_grateful years = 5 } + reverse_opinion = { who = event_target:great_minds_guest_2 modifier = opinion_disappointed years = 5 } + + hidden_effect = { set_character_flag = risky_invention } + } + + after = { + hidden_effect = { + event_target:great_minds_guest_1 = { + opinion = { who = event_target:great_minds_guest_1 modifier = opinion_argued years = 5 } + reverse_opinion = { who = event_target:great_minds_guest_1 modifier = opinion_argued years = 5 } + } + + #Things that might happen + random_list = { + 40 = { #People fight + trigger = { + society = { + any_society_member = { + OR = { + character = event_target:great_minds_guest_1 + character = event_target:great_minds_guest_2 + character = event_target:great_minds_guest_3 + character = event_target:great_minds_guest_4 + } + society = { + any_society_member = { + OR = { + character = event_target:great_minds_guest_1 + character = event_target:great_minds_guest_2 + character = event_target:great_minds_guest_3 + character = event_target:great_minds_guest_4 + } + NOT = { opinion = { who = PREVPREV value = 10 } } + } + } + } + } + } + society = { + random_society_member = { + limit = { + OR = { + character = event_target:great_minds_guest_1 + character = event_target:great_minds_guest_2 + character = event_target:great_minds_guest_3 + character = event_target:great_minds_guest_4 + } + society = { + any_society_member = { + OR = { + character = event_target:great_minds_guest_1 + character = event_target:great_minds_guest_2 + character = event_target:great_minds_guest_3 + character = event_target:great_minds_guest_4 + } + NOT = { opinion = { who = PREVPREV value = 10 } } + } + } + } + save_event_target_as = arguer_2 + society = { + random_society_member = { + limit = { + OR = { + character = event_target:great_minds_guest_1 + character = event_target:great_minds_guest_2 + character = event_target:great_minds_guest_3 + character = event_target:great_minds_guest_4 + } + NOT = { opinion = { who = PREVPREV value = 10 } } + } + save_event_target_as = arguer_1 + } + } + } + } + character_event = { id = MNM.1471 days = 20 random = 10 } + } + 35 = { #You agree with someone + trigger = { + OR = { + opinion = { who = event_target:great_minds_guest_1 value = 20 } + opinion = { who = event_target:great_minds_guest_2 value = 20 } + opinion = { who = event_target:great_minds_guest_3 value = 20 } + opinion = { who = event_target:great_minds_guest_4 value = 20 } + } + } + society = { + random_society_member = { + limit = { + OR = { + character = event_target:great_minds_guest_1 + character = event_target:great_minds_guest_2 + character = event_target:great_minds_guest_3 + character = event_target:great_minds_guest_4 + } + reverse_opinion = { who = ROOT value = 20 } + } + character_event = { id = MNM.1474 days = 20 random = 10 } + } + } + } + 25 = { #You have a brilliant insight + trigger = { learning = 12 } + modifier = { learning = 14 factor = 1.2 } + modifier = { learning = 16 factor = 1.2 } + modifier = { learning = 18 factor = 1.2 } + modifier = { has_character_modifier = divine_summoning_succeeded factor = 1.5 } + character_event = { id = MNM.1476 days = 20 random = 10 } + } + } + } + } +} + + +#Two people are arguing +character_event = { + id = MNM.1471 + desc = EVTDESC_MNM_1471 + picture = GFX_evt_quarrel + border = GFX_event_normal_frame_war + + is_triggered_only = yes + hide_from = yes + + trigger = { has_character_flag = gathering_of_the_minds } + + #Try to meddle + option = { + name = EVTOPTA_MNM_1471 + custom_tooltip = { text = EVTOPTA_MNM_1471_TT } + + random_list = { + 50 = { #It works + modifier = { society_rank >= 3 factor = 1.2 } + modifier = { + reverse_opinion = { who = event_target:arguer_1 value = 25 } + reverse_opinion = { who = event_target:arguer_2 value = 25 } + factor = 1.4 + } + modifier = { diplomacy = 12 factor = 1.2 } + modifier = { diplomacy = 14 factor = 1.2 } + modifier = { diplomacy = 16 factor = 1.2 } + custom_tooltip = { text = EVTOPTA_MNM_1471_SUCCESS_TT } + hidden_effect = { character_event = { id = MNM.1472 days = 5 } } + } + 50 = { #It didn't work + modifier = { NOT = { diplomacy = 10 } factor = 1.2 } + modifier = { has_unpleasant_personality_trigger = yes factor = 1.3 } + custom_tooltip = { text = EVTOPTA_MNM_1471_FAIL_TT } + hidden_effect = { character_event = { id = MNM.1473 days = 5 } } + } + } + } + + #Person 1 goes + option = { + name = EVTOPTB_MNM_1471 + custom_tooltip = { text = EVTOPTB_MNM_1471_TT } + + hidden_effect = { + if = { + limit = { event_target:arguer_1 = { character = event_target:great_minds_guest_1 } } + clear_event_target = great_minds_guest_1 + } + if = { + limit = { event_target:arguer_1 = { character = event_target:great_minds_guest_2 } } + clear_event_target = great_minds_guest_2 + } + if = { + limit = { event_target:arguer_1 = { character = event_target:great_minds_guest_3 } } + clear_event_target = great_minds_guest_3 + } + if = { + limit = { event_target:arguer_1 = { character = event_target:great_minds_guest_4 } } + clear_event_target = great_minds_guest_4 + } + + hidden_effect = { character_event = { id = MNM.1480 } } #Handles scandals + + + #After some time, end result + character_event = { id = MNM.1477 days = 30 random = 20 } + } + } + + #Person 2 goes + option = { + name = EVTOPTC_MNM_1471 + custom_tooltip = { text = EVTOPTC_MNM_1471_TT } + + hidden_effect = { + if = { + limit = { event_target:arguer_2 = { character = event_target:great_minds_guest_1 } } + clear_event_target = great_minds_guest_1 + } + if = { + limit = { event_target:arguer_2 = { character = event_target:great_minds_guest_2 } } + clear_event_target = great_minds_guest_2 + } + if = { + limit = { event_target:arguer_2 = { character = event_target:great_minds_guest_3 } } + clear_event_target = great_minds_guest_3 + } + if = { + limit = { event_target:arguer_2 = { character = event_target:great_minds_guest_4 } } + clear_event_target = great_minds_guest_4 + } + + hidden_effect = { character_event = { id = MNM.1480 } } #Handles scandals + + #After some time, end result + character_event = { id = MNM.1477 days = 30 random = 20 } + } + } +} + +#You managed to make the quarrelers make up +character_event = { + id = MNM.1472 + desc = EVTDESC_MNM_1472 + picture = GFX_evt_state_diplomacy + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + trigger = { has_character_flag = gathering_of_the_minds } + + option = { + name = EVTOPTA_MNM_1472 + custom_tooltip = { text = EVTOPTA_MNM_1472_TT } + + reverse_opinion = { + who = event_target:arguer_1 + modifier = opinion_reasonable + years = 5 + } + + reverse_opinion = { + who = event_target:arguer_2 + modifier = opinion_reasonable + years = 5 + } + + + hidden_effect = { + #After some time, end result + character_event = { id = MNM.1477 days = 30 random = 20 } + } + } +} + +#You fail to make the quarrelers make up +character_event = { + id = MNM.1473 + desc = EVTDESC_MNM_1473 + picture = GFX_evt_rival_rulers + border = GFX_event_normal_frame_war + + is_triggered_only = yes + + trigger = { has_character_flag = gathering_of_the_minds } + + option = { + name = EVTOPTA_MNM_1473 + custom_tooltip = { text = EVTOPTA_MNM_1473_TT } + + reverse_opinion = { + who = event_target:arguer_1 + modifier = opinion_unreasonable + years = 5 + } + + reverse_opinion = { + who = event_target:arguer_2 + modifier = opinion_unreasonable + years = 5 + } + + hidden_effect = { + #No one leaves because it is sure to end here + + clr_character_flag = hermetics_minor_scandal + set_character_flag = hermetics_major_scandal + hidden_effect = { character_event = { id = MNM.1480 } } #Handles scandals + + #After some time, end result + character_event = { id = MNM.1477 days = 30 random = 20 } + } + } +} + +#You agree with someone (ping) +character_event = { + id = MNM.1474 + hide_window = yes + is_triggered_only = yes + immediate = { FROM = { character_event = { id = MNM.1475 } } } +} + +#You agree with someone, you work well together +character_event = { + id = MNM.1475 + desc = EVTDESC_MNM_1475 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + trigger = { has_character_flag = gathering_of_the_minds } + + option = { + name = EVTOPTA_MNM_1475 + + hidden_effect = { + #After some time, end result + character_event = { id = MNM.1477 days = 30 random = 20 } + } + + if = { + limit = { + opinion = { who = FROM value = 40 } + reverse_opinion = { who = FROM value = 40 } + NOT = { is_friend = FROM } + } + add_friend = FROM + break = yes + } + reverse_opinion = { + who = FROM + modifier = opinion_great_minds + years = 10 + } + hidden_effect = { + opinion = { + who = FROM + modifier = opinion_great_minds + years = 10 + } + } + } +} + +#You have a brilliant insight +character_event = { + id = MNM.1476 + desc = EVTDESC_MNM_1476 + picture = GFX_evt_religious_exultation + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + hide_from = yes + + trigger = { has_character_flag = gathering_of_the_minds } + + option = { + name = EVTOPTA_MNM_1476 + custom_tooltip = { text = EVTOPTA_MNM_1476_TT } + + add_character_modifier = { + name = brilliant_insight + years = 5 + } + + set_character_flag = brilliant_insight + + + hidden_effect = { + #After some time, end result + character_event = { id = MNM.1477 days = 30 random = 20 } + } + } +} + +#Event to calculate outcome +character_event = { + id = MNM.1477 + hide_window = yes + is_triggered_only = yes + trigger = { has_character_flag = gathering_of_the_minds } + immediate = { + #Adds up everyone's learning + set_variable = { which = collective_learning value = 0 } + if = { + limit = { event_target:great_minds_guest_1 = { always = yes } } + export_to_variable = { which = collective_learning_temp value = learning who = event_target:great_minds_guest_1 } + change_variable = { which = collective_learning which = collective_learning_temp } + } + if = { + limit = { event_target:great_minds_guest_2 = { always = yes } } + export_to_variable = { which = collective_learning_temp value = learning who = event_target:great_minds_guest_2 } + change_variable = { which = collective_learning which = collective_learning_temp } + } + if = { + limit = { event_target:great_minds_guest_3 = { always = yes } } + export_to_variable = { which = collective_learning_temp value = learning who = event_target:great_minds_guest_3 } + change_variable = { which = collective_learning which = collective_learning_temp } + } + if = { + limit = { event_target:great_minds_guest_4 = { always = yes } } + export_to_variable = { which = collective_learning_temp value = learning who = event_target:great_minds_guest_4 } + change_variable = { which = collective_learning which = collective_learning_temp } + } + + + #Outcome + random_list = { + 20 = { #Best + trigger = { has_character_flag = risky_invention } + modifier = { learning = 10 factor = 1.3 } + modifier = { learning = 12 factor = 1.3 } + modifier = { learning = 14 factor = 1.3 } + modifier = { learning = 16 factor = 1.3 } + modifier = { learning = 18 factor = 1.3 } + modifier = { learning = 20 factor = 1.3 } + modifier = { has_character_flag = brilliant_insight factor = 100 } + modifier = { check_variable = { which = collective_learning value = 40 } factor = 1.4 } + modifier = { check_variable = { which = collective_learning value = 50 } factor = 1.4 } + modifier = { check_variable = { which = collective_learning value = 60 } factor = 1.4 } + set_character_flag = best_outcome + character_event = { id = MNM.1478 } + } + 30 = { #Good + modifier = { learning = 10 factor = 1.2 } + modifier = { learning = 12 factor = 1.2 } + modifier = { learning = 14 factor = 1.2 } + modifier = { learning = 16 factor = 1.2 } + modifier = { learning = 18 factor = 1.2 } + modifier = { learning = 20 factor = 1.2 } + modifier = { has_character_flag = brilliant_insight factor = 10 } + modifier = { check_variable = { which = collective_learning value = 40 } factor = 1.3 } + modifier = { check_variable = { which = collective_learning value = 50 } factor = 1.3 } + modifier = { check_variable = { which = collective_learning value = 60 } factor = 1.3 } + set_character_flag = good_outcome + character_event = { id = MNM.1478 } + } + 45 = { #Ok + trigger = { has_character_flag = safe_invention } + modifier = { learning = 10 factor = 1.1 } + modifier = { learning = 12 factor = 1.1 } + modifier = { learning = 14 factor = 1.1 } + modifier = { learning = 16 factor = 1.1 } + modifier = { learning = 18 factor = 1.1 } + modifier = { learning = 20 factor = 1.1 } + modifier = { check_variable = { which = collective_learning value = 40 } factor = 1.2 } + modifier = { check_variable = { which = collective_learning value = 50 } factor = 1.2 } + modifier = { check_variable = { which = collective_learning value = 60 } factor = 1.2 } + set_character_flag = ok_outcome + character_event = { id = MNM.1478 } + } + 25 = { #Normal failure outcome + trigger = { has_character_flag = safe_invention } + set_character_flag = failure_outcome + character_event = { id = MNM.1479 } + } + 25 = { #Dangerous failure outcome + trigger = { has_character_flag = risky_invention } + set_character_flag = bad_failure_outcome + character_event = { id = MNM.1479 } + } + } + clr_character_flag = brilliant_insight + } +} + +#Good outcome +character_event = { + id = MNM.1478 + picture = GFX_evt_gathering_of_minds + border = GFX_event_normal_frame_religion + + desc = { + trigger = { + has_character_flag = best_outcome + has_character_flag = war_invention + } + text = EVTDESC_MNM_1478_A #Hand gun + picture = GFX_evt_gathering_of_minds + } + desc = { + trigger = { + has_character_flag = best_outcome + has_character_flag = prosperity_invention + } + text = EVTDESC_MNM_1478_B #Compass + picture = GFX_evt_gathering_of_minds + } + desc = { + trigger = { + has_character_flag = best_outcome + has_character_flag = knowledge_invention + } + text = EVTDESC_MNM_1478_C #Radius astronomicus + picture = GFX_evt_gathering_of_minds + } + desc = { + trigger = { + has_character_flag = good_outcome + has_character_flag = war_invention + } + text = EVTDESC_MNM_1478_D #Giant crossbow + picture = GFX_evt_gathering_of_minds + } + desc = { + trigger = { + has_character_flag = good_outcome + has_character_flag = prosperity_invention + } + text = EVTDESC_MNM_1478_E #Blast furnace + picture = GFX_evt_weaponsmith + } + desc = { + trigger = { + has_character_flag = good_outcome + has_character_flag = knowledge_invention + } + text = EVTDESC_MNM_1478_F #Crypt and cypher machine + picture = GFX_evt_ritual_scroll + } + desc = { + trigger = { + has_character_flag = ok_outcome + has_character_flag = war_invention + } + text = EVTDESC_MNM_1478_G #Plate armor + picture = GFX_evt_weaponsmith + } + desc = { + trigger = { + has_character_flag = ok_outcome + has_character_flag = prosperity_invention + } + text = EVTDESC_MNM_1478_H #A new mill + picture = GFX_evt_gathering_of_minds + } + desc = { + trigger = { + has_character_flag = ok_outcome + has_character_flag = knowledge_invention + } + text = EVTDESC_MNM_1478_I #Glasses + picture = GFX_evt_gathering_of_minds + } + + is_triggered_only = yes + hide_from = yes + + trigger = { has_character_flag = gathering_of_the_minds } + + option = { + trigger = { + has_character_flag = best_outcome + has_character_flag = war_invention + } + name = EVTOPTA_MNM_1478 + + add_artifact = hermetic_handgun + + military_techpoints = 100 + add_society_currency_major_effect = yes + } + + option = { + trigger = { + has_character_flag = best_outcome + has_character_flag = prosperity_invention + } + name = EVTOPTB_MNM_1478 + + add_artifact = hermetic_compass + + economy_techpoints = 100 + add_society_currency_major_effect = yes + } + + option = { + trigger = { + has_character_flag = best_outcome + has_character_flag = knowledge_invention + } + name = EVTOPTC_MNM_1478 + + add_artifact = radius_astronomicus + + culture_techpoints = 100 + add_society_currency_major_effect = yes + } + + option = { + trigger = { + has_character_flag = good_outcome + has_character_flag = war_invention + } + name = EVTOPTD_MNM_1478 + + capital_scope = { + add_province_modifier = { + name = giant_crossbow + years = 100 + } + } + + military_techpoints = 50 + add_society_currency_medium_effect = yes + } + + option = { + trigger = { + has_character_flag = good_outcome + has_character_flag = prosperity_invention + } + name = EVTOPTE_MNM_1478 + + capital_scope = { + add_province_modifier = { + name = blast_furnace + years = 100 + } + } + + economy_techpoints = 50 + add_society_currency_medium_effect = yes + } + + option = { + trigger = { + has_character_flag = good_outcome + has_character_flag = knowledge_invention + } + name = EVTOPTF_MNM_1478 + + add_artifact = hermetic_cypher_machine + + culture_techpoints = 50 + add_society_currency_medium_effect = yes + } + + option = { + trigger = { + has_character_flag = ok_outcome + has_character_flag = war_invention + } + name = EVTOPTG_MNM_1478 + + add_artifact = hermetic_plate_armor + + military_techpoints = 25 + add_society_currency_minor_effect = yes + } + + option = { + trigger = { + has_character_flag = ok_outcome + has_character_flag = prosperity_invention + } + name = EVTOPTH_MNM_1478 + + capital_scope = { + add_province_modifier = { + name = great_mill + years = 100 + } + } + + economy_techpoints = 25 + add_society_currency_minor_effect = yes + } + + option = { + trigger = { + has_character_flag = ok_outcome + has_character_flag = knowledge_invention + } + name = EVTOPTI_MNM_1478 + + add_artifact = hermetic_glasses + + culture_techpoints = 25 + add_society_currency_minor_effect = yes + } + + after = { + hidden_effect = { + clr_character_flag = gathering_of_the_minds + clr_character_flag = war_invention + clr_character_flag = prosperity_invention + clr_character_flag = knowledge_invention + clr_character_flag = great_outcome + clr_character_flag = good_outcome + clr_character_flag = ok_outcome + } + } +} + +#Failure +character_event = { + id = MNM.1479 + picture = GFX_evt_burning_house + border = GFX_event_normal_frame_religion + + desc = { + trigger = { has_character_flag = failure_outcome } + text = EVTDESC_MNM_1479_A + picture = GFX_evt_quarrel + } + desc = { + trigger = { has_character_flag = bad_failure_outcome } + text = EVTDESC_MNM_1479_B + } + + immediate = { + random_list = { + 20 = { set_character_flag = invention_failure_maimed } + 20 = { set_character_flag = invention_failure_wounded } + 60 = { } #They're safe + } + event_target:great_minds_guest_1 = { + random_list = { + 20 = { set_character_flag = invention_failure_death } + 20 = { set_character_flag = invention_failure_maimed } + 20 = { set_character_flag = invention_failure_wounded } + 40 = { } #They're safe + } + } + event_target:great_minds_guest_2 = { + random_list = { + 20 = { set_character_flag = invention_failure_death } + 20 = { set_character_flag = invention_failure_maimed } + 20 = { set_character_flag = invention_failure_wounded } + 40 = { } #They're safe + } + } + event_target:great_minds_guest_3 = { + random_list = { + 20 = { set_character_flag = invention_failure_death } + 20 = { set_character_flag = invention_failure_maimed } + 20 = { set_character_flag = invention_failure_wounded } + 40 = { } #They're safe + } + } + event_target:great_minds_guest_4 = { + random_list = { + 20 = { set_character_flag = invention_failure_death } + 20 = { set_character_flag = invention_failure_maimed } + 20 = { set_character_flag = invention_failure_wounded } + 40 = { } #They're safe + } + } + } + + is_triggered_only = yes + + hide_from = yes + + option = { + trigger = { has_character_flag = failure_outcome } + name = EVTOPTA_MNM_1479 + custom_tooltip = { text = EVTOPTA_MNM_1479_TT } + } + + option = { + trigger = { has_character_flag = bad_failure_outcome } + name = EVTOPTB_MNM_1479 + custom_tooltip = { text = EVTOPTB_MNM_1479_TT } + + trigger_switch = { + on_trigger = has_character_flag + invention_failure_maimed = { add_maimed_trait_effect = yes } + invention_failure_wounded = { add_trait_silently_wounded_effect = yes } + } + + event_target:great_minds_guest_1 = { + trigger_switch = { + on_trigger = has_character_flag + invention_failure_death = { death = { death_reason = death_accident } } + invention_failure_maimed = { add_maimed_trait_effect = yes } + invention_failure_wounded = { add_trait_silently_wounded_effect = yes } + } + } + event_target:great_minds_guest_2 = { + trigger_switch = { + on_trigger = has_character_flag + invention_failure_death = { death = { death_reason = death_accident } } + invention_failure_maimed = { add_maimed_trait_effect = yes } + invention_failure_wounded = { add_trait_silently_wounded_effect = yes } + } + } + event_target:great_minds_guest_3 = { + trigger_switch = { + on_trigger = has_character_flag + invention_failure_death = { death = { death_reason = death_accident } } + invention_failure_maimed = { add_maimed_trait_effect = yes } + invention_failure_wounded = { add_trait_silently_wounded_effect = yes } + } + } + event_target:great_minds_guest_4 = { + trigger_switch = { + on_trigger = has_character_flag + invention_failure_death = { death = { death_reason = death_accident } } + invention_failure_maimed = { add_maimed_trait_effect = yes } + invention_failure_wounded = { add_trait_silently_wounded_effect = yes } + } + } + } + + after = { + hidden_effect = { + clr_character_flag = gathering_of_the_minds + clr_character_flag = war_invention + clr_character_flag = prosperity_invention + clr_character_flag = knowledge_invention + clr_character_flag = failure_outcome + clr_character_flag = bad_failure_outcome + + clr_character_flag = invention_failure_maimed + clr_character_flag = invention_failure_wounded + event_target:great_minds_guest_1 = { + clr_character_flag = invention_failure_maimed + clr_character_flag = invention_failure_wounded + } + event_target:great_minds_guest_2 = { + clr_character_flag = invention_failure_maimed + clr_character_flag = invention_failure_wounded + } + event_target:great_minds_guest_3 = { + clr_character_flag = invention_failure_maimed + clr_character_flag = invention_failure_wounded + } + event_target:great_minds_guest_4 = { + clr_character_flag = invention_failure_maimed + clr_character_flag = invention_failure_wounded + } + } + } +} + +#Handles scandals, ends the event chain if things go to far +character_event = { + id = MNM.1480 + hide_window = yes + is_triggered_only = yes + trigger = { has_character_flag = gathering_of_the_minds } + immediate = { + if = { + limit = { + NOR = { + has_character_flag = hermetics_minor_scandal + has_character_flag = hermetics_major_scandal + } + } + set_character_flag = hermetics_minor_scandal + break = yes + } + if = { + limit = { has_character_flag = hermetics_minor_scandal } + clr_character_flag = hermetics_minor_scandal + set_character_flag = hermetics_major_scandal + break = yes + } + + if = { + limit = { has_character_flag = hermetics_major_scandal } + clr_character_flag = hermetics_major_scandal + + character_event = { id = MNM.1481 } + } + } +} + +character_event = { + id = MNM.1481 + desc = EVTDESC_MNM_1481 + picture = GFX_evt_scandal + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + hide_from = yes + + option = { + name = EVTOPTA_MNM_1481 + custom_tooltip = { text = EVTOPTA_MNM_1481_TT } + + hidden_effect = { + clr_character_flag = gathering_of_the_minds + clr_character_flag = war_invention + clr_character_flag = prosperity_invention + clr_character_flag = knowledge_invention + clr_character_flag = hermetics_minor_scandal + clr_character_flag = hermetics_major_scandal + clr_character_flag = risky_invention + clr_character_flag = safe_invention + clr_character_flag = brilliant_insight + + event_target:great_minds_guest_1 = { + clr_character_flag = war_invetion + clr_character_flag = prosperity_invention + clr_character_flag = knowledge_invention + } + event_target:great_minds_guest_2 = { + clr_character_flag = war_invetion + clr_character_flag = prosperity_invention + clr_character_flag = knowledge_invention + } + event_target:great_minds_guest_3 = { + clr_character_flag = war_invetion + clr_character_flag = prosperity_invention + clr_character_flag = knowledge_invention + } + event_target:great_minds_guest_4 = { + clr_character_flag = war_invetion + clr_character_flag = prosperity_invention + clr_character_flag = knowledge_invention + } + } + } +} + + +##Divine Summoning## + +#Divine Summoning find target ping +character_event = { + id = MNM.1620 + hide_window = yes + + is_triggered_only = yes + + only_playable = yes + only_capable = yes + prisoner = no + is_in_society = yes + + trigger = { + society_member_of = hermetics + NOT = { is_inaccessible_trigger = yes } + } + + weight_multiplier = { + factor = 1 + modifier = { + factor = 2.0 + society_rank >= 3 + } + modifier = { + factor = 0.5 + society_rank == 1 + } + modifier = { + factor = 3.0 + OR = { + has_focus = focus_scholarship + has_focus = focus_theology + } + } + modifier = { + factor = 3.0 + trait = genius + } + modifier = { + factor = 3.0 + trait = mystic + } + modifier = { + factor = 2.0 + trait = quick + } + modifier = { + factor = 2.0 + trait = shrewd + } + modifier = { + factor = 0.5 + trait = dull + } + modifier = { + factor = 0.5 + trait = slow + } + modifier = { + factor = 0.1 + trait = imbecile + } + modifier = { + factor = 0.25 + has_character_flag = had_a_divine_summoning + } + } + + immediate = { + # First look for someone at court + society = { + random_society_member = { + limit = { + ai = yes + is_incapable = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { character = ROOT } + in_command = no + host = { character = ROOT } + } + character_event = { id = MNM.1621 } + break = yes + } + + # Then look for someone in the same realm + random_society_member = { + limit = { + ai = yes + is_incapable = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { character = ROOT } + in_command = no + same_realm = yes + } + character_event = { id = MNM.1621 } + break = yes + } + + # Then look abroad... + random_society_member = { + limit = { + ai = yes + is_incapable = no + prisoner = no + NOT = { is_inaccessible_trigger = yes } + NOT = { character = ROOT } + in_command = no + is_within_diplo_range = ROOT + } + character_event = { id = MNM.1621 } + } + } + } +} + +# Bounce +character_event = { + id = MNM.1621 + hide_window = yes + + is_triggered_only = yes + + immediate = { + FROM = { character_event = { id = MNM.1622 } } + } +} + +# Divine Summoning - Planning +character_event = { + id = MNM.1622 + picture = GFX_evt_shadowy_cabal + border = GFX_event_normal_frame_religion + + desc = { + text = EVTDESC_MNM_1622 + trigger = { + FROM = { + NOT = { host = { character = ROOT } } + } + } + } + desc = { + text = EVTDESC_MNM_1622_COURT + trigger = { + FROM = { + host = { character = ROOT } + } + } + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1622 # Anything to grow closer to the Divine! + ai_chance = { + factor = 100 + modifier = { + factor = 50 + trait = ambitious + } + modifier = { + factor = 50 + trait = mystic + } + modifier = { + factor = 0 + any_artifact = { + has_artifact_flag = ingredient + } + } + } + + set_character_flag = had_a_divine_summoning + + FROM = { character_event = { id = MNM.1623 tooltip = EVT_TT_1622 portrait = no } } + } + + option = { + name = EVTOPTA_MNM_1622_use_ingredients # Send them these ingredients to aid in the ritual! + tooltip_info = yes + custom_tooltip = { text = ingredient_option_available_tt } + + ai_chance = { + factor = 500 + modifier = { + factor = 50 + trait = ambitious + } + modifier = { + factor = 50 + trait = mystic + } + } + + custom_tooltip = { + text = ingredients_are_sent_tt + hidden_effect = { destroy_random_ingredients_effect = yes } + } + + + set_character_flag = had_a_divine_summoning + set_character_flag = used_ingredients_for_summoning + + FROM = { character_event = { id = MNM.1623 portrait = no } } + + trigger = { + any_artifact = { + has_artifact_flag = ingredient + } + } + } + + option = { + name = EVTOPTB_MNM_1622 # Even rituals carry danger + ai_chance = { + factor = 1 + modifier = { + factor = 50 + trait = craven + } + modifier = { + factor = 25 + trait = content + } + } + + detract_society_currency_minor_effect = yes + reverse_opinion = { who = FROM modifier = opinion_coward years = 5 } + } +} + +# Bounce +character_event = { + id = MNM.1623 + hide_window = yes + + is_triggered_only = yes + + immediate = { + destroy_random_ingredients_effect = yes + FROM = { character_event = { id = MNM.1624 days = 15 random = 15 } } + } +} + +# Divine Summoning - The Ritual +narrative_event = { + id = MNM.1624 + picture = GFX_evt_magic_ritual + border = GFX_event_narrative_frame_religion + + title = EVTTITLE_MNM_1624 + + desc = { text = EVTDESC_MNM_1624 } + + is_triggered_only = yes + + option = { # Ask it the secrets of Alchemy (stewardship) + name = EVTOPTA_MNM_1624 + + hidden_effect = { + set_character_flag = divine_summoning_alchemy + FROM = { character_event = { id = MNM.1625 } } + } + } + + option = { # Ask it the secrets of Astrology (diplomacy) + name = EVTOPTB_MNM_1624 + + hidden_effect = { + set_character_flag = divine_summoning_astrology + FROM = { character_event = { id = MNM.1625 } } + } + } + + option = { # Open your mind to the Divine (learning) + name = EVTOPTC_MNM_1624 + + hidden_effect = { + set_character_flag = divine_summoning_open_mind + FROM = { character_event = { id = MNM.1625 } } + } + } + + option = { # Ask it about how the Truth has been hidden (intrigue) + name = EVTOPTD_MNM_1624 + + hidden_effect = { + set_character_flag = divine_summoning_hidden_truth + FROM = { character_event = { id = MNM.1625 } } + } + } +} + +# Bounce +character_event = { + id = MNM.1625 + hide_window = yes + + is_triggered_only = yes + + immediate = { + if = { + limit = { + FROM = { + has_character_flag = divine_summoning_alchemy + learning = 25 + } + } + random_list = { + 15 = { + FROM = { set_character_flag = divine_summoning_success } + } + 25 = { + FROM = { set_character_flag = divine_summoning_alchemy_good_bonus } + } + 40 = { + FROM = { set_character_flag = divine_summoning_alchemy_bonus } + } + 15 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_alchemy_penalty } + } + 5 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_alchemy_bad_penalty } + } + } + } + if = { + limit = { + FROM = { + has_character_flag = divine_summoning_alchemy + learning = 20 + NOT = { learning = 25 } + } + } + random_list = { + 10 = { + FROM = { set_character_flag = divine_summoning_success } + } + 20 = { + FROM = { set_character_flag = divine_summoning_alchemy_good_bonus } + } + 35 = { + FROM = { set_character_flag = divine_summoning_alchemy_bonus } + } + 20 = { + FROM = { set_character_flag = divine_summoning_alchemy_penalty } + } + 10 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_alchemy_bad_penalty } + } + 5 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_failure } + } + } + } + if = { + limit = { + FROM = { + has_character_flag = divine_summoning_alchemy + learning = 15 + NOT = { learning = 20 } + } + } + random_list = { + 5 = { + FROM = { set_character_flag = divine_summoning_success } + } + 10 = { + FROM = { set_character_flag = divine_summoning_alchemy_good_bonus } + } + 20 = { + FROM = { set_character_flag = divine_summoning_alchemy_bonus } + } + 35 = { + FROM = { set_character_flag = divine_summoning_alchemy_penalty } + } + 20 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_alchemy_bad_penalty } + } + 10 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_failure } + } + } + } + if = { + limit = { + FROM = { + has_character_flag = divine_summoning_alchemy + NOT = { learning = 15 } + } + } + random_list = { + 5 = { + FROM = { set_character_flag = divine_summoning_alchemy_good_bonus } + } + 15 = { + FROM = { set_character_flag = divine_summoning_alchemy_bonus } + } + 40 = { + FROM = { set_character_flag = divine_summoning_alchemy_penalty } + } + 25 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_alchemy_bad_penalty } + } + 15 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_failure } + } + } + } + if = { + limit = { + FROM = { + has_character_flag = divine_summoning_astrology + learning = 25 + } + } + random_list = { + 15 = { + FROM = { set_character_flag = divine_summoning_success } + } + 25 = { + FROM = { set_character_flag = divine_summoning_astrology_good_bonus } + } + 40 = { + FROM = { set_character_flag = divine_summoning_astrology_bonus } + } + 15 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_astrology_penalty } + } + 5 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_astrology_bad_penalty } + } + } + } + if = { + limit = { + FROM = { + has_character_flag = divine_summoning_astrology + learning = 20 + NOT = { learning = 25 } + } + } + random_list = { + 10 = { + FROM = { set_character_flag = divine_summoning_success } + } + 20 = { + FROM = { set_character_flag = divine_summoning_astrology_good_bonus } + } + 35 = { + FROM = { set_character_flag = divine_summoning_astrology_bonus } + } + 20 = { + FROM = { set_character_flag = divine_summoning_astrology_penalty } + } + 10 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_astrology_bad_penalty } + } + 5 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_failure } + } + } + } + if = { + limit = { + FROM = { + has_character_flag = divine_summoning_astrology + learning = 15 + NOT = { learning = 20 } + } + } + random_list = { + 5 = { + FROM = { set_character_flag = divine_summoning_success } + } + 10 = { + FROM = { set_character_flag = divine_summoning_astrology_good_bonus } + } + 20 = { + FROM = { set_character_flag = divine_summoning_astrology_bonus } + } + 35 = { + FROM = { set_character_flag = divine_summoning_astrology_penalty } + } + 20 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_astrology_bad_penalty } + } + 10 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_failure } + } + } + } + if = { + limit = { + FROM = { + has_character_flag = divine_summoning_astrology + NOT = { learning = 15 } + } + } + random_list = { + 5 = { + FROM = { set_character_flag = divine_summoning_astrology_good_bonus } + } + 15 = { + FROM = { set_character_flag = divine_summoning_astrology_bonus } + } + 40 = { + FROM = { set_character_flag = divine_summoning_astrology_penalty } + } + 25 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_astrology_bad_penalty } + } + 15 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_failure } + } + } + } + if = { + limit = { + FROM = { + has_character_flag = divine_summoning_open_mind + learning = 25 + } + } + random_list = { + 15 = { + FROM = { set_character_flag = divine_summoning_success } + } + 25 = { + FROM = { set_character_flag = divine_summoning_open_mind_good_bonus } + } + 40 = { + FROM = { set_character_flag = divine_summoning_open_mind_bonus } + } + 15 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_open_mind_penalty } + } + 5 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_open_mind_bad_penalty } + } + } + } + if = { + limit = { + FROM = { + has_character_flag = divine_summoning_open_mind + learning = 20 + NOT = { learning = 25 } + } + } + random_list = { + 10 = { + FROM = { set_character_flag = divine_summoning_success } + } + 20 = { + FROM = { set_character_flag = divine_summoning_open_mind_good_bonus } + } + 35 = { + FROM = { set_character_flag = divine_summoning_open_mind_bonus } + } + 20 = { + FROM = { set_character_flag = divine_summoning_open_mind_penalty } + } + 10 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_open_mind_bad_penalty } + } + 5 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_failure } + } + } + } + if = { + limit = { + FROM = { + has_character_flag = divine_summoning_open_mind + learning = 15 + NOT = { learning = 20 } + } + } + random_list = { + 5 = { + FROM = { set_character_flag = divine_summoning_success } + } + 10 = { + FROM = { set_character_flag = divine_summoning_open_mind_good_bonus } + } + 20 = { + FROM = { set_character_flag = divine_summoning_open_mind_bonus } + } + 40 = { + FROM = { set_character_flag = divine_summoning_open_mind_penalty } + } + 20 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_open_mind_bad_penalty } + } + 10 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_failure } + } + } + } + if = { + limit = { + FROM = { + has_character_flag = divine_summoning_open_mind + NOT = { learning = 15 } + } + } + random_list = { + 5 = { + FROM = { set_character_flag = divine_summoning_open_mind_good_bonus } + } + 15 = { + FROM = { set_character_flag = divine_summoning_open_mind_bonus } + } + 40 = { + FROM = { set_character_flag = divine_summoning_open_mind_penalty } + } + 25 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_open_mind_bad_penalty } + } + 15 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_failure } + } + } + } + if = { + limit = { + FROM = { + has_character_flag = divine_summoning_hidden_truth + learning = 25 + } + } + random_list = { + 15 = { + FROM = { set_character_flag = divine_summoning_success } + } + 25 = { + FROM = { set_character_flag = divine_summoning_hidden_truth_good_bonus } + } + 40 = { + FROM = { set_character_flag = divine_summoning_hidden_truth_bonus } + } + 15 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_hidden_truth_penalty } + } + 5 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_hidden_truth_bad_penalty } + } + } + } + if = { + limit = { + FROM = { + has_character_flag = divine_summoning_hidden_truth + learning = 20 + NOT = { learning = 25 } + } + } + random_list = { + 10 = { + FROM = { set_character_flag = divine_summoning_success } + } + 20 = { + FROM = { set_character_flag = divine_summoning_hidden_truth_good_bonus } + } + 35 = { + FROM = { set_character_flag = divine_summoning_hidden_truth_bonus } + } + 20 = { + FROM = { set_character_flag = divine_summoning_hidden_truth_penalty } + } + 10 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_hidden_truth_bad_penalty } + } + 5 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_failure } + } + } + } + if = { + limit = { + FROM = { + has_character_flag = divine_summoning_hidden_truth + learning = 15 + NOT = { learning = 20 } + } + } + random_list = { + 5 = { + FROM = { set_character_flag = divine_summoning_success } + } + 10 = { + FROM = { set_character_flag = divine_summoning_hidden_truth_good_bonus } + } + 20 = { + FROM = { set_character_flag = divine_summoning_hidden_truth_bonus } + } + 35 = { + FROM = { set_character_flag = divine_summoning_hidden_truth_penalty } + } + 20 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_hidden_truth_bad_penalty } + } + 10 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_failure } + } + } + } + if = { + limit = { + FROM = { + has_character_flag = divine_summoning_hidden_truth + NOT = { learning = 15 } + } + } + random_list = { + 5 = { + FROM = { set_character_flag = divine_summoning_hidden_truth_good_bonus } + } + 15 = { + FROM = { set_character_flag = divine_summoning_hidden_truth_bonus } + } + 40 = { + FROM = { set_character_flag = divine_summoning_hidden_truth_penalty } + } + 25 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_hidden_truth_bad_penalty } + } + 15 = { + modifier = { + factor = 0.5 + FROM = { has_character_flag = used_ingredients_for_summoning } + } + FROM = { set_character_flag = divine_summoning_failure } + } + } + } + FROM = { character_event = { id = MNM.1626 days = 15 random = 15 } } + FROM = { clr_character_flag = used_ingredients_for_summoning } + } +} + +# Divine Summoning - Result +character_event = { + id = MNM.1626 + picture = GFX_evt_shadowy_cabal + border = GFX_event_normal_frame_religion + + desc = { + text = EVTDESC_MNM_1626_SUCCESS + trigger = { + has_character_flag = divine_summoning_success + } + } + desc = { + text = EVTDESC_MNM_1626_FAILURE + trigger = { + has_character_flag = divine_summoning_failure + } + } + desc = { + text = EVTDESC_MNM_1626_ALCH_BONUS + trigger = { + OR = { + has_character_flag = divine_summoning_alchemy_good_bonus + has_character_flag = divine_summoning_alchemy_bonus + has_character_flag = divine_summoning_alchemy_penalty + has_character_flag = divine_summoning_alchemy_bad_penalty + } + } + } + desc = { + text = EVTDESC_MNM_1626_ASTR_BONUS + trigger = { + OR = { + has_character_flag = divine_summoning_astrology_good_bonus + has_character_flag = divine_summoning_astrology_bonus + has_character_flag = divine_summoning_astrology_penalty + has_character_flag = divine_summoning_astrology_bad_penalty + } + } + } + desc = { + text = EVTDESC_MNM_1626_MIND_BONUS + trigger = { + OR = { + has_character_flag = divine_summoning_open_mind_good_bonus + has_character_flag = divine_summoning_open_mind_bonus + has_character_flag = divine_summoning_open_mind_penalty + has_character_flag = divine_summoning_open_mind_bad_penalty + } + } + } + desc = { + text = EVTDESC_MNM_1626_TRUTH_BONUS + trigger = { + OR = { + has_character_flag = divine_summoning_hidden_truth_good_bonus + has_character_flag = divine_summoning_hidden_truth_bonus + has_character_flag = divine_summoning_hidden_truth_penalty + has_character_flag = divine_summoning_hidden_truth_bad_penalty + } + } + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1626 # Success + trigger = { + NOT = { + has_character_flag = divine_summoning_success + has_character_flag = divine_summoning_failure + } + } + if = { + limit = { + has_character_flag = divine_summoning_alchemy_good_bonus + } + add_character_modifier = { + name = alchemy_good_ste_bonus + years = 5 + } + } + if = { + limit = { + has_character_flag = divine_summoning_alchemy_bonus + } + add_character_modifier = { + name = alchemy_ste_bonus + years = 5 + } + } + if = { + limit = { + has_character_flag = divine_summoning_alchemy_penalty + } + add_character_modifier = { + name = alchemy_ste_penalty + years = 5 + } + } + if = { + limit = { + has_character_flag = divine_summoning_alchemy_bad_penalty + } + add_character_modifier = { + name = alchemy_bad_ste_penalty + years = 5 + } + } + if = { + limit = { + has_character_flag = divine_summoning_astrology_good_bonus + } + add_character_modifier = { + name = astrology_good_dip_bonus + years = 5 + } + } + if = { + limit = { + has_character_flag = divine_summoning_astrology_bonus + } + add_character_modifier = { + name = astrology_dip_bonus + years = 5 + } + } + if = { + limit = { + has_character_flag = divine_summoning_astrology_penalty + } + add_character_modifier = { + name = astrology_dip_penalty + years = 5 + } + } + if = { + limit = { + has_character_flag = divine_summoning_astrology_bad_penalty + } + add_character_modifier = { + name = astrology_bad_dip_penalty + years = 5 + } + } + if = { + limit = { + has_character_flag = divine_summoning_open_mind_good_bonus + } + add_character_modifier = { + name = open_mind_good_lea_bonus + years = 5 + } + } + if = { + limit = { + has_character_flag = divine_summoning_open_mind_bonus + } + add_character_modifier = { + name = open_mind_lea_bonus + years = 5 + } + } + if = { + limit = { + has_character_flag = divine_summoning_open_mind_penalty + } + add_character_modifier = { + name = open_mind_lea_penalty + years = 5 + } + } + if = { + limit = { + has_character_flag = divine_summoning_open_mind_bad_penalty + } + add_character_modifier = { + name = open_mind_bad_lea_penalty + years = 5 + } + } + if = { + limit = { + has_character_flag = divine_summoning_hidden_truth_good_bonus + } + add_character_modifier = { + name = hidden_truth_good_int_bonus + years = 5 + } + } + if = { + limit = { + has_character_flag = divine_summoning_hidden_truth_bonus + } + add_character_modifier = { + name = hidden_truth_int_bonus + years = 5 + } + } + if = { + limit = { + has_character_flag = divine_summoning_hidden_truth_penalty + } + add_character_modifier = { + name = hidden_truth_int_penalty + years = 5 + } + } + if = { + limit = { + has_character_flag = divine_summoning_hidden_truth_bad_penalty + } + add_character_modifier = { + name = hidden_truth_bad_int_penalty + years = 5 + } + } + } + option = { + name = EVTOPTB_MNM_1626 # Critical success + trigger = { + has_character_flag = divine_summoning_success + } + prestige = 100 + add_character_modifier = { + name = divine_summoning_succeeded + years = 10 + } + add_society_currency_minor_effect = yes + } + option = { + name = EVTOPTC_MNM_1626 # Failure + trigger = { + has_character_flag = divine_summoning_failure + } + prestige = -100 + add_character_modifier = { + name = divine_summoning_failed + years = 10 + } + } + after = { + clr_character_flag = divine_summoning_success + clr_character_flag = divine_summoning_failure + clr_character_flag = divine_summoning_alchemy_good_bonus + clr_character_flag = divine_summoning_alchemy_bonus + clr_character_flag = divine_summoning_alchemy_penalty + clr_character_flag = divine_summoning_alchemy_bad_penalty + clr_character_flag = divine_summoning_astrology_good_bonus + clr_character_flag = divine_summoning_astrology_bonus + clr_character_flag = divine_summoning_astrology_penalty + clr_character_flag = divine_summoning_astrology_bad_penalty + clr_character_flag = divine_summoning_open_mind_good_bonus + clr_character_flag = divine_summoning_open_mind_bonus + clr_character_flag = divine_summoning_open_mind_penalty + clr_character_flag = divine_summoning_open_mind_bad_penalty + clr_character_flag = divine_summoning_hidden_truth_good_bonus + clr_character_flag = divine_summoning_hidden_truth_bonus + clr_character_flag = divine_summoning_hidden_truth_penalty + clr_character_flag = divine_summoning_hidden_truth_bad_penalty + clr_character_flag = divine_summoning_alchemy + clr_character_flag = divine_summoning_astrology + clr_character_flag = divine_summoning_open_mind + clr_character_flag = divine_summoning_hidden_truth + } +} + +## Write a Theorem Paper + +#Write a Theory Paper - choose approach +character_event = { + id = MNM.1630 + desc = EVTDESC_MNM_1630 + picture = GFX_evt_scientist + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { #Normal effort + name = EVTOPTA_MNM_1630 + custom_tooltip = { text = EVTOPTA_MNM_1630_TT } + hidden_effect = { + set_character_flag = theory_paper_normal_effort + character_event = { id = MNM.1631 days = 90 random = 90 } + } + } + option = { #Get help from others + name = EVTOPTB_MNM_1630 + trigger = { + diplomacy = 15 + } + tooltip_info = diplomacy + custom_tooltip = { text = EVTOPTB_MNM_1630_TT } + hidden_effect = { + set_character_flag = theory_paper_asked_help + character_event = { id = MNM.1631 days = 90 random = 90 } + } + } + option = { #Steal another's work + name = EVTOPTC_MNM_1630 + trigger = { + intrigue = 15 + } + tooltip_info = intrigue + custom_tooltip = { text = EVTOPTC_MNM_1630_TT } + hidden_effect = { + set_character_flag = theory_paper_stole_work + character_event = { id = MNM.1631 days = 90 random = 90 } + } + } + option = { #Invest heavily in research + name = EVTOPTD_MNM_1630 + trigger = { + NOT = { trait = content } + } + if = { + limit = { + NOT = { + trait = ambitious + trait = content + } + } + random = { + chance = 10 + add_trait = ambitious + } + } + if = { + limit = { + NOT = { + trait = stressed + } + } + random = { + chance = 10 + add_trait = stressed + } + } + scaled_wealth = { value = -1 min = -25 } + piety = -50 + add_character_modifier = { + name = theory_paper_heavy_investment + years = 1 + } + custom_tooltip = { text = EVTOPTD_MNM_1630_TT } + hidden_effect = { + set_character_flag = theory_paper_heavy_investment + character_event = { id = MNM.1631 days = 180 random = 180 } + } + } +} + +#Ping event for deciding success +character_event = { + id = MNM.1631 + hide_window = yes + + is_triggered_only = yes + + trigger = { is_alive = yes } + + immediate = { + random_list = { + 15 = { + modifier = { + factor = 2 + learning = 25 + } + modifier = { + factor = 2 + has_character_flag = theory_paper_heavy_investment + } + modifier = { + factor = 1.4 + has_character_flag = theory_paper_asked_help + } + modifier = { + factor = 1.6 + has_character_flag = theory_paper_stole_work + } + modifier = { + factor = 2 + trait = genius + } + modifier = { + factor = 0.5 + trait = imbecile + } + modifier = { + factor = 1.6 + trait = quick + } + modifier = { + factor = 0.7 + trait = slow + } + modifier = { + factor = 0.6 + trait = inbred + } + modifier = { + factor = 1.4 + trait = shrewd + } + modifier = { + factor = 0.8 + trait = dull + } + modifier = { + factor = 1.3 + trait = mastermind_theologian + } + modifier = { + factor = 1.4 + trait = scholar + } + modifier = { + factor = 1.4 + trait = mystic + } + modifier = { + factor = 1.4 + trait = theologian + } + modifier = { + factor = 1.6 + trait = diligent + } + modifier = { + factor = 0.7 + trait = slothful + } + modifier = { + factor = 1.6 + trait = ambitious + } + modifier = { + factor = 0.7 + trait = content + } + modifier = { + factor = 1.6 + trait = erudite + } + set_character_flag = theory_paper_revolutionary + } + 25 = { + modifier = { + factor = 2 + AND = { + learning = 17 + NOT = { learning = 25 } + } + } + modifier = { + factor = 2 + has_character_flag = theory_paper_heavy_investment + } + modifier = { + factor = 1.3 + has_character_flag = theory_paper_asked_help + } + modifier = { + factor = 1.6 + has_character_flag = theory_paper_stole_work + } + modifier = { + factor = 2 + trait = genius + } + modifier = { + factor = 0.5 + trait = imbecile + } + modifier = { + factor = 1.6 + trait = quick + } + modifier = { + factor = 0.7 + trait = slow + } + modifier = { + factor = 0.6 + trait = inbred + } + modifier = { + factor = 1.4 + trait = shrewd + } + modifier = { + factor = 0.8 + trait = dull + } + modifier = { + factor = 1.3 + trait = scholarly_theologian + } + modifier = { + factor = 1.4 + trait = scholar + } + modifier = { + factor = 1.4 + trait = mystic + } + modifier = { + factor = 1.4 + trait = theologian + } + modifier = { + factor = 1.6 + trait = diligent + } + modifier = { + factor = 0.7 + trait = slothful + } + modifier = { + factor = 1.6 + trait = ambitious + } + modifier = { + factor = 0.7 + trait = content + } + modifier = { + factor = 1.6 + trait = erudite + } + set_character_flag = theory_paper_excellent + } + 35 = { + modifier = { + factor = 2 + AND = { + learning = 9 + NOT = { learning = 17 } + } + } + modifier = { + factor = 1.3 + trait = martial_cleric + } + set_character_flag = theory_paper_average + } + 25 = { + modifier = { + factor = 2 + NOT = { learning = 9 } + } + modifier = { + factor = 0.5 + has_character_flag = theory_paper_heavy_investment + } + modifier = { + factor = 0.8 + has_character_flag = theory_paper_asked_help + } + modifier = { + factor = 0.7 + has_character_flag = theory_paper_stole_work + } + modifier = { + factor = 0.5 + trait = genius + } + modifier = { + factor = 2 + trait = imbecile + } + modifier = { + factor = 2 + trait = lunatic + } + modifier = { + factor = 0.7 + trait = quick + } + modifier = { + factor = 1.6 + trait = slow + } + modifier = { + factor = 1.8 + trait = inbred + } + modifier = { + factor = 0.8 + trait = shrewd + } + modifier = { + factor = 1.4 + trait = dull + } + modifier = { + factor = 1.3 + trait = detached_priest + } + modifier = { + factor = 0.8 + trait = scholar + } + modifier = { + factor = 0.8 + trait = mystic + } + modifier = { + factor = 0.8 + trait = theologian + } + modifier = { + factor = 0.7 + trait = diligent + } + modifier = { + factor = 1.6 + trait = slothful + } + modifier = { + factor = 0.7 + trait = ambitious + } + modifier = { + factor = 1.6 + trait = content + } + modifier = { + factor = 0.7 + trait = erudite + } + set_character_flag = theory_paper_simplistic + } + } + remove_character_modifier = theory_paper_heavy_investment + character_event = { id = MNM.1640 } + } +} + +#Write a Theory Paper - Finished Paper +character_event = { + id = MNM.1640 + desc = { + text = EVTDESCA_MNM_1640_RITUALS + trigger = { + has_character_flag = MNM_1640_rituals + } + } + desc = { + text = EVTDESCA_MNM_1640_ASCENSION + trigger = { + has_character_flag = MNM_1640_ascension + } + } + desc = { + text = EVTDESCA_MNM_1640_MIND_OF_GOD + trigger = { + has_character_flag = MNM_1640_mind_of_god + } + } + desc = { + text = EVTDESCA_MNM_1640_TRANSLATING_HIEROGLYPHICS + trigger = { + has_character_flag = MNM_1640_translating_hieroglyphics + } + } + desc = { + text = EVTDESCA_MNM_1640_DISTILLATION + trigger = { + has_character_flag = MNM_1640_distillation + } + } + desc = { + text = EVTDESCA_MNM_1640_FERMENTATION + trigger = { + has_character_flag = MNM_1640_fermentation + } + } + desc = { + text = EVTDESCA_MNM_1640_ELIXIR_OF_LIFE + trigger = { + has_character_flag = MNM_1640_elixir_of_life + } + } + desc = { + text = EVTDESCA_MNM_1640_PILOSOPHERS_STONE + trigger = { + has_character_flag = MNM_1640_philosophers_stone + } + } + desc = { + text = EVTDESCA_MNM_1640_PLANETS + trigger = { + has_character_flag = MNM_1640_planets + } + } + desc = { + text = EVTDESCA_MNM_1640_STARS + trigger = { + has_character_flag = MNM_1640_stars + } + } + desc = { + text = EVTDESCA_MNM_1640_MOON + trigger = { + has_character_flag = MNM_1640_moon + } + } + desc = { + text = EVTDESCA_MNM_1640_SUN + trigger = { + has_character_flag = MNM_1640_sun + } + } + picture = GFX_evt_scientist + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + random_list = { + 10 = { + set_character_flag = MNM_1640_rituals + modifier = { + factor = 3 + trait = theologian + } + } + 10 = { + set_character_flag = MNM_1640_ascension + modifier = { + factor = 3 + trait = theologian + } + } + 10 = { + set_character_flag = MNM_1640_mind_of_god + modifier = { + factor = 3 + trait = theologian + } + } + 10 = { + set_character_flag = MNM_1640_translating_hieroglyphics + modifier = { + factor = 3 + trait = scholar + } + modifier = { + factor = 2 + trait = erudite + } + } + 10 = { + set_character_flag = MNM_1640_distillation + modifier = { + factor = 3 + trait = mystic + } + modifier = { + factor = 2 + trait = erudite + } + } + 10 = { + set_character_flag = MNM_1640_fermentation + modifier = { + factor = 3 + trait = mystic + } + modifier = { + factor = 2 + trait = erudite + } + } + 10 = { + set_character_flag = MNM_1640_elixir_of_life + modifier = { + factor = 3 + trait = mystic + } + } + 10 = { + set_character_flag = MNM_1640_philosophers_stone + modifier = { + factor = 3 + trait = mystic + } + } + 10 = { + set_character_flag = MNM_1640_planets + modifier = { + factor = 3 + trait = scholar + } + modifier = { + factor = 3 + trait = diligent + } + } + 10 = { + set_character_flag = MNM_1640_stars + modifier = { + factor = 3 + trait = scholar + } + } + 10 = { + set_character_flag = MNM_1640_moon + modifier = { + factor = 3 + trait = scholar + } + } + 10 = { + set_character_flag = MNM_1640_sun + modifier = { + factor = 3 + trait = scholar + } + } + } + set_variable = { + which = peer_review + value = 0 + } + + society = { + random_society_member = { + limit = { + NOT = { character = ROOT } + is_within_diplo_range = ROOT + NOT = { is_inaccessible_trigger = yes } + } + save_event_target_as = peer1 + set_character_flag = peer_review_temp + } + random_society_member = { + limit = { + NOT = { character = ROOT } + is_within_diplo_range = ROOT + NOT = { is_inaccessible_trigger = yes } + NOT = { has_character_flag = peer_review_temp } + } + save_event_target_as = peer2 + set_character_flag = peer_review_temp + } + random_society_member = { + limit = { + NOT = { character = ROOT } + is_within_diplo_range = ROOT + NOT = { is_inaccessible_trigger = yes } + NOT = { has_character_flag = peer_review_temp } + } + save_event_target_as = peer3 + set_character_flag = peer_review_temp + } + random_society_member = { + limit = { + NOT = { character = ROOT } + is_within_diplo_range = ROOT + NOT = { is_inaccessible_trigger = yes } + NOT = { has_character_flag = peer_review_temp } + } + save_event_target_as = peer4 + set_character_flag = peer_review_temp + } + random_society_member = { + limit = { + NOT = { character = ROOT } + is_within_diplo_range = ROOT + NOT = { is_inaccessible_trigger = yes } + NOT = { has_character_flag = peer_review_temp } + } + save_event_target_as = peer5 + set_character_flag = peer_review_temp + } + event_target:peer1 = { clr_character_flag = peer_review_temp } + event_target:peer2 = { clr_character_flag = peer_review_temp } + event_target:peer3 = { clr_character_flag = peer_review_temp } + event_target:peer4 = { clr_character_flag = peer_review_temp } + event_target:peer5 = { clr_character_flag = peer_review_temp } + } + } + + option = { #send it out for review! + name = EVTOPTA_MNM_1640 + + event_target:peer1 = { + character_event = { id = MNM.1641 days = 15 } + set_character_flag = show_tooltip + clr_character_flag = show_tooltip + } + event_target:peer2 = { + character_event = { id = MNM.1641 days = 18 } + set_character_flag = show_tooltip + clr_character_flag = show_tooltip + } + event_target:peer3 = { + character_event = { id = MNM.1641 days = 21 } + set_character_flag = show_tooltip + clr_character_flag = show_tooltip + } + event_target:peer4 = { + character_event = { id = MNM.1641 days = 24 } + set_character_flag = show_tooltip + clr_character_flag = show_tooltip + } + event_target:peer5 = { + character_event = { id = MNM.1641 days = 27 } + set_character_flag = show_tooltip + clr_character_flag = show_tooltip + } + + custom_tooltip = { + text = EVTTOOLTIPA_MNM_1640 + hidden_effect = { + set_variable = { + which = peer_review_score + value = 0 + } + character_event = { id = MNM.1644 days = 100 } + } + } + } + + option = { #No, this shall never see the light of day! + name = EVTOPTB_MNM_1640 + + custom_tooltip = { + text = EVTTOOLTIPB_MNM_1640 + hidden_effect = { + clr_character_flag = theory_paper_normal_effort + clr_character_flag = theory_paper_asked_help + clr_character_flag = theory_paper_stole_work + clr_character_flag = theory_paper_heavy_investment + clr_character_flag = theory_paper_revolutionary + clr_character_flag = theory_paper_excellent + clr_character_flag = theory_paper_average + clr_character_flag = theory_paper_simplistic + } + } + } + + after = { + clr_character_flag = MNM_1640_rituals + clr_character_flag = MNM_1640_ascension + clr_character_flag = MNM_1640_mind_of_god + clr_character_flag = MNM_1640_translating_hieroglyphics + clr_character_flag = MNM_1640_distillation + clr_character_flag = MNM_1640_fermentation + clr_character_flag = MNM_1640_elixir_of_life + clr_character_flag = MNM_1640_philosophers_stone + clr_character_flag = MNM_1640_planets + clr_character_flag = MNM_1640_stars + clr_character_flag = MNM_1640_moon + clr_character_flag = MNM_1640_sun + } +} + +#Theory Paper - Peer Reviewer's event +character_event = { + id = MNM.1641 + desc = { + text = EVTDESCA_MNM_1641_RITUALS + trigger = { + FROM = { has_character_flag = MNM_1640_rituals } + } + } + desc = { + text = EVTDESCA_MNM_1641_ASCENSION + trigger = { + FROM = { has_character_flag = MNM_1640_ascension } + } + } + desc = { + text = EVTDESCA_MNM_1641_MIND_OF_GOD + trigger = { + FROM = { has_character_flag = MNM_1640_mind_of_god } + } + } + desc = { + text = EVTDESCA_MNM_1641_TRANSLATING_HIEROGLYPHICS + trigger = { + FROM = { has_character_flag = MNM_1640_translating_hieroglyphics } + } + } + desc = { + text = EVTDESCA_MNM_1641_DISTILLATION + trigger = { + FROM = { has_character_flag = MNM_1640_distillation } + } + } + desc = { + text = EVTDESCA_MNM_1641_FERMENTATION + trigger = { + FROM = { has_character_flag = MNM_1640_fermentation } + } + } + desc = { + text = EVTDESCA_MNM_1641_ELIXIR_OF_LIFE + trigger = { + FROM = { has_character_flag = MNM_1640_elixir_of_life } + } + } + desc = { + text = EVTDESCA_MNM_1641_PILOSOPHERS_STONE + trigger = { + FROM = { has_character_flag = MNM_1640_philosophers_stone } + } + } + desc = { + text = EVTDESCA_MNM_1641_PLANETS + trigger = { + FROM = { has_character_flag = MNM_1640_planets } + } + } + desc = { + text = EVTDESCA_MNM_1641_STARS + trigger = { + FROM = { has_character_flag = MNM_1640_stars } + } + } + desc = { + text = EVTDESCA_MNM_1641_MOON + trigger = { + FROM = { has_character_flag = MNM_1640_moon } + } + } + desc = { + text = EVTDESCA_MNM_1641_SUN + trigger = { + FROM = { has_character_flag = MNM_1640_sun } + } + } + picture = GFX_evt_gathering_of_minds + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + if = { + limit = { + FROM = { has_character_flag = theory_paper_stole_work } + } + random_list = { + 10 = { # Discovered knowledge theft + modifier = { + factor = 1.3 + intrigue = 2 + learning = 2 + } + modifier = { + factor = 1.3 + intrigue = 4 + learning = 4 + } + modifier = { + factor = 1.3 + intrigue = 6 + learning = 6 + } + modifier = { + factor = 1.3 + intrigue = 8 + learning = 8 + } + modifier = { + factor = 1.3 + intrigue = 10 + learning = 10 + } + modifier = { + factor = 1.3 + intrigue = 12 + learning = 12 + } + modifier = { + factor = 1.3 + intrigue = 14 + learning = 14 + } + modifier = { + factor = 1.3 + intrigue = 16 + learning = 16 + } + modifier = { + factor = 1.3 + intrigue = 18 + learning = 18 + } + modifier = { + factor = 1.3 + intrigue = 20 + learning = 20 + } + + set_character_flag = discovered_knowledge_theft + } + 1000 = { #no discovery + + } + } + } + } + + option = { # Endorse + name = EVTOPTA_MNM_1641 + trigger = { + NOT = { has_character_flag = discovered_knowledge_theft } + } + ai_chance = { + factor = 70 + + modifier = { + factor = 1.3 + opinion = { + who = ROOT + value = 20 + } + } + modifier = { + factor = 1.3 + opinion = { + who = ROOT + value = 40 + } + } + modifier = { + factor = 1.3 + opinion = { + who = ROOT + value = 60 + } + } + modifier = { + factor = 1.3 + opinion = { + who = ROOT + value = 80 + } + } + modifier = { + factor = 0.5 + NOT = { + opinion = { + who = ROOT + value = 1 + } + } + } + modifier = { + factor = 0.5 + NOT = { + opinion = { + who = ROOT + value = -19 + } + } + } + modifier = { + factor = 0.5 + NOT = { + opinion = { + who = ROOT + value = -39 + } + } + } + + modifier = { + factor = 1.2 + FROM = { + OR = { + has_character_flag = theory_paper_average + has_character_flag = theory_paper_excellent + has_character_flag = theory_paper_revolutionary + } + } + learning = 7 + } + modifier = { + factor = 1.2 + FROM = { + OR = { + has_character_flag = theory_paper_excellent + has_character_flag = theory_paper_revolutionary + } + } + learning = 10 + } + modifier = { + factor = 1.2 + FROM = { + has_character_flag = theory_paper_revolutionary + } + learning = 13 + } + modifier = { + factor = 0.6 + FROM = { + has_character_flag = theory_paper_simplistic + } + learning = 7 + } + modifier = { + factor = 2 + FROM = { + has_character_flag = theory_paper_simplistic + } + NOT = { learning = 7 } + } + } + + custom_tooltip = { + text = EVTTOOLTIPA_MNM_1641 + hidden_effect = { + FROM = { + change_variable = { + which = peer_review_score + value = 1 + } + character_event = { id = MNM.1642 } + } + } + } + } + + option = { # Refute + name = EVTOPTB_MNM_1641 + trigger = { + NOT = { has_character_flag = discovered_knowledge_theft } + } + ai_chance = { + factor = 30 + } + + custom_tooltip = { + text = EVTTOOLTIPB_MNM_1641 + hidden_effect = { + set_character_flag = refuted_paper_@FROM + FROM = { + character_event = { id = MNM.1643 } + } + } + } + + tooltip = { + opinion = { + who = FROM + modifier = opinion_academic_failure + years = 15 + } + reverse_opinion = { + who = FROM + modifier = opinion_academic_grudge + years = 15 + } + } + } + + option = { # Discovered plagiarism + name = EVTOPTC_MNM_1641 + trigger = { + has_character_flag = discovered_knowledge_theft + } + add_society_currency_minor_effect = yes + prestige = 125 + custom_tooltip = { + text = EVTTOOLTIPC_MNM_1641 + hidden_effect = { + FROM = { + character_event = { id = MNM.1646 } + } + } + } + } +} + +# Peer endorsed paper +letter_event = { + id = MNM.1642 + desc = EVTDESC_MNM_1642 + border = GFX_event_letter_frame_religion + + is_triggered_only = yes + + option = { + name = EXCELLENT + opinion = { + who = FROM + modifier = opinion_grateful + years = 10 + } + } +} + +# Peer refuted paper +letter_event = { + id = MNM.1643 + desc = EVTDESC_MNM_1643 + border = GFX_event_letter_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1643 + opinion = { + who = FROM + modifier = opinion_academic_grudge + years = 15 + } + reverse_opinion = { + who = FROM + modifier = opinion_academic_grudge + years = 15 + } + } +} + +# Results +character_event = { + id = MNM.1644 + desc = { + text = EVTDESCA_MNM_1644 + trigger = { + has_character_flag = paper_success + } + } + desc = { + text = EVTDESCB_MNM_1644 + trigger = { + has_character_flag = paper_failure + } + } + picture = GFX_evt_gathering_of_minds + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + #Calc success/failure + if = { + limit = { + check_variable = { + which = peer_review_score + value = 3 + } + } + set_character_flag = paper_success + break = yes + } + set_character_flag = paper_failure + } + + option = { + name = EVTOPTA_MNM_1644 + trigger = { + has_character_flag = paper_success + } + + prestige = 75 + add_character_modifier = { + modifier = published_theorem + years = 5 + } + add_society_currency_minor_effect = yes + hidden_effect = { + event_target:peer1 = { set_character_flag = paper_success character_event = { id = MNM.1645 } } + event_target:peer2 = { set_character_flag = paper_success character_event = { id = MNM.1645 } } + event_target:peer3 = { set_character_flag = paper_success character_event = { id = MNM.1645 } } + event_target:peer4 = { set_character_flag = paper_success character_event = { id = MNM.1645 } } + event_target:peer5 = { set_character_flag = paper_success character_event = { id = MNM.1645 } } + } + } + + option = { + name = EVTOPTB_MNM_1644 + trigger = { + has_character_flag = paper_failure + } + + prestige = -75 + detract_society_currency_minor_effect = yes + hidden_effect = { + event_target:peer1 = { set_character_flag = paper_failure character_event = { id = MNM.1645 } } + event_target:peer2 = { set_character_flag = paper_failure character_event = { id = MNM.1645 } } + event_target:peer3 = { set_character_flag = paper_failure character_event = { id = MNM.1645 } } + event_target:peer4 = { set_character_flag = paper_failure character_event = { id = MNM.1645 } } + event_target:peer5 = { set_character_flag = paper_failure character_event = { id = MNM.1645 } } + } + } + after = { + clr_character_flag = paper_success + clr_character_flag = paper_failure + clr_character_flag = discovered_knowledge_theft + clr_character_flag = theory_paper_normal_effort + clr_character_flag = theory_paper_asked_help + clr_character_flag = theory_paper_stole_work + clr_character_flag = theory_paper_heavy_investment + clr_character_flag = theory_paper_revolutionary + clr_character_flag = theory_paper_excellent + clr_character_flag = theory_paper_average + clr_character_flag = theory_paper_simplistic + clr_character_flag = refuted_paper_@ROOT + } +} + +#Notice event for peers who endorsed the paper +character_event = { + id = MNM.1645 + desc = { + text = EVTDESCA_MNM_1645 + trigger = { + FROM = { has_character_flag = paper_success } + } + } + desc = { + text = EVTDESCB_MNM_1645 + trigger = { + FROM = { has_character_flag = paper_failure } + } + } + picture = GFX_evt_gathering_of_minds + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + trigger = { + NOT = { has_character_flag = refuted_paper_@FROM } + } + + option = { + name = EVTOPTA_MNM_1645 + trigger = { + FROM = { has_character_flag = paper_success } + } + add_character_modifier = { + modifier = endorsed_theorem + years = 5 + } + } + + option = { + name = EVTOPTB_MNM_1645 + trigger = { + FROM = { has_character_flag = paper_failure } + } + } +} + +# Discovered stealing knowledge +character_event = { + id = MNM.1646 + desc = EVTDESC_MNM_1646 + picture = GFX_evt_scandal + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + clear_delayed_event = { id = MNM.1644 } + } + + option = { + name = CURSES + + prestige = -75 + detract_society_currency_minor_effect = yes + society = { + any_society_member = { + limit = { + NOT = { character = ROOT } + } + opinion = { + who = ROOT + modifier = opinion_knowledge_theft + years = 20 + } + } + } + } +} + +#MISC + +###Become Society Grand Master (any society)### +character_event = { + id = MNM.1750 + desc = EVTDESC_MNM_1750 + picture = GFX_evt_society_joining + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + trigger = { + is_society_grandmaster = yes + NOT = { days_in_society == 0 } + } + + option = { name = EVTOPTA_MNM_1750 } +} + +###MisGather ingredients +character_event = { + id = MNM.1800 + desc = { + text = EVTDESC_MNM_1800_A + trigger = { + NOT = { has_character_flag = quest_gathering_companion } + } + } + desc = { + text = EVTDESC_MNM_1800_B + trigger = { + has_character_flag = quest_gathering_companion + } + } + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + has_dlc = "Mystics" + + immediate = { + if = { + limit = { + event_target:hermetic_collaborator = { + always = yes + } + } + event_target:hermetic_collaborator = { + save_event_target_as = gathering_companion + } + set_character_flag = quest_gathering_companion + break = yes + } + # Find apprentice + random_courtier_or_vassal = { + limit = { + has_minor_title = title_hermetics_apprentice + } + save_event_target_as = gathering_companion + ROOT = { set_character_flag = apprentice_hermetic_gathering } + } + } + + option = { # Look for herbs + name = EVTOPTA_MNM_1800 + character_event = { id = MNM.1810 days = 20 tooltip = EVTTOOLTIPA_MNM_1800 } + } + + option = { # Hunt for animal parts + name = EVTOPTB_MNM_1800 + character_event = { id = MNM.1815 days = 20 tooltip = EVTTOOLTIPB_MNM_1800 } + } + + option = { # Shop for ingredients + name = EVTOPTC_MNM_1800 + character_event = { id = MNM.1820 days = 20 tooltip = EVTTOOLTIPC_MNM_1800 } + } + + option = { # I don't have time for this now + name = EVTOPTD_MNM_1800 + hidden_effect = { + remove_character_modifier = acquire_ingredients_decision_cooldown_timer + } + } + + after = { + set_character_flag = do_not_disturb + clr_character_flag = quest_gathering_companion + hidden_effect = { character_event = { id = MNM.1825 days = 140 } } # safety flag clearing + } +} + +character_event = { #quest ping + id = MNM.1801 + hide_window = yes + + is_triggered_only = yes + + trigger = { + FROM = { + is_alive = yes + is_in_society = yes + } + } + + immediate = { + FROM = { character_event = { id = MNM.1802 } } + } +} + +society_quest_event = { + id = MNM.1802 + desc = EVTDESC_MNM_1802 + + is_triggered_only = yes + + option = { + name = ACCEPT + + tooltip = { set_quest = quest_hermetic_gather_ingredients } + hidden_effect = { + FROM = { + set_quest_target = { + id = quest_hermetic_gather_ingredients + holder = ROOT + } + } + } + + hidden_effect = { character_event = { id = MNM.1800 days = 5 } } + } + + option = { + name = DECLINE + custom_tooltip = { text = decline_quest_tooltip } + + add_character_modifier = { + name = quest_cooldown_timer + hidden = yes + days = 1000 + } + + ai_chance = { factor = 0 } + } +} + +character_event = { + id = MNM.1810 + desc = EVTDESC_MNM_1810 + picture = GFX_evt_bandits + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + trigger = { event_target:gathering_companion = { is_alive = yes } } + + option = { # Head out with companion to find herbs. + name = EVTOPTA_MNM_1810 + trigger = { + stewardship = 11 + FROM = { stewardship = 11 } + } + hidden_effect = { + event_target:gathering_companion = { + character_event = { id = MNM.1811 days = 50 random = 40 } + } + } + } + + option = { # Head out with companion to find herbs. + name = EVTOPTB_MNM_1810 + trigger = { + NOT = { stewardship = 11 } + NOT = { FROM = { stewardship = 11 } } + stewardship = 7 + FROM = { stewardship = 7 } + } + hidden_effect = { + event_target:gathering_companion = { + character_event = { id = MNM.1811 days = 50 random = 40 } + } + } + } + + option = { # Head out with companion to find herbs. + name = EVTOPTC_MNM_1810 + trigger = { + NOT = { stewardship = 7 } + NOT = { FROM = { stewardship = 7 } } + } + hidden_effect = { + event_target:gathering_companion = { + character_event = { id = MNM.1811 days = 50 random = 40 } + } + } + } +} + +# Calculate outcome for gathering herbs +character_event = { + id = MNM.1811 + hide_window = yes + + is_triggered_only = yes + + trigger = { event_target:gathering_companion = { is_alive = yes } } + + immediate = { + set_variable = { + which = gath_try + value = 5 + } + set_variable = { + which = gath_res + value = 0 + } + + while = { + limit = { + check_variable = { + which = gath_try + value = 1 + } + } + random_list = { + 50 = { # Successful gathering + modifier = { + factor = 0.5 + FROM = { NOT = { stewardship = 4 } } + } + modifier = { + factor = 0.5 + NOT = { stewardship = 4 } + } + modifier = { + factor = 0.6 + FROM = { NOT = { stewardship = 6 } } + } + modifier = { + factor = 0.6 + NOT = { stewardship = 6 } + } + modifier = { + factor = 0.7 + FROM = { NOT = { stewardship = 8 } } + } + modifier = { + factor = 0.7 + NOT = { stewardship = 8 } + } + modifier = { + factor = 1.2 + FROM = { stewardship = 11 } + } + modifier = { + factor = 1.2 + stewardship = 11 + } + modifier = { + factor = 1.2 + FROM = { stewardship = 13 } + } + modifier = { + factor = 1.2 + stewardship = 13 + } + modifier = { + factor = 1.2 + FROM = { stewardship = 15 } + } + modifier = { + factor = 1.2 + stewardship = 15 + } + modifier = { + factor = 1.2 + FROM = { trait = gardener } + } + modifier = { + factor = 1.2 + trait = gardener + } + + FROM = { + change_variable = { + which = gath_res + value = 1 + } + } + } + 50 = { # Unsuccessful gathering + modifier = { + factor = 1.3 + trait = drunkard + } + } + } + + + subtract_variable = { + which = gath_try + value = 1 + } + } + + FROM = { + character_event = { id = MNM.1812 } + } + } +} + +# Outcome and reaction gathering herbs +character_event = { + id = MNM.1812 + desc = { + text = EVTDESC_MNM_1812_A + trigger = { + check_variable = { + which = gath_res + value = 4 + } + } + } + desc = { + text = EVTDESC_MNM_1812_B + trigger = { + NOT = { + check_variable = { + which = gath_res + value = 4 + } + } + check_variable = { + which = gath_res + value = 1 + } + } + } + desc = { + text = EVTDESC_MNM_1812_C + trigger = { + NOT = { + check_variable = { + which = gath_res + value = 1 + } + } + } + } + picture = GFX_evt_bandits + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + trigger = { event_target:gathering_companion = { is_alive = yes } } + + option = { + name = EVTOPTA_MNM_1812 + trigger = { + check_variable = { + which = gath_res + value = 4 + } + } + + if = { + limit = { + has_quest = quest_hermetic_gather_ingredients + } + clr_quest = quest_hermetic_gather_ingredients + sound_effect = hermetic_society_acquire_seed + add_society_currency_medium_effect = yes + } + custom_tooltip = { text = EVTTOOLTIP_MNM_1812 } + } + + option = { + name = EVTOPTB_MNM_1812 + trigger = { + NOT = { + check_variable = { + which = gath_res + value = 4 + } + } + check_variable = { + which = gath_res + value = 1 + } + } + + if = { + limit = { + has_quest = quest_hermetic_gather_ingredients + } + clr_quest = quest_hermetic_gather_ingredients + sound_effect = hermetic_society_acquire_seed + add_society_currency_minor_effect = yes + } + custom_tooltip = { text = EVTTOOLTIP_MNM_1812 } + } + + option = { + name = EVTOPTC_MNM_1812 + trigger = { + NOT = { + check_variable = { + which = gath_res + value = 1 + } + } + } + + if = { + limit = { + has_quest = quest_hermetic_gather_ingredients + } + clr_quest = { id = quest_hermetic_gather_ingredients failure = yes } + } + random_list = { + 120 = { #no effect + + } + 60 = { #poisoned + if = { + limit = { has_dlc = "Reapers" } + give_food_poisoning_effect = yes + custom_tooltip = { + text = EVTTOOLTIP_MNM_1812_ILL + } + } + if = { + limit = { NOT = { has_dlc = "Reapers" } } + add_trait = ill + } + } + } + } + + after = { + while = { + limit = { + check_variable = { + which = gath_res + value = 1 + } + } + hermetic_add_herbal_ingredient_effect = yes + + subtract_variable = { + which = gath_res + value = 1 + } + } + clr_character_flag = do_not_disturb + clr_character_flag = apprentice_hermetic_gathering + } +} + +character_event = { + id = MNM.1815 + desc = EVTDESC_MNM_1815 + picture = GFX_evt_hunt + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + trigger = { event_target:gathering_companion = { is_alive = yes } } + + option = { # Head out with companion to find animal parts. + name = EVTOPTA_MNM_1815 + trigger = { + martial = 11 + FROM = { martial = 11 } + } + hidden_effect = { + event_target:gathering_companion = { + character_event = { id = MNM.1816 days = 50 random = 40 } + } + } + } + + option = { # Head out with companion to find animal parts. + name = EVTOPTB_MNM_1815 + trigger = { + NOT = { martial = 11 } + NOT = { FROM = { martial = 11 } } + martial = 7 + FROM = { martial = 7 } + } + hidden_effect = { + event_target:gathering_companion = { + character_event = { id = MNM.1816 days = 50 random = 40 } + } + } + } + + option = { # Head out with companion to find animal parts. + name = EVTOPTC_MNM_1815 + trigger = { + NOT = { martial = 7 } + NOT = { FROM = { martial = 7 } } + } + hidden_effect = { + event_target:gathering_companion = { + character_event = { id = MNM.1816 days = 50 random = 40 } + } + } + } +} + +# Calculate outcome for gathering animal parts +character_event = { + id = MNM.1816 + hide_window = yes + + is_triggered_only = yes + + trigger = { event_target:gathering_companion = { is_alive = yes } } + + immediate = { + set_variable = { + which = gath_try + value = 5 + } + set_variable = { + which = gath_res + value = 0 + } + + while = { + limit = { + check_variable = { + which = gath_try + value = 1 + } + } + random_list = { + 50 = { # Successful gathering + modifier = { + factor = 0.5 + FROM = { NOT = { martial = 4 } } + } + modifier = { + factor = 0.5 + NOT = { martial = 4 } + } + modifier = { + factor = 0.6 + FROM = { NOT = { martial = 6 } } + } + modifier = { + factor = 0.6 + NOT = { martial = 6 } + } + modifier = { + factor = 0.7 + FROM = { NOT = { martial = 8 } } + } + modifier = { + factor = 0.7 + NOT = { martial = 8 } + } + modifier = { + factor = 1.2 + FROM = { martial = 11 } + } + modifier = { + factor = 1.2 + martial = 11 + } + modifier = { + factor = 1.2 + FROM = { martial = 13 } + } + modifier = { + factor = 1.2 + martial = 13 + } + modifier = { + factor = 1.2 + FROM = { martial = 15 } + } + modifier = { + factor = 1.2 + martial = 15 + } + modifier = { + factor = 1.2 + FROM = { trait = hunter } + } + modifier = { + factor = 1.2 + trait = hunter + } + + FROM = { + change_variable = { + which = gath_res + value = 1 + } + } + } + 50 = { # Unsuccessful gathering + modifier = { + factor = 1.3 + trait = drunkard + } + } + } + + + subtract_variable = { + which = gath_try + value = 1 + } + } + + FROM = { + character_event = { id = MNM.1817 } + } + } +} + +# Outcome and reaction gathering animal parts +character_event = { + id = MNM.1817 + desc = { + text = EVTDESC_MNM_1817_A + trigger = { + check_variable = { + which = gath_res + value = 4 + } + } + } + desc = { + text = EVTDESC_MNM_1817_B + trigger = { + NOT = { + check_variable = { + which = gath_res + value = 4 + } + } + check_variable = { + which = gath_res + value = 1 + } + } + } + desc = { + text = EVTDESC_MNM_1817_C + trigger = { + NOT = { + check_variable = { + which = gath_res + value = 1 + } + } + } + } + picture = GFX_evt_hunt + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + trigger = { event_target:gathering_companion = { is_alive = yes } } + + option = { + name = EVTOPTA_MNM_1817 + trigger = { + check_variable = { + which = gath_res + value = 4 + } + } + + if = { + limit = { + has_quest = quest_hermetic_gather_ingredients + } + clr_quest = quest_hermetic_gather_ingredients + sound_effect = hermetic_society_acquire_seed + add_society_currency_medium_effect = yes + } + custom_tooltip = { text = EVTTOOLTIP_MNM_1817 } + } + + option = { + name = EVTOPTB_MNM_1817 + trigger = { + NOT = { + check_variable = { + which = gath_res + value = 4 + } + } + check_variable = { + which = gath_res + value = 1 + } + } + + if = { + limit = { + has_quest = quest_hermetic_gather_ingredients + } + clr_quest = quest_hermetic_gather_ingredients + sound_effect = hermetic_society_acquire_seed + add_society_currency_minor_effect = yes + } + custom_tooltip = { text = EVTTOOLTIP_MNM_1817 } + } + + option = { + name = EVTOPTC_MNM_1817 + trigger = { + NOT = { + check_variable = { + which = gath_res + value = 1 + } + } + } + + if = { + limit = { + has_quest = quest_hermetic_gather_ingredients + } + clr_quest = { id = quest_hermetic_gather_ingredients failure = yes } + } + prestige = -25 + add_character_modifier = { + modifier = disappointing_hunt + duration = 1095 #3 years + } + } + + after = { + while = { + limit = { + check_variable = { + which = gath_res + value = 1 + } + } + hermetic_add_animal_ingredient_effect = yes + + subtract_variable = { + which = gath_res + value = 1 + } + } + clr_character_flag = do_not_disturb + clr_character_flag = apprentice_hermetic_gathering + } +} + +character_event = { + id = MNM.1820 + desc = EVTDESC_MNM_1820 + picture = GFX_evt_market + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + trigger = { event_target:gathering_companion = { is_alive = yes } } + + option = { # Head out with companion to shop misc ingredients. + name = EVTOPTA_MNM_1820 + trigger = { + diplomacy = 11 + FROM = { diplomacy = 11 } + } + hidden_effect = { + event_target:gathering_companion = { + character_event = { id = MNM.1821 days = 50 random = 40 } + } + } + } + + option = { # Head out with companion to shop misc ingredients. + name = EVTOPTB_MNM_1820 + trigger = { + NOT = { diplomacy = 11 } + NOT = { FROM = { diplomacy = 11 } } + diplomacy = 7 + FROM = { diplomacy = 7 } + } + hidden_effect = { + event_target:gathering_companion = { + character_event = { id = MNM.1821 days = 50 random = 40 } + } + } + } + + option = { # Head out with companion to shop misc ingredients. + name = EVTOPTC_MNM_1820 + trigger = { + NOT = { diplomacy = 7 } + NOT = { FROM = { diplomacy = 7 } } + } + hidden_effect = { + event_target:gathering_companion = { + character_event = { id = MNM.1821 days = 50 random = 40 } + } + } + } +} + +# Calculate outcome for shopping for misc ingredients +character_event = { + id = MNM.1821 + hide_window = yes + + is_triggered_only = yes + + trigger = { event_target:gathering_companion = { is_alive = yes } } + + immediate = { + set_variable = { + which = gath_try + value = 5 + } + set_variable = { + which = gath_res + value = 0 + } + + while = { + limit = { + check_variable = { + which = gath_try + value = 1 + } + } + random_list = { + 50 = { # Successful gathering + modifier = { + factor = 0.5 + FROM = { NOT = { diplomacy = 4 } } + } + modifier = { + factor = 0.5 + NOT = { diplomacy = 4 } + } + modifier = { + factor = 0.6 + FROM = { NOT = { diplomacy = 6 } } + } + modifier = { + factor = 0.6 + NOT = { diplomacy = 6 } + } + modifier = { + factor = 0.7 + FROM = { NOT = { diplomacy = 8 } } + } + modifier = { + factor = 0.7 + NOT = { diplomacy = 8 } + } + modifier = { + factor = 1.2 + FROM = { diplomacy = 11 } + } + modifier = { + factor = 1.2 + diplomacy = 11 + } + modifier = { + factor = 1.2 + FROM = { diplomacy = 13 } + } + modifier = { + factor = 1.2 + diplomacy = 13 + } + modifier = { + factor = 1.2 + FROM = { diplomacy = 15 } + } + modifier = { + factor = 1.2 + diplomacy = 15 + } + modifier = { + factor = 1.2 + FROM = { trait = gregarious } + } + modifier = { + factor = 1.2 + trait = gregarious + } + + FROM = { + change_variable = { + which = gath_res + value = 1 + } + } + } + 50 = { # Unsuccessful gathering + modifier = { + factor = 1.3 + trait = drunkard + } + } + } + + + subtract_variable = { + which = gath_try + value = 1 + } + } + + FROM = { + character_event = { id = MNM.1822 } + } + } +} + +# Outcome and reaction shopping for misc ingredients +character_event = { + id = MNM.1822 + desc = { + text = EVTDESC_MNM_1822_A + trigger = { + check_variable = { + which = gath_res + value = 4 + } + } + } + desc = { + text = EVTDESC_MNM_1822_B + trigger = { + NOT = { + check_variable = { + which = gath_res + value = 4 + } + } + check_variable = { + which = gath_res + value = 1 + } + } + } + desc = { + text = EVTDESC_MNM_1822_C + trigger = { + NOT = { + check_variable = { + which = gath_res + value = 1 + } + } + } + } + picture = GFX_evt_market + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + trigger = { event_target:gathering_companion = { is_alive = yes } } + + option = { + name = EVTOPTA_MNM_1822 + trigger = { + check_variable = { + which = gath_res + value = 4 + } + } + wealth = -35 + + if = { + limit = { + has_quest = quest_hermetic_gather_ingredients + } + clr_quest = quest_hermetic_gather_ingredients + sound_effect = hermetic_society_acquire_seed + add_society_currency_medium_effect = yes + } + custom_tooltip = { text = EVTTOOLTIP_MNM_1822 } + } + + option = { + name = EVTOPTB_MNM_1822 + trigger = { + NOT = { + check_variable = { + which = gath_res + value = 4 + } + } + check_variable = { + which = gath_res + value = 1 + } + } + wealth = -25 + + if = { + limit = { + has_quest = quest_hermetic_gather_ingredients + } + clr_quest = quest_hermetic_gather_ingredients + sound_effect = hermetic_society_acquire_seed + add_society_currency_minor_effect = yes + } + custom_tooltip = { text = EVTTOOLTIP_MNM_1822 } + } + + option = { + name = EVTOPTC_MNM_1822 + trigger = { + NOT = { + check_variable = { + which = gath_res + value = 1 + } + } + } + wealth = -15 + if = { + limit = { + has_quest = quest_hermetic_gather_ingredients + } + clr_quest = { id = quest_hermetic_gather_ingredients failure = yes } + } + } + + after = { + while = { + limit = { + check_variable = { + which = gath_res + value = 1 + } + } + hermetic_add_misc_ingredient_effect = yes + + subtract_variable = { + which = gath_res + value = 1 + } + } + clr_character_flag = do_not_disturb + clr_character_flag = apprentice_hermetic_gathering + } +} + +character_event = { + id = MNM.1825 + hide_window = yes + + is_triggered_only = yes + + immediate = { + clr_character_flag = do_not_disturb + clr_character_flag = apprentice_hermetic_gathering + set_variable = { which = gath_try value = 0 } + set_variable = { which = gath_res value = 0 } + } +} + +#Misc: apprenticeship +#Ping event for apprenticeship completion +character_event = { + id = MNM.1413 + hide_window = yes + is_triggered_only = yes + trigger = { + liege = { + character = FROMFROM + is_alive = yes + society_member_of = hermetics + } + has_minor_title = title_hermetics_apprentice + + } + immediate = { FROMFROM = { character_event = { id = MNM.1414 } } } +} + +#Apprenticeship completion +character_event = { + id = MNM.1414 + desc = EVTDESC_MNM_1414 + picture = GFX_evt_gathering_of_minds + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1414 + + add_society_currency_major_effect = yes + + FROM = { + set_character_flag = completed_apprenticeship + remove_title = title_hermetics_apprentice + change_learning = 2 + } + } +} + +#Apprentice died +character_event = { + id = MNM.1415 + hide_window = yes + is_triggered_only = yes + + is_in_society = yes + ai = yes + + trigger = { + society_member_of = hermetics + has_minor_title = title_hermetics_apprentice + NOR = { + death_no_trace_trigger = yes + death_in_china_trigger = yes + } + } + + immediate = { + any_player = { + limit = { + ROOT = { + has_opinion_modifier = { + who = PREV + modifier = opinion_hermetic_apprentice + } + } + } + character_event = { id = MNM.1416 } + if = { + limit = { has_character_flag = apprentice_hermetic_gathering } + clear_delayed_event = { id = MNM.1825 } + character_event = { id = MNM.1825 } + } + } + } +} + +#Notification of dead apprentice +character_event = { + id = MNM.1416 + picture = GFX_evt_death + border = GFX_event_normal_frame_religion + + desc = { + trigger = { + NOR = { + NOT = { opinion = { value = 0 who = FROM } } + NOT = { FROM = { learning = 12 } } + } + } + text = EVTDESC_MNM_1416_A + } + desc = { + trigger = { + OR = { + NOT = { opinion = { value = 0 who = FROM } } + NOT = { FROM = { learning = 12 } } + } + } + text = EVTDESC_MNM_1416_B + } + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1416 + } +} + +###################################### +# Invite Hermetic member to Stargazing +###################################### +# Invitation events +letter_event = { + id = MNM.1920 + desc = EVTDESC_MNM_1920 + border = GFX_event_letter_frame_religion + + is_triggered_only = yes + + option = { # Accept + name = EVTOPTA_MNM_1920 + + save_event_target_as = stargazing_guest + hidden_tooltip = { set_variable = { which = stargazing_satisfaction value = 0 } } + FROMFROM = { + letter_event = { id = MNM.1921 } + } + + ai_chance = { + factor = 20 + modifier = { + factor = 2 + OR = { + trait = scholar + trait = mystic + trait = theologian + } + } + modifier = { + factor = 2 + trait = gregarious + } + modifier = { + factor = 2 + trait = trusting + } + modifier = { + factor = 1.5 + OR = { + trait = genius + trait = quick + } + } + modifier = { + factor = 1.5 + trait = shrewd + } + modifier = { + factor = 2 + opinion = { who = FROM value = 30 } + } + modifier = { + factor = 3 + opinion = { who = FROM value = 60 } + } + modifier = { + factor = 10 + is_friend = FROM + } + } + } + + option = { # Decline + name = EVTOPTB_MNM_1920 + + FROMFROM = { + letter_event = { id = MNM.1922 } + } + + ai_chance = { + factor = 10 + modifier = { + factor = 2 + trait = content + } + modifier = { + factor = 2 + trait = shy + } + modifier = { + factor = 2 + trait = paranoid + } + modifier = { + factor = 2 + trait = slothful + } + modifier = { + factor = 1.5 + trait = envious + } + modifier = { + factor = 2 + OR = { + trait = imbecile + trait = slow + } + } + modifier = { + factor = 2 + trait = dull + } + modifier = { + factor = 3 + NOT = { opinion = { who = FROM value = -25 } } + } + modifier = { + factor = 3 + NOT = { opinion = { who = FROM value = -50 } } + } + modifier = { + factor = 20 + is_rival = FROM + } + } + } +} + +#Invitation accepted +letter_event = { + id = MNM.1921 + desc = EVTDESC_MNM_1921 + border = GFX_event_letter_frame_religion + + is_triggered_only = yes + + option = { + name = EXCELLENT + + reverse_opinion = { + modifier = opinion_stargazing + who = FROM + years = 1 + } + hidden_tooltip = { + save_event_target_as = stargazing_host + character_event = { id = MNM.1925 days = 30 random = 30 } + } + } +} + +# Invitation declined +letter_event = { + id = MNM.1922 + desc = EVTDESC_MNM_1922 + border = GFX_event_letter_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_WOL_11117 # That is disappointing + + opinion = { + modifier = opinion_disappointed + who = FROM + years = 1 + } + hidden_tooltip = { + clr_character_flag = inviting_guests_to_stargazing_timer + clr_character_flag = do_not_disturb + remove_character_modifier = inviting_to_stargazing + } + } +} + +# Check if able to start stargazing +character_event = { + id = MNM.1925 + hide_window = yes + + is_triggered_only = yes + + immediate = { + clr_character_flag = inviting_guests_to_stargazing_timer + if = { + limit = { + OR = { + war = yes + trait = incapable + NOT = { society_member_of = hermetics } + } + } + character_event = { id = MNM.1926 } # Cancel stargazing due to unforeseen circumstances + break = yes + } + character_event = { id = MNM.1928 } # Let stargazing commence! + } +} + +# Cancel stargazing +character_event = { + id = MNM.1926 + desc = EVTDESC_MNM_1926 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1926 + + custom_tooltip = { + text = EVTOPTA_MNM_1926_TOOLTIP + } + hidden_tooltip = { + clr_character_flag = do_not_disturb + remove_character_modifier = inviting_to_stargazing + event_target:stargazing_guest = { + letter_event = { id = MNM.1927 } + } + } + } +} + +letter_event = { + id = MNM.1927 + desc = EVTDESC_MNM_1927 + border = GFX_event_letter_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_ZE_6005 # What a shame + } +} + +# Guest arrives - What to do before nightfall? +character_event = { + id = MNM.1928 + desc = EVTDESC_MNM_1928 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + character_event = { id = MNM.1945 days = 20 random = 10 } + } + + option = { # Show observatory + name = EVTOPTA_MNM_1928 + + trigger = { + has_character_flag = built_observatory + } + tooltip_info = yes + custom_tooltip = { + text = AVAILABLE_DUE_TO_OBSERVATORY + } + custom_tooltip = { + text = EVTOPTA_MNM_1928_TOOLTIP + } + event_target:stargazing_guest = { character_event = { id = MNM.1930 } } + + ai_chance = { + factor = 10 + modifier = { + factor = 2 + trait = scholar + } + } + } + + option = { # Show fancy equipment + name = EVTOPTB_MNM_1928 + + trigger = { + has_character_flag = owns_observatory_equipment + NOT = { has_character_flag = built_observatory } + } + tooltip_info = yes + custom_tooltip = { + text = AVAILABLE_DUE_TO_OBSERVATORY_EQUIPMENT + } + + custom_tooltip = { + text = EVTOPTB_MNM_1928_TOOLTIP + } + event_target:stargazing_guest = { character_event = { id = MNM.1933 } } + + ai_chance = { + factor = 10 + modifier = { + factor = 2 + trait = scholar + } + } + } + + option = { # Show nearby location to use for stargazing + name = EVTOPTC_MNM_1928 + trigger = { + NOT = { has_character_flag = built_observatory } + } + + custom_tooltip = { + text = EVTOPTC_MNM_1928_TOOLTIP + } + event_target:stargazing_guest = { character_event = { id = MNM.1936 } } + + ai_chance = { + factor = 10 + modifier = { + factor = 2 + trait = gardener + } + modifier = { + factor = 2 + trait = gardener + } + } + } + + option = { # Sit down for a drink/conversation + name = EVTOPTD_MNM_1928 + + custom_tooltip = { + text = EVTOPTD_MNM_1928_TOOLTIP + } + event_target:stargazing_guest = { character_event = { id = MNM.1939 } } + + ai_chance = { + factor = 10 + modifier = { + factor = 4 + trait = gluttonous + } + modifier = { + factor = 2 + trait = hedonist + } + modifier = { + factor = 2 + trait = drunkard + } + } + } + + option = { # Spend some time to study together + name = EVTOPTE_MNM_1928 + + custom_tooltip = { + text = EVTOPTE_MNM_1928_TOOLTIP + } + event_target:stargazing_guest = { character_event = { id = MNM.1942 } } + + ai_chance = { + factor = 10 + modifier = { + factor = 2 + trait = erudite + } + modifier = { + factor = 2 + trait = patient + } + } + } +} + +# Show observatory +character_event = { + id = MNM.1930 + desc = EVTDESC_MNM_1930 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { # Guest is impressed + name = EVTOPTA_MNM_1930 + + reverse_opinion = { + modifier = opinion_pleased + who = FROM + years = 1 + } + hidden_tooltip = { + if = { + limit = { + OR = { + trait = scholar + trait = mystic + trait = theologian + trait = humble + } + } + change_variable = { which = stargazing_satisfaction value = 4 } + } + if = { + limit = { + NOR = { + trait = scholar + trait = mystic + trait = theologian + trait = humble + } + } + change_variable = { which = stargazing_satisfaction value = 3 } + } + event_target:stargazing_host = { character_event = { id = MNM.1931 days = 7 random = 7 } } + } + + ai_chance = { + factor = 10 + modifier = { + factor = 2 + trait = scholar + } + modifier = { + factor = 2 + trait = mystic + } + modifier = { + factor = 2 + trait = theologian + } + modifier = { + factor = 2 + trait = ambitious + } + } + } + + option = { # Guest is not impressed + name = EVTOPTB_MNM_1930 + + reverse_opinion = { + modifier = not_feeling_apreciated + who = FROM + years = 1 + } + hidden_tooltip = { + event_target:stargazing_host = { character_event = { id = MNM.1932 days = 7 random = 7 } } + } + + ai_chance = { + factor = 5 + modifier = { + factor = 5 + trait = envious + } + modifier = { + factor = 3 + trait = arbitrary + } + } + } +} + +character_event = { + id = MNM.1931 + desc = EVTDESC_MNM_1931 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1931 + + reverse_opinion = { + modifier = opinion_impressed + who = FROM + years = 2 + } + } +} + +character_event = { + id = MNM.1932 + desc = EVTDESC_MNM_1932 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1932 + + reverse_opinion = { + modifier = opinion_unimpressed + who = FROM + years = 2 + } + } +} + +# Show fancy equipment +character_event = { + id = MNM.1933 + desc = EVTDESC_MNM_1933 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { # Guest is impressed + name = EVTOPTA_MNM_1933 + + reverse_opinion = { + modifier = opinion_pleased + who = FROM + years = 1 + } + hidden_tooltip = { + if = { + limit = { + OR = { + trait = scholar + trait = mystic + trait = theologian + trait = humble + } + } + change_variable = { which = stargazing_satisfaction value = 3 } + } + if = { + limit = { + NOR = { + trait = scholar + trait = mystic + trait = theologian + trait = humble + } + } + change_variable = { which = stargazing_satisfaction value = 2 } + } + event_target:stargazing_host = { character_event = { id = MNM.1934 days = 7 random = 7 } } + } + + ai_chance = { + factor = 10 + modifier = { + factor = 2 + trait = scholar + } + modifier = { + factor = 2 + trait = mystic + } + modifier = { + factor = 2 + trait = theologian + } + modifier = { + factor = 2 + trait = ambitious + } + } + } + + option = { # Guest is not impressed + name = EVTOPTB_MNM_1933 + + reverse_opinion = { + modifier = not_feeling_apreciated + who = FROM + years = 1 + } + hidden_tooltip = { + event_target:stargazing_host = { character_event = { id = MNM.1935 days = 7 random = 7 } } + } + + ai_chance = { + factor = 5 + modifier = { + factor = 5 + trait = envious + } + modifier = { + factor = 3 + trait = arbitrary + } + } + } +} + +character_event = { + id = MNM.1934 + desc = EVTDESC_MNM_1934 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1934 + + reverse_opinion = { + modifier = opinion_impressed + who = FROM + years = 2 + } + } +} + +character_event = { + id = MNM.1935 + desc = EVTDESC_MNM_1935 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1935 + + reverse_opinion = { + modifier = opinion_unimpressed + who = FROM + years = 2 + } + } +} + +# Show nearby location to use for stargazing +character_event = { + id = MNM.1936 + desc = EVTDESC_MNM_1936 + picture = GFX_evt_stone_church + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { # Guest approves + name = EVTOPTA_MNM_1936 + + reverse_opinion = { + modifier = opinion_pleased + who = FROM + years = 1 + } + hidden_tooltip = { + if = { + limit = { + OR = { + trait = architect + trait = gardener + trait = diligent + } + } + change_variable = { which = stargazing_satisfaction value = 2 } + } + if = { + limit = { + NOR = { + trait = architect + trait = gardener + trait = diligent + } + } + change_variable = { which = stargazing_satisfaction value = 1 } + } + event_target:stargazing_host = { character_event = { id = MNM.1937 days = 7 random = 7 } } + } + + ai_chance = { + factor = 10 + modifier = { + factor = 2 + trait = architect + } + modifier = { + factor = 2 + trait = gardener + } + modifier = { + factor = 2 + trait = diligent + } + } + } + + option = { # Guest does not approve + name = EVTOPTB_MNM_1936 + + reverse_opinion = { + modifier = not_feeling_apreciated + who = FROM + years = 1 + } + hidden_tooltip = { + event_target:stargazing_host = { character_event = { id = MNM.1938 days = 7 random = 7 } } + } + + ai_chance = { + factor = 5 + modifier = { + factor = 5 + trait = slothful + } + modifier = { + factor = 2 + trait = paranoid + } + } + } +} + +character_event = { + id = MNM.1937 + desc = EVTDESC_MNM_1937 + picture = GFX_evt_stone_church + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1937 + + reverse_opinion = { + modifier = opinion_impressed + who = FROM + years = 2 + } + } +} + +character_event = { + id = MNM.1938 + desc = EVTDESC_MNM_1938 + picture = GFX_evt_stone_church + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1938 + + reverse_opinion = { + modifier = opinion_unimpressed + who = FROM + years = 2 + } + } +} + +# Sit down for a drink/conversation +character_event = { + id = MNM.1939 + desc = EVTDESC_MNM_1939 + picture = GFX_evt_feast + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { # Guest enjoyed it + name = EVTOPTA_MNM_1939 + + reverse_opinion = { + modifier = opinion_pleased + who = FROM + years = 1 + } + hidden_tooltip = { + if = { + limit = { + OR = { + trait = hedonist + trait = socializer + trait = gregarious + trait = gluttonous + trait = drunkard + } + } + change_variable = { which = stargazing_satisfaction value = 2 } + } + if = { + limit = { + NOR = { + trait = hedonist + trait = socializer + trait = gregarious + trait = gluttonous + trait = drunkard + } + } + change_variable = { which = stargazing_satisfaction value = 1 } + } + event_target:stargazing_host = { character_event = { id = MNM.1940 days = 7 random = 7 } } + } + + ai_chance = { + factor = 10 + modifier = { + factor = 3 + trait = gluttonous + } + modifier = { + factor = 2 + trait = hedonist + } + modifier = { + factor = 2 + trait = socializer + } + modifier = { + factor = 2 + trait = gregarious + } + modifier = { + factor = 2 + trait = drunkard + } + modifier = { + factor = 2 + trait = decadent + } + } + } + + option = { # Guest did not enjoy it + name = EVTOPTB_MNM_1939 + + reverse_opinion = { + modifier = not_feeling_apreciated + who = FROM + years = 1 + } + hidden_tooltip = { + event_target:stargazing_host = { character_event = { id = MNM.1941 days = 7 random = 7 } } + } + + ai_chance = { + factor = 5 + modifier = { + factor = 5 + trait = temperate + } + modifier = { + factor = 6 + AND = { + religion_group = muslim + NOT = { trait = decadent } + } + } + modifier = { + factor = 3 + trait = shy + } + } + } +} + +character_event = { + id = MNM.1940 + desc = EVTDESC_MNM_1940 + picture = GFX_evt_feast + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1940 + + reverse_opinion = { + modifier = opinion_enjoyed_feast + who = FROM + years = 1 + } + } +} + +character_event = { + id = MNM.1941 + desc = EVTDESC_MNM_1941 + picture = GFX_evt_feast + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1941 + + reverse_opinion = { + modifier = opinion_unimpressed + who = FROM + years = 2 + } + } +} + +# Spend some time to study together +character_event = { + id = MNM.1942 + desc = EVTDESC_MNM_1942 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { # Guest approves + name = EVTOPTA_MNM_1942 + + reverse_opinion = { + modifier = opinion_pleased + who = FROM + years = 1 + } + hidden_tooltip = { + if = { + limit = { + OR = { + trait = erudite + trait = scholar + trait = faqih + trait = diligent + } + } + change_variable = { which = stargazing_satisfaction value = 2 } + } + if = { + limit = { + NOR = { + trait = erudite + trait = scholar + trait = faqih + trait = diligent + } + } + change_variable = { which = stargazing_satisfaction value = 1 } + } + event_target:stargazing_host = { character_event = { id = MNM.1943 days = 7 random = 7 } } + } + + ai_chance = { + factor = 10 + modifier = { + factor = 2 + trait = erudite + } + modifier = { + factor = 2 + trait = content + } + modifier = { + factor = 2 + trait = scholar + } + modifier = { + factor = 2 + trait = patient + } + } + } + + option = { # Guest does not approve + name = EVTOPTB_MNM_1942 + + reverse_opinion = { + modifier = not_feeling_apreciated + who = FROM + years = 1 + } + hidden_tooltip = { + event_target:stargazing_host = { character_event = { id = MNM.1944 days = 7 random = 7 } } + } + + ai_chance = { + factor = 5 + modifier = { + factor = 4 + trait = slothful + } + modifier = { + factor = 4 + trait = wroth + } + modifier = { + factor = 3 + trait = gregarious + } + } + } +} + +character_event = { + id = MNM.1943 + desc = EVTDESC_MNM_1943 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1943 + + reverse_opinion = { + modifier = opinion_impressed + who = FROM + years = 2 + } + } +} + +character_event = { + id = MNM.1944 + desc = EVTDESC_MNM_1944 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1944 + + reverse_opinion = { + modifier = opinion_unimpressed + who = FROM + years = 2 + } + } +} + +# Nightfall - Time to stargaze +character_event = { + id = MNM.1945 + desc = EVTDESC_MNM_1945 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + character_event = { id = MNM.1961 days = 10 random = 5 } + } + + option = { + name = EVTOPTA_MNM_1945 + + custom_tooltip = { + text = PREPARE_STARGAZING + + hidden_tooltip = { + random_list = { + 10 = { # Make observation about stars + modifier = { + factor = 3 + has_character_flag = built_observatory + } + modifier = { + factor = 2 + has_character_flag = owns_observatory_equipment + NOT = { has_character_flag = built_observatory } + } + + character_event = { id = MNM.1947 days = 5 random = 5 } + } + 10 = { # Make observation about zodiacs + modifier = { + factor = 3 + has_character_flag = built_observatory + } + modifier = { + factor = 2 + has_character_flag = owns_observatory_equipment + NOT = { has_character_flag = built_observatory } + } + + character_event = { id = MNM.1950 days = 5 random = 5 } + } + 10 = { # Saw a comet cross the sky + modifier = { + factor = 2 + has_character_flag = built_observatory + } + modifier = { + factor = 1.5 + has_character_flag = owns_observatory_equipment + NOT = { has_character_flag = built_observatory } + } + + character_event = { id = MNM.1953 days = 5 random = 5 } + } + 20 = { # Learned something new - Nothing major + character_event = { id = MNM.1955 days = 5 random = 5 } + } + 20 = { # Could not see anything of interest + character_event = { id = MNM.1957 days = 5 random = 5 } + } + 10 = { # Bad weather ruined the night + modifier = { + factor = 2 + OR = { + month = 11 + NOT = { month = 3 } + } + } + + character_event = { id = MNM.1959 days = 5 random = 5 } + } + } + } + } + } +} + +# Make observation about stars +character_event = { + id = MNM.1947 + desc = EVTDESC_MNM_1947 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1947 + + random_list = { + 10 = { + military_techpoints = 100 + } + 10 = { + economy_techpoints = 100 + } + 10 = { + culture_techpoints = 100 + } + } + + if = { + limit = { + NOT = { has_character_modifier = stargazer } + } + add_character_modifier = { + modifier = stargazer + duration = 1825 + } + } + hidden_tooltip = { + set_character_flag = stargazing_good_outcome + event_target:stargazing_guest = { character_event = { id = MNM.1948 } } + } + } +} + +character_event = { + id = MNM.1948 + desc = EVTDESC_MNM_1948 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1948 + + random_list = { + 10 = { + military_techpoints = 50 + } + 10 = { + economy_techpoints = 50 + } + 10 = { + culture_techpoints = 50 + } + } + } +} + +# Make observation about zodiacs +character_event = { + id = MNM.1950 + desc = EVTDESC_MNM_1950 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1950 + + military_techpoints = 50 + economy_techpoints = 50 + culture_techpoints = 50 + + hidden_tooltip = { + set_character_flag = stargazing_good_outcome + event_target:stargazing_guest = { character_event = { id = MNM.1951 } } + } + } +} + +character_event = { + id = MNM.1951 + desc = EVTDESC_MNM_1951 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1951 + + military_techpoints = 25 + economy_techpoints = 25 + culture_techpoints = 25 + } +} + +# Saw a comet cross the sky +character_event = { + id = MNM.1953 + desc = EVTDESC_MNM_1953 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1953 + + military_techpoints = 30 + economy_techpoints = 30 + culture_techpoints = 30 + piety = 25 + + if = { + limit = { + NOR = { + trait = humble + trait = proud + } + } + random = { + chance = 10 + add_trait = humble + hidden_tooltip = { + character_event = { id = 38260 } # Notify humble + } + } + } + hidden_tooltip = { + set_character_flag = stargazing_good_outcome + event_target:stargazing_guest = { character_event = { id = MNM.1954 } } + } + } +} + +character_event = { + id = MNM.1954 + desc = EVTDESC_MNM_1954 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1954 + + military_techpoints = 20 + economy_techpoints = 20 + culture_techpoints = 20 + piety = 15 + + if = { + limit = { + NOR = { + trait = humble + trait = proud + } + } + random = { + chance = 10 + add_trait = humble + hidden_tooltip = { + character_event = { id = 38260 } # Notify humble + } + } + } + } +} + +# Learned something new - Nothing major +character_event = { + id = MNM.1955 + desc = EVTDESC_MNM_1955 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1955 + + hidden_tooltip = { + set_character_flag = stargazing_good_outcome + event_target:stargazing_guest = { character_event = { id = MNM.1956 } } + } + } +} + +character_event = { + id = MNM.1956 + desc = EVTDESC_MNM_1955 # Reused text + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1955 # Reused text + } +} + +# Could not see anything of interest +character_event = { + id = MNM.1957 + desc = EVTDESC_MNM_1957 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1957 + + hidden_tooltip = { + set_character_flag = stargazing_bad_outcome + event_target:stargazing_guest = { character_event = { id = MNM.1958 } } + } + } +} + +character_event = { + id = MNM.1958 + desc = EVTDESC_MNM_1958 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1958 + + hidden_tooltip = { + change_variable = { which = stargazing_satisfaction value = -1 } + } + } +} + +# Bad weather ruined the night +character_event = { + id = MNM.1959 + desc = EVTDESC_MNM_1959 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1959 + + random = { + chance = 5 + add_trait = depressed + hidden_tooltip = { + character_event = { + id = 38288 #Notify depressed + } + } + } + hidden_tooltip = { + set_character_flag = stargazing_bad_outcome + event_target:stargazing_guest = { character_event = { id = MNM.1960 } } + } + } +} + +character_event = { + id = MNM.1960 + desc = EVTDESC_MNM_1959 # Reused text + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1959 # Reused text + + hidden_tooltip = { + change_variable = { which = stargazing_satisfaction value = -1 } + } + } +} + +# Check outcome +character_event = { + id = MNM.1961 + hide_window = yes + + is_triggered_only = yes + + immediate = { + hidden_tooltip = { + random_list = { + 10 = { # Become friends + modifier = { + factor = 2 + event_target:stargazing_guest = { + check_variable = { which = stargazing_satisfaction value = 3 } + } + } + modifier = { + factor = 2 + event_target:stargazing_guest = { + check_variable = { which = stargazing_satisfaction value = 2 } + } + } + modifier = { + factor = 1.5 + event_target:stargazing_guest = { + check_variable = { which = stargazing_satisfaction value = 1 } + } + } + modifier = { + factor = 0 + event_target:stargazing_guest = { + NOT = { check_variable = { which = stargazing_satisfaction value = 0 } } + } + } + modifier = { + factor = 2 + event_target:stargazing_guest = { + opinion = { who = ROOT value = 50 } + } + } + modifier = { + factor = 0 + event_target:stargazing_guest = { + is_friend = ROOT + } + } + character_event = { id = MNM.1962 } + } + 5 = { # Become rivals + modifier = { + factor = 4 + event_target:stargazing_guest = { + NOT = { check_variable = { which = stargazing_satisfaction value = 0 } } + } + } + modifier = { + factor = 4 + event_target:stargazing_guest = { + NOT = { opinion = { who = ROOT value = -25 } } + } + } + modifier = { + factor = 0 + event_target:stargazing_guest = { + check_variable = { which = stargazing_satisfaction value = 1 } + } + } + modifier = { + factor = 0 + event_target:stargazing_guest = { + is_friend = ROOT + } + } + character_event = { id = MNM.1965 } + } + 50 = { } # Nothing happens + } + character_event = { id = MNM.1968 days = 10 random = 5 } + } + } +} + +# Host and guest become friends +character_event = { + id = MNM.1962 + desc = EVTDESC_MNM_1962 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1962 + + add_friend = event_target:stargazing_guest + + hidden_tooltip = { + set_character_flag = stargazing_become_friends + event_target:stargazing_guest = { character_event = { id = MNM.1963 } } + } + } +} + +character_event = { + id = MNM.1963 + desc = EVTDESC_MNM_1963 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1963 + + tooltip = { + add_friend = event_target:stargazing_host + } + } +} + +# Host and guest become rivals +character_event = { + id = MNM.1965 + desc = EVTDESC_MNM_1965 + picture = GFX_evt_quarrel + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1965 + + add_rival = event_target:stargazing_guest + + hidden_tooltip = { + event_target:stargazing_guest = { character_event = { id = MNM.1966 } } + } + } +} + +character_event = { + id = MNM.1966 + desc = EVTDESC_MNM_1966 + picture = GFX_evt_quarrel + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1966 + + tooltip = { + add_rival = event_target:stargazing_host + } + } +} + +# Morning arrives - Stargazing is over +character_event = { + id = MNM.1968 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + desc = { + text = EVTDESC_MNM_1968_A + trigger = { + has_character_flag = stargazing_good_outcome + } + } + desc = { + text = EVTDESC_MNM_1968_B + trigger = { + has_character_flag = stargazing_bad_outcome + NOT = { has_character_flag = stargazing_become_friends } + } + } + desc = { + text = EVTDESC_MNM_1968_C + trigger = { + has_character_flag = stargazing_bad_outcome + has_character_flag = stargazing_become_friends + } + } + + immediate = { + event_target:stargazing_guest = { character_event = { id = MNM.1969 } } + } + + option = { + name = { + text = EVTOPTA_MNM_1968_A + trigger = { + has_character_flag = stargazing_good_outcome + } + } + name = { + text = EVTOPTA_MNM_1968_B + trigger = { + has_character_flag = stargazing_bad_outcome + NOT = { has_character_flag = stargazing_become_friends } + } + } + name = { + text = EVTOPTA_MNM_1968_C + trigger = { + has_character_flag = stargazing_bad_outcome + has_character_flag = stargazing_become_friends + } + } + + hidden_tooltip = { + add_character_modifier = { + name = stargazing_timer + duration = 1095 + hidden = yes + } + clr_character_flag = do_not_disturb + clr_character_flag = stargazing_good_outcome + clr_character_flag = stargazing_bad_outcome + clr_character_flag = stargazing_become_friends + remove_character_modifier = inviting_to_stargazing + } + } +} + +character_event = { + id = MNM.1969 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + desc = { + text = EVTDESC_MNM_1968_A + trigger = { + FROM = { has_character_flag = stargazing_good_outcome } + } + } + desc = { + text = EVTDESC_MNM_1968_B + trigger = { + FROM = { + has_character_flag = stargazing_bad_outcome + NOT = { has_character_flag = stargazing_become_friends } + } + } + } + desc = { + text = EVTDESC_MNM_1968_C + trigger = { + FROM = { + has_character_flag = stargazing_bad_outcome + has_character_flag = stargazing_become_friends + } + } + } + + option = { + name = EVTOPTA_MNM_1969 + } +} + +###Magus Power: Write a Magnum Opus### +#Write a Magnum Opus - Start Writing +character_event = { + id = MNM.1610 + desc = EVTDESC_MNM_1610 + picture = GFX_evt_scientist + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { #It will be glorious! + name = EVTOPTA_MNM_1610 + add_character_modifier = { + modifier = writing_magnum_opus + years = 2 + } + hidden_effect = { + character_event = { id = MNM.1600 days = 90 random = 60 } + } + } +} + +#Write a Magnum Opus - Pick Pillar +character_event = { + id = MNM.1600 + desc = EVTDESC_MNM_1600 + picture = GFX_evt_scientist + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + trigger = { society_member_of = hermetics } + + option = { #write book on Theurgy + name = EVTOPTA_MNM_1600 + trigger = { + NOT = { + AND = { + OR = { + has_artifact = magnum_opus_theurgy_ritual_1 + has_artifact = magnum_opus_theurgy_ritual_2 + has_artifact = magnum_opus_theurgy_ritual_3 + has_artifact = magnum_opus_theurgy_ritual_4 + } + OR = { + has_artifact = magnum_opus_theurgy_contemplation_1 + has_artifact = magnum_opus_theurgy_contemplation_2 + has_artifact = magnum_opus_theurgy_contemplation_3 + has_artifact = magnum_opus_theurgy_contemplation_4 + } + } + } + } + custom_tooltip = { text = EVTOPTA_MNM_1600_TT } + hidden_effect = { + character_event = { id = MNM.1601 days = 90 random = 60 } + } + } + + option = { #write book on Astrology + name = EVTOPTB_MNM_1600 + trigger = { + NOT = { + AND = { + OR = { + has_artifact = magnum_opus_astrology_stars_1 + has_artifact = magnum_opus_astrology_stars_2 + has_artifact = magnum_opus_astrology_stars_3 + has_artifact = magnum_opus_astrology_stars_4 + } + OR = { + has_artifact = magnum_opus_astrology_planets_1 + has_artifact = magnum_opus_astrology_planets_2 + has_artifact = magnum_opus_astrology_planets_3 + has_artifact = magnum_opus_astrology_planets_4 + } + } + } + } + custom_tooltip = { text = EVTOPTB_MNM_1600_TT } + hidden_effect = { + character_event = { id = MNM.1602 days = 90 random = 60 } + } + } + + option = { #write book on Alchemy + name = EVTOPTC_MNM_1600 + trigger = { + NOT = { + AND = { + OR = { + has_artifact = magnum_opus_alchemy_panacea_1 + has_artifact = magnum_opus_alchemy_panacea_2 + has_artifact = magnum_opus_alchemy_panacea_3 + has_artifact = magnum_opus_alchemy_panacea_4 + } + OR = { + has_artifact = magnum_opus_alchemy_transmutation_1 + has_artifact = magnum_opus_alchemy_transmutation_2 + has_artifact = magnum_opus_alchemy_transmutation_3 + has_artifact = magnum_opus_alchemy_transmutation_4 + } + } + } + } + custom_tooltip = { text = EVTOPTC_MNM_1600_TT } + hidden_effect = { + character_event = { id = MNM.1603 days = 90 random = 60 } + } + } +} + +#Write a Magnum Opus - Pick type of Theurgy +character_event = { + id = MNM.1601 + desc = EVTDESC_MNM_1601 + picture = GFX_evt_secluded_in_prayer + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + trigger = { society_member_of = hermetics } + + option = { #Focus on Rituals/Invocation + name = EVTOPTA_MNM_1601 + trigger = { + NOT = { + OR = { + has_artifact = magnum_opus_theurgy_ritual_1 + has_artifact = magnum_opus_theurgy_ritual_2 + has_artifact = magnum_opus_theurgy_ritual_3 + has_artifact = magnum_opus_theurgy_ritual_4 + } + } + } + custom_tooltip = { text = EVTOPTA_MNM_1601_TT } + hidden_effect = { + character_event = { id = MNM.1604 days = 90 random = 60 } + } + } + + option = { #Focus on Contemplation + name = EVTOPTB_MNM_1601 + trigger = { + NOT = { + OR = { + has_artifact = magnum_opus_theurgy_contemplation_1 + has_artifact = magnum_opus_theurgy_contemplation_2 + has_artifact = magnum_opus_theurgy_contemplation_3 + has_artifact = magnum_opus_theurgy_contemplation_4 + } + } + } + custom_tooltip = { text = EVTOPTB_MNM_1601_TT } + hidden_effect = { + character_event = { id = MNM.1605 days = 90 random = 60 } + } + } +} + +#Write a Magnum Opus - Pick type of Astrology +character_event = { + id = MNM.1602 + desc = EVTDESC_MNM_1602 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + trigger = { society_member_of = hermetics } + + option = { #Focus on Stars + name = EVTOPTA_MNM_1602 + trigger = { + NOT = { + OR = { + has_artifact = magnum_opus_astrology_stars_1 + has_artifact = magnum_opus_astrology_stars_2 + has_artifact = magnum_opus_astrology_stars_3 + has_artifact = magnum_opus_astrology_stars_4 + } + } + } + custom_tooltip = { text = EVTOPTA_MNM_1602_TT } + hidden_effect = { + character_event = { id = MNM.1606 days = 90 random = 60 } + } + } + + option = { #Focus on Planets + name = EVTOPTB_MNM_1602 + trigger = { + NOT = { + OR = { + has_artifact = magnum_opus_astrology_planets_1 + has_artifact = magnum_opus_astrology_planets_2 + has_artifact = magnum_opus_astrology_planets_3 + has_artifact = magnum_opus_astrology_planets_4 + } + } + } + custom_tooltip = { text = EVTOPTB_MNM_1602_TT } + hidden_effect = { + character_event = { id = MNM.1607 days = 90 random = 60 } + } + } +} + +#Write a Magnum Opus - Pick type of Alchemy +character_event = { + id = MNM.1603 + desc = EVTDESC_MNM_1603 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + trigger = { society_member_of = hermetics } + + option = { #Focus on Universal Panacea + name = EVTOPTA_MNM_1603 + trigger = { + NOT = { + OR = { + has_artifact = magnum_opus_alchemy_panacea_1 + has_artifact = magnum_opus_alchemy_panacea_2 + has_artifact = magnum_opus_alchemy_panacea_3 + has_artifact = magnum_opus_alchemy_panacea_4 + } + } + } + custom_tooltip = { text = EVTOPTA_MNM_1603_TT } + hidden_effect = { + character_event = { id = MNM.1608 days = 90 random = 60 } + } + } + + option = { #Focus on Transmutation + name = EVTOPTB_MNM_1603 + trigger = { + NOT = { + OR = { + has_artifact = magnum_opus_alchemy_transmutation_1 + has_artifact = magnum_opus_alchemy_transmutation_2 + has_artifact = magnum_opus_alchemy_transmutation_3 + has_artifact = magnum_opus_alchemy_transmutation_4 + } + } + } + custom_tooltip = { text = EVTOPTB_MNM_1603_TT } + hidden_effect = { + character_event = { id = MNM.1609 days = 90 random = 60 } + } + } +} + +#Write a Magnum Opus - Finish book on Ritualistic/Invocative Theurgy +character_event = { + id = MNM.1604 + desc = EVTDESC_MNM_1604 + picture = GFX_evt_secluded_in_prayer + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { #Awesome! + name = EVTOPTA_MNM_1604 + if = { + limit = { + NOT = { learning = 12 } + } + prestige = 50 + add_artifact = magnum_opus_theurgy_ritual_1 + } + if = { + limit = { + AND = { + learning = 12 + NOT = { learning = 18 } + } + } + prestige = 100 + add_artifact = magnum_opus_theurgy_ritual_2 + } + if = { + limit = { + AND = { + learning = 18 + NOT = { learning = 25 } + } + } + prestige = 150 + add_artifact = magnum_opus_theurgy_ritual_3 + } + if = { + limit = { + learning = 25 + } + prestige = 200 + add_artifact = magnum_opus_theurgy_ritual_4 + } + remove_character_modifier = writing_magnum_opus + } +} + +#Write a Magnum Opus - Finish book on Contemplative Theurgy +character_event = { + id = MNM.1605 + desc = EVTDESC_MNM_1605 + picture = GFX_evt_secluded_in_prayer + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { #Awesome! + name = EVTOPTA_MNM_1605 + if = { + limit = { + NOT = { learning = 12 } + } + prestige = 50 + add_artifact = magnum_opus_theurgy_contemplation_1 + } + if = { + limit = { + AND = { + learning = 12 + NOT = { learning = 18 } + } + } + prestige = 100 + add_artifact = magnum_opus_theurgy_contemplation_2 + } + if = { + limit = { + AND = { + learning = 18 + NOT = { learning = 25 } + } + } + prestige = 150 + add_artifact = magnum_opus_theurgy_contemplation_3 + } + if = { + limit = { + learning = 25 + } + prestige = 200 + add_artifact = magnum_opus_theurgy_contemplation_4 + } + remove_character_modifier = writing_magnum_opus + } +} + +#Write a Magnum Opus - Finish book on Astrology with focus on Stars +character_event = { + id = MNM.1606 + desc = EVTDESC_MNM_1606 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { #Awesome! + name = EVTOPTA_MNM_1606 + if = { + limit = { + NOT = { learning = 12 } + } + prestige = 50 + add_artifact = magnum_opus_astrology_stars_1 + } + if = { + limit = { + AND = { + learning = 12 + NOT = { learning = 18 } + } + } + prestige = 100 + add_artifact = magnum_opus_astrology_stars_2 + } + if = { + limit = { + AND = { + learning = 18 + NOT = { learning = 25 } + } + } + prestige = 150 + add_artifact = magnum_opus_astrology_stars_3 + } + if = { + limit = { + learning = 25 + } + prestige = 200 + add_artifact = magnum_opus_astrology_stars_4 + } + remove_character_modifier = writing_magnum_opus + } +} + +#Write a Magnum Opus - Finish book on Astrology with focus on Planets +character_event = { + id = MNM.1607 + desc = EVTDESC_MNM_1607 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { #Awesome! + name = EVTOPTA_MNM_1607 + if = { + limit = { + NOT = { learning = 12 } + } + prestige = 50 + add_artifact = magnum_opus_astrology_planets_1 + } + if = { + limit = { + AND = { + learning = 12 + NOT = { learning = 18 } + } + } + prestige = 100 + add_artifact = magnum_opus_astrology_planets_2 + } + if = { + limit = { + AND = { + learning = 18 + NOT = { learning = 25 } + } + } + prestige = 150 + add_artifact = magnum_opus_astrology_planets_3 + } + if = { + limit = { + learning = 25 + } + prestige = 200 + add_artifact = magnum_opus_astrology_planets_4 + } + remove_character_modifier = writing_magnum_opus + } +} + +#Write a Magnum Opus - Finish book on Alchemy with focus on Universal Panacea +character_event = { + id = MNM.1608 + desc = EVTDESC_MNM_1608 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { #Awesome! + name = EVTOPTA_MNM_1608 + if = { + limit = { + NOT = { learning = 12 } + } + prestige = 50 + add_artifact = magnum_opus_alchemy_panacea_1 + } + if = { + limit = { + AND = { + learning = 12 + NOT = { learning = 18 } + } + } + prestige = 100 + add_artifact = magnum_opus_alchemy_panacea_2 + } + if = { + limit = { + AND = { + learning = 18 + NOT = { learning = 25 } + } + } + prestige = 150 + add_artifact = magnum_opus_alchemy_panacea_3 + } + if = { + limit = { + learning = 25 + } + prestige = 200 + add_artifact = magnum_opus_alchemy_panacea_4 + } + remove_character_modifier = writing_magnum_opus + } +} + +#Write a Magnum Opus - Finish book on Alchemy with focus on Transmutation +character_event = { + id = MNM.1609 + desc = EVTDESC_MNM_1609 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { #Awesome! + name = EVTOPTA_MNM_1609 + if = { + limit = { + NOT = { learning = 12 } + } + prestige = 50 + add_artifact = magnum_opus_alchemy_transmutation_1 + } + if = { + limit = { + AND = { + learning = 12 + NOT = { learning = 18 } + } + } + prestige = 100 + add_artifact = magnum_opus_alchemy_transmutation_2 + } + if = { + limit = { + AND = { + learning = 18 + NOT = { learning = 25 } + } + } + prestige = 150 + add_artifact = magnum_opus_alchemy_transmutation_3 + } + if = { + limit = { + learning = 25 + } + prestige = 200 + add_artifact = magnum_opus_alchemy_transmutation_4 + } + remove_character_modifier = writing_magnum_opus + } +} + +#Clear Apprentice title upon death or leaving Hermetics +character_event = { + id = MNM.1611 + hide_window = yes + + is_triggered_only = yes + + trigger = { + society_member_of = hermetics + } + + immediate = { + any_courtier_or_vassal = { + limit = { + has_minor_title = title_hermetics_apprentice + } + remove_title = title_hermetics_apprentice + } + } +} + +#################################################### +# Quest: Observe stars/planets +#################################################### +character_event = { + id = MNM.1828 + hide_window = yes + + is_triggered_only = yes + + immediate = { + FROM = { + society_quest_event = { id = MNM.1829 days = 7 random = 7 } + } + } +} + +society_quest_event = { + id = MNM.1829 + desc = EVTDESC_MNM_1829 + + is_triggered_only = yes + + option = { + name = ACCEPT + + set_quest = quest_hermetics_observe_sky + + hidden_effect = { character_event = { id = MNM.1830 days = 5 } } + } + + option = { + name = DECLINE + custom_tooltip = { text = decline_quest_tooltip } + + add_character_modifier = { + name = quest_cooldown_timer + hidden = yes + days = 1000 + } + + ai_chance = { factor = 0 } + } +} + +character_event = { + id = MNM.1830 + desc = EVTDESC_MNM_1830 + picture = GFX_evt_book_carolingian_script + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1830 + add_character_modifier = { + modifier = astronomical_insights_1 + duration = -1 + } + hidden_effect = { + character_event = { id = MNM.1835 days = 40 random = 15 } + } + } +} + +character_event = { # progress event tombola + id = MNM.1835 + hide_window = yes + + is_triggered_only = yes + + immediate = { + random_list = { + 30 = { # Productive evening + character_event = { id = MNM.1840 } + } + 30 = { # Neglect interacting with your spouse + trigger = { + NOT = { event_target:hermetic_collaborator = { is_married = ROOT } } + any_spouse = { + prisoner = no + } + } + + character_event = { id = MNM.1841 } + } + 30 = { # Child wants help to sleep + trigger = { + any_child = { + age = 4 + NOT = { age = 14 } + } + } + character_event = { id = MNM.1842 } + } + 30 = { # Neglect taking care of accounting + character_event = { id = MNM.1843 } + } + 30 = { # Friends upset about missed event + modifier = { + factor = 0 + NOT = { + any_friend = { always = yes } + } + } + + character_event = { id = MNM.1844 } + } + 30 = { # Absent-mindedness in meetings + modifier = { + factor = 0 + NOT = { + any_courtier_or_vassal = { + count = 2 + has_job_title = yes + } + } + } + character_event = { id = MNM.1845 } + } + 30 = { # Use ingredients + trigger = { + has_a_herb_ingredient_trigger = yes + any_artifact = { + count = 2 + has_artifact_flag = ingredient + } + } + character_event = { id = MNM.1855 } + } + } + } +} + + +character_event = { # ending event tombola + id = MNM.1836 + hide_window = yes + + is_triggered_only = yes + + immediate = { + random_list = { + 30 = { # Tracking planets + character_event = { id = MNM.1846 } + } + 30 = { # Predicting Comet + character_event = { id = MNM.1847 } + } + 30 = { # Name a newly found star + character_event = { id = MNM.1848 } + } + 30 = { # Observe zodiac stars + character_event = { id = MNM.1850 } + } + 120 = { # Fail to observe anything of interest + modifier = { + factor = 0.5 + has_character_modifier = astronomical_insights_2 + } + modifier = { + factor = 0.5 + has_character_modifier = astronomical_insights_3 + } + modifier = { + factor = 0.5 + has_character_modifier = astronomical_insights_4 + } + + character_event = { id = MNM.1851 } + } + } + } +} + +character_event = { # continue studying or conclude my findings? + id = MNM.1837 + desc = { + text = EVTDESCA_MNM_1837 + trigger = { + has_character_modifier = astronomical_insights_1 + } + } + desc = { + text = EVTDESCB_MNM_1837 + trigger = { + has_character_modifier = astronomical_insights_2 + } + } + desc = { + text = EVTDESCC_MNM_1837 + trigger = { + has_character_modifier = astronomical_insights_3 + } + } + desc = { + text = EVTDESCD_MNM_1837 + trigger = { + has_character_modifier = astronomical_insights_4 + } + } + picture = GFX_evt_ritual_scroll + border = GFX_event_normal_frame_religion + + hide_from = yes + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1837 + custom_tooltip = { text = EVTOPTA_MNM_1837_TT } + trigger = { + NOT = { has_character_modifier = astronomical_insights_4 } + } + character_event = { id = MNM.1835 days = 60 random = 20 } + } + + option = { + name = EVTOPTB_MNM_1837 + custom_tooltip = { text = EVTOPTB_MNM_1837_TT } + trigger = { + NOT = { has_character_modifier = astronomical_insights_4 } + } + character_event = { id = MNM.1836 days = 20 } + } + + option = { + name = EVTOPTC_MNM_1837 + custom_tooltip = { text = EVTOPTB_MNM_1837_TT } + trigger = { + has_character_modifier = astronomical_insights_4 + } + custom_tooltip = { + text = EVTTOOLTIP_MNM_1837 + character_event = { id = MNM.1836 days = 20 } + } + } +} + +character_event = { # Progress - Productive evening + id = MNM.1840 + desc = EVTDESC_MNM_1840 + picture = GFX_evt_monk + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + hide_from = yes + + option = { + name = EVTOPTA_MNM_1840 + add_society_currency_trivial_effect = yes + } + + option = { + name = EVTOPTB_MNM_1840 + trigger = { trait = slothful } + random = { + chance = 30 + remove_trait_slothful_effect = yes + } + } + + option = { + name = EVTOPTC_MNM_1840 + trigger = { trait = depressed } + random = { + chance = 30 + remove_trait = depressed + } + } + + option = { + name = EVTOPTD_MNM_1840 + trigger = { trait = envious } + random = { + chance = 30 + remove_trait = envious + } + } + + after = { + increase_astronomical_insights_modifier_effect = yes + character_event = { id = MNM.1837 days = 5 } + } +} + +character_event = { # Progress - Neglect interacting with your spouse + id = MNM.1841 + desc = { + text = EVTDESCA_MNM_1841 + trigger = { + NOT = { + event_target:target_spouse = { + OR = { + has_opinion_modifier = { + modifier = opinion_out_of_touch + who = ROOT + } + has_opinion_modifier = { + modifier = opinion_out_of_touch_mild + who = ROOT + } + } + } + } + } + } + desc = { + text = EVTDESCB_MNM_1841 + trigger = { + event_target:target_spouse = { + OR = { + has_opinion_modifier = { + modifier = opinion_out_of_touch + who = ROOT + } + has_opinion_modifier = { + modifier = opinion_out_of_touch_mild + who = ROOT + } + } + } + } + } + picture = GFX_evt_quarrel + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + portrait = event_target:target_spouse + + immediate = { + random_spouse = { + limit = { prisoner = no } + save_event_target_as = target_spouse + } + } + + option = { + name = { + text = EVTOPTA_MNM_1841_1 + trigger = { + NOT = { + event_target:target_spouse = { + OR = { + has_opinion_modifier = { + modifier = opinion_out_of_touch + who = ROOT + } + has_opinion_modifier = { + modifier = opinion_out_of_touch_mild + who = ROOT + } + } + } + } + } + } + name = { + text = EVTOPTA_MNM_1841_2 + trigger = { + event_target:target_spouse = { + OR = { + has_opinion_modifier = { + modifier = opinion_out_of_touch + who = ROOT + } + has_opinion_modifier = { + modifier = opinion_out_of_touch_mild + who = ROOT + } + } + } + } + } + increase_astronomical_insights_modifier_effect = yes + event_target:target_spouse = { + if = { + limit = { + is_lover = ROOT + } + random = { + chance = 35 + modifier = { + factor = 2 + OR = { + has_opinion_modifier = { + modifier = opinion_out_of_touch + who = ROOT + } + has_opinion_modifier = { + modifier = opinion_out_of_touch_mild + who = ROOT + } + } + } + remove_lover = ROOT + } + } + opinion = { + who = ROOT + modifier = opinion_out_of_touch + years = 10 + } + } + } + + option = { + name = { + text = EVTOPTB_MNM_1841_1 + trigger = { + NOT = { + event_target:target_spouse = { + OR = { + has_opinion_modifier = { + modifier = opinion_out_of_touch + who = ROOT + } + has_opinion_modifier = { + modifier = opinion_out_of_touch_mild + who = ROOT + } + } + } + } + } + } + name = { + text = EVTOPTB_MNM_1841_2 + trigger = { + event_target:target_spouse = { + OR = { + has_opinion_modifier = { + modifier = opinion_out_of_touch + who = ROOT + } + has_opinion_modifier = { + modifier = opinion_out_of_touch_mild + who = ROOT + } + } + } + } + } + + event_target:target_spouse = { + opinion = { + who = ROOT + modifier = opinion_relieved + years = 10 + } + } + } + + after = { + character_event = { id = MNM.1837 days = 5 } + } +} + +character_event = { # Progress - Child wants help to sleep + id = MNM.1842 + desc = EVTDESCA_MNM_1842 + picture = GFX_evt_daughter_asking_father + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + random_child = { + limit = { + age = 4 + NOT = { age = 14 } + } + save_event_target_as = target_child + } + if = { + limit = { has_a_herb_ingredient_trigger = yes } + select_random_hermetic_ingredient_herb_effect = yes + break = yes + } + if = { + limit = { has_an_animal_part_ingredient_trigger = yes } + select_random_hermetic_ingredient_animal_part_effect = yes + break = yes + } + if = { + limit = { has_a_powder_ingredient_trigger = yes } + select_random_hermetic_ingredient_powder_effect = yes + break = yes + } + if = { + limit = { has_a_liquid_ingredient_trigger = yes } + select_random_hermetic_ingredient_liquid_effect = yes + } + } + + option = { + name = EVTOPTA_MNM_1842 + increase_astronomical_insights_modifier_effect = yes + event_target:target_child = { + if = { + limit = { + has_dlc = "Conclave" + } + random_list = { + 20 = { add_trait = timid } + 20 = { add_trait = indolent } + 20 = { add_trait = fussy } + 40 = { } + } + } + if = { + limit = { + NOT = { has_dlc = "Conclave" } + } + random_list = { + 20 = { add_trait = slothful } + 20 = { add_trait = envious } + 20 = { add_trait = arbitrary } + 40 = { } + } + } + } + + event_target:target_child = { + opinion = { + who = ROOT + modifier = opinion_bad_parent + years = 25 + } + } + } + + option = { + name = EVTOPTB_MNM_1842 + + event_target:target_child = { + opinion = { + who = ROOT + modifier = opinion_bad_parent + years = 25 + } + } + } + + option = { #this will help you sleep (uses ingredient) + tooltip_info = yes + custom_tooltip = { text = ingredient_option_available_tt } + + name = { + text = EVTOPTC_MNM_1842_herb + trigger = { has_selected_herb_ingredient_1_trigger = yes } + } + name = { + text = EVTOPTC_MNM_1842_animal_part + trigger = { has_selected_animal_part_ingredient_1_trigger = yes } + } + name = { + text = EVTOPTC_MNM_1842_powder + trigger = { has_selected_powder_ingredient_1_trigger = yes } + } + name = { + text = EVTOPTC_MNM_1842_liquid + trigger = { has_selected_liquid_ingredient_1_trigger = yes } + } + + increase_astronomical_insights_modifier_effect = yes + + if = { # if you gave them a herbal tea... + limit = { + has_selected_herb_ingredient_1_trigger = yes + } + event_target:target_child = { + opinion = { + who = ROOT + modifier = comforted_opinion + years = 5 + } + } + } + + if = { # if you gave them animal part broth... + limit = { + has_selected_animal_part_ingredient_1_trigger = yes + } + event_target:target_child = { + opinion = { + who = ROOT + modifier = opinion_cheered_up + years = 2 + } + } + } + + if = { # if you gave them a metal powder... + limit = { + has_selected_powder_ingredient_1_trigger = yes + } + event_target:target_child = { + add_character_modifier = { + modifier = nauseous_from_potion + years = 1 + } + } + } + + if = { # if you fed them mercury, for instance... + limit = { + has_selected_liquid_ingredient_1_trigger = yes + } + event_target:target_child = { + add_character_modifier = { + modifier = nauseous_from_potion + years = 1 + } + } + } + + destroy_selected_ingredient_1_effect = yes + + trigger = { + any_artifact = { has_artifact_flag = ingredient } + } + } + + after = { + character_event = { id = MNM.1837 days = 5 } + hidden_effect = { + remove_selection_of_ingredients_effect = yes + } + } +} + +character_event = { # Progress - Neglect taking care of accounting + id = MNM.1843 + desc = EVTDESC_MNM_1843 + picture = GFX_evt_relic_box + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1843 + increase_astronomical_insights_modifier_effect = yes + add_character_modifier = { + modifier = neglected_accounting + years = 5 + } + scaled_wealth = { + value = -0.5 + min = -25 + max = -70 + } + } + + option = { + name = EVTOPTB_MNM_1843 + scaled_wealth = { + value = -0.3 + min = -15 + max = -40 + } + } + + after = { + character_event = { id = MNM.1837 days = 5 } + } +} + +character_event = { # Progress - Friends upset about missed event + id = MNM.1844 + desc = EVTDESC_MNM_1844 + picture = GFX_evt_bad_news + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + random_friend = { + save_event_target_as = target_friend + } + + if = { + limit = { has_a_herb_ingredient_trigger = yes } + select_random_hermetic_ingredient_herb_effect = yes + break = yes + } + if = { + limit = { has_an_animal_part_ingredient_trigger = yes } + select_random_hermetic_ingredient_animal_part_effect = yes + break = yes + } + if = { + limit = { has_a_powder_ingredient_trigger = yes } + select_random_hermetic_ingredient_powder_effect = yes + break = yes + } + if = { + limit = { has_a_liquid_ingredient_trigger = yes } + select_random_hermetic_ingredient_liquid_effect = yes + } + } + + option = { + name = EVTOPTA_MNM_1844 + increase_astronomical_insights_modifier_effect = yes + event_target:target_friend = { + random = { + chance = 30 + remove_friend = ROOT + } + opinion = { + modifier = opinion_forgot_important_occasion + who = ROOT + years = 15 + } + } + } + + option = { + name = EVTOPTB_MNM_1844 + event_target:target_friend = { + opinion = { + modifier = opinion_forgot_important_occasion_mild + who = ROOT + years = 15 + } + } + } + + option = { + tooltip_info = yes + custom_tooltip = { text = ingredient_option_available_tt } + + name = { + text = EVTOPTC_MNM_1844_herb + trigger = { has_selected_herb_ingredient_1_trigger = yes } + } + name = { + text = EVTOPTC_MNM_1844_animal_part + trigger = { has_selected_animal_part_ingredient_1_trigger = yes } + } + name = { + text = EVTOPTC_MNM_1844_powder + trigger = { has_selected_powder_ingredient_1_trigger = yes } + } + name = { + text = EVTOPTC_MNM_1844_liquid + trigger = { has_selected_liquid_ingredient_1_trigger = yes } + } + + increase_astronomical_insights_modifier_effect = yes + + if = { # if you gave them a herbal tea... + limit = { + has_selected_herb_ingredient_1_trigger = yes + } + event_target:target_friend = { + opinion = { + who = ROOT + modifier = comforted_opinion + years = 5 + } + } + } + + if = { # if you gave them animal part broth... + limit = { + has_selected_animal_part_ingredient_1_trigger = yes + } + event_target:target_friend = { + opinion = { + who = ROOT + modifier = opinion_cheered_up + years = 5 + } + } + } + + if = { # if you gave them a metal powder... + limit = { + has_selected_powder_ingredient_1_trigger = yes + } + event_target:target_friend = { + opinion = { + who = ROOT + modifier = opinion_cheered_up + years = 5 + } + } + } + + if = { # if you fed them mercury, for instance... + limit = { + has_selected_liquid_ingredient_1_trigger = yes + } + event_target:target_friend = { + add_character_modifier = { + modifier = nauseous_from_potion + years = 1 + } + } + } + + destroy_selected_ingredient_1_effect = yes + + trigger = { + any_artifact = { has_artifact_flag = ingredient } + } + } + + after = { + character_event = { id = MNM.1837 days = 5 } + remove_selection_of_ingredients_effect = yes + } +} + +character_event = { # Progress - Absent-mindedness in meetings + id = MNM.1845 + desc = EVTDESC_MNM_1845 + picture = GFX_evt_state_diplomacy + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + any_courtier_or_vassal = { + limit = { + has_job_title = yes + } + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_dislikes_this_score = yes + } + save_event_target_as = councillor1 + } + any_courtier_or_vassal = { + limit = { + has_job_title = yes + NOT = { character = event_target:councillor1 } + } + score_value = { #Prioritizes selecting an interesting courtier... + value = 10 + interesting_courtier_selection_score = yes + prev_likes_this_score = yes + } + save_event_target_as = councillor2 + } + } + + option = { + name = EVTOPTA_MNM_1845 + increase_astronomical_insights_modifier_effect = yes + + event_target:councillor2 = { + opinion = { + modifier = opinion_fired_from_council + who = ROOT + years = 5 + } + trigger_switch = { + on_trigger = has_job_title + job_chancellor = { remove_title = job_chancellor } + job_marshal = { remove_title = job_marshal } + job_treasurer = { remove_title = job_treasurer } + job_spymaster = { remove_title = job_spymaster } + job_spiritual = { remove_title = job_spiritual } + } + } + } + + option = { + name = EVTOPTB_MNM_1845 + event_target:councillor1 = { + opinion = { + modifier = opinion_angry + who = ROOT + years = 5 + } + } + } + + after = { + character_event = { id = MNM.1837 days = 5 } + } +} + +# Progress event: use ingredients +character_event = { + id = MNM.1855 + desc = EVTDESC_MNM_1855 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + select_random_hermetic_ingredient_herb_effect = yes + select_random_hermetic_ingredient_animal_part_effect = yes + select_random_hermetic_ingredient_liquid_effect = yes + select_random_hermetic_ingredient_powder_effect = yes + } + + option = { # Smoke something...! + name = EVTOPTA_MNM_1855 + + random = { + chance = 30 + increase_astronomical_insights_modifier_effect = yes + } + + destroy_selected_ingredient_1_effect = yes + + trigger = { + has_selected_herb_ingredient_1_trigger = yes + } + } + + option = { # Cook something...! + name = EVTOPTB_MNM_1855 + + random = { + chance = 40 + increase_astronomical_insights_modifier_effect = yes + } + + destroy_selected_ingredient_2_effect = yes + + trigger = { + has_selected_animal_part_ingredient_2_trigger = yes + } + } + + option = { # I'll keep it under my pillow + name = EVTOPTC_MNM_1855 + + random = { + chance = 50 + increase_astronomical_insights_modifier_effect = yes + } + + destroy_selected_ingredient_2_effect = yes + + trigger = { + has_selected_powder_ingredient_2_trigger = yes + } + } + + option = { # Combine several somethings...! + tooltip_info = yes + custom_tooltip = { text = multiple_ingredient_option_available_tt } + + name = EVTOPTD_MNM_1855 + + random_list = { + 85 = { + increase_astronomical_insights_modifier_effect = yes + } + 15 = { + add_maimed_trait_effect = yes + } + } + + destroy_selected_ingredient_1_and_2_effect = yes + + trigger = { + has_selected_liquid_ingredient_2_trigger = yes + } + } + + option = { #I'd rather not... + name = EVTOPTE_MNM_1855 + } + + after = { + character_event = { id = MNM.1837 days = 5 } + remove_selection_of_ingredients_effect = yes + } +} + + +character_event = { # Outcome - Tracking planets + id = MNM.1846 + desc = EVTDESC_MNM_1846 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1846 + random = { + chance = 15 + add_trait = patient + } + clr_quest = quest_hermetics_observe_sky + sound_effect = hermetic_society_observe_planet + add_mission_succeed_influence_effect = yes + add_society_currency_medium_effect = yes + remove_astronomical_insight_modifier_effect = yes + } +} + +character_event = { # Outcome - Predicting star-fall + id = MNM.1847 + desc = EVTDESC_MNM_1847 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1847 # Invite everyone to this occasion + character_event = { id = MNM.1853 days = 190 random = 70 } + } + + option = { + name = EVTOPTB_MNM_1847 # I'll remember the day and observe it myself + character_event = { id = MNM.1854 days = 190 random = 70 } + } +} + +character_event = { # Outcome - Name a newly found star + id = MNM.1848 + desc = EVTDESC_MNM_1848 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + immediate = { + random_child = { + limit = { + NOT = { + any_sibling = { + age = PREV + OR = { + mother = { character = ROOT } + father = { character = ROOT } + } + NOT = { has_character_modifier = got_named_star } + } + } + } + save_event_target_as = target_child + } + random_spouse = { + limit = { + NOT = { has_character_modifier = got_named_star } + } + save_event_target_as = target_spouse + } + random_friend = { + limit = { + NOT = { has_character_modifier = got_named_star } + } + save_event_target_as = target_friend + } + } + + option = { # Name it after my child + name = EVTOPTA_MNM_1848 + trigger = { + event_target:target_child = { always = yes } + } + + event_target:target_child = { + add_character_modifier = { + modifier = got_named_star + duration = -1 + } + opinion = { + who = ROOT + modifier = opinion_gift_from_above + years = 20 + } + } + } + + option = { # Name it after my spouse + name = EVTOPTB_MNM_1848 + trigger = { + event_target:target_spouse = { always = yes } + } + + event_target:target_spouse = { + add_character_modifier = { + modifier = got_named_star + duration = -1 + } + if = { + limit = { + opinion = { + who = ROOT + value = 20 + } + } + add_lover = ROOT + break = yes + } + opinion = { + who = ROOT + modifier = opinion_gift_from_above + years = 20 + } + } + } + + option = { # Name it after a friend + name = EVTOPTC_MNM_1848 + trigger = { + event_target:target_friend = { always = yes } + } + + event_target:target_friend = { + add_character_modifier = { + modifier = got_named_star + duration = -1 + } + opinion = { + who = ROOT + modifier = opinion_gift_from_above + years = 20 + } + } + } + + option = { # Name it after myself + name = EVTOPTD_MNM_1848 + add_trait = proud + add_character_modifier = { + modifier = got_named_star + duration = -1 + } + } + + after = { + clr_quest = quest_hermetics_observe_sky + sound_effect = hermetic_society_observe_planet + add_mission_succeed_influence_effect = yes + add_society_currency_medium_effect = yes + remove_astronomical_insight_modifier_effect = yes + } +} + +long_character_event = { # Outcome - Observe zodiac stars + id = MNM.1850 + desc = EVTDESC_MNM_1850 + picture = GFX_evt_comet + border = GFX_event_long_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1850 + add_western_zodiac_trait_effect = yes + clr_quest = quest_hermetics_observe_sky + sound_effect = hermetic_society_observe_planet + add_mission_succeed_influence_effect = yes + add_society_currency_medium_effect = yes + remove_astronomical_insight_modifier_effect = yes + } +} + +character_event = { # Outcome - Fail to observe anything of interest + id = MNM.1851 + desc = EVTDESC_MNM_1851 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1851 + clr_quest = { id = quest_hermetics_observe_sky failure = yes } + add_mission_fail_influence_effect = yes + remove_astronomical_insight_modifier_effect = yes + } +} + +character_event = { # Notification - Named star + id = MNM.1852 + desc = EVTDESC_MNM_1852 + picture = GFX_evt_comet + border = GFX_event_normal_frame_religion + + is_triggered_only = yes + + option = { + name = EVTOPTA_MNM_1852 + tooltip = { + add_character_modifier = { + modifier = got_named_star + duration = -1 + } + } + } +} + +# You invited everyone to this star-fall observation +long_character_event = { + id = MNM.1853 + picture = GFX_evt_comet + border = GFX_event_long_frame_religion + + is_triggered_only = yes + + desc = { + text = EVTDESCA_MNM_1853 + trigger = { has_character_flag = comet_success } + } + desc = { + text = EVTDESCB_MNM_1853 + trigger = { has_character_flag = comet_failure } + } + + immediate = { + random_list = { + 50 = { + set_character_flag = comet_success + } + 50 = { + modifier = { + factor = 0.5 + has_character_modifier = astronomical_insights_2 + } + modifier = { + factor = 0.5 + has_character_modifier = astronomical_insights_3 + } + modifier = { + factor = 0.5 + has_character_modifier = astronomical_insights_4 + } + + set_character_flag = comet_failure + } + } + } + + option = { + name = EVTOPTA_MNM_1853 + trigger = { has_character_flag = comet_success } + + add_trait = proud + prestige = 100 + + clr_quest = quest_hermetics_observe_sky + sound_effect = hermetic_society_observe_planet + add_mission_succeed_influence_effect = yes + add_society_currency_medium_effect = yes + } + + option = { + name = EVTOPTB_MNM_1853 + trigger = { has_character_flag = comet_failure } + add_character_modifier = { + modifier = failed_to_predict_star_fall + } + + clr_quest = { id = quest_hermetics_observe_sky failure = yes } + add_mission_fail_influence_effect = yes + } + + after = { + clr_character_flag = comet_success + clr_character_flag = comet_failure + remove_astronomical_insight_modifier_effect = yes + } +} + +# You observed the star-fall alone +long_character_event = { + id = MNM.1854 + picture = GFX_evt_comet + border = GFX_event_long_frame_religion + + is_triggered_only = yes + + desc = { + text = EVTDESCA_MNM_1854 + trigger = { has_character_flag = comet_success } + } + desc = { + text = EVTDESCB_MNM_1854 + trigger = { has_character_flag = comet_failure } + } + + immediate = { + random_list = { + 50 = { + set_character_flag = comet_success + } + 50 = { + modifier = { + factor = 0.5 + has_character_modifier = astronomical_insights_2 + } + modifier = { + factor = 0.5 + has_character_modifier = astronomical_insights_3 + } + modifier = { + factor = 0.5 + has_character_modifier = astronomical_insights_4 + } + + set_character_flag = comet_failure + } + } + } + + option = { + name = EVTOPTA_MNM_1854 + trigger = { has_character_flag = comet_success } + + clr_quest = quest_hermetics_observe_sky + sound_effect = hermetic_society_observe_planet + add_mission_succeed_influence_effect = yes + add_society_currency_medium_effect = yes + } + + option = { + name = EVTOPTB_MNM_1854 + trigger = { has_character_flag = comet_failure } + + clr_quest = { id = quest_hermetics_observe_sky failure = yes } + add_mission_fail_influence_effect = yes + } + + after = { + clr_character_flag = comet_success + clr_character_flag = comet_failure + remove_astronomical_insight_modifier_effect = yes + } +} + +########################################################### +######### Inherited ingredient set-up event ######### +########################################################### +character_event = { + id = MNM.5107 + hide_window = yes + is_triggered_only = yes + + trigger = { + FROM = { has_artifact_flag = ingredient } #the artifact inherited must be an ingredient... + NOT = { has_character_flag = dealing_with_inherited_ingredients } #you mustn't already dealing with this... + } + + immediate = { + set_character_flag = dealing_with_inherited_ingredients + FROMFROM = { save_event_target_as = previous_ingredient_owner } #does this work on dead folk? + character_event = { id = MNM.5108 } + } +} + +#Dealing with inherited ingredients - delays the visible event +character_event = { + id = MNM.5108 + hide_window = yes + is_triggered_only = yes + + immediate = { + if = { + limit = { + ai = yes + FROMFROM = { has_artifact_flag = ingredient } + } + FROMFROM = { destroy_artifact = yes } + } + if = { + limit = { + ai = no + NOT = { has_character_flag = owns_inherited_ingredients } + } + set_character_flag = owns_inherited_ingredients + character_event = { id = MNM.5108 days = 10 } #if this is the first instance of this event, send this event again to check if you ever inherited more than one ingredient... + break = yes + } + if = { #run second time around + limit = { + ai = no + has_character_flag = owns_inherited_ingredients + any_artifact = { + count = 2 + has_artifact_flag = ingredient + } + } + repeat_event = { id = MNM.5109 } #send visible event + } + } +} + +#Inherited ingredients - keep or no? +character_event = { + id = MNM.5109 + picture = GFX_evt_experiment + border = GFX_event_normal_frame_religion + is_triggered_only = yes + + desc = { + text = EVTDESC_MNM_5109_hermetic + trigger = { + society_member_of = hermetics + } + } + desc = { + text = EVTDESC_MNM_5109_other_society + trigger = { + NOT = { society_member_of = hermetics } + is_in_society = yes + } + } + desc = { + text = EVTDESC_MNM_5109_no_society + trigger = { + is_in_society = no + } + } + desc = { + text = EVTDESC_MNM_5109_child + trigger = { + NOT = { age = 16 } + } + } + + immediate = { + select_random_hermetic_ingredient_effect = yes + select_random_hermetic_ingredient_effect = yes + } + + option = { + name = EVTOPTA_MNM_5109 + destroy_selected_ingredient_1_and_2_effect = yes + piety = 25 + ai_chance = { factor = 5 } + } + option = { + name = EVTOPTB_MNM_5109 + destroy_all_ingredients_effect = yes + piety = 25 + prestige = 25 + ai_chance = { factor = 100 } + } + option = { + name = EVTOPTC_MNM_5109 + } + + after = { + remove_selection_of_ingredients_effect = yes + clr_character_flag = owns_inherited_ingredients + clr_character_flag = dealing_with_inherited_ingredients + } +} + +#Paranoid ward-making (random event, fired from on_society_bi_yearly_pulse) +character_event = { + id = MNM.5110 + desc = EVTDESC_MNM_5110 + picture = GFX_evt_shady_meeting + border = GFX_event_normal_frame_intrigue + is_triggered_only = yes + capable_only = yes + + trigger = { + has_dlc = "Mystics" + society_member_of = hermetics + NOT = { has_character_flag = small_defense_against_dark_forces } + NOT = { has_character_flag = medium_defense_against_dark_forces } + NOT = { has_character_flag = large_defense_against_dark_forces } + + OR = { + NOT = { + has_game_rule = { + name = supernatural_events + value = off + } + } + NOT = { + has_game_rule = { + name = devil_worshipers + value = none + } + } + } + + any_artifact = { + count = 3 + has_artifact_flag = ingredient + } + } + + immediate = { + select_random_hermetic_ingredient_effect = yes + select_random_hermetic_ingredient_effect = yes + } + + option = { #One ingredient is fine + name = EVTOPTA_MNM_5110 + prestige = 15 + piety = -10 + destroy_selected_ingredient_1_effect = yes + + clr_character_flag = small_defense_against_dark_forces + clr_character_flag = medium_defense_against_dark_forces + clr_character_flag = large_defense_against_dark_forces + set_character_flag = small_defense_against_dark_forces + + ai_chance = { factor = 10 } + } + option = { #I want to use both ingredients + name = EVTOPTB_MNM_5110 + prestige = 25 + piety = -20 + destroy_selected_ingredient_1_and_2_effect = yes + + clr_character_flag = small_defense_against_dark_forces + clr_character_flag = medium_defense_against_dark_forces + clr_character_flag = large_defense_against_dark_forces + set_character_flag = medium_defense_against_dark_forces + + ai_chance = { factor = 10 } + } + option = { #I'll cover my quarters in these things! + name = EVTOPTC_MNM_5110 + prestige = 35 + piety = -30 + destroy_all_ingredients_effect = yes + + clr_character_flag = small_defense_against_dark_forces + clr_character_flag = medium_defense_against_dark_forces + clr_character_flag = large_defense_against_dark_forces + set_character_flag = large_defense_against_dark_forces + + ai_chance = { factor = 100 } + } + option = { #this is paranoia! + name = EVTOPTD_MNM_5110 + ai_chance = { factor = 0 } + } + after = { + remove_selection_of_ingredients_effect = yes + } +} \ No newline at end of file diff --git a/MOD/Witcher/gfx/interface/societies/society_bg_coram_agh_tera.dds b/MOD/Witcher/gfx/interface/societies/society_bg_coram_agh_tera.dds new file mode 100644 index 000000000..a21521cc9 Binary files /dev/null and b/MOD/Witcher/gfx/interface/societies/society_bg_coram_agh_tera.dds differ diff --git a/MOD/Witcher/gfx/interface/societies/society_bg_witcher_order.dds b/MOD/Witcher/gfx/interface/societies/society_bg_witcher_order.dds index 954d02d7b..f705bbe5d 100644 Binary files a/MOD/Witcher/gfx/interface/societies/society_bg_witcher_order.dds and b/MOD/Witcher/gfx/interface/societies/society_bg_witcher_order.dds differ diff --git a/MOD/Witcher/interface/zz_W_override.gfx b/MOD/Witcher/interface/zz_W_override.gfx index 6facaa7ac..d0148d1d8 100644 --- a/MOD/Witcher/interface/zz_W_override.gfx +++ b/MOD/Witcher/interface/zz_W_override.gfx @@ -14,4 +14,10 @@ spriteTypes = { norefcount = yes can_be_lowres = yes } + + spriteType = { + name = "GFX_society_main_background_the_satanists" + texturefile = "gfx\\interface\\societies\\society_bg_coram_agh_tera.dds" + } + } \ No newline at end of file diff --git a/MOD/Witcher/localisation/00_W_vanilla_overrides.csv b/MOD/Witcher/localisation/00_W_vanilla_overrides.csv index 59a02a7f3..2debd9c4b 100644 --- a/MOD/Witcher/localisation/00_W_vanilla_overrides.csv +++ b/MOD/Witcher/localisation/00_W_vanilla_overrides.csv @@ -229,3 +229,17 @@ WIKIPEDIA_LINK; WIKIPEDIA_LINK_DESC;Opens a browser to the Wiki page for this character;Ouvre un navigateur vers la page Wiki du personnage;Öffnet den Browser und zeigt die Wiki für diesen Charakter an;;Abre un enlace en el explorador a la página de Wiki de este personaje;;;;;;;;;x WIKIPEDIA_LINK_MISSING;§YThis character has no Wiki link§W;§YCe personnage n'a pas de page wiki§!;§YDieser Charakter besitzt keinen Wiki-Link§!;;§YEste personaje no tiene enlace en Wiki§W;;;;;;;;;x WIKIPEDIA_LINK_DISABLED;Wiki Links are disabled;Les liens wiki sont désactivés;Wiki-Links sind deaktiviert;;Los enlaces a la Wiki están desactivados;;;;;;;;;x +# Societies;;;;;;;;;;;;;; +the_satanists;[GetLucifersOwnSocietyName];[GetLucifersOwnSocietyName];[GetLucifersOwnSocietyName];;[GetLucifersOwnSocietyName];;;;;;;;;x +the_satanists_real;Coram Agh Tera;;;;;;;;;;;;;x +the_satanists_random;[melitele.GetRandomEvilGodNameCap]'s Own;Adeptes du [melitele.GetRandomEvilGodNameCap];Kinder von [melitele.GetRandomEvilGodNameCap];;siervos de [melitele.GetRandomEvilGodNameCap];;;;;;;;;x +the_satanists_desc;[GetLucifersOwnSocietyDesc];[GetLucifersOwnSocietyDesc];[GetLucifersOwnSocietyDesc];;[GetLucifersOwnSocietyDesc];;;;;;;;;x +the_satanists_desc_real;Those who serve the Great Weaver hide in our midst, dedicating their depravities and perfidies to their Lord the Lionheaded Spider. Every transgression is a hymn, every murder a roar of defiance against the word of [Root.Religion.GetHighGodName]. The Great Weaver rewards such dark sacraments handsomely – witches are said to be gifted with unnatural lifespans and all manner of demonic powers.;;;;;;;;;;;;;x +satanists_recruit;[GetLucifersOwnRecruit];[GetLucifersOwnRecruit];[GetLucifersOwnRecruit];;[GetLucifersOwnRecruit];;;;;;;;;x +satanists_recruit_desc;[GetLucifersOwnRecruitDesc];[GetLucifersOwnRecruitDesc];[GetLucifersOwnRecruitDesc];;[GetLucifersOwnRecruitDesc];;;;;;;;;x +satanists_recruit_real;Recruit for the Occult;;;;;;;;;;;;;x +satanists_recruit_desc_real;Attempt to find out whether §Y[Root.GetTitledFirstName]§! lusts for the power of the occult. If so, you may offer [Root.GetHerHim] the embrace of the True Lord.;Tenter de savoir si [Root.Get_le_TitledFirstNameJ] convoite les puissances occultes. Si c'est le cas, vous pourriez lui proposer l'étreinte du vrai Seigneur.;Versuche herauszufinden, ob §Y[Root.GetTitledFirstName]§! nach okkulter Macht trachtet. Falls dem so ist, könnt Ihr [Root.GetHerHim] in den Kreis der Jünger des wahren Herren einladen.;;Averigua si §Y[Root.GetTitleFirstName]§! codicia el poder de las fuerzas ocultas. En caso afirmativo, puedes invitarlo/la a acogerse a la verdadera divinidad.;;;;;;;;;x +String_the_Satanists;Coram Agh Tera;;;;;;;;;;;;;x +String_The_Satanists;Coram Agh Tera;;;;;;;;;;;;;x +String_Satan;The Great Weaver;;;;;;;;;;;;;x +String_Lilith;Lilit;;;;;;;;;;;;;x diff --git a/MOD/Witcher/localisation/W_religions.csv b/MOD/Witcher/localisation/W_religions.csv index c105b75ab..cdd85e7a7 100644 --- a/MOD/Witcher/localisation/W_religions.csv +++ b/MOD/Witcher/localisation/W_religions.csv @@ -7,6 +7,9 @@ GOD_MOTHER;The Mother;;;;;;;;;;;;;x GOD_MELITELE;Melitele;;;;;;;;;;;;;x GOD_GODDESS;The Goddess;;;;;;;;;;;;;x GOD_DEOVEL;Deovel;;;;;;;;;;;;;x +GOD_GREAT_WEAVER;The Great Weaver;;;;;;;;;;;;;x +GOD_CORAM_AGH_TERA;Coram Agh Tera;;;;;;;;;;;;;x +GOD_SPIDER;The Spider;;;;;;;;;;;;;x kreve;Kreve;;;;;;;;;;;;;x kreve_DESC;Kreve - one of the gods worshipped in the Northern Kingdoms.;;;;;;;;;;;;;x GOD_KREVE;Kreve;;;;;;;;;;;;;x @@ -91,13 +94,6 @@ GOD_EJE;Eje;;;;;;;;;;;;;x wilderness_religions;Wilderness;;;;;;;;;;;;;x wilderness;Wilderness;;;;;;;;;;;;;x wilderness_DESC;Wilderness;;;;;;;;;;;;;x -#Evil religion group;;;;;;;;;;;;;; -evil_religions;Evil;;;;;;;;;;;;;x -spider;Coram Agh Tera;;;;;;;;;;;;;x -spider_DESC;The Cult of the Lionheaded Spider or Coram Agh Tera. The cult makes bloody sacrifices for its cruel god and the priestesses are known for their powerful curses.;;;;;;;;;;;;;x -GOD_GREAT_WEAVER;The Great Weaver;;;;;;;;;;;;;x -GOD_CORAM_AGH_TERA;Coram Agh Tera;;;;;;;;;;;;;x -GOD_SPIDER;The Spider;;;;;;;;;;;;;x adherent_general;[This.Religion.GetName] follower;;;;;;;;;;;;;x adherent_druidic;Nature worshipper;;;;;;;;;;;;;x # Whether it's a single 'p' or double 'p' in 'worshipper' is not universally agreed upon, but for consistency we use double 'p'. adherent_eternal_fire;Eternal Fire worshipper;;;;;;;;;;;;;x @@ -105,4 +101,10 @@ adherent_elf;Elf;;;;;;;;;;;;;x adherent_dwarf;Dwarf;;;;;;;;;;;;;x adherent_halfling;Halfling;;;;;;;;;;;;;x adherent_gnome;Gnome;;;;;;;;;;;;;x -adherent_dryad;Dryad;;;;;;;;;;;;;x \ No newline at end of file +adherent_dryad;Dryad;;;;;;;;;;;;;x +# Demons +String_Gaunter_O_Dimm;Gaunter O'Dimm;;;;;;;;;;;;;x +String_Draug;Draug;;;;;;;;;;;;;x +String_The_Caretaker;The Caretaker;;;;;;;;;;;;;x +String_The_Black_Cat_and_Dog;The Black Cat and Dog;;;;;;;;;;;;;x +String_Yrrhedes;Yrrhedes;;;;;;;;;;;;;x \ No newline at end of file diff --git a/MOD/Witcher/localisation/customizable_localisation/00_customizable_localisation.txt b/MOD/Witcher/localisation/customizable_localisation/00_customizable_localisation.txt index 43c4a71d9..abdd87b99 100644 --- a/MOD/Witcher/localisation/customizable_localisation/00_customizable_localisation.txt +++ b/MOD/Witcher/localisation/customizable_localisation/00_customizable_localisation.txt @@ -1863,30 +1863,6 @@ defined_text = { trigger = { NOT = { has_alternate_start_parameter = { key = religion_names value = random } } society_member_of = the_satanists - OR = { - religion_group = christian - religion_group = jewish_group - } - } - } - text = { - localisation_key = String_Iblis - trigger = { - NOT = { has_alternate_start_parameter = { key = religion_names value = random } } - society_member_of = the_satanists - religion_group = muslim - } - } - text = { - localisation_key = String_Ahriman - trigger = { - NOT = { has_alternate_start_parameter = { key = religion_names value = random } } - society_member_of = the_satanists - OR = { - religion_group = zoroastrian_group - religion = zun_pagan - religion = zun_pagan_reformed - } } } text = { @@ -1937,34 +1913,8 @@ defined_text = { localisation_key = String_black_magic trigger = { society_member_of = the_satanists - religion_group = christian } } - text = { - localisation_key = String_sihr - trigger = { - society_member_of = the_satanists - religion_group = muslim - } - } - text = { - localisation_key = String_Qliphoth - trigger = { - society_member_of = the_satanists - religion_group = jewish_group - } - } - text = { - localisation_key = String_black_magic - trigger = { - society_member_of = the_satanists - OR = { - religion_group = zoroastrian_group - religion = zun_pagan - religion = zun_pagan_reformed - } - } - } text = { localisation_key = String_koldovstvo trigger = { society_member_of = the_cold_ones } @@ -1999,21 +1949,6 @@ defined_text = { trigger = { NOT = { has_alternate_start_parameter = { key = religion_names value = random } } society_member_of = the_satanists - OR = { - religion_group = christian - religion_group = jewish_group - religion_group = zoroastrian_group - religion = zun_pagan - religion = zun_pagan_reformed - } - } - } - text = { - localisation_key = String_jinn - trigger = { - NOT = { has_alternate_start_parameter = { key = religion_names value = random } } - society_member_of = the_satanists - religion_group = muslim } } text = { @@ -2065,21 +2000,6 @@ defined_text = { trigger = { NOT = { has_alternate_start_parameter = { key = religion_names value = random } } society_member_of = the_satanists - OR = { - religion_group = christian - religion_group = jewish_group - religion_group = zoroastrian_group - religion = zun_pagan - religion = zun_pagan_reformed - } - } - } - text = { - localisation_key = String_jinns - trigger = { - NOT = { has_alternate_start_parameter = { key = religion_names value = random } } - society_member_of = the_satanists - religion_group = muslim } } text = { @@ -2301,21 +2221,6 @@ defined_text = { trigger = { NOT = { has_alternate_start_parameter = { key = religion_names value = random } } society_member_of = the_satanists - OR = { - religion_group = christian - religion_group = jewish_group - religion_group = zoroastrian_group - religion = zun_pagan - religion = zun_pagan_reformed - } - } - } - text = { - localisation_key = String_Glory_to_Shaitan - trigger = { - NOT = { has_alternate_start_parameter = { key = religion_names value = random } } - society_member_of = the_satanists - religion_group = muslim } } text = { @@ -3252,10 +3157,6 @@ defined_text = { NOT = { religion = druidic } } } - text = { - localisation_key = string_Temple - trigger = { religion_group = evil_religions } - } text = { localisation_key = string_Temple trigger = { religion_group = elven_religions } @@ -3312,10 +3213,6 @@ defined_text = { NOT = { religion = druidic } } } - text = { - localisation_key = string_Temple - trigger = { religion_group = evil_religions } - } text = { localisation_key = string_Temple trigger = { religion_group = elven_religions } @@ -3364,10 +3261,6 @@ defined_text = { localisation_key = String_prayer trigger = { religion_group = northern_religions } } - text = { - localisation_key = String_prayer - trigger = { religion_group = evil_religions } - } text = { localisation_key = String_prayer trigger = { religion_group = elven_religions } @@ -3565,10 +3458,6 @@ defined_text = { localisation_key = adherent_general trigger = { religion_group = northern_religions } } - text = { - localisation_key = adherent_general - trigger = { religion_group = evil_religions } - } text = { localisation_key = adherent_elf trigger = { religion_group = elven_religions } @@ -3993,10 +3882,6 @@ defined_text = { localisation_key = adherent_general trigger = { religion_group = northern_religions } } - text = { - localisation_key = adherent_general - trigger = { religion_group = evil_religions } - } text = { localisation_key = adherent_elf trigger = { religion_group = elven_religions } @@ -4048,10 +3933,6 @@ defined_text = { localisation_key = adherent_general trigger = { religion_group = northern_religions } } - text = { - localisation_key = adherent_general - trigger = { religion_group = evil_religions } - } text = { localisation_key = adherent_elf trigger = { religion_group = elven_religions } @@ -5448,157 +5329,40 @@ defined_text = { text = { trigger = { society_member_of = the_satanists - NOT = { religion_group = zoroastrian_group } - } - localisation_key = String_Mammon - } - text = { - trigger = { - society_member_of = the_satanists - NOT = { religion_group = zoroastrian_group } - } - localisation_key = String_Beelzebub - } - text = { - trigger = { - society_member_of = the_satanists - NOT = { religion_group = zoroastrian_group } - } - localisation_key = String_Abaddon - } - text = { - trigger = { - society_member_of = the_satanists - NOT = { religion_group = zoroastrian_group } - } - localisation_key = String_Belphegor - } - text = { - trigger = { - society_member_of = the_satanists - NOT = { religion_group = zoroastrian_group } - } - localisation_key = String_Asmodeus - } - text = { - trigger = { - society_member_of = the_satanists - NOT = { religion_group = zoroastrian_group } - } - localisation_key = String_Leviathan - } - text = { - trigger = { - society_member_of = the_satanists - NOT = { religion_group = zoroastrian_group } - } - localisation_key = String_Astaroth - } - text = { - trigger = { - society_member_of = the_satanists - NOT = { religion_group = zoroastrian_group } - } - localisation_key = String_Belial - } - text = { - trigger = { - society_member_of = the_satanists - NOT = { religion_group = zoroastrian_group } - } - localisation_key = String_Berith - } - text = { - trigger = { - society_member_of = the_satanists - NOT = { religion_group = zoroastrian_group } } localisation_key = String_Lilith } text = { trigger = { society_member_of = the_satanists - NOT = { religion_group = zoroastrian_group } - } - localisation_key = String_Pythius - } - text = { - trigger = { - society_member_of = the_satanists - OR = { - religion_group = zoroastrian_group - religion = zun_pagan - religion = zun_pagan_reformed - } - } - localisation_key = String_Akoman - } - text = { - trigger = { - society_member_of = the_satanists - OR = { - religion_group = zoroastrian_group - religion = zun_pagan - religion = zun_pagan_reformed - } } - localisation_key = String_Indar + localisation_key = String_Gaunter_O_Dimm } text = { trigger = { society_member_of = the_satanists - OR = { - religion_group = zoroastrian_group - religion = zun_pagan - religion = zun_pagan_reformed - } } - localisation_key = String_Nanghait + localisation_key = String_Draug } text = { trigger = { society_member_of = the_satanists - OR = { - religion_group = zoroastrian_group - religion = zun_pagan - religion = zun_pagan_reformed - } } - localisation_key = String_Sawar + localisation_key = String_The_Caretaker } text = { trigger = { society_member_of = the_satanists - OR = { - religion_group = zoroastrian_group - religion = zun_pagan - religion = zun_pagan_reformed - } } - localisation_key = String_Tauriz + localisation_key = String_The_Black_Cat_and_Dog } text = { trigger = { society_member_of = the_satanists - OR = { - religion_group = zoroastrian_group - religion = zun_pagan - religion = zun_pagan_reformed - } } - localisation_key = String_Zarizi - } - text = { - trigger = { - society_member_of = the_satanists - OR = { - religion_group = zoroastrian_group - religion = zun_pagan - religion = zun_pagan_reformed - } - } - localisation_key = String_Akatash + localisation_key = String_Yrrhedes } + text = { trigger = { society_member_of = the_plaguebringers @@ -5937,25 +5701,8 @@ defined_text = { trigger = { NOT = { has_alternate_start_parameter = { key = religion_names value = random } } society_member_of = the_satanists - NOR = { - religion_group = zoroastrian_group - religion = zun_pagan - religion = zun_pagan_reformed - } } - localisation_key = String_Demon_Prince - } - text = { - trigger = { - NOT = { has_alternate_start_parameter = { key = religion_names value = random } } - society_member_of = the_satanists - OR = { - religion_group = zoroastrian_group - religion = zun_pagan - religion = zun_pagan_reformed - } - } - localisation_key = String_Greater_Daeva + localisation_key = String_Greater_Demon } text = { @@ -5996,7 +5743,7 @@ defined_text = { } } fallback_text = { - localisation_key = String_Demon_Prince + localisation_key = String_Greater_Demon } }