diff --git a/CHANGELOG.md b/CHANGELOG.md index 1c9a8da..69c6159 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,7 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [2.0.0] The VCO 2.0 Update - 14.07.2020 +## [2.0.0] The VCO 2.0 Update - 14/07/2020 - Update to Victory Conditions Overhaul 2.0 - Compatibility improved @@ -25,12 +25,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Now Bordeleaux, Bretonnia and Carcassone only need 800 Chivalry to achieve a Short Victory - Now Bordeleaux, Bretonnia and Carcassone only need 1600 Chivalry to achieve a Long Victory -## [2.0.1] Minor Fix - 18.07.2020 +## [2.0.1] Minor Fix - 18/07/2020 - Now Followers of Nagash have to control the Black Pyramid of Nagash to achieve a Short Victory - Fixed a bug where Clan Mors had to destroy Clan Mors to achieve a victory -## [2.1.0] Major Update - 25.07.2020 +## [2.1.0] Major Update - 25/07/2020 - The number of special buildings required by The Blessed Dread to achieve a Short Victory has been reduced to 1 - The number of special buildings required by The Blessed Dread to achieve a Long Victory has been reduced to 3 @@ -76,7 +76,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Fixed a bug where Beastmen final battle never happened - Solved a bug where some unit requirements numbers where weird and different from the docs -## [2.1.1] Minor Update - 10.11.2020 +## [2.1.1] Minor Update - 10/11/2020 - Controlling Northern Grey Mountains is no longer required by Karak Kadrin to achieve a Short Victory - Fixed bugs / Minor changes @@ -89,7 +89,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 factions in order to prevent weird situations where you had to attack your own settlements. The key OCCUPY_LOOT_RAZE_OR_SACK_X_SETTLEMENTS_INCLUDING does not exist -## [2.2.0] Minor Update - 5.12.2020 +## [2.2.0] Minor Update - 5/12/2020 - Add support for The Twisted & The Twilight DLC - Fix a bug with the Bonerattlaz faction @@ -97,7 +97,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - NOTE: - Support for the new factions/Wood Elves rework has not been added. I do not own the DLC -## [2.3.0] The Hammer and The Viper update - 16.12.2020 +## [2.3.0] The Hammer and The Viper update - 16/12/2020 - Major redone has been introduced to the Court of Lybaras faction - Constructing a Pyramid has been removed from the Short Victory @@ -113,7 +113,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Building the Throne Hall of the High King is now required to achieve both types of victory - The aim is to keep the Dwarfs more local and defensive. The removed regions are too far away for a short victory -## [2.4.0] The Woods and The Dragons update - 03.02.2021 +## [2.4.0] The Woods and The Dragons update - 03/02/2021 - Redone added to Knights of Caledor - Controlling Plains of Bones is now required to achieve a victory @@ -148,7 +148,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Known bugs: - In some cases, the new conditions do not appear till triggered with the "Victory Objectives" button -## [2.5.0] Population & Corruption Update - 15.05.2021 +## [2.5.0] Population & Corruption Update - 15/05/2021 - Updated Knights of Caledor victory conditions - Required buildings to achieve a Short Victory have been reduced to Purified Graves of the Dragons and a Dragon Keep @@ -177,7 +177,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Fixed a bug where Followers of Nagash had to create non-existent buildings - Special thanks to **BoyNamedHsu** for his help with this release -## [2.6.0] The Wolf and The Goats update - 19.07.2021 +## [2.6.0] The Wolf and The Goats update - 19/07/2021 - Introduction to a new approach to victory conditions, only affecting some factions by now: - Short Victories are now meant to be SHORT. Under 50 turns short @@ -196,7 +196,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Less focused on individual factions / Spending all time in Norsca - More focused on travelling around the world and completing Visions of the Old Ones -## [3.0.0] The Routes Rework update - 14.12.2021 +## [3.0.0] The Routes Rework update - 14/12/2021 - Introduced new feature _Routes_. Now, instead of having evolving campaigns with _Short_, _Long_ and _Ultimate_ checkpoints, you can choose completely different ways to approach your campaign. For example, as Dwarfs, you can now win @@ -284,7 +284,7 @@ occasions, now it will be viable to play tall/defensively, without any requisite - The Drowned: Three new routes (Conquest (Ulthuan Ports)/Edification/Infamy) - A lot of bugfixes -## [3.1.0] Minor Update - 21.12.2021 +## [3.1.0] Minor Update - 21/12/2021 - Added in-game tags for all routes (i.e. Unification/Conquest/Naval Supremacy) - Commercial Victories (Lothern/Exiles of Nehek/Bordeleaux) now also required a minimum trading income of 5000 and at @@ -293,4 +293,28 @@ occasions, now it will be viable to play tall/defensively, without any requisite - Added a Magic Supremacy route for Bonerattlaz - Add placeholders for future factions (Cataph's TEB + Kraka Drak/OvN Amazons + Araby + The Moot) - Fixed a bug that prevented Ironbow's Expedition Route I from loading -- Solved a bug that caused The Thousand Maws Victory Conditions to be Vanilla +- Solved a bug that caused The Thousand Maws Victory Conditions to be vanilla + +## [3.2.0] The Imperial Update - 12/01/2022 + +- Destroying Clan Rictus is no longer required as Karaz-a-Karak +- Clan Eshin revisited: + - Route I now has to achieve 65 reputation with two clans (instead of 78) + - Route II now requires you to perform agent assassinations + - Route III does not longer require destroying Karaz-a-Karak +- Added support for Mixu's Legendary Lords + - Averland: Threat Elimination (Mixed), Destruction (Wood Elves) and Miscellany (Craziness) + - Hochland: Unification (Northern Empire), Threat Elimination (Norsca), Commercial Victory + - Marienburg: Commercial Victory, Threat Elimination (Albion), Naval Supremacy + - Middenland: Threat Elimination (Mixed), Unification (Northern Empire), Corruption (Ulric, Northern Empire) + - Nordland: Threat Elimination (Norsca), Naval Supremacy, Commercial Victory + - Ostermark: Threat Elimination (Mixed), Unification (Eastern Empire), Miscellany (Witch Hunting) + - Ostland: Threat Elimination (Norsca), Expansion (Kislev), Unification (Northern Empire) + - Stirland: Corruption (Sigmar, Eastern Empire), Threat Elimination, Unification (Eastern Empire) + - Talabecland: Threat Elimination (Mixed), Corruption (Taal, Eastern Empire), Unification (Eastern Empire) + - Wissenland: Magic Supremacy, Destruction (Vampire Counts/Tomb Kings), Edification +- Fixed bugs + - Destroying Clan Rictus as Karaz-a-Karak is no longer required + - Clan Eshin reputation is now detected properly + - Clan Skryre Workshop level is now detected properly + - Technical: is_multiplayer() check has been removed, now add_first_tick_callback() is used diff --git a/dist/vco2_main.pack b/dist/vco2_main.pack index 27b79f9..a046d01 100644 Binary files a/dist/vco2_main.pack and b/dist/vco2_main.pack differ diff --git a/docs/README.md b/docs/README.md index 44d1e5f..fa9ddbf 100644 --- a/docs/README.md +++ b/docs/README.md @@ -6,7 +6,7 @@ * [Bretonnia](factions/bretonnia/README.md) * [Dark Elves](factions/dark-elves/README.md) * [Dwarfs](factions/dwarfs/README.md) -* [Empire](factions/empire/README.md) +* [Empire](factions/empire/README.md)1 * [Greenskins](factions/greenskins/README.md) * [High Elves](factions/high-elves/README.md) * [Lizardmen](factions/lizardmen/README.md) @@ -18,6 +18,9 @@ * [Warriors of Chaos](factions/warriors-of-chaos/README.md) * [Wood Elves](factions/wood-elves/README.md) +**Notes** + +1. Supports [Mixu's Legendary Lords](https://steamcommunity.com/sharedfiles/filedetails/?id=1194588998) ## Mod Races * [Cataph's Southern Realms (TEB)](factions/teb/README.md) diff --git a/docs/factions/bretonnia/README.md b/docs/factions/bretonnia/README.md index dd87d90..85f9aa8 100644 --- a/docs/factions/bretonnia/README.md +++ b/docs/factions/bretonnia/README.md @@ -21,7 +21,7 @@ * The Blessed Dread, The Thousand Maws * **Route II:** * Obtain access to the following resources: - * Obsidian, Dyes, Animals, Furs, Gems, Gold, Iron, Marbre, Medicine, Textiles, Lead, Spices, Timber, Wine + * Obsidian, Dyes, Animals, Furs, Gems, Gold, Iron, Marbre, Medicine, Pottery, Salt, Spices, Timber, Wine * Have at least 6 trading partners * Have a trading income of at least 5000 * **Route III:** diff --git a/docs/factions/dwarfs/README.md b/docs/factions/dwarfs/README.md index beaaea5..282200e 100644 --- a/docs/factions/dwarfs/README.md +++ b/docs/factions/dwarfs/README.md @@ -20,7 +20,7 @@ * Destroy all close threats: * Bloody Spearz, Bonerattlaz, Creeping Death, Crooked Moon Mutinous Gits, Greenskins, Red Eye, Red Fangs, Scabby Eye, Skull Crag, Teef Snatchaz, The Bloody Handz, Top Knotz - * Clan Ferrik, Clan Gritus, Clan Rictus, Clan Volkn + * Clan Ferrik, Clan Gritus, Clan Volkn ### Karak Kadrin diff --git a/docs/factions/empire/README.md b/docs/factions/empire/README.md index a88d0c8..edccc48 100644 --- a/docs/factions/empire/README.md +++ b/docs/factions/empire/README.md @@ -2,36 +2,162 @@ ### Reikland -* **Route I:** +* **Route I - Unification:** * Conquer, ally with or assimilate all provinces of the Empire -* **Route II:** - * Destroy close threats: +* **Route II - Threat Elimination:** + * Destroy: * Black Venom, Broken Nose, Crooken Moon, Leaf-Cutterz Tribe, Skullmasherz * Mousillon, Sylvannia, The Barrow Legion, Von Carstein * Clan Kreepus, Clan Moulder * The Thousand Maws * Goromadny Tribe, Helspire Tribe, Naglfarlings Tribe, Skaeling, Vanaheimlings, Varg, Wintertooth, World Walkers -## The Golden Order +### The Golden Order -* **Route I:** +* **Route I - Edification:** * Control Solland and Fort Soll * Build the Nuln Gunnery School -* **Route II:** +* **Route II - Threat Elimination:** * Reconquer Sylvania * Destroy factions: * Sylvania, Von Carstein -* **Route III:** +* **Route III - Threat Elimination:** * Destroy factions * Black Venom, Crooked Moon, Clan Skyre, Clan Spittel, Pirates of Sartosa -## The Huntsmarshal's Expedition +### The Huntsmarshal's Expedition -* **Route I:** +* **Route I - Miscellany:** * Reach 100 Acclaim -* **Route II:** +* **Route II - Conquest:** * Conquer, ally with or assimilate 6 provinces, including Southern Great Jungle -* **Route III:** +* **Route III - Threat Elimination:** * Destroy factions * Itza, Spirit of The Jungle, Clan Pestilens, The Awakened, The Dreadfleet, The Blessed Dread +### Mixu's Legendary Lords + +#### Averland + +* **Route I - Threat Elimination:** + * Destroy Sylvania, Von Carstein + * Destroy Black Venom, Skull-takerz +* **Route II - Destruction:** + * Destroy Argwylon, Talsyn, Torgovann, Wydrioth +* **Route III - Miscellany:** + * Assassinate 13 Bretonnian characters + +#### Hochland + +* **Route I - Unification:** + * Control the provinces Hochland, Middenland, Nordland, Oastland, The Misty Hills and The Wasteland +* **Route II - Threat Elimination:** + * Raze or sack 9 Norscan settlements +* **Route III - Commercial Victory:** + * Obtain access to the following resources: + * Dyes, Furs, Timber, Iron, Marbre, Gold, Wine, Pottery, Salt + * Have at least 6 trading partners + * Have a trading income of at least 2000 + +#### Marienburg + +* **Route I - Commercial Victory:** + * Obtain access to the following resources: + * Obsidian, Dyes, Animals, Furs, Gems, Gold, Iron, Marbre, Medicine, Pottery, Salt, Spices, Timber, Wine + * Have at least 6 trading partners + * Have a trading income of at least 3500 +* **Route II - Threat Elimination:** + * Destroy Vanaheimlings + * Destroy The Thousand Maws + * Destroy Leaf-Cutterz Tribe, Skullsmasherz +* **Route III - Naval Supremacy:** + * Control 8 port settlements including Marienburg + * Build the Marienburg Port + +#### Middenland + +* **Route I - Threat Elimination:** + * Destroy Leaf-Cutterz Tribe + * Destroy Manblight Tribe, Warherd of the Shadowgave + * Control Laurelorn Forest (by allies, vassals or yourself) +* **Route II - Unification:** + * Control the provinces Hochland, Middenland, Nordland, Oastland, The Misty Hills and The Wasteland +* **Route III - Corruption:** + * Build the Middenheim Great Temple of Ulric + * Build at least 3 Shrines or Temples of Ulric + * Maintain at least 80 untainted in Hochland, Middenland, Nordland, Oastland, The Misty Hills and The Wasteland + +#### Nordland + +* **Route I - Threat Elimination:** + * Destroy Warherd of the Shadowgave + * Destroy Leaf-Cutterz Tribe + * Raze or sack 9 Norscan settlements +* **Route II - Naval Supremacy:** + * Control 8 port settlements including Marienburg + * Destroy Marienburg +* **Route III - Commercial Victory:** + * Obtain access to the following resources: + * Obsidian, Dyes, Animals, Furs, Gems, Gold, Iron, Marbre, Medicine, Pottery, Salt, Spices, Timber, Wine + * Have at least 6 trading partners + * Have a trading income of at least 5000 + +#### Ostermark + +* **Route I - Threat Elimination:** + * Destroy Sylvania, Von Carstein + * Destroy Wargrove of Woe + * Destroy Bonerattlaz + * Destroy Clan Kreepus +* **Route II - Unification:** + * Control the provinces Averland, Eastern Sylvania, Ostermark, Stirland, Talabecland, The Moot, Western Sylvania +* **Route III - Miscellany:** + * Own at least 5 Witch Hunters + * Build 6 Coaching Inns or Taverns + +#### Ostland + +* **Route I - Threat Elimination:** + * Raze or sack 9 Norscan settlements + * Destroy Skaeling +* **Route II - Expansion:** + * Destroy Kislev + * Control the provinces Ostland, Eastern Oblast, Northern Oblast, Southern Oblast, Troll Country, +* **Route III - Unification:** + * Control the provinces Hochland, Middenland, Nordland, Oastland, The Misty Hills and The Wasteland + +#### Stirland + +* **Route I - Corruption:** + * Own at least 5 Warrior Priests + * Maintain at least 80 untainted in Averland, Eastern Sylvania, Ostermark, Stirland, Talabecland, The Moot, Western Sylvania +* **Route II - Threat Elimination:** + * Destroy Sylvania, Von Carstein + * Destroy Clan Kreepus +* **Route III - Unification:** + * Control the provinces Averland, Eastern Sylvania, Ostermark, Stirland, Talabecland, The Moot, Western Sylvania + +#### Talabecland + +* **Route I - Threat Elimination:** + * Destroy Sylvania, Von Carstein + * Destroy Wargrove of Woe + * Destroy Clan Kreepus +* **Route II - Corruption:** + * Own at least 5 Warrior Priests of Taal + * Maintain at least 80 untainted in Averland, Eastern Sylvania, Ostermark, Stirland, Talabecland, The Moot, Western Sylvania +* **Route III - Unification:** + * Control the provinces of Averland, Eastern Sylvania, Ostermark, Stirland, Talabecland, The Moot, Western Sylvania + +#### Wissenland + +* **Route I - Magic Supremacy:** + * Own at least 5 Amethyst Wizards + * Construct at least 3 of the following special buildings: + * Altdorf Colleges of Magic, Cleansed Convent of Sorcery, Great Halls of Nagashizzar, Occupied White Tower of + Hoeth, The Chamber of Visions, The Gran Cauldron, Vault of Nagash +* **Route II - Destruction:** + * Raze or sack 6 Vampire Counts settlements + * Raze or sack 6 Tomb Kings settlements +* **Route III - Edification:** + * Build the Nuln Gunnery School and three Imperial Academies \ No newline at end of file diff --git a/docs/factions/high-elves/README.md b/docs/factions/high-elves/README.md index e7571d3..2798bff 100644 --- a/docs/factions/high-elves/README.md +++ b/docs/factions/high-elves/README.md @@ -9,7 +9,7 @@ * Cult of Pleasure, Her Haneth, Naggarond, The Blessed Dread * **Route III:** * Obtain access to the following resources: - * Obsidian, Dyes, Animals, Furs, Gems, Gold, Iron, Marbre, Medicine, Textiles, Lead, Spices, Timber, Wine + * Obsidian, Dyes, Animals, Furs, Gems, Gold, Iron, Marbre, Medicine, Pottery, Salt, Spices, Timber, Wine * Have at least 6 trading partners * Have a trading income of at least 5000 diff --git a/docs/factions/skaven/README.md b/docs/factions/skaven/README.md index 63a6e4b..e3b5e3c 100644 --- a/docs/factions/skaven/README.md +++ b/docs/factions/skaven/README.md @@ -52,11 +52,10 @@ ### Clan Eshin * **Route I:** - * Attain 78 reputation with two clans + * Attain 65 reputation with two clans * **Route II:** - * Perform the Level 4 Scheme Shadowy Dealing 1 time * Perform the Nightlord's Say-So 3 times - * Perform 13 Shadowy Dealings + * Perform 13 assassinations * **Route III:** * Destroy factions - * Karak-a-Karak, Hag Graef, Knights of Caledor, Last Defenders \ No newline at end of file + * Hag Graef, Knights of Caledor, Last Defenders \ No newline at end of file diff --git a/docs/factions/tomb-kings/README.md b/docs/factions/tomb-kings/README.md index 679f75e..1e2f6db 100644 --- a/docs/factions/tomb-kings/README.md +++ b/docs/factions/tomb-kings/README.md @@ -32,7 +32,7 @@ * Bleak Holds, Clar Karond, Cult of Pleasure, Ssildra Tor * **Route II:** * Obtain access to the following resources: - * Obsidian, Dyes, Animals, Furs, Gems, Gold, Iron, Marbre, Medicine, Textiles, Lead, Spices, Timber, Wine + * Obsidian, Dyes, Animals, Furs, Gems, Gold, Iron, Marbre, Medicine, Pottery, Salt, Spices, Timber, Wine * Have at least 6 trading partners * Have a trading income of at least 5000 * **Route III:** diff --git a/src/script/campaign/mod/vco2_main_listeners.lua b/src/script/campaign/mod/vco2_main_listeners.lua index a1f386b..497d6ff 100644 --- a/src/script/campaign/mod/vco2_main_listeners.lua +++ b/src/script/campaign/mod/vco2_main_listeners.lua @@ -19,7 +19,7 @@ end; function vco_check_skaven_clan_eshin_clans_reputation(faction) local contract_clans = {"mors", "moulder", "pestilens", "skyre"} - local vco_clan_reputation_requirement = 78; + local vco_clan_reputation_requirement = 65; local clans_matching_requisites = 0; @@ -36,119 +36,104 @@ function vco_check_skaven_clan_eshin_clans_reputation(faction) end if clans_matching_requisites >= 1 then - -- cm:complete_scripted_mission_objective("wh_main_short_victory", "attain_clan_reputation_1", true); - -- cm:complete_scripted_mission_objective("wh_main_long_victory", "attain_clan_reputation_1", true); - -- cm:set_scripted_mission_text("wh_main_short_victory", "attain_clan_reputation_1", "mission_text_text_vco2_attain_clan_reputation_1"); - -- cm:set_scripted_mission_text("wh_main_long_victory", "attain_clan_reputation_1", "mission_text_text_vco2_attain_clan_reputation_1"); - cm:set_scripted_mission_text("wh_main_short_victory", "attain_clan_reputation_1", "mission_text_text_vco2_attain_clan_reputation_2_1"); - cm:set_scripted_mission_text("wh_main_long_victory", "attain_clan_reputation_1", "mission_text_text_vco2_attain_clan_reputation_2_1"); + cm:set_scripted_mission_text("wh_main_long_victory", "attain_clan_reputation_2", "mission_text_text_vco2_attain_clan_reputation_2_1"); end if clans_matching_requisites >= 2 then - cm:complete_scripted_mission_objective("wh_main_short_victory", "attain_clan_reputation_2", true); cm:complete_scripted_mission_objective("wh_main_long_victory", "attain_clan_reputation_2", true); - cm:set_scripted_mission_text("wh_main_short_victory", "attain_clan_reputation_1", "mission_text_text_vco2_attain_clan_reputation_2"); - cm:set_scripted_mission_text("wh_main_long_victory", "attain_clan_reputation_1", "mission_text_text_vco2_attain_clan_reputation_2"); + cm:set_scripted_mission_text("wh_main_long_victory", "attain_clan_reputation_2", "mission_text_text_vco2_attain_clan_reputation_2"); end end function vco_check_skaven_clan_skyre_workshop() if current_workshop_lvl >= 2 then - -- cm:set_scripted_mission_text("wh_main_short_victory", "get_forbidden_workshop_level_3", "mission_text_text_vco2_main_clan_skyre_workshop_lvl_3_2"); - -- cm:set_scripted_mission_text("wh_main_long_victory", "get_forbidden_workshop_level_3", "mission_text_text_vco2_main_clan_skyre_workshop_lvl_3_2"); - cm:set_scripted_mission_text("wh_main_short_victory", "get_forbidden_workshop_level_4", "mission_text_text_vco2_main_clan_skyre_workshop_lvl_4_2"); cm:set_scripted_mission_text("wh_main_long_victory", "get_forbidden_workshop_level_4", "mission_text_text_vco2_main_clan_skyre_workshop_lvl_4_2"); end if current_workshop_lvl >= 3 then - -- cm:complete_scripted_mission_objective("wh_main_short_victory", "get_forbidden_workshop_level_3", true); - -- cm:complete_scripted_mission_objective("wh_main_long_victory", "get_forbidden_workshop_level_3", true); - -- cm:set_scripted_mission_text("wh_main_short_victory", "get_forbidden_workshop_level_3", "mission_text_text_vco2_main_clan_skyre_workshop_lvl_3"); - -- cm:set_scripted_mission_text("wh_main_long_victory", "get_forbidden_workshop_level_3", "mission_text_text_vco2_main_clan_skyre_workshop_lvl_3"); - cm:set_scripted_mission_text("wh_main_short_victory", "get_forbidden_workshop_level_4", "mission_text_text_vco2_main_clan_skyre_workshop_lvl_4_3"); cm:set_scripted_mission_text("wh_main_long_victory", "get_forbidden_workshop_level_4", "mission_text_text_vco2_main_clan_skyre_workshop_lvl_4_3"); end if current_workshop_lvl >= 4 then - cm:complete_scripted_mission_objective("wh_main_short_victory", "get_forbidden_workshop_level_4", true); cm:complete_scripted_mission_objective("wh_main_long_victory", "get_forbidden_workshop_level_4", true); - cm:set_scripted_mission_text("wh_main_short_victory", "get_forbidden_workshop_level_4", "mission_text_text_vco2_main_clan_skyre_workshop_lvl_4"); cm:set_scripted_mission_text("wh_main_long_victory", "get_forbidden_workshop_level_4", "mission_text_text_vco2_main_clan_skyre_workshop_lvl_4"); end end function add_listeners() out("#### Adding Victory Conditions Overhaul Listeners ####"); - if cm:is_multiplayer() == false then - out("#### Adding Beastmen Victory Conditions Overhaul Listeners ####"); - cm:set_saved_value("vco_bst_final_battle_quest", false); - core:add_listener( - "vco_beastmen_turn_50_start", - "FactionTurnStart", - function(context) - local faction = context:faction(); - return faction:is_human() and faction:name() == "wh_dlc03_bst_beastmen" and cm:turn_number() == 50; - end, - function() - -- Duplicated because I do not exactly know how this work: - -- - Key bst_final_battle_quest is vanilla and should be false by default - -- - Key vco_bst_final_battle_quest is custom, but I do not know if value is correctly saved - if not (cm:get_saved_value("bst_final_battle_quest") and cm:get_saved_value("vco_bst_final_battle_quest")) then - cm:trigger_mission("wh_dlc03_bst_beastmen", "wh_dlc03_qb_bst_the_final_battle", true); - cm:set_saved_value("bst_final_battle_quest", true); - cm:set_saved_value("vco_bst_final_battle_quest", true); - end - end, - false - ); - - out("#### Adding Skaven Victory Conditions Overhaul Listeners ####"); - core:add_listener( - "vco_clan_eshin_faction_turn_start", - "FactionTurnStart", - function(context) - return context:faction():name() == "wh2_main_skv_clan_eshin" and context:faction():name() == local_faction end, - function(context) - vco_check_skaven_clan_eshin_clans_reputation(context:faction()); - end, - true - ); - core:add_listener( - "vco_clan_eshin_faction_turn_end", - "FactionTurnEnd", - function(context) - return context:faction():name() == "wh2_main_skv_clan_eshin" and context:faction():name() == local_faction end, - function(context) - vco_check_skaven_clan_eshin_clans_reputation(context:faction()); - end, - true - ); - core:add_listener( - "vco_clan_skyre_faction_turn_start", - "FactionTurnStart", - function(context) - return context:faction():name() == "wh2_main_skv_clan_skyre" and context:faction():name() == local_faction end, - function(context) - vco_check_skaven_clan_skyre_workshop(context:faction()); - end, - true - ); - core:add_listener( - "vco_clan_skyre_faction_turn_end", - "FactionTurnEnd", - function(context) - return context:faction():name() == "wh2_main_skv_clan_skyre" and context:faction():name() == local_faction - end, - function(context) - vco_check_skaven_clan_skyre_workshop(context:faction()); - end, - true - ); - end + + out("#### Adding Beastmen Victory Conditions Overhaul Listeners ####"); + cm:set_saved_value("vco_bst_final_battle_quest", false); + core:add_listener( + "vco_beastmen_turn_50_start", + "FactionTurnStart", + function(context) + local faction = context:faction(); + return faction:is_human() and faction:name() == "wh_dlc03_bst_beastmen" and cm:turn_number() == 50; + end, + function() + -- Duplicated because I do not exactly know how this work: + -- - Key bst_final_battle_quest is vanilla and should be false by default + -- - Key vco_bst_final_battle_quest is custom, but I do not know if value is correctly saved + if not (cm:get_saved_value("bst_final_battle_quest") and cm:get_saved_value("vco_bst_final_battle_quest")) then + cm:trigger_mission("wh_dlc03_bst_beastmen", "wh_dlc03_qb_bst_the_final_battle", true); + cm:set_saved_value("bst_final_battle_quest", true); + cm:set_saved_value("vco_bst_final_battle_quest", true); + end + end, + false + ); + + out("#### Adding Skaven Victory Conditions Overhaul Listeners ####"); + core:add_listener( + "vco_clan_eshin_faction_turn_start", + "FactionTurnStart", + function(context) + return context:faction():name() == "wh2_main_skv_clan_eshin" and context:faction():name() == local_faction end, + function(context) + vco_check_skaven_clan_eshin_clans_reputation(context:faction()); + end, + true + ); + + core:add_listener( + "vco_clan_eshin_faction_turn_end", + "FactionTurnEnd", + function(context) + return context:faction():name() == "wh2_main_skv_clan_eshin" and context:faction():name() == local_faction end, + function(context) + vco_check_skaven_clan_eshin_clans_reputation(context:faction()); + end, + true + ); + + core:add_listener( + "vco_clan_skyre_faction_turn_start", + "FactionTurnStart", + function(context) + return context:faction():name() == "wh2_main_skv_clan_skyre" and context:faction():name() == local_faction end, + function(context) + vco_check_skaven_clan_skyre_workshop(context:faction()); + end, + true + ); + + core:add_listener( + "vco_clan_skyre_faction_turn_end", + "FactionTurnEnd", + function(context) + return context:faction():name() == "wh2_main_skv_clan_skyre" and context:faction():name() == local_faction + end, + function(context) + vco_check_skaven_clan_skyre_workshop(context:faction()); + end, + true + ); end function main() - add_listeners(); + cm:add_first_tick_callback(add_listeners) end main(); \ No newline at end of file diff --git a/src/script/vco2_main/factions/wh2_main_skv_clan_eshin/campaigns/main_warhammer/missions.lua b/src/script/vco2_main/factions/wh2_main_skv_clan_eshin/campaigns/main_warhammer/missions.lua index 33ce5e1..2629d48 100644 --- a/src/script/vco2_main/factions/wh2_main_skv_clan_eshin/campaigns/main_warhammer/missions.lua +++ b/src/script/vco2_main/factions/wh2_main_skv_clan_eshin/campaigns/main_warhammer/missions.lua @@ -29,13 +29,6 @@ local missions = { issuer CLAN_ELDERS; primary_objectives_and_payload { - objective - { - type PERFORM_RITUAL; - ritual_category ESHIN_RITUAL_DELAYED; - total 1; - } - objective { type PERFORM_RITUAL; @@ -44,11 +37,10 @@ local missions = { } objective - { - type PERFORM_RITUAL; - ritual_category ESHIN_RITUAL; - total 13; - } + { + type ASSASSINATE_X_CHARACTERS; + total 13; + } payload { @@ -69,8 +61,6 @@ local missions = { { type DESTROY_FACTION; - faction wh_main_dwf_dwarfs; - faction wh2_main_def_hag_graef; faction wh2_dlc15_hef_imrik; diff --git a/src/script/vco2_main/factions/wh_main_dwf_dwarfs/campaigns/main_warhammer/missions.lua b/src/script/vco2_main/factions/wh_main_dwf_dwarfs/campaigns/main_warhammer/missions.lua index de11874..17f2d5c 100644 --- a/src/script/vco2_main/factions/wh_main_dwf_dwarfs/campaigns/main_warhammer/missions.lua +++ b/src/script/vco2_main/factions/wh_main_dwf_dwarfs/campaigns/main_warhammer/missions.lua @@ -93,7 +93,6 @@ local missions = { faction wh2_dlc15_skv_clan_ferrik; faction wh2_dlc16_skv_clan_gritus; - faction wh2_dlc09_skv_clan_rictus; faction wh2_dlc15_skv_clan_volkn; confederation_valid; diff --git a/src/script/vco2_main/factions/wh_main_emp_averland/campaigns/main_warhammer/missions.lua b/src/script/vco2_main/factions/wh_main_emp_averland/campaigns/main_warhammer/missions.lua new file mode 100644 index 0000000..aa58516 --- /dev/null +++ b/src/script/vco2_main/factions/wh_main_emp_averland/campaigns/main_warhammer/missions.lua @@ -0,0 +1,82 @@ +local missions = { + [[ + mission + { + victory_type vco_victory_type_alternative_1_threat_elimination; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type DESTROY_FACTION; + + faction wh_main_grn_black_venom; + faction wh_main_grn_skull-takerz; + + faction wh_main_vmp_vampire_counts; + faction wh_main_vmp_schwartzhafen; + + confederation_valid; + } + + payload + { + game_victory; + } + } + } + ]], + [[ + mission + { + victory_type vco_victory_type_alternative_2_destruction; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type DESTROY_FACTION; + + faction wh_dlc05_wef_argwylon; + faction wh_dlc05_wef_wood_elves; + faction wh_dlc05_wef_torgovann; + faction wh_dlc05_wef_wydrioth; + + confederation_valid; + } + + payload + { + game_victory; + } + } + } + ]], + [[ + mission + { + victory_type vco_victory_type_alternative_3_miscellany; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type ASSASSINATE_X_CHARACTERS; + total 13; + + subculture wh_main_sc_brt_bretonnia; + } + + payload + { + game_victory; + } + } + } + ]] +}; + +return missions; diff --git a/src/script/vco2_main/factions/wh_main_emp_hochland/campaigns/main_warhammer/missions.lua b/src/script/vco2_main/factions/wh_main_emp_hochland/campaigns/main_warhammer/missions.lua new file mode 100644 index 0000000..7676983 --- /dev/null +++ b/src/script/vco2_main/factions/wh_main_emp_hochland/campaigns/main_warhammer/missions.lua @@ -0,0 +1,97 @@ +local missions = { + [[ + mission + { + victory_type vco_victory_type_alternative_1_unification; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type CONTROL_N_PROVINCES_INCLUDING; + total 6; + + province wh_main_hochland; + province wh_main_middenland; + province wh2_main_misty_hills; + province wh_main_nordland; + province wh_main_ostland; + province wh_main_the_wasteland; + } + + payload + { + game_victory; + } + } + } + ]], + [[ + mission + { + victory_type vco_victory_type_alternative_2_threat_elimination; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type RAZE_OR_SACK_N_DIFFERENT_SETTLEMENTS_OF_SUBCULTURE; + total 9; + + subculture wh_main_sc_nor_norsca; + } + + payload + { + game_victory; + } + } + } + ]], + [[ + mission + { + victory_type vco_victory_type_alternative_3_commerce; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type HAVE_RESOURCES; + + resource res_dyes; + resource res_rom_furs; + resource res_rom_timber; + resource res_rom_iron; + resource res_rom_marble; + resource res_gold; + resource res_rom_wine; + resource res_rom_textiles; + resource res_rom_lead; + } + + objective + { + type MAINTAIN_TRADE_WITH_N_FACTIONS; + total 6; + } + + objective + { + type TRADE_INCOME_AT_LEAST_X; + total 2000; + } + + payload + { + game_victory; + } + } + } + ]] +}; + +return missions; diff --git a/src/script/vco2_main/factions/wh_main_emp_marienburg/campaigns/main_warhammer/missions.lua b/src/script/vco2_main/factions/wh_main_emp_marienburg/campaigns/main_warhammer/missions.lua new file mode 100644 index 0000000..1269682 --- /dev/null +++ b/src/script/vco2_main/factions/wh_main_emp_marienburg/campaigns/main_warhammer/missions.lua @@ -0,0 +1,112 @@ +local missions = { + [[ + mission + { + victory_type vco_victory_type_alternative_1_commerce; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type HAVE_RESOURCES; + + resource res_obsidian; + resource res_dyes; + resource res_animals; + resource res_rom_furs; + resource res_gems; + resource res_gold_idols; + resource res_rom_iron; + resource res_rom_marble; + resource res_medicine; + resource res_rom_textiles; + resource res_rom_lead; + resource res_spices; + resource res_rom_timber; + resource res_rom_wine; + } + + objective + { + type MAINTAIN_TRADE_WITH_N_FACTIONS; + total 6; + } + + objective + { + type TRADE_INCOME_AT_LEAST_X; + total 3500; + } + + payload + { + game_victory; + } + } + } + ]], + [[ + mission + { + victory_type vco_victory_type_alternative_2_threat_elimination; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type DESTROY_FACTION; + + faction wh_dlc08_nor_vanaheimlings; + faction wh2_twa03_def_rakarth; + + faction wh2_dlc12_grn_leaf_cutterz_tribe; + faction wh_main_grn_skullsmasherz; + + confederation_valid; + } + + payload + { + game_victory; + } + } + } + ]], + [[ + mission + { + victory_type vco_victory_type_alternative_3_naval_supremacy; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type OWN_N_PORTS_INCLUDING; + total 8; + + region wh_main_the_wasteland_marienburg; + } + + objective + { + type CONSTRUCT_N_BUILDINGS_INCLUDING; + + total 1; + building_level wh_main_special_marienburg_port_3; + + faction wh_main_emp_marienburg; + } + + payload + { + game_victory; + } + } + } + ]] +}; + +return missions; diff --git a/src/script/vco2_main/factions/wh_main_emp_middenland/campaigns/main_warhammer/missions.lua b/src/script/vco2_main/factions/wh_main_emp_middenland/campaigns/main_warhammer/missions.lua new file mode 100644 index 0000000..317021c --- /dev/null +++ b/src/script/vco2_main/factions/wh_main_emp_middenland/campaigns/main_warhammer/missions.lua @@ -0,0 +1,118 @@ +local missions = { + [[ + mission + { + victory_type vco_victory_type_alternative_1_threat_elimination; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type DESTROY_FACTION; + + faction wh2_dlc12_grn_leaf_cutterz_tribe; + + faction wh2_main_bst_manblight; + faction wh_dlc05_bst_morghur_herd; + + confederation_valid; + } + + objective + { + type OWN_N_REGIONS_INCLUDING; + total 1; + + region wh2_main_laurelorn_forest_laurelorn_forest; + } + + payload + { + game_victory; + } + } + } + ]], + [[ + mission + { + victory_type vco_victory_type_alternative_2_unification; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type CONTROL_N_PROVINCES_INCLUDING; + total 6; + + province wh_main_hochland; + province wh_main_middenland; + province wh2_main_misty_hills; + province wh_main_nordland; + province wh_main_ostland; + province wh_main_the_wasteland; + } + + payload + { + game_victory; + } + } + } + ]], + [[ + mission + { + victory_type vco_victory_type_alternative_3_corruption; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type AT_LEAST_X_RELIGION_IN_PROVINCES; + + province wh_main_hochland; + province wh_main_middenland; + province wh2_main_misty_hills; + province wh_main_nordland; + province wh_main_ostland; + province wh_main_the_wasteland; + + total 80; + religion wh_main_religion_untainted; + } + + objective + { + type CONSTRUCT_N_BUILDINGS_INCLUDING; + total 1; + + building_level wh_main_special_great_temple_of_ulric; + + faction wh_main_emp_middenland; + } + + objective + { + type CONSTRUCT_N_BUILDINGS_FROM; + total 4; + + building_level wh_main_middenheim_worship_1; + building_level wh_main_middenheim_worship_2; + + faction wh_main_emp_middenland; + } + + payload + { + game_victory; + } + } + } + ]] +}; + +return missions; diff --git a/src/script/vco2_main/factions/wh_main_emp_nordland/campaigns/main_warhammer/missions.lua b/src/script/vco2_main/factions/wh_main_emp_nordland/campaigns/main_warhammer/missions.lua new file mode 100644 index 0000000..687dc82 --- /dev/null +++ b/src/script/vco2_main/factions/wh_main_emp_nordland/campaigns/main_warhammer/missions.lua @@ -0,0 +1,117 @@ +local missions = { + [[ + mission + { + victory_type vco_victory_type_alternative_1_threat_elimination; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type DESTROY_FACTION; + + faction wh_dlc05_bst_morghur_herd; + + faction wh2_dlc12_grn_leaf_cutterz_tribe; + + confederation_valid; + } + + objective + { + type RAZE_OR_SACK_N_DIFFERENT_SETTLEMENTS_OF_SUBCULTURE; + total 9; + + subculture wh_main_sc_nor_norsca; + } + + payload + { + game_victory; + } + } + } + ]], + [[ + mission + { + victory_type vco_victory_type_alternative_2_naval_supremacy; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type OWN_N_PORTS_INCLUDING; + total 8; + + region wh_main_the_wasteland_marienburg; + } + + objective + { + type DESTROY_FACTION; + + faction wh_main_emp_marienburg; + + confederation_valid; + } + + payload + { + game_victory; + } + } + } + ]], + [[ + mission + { + victory_type vco_victory_type_alternative_3_commerce; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type HAVE_RESOURCES; + + resource res_obsidian; + resource res_dyes; + resource res_animals; + resource res_rom_furs; + resource res_gems; + resource res_gold_idols; + resource res_rom_iron; + resource res_rom_marble; + resource res_medicine; + resource res_rom_textiles; + resource res_rom_lead; + resource res_spices; + resource res_rom_timber; + resource res_rom_wine; + } + + objective + { + type MAINTAIN_TRADE_WITH_N_FACTIONS; + total 6; + } + + objective + { + type TRADE_INCOME_AT_LEAST_X; + total 3000; + } + + payload + { + game_victory; + } + } + } + ]], +}; + +return missions; diff --git a/src/script/vco2_main/factions/wh_main_emp_ostermark/campaigns/main_warhammer/missions.lua b/src/script/vco2_main/factions/wh_main_emp_ostermark/campaigns/main_warhammer/missions.lua new file mode 100644 index 0000000..23abaf3 --- /dev/null +++ b/src/script/vco2_main/factions/wh_main_emp_ostermark/campaigns/main_warhammer/missions.lua @@ -0,0 +1,99 @@ +local missions = { + [[ + mission + { + victory_type vco_victory_type_alternative_1_threat_elimination; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type DESTROY_FACTION; + + faction wh_main_vmp_vampire_counts; + faction wh_main_vmp_schwartzhafen; + + faction wh2_dlc16_wef_drycha; + + faction wh2_dlc15_grn_bonerattlaz; + + faction wh2_dlc15_skv_clan_kreepus; + + confederation_valid; + } + + payload + { + game_victory; + } + } + } + ]], + [[ + mission + { + victory_type vco_victory_type_alternative_2_unification; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type CONTROL_N_PROVINCES_INCLUDING; + total 7; + + province wh_main_averland; + province wh_main_eastern_sylvania; + province wh_main_ostermark; + province wh_main_stirland; + province wh_main_talabecland; + province wh2_main_the_moot; + province wh_main_western_sylvania; + } + + payload + { + game_victory; + } + } + } + ]], + [[ + mission + { + victory_type vco_victory_type_alternative_3_miscellany; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type HAVE_N_AGENTS_OF_TYPE; + total 5; + + agent_subtype emp_witch_hunter; + } + + objective + { + type CONSTRUCT_N_BUILDINGS_FROM; + total 6; + + building_level wh_main_emp_tavern_2; + building_level wh_main_emp_tavern_3; + + faction wh_main_emp_ostermark; + } + + + payload + { + game_victory; + } + } + } + ]] +}; + +return missions; diff --git a/src/script/vco2_main/factions/wh_main_emp_ostland/campaigns/main_warhammer/missions.lua b/src/script/vco2_main/factions/wh_main_emp_ostland/campaigns/main_warhammer/missions.lua new file mode 100644 index 0000000..6c434ab --- /dev/null +++ b/src/script/vco2_main/factions/wh_main_emp_ostland/campaigns/main_warhammer/missions.lua @@ -0,0 +1,101 @@ +local missions = { + [[ + mission + { + victory_type vco_victory_type_alternative_1_threat_elimination; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type RAZE_OR_SACK_N_DIFFERENT_SETTLEMENTS_OF_SUBCULTURE; + total 9; + + subculture wh_main_sc_nor_norsca; + } + + objective + { + type DESTROY_FACTION; + + faction wh_main_nor_skaeling; + + confederation_valid; + } + + payload + { + game_victory; + } + } + } + ]], + [[ + mission + { + victory_type vco_victory_type_alternative_2_expansion; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type DESTROY_FACTION; + + faction wh_main_ksl_kislev; + + confederation_valid; + } + + objective + { + type CONTROL_N_PROVINCES_INCLUDING; + total 14; + + province wh_main_ostland; + + province wh_main_eastern_oblast; + province wh_main_northern_oblast; + province wh_main_southern_oblast; + province wh_main_troll_country; + } + + payload + { + game_victory; + } + } + } + ]], + [[ + mission + { + victory_type vco_victory_type_alternative_3_unification; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type CONTROL_N_PROVINCES_INCLUDING; + total 6; + + province wh_main_hochland; + province wh_main_middenland; + province wh2_main_misty_hills; + province wh_main_nordland; + province wh_main_ostland; + province wh_main_the_wasteland; + } + + payload + { + game_victory; + } + } + } + ]] +}; + +return missions; diff --git a/src/script/vco2_main/factions/wh_main_emp_stirland/campaigns/main_warhammer/missions.lua b/src/script/vco2_main/factions/wh_main_emp_stirland/campaigns/main_warhammer/missions.lua new file mode 100644 index 0000000..9c197e0 --- /dev/null +++ b/src/script/vco2_main/factions/wh_main_emp_stirland/campaigns/main_warhammer/missions.lua @@ -0,0 +1,101 @@ +local missions = { + [[ + mission + { + victory_type vco_victory_type_alternative_1_corruption; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type HAVE_N_AGENTS_OF_TYPE; + total 5; + + agent_subtype emp_warrior_priest; + } + + objective + { + type AT_LEAST_X_RELIGION_IN_PROVINCES; + + province wh_main_averland; + province wh_main_eastern_sylvania; + province wh_main_ostermark; + province wh_main_stirland; + province wh_main_talabecland; + province wh2_main_the_moot; + province wh_main_western_sylvania; + + total 80; + religion wh_main_religion_untainted; + } + + + + payload + { + game_victory; + } + } + } + ]], + [[ + mission + { + victory_type vco_victory_type_alternative_2_threat_elimination; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type DESTROY_FACTION; + + faction wh_main_vmp_vampire_counts; + faction wh_main_vmp_schwartzhafen; + + faction wh2_dlc15_skv_clan_kreepus; + + confederation_valid; + } + + payload + { + game_victory; + } + } + } + ]], + [[ + mission + { + victory_type vco_victory_type_alternative_3_unification; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type CONTROL_N_PROVINCES_INCLUDING; + total 7; + + province wh_main_averland; + province wh_main_eastern_sylvania; + province wh_main_ostermark; + province wh_main_stirland; + province wh_main_talabecland; + province wh2_main_the_moot; + province wh_main_western_sylvania; + } + + payload + { + game_victory; + } + } + } + ]] +}; + +return missions; diff --git a/src/script/vco2_main/factions/wh_main_emp_talabecland/campaigns/main_warhammer/missions.lua b/src/script/vco2_main/factions/wh_main_emp_talabecland/campaigns/main_warhammer/missions.lua new file mode 100644 index 0000000..02710c1 --- /dev/null +++ b/src/script/vco2_main/factions/wh_main_emp_talabecland/campaigns/main_warhammer/missions.lua @@ -0,0 +1,103 @@ +local missions = { + [[ + mission + { + victory_type vco_victory_type_alternative_1_threat_elimination; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type DESTROY_FACTION; + + faction wh_main_vmp_vampire_counts; + faction wh_main_vmp_schwartzhafen; + + faction wh2_dlc16_wef_drycha; + + faction wh2_dlc15_skv_clan_kreepus; + + confederation_valid; + } + + payload + { + game_victory; + } + } + } + ]], + [[ + mission + { + victory_type vco_victory_type_alternative_2_corruption; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type HAVE_N_AGENTS_OF_TYPE; + total 5; + + agent_subtype emp_warrior_priest_of_taal; + } + + objective + { + type AT_LEAST_X_RELIGION_IN_PROVINCES; + + province wh_main_averland; + province wh_main_eastern_sylvania; + province wh_main_ostermark; + province wh_main_stirland; + province wh_main_talabecland; + province wh2_main_the_moot; + province wh_main_western_sylvania; + + total 80; + religion wh_main_religion_untainted; + } + + + + payload + { + game_victory; + } + } + } + ]], + [[ + mission + { + victory_type vco_victory_type_alternative_3_unification; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type CONTROL_N_PROVINCES_INCLUDING; + total 7; + + province wh_main_averland; + province wh_main_eastern_sylvania; + province wh_main_ostermark; + province wh_main_stirland; + province wh_main_talabecland; + province wh2_main_the_moot; + province wh_main_western_sylvania; + } + + payload + { + game_victory; + } + } + } + ]] +}; + +return missions; diff --git a/src/script/vco2_main/factions/wh_main_emp_wissenland/campaigns/main_warhammer/missions.lua b/src/script/vco2_main/factions/wh_main_emp_wissenland/campaigns/main_warhammer/missions.lua new file mode 100644 index 0000000..1bcdced --- /dev/null +++ b/src/script/vco2_main/factions/wh_main_emp_wissenland/campaigns/main_warhammer/missions.lua @@ -0,0 +1,109 @@ +local missions = { + [[ + mission + { + victory_type vco_victory_type_alternative_1_magic_supremacy; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type HAVE_N_AGENTS_OF_TYPE; + total 5; + + agent_subtype wh2_pro07_emp_amethyst_wizard; + } + + objective + { + type CONSTRUCT_N_BUILDINGS_FROM; + total 3; + + building_level wh_main_special_college_of_magic; + building_level wh2_main_special_ghrond_convent_of_sorcery_2_emp; + building_level wh2_dlc14_special_nagashizzar_other; + building_level wh2_main_special_tower_of_hoeth_2_emp; + building_level wh2_main_special_chamber_of_visions; + building_level wh_main_sch_special_moot_cauldron_1; + building_level wh2_main_special_pyramid_of_nagash_other; + + faction wh_main_emp_wissenland; + } + + payload + { + game_victory; + } + } + } + ]], + [[ + mission + { + victory_type vco_victory_type_alternative_2_destruction; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type RAZE_OR_SACK_N_DIFFERENT_SETTLEMENTS_OF_SUBCULTURE; + total 6; + + subculture wh_main_sc_vmp_vampire_counts; + } + + objective + { + type RAZE_OR_SACK_N_DIFFERENT_SETTLEMENTS_OF_SUBCULTURE; + total 6; + + subculture wh2_dlc09_sc_tmb_tomb_kings; + } + + payload + { + game_victory; + } + } + } + ]], + [[ + mission + { + victory_type vco_victory_type_alternative_3_edification; + key wh_main_long_victory; + issuer CLAN_ELDERS; + primary_objectives_and_payload + { + objective + { + type CONSTRUCT_N_BUILDINGS_INCLUDING; + total 1; + + building_level wh_main_special_nuln_gunnery_school; + + faction wh2_main_def_cult_of_pleasure; + } + + objective + { + type CONSTRUCT_N_OF_A_BUILDING; + total 3; + + building_level wh2_main_emp_academy_1; + + faction wh_main_emp_wissenland; + } + + payload + { + game_victory; + } + } + } + ]] +}; + +return missions; diff --git a/src/text/db/vco2_main.loc b/src/text/db/vco2_main.loc index 5ff56fe..33c8d94 100644 Binary files a/src/text/db/vco2_main.loc and b/src/text/db/vco2_main.loc differ