From 38428b5bd2233aff6b28f4f067251cade364b1f3 Mon Sep 17 00:00:00 2001 From: Edmund <447ght@gmail.com> Date: Thu, 16 Nov 2023 04:37:15 -0500 Subject: [PATCH 1/8] make undead heritage look undead --- common/scripted_effects/wc_race_effects.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/common/scripted_effects/wc_race_effects.txt b/common/scripted_effects/wc_race_effects.txt index 54110c5347..1d67fecbc5 100644 --- a/common/scripted_effects/wc_race_effects.txt +++ b/common/scripted_effects/wc_race_effects.txt @@ -21,7 +21,9 @@ try_to_set_race_effect = { # } # Add new races always at the end - if = { + if = { limit = { culture = { has_cultural_pillar = heritage_undead } } random = { chance = 80 add_trait = being_undead } } + + else_if = { limit = { OR = { AND = { From 8e968ab7bff50f1bdc0d58c6711a8354f3774ea8 Mon Sep 17 00:00:00 2001 From: Edmund <447ght@gmail.com> Date: Thu, 16 Nov 2023 06:37:45 -0500 Subject: [PATCH 2/8] evil undead convert when granting titles --- .../00_grant_titles_interaction.txt | 31 +++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) diff --git a/common/character_interactions/00_grant_titles_interaction.txt b/common/character_interactions/00_grant_titles_interaction.txt index a075587039..40c07f9075 100644 --- a/common/character_interactions/00_grant_titles_interaction.txt +++ b/common/character_interactions/00_grant_titles_interaction.txt @@ -3,7 +3,19 @@ category = interaction_category_vassal common_interaction = yes - desc = grant_titles_interaction_desc + # Warcraft + desc = { + desc = grant_titles_interaction_desc + + triggered_desc = { + trigger = { + scope:actor.culture = { has_cultural_pillar = heritage_undead } + scope:actor.faith = { has_doctrine = special_doctrine_end_justifies_means } + } + + desc = grant_title_may_turn_undead + } + } special_interaction = grant_titles_interaction interface = grant_titles @@ -27,7 +39,7 @@ } } } - + is_valid_showing_failures_only = { scope:recipient = { custom_tooltip = { @@ -1078,6 +1090,21 @@ } } + # Warcraft + # Evil Undead heritage characters will turn other characters when granting titles + scope:recipient = { + if = { + limit = { + AND = { + scope:actor.culture = { has_cultural_pillar = heritage_undead } + scope:actor.faith = { has_doctrine = special_doctrine_end_justifies_means } + } + } + + random = { chance = 99 add_trait = being_undead } + } + } + #hidden_effect = { # # Struggle Catalyst # if = { From 6607f9b1ecdbe763dac7d61118f6db9707b0de60 Mon Sep 17 00:00:00 2001 From: Edmund <447ght@gmail.com> Date: Thu, 16 Nov 2023 06:38:55 -0500 Subject: [PATCH 3/8] tweak undead conversion chance for grant --- common/character_interactions/00_grant_titles_interaction.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/character_interactions/00_grant_titles_interaction.txt b/common/character_interactions/00_grant_titles_interaction.txt index 40c07f9075..e7e3d8373f 100644 --- a/common/character_interactions/00_grant_titles_interaction.txt +++ b/common/character_interactions/00_grant_titles_interaction.txt @@ -1101,7 +1101,7 @@ } } - random = { chance = 99 add_trait = being_undead } + random = { chance = 90 add_trait = being_undead } } } From 230890173aa56cc9445e22e95bba956105b125dd Mon Sep 17 00:00:00 2001 From: Edmund <447ght@gmail.com> Date: Thu, 16 Nov 2023 07:39:18 -0500 Subject: [PATCH 4/8] undead allowed to be human, fix spacing --- .../00_grant_titles_interaction.txt | 8 ++++++-- common/scripted_effects/wc_race_effects.txt | 12 ++++++++++-- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/common/character_interactions/00_grant_titles_interaction.txt b/common/character_interactions/00_grant_titles_interaction.txt index e7e3d8373f..f0f7ef3552 100644 --- a/common/character_interactions/00_grant_titles_interaction.txt +++ b/common/character_interactions/00_grant_titles_interaction.txt @@ -1100,8 +1100,12 @@ scope:actor.faith = { has_doctrine = special_doctrine_end_justifies_means } } } - - random = { chance = 90 add_trait = being_undead } + every_traveling_family_member = { + random = { + chance = 90 + add_trait = being_undead + } + } } } diff --git a/common/scripted_effects/wc_race_effects.txt b/common/scripted_effects/wc_race_effects.txt index 1d67fecbc5..00de3753cb 100644 --- a/common/scripted_effects/wc_race_effects.txt +++ b/common/scripted_effects/wc_race_effects.txt @@ -21,9 +21,17 @@ try_to_set_race_effect = { # } # Add new races always at the end - if = { limit = { culture = { has_cultural_pillar = heritage_undead } } random = { chance = 80 add_trait = being_undead } } + if = { + limit = { + culture = { has_cultural_pillar = heritage_undead } + } + random = { + chance = 80 + add_trait = being_undead + } + } - else_if = { + if = { limit = { OR = { AND = { From ef54d6bcc5f383b1f2a771999d82600cd184f726 Mon Sep 17 00:00:00 2001 From: Edmund <447ght@gmail.com> Date: Thu, 16 Nov 2023 08:15:43 -0500 Subject: [PATCH 5/8] scourge converts by court invite+recruit --- .../00_courtier_and_guest_interactions.txt | 62 ++++++++++++++++++- 1 file changed, 59 insertions(+), 3 deletions(-) diff --git a/common/character_interactions/00_courtier_and_guest_interactions.txt b/common/character_interactions/00_courtier_and_guest_interactions.txt index f172a8f2f8..8e922c780b 100644 --- a/common/character_interactions/00_courtier_and_guest_interactions.txt +++ b/common/character_interactions/00_courtier_and_guest_interactions.txt @@ -5,7 +5,19 @@ special_ai_interaction = recruit_courtier - desc = recruit_guest_interaction_desc + # Warcraft + # Warning for Scourge players + desc = { + desc = recruit_guest_interaction_desc + triggered_desc = { + trigger = { + scope:actor.culture = { has_cultural_pillar = heritage_undead } + scope:actor.faith = { has_doctrine = special_doctrine_end_justifies_means } + } + + desc = recruit_guest_may_turn_undead + } + } should_use_extra_icon = { NOT = { scope:recipient = { is_close_family_of = scope:actor } } @@ -113,6 +125,21 @@ opinion = 50 modifier = grateful_opinion } + + # Warcraft + # Scourge convert those who join court + if = { + limit = { + AND = { + scope:actor.culture = { has_cultural_pillar = heritage_undead } + scope:actor.faith = { has_doctrine = special_doctrine_end_justifies_means } + } + } + random = { + chance = 90 + add_trait = being_undead + } + } } scope:actor = { @@ -504,8 +531,18 @@ kick_from_court_interaction = { invite_to_court_interaction = { category = interaction_category_vassal icon = guest - - desc = invite_to_court_interaction_desc + desc = { + desc = invite_to_court_interaction_desc + + triggered_desc = { + trigger = { + scope:actor.culture = { has_cultural_pillar = heritage_undead } + scope:actor.faith = { has_doctrine = special_doctrine_end_justifies_means } + } + + desc = invite_to_court_may_turn_undead + } + } is_shown = { scope:recipient = { @@ -619,6 +656,25 @@ invite_to_court_interaction = { } } } + + # Warcraft + # Scourge convert invitees to undead by inviting to court + scope:recipient = { + if = { + limit = { + AND = { + scope:actor.culture = { has_cultural_pillar = heritage_undead } + scope:actor.faith = { has_doctrine = special_doctrine_end_justifies_means } + } + } + every_traveling_family_member = { + random = { + chance = 90 + add_trait = being_undead + } + } + } + } } ai_accept = { From 85b82126ed195b476804ffa7fad249e20f76b659 Mon Sep 17 00:00:00 2001 From: Edmund <447ght@gmail.com> Date: Thu, 16 Nov 2023 08:19:24 -0500 Subject: [PATCH 6/8] improve scourge conversion comments --- .../character_interactions/00_grant_titles_interaction.txt | 3 ++- common/scripted_effects/wc_race_effects.txt | 7 ++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/common/character_interactions/00_grant_titles_interaction.txt b/common/character_interactions/00_grant_titles_interaction.txt index f0f7ef3552..f0e26059f8 100644 --- a/common/character_interactions/00_grant_titles_interaction.txt +++ b/common/character_interactions/00_grant_titles_interaction.txt @@ -4,6 +4,7 @@ common_interaction = yes # Warcraft + # Warning for Scourge players desc = { desc = grant_titles_interaction_desc @@ -1091,7 +1092,7 @@ } # Warcraft - # Evil Undead heritage characters will turn other characters when granting titles + # Evil Undead heritage characters may turn other characters when granting titles scope:recipient = { if = { limit = { diff --git a/common/scripted_effects/wc_race_effects.txt b/common/scripted_effects/wc_race_effects.txt index 00de3753cb..8f0388984a 100644 --- a/common/scripted_effects/wc_race_effects.txt +++ b/common/scripted_effects/wc_race_effects.txt @@ -19,8 +19,8 @@ try_to_set_race_effect = { # limit = { exists = mother } # mother = { trigger_event = WCRAC.5 } # } - - # Add new races always at the end + + #Add Undead trait if undead culture if = { limit = { culture = { has_cultural_pillar = heritage_undead } @@ -30,7 +30,8 @@ try_to_set_race_effect = { add_trait = being_undead } } - + + # Add new races always at the end if = { limit = { OR = { From 2bda50ebb80026e0dbb089033ece2e71e4a90a46 Mon Sep 17 00:00:00 2001 From: Edmund <447ght@gmail.com> Date: Thu, 16 Nov 2023 08:39:24 -0500 Subject: [PATCH 7/8] add localization for undead conversion --- .../00_courtier_and_guest_interactions.txt | 2 ++ localization/english/wc_tooltip_l_english.yml | 6 +++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/common/character_interactions/00_courtier_and_guest_interactions.txt b/common/character_interactions/00_courtier_and_guest_interactions.txt index 8e922c780b..94cbc8f3bc 100644 --- a/common/character_interactions/00_courtier_and_guest_interactions.txt +++ b/common/character_interactions/00_courtier_and_guest_interactions.txt @@ -534,6 +534,8 @@ invite_to_court_interaction = { desc = { desc = invite_to_court_interaction_desc + # Warcraft + # Warning for Scourge players triggered_desc = { trigger = { scope:actor.culture = { has_cultural_pillar = heritage_undead } diff --git a/localization/english/wc_tooltip_l_english.yml b/localization/english/wc_tooltip_l_english.yml index ce6f1201d4..46be82c41c 100644 --- a/localization/english/wc_tooltip_l_english.yml +++ b/localization/english/wc_tooltip_l_english.yml @@ -45,4 +45,8 @@ wc_unknown_birth:0 "The age of this character is unfathomable to most. Almost none can recall the time when they were born." wc_members_choice_the_first_horde_tooltip:0 "Your [vassals|E] will face a choice — stay in the Horde or leave it and become [independent|E]." - wc_save_the_first_horde_tooltip:0 "The Horde will stay united" \ No newline at end of file + wc_save_the_first_horde_tooltip:0 "The Horde will stay united" + + grant_title_may_turn_undead:0 "\n#warning Granting this character a Title may cause them to turn Undead.\n#" + recruit_guest_may_turn_undead:0 "\n#warning Recruiting this character to Court may cause them to turn Undead.\n#" + invite_to_court_may_turn_undead:0 "\n#warning This character may turn Undead when they arrive at your Court.\n#"" \ No newline at end of file From febc549d4cbf3867b55f7cfef9df4931717eacbc Mon Sep 17 00:00:00 2001 From: Edmund <447ght@gmail.com> Date: Thu, 16 Nov 2023 08:52:08 -0500 Subject: [PATCH 8/8] encapsulate scourge conversion values --- .../00_courtier_and_guest_interactions.txt | 4 ++-- .../00_grant_titles_interaction.txt | 2 +- common/script_values/wc_plague_values.txt | 10 ++++++++++ common/scripted_effects/wc_race_effects.txt | 2 +- 4 files changed, 14 insertions(+), 4 deletions(-) diff --git a/common/character_interactions/00_courtier_and_guest_interactions.txt b/common/character_interactions/00_courtier_and_guest_interactions.txt index 94cbc8f3bc..8d93e123b2 100644 --- a/common/character_interactions/00_courtier_and_guest_interactions.txt +++ b/common/character_interactions/00_courtier_and_guest_interactions.txt @@ -136,7 +136,7 @@ } } random = { - chance = 90 + chance = scourge_conversion_effectiveness add_trait = being_undead } } @@ -671,7 +671,7 @@ invite_to_court_interaction = { } every_traveling_family_member = { random = { - chance = 90 + chance = scourge_conversion_effectiveness add_trait = being_undead } } diff --git a/common/character_interactions/00_grant_titles_interaction.txt b/common/character_interactions/00_grant_titles_interaction.txt index f0e26059f8..60c0223826 100644 --- a/common/character_interactions/00_grant_titles_interaction.txt +++ b/common/character_interactions/00_grant_titles_interaction.txt @@ -1103,7 +1103,7 @@ } every_traveling_family_member = { random = { - chance = 90 + chance = scourge_conversion_effectiveness add_trait = being_undead } } diff --git a/common/script_values/wc_plague_values.txt b/common/script_values/wc_plague_values.txt index aae79be748..c4918651ee 100644 --- a/common/script_values/wc_plague_values.txt +++ b/common/script_values/wc_plague_values.txt @@ -53,4 +53,14 @@ plague_agent_sins = { } min = 0 +} + +# Scourge conversion values + +scourge_undead_population_percent = { + value = 80 # this could be changed with a game rule in the future +} + +scourge_conversion_effectiveness = { + value = 90 # this could be changed with a game rule in the future } \ No newline at end of file diff --git a/common/scripted_effects/wc_race_effects.txt b/common/scripted_effects/wc_race_effects.txt index 8f0388984a..c530458b27 100644 --- a/common/scripted_effects/wc_race_effects.txt +++ b/common/scripted_effects/wc_race_effects.txt @@ -26,7 +26,7 @@ try_to_set_race_effect = { culture = { has_cultural_pillar = heritage_undead } } random = { - chance = 80 + chance = scourge_undead_population_percent add_trait = being_undead } }