2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								# Locations are specific points that you would obtain an item at.
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								from enum import IntEnum
							 | 
						
					
						
							
								
									
										
										
										
											2023-07-18 22:51:01 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								from typing import Dict, NamedTuple, Optional, Set
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								from BaseClasses import Location
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								class NoitaLocation(Location):
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    game: str = "Noita"
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								class LocationData(NamedTuple):
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    id: int
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    flag: int = 0
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								    ltype: str = "Shop"
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								class LocationFlag(IntEnum):
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    none = 0
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    main_path = 1
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    side_path = 2
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    main_world = 3
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    parallel_worlds = 4
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								# Mapping of items in each region.
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								# Only the first Hidden Chest and Pedestal are mapped here, the others are created in Regions.
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								# ltype key: "Chest" = Hidden Chests, "Pedestal" = Pedestals, "Boss" = Boss, "Orb" = Orb.
							 | 
						
					
						
							
								
									
										
										
										
											2024-04-18 12:34:57 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								# 110000-110671
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								location_region_mapping: Dict[str, Dict[str, LocationData]] = {
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Coal Pits Holy Mountain": {
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Coal Pits Holy Mountain Shop Item 1":   LocationData(110000),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Coal Pits Holy Mountain Shop Item 2":   LocationData(110001),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Coal Pits Holy Mountain Shop Item 3":   LocationData(110002),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Coal Pits Holy Mountain Shop Item 4":   LocationData(110003),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Coal Pits Holy Mountain Shop Item 5":   LocationData(110004),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Coal Pits Holy Mountain Spell Refresh": LocationData(110005),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Snowy Depths Holy Mountain": {
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Snowy Depths Holy Mountain Shop Item 1":   LocationData(110006),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Snowy Depths Holy Mountain Shop Item 2":   LocationData(110007),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Snowy Depths Holy Mountain Shop Item 3":   LocationData(110008),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Snowy Depths Holy Mountain Shop Item 4":   LocationData(110009),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Snowy Depths Holy Mountain Shop Item 5":   LocationData(110010),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Snowy Depths Holy Mountain Spell Refresh": LocationData(110011),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Hiisi Base Holy Mountain": {
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Hiisi Base Holy Mountain Shop Item 1":   LocationData(110012),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Hiisi Base Holy Mountain Shop Item 2":   LocationData(110013),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Hiisi Base Holy Mountain Shop Item 3":   LocationData(110014),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Hiisi Base Holy Mountain Shop Item 4":   LocationData(110015),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Hiisi Base Holy Mountain Shop Item 5":   LocationData(110016),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Hiisi Base Holy Mountain Spell Refresh": LocationData(110017),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Underground Jungle Holy Mountain": {
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Underground Jungle Holy Mountain Shop Item 1":   LocationData(110018),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Underground Jungle Holy Mountain Shop Item 2":   LocationData(110019),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Underground Jungle Holy Mountain Shop Item 3":   LocationData(110020),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Underground Jungle Holy Mountain Shop Item 4":   LocationData(110021),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Underground Jungle Holy Mountain Shop Item 5":   LocationData(110022),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Underground Jungle Holy Mountain Spell Refresh": LocationData(110023),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Vault Holy Mountain": {
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Vault Holy Mountain Shop Item 1":   LocationData(110024),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Vault Holy Mountain Shop Item 2":   LocationData(110025),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Vault Holy Mountain Shop Item 3":   LocationData(110026),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Vault Holy Mountain Shop Item 4":   LocationData(110027),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Vault Holy Mountain Shop Item 5":   LocationData(110028),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Vault Holy Mountain Spell Refresh": LocationData(110029),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Temple of the Art Holy Mountain": {
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Temple of the Art Holy Mountain Shop Item 1":   LocationData(110030),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Temple of the Art Holy Mountain Shop Item 2":   LocationData(110031),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Temple of the Art Holy Mountain Shop Item 3":   LocationData(110032),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Temple of the Art Holy Mountain Shop Item 4":   LocationData(110033),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Temple of the Art Holy Mountain Shop Item 5":   LocationData(110034),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Temple of the Art Holy Mountain Spell Refresh": LocationData(110035),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Laboratory Holy Mountain": {
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Laboratory Holy Mountain Shop Item 1":   LocationData(110036),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Laboratory Holy Mountain Shop Item 2":   LocationData(110037),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Laboratory Holy Mountain Shop Item 3":   LocationData(110038),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Laboratory Holy Mountain Shop Item 4":   LocationData(110039),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Laboratory Holy Mountain Shop Item 5":   LocationData(110040),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Laboratory Holy Mountain Spell Refresh": LocationData(110041),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Secret Shop": {
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Secret Shop Item 1": LocationData(110042),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Secret Shop Item 2": LocationData(110043),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Secret Shop Item 3": LocationData(110044),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Secret Shop Item 4": LocationData(110045),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							
								
									
										
										
										
											2024-04-18 12:34:57 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								    "The Sky": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Kivi": LocationData(110670, LocationFlag.main_world, "Boss"),
							 | 
						
					
						
							
								
									
										
										
										
											2024-04-18 12:34:57 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Floating Island": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Floating Island Orb": LocationData(110658, LocationFlag.main_path, "Orb"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Pyramid": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Kolmisilmän Koipi": LocationData(110649, LocationFlag.main_world, "Boss"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Pyramid Orb":       LocationData(110659, LocationFlag.main_world, "Orb"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Sandcave Orb":      LocationData(110662, LocationFlag.main_world, "Orb"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Overgrown Cavern": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Overgrown Cavern Chest":    LocationData(110526, LocationFlag.main_world, "Chest"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Overgrown Cavern Pedestal": LocationData(110546, LocationFlag.main_world, "Pedestal"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Lake": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Syväolento": LocationData(110651, LocationFlag.main_world, "Boss"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Tapion vasalli": LocationData(110669, LocationFlag.main_world, "Boss"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Frozen Vault": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Frozen Vault Orb":      LocationData(110660, LocationFlag.main_world, "Orb"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Frozen Vault Chest":    LocationData(110566, LocationFlag.main_world, "Chest"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Frozen Vault Pedestal": LocationData(110586, LocationFlag.main_world, "Pedestal"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Mines": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Mines Chest":    LocationData(110046, LocationFlag.main_path, "Chest"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Mines Pedestal": LocationData(110066, LocationFlag.main_path, "Pedestal"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							
								
									
										
										
										
											2024-04-18 12:54:03 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								    # Collapsed Mines is a very small area, combining it with the Mines. Leaving this here as a reminder
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Ancient Laboratory": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Ylialkemisti": LocationData(110656, LocationFlag.side_path, "Boss"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Abyss Orb Room": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Sauvojen Tuntija": LocationData(110650, LocationFlag.side_path, "Boss"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Abyss Orb":        LocationData(110665, LocationFlag.main_path, "Orb"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Below Lava Lake": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Lava Lake Orb": LocationData(110661, LocationFlag.side_path, "Orb"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Coal Pits": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Coal Pits Chest":    LocationData(110126, LocationFlag.main_path, "Chest"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Coal Pits Pedestal": LocationData(110146, LocationFlag.main_path, "Pedestal"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Fungal Caverns": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Fungal Caverns Chest":    LocationData(110166, LocationFlag.side_path, "Chest"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Fungal Caverns Pedestal": LocationData(110186, LocationFlag.side_path, "Pedestal"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Snowy Depths": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Snowy Depths Chest":    LocationData(110206, LocationFlag.main_path, "Chest"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Snowy Depths Pedestal": LocationData(110226, LocationFlag.main_path, "Pedestal"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Magical Temple": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Magical Temple Orb":  LocationData(110663, LocationFlag.side_path, "Orb"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Hiisi Base": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Hiisi Base Chest":    LocationData(110246, LocationFlag.main_path, "Chest"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Hiisi Base Pedestal": LocationData(110266, LocationFlag.main_path, "Pedestal"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Underground Jungle": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Suomuhauki":                  LocationData(110648, LocationFlag.main_path, "Boss"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Underground Jungle Chest":    LocationData(110286, LocationFlag.main_path, "Chest"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Underground Jungle Pedestal": LocationData(110306, LocationFlag.main_path, "Pedestal"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Lukki Lair": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Lukki Lair Orb":      LocationData(110664, LocationFlag.side_path, "Orb"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Lukki Lair Chest":    LocationData(110326, LocationFlag.side_path, "Chest"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Lukki Lair Pedestal": LocationData(110346, LocationFlag.side_path, "Pedestal"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "The Vault": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "The Vault Chest":    LocationData(110366, LocationFlag.main_path, "Chest"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "The Vault Pedestal": LocationData(110386, LocationFlag.main_path, "Pedestal"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Temple of the Art": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Gate Guardian":              LocationData(110652, LocationFlag.main_path, "Boss"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Temple of the Art Chest":    LocationData(110406, LocationFlag.main_path, "Chest"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Temple of the Art Pedestal": LocationData(110426, LocationFlag.main_path, "Pedestal"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "The Tower": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "The Tower Chest":    LocationData(110606, LocationFlag.main_world, "Chest"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "The Tower Pedestal": LocationData(110626, LocationFlag.main_world, "Pedestal"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							
								
									
										
										
										
											2023-06-05 13:32:33 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								    "Wizards' Den": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Mestarien Mestari":     LocationData(110655, LocationFlag.main_world, "Boss"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Wizards' Den Orb":      LocationData(110668, LocationFlag.main_world, "Orb"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Wizards' Den Chest":    LocationData(110446, LocationFlag.main_world, "Chest"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Wizards' Den Pedestal": LocationData(110466, LocationFlag.main_world, "Pedestal"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Powerplant": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Kolmisilmän silmä":    LocationData(110657, LocationFlag.main_world, "Boss"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Power Plant Chest":    LocationData(110486, LocationFlag.main_world, "Chest"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Power Plant Pedestal": LocationData(110506, LocationFlag.main_world, "Pedestal"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Snow Chasm": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Unohdettu":      LocationData(110653, LocationFlag.main_world, "Boss"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Snow Chasm Orb": LocationData(110667, LocationFlag.main_world, "Orb"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							
								
									
										
										
										
											2024-04-18 12:54:03 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								    "Meat Realm": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Meat Realm Chest": LocationData(110086, LocationFlag.main_world, "Chest"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Meat Realm Pedestal": LocationData(110106, LocationFlag.main_world, "Pedestal"),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        "Limatoukka": LocationData(110647, LocationFlag.main_world, "Boss"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							
								
									
										
										
										
											2024-04-18 12:34:57 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								    "West Meat Realm": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Kolmisilmän sydän": LocationData(110671, LocationFlag.main_world, "Boss"),
							 | 
						
					
						
							
								
									
										
										
										
											2024-04-18 12:34:57 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "The Laboratory": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Kolmisilmä": LocationData(110646, LocationFlag.main_path, "Boss"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "Friend Cave": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "Toveri": LocationData(110654, LocationFlag.main_world, "Boss"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    "The Work (Hell)": {
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        "The Work (Hell) Orb": LocationData(110666, LocationFlag.main_world, "Orb"),
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    },
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								}
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							
								
									
										
										
										
											2024-01-19 15:31:45 -05:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								def make_location_range(location_name: str, base_id: int, amt: int) -> Dict[str, int]:
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    if amt == 1:
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        return {location_name: base_id}
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    return {f"{location_name} {i+1}": base_id + i for i in range(amt)}
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								location_name_groups: Dict[str, Set[str]] = {"Shop": set(), "Orb": set(), "Boss": set(), "Chest": set(),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								                                             "Pedestal": set()}
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								location_name_to_id: Dict[str, int] = {}
							 | 
						
					
						
							
								
									
										
										
										
											2023-07-18 22:51:01 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								for region_name, location_group in location_region_mapping.items():
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    location_name_groups[region_name] = set()
							 | 
						
					
						
							
								
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    for locname, locinfo in location_group.items():
							 | 
						
					
						
							
								
									
										
										
										
											2024-01-19 15:31:45 -05:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        # Iterating the hidden chest and pedestal locations here to avoid clutter above
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        amount = 20 if locinfo.ltype in ["Chest", "Pedestal"] else 1
							 | 
						
					
						
							
								
									
										
										
										
											2024-01-19 15:31:45 -05:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        entries = make_location_range(locname, locinfo.id, amount)
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        location_name_to_id.update(entries)
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								        location_name_groups[locinfo.ltype].update(entries.keys())
							 | 
						
					
						
							
								
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								        location_name_groups[region_name].update(entries.keys())
							 | 
						
					
						
							
								
									
										
										
										
											2024-01-19 15:31:45 -05:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								shop_locations = {name for name in location_name_to_id.keys() if "Shop Item" in name}
							 |