Skip to content

Commit 79f2e63

Browse files
agilbert1412Jouramie
authored andcommitted
Stardew Valley: Turned the Treehouse into an unlockable item (ArchipelagoMW#2004)
1 parent f0c67b5 commit 79f2e63

File tree

5 files changed

+6
-5
lines changed

5 files changed

+6
-5
lines changed

worlds/stardew_valley/__init__.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ class StardewValleyWorld(World):
5656
item_name_to_id = {name: data.code for name, data in item_table.items()}
5757
location_name_to_id = {name: data.code for name, data in location_table.items()}
5858

59-
data_version = 2
59+
data_version = 3
6060
required_client_version = (0, 4, 0)
6161

6262
options: StardewOptions

worlds/stardew_valley/data/items.csv

+1
Original file line numberDiff line numberDiff line change
@@ -271,6 +271,7 @@ id,name,classification,groups,mod_name
271271
284,Cute Baby,progression,"BABY",
272272
285,Ugly Baby,progression,"BABY",
273273
286,Deluxe Scarecrow Recipe,progression,"FESTIVAL,RARECROW",
274+
287,Treehouse,progression,"GINGER_ISLAND",
274275
4001,Burnt,trap,TRAP,
275276
4002,Darkness,trap,TRAP,
276277
4003,Frozen,trap,TRAP,

worlds/stardew_valley/items.py

+1
Original file line numberDiff line numberDiff line change
@@ -415,6 +415,7 @@ def create_walnut_purchase_rewards(item_factory: StardewItemFactory, world_optio
415415
items.extend([item_factory("Boat Repair"),
416416
item_factory("Open Professor Snail Cave"),
417417
item_factory("Ostrich Incubator Recipe"),
418+
item_factory("Treehouse"),
418419
*[item_factory(item) for item in items_by_group[Group.WALNUT_PURCHASE]]])
419420

420421

worlds/stardew_valley/rules.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -211,8 +211,7 @@ def set_entrance_rules(logic, multi_world, player, world_options: StardewOptions
211211
MultiWorldRules.set_rule(multi_world.get_entrance(Entrance.enter_wizard_basement, player),
212212
logic.has_relationship(NPC.wizard, 4))
213213
MultiWorldRules.set_rule(multi_world.get_entrance(Entrance.mountain_to_leo_treehouse, player),
214-
logic.has_relationship(NPC.leo, 6) & logic.can_reach_region(Region.island_south) &
215-
logic.can_reach_region(Region.island_east) & logic.can_reach_region(Region.leo_hut))
214+
logic.received("Treehouse"))
216215
if ModNames.alec in world_options[options.Mods]:
217216
MultiWorldRules.set_rule(multi_world.get_entrance(AlecEntrance.petshop_to_bedroom, player),
218217
(logic.has_relationship(ModNPC.alec, 2) | magic.can_blink(logic)).simplify())

worlds/stardew_valley/test/TestOptions.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -67,8 +67,8 @@ def test_given_choice_when_generate_then_basic_checks(self):
6767
continue
6868
for value in option.options:
6969
with self.subTest(f"{option.internal_name}: {value} [Seed: {seed}]"):
70-
choices = {option.internal_name: option.options[value]}
71-
multiworld = setup_solo_multiworld(choices, seed)
70+
world_options = {option.internal_name: option.options[value]}
71+
multiworld = setup_solo_multiworld(world_options, seed)
7272
basic_checks(self, multiworld)
7373

7474

0 commit comments

Comments
 (0)