import typing from BaseClasses import Location from .Names import LocationName, RegionName, ItemName class KH2Location(Location): game: str = "Kingdom Hearts 2" class LocationData(typing.NamedTuple): code: typing.Optional[int] locid: int yml: str charName: str = "Sora" charNumber: int = 1 # data's addrcheck sys3 addr obtained roomid bit index is eventid LoD_Checks = { LocationName.BambooGroveDarkShard: LocationData(0x130000, 245, "Chest"), LocationName.BambooGroveEther: LocationData(0x130001, 497, "Chest"), LocationName.BambooGroveMythrilShard: LocationData(0x130002, 498, "Chest"), LocationName.EncampmentAreaMap: LocationData(0x130003, 350, "Chest"), LocationName.Mission3: LocationData(0x130004, 417, "Chest"), LocationName.CheckpointHiPotion: LocationData(0x130005, 21, "Chest"), LocationName.CheckpointMythrilShard: LocationData(0x130006, 121, "Chest"), LocationName.MountainTrailLightningShard: LocationData(0x130007, 22, "Chest"), LocationName.MountainTrailRecoveryRecipe: LocationData(0x130008, 23, "Chest"), LocationName.MountainTrailEther: LocationData(0x130009, 122, "Chest"), LocationName.MountainTrailMythrilShard: LocationData(0x13000A, 123, "Chest"), LocationName.VillageCaveAreaMap: LocationData(0x13000B, 495, "Chest"), LocationName.VillageCaveDarkShard: LocationData(0x13000C, 125, "Chest"), LocationName.VillageCaveAPBoost: LocationData(0x13000D, 124, "Chest"), LocationName.VillageCaveBonus: LocationData(0x13000E, 43, "Get Bonus"), LocationName.RidgeFrostShard: LocationData(0x13000F, 24, "Chest"), LocationName.RidgeAPBoost: LocationData(0x130010, 126, "Chest"), LocationName.ShanYu: LocationData(0x130011, 9, "Double Get Bonus"), LocationName.ShanYuGetBonus: LocationData(0x130012, 9, "Second Get Bonus"), LocationName.HiddenDragon: LocationData(0x130013, 257, "Chest"), } LoD2_Checks = { LocationName.ThroneRoomTornPages: LocationData(0x130014, 25, "Chest"), LocationName.ThroneRoomPalaceMap: LocationData(0x130015, 127, "Chest"), LocationName.ThroneRoomAPBoost: LocationData(0x130016, 26, "Chest"), LocationName.ThroneRoomQueenRecipe: LocationData(0x130017, 27, "Chest"), LocationName.ThroneRoomAPBoost2: LocationData(0x130018, 128, "Chest"), LocationName.ThroneRoomOgreShield: LocationData(0x130019, 129, "Chest"), LocationName.ThroneRoomMythrilCrystal: LocationData(0x13001A, 130, "Chest"), LocationName.ThroneRoomOrichalcum: LocationData(0x13001B, 131, "Chest"), LocationName.StormRider: LocationData(0x13001C, 10, "Get Bonus"), LocationName.XigbarDataDefenseBoost: LocationData(0x13001D, 555, "Chest"), } AG_Checks = { LocationName.AgrabahMap: LocationData(0x13001E, 353, "Chest"), LocationName.AgrabahDarkShard: LocationData(0x13001F, 28, "Chest"), LocationName.AgrabahMythrilShard: LocationData(0x130020, 29, "Chest"), LocationName.AgrabahHiPotion: LocationData(0x130021, 30, "Chest"), LocationName.AgrabahAPBoost: LocationData(0x130022, 132, "Chest"), LocationName.AgrabahMythrilStone: LocationData(0x130023, 133, "Chest"), LocationName.AgrabahMythrilShard2: LocationData(0x130024, 249, "Chest"), LocationName.AgrabahSerenityShard: LocationData(0x130025, 501, "Chest"), LocationName.BazaarMythrilGem: LocationData(0x130026, 31, "Chest"), LocationName.BazaarPowerShard: LocationData(0x130027, 32, "Chest"), LocationName.BazaarHiPotion: LocationData(0x130028, 33, "Chest"), LocationName.BazaarAPBoost: LocationData(0x130029, 134, "Chest"), LocationName.BazaarMythrilShard: LocationData(0x13002A, 135, "Chest"), LocationName.PalaceWallsSkillRing: LocationData(0x13002B, 136, "Chest"), LocationName.PalaceWallsMythrilStone: LocationData(0x13002C, 520, "Chest"), LocationName.CaveEntrancePowerStone: LocationData(0x13002D, 250, "Chest"), LocationName.CaveEntranceMythrilShard: LocationData(0x13002E, 251, "Chest"), LocationName.ValleyofStoneMythrilStone: LocationData(0x13002F, 35, "Chest"), LocationName.ValleyofStoneAPBoost: LocationData(0x130030, 36, "Chest"), LocationName.ValleyofStoneMythrilShard: LocationData(0x130031, 137, "Chest"), LocationName.ValleyofStoneHiPotion: LocationData(0x130032, 138, "Chest"), LocationName.AbuEscort: LocationData(0x130033, 42, "Get Bonus"), LocationName.ChasmofChallengesCaveofWondersMap: LocationData(0x130034, 487, "Chest"), LocationName.ChasmofChallengesAPBoost: LocationData(0x130035, 37, "Chest"), LocationName.TreasureRoom: LocationData(0x130036, 46, "Get Bonus"), LocationName.TreasureRoomAPBoost: LocationData(0x130037, 502, "Chest"), LocationName.TreasureRoomSerenityGem: LocationData(0x130038, 503, "Chest"), LocationName.ElementalLords: LocationData(0x130039, 37, "Get Bonus"), LocationName.LampCharm: LocationData(0x13003A, 300, "Chest"), } AG2_Checks = { LocationName.RuinedChamberTornPages: LocationData(0x13003B, 34, "Chest"), LocationName.RuinedChamberRuinsMap: LocationData(0x13003C, 486, "Chest"), LocationName.GenieJafar: LocationData(0x13003D, 15, "Get Bonus"), LocationName.WishingLamp: LocationData(0x13003E, 303, "Chest"), LocationName.LexaeusBonus: LocationData(0x13003F, 65, "Get Bonus"), LocationName.LexaeusASStrengthBeyondStrength: LocationData(0x130040, 545, "Chest"), LocationName.LexaeusDataLostIllusion: LocationData(0x130041, 550, "Chest"), } DC_Checks = { LocationName.DCCourtyardMythrilShard: LocationData(0x130042, 16, "Chest"), LocationName.DCCourtyardStarRecipe: LocationData(0x130043, 17, "Chest"), LocationName.DCCourtyardAPBoost: LocationData(0x130044, 18, "Chest"), LocationName.DCCourtyardMythrilStone: LocationData(0x130045, 92, "Chest"), LocationName.DCCourtyardBlazingStone: LocationData(0x130046, 93, "Chest"), LocationName.DCCourtyardBlazingShard: LocationData(0x130047, 247, "Chest"), LocationName.DCCourtyardMythrilShard2: LocationData(0x130048, 248, "Chest"), LocationName.LibraryTornPages: LocationData(0x130049, 91, "Chest"), LocationName.DisneyCastleMap: LocationData(0x13004A, 332, "Chest"), LocationName.MinnieEscort: LocationData(0x13004B, 38, "Double Get Bonus"), LocationName.MinnieEscortGetBonus: LocationData(0x13004C, 38, "Second Get Bonus"), } TR_Checks = { LocationName.CornerstoneHillMap: LocationData(0x13004D, 79, "Chest"), LocationName.CornerstoneHillFrostShard: LocationData(0x13004E, 12, "Chest"), LocationName.PierMythrilShard: LocationData(0x13004F, 81, "Chest"), LocationName.PierHiPotion: LocationData(0x130050, 82, "Chest"), LocationName.WaterwayMythrilStone: LocationData(0x130051, 83, "Chest"), LocationName.WaterwayAPBoost: LocationData(0x130052, 84, "Chest"), LocationName.WaterwayFrostStone: LocationData(0x130053, 85, "Chest"), LocationName.WindowofTimeMap: LocationData(0x130054, 368, "Chest"), LocationName.BoatPete: LocationData(0x130055, 16, "Get Bonus"), LocationName.FuturePete: LocationData(0x130056, 17, "Double Get Bonus"), LocationName.FuturePeteGetBonus: LocationData(0x130057, 17, "Second Get Bonus"), LocationName.Monochrome: LocationData(0x130058, 261, "Chest"), LocationName.WisdomForm: LocationData(0x130059, 262, "Chest"), LocationName.MarluxiaGetBonus: LocationData(0x13005A, 67, "Get Bonus"), LocationName.MarluxiaASEternalBlossom: LocationData(0x13005B, 548, "Chest"), LocationName.MarluxiaDataLostIllusion: LocationData(0x13005C, 553, "Chest"), LocationName.LingeringWillBonus: LocationData(0x13005D, 70, "Get Bonus"), LocationName.LingeringWillProofofConnection: LocationData(0x13005E, 587, "Chest"), LocationName.LingeringWillManifestIllusion: LocationData(0x13005F, 591, "Chest"), } # the mismatch might be here HundredAcre1_Checks = { LocationName.PoohsHouse100AcreWoodMap: LocationData(0x130060, 313, "Chest"), LocationName.PoohsHouseAPBoost: LocationData(0x130061, 97, "Chest"), LocationName.PoohsHouseMythrilStone: LocationData(0x130062, 98, "Chest"), } HundredAcre2_Checks = { LocationName.PigletsHouseDefenseBoost: LocationData(0x130063, 105, "Chest"), LocationName.PigletsHouseAPBoost: LocationData(0x130064, 103, "Chest"), LocationName.PigletsHouseMythrilGem: LocationData(0x130065, 104, "Chest"), } HundredAcre3_Checks = { LocationName.RabbitsHouseDrawRing: LocationData(0x130066, 314, "Chest"), LocationName.RabbitsHouseMythrilCrystal: LocationData(0x130067, 100, "Chest"), LocationName.RabbitsHouseAPBoost: LocationData(0x130068, 101, "Chest"), } HundredAcre4_Checks = { LocationName.KangasHouseMagicBoost: LocationData(0x130069, 108, "Chest"), LocationName.KangasHouseAPBoost: LocationData(0x13006A, 106, "Chest"), LocationName.KangasHouseOrichalcum: LocationData(0x13006B, 107, "Chest"), } HundredAcre5_Checks = { LocationName.SpookyCaveMythrilGem: LocationData(0x13006C, 110, "Chest"), LocationName.SpookyCaveAPBoost: LocationData(0x13006D, 111, "Chest"), LocationName.SpookyCaveOrichalcum: LocationData(0x13006E, 112, "Chest"), LocationName.SpookyCaveGuardRecipe: LocationData(0x13006F, 113, "Chest"), LocationName.SpookyCaveMythrilCrystal: LocationData(0x130070, 115, "Chest"), LocationName.SpookyCaveAPBoost2: LocationData(0x130071, 116, "Chest"), LocationName.SweetMemories: LocationData(0x130072, 284, "Chest"), LocationName.SpookyCaveMap: LocationData(0x130073, 485, "Chest"), } HundredAcre6_Checks = { LocationName.StarryHillCosmicRing: LocationData(0x130074, 312, "Chest"), LocationName.StarryHillStyleRecipe: LocationData(0x130075, 94, "Chest"), LocationName.StarryHillCureElement: LocationData(0x130076, 285, "Chest"), LocationName.StarryHillOrichalcumPlus: LocationData(0x130077, 539, "Chest"), } Oc_Checks = { LocationName.PassageMythrilShard: LocationData(0x130078, 7, "Chest"), LocationName.PassageMythrilStone: LocationData(0x130079, 8, "Chest"), LocationName.PassageEther: LocationData(0x13007A, 144, "Chest"), LocationName.PassageAPBoost: LocationData(0x13007B, 145, "Chest"), LocationName.PassageHiPotion: LocationData(0x13007C, 146, "Chest"), LocationName.InnerChamberUnderworldMap: LocationData(0x13007D, 2, "Chest"), LocationName.InnerChamberMythrilShard: LocationData(0x13007E, 243, "Chest"), LocationName.Cerberus: LocationData(0x13007F, 5, "Get Bonus"), LocationName.ColiseumMap: LocationData(0x130080, 338, "Chest"), LocationName.Urns: LocationData(0x130081, 57, "Get Bonus"), LocationName.UnderworldEntrancePowerBoost: LocationData(0x130082, 242, "Chest"), LocationName.CavernsEntranceLucidShard: LocationData(0x130083, 3, "Chest"), LocationName.CavernsEntranceAPBoost: LocationData(0x130084, 11, "Chest"), LocationName.CavernsEntranceMythrilShard: LocationData(0x130085, 504, "Chest"), LocationName.TheLostRoadBrightShard: LocationData(0x130086, 9, "Chest"), LocationName.TheLostRoadEther: LocationData(0x130087, 10, "Chest"), LocationName.TheLostRoadMythrilShard: LocationData(0x130088, 148, "Chest"), LocationName.TheLostRoadMythrilStone: LocationData(0x130089, 149, "Chest"), LocationName.AtriumLucidStone: LocationData(0x13008A, 150, "Chest"), LocationName.AtriumAPBoost: LocationData(0x13008B, 151, "Chest"), LocationName.DemyxOC: LocationData(0x13008C, 58, "Get Bonus"), LocationName.SecretAnsemReport5: LocationData(0x13008D, 529, "Chest"), LocationName.OlympusStone: LocationData(0x13008E, 293, "Chest"), LocationName.TheLockCavernsMap: LocationData(0x13008F, 244, "Chest"), LocationName.TheLockMythrilShard: LocationData(0x130090, 5, "Chest"), LocationName.TheLockAPBoost: LocationData(0x130091, 142, "Chest"), LocationName.PeteOC: LocationData(0x130092, 6, "Get Bonus"), LocationName.Hydra: LocationData(0x130093, 7, "Double Get Bonus"), LocationName.HydraGetBonus: LocationData(0x130094, 7, "Second Get Bonus"), LocationName.HerosCrest: LocationData(0x130095, 260, "Chest"), } Oc2_Checks = { LocationName.AuronsStatue: LocationData(0x130096, 295, "Chest"), LocationName.Hades: LocationData(0x130097, 8, "Double Get Bonus"), LocationName.HadesGetBonus: LocationData(0x130098, 8, "Second Get Bonus"), LocationName.GuardianSoul: LocationData(0x130099, 272, "Chest"), LocationName.ZexionBonus: LocationData(0x13009A, 66, "Get Bonus"), LocationName.ZexionASBookofShadows: LocationData(0x13009B, 546, "Chest"), LocationName.ZexionDataLostIllusion: LocationData(0x13009C, 551, "Chest"), } Oc2Cups = { LocationName.ProtectBeltPainandPanicCup: LocationData(0x13009D, 513, "Chest"), LocationName.SerenityGemPainandPanicCup: LocationData(0x13009E, 540, "Chest"), LocationName.RisingDragonCerberusCup: LocationData(0x13009F, 515, "Chest"), LocationName.SerenityCrystalCerberusCup: LocationData(0x1300A0, 542, "Chest"), LocationName.GenjiShieldTitanCup: LocationData(0x1300A1, 514, "Chest"), LocationName.SkillfulRingTitanCup: LocationData(0x1300A2, 541, "Chest"), LocationName.FatalCrestGoddessofFateCup: LocationData(0x1300A3, 516, "Chest"), LocationName.OrichalcumPlusGoddessofFateCup: LocationData(0x1300A4, 517, "Chest"), LocationName.HadesCupTrophyParadoxCups: LocationData(0x1300A5, 518, "Chest"), } BC_Checks = { LocationName.BCCourtyardAPBoost: LocationData(0x1300A6, 39, "Chest"), LocationName.BCCourtyardHiPotion: LocationData(0x1300A7, 40, "Chest"), LocationName.BCCourtyardMythrilShard: LocationData(0x1300A8, 505, "Chest"), LocationName.BellesRoomCastleMap: LocationData(0x1300A9, 46, "Chest"), LocationName.BellesRoomMegaRecipe: LocationData(0x1300AA, 240, "Chest"), LocationName.TheEastWingMythrilShard: LocationData(0x1300AB, 63, "Chest"), LocationName.TheEastWingTent: LocationData(0x1300AC, 155, "Chest"), LocationName.TheWestHallHiPotion: LocationData(0x1300AD, 41, "Chest"), LocationName.TheWestHallPowerShard: LocationData(0x1300AE, 207, "Chest"), LocationName.TheWestHallAPBoostPostDungeon: LocationData(0x1300AF, 158, "Chest"), LocationName.TheWestHallBrightStone: LocationData(0x1300B0, 159, "Chest"), LocationName.TheWestHallMythrilShard: LocationData(0x1300B1, 206, "Chest"), LocationName.Thresholder: LocationData(0x1300B2, 2, "Get Bonus"), LocationName.DungeonBasementMap: LocationData(0x1300B3, 239, "Chest"), LocationName.DungeonAPBoost: LocationData(0x1300B4, 43, "Chest"), LocationName.SecretPassageMythrilShard: LocationData(0x1300B5, 44, "Chest"), LocationName.SecretPassageHiPotion: LocationData(0x1300B6, 168, "Chest"), LocationName.SecretPassageLucidShard: LocationData(0x1300B7, 45, "Chest"), LocationName.TheWestHallMythrilShard2: LocationData(0x1300B8, 208, "Chest"), LocationName.TheWestWingMythrilShard: LocationData(0x1300B9, 42, "Chest"), LocationName.TheWestWingTent: LocationData(0x1300BA, 164, "Chest"), LocationName.Beast: LocationData(0x1300BB, 12, "Get Bonus"), LocationName.TheBeastsRoomBlazingShard: LocationData(0x1300BC, 241, "Chest"), LocationName.DarkThorn: LocationData(0x1300BD, 3, "Double Get Bonus"), LocationName.DarkThornGetBonus: LocationData(0x1300BE, 3, "Second Get Bonus"), LocationName.DarkThornCureElement: LocationData(0x1300BF, 299, "Chest"), } BC2_Checks = { LocationName.RumblingRose: LocationData(0x1300C0, 270, "Chest"), LocationName.CastleWallsMap: LocationData(0x1300C1, 325, "Chest"), LocationName.Xaldin: LocationData(0x1300C2, 4, "Double Get Bonus"), LocationName.XaldinGetBonus: LocationData(0x1300C3, 4, "Second Get Bonus"), LocationName.SecretAnsemReport4: LocationData(0x1300C4, 528, "Chest"), LocationName.XaldinDataDefenseBoost: LocationData(0x1300C5, 559, "Chest"), } SP_Checks = { LocationName.PitCellAreaMap: LocationData(0x1300C6, 316, "Chest"), LocationName.PitCellMythrilCrystal: LocationData(0x1300C7, 64, "Chest"), LocationName.CanyonDarkCrystal: LocationData(0x1300C8, 65, "Chest"), LocationName.CanyonMythrilStone: LocationData(0x1300C9, 171, "Chest"), LocationName.CanyonMythrilGem: LocationData(0x1300CA, 253, "Chest"), LocationName.CanyonFrostCrystal: LocationData(0x1300CB, 521, "Chest"), LocationName.Screens: LocationData(0x1300CC, 45, "Get Bonus"), LocationName.HallwayPowerCrystal: LocationData(0x1300CD, 49, "Chest"), LocationName.HallwayAPBoost: LocationData(0x1300CE, 50, "Chest"), LocationName.CommunicationsRoomIOTowerMap: LocationData(0x1300CF, 255, "Chest"), LocationName.CommunicationsRoomGaiaBelt: LocationData(0x1300D0, 499, "Chest"), LocationName.HostileProgram: LocationData(0x1300D1, 31, "Double Get Bonus"), LocationName.HostileProgramGetBonus: LocationData(0x1300D2, 31, "Second Get Bonus"), LocationName.PhotonDebugger: LocationData(0x1300D3, 267, "Chest"), } SP2_Checks = { LocationName.SolarSailer: LocationData(0x1300D4, 61, "Get Bonus"), LocationName.CentralComputerCoreAPBoost: LocationData(0x1300D5, 177, "Chest"), LocationName.CentralComputerCoreOrichalcumPlus: LocationData(0x1300D6, 178, "Chest"), LocationName.CentralComputerCoreCosmicArts: LocationData(0x1300D7, 51, "Chest"), LocationName.CentralComputerCoreMap: LocationData(0x1300D8, 488, "Chest"), LocationName.MCP: LocationData(0x1300D9, 32, "Double Get Bonus"), LocationName.MCPGetBonus: LocationData(0x1300DA, 32, "Second Get Bonus"), LocationName.LarxeneBonus: LocationData(0x1300DB, 68, "Get Bonus"), LocationName.LarxeneASCloakedThunder: LocationData(0x1300DC, 547, "Chest"), LocationName.LarxeneDataLostIllusion: LocationData(0x1300DD, 552, "Chest"), } HT_Checks = { LocationName.GraveyardMythrilShard: LocationData(0x1300DE, 53, "Chest"), LocationName.GraveyardSerenityGem: LocationData(0x1300DF, 212, "Chest"), LocationName.FinklesteinsLabHalloweenTownMap: LocationData(0x1300E0, 211, "Chest"), LocationName.TownSquareMythrilStone: LocationData(0x1300E1, 209, "Chest"), LocationName.TownSquareEnergyShard: LocationData(0x1300E2, 210, "Chest"), LocationName.HinterlandsLightningShard: LocationData(0x1300E3, 54, "Chest"), LocationName.HinterlandsMythrilStone: LocationData(0x1300E4, 213, "Chest"), LocationName.HinterlandsAPBoost: LocationData(0x1300E5, 214, "Chest"), LocationName.CandyCaneLaneMegaPotion: LocationData(0x1300E6, 55, "Chest"), LocationName.CandyCaneLaneMythrilGem: LocationData(0x1300E7, 56, "Chest"), LocationName.CandyCaneLaneLightningStone: LocationData(0x1300E8, 216, "Chest"), LocationName.CandyCaneLaneMythrilStone: LocationData(0x1300E9, 217, "Chest"), LocationName.SantasHouseChristmasTownMap: LocationData(0x1300EA, 57, "Chest"), LocationName.SantasHouseAPBoost: LocationData(0x1300EB, 58, "Chest"), LocationName.PrisonKeeper: LocationData(0x1300EC, 18, "Get Bonus"), LocationName.OogieBoogie: LocationData(0x1300ED, 19, "Get Bonus"), LocationName.OogieBoogieMagnetElement: LocationData(0x1300EE, 301, "Chest"), } HT2_Checks = { LocationName.Lock: LocationData(0x1300EF, 40, "Get Bonus"), LocationName.Present: LocationData(0x1300F0, 297, "Chest"), LocationName.DecoyPresents: LocationData(0x1300F1, 298, "Chest"), LocationName.Experiment: LocationData(0x1300F2, 20, "Get Bonus"), LocationName.DecisivePumpkin: LocationData(0x1300F3, 275, "Chest"), LocationName.VexenBonus: LocationData(0x1300F4, 64, "Get Bonus"), LocationName.VexenASRoadtoDiscovery: LocationData(0x1300F5, 544, "Chest"), LocationName.VexenDataLostIllusion: LocationData(0x1300F6, 549, "Chest"), } PR_Checks = { LocationName.RampartNavalMap: LocationData(0x1300F7, 70, "Chest"), LocationName.RampartMythrilStone: LocationData(0x1300F8, 219, "Chest"), LocationName.RampartDarkShard: LocationData(0x1300F9, 220, "Chest"), LocationName.TownDarkStone: LocationData(0x1300FA, 71, "Chest"), LocationName.TownAPBoost: LocationData(0x1300FB, 72, "Chest"), LocationName.TownMythrilShard: LocationData(0x1300FC, 73, "Chest"), LocationName.TownMythrilGem: LocationData(0x1300FD, 221, "Chest"), LocationName.CaveMouthBrightShard: LocationData(0x1300FE, 74, "Chest"), LocationName.CaveMouthMythrilShard: LocationData(0x1300FF, 223, "Chest"), LocationName.IsladeMuertaMap: LocationData(0x130100, 329, "Chest"), LocationName.BoatFight: LocationData(0x130101, 62, "Get Bonus"), LocationName.InterceptorBarrels: LocationData(0x130102, 39, "Get Bonus"), LocationName.PowderStoreAPBoost1: LocationData(0x130103, 369, "Chest"), LocationName.PowderStoreAPBoost2: LocationData(0x130104, 370, "Chest"), LocationName.MoonlightNookMythrilShard: LocationData(0x130105, 75, "Chest"), LocationName.MoonlightNookSerenityGem: LocationData(0x130106, 224, "Chest"), LocationName.MoonlightNookPowerStone: LocationData(0x130107, 371, "Chest"), LocationName.Barbossa: LocationData(0x130108, 21, "Double Get Bonus"), LocationName.BarbossaGetBonus: LocationData(0x130109, 21, "Second Get Bonus"), LocationName.FollowtheWind: LocationData(0x13010A, 263, "Chest"), } PR2_Checks = { LocationName.GrimReaper1: LocationData(0x13010B, 59, "Get Bonus"), LocationName.InterceptorsHoldFeatherCharm: LocationData(0x13010C, 252, "Chest"), LocationName.SeadriftKeepAPBoost: LocationData(0x13010D, 76, "Chest"), LocationName.SeadriftKeepOrichalcum: LocationData(0x13010E, 225, "Chest"), LocationName.SeadriftKeepMeteorStaff: LocationData(0x13010F, 372, "Chest"), LocationName.SeadriftRowSerenityGem: LocationData(0x130110, 77, "Chest"), LocationName.SeadriftRowKingRecipe: LocationData(0x130111, 78, "Chest"), LocationName.SeadriftRowMythrilCrystal: LocationData(0x130112, 373, "Chest"), LocationName.SeadriftRowCursedMedallion: LocationData(0x130113, 296, "Chest"), LocationName.SeadriftRowShipGraveyardMap: LocationData(0x130114, 331, "Chest"), LocationName.GrimReaper2: LocationData(0x130115, 22, "Get Bonus"), LocationName.SecretAnsemReport6: LocationData(0x130116, 530, "Chest"), LocationName.LuxordDataAPBoost: LocationData(0x130117, 557, "Chest"), } HB_Checks = { LocationName.MarketplaceMap: LocationData(0x130118, 362, "Chest"), LocationName.BoroughDriveRecovery: LocationData(0x130119, 194, "Chest"), LocationName.BoroughAPBoost: LocationData(0x13011A, 195, "Chest"), LocationName.BoroughHiPotion: LocationData(0x13011B, 196, "Chest"), LocationName.BoroughMythrilShard: LocationData(0x13011C, 305, "Chest"), LocationName.BoroughDarkShard: LocationData(0x13011D, 506, "Chest"), LocationName.MerlinsHouseMembershipCard: LocationData(0x13011E, 256, "Chest"), LocationName.MerlinsHouseBlizzardElement: LocationData(0x13011F, 292, "Chest"), LocationName.Bailey: LocationData(0x130120, 47, "Get Bonus"), LocationName.BaileySecretAnsemReport7: LocationData(0x130121, 531, "Chest"), LocationName.BaseballCharm: LocationData(0x130122, 258, "Chest"), } HB2_Checks = { LocationName.PosternCastlePerimeterMap: LocationData(0x130123, 310, "Chest"), LocationName.PosternMythrilGem: LocationData(0x130124, 189, "Chest"), LocationName.PosternAPBoost: LocationData(0x130125, 190, "Chest"), LocationName.CorridorsMythrilStone: LocationData(0x130126, 200, "Chest"), LocationName.CorridorsMythrilCrystal: LocationData(0x130127, 201, "Chest"), LocationName.CorridorsDarkCrystal: LocationData(0x130128, 202, "Chest"), LocationName.CorridorsAPBoost: LocationData(0x130129, 307, "Chest"), LocationName.AnsemsStudyMasterForm: LocationData(0x13012A, 276, "Chest"), LocationName.AnsemsStudySleepingLion: LocationData(0x13012B, 266, "Chest"), LocationName.AnsemsStudySkillRecipe: LocationData(0x13012C, 184, "Chest"), LocationName.AnsemsStudyUkuleleCharm: LocationData(0x13012D, 183, "Chest"), LocationName.RestorationSiteMoonRecipe: LocationData(0x13012E, 309, "Chest"), LocationName.RestorationSiteAPBoost: LocationData(0x13012F, 507, "Chest"), LocationName.DemyxHB: LocationData(0x130130, 28, "Double Get Bonus"), LocationName.DemyxHBGetBonus: LocationData(0x130131, 28, "Second Get Bonus"), LocationName.FFFightsCureElement: LocationData(0x130132, 361, "Chest"), LocationName.CrystalFissureTornPages: LocationData(0x130133, 179, "Chest"), LocationName.CrystalFissureTheGreatMawMap: LocationData(0x130134, 489, "Chest"), LocationName.CrystalFissureEnergyCrystal: LocationData(0x130135, 180, "Chest"), LocationName.CrystalFissureAPBoost: LocationData(0x130136, 181, "Chest"), LocationName.ThousandHeartless: LocationData(0x130137, 60, "Get Bonus"), LocationName.ThousandHeartlessSecretAnsemReport1: LocationData(0x130138, 525, "Chest"), LocationName.ThousandHeartlessIceCream: LocationData(0x130139, 269, "Chest"), LocationName.ThousandHeartlessPicture: LocationData(0x13013A, 511, "Chest"), LocationName.PosternGullWing: LocationData(0x13013B, 491, "Chest"), LocationName.HeartlessManufactoryCosmicChain: LocationData(0x13013C, 311, "Chest"), LocationName.SephirothBonus: LocationData(0x13013D, 35, "Get Bonus"), LocationName.SephirothFenrir: LocationData(0x13013E, 282, "Chest"), LocationName.WinnersProof: LocationData(0x13013F, 588, "Chest"), LocationName.ProofofPeace: LocationData(0x130140, 589, "Chest"), LocationName.DemyxDataAPBoost: LocationData(0x130141, 560, "Chest"), LocationName.CoRDepthsAPBoost: LocationData(0x130142, 562, "Chest"), LocationName.CoRDepthsPowerCrystal: LocationData(0x130143, 563, "Chest"), LocationName.CoRDepthsFrostCrystal: LocationData(0x130144, 564, "Chest"), LocationName.CoRDepthsManifestIllusion: LocationData(0x130145, 565, "Chest"), LocationName.CoRDepthsAPBoost2: LocationData(0x130146, 566, "Chest"), LocationName.CoRMineshaftLowerLevelDepthsofRemembranceMap: LocationData(0x130147, 580, "Chest"), LocationName.CoRMineshaftLowerLevelAPBoost: LocationData(0x130148, 578, "Chest"), } CoR_Checks = { LocationName.CoRDepthsUpperLevelRemembranceGem: LocationData(0x130149, 567, "Chest"), LocationName.CoRMiningAreaSerenityGem: LocationData(0x13014A, 568, "Chest"), LocationName.CoRMiningAreaAPBoost: LocationData(0x13014B, 569, "Chest"), LocationName.CoRMiningAreaSerenityCrystal: LocationData(0x13014C, 570, "Chest"), LocationName.CoRMiningAreaManifestIllusion: LocationData(0x13014D, 571, "Chest"), LocationName.CoRMiningAreaSerenityGem2: LocationData(0x13014E, 572, "Chest"), LocationName.CoRMiningAreaDarkRemembranceMap: LocationData(0x13014F, 573, "Chest"), LocationName.CoRMineshaftMidLevelPowerBoost: LocationData(0x130150, 581, "Chest"), LocationName.CoREngineChamberSerenityCrystal: LocationData(0x130151, 574, "Chest"), LocationName.CoREngineChamberRemembranceCrystal: LocationData(0x130152, 575, "Chest"), LocationName.CoREngineChamberAPBoost: LocationData(0x130153, 576, "Chest"), LocationName.CoREngineChamberManifestIllusion: LocationData(0x130154, 577, "Chest"), LocationName.CoRMineshaftUpperLevelMagicBoost: LocationData(0x130155, 582, "Chest"), LocationName.CoRMineshaftUpperLevelAPBoost: LocationData(0x130156, 579, "Chest"), LocationName.TransporttoRemembrance: LocationData(0x130157, 72, "Get Bonus"), } PL_Checks = { LocationName.GorgeSavannahMap: LocationData(0x130158, 492, "Chest"), LocationName.GorgeDarkGem: LocationData(0x130159, 404, "Chest"), LocationName.GorgeMythrilStone: LocationData(0x13015A, 405, "Chest"), LocationName.ElephantGraveyardFrostGem: LocationData(0x13015B, 401, "Chest"), LocationName.ElephantGraveyardMythrilStone: LocationData(0x13015C, 402, "Chest"), LocationName.ElephantGraveyardBrightStone: LocationData(0x13015D, 403, "Chest"), LocationName.ElephantGraveyardAPBoost: LocationData(0x13015E, 508, "Chest"), LocationName.ElephantGraveyardMythrilShard: LocationData(0x13015F, 509, "Chest"), LocationName.PrideRockMap: LocationData(0x130160, 418, "Chest"), LocationName.PrideRockMythrilStone: LocationData(0x130161, 392, "Chest"), LocationName.PrideRockSerenityCrystal: LocationData(0x130162, 393, "Chest"), LocationName.WildebeestValleyEnergyStone: LocationData(0x130163, 396, "Chest"), LocationName.WildebeestValleyAPBoost: LocationData(0x130164, 397, "Chest"), LocationName.WildebeestValleyMythrilGem: LocationData(0x130165, 398, "Chest"), LocationName.WildebeestValleyMythrilStone: LocationData(0x130166, 399, "Chest"), LocationName.WildebeestValleyLucidGem: LocationData(0x130167, 400, "Chest"), LocationName.WastelandsMythrilShard: LocationData(0x130168, 406, "Chest"), LocationName.WastelandsSerenityGem: LocationData(0x130169, 407, "Chest"), LocationName.WastelandsMythrilStone: LocationData(0x13016A, 408, "Chest"), LocationName.JungleSerenityGem: LocationData(0x13016B, 409, "Chest"), LocationName.JungleMythrilStone: LocationData(0x13016C, 410, "Chest"), LocationName.JungleSerenityCrystal: LocationData(0x13016D, 411, "Chest"), LocationName.OasisMap: LocationData(0x13016E, 412, "Chest"), LocationName.OasisTornPages: LocationData(0x13016F, 493, "Chest"), LocationName.OasisAPBoost: LocationData(0x130170, 413, "Chest"), LocationName.CircleofLife: LocationData(0x130171, 264, "Chest"), LocationName.Hyenas1: LocationData(0x130172, 49, "Get Bonus"), LocationName.Scar: LocationData(0x130173, 29, "Get Bonus"), LocationName.ScarFireElement: LocationData(0x130174, 302, "Chest"), } PL2_Checks = { LocationName.Hyenas2: LocationData(0x130175, 50, "Get Bonus"), LocationName.Groundshaker: LocationData(0x130176, 30, "Double Get Bonus"), LocationName.GroundshakerGetBonus: LocationData(0x130177, 30, "Second Get Bonus"), LocationName.SaixDataDefenseBoost: LocationData(0x130178, 556, "Chest"), } STT_Checks = { LocationName.TwilightTownMap: LocationData(0x130179, 319, "Chest"), LocationName.MunnyPouchOlette: LocationData(0x13017A, 288, "Chest"), LocationName.StationDusks: LocationData(0x13017B, 54, "Get Bonus", "Roxas", 14), LocationName.StationofSerenityPotion: LocationData(0x13017C, 315, "Chest"), LocationName.StationofCallingPotion: LocationData(0x13017D, 472, "Chest"), LocationName.TwilightThorn: LocationData(0x13017E, 33, "Get Bonus", "Roxas", 14), LocationName.Axel1: LocationData(0x13017F, 73, "Get Bonus", "Roxas", 14), LocationName.JunkChampionBelt: LocationData(0x130180, 389, "Chest"), LocationName.JunkMedal: LocationData(0x130181, 390, "Chest"), LocationName.TheStruggleTrophy: LocationData(0x130182, 519, "Chest"), LocationName.CentralStationPotion1: LocationData(0x130183, 428, "Chest"), LocationName.STTCentralStationHiPotion: LocationData(0x130184, 429, "Chest"), LocationName.CentralStationPotion2: LocationData(0x130185, 430, "Chest"), LocationName.SunsetTerraceAbilityRing: LocationData(0x130186, 434, "Chest"), LocationName.SunsetTerraceHiPotion: LocationData(0x130187, 435, "Chest"), LocationName.SunsetTerracePotion1: LocationData(0x130188, 436, "Chest"), LocationName.SunsetTerracePotion2: LocationData(0x130189, 437, "Chest"), LocationName.MansionFoyerHiPotion: LocationData(0x13018A, 449, "Chest"), LocationName.MansionFoyerPotion1: LocationData(0x13018B, 450, "Chest"), LocationName.MansionFoyerPotion2: LocationData(0x13018C, 451, "Chest"), LocationName.MansionDiningRoomElvenBandanna: LocationData(0x13018D, 455, "Chest"), LocationName.MansionDiningRoomPotion: LocationData(0x13018E, 456, "Chest"), LocationName.NaminesSketches: LocationData(0x13018F, 289, "Chest"), LocationName.MansionMap: LocationData(0x130190, 483, "Chest"), LocationName.MansionLibraryHiPotion: LocationData(0x130191, 459, "Chest"), LocationName.Axel2: LocationData(0x130192, 34, "Get Bonus", "Roxas", 14), LocationName.MansionBasementCorridorHiPotion: LocationData(0x130193, 463, "Chest"), LocationName.RoxasDataMagicBoost: LocationData(0x130194, 558, "Chest"), } TT_Checks = { LocationName.OldMansionPotion: LocationData(0x130195, 447, "Chest"), LocationName.OldMansionMythrilShard: LocationData(0x130196, 448, "Chest"), LocationName.TheWoodsPotion: LocationData(0x130197, 442, "Chest"), LocationName.TheWoodsMythrilShard: LocationData(0x130198, 443, "Chest"), LocationName.TheWoodsHiPotion: LocationData(0x130199, 444, "Chest"), LocationName.TramCommonHiPotion: LocationData(0x13019A, 420, "Chest"), LocationName.TramCommonAPBoost: LocationData(0x13019B, 421, "Chest"), LocationName.TramCommonTent: LocationData(0x13019C, 422, "Chest"), LocationName.TramCommonMythrilShard1: LocationData(0x13019D, 423, "Chest"), LocationName.TramCommonPotion1: LocationData(0x13019E, 424, "Chest"), LocationName.TramCommonMythrilShard2: LocationData(0x13019F, 425, "Chest"), LocationName.TramCommonPotion2: LocationData(0x1301A0, 484, "Chest"), LocationName.StationPlazaSecretAnsemReport2: LocationData(0x1301A1, 526, "Chest"), LocationName.MunnyPouchMickey: LocationData(0x1301A2, 290, "Chest"), LocationName.CrystalOrb: LocationData(0x1301A3, 291, "Chest"), LocationName.CentralStationTent: LocationData(0x1301A4, 431, "Chest"), LocationName.TTCentralStationHiPotion: LocationData(0x1301A5, 432, "Chest"), LocationName.CentralStationMythrilShard: LocationData(0x1301A6, 433, "Chest"), LocationName.TheTowerPotion: LocationData(0x1301A7, 465, "Chest"), LocationName.TheTowerHiPotion: LocationData(0x1301A8, 466, "Chest"), LocationName.TheTowerEther: LocationData(0x1301A9, 522, "Chest"), LocationName.TowerEntrywayEther: LocationData(0x1301AA, 467, "Chest"), LocationName.TowerEntrywayMythrilShard: LocationData(0x1301AB, 468, "Chest"), LocationName.SorcerersLoftTowerMap: LocationData(0x1301AC, 469, "Chest"), LocationName.TowerWardrobeMythrilStone: LocationData(0x1301AD, 470, "Chest"), LocationName.StarSeeker: LocationData(0x1301AE, 304, "Chest"), LocationName.ValorForm: LocationData(0x1301AF, 286, "Chest"), } TT2_Checks = { LocationName.SeifersTrophy: LocationData(0x1301B0, 294, "Chest"), LocationName.Oathkeeper: LocationData(0x1301B1, 265, "Chest"), LocationName.LimitForm: LocationData(0x1301B2, 543, "Chest"), } TT3_Checks = { LocationName.UndergroundConcourseMythrilGem: LocationData(0x1301B3, 479, "Chest"), LocationName.UndergroundConcourseAPBoost: LocationData(0x1301B4, 481, "Chest"), LocationName.UndergroundConcourseOrichalcum: LocationData(0x1301B5, 480, "Chest"), LocationName.UndergroundConcourseMythrilCrystal: LocationData(0x1301B6, 482, "Chest"), LocationName.TunnelwayOrichalcum: LocationData(0x1301B7, 477, "Chest"), LocationName.TunnelwayMythrilCrystal: LocationData(0x1301B8, 478, "Chest"), LocationName.SunsetTerraceOrichalcumPlus: LocationData(0x1301B9, 438, "Chest"), LocationName.SunsetTerraceMythrilShard: LocationData(0x1301BA, 439, "Chest"), LocationName.SunsetTerraceMythrilCrystal: LocationData(0x1301BB, 440, "Chest"), LocationName.SunsetTerraceAPBoost: LocationData(0x1301BC, 441, "Chest"), LocationName.MansionNobodies: LocationData(0x1301BD, 56, "Get Bonus"), LocationName.MansionFoyerMythrilCrystal: LocationData(0x1301BE, 452, "Chest"), LocationName.MansionFoyerMythrilStone: LocationData(0x1301BF, 453, "Chest"), LocationName.MansionFoyerSerenityCrystal: LocationData(0x1301C0, 454, "Chest"), LocationName.MansionDiningRoomMythrilCrystal: LocationData(0x1301C1, 457, "Chest"), LocationName.MansionDiningRoomMythrilStone: LocationData(0x1301C2, 458, "Chest"), LocationName.MansionLibraryOrichalcum: LocationData(0x1301C3, 460, "Chest"), LocationName.BeamSecretAnsemReport10: LocationData(0x1301C4, 534, "Chest"), LocationName.MansionBasementCorridorUltimateRecipe: LocationData(0x1301C5, 464, "Chest"), LocationName.BetwixtandBetween: LocationData(0x1301C6, 63, "Get Bonus"), LocationName.BetwixtandBetweenBondofFlame: LocationData(0x1301C7, 317, "Chest"), LocationName.AxelDataMagicBoost: LocationData(0x1301C8, 561, "Chest"), } TWTNW_Checks = { LocationName.FragmentCrossingMythrilStone: LocationData(0x1301C9, 374, "Chest"), LocationName.FragmentCrossingMythrilCrystal: LocationData(0x1301CA, 375, "Chest"), LocationName.FragmentCrossingAPBoost: LocationData(0x1301CB, 376, "Chest"), LocationName.FragmentCrossingOrichalcum: LocationData(0x1301CC, 377, "Chest"), LocationName.Roxas: LocationData(0x1301CD, 69, "Double Get Bonus"), LocationName.RoxasGetBonus: LocationData(0x1301CE, 69, "Second Get Bonus"), LocationName.RoxasSecretAnsemReport8: LocationData(0x1301CF, 532, "Chest"), LocationName.TwoBecomeOne: LocationData(0x1301D0, 277, "Chest"), LocationName.MemorysSkyscaperMythrilCrystal: LocationData(0x1301D1, 391, "Chest"), LocationName.MemorysSkyscaperAPBoost: LocationData(0x1301D2, 523, "Chest"), LocationName.MemorysSkyscaperMythrilStone: LocationData(0x1301D3, 524, "Chest"), LocationName.TheBrinkofDespairDarkCityMap: LocationData(0x1301D4, 335, "Chest"), LocationName.TheBrinkofDespairOrichalcumPlus: LocationData(0x1301D5, 500, "Chest"), LocationName.NothingsCallMythrilGem: LocationData(0x1301D6, 378, "Chest"), LocationName.NothingsCallOrichalcum: LocationData(0x1301D7, 379, "Chest"), LocationName.TwilightsViewCosmicBelt: LocationData(0x1301D8, 336, "Chest"), } TWTNW2_Checks = { LocationName.XigbarBonus: LocationData(0x1301D9, 23, "Get Bonus"), LocationName.XigbarSecretAnsemReport3: LocationData(0x1301DA, 527, "Chest"), LocationName.NaughtsSkywayMythrilGem: LocationData(0x1301DB, 380, "Chest"), LocationName.NaughtsSkywayOrichalcum: LocationData(0x1301DC, 381, "Chest"), LocationName.NaughtsSkywayMythrilCrystal: LocationData(0x1301DD, 382, "Chest"), LocationName.Oblivion: LocationData(0x1301DE, 278, "Chest"), LocationName.CastleThatNeverWasMap: LocationData(0x1301DF, 496, "Chest"), LocationName.Luxord: LocationData(0x1301E0, 24, "Double Get Bonus"), LocationName.LuxordGetBonus: LocationData(0x1301E1, 24, "Second Get Bonus"), LocationName.LuxordSecretAnsemReport9: LocationData(0x1301E2, 533, "Chest"), LocationName.SaixBonus: LocationData(0x1301E3, 25, "Get Bonus"), LocationName.SaixSecretAnsemReport12: LocationData(0x1301E4, 536, "Chest"), LocationName.PreXemnas1SecretAnsemReport11: LocationData(0x1301E5, 535, "Chest"), LocationName.RuinandCreationsPassageMythrilStone: LocationData(0x1301E6, 385, "Chest"), LocationName.RuinandCreationsPassageAPBoost: LocationData(0x1301E7, 386, "Chest"), LocationName.RuinandCreationsPassageMythrilCrystal: LocationData(0x1301E8, 387, "Chest"), LocationName.RuinandCreationsPassageOrichalcum: LocationData(0x1301E9, 388, "Chest"), LocationName.Xemnas1: LocationData(0x1301EA, 26, "Double Get Bonus"), LocationName.Xemnas1GetBonus: LocationData(0x1301EB, 26, "Second Get Bonus"), LocationName.Xemnas1SecretAnsemReport13: LocationData(0x1301EC, 537, "Chest"), LocationName.FinalXemnas: LocationData(0x1301ED, 71, "Get Bonus"), LocationName.XemnasDataPowerBoost: LocationData(0x1301EE, 554, "Chest"), } SoraLevels = { LocationName.Lvl1: LocationData(0x1301EF, 1, "Levels"), LocationName.Lvl2: LocationData(0x1301F0, 2, "Levels"), LocationName.Lvl3: LocationData(0x1301F1, 3, "Levels"), LocationName.Lvl4: LocationData(0x1301F2, 4, "Levels"), LocationName.Lvl5: LocationData(0x1301F3, 5, "Levels"), LocationName.Lvl6: LocationData(0x1301F4, 6, "Levels"), LocationName.Lvl7: LocationData(0x1301F5, 7, "Levels"), LocationName.Lvl8: LocationData(0x1301F6, 8, "Levels"), LocationName.Lvl9: LocationData(0x1301F7, 9, "Levels"), LocationName.Lvl10: LocationData(0x1301F8, 10, "Levels"), LocationName.Lvl11: LocationData(0x1301F9, 11, "Levels"), LocationName.Lvl12: LocationData(0x1301FA, 12, "Levels"), LocationName.Lvl13: LocationData(0x1301FB, 13, "Levels"), LocationName.Lvl14: LocationData(0x1301FC, 14, "Levels"), LocationName.Lvl15: LocationData(0x1301FD, 15, "Levels"), LocationName.Lvl16: LocationData(0x1301FE, 16, "Levels"), LocationName.Lvl17: LocationData(0x1301FF, 17, "Levels"), LocationName.Lvl18: LocationData(0x130200, 18, "Levels"), LocationName.Lvl19: LocationData(0x130201, 19, "Levels"), LocationName.Lvl20: LocationData(0x130202, 20, "Levels"), LocationName.Lvl21: LocationData(0x130203, 21, "Levels"), LocationName.Lvl22: LocationData(0x130204, 22, "Levels"), LocationName.Lvl23: LocationData(0x130205, 23, "Levels"), LocationName.Lvl24: LocationData(0x130206, 24, "Levels"), LocationName.Lvl25: LocationData(0x130207, 25, "Levels"), LocationName.Lvl26: LocationData(0x130208, 26, "Levels"), LocationName.Lvl27: LocationData(0x130209, 27, "Levels"), LocationName.Lvl28: LocationData(0x13020A, 28, "Levels"), LocationName.Lvl29: LocationData(0x13020B, 29, "Levels"), LocationName.Lvl30: LocationData(0x13020C, 30, "Levels"), LocationName.Lvl31: LocationData(0x13020D, 31, "Levels"), LocationName.Lvl32: LocationData(0x13020E, 32, "Levels"), LocationName.Lvl33: LocationData(0x13020F, 33, "Levels"), LocationName.Lvl34: LocationData(0x130210, 34, "Levels"), LocationName.Lvl35: LocationData(0x130211, 35, "Levels"), LocationName.Lvl36: LocationData(0x130212, 36, "Levels"), LocationName.Lvl37: LocationData(0x130213, 37, "Levels"), LocationName.Lvl38: LocationData(0x130214, 38, "Levels"), LocationName.Lvl39: LocationData(0x130215, 39, "Levels"), LocationName.Lvl40: LocationData(0x130216, 40, "Levels"), LocationName.Lvl41: LocationData(0x130217, 41, "Levels"), LocationName.Lvl42: LocationData(0x130218, 42, "Levels"), LocationName.Lvl43: LocationData(0x130219, 43, "Levels"), LocationName.Lvl44: LocationData(0x13021A, 44, "Levels"), LocationName.Lvl45: LocationData(0x13021B, 45, "Levels"), LocationName.Lvl46: LocationData(0x13021C, 46, "Levels"), LocationName.Lvl47: LocationData(0x13021D, 47, "Levels"), LocationName.Lvl48: LocationData(0x13021E, 48, "Levels"), LocationName.Lvl49: LocationData(0x13021F, 49, "Levels"), LocationName.Lvl50: LocationData(0x130220, 50, "Levels"), LocationName.Lvl51: LocationData(0x130221, 51, "Levels"), LocationName.Lvl52: LocationData(0x130222, 52, "Levels"), LocationName.Lvl53: LocationData(0x130223, 53, "Levels"), LocationName.Lvl54: LocationData(0x130224, 54, "Levels"), LocationName.Lvl55: LocationData(0x130225, 55, "Levels"), LocationName.Lvl56: LocationData(0x130226, 56, "Levels"), LocationName.Lvl57: LocationData(0x130227, 57, "Levels"), LocationName.Lvl58: LocationData(0x130228, 58, "Levels"), LocationName.Lvl59: LocationData(0x130229, 59, "Levels"), LocationName.Lvl60: LocationData(0x13022A, 60, "Levels"), LocationName.Lvl61: LocationData(0x13022B, 61, "Levels"), LocationName.Lvl62: LocationData(0x13022C, 62, "Levels"), LocationName.Lvl63: LocationData(0x13022D, 63, "Levels"), LocationName.Lvl64: LocationData(0x13022E, 64, "Levels"), LocationName.Lvl65: LocationData(0x13022F, 65, "Levels"), LocationName.Lvl66: LocationData(0x130230, 66, "Levels"), LocationName.Lvl67: LocationData(0x130231, 67, "Levels"), LocationName.Lvl68: LocationData(0x130232, 68, "Levels"), LocationName.Lvl69: LocationData(0x130233, 69, "Levels"), LocationName.Lvl70: LocationData(0x130234, 70, "Levels"), LocationName.Lvl71: LocationData(0x130235, 71, "Levels"), LocationName.Lvl72: LocationData(0x130236, 72, "Levels"), LocationName.Lvl73: LocationData(0x130237, 73, "Levels"), LocationName.Lvl74: LocationData(0x130238, 74, "Levels"), LocationName.Lvl75: LocationData(0x130239, 75, "Levels"), LocationName.Lvl76: LocationData(0x13023A, 76, "Levels"), LocationName.Lvl77: LocationData(0x13023B, 77, "Levels"), LocationName.Lvl78: LocationData(0x13023C, 78, "Levels"), LocationName.Lvl79: LocationData(0x13023D, 79, "Levels"), LocationName.Lvl80: LocationData(0x13023E, 80, "Levels"), LocationName.Lvl81: LocationData(0x13023F, 81, "Levels"), LocationName.Lvl82: LocationData(0x130240, 82, "Levels"), LocationName.Lvl83: LocationData(0x130241, 83, "Levels"), LocationName.Lvl84: LocationData(0x130242, 84, "Levels"), LocationName.Lvl85: LocationData(0x130243, 85, "Levels"), LocationName.Lvl86: LocationData(0x130244, 86, "Levels"), LocationName.Lvl87: LocationData(0x130245, 87, "Levels"), LocationName.Lvl88: LocationData(0x130246, 88, "Levels"), LocationName.Lvl89: LocationData(0x130247, 89, "Levels"), LocationName.Lvl90: LocationData(0x130248, 90, "Levels"), LocationName.Lvl91: LocationData(0x130249, 91, "Levels"), LocationName.Lvl92: LocationData(0x13024A, 92, "Levels"), LocationName.Lvl93: LocationData(0x13024B, 93, "Levels"), LocationName.Lvl94: LocationData(0x13024C, 94, "Levels"), LocationName.Lvl95: LocationData(0x13024D, 95, "Levels"), LocationName.Lvl96: LocationData(0x13024E, 96, "Levels"), LocationName.Lvl97: LocationData(0x13024F, 97, "Levels"), LocationName.Lvl98: LocationData(0x130250, 98, "Levels"), LocationName.Lvl99: LocationData(0x130251, 99, "Levels"), } Form_Checks = { LocationName.Valorlvl2: LocationData(0x130253, 2, "Forms", 1), LocationName.Valorlvl3: LocationData(0x130254, 3, "Forms", 1), LocationName.Valorlvl4: LocationData(0x130255, 4, "Forms", 1), LocationName.Valorlvl5: LocationData(0x130256, 5, "Forms", 1), LocationName.Valorlvl6: LocationData(0x130257, 6, "Forms", 1), LocationName.Valorlvl7: LocationData(0x130258, 7, "Forms", 1), LocationName.Wisdomlvl2: LocationData(0x13025A, 2, "Forms", 2), LocationName.Wisdomlvl3: LocationData(0x13025B, 3, "Forms", 2), LocationName.Wisdomlvl4: LocationData(0x13025C, 4, "Forms", 2), LocationName.Wisdomlvl5: LocationData(0x13025D, 5, "Forms", 2), LocationName.Wisdomlvl6: LocationData(0x13025E, 6, "Forms", 2), LocationName.Wisdomlvl7: LocationData(0x13025F, 7, "Forms", 2), LocationName.Limitlvl2: LocationData(0x130261, 2, "Forms", 3), LocationName.Limitlvl3: LocationData(0x130262, 3, "Forms", 3), LocationName.Limitlvl4: LocationData(0x130263, 4, "Forms", 3), LocationName.Limitlvl5: LocationData(0x130264, 5, "Forms", 3), LocationName.Limitlvl6: LocationData(0x130265, 6, "Forms", 3), LocationName.Limitlvl7: LocationData(0x130266, 7, "Forms", 3), LocationName.Masterlvl2: LocationData(0x130268, 2, "Forms", 4), LocationName.Masterlvl3: LocationData(0x130269, 3, "Forms", 4), LocationName.Masterlvl4: LocationData(0x13026A, 4, "Forms", 4), LocationName.Masterlvl5: LocationData(0x13026B, 5, "Forms", 4), LocationName.Masterlvl6: LocationData(0x13026C, 6, "Forms", 4), LocationName.Masterlvl7: LocationData(0x13026D, 7, "Forms", 4), LocationName.Finallvl2: LocationData(0x13026F, 2, "Forms", 5), LocationName.Finallvl3: LocationData(0x130270, 3, "Forms", 5), LocationName.Finallvl4: LocationData(0x130271, 4, "Forms", 5), LocationName.Finallvl5: LocationData(0x130272, 5, "Forms", 5), LocationName.Finallvl6: LocationData(0x130273, 6, "Forms", 5), LocationName.Finallvl7: LocationData(0x130274, 7, "Forms", 5), } GoA_Checks = { LocationName.GardenofAssemblageMap: LocationData(0x130275, 585, "Chest"), LocationName.GoALostIllusion: LocationData(0x130276, 586, "Chest"), LocationName.ProofofNonexistence: LocationData(0x130277, 590, "Chest"), } Keyblade_Slots = { LocationName.FAKESlot: LocationData(0x130278, 116, "Keyblade"), LocationName.DetectionSaberSlot: LocationData(0x130279, 83, "Keyblade"), LocationName.EdgeofUltimaSlot: LocationData(0x13027A, 84, "Keyblade"), LocationName.KingdomKeySlot: LocationData(0x13027B, 80, "Keyblade"), LocationName.OathkeeperSlot: LocationData(0x13027C, 81, "Keyblade"), LocationName.OblivionSlot: LocationData(0x13027D, 82, "Keyblade"), LocationName.StarSeekerSlot: LocationData(0x13027E, 123, "Keyblade"), LocationName.HiddenDragonSlot: LocationData(0x13027F, 124, "Keyblade"), LocationName.HerosCrestSlot: LocationData(0x130280, 127, "Keyblade"), LocationName.MonochromeSlot: LocationData(0x130281, 128, "Keyblade"), LocationName.FollowtheWindSlot: LocationData(0x130282, 129, "Keyblade"), LocationName.CircleofLifeSlot: LocationData(0x130283, 130, "Keyblade"), LocationName.PhotonDebuggerSlot: LocationData(0x130284, 131, "Keyblade"), LocationName.GullWingSlot: LocationData(0x130285, 132, "Keyblade"), LocationName.RumblingRoseSlot: LocationData(0x130286, 133, "Keyblade"), LocationName.GuardianSoulSlot: LocationData(0x130287, 134, "Keyblade"), LocationName.WishingLampSlot: LocationData(0x130288, 135, "Keyblade"), LocationName.DecisivePumpkinSlot: LocationData(0x130289, 136, "Keyblade"), LocationName.SweetMemoriesSlot: LocationData(0x13028A, 138, "Keyblade"), LocationName.MysteriousAbyssSlot: LocationData(0x13028B, 139, "Keyblade"), LocationName.SleepingLionSlot: LocationData(0x13028C, 137, "Keyblade"), LocationName.BondofFlameSlot: LocationData(0x13028D, 141, "Keyblade"), LocationName.TwoBecomeOneSlot: LocationData(0x13028E, 148, "Keyblade"), LocationName.FatalCrestSlot: LocationData(0x13028F, 140, "Keyblade"), LocationName.FenrirSlot: LocationData(0x130290, 142, "Keyblade"), LocationName.UltimaWeaponSlot: LocationData(0x130291, 143, "Keyblade"), LocationName.WinnersProofSlot: LocationData(0x130292, 149, "Keyblade"), LocationName.PurebloodSlot: LocationData(0x1302DB, 85, "Keyblade"), } # checks are given when talking to the computer in the GoA Critical_Checks = { LocationName.Crit_1: LocationData(0x130293, 1, "Critical"), LocationName.Crit_2: LocationData(0x130294, 1, "Critical"), LocationName.Crit_3: LocationData(0x130295, 1, "Critical"), LocationName.Crit_4: LocationData(0x130296, 1, "Critical"), LocationName.Crit_5: LocationData(0x130297, 1, "Critical"), LocationName.Crit_6: LocationData(0x130298, 1, "Critical"), LocationName.Crit_7: LocationData(0x130299, 1, "Critical"), } Donald_Checks = { LocationName.DonaldScreens: LocationData(0x13029A, 45, "Get Bonus", "Donald", 2), LocationName.DonaldDemyxHBGetBonus: LocationData(0x13029B, 28, "Get Bonus", "Donald", 2), LocationName.DonaldDemyxOC: LocationData(0x13029C, 58, "Get Bonus", "Donald", 2), LocationName.DonaldBoatPete: LocationData(0x13029D, 16, "Double Get Bonus", "Donald", 2), LocationName.DonaldBoatPeteGetBonus: LocationData(0x13029E, 16, "Second Get Bonus", "Donald", 2), LocationName.DonaldPrisonKeeper: LocationData(0x13029F, 18, "Get Bonus", "Donald", 2), LocationName.DonaldScar: LocationData(0x1302A0, 29, "Get Bonus", "Donald", 2), LocationName.DonaldSolarSailer: LocationData(0x1302A1, 61, "Get Bonus", "Donald", 2), LocationName.DonaldExperiment: LocationData(0x1302A2, 20, "Get Bonus", "Donald", 2), LocationName.DonaldBoatFight: LocationData(0x1302A3, 62, "Get Bonus", "Donald", 2), LocationName.DonaldMansionNobodies: LocationData(0x1302A4, 56, "Get Bonus", "Donald", 2), LocationName.DonaldThresholder: LocationData(0x1302A5, 2, "Get Bonus", "Donald", 2), LocationName.DonaldXaldinGetBonus: LocationData(0x1302A6, 4, "Get Bonus", "Donald", 2), LocationName.DonaladGrimReaper2: LocationData(0x1302A7, 22, "Get Bonus", "Donald", 2), LocationName.CometStaff: LocationData(0x1302A8, 90, "Keyblade", "Donald"), LocationName.HammerStaff: LocationData(0x1302A9, 87, "Keyblade", "Donald"), LocationName.LordsBroom: LocationData(0x1302AA, 91, "Keyblade", "Donald"), LocationName.MagesStaff: LocationData(0x1302AB, 86, "Keyblade", "Donald"), LocationName.MeteorStaff: LocationData(0x1302AC, 89, "Keyblade", "Donald"), LocationName.NobodyLance: LocationData(0x1302AD, 94, "Keyblade", "Donald"), LocationName.PreciousMushroom: LocationData(0x1302AE, 154, "Keyblade", "Donald"), LocationName.PreciousMushroom2: LocationData(0x1302AF, 155, "Keyblade", "Donald"), LocationName.PremiumMushroom: LocationData(0x1302B0, 156, "Keyblade", "Donald"), LocationName.RisingDragon: LocationData(0x1302B1, 93, "Keyblade", "Donald"), LocationName.SaveTheQueen2: LocationData(0x1302B2, 146, "Keyblade", "Donald"), LocationName.ShamansRelic: LocationData(0x1302B3, 95, "Keyblade", "Donald"), LocationName.VictoryBell: LocationData(0x1302B4, 88, "Keyblade", "Donald"), LocationName.WisdomWand: LocationData(0x1302B5, 92, "Keyblade", "Donald"), LocationName.Centurion2: LocationData(0x1302B6, 151, "Keyblade", "Donald"), LocationName.DonaldAbuEscort: LocationData(0x1302B7, 42, "Get Bonus", "Donald", 2), LocationName.DonaldStarting1: LocationData(0x1302B8, 2, "Critical", "Donald"), LocationName.DonaldStarting2: LocationData(0x1302B9, 2, "Critical", "Donald"), } Goofy_Checks = { LocationName.GoofyBarbossa: LocationData(0x1302BA, 21, "Double Get Bonus", "Goofy", 3), LocationName.GoofyBarbossaGetBonus: LocationData(0x1302BB, 21, "Second Get Bonus", "Goofy", 3), LocationName.GoofyGrimReaper1: LocationData(0x1302BC, 59, "Get Bonus", "Goofy", 3), LocationName.GoofyHostileProgram: LocationData(0x1302BD, 31, "Get Bonus", "Goofy", 3), LocationName.GoofyHyenas1: LocationData(0x1302BE, 49, "Get Bonus", "Goofy", 3), LocationName.GoofyHyenas2: LocationData(0x1302BF, 50, "Get Bonus", "Goofy", 3), LocationName.GoofyLock: LocationData(0x1302C0, 40, "Get Bonus", "Goofy", 3), LocationName.GoofyOogieBoogie: LocationData(0x1302C1, 19, "Get Bonus", "Goofy", 3), LocationName.GoofyPeteOC: LocationData(0x1302C2, 6, "Get Bonus", "Goofy", 3), LocationName.GoofyFuturePete: LocationData(0x1302C3, 17, "Get Bonus", "Goofy", 3), LocationName.GoofyShanYu: LocationData(0x1302C4, 9, "Get Bonus", "Goofy", 3), LocationName.GoofyStormRider: LocationData(0x1302C5, 10, "Get Bonus", "Goofy", 3), LocationName.GoofyBeast: LocationData(0x1302C6, 12, "Get Bonus", "Goofy", 3), LocationName.GoofyInterceptorBarrels: LocationData(0x1302C7, 39, "Get Bonus", "Goofy", 3), LocationName.GoofyTreasureRoom: LocationData(0x1302C8, 46, "Get Bonus", "Goofy", 3), LocationName.GoofyZexion: LocationData(0x1302C9, 66, "Get Bonus", "Goofy", 3), LocationName.AdamantShield: LocationData(0x1302CA, 100, "Keyblade", "Goofy"), LocationName.AkashicRecord: LocationData(0x1302CB, 107, "Keyblade", "Goofy"), LocationName.ChainGear: LocationData(0x1302CC, 101, "Keyblade", "Goofy"), LocationName.DreamCloud: LocationData(0x1302CD, 104, "Keyblade", "Goofy"), LocationName.FallingStar: LocationData(0x1302CE, 103, "Keyblade", "Goofy"), LocationName.FrozenPride2: LocationData(0x1302CF, 158, "Keyblade", "Goofy"), LocationName.GenjiShield: LocationData(0x1302D0, 106, "Keyblade", "Goofy"), LocationName.KnightDefender: LocationData(0x1302D1, 105, "Keyblade", "Goofy"), LocationName.KnightsShield: LocationData(0x1302D2, 99, "Keyblade", "Goofy"), LocationName.MajesticMushroom: LocationData(0x1302D3, 161, "Keyblade", "Goofy"), LocationName.MajesticMushroom2: LocationData(0x1302D4, 162, "Keyblade", "Goofy"), LocationName.NobodyGuard: LocationData(0x1302D5, 108, "Keyblade", "Goofy"), LocationName.OgreShield: LocationData(0x1302D6, 102, "Keyblade", "Goofy"), LocationName.SaveTheKing2: LocationData(0x1302D7, 147, "Keyblade", "Goofy"), LocationName.UltimateMushroom: LocationData(0x1302D8, 163, "Keyblade", "Goofy"), LocationName.GoofyStarting1: LocationData(0x1302D9, 3, "Critical", "Goofy"), LocationName.GoofyStarting2: LocationData(0x1302DA, 3, "Critical", "Goofy"), } exclusion_table = { "Popups": { LocationName.SweetMemories, LocationName.SpookyCaveMap, LocationName.StarryHillCureElement, LocationName.StarryHillOrichalcumPlus, LocationName.AgrabahMap, LocationName.LampCharm, LocationName.WishingLamp, LocationName.DarkThornCureElement, LocationName.RumblingRose, LocationName.CastleWallsMap, LocationName.SecretAnsemReport4, LocationName.DisneyCastleMap, LocationName.WindowofTimeMap, LocationName.Monochrome, LocationName.WisdomForm, LocationName.LingeringWillProofofConnection, LocationName.LingeringWillManifestIllusion, LocationName.OogieBoogieMagnetElement, LocationName.Present, LocationName.DecoyPresents, LocationName.DecisivePumpkin, LocationName.MarketplaceMap, LocationName.MerlinsHouseMembershipCard, LocationName.MerlinsHouseBlizzardElement, LocationName.BaileySecretAnsemReport7, LocationName.BaseballCharm, LocationName.AnsemsStudyMasterForm, LocationName.AnsemsStudySkillRecipe, LocationName.AnsemsStudySleepingLion, LocationName.FFFightsCureElement, LocationName.ThousandHeartlessSecretAnsemReport1, LocationName.ThousandHeartlessIceCream, LocationName.ThousandHeartlessPicture, LocationName.WinnersProof, LocationName.ProofofPeace, LocationName.SephirothFenrir, LocationName.EncampmentAreaMap, LocationName.Mission3, LocationName.VillageCaveAreaMap, LocationName.HiddenDragon, LocationName.ColiseumMap, LocationName.SecretAnsemReport6, LocationName.OlympusStone, LocationName.HerosCrest, LocationName.AuronsStatue, LocationName.GuardianSoul, LocationName.ProtectBeltPainandPanicCup, LocationName.SerenityGemPainandPanicCup, LocationName.RisingDragonCerberusCup, LocationName.SerenityCrystalCerberusCup, LocationName.GenjiShieldTitanCup, LocationName.SkillfulRingTitanCup, LocationName.FatalCrestGoddessofFateCup, LocationName.OrichalcumPlusGoddessofFateCup, LocationName.HadesCupTrophyParadoxCups, LocationName.IsladeMuertaMap, LocationName.FollowtheWind, LocationName.SeadriftRowCursedMedallion, LocationName.SeadriftRowShipGraveyardMap, LocationName.SecretAnsemReport5, LocationName.CircleofLife, LocationName.ScarFireElement, LocationName.TwilightTownMap, LocationName.MunnyPouchOlette, LocationName.JunkChampionBelt, LocationName.JunkMedal, LocationName.TheStruggleTrophy, LocationName.NaminesSketches, LocationName.MansionMap, LocationName.PhotonDebugger, LocationName.StationPlazaSecretAnsemReport2, LocationName.MunnyPouchMickey, LocationName.CrystalOrb, LocationName.StarSeeker, LocationName.ValorForm, LocationName.SeifersTrophy, LocationName.Oathkeeper, LocationName.LimitForm, LocationName.BeamSecretAnsemReport10, LocationName.BetwixtandBetweenBondofFlame, LocationName.TwoBecomeOne, LocationName.RoxasSecretAnsemReport8, LocationName.XigbarSecretAnsemReport3, LocationName.Oblivion, LocationName.CastleThatNeverWasMap, LocationName.LuxordSecretAnsemReport9, LocationName.SaixSecretAnsemReport12, LocationName.PreXemnas1SecretAnsemReport11, LocationName.Xemnas1SecretAnsemReport13, LocationName.XemnasDataPowerBoost, LocationName.AxelDataMagicBoost, LocationName.RoxasDataMagicBoost, LocationName.SaixDataDefenseBoost, LocationName.DemyxDataAPBoost, LocationName.LuxordDataAPBoost, LocationName.VexenDataLostIllusion, LocationName.LarxeneDataLostIllusion, LocationName.XaldinDataDefenseBoost, LocationName.MarluxiaDataLostIllusion, LocationName.LexaeusDataLostIllusion, LocationName.XigbarDataDefenseBoost, LocationName.VexenASRoadtoDiscovery, LocationName.LarxeneASCloakedThunder, LocationName.ZexionASBookofShadows, LocationName.ZexionDataLostIllusion, LocationName.LexaeusASStrengthBeyondStrength, LocationName.MarluxiaASEternalBlossom }, "Datas": { LocationName.XemnasDataPowerBoost, LocationName.AxelDataMagicBoost, LocationName.RoxasDataMagicBoost, LocationName.SaixDataDefenseBoost, LocationName.DemyxDataAPBoost, LocationName.LuxordDataAPBoost, LocationName.VexenDataLostIllusion, LocationName.VexenBonus, LocationName.VexenASRoadtoDiscovery, LocationName.LarxeneDataLostIllusion, LocationName.LarxeneBonus, LocationName.LarxeneASCloakedThunder, LocationName.XaldinDataDefenseBoost, LocationName.MarluxiaDataLostIllusion, LocationName.MarluxiaASEternalBlossom, LocationName.MarluxiaGetBonus, LocationName.LexaeusDataLostIllusion, LocationName.LexaeusBonus, LocationName.LexaeusASStrengthBeyondStrength, LocationName.XigbarDataDefenseBoost, LocationName.ZexionDataLostIllusion, LocationName.ZexionBonus, LocationName.ZexionASBookofShadows, }, "SuperBosses": { LocationName.LingeringWillBonus, LocationName.LingeringWillProofofConnection, LocationName.LingeringWillManifestIllusion, LocationName.SephirothBonus, LocationName.SephirothFenrir, }, # 23 checks spread through 50 levels "Level50": { LocationName.Lvl2, LocationName.Lvl4, LocationName.Lvl7, LocationName.Lvl9, LocationName.Lvl10, LocationName.Lvl12, LocationName.Lvl14, LocationName.Lvl15, LocationName.Lvl17, LocationName.Lvl20, LocationName.Lvl23, LocationName.Lvl25, LocationName.Lvl28, LocationName.Lvl30, LocationName.Lvl32, LocationName.Lvl34, LocationName.Lvl36, LocationName.Lvl39, LocationName.Lvl41, LocationName.Lvl44, LocationName.Lvl46, LocationName.Lvl48, LocationName.Lvl50, }, # 23 checks spread through 99 levels "Level99": { LocationName.Lvl7, LocationName.Lvl9, LocationName.Lvl12, LocationName.Lvl15, LocationName.Lvl17, LocationName.Lvl20, LocationName.Lvl23, LocationName.Lvl25, LocationName.Lvl28, LocationName.Lvl31, LocationName.Lvl33, LocationName.Lvl36, LocationName.Lvl39, LocationName.Lvl41, LocationName.Lvl44, LocationName.Lvl47, LocationName.Lvl49, LocationName.Lvl53, LocationName.Lvl59, LocationName.Lvl65, LocationName.Lvl73, LocationName.Lvl85, LocationName.Lvl99, }, "Level50Sanity": { LocationName.Lvl2, LocationName.Lvl3, LocationName.Lvl4, LocationName.Lvl5, LocationName.Lvl6, LocationName.Lvl7, LocationName.Lvl8, LocationName.Lvl9, LocationName.Lvl10, LocationName.Lvl11, LocationName.Lvl12, LocationName.Lvl13, LocationName.Lvl14, LocationName.Lvl15, LocationName.Lvl16, LocationName.Lvl17, LocationName.Lvl18, LocationName.Lvl19, LocationName.Lvl20, LocationName.Lvl21, LocationName.Lvl22, LocationName.Lvl23, LocationName.Lvl24, LocationName.Lvl25, LocationName.Lvl26, LocationName.Lvl27, LocationName.Lvl28, LocationName.Lvl29, LocationName.Lvl30, LocationName.Lvl31, LocationName.Lvl32, LocationName.Lvl33, LocationName.Lvl34, LocationName.Lvl35, LocationName.Lvl36, LocationName.Lvl37, LocationName.Lvl38, LocationName.Lvl39, LocationName.Lvl40, LocationName.Lvl41, LocationName.Lvl42, LocationName.Lvl43, LocationName.Lvl44, LocationName.Lvl45, LocationName.Lvl46, LocationName.Lvl47, LocationName.Lvl48, LocationName.Lvl49, LocationName.Lvl50, }, "Level99Sanity": { LocationName.Lvl51, LocationName.Lvl52, LocationName.Lvl53, LocationName.Lvl54, LocationName.Lvl55, LocationName.Lvl56, LocationName.Lvl57, LocationName.Lvl58, LocationName.Lvl59, LocationName.Lvl60, LocationName.Lvl61, LocationName.Lvl62, LocationName.Lvl63, LocationName.Lvl64, LocationName.Lvl65, LocationName.Lvl66, LocationName.Lvl67, LocationName.Lvl68, LocationName.Lvl69, LocationName.Lvl70, LocationName.Lvl71, LocationName.Lvl72, LocationName.Lvl73, LocationName.Lvl74, LocationName.Lvl75, LocationName.Lvl76, LocationName.Lvl77, LocationName.Lvl78, LocationName.Lvl79, LocationName.Lvl80, LocationName.Lvl81, LocationName.Lvl82, LocationName.Lvl83, LocationName.Lvl84, LocationName.Lvl85, LocationName.Lvl86, LocationName.Lvl87, LocationName.Lvl88, LocationName.Lvl89, LocationName.Lvl90, LocationName.Lvl91, LocationName.Lvl92, LocationName.Lvl93, LocationName.Lvl94, LocationName.Lvl95, LocationName.Lvl96, LocationName.Lvl97, LocationName.Lvl98, LocationName.Lvl99, }, "Critical": { LocationName.Crit_1, LocationName.Crit_2, LocationName.Crit_3, LocationName.Crit_4, LocationName.Crit_5, LocationName.Crit_6, LocationName.Crit_7, }, "Hitlist": [ LocationName.XemnasDataPowerBoost, LocationName.AxelDataMagicBoost, LocationName.RoxasDataMagicBoost, LocationName.SaixDataDefenseBoost, LocationName.DemyxDataAPBoost, LocationName.LuxordDataAPBoost, LocationName.VexenDataLostIllusion, LocationName.LarxeneDataLostIllusion, LocationName.XaldinDataDefenseBoost, LocationName.MarluxiaDataLostIllusion, LocationName.LexaeusDataLostIllusion, LocationName.XigbarDataDefenseBoost, LocationName.ZexionDataLostIllusion, LocationName.SephirothFenrir, LocationName.LingeringWillProofofConnection, LocationName.StarryHillOrichalcumPlus, LocationName.Valorlvl7, LocationName.Wisdomlvl7, LocationName.Limitlvl7, LocationName.Masterlvl7, LocationName.Finallvl7, LocationName.TransporttoRemembrance, LocationName.OrichalcumPlusGoddessofFateCup, LocationName.HadesCupTrophyParadoxCups, ], "Cups": { LocationName.ProtectBeltPainandPanicCup, LocationName.SerenityGemPainandPanicCup, LocationName.RisingDragonCerberusCup, LocationName.SerenityCrystalCerberusCup, LocationName.GenjiShieldTitanCup, LocationName.SkillfulRingTitanCup, LocationName.FatalCrestGoddessofFateCup, LocationName.OrichalcumPlusGoddessofFateCup, LocationName.HadesCupTrophyParadoxCups, }, "WeaponSlots": { LocationName.FAKESlot: ItemName.ValorForm, LocationName.DetectionSaberSlot: ItemName.MasterForm, LocationName.EdgeofUltimaSlot: ItemName.FinalForm, LocationName.OathkeeperSlot: ItemName.Oathkeeper, LocationName.OblivionSlot: ItemName.Oblivion, LocationName.StarSeekerSlot: ItemName.StarSeeker, LocationName.HiddenDragonSlot: ItemName.HiddenDragon, LocationName.HerosCrestSlot: ItemName.HerosCrest, LocationName.MonochromeSlot: ItemName.Monochrome, LocationName.FollowtheWindSlot: ItemName.FollowtheWind, LocationName.CircleofLifeSlot: ItemName.CircleofLife, LocationName.PhotonDebuggerSlot: ItemName.PhotonDebugger, LocationName.GullWingSlot: ItemName.GullWing, LocationName.RumblingRoseSlot: ItemName.RumblingRose, LocationName.GuardianSoulSlot: ItemName.GuardianSoul, LocationName.WishingLampSlot: ItemName.WishingLamp, LocationName.DecisivePumpkinSlot: ItemName.DecisivePumpkin, LocationName.SweetMemoriesSlot: ItemName.SweetMemories, LocationName.MysteriousAbyssSlot: ItemName.MysteriousAbyss, LocationName.SleepingLionSlot: ItemName.SleepingLion, LocationName.BondofFlameSlot: ItemName.BondofFlame, LocationName.TwoBecomeOneSlot: ItemName.TwoBecomeOne, LocationName.FatalCrestSlot: ItemName.FatalCrest, LocationName.FenrirSlot: ItemName.Fenrir, LocationName.UltimaWeaponSlot: ItemName.UltimaWeapon, LocationName.WinnersProofSlot: ItemName.WinnersProof, LocationName.PurebloodSlot: ItemName.Pureblood, # goofy LocationName.AkashicRecord: ItemName.AkashicRecord, LocationName.FrozenPride2: ItemName.FrozenPride2, LocationName.GenjiShield: ItemName.GenjiShield, LocationName.MajesticMushroom: ItemName.MajesticMushroom, LocationName.MajesticMushroom2: ItemName.MajesticMushroom2, LocationName.NobodyGuard: ItemName.NobodyGuard, LocationName.OgreShield: ItemName.OgreShield, LocationName.SaveTheKing2: ItemName.SaveTheKing2, LocationName.UltimateMushroom: ItemName.UltimateMushroom, # donald LocationName.MeteorStaff: ItemName.MeteorStaff, LocationName.NobodyLance: ItemName.NobodyLance, LocationName.PreciousMushroom: ItemName.PreciousMushroom, LocationName.PreciousMushroom2: ItemName.PreciousMushroom2, LocationName.PremiumMushroom: ItemName.PremiumMushroom, LocationName.RisingDragon: ItemName.RisingDragon, LocationName.SaveTheQueen2: ItemName.SaveTheQueen2, LocationName.ShamansRelic: ItemName.ShamansRelic, LocationName.Centurion2: ItemName.Centurion2, }, "Chests": { LocationName.BambooGroveDarkShard, LocationName.BambooGroveEther, LocationName.BambooGroveMythrilShard, LocationName.CheckpointHiPotion, LocationName.CheckpointMythrilShard, LocationName.MountainTrailLightningShard, LocationName.MountainTrailRecoveryRecipe, LocationName.MountainTrailEther, LocationName.MountainTrailMythrilShard, LocationName.VillageCaveAPBoost, LocationName.VillageCaveDarkShard, LocationName.RidgeFrostShard, LocationName.RidgeAPBoost, LocationName.ThroneRoomTornPages, LocationName.ThroneRoomPalaceMap, LocationName.ThroneRoomAPBoost, LocationName.ThroneRoomQueenRecipe, LocationName.ThroneRoomAPBoost2, LocationName.ThroneRoomOgreShield, LocationName.ThroneRoomMythrilCrystal, LocationName.ThroneRoomOrichalcum, LocationName.AgrabahDarkShard, LocationName.AgrabahMythrilShard, LocationName.AgrabahHiPotion, LocationName.AgrabahAPBoost, LocationName.AgrabahMythrilStone, LocationName.AgrabahMythrilShard2, LocationName.AgrabahSerenityShard, LocationName.BazaarMythrilGem, LocationName.BazaarPowerShard, LocationName.BazaarHiPotion, LocationName.BazaarAPBoost, LocationName.BazaarMythrilShard, LocationName.PalaceWallsSkillRing, LocationName.PalaceWallsMythrilStone, LocationName.CaveEntrancePowerStone, LocationName.CaveEntranceMythrilShard, LocationName.ValleyofStoneMythrilStone, LocationName.ValleyofStoneAPBoost, LocationName.ValleyofStoneMythrilShard, LocationName.ValleyofStoneHiPotion, LocationName.ChasmofChallengesCaveofWondersMap, LocationName.ChasmofChallengesAPBoost, LocationName.TreasureRoomAPBoost, LocationName.TreasureRoomSerenityGem, LocationName.RuinedChamberTornPages, LocationName.RuinedChamberRuinsMap, LocationName.DCCourtyardMythrilShard, LocationName.DCCourtyardStarRecipe, LocationName.DCCourtyardAPBoost, LocationName.DCCourtyardMythrilStone, LocationName.DCCourtyardBlazingStone, LocationName.DCCourtyardBlazingShard, LocationName.DCCourtyardMythrilShard2, LocationName.LibraryTornPages, LocationName.CornerstoneHillMap, LocationName.CornerstoneHillFrostShard, LocationName.PierMythrilShard, LocationName.PierHiPotion, LocationName.WaterwayMythrilStone, LocationName.WaterwayAPBoost, LocationName.WaterwayFrostStone, LocationName.PoohsHouse100AcreWoodMap, LocationName.PoohsHouseAPBoost, LocationName.PoohsHouseMythrilStone, LocationName.PigletsHouseDefenseBoost, LocationName.PigletsHouseAPBoost, LocationName.PigletsHouseMythrilGem, LocationName.RabbitsHouseDrawRing, LocationName.RabbitsHouseMythrilCrystal, LocationName.RabbitsHouseAPBoost, LocationName.KangasHouseMagicBoost, LocationName.KangasHouseAPBoost, LocationName.KangasHouseOrichalcum, LocationName.SpookyCaveMythrilGem, LocationName.SpookyCaveAPBoost, LocationName.SpookyCaveOrichalcum, LocationName.SpookyCaveGuardRecipe, LocationName.SpookyCaveMythrilCrystal, LocationName.SpookyCaveAPBoost2, LocationName.StarryHillCosmicRing, LocationName.StarryHillStyleRecipe, LocationName.RampartNavalMap, LocationName.RampartMythrilStone, LocationName.RampartDarkShard, LocationName.TownDarkStone, LocationName.TownAPBoost, LocationName.TownMythrilShard, LocationName.TownMythrilGem, LocationName.CaveMouthBrightShard, LocationName.CaveMouthMythrilShard, LocationName.PowderStoreAPBoost1, LocationName.PowderStoreAPBoost2, LocationName.MoonlightNookMythrilShard, LocationName.MoonlightNookSerenityGem, LocationName.MoonlightNookPowerStone, LocationName.InterceptorsHoldFeatherCharm, LocationName.SeadriftKeepAPBoost, LocationName.SeadriftKeepOrichalcum, LocationName.SeadriftKeepMeteorStaff, LocationName.SeadriftRowSerenityGem, LocationName.SeadriftRowKingRecipe, LocationName.SeadriftRowMythrilCrystal, LocationName.PassageMythrilShard, LocationName.PassageMythrilStone, LocationName.PassageEther, LocationName.PassageAPBoost, LocationName.PassageHiPotion, LocationName.InnerChamberUnderworldMap, LocationName.InnerChamberMythrilShard, LocationName.UnderworldEntrancePowerBoost, LocationName.CavernsEntranceLucidShard, LocationName.CavernsEntranceAPBoost, LocationName.CavernsEntranceMythrilShard, LocationName.TheLostRoadBrightShard, LocationName.TheLostRoadEther, LocationName.TheLostRoadMythrilShard, LocationName.TheLostRoadMythrilStone, LocationName.AtriumLucidStone, LocationName.AtriumAPBoost, LocationName.TheLockCavernsMap, LocationName.TheLockMythrilShard, LocationName.TheLockAPBoost, LocationName.BCCourtyardAPBoost, LocationName.BCCourtyardHiPotion, LocationName.BCCourtyardMythrilShard, LocationName.BellesRoomCastleMap, LocationName.BellesRoomMegaRecipe, LocationName.TheEastWingMythrilShard, LocationName.TheEastWingTent, LocationName.TheWestHallHiPotion, LocationName.TheWestHallPowerShard, LocationName.TheWestHallMythrilShard2, LocationName.TheWestHallBrightStone, LocationName.TheWestHallMythrilShard, LocationName.DungeonBasementMap, LocationName.DungeonAPBoost, LocationName.SecretPassageMythrilShard, LocationName.SecretPassageHiPotion, LocationName.SecretPassageLucidShard, LocationName.TheWestHallAPBoostPostDungeon, LocationName.TheWestWingMythrilShard, LocationName.TheWestWingTent, LocationName.TheBeastsRoomBlazingShard, LocationName.PitCellAreaMap, LocationName.PitCellMythrilCrystal, LocationName.CanyonDarkCrystal, LocationName.CanyonMythrilStone, LocationName.CanyonMythrilGem, LocationName.CanyonFrostCrystal, LocationName.HallwayPowerCrystal, LocationName.HallwayAPBoost, LocationName.CommunicationsRoomIOTowerMap, LocationName.CommunicationsRoomGaiaBelt, LocationName.CentralComputerCoreAPBoost, LocationName.CentralComputerCoreOrichalcumPlus, LocationName.CentralComputerCoreCosmicArts, LocationName.CentralComputerCoreMap, LocationName.GraveyardMythrilShard, LocationName.GraveyardSerenityGem, LocationName.FinklesteinsLabHalloweenTownMap, LocationName.TownSquareMythrilStone, LocationName.TownSquareEnergyShard, LocationName.HinterlandsLightningShard, LocationName.HinterlandsMythrilStone, LocationName.HinterlandsAPBoost, LocationName.CandyCaneLaneMegaPotion, LocationName.CandyCaneLaneMythrilGem, LocationName.CandyCaneLaneLightningStone, LocationName.CandyCaneLaneMythrilStone, LocationName.SantasHouseChristmasTownMap, LocationName.SantasHouseAPBoost, LocationName.BoroughDriveRecovery, LocationName.BoroughAPBoost, LocationName.BoroughHiPotion, LocationName.BoroughMythrilShard, LocationName.BoroughDarkShard, LocationName.PosternCastlePerimeterMap, LocationName.PosternMythrilGem, LocationName.PosternAPBoost, LocationName.CorridorsMythrilStone, LocationName.CorridorsMythrilCrystal, LocationName.CorridorsDarkCrystal, LocationName.CorridorsAPBoost, LocationName.AnsemsStudyUkuleleCharm, LocationName.RestorationSiteMoonRecipe, LocationName.RestorationSiteAPBoost, LocationName.CoRDepthsAPBoost, LocationName.CoRDepthsPowerCrystal, LocationName.CoRDepthsFrostCrystal, LocationName.CoRDepthsManifestIllusion, LocationName.CoRDepthsAPBoost2, LocationName.CoRMineshaftLowerLevelDepthsofRemembranceMap, LocationName.CoRMineshaftLowerLevelAPBoost, LocationName.CrystalFissureTornPages, LocationName.CrystalFissureTheGreatMawMap, LocationName.CrystalFissureEnergyCrystal, LocationName.CrystalFissureAPBoost, LocationName.PosternGullWing, LocationName.HeartlessManufactoryCosmicChain, LocationName.CoRDepthsUpperLevelRemembranceGem, LocationName.CoRMiningAreaSerenityGem, LocationName.CoRMiningAreaAPBoost, LocationName.CoRMiningAreaSerenityCrystal, LocationName.CoRMiningAreaManifestIllusion, LocationName.CoRMiningAreaSerenityGem2, LocationName.CoRMiningAreaDarkRemembranceMap, LocationName.CoRMineshaftMidLevelPowerBoost, LocationName.CoREngineChamberSerenityCrystal, LocationName.CoREngineChamberRemembranceCrystal, LocationName.CoREngineChamberAPBoost, LocationName.CoREngineChamberManifestIllusion, LocationName.CoRMineshaftUpperLevelMagicBoost, LocationName.CoRMineshaftUpperLevelAPBoost, LocationName.GorgeSavannahMap, LocationName.GorgeDarkGem, LocationName.GorgeMythrilStone, LocationName.ElephantGraveyardFrostGem, LocationName.ElephantGraveyardMythrilStone, LocationName.ElephantGraveyardBrightStone, LocationName.ElephantGraveyardAPBoost, LocationName.ElephantGraveyardMythrilShard, LocationName.PrideRockMap, LocationName.PrideRockMythrilStone, LocationName.PrideRockSerenityCrystal, LocationName.WildebeestValleyEnergyStone, LocationName.WildebeestValleyAPBoost, LocationName.WildebeestValleyMythrilGem, LocationName.WildebeestValleyMythrilStone, LocationName.WildebeestValleyLucidGem, LocationName.WastelandsMythrilShard, LocationName.WastelandsSerenityGem, LocationName.WastelandsMythrilStone, LocationName.JungleSerenityGem, LocationName.JungleMythrilStone, LocationName.JungleSerenityCrystal, LocationName.OasisMap, LocationName.OasisTornPages, LocationName.OasisAPBoost, LocationName.StationofCallingPotion, LocationName.CentralStationPotion1, LocationName.STTCentralStationHiPotion, LocationName.CentralStationPotion2, LocationName.SunsetTerraceAbilityRing, LocationName.SunsetTerraceHiPotion, LocationName.SunsetTerracePotion1, LocationName.SunsetTerracePotion2, LocationName.MansionFoyerHiPotion, LocationName.MansionFoyerPotion1, LocationName.MansionFoyerPotion2, LocationName.MansionDiningRoomElvenBandanna, LocationName.MansionDiningRoomPotion, LocationName.MansionLibraryHiPotion, LocationName.MansionBasementCorridorHiPotion, LocationName.OldMansionPotion, LocationName.OldMansionMythrilShard, LocationName.TheWoodsPotion, LocationName.TheWoodsMythrilShard, LocationName.TheWoodsHiPotion, LocationName.TramCommonHiPotion, LocationName.TramCommonAPBoost, LocationName.TramCommonTent, LocationName.TramCommonMythrilShard1, LocationName.TramCommonPotion1, LocationName.TramCommonMythrilShard2, LocationName.TramCommonPotion2, LocationName.CentralStationTent, LocationName.TTCentralStationHiPotion, LocationName.CentralStationMythrilShard, LocationName.TheTowerPotion, LocationName.TheTowerHiPotion, LocationName.TheTowerEther, LocationName.TowerEntrywayEther, LocationName.TowerEntrywayMythrilShard, LocationName.SorcerersLoftTowerMap, LocationName.TowerWardrobeMythrilStone, LocationName.UndergroundConcourseMythrilGem, LocationName.UndergroundConcourseAPBoost, LocationName.UndergroundConcourseMythrilCrystal, LocationName.UndergroundConcourseOrichalcum, LocationName.TunnelwayOrichalcum, LocationName.TunnelwayMythrilCrystal, LocationName.SunsetTerraceOrichalcumPlus, LocationName.SunsetTerraceMythrilShard, LocationName.SunsetTerraceMythrilCrystal, LocationName.SunsetTerraceAPBoost, LocationName.MansionFoyerMythrilCrystal, LocationName.MansionFoyerMythrilStone, LocationName.MansionFoyerSerenityCrystal, LocationName.MansionDiningRoomMythrilCrystal, LocationName.MansionDiningRoomMythrilStone, LocationName.MansionLibraryOrichalcum, LocationName.MansionBasementCorridorUltimateRecipe, LocationName.FragmentCrossingMythrilStone, LocationName.FragmentCrossingMythrilCrystal, LocationName.FragmentCrossingAPBoost, LocationName.FragmentCrossingOrichalcum, LocationName.MemorysSkyscaperMythrilCrystal, LocationName.MemorysSkyscaperAPBoost, LocationName.MemorysSkyscaperMythrilStone, LocationName.TheBrinkofDespairDarkCityMap, LocationName.TheBrinkofDespairOrichalcumPlus, LocationName.NothingsCallMythrilGem, LocationName.NothingsCallOrichalcum, LocationName.TwilightsViewCosmicBelt, LocationName.NaughtsSkywayMythrilGem, LocationName.NaughtsSkywayOrichalcum, LocationName.NaughtsSkywayMythrilCrystal, LocationName.RuinandCreationsPassageMythrilStone, LocationName.RuinandCreationsPassageAPBoost, LocationName.RuinandCreationsPassageMythrilCrystal, LocationName.RuinandCreationsPassageOrichalcum, LocationName.GardenofAssemblageMap, LocationName.GoALostIllusion, LocationName.ProofofNonexistence, } } AllWeaponSlot = { LocationName.FAKESlot, LocationName.DetectionSaberSlot, LocationName.EdgeofUltimaSlot, LocationName.KingdomKeySlot, LocationName.OathkeeperSlot, LocationName.OblivionSlot, LocationName.StarSeekerSlot, LocationName.HiddenDragonSlot, LocationName.HerosCrestSlot, LocationName.MonochromeSlot, LocationName.FollowtheWindSlot, LocationName.CircleofLifeSlot, LocationName.PhotonDebuggerSlot, LocationName.GullWingSlot, LocationName.RumblingRoseSlot, LocationName.GuardianSoulSlot, LocationName.WishingLampSlot, LocationName.DecisivePumpkinSlot, LocationName.SweetMemoriesSlot, LocationName.MysteriousAbyssSlot, LocationName.SleepingLionSlot, LocationName.BondofFlameSlot, LocationName.TwoBecomeOneSlot, LocationName.FatalCrestSlot, LocationName.FenrirSlot, LocationName.UltimaWeaponSlot, LocationName.WinnersProofSlot, LocationName.PurebloodSlot, LocationName.Centurion2, LocationName.CometStaff, LocationName.HammerStaff, LocationName.LordsBroom, LocationName.MagesStaff, LocationName.MeteorStaff, LocationName.NobodyLance, LocationName.PreciousMushroom, LocationName.PreciousMushroom2, LocationName.PremiumMushroom, LocationName.RisingDragon, LocationName.SaveTheQueen2, LocationName.ShamansRelic, LocationName.VictoryBell, LocationName.WisdomWand, LocationName.AdamantShield, LocationName.AkashicRecord, LocationName.ChainGear, LocationName.DreamCloud, LocationName.FallingStar, LocationName.FrozenPride2, LocationName.GenjiShield, LocationName.KnightDefender, LocationName.KnightsShield, LocationName.MajesticMushroom, LocationName.MajesticMushroom2, LocationName.NobodyGuard, LocationName.OgreShield, LocationName.SaveTheKing2, LocationName.UltimateMushroom, } RegionTable = { "FirstVisits": { RegionName.LoD_Region, RegionName.Ag_Region, RegionName.Dc_Region, RegionName.Pr_Region, RegionName.Oc_Region, RegionName.Bc_Region, RegionName.Sp_Region, RegionName.Ht_Region, RegionName.Hb_Region, RegionName.Pl_Region, RegionName.STT_Region, RegionName.TT_Region, RegionName.Twtnw_Region, }, "SecondVisits": { RegionName.LoD2_Region, RegionName.Ag2_Region, RegionName.Tr_Region, RegionName.Pr2_Region, RegionName.Oc2_Region, RegionName.Bc2_Region, RegionName.Sp2_Region, RegionName.Ht2_Region, RegionName.Hb2_Region, RegionName.Pl2_Region, RegionName.STT_Region, RegionName.Twtnw2_Region, }, "ValorRegion": { RegionName.LoD_Region, RegionName.Ag_Region, RegionName.Dc_Region, RegionName.Pr_Region, RegionName.Oc_Region, RegionName.Bc_Region, RegionName.Sp_Region, RegionName.Ht_Region, RegionName.Hb_Region, RegionName.TT_Region, RegionName.Twtnw_Region, }, "WisdomRegion": { RegionName.LoD_Region, RegionName.Ag_Region, RegionName.Dc_Region, RegionName.Pr_Region, RegionName.Oc_Region, RegionName.Bc_Region, RegionName.Sp_Region, RegionName.Ht_Region, RegionName.Hb_Region, RegionName.TT_Region, RegionName.Twtnw_Region, }, "LimitRegion": { RegionName.LoD_Region, RegionName.Ag_Region, RegionName.Dc_Region, RegionName.Pr_Region, RegionName.Oc_Region, RegionName.Bc_Region, RegionName.Sp_Region, RegionName.Ht_Region, RegionName.Hb_Region, RegionName.TT_Region, RegionName.Twtnw_Region, RegionName.STT_Region, }, "MasterRegion": { RegionName.LoD_Region, RegionName.Ag_Region, RegionName.Dc_Region, RegionName.Pr_Region, RegionName.Oc_Region, RegionName.Bc_Region, RegionName.Sp_Region, RegionName.Ht_Region, RegionName.Hb_Region, RegionName.TT_Region, RegionName.Twtnw_Region, }, # could add lod2 and bc2 as an option since those spawns are rng "FinalRegion": { RegionName.TT3_Region, RegionName.Twtnw_PostRoxas, RegionName.Twtnw2_Region, } } all_locations = { **TWTNW_Checks, **TWTNW2_Checks, **TT_Checks, **TT2_Checks, **TT3_Checks, **STT_Checks, **PL_Checks, **PL2_Checks, **CoR_Checks, **HB_Checks, **HB2_Checks, **HT_Checks, **HT2_Checks, **PR_Checks, **PR2_Checks, **PR_Checks, **PR2_Checks, **SP_Checks, **SP2_Checks, **BC_Checks, **BC2_Checks, **Oc_Checks, **Oc2_Checks, **Oc2Cups, **HundredAcre1_Checks, **HundredAcre2_Checks, **HundredAcre3_Checks, **HundredAcre4_Checks, **HundredAcre5_Checks, **HundredAcre6_Checks, **DC_Checks, **TR_Checks, **AG_Checks, **AG2_Checks, **LoD_Checks, **LoD2_Checks, **SoraLevels, **Form_Checks, **GoA_Checks, **Keyblade_Slots, **Critical_Checks, **Donald_Checks, **Goofy_Checks, } location_table = {} def setup_locations(): totallocation_table = {**TWTNW_Checks, **TWTNW2_Checks, **TT_Checks, **TT2_Checks, **TT3_Checks, **STT_Checks, **PL_Checks, **PL2_Checks, **CoR_Checks, **HB_Checks, **HB2_Checks, **PR_Checks, **PR2_Checks, **PR_Checks, **PR2_Checks, **SP_Checks, **SP2_Checks, **BC_Checks, **BC2_Checks, **HT_Checks, **HT2_Checks, **Oc_Checks, **Oc2_Checks, **Oc2Cups, **Critical_Checks, **Donald_Checks, **Goofy_Checks, **HundredAcre1_Checks, **HundredAcre2_Checks, **HundredAcre3_Checks, **HundredAcre4_Checks, **HundredAcre5_Checks, **HundredAcre6_Checks, **DC_Checks, **TR_Checks, **AG_Checks, **AG2_Checks, **LoD_Checks, **LoD2_Checks, **SoraLevels, **Form_Checks, **GoA_Checks, **Keyblade_Slots} return totallocation_table lookup_id_to_Location: typing.Dict[int, str] = {data.code: item_name for item_name, data in location_table.items() if data.code}