385 lines
14 KiB
Python
385 lines
14 KiB
Python
from typing import Dict, TypedDict
|
|
|
|
|
|
class LocationDict(TypedDict, total=False):
|
|
name: str
|
|
region: int
|
|
|
|
|
|
location_table: Dict[int, LocationDict] = {
|
|
# Waynehouse
|
|
200622: {'name': "Waynehouse: Toilet",
|
|
'region': 2},
|
|
200623: {'name': "Waynehouse: Basement Pot 1",
|
|
'region': 2},
|
|
200624: {'name': "Waynehouse: Basement Pot 2",
|
|
'region': 2},
|
|
200625: {'name': "Waynehouse: Basement Pot 3",
|
|
'region': 2},
|
|
200626: {'name': "Waynehouse: Sarcophagus",
|
|
'region': 2},
|
|
|
|
# Afterlife
|
|
200628: {'name': "Afterlife: Mangled Wayne",
|
|
'region': 1},
|
|
200629: {'name': "Afterlife: Jar near Mangled Wayne",
|
|
'region': 1},
|
|
200630: {'name': "Afterlife: Jar under Pool",
|
|
'region': 1},
|
|
|
|
# New Muldul
|
|
200632: {'name': "New Muldul: Shop Ceiling Pot 1",
|
|
'region': 4},
|
|
200633: {'name': "New Muldul: Shop Ceiling Pot 2",
|
|
'region': 4},
|
|
200634: {'name': "New Muldul: Flag Banana",
|
|
'region': 4},
|
|
200635: {'name': "New Muldul: Pot near Vault",
|
|
'region': 4},
|
|
200785: {'name': "New Muldul: Pot above Vault",
|
|
'region': 4},
|
|
200636: {'name': "New Muldul: Underground Pot",
|
|
'region': 4},
|
|
200637: {'name': "New Muldul: Underground Chest",
|
|
'region': 4},
|
|
200638: {'name': "New Muldul: Juice Trade",
|
|
'region': 4},
|
|
200639: {'name': "New Muldul: Basement Suitcase",
|
|
'region': 4},
|
|
200640: {'name': "New Muldul: Upper House Chest 1",
|
|
'region': 4},
|
|
200641: {'name': "New Muldul: Upper House Chest 2",
|
|
'region': 4},
|
|
|
|
# New Muldul Vault
|
|
200643: {'name': "New Muldul: Talk to Pongorma",
|
|
'region': 4},
|
|
200645: {'name': "New Muldul: Rescued Blerol 1",
|
|
'region': 4},
|
|
200646: {'name': "New Muldul: Rescued Blerol 2",
|
|
'region': 4},
|
|
200647: {'name': "New Muldul: Vault Left Chest",
|
|
'region': 5},
|
|
200648: {'name': "New Muldul: Vault Right Chest",
|
|
'region': 5},
|
|
200649: {'name': "New Muldul: Vault Bomb",
|
|
'region': 5},
|
|
|
|
# Viewax's Edifice
|
|
200650: {'name': "Viewax's Edifice: Fountain Banana",
|
|
'region': 6},
|
|
200651: {'name': "Viewax's Edifice: Dedusmuln's Suitcase",
|
|
'region': 6},
|
|
200652: {'name': "Viewax's Edifice: Dedusmuln's Campfire",
|
|
'region': 6},
|
|
200653: {'name': "Viewax's Edifice: Talk to Dedusmuln",
|
|
'region': 6},
|
|
200655: {'name': "Viewax's Edifice: Canopic Jar",
|
|
'region': 6},
|
|
200656: {'name': "Viewax's Edifice: Cave Sarcophagus",
|
|
'region': 6},
|
|
200657: {'name': "Viewax's Edifice: Shielded Key",
|
|
'region': 6},
|
|
200658: {'name': "Viewax's Edifice: Tower Pot",
|
|
'region': 6},
|
|
200659: {'name': "Viewax's Edifice: Tower Jar",
|
|
'region': 6},
|
|
200660: {'name': "Viewax's Edifice: Tower Chest",
|
|
'region': 6},
|
|
200661: {'name': "Viewax's Edifice: Sage Fridge",
|
|
'region': 6},
|
|
200662: {'name': "Viewax's Edifice: Sage Item 1",
|
|
'region': 6},
|
|
200663: {'name': "Viewax's Edifice: Sage Item 2",
|
|
'region': 6},
|
|
200664: {'name': "Viewax's Edifice: Viewax Pot",
|
|
'region': 6},
|
|
200665: {'name': "Viewax's Edifice: Defeat Viewax",
|
|
'region': 6},
|
|
|
|
# Viewax Arcade Minigame
|
|
200667: {'name': "Arcade 1: Key",
|
|
'region': 6},
|
|
200668: {'name': "Arcade 1: Coin Dash",
|
|
'region': 6},
|
|
200669: {'name': "Arcade 1: Burrito Alcove 1",
|
|
'region': 6},
|
|
200670: {'name': "Arcade 1: Burrito Alcove 2",
|
|
'region': 6},
|
|
200671: {'name': "Arcade 1: Behind Spikes Banana",
|
|
'region': 6},
|
|
200672: {'name': "Arcade 1: Pyramid Banana",
|
|
'region': 6},
|
|
200673: {'name': "Arcade 1: Moving Platforms Muscle Applique",
|
|
'region': 6},
|
|
200674: {'name': "Arcade 1: Bed Banana",
|
|
'region': 6},
|
|
|
|
# Airship
|
|
200675: {'name': "Airship: Talk to Somsnosa",
|
|
'region': 7},
|
|
|
|
# Arcade Island
|
|
200676: {'name': "Arcade Island: Shielded Key",
|
|
'region': 8},
|
|
200677: {'name': "Arcade 2: Flying Machine Banana",
|
|
'region': 8},
|
|
200678: {'name': "Arcade 2: Paper Cup Detour",
|
|
'region': 8},
|
|
200679: {'name': "Arcade 2: Peak Muscle Applique",
|
|
'region': 8},
|
|
200680: {'name': "Arcade 2: Double Banana 1",
|
|
'region': 8},
|
|
200681: {'name': "Arcade 2: Double Banana 2",
|
|
'region': 8},
|
|
200682: {'name': "Arcade 2: Cave Burrito",
|
|
'region': 8},
|
|
|
|
# Juice Ranch
|
|
200684: {'name': "Juice Ranch: Juice 1",
|
|
'region': 10},
|
|
200685: {'name': "Juice Ranch: Juice 2",
|
|
'region': 10},
|
|
200686: {'name': "Juice Ranch: Juice 3",
|
|
'region': 10},
|
|
200687: {'name': "Juice Ranch: Ledge Rancher",
|
|
'region': 10},
|
|
200688: {'name': "Juice Ranch: Battle with Somsnosa",
|
|
'region': 10},
|
|
200690: {'name': "Juice Ranch: Fridge",
|
|
'region': 10},
|
|
|
|
# Worm Pod
|
|
200692: {'name': "Worm Pod: Key",
|
|
'region': 12},
|
|
|
|
# Foglast
|
|
200693: {'name': "Foglast: West Sarcophagus",
|
|
'region': 13},
|
|
200694: {'name': "Foglast: Underground Sarcophagus",
|
|
'region': 13},
|
|
200695: {'name': "Foglast: Shielded Key",
|
|
'region': 13},
|
|
200696: {'name': "Foglast: Buy Clicker",
|
|
'region': 13},
|
|
200698: {'name': "Foglast: Shielded Chest",
|
|
'region': 13},
|
|
200699: {'name': "Foglast: Cave Fridge",
|
|
'region': 13},
|
|
200700: {'name': "Foglast: Roof Sarcophagus",
|
|
'region': 13},
|
|
200701: {'name': "Foglast: Under Lair Sarcophagus 1",
|
|
'region': 13},
|
|
200702: {'name': "Foglast: Under Lair Sarcophagus 2",
|
|
'region': 13},
|
|
200703: {'name': "Foglast: Under Lair Sarcophagus 3",
|
|
'region': 13},
|
|
200704: {'name': "Foglast: Sage Sarcophagus",
|
|
'region': 13},
|
|
200705: {'name': "Foglast: Sage Item 1",
|
|
'region': 13},
|
|
200706: {'name': "Foglast: Sage Item 2",
|
|
'region': 13},
|
|
|
|
# Drill Castle
|
|
200707: {'name': "Drill Castle: Ledge Banana",
|
|
'region': 14},
|
|
200708: {'name': "Drill Castle: Island Banana",
|
|
'region': 14},
|
|
200709: {'name': "Drill Castle: Island Pot",
|
|
'region': 14},
|
|
200710: {'name': "Drill Castle: Cave Sarcophagus",
|
|
'region': 14},
|
|
200711: {'name': "Drill Castle: Roof Banana",
|
|
'region': 14},
|
|
|
|
# Sage Labyrinth
|
|
200713: {'name': "Sage Labyrinth: 1F Chest Near Fountain",
|
|
'region': 15},
|
|
200714: {'name': "Sage Labyrinth: 1F Hidden Sarcophagus",
|
|
'region': 15},
|
|
200715: {'name': "Sage Labyrinth: 1F Four Statues Chest 1",
|
|
'region': 15},
|
|
200716: {'name': "Sage Labyrinth: 1F Four Statues Chest 2",
|
|
'region': 15},
|
|
200717: {'name': "Sage Labyrinth: B1 Double Chest 1",
|
|
'region': 15},
|
|
200718: {'name': "Sage Labyrinth: B1 Double Chest 2",
|
|
'region': 15},
|
|
200719: {'name': "Sage Labyrinth: B1 Single Chest",
|
|
'region': 15},
|
|
200720: {'name': "Sage Labyrinth: B1 Enemy Chest",
|
|
'region': 15},
|
|
200721: {'name': "Sage Labyrinth: B1 Hidden Sarcophagus",
|
|
'region': 15},
|
|
200722: {'name': "Sage Labyrinth: B1 Hole Chest",
|
|
'region': 15},
|
|
200723: {'name': "Sage Labyrinth: B2 Hidden Sarcophagus 1",
|
|
'region': 15},
|
|
200724: {'name': "Sage Labyrinth: B2 Hidden Sarcophagus 2",
|
|
'region': 15},
|
|
200754: {'name': "Sage Labyrinth: 2F Sarcophagus",
|
|
'region': 15},
|
|
200725: {'name': "Sage Labyrinth: Motor Hunter Sarcophagus",
|
|
'region': 15},
|
|
200726: {'name': "Sage Labyrinth: Sage Item 1",
|
|
'region': 15},
|
|
200727: {'name': "Sage Labyrinth: Sage Item 2",
|
|
'region': 15},
|
|
200728: {'name': "Sage Labyrinth: Sage Left Arm",
|
|
'region': 15},
|
|
200729: {'name': "Sage Labyrinth: Sage Right Arm",
|
|
'region': 15},
|
|
200730: {'name': "Sage Labyrinth: Sage Left Leg",
|
|
'region': 15},
|
|
200731: {'name': "Sage Labyrinth: Sage Right Leg",
|
|
'region': 15},
|
|
|
|
# Sage Airship
|
|
200732: {'name': "Sage Airship: Bottom Level Pot",
|
|
'region': 16},
|
|
200733: {'name': "Sage Airship: Flesh Pot",
|
|
'region': 16},
|
|
200734: {'name': "Sage Airship: Top Jar",
|
|
'region': 16},
|
|
|
|
# Hylemxylem
|
|
200736: {'name': "Hylemxylem: Jar",
|
|
'region': 17},
|
|
200737: {'name': "Hylemxylem: Lower Reservoir Key",
|
|
'region': 17},
|
|
200738: {'name': "Hylemxylem: Fountain Banana",
|
|
'region': 17},
|
|
200739: {'name': "Hylemxylem: East Island Banana",
|
|
'region': 17},
|
|
200740: {'name': "Hylemxylem: East Island Chest",
|
|
'region': 17},
|
|
200741: {'name': "Hylemxylem: Upper Chamber Banana",
|
|
'region': 17},
|
|
200742: {'name': "Hylemxylem: Across Upper Reservoir Chest",
|
|
'region': 17},
|
|
200743: {'name': "Hylemxylem: Drained Lower Reservoir Chest",
|
|
'region': 17},
|
|
200744: {'name': "Hylemxylem: Drained Lower Reservoir Burrito 1",
|
|
'region': 17},
|
|
200745: {'name': "Hylemxylem: Drained Lower Reservoir Burrito 2",
|
|
'region': 17},
|
|
200746: {'name': "Hylemxylem: Lower Reservoir Hole Pot 1",
|
|
'region': 17},
|
|
200747: {'name': "Hylemxylem: Lower Reservoir Hole Pot 2",
|
|
'region': 17},
|
|
200748: {'name': "Hylemxylem: Lower Reservoir Hole Pot 3",
|
|
'region': 17},
|
|
200749: {'name': "Hylemxylem: Lower Reservoir Hole Sarcophagus",
|
|
'region': 17},
|
|
200750: {'name': "Hylemxylem: Drained Upper Reservoir Burrito 1",
|
|
'region': 17},
|
|
200751: {'name': "Hylemxylem: Drained Upper Reservoir Burrito 2",
|
|
'region': 17},
|
|
200752: {'name': "Hylemxylem: Drained Upper Reservoir Burrito 3",
|
|
'region': 17},
|
|
200753: {'name': "Hylemxylem: Upper Reservoir Hole Key",
|
|
'region': 17}
|
|
}
|
|
|
|
|
|
tv_location_table: Dict[int, LocationDict] = {
|
|
200627: {'name': "Waynehouse: TV",
|
|
'region': 2},
|
|
200631: {'name': "Afterlife: TV",
|
|
'region': 1},
|
|
200642: {'name': "New Muldul: TV",
|
|
'region': 4},
|
|
200666: {'name': "Viewax's Edifice: TV",
|
|
'region': 6},
|
|
200683: {'name': "TV Island: TV",
|
|
'region': 9},
|
|
200691: {'name': "Juice Ranch: TV",
|
|
'region': 10},
|
|
200697: {'name': "Foglast: TV",
|
|
'region': 13},
|
|
200712: {'name': "Drill Castle: TV",
|
|
'region': 14},
|
|
200735: {'name': "Sage Airship: TV",
|
|
'region': 16}
|
|
}
|
|
|
|
|
|
party_location_table: Dict[int, LocationDict] = {
|
|
200644: {'name': "New Muldul: Pongorma Joins",
|
|
'region': 4},
|
|
200654: {'name': "Viewax's Edifice: Dedusmuln Joins",
|
|
'region': 6},
|
|
200689: {'name': "Juice Ranch: Somsnosa Joins",
|
|
'region': 10}
|
|
}
|
|
|
|
|
|
medallion_location_table: Dict[int, LocationDict] = {
|
|
200755: {'name': "New Muldul: Upper House Medallion",
|
|
'region': 4},
|
|
|
|
200756: {'name': "New Muldul: Vault Rear Left Medallion",
|
|
'region': 5},
|
|
200757: {'name': "New Muldul: Vault Rear Right Medallion",
|
|
'region': 5},
|
|
200758: {'name': "New Muldul: Vault Center Medallion",
|
|
'region': 5},
|
|
200759: {'name': "New Muldul: Vault Front Left Medallion",
|
|
'region': 5},
|
|
200760: {'name': "New Muldul: Vault Front Right Medallion",
|
|
'region': 5},
|
|
|
|
200761: {'name': "Viewax's Edifice: Fort Wall Medallion",
|
|
'region': 6},
|
|
200762: {'name': "Viewax's Edifice: Jar Medallion",
|
|
'region': 6},
|
|
200763: {'name': "Viewax's Edifice: Sage Chair Medallion",
|
|
'region': 6},
|
|
200764: {'name': "Arcade 1: Lonely Medallion",
|
|
'region': 6},
|
|
200765: {'name': "Arcade 1: Alcove Medallion",
|
|
'region': 6},
|
|
200766: {'name': "Arcade 1: Lava Medallion",
|
|
'region': 6},
|
|
|
|
200767: {'name': "Arcade 2: Flying Machine Medallion",
|
|
'region': 8},
|
|
200768: {'name': "Arcade 2: Guarded Medallion",
|
|
'region': 8},
|
|
200769: {'name': "Arcade 2: Spinning Medallion",
|
|
'region': 8},
|
|
200770: {'name': "Arcade 2: Hook Medallion",
|
|
'region': 8},
|
|
200771: {'name': "Arcade 2: Flag Medallion",
|
|
'region': 8},
|
|
|
|
200772: {'name': "Foglast: Under Lair Medallion",
|
|
'region': 13},
|
|
200773: {'name': "Foglast: Mid-Air Medallion",
|
|
'region': 13},
|
|
200774: {'name': "Foglast: Top of Tower Medallion",
|
|
'region': 13},
|
|
|
|
200775: {'name': "Sage Airship: Walkway Medallion",
|
|
'region': 16},
|
|
200776: {'name': "Sage Airship: Flesh Medallion",
|
|
'region': 16},
|
|
200777: {'name': "Sage Airship: Top of Ship Medallion",
|
|
'region': 16},
|
|
200778: {'name': "Sage Airship: Hidden Medallion 1",
|
|
'region': 16},
|
|
200779: {'name': "Sage Airship: Hidden Medallion 2",
|
|
'region': 16},
|
|
200780: {'name': "Sage Airship: Hidden Medallion 3",
|
|
'region': 16},
|
|
|
|
200781: {'name': "Hylemxylem: Lower Reservoir Medallion",
|
|
'region': 17},
|
|
200782: {'name': "Hylemxylem: Lower Reservoir Hole Medallion",
|
|
'region': 17},
|
|
200783: {'name': "Hylemxylem: Drain Switch Medallion",
|
|
'region': 17},
|
|
200784: {'name': "Hylemxylem: Warpo Medallion",
|
|
'region': 17}
|
|
} |