Skip to content

Stardew valley: Create Option Groups #3376

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
2 changes: 2 additions & 0 deletions worlds/stardew_valley/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
from .logic.bundle_logic import BundleLogic
from .logic.logic import StardewLogic
from .logic.time_logic import MAX_MONTHS
from .option_groups import sv_option_groups
from .options import StardewValleyOptions, SeasonRandomization, Goal, BundleRandomization, BundlePrice, NumberOfLuckBuffs, NumberOfMovementBuffs, \
BackpackProgression, BuildingProgression, ExcludeGingerIsland, TrapItems, EntranceRandomization
from .presets import sv_options_presets
Expand All @@ -39,6 +40,7 @@ class StardewWebWorld(WebWorld):
theme = "dirt"
bug_report_page = "https://github.com/agilbert1412/StardewArchipelago/issues/new?labels=bug&title=%5BBug%5D%3A+Brief+Description+of+bug+here"
options_presets = sv_options_presets
option_groups = sv_option_groups

tutorials = [
Tutorial(
Expand Down
65 changes: 65 additions & 0 deletions worlds/stardew_valley/option_groups.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
from Options import OptionGroup, DeathLink, ProgressionBalancing, Accessibility
from .options import (Goal, StartingMoney, ProfitMargin, BundleRandomization, BundlePrice,
EntranceRandomization, SeasonRandomization, Cropsanity, BackpackProgression,
ToolProgression, ElevatorProgression, SkillProgression, BuildingProgression,
FestivalLocations, ArcadeMachineLocations, SpecialOrderLocations,
QuestLocations, Fishsanity, Museumsanity, Friendsanity, FriendsanityHeartSize,
NumberOfMovementBuffs, NumberOfLuckBuffs, ExcludeGingerIsland, TrapItems,
MultipleDaySleepEnabled, MultipleDaySleepCost, ExperienceMultiplier,
FriendshipMultiplier, DebrisMultiplier, QuickStart, Gifting, FarmType,
Monstersanity, Shipsanity, Cooksanity, Chefsanity, Craftsanity, Mods)

sv_option_groups = [
OptionGroup("General", [
Goal,
FarmType,
BundleRandomization,
BundlePrice,
EntranceRandomization,
ExcludeGingerIsland,
]),
OptionGroup("Major Unlocks", [
SeasonRandomization,
Cropsanity,
BackpackProgression,
ToolProgression,
ElevatorProgression,
SkillProgression,
BuildingProgression,
]),
OptionGroup("Extra Shuffling", [
FestivalLocations,
ArcadeMachineLocations,
SpecialOrderLocations,
QuestLocations,
Fishsanity,
Museumsanity,
Friendsanity,
FriendsanityHeartSize,
Monstersanity,
Shipsanity,
Cooksanity,
Chefsanity,
Craftsanity,
]),
OptionGroup("Multipliers and Buffs", [
StartingMoney,
ProfitMargin,
ExperienceMultiplier,
FriendshipMultiplier,
DebrisMultiplier,
NumberOfMovementBuffs,
NumberOfLuckBuffs,
TrapItems,
MultipleDaySleepEnabled,
MultipleDaySleepCost,
QuickStart,
]),
OptionGroup("Advanced Options", [
Gifting,
DeathLink,
Mods,
ProgressionBalancing,
Accessibility,
]),
]
14 changes: 7 additions & 7 deletions worlds/stardew_valley/options.py
Original file line number Diff line number Diff line change
Expand Up @@ -697,8 +697,6 @@ class Mods(OptionSet):
class StardewValleyOptions(PerGameCommonOptions):
goal: Goal
farm_type: FarmType
starting_money: StartingMoney
profit_margin: ProfitMargin
bundle_randomization: BundleRandomization
bundle_price: BundlePrice
entrance_randomization: EntranceRandomization
Expand All @@ -722,16 +720,18 @@ class StardewValleyOptions(PerGameCommonOptions):
craftsanity: Craftsanity
friendsanity: Friendsanity
friendsanity_heart_size: FriendsanityHeartSize
exclude_ginger_island: ExcludeGingerIsland
quick_start: QuickStart
starting_money: StartingMoney
profit_margin: ProfitMargin
experience_multiplier: ExperienceMultiplier
friendship_multiplier: FriendshipMultiplier
debris_multiplier: DebrisMultiplier
movement_buff_number: NumberOfMovementBuffs
luck_buff_number: NumberOfLuckBuffs
exclude_ginger_island: ExcludeGingerIsland
trap_items: TrapItems
multiple_day_sleep_enabled: MultipleDaySleepEnabled
multiple_day_sleep_cost: MultipleDaySleepCost
experience_multiplier: ExperienceMultiplier
friendship_multiplier: FriendshipMultiplier
debris_multiplier: DebrisMultiplier
quick_start: QuickStart
gifting: Gifting
mods: Mods
death_link: DeathLink
Loading