diff --git a/worlds/stardew_valley/options/__init__.py b/worlds/stardew_valley/options/__init__.py index d1436b00..713d3e95 100644 --- a/worlds/stardew_valley/options/__init__.py +++ b/worlds/stardew_valley/options/__init__.py @@ -3,4 +3,4 @@ from .options import StardewValleyOption, Goal, FarmType, StartingMoney, ProfitM ArcadeMachineLocations, SpecialOrderLocations, QuestLocations, Fishsanity, Museumsanity, Monstersanity, Shipsanity, Cooksanity, Chefsanity, Craftsanity, \ Friendsanity, FriendsanityHeartSize, Booksanity, Walnutsanity, NumberOfMovementBuffs, EnabledFillerBuffs, ExcludeGingerIsland, TrapItems, \ MultipleDaySleepEnabled, MultipleDaySleepCost, ExperienceMultiplier, FriendshipMultiplier, DebrisMultiplier, QuickStart, Gifting, Mods, BundlePlando, \ - StardewValleyOptions + StardewValleyOptions, enabled_mods, disabled_mods, all_mods diff --git a/worlds/stardew_valley/test/TestFill.py b/worlds/stardew_valley/test/TestFill.py index 0bfacb6e..f8565f4f 100644 --- a/worlds/stardew_valley/test/TestFill.py +++ b/worlds/stardew_valley/test/TestFill.py @@ -1,5 +1,6 @@ -from . import SVTestBase, minimal_locations_maximal_items +from . import SVTestBase from .assertion import WorldAssertMixin +from .options.presets import minimal_locations_maximal_items from .. import options from ..mods.mod_data import ModNames diff --git a/worlds/stardew_valley/test/TestItems.py b/worlds/stardew_valley/test/TestItems.py index 671fe638..9cff1465 100644 --- a/worlds/stardew_valley/test/TestItems.py +++ b/worlds/stardew_valley/test/TestItems.py @@ -1,5 +1,6 @@ from BaseClasses import MultiWorld, get_seed -from . import setup_solo_multiworld, SVTestCase, allsanity_no_mods_6_x_x, get_minsanity_options, solo_multiworld +from . import setup_solo_multiworld, SVTestCase, solo_multiworld +from .options.presets import allsanity_no_mods_6_x_x, get_minsanity_options from .. import StardewValleyWorld from ..items import Group, item_table from ..options import Friendsanity, SeasonRandomization, Museumsanity, Shipsanity, Goal diff --git a/worlds/stardew_valley/test/TestLogic.py b/worlds/stardew_valley/test/TestLogic.py index da00a0f4..85279ad2 100644 --- a/worlds/stardew_valley/test/TestLogic.py +++ b/worlds/stardew_valley/test/TestLogic.py @@ -3,7 +3,9 @@ import unittest from unittest import TestCase, SkipTest from BaseClasses import MultiWorld -from . import RuleAssertMixin, setup_solo_multiworld, allsanity_mods_6_x_x, minimal_locations_maximal_items +from . import setup_solo_multiworld +from .assertion import RuleAssertMixin +from .options.presets import allsanity_mods_6_x_x, minimal_locations_maximal_items from .. import StardewValleyWorld from ..data.bundle_data import all_bundle_items_except_money from ..logic.logic import StardewLogic diff --git a/worlds/stardew_valley/test/TestNumberLocations.py b/worlds/stardew_valley/test/TestNumberLocations.py index a1c6a967..2ed52808 100644 --- a/worlds/stardew_valley/test/TestNumberLocations.py +++ b/worlds/stardew_valley/test/TestNumberLocations.py @@ -1,6 +1,6 @@ -from . import SVTestBase, allsanity_no_mods_6_x_x, \ - allsanity_mods_6_x_x, minimal_locations_maximal_items, minimal_locations_maximal_items_with_island, get_minsanity_options, default_6_x_x, \ - allsanity_mods_6_x_x_exclude_disabled +from . import SVTestBase +from .options.presets import default_6_x_x, allsanity_no_mods_6_x_x, allsanity_mods_6_x_x_exclude_disabled, get_minsanity_options, \ + minimal_locations_maximal_items, minimal_locations_maximal_items_with_island from .. import location_table from ..items import Group, item_table diff --git a/worlds/stardew_valley/test/TestOptions.py b/worlds/stardew_valley/test/TestOptions.py index 06bbfd45..9d9af04a 100644 --- a/worlds/stardew_valley/test/TestOptions.py +++ b/worlds/stardew_valley/test/TestOptions.py @@ -2,9 +2,10 @@ import itertools from BaseClasses import ItemClassification from Options import NamedRange -from . import SVTestCase, allsanity_no_mods_6_x_x, allsanity_mods_6_x_x, solo_multiworld, SVTestBase +from . import SVTestCase, solo_multiworld, SVTestBase from .assertion import WorldAssertMixin from .long.option_names import all_option_choices +from .options.presets import allsanity_no_mods_6_x_x, allsanity_mods_6_x_x from .. import items_by_group, Group, StardewValleyWorld from ..locations import locations_by_tag, LocationTags, location_table from ..options import ExcludeGingerIsland, ToolProgression, Goal, SeasonRandomization, TrapItems, SpecialOrderLocations, ArcadeMachineLocations diff --git a/worlds/stardew_valley/test/__init__.py b/worlds/stardew_valley/test/__init__.py index 880a3fda..f06e7d07 100644 --- a/worlds/stardew_valley/test/__init__.py +++ b/worlds/stardew_valley/test/__init__.py @@ -11,9 +11,8 @@ from test.general import gen_steps, setup_solo_multiworld as setup_base_solo_mul from worlds.AutoWorld import call_all from .assertion import RuleAssertMixin from .options.utils import fill_namespace_with_default, parse_class_option_keys, fill_dataclass_with_default -from .. import StardewValleyWorld, options, StardewItem +from .. import StardewValleyWorld, StardewItem from ..options import StardewValleyOption -from ..options.options import enabled_mods logger = logging.getLogger(__name__) @@ -21,169 +20,6 @@ DEFAULT_TEST_SEED = get_seed() logger.info(f"Default Test Seed: {DEFAULT_TEST_SEED}") -def default_6_x_x(): - return { - options.ArcadeMachineLocations.internal_name: options.ArcadeMachineLocations.default, - options.BackpackProgression.internal_name: options.BackpackProgression.default, - options.Booksanity.internal_name: options.Booksanity.default, - options.BuildingProgression.internal_name: options.BuildingProgression.default, - options.BundlePrice.internal_name: options.BundlePrice.default, - options.BundleRandomization.internal_name: options.BundleRandomization.default, - options.Chefsanity.internal_name: options.Chefsanity.default, - options.Cooksanity.internal_name: options.Cooksanity.default, - options.Craftsanity.internal_name: options.Craftsanity.default, - options.Cropsanity.internal_name: options.Cropsanity.default, - options.ElevatorProgression.internal_name: options.ElevatorProgression.default, - options.EntranceRandomization.internal_name: options.EntranceRandomization.default, - options.ExcludeGingerIsland.internal_name: options.ExcludeGingerIsland.default, - options.FestivalLocations.internal_name: options.FestivalLocations.default, - options.Fishsanity.internal_name: options.Fishsanity.default, - options.Friendsanity.internal_name: options.Friendsanity.default, - options.FriendsanityHeartSize.internal_name: options.FriendsanityHeartSize.default, - options.Goal.internal_name: options.Goal.default, - options.Mods.internal_name: options.Mods.default, - options.Monstersanity.internal_name: options.Monstersanity.default, - options.Museumsanity.internal_name: options.Museumsanity.default, - options.NumberOfMovementBuffs.internal_name: options.NumberOfMovementBuffs.default, - options.EnabledFillerBuffs.internal_name: options.EnabledFillerBuffs.default, - options.QuestLocations.internal_name: options.QuestLocations.default, - options.SeasonRandomization.internal_name: options.SeasonRandomization.default, - options.Shipsanity.internal_name: options.Shipsanity.default, - options.SkillProgression.internal_name: options.SkillProgression.default, - options.SpecialOrderLocations.internal_name: options.SpecialOrderLocations.default, - options.ToolProgression.internal_name: options.ToolProgression.default, - options.TrapItems.internal_name: options.TrapItems.default, - options.Walnutsanity.internal_name: options.Walnutsanity.default - } - - -def allsanity_no_mods_6_x_x(): - return { - options.ArcadeMachineLocations.internal_name: options.ArcadeMachineLocations.option_full_shuffling, - options.BackpackProgression.internal_name: options.BackpackProgression.option_progressive, - options.Booksanity.internal_name: options.Booksanity.option_all, - options.BuildingProgression.internal_name: options.BuildingProgression.option_progressive, - options.BundlePrice.internal_name: options.BundlePrice.option_expensive, - options.BundleRandomization.internal_name: options.BundleRandomization.option_thematic, - options.Chefsanity.internal_name: options.Chefsanity.option_all, - options.Cooksanity.internal_name: options.Cooksanity.option_all, - options.Craftsanity.internal_name: options.Craftsanity.option_all, - options.Cropsanity.internal_name: options.Cropsanity.option_enabled, - options.ElevatorProgression.internal_name: options.ElevatorProgression.option_progressive, - options.EntranceRandomization.internal_name: options.EntranceRandomization.option_disabled, - options.ExcludeGingerIsland.internal_name: options.ExcludeGingerIsland.option_false, - options.FestivalLocations.internal_name: options.FestivalLocations.option_hard, - options.Fishsanity.internal_name: options.Fishsanity.option_all, - options.Friendsanity.internal_name: options.Friendsanity.option_all_with_marriage, - options.FriendsanityHeartSize.internal_name: 1, - options.Goal.internal_name: options.Goal.option_perfection, - options.Mods.internal_name: frozenset(), - options.Monstersanity.internal_name: options.Monstersanity.option_progressive_goals, - options.Museumsanity.internal_name: options.Museumsanity.option_all, - options.EnabledFillerBuffs.internal_name: options.EnabledFillerBuffs.preset_all, - options.NumberOfMovementBuffs.internal_name: 12, - options.QuestLocations.internal_name: 56, - options.SeasonRandomization.internal_name: options.SeasonRandomization.option_randomized, - options.Shipsanity.internal_name: options.Shipsanity.option_everything, - options.SkillProgression.internal_name: options.SkillProgression.option_progressive_with_masteries, - options.SpecialOrderLocations.internal_name: options.SpecialOrderLocations.option_board_qi, - options.ToolProgression.internal_name: options.ToolProgression.option_progressive, - options.TrapItems.internal_name: options.TrapItems.option_nightmare, - options.Walnutsanity.internal_name: options.Walnutsanity.preset_all - } - - -def allsanity_mods_6_x_x(): - allsanity = allsanity_no_mods_6_x_x() - allsanity.update({options.Mods.internal_name: frozenset(options.Mods.valid_keys)}) - return allsanity - - -def allsanity_mods_6_x_x_exclude_disabled(): - allsanity = allsanity_no_mods_6_x_x() - allsanity.update({options.Mods.internal_name: frozenset(enabled_mods)}) - return allsanity - - -def get_minsanity_options(): - return { - options.ArcadeMachineLocations.internal_name: options.ArcadeMachineLocations.option_disabled, - options.BackpackProgression.internal_name: options.BackpackProgression.option_vanilla, - options.Booksanity.internal_name: options.Booksanity.option_none, - options.BuildingProgression.internal_name: options.BuildingProgression.option_vanilla, - options.BundlePrice.internal_name: options.BundlePrice.option_very_cheap, - options.BundleRandomization.internal_name: options.BundleRandomization.option_vanilla, - options.Chefsanity.internal_name: options.Chefsanity.option_none, - options.Cooksanity.internal_name: options.Cooksanity.option_none, - options.Craftsanity.internal_name: options.Craftsanity.option_none, - options.Cropsanity.internal_name: options.Cropsanity.option_disabled, - options.ElevatorProgression.internal_name: options.ElevatorProgression.option_vanilla, - options.EntranceRandomization.internal_name: options.EntranceRandomization.option_disabled, - options.ExcludeGingerIsland.internal_name: options.ExcludeGingerIsland.option_true, - options.FestivalLocations.internal_name: options.FestivalLocations.option_disabled, - options.Fishsanity.internal_name: options.Fishsanity.option_none, - options.Friendsanity.internal_name: options.Friendsanity.option_none, - options.FriendsanityHeartSize.internal_name: 8, - options.Goal.internal_name: options.Goal.option_bottom_of_the_mines, - options.Mods.internal_name: frozenset(), - options.Monstersanity.internal_name: options.Monstersanity.option_none, - options.Museumsanity.internal_name: options.Museumsanity.option_none, - options.EnabledFillerBuffs.internal_name: options.EnabledFillerBuffs.preset_none, - options.NumberOfMovementBuffs.internal_name: 0, - options.QuestLocations.internal_name: -1, - options.SeasonRandomization.internal_name: options.SeasonRandomization.option_disabled, - options.Shipsanity.internal_name: options.Shipsanity.option_none, - options.SkillProgression.internal_name: options.SkillProgression.option_vanilla, - options.SpecialOrderLocations.internal_name: options.SpecialOrderLocations.option_vanilla, - options.ToolProgression.internal_name: options.ToolProgression.option_vanilla, - options.TrapItems.internal_name: options.TrapItems.option_no_traps, - options.Walnutsanity.internal_name: options.Walnutsanity.preset_none - } - - -def minimal_locations_maximal_items(): - min_max_options = { - options.ArcadeMachineLocations.internal_name: options.ArcadeMachineLocations.option_disabled, - options.BackpackProgression.internal_name: options.BackpackProgression.option_vanilla, - options.Booksanity.internal_name: options.Booksanity.option_none, - options.BuildingProgression.internal_name: options.BuildingProgression.option_vanilla, - options.BundlePrice.internal_name: options.BundlePrice.option_expensive, - options.BundleRandomization.internal_name: options.BundleRandomization.option_shuffled, - options.Chefsanity.internal_name: options.Chefsanity.option_none, - options.Cooksanity.internal_name: options.Cooksanity.option_none, - options.Craftsanity.internal_name: options.Craftsanity.option_none, - options.Cropsanity.internal_name: options.Cropsanity.option_disabled, - options.ElevatorProgression.internal_name: options.ElevatorProgression.option_vanilla, - options.EntranceRandomization.internal_name: options.EntranceRandomization.option_disabled, - options.ExcludeGingerIsland.internal_name: options.ExcludeGingerIsland.option_true, - options.FestivalLocations.internal_name: options.FestivalLocations.option_disabled, - options.Fishsanity.internal_name: options.Fishsanity.option_none, - options.Friendsanity.internal_name: options.Friendsanity.option_none, - options.FriendsanityHeartSize.internal_name: 8, - options.Goal.internal_name: options.Goal.option_craft_master, - options.Mods.internal_name: frozenset(), - options.Monstersanity.internal_name: options.Monstersanity.option_none, - options.Museumsanity.internal_name: options.Museumsanity.option_none, - options.EnabledFillerBuffs.internal_name: options.EnabledFillerBuffs.preset_all, - options.NumberOfMovementBuffs.internal_name: 12, - options.QuestLocations.internal_name: -1, - options.SeasonRandomization.internal_name: options.SeasonRandomization.option_randomized, - options.Shipsanity.internal_name: options.Shipsanity.option_none, - options.SkillProgression.internal_name: options.SkillProgression.option_vanilla, - options.SpecialOrderLocations.internal_name: options.SpecialOrderLocations.option_vanilla, - options.ToolProgression.internal_name: options.ToolProgression.option_vanilla, - options.TrapItems.internal_name: options.TrapItems.option_nightmare, - options.Walnutsanity.internal_name: options.Walnutsanity.preset_none - } - return min_max_options - - -def minimal_locations_maximal_items_with_island(): - min_max_options = minimal_locations_maximal_items() - min_max_options.update({options.ExcludeGingerIsland.internal_name: options.ExcludeGingerIsland.option_false}) - return min_max_options - - class SVTestCase(unittest.TestCase): # Set False to not skip some 'extra' tests skip_base_tests: bool = True diff --git a/worlds/stardew_valley/test/mods/TestMods.py b/worlds/stardew_valley/test/mods/TestMods.py index dc958652..b4d10f2e 100644 --- a/worlds/stardew_valley/test/mods/TestMods.py +++ b/worlds/stardew_valley/test/mods/TestMods.py @@ -1,8 +1,10 @@ import random from BaseClasses import get_seed, ItemClassification -from .. import SVTestBase, SVTestCase, allsanity_mods_6_x_x, fill_dataclass_with_default +from .. import SVTestBase, SVTestCase from ..assertion import ModAssertMixin, WorldAssertMixin +from ..options.presets import allsanity_mods_6_x_x +from ..options.utils import fill_dataclass_with_default from ... import options, items, Group, create_content from ...mods.mod_data import ModNames from ...options import SkillProgression, Walnutsanity diff --git a/worlds/stardew_valley/test/options/presets.py b/worlds/stardew_valley/test/options/presets.py new file mode 100644 index 00000000..aecdeadd --- /dev/null +++ b/worlds/stardew_valley/test/options/presets.py @@ -0,0 +1,164 @@ +from ... import options + + +def default_6_x_x(): + return { + options.ArcadeMachineLocations.internal_name: options.ArcadeMachineLocations.default, + options.BackpackProgression.internal_name: options.BackpackProgression.default, + options.Booksanity.internal_name: options.Booksanity.default, + options.BuildingProgression.internal_name: options.BuildingProgression.default, + options.BundlePrice.internal_name: options.BundlePrice.default, + options.BundleRandomization.internal_name: options.BundleRandomization.default, + options.Chefsanity.internal_name: options.Chefsanity.default, + options.Cooksanity.internal_name: options.Cooksanity.default, + options.Craftsanity.internal_name: options.Craftsanity.default, + options.Cropsanity.internal_name: options.Cropsanity.default, + options.ElevatorProgression.internal_name: options.ElevatorProgression.default, + options.EntranceRandomization.internal_name: options.EntranceRandomization.default, + options.ExcludeGingerIsland.internal_name: options.ExcludeGingerIsland.default, + options.FestivalLocations.internal_name: options.FestivalLocations.default, + options.Fishsanity.internal_name: options.Fishsanity.default, + options.Friendsanity.internal_name: options.Friendsanity.default, + options.FriendsanityHeartSize.internal_name: options.FriendsanityHeartSize.default, + options.Goal.internal_name: options.Goal.default, + options.Mods.internal_name: options.Mods.default, + options.Monstersanity.internal_name: options.Monstersanity.default, + options.Museumsanity.internal_name: options.Museumsanity.default, + options.NumberOfMovementBuffs.internal_name: options.NumberOfMovementBuffs.default, + options.EnabledFillerBuffs.internal_name: options.EnabledFillerBuffs.default, + options.QuestLocations.internal_name: options.QuestLocations.default, + options.SeasonRandomization.internal_name: options.SeasonRandomization.default, + options.Shipsanity.internal_name: options.Shipsanity.default, + options.SkillProgression.internal_name: options.SkillProgression.default, + options.SpecialOrderLocations.internal_name: options.SpecialOrderLocations.default, + options.ToolProgression.internal_name: options.ToolProgression.default, + options.TrapItems.internal_name: options.TrapItems.default, + options.Walnutsanity.internal_name: options.Walnutsanity.default + } + + +def allsanity_no_mods_6_x_x(): + return { + options.ArcadeMachineLocations.internal_name: options.ArcadeMachineLocations.option_full_shuffling, + options.BackpackProgression.internal_name: options.BackpackProgression.option_progressive, + options.Booksanity.internal_name: options.Booksanity.option_all, + options.BuildingProgression.internal_name: options.BuildingProgression.option_progressive, + options.BundlePrice.internal_name: options.BundlePrice.option_expensive, + options.BundleRandomization.internal_name: options.BundleRandomization.option_thematic, + options.Chefsanity.internal_name: options.Chefsanity.option_all, + options.Cooksanity.internal_name: options.Cooksanity.option_all, + options.Craftsanity.internal_name: options.Craftsanity.option_all, + options.Cropsanity.internal_name: options.Cropsanity.option_enabled, + options.ElevatorProgression.internal_name: options.ElevatorProgression.option_progressive, + options.EntranceRandomization.internal_name: options.EntranceRandomization.option_disabled, + options.ExcludeGingerIsland.internal_name: options.ExcludeGingerIsland.option_false, + options.FestivalLocations.internal_name: options.FestivalLocations.option_hard, + options.Fishsanity.internal_name: options.Fishsanity.option_all, + options.Friendsanity.internal_name: options.Friendsanity.option_all_with_marriage, + options.FriendsanityHeartSize.internal_name: 1, + options.Goal.internal_name: options.Goal.option_perfection, + options.Mods.internal_name: frozenset(), + options.Monstersanity.internal_name: options.Monstersanity.option_progressive_goals, + options.Museumsanity.internal_name: options.Museumsanity.option_all, + options.EnabledFillerBuffs.internal_name: options.EnabledFillerBuffs.preset_all, + options.NumberOfMovementBuffs.internal_name: 12, + options.QuestLocations.internal_name: 56, + options.SeasonRandomization.internal_name: options.SeasonRandomization.option_randomized, + options.Shipsanity.internal_name: options.Shipsanity.option_everything, + options.SkillProgression.internal_name: options.SkillProgression.option_progressive_with_masteries, + options.SpecialOrderLocations.internal_name: options.SpecialOrderLocations.option_board_qi, + options.ToolProgression.internal_name: options.ToolProgression.option_progressive, + options.TrapItems.internal_name: options.TrapItems.option_nightmare, + options.Walnutsanity.internal_name: options.Walnutsanity.preset_all + } + + +def allsanity_mods_6_x_x_exclude_disabled(): + allsanity = allsanity_no_mods_6_x_x() + allsanity.update({options.Mods.internal_name: frozenset(options.enabled_mods)}) + return allsanity + + +def allsanity_mods_6_x_x(): + allsanity = allsanity_no_mods_6_x_x() + allsanity.update({options.Mods.internal_name: frozenset(options.all_mods)}) + return allsanity + + +def get_minsanity_options(): + return { + options.ArcadeMachineLocations.internal_name: options.ArcadeMachineLocations.option_disabled, + options.BackpackProgression.internal_name: options.BackpackProgression.option_vanilla, + options.Booksanity.internal_name: options.Booksanity.option_none, + options.BuildingProgression.internal_name: options.BuildingProgression.option_vanilla, + options.BundlePrice.internal_name: options.BundlePrice.option_very_cheap, + options.BundleRandomization.internal_name: options.BundleRandomization.option_vanilla, + options.Chefsanity.internal_name: options.Chefsanity.option_none, + options.Cooksanity.internal_name: options.Cooksanity.option_none, + options.Craftsanity.internal_name: options.Craftsanity.option_none, + options.Cropsanity.internal_name: options.Cropsanity.option_disabled, + options.ElevatorProgression.internal_name: options.ElevatorProgression.option_vanilla, + options.EntranceRandomization.internal_name: options.EntranceRandomization.option_disabled, + options.ExcludeGingerIsland.internal_name: options.ExcludeGingerIsland.option_true, + options.FestivalLocations.internal_name: options.FestivalLocations.option_disabled, + options.Fishsanity.internal_name: options.Fishsanity.option_none, + options.Friendsanity.internal_name: options.Friendsanity.option_none, + options.FriendsanityHeartSize.internal_name: 8, + options.Goal.internal_name: options.Goal.option_bottom_of_the_mines, + options.Mods.internal_name: frozenset(), + options.Monstersanity.internal_name: options.Monstersanity.option_none, + options.Museumsanity.internal_name: options.Museumsanity.option_none, + options.EnabledFillerBuffs.internal_name: options.EnabledFillerBuffs.preset_none, + options.NumberOfMovementBuffs.internal_name: 0, + options.QuestLocations.internal_name: -1, + options.SeasonRandomization.internal_name: options.SeasonRandomization.option_disabled, + options.Shipsanity.internal_name: options.Shipsanity.option_none, + options.SkillProgression.internal_name: options.SkillProgression.option_vanilla, + options.SpecialOrderLocations.internal_name: options.SpecialOrderLocations.option_vanilla, + options.ToolProgression.internal_name: options.ToolProgression.option_vanilla, + options.TrapItems.internal_name: options.TrapItems.option_no_traps, + options.Walnutsanity.internal_name: options.Walnutsanity.preset_none + } + + +def minimal_locations_maximal_items(): + min_max_options = { + options.ArcadeMachineLocations.internal_name: options.ArcadeMachineLocations.option_disabled, + options.BackpackProgression.internal_name: options.BackpackProgression.option_vanilla, + options.Booksanity.internal_name: options.Booksanity.option_none, + options.BuildingProgression.internal_name: options.BuildingProgression.option_vanilla, + options.BundlePrice.internal_name: options.BundlePrice.option_expensive, + options.BundleRandomization.internal_name: options.BundleRandomization.option_shuffled, + options.Chefsanity.internal_name: options.Chefsanity.option_none, + options.Cooksanity.internal_name: options.Cooksanity.option_none, + options.Craftsanity.internal_name: options.Craftsanity.option_none, + options.Cropsanity.internal_name: options.Cropsanity.option_disabled, + options.ElevatorProgression.internal_name: options.ElevatorProgression.option_vanilla, + options.EntranceRandomization.internal_name: options.EntranceRandomization.option_disabled, + options.ExcludeGingerIsland.internal_name: options.ExcludeGingerIsland.option_true, + options.FestivalLocations.internal_name: options.FestivalLocations.option_disabled, + options.Fishsanity.internal_name: options.Fishsanity.option_none, + options.Friendsanity.internal_name: options.Friendsanity.option_none, + options.FriendsanityHeartSize.internal_name: 8, + options.Goal.internal_name: options.Goal.option_craft_master, + options.Mods.internal_name: frozenset(), + options.Monstersanity.internal_name: options.Monstersanity.option_none, + options.Museumsanity.internal_name: options.Museumsanity.option_none, + options.EnabledFillerBuffs.internal_name: options.EnabledFillerBuffs.preset_all, + options.NumberOfMovementBuffs.internal_name: 12, + options.QuestLocations.internal_name: -1, + options.SeasonRandomization.internal_name: options.SeasonRandomization.option_randomized, + options.Shipsanity.internal_name: options.Shipsanity.option_none, + options.SkillProgression.internal_name: options.SkillProgression.option_vanilla, + options.SpecialOrderLocations.internal_name: options.SpecialOrderLocations.option_vanilla, + options.ToolProgression.internal_name: options.ToolProgression.option_vanilla, + options.TrapItems.internal_name: options.TrapItems.option_nightmare, + options.Walnutsanity.internal_name: options.Walnutsanity.preset_none + } + return min_max_options + + +def minimal_locations_maximal_items_with_island(): + min_max_options = minimal_locations_maximal_items() + min_max_options.update({options.ExcludeGingerIsland.internal_name: options.ExcludeGingerIsland.option_false}) + return min_max_options diff --git a/worlds/stardew_valley/test/performance/TestPerformance.py b/worlds/stardew_valley/test/performance/TestPerformance.py index b5ad0cae..ca63ee5e 100644 --- a/worlds/stardew_valley/test/performance/TestPerformance.py +++ b/worlds/stardew_valley/test/performance/TestPerformance.py @@ -8,7 +8,8 @@ from typing import List from BaseClasses import get_seed from Fill import distribute_items_restrictive, balance_multiworld_progression from worlds import AutoWorld -from .. import SVTestCase, minimal_locations_maximal_items, setup_multiworld, default_6_x_x, allsanity_no_mods_6_x_x, allsanity_mods_6_x_x +from .. import SVTestCase, setup_multiworld +from ..options.presets import default_6_x_x, allsanity_no_mods_6_x_x, allsanity_mods_6_x_x, minimal_locations_maximal_items assert default_6_x_x assert allsanity_no_mods_6_x_x diff --git a/worlds/stardew_valley/test/rules/TestStateRules.py b/worlds/stardew_valley/test/rules/TestStateRules.py index 49577d22..db56e822 100644 --- a/worlds/stardew_valley/test/rules/TestStateRules.py +++ b/worlds/stardew_valley/test/rules/TestStateRules.py @@ -1,4 +1,5 @@ -from .. import SVTestBase, allsanity_mods_6_x_x +from .. import SVTestBase +from ..options.presets import allsanity_mods_6_x_x from ...stardew_rule import HasProgressionPercent diff --git a/worlds/stardew_valley/test/stability/StabilityOutputScript.py b/worlds/stardew_valley/test/stability/StabilityOutputScript.py index c8918d6c..a5385362 100644 --- a/worlds/stardew_valley/test/stability/StabilityOutputScript.py +++ b/worlds/stardew_valley/test/stability/StabilityOutputScript.py @@ -1,8 +1,9 @@ import argparse import json +from .. import setup_solo_multiworld +from ..options.presets import allsanity_mods_6_x_x from ...options import FarmType, EntranceRandomization -from ...test import setup_solo_multiworld, allsanity_mods_6_x_x if __name__ == "__main__": parser = argparse.ArgumentParser() diff --git a/worlds/stardew_valley/test/stability/TestUniversalTracker.py b/worlds/stardew_valley/test/stability/TestUniversalTracker.py index 4655b37a..5e8075e4 100644 --- a/worlds/stardew_valley/test/stability/TestUniversalTracker.py +++ b/worlds/stardew_valley/test/stability/TestUniversalTracker.py @@ -1,7 +1,8 @@ import unittest from unittest.mock import Mock -from .. import SVTestBase, allsanity_mods_6_x_x, fill_namespace_with_default +from .. import SVTestBase, fill_namespace_with_default +from ..options.presets import allsanity_mods_6_x_x from ... import STARDEW_VALLEY, FarmType, BundleRandomization, EntranceRandomization