diff --git a/worlds/grinch/Items.py b/worlds/grinch/Items.py index 9655d61a..0784a57e 100644 --- a/worlds/grinch/Items.py +++ b/worlds/grinch/Items.py @@ -147,6 +147,8 @@ KEYS_TABLE: dict[str, GrinchItemData] = { # "The Copter Race Contest Door Unlock": GrinchItemData("Supadow Door Unlocks", 407, IC.progression, # [GrinchRamData()]), # "Progressive Supadow Door Unlock": GrinchItemData("Supadow Door Unlocks", 408, IC.progression, + # [GrinchRamData()]), + # "Bike Race Door Unlock": GrinchItemData("Supadow Door Unlocks", 409, IC.progression, # [GrinchRamData()]) } @@ -170,8 +172,8 @@ TRAPS_TABLE: dict[str, GrinchItemData] = { # "Tip Toe Trap": GrinchItemData("Traps", 603, IC.trap, [GrinchRamData()]), #alias to Slowness Trap for traplink "Damage Trap": GrinchItemData("Traps", 604, IC.trap, [GrinchRamData(0x800E8FDC, value=20)]), "Depletion Trap": GrinchItemData("Traps", 605, IC.trap, [GrinchRamData(0x80010058, value=0)]), - # "Dump it to Crumpit": GrinchItemData("Traps", 606, IC.trap, #Alias to Home Trap for traplink - # [GrinchRamData(0x80010000, value=0x05), GrinchRamData(0x8008FB94, value=1)]), + "Dump it to Crumpit": GrinchItemData("Traps", 606, IC.trap, #Alias to Home Trap for traplink + [GrinchRamData(0x80010000, value=0x05), GrinchRamData(0x8008FB94, value=1)]), # "Rocket Spring Trap": GrinchItemData("Traps", 607, IC.trap, [GrinchRamData()]), #alias to Spring Trap for traplink "Who sent me here?": GrinchItemData("Traps", 608, IC.trap, [GrinchRamData(0x8008FB94, value=1)]), #alias to Home Trap for traplink # "Cutscene Trap": GrinchItemData("Traps", 609, IC.trap, [GrinchRamData()]), diff --git a/worlds/grinch/Locations.py b/worlds/grinch/Locations.py index 73f9f6b8..7d20bce0 100644 --- a/worlds/grinch/Locations.py +++ b/worlds/grinch/Locations.py @@ -26,137 +26,154 @@ class GrinchLocation(Location): self.region = data.region self.type = data.location_group self.address = self.address - grinch_locations = { #Going to use current map id as indicator whether or not you visited a location #Visitsanity - "Enter Whoville": GrinchLocationData("Whoville", "Visitsanity", 100, [GrinchRamData(0x80010000, value=0x07)]), - "Enter the Post Office": GrinchLocationData("Post Office", "Visitsanity", 101, [GrinchRamData(0x80010000, value=0x0A)]), - "Enter the Town Hall": GrinchLocationData("City Hall", "Visitsanity", 102, [GrinchRamData(0x80010000, value=0x08)]), - "Enter the Countdown-To-Xmas Clock Tower": GrinchLocationData("Countdown to X-Mas Clock Tower", "Visitsanity", 103, [GrinchRamData(0x80010000, value=0x09)]), - "Enter Who Forest": GrinchLocationData("Who Forest", "Visitsanity", 104, [GrinchRamData(0x80010000, value=0x0B)]), - "Enter the Ski Resort": GrinchLocationData("Ski Resort", "Visitsanity", 105, [GrinchRamData(0x80010000, value=0x0C)]), - "Enter the Civic Center": GrinchLocationData("Civic Center", "Visitsanity", 106, [GrinchRamData(0x80010000, value=0x0D)]), - "Enter Who Dump": GrinchLocationData("Who Dump", "Visitsanity", 107, [GrinchRamData(0x80010000, value=0x0E)]), - "Enter the Minefield": GrinchLocationData("Minefield", "Visitsanity", 108, [GrinchRamData(0x80010000, value=0x11)]), - "Enter the Power Plant": GrinchLocationData("Power Plant", "Visitsanity", 109, [GrinchRamData(0x80010000, value=0x10)]), - "Enter the Generator Building": GrinchLocationData("Generator Building", "Visitsanity", 110, [GrinchRamData(0x80010000, value=0x0F)]), - "Enter Who Lake": GrinchLocationData("Who Lake", "Visitsanity", 111, [GrinchRamData(0x80010000, value=0x12)]), - "Enter the Submarine World": GrinchLocationData("Submarine World", "Visitsanity", 112, [GrinchRamData(0x80010000, value=0x17)]), - "Enter the Scout's Hut": GrinchLocationData("Scout's Hut", "Visitsanity", 113, [GrinchRamData(0x80010000, value=0x13)]), - "Enter the North Shore": GrinchLocationData("North Shore", "Visitsanity", 114, [GrinchRamData(0x80010000, value=0x14)]), - "Enter the Mayor's Villa": GrinchLocationData("Mayor's Villa", "Visitsanity", 115, [GrinchRamData(0x80010000, value=0x16)]), + "Enter Whoville": GrinchLocationData("Whoville", "Visitsanity", 100, [GrinchRamData(0x80010000, value=0x07)]), + "Enter the Post Office": GrinchLocationData("Post Office", "Visitsanity", 101, [GrinchRamData(0x80010000, value=0x0A)]), + "Enter the Town Hall": GrinchLocationData("City Hall", "Visitsanity", 102, [GrinchRamData(0x80010000, value=0x08)]), + "Enter the Countdown-To-Xmas Clock Tower": GrinchLocationData("Countdown to X-Mas Clock Tower", "Visitsanity", 103, [GrinchRamData(0x80010000, value=0x09)]), + "Enter Who Forest": GrinchLocationData("Who Forest", "Visitsanity", 104, [GrinchRamData(0x80010000, value=0x0B)]), + "Enter the Ski Resort": GrinchLocationData("Ski Resort", "Visitsanity", 105, [GrinchRamData(0x80010000, value=0x0C)]), + "Enter the Civic Center": GrinchLocationData("Civic Center", "Visitsanity", 106, [GrinchRamData(0x80010000, value=0x0D)]), + "Enter Who Dump": GrinchLocationData("Who Dump", "Visitsanity", 107, [GrinchRamData(0x80010000, value=0x0E)]), + "Enter the Minefield": GrinchLocationData("Minefield", "Visitsanity", 108, [GrinchRamData(0x80010000, value=0x11)]), + "Enter the Power Plant": GrinchLocationData("Power Plant", "Visitsanity", 109, [GrinchRamData(0x80010000, value=0x10)]), + "Enter the Generator Building": GrinchLocationData("Generator Building", "Visitsanity", 110, [GrinchRamData(0x80010000, value=0x0F)]), + "Enter Who Lake": GrinchLocationData("Who Lake", "Visitsanity", 111, [GrinchRamData(0x80010000, value=0x12)]), + "Enter the Submarine World": GrinchLocationData("Submarine World", "Visitsanity", 112, [GrinchRamData(0x80010000, value=0x17)]), + "Enter the Scout's Hut": GrinchLocationData("Scout's Hut", "Visitsanity", 113, [GrinchRamData(0x80010000, value=0x13)]), + "Enter the North Shore": GrinchLocationData("North Shore", "Visitsanity", 114, [GrinchRamData(0x80010000, value=0x14)]), + "Enter the Mayor's Villa": GrinchLocationData("Mayor's Villa", "Visitsanity", 115, [GrinchRamData(0x80010000, value=0x16)]), #Need to find mission completion address for handful of locations that are not documented. #Missions that have value are those ones we need to find the check for #Whoville Missions - "Smashing Snowmen": GrinchLocationData("Whoville", "Whoville Missions", 200, [GrinchRamData(0x8001020C, value=10)]), - "Shuffling The Mail": GrinchLocationData("Post Office", "Whoville Missions", 201, [GrinchRamData(0x800100BE, binary_bit_pos=1)]), - "Painting The Mayor's Posters": GrinchLocationData("Whoville", "Whoville Missions", 202, [GrinchRamData(0x800100C6, value=10)]), - "Launching Eggs Into Houses": GrinchLocationData("Whoville", "Whoville Missions", 203, [GrinchRamData(0x800100C7, value=10)]), - "Modifying The Mayor's Statue": GrinchLocationData("City Hall", "Whoville Missions", 204, [GrinchRamData(0x800100BE, binary_bit_pos=2)]), - "Advancing The Countdown-To-Xmas Clock": GrinchLocationData("Countdown to X-Mas Clock Tower", "Whoville Missions", 205, [GrinchRamData(0x800100BE, binary_bit_pos=3)]), - "Squashing All Gifts in Whoville": GrinchLocationData("Whoville", "Whoville Missions", 206, [GrinchRamData(0x8001005C, value=500)]), + "Shuffling The Mail": GrinchLocationData("Post Office", "Whoville Missions", 201, [GrinchRamData(0x800100BE, binary_bit_pos=1)]), + "Smashing Snowmen": GrinchLocationData("Whoville", "Whoville Missions", 200, [GrinchRamData(0x8001020C, value=10)]), + "Painting The Mayor's Posters": GrinchLocationData("Whoville", "Whoville Missions", 202, [GrinchRamData(0x800100C6, value=10)]), + "Launching Eggs Into Houses": GrinchLocationData("Whoville", "Whoville Missions", 203, [GrinchRamData(0x800100C7, value=10)]), + "Modifying The Mayor's Statue": GrinchLocationData("City Hall", "Whoville Missions", 204, [GrinchRamData(0x800100BE, binary_bit_pos=2)]), + "Advancing The Countdown-To-Xmas Clock": GrinchLocationData("Countdown to X-Mas Clock Tower", "Whoville Missions", 205, [GrinchRamData(0x800100BE, binary_bit_pos=3)]), + "Squashing All Gifts in Whoville": GrinchLocationData("Whoville", "Whoville Missions", 206, [GrinchRamData(0x8001005C, value=500)]), #Who Forest Missions - "Making Xmas Trees Droop": GrinchLocationData("Who Forest", "Who Forest Missions", 300, [GrinchRamData(0x800100C8, value=10)]), - "Sabotaging Snow Cannon With Glue": GrinchLocationData("Who Forest", "Who Forest Missions", 301, [GrinchRamData(0x800100BE, binary_bit_pos=4)]), - "Putting Beehives In Cabins": GrinchLocationData("Who Forest", "Who Forest Missions", 302, [GrinchRamData(0x800100CA, value=10)]), - "Sliming The Mayor's Skis": GrinchLocationData("Ski Resort", "Who Forest Missions", 303, [GrinchRamData(0x800100BE, binary_bit_pos=5)]), - "Replacing The Candles On The Cake With Fireworks": GrinchLocationData("Civic Center", "Who Forest Missions", 304, [GrinchRamData(0x800100BE, binary_bit_pos=6)]), - "Squashing All Gifts in Who Forest": GrinchLocationData("Who Forest", "Who Forest Missions", 305, [GrinchRamData(0x8001005E, value=750)]), + "Making Xmas Trees Droop": GrinchLocationData("Who Forest", "Who Forest Missions", 300, [GrinchRamData(0x800100C8, value=10)]), + "Sabotaging Snow Cannon With Glue": GrinchLocationData("Who Forest", "Who Forest Missions", 301, [GrinchRamData(0x800100BE, binary_bit_pos=4)]), + "Putting Beehives In Cabins": GrinchLocationData("Who Forest", "Who Forest Missions", 302, [GrinchRamData(0x800100CA, value=10)]), + "Sliming The Mayor's Skis": GrinchLocationData("Ski Resort", "Who Forest Missions", 303, [GrinchRamData(0x800100BE, binary_bit_pos=5)]), + "Replacing The Candles On The Cake With Fireworks": GrinchLocationData("Civic Center", "Who Forest Missions", 304, [GrinchRamData(0x800100BE, binary_bit_pos=6)]), + "Squashing All Gifts in Who Forest": GrinchLocationData("Who Forest", "Who Forest Missions", 305, [GrinchRamData(0x8001005E, value=750)]), #Who Dump Missions - "Stealing Food From Birds": GrinchLocationData("Who Dump", "Who Dump Missions", 400, [GrinchRamData(0x800100CB, value=10)]), - "Feeding The Computer With Robot Parts": GrinchLocationData("Who Dump", "Who Dump Missions", 401, [GrinchRamData(0x800100BF, binary_bit_pos=3)]), - "Infesting The Mayor's House With Rats": GrinchLocationData("Who Dump", "Who Dump Missions", 402, [GrinchRamData(0x800100BE, binary_bit_pos=7)]), - "Conducting The Stinky Gas To Who-Bris' Shack": GrinchLocationData("Who Dump", "Who Dump Missions", 403, [GrinchRamData(0x800100BE, binary_bit_pos=8)]), - "Shaving Who Dump Guardian": GrinchLocationData("Minefield", "Who Dump Missions", 404, [GrinchRamData(0x800100BF, binary_bit_pos=1)]), - "Short-Circuiting Power-Plant": GrinchLocationData("Generator Building", "Who Dump Missions", 405, [GrinchRamData(0x800100BF, binary_bit_pos=2)]), - "Squashing All Gifts in Who Dump": GrinchLocationData("Who Dump", "Who Dump Missions", 406, [GrinchRamData(0x80010060, value=750)]), + "Stealing Food From Birds": GrinchLocationData("Who Dump", "Who Dump Missions", 400, [GrinchRamData(0x800100CB, value=10)]), + "Feeding The Computer With Robot Parts": GrinchLocationData("Who Dump", "Who Dump Missions", 401, [GrinchRamData(0x800100BF, binary_bit_pos=3)]), + "Infesting The Mayor's House With Rats": GrinchLocationData("Who Dump", "Who Dump Missions", 402, [GrinchRamData(0x800100BE, binary_bit_pos=7)]), + "Conducting The Stinky Gas To Who-Bris' Shack": GrinchLocationData("Who Dump", "Who Dump Missions", 403, [GrinchRamData(0x800100BE, binary_bit_pos=8)]), + "Shaving Who Dump Guardian": GrinchLocationData("Minefield", "Who Dump Missions", 404, [GrinchRamData(0x800100BF, binary_bit_pos=1)]), + "Short-Circuiting Power-Plant": GrinchLocationData("Generator Building", "Who Dump Missions", 405, [GrinchRamData(0x800100BF, binary_bit_pos=2)]), + "Squashing All Gifts in Who Dump": GrinchLocationData("Who Dump", "Who Dump Missions", 406, [GrinchRamData(0x80010060, value=750)]), #Who Lake Missions - "Putting Thistles In Shorts": GrinchLocationData("Who Lake", "Who Lake Missions", 500, [GrinchRamData(0x800100E6, value=10)]), - "Sabotaging The Tents": GrinchLocationData("Who Lake", "Who Lake Missions", 501, [GrinchRamData(0x800100E5, value=10)]), - "Drilling Holes In Canoes": GrinchLocationData("North Shore", "Who Lake Missions", 502, [GrinchRamData(0x800100EE, value=10)]), - "Modifying The Marine Mobile": GrinchLocationData("Submarine World", "Who Lake Missions", 503, [GrinchRamData(0x800100BF, binary_bit_pos=5)]), - "Hooking The Mayor's Bed To The Motorboat": GrinchLocationData("Mayor's Villa", "Who Lake Missions", 504, [GrinchRamData(0x800100BF, binary_bit_pos=4)]), - "Squashing All Gifts in Who Lake": GrinchLocationData("Who Lake", "Who Lake Missions", 505, [GrinchRamData(0x80010062, value=1000)]), + "Putting Thistles In Shorts": GrinchLocationData("Who Lake", "Who Lake Missions", 500, [GrinchRamData(0x800100E6, value=10)]), + "Sabotaging The Tents": GrinchLocationData("Who Lake", "Who Lake Missions", 501, [GrinchRamData(0x800100E5, value=10)]), + "Drilling Holes In Canoes": GrinchLocationData("North Shore", "Who Lake Missions", 502, [GrinchRamData(0x800100EE, value=10)]), + "Modifying The Marine Mobile": GrinchLocationData("Submarine World", "Who Lake Missions", 503, [GrinchRamData(0x800100BF, binary_bit_pos=5)]), + "Hooking The Mayor's Bed To The Motorboat": GrinchLocationData("Mayor's Villa", "Who Lake Missions", 504, [GrinchRamData(0x800100BF, binary_bit_pos=4)]), + "Squashing All Gifts in Who Lake": GrinchLocationData("Who Lake", "Who Lake Missions", 505, [GrinchRamData(0x80010062, value=1000)]), #Need to find binary values for individual blueprints, but all ram addresses are found #Blueprints #Binoculars Blueprints - "Binoculars Blueprint - Post Office Roof": GrinchLocationData("Whoville", "Binocular Blueprints", 600, [GrinchRamData(0x80100825, binary_bit_pos=3)]), - "Binoculars Blueprint - City Hall Library - Left Side": GrinchLocationData("City Hall", "Binocular Blueprints", 601, [GrinchRamData(0x8001020B, binary_bit_pos=7)]), - "Binoculars Blueprint - City Hall Library - Front Side": GrinchLocationData("City Hall", "Binocular Blueprints", 602, [GrinchRamData(0x8001020B, binary_bit_pos=6)]), - "Binoculars Blueprint - City Hall Library - Right Side": GrinchLocationData("City Hall", "Binocular Blueprints", 603, [GrinchRamData(0x8001020B, binary_bit_pos=5)]), + "Binoculars Blueprint - Post Office Roof": GrinchLocationData("Whoville", "Binocular Blueprints", 600, [GrinchRamData(0x80100825, binary_bit_pos=3)]), + "Binoculars Blueprint - City Hall Library - Left Side": GrinchLocationData("City Hall", "Binocular Blueprints", 601, [GrinchRamData(0x8001020B, binary_bit_pos=7)]), + "Binoculars Blueprint - City Hall Library - Front Side": GrinchLocationData("City Hall", "Binocular Blueprints", 602, [GrinchRamData(0x8001020B, binary_bit_pos=6)]), + "Binoculars Blueprint - City Hall Library - Right Side": GrinchLocationData("City Hall", "Binocular Blueprints", 603, [GrinchRamData(0x8001020B, binary_bit_pos=5)]), #Rotten Egg Launcher Blueprints - "REL Blueprint - Outside City Hall": GrinchLocationData("Whoville", "Rotten Egg Launcher Blueprints", 700, [GrinchRamData(0x8001020B, binary_bit_pos=1)]), - "REL Blueprint - Outside Clock Tower": GrinchLocationData("Whoville", "Rotten Egg Launcher Blueprints", 701, [GrinchRamData(0x8001020B, binary_bit_pos=2)]), - "REL Blueprint - Post Office - Front of Silver Door": GrinchLocationData("Post Office", "Rotten Egg Launcher Blueprints", 702, [GrinchRamData(0x8001021C, binary_bit_pos=2)]), - "REL Blueprint - Post Office - After Mission Completion": GrinchLocationData("Post Office", "Rotten Egg Launcher Blueprints", 703, [GrinchRamData(0x8001021C, binary_bit_pos=3)]), + "REL Blueprint - Outside City Hall": GrinchLocationData("Whoville", "Rotten Egg Launcher Blueprints", 700, [GrinchRamData(0x8001020B, binary_bit_pos=1)]), + "REL Blueprint - Outside Clock Tower": GrinchLocationData("Whoville", "Rotten Egg Launcher Blueprints", 701, [GrinchRamData(0x8001020B, binary_bit_pos=2)]), + "REL Blueprint - Post Office - Front of Silver Door": GrinchLocationData("Post Office", "Rotten Egg Launcher Blueprints", 702, [GrinchRamData(0x8001021C, binary_bit_pos=2)]), + "REL Blueprint - Post Office - After Mission Completion": GrinchLocationData("Post Office", "Rotten Egg Launcher Blueprints", 703, [GrinchRamData(0x8001021C, binary_bit_pos=3)]), #Rocket Spring Blueprints - "RS Blueprint - Behind Vacuum": GrinchLocationData("Who Forest", "Rocket Spring Blueprints", 800, [GrinchRamData(0x80010243, binary_bit_pos=4)]), - "RS Blueprint - Front of 2nd House near entrance": GrinchLocationData("Who Forest", "Rocket Spring Blueprints", 801, [GrinchRamData(0x80010243, binary_bit_pos=2)]), - "RS Blueprint - Near Tree House on Ground": GrinchLocationData("Who Forest", "Rocket Spring Blueprints", 802, [GrinchRamData(0x80010243, binary_bit_pos=5)]), - "RS Blueprint - Near Cable Car House": GrinchLocationData("Who Forest", "Rocket Spring Blueprints", 804, [GrinchRamData(0x80010242, binary_bit_pos=8)]), - "RS Blueprint - Near Who Snowball in Cave": GrinchLocationData("Who Forest", "Rocket Spring Blueprints", 805, [GrinchRamData(0x80010242, binary_bit_pos=7)]), - "RS Blueprint - Branch Platform Closest to Glue Cannon": GrinchLocationData("Who Forest", "Rocket Spring Blueprints", 806, [GrinchRamData(0x80010243, binary_bit_pos=3)]), - "RS Blueprint - Branch Platform Near Beast": GrinchLocationData("Who Forest", "Rocket Spring Blueprints", 807, [GrinchRamData(0x80010243, binary_bit_pos=1)]), - "RS Blueprint - Branch Platform Ledge Grab House": GrinchLocationData("Who Forest", "Rocket Spring Blueprints", 808, [GrinchRamData(0x80010243, binary_bit_pos=7)]), - "RS Blueprint - On Tree House": GrinchLocationData("Who Forest", "Rocket Spring Blueprints", 809, [GrinchRamData(0x80010243, binary_bit_pos=6)]), + "RS Blueprint - Behind Vacuum": GrinchLocationData("Who Forest", "Rocket Spring Blueprints", 800, [GrinchRamData(0x80010243, binary_bit_pos=4)]), + "RS Blueprint - Front of 2nd House near entrance": GrinchLocationData("Who Forest", "Rocket Spring Blueprints", 801, [GrinchRamData(0x80010243, binary_bit_pos=2)]), + "RS Blueprint - Near Tree House on Ground": GrinchLocationData("Who Forest", "Rocket Spring Blueprints", 802, [GrinchRamData(0x80010243, binary_bit_pos=5)]), + "RS Blueprint - Near Cable Car House": GrinchLocationData("Who Forest", "Rocket Spring Blueprints", 804, [GrinchRamData(0x80010242, binary_bit_pos=8)]), + "RS Blueprint - Near Who Snowball in Cave": GrinchLocationData("Who Forest", "Rocket Spring Blueprints", 805, [GrinchRamData(0x80010242, binary_bit_pos=7)]), + "RS Blueprint - Branch Platform Closest to Glue Cannon": GrinchLocationData("Who Forest", "Rocket Spring Blueprints", 806, [GrinchRamData(0x80010243, binary_bit_pos=3)]), + "RS Blueprint - Branch Platform Near Beast": GrinchLocationData("Who Forest", "Rocket Spring Blueprints", 807, [GrinchRamData(0x80010243, binary_bit_pos=1)]), + "RS Blueprint - Branch Platform Ledge Grab House": GrinchLocationData("Who Forest", "Rocket Spring Blueprints", 808, [GrinchRamData(0x80010243, binary_bit_pos=7)]), + "RS Blueprint - On Tree House": GrinchLocationData("Who Forest", "Rocket Spring Blueprints", 809, [GrinchRamData(0x80010243, binary_bit_pos=6)]), #Slime Shooter Blueprints - "SS Blueprint - Branch Platform Elevated House": GrinchLocationData("Who Forest", "Slime Shooter Blueprints", 900, [GrinchRamData(0x80010244, binary_bit_pos=4)]), - "SS Blueprint - Branch Platform House next to Beast": GrinchLocationData("Who Forest", "Slime Shooter Blueprint", 901, [GrinchRamData(0x80010243, binary_bit_pos=8)]), - "SS Blueprint - House near Civic Center Cave": GrinchLocationData("Who Forest", "Slime Shooter Blueprints", 902, [GrinchRamData(0x80010244, binary_bit_pos=3)]), - "SS Blueprint - House next to Tree House": GrinchLocationData("Who Forest", "Slime Shooter Blueprints", 903, [GrinchRamData(0x80010244, binary_bit_pos=2)]), - "SS Blueprint - House across from Tree House": GrinchLocationData("Who Forest", "Slime Shooter Blueprints", 904, [GrinchRamData(0x80010244, binary_bit_pos=6)]), - "SS Blueprint - 2nd House near entrance right side": GrinchLocationData("Who Forest", "Slime Shooter Blueprints", 905, [GrinchRamData(0x80010244, binary_bit_pos=5)]), - "SS Blueprint - 2nd House near entrance left side": GrinchLocationData("Who Forest", "Slime Shooter Blueprints", 906, [GrinchRamData(0x80010244, binary_bit_pos=8)]), - "SS Blueprint - 2nd House near entrance inbetween blueprints": GrinchLocationData("Who Forest", "Slime Shooter Blueprints", 907, [GrinchRamData(0x80010244, binary_bit_pos=7)]), - "SS Blueprint - House near entrance": GrinchLocationData("Who Forest", "Slime Shooter Blueprints", 908, [GrinchRamData(0x80010244, binary_bit_pos=1)]), + "SS Blueprint - Branch Platform Elevated House": GrinchLocationData("Who Forest", "Slime Shooter Blueprints", 900, [GrinchRamData(0x80010244, binary_bit_pos=4)]), + "SS Blueprint - Branch Platform House next to Beast": GrinchLocationData("Who Forest", "Slime Shooter Blueprint", 901, [GrinchRamData(0x80010243, binary_bit_pos=8)]), + "SS Blueprint - House near Civic Center Cave": GrinchLocationData("Who Forest", "Slime Shooter Blueprints", 902, [GrinchRamData(0x80010244, binary_bit_pos=3)]), + "SS Blueprint - House next to Tree House": GrinchLocationData("Who Forest", "Slime Shooter Blueprints", 903, [GrinchRamData(0x80010244, binary_bit_pos=2)]), + "SS Blueprint - House across from Tree House": GrinchLocationData("Who Forest", "Slime Shooter Blueprints", 904, [GrinchRamData(0x80010244, binary_bit_pos=6)]), + "SS Blueprint - 2nd House near entrance right side": GrinchLocationData("Who Forest", "Slime Shooter Blueprints", 905, [GrinchRamData(0x80010244, binary_bit_pos=5)]), + "SS Blueprint - 2nd House near entrance left side": GrinchLocationData("Who Forest", "Slime Shooter Blueprints", 906, [GrinchRamData(0x80010244, binary_bit_pos=8)]), + "SS Blueprint - 2nd House near entrance inbetween blueprints": GrinchLocationData("Who Forest", "Slime Shooter Blueprints", 907, [GrinchRamData(0x80010244, binary_bit_pos=7)]), + "SS Blueprint - House near entrance": GrinchLocationData("Who Forest", "Slime Shooter Blueprints", 908, [GrinchRamData(0x80010244, binary_bit_pos=1)]), #Octopus Climbing Device - "OCD Blueprint - Middle Pipe": GrinchLocationData("Who Dump", "Octopus Climbing Device Blueprints", 1001, [GrinchRamData(0x80010252, binary_bit_pos=4)]), - "OCD Blueprint - Right Pipe": GrinchLocationData("Who Dump", "Octopus Climbing Device Blueprints", 1002, [GrinchRamData(0x80010252, binary_bit_pos=6)]), - "OCD Blueprint - Mayor's House Rat Vent": GrinchLocationData("Who Dump", "Octopus Climbing Device Blueprints", 1003, [GrinchRamData(0x80010252, binary_bit_pos=2)]), - "OCD Blueprint - Left Pipe": GrinchLocationData("Who Dump", "Octopus Climbing Device Blueprints", 1004, [GrinchRamData(0x80010252, binary_bit_pos=5)]), - "OCD Blueprint - Near Power Plant Wall on right side": GrinchLocationData("Who Dump", "Octopus Climbing Device Blueprints", 1005, [GrinchRamData(0x80010252, binary_bit_pos=1)]), - "OCD Blueprint - Near Who-Bris' Shack": GrinchLocationData("Who Dump", "Octopus Climbing Device Blueprints", 1006, [GrinchRamData(0x80010252, binary_bit_pos=3)]), - "OCD Blueprint - Guardian's House - Left Side": GrinchLocationData("Minefield", "Octopus Climbing Device Blueprints", 1007, [GrinchRamData(0x8001026E, binary_bit_pos=3)]), - "OCD Blueprint - Guardian's House - Right Side": GrinchLocationData("Minefield", "Octopus Climbing Device Blueprints", 1008, [GrinchRamData(0x8001026E, binary_bit_pos=5)]), - "OCD Blueprint - Inside Guardian's House": GrinchLocationData("Minefield", "Octopus Climbing Device Blueprints", 1009, [GrinchRamData(0x8001026E, binary_bit_pos=3)]), + "OCD Blueprint - Middle Pipe": GrinchLocationData("Who Dump", "Octopus Climbing Device Blueprints", 1001, [GrinchRamData(0x80010252, binary_bit_pos=4)]), + "OCD Blueprint - Right Pipe": GrinchLocationData("Who Dump", "Octopus Climbing Device Blueprints", 1002, [GrinchRamData(0x80010252, binary_bit_pos=6)]), + "OCD Blueprint - Mayor's House Rat Vent": GrinchLocationData("Who Dump", "Octopus Climbing Device Blueprints", 1003, [GrinchRamData(0x80010252, binary_bit_pos=2)]), + "OCD Blueprint - Left Pipe": GrinchLocationData("Who Dump", "Octopus Climbing Device Blueprints", 1004, [GrinchRamData(0x80010252, binary_bit_pos=5)]), + "OCD Blueprint - Near Power Plant Wall on right side": GrinchLocationData("Who Dump", "Octopus Climbing Device Blueprints", 1005, [GrinchRamData(0x80010252, binary_bit_pos=1)]), + "OCD Blueprint - Near Who-Bris' Shack": GrinchLocationData("Who Dump", "Octopus Climbing Device Blueprints", 1006, [GrinchRamData(0x80010252, binary_bit_pos=3)]), + "OCD Blueprint - Guardian's House - Left Side": GrinchLocationData("Minefield", "Octopus Climbing Device Blueprints", 1007, [GrinchRamData(0x8001026E, binary_bit_pos=3)]), + "OCD Blueprint - Guardian's House - Right Side": GrinchLocationData("Minefield", "Octopus Climbing Device Blueprints", 1008, [GrinchRamData(0x8001026E, binary_bit_pos=5)]), + "OCD Blueprint - Inside Guardian's House": GrinchLocationData("Minefield", "Octopus Climbing Device Blueprints", 1009, [GrinchRamData(0x8001026E, binary_bit_pos=3)]), #Marine Mobile Blueprints - "MM Blueprint - South Shore - Bridge to Scout's Hut": GrinchLocationData("Who Lake", "Marine Mobile Blueprints", 1100, [GrinchRamData(0x80010281, binary_bit_pos=6)]), - "MM Blueprint - South Shore - Tent near Porcupine": GrinchLocationData("Who Lake", "Marine Mobile Blueprints", 1101, [GrinchRamData(0x80010281, binary_bit_pos=7)]), - "MM Blueprint - South Shore - Near Outhouse": GrinchLocationData("Who Lake", "Marine Mobile Blueprints", 1102, [GrinchRamData(0x80010281, binary_bit_pos=8)]), - "MM Blueprint - South Shore - Near Hill Bridge": GrinchLocationData("Who Lake", "Marine Mobile Blueprints", 1103, [GrinchRamData(0x80010282, binary_bit_pos=1)]), - "MM Blueprint - South Shore - Scout's Hut Roof": GrinchLocationData("Who Lake", "Marine Mobile Blueprints", 1104, [GrinchRamData(0x80010281, binary_bit_pos=5)]), - "MM Blueprint - South Shore - Grass Platform": GrinchLocationData("Who Lake", "Marine Mobile Blueprints", 1105, [GrinchRamData(0x80010281, binary_bit_pos=3)]), - "MM Blueprint - South Shore - Zipline by Beast": GrinchLocationData("Who Lake", "Marine Mobile Blueprints", 1106, [GrinchRamData(0x80010281, binary_bit_pos=4)]), - "MM Blueprint - South Shore - Behind Summer Beast": GrinchLocationData("Who Lake", "Marine Mobile Blueprints", 1107, [GrinchRamData(0x80010282, binary_bit_pos=2)]), - "MM Blueprint - North Shore - Below Bridge": GrinchLocationData("North Shore", "Marine Mobile Blueprints", 1108, [GrinchRamData(0x80010293, binary_bit_pos=1)]), - "MM Blueprint - North Shore - Behind Skunk Hut": GrinchLocationData("North Shore", "Marine Mobile Blueprints", 1109, [GrinchRamData(0x80010293, binary_bit_pos=3)]), - "MM Blueprint - North Shore - Inside Skunk Hut": GrinchLocationData("North Shore", "Marine Mobile Blueprints", 1110, [GrinchRamData(0x80010292, binary_bit_pos=7)]), - "MM Blueprint - North Shore - Fenced in Area": GrinchLocationData("North Shore", "Marine Mobile Blueprints", 1111, [GrinchRamData(0x80010292, binary_bit_pos=8)]), - "MM Blueprint - North Shore - Boulder Box near Bridge": GrinchLocationData("North Shore", "Marine Mobile Blueprints", 1112, [GrinchRamData(0x80010293, binary_bit_pos=4)]), - "MM Blueprint - North Shore - Boulder Box behind Skunk Hut": GrinchLocationData("North Shore", "Marine Mobile Blueprints", 1113, [GrinchRamData(0x80010293, binary_bit_pos=5)]), - "MM Blueprint - North Shore - Inside Drill House": GrinchLocationData("North Shore", "Marine Mobile Blueprints", 1114, [GrinchRamData(0x80010292, binary_bit_pos=6)]), - "MM Blueprint - North Shore - Crow Platform near Drill House": GrinchLocationData("North Shore", "Marine Mobile Blueprints", 1115, [GrinchRamData(0x80010293, binary_bit_pos=2)]), -#Grinch Copter Blueprints - "GC Blueprint - Whoville City Hall - Safe Room": GrinchLocationData("City Hall", "Grinch Copter Blueprints", 1200, [GrinchRamData(0x8001020B, binary_bit_pos=8)]), - "GC Blueprint - Whoville City Hall - Statue Room": GrinchLocationData("City Hall", "Grinch Copter Blueprints", 1201, [GrinchRamData(0x80010220, binary_bit_pos=1)]), - "GC Blueprint - Whoville Clock Tower - Before Bells": GrinchLocationData("Countdown to X-Mas Clock Tower", "Grinch Copter Blueprints", 1202, [GrinchRamData(0x80010265, binary_bit_pos=4)]), - "GC Blueprint - Whoville Clock Tower - After Bells": GrinchLocationData("Countdown to X-Mas Clock Tower", "Grinch Copter Blueprints", 1203, [GrinchRamData(0x80010265, binary_bit_pos=3)]), - "GC Blueprint - Who Forest Ski Resort - Inside Dog's Fence": GrinchLocationData("Ski Resort", "Grinch Copter Blueprints", 1204, [GrinchRamData(0x80010234, binary_bit_pos=8)]), - "GC Blueprint - Who Forest Ski Resort - Max Cave": GrinchLocationData("Ski Resort", "Grinch Copter Blueprints", 1205, [GrinchRamData(0x80010234, binary_bit_pos=7)]), - "GC Blueprint - Who Forest Civic Center - Climb across Bat Cave wall": GrinchLocationData("Civic Center", "Grinch Copter Blueprints", 1206, [GrinchRamData(0x8001022A, binary_bit_pos=8)]), - "GC Blueprint - Who Forest Civic Center - Shoot Icicle in Bat Entrance": GrinchLocationData("Civic Center", "Grinch Copter Blueprints", 1207, [GrinchRamData(0x8001022B, binary_bit_pos=1)]), - "GC Blueprint - Who Dump Power Plant - Max Cave": GrinchLocationData("Power Plant", "Grinch Copter Blueprints", 1208, [GrinchRamData(0x80010265, binary_bit_pos=2)]), - "GC Blueprint - Who Dump Power Plant - After First Gate": GrinchLocationData("Power Plant", "Grinch Copter Blueprints", 1209, [GrinchRamData(0x80010265, binary_bit_pos=3)]), - "GC Blueprint - Who Dump Generator Building - Before Mission": GrinchLocationData("Generator Building", "Grinch Copter Blueprints", 1210, [GrinchRamData(0x8001026B, binary_bit_pos=1)]), - "GC Blueprint - Who Dump Generator Building - After Mission": GrinchLocationData("Generator Building", "Grinch Copter Blueprints", 1211, [GrinchRamData(0x8001026B, binary_bit_pos=2)]), - "GC Blueprint - Who Lake South Shore - Submarine World - Above Surface": GrinchLocationData("Submarine World", "Grinch Copter Blueprints", 1212, [GrinchRamData(0x80010289, binary_bit_pos=4)]), - "GC Blueprint - Who Lake South Shore - Submarine World - Underwater": GrinchLocationData("Submarine World", "Grinch Copter Blueprints", 1213, [GrinchRamData(0x80010289, binary_bit_pos=5)]), - "GC Blueprint - Who Lake North Shore - Mayor's Villa - Tree Branch": GrinchLocationData("Mayor's Villa", "Grinch Copter Blueprints", 1214, [GrinchRamData(0x80010275, binary_bit_pos=8)]), - "GC Blueprint - Who Lake North Shore - Mayor's Villa - Cave": GrinchLocationData("Mayor's Villa", "Grinch Copter Blueprints", 1215, [GrinchRamData(0x80010275, binary_bit_pos=7)]), + "MM Blueprint - South Shore - Bridge to Scout's Hut": GrinchLocationData("Who Lake", "Marine Mobile Blueprints", 1100, [GrinchRamData(0x80010281, binary_bit_pos=6)]), + "MM Blueprint - South Shore - Tent near Porcupine": GrinchLocationData("Who Lake", "Marine Mobile Blueprints", 1101, [GrinchRamData(0x80010281, binary_bit_pos=7)]), + "MM Blueprint - South Shore - Near Outhouse": GrinchLocationData("Who Lake", "Marine Mobile Blueprints", 1102, [GrinchRamData(0x80010281, binary_bit_pos=8)]), + "MM Blueprint - South Shore - Near Hill Bridge": GrinchLocationData("Who Lake", "Marine Mobile Blueprints", 1103, [GrinchRamData(0x80010282, binary_bit_pos=1)]), + "MM Blueprint - South Shore - Scout's Hut Roof": GrinchLocationData("Who Lake", "Marine Mobile Blueprints", 1104, [GrinchRamData(0x80010281, binary_bit_pos=5)]), + "MM Blueprint - South Shore - Grass Platform": GrinchLocationData("Who Lake", "Marine Mobile Blueprints", 1105, [GrinchRamData(0x80010281, binary_bit_pos=3)]), + "MM Blueprint - South Shore - Zipline by Beast": GrinchLocationData("Who Lake", "Marine Mobile Blueprints", 1106, [GrinchRamData(0x80010281, binary_bit_pos=4)]), + "MM Blueprint - South Shore - Behind Summer Beast": GrinchLocationData("Who Lake", "Marine Mobile Blueprints", 1107, [GrinchRamData(0x80010282, binary_bit_pos=2)]), + "MM Blueprint - North Shore - Below Bridge": GrinchLocationData("North Shore", "Marine Mobile Blueprints", 1108, [GrinchRamData(0x80010293, binary_bit_pos=1)]), + "MM Blueprint - North Shore - Behind Skunk Hut": GrinchLocationData("North Shore", "Marine Mobile Blueprints", 1109, [GrinchRamData(0x80010293, binary_bit_pos=3)]), + "MM Blueprint - North Shore - Inside Skunk Hut": GrinchLocationData("North Shore", "Marine Mobile Blueprints", 1110, [GrinchRamData(0x80010292, binary_bit_pos=7)]), + "MM Blueprint - North Shore - Fenced in Area": GrinchLocationData("North Shore", "Marine Mobile Blueprints", 1111, [GrinchRamData(0x80010292, binary_bit_pos=8)]), + "MM Blueprint - North Shore - Boulder Box near Bridge": GrinchLocationData("North Shore", "Marine Mobile Blueprints", 1112, [GrinchRamData(0x80010293, binary_bit_pos=4)]), + "MM Blueprint - North Shore - Boulder Box behind Skunk Hut": GrinchLocationData("North Shore", "Marine Mobile Blueprints", 1113, [GrinchRamData(0x80010293, binary_bit_pos=5)]), + "MM Blueprint - North Shore - Inside Drill House": GrinchLocationData("North Shore", "Marine Mobile Blueprints", 1114, [GrinchRamData(0x80010292, binary_bit_pos=6)]), + "MM Blueprint - North Shore - Crow Platform near Drill House": GrinchLocationData("North Shore", "Marine Mobile Blueprints", 1115, [GrinchRamData(0x80010293, binary_bit_pos=2)]), + #Grinch Copter Blueprints + "GC Blueprint - Whoville City Hall - Safe Room": GrinchLocationData("City Hall", "Grinch Copter Blueprints", 1200, [GrinchRamData(0x8001020B, binary_bit_pos=8)]), + "GC Blueprint - Whoville City Hall - Statue Room": GrinchLocationData("City Hall", "Grinch Copter Blueprints", 1201, [GrinchRamData(0x80010220, binary_bit_pos=1)]), + "GC Blueprint - Whoville Clock Tower - Before Bells": GrinchLocationData("Countdown to X-Mas Clock Tower", "Grinch Copter Blueprints", 1202, [GrinchRamData(0x80010265, binary_bit_pos=4)]), + "GC Blueprint - Whoville Clock Tower - After Bells": GrinchLocationData("Countdown to X-Mas Clock Tower", "Grinch Copter Blueprints", 1203, [GrinchRamData(0x80010265, binary_bit_pos=3)]), + "GC Blueprint - Who Forest Ski Resort - Inside Dog's Fence": GrinchLocationData("Ski Resort", "Grinch Copter Blueprints", 1204, [GrinchRamData(0x80010234, binary_bit_pos=8)]), + "GC Blueprint - Who Forest Ski Resort - Max Cave": GrinchLocationData("Ski Resort", "Grinch Copter Blueprints", 1205, [GrinchRamData(0x80010234, binary_bit_pos=7)]), + "GC Blueprint - Who Forest Civic Center - Climb across Bat Cave wall": GrinchLocationData("Civic Center", "Grinch Copter Blueprints", 1206, [GrinchRamData(0x8001022A, binary_bit_pos=8)]), + "GC Blueprint - Who Forest Civic Center - Shoot Icicle in Bat Entrance": GrinchLocationData("Civic Center", "Grinch Copter Blueprints", 1207, [GrinchRamData(0x8001022B, binary_bit_pos=1)]), + "GC Blueprint - Who Dump Power Plant - Max Cave": GrinchLocationData("Power Plant", "Grinch Copter Blueprints", 1208, [GrinchRamData(0x80010265, binary_bit_pos=2)]), + "GC Blueprint - Who Dump Power Plant - After First Gate": GrinchLocationData("Power Plant", "Grinch Copter Blueprints", 1209, [GrinchRamData(0x80010265, binary_bit_pos=3)]), + "GC Blueprint - Who Dump Generator Building - Before Mission": GrinchLocationData("Generator Building", "Grinch Copter Blueprints", 1210, [GrinchRamData(0x8001026B, binary_bit_pos=1)]), + "GC Blueprint - Who Dump Generator Building - After Mission": GrinchLocationData("Generator Building", "Grinch Copter Blueprints", 1211, [GrinchRamData(0x8001026B, binary_bit_pos=2)]), + "GC Blueprint - Who Lake South Shore - Submarine World - Above Surface": GrinchLocationData("Submarine World", "Grinch Copter Blueprints", 1212, [GrinchRamData(0x80010289, binary_bit_pos=4)]), + "GC Blueprint - Who Lake South Shore - Submarine World - Underwater": GrinchLocationData("Submarine World", "Grinch Copter Blueprints", 1213, [GrinchRamData(0x80010289, binary_bit_pos=5)]), + "GC Blueprint - Who Lake North Shore - Mayor's Villa - Tree Branch": GrinchLocationData("Mayor's Villa", "Grinch Copter Blueprints", 1214, [GrinchRamData(0x80010275, binary_bit_pos=8)]), + "GC Blueprint - Who Lake North Shore - Mayor's Villa - Cave": GrinchLocationData("Mayor's Villa", "Grinch Copter Blueprints", 1215, [GrinchRamData(0x80010275, binary_bit_pos=7)]), #Sleigh Room Locations - "Stealing All Gifts": GrinchLocationData("Sleigh Room", "Sleigh Ride", 1300, [GrinchRamData(0x800100BF, binary_bit_pos=7)]), - "Neutralizing Santa": GrinchLocationData("Sleigh Room", "Sleigh Ride", None, [GrinchRamData(0x800100BF, binary_bit_pos=8)]) + "Stealing All Gifts": GrinchLocationData("Sleigh Room", "Sleigh Ride", 1300, [GrinchRamData(0x800100BF, binary_bit_pos=7)]), + "Neutralizing Santa": GrinchLocationData("Sleigh Room", "Sleigh Ride", None, [GrinchRamData(0x800100BF, binary_bit_pos=8)]), +#Heart of Stones + # "Heart of Stone - Whoville": GrinchLocationData("Post Office", "Heart of Stones"), 1400, [GrinchRamData()]), + # "Heart of Stone - Who Forest": GrinchLocationData("Ski Resort", "Heart of Stones"), 1401, [GrinchRamData()]), + # "Heart of Stone - Who Dump": GrinchLocationData("Minefield", "Heart of Stones"), 1402, [GrinchRamData()]), + # "Heart of Stone - Who Lake": GrinchLocationData("North Shore", "Heart of Stones"), 1402, [GrinchRamData()]), +#Supadow Minigames + # "Spin N' Win - Easy": GrinchLocationData("Spin N' Win Supadow", "Supadow Minigames"), 1500, [GrinchRamData()]), + # "Spin N' Win - Hard": GrinchLocationData("Spin N' Win Supadow", "Supadow Minigames"), 1501, [GrinchRamData()]), + # "Spin N' Win - Real Tough": GrinchLocationData("Spin N' Win Supadow", "Supadow Minigames"), 1502, [GrinchRamData()]), + # "Dankamania - Easy - 15 Points": GrinchLocationData("Dankamania Supadow", "Supadow Minigames"), 1503, [GrinchRamData()]), + # "Dankamania - Hard - 15 Points": GrinchLocationData("Dankamania Supadow", "Supadow Minigames"), 1504, [GrinchRamData()]), + # "Dankamania - Real Tough - 15 Points": GrinchLocationData("Dankamania Supadow", "Supadow Minigames"), 1505, [GrinchRamData()]), + # "The Copter Race Contest - Easy": GrinchLocationData("The Copter Race Contest Supadow", "Supadow Minigames"), 1506, [GrinchRamData()]), + # "The Copter Race Contest - Hard": GrinchLocationData("The Copter Race Contest Supadow", "Supadow Minigames"), 1507, [GrinchRamData()]), + # "The Copter Race Contest - Real Tough": GrinchLocationData("The Copter Race Contest Supadow", "Supadow Minigames"), 1508, [GrinchRamData()]), + # "Bike Race - 1st Place": GrinchLocationData("Bike Race", "Supadow Minigames"), 1509, [GrinchRamData()]), + # "Bike Race - Top 2": GrinchLocationData("Bike Race", "Supadow Minigames"), 1510, [GrinchRamData()]), + # "Bike Race - Top 3": GrinchLocationData("Bike Race", "Supadow Minigames"), 1511, [GrinchRamData()]), } def grinch_locations_to_id() -> dict[str,int]: diff --git a/worlds/grinch/Options.py b/worlds/grinch/Options.py index e04dc259..b614ae1f 100644 --- a/worlds/grinch/Options.py +++ b/worlds/grinch/Options.py @@ -4,7 +4,7 @@ from Options import FreeText, NumericOption, Toggle, DefaultOnToggle, Choice, Te PerGameCommonOptions -class ProgressiveVacuum(Toggle): +class ProgressiveVacuum(Toggle):#DefaultOnToggle """ Determines whether you get access to main areas progressively [NOT IMPLEMENTED] diff --git a/worlds/grinch/Regions.py b/worlds/grinch/Regions.py index 8f1a829d..9c036ecd 100644 --- a/worlds/grinch/Regions.py +++ b/worlds/grinch/Regions.py @@ -35,7 +35,8 @@ subareas_list = [ supadow_list = [ "Spin N' Win Supadow", "Dankamania Supadow", - "The Copter Race Contest Supadow" + "The Copter Race Contest Supadow", + "Bike Race" ] def create_regions(world: "GrinchWorld"): diff --git a/worlds/grinch/Rules.py b/worlds/grinch/Rules.py index 88f90f68..a0816527 100644 --- a/worlds/grinch/Rules.py +++ b/worlds/grinch/Rules.py @@ -394,11 +394,60 @@ rules_dict: dict[str,list[list[str]]] = { ["Rotten Egg Launcher", "Rocket Spring"] ], "Stealing All Gifts": [ - ["Exhaust Pipes", "GPS", "Tires", "Skis", "Twin-End Tuba"] + [] ], "Neutralizing Santa": [ - ["Exhaust Pipes", "GPS", "Tires", "Skis", "Twin-End Tuba"] - ] + [] + ], + "Heart of Stone - Whoville": [ + [] + ], + "Heart of Stone - Who Forest": [ + [] + ], + "Heart of Stone - Who Dump": [ + ["Grinch Copter"], + ["Rotten Egg Launcher", "Slime Shooter", "Rocket Spring"] + ], + "Heart of Stone - Who Lake": [ + [] + ], + "Spin N' Win - Easy": [ + [] + ], + "Spin N' Win - Hard": [ + [] + ], + "Spin N' Win - Real Tough": [ + [] + ], + "Dankamania - Easy - 15 Points": [ + [] + ], + "Dankamania - Hard - 15 Points": [ + [] + ], + "Dankamania - Real Tough - 15 Points": [ + [] + ], + "The Copter Race Contest - Easy": [ + [] + ], + "The Copter Race Contest - Hard": [ + [] + ], + "The Copter Race Contest - Real Tough": [ + [] + ], + "Bike Race - 1st Place": [ + [] + ], + "Bike Race - Top 2": [ + [] + ], + "Bike Race - Top 3": [ + [] + ], } @@ -475,6 +524,10 @@ access_rules_dict: dict[str,list[list[str]]] = { ["The Copter Race Contest Door Unlock"], # ["Progressive Supadow Door Unlock: 3"] ], + "Bike Race": [ + ["Bike Race Door Unlock"], + # ["Progressive Supadow Door Unlock: 4"] + ] } def interpret_rule(rule_set: list[list[str]], player: int):