Skip to content

Commit

Permalink
Merge pull request #18 from Rooby-Roo/animal-well
Browse files Browse the repository at this point in the history
A couple of new frog chests + weird ball shenanigans
  • Loading branch information
ScipioWright authored May 23, 2024
2 parents d1d642a + 16cbdc3 commit 2f6073a
Showing 1 changed file with 29 additions and 14 deletions.
43 changes: 29 additions & 14 deletions worlds/animal-well/regions.py
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ class AWData(NamedTuple):
kangaroo_blocks = "Kangaroo Room Blocks"


frog_near_wombat = "Frog Area near Wombat" # first part of the frog area after you drop down the hole
frog_near_wombat = "Frog Area near Groundhog" # first part of the frog area after you drop down the hole
frog_under_ostrich_statue = "Frog Area under Ostrich Statue" # just the dark room basically
frog_pre_ostrich_attack = "Frog before Ostrich Attack" # left of dark room, right of ostrich, above dynamite
frog_ostrich_attack = "Frog Ostrich Attack" # and also the little area above it
Expand All @@ -97,6 +97,7 @@ class AWData(NamedTuple):
frog_ruby_egg_ledge = "Ruby Egg Ledge" # the ledge with the ruby egg in the frog dark room
frog_east_of_fast_travel = "Frog East of Fast Travel" # one screen to the right of the fast travel spot
frog_elevator_and_ostrich_wheel = "Frog Elevator and Ostrich Wheel Section" # interdependent, so one big region
frog_travel_egg_spot = "Frog Travel Egg Spot"

hippo_entry = "Hippo Entry" # the beginning of the end
hippo_manticore_room = "Hippo Manticore Room" # the 4 rooms you evade the manticore in for the first ending
Expand Down Expand Up @@ -164,6 +165,8 @@ class AWData(NamedTuple):
AWData(AWType.location),
lname.egg_planet:
AWData(AWType.location),
frog_travel_egg_spot:
AWData(AWType.region, [[iname.top]]),
},

starting_area: {
Expand Down Expand Up @@ -298,7 +301,7 @@ class AWData(NamedTuple):
bear_capybara_and_below:
AWData(AWType.region, [[iname.key], [iname.bubble_short]]),
bear_transcendental: # might be controversial? it's across a screen transition but only 4 bubbles
AWData(AWType.region, [[iname.bubble_short]]),
AWData(AWType.region, [[iname.bubble_short], [iname.disc_hop_hard]]),
bear_kangaroo_waterfall:
AWData(AWType.region, [[iname.slink], [iname.top, iname.yoyo]]), # todo: check if top + yoyo can be used
bear_razzle_egg_spot:
Expand Down Expand Up @@ -345,7 +348,7 @@ class AWData(NamedTuple):
bear_ladder_after_chameleon:
AWData(AWType.region),
lname.medal_s:
AWData(AWType.location, iname.defeated_chameleon),
AWData(AWType.location, [[iname.defeated_chameleon]]),
},
bear_ladder_after_chameleon: {
bear_slink_room: # jump up through the floor at the top of the ladder
Expand All @@ -355,7 +358,7 @@ class AWData(NamedTuple):
lname.slink:
AWData(AWType.location),
bear_transcendental: # descend, jump into left wall, or disc hop from the platforms underneath. TODO: too tight to not be disc_hop_hard? It's close.
AWData(AWType.region, [[iname.slink, iname.bubble], [iname.top, iname.bubble], [iname.slink, iname.disc_hop], [iname.top, iname.disc_hop]]), # todo: fix formatting, check if you can use ball reliably
AWData(AWType.region, [[iname.slink, iname.bubble], [iname.top, iname.bubble], [iname.slink, iname.disc_hop], [iname.top, iname.disc_hop], [iname.ball, iname.disc_hop], [iname.ball, iname.disc_hop]]), # todo: fix formatting
# bear_area_entry: # unnecessary because it's a sphere 1 area
# AWData(AWType.region),
},
Expand All @@ -379,15 +382,17 @@ class AWData(NamedTuple):
lname.egg_chaos: # in the room with the monkey that throws rocks at you
AWData(AWType.location),
bear_crow_rooms:
AWData(AWType.region, [[iname.slink]]),
AWData(AWType.region, [[iname.slink], [iname.ball_tricky]]),
bear_match_chest_spot:
AWData(AWType.region, [[iname.ball_tricky, iname.disc, iname.weird_skips]]), # oh hell yeah this is a cool one
},
bear_crow_rooms: {
bear_shadow_egg_spot: # get across the room with the lifters and the miasma
AWData(AWType.region, [[iname.slink], [iname.lantern], [iname.tanking_damage]]),
lname.bunny_crow: # it jumps down after a moment
AWData(AWType.location, [[iname.flute]]),
bear_hedgehog_square: # slink needed for puzzle to get to the button
AWData(AWType.region, [[iname.slink]]),
AWData(AWType.region, [[iname.slink], [iname.ball_tricky]]),
},
bear_shadow_egg_spot: {
lname.egg_shadow:
Expand Down Expand Up @@ -641,15 +646,25 @@ class AWData(NamedTuple):
},

frog_near_wombat: {
# todo: locked door to the left of the wombat
# todo: spikes at floor of the room with the 3 birds
lname.candle_frog:
AWData(AWType.location, [[iname.match]]),
lname.egg_moon: # the one with all the mouse heads
AWData(AWType.location, [[iname.disc, iname.lantern], [iname.bubble_short, iname.lantern]]),
# bubble short or maybe just bubble? You have to shoot down at the apex of your jump, feels weird
AWData(AWType.location, [[iname.disc, iname.lantern], [iname.bubble, iname.lantern]]),
# bubble short or maybe just bubble? You have to shoot down at the apex of your jump, feels weird -- i was getting this 90% of the time, but im not sure it's intuitive? make it logical and put it in the tricks FAQ.
lname.egg_promise: # under spikes in 3 bird room
AWData(AWType.location, [[iname.lantern, iname.can_break_spikes_below]]),
frog_under_ostrich_statue: # after hitting the switch, no items needed
AWData(AWType.region),
frog_travel_egg_spot:
AWData(AWType.region, [[iname.key]]),
},
frog_travel_egg_spot: { # the spot behind the groundhog
lname.egg_travel:
AWData(AWType.location),
frog_ostrich_attack:
AWData(AWType.region, [[iname.yoyo], [iname.ball]]),
frog_near_wombat:
AWData(AWType.region, [[iname.key]]), # assuming the key can open it from the left
},
frog_under_ostrich_statue: {
frog_near_wombat: # may have to go a few screens away to hit a switch, but you don't need items
Expand Down Expand Up @@ -699,12 +714,12 @@ class AWData(NamedTuple):
lname.activate_frog_fast_travel:
AWData(AWType.location, [[iname.flute]]),
lname.key_frog_guard_room_west:
AWData(AWType.location, [[iname.yoyo], [iname.flute]]), # todo: top, ball, wheel?
AWData(AWType.location, [[iname.yoyo], [iname.flute], [iname.ball]]), # you can just throw the ball at their shields lmao
lname.match_guard_room: # hit guard then jump off its head, or jump up with mobility
AWData(AWType.location, [[iname.yoyo], [iname.flute], [iname.disc_hop], [iname.bubble]]), # todo: top, ball, wheel?
AWData(AWType.location, [[iname.yoyo], [iname.flute], [iname.disc_hop], [iname.bubble], [iname.ball]]), # todo: top, ball, wheel?
# 2 doors in the top right of this region
lname.key_frog_guard_room_east: # todo: can you move the guards with ball or top?
AWData(AWType.location, [[iname.yoyo], [iname.bubble, iname.flute]]),
lname.key_frog_guard_room_east:
AWData(AWType.location, [[iname.yoyo], [iname.bubble, iname.flute], [iname.ball]]), # might be doable with flute + disc?
frog_dark_room: # yoyo to open the door, lantern to fall through the bird
AWData(AWType.region, [[iname.yoyo], [iname.lantern]]),
frog_ruby_egg_ledge: # fall through a bird onto it
Expand Down

0 comments on commit 2f6073a

Please sign in to comment.