SC2: Content update (#5312)
Feature highlights: - Adds many content to the SC2 game - Allows custom mission order - Adds race-swapped missions for build missions (except Epilogue and NCO) - Allows War Council Nerfs (Protoss units can get pre - War Council State, alternative units get another custom nerf to match the power level of base units) - Revamps Predator's upgrade tree (never was considered strategically important) - Adds some units and upgrades - Locked and excluded items can specify quantity - Key mode (if opt-in, missions require keys to be unlocked on top of their regular regular requirements - Victory caches - Victory locations can grant multiple items to the multiworld instead of one - The generator is more resilient for generator failures as it validates logic for item excludes - Fixes the following issues: - https://github.com/ArchipelagoMW/Archipelago/issues/3531 - https://github.com/ArchipelagoMW/Archipelago/issues/3548
This commit is contained in:
@@ -1,7 +1,19 @@
|
||||
import unittest
|
||||
from .test_base import Sc2TestBase
|
||||
from .. import Options, MissionTables
|
||||
from typing import Dict
|
||||
|
||||
from .. import options
|
||||
from ..item import item_parents
|
||||
|
||||
|
||||
class TestOptions(unittest.TestCase):
|
||||
def test_campaign_size_option_max_matches_number_of_missions(self):
|
||||
self.assertEqual(Options.MaximumCampaignSize.range_end, len(MissionTables.SC2Mission))
|
||||
|
||||
def test_unit_max_upgrades_matching_items(self) -> None:
|
||||
upgrade_group_to_count: Dict[str, int] = {}
|
||||
for parent_id, child_list in item_parents.parent_id_to_children.items():
|
||||
main_parent = item_parents.parent_present[parent_id].constraint_group
|
||||
if main_parent is None:
|
||||
continue
|
||||
upgrade_group_to_count.setdefault(main_parent, 0)
|
||||
upgrade_group_to_count[main_parent] += len(child_list)
|
||||
|
||||
self.assertEqual(options.MAX_UPGRADES_OPTION, max(upgrade_group_to_count.values()))
|
||||
|
||||
Reference in New Issue
Block a user