summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoryenatch <yenatch@gmail.com>2016-06-16 16:11:29 -0400
committeryenatch <yenatch@gmail.com>2016-06-16 16:11:29 -0400
commit8de49d722cbd21abff92ec384e5faaf1f0dde2d5 (patch)
treef2a577679cdd5b20b58285afe3695587ceb84488
parent9d8d999973a627b319413e33344103913b630499 (diff)
Dump the maps.
-rw-r--r--data/data1.s14943
-rw-r--r--data/data2.s2090
-rw-r--r--data/maps/AbandonedShip_CaptainsOffice/border.bin1
-rw-r--r--data/maps/AbandonedShip_CaptainsOffice/header.s15
-rw-r--r--data/maps/AbandonedShip_CaptainsOffice/map.binbin0 -> 126 bytes
-rw-r--r--data/maps/AbandonedShip_Corridors_1F/border.bin1
-rw-r--r--data/maps/AbandonedShip_Corridors_1F/header.s15
-rw-r--r--data/maps/AbandonedShip_Corridors_1F/map.bin3
-rw-r--r--data/maps/AbandonedShip_Corridors_B1F/border.bin1
-rw-r--r--data/maps/AbandonedShip_Corridors_B1F/header.s15
-rw-r--r--data/maps/AbandonedShip_Corridors_B1F/map.bin1
-rw-r--r--data/maps/AbandonedShip_Deck/border.bin1
-rw-r--r--data/maps/AbandonedShip_Deck/header.s15
-rw-r--r--data/maps/AbandonedShip_Deck/map.bin1
-rw-r--r--data/maps/AbandonedShip_HiddenFloorCorridors/border.bin1
-rw-r--r--data/maps/AbandonedShip_HiddenFloorCorridors/header.s15
-rw-r--r--data/maps/AbandonedShip_HiddenFloorCorridors/map.bin1
-rw-r--r--data/maps/AbandonedShip_HiddenFloorRooms/border.bin1
-rw-r--r--data/maps/AbandonedShip_HiddenFloorRooms/header.s15
-rw-r--r--data/maps/AbandonedShip_HiddenFloorRooms/map.bin1
-rw-r--r--data/maps/AbandonedShip_Room_B1F/border.bin1
-rw-r--r--data/maps/AbandonedShip_Room_B1F/header.s15
-rw-r--r--data/maps/AbandonedShip_Room_B1F/map.bin1
-rw-r--r--data/maps/AbandonedShip_Rooms2_1F/border.bin1
-rw-r--r--data/maps/AbandonedShip_Rooms2_1F/header.s15
-rw-r--r--data/maps/AbandonedShip_Rooms2_1F/map.bin1
-rw-r--r--data/maps/AbandonedShip_Rooms2_B1F/border.bin1
-rw-r--r--data/maps/AbandonedShip_Rooms2_B1F/header.s15
-rw-r--r--data/maps/AbandonedShip_Rooms2_B1F/map.bin1
-rw-r--r--data/maps/AbandonedShip_Rooms_1F/border.bin1
-rw-r--r--data/maps/AbandonedShip_Rooms_1F/header.s15
-rw-r--r--data/maps/AbandonedShip_Rooms_1F/map.bin1
-rw-r--r--data/maps/AbandonedShip_Rooms_B1F/border.bin1
-rw-r--r--data/maps/AbandonedShip_Rooms_B1F/header.s15
-rw-r--r--data/maps/AbandonedShip_Rooms_B1F/map.bin1
-rw-r--r--data/maps/AbandonedShip_Underwater1/border.bin1
-rw-r--r--data/maps/AbandonedShip_Underwater1/header.s15
-rw-r--r--data/maps/AbandonedShip_Underwater1/map.bin1
-rw-r--r--data/maps/AbandonedShip_Underwater2/border.bin1
-rw-r--r--data/maps/AbandonedShip_Underwater2/header.s15
-rw-r--r--data/maps/AbandonedShip_Underwater2/map.bin1
-rw-r--r--data/maps/AncientTomb/border.bin1
-rw-r--r--data/maps/AncientTomb/header.s15
-rw-r--r--data/maps/AncientTomb/map.binbin0 -> 1122 bytes
-rw-r--r--data/maps/AquaHideout_1F/border.bin1
-rw-r--r--data/maps/AquaHideout_1F/header.s15
-rw-r--r--data/maps/AquaHideout_1F/map.bin55
-rw-r--r--data/maps/AquaHideout_B1F/border.bin1
-rw-r--r--data/maps/AquaHideout_B1F/header.s15
-rw-r--r--data/maps/AquaHideout_B1F/map.bin83
-rw-r--r--data/maps/AquaHideout_B2F/border.bin1
-rw-r--r--data/maps/AquaHideout_B2F/header.s15
-rw-r--r--data/maps/AquaHideout_B2F/map.bin51
-rw-r--r--data/maps/BattleTower_BattleRoom/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/BattleTower_BattleRoom/header.s15
-rw-r--r--data/maps/BattleTower_BattleRoom/map.bin1
-rw-r--r--data/maps/BattleTower_Corridor/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/BattleTower_Corridor/header.s15
-rw-r--r--data/maps/BattleTower_Corridor/map.binbin0 -> 170 bytes
-rw-r--r--data/maps/BattleTower_Elevator/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/BattleTower_Elevator/header.s15
-rw-r--r--data/maps/BattleTower_Elevator/map.bin1
-rw-r--r--data/maps/BattleTower_Lobby/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/BattleTower_Lobby/header.s15
-rw-r--r--data/maps/BattleTower_Lobby/map.binbin0 -> 252 bytes
-rw-r--r--data/maps/BattleTower_Outside/border.bin1
-rw-r--r--data/maps/BattleTower_Outside/header.s15
-rw-r--r--data/maps/BattleTower_Outside/map.bin1
-rw-r--r--data/maps/CaveOfOrigin_1F/border.bin1
-rw-r--r--data/maps/CaveOfOrigin_1F/header.s15
-rw-r--r--data/maps/CaveOfOrigin_1F/map.bin1
-rw-r--r--data/maps/CaveOfOrigin_B1F/border.bin1
-rw-r--r--data/maps/CaveOfOrigin_B1F/header.s15
-rw-r--r--data/maps/CaveOfOrigin_B1F/map.bin1
-rw-r--r--data/maps/CaveOfOrigin_B2F/border.bin1
-rw-r--r--data/maps/CaveOfOrigin_B2F/header.s15
-rw-r--r--data/maps/CaveOfOrigin_B2F/map.bin1
-rw-r--r--data/maps/CaveOfOrigin_B3F/border.bin1
-rw-r--r--data/maps/CaveOfOrigin_B3F/header.s15
-rw-r--r--data/maps/CaveOfOrigin_B3F/map.bin1
-rw-r--r--data/maps/CaveOfOrigin_B4F/border.bin1
-rw-r--r--data/maps/CaveOfOrigin_B4F/header.s15
-rw-r--r--data/maps/CaveOfOrigin_B4F/map.bin1
-rw-r--r--data/maps/CaveOfOrigin_Entrance/border.bin1
-rw-r--r--data/maps/CaveOfOrigin_Entrance/header.s15
-rw-r--r--data/maps/CaveOfOrigin_Entrance/map.bin1
-rw-r--r--data/maps/DesertRuins/border.bin1
-rw-r--r--data/maps/DesertRuins/header.s15
-rw-r--r--data/maps/DesertRuins/map.binbin0 -> 1122 bytes
-rw-r--r--data/maps/DewfordTown/border.bin1
-rw-r--r--data/maps/DewfordTown/connections.s8
-rw-r--r--data/maps/DewfordTown/header.s15
-rw-r--r--data/maps/DewfordTown/map.bin2
-rw-r--r--data/maps/DewfordTown_Gym/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/DewfordTown_Gym/header.s15
-rw-r--r--data/maps/DewfordTown_Gym/map.bin50
-rw-r--r--data/maps/DewfordTown_Hall/border.bin1
-rw-r--r--data/maps/DewfordTown_Hall/header.s15
-rw-r--r--data/maps/DewfordTown_Hall/map.binbin0 -> 306 bytes
-rw-r--r--data/maps/DewfordTown_House1/border.bin1
-rw-r--r--data/maps/DewfordTown_House1/header.s15
-rw-r--r--data/maps/DewfordTown_House1/map.bin1
-rw-r--r--data/maps/DewfordTown_House2/border.bin1
-rw-r--r--data/maps/DewfordTown_House2/header.s15
-rw-r--r--data/maps/DewfordTown_House2/map.bin1
-rw-r--r--data/maps/DewfordTown_PokemonCenter_1F/header.s15
-rw-r--r--data/maps/DewfordTown_PokemonCenter_2F/header.s15
-rw-r--r--data/maps/DoubleBattleColosseum/border.bin1
-rw-r--r--data/maps/DoubleBattleColosseum/header.s15
-rw-r--r--data/maps/DoubleBattleColosseum/map.bin1
-rw-r--r--data/maps/EverGrandeCity/border.bin1
-rw-r--r--data/maps/EverGrandeCity/connections.s7
-rw-r--r--data/maps/EverGrandeCity/header.s15
-rw-r--r--data/maps/EverGrandeCity/map.binbin0 -> 6400 bytes
-rw-r--r--data/maps/EverGrandeCity_ChampionsRoom/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/EverGrandeCity_ChampionsRoom/header.s15
-rw-r--r--data/maps/EverGrandeCity_ChampionsRoom/map.binbin0 -> 338 bytes
-rw-r--r--data/maps/EverGrandeCity_Corridor1/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/EverGrandeCity_Corridor1/header.s15
-rw-r--r--data/maps/EverGrandeCity_Corridor1/map.bin1
-rw-r--r--data/maps/EverGrandeCity_Corridor2/header.s15
-rw-r--r--data/maps/EverGrandeCity_Corridor3/header.s15
-rw-r--r--data/maps/EverGrandeCity_Corridor4/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/EverGrandeCity_Corridor4/header.s15
-rw-r--r--data/maps/EverGrandeCity_Corridor4/map.bin1
-rw-r--r--data/maps/EverGrandeCity_Corridor5/header.s15
-rw-r--r--data/maps/EverGrandeCity_DrakesRoom/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/EverGrandeCity_DrakesRoom/header.s15
-rw-r--r--data/maps/EverGrandeCity_DrakesRoom/map.bin2
-rw-r--r--data/maps/EverGrandeCity_GlaciasRoom/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/EverGrandeCity_GlaciasRoom/header.s15
-rw-r--r--data/maps/EverGrandeCity_GlaciasRoom/map.bin2
-rw-r--r--data/maps/EverGrandeCity_HallOfFame/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/EverGrandeCity_HallOfFame/header.s15
-rw-r--r--data/maps/EverGrandeCity_HallOfFame/map.bin1
-rw-r--r--data/maps/EverGrandeCity_PhoebesRoom/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/EverGrandeCity_PhoebesRoom/header.s15
-rw-r--r--data/maps/EverGrandeCity_PhoebesRoom/map.bin2
-rw-r--r--data/maps/EverGrandeCity_PokemonCenter_1F/header.s15
-rw-r--r--data/maps/EverGrandeCity_PokemonCenter_2F/header.s15
-rw-r--r--data/maps/EverGrandeCity_PokemonLeague/border.bin1
-rw-r--r--data/maps/EverGrandeCity_PokemonLeague/header.s15
-rw-r--r--data/maps/EverGrandeCity_PokemonLeague/map.bin2
-rw-r--r--data/maps/EverGrandeCity_SidneysRoom/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/EverGrandeCity_SidneysRoom/header.s15
-rw-r--r--data/maps/EverGrandeCity_SidneysRoom/map.bin2
-rw-r--r--data/maps/FallarborTown/border.bin1
-rw-r--r--data/maps/FallarborTown/connections.s8
-rw-r--r--data/maps/FallarborTown/header.s15
-rw-r--r--data/maps/FallarborTown/map.binbin0 -> 800 bytes
-rw-r--r--data/maps/FallarborTown_ContestHall/border.bin1
-rw-r--r--data/maps/FallarborTown_ContestHall/header.s15
-rw-r--r--data/maps/FallarborTown_ContestHall/map.bin1
-rw-r--r--data/maps/FallarborTown_ContestLobby/border.bin1
-rw-r--r--data/maps/FallarborTown_ContestLobby/header.s15
-rw-r--r--data/maps/FallarborTown_ContestLobby/map.bin1
-rw-r--r--data/maps/FallarborTown_House1/header.s15
-rw-r--r--data/maps/FallarborTown_House2/header.s15
-rw-r--r--data/maps/FallarborTown_Mart/header.s15
-rw-r--r--data/maps/FallarborTown_PokemonCenter_1F/header.s15
-rw-r--r--data/maps/FallarborTown_PokemonCenter_2F/header.s15
-rw-r--r--data/maps/FieryPath/border.bin1
-rw-r--r--data/maps/FieryPath/header.s15
-rw-r--r--data/maps/FieryPath/map.bin10
-rw-r--r--data/maps/FortreeCity/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/FortreeCity/connections.s8
-rw-r--r--data/maps/FortreeCity/header.s15
-rw-r--r--data/maps/FortreeCity/map.bin1
-rw-r--r--data/maps/FortreeCity_DecorationShop/border.bin1
-rw-r--r--data/maps/FortreeCity_DecorationShop/header.s15
-rw-r--r--data/maps/FortreeCity_DecorationShop/map.bin1
-rw-r--r--data/maps/FortreeCity_Gym/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/FortreeCity_Gym/header.s15
-rw-r--r--data/maps/FortreeCity_Gym/map.bin2
-rw-r--r--data/maps/FortreeCity_House1/border.bin1
-rw-r--r--data/maps/FortreeCity_House1/header.s15
-rw-r--r--data/maps/FortreeCity_House1/map.bin1
-rw-r--r--data/maps/FortreeCity_House2/border.bin1
-rw-r--r--data/maps/FortreeCity_House2/header.s15
-rw-r--r--data/maps/FortreeCity_House2/map.bin1
-rw-r--r--data/maps/FortreeCity_House3/header.s15
-rw-r--r--data/maps/FortreeCity_House4/header.s15
-rw-r--r--data/maps/FortreeCity_House5/header.s15
-rw-r--r--data/maps/FortreeCity_Mart/header.s15
-rw-r--r--data/maps/FortreeCity_PokemonCenter_1F/header.s15
-rw-r--r--data/maps/FortreeCity_PokemonCenter_2F/header.s15
-rw-r--r--data/maps/GraniteCave_1F/border.bin1
-rw-r--r--data/maps/GraniteCave_1F/header.s15
-rw-r--r--data/maps/GraniteCave_1F/map.bin5
-rw-r--r--data/maps/GraniteCave_B1F/border.bin1
-rw-r--r--data/maps/GraniteCave_B1F/header.s15
-rw-r--r--data/maps/GraniteCave_B1F/map.bin10
-rw-r--r--data/maps/GraniteCave_B2F/border.bin1
-rw-r--r--data/maps/GraniteCave_B2F/header.s15
-rw-r--r--data/maps/GraniteCave_B2F/map.bin2
-rw-r--r--data/maps/GraniteCave_StevensRoom/border.bin1
-rw-r--r--data/maps/GraniteCave_StevensRoom/header.s15
-rw-r--r--data/maps/GraniteCave_StevensRoom/map.bin4
-rw-r--r--data/maps/InsideOfTruck/border.bin1
-rw-r--r--data/maps/InsideOfTruck/header.s15
-rw-r--r--data/maps/InsideOfTruck/map.bin2
-rw-r--r--data/maps/IslandCave/border.bin1
-rw-r--r--data/maps/IslandCave/header.s15
-rw-r--r--data/maps/IslandCave/map.binbin0 -> 1122 bytes
-rw-r--r--data/maps/JaggedPass/border.bin1
-rw-r--r--data/maps/JaggedPass/header.s15
-rw-r--r--data/maps/JaggedPass/map.binbin0 -> 2760 bytes
-rw-r--r--data/maps/LavaridgeTown/border.bin1
-rw-r--r--data/maps/LavaridgeTown/connections.s7
-rw-r--r--data/maps/LavaridgeTown/header.s15
-rw-r--r--data/maps/LavaridgeTown/map.bin3
-rw-r--r--data/maps/LavaridgeTown_Gym_1F/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/LavaridgeTown_Gym_1F/header.s15
-rw-r--r--data/maps/LavaridgeTown_Gym_1F/map.bin2
-rw-r--r--data/maps/LavaridgeTown_Gym_B1F/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/LavaridgeTown_Gym_B1F/header.s15
-rw-r--r--data/maps/LavaridgeTown_Gym_B1F/map.bin1
-rw-r--r--data/maps/LavaridgeTown_HerbShop/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/LavaridgeTown_HerbShop/header.s15
-rw-r--r--data/maps/LavaridgeTown_HerbShop/map.bin1
-rw-r--r--data/maps/LavaridgeTown_House/header.s15
-rw-r--r--data/maps/LavaridgeTown_Mart/header.s15
-rw-r--r--data/maps/LavaridgeTown_PokemonCenter_1F/border.bin1
-rw-r--r--data/maps/LavaridgeTown_PokemonCenter_1F/header.s15
-rw-r--r--data/maps/LavaridgeTown_PokemonCenter_1F/map.bin1
-rw-r--r--data/maps/LavaridgeTown_PokemonCenter_2F/header.s15
-rw-r--r--data/maps/LilycoveCity/border.bin1
-rw-r--r--data/maps/LilycoveCity/connections.s8
-rw-r--r--data/maps/LilycoveCity/header.s15
-rw-r--r--data/maps/LilycoveCity/map.binbin0 -> 6400 bytes
-rw-r--r--data/maps/LilycoveCity_ContestHall/border.bin1
-rw-r--r--data/maps/LilycoveCity_ContestHall/header.s15
-rw-r--r--data/maps/LilycoveCity_ContestHall/map.bin3
-rw-r--r--data/maps/LilycoveCity_ContestLobby/border.bin1
-rw-r--r--data/maps/LilycoveCity_ContestLobby/header.s15
-rw-r--r--data/maps/LilycoveCity_ContestLobby/map.bin1
-rw-r--r--data/maps/LilycoveCity_CoveLilyMotel_1F/border.bin1
-rw-r--r--data/maps/LilycoveCity_CoveLilyMotel_1F/header.s15
-rw-r--r--data/maps/LilycoveCity_CoveLilyMotel_1F/map.bin1
-rw-r--r--data/maps/LilycoveCity_CoveLilyMotel_2F/border.bin1
-rw-r--r--data/maps/LilycoveCity_CoveLilyMotel_2F/header.s15
-rw-r--r--data/maps/LilycoveCity_CoveLilyMotel_2F/map.bin1
-rw-r--r--data/maps/LilycoveCity_DepartmentStoreElevator/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/LilycoveCity_DepartmentStoreElevator/header.s15
-rw-r--r--data/maps/LilycoveCity_DepartmentStoreElevator/map.bin1
-rw-r--r--data/maps/LilycoveCity_DepartmentStoreRooftop/border.bin1
-rw-r--r--data/maps/LilycoveCity_DepartmentStoreRooftop/header.s15
-rw-r--r--data/maps/LilycoveCity_DepartmentStoreRooftop/map.bin1
-rw-r--r--data/maps/LilycoveCity_DepartmentStore_1F/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/LilycoveCity_DepartmentStore_1F/header.s15
-rw-r--r--data/maps/LilycoveCity_DepartmentStore_1F/map.bin1
-rw-r--r--data/maps/LilycoveCity_DepartmentStore_2F/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/LilycoveCity_DepartmentStore_2F/header.s15
-rw-r--r--data/maps/LilycoveCity_DepartmentStore_2F/map.bin1
-rw-r--r--data/maps/LilycoveCity_DepartmentStore_3F/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/LilycoveCity_DepartmentStore_3F/header.s15
-rw-r--r--data/maps/LilycoveCity_DepartmentStore_3F/map.bin1
-rw-r--r--data/maps/LilycoveCity_DepartmentStore_4F/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/LilycoveCity_DepartmentStore_4F/header.s15
-rw-r--r--data/maps/LilycoveCity_DepartmentStore_4F/map.bin1
-rw-r--r--data/maps/LilycoveCity_DepartmentStore_5F/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/LilycoveCity_DepartmentStore_5F/header.s15
-rw-r--r--data/maps/LilycoveCity_DepartmentStore_5F/map.binbin0 -> 288 bytes
-rw-r--r--data/maps/LilycoveCity_EmptyMap/border.bin1
-rw-r--r--data/maps/LilycoveCity_EmptyMap/header.s15
-rw-r--r--data/maps/LilycoveCity_EmptyMap/map.bin1
-rw-r--r--data/maps/LilycoveCity_Harbor/header.s15
-rw-r--r--data/maps/LilycoveCity_House1/header.s15
-rw-r--r--data/maps/LilycoveCity_House2/border.bin1
-rw-r--r--data/maps/LilycoveCity_House2/header.s15
-rw-r--r--data/maps/LilycoveCity_House2/map.bin1
-rw-r--r--data/maps/LilycoveCity_House3/header.s15
-rw-r--r--data/maps/LilycoveCity_House4/header.s15
-rw-r--r--data/maps/LilycoveCity_LilycoveMuseum_1F/border.bin1
-rw-r--r--data/maps/LilycoveCity_LilycoveMuseum_1F/header.s15
-rw-r--r--data/maps/LilycoveCity_LilycoveMuseum_1F/map.bin1
-rw-r--r--data/maps/LilycoveCity_LilycoveMuseum_2F/border.bin1
-rw-r--r--data/maps/LilycoveCity_LilycoveMuseum_2F/header.s15
-rw-r--r--data/maps/LilycoveCity_LilycoveMuseum_2F/map.bin1
-rw-r--r--data/maps/LilycoveCity_MoveDeletersHouse/header.s15
-rw-r--r--data/maps/LilycoveCity_PokemonCenter_1F/header.s15
-rw-r--r--data/maps/LilycoveCity_PokemonCenter_2F/header.s15
-rw-r--r--data/maps/LilycoveCity_PokemonTrainerFanClub/border.bin1
-rw-r--r--data/maps/LilycoveCity_PokemonTrainerFanClub/header.s15
-rw-r--r--data/maps/LilycoveCity_PokemonTrainerFanClub/map.bin2
-rw-r--r--data/maps/LilycoveCity_UnusedMart/header.s15
-rw-r--r--data/maps/LinkContestRoom1/border.bin1
-rw-r--r--data/maps/LinkContestRoom1/header.s15
-rw-r--r--data/maps/LinkContestRoom1/map.bin1
-rw-r--r--data/maps/LinkContestRoom2/border.bin1
-rw-r--r--data/maps/LinkContestRoom2/header.s15
-rw-r--r--data/maps/LinkContestRoom2/map.bin1
-rw-r--r--data/maps/LinkContestRoom3/border.bin1
-rw-r--r--data/maps/LinkContestRoom3/header.s15
-rw-r--r--data/maps/LinkContestRoom3/map.bin1
-rw-r--r--data/maps/LinkContestRoom4/border.bin1
-rw-r--r--data/maps/LinkContestRoom4/header.s15
-rw-r--r--data/maps/LinkContestRoom4/map.bin1
-rw-r--r--data/maps/LinkContestRoom5/border.bin1
-rw-r--r--data/maps/LinkContestRoom5/header.s15
-rw-r--r--data/maps/LinkContestRoom5/map.bin1
-rw-r--r--data/maps/LinkContestRoom6/border.bin1
-rw-r--r--data/maps/LinkContestRoom6/header.s15
-rw-r--r--data/maps/LinkContestRoom6/map.bin1
-rw-r--r--data/maps/LittlerootTown/border.bin1
-rw-r--r--data/maps/LittlerootTown/connections.s7
-rw-r--r--data/maps/LittlerootTown/header.s15
-rw-r--r--data/maps/LittlerootTown/map.bin3
-rw-r--r--data/maps/LittlerootTown_BrendansHouse_1F/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/LittlerootTown_BrendansHouse_1F/header.s15
-rw-r--r--data/maps/LittlerootTown_BrendansHouse_1F/map.bin1
-rw-r--r--data/maps/LittlerootTown_BrendansHouse_2F/border.bin1
-rw-r--r--data/maps/LittlerootTown_BrendansHouse_2F/header.s15
-rw-r--r--data/maps/LittlerootTown_BrendansHouse_2F/map.bin1
-rw-r--r--data/maps/LittlerootTown_MaysHouse_1F/border.bin1
-rw-r--r--data/maps/LittlerootTown_MaysHouse_1F/header.s15
-rw-r--r--data/maps/LittlerootTown_MaysHouse_1F/map.bin1
-rw-r--r--data/maps/LittlerootTown_MaysHouse_2F/border.bin1
-rw-r--r--data/maps/LittlerootTown_MaysHouse_2F/header.s15
-rw-r--r--data/maps/LittlerootTown_MaysHouse_2F/map.bin2
-rw-r--r--data/maps/LittlerootTown_ProfessorBirchsLab/border.bin1
-rw-r--r--data/maps/LittlerootTown_ProfessorBirchsLab/header.s15
-rw-r--r--data/maps/LittlerootTown_ProfessorBirchsLab/map.bin4
-rw-r--r--data/maps/MagmaHideout_1F/border.bin1
-rw-r--r--data/maps/MagmaHideout_1F/header.s15
-rw-r--r--data/maps/MagmaHideout_1F/map.binbin0 -> 1680 bytes
-rw-r--r--data/maps/MagmaHideout_B1F/border.bin1
-rw-r--r--data/maps/MagmaHideout_B1F/header.s15
-rw-r--r--data/maps/MagmaHideout_B1F/map.bin95
-rw-r--r--data/maps/MagmaHideout_B2F/border.bin1
-rw-r--r--data/maps/MagmaHideout_B2F/header.s15
-rw-r--r--data/maps/MagmaHideout_B2F/map.bin49
-rw-r--r--data/maps/MauvilleCity/border.bin1
-rw-r--r--data/maps/MauvilleCity/connections.s10
-rw-r--r--data/maps/MauvilleCity/header.s15
-rw-r--r--data/maps/MauvilleCity/map.binbin0 -> 1600 bytes
-rw-r--r--data/maps/MauvilleCity_BikeShop/border.bin1
-rw-r--r--data/maps/MauvilleCity_BikeShop/header.s15
-rw-r--r--data/maps/MauvilleCity_BikeShop/map.bin2
-rw-r--r--data/maps/MauvilleCity_GameCorner/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/MauvilleCity_GameCorner/header.s15
-rw-r--r--data/maps/MauvilleCity_GameCorner/map.bin3
-rw-r--r--data/maps/MauvilleCity_Gym/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/MauvilleCity_Gym/header.s15
-rw-r--r--data/maps/MauvilleCity_Gym/map.bin3
-rw-r--r--data/maps/MauvilleCity_House1/header.s15
-rw-r--r--data/maps/MauvilleCity_House2/header.s15
-rw-r--r--data/maps/MauvilleCity_Mart/header.s15
-rw-r--r--data/maps/MauvilleCity_PokemonCenter_1F/header.s15
-rw-r--r--data/maps/MauvilleCity_PokemonCenter_2F/header.s15
-rw-r--r--data/maps/MeteorFalls_1F_1R/border.bin1
-rw-r--r--data/maps/MeteorFalls_1F_1R/header.s15
-rw-r--r--data/maps/MeteorFalls_1F_1R/map.bin1
-rw-r--r--data/maps/MeteorFalls_1F_2R/border.bin1
-rw-r--r--data/maps/MeteorFalls_1F_2R/header.s15
-rw-r--r--data/maps/MeteorFalls_1F_2R/map.bin2
-rw-r--r--data/maps/MeteorFalls_B1F_1R/border.bin1
-rw-r--r--data/maps/MeteorFalls_B1F_1R/header.s15
-rw-r--r--data/maps/MeteorFalls_B1F_1R/map.bin6
-rw-r--r--data/maps/MeteorFalls_B1F_2R/border.bin1
-rw-r--r--data/maps/MeteorFalls_B1F_2R/header.s15
-rw-r--r--data/maps/MeteorFalls_B1F_2R/map.bin1
-rw-r--r--data/maps/MossdeepCity/border.bin1
-rw-r--r--data/maps/MossdeepCity/connections.s11
-rw-r--r--data/maps/MossdeepCity/header.s15
-rw-r--r--data/maps/MossdeepCity/map.binbin0 -> 6400 bytes
-rw-r--r--data/maps/MossdeepCity_GameCorner_1F/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/MossdeepCity_GameCorner_1F/header.s15
-rw-r--r--data/maps/MossdeepCity_GameCorner_1F/map.bin2
-rw-r--r--data/maps/MossdeepCity_GameCorner_B1F/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/MossdeepCity_GameCorner_B1F/header.s15
-rw-r--r--data/maps/MossdeepCity_GameCorner_B1F/map.bin2
-rw-r--r--data/maps/MossdeepCity_Gym/border.bin1
-rw-r--r--data/maps/MossdeepCity_Gym/header.s15
-rw-r--r--data/maps/MossdeepCity_Gym/map.bin50
-rw-r--r--data/maps/MossdeepCity_House1/header.s15
-rw-r--r--data/maps/MossdeepCity_House2/header.s15
-rw-r--r--data/maps/MossdeepCity_House3/header.s15
-rw-r--r--data/maps/MossdeepCity_House4/header.s15
-rw-r--r--data/maps/MossdeepCity_Mart/header.s15
-rw-r--r--data/maps/MossdeepCity_PokemonCenter_1F/header.s15
-rw-r--r--data/maps/MossdeepCity_PokemonCenter_2F/header.s15
-rw-r--r--data/maps/MossdeepCity_SpaceCenter_1F/border.bin1
-rw-r--r--data/maps/MossdeepCity_SpaceCenter_1F/header.s15
-rw-r--r--data/maps/MossdeepCity_SpaceCenter_1F/map.binbin0 -> 320 bytes
-rw-r--r--data/maps/MossdeepCity_SpaceCenter_2F/border.bin1
-rw-r--r--data/maps/MossdeepCity_SpaceCenter_2F/header.s15
-rw-r--r--data/maps/MossdeepCity_SpaceCenter_2F/map.binbin0 -> 320 bytes
-rw-r--r--data/maps/MossdeepCity_StevensHouse/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/MossdeepCity_StevensHouse/header.s15
-rw-r--r--data/maps/MossdeepCity_StevensHouse/map.bin1
-rw-r--r--data/maps/MtChimney/border.bin1
-rw-r--r--data/maps/MtChimney/header.s15
-rw-r--r--data/maps/MtChimney/map.bin1
-rw-r--r--data/maps/MtChimney_CableCarStation/header.s15
-rw-r--r--data/maps/MtPyre_1F/border.bin1
-rw-r--r--data/maps/MtPyre_1F/header.s15
-rw-r--r--data/maps/MtPyre_1F/map.bin1
-rw-r--r--data/maps/MtPyre_2F/border.bin1
-rw-r--r--data/maps/MtPyre_2F/header.s15
-rw-r--r--data/maps/MtPyre_2F/map.bin1
-rw-r--r--data/maps/MtPyre_3F/border.bin1
-rw-r--r--data/maps/MtPyre_3F/header.s15
-rw-r--r--data/maps/MtPyre_3F/map.bin1
-rw-r--r--data/maps/MtPyre_4F/border.bin1
-rw-r--r--data/maps/MtPyre_4F/header.s15
-rw-r--r--data/maps/MtPyre_4F/map.bin1
-rw-r--r--data/maps/MtPyre_5F/border.bin1
-rw-r--r--data/maps/MtPyre_5F/header.s15
-rw-r--r--data/maps/MtPyre_5F/map.bin1
-rw-r--r--data/maps/MtPyre_6F/border.bin1
-rw-r--r--data/maps/MtPyre_6F/header.s15
-rw-r--r--data/maps/MtPyre_6F/map.bin1
-rw-r--r--data/maps/MtPyre_Exterior/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/MtPyre_Exterior/header.s15
-rw-r--r--data/maps/MtPyre_Exterior/map.binbin0 -> 3876 bytes
-rw-r--r--data/maps/MtPyre_Summit/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/MtPyre_Summit/header.s15
-rw-r--r--data/maps/MtPyre_Summit/map.binbin0 -> 3700 bytes
-rw-r--r--data/maps/NewMauville_Entrance/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/NewMauville_Entrance/header.s15
-rw-r--r--data/maps/NewMauville_Entrance/map.bin1
-rw-r--r--data/maps/NewMauville_Inside/border.bin1
-rw-r--r--data/maps/NewMauville_Inside/header.s15
-rw-r--r--data/maps/NewMauville_Inside/map.bin1
-rw-r--r--data/maps/OldaleTown/border.bin1
-rw-r--r--data/maps/OldaleTown/connections.s9
-rw-r--r--data/maps/OldaleTown/header.s15
-rw-r--r--data/maps/OldaleTown/map.bin1
-rw-r--r--data/maps/OldaleTown_House1/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/OldaleTown_House1/header.s15
-rw-r--r--data/maps/OldaleTown_House1/map.bin1
-rw-r--r--data/maps/OldaleTown_House2/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/OldaleTown_House2/header.s15
-rw-r--r--data/maps/OldaleTown_House2/map.bin1
-rw-r--r--data/maps/OldaleTown_Mart/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/OldaleTown_Mart/header.s15
-rw-r--r--data/maps/OldaleTown_Mart/map.bin3
-rw-r--r--data/maps/OldaleTown_PokemonCenter_1F/border.bin1
-rw-r--r--data/maps/OldaleTown_PokemonCenter_1F/header.s15
-rw-r--r--data/maps/OldaleTown_PokemonCenter_1F/map.bin1
-rw-r--r--data/maps/OldaleTown_PokemonCenter_2F/border.bin1
-rw-r--r--data/maps/OldaleTown_PokemonCenter_2F/header.s15
-rw-r--r--data/maps/OldaleTown_PokemonCenter_2F/map.bin1
-rw-r--r--data/maps/PacifidlogTown/border.bin1
-rw-r--r--data/maps/PacifidlogTown/connections.s8
-rw-r--r--data/maps/PacifidlogTown/header.s15
-rw-r--r--data/maps/PacifidlogTown/map.bin6
-rw-r--r--data/maps/PacifidlogTown_House1/border.bin1
-rw-r--r--data/maps/PacifidlogTown_House1/header.s15
-rw-r--r--data/maps/PacifidlogTown_House1/map.bin1
-rw-r--r--data/maps/PacifidlogTown_House2/border.bin1
-rw-r--r--data/maps/PacifidlogTown_House2/header.s15
-rw-r--r--data/maps/PacifidlogTown_House2/map.bin1
-rw-r--r--data/maps/PacifidlogTown_House3/header.s15
-rw-r--r--data/maps/PacifidlogTown_House4/header.s15
-rw-r--r--data/maps/PacifidlogTown_House5/header.s15
-rw-r--r--data/maps/PacifidlogTown_PokemonCenter_1F/header.s15
-rw-r--r--data/maps/PacifidlogTown_PokemonCenter_2F/header.s15
-rw-r--r--data/maps/PetalburgCity/border.bin1
-rw-r--r--data/maps/PetalburgCity/connections.s8
-rw-r--r--data/maps/PetalburgCity/header.s15
-rw-r--r--data/maps/PetalburgCity/map.bin4
-rw-r--r--data/maps/PetalburgCity_Gym/border.bin1
-rw-r--r--data/maps/PetalburgCity_Gym/header.s15
-rw-r--r--data/maps/PetalburgCity_Gym/map.bin10
-rw-r--r--data/maps/PetalburgCity_House1/header.s15
-rw-r--r--data/maps/PetalburgCity_House2/border.bin1
-rw-r--r--data/maps/PetalburgCity_House2/header.s15
-rw-r--r--data/maps/PetalburgCity_House2/map.bin1
-rw-r--r--data/maps/PetalburgCity_Mart/header.s15
-rw-r--r--data/maps/PetalburgCity_PokemonCenter_1F/header.s15
-rw-r--r--data/maps/PetalburgCity_PokemonCenter_2F/header.s15
-rw-r--r--data/maps/PetalburgCity_WallysHouse/header.s15
-rw-r--r--data/maps/PetalburgWoods/border.bin1
-rw-r--r--data/maps/PetalburgWoods/header.s15
-rw-r--r--data/maps/PetalburgWoods/map.bin1
-rw-r--r--data/maps/RecordCorner/border.bin1
-rw-r--r--data/maps/RecordCorner/header.s15
-rw-r--r--data/maps/RecordCorner/map.bin1
-rw-r--r--data/maps/Route101/border.bin1
-rw-r--r--data/maps/Route101/connections.s8
-rw-r--r--data/maps/Route101/header.s15
-rw-r--r--data/maps/Route101/map.bin1
-rw-r--r--data/maps/Route102/border.bin1
-rw-r--r--data/maps/Route102/connections.s8
-rw-r--r--data/maps/Route102/header.s15
-rw-r--r--data/maps/Route102/map.bin1
-rw-r--r--data/maps/Route103/border.bin1
-rw-r--r--data/maps/Route103/connections.s8
-rw-r--r--data/maps/Route103/header.s15
-rw-r--r--data/maps/Route103/map.bin1
-rw-r--r--data/maps/Route104/border.bin1
-rw-r--r--data/maps/Route104/connections.s9
-rw-r--r--data/maps/Route104/header.s15
-rw-r--r--data/maps/Route104/map.binbin0 -> 6400 bytes
-rw-r--r--data/maps/Route104_MrBrineysHouse/border.bin1
-rw-r--r--data/maps/Route104_MrBrineysHouse/header.s15
-rw-r--r--data/maps/Route104_MrBrineysHouse/map.bin1
-rw-r--r--data/maps/Route104_PrettyPetalFlowerShop/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/Route104_PrettyPetalFlowerShop/header.s15
-rw-r--r--data/maps/Route104_PrettyPetalFlowerShop/map.binbin0 -> 270 bytes
-rw-r--r--data/maps/Route104_Prototype/border.bin1
-rw-r--r--data/maps/Route104_Prototype/header.s15
-rw-r--r--data/maps/Route104_Prototype/map.bin1
-rw-r--r--data/maps/Route104_PrototypePrettyPetalFlowerShop/header.s15
-rw-r--r--data/maps/Route105/border.bin1
-rw-r--r--data/maps/Route105/connections.s8
-rw-r--r--data/maps/Route105/header.s15
-rw-r--r--data/maps/Route105/map.binbin0 -> 6400 bytes
-rw-r--r--data/maps/Route106/border.bin1
-rw-r--r--data/maps/Route106/connections.s8
-rw-r--r--data/maps/Route106/header.s15
-rw-r--r--data/maps/Route106/map.binbin0 -> 3200 bytes
-rw-r--r--data/maps/Route107/border.bin1
-rw-r--r--data/maps/Route107/connections.s8
-rw-r--r--data/maps/Route107/header.s15
-rw-r--r--data/maps/Route107/map.binbin0 -> 2400 bytes
-rw-r--r--data/maps/Route108/border.bin1
-rw-r--r--data/maps/Route108/connections.s8
-rw-r--r--data/maps/Route108/header.s15
-rw-r--r--data/maps/Route108/map.bin1
-rw-r--r--data/maps/Route109/border.bin1
-rw-r--r--data/maps/Route109/connections.s8
-rw-r--r--data/maps/Route109/header.s15
-rw-r--r--data/maps/Route109/map.binbin0 -> 4800 bytes
-rw-r--r--data/maps/Route109_SeashoreHouse/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/Route109_SeashoreHouse/header.s15
-rw-r--r--data/maps/Route109_SeashoreHouse/map.bin3
-rw-r--r--data/maps/Route110/border.bin1
-rw-r--r--data/maps/Route110/connections.s9
-rw-r--r--data/maps/Route110/header.s15
-rw-r--r--data/maps/Route110/map.binbin0 -> 8000 bytes
-rw-r--r--data/maps/Route110_SeasideCyclingRoadNorthEntrance/header.s15
-rw-r--r--data/maps/Route110_SeasideCyclingRoadSouthEntrance/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/Route110_SeasideCyclingRoadSouthEntrance/header.s15
-rw-r--r--data/maps/Route110_SeasideCyclingRoadSouthEntrance/map.bin1
-rw-r--r--data/maps/Route110_TrickHouseCorridor/border.bin1
-rw-r--r--data/maps/Route110_TrickHouseCorridor/header.s15
-rw-r--r--data/maps/Route110_TrickHouseCorridor/map.bin1
-rw-r--r--data/maps/Route110_TrickHouseEnd/border.bin1
-rw-r--r--data/maps/Route110_TrickHouseEnd/header.s15
-rw-r--r--data/maps/Route110_TrickHouseEnd/map.bin1
-rw-r--r--data/maps/Route110_TrickHouseEntrance/border.bin1
-rw-r--r--data/maps/Route110_TrickHouseEntrance/header.s15
-rw-r--r--data/maps/Route110_TrickHouseEntrance/map.bin1
-rw-r--r--data/maps/Route110_TrickHousePuzzle1/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/Route110_TrickHousePuzzle1/header.s15
-rw-r--r--data/maps/Route110_TrickHousePuzzle1/map.bin2
-rw-r--r--data/maps/Route110_TrickHousePuzzle2/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/Route110_TrickHousePuzzle2/header.s15
-rw-r--r--data/maps/Route110_TrickHousePuzzle2/map.bin2
-rw-r--r--data/maps/Route110_TrickHousePuzzle3/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/Route110_TrickHousePuzzle3/header.s15
-rw-r--r--data/maps/Route110_TrickHousePuzzle3/map.bin2
-rw-r--r--data/maps/Route110_TrickHousePuzzle4/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/Route110_TrickHousePuzzle4/header.s15
-rw-r--r--data/maps/Route110_TrickHousePuzzle4/map.bin2
-rw-r--r--data/maps/Route110_TrickHousePuzzle5/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/Route110_TrickHousePuzzle5/header.s15
-rw-r--r--data/maps/Route110_TrickHousePuzzle5/map.bin2
-rw-r--r--data/maps/Route110_TrickHousePuzzle6/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/Route110_TrickHousePuzzle6/header.s15
-rw-r--r--data/maps/Route110_TrickHousePuzzle6/map.bin2
-rw-r--r--data/maps/Route110_TrickHousePuzzle7/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/Route110_TrickHousePuzzle7/header.s15
-rw-r--r--data/maps/Route110_TrickHousePuzzle7/map.bin2
-rw-r--r--data/maps/Route110_TrickHousePuzzle8/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/Route110_TrickHousePuzzle8/header.s15
-rw-r--r--data/maps/Route110_TrickHousePuzzle8/map.bin2
-rw-r--r--data/maps/Route111/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/Route111/connections.s9
-rw-r--r--data/maps/Route111/header.s15
-rw-r--r--data/maps/Route111/map.binbin0 -> 11200 bytes
-rw-r--r--data/maps/Route111_OldLadysRestStop/header.s15
-rw-r--r--data/maps/Route111_WinstrateFamilysHouse/header.s15
-rw-r--r--data/maps/Route112/border.bin1
-rw-r--r--data/maps/Route112/connections.s9
-rw-r--r--data/maps/Route112/header.s15
-rw-r--r--data/maps/Route112/map.binbin0 -> 4800 bytes
-rw-r--r--data/maps/Route112_CableCarStation/border.bin1
-rw-r--r--data/maps/Route112_CableCarStation/header.s15
-rw-r--r--data/maps/Route112_CableCarStation/map.binbin0 -> 312 bytes
-rw-r--r--data/maps/Route113/border.bin1
-rw-r--r--data/maps/Route113/connections.s9
-rw-r--r--data/maps/Route113/header.s15
-rw-r--r--data/maps/Route113/map.bin288
-rw-r--r--data/maps/Route113_GlassWorkshop/header.s15
-rw-r--r--data/maps/Route114/border.bin1
-rw-r--r--data/maps/Route114/connections.s8
-rw-r--r--data/maps/Route114/header.s15
-rw-r--r--data/maps/Route114/map.binbin0 -> 6400 bytes
-rw-r--r--data/maps/Route114_FossilManiacsHouse/border.bin1
-rw-r--r--data/maps/Route114_FossilManiacsHouse/header.s15
-rw-r--r--data/maps/Route114_FossilManiacsHouse/map.bin1
-rw-r--r--data/maps/Route114_FossilManiacsTunnel/border.bin1
-rw-r--r--data/maps/Route114_FossilManiacsTunnel/header.s15
-rw-r--r--data/maps/Route114_FossilManiacsTunnel/map.bin1
-rw-r--r--data/maps/Route114_LanettesHouse/border.bin1
-rw-r--r--data/maps/Route114_LanettesHouse/header.s15
-rw-r--r--data/maps/Route114_LanettesHouse/map.bin2
-rw-r--r--data/maps/Route115/border.bin1
-rw-r--r--data/maps/Route115/connections.s8
-rw-r--r--data/maps/Route115/header.s15
-rw-r--r--data/maps/Route115/map.binbin0 -> 6400 bytes
-rw-r--r--data/maps/Route116/border.bin1
-rw-r--r--data/maps/Route116/connections.s8
-rw-r--r--data/maps/Route116/header.s15
-rw-r--r--data/maps/Route116/map.binbin0 -> 4000 bytes
-rw-r--r--data/maps/Route116_TunnelersRestHouse/border.bin1
-rw-r--r--data/maps/Route116_TunnelersRestHouse/header.s15
-rw-r--r--data/maps/Route116_TunnelersRestHouse/map.bin1
-rw-r--r--data/maps/Route117/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/Route117/connections.s8
-rw-r--r--data/maps/Route117/header.s15
-rw-r--r--data/maps/Route117/map.bin11
-rw-r--r--data/maps/Route117_PokemonDayCare/border.bin1
-rw-r--r--data/maps/Route117_PokemonDayCare/header.s15
-rw-r--r--data/maps/Route117_PokemonDayCare/map.bin2
-rw-r--r--data/maps/Route118/border.bin1
-rw-r--r--data/maps/Route118/connections.s9
-rw-r--r--data/maps/Route118/header.s15
-rw-r--r--data/maps/Route118/map.binbin0 -> 3200 bytes
-rw-r--r--data/maps/Route119/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/Route119/connections.s8
-rw-r--r--data/maps/Route119/header.s15
-rw-r--r--data/maps/Route119/map.binbin0 -> 11200 bytes
-rw-r--r--data/maps/Route119_House/header.s15
-rw-r--r--data/maps/Route119_WeatherInstitute_1F/border.bin1
-rw-r--r--data/maps/Route119_WeatherInstitute_1F/header.s15
-rw-r--r--data/maps/Route119_WeatherInstitute_1F/map.bin1
-rw-r--r--data/maps/Route119_WeatherInstitute_2F/border.bin1
-rw-r--r--data/maps/Route119_WeatherInstitute_2F/header.s15
-rw-r--r--data/maps/Route119_WeatherInstitute_2F/map.bin1
-rw-r--r--data/maps/Route120/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/Route120/connections.s8
-rw-r--r--data/maps/Route120/header.s15
-rw-r--r--data/maps/Route120/map.binbin0 -> 8000 bytes
-rw-r--r--data/maps/Route121/border.bin1
-rw-r--r--data/maps/Route121/connections.s9
-rw-r--r--data/maps/Route121/header.s15
-rw-r--r--data/maps/Route121/map.bin1
-rw-r--r--data/maps/Route121_SafariZoneEntrance/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/Route121_SafariZoneEntrance/header.s15
-rw-r--r--data/maps/Route121_SafariZoneEntrance/map.bin1
-rw-r--r--data/maps/Route122/border.bin1
-rw-r--r--data/maps/Route122/connections.s8
-rw-r--r--data/maps/Route122/header.s15
-rw-r--r--data/maps/Route122/map.binbin0 -> 3200 bytes
-rw-r--r--data/maps/Route123/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/Route123/connections.s8
-rw-r--r--data/maps/Route123/header.s15
-rw-r--r--data/maps/Route123/map.bin2
-rw-r--r--data/maps/Route123_BerryMastersHouse/header.s15
-rw-r--r--data/maps/Route124/border.bin1
-rw-r--r--data/maps/Route124/connections.s11
-rw-r--r--data/maps/Route124/header.s15
-rw-r--r--data/maps/Route124/map.binbin0 -> 12800 bytes
-rw-r--r--data/maps/Route124_DivingTreasureHuntersHouse/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/Route124_DivingTreasureHuntersHouse/header.s15
-rw-r--r--data/maps/Route124_DivingTreasureHuntersHouse/map.bin1
-rw-r--r--data/maps/Route125/border.bin1
-rw-r--r--data/maps/Route125/connections.s8
-rw-r--r--data/maps/Route125/header.s15
-rw-r--r--data/maps/Route125/map.binbin0 -> 6400 bytes
-rw-r--r--data/maps/Route126/border.bin1
-rw-r--r--data/maps/Route126/connections.s9
-rw-r--r--data/maps/Route126/header.s15
-rw-r--r--data/maps/Route126/map.binbin0 -> 12800 bytes
-rw-r--r--data/maps/Route127/border.bin1
-rw-r--r--data/maps/Route127/connections.s10
-rw-r--r--data/maps/Route127/header.s15
-rw-r--r--data/maps/Route127/map.binbin0 -> 12800 bytes
-rw-r--r--data/maps/Route128/border.bin1
-rw-r--r--data/maps/Route128/connections.s10
-rw-r--r--data/maps/Route128/header.s15
-rw-r--r--data/maps/Route128/map.binbin0 -> 9600 bytes
-rw-r--r--data/maps/Route129/border.bin1
-rw-r--r--data/maps/Route129/connections.s8
-rw-r--r--data/maps/Route129/header.s15
-rw-r--r--data/maps/Route129/map.binbin0 -> 6400 bytes
-rw-r--r--data/maps/Route130/border.bin1
-rw-r--r--data/maps/Route130/connections.s8
-rw-r--r--data/maps/Route130/header.s15
-rw-r--r--data/maps/Route130/map.bin1
-rw-r--r--data/maps/Route131/border.bin1
-rw-r--r--data/maps/Route131/connections.s8
-rw-r--r--data/maps/Route131/header.s15
-rw-r--r--data/maps/Route131/map.bin1
-rw-r--r--data/maps/Route132/border.bin1
-rw-r--r--data/maps/Route132/connections.s8
-rw-r--r--data/maps/Route132/header.s15
-rw-r--r--data/maps/Route132/map.binbin0 -> 6400 bytes
-rw-r--r--data/maps/Route133/border.bin1
-rw-r--r--data/maps/Route133/connections.s8
-rw-r--r--data/maps/Route133/header.s15
-rw-r--r--data/maps/Route133/map.bin1
-rw-r--r--data/maps/Route134/border.bin1
-rw-r--r--data/maps/Route134/connections.s8
-rw-r--r--data/maps/Route134/header.s15
-rw-r--r--data/maps/Route134/map.binbin0 -> 6400 bytes
-rw-r--r--data/maps/RustboroCity/border.bin1
-rw-r--r--data/maps/RustboroCity/connections.s9
-rw-r--r--data/maps/RustboroCity/header.s15
-rw-r--r--data/maps/RustboroCity/map.binbin0 -> 4800 bytes
-rw-r--r--data/maps/RustboroCity_CuttersHouse/border.bin1
-rw-r--r--data/maps/RustboroCity_CuttersHouse/header.s15
-rw-r--r--data/maps/RustboroCity_CuttersHouse/map.bin1
-rw-r--r--data/maps/RustboroCity_DevonCorp_1F/border.bin1
-rw-r--r--data/maps/RustboroCity_DevonCorp_1F/header.s15
-rw-r--r--data/maps/RustboroCity_DevonCorp_1F/map.bin1
-rw-r--r--data/maps/RustboroCity_DevonCorp_2F/border.bin1
-rw-r--r--data/maps/RustboroCity_DevonCorp_2F/header.s15
-rw-r--r--data/maps/RustboroCity_DevonCorp_2F/map.bin1
-rw-r--r--data/maps/RustboroCity_DevonCorp_3F/border.bin1
-rw-r--r--data/maps/RustboroCity_DevonCorp_3F/header.s15
-rw-r--r--data/maps/RustboroCity_DevonCorp_3F/map.bin1
-rw-r--r--data/maps/RustboroCity_Flat1_1F/border.bin1
-rw-r--r--data/maps/RustboroCity_Flat1_1F/header.s15
-rw-r--r--data/maps/RustboroCity_Flat1_1F/map.bin1
-rw-r--r--data/maps/RustboroCity_Flat1_2F/border.bin1
-rw-r--r--data/maps/RustboroCity_Flat1_2F/header.s15
-rw-r--r--data/maps/RustboroCity_Flat1_2F/map.bin1
-rw-r--r--data/maps/RustboroCity_Flat2_1F/border.bin1
-rw-r--r--data/maps/RustboroCity_Flat2_1F/header.s15
-rw-r--r--data/maps/RustboroCity_Flat2_1F/map.binbin0 -> 252 bytes
-rw-r--r--data/maps/RustboroCity_Flat2_2F/border.bin1
-rw-r--r--data/maps/RustboroCity_Flat2_2F/header.s15
-rw-r--r--data/maps/RustboroCity_Flat2_2F/map.binbin0 -> 252 bytes
-rw-r--r--data/maps/RustboroCity_Flat2_3F/border.bin1
-rw-r--r--data/maps/RustboroCity_Flat2_3F/header.s15
-rw-r--r--data/maps/RustboroCity_Flat2_3F/map.binbin0 -> 252 bytes
-rw-r--r--data/maps/RustboroCity_Gym/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/RustboroCity_Gym/header.s15
-rw-r--r--data/maps/RustboroCity_Gym/map.bin2
-rw-r--r--data/maps/RustboroCity_House1/border.bin1
-rw-r--r--data/maps/RustboroCity_House1/header.s15
-rw-r--r--data/maps/RustboroCity_House1/map.bin1
-rw-r--r--data/maps/RustboroCity_House2/border.bin1
-rw-r--r--data/maps/RustboroCity_House2/header.s15
-rw-r--r--data/maps/RustboroCity_House2/map.bin1
-rw-r--r--data/maps/RustboroCity_House3/header.s15
-rw-r--r--data/maps/RustboroCity_Mart/header.s15
-rw-r--r--data/maps/RustboroCity_PokemonCenter_1F/header.s15
-rw-r--r--data/maps/RustboroCity_PokemonCenter_2F/header.s15
-rw-r--r--data/maps/RustboroCity_PokemonSchool/border.bin1
-rw-r--r--data/maps/RustboroCity_PokemonSchool/header.s15
-rw-r--r--data/maps/RustboroCity_PokemonSchool/map.binbin0 -> 264 bytes
-rw-r--r--data/maps/RusturfTunnel/border.bin1
-rw-r--r--data/maps/RusturfTunnel/header.s15
-rw-r--r--data/maps/RusturfTunnel/map.bin2
-rw-r--r--data/maps/SSTidalCorridor/border.bin1
-rw-r--r--data/maps/SSTidalCorridor/header.s15
-rw-r--r--data/maps/SSTidalCorridor/map.bin1
-rw-r--r--data/maps/SSTidalLowerDeck/border.bin1
-rw-r--r--data/maps/SSTidalLowerDeck/header.s15
-rw-r--r--data/maps/SSTidalLowerDeck/map.bin1
-rw-r--r--data/maps/SSTidalRooms/border.bin1
-rw-r--r--data/maps/SSTidalRooms/header.s15
-rw-r--r--data/maps/SSTidalRooms/map.bin1
-rw-r--r--data/maps/SafariZone_Northeast/border.bin1
-rw-r--r--data/maps/SafariZone_Northeast/connections.s8
-rw-r--r--data/maps/SafariZone_Northeast/header.s15
-rw-r--r--data/maps/SafariZone_Northeast/map.binbin0 -> 3200 bytes
-rw-r--r--data/maps/SafariZone_Northwest/border.bin1
-rw-r--r--data/maps/SafariZone_Northwest/connections.s8
-rw-r--r--data/maps/SafariZone_Northwest/header.s15
-rw-r--r--data/maps/SafariZone_Northwest/map.binbin0 -> 3200 bytes
-rw-r--r--data/maps/SafariZone_RestHouse/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/SafariZone_RestHouse/header.s15
-rw-r--r--data/maps/SafariZone_RestHouse/map.bin1
-rw-r--r--data/maps/SafariZone_Southeast/border.bin1
-rw-r--r--data/maps/SafariZone_Southeast/connections.s8
-rw-r--r--data/maps/SafariZone_Southeast/header.s15
-rw-r--r--data/maps/SafariZone_Southeast/map.binbin0 -> 3200 bytes
-rw-r--r--data/maps/SafariZone_Southwest/border.bin1
-rw-r--r--data/maps/SafariZone_Southwest/connections.s8
-rw-r--r--data/maps/SafariZone_Southwest/header.s15
-rw-r--r--data/maps/SafariZone_Southwest/map.binbin0 -> 3200 bytes
-rw-r--r--data/maps/ScorchedSlab/border.bin1
-rw-r--r--data/maps/ScorchedSlab/header.s15
-rw-r--r--data/maps/ScorchedSlab/map.bin1
-rw-r--r--data/maps/SeafloorCavern_Entrance/border.bin1
-rw-r--r--data/maps/SeafloorCavern_Entrance/header.s15
-rw-r--r--data/maps/SeafloorCavern_Entrance/map.bin11
-rw-r--r--data/maps/SeafloorCavern_Room1/border.bin1
-rw-r--r--data/maps/SeafloorCavern_Room1/header.s15
-rw-r--r--data/maps/SeafloorCavern_Room1/map.bin1
-rw-r--r--data/maps/SeafloorCavern_Room2/border.bin1
-rw-r--r--data/maps/SeafloorCavern_Room2/header.s15
-rw-r--r--data/maps/SeafloorCavern_Room2/map.bin1
-rw-r--r--data/maps/SeafloorCavern_Room3/border.bin1
-rw-r--r--data/maps/SeafloorCavern_Room3/header.s15
-rw-r--r--data/maps/SeafloorCavern_Room3/map.bin1
-rw-r--r--data/maps/SeafloorCavern_Room4/border.bin1
-rw-r--r--data/maps/SeafloorCavern_Room4/header.s15
-rw-r--r--data/maps/SeafloorCavern_Room4/map.bin1
-rw-r--r--data/maps/SeafloorCavern_Room5/border.bin1
-rw-r--r--data/maps/SeafloorCavern_Room5/header.s15
-rw-r--r--data/maps/SeafloorCavern_Room5/map.bin1
-rw-r--r--data/maps/SeafloorCavern_Room6/border.bin1
-rw-r--r--data/maps/SeafloorCavern_Room6/header.s15
-rw-r--r--data/maps/SeafloorCavern_Room6/map.bin1
-rw-r--r--data/maps/SeafloorCavern_Room7/border.bin1
-rw-r--r--data/maps/SeafloorCavern_Room7/header.s15
-rw-r--r--data/maps/SeafloorCavern_Room7/map.bin1
-rw-r--r--data/maps/SeafloorCavern_Room8/border.bin1
-rw-r--r--data/maps/SeafloorCavern_Room8/header.s15
-rw-r--r--data/maps/SeafloorCavern_Room8/map.bin1
-rw-r--r--data/maps/SeafloorCavern_Room9/border.bin1
-rw-r--r--data/maps/SeafloorCavern_Room9/header.s15
-rw-r--r--data/maps/SeafloorCavern_Room9/map.bin1
-rw-r--r--data/maps/SealedChamber_InnerRoom/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/SealedChamber_InnerRoom/header.s15
-rw-r--r--data/maps/SealedChamber_InnerRoom/map.bin1
-rw-r--r--data/maps/SealedChamber_OuterRoom/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/SealedChamber_OuterRoom/header.s15
-rw-r--r--data/maps/SealedChamber_OuterRoom/map.bin11
-rw-r--r--data/maps/SecretBase_BlueCave1/border.bin1
-rw-r--r--data/maps/SecretBase_BlueCave1/header.s15
-rw-r--r--data/maps/SecretBase_BlueCave1/map.bin50
-rw-r--r--data/maps/SecretBase_BlueCave2/border.bin1
-rw-r--r--data/maps/SecretBase_BlueCave2/header.s15
-rw-r--r--data/maps/SecretBase_BlueCave2/map.bin57
-rw-r--r--data/maps/SecretBase_BlueCave3/border.bin1
-rw-r--r--data/maps/SecretBase_BlueCave3/header.s15
-rw-r--r--data/maps/SecretBase_BlueCave3/map.bin51
-rw-r--r--data/maps/SecretBase_BlueCave4/border.bin1
-rw-r--r--data/maps/SecretBase_BlueCave4/header.s15
-rw-r--r--data/maps/SecretBase_BlueCave4/map.bin57
-rw-r--r--data/maps/SecretBase_BrownCave1/border.bin1
-rw-r--r--data/maps/SecretBase_BrownCave1/header.s15
-rw-r--r--data/maps/SecretBase_BrownCave1/map.bin54
-rw-r--r--data/maps/SecretBase_BrownCave2/border.bin1
-rw-r--r--data/maps/SecretBase_BrownCave2/header.s15
-rw-r--r--data/maps/SecretBase_BrownCave2/map.bin56
-rw-r--r--data/maps/SecretBase_BrownCave3/border.bin1
-rw-r--r--data/maps/SecretBase_BrownCave3/header.s15
-rw-r--r--data/maps/SecretBase_BrownCave3/map.bin69
-rw-r--r--data/maps/SecretBase_BrownCave4/border.bin1
-rw-r--r--data/maps/SecretBase_BrownCave4/header.s15
-rw-r--r--data/maps/SecretBase_BrownCave4/map.bin70
-rw-r--r--data/maps/SecretBase_RedCave1/border.bin1
-rw-r--r--data/maps/SecretBase_RedCave1/header.s15
-rw-r--r--data/maps/SecretBase_RedCave1/map.bin51
-rw-r--r--data/maps/SecretBase_RedCave2/border.bin1
-rw-r--r--data/maps/SecretBase_RedCave2/header.s15
-rw-r--r--data/maps/SecretBase_RedCave2/map.bin42
-rw-r--r--data/maps/SecretBase_RedCave3/border.bin1
-rw-r--r--data/maps/SecretBase_RedCave3/header.s15
-rw-r--r--data/maps/SecretBase_RedCave3/map.bin47
-rw-r--r--data/maps/SecretBase_RedCave4/border.bin1
-rw-r--r--data/maps/SecretBase_RedCave4/header.s15
-rw-r--r--data/maps/SecretBase_RedCave4/map.bin56
-rw-r--r--data/maps/SecretBase_Shrub1/border.bin1
-rw-r--r--data/maps/SecretBase_Shrub1/header.s15
-rw-r--r--data/maps/SecretBase_Shrub1/map.bin53
-rw-r--r--data/maps/SecretBase_Shrub2/border.bin1
-rw-r--r--data/maps/SecretBase_Shrub2/header.s15
-rw-r--r--data/maps/SecretBase_Shrub2/map.bin57
-rw-r--r--data/maps/SecretBase_Shrub3/border.bin1
-rw-r--r--data/maps/SecretBase_Shrub3/header.s15
-rw-r--r--data/maps/SecretBase_Shrub3/map.bin65
-rw-r--r--data/maps/SecretBase_Shrub4/border.bin1
-rw-r--r--data/maps/SecretBase_Shrub4/header.s15
-rw-r--r--data/maps/SecretBase_Shrub4/map.bin69
-rw-r--r--data/maps/SecretBase_Tree1/border.bin1
-rw-r--r--data/maps/SecretBase_Tree1/header.s15
-rw-r--r--data/maps/SecretBase_Tree1/map.bin56
-rw-r--r--data/maps/SecretBase_Tree2/border.bin1
-rw-r--r--data/maps/SecretBase_Tree2/header.s15
-rw-r--r--data/maps/SecretBase_Tree2/map.bin48
-rw-r--r--data/maps/SecretBase_Tree3/border.bin1
-rw-r--r--data/maps/SecretBase_Tree3/header.s15
-rw-r--r--data/maps/SecretBase_Tree3/map.bin63
-rw-r--r--data/maps/SecretBase_Tree4/border.bin1
-rw-r--r--data/maps/SecretBase_Tree4/header.s15
-rw-r--r--data/maps/SecretBase_Tree4/map.bin77
-rw-r--r--data/maps/SecretBase_YellowCave1/border.bin1
-rw-r--r--data/maps/SecretBase_YellowCave1/header.s15
-rw-r--r--data/maps/SecretBase_YellowCave1/map.bin57
-rw-r--r--data/maps/SecretBase_YellowCave2/border.bin1
-rw-r--r--data/maps/SecretBase_YellowCave2/header.s15
-rw-r--r--data/maps/SecretBase_YellowCave2/map.bin56
-rw-r--r--data/maps/SecretBase_YellowCave3/border.bin1
-rw-r--r--data/maps/SecretBase_YellowCave3/header.s15
-rw-r--r--data/maps/SecretBase_YellowCave3/map.bin63
-rw-r--r--data/maps/SecretBase_YellowCave4/border.bin1
-rw-r--r--data/maps/SecretBase_YellowCave4/header.s15
-rw-r--r--data/maps/SecretBase_YellowCave4/map.bin80
-rw-r--r--data/maps/ShoalCave_HighTideEntranceRoom/border.bin1
-rw-r--r--data/maps/ShoalCave_HighTideEntranceRoom/header.s15
-rw-r--r--data/maps/ShoalCave_HighTideEntranceRoom/map.bin1
-rw-r--r--data/maps/ShoalCave_HighTideInnerRoom/border.bin1
-rw-r--r--data/maps/ShoalCave_HighTideInnerRoom/header.s15
-rw-r--r--data/maps/ShoalCave_HighTideInnerRoom/map.bin1
-rw-r--r--data/maps/ShoalCave_LowTideEntranceRoom/border.bin1
-rw-r--r--data/maps/ShoalCave_LowTideEntranceRoom/header.s15
-rw-r--r--data/maps/ShoalCave_LowTideEntranceRoom/map.bin3
-rw-r--r--data/maps/ShoalCave_LowTideIceRoom/border.bin1
-rw-r--r--data/maps/ShoalCave_LowTideIceRoom/header.s15
-rw-r--r--data/maps/ShoalCave_LowTideIceRoom/map.bin1
-rw-r--r--data/maps/ShoalCave_LowTideInnerRoom/border.bin1
-rw-r--r--data/maps/ShoalCave_LowTideInnerRoom/header.s15
-rw-r--r--data/maps/ShoalCave_LowTideInnerRoom/map.bin2
-rw-r--r--data/maps/ShoalCave_LowTideLowerRoom/border.bin1
-rw-r--r--data/maps/ShoalCave_LowTideLowerRoom/header.s15
-rw-r--r--data/maps/ShoalCave_LowTideLowerRoom/map.bin4
-rw-r--r--data/maps/ShoalCave_LowTideStairsRoom/border.bin1
-rw-r--r--data/maps/ShoalCave_LowTideStairsRoom/header.s15
-rw-r--r--data/maps/ShoalCave_LowTideStairsRoom/map.bin1
-rw-r--r--data/maps/SingleBattleColosseum/border.bin1
-rw-r--r--data/maps/SingleBattleColosseum/header.s15
-rw-r--r--data/maps/SingleBattleColosseum/map.bin1
-rw-r--r--data/maps/SkyPillar_1F/border.bin1
-rw-r--r--data/maps/SkyPillar_1F/header.s15
-rw-r--r--data/maps/SkyPillar_1F/map.bin1
-rw-r--r--data/maps/SkyPillar_2F/border.bin1
-rw-r--r--data/maps/SkyPillar_2F/header.s15
-rw-r--r--data/maps/SkyPillar_2F/map.bin1
-rw-r--r--data/maps/SkyPillar_3F/border.bin1
-rw-r--r--data/maps/SkyPillar_3F/header.s15
-rw-r--r--data/maps/SkyPillar_3F/map.bin1
-rw-r--r--data/maps/SkyPillar_4F/border.bin1
-rw-r--r--data/maps/SkyPillar_4F/header.s15
-rw-r--r--data/maps/SkyPillar_4F/map.bin1
-rw-r--r--data/maps/SkyPillar_5F/border.bin1
-rw-r--r--data/maps/SkyPillar_5F/header.s15
-rw-r--r--data/maps/SkyPillar_5F/map.bin1
-rw-r--r--data/maps/SkyPillar_Entrance/border.bin1
-rw-r--r--data/maps/SkyPillar_Entrance/header.s15
-rw-r--r--data/maps/SkyPillar_Entrance/map.bin1
-rw-r--r--data/maps/SkyPillar_Outside/border.bin1
-rw-r--r--data/maps/SkyPillar_Outside/header.s15
-rw-r--r--data/maps/SkyPillar_Outside/map.bin1
-rw-r--r--data/maps/SkyPillar_Top/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/SkyPillar_Top/header.s15
-rw-r--r--data/maps/SkyPillar_Top/map.bin1
-rw-r--r--data/maps/SlateportCity/border.bin1
-rw-r--r--data/maps/SlateportCity/connections.s9
-rw-r--r--data/maps/SlateportCity/header.s15
-rw-r--r--data/maps/SlateportCity/map.binbin0 -> 4800 bytes
-rw-r--r--data/maps/SlateportCity_ContestHall/header.s15
-rw-r--r--data/maps/SlateportCity_ContestLobby/header.s15
-rw-r--r--data/maps/SlateportCity_Harbor/border.bin1
-rw-r--r--data/maps/SlateportCity_Harbor/header.s15
-rw-r--r--data/maps/SlateportCity_Harbor/map.bin1
-rw-r--r--data/maps/SlateportCity_House1/header.s15
-rw-r--r--data/maps/SlateportCity_House2/header.s15
-rw-r--r--data/maps/SlateportCity_Mart/header.s15
-rw-r--r--data/maps/SlateportCity_OceanicMuseum_1F/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/SlateportCity_OceanicMuseum_1F/header.s15
-rw-r--r--data/maps/SlateportCity_OceanicMuseum_1F/map.bin2
-rw-r--r--data/maps/SlateportCity_OceanicMuseum_2F/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/SlateportCity_OceanicMuseum_2F/header.s15
-rw-r--r--data/maps/SlateportCity_OceanicMuseum_2F/map.bin1
-rw-r--r--data/maps/SlateportCity_PokemonCenter_1F/header.s15
-rw-r--r--data/maps/SlateportCity_PokemonCenter_2F/header.s15
-rw-r--r--data/maps/SlateportCity_PokemonFanClub/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/SlateportCity_PokemonFanClub/header.s15
-rw-r--r--data/maps/SlateportCity_PokemonFanClub/map.binbin0 -> 308 bytes
-rw-r--r--data/maps/SlateportCity_SternsShipyard_1F/border.bin1
-rw-r--r--data/maps/SlateportCity_SternsShipyard_1F/header.s15
-rw-r--r--data/maps/SlateportCity_SternsShipyard_1F/map.bin7
-rw-r--r--data/maps/SlateportCity_SternsShipyard_2F/border.bin1
-rw-r--r--data/maps/SlateportCity_SternsShipyard_2F/header.s15
-rw-r--r--data/maps/SlateportCity_SternsShipyard_2F/map.bin1
-rw-r--r--data/maps/SootopolisCity/border.bin1
-rw-r--r--data/maps/SootopolisCity/header.s15
-rw-r--r--data/maps/SootopolisCity/map.bin12
-rw-r--r--data/maps/SootopolisCity_Gym_1F/border.bin1
-rw-r--r--data/maps/SootopolisCity_Gym_1F/header.s15
-rw-r--r--data/maps/SootopolisCity_Gym_1F/map.bin3
-rw-r--r--data/maps/SootopolisCity_Gym_B1F/border.bin1
-rw-r--r--data/maps/SootopolisCity_Gym_B1F/header.s15
-rw-r--r--data/maps/SootopolisCity_Gym_B1F/map.bin1
-rw-r--r--data/maps/SootopolisCity_House1/border.bin1
-rw-r--r--data/maps/SootopolisCity_House1/header.s15
-rw-r--r--data/maps/SootopolisCity_House1/map.bin1
-rw-r--r--data/maps/SootopolisCity_House2/border.bin1
-rw-r--r--data/maps/SootopolisCity_House2/header.s15
-rw-r--r--data/maps/SootopolisCity_House2/map.bin1
-rw-r--r--data/maps/SootopolisCity_House3/border.bin1
-rw-r--r--data/maps/SootopolisCity_House3/header.s15
-rw-r--r--data/maps/SootopolisCity_House3/map.bin1
-rw-r--r--data/maps/SootopolisCity_House4/header.s15
-rw-r--r--data/maps/SootopolisCity_House5/header.s15
-rw-r--r--data/maps/SootopolisCity_House6/header.s15
-rw-r--r--data/maps/SootopolisCity_House7/header.s15
-rw-r--r--data/maps/SootopolisCity_House8/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/SootopolisCity_House8/header.s15
-rw-r--r--data/maps/SootopolisCity_House8/map.bin1
-rw-r--r--data/maps/SootopolisCity_Mart/header.s15
-rw-r--r--data/maps/SootopolisCity_PokemonCenter_1F/header.s15
-rw-r--r--data/maps/SootopolisCity_PokemonCenter_2F/header.s15
-rw-r--r--data/maps/SouthernIsland_Exterior/border.bin1
-rw-r--r--data/maps/SouthernIsland_Exterior/header.s15
-rw-r--r--data/maps/SouthernIsland_Exterior/map.bin1
-rw-r--r--data/maps/SouthernIsland_Interior/border.bin1
-rw-r--r--data/maps/SouthernIsland_Interior/header.s15
-rw-r--r--data/maps/SouthernIsland_Interior/map.bin1
-rw-r--r--data/maps/TradeCenter/border.bin1
-rw-r--r--data/maps/TradeCenter/header.s15
-rw-r--r--data/maps/TradeCenter/map.bin2
-rw-r--r--data/maps/Underwater1/border.bin1
-rw-r--r--data/maps/Underwater1/connections.s8
-rw-r--r--data/maps/Underwater1/header.s15
-rw-r--r--data/maps/Underwater1/map.bin17
-rw-r--r--data/maps/Underwater2/border.bin1
-rw-r--r--data/maps/Underwater2/connections.s9
-rw-r--r--data/maps/Underwater2/header.s15
-rw-r--r--data/maps/Underwater2/map.bin35
-rw-r--r--data/maps/Underwater3/border.bin1
-rw-r--r--data/maps/Underwater3/connections.s9
-rw-r--r--data/maps/Underwater3/header.s15
-rw-r--r--data/maps/Underwater3/map.bin1
-rw-r--r--data/maps/Underwater4/border.bin1
-rw-r--r--data/maps/Underwater4/connections.s8
-rw-r--r--data/maps/Underwater4/header.s15
-rw-r--r--data/maps/Underwater4/map.bin1
-rw-r--r--data/maps/Underwater_Route134/border.bin1
-rw-r--r--data/maps/Underwater_Route134/header.s15
-rw-r--r--data/maps/Underwater_Route134/map.bin2
-rw-r--r--data/maps/Underwater_SeafloorCavern/border.bin1
-rw-r--r--data/maps/Underwater_SeafloorCavern/header.s15
-rw-r--r--data/maps/Underwater_SeafloorCavern/map.bin2
-rw-r--r--data/maps/Underwater_SealedChamber/border.bin1
-rw-r--r--data/maps/Underwater_SealedChamber/header.s15
-rw-r--r--data/maps/Underwater_SealedChamber/map.bin1
-rw-r--r--data/maps/Underwater_SootopolisCity/border.bin1
-rw-r--r--data/maps/Underwater_SootopolisCity/header.s15
-rw-r--r--data/maps/Underwater_SootopolisCity/map.bin2
-rw-r--r--data/maps/UnknownMap_25_29/border.bin1
-rw-r--r--data/maps/UnknownMap_25_29/header.s15
-rw-r--r--data/maps/UnknownMap_25_29/map.bin1
-rw-r--r--data/maps/UnknownMap_25_30/border.bin1
-rw-r--r--data/maps/UnknownMap_25_30/header.s15
-rw-r--r--data/maps/UnknownMap_25_30/map.bin1
-rw-r--r--data/maps/UnknownMap_25_31/border.bin1
-rw-r--r--data/maps/UnknownMap_25_31/header.s15
-rw-r--r--data/maps/UnknownMap_25_31/map.bin1
-rw-r--r--data/maps/UnknownMap_25_32/border.bin1
-rw-r--r--data/maps/UnknownMap_25_32/header.s15
-rw-r--r--data/maps/UnknownMap_25_32/map.bin1
-rw-r--r--data/maps/UnknownMap_25_33/border.bin1
-rw-r--r--data/maps/UnknownMap_25_33/header.s15
-rw-r--r--data/maps/UnknownMap_25_33/map.bin1
-rw-r--r--data/maps/UnknownMap_25_34/border.bin1
-rw-r--r--data/maps/UnknownMap_25_34/header.s15
-rw-r--r--data/maps/UnknownMap_25_34/map.bin1
-rw-r--r--data/maps/VerdanturfTown/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/VerdanturfTown/connections.s8
-rw-r--r--data/maps/VerdanturfTown/header.s15
-rw-r--r--data/maps/VerdanturfTown/map.binbin0 -> 800 bytes
-rw-r--r--data/maps/VerdanturfTown_ContestHall/header.s15
-rw-r--r--data/maps/VerdanturfTown_ContestLobby/header.s15
-rw-r--r--data/maps/VerdanturfTown_FriendshipRatersHouse/header.s15
-rw-r--r--data/maps/VerdanturfTown_House/header.s15
-rw-r--r--data/maps/VerdanturfTown_Mart/header.s15
-rw-r--r--data/maps/VerdanturfTown_PokemonCenter_1F/header.s15
-rw-r--r--data/maps/VerdanturfTown_PokemonCenter_2F/header.s15
-rw-r--r--data/maps/VerdanturfTown_WandasHouse/border.binbin0 -> 8 bytes
-rw-r--r--data/maps/VerdanturfTown_WandasHouse/header.s15
-rw-r--r--data/maps/VerdanturfTown_WandasHouse/map.binbin0 -> 272 bytes
-rw-r--r--data/maps/VictoryRoad_1F/border.bin1
-rw-r--r--data/maps/VictoryRoad_1F/header.s15
-rw-r--r--data/maps/VictoryRoad_1F/map.bin10
-rw-r--r--data/maps/VictoryRoad_B1F/border.bin1
-rw-r--r--data/maps/VictoryRoad_B1F/header.s15
-rw-r--r--data/maps/VictoryRoad_B1F/map.bin25
-rw-r--r--data/maps/VictoryRoad_B2F/border.bin1
-rw-r--r--data/maps/VictoryRoad_B2F/header.s15
-rw-r--r--data/maps/VictoryRoad_B2F/map.bin1
-rw-r--r--data/maps/_assets.s4584
-rw-r--r--data/maps/_groups.s462
-rw-r--r--data/maps/events/AbandonedShip_CaptainsOffice.s11
-rw-r--r--data/maps/events/AbandonedShip_Corridors_1F.s21
-rw-r--r--data/maps/events/AbandonedShip_Corridors_B1F.s20
-rw-r--r--data/maps/events/AbandonedShip_Deck.s10
-rw-r--r--data/maps/events/AbandonedShip_HiddenFloorCorridors.s17
-rw-r--r--data/maps/events/AbandonedShip_HiddenFloorRooms.s32
-rw-r--r--data/maps/events/AbandonedShip_Room_B1F.s10
-rw-r--r--data/maps/events/AbandonedShip_Rooms2_1F.s13
-rw-r--r--data/maps/events/AbandonedShip_Rooms2_B1F.s13
-rw-r--r--data/maps/events/AbandonedShip_Rooms_1F.s15
-rw-r--r--data/maps/events/AbandonedShip_Rooms_B1F.s12
-rw-r--r--data/maps/events/AbandonedShip_Underwater1.s7
-rw-r--r--data/maps/events/AbandonedShip_Underwater2.s6
-rw-r--r--data/maps/events/AncientTomb.s16
-rw-r--r--data/maps/events/AquaHideout_1F.s13
-rw-r--r--data/maps/events/AquaHideout_B1F.s40
-rw-r--r--data/maps/events/AquaHideout_B2F.s26
-rw-r--r--data/maps/events/BattleTower_BattleRoom.s11
-rw-r--r--data/maps/events/BattleTower_Corridor.s6
-rw-r--r--data/maps/events/BattleTower_Elevator.s6
-rw-r--r--data/maps/events/BattleTower_Lobby.s19
-rw-r--r--data/maps/events/BattleTower_Outside.s16
-rw-r--r--data/maps/events/CaveOfOrigin_1F.s12
-rw-r--r--data/maps/events/CaveOfOrigin_B1F.s12
-rw-r--r--data/maps/events/CaveOfOrigin_B2F.s12
-rw-r--r--data/maps/events/CaveOfOrigin_B3F.s15
-rw-r--r--data/maps/events/CaveOfOrigin_B4F.s14
-rw-r--r--data/maps/events/CaveOfOrigin_Entrance.s7
-rw-r--r--data/maps/events/DesertRuins.s16
-rw-r--r--data/maps/events/DewfordTown.s24
-rw-r--r--data/maps/events/DewfordTown_Gym.s20
-rw-r--r--data/maps/events/DewfordTown_Hall.s22
-rw-r--r--data/maps/events/DewfordTown_House1.s12
-rw-r--r--data/maps/events/DewfordTown_House2.s11
-rw-r--r--data/maps/events/DewfordTown_PokemonCenter_1F.s13
-rw-r--r--data/maps/events/DewfordTown_PokemonCenter_2F.s15
-rw-r--r--data/maps/events/DoubleBattleColosseum.s15
-rw-r--r--data/maps/events/EverGrandeCity.s29
-rw-r--r--data/maps/events/EverGrandeCity_ChampionsRoom.s12
-rw-r--r--data/maps/events/EverGrandeCity_Corridor1.s9
-rw-r--r--data/maps/events/EverGrandeCity_Corridor2.s9
-rw-r--r--data/maps/events/EverGrandeCity_Corridor3.s9
-rw-r--r--data/maps/events/EverGrandeCity_Corridor4.s7
-rw-r--r--data/maps/events/EverGrandeCity_Corridor5.s9
-rw-r--r--data/maps/events/EverGrandeCity_DrakesRoom.s10
-rw-r--r--data/maps/events/EverGrandeCity_GlaciasRoom.s10
-rw-r--r--data/maps/events/EverGrandeCity_HallOfFame.s9
-rw-r--r--data/maps/events/EverGrandeCity_PhoebesRoom.s10
-rw-r--r--data/maps/events/EverGrandeCity_PokemonCenter_1F.s13
-rw-r--r--data/maps/events/EverGrandeCity_PokemonCenter_2F.s15
-rw-r--r--data/maps/events/EverGrandeCity_PokemonLeague.s15
-rw-r--r--data/maps/events/EverGrandeCity_SidneysRoom.s10
-rw-r--r--data/maps/events/FallarborTown.s26
-rw-r--r--data/maps/events/FallarborTown_ContestHall.s16
-rw-r--r--data/maps/events/FallarborTown_ContestLobby.s22
-rw-r--r--data/maps/events/FallarborTown_House1.s11
-rw-r--r--data/maps/events/FallarborTown_House2.s10
-rw-r--r--data/maps/events/FallarborTown_Mart.s13
-rw-r--r--data/maps/events/FallarborTown_PokemonCenter_1F.s14
-rw-r--r--data/maps/events/FallarborTown_PokemonCenter_2F.s15
-rw-r--r--data/maps/events/FieryPath.s17
-rw-r--r--data/maps/events/FortreeCity.s31
-rw-r--r--data/maps/events/FortreeCity_DecorationShop.s13
-rw-r--r--data/maps/events/FortreeCity_Gym.s19
-rw-r--r--data/maps/events/FortreeCity_House1.s12
-rw-r--r--data/maps/events/FortreeCity_House2.s10
-rw-r--r--data/maps/events/FortreeCity_House3.s11
-rw-r--r--data/maps/events/FortreeCity_House4.s12
-rw-r--r--data/maps/events/FortreeCity_House5.s12
-rw-r--r--data/maps/events/FortreeCity_Mart.s13
-rw-r--r--data/maps/events/FortreeCity_PokemonCenter_1F.s14
-rw-r--r--data/maps/events/FortreeCity_PokemonCenter_2F.s15
-rw-r--r--data/maps/events/GraniteCave_1F.s13
-rw-r--r--data/maps/events/GraniteCave_B1F.s15
-rw-r--r--data/maps/events/GraniteCave_B2F.s25
-rw-r--r--data/maps/events/GraniteCave_StevensRoom.s9
-rw-r--r--data/maps/events/InsideOfTruck.s25
-rw-r--r--data/maps/events/IslandCave.s16
-rw-r--r--data/maps/events/JaggedPass.s26
-rw-r--r--data/maps/events/LavaridgeTown.s35
-rw-r--r--data/maps/events/LavaridgeTown_Gym_1F.s40
-rw-r--r--data/maps/events/LavaridgeTown_Gym_B1F.s25
-rw-r--r--data/maps/events/LavaridgeTown_HerbShop.s12
-rw-r--r--data/maps/events/LavaridgeTown_House.s11
-rw-r--r--data/maps/events/LavaridgeTown_Mart.s12
-rw-r--r--data/maps/events/LavaridgeTown_PokemonCenter_1F.s15
-rw-r--r--data/maps/events/LavaridgeTown_PokemonCenter_2F.s15
-rw-r--r--data/maps/events/LilycoveCity.s54
-rw-r--r--data/maps/events/LilycoveCity_ContestHall.s51
-rw-r--r--data/maps/events/LilycoveCity_ContestLobby.s33
-rw-r--r--data/maps/events/LilycoveCity_CoveLilyMotel_1F.s14
-rw-r--r--data/maps/events/LilycoveCity_CoveLilyMotel_2F.s14
-rw-r--r--data/maps/events/LilycoveCity_DepartmentStoreElevator.s10
-rw-r--r--data/maps/events/LilycoveCity_DepartmentStoreRooftop.s15
-rw-r--r--data/maps/events/LilycoveCity_DepartmentStore_1F.s20
-rw-r--r--data/maps/events/LilycoveCity_DepartmentStore_2F.s15
-rw-r--r--data/maps/events/LilycoveCity_DepartmentStore_3F.s15
-rw-r--r--data/maps/events/LilycoveCity_DepartmentStore_4F.s15
-rw-r--r--data/maps/events/LilycoveCity_DepartmentStore_5F.s17
-rw-r--r--data/maps/events/LilycoveCity_EmptyMap.s6
-rw-r--r--data/maps/events/LilycoveCity_Harbor.s15
-rw-r--r--data/maps/events/LilycoveCity_House1.s11
-rw-r--r--data/maps/events/LilycoveCity_House2.s10
-rw-r--r--data/maps/events/LilycoveCity_House3.s15
-rw-r--r--data/maps/events/LilycoveCity_House4.s11
-rw-r--r--data/maps/events/LilycoveCity_LilycoveMuseum_1F.s38
-rw-r--r--data/maps/events/LilycoveCity_LilycoveMuseum_2F.s26
-rw-r--r--data/maps/events/LilycoveCity_MoveDeletersHouse.s10
-rw-r--r--data/maps/events/LilycoveCity_PokemonCenter_1F.s13
-rw-r--r--data/maps/events/LilycoveCity_PokemonCenter_2F.s15
-rw-r--r--data/maps/events/LilycoveCity_PokemonTrainerFanClub.s17
-rw-r--r--data/maps/events/LilycoveCity_UnusedMart.s7
-rw-r--r--data/maps/events/LinkContestRoom1.s18
-rw-r--r--data/maps/events/LinkContestRoom2.s1
-rw-r--r--data/maps/events/LinkContestRoom3.s1
-rw-r--r--data/maps/events/LinkContestRoom4.s1
-rw-r--r--data/maps/events/LinkContestRoom5.s1
-rw-r--r--data/maps/events/LinkContestRoom6.s1
-rw-r--r--data/maps/events/LittlerootTown.s33
-rw-r--r--data/maps/events/LittlerootTown_BrendansHouse_1F.s18
-rw-r--r--data/maps/events/LittlerootTown_BrendansHouse_2F.s28
-rw-r--r--data/maps/events/LittlerootTown_MaysHouse_1F.s18
-rw-r--r--data/maps/events/LittlerootTown_MaysHouse_2F.s29
-rw-r--r--data/maps/events/LittlerootTown_ProfessorBirchsLab.s29
-rw-r--r--data/maps/events/MagmaHideout_1F.s12
-rw-r--r--data/maps/events/MagmaHideout_B1F.s44
-rw-r--r--data/maps/events/MagmaHideout_B2F.s26
-rw-r--r--data/maps/events/MauvilleCity.s33
-rw-r--r--data/maps/events/MauvilleCity_BikeShop.s15
-rw-r--r--data/maps/events/MauvilleCity_GameCorner.s47
-rw-r--r--data/maps/events/MauvilleCity_Gym.s24
-rw-r--r--data/maps/events/MauvilleCity_House1.s10
-rw-r--r--data/maps/events/MauvilleCity_House2.s10
-rw-r--r--data/maps/events/MauvilleCity_Mart.s12
-rw-r--r--data/maps/events/MauvilleCity_PokemonCenter_1F.s15
-rw-r--r--data/maps/events/MauvilleCity_PokemonCenter_2F.s16
-rw-r--r--data/maps/events/MeteorFalls_1F_1R.s29
-rw-r--r--data/maps/events/MeteorFalls_1F_2R.s18
-rw-r--r--data/maps/events/MeteorFalls_B1F_1R.s11
-rw-r--r--data/maps/events/MeteorFalls_B1F_2R.s9
-rw-r--r--data/maps/events/MossdeepCity.s42
-rw-r--r--data/maps/events/MossdeepCity_GameCorner_1F.s14
-rw-r--r--data/maps/events/MossdeepCity_GameCorner_B1F.s9
-rw-r--r--data/maps/events/MossdeepCity_Gym.s29
-rw-r--r--data/maps/events/MossdeepCity_House1.s11
-rw-r--r--data/maps/events/MossdeepCity_House2.s12
-rw-r--r--data/maps/events/MossdeepCity_House3.s10
-rw-r--r--data/maps/events/MossdeepCity_House4.s12
-rw-r--r--data/maps/events/MossdeepCity_Mart.s13
-rw-r--r--data/maps/events/MossdeepCity_PokemonCenter_1F.s13
-rw-r--r--data/maps/events/MossdeepCity_PokemonCenter_2F.s16
-rw-r--r--data/maps/events/MossdeepCity_SpaceCenter_1F.s15
-rw-r--r--data/maps/events/MossdeepCity_SpaceCenter_2F.s11
-rw-r--r--data/maps/events/MossdeepCity_StevensHouse.s19
-rw-r--r--data/maps/events/MtChimney.s43
-rw-r--r--data/maps/events/MtChimney_CableCarStation.s11
-rw-r--r--data/maps/events/MtPyre_1F.s16
-rw-r--r--data/maps/events/MtPyre_2F.s18
-rw-r--r--data/maps/events/MtPyre_3F.s16
-rw-r--r--data/maps/events/MtPyre_4F.s15
-rw-r--r--data/maps/events/MtPyre_5F.s14
-rw-r--r--data/maps/events/MtPyre_6F.s11
-rw-r--r--data/maps/events/MtPyre_Exterior.s23
-rw-r--r--data/maps/events/MtPyre_Summit.s28
-rw-r--r--data/maps/events/NewMauville_Entrance.s10
-rw-r--r--data/maps/events/NewMauville_Inside.s38
-rw-r--r--data/maps/events/OldaleTown.s28
-rw-r--r--data/maps/events/OldaleTown_House1.s10
-rw-r--r--data/maps/events/OldaleTown_House2.s11
-rw-r--r--data/maps/events/OldaleTown_Mart.s12
-rw-r--r--data/maps/events/OldaleTown_PokemonCenter_1F.s14
-rw-r--r--data/maps/events/OldaleTown_PokemonCenter_2F.s15
-rw-r--r--data/maps/events/PacifidlogTown.s21
-rw-r--r--data/maps/events/PacifidlogTown_House1.s11
-rw-r--r--data/maps/events/PacifidlogTown_House2.s12
-rw-r--r--data/maps/events/PacifidlogTown_House3.s11
-rw-r--r--data/maps/events/PacifidlogTown_House4.s12
-rw-r--r--data/maps/events/PacifidlogTown_House5.s11
-rw-r--r--data/maps/events/PacifidlogTown_PokemonCenter_1F.s14
-rw-r--r--data/maps/events/PacifidlogTown_PokemonCenter_2F.s15
-rw-r--r--data/maps/events/PetalburgCity.s38
-rw-r--r--data/maps/events/PetalburgCity_Gym.s71
-rw-r--r--data/maps/events/PetalburgCity_House1.s11
-rw-r--r--data/maps/events/PetalburgCity_House2.s11
-rw-r--r--data/maps/events/PetalburgCity_Mart.s13
-rw-r--r--data/maps/events/PetalburgCity_PokemonCenter_1F.s15
-rw-r--r--data/maps/events/PetalburgCity_PokemonCenter_2F.s15
-rw-r--r--data/maps/events/PetalburgCity_WallysHouse.s11
-rw-r--r--data/maps/events/PetalburgWoods.s38
-rw-r--r--data/maps/events/RecordCorner.s18
-rw-r--r--data/maps/events/Route101.s25
-rw-r--r--data/maps/events/Route102.s18
-rw-r--r--data/maps/events/Route103.s23
-rw-r--r--data/maps/events/Route104.s59
-rw-r--r--data/maps/events/Route104_MrBrineysHouse.s11
-rw-r--r--data/maps/events/Route104_PrettyPetalFlowerShop.s12
-rw-r--r--data/maps/events/Route104_Prototype.s24
-rw-r--r--data/maps/events/Route104_PrototypePrettyPetalFlowerShop.s10
-rw-r--r--data/maps/events/Route105.s17
-rw-r--r--data/maps/events/Route106.s19
-rw-r--r--data/maps/events/Route107.s11
-rw-r--r--data/maps/events/Route108.s15
-rw-r--r--data/maps/events/Route109.s38
-rw-r--r--data/maps/events/Route109_SeashoreHouse.s13
-rw-r--r--data/maps/events/Route110.s70
-rw-r--r--data/maps/events/Route110_SeasideCyclingRoadNorthEntrance.s16
-rw-r--r--data/maps/events/Route110_SeasideCyclingRoadSouthEntrance.s16
-rw-r--r--data/maps/events/Route110_TrickHouseCorridor.s9
-rw-r--r--data/maps/events/Route110_TrickHouseEnd.s16
-rw-r--r--data/maps/events/Route110_TrickHouseEntrance.s20
-rw-r--r--data/maps/events/Route110_TrickHousePuzzle1.s32
-rw-r--r--data/maps/events/Route110_TrickHousePuzzle2.s24
-rw-r--r--data/maps/events/Route110_TrickHousePuzzle3.s33
-rw-r--r--data/maps/events/Route110_TrickHousePuzzle4.s28
-rw-r--r--data/maps/events/Route110_TrickHousePuzzle5.s34
-rw-r--r--data/maps/events/Route110_TrickHousePuzzle6.s17
-rw-r--r--data/maps/events/Route110_TrickHousePuzzle7.s25
-rw-r--r--data/maps/events/Route110_TrickHousePuzzle8.s17
-rw-r--r--data/maps/events/Route111.s101
-rw-r--r--data/maps/events/Route111_OldLadysRestStop.s10
-rw-r--r--data/maps/events/Route111_WinstrateFamilysHouse.s13
-rw-r--r--data/maps/events/Route112.s30
-rw-r--r--data/maps/events/Route112_CableCarStation.s11
-rw-r--r--data/maps/events/Route113.s49
-rw-r--r--data/maps/events/Route113_GlassWorkshop.s11
-rw-r--r--data/maps/events/Route114.s47
-rw-r--r--data/maps/events/Route114_FossilManiacsHouse.s17
-rw-r--r--data/maps/events/Route114_FossilManiacsTunnel.s10
-rw-r--r--data/maps/events/Route114_LanettesHouse.s15
-rw-r--r--data/maps/events/Route115.s40
-rw-r--r--data/maps/events/Route116.s48
-rw-r--r--data/maps/events/Route116_TunnelersRestHouse.s12
-rw-r--r--data/maps/events/Route117.s35
-rw-r--r--data/maps/events/Route117_PokemonDayCare.s10
-rw-r--r--data/maps/events/Route118.s41
-rw-r--r--data/maps/events/Route119.s95
-rw-r--r--data/maps/events/Route119_House.s16
-rw-r--r--data/maps/events/Route119_WeatherInstitute_1F.s21
-rw-r--r--data/maps/events/Route119_WeatherInstitute_2F.s14
-rw-r--r--data/maps/events/Route120.s87
-rw-r--r--data/maps/events/Route121.s47
-rw-r--r--data/maps/events/Route121_SafariZoneEntrance.s20
-rw-r--r--data/maps/events/Route122.s6
-rw-r--r--data/maps/events/Route123.s77
-rw-r--r--data/maps/events/Route123_BerryMastersHouse.s11
-rw-r--r--data/maps/events/Route124.s21
-rw-r--r--data/maps/events/Route125.s21
-rw-r--r--data/maps/events/Route126.s10
-rw-r--r--data/maps/events/Route127.s21
-rw-r--r--data/maps/events/Route128.s18
-rw-r--r--data/maps/events/Route129.s9
-rw-r--r--data/maps/events/Route130.s8
-rw-r--r--data/maps/events/Route131.s14
-rw-r--r--data/maps/events/Route132.s10
-rw-r--r--data/maps/events/Route133.s12
-rw-r--r--data/maps/events/Route134.s10
-rw-r--r--data/maps/events/RustboroCity.s60
-rw-r--r--data/maps/events/RustboroCity_CuttersHouse.s11
-rw-r--r--data/maps/events/RustboroCity_DevonCorp_1F.s13
-rw-r--r--data/maps/events/RustboroCity_DevonCorp_2F.s14
-rw-r--r--data/maps/events/RustboroCity_DevonCorp_3F.s15
-rw-r--r--data/maps/events/RustboroCity_Flat1_1F.s12
-rw-r--r--data/maps/events/RustboroCity_Flat1_2F.s9
-rw-r--r--data/maps/events/RustboroCity_Flat2_1F.s12
-rw-r--r--data/maps/events/RustboroCity_Flat2_2F.s11
-rw-r--r--data/maps/events/RustboroCity_Flat2_3F.s10
-rw-r--r--data/maps/events/RustboroCity_Gym.s17
-rw-r--r--data/maps/events/RustboroCity_House1.s11
-rw-r--r--data/maps/events/RustboroCity_House2.s11
-rw-r--r--data/maps/events/RustboroCity_House3.s12
-rw-r--r--data/maps/events/RustboroCity_Mart.s13
-rw-r--r--data/maps/events/RustboroCity_PokemonCenter_1F.s14
-rw-r--r--data/maps/events/RustboroCity_PokemonCenter_2F.s15
-rw-r--r--data/maps/events/RustboroCity_PokemonSchool.s22
-rw-r--r--data/maps/events/RusturfTunnel.s27
-rw-r--r--data/maps/events/SSTidalCorridor.s34
-rw-r--r--data/maps/events/SSTidalLowerDeck.s13
-rw-r--r--data/maps/events/SSTidalRooms.s31
-rw-r--r--data/maps/events/SafariZone_Northeast.s14
-rw-r--r--data/maps/events/SafariZone_Northwest.s7
-rw-r--r--data/maps/events/SafariZone_RestHouse.s12
-rw-r--r--data/maps/events/SafariZone_Southeast.s12
-rw-r--r--data/maps/events/SafariZone_Southwest.s13
-rw-r--r--data/maps/events/ScorchedSlab.s9
-rw-r--r--data/maps/events/SeafloorCavern_Entrance.s7
-rw-r--r--data/maps/events/SeafloorCavern_Room1.s15
-rw-r--r--data/maps/events/SeafloorCavern_Room2.s20
-rw-r--r--data/maps/events/SeafloorCavern_Room3.s20
-rw-r--r--data/maps/events/SeafloorCavern_Room4.s12
-rw-r--r--data/maps/events/SeafloorCavern_Room5.s16
-rw-r--r--data/maps/events/SeafloorCavern_Room6.s8
-rw-r--r--data/maps/events/SeafloorCavern_Room7.s7
-rw-r--r--data/maps/events/SeafloorCavern_Room8.s21
-rw-r--r--data/maps/events/SeafloorCavern_Room9.s18
-rw-r--r--data/maps/events/SealedChamber_InnerRoom.s17
-rw-r--r--data/maps/events/SealedChamber_OuterRoom.s37
-rw-r--r--data/maps/events/SecretBase_BlueCave1.s23
-rw-r--r--data/maps/events/SecretBase_BlueCave2.s23
-rw-r--r--data/maps/events/SecretBase_BlueCave3.s23
-rw-r--r--data/maps/events/SecretBase_BlueCave4.s23
-rw-r--r--data/maps/events/SecretBase_BrownCave1.s23
-rw-r--r--data/maps/events/SecretBase_BrownCave2.s23
-rw-r--r--data/maps/events/SecretBase_BrownCave3.s23
-rw-r--r--data/maps/events/SecretBase_BrownCave4.s23
-rw-r--r--data/maps/events/SecretBase_RedCave1.s23
-rw-r--r--data/maps/events/SecretBase_RedCave2.s23
-rw-r--r--data/maps/events/SecretBase_RedCave3.s23
-rw-r--r--data/maps/events/SecretBase_RedCave4.s23
-rw-r--r--data/maps/events/SecretBase_Shrub1.s23
-rw-r--r--data/maps/events/SecretBase_Shrub2.s23
-rw-r--r--data/maps/events/SecretBase_Shrub3.s23
-rw-r--r--data/maps/events/SecretBase_Shrub4.s23
-rw-r--r--data/maps/events/SecretBase_Tree1.s23
-rw-r--r--data/maps/events/SecretBase_Tree2.s23
-rw-r--r--data/maps/events/SecretBase_Tree3.s23
-rw-r--r--data/maps/events/SecretBase_Tree4.s23
-rw-r--r--data/maps/events/SecretBase_YellowCave1.s23
-rw-r--r--data/maps/events/SecretBase_YellowCave2.s23
-rw-r--r--data/maps/events/SecretBase_YellowCave3.s23
-rw-r--r--data/maps/events/SecretBase_YellowCave4.s23
-rw-r--r--data/maps/events/ShoalCave_HighTideEntranceRoom.s3
-rw-r--r--data/maps/events/ShoalCave_HighTideInnerRoom.s3
-rw-r--r--data/maps/events/ShoalCave_LowTideEntranceRoom.s13
-rw-r--r--data/maps/events/ShoalCave_LowTideIceRoom.s10
-rw-r--r--data/maps/events/ShoalCave_LowTideInnerRoom.s24
-rw-r--r--data/maps/events/ShoalCave_LowTideLowerRoom.s16
-rw-r--r--data/maps/events/ShoalCave_LowTideStairsRoom.s13
-rw-r--r--data/maps/events/SingleBattleColosseum.s14
-rw-r--r--data/maps/events/SkyPillar_1F.s8
-rw-r--r--data/maps/events/SkyPillar_2F.s7
-rw-r--r--data/maps/events/SkyPillar_3F.s8
-rw-r--r--data/maps/events/SkyPillar_4F.s8
-rw-r--r--data/maps/events/SkyPillar_5F.s7
-rw-r--r--data/maps/events/SkyPillar_Entrance.s7
-rw-r--r--data/maps/events/SkyPillar_Outside.s7
-rw-r--r--data/maps/events/SkyPillar_Top.s9
-rw-r--r--data/maps/events/SlateportCity.s63
-rw-r--r--data/maps/events/SlateportCity_ContestHall.s26
-rw-r--r--data/maps/events/SlateportCity_ContestLobby.s24
-rw-r--r--data/maps/events/SlateportCity_Harbor.s25
-rw-r--r--data/maps/events/SlateportCity_House1.s10
-rw-r--r--data/maps/events/SlateportCity_House2.s11
-rw-r--r--data/maps/events/SlateportCity_Mart.s12
-rw-r--r--data/maps/events/SlateportCity_OceanicMuseum_1F.s43
-rw-r--r--data/maps/events/SlateportCity_OceanicMuseum_2F.s38
-rw-r--r--data/maps/events/SlateportCity_PokemonCenter_1F.s13
-rw-r--r--data/maps/events/SlateportCity_PokemonCenter_2F.s15
-rw-r--r--data/maps/events/SlateportCity_PokemonFanClub.s17
-rw-r--r--data/maps/events/SlateportCity_SternsShipyard_1F.s14
-rw-r--r--data/maps/events/SlateportCity_SternsShipyard_2F.s11
-rw-r--r--data/maps/events/SootopolisCity.s41
-rw-r--r--data/maps/events/SootopolisCity_Gym_1F.s16
-rw-r--r--data/maps/events/SootopolisCity_Gym_B1F.s16
-rw-r--r--data/maps/events/SootopolisCity_House1.s11
-rw-r--r--data/maps/events/SootopolisCity_House2.s10
-rw-r--r--data/maps/events/SootopolisCity_House3.s11
-rw-r--r--data/maps/events/SootopolisCity_House4.s12
-rw-r--r--data/maps/events/SootopolisCity_House5.s11
-rw-r--r--data/maps/events/SootopolisCity_House6.s10
-rw-r--r--data/maps/events/SootopolisCity_House7.s11
-rw-r--r--data/maps/events/SootopolisCity_House8.s15
-rw-r--r--data/maps/events/SootopolisCity_Mart.s12
-rw-r--r--data/maps/events/SootopolisCity_PokemonCenter_1F.s13
-rw-r--r--data/maps/events/SootopolisCity_PokemonCenter_2F.s15
-rw-r--r--data/maps/events/SouthernIsland_Exterior.s14
-rw-r--r--data/maps/events/SouthernIsland_Interior.s14
-rw-r--r--data/maps/events/TradeCenter.s14
-rw-r--r--data/maps/events/Underwater1.s12
-rw-r--r--data/maps/events/Underwater2.s16
-rw-r--r--data/maps/events/Underwater3.s9
-rw-r--r--data/maps/events/Underwater4.s10
-rw-r--r--data/maps/events/Underwater_Route134.s6
-rw-r--r--data/maps/events/Underwater_SeafloorCavern.s12
-rw-r--r--data/maps/events/Underwater_SealedChamber.s9
-rw-r--r--data/maps/events/Underwater_SootopolisCity.s7
-rw-r--r--data/maps/events/UnknownMap_25_29.s1
-rw-r--r--data/maps/events/UnknownMap_25_30.s1
-rw-r--r--data/maps/events/UnknownMap_25_31.s1
-rw-r--r--data/maps/events/UnknownMap_25_32.s1
-rw-r--r--data/maps/events/UnknownMap_25_33.s1
-rw-r--r--data/maps/events/UnknownMap_25_34.s3
-rw-r--r--data/maps/events/VerdanturfTown.s28
-rw-r--r--data/maps/events/VerdanturfTown_ContestHall.s16
-rw-r--r--data/maps/events/VerdanturfTown_ContestLobby.s22
-rw-r--r--data/maps/events/VerdanturfTown_FriendshipRatersHouse.s11
-rw-r--r--data/maps/events/VerdanturfTown_House.s11
-rw-r--r--data/maps/events/VerdanturfTown_Mart.s13
-rw-r--r--data/maps/events/VerdanturfTown_PokemonCenter_1F.s13
-rw-r--r--data/maps/events/VerdanturfTown_PokemonCenter_2F.s15
-rw-r--r--data/maps/events/VerdanturfTown_WandasHouse.s14
-rw-r--r--data/maps/events/VictoryRoad_1F.s27
-rw-r--r--data/maps/events/VictoryRoad_B1F.s33
-rw-r--r--data/maps/events/VictoryRoad_B2F.s20
-rw-r--r--data/maps/scripts/AbandonedShip_CaptainsOffice.s27
-rw-r--r--data/maps/scripts/AbandonedShip_Corridors_1F.s12
-rw-r--r--data/maps/scripts/AbandonedShip_Corridors_B1F.s59
-rw-r--r--data/maps/scripts/AbandonedShip_Deck.s8
-rw-r--r--data/maps/scripts/AbandonedShip_HiddenFloorCorridors.s149
-rw-r--r--data/maps/scripts/AbandonedShip_HiddenFloorRooms.s144
-rw-r--r--data/maps/scripts/AbandonedShip_Room_B1F.s3
-rw-r--r--data/maps/scripts/AbandonedShip_Rooms2_1F.s29
-rw-r--r--data/maps/scripts/AbandonedShip_Rooms2_B1F.s7
-rw-r--r--data/maps/scripts/AbandonedShip_Rooms_1F.s7
-rw-r--r--data/maps/scripts/AbandonedShip_Rooms_B1F.s12
-rw-r--r--data/maps/scripts/AbandonedShip_Underwater1.s8
-rw-r--r--data/maps/scripts/AbandonedShip_Underwater2.s8
-rw-r--r--data/maps/scripts/AncientTomb.s72
-rw-r--r--data/maps/scripts/AquaHideout_1F.s49
-rw-r--r--data/maps/scripts/AquaHideout_B1F.s46
-rw-r--r--data/maps/scripts/AquaHideout_B2F.s77
-rw-r--r--data/maps/scripts/BattleTower_BattleRoom.s166
-rw-r--r--data/maps/scripts/BattleTower_Corridor.s59
-rw-r--r--data/maps/scripts/BattleTower_Elevator.s58
-rw-r--r--data/maps/scripts/BattleTower_Lobby.s422
-rw-r--r--data/maps/scripts/BattleTower_Outside.s95
-rw-r--r--data/maps/scripts/CaveOfOrigin_1F.s9
-rw-r--r--data/maps/scripts/CaveOfOrigin_B1F.s9
-rw-r--r--data/maps/scripts/CaveOfOrigin_B2F.s9
-rw-r--r--data/maps/scripts/CaveOfOrigin_B3F.s9
-rw-r--r--data/maps/scripts/CaveOfOrigin_B4F.s84
-rw-r--r--data/maps/scripts/CaveOfOrigin_Entrance.s3
-rw-r--r--data/maps/scripts/DesertRuins.s72
-rw-r--r--data/maps/scripts/DewfordTown.s644
-rw-r--r--data/maps/scripts/DewfordTown_Gym.s201
-rw-r--r--data/maps/scripts/DewfordTown_Hall.s269
-rw-r--r--data/maps/scripts/DewfordTown_House1.s21
-rw-r--r--data/maps/scripts/DewfordTown_House2.s30
-rw-r--r--data/maps/scripts/DewfordTown_PokemonCenter_1F.s25
-rw-r--r--data/maps/scripts/DewfordTown_PokemonCenter_2F.s18
-rw-r--r--data/maps/scripts/DoubleBattleColosseum.s3
-rw-r--r--data/maps/scripts/EverGrandeCity.s26
-rw-r--r--data/maps/scripts/EverGrandeCity_ChampionsRoom.s227
-rw-r--r--data/maps/scripts/EverGrandeCity_Corridor1.s12
-rw-r--r--data/maps/scripts/EverGrandeCity_Corridor2.s12
-rw-r--r--data/maps/scripts/EverGrandeCity_Corridor3.s12
-rw-r--r--data/maps/scripts/EverGrandeCity_Corridor4.s12
-rw-r--r--data/maps/scripts/EverGrandeCity_Corridor5.s12
-rw-r--r--data/maps/scripts/EverGrandeCity_DrakesRoom.s59
-rw-r--r--data/maps/scripts/EverGrandeCity_GlaciasRoom.s63
-rw-r--r--data/maps/scripts/EverGrandeCity_HallOfFame.s85
-rw-r--r--data/maps/scripts/EverGrandeCity_PhoebesRoom.s63
-rw-r--r--data/maps/scripts/EverGrandeCity_PokemonCenter_1F.s25
-rw-r--r--data/maps/scripts/EverGrandeCity_PokemonCenter_2F.s18
-rw-r--r--data/maps/scripts/EverGrandeCity_PokemonLeague.s126
-rw-r--r--data/maps/scripts/EverGrandeCity_SidneysRoom.s64
-rw-r--r--data/maps/scripts/FallarborTown.s57
-rw-r--r--data/maps/scripts/FallarborTown_ContestHall.s19
-rw-r--r--data/maps/scripts/FallarborTown_ContestLobby.s122
-rw-r--r--data/maps/scripts/FallarborTown_House1.s78
-rw-r--r--data/maps/scripts/FallarborTown_House2.s64
-rw-r--r--data/maps/scripts/FallarborTown_Mart.s50
-rw-r--r--data/maps/scripts/FallarborTown_PokemonCenter_1F.s82
-rw-r--r--data/maps/scripts/FallarborTown_PokemonCenter_2F.s18
-rw-r--r--data/maps/scripts/FieryPath.s8
-rw-r--r--data/maps/scripts/FortreeCity.s92
-rw-r--r--data/maps/scripts/FortreeCity_DecorationShop.s61
-rw-r--r--data/maps/scripts/FortreeCity_Gym.s104
-rw-r--r--data/maps/scripts/FortreeCity_House1.s66
-rw-r--r--data/maps/scripts/FortreeCity_House2.s46
-rw-r--r--data/maps/scripts/FortreeCity_House3.s11
-rw-r--r--data/maps/scripts/FortreeCity_House4.s68
-rw-r--r--data/maps/scripts/FortreeCity_House5.s21
-rw-r--r--data/maps/scripts/FortreeCity_Mart.s42
-rw-r--r--data/maps/scripts/FortreeCity_PokemonCenter_1F.s28
-rw-r--r--data/maps/scripts/FortreeCity_PokemonCenter_2F.s18
-rw-r--r--data/maps/scripts/GraniteCave_1F.s20
-rw-r--r--data/maps/scripts/GraniteCave_B1F.s11
-rw-r--r--data/maps/scripts/GraniteCave_B2F.s3
-rw-r--r--data/maps/scripts/GraniteCave_StevensRoom.s63
-rw-r--r--data/maps/scripts/InsideOfTruck.s53
-rw-r--r--data/maps/scripts/IslandCave.s33
-rw-r--r--data/maps/scripts/JaggedPass.s50
-rw-r--r--data/maps/scripts/LavaridgeTown.s321
-rw-r--r--data/maps/scripts/LavaridgeTown_Gym_1F.s172
-rw-r--r--data/maps/scripts/LavaridgeTown_Gym_B1F.s3
-rw-r--r--data/maps/scripts/LavaridgeTown_HerbShop.s44
-rw-r--r--data/maps/scripts/LavaridgeTown_House.s17
-rw-r--r--data/maps/scripts/LavaridgeTown_Mart.s37
-rw-r--r--data/maps/scripts/LavaridgeTown_PokemonCenter_1F.s29
-rw-r--r--data/maps/scripts/LavaridgeTown_PokemonCenter_2F.s18
-rw-r--r--data/maps/scripts/LilycoveCity.s426
-rw-r--r--data/maps/scripts/LilycoveCity_ContestHall.s256
-rw-r--r--data/maps/scripts/LilycoveCity_ContestLobby.s772
-rw-r--r--data/maps/scripts/LilycoveCity_CoveLilyMotel_1F.s77
-rw-r--r--data/maps/scripts/LilycoveCity_CoveLilyMotel_2F.s56
-rw-r--r--data/maps/scripts/LilycoveCity_DepartmentStoreElevator.s85
-rw-r--r--data/maps/scripts/LilycoveCity_DepartmentStoreRooftop.s204
-rw-r--r--data/maps/scripts/LilycoveCity_DepartmentStore_1F.s146
-rw-r--r--data/maps/scripts/LilycoveCity_DepartmentStore_2F.s70
-rw-r--r--data/maps/scripts/LilycoveCity_DepartmentStore_3F.s60
-rw-r--r--data/maps/scripts/LilycoveCity_DepartmentStore_4F.s55
-rw-r--r--data/maps/scripts/LilycoveCity_DepartmentStore_5F.s121
-rw-r--r--data/maps/scripts/LilycoveCity_EmptyMap.s3
-rw-r--r--data/maps/scripts/LilycoveCity_Harbor.s170
-rw-r--r--data/maps/scripts/LilycoveCity_House1.s17
-rw-r--r--data/maps/scripts/LilycoveCity_House2.s22
-rw-r--r--data/maps/scripts/LilycoveCity_House3.s100
-rw-r--r--data/maps/scripts/LilycoveCity_House4.s11
-rw-r--r--data/maps/scripts/LilycoveCity_LilycoveMuseum_1F.s163
-rw-r--r--data/maps/scripts/LilycoveCity_LilycoveMuseum_2F.s230
-rw-r--r--data/maps/scripts/LilycoveCity_MoveDeletersHouse.s64
-rw-r--r--data/maps/scripts/LilycoveCity_PokemonCenter_1F.s34
-rw-r--r--data/maps/scripts/LilycoveCity_PokemonCenter_2F.s18
-rw-r--r--data/maps/scripts/LilycoveCity_PokemonTrainerFanClub.s437
-rw-r--r--data/maps/scripts/LilycoveCity_UnusedMart.s3
-rw-r--r--data/maps/scripts/LinkContestRoom1.s1
-rw-r--r--data/maps/scripts/LinkContestRoom2.s1
-rw-r--r--data/maps/scripts/LinkContestRoom3.s1
-rw-r--r--data/maps/scripts/LinkContestRoom4.s1
-rw-r--r--data/maps/scripts/LinkContestRoom5.s1
-rw-r--r--data/maps/scripts/LinkContestRoom6.s1
-rw-r--r--data/maps/scripts/LittlerootTown.s881
-rw-r--r--data/maps/scripts/LittlerootTown_BrendansHouse_1F.s125
-rw-r--r--data/maps/scripts/LittlerootTown_BrendansHouse_2F.s31
-rw-r--r--data/maps/scripts/LittlerootTown_MaysHouse_1F.s157
-rw-r--r--data/maps/scripts/LittlerootTown_MaysHouse_2F.s143
-rw-r--r--data/maps/scripts/LittlerootTown_ProfessorBirchsLab.s217
-rw-r--r--data/maps/scripts/MagmaHideout_1F.s3
-rw-r--r--data/maps/scripts/MagmaHideout_B1F.s13
-rw-r--r--data/maps/scripts/MagmaHideout_B2F.s3
-rw-r--r--data/maps/scripts/MauvilleCity.s319
-rw-r--r--data/maps/scripts/MauvilleCity_BikeShop.s185
-rw-r--r--data/maps/scripts/MauvilleCity_GameCorner.s652
-rw-r--r--data/maps/scripts/MauvilleCity_Gym.s228
-rw-r--r--data/maps/scripts/MauvilleCity_House1.s20
-rw-r--r--data/maps/scripts/MauvilleCity_House2.s46
-rw-r--r--data/maps/scripts/MauvilleCity_Mart.s40
-rw-r--r--data/maps/scripts/MauvilleCity_PokemonCenter_1F.s34
-rw-r--r--data/maps/scripts/MauvilleCity_PokemonCenter_2F.s22
-rw-r--r--data/maps/scripts/MeteorFalls_1F_1R.s225
-rw-r--r--data/maps/scripts/MeteorFalls_1F_2R.s42
-rw-r--r--data/maps/scripts/MeteorFalls_B1F_1R.s3
-rw-r--r--data/maps/scripts/MeteorFalls_B1F_2R.s3
-rw-r--r--data/maps/scripts/MossdeepCity.s93
-rw-r--r--data/maps/scripts/MossdeepCity_GameCorner_1F.s187
-rw-r--r--data/maps/scripts/MossdeepCity_GameCorner_B1F.s78
-rw-r--r--data/maps/scripts/MossdeepCity_Gym.s252
-rw-r--r--data/maps/scripts/MossdeepCity_House1.s24
-rw-r--r--data/maps/scripts/MossdeepCity_House2.s55
-rw-r--r--data/maps/scripts/MossdeepCity_House3.s28
-rw-r--r--data/maps/scripts/MossdeepCity_House4.s43
-rw-r--r--data/maps/scripts/MossdeepCity_Mart.s41
-rw-r--r--data/maps/scripts/MossdeepCity_PokemonCenter_1F.s24
-rw-r--r--data/maps/scripts/MossdeepCity_PokemonCenter_2F.s22
-rw-r--r--data/maps/scripts/MossdeepCity_SpaceCenter_1F.s64
-rw-r--r--data/maps/scripts/MossdeepCity_SpaceCenter_2F.s15
-rw-r--r--data/maps/scripts/MossdeepCity_StevensHouse.s131
-rw-r--r--data/maps/scripts/MtChimney.s215
-rw-r--r--data/maps/scripts/MtChimney_CableCarStation.s88
-rw-r--r--data/maps/scripts/MtPyre_1F.s29
-rw-r--r--data/maps/scripts/MtPyre_2F.s34
-rw-r--r--data/maps/scripts/MtPyre_3F.s13
-rw-r--r--data/maps/scripts/MtPyre_4F.s8
-rw-r--r--data/maps/scripts/MtPyre_5F.s8
-rw-r--r--data/maps/scripts/MtPyre_6F.s16
-rw-r--r--data/maps/scripts/MtPyre_Exterior.s28
-rw-r--r--data/maps/scripts/MtPyre_Summit.s321
-rw-r--r--data/maps/scripts/NewMauville_Entrance.s51
-rw-r--r--data/maps/scripts/NewMauville_Inside.s208
-rw-r--r--data/maps/scripts/OldaleTown.s299
-rw-r--r--data/maps/scripts/OldaleTown_House1.s7
-rw-r--r--data/maps/scripts/OldaleTown_House2.s11
-rw-r--r--data/maps/scripts/OldaleTown_Mart.s62
-rw-r--r--data/maps/scripts/OldaleTown_PokemonCenter_1F.s39
-rw-r--r--data/maps/scripts/OldaleTown_PokemonCenter_2F.s18
-rw-r--r--data/maps/scripts/PacifidlogTown.s29
-rw-r--r--data/maps/scripts/PacifidlogTown_House1.s11
-rw-r--r--data/maps/scripts/PacifidlogTown_House2.s101
-rw-r--r--data/maps/scripts/PacifidlogTown_House3.s56
-rw-r--r--data/maps/scripts/PacifidlogTown_House4.s31
-rw-r--r--data/maps/scripts/PacifidlogTown_House5.s22
-rw-r--r--data/maps/scripts/PacifidlogTown_PokemonCenter_1F.s22
-rw-r--r--data/maps/scripts/PacifidlogTown_PokemonCenter_2F.s12
-rw-r--r--data/maps/scripts/PetalburgCity.s425
-rw-r--r--data/maps/scripts/PetalburgCity_Gym.s1049
-rw-r--r--data/maps/scripts/PetalburgCity_House1.s11
-rw-r--r--data/maps/scripts/PetalburgCity_House2.s11
-rw-r--r--data/maps/scripts/PetalburgCity_Mart.s69
-rw-r--r--data/maps/scripts/PetalburgCity_PokemonCenter_1F.s57
-rw-r--r--data/maps/scripts/PetalburgCity_PokemonCenter_2F.s18
-rw-r--r--data/maps/scripts/PetalburgCity_WallysHouse.s69
-rw-r--r--data/maps/scripts/PetalburgWoods.s284
-rw-r--r--data/maps/scripts/RecordCorner.s3
-rw-r--r--data/maps/scripts/Route101.s236
-rw-r--r--data/maps/scripts/Route102.s47
-rw-r--r--data/maps/scripts/Route103.s217
-rw-r--r--data/maps/scripts/Route104.s462
-rw-r--r--data/maps/scripts/Route104_MrBrineysHouse.s100
-rw-r--r--data/maps/scripts/Route104_PrettyPetalFlowerShop.s111
-rw-r--r--data/maps/scripts/Route104_Prototype.s113
-rw-r--r--data/maps/scripts/Route104_PrototypePrettyPetalFlowerShop.s7
-rw-r--r--data/maps/scripts/Route105.s39
-rw-r--r--data/maps/scripts/Route106.s35
-rw-r--r--data/maps/scripts/Route107.s41
-rw-r--r--data/maps/scripts/Route108.s23
-rw-r--r--data/maps/scripts/Route109.s447
-rw-r--r--data/maps/scripts/Route109_SeashoreHouse.s110
-rw-r--r--data/maps/scripts/Route110.s540
-rw-r--r--data/maps/scripts/Route110_SeasideCyclingRoadNorthEntrance.s58
-rw-r--r--data/maps/scripts/Route110_SeasideCyclingRoadSouthEntrance.s39
-rw-r--r--data/maps/scripts/Route110_TrickHouseCorridor.s8
-rw-r--r--data/maps/scripts/Route110_TrickHouseEnd.s248
-rw-r--r--data/maps/scripts/Route110_TrickHouseEntrance.s303
-rw-r--r--data/maps/scripts/Route110_TrickHousePuzzle1.s40
-rw-r--r--data/maps/scripts/Route110_TrickHousePuzzle2.s106
-rw-r--r--data/maps/scripts/Route110_TrickHousePuzzle3.s397
-rw-r--r--data/maps/scripts/Route110_TrickHousePuzzle4.s30
-rw-r--r--data/maps/scripts/Route110_TrickHousePuzzle5.s677
-rw-r--r--data/maps/scripts/Route110_TrickHousePuzzle6.s44
-rw-r--r--data/maps/scripts/Route110_TrickHousePuzzle7.s260
-rw-r--r--data/maps/scripts/Route110_TrickHousePuzzle8.s30
-rw-r--r--data/maps/scripts/Route111.s438
-rw-r--r--data/maps/scripts/Route111_OldLadysRestStop.s34
-rw-r--r--data/maps/scripts/Route111_WinstrateFamilysHouse.s61
-rw-r--r--data/maps/scripts/Route112.s61
-rw-r--r--data/maps/scripts/Route112_CableCarStation.s89
-rw-r--r--data/maps/scripts/Route113.s101
-rw-r--r--data/maps/scripts/Route113_GlassWorkshop.s309
-rw-r--r--data/maps/scripts/Route114.s133
-rw-r--r--data/maps/scripts/Route114_FossilManiacsHouse.s34
-rw-r--r--data/maps/scripts/Route114_FossilManiacsTunnel.s28
-rw-r--r--data/maps/scripts/Route114_LanettesHouse.s51
-rw-r--r--data/maps/scripts/Route115.s64
-rw-r--r--data/maps/scripts/Route116.s276
-rw-r--r--data/maps/scripts/Route116_TunnelersRestHouse.s30
-rw-r--r--data/maps/scripts/Route117.s123
-rw-r--r--data/maps/scripts/Route117_PokemonDayCare.s8
-rw-r--r--data/maps/scripts/Route118.s207
-rw-r--r--data/maps/scripts/Route119.s384
-rw-r--r--data/maps/scripts/Route119_House.s17
-rw-r--r--data/maps/scripts/Route119_WeatherInstitute_1F.s56
-rw-r--r--data/maps/scripts/Route119_WeatherInstitute_2F.s94
-rw-r--r--data/maps/scripts/Route120.s358
-rw-r--r--data/maps/scripts/Route121.s114
-rw-r--r--data/maps/scripts/Route121_SafariZoneEntrance.s139
-rw-r--r--data/maps/scripts/Route122.s3
-rw-r--r--data/maps/scripts/Route123.s103
-rw-r--r--data/maps/scripts/Route123_BerryMastersHouse.s153
-rw-r--r--data/maps/scripts/Route124.s72
-rw-r--r--data/maps/scripts/Route124_DivingTreasureHuntersHouse.s296
-rw-r--r--data/maps/scripts/Route125.s52
-rw-r--r--data/maps/scripts/Route126.s29
-rw-r--r--data/maps/scripts/Route127.s44
-rw-r--r--data/maps/scripts/Route128.s200
-rw-r--r--data/maps/scripts/Route129.s23
-rw-r--r--data/maps/scripts/Route130.s41
-rw-r--r--data/maps/scripts/Route131.s43
-rw-r--r--data/maps/scripts/Route132.s23
-rw-r--r--data/maps/scripts/Route133.s28
-rw-r--r--data/maps/scripts/Route134.s33
-rw-r--r--data/maps/scripts/RustboroCity.s499
-rw-r--r--data/maps/scripts/RustboroCity_CuttersHouse.s24
-rw-r--r--data/maps/scripts/RustboroCity_DevonCorp_1F.s81
-rw-r--r--data/maps/scripts/RustboroCity_DevonCorp_2F.s178
-rw-r--r--data/maps/scripts/RustboroCity_DevonCorp_3F.s193
-rw-r--r--data/maps/scripts/RustboroCity_Flat1_1F.s11
-rw-r--r--data/maps/scripts/RustboroCity_Flat1_2F.s7
-rw-r--r--data/maps/scripts/RustboroCity_Flat2_1F.s17
-rw-r--r--data/maps/scripts/RustboroCity_Flat2_2F.s25
-rw-r--r--data/maps/scripts/RustboroCity_Flat2_3F.s11
-rw-r--r--data/maps/scripts/RustboroCity_Gym.s84
-rw-r--r--data/maps/scripts/RustboroCity_House1.s55
-rw-r--r--data/maps/scripts/RustboroCity_House2.s11
-rw-r--r--data/maps/scripts/RustboroCity_House3.s21
-rw-r--r--data/maps/scripts/RustboroCity_Mart.s74
-rw-r--r--data/maps/scripts/RustboroCity_PokemonCenter_1F.s29
-rw-r--r--data/maps/scripts/RustboroCity_PokemonCenter_2F.s18
-rw-r--r--data/maps/scripts/RustboroCity_PokemonSchool.s166
-rw-r--r--data/maps/scripts/RusturfTunnel.s405
-rw-r--r--data/maps/scripts/SSTidalCorridor.s42
-rw-r--r--data/maps/scripts/SSTidalLowerDeck.s13
-rw-r--r--data/maps/scripts/SSTidalRooms.s66
-rw-r--r--data/maps/scripts/SafariZone_Northeast.s11
-rw-r--r--data/maps/scripts/SafariZone_Northwest.s7
-rw-r--r--data/maps/scripts/SafariZone_RestHouse.s15
-rw-r--r--data/maps/scripts/SafariZone_Southeast.s119
-rw-r--r--data/maps/scripts/SafariZone_Southwest.s11
-rw-r--r--data/maps/scripts/ScorchedSlab.s8
-rw-r--r--data/maps/scripts/SeafloorCavern_Entrance.s9
-rw-r--r--data/maps/scripts/SeafloorCavern_Room1.s18
-rw-r--r--data/maps/scripts/SeafloorCavern_Room2.s3
-rw-r--r--data/maps/scripts/SeafloorCavern_Room3.s13
-rw-r--r--data/maps/scripts/SeafloorCavern_Room4.s13
-rw-r--r--data/maps/scripts/SeafloorCavern_Room5.s3
-rw-r--r--data/maps/scripts/SeafloorCavern_Room6.s3
-rw-r--r--data/maps/scripts/SeafloorCavern_Room7.s3
-rw-r--r--data/maps/scripts/SeafloorCavern_Room8.s3
-rw-r--r--data/maps/scripts/SeafloorCavern_Room9.s215
-rw-r--r--data/maps/scripts/SealedChamber_InnerRoom.s89
-rw-r--r--data/maps/scripts/SealedChamber_OuterRoom.s132
-rw-r--r--data/maps/scripts/SecretBase_BlueCave1.s1
-rw-r--r--data/maps/scripts/SecretBase_BlueCave2.s1
-rw-r--r--data/maps/scripts/SecretBase_BlueCave3.s1
-rw-r--r--data/maps/scripts/SecretBase_BlueCave4.s1
-rw-r--r--data/maps/scripts/SecretBase_BrownCave1.s1
-rw-r--r--data/maps/scripts/SecretBase_BrownCave2.s1
-rw-r--r--data/maps/scripts/SecretBase_BrownCave3.s1
-rw-r--r--data/maps/scripts/SecretBase_BrownCave4.s1
-rw-r--r--data/maps/scripts/SecretBase_RedCave1.s1
-rw-r--r--data/maps/scripts/SecretBase_RedCave2.s1
-rw-r--r--data/maps/scripts/SecretBase_RedCave3.s1
-rw-r--r--data/maps/scripts/SecretBase_RedCave4.s1
-rw-r--r--data/maps/scripts/SecretBase_Shrub1.s1
-rw-r--r--data/maps/scripts/SecretBase_Shrub2.s1
-rw-r--r--data/maps/scripts/SecretBase_Shrub3.s1
-rw-r--r--data/maps/scripts/SecretBase_Shrub4.s1
-rw-r--r--data/maps/scripts/SecretBase_Tree1.s1
-rw-r--r--data/maps/scripts/SecretBase_Tree2.s1
-rw-r--r--data/maps/scripts/SecretBase_Tree3.s1
-rw-r--r--data/maps/scripts/SecretBase_Tree4.s1
-rw-r--r--data/maps/scripts/SecretBase_YellowCave1.s1
-rw-r--r--data/maps/scripts/SecretBase_YellowCave2.s1
-rw-r--r--data/maps/scripts/SecretBase_YellowCave3.s1
-rw-r--r--data/maps/scripts/SecretBase_YellowCave4.s24
-rw-r--r--data/maps/scripts/ShoalCave_HighTideEntranceRoom.s3
-rw-r--r--data/maps/scripts/ShoalCave_HighTideInnerRoom.s3
-rw-r--r--data/maps/scripts/ShoalCave_LowTideEntranceRoom.s103
-rw-r--r--data/maps/scripts/ShoalCave_LowTideIceRoom.s3
-rw-r--r--data/maps/scripts/ShoalCave_LowTideInnerRoom.s158
-rw-r--r--data/maps/scripts/ShoalCave_LowTideLowerRoom.s53
-rw-r--r--data/maps/scripts/ShoalCave_LowTideStairsRoom.s35
-rw-r--r--data/maps/scripts/SingleBattleColosseum.s3
-rw-r--r--data/maps/scripts/SkyPillar_1F.s3
-rw-r--r--data/maps/scripts/SkyPillar_2F.s11
-rw-r--r--data/maps/scripts/SkyPillar_3F.s3
-rw-r--r--data/maps/scripts/SkyPillar_4F.s11
-rw-r--r--data/maps/scripts/SkyPillar_5F.s3
-rw-r--r--data/maps/scripts/SkyPillar_Entrance.s8
-rw-r--r--data/maps/scripts/SkyPillar_Outside.s3
-rw-r--r--data/maps/scripts/SkyPillar_Top.s29
-rw-r--r--data/maps/scripts/SlateportCity.s616
-rw-r--r--data/maps/scripts/SlateportCity_ContestHall.s114
-rw-r--r--data/maps/scripts/SlateportCity_ContestLobby.s130
-rw-r--r--data/maps/scripts/SlateportCity_Harbor.s371
-rw-r--r--data/maps/scripts/SlateportCity_House1.s73
-rw-r--r--data/maps/scripts/SlateportCity_House2.s22
-rw-r--r--data/maps/scripts/SlateportCity_Mart.s35
-rw-r--r--data/maps/scripts/SlateportCity_OceanicMuseum_1F.s214
-rw-r--r--data/maps/scripts/SlateportCity_OceanicMuseum_2F.s269
-rw-r--r--data/maps/scripts/SlateportCity_PokemonCenter_1F.s25
-rw-r--r--data/maps/scripts/SlateportCity_PokemonCenter_2F.s18
-rw-r--r--data/maps/scripts/SlateportCity_PokemonFanClub.s264
-rw-r--r--data/maps/scripts/SlateportCity_SternsShipyard_1F.s68
-rw-r--r--data/maps/scripts/SlateportCity_SternsShipyard_2F.s11
-rw-r--r--data/maps/scripts/SootopolisCity.s209
-rw-r--r--data/maps/scripts/SootopolisCity_Gym_1F.s161
-rw-r--r--data/maps/scripts/SootopolisCity_Gym_B1F.s43
-rw-r--r--data/maps/scripts/SootopolisCity_House1.s30
-rw-r--r--data/maps/scripts/SootopolisCity_House2.s22
-rw-r--r--data/maps/scripts/SootopolisCity_House3.s22
-rw-r--r--data/maps/scripts/SootopolisCity_House4.s21
-rw-r--r--data/maps/scripts/SootopolisCity_House5.s11
-rw-r--r--data/maps/scripts/SootopolisCity_House6.s36
-rw-r--r--data/maps/scripts/SootopolisCity_House7.s11
-rw-r--r--data/maps/scripts/SootopolisCity_House8.s115
-rw-r--r--data/maps/scripts/SootopolisCity_Mart.s61
-rw-r--r--data/maps/scripts/SootopolisCity_PokemonCenter_1F.s42
-rw-r--r--data/maps/scripts/SootopolisCity_PokemonCenter_2F.s18
-rw-r--r--data/maps/scripts/SouthernIsland_Exterior.s42
-rw-r--r--data/maps/scripts/SouthernIsland_Interior.s110
-rw-r--r--data/maps/scripts/TradeCenter.s3
-rw-r--r--data/maps/scripts/Underwater1.s3
-rw-r--r--data/maps/scripts/Underwater2.s3
-rw-r--r--data/maps/scripts/Underwater3.s3
-rw-r--r--data/maps/scripts/Underwater4.s3
-rw-r--r--data/maps/scripts/Underwater_Route134.s8
-rw-r--r--data/maps/scripts/Underwater_SeafloorCavern.s46
-rw-r--r--data/maps/scripts/Underwater_SealedChamber.s28
-rw-r--r--data/maps/scripts/Underwater_SootopolisCity.s8
-rw-r--r--data/maps/scripts/UnknownMap_25_29.s1
-rw-r--r--data/maps/scripts/UnknownMap_25_30.s1
-rw-r--r--data/maps/scripts/UnknownMap_25_31.s1
-rw-r--r--data/maps/scripts/UnknownMap_25_32.s1
-rw-r--r--data/maps/scripts/UnknownMap_25_33.s1
-rw-r--r--data/maps/scripts/UnknownMap_25_34.s430
-rw-r--r--data/maps/scripts/VerdanturfTown.s66
-rw-r--r--data/maps/scripts/VerdanturfTown_ContestHall.s21
-rw-r--r--data/maps/scripts/VerdanturfTown_ContestLobby.s130
-rw-r--r--data/maps/scripts/VerdanturfTown_FriendshipRatersHouse.s64
-rw-r--r--data/maps/scripts/VerdanturfTown_House.s11
-rw-r--r--data/maps/scripts/VerdanturfTown_Mart.s43
-rw-r--r--data/maps/scripts/VerdanturfTown_PokemonCenter_1F.s26
-rw-r--r--data/maps/scripts/VerdanturfTown_PokemonCenter_2F.s20
-rw-r--r--data/maps/scripts/VerdanturfTown_WandasHouse.s92
-rw-r--r--data/maps/scripts/VictoryRoad_1F.s121
-rw-r--r--data/maps/scripts/VictoryRoad_B1F.s18
-rw-r--r--data/maps/scripts/VictoryRoad_B2F.s23
-rw-r--r--data/maps/text/AbandonedShip_CaptainsOffice.s17
-rw-r--r--data/maps/text/AbandonedShip_Corridors_1F.s15
-rw-r--r--data/maps/text/AbandonedShip_Corridors_B1F.s29
-rw-r--r--data/maps/text/AbandonedShip_HiddenFloorCorridors.s3
-rw-r--r--data/maps/text/AbandonedShip_HiddenFloorRooms.s6
-rw-r--r--data/maps/text/AbandonedShip_Rooms2_1F.s71
-rw-r--r--data/maps/text/AbandonedShip_Rooms2_B1F.s6
-rw-r--r--data/maps/text/AbandonedShip_Rooms_1F.s6
-rw-r--r--data/maps/text/AbandonedShip_Rooms_B1F.s6
-rw-r--r--data/maps/text/AncientTomb.s1
-rw-r--r--data/maps/text/AquaHideout_1F.s52
-rw-r--r--data/maps/text/AquaHideout_B1F.s40
-rw-r--r--data/maps/text/AquaHideout_B2F.s59
-rw-r--r--data/maps/text/BattleTower_BattleRoom.s16
-rw-r--r--data/maps/text/BattleTower_Lobby.s193
-rw-r--r--data/maps/text/BattleTower_Outside.s49
-rw-r--r--data/maps/text/CaveOfOrigin_B4F.s10
-rw-r--r--data/maps/text/DesertRuins.s1
-rw-r--r--data/maps/text/DewfordTown.s18
-rw-r--r--data/maps/text/DewfordTown_Gym.s108
-rw-r--r--data/maps/text/DewfordTown_Hall.s184
-rw-r--r--data/maps/text/DewfordTown_House1.s15
-rw-r--r--data/maps/text/DewfordTown_House2.s29
-rw-r--r--data/maps/text/DewfordTown_PokemonCenter_1F.s11
-rw-r--r--data/maps/text/EverGrandeCity.s12
-rw-r--r--data/maps/text/EverGrandeCity_ChampionsRoom.s101
-rw-r--r--data/maps/text/EverGrandeCity_DrakesRoom.s29
-rw-r--r--data/maps/text/EverGrandeCity_GlaciasRoom.s23
-rw-r--r--data/maps/text/EverGrandeCity_HallOfFame.s14
-rw-r--r--data/maps/text/EverGrandeCity_PhoebesRoom.s24
-rw-r--r--data/maps/text/EverGrandeCity_PokemonCenter_1F.s13
-rw-r--r--data/maps/text/EverGrandeCity_PokemonLeague.s16
-rw-r--r--data/maps/text/EverGrandeCity_SidneysRoom.s21
-rw-r--r--data/maps/text/FallarborTown.s42
-rw-r--r--data/maps/text/FallarborTown_ContestHall.s22
-rw-r--r--data/maps/text/FallarborTown_ContestLobby.s24
-rw-r--r--data/maps/text/FallarborTown_House1.s52
-rw-r--r--data/maps/text/FallarborTown_House2.s39
-rw-r--r--data/maps/text/FallarborTown_Mart.s17
-rw-r--r--data/maps/text/FallarborTown_PokemonCenter_1F.s28
-rw-r--r--data/maps/text/FieryPath.s18
-rw-r--r--data/maps/text/FortreeCity.s63
-rw-r--r--data/maps/text/FortreeCity_DecorationShop.s13
-rw-r--r--data/maps/text/FortreeCity_Gym.s117
-rw-r--r--data/maps/text/FortreeCity_House1.s36
-rw-r--r--data/maps/text/FortreeCity_House2.s40
-rw-r--r--data/maps/text/FortreeCity_House3.s18
-rw-r--r--data/maps/text/FortreeCity_House4.s31
-rw-r--r--data/maps/text/FortreeCity_House5.s14
-rw-r--r--data/maps/text/FortreeCity_Mart.s16
-rw-r--r--data/maps/text/FortreeCity_PokemonCenter_1F.s23
-rw-r--r--data/maps/text/GraniteCave_1F.s20
-rw-r--r--data/maps/text/GraniteCave_StevensRoom.s34
-rw-r--r--data/maps/text/InsideOfTruck.s5
-rw-r--r--data/maps/text/IslandCave.s1
-rw-r--r--data/maps/text/JaggedPass.s64
-rw-r--r--data/maps/text/LavaridgeTown.s130
-rw-r--r--data/maps/text/LavaridgeTown_Gym_1F.s141
-rw-r--r--data/maps/text/LavaridgeTown_HerbShop.s23
-rw-r--r--data/maps/text/LavaridgeTown_House.s9
-rw-r--r--data/maps/text/LavaridgeTown_Mart.s11
-rw-r--r--data/maps/text/LavaridgeTown_PokemonCenter_1F.s18
-rw-r--r--data/maps/text/LilycoveCity.s302
-rw-r--r--data/maps/text/LilycoveCity_ContestHall.s203
-rw-r--r--data/maps/text/LilycoveCity_ContestLobby.s11
-rw-r--r--data/maps/text/LilycoveCity_CoveLilyMotel_1F.s54
-rw-r--r--data/maps/text/LilycoveCity_CoveLilyMotel_2F.s46
-rw-r--r--data/maps/text/LilycoveCity_DepartmentStoreElevator.s6
-rw-r--r--data/maps/text/LilycoveCity_DepartmentStoreRooftop.s34
-rw-r--r--data/maps/text/LilycoveCity_DepartmentStore_1F.s28
-rw-r--r--data/maps/text/LilycoveCity_DepartmentStore_2F.s14
-rw-r--r--data/maps/text/LilycoveCity_DepartmentStore_3F.s18
-rw-r--r--data/maps/text/LilycoveCity_DepartmentStore_4F.s19
-rw-r--r--data/maps/text/LilycoveCity_DepartmentStore_5F.s16
-rw-r--r--data/maps/text/LilycoveCity_Harbor.s50
-rw-r--r--data/maps/text/LilycoveCity_House1.s9
-rw-r--r--data/maps/text/LilycoveCity_House2.s10
-rw-r--r--data/maps/text/LilycoveCity_House3.s69
-rw-r--r--data/maps/text/LilycoveCity_House4.s10
-rw-r--r--data/maps/text/LilycoveCity_LilycoveMuseum_1F.s129
-rw-r--r--data/maps/text/LilycoveCity_LilycoveMuseum_2F.s114
-rw-r--r--data/maps/text/LilycoveCity_MoveDeletersHouse.s33
-rw-r--r--data/maps/text/LilycoveCity_PokemonCenter_1F.s18
-rw-r--r--data/maps/text/LilycoveCity_PokemonTrainerFanClub.s252
-rw-r--r--data/maps/text/LinkContestRoom1.s88
-rw-r--r--data/maps/text/LittlerootTown.s95
-rw-r--r--data/maps/text/LittlerootTown_BrendansHouse_1F.s20
-rw-r--r--data/maps/text/LittlerootTown_BrendansHouse_2F.s31
-rw-r--r--data/maps/text/LittlerootTown_MaysHouse_1F.s4
-rw-r--r--data/maps/text/LittlerootTown_MaysHouse_2F.s9
-rw-r--r--data/maps/text/LittlerootTown_ProfessorBirchsLab.s157
-rw-r--r--data/maps/text/MauvilleCity.s175
-rw-r--r--data/maps/text/MauvilleCity_BikeShop.s145
-rw-r--r--data/maps/text/MauvilleCity_GameCorner.s143
-rw-r--r--data/maps/text/MauvilleCity_Gym.s117
-rw-r--r--data/maps/text/MauvilleCity_House1.s17
-rw-r--r--data/maps/text/MauvilleCity_House2.s23
-rw-r--r--data/maps/text/MauvilleCity_Mart.s14
-rw-r--r--data/maps/text/MauvilleCity_PokemonCenter_1F.s19
-rw-r--r--data/maps/text/MauvilleCity_PokemonCenter_2F.s8
-rw-r--r--data/maps/text/MeteorFalls_1F_1R.s81
-rw-r--r--data/maps/text/MeteorFalls_1F_2R.s114
-rw-r--r--data/maps/text/MossdeepCity.s87
-rw-r--r--data/maps/text/MossdeepCity_GameCorner_1F.s35
-rw-r--r--data/maps/text/MossdeepCity_GameCorner_B1F.s3
-rw-r--r--data/maps/text/MossdeepCity_Gym.s169
-rw-r--r--data/maps/text/MossdeepCity_House1.s18
-rw-r--r--data/maps/text/MossdeepCity_House2.s15
-rw-r--r--data/maps/text/MossdeepCity_House3.s24
-rw-r--r--data/maps/text/MossdeepCity_House4.s20
-rw-r--r--data/maps/text/MossdeepCity_Mart.s20
-rw-r--r--data/maps/text/MossdeepCity_PokemonCenter_1F.s11
-rw-r--r--data/maps/text/MossdeepCity_PokemonCenter_2F.s5
-rw-r--r--data/maps/text/MossdeepCity_SpaceCenter_1F.s34
-rw-r--r--data/maps/text/MossdeepCity_SpaceCenter_2F.s16
-rw-r--r--data/maps/text/MossdeepCity_StevensHouse.s84
-rw-r--r--data/maps/text/MtChimney.s108
-rw-r--r--data/maps/text/MtChimney_CableCarStation.s5
-rw-r--r--data/maps/text/MtPyre_1F.s20
-rw-r--r--data/maps/text/MtPyre_2F.s64
-rw-r--r--data/maps/text/MtPyre_3F.s28
-rw-r--r--data/maps/text/MtPyre_4F.s12
-rw-r--r--data/maps/text/MtPyre_5F.s15
-rw-r--r--data/maps/text/MtPyre_6F.s22
-rw-r--r--data/maps/text/MtPyre_Summit.s155
-rw-r--r--data/maps/text/NewMauville_Entrance.s10
-rw-r--r--data/maps/text/NewMauville_Inside.s17
-rw-r--r--data/maps/text/OldaleTown.s56
-rw-r--r--data/maps/text/OldaleTown_House1.s8
-rw-r--r--data/maps/text/OldaleTown_House2.s9
-rw-r--r--data/maps/text/OldaleTown_Mart.s14
-rw-r--r--data/maps/text/OldaleTown_PokemonCenter_1F.s23
-rw-r--r--data/maps/text/OldaleTown_PokemonCenter_2F.s12
-rw-r--r--data/maps/text/PacifidlogTown.s20
-rw-r--r--data/maps/text/PacifidlogTown_House1.s14
-rw-r--r--data/maps/text/PacifidlogTown_House2.s55
-rw-r--r--data/maps/text/PacifidlogTown_House3.s28
-rw-r--r--data/maps/text/PacifidlogTown_House4.s24
-rw-r--r--data/maps/text/PacifidlogTown_House5.s15
-rw-r--r--data/maps/text/PacifidlogTown_PokemonCenter_1F.s18
-rw-r--r--data/maps/text/PetalburgCity.s45
-rw-r--r--data/maps/text/PetalburgCity_Gym.s410
-rw-r--r--data/maps/text/PetalburgCity_House1.s17
-rw-r--r--data/maps/text/PetalburgCity_House2.s13
-rw-r--r--data/maps/text/PetalburgCity_Mart.s18
-rw-r--r--data/maps/text/PetalburgCity_PokemonCenter_1F.s40
-rw-r--r--data/maps/text/PetalburgCity_WallysHouse.s73
-rw-r--r--data/maps/text/PetalburgWoods.s146
-rw-r--r--data/maps/text/RecordCorner.s12
-rw-r--r--data/maps/text/Route101.s40
-rw-r--r--data/maps/text/Route102.s21
-rw-r--r--data/maps/text/Route103.s65
-rw-r--r--data/maps/text/Route104.s6
-rw-r--r--data/maps/text/Route104_MrBrineysHouse.s64
-rw-r--r--data/maps/text/Route104_PrettyPetalFlowerShop.s1
-rw-r--r--data/maps/text/Route104_Prototype.s116
-rw-r--r--data/maps/text/Route104_PrototypePrettyPetalFlowerShop.s7
-rw-r--r--data/maps/text/Route105.s64
-rw-r--r--data/maps/text/Route106.s5
-rw-r--r--data/maps/text/Route107.s99
-rw-r--r--data/maps/text/Route108.s48
-rw-r--r--data/maps/text/Route109.s6
-rw-r--r--data/maps/text/Route109_SeashoreHouse.s81
-rw-r--r--data/maps/text/Route110.s220
-rw-r--r--data/maps/text/Route110_SeasideCyclingRoadNorthEntrance.s1
-rw-r--r--data/maps/text/Route110_SeasideCyclingRoadSouthEntrance.s6
-rw-r--r--data/maps/text/Route110_TrickHouseEnd.s106
-rw-r--r--data/maps/text/Route110_TrickHouseEntrance.s112
-rw-r--r--data/maps/text/Route110_TrickHousePuzzle1.s12
-rw-r--r--data/maps/text/Route110_TrickHousePuzzle2.s35
-rw-r--r--data/maps/text/Route110_TrickHousePuzzle3.s37
-rw-r--r--data/maps/text/Route110_TrickHousePuzzle4.s36
-rw-r--r--data/maps/text/Route110_TrickHousePuzzle5.s127
-rw-r--r--data/maps/text/Route110_TrickHousePuzzle6.s38
-rw-r--r--data/maps/text/Route110_TrickHousePuzzle7.s38
-rw-r--r--data/maps/text/Route110_TrickHousePuzzle8.s35
-rw-r--r--data/maps/text/Route111.s120
-rw-r--r--data/maps/text/Route111_OldLadysRestStop.s20
-rw-r--r--data/maps/text/Route111_WinstrateFamilysHouse.s44
-rw-r--r--data/maps/text/Route112.s28
-rw-r--r--data/maps/text/Route112_CableCarStation.s9
-rw-r--r--data/maps/text/Route113.s31
-rw-r--r--data/maps/text/Route113_GlassWorkshop.s87
-rw-r--r--data/maps/text/Route114.s24
-rw-r--r--data/maps/text/Route114_FossilManiacsHouse.s22
-rw-r--r--data/maps/text/Route114_FossilManiacsTunnel.s27
-rw-r--r--data/maps/text/Route114_LanettesHouse.s57
-rw-r--r--data/maps/text/Route115.s14
-rw-r--r--data/maps/text/Route116.s120
-rw-r--r--data/maps/text/Route116_TunnelersRestHouse.s32
-rw-r--r--data/maps/text/Route117.s26
-rw-r--r--data/maps/text/Route117_PokemonDayCare.s74
-rw-r--r--data/maps/text/Route118.s56
-rw-r--r--data/maps/text/Route119.s103
-rw-r--r--data/maps/text/Route119_House.s10
-rw-r--r--data/maps/text/Route119_WeatherInstitute_1F.s55
-rw-r--r--data/maps/text/Route119_WeatherInstitute_2F.s72
-rw-r--r--data/maps/text/Route120.s48
-rw-r--r--data/maps/text/Route121.s18
-rw-r--r--data/maps/text/Route121_SafariZoneEntrance.s67
-rw-r--r--data/maps/text/Route123.s26
-rw-r--r--data/maps/text/Route123_BerryMastersHouse.s46
-rw-r--r--data/maps/text/Route124.s3
-rw-r--r--data/maps/text/Route124_DivingTreasureHuntersHouse.s54
-rw-r--r--data/maps/text/Route125.s107
-rw-r--r--data/maps/text/Route126.s45
-rw-r--r--data/maps/text/Route127.s84
-rw-r--r--data/maps/text/Route128.s58
-rw-r--r--data/maps/text/Route129.s52
-rw-r--r--data/maps/text/Route130.s28
-rw-r--r--data/maps/text/Route131.s88
-rw-r--r--data/maps/text/Route132.s50
-rw-r--r--data/maps/text/Route133.s61
-rw-r--r--data/maps/text/Route134.s58
-rw-r--r--data/maps/text/RustboroCity.s176
-rw-r--r--data/maps/text/RustboroCity_CuttersHouse.s28
-rw-r--r--data/maps/text/RustboroCity_DevonCorp_1F.s39
-rw-r--r--data/maps/text/RustboroCity_DevonCorp_2F.s89
-rw-r--r--data/maps/text/RustboroCity_DevonCorp_3F.s99
-rw-r--r--data/maps/text/RustboroCity_Flat1_1F.s7
-rw-r--r--data/maps/text/RustboroCity_Flat1_2F.s9
-rw-r--r--data/maps/text/RustboroCity_Flat2_1F.s7
-rw-r--r--data/maps/text/RustboroCity_Flat2_2F.s14
-rw-r--r--data/maps/text/RustboroCity_Flat2_3F.s8
-rw-r--r--data/maps/text/RustboroCity_Gym.s112
-rw-r--r--data/maps/text/RustboroCity_House1.s28
-rw-r--r--data/maps/text/RustboroCity_House2.s10
-rw-r--r--data/maps/text/RustboroCity_House3.s15
-rw-r--r--data/maps/text/RustboroCity_Mart.s18
-rw-r--r--data/maps/text/RustboroCity_PokemonCenter_1F.s17
-rw-r--r--data/maps/text/RustboroCity_PokemonSchool.s102
-rw-r--r--data/maps/text/RusturfTunnel.s106
-rw-r--r--data/maps/text/SSTidalCorridor.s1
-rw-r--r--data/maps/text/SSTidalLowerDeck.s26
-rw-r--r--data/maps/text/SSTidalRooms.s6
-rw-r--r--data/maps/text/SafariZone_Northeast.s9
-rw-r--r--data/maps/text/SafariZone_Northwest.s6
-rw-r--r--data/maps/text/SafariZone_RestHouse.s19
-rw-r--r--data/maps/text/SafariZone_Southeast.s31
-rw-r--r--data/maps/text/SafariZone_Southwest.s6
-rw-r--r--data/maps/text/SeafloorCavern_Room1.s23
-rw-r--r--data/maps/text/SeafloorCavern_Room3.s25
-rw-r--r--data/maps/text/SeafloorCavern_Room4.s11
-rw-r--r--data/maps/text/SeafloorCavern_Room9.s100
-rw-r--r--data/maps/text/SealedChamber_InnerRoom.s4
-rw-r--r--data/maps/text/SealedChamber_OuterRoom.s3
-rw-r--r--data/maps/text/SecretBase_RedCave1.s3
-rw-r--r--data/maps/text/ShoalCave_LowTideEntranceRoom.s40
-rw-r--r--data/maps/text/ShoalCave_LowTideInnerRoom.s1
-rw-r--r--data/maps/text/ShoalCave_LowTideLowerRoom.s10
-rw-r--r--data/maps/text/ShoalCave_LowTideStairsRoom.s4
-rw-r--r--data/maps/text/SingleBattleColosseum.s4
-rw-r--r--data/maps/text/SlateportCity.s322
-rw-r--r--data/maps/text/SlateportCity_ContestHall.s106
-rw-r--r--data/maps/text/SlateportCity_ContestLobby.s28
-rw-r--r--data/maps/text/SlateportCity_Harbor.s149
-rw-r--r--data/maps/text/SlateportCity_House1.s48
-rw-r--r--data/maps/text/SlateportCity_House2.s17
-rw-r--r--data/maps/text/SlateportCity_Mart.s12
-rw-r--r--data/maps/text/SlateportCity_OceanicMuseum_1F.s157
-rw-r--r--data/maps/text/SlateportCity_OceanicMuseum_2F.s158
-rw-r--r--data/maps/text/SlateportCity_PokemonCenter_1F.s14
-rw-r--r--data/maps/text/SlateportCity_PokemonFanClub.s132
-rw-r--r--data/maps/text/SlateportCity_SternsShipyard_1F.s79
-rw-r--r--data/maps/text/SlateportCity_SternsShipyard_2F.s13
-rw-r--r--data/maps/text/SootopolisCity.s158
-rw-r--r--data/maps/text/SootopolisCity_Gym_1F.s19
-rw-r--r--data/maps/text/SootopolisCity_Gym_B1F.s104
-rw-r--r--data/maps/text/SootopolisCity_House1.s13
-rw-r--r--data/maps/text/SootopolisCity_House2.s14
-rw-r--r--data/maps/text/SootopolisCity_House3.s21
-rw-r--r--data/maps/text/SootopolisCity_House4.s18
-rw-r--r--data/maps/text/SootopolisCity_House5.s9
-rw-r--r--data/maps/text/SootopolisCity_House6.s20
-rw-r--r--data/maps/text/SootopolisCity_House7.s15
-rw-r--r--data/maps/text/SootopolisCity_House8.s90
-rw-r--r--data/maps/text/SootopolisCity_Mart.s18
-rw-r--r--data/maps/text/SootopolisCity_PokemonCenter_1F.s25
-rw-r--r--data/maps/text/SouthernIsland_Exterior.s12
-rw-r--r--data/maps/text/SouthernIsland_Interior.s4
-rw-r--r--data/maps/text/TradeCenter.s4
-rw-r--r--data/maps/text/Underwater_SeafloorCavern.s8
-rw-r--r--data/maps/text/VerdanturfTown.s63
-rw-r--r--data/maps/text/VerdanturfTown_ContestHall.s27
-rw-r--r--data/maps/text/VerdanturfTown_ContestLobby.s29
-rw-r--r--data/maps/text/VerdanturfTown_FriendshipRatersHouse.s40
-rw-r--r--data/maps/text/VerdanturfTown_House.s14
-rw-r--r--data/maps/text/VerdanturfTown_Mart.s18
-rw-r--r--data/maps/text/VerdanturfTown_PokemonCenter_1F.s10
-rw-r--r--data/maps/text/VerdanturfTown_WandasHouse.s84
-rw-r--r--data/maps/text/VictoryRoad_1F.s73
-rw-r--r--data/maps/text/VictoryRoad_B1F.s36
-rw-r--r--data/maps/text/VictoryRoad_B2F.s50
-rw-r--r--data/tilesets/metatiles.s306
2156 files changed, 86648 insertions, 70 deletions
diff --git a/data/data1.s b/data/data1.s
index 6428dbac6..ea64d5fd3 100644
--- a/data/data1.s
+++ b/data/data1.s
@@ -22,32 +22,752 @@ gUnknown_0814B6EC: @ 814B6EC
.global gUnknown_0814B70C
gUnknown_0814B70C: @ 814B70C
- .incbin "baserom.gba", 0x0014b70c, 0x1bf3
+ .include "data/maps/scripts/PetalburgCity.s"
+ .include "data/maps/scripts/SlateportCity.s"
+ .include "data/maps/scripts/MauvilleCity.s"
+ .include "data/maps/scripts/RustboroCity.s"
+ .include "data/maps/scripts/FortreeCity.s"
+ .include "data/maps/scripts/LilycoveCity.s"
+ .include "data/maps/scripts/MossdeepCity.s"
+ .include "data/maps/scripts/SootopolisCity.s"
.global gUnknown_0814D2FF
gUnknown_0814D2FF: @ 814D2FF
- .incbin "baserom.gba", 0x0014d2ff, 0x551f
+ .incbin "baserom.gba", 0x14d2ff, 0x9
+
+SootopolisCity_EventScript_14D308:: @ 814D308
+ lockall
+ move 10, SootopolisCity_Movement_1A083F
+ move 255, SootopolisCity_Movement_1A0843
+ waitmove 0
+ playsfx 21
+ move 10, SootopolisCity_Movement_1A0833
+ waitmove 0
+ move 10, SootopolisCity_Movement_1A0835
+ waitmove 0
+ move 10, SootopolisCity_Movement_14D413
+ waitmove 0
+ msgbox SootopolisCity_Text_169E0F, 4
+ closebutton
+ move 10, SootopolisCity_Movement_14D417
+ move 255, SootopolisCity_Movement_14D440
+ waitmove 10
+ msgbox SootopolisCity_Text_169E82, 4
+ playsfx 21
+ move 5, SootopolisCity_Movement_1A0833
+ waitmove 0
+ move 5, SootopolisCity_Movement_1A0835
+ waitmove 0
+ msgbox SootopolisCity_Text_169F3C, 4
+ closebutton
+ pause 30
+ move 5, SootopolisCity_Movement_14D46A
+ move 10, SootopolisCity_Movement_14D41D
+ move 255, SootopolisCity_Movement_14D445
+ waitmove 0
+ move 5, SootopolisCity_Movement_1A0843
+ move 255, SootopolisCity_Movement_1A0843
+ waitmove 0
+ pause 30
+ move 10, SootopolisCity_Movement_1A0845
+ waitmove 0
+ msgbox SootopolisCity_Text_169F6B, 4
+ closebutton
+ pause 30
+ move 5, SootopolisCity_Movement_14D47C
+ move 255, SootopolisCity_Movement_14D457
+ move 10, SootopolisCity_Movement_14D42D
+ waitmove 0
+ move 5, SootopolisCity_Movement_1A083F
+ waitmove 0
+ msgbox SootopolisCity_Text_16A06C, 4
+ move 255, SootopolisCity_Movement_1A083F
+ waitmove 0
+ msgbox SootopolisCity_Text_16A13E, 4
+ moveoffscreen 5
+ spritebehave 5, 9
+ moveoffscreen 10
+ spritebehave 10, 10
+ setvar 0x405e, 2
+ releaseall
+ end
+
+SootopolisCity_Movement_14D413:: @ 814D413
+ step_left
+ step_left
+ step_left
+ step_end
+
+SootopolisCity_Movement_14D417:: @ 814D417
+ step_right
+ step_right
+ step_right
+ step_up
+ step_25
+ step_end
+
+SootopolisCity_Movement_14D41D:: @ 814D41D
+ step_down
+ step_right
+ step_down
+ step_down
+ step_down
+ step_right
+ step_right
+ step_right
+ step_right
+ step_down
+ step_down
+ step_down
+ step_down
+ step_left
+ step_left
+ step_end
+
+SootopolisCity_Movement_14D42D:: @ 814D42D
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+SootopolisCity_Movement_14D440:: @ 814D440
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+SootopolisCity_Movement_14D445:: @ 814D445
+ step_right
+ step_down
+ step_down
+ step_down
+ step_right
+ step_right
+ step_right
+ step_right
+ step_down
+ step_down
+ step_down
+ step_down
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_end
+
+SootopolisCity_Movement_14D457:: @ 814D457
+ step_14
+ step_14
+ step_left
+ step_left
+ step_left
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+SootopolisCity_Movement_14D46A:: @ 814D46A
+ step_down
+ step_down
+ step_down
+ step_right
+ step_right
+ step_right
+ step_right
+ step_down
+ step_down
+ step_down
+ step_down
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_end
+
+SootopolisCity_Movement_14D47C:: @ 814D47C
+ step_14
+ step_14
+ step_left
+ step_left
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+SootopolisCity_EventScript_14D48F:: @ 814D48F
+ msgbox SootopolisCity_Text_16A1DB, 2
+ end
+
+SootopolisCity_EventScript_14D498:: @ 814D498
+ lock
+ faceplayer
+ checkflag 113
+ jumpeq SootopolisCity_EventScript_14D4AD
+ msgbox SootopolisCity_Text_16A249, 4
+ release
+ end
+
+SootopolisCity_EventScript_14D4AD:: @ 814D4AD
+ msgbox SootopolisCity_Text_16A33E, 4
+ closebutton
+ move LAST_TALKED, SootopolisCity_Movement_1A0845
+ waitmove 0
+ pause 50
+ setanimation 0, 1
+ doanimation 30
+ pause 15
+ disappear LAST_TALKED
+ checkanimation 30
+ release
+ end
+
+ .include "data/maps/scripts/EverGrandeCity.s"
+ .include "data/maps/scripts/LittlerootTown.s"
+ .include "data/maps/scripts/OldaleTown.s"
+ .include "data/maps/scripts/DewfordTown.s"
+ .include "data/maps/scripts/LavaridgeTown.s"
+ .include "data/maps/scripts/FallarborTown.s"
+ .include "data/maps/scripts/VerdanturfTown.s"
+ .include "data/maps/scripts/PacifidlogTown.s"
+ .include "data/maps/scripts/Route101.s"
+ .include "data/maps/scripts/Route102.s"
+ .include "data/maps/scripts/Route103.s"
+ .include "data/maps/scripts/Route104.s"
+ .include "data/maps/scripts/Route105.s"
+ .include "data/maps/scripts/Route106.s"
+ .include "data/maps/scripts/Route107.s"
+ .include "data/maps/scripts/Route108.s"
+ .include "data/maps/scripts/Route109.s"
+ .include "data/maps/scripts/Route110.s"
+ .include "data/maps/scripts/Route111.s"
+ .include "data/maps/scripts/Route112.s"
+ .include "data/maps/scripts/Route113.s"
+ .include "data/maps/scripts/Route114.s"
+ .include "data/maps/scripts/Route115.s"
+ .include "data/maps/scripts/Route116.s"
+ .include "data/maps/scripts/Route117.s"
+ .include "data/maps/scripts/Route118.s"
+ .include "data/maps/scripts/Route119.s"
+ .include "data/maps/scripts/Route120.s"
+ .include "data/maps/scripts/Route121.s"
+ .include "data/maps/scripts/Route122.s"
+ .include "data/maps/scripts/Route123.s"
+ .include "data/maps/scripts/Route124.s"
+ .include "data/maps/scripts/Route125.s"
+ .include "data/maps/scripts/Route126.s"
+ .include "data/maps/scripts/Route127.s"
+ .include "data/maps/scripts/Route128.s"
+ .include "data/maps/scripts/Route129.s"
+ .include "data/maps/scripts/Route130.s"
+ .include "data/maps/scripts/Route131.s"
+ .include "data/maps/scripts/Route132.s"
+ .include "data/maps/scripts/Route133.s"
+ .include "data/maps/scripts/Route134.s"
+ .include "data/maps/scripts/Underwater1.s"
+ .include "data/maps/scripts/Underwater2.s"
+ .include "data/maps/scripts/Underwater3.s"
+ .include "data/maps/scripts/Underwater4.s"
+ .include "data/maps/scripts/LittlerootTown_BrendansHouse_1F.s"
+ .include "data/maps/scripts/LittlerootTown_BrendansHouse_2F.s"
.global gUnknown_0815281E
gUnknown_0815281E: @ 815281E
- .incbin "baserom.gba", 0x0015281e, 0x32
+
+LittlerootTown_BrendansHouse_2F_EventScript_15281E:: @ 815281E
+ lockall
+ checkgender
+ compare RESULT, 0
+ jumpeq LittlerootTown_BrendansHouse_2F_EventScript_152837
+ compare RESULT, 1
+ jumpeq LittlerootTown_BrendansHouse_2F_EventScript_15285D
+ end
+
+LittlerootTown_BrendansHouse_2F_EventScript_152837:: @ 8152837
+ setvar 0x8004, 1
+ special 214
+ playsfx 4
+ msgbox LittlerootTown_BrendansHouse_2F_Text_1A10D6, 4
+ special 249
+ waitstate
+ releaseall
+ end
.global gUnknown_08152850
gUnknown_08152850: @ 8152850
- .incbin "baserom.gba", 0x00152850, 0x3e9
+
+ .incbin "baserom.gba", 0x152850, 0xd
+
+LittlerootTown_BrendansHouse_2F_EventScript_15285D:: @ 815285D
+ msgbox LittlerootTown_BrendansHouse_2F_Text_1A100C, 4
+ releaseall
+ end
+
+LittlerootTown_BrendansHouse_2F_EventScript_152867:: @ 8152867
+LittlerootTown_MaysHouse_2F_EventScript_152867:: @ 8152867
+ msgbox LittlerootTown_BrendansHouse_2F_Text_172F9A, 3
+ end
+
+LittlerootTown_BrendansHouse_2F_EventScript_152870:: @ 8152870
+LittlerootTown_MaysHouse_2F_EventScript_152870:: @ 8152870
+ msgbox LittlerootTown_BrendansHouse_2F_Text_17306C, 3
+ end
+
+ .include "data/maps/scripts/LittlerootTown_MaysHouse_1F.s"
+ .include "data/maps/scripts/LittlerootTown_MaysHouse_2F.s"
+LittlerootTown_BrendansHouse_2F_Movement_152C11:: @ 8152C11
+ step_down
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_up
+ step_up
+ step_13
+ step_end
+
+LittlerootTown_BrendansHouse_2F_Movement_152C1C:: @ 8152C1C
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_up
+ step_13
+ step_end
+
+LittlerootTown_BrendansHouse_2F_Movement_152C25:: @ 8152C25
+ step_down
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_up
+ step_up
+ step_13
+ step_end
+
+LittlerootTown_BrendansHouse_2F_Movement_152C30:: @ 8152C30
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_up
+ step_13
+ step_end
.global gUnknown_08152C39
gUnknown_08152C39: @ 8152C39
- .incbin "baserom.gba", 0x00152c39, 0x3c
+
+LittlerootTown_MaysHouse_2F_EventScript_152C39:: @ 8152C39
+ lockall
+ checkgender
+ compare RESULT, 0
+ jumpeq LittlerootTown_MaysHouse_2F_EventScript_152C52
+ compare RESULT, 1
+ jumpeq LittlerootTown_MaysHouse_2F_EventScript_152C5C
+ end
+
+LittlerootTown_MaysHouse_2F_EventScript_152C52:: @ 8152C52
+ msgbox LittlerootTown_MaysHouse_2F_Text_1A100C, 4
+ releaseall
+ end
+
+LittlerootTown_MaysHouse_2F_EventScript_152C5C:: @ 8152C5C
+ setvar 0x8004, 2
+ special 214
+ playsfx 4
+ msgbox LittlerootTown_MaysHouse_2F_Text_1A10D6, 4
+ special 249
+ waitstate
+ releaseall
+ end
.global gUnknown_08152C75
gUnknown_08152C75: @ 8152C75
- .incbin "baserom.gba", 0x00152c75, 0xc2a4
+ .incbin "baserom.gba", 0x152c75, 0xd
+
+ .include "data/maps/scripts/LittlerootTown_ProfessorBirchsLab.s"
+ .include "data/maps/scripts/OldaleTown_House1.s"
+ .include "data/maps/scripts/OldaleTown_House2.s"
+ .include "data/maps/scripts/OldaleTown_PokemonCenter_1F.s"
+ .include "data/maps/scripts/OldaleTown_PokemonCenter_2F.s"
+ .include "data/maps/scripts/OldaleTown_Mart.s"
+ .include "data/maps/scripts/DewfordTown_House1.s"
+ .include "data/maps/scripts/DewfordTown_PokemonCenter_1F.s"
+ .include "data/maps/scripts/DewfordTown_PokemonCenter_2F.s"
+ .include "data/maps/scripts/DewfordTown_Gym.s"
+ .include "data/maps/scripts/DewfordTown_Hall.s"
+ .include "data/maps/scripts/DewfordTown_House2.s"
+ .include "data/maps/scripts/LavaridgeTown_HerbShop.s"
+ .include "data/maps/scripts/LavaridgeTown_Gym_1F.s"
+ .include "data/maps/scripts/LavaridgeTown_Gym_B1F.s"
+ .include "data/maps/scripts/LavaridgeTown_House.s"
+ .include "data/maps/scripts/LavaridgeTown_Mart.s"
+ .include "data/maps/scripts/LavaridgeTown_PokemonCenter_1F.s"
+ .include "data/maps/scripts/LavaridgeTown_PokemonCenter_2F.s"
+ .include "data/maps/scripts/FallarborTown_Mart.s"
+ .include "data/maps/scripts/FallarborTown_ContestLobby.s"
+ .include "data/maps/scripts/FallarborTown_ContestHall.s"
+ .include "data/maps/scripts/FallarborTown_PokemonCenter_1F.s"
+ .include "data/maps/scripts/FallarborTown_PokemonCenter_2F.s"
+ .include "data/maps/scripts/FallarborTown_House1.s"
+ .include "data/maps/scripts/FallarborTown_House2.s"
+ .include "data/maps/scripts/VerdanturfTown_ContestLobby.s"
+ .include "data/maps/scripts/VerdanturfTown_ContestHall.s"
+ .include "data/maps/scripts/VerdanturfTown_Mart.s"
+ .include "data/maps/scripts/VerdanturfTown_PokemonCenter_1F.s"
+ .include "data/maps/scripts/VerdanturfTown_PokemonCenter_2F.s"
+ .include "data/maps/scripts/VerdanturfTown_WandasHouse.s"
+ .include "data/maps/scripts/VerdanturfTown_FriendshipRatersHouse.s"
+ .include "data/maps/scripts/VerdanturfTown_House.s"
+ .include "data/maps/scripts/PacifidlogTown_PokemonCenter_1F.s"
+ .include "data/maps/scripts/PacifidlogTown_PokemonCenter_2F.s"
+ .include "data/maps/scripts/PacifidlogTown_House1.s"
+ .include "data/maps/scripts/PacifidlogTown_House2.s"
+ .include "data/maps/scripts/PacifidlogTown_House3.s"
+ .include "data/maps/scripts/PacifidlogTown_House4.s"
+ .include "data/maps/scripts/PacifidlogTown_House5.s"
+ .include "data/maps/scripts/PetalburgCity_WallysHouse.s"
+ .include "data/maps/scripts/PetalburgCity_Gym.s"
+ .include "data/maps/scripts/PetalburgCity_House1.s"
+ .include "data/maps/scripts/PetalburgCity_House2.s"
+ .include "data/maps/scripts/PetalburgCity_PokemonCenter_1F.s"
+ .include "data/maps/scripts/PetalburgCity_PokemonCenter_2F.s"
+ .include "data/maps/scripts/PetalburgCity_Mart.s"
+ .include "data/maps/scripts/SlateportCity_SternsShipyard_1F.s"
+ .include "data/maps/scripts/SlateportCity_SternsShipyard_2F.s"
+ .include "data/maps/scripts/SlateportCity_ContestLobby.s"
+ .include "data/maps/scripts/SlateportCity_ContestHall.s"
+ .include "data/maps/scripts/SlateportCity_House1.s"
+ .include "data/maps/scripts/SlateportCity_PokemonFanClub.s"
+ .include "data/maps/scripts/SlateportCity_OceanicMuseum_1F.s"
+ .include "data/maps/scripts/SlateportCity_OceanicMuseum_2F.s"
+ .include "data/maps/scripts/SlateportCity_Harbor.s"
+ .include "data/maps/scripts/SlateportCity_House2.s"
+ .include "data/maps/scripts/SlateportCity_PokemonCenter_1F.s"
+ .include "data/maps/scripts/SlateportCity_PokemonCenter_2F.s"
+ .include "data/maps/scripts/SlateportCity_Mart.s"
+ .include "data/maps/scripts/MauvilleCity_Gym.s"
+ .include "data/maps/scripts/MauvilleCity_BikeShop.s"
+ .include "data/maps/scripts/MauvilleCity_House1.s"
+ .include "data/maps/scripts/MauvilleCity_GameCorner.s"
+ .include "data/maps/scripts/MauvilleCity_House2.s"
+ .include "data/maps/scripts/MauvilleCity_PokemonCenter_1F.s"
+ .include "data/maps/scripts/MauvilleCity_PokemonCenter_2F.s"
+ .include "data/maps/scripts/MauvilleCity_Mart.s"
+ .include "data/maps/scripts/RustboroCity_DevonCorp_1F.s"
+ .include "data/maps/scripts/RustboroCity_DevonCorp_2F.s"
+ .include "data/maps/scripts/RustboroCity_DevonCorp_3F.s"
+ .include "data/maps/scripts/RustboroCity_Gym.s"
+ .include "data/maps/scripts/RustboroCity_PokemonSchool.s"
+ .include "data/maps/scripts/RustboroCity_PokemonCenter_1F.s"
+ .include "data/maps/scripts/RustboroCity_PokemonCenter_2F.s"
+ .include "data/maps/scripts/RustboroCity_Mart.s"
+ .include "data/maps/scripts/RustboroCity_Flat1_1F.s"
+ .include "data/maps/scripts/RustboroCity_Flat1_2F.s"
+ .include "data/maps/scripts/RustboroCity_House1.s"
+ .include "data/maps/scripts/RustboroCity_CuttersHouse.s"
+ .include "data/maps/scripts/RustboroCity_House2.s"
+ .include "data/maps/scripts/RustboroCity_Flat2_1F.s"
+ .include "data/maps/scripts/RustboroCity_Flat2_2F.s"
+ .include "data/maps/scripts/RustboroCity_Flat2_3F.s"
+ .include "data/maps/scripts/RustboroCity_House3.s"
+ .include "data/maps/scripts/FortreeCity_House1.s"
+ .include "data/maps/scripts/FortreeCity_Gym.s"
+ .include "data/maps/scripts/FortreeCity_PokemonCenter_1F.s"
+ .include "data/maps/scripts/FortreeCity_PokemonCenter_2F.s"
+ .include "data/maps/scripts/FortreeCity_Mart.s"
+ .include "data/maps/scripts/FortreeCity_House2.s"
+ .include "data/maps/scripts/FortreeCity_House3.s"
+ .include "data/maps/scripts/FortreeCity_House4.s"
+ .include "data/maps/scripts/FortreeCity_House5.s"
+ .include "data/maps/scripts/FortreeCity_DecorationShop.s"
+ .include "data/maps/scripts/LilycoveCity_CoveLilyMotel_1F.s"
+ .include "data/maps/scripts/LilycoveCity_CoveLilyMotel_2F.s"
+ .include "data/maps/scripts/LilycoveCity_LilycoveMuseum_1F.s"
+ .include "data/maps/scripts/LilycoveCity_LilycoveMuseum_2F.s"
+ .include "data/maps/scripts/LilycoveCity_ContestLobby.s"
+ .include "data/maps/scripts/LilycoveCity_ContestHall.s"
+ .include "data/maps/scripts/LilycoveCity_PokemonCenter_1F.s"
+ .include "data/maps/scripts/LilycoveCity_PokemonCenter_2F.s"
+ .include "data/maps/scripts/LilycoveCity_UnusedMart.s"
+ .include "data/maps/scripts/LilycoveCity_PokemonTrainerFanClub.s"
+ .include "data/maps/scripts/LilycoveCity_Harbor.s"
+ .include "data/maps/scripts/LilycoveCity_EmptyMap.s"
+ .include "data/maps/scripts/LilycoveCity_MoveDeletersHouse.s"
+ .include "data/maps/scripts/LilycoveCity_House1.s"
+ .include "data/maps/scripts/LilycoveCity_House2.s"
+ .include "data/maps/scripts/LilycoveCity_House3.s"
+ .include "data/maps/scripts/LilycoveCity_House4.s"
+ .include "data/maps/scripts/LilycoveCity_DepartmentStore_1F.s"
+ .include "data/maps/scripts/LilycoveCity_DepartmentStore_2F.s"
+ .include "data/maps/scripts/LilycoveCity_DepartmentStore_3F.s"
+ .include "data/maps/scripts/LilycoveCity_DepartmentStore_4F.s"
+ .include "data/maps/scripts/LilycoveCity_DepartmentStore_5F.s"
+ .include "data/maps/scripts/LilycoveCity_DepartmentStoreRooftop.s"
+ .include "data/maps/scripts/LilycoveCity_DepartmentStoreElevator.s"
+ .include "data/maps/scripts/MossdeepCity_Gym.s"
+ .include "data/maps/scripts/MossdeepCity_House1.s"
+ .include "data/maps/scripts/MossdeepCity_House2.s"
+ .include "data/maps/scripts/MossdeepCity_PokemonCenter_1F.s"
+ .include "data/maps/scripts/MossdeepCity_PokemonCenter_2F.s"
+ .include "data/maps/scripts/MossdeepCity_Mart.s"
+ .include "data/maps/scripts/MossdeepCity_House3.s"
+ .include "data/maps/scripts/MossdeepCity_StevensHouse.s"
+ .include "data/maps/scripts/MossdeepCity_House4.s"
+ .include "data/maps/scripts/MossdeepCity_SpaceCenter_1F.s"
+ .include "data/maps/scripts/MossdeepCity_SpaceCenter_2F.s"
+ .include "data/maps/scripts/MossdeepCity_GameCorner_1F.s"
+ .include "data/maps/scripts/MossdeepCity_GameCorner_B1F.s"
+ .include "data/maps/scripts/SootopolisCity_Gym_1F.s"
+ .include "data/maps/scripts/SootopolisCity_Gym_B1F.s"
+ .include "data/maps/scripts/SootopolisCity_PokemonCenter_1F.s"
+ .include "data/maps/scripts/SootopolisCity_PokemonCenter_2F.s"
+ .include "data/maps/scripts/SootopolisCity_Mart.s"
+ .include "data/maps/scripts/SootopolisCity_House1.s"
+ .include "data/maps/scripts/SootopolisCity_House2.s"
+ .include "data/maps/scripts/SootopolisCity_House3.s"
+ .include "data/maps/scripts/SootopolisCity_House4.s"
+ .include "data/maps/scripts/SootopolisCity_House5.s"
+ .include "data/maps/scripts/SootopolisCity_House6.s"
+ .include "data/maps/scripts/SootopolisCity_House7.s"
+ .include "data/maps/scripts/SootopolisCity_House8.s"
+ .include "data/maps/scripts/EverGrandeCity_SidneysRoom.s"
+ .include "data/maps/scripts/EverGrandeCity_PhoebesRoom.s"
+ .include "data/maps/scripts/EverGrandeCity_GlaciasRoom.s"
+ .include "data/maps/scripts/EverGrandeCity_DrakesRoom.s"
+ .include "data/maps/scripts/EverGrandeCity_ChampionsRoom.s"
+ .include "data/maps/scripts/EverGrandeCity_Corridor1.s"
+ .include "data/maps/scripts/EverGrandeCity_Corridor2.s"
+ .include "data/maps/scripts/EverGrandeCity_Corridor3.s"
+ .include "data/maps/scripts/EverGrandeCity_Corridor4.s"
+ .include "data/maps/scripts/EverGrandeCity_Corridor5.s"
+ .include "data/maps/scripts/EverGrandeCity_PokemonLeague.s"
+ .include "data/maps/scripts/EverGrandeCity_HallOfFame.s"
+ .include "data/maps/scripts/EverGrandeCity_PokemonCenter_1F.s"
+ .include "data/maps/scripts/EverGrandeCity_PokemonCenter_2F.s"
+ .include "data/maps/scripts/Route104_MrBrineysHouse.s"
+ .include "data/maps/scripts/Route104_PrettyPetalFlowerShop.s"
+ .include "data/maps/scripts/Route111_WinstrateFamilysHouse.s"
+ .include "data/maps/scripts/Route111_OldLadysRestStop.s"
+ .include "data/maps/scripts/Route112_CableCarStation.s"
+ .include "data/maps/scripts/MtChimney_CableCarStation.s"
+ .include "data/maps/scripts/Route114_FossilManiacsHouse.s"
+ .include "data/maps/scripts/Route114_FossilManiacsTunnel.s"
+ .include "data/maps/scripts/Route114_LanettesHouse.s"
+ .include "data/maps/scripts/Route116_TunnelersRestHouse.s"
+ .include "data/maps/scripts/Route117_PokemonDayCare.s"
+ .include "data/maps/scripts/Route121_SafariZoneEntrance.s"
+ .include "data/maps/scripts/MeteorFalls_1F_1R.s"
+ .include "data/maps/scripts/MeteorFalls_1F_2R.s"
+ .include "data/maps/scripts/MeteorFalls_B1F_1R.s"
+ .include "data/maps/scripts/MeteorFalls_B1F_2R.s"
+ .include "data/maps/scripts/RusturfTunnel.s"
+ .include "data/maps/scripts/Underwater_SootopolisCity.s"
+ .include "data/maps/scripts/DesertRuins.s"
+ .include "data/maps/scripts/GraniteCave_1F.s"
+ .include "data/maps/scripts/GraniteCave_B1F.s"
+ .include "data/maps/scripts/GraniteCave_B2F.s"
+ .include "data/maps/scripts/GraniteCave_StevensRoom.s"
+ .include "data/maps/scripts/PetalburgWoods.s"
+ .include "data/maps/scripts/MtChimney.s"
+ .include "data/maps/scripts/JaggedPass.s"
+ .include "data/maps/scripts/FieryPath.s"
+ .include "data/maps/scripts/MtPyre_1F.s"
+ .include "data/maps/scripts/MtPyre_2F.s"
+ .include "data/maps/scripts/MtPyre_3F.s"
+ .include "data/maps/scripts/MtPyre_4F.s"
+ .include "data/maps/scripts/MtPyre_5F.s"
+ .include "data/maps/scripts/MtPyre_6F.s"
+ .include "data/maps/scripts/MtPyre_Exterior.s"
+ .include "data/maps/scripts/MtPyre_Summit.s"
+ .include "data/maps/scripts/AquaHideout_1F.s"
+ .include "data/maps/scripts/AquaHideout_B1F.s"
+ .include "data/maps/scripts/AquaHideout_B2F.s"
+ .include "data/maps/scripts/Underwater_SeafloorCavern.s"
+ .include "data/maps/scripts/SeafloorCavern_Entrance.s"
+ .include "data/maps/scripts/SeafloorCavern_Room1.s"
+ .include "data/maps/scripts/SeafloorCavern_Room2.s"
+ .include "data/maps/scripts/SeafloorCavern_Room3.s"
+ .include "data/maps/scripts/SeafloorCavern_Room4.s"
+ .include "data/maps/scripts/SeafloorCavern_Room5.s"
+ .include "data/maps/scripts/SeafloorCavern_Room6.s"
+ .include "data/maps/scripts/SeafloorCavern_Room7.s"
+ .include "data/maps/scripts/SeafloorCavern_Room8.s"
+ .include "data/maps/scripts/SeafloorCavern_Room9.s"
+ .include "data/maps/scripts/CaveOfOrigin_Entrance.s"
+ .include "data/maps/scripts/CaveOfOrigin_1F.s"
+ .include "data/maps/scripts/CaveOfOrigin_B1F.s"
+ .include "data/maps/scripts/CaveOfOrigin_B2F.s"
+ .include "data/maps/scripts/CaveOfOrigin_B3F.s"
+ .include "data/maps/scripts/CaveOfOrigin_B4F.s"
+ .include "data/maps/scripts/VictoryRoad_1F.s"
+ .include "data/maps/scripts/VictoryRoad_B1F.s"
+ .include "data/maps/scripts/VictoryRoad_B2F.s"
+ .include "data/maps/scripts/ShoalCave_LowTideEntranceRoom.s"
+ .include "data/maps/scripts/ShoalCave_LowTideInnerRoom.s"
+ .include "data/maps/scripts/ShoalCave_LowTideStairsRoom.s"
+ .include "data/maps/scripts/ShoalCave_LowTideLowerRoom.s"
+ .include "data/maps/scripts/ShoalCave_HighTideEntranceRoom.s"
+ .include "data/maps/scripts/ShoalCave_HighTideInnerRoom.s"
+ .include "data/maps/scripts/NewMauville_Entrance.s"
+ .include "data/maps/scripts/NewMauville_Inside.s"
+ .include "data/maps/scripts/AbandonedShip_Deck.s"
+ .include "data/maps/scripts/AbandonedShip_Corridors_1F.s"
+ .include "data/maps/scripts/AbandonedShip_Rooms_1F.s"
+ .include "data/maps/scripts/AbandonedShip_Corridors_B1F.s"
+ .include "data/maps/scripts/AbandonedShip_Rooms_B1F.s"
+ .include "data/maps/scripts/AbandonedShip_Rooms2_B1F.s"
+ .include "data/maps/scripts/AbandonedShip_Underwater1.s"
+ .include "data/maps/scripts/AbandonedShip_Room_B1F.s"
+ .include "data/maps/scripts/AbandonedShip_Rooms2_1F.s"
+ .include "data/maps/scripts/AbandonedShip_CaptainsOffice.s"
+ .include "data/maps/scripts/AbandonedShip_Underwater2.s"
+ .include "data/maps/scripts/AbandonedShip_HiddenFloorCorridors.s"
+ .include "data/maps/scripts/AbandonedShip_HiddenFloorRooms.s"
+ .include "data/maps/scripts/IslandCave.s"
.global gUnknown_0815EF19
gUnknown_0815EF19: @ 815EF19
- .incbin "baserom.gba", 0x0015ef19, 0x453
+ .incbin "baserom.gba", 0x15ef19, 0x40
+
+IslandCave_EventScript_15EF59:: @ 815EF59
+ lockall
+ checkflag 2129
+ jumpeq IslandCave_EventScript_15EF72
+ braillemsg IslandCave_Braille_1C54FC
+ special 280
+ waitstate
+ jump IslandCave_EventScript_15EF95
+ end
+
+IslandCave_EventScript_15EF72:: @ 815EF72
+ msgbox IslandCave_Text_1A13BE, 4
+ releaseall
+ end
+
+IslandCave_EventScript_15EF7C:: @ 815EF7C
+ lockall
+ braillemsg IslandCave_Braille_1C54FC
+ checkflag 2129
+ jumpeq IslandCave_EventScript_15EF95
+ special 280
+ waitstate
+ jump IslandCave_EventScript_15EF95
+ end
+
+IslandCave_EventScript_15EF95:: @ 815EF95
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+IslandCave_EventScript_15EF9D:: @ 815EF9D
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_REGICE, 2
+ pause 40
+ waitpokecry
+ setwildbattle SPECIES_REGICE, 40, ITEM_NONE
+ setflag 936
+ setflag 2145
+ special 313
+ waitstate
+ clearflag 2145
+ release
+ end
+
+ .include "data/maps/scripts/AncientTomb.s"
+ .include "data/maps/scripts/Underwater_Route134.s"
+ .include "data/maps/scripts/Underwater_SealedChamber.s"
+ .include "data/maps/scripts/SealedChamber_OuterRoom.s"
+ .include "data/maps/scripts/SealedChamber_InnerRoom.s"
+ .include "data/maps/scripts/ScorchedSlab.s"
+ .include "data/maps/scripts/MagmaHideout_1F.s"
+ .include "data/maps/scripts/MagmaHideout_B1F.s"
+ .include "data/maps/scripts/MagmaHideout_B2F.s"
+ .include "data/maps/scripts/SkyPillar_Entrance.s"
+ .include "data/maps/scripts/SkyPillar_Outside.s"
+ .include "data/maps/scripts/SkyPillar_1F.s"
+ .include "data/maps/scripts/SkyPillar_2F.s"
+ .include "data/maps/scripts/SkyPillar_3F.s"
+ .include "data/maps/scripts/SkyPillar_4F.s"
+ .include "data/maps/scripts/ShoalCave_LowTideIceRoom.s"
+ .include "data/maps/scripts/SkyPillar_5F.s"
+ .include "data/maps/scripts/SkyPillar_Top.s"
+ .include "data/maps/scripts/SecretBase_BlueCave1.s"
+ .include "data/maps/scripts/SecretBase_BlueCave2.s"
+ .include "data/maps/scripts/SecretBase_BlueCave3.s"
+ .include "data/maps/scripts/SecretBase_BlueCave4.s"
+ .include "data/maps/scripts/SecretBase_BrownCave1.s"
+ .include "data/maps/scripts/SecretBase_BrownCave2.s"
+ .include "data/maps/scripts/SecretBase_BrownCave3.s"
+ .include "data/maps/scripts/SecretBase_BrownCave4.s"
+ .include "data/maps/scripts/SecretBase_RedCave1.s"
+ .include "data/maps/scripts/SecretBase_RedCave2.s"
+ .include "data/maps/scripts/SecretBase_RedCave3.s"
+ .include "data/maps/scripts/SecretBase_RedCave4.s"
+ .include "data/maps/scripts/SecretBase_Shrub1.s"
+ .include "data/maps/scripts/SecretBase_Shrub2.s"
+ .include "data/maps/scripts/SecretBase_Shrub3.s"
+ .include "data/maps/scripts/SecretBase_Shrub4.s"
+ .include "data/maps/scripts/SecretBase_Tree1.s"
+ .include "data/maps/scripts/SecretBase_Tree2.s"
+ .include "data/maps/scripts/SecretBase_Tree3.s"
+ .include "data/maps/scripts/SecretBase_Tree4.s"
+ .include "data/maps/scripts/SecretBase_YellowCave1.s"
+ .include "data/maps/scripts/SecretBase_YellowCave2.s"
+ .include "data/maps/scripts/SecretBase_YellowCave3.s"
+ .include "data/maps/scripts/SecretBase_YellowCave4.s"
.global gUnknown_0815F36C
gUnknown_0815F36C: @ 815F36C
.incbin "baserom.gba", 0x0015f36c, 0x2d
@@ -70,15 +790,1963 @@ gUnknown_0815F523: @ 815F523
.global gUnknown_0815F528
gUnknown_0815F528: @ 815F528
- .incbin "baserom.gba", 0x0015f528, 0x7e5
+ .incbin "baserom.gba", 0x15f528, 0x54
+
+ .include "data/maps/scripts/SingleBattleColosseum.s"
+ .include "data/maps/scripts/TradeCenter.s"
+ .include "data/maps/scripts/RecordCorner.s"
+ .include "data/maps/scripts/DoubleBattleColosseum.s"
+ .include "data/maps/scripts/LinkContestRoom1.s"
+ .include "data/maps/scripts/LinkContestRoom2.s"
+ .include "data/maps/scripts/LinkContestRoom3.s"
+ .include "data/maps/scripts/LinkContestRoom4.s"
+ .include "data/maps/scripts/LinkContestRoom5.s"
+ .include "data/maps/scripts/LinkContestRoom6.s"
+ .include "data/maps/scripts/UnknownMap_25_29.s"
+ .include "data/maps/scripts/UnknownMap_25_30.s"
+ .include "data/maps/scripts/UnknownMap_25_31.s"
+ .include "data/maps/scripts/UnknownMap_25_32.s"
+ .include "data/maps/scripts/UnknownMap_25_33.s"
+ .include "data/maps/scripts/UnknownMap_25_34.s"
+ .include "data/maps/scripts/InsideOfTruck.s"
+ .include "data/maps/scripts/SSTidalCorridor.s"
.global gUnknown_0815FD0D
gUnknown_0815FD0D: @ 815FD0D
- .incbin "baserom.gba", 0x0015fd0d, 0x19d4
+
+ .incbin "baserom.gba", 0x15fd0d, 0x17
+
+SSTidalCorridor_EventScript_15FD24:: @ 815FD24
+ special 204
+ setvar 0x40b4, 3
+ lockall
+ playsfx 73
+ msgbox SSTidalCorridor_Text_199088, 4
+ releaseall
+ end
+
+SSTidalCorridor_EventScript_15FD3A:: @ 815FD3A
+ special 204
+ setvar 0x40b4, 8
+ lockall
+ playsfx 73
+ msgbox SSTidalCorridor_Text_1990B4, 4
+ releaseall
+ end
+
+SSTidalRooms_EventScript_15FD50:: @ 815FD50
+ special 204
+ setvar 0x40b4, 8
+ playsfx 73
+ msgbox SSTidalRooms_Text_1990B4, 4
+ return
+
+SSTidalRooms_EventScript_15FD64:: @ 815FD64
+ switch 0x40b4
+ case 2, SSTidalRooms_EventScript_15FCF9
+ case 3, SSTidalRooms_EventScript_15FCF9
+ case 6, SSTidalRooms_EventScript_15FCE5
+ case 7, SSTidalRooms_EventScript_15FD50
+ return
+
+SSTidalCorridor_EventScript_15FD96:: @ 815FD96
+ msgbox SSTidalCorridor_Text_199291, 2
+ end
+
+SSTidalCorridor_EventScript_15FD9F:: @ 815FD9F
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_WINGULL, 0
+ msgbox SSTidalCorridor_Text_199388, 4
+ waitpokecry
+ release
+ end
+
+SSTidalCorridor_EventScript_15FDB2:: @ 815FDB2
+ msgbox SSTidalCorridor_Text_1993A1, 3
+ end
+
+SSTidalCorridor_EventScript_15FDBB:: @ 815FDBB
+ msgbox SSTidalCorridor_Text_1993A9, 3
+ end
+
+SSTidalCorridor_EventScript_15FDC4:: @ 815FDC4
+ msgbox SSTidalCorridor_Text_1993B1, 3
+ end
+
+SSTidalCorridor_EventScript_15FDCD:: @ 815FDCD
+ msgbox SSTidalCorridor_Text_1993B9, 3
+ end
+
+SSTidalCorridor_EventScript_15FDD6:: @ 815FDD6
+ lock
+ faceplayer
+ compare 0x40b4, 4
+ jumpeq SSTidalCorridor_EventScript_15FDF8
+ compare 0x40b4, 8
+ jumpeq SSTidalCorridor_EventScript_15FE17
+ msgbox SSTidalCorridor_Text_19913B, 4
+ release
+ end
+
+SSTidalCorridor_EventScript_15FDF8:: @ 815FDF8
+ sethealplace 8
+ msgbox SSTidalCorridor_Text_1991F4, 4
+ checkflag 260
+ callif 1, SSTidalCorridor_EventScript_15FE36
+ warp LilycoveCity_Harbor, 255, 8, 11
+ waitstate
+ release
+ end
+
+SSTidalCorridor_EventScript_15FE17:: @ 815FE17
+ sethealplace 4
+ msgbox SSTidalCorridor_Text_1991F4, 4
+ checkflag 260
+ callif 1, SSTidalCorridor_EventScript_15FE36
+ warp SlateportCity_Harbor, 255, 8, 11
+ waitstate
+ release
+ end
+
+SSTidalCorridor_EventScript_15FE36:: @ 815FE36
+ setflag 951
+ return
+
+SSTidalCorridor_EventScript_15FE3A:: @ 815FE3A
+ lockall
+ compare 0x40b4, 2
+ jumpeq SSTidalCorridor_EventScript_15FE5B
+ compare 0x40b4, 7
+ jumpeq SSTidalCorridor_EventScript_15FE5B
+ msgbox SSTidalCorridor_Text_199268, 4
+ releaseall
+ end
+
+SSTidalCorridor_EventScript_15FE5B:: @ 815FE5B
+ special 270
+ waitstate
+ end
+
+SSTidalCorridor_EventScript_15FE60:: @ 815FE60
+ lock
+ faceplayer
+ checkflag 247
+ jumpeq SSTidalCorridor_EventScript_15FE7A
+ call SSTidalCorridor_EventScript_15FE84
+ msgbox SSTidalCorridor_Text_199203, 4
+ release
+ end
+
+SSTidalCorridor_EventScript_15FE7A:: @ 815FE7A
+ msgbox SSTidalCorridor_Text_199255, 4
+ release
+ end
+
+SSTidalCorridor_EventScript_15FE84:: @ 815FE84
+ checktrainerflag 494
+ jumpif 0, SSTidalCorridor_EventScript_15FED5
+ checktrainerflag 495
+ jumpif 0, SSTidalCorridor_EventScript_15FED5
+ checktrainerflag 294
+ jumpif 0, SSTidalCorridor_EventScript_15FED5
+ checktrainerflag 255
+ jumpif 0, SSTidalCorridor_EventScript_15FED5
+ checktrainerflag 256
+ jumpif 0, SSTidalCorridor_EventScript_15FED5
+ checktrainerflag 641
+ jumpif 0, SSTidalCorridor_EventScript_15FED5
+ checktrainerflag 138
+ jumpif 0, SSTidalCorridor_EventScript_15FED5
+ checktrainerflag 119
+ jumpif 0, SSTidalCorridor_EventScript_15FED5
+ setflag 247
+ jump SSTidalCorridor_EventScript_15FE7A
+
+ .incbin "baserom.gba", 0x15fed4, 0x1
+
+SSTidalCorridor_EventScript_15FED5:: @ 815FED5
+ return
+
+ .include "data/maps/scripts/SSTidalLowerDeck.s"
+ .include "data/maps/scripts/SSTidalRooms.s"
+ .include "data/maps/scripts/SafariZone_Northwest.s"
+ .include "data/maps/scripts/SafariZone_Northeast.s"
+ .include "data/maps/scripts/SafariZone_Southwest.s"
+ .include "data/maps/scripts/SafariZone_Southeast.s"
+ .include "data/maps/scripts/BattleTower_Outside.s"
+ .include "data/maps/scripts/BattleTower_Lobby.s"
+ .include "data/maps/scripts/BattleTower_Elevator.s"
+ .include "data/maps/scripts/BattleTower_Corridor.s"
+ .include "data/maps/scripts/BattleTower_BattleRoom.s"
+ .include "data/maps/scripts/SouthernIsland_Exterior.s"
+BattleTower_Outside_Movement_160B45:: @ 8160B45
+ step_down
+ step_end
+
+BattleTower_Outside_Movement_160B47:: @ 8160B47
+ step_left
+ step_25
+ step_end
+
+SouthernIsland_Exterior_EventScript_160B4A:: @ 8160B4A
+ msgbox SouthernIsland_Exterior_Text_1C52FB, 3
+ end
+
+ .include "data/maps/scripts/SouthernIsland_Interior.s"
+ .include "data/maps/scripts/SafariZone_RestHouse.s"
+ .include "data/maps/scripts/Route104_Prototype.s"
+ .include "data/maps/scripts/Route104_PrototypePrettyPetalFlowerShop.s"
+ .include "data/maps/scripts/Route109_SeashoreHouse.s"
+ .include "data/maps/scripts/Route110_TrickHouseEntrance.s"
+Route110_TrickHouseEnd_Movement_161315:: @ 8161315
+Route110_TrickHouseEntrance_Movement_161315:: @ 8161315
+ step_01
+ step_12
+ step_02
+ step_12
+ step_00
+ step_12
+ step_03
+ step_12
+ step_end
+
+Route110_TrickHouseEnd_Movement_16131E:: @ 816131E
+Route110_TrickHouseEntrance_Movement_16131E:: @ 816131E
+ step_01
+ step_52
+ step_32
+ step_32
+ step_32
+ step_32
+ step_32
+ step_32
+ step_end
+
+Route110_TrickHouseEntrance_EventScript_161327:: @ 8161327
+ msgbox Route110_TrickHouseEntrance_Text_19BCFD, 4
+ return
+
+Route110_TrickHouseEntrance_EventScript_161330:: @ 8161330
+ msgbox Route110_TrickHouseEntrance_Text_19BF19, 4
+ closebutton
+ move 1, Route110_TrickHouseEntrance_Movement_1A0839
+ waitmove 0
+ playsfx 21
+ move 1, Route110_TrickHouseEntrance_Movement_1A0833
+ waitmove 0
+ move 1, Route110_TrickHouseEntrance_Movement_1A0835
+ waitmove 0
+ msgbox Route110_TrickHouseEntrance_Text_19BFAB, 4
+ move 1, Route110_TrickHouseEntrance_Movement_1A0841
+ waitmove 0
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_16136E:: @ 816136E
+ move 1, Route110_TrickHouseEntrance_Movement_1A0839
+ waitmove 0
+ msgbox Route110_TrickHouseEntrance_Text_19C07E, 4
+ compare 0x4044, 1
+ jumpeq Route110_TrickHouseEntrance_EventScript_1613CE
+ compare 0x4044, 2
+ jumpeq Route110_TrickHouseEntrance_EventScript_1613FA
+ compare 0x4044, 3
+ jumpeq Route110_TrickHouseEntrance_EventScript_161426
+ compare 0x4044, 4
+ jumpeq Route110_TrickHouseEntrance_EventScript_161452
+ compare 0x4044, 5
+ jumpeq Route110_TrickHouseEntrance_EventScript_16147E
+ compare 0x4044, 6
+ jumpeq Route110_TrickHouseEntrance_EventScript_1614AA
+ compare 0x4044, 7
+ jumpeq Route110_TrickHouseEntrance_EventScript_1614D6
+ end
+
+Route110_TrickHouseEntrance_EventScript_1613CE:: @ 81613CE
+ giveitem ITEM_RARE_CANDY
+ compare RESULT, 1
+ jumpeq Route110_TrickHouseEntrance_EventScript_161502
+ compare RESULT, 0
+ callif 1, Route110_TrickHouseEntrance_EventScript_1A02A5
+ msgbox Route110_TrickHouseEntrance_Text_19C0FC, 4
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_1613FA:: @ 81613FA
+ giveitem ITEM_TIMER_BALL
+ compare RESULT, 1
+ jumpeq Route110_TrickHouseEntrance_EventScript_161502
+ compare RESULT, 0
+ callif 1, Route110_TrickHouseEntrance_EventScript_1A02A5
+ msgbox Route110_TrickHouseEntrance_Text_19C0FC, 4
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_161426:: @ 8161426
+ giveitem ITEM_HARD_STONE
+ compare RESULT, 1
+ jumpeq Route110_TrickHouseEntrance_EventScript_161502
+ compare RESULT, 0
+ callif 1, Route110_TrickHouseEntrance_EventScript_1A02A5
+ msgbox Route110_TrickHouseEntrance_Text_19C0FC, 4
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_161452:: @ 8161452
+ giveitem ITEM_SMOKE_BALL
+ compare RESULT, 1
+ jumpeq Route110_TrickHouseEntrance_EventScript_161502
+ compare RESULT, 0
+ callif 1, Route110_TrickHouseEntrance_EventScript_1A02A5
+ msgbox Route110_TrickHouseEntrance_Text_19C0FC, 4
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_16147E:: @ 816147E
+ giveitem ITEM_TM12
+ compare RESULT, 1
+ jumpeq Route110_TrickHouseEntrance_EventScript_161502
+ compare RESULT, 0
+ callif 1, Route110_TrickHouseEntrance_EventScript_1A02A5
+ msgbox Route110_TrickHouseEntrance_Text_19C0FC, 4
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_1614AA:: @ 81614AA
+ giveitem ITEM_MAGNET
+ compare RESULT, 1
+ jumpeq Route110_TrickHouseEntrance_EventScript_161502
+ compare RESULT, 0
+ callif 1, Route110_TrickHouseEntrance_EventScript_1A02A5
+ msgbox Route110_TrickHouseEntrance_Text_19C0FC, 4
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_1614D6:: @ 81614D6
+ giveitem ITEM_PP_MAX
+ compare RESULT, 1
+ jumpeq Route110_TrickHouseEntrance_EventScript_161502
+ compare RESULT, 0
+ callif 1, Route110_TrickHouseEntrance_EventScript_1A02A5
+ msgbox Route110_TrickHouseEntrance_Text_19C0FC, 4
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_161502:: @ 8161502
+ setvar 0x40c1, 0
+ setvar 0x40a7, 3
+ move 1, Route110_TrickHouseEntrance_Movement_1A0841
+ waitmove 0
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_161518:: @ 8161518
+ move 1, Route110_TrickHouseEntrance_Movement_1A0839
+ waitmove 0
+ msgbox Route110_TrickHouseEntrance_Text_19C128, 4
+ givedecoration 31
+ compare RESULT, 1
+ jumpeq Route110_TrickHouseEntrance_EventScript_161551
+ compare RESULT, 0
+ callif 1, Route110_TrickHouseEntrance_EventScript_1A02B8
+ msgbox Route110_TrickHouseEntrance_Text_19C18D, 4
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_161551:: @ 8161551
+ msgbox Route110_TrickHouseEntrance_Text_19C17E, 4
+ closebutton
+ move 1, Route110_TrickHouseEntrance_Movement_16309F
+ waitmove 0
+ move 1, Route110_TrickHouseEntrance_Movement_161315
+ waitmove 0
+ playsfx 178
+ move 1, Route110_TrickHouseEntrance_Movement_16131E
+ waitmove 0
+ disappear 1
+ setvar 0x40c1, 0
+ setvar 0x40a7, 5
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_16158A:: @ 816158A
+ lockall
+ switch 0x40a7
+ case 0, Route110_TrickHouseEntrance_EventScript_1615BD
+ case 1, Route110_TrickHouseEntrance_EventScript_1615C7
+ case 4, Route110_TrickHouseEntrance_EventScript_1616B8
+ case 5, Route110_TrickHouseEntrance_EventScript_1616C2
+ end
+
+Route110_TrickHouseEntrance_EventScript_1615BD:: @ 81615BD
+ msgbox Route110_TrickHouseEntrance_Text_19BE6E, 4
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_1615C7:: @ 81615C7
+ msgbox Route110_TrickHouseEntrance_Text_19BE7D, 5
+ closebutton
+ compare RESULT, 1
+ jumpeq Route110_TrickHouseEntrance_EventScript_1615DD
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_1615DD:: @ 81615DD
+ setmaptile 5, 1, 537, 0
+ special 142
+ pause 20
+ move 255, Route110_TrickHouseEntrance_Movement_1A0856
+ waitmove 0
+ move 255, Route110_TrickHouseEntrance_Movement_16165E
+ waitmove 0
+ switch 0x4044
+ case 0, Route110_TrickHouseEntrance_EventScript_161660
+ case 1, Route110_TrickHouseEntrance_EventScript_16166B
+ case 2, Route110_TrickHouseEntrance_EventScript_161676
+ case 3, Route110_TrickHouseEntrance_EventScript_161681
+ case 4, Route110_TrickHouseEntrance_EventScript_16168C
+ case 5, Route110_TrickHouseEntrance_EventScript_161697
+ case 6, Route110_TrickHouseEntrance_EventScript_1616A2
+ case 7, Route110_TrickHouseEntrance_EventScript_1616AD
+ end
+
+Route110_TrickHouseEntrance_Movement_16165E:: @ 816165E
+ step_54
+ step_end
+
+Route110_TrickHouseEntrance_EventScript_161660:: @ 8161660
+ warp Route110_TrickHousePuzzle1, 255, 0, 21
+ waitstate
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_16166B:: @ 816166B
+ warp Route110_TrickHousePuzzle2, 255, 0, 21
+ waitstate
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_161676:: @ 8161676
+ warp Route110_TrickHousePuzzle3, 255, 0, 21
+ waitstate
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_161681:: @ 8161681
+ warp Route110_TrickHousePuzzle4, 255, 0, 21
+ waitstate
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_16168C:: @ 816168C
+ warp Route110_TrickHousePuzzle5, 255, 0, 21
+ waitstate
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_161697:: @ 8161697
+ warp Route110_TrickHousePuzzle6, 255, 0, 21
+ waitstate
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_1616A2:: @ 81616A2
+ warp Route110_TrickHousePuzzle7, 255, 0, 21
+ waitstate
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_1616AD:: @ 81616AD
+ warp Route110_TrickHousePuzzle8, 255, 0, 21
+ waitstate
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_1616B8:: @ 81616B8
+ msgbox Route110_TrickHouseEntrance_Text_19BEB3, 4
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_1616C2:: @ 81616C2
+ compare 0x4044, 8
+ jumpeq Route110_TrickHouseEntrance_EventScript_1616D7
+ msgbox Route110_TrickHouseEntrance_Text_19BE6E, 4
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_1616D7:: @ 81616D7
+ msgbox Route110_TrickHouseEntrance_Text_19BEB3, 4
+ releaseall
+ end
.global gUnknown_081616E1
gUnknown_081616E1: @ 81616E1
- .incbin "baserom.gba", 0x001616e1, 0x3e12a
+
+ .incbin "baserom.gba", 0x1616e1, 0x1b1
+
+Route110_TrickHousePuzzle1_EventScript_161892:: @ 8161892
+Route110_TrickHousePuzzle2_EventScript_161892:: @ 8161892
+Route110_TrickHousePuzzle3_EventScript_161892:: @ 8161892
+Route110_TrickHousePuzzle4_EventScript_161892:: @ 8161892
+Route110_TrickHousePuzzle5_EventScript_161892:: @ 8161892
+Route110_TrickHousePuzzle6_EventScript_161892:: @ 8161892
+Route110_TrickHousePuzzle7_EventScript_161892:: @ 8161892
+Route110_TrickHousePuzzle8_EventScript_161892:: @ 8161892
+ msgbox Route110_TrickHousePuzzle1_Text_19C1FF, 4
+ releaseall
+ end
+
+Route110_TrickHousePuzzle1_EventScript_16189C:: @ 816189C
+Route110_TrickHousePuzzle2_EventScript_16189C:: @ 816189C
+Route110_TrickHousePuzzle3_EventScript_16189C:: @ 816189C
+Route110_TrickHousePuzzle4_EventScript_16189C:: @ 816189C
+Route110_TrickHousePuzzle5_EventScript_16189C:: @ 816189C
+Route110_TrickHousePuzzle6_EventScript_16189C:: @ 816189C
+Route110_TrickHousePuzzle7_EventScript_16189C:: @ 816189C
+Route110_TrickHousePuzzle8_EventScript_16189C:: @ 816189C
+ fanfare 370
+ message Route110_TrickHousePuzzle1_Text_19C1B8
+ waitfanfare
+ waittext
+ msgbox Route110_TrickHousePuzzle1_Text_19C1CB, 4
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_1618B0:: @ 81618B0
+ lockall
+ msgbox Route110_TrickHouseEntrance_Text_19BA56, 4
+ releaseall
+ compare 0x4044, 0
+ callif 1, Route110_TrickHouseEntrance_EventScript_1618E1
+ compare 0x4044, 1
+ callif 1, Route110_TrickHouseEntrance_EventScript_1618F6
+ compare 0x4044, 2
+ callif 1, Route110_TrickHouseEntrance_EventScript_16190B
+ setvar 0x40a5, 1
+ end
+
+Route110_TrickHouseEntrance_EventScript_1618E1:: @ 81618E1
+ setvar 0x8004, 6
+ setvar 0x8005, 3
+ setvar 0x8006, 0
+ call Route110_TrickHouseEntrance_EventScript_161920
+ return
+
+Route110_TrickHouseEntrance_EventScript_1618F6:: @ 81618F6
+ setvar 0x8004, 11
+ setvar 0x8005, 5
+ setvar 0x8006, 0
+ call Route110_TrickHouseEntrance_EventScript_161920
+ return
+
+Route110_TrickHouseEntrance_EventScript_16190B:: @ 816190B
+ setvar 0x8004, 9
+ setvar 0x8005, 2
+ setvar 0x8006, 0
+ call Route110_TrickHouseEntrance_EventScript_161920
+ return
+
+Route110_TrickHouseEntrance_EventScript_161920:: @ 8161920
+ setanimation 0, 32772
+ setanimation 1, 32773
+ setanimation 2, 32774
+ doanimation 54
+ checkanimation 54
+ pause 10
+ return
+
+ .include "data/maps/scripts/Route110_TrickHouseEnd.s"
+ .include "data/maps/scripts/Route110_TrickHouseCorridor.s"
+ .include "data/maps/scripts/Route110_TrickHousePuzzle1.s"
+ .include "data/maps/scripts/Route110_TrickHousePuzzle2.s"
+ .include "data/maps/scripts/Route110_TrickHousePuzzle3.s"
+ .include "data/maps/scripts/Route110_TrickHousePuzzle4.s"
+ .include "data/maps/scripts/Route110_TrickHousePuzzle5.s"
+Route110_TrickHouseEntrance_Movement_16309F:: @ 816309F
+Route110_TrickHousePuzzle5_Movement_16309F:: @ 816309F
+ step_02
+ step_11
+ step_03
+ step_11
+ step_02
+ step_11
+ step_03
+ step_11
+ step_02
+ step_11
+ step_03
+ step_11
+ step_02
+ step_11
+ step_03
+ step_11
+ step_02
+ step_11
+ step_03
+ step_11
+ step_02
+ step_11
+ step_03
+ step_11
+ step_02
+ step_11
+ step_03
+ step_11
+ step_02
+ step_11
+ step_03
+ step_11
+ step_02
+ step_11
+ step_03
+ step_11
+ step_02
+ step_11
+ step_03
+ step_11
+ step_02
+ step_11
+ step_03
+ step_11
+ step_00
+ step_end
+
+ .include "data/maps/scripts/Route110_TrickHousePuzzle6.s"
+ .include "data/maps/scripts/Route110_TrickHousePuzzle7.s"
+ .include "data/maps/scripts/Route110_TrickHousePuzzle8.s"
+ .include "data/maps/scripts/Route110_SeasideCyclingRoadSouthEntrance.s"
+ .include "data/maps/scripts/Route110_SeasideCyclingRoadNorthEntrance.s"
+ .include "data/maps/scripts/Route113_GlassWorkshop.s"
+ .include "data/maps/scripts/Route123_BerryMastersHouse.s"
+ .include "data/maps/scripts/Route119_WeatherInstitute_1F.s"
+ .include "data/maps/scripts/Route119_WeatherInstitute_2F.s"
+ .include "data/maps/scripts/Route119_House.s"
+ .include "data/maps/scripts/Route124_DivingTreasureHuntersHouse.s"
+ .include "data/maps/text/PetalburgCity.s"
+ .include "data/maps/text/SlateportCity.s"
+ .include "data/maps/text/MauvilleCity.s"
+ .include "data/maps/text/RustboroCity.s"
+ .include "data/maps/text/FortreeCity.s"
+ .include "data/maps/text/LilycoveCity.s"
+ .include "data/maps/text/MossdeepCity.s"
+ .include "data/maps/text/SootopolisCity.s"
+ .include "data/maps/text/EverGrandeCity.s"
+ .include "data/maps/text/LittlerootTown.s"
+ .include "data/maps/text/OldaleTown.s"
+ .include "data/maps/text/DewfordTown.s"
+ .include "data/maps/text/Route104.s"
+DewfordTown_Text_16B3BC:: @ 816B3BC
+ .string "MR. BRINEY: Have you delivered your\n"
+ .string "LETTER?\p"
+ .string "Or were you meaning to sail back to\n"
+ .string "PETALBURG?$"
+
+DewfordTown_Text_16B417:: @ 816B417
+ .string "MR. BRINEY: PETALBURG it is, then!\p"
+ .string "Anchors aweigh!\n"
+ .string "PEEKO, we’re setting sail, my darling!$"
+
+DewfordTown_Text_16B471:: @ 816B471
+ .string "MR. BRINEY: Then you go on and deliver\n"
+ .string "the LETTER. I’ll be waiting.$"
+
+Route104_Text_16B4B5:: @ 816B4B5
+ .include "data/maps/text/Route109.s"
+DewfordTown_Text_16B522:: @ 816B522
+ .string "MR. BRINEY: Ahoy!\n"
+ .string "For you, I’ll go out to sea anytime!\p"
+ .string "Now, my friend, where are we bound?$"
+
+DewfordTown_Text_16B57D:: @ 816B57D
+ .string "MR. BRINEY: PETALBURG, is it?\p"
+ .string "Anchors aweigh!\n"
+ .string "PEEKO, we’re setting sail, my darling!$"
+
+DewfordTown_Text_16B5D2:: @ 816B5D2
+ .string "MR. BRINEY: SLATEPORT, is it?\p"
+ .string "Anchors aweigh!\n"
+ .string "PEEKO, we’re setting sail, my darling!$"
+
+DewfordTown_Text_16B627:: @ 816B627
+ .string "MR. BRINEY: Just tell me whenever you\n"
+ .string "want to set sail again.$"
+
+DewfordTown_Text_16B665:: @ 816B665
+ .string "This is a renowned fishing spot.\n"
+ .string "Are you getting the itch to fish?$"
+
+DewfordTown_Text_16B6A8:: @ 816B6A8
+ .string "I hear you, and I like what\n"
+ .string "you’re saying!\p"
+ .string "I’ll give you one of my fishing RODS.$"
+
+DewfordTown_Text_16B6F9:: @ 816B6F9
+ .string "And, as an added bonus, I’ll even throw\n"
+ .string "in a little fishing advice!\p"
+ .string "First, you want to face the water,\n"
+ .string "then use the ROD.\p"
+ .string "Focus your mind...\n"
+ .string "If you get a bite, pull on the ROD.\p"
+ .string "Sometimes you can snag something\n"
+ .string "immediately, but with bigger catches,\l"
+ .string "you need to time the pulls on your ROD\l"
+ .string "to haul them in.$"
+
+DewfordTown_Text_16B828:: @ 816B828
+ .string "Oh, is that so?\n"
+ .string "That’s too bad, then.$"
+
+DewfordTown_Text_16B84E:: @ 816B84E
+ .string "Yo!\n"
+ .string "How’s your fishing?$"
+
+DewfordTown_Text_16B866:: @ 816B866
+ .string "Is that right! That’s great!\n"
+ .string "Haul in some big ones!$"
+
+DewfordTown_Text_16B89A:: @ 816B89A
+ .string "Oh, hey, don’t get down on yourself!\n"
+ .string "I’ll give you a little fishing advice.\p"
+ .string "First, you want to face the water,\n"
+ .string "then use the ROD.\p"
+ .string "Focus your mind...\n"
+ .string "If you get a bite, pull the ROD.\p"
+ .string "Sometimes you can snag something\n"
+ .string "immediately, but with bigger catches,\l"
+ .string "you need to time the pulls on your ROD\l"
+ .string "to haul them in.$"
+
+DewfordTown_Text_16B9CE:: @ 816B9CE
+ .string "I like what’s hip, happening, and trendy.\n"
+ .string "I’m always checking it out.\p"
+ .string "Listen, have you heard about this new\n"
+ .string "“{STR_VAR_1}”?\p"
+ .string "That’s right!\n"
+ .string "Of course you know!\p"
+ .string "I mean, sheesh,\n"
+ .string "“{STR_VAR_1}”...\l"
+ .string "It’s the hottest thing in cool!\p"
+ .string "Wherever you’re from,\n"
+ .string "“{STR_VAR_1}”\l"
+ .string "is the biggest happening thing, right?$"
+
+DewfordTown_Text_16BADC:: @ 816BADC
+ .string "Hunh?\n"
+ .string "It’s not the hip and happening thing?\p"
+ .string "Well, hey, you have to tell me,\n"
+ .string "what’s new and what’s “in”?$"
+
+DewfordTown_Text_16BB44:: @ 816BB44
+ .string "Hunh?\n"
+ .string "“{STR_VAR_2}”?\p"
+ .string "... ...\p"
+ .string "...Uh... Yeah! That’s right!\n"
+ .string "Yeah, I knew that! Knew it all along!\p"
+ .string "Of course I know about that!\n"
+ .string "“{STR_VAR_2},” right?\p"
+ .string "Yeah, that’s it, it’s there!\n"
+ .string "Isn’t “{STR_VAR_2}”\l"
+ .string "the coolest, or what?\p"
+ .string "It’s the hippest thing in hip.\n"
+ .string "You think I’d not know about it?\p"
+ .string "“{STR_VAR_1}”...\n"
+ .string "It’s, like, so five minutes ago.\p"
+ .string "Now, “{STR_VAR_2}” is\n"
+ .string "what’s vital and in tune with the times!$"
+
+DewfordTown_Text_16BCA2:: @ 816BCA2
+ .string "Hmm...\n"
+ .string "“{STR_VAR_2},” huh?\p"
+ .string "But personally, I think\n"
+ .string "“{STR_VAR_1}”\l"
+ .string "is what’s real in cool.$"
+
+DewfordTown_Text_16BCE9:: @ 816BCE9
+ .string "Well, if you hear of any happening new\n"
+ .string "trends, come share them with me, okay?$"
+
+DewfordTown_Text_16BD37:: @ 816BD37
+ .string "Yeah, absolutely right!\p"
+ .string "“{STR_VAR_1}” is the\n"
+ .string "definition of “in” right now.$"
+
+ .incbin "baserom.gba", 0x16bd79, 0x2b
+
+ .include "data/maps/text/LavaridgeTown.s"
+ .include "data/maps/text/FallarborTown.s"
+ .include "data/maps/text/VerdanturfTown.s"
+ .include "data/maps/text/PacifidlogTown.s"
+ .include "data/maps/text/Route101.s"
+PetalburgCity_Text_16D361:: @ 816D361
+ .string "WALLY: {PLAYER}...\n"
+ .string "POKéMON hide in tall grass like this,\l"
+ .string "don’t they?\p"
+ .string "Please watch me and see if I can\n"
+ .string "catch one properly.\p"
+ .string "...Whoa!$"
+
+PetalburgCity_Text_16D3DE:: @ 816D3DE
+ .string "WALLY: I did it... It’s my...\n"
+ .string "My POKéMON!$"
+
+PetalburgCity_Text_16D408:: @ 816D408
+ .string "{PLAYER}, thank you!\n"
+ .string "Let’s go back to the GYM!$"
+
+ .include "data/maps/text/Route102.s"
+ .include "data/maps/text/Route103.s"
+Route104_Text_16DA13:: @ 816DA13
+ .string "That seaside cottage is where\n"
+ .string "MR. BRINEY lives.\p"
+ .string "He was once a mighty sailor who never\n"
+ .string "feared the sea, however stormy.$"
+
+Route104_Text_16DA89:: @ 816DA89
+ .string "The sea, huh?\p"
+ .string "I wonder what it’s like at the bottom\n"
+ .string "of the sea?$"
+
+Route104_Text_16DAC9:: @ 816DAC9
+ .string "If you’re going to throw a POKé BALL,\n"
+ .string "weaken the wild POKéMON first.\p"
+ .string "It will be easier to catch if it’s been\n"
+ .string "poisoned, burned, or lulled to sleep.$"
+
+Route104_Text_16DB5C:: @ 816DB5C
+ .string "You’re a thief if you try to steal\n"
+ .string "someone else’s POKéMON.\p"
+ .string "You should throw POKé BALLS only at\n"
+ .string "wild POKéMON.$"
+
+Route104_Text_16DBC9:: @ 816DBC9
+ .string "Oh, no, I’m not a TRAINER.\p"
+ .string "But that’s right, if TRAINERS lock eyes,\n"
+ .string "it’s a challenge to battle.\p"
+ .string "If you don’t want to battle, stay out\n"
+ .string "of their sight.$"
+
+Route104_Text_16DC5F:: @ 816DC5F
+ .string "I like filling my mouth with seeds,\n"
+ .string "then spitting them out fast!\p"
+ .string "You can have this, so you try it out!\p"
+ .string "Use it on a POKéMON, and it will learn\n"
+ .string "a move for firing seeds rapidly.$"
+
+Route104_Text_16DD0E:: @ 816DD0E
+ .string "A word of advice!\p"
+ .string "A TM, TECHNICAL MACHINE, is good only\n"
+ .string "for one-time use.\p"
+ .string "Once you use it, it’s gone.\n"
+ .string "Think twice before using it!$"
+
+Route104_Text_16DD91:: @ 816DD91
+ .string "This FLOWER SHOP started selling\n"
+ .string "saplings recently.\p"
+ .string "It made me so happy, I went overboard\n"
+ .string "shopping. I don’t need this WHITE HERB\l"
+ .string "anymore. Would you take it, please?$"
+
+Route104_Text_16DE36:: @ 816DE36
+ .string "This FLOWER SHOP started selling\n"
+ .string "saplings recently.\p"
+ .string "It made me so happy, I went overboard\n"
+ .string "shopping. Where should I put them?$"
+
+Route104_Text_16DEB3:: @ 816DEB3
+ .string "MR. BRINEY’S COTTAGE$"
+
+Route104_Text_16DEC8:: @ 816DEC8
+ .string "ROUTE 1O4\n"
+ .string "{0x7C} PETALBURG CITY$"
+
+Route104_Text_16DEE3:: @ 816DEE3
+ .string "ROUTE 1O4\n"
+ .string "{0x79} RUSTBORO CITY$"
+
+Route104_Text_16DEFD:: @ 816DEFD
+ .string "PRETTY PETAL FLOWER SHOP$"
+
+Route104_Text_16DF16:: @ 816DF16
+ .string "TRAINER TIPS\p"
+ .string "In the HOENN region there are pairs\n"
+ .string "of TRAINERS who challenge others\l"
+ .string "for 2-on-2 POKéMON battles called\l"
+ .string "DOUBLE BATTLES.\p"
+ .string "In a DOUBLE BATTLE, the TRAINER must\n"
+ .string "send out two POKéMON, the one at the\l"
+ .string "left of the list and the top one.\l"
+ .string "Watch how POKéMON are lined up.$"
+
+ .include "data/maps/text/Route106.s"
+DewfordTown_Text_16E080:: @ 816E080
+ .string "MR. BRINEY: Ahoy!\n"
+ .string "We’ve made land in SLATEPORT!\p"
+ .string "I suppose you’re going to visit CAPT.\n"
+ .string "STERN and deliver the DEVON GOODS?$"
+
+Route109_Text_16E0F9:: @ 816E0F9
+ .string "MR. BRINEY: Aren’t you delivering the\n"
+ .string "DEVON GOODS?\p"
+ .string "Or were you meaning to sail back to\n"
+ .string "DEWFORD?$"
+
+Route109_Text_16E159:: @ 816E159
+ .string "MR. BRINEY: DEWFORD it is, then!\p"
+ .string "Anchors aweigh!\n"
+ .string "PEEKO, we’re setting sail, my darling!$"
+
+Route109_Text_16E1B1:: @ 816E1B1
+ .string "MR. BRINEY: Then you go on and deliver\n"
+ .string "the DEVON GOODS. I’ll be waiting.$"
+
+DewfordTown_Text_16E1FA:: @ 816E1FA
+ .string "MR. BRINEY: Ahoy! We’ve made land in\n"
+ .string "SLATEPORT!\p"
+ .string "You just go on and tell me whenever\n"
+ .string "you want to set sail again!$"
+
+Route109_Text_16E26A:: @ 816E26A
+ .string "MR. BRINEY: Ahoy!\n"
+ .string "For you, I’ll go out to sea anytime!\p"
+ .string "Now, my friend, where are we bound?$"
+
+Route109_Text_16E2C5:: @ 816E2C5
+ .string "MR. BRINEY: You just tell me whenever\n"
+ .string "you need to set sail again!$"
+
+Route109_Text_16E307:: @ 816E307
+ .string "Yo, TRAINERS!\n"
+ .string "Whether you’re hot to trot,\l"
+ .string "or cool cat not,\l"
+ .string "chill at my papa’s spot!$"
+
+Route109_Text_16E35B:: @ 816E35B
+ .string "Little kids can dart around so quickly...\p"
+ .string "You don’t dare take your eyes off them\n"
+ .string "for an instant. It’s very taxing.\p"
+ .string "Mine’s with my POKéMON, so they should\n"
+ .string "be okay, but...$"
+
+Route109_Text_16E405:: @ 816E405
+ .string "Our sand castle’s taking a long time\n"
+ .string "to make.$"
+
+Route109_Text_16E433:: @ 816E433
+ .string "You can have this!$"
+
+Route109_Text_16E446:: @ 816E446
+ .string "We’re going to get all the sand from\n"
+ .string "the beach and make a big castle!\p"
+ .string "And then we’re going to be a king and\n"
+ .string "queen.\p"
+ .string "We’ll let you be a servant.$"
+
+Route109_Text_16E4D5:: @ 816E4D5
+ .string "The water around these parts is clean.\p"
+ .string "But, I get my ZIGZAGOON to pick up\n"
+ .string "litter from the shoreline at times.\p"
+ .string "Dirty water becomes rain and joins our\n"
+ .string "rivers, which we drink from...\p"
+ .string "If we pollute the sea, it all comes\n"
+ .string "back to haunt us eventually.$"
+
+Route109_Text_16E5CA:: @ 816E5CA
+ .string "ZIGZAGOON: Guguu?$"
+
+Route109_Text_16E5DC:: @ 816E5DC
+ .string "SEASHORE HOUSE\p"
+ .string "“May hot battles rage on hot sands!\n"
+ .string "The place for hot TRAINERS!”$"
+
+Route109_Text_16E62C:: @ 816E62C
+ .string "TRAINER TIPS\p"
+ .string "POKéMON at the same level may not\n"
+ .string "always have identical stats.\p"
+ .string "POKéMON raised by TRAINERS are said\n"
+ .string "to grow stronger than wild POKéMON.$"
+
+ .include "data/maps/text/Route110.s"
+ .include "data/maps/text/Route111.s"
+ .include "data/maps/text/Route112.s"
+ .include "data/maps/text/Route113.s"
+ .include "data/maps/text/Route114.s"
+ .include "data/maps/text/Route115.s"
+ .include "data/maps/text/Route116.s"
+ .include "data/maps/text/Route117.s"
+ .include "data/maps/text/Route118.s"
+ .include "data/maps/text/Route119.s"
+ .include "data/maps/text/Route120.s"
+Route119_Text_171B93:: @ 8171B93
+Route120_Text_171B93:: @ 8171B93
+ .string "Something unseeable is in the way.$"
+
+Route119_Text_171BB6:: @ 8171BB6
+ .string "Something unseeable is in the way.\p"
+ .string "Want to use the DEVON SCOPE?$"
+
+Route119_Text_171BF6:: @ 8171BF6
+ .string "{PLAYER} used the DEVON SCOPE.\p"
+ .string "An invisible POKéMON became completely\n"
+ .string "visible!\p"
+ .string "The startled POKéMON attacked!$"
+
+Route120_Text_171C5E:: @ 8171C5E
+ .string "ROUTE 120\n"
+ .string "{0x7B} FORTREE CITY$"
+
+Route120_Text_171C77:: @ 8171C77
+ .string "{0x7C} ROUTE 121\n"
+ .string "{0x7B} ROUTE 120$"
+
+ .include "data/maps/text/Route121.s"
+ .include "data/maps/text/Route123.s"
+ .include "data/maps/text/Route124.s"
+ .include "data/maps/text/Route128.s"
+ .include "data/maps/text/LittlerootTown_BrendansHouse_1F.s"
+ .include "data/maps/text/LittlerootTown_MaysHouse_1F.s"
+LittlerootTown_BrendansHouse_1F_Text_1725A3:: @ 81725A3
+ .string "MOM: Oh! {PLAYER}, {PLAYER}!\n"
+ .string "Quick! Come quickly!$"
+
+LittlerootTown_BrendansHouse_1F_Text_1725C9:: @ 81725C9
+LittlerootTown_MaysHouse_1F_Text_1725C9:: @ 81725C9
+ .string "MOM: Look! It’s PETALBURG GYM!\n"
+ .string "Maybe DAD will be on!$"
+
+LittlerootTown_BrendansHouse_1F_Text_1725FE:: @ 81725FE
+LittlerootTown_MaysHouse_1F_Text_1725FE:: @ 81725FE
+ .string "MOM: Oh... It’s over.\p"
+ .string "I think DAD was on, but we missed him.\n"
+ .string "Too bad.$"
+
+LittlerootTown_BrendansHouse_1F_Text_172644:: @ 8172644
+LittlerootTown_MaysHouse_1F_Text_172644:: @ 8172644
+ .string "Oh, yes.\n"
+ .string "One of DAD’s friends lives in town.\p"
+ .string "PROF. BIRCH is his name.\p"
+ .string "He lives right next door, so you should\n"
+ .string "go over and introduce yourself.$"
+
+LittlerootTown_BrendansHouse_1F_Text_1726D2:: @ 81726D2
+ .string "MOM: See you, honey!$"
+
+LittlerootTown_BrendansHouse_1F_Text_1726E7:: @ 81726E7
+ .string "MOM: Did you introduce yourself to\n"
+ .string "PROF. BIRCH?$"
+
+LittlerootTown_BrendansHouse_1F_Text_172717:: @ 8172717
+ .string "MOM: How are you doing, {PLAYER}?\n"
+ .string "You look a little tired.\p"
+ .string "I think you should rest a bit.$"
+
+LittlerootTown_BrendansHouse_1F_Text_17276B:: @ 817276B
+ .string "MOM: Take care, honey!$"
+
+LittlerootTown_BrendansHouse_1F_Text_172782:: @ 8172782
+ .string "MOM: Oh? Did DAD give you that BADGE?\p"
+ .string "Then here’s something from your MOM!$"
+
+LittlerootTown_BrendansHouse_1F_Text_1727CD:: @ 81727CD
+ .string "Don’t push yourself too hard, dear.\n"
+ .string "You can always come home.\p"
+ .string "Go for it, honey!$"
+
+LittlerootTown_BrendansHouse_1F_Text_17281D:: @ 817281D
+ .string "Gyao, gyao gyaoh...$"
+
+LittlerootTown_BrendansHouse_1F_Text_172831:: @ 8172831
+ .string "Gwagwah gwah...$"
+
+LittlerootTown_BrendansHouse_1F_Text_172841:: @ 8172841
+ .string "INTERVIEWER: ...We brought you this\n"
+ .string "report from in front of PETALBURG GYM.$"
+
+ .incbin "baserom.gba", 0x17288c, 0xff
+
+LittlerootTown_BrendansHouse_1F_Text_17298B:: @ 817298B
+ .string "DAD: Hm?\p"
+ .string "Hey, it’s {PLAYER}!\p"
+ .string "It’s been a while since I saw you,\n"
+ .string "but you look...stronger, somehow.\p"
+ .string "That’s the impression I get.\n"
+ .string "But your old man hasn’t given up yet!\p"
+ .string "Oh, yes, I have something for you.\n"
+ .string "This came to you from someone named\l"
+ .string "MR. BRINEY.$"
+
+LittlerootTown_BrendansHouse_1F_Text_172A7D:: @ 8172A7D
+ .string "DAD: Hm, a TICKET for a ferry?\p"
+ .string "If I recall, there are ferry ports in\n"
+ .string "SLATEPORT and LILYCOVE.\p"
+ .string "{PLAYER}, if you have ambition as a\n"
+ .string "TRAINER, go to the BATTLE TOWER.\p"
+ .string "It should teach you that there is\n"
+ .string "no end to a TRAINER’s chosen path.$"
+
+LittlerootTown_BrendansHouse_1F_Text_172B5E:: @ 8172B5E
+ .string "I’d better get back to PETALBURG GYM.\p"
+ .string "MOM, thanks for looking after the house\n"
+ .string "while I’m away.$"
+
+LittlerootTown_BrendansHouse_1F_Text_172BBC:: @ 8172BBC
+ .string "MOM: That DAD of yours...\p"
+ .string "He comes home for the first time in a\n"
+ .string "while, but all he talks about is POKéMON.\p"
+ .string "He should relax and stay a little longer.$"
+
+ .incbin "baserom.gba", 0x172c50, 0x1c8
+
+ .include "data/maps/text/LittlerootTown_BrendansHouse_2F.s"
+LittlerootTown_BrendansHouse_1F_Text_1730C2:: @ 81730C2
+LittlerootTown_MaysHouse_1F_Text_1730C2:: @ 81730C2
+ .string "Oh, hello. And you are?\p"
+ .string "... ... ... ... ... ... ... ... ...\n"
+ .string "... ... ... ... ... ... ... ... ...\p"
+ .string "Oh, you’re {PLAYER}{KUN}, our new next-door\n"
+ .string "neighbor! Hi!\p"
+ .string "We have a {STR_VAR_1} about the same\n"
+ .string "age as you.\p"
+ .string "Our {STR_VAR_1} was excited about making\n"
+ .string "a new friend.\p"
+ .string "Our {STR_VAR_1} is upstairs, I think.$"
+
+LittlerootTown_BrendansHouse_1F_Text_1731C6:: @ 81731C6
+ .string "Our {STR_VAR_1} is upstairs, I think.$"
+
+LittlerootTown_BrendansHouse_1F_Text_1731E3:: @ 81731E3
+ .string "Where has my husband gone?\n"
+ .string "Just when {PLAYER}{KUN} is visiting, too...\p"
+ .string "That man can never sit still for long...\n"
+ .string "He might be at his LAB.$"
+
+LittlerootTown_BrendansHouse_1F_Text_173262:: @ 8173262
+ .string "Oh, {RIVAL} has gone out somewhere.\p"
+ .string "Like father, like child.\n"
+ .string "{RIVAL} can’t stay quietly at home.$"
+
+LittlerootTown_BrendansHouse_1F_Text_1732B9:: @ 81732B9
+ .string "I think it’s wonderful for people to\n"
+ .string "travel with POKéMON.\p"
+ .string "But you should go home every so often\n"
+ .string "to let your mother know you’re okay.\p"
+ .string "She might not say it, but I’m sure she\n"
+ .string "worries about you, {PLAYER}{KUN}.$"
+
+LittlerootTown_BrendansHouse_2F_Text_17337E:: @ 817337E
+ .string "POKéMON fully restored!\n"
+ .string "Items ready, and... Huh?$"
+
+LittlerootTown_BrendansHouse_2F_Text_1733AF:: @ 81733AF
+ .string "Huh?\n"
+ .string "Who... Who are you?\p"
+ .string "... ... ... ... ... ... ... ...\n"
+ .string "... ... ... ... ... ... ... ...\p"
+ .string "Oh, you’re {PLAYER}{KUN}.\n"
+ .string "So your move was today.\p"
+ .string "Um... I’m MAY.\n"
+ .string "Glad to meet you!\p"
+ .string "I...\n"
+ .string "I have this dream of becoming friends\l"
+ .string "with POKéMON all over the world.\p"
+ .string "I... I heard about you, {PLAYER}{KUN}, from\n"
+ .string "my dad, PROF. BIRCH.\p"
+ .string "I was hoping that you would be nice,\n"
+ .string "{PLAYER}{KUN}, and that we could be friends.\p"
+ .string "Oh, this is silly, isn’t it?\n"
+ .string "I... I’ve just met you, {PLAYER}{KUN}.\p"
+ .string "Eheheh...\p"
+ .string "Oh, no! I forgot!\p"
+ .string "I was supposed to go help Dad catch\n"
+ .string "some wild POKéMON!\p"
+ .string "{PLAYER}{KUN}, I’ll catch you later!$"
+
+LittlerootTown_BrendansHouse_2F_Text_1735C9:: @ 81735C9
+ .string "POKéMON fully restored...\n"
+ .string "Items all packed, and...$"
+
+LittlerootTown_BrendansHouse_2F_Text_1735FC:: @ 81735FC
+ .string "Hey!\n"
+ .string "You...\p"
+ .string "Who are you?\p"
+ .string "Oh, you’re {PLAYER}, aren’t you?\n"
+ .string "Moved in next door, right?\p"
+ .string "I didn’t know that you’re a girl.\p"
+ .string "Dad, PROF. BIRCH, said that our new\n"
+ .string "next-door neighbor is a GYM LEADER’s\l"
+ .string "kid, so I assumed you’d be a guy.\p"
+ .string "My name’s BRENDAN.\n"
+ .string "So, hi, neighbor!\p"
+ .string "Huh? Hey, {PLAYER}, don’t you have\n"
+ .string "a POKéMON?\p"
+ .string "Do you want me to go catch you one?\p"
+ .string "Aw, darn, I forgot...\p"
+ .string "I’m supposed to go help my dad catch\n"
+ .string "some wild POKéMON.\p"
+ .string "Some other time, okay?$"
+
+LittlerootTown_BrendansHouse_2F_Text_1737AE:: @ 81737AE
+ .string "MAY: {PLAYER}{KUN}!\p"
+ .string "I was just checking my POKéDEX.\p"
+ .string "There’s still a lot of POKéMON that\n"
+ .string "I’ve seen but haven’t caught.\p"
+ .string "And there are many others that\n"
+ .string "I think will evolve.\p"
+ .string "I wonder where I should go catch\n"
+ .string "some POKéMON next?$"
+
+LittlerootTown_BrendansHouse_2F_Text_173883:: @ 8173883
+ .string "MAY: I wonder where I should go catch\n"
+ .string "some POKéMON next?\p"
+ .string "Wouldn’t it be funny if we ran into each\n"
+ .string "other, {PLAYER}{KUN}?$"
+
+LittlerootTown_BrendansHouse_2F_Text_1738F2:: @ 81738F2
+ .string "BRENDAN: Hey, it’s {PLAYER}.\p"
+ .string "I was just checking out my POKéDEX.\p"
+ .string "There are still many POKéMON that\n"
+ .string "I need to catch, I know, but this\l"
+ .string "is looking pretty good.\p"
+ .string "Checking this POKéDEX out gives me\n"
+ .string "the urge to hit the road again.$"
+
+LittlerootTown_BrendansHouse_2F_Text_1739CC:: @ 81739CC
+ .string "BRENDAN: I’m having a hard time deciding\n"
+ .string "where I should catch POKéMON next.\p"
+ .string "Hey, {PLAYER}, if I see you while I’m out\n"
+ .string "catching POKéMON, I can pitch you a\l"
+ .string "battle if you’d like.$"
+
+ .incbin "baserom.gba", 0x173a76, 0xb3
+
+ .include "data/maps/text/LittlerootTown_ProfessorBirchsLab.s"
+ .include "data/maps/text/OldaleTown_House1.s"
+ .include "data/maps/text/OldaleTown_House2.s"
+ .include "data/maps/text/OldaleTown_PokemonCenter_1F.s"
+ .include "data/maps/text/OldaleTown_Mart.s"
+ .include "data/maps/text/DewfordTown_House1.s"
+ .include "data/maps/text/DewfordTown_PokemonCenter_1F.s"
+ .include "data/maps/text/DewfordTown_Gym.s"
+ .include "data/maps/text/DewfordTown_Hall.s"
+ .include "data/maps/text/DewfordTown_House2.s"
+ .include "data/maps/text/LavaridgeTown_HerbShop.s"
+ .include "data/maps/text/LavaridgeTown_Gym_1F.s"
+ .include "data/maps/text/LavaridgeTown_House.s"
+ .include "data/maps/text/LavaridgeTown_Mart.s"
+ .include "data/maps/text/LavaridgeTown_PokemonCenter_1F.s"
+ .include "data/maps/text/FallarborTown_Mart.s"
+ .include "data/maps/text/FallarborTown_ContestLobby.s"
+ .include "data/maps/text/FallarborTown_ContestHall.s"
+ .include "data/maps/text/FallarborTown_PokemonCenter_1F.s"
+ .include "data/maps/text/FallarborTown_House1.s"
+ .include "data/maps/text/FallarborTown_House2.s"
+ .include "data/maps/text/VerdanturfTown_ContestLobby.s"
+ .include "data/maps/text/VerdanturfTown_ContestHall.s"
+ .include "data/maps/text/VerdanturfTown_Mart.s"
+ .include "data/maps/text/VerdanturfTown_PokemonCenter_1F.s"
+ .include "data/maps/text/VerdanturfTown_WandasHouse.s"
+ .include "data/maps/text/VerdanturfTown_FriendshipRatersHouse.s"
+ .include "data/maps/text/VerdanturfTown_House.s"
+ .include "data/maps/text/PacifidlogTown_PokemonCenter_1F.s"
+ .include "data/maps/text/PacifidlogTown_House1.s"
+ .include "data/maps/text/PacifidlogTown_House2.s"
+ .include "data/maps/text/PacifidlogTown_House3.s"
+ .include "data/maps/text/PacifidlogTown_House4.s"
+ .include "data/maps/text/PacifidlogTown_House5.s"
+ .include "data/maps/text/PetalburgCity_WallysHouse.s"
+ .include "data/maps/text/PetalburgCity_Gym.s"
+ .include "data/maps/text/PetalburgCity_House1.s"
+ .include "data/maps/text/PetalburgCity_House2.s"
+ .include "data/maps/text/PetalburgCity_PokemonCenter_1F.s"
+ .include "data/maps/text/PetalburgCity_Mart.s"
+ .include "data/maps/text/SlateportCity_SternsShipyard_1F.s"
+ .include "data/maps/text/SlateportCity_SternsShipyard_2F.s"
+ .include "data/maps/text/SlateportCity_ContestLobby.s"
+ .include "data/maps/text/SlateportCity_ContestHall.s"
+ .include "data/maps/text/SlateportCity_House1.s"
+ .include "data/maps/text/SlateportCity_PokemonFanClub.s"
+ .include "data/maps/text/SlateportCity_OceanicMuseum_1F.s"
+ .include "data/maps/text/SlateportCity_OceanicMuseum_2F.s"
+ .include "data/maps/text/SlateportCity_Harbor.s"
+ .include "data/maps/text/SlateportCity_House2.s"
+ .include "data/maps/text/SlateportCity_PokemonCenter_1F.s"
+ .include "data/maps/text/SlateportCity_Mart.s"
+ .include "data/maps/text/MauvilleCity_Gym.s"
+ .include "data/maps/text/MauvilleCity_BikeShop.s"
+ .include "data/maps/text/MauvilleCity_House1.s"
+ .include "data/maps/text/MauvilleCity_GameCorner.s"
+ .include "data/maps/text/MauvilleCity_House2.s"
+ .include "data/maps/text/MauvilleCity_PokemonCenter_1F.s"
+ .include "data/maps/text/MauvilleCity_PokemonCenter_2F.s"
+ .include "data/maps/text/MauvilleCity_Mart.s"
+ .include "data/maps/text/RustboroCity_DevonCorp_1F.s"
+ .include "data/maps/text/RustboroCity_DevonCorp_2F.s"
+ .include "data/maps/text/RustboroCity_DevonCorp_3F.s"
+ .include "data/maps/text/RustboroCity_Gym.s"
+ .include "data/maps/text/RustboroCity_PokemonSchool.s"
+ .include "data/maps/text/RustboroCity_PokemonCenter_1F.s"
+ .include "data/maps/text/RustboroCity_Mart.s"
+ .include "data/maps/text/RustboroCity_Flat1_1F.s"
+ .include "data/maps/text/RustboroCity_Flat1_2F.s"
+ .include "data/maps/text/RustboroCity_House1.s"
+ .include "data/maps/text/RustboroCity_CuttersHouse.s"
+ .include "data/maps/text/RustboroCity_House2.s"
+ .include "data/maps/text/RustboroCity_Flat2_1F.s"
+ .include "data/maps/text/RustboroCity_Flat2_2F.s"
+ .include "data/maps/text/RustboroCity_Flat2_3F.s"
+ .include "data/maps/text/RustboroCity_House3.s"
+ .include "data/maps/text/FortreeCity_House1.s"
+ .include "data/maps/text/FortreeCity_Gym.s"
+ .include "data/maps/text/FortreeCity_PokemonCenter_1F.s"
+ .include "data/maps/text/FortreeCity_Mart.s"
+ .include "data/maps/text/FortreeCity_House2.s"
+ .include "data/maps/text/FortreeCity_House3.s"
+ .include "data/maps/text/FortreeCity_House4.s"
+ .include "data/maps/text/FortreeCity_House5.s"
+ .include "data/maps/text/FortreeCity_DecorationShop.s"
+ .include "data/maps/text/LilycoveCity_CoveLilyMotel_1F.s"
+ .include "data/maps/text/LilycoveCity_CoveLilyMotel_2F.s"
+ .include "data/maps/text/LilycoveCity_LilycoveMuseum_1F.s"
+ .include "data/maps/text/LilycoveCity_LilycoveMuseum_2F.s"
+ .include "data/maps/text/LilycoveCity_ContestLobby.s"
+FallarborTown_ContestLobby_Text_188559:: @ 8188559
+LilycoveCity_ContestLobby_Text_188559:: @ 8188559
+ .string "We hope you will participate another\n"
+ .string "time.$"
+
+LilycoveCity_ContestLobby_Text_188584:: @ 8188584
+ .string "Would you like to enter a CONTEST?$"
+
+LilycoveCity_ContestLobby_Text_1885A7:: @ 81885A7
+ .string "When four players are ready, connect\n"
+ .string "over a Game Link cable, and register\l"
+ .string "with me, please.\p"
+ .string "Please choose the same CONTEST\n"
+ .string "as your fellow contestants.\p"
+ .string "The CONTEST begins as soon as all\n"
+ .string "players register their entry.\p"
+ .string "After that, the usual CONTEST rules\n"
+ .string "apply.$"
+
+ .incbin "baserom.gba", 0x1886a8, 0x34
+
+LilycoveCity_ContestLobby_Text_1886DC:: @ 81886DC
+ .string "Which CONTEST would you like to enter?$"
+
+LilycoveCity_ContestLobby_Text_188703:: @ 8188703
+ .string "Which POKéMON would you like to enter?$"
+
+LilycoveCity_ContestLobby_Text_18872A:: @ 818872A
+ .string "Transmitting...$"
+
+LilycoveCity_ContestLobby_Text_18873A:: @ 818873A
+ .string "Transmission error...$"
+
+LilycoveCity_ContestLobby_Text_188750:: @ 8188750
+ .string "You may have chosen a different\n"
+ .string "CONTEST than another player.$"
+
+LilycoveCity_ContestLobby_Text_18878D:: @ 818878D
+ .string "You may have made a different\n"
+ .string "choice than another player.$"
+
+LilycoveCity_ContestLobby_Text_1887C7:: @ 81887C7
+ .string "Please wait.\n"
+ .string "Press the B Button to cancel...$"
+
+LilycoveCity_ContestLobby_Text_1887F4:: @ 81887F4
+ .string "We hope you will participate\n"
+ .string "another time.$"
+
+LilycoveCity_ContestLobby_Text_18881F:: @ 818881F
+ .string "Transmission error.\n"
+ .string "Please try again.$"
+
+LilycoveCity_ContestLobby_Text_188845:: @ 8188845
+ .string "Your POKéMON will be entered in\n"
+ .string "the CONTEST.\p"
+ .string "Your POKéMON is Entry No. {STR_VAR_2}.$"
+
+ .incbin "baserom.gba", 0x188890, 0x36
+
+LilycoveCity_ContestLobby_Text_1888C6:: @ 81888C6
+ .string "The CONTEST will begin shortly.$"
+
+ .incbin "baserom.gba", 0x1888e6, 0x29
+
+LilycoveCity_ContestLobby_Text_18890F:: @ 818890F
+ .string "Congratulations!\p"
+ .string "I did a painting of your POKéMON to\n"
+ .string "commemorate its victory...\p"
+ .string "Well, your POKéMON’s appeals were\n"
+ .string "so fantastic, it spurred me into\l"
+ .string "painting better than I usually do.\l"
+ .string "Look, see?$"
+
+ .incbin "baserom.gba", 0x1889d0, 0x2d
+
+LilycoveCity_ContestLobby_Text_1889FD:: @ 81889FD
+ .string "What do you think? I’m confident in\n"
+ .string "what I’ve done, but do you like it?\p"
+ .string "A work of this caliber, it wouldn’t look\n"
+ .string "out of place in an art museum.\p"
+ .string "Huh? An art museum really is looking\n"
+ .string "for paintings?\p"
+ .string "Do you think I should take this there?$"
+
+LilycoveCity_ContestLobby_Text_188AE8:: @ 8188AE8
+ .string "What, really? Then, sure, I will take\n"
+ .string "this painting there right now.\p"
+ .string "I’ll give it a proper title, too.\p"
+ .string "I hope they’ll like it and consider\n"
+ .string "exhibiting this.\p"
+ .string "Please check if they did accept this.\n"
+ .string "Thank you!$"
+
+LilycoveCity_ContestLobby_Text_188BB5:: @ 8188BB5
+ .string "Oh, that’s right!\p"
+ .string "As a memento of me painting your\n"
+ .string "POKéMON, please take this.$"
+
+LilycoveCity_ContestLobby_Text_188C03:: @ 8188C03
+ .string "{PLAYER} received a RIBBON.$"
+
+LilycoveCity_ContestLobby_Text_188C19:: @ 8188C19
+ .string "{PLAYER} put the RIBBON on\n"
+ .string "{STR_VAR_1}.$"
+
+LilycoveCity_ContestLobby_Text_188C32:: @ 8188C32
+ .string "Okay, see you!$"
+
+LilycoveCity_ContestLobby_Text_188C41:: @ 8188C41
+ .string "Oh... Then, I guess I’ll just take\n"
+ .string "this home with me...\p"
+ .string "But, you know, I would like to take\n"
+ .string "this to the art museum... Okay?$"
+
+LilycoveCity_ContestLobby_Text_188CBD:: @ 8188CBD
+ .string "Oh, fine, that’s the way it is.\n"
+ .string "I will hang this in my own house.\p"
+ .string "I’ll just have to try harder next time.\n"
+ .string "Well, be seeing you.$"
+
+LilycoveCity_ContestLobby_Text_188D3C:: @ 8188D3C
+ .string "Hoo, boy... Master Rank CONTESTS,\n"
+ .string "here I come.\p"
+ .string "The world will know that my dearest\n"
+ .string "POKéMON is the cutest being in all\l"
+ .string "existence. The time has come!\l"
+ .string "Uheheheh.$"
+
+LilycoveCity_ContestLobby_Text_188DDA:: @ 8188DDA
+ .string "You can see a whole variety of\n"
+ .string "POKéMON here.\p"
+ .string "That’s why I make this place a regular\n"
+ .string "part of my daily stroll.$"
+
+LilycoveCity_ContestLobby_Text_188E47:: @ 8188E47
+ .string "Oh, dear! They still haven’t given\n"
+ .string "you a CONTEST PASS?\p"
+ .string "You should go get one in VERDANTURF\n"
+ .string "TOWN right away.\p"
+ .string "It’s such a thrill having others see\n"
+ .string "POKéMON that you’ve raised with care\l"
+ .string "and love.$"
+
+LilycoveCity_ContestLobby_Text_188F07:: @ 8188F07
+ .string "When you get up to the Master Rank\n"
+ .string "CONTESTS, you get your eyes opened\l"
+ .string "to striking POKéMON that just scream\l"
+ .string "to be painted.$"
+
+LilycoveCity_ContestLobby_Text_188F81:: @ 8188F81
+ .string "The TOUGHNESS CONTEST is like\n"
+ .string "extreme, man!\p"
+ .string "Those muscular appeals...\n"
+ .string "Cascading sweat... I swoon!$"
+
+LilycoveCity_ContestLobby_Text_188FE3:: @ 8188FE3
+ .string "Day in and day out, I lavished my care\n"
+ .string "on this POKéMON.\p"
+ .string "Its condition is peaking.\n"
+ .string "Today, victory is mine!$"
+
+LilycoveCity_ContestLobby_Text_18904D:: @ 818904D
+ .string "I made {POKEBLOCK}S with Mom, Dad and\n"
+ .string "Big Sister. They turned out great!\p"
+ .string "I bet you can make smoother, better\n"
+ .string "{POKEBLOCK}S if you have more people.$"
+
+ .include "data/maps/text/LilycoveCity_ContestHall.s"
+ .include "data/maps/text/LilycoveCity_PokemonCenter_1F.s"
+ .include "data/maps/text/LilycoveCity_PokemonTrainerFanClub.s"
+ .include "data/maps/text/LilycoveCity_Harbor.s"
+ .include "data/maps/text/LilycoveCity_MoveDeletersHouse.s"
+ .include "data/maps/text/LilycoveCity_House1.s"
+ .include "data/maps/text/LilycoveCity_House2.s"
+ .include "data/maps/text/LilycoveCity_House3.s"
+ .include "data/maps/text/LilycoveCity_House4.s"
+ .include "data/maps/text/LilycoveCity_DepartmentStore_1F.s"
+ .include "data/maps/text/LilycoveCity_DepartmentStore_2F.s"
+ .include "data/maps/text/LilycoveCity_DepartmentStore_3F.s"
+ .include "data/maps/text/LilycoveCity_DepartmentStore_4F.s"
+ .include "data/maps/text/LilycoveCity_DepartmentStore_5F.s"
+ .include "data/maps/text/LilycoveCity_DepartmentStoreRooftop.s"
+ .include "data/maps/text/MossdeepCity_Gym.s"
+ .include "data/maps/text/MossdeepCity_House1.s"
+ .include "data/maps/text/MossdeepCity_House2.s"
+ .include "data/maps/text/MossdeepCity_PokemonCenter_1F.s"
+ .include "data/maps/text/MossdeepCity_PokemonCenter_2F.s"
+ .include "data/maps/text/MossdeepCity_Mart.s"
+ .include "data/maps/text/MossdeepCity_House3.s"
+ .include "data/maps/text/MossdeepCity_StevensHouse.s"
+ .include "data/maps/text/MossdeepCity_House4.s"
+ .include "data/maps/text/MossdeepCity_SpaceCenter_1F.s"
+ .include "data/maps/text/MossdeepCity_SpaceCenter_2F.s"
+ .include "data/maps/text/MossdeepCity_GameCorner_1F.s"
+ .include "data/maps/text/MossdeepCity_GameCorner_B1F.s"
+MossdeepCity_GameCorner_1F_Text_18E7B1:: @ 818E7B1
+ .string "So, it became a standoff.\p"
+ .string "It was a brilliant match in which\n"
+ .string "neither side conceded a step!$"
+
+ .incbin "baserom.gba", 0x18e80b, 0x3
+
+MossdeepCity_GameCorner_1F_Text_18E80E:: @ 818E80E
+ .string "That was superlative!\p"
+ .string "Why, it was like seeing myself in my\n"
+ .string "youth again!$"
+
+ .incbin "baserom.gba", 0x18e856, 0x3
+
+MossdeepCity_GameCorner_1F_Text_18E859:: @ 818E859
+ .string "Ah, too bad for you!\p"
+ .string "But it was a good match.\n"
+ .string "I hope you can win next time.$"
+
+ .include "data/maps/text/SootopolisCity_Gym_1F.s"
+ .include "data/maps/text/SootopolisCity_Gym_B1F.s"
+SootopolisCity_Gym_1F_Text_18F0CA:: @ 818F0CA
+ .string "Allow me to formally introduce\n"
+ .string "myself.\p"
+ .string "I am WALLACE.\n"
+ .string "The GYM LEADER of SOOTOPOLIS.\p"
+ .string "There’s something about you...\n"
+ .string "A difference in your demeanor.\p"
+ .string "I think I sense that in you.\p"
+ .string "What happened inside the CAVE OF\n"
+ .string "ORIGIN, and what you did, I will likely\l"
+ .string "learn through our upcoming battle.\p"
+ .string "Now, show me. Show me the power you\n"
+ .string "wield with your POKéMON.\p"
+ .string "And I, in turn, shall present you with\n"
+ .string "a performance of illusions in water\l"
+ .string "by me and my POKéMON!$"
+
+SootopolisCity_Gym_1F_Text_18F282:: @ 818F282
+ .string "Bravo.\p"
+ .string "I realize now your authenticity and\n"
+ .string "magnificence as a POKéMON TRAINER.\p"
+ .string "I find much joy in having met you and\n"
+ .string "your POKéMON.\p"
+ .string "You have proven yourself worthy of\n"
+ .string "the RAIN BADGE. Accept it.$"
+
+SootopolisCity_Gym_1F_Text_18F342:: @ 818F342
+ .string "{PLAYER} received the RAIN BADGE\n"
+ .string "from WALLACE.$"
+
+SootopolisCity_Gym_1F_Text_18F36B:: @ 818F36B
+ .string "Having that BADGE assures you the\n"
+ .string "full obedience of all your POKéMON to\l"
+ .string "every command you make.\p"
+ .string "The BADGE also allows the use of the\n"
+ .string "HM move WATERFALL to scale walls\l"
+ .string "of cascading water.\p"
+ .string "And, so that you never forget the\n"
+ .string "battle we shared, take this...$"
+
+SootopolisCity_Gym_1F_Text_18F466:: @ 818F466
+ .string "The TM I handed you contains\n"
+ .string "WATER PULSE.\p"
+ .string "In use, it will occasionally confuse\n"
+ .string "the target with ultrasonic waves.$"
+
+SootopolisCity_Gym_1F_Text_18F4D7:: @ 818F4D7
+ .string "TRAINERS who have gathered all the\n"
+ .string "GYM BADGES of HOENN should make way\l"
+ .string "for the ultimate destination.\p"
+ .string "The POKéMON LEAGUE.\p"
+ .string "Travel to the easternmost reaches\n"
+ .string "of HOENN, to the island EVER GRANDE.\l"
+ .string "The POKéMON LEAGUE is there.$"
+
+SootopolisCity_Gym_1F_Text_18F5B4:: @ 818F5B4
+ .string "There remains but one BADGE to\n"
+ .string "obtain in HOENN.\p"
+ .string "If you wish to challenge the POKéMON\n"
+ .string "LEAGUE, you must obtain the last\l"
+ .string "BADGE from the GYM in FORTREE.$"
+
+SootopolisCity_Gym_1F_Text_18F649:: @ 818F649
+ .string "SOOTOPOLIS CITY POKéMON GYM$"
+
+SootopolisCity_Gym_1F_Text_18F665:: @ 818F665
+ .string "SOOTOPOLIS CITY POKéMON GYM\p"
+ .string "WALLACE’S CERTIFIED TRAINERS:\n"
+ .string "{PLAYER}$"
+
+ .include "data/maps/text/SootopolisCity_PokemonCenter_1F.s"
+ .include "data/maps/text/SootopolisCity_Mart.s"
+ .include "data/maps/text/SootopolisCity_House1.s"
+ .include "data/maps/text/SootopolisCity_House2.s"
+ .include "data/maps/text/SootopolisCity_House3.s"
+ .include "data/maps/text/SootopolisCity_House4.s"
+ .include "data/maps/text/SootopolisCity_House5.s"
+ .include "data/maps/text/SootopolisCity_House6.s"
+ .include "data/maps/text/SootopolisCity_House7.s"
+ .include "data/maps/text/SootopolisCity_House8.s"
+ .include "data/maps/text/EverGrandeCity_SidneysRoom.s"
+ .include "data/maps/text/EverGrandeCity_PhoebesRoom.s"
+ .include "data/maps/text/EverGrandeCity_GlaciasRoom.s"
+ .include "data/maps/text/EverGrandeCity_DrakesRoom.s"
+ .include "data/maps/text/EverGrandeCity_ChampionsRoom.s"
+ .include "data/maps/text/EverGrandeCity_PokemonLeague.s"
+ .include "data/maps/text/EverGrandeCity_HallOfFame.s"
+ .include "data/maps/text/EverGrandeCity_PokemonCenter_1F.s"
+ .include "data/maps/text/Route104_MrBrineysHouse.s"
+ .include "data/maps/text/Route111_WinstrateFamilysHouse.s"
+ .include "data/maps/text/Route111_OldLadysRestStop.s"
+ .include "data/maps/text/Route112_CableCarStation.s"
+ .include "data/maps/text/MtChimney_CableCarStation.s"
+Route112_CableCarStation_Text_1925A9:: @ 81925A9
+ .string "Please step this way.$"
+
+MtChimney_CableCarStation_Text_1925BF:: @ 81925BF
+ .string "Please ride with us another time.$"
+
+ .include "data/maps/text/Route114_FossilManiacsHouse.s"
+ .include "data/maps/text/Route114_FossilManiacsTunnel.s"
+ .include "data/maps/text/Route114_LanettesHouse.s"
+ .include "data/maps/text/Route116_TunnelersRestHouse.s"
+ .include "data/maps/text/MeteorFalls_1F_1R.s"
+ .include "data/maps/text/MeteorFalls_1F_2R.s"
+ .include "data/maps/text/RusturfTunnel.s"
+ .include "data/maps/text/GraniteCave_1F.s"
+ .include "data/maps/text/GraniteCave_StevensRoom.s"
+ .include "data/maps/text/PetalburgWoods.s"
+ .include "data/maps/text/MtChimney.s"
+ .include "data/maps/text/JaggedPass.s"
+ .include "data/maps/text/MtPyre_1F.s"
+ .include "data/maps/text/MtPyre_2F.s"
+ .include "data/maps/text/MtPyre_3F.s"
+ .include "data/maps/text/MtPyre_4F.s"
+ .include "data/maps/text/MtPyre_5F.s"
+ .include "data/maps/text/MtPyre_6F.s"
+ .include "data/maps/text/AquaHideout_1F.s"
+ .include "data/maps/text/AquaHideout_B1F.s"
+ .include "data/maps/text/AquaHideout_B2F.s"
+ .include "data/maps/text/Underwater_SeafloorCavern.s"
+ .include "data/maps/text/SeafloorCavern_Room1.s"
+ .include "data/maps/text/SeafloorCavern_Room3.s"
+ .include "data/maps/text/SeafloorCavern_Room4.s"
+ .include "data/maps/text/VictoryRoad_1F.s"
+ .include "data/maps/text/VictoryRoad_B1F.s"
+ .include "data/maps/text/VictoryRoad_B2F.s"
+ .include "data/maps/text/ShoalCave_LowTideLowerRoom.s"
+ .include "data/maps/text/NewMauville_Entrance.s"
+ .include "data/maps/text/NewMauville_Inside.s"
+ .include "data/maps/text/AbandonedShip_Corridors_1F.s"
+ .include "data/maps/text/AbandonedShip_Rooms_1F.s"
+ .include "data/maps/text/AbandonedShip_Corridors_B1F.s"
+ .include "data/maps/text/AbandonedShip_HiddenFloorCorridors.s"
+ .include "data/maps/text/AbandonedShip_Rooms_B1F.s"
+ .include "data/maps/text/AbandonedShip_Rooms2_B1F.s"
+ .include "data/maps/text/AbandonedShip_Rooms2_1F.s"
+ .include "data/maps/text/AbandonedShip_CaptainsOffice.s"
+AbandonedShip_HiddenFloorCorridors_Text_198DC0:: @ 8198DC0
+ .string "The door is locked.\p"
+ .string "“RM. 1” is painted on the door.$"
+
+AbandonedShip_HiddenFloorCorridors_Text_198DF4:: @ 8198DF4
+ .string "The door is locked.\p"
+ .string "“RM. 2” is painted on the door.$"
+
+AbandonedShip_HiddenFloorCorridors_Text_198E28:: @ 8198E28
+ .string "The door is locked.\p"
+ .string "“RM. 4” is painted on the door.$"
+
+AbandonedShip_HiddenFloorCorridors_Text_198E5C:: @ 8198E5C
+ .string "The door is locked.\p"
+ .string "“RM. 6” is painted on the door.$"
+
+AbandonedShip_HiddenFloorCorridors_Text_198E90:: @ 8198E90
+ .string "{PLAYER} inserted and turned the\n"
+ .string "KEY.\p"
+ .string "The inserted KEY stuck fast, but the\n"
+ .string "door opened.$"
+
+ .include "data/maps/text/AbandonedShip_HiddenFloorRooms.s"
+ .include "data/maps/text/SecretBase_RedCave1.s"
+ .include "data/maps/text/InsideOfTruck.s"
+ .include "data/maps/text/SSTidalCorridor.s"
+ .include "data/maps/text/SSTidalRooms.s"
+SSTidalCorridor_Text_199088:: @ 8199088
+ .string "We hope you enjoy your voyage on\n"
+ .string "our ferry.$"
+
+SSTidalCorridor_Text_1990B4:: @ 81990B4
+SSTidalRooms_Text_1990B4:: @ 81990B4
+ .string "We have made land in SLATEPORT CITY.\n"
+ .string "Thank you for sailing with us.$"
+
+SSTidalRooms_Text_1990F8:: @ 81990F8
+ .string "We have made land in LILYCOVE CITY.\n"
+ .string "Thank you for sailing with us.$"
+
+SSTidalCorridor_Text_19913B:: @ 819913B
+ .string "It’ll be some time before we make land,\n"
+ .string "I reckon.\p"
+ .string "You can rest up in your cabin if you’d\n"
+ .string "like. Your cabin’s No. 2.\p"
+ .string "The bed in there is soft and plushy.\n"
+ .string "I can attest to how comfy it is!$"
+
+SSTidalCorridor_Text_1991F4:: @ 81991F4
+ .string "We’ve arrived!$"
+
+SSTidalCorridor_Text_199203:: @ 8199203
+ .string "Go visit other cabins.\n"
+ .string "TRAINERS bored of the boat trip will\l"
+ .string "be itching to battle.$"
+
+SSTidalCorridor_Text_199255:: @ 8199255
+ .string "Enjoy your cruise!$"
+
+SSTidalCorridor_Text_199268:: @ 8199268
+ .string "The horizon spreads beyond the\n"
+ .string "porthole.$"
+
+SSTidalCorridor_Text_199291:: @ 8199291
+ .string "MR. BRINEY: Welcome aboard, {PLAYER}{KUN}!\p"
+ .string "They made me honorary captain of the\n"
+ .string "S.S. TIDAL!\p"
+ .string "You can call me CAPTAIN BRINEY now!\p"
+ .string "You know, I retired once before, but\n"
+ .string "when I saw this majestic ship...\p"
+ .string "Let me just say, it stirred my sleeping\n"
+ .string "soul as a sailor!$"
+
+SSTidalCorridor_Text_199388:: @ 8199388
+ .string "PEEKO: Pihyo pihyohyo...$"
+
+SSTidalCorridor_Text_1993A1:: @ 81993A1
+ .string "Cabin 1$"
+
+SSTidalCorridor_Text_1993A9:: @ 81993A9
+ .string "Cabin 2$"
+
+SSTidalCorridor_Text_1993B1:: @ 81993B1
+ .string "Cabin 3$"
+
+SSTidalCorridor_Text_1993B9:: @ 81993B9
+ .string "Cabin 4$"
+
+ .include "data/maps/text/SSTidalLowerDeck.s"
+SSTidalRooms_Text_19956B:: @ 819956B
+ .string "It’s a bed.\n"
+ .string "Let’s take a rest.$"
+
+SSTidalRooms_Text_19958A:: @ 819958A
+ .string "Go back and forth between LILYCOVE\n"
+ .string "and SLATEPORT, that’s what I do.\p"
+ .string "It’s my hobby - going from port to port\n"
+ .string "to take in POKéMON CONTESTS.$"
+
+SSTidalRooms_Text_199613:: @ 8199613
+ .string "That was an enjoyable match!$"
+
+SSTidalRooms_Text_199630:: @ 8199630
+ .string "I get so excited imagining what kinds\n"
+ .string "of POKéMON I’ll get to see in the next\l"
+ .string "CONTEST. The anticipation of it thrills!$"
+
+SSTidalRooms_Text_1996A6:: @ 81996A6
+ .string "Are your friends strong?$"
+
+SSTidalRooms_Text_1996BF:: @ 81996BF
+ .string "Your friends are, indeed, strong.$"
+
+SSTidalRooms_Text_1996E1:: @ 81996E1
+ .string "Friends need not be human.\n"
+ .string "For me, POKéMON are treasured friends!$"
+
+SSTidalRooms_Text_199723:: @ 8199723
+ .string "Child...\n"
+ .string "Did you knock on the door?$"
+
+SSTidalRooms_Text_199747:: @ 8199747
+ .string "A loss is to be accepted without haste\n"
+ .string "or panic.$"
+
+SSTidalRooms_Text_199778:: @ 8199778
+ .string "To be never ruffled in any situation is\n"
+ .string "the GENTLEMAN’s code of conduct.$"
+
+SSTidalRooms_Text_1997C1:: @ 81997C1
+ .string "JED: I feel a little shy about this, but...\n"
+ .string "We’ll show you our lovey-dovey power!$"
+
+SSTidalRooms_Text_199813:: @ 8199813
+ .string "JED: Sigh...$"
+
+SSTidalRooms_Text_199820:: @ 8199820
+ .string "JED: It’s the first time that our lovey-\n"
+ .string "dovey power couldn’t prevail!\l"
+ .string "You must be an awesome TRAINER!$"
+
+SSTidalRooms_Text_199887:: @ 8199887
+ .string "JED: You only have one POKéMON?\n"
+ .string "Isn’t that just too lonesome?$"
+
+SSTidalRooms_Text_1998C5:: @ 81998C5
+ .string "LEA: I feel a little silly, but...\n"
+ .string "We’ll show you our lovey-dovey power!$"
+
+SSTidalRooms_Text_19990E:: @ 819990E
+ .string "LEA: Oh, boo!$"
+
+SSTidalRooms_Text_19991C:: @ 819991C
+ .string "LEA: I can’t believe it!\n"
+ .string "Our lovey-dovey power failed...\l"
+ .string "You must be an awesome TRAINER!$"
+
+SSTidalRooms_Text_199975:: @ 8199975
+ .string "LEA: I wanted to battle...\n"
+ .string "But you don’t even have two POKéMON...$"
+
+SSTidalRooms_Text_1999B7:: @ 81999B7
+ .string "Ah, you’ve come just in time.\p"
+ .string "I’m bored, you see.\n"
+ .string "You may entertain me.$"
+
+SSTidalRooms_Text_1999FF:: @ 81999FF
+ .string "...That will do.$"
+
+SSTidalRooms_Text_199A10:: @ 8199A10
+ .string "Perhaps I shall get Father to acquire\n"
+ .string "a yacht for me.\l"
+ .string "A yacht for me and POKéMON!$"
+
+SSTidalRooms_Text_199A62:: @ 8199A62
+ .string "Oh, you’re such an adorable TRAINER.\n"
+ .string "Would you like to have tea?\l"
+ .string "Or would you rather battle?$"
+
+SSTidalRooms_Text_199ABF:: @ 8199ABF
+ .string "I see.\n"
+ .string "You’re the active sort.$"
+
+SSTidalRooms_Text_199ADE:: @ 8199ADE
+ .string "A world cruise on a luxury liner has its\n"
+ .string "charms, I must say...\p"
+ .string "But, I will admit there is an appealing\n"
+ .string "side to touring HOENN by ferry.$"
+
+SSTidalRooms_Text_199B65:: @ 8199B65
+ .string "Uh... Hi! I... I’m not acting suspicious!\n"
+ .string "Uh... You can have this! For free!\p"
+ .string "It... Honestly, I didn’t SNATCH it from\n"
+ .string "someone! I’d never do such a thing!\l"
+ .string "It’s clean! You can use it!$"
+
+SSTidalRooms_Text_199C1A:: @ 8199C1A
+ .string "SNATCH steals the foe’s move in\n"
+ .string "advance, and then uses the snatched\l"
+ .string "move on the foe.$"
+
+ .include "data/maps/text/BattleTower_Outside.s"
+ .include "data/maps/text/BattleTower_Lobby.s"
+ .include "data/maps/text/BattleTower_BattleRoom.s"
+ .include "data/maps/text/Route104_Prototype.s"
+ .include "data/maps/text/Route104_PrototypePrettyPetalFlowerShop.s"
+ .include "data/maps/text/Route109_SeashoreHouse.s"
+ .include "data/maps/text/Route110_TrickHouseEntrance.s"
+ .include "data/maps/text/Route110_TrickHousePuzzle1.s"
+ .include "data/maps/text/Route110_TrickHouseEnd.s"
+Route110_TrickHousePuzzle1_Text_19CB4F:: @ 819CB4F
+ .string "I’ll hack and slash my way to victory\n"
+ .string "with the CUT we just learned!$"
+
+Route110_TrickHousePuzzle1_Text_19CB93:: @ 819CB93
+ .string "Why are you so serious?$"
+
+Route110_TrickHousePuzzle1_Text_19CBAB:: @ 819CBAB
+ .string "I never get tired of hacking\n"
+ .string "and slashing!$"
+
+Route110_TrickHousePuzzle1_Text_19CBD6:: @ 819CBD6
+ .string "I wandered into this weird house\n"
+ .string "by accident...$"
+
+Route110_TrickHousePuzzle1_Text_19CC06:: @ 819CC06
+ .string "And now I’ve lost...$"
+
+Route110_TrickHousePuzzle1_Text_19CC1B:: @ 819CC1B
+ .string "I lost my way, I lost a battle, and I’m\n"
+ .string "even more lost... I can’t get out...$"
+
+Route110_TrickHousePuzzle1_Text_19CC68:: @ 819CC68
+ .string "Just who is the TRICK MASTER?$"
+
+Route110_TrickHousePuzzle1_Text_19CC86:: @ 819CC86
+ .string "I lost while I was lost in thought!$"
+
+Route110_TrickHousePuzzle1_Text_19CCAA:: @ 819CCAA
+ .string "You’re strong!\n"
+ .string "Just who are you?$"
+
+ .incbin "baserom.gba", 0x19cccb, 0x7b
+
+ .include "data/maps/text/Route110_TrickHousePuzzle2.s"
+ .include "data/maps/text/Route110_TrickHousePuzzle3.s"
+ .include "data/maps/text/Route110_TrickHousePuzzle4.s"
+ .include "data/maps/text/Route110_TrickHousePuzzle5.s"
+ .include "data/maps/text/Route110_TrickHousePuzzle6.s"
+ .include "data/maps/text/Route110_TrickHousePuzzle7.s"
+ .include "data/maps/text/Route110_TrickHousePuzzle8.s"
+ .include "data/maps/text/Route110_SeasideCyclingRoadSouthEntrance.s"
+ .include "data/maps/text/Route110_SeasideCyclingRoadNorthEntrance.s"
+Route110_SeasideCyclingRoadSouthEntrance_Text_19E3AD:: @ 819E3AD
+ .string "Sorry, you can’t walk on CYCLING\n"
+ .string "ROAD. It’s too dangerous.\p"
+ .string "Please come back with a BIKE.$"
+
+Route110_SeasideCyclingRoadNorthEntrance_Text_19E406:: @ 819E406
+ .string "On CYCLING ROAD, you can go all out\n"
+ .string "and cycle as fast as you’d like.\p"
+ .string "It feels great to go that fast, but try\n"
+ .string "not to crash into anyone!$"
+
+ .incbin "baserom.gba", 0x19e48d, 0x59
+
+ .include "data/maps/text/Route113_GlassWorkshop.s"
+ .include "data/maps/text/Route119_WeatherInstitute_1F.s"
+ .include "data/maps/text/Route119_WeatherInstitute_2F.s"
+ .include "data/maps/text/Route119_House.s"
+ .include "data/maps/text/Route124_DivingTreasureHuntersHouse.s"
+ .incbin "baserom.gba", 0x19f7de, 0x28
+
+BattleTower_Lobby_EventScript_19F806:: @ 819F806
+FallarborTown_ContestLobby_EventScript_19F806:: @ 819F806
+LilycoveCity_ContestLobby_EventScript_19F806:: @ 819F806
+MossdeepCity_GameCorner_1F_EventScript_19F806:: @ 819F806
+OldaleTown_PokemonCenter_2F_EventScript_19F806:: @ 819F806
+SecretBase_RedCave1_EventScript_19F806:: @ 819F806
+ special 93
+ waitstate
+ return
.global gUnknown_0819F80B
gUnknown_0819F80B: @ 819F80B
@@ -106,7 +2774,47 @@ gUnknown_0819F8AE: @ 819F8AE
.global gUnknown_0819FA81
gUnknown_0819FA81: @ 819FA81
- .incbin "baserom.gba", 0x0019fa81, 0x1f3
+
+ .incbin "baserom.gba", 0x19fa81, 0x192
+
+EverGrandeCity_HallOfFame_EventScript_19FC13:: @ 819FC13
+ clearflag 925
+ call EverGrandeCity_HallOfFame_EventScript_19FD09
+ setflag 869
+ clearflag 950
+ clearflag 727
+ setvar 0x40c6, 1
+ clearflag 751
+ clearflag 860
+ clearflag 861
+ special 169
+ checkflag 291
+ callif 0, EverGrandeCity_HallOfFame_EventScript_19FC62
+ checkflag 255
+ callif 0, EverGrandeCity_HallOfFame_EventScript_19FC70
+ checkflag 298
+ callif 0, EverGrandeCity_HallOfFame_EventScript_19FC5A
+ checkflag 123
+ callif 0, EverGrandeCity_HallOfFame_EventScript_19FC5E
+ return
+
+EverGrandeCity_HallOfFame_EventScript_19FC5A:: @ 819FC5A
+ clearflag 968
+ return
+
+EverGrandeCity_HallOfFame_EventScript_19FC5E:: @ 819FC5E
+ clearflag 1133
+ return
+
+EverGrandeCity_HallOfFame_EventScript_19FC62:: @ 819FC62
+ setvar 0x4082, 3
+ setvar 0x408c, 3
+ clearflag 734
+ return
+
+EverGrandeCity_HallOfFame_EventScript_19FC70:: @ 819FC70
+ setflag 2141
+ return
.global gUnknown_0819FC74
gUnknown_0819FC74: @ 819FC74
@@ -114,7 +2822,123 @@ gUnknown_0819FC74: @ 819FC74
.global gUnknown_0819FC9F
gUnknown_0819FC9F: @ 819FC9F
- .incbin "baserom.gba", 0x0019fc9f, 0x2dc
+
+ .incbin "baserom.gba", 0x19fc9f, 0x6a
+
+EverGrandeCity_HallOfFame_EventScript_19FD09:: @ 819FD09
+ clearflag 1245
+ clearflag 1246
+ clearflag 1247
+ clearflag 1248
+ setvar 0x409c, 0
+ return
+
+DewfordTown_PokemonCenter_1F_EventScript_19FD1B:: @ 819FD1B
+FallarborTown_PokemonCenter_1F_EventScript_19FD1B:: @ 819FD1B
+LavaridgeTown_PokemonCenter_1F_EventScript_19FD1B:: @ 819FD1B
+MauvilleCity_PokemonCenter_1F_EventScript_19FD1B:: @ 819FD1B
+OldaleTown_PokemonCenter_1F_EventScript_19FD1B:: @ 819FD1B
+PetalburgCity_PokemonCenter_1F_EventScript_19FD1B:: @ 819FD1B
+RustboroCity_PokemonCenter_1F_EventScript_19FD1B:: @ 819FD1B
+SlateportCity_PokemonCenter_1F_EventScript_19FD1B:: @ 819FD1B
+VerdanturfTown_PokemonCenter_1F_EventScript_19FD1B:: @ 819FD1B
+ checkflag 188
+ jumpif 0, OldaleTown_PokemonCenter_1F_EventScript_1A14DC
+ checkflag 1217
+ jumpeq OldaleTown_PokemonCenter_1F_EventScript_1A14DC
+ checkflag 742
+ jumpif 0, OldaleTown_PokemonCenter_1F_EventScript_19FD49
+ checkflag 740
+ jumpif 0, OldaleTown_PokemonCenter_1F_EventScript_19FD4F
+ checkflag 741
+ jumpif 0, OldaleTown_PokemonCenter_1F_EventScript_19FD55
+ return
+
+OldaleTown_PokemonCenter_1F_EventScript_19FD49:: @ 819FD49
+ setvar 0x4096, 1
+ return
+
+OldaleTown_PokemonCenter_1F_EventScript_19FD4F:: @ 819FD4F
+ setvar 0x4096, 2
+ return
+
+OldaleTown_PokemonCenter_1F_EventScript_19FD55:: @ 819FD55
+ setvar 0x4096, 3
+ return
+
+DewfordTown_PokemonCenter_1F_EventScript_19FD5B:: @ 819FD5B
+EverGrandeCity_PokemonLeague_EventScript_19FD5B:: @ 819FD5B
+FallarborTown_PokemonCenter_1F_EventScript_19FD5B:: @ 819FD5B
+FortreeCity_PokemonCenter_1F_EventScript_19FD5B:: @ 819FD5B
+LavaridgeTown_PokemonCenter_1F_EventScript_19FD5B:: @ 819FD5B
+LilycoveCity_PokemonCenter_1F_EventScript_19FD5B:: @ 819FD5B
+MauvilleCity_PokemonCenter_1F_EventScript_19FD5B:: @ 819FD5B
+MossdeepCity_PokemonCenter_1F_EventScript_19FD5B:: @ 819FD5B
+OldaleTown_PokemonCenter_1F_EventScript_19FD5B:: @ 819FD5B
+PetalburgCity_PokemonCenter_1F_EventScript_19FD5B:: @ 819FD5B
+RustboroCity_PokemonCenter_1F_EventScript_19FD5B:: @ 819FD5B
+SlateportCity_PokemonCenter_1F_EventScript_19FD5B:: @ 819FD5B
+SootopolisCity_PokemonCenter_1F_EventScript_19FD5B:: @ 819FD5B
+VerdanturfTown_PokemonCenter_1F_EventScript_19FD5B:: @ 819FD5B
+ lock
+ faceplayer
+ msgbox OldaleTown_PokemonCenter_1F_Text_1A0A7D, 5
+ compare RESULT, 1
+ jumpeq OldaleTown_PokemonCenter_1F_EventScript_19FD7C
+ compare RESULT, 0
+ jumpeq OldaleTown_PokemonCenter_1F_EventScript_19FDC7
+ end
+
+OldaleTown_PokemonCenter_1F_EventScript_19FD7C:: @ 819FD7C
+ inccounter 15
+ message OldaleTown_PokemonCenter_1F_Text_1A1245
+ waittext
+ move 0x800b, OldaleTown_PokemonCenter_1F_Movement_1A083F
+ waitmove 0
+ doanimation 25
+ checkanimation 25
+ move 0x800b, OldaleTown_PokemonCenter_1F_Movement_1A0845
+ waitmove 0
+ special 0
+ checkflag 273
+ jumpif 0, OldaleTown_PokemonCenter_1F_EventScript_19FDCE
+ jump OldaleTown_PokemonCenter_1F_EventScript_19FDB0
+ end
+
+OldaleTown_PokemonCenter_1F_EventScript_19FDB0:: @ 819FDB0
+ message OldaleTown_PokemonCenter_1F_Text_1A0B14
+ waittext
+ move 0x800b, OldaleTown_PokemonCenter_1F_Movement_19FDF4
+ waitmove 0
+ message OldaleTown_PokemonCenter_1F_Text_1A0AFA
+ waittext
+ return
+
+OldaleTown_PokemonCenter_1F_EventScript_19FDC7:: @ 819FDC7
+ message OldaleTown_PokemonCenter_1F_Text_1A0AFA
+ waittext
+ return
+
+OldaleTown_PokemonCenter_1F_EventScript_19FDCE:: @ 819FDCE
+ specialval RESULT, 308
+ compare RESULT, 1
+ jumpeq OldaleTown_PokemonCenter_1F_EventScript_19FDEA
+ compare RESULT, 0
+ jumpeq OldaleTown_PokemonCenter_1F_EventScript_19FDB0
+ end
+
+OldaleTown_PokemonCenter_1F_EventScript_19FDEA:: @ 819FDEA
+ message OldaleTown_PokemonCenter_1F_Text_1A1275
+ waittext
+ setflag 273
+ return
+
+OldaleTown_PokemonCenter_1F_Movement_19FDF4:: @ 819FDF4
+ step_4f
+ step_12
+ step_end
+
+ .incbin "baserom.gba", 0x19fdf7, 0x184
.global gUnknown_0819FF7B
gUnknown_0819FF7B: @ 819FF7B
@@ -122,15 +2946,1119 @@ gUnknown_0819FF7B: @ 819FF7B
.global gUnknown_081A0009
gUnknown_081A0009: @ 81A0009
- .incbin "baserom.gba", 0x001a0009, 0x10e
+
+ .incbin "baserom.gba", 0x1a0009, 0xd8
+
+FallarborTown_EventScript_1A00E1:: @ 81A00E1
+FortreeCity_EventScript_1A00E1:: @ 81A00E1
+LavaridgeTown_EventScript_1A00E1:: @ 81A00E1
+MauvilleCity_EventScript_1A00E1:: @ 81A00E1
+MossdeepCity_EventScript_1A00E1:: @ 81A00E1
+OldaleTown_EventScript_1A00E1:: @ 81A00E1
+PetalburgCity_EventScript_1A00E1:: @ 81A00E1
+RustboroCity_EventScript_1A00E1:: @ 81A00E1
+SlateportCity_EventScript_1A00E1:: @ 81A00E1
+SootopolisCity_EventScript_1A00E1:: @ 81A00E1
+VerdanturfTown_EventScript_1A00E1:: @ 81A00E1
+ msgbox PetalburgCity_Text_1A0D41, 3
+ end
+
+DewfordTown_EventScript_1A00EA:: @ 81A00EA
+EverGrandeCity_EventScript_1A00EA:: @ 81A00EA
+FallarborTown_EventScript_1A00EA:: @ 81A00EA
+FortreeCity_EventScript_1A00EA:: @ 81A00EA
+LavaridgeTown_EventScript_1A00EA:: @ 81A00EA
+LilycoveCity_EventScript_1A00EA:: @ 81A00EA
+MauvilleCity_EventScript_1A00EA:: @ 81A00EA
+MossdeepCity_EventScript_1A00EA:: @ 81A00EA
+OldaleTown_EventScript_1A00EA:: @ 81A00EA
+PacifidlogTown_EventScript_1A00EA:: @ 81A00EA
+PetalburgCity_EventScript_1A00EA:: @ 81A00EA
+RustboroCity_EventScript_1A00EA:: @ 81A00EA
+SlateportCity_EventScript_1A00EA:: @ 81A00EA
+SootopolisCity_EventScript_1A00EA:: @ 81A00EA
+VerdanturfTown_EventScript_1A00EA:: @ 81A00EA
+ msgbox PetalburgCity_Text_1A0D75, 3
+ end
+
+BattleTower_Lobby_EventScript_1A00F3:: @ 81A00F3
+DewfordTown_EventScript_1A00F3:: @ 81A00F3
+FallarborTown_ContestLobby_EventScript_1A00F3:: @ 81A00F3
+MauvilleCity_PokemonCenter_1F_EventScript_1A00F3:: @ 81A00F3
+PetalburgCity_PokemonCenter_1F_EventScript_1A00F3:: @ 81A00F3
+Route111_EventScript_1A00F3:: @ 81A00F3
+Route123_BerryMastersHouse_EventScript_1A00F3:: @ 81A00F3
+SlateportCity_OceanicMuseum_1F_EventScript_1A00F3:: @ 81A00F3
+SlateportCity_PokemonFanClub_EventScript_1A00F3:: @ 81A00F3
+ fadescreen 1
+ special 95
+ fadescreen 0
+ return
+
+DewfordTown_Gym_EventScript_1A00FB:: @ 81A00FB
+LavaridgeTown_Gym_1F_EventScript_1A00FB:: @ 81A00FB
+MauvilleCity_Gym_EventScript_1A00FB:: @ 81A00FB
+RustboroCity_Gym_EventScript_1A00FB:: @ 81A00FB
+ clearflag 781
+ setflag 296
+ return
+
+DewfordTown_EventScript_1A0102:: @ 81A0102
+DewfordTown_Hall_EventScript_1A0102:: @ 81A0102
+ checkdailyflags
+ setvar 0x8004, 0
+ special 126
+ return
+
+DewfordTown_EventScript_1A010C:: @ 81A010C
+Route104_MrBrineysHouse_EventScript_1A010C:: @ 81A010C
+Route109_EventScript_1A010C:: @ 81A010C
+ copyvar 0x8008, 0x4096
+ setvar 0x4096, 0
+ return
.global gUnknown_081A0117
gUnknown_081A0117: @ 81A0117
- .incbin "baserom.gba", 0x001a0117, 0x1bf
+
+ .incbin "baserom.gba", 0x1a0117, 0x37
+
+EverGrandeCity_ChampionsRoom_EventScript_1A014E:: @ 81A014E
+LavaridgeTown_EventScript_1A014E:: @ 81A014E
+LilycoveCity_EventScript_1A014E:: @ 81A014E
+LittlerootTown_ProfessorBirchsLab_EventScript_1A014E:: @ 81A014E
+OldaleTown_EventScript_1A014E:: @ 81A014E
+Route103_EventScript_1A014E:: @ 81A014E
+Route110_EventScript_1A014E:: @ 81A014E
+Route119_EventScript_1A014E:: @ 81A014E
+RustboroCity_EventScript_1A014E:: @ 81A014E
+ checkgender
+ compare RESULT, 0
+ jumpeq RustboroCity_EventScript_1A0166
+ compare RESULT, 1
+ jumpeq RustboroCity_EventScript_1A016C
+ end
+
+RustboroCity_EventScript_1A0166:: @ 81A0166
+ setvar 0x4010, 105
+ return
+
+RustboroCity_EventScript_1A016C:: @ 81A016C
+ setvar 0x4010, 100
+ return
+
+LavaridgeTown_EventScript_1A0172:: @ 81A0172
+Route110_EventScript_1A0172:: @ 81A0172
+Route119_EventScript_1A0172:: @ 81A0172
+ checkgender
+ compare RESULT, 0
+ jumpeq LavaridgeTown_EventScript_1A018A
+ compare RESULT, 1
+ jumpeq LavaridgeTown_EventScript_1A0190
+ end
+
+LavaridgeTown_EventScript_1A018A:: @ 81A018A
+ setvar 0x4013, 106
+ return
+
+LavaridgeTown_EventScript_1A0190:: @ 81A0190
+ setvar 0x4013, 101
+ return
+
+AquaHideout_1F_EventScript_1A0196:: @ 81A0196
+AquaHideout_B1F_EventScript_1A0196:: @ 81A0196
+AquaHideout_B2F_EventScript_1A0196:: @ 81A0196
+LilycoveCity_EventScript_1A0196:: @ 81A0196
+MeteorFalls_1F_1R_EventScript_1A0196:: @ 81A0196
+MtChimney_EventScript_1A0196:: @ 81A0196
+MtPyre_Summit_EventScript_1A0196:: @ 81A0196
+PetalburgWoods_EventScript_1A0196:: @ 81A0196
+Route110_EventScript_1A0196:: @ 81A0196
+Route112_EventScript_1A0196:: @ 81A0196
+Route113_EventScript_1A0196:: @ 81A0196
+Route119_EventScript_1A0196:: @ 81A0196
+Route119_WeatherInstitute_1F_EventScript_1A0196:: @ 81A0196
+Route119_WeatherInstitute_2F_EventScript_1A0196:: @ 81A0196
+Route121_EventScript_1A0196:: @ 81A0196
+Route128_EventScript_1A0196:: @ 81A0196
+RustboroCity_EventScript_1A0196:: @ 81A0196
+RusturfTunnel_EventScript_1A0196:: @ 81A0196
+SeafloorCavern_Room1_EventScript_1A0196:: @ 81A0196
+SeafloorCavern_Room3_EventScript_1A0196:: @ 81A0196
+SeafloorCavern_Room4_EventScript_1A0196:: @ 81A0196
+SeafloorCavern_Room9_EventScript_1A0196:: @ 81A0196
+SlateportCity_OceanicMuseum_2F_EventScript_1A0196:: @ 81A0196
+ setvar 0x4011, 119
+ setvar 0x4012, 120
+ setvar 0x4014, 117
+ setvar 0x4015, 118
+ setvar 0x4016, 196
+ setvar 0x4017, 195
+ return
+
+CaveOfOrigin_B4F_EventScript_1A01B5:: @ 81A01B5
+SeafloorCavern_Room9_EventScript_1A01B5:: @ 81A01B5
+ setvar 0x4018, 198
+ setvar 0x4019, 206
+ return
+
+DewfordTown_Gym_EventScript_1A01C0:: @ 81A01C0
+FortreeCity_Gym_EventScript_1A01C0:: @ 81A01C0
+LavaridgeTown_Gym_1F_EventScript_1A01C0:: @ 81A01C0
+MauvilleCity_Gym_EventScript_1A01C0:: @ 81A01C0
+MossdeepCity_Gym_EventScript_1A01C0:: @ 81A01C0
+PetalburgCity_Gym_EventScript_1A01C0:: @ 81A01C0
+RustboroCity_Gym_EventScript_1A01C0:: @ 81A01C0
+SootopolisCity_Gym_1F_EventScript_1A01C0:: @ 81A01C0
+ switch 0x8008
+ case 1, DewfordTown_Gym_EventScript_1A021E
+ case 2, DewfordTown_Gym_EventScript_1A0225
+ case 3, DewfordTown_Gym_EventScript_1A022F
+ case 4, DewfordTown_Gym_EventScript_1A023C
+ case 5, DewfordTown_Gym_EventScript_1A024C
+ case 6, DewfordTown_Gym_EventScript_1A0262
+ case 7, DewfordTown_Gym_EventScript_1A026F
+ case 8, DewfordTown_Gym_EventScript_1A0282
+ end
+
+DewfordTown_Gym_EventScript_1A021E:: @ 81A021E
+ cleartrainerflag 320
+ cleartrainerflag 321
+ return
+
+DewfordTown_Gym_EventScript_1A0225:: @ 81A0225
+ cleartrainerflag 179
+ cleartrainerflag 425
+ cleartrainerflag 426
+ return
+
+DewfordTown_Gym_EventScript_1A022F:: @ 81A022F
+ cleartrainerflag 191
+ cleartrainerflag 194
+ cleartrainerflag 323
+ cleartrainerflag 649
+ return
+
+DewfordTown_Gym_EventScript_1A023C:: @ 81A023C
+ cleartrainerflag 201
+ cleartrainerflag 203
+ cleartrainerflag 205
+ cleartrainerflag 648
+ cleartrainerflag 650
+ return
+
+DewfordTown_Gym_EventScript_1A024C:: @ 81A024C
+ cleartrainerflag 71
+ cleartrainerflag 72
+ cleartrainerflag 73
+ cleartrainerflag 74
+ cleartrainerflag 89
+ cleartrainerflag 90
+ cleartrainerflag 91
+ return
+
+DewfordTown_Gym_EventScript_1A0262:: @ 81A0262
+ cleartrainerflag 401
+ cleartrainerflag 654
+ cleartrainerflag 655
+ cleartrainerflag 404
+ return
+
+DewfordTown_Gym_EventScript_1A026F:: @ 81A026F
+ cleartrainerflag 233
+ cleartrainerflag 234
+ cleartrainerflag 235
+ cleartrainerflag 244
+ cleartrainerflag 245
+ cleartrainerflag 246
+ return
+
+DewfordTown_Gym_EventScript_1A0282:: @ 81A0282
+ cleartrainerflag 613
+ cleartrainerflag 614
+ cleartrainerflag 118
+ cleartrainerflag 128
+ cleartrainerflag 129
+ cleartrainerflag 130
+ cleartrainerflag 131
+ cleartrainerflag 301
+ return
+
+DewfordTown_Gym_EventScript_1A029B:: @ 81A029B
+DewfordTown_Hall_EventScript_1A029B:: @ 81A029B
+FallarborTown_House1_EventScript_1A029B:: @ 81A029B
+FortreeCity_Gym_EventScript_1A029B:: @ 81A029B
+FortreeCity_House2_EventScript_1A029B:: @ 81A029B
+FortreeCity_House4_EventScript_1A029B:: @ 81A029B
+LavaridgeTown_Gym_1F_EventScript_1A029B:: @ 81A029B
+LavaridgeTown_HerbShop_EventScript_1A029B:: @ 81A029B
+LilycoveCity_EventScript_1A029B:: @ 81A029B
+LilycoveCity_House2_EventScript_1A029B:: @ 81A029B
+LittlerootTown_BrendansHouse_1F_EventScript_1A029B:: @ 81A029B
+MauvilleCity_EventScript_1A029B:: @ 81A029B
+MauvilleCity_Gym_EventScript_1A029B:: @ 81A029B
+MossdeepCity_EventScript_1A029B:: @ 81A029B
+MossdeepCity_Gym_EventScript_1A029B:: @ 81A029B
+MossdeepCity_SpaceCenter_1F_EventScript_1A029B:: @ 81A029B
+MtPyre_1F_EventScript_1A029B:: @ 81A029B
+PacifidlogTown_House2_EventScript_1A029B:: @ 81A029B
+PetalburgCity_Gym_EventScript_1A029B:: @ 81A029B
+PetalburgWoods_EventScript_1A029B:: @ 81A029B
+Route104_EventScript_1A029B:: @ 81A029B
+Route104_PrettyPetalFlowerShop_EventScript_1A029B:: @ 81A029B
+Route109_EventScript_1A029B:: @ 81A029B
+Route111_EventScript_1A029B:: @ 81A029B
+Route111_WinstrateFamilysHouse_EventScript_1A029B:: @ 81A029B
+Route114_EventScript_1A029B:: @ 81A029B
+Route114_FossilManiacsHouse_EventScript_1A029B:: @ 81A029B
+Route120_EventScript_1A029B:: @ 81A029B
+Route123_BerryMastersHouse_EventScript_1A029B:: @ 81A029B
+Route123_EventScript_1A029B:: @ 81A029B
+RustboroCity_DevonCorp_3F_EventScript_1A029B:: @ 81A029B
+RustboroCity_Flat2_2F_EventScript_1A029B:: @ 81A029B
+RustboroCity_Gym_EventScript_1A029B:: @ 81A029B
+RustboroCity_PokemonSchool_EventScript_1A029B:: @ 81A029B
+SSTidalRooms_EventScript_1A029B:: @ 81A029B
+ShoalCave_LowTideEntranceRoom_EventScript_1A029B:: @ 81A029B
+ShoalCave_LowTideInnerRoom_EventScript_1A029B:: @ 81A029B
+ShoalCave_LowTideLowerRoom_EventScript_1A029B:: @ 81A029B
+ShoalCave_LowTideStairsRoom_EventScript_1A029B:: @ 81A029B
+SlateportCity_ContestHall_EventScript_1A029B:: @ 81A029B
+SlateportCity_Harbor_EventScript_1A029B:: @ 81A029B
+SlateportCity_PokemonFanClub_EventScript_1A029B:: @ 81A029B
+SootopolisCity_EventScript_1A029B:: @ 81A029B
+SootopolisCity_Gym_1F_EventScript_1A029B:: @ 81A029B
+VerdanturfTown_ContestLobby_EventScript_1A029B:: @ 81A029B
+ msgbox MauvilleCity_Text_1A0CC2, 4
+ release
+ end
+
+MauvilleCity_GameCorner_EventScript_1A02A5:: @ 81A02A5
+Route110_TrickHouseEnd_EventScript_1A02A5:: @ 81A02A5
+Route110_TrickHouseEntrance_EventScript_1A02A5:: @ 81A02A5
+Route113_GlassWorkshop_EventScript_1A02A5:: @ 81A02A5
+ msgbox MauvilleCity_GameCorner_Text_1A0CC2, 4
+ return
+
+Route114_LanettesHouse_EventScript_1A02AE:: @ 81A02AE
+ msgbox Route114_LanettesHouse_Text_1A0CEF, 4
+ release
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_1A02B8:: @ 81A02B8
+MauvilleCity_GameCorner_EventScript_1A02B8:: @ 81A02B8
+Route110_TrickHouseEnd_EventScript_1A02B8:: @ 81A02B8
+Route110_TrickHouseEntrance_EventScript_1A02B8:: @ 81A02B8
+Route113_GlassWorkshop_EventScript_1A02B8:: @ 81A02B8
+ msgbox MauvilleCity_GameCorner_Text_1A0CEF, 4
+ return
+
+EverGrandeCity_EventScript_1A02C1:: @ 81A02C1
+LilycoveCity_EventScript_1A02C1:: @ 81A02C1
+MossdeepCity_EventScript_1A02C1:: @ 81A02C1
+Route124_EventScript_1A02C1:: @ 81A02C1
+Route125_EventScript_1A02C1:: @ 81A02C1
+Route126_EventScript_1A02C1:: @ 81A02C1
+Route127_EventScript_1A02C1:: @ 81A02C1
+Route128_EventScript_1A02C1:: @ 81A02C1
+SootopolisCity_EventScript_1A02C1:: @ 81A02C1
+ setweather 12
+ return
+
+DewfordTown_Gym_EventScript_1A02C5:: @ 81A02C5
+FortreeCity_Gym_EventScript_1A02C5:: @ 81A02C5
+LavaridgeTown_Gym_1F_EventScript_1A02C5:: @ 81A02C5
+LilycoveCity_CoveLilyMotel_2F_EventScript_1A02C5:: @ 81A02C5
+MauvilleCity_Gym_EventScript_1A02C5:: @ 81A02C5
+MossdeepCity_Gym_EventScript_1A02C5:: @ 81A02C5
+PetalburgCity_Gym_EventScript_1A02C5:: @ 81A02C5
+RustboroCity_Gym_EventScript_1A02C5:: @ 81A02C5
+SootopolisCity_Gym_1F_EventScript_1A02C5:: @ 81A02C5
+ fanfare 369
+ waitfanfare
+ return
+
+LittlerootTown_BrendansHouse_1F_EventScript_1A02CA:: @ 81A02CA
+Route111_OldLadysRestStop_EventScript_1A02CA:: @ 81A02CA
+Route119_WeatherInstitute_1F_EventScript_1A02CA:: @ 81A02CA
+SSTidalRooms_EventScript_1A02CA:: @ 81A02CA
+ fadescreen 1
+ fanfare 368
+ waitfanfare
+ special 0
+ fadescreen 0
+ return
.global gUnknown_081A02D6
gUnknown_081A02D6: @ 81A02D6
- .incbin "baserom.gba", 0x001a02d6, 0x585
+
+ .incbin "baserom.gba", 0x1a02d6, 0x11
+
+DewfordTown_EventScript_1A02E7:: @ 81A02E7
+Route104_EventScript_1A02E7:: @ 81A02E7
+Route109_EventScript_1A02E7:: @ 81A02E7
+ setflag 0x4001
+ playmusic 431, 0
+ return
+
+DewfordTown_EventScript_1A02EF:: @ 81A02EF
+Route104_EventScript_1A02EF:: @ 81A02EF
+Route109_EventScript_1A02EF:: @ 81A02EF
+ clearflag 0x4001
+ fadedefault
+ return
+
+LittlerootTown_ProfessorBirchsLab_EventScript_1A02F4:: @ 81A02F4
+Route101_EventScript_1A02F4:: @ 81A02F4
+Route103_EventScript_1A02F4:: @ 81A02F4
+ compare 0x4085, 0
+ jumpeq Route101_EventScript_1A14DC
+ compare 0x4049, 0
+ callif 1, Route101_EventScript_1A0358
+ compare 0x4049, 1
+ callif 1, Route101_EventScript_1A0358
+ compare 0x4049, 2
+ callif 1, Route101_EventScript_1A0365
+ compare 0x4049, 3
+ callif 1, Route101_EventScript_1A0365
+ compare 0x4049, 4
+ callif 1, Route101_EventScript_1A0372
+ compare 0x4049, 5
+ callif 1, Route101_EventScript_1A0372
+ compare 0x4049, 6
+ callif 1, Route101_EventScript_1A0358
+ compare 0x4049, 7
+ callif 1, Route101_EventScript_1A0358
+ return
+
+Route101_EventScript_1A0358:: @ 81A0358
+ clearflag 721
+ clearflag 896
+ setflag 897
+ setflag 898
+ return
+
+Route101_EventScript_1A0365:: @ 81A0365
+ clearflag 897
+ setflag 721
+ setflag 896
+ setflag 898
+ return
+
+Route101_EventScript_1A0372:: @ 81A0372
+ clearflag 898
+ setflag 897
+ setflag 721
+ setflag 896
+ return
+
+LittlerootTown_ProfessorBirchsLab_EventScript_1A037F:: @ 81A037F
+Route101_EventScript_1A037F:: @ 81A037F
+Route103_EventScript_1A037F:: @ 81A037F
+ lock
+ faceplayer
+ msgbox Route101_Text_1C4449, 5
+ compare RESULT, 0
+ jumpeq Route101_EventScript_1A039B
+ call Route101_EventScript_1A03B0
+ release
+ end
+
+Route101_EventScript_1A039B:: @ 81A039B
+ msgbox Route101_Text_1C449B, 4
+ release
+ end
+
+Route101_EventScript_1A03A5:: @ 81A03A5
+ copyvar 0x8004, 0x8009
+ special 213
+ waittext
+ waitbutton
+ return
+
+EverGrandeCity_ChampionsRoom_EventScript_1A03B0:: @ 81A03B0
+Route101_EventScript_1A03B0:: @ 81A03B0
+ setvar 0x8004, 0
+ specialval RESULT, 212
+ copyvar 0x8008, 0x8005
+ copyvar 0x8009, 0x8006
+ copyvar 0x800a, RESULT
+ buffernum 0, 32776
+ buffernum 1, 32777
+ msgbox Route101_Text_1C44DC, 4
+ call Route101_EventScript_1A03A5
+ compare 0x800a, 0
+ jumpeq Route101_EventScript_1A14DC
+ setvar 0x8004, 1
+ specialval RESULT, 212
+ copyvar 0x8008, 0x8005
+ copyvar 0x8009, 0x8006
+ buffernum 0, 32776
+ buffernum 1, 32777
+ msgbox Route101_Text_1C4B05, 4
+ return
+
+BattleTower_Outside_EventScript_1A040E:: @ 81A040E
+LilycoveCity_Harbor_EventScript_1A040E:: @ 81A040E
+SlateportCity_Harbor_EventScript_1A040E:: @ 81A040E
+ pause 60
+ move 0x8004, SlateportCity_Harbor_Movement_1A041C
+ waitmove 0
+ return
+
+SlateportCity_Harbor_Movement_1A041C:: @ 81A041C
+ slow_step_right
+ slow_step_right
+ slow_step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+PetalburgCity_Gym_EventScript_1A0424:: @ 81A0424
+ setflag 740
+ setflag 743
+ setflag 741
+ setflag 744
+ setflag 738
+ setflag 742
+ setflag 739
+ setflag 881
+ setvar 0x4096, 0
+ return
+
+RusturfTunnel_EventScript_1A0442:: @ 81A0442
+ disappear 1
+ disappear 10
+ clearflag 808
+ clearflag 984
+ setvar 0x409a, 6
+ setflag 199
+ return
+
+ .incbin "baserom.gba", 0x1a0457, 0x25
+
+BattleTower_Outside_EventScript_1A047C:: @ 81A047C
+SouthernIsland_Exterior_EventScript_1A047C:: @ 81A047C
+ compare FACING, 1
+ callif 1, BattleTower_Outside_EventScript_160B2F
+ compare FACING, 3
+ callif 1, BattleTower_Outside_EventScript_160B3A
+ pause 30
+ spriteinvisible 255, 0, 0
+ call BattleTower_Outside_EventScript_1A040E
+ return
+
+CaveOfOrigin_B4F_EventScript_1A04A0:: @ 81A04A0
+ lockall
+ checksound
+ pokecry SPECIES_GROUDON, 2
+ waitpokecry
+ setvar 0x4005, 1
+ releaseall
+ end
+
+CaveOfOrigin_1F_EventScript_1A04AF:: @ 81A04AF
+CaveOfOrigin_B1F_EventScript_1A04AF:: @ 81A04AF
+CaveOfOrigin_B2F_EventScript_1A04AF:: @ 81A04AF
+CaveOfOrigin_B3F_EventScript_1A04AF:: @ 81A04AF
+ lockall
+ setvar 0x4001, 1
+ jump CaveOfOrigin_1F_EventScript_1A04D3
+ end
+
+CaveOfOrigin_B2F_EventScript_1A04BB:: @ 81A04BB
+CaveOfOrigin_B3F_EventScript_1A04BB:: @ 81A04BB
+ lockall
+ setvar 0x4002, 1
+ jump CaveOfOrigin_B2F_EventScript_1A04D3
+ end
+
+ .incbin "baserom.gba", 0x1a04c7, 0xc
+
+CaveOfOrigin_1F_EventScript_1A04D3:: @ 81A04D3
+CaveOfOrigin_B2F_EventScript_1A04D3:: @ 81A04D3
+ setvar 0x8004, 1
+ setvar 0x8005, 1
+ special 310
+ waitstate
+ releaseall
+ end
+
+CaveOfOrigin_1F_EventScript_1A04E3:: @ 81A04E3
+CaveOfOrigin_B1F_EventScript_1A04E3:: @ 81A04E3
+CaveOfOrigin_B2F_EventScript_1A04E3:: @ 81A04E3
+CaveOfOrigin_B3F_EventScript_1A04E3:: @ 81A04E3
+CaveOfOrigin_B4F_EventScript_1A04E3:: @ 81A04E3
+ setvar 0x4001, 1
+ setvar 0x4002, 1
+ setvar 0x4003, 1
+ setvar 0x4004, 1
+ setvar 0x4005, 1
+ return
+
+AquaHideout_B1F_EventScript_1A04FD:: @ 81A04FD
+MagmaHideout_B1F_EventScript_1A04FD:: @ 81A04FD
+ lock
+ faceplayer
+ setwildbattle SPECIES_ELECTRODE, 30, ITEM_NONE
+ checksound
+ pokecry SPECIES_ELECTRODE, 2
+ pause 40
+ waitpokecry
+ setflag 977
+ setflag 2145
+ dowildbattle
+ clearflag 2145
+ release
+ end
+
+AquaHideout_B1F_EventScript_1A051B:: @ 81A051B
+MagmaHideout_B1F_EventScript_1A051B:: @ 81A051B
+ lock
+ faceplayer
+ setwildbattle SPECIES_ELECTRODE, 30, ITEM_NONE
+ checksound
+ pokecry SPECIES_ELECTRODE, 2
+ pause 40
+ waitpokecry
+ setflag 978
+ setflag 2145
+ dowildbattle
+ clearflag 2145
+ release
+ end
+
+Route120_EventScript_1A0539:: @ 81A0539
+ lock
+ faceplayer
+ setvar 0x8004, 1
+ jump Route120_EventScript_1A0594
+ end
+
+Route120_EventScript_1A0546:: @ 81A0546
+ lock
+ faceplayer
+ setvar 0x8004, 2
+ jump Route120_EventScript_1A0594
+ end
+
+Route120_EventScript_1A0553:: @ 81A0553
+ lock
+ faceplayer
+ setvar 0x8004, 3
+ jump Route120_EventScript_1A0594
+ end
+
+Route120_EventScript_1A0560:: @ 81A0560
+ lock
+ faceplayer
+ setvar 0x8004, 4
+ jump Route120_EventScript_1A0594
+ end
+
+Route120_EventScript_1A056D:: @ 81A056D
+ lock
+ faceplayer
+ setvar 0x8004, 5
+ jump Route120_EventScript_1A0594
+ end
+
+Route119_EventScript_1A057A:: @ 81A057A
+ lock
+ faceplayer
+ setvar 0x8004, 6
+ jump Route119_EventScript_1A0594
+ end
+
+Route119_EventScript_1A0587:: @ 81A0587
+ lock
+ faceplayer
+ setvar 0x8004, 7
+ jump Route119_EventScript_1A0594
+ end
+
+Route119_EventScript_1A0594:: @ 81A0594
+Route120_EventScript_1A0594:: @ 81A0594
+ checkitem ITEM_DEVON_SCOPE, 1
+ compare RESULT, 1
+ jumpeq Route119_EventScript_1A05AE
+ msgbox Route119_Text_171B93, 4
+ release
+ end
+
+Route119_EventScript_1A05AE:: @ 81A05AE
+ msgbox Route119_Text_171BB6, 5
+ compare RESULT, 1
+ jumpeq Route119_EventScript_1A05C3
+ release
+ end
+
+Route119_EventScript_1A05C3:: @ 81A05C3
+ msgbox Route119_Text_171BF6, 4
+ closebutton
+ move LAST_TALKED, Route119_Movement_1A0839
+ waitmove 0
+ move LAST_TALKED, Route119_Movement_1A0662
+ waitmove 0
+ checksound
+ pokecry SPECIES_KECLEON, 2
+ pause 40
+ waitpokecry
+ setwildbattle SPECIES_KECLEON, 30, ITEM_NONE
+ compare 0x8004, 1
+ callif 1, Route119_EventScript_1A0646
+ compare 0x8004, 2
+ callif 1, Route119_EventScript_1A064A
+ compare 0x8004, 3
+ callif 1, Route119_EventScript_1A064E
+ compare 0x8004, 4
+ callif 1, Route119_EventScript_1A0652
+ compare 0x8004, 5
+ callif 1, Route119_EventScript_1A0656
+ compare 0x8004, 6
+ callif 1, Route119_EventScript_1A065A
+ compare 0x8004, 7
+ callif 1, Route119_EventScript_1A065E
+ setflag 2145
+ dowildbattle
+ clearflag 2145
+ release
+ end
+
+Route119_EventScript_1A0646:: @ 81A0646
+ setflag 982
+ return
+
+Route119_EventScript_1A064A:: @ 81A064A
+ setflag 985
+ return
+
+Route119_EventScript_1A064E:: @ 81A064E
+ setflag 986
+ return
+
+Route119_EventScript_1A0652:: @ 81A0652
+ setflag 987
+ return
+
+Route119_EventScript_1A0656:: @ 81A0656
+ setflag 988
+ return
+
+Route119_EventScript_1A065A:: @ 81A065A
+ setflag 989
+ return
+
+Route119_EventScript_1A065E:: @ 81A065E
+ setflag 990
+ return
+
+FortreeCity_Movement_1A0662:: @ 81A0662
+Route119_Movement_1A0662:: @ 81A0662
+Route120_Movement_1A0662:: @ 81A0662
+ step_55
+ step_12
+ step_54
+ step_12
+ step_55
+ step_12
+ step_54
+ step_12
+ step_55
+ step_13
+ step_54
+ step_13
+ step_55
+ step_13
+ step_54
+ step_13
+ step_55
+ step_14
+ step_54
+ step_14
+ step_55
+ step_end
+
+LittlerootTown_ProfessorBirchsLab_EventScript_1A0678:: @ 81A0678
+MossdeepCity_StevensHouse_EventScript_1A0678:: @ 81A0678
+RustboroCity_DevonCorp_2F_EventScript_1A0678:: @ 81A0678
+SlateportCity_House1_EventScript_1A0678:: @ 81A0678
+ fadescreen 1
+ special 158
+ waitstate
+ return
+
+FallarborTown_House1_EventScript_1A067F:: @ 81A067F
+GraniteCave_StevensRoom_EventScript_1A067F:: @ 81A067F
+MtPyre_Summit_EventScript_1A067F:: @ 81A067F
+SlateportCity_OceanicMuseum_2F_EventScript_1A067F:: @ 81A067F
+ bufferitem 0, 0x8004
+ fanfare 372
+ message FallarborTown_House1_Text_1A1498
+ waittext
+ waitfanfare
+ removeitem 0x8004, 1
+ return
+
+EverGrandeCity_DrakesRoom_EventScript_1A0693:: @ 81A0693
+EverGrandeCity_GlaciasRoom_EventScript_1A0693:: @ 81A0693
+EverGrandeCity_PhoebesRoom_EventScript_1A0693:: @ 81A0693
+EverGrandeCity_SidneysRoom_EventScript_1A0693:: @ 81A0693
+ move 255, EverGrandeCity_SidneysRoom_Movement_1A0853
+ waitmove 0
+ playsfx 8
+ setmaptile 6, 1, 836, 0
+ setmaptile 6, 2, 837, 0
+ setmaptile 0, 2, 734, 1
+ setmaptile 1, 2, 733, 1
+ setmaptile 2, 2, 734, 1
+ setmaptile 3, 2, 733, 1
+ setmaptile 4, 2, 734, 1
+ setmaptile 8, 2, 733, 1
+ setmaptile 9, 2, 734, 1
+ setmaptile 10, 2, 733, 1
+ setmaptile 11, 2, 734, 1
+ setmaptile 12, 2, 733, 1
+ special 142
+ return
+
+EverGrandeCity_DrakesRoom_EventScript_1A0710:: @ 81A0710
+EverGrandeCity_GlaciasRoom_EventScript_1A0710:: @ 81A0710
+EverGrandeCity_PhoebesRoom_EventScript_1A0710:: @ 81A0710
+EverGrandeCity_SidneysRoom_EventScript_1A0710:: @ 81A0710
+ move 255, EverGrandeCity_SidneysRoom_Movement_1A0847
+ waitmove 0
+ playsfx 52
+ setmaptile 5, 12, 518, 1
+ setmaptile 6, 12, 518, 1
+ setmaptile 7, 12, 518, 1
+ setmaptile 5, 13, 526, 1
+ setmaptile 6, 13, 526, 1
+ setmaptile 7, 13, 526, 1
+ special 142
+ return
+
+EverGrandeCity_DrakesRoom_EventScript_1A0757:: @ 81A0757
+EverGrandeCity_GlaciasRoom_EventScript_1A0757:: @ 81A0757
+EverGrandeCity_PhoebesRoom_EventScript_1A0757:: @ 81A0757
+EverGrandeCity_SidneysRoom_EventScript_1A0757:: @ 81A0757
+ setmaptile 6, 1, 836, 0
+ setmaptile 6, 2, 837, 0
+ setmaptile 5, 12, 518, 1
+ setmaptile 6, 12, 518, 1
+ setmaptile 7, 12, 518, 1
+ setmaptile 5, 13, 526, 1
+ setmaptile 6, 13, 526, 1
+ setmaptile 7, 13, 526, 1
+ setmaptile 0, 2, 734, 1
+ setmaptile 1, 2, 733, 1
+ setmaptile 2, 2, 734, 1
+ setmaptile 3, 2, 733, 1
+ setmaptile 4, 2, 734, 1
+ setmaptile 8, 2, 733, 1
+ setmaptile 9, 2, 734, 1
+ setmaptile 10, 2, 733, 1
+ setmaptile 11, 2, 734, 1
+ setmaptile 12, 2, 733, 1
+ return
+
+EverGrandeCity_DrakesRoom_EventScript_1A07FA:: @ 81A07FA
+EverGrandeCity_GlaciasRoom_EventScript_1A07FA:: @ 81A07FA
+EverGrandeCity_PhoebesRoom_EventScript_1A07FA:: @ 81A07FA
+EverGrandeCity_SidneysRoom_EventScript_1A07FA:: @ 81A07FA
+ setmaptile 5, 12, 518, 1
+ setmaptile 6, 12, 518, 1
+ setmaptile 7, 12, 518, 1
+ setmaptile 5, 13, 526, 1
+ setmaptile 6, 13, 526, 1
+ setmaptile 7, 13, 526, 1
+ return
+
+SlateportCity_Movement_1A0831:: @ 81A0831
+ step_57
+ step_end
+
+AquaHideout_B2F_Movement_1A0833:: @ 81A0833
+EverGrandeCity_ChampionsRoom_Movement_1A0833:: @ 81A0833
+LavaridgeTown_Movement_1A0833:: @ 81A0833
+LilycoveCity_ContestLobby_Movement_1A0833:: @ 81A0833
+LilycoveCity_CoveLilyMotel_1F_Movement_1A0833:: @ 81A0833
+LittlerootTown_BrendansHouse_1F_Movement_1A0833:: @ 81A0833
+LittlerootTown_BrendansHouse_2F_Movement_1A0833:: @ 81A0833
+LittlerootTown_MaysHouse_1F_Movement_1A0833:: @ 81A0833
+MauvilleCity_House2_Movement_1A0833:: @ 81A0833
+MauvilleCity_Movement_1A0833:: @ 81A0833
+MeteorFalls_1F_1R_Movement_1A0833:: @ 81A0833
+MossdeepCity_StevensHouse_Movement_1A0833:: @ 81A0833
+MtChimney_Movement_1A0833:: @ 81A0833
+PetalburgCity_Movement_1A0833:: @ 81A0833
+Route103_Movement_1A0833:: @ 81A0833
+Route110_Movement_1A0833:: @ 81A0833
+Route110_TrickHouseEnd_Movement_1A0833:: @ 81A0833
+Route110_TrickHouseEntrance_Movement_1A0833:: @ 81A0833
+Route110_TrickHousePuzzle5_Movement_1A0833:: @ 81A0833
+RustboroCity_DevonCorp_2F_Movement_1A0833:: @ 81A0833
+RustboroCity_Movement_1A0833:: @ 81A0833
+RusturfTunnel_Movement_1A0833:: @ 81A0833
+SeafloorCavern_Room9_Movement_1A0833:: @ 81A0833
+SlateportCity_Movement_1A0833:: @ 81A0833
+SlateportCity_OceanicMuseum_1F_Movement_1A0833:: @ 81A0833
+SlateportCity_PokemonFanClub_Movement_1A0833:: @ 81A0833
+SootopolisCity_Movement_1A0833:: @ 81A0833
+ step_56
+ step_end
+
+EverGrandeCity_ChampionsRoom_Movement_1A0835:: @ 81A0835
+LavaridgeTown_Movement_1A0835:: @ 81A0835
+LilycoveCity_CoveLilyMotel_1F_Movement_1A0835:: @ 81A0835
+LittlerootTown_BrendansHouse_1F_Movement_1A0835:: @ 81A0835
+LittlerootTown_BrendansHouse_2F_Movement_1A0835:: @ 81A0835
+LittlerootTown_MaysHouse_1F_Movement_1A0835:: @ 81A0835
+MauvilleCity_House2_Movement_1A0835:: @ 81A0835
+MauvilleCity_Movement_1A0835:: @ 81A0835
+MeteorFalls_1F_1R_Movement_1A0835:: @ 81A0835
+MossdeepCity_StevensHouse_Movement_1A0835:: @ 81A0835
+MtChimney_Movement_1A0835:: @ 81A0835
+PetalburgCity_Movement_1A0835:: @ 81A0835
+Route103_Movement_1A0835:: @ 81A0835
+Route110_Movement_1A0835:: @ 81A0835
+Route110_TrickHouseEntrance_Movement_1A0835:: @ 81A0835
+Route110_TrickHousePuzzle5_Movement_1A0835:: @ 81A0835
+RustboroCity_DevonCorp_2F_Movement_1A0835:: @ 81A0835
+RustboroCity_Movement_1A0835:: @ 81A0835
+RusturfTunnel_Movement_1A0835:: @ 81A0835
+SeafloorCavern_Room9_Movement_1A0835:: @ 81A0835
+SlateportCity_Movement_1A0835:: @ 81A0835
+SlateportCity_OceanicMuseum_1F_Movement_1A0835:: @ 81A0835
+SlateportCity_PokemonFanClub_Movement_1A0835:: @ 81A0835
+SootopolisCity_Movement_1A0835:: @ 81A0835
+ step_14
+ step_14
+ step_14
+ step_end
+
+AquaHideout_B2F_Movement_1A0839:: @ 81A0839
+EverGrandeCity_PokemonLeague_Movement_1A0839:: @ 81A0839
+FallarborTown_House2_Movement_1A0839:: @ 81A0839
+FortreeCity_House4_Movement_1A0839:: @ 81A0839
+LilycoveCity_ContestHall_Movement_1A0839:: @ 81A0839
+LilycoveCity_CoveLilyMotel_1F_Movement_1A0839:: @ 81A0839
+LilycoveCity_DepartmentStore_1F_Movement_1A0839:: @ 81A0839
+LilycoveCity_Harbor_Movement_1A0839:: @ 81A0839
+LilycoveCity_LilycoveMuseum_1F_Movement_1A0839:: @ 81A0839
+LilycoveCity_LilycoveMuseum_2F_Movement_1A0839:: @ 81A0839
+LilycoveCity_MoveDeletersHouse_Movement_1A0839:: @ 81A0839
+LilycoveCity_Movement_1A0839:: @ 81A0839
+LittlerootTown_BrendansHouse_1F_Movement_1A0839:: @ 81A0839
+LittlerootTown_BrendansHouse_2F_Movement_1A0839:: @ 81A0839
+MauvilleCity_Movement_1A0839:: @ 81A0839
+MtChimney_Movement_1A0839:: @ 81A0839
+MtPyre_Summit_Movement_1A0839:: @ 81A0839
+OldaleTown_Movement_1A0839:: @ 81A0839
+PetalburgCity_Gym_Movement_1A0839:: @ 81A0839
+PetalburgCity_Movement_1A0839:: @ 81A0839
+Route103_Movement_1A0839:: @ 81A0839
+Route110_TrickHouseEnd_Movement_1A0839:: @ 81A0839
+Route110_TrickHouseEntrance_Movement_1A0839:: @ 81A0839
+Route110_TrickHousePuzzle5_Movement_1A0839:: @ 81A0839
+Route119_Movement_1A0839:: @ 81A0839
+RusturfTunnel_Movement_1A0839:: @ 81A0839
+SeafloorCavern_Room9_Movement_1A0839:: @ 81A0839
+SlateportCity_ContestLobby_Movement_1A0839:: @ 81A0839
+SlateportCity_Movement_1A0839:: @ 81A0839
+SlateportCity_SternsShipyard_1F_Movement_1A0839:: @ 81A0839
+ step_3e
+ step_end
+
+ .incbin "baserom.gba", 0x1a083b, 0x2
+
+EverGrandeCity_PokemonLeague_Movement_1A083D:: @ 81A083D
+LilycoveCity_ContestHall_Movement_1A083D:: @ 81A083D
+LilycoveCity_ContestLobby_Movement_1A083D:: @ 81A083D
+LilycoveCity_CoveLilyMotel_1F_Movement_1A083D:: @ 81A083D
+LilycoveCity_House3_Movement_1A083D:: @ 81A083D
+LilycoveCity_LilycoveMuseum_1F_Movement_1A083D:: @ 81A083D
+LilycoveCity_Movement_1A083D:: @ 81A083D
+LittlerootTown_Movement_1A083D:: @ 81A083D
+MauvilleCity_GameCorner_Movement_1A083D:: @ 81A083D
+MauvilleCity_Movement_1A083D:: @ 81A083D
+MossdeepCity_Movement_1A083D:: @ 81A083D
+MossdeepCity_SpaceCenter_1F_Movement_1A083D:: @ 81A083D
+MtChimney_Movement_1A083D:: @ 81A083D
+OldaleTown_Movement_1A083D:: @ 81A083D
+PetalburgCity_Movement_1A083D:: @ 81A083D
+Route109_Movement_1A083D:: @ 81A083D
+Route110_Movement_1A083D:: @ 81A083D
+Route111_WinstrateFamilysHouse_Movement_1A083D:: @ 81A083D
+Route119_Movement_1A083D:: @ 81A083D
+RustboroCity_DevonCorp_3F_Movement_1A083D:: @ 81A083D
+RustboroCity_Movement_1A083D:: @ 81A083D
+RusturfTunnel_Movement_1A083D:: @ 81A083D
+SlateportCity_ContestHall_Movement_1A083D:: @ 81A083D
+SlateportCity_ContestLobby_Movement_1A083D:: @ 81A083D
+SlateportCity_Harbor_Movement_1A083D:: @ 81A083D
+SlateportCity_Movement_1A083D:: @ 81A083D
+SlateportCity_OceanicMuseum_2F_Movement_1A083D:: @ 81A083D
+SlateportCity_SternsShipyard_1F_Movement_1A083D:: @ 81A083D
+VerdanturfTown_Movement_1A083D:: @ 81A083D
+ step_4e
+ step_end
+
+DewfordTown_Hall_Movement_1A083F:: @ 81A083F
+EverGrandeCity_ChampionsRoom_Movement_1A083F:: @ 81A083F
+EverGrandeCity_HallOfFame_Movement_1A083F:: @ 81A083F
+LavaridgeTown_Movement_1A083F:: @ 81A083F
+LilycoveCity_PokemonTrainerFanClub_Movement_1A083F:: @ 81A083F
+LittlerootTown_BrendansHouse_1F_Movement_1A083F:: @ 81A083F
+LittlerootTown_BrendansHouse_2F_Movement_1A083F:: @ 81A083F
+LittlerootTown_MaysHouse_1F_Movement_1A083F:: @ 81A083F
+LittlerootTown_Movement_1A083F:: @ 81A083F
+MeteorFalls_1F_1R_Movement_1A083F:: @ 81A083F
+MossdeepCity_StevensHouse_Movement_1A083F:: @ 81A083F
+MtChimney_Movement_1A083F:: @ 81A083F
+MtPyre_Summit_Movement_1A083F:: @ 81A083F
+OldaleTown_PokemonCenter_1F_Movement_1A083F:: @ 81A083F
+PetalburgCity_Gym_Movement_1A083F:: @ 81A083F
+PetalburgCity_Movement_1A083F:: @ 81A083F
+PetalburgWoods_Movement_1A083F:: @ 81A083F
+Route101_Movement_1A083F:: @ 81A083F
+Route110_TrickHouseEnd_Movement_1A083F:: @ 81A083F
+Route111_Movement_1A083F:: @ 81A083F
+Route116_Movement_1A083F:: @ 81A083F
+Route120_Movement_1A083F:: @ 81A083F
+Route128_Movement_1A083F:: @ 81A083F
+RustboroCity_Movement_1A083F:: @ 81A083F
+SeafloorCavern_Room9_Movement_1A083F:: @ 81A083F
+SlateportCity_Movement_1A083F:: @ 81A083F
+SlateportCity_OceanicMuseum_1F_Movement_1A083F:: @ 81A083F
+SlateportCity_OceanicMuseum_2F_Movement_1A083F:: @ 81A083F
+SootopolisCity_Movement_1A083F:: @ 81A083F
+VictoryRoad_1F_Movement_1A083F:: @ 81A083F
+ step_27
+ step_end
+
+AquaHideout_B2F_Movement_1A0841:: @ 81A0841
+CaveOfOrigin_B4F_Movement_1A0841:: @ 81A0841
+DewfordTown_Hall_Movement_1A0841:: @ 81A0841
+EverGrandeCity_ChampionsRoom_Movement_1A0841:: @ 81A0841
+EverGrandeCity_HallOfFame_Movement_1A0841:: @ 81A0841
+LilycoveCity_Harbor_Movement_1A0841:: @ 81A0841
+LittlerootTown_BrendansHouse_1F_Movement_1A0841:: @ 81A0841
+LittlerootTown_Movement_1A0841:: @ 81A0841
+MeteorFalls_1F_1R_Movement_1A0841:: @ 81A0841
+MossdeepCity_GameCorner_1F_Movement_1A0841:: @ 81A0841
+MtPyre_Summit_Movement_1A0841:: @ 81A0841
+NewMauville_Entrance_Movement_1A0841:: @ 81A0841
+PetalburgCity_Gym_Movement_1A0841:: @ 81A0841
+PetalburgCity_Movement_1A0841:: @ 81A0841
+PetalburgWoods_Movement_1A0841:: @ 81A0841
+Route110_TrickHouseEnd_Movement_1A0841:: @ 81A0841
+Route110_TrickHouseEntrance_Movement_1A0841:: @ 81A0841
+Route111_Movement_1A0841:: @ 81A0841
+Route118_Movement_1A0841:: @ 81A0841
+Route120_Movement_1A0841:: @ 81A0841
+Route121_SafariZoneEntrance_Movement_1A0841:: @ 81A0841
+Route128_Movement_1A0841:: @ 81A0841
+RustboroCity_Movement_1A0841:: @ 81A0841
+RusturfTunnel_Movement_1A0841:: @ 81A0841
+SeafloorCavern_Room9_Movement_1A0841:: @ 81A0841
+SlateportCity_Harbor_Movement_1A0841:: @ 81A0841
+SlateportCity_Movement_1A0841:: @ 81A0841
+SlateportCity_OceanicMuseum_2F_Movement_1A0841:: @ 81A0841
+ step_26
+ step_end
+
+AquaHideout_B2F_Movement_1A0843:: @ 81A0843
+DewfordTown_Hall_Movement_1A0843:: @ 81A0843
+EverGrandeCity_ChampionsRoom_Movement_1A0843:: @ 81A0843
+EverGrandeCity_HallOfFame_Movement_1A0843:: @ 81A0843
+LavaridgeTown_Movement_1A0843:: @ 81A0843
+LilycoveCity_DepartmentStore_1F_Movement_1A0843:: @ 81A0843
+LilycoveCity_PokemonTrainerFanClub_Movement_1A0843:: @ 81A0843
+LittlerootTown_BrendansHouse_1F_Movement_1A0843:: @ 81A0843
+LittlerootTown_BrendansHouse_2F_Movement_1A0843:: @ 81A0843
+LittlerootTown_MaysHouse_1F_Movement_1A0843:: @ 81A0843
+LittlerootTown_Movement_1A0843:: @ 81A0843
+LittlerootTown_ProfessorBirchsLab_Movement_1A0843:: @ 81A0843
+MauvilleCity_Movement_1A0843:: @ 81A0843
+MtPyre_Summit_Movement_1A0843:: @ 81A0843
+OldaleTown_Movement_1A0843:: @ 81A0843
+PetalburgCity_Gym_Movement_1A0843:: @ 81A0843
+PetalburgCity_Movement_1A0843:: @ 81A0843
+Route101_Movement_1A0843:: @ 81A0843
+Route110_Movement_1A0843:: @ 81A0843
+Route110_TrickHouseEnd_Movement_1A0843:: @ 81A0843
+Route116_Movement_1A0843:: @ 81A0843
+Route120_Movement_1A0843:: @ 81A0843
+Route128_Movement_1A0843:: @ 81A0843
+RustboroCity_Movement_1A0843:: @ 81A0843
+SlateportCity_Harbor_Movement_1A0843:: @ 81A0843
+SlateportCity_Movement_1A0843:: @ 81A0843
+SlateportCity_OceanicMuseum_1F_Movement_1A0843:: @ 81A0843
+SlateportCity_OceanicMuseum_2F_Movement_1A0843:: @ 81A0843
+SootopolisCity_Movement_1A0843:: @ 81A0843
+ step_28
+ step_end
+
+BattleTower_Outside_Movement_1A0845:: @ 81A0845
+DewfordTown_Hall_Movement_1A0845:: @ 81A0845
+EverGrandeCity_ChampionsRoom_Movement_1A0845:: @ 81A0845
+LilycoveCity_CoveLilyMotel_1F_Movement_1A0845:: @ 81A0845
+LilycoveCity_DepartmentStoreElevator_Movement_1A0845:: @ 81A0845
+LilycoveCity_Movement_1A0845:: @ 81A0845
+LilycoveCity_PokemonTrainerFanClub_Movement_1A0845:: @ 81A0845
+LittlerootTown_Movement_1A0845:: @ 81A0845
+MauvilleCity_Movement_1A0845:: @ 81A0845
+MeteorFalls_1F_1R_Movement_1A0845:: @ 81A0845
+MtPyre_Summit_Movement_1A0845:: @ 81A0845
+OldaleTown_PokemonCenter_1F_Movement_1A0845:: @ 81A0845
+PetalburgCity_Gym_Movement_1A0845:: @ 81A0845
+PetalburgCity_Movement_1A0845:: @ 81A0845
+PetalburgWoods_Movement_1A0845:: @ 81A0845
+Route110_Movement_1A0845:: @ 81A0845
+Route110_TrickHouseEnd_Movement_1A0845:: @ 81A0845
+Route119_Movement_1A0845:: @ 81A0845
+Route120_Movement_1A0845:: @ 81A0845
+Route128_Movement_1A0845:: @ 81A0845
+RustboroCity_Movement_1A0845:: @ 81A0845
+RustboroCity_PokemonSchool_Movement_1A0845:: @ 81A0845
+RusturfTunnel_Movement_1A0845:: @ 81A0845
+SeafloorCavern_Room9_Movement_1A0845:: @ 81A0845
+SlateportCity_Harbor_Movement_1A0845:: @ 81A0845
+SlateportCity_Movement_1A0845:: @ 81A0845
+SlateportCity_OceanicMuseum_2F_Movement_1A0845:: @ 81A0845
+SootopolisCity_Movement_1A0845:: @ 81A0845
+SouthernIsland_Exterior_Movement_1A0845:: @ 81A0845
+ step_25
+ step_end
+
+EverGrandeCity_SidneysRoom_Movement_1A0847:: @ 81A0847
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_end
+
+EverGrandeCity_ChampionsRoom_Movement_1A084E:: @ 81A084E
+ step_up
+ step_up
+ step_up
+ step_up
+ step_end
+
+EverGrandeCity_SidneysRoom_Movement_1A0853:: @ 81A0853
+ step_14
+ step_14
+ step_end
+
+Route110_TrickHouseEntrance_Movement_1A0856:: @ 81A0856
+ step_up
+ step_end
+
+ .incbin "baserom.gba", 0x1a0858, 0x3
.global gUnknown_081A085B
gUnknown_081A085B: @ 81A085B
@@ -162,11 +4090,176 @@ gUnknown_081A0891: @ 81A0891
.global gUnknown_081A0A01
gUnknown_081A0A01: @ 81A0A01
- .incbin "baserom.gba", 0x001a0a01, 0x731
+
+ .incbin "baserom.gba", 0x1a0a01, 0x7c
+
+OldaleTown_PokemonCenter_1F_Text_1A0A7D:: @ 81A0A7D
+ .string "Hello, and welcome to the POKéMON\n"
+ .string "CENTER.\p"
+ .string "We restore your tired POKéMON to\n"
+ .string "full health.\p"
+ .string "Would you like to rest your POKéMON?$"
+
+OldaleTown_PokemonCenter_1F_Text_1A0AFA:: @ 81A0AFA
+ .string "We hope to see you again!$"
+
+OldaleTown_PokemonCenter_1F_Text_1A0B14:: @ 81A0B14
+ .string "Thank you for waiting.\p"
+ .string "We’ve restored your POKéMON to\n"
+ .string "full health.$"
+
+ .incbin "baserom.gba", 0x1a0b57, 0x8d
+
+EverGrandeCity_PokemonLeague_Text_1A0BE4:: @ 81A0BE4
+FallarborTown_Mart_Text_1A0BE4:: @ 81A0BE4
+FortreeCity_DecorationShop_Text_1A0BE4:: @ 81A0BE4
+FortreeCity_Mart_Text_1A0BE4:: @ 81A0BE4
+LavaridgeTown_Mart_Text_1A0BE4:: @ 81A0BE4
+LilycoveCity_DepartmentStoreRooftop_Text_1A0BE4:: @ 81A0BE4
+LilycoveCity_DepartmentStore_2F_Text_1A0BE4:: @ 81A0BE4
+LilycoveCity_DepartmentStore_3F_Text_1A0BE4:: @ 81A0BE4
+LilycoveCity_DepartmentStore_4F_Text_1A0BE4:: @ 81A0BE4
+LilycoveCity_DepartmentStore_5F_Text_1A0BE4:: @ 81A0BE4
+MauvilleCity_Mart_Text_1A0BE4:: @ 81A0BE4
+MossdeepCity_Mart_Text_1A0BE4:: @ 81A0BE4
+OldaleTown_Mart_Text_1A0BE4:: @ 81A0BE4
+PetalburgCity_Mart_Text_1A0BE4:: @ 81A0BE4
+RustboroCity_Mart_Text_1A0BE4:: @ 81A0BE4
+SlateportCity_Mart_Text_1A0BE4:: @ 81A0BE4
+SlateportCity_Text_1A0BE4:: @ 81A0BE4
+SootopolisCity_Mart_Text_1A0BE4:: @ 81A0BE4
+VerdanturfTown_Mart_Text_1A0BE4:: @ 81A0BE4
+ .string "Welcome!\p"
+ .string "How may I serve you?$"
+
+EverGrandeCity_PokemonLeague_Text_1A0C02:: @ 81A0C02
+FallarborTown_Mart_Text_1A0C02:: @ 81A0C02
+FortreeCity_DecorationShop_Text_1A0C02:: @ 81A0C02
+FortreeCity_Mart_Text_1A0C02:: @ 81A0C02
+LavaridgeTown_HerbShop_Text_1A0C02:: @ 81A0C02
+LavaridgeTown_Mart_Text_1A0C02:: @ 81A0C02
+LilycoveCity_DepartmentStoreRooftop_Text_1A0C02:: @ 81A0C02
+LilycoveCity_DepartmentStore_2F_Text_1A0C02:: @ 81A0C02
+LilycoveCity_DepartmentStore_3F_Text_1A0C02:: @ 81A0C02
+LilycoveCity_DepartmentStore_4F_Text_1A0C02:: @ 81A0C02
+LilycoveCity_DepartmentStore_5F_Text_1A0C02:: @ 81A0C02
+MauvilleCity_Mart_Text_1A0C02:: @ 81A0C02
+MossdeepCity_Mart_Text_1A0C02:: @ 81A0C02
+OldaleTown_Mart_Text_1A0C02:: @ 81A0C02
+PetalburgCity_Mart_Text_1A0C02:: @ 81A0C02
+ .include "data/maps/text/Route104_PrettyPetalFlowerShop.s"
+RustboroCity_Mart_Text_1A0C02:: @ 81A0C02
+SlateportCity_Mart_Text_1A0C02:: @ 81A0C02
+SlateportCity_Text_1A0C02:: @ 81A0C02
+SootopolisCity_Mart_Text_1A0C02:: @ 81A0C02
+VerdanturfTown_Mart_Text_1A0C02:: @ 81A0C02
+ .string "Please come again!$"
+
+ .incbin "baserom.gba", 0x1a0c15, 0x2d
+
+Route104_PrettyPetalFlowerShop_Text_1A0C42:: @ 81A0C42
+ .string "{PLAYER}{KUN}, welcome!\p"
+ .string "What can I do for you?$"
+
+ .incbin "baserom.gba", 0x1a0c68, 0x11
+
+LilycoveCity_DepartmentStoreRooftop_Text_1A0C79:: @ 81A0C79
+ .string "The BAG is full...$"
+
+LilycoveCity_DepartmentStoreRooftop_Text_1A0C8C:: @ 81A0C8C
+ .string "{PLAYER} put away the {STR_VAR_2}\n"
+ .string "in the {STR_VAR_3} POCKET.$"
+
+ .incbin "baserom.gba", 0x1a0cb1, 0x11
+
+MauvilleCity_GameCorner_Text_1A0CC2:: @ 81A0CC2
+MauvilleCity_Text_1A0CC2:: @ 81A0CC2
+MtChimney_Text_1A0CC2:: @ 81A0CC2
+OldaleTown_Text_1A0CC2:: @ 81A0CC2
+Route109_SeashoreHouse_Text_1A0CC2:: @ 81A0CC2
+ .string "Too bad!\n"
+ .string "The BAG is full...$"
+
+ .incbin "baserom.gba", 0x1a0cde, 0x11
+
+BattleTower_Lobby_Text_1A0CEF:: @ 81A0CEF
+MauvilleCity_GameCorner_Text_1A0CEF:: @ 81A0CEF
+Route114_LanettesHouse_Text_1A0CEF:: @ 81A0CEF
+SootopolisCity_House6_Text_1A0CEF:: @ 81A0CEF
+ .string "Too bad! There’s no room left for\n"
+ .string "another {STR_VAR_2}...$"
+
+ .incbin "baserom.gba", 0x1a0d1f, 0x22
+
+PetalburgCity_Text_1A0D41:: @ 81A0D41
+ .string "“Selected items for your convenience!”\n"
+ .string "POKéMON MART$"
+
+PetalburgCity_Text_1A0D75:: @ 81A0D75
+ .string "“Rejuvenate your tired partners!”\n"
+ .string "POKéMON CENTER$"
+
+ .incbin "baserom.gba", 0x1a0da6, 0x150
+
+ .include "data/maps/text/LilycoveCity_DepartmentStoreElevator.s"
+Route111_Text_1A0F93:: @ 81A0F93
+ .string "The sandstorm is vicious.\n"
+ .string "It’s impossible to keep going.$"
+
+ .incbin "baserom.gba", 0x1a0fcc, 0x40
+
+LittlerootTown_BrendansHouse_2F_Text_1A100C:: @ 81A100C
+ .include "data/maps/text/LittlerootTown_MaysHouse_2F.s"
+LittlerootTown_BrendansHouse_2F_Text_1A10D6:: @ 81A10D6
+LittlerootTown_MaysHouse_2F_Text_1A10D6:: @ 81A10D6
+ .string "{PLAYER} booted up the PC.$"
+
+FallarborTown_ContestLobby_Text_1A10EB:: @ 81A10EB
+ .string "The link was canceled.$"
+
+MossdeepCity_StevensHouse_Text_1A1102:: @ 81A1102
+RustboroCity_DevonCorp_2F_Text_1A1102:: @ 81A1102
+ .string "Want to give a nickname to the\n"
+ .string "{STR_VAR_2} you received?$"
.global gUnknown_081A1132
gUnknown_081A1132: @ 81A1132
- .incbin "baserom.gba", 0x001a1132, 0x37d
+
+ .incbin "baserom.gba", 0x1a1132, 0x3c
+
+SlateportCity_Text_1A116E:: @ 81A116E
+ .string "Do you know the TM SECRET POWER?\p"
+ .string "Our group, we love the TM SECRET\n"
+ .string "POWER.\p"
+ .string "One of our members will give it to you.\n"
+ .string "Come back and show me if you get it.\p"
+ .string "We’ll accept you as a member and sell\n"
+ .string "you good stuff in secrecy.$"
+
+OldaleTown_PokemonCenter_1F_Text_1A1245:: @ 81A1245
+ .string "Okay, I’ll take your POKéMON for a\n"
+ .string "few seconds.$"
+
+OldaleTown_PokemonCenter_1F_Text_1A1275:: @ 81A1275
+ .string "Your POKéMON may be infected with\n"
+ .string "POKéRUS.\p"
+ .string "Little is known about the POKéRUS\n"
+ .string "except that they are microscopic life-\l"
+ .string "forms that attach to POKéMON.\p"
+ .string "While infected, POKéMON are said to\n"
+ .string "grow exceptionally well.$"
+
+ .incbin "baserom.gba", 0x1a1344, 0x47
+
+ .include "data/maps/text/SealedChamber_InnerRoom.s"
+ .include "data/maps/text/AncientTomb.s"
+ .include "data/maps/text/DesertRuins.s"
+ .include "data/maps/text/IslandCave.s"
+ .include "data/maps/text/SealedChamber_OuterRoom.s"
+ .include "data/maps/text/OldaleTown_PokemonCenter_2F.s"
+FallarborTown_House1_Text_1A1498:: @ 81A1498
+ .string "{PLAYER} handed over the\n"
+ .string "{STR_VAR_1}.$"
.global gUnknown_081A14AF
gUnknown_081A14AF: @ 81A14AF
@@ -174,59 +4267,583 @@ gUnknown_081A14AF: @ 81A14AF
.global gUnknown_081A14B8
gUnknown_081A14B8: @ 81A14B8
- .incbin "baserom.gba", 0x001a14b8, 0x25
+
+ .incbin "baserom.gba", 0x1a14b8, 0x24
+
+OldaleTown_PokemonCenter_1F_EventScript_1A14DC:: @ 81A14DC
+PacifidlogTown_House2_EventScript_1A14DC:: @ 81A14DC
+Route101_EventScript_1A14DC:: @ 81A14DC
+ return
.global gUnknown_081A14DD
gUnknown_081A14DD: @ 81A14DD
- .incbin "baserom.gba", 0x001a14dd, 0x177
+
+Route102_EventScript_1A14DD:: @ 81A14DD
+Route103_EventScript_1A14DD:: @ 81A14DD
+Route104_EventScript_1A14DD:: @ 81A14DD
+Route110_EventScript_1A14DD:: @ 81A14DD
+Route111_EventScript_1A14DD:: @ 81A14DD
+Route112_EventScript_1A14DD:: @ 81A14DD
+Route114_EventScript_1A14DD:: @ 81A14DD
+Route115_EventScript_1A14DD:: @ 81A14DD
+Route116_EventScript_1A14DD:: @ 81A14DD
+Route117_EventScript_1A14DD:: @ 81A14DD
+Route118_EventScript_1A14DD:: @ 81A14DD
+Route119_EventScript_1A14DD:: @ 81A14DD
+Route120_EventScript_1A14DD:: @ 81A14DD
+Route121_EventScript_1A14DD:: @ 81A14DD
+Route123_EventScript_1A14DD:: @ 81A14DD
+Route130_EventScript_1A14DD:: @ 81A14DD
+ special 43
+ switch 0x8004
+ case 255, Route102_EventScript_1A1533
+ case 0, Route102_EventScript_1A153D
+ case 1, Route102_EventScript_1A1595
+ case 2, Route102_EventScript_1A15A2
+ case 3, Route102_EventScript_1A15AF
+ case 4, Route102_EventScript_1A15BC
+ case 5, Route102_EventScript_1A15F9
+ end
+
+Route102_EventScript_1A1533:: @ 81A1533
+ lockall
+ message Route102_Text_1A1946
+ waittext
+ waitbutton
+ releaseall
+ end
+
+Route102_EventScript_1A153D:: @ 81A153D
+ lock
+ faceplayer
+ specialval RESULT, 49
+ compare RESULT, 1
+ jumpeq Route102_EventScript_1A1558
+ message Route102_Text_1A16B6
+ waittext
+ waitbutton
+ release
+ end
+
+Route102_EventScript_1A1558:: @ 81A1558
+ msgbox Route102_Text_1A16CD, 5
+ compare RESULT, 1
+ jumpeq Route102_EventScript_1A1577
+ compare RESULT, 0
+ jumpeq Route102_EventScript_1A1593
+ end
+
+Route102_EventScript_1A1577:: @ 81A1577
+ fadescreen 1
+ closebutton
+ special 44
+ waitstate
+ compare 0x800e, 0
+ jumpeq Route102_EventScript_1A1593
+ removeitem 0x800e, 1
+ call Route102_EventScript_1A16A9
+
+Route102_EventScript_1A1593:: @ 81A1593
+ release
+ end
+
+Route102_EventScript_1A1595:: @ 81A1595
+ lockall
+ message Route102_Text_1A172C
+ waittext
+ waitbutton
+ jump Route102_EventScript_1A165F
+
+Route102_EventScript_1A15A2:: @ 81A15A2
+ lockall
+ message Route102_Text_1A174B
+ waittext
+ waitbutton
+ jump Route102_EventScript_1A165F
+
+Route102_EventScript_1A15AF:: @ 81A15AF
+ lockall
+ message Route102_Text_1A175C
+ waittext
+ waitbutton
+ jump Route102_EventScript_1A165F
+
+Route102_EventScript_1A15BC:: @ 81A15BC
+ call Route102_EventScript_1A15CE
+ lockall
+ message Route102_Text_1A177D
+ waittext
+ waitbutton
+ jump Route102_EventScript_1A165F
+
+Route102_EventScript_1A15CE:: @ 81A15CE
+ compare 0x8005, 0
+ jumpeq Route102_EventScript_1A15F2
+ compare 0x8005, 4
+ jumpeq Route102_EventScript_1A15EB
+ buffertext 1, Route102_Text_1A17B7
+ return
+
+Route102_EventScript_1A15EB:: @ 81A15EB
+ buffertext 1, Route102_Text_1A179F
+ return
+
+Route102_EventScript_1A15F2:: @ 81A15F2
+ buffertext 1, Route102_Text_1A17B0
+ return
+
+Route102_EventScript_1A15F9:: @ 81A15F9
+ buffernum 1, 32774
+ lock
+ faceplayer
+ msgbox Route102_Text_1A17C0, 5
+ compare RESULT, 1
+ jumpeq Route102_EventScript_1A161D
+ compare RESULT, 0
+ jumpeq Route102_EventScript_1A164B
+
+Route102_EventScript_1A161D:: @ 81A161D
+ special 46
+ compare 0x8004, 0
+ jumpeq Route102_EventScript_1A1642
+ special 47
+ message Route102_Text_1A17FD
+ fanfare 387
+ waittext
+ waitfanfare
+ waitbutton
+ message Route102_Text_1A181A
+ waittext
+ waitbutton
+ release
+ end
+
+Route102_EventScript_1A1642:: @ 81A1642
+ message Route102_Text_1A1881
+ waittext
+ waitbutton
+ release
+ end
+
+Route102_EventScript_1A164B:: @ 81A164B
+ message Route102_Text_1A18C5
+ waittext
+ waitbutton
+ release
+ end
.global gUnknown_081A1654
gUnknown_081A1654: @ 81A1654
- .incbin "baserom.gba", 0x001a1654, 0x3b
+
+ .incbin "baserom.gba", 0x1a1654, 0xb
+
+Route102_EventScript_1A165F:: @ 81A165F
+ checkitem ITEM_WAILMER_PAIL, 1
+ compare RESULT, 0
+ jumpeq Route102_EventScript_1A168D
+ msgbox Route102_Text_1A18E6, 5
+ compare RESULT, 1
+ jumpeq Route102_EventScript_1A1693
+ compare RESULT, 0
+ jumpeq Route102_EventScript_1A168D
+
+Route102_EventScript_1A168D:: @ 81A168D
+ releaseall
+ end
.global gUnknown_081A168F
gUnknown_081A168F: @ 81A168F
- .incbin "baserom.gba", 0x001a168f, 0x523
+
+ .incbin "baserom.gba", 0x1a168f, 0x4
+
+Route102_EventScript_1A1693:: @ 81A1693
+ message Route102_Text_1A1912
+ waittext
+ special 48
+ special 94
+ waitstate
+ message Route102_Text_1A1925
+ waittext
+ waitbutton
+ releaseall
+ end
+
+Route102_EventScript_1A16A9:: @ 81A16A9
+ special 45
+ inccounter 3
+ message Route102_Text_1A16FB
+ waittext
+ waitbutton
+ return
+
+Route102_Text_1A16B6:: @ 81A16B6
+ .string "It’s soft, loamy soil.$"
+
+Route102_Text_1A16CD:: @ 81A16CD
+ .string "It’s soft, loamy soil.\n"
+ .string "Want to plant a BERRY?$"
+
+Route102_Text_1A16FB:: @ 81A16FB
+ .string "{PLAYER} planted one {STR_VAR_1} BERRY in\n"
+ .string "the soft, loamy soil.$"
+
+Route102_Text_1A172C:: @ 81A172C
+ .string "One {STR_VAR_1} BERRY was planted here.$"
+
+Route102_Text_1A174B:: @ 81A174B
+ .string "{STR_VAR_1} has sprouted.$"
+
+Route102_Text_1A175C:: @ 81A175C
+ .string "This {STR_VAR_1} plant is growing taller.$"
+
+Route102_Text_1A177D:: @ 81A177D
+ .string "These {STR_VAR_1} flowers are blooming\n"
+ .string "{STR_VAR_2}.$"
+
+Route102_Text_1A179F:: @ 81A179F
+ .string "very beautifully$"
+
+Route102_Text_1A17B0:: @ 81A17B0
+ .string "cutely$"
+
+Route102_Text_1A17B7:: @ 81A17B7
+ .string "prettily$"
+
+Route102_Text_1A17C0:: @ 81A17C0
+ .string "There are {STR_VAR_2} {STR_VAR_1} BERRIES!\p"
+ .string "Do you want to pick the\n"
+ .string "{STR_VAR_1} BERRIES?$"
+
+Route102_Text_1A17FD:: @ 81A17FD
+ .string "{PLAYER} picked the {STR_VAR_2} {STR_VAR_1} BERRIES.$"
+
+Route102_Text_1A181A:: @ 81A181A
+ .string "{PLAYER} put away the {STR_VAR_1} BERRIES\n"
+ .string "in the BAG’s BERRIES POCKET.\p"
+ .string "The soil returned to its soft and\n"
+ .string "loamy state.$"
+
+Route102_Text_1A1881:: @ 81A1881
+ .string "The BAG’s BERRIES POCKET is full.\p"
+ .string "The {STR_VAR_1} BERRIES couldn’t be taken.$"
+
+Route102_Text_1A18C5:: @ 81A18C5
+ .string "{PLAYER} left the {STR_VAR_1} BERRIES\n"
+ .string "unpicked.$"
+
+Route102_Text_1A18E6:: @ 81A18E6
+ .string "Want to water the {STR_VAR_1} with the\n"
+ .string "WAILMER PAIL?$"
+
+Route102_Text_1A1912:: @ 81A1912
+ .string "{PLAYER} watered the {STR_VAR_1}.$"
+
+Route102_Text_1A1925:: @ 81A1925
+ .string "The plant seems to be delighted.$"
+
+Route102_Text_1A1946:: @ 81A1946
+ .string "!$"
+
+ .incbin "baserom.gba", 0x1a1948, 0x1a2
+
+SecretBase_RedCave1_Text_1A1AEA:: @ 81A1AEA
+ .string "Have you made a SECRET BASE already?\p"
+ .string "I went here, there, everywhere before\n"
+ .string "choosing this place.\p"
+ .string "Since you’re already here, how would\n"
+ .string "you like to battle?$"
+
+SecretBase_RedCave1_Text_1A1B83:: @ 81A1B83
+ .string "Okay!\n"
+ .string "Here we come!$"
+
+SecretBase_RedCave1_Text_1A1B97:: @ 81A1B97
+ .string "Hunh?\n"
+ .string "Oh, you can’t now...$"
.global gUnknown_081A1BB2
gUnknown_081A1BB2: @ 81A1BB2
- .incbin "baserom.gba", 0x001a1bb2, 0x1c2
+
+ .incbin "baserom.gba", 0x1a1bb2, 0x46
+
+SecretBase_RedCave1_Text_1A1BF8:: @ 81A1BF8
+ .string "What do you think of my SECRET BASE?\n"
+ .string "Come visit me again tomorrow.$"
+
+SecretBase_RedCave1_Text_1A1C3B:: @ 81A1C3B
+ .string "Have you made a SECRET BASE already?\p"
+ .string "I went here, there, everywhere before\n"
+ .string "choosing this place.\p"
+ .string "Feel free to hang out!$"
+
+SecretBase_RedCave1_Text_1A1CB2:: @ 81A1CB2
+ .string "There’re a lot of places where you can\n"
+ .string "make a SECRET BASE.\p"
+ .string "But I like this spot best.\n"
+ .string "Don’t you think it’s nice?\p"
+ .string "Oh, would you like to have a battle?$"
+
+SecretBase_RedCave1_Text_1A1D48:: @ 81A1D48
+ .string "Okay, here goes!$"
+
+SecretBase_RedCave1_Text_1A1D59:: @ 81A1D59
+ .string "Oh...\n"
+ .string "You can’t now, okay.$"
.global gUnknown_081A1D74
gUnknown_081A1D74: @ 81A1D74
- .incbin "baserom.gba", 0x001a1d74, 0x1f3
+
+ .incbin "baserom.gba", 0x1a1d74, 0x4c
+
+SecretBase_RedCave1_Text_1A1DC0:: @ 81A1DC0
+ .string "If you’re in this area again, I hope\n"
+ .string "you’ll visit me.$"
+
+SecretBase_RedCave1_Text_1A1DF6:: @ 81A1DF6
+ .string "There’re a lot of places where you can\n"
+ .string "make a SECRET BASE.\p"
+ .string "But I like this spot best.\n"
+ .string "Don’t you think it’s nice?$"
+
+SecretBase_RedCave1_Text_1A1E67:: @ 81A1E67
+ .string "This is a popular spot.\n"
+ .string "It’s always taken.\p"
+ .string "Oh! Were you thinking about taking this\n"
+ .string "spot, too?\p"
+ .string "I’ll tell you what, you can have this\n"
+ .string "spot if you can beat me.$"
+
+SecretBase_RedCave1_Text_1A1F04:: @ 81A1F04
+ .string "Okay!\n"
+ .string "I’m going to defend my SECRET BASE!$"
+
+SecretBase_RedCave1_Text_1A1F2E:: @ 81A1F2E
+ .string "Hunh? Is that right?\n"
+ .string "You’re not interested in this spot?$"
.global gUnknown_081A1F67
gUnknown_081A1F67: @ 81A1F67
- .incbin "baserom.gba", 0x001a1f67, 0x162
+
+ .incbin "baserom.gba", 0x1a1f67, 0x21
+
+SecretBase_RedCave1_Text_1A1F88:: @ 81A1F88
+ .string "Okay, when I move one day, this place\n"
+ .string "will be yours!$"
+
+SecretBase_RedCave1_Text_1A1FBD:: @ 81A1FBD
+ .string "This is a popular spot.\n"
+ .string "It’s always taken.\p"
+ .string "I waited a long time for it to open.\n"
+ .string "I finally got to use it!$"
+
+SecretBase_RedCave1_Text_1A2026:: @ 81A2026
+ .string "Welcome to my POKéMON LAB.\p"
+ .string "I carry out research on battling in\n"
+ .string "secrecy.\p"
+ .string "Would you like to see how strong I am?$"
+
+SecretBase_RedCave1_Text_1A2095:: @ 81A2095
+ .string "I’m going to go all out!$"
+
+SecretBase_RedCave1_Text_1A20AE:: @ 81A20AE
+ .string "Oh.\n"
+ .string "Some other time, then!$"
.global gUnknown_081A20C9
gUnknown_081A20C9: @ 81A20C9
- .incbin "baserom.gba", 0x001a20c9, 0x18b
+
+ .incbin "baserom.gba", 0x1a20c9, 0x40
+
+SecretBase_RedCave1_Text_1A2109:: @ 81A2109
+ .string "Thanks for battling with me.\n"
+ .string "Please come back again tomorrow.$"
+
+SecretBase_RedCave1_Text_1A2147:: @ 81A2147
+ .string "Welcome to my POKéMON LAB.\p"
+ .string "I carry out research on battling in\n"
+ .string "secrecy.$"
+
+SecretBase_RedCave1_Text_1A218F:: @ 81A218F
+ .string "A big mansion is nice, but I like this\n"
+ .string "sort of place more.\p"
+ .string "I like it because all kinds of people\n"
+ .string "come visit me.\p"
+ .string "So, how would you like a battle?$"
+
+SecretBase_RedCave1_Text_1A2220:: @ 81A2220
+ .string "That’s the way!$"
+
+SecretBase_RedCave1_Text_1A2230:: @ 81A2230
+ .string "When you’re ready, give me a shout!$"
.global gUnknown_081A2254
gUnknown_081A2254: @ 81A2254
- .incbin "baserom.gba", 0x001a2254, 0x1e5
+
+ .incbin "baserom.gba", 0x1a2254, 0x2c
+
+SecretBase_RedCave1_Text_1A2280:: @ 81A2280
+ .string "Well, anyway, I should go buy some\n"
+ .string "decorations and furniture.\p"
+ .string "I want my SECRET BASE to be a place\n"
+ .string "other people can enjoy.$"
+
+SecretBase_RedCave1_Text_1A22FA:: @ 81A22FA
+ .string "A big mansion is nice, but I like this\n"
+ .string "sort of place more.\p"
+ .string "I like it because all kinds of people\n"
+ .string "come visit me.$"
+
+SecretBase_RedCave1_Text_1A236A:: @ 81A236A
+ .string "I simply adore shopping for decorations\n"
+ .string "and furniture.\p"
+ .string "I also love raising POKéMON just\n"
+ .string "as much.\p"
+ .string "If you would be so kind, will you battle\n"
+ .string "with my POKéMON?$"
+
+SecretBase_RedCave1_Text_1A2405:: @ 81A2405
+ .string "Thank you.\n"
+ .string "Shall we begin?$"
+
+SecretBase_RedCave1_Text_1A2420:: @ 81A2420
+ .string "Oh.\n"
+ .string "How disappointing...$"
.global gUnknown_081A2439
gUnknown_081A2439: @ 81A2439
- .incbin "baserom.gba", 0x001a2439, 0x18a
+
+ .incbin "baserom.gba", 0x1a2439, 0xd
+
+SecretBase_RedCave1_Text_1A2446:: @ 81A2446
+ .string "That was all in good fun!\n"
+ .string "I should go enjoy shopping now.$"
+
+SecretBase_RedCave1_Text_1A2480:: @ 81A2480
+ .string "I simply adore shopping for decorations\n"
+ .string "and furniture.\p"
+ .string "I also love raising POKéMON just\n"
+ .string "as much.$"
+
+SecretBase_RedCave1_Text_1A24E1:: @ 81A24E1
+ .string "Some people make their SECRET BASES in\n"
+ .string "hard-to-find places.\l"
+ .string "Do they want to just lie low?\p"
+ .string "But since you found me, how about we\n"
+ .string "have a battle?$"
+
+SecretBase_RedCave1_Text_1A256F:: @ 81A256F
+ .string "I’m not going down easily!$"
+
+SecretBase_RedCave1_Text_1A258A:: @ 81A258A
+ .string "Oh... Are you maybe tired from searching\n"
+ .string "for this place?$"
.global gUnknown_081A25C3
gUnknown_081A25C3: @ 81A25C3
- .incbin "baserom.gba", 0x001a25c3, 0x191
+
+ .incbin "baserom.gba", 0x1a25c3, 0xf
+
+SecretBase_RedCave1_Text_1A25D2:: @ 81A25D2
+ .string "Where’s your SECRET BASE?\n"
+ .string "I should go visit you there.$"
+
+SecretBase_RedCave1_Text_1A2609:: @ 81A2609
+ .string "Some people make their SECRET BASES in\n"
+ .string "hard-to-find places.\l"
+ .string "Do they want to just lie low?$"
+
+SecretBase_RedCave1_Text_1A2663:: @ 81A2663
+ .string "People have told me that you can get\n"
+ .string "decorations in several ways.\p"
+ .string "We should have a race to see who can\n"
+ .string "get nicer decorations and furniture!\p"
+ .string "In the meantime, want to battle?$"
+
+SecretBase_RedCave1_Text_1A2710:: @ 81A2710
+ .string "This is my SECRET BASE.\n"
+ .string "I can’t lose!$"
+
+SecretBase_RedCave1_Text_1A2736:: @ 81A2736
+ .string "I’ll battle with you anytime.$"
.global gUnknown_081A2754
gUnknown_081A2754: @ 81A2754
- .incbin "baserom.gba", 0x001a2754, 0x1d1
+
+ .incbin "baserom.gba", 0x1a2754, 0x16
+
+SecretBase_RedCave1_Text_1A276A:: @ 81A276A
+ .string "I won’t lose at collecting decorations.\n"
+ .string "Come visit again!$"
+
+SecretBase_RedCave1_Text_1A27A4:: @ 81A27A4
+ .string "People have told me that you can get\n"
+ .string "decorations in several ways.\p"
+ .string "We should have a race to see who can\n"
+ .string "get nicer decorations and furniture!$"
+
+SecretBase_RedCave1_Text_1A2830:: @ 81A2830
+ .string "I found a spot I liked, and I did it up\n"
+ .string "with my favorite decorations.\p"
+ .string "I raise my favorite POKéMON and grow\n"
+ .string "stronger with it.\p"
+ .string "That’s what I do.\n"
+ .string "Want to battle with me?$"
+
+SecretBase_RedCave1_Text_1A28D7:: @ 81A28D7
+ .string "Show me what you’re made of!$"
+
+SecretBase_RedCave1_Text_1A28F4:: @ 81A28F4
+ .string "I guess there are times when you’re not\n"
+ .string "into it.$"
.global gUnknown_081A2925
gUnknown_081A2925: @ 81A2925
- .incbin "baserom.gba", 0x001a2925, 0x205
+
+ .incbin "baserom.gba", 0x1a2925, 0x28
+
+SecretBase_RedCave1_Text_1A294D:: @ 81A294D
+ .string "We can both become stronger.\n"
+ .string "Let’s keep at it!$"
+
+SecretBase_RedCave1_Text_1A297C:: @ 81A297C
+ .string "I found a spot I liked, and I did it up\n"
+ .string "with my favorite decorations.\p"
+ .string "I raise my favorite POKéMON and grow\n"
+ .string "stronger with it.\p"
+ .string "Every day is a great day.$"
+
+SecretBase_RedCave1_Text_1A2A13:: @ 81A2A13
+ .string "You can learn a lot about the taste\n"
+ .string "and sense of people by the kinds of\l"
+ .string "decorations they have, and how they\l"
+ .string "display them.\p"
+ .string "What do you think of my taste?\n"
+ .string "Are you speechless?\p"
+ .string "Want to see my taste in battling?$"
+
+SecretBase_RedCave1_Text_1A2AE2:: @ 81A2AE2
+ .string "There’s no holding back!$"
+
+SecretBase_RedCave1_Text_1A2AFB:: @ 81A2AFB
+ .string "I’ll be happy to demonstrate my style\n"
+ .string "anytime.$"
.global gUnknown_081A2B2A
gUnknown_081A2B2A: @ 81A2B2A
- .incbin "baserom.gba", 0x001a2b2a, 0x127
+
+ .incbin "baserom.gba", 0x1a2b2a, 0x3f
+
+SecretBase_RedCave1_Text_1A2B69:: @ 81A2B69
+ .string "What did you think of my style?\n"
+ .string "I’ll keep on polishing it!$"
+
+SecretBase_RedCave1_Text_1A2BA4:: @ 81A2BA4
+ .string "You can learn a lot about the taste\n"
+ .string "and sense of people by the kinds of\l"
+ .string "decorations they have, and how they\l"
+ .string "display them.\p"
+ .string "What do you think of my taste?\n"
+ .string "Are you speechless?$"
.global gUnknown_081A2C51
gUnknown_081A2C51: @ 81A2C51
@@ -242,11 +4859,65 @@ gUnknown_081A2D3E: @ 81A2D3E
.global gUnknown_081A2D96
gUnknown_081A2D96: @ 81A2D96
- .incbin "baserom.gba", 0x001a2d96, 0x7e
+
+ .incbin "baserom.gba", 0x1a2d96, 0x48
+
+SecretBase_RedCave1_EventScript_1A2DDE:: @ 81A2DDE
+ move 255, SecretBase_RedCave1_Movement_1A2E11
+ waitmove 0
+ setvar 0x4097, 1
+ msgbox SecretBase_RedCave1_Text_198F89, 5
+ compare RESULT, 1
+ jumpeq SecretBase_RedCave1_EventScript_1A2E08
+ closebutton
+ playsfx 9
+ special 9
+ end
+
+SecretBase_RedCave1_EventScript_1A2E08:: @ 81A2E08
+ closebutton
+ setflag 96
+ special 24
+ waitstate
+ end
+
+SecretBase_RedCave1_Movement_1A2E11:: @ 81A2E11
+ step_up
+ step_up
+ step_end
.global gUnknown_081A2E14
gUnknown_081A2E14: @ 81A2E14
- .incbin "baserom.gba", 0x001a2e14, 0x167
+
+ .incbin "baserom.gba", 0x1a2e14, 0x129
+
+LittlerootTown_BrendansHouse_2F_EventScript_1A2F3D:: @ 81A2F3D
+LittlerootTown_MaysHouse_2F_EventScript_1A2F3D:: @ 81A2F3D
+SecretBase_RedCave1_EventScript_1A2F3D:: @ 81A2F3D
+ setflag 174
+ setflag 175
+ setflag 176
+ setflag 177
+ setflag 178
+ setflag 179
+ setflag 180
+ setflag 181
+ setflag 182
+ setflag 183
+ setflag 184
+ setflag 185
+ setflag 186
+ setflag 187
+ return
+
+LittlerootTown_BrendansHouse_2F_EventScript_1A2F68:: @ 81A2F68
+LittlerootTown_MaysHouse_2F_EventScript_1A2F68:: @ 81A2F68
+SecretBase_RedCave1_EventScript_1A2F68:: @ 81A2F68
+ setvar 0x8004, 0
+ setvar 0x8005, 0
+ special 18
+ setvar 0x4089, 1
+ end
.global gUnknown_081A2F7B
gUnknown_081A2F7B: @ 81A2F7B
@@ -254,7 +4925,1120 @@ gUnknown_081A2F7B: @ 81A2F7B
.global gUnknown_081A2F8A
gUnknown_081A2F8A: @ 81A2F8A
- .incbin "baserom.gba", 0x001a2f8a, 0x13d9
+
+ .incbin "baserom.gba", 0x1a2f8a, 0x36
+
+SecretBase_BlueCave1_EventScript_1A2FC0:: @ 81A2FC0
+SecretBase_BlueCave2_EventScript_1A2FC0:: @ 81A2FC0
+SecretBase_BlueCave3_EventScript_1A2FC0:: @ 81A2FC0
+SecretBase_BlueCave4_EventScript_1A2FC0:: @ 81A2FC0
+SecretBase_BrownCave1_EventScript_1A2FC0:: @ 81A2FC0
+SecretBase_BrownCave2_EventScript_1A2FC0:: @ 81A2FC0
+SecretBase_BrownCave3_EventScript_1A2FC0:: @ 81A2FC0
+SecretBase_BrownCave4_EventScript_1A2FC0:: @ 81A2FC0
+SecretBase_RedCave1_EventScript_1A2FC0:: @ 81A2FC0
+SecretBase_RedCave2_EventScript_1A2FC0:: @ 81A2FC0
+SecretBase_RedCave3_EventScript_1A2FC0:: @ 81A2FC0
+SecretBase_RedCave4_EventScript_1A2FC0:: @ 81A2FC0
+SecretBase_Shrub1_EventScript_1A2FC0:: @ 81A2FC0
+SecretBase_Shrub2_EventScript_1A2FC0:: @ 81A2FC0
+SecretBase_Shrub3_EventScript_1A2FC0:: @ 81A2FC0
+SecretBase_Shrub4_EventScript_1A2FC0:: @ 81A2FC0
+SecretBase_Tree1_EventScript_1A2FC0:: @ 81A2FC0
+SecretBase_Tree2_EventScript_1A2FC0:: @ 81A2FC0
+SecretBase_Tree3_EventScript_1A2FC0:: @ 81A2FC0
+SecretBase_Tree4_EventScript_1A2FC0:: @ 81A2FC0
+SecretBase_YellowCave1_EventScript_1A2FC0:: @ 81A2FC0
+SecretBase_YellowCave2_EventScript_1A2FC0:: @ 81A2FC0
+SecretBase_YellowCave3_EventScript_1A2FC0:: @ 81A2FC0
+SecretBase_YellowCave4_EventScript_1A2FC0:: @ 81A2FC0
+ special 17
+ compare 0x8004, 0
+ jumpeq SecretBase_RedCave1_EventScript_1A3032
+ compare 0x8004, 1
+ jumpeq SecretBase_RedCave1_EventScript_1A30AE
+ compare 0x8004, 2
+ jumpeq SecretBase_RedCave1_EventScript_1A312A
+ compare 0x8004, 3
+ jumpeq SecretBase_RedCave1_EventScript_1A31A6
+ compare 0x8004, 4
+ jumpeq SecretBase_RedCave1_EventScript_1A3222
+ compare 0x8004, 5
+ jumpeq SecretBase_RedCave1_EventScript_1A329E
+ compare 0x8004, 6
+ jumpeq SecretBase_RedCave1_EventScript_1A331A
+ compare 0x8004, 7
+ jumpeq SecretBase_RedCave1_EventScript_1A3396
+ compare 0x8004, 8
+ jumpeq SecretBase_RedCave1_EventScript_1A3412
+ compare 0x8004, 9
+ jumpeq SecretBase_RedCave1_EventScript_1A348E
+ end
+
+SecretBase_RedCave1_EventScript_1A3032:: @ 81A3032
+ checkflag 2052
+ jumpif 0, SecretBase_RedCave1_EventScript_1A3086
+ compare RESULT, 1
+ jumpeq SecretBase_RedCave1_EventScript_1A30A5
+ lock
+ faceplayer
+ msgbox SecretBase_RedCave1_Text_1A1AEA, 5
+ compare RESULT, 0
+ jumpeq SecretBase_RedCave1_EventScript_1A308F
+ setvar RESULT, 1
+ special 25
+ call SecretBase_RedCave1_EventScript_19F806
+ compare RESULT, 0
+ jumpeq SecretBase_RedCave1_EventScript_1A308F
+ hidebox 0, 0, 15, 10
+ msgbox SecretBase_RedCave1_Text_1A1B83, 4
+ jump SecretBase_RedCave1_EventScript_1A350A
+ end
+
+SecretBase_RedCave1_EventScript_1A3086:: @ 81A3086
+ msgbox SecretBase_RedCave1_Text_1A1C3B, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A308F:: @ 81A308F
+ setvar RESULT, 0
+ special 25
+ hidebox 0, 0, 15, 10
+ msgbox SecretBase_RedCave1_Text_1A1B97, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A30A5:: @ 81A30A5
+ msgbox SecretBase_RedCave1_Text_1A1BF8, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A30AE:: @ 81A30AE
+ checkflag 2052
+ jumpif 0, SecretBase_RedCave1_EventScript_1A3102
+ compare RESULT, 1
+ jumpeq SecretBase_RedCave1_EventScript_1A3121
+ lock
+ faceplayer
+ msgbox SecretBase_RedCave1_Text_1A1E67, 5
+ compare RESULT, 0
+ jumpeq SecretBase_RedCave1_EventScript_1A310B
+ setvar RESULT, 1
+ special 25
+ call SecretBase_RedCave1_EventScript_19F806
+ compare RESULT, 0
+ jumpeq SecretBase_RedCave1_EventScript_1A310B
+ hidebox 0, 0, 15, 10
+ msgbox SecretBase_RedCave1_Text_1A1F04, 4
+ jump SecretBase_RedCave1_EventScript_1A350A
+ end
+
+SecretBase_RedCave1_EventScript_1A3102:: @ 81A3102
+ msgbox SecretBase_RedCave1_Text_1A1FBD, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A310B:: @ 81A310B
+ setvar RESULT, 0
+ special 25
+ hidebox 0, 0, 15, 10
+ msgbox SecretBase_RedCave1_Text_1A1F2E, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A3121:: @ 81A3121
+ msgbox SecretBase_RedCave1_Text_1A1F88, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A312A:: @ 81A312A
+ checkflag 2052
+ jumpif 0, SecretBase_RedCave1_EventScript_1A317E
+ compare RESULT, 1
+ jumpeq SecretBase_RedCave1_EventScript_1A319D
+ lock
+ faceplayer
+ msgbox SecretBase_RedCave1_Text_1A218F, 5
+ compare RESULT, 0
+ jumpeq SecretBase_RedCave1_EventScript_1A3187
+ setvar RESULT, 1
+ special 25
+ call SecretBase_RedCave1_EventScript_19F806
+ compare RESULT, 0
+ jumpeq SecretBase_RedCave1_EventScript_1A3187
+ hidebox 0, 0, 15, 10
+ msgbox SecretBase_RedCave1_Text_1A2220, 4
+ jump SecretBase_RedCave1_EventScript_1A350A
+ end
+
+SecretBase_RedCave1_EventScript_1A317E:: @ 81A317E
+ msgbox SecretBase_RedCave1_Text_1A22FA, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A3187:: @ 81A3187
+ setvar RESULT, 0
+ special 25
+ hidebox 0, 0, 15, 10
+ msgbox SecretBase_RedCave1_Text_1A2230, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A319D:: @ 81A319D
+ msgbox SecretBase_RedCave1_Text_1A2280, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A31A6:: @ 81A31A6
+ checkflag 2052
+ jumpif 0, SecretBase_RedCave1_EventScript_1A31FA
+ compare RESULT, 1
+ jumpeq SecretBase_RedCave1_EventScript_1A3219
+ lock
+ faceplayer
+ msgbox SecretBase_RedCave1_Text_1A24E1, 5
+ compare RESULT, 0
+ jumpeq SecretBase_RedCave1_EventScript_1A3203
+ setvar RESULT, 1
+ special 25
+ call SecretBase_RedCave1_EventScript_19F806
+ compare RESULT, 0
+ jumpeq SecretBase_RedCave1_EventScript_1A3203
+ hidebox 0, 0, 15, 10
+ msgbox SecretBase_RedCave1_Text_1A256F, 4
+ jump SecretBase_RedCave1_EventScript_1A350A
+ end
+
+SecretBase_RedCave1_EventScript_1A31FA:: @ 81A31FA
+ msgbox SecretBase_RedCave1_Text_1A2609, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A3203:: @ 81A3203
+ setvar RESULT, 0
+ special 25
+ hidebox 0, 0, 15, 10
+ msgbox SecretBase_RedCave1_Text_1A258A, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A3219:: @ 81A3219
+ msgbox SecretBase_RedCave1_Text_1A25D2, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A3222:: @ 81A3222
+ checkflag 2052
+ jumpif 0, SecretBase_RedCave1_EventScript_1A3276
+ compare RESULT, 1
+ jumpeq SecretBase_RedCave1_EventScript_1A3295
+ lock
+ faceplayer
+ msgbox SecretBase_RedCave1_Text_1A2830, 5
+ compare RESULT, 0
+ jumpeq SecretBase_RedCave1_EventScript_1A327F
+ setvar RESULT, 1
+ special 25
+ call SecretBase_RedCave1_EventScript_19F806
+ compare RESULT, 0
+ jumpeq SecretBase_RedCave1_EventScript_1A327F
+ hidebox 0, 0, 15, 10
+ msgbox SecretBase_RedCave1_Text_1A28D7, 4
+ jump SecretBase_RedCave1_EventScript_1A350A
+ end
+
+SecretBase_RedCave1_EventScript_1A3276:: @ 81A3276
+ msgbox SecretBase_RedCave1_Text_1A297C, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A327F:: @ 81A327F
+ setvar RESULT, 0
+ special 25
+ hidebox 0, 0, 15, 10
+ msgbox SecretBase_RedCave1_Text_1A28F4, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A3295:: @ 81A3295
+ msgbox SecretBase_RedCave1_Text_1A294D, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A329E:: @ 81A329E
+ checkflag 2052
+ jumpif 0, SecretBase_RedCave1_EventScript_1A32F2
+ compare RESULT, 1
+ jumpeq SecretBase_RedCave1_EventScript_1A3311
+ lock
+ faceplayer
+ msgbox SecretBase_RedCave1_Text_1A1CB2, 5
+ compare RESULT, 0
+ jumpeq SecretBase_RedCave1_EventScript_1A32FB
+ setvar RESULT, 1
+ special 25
+ call SecretBase_RedCave1_EventScript_19F806
+ compare RESULT, 0
+ jumpeq SecretBase_RedCave1_EventScript_1A32FB
+ hidebox 0, 0, 15, 10
+ msgbox SecretBase_RedCave1_Text_1A1D48, 4
+ jump SecretBase_RedCave1_EventScript_1A350A
+ end
+
+SecretBase_RedCave1_EventScript_1A32F2:: @ 81A32F2
+ msgbox SecretBase_RedCave1_Text_1A1DF6, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A32FB:: @ 81A32FB
+ setvar RESULT, 0
+ special 25
+ hidebox 0, 0, 15, 10
+ msgbox SecretBase_RedCave1_Text_1A1D59, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A3311:: @ 81A3311
+ msgbox SecretBase_RedCave1_Text_1A1DC0, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A331A:: @ 81A331A
+ checkflag 2052
+ jumpif 0, SecretBase_RedCave1_EventScript_1A336E
+ compare RESULT, 1
+ jumpeq SecretBase_RedCave1_EventScript_1A338D
+ lock
+ faceplayer
+ msgbox SecretBase_RedCave1_Text_1A2026, 5
+ compare RESULT, 0
+ jumpeq SecretBase_RedCave1_EventScript_1A3377
+ setvar RESULT, 1
+ special 25
+ call SecretBase_RedCave1_EventScript_19F806
+ compare RESULT, 0
+ jumpeq SecretBase_RedCave1_EventScript_1A3377
+ hidebox 0, 0, 15, 10
+ msgbox SecretBase_RedCave1_Text_1A2095, 4
+ jump SecretBase_RedCave1_EventScript_1A350A
+ end
+
+SecretBase_RedCave1_EventScript_1A336E:: @ 81A336E
+ msgbox SecretBase_RedCave1_Text_1A2147, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A3377:: @ 81A3377
+ setvar RESULT, 0
+ special 25
+ hidebox 0, 0, 15, 10
+ msgbox SecretBase_RedCave1_Text_1A20AE, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A338D:: @ 81A338D
+ msgbox SecretBase_RedCave1_Text_1A2109, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A3396:: @ 81A3396
+ checkflag 2052
+ jumpif 0, SecretBase_RedCave1_EventScript_1A33EA
+ compare RESULT, 1
+ jumpeq SecretBase_RedCave1_EventScript_1A3409
+ lock
+ faceplayer
+ msgbox SecretBase_RedCave1_Text_1A236A, 5
+ compare RESULT, 0
+ jumpeq SecretBase_RedCave1_EventScript_1A33F3
+ setvar RESULT, 1
+ special 25
+ call SecretBase_RedCave1_EventScript_19F806
+ compare RESULT, 0
+ jumpeq SecretBase_RedCave1_EventScript_1A33F3
+ hidebox 0, 0, 15, 10
+ msgbox SecretBase_RedCave1_Text_1A2405, 4
+ jump SecretBase_RedCave1_EventScript_1A350A
+ end
+
+SecretBase_RedCave1_EventScript_1A33EA:: @ 81A33EA
+ msgbox SecretBase_RedCave1_Text_1A2480, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A33F3:: @ 81A33F3
+ setvar RESULT, 0
+ special 25
+ hidebox 0, 0, 15, 10
+ msgbox SecretBase_RedCave1_Text_1A2420, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A3409:: @ 81A3409
+ msgbox SecretBase_RedCave1_Text_1A2446, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A3412:: @ 81A3412
+ checkflag 2052
+ jumpif 0, SecretBase_RedCave1_EventScript_1A3466
+ compare RESULT, 1
+ jumpeq SecretBase_RedCave1_EventScript_1A3485
+ lock
+ faceplayer
+ msgbox SecretBase_RedCave1_Text_1A2663, 5
+ compare RESULT, 0
+ jumpeq SecretBase_RedCave1_EventScript_1A346F
+ setvar RESULT, 1
+ special 25
+ call SecretBase_RedCave1_EventScript_19F806
+ compare RESULT, 0
+ jumpeq SecretBase_RedCave1_EventScript_1A346F
+ hidebox 0, 0, 15, 10
+ msgbox SecretBase_RedCave1_Text_1A2710, 4
+ jump SecretBase_RedCave1_EventScript_1A350A
+ end
+
+SecretBase_RedCave1_EventScript_1A3466:: @ 81A3466
+ msgbox SecretBase_RedCave1_Text_1A27A4, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A346F:: @ 81A346F
+ setvar RESULT, 0
+ special 25
+ hidebox 0, 0, 15, 10
+ msgbox SecretBase_RedCave1_Text_1A2736, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A3485:: @ 81A3485
+ msgbox SecretBase_RedCave1_Text_1A276A, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A348E:: @ 81A348E
+ checkflag 2052
+ jumpif 0, SecretBase_RedCave1_EventScript_1A34E2
+ compare RESULT, 1
+ jumpeq SecretBase_RedCave1_EventScript_1A3501
+ lock
+ faceplayer
+ msgbox SecretBase_RedCave1_Text_1A2A13, 5
+ compare RESULT, 0
+ jumpeq SecretBase_RedCave1_EventScript_1A34EB
+ setvar RESULT, 1
+ special 25
+ call SecretBase_RedCave1_EventScript_19F806
+ compare RESULT, 0
+ jumpeq SecretBase_RedCave1_EventScript_1A34EB
+ hidebox 0, 0, 15, 10
+ msgbox SecretBase_RedCave1_Text_1A2AE2, 4
+ jump SecretBase_RedCave1_EventScript_1A350A
+ end
+
+SecretBase_RedCave1_EventScript_1A34E2:: @ 81A34E2
+ msgbox SecretBase_RedCave1_Text_1A2BA4, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A34EB:: @ 81A34EB
+ setvar RESULT, 0
+ special 25
+ hidebox 0, 0, 15, 10
+ msgbox SecretBase_RedCave1_Text_1A2AFB, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A3501:: @ 81A3501
+ msgbox SecretBase_RedCave1_Text_1A2B69, 2
+ end
+
+SecretBase_RedCave1_EventScript_1A350A:: @ 81A350A
+ special 16
+ setvar 0x8004, 1
+ setvar 0x8005, 0
+ special 236
+ waitstate
+ special 0
+ release
+ end
+
+Route111_Text_1A3520:: @ 81A3520
+ .string "What’s that?\n"
+ .string "What am I doing?\p"
+ .string "I’m thinking about making my own room\n"
+ .string "here using a POKéMON move.\p"
+ .string "I know! I’ll give you this TM.\n"
+ .string "Will you use it to make your own room?$"
+
+Route111_Text_1A35C5:: @ 81A35C5
+ .string "Find a big tree that looks like it might\n"
+ .string "drop some vines.\p"
+ .string "Use SECRET POWER in front of the tree.\n"
+ .string "Some vines should get free and drop\l"
+ .string "down, so you can climb the tree.\p"
+ .string "You’ll find a lot of space for putting\n"
+ .string "your favorite things.\p"
+ .string "It’ll be your own secret room...\n"
+ .string "A SECRET BASE!\p"
+ .string "You should make one, too.\p"
+ .string "Another thing, you don’t always have\n"
+ .string "to make your SECRET BASE in a tree.\p"
+ .string "Try using SECRET POWER on rock walls\n"
+ .string "that have small indents in them.\p"
+ .string "I’m going to look for other places, too.\n"
+ .string "Okay, bye!$"
+
+Route111_Text_1A37B5:: @ 81A37B5
+ .string "Oh, you don’t want this?\n"
+ .string "If you change your mind, tell me, okay?$"
+
+Route111_Text_1A37F6:: @ 81A37F6
+ .string "Oh, you don’t have any room for this.\p"
+ .string "I’ll hold on to it, so come back for it\n"
+ .string "another time, okay?$"
+
+Route111_EventScript_1A3858:: @ 81A3858
+ lock
+ faceplayer
+ msgbox Route111_Text_1A3520, 5
+ compare RESULT, 1
+ jumpeq Route111_EventScript_1A3877
+ msgbox Route111_Text_1A37B5, 4
+ release
+ end
+
+Route111_EventScript_1A3877:: @ 81A3877
+ giveitem ITEM_TM43
+ compare RESULT, 0
+ jumpeq Route111_EventScript_1A38D9
+ msgbox Route111_Text_1A35C5, 4
+ closebutton
+ setflag 96
+ clearflag 948
+ compare FACING, 3
+ callif 1, Route111_EventScript_1A38C3
+ compare FACING, 4
+ callif 1, Route111_EventScript_1A38C3
+ compare FACING, 2
+ callif 1, Route111_EventScript_1A38CE
+ disappear LAST_TALKED
+ release
+ end
+
+Route111_EventScript_1A38C3:: @ 81A38C3
+ move LAST_TALKED, Route111_Movement_1A38E3
+ waitmove 0
+ return
+
+Route111_EventScript_1A38CE:: @ 81A38CE
+ move LAST_TALKED, Route111_Movement_1A38EF
+ waitmove 0
+ return
+
+Route111_EventScript_1A38D9:: @ 81A38D9
+ msgbox Route111_Text_1A37F6, 4
+ release
+ end
+
+Route111_Movement_1A38E3:: @ 81A38E3
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_left
+ step_left
+ step_left
+ step_left
+ step_down
+ step_down
+ step_end
+
+Route111_Movement_1A38EF:: @ 81A38EF
+ step_left
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_left
+ step_left
+ step_left
+ step_down
+ step_down
+ step_end
+
+ .incbin "baserom.gba", 0x1a38fb, 0x408
+
+DewfordTown_PokemonCenter_2F_MapScript2_1A3D03:: @ 81A3D03
+EverGrandeCity_PokemonCenter_2F_MapScript2_1A3D03:: @ 81A3D03
+FallarborTown_PokemonCenter_2F_MapScript2_1A3D03:: @ 81A3D03
+FortreeCity_PokemonCenter_2F_MapScript2_1A3D03:: @ 81A3D03
+LavaridgeTown_PokemonCenter_2F_MapScript2_1A3D03:: @ 81A3D03
+LilycoveCity_PokemonCenter_2F_MapScript2_1A3D03:: @ 81A3D03
+MauvilleCity_PokemonCenter_2F_MapScript2_1A3D03:: @ 81A3D03
+MossdeepCity_PokemonCenter_2F_MapScript2_1A3D03:: @ 81A3D03
+OldaleTown_PokemonCenter_2F_MapScript2_1A3D03:: @ 81A3D03
+PacifidlogTown_PokemonCenter_2F_MapScript2_1A3D03:: @ 81A3D03
+PetalburgCity_PokemonCenter_2F_MapScript2_1A3D03:: @ 81A3D03
+RustboroCity_PokemonCenter_2F_MapScript2_1A3D03:: @ 81A3D03
+SlateportCity_PokemonCenter_2F_MapScript2_1A3D03:: @ 81A3D03
+SootopolisCity_PokemonCenter_2F_MapScript2_1A3D03:: @ 81A3D03
+VerdanturfTown_PokemonCenter_2F_MapScript2_1A3D03:: @ 81A3D03
+ map_script_2 0x4087, 1, OldaleTown_PokemonCenter_2F_EventScript_1A3D2D
+ map_script_2 0x4087, 2, OldaleTown_PokemonCenter_2F_EventScript_1A3D2D
+ map_script_2 0x4087, 5, OldaleTown_PokemonCenter_2F_EventScript_1A3D2D
+ map_script_2 0x4087, 3, OldaleTown_PokemonCenter_2F_EventScript_1A3D2D
+ map_script_2 0x4087, 4, OldaleTown_PokemonCenter_2F_EventScript_1A3D2D
+ .2byte 0
+
+OldaleTown_PokemonCenter_2F_EventScript_1A3D2D:: @ 81A3D2D
+ spriteface 0x8007, 4
+ end
+
+DewfordTown_PokemonCenter_2F_MapScript1_1A3D32:: @ 81A3D32
+EverGrandeCity_PokemonCenter_2F_MapScript1_1A3D32:: @ 81A3D32
+FallarborTown_PokemonCenter_2F_MapScript1_1A3D32:: @ 81A3D32
+FortreeCity_PokemonCenter_2F_MapScript1_1A3D32:: @ 81A3D32
+LavaridgeTown_PokemonCenter_2F_MapScript1_1A3D32:: @ 81A3D32
+LilycoveCity_PokemonCenter_2F_MapScript1_1A3D32:: @ 81A3D32
+MauvilleCity_PokemonCenter_2F_MapScript1_1A3D32:: @ 81A3D32
+MossdeepCity_PokemonCenter_2F_MapScript1_1A3D32:: @ 81A3D32
+OldaleTown_PokemonCenter_2F_MapScript1_1A3D32:: @ 81A3D32
+PacifidlogTown_PokemonCenter_2F_MapScript1_1A3D32:: @ 81A3D32
+PetalburgCity_PokemonCenter_2F_MapScript1_1A3D32:: @ 81A3D32
+RustboroCity_PokemonCenter_2F_MapScript1_1A3D32:: @ 81A3D32
+SlateportCity_PokemonCenter_2F_MapScript1_1A3D32:: @ 81A3D32
+SootopolisCity_PokemonCenter_2F_MapScript1_1A3D32:: @ 81A3D32
+VerdanturfTown_PokemonCenter_2F_MapScript1_1A3D32:: @ 81A3D32
+ compare 0x4087, 1
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A3D6A
+ compare 0x4087, 2
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A3D6A
+ compare 0x4087, 5
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A3D6A
+ compare 0x4087, 3
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A3D74
+ compare 0x4087, 4
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A3D7E
+ end
+
+OldaleTown_PokemonCenter_2F_EventScript_1A3D6A:: @ 81A3D6A
+ setmaptile 5, 3, 514, 0
+ end
+
+OldaleTown_PokemonCenter_2F_EventScript_1A3D74:: @ 81A3D74
+ setmaptile 8, 3, 514, 0
+ end
+
+OldaleTown_PokemonCenter_2F_EventScript_1A3D7E:: @ 81A3D7E
+ setmaptile 11, 3, 514, 0
+ end
+
+DewfordTown_PokemonCenter_2F_MapScript2_1A3D88:: @ 81A3D88
+EverGrandeCity_PokemonCenter_2F_MapScript2_1A3D88:: @ 81A3D88
+FallarborTown_PokemonCenter_2F_MapScript2_1A3D88:: @ 81A3D88
+FortreeCity_PokemonCenter_2F_MapScript2_1A3D88:: @ 81A3D88
+LavaridgeTown_PokemonCenter_2F_MapScript2_1A3D88:: @ 81A3D88
+LilycoveCity_PokemonCenter_2F_MapScript2_1A3D88:: @ 81A3D88
+MauvilleCity_PokemonCenter_2F_MapScript2_1A3D88:: @ 81A3D88
+MossdeepCity_PokemonCenter_2F_MapScript2_1A3D88:: @ 81A3D88
+OldaleTown_PokemonCenter_2F_MapScript2_1A3D88:: @ 81A3D88
+PacifidlogTown_PokemonCenter_2F_MapScript2_1A3D88:: @ 81A3D88
+PetalburgCity_PokemonCenter_2F_MapScript2_1A3D88:: @ 81A3D88
+RustboroCity_PokemonCenter_2F_MapScript2_1A3D88:: @ 81A3D88
+SlateportCity_PokemonCenter_2F_MapScript2_1A3D88:: @ 81A3D88
+SootopolisCity_PokemonCenter_2F_MapScript2_1A3D88:: @ 81A3D88
+VerdanturfTown_PokemonCenter_2F_MapScript2_1A3D88:: @ 81A3D88
+ map_script_2 0x4087, 1, OldaleTown_PokemonCenter_2F_EventScript_1A3E8D
+ map_script_2 0x4087, 2, OldaleTown_PokemonCenter_2F_EventScript_1A3E8D
+ map_script_2 0x4087, 5, OldaleTown_PokemonCenter_2F_EventScript_1A3E8D
+ map_script_2 0x4087, 3, OldaleTown_PokemonCenter_2F_EventScript_1A3E17
+ map_script_2 0x4087, 4, OldaleTown_PokemonCenter_2F_EventScript_1A3E7B
+ .2byte 0
+
+OldaleTown_PokemonCenter_2F_EventScript_1A3DB2:: @ 81A3DB2
+ special 31
+ setvar 0x4087, 0
+ move 255, OldaleTown_PokemonCenter_2F_Movement_1A4358
+ waitmove 0
+ compare 0x8007, 0
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A3DD9
+ move 0x8007, OldaleTown_PokemonCenter_2F_Movement_1A4354
+ waitmove 0
+
+OldaleTown_PokemonCenter_2F_EventScript_1A3DD9:: @ 81A3DD9
+ return
+
+OldaleTown_PokemonCenter_2F_EventScript_1A3DDA:: @ 81A3DDA
+ special 31
+ setvar 0x4087, 0
+ compare 0x8007, 0
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A3E0C
+ move 0x8007, OldaleTown_PokemonCenter_2F_Movement_1A4356
+ waitmove 0
+ move 255, OldaleTown_PokemonCenter_2F_Movement_1A4358
+ waitmove 0
+ move 0x8007, OldaleTown_PokemonCenter_2F_Movement_1A4354
+ waitmove 0
+ return
+
+OldaleTown_PokemonCenter_2F_EventScript_1A3E0C:: @ 81A3E0C
+ move 255, OldaleTown_PokemonCenter_2F_Movement_1A4358
+ waitmove 0
+ return
+
+OldaleTown_PokemonCenter_2F_EventScript_1A3E17:: @ 81A3E17
+ lockall
+ call OldaleTown_PokemonCenter_2F_EventScript_1A3E30
+ setmaptile 8, 3, 605, 1
+ special 142
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+OldaleTown_PokemonCenter_2F_EventScript_1A3E30:: @ 81A3E30
+ special 31
+ setvar 0x4087, 0
+ compare 0x8007, 0
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A3E0C
+ move 255, OldaleTown_PokemonCenter_2F_Movement_1A4361
+ waitmove 0
+ move 0x8007, OldaleTown_PokemonCenter_2F_Movement_1A4356
+ waitmove 0
+ message OldaleTown_PokemonCenter_2F_Text_1A4E50
+ waittext
+ playsfx 21
+ message OldaleTown_PokemonCenter_2F_Text_1A4E79
+ waittext
+ move 255, OldaleTown_PokemonCenter_2F_Movement_1A4358
+ waitmove 0
+ move 0x8007, OldaleTown_PokemonCenter_2F_Movement_1A4354
+ waitmove 0
+ return
+
+OldaleTown_PokemonCenter_2F_EventScript_1A3E7B:: @ 81A3E7B
+ call OldaleTown_PokemonCenter_2F_EventScript_1A3DB2
+ setmaptile 11, 3, 605, 1
+ special 142
+ end
+
+OldaleTown_PokemonCenter_2F_EventScript_1A3E8D:: @ 81A3E8D
+ lockall
+ call OldaleTown_PokemonCenter_2F_EventScript_1A3DDA
+ setmaptile 5, 3, 605, 1
+ special 142
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+DewfordTown_PokemonCenter_2F_EventScript_1A3EA6:: @ 81A3EA6
+EverGrandeCity_PokemonCenter_2F_EventScript_1A3EA6:: @ 81A3EA6
+FallarborTown_PokemonCenter_2F_EventScript_1A3EA6:: @ 81A3EA6
+FortreeCity_PokemonCenter_2F_EventScript_1A3EA6:: @ 81A3EA6
+LavaridgeTown_PokemonCenter_2F_EventScript_1A3EA6:: @ 81A3EA6
+LilycoveCity_PokemonCenter_2F_EventScript_1A3EA6:: @ 81A3EA6
+MauvilleCity_PokemonCenter_2F_EventScript_1A3EA6:: @ 81A3EA6
+MossdeepCity_PokemonCenter_2F_EventScript_1A3EA6:: @ 81A3EA6
+OldaleTown_PokemonCenter_2F_EventScript_1A3EA6:: @ 81A3EA6
+PetalburgCity_PokemonCenter_2F_EventScript_1A3EA6:: @ 81A3EA6
+RustboroCity_PokemonCenter_2F_EventScript_1A3EA6:: @ 81A3EA6
+SlateportCity_PokemonCenter_2F_EventScript_1A3EA6:: @ 81A3EA6
+SootopolisCity_PokemonCenter_2F_EventScript_1A3EA6:: @ 81A3EA6
+VerdanturfTown_PokemonCenter_2F_EventScript_1A3EA6:: @ 81A3EA6
+ checkflag 2049
+ jumpif 0, OldaleTown_PokemonCenter_2F_EventScript_1A4342
+ copyvar 0x8007, LAST_TALKED
+ lock
+ faceplayer
+ message OldaleTown_PokemonCenter_2F_Text_1A4510
+ waittext
+
+OldaleTown_PokemonCenter_2F_EventScript_1A3EBC:: @ 81A3EBC
+ multichoice 17, 6, 17, 0
+ switch RESULT
+ case 0, OldaleTown_PokemonCenter_2F_EventScript_1A3EF2
+ case 1, OldaleTown_PokemonCenter_2F_EventScript_1A4319
+ case 2, OldaleTown_PokemonCenter_2F_EventScript_1A3FDD
+ case 127, OldaleTown_PokemonCenter_2F_EventScript_1A4319
+
+OldaleTown_PokemonCenter_2F_EventScript_1A3EF2:: @ 81A3EF2
+ call OldaleTown_PokemonCenter_2F_EventScript_19F806
+ compare RESULT, 0
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A4319
+ call OldaleTown_PokemonCenter_2F_EventScript_1A3FEF
+ compare 0x8004, 0
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A4319
+ message OldaleTown_PokemonCenter_2F_Text_1A490C
+ waittext
+ special 28
+ waitstate
+ compare RESULT, 1
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A3F5E
+ compare RESULT, 2
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A4301
+ compare RESULT, 3
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A430D
+ compare RESULT, 4
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A4068
+ compare RESULT, 5
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A4319
+ compare RESULT, 6
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A42F5
+
+OldaleTown_PokemonCenter_2F_EventScript_1A3F5E:: @ 81A3F5E
+ special 0
+ special 39
+ special 331
+ copyvar 0x4087, 0x8004
+ message2 OldaleTown_PokemonCenter_2F_Text_1A4A22
+ waittext
+ setmaptile 5, 3, 514, 0
+ special 142
+ pause 60
+ move LAST_TALKED, OldaleTown_PokemonCenter_2F_Movement_1A4356
+ waitmove 0
+ closebutton
+ move 255, OldaleTown_PokemonCenter_2F_Movement_1A435B
+ waitmove 0
+ setdooropened 5, 1
+ doorchange
+ move 255, OldaleTown_PokemonCenter_2F_Movement_1A435F
+ waitmove 0
+ spriteinvisible 255, 0, 0
+ setdoorclosed 5, 1
+ doorchange
+ release
+ compare 0x8004, 5
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A3FCD
+ special 1
+ warp SingleBattleColosseum, 255, 6, 8
+ special 2
+ waitstate
+ end
+
+OldaleTown_PokemonCenter_2F_EventScript_1A3FCD:: @ 81A3FCD
+ special 1
+ warp DoubleBattleColosseum, 255, 5, 8
+ special 2
+ waitstate
+ end
+
+OldaleTown_PokemonCenter_2F_EventScript_1A3FDD:: @ 81A3FDD
+ message OldaleTown_PokemonCenter_2F_Text_1A4696
+ waittext
+ waitbutton
+ message OldaleTown_PokemonCenter_2F_Text_1A4826
+ waittext
+ jump OldaleTown_PokemonCenter_2F_EventScript_1A3EBC
+
+OldaleTown_PokemonCenter_2F_EventScript_1A3FEF:: @ 81A3FEF
+ message OldaleTown_PokemonCenter_2F_Text_1A4840
+ waittext
+ multichoice 0, 0, 18, 0
+ switch RESULT
+ case 0, OldaleTown_PokemonCenter_2F_EventScript_1A4062
+ case 1, OldaleTown_PokemonCenter_2F_EventScript_1A4042
+ case 2, OldaleTown_PokemonCenter_2F_EventScript_1A403C
+ case 3, OldaleTown_PokemonCenter_2F_EventScript_1A4036
+ case 127, OldaleTown_PokemonCenter_2F_EventScript_1A4036
+
+OldaleTown_PokemonCenter_2F_EventScript_1A4036:: @ 81A4036
+ setvar 0x8004, 0
+ return
+
+OldaleTown_PokemonCenter_2F_EventScript_1A403C:: @ 81A403C
+ setvar 0x8004, 5
+ return
+
+OldaleTown_PokemonCenter_2F_EventScript_1A4042:: @ 81A4042
+ special 61
+ compare RESULT, 0
+ jumpif 5, OldaleTown_PokemonCenter_2F_EventScript_1A4056
+ setvar 0x8004, 2
+ return
+
+OldaleTown_PokemonCenter_2F_EventScript_1A4056:: @ 81A4056
+ message OldaleTown_PokemonCenter_2F_Text_1A486A
+ waittext
+ waitbutton
+ jump OldaleTown_PokemonCenter_2F_EventScript_1A3FEF
+
+OldaleTown_PokemonCenter_2F_EventScript_1A4062:: @ 81A4062
+ setvar 0x8004, 1
+ return
+
+OldaleTown_PokemonCenter_2F_EventScript_1A4068:: @ 81A4068
+ switch 0x8004
+ case 1, OldaleTown_PokemonCenter_2F_EventScript_1A40B1
+ case 2, OldaleTown_PokemonCenter_2F_EventScript_1A40A2
+ case 5, OldaleTown_PokemonCenter_2F_EventScript_1A4093
+ jump OldaleTown_PokemonCenter_2F_EventScript_1A432D
+
+OldaleTown_PokemonCenter_2F_EventScript_1A4093:: @ 81A4093
+ special 31
+ message OldaleTown_PokemonCenter_2F_Text_1A4C03
+ waittext
+ waitbutton
+ jump OldaleTown_PokemonCenter_2F_EventScript_1A40C0
+
+OldaleTown_PokemonCenter_2F_EventScript_1A40A2:: @ 81A40A2
+ special 31
+ message OldaleTown_PokemonCenter_2F_Text_1A4BCC
+ waittext
+ waitbutton
+ jump OldaleTown_PokemonCenter_2F_EventScript_1A40C0
+
+OldaleTown_PokemonCenter_2F_EventScript_1A40B1:: @ 81A40B1
+ special 31
+ message OldaleTown_PokemonCenter_2F_Text_1A4B95
+ waittext
+ waitbutton
+ jump OldaleTown_PokemonCenter_2F_EventScript_1A40C0
+
+OldaleTown_PokemonCenter_2F_EventScript_1A40C0:: @ 81A40C0
+ special 31
+ message OldaleTown_PokemonCenter_2F_Text_1A4C38
+ waittext
+ waitbutton
+ release
+ end
+
+DewfordTown_PokemonCenter_2F_EventScript_1A40CC:: @ 81A40CC
+EverGrandeCity_PokemonCenter_2F_EventScript_1A40CC:: @ 81A40CC
+FallarborTown_PokemonCenter_2F_EventScript_1A40CC:: @ 81A40CC
+FortreeCity_PokemonCenter_2F_EventScript_1A40CC:: @ 81A40CC
+LavaridgeTown_PokemonCenter_2F_EventScript_1A40CC:: @ 81A40CC
+LilycoveCity_PokemonCenter_2F_EventScript_1A40CC:: @ 81A40CC
+MauvilleCity_PokemonCenter_2F_EventScript_1A40CC:: @ 81A40CC
+MossdeepCity_PokemonCenter_2F_EventScript_1A40CC:: @ 81A40CC
+OldaleTown_PokemonCenter_2F_EventScript_1A40CC:: @ 81A40CC
+PetalburgCity_PokemonCenter_2F_EventScript_1A40CC:: @ 81A40CC
+RustboroCity_PokemonCenter_2F_EventScript_1A40CC:: @ 81A40CC
+SlateportCity_PokemonCenter_2F_EventScript_1A40CC:: @ 81A40CC
+SootopolisCity_PokemonCenter_2F_EventScript_1A40CC:: @ 81A40CC
+VerdanturfTown_PokemonCenter_2F_EventScript_1A40CC:: @ 81A40CC
+ checkflag 2049
+ jumpif 0, OldaleTown_PokemonCenter_2F_EventScript_1A4339
+ copyvar 0x8007, LAST_TALKED
+ lock
+ faceplayer
+ msgbox OldaleTown_PokemonCenter_2F_Text_1A457E, 5
+ compare RESULT, 0
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A4319
+ compare RESULT, 1
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A40FA
+
+OldaleTown_PokemonCenter_2F_EventScript_1A40FA:: @ 81A40FA
+ call OldaleTown_PokemonCenter_2F_EventScript_1A41BB
+ compare RESULT, 0
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A4319
+ call OldaleTown_PokemonCenter_2F_EventScript_19F806
+ compare RESULT, 0
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A4319
+ message OldaleTown_PokemonCenter_2F_Text_1A490C
+ waittext
+ special 29
+ waitstate
+ compare RESULT, 1
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A4166
+ compare RESULT, 2
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A4301
+ compare RESULT, 3
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A430D
+ compare RESULT, 4
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A432D
+ compare RESULT, 5
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A4319
+ compare RESULT, 6
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A42F5
+
+OldaleTown_PokemonCenter_2F_EventScript_1A4166:: @ 81A4166
+ setvar 0x8004, 3
+ copyvar 0x4087, 0x8004
+ message2 OldaleTown_PokemonCenter_2F_Text_1A4A22
+ waittext
+ setmaptile 8, 3, 514, 0
+ special 142
+ pause 60
+ move LAST_TALKED, OldaleTown_PokemonCenter_2F_Movement_1A4356
+ waitmove 0
+ closebutton
+ move 255, OldaleTown_PokemonCenter_2F_Movement_1A435B
+ waitmove 0
+ setdooropened 8, 1
+ doorchange
+ move 255, OldaleTown_PokemonCenter_2F_Movement_1A435F
+ waitmove 0
+ spriteinvisible 255, 0, 0
+ setdoorclosed 8, 1
+ doorchange
+ release
+ jump OldaleTown_PokemonCenter_2F_EventScript_1A4325
+
+OldaleTown_PokemonCenter_2F_EventScript_1A41BB:: @ 81A41BB
+ specialval RESULT, 131
+ compare RESULT, 2
+ jumpif 0, OldaleTown_PokemonCenter_2F_EventScript_1A41E1
+ specialval RESULT, 339
+ compare RESULT, 1
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A41EE
+ setvar RESULT, 1
+ return
+
+OldaleTown_PokemonCenter_2F_EventScript_1A41E1:: @ 81A41E1
+ message OldaleTown_PokemonCenter_2F_Text_1A48A3
+ waittext
+ waitbutton
+ setvar RESULT, 0
+ return
+
+OldaleTown_PokemonCenter_2F_EventScript_1A41EE:: @ 81A41EE
+ message OldaleTown_PokemonCenter_2F_Text_1A48DD
+ waittext
+ waitbutton
+ setvar RESULT, 0
+ return
+
+DewfordTown_PokemonCenter_2F_EventScript_1A41FB:: @ 81A41FB
+EverGrandeCity_PokemonCenter_2F_EventScript_1A41FB:: @ 81A41FB
+FallarborTown_PokemonCenter_2F_EventScript_1A41FB:: @ 81A41FB
+FortreeCity_PokemonCenter_2F_EventScript_1A41FB:: @ 81A41FB
+LavaridgeTown_PokemonCenter_2F_EventScript_1A41FB:: @ 81A41FB
+LilycoveCity_PokemonCenter_2F_EventScript_1A41FB:: @ 81A41FB
+MauvilleCity_PokemonCenter_2F_EventScript_1A41FB:: @ 81A41FB
+MossdeepCity_PokemonCenter_2F_EventScript_1A41FB:: @ 81A41FB
+OldaleTown_PokemonCenter_2F_EventScript_1A41FB:: @ 81A41FB
+PacifidlogTown_PokemonCenter_2F_EventScript_1A41FB:: @ 81A41FB
+PetalburgCity_PokemonCenter_2F_EventScript_1A41FB:: @ 81A41FB
+RustboroCity_PokemonCenter_2F_EventScript_1A41FB:: @ 81A41FB
+SlateportCity_PokemonCenter_2F_EventScript_1A41FB:: @ 81A41FB
+SootopolisCity_PokemonCenter_2F_EventScript_1A41FB:: @ 81A41FB
+VerdanturfTown_PokemonCenter_2F_EventScript_1A41FB:: @ 81A41FB
+ checkflag 2072
+ jumpif 0, OldaleTown_PokemonCenter_2F_EventScript_1A434B
+ copyvar 0x8007, LAST_TALKED
+ lock
+ faceplayer
+ msgbox OldaleTown_PokemonCenter_2F_Text_1A45FE, 5
+ compare RESULT, 0
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A4319
+ compare RESULT, 1
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A4229
+
+OldaleTown_PokemonCenter_2F_EventScript_1A4229:: @ 81A4229
+ call OldaleTown_PokemonCenter_2F_EventScript_19F806
+ compare RESULT, 0
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A4319
+ message OldaleTown_PokemonCenter_2F_Text_1A490C
+ waittext
+ special 30
+ waitstate
+ special 341
+ waitstate
+ compare RESULT, 1
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A4294
+ compare RESULT, 2
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A4301
+ compare RESULT, 3
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A430D
+ compare RESULT, 4
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A432D
+ compare RESULT, 5
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A4319
+ compare RESULT, 6
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A42F5
+ compare RESULT, 7
+ jumpeq OldaleTown_PokemonCenter_2F_EventScript_1A42E9
+
+OldaleTown_PokemonCenter_2F_EventScript_1A4294:: @ 81A4294
+ setvar 0x8004, 4
+ copyvar 0x4087, 0x8004
+ message2 OldaleTown_PokemonCenter_2F_Text_1A4A22
+ waittext
+ setmaptile 11, 3, 514, 0
+ special 142
+ pause 60
+ move LAST_TALKED, OldaleTown_PokemonCenter_2F_Movement_1A4356
+ waitmove 0
+ closebutton
+ move 255, OldaleTown_PokemonCenter_2F_Movement_1A435B
+ waitmove 0
+ setdooropened 11, 1
+ doorchange
+ move 255, OldaleTown_PokemonCenter_2F_Movement_1A435F
+ waitmove 0
+ spriteinvisible 255, 0, 0
+ setdoorclosed 11, 1
+ doorchange
+ release
+ jump OldaleTown_PokemonCenter_2F_EventScript_1A4325
+
+OldaleTown_PokemonCenter_2F_EventScript_1A42E9:: @ 81A42E9
+ special 31
+ message OldaleTown_PokemonCenter_2F_Text_1A4AC8
+ waittext
+ waitbutton
+ release
+ end
+
+OldaleTown_PokemonCenter_2F_EventScript_1A42F5:: @ 81A42F5
+ special 31
+ message OldaleTown_PokemonCenter_2F_Text_1A4A85
+ waittext
+ waitbutton
+ release
+ end
+
+OldaleTown_PokemonCenter_2F_EventScript_1A4301:: @ 81A4301
+ special 31
+ message OldaleTown_PokemonCenter_2F_Text_1A4A30
+ waittext
+ waitbutton
+ release
+ end
+
+OldaleTown_PokemonCenter_2F_EventScript_1A430D:: @ 81A430D
+ special 31
+ message OldaleTown_PokemonCenter_2F_Text_1A4B1D
+ waittext
+ waitbutton
+ release
+ end
+
+OldaleTown_PokemonCenter_2F_EventScript_1A4319:: @ 81A4319
+ special 31
+ message OldaleTown_PokemonCenter_2F_Text_1A4B59
+ waittext
+ waitbutton
+ release
+ end
+
+OldaleTown_PokemonCenter_2F_EventScript_1A4325:: @ 81A4325
+ special 1
+ special 2
+ waitstate
+ end
+
+OldaleTown_PokemonCenter_2F_EventScript_1A432D:: @ 81A432D
+ special 31
+ message OldaleTown_PokemonCenter_2F_Text_1A4B6C
+ waittext
+ waitbutton
+ release
+ end
+
+OldaleTown_PokemonCenter_2F_EventScript_1A4339:: @ 81A4339
+ msgbox OldaleTown_PokemonCenter_2F_Text_1A141C, 2
+ end
+
+OldaleTown_PokemonCenter_2F_EventScript_1A4342:: @ 81A4342
+ msgbox OldaleTown_PokemonCenter_2F_Text_1A13DF, 2
+ end
+
+OldaleTown_PokemonCenter_2F_EventScript_1A434B:: @ 81A434B
+ msgbox OldaleTown_PokemonCenter_2F_Text_1A145C, 2
+ end
+
+OldaleTown_PokemonCenter_2F_Movement_1A4354:: @ 81A4354
+ step_00
+ step_end
+
+OldaleTown_PokemonCenter_2F_Movement_1A4356:: @ 81A4356
+ step_03
+ step_end
+
+OldaleTown_PokemonCenter_2F_Movement_1A4358:: @ 81A4358
+ step_down
+ step_down
+ step_end
+
+OldaleTown_PokemonCenter_2F_Movement_1A435B:: @ 81A435B
+ step_right
+ step_up
+ step_up
+ step_end
+
+OldaleTown_PokemonCenter_2F_Movement_1A435F:: @ 81A435F
+ step_up
+ step_end
+
+OldaleTown_PokemonCenter_2F_Movement_1A4361:: @ 81A4361
+ step_02
+ step_end
.global gUnknown_081A4363
gUnknown_081A4363: @ 81A4363
@@ -262,51 +6046,152 @@ gUnknown_081A4363: @ 81A4363
.global gUnknown_081A436F
gUnknown_081A436F: @ 81A436F
- .incbin "baserom.gba", 0x001a436f, 0xa
+
+SingleBattleColosseum_EventScript_1A436F:: @ 81A436F
+ setvar 0x8005, 0
+ special 32
+ waitstate
+ end
.global gUnknown_081A4379
gUnknown_081A4379: @ 81A4379
- .incbin "baserom.gba", 0x001a4379, 0xa
+
+SingleBattleColosseum_EventScript_1A4379:: @ 81A4379
+ setvar 0x8005, 1
+ special 32
+ waitstate
+ end
.global gUnknown_081A4383
gUnknown_081A4383: @ 81A4383
- .incbin "baserom.gba", 0x001a4383, 0x1b
+
+DoubleBattleColosseum_EventScript_1A4383:: @ 81A4383
+ fadescreen 1
+ special 41
+ waitstate
+ compare RESULT, 0
+ jumpeq DoubleBattleColosseum_EventScript_1A43EF
+ setvar 0x8005, 0
+ special 32
+ waitstate
+ end
.global gUnknown_081A439E
gUnknown_081A439E: @ 81A439E
- .incbin "baserom.gba", 0x001a439e, 0x1b
+
+DoubleBattleColosseum_EventScript_1A439E:: @ 81A439E
+ fadescreen 1
+ special 41
+ waitstate
+ compare RESULT, 0
+ jumpeq DoubleBattleColosseum_EventScript_1A43EF
+ setvar 0x8005, 1
+ special 32
+ waitstate
+ end
.global gUnknown_081A43B9
gUnknown_081A43B9: @ 81A43B9
- .incbin "baserom.gba", 0x001a43b9, 0x1b
+
+DoubleBattleColosseum_EventScript_1A43B9:: @ 81A43B9
+ fadescreen 1
+ special 41
+ waitstate
+ compare RESULT, 0
+ jumpeq DoubleBattleColosseum_EventScript_1A43EF
+ setvar 0x8005, 2
+ special 32
+ waitstate
+ end
.global gUnknown_081A43D4
gUnknown_081A43D4: @ 81A43D4
- .incbin "baserom.gba", 0x001a43d4, 0x1c
+
+DoubleBattleColosseum_EventScript_1A43D4:: @ 81A43D4
+ fadescreen 1
+ special 41
+ waitstate
+ compare RESULT, 0
+ jumpeq DoubleBattleColosseum_EventScript_1A43EF
+ setvar 0x8005, 3
+ special 32
+ waitstate
+ end
+
+DoubleBattleColosseum_EventScript_1A43EF:: @ 81A43EF
+ end
.global gUnknown_081A43F0
gUnknown_081A43F0: @ 81A43F0
- .incbin "baserom.gba", 0x001a43f0, 0xa
+
+TradeCenter_EventScript_1A43F0:: @ 81A43F0
+ setvar 0x8005, 0
+ special 33
+ waitstate
+ end
.global gUnknown_081A43FA
gUnknown_081A43FA: @ 81A43FA
- .incbin "baserom.gba", 0x001a43fa, 0x1e
+
+TradeCenter_EventScript_1A43FA:: @ 81A43FA
+ setvar 0x8005, 1
+ special 33
+ waitstate
+ end
+
+ .incbin "baserom.gba", 0x1a4404, 0x14
.global gUnknown_081A4418
gUnknown_081A4418: @ 81A4418
- .incbin "baserom.gba", 0x001a4418, 0x15
+
+RecordCorner_EventScript_1A4418:: @ 81A4418
+ setvar 0x8005, 0
+ special 27
+ waitstate
+ compare 0x4001, 0
+ jumpif 5, RecordCorner_EventScript_1A446C
+ end
.global gUnknown_081A442D
gUnknown_081A442D: @ 81A442D
- .incbin "baserom.gba", 0x001a442d, 0x15
+
+RecordCorner_EventScript_1A442D:: @ 81A442D
+ setvar 0x8005, 1
+ special 27
+ waitstate
+ compare 0x4001, 0
+ jumpif 5, RecordCorner_EventScript_1A446C
+ end
.global gUnknown_081A4442
gUnknown_081A4442: @ 81A4442
- .incbin "baserom.gba", 0x001a4442, 0x15
+
+RecordCorner_EventScript_1A4442:: @ 81A4442
+ setvar 0x8005, 2
+ special 27
+ waitstate
+ compare 0x4001, 0
+ jumpif 5, RecordCorner_EventScript_1A446C
+ end
.global gUnknown_081A4457
gUnknown_081A4457: @ 81A4457
- .incbin "baserom.gba", 0x001a4457, 0x22
+
+RecordCorner_EventScript_1A4457:: @ 81A4457
+ setvar 0x8005, 3
+ special 27
+ waitstate
+ compare 0x4001, 0
+ jumpif 5, RecordCorner_EventScript_1A446C
+ end
+
+RecordCorner_EventScript_1A446C:: @ 81A446C
+ bufferitem 1, 0x4001
+ message RecordCorner_Text_1A4E3B
+ waittext
+ waitbutton
+ releaseall
+ end
.global gUnknown_081A4479
gUnknown_081A4479: @ 81A4479
@@ -318,7 +6203,46 @@ gUnknown_081A4487: @ 81A4487
.global gUnknown_081A4495
gUnknown_081A4495: @ 81A4495
- .incbin "baserom.gba", 0x001a4495, 0x50
+
+ .incbin "baserom.gba", 0x1a4495, 0x9
+
+SingleBattleColosseum_EventScript_1A449E:: @ 81A449E
+ special 295
+ message SingleBattleColosseum_Text_1A4D7E
+ waittext
+ waitbutton
+ special 296
+ closebutton
+ end
+
+TradeCenter_EventScript_1A44AD:: @ 81A44AD
+ special 295
+ message TradeCenter_Text_1A4DAB
+ waittext
+ waitbutton
+ special 296
+ closebutton
+ end
+
+RecordCorner_EventScript_1A44BC:: @ 81A44BC
+ compare 0x4000, 0
+ jumpif 5, RecordCorner_EventScript_1A44D6
+ special 295
+ message RecordCorner_Text_1A4DD7
+ waittext
+ waitbutton
+ special 296
+ closebutton
+ end
+
+RecordCorner_EventScript_1A44D6:: @ 81A44D6
+ special 295
+ message RecordCorner_Text_1A4DF7
+ waittext
+ waitbutton
+ special 296
+ closebutton
+ end
.global gUnknown_081A44E5
gUnknown_081A44E5: @ 81A44E5
@@ -330,11 +6254,69 @@ gUnknown_081A44FE: @ 81A44FE
.global gUnknown_081A4508
gUnknown_081A4508: @ 81A4508
- .incbin "baserom.gba", 0x001a4508, 0x404
+
+ .incbin "baserom.gba", 0x1a4508, 0x8
+
+OldaleTown_PokemonCenter_2F_Text_1A4510:: @ 81A4510
+ .string "Welcome to the POKéMON CABLE CLUB\n"
+ .string "COLOSSEUM.\p"
+ .string "You may battle with your friends here.\p"
+ .string "Would you like to battle?$"
+
+OldaleTown_PokemonCenter_2F_Text_1A457E:: @ 81A457E
+ .string "Welcome to the POKéMON CABLE CLUB\n"
+ .string "TRADE CENTER.\p"
+ .string "You may trade your POKéMON here\n"
+ .string "with a friend.\p"
+ .string "Would you like to trade POKéMON?$"
+
+OldaleTown_PokemonCenter_2F_Text_1A45FE:: @ 81A45FE
+ .string "Welcome to the POKéMON CABLE CLUB\n"
+ .string "RECORD CENTER.\p"
+ .string "You may mix your records as a TRAINER\n"
+ .string "with the records of your friends.\p"
+ .string "Would you like to mix records?$"
+
+OldaleTown_PokemonCenter_2F_Text_1A4696:: @ 81A4696
+ .string "There are three link battle modes.\p"
+ .string "SINGLE BATTLE is for two TRAINERS\n"
+ .string "with one or more POKéMON each.\p"
+ .string "Each TRAINER can have one POKéMON\n"
+ .string "in battle at a time.\p"
+ .string "DOUBLE BATTLE is for two TRAINERS\n"
+ .string "with two or more POKéMON each.\p"
+ .string "Each TRAINER will send out two\n"
+ .string "POKéMON in battle at a time.\p"
+ .string "MULTI BATTLE is for four TRAINERS\n"
+ .string "with one or more POKéMON each.\p"
+ .string "Each TRAINER can have one POKéMON\n"
+ .string "in battle at a time.$"
+
+OldaleTown_PokemonCenter_2F_Text_1A4826:: @ 81A4826
+ .string "Would you like to battle?$"
+
+OldaleTown_PokemonCenter_2F_Text_1A4840:: @ 81A4840
+ .string "Which Battle Mode would you like\n"
+ .string "to play?$"
+
+OldaleTown_PokemonCenter_2F_Text_1A486A:: @ 81A486A
+ .string "For a DOUBLE BATTLE, you must have\n"
+ .string "at least two POKéMON.$"
+
+OldaleTown_PokemonCenter_2F_Text_1A48A3:: @ 81A48A3
+ .string "For trading, you must have at least\n"
+ .string "two POKéMON with you.$"
+
+OldaleTown_PokemonCenter_2F_Text_1A48DD:: @ 81A48DD
+ .string "Your {STR_VAR_1} BERRY-holding POKéMON\n"
+ .string "can’t be traded.$"
.global gUnknown_081A490C
gUnknown_081A490C: @ 81A490C
- .incbin "baserom.gba", 0x001a490c, 0x26
+
+OldaleTown_PokemonCenter_2F_Text_1A490C:: @ 81A490C
+ .string "Please wait.\n"
+ .string "... ... B Button: Cancel$"
.global gUnknown_081A4932
gUnknown_081A4932: @ 81A4932
@@ -346,24 +6328,3358 @@ gUnknown_081A4975: @ 81A4975
.global gUnknown_081A49B6
gUnknown_081A49B6: @ 81A49B6
- .incbin "baserom.gba", 0x001a49b6, 0x24bc
+ .incbin "baserom.gba", 0x1a49b6, 0x6c
+
+OldaleTown_PokemonCenter_2F_Text_1A4A22:: @ 81A4A22
+ .string "Please enter.$"
+
+FallarborTown_ContestLobby_Text_1A4A30:: @ 81A4A30
+OldaleTown_PokemonCenter_2F_Text_1A4A30:: @ 81A4A30
+ .string "Someone is not ready to link.\p"
+ .string "Please come back after everyone has\n"
+ .string "made preparations.$"
+
+FallarborTown_ContestLobby_Text_1A4A85:: @ 81A4A85
+OldaleTown_PokemonCenter_2F_Text_1A4A85:: @ 81A4A85
+ .string "Sorry, we have a transmission error...\n"
+ .string "Please reset and try again.$"
+
+OldaleTown_PokemonCenter_2F_Text_1A4AC8:: @ 81A4AC8
+ .string "Sorry, we have a transmission error.\n"
+ .string "You may not mix records in different\l"
+ .string "languages.$"
+
+FallarborTown_ContestLobby_Text_1A4B1D:: @ 81A4B1D
+OldaleTown_PokemonCenter_2F_Text_1A4B1D:: @ 81A4B1D
+ .string "The link partners appear to have made\n"
+ .string "different selections.$"
+
+OldaleTown_PokemonCenter_2F_Text_1A4B59:: @ 81A4B59
+ .string "Please come again.$"
+
+OldaleTown_PokemonCenter_2F_Text_1A4B6C:: @ 81A4B6C
+ .string "The number of participants is\n"
+ .string "incorrect.$"
+
+OldaleTown_PokemonCenter_2F_Text_1A4B95:: @ 81A4B95
+ .string "The SINGLE Battle Mode cannot be\n"
+ .string "played by {STR_VAR_1} players.$"
+
+OldaleTown_PokemonCenter_2F_Text_1A4BCC:: @ 81A4BCC
+ .string "The DOUBLE Battle Mode cannot be\n"
+ .string "played by {STR_VAR_1} players.$"
+
+OldaleTown_PokemonCenter_2F_Text_1A4C03:: @ 81A4C03
+ .string "There must be four players to play\n"
+ .string "this Battle Mode.$"
+
+OldaleTown_PokemonCenter_2F_Text_1A4C38:: @ 81A4C38
+ .string "Please confirm the number of players\n"
+ .string "and start again.$"
+
+ .incbin "baserom.gba", 0x1a4c6e, 0x110
+
+ .include "data/maps/text/SingleBattleColosseum.s"
+ .include "data/maps/text/TradeCenter.s"
+ .include "data/maps/text/RecordCorner.s"
+OldaleTown_PokemonCenter_2F_Text_1A4E50:: @ 81A4E50
+ .string "The TRAINER CARD data will\n"
+ .string "be rewritten.$"
+
+OldaleTown_PokemonCenter_2F_Text_1A4E79:: @ 81A4E79
+ .string "I hope to see you again!$"
+
+FallarborTown_ContestLobby_EventScript_1A4E92:: @ 81A4E92
+LilycoveCity_ContestLobby_EventScript_1A4E92:: @ 81A4E92
+SlateportCity_ContestLobby_EventScript_1A4E92:: @ 81A4E92
+VerdanturfTown_ContestLobby_EventScript_1A4E92:: @ 81A4E92
+ lock
+ faceplayer
+ checkitem ITEM_CONTEST_PASS, 1
+ compare RESULT, 0
+ callif 1, FallarborTown_ContestLobby_EventScript_1A4EDD
+ compare 0x408a, 0
+ jumpif 5, FallarborTown_ContestLobby_EventScript_1A4F4E
+ checkflag 1
+ jumpeq FallarborTown_ContestLobby_EventScript_1A4F8F
+ bufferstd 0, 32779
+ msgbox FallarborTown_ContestLobby_Text_1A5DFC, 4
+ checkitem ITEM_CONTEST_PASS, 1
+ compare RESULT, 0
+ jumpeq FallarborTown_ContestLobby_EventScript_1A4EE1
+ setflag 1
+ jump FallarborTown_ContestLobby_EventScript_1A4F8F
+ end
+
+FallarborTown_ContestLobby_EventScript_1A4EDD:: @ 81A4EDD
+ clearflag 1
+ return
+
+FallarborTown_ContestLobby_EventScript_1A4EE1:: @ 81A4EE1
+ compare 0x8010, 0
+ jumpeq FallarborTown_ContestLobby_EventScript_1A4EF6
+ msgbox FallarborTown_ContestLobby_Text_1A6340, 4
+ releaseall
+ end
+
+FallarborTown_ContestLobby_EventScript_1A4EF6:: @ 81A4EF6
+ msgbox FallarborTown_ContestLobby_Text_1A64F4, 5
+ compare RESULT, 1
+ jumpeq FallarborTown_ContestLobby_EventScript_1A4F13
+ msgbox FallarborTown_ContestLobby_Text_1A65EA, 4
+ releaseall
+ end
+
+FallarborTown_ContestLobby_EventScript_1A4F13:: @ 81A4F13
+ checkflag 150
+ jumpeq FallarborTown_ContestLobby_EventScript_1A4F44
+ msgbox FallarborTown_ContestLobby_Text_1A6583, 4
+ giveitem ITEM_CONTEST_PASS
+ setflag 150
+ setflag 1
+ msgbox FallarborTown_ContestLobby_Text_1A5E98, 4
+ jump FallarborTown_ContestLobby_EventScript_1A4F8F
+ end
+
+FallarborTown_ContestLobby_EventScript_1A4F44:: @ 81A4F44
+ msgbox FallarborTown_ContestLobby_Text_1A6590, 4
+ releaseall
+ end
+
+FallarborTown_ContestLobby_EventScript_1A4F4E:: @ 81A4F4E
+ msgbox FallarborTown_ContestLobby_Text_1A685A, 4
+ switch 0x408a
+ case 4, FallarborTown_ContestLobby_EventScript_1A4F67
+ end
+
+FallarborTown_ContestLobby_EventScript_1A4F67:: @ 81A4F67
+ giveitem ITEM_LUXURY_BALL
+ compare RESULT, 0
+ jumpeq FallarborTown_ContestLobby_EventScript_1A4F86
+ setvar 0x408a, 0
+ closebutton
+ release
+ end
+
+FallarborTown_ContestLobby_EventScript_1A4F86:: @ 81A4F86
+ msgbox FallarborTown_ContestLobby_Text_1A68C6, 2
+ end
+
+FallarborTown_ContestLobby_EventScript_1A4F8F:: @ 81A4F8F
+ message FallarborTown_ContestLobby_Text_1A5E46
+ waittext
+ multichoice 0, 0, 2, 0
+ switch RESULT
+ case 0, FallarborTown_ContestLobby_EventScript_1A5097
+ case 1, FallarborTown_ContestLobby_EventScript_1A4FCC
+ case 2, FallarborTown_ContestLobby_EventScript_1A503E
+ case 127, FallarborTown_ContestLobby_EventScript_1A503E
+ end
+
+FallarborTown_ContestLobby_EventScript_1A4FCC:: @ 81A4FCC
+ message FallarborTown_ContestLobby_Text_1A5E7C
+ waittext
+ multichoice 0, 0, 3, 0
+ switch RESULT
+ case 0, FallarborTown_ContestLobby_EventScript_1A5014
+ case 1, FallarborTown_ContestLobby_EventScript_1A5022
+ case 2, FallarborTown_ContestLobby_EventScript_1A5030
+ case 3, FallarborTown_ContestLobby_EventScript_1A4F8F
+ case 127, FallarborTown_ContestLobby_EventScript_1A4F8F
+ end
+
+FallarborTown_ContestLobby_EventScript_1A5014:: @ 81A5014
+ msgbox FallarborTown_ContestLobby_Text_1A5E98, 4
+ jump FallarborTown_ContestLobby_EventScript_1A4FCC
+ end
+
+FallarborTown_ContestLobby_EventScript_1A5022:: @ 81A5022
+ msgbox FallarborTown_ContestLobby_Text_1A609B, 4
+ jump FallarborTown_ContestLobby_EventScript_1A4FCC
+ end
+
+FallarborTown_ContestLobby_EventScript_1A5030:: @ 81A5030
+ msgbox FallarborTown_ContestLobby_Text_1A613F, 4
+ jump FallarborTown_ContestLobby_EventScript_1A4FCC
+ end
+
+FallarborTown_ContestLobby_EventScript_1A503E:: @ 81A503E
+ msgbox FallarborTown_ContestLobby_Text_188559, 4
+ release
+ end
+
+FallarborTown_ContestLobby_EventScript_1A5048:: @ 81A5048
+ msgbox FallarborTown_ContestLobby_Text_1A6319, 4
+ choosecontestpkmn
+ compare 0x8004, 255
+ jumpeq FallarborTown_ContestLobby_EventScript_1A5097
+ special 84
+ compare RESULT, 0
+ jumpeq FallarborTown_ContestLobby_EventScript_1A50C8
+ compare RESULT, 1
+ jumpeq FallarborTown_ContestLobby_EventScript_1A50D7
+ compare RESULT, 2
+ jumpeq FallarborTown_ContestLobby_EventScript_1A50FB
+ compare RESULT, 3
+ jumpeq FallarborTown_ContestLobby_EventScript_1A511F
+ compare RESULT, 4
+ jumpeq FallarborTown_ContestLobby_EventScript_1A512E
+ end
+
+FallarborTown_ContestLobby_EventScript_1A5097:: @ 81A5097
+ message FallarborTown_ContestLobby_Text_1A6623
+ waittext
+ multichoice 0, 0, 4, 0
+ switch RESULT
+ case 5, FallarborTown_ContestLobby_EventScript_1A503E
+ case 127, FallarborTown_ContestLobby_EventScript_1A503E
+ copyvar 0x8011, RESULT
+ jump FallarborTown_ContestLobby_EventScript_1A5048
+ end
+
+FallarborTown_ContestLobby_EventScript_1A50C8:: @ 81A50C8
+ msgbox FallarborTown_ContestLobby_Text_1A664A, 4
+ jump FallarborTown_ContestLobby_EventScript_1A5048
+
+ .incbin "baserom.gba", 0x1a50d5, 0x2
+
+FallarborTown_ContestLobby_EventScript_1A50D7:: @ 81A50D7
+ msgbox FallarborTown_ContestLobby_Text_1A67A3, 5
+ switch RESULT
+ case 0, FallarborTown_ContestLobby_EventScript_1A5048
+ case 1, FallarborTown_ContestLobby_EventScript_1A513D
+ end
+
+FallarborTown_ContestLobby_EventScript_1A50FB:: @ 81A50FB
+ msgbox FallarborTown_ContestLobby_Text_1A6724, 5
+ switch RESULT
+ case 0, FallarborTown_ContestLobby_EventScript_1A5048
+ case 1, FallarborTown_ContestLobby_EventScript_1A513D
+ end
+
+FallarborTown_ContestLobby_EventScript_1A511F:: @ 81A511F
+ msgbox FallarborTown_ContestLobby_Text_1A669F, 4
+ jump FallarborTown_ContestLobby_EventScript_1A5048
+
+ .incbin "baserom.gba", 0x1a512c, 0x2
+
+FallarborTown_ContestLobby_EventScript_1A512E:: @ 81A512E
+ msgbox FallarborTown_ContestLobby_Text_1A66DC, 4
+ jump FallarborTown_ContestLobby_EventScript_1A5048
+
+ .incbin "baserom.gba", 0x1a513b, 0x2
+
+FallarborTown_ContestLobby_EventScript_1A513D:: @ 81A513D
+ msgbox FallarborTown_ContestLobby_Text_1A67C1, 4
+ closebutton
+ releaseall
+ setvar 0x4086, 1
+ return
+
+LinkContestRoom1_EventScript_1A514D:: @ 81A514D
+ setvar 0x8006, 0
+ lockall
+ move 14, LinkContestRoom1_Movement_1A5DBF
+ waitmove 0
+ move 1, LinkContestRoom1_Movement_1A5D85
+ waitmove 0
+ releaseall
+ call LinkContestRoom1_EventScript_1A51A0
+ call LinkContestRoom1_EventScript_1A51EA
+ call LinkContestRoom1_EventScript_1A5245
+ call LinkContestRoom1_EventScript_1A527A
+ call LinkContestRoom1_EventScript_1A58EE
+ call LinkContestRoom1_EventScript_1A594A
+ call LinkContestRoom1_EventScript_1A59FC
+ call LinkContestRoom1_EventScript_1A5A49
+ call LinkContestRoom1_EventScript_1A5A90
+ call LinkContestRoom1_EventScript_1A5BAB
+ setvar 0x4086, 2
+ return
+
+LinkContestRoom1_EventScript_1A51A0:: @ 81A51A0
+ switch 0x8010
+ case 0, LinkContestRoom1_EventScript_1A51D2
+ case 1, LinkContestRoom1_EventScript_1A51D8
+ case 2, LinkContestRoom1_EventScript_1A51DE
+ case 3, LinkContestRoom1_EventScript_1A51E4
+ return
+
+LinkContestRoom1_EventScript_1A51D2:: @ 81A51D2
+ setvar 0x8009, 5
+ return
+
+LinkContestRoom1_EventScript_1A51D8:: @ 81A51D8
+ setvar 0x8009, 6
+ return
+
+LinkContestRoom1_EventScript_1A51DE:: @ 81A51DE
+ setvar 0x8009, 7
+ return
+
+LinkContestRoom1_EventScript_1A51E4:: @ 81A51E4
+ setvar 0x8009, 8
+ return
+
+LinkContestRoom1_EventScript_1A51EA:: @ 81A51EA
+ switch 0x8011
+ case 0, LinkContestRoom1_EventScript_1A5227
+ case 1, LinkContestRoom1_EventScript_1A522D
+ case 2, LinkContestRoom1_EventScript_1A5233
+ case 3, LinkContestRoom1_EventScript_1A5239
+ case 4, LinkContestRoom1_EventScript_1A523F
+ return
+
+LinkContestRoom1_EventScript_1A5227:: @ 81A5227
+ setvar 0x8008, 0
+ return
+
+LinkContestRoom1_EventScript_1A522D:: @ 81A522D
+ setvar 0x8008, 1
+ return
+
+LinkContestRoom1_EventScript_1A5233:: @ 81A5233
+ setvar 0x8008, 2
+ return
+
+LinkContestRoom1_EventScript_1A5239:: @ 81A5239
+ setvar 0x8008, 3
+ return
+
+LinkContestRoom1_EventScript_1A523F:: @ 81A523F
+ setvar 0x8008, 4
+ return
+
+LinkContestRoom1_EventScript_1A5245:: @ 81A5245
+ bufferstd 1, 32776
+ bufferstd 2, 32777
+ call LinkContestRoom1_EventScript_1A525F
+ lockall
+ move 1, LinkContestRoom1_Movement_1A5D87
+ waitmove 0
+ releaseall
+ return
+
+LinkContestRoom1_EventScript_1A525F:: @ 81A525F
+ compare 0x4088, 5
+ jumpeq LinkContestRoom1_EventScript_1A5273
+ msgbox LinkContestRoom1_Text_1A68F0, 3
+ return
+
+LinkContestRoom1_EventScript_1A5273:: @ 81A5273
+ message2 LinkContestRoom1_Text_1A6976
+ waittext
+ return
+
+LinkContestRoom1_EventScript_1A527A:: @ 81A527A
+ call LinkContestRoom1_EventScript_1A52AE
+ call LinkContestRoom1_EventScript_1A5323
+ call LinkContestRoom1_EventScript_1A5455
+ call LinkContestRoom1_EventScript_1A53E5
+ call LinkContestRoom1_EventScript_1A5880
+ addvar 0x8006, 1
+ compare 0x8006, 4
+ jumpif 5, LinkContestRoom1_EventScript_1A527A
+ call LinkContestRoom1_EventScript_1A5377
+ setvar 0x4001, 6
+ return
+
+LinkContestRoom1_EventScript_1A52AE:: @ 81A52AE
+ compare 0x8006, 0
+ jumpeq LinkContestRoom1_EventScript_1A52DB
+ compare 0x8006, 1
+ jumpeq LinkContestRoom1_EventScript_1A52ED
+ compare 0x8006, 2
+ jumpeq LinkContestRoom1_EventScript_1A52FF
+ compare 0x8006, 3
+ jumpeq LinkContestRoom1_EventScript_1A5311
+ return
+
+LinkContestRoom1_EventScript_1A52DB:: @ 81A52DB
+ lockall
+ move 3, LinkContestRoom1_Movement_1A5DCE
+ waitmove 0
+ releaseall
+ setvar 0x800b, 3
+ return
+
+LinkContestRoom1_EventScript_1A52ED:: @ 81A52ED
+ lockall
+ move 4, LinkContestRoom1_Movement_1A5DDA
+ waitmove 0
+ releaseall
+ setvar 0x800b, 4
+ return
+
+LinkContestRoom1_EventScript_1A52FF:: @ 81A52FF
+ lockall
+ move 5, LinkContestRoom1_Movement_1A5DE2
+ waitmove 0
+ releaseall
+ setvar 0x800b, 5
+ return
+
+LinkContestRoom1_EventScript_1A5311:: @ 81A5311
+ lockall
+ move 14, LinkContestRoom1_Movement_1A5DEA
+ waitmove 0
+ releaseall
+ setvar 0x800b, 14
+ return
+
+LinkContestRoom1_EventScript_1A5323:: @ 81A5323
+ special 81
+ addvar 0x8006, 1
+ buffernum 1, 32774
+ lockall
+ move 0x800b, LinkContestRoom1_Movement_1A5D9C
+ waitmove 0
+ releaseall
+ reappear 13
+ playsfx 10
+ lockall
+ move 0x800b, LinkContestRoom1_Movement_1A5D9C
+ waitmove 0
+ releaseall
+ addvar 0x8006, 65535
+ playsfx 15
+ special 320
+ call LinkContestRoom1_EventScript_1A535E
+ return
+
+LinkContestRoom1_EventScript_1A535E:: @ 81A535E
+ compare 0x4088, 5
+ jumpeq LinkContestRoom1_EventScript_1A5370
+ message LinkContestRoom1_Text_1A6A04
+ waittext
+ return
+
+LinkContestRoom1_EventScript_1A5370:: @ 81A5370
+ message2 LinkContestRoom1_Text_1A6A04
+ waittext
+ return
+
+LinkContestRoom1_EventScript_1A5377:: @ 81A5377
+ call LinkContestRoom1_EventScript_1A53B3
+ call LinkContestRoom1_EventScript_1A53CE
+ playsfx 223
+ waittext
+ call LinkContestRoom1_EventScript_1A5A90
+ move 1, LinkContestRoom1_Movement_1A5D9F
+ waitmove 0
+ move 2, LinkContestRoom1_Movement_1A5DA1
+ waitmove 0
+ pause 20
+ move 1, LinkContestRoom1_Movement_1A5D8F
+ move 2, LinkContestRoom1_Movement_1A5D8F
+ waitmove 0
+ return
+
+LinkContestRoom1_EventScript_1A53B3:: @ 81A53B3
+ compare 0x4088, 5
+ jumpeq LinkContestRoom1_EventScript_1A53C7
+ msgbox LinkContestRoom1_Text_1A6A1F, 4
+ return
+
+LinkContestRoom1_EventScript_1A53C7:: @ 81A53C7
+ message2 LinkContestRoom1_Text_1A6A1F
+ waittext
+ return
+
+LinkContestRoom1_EventScript_1A53CE:: @ 81A53CE
+ compare 0x4088, 5
+ jumpeq LinkContestRoom1_EventScript_1A53DF
+ message LinkContestRoom1_Text_1A6AE1
+ return
+
+LinkContestRoom1_EventScript_1A53DF:: @ 81A53DF
+ message2 LinkContestRoom1_Text_1A6AE1
+ return
+
+LinkContestRoom1_EventScript_1A53E5:: @ 81A53E5
+ move 1, LinkContestRoom1_Movement_1A5DAF
+ waitmove 0
+ playsfx 223
+ call LinkContestRoom1_EventScript_1A5AE4
+ move 9, LinkContestRoom1_Movement_1A5DB7
+ move 12, LinkContestRoom1_Movement_1A5DBB
+ move 7, LinkContestRoom1_Movement_1A5DB7
+ waitmove 0
+ move 1, LinkContestRoom1_Movement_1A5DB7
+ waitmove 0
+ move 10, LinkContestRoom1_Movement_1A5DAF
+ move 11, LinkContestRoom1_Movement_1A5DBB
+ move 6, LinkContestRoom1_Movement_1A5DB3
+ move 8, LinkContestRoom1_Movement_1A5DAF
+ waitmove 0
+ move 1, LinkContestRoom1_Movement_1A5DC1
+ waitmove 0
+ move 1, LinkContestRoom1_Movement_1A5DCA
+ move 2, LinkContestRoom1_Movement_1A5DC5
+ waitmove 0
+ releaseall
+ return
+
+LinkContestRoom1_EventScript_1A5455:: @ 81A5455
+ special 87
+ compare 0x4088, 1
+ callif 1, LinkContestRoom1_EventScript_1A555A
+ compare 0x4088, 2
+ callif 1, LinkContestRoom1_EventScript_1A55B8
+ compare 0x4088, 3
+ callif 1, LinkContestRoom1_EventScript_1A5616
+ compare 0x4088, 4
+ callif 1, LinkContestRoom1_EventScript_1A5674
+ compare 0x4088, 5
+ callif 1, LinkContestRoom1_EventScript_1A56D2
+ setvar 0x4001, 9
+ setvar 0x4002, 9
+ setvar 0x4003, 9
+ setvar 0x4004, 9
+ setvar 0x4005, 9
+ setvar 0x4006, 9
+ setvar 0x4007, 9
+ setvar 0x4008, 9
+ compare 0x4000, 0
+ callif 2, LinkContestRoom1_EventScript_1A54EB
+ setvar 0x4001, 0
+ setvar 0x4002, 0
+ setvar 0x4003, 0
+ setvar 0x4004, 0
+ setvar 0x4005, 0
+ setvar 0x4006, 0
+ setvar 0x4007, 0
+ setvar 0x4008, 0
+ return
+
+LinkContestRoom1_EventScript_1A54EB:: @ 81A54EB
+ setvar RESULT, 8
+ special 340
+ compare RESULT, 0
+ callif 1, LinkContestRoom1_EventScript_1A5760
+ compare RESULT, 1
+ callif 1, LinkContestRoom1_EventScript_1A5784
+ compare RESULT, 2
+ callif 1, LinkContestRoom1_EventScript_1A57A8
+ compare RESULT, 3
+ callif 1, LinkContestRoom1_EventScript_1A57CC
+ compare RESULT, 4
+ callif 1, LinkContestRoom1_EventScript_1A57F0
+ compare RESULT, 5
+ callif 1, LinkContestRoom1_EventScript_1A5814
+ compare RESULT, 6
+ callif 1, LinkContestRoom1_EventScript_1A5838
+ compare RESULT, 7
+ callif 1, LinkContestRoom1_EventScript_1A585C
+ compare 0x4000, 0
+ jumpif 2, LinkContestRoom1_EventScript_1A54EB
+ waitmove 0
+ return
+
+LinkContestRoom1_EventScript_1A555A:: @ 81A555A
+ compare 0x8004, 80
+ jumpif 2, LinkContestRoom1_EventScript_1A575A
+ compare 0x8004, 70
+ jumpif 2, LinkContestRoom1_EventScript_1A5754
+ compare 0x8004, 60
+ jumpif 2, LinkContestRoom1_EventScript_1A574E
+ compare 0x8004, 50
+ jumpif 2, LinkContestRoom1_EventScript_1A5748
+ compare 0x8004, 40
+ jumpif 2, LinkContestRoom1_EventScript_1A5742
+ compare 0x8004, 30
+ jumpif 2, LinkContestRoom1_EventScript_1A573C
+ compare 0x8004, 20
+ jumpif 2, LinkContestRoom1_EventScript_1A5736
+ compare 0x8004, 10
+ jumpif 2, LinkContestRoom1_EventScript_1A5730
+ setvar 0x4000, 0
+ return
+
+LinkContestRoom1_EventScript_1A55B8:: @ 81A55B8
+ compare 0x8004, 230
+ jumpif 2, LinkContestRoom1_EventScript_1A575A
+ compare 0x8004, 210
+ jumpif 2, LinkContestRoom1_EventScript_1A5754
+ compare 0x8004, 190
+ jumpif 2, LinkContestRoom1_EventScript_1A574E
+ compare 0x8004, 170
+ jumpif 2, LinkContestRoom1_EventScript_1A5748
+ compare 0x8004, 150
+ jumpif 2, LinkContestRoom1_EventScript_1A5742
+ compare 0x8004, 130
+ jumpif 2, LinkContestRoom1_EventScript_1A573C
+ compare 0x8004, 110
+ jumpif 2, LinkContestRoom1_EventScript_1A5736
+ compare 0x8004, 90
+ jumpif 2, LinkContestRoom1_EventScript_1A5730
+ setvar 0x4000, 0
+ return
+
+LinkContestRoom1_EventScript_1A5616:: @ 81A5616
+ compare 0x8004, 380
+ jumpif 2, LinkContestRoom1_EventScript_1A575A
+ compare 0x8004, 350
+ jumpif 2, LinkContestRoom1_EventScript_1A5754
+ compare 0x8004, 320
+ jumpif 2, LinkContestRoom1_EventScript_1A574E
+ compare 0x8004, 290
+ jumpif 2, LinkContestRoom1_EventScript_1A5748
+ compare 0x8004, 260
+ jumpif 2, LinkContestRoom1_EventScript_1A5742
+ compare 0x8004, 230
+ jumpif 2, LinkContestRoom1_EventScript_1A573C
+ compare 0x8004, 200
+ jumpif 2, LinkContestRoom1_EventScript_1A5736
+ compare 0x8004, 170
+ jumpif 2, LinkContestRoom1_EventScript_1A5730
+ setvar 0x4000, 0
+ return
+
+LinkContestRoom1_EventScript_1A5674:: @ 81A5674
+ compare 0x8004, 600
+ jumpif 2, LinkContestRoom1_EventScript_1A575A
+ compare 0x8004, 560
+ jumpif 2, LinkContestRoom1_EventScript_1A5754
+ compare 0x8004, 520
+ jumpif 2, LinkContestRoom1_EventScript_1A574E
+ compare 0x8004, 480
+ jumpif 2, LinkContestRoom1_EventScript_1A5748
+ compare 0x8004, 440
+ jumpif 2, LinkContestRoom1_EventScript_1A5742
+ compare 0x8004, 400
+ jumpif 2, LinkContestRoom1_EventScript_1A573C
+ compare 0x8004, 360
+ jumpif 2, LinkContestRoom1_EventScript_1A5736
+ compare 0x8004, 320
+ jumpif 2, LinkContestRoom1_EventScript_1A5730
+ setvar 0x4000, 0
+ return
+
+LinkContestRoom1_EventScript_1A56D2:: @ 81A56D2
+ compare 0x8004, 600
+ jumpif 2, LinkContestRoom1_EventScript_1A575A
+ compare 0x8004, 550
+ jumpif 2, LinkContestRoom1_EventScript_1A5754
+ compare 0x8004, 500
+ jumpif 2, LinkContestRoom1_EventScript_1A574E
+ compare 0x8004, 450
+ jumpif 2, LinkContestRoom1_EventScript_1A5748
+ compare 0x8004, 400
+ jumpif 2, LinkContestRoom1_EventScript_1A5742
+ compare 0x8004, 300
+ jumpif 2, LinkContestRoom1_EventScript_1A573C
+ compare 0x8004, 200
+ jumpif 2, LinkContestRoom1_EventScript_1A5736
+ compare 0x8004, 100
+ jumpif 2, LinkContestRoom1_EventScript_1A5730
+ setvar 0x4000, 0
+ return
+
+LinkContestRoom1_EventScript_1A5730:: @ 81A5730
+ setvar 0x4000, 1
+ return
+
+LinkContestRoom1_EventScript_1A5736:: @ 81A5736
+ setvar 0x4000, 2
+ return
+
+LinkContestRoom1_EventScript_1A573C:: @ 81A573C
+ setvar 0x4000, 3
+ return
+
+LinkContestRoom1_EventScript_1A5742:: @ 81A5742
+ setvar 0x4000, 4
+ return
+
+LinkContestRoom1_EventScript_1A5748:: @ 81A5748
+ setvar 0x4000, 5
+ return
+
+LinkContestRoom1_EventScript_1A574E:: @ 81A574E
+ setvar 0x4000, 6
+ return
+
+LinkContestRoom1_EventScript_1A5754:: @ 81A5754
+ setvar 0x4000, 7
+ return
+
+LinkContestRoom1_EventScript_1A575A:: @ 81A575A
+ setvar 0x4000, 8
+ return
+
+LinkContestRoom1_EventScript_1A5760:: @ 81A5760
+ compare 0x4001, 1
+ jumpeq LinkContestRoom1_EventScript_1A5783
+ move 6, LinkContestRoom1_Movement_1A5D8D
+ playsfx 21
+ pause 14
+ setvar 0x4001, 1
+ addvar 0x4000, 65535
+ return
+
+LinkContestRoom1_EventScript_1A5783:: @ 81A5783
+ return
+
+LinkContestRoom1_EventScript_1A5784:: @ 81A5784
+ compare 0x4002, 1
+ jumpeq LinkContestRoom1_EventScript_1A57A7
+ move 12, LinkContestRoom1_Movement_1A5D8D
+ playsfx 21
+ pause 14
+ setvar 0x4002, 1
+ addvar 0x4000, 65535
+ return
+
+LinkContestRoom1_EventScript_1A57A7:: @ 81A57A7
+ return
+
+LinkContestRoom1_EventScript_1A57A8:: @ 81A57A8
+ compare 0x4003, 1
+ jumpeq LinkContestRoom1_EventScript_1A57CB
+ move 7, LinkContestRoom1_Movement_1A5D8D
+ playsfx 21
+ pause 14
+ setvar 0x4003, 1
+ addvar 0x4000, 65535
+ return
+
+LinkContestRoom1_EventScript_1A57CB:: @ 81A57CB
+ return
+
+LinkContestRoom1_EventScript_1A57CC:: @ 81A57CC
+ compare 0x4004, 1
+ jumpeq LinkContestRoom1_EventScript_1A57EF
+ move 8, LinkContestRoom1_Movement_1A5D8D
+ playsfx 21
+ pause 14
+ setvar 0x4004, 1
+ addvar 0x4000, 65535
+ return
+
+LinkContestRoom1_EventScript_1A57EF:: @ 81A57EF
+ return
+
+LinkContestRoom1_EventScript_1A57F0:: @ 81A57F0
+ compare 0x4005, 1
+ jumpeq LinkContestRoom1_EventScript_1A5813
+ move 9, LinkContestRoom1_Movement_1A5D8D
+ playsfx 21
+ pause 14
+ setvar 0x4005, 1
+ addvar 0x4000, 65535
+ return
+
+LinkContestRoom1_EventScript_1A5813:: @ 81A5813
+ return
+
+LinkContestRoom1_EventScript_1A5814:: @ 81A5814
+ compare 0x4006, 1
+ jumpeq LinkContestRoom1_EventScript_1A5837
+ move 10, LinkContestRoom1_Movement_1A5D8D
+ playsfx 21
+ pause 14
+ setvar 0x4006, 1
+ addvar 0x4000, 65535
+ return
+
+LinkContestRoom1_EventScript_1A5837:: @ 81A5837
+ return
+
+LinkContestRoom1_EventScript_1A5838:: @ 81A5838
+ compare 0x4007, 1
+ jumpeq LinkContestRoom1_EventScript_1A585B
+ move 11, LinkContestRoom1_Movement_1A5D8D
+ playsfx 21
+ pause 14
+ setvar 0x4007, 1
+ addvar 0x4000, 65535
+ return
+
+LinkContestRoom1_EventScript_1A585B:: @ 81A585B
+ return
+
+LinkContestRoom1_EventScript_1A585C:: @ 81A585C
+ compare 0x4008, 1
+ jumpeq LinkContestRoom1_EventScript_1A587F
+ move 15, LinkContestRoom1_Movement_1A5D8D
+ playsfx 21
+ pause 14
+ setvar 0x4008, 1
+ addvar 0x4000, 65535
+ return
+
+LinkContestRoom1_EventScript_1A587F:: @ 81A587F
+ return
+
+LinkContestRoom1_EventScript_1A5880:: @ 81A5880
+ closebutton
+ release
+ disappear 13
+ special 321
+ switch 0x8006
+ case 0, LinkContestRoom1_EventScript_1A58BA
+ case 1, LinkContestRoom1_EventScript_1A58C7
+ case 2, LinkContestRoom1_EventScript_1A58D4
+ case 3, LinkContestRoom1_EventScript_1A58E1
+ return
+
+LinkContestRoom1_EventScript_1A58BA:: @ 81A58BA
+ lockall
+ move 0x800b, LinkContestRoom1_Movement_1A5DD4
+ waitmove 0
+ releaseall
+ return
+
+LinkContestRoom1_EventScript_1A58C7:: @ 81A58C7
+ lockall
+ move 0x800b, LinkContestRoom1_Movement_1A5DDE
+ waitmove 0
+ releaseall
+ return
+
+LinkContestRoom1_EventScript_1A58D4:: @ 81A58D4
+ lockall
+ move 0x800b, LinkContestRoom1_Movement_1A5DE6
+ waitmove 0
+ releaseall
+ return
+
+LinkContestRoom1_EventScript_1A58E1:: @ 81A58E1
+ lockall
+ move 0x800b, LinkContestRoom1_Movement_1A5DF0
+ waitmove 0
+ releaseall
+ return
+
+LinkContestRoom1_EventScript_1A58EE:: @ 81A58EE
+ lockall
+ move 1, LinkContestRoom1_Movement_1A5DA3
+ waitmove 0
+ call LinkContestRoom1_EventScript_1A5930
+ waittext
+ move 1, LinkContestRoom1_Movement_1A5D91
+ move 2, LinkContestRoom1_Movement_1A5D95
+ waitmove 0
+ releaseall
+ setvar 0x4009, 1
+ startcontest
+ setvar 0x4009, 0
+ lockall
+ move 1, LinkContestRoom1_Movement_1A5D95
+ move 2, LinkContestRoom1_Movement_1A5D91
+ waitmove 0
+ releaseall
+ return
+
+LinkContestRoom1_EventScript_1A5930:: @ 81A5930
+ compare 0x4088, 5
+ jumpeq LinkContestRoom1_EventScript_1A5944
+ msgbox LinkContestRoom1_Text_1A6AF5, 3
+ return
+
+LinkContestRoom1_EventScript_1A5944:: @ 81A5944
+ message2 LinkContestRoom1_Text_1A6AF5
+ return
+
+LinkContestRoom1_EventScript_1A594A:: @ 81A594A
+ call LinkContestRoom1_EventScript_1A5984
+ call LinkContestRoom1_EventScript_1A59A2
+ move 1, LinkContestRoom1_Movement_1A5D8B
+ waitmove 0
+ call LinkContestRoom1_EventScript_1A59C0
+ call LinkContestRoom1_EventScript_1A59DE
+ move 1, LinkContestRoom1_Movement_1A5D8F
+ waitmove 0
+ closebutton
+ releaseall
+ setvar 0x4009, 1
+ showcontestresults
+ setvar 0x4009, 0
+ playmusic 439, 0
+ return
+
+LinkContestRoom1_EventScript_1A5984:: @ 81A5984
+ compare 0x4088, 5
+ jumpeq LinkContestRoom1_EventScript_1A5998
+ msgbox LinkContestRoom1_Text_1A6C06, 4
+ return
+
+LinkContestRoom1_EventScript_1A5998:: @ 81A5998
+ message2 LinkContestRoom1_Text_1A6C06
+ waittext
+ pause 30
+ return
+
+LinkContestRoom1_EventScript_1A59A2:: @ 81A59A2
+ compare 0x4088, 5
+ jumpeq LinkContestRoom1_EventScript_1A59B6
+ msgbox LinkContestRoom1_Text_1A6C21, 4
+ return
+
+LinkContestRoom1_EventScript_1A59B6:: @ 81A59B6
+ message2 LinkContestRoom1_Text_1A6C21
+ waittext
+ pause 30
+ return
+
+LinkContestRoom1_EventScript_1A59C0:: @ 81A59C0
+ compare 0x4088, 5
+ jumpeq LinkContestRoom1_EventScript_1A59D4
+ msgbox LinkContestRoom1_Text_1A6C9D, 4
+ return
+
+LinkContestRoom1_EventScript_1A59D4:: @ 81A59D4
+ message2 LinkContestRoom1_Text_1A6C9D
+ waittext
+ pause 30
+ return
+
+LinkContestRoom1_EventScript_1A59DE:: @ 81A59DE
+ compare 0x4088, 5
+ jumpeq LinkContestRoom1_EventScript_1A59F2
+ msgbox LinkContestRoom1_Text_1A6D16, 4
+ return
+
+LinkContestRoom1_EventScript_1A59F2:: @ 81A59F2
+ message2 LinkContestRoom1_Text_1A6D16
+ waittext
+ pause 30
+ return
+
+LinkContestRoom1_EventScript_1A59FC:: @ 81A59FC
+ special 76
+ switch 0x8005
+ case 0, LinkContestRoom1_EventScript_1A5A31
+ case 1, LinkContestRoom1_EventScript_1A5A37
+ case 2, LinkContestRoom1_EventScript_1A5A3D
+ case 3, LinkContestRoom1_EventScript_1A5A43
+ return
+
+LinkContestRoom1_EventScript_1A5A31:: @ 81A5A31
+ setvar 0x4003, 3
+ return
+
+LinkContestRoom1_EventScript_1A5A37:: @ 81A5A37
+ setvar 0x4003, 4
+ return
+
+LinkContestRoom1_EventScript_1A5A3D:: @ 81A5A3D
+ setvar 0x4003, 5
+ return
+
+LinkContestRoom1_EventScript_1A5A43:: @ 81A5A43
+ setvar 0x4003, 14
+ return
+
+LinkContestRoom1_EventScript_1A5A49:: @ 81A5A49
+ special 79
+ special 80
+ addvar 0x8005, 1
+ buffernum 1, 32773
+ addvar 0x8005, 65535
+ call LinkContestRoom1_EventScript_1A5A75
+ move 0x4003, LinkContestRoom1_Movement_1A5D99
+ waitmove 0
+ playsfx 223
+ setvar 0x4001, 0
+ return
+
+LinkContestRoom1_EventScript_1A5A75:: @ 81A5A75
+ compare 0x4088, 5
+ jumpeq LinkContestRoom1_EventScript_1A5A89
+ msgbox LinkContestRoom1_Text_1A6D3C, 4
+ return
+
+LinkContestRoom1_EventScript_1A5A89:: @ 81A5A89
+ message2 LinkContestRoom1_Text_1A6D3C
+ waittext
+ return
+
+LinkContestRoom1_EventScript_1A5A90:: @ 81A5A90
+ addvar 0x4001, 1
+ lockall
+ compare 0x4088, 1
+ callif 2, LinkContestRoom1_EventScript_1A5AE4
+ move 9, LinkContestRoom1_Movement_1A5DB7
+ move 12, LinkContestRoom1_Movement_1A5DBB
+ move 7, LinkContestRoom1_Movement_1A5DB7
+ pause 30
+ move 10, LinkContestRoom1_Movement_1A5DAF
+ move 11, LinkContestRoom1_Movement_1A5DBB
+ move 6, LinkContestRoom1_Movement_1A5DB3
+ move 8, LinkContestRoom1_Movement_1A5DAF
+ compare 0x4001, 4
+ jumpif 5, LinkContestRoom1_EventScript_1A5A90
+ pause 30
+ return
+
+LinkContestRoom1_EventScript_1A5AE4:: @ 81A5AE4
+ vspriteface 0, 1
+ vspriteface 2, 1
+ vspriteface 4, 4
+ vspriteface 6, 1
+ vspriteface 8, 1
+ vspriteface 10, 1
+ vspriteface 12, 1
+ vspriteface 14, 1
+ vspriteface 16, 1
+ vspriteface 18, 1
+ vspriteface 20, 4
+ vspriteface 22, 4
+ vspriteface 25, 4
+ vspriteface 27, 3
+ vspriteface 28, 4
+ pause 10
+ vspriteface 0, 4
+ vspriteface 2, 4
+ vspriteface 4, 4
+ vspriteface 6, 4
+ vspriteface 8, 4
+ vspriteface 10, 3
+ vspriteface 12, 3
+ vspriteface 14, 3
+ vspriteface 16, 3
+ vspriteface 18, 3
+ vspriteface 20, 1
+ vspriteface 22, 1
+ vspriteface 25, 2
+ vspriteface 27, 2
+ vspriteface 28, 2
+ pause 10
+ vspriteface 1, 2
+ vspriteface 3, 2
+ vspriteface 5, 2
+ vspriteface 7, 2
+ vspriteface 9, 4
+ vspriteface 11, 2
+ vspriteface 15, 2
+ vspriteface 13, 2
+ vspriteface 17, 2
+ vspriteface 19, 2
+ vspriteface 21, 3
+ vspriteface 23, 3
+ vspriteface 24, 3
+ vspriteface 26, 4
+ vspriteface 29, 3
+ vspriteface 30, 3
+ pause 10
+ vspriteface 1, 4
+ vspriteface 3, 4
+ vspriteface 5, 4
+ vspriteface 7, 4
+ vspriteface 9, 4
+ vspriteface 11, 3
+ vspriteface 15, 3
+ vspriteface 13, 3
+ vspriteface 17, 3
+ vspriteface 19, 3
+ vspriteface 21, 1
+ vspriteface 23, 1
+ vspriteface 24, 1
+ vspriteface 26, 2
+ vspriteface 29, 2
+ vspriteface 30, 2
+ pause 10
+ return
+
+LinkContestRoom1_EventScript_1A5BAB:: @ 81A5BAB
+ compare 0x4088, 5
+ jumpeq LinkContestRoom1_EventScript_1A5C4C
+ call LinkContestRoom1_EventScript_1A5C12
+ checkflag 2
+ jumpeq LinkContestRoom1_EventScript_1A5BF6
+ msgbox LinkContestRoom1_Text_1A6DC5, 3
+ waittext
+ call LinkContestRoom1_EventScript_1A5C7F
+ call LinkContestRoom1_EventScript_1A5CE5
+ playsfx 223
+ setvar 0x4001, 0
+ call LinkContestRoom1_EventScript_1A5A90
+ pause 30
+ special 134
+ compare 0x8004, 1
+ jumpeq LinkContestRoom1_EventScript_1A5C46
+ return
+
+LinkContestRoom1_EventScript_1A5BF6:: @ 81A5BF6
+ inccounter 37
+ msgbox LinkContestRoom1_Text_1A6DF1, 3
+ pause 90
+ special 134
+ compare 0x8004, 1
+ jumpeq LinkContestRoom1_EventScript_1A5C46
+ return
+
+LinkContestRoom1_EventScript_1A5C12:: @ 81A5C12
+ specialval RESULT, 88
+ compare RESULT, 1
+ jumpeq LinkContestRoom1_EventScript_1A5C23
+ return
+
+LinkContestRoom1_EventScript_1A5C23:: @ 81A5C23
+ special 76
+ compare 0x8005, 3
+ jumpeq LinkContestRoom1_EventScript_1A5C32
+ return
+
+LinkContestRoom1_EventScript_1A5C32:: @ 81A5C32
+ compare 0x8010, 3
+ jumpeq LinkContestRoom1_EventScript_1A5C41
+ setflag 2
+ return
+
+LinkContestRoom1_EventScript_1A5C41:: @ 81A5C41
+ return
+
+LinkContestRoom1_EventScript_1A5C42:: @ 81A5C42
+ setflag 270
+ return
+
+LinkContestRoom1_EventScript_1A5C46:: @ 81A5C46
+ setvar 0x4099, 1
+ return
+
+LinkContestRoom1_EventScript_1A5C4C:: @ 81A5C4C
+ pause 60
+ call LinkContestRoom1_EventScript_1A5C6A
+ special 134
+ compare 0x8004, 1
+ jumpeq LinkContestRoom1_EventScript_1A5C64
+ closebutton
+ return
+
+LinkContestRoom1_EventScript_1A5C64:: @ 81A5C64
+ setvar 0x4099, 2
+ return
+
+LinkContestRoom1_EventScript_1A5C6A:: @ 81A5C6A
+ special 77
+ special 76
+ comparevars 0x8004, 0x8005
+ jumpeq LinkContestRoom1_EventScript_1A5C7C
+ return
+
+LinkContestRoom1_EventScript_1A5C7C:: @ 81A5C7C
+ inccounter 35
+ return
+
+LinkContestRoom1_EventScript_1A5C7F:: @ 81A5C7F
+ switch 0x8005
+ case 0, LinkContestRoom1_EventScript_1A5CB1
+ case 1, LinkContestRoom1_EventScript_1A5CBE
+ case 2, LinkContestRoom1_EventScript_1A5CCB
+ case 3, LinkContestRoom1_EventScript_1A5CD8
+ return
+
+LinkContestRoom1_EventScript_1A5CB1:: @ 81A5CB1
+ lockall
+ move 0x4003, LinkContestRoom1_Movement_1A5DF6
+ waitmove 0
+ releaseall
+ return
+
+LinkContestRoom1_EventScript_1A5CBE:: @ 81A5CBE
+ lockall
+ move 0x4003, LinkContestRoom1_Movement_1A5DFA
+ waitmove 0
+ releaseall
+ return
+
+LinkContestRoom1_EventScript_1A5CCB:: @ 81A5CCB
+ lockall
+ move 0x4003, LinkContestRoom1_Movement_1A5DA5
+ waitmove 0
+ releaseall
+ return
+
+LinkContestRoom1_EventScript_1A5CD8:: @ 81A5CD8
+ lockall
+ move 0x4003, LinkContestRoom1_Movement_1A5DA9
+ waitmove 0
+ releaseall
+ return
+
+LinkContestRoom1_EventScript_1A5CE5:: @ 81A5CE5
+ special 76
+ compare 0x8005, 3
+ jumpeq LinkContestRoom1_EventScript_1A5CFC
+ msgbox LinkContestRoom1_Text_1A6DF1, 3
+ return
+
+LinkContestRoom1_EventScript_1A5CFC:: @ 81A5CFC
+ compare 0x4088, 2
+ callif 1, LinkContestRoom1_EventScript_1A5C42
+ inccounter 37
+ specialval RESULT, 88
+ compare RESULT, 0
+ jumpeq LinkContestRoom1_EventScript_1A5D5B
+ compare 0x8010, 3
+ jumpeq LinkContestRoom1_EventScript_1A5D3B
+ msgbox LinkContestRoom1_Text_1A6DF1, 3
+ return
+
+LinkContestRoom1_EventScript_1A5D2D:: @ 81A5D2D
+ msgbox LinkContestRoom1_Text_1A6E1F, 3
+ setvar 0x408a, 4
+ return
+
+LinkContestRoom1_EventScript_1A5D3B:: @ 81A5D3B
+ giveitem ITEM_LUXURY_BALL
+ compare RESULT, 0
+ jumpeq LinkContestRoom1_EventScript_1A5D2D
+ msgbox LinkContestRoom1_Text_1A6DF1, 3
+ return
+
+LinkContestRoom1_EventScript_1A5D5B:: @ 81A5D5B
+ special 89
+ inccounter 42
+ setflag 2107
+ lockall
+ msgbox LinkContestRoom1_Text_1A6D6A, 4
+ fanfare 370
+ msgbox LinkContestRoom1_Text_1A6D96, 4
+ waitfanfare
+ special 80
+ msgbox LinkContestRoom1_Text_1A6DAC, 4
+ releaseall
+ return
+
+LinkContestRoom1_Movement_1A5D85:: @ 81A5D85
+ step_down
+ step_end
+
+LinkContestRoom1_Movement_1A5D87:: @ 81A5D87
+ step_40
+ step_up
+ step_41
+ step_end
+
+LinkContestRoom1_Movement_1A5D8B:: @ 81A5D8B
+ step_28
+ step_end
+
+LinkContestRoom1_Movement_1A5D8D:: @ 81A5D8D
+ step_58
+ step_end
+
+LinkContestRoom1_Movement_1A5D8F:: @ 81A5D8F
+ step_25
+ step_end
+
+LinkContestRoom1_Movement_1A5D91:: @ 81A5D91
+ step_left
+ step_left
+ step_25
+ step_end
+
+LinkContestRoom1_Movement_1A5D95:: @ 81A5D95
+ step_right
+ step_right
+ step_25
+ step_end
+
+LinkContestRoom1_Movement_1A5D99:: @ 81A5D99
+ step_up
+ step_25
+ step_end
+
+LinkContestRoom1_Movement_1A5D9C:: @ 81A5D9C
+ step_14
+ step_14
+ step_end
+
+LinkContestRoom1_Movement_1A5D9F:: @ 81A5D9F
+ step_28
+ step_end
+
+LinkContestRoom1_Movement_1A5DA1:: @ 81A5DA1
+ step_27
+ step_end
+
+LinkContestRoom1_Movement_1A5DA3:: @ 81A5DA3
+ step_25
+ step_end
+
+LinkContestRoom1_Movement_1A5DA5:: @ 81A5DA5
+ step_left
+ step_left
+ step_up
+ step_end
+
+LinkContestRoom1_Movement_1A5DA9:: @ 81A5DA9
+ step_left
+ step_left
+ step_left
+ step_left
+ step_up
+ step_end
+
+LinkContestRoom1_Movement_1A5DAF:: @ 81A5DAF
+ step_02
+ step_14
+ step_4e
+ step_end
+
+LinkContestRoom1_Movement_1A5DB3:: @ 81A5DB3
+ step_01
+ step_14
+ step_4e
+ step_end
+
+LinkContestRoom1_Movement_1A5DB7:: @ 81A5DB7
+ step_03
+ step_14
+ step_4e
+ step_end
+
+LinkContestRoom1_Movement_1A5DBB:: @ 81A5DBB
+ step_00
+ step_14
+ step_4e
+ step_end
+
+LinkContestRoom1_Movement_1A5DBF:: @ 81A5DBF
+ step_01
+ step_end
+
+LinkContestRoom1_Movement_1A5DC1:: @ 81A5DC1
+ step_01
+ step_14
+ step_28
+ step_end
+
+LinkContestRoom1_Movement_1A5DC5:: @ 81A5DC5
+ step_27
+ step_14
+ step_14
+ step_25
+ step_end
+
+LinkContestRoom1_Movement_1A5DCA:: @ 81A5DCA
+ step_14
+ step_14
+ step_25
+ step_end
+
+LinkContestRoom1_Movement_1A5DCE:: @ 81A5DCE
+ step_up
+ step_right
+ step_right
+ step_right
+ step_26
+ step_end
+
+LinkContestRoom1_Movement_1A5DD4:: @ 81A5DD4
+ step_17
+ step_17
+ step_17
+ step_15
+ step_26
+ step_end
+
+LinkContestRoom1_Movement_1A5DDA:: @ 81A5DDA
+ step_up
+ step_right
+ step_26
+ step_end
+
+LinkContestRoom1_Movement_1A5DDE:: @ 81A5DDE
+ step_17
+ step_15
+ step_26
+ step_end
+
+LinkContestRoom1_Movement_1A5DE2:: @ 81A5DE2
+ step_up
+ step_left
+ step_26
+ step_end
+
+LinkContestRoom1_Movement_1A5DE6:: @ 81A5DE6
+ step_18
+ step_15
+ step_26
+ step_end
+
+LinkContestRoom1_Movement_1A5DEA:: @ 81A5DEA
+ step_up
+ step_left
+ step_left
+ step_left
+ step_26
+ step_end
+
+LinkContestRoom1_Movement_1A5DF0:: @ 81A5DF0
+ step_18
+ step_18
+ step_18
+ step_15
+ step_26
+ step_end
+
+LinkContestRoom1_Movement_1A5DF6:: @ 81A5DF6
+ step_right
+ step_right
+ step_up
+ step_end
+
+LinkContestRoom1_Movement_1A5DFA:: @ 81A5DFA
+ step_up
+ step_end
+
+FallarborTown_ContestLobby_Text_1A5DFC:: @ 81A5DFC
+ .string "Hello, there!\p"
+ .string "We’re accepting registrations for\n"
+ .string "{STR_VAR_1} Rank POKéMON CONTESTS.$"
+
+FallarborTown_ContestLobby_Text_1A5E46:: @ 81A5E46
+ .string "Would you like to enter your POKéMON\n"
+ .string "in our CONTESTS?$"
+
+FallarborTown_ContestLobby_Text_1A5E7C:: @ 81A5E7C
+ .string "Which topic would you like?$"
+
+FallarborTown_ContestLobby_Text_1A5E98:: @ 81A5E98
+ .string "A POKéMON CONTEST involves four\n"
+ .string "TRAINERS entering one POKéMON each\l"
+ .string "in competitive judging.\p"
+ .string "A CONTEST has two stages of judging,\n"
+ .string "primary and secondary.\p"
+ .string "Primary judging is a popularity poll\n"
+ .string "involving the audience.\p"
+ .string "Secondary judging features appeals\n"
+ .string "by the POKéMON using their moves.\p"
+ .string "Plan appeals carefully to earn the\n"
+ .string "most attention of the JUDGE and\l"
+ .string "excite the audience.\l"
+ .string "Do your best to stand out.\p"
+ .string "The primary and secondary scores are\n"
+ .string "added at the end.\p"
+ .string "The POKéMON garnering the highest\n"
+ .string "score is declared the winner.$"
+
+FallarborTown_ContestLobby_Text_1A609B:: @ 81A609B
+ .string "There are five kinds of CONTESTS.\p"
+ .string "COOL, BEAUTY, CUTE, SMART, and\n"
+ .string "TOUGH are the five categories.\p"
+ .string "Choose the CONTEST that is right for\n"
+ .string "the POKéMON you plan to enter.$"
+
+FallarborTown_ContestLobby_Text_1A613F:: @ 81A613F
+ .string "There are four ranks of POKéMON\n"
+ .string "CONTESTS.\p"
+ .string "NORMAL, SUPER, HYPER and MASTER\n"
+ .string "are the four ranks.\p"
+ .string "In the NORMAL Rank, any POKéMON may\n"
+ .string "enter.\p"
+ .string "Any POKéMON that won a NORMAL Rank\n"
+ .string "CONTEST may move up the SUPER Rank in\l"
+ .string "the same category.\p"
+ .string "In the same way, a SUPER Rank winner\n"
+ .string "can move up to the HYPER Rank, and a\l"
+ .string "HYPER Rank winner can advance to the\l"
+ .string "MASTER Rank in the same category.\p"
+ .string "A POKéMON that won in the MASTER Rank\n"
+ .string "may compete in the MASTER Rank as\l"
+ .string "often as its TRAINER wants.$"
+
+FallarborTown_ContestLobby_Text_1A6319:: @ 81A6319
+ .string "Which POKéMON would you like to enter?$"
+
+FallarborTown_ContestLobby_Text_1A6340:: @ 81A6340
+ .string "Anyone with a CONTEST PASS may enter.\p"
+ .string "You may obtain a CONTEST PASS at the\n"
+ .string "NORMAL RANK CONTEST HALL in\l"
+ .string "VERDANTURF TOWN free of charge.\p"
+ .string "Please obtain a CONTEST PASS and\n"
+ .string "come again.$"
+
+LilycoveCity_ContestLobby_Text_1A63F4:: @ 81A63F4
+ .string "I accept registrations only from four\n"
+ .string "linked players for a POKéMON CONTEST.\p"
+ .string "Anyone with a CONTEST PASS may enter.\p"
+ .string "You may obtain a CONTEST PASS at the\n"
+ .string "NORMAL RANK CONTEST HALL in\l"
+ .string "VERDANTURF TOWN free of charge.\p"
+ .string "Please obtain a CONTEST PASS and\n"
+ .string "come again.$"
+
+FallarborTown_ContestLobby_Text_1A64F4:: @ 81A64F4
+ .string "Anyone with a CONTEST PASS may enter.\p"
+ .string "If you don’t have one, I can issue one\n"
+ .string "for you right now.\p"
+ .string "Would you like me to issue you a\n"
+ .string "CONTEST PASS?$"
+
+FallarborTown_ContestLobby_Text_1A6583:: @ 81A6583
+ .string "Here you go!$"
+
+FallarborTown_ContestLobby_Text_1A6590:: @ 81A6590
+ .string "Oh?\p"
+ .string "We’ve already issued you a CONTEST\n"
+ .string "PASS, {PLAYER}.\p"
+ .string "Please come back with your CONTEST\n"
+ .string "PASS.$"
+
+FallarborTown_ContestLobby_Text_1A65EA:: @ 81A65EA
+ .string "Please visit whenever you would like\n"
+ .string "to enter a CONTEST.$"
+
+FallarborTown_ContestLobby_Text_1A6623:: @ 81A6623
+ .string "Which CONTEST would you like to enter?$"
+
+FallarborTown_ContestLobby_Text_1A664A:: @ 81A664A
+LilycoveCity_ContestLobby_Text_1A664A:: @ 81A664A
+ .string "I’m terribly sorry, but your POKéMON\n"
+ .string "is not qualified to compete at this\l"
+ .string "Rank yet...$"
+
+FallarborTown_ContestLobby_Text_1A669F:: @ 81A669F
+LilycoveCity_ContestLobby_Text_1A669F:: @ 81A669F
+ .string "I’m sorry, but an EGG cannot take part\n"
+ .string "in a POKéMON CONTEST.$"
+
+FallarborTown_ContestLobby_Text_1A66DC:: @ 81A66DC
+LilycoveCity_ContestLobby_Text_1A66DC:: @ 81A66DC
+ .string "Your POKéMON appears to be in no\n"
+ .string "condition to take part in a CONTEST...$"
+
+FallarborTown_ContestLobby_Text_1A6724:: @ 81A6724
+ .string "Oh, but that RIBBON...\p"
+ .string "Your POKéMON has won this CONTEST\n"
+ .string "before, hasn’t it?\p"
+ .string "Would you like to enter it in this\n"
+ .string "CONTEST anyway?$"
+
+FallarborTown_ContestLobby_Text_1A67A3:: @ 81A67A3
+LilycoveCity_ContestLobby_Text_1A67A3:: @ 81A67A3
+ .string "Is that your CONTEST POKéMON?$"
+
+FallarborTown_ContestLobby_Text_1A67C1:: @ 81A67C1
+ .string "Okay, your POKéMON will be entered\n"
+ .string "in this CONTEST.\p"
+ .string "Your POKéMON is Entry No. 4.\n"
+ .string "The CONTEST will begin shortly.$"
+
+FallarborTown_ContestLobby_Text_1A6832:: @ 81A6832
+LilycoveCity_ContestLobby_Text_1A6832:: @ 81A6832
+SlateportCity_ContestLobby_Text_1A6832:: @ 81A6832
+VerdanturfTown_ContestLobby_Text_1A6832:: @ 81A6832
+ .string "Please come in through here.\n"
+ .string "Good luck!$"
+
+FallarborTown_ContestLobby_Text_1A685A:: @ 81A685A
+ .string "Congratulations! Your POKéMON is the\n"
+ .string "CONTEST winner!\p"
+ .string "We have your prize right here.\n"
+ .string "Please, right this way!$"
+
+FallarborTown_ContestLobby_Text_1A68C6:: @ 81A68C6
+ .string "Please come back for your prize\n"
+ .string "later on.$"
+
+ .include "data/maps/text/LinkContestRoom1.s"
.global gUnknown_081A6E72
gUnknown_081A6E72: @ 81A6E72
- .incbin "baserom.gba", 0x001a6e72, 0x9fa4
+
+ .incbin "baserom.gba", 0x1a6e72, 0x10a
+
+FallarborTown_ContestLobby_Text_1A6F7C:: @ 81A6F7C
+ .string "Oh, hello! You were in a POKéMON CONTEST,\n"
+ .string "weren’t you?\l"
+ .string "It’s easy to tell from your POKéMON.\p"
+ .string "I’m a reporter. I’m working on a story\n"
+ .string "on POKéMON CONTESTS.\p"
+ .string "If I may, would you be willing to answer\n"
+ .string "a few questions?$"
+
+FallarborTown_ContestLobby_Text_1A704E:: @ 81A704E
+ .string "Oh, you will?\n"
+ .string "Thank you.\p"
+ .string "Briefly, how would you describe the\n"
+ .string "CONTEST you just entered?$"
+
+FallarborTown_ContestLobby_Text_1A70A5:: @ 81A70A5
+ .string "Ah, I see.\n"
+ .string "That’s a very edifying comment.\p"
+ .string "You get a good feel for what the\n"
+ .string "CONTEST was like.\p"
+ .string "I’ve got one last question.\p"
+ .string "When you hear the word “{STR_VAR_2},”\n"
+ .string "what image do you get?$"
+
+FallarborTown_ContestLobby_Text_1A7153:: @ 81A7153
+ .string "I see!\p"
+ .string "So that’s how you imagine the concept\n"
+ .string "of “{STR_VAR_2}” to be.\p"
+ .string "Thank you!\n"
+ .string "You’ve given me some good ideas.\p"
+ .string "I think I can write a good story on\n"
+ .string "POKéMON CONTESTS now.\p"
+ .string "Maybe, just maybe, this story will even\n"
+ .string "make it to television.\l"
+ .string "I hope you’ll look forward to it!$"
+
+FallarborTown_ContestLobby_Text_1A7256:: @ 81A7256
+ .string "Oh, too bad...\p"
+ .string "Well, if you come across a good story,\n"
+ .string "please do share it with me.$"
+
+FallarborTown_ContestLobby_Text_1A72A8:: @ 81A72A8
+ .string "I’ll be looking forward to your next\n"
+ .string "POKéMON CONTEST.$"
+
+ .incbin "baserom.gba", 0x1a72de, 0x48f
+
+BattleTower_Lobby_Text_1A776D:: @ 81A776D
+ .string "Hello! You’re the TRAINER who just had\n"
+ .string "a battle, right?\p"
+ .string "I’m gathering interviews with TRAINERS\n"
+ .string "all over the place.\p"
+ .string "May I get a few words from you about\n"
+ .string "your impressions on battling?$"
+
+BattleTower_Lobby_Text_1A7823:: @ 81A7823
+ .string "You will? Really?\n"
+ .string "Thank you!\l"
+ .string "Then, uh...\p"
+ .string "How did things turn out in the BATTLE\n"
+ .string "TOWER today?\p"
+ .string "Were you satisfied with the battle?\n"
+ .string "Or are you unhappy?$"
+
+BattleTower_Lobby_Text_1A78B7:: @ 81A78B7
+ .string "Oh...\n"
+ .string "Sorry we disturbed you.\p"
+ .string "Please give us an interview the next\n"
+ .string "time you visit the BATTLE TOWER.$"
+
+BattleTower_Lobby_Text_1A791B:: @ 81A791B
+ .string "Well, of course!\p"
+ .string "That unmistakable look of satisfaction\n"
+ .string "on your face...\p"
+ .string "It’s obvious that you’ve had a great\n"
+ .string "battle.$"
+
+BattleTower_Lobby_Text_1A7990:: @ 81A7990
+ .string "Oh, I see...\p"
+ .string "Well, it certainly is difficult to make a\n"
+ .string "battle turn out exactly as planned.$"
+
+BattleTower_Lobby_Text_1A79EB:: @ 81A79EB
+ .string "Oh, oh, may I ask one more question?\p"
+ .string "If you were to describe your\n"
+ .string "impressions about this battle with one\l"
+ .string "saying, what would it be?$"
+
+BattleTower_Lobby_Text_1A7A6E:: @ 81A7A6E
+ .string "Oh, that is stunningly cool!\p"
+ .string "That’s a great line!\n"
+ .string "I hope you’ll do great next time, too.\p"
+ .string "I hope to see you again!$"
+
+BattleTower_Lobby_Text_1A7AE0:: @ 81A7AE0
+ .string "Oh, I see...\p"
+ .string "Still, being the silent type is also cool,\n"
+ .string "isn’t it?\p"
+ .string "I hope you’ll give me the opportunity to\n"
+ .string "share your thoughts again!$"
+
+BattleTower_Lobby_Text_1A7B66:: @ 81A7B66
+ .string "I’ll be looking forward to your next\n"
+ .string "battle!$"
+
+ .incbin "baserom.gba", 0x1a7b93, 0x75e
+
+SlateportCity_PokemonFanClub_Text_1A82F1:: @ 81A82F1
+ .string "Wow!\p"
+ .string "It’s plain to see that you lavish your\n"
+ .string "love on your {STR_VAR_1}.\p"
+ .string "Okay, it’s named {STR_VAR_2}.\p"
+ .string "Can I ask you a favor?\p"
+ .string "I’m a TV reporter, and I’m running\n"
+ .string "a survey on POKéMON.\p"
+ .string "Would you be willing to answer a few\n"
+ .string "simple questions for me?$"
+
+SlateportCity_PokemonFanClub_Text_1A83D0:: @ 81A83D0
+ .string "Great! Thank you!\p"
+ .string "Okay, here goes.\n"
+ .string "I just need quick answers, okay?$"
+
+SlateportCity_PokemonFanClub_Text_1A8414:: @ 81A8414
+ .string "When you first met {STR_VAR_1}, what\n"
+ .string "did you feel?\p"
+ .string "How would you describe your feelings\n"
+ .string "at the time?$"
+
+SlateportCity_PokemonFanClub_Text_1A8470:: @ 81A8470
+ .string "Your {STR_VAR_1} is cared for lovingly.\p"
+ .string "If you were to liken it to something\n"
+ .string "that you like, what would it be?$"
+
+SlateportCity_PokemonFanClub_Text_1A84D5:: @ 81A84D5
+ .string "This question also relates to your\n"
+ .string "beloved {STR_VAR_1}.\p"
+ .string "What was it about {STR_VAR_1} that\n"
+ .string "attracted you?$"
+
+SlateportCity_PokemonFanClub_Text_1A852D:: @ 81A852D
+ .string "Okay, that makes sense.\p"
+ .string "The next question might be a little\n"
+ .string "on the tough side.\p"
+ .string "Here goes...\p"
+ .string "What do POKéMON mean to you?$"
+
+SlateportCity_PokemonFanClub_Text_1A85A6:: @ 81A85A6
+ .string "I see!\p"
+ .string "Hmhm...\p"
+ .string "Okay!\n"
+ .string "Thanks for helping me out.\p"
+ .string "It was fun and enlightening chatting\n"
+ .string "with you.\p"
+ .string "It’s possible that our interview will end\n"
+ .string "up on TV. Tune in and check!\p"
+ .string "Okay, that’s all.\n"
+ .string "Bye-bye!$"
+
+SlateportCity_PokemonFanClub_Text_1A8667:: @ 81A8667
+ .string "Oh, okay...\p"
+ .string "Well, if you get the urge to tell me\n"
+ .string "about POKéMON, I’ll be here!$"
+
+SlateportCity_PokemonFanClub_Text_1A86B5:: @ 81A86B5
+ .string "I enjoy this job - you get to learn so\n"
+ .string "much about POKéMON by doing\l"
+ .string "interviews.$"
+
+SlateportCity_PokemonFanClub_Text_1A8704:: @ 81A8704
+ .string "Hi, you seem to be very close to your\n"
+ .string "{STR_VAR_1}.\p"
+ .string "Do you know what?\n"
+ .string "I’m a TV reporter.\p"
+ .string "I travel around interviewing people\n"
+ .string "about POKéMON.\p"
+ .string "I’m wondering if you’d be willing to tell\n"
+ .string "me a little abut your {STR_VAR_1}?$"
+
+SlateportCity_PokemonFanClub_Text_1A87CA:: @ 81A87CA
+ .string "Wow, thank you!\p"
+ .string "Okay, then, please tell me anything you’d\n"
+ .string "like about your {STR_VAR_1}.$"
+
+SlateportCity_PokemonFanClub_Text_1A8818:: @ 81A8818
+ .string "Wow...\n"
+ .string "That’s an interesting account.\p"
+ .string "You really are tight with {STR_VAR_1},\n"
+ .string "aren’t you?\p"
+ .string "I get the feeling that your account\n"
+ .string "will make a great TV story.\p"
+ .string "I promise that I’ll turn this into\n"
+ .string "an entertaining show.\l"
+ .string "Keep your eyes out for it.\p"
+ .string "Okay, that’s all.\n"
+ .string "Bye-bye!$"
+
+ .incbin "baserom.gba", 0x1a8917, 0x968
+
+SlateportCity_OceanicMuseum_1F_Text_1A927F:: @ 81A927F
+ .string "Oh?\n"
+ .string "Do you perhaps like POKéMON?\p"
+ .string "I’m on assignment with the TV network.\p"
+ .string "I’m gathering stories on POKéMON and\n"
+ .string "TRAINERS that occurred recently.\p"
+ .string "If you don’t mind, could you tell me\n"
+ .string "something about yourself?$"
+
+SlateportCity_OceanicMuseum_1F_Text_1A934C:: @ 81A934C
+ .string "I’m gathering stories on POKéMON and\n"
+ .string "TRAINERS that occurred recently.\p"
+ .string "If you don’t mind, could you tell me\n"
+ .string "something about yourself?$"
+
+SlateportCity_OceanicMuseum_1F_Text_1A93D1:: @ 81A93D1
+ .string "Oh, you will?\n"
+ .string "Thank you!\p"
+ .string "Then, please, tell me anything of\n"
+ .string "interest that you experienced recently\l"
+ .string "involving POKéMON.$"
+
+SlateportCity_OceanicMuseum_1F_Text_1A9446:: @ 81A9446
+ .string "Oh, I see...\p"
+ .string "Well, if you do have an interesting\n"
+ .string "story to tell, please let me know.$"
+
+SlateportCity_OceanicMuseum_1F_Text_1A949A:: @ 81A949A
+ .string "Oh, what an uplifting story!\p"
+ .string "I’ll be sure to get your story told\n"
+ .string "on television.\p"
+ .string "It should be aired sometime, I think,\n"
+ .string "so please look forward to it.$"
+
+SlateportCity_OceanicMuseum_1F_Text_1A952E:: @ 81A952E
+ .string "Hmmm...\n"
+ .string "I’ve got a good story for a TV program.\p"
+ .string "I’d better write it up in a hurry!$"
+
+ .incbin "baserom.gba", 0x1a9581, 0x2957
+
+Route111_Text_1ABED8:: @ 81ABED8
+ .string "GABBY: Oh! We’ve just spotted a tough-\n"
+ .string "looking TRAINER here of all places!\p"
+ .string "Okay, roll camera!\n"
+ .string "Let’s get this interview.$"
+
+Route111_Text_1ABF50:: @ 81ABF50
+Route118_Text_1ABF50:: @ 81ABF50
+Route120_Text_1ABF50:: @ 81ABF50
+ .string "GABBY: Oh! You’re {PLAYER}! Hi!\n"
+ .string "Do you remember us from last time?\p"
+ .string "Can you show us how much stronger\n"
+ .string "you’ve become? Okay, cue interview!$"
+
+Route111_Text_1ABFD3:: @ 81ABFD3
+ .string "GABBY: My eyes didn’t lie!\n"
+ .string "I did discover an astonishing TRAINER!$"
+
+Route111_Text_1AC015:: @ 81AC015
+ .string "GABBY: Awesome! Awesome!\n"
+ .string "Who are you?!\p"
+ .string "I knew we were onto something wild\n"
+ .string "when we spotted you!\p"
+ .string "Oh, please let me explain. We travel\n"
+ .string "around everywhere interviewing all\l"
+ .string "sorts of TRAINERS.\p"
+ .string "So, would you give us a bit of your time\n"
+ .string "for an interview?$"
+
+Route111_Text_1AC10A:: @ 81AC10A
+ .string "GABBY: “{STR_VAR_1}!”\p"
+ .string "Do you remember? That’s the quote you\n"
+ .string "gave us as the battle clincher last time.\p"
+ .string "I never, ever forget stuff like that!$"
+
+Route111_Text_1AC18D:: @ 81AC18D
+ .string "The last time we battled, you stomped\n"
+ .string "us before we could brace ourselves...\p"
+ .string "Anyway, what do you think?\n"
+ .string "Do you want to be interviewed again?$"
+
+Route111_Text_1AC219:: @ 81AC219
+ .string "The last time we battled, didn’t you\n"
+ .string "throw a POKé BALL at us?\p"
+ .string "We were shocked! So we told everyone,\n"
+ .string "just everyone, about it!\p"
+ .string "Anyway, what do you think?\n"
+ .string "Do you want to be interviewed again?$"
+
+Route111_Text_1AC2D6:: @ 81AC2D6
+ .string "The last time we battled, your item\n"
+ .string "skills cleverly did us in.\p"
+ .string "Anyway, what do you think?\n"
+ .string "Do you want to be interviewed again?$"
+
+Route111_Text_1AC355:: @ 81AC355
+ .string "The last time we battled, we managed\n"
+ .string "to look respectable.\p"
+ .string "Anyway, what do you think?\n"
+ .string "Do you want to be interviewed again?$"
+
+Route111_Text_1AC3CF:: @ 81AC3CF
+ .string "Anyway, what do you think?\n"
+ .string "Do you want to be interviewed again?$"
+
+Route111_Text_1AC40F:: @ 81AC40F
+ .string "You will?\n"
+ .string "Thank you!\p"
+ .string "Okay, I need you to describe your\n"
+ .string "feelings about our battle, but it\l"
+ .string "has to be short and sweet. Go!$"
+
+Route111_Text_1AC487:: @ 81AC487
+ .string "GABBY: Mmm, yeah!\n"
+ .string "That’s the perfect clincher!\p"
+ .string "I get the feeling that this will make\n"
+ .string "a great TV show.\p"
+ .string "There’s a chance that they’ll air this\n"
+ .string "on TV, so make sure to look for us!\p"
+ .string "Okay!\n"
+ .string "We’ll be seeing you!$"
+
+Route111_Text_1AC553:: @ 81AC553
+ .string "GABBY: Oh...\p"
+ .string "Okay, but don’t give up!\n"
+ .string "We’ll be keeping an eye out for you!$"
+
+Route111_Text_1AC59E:: @ 81AC59E
+Route118_Text_1AC59E:: @ 81AC59E
+Route120_Text_1AC59E:: @ 81AC59E
+ .string "GABBY: We’ll be keeping an eye out\n"
+ .string "for you!$"
+
+Route111_Text_1AC5CA:: @ 81AC5CA
+Route118_Text_1AC5CA:: @ 81AC5CA
+Route120_Text_1AC5CA:: @ 81AC5CA
+ .string "GABBY: Is there a strong TRAINER\n"
+ .string "anywhere with a lot of POKéMON?$"
+
+Route111_Text_1AC60B:: @ 81AC60B
+ .string "GABBY: Wow, you are something!\p"
+ .string "You’ve gotten a lot stronger - a lot -\n"
+ .string "since we last battled.\p"
+ .string "We were right about you when we\n"
+ .string "spotted you as a hot TRAINER.\p"
+ .string "So, anyway, what do you think?\n"
+ .string "Are you willing to give us an interview\l"
+ .string "this time?$"
+
+Route111_Text_1AC6F8:: @ 81AC6F8
+Route118_Text_1AC6F8:: @ 81AC6F8
+Route120_Text_1AC6F8:: @ 81AC6F8
+ .string "GABBY: That was an intense battle!\n"
+ .string "Did you get all that on camera?$"
+
+Route111_Text_1AC73B:: @ 81AC73B
+ .string "TY: Hey, lookie here! A tough-looking\n"
+ .string "TRAINER here, of all places!\l"
+ .string "Camera’s rolling!$"
+
+Route111_Text_1AC790:: @ 81AC790
+Route118_Text_1AC790:: @ 81AC790
+Route120_Text_1AC790:: @ 81AC790
+ .string "TY: Hey, lookie here!\n"
+ .string "I remember you!\p"
+ .string "I’ll get this battle all on this\n"
+ .string "here camera!$"
+
+Route111_Text_1AC7E4:: @ 81AC7E4
+Route118_Text_1AC7E4:: @ 81AC7E4
+Route120_Text_1AC7E4:: @ 81AC7E4
+ .string "TY: You’re a natural!\n"
+ .string "Got me some prime footage right here!$"
+
+Route111_Text_1AC820:: @ 81AC820
+Route118_Text_1AC820:: @ 81AC820
+Route120_Text_1AC820:: @ 81AC820
+ .string "TY: Do you only have the one POKéMON\n"
+ .string "and that’s it?\p"
+ .string "If you had more POKéMON, it’d make for\n"
+ .string "better footage, but...$"
+
+Route111_Text_1AC892:: @ 81AC892
+ .string "TY: Yep, we sure spotted a hot TRAINER.\n"
+ .string "This is a huge scoop for us!$"
+
+Route111_Text_1AC8D7:: @ 81AC8D7
+Route118_Text_1AC8D7:: @ 81AC8D7
+Route120_Text_1AC8D7:: @ 81AC8D7
+ .string "TY: Yep, I got it all.\n"
+ .string "That whole battle’s on camera.$"
+
+ .incbin "baserom.gba", 0x1ac90d, 0x1539
+
+BattleTower_Lobby_EventScript_1ADE46:: @ 81ADE46
+FallarborTown_ContestLobby_EventScript_1ADE46:: @ 81ADE46
+SlateportCity_OceanicMuseum_1F_EventScript_1ADE46:: @ 81ADE46
+SlateportCity_PokemonFanClub_EventScript_1ADE46:: @ 81ADE46
+ special 68
+ inccounter 6
+ release
+ end
+
+SlateportCity_PokemonFanClub_EventScript_1ADE4D:: @ 81ADE4D
+ setvar 0x8005, 1
+ special 67
+ compare RESULT, 1
+ jumpeq SlateportCity_PokemonFanClub_EventScript_1ADED6
+ copyvar 0x8009, 0x8006
+ msgbox SlateportCity_PokemonFanClub_Text_1A8704, 5
+ compare RESULT, 1
+ jumpeq SlateportCity_PokemonFanClub_EventScript_1ADE84
+ compare RESULT, 0
+ jumpeq SlateportCity_PokemonFanClub_EventScript_1ADEB9
+ end
+
+SlateportCity_PokemonFanClub_EventScript_1ADE84:: @ 81ADE84
+ msgbox SlateportCity_PokemonFanClub_Text_1A87CA, 4
+ setvar 0x8004, 5
+ copyvar 0x8005, 0x8009
+ setvar 0x8006, 1
+ call SlateportCity_PokemonFanClub_EventScript_1A00F3
+ lock
+ faceplayer
+ compare RESULT, 1
+ jumpeq SlateportCity_PokemonFanClub_EventScript_1ADEC3
+ compare RESULT, 0
+ jumpeq SlateportCity_PokemonFanClub_EventScript_1ADEB9
+ end
+
+SlateportCity_PokemonFanClub_EventScript_1ADEB9:: @ 81ADEB9
+ msgbox SlateportCity_PokemonFanClub_Text_1A8667, 4
+ release
+ end
+
+SlateportCity_PokemonFanClub_EventScript_1ADEC3:: @ 81ADEC3
+ msgbox SlateportCity_PokemonFanClub_Text_1A8818, 4
+ setvar 0x8005, 1
+ jump SlateportCity_PokemonFanClub_EventScript_1ADE46
+ end
+
+SlateportCity_PokemonFanClub_EventScript_1ADED6:: @ 81ADED6
+ msgbox SlateportCity_PokemonFanClub_Text_1A86B5, 4
+ release
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_1ADEE0:: @ 81ADEE0
+ lock
+ faceplayer
+ setvar 0x8005, 2
+ special 67
+ compare RESULT, 1
+ jumpeq SlateportCity_OceanicMuseum_1F_EventScript_1ADF96
+ copyvar 0x8009, 0x8006
+ checkflag 105
+ jumpeq SlateportCity_OceanicMuseum_1F_EventScript_1ADF25
+ setflag 105
+ msgbox SlateportCity_OceanicMuseum_1F_Text_1A927F, 5
+ compare RESULT, 1
+ jumpeq SlateportCity_OceanicMuseum_1F_EventScript_1ADF44
+ compare RESULT, 0
+ jumpeq SlateportCity_OceanicMuseum_1F_EventScript_1ADF79
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_1ADF25:: @ 81ADF25
+ msgbox SlateportCity_OceanicMuseum_1F_Text_1A934C, 5
+ compare RESULT, 1
+ jumpeq SlateportCity_OceanicMuseum_1F_EventScript_1ADF44
+ compare RESULT, 0
+ jumpeq SlateportCity_OceanicMuseum_1F_EventScript_1ADF79
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_1ADF44:: @ 81ADF44
+ msgbox SlateportCity_OceanicMuseum_1F_Text_1A93D1, 4
+ setvar 0x8004, 5
+ copyvar 0x8005, 0x8009
+ setvar 0x8006, 0
+ call SlateportCity_OceanicMuseum_1F_EventScript_1A00F3
+ lock
+ faceplayer
+ compare RESULT, 1
+ jumpeq SlateportCity_OceanicMuseum_1F_EventScript_1ADF83
+ compare RESULT, 0
+ jumpeq SlateportCity_OceanicMuseum_1F_EventScript_1ADF79
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_1ADF79:: @ 81ADF79
+ msgbox SlateportCity_OceanicMuseum_1F_Text_1A9446, 4
+ release
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_1ADF83:: @ 81ADF83
+ msgbox SlateportCity_OceanicMuseum_1F_Text_1A949A, 4
+ setvar 0x8005, 2
+ jump SlateportCity_OceanicMuseum_1F_EventScript_1ADE46
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_1ADF96:: @ 81ADF96
+ msgbox SlateportCity_OceanicMuseum_1F_Text_1A952E, 4
+ release
+ end
+
+SlateportCity_PokemonFanClub_EventScript_1ADFA0:: @ 81ADFA0
+ lock
+ faceplayer
+ specialval RESULT, 69
+ compare RESULT, 0
+ jumpeq SlateportCity_PokemonFanClub_EventScript_1ADE4D
+ setvar 0x8005, 3
+ special 67
+ compare RESULT, 1
+ jumpeq SlateportCity_PokemonFanClub_EventScript_1AE0AC
+ copyvar 0x8009, 0x8006
+ msgbox SlateportCity_PokemonFanClub_Text_1A82F1, 5
+ compare RESULT, 1
+ jumpeq SlateportCity_PokemonFanClub_EventScript_1ADFE9
+ compare RESULT, 0
+ jumpeq SlateportCity_PokemonFanClub_EventScript_1AE0A2
+ end
+
+SlateportCity_PokemonFanClub_EventScript_1ADFE9:: @ 81ADFE9
+ msgbox SlateportCity_PokemonFanClub_Text_1A83D0, 4
+ random 3
+ copyvar 0x800a, RESULT
+ switch RESULT
+ case 0, SlateportCity_PokemonFanClub_EventScript_1AE020
+ case 1, SlateportCity_PokemonFanClub_EventScript_1AE02E
+ case 2, SlateportCity_PokemonFanClub_EventScript_1AE03C
+ end
+
+SlateportCity_PokemonFanClub_EventScript_1AE020:: @ 81AE020
+ msgbox SlateportCity_PokemonFanClub_Text_1A8414, 4
+ jump SlateportCity_PokemonFanClub_EventScript_1AE04A
+ end
+
+SlateportCity_PokemonFanClub_EventScript_1AE02E:: @ 81AE02E
+ msgbox SlateportCity_PokemonFanClub_Text_1A8470, 4
+ jump SlateportCity_PokemonFanClub_EventScript_1AE04A
+ end
+
+SlateportCity_PokemonFanClub_EventScript_1AE03C:: @ 81AE03C
+ msgbox SlateportCity_PokemonFanClub_Text_1A84D5, 4
+ jump SlateportCity_PokemonFanClub_EventScript_1AE04A
+ end
+
+SlateportCity_PokemonFanClub_EventScript_1AE04A:: @ 81AE04A
+ setvar 0x8004, 7
+ copyvar 0x8005, 0x8009
+ setvar 0x8006, 0
+ call SlateportCity_PokemonFanClub_EventScript_1A00F3
+ lock
+ faceplayer
+ compare RESULT, 0
+ jumpeq SlateportCity_PokemonFanClub_EventScript_1AE0A2
+ msgbox SlateportCity_PokemonFanClub_Text_1A852D, 4
+ setvar 0x8006, 1
+ call SlateportCity_PokemonFanClub_EventScript_1A00F3
+ lock
+ faceplayer
+ compare RESULT, 0
+ jumpeq SlateportCity_PokemonFanClub_EventScript_1AE0A2
+ msgbox SlateportCity_PokemonFanClub_Text_1A85A6, 4
+ copyvar 0x8007, 0x800a
+ setvar 0x8005, 3
+ jump SlateportCity_PokemonFanClub_EventScript_1ADE46
+ end
+
+SlateportCity_PokemonFanClub_EventScript_1AE0A2:: @ 81AE0A2
+ msgbox SlateportCity_PokemonFanClub_Text_1A8667, 4
+ release
+ end
+
+SlateportCity_PokemonFanClub_EventScript_1AE0AC:: @ 81AE0AC
+ msgbox SlateportCity_PokemonFanClub_Text_1A86B5, 4
+ release
+ end
+
+FallarborTown_ContestLobby_EventScript_1AE0B6:: @ 81AE0B6
+LilycoveCity_ContestLobby_EventScript_1AE0B6:: @ 81AE0B6
+SlateportCity_ContestLobby_EventScript_1AE0B6:: @ 81AE0B6
+VerdanturfTown_ContestLobby_EventScript_1AE0B6:: @ 81AE0B6
+ lock
+ faceplayer
+ checkflag 2
+ jumpeq FallarborTown_ContestLobby_EventScript_1AE17E
+ setvar 0x8005, 6
+ special 67
+ compare RESULT, 1
+ jumpeq FallarborTown_ContestLobby_EventScript_1AE17E
+ copyvar 0x8009, 0x8006
+ msgbox FallarborTown_ContestLobby_Text_1A6F7C, 5
+ compare RESULT, 1
+ jumpeq FallarborTown_ContestLobby_EventScript_1AE0F8
+ compare RESULT, 0
+ jumpeq FallarborTown_ContestLobby_EventScript_1AE12D
+ end
+
+FallarborTown_ContestLobby_EventScript_1AE0F8:: @ 81AE0F8
+ msgbox FallarborTown_ContestLobby_Text_1A704E, 4
+ setvar 0x8004, 11
+ copyvar 0x8005, 0x8009
+ setvar 0x8006, 0
+ call FallarborTown_ContestLobby_EventScript_1A00F3
+ lock
+ faceplayer
+ compare RESULT, 1
+ jumpeq FallarborTown_ContestLobby_EventScript_1AE137
+ compare RESULT, 0
+ jumpeq FallarborTown_ContestLobby_EventScript_1AE12D
+ end
+
+FallarborTown_ContestLobby_EventScript_1AE12D:: @ 81AE12D
+ msgbox FallarborTown_ContestLobby_Text_1A7256, 4
+ release
+ end
+
+FallarborTown_ContestLobby_EventScript_1AE137:: @ 81AE137
+ setvar 0x8004, 24
+ special 70
+ msgbox FallarborTown_ContestLobby_Text_1A70A5, 4
+ setvar 0x8004, 11
+ copyvar 0x8005, 0x8009
+ setvar 0x8006, 1
+ call FallarborTown_ContestLobby_EventScript_1A00F3
+ lock
+ faceplayer
+ compare RESULT, 0
+ jumpeq FallarborTown_ContestLobby_EventScript_1AE12D
+ msgbox FallarborTown_ContestLobby_Text_1A7153, 4
+ setflag 2
+ setvar 0x8005, 6
+ jump FallarborTown_ContestLobby_EventScript_1ADE46
+ end
+
+FallarborTown_ContestLobby_EventScript_1AE17E:: @ 81AE17E
+ msgbox FallarborTown_ContestLobby_Text_1A72A8, 4
+ release
+ end
+
+FallarborTown_ContestLobby_EventScript_1AE188:: @ 81AE188
+LilycoveCity_ContestLobby_EventScript_1AE188:: @ 81AE188
+SlateportCity_ContestLobby_EventScript_1AE188:: @ 81AE188
+VerdanturfTown_ContestLobby_EventScript_1AE188:: @ 81AE188
+ compare 0x4086, 2
+ jumpif 5, FallarborTown_ContestLobby_EventScript_1AE1FE
+ setvar 0x8005, 6
+ special 67
+ compare RESULT, 1
+ jumpeq FallarborTown_ContestLobby_EventScript_1AE1FE
+ switch 0x4088
+ case 0, FallarborTown_ContestLobby_EventScript_1AE1FE
+ case 2, FallarborTown_ContestLobby_EventScript_1AE1EE
+ case 1, FallarborTown_ContestLobby_EventScript_1AE1F2
+ case 3, FallarborTown_ContestLobby_EventScript_1AE1F6
+ case 4, FallarborTown_ContestLobby_EventScript_1AE1FA
+ case 5, FallarborTown_ContestLobby_EventScript_1AE1FE
+ end
+
+FallarborTown_ContestLobby_EventScript_1AE1EE:: @ 81AE1EE
+ clearflag 800
+ return
+
+FallarborTown_ContestLobby_EventScript_1AE1F2:: @ 81AE1F2
+ clearflag 801
+ return
+
+FallarborTown_ContestLobby_EventScript_1AE1F6:: @ 81AE1F6
+ clearflag 803
+ return
+
+FallarborTown_ContestLobby_EventScript_1AE1FA:: @ 81AE1FA
+ clearflag 802
+ return
+
+FallarborTown_ContestLobby_EventScript_1AE1FE:: @ 81AE1FE
+ return
+
+BattleTower_Lobby_EventScript_1AE1FF:: @ 81AE1FF
+ lock
+ faceplayer
+ checkflag 2
+ jumpeq BattleTower_Lobby_EventScript_1AE2E3
+ setvar 0x8005, 7
+ special 67
+ compare RESULT, 1
+ jumpeq BattleTower_Lobby_EventScript_1AE2E3
+ copyvar 0x8009, 0x8006
+ msgbox BattleTower_Lobby_Text_1A776D, 5
+ compare RESULT, 1
+ jumpeq BattleTower_Lobby_EventScript_1AE241
+ compare RESULT, 0
+ jumpeq BattleTower_Lobby_EventScript_1AE297
+ end
+
+BattleTower_Lobby_EventScript_1AE241:: @ 81AE241
+ message BattleTower_Lobby_Text_1A7823
+ waittext
+ multichoice 19, 8, 45, 1
+ copyvar 0x8008, RESULT
+ compare RESULT, 0
+ callif 1, BattleTower_Lobby_EventScript_1AE2A1
+ compare RESULT, 1
+ callif 1, BattleTower_Lobby_EventScript_1AE2AA
+ msgbox BattleTower_Lobby_Text_1A79EB, 4
+ setvar 0x8004, 12
+ copyvar 0x8005, 0x8009
+ call BattleTower_Lobby_EventScript_1A00F3
+ lock
+ faceplayer
+ compare RESULT, 1
+ jumpeq BattleTower_Lobby_EventScript_1AE2B3
+ compare RESULT, 0
+ jumpeq BattleTower_Lobby_EventScript_1AE2D9
+ end
+
+BattleTower_Lobby_EventScript_1AE297:: @ 81AE297
+ msgbox BattleTower_Lobby_Text_1A78B7, 4
+ release
+ end
+
+BattleTower_Lobby_EventScript_1AE2A1:: @ 81AE2A1
+ msgbox BattleTower_Lobby_Text_1A791B, 4
+ return
+
+BattleTower_Lobby_EventScript_1AE2AA:: @ 81AE2AA
+ msgbox BattleTower_Lobby_Text_1A7990, 4
+ return
+
+BattleTower_Lobby_EventScript_1AE2B3:: @ 81AE2B3
+ compare RESULT, 0
+ jumpeq BattleTower_Lobby_EventScript_1AE2D9
+ msgbox BattleTower_Lobby_Text_1A7A6E, 4
+ setflag 2
+ copyvar 0x8004, 0x8008
+ setvar 0x8005, 7
+ jump BattleTower_Lobby_EventScript_1ADE46
+ end
+
+BattleTower_Lobby_EventScript_1AE2D9:: @ 81AE2D9
+ msgbox BattleTower_Lobby_Text_1A7AE0, 4
+ release
+ end
+
+BattleTower_Lobby_EventScript_1AE2E3:: @ 81AE2E3
+ msgbox BattleTower_Lobby_Text_1A7B66, 4
+ release
+ end
+
+BattleTower_Lobby_EventScript_1AE2ED:: @ 81AE2ED
+ compare 0x40bc, 0
+ jumpeq BattleTower_Lobby_EventScript_1AE30F
+ setvar 0x8005, 7
+ special 67
+ compare RESULT, 1
+ jumpeq BattleTower_Lobby_EventScript_1AE30F
+ clearflag 918
+ return
+
+BattleTower_Lobby_EventScript_1AE30F:: @ 81AE30F
+ setflag 918
+ return
+
+Route111_EventScript_1AE313:: @ 81AE313
+Route118_EventScript_1AE313:: @ 81AE313
+Route120_EventScript_1AE313:: @ 81AE313
+ settrainerflag 56
+ specialval RESULT, 172
+ switch RESULT
+ case 0, Route111_EventScript_1AE384
+ case 1, Route111_EventScript_1AE38A
+ case 2, Route111_EventScript_1AE395
+ case 3, Route111_EventScript_1AE3A0
+ case 4, Route111_EventScript_1AE3AB
+ case 5, Route111_EventScript_1AE3B6
+ case 6, Route111_EventScript_1AE3C1
+ case 7, Route111_EventScript_1AE3CC
+ case 8, Route111_EventScript_1AE3D7
+ end
+
+Route111_EventScript_1AE384:: @ 81AE384
+ call Route111_EventScript_1AE3E6
+ return
+
+Route111_EventScript_1AE38A:: @ 81AE38A
+ call Route111_EventScript_1AE3EE
+ call Route111_EventScript_1AE3E2
+ return
+
+Route111_EventScript_1AE395:: @ 81AE395
+ call Route111_EventScript_1AE3F6
+ call Route111_EventScript_1AE3EA
+ return
+
+Route111_EventScript_1AE3A0:: @ 81AE3A0
+ call Route111_EventScript_1AE3FE
+ call Route111_EventScript_1AE3F2
+ return
+
+Route111_EventScript_1AE3AB:: @ 81AE3AB
+ call Route111_EventScript_1AE406
+ call Route111_EventScript_1AE3FA
+ return
+
+Route111_EventScript_1AE3B6:: @ 81AE3B6
+ call Route111_EventScript_1AE40E
+ call Route111_EventScript_1AE402
+ return
+
+Route111_EventScript_1AE3C1:: @ 81AE3C1
+ call Route111_EventScript_1AE416
+ call Route111_EventScript_1AE40A
+ return
+
+Route111_EventScript_1AE3CC:: @ 81AE3CC
+ call Route111_EventScript_1AE41E
+ call Route111_EventScript_1AE412
+ return
+
+Route111_EventScript_1AE3D7:: @ 81AE3D7
+ call Route111_EventScript_1AE40E
+ call Route111_EventScript_1AE41A
+ return
+
+Route111_EventScript_1AE3E2:: @ 81AE3E2
+ setflag 796
+ return
+
+Route111_EventScript_1AE3E6:: @ 81AE3E6
+ clearflag 796
+ return
+
+Route111_EventScript_1AE3EA:: @ 81AE3EA
+ setflag 797
+ return
+
+Route111_EventScript_1AE3EE:: @ 81AE3EE
+ clearflag 797
+ return
+
+Route111_EventScript_1AE3F2:: @ 81AE3F2
+ setflag 798
+ return
+
+Route111_EventScript_1AE3F6:: @ 81AE3F6
+ clearflag 798
+ return
+
+Route111_EventScript_1AE3FA:: @ 81AE3FA
+ setflag 799
+ return
+
+Route111_EventScript_1AE3FE:: @ 81AE3FE
+ clearflag 799
+ return
+
+Route111_EventScript_1AE402:: @ 81AE402
+ setflag 901
+ return
+
+Route111_EventScript_1AE406:: @ 81AE406
+ clearflag 901
+ return
+
+Route111_EventScript_1AE40A:: @ 81AE40A
+ setflag 902
+ return
+
+Route111_EventScript_1AE40E:: @ 81AE40E
+ clearflag 902
+ return
+
+Route111_EventScript_1AE412:: @ 81AE412
+ setflag 903
+ return
+
+Route111_EventScript_1AE416:: @ 81AE416
+ clearflag 903
+ return
+
+Route111_EventScript_1AE41A:: @ 81AE41A
+ setflag 904
+ return
+
+Route111_EventScript_1AE41E:: @ 81AE41E
+ clearflag 904
+ return
+
+Route111_EventScript_1AE422:: @ 81AE422
+ trainerbattle 6, 51, 0, Route111_Text_1ABED8, Route111_Text_1ABFD3, Route111_Text_1AC5CA, Route111_EventScript_1AE5A2
+ msgbox Route111_Text_1AC59E, 4
+ release
+ end
+
+Route111_EventScript_1AE442:: @ 81AE442
+ trainerbattle 6, 51, 0, Route111_Text_1AC73B, Route111_Text_1AC892, Route111_Text_1AC820, Route111_EventScript_1AE5A2
+ msgbox Route111_Text_1AC7E4, 4
+ release
+ end
+
+Route118_EventScript_1AE462:: @ 81AE462
+ trainerbattle 6, 52, 0, Route118_Text_1ABF50, Route118_Text_1AC6F8, Route118_Text_1AC5CA, Route118_EventScript_1AE60F
+ msgbox Route118_Text_1AC59E, 4
+ release
+ end
+
+Route118_EventScript_1AE482:: @ 81AE482
+ trainerbattle 6, 52, 0, Route118_Text_1AC790, Route118_Text_1AC8D7, Route118_Text_1AC820, Route118_EventScript_1AE60F
+ msgbox Route118_Text_1AC7E4, 4
+ release
+ end
+
+Route120_EventScript_1AE4A2:: @ 81AE4A2
+ trainerbattle 6, 53, 0, Route120_Text_1ABF50, Route120_Text_1AC6F8, Route120_Text_1AC5CA, Route120_EventScript_1AE60F
+ msgbox Route120_Text_1AC59E, 4
+ release
+ end
+
+Route120_EventScript_1AE4C2:: @ 81AE4C2
+ trainerbattle 6, 53, 0, Route120_Text_1AC790, Route120_Text_1AC8D7, Route120_Text_1AC820, Route120_EventScript_1AE60F
+ msgbox Route120_Text_1AC7E4, 4
+ release
+ end
+
+Route111_EventScript_1AE4E2:: @ 81AE4E2
+ trainerbattle 6, 54, 0, Route111_Text_1ABF50, Route111_Text_1AC6F8, Route111_Text_1AC5CA, Route111_EventScript_1AE60F
+ msgbox Route111_Text_1AC59E, 4
+ release
+ end
+
+Route111_EventScript_1AE502:: @ 81AE502
+ trainerbattle 6, 54, 0, Route111_Text_1AC790, Route111_Text_1AC8D7, Route111_Text_1AC820, Route111_EventScript_1AE60F
+ msgbox Route111_Text_1AC7E4, 4
+ release
+ end
+
+Route118_EventScript_1AE522:: @ 81AE522
+ trainerbattle 6, 55, 0, Route118_Text_1ABF50, Route118_Text_1AC6F8, Route118_Text_1AC5CA, Route118_EventScript_1AE60F
+ msgbox Route118_Text_1AC59E, 4
+ release
+ end
+
+Route118_EventScript_1AE542:: @ 81AE542
+ trainerbattle 6, 55, 0, Route118_Text_1AC790, Route118_Text_1AC8D7, Route118_Text_1AC820, Route118_EventScript_1AE60F
+ msgbox Route118_Text_1AC7E4, 4
+ release
+ end
+
+Route111_EventScript_1AE562:: @ 81AE562
+Route118_EventScript_1AE562:: @ 81AE562
+Route120_EventScript_1AE562:: @ 81AE562
+ trainerbattle 6, 56, 0, Route111_Text_1ABF50, Route111_Text_1AC6F8, Route111_Text_1AC5CA, Route111_EventScript_1AE60F
+ msgbox Route111_Text_1AC59E, 4
+ release
+ end
+
+Route111_EventScript_1AE582:: @ 81AE582
+Route118_EventScript_1AE582:: @ 81AE582
+Route120_EventScript_1AE582:: @ 81AE582
+ trainerbattle 6, 56, 0, Route111_Text_1AC790, Route111_Text_1AC8D7, Route111_Text_1AC820, Route111_EventScript_1AE60F
+ msgbox Route111_Text_1AC7E4, 4
+ release
+ end
+
+Route111_EventScript_1AE5A2:: @ 81AE5A2
+ special 174
+ special 179
+ compare FACING, 2
+ callif 1, Route111_EventScript_1AE5E0
+ compare FACING, 1
+ callif 1, Route111_EventScript_1AE5EB
+ compare FACING, 4
+ callif 1, Route111_EventScript_1AE5FD
+ checkflag 1
+ jumpeq Route111_EventScript_1AE73A
+ msgbox Route111_Text_1AC015, 5
+ jump Route111_EventScript_1AE6F3
+ end
+
+Route111_EventScript_1AE5E0:: @ 81AE5E0
+ move 0x8004, Route111_Movement_1AE699
+ waitmove 0
+ return
+
+Route111_EventScript_1AE5EB:: @ 81AE5EB
+ move 0x8004, Route111_Movement_1AE69B
+ move 0x8005, Route111_Movement_1A0841
+ waitmove 0
+ return
+
+Route111_EventScript_1AE5FD:: @ 81AE5FD
+ move 0x8004, Route111_Movement_1AE69D
+ move 0x8005, Route111_Movement_1A083F
+ waitmove 0
+ return
+
+Route111_EventScript_1AE60F:: @ 81AE60F
+Route118_EventScript_1AE60F:: @ 81AE60F
+Route120_EventScript_1AE60F:: @ 81AE60F
+ special 174
+ special 179
+ compare FACING, 2
+ callif 1, Route111_EventScript_1AE5E0
+ compare FACING, 1
+ callif 1, Route111_EventScript_1AE5EB
+ compare FACING, 4
+ callif 1, Route111_EventScript_1AE5FD
+ checkflag 1
+ jumpeq Route111_EventScript_1AE73A
+ specialval RESULT, 177
+ compare RESULT, 0
+ jumpeq Route111_EventScript_1AE69F
+ msgbox Route111_Text_1AC10A, 4
+ specialval RESULT, 178
+ switch RESULT
+ case 0, Route111_EventScript_1AE6AD
+ case 1, Route111_EventScript_1AE6BB
+ case 2, Route111_EventScript_1AE6C9
+ case 3, Route111_EventScript_1AE6D7
+ case 4, Route111_EventScript_1AE6E5
+ end
+
+Route111_Movement_1AE699:: @ 81AE699
+ step_1d
+ step_end
+
+Route111_Movement_1AE69B:: @ 81AE69B
+ step_1e
+ step_end
+
+Route111_Movement_1AE69D:: @ 81AE69D
+ step_1f
+ step_end
+
+Route111_EventScript_1AE69F:: @ 81AE69F
+ msgbox Route111_Text_1AC60B, 5
+ jump Route111_EventScript_1AE6F3
+ end
+
+Route111_EventScript_1AE6AD:: @ 81AE6AD
+ msgbox Route111_Text_1AC3CF, 5
+ jump Route111_EventScript_1AE6F3
+ end
+
+Route111_EventScript_1AE6BB:: @ 81AE6BB
+ msgbox Route111_Text_1AC18D, 5
+ jump Route111_EventScript_1AE6F3
+ end
+
+Route111_EventScript_1AE6C9:: @ 81AE6C9
+ msgbox Route111_Text_1AC219, 5
+ jump Route111_EventScript_1AE6F3
+ end
+
+Route111_EventScript_1AE6D7:: @ 81AE6D7
+ msgbox Route111_Text_1AC2D6, 5
+ jump Route111_EventScript_1AE6F3
+ end
+
+Route111_EventScript_1AE6E5:: @ 81AE6E5
+ msgbox Route111_Text_1AC355, 5
+ jump Route111_EventScript_1AE6F3
+ end
+
+Route111_EventScript_1AE6F3:: @ 81AE6F3
+ compare RESULT, 0
+ jumpeq Route111_EventScript_1AE72D
+ msgbox Route111_Text_1AC40F, 4
+ setvar 0x8004, 10
+ call Route111_EventScript_1A00F3
+ lock
+ faceplayer
+ compare RESULT, 0
+ jumpeq Route111_EventScript_1AE72D
+ msgbox Route111_Text_1AC487, 4
+ special 173
+ setflag 1
+ release
+ end
+
+Route111_EventScript_1AE72D:: @ 81AE72D
+ msgbox Route111_Text_1AC553, 4
+ setflag 1
+ release
+ end
+
+Route111_EventScript_1AE73A:: @ 81AE73A
+ msgbox Route111_Text_1AC59E, 4
+ release
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1AE744:: @ 81AE744
+ special 97
+ switch RESULT
+ case 0, MauvilleCity_PokemonCenter_1F_EventScript_1AE784
+ case 1, MauvilleCity_PokemonCenter_1F_EventScript_1AE845
+ case 2, MauvilleCity_PokemonCenter_1F_EventScript_1AEBAB
+ case 3, MauvilleCity_PokemonCenter_1F_EventScript_1B0816
+ case 4, MauvilleCity_PokemonCenter_1F_EventScript_1B09EB
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1AE784:: @ 81AE784
+ lock
+ faceplayer
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1B0A91, 5
+ compare RESULT, 1
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1AE7A5
+ compare RESULT, 0
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1AE7C8
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1AE7A5:: @ 81AE7A5
+ setvar 0x8004, 0
+ special 103
+ pause 60
+ special 98
+ compare RESULT, 0
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1AE7D2
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1B0AED, 4
+ release
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1AE7C8:: @ 81AE7C8
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1B0AC3, 4
+ release
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1AE7D2:: @ 81AE7D2
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1B0B2C, 5
+ compare RESULT, 1
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1AE7F1
+ compare RESULT, 0
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1AE83B
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1AE7F1:: @ 81AE7F1
+ setvar 0x8004, 6
+ call MauvilleCity_PokemonCenter_1F_EventScript_1A00F3
+ lock
+ faceplayer
+ compare RESULT, 0
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1AE83B
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1B0BD0, 4
+ setvar 0x8004, 1
+ special 103
+ pause 60
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1B0BFA, 5
+ compare RESULT, 0
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1AE7F1
+ special 99
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1B0C23, 4
+ release
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1AE83B:: @ 81AE83B
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1B0BA6, 4
+ release
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1AE845:: @ 81AE845
+ lock
+ faceplayer
+ setflag 2054
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1B0C5B, 4
+ special 100
+ compare RESULT, 0
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1AE86A
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1B0CA7, 4
+ release
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1AE86A:: @ 81AE86A
+ special 102
+ compare RESULT, 1
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1AE882
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1B0D11, 4
+ release
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1AE882:: @ 81AE882
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1B0D75, 4
+ special 101
+ release
+ end
+
+MauvilleCity_PokemonCenter_1F_Text_1AE88F:: @ 81AE88F
+ .string "Hi, I’m the TRADER.\n"
+ .string "Want to trade decorations with me?$"
+
+MauvilleCity_PokemonCenter_1F_Text_1AE8C6:: @ 81AE8C6
+ .string "Oh...\n"
+ .string "I feel unwanted...$"
+
+MauvilleCity_PokemonCenter_1F_Text_1AE8DF:: @ 81AE8DF
+ .string "But we’ve traded decorations already,\n"
+ .string "you and I.$"
+
+MauvilleCity_PokemonCenter_1F_Text_1AE910:: @ 81AE910
+ .string "If you see any decorative item that\n"
+ .string "you want of mine, speak up.$"
+
+MauvilleCity_PokemonCenter_1F_Text_1AE950:: @ 81AE950
+ .string "You don’t want anything?\n"
+ .string "I feel unwanted...$"
+
+MauvilleCity_PokemonCenter_1F_Text_1AE97C:: @ 81AE97C
+ .string "That decorative item once belonged\n"
+ .string "to {STR_VAR_1}.\p"
+ .string "Do you want it?$"
+
+MauvilleCity_PokemonCenter_1F_Text_1AE9B6:: @ 81AE9B6
+ .string "Uh... Wait a second. You don’t have a\n"
+ .string "single piece of decoration!$"
+
+MauvilleCity_PokemonCenter_1F_Text_1AE9F8:: @ 81AE9F8
+ .string "Okay, pick the decoration that you’ll\n"
+ .string "trade to me.$"
+
+MauvilleCity_PokemonCenter_1F_Text_1AEA2B:: @ 81AEA2B
+ .string "You won’t trade with me?\n"
+ .string "I feel unwanted...$"
+
+MauvilleCity_PokemonCenter_1F_Text_1AEA57:: @ 81AEA57
+ .string "You’ve got all the {STR_VAR_2}S that can\n"
+ .string "be stored. You’ve no room for this.$"
+
+MauvilleCity_PokemonCenter_1F_Text_1AEA9B:: @ 81AEA9B
+ .string "Okay, so we’ll trade my {STR_VAR_3}\n"
+ .string "for your {STR_VAR_2}?$"
+
+MauvilleCity_PokemonCenter_1F_Text_1AEAC3:: @ 81AEAC3
+ .string "That piece of decoration is in use.\n"
+ .string "You can’t trade it.$"
+
+MauvilleCity_PokemonCenter_1F_Text_1AEAFB:: @ 81AEAFB
+ .string "Then we’ll trade!\n"
+ .string "I’ll send my decoration to your PC.$"
+
+MauvilleCity_PokemonCenter_1F_Text_1AEB31:: @ 81AEB31
+ .string "Oops! Sorry!\n"
+ .string "That’s a really rare piece of decoration.\l"
+ .string "I can’t trade that one away!\p"
+ .string "Can I interest you in something else?$"
+
+MauvilleCity_PokemonCenter_1F_EventScript_1AEBAB:: @ 81AEBAB
+ lock
+ faceplayer
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1AE88F, 5
+ compare RESULT, 0
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1AEBDA
+ special 114
+ compare RESULT, 1
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1AEBE3
+ message MauvilleCity_PokemonCenter_1F_Text_1AE910
+ waittext
+ jump MauvilleCity_PokemonCenter_1F_EventScript_1AEBEC
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1AEBDA:: @ 81AEBDA
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1AE8C6, 2
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1AEBE3:: @ 81AEBE3
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1AE8DF, 2
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1AEBEC:: @ 81AEBEC
+ special 113
+ waitstate
+ compare 0x8004, 0
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1AEC2D
+ compare 0x8004, 65535
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1AEC36
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1AE97C, 5
+ compare RESULT, 0
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1AEC42
+ special 115
+ compare RESULT, 1
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1AEC4E
+ jump MauvilleCity_PokemonCenter_1F_EventScript_1AEC57
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1AEC2D:: @ 81AEC2D
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1AE950, 2
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1AEC36:: @ 81AEC36
+ message MauvilleCity_PokemonCenter_1F_Text_1AEB31
+ waittext
+ jump MauvilleCity_PokemonCenter_1F_EventScript_1AEBEC
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1AEC42:: @ 81AEC42
+ message MauvilleCity_PokemonCenter_1F_Text_1AE910
+ waittext
+ jump MauvilleCity_PokemonCenter_1F_EventScript_1AEBEC
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1AEC4E:: @ 81AEC4E
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1AE9B6, 2
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1AEC57:: @ 81AEC57
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1AE9F8, 4
+ special 117
+ waitstate
+ compare 0x8006, 0
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1AECA6
+ compare 0x8006, 65535
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1AECAF
+ special 116
+ compare RESULT, 1
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1AECBD
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1AEA9B, 5
+ compare RESULT, 0
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1AEC57
+ special 118
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1AEAFB, 2
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1AECA6:: @ 81AECA6
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1AEA2B, 2
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1AECAF:: @ 81AECAF
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1AEAC3, 4
+ jump MauvilleCity_PokemonCenter_1F_EventScript_1AEC57
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1AECBD:: @ 81AECBD
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1AEA57, 2
+ end
+
+MauvilleCity_PokemonCenter_1F_Text_1AECC6:: @ 81AECC6
+ .string "I’m the STORYTELLER.\n"
+ .string "I’ll tell you tales of legendary\l"
+ .string "TRAINERS.\p"
+ .string "Will you hear my tale?$"
+
+MauvilleCity_PokemonCenter_1F_Text_1AED1D:: @ 81AED1D
+ .string "Oh...\n"
+ .string "I feel stifled...$"
+
+MauvilleCity_PokemonCenter_1F_Text_1AED35:: @ 81AED35
+ .string "I know of these legends.\n"
+ .string "Which tale will you have me tell?$"
+
+MauvilleCity_PokemonCenter_1F_Text_1AED70:: @ 81AED70
+ .string "But, I know of no legendary TRAINERS.\n"
+ .string "Hence, I know no tales.\p"
+ .string "Where does one find a TRAINER worthy\n"
+ .string "of a legendary tale?$"
+
+MauvilleCity_PokemonCenter_1F_Text_1AEDE8:: @ 81AEDE8
+ .string "What’s that?!\n"
+ .string "You... You...\p"
+ .string "{STR_VAR_2}\n"
+ .string "{STR_VAR_1} time(s)?!\p"
+ .string "That is indeed magnificent!\n"
+ .string "It’s the birth of a new legend!$"
+
+MauvilleCity_PokemonCenter_1F_Text_1AEE50:: @ 81AEE50
+ .string "It gets me thinking, could there be\n"
+ .string "other TRAINERS with more impressive\l"
+ .string "legends awaiting discovery?$"
+
+MauvilleCity_PokemonCenter_1F_Text_1AEEB4:: @ 81AEEB4
+ .string "Are you a TRAINER?\p"
+ .string "Then tell me, have you any tales that\n"
+ .string "are even remotely legendary?$"
+
+MauvilleCity_PokemonCenter_1F_Text_1AEF0A:: @ 81AEF0A
+ .string "Incidentally... Would you care to hear\n"
+ .string "another legendary tale?$"
+
+MauvilleCity_PokemonCenter_1F_Text_1AEF49:: @ 81AEF49
+ .string "Hmm...\n"
+ .string "I’m not satisfied...\p"
+ .string "I wish you would bring me news worthy\n"
+ .string "of being called a legend.$"
+
+MauvilleCity_PokemonCenter_1F_Text_1AEFA5:: @ 81AEFA5
+ .string "I wish more people would be interested\n"
+ .string "in hearing my epic tales of legendary\l"
+ .string "TRAINERS.$"
+
+ .incbin "baserom.gba", 0x1aeffc, 0x181a
+
+MauvilleCity_PokemonCenter_1F_EventScript_1B0816:: @ 81B0816
+ setvar 0x8008, 0
+ setvar 0x8009, 0
+ setvar 0x800a, 0
+ setvar 0x800b, 0
+ lock
+ faceplayer
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1AECC6, 5
+ compare RESULT, 0
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1B0914
+ specialval RESULT, 107
+ compare RESULT, 0
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1B08D3
+
+MauvilleCity_PokemonCenter_1F_EventScript_1B084F:: @ 81B084F
+ message MauvilleCity_PokemonCenter_1F_Text_1AED35
+ waittext
+ special 109
+ waitstate
+ compare RESULT, 0
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1B0883
+ setvar 0x8008, 1
+ special 108
+ waittext
+ waitbutton
+ specialval RESULT, 110
+ compare RESULT, 0
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1B0893
+ jump MauvilleCity_PokemonCenter_1F_EventScript_1B0909
+
+MauvilleCity_PokemonCenter_1F_EventScript_1B0883:: @ 81B0883
+ compare 0x8008, 0
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1B0914
+ jump MauvilleCity_PokemonCenter_1F_EventScript_1B08AE
+
+MauvilleCity_PokemonCenter_1F_EventScript_1B0893:: @ 81B0893
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1AEE50, 4
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1AEF0A, 5
+ compare RESULT, 1
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1B084F
+
+MauvilleCity_PokemonCenter_1F_EventScript_1B08AE:: @ 81B08AE
+ specialval RESULT, 112
+ compare RESULT, 1
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1B091F
+ specialval RESULT, 107
+ compare RESULT, 4
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1B091F
+ jump MauvilleCity_PokemonCenter_1F_EventScript_1B08DB
+
+MauvilleCity_PokemonCenter_1F_EventScript_1B08D3:: @ 81B08D3
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1AED70, 4
+
+MauvilleCity_PokemonCenter_1F_EventScript_1B08DB:: @ 81B08DB
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1AEEB4, 5
+ compare RESULT, 0
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1B0914
+ specialval RESULT, 111
+ compare RESULT, 1
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1B0909
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1AEF49, 4
+ closebutton
+ release
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1B0909:: @ 81B0909
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1AEDE8, 4
+ closebutton
+ release
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1B0914:: @ 81B0914
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1AED1D, 4
+ closebutton
+ release
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1B091F:: @ 81B091F
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1AEFA5, 4
+ closebutton
+ release
+ end
+
+MauvilleCity_PokemonCenter_1F_Text_1B092A:: @ 81B092A
+ .string "I’m GIDDY!\n"
+ .string "I have a scintillating story for you!\p"
+ .string "Would you like to hear my story?$"
+
+MauvilleCity_PokemonCenter_1F_Text_1B097C:: @ 81B097C
+ .string "Oh...\n"
+ .string "You’ve deflated me...$"
+
+MauvilleCity_PokemonCenter_1F_Text_1B0998:: @ 81B0998
+ .string "Also, I was thinking...$"
+
+MauvilleCity_PokemonCenter_1F_Text_1B09B0:: @ 81B09B0
+ .string "That’s about it, I think...\p"
+ .string "We should chat again!\n"
+ .string "Bye-bye!$"
+
+MauvilleCity_PokemonCenter_1F_EventScript_1B09EB:: @ 81B09EB
+ lock
+ faceplayer
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1B092A, 5
+ compare RESULT, 1
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1B0A0C
+ compare RESULT, 0
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1B0A6F
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1B0A0C:: @ 81B0A0C
+ special 106
+ compare RESULT, 1
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1B0A4E
+ compare RESULT, 0
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1B0A79
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1B0A26:: @ 81B0A26
+ special 106
+ compare RESULT, 1
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1B0A40
+ compare RESULT, 0
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1B0A79
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1B0A40:: @ 81B0A40
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1B0998, 4
+ jump MauvilleCity_PokemonCenter_1F_EventScript_1B0A4E
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1B0A4E:: @ 81B0A4E
+ special 105
+ special 141
+ waittext
+ yesnobox 20, 8
+ compare RESULT, 1
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1B0A26
+ compare RESULT, 0
+ jumpeq MauvilleCity_PokemonCenter_1F_EventScript_1B0A26
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1B0A6F:: @ 81B0A6F
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1B097C, 4
+ release
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_1B0A79:: @ 81B0A79
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1B09B0, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x1b0a83, 0xe
+
+MauvilleCity_PokemonCenter_1F_Text_1B0A91:: @ 81B0A91
+ .string "Hi, I’m the BARD.\n"
+ .string "Would you like to hear my song?$"
+
+MauvilleCity_PokemonCenter_1F_Text_1B0AC3:: @ 81B0AC3
+ .string "Oh...\n"
+ .string "You’ve left me feeling the blues...$"
+
+MauvilleCity_PokemonCenter_1F_Text_1B0AED:: @ 81B0AED
+ .string "Oh, what a moving song...\n"
+ .string "I wish I could play it for others...$"
+
+MauvilleCity_PokemonCenter_1F_Text_1B0B2C:: @ 81B0B2C
+ .string "So?\n"
+ .string "How do you like my song?\p"
+ .string "But I’m none too happy about the\n"
+ .string "lyrics.\p"
+ .string "How would you like to write some new\n"
+ .string "lyrics for me?$"
+
+MauvilleCity_PokemonCenter_1F_Text_1B0BA6:: @ 81B0BA6
+ .string "Oh...\n"
+ .string "You’ve left me feeling the blues...$"
+
+MauvilleCity_PokemonCenter_1F_Text_1B0BD0:: @ 81B0BD0
+ .string "Thank you kindly!\n"
+ .string "Let me sing it for you.$"
+
+MauvilleCity_PokemonCenter_1F_Text_1B0BFA:: @ 81B0BFA
+ .string "Was that how you wanted your song\n"
+ .string "to go?$"
+
+MauvilleCity_PokemonCenter_1F_Text_1B0C23:: @ 81B0C23
+ .string "Okay! That’s it, then.\n"
+ .string "I’ll sing this song for a while.$"
+
+MauvilleCity_PokemonCenter_1F_Text_1B0C5B:: @ 81B0C5B
+ .string "Hey, yo! They call me the HIPSTER.\n"
+ .string "I’ll teach you what’s hip and happening.$"
+
+MauvilleCity_PokemonCenter_1F_Text_1B0CA7:: @ 81B0CA7
+ .string "But, hey, I taught you what’s hip and\n"
+ .string "happening already.\p"
+ .string "I’d like to spread the good word to\n"
+ .string "other folks.$"
+
+MauvilleCity_PokemonCenter_1F_Text_1B0D11:: @ 81B0D11
+ .string "But, hey, you already know a lot about\n"
+ .string "what’s hip and happening.\p"
+ .string "I’ve got nothing new to teach you!$"
+
+MauvilleCity_PokemonCenter_1F_Text_1B0D75:: @ 81B0D75
+ .string "Hey, have you heard about\n"
+ .string "“{STR_VAR_1}”?\p"
+ .string "What’s it mean? Well...\n"
+ .string "Ask your daddy or mommy, okay?$"
+
+PetalburgWoods_EventScript_1B0DCC:: @ 81B0DCC
+Route103_EventScript_1B0DCC:: @ 81B0DCC
+Route104_EventScript_1B0DCC:: @ 81B0DCC
+Route110_TrickHousePuzzle1_EventScript_1B0DCC:: @ 81B0DCC
+Route111_EventScript_1B0DCC:: @ 81B0DCC
+Route116_EventScript_1B0DCC:: @ 81B0DCC
+Route117_EventScript_1B0DCC:: @ 81B0DCC
+Route118_EventScript_1B0DCC:: @ 81B0DCC
+Route120_EventScript_1B0DCC:: @ 81B0DCC
+Route121_EventScript_1B0DCC:: @ 81B0DCC
+Route123_EventScript_1B0DCC:: @ 81B0DCC
+ lockall
+ checkflag 2055
+ jumpif 0, Route103_EventScript_1B0E32
+ checkattack 15
+ compare RESULT, 6
+ jumpeq Route103_EventScript_1B0E32
+ setanimation 0, 32781
+ bufferpartypoke 0, 32781
+ bufferattack 1, 15
+ msgbox Route103_Text_1B0E3F, 5
+ compare RESULT, 0
+ jumpeq Route103_EventScript_1B0E3C
+ msgbox Route103_Text_1B0E82, 4
+ closebutton
+ doanimation 2
+ waitstate
+ jump Route103_EventScript_1B0E21
+ end
.global gUnknown_081B0E16
gUnknown_081B0E16: @ 81B0E16
- .incbin "baserom.gba", 0x001b0e16, 0xeb
+
+ .incbin "baserom.gba", 0x1b0e16, 0xb
+
+Route103_EventScript_1B0E21:: @ 81B0E21
+ move LAST_TALKED, Route103_Movement_1B0E30
+ waitmove 0
+ disappear LAST_TALKED
+ releaseall
+ end
+
+Route103_Movement_1B0E30:: @ 81B0E30
+ step_5b
+ step_end
+
+Route103_EventScript_1B0E32:: @ 81B0E32
+ msgbox Route103_Text_1B0E8E, 3
+ releaseall
+ end
+
+Route103_EventScript_1B0E3C:: @ 81B0E3C
+ closebutton
+ releaseall
+ end
+
+Route103_Text_1B0E3F:: @ 81B0E3F
+ .string "This tree looks like it can be CUT down.\p"
+ .string "Would you like to CUT it?$"
+
+Route103_Text_1B0E82:: @ 81B0E82
+Route111_Text_1B0E82:: @ 81B0E82
+ .string "{STR_VAR_1} used {STR_VAR_2}.$"
+
+Route103_Text_1B0E8E:: @ 81B0E8E
+ .string "This tree looks like it can be CUT down.$"
+
+GraniteCave_B2F_EventScript_1B0EB7:: @ 81B0EB7
+Route110_TrickHousePuzzle3_EventScript_1B0EB7:: @ 81B0EB7
+Route111_EventScript_1B0EB7:: @ 81B0EB7
+Route114_EventScript_1B0EB7:: @ 81B0EB7
+Route115_EventScript_1B0EB7:: @ 81B0EB7
+RusturfTunnel_EventScript_1B0EB7:: @ 81B0EB7
+SafariZone_Northeast_EventScript_1B0EB7:: @ 81B0EB7
+SeafloorCavern_Room1_EventScript_1B0EB7:: @ 81B0EB7
+SeafloorCavern_Room2_EventScript_1B0EB7:: @ 81B0EB7
+SeafloorCavern_Room5_EventScript_1B0EB7:: @ 81B0EB7
+VictoryRoad_B1F_EventScript_1B0EB7:: @ 81B0EB7
+ lockall
+ checkflag 2057
+ jumpif 0, Route111_EventScript_1B0F3E
+ checkattack 249
+ compare RESULT, 6
+ jumpeq Route111_EventScript_1B0F3E
+ setanimation 0, 32781
+ bufferpartypoke 0, 32781
+ bufferattack 1, 249
+ msgbox Route111_Text_1B0F4B, 5
+ compare RESULT, 0
+ jumpeq Route111_EventScript_1B0F48
+ msgbox Route111_Text_1B0E82, 4
+ closebutton
+ doanimation 37
+ waitstate
+ jump Route111_EventScript_1B0F0C
+ end
.global gUnknown_081B0F01
gUnknown_081B0F01: @ 81B0F01
- .incbin "baserom.gba", 0x001b0f01, 0x10d
+
+ .incbin "baserom.gba", 0x1b0f01, 0xb
+
+Route111_EventScript_1B0F0C:: @ 81B0F0C
+ move LAST_TALKED, Route111_Movement_1B0F3C
+ waitmove 0
+ disappear LAST_TALKED
+ specialval RESULT, 298
+ compare RESULT, 1
+ jumpeq Route111_EventScript_1B0F3A
+ special 171
+ compare RESULT, 0
+ jumpeq Route111_EventScript_1B0F3A
+ waitstate
+ releaseall
+ end
+
+Route111_EventScript_1B0F3A:: @ 81B0F3A
+ releaseall
+ end
+
+Route111_Movement_1B0F3C:: @ 81B0F3C
+ step_5a
+ step_end
+
+Route111_EventScript_1B0F3E:: @ 81B0F3E
+ msgbox Route111_Text_1B0F90, 3
+ releaseall
+ end
+
+Route111_EventScript_1B0F48:: @ 81B0F48
+ closebutton
+ releaseall
+ end
+
+Route111_Text_1B0F4B:: @ 81B0F4B
+ .string "This rock appears to be breakable.\n"
+ .string "Would you like to use ROCK SMASH?$"
+
+Route111_Text_1B0F90:: @ 81B0F90
+ .string "It’s a rugged rock, but a POKéMON\n"
+ .string "may be able to smash it.$"
+
+FieryPath_EventScript_1B0FCB:: @ 81B0FCB
+Route110_TrickHousePuzzle4_EventScript_1B0FCB:: @ 81B0FCB
+SeafloorCavern_Room1_EventScript_1B0FCB:: @ 81B0FCB
+SeafloorCavern_Room2_EventScript_1B0FCB:: @ 81B0FCB
+SeafloorCavern_Room3_EventScript_1B0FCB:: @ 81B0FCB
+SeafloorCavern_Room5_EventScript_1B0FCB:: @ 81B0FCB
+SeafloorCavern_Room8_EventScript_1B0FCB:: @ 81B0FCB
+ShoalCave_LowTideLowerRoom_EventScript_1B0FCB:: @ 81B0FCB
+VictoryRoad_B1F_EventScript_1B0FCB:: @ 81B0FCB
+ lockall
+ checkflag 2058
+ jumpif 0, FieryPath_EventScript_1B1026
+ checkflag 2089
+ jumpeq FieryPath_EventScript_1B1030
+ checkattack 70
+ compare RESULT, 6
+ jumpeq FieryPath_EventScript_1B1026
+ setanimation 0, 32781
+ msgbox FieryPath_Text_1B103D, 5
+ compare RESULT, 0
+ jumpeq FieryPath_EventScript_1B103A
+ closebutton
+ doanimation 40
+ waitstate
+ jump FieryPath_EventScript_1B1019
+ end
.global gUnknown_081B100E
gUnknown_081B100E: @ 81B100E
- .incbin "baserom.gba", 0x001b100e, 0x14c
+ .incbin "baserom.gba", 0x1b100e, 0xb
+
+FieryPath_EventScript_1B1019:: @ 81B1019
+ setflag 2089
+ msgbox FieryPath_Text_1B109D, 3
+ releaseall
+ end
+
+FieryPath_EventScript_1B1026:: @ 81B1026
+ msgbox FieryPath_Text_1B10E7, 3
+ releaseall
+ end
+
+FieryPath_EventScript_1B1030:: @ 81B1030
+ msgbox FieryPath_Text_1B1127, 3
+ releaseall
+ end
+
+FieryPath_EventScript_1B103A:: @ 81B103A
+ closebutton
+ releaseall
+ end
+
+ .include "data/maps/text/FieryPath.s"
.global gUnknown_081B115A
gUnknown_081B115A: @ 81B115A
.incbin "baserom.gba", 0x001b115a, 0x3a
@@ -382,20 +9698,4872 @@ gUnknown_081B1269: @ 81B1269
.global gUnknown_081B140C
gUnknown_081B140C: @ 81B140C
- .incbin "baserom.gba", 0x001b140c, 0x11b0
+
+ .incbin "baserom.gba", 0x1b140c, 0x2d
+
+Route102_EventScript_1B1439:: @ 81B1439
+ giveitem ITEM_POTION, 1, 1
+ end
+
+Route103_EventScript_1B1446:: @ 81B1446
+ giveitem ITEM_GUARD_SPEC, 1, 1
+ end
+
+Route104_EventScript_1B1453:: @ 81B1453
+ giveitem ITEM_PP_UP, 1, 1
+ end
+
+Route104_EventScript_1B1460:: @ 81B1460
+ giveitem ITEM_POKE_BALL, 1, 1
+ end
+
+Route104_EventScript_1B146D:: @ 81B146D
+ giveitem ITEM_X_ACCURACY, 1, 1
+ end
+
+Route104_EventScript_1B147A:: @ 81B147A
+ giveitem ITEM_POTION, 1, 1
+ end
+
+Route105_EventScript_1B1487:: @ 81B1487
+ giveitem ITEM_IRON, 1, 1
+ end
+
+Route106_EventScript_1B1494:: @ 81B1494
+ giveitem ITEM_PROTEIN, 1, 1
+ end
+
+Route109_EventScript_1B14A1:: @ 81B14A1
+ giveitem ITEM_PP_UP, 1, 1
+ end
+
+Route110_EventScript_1B14AE:: @ 81B14AE
+ giveitem ITEM_RARE_CANDY, 1, 1
+ end
+
+Route110_EventScript_1B14BB:: @ 81B14BB
+ giveitem ITEM_DIRE_HIT, 1, 1
+ end
+
+Route111_EventScript_1B14C8:: @ 81B14C8
+ giveitem ITEM_TM37, 1, 1
+ end
+
+Route111_EventScript_1B14D5:: @ 81B14D5
+ giveitem ITEM_STARDUST, 1, 1
+ end
+
+Route111_EventScript_1B14E2:: @ 81B14E2
+ giveitem ITEM_HP_UP, 1, 1
+ end
+
+Route112_EventScript_1B14EF:: @ 81B14EF
+ giveitem ITEM_NUGGET, 1, 1
+ end
+
+Route113_EventScript_1B14FC:: @ 81B14FC
+ giveitem ITEM_MAX_ETHER, 1, 1
+ end
+
+Route113_EventScript_1B1509:: @ 81B1509
+ giveitem ITEM_SUPER_REPEL, 1, 1
+ end
+
+Route114_EventScript_1B1516:: @ 81B1516
+ giveitem ITEM_RARE_CANDY, 1, 1
+ end
+
+Route114_EventScript_1B1523:: @ 81B1523
+ giveitem ITEM_PROTEIN, 1, 1
+ end
+
+Route115_EventScript_1B1530:: @ 81B1530
+ giveitem ITEM_SUPER_POTION, 1, 1
+ end
+
+Route115_EventScript_1B153D:: @ 81B153D
+ giveitem ITEM_TM01, 1, 1
+ end
+
+Route115_EventScript_1B154A:: @ 81B154A
+ giveitem ITEM_IRON, 1, 1
+ end
+
+Route115_EventScript_1B1557:: @ 81B1557
+ giveitem ITEM_GREAT_BALL, 1, 1
+ end
+
+Route116_EventScript_1B1564:: @ 81B1564
+ giveitem ITEM_X_SPECIAL, 1, 1
+ end
+
+Route116_EventScript_1B1571:: @ 81B1571
+ giveitem ITEM_ETHER, 1, 1
+ end
+
+Route116_EventScript_1B157E:: @ 81B157E
+ giveitem ITEM_REPEL, 1, 1
+ end
+
+Route116_EventScript_1B158B:: @ 81B158B
+ giveitem ITEM_HP_UP, 1, 1
+ end
+
+Route117_EventScript_1B1598:: @ 81B1598
+ giveitem ITEM_GREAT_BALL, 1, 1
+ end
+
+Route117_EventScript_1B15A5:: @ 81B15A5
+ giveitem ITEM_REVIVE, 1, 1
+ end
+
+Route118_EventScript_1B15B2:: @ 81B15B2
+ giveitem ITEM_HYPER_POTION, 1, 1
+ end
+
+Route119_EventScript_1B15BF:: @ 81B15BF
+ giveitem ITEM_SUPER_REPEL, 1, 1
+ end
+
+Route119_EventScript_1B15CC:: @ 81B15CC
+ giveitem ITEM_ZINC, 1, 1
+ end
+
+Route119_EventScript_1B15D9:: @ 81B15D9
+ giveitem ITEM_ELIXIR, 1, 1
+ end
+
+Route119_EventScript_1B15E6:: @ 81B15E6
+ giveitem ITEM_LEAF_STONE, 1, 1
+ end
+
+Route119_EventScript_1B15F3:: @ 81B15F3
+ giveitem ITEM_RARE_CANDY, 1, 1
+ end
+
+Route119_EventScript_1B1600:: @ 81B1600
+ giveitem ITEM_HYPER_POTION, 1, 1
+ end
+
+Route119_EventScript_1B160D:: @ 81B160D
+ giveitem ITEM_HYPER_POTION, 1, 1
+ end
+
+Route120_EventScript_1B161A:: @ 81B161A
+ giveitem ITEM_NUGGET, 1, 1
+ end
+
+Route120_EventScript_1B1627:: @ 81B1627
+ giveitem ITEM_FULL_HEAL, 1, 1
+ end
+
+Route120_EventScript_1B1634:: @ 81B1634
+ giveitem ITEM_HYPER_POTION, 1, 1
+ end
+
+Route120_EventScript_1B1641:: @ 81B1641
+ giveitem ITEM_NEST_BALL, 1, 1
+ end
+
+Route121_EventScript_1B164E:: @ 81B164E
+ giveitem ITEM_CARBOS, 1, 1
+ end
+
+Route123_EventScript_1B165B:: @ 81B165B
+ giveitem ITEM_CALCIUM, 1, 1
+ end
+
+Route123_EventScript_1B1668:: @ 81B1668
+ giveitem ITEM_RARE_CANDY, 1, 1
+ end
+
+Route123_EventScript_1B1675:: @ 81B1675
+ giveitem ITEM_ULTRA_BALL, 1, 1
+ end
+
+Route123_EventScript_1B1682:: @ 81B1682
+ giveitem ITEM_ELIXIR, 1, 1
+ end
+
+Route124_EventScript_1B168F:: @ 81B168F
+ giveitem ITEM_RED_SHARD, 1, 1
+ end
+
+Route124_EventScript_1B169C:: @ 81B169C
+ giveitem ITEM_BLUE_SHARD, 1, 1
+ end
+
+Route124_EventScript_1B16A9:: @ 81B16A9
+ giveitem ITEM_YELLOW_SHARD, 1, 1
+ end
+
+Route126_EventScript_1B16B6:: @ 81B16B6
+ giveitem ITEM_GREEN_SHARD, 1, 1
+ end
+
+Route127_EventScript_1B16C3:: @ 81B16C3
+ giveitem ITEM_ZINC, 1, 1
+ end
+
+Route127_EventScript_1B16D0:: @ 81B16D0
+ giveitem ITEM_CARBOS, 1, 1
+ end
+
+Route132_EventScript_1B16DD:: @ 81B16DD
+ giveitem ITEM_RARE_CANDY, 1, 1
+ end
+
+Route133_EventScript_1B16EA:: @ 81B16EA
+ giveitem ITEM_BIG_PEARL, 1, 1
+ end
+
+Route133_EventScript_1B16F7:: @ 81B16F7
+ giveitem ITEM_STAR_PIECE, 1, 1
+ end
+
+PetalburgCity_EventScript_1B1704:: @ 81B1704
+ giveitem ITEM_MAX_REVIVE, 1, 1
+ end
+
+PetalburgCity_EventScript_1B1711:: @ 81B1711
+ giveitem ITEM_ETHER, 1, 1
+ end
+
+MauvilleCity_EventScript_1B171E:: @ 81B171E
+ giveitem ITEM_X_SPEED, 1, 1
+ end
+
+RustboroCity_EventScript_1B172B:: @ 81B172B
+ giveitem ITEM_X_DEFEND, 1, 1
+ end
+
+LilycoveCity_EventScript_1B1738:: @ 81B1738
+ giveitem ITEM_MAX_REPEL, 1, 1
+ end
+
+MossdeepCity_EventScript_1B1745:: @ 81B1745
+ giveitem ITEM_NET_BALL, 1, 1
+ end
+
+PetalburgWoods_EventScript_1B1752:: @ 81B1752
+ giveitem ITEM_X_ATTACK, 1, 1
+ end
+
+PetalburgWoods_EventScript_1B175F:: @ 81B175F
+ giveitem ITEM_GREAT_BALL, 1, 1
+ end
+
+PetalburgWoods_EventScript_1B176C:: @ 81B176C
+ giveitem ITEM_ETHER, 1, 1
+ end
+
+PetalburgWoods_EventScript_1B1779:: @ 81B1779
+ giveitem ITEM_PARALYZE_HEAL, 1, 1
+ end
+
+RusturfTunnel_EventScript_1B1786:: @ 81B1786
+ giveitem ITEM_POKE_BALL, 1, 1
+ end
+
+RusturfTunnel_EventScript_1B1793:: @ 81B1793
+ giveitem ITEM_MAX_ETHER, 1, 1
+ end
+
+GraniteCave_1F_EventScript_1B17A0:: @ 81B17A0
+ giveitem ITEM_ESCAPE_ROPE, 1, 1
+ end
+
+GraniteCave_B1F_EventScript_1B17AD:: @ 81B17AD
+ giveitem ITEM_POKE_BALL, 1, 1
+ end
+
+GraniteCave_B2F_EventScript_1B17BA:: @ 81B17BA
+ giveitem ITEM_REPEL, 1, 1
+ end
+
+GraniteCave_B2F_EventScript_1B17C7:: @ 81B17C7
+ giveitem ITEM_RARE_CANDY, 1, 1
+ end
+
+JaggedPass_EventScript_1B17D4:: @ 81B17D4
+ giveitem ITEM_BURN_HEAL, 1, 1
+ end
+
+FieryPath_EventScript_1B17E1:: @ 81B17E1
+ giveitem ITEM_FIRE_STONE, 1, 1
+ end
+
+FieryPath_EventScript_1B17EE:: @ 81B17EE
+ giveitem ITEM_TM06, 1, 1
+ end
+
+MeteorFalls_1F_1R_EventScript_1B17FB:: @ 81B17FB
+ giveitem ITEM_TM23, 1, 1
+ end
+
+MeteorFalls_1F_1R_EventScript_1B1808:: @ 81B1808
+ giveitem ITEM_FULL_HEAL, 1, 1
+ end
+
+MeteorFalls_1F_1R_EventScript_1B1815:: @ 81B1815
+ giveitem ITEM_MOON_STONE, 1, 1
+ end
+
+MeteorFalls_1F_1R_EventScript_1B1822:: @ 81B1822
+ giveitem ITEM_PP_UP, 1, 1
+ end
+
+MeteorFalls_B1F_2R_EventScript_1B182F:: @ 81B182F
+ giveitem ITEM_TM02, 1, 1
+ end
+
+NewMauville_Inside_EventScript_1B183C:: @ 81B183C
+ giveitem ITEM_ULTRA_BALL, 1, 1
+ end
+
+NewMauville_Inside_EventScript_1B1849:: @ 81B1849
+ giveitem ITEM_ESCAPE_ROPE, 1, 1
+ end
+
+NewMauville_Inside_EventScript_1B1856:: @ 81B1856
+ giveitem ITEM_THUNDER_STONE, 1, 1
+ end
+
+NewMauville_Inside_EventScript_1B1863:: @ 81B1863
+ giveitem ITEM_FULL_HEAL, 1, 1
+ end
+
+NewMauville_Inside_EventScript_1B1870:: @ 81B1870
+ giveitem ITEM_PARALYZE_HEAL, 1, 1
+ end
+
+AbandonedShip_Rooms_1F_EventScript_1B187D:: @ 81B187D
+ giveitem ITEM_HARBOR_MAIL, 1, 1
+ end
+
+AbandonedShip_Rooms_B1F_EventScript_1B188A:: @ 81B188A
+ giveitem ITEM_ESCAPE_ROPE, 1, 1
+ end
+
+AbandonedShip_Rooms2_B1F_EventScript_1B1897:: @ 81B1897
+ giveitem ITEM_DIVE_BALL, 1, 1
+ end
+
+AbandonedShip_Room_B1F_EventScript_1B18A4:: @ 81B18A4
+ giveitem ITEM_TM13, 1, 1
+ end
+
+AbandonedShip_Rooms2_1F_EventScript_1B18B1:: @ 81B18B1
+ giveitem ITEM_REVIVE, 1, 1
+ end
+
+AbandonedShip_CaptainsOffice_EventScript_1B18BE:: @ 81B18BE
+ giveitem ITEM_STORAGE_KEY, 1, 1
+ end
+
+AbandonedShip_HiddenFloorRooms_EventScript_1B18CB:: @ 81B18CB
+ giveitem ITEM_LUXURY_BALL, 1, 1
+ end
+
+AbandonedShip_HiddenFloorRooms_EventScript_1B18D8:: @ 81B18D8
+ giveitem ITEM_SCANNER, 1, 1
+ end
+
+AbandonedShip_HiddenFloorRooms_EventScript_1B18E5:: @ 81B18E5
+ giveitem ITEM_WATER_STONE, 1, 1
+ end
+
+AbandonedShip_HiddenFloorRooms_EventScript_1B18F2:: @ 81B18F2
+ giveitem ITEM_TM18, 1, 1
+ end
+
+ScorchedSlab_EventScript_1B18FF:: @ 81B18FF
+ giveitem ITEM_TM11, 1, 1
+ end
+
+SafariZone_Northwest_EventScript_1B190C:: @ 81B190C
+ giveitem ITEM_TM22, 1, 1
+ end
+
+SafariZone_Northeast_EventScript_1B1919:: @ 81B1919
+ giveitem ITEM_CALCIUM, 1, 1
+ end
+
+SafariZone_Southwest_EventScript_1B1926:: @ 81B1926
+ giveitem ITEM_MAX_REVIVE, 1, 1
+ end
+
+MtPyre_2F_EventScript_1B1933:: @ 81B1933
+ giveitem ITEM_ULTRA_BALL, 1, 1
+ end
+
+MtPyre_3F_EventScript_1B1940:: @ 81B1940
+ giveitem ITEM_SUPER_REPEL, 1, 1
+ end
+
+MtPyre_4F_EventScript_1B194D:: @ 81B194D
+ giveitem ITEM_SEA_INCENSE, 1, 1
+ end
+
+MtPyre_5F_EventScript_1B195A:: @ 81B195A
+ giveitem ITEM_LAX_INCENSE, 1, 1
+ end
+
+MtPyre_6F_EventScript_1B1967:: @ 81B1967
+ giveitem ITEM_TM30, 1, 1
+ end
+
+MtPyre_Exterior_EventScript_1B1974:: @ 81B1974
+ giveitem ITEM_MAX_POTION, 1, 1
+ end
+
+MtPyre_Exterior_EventScript_1B1981:: @ 81B1981
+ giveitem ITEM_TM48, 1, 1
+ end
+
+AquaHideout_B1F_EventScript_1B198E:: @ 81B198E
+ giveitem ITEM_MASTER_BALL, 1, 1
+ end
+
+AquaHideout_B1F_EventScript_1B199B:: @ 81B199B
+ giveitem ITEM_NUGGET, 1, 1
+ end
+
+AquaHideout_B1F_EventScript_1B19A8:: @ 81B19A8
+ giveitem ITEM_MAX_ELIXIR, 1, 1
+ end
+
+AquaHideout_B2F_EventScript_1B19B5:: @ 81B19B5
+ giveitem ITEM_NEST_BALL, 1, 1
+ end
+
+MagmaHideout_B1F_EventScript_1B19C2:: @ 81B19C2
+ giveitem ITEM_MASTER_BALL, 1, 1
+ end
+
+MagmaHideout_B1F_EventScript_1B19CF:: @ 81B19CF
+ giveitem ITEM_NUGGET, 1, 1
+ end
+
+MagmaHideout_B1F_EventScript_1B19DC:: @ 81B19DC
+ giveitem ITEM_MAX_ELIXIR, 1, 1
+ end
+
+MagmaHideout_B2F_EventScript_1B19E9:: @ 81B19E9
+ giveitem ITEM_NEST_BALL, 1, 1
+ end
+
+ShoalCave_LowTideEntranceRoom_EventScript_1B19F6:: @ 81B19F6
+ giveitem ITEM_BIG_PEARL, 1, 1
+ end
+
+ShoalCave_LowTideInnerRoom_EventScript_1B1A03:: @ 81B1A03
+ giveitem ITEM_RARE_CANDY, 1, 1
+ end
+
+ShoalCave_LowTideStairsRoom_EventScript_1B1A10:: @ 81B1A10
+ giveitem ITEM_ICE_HEAL, 1, 1
+ end
+
+ShoalCave_LowTideIceRoom_EventScript_1B1A1D:: @ 81B1A1D
+ giveitem ITEM_TM07, 1, 1
+ end
+
+ShoalCave_LowTideIceRoom_EventScript_1B1A2A:: @ 81B1A2A
+ giveitem ITEM_NEVER_MELT_ICE, 1, 1
+ end
+
+SeafloorCavern_Room9_EventScript_1B1A37:: @ 81B1A37
+ giveitem ITEM_TM26, 1, 1
+ end
+
+CaveOfOrigin_B3F_EventScript_1B1A44:: @ 81B1A44
+ giveitem ITEM_HM07, 1, 1
+ end
+
+Route110_TrickHousePuzzle1_EventScript_1B1A51:: @ 81B1A51
+ giveitem ITEM_ORANGE_MAIL, 1, 1
+ end
+
+Route110_TrickHousePuzzle2_EventScript_1B1A5E:: @ 81B1A5E
+ giveitem ITEM_HARBOR_MAIL, 1, 1
+ end
+
+Route110_TrickHousePuzzle2_EventScript_1B1A6B:: @ 81B1A6B
+ giveitem ITEM_WAVE_MAIL, 1, 1
+ end
+
+Route110_TrickHousePuzzle3_EventScript_1B1A78:: @ 81B1A78
+ giveitem ITEM_SHADOW_MAIL, 1, 1
+ end
+
+Route110_TrickHousePuzzle3_EventScript_1B1A85:: @ 81B1A85
+ giveitem ITEM_WOOD_MAIL, 1, 1
+ end
+
+Route110_TrickHousePuzzle4_EventScript_1B1A92:: @ 81B1A92
+ giveitem ITEM_MECH_MAIL, 1, 1
+ end
+
+Route110_TrickHousePuzzle6_EventScript_1B1A9F:: @ 81B1A9F
+ giveitem ITEM_GLITTER_MAIL, 1, 1
+ end
+
+Route110_TrickHousePuzzle7_EventScript_1B1AAC:: @ 81B1AAC
+ giveitem ITEM_TROPIC_MAIL, 1, 1
+ end
+
+Route110_TrickHousePuzzle8_EventScript_1B1AB9:: @ 81B1AB9
+ giveitem ITEM_BEAD_MAIL, 1, 1
+ end
+
+VictoryRoad_1F_EventScript_1B1AC6:: @ 81B1AC6
+ giveitem ITEM_MAX_ELIXIR, 1, 1
+ end
+
+VictoryRoad_1F_EventScript_1B1AD3:: @ 81B1AD3
+ giveitem ITEM_PP_UP, 1, 1
+ end
+
+VictoryRoad_B1F_EventScript_1B1AE0:: @ 81B1AE0
+ giveitem ITEM_TM29, 1, 1
+ end
+
+VictoryRoad_B1F_EventScript_1B1AED:: @ 81B1AED
+ giveitem ITEM_FULL_RESTORE, 1, 1
+ end
+
+VictoryRoad_B2F_EventScript_1B1AFA:: @ 81B1AFA
+ giveitem ITEM_FULL_HEAL, 1, 1
+ end
+
+ .incbin "baserom.gba", 0x1b1b07, 0xd
+
+PetalburgCity_PokemonCenter_1F_EventScript_1B1B14:: @ 81B1B14
+ lock
+ faceplayer
+ checkflag 2053
+ jumpeq PetalburgCity_PokemonCenter_1F_EventScript_1B1BDB
+ msgbox PetalburgCity_PokemonCenter_1F_Text_1B1C97, 4
+ jump PetalburgCity_PokemonCenter_1F_EventScript_1B1B2D
+ end
+
+PetalburgCity_PokemonCenter_1F_EventScript_1B1B2D:: @ 81B1B2D
+ msgbox PetalburgCity_PokemonCenter_1F_Text_1B1D10, 4
+ multichoice 17, 6, 20, 0
+ switch RESULT
+ case 0, PetalburgCity_PokemonCenter_1F_EventScript_1B1B7A
+ case 1, PetalburgCity_PokemonCenter_1F_EventScript_1B1BD1
+ case 2, PetalburgCity_PokemonCenter_1F_EventScript_1B1B6C
+ case 127, PetalburgCity_PokemonCenter_1F_EventScript_1B1BD1
+ end
+
+PetalburgCity_PokemonCenter_1F_EventScript_1B1B6C:: @ 81B1B6C
+ msgbox PetalburgCity_PokemonCenter_1F_Text_1B1D3A, 4
+ jump PetalburgCity_PokemonCenter_1F_EventScript_1B1B2D
+ end
+
+PetalburgCity_PokemonCenter_1F_EventScript_1B1B7A:: @ 81B1B7A
+ msgbox PetalburgCity_PokemonCenter_1F_Text_1B1F7B, 4
+ closebutton
+ setvar 0x8004, 0
+ call PetalburgCity_PokemonCenter_1F_EventScript_1A00F3
+ lock
+ faceplayer
+ compare 0x8004, 1
+ callif 1, PetalburgCity_PokemonCenter_1F_EventScript_1B1C77
+ compare RESULT, 0
+ jumpeq PetalburgCity_PokemonCenter_1F_EventScript_1B1BB1
+ compare RESULT, 1
+ jumpeq PetalburgCity_PokemonCenter_1F_EventScript_1B1BBB
+ end
+
+PetalburgCity_PokemonCenter_1F_EventScript_1B1BB1:: @ 81B1BB1
+ msgbox PetalburgCity_PokemonCenter_1F_Text_1B1FF0, 4
+ release
+ end
+
+PetalburgCity_PokemonCenter_1F_EventScript_1B1BBB:: @ 81B1BBB
+ setvar 0x8004, 0
+ special 96
+ waittext
+ pause 80
+ msgbox PetalburgCity_PokemonCenter_1F_Text_1B2137, 4
+ release
+ end
+
+PetalburgCity_PokemonCenter_1F_EventScript_1B1BD1:: @ 81B1BD1
+ msgbox PetalburgCity_PokemonCenter_1F_Text_1B1FA3, 4
+ release
+ end
+
+PetalburgCity_PokemonCenter_1F_EventScript_1B1BDB:: @ 81B1BDB
+ msgbox PetalburgCity_PokemonCenter_1F_Text_1B202F, 4
+ jump PetalburgCity_PokemonCenter_1F_EventScript_1B1BE9
+ end
+
+PetalburgCity_PokemonCenter_1F_EventScript_1B1BE9:: @ 81B1BE9
+ msgbox PetalburgCity_PokemonCenter_1F_Text_1B2063, 4
+ multichoice 17, 6, 20, 0
+ switch RESULT
+ case 0, PetalburgCity_PokemonCenter_1F_EventScript_1B1C36
+ case 1, PetalburgCity_PokemonCenter_1F_EventScript_1B1C6D
+ case 2, PetalburgCity_PokemonCenter_1F_EventScript_1B1C28
+ case 127, PetalburgCity_PokemonCenter_1F_EventScript_1B1C6D
+ end
+
+PetalburgCity_PokemonCenter_1F_EventScript_1B1C28:: @ 81B1C28
+ msgbox PetalburgCity_PokemonCenter_1F_Text_1B1D3A, 4
+ jump PetalburgCity_PokemonCenter_1F_EventScript_1B1BE9
+ end
+
+PetalburgCity_PokemonCenter_1F_EventScript_1B1C36:: @ 81B1C36
+ msgbox PetalburgCity_PokemonCenter_1F_Text_1B207F, 4
+ closebutton
+ setvar 0x8004, 0
+ call PetalburgCity_PokemonCenter_1F_EventScript_1A00F3
+ lock
+ faceplayer
+ compare 0x8004, 1
+ callif 1, PetalburgCity_PokemonCenter_1F_EventScript_1B1C77
+ compare RESULT, 0
+ jumpeq PetalburgCity_PokemonCenter_1F_EventScript_1B1BB1
+ compare RESULT, 1
+ jumpeq PetalburgCity_PokemonCenter_1F_EventScript_1B1BBB
+ end
+
+PetalburgCity_PokemonCenter_1F_EventScript_1B1C6D:: @ 81B1C6D
+ msgbox PetalburgCity_PokemonCenter_1F_Text_1B20CE, 4
+ release
+ end
+
+PetalburgCity_PokemonCenter_1F_EventScript_1B1C77:: @ 81B1C77
+ checkflag 2059
+ jumpif 0, PetalburgCity_PokemonCenter_1F_EventScript_1B1C96
+ checkflag 2124
+ jumpeq PetalburgCity_PokemonCenter_1F_EventScript_1B1C96
+ setflag 2124
+ msgbox PetalburgCity_PokemonCenter_1F_Text_1B21CC, 3
+ release
+ end
+
+PetalburgCity_PokemonCenter_1F_EventScript_1B1C96:: @ 81B1C96
+ return
+
+PetalburgCity_PokemonCenter_1F_Text_1B1C97:: @ 81B1C97
+ .string "Hello there, TRAINER!\n"
+ .string "You’ve got a wonderful smile, there.\p"
+ .string "I have a hobby - collecting the profiles\n"
+ .string "of POKéMON TRAINERS.$"
+
+PetalburgCity_PokemonCenter_1F_Text_1B1D10:: @ 81B1D10
+ .string "So, how about it?\n"
+ .string "May I see your profile?$"
+
+PetalburgCity_PokemonCenter_1F_Text_1B1D3A:: @ 81B1D3A
+ .string "You make your own profile by putting\n"
+ .string "together four words or phrases.\p"
+ .string "Here, I’ll show you an example of a\n"
+ .string "profile using four pieces of text.\p"
+ .string "You can switch those four pieces with\n"
+ .string "other text pieces any which way you\l"
+ .string "like to make your own profile.\p"
+ .string "There are a lot of text pieces that you\n"
+ .string "can use.\p"
+ .string "They are arranged in groups like\n"
+ .string "POKéMON, lifestyles, and hobbies so\l"
+ .string "it is easier to look them up.\p"
+ .string "So, first, choose the group of text\n"
+ .string "pieces to display a list of choices.\p"
+ .string "Then, pick the choice you want.\p"
+ .string "Repeat for the remaining text choices,\n"
+ .string "and you’ll have your very own profile.$"
+
+ .incbin "baserom.gba", 0x1b1f7a, 0x1
+
+PetalburgCity_PokemonCenter_1F_Text_1B1F7B:: @ 81B1F7B
+ .string "Yes! Thank you!\n"
+ .string "May I see your profile?$"
+
+PetalburgCity_PokemonCenter_1F_Text_1B1FA3:: @ 81B1FA3
+ .string "Oh, no, really?\p"
+ .string "I imagine someone like you would have\n"
+ .string "a wonderful profile...$"
+
+PetalburgCity_PokemonCenter_1F_Text_1B1FF0:: @ 81B1FF0
+ .string "Oh? You’re not into it right now?\p"
+ .string "Well, anytime is good by me!$"
+
+PetalburgCity_PokemonCenter_1F_Text_1B202F:: @ 81B202F
+ .string "Hello there, TRAINER!\n"
+ .string "You’ve got a wonderful smile.$"
+
+PetalburgCity_PokemonCenter_1F_Text_1B2063:: @ 81B2063
+ .string "May I see your new profile?$"
+
+PetalburgCity_PokemonCenter_1F_Text_1B207F:: @ 81B207F
+ .string "Yes! Thank you!\p"
+ .string "I hope it’s even better than the profile\n"
+ .string "you showed me before.$"
+
+PetalburgCity_PokemonCenter_1F_Text_1B20CE:: @ 81B20CE
+ .string "Oh, you like your profile the way it is.\p"
+ .string "I don’t blame you - it’s a wonderful\n"
+ .string "profile the way it is now.$"
+
+PetalburgCity_PokemonCenter_1F_Text_1B2137:: @ 81B2137
+ .string "F-fantastic!\p"
+ .string "Your profile, it’s wonderful!\n"
+ .string "It really says what you’re about.\p"
+ .string "Why, anyone hearing this profile would\n"
+ .string "be captivated by you!\p"
+ .string "Thank you!$"
+
+PetalburgCity_PokemonCenter_1F_Text_1B21CC:: @ 81B21CC
+ .string "Oh?\n"
+ .string "You know the secret saying!\p"
+ .string "That means you’re now a fellow member\n"
+ .string "of the MYSTERY EVENT CLUB!$"
+
+Route117_EventScript_1B222D:: @ 81B222D
+ lock
+ faceplayer
+ special 181
+ specialval RESULT, 182
+ compare RESULT, 1
+ jumpeq Route117_EventScript_1B2262
+ compare RESULT, 2
+ jumpeq Route117_EventScript_1B22E7
+ compare RESULT, 3
+ jumpeq Route117_EventScript_1B22FE
+ msgbox Route117_Text_1B25CB, 4
+ release
+ end
+
+Route117_EventScript_1B2262:: @ 81B2262
+ msgbox Route117_Text_1B2659, 5
+ compare RESULT, 1
+ jumpeq Route117_EventScript_1B2298
+ msgbox Route117_Text_1B28C4, 5
+ compare RESULT, 1
+ jumpeq Route117_EventScript_1B2298
+ msgbox Route117_Text_1B2745, 4
+ clearflag 134
+ special 183
+ release
+ end
+
+Route117_EventScript_1B2298:: @ 81B2298
+ specialval RESULT, 131
+ compare RESULT, 6
+ jumpif 5, Route117_EventScript_1B22B2
+ msgbox Route117_Text_1B2766, 4
+ release
+ end
+
+Route117_EventScript_1B22B2:: @ 81B22B2
+ message Route117_Text_1B27A2
+ fanfare 367
+ waitfanfare
+ waittext
+ waitbutton
+ msgbox Route117_Text_1B27CD, 4
+ special 184
+ clearflag 134
+ release
+ end
+
+Route117_EventScript_1B22CD:: @ 81B22CD
+ specialval RESULT, 195
+ compare RESULT, 1
+ callif 1, Route117_EventScript_1B22DE
+ return
+
+Route117_EventScript_1B22DE:: @ 81B22DE
+ msgbox Route117_Text_1B27E3, 4
+ return
+
+Route117_EventScript_1B22E7:: @ 81B22E7
+ special 181
+ msgbox Route117_Text_1B2710, 4
+ setvar 0x8004, 0
+ call Route117_EventScript_1B22CD
+ release
+ end
+
+Route117_EventScript_1B22FE:: @ 81B22FE
+ special 181
+ msgbox Route117_Text_1B2897, 4
+ special 185
+ special 141
+ waittext
+ waitbutton
+ setvar 0x8004, 0
+ call Route117_EventScript_1B22CD
+ setvar 0x8004, 1
+ call Route117_EventScript_1B22CD
+ release
+ end
+
+Route117_PokemonDayCare_EventScript_1B2327:: @ 81B2327
+ lock
+ faceplayer
+ specialval RESULT, 182
+ compare RESULT, 1
+ jumpeq Route117_PokemonDayCare_EventScript_1B2407
+ compare RESULT, 2
+ jumpeq Route117_PokemonDayCare_EventScript_1B242B
+ compare RESULT, 3
+ jumpeq Route117_PokemonDayCare_EventScript_1B2558
+ msgbox Route117_PokemonDayCare_Text_1B28F2, 5
+ compare RESULT, 1
+ jumpeq Route117_PokemonDayCare_EventScript_1B236C
+ msgbox Route117_PokemonDayCare_Text_1B2A14, 4
+ release
+ end
+
+Route117_PokemonDayCare_EventScript_1B236C:: @ 81B236C
+ specialval RESULT, 132
+ compare RESULT, 1
+ jumpeq Route117_PokemonDayCare_EventScript_1B23F3
+ msgbox Route117_PokemonDayCare_Text_1B2947, 4
+ fadescreen 1
+ special 188
+ waitstate
+ compare 0x8004, 255
+ jumpeq Route117_PokemonDayCare_EventScript_1B23D0
+ specialval RESULT, 133
+ compare RESULT, 0
+ jumpeq Route117_PokemonDayCare_EventScript_1B23FD
+ specialval 0x8005, 186
+ checksound
+ pokecry 0x8005, 0
+ msgbox Route117_PokemonDayCare_Text_1B296E, 4
+ waitpokecry
+ special 187
+ inccounter 47
+ specialval RESULT, 182
+ compare RESULT, 2
+ jumpeq Route117_PokemonDayCare_EventScript_1B23DA
+ release
+ end
+
+Route117_PokemonDayCare_EventScript_1B23D0:: @ 81B23D0
+ msgbox Route117_PokemonDayCare_Text_1B2A76, 4
+ release
+ end
+
+Route117_PokemonDayCare_EventScript_1B23DA:: @ 81B23DA
+ msgbox Route117_PokemonDayCare_Text_1B29AD, 5
+ compare RESULT, 1
+ jumpeq Route117_PokemonDayCare_EventScript_1B236C
+ jump Route117_PokemonDayCare_EventScript_1B23D0
+ end
+
+Route117_PokemonDayCare_EventScript_1B23F3:: @ 81B23F3
+ msgbox Route117_PokemonDayCare_Text_1B2BBB, 4
+ release
+ end
+
+Route117_PokemonDayCare_EventScript_1B23FD:: @ 81B23FD
+ msgbox Route117_PokemonDayCare_Text_1B2C17, 4
+ release
+ end
+
+Route117_PokemonDayCare_EventScript_1B2407:: @ 81B2407
+ msgbox Route117_PokemonDayCare_Text_1B29F4, 4
+ release
+ end
+
+Route117_PokemonDayCare_EventScript_1B2411:: @ 81B2411
+ msgbox Route117_PokemonDayCare_Text_1B2ACC, 4
+ return
+
+Route117_PokemonDayCare_EventScript_1B241A:: @ 81B241A
+ specialval RESULT, 190
+ compare RESULT, 0
+ callif 5, Route117_PokemonDayCare_EventScript_1B2411
+ return
+
+Route117_PokemonDayCare_EventScript_1B242B:: @ 81B242B
+ msgbox Route117_PokemonDayCare_Text_1B2A88, 4
+ setvar 0x8004, 0
+ call Route117_PokemonDayCare_EventScript_1B241A
+ msgbox Route117_PokemonDayCare_Text_1B29AD, 5
+ compare RESULT, 1
+ jumpeq Route117_PokemonDayCare_EventScript_1B236C
+ msgbox Route117_PokemonDayCare_Text_1B2BF6, 5
+ compare RESULT, 1
+ jumpeq Route117_PokemonDayCare_EventScript_1B2469
+ jump Route117_PokemonDayCare_EventScript_1B23D0
+ end
+
+Route117_PokemonDayCare_EventScript_1B2469:: @ 81B2469
+ specialval RESULT, 131
+ compare RESULT, 6
+ jumpeq Route117_PokemonDayCare_EventScript_1B2539
+ specialval RESULT, 182
+ setvar 0x8004, 0
+ compare RESULT, 2
+ jumpeq Route117_PokemonDayCare_EventScript_1B24A8
+ special 189
+ waitstate
+ copyvar 0x8004, RESULT
+ compare RESULT, 2
+ jumpeq Route117_PokemonDayCare_EventScript_1B23D0
+ jump Route117_PokemonDayCare_EventScript_1B24A8
+ end
+
+Route117_PokemonDayCare_EventScript_1B24A8:: @ 81B24A8
+ special 191
+ msgbox Route117_PokemonDayCare_Text_1B2B49, 5
+ compare RESULT, 1
+ jumpeq Route117_PokemonDayCare_EventScript_1B24C4
+ jump Route117_PokemonDayCare_EventScript_1B23D0
+ end
+
+Route117_PokemonDayCare_EventScript_1B24C4:: @ 81B24C4
+ specialval RESULT, 197
+ compare RESULT, 1
+ jumpeq Route117_PokemonDayCare_EventScript_1B24DE
+ msgbox Route117_PokemonDayCare_Text_1B2A30, 4
+ release
+ end
+
+Route117_PokemonDayCare_EventScript_1B24DE:: @ 81B24DE
+ move 1, Route117_PokemonDayCare_Movement_1B2543
+ waitmove 0
+ specialval RESULT, 192
+ special 198
+ playsfx 95
+ msgbox Route117_PokemonDayCare_Text_1B2B75, 4
+ checksound
+ pokecry RESULT, 0
+ msgbox Route117_PokemonDayCare_Text_1B2B93, 4
+ waitpokecry
+ specialval RESULT, 182
+ compare RESULT, 2
+ jumpeq Route117_PokemonDayCare_EventScript_1B2520
+ jump Route117_PokemonDayCare_EventScript_1B23D0
+ end
+
+Route117_PokemonDayCare_EventScript_1B2520:: @ 81B2520
+ msgbox Route117_PokemonDayCare_Text_1B2A4F, 5
+ compare RESULT, 1
+ jumpeq Route117_PokemonDayCare_EventScript_1B2469
+ jump Route117_PokemonDayCare_EventScript_1B23D0
+ end
+
+Route117_PokemonDayCare_EventScript_1B2539:: @ 81B2539
+ msgbox Route117_PokemonDayCare_Text_1B2AEF, 4
+ release
+ end
+
+Route117_PokemonDayCare_Movement_1B2543:: @ 81B2543
+ step_14
+ step_14
+ step_02
+ step_14
+ step_14
+ step_03
+ step_14
+ step_14
+ step_01
+ slow_step_up
+ step_54
+ step_14
+ step_14
+ step_14
+ step_14
+ step_14
+ step_00
+ step_55
+ slow_step_down
+ step_end
+
+ .incbin "baserom.gba", 0x1b2557, 0x1
+
+Route117_PokemonDayCare_EventScript_1B2558:: @ 81B2558
+ msgbox Route117_PokemonDayCare_Text_1B2A88, 4
+ setvar 0x8004, 0
+ call Route117_PokemonDayCare_EventScript_1B241A
+ setvar 0x8004, 1
+ call Route117_PokemonDayCare_EventScript_1B241A
+ msgbox Route117_PokemonDayCare_Text_1B2BF6, 5
+ compare RESULT, 1
+ jumpeq Route117_PokemonDayCare_EventScript_1B2469
+ msgbox Route117_PokemonDayCare_Text_1B2A76, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x1b2591, 0x2b
.global gUnknown_081B25BC
gUnknown_081B25BC: @ 81B25BC
- .incbin "baserom.gba", 0x001b25bc, 0x438e
+ .incbin "baserom.gba", 0x1b25bc, 0xf
+
+Route117_Text_1B25CB:: @ 81B25CB
+ .string "I’m the DAY-CARE MAN.\p"
+ .string "I help take care of the precious\n"
+ .string "POKéMON of TRAINERS.\p"
+ .string "If you’d like me to raise your POKéMON,\n"
+ .string "have a word with my wife.$"
+
+Route117_Text_1B2659:: @ 81B2659
+ .string "Ah, it’s you!\p"
+ .string "We were raising your POKéMON, and my\n"
+ .string "goodness, were we surprised!\p"
+ .string "Your POKéMON had an EGG!\p"
+ .string "We don’t know how it got there,\n"
+ .string "but your POKéMON had it.\p"
+ .string "You do want it, yes?$"
+
+Route117_Text_1B2710:: @ 81B2710
+ .string "Ah, it’s you! Good to see you.\n"
+ .string "Your {STR_VAR_1}’s doing fine.$"
+
+Route117_Text_1B2745:: @ 81B2745
+ .string "Well then, I’ll keep it.\n"
+ .string "Thanks!$"
+
+Route117_Text_1B2766:: @ 81B2766
+ .string "You have no room for it...\n"
+ .string "Come back when you’ve made room.$"
+
+Route117_Text_1B27A2:: @ 81B27A2
+ .string "{PLAYER} received the EGG from\n"
+ .string "the DAY-CARE MAN.$"
+
+Route117_Text_1B27CD:: @ 81B27CD
+ .string "Take good care of it.$"
+
+Route117_Text_1B27E3:: @ 81B27E3
+ .string "By the way, about your {STR_VAR_1},\n"
+ .string "it seemed to be friendly with\l"
+ .string "{STR_VAR_2}’s {STR_VAR_3}.\p"
+ .string "I may even have seen it receiving\n"
+ .string "a piece of MAIL.$"
+
+ .incbin "baserom.gba", 0x1b2858, 0x3f
+
+Route117_Text_1B2897:: @ 81B2897
+ .string "Ah, it’s you! Your {STR_VAR_1} and\n"
+ .string "{STR_VAR_2} are doing fine.$"
+
+Route117_Text_1B28C4:: @ 81B28C4
+ .string "I really will keep it.\n"
+ .string "You do want this, yes?$"
+
+ .include "data/maps/text/Route117_PokemonDayCare.s"
+MtChimney_EventScript_1B2C95:: @ 81B2C95
+ lock
+ faceplayer
+ checkflag 219
+ callif 0, MtChimney_EventScript_1B2CB9
+ checkflag 219
+ callif 1, MtChimney_EventScript_1B2CC2
+ closebutton
+ move 1, MtChimney_Movement_1A083D
+ waitmove 0
+ setflag 219
+ release
+ end
+
+MtChimney_EventScript_1B2CB9:: @ 81B2CB9
+ msgbox MtChimney_Text_1B3EC1, 4
+ return
+
+MtChimney_EventScript_1B2CC2:: @ 81B2CC2
+ msgbox MtChimney_Text_1B3F8C, 4
+ return
+
+MtChimney_EventScript_1B2CCB:: @ 81B2CCB
+ lockall
+ msgbox MtChimney_Text_1B37BB, 4
+ move 2, MtChimney_Movement_1A0839
+ waitmove 0
+ playsfx 21
+ move 2, MtChimney_Movement_1A0833
+ waitmove 0
+ move 2, MtChimney_Movement_1A0835
+ waitmove 0
+ msgbox MtChimney_Text_1B38B3, 4
+ trainerbattle 3, 602, 0, MtChimney_Text_1B3A68
+ msgbox MtChimney_Text_1B3A90, 4
+ closebutton
+ pause 30
+ fadescreen 1
+ disappear 2
+ disappear 3
+ disappear 22
+ setflag 926
+ fadescreen 0
+ movespriteperm 1, 10, 12
+ reappear 1
+ compare FACING, 4
+ callif 1, MtChimney_EventScript_1B2D7D
+ compare FACING, 2
+ callif 1, MtChimney_EventScript_1B2D88
+ move 255, MtChimney_Movement_1A083F
+ waitmove 0
+ msgbox MtChimney_Text_1B3FFE, 4
+ closebutton
+ compare FACING, 4
+ callif 1, MtChimney_EventScript_1B2D93
+ compare FACING, 2
+ callif 1, MtChimney_EventScript_1B2D9E
+ disappear 1
+ setflag 927
+ setflag 139
+ clearflag 928
+ setflag 942
+ releaseall
+ end
+
+MtChimney_EventScript_1B2D7D:: @ 81B2D7D
+ move 1, MtChimney_Movement_15D025
+ waitmove 0
+ return
+
+MtChimney_EventScript_1B2D88:: @ 81B2D88
+ move 1, MtChimney_Movement_15D036
+ waitmove 0
+ return
+
+MtChimney_EventScript_1B2D93:: @ 81B2D93
+ move 1, MtChimney_Movement_15D02D
+ waitmove 0
+ return
+
+MtChimney_EventScript_1B2D9E:: @ 81B2D9E
+ move 1, MtChimney_Movement_15D03E
+ waitmove 0
+ return
+
+MtPyre_Summit_EventScript_1B2DA9:: @ 81B2DA9
+ trainerbattle 0, 588, 0, MtPyre_Summit_Text_1B5CFD, MtPyre_Summit_Text_1B5D30
+ msgbox MtPyre_Summit_Text_1B5D6D, 6
+ end
+
+MtPyre_Summit_EventScript_1B2DC0:: @ 81B2DC0
+ trainerbattle 0, 589, 0, MtPyre_Summit_Text_1B5DA2, MtPyre_Summit_Text_1B5DDB
+ msgbox MtPyre_Summit_Text_1B5DF1, 6
+ end
+
+MtPyre_Summit_EventScript_1B2DD7:: @ 81B2DD7
+ trainerbattle 0, 590, 0, MtPyre_Summit_Text_1B5E27, MtPyre_Summit_Text_1B5E60
+ msgbox MtPyre_Summit_Text_1B5E84, 6
+ end
+
+ .incbin "baserom.gba", 0x1b2dee, 0x9cd
+
+MtChimney_Text_1B37BB:: @ 81B37BB
+ .string "The power contained in the METEORITE...\p"
+ .string "By amplifying its power with this\n"
+ .string "machine, MT. CHIMNEY’s volcanic activity\l"
+ .string "will instantly intensify...\p"
+ .string "Fufufu... The volcano will erupt, spewing\n"
+ .string "lava that will cool and harden.\l"
+ .string "It will expand the landmass...$"
+
+MtChimney_Text_1B38B3:: @ 81B38B3
+ .string "MAXIE: You again...\p"
+ .string "Now listen.\n"
+ .string "We humans have grown on dry land.\p"
+ .string "The land is everything!\n"
+ .string "Its importance is paramount!\p"
+ .string "That is why we of TEAM MAGMA are\n"
+ .string "committed to expanding the landmass.\p"
+ .string "It will create space for new species\n"
+ .string "of POKéMON to evolve.\p"
+ .string "It will give us humans more space to\n"
+ .string "advance.\p"
+ .string "That is TEAM MAGMA’s vision!\p"
+ .string "I can’t allow an ignorant child like\n"
+ .string "you to get in our way.\p"
+ .string "I, MAXIE, will show you the\n"
+ .string "consequences of meddling!$"
+
+MtChimney_Text_1B3A68:: @ 81B3A68
+ .string "What?!\p"
+ .string "I, MAXIE, was caught off guard?!$"
+
+MtChimney_Text_1B3A90:: @ 81B3A90
+ .string "MAXIE: Ah, whatever.\n"
+ .string "I will give up our plans for MT. CHIMNEY\l"
+ .string "for the time being...\p"
+ .string "But no one can ever stop us!\n"
+ .string "TEAM MAGMA will prevail!\p"
+ .string "Don’t you ever forget that!$"
+
+MtChimney_Text_1B3B36:: @ 81B3B36
+ .string "Hehehe!\p"
+ .string "So you’ve come all the way here!\p"
+ .string "But you’re too late!\n"
+ .string "I’ve already delivered the METEORITE\l"
+ .string "from METEOR FALLS to the BOSS!$"
+
+MtChimney_Text_1B3BB8:: @ 81B3BB8
+ .string "Hehehe...\n"
+ .string "So I lost...\p"
+ .string "I’m sure glad I never took you on back\n"
+ .string "at METEOR FALLS.$"
+
+MtChimney_Text_1B3C07:: @ 81B3C07
+ .string "Hehehe!\p"
+ .string "You might have beaten me, but you don’t\n"
+ .string "stand a chance against the BOSS!\p"
+ .string "If you get lost now, you won’t have to\n"
+ .string "face a sound whipping!$"
+
+MtChimney_Text_1B3C96:: @ 81B3C96
+ .string "We of TEAM MAGMA are working hard for\n"
+ .string "everyone’s sake.\p"
+ .string "Like, if there’s more land, there’d be\n"
+ .string "more places to live.\l"
+ .string "Everyone’d be happy!$"
+
+MtChimney_Text_1B3D1E:: @ 81B3D1E
+ .string "Hunh?\n"
+ .string "What do you mean I lost?$"
+
+MtChimney_Text_1B3D3D:: @ 81B3D3D
+ .string "Our BOSS says, “It will make everyone\n"
+ .string "happy.”\p"
+ .string "But why does everyone keep getting\n"
+ .string "in our way?$"
+
+MtChimney_Text_1B3D9A:: @ 81B3D9A
+ .string "That annoying TEAM AQUA...\n"
+ .string "They always mess with our plans!$"
+
+ .incbin "baserom.gba", 0x1b3dd6, 0x1f
+
+MtChimney_Text_1B3DF5:: @ 81B3DF5
+ .string "Go! Stomp TEAM AQUA!\n"
+ .string "And expand the land!$"
+
+MtChimney_Text_1B3E1F:: @ 81B3E1F
+ .string "Stay out of our way, okay?\p"
+ .string "We’re trying to enlarge the landmass\n"
+ .string "for the good of everybody!$"
+
+MtChimney_Text_1B3E7A:: @ 81B3E7A
+ .string "Yeah!\n"
+ .string "Douse them in fire!$"
+
+ .incbin "baserom.gba", 0x1b3e94, 0x26
+
+MtChimney_Text_1B3EBA:: @ 81B3EBA
+ .string "Bufoh!$"
+
+MtChimney_Text_1B3EC1:: @ 81B3EC1
+ .string "ARCHIE: Oh, {PLAYER}{KUN}!\p"
+ .string "Please, you must stop TEAM MAGMA\n"
+ .string "for me!\p"
+ .string "They’re trying to make this volcano\n"
+ .string "erupt by using the stolen METEORITE’s\l"
+ .string "power!\p"
+ .string "It’s all a part of their plans to\n"
+ .string "expand the world’s landmass!$"
+
+MtChimney_Text_1B3F8C:: @ 81B3F8C
+ .string "ARCHIE: {PLAYER}{KUN}!\p"
+ .string "Please, you’ve got to stop TEAM MAGMA\n"
+ .string "for me!\p"
+ .string "Dealing with these three thugs is\n"
+ .string "a lot, even for me!$"
+
+MtChimney_Text_1B3FFE:: @ 81B3FFE
+ .string "ARCHIE: {PLAYER}{KUN}! Thank you!\p"
+ .string "With your help, we thwarted TEAM\n"
+ .string "MAGMA’s destructive plan!\p"
+ .string "But... This victory doesn’t mean the\n"
+ .string "end of their evil plans.\p"
+ .string "We will remain vigilant and keep up\n"
+ .string "our pursuit of TEAM MAGMA.\p"
+ .string "{PLAYER}{KUN}, we shall meet again!$"
+
+MtChimney_Text_1B40EA:: @ 81B40EA
+ .string "Darn... TEAM MAGMA outnumbers us!\n"
+ .string "We can’t keep up with them!$"
+
+MtChimney_Text_1B4128:: @ 81B4128
+ .string "If they expand the land, there’ll be\n"
+ .string "less habitats for WATER POKéMON!$"
+
+MtChimney_Text_1B416E:: @ 81B416E
+ .string "TEAM MAGMA wants to expand the\n"
+ .string "landmass... How’s that for insane?$"
+
+MtChimney_Text_1B41B0:: @ 81B41B0
+ .string "Bushaa!$"
+
+ .incbin "baserom.gba", 0x1b41b8, 0x698
+
+ .include "data/maps/text/SeafloorCavern_Room9.s"
+ .include "data/maps/text/CaveOfOrigin_B4F.s"
+ .include "data/maps/text/MtPyre_Summit.s"
.global gUnknown_081B694A
gUnknown_081B694A: @ 81B694A
- .incbin "baserom.gba", 0x001b694a, 0x510
+
+ .incbin "baserom.gba", 0x1b694a, 0x6
+
+LittlerootTown_BrendansHouse_2F_EventScript_1B6950:: @ 81B6950
+LittlerootTown_MaysHouse_2F_EventScript_1B6950:: @ 81B6950
+ setvar 0x4092, 5
+ return
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6956:: @ 81B6956
+LittlerootTown_MaysHouse_1F_EventScript_1B6956:: @ 81B6956
+ msgbox LittlerootTown_BrendansHouse_1F_Text_172429, 4
+ move 0x8004, LittlerootTown_BrendansHouse_1F_Movement_1A0839
+ waitmove 0
+ compare 0x8005, 0
+ callif 1, LittlerootTown_BrendansHouse_1F_EventScript_1B699F
+ compare 0x8005, 1
+ callif 1, LittlerootTown_BrendansHouse_1F_EventScript_1B69AA
+ msgbox LittlerootTown_BrendansHouse_1F_Text_172453, 4
+ closebutton
+ setvar 0x4092, 4
+ move 255, LittlerootTown_BrendansHouse_1F_Movement_1B69B5
+ move 0x8004, LittlerootTown_BrendansHouse_1F_Movement_1A0841
+ waitmove 0
+ releaseall
+ end
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B699F:: @ 81B699F
+ move 255, LittlerootTown_BrendansHouse_1F_Movement_1A0843
+ waitmove 0
+ return
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B69AA:: @ 81B69AA
+ move 255, LittlerootTown_BrendansHouse_1F_Movement_1A083F
+ waitmove 0
+ return
+
+LittlerootTown_BrendansHouse_1F_Movement_1B69B5:: @ 81B69B5
+ step_up
+ step_end
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B69B7:: @ 81B69B7
+LittlerootTown_MaysHouse_1F_EventScript_1B69B7:: @ 81B69B7
+ msgbox LittlerootTown_BrendansHouse_1F_Text_172531, 4
+ closebutton
+ move 0x8004, LittlerootTown_BrendansHouse_1F_Movement_1A0841
+ move 255, LittlerootTown_BrendansHouse_1F_Movement_1B6CDC
+ waitmove 0
+ releaseall
+ end
+
+LittlerootTown_BrendansHouse_2F_EventScript_1B69D3:: @ 81B69D3
+ lockall
+ setvar 0x8004, 0
+ jump LittlerootTown_BrendansHouse_2F_EventScript_1B69EB
+ end
+
+LittlerootTown_MaysHouse_2F_EventScript_1B69DF:: @ 81B69DF
+ lockall
+ setvar 0x8004, 1
+ jump LittlerootTown_MaysHouse_2F_EventScript_1B69EB
+ end
+
+LittlerootTown_BrendansHouse_2F_EventScript_1B69EB:: @ 81B69EB
+LittlerootTown_MaysHouse_2F_EventScript_1B69EB:: @ 81B69EB
+ checkflag 81
+ jumpeq LittlerootTown_BrendansHouse_2F_EventScript_1B6A91
+ msgbox LittlerootTown_BrendansHouse_2F_Text_172E18, 4
+ call LittlerootTown_BrendansHouse_2F_EventScript_1B6A9B
+ pause 30
+ setvar 0x4092, 6
+ setflag 81
+ setflag 754
+ setflag 755
+ checkgender
+ compare RESULT, 0
+ callif 1, LittlerootTown_BrendansHouse_2F_EventScript_1B6A31
+ compare RESULT, 1
+ callif 1, LittlerootTown_BrendansHouse_2F_EventScript_1B6A61
+ playsfx 9
+ disappear 0x8008
+ releaseall
+ end
+
+LittlerootTown_BrendansHouse_2F_EventScript_1B6A31:: @ 81B6A31
+ setvar 0x8008, 14
+ reappear 0x8008
+ move 0x8008, LittlerootTown_BrendansHouse_2F_Movement_1B6AA2
+ waitmove 0
+ move 255, LittlerootTown_BrendansHouse_2F_Movement_1A0843
+ waitmove 0
+ msgbox LittlerootTown_BrendansHouse_2F_Text_172E4C, 4
+ closebutton
+ move 0x8008, LittlerootTown_BrendansHouse_2F_Movement_1B6AA9
+ waitmove 0
+ return
+
+LittlerootTown_BrendansHouse_2F_EventScript_1B6A61:: @ 81B6A61
+ setvar 0x8008, 14
+ reappear 0x8008
+ move 0x8008, LittlerootTown_BrendansHouse_2F_Movement_1B6AAD
+ waitmove 0
+ move 255, LittlerootTown_BrendansHouse_2F_Movement_1A083F
+ waitmove 0
+ msgbox LittlerootTown_BrendansHouse_2F_Text_172E4C, 4
+ closebutton
+ move 0x8008, LittlerootTown_BrendansHouse_2F_Movement_1B6AB4
+ waitmove 0
+ return
+
+LittlerootTown_BrendansHouse_2F_EventScript_1B6A91:: @ 81B6A91
+ inccounter 45
+ fadescreen 1
+ special 155
+ waitstate
+ releaseall
+ end
+
+LittlerootTown_BrendansHouse_2F_EventScript_1B6A9B:: @ 81B6A9B
+ fadescreen 1
+ special 154
+ waitstate
+ return
+
+LittlerootTown_BrendansHouse_2F_Movement_1B6AA2:: @ 81B6AA2
+ step_13
+ step_down
+ step_27
+ step_14
+ step_13
+ step_left
+ step_end
+
+LittlerootTown_BrendansHouse_2F_Movement_1B6AA9:: @ 81B6AA9
+ step_right
+ step_up
+ step_13
+ step_end
+
+LittlerootTown_BrendansHouse_2F_Movement_1B6AAD:: @ 81B6AAD
+ step_13
+ step_down
+ step_28
+ step_14
+ step_13
+ step_right
+ step_end
+
+LittlerootTown_BrendansHouse_2F_Movement_1B6AB4:: @ 81B6AB4
+ step_left
+ step_up
+ step_13
+ step_end
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6AB8:: @ 81B6AB8
+LittlerootTown_MaysHouse_1F_EventScript_1B6AB8:: @ 81B6AB8
+ setvar 0x4092, 7
+ releaseall
+ end
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6ABF:: @ 81B6ABF
+ move 0x8005, LittlerootTown_BrendansHouse_1F_Movement_1A0843
+ waitmove 0
+ call LittlerootTown_BrendansHouse_1F_EventScript_1B6B9D
+ move 255, LittlerootTown_BrendansHouse_1F_Movement_1B6CCC
+ waitmove 0
+ playmusic 453, 0
+ msgbox LittlerootTown_BrendansHouse_1F_Text_1725C9, 4
+ closebutton
+ move 0x8005, LittlerootTown_BrendansHouse_1F_Movement_1B6BDB
+ waitmove 0
+ move 255, LittlerootTown_BrendansHouse_1F_Movement_1B6CD2
+ waitmove 0
+ call LittlerootTown_BrendansHouse_1F_EventScript_1B6BBE
+ move 255, LittlerootTown_BrendansHouse_1F_Movement_1A083F
+ waitmove 0
+ msgbox LittlerootTown_BrendansHouse_1F_Text_1725FE, 4
+ msgbox LittlerootTown_BrendansHouse_1F_Text_172644, 4
+ closebutton
+ setvar 0x4001, 1
+ move 0x8005, LittlerootTown_BrendansHouse_1F_Movement_1B6BE1
+ waitmove 0
+ jump LittlerootTown_BrendansHouse_1F_EventScript_1B6AB8
+ end
+
+LittlerootTown_MaysHouse_1F_EventScript_1B6B2E:: @ 81B6B2E
+ move 0x8005, LittlerootTown_MaysHouse_1F_Movement_1A083F
+ waitmove 0
+ call LittlerootTown_MaysHouse_1F_EventScript_1B6B9D
+ move 255, LittlerootTown_MaysHouse_1F_Movement_1B6CD4
+ waitmove 0
+ playmusic 453, 0
+ msgbox LittlerootTown_MaysHouse_1F_Text_1725C9, 4
+ closebutton
+ move 0x8005, LittlerootTown_MaysHouse_1F_Movement_1B6BDE
+ waitmove 0
+ move 255, LittlerootTown_MaysHouse_1F_Movement_1B6CDA
+ waitmove 0
+ call LittlerootTown_MaysHouse_1F_EventScript_1B6BBE
+ move 255, LittlerootTown_MaysHouse_1F_Movement_1A0843
+ waitmove 0
+ msgbox LittlerootTown_MaysHouse_1F_Text_1725FE, 4
+ msgbox LittlerootTown_MaysHouse_1F_Text_172644, 4
+ closebutton
+ setvar 0x4001, 1
+ move 0x8005, LittlerootTown_MaysHouse_1F_Movement_1B6BE5
+ waitmove 0
+ jump LittlerootTown_MaysHouse_1F_EventScript_1B6AB8
+ end
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6B9D:: @ 81B6B9D
+LittlerootTown_MaysHouse_1F_EventScript_1B6B9D:: @ 81B6B9D
+ playsfx 21
+ move 0x8005, LittlerootTown_BrendansHouse_1F_Movement_1A0833
+ waitmove 0
+ move 0x8005, LittlerootTown_BrendansHouse_1F_Movement_1A0835
+ waitmove 0
+ msgbox LittlerootTown_BrendansHouse_1F_Text_1725A3, 4
+ closebutton
+ return
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6BBE:: @ 81B6BBE
+LittlerootTown_MaysHouse_1F_EventScript_1B6BBE:: @ 81B6BBE
+ move 255, LittlerootTown_BrendansHouse_1F_Movement_1A0841
+ waitmove 0
+ msgbox LittlerootTown_BrendansHouse_1F_Text_172841, 4
+ fadedefault
+ special 62
+ setflag 2096
+ pause 35
+ return
+
+LittlerootTown_BrendansHouse_1F_Movement_1B6BDB:: @ 81B6BDB
+ step_left
+ step_28
+ step_end
+
+LittlerootTown_MaysHouse_1F_Movement_1B6BDE:: @ 81B6BDE
+ step_right
+ step_27
+ step_end
+
+LittlerootTown_BrendansHouse_1F_Movement_1B6BE1:: @ 81B6BE1
+ step_left
+ step_down
+ step_28
+ step_end
+
+LittlerootTown_MaysHouse_1F_Movement_1B6BE5:: @ 81B6BE5
+ step_right
+ step_down
+ step_27
+ step_end
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6BE9:: @ 81B6BE9
+LittlerootTown_MaysHouse_1F_EventScript_1B6BE9:: @ 81B6BE9
+ lock
+ faceplayer
+ compare 0x4082, 4
+ jumpeq LittlerootTown_BrendansHouse_1F_EventScript_1B6C33
+ compare 0x408c, 4
+ jumpeq LittlerootTown_BrendansHouse_1F_EventScript_1B6C33
+ checkflag 2059
+ jumpeq LittlerootTown_BrendansHouse_1F_EventScript_1B6C3D
+ checkflag 82
+ jumpeq LittlerootTown_BrendansHouse_1F_EventScript_1B6C72
+ compare 0x4001, 1
+ jumpeq LittlerootTown_BrendansHouse_1F_EventScript_1B6C80
+ compare 0x4092, 7
+ jumpif 4, LittlerootTown_BrendansHouse_1F_EventScript_1B6C9C
+ msgbox LittlerootTown_BrendansHouse_1F_Text_172429, 4
+ release
+ end
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6C33:: @ 81B6C33
+ msgbox LittlerootTown_BrendansHouse_1F_Text_172BBC, 4
+ release
+ end
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6C3D:: @ 81B6C3D
+ checkflag 133
+ jumpeq LittlerootTown_BrendansHouse_1F_EventScript_1B6C72
+ msgbox LittlerootTown_BrendansHouse_1F_Text_172782, 4
+ giveitem ITEM_AMULET_COIN
+ compare RESULT, 0
+ jumpeq LittlerootTown_BrendansHouse_1F_EventScript_1A029B
+ msgbox LittlerootTown_BrendansHouse_1F_Text_1727CD, 4
+ setflag 133
+ release
+ end
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6C72:: @ 81B6C72
+ msgbox LittlerootTown_BrendansHouse_1F_Text_172717, 4
+ jump LittlerootTown_BrendansHouse_1F_EventScript_1B6C8A
+ end
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6C80:: @ 81B6C80
+ msgbox LittlerootTown_BrendansHouse_1F_Text_1726D2, 4
+ release
+ end
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6C8A:: @ 81B6C8A
+ closebutton
+ call LittlerootTown_BrendansHouse_1F_EventScript_1A02CA
+ inccounter 16
+ msgbox LittlerootTown_BrendansHouse_1F_Text_17276B, 4
+ release
+ end
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6C9C:: @ 81B6C9C
+ msgbox LittlerootTown_BrendansHouse_1F_Text_1726E7, 4
+ release
+ end
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6CA6:: @ 81B6CA6
+LittlerootTown_MaysHouse_1F_EventScript_1B6CA6:: @ 81B6CA6
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_MACHOKE, 0
+ msgbox LittlerootTown_BrendansHouse_1F_Text_17281D, 4
+ waitpokecry
+ release
+ end
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6CB9:: @ 81B6CB9
+LittlerootTown_MaysHouse_1F_EventScript_1B6CB9:: @ 81B6CB9
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_MACHOKE, 0
+ msgbox LittlerootTown_BrendansHouse_1F_Text_172831, 4
+ waitpokecry
+ release
+ end
+
+LittlerootTown_BrendansHouse_1F_Movement_1B6CCC:: @ 81B6CCC
+ step_down
+ step_down
+ step_left
+ step_left
+ step_left
+ step_end
+
+LittlerootTown_BrendansHouse_1F_Movement_1B6CD2:: @ 81B6CD2
+ step_left
+ step_end
+
+LittlerootTown_MaysHouse_1F_Movement_1B6CD4:: @ 81B6CD4
+ step_down
+ step_down
+ step_right
+ step_right
+ step_right
+ step_end
+
+LittlerootTown_MaysHouse_1F_Movement_1B6CDA:: @ 81B6CDA
+ step_right
+ step_end
+
+LittlerootTown_BrendansHouse_1F_Movement_1B6CDC:: @ 81B6CDC
+ step_up
+ step_end
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6CDE:: @ 81B6CDE
+LittlerootTown_MaysHouse_1F_EventScript_1B6CDE:: @ 81B6CDE
+ lockall
+ checkgender
+ compare RESULT, 0
+ callif 1, LittlerootTown_BrendansHouse_1F_EventScript_1B6DAD
+ compare RESULT, 1
+ callif 1, LittlerootTown_BrendansHouse_1F_EventScript_1B6DBD
+ compare 0x8008, 0
+ callif 1, LittlerootTown_BrendansHouse_1F_EventScript_1B6E1D
+ compare 0x8008, 1
+ callif 1, LittlerootTown_BrendansHouse_1F_EventScript_1B6E28
+ move 0x8009, LittlerootTown_BrendansHouse_1F_Movement_1A0839
+ waitmove 0
+ playsfx 21
+ move 0x8009, LittlerootTown_BrendansHouse_1F_Movement_1A0833
+ waitmove 0
+ move 0x8009, LittlerootTown_BrendansHouse_1F_Movement_1A0835
+ waitmove 0
+ pause 20
+ compare 0x8008, 0
+ callif 1, LittlerootTown_BrendansHouse_1F_EventScript_1B6DCD
+ compare 0x8008, 1
+ callif 1, LittlerootTown_BrendansHouse_1F_EventScript_1B6DD8
+ msgbox LittlerootTown_BrendansHouse_1F_Text_17298B, 4
+ giveitem ITEM_SS_TICKET
+ msgbox LittlerootTown_BrendansHouse_1F_Text_172A7D, 4
+ closebutton
+ compare 0x8008, 0
+ callif 1, LittlerootTown_BrendansHouse_1F_EventScript_1B6DE3
+ compare 0x8008, 1
+ callif 1, LittlerootTown_BrendansHouse_1F_EventScript_1B6DEE
+ msgbox LittlerootTown_BrendansHouse_1F_Text_172B5E, 4
+ closebutton
+ compare 0x8008, 0
+ callif 1, LittlerootTown_BrendansHouse_1F_EventScript_1B6DF9
+ compare 0x8008, 1
+ callif 1, LittlerootTown_BrendansHouse_1F_EventScript_1B6E0B
+ playsfx 8
+ disappear 0x8009
+ setflag 291
+ setvar 0x4082, 4
+ setvar 0x408c, 4
+ releaseall
+ end
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6DAD:: @ 81B6DAD
+ setvar 0x8008, 0
+ setvar 0x8009, 5
+ setvar 0x800a, 1
+ return
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6DBD:: @ 81B6DBD
+ setvar 0x8008, 1
+ setvar 0x8009, 5
+ setvar 0x800a, 1
+ return
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6DCD:: @ 81B6DCD
+ move 0x8009, LittlerootTown_BrendansHouse_1F_Movement_1B6E33
+ waitmove 0
+ return
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6DD8:: @ 81B6DD8
+ move 0x8009, LittlerootTown_BrendansHouse_1F_Movement_1B6E36
+ waitmove 0
+ return
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6DE3:: @ 81B6DE3
+ move 0x8009, LittlerootTown_BrendansHouse_1F_Movement_1B6E39
+ waitmove 0
+ return
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6DEE:: @ 81B6DEE
+ move 0x8009, LittlerootTown_BrendansHouse_1F_Movement_1B6E3B
+ waitmove 0
+ return
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6DF9:: @ 81B6DF9
+ move 255, LittlerootTown_BrendansHouse_1F_Movement_1B6E4F
+ move 0x8009, LittlerootTown_BrendansHouse_1F_Movement_1B6E3D
+ waitmove 0
+ return
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6E0B:: @ 81B6E0B
+ move 255, LittlerootTown_BrendansHouse_1F_Movement_1B6E4F
+ move 0x8009, LittlerootTown_BrendansHouse_1F_Movement_1B6E43
+ waitmove 0
+ return
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6E1D:: @ 81B6E1D
+ move 255, LittlerootTown_BrendansHouse_1F_Movement_1B6E49
+ waitmove 0
+ return
+
+LittlerootTown_BrendansHouse_1F_EventScript_1B6E28:: @ 81B6E28
+ move 255, LittlerootTown_BrendansHouse_1F_Movement_1B6E54
+ waitmove 0
+ return
+
+LittlerootTown_BrendansHouse_1F_Movement_1B6E33:: @ 81B6E33
+ step_right
+ step_right
+ step_end
+
+LittlerootTown_BrendansHouse_1F_Movement_1B6E36:: @ 81B6E36
+ step_left
+ step_left
+ step_end
+
+LittlerootTown_BrendansHouse_1F_Movement_1B6E39:: @ 81B6E39
+ step_left
+ step_end
+
+LittlerootTown_BrendansHouse_1F_Movement_1B6E3B:: @ 81B6E3B
+ step_right
+ step_end
+
+LittlerootTown_BrendansHouse_1F_Movement_1B6E3D:: @ 81B6E3D
+ step_down
+ step_right
+ step_right
+ step_down
+ step_13
+ step_end
+
+LittlerootTown_BrendansHouse_1F_Movement_1B6E43:: @ 81B6E43
+ step_down
+ step_left
+ step_left
+ step_down
+ step_13
+ step_end
+
+LittlerootTown_BrendansHouse_1F_Movement_1B6E49:: @ 81B6E49
+ step_14
+ step_down
+ step_down
+ step_down
+ step_27
+ step_end
+
+LittlerootTown_BrendansHouse_1F_Movement_1B6E4F:: @ 81B6E4F
+ step_14
+ step_14
+ step_14
+ step_25
+ step_end
+
+LittlerootTown_BrendansHouse_1F_Movement_1B6E54:: @ 81B6E54
+ step_14
+ step_down
+ step_down
+ step_down
+ step_28
+ step_end
.global gUnknown_081B6E5A
gUnknown_081B6E5A: @ 81B6E5A
- .incbin "baserom.gba", 0x001b6e5a, 0xc58c
+ .incbin "baserom.gba", 0x1b6e5a, 0x9
+
+FallarborTown_ContestLobby_Text_1B6E63:: @ 81B6E63
+ .string "Oh? Did you want to make some {POKEBLOCK}S\n"
+ .string "with this old-timer?$"
+
+FallarborTown_ContestLobby_Text_1B6E9D:: @ 81B6E9D
+ .string "Excellent!$"
+
+FallarborTown_ContestLobby_Text_1B6EA8:: @ 81B6EA8
+ .string "Oh...\n"
+ .string "You’ve made this old-timer sad...$"
+
+FallarborTown_ContestLobby_Text_1B6ED0:: @ 81B6ED0
+ .string "Do you know how to make a {POKEBLOCK}?$"
+
+FallarborTown_ContestLobby_Text_1B6EF1:: @ 81B6EF1
+ .string "Let’s get started, then!\p"
+ .string "Let’s BERRY BLENDER!$"
+
+FallarborTown_ContestLobby_Text_1B6F1F:: @ 81B6F1F
+ .string "Okay, a little explanation, then.\p"
+ .string "Oh, don’t worry, it’s quite simple.\p"
+ .string "When the BLENDER’s arrow comes to\n"
+ .string "your marker, just press the A Button.\p"
+ .string "That’s all you have to do.\n"
+ .string "You’ll see how easy it is when you try.$"
+
+FallarborTown_ContestLobby_Text_1B6FF0:: @ 81B6FF0
+ .string "Oh?\n"
+ .string "You don’t have any BERRIES?\p"
+ .string "If you don’t have any BERRIES,\n"
+ .string "you can’t make any {POKEBLOCK}S.$"
+
+FallarborTown_ContestLobby_Text_1B704A:: @ 81B704A
+ .string "Well, that won’t do at all now, will it?\p"
+ .string "If you don’t mind leftovers, you can\n"
+ .string "have one of my BERRIES.\p"
+ .string "That way, we could make some {POKEBLOCK}S\n"
+ .string "together using the BERRY BLENDER.$"
+
+FallarborTown_ContestLobby_Text_1B70F6:: @ 81B70F6
+ .string "If I had some BERRIES left over,\n"
+ .string "I’d gladly give you one...\p"
+ .string "But, I don’t have any to spare today.\n"
+ .string "We’ll have to do this another time.$"
+
+FallarborTown_ContestLobby_Text_1B717C:: @ 81B717C
+ .string "But your {POKEBLOCK} CASE is full.\p"
+ .string "You should use some {POKEBLOCK}S before\n"
+ .string "you come see me again.$"
+
+FallarborTown_ContestLobby_Text_1B71D2:: @ 81B71D2
+ .string "But you don’t have a {POKEBLOCK} CASE.\p"
+ .string "You should get a {POKEBLOCK} CASE and then\n"
+ .string "come see me.$"
+
+LilycoveCity_ContestLobby_Text_1B7225:: @ 81B7225
+SlateportCity_ContestLobby_Text_1B7225:: @ 81B7225
+ .string "Let’s get blending already!$"
+
+LilycoveCity_ContestLobby_Text_1B7241:: @ 81B7241
+ .string "I wonder what kind of {POKEBLOCK} I’ll get?\n"
+ .string "This is so exciting!$"
+
+FallarborTown_ContestLobby_Text_1B727C:: @ 81B727C
+ .string "{POKEBLOCK}S will be made with your friends \n"
+ .string "from BERRIES in the BERRY BLENDER.\p"
+ .string "Is it okay to save the game before\n"
+ .string "linking with your friends?$"
+
+FallarborTown_ContestLobby_Text_1B7304:: @ 81B7304
+ .string "Searching for your friends...\n"
+ .string "... ... B Button: Cancel$"
+
+FallarborTown_ContestLobby_Text_1B733B:: @ 81B733B
+ .string "{STR_VAR_1} arrived.$"
+
+FallarborTown_ContestLobby_Text_1B7347:: @ 81B7347
+ .string "{STR_VAR_1} and {STR_VAR_2} arrived.$"
+
+FallarborTown_ContestLobby_Text_1B735A:: @ 81B735A
+ .string "{STR_VAR_1}, {STR_VAR_2}, and\n"
+ .string "{STR_VAR_3} arrived.$"
+
+ .incbin "baserom.gba", 0x1b7372, 0xf
+
+FallarborTown_ContestLobby_Text_1B7381:: @ 81B7381
+ .string "You have no BERRIES.\n"
+ .string "The BERRY BLENDER can’t be used.$"
+
+FallarborTown_ContestLobby_Text_1B73B7:: @ 81B73B7
+ .string "Your {POKEBLOCK} CASE is full.\n"
+ .string "The BERRY BLENDER can’t be used.$"
+
+FallarborTown_ContestLobby_Text_1B73F1:: @ 81B73F1
+ .string "You don’t have a {POKEBLOCK} CASE.\n"
+ .string "The BERRY BLENDER can’t be used.$"
+
+FallarborTown_ContestLobby_Text_1B742F:: @ 81B742F
+ .string "I love making {POKEBLOCK}S.\p"
+ .string "I always have some BERRIES with me.$"
+
+FallarborTown_ContestLobby_Text_1B7469:: @ 81B7469
+ .string "If you’d like, we could make some\n"
+ .string "{POKEBLOCK}S together using the\l"
+ .string "BERRY BLENDER.$"
+
+FallarborTown_ContestLobby_Text_1B74B4:: @ 81B74B4
+ .string "Oh?\n"
+ .string "You don’t have any BERRIES?\p"
+ .string "Well, that won’t do at all now, will it?\p"
+ .string "If you don’t mind leftovers, you can\n"
+ .string "have one of my BERRIES.$"
+
+FallarborTown_ContestLobby_Text_1B753A:: @ 81B753A
+ .string "We’ll use it to make {POKEBLOCK}S together\n"
+ .string "using the BERRY BLENDER.$"
+
+FallarborTown_ContestLobby_Text_1B7578:: @ 81B7578
+ .string "Oh?\n"
+ .string "You don’t have any BERRIES?\p"
+ .string "If I had some left over, I’d gladly\n"
+ .string "give you one...\p"
+ .string "But, I don’t have any to spare today.\n"
+ .string "Sorry about that.$"
+
+FallarborTown_ContestLobby_EventScript_1B7604:: @ 81B7604
+ setvar 0x8008, 4
+ setvar 0x8009, 1
+ move 0x8008, FallarborTown_ContestLobby_Movement_1B7821
+ waitmove 0
+ jump FallarborTown_ContestLobby_EventScript_1B7681
+ end
+
+SlateportCity_ContestLobby_EventScript_1B761E:: @ 81B761E
+ setvar 0x8008, 2
+ setvar 0x8009, 2
+ move 6, SlateportCity_ContestLobby_Movement_1A083D
+ move 0x8008, SlateportCity_ContestLobby_Movement_1B7821
+ waitmove 0
+ jump SlateportCity_ContestLobby_EventScript_1B7681
+ end
+
+VerdanturfTown_ContestLobby_EventScript_1B763F:: @ 81B763F
+ setvar 0x8008, 2
+ setvar 0x8009, 1
+ move 0x8008, VerdanturfTown_ContestLobby_Movement_1B7821
+ waitmove 0
+ jump VerdanturfTown_ContestLobby_EventScript_1B7681
+ end
+
+LilycoveCity_ContestLobby_EventScript_1B7659:: @ 81B7659
+ setvar 0x8008, 3
+ setvar 0x8009, 3
+ move 9, LilycoveCity_ContestLobby_Movement_1A083D
+ move 10, LilycoveCity_ContestLobby_Movement_1A083D
+ move 0x8008, LilycoveCity_ContestLobby_Movement_1B7821
+ waitmove 0
+ jump LilycoveCity_ContestLobby_EventScript_1B7681
+ end
+
+FallarborTown_ContestLobby_EventScript_1B7681:: @ 81B7681
+LilycoveCity_ContestLobby_EventScript_1B7681:: @ 81B7681
+SlateportCity_ContestLobby_EventScript_1B7681:: @ 81B7681
+VerdanturfTown_ContestLobby_EventScript_1B7681:: @ 81B7681
+ lockall
+ msgbox FallarborTown_ContestLobby_Text_1B6E63, 5
+ compare RESULT, 1
+ jumpeq FallarborTown_ContestLobby_EventScript_1B76A1
+ compare RESULT, 0
+ jumpeq FallarborTown_ContestLobby_EventScript_1B76E5
+ end
+
+FallarborTown_ContestLobby_EventScript_1B76A1:: @ 81B76A1
+ checkitem ITEM_POKEBLOCK_CASE, 1
+ compare RESULT, 0
+ jumpeq FallarborTown_ContestLobby_EventScript_1B7780
+ specialval RESULT, 49
+ compare RESULT, 0
+ jumpeq FallarborTown_ContestLobby_EventScript_1B770E
+ msgbox FallarborTown_ContestLobby_Text_1B6E9D, 4
+ specialval RESULT, 160
+ compare RESULT, 65535
+ jumpif 5, FallarborTown_ContestLobby_EventScript_1B76EF
+ compare RESULT, 65535
+ jumpeq FallarborTown_ContestLobby_EventScript_1B7776
+ end
+
+FallarborTown_ContestLobby_EventScript_1B76E5:: @ 81B76E5
+ msgbox FallarborTown_ContestLobby_Text_1B6EA8, 4
+ releaseall
+ end
+
+FallarborTown_ContestLobby_EventScript_1B76EF:: @ 81B76EF
+ msgbox FallarborTown_ContestLobby_Text_1B6ED0, 5
+ compare RESULT, 1
+ jumpeq FallarborTown_ContestLobby_EventScript_1B7734
+ compare RESULT, 0
+ jumpeq FallarborTown_ContestLobby_EventScript_1B7726
+ end
+
+FallarborTown_ContestLobby_EventScript_1B770E:: @ 81B770E
+ msgbox FallarborTown_ContestLobby_Text_1B6FF0, 4
+ checkdailyflags
+ checkflag 2241
+ jumpeq FallarborTown_ContestLobby_EventScript_1B774F
+ jump FallarborTown_ContestLobby_EventScript_1B7759
+ end
+
+FallarborTown_ContestLobby_EventScript_1B7726:: @ 81B7726
+ msgbox FallarborTown_ContestLobby_Text_1B6F1F, 4
+ jump FallarborTown_ContestLobby_EventScript_1B7734
+ end
+
+FallarborTown_ContestLobby_EventScript_1B7734:: @ 81B7734
+ msgbox FallarborTown_ContestLobby_Text_1B6EF1, 4
+ jump FallarborTown_ContestLobby_EventScript_1B7742
+ end
+
+FallarborTown_ContestLobby_EventScript_1B7742:: @ 81B7742
+ copyvar 0x8004, 0x8009
+ fadescreen 1
+ special 161
+ waitstate
+ releaseall
+ end
+
+FallarborTown_ContestLobby_EventScript_1B774F:: @ 81B774F
+ msgbox FallarborTown_ContestLobby_Text_1B70F6, 4
+ releaseall
+ end
+
+FallarborTown_ContestLobby_EventScript_1B7759:: @ 81B7759
+ msgbox FallarborTown_ContestLobby_Text_1B704A, 4
+ giveitem ITEM_PECHA_BERRY
+ setflag 2241
+ jump FallarborTown_ContestLobby_EventScript_1B76EF
+ end
+
+FallarborTown_ContestLobby_EventScript_1B7776:: @ 81B7776
+ msgbox FallarborTown_ContestLobby_Text_1B717C, 4
+ releaseall
+ end
+
+FallarborTown_ContestLobby_EventScript_1B7780:: @ 81B7780
+ msgbox FallarborTown_ContestLobby_Text_1B71D2, 4
+ releaseall
+ end
+
+FallarborTown_ContestLobby_EventScript_1B778A:: @ 81B778A
+ setvar 0x8008, 4
+ jump FallarborTown_ContestLobby_EventScript_1B77B6
+ end
+
+SlateportCity_ContestLobby_EventScript_1B7795:: @ 81B7795
+ setvar 0x8008, 2
+ jump SlateportCity_ContestLobby_EventScript_1B77B6
+ end
+
+VerdanturfTown_ContestLobby_EventScript_1B77A0:: @ 81B77A0
+ setvar 0x8008, 2
+ jump VerdanturfTown_ContestLobby_EventScript_1B77B6
+ end
+
+LilycoveCity_ContestLobby_EventScript_1B77AB:: @ 81B77AB
+ setvar 0x8008, 3
+ jump LilycoveCity_ContestLobby_EventScript_1B77B6
+ end
+
+FallarborTown_ContestLobby_EventScript_1B77B6:: @ 81B77B6
+LilycoveCity_ContestLobby_EventScript_1B77B6:: @ 81B77B6
+SlateportCity_ContestLobby_EventScript_1B77B6:: @ 81B77B6
+VerdanturfTown_ContestLobby_EventScript_1B77B6:: @ 81B77B6
+ lock
+ faceplayer
+ msgbox FallarborTown_ContestLobby_Text_1B742F, 4
+ specialval RESULT, 49
+ compare RESULT, 1
+ jumpeq FallarborTown_ContestLobby_EventScript_1B77DC
+ compare RESULT, 0
+ jumpeq FallarborTown_ContestLobby_EventScript_1B77E6
+ end
+
+FallarborTown_ContestLobby_EventScript_1B77DC:: @ 81B77DC
+ msgbox FallarborTown_ContestLobby_Text_1B7469, 4
+ release
+ end
+
+FallarborTown_ContestLobby_EventScript_1B77E6:: @ 81B77E6
+ checkdailyflags
+ checkflag 2241
+ jumpeq FallarborTown_ContestLobby_EventScript_1B77F6
+ jump FallarborTown_ContestLobby_EventScript_1B7800
+ end
+
+FallarborTown_ContestLobby_EventScript_1B77F6:: @ 81B77F6
+ msgbox FallarborTown_ContestLobby_Text_1B7578, 4
+ release
+ end
+
+FallarborTown_ContestLobby_EventScript_1B7800:: @ 81B7800
+ msgbox FallarborTown_ContestLobby_Text_1B74B4, 4
+ giveitem ITEM_PECHA_BERRY
+ setflag 2241
+ msgbox FallarborTown_ContestLobby_Text_1B753A, 4
+ release
+ end
+
+FallarborTown_ContestLobby_Movement_1B7821:: @ 81B7821
+LilycoveCity_ContestLobby_Movement_1B7821:: @ 81B7821
+SlateportCity_ContestLobby_Movement_1B7821:: @ 81B7821
+VerdanturfTown_ContestLobby_Movement_1B7821:: @ 81B7821
+ step_28
+ step_end
+
+FallarborTown_ContestLobby_EventScript_1B7823:: @ 81B7823
+ jump FallarborTown_ContestLobby_EventScript_1B783B
+ end
+
+SlateportCity_ContestLobby_EventScript_1B7829:: @ 81B7829
+ jump SlateportCity_ContestLobby_EventScript_1B783B
+ end
+
+VerdanturfTown_ContestLobby_EventScript_1B782F:: @ 81B782F
+ jump VerdanturfTown_ContestLobby_EventScript_1B783B
+ end
+
+LilycoveCity_ContestLobby_EventScript_1B7835:: @ 81B7835
+ jump LilycoveCity_ContestLobby_EventScript_1B783B
+ end
+
+FallarborTown_ContestLobby_EventScript_1B783B:: @ 81B783B
+LilycoveCity_ContestLobby_EventScript_1B783B:: @ 81B783B
+SlateportCity_ContestLobby_EventScript_1B783B:: @ 81B783B
+VerdanturfTown_ContestLobby_EventScript_1B783B:: @ 81B783B
+ lockall
+ specialval RESULT, 49
+ compare RESULT, 0
+ jumpeq FallarborTown_ContestLobby_EventScript_1B7897
+ checkitem ITEM_POKEBLOCK_CASE, 1
+ compare RESULT, 0
+ jumpeq FallarborTown_ContestLobby_EventScript_1B7942
+ specialval RESULT, 160
+ compare RESULT, 65535
+ jumpif 5, FallarborTown_ContestLobby_EventScript_1B7878
+ compare RESULT, 65535
+ jumpeq FallarborTown_ContestLobby_EventScript_1B7938
+ end
+
+FallarborTown_ContestLobby_EventScript_1B7878:: @ 81B7878
+ msgbox FallarborTown_ContestLobby_Text_1B727C, 5
+ compare RESULT, 1
+ jumpeq FallarborTown_ContestLobby_EventScript_1B78A1
+ compare RESULT, 0
+ jumpeq FallarborTown_ContestLobby_EventScript_1B7936
+ end
+
+FallarborTown_ContestLobby_EventScript_1B7897:: @ 81B7897
+ msgbox FallarborTown_ContestLobby_Text_1B7381, 4
+ releaseall
+ end
+
+FallarborTown_ContestLobby_EventScript_1B78A1:: @ 81B78A1
+ call FallarborTown_ContestLobby_EventScript_19F806
+ compare RESULT, 0
+ jumpeq FallarborTown_ContestLobby_EventScript_1B7936
+ message FallarborTown_ContestLobby_Text_1B7304
+ waittext
+ special 36
+ waitstate
+ compare RESULT, 1
+ jumpeq FallarborTown_ContestLobby_EventScript_1B7980
+ compare RESULT, 2
+ jumpeq FallarborTown_ContestLobby_EventScript_1B794C
+ compare RESULT, 3
+ jumpeq FallarborTown_ContestLobby_EventScript_1B7959
+ compare RESULT, 5
+ jumpeq FallarborTown_ContestLobby_EventScript_1B7966
+ compare RESULT, 6
+ jumpeq FallarborTown_ContestLobby_EventScript_1B7973
+ end
+
+FallarborTown_ContestLobby_EventScript_1B78F3:: @ 81B78F3
+ msgbox FallarborTown_ContestLobby_Text_1B733B, 4
+ jump FallarborTown_ContestLobby_EventScript_1B791D
+ end
+
+FallarborTown_ContestLobby_EventScript_1B7901:: @ 81B7901
+ msgbox FallarborTown_ContestLobby_Text_1B7347, 4
+ jump FallarborTown_ContestLobby_EventScript_1B791D
+ end
+
+FallarborTown_ContestLobby_EventScript_1B790F:: @ 81B790F
+ msgbox FallarborTown_ContestLobby_Text_1B735A, 4
+ jump FallarborTown_ContestLobby_EventScript_1B791D
+ end
+
+FallarborTown_ContestLobby_EventScript_1B791D:: @ 81B791D
+ setvar 0x8004, 0
+ fadescreen 1
+ disappear 240
+ disappear 239
+ disappear 238
+ disappear 237
+ special 161
+ waitstate
+ releaseall
+ end
+
+FallarborTown_ContestLobby_EventScript_1B7936:: @ 81B7936
+ releaseall
+ end
+
+FallarborTown_ContestLobby_EventScript_1B7938:: @ 81B7938
+ msgbox FallarborTown_ContestLobby_Text_1B73B7, 4
+ releaseall
+ end
+
+FallarborTown_ContestLobby_EventScript_1B7942:: @ 81B7942
+ msgbox FallarborTown_ContestLobby_Text_1B73F1, 4
+ releaseall
+ end
+
+FallarborTown_ContestLobby_EventScript_1B794C:: @ 81B794C
+ special 31
+ msgbox FallarborTown_ContestLobby_Text_1A4A30, 4
+ releaseall
+ end
+
+FallarborTown_ContestLobby_EventScript_1B7959:: @ 81B7959
+ special 31
+ msgbox FallarborTown_ContestLobby_Text_1A4B1D, 4
+ releaseall
+ end
+
+FallarborTown_ContestLobby_EventScript_1B7966:: @ 81B7966
+ special 31
+ msgbox FallarborTown_ContestLobby_Text_1A10EB, 4
+ releaseall
+ end
+
+FallarborTown_ContestLobby_EventScript_1B7973:: @ 81B7973
+ special 31
+ msgbox FallarborTown_ContestLobby_Text_1A4A85, 4
+ releaseall
+ end
+
+FallarborTown_ContestLobby_EventScript_1B7980:: @ 81B7980
+ fadescreen 1
+ specialval RESULT, 37
+ copyvar 0x8008, RESULT
+ copyvar 0x8004, 0x8008
+ special 38
+ jump FallarborTown_ContestLobby_EventScript_1B799A
+ end
+
+FallarborTown_ContestLobby_EventScript_1B799A:: @ 81B799A
+ fadescreen 0
+ switch 0x8008
+ case 2, FallarborTown_ContestLobby_EventScript_1B78F3
+ case 3, FallarborTown_ContestLobby_EventScript_1B7901
+ case 4, FallarborTown_ContestLobby_EventScript_1B790F
+ end
+
+Route102_Text_1B79C3:: @ 81B79C3
+ .string "If you have POKéMON with you, then\n"
+ .string "you’re an official POKéMON TRAINER!\l"
+ .string "You can’t say no to my challenge!$"
+
+Route102_Text_1B7A2C:: @ 81B7A2C
+ .string "Arrgh, I lost...\n"
+ .string "I should have trained mine more...$"
+
+Route102_Text_1B7A60:: @ 81B7A60
+ .string "Listen, you. If you’re strong, you\n"
+ .string "should have told me before!$"
+
+Route102_Text_1B7A9F:: @ 81B7A9F
+ .string "Ever since I lost to you, I desperately\n"
+ .string "trained my POKéMON.\l"
+ .string "You can’t say no to my challenge!$"
+
+Route102_Text_1B7AFD:: @ 81B7AFD
+ .string "Arrgh, I lost...\n"
+ .string "Is my training method not right?$"
+
+Route102_Text_1B7B2F:: @ 81B7B2F
+ .string "If you’re going to get stronger, I’ll\n"
+ .string "get stronger, too.$"
+
+Route102_Text_1B7B68:: @ 81B7B68
+ .string "Did you just become a TRAINER?\n"
+ .string "We’re both beginners!$"
+
+Route102_Text_1B7B9D:: @ 81B7B9D
+ .string "I called you because I thought I\n"
+ .string "could beat you...$"
+
+Route102_Text_1B7BD0:: @ 81B7BD0
+ .string "I haven’t won once yet...\n"
+ .string "I wish I would win soon...$"
+
+Route102_Text_1B7C05:: @ 81B7C05
+ .string "Hahah! Our eyes met!\n"
+ .string "I’ll take you on with my BUG POKéMON!$"
+
+Route102_Text_1B7C40:: @ 81B7C40
+ .string "Ow! Down and out!$"
+
+Route102_Text_1B7C52:: @ 81B7C52
+ .string "If you lock eyes with a TRAINER,\n"
+ .string "you have to challenge! It’s a rule!$"
+
+Route102_Text_1B7C97:: @ 81B7C97
+ .string "I’m going to keep winning and aim\n"
+ .string "to be the best TRAINER.\p"
+ .string "Help me further my career!$"
+
+Route102_Text_1B7CEC:: @ 81B7CEC
+ .string "I ended up furthering your career...$"
+
+Route102_Text_1B7D11:: @ 81B7D11
+ .string "To keep winning my way up, I see that\n"
+ .string "I have to catch more POKéMON.$"
+
+Route103_Text_1B7D55:: @ 81B7D55
+ .string "Did you feel the tug of our soul-\n"
+ .string "soothing fragrance?$"
+
+Route103_Text_1B7D8B:: @ 81B7D8B
+ .string "You weren’t led astray by our aroma...$"
+
+Route103_Text_1B7DB2:: @ 81B7DB2
+ .string "Aromatherapy is a form of mental\n"
+ .string "healing that works with fragrances.$"
+
+Route103_Text_1B7DF7:: @ 81B7DF7
+ .string "AMY: I’m AMY.\n"
+ .string "And this is my little sister LIV.\l"
+ .string "We battle together!$"
+
+Route103_Text_1B7E3B:: @ 81B7E3B
+ .string "AMY: Uh-oh, we lost.$"
+
+Route103_Text_1B7E50:: @ 81B7E50
+ .string "AMY: You have to think about all\n"
+ .string "kinds of things when you’re battling\l"
+ .string "against two TRAINERS.$"
+
+Route103_Text_1B7EAC:: @ 81B7EAC
+ .string "AMY: Uh-oh, you have only one\n"
+ .string "POKéMON with you.\l"
+ .string "You can’t battle us like that.$"
+
+Route103_Text_1B7EFB:: @ 81B7EFB
+ .string "LIV: We battle together as one\n"
+ .string "team.$"
+
+Route103_Text_1B7F20:: @ 81B7F20
+ .string "LIV: Oh, we lost, big sister...$"
+
+Route103_Text_1B7F40:: @ 81B7F40
+ .string "LIV: We work perfectly together, me\n"
+ .string "and my big sister...\p"
+ .string "But we still lost...$"
+
+Route103_Text_1B7F8E:: @ 81B7F8E
+ .string "LIV: If you want to battle us, you\n"
+ .string "have to have two POKéMON!\l"
+ .string "It’s not fair if you don’t!$"
+
+Route103_Text_1B7FE7:: @ 81B7FE7
+ .string "AMY: I’m AMY.\n"
+ .string "And this is my little sister LIV.\l"
+ .string "We battle together!$"
+
+Route103_Text_1B802B:: @ 81B802B
+ .string "AMY: Aww, boo!\n"
+ .string "We couldn’t win again...$"
+
+Route103_Text_1B8053:: @ 81B8053
+ .string "AMY: You have to think about all\n"
+ .string "kinds of things when you’re battling\l"
+ .string "against two TRAINERS.$"
+
+Route103_Text_1B80AF:: @ 81B80AF
+ .string "AMY: Uh-oh, you have only one\n"
+ .string "POKéMON with you.\l"
+ .string "You can’t battle us like that.$"
+
+Route103_Text_1B80FE:: @ 81B80FE
+ .string "LIV: We battle together as one\n"
+ .string "team.$"
+
+Route103_Text_1B8123:: @ 81B8123
+ .string "LIV: Awww, we lost again...\n"
+ .string "Big sister...$"
+
+Route103_Text_1B814D:: @ 81B814D
+ .string "LIV: We work perfectly together, me\n"
+ .string "and my big sister...\p"
+ .string "But why did we lose again?$"
+
+Route103_Text_1B81A1:: @ 81B81A1
+ .string "LIV: If you want to battle us, you\n"
+ .string "have to have two POKéMON!\l"
+ .string "It’s not fair if you don’t!$"
+
+Route103_Text_1B81FA:: @ 81B81FA
+ .string "Gah! My fishing line’s all snarled up!\n"
+ .string "I’m getting frustrated and mean!\l"
+ .string "That’s it! Battle me!$"
+
+Route103_Text_1B8258:: @ 81B8258
+ .string "Gah! Lost it!\n"
+ .string "I’m even more annoyed now!$"
+
+Route103_Text_1B8281:: @ 81B8281
+ .string "Gah, I’m still boiling mad...\n"
+ .string "Grrrrr...$"
+
+Route103_Text_1B82A9:: @ 81B82A9
+ .string "My POKéMON is delightfully adorable!\n"
+ .string "Don’t be shy - I’ll show you!$"
+
+Route103_Text_1B82EC:: @ 81B82EC
+ .string "Oh, my gosh!\n"
+ .string "My darling POKéMON!$"
+
+Route103_Text_1B830D:: @ 81B830D
+ .string "My delightful POKéMON looks darling\n"
+ .string "even when it’s fainted!$"
+
+Route103_Text_1B8349:: @ 81B8349
+ .string "Hi, you! My delightfully adorable\n"
+ .string "POKéMON has become more darling!$"
+
+Route103_Text_1B838C:: @ 81B838C
+ .string "Oh!\n"
+ .string "My darling POKéMON!$"
+
+Route103_Text_1B83A4:: @ 81B83A4
+ .string "The more I spend time with it, the\n"
+ .string "more adorable my POKéMON becomes.$"
+
+Route104_Text_1B83E9:: @ 81B83E9
+ .string "GINA: Okay, let’s battle with our\n"
+ .string "POKéMON!$"
+
+Route104_Text_1B8414:: @ 81B8414
+ .string "GINA: Losing upsets me!$"
+
+Route104_Text_1B842C:: @ 81B842C
+ .string "GINA: {STR_VAR_1} is strong!\n"
+ .string "We have to train lots more!$"
+
+Route104_Text_1B845C:: @ 81B845C
+ .string "GINA: Oh? Only one POKéMON?\n"
+ .string "Then, we don’t battle with you.\p"
+ .string "If there’s only one POKéMON, it will\n"
+ .string "be lonesome. That’s not nice.$"
+
+Route104_Text_1B84DB:: @ 81B84DB
+ .string "MIA: We are twins, so we battle\n"
+ .string "POKéMON together.$"
+
+Route104_Text_1B850D:: @ 81B850D
+ .string "MIA: We battled together, but we\n"
+ .string "both lost...$"
+
+Route104_Text_1B853B:: @ 81B853B
+ .string "MIA: We will train our POKéMON more\n"
+ .string "and be strong like you.$"
+
+Route104_Text_1B8577:: @ 81B8577
+ .string "MIA: You want to battle with us?\p"
+ .string "It’s a big no-no if you don’t have two\n"
+ .string "POKéMON with you.\l"
+ .string "We’re too strong for you!$"
+
+Route104_Text_1B85EB:: @ 81B85EB
+ .string "Why keep it a secret?\n"
+ .string "I’m the WATER POKéMON expert!\p"
+ .string "Huh?\n"
+ .string "You don’t know me?$"
+
+Route104_Text_1B8637:: @ 81B8637
+ .string "I thought I wasn’t too bad, if I may\n"
+ .string "say so, but I guess not... Bleah...$"
+
+Route104_Text_1B8680:: @ 81B8680
+ .string "I got too into fishing.\n"
+ .string "I forgot I had to raise my POKéMON...$"
+
+Route104_Text_1B86BE:: @ 81B86BE
+ .string "Leaving footprints in the sand is\n"
+ .string "so fun!$"
+
+Route104_Text_1B86E8:: @ 81B86E8
+ .string "Waah! I got sand in my runners!\n"
+ .string "They’re all gritty!$"
+
+Route104_Text_1B871C:: @ 81B871C
+ .string "I want to leave my footprints in the\n"
+ .string "sand everywhere, but they disappear\l"
+ .string "quickly...$"
+
+Route104_Text_1B8770:: @ 81B8770
+ .string "Should I...\n"
+ .string "Or shouldn’t I?\p"
+ .string "Okay, sure, I will battle!$"
+
+Route104_Text_1B87A7:: @ 81B87A7
+ .string "I shouldn’t have battled...$"
+
+Route104_Text_1B87C3:: @ 81B87C3
+ .string "If you’re faced with a decision and\n"
+ .string "you let someone else choose for you,\l"
+ .string "you will regret it, however things\l"
+ .string "turn out.$"
+
+Route104_Text_1B8839:: @ 81B8839
+ .string "Come on, battle with me!$"
+
+Route104_Text_1B8852:: @ 81B8852
+ .string "Ohh...\n"
+ .string "I thought I could win...$"
+
+Route104_Text_1B8872:: @ 81B8872
+ .string "I made the decision to battle, so I\n"
+ .string "can accept this loss in grace.\p"
+ .string "I am still upset about losing!$"
+
+Route104_Text_1B88D4:: @ 81B88D4
+ .string "Oh, sure, I’ll accept your challenge.\n"
+ .string "I have a lot of money.$"
+
+Route104_Text_1B8911:: @ 81B8911
+ .string "Why couldn’t I win?$"
+
+Route104_Text_1B8925:: @ 81B8925
+ .string "There are some things money can’t buy.\n"
+ .string "That’s POKéMON...$"
+
+Route104_Text_1B895E:: @ 81B895E
+ .string "After I lost to you, I learned a bunch\n"
+ .string "of things about POKéMON.$"
+
+Route104_Text_1B899E:: @ 81B899E
+ .string "I lost again?\n"
+ .string "Why couldn’t I win?$"
+
+Route104_Text_1B89C0:: @ 81B89C0
+ .string "I’m fabulously wealthy, but I can’t\n"
+ .string "seem to win at POKéMON...\p"
+ .string "It’s so deep, the world of POKéMON...$"
+
+Route104_Text_1B8A24:: @ 81B8A24
+ .string "We must have been fated to meet.\n"
+ .string "May I ask you for a battle?$"
+
+Route104_Text_1B8A61:: @ 81B8A61
+ .string "Oh, my!$"
+
+Route104_Text_1B8A69:: @ 81B8A69
+ .string "“Hello” is the beginning of “good-bye.”\n"
+ .string "I hope we meet again.$"
+
+Route104_Text_1B8AA7:: @ 81B8AA7
+ .string "Hello, we meet again.\n"
+ .string "May I ask you for a battle?$"
+
+Route104_Text_1B8AD9:: @ 81B8AD9
+ .string "Oh, my...\n"
+ .string "I did the best that I could...$"
+
+Route104_Text_1B8B02:: @ 81B8B02
+ .string "“Hello” is the beginning of “good-bye.”\n"
+ .string "I hope we meet again.$"
+
+ .include "data/maps/text/Route105.s"
+Route106_Text_1B8EF0:: @ 81B8EF0
+ .string "Which do you prefer, fishing in the\n"
+ .string "sea or a stream?$"
+
+Route106_Text_1B8F25:: @ 81B8F25
+ .string "Like in deep-sea fishing, I lost\n"
+ .string "spectacularly!$"
+
+Route106_Text_1B8F55:: @ 81B8F55
+ .string "Fishing is the greatest whether it’s\n"
+ .string "in the sea or a stream.\l"
+ .string "You agree with me, right?$"
+
+Route106_Text_1B8FAC:: @ 81B8FAC
+ .string "I caught a bunch of POKéMON fishing.\n"
+ .string "I’ll show you an impressive battle!$"
+
+Route106_Text_1B8FF5:: @ 81B8FF5
+ .string "I lost again spectacularly!$"
+
+Route106_Text_1B9011:: @ 81B9011
+ .string "Win or lose, POKéMON are the greatest!\n"
+ .string "You agree with me, right?$"
+
+Route106_Text_1B9052:: @ 81B9052
+ .string "What do people do if they need to go\n"
+ .string "to a washroom?\p"
+ .string "What if my ROD hooks a big one while\n"
+ .string "I’m in the washroom? I just can’t go...$"
+
+Route106_Text_1B90D3:: @ 81B90D3
+ .string "I lost because I’m trying to not go\n"
+ .string "to the washroom...$"
+
+Route106_Text_1B910A:: @ 81B910A
+ .string "Oh, no! I’ve got this feeling I’ll hook\n"
+ .string "a big one!$"
+
+Route106_Text_1B913D:: @ 81B913D
+ .string "Hahahah! I’m a lousy runner, but in\n"
+ .string "the water you can’t catch me!$"
+
+Route106_Text_1B917F:: @ 81B917F
+ .string "I give up!$"
+
+Route106_Text_1B918A:: @ 81B918A
+ .string "I wouldn’t lose in a swim race...$"
+
+Route106_Text_1B91AC:: @ 81B91AC
+ .string "The sea is my backyard. I’m not going\n"
+ .string "to take it easy because you’re a kid!$"
+
+Route106_Text_1B91F8:: @ 81B91F8
+ .string "Did you take it easy on me by any\n"
+ .string "chance?$"
+
+Route106_Text_1B9222:: @ 81B9222
+ .string "Drifting along with the waves...\n"
+ .string "I love it! Why don’t you give it a try?$"
+
+ .include "data/maps/text/Route107.s"
+ .include "data/maps/text/Route108.s"
+Route109_Text_1B9A1C:: @ 81B9A1C
+ .string "Hiyah! Look at my chiseled abs!\n"
+ .string "This is what you call “cut”!$"
+
+Route109_Text_1B9A59:: @ 81B9A59
+ .string "Aiyah!\n"
+ .string "Flubbed out!$"
+
+Route109_Text_1B9A6D:: @ 81B9A6D
+ .string "Hiyah!\p"
+ .string "My sculpted abs have nothing to do\n"
+ .string "with POKéMON battles!$"
+
+Route109_Text_1B9AAD:: @ 81B9AAD
+ .string "Are you properly protected against\n"
+ .string "the sun?$"
+
+Route109_Text_1B9AD9:: @ 81B9AD9
+ .string "Ouch, ouch, ouch!$"
+
+Route109_Text_1B9AEB:: @ 81B9AEB
+ .string "Cheeks are the most prone to burning!$"
+
+Route109_Text_1B9B11:: @ 81B9B11
+ .string "I’ve laid anchor in ports around the\n"
+ .string "world, but SLATEPORT’s the best.$"
+
+Route109_Text_1B9B57:: @ 81B9B57
+ .string "You’re the best!$"
+
+Route109_Text_1B9B68:: @ 81B9B68
+ .string "In the best port was the best\n"
+ .string "TRAINER...$"
+
+Route109_Text_1B9B91:: @ 81B9B91
+ .string "Urrrrppp...\n"
+ .string "Battle? With me?$"
+
+Route109_Text_1B9BAE:: @ 81B9BAE
+ .string "Urp... Ooooooohhhhhh...\n"
+ .string "Urrrrpppp...$"
+
+Route109_Text_1B9BD3:: @ 81B9BD3
+ .string "I’m usually stronger than this!\n"
+ .string "I’m just seasick as a dog!\p"
+ .string "I’m a SAILOR, but...$"
+
+Route109_Text_1B9C23:: @ 81B9C23
+ .string "I’m thirsty... I could go for a SODA POP\n"
+ .string "at the SEASHORE HOUSE...$"
+
+Route109_Text_1B9C65:: @ 81B9C65
+ .string "Groan...$"
+
+Route109_Text_1B9C6E:: @ 81B9C6E
+ .string "I’m getting famished... My inner tube\n"
+ .string "looks like a giant doughnut...$"
+
+Route109_Text_1B9CB3:: @ 81B9CB3
+ .string "I’m hungry, but I’ve got enough pep in\n"
+ .string "me for a battle!$"
+
+Route109_Text_1B9CEB:: @ 81B9CEB
+ .string "I lost...\n"
+ .string "It’s because I’m hungry...$"
+
+Route109_Text_1B9D10:: @ 81B9D10
+ .string "When you eat on a beach, everything\n"
+ .string "seems to taste a little better.$"
+
+Route109_Text_1B9D54:: @ 81B9D54
+ .string "Doesn’t a beach umbrella look like\n"
+ .string "a giant flower?$"
+
+Route109_Text_1B9D87:: @ 81B9D87
+ .string "Mommy!$"
+
+Route109_Text_1B9D8E:: @ 81B9D8E
+ .string "If you look at the beach from the sky,\n"
+ .string "it looks like a big flower garden!$"
+
+Route109_Text_1B9DD8:: @ 81B9DD8
+ .string "I’m not losing to you again!\n"
+ .string "That’s why I have my inner tube!$"
+
+Route109_Text_1B9E16:: @ 81B9E16
+ .string "Mommy!$"
+
+Route109_Text_1B9E1D:: @ 81B9E1D
+ .string "If I have an inner tube, me and my\n"
+ .string "POKéMON’s cuteness goes way up!$"
+
+Route109_Text_1B9E60:: @ 81B9E60
+ .string "I can’t swim without my inner tube,\n"
+ .string "but I won’t lose at POKéMON!$"
+
+Route109_Text_1B9EA1:: @ 81B9EA1
+ .string "Did I lose because I have an inner\n"
+ .string "tube?$"
+
+Route109_Text_1B9ECA:: @ 81B9ECA
+ .string "My inner tube is a fashion item.\n"
+ .string "I can’t be seen without it.$"
+
+Route109_Text_1B9F07:: @ 81B9F07
+ .string "Hi, big TRAINER.\n"
+ .string "Will you battle with me?$"
+
+Route109_Text_1B9F31:: @ 81B9F31
+ .string "Oh, you’re strong.$"
+
+Route109_Text_1B9F44:: @ 81B9F44
+ .string "How did you get to be so strong?$"
+
+Route109_Text_1B9F65:: @ 81B9F65
+ .string "Wahahah! This dude’s going to catch\n"
+ .string "himself a big one!$"
+
+Route109_Text_1B9F9C:: @ 81B9F9C
+ .string "This dude just lost one...$"
+
+Route109_Text_1B9FB7:: @ 81B9FB7
+ .string "This dude thinks you’re a big one.\n"
+ .string "No, you’re a big-one-to-be!$"
+
+Route109_Text_1B9FF6:: @ 81B9FF6
+ .string "PAUL: Well, this is a mood-breaker.\p"
+ .string "I wish you wouldn’t disturb our\n"
+ .string "precious time together.$"
+
+Route109_Text_1BA052:: @ 81BA052
+ .string "PAUL: Well, I give up.$"
+
+Route109_Text_1BA069:: @ 81BA069
+ .string "PAUL: Well, don’t tell anyone that\n"
+ .string "we’re here.\l"
+ .string "This is just our private world of two!$"
+
+Route109_Text_1BA0BF:: @ 81BA0BF
+ .string "PAUL: We’re totally, deeply in love.\n"
+ .string "That’s why we make our POKéMON battle\l"
+ .string "together.$"
+
+Route109_Text_1BA114:: @ 81BA114
+ .string "MEL: We’re, like, totally in love.\n"
+ .string "Our romance is heating up all of HOENN!$"
+
+Route109_Text_1BA15F:: @ 81BA15F
+ .string "MEL: We lost, and it’s my fault!\n"
+ .string "PAUL will hate me!$"
+
+Route109_Text_1BA193:: @ 81BA193
+ .string "MEL: Um, PAUL, are you angry with me?\n"
+ .string "Please don’t be angry.$"
+
+Route109_Text_1BA1D0:: @ 81BA1D0
+ .string "MEL: We’re, like, deeply and truly in love.\n"
+ .string "That’s why we make our POKéMON\l"
+ .string "battle together.$"
+
+Route110_Text_1BA22C:: @ 81BA22C
+ .string "Whoa! Watch it!\n"
+ .string "I guess you’re not used to BIKE racing.$"
+
+Route110_Text_1BA264:: @ 81BA264
+ .string "Whoa!\n"
+ .string "My brakes failed!$"
+
+Route110_Text_1BA27C:: @ 81BA27C
+ .string "Flat tires and brake problems can\n"
+ .string "cause serious injury!\l"
+ .string "Inspect your BIKE for problems!$"
+
+Route110_Text_1BA2D4:: @ 81BA2D4
+ .string "Yo, you!\n"
+ .string "Can you keep up with my speed?$"
+
+Route110_Text_1BA2FC:: @ 81BA2FC
+ .string "Crash and burn!$"
+
+Route110_Text_1BA30C:: @ 81BA30C
+ .string "Speed alone won’t let me win at POKéMON.\n"
+ .string "I need to reconsider this...$"
+
+Route110_Text_1BA352:: @ 81BA352
+ .string "Don’t panic if your BIKE’s going fast!$"
+
+Route110_Text_1BA379:: @ 81BA379
+ .string "I shouldn’t panic during POKéMON\n"
+ .string "battles...$"
+
+Route110_Text_1BA3A5:: @ 81BA3A5
+ .string "There’s no need to panic or stress.\n"
+ .string "Take it easy. There’s plenty of time.$"
+
+Route110_Text_1BA3EF:: @ 81BA3EF
+ .string "Aren’t you going a little too fast?\n"
+ .string "Take it easy and let’s battle.$"
+
+Route110_Text_1BA432:: @ 81BA432
+ .string "I didn’t panic, but I still lost...$"
+
+Route110_Text_1BA456:: @ 81BA456
+ .string "There’s no need to panic or stress.\n"
+ .string "Take it easy. There’s plenty of time.$"
+
+Route110_Text_1BA4A0:: @ 81BA4A0
+ .string "The triathlon is hard in the extreme.\p"
+ .string "You have to complete the three events\n"
+ .string "of swimming, cycling, and running.$"
+
+Route110_Text_1BA50F:: @ 81BA50F
+ .string "POKéMON battles are hard, too!$"
+
+Route110_Text_1BA52E:: @ 81BA52E
+ .string "I’m exhausted, so I need a break.\n"
+ .string "It’s important to get proper rest.$"
+
+Route110_Text_1BA573:: @ 81BA573
+ .string "Isn’t it neat to hold a battle while\n"
+ .string "cycling?$"
+
+Route110_Text_1BA5A1:: @ 81BA5A1
+ .string "Wow...\n"
+ .string "How could you be so strong?$"
+
+Route110_Text_1BA5C4:: @ 81BA5C4
+ .string "Were you going after a record?\p"
+ .string "I’m sorry if I held you up!$"
+
+Route110_Text_1BA5FF:: @ 81BA5FF
+ .string "I’ve been riding without stopping.\n"
+ .string "My thighs are like rocks!$"
+
+Route110_Text_1BA63C:: @ 81BA63C
+ .string "I’m worried about muscle cramps...$"
+
+Route110_Text_1BA65F:: @ 81BA65F
+ .string "Oh, you have some GYM BADGES?\n"
+ .string "No wonder you’re so strong!$"
+
+Route110_Text_1BA699:: @ 81BA699
+ .string "I have foreseen your intentions!\n"
+ .string "I cannot possibly lose!$"
+
+Route110_Text_1BA6D2:: @ 81BA6D2
+ .string "I failed to prophesize my own demise!$"
+
+Route110_Text_1BA6F8:: @ 81BA6F8
+ .string "I see your future...\p"
+ .string "Hmm...\n"
+ .string "I see a shining light...$"
+
+Route110_Text_1BA72D:: @ 81BA72D
+ .string "Ahahahaha!\n"
+ .string "I’ll dazzle you with my wonders!$"
+
+Route110_Text_1BA759:: @ 81BA759
+ .string "I wondrously lost!$"
+
+Route110_Text_1BA76C:: @ 81BA76C
+ .string "You managed to win only because it was\n"
+ .string "a wonder! Yes, a wonder!\l"
+ .string "Don’t think you can win all the time!$"
+
+Route110_Text_1BA7D2:: @ 81BA7D2
+ .string "Could I see your POKéMON?\n"
+ .string "Just one look, please?$"
+
+Route110_Text_1BA803:: @ 81BA803
+ .string "I wanted to complete my\n"
+ .string "collection...$"
+
+Route110_Text_1BA829:: @ 81BA829
+ .string "When I see a POKéMON that I don’t know,\n"
+ .string "my passion as a collector is ignited!$"
+
+Route110_Text_1BA877:: @ 81BA877
+ .string "Hi, have you caught any new POKéMON?\p"
+ .string "Could I see your POKéMON?\n"
+ .string "Just one look, please?$"
+
+Route110_Text_1BA8CD:: @ 81BA8CD
+ .string "Your POKéMON...\n"
+ .string "I envy you.$"
+
+Route110_Text_1BA8E9:: @ 81BA8E9
+ .string "Oh, I long to make all rare POKéMON\n"
+ .string "mine!$"
+
+Route110_Text_1BA913:: @ 81BA913
+ .string "Hey!\n"
+ .string "Don’t sneak up behind me like that!$"
+
+Route110_Text_1BA93C:: @ 81BA93C
+ .string "I lost!\n"
+ .string "Drat!$"
+
+Route110_Text_1BA94A:: @ 81BA94A
+ .string "Fishing is all about concentration.\n"
+ .string "You have to focus on the floater.$"
+
+Route110_Text_1BA990:: @ 81BA990
+ .string "Ahahaha! I would go anywhere to show\n"
+ .string "off my delightful POKéMON.$"
+
+Route110_Text_1BA9D0:: @ 81BA9D0
+ .string "Oh, dear, this won’t do.$"
+
+Route110_Text_1BA9E9:: @ 81BA9E9
+ .string "Perhaps I should groom my POKéMON for\n"
+ .string "CONTESTS rather than battles.$"
+
+Route110_Text_1BAA2D:: @ 81BAA2D
+ .string "Ahahahaha! I would be happy to show\n"
+ .string "off my POKéMON as often as you like!$"
+
+Route110_Text_1BAA76:: @ 81BAA76
+ .string "Oh, dear, this won’t do.$"
+
+Route110_Text_1BAA8F:: @ 81BAA8F
+ .string "CONTESTS are delightful, but I like\n"
+ .string "to battle, too.$"
+
+Route110_Text_1BAAC3:: @ 81BAAC3
+ .string "I found some cool POKéMON in the grass\n"
+ .string "around here!$"
+
+Route110_Text_1BAAF7:: @ 81BAAF7
+ .string "Being cool isn’t enough to win...$"
+
+Route110_Text_1BAB19:: @ 81BAB19
+ .string "It’s hard to battle with POKéMON you\n"
+ .string "just caught.$"
+
+Route111_Text_1BAB4B:: @ 81BAB4B
+ .string "Oh, hey! Those GO-GOGGLES suit you.\n"
+ .string "But I think they look better on me.\p"
+ .string "Let’s decide who they look better on\n"
+ .string "with a battle!$"
+
+Route111_Text_1BABC7:: @ 81BABC7
+ .string "I couldn’t see what was happening at my\n"
+ .string "sides because of the GO-GOGGLES.$"
+
+Route111_Text_1BAC10:: @ 81BAC10
+ .string "The GO-GOGGLES make it possible to\n"
+ .string "get through sandstorms.\l"
+ .string "That makes me happy!$"
+
+Route111_Text_1BAC60:: @ 81BAC60
+ .string "I’m having a picnic in the desert.\p"
+ .string "You can always find a TRAINER, so\n"
+ .string "I can enjoy a battle here, too!$"
+
+Route111_Text_1BACC5:: @ 81BACC5
+ .string "Ohhh! You’re mean!$"
+
+Route111_Text_1BACD8:: @ 81BACD8
+ .string "When you’re battling in a sandstorm,\n"
+ .string "watch out for your POKéMON’s HP.\p"
+ .string "It can faint if you don’t keep an eye\n"
+ .string "on it!$"
+
+Route111_Text_1BAD4B:: @ 81BAD4B
+ .string "Wearing these GO-GOGGLES makes me\n"
+ .string "feel like a superhero.\l"
+ .string "Right now, nobody can beat me!$"
+
+Route111_Text_1BADA3:: @ 81BADA3
+ .string "I can’t win on spirit alone...$"
+
+Route111_Text_1BADC2:: @ 81BADC2
+ .string "I’m going to be a real hero one day.\n"
+ .string "I’m going to work harder to make me\l"
+ .string "and my POKéMON stronger.$"
+
+Route111_Text_1BAE24:: @ 81BAE24
+ .string "I heard there are fossils to be found\n"
+ .string "in the desert. Where could they be?$"
+
+Route111_Text_1BAE6E:: @ 81BAE6E
+ .string "I came up short...$"
+
+Route111_Text_1BAE81:: @ 81BAE81
+ .string "If they can find fossils in the desert,\n"
+ .string "it must have been a sea before.$"
+
+Route111_Text_1BAEC9:: @ 81BAEC9
+ .string "For thirty years I have searched for\n"
+ .string "ancient ruins!\l"
+ .string "I am to be challenged?$"
+
+Route111_Text_1BAF14:: @ 81BAF14
+ .string "While I have searched for ruins, I’ve\n"
+ .string "not searched for strong POKéMON.$"
+
+Route111_Text_1BAF5B:: @ 81BAF5B
+ .string "For thirty years I have searched for\n"
+ .string "ancient ruins!\p"
+ .string "No, wait, was that forty years?\n"
+ .string "Which was it now?$"
+
+Route111_Text_1BAFC1:: @ 81BAFC1
+ .string "For thirty years I have searched for\n"
+ .string "ancient ruins!\p"
+ .string "No, wait, was that forty years?\n"
+ .string "Anyway, am I to be challenged?$"
+
+Route111_Text_1BB034:: @ 81BB034
+ .string "I’ve found no ruins, nor have I found\n"
+ .string "any strong POKéMON...$"
+
+Route111_Text_1BB070:: @ 81BB070
+ .string "For thirty years I have searched for\n"
+ .string "ancient ruins!\p"
+ .string "No, wait, was that forty years I’ve\n"
+ .string "searched?\p"
+ .string "Hmm... It could even be fifty...\n"
+ .string "How long have I been at this?$"
+
+Route111_Text_1BB111:: @ 81BB111
+ .string "I’m full of pep!\n"
+ .string "And my POKéMON is peppy, too!$"
+
+Route111_Text_1BB140:: @ 81BB140
+ .string "My POKéMON lost its pep...$"
+
+Route111_Text_1BB15B:: @ 81BB15B
+ .string "When I see a TRAINER with a lot of pep,\n"
+ .string "I can’t help looking.$"
+
+Route111_Text_1BB199:: @ 81BB199
+ .string "I don’t know where you’re going, but\n"
+ .string "would you like to battle?$"
+
+Route111_Text_1BB1D8:: @ 81BB1D8
+ .string "Oh, you’re disgustingly good!$"
+
+Route111_Text_1BB1F6:: @ 81BB1F6
+ .string "I’m thinking that I should go to\n"
+ .string "MT. CHIMNEY, but the view around\l"
+ .string "here is very nice, too.$"
+
+Route111_Text_1BB250:: @ 81BB250
+ .string "To train myself, I challenge all\n"
+ .string "whom I meet!$"
+
+Route111_Text_1BB27E:: @ 81BB27E
+ .string "Uncle! I give up!$"
+
+Route111_Text_1BB290:: @ 81BB290
+ .string "All I can do is keep training until\n"
+ .string "I can defeat strong TRAINERS such\l"
+ .string "as yourself.$"
+
+Route111_Text_1BB2E3:: @ 81BB2E3
+ .string "Show me how much you’ve toughened\n"
+ .string "your POKéMON.$"
+
+Route111_Text_1BB313:: @ 81BB313
+ .string "I see, you’ve toughened them\n"
+ .string "considerably.$"
+
+Route111_Text_1BB33E:: @ 81BB33E
+ .string "POKéMON and TRAINERS learn much\n"
+ .string "through battling.\p"
+ .string "What’s important is to never give up\n"
+ .string "even if you lose.$"
+
+Route111_Text_1BB3A7:: @ 81BB3A7
+ .string "We’re training here to elevate our\n"
+ .string "game to the next level.\l"
+ .string "Stay and train with us!$"
+
+Route111_Text_1BB3FA:: @ 81BB3FA
+ .string "Ooh, you’re decent!$"
+
+Route111_Text_1BB40E:: @ 81BB40E
+ .string "Since you’re that strong, you should\n"
+ .string "aim for the POKéMON LEAGUE.$"
+
+Route111_Text_1BB44F:: @ 81BB44F
+ .string "Oh, your POKéMON look like serious\n"
+ .string "actors.\l"
+ .string "I have to ask you for an engagement.$"
+
+Route111_Text_1BB49F:: @ 81BB49F
+ .string "They didn’t just look strong, they\n"
+ .string "are strong!$"
+
+Route111_Text_1BB4CE:: @ 81BB4CE
+ .string "I thought I was raising my POKéMON\n"
+ .string "diligently, but, oh no, there is still\l"
+ .string "much to be done.$"
+
+Route111_Text_1BB529:: @ 81BB529
+ .string "You can make POKéMON stronger or\n"
+ .string "weaker depending on the moves you\l"
+ .string "teach them.\p"
+ .string "What kinds of moves do your POKéMON\n"
+ .string "know?$"
+
+Route111_Text_1BB5A2:: @ 81BB5A2
+ .string "You’ve taught them good moves!$"
+
+Route111_Text_1BB5C1:: @ 81BB5C1
+ .string "Maybe I should have stopped my\n"
+ .string "POKéMON from evolving until they\l"
+ .string "learned better moves...$"
+
+Route112_Text_1BB619:: @ 81BB619
+ .string "Hahahaha!\n"
+ .string "How about we have a battle?\l"
+ .string "You and me!\l"
+ .string "Hahahaha!$"
+
+Route112_Text_1BB655:: @ 81BB655
+ .string "I lost!\n"
+ .string "Hahahaha!$"
+
+Route112_Text_1BB667:: @ 81BB667
+ .string "Hahahahaha! Something flew up my nose!\n"
+ .string "Hahahaha-hatchoo!$"
+
+Route112_Text_1BB6A0:: @ 81BB6A0
+ .string "My legs are solid from pounding up\n"
+ .string "and down the mountains.\p"
+ .string "They’re not going to buckle easily,\n"
+ .string "friend!$"
+
+Route112_Text_1BB707:: @ 81BB707
+ .string "Ouch! My legs cramped up!$"
+
+Route112_Text_1BB721:: @ 81BB721
+ .string "Try hiking, and I mean really\n"
+ .string "pounding, on these mountain trails\l"
+ .string "with a heavy pack weighing dozens of\l"
+ .string "pounds.\p"
+ .string "That, my friend, will get your body\n"
+ .string "into serious shape.$"
+
+Route112_Text_1BB7C7:: @ 81BB7C7
+ .string "I’ve been keeping fit by hiking.\n"
+ .string "Power, I have in spades!$"
+
+Route112_Text_1BB801:: @ 81BB801
+ .string "I got trumped in power?$"
+
+Route112_Text_1BB819:: @ 81BB819
+ .string "I hear there are some seriously tough\n"
+ .string "TRAINERS on top of MT. CHIMNEY.\p"
+ .string "I intend to get up there and give them\n"
+ .string "a challenge!$"
+
+Route112_Text_1BB893:: @ 81BB893
+ .string "I’m strong.\n"
+ .string "I won’t cry if I lose.$"
+
+Route112_Text_1BB8B6:: @ 81BB8B6
+ .string "Waaaah!$"
+
+Route112_Text_1BB8BE:: @ 81BB8BE
+ .string "I’m not crying because I miss my mommy!\n"
+ .string "Snivel...$"
+
+Route112_Text_1BB8F0:: @ 81BB8F0
+ .string "When you’re out on a picnic, why, you\n"
+ .string "simply have to sing!\l"
+ .string "Come on, sing with me!$"
+
+Route112_Text_1BB942:: @ 81BB942
+ .string "Oh, you’re so strong!$"
+
+Route112_Text_1BB958:: @ 81BB958
+ .string "It doesn’t matter if you’re good or bad\n"
+ .string "at singing or POKéMON.\p"
+ .string "If you have the most fun, you win!$"
+
+Route113_Text_1BB9BA:: @ 81BB9BA
+ .string "Can you guess why it’s so cool\n"
+ .string "around here?$"
+
+Route113_Text_1BB9E6:: @ 81BB9E6
+ .string "Peeuuw!\n"
+ .string "That stinks!$"
+
+Route113_Text_1BB9FB:: @ 81BB9FB
+ .string "The volcanic ash blocks the sun, so it\n"
+ .string "doesn’t get very warm.\p"
+ .string "That’s good for me - I can’t stand heat!$"
+
+Route113_Text_1BBA62:: @ 81BBA62
+ .string "The volcano’s eruption is proof that\n"
+ .string "the earth is alive.$"
+
+Route113_Text_1BBA9B:: @ 81BBA9B
+ .string "You’re some kind of strong!$"
+
+Route113_Text_1BBAB7:: @ 81BBAB7
+ .string "Ouch! Owww! I can’t see!\n"
+ .string "I got ashes in my eyelashes!\p"
+ .string "Get it? Ashes and eyelashes?\p"
+ .string "Okay, that was bad, sorry...$"
+
+Route113_Text_1BBB27:: @ 81BBB27
+ .string "I use this parasol to ward off this\n"
+ .string "filthy, yucky volcanic ash from my\l"
+ .string "dear NUMEL.$"
+
+Route113_Text_1BBB7A:: @ 81BBB7A
+ .string "Huff, huff...\n"
+ .string "I am exhausted...$"
+
+Route113_Text_1BBB9A:: @ 81BBB9A
+ .string "You’re very good at this.\n"
+ .string "I must say I’m impressed!$"
+
+Route113_Text_1BBBCE:: @ 81BBBCE
+ .string "Oh, hello, hasn’t it been a while?\n"
+ .string "May I invite you to battle?$"
+
+Route113_Text_1BBC0D:: @ 81BBC0D
+ .string "Oh, how super!$"
+
+Route113_Text_1BBC1C:: @ 81BBC1C
+ .string "You’ve remained very good at this.\n"
+ .string "I must say I’m impressed!$"
+
+Route113_Text_1BBC59:: @ 81BBC59
+ .string "From out of the ashes I leap! Hiyah!\n"
+ .string "I challenge thee!$"
+
+Route113_Text_1BBC90:: @ 81BBC90
+ .string "With honor I admit defeat!$"
+
+Route113_Text_1BBCAB:: @ 81BBCAB
+ .string "I must refine the art of concealment.\n"
+ .string "I bid thee farewell.$"
+
+Route113_Text_1BBCE6:: @ 81BBCE6
+ .string "From out of the ashes I leap! Hiyah!\n"
+ .string "I challenge thee!$"
+
+Route113_Text_1BBD1D:: @ 81BBD1D
+ .string "With honor I admit defeat!$"
+
+Route113_Text_1BBD38:: @ 81BBD38
+ .string "My flawless concealment was let down\n"
+ .string "by my immature battle skills...\p"
+ .string "I bid thee farewell.$"
+
+Route113_Text_1BBD92:: @ 81BBD92
+ .string "Thanks for finding me!\n"
+ .string "But we still have to battle!$"
+
+Route113_Text_1BBDC6:: @ 81BBDC6
+ .string "I’ll use my ninjutsu on you...\n"
+ .string "“VOLCANIC ASH SWIRL CLOAK”!\p"
+ .string "...What? It’s already over?$"
+
+Route113_Text_1BBE1D:: @ 81BBE1D
+ .string "You know what’s crummy about hiding?\n"
+ .string "It’s lonely if no one comes along.$"
+
+Route113_Text_1BBE65:: @ 81BBE65
+ .string "TORI: Both of us, we collect ashes.\n"
+ .string "We battle POKéMON, too.$"
+
+Route113_Text_1BBEA1:: @ 81BBEA1
+ .string "TORI: We lost... It’s boring, so I’m going\n"
+ .string "to get some more ashes.$"
+
+Route113_Text_1BBEE4:: @ 81BBEE4
+ .string "TORI: How much ash do we have?\n"
+ .string "Enough for a WHITE FLUTE, I hope.$"
+
+Route113_Text_1BBF25:: @ 81BBF25
+ .string "TORI: We want to battle 2-on-2.\n"
+ .string "If we didn’t, we would lose!$"
+
+Route113_Text_1BBF62:: @ 81BBF62
+ .string "TIA: Both of us, we collect ashes.\n"
+ .string "We battle POKéMON, too.$"
+
+Route113_Text_1BBF9D:: @ 81BBF9D
+ .string "TIA: We couldn’t win... It’s boring,\n"
+ .string "so I’m getting some more ashes.$"
+
+Route113_Text_1BBFE2:: @ 81BBFE2
+ .string "TIA: We have a lot of ashes!\n"
+ .string "I think enough for a WHITE FLUTE!$"
+
+Route113_Text_1BC021:: @ 81BC021
+ .string "TIA: We want to battle 2-on-2.\n"
+ .string "If we don’t, we won’t win!$"
+
+Route114_Text_1BC05B:: @ 81BC05B
+ .string "Yodelayhihoo!\p"
+ .string "... ...\p"
+ .string "You’re supposed to shout\n"
+ .string "“yodelayhihoo” since it doesn’t\l"
+ .string "echo here!$"
+
+Route114_Text_1BC0B5:: @ 81BC0B5
+ .string "Yodelayhihoo!$"
+
+Route114_Text_1BC0C3:: @ 81BC0C3
+ .string "When I was a wee tyke, I believed there\n"
+ .string "was someone copying me and shouting\l"
+ .string "back, “Yodelayhihoo.”$"
+
+Route114_Text_1BC125:: @ 81BC125
+ .string "If you’re not prepared, you shouldn’t\n"
+ .string "be up in the mountains!$"
+
+Route114_Text_1BC163:: @ 81BC163
+ .string "The mountains are unforgiving...$"
+
+Route114_Text_1BC184:: @ 81BC184
+ .string "In the winter, mountains turn deadly\n"
+ .string "with blizzards and avalanches.$"
+
+Route114_Text_1BC1C8:: @ 81BC1C8
+ .string "Camping’s fun! You can fish, roast\n"
+ .string "marshmallows, and tell spooky stories!\p"
+ .string "But the best of all are the POKéMON\n"
+ .string "battles!$"
+
+Route114_Text_1BC23F:: @ 81BC23F
+ .string "Way too strong!$"
+
+Route114_Text_1BC24F:: @ 81BC24F
+ .string "I think it’s great that I can go\n"
+ .string "camping with my POKéMON.$"
+
+Route114_Text_1BC289:: @ 81BC289
+ .string "I need to exercise after a meal.\n"
+ .string "Let’s have a match!$"
+
+Route114_Text_1BC2BE:: @ 81BC2BE
+ .string "Oh, no!$"
+
+Route114_Text_1BC2C6:: @ 81BC2C6
+ .string "I just had a tasty meal.\n"
+ .string "I’m getting drowsy...$"
+
+Route114_Text_1BC2F5:: @ 81BC2F5
+ .string "Ufufufufufu...\n"
+ .string "Want to battle against my POKéMON?$"
+
+Route114_Text_1BC327:: @ 81BC327
+ .string "M-My POKéMON...$"
+
+Route114_Text_1BC337:: @ 81BC337
+ .string "A big body that’s all lumpy and hard,\n"
+ .string "enormous horns, and vicious fangs...\p"
+ .string "Ufufufufu...\n"
+ .string "I wish I had a POKéMON like that...$"
+
+Route114_Text_1BC3B3:: @ 81BC3B3
+ .string "Ufufufufufu...\n"
+ .string "Come on, battle my POKéMON...$"
+
+Route114_Text_1BC3E0:: @ 81BC3E0
+ .string "I feel so lucky getting to see your\n"
+ .string "POKéMON...$"
+
+Route114_Text_1BC40F:: @ 81BC40F
+ .string "Ufufufufufu...\p"
+ .string "When I see POKéMON battling, I get all\n"
+ .string "shivery and shaky...$"
+
+Route114_Text_1BC45A:: @ 81BC45A
+ .string "If you’re lighting a campfire, make\n"
+ .string "sure you have water handy.$"
+
+Route114_Text_1BC499:: @ 81BC499
+ .string "Thanks for dousing my fire!$"
+
+Route114_Text_1BC4B5:: @ 81BC4B5
+ .string "You really do have to be careful with\n"
+ .string "any sort of fire in a forest.\p"
+ .string "Don’t ever underestimate the power\n"
+ .string "of fire.$"
+
+Route114_Text_1BC525:: @ 81BC525
+ .string "Have you learned to keep water handy\n"
+ .string "for campfires?$"
+
+Route114_Text_1BC559:: @ 81BC559
+ .string "I got hosed down before I could flare\n"
+ .string "up, I guess.$"
+
+Route114_Text_1BC58C:: @ 81BC58C
+ .string "You really do have to be careful with\n"
+ .string "any sort of fire in a forest.\p"
+ .string "Don’t ever underestimate the power\n"
+ .string "of fire.$"
+
+Route114_Text_1BC5FC:: @ 81BC5FC
+ .string "If we were fishing, you wouldn’t stand\n"
+ .string "a chance against me.\l"
+ .string "So, bring on your POKéMON!$"
+
+Route114_Text_1BC653:: @ 81BC653
+ .string "If we were fishing, I would’ve won...$"
+
+Route114_Text_1BC679:: @ 81BC679
+ .string "I think I’ll try my luck at landing\n"
+ .string "a big one at METEOR FALLS.\p"
+ .string "There has to be something in there.\n"
+ .string "I just know it.$"
+
+Route114_Text_1BC6EC:: @ 81BC6EC
+ .string "I like to fish. But I also like to\n"
+ .string "battle!\p"
+ .string "If anyone challenges me, I’m there,\n"
+ .string "even if I’m fishing.$"
+
+Route114_Text_1BC750:: @ 81BC750
+ .string "I like to battle, but that doesn’t\n"
+ .string "mean I’m good at it...$"
+
+Route114_Text_1BC78A:: @ 81BC78A
+ .string "This time I’ll do it!\p"
+ .string "I always think that, so I can’t walk\n"
+ .string "away from fishing or POKéMON.$"
+
+Route114_Text_1BC7E3:: @ 81BC7E3
+ .string "TYRA: Well, sure.\n"
+ .string "I’m in the mood for it.\l"
+ .string "I’ll teach you a little about POKéMON.$"
+
+Route114_Text_1BC834:: @ 81BC834
+ .string "TYRA: What an amazing battle style!$"
+
+Route114_Text_1BC858:: @ 81BC858
+ .string "TYRA: I was teaching my junior IVY\n"
+ .string "about POKéMON.$"
+
+Route114_Text_1BC88A:: @ 81BC88A
+ .string "TYRA: Giggle...\n"
+ .string "If you want to battle with us, just one\l"
+ .string "POKéMON isn’t enough!$"
+
+Route114_Text_1BC8D8:: @ 81BC8D8
+ .string "IVY: Who taught you about POKéMON?$"
+
+Route114_Text_1BC8FB:: @ 81BC8FB
+ .string "IVY: What an amazing battle style!$"
+
+Route114_Text_1BC91E:: @ 81BC91E
+ .string "IVY: I started training POKéMON\n"
+ .string "because TYRA, my student mentor,\l"
+ .string "taught me!$"
+
+Route114_Text_1BC96A:: @ 81BC96A
+ .string "IVY: Do you only have one POKéMON?\n"
+ .string "I think it must feel lonesome.$"
+
+Route115_Text_1BC9AC:: @ 81BC9AC
+ .string "Hm...\n"
+ .string "You seem rather capable...\l"
+ .string "Let me keep you company!$"
+
+Route115_Text_1BC9E6:: @ 81BC9E6
+ .string "You’re much stronger than\n"
+ .string "I’d imagined!$"
+
+Route115_Text_1BCA0E:: @ 81BCA0E
+ .string "There is no such thing as a born genius.\n"
+ .string "It all depends on effort!\l"
+ .string "That is what I believe...$"
+
+Route115_Text_1BCA6B:: @ 81BCA6B
+ .string "Hm... As always, your agility speaks\n"
+ .string "for itself.\l"
+ .string "Come, keep me company!$"
+
+Route115_Text_1BCAB3:: @ 81BCAB3
+ .string "As strong as ever!$"
+
+Route115_Text_1BCAC6:: @ 81BCAC6
+ .string "All it takes is effort!\p"
+ .string "I lost because I haven’t put in enough\n"
+ .string "effort!$"
+
+Route115_Text_1BCB0D:: @ 81BCB0D
+ .string "You!\p"
+ .string "My MACHOP!\p"
+ .string "Demand a battle!$"
+
+Route115_Text_1BCB2E:: @ 81BCB2E
+ .string "Ouch, ouch, ouch!$"
+
+Route115_Text_1BCB40:: @ 81BCB40
+ .string "My MACHOP crew!\p"
+ .string "So long as they seek power, I will\n"
+ .string "grow strong with them!$"
+
+Route115_Text_1BCB8A:: @ 81BCB8A
+ .string "My strongest skill is busting bricks\n"
+ .string "with my forehead!$"
+
+Route115_Text_1BCBC1:: @ 81BCBC1
+ .string "Ugwaaaah!\n"
+ .string "My head is busted!$"
+
+Route115_Text_1BCBDE:: @ 81BCBDE
+ .string "I’ve been teaching my POKéMON karate.\p"
+ .string "It looks like they’ll get a lot better\n"
+ .string "than me. I’m excited about that.$"
+
+Route115_Text_1BCC4C:: @ 81BCC4C
+ .string "After you beat me, we trained hard to\n"
+ .string "improve our skills.\l"
+ .string "Come on, give us a rematch!$"
+
+Route115_Text_1BCCA2:: @ 81BCCA2
+ .string "Ugwaaah!\n"
+ .string "We lost again!$"
+
+Route115_Text_1BCCBA:: @ 81BCCBA
+ .string "My POKéMON will grow stronger!\n"
+ .string "I’ll redouble my training!$"
+
+Route115_Text_1BCCF4:: @ 81BCCF4
+ .string "This beach is my secret training spot!\n"
+ .string "Don’t come butting in!$"
+
+Route115_Text_1BCD32:: @ 81BCD32
+ .string "I haven’t trained enough!$"
+
+Route115_Text_1BCD4C:: @ 81BCD4C
+ .string "The sand acts as a cushion to reduce\n"
+ .string "impact and prevent injury.\l"
+ .string "This is the perfect place to train.$"
+
+Route115_Text_1BCDB0:: @ 81BCDB0
+ .string "Okay, let’s get this battle on!$"
+
+Route115_Text_1BCDD0:: @ 81BCDD0
+ .string "I can battle but my POKéMON...$"
+
+Route115_Text_1BCDEF:: @ 81BCDEF
+ .string "Even when I lose, I still get some\n"
+ .string "enjoyment out of it.\l"
+ .string "It must be that I love POKéMON.$"
+
+ .incbin "baserom.gba", 0x1bce47, 0x99
+
+Route115_Text_1BCEE0:: @ 81BCEE0
+ .string "I have a rare POKéMON!\n"
+ .string "Would you like me to show you?$"
+
+Route115_Text_1BCF16:: @ 81BCF16
+ .string "You...\n"
+ .string "You want my POKéMON, don’t you?$"
+
+Route115_Text_1BCF3D:: @ 81BCF3D
+ .string "I have this rare POKéMON.\n"
+ .string "It’s enough to keep me satisfied.$"
+
+Route116_Text_1BCF79:: @ 81BCF79
+ .string "If the tunnel doesn’t go through, then\n"
+ .string "I’ll just go over the top.$"
+
+Route116_Text_1BCFBB:: @ 81BCFBB
+ .string "Gasp... Gasp...\n"
+ .string "Losing made me tired...$"
+
+Route116_Text_1BCFE3:: @ 81BCFE3
+ .string "It’s no big deal if there’s no tunnel.\n"
+ .string "To a HIKER, mountains are roads!$"
+
+Route116_Text_1BD02B:: @ 81BD02B
+ .string "My POKéMON rule!\n"
+ .string "Check them out!$"
+
+Route116_Text_1BD04C:: @ 81BD04C
+ .string "Ouch! A scrape!\n"
+ .string "I have to put on a bandage!$"
+
+Route116_Text_1BD078:: @ 81BD078
+ .string "Bandages are signs of toughness!\n"
+ .string "I’ve got another one!$"
+
+Route116_Text_1BD0AF:: @ 81BD0AF
+ .string "My BUG POKéMON are tough!\n"
+ .string "Let’s battle!$"
+
+Route116_Text_1BD0D7:: @ 81BD0D7
+ .string "I lost!\n"
+ .string "I thought I had you!$"
+
+Route116_Text_1BD0F4:: @ 81BD0F4
+ .string "BUG POKéMON evolve quickly.\n"
+ .string "So they get strong quickly, too.$"
+
+Route116_Text_1BD131:: @ 81BD131
+ .string "Let me teach you how strong my\n"
+ .string "adorable POKéMON is!$"
+
+Route116_Text_1BD165:: @ 81BD165
+ .string "You’re a notch above me...$"
+
+Route116_Text_1BD180:: @ 81BD180
+ .string "POKéMON that possess cuteness and\n"
+ .string "power, that’s ideal, I think.$"
+
+Route116_Text_1BD1C0:: @ 81BD1C0
+ .string "We learn all sorts of things at the\n"
+ .string "TRAINER’S SCHOOL.\p"
+ .string "I want to test things out for real!$"
+
+Route116_Text_1BD21A:: @ 81BD21A
+ .string "I slacked off in school...\n"
+ .string "That’s why I lost.$"
+
+Route116_Text_1BD248:: @ 81BD248
+ .string "I’ll have to redo some courses at the\n"
+ .string "TRAINER’S SCHOOL.\l"
+ .string "If I don’t, ROXANNE will be steamed.$"
+
+Route116_Text_1BD2A5:: @ 81BD2A5
+ .string "I’ve been studying seriously at the\n"
+ .string "TRAINER’S SCHOOL.\l"
+ .string "I won’t lose like I did last time.$"
+
+Route116_Text_1BD2FE:: @ 81BD2FE
+ .string "Hunh?\n"
+ .string "I studied diligently.$"
+
+Route116_Text_1BD31A:: @ 81BD31A
+ .string "I’ll have to redo some courses at the\n"
+ .string "TRAINER’S SCHOOL.\l"
+ .string "If I don’t, ROXANNE will be steamed.$"
+
+Route116_Text_1BD377:: @ 81BD377
+ .string "I study at school, and I study on the\n"
+ .string "way home, too!$"
+
+Route116_Text_1BD3AC:: @ 81BD3AC
+ .string "I’m in shock - I lost?$"
+
+Route116_Text_1BD3C3:: @ 81BD3C3
+ .string "Awww, I’ll never become an elegant\n"
+ .string "TRAINER like ROXANNE this way!$"
+
+Route116_Text_1BD405:: @ 81BD405
+ .string "I studied a whole lot since I saw you.\n"
+ .string "You must see my achievements!$"
+
+Route116_Text_1BD44A:: @ 81BD44A
+ .string "I’m in shock. I lost again?$"
+
+Route116_Text_1BD466:: @ 81BD466
+ .string "You’ve beaten ROXANNE?\n"
+ .string "I can’t beat you, then. Not yet.$"
+
+Route117_Text_1BD49E:: @ 81BD49E
+ .string "Listen, could I get you to battle the\n"
+ .string "POKéMON I’m raising?$"
+
+Route117_Text_1BD4D9:: @ 81BD4D9
+ .string "You’ve raised yours superbly...$"
+
+Route117_Text_1BD4F9:: @ 81BD4F9
+ .string "POKéMON isn’t all about power.\p"
+ .string "Polishing a unique aspect of one’s\n"
+ .string "character is another way of enjoying\l"
+ .string "POKéMON.$"
+
+Route117_Text_1BD569:: @ 81BD569
+ .string "The POKéMON I’ve been raising are\n"
+ .string "looking good, just like before.$"
+
+Route117_Text_1BD5AB:: @ 81BD5AB
+ .string "You know how to raise them properly.\n"
+ .string "You might have DAY CARE skills...$"
+
+Route117_Text_1BD5F2:: @ 81BD5F2
+ .string "Your POKéMON are growing good!\n"
+ .string "You should enter them in CONTESTS.$"
+
+Route117_Text_1BD634:: @ 81BD634
+ .string "Please, allow me to evaluate if you\n"
+ .string "have raised your POKéMON properly.$"
+
+Route117_Text_1BD67B:: @ 81BD67B
+ .string "Yes, they are growing properly.$"
+
+Route117_Text_1BD69B:: @ 81BD69B
+ .string "If you feed {POKEBLOCK}S to POKéMON, the\n"
+ .string "unique aspects of their character\l"
+ .string "will be enhanced.$"
+
+Route117_Text_1BD6F2:: @ 81BD6F2
+ .string "Allow me to reevaluate if you have\n"
+ .string "raised your POKéMON properly.$"
+
+Route117_Text_1BD733:: @ 81BD733
+ .string "They are growing admirably.$"
+
+Route117_Text_1BD74F:: @ 81BD74F
+ .string "POKéMON seem to like different kinds\n"
+ .string "of {POKEBLOCK}S, depending on their nature.$"
+
+Route117_Text_1BD79A:: @ 81BD79A
+ .string "I’m in the middle of a triathlon, but,\n"
+ .string "whatever, let’s have a battle!$"
+
+Route117_Text_1BD7E0:: @ 81BD7E0
+ .string "I ran out of energy!$"
+
+Route117_Text_1BD7F5:: @ 81BD7F5
+ .string "I may have blown it...\p"
+ .string "I might have dropped to last during\n"
+ .string "that battle...$"
+
+Route117_Text_1BD83F:: @ 81BD83F
+ .string "I’m smack in the middle of a triathlon,\n"
+ .string "but I’m comfortably ahead.\l"
+ .string "Let’s make this a quick battle!$"
+
+Route117_Text_1BD8A2:: @ 81BD8A2
+ .string "I ran out of energy again!$"
+
+Route117_Text_1BD8BD:: @ 81BD8BD
+ .string "I was tops in swimming and cycling, but\n"
+ .string "I’m not quite that confident with\l"
+ .string "POKéMON yet.$"
+
+Route117_Text_1BD914:: @ 81BD914
+ .string "I do my triathlon training with POKéMON,\n"
+ .string "so I’m pretty confident about my speed.$"
+
+Route117_Text_1BD965:: @ 81BD965
+ .string "I need to get more practices in,\n"
+ .string "I guess.$"
+
+Route117_Text_1BD98F:: @ 81BD98F
+ .string "Training is meaningful only if you\n"
+ .string "keep it up regularly.\p"
+ .string "Okay! I’ll resume my training!\n"
+ .string "Tomorrow!$"
+
+Route117_Text_1BD9F1:: @ 81BD9F1
+ .string "Are you keeping up with your training?\n"
+ .string "I sure am!\l"
+ .string "Let me show you the evidence!$"
+
+Route117_Text_1BDA41:: @ 81BDA41
+ .string "I need to get more practices in,\n"
+ .string "I guess.$"
+
+Route117_Text_1BDA6B:: @ 81BDA6B
+ .string "I’ll resume training tomorrow.\n"
+ .string "Let’s battle again sometime!$"
+
+Route117_Text_1BDAA7:: @ 81BDAA7
+ .string "Once a BUG CATCHER!\n"
+ .string "And now a BUG MANIAC!\p"
+ .string "But my love for POKéMON remains\n"
+ .string "unchanged!$"
+
+Route117_Text_1BDAFC:: @ 81BDAFC
+ .string "My ineptitude also remains\n"
+ .string "unchanged...$"
+
+Route117_Text_1BDB24:: @ 81BDB24
+ .string "All I did was follow my heart, and now\n"
+ .string "they call me a BUG MANIAC...\p"
+ .string "Still, I am an expert on BUG POKéMON,\n"
+ .string "so it’s only natural that they call me\l"
+ .string "a BUG MANIAC.$"
+
+Route117_Text_1BDBC3:: @ 81BDBC3
+ .string "ANNA: I’m with my pretty junior student\n"
+ .string "partner. I have to do good!$"
+
+Route117_Text_1BDC07:: @ 81BDC07
+ .string "ANNA: I’m with my pretty junior student\n"
+ .string "partner! Let me win!$"
+
+Route117_Text_1BDC44:: @ 81BDC44
+ .string "ANNA: Your POKéMON have some good\n"
+ .string "combinations.\p"
+ .string "I’d say you’re second only to us!$"
+
+Route117_Text_1BDC96:: @ 81BDC96
+ .string "ANNA: If you want to battle us, bring\n"
+ .string "two POKéMON with you.$"
+
+Route117_Text_1BDCD2:: @ 81BDCD2
+ .string "MEG: I’m going to tag up with my super\n"
+ .string "senior student partner and beat you!$"
+
+Route117_Text_1BDD1E:: @ 81BDD1E
+ .string "MEG: Oh, no!\n"
+ .string "I’m sorry, ANNA! I let you down...$"
+
+Route117_Text_1BDD4E:: @ 81BDD4E
+ .string "MEG: I dragged ANNA down...\n"
+ .string "If I didn’t, she would have won!$"
+
+Route117_Text_1BDD8B:: @ 81BDD8B
+ .string "MEG: Do you only have one POKéMON?\n"
+ .string "We can’t battle with you, then.\p"
+ .string "We want to have a 2-on-2 battle.$"
+
+Route117_Text_1BDDEF:: @ 81BDDEF
+ .string "ANNA: I can’t keep losing in front of\n"
+ .string "my junior partner, right?$"
+
+Route117_Text_1BDE2F:: @ 81BDE2F
+ .string "ANNA: I couldn’t get into the groove.$"
+
+Route117_Text_1BDE55:: @ 81BDE55
+ .string "ANNA: Your POKéMON have some good\n"
+ .string "combinations.\p"
+ .string "I’d say you’re second only to us!$"
+
+Route117_Text_1BDEA7:: @ 81BDEA7
+ .string "ANNA: If you want to battle us, bring\n"
+ .string "two POKéMON with you.$"
+
+Route117_Text_1BDEE3:: @ 81BDEE3
+ .string "MEG: I’m going to tag up with my\n"
+ .string "senior partner and win this time!$"
+
+Route117_Text_1BDF26:: @ 81BDF26
+ .string "MEG: Too strong!$"
+
+Route117_Text_1BDF37:: @ 81BDF37
+ .string "MEG: I battled together with my\n"
+ .string "senior partner, but we lost...\p"
+ .string "That’s so discouraging...$"
+
+Route117_Text_1BDF90:: @ 81BDF90
+ .string "MEG: Do you only have one POKéMON?\n"
+ .string "We can’t battle with you, then.\p"
+ .string "We want to have a 2-on-2 battle.$"
+
+Route118_Text_1BDFF4:: @ 81BDFF4
+ .string "The aroma of flowers has a magical\n"
+ .string "power. It cleanses us body and soul.$"
+
+Route118_Text_1BE03C:: @ 81BE03C
+ .string "Oh, dear me.\n"
+ .string "I seem to have lost.$"
+
+Route118_Text_1BE05E:: @ 81BE05E
+ .string "Flowers, POKéMON...\n"
+ .string "I love whatever smells nice.\p"
+ .string "Stinky things...\n"
+ .string "I’ll pass.$"
+
+Route118_Text_1BE0AB:: @ 81BE0AB
+ .string "Were you drawn here by the sweet\n"
+ .string "aroma?$"
+
+Route118_Text_1BE0D3:: @ 81BE0D3
+ .string "The power of aroma...\n"
+ .string "It didn’t seem to do much.$"
+
+Route118_Text_1BE104:: @ 81BE104
+ .string "If you use a sweet aroma properly,\n"
+ .string "POKéMON will be attracted by it.$"
+
+Route118_Text_1BE148:: @ 81BE148
+ .string "BIRD POKéMON that FLY elegantly in\n"
+ .string "the sky... They’re the best!$"
+
+Route118_Text_1BE188:: @ 81BE188
+ .string "Urgh... I crashed...$"
+
+Route118_Text_1BE19D:: @ 81BE19D
+ .string "You’ve got great POKéMON.\n"
+ .string "I’ll have to train mine better.$"
+
+Route118_Text_1BE1D7:: @ 81BE1D7
+ .string "Take flight!\n"
+ .string "My BIRD POKéMON!$"
+
+Route118_Text_1BE1F5:: @ 81BE1F5
+ .string "They did take flight...$"
+
+Route118_Text_1BE20D:: @ 81BE20D
+ .string "If they’d get stronger, they’d be able\n"
+ .string "to fly more freely...$"
+
+Route118_Text_1BE24A:: @ 81BE24A
+ .string "I’m a FISHERMAN, but also a TRAINER.\n"
+ .string "I’m raising the POKéMON I caught.$"
+
+Route118_Text_1BE291:: @ 81BE291
+ .string "I thought I was doing okay in my\n"
+ .string "training...$"
+
+Route118_Text_1BE2BE:: @ 81BE2BE
+ .string "I couldn’t win by training POKéMON\n"
+ .string "while I fished...\p"
+ .string "Was I doing things in half measures?$"
+
+Route118_Text_1BE318:: @ 81BE318
+ .string "For FISHERMEN, equipment is the key.\p"
+ .string "But for TRAINERS, the key ingredients\n"
+ .string "are POKéMON and heart, of course!$"
+
+Route118_Text_1BE385:: @ 81BE385
+ .string "I was beaten in heart?$"
+
+Route118_Text_1BE39C:: @ 81BE39C
+ .string "Come to think of it, fishing is a battle\n"
+ .string "between a FISHERMAN and a POKéMON.$"
+
+Route118_Text_1BE3E8:: @ 81BE3E8
+ .string "Let my melody rock your soul!$"
+
+Route118_Text_1BE406:: @ 81BE406
+ .string "La-lalala...$"
+
+Route118_Text_1BE413:: @ 81BE413
+ .string "An electric guitar doesn’t always\n"
+ .string "have to be noisy...\p"
+ .string "It can be strummed to squeeze out\n"
+ .string "this heart-stirring melody...$"
+
+Route118_Text_1BE489:: @ 81BE489
+ .string "A melody from my POKéMON and me...\n"
+ .string "Let us deliver it to your soul.$"
+
+Route118_Text_1BE4CC:: @ 81BE4CC
+ .string "La-lalala...$"
+
+Route118_Text_1BE4D9:: @ 81BE4D9
+ .string "When I play, my emotions should reach\n"
+ .string "you through my electric guitar...$"
+
+Route119_Text_1BE521:: @ 81BE521
+ .string "We’re the MIMIC CIRCLE!\n"
+ .string "We MIMIC what you do!$"
+
+Route119_Text_1BE54F:: @ 81BE54F
+ .string "Whoopsie!\n"
+ .string "I lost!$"
+
+Route119_Text_1BE561:: @ 81BE561
+ .string "What’s so good about mimicry?\p"
+ .string "Fufufu...\n"
+ .string "You’ll never understand...$"
+
+Route119_Text_1BE5A4:: @ 81BE5A4
+ .string "So, we finally meet!\n"
+ .string "My BUG POKéMON will keep you company!$"
+
+Route119_Text_1BE5DF:: @ 81BE5DF
+ .string "I wish we’d never met...$"
+
+Route119_Text_1BE5F8:: @ 81BE5F8
+ .string "I want to MIMIC you some more.\p"
+ .string "Can you hurry up and move?$"
+
+Route119_Text_1BE632:: @ 81BE632
+ .string "If you step forward, we step forward.\p"
+ .string "If you turn right, we turn, too...$"
+
+Route119_Text_1BE67B:: @ 81BE67B
+ .string "But if you win, I lose...$"
+
+Route119_Text_1BE695:: @ 81BE695
+ .string "I can’t MIMIC you winning the match.\n"
+ .string "That’s just impossible...\l"
+ .string "It’s burning me up...$"
+
+Route119_Text_1BE6EA:: @ 81BE6EA
+ .string "Yep, you’ve finally caught me!\n"
+ .string "Or were you trying to avoid me?$"
+
+Route119_Text_1BE729:: @ 81BE729
+ .string "Whoop, that was a great match!$"
+
+Route119_Text_1BE748:: @ 81BE748
+ .string "We’re the MIMIC CIRCLE!\n"
+ .string "I hope you enjoyed our performance.$"
+
+Route119_Text_1BE784:: @ 81BE784
+ .string "You don’t know who I am, do you?\p"
+ .string "But, I also don’t know you.\n"
+ .string "So, we’ll battle!$"
+
+Route119_Text_1BE7D3:: @ 81BE7D3
+ .string "You’re pretty strong!$"
+
+Route119_Text_1BE7E9:: @ 81BE7E9
+ .string "Until you go away somewhere, we’ll\n"
+ .string "keep on mimicking your every move.$"
+
+Route119_Text_1BE82F:: @ 81BE82F
+ .string "The MIMIC CIRCLE was formed by people\n"
+ .string "who like to MIMIC.\p"
+ .string "A battle starts the instant we meet!$"
+
+Route119_Text_1BE88D:: @ 81BE88D
+ .string "I surrender!$"
+
+Route119_Text_1BE89A:: @ 81BE89A
+ .string "Won’t you join our MIMIC CIRCLE?$"
+
+Route119_Text_1BE8BB:: @ 81BE8BB
+ .string "Who has the knowledge and the\n"
+ .string "technique for survival?\p"
+ .string "POKéMON RANGERS, that’s who!$"
+
+Route119_Text_1BE90E:: @ 81BE90E
+ .string "I didn’t have enough POKéMON\n"
+ .string "know-how...$"
+
+Route119_Text_1BE937:: @ 81BE937
+ .string "To break away from civilization and\n"
+ .string "awaken the wild spirit within!\p"
+ .string "That’s our vision.$"
+
+Route119_Text_1BE98D:: @ 81BE98D
+ .string "I’m going to regain my wild spirit by\n"
+ .string "being together with POKéMON.$"
+
+Route119_Text_1BE9D0:: @ 81BE9D0
+ .string "You’ve remained strong!$"
+
+Route119_Text_1BE9E8:: @ 81BE9E8
+ .string "Believe in your POKéMON.\n"
+ .string "Believe in yourself.\p"
+ .string "The road will reveal itself to you.$"
+
+Route119_Text_1BEA3A:: @ 81BEA3A
+ .string "Oh? Look at you.\p"
+ .string "For someone on an adventure, you’re\n"
+ .string "traveling awfully light.$"
+
+Route119_Text_1BEA88:: @ 81BEA88
+ .string "Accidents happen when you’re not\n"
+ .string "prepared!$"
+
+Route119_Text_1BEAB3:: @ 81BEAB3
+ .string "You’re traveling light but you have\n"
+ .string "everything you need.\p"
+ .string "You’re on top of things mentally and\n"
+ .string "physically, too.$"
+
+Route119_Text_1BEB22:: @ 81BEB22
+ .string "How’s your journey with POKéMON\n"
+ .string "going?$"
+
+Route119_Text_1BEB49:: @ 81BEB49
+ .string "I’m still missing something...$"
+
+Route119_Text_1BEB68:: @ 81BEB68
+ .string "In the same way that you, as a TRAINER,\n"
+ .string "rely on your POKéMON, your POKéMON\l"
+ .string "rely on you.$"
+
+Route119_Text_1BEBC0:: @ 81BEBC0
+ .string "The vast sky holds untold promise!\p"
+ .string "Nothing can compare to the sheer\n"
+ .string "exhilaration of flight!$"
+
+Route119_Text_1BEC1C:: @ 81BEC1C
+ .string "Down and out!$"
+
+Route119_Text_1BEC2A:: @ 81BEC2A
+ .string "My BIRD POKéMON made my dreams of\n"
+ .string "flying come true!$"
+
+Route119_Text_1BEC5E:: @ 81BEC5E
+ .string "I’ll show you the true potential of me\n"
+ .string "and my BIRD POKéMON!$"
+
+Route119_Text_1BEC9A:: @ 81BEC9A
+ .string "We lacked potential...$"
+
+Route119_Text_1BECB1:: @ 81BECB1
+ .string "Ever since I was a little kid, I always\n"
+ .string "admired BIRD POKéMON...$"
+
+Route119_Text_1BECF1:: @ 81BECF1
+ .string "To lurk in shadows, and live in\n"
+ .string "darkness... That is my destiny.\p"
+ .string "I emerge to challenge you!$"
+
+Route119_Text_1BED4C:: @ 81BED4C
+ .string "I admit defeat!$"
+
+Route119_Text_1BED5C:: @ 81BED5C
+ .string "Those defeated in battle withdraw\n"
+ .string "quietly back into the shadows.\l"
+ .string "That, too, is destiny...$"
+
+Route119_Text_1BEDB6:: @ 81BEDB6
+ .string "If you’re not on your guard, you’re in\n"
+ .string "for some pain!$"
+
+Route119_Text_1BEDEC:: @ 81BEDEC
+ .string "You’re surprisingly good!$"
+
+Route119_Text_1BEE06:: @ 81BEE06
+ .string "My surprise attack ended in\n"
+ .string "failure...$"
+
+Route119_Text_1BEE2D:: @ 81BEE2D
+ .string "To hide a tree, use a forest!$"
+
+Route119_Text_1BEE4B:: @ 81BEE4B
+ .string "I bow to your superiority.$"
+
+Route119_Text_1BEE66:: @ 81BEE66
+ .string "To hide a tree, use a forest!\n"
+ .string "To hide a POKéMON, use a POKéMON!\p"
+ .string "There is no deep, hidden meaning\n"
+ .string "to that.$"
+
+Route119_Text_1BEED0:: @ 81BEED0
+ .string "You spoke to me...\n"
+ .string "So you want to challenge me!\p"
+ .string "Sure! I’ll try out the POKéMON I caught\n"
+ .string "while SURFING!$"
+
+Route119_Text_1BEF37:: @ 81BEF37
+ .string "I don’t have a clue about what it\n"
+ .string "takes to win.$"
+
+Route119_Text_1BEF67:: @ 81BEF67
+ .string "Go for a SURF on my POKéMON...\p"
+ .string "Then fish off its back...\p"
+ .string "It’s an indescribably luxuriant moment!$"
+
+Route120_Text_1BEFC8:: @ 81BEFC8
+ .string "Do you have any moves that can strike\n"
+ .string "a flying POKéMON?$"
+
+Route120_Text_1BF000:: @ 81BF000
+ .string "You soared above me!$"
+
+Route120_Text_1BF015:: @ 81BF015
+ .string "The move FLY is convenient, don’t\n"
+ .string "you think?\p"
+ .string "While the POKéMON is flying, almost\n"
+ .string "no moves can strike it.$"
+
+Route120_Text_1BF07E:: @ 81BF07E
+ .string "My POKéMON is strong!\n"
+ .string "How about yours?$"
+
+Route120_Text_1BF0A5:: @ 81BF0A5
+ .string "Your POKéMON were stronger...$"
+
+Route120_Text_1BF0C3:: @ 81BF0C3
+ .string "A POKéMON that grows steadily is one\n"
+ .string "you can count on.$"
+
+Route120_Text_1BF0FA:: @ 81BF0FA
+ .string "A POKéMON that grows steadily is one\n"
+ .string "you can count on.$"
+
+Route120_Text_1BF131:: @ 81BF131
+ .string "Your POKéMON are seriously strong.$"
+
+Route120_Text_1BF154:: @ 81BF154
+ .string "My POKéMON are growing stronger.\n"
+ .string "I have to grow stronger, too.$"
+
+Route120_Text_1BF193:: @ 81BF193
+ .string "I’ll check your POKéMON and see if\n"
+ .string "they’re fit for the outdoors.$"
+
+Route120_Text_1BF1D4:: @ 81BF1D4
+ .string "With POKéMON that strong, you’re in\n"
+ .string "no danger of needing rescue!$"
+
+Route120_Text_1BF215:: @ 81BF215
+ .string "To travel wherever your heart desires\n"
+ .string "with POKéMON...\l"
+ .string "That’s the joy of being a TRAINER.$"
+
+Route120_Text_1BF26E:: @ 81BF26E
+ .string "How’s your physical fitness?\n"
+ .string "If you’re not fit, you could have a\l"
+ .string "rough time in critical situations.$"
+
+Route120_Text_1BF2D2:: @ 81BF2D2
+ .string "I’m totally fit, but...$"
+
+Route120_Text_1BF2EA:: @ 81BF2EA
+ .string "Fitness training is in my routine.\n"
+ .string "I always run with my POKéMON.$"
+
+Route120_Text_1BF32B:: @ 81BF32B
+ .string "... ... ... ... ... ...\n"
+ .string "... ... ... ... ... ...\l"
+ .string "Want to battle?$"
+
+Route120_Text_1BF36B:: @ 81BF36B
+ .string "... ... ... ... ... ...\n"
+ .string "I lost...$"
+
+Route120_Text_1BF38D:: @ 81BF38D
+ .string "... ... ... ... ... ...\n"
+ .string "... ... ... ... ... ...\l"
+ .string "I’ll try harder...$"
+
+Route120_Text_1BF3D0:: @ 81BF3D0
+ .string "... ... ... ... ... ...\n"
+ .string "... ... ... ... ... ...\l"
+ .string "Want to battle again?$"
+
+Route120_Text_1BF416:: @ 81BF416
+ .string "... ... ... ... ... ...\n"
+ .string "I lost again...$"
+
+Route120_Text_1BF43E:: @ 81BF43E
+ .string "... ... ... ... ... ...\n"
+ .string "... ... ... ... ... ...\l"
+ .string "I’ll try harder...\l"
+ .string "For my precious BUG POKéMON...$"
+
+Route120_Text_1BF4A0:: @ 81BF4A0
+ .string "POKéMON have many special abilities.\n"
+ .string "If you want to become a first-class\l"
+ .string "TRAINER, learn about them.$"
+
+Route120_Text_1BF504:: @ 81BF504
+ .string "You’re obviously thinking.$"
+
+Route120_Text_1BF51F:: @ 81BF51F
+ .string "The special abilities of POKéMON\n"
+ .string "will make battle styles change.$"
+
+Route120_Text_1BF560:: @ 81BF560
+ .string "Who might you be?\p"
+ .string "Are you perhaps searching for ancient\n"
+ .string "ruins that are rumored to possibly\l"
+ .string "exist according to legend?$"
+
+Route120_Text_1BF5D6:: @ 81BF5D6
+ .string "What a disgraceful setback...$"
+
+Route120_Text_1BF5F4:: @ 81BF5F4
+ .string "That giant rock... I would like to\n"
+ .string "believe it may indeed contain ancient\l"
+ .string "ruins. But I see no entrance.$"
+
+Route120_Text_1BF65B:: @ 81BF65B
+ .string "Why am I carrying this parasol?\p"
+ .string "I’ll tell you if you can win against me.$"
+
+Route120_Text_1BF6A4:: @ 81BF6A4
+ .string "A parasol can’t ward off POKéMON\n"
+ .string "attacks...$"
+
+Route120_Text_1BF6D0:: @ 81BF6D0
+ .string "I don’t think strong sunlight is good\n"
+ .string "for my POKéMON.\l"
+ .string "So I shield them with my parasol.$"
+
+Route120_Text_1BF728:: @ 81BF728
+ .string "Me, POKéMON, and my parasol...\p"
+ .string "If any one of them is missing, the\n"
+ .string "picture of beauty will be ruined.$"
+
+Route120_Text_1BF78C:: @ 81BF78C
+ .string "You’ve completely ruined my beauty...$"
+
+Route120_Text_1BF7B2:: @ 81BF7B2
+ .string "A parasol wouldn’t suit you at all.\p"
+ .string "Why, something like this would only\n"
+ .string "get in your way.$"
+
+Route120_Text_1BF80B:: @ 81BF80B
+ .string "I will adopt the movements of POKéMON\n"
+ .string "and create new ninja techniques.$"
+
+Route120_Text_1BF852:: @ 81BF852
+ .string "The creation of new ninja techniques\n"
+ .string "is but a distant dream...$"
+
+Route120_Text_1BF891:: @ 81BF891
+ .string "Perhaps I ought to apprentice under\n"
+ .string "a ninja sensei.$"
+
+Route120_Text_1BF8C5:: @ 81BF8C5
+ .string "We ninja conceal ourselves under our\n"
+ .string "camouflage cloaks.\l"
+ .string "I bet you didn’t know where I was!$"
+
+Route120_Text_1BF920:: @ 81BF920
+ .string "I lost!\n"
+ .string "I should camouflage my shame!$"
+
+Route120_Text_1BF946:: @ 81BF946
+ .string "Our camouflage cloaks are all\n"
+ .string "handmade.$"
+
+Route121_Text_1BF96E:: @ 81BF96E
+ .string "Will you play with my delightfully\n"
+ .string "pretty POKéMON?$"
+
+Route121_Text_1BF9A1:: @ 81BF9A1
+ .string "This isn’t what I meant!$"
+
+Route121_Text_1BF9BA:: @ 81BF9BA
+ .string "I’m going to a CONTEST in LILYCOVE.\p"
+ .string "My POKéMON should have no problem\n"
+ .string "sweeping the MASTER CLASS.$"
+
+Route121_Text_1BFA1B:: @ 81BFA1B
+ .string "With my POKéMON, I have traveled the\n"
+ .string "world’s four corners.\p"
+ .string "You might say I have some confidence\n"
+ .string "in my abilities.$"
+
+Route121_Text_1BFA8C:: @ 81BFA8C
+ .string "Ah, well played.$"
+
+Route121_Text_1BFA9D:: @ 81BFA9D
+ .string "I would like to circle the globe once\n"
+ .string "again with my POKéMON.$"
+
+Route121_Text_1BFADA:: @ 81BFADA
+ .string "With my POKéMON, I have traveled the\n"
+ .string "world’s four corners.\p"
+ .string "You might say I have some confidence\n"
+ .string "in my abilities.$"
+
+Route121_Text_1BFB4B:: @ 81BFB4B
+ .string "Ah, well played.$"
+
+Route121_Text_1BFB5C:: @ 81BFB5C
+ .string "Your POKéMON and you...\p"
+ .string "Your prowess together will be\n"
+ .string "considered strong, even overseas.$"
+
+Route121_Text_1BFBB4:: @ 81BFBB4
+ .string "There are powers beyond our\n"
+ .string "understanding in the world...$"
+
+Route121_Text_1BFBEE:: @ 81BFBEE
+ .string "I have lost...$"
+
+Route121_Text_1BFBFD:: @ 81BFBFD
+ .string "MT. PYRE...\n"
+ .string "There is a mysterious power\l"
+ .string "at work there...$"
+
+Route121_Text_1BFC36:: @ 81BFC36
+ .string "KATE: Together, we’re fearless!\n"
+ .string "We’ll demonstrate how tough we are!$"
+
+Route121_Text_1BFC7A:: @ 81BFC7A
+ .string "KATE: I blew it in front of my junior\n"
+ .string "student partner...$"
+
+Route121_Text_1BFCB3:: @ 81BFCB3
+ .string "KATE: When someone’s relying on me,\n"
+ .string "I get this urge to look cool in front\l"
+ .string "of them...$"
+
+Route121_Text_1BFD08:: @ 81BFD08
+ .string "KATE: If you’ve only got one POKéMON,\n"
+ .string "we can’t battle with you.\p"
+ .string "That would be bullying.$"
+
+Route121_Text_1BFD60:: @ 81BFD60
+ .string "JOY: Together, we’re fearless!\n"
+ .string "We’ll demonstrate how tough we are!$"
+
+Route121_Text_1BFDA3:: @ 81BFDA3
+ .string "JOY: Please forgive me, KATE!$"
+
+Route121_Text_1BFDC1:: @ 81BFDC1
+ .string "JOY: Ehehe, I’ll have to train with KATE,\n"
+ .string "my senior student partner, again.$"
+
+Route121_Text_1BFE0D:: @ 81BFE0D
+ .string "JOY: You need at least two POKéMON\n"
+ .string "if you’re going to challenge us!$"
+
+Route121_Text_1BFE51:: @ 81BFE51
+ .string "Stop! Have a good look at my precious\n"
+ .string "POKéMON!$"
+
+Route121_Text_1BFE80:: @ 81BFE80
+ .string "Oh, how dare you!\n"
+ .string "Don’t take it so seriously!$"
+
+Route121_Text_1BFEAE:: @ 81BFEAE
+ .string "Maybe I’ll go catch more POKéMON at\n"
+ .string "the SAFARI.$"
+
+Route121_Text_1BFEDE:: @ 81BFEDE
+ .string "My precious POKéMON grew!\n"
+ .string "Have a good look!$"
+
+Route121_Text_1BFF0A:: @ 81BFF0A
+ .string "Oh, how dare you!\n"
+ .string "You still won’t take it easy!$"
+
+Route121_Text_1BFF3A:: @ 81BFF3A
+ .string "Maybe I’ll go catch more POKéMON at\n"
+ .string "the SAFARI.$"
+
+Route123_Text_1BFF6A:: @ 81BFF6A
+ .string "Want to determine how strong you are?\n"
+ .string "I’ll be the test!$"
+
+Route123_Text_1BFFA2:: @ 81BFFA2
+ .string "You passed with flying colors!$"
+
+Route123_Text_1BFFC1:: @ 81BFFC1
+ .string "To best even me...\n"
+ .string "Your strength is marvelous!$"
+
+Route123_Text_1BFFF0:: @ 81BFFF0
+ .string "You seem to have a big collection\n"
+ .string "of GYM BADGES.\p"
+ .string "Let me see if you’re actually worthy of\n"
+ .string "those BADGES!$"
+
+Route123_Text_1C0057:: @ 81C0057
+ .string "Oh, you’re worthy, all right!$"
+
+Route123_Text_1C0075:: @ 81C0075
+ .string "You did your BADGES proud in that\n"
+ .string "match!$"
+
+Route123_Text_1C009E:: @ 81C009E
+ .string "They say that good times are filled\n"
+ .string "with good aromas.$"
+
+Route123_Text_1C00D4:: @ 81C00D4
+ .string "Oh...\n"
+ .string "I smell the bitter scent of misery...$"
+
+Route123_Text_1C0100:: @ 81C0100
+ .string "The BERRY MASTER’s garden is filled\n"
+ .string "with uplifting fragrances.$"
+
+Route123_Text_1C013F:: @ 81C013F
+ .string "Being a psychic is about willpower.\p"
+ .string "I’ve willed myself not to lose to\n"
+ .string "anyone. That makes me strong!$"
+
+Route123_Text_1C01A3:: @ 81C01A3
+ .string "I feel sad...$"
+
+Route123_Text_1C01B1:: @ 81C01B1
+ .string "Being a psychic is about willpower.\n"
+ .string "I thought I wouldn’t lose to you...$"
+
+Route123_Text_1C01F9:: @ 81C01F9
+ .string "I’ve convinced myself that I won’t\n"
+ .string "lose anymore. That makes me strong!$"
+
+Route123_Text_1C0240:: @ 81C0240
+ .string "I feel sad...$"
+
+Route123_Text_1C024E:: @ 81C024E
+ .string "I should train at MT. PYRE...\n"
+ .string "I’ll never beat you this way...$"
+
+Route123_Text_1C028C:: @ 81C028C
+ .string "Don’t be too happy if your POKéMON\n"
+ .string "develop psychic powers.\p"
+ .string "You need to refine those powers to\n"
+ .string "make them really useful.$"
+
+Route123_Text_1C0303:: @ 81C0303
+ .string "Astounding!$"
+
+Route123_Text_1C030F:: @ 81C030F
+ .string "We all have psychic powers.\n"
+ .string "We’ve just forgotten how to use them.$"
+
+Route123_Text_1C0351:: @ 81C0351
+ .string "Have you awoken the psychic powers\n"
+ .string "within you?$"
+
+Route123_Text_1C0380:: @ 81C0380
+ .string "Astounding!$"
+
+Route123_Text_1C038C:: @ 81C038C
+ .string "Your power with POKéMON...\n"
+ .string "That could be a psychic power, too.$"
+
+Route123_Text_1C03CB:: @ 81C03CB
+ .string "MIU: Hello, TRAINER. I hope your\n"
+ .string "POKéMON won’t cry when they lose.$"
+
+Route123_Text_1C040E:: @ 81C040E
+ .string "MIU: Uh-oh, we lost.$"
+
+Route123_Text_1C0423:: @ 81C0423
+ .string "MIU: TRAINER, your POKéMON are\n"
+ .string "strong because you are friends.$"
+
+Route123_Text_1C0462:: @ 81C0462
+ .string "MIU: It’s no fun to battle if you\n"
+ .string "don’t have two POKéMON.$"
+
+Route123_Text_1C049C:: @ 81C049C
+ .string "YUKI: Okay!\n"
+ .string "We’re beating the TRAINER’s POKéMON!$"
+
+Route123_Text_1C04CD:: @ 81C04CD
+ .string "YUKI: Uh-oh, we lost.$"
+
+Route123_Text_1C04E3:: @ 81C04E3
+ .string "YUKI: Why are you so strong?\n"
+ .string "We’ve never lost before.$"
+
+Route123_Text_1C0519:: @ 81C0519
+ .string "YUKI: It’s no fun to battle if you\n"
+ .string "don’t have two POKéMON.$"
+
+Route123_Text_1C0554:: @ 81C0554
+ .string "MT. PYRE...\n"
+ .string "Where the spirits of POKéMON sleep...\l"
+ .string "Will your POKéMON sleep?$"
+
+Route123_Text_1C059F:: @ 81C059F
+ .string "Overflowing with vitality...$"
+
+Route123_Text_1C05BC:: @ 81C05BC
+ .string "MT. PYRE...\n"
+ .string "Where the spirits of POKéMON sleep...\p"
+ .string "It must overflow with a power that\n"
+ .string "soothes spirits...$"
+
+Route124_Text_1C0624:: @ 81C0624
+ .string "Hey, are you lost at sea?\p"
+ .string "If you can beat my POKéMON, I can\n"
+ .string "serve as your pilot.$"
+
+Route124_Text_1C0675:: @ 81C0675
+ .string "I lost my bearings in battle!$"
+
+Route124_Text_1C0693:: @ 81C0693
+ .string "Many people lose their bearings at sea.\p"
+ .string "If you’re that sort, you should refer\n"
+ .string "to the POKéNAV’s MAP.$"
+
+Route124_Text_1C06F7:: @ 81C06F7
+ .string "Hm! You’re riding a POKéMON instead\n"
+ .string "of swimming yourself...\p"
+ .string "I am envious!$"
+
+Route124_Text_1C0741:: @ 81C0741
+ .string "Oh!\n"
+ .string "I can’t...$"
+
+Route124_Text_1C0750:: @ 81C0750
+ .string "I’m getting chilled...\n"
+ .string "I’ve been in the water too long...\p"
+ .string "I wish I could ride a POKéMON like you...$"
+
+Route124_Text_1C07B4:: @ 81C07B4
+ .string "If you just float in the sea like\n"
+ .string "this, POKéMON come around to play.$"
+
+Route124_Text_1C07F9:: @ 81C07F9
+ .string "Oh...\n"
+ .string "Lost at sea...$"
+
+Route124_Text_1C080E:: @ 81C080E
+ .string "While swimming, I noticed that some\n"
+ .string "POKéMON attack, and some just watch.\p"
+ .string "I guess POKéMON have personalities\n"
+ .string "of their own.$"
+
+Route124_Text_1C0888:: @ 81C0888
+ .string "If you just float in the sea like this,\n"
+ .string "TRAINERS challenge you!$"
+
+Route124_Text_1C08C8:: @ 81C08C8
+ .string "That’s strange...\n"
+ .string "I lost again...$"
+
+Route124_Text_1C08EA:: @ 81C08EA
+ .string "This has nothing to do with anything,\n"
+ .string "but maybe I’ll visit the TRICK HOUSE.$"
+
+Route124_Text_1C0936:: @ 81C0936
+ .string "I’m growing bored of swimming...\n"
+ .string "How about a battle?$"
+
+Route124_Text_1C096B:: @ 81C096B
+ .string "I had no idea that you were\n"
+ .string "this strong!$"
+
+Route124_Text_1C0994:: @ 81C0994
+ .string "All the effort you put in must have\n"
+ .string "made you this strong.$"
+
+Route124_Text_1C09CE:: @ 81C09CE
+ .string "Fufufufu... I dive deep underwater\n"
+ .string "to go deep under cover.\l"
+ .string "Plumbing the depths is where I excel!$"
+
+Route124_Text_1C0A2F:: @ 81C0A2F
+ .string "Glub, glub, glub...\n"
+ .string "I’m sinking...$"
+
+Route124_Text_1C0A52:: @ 81C0A52
+ .string "I have it on good authority that\n"
+ .string "there’s a DIVE spot around here.\p"
+ .string "It gives me the urge to go deep\n"
+ .string "again...$"
+
+Route124_Text_1C0ABD:: @ 81C0ABD
+ .string "RITA: Sigh...\p"
+ .string "Here I am in the sea, but who’s with me?\n"
+ .string "My little brother!\p"
+ .string "Let’s battle so I won’t have to dwell\n"
+ .string "on that!$"
+
+Route124_Text_1C0B36:: @ 81C0B36
+ .string "RITA: SAM! It’s your fault we lost!\n"
+ .string "You’re in for it later!$"
+
+Route124_Text_1C0B72:: @ 81C0B72
+ .string "RITA: Sigh...\p"
+ .string "If only it wasn’t my little brother\n"
+ .string "next to me, but a nice boyfriend...$"
+
+Route124_Text_1C0BC8:: @ 81C0BC8
+ .string "RITA: You’re planning to battle us?\n"
+ .string "Not unless you have more POKéMON.$"
+
+Route124_Text_1C0C0E:: @ 81C0C0E
+ .string "SAM: My big sister is tough at POKéMON!\p"
+ .string "Don’t cry when you lose!$"
+
+Route124_Text_1C0C4F:: @ 81C0C4F
+ .string "SAM: Uh-oh...\n"
+ .string "My big sister will chew me out...$"
+
+Route124_Text_1C0C7F:: @ 81C0C7F
+ .string "SAM: My big sister is really scary\n"
+ .string "when she gets angry.\p"
+ .string "That’s why she doesn’t have a\n"
+ .string "boyfriend.$"
+
+Route124_Text_1C0CE0:: @ 81C0CE0
+ .string "SAM: Did you want to battle us?\n"
+ .string "Bring some more POKéMON, then.$"
+
+Route124_Text_1C0D1F:: @ 81C0D1F
+ .string "RITA: Sigh...\p"
+ .string "Here I am in the sea, but who’s with me?\n"
+ .string "My little brother!\p"
+ .string "Oh, hi, it’s been a while. Let’s battle\n"
+ .string "so I won’t have to dwell on things!$"
+
+Route124_Text_1C0DB5:: @ 81C0DB5
+ .string "RITA: SAM!\n"
+ .string "It’s your fault we lost again!\p"
+ .string "We’re having a training session later!$"
+
+Route124_Text_1C0E06:: @ 81C0E06
+ .string "RITA: Sigh...\p"
+ .string "If I had a nice boyfriend, we’d beat\n"
+ .string "anyone with lovely combinations...$"
+
+Route124_Text_1C0E5C:: @ 81C0E5C
+ .string "RITA: You’re planning to battle us?\n"
+ .string "Not unless you have more POKéMON.$"
+
+Route124_Text_1C0EA2:: @ 81C0EA2
+ .string "SAM: If we lose, I’ll catch heck.\n"
+ .string "I’m going to go totally all out!$"
+
+Route124_Text_1C0EE5:: @ 81C0EE5
+ .string "SAM: Uh-oh...\n"
+ .string "My big sister will chew me out again.$"
+
+Route124_Text_1C0F19:: @ 81C0F19
+ .string "SAM: My big sister is really scary\n"
+ .string "when she gets angry.\p"
+ .string "She’s going to make me train really\n"
+ .string "hard with POKéMON later...$"
+
+Route124_Text_1C0F90:: @ 81C0F90
+ .string "SAM: Did you want to battle us?\n"
+ .string "Bring some more POKéMON, then.$"
+
+ .include "data/maps/text/Route125.s"
+ .include "data/maps/text/Route126.s"
+ .include "data/maps/text/Route127.s"
+Route128_Text_1C1C67:: @ 81C1C67
+ .string "EVER GRANDE CITY is still a long ways\n"
+ .string "away...$"
+
+Route128_Text_1C1C95:: @ 81C1C95
+ .string "My first victory seems to be far\n"
+ .string "away, too...$"
+
+Route128_Text_1C1CC3:: @ 81C1CC3
+ .string "My whole life has been about losing,\n"
+ .string "but I will never give up!$"
+
+Route128_Text_1C1D02:: @ 81C1D02
+ .string "I’m still feeling good. I’ll keep on\n"
+ .string "swimming to EVER GRANDE CITY.$"
+
+Route128_Text_1C1D45:: @ 81C1D45
+ .string "I’ve yet to taste my first victory...$"
+
+Route128_Text_1C1D6B:: @ 81C1D6B
+ .string "I’ll eventually reach EVER GRANDE CITY\n"
+ .string "where I can eventually win...$"
+
+Route128_Text_1C1DB0:: @ 81C1DB0
+ .string "You have to swim, cycle, and then run\n"
+ .string "a marathon in a triathlon.\p"
+ .string "It’s a grueling race that consists\n"
+ .string "of three events.$"
+
+Route128_Text_1C1E25:: @ 81C1E25
+ .string "A POKéMON battle is grueling, too...$"
+
+Route128_Text_1C1E4A:: @ 81C1E4A
+ .string "I have to ride a BIKE next, but...\n"
+ .string "I’m about to throw in the towel...$"
+
+Route128_Text_1C1E90:: @ 81C1E90
+ .string "A triathlon is long. But I guess the\n"
+ .string "road to become the POKéMON CHAMPION\l"
+ .string "is also a long and grueling one.$"
+
+Route128_Text_1C1EFA:: @ 81C1EFA
+ .string "A POKéMON battle really is harsh\n"
+ .string "and unforgiving...$"
+
+Route128_Text_1C1F2E:: @ 81C1F2E
+ .string "You should give serious thought to\n"
+ .string "challenges on VICTORY ROAD.$"
+
+Route128_Text_1C1F6D:: @ 81C1F6D
+ .string "We’ve been working so hard to mount\n"
+ .string "a POKéMON LEAGUE challenge...\p"
+ .string "We can’t afford to lose now!$"
+
+Route128_Text_1C1FCC:: @ 81C1FCC
+ .string "Oh!\n"
+ .string "How could this happen?!$"
+
+Route128_Text_1C1FE8:: @ 81C1FE8
+ .string "After all I’ve done to get here, I won’t\n"
+ .string "give up after one setback.$"
+
+Route128_Text_1C202C:: @ 81C202C
+ .string "There is no stronger TRAINER than I!$"
+
+Route128_Text_1C2051:: @ 81C2051
+ .string "This can’t be!$"
+
+Route128_Text_1C2060:: @ 81C2060
+ .string "There probably is no stronger TRAINER\n"
+ .string "than you!$"
+
+Route128_Text_1C2090:: @ 81C2090
+ .string "I want to visit EVER GRANDE, so I\n"
+ .string "caught myself a POKéMON that knows\l"
+ .string "the move WATERFALL to crest the falls.$"
+
+Route128_Text_1C20FC:: @ 81C20FC
+ .string "I’m crestfallen!$"
+
+Route128_Text_1C210D:: @ 81C210D
+ .string "Awww, phooey!\p"
+ .string "My POKéMON know WATERFALL, but\n"
+ .string "I don’t have the SOOTOPOLIS GYM BADGE!$"
+
+ .include "data/maps/text/Route129.s"
+ .include "data/maps/text/Route130.s"
+ .include "data/maps/text/Route131.s"
+ .include "data/maps/text/Route132.s"
+ .include "data/maps/text/Route133.s"
+ .include "data/maps/text/Route134.s"
.global gUnknown_081C33E6
gUnknown_081C33E6: @ 81C33E6
.incbin "baserom.gba", 0x001c33e6, 0x24
@@ -418,7 +14586,58 @@ gUnknown_081C3459: @ 81C3459
.global gUnknown_081C346A
gUnknown_081C346A: @ 81C346A
- .incbin "baserom.gba", 0x001c346a, 0xc75
+
+ .incbin "baserom.gba", 0x1c346a, 0x166
+
+ .include "data/maps/text/Route121_SafariZoneEntrance.s"
+ .include "data/maps/text/SafariZone_Southeast.s"
+ .include "data/maps/text/SafariZone_Southwest.s"
+ .include "data/maps/text/SafariZone_Northwest.s"
+ .include "data/maps/text/SafariZone_Northeast.s"
+SafariZone_Southeast_Text_1C3DCE:: @ 81C3DCE
+ .string "I put a {POKEBLOCK} on the {POKEBLOCK} FEEDER.\n"
+ .string "But it seems to have disappeared.\p"
+ .string "I guess POKéMON must have eaten it\n"
+ .string "without me noticing.$"
+
+Route121_SafariZoneEntrance_Text_1C3E4B:: @ 81C3E4B
+ .string "SAFARI ZONE TRAINER TIP!\p"
+ .string "Throw {POKEBLOCK}S at wild POKéMON to make\n"
+ .string "them less likely to flee.$"
+
+SafariZone_Southwest_Text_1C3EA3:: @ 81C3EA3
+ .string "“Relieve your tired feet.”\n"
+ .string "REST HOUSE$"
+
+ .include "data/maps/text/SafariZone_RestHouse.s"
+MauvilleCity_GameCorner_EventScript_1C407E:: @ 81C407E
+ checkitem ITEM_COIN_CASE, 1
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_1572B5
+ setvar 0x8004, 0
+ event_96 2
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_1C40DA
+ addvar 0x8004, 128
+ jump MauvilleCity_GameCorner_EventScript_1C40DA
+ end
+
+MauvilleCity_GameCorner_EventScript_1C40AC:: @ 81C40AC
+ checkitem ITEM_COIN_CASE, 1
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_1572B5
+ setvar 0x8004, 1
+ event_96 2
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_1C40DA
+ addvar 0x8004, 128
+ jump MauvilleCity_GameCorner_EventScript_1C40DA
+ end
+
+MauvilleCity_GameCorner_EventScript_1C40DA:: @ 81C40DA
+ special 162
+ waitstate
+ end
.global gUnknown_081C40DF
gUnknown_081C40DF: @ 81C40DF
@@ -466,7 +14685,22 @@ gUnknown_081C41F1: @ 81C41F1
.global gUnknown_081C4231
gUnknown_081C4231: @ 81C4231
- .incbin "baserom.gba", 0x001c4231, 0x2ef
+
+ .incbin "baserom.gba", 0x1c4231, 0x218
+
+Route101_Text_1C4449:: @ 81C4449
+ .string "PROF. BIRCH: Ah, {PLAYER}{KUN}!\p"
+ .string "Have you come to show me how your\n"
+ .string "POKéDEX is coming along?$"
+
+Route101_Text_1C449B:: @ 81C449B
+ .string "Hm? Oh, you haven’t caught enough\n"
+ .string "POKéMON to make it worthwhile.$"
+
+Route101_Text_1C44DC:: @ 81C44DC
+ .string "Hmhm...\p"
+ .string "So, you’ve seen {STR_VAR_1} POKéMON,\n"
+ .string "and you’ve caught {STR_VAR_2} POKéMON...$"
.global gUnknown_081C4520
gUnknown_081C4520: @ 81C4520
@@ -550,15 +14784,587 @@ gUnknown_081C4A91: @ 81C4A91
.global gUnknown_081C4ADA
gUnknown_081C4ADA: @ 81C4ADA
- .incbin "baserom.gba", 0x001c4ada, 0x20eb
+
+ .incbin "baserom.gba", 0x1c4ada, 0x2b
+
+Route101_Text_1C4B05:: @ 81C4B05
+ .string "Hmhm...\n"
+ .string "On a nationwide basis...\p"
+ .string "You’ve seen {STR_VAR_1} POKéMON,\n"
+ .string "and you’ve caught {STR_VAR_2} POKéMON...$"
+
+LilycoveCity_DepartmentStore_1F_Text_1C4B5E:: @ 81C4B5E
+ .string "This is the POKéMON LOTTERY CORNER.\p"
+ .string "All shoppers visiting our DEPARTMENT\n"
+ .string "STORE get to draw a POKéMON LOTO\l"
+ .string "TICKET.\p"
+ .string "If the LOTO TICKET’s number matches\n"
+ .string "the ID number of any of your POKéMON,\l"
+ .string "you will receive a fabulous gift.\p"
+ .string "Would you like to draw a POKéMON\n"
+ .string "LOTO TICKET?$"
+
+LilycoveCity_DepartmentStore_1F_Text_1C4C6A:: @ 81C4C6A
+ .string "Please come back tomorrow.$"
+
+LilycoveCity_DepartmentStore_1F_Text_1C4C85:: @ 81C4C85
+ .string "Please do visit us again.$"
+
+ .incbin "baserom.gba", 0x1c4c9f, 0x27
+
+LilycoveCity_DepartmentStore_1F_Text_1C4CC6:: @ 81C4CC6
+ .string "Please pick a LOTO TICKET.\n"
+ .string "...{PAUSE}{0x39} ...{PAUSE}{0x39} ...{PAUSE}{0x39}$"
+
+LilycoveCity_DepartmentStore_1F_Text_1C4CF6:: @ 81C4CF6
+ .string "The LOTO TICKET number is {STR_VAR_1}.\p"
+ .string "I need to run a check on this number\n"
+ .string "to see if it matches any of your\l"
+ .string "POKéMON’s ID numbers. Please wait.$"
+
+LilycoveCity_DepartmentStore_1F_Text_1C4D7D:: @ 81C4D7D
+ .string "Congratulations!\p"
+ .string "The ID number of your team’s\n"
+ .string "{STR_VAR_1} matches your LOTO TICKET’s\l"
+ .string "number!$"
+
+LilycoveCity_DepartmentStore_1F_Text_1C4DD1:: @ 81C4DD1
+ .string "Congratulations!\p"
+ .string "The ID number of your PC-boxed\n"
+ .string "{STR_VAR_1} matches your LOTO TICKET’s\l"
+ .string "number!$"
+
+LilycoveCity_DepartmentStore_1F_Text_1C4E27:: @ 81C4E27
+ .string "I’m sorry.\n"
+ .string "None of the numbers matched.$"
+
+LilycoveCity_DepartmentStore_1F_Text_1C4E4F:: @ 81C4E4F
+ .string "Two digits matched, so you win the\n"
+ .string "third prize!\l"
+ .string "You’ve won the {STR_VAR_1}!$"
+
+LilycoveCity_DepartmentStore_1F_Text_1C4E92:: @ 81C4E92
+ .string "Three digits matched, so you win the\n"
+ .string "second prize!\l"
+ .string "You’ve won the {STR_VAR_1}!$"
+
+LilycoveCity_DepartmentStore_1F_Text_1C4ED8:: @ 81C4ED8
+ .string "Four digits matched, so you win the\n"
+ .string "first prize!\l"
+ .string "You’ve won the {STR_VAR_1}!$"
+
+LilycoveCity_DepartmentStore_1F_Text_1C4F1C:: @ 81C4F1C
+ .string "Oh, my goodness, all five digits matched!\p"
+ .string "You’ve won the jackpot prize!\n"
+ .string "You’ve won the {STR_VAR_1}!$"
+
+LilycoveCity_DepartmentStore_1F_Text_1C4F77:: @ 81C4F77
+ .string "Oh?\n"
+ .string "You seem to have no room for this.\p"
+ .string "Please make room in your BAG and\n"
+ .string "let me know.$"
+
+LilycoveCity_DepartmentStore_1F_Text_1C4FCC:: @ 81C4FCC
+ .string "{PLAYER}?\n"
+ .string "Yes, I’ve been expecting you.\p"
+ .string "This is the prize we’ve been holding\n"
+ .string "for you.$"
+
+LilycoveCity_DepartmentStore_1F_Text_1C501C:: @ 81C501C
+ .string "Please do visit again.$"
+
+ .incbin "baserom.gba", 0x1c5033, 0xbf
+
+LilycoveCity_Harbor_Text_1C50F2:: @ 81C50F2
+ .string "The ferry to SLATEPORT is...\p"
+ .string "Oh?\n"
+ .string "That PASS...$"
+
+LilycoveCity_Harbor_Text_1C5120:: @ 81C5120
+ .string "Aye, mate, are you the one who brought\n"
+ .string "that mighty odd PASS?\p"
+ .string "I’ll tell you, you’re trying to reach a\n"
+ .string "tiny spit of an island far in the south.\p"
+ .string "There’s no telling what we’ll encounter\n"
+ .string "once we reach there, aye.\l"
+ .string "That shivers my timbers!\p"
+ .string "All aboard!$"
+
+ .include "data/maps/text/SouthernIsland_Exterior.s"
+ .include "data/maps/text/SouthernIsland_Interior.s"
+SouthernIsland_Exterior_Text_1C52FB:: @ 81C52FB
+ .string "“Those whose memories fade seek to\n"
+ .string "carve them in their hearts...”$"
+
+Underwater_SealedChamber_Braille_1C533D:: @ 81C533D
+ .byte 3
+ .byte 6
+ .byte 27
+ .byte 13
+ .byte 5
+ .byte 9
+ .braille "GO UP HERE.$"
+
+SealedChamber_OuterRoom_Braille_1C534F:: @ 81C534F
+ .byte 9
+ .byte 6
+ .byte 19
+ .byte 13
+ .byte 12
+ .byte 9
+ .braille "ABC$"
+
+SealedChamber_OuterRoom_Braille_1C5359:: @ 81C5359
+ .byte 9
+ .byte 6
+ .byte 19
+ .byte 13
+ .byte 12
+ .byte 9
+ .braille "GHI$"
+
+SealedChamber_OuterRoom_Braille_1C5363:: @ 81C5363
+ .byte 9
+ .byte 6
+ .byte 19
+ .byte 13
+ .byte 12
+ .byte 9
+ .braille "MNO$"
+
+SealedChamber_OuterRoom_Braille_1C536D:: @ 81C536D
+ .byte 9
+ .byte 6
+ .byte 19
+ .byte 13
+ .byte 12
+ .byte 9
+ .braille "TUV$"
+
+SealedChamber_OuterRoom_Braille_1C5377:: @ 81C5377
+ .byte 9
+ .byte 6
+ .byte 19
+ .byte 13
+ .byte 12
+ .byte 9
+ .braille "DEF$"
+
+SealedChamber_OuterRoom_Braille_1C5381:: @ 81C5381
+ .byte 9
+ .byte 6
+ .byte 19
+ .byte 13
+ .byte 12
+ .byte 9
+ .braille "JKL$"
+
+SealedChamber_OuterRoom_Braille_1C538B:: @ 81C538B
+ .byte 7
+ .byte 6
+ .byte 21
+ .byte 13
+ .byte 11
+ .byte 9
+ .braille "PQRS$"
+
+SealedChamber_OuterRoom_Braille_1C5396:: @ 81C5396
+ .byte 10
+ .byte 6
+ .byte 18
+ .byte 13
+ .byte 14
+ .byte 9
+ .braille ".$"
+
+SealedChamber_OuterRoom_Braille_1C539E:: @ 81C539E
+ .byte 7
+ .byte 6
+ .byte 21
+ .byte 13
+ .byte 11
+ .byte 9
+ .braille "WXYZ$"
+
+SealedChamber_OuterRoom_Braille_1C53A9:: @ 81C53A9
+ .byte 10
+ .byte 6
+ .byte 18
+ .byte 13
+ .byte 14
+ .byte 9
+ .braille ",$"
+
+SealedChamber_OuterRoom_Braille_1C53B1:: @ 81C53B1
+ .byte 5
+ .byte 6
+ .byte 25
+ .byte 13
+ .byte 7
+ .byte 9
+ .braille "DIG HERE.$"
+
+SealedChamber_InnerRoom_Braille_1C53C1:: @ 81C53C1
+ .byte 3
+ .byte 0
+ .byte 27
+ .byte 19
+ .byte 5
+ .byte 3
+ .braille "FIRST COMES\n"
+ .braille "RELICANTH.\n"
+ .braille "LAST COMES\n"
+ .braille "WAILORD.$"
+
+SealedChamber_InnerRoom_Braille_1C53F2:: @ 81C53F2
+ .byte 6
+ .byte 0
+ .byte 22
+ .byte 19
+ .byte 8
+ .byte 3
+ .braille "IN THIS\n"
+ .braille "CAVE WE\n"
+ .braille "HAVE\n"
+ .braille "LIVED.$"
+
+SealedChamber_InnerRoom_Braille_1C5414:: @ 81C5414
+ .byte 4
+ .byte 2
+ .byte 26
+ .byte 17
+ .byte 6
+ .byte 5
+ .braille "WE OWE ALL\n"
+ .braille "TO THE\n"
+ .braille "POKEMON.$"
+
+SealedChamber_InnerRoom_Braille_1C5435:: @ 81C5435
+ .byte 3
+ .byte 0
+ .byte 25
+ .byte 19
+ .byte 5
+ .byte 3
+ .braille "BUT, WE\n"
+ .braille "SEALED THE\n"
+ .braille "POKEMON\n"
+ .braille "AWAY.$"
+
+SealedChamber_InnerRoom_Braille_1C545C:: @ 81C545C
+ .byte 1
+ .byte 6
+ .byte 29
+ .byte 13
+ .byte 3
+ .byte 9
+ .braille "WE FEARED IT.$"
+
+SealedChamber_InnerRoom_Braille_1C5470:: @ 81C5470
+ .byte 4
+ .byte 0
+ .byte 26
+ .byte 19
+ .byte 6
+ .byte 3
+ .braille "THOSE WITH\n"
+ .braille "COURAGE,\n"
+ .braille "THOSE WITH\n"
+ .braille "HOPE.$"
+
+SealedChamber_InnerRoom_Braille_1C549B:: @ 81C549B
+ .byte 2
+ .byte 0
+ .byte 28
+ .byte 19
+ .byte 4
+ .byte 3
+ .braille "OPEN A DOOR.\n"
+ .braille "AN ETERNAL\n"
+ .braille "POKEMON\n"
+ .braille "WAITS.$"
+
+DesertRuins_Braille_1C54C8:: @ 81C54C8
+ .byte 0
+ .byte 0
+ .byte 29
+ .byte 19
+ .byte 2
+ .byte 3
+ .braille "RIGHT, RIGHT,\n"
+ .braille "DOWN, DOWN.\n"
+ .braille "THEN, USE\n"
+ .braille "STRENGTH.$"
+
+IslandCave_Braille_1C54FC:: @ 81C54FC
+ .byte 3
+ .byte 0
+ .byte 27
+ .byte 19
+ .byte 5
+ .byte 3
+ .braille "STOP AND\n"
+ .braille "WAIT. WAIT\n"
+ .braille "FOR TIME TO\n"
+ .braille "PASS TWICE.$"
+
+AncientTomb_Braille_1C552E:: @ 81C552E
+ .byte 0
+ .byte 0
+ .byte 29
+ .byte 19
+ .byte 1
+ .byte 3
+ .braille "WITH NEW TIME,\n"
+ .braille "HOPE AND LOVE,\n"
+ .braille "AIM TO THE SKY\n"
+ .braille "IN THE MIDDLE.$"
+
+PetalburgCity_Gym_Text_1C5570:: @ 81C5570
+ .string "DAD: Hi, {PLAYER}!\p"
+ .string "I just received a very rare BERRY.\n"
+ .string "I’d like you to have it.$"
+
+Route104_Text_1C55B9:: @ 81C55B9
+ .string "If you see BERRIES growing in loamy\n"
+ .string "soil, feel free to take them.\p"
+ .string "But make sure you plant a BERRY in the\n"
+ .string "same spot. That’s common courtesy.\p"
+ .string "Here, I’ll share this with you.$"
+
+Route104_Text_1C5665:: @ 81C5665
+ .string "The way you look, you must be a\n"
+ .string "TRAINER, no?\p"
+ .string "TRAINERS often make POKéMON hold\n"
+ .string "BERRIES.\p"
+ .string "It’s up to you whether to grow BERRIES\n"
+ .string "or use them.$"
+
+Route111_Text_1C56F0:: @ 81C56F0
+ .string "I watered my plants lots and lots!\n"
+ .string "A whole bunch of flowers bloomed!\p"
+ .string "And then a whole bunch of BERRIES\n"
+ .string "appeared!\p"
+ .string "Here you go!\n"
+ .string "You can have this!$"
+
+Route111_Text_1C5781:: @ 81C5781
+ .string "I’m going to try really hard and make\n"
+ .string "some RED {POKEBLOCK}S!\p"
+ .string "I hope you try hard, too!$"
+
+Route111_Text_1C57D2:: @ 81C57D2
+ .string "I wonder what color BERRIES I’ll look\n"
+ .string "for today?$"
+
+Route114_Text_1C5803:: @ 81C5803
+ .string "I’m gathering BERRIES so I can win a\n"
+ .string "POKéMON CONTEST.\p"
+ .string "If you’d like, I’ll share one with you.$"
+
+Route114_Text_1C5861:: @ 81C5861
+ .string "Good luck to you, too!$"
+
+Route114_Text_1C5878:: @ 81C5878
+ .string "What BERRIES should I plant today?\n"
+ .string "What color {POKEBLOCK}S should I make?\p"
+ .string "Fretting over stuff like that is fun\n"
+ .string "in its own way.$"
+
+Route120_Text_1C58F1:: @ 81C58F1
+ .string "Give the case a shake, and out pops\n"
+ .string "a {POKEBLOCK}...\p"
+ .string "And that {POKEBLOCK} is caught and eaten\n"
+ .string "by a POKéMON...\p"
+ .string "It’s an expression of love, isn’t it?$"
+
+Route120_Text_1C5979:: @ 81C5979
+ .string "Yes, yes.\n"
+ .string "You understand what I mean.\p"
+ .string "You should take this.$"
+
+Route120_Text_1C59B5:: @ 81C59B5
+ .string "Oh... But it is important to make your\n"
+ .string "own impressions, I guess...\p"
+ .string "You can have this.$"
+
+Route120_Text_1C5A0B:: @ 81C5A0B
+ .string "I think that BERRY is rare.\n"
+ .string "I hope you raise it with loving care.$"
+
+Route120_Text_1C5A4D:: @ 81C5A4D
+ .string "I’ll get more BERRIES from the\n"
+ .string "BERRY MASTER.$"
+
+LilycoveCity_Text_1C5A7A:: @ 81C5A7A
+ .string "When it gets right down to it...\p"
+ .string "The same way suits suit me perfectly,\n"
+ .string "a crisp breeze suits the sea.\p"
+ .string "And you, a BERRY suits you to a “T”...\p"
+ .string "Why should that be so?$"
+
+LilycoveCity_Text_1C5B1D:: @ 81C5B1D
+ .string "When it gets right down to it...\p"
+ .string "It’s because you’re a TRAINER!$"
+
+LilycoveCity_Text_1C5B5D:: @ 81C5B5D
+ .string "When it gets right down to it...\p"
+ .string "The way dignified simplicity suits me,\n"
+ .string "{POKEBLOCK}S perfectly suit POKéMON.$"
+
+ .include "data/maps/text/Route123_BerryMastersHouse.s"
+Route104_PrettyPetalFlowerShop_Text_1C5EC6:: @ 81C5EC6
+ .string "Hello!\p"
+ .string "This is the PRETTY PETAL flower shop.\n"
+ .string "Spreading flowers throughout the world!$"
+
+Route104_PrettyPetalFlowerShop_Text_1C5F1B:: @ 81C5F1B
+ .string "{PLAYER}{KUN}, would you like to learn about\n"
+ .string "BERRIES?$"
+
+Route104_PrettyPetalFlowerShop_Text_1C5F48:: @ 81C5F48
+ .string "Your name is?\p"
+ .string "{PLAYER}{KUN}.\n"
+ .string "That’s a nice name.\p"
+ .string "{PLAYER}{KUN}, would you like to learn about\n"
+ .string "BERRIES?$"
+
+Route104_PrettyPetalFlowerShop_Text_1C5F9D:: @ 81C5F9D
+ .string "BERRIES grow on trees that thrive\n"
+ .string "only in dark, loamy soil.\p"
+ .string "If you take some BERRIES, be sure to\n"
+ .string "plant one in the loamy soil again.\p"
+ .string "A planted BERRY will soon sprout,\n"
+ .string "grow into a plant, flower beautifully,\l"
+ .string "then grow BERRIES again.\p"
+ .string "I want to see the whole wide world\n"
+ .string "filled with beautiful flowers.\l"
+ .string "That’s my dream.\p"
+ .string "Please help me, {PLAYER}{KUN}. Plant BERRIES\n"
+ .string "and bring more flowers into the world.$"
+
+Route104_PrettyPetalFlowerShop_Text_1C6121:: @ 81C6121
+ .string "Flowers bring so much happiness to\n"
+ .string "people, don’t they?$"
+
+Route104_PrettyPetalFlowerShop_Text_1C6158:: @ 81C6158
+ .string "Hello!\p"
+ .string "The more attention you give to flowers,\n"
+ .string "the more beautifully they bloom.\p"
+ .string "You’ll like tending flowers. I’m sure\n"
+ .string "of it. You can have this.$"
+
+Route104_PrettyPetalFlowerShop_Text_1C61E8:: @ 81C61E8
+ .string "While BERRY plants are growing,\n"
+ .string "water them with the WAILMER PAIL.\p"
+ .string "Oh, another thing.\p"
+ .string "If you don’t pick BERRIES for a while,\n"
+ .string "they’ll drop off onto the ground.\l"
+ .string "But they’ll sprout again.\p"
+ .string "Isn’t that awesome?\n"
+ .string "It’s like they have the will to live.$"
+
+Route104_PrettyPetalFlowerShop_Text_1C62DA:: @ 81C62DA
+ .string "I’m trying to be like my big sisters.\n"
+ .string "I’m growing flowers, too!\p"
+ .string "Here you go! It’s for you!$"
+
+Route104_PrettyPetalFlowerShop_Text_1C6335:: @ 81C6335
+ .string "You can plant a BERRY and grow it big,\n"
+ .string "or you can make a POKéMON hold it.\p"
+ .string "But now they have a machine that mixes\n"
+ .string "up different BERRIES and makes candies\l"
+ .string "for POKéMON.\p"
+ .string "I want some candy, too.$"
+
+SootopolisCity_Text_1C63F2:: @ 81C63F2
+ .string "Hi, what’s your name?\p"
+ .string "... ... ... ... ... ... ... ... ...\n"
+ .string "Okay. That’s nice!\p"
+ .string "My name is KIRI.\p"
+ .string "My mommy and daddy named me that so\n"
+ .string "I would grow healthy and warmhearted.\l"
+ .string "That’s what they wished.\p"
+ .string "You can have one of these.$"
+
+SootopolisCity_Text_1C64D0:: @ 81C64D0
+ .string "KIRI will give you this BERRY, too!\n"
+ .string "I really like it lots!$"
+
+SootopolisCity_Text_1C650B:: @ 81C650B
+ .string "I wonder what kind of wish is included\n"
+ .string "in your name.$"
+
+SootopolisCity_Text_1C6540:: @ 81C6540
+ .string "Spring, summer, autumn, and winter.\p"
+ .string "If you’re born in springtime, do you like\n"
+ .string "the spring, and if you’re born in the\l"
+ .string "summer, do you like the summer?$"
+
+SootopolisCity_Text_1C65D4:: @ 81C65D4
+ .string "Then KIRI was born in the autumn,\n"
+ .string "so I love the autumn!\p"
+ .string "Which season do you like?$"
+
+SootopolisCity_Text_1C6626:: @ 81C6626
+ .string "Oh...\n"
+ .string "It doesn’t matter...\p"
+ .string "There’s so much that I want to know...$"
+
+ .include "data/maps/text/ShoalCave_LowTideEntranceRoom.s"
+ .include "data/maps/text/ShoalCave_LowTideInnerRoom.s"
+ShoalCave_LowTideLowerRoom_Text_1C6979:: @ 81C6979
+ .include "data/maps/text/ShoalCave_LowTideStairsRoom.s"
+ShoalCave_LowTideInnerRoom_Text_1C69B8:: @ 81C69B8
+ .string "There was a SHOAL SHELL here.\n"
+ .string "But, there’s nothing here now.$"
+
+ShoalCave_LowTideEntranceRoom_Text_1C69F5:: @ 81C69F5
+ .string "You don’t have space in your BAG\n"
+ .string "if I were to make it for you.\p"
+ .string "You should make room and come back\n"
+ .string "for a SHELL BELL.$"
+
+ .incbin "baserom.gba", 0x1c6a69, 0x14c
+
+GraniteCave_B1F_MapScript2_1C6BB5:: @ 81C6BB5
+MtPyre_2F_MapScript2_1C6BB5:: @ 81C6BB5
+SkyPillar_2F_MapScript2_1C6BB5:: @ 81C6BB5
+SkyPillar_4F_MapScript2_1C6BB5:: @ 81C6BB5
+ map_script_2 0x4022, 0, GraniteCave_B1F_EventScript_1C6BC5
+ .2byte 0
+
+GraniteCave_B1F_MapScript1_1C6BBF:: @ 81C6BBF
+MtPyre_2F_MapScript1_1C6BBF:: @ 81C6BBF
+SkyPillar_2F_MapScript1_1C6BBF:: @ 81C6BBF
+SkyPillar_4F_MapScript1_1C6BBF:: @ 81C6BBF
+ copyvar 0x4022, 0x1
+ end
.global gUnknown_081C6BC5
gUnknown_081C6BC5: @ 81C6BC5
- .incbin "baserom.gba", 0x001c6bc5, 0x19
+
+GraniteCave_B1F_EventScript_1C6BC5:: @ 81C6BC5
+ lockall
+ pause 20
+ move 255, GraniteCave_B1F_Movement_1C6BF7
+ waitmove 0
+ playsfx 43
+ pause 60
+ warphole UNDEFINED
+ waitstate
+ end
.global gUnknown_081C6BDE
gUnknown_081C6BDE: @ 81C6BDE
- .incbin "baserom.gba", 0x001c6bde, 0x24
+
+ .incbin "baserom.gba", 0x1c6bde, 0x19
+
+GraniteCave_B1F_Movement_1C6BF7:: @ 81C6BF7
+ step_54
+ step_end
+
+ .incbin "baserom.gba", 0x1c6bf9, 0x9
.global gUnknown_081C6C02
gUnknown_081C6C02: @ 81C6C02
@@ -574,11 +15380,18 @@ gUnknown_081C6CA6: @ 81C6CA6
.global gUnknown_081C6CE1
gUnknown_081C6CE1: @ 81C6CE1
- .incbin "baserom.gba", 0x001c6ce1, 0x24
+
+BattleTower_BattleRoom_Text_1C6CE1:: @ 81C6CE1
+ .string "SAVING...\n"
+ .string "DON’T TURN OFF THE POWER.$"
.global gUnknown_081C6D05
gUnknown_081C6D05: @ 81C6D05
- .incbin "baserom.gba", 0x001c6d05, 0x21
+
+BattleTower_BattleRoom_Text_1C6D05:: @ 81C6D05
+ .string "{PLAYER} saved the game.$"
+
+ .incbin "baserom.gba", 0x1c6d18, 0xe
.global gUnknown_081C6D26
gUnknown_081C6D26: @ 81C6D26
diff --git a/data/data2.s b/data/data2.s
index ed5b1ea4a..7cee632df 100644
--- a/data/data2.s
+++ b/data/data2.s
@@ -1953,16 +1953,1687 @@ gUnknown_082166D8: @ 82166D8
.include "data/tilesets/metatiles.s"
@ 8286CF4
- .incbin "baserom.gba", 0x286CF4, 0x7E224
-
+AbandonedShip_CaptainsOffice_Tileset:: @ 8286CF4
+AbandonedShip_Corridors_1F_Tileset:: @ 8286CF4
+AbandonedShip_Corridors_B1F_Tileset:: @ 8286CF4
+AbandonedShip_Deck_Tileset:: @ 8286CF4
+AbandonedShip_HiddenFloorCorridors_Tileset:: @ 8286CF4
+AbandonedShip_HiddenFloorRooms_Tileset:: @ 8286CF4
+AbandonedShip_Room_B1F_Tileset:: @ 8286CF4
+AbandonedShip_Rooms2_1F_Tileset:: @ 8286CF4
+AbandonedShip_Rooms2_B1F_Tileset:: @ 8286CF4
+AbandonedShip_Rooms_1F_Tileset:: @ 8286CF4
+AbandonedShip_Rooms_B1F_Tileset:: @ 8286CF4
+AbandonedShip_Underwater1_Tileset:: @ 8286CF4
+AbandonedShip_Underwater2_Tileset:: @ 8286CF4
+AncientTomb_Tileset:: @ 8286CF4
+AquaHideout_1F_Tileset:: @ 8286CF4
+AquaHideout_B1F_Tileset:: @ 8286CF4
+AquaHideout_B2F_Tileset:: @ 8286CF4
+BattleTower_Outside_Tileset:: @ 8286CF4
+CaveOfOrigin_1F_Tileset:: @ 8286CF4
+CaveOfOrigin_B1F_Tileset:: @ 8286CF4
+CaveOfOrigin_B2F_Tileset:: @ 8286CF4
+CaveOfOrigin_B3F_Tileset:: @ 8286CF4
+CaveOfOrigin_B4F_Tileset:: @ 8286CF4
+CaveOfOrigin_Entrance_Tileset:: @ 8286CF4
+DesertRuins_Tileset:: @ 8286CF4
+DewfordTown_Tileset:: @ 8286CF4
+EverGrandeCity_Tileset:: @ 8286CF4
+FallarborTown_Tileset:: @ 8286CF4
+FieryPath_Tileset:: @ 8286CF4
+FortreeCity_Tileset:: @ 8286CF4
+GraniteCave_1F_Tileset:: @ 8286CF4
+GraniteCave_B1F_Tileset:: @ 8286CF4
+GraniteCave_B2F_Tileset:: @ 8286CF4
+GraniteCave_StevensRoom_Tileset:: @ 8286CF4
+InsideOfTruck_Tileset:: @ 8286CF4
+IslandCave_Tileset:: @ 8286CF4
+JaggedPass_Tileset:: @ 8286CF4
+LavaridgeTown_Tileset:: @ 8286CF4
+LilycoveCity_EmptyMap_Tileset:: @ 8286CF4
+LilycoveCity_Tileset:: @ 8286CF4
+LinkContestRoom1_Tileset:: @ 8286CF4
+LinkContestRoom2_Tileset:: @ 8286CF4
+LinkContestRoom3_Tileset:: @ 8286CF4
+LinkContestRoom4_Tileset:: @ 8286CF4
+LinkContestRoom5_Tileset:: @ 8286CF4
+LinkContestRoom6_Tileset:: @ 8286CF4
+LittlerootTown_Tileset:: @ 8286CF4
+MagmaHideout_1F_Tileset:: @ 8286CF4
+MagmaHideout_B1F_Tileset:: @ 8286CF4
+MagmaHideout_B2F_Tileset:: @ 8286CF4
+MauvilleCity_BikeShop_Tileset:: @ 8286CF4
+MauvilleCity_Tileset:: @ 8286CF4
+MeteorFalls_1F_1R_Tileset:: @ 8286CF4
+MeteorFalls_1F_2R_Tileset:: @ 8286CF4
+MeteorFalls_B1F_1R_Tileset:: @ 8286CF4
+MeteorFalls_B1F_2R_Tileset:: @ 8286CF4
+MossdeepCity_SpaceCenter_1F_Tileset:: @ 8286CF4
+MossdeepCity_SpaceCenter_2F_Tileset:: @ 8286CF4
+MossdeepCity_Tileset:: @ 8286CF4
+MtChimney_Tileset:: @ 8286CF4
+MtPyre_1F_Tileset:: @ 8286CF4
+MtPyre_2F_Tileset:: @ 8286CF4
+MtPyre_3F_Tileset:: @ 8286CF4
+MtPyre_4F_Tileset:: @ 8286CF4
+MtPyre_5F_Tileset:: @ 8286CF4
+MtPyre_6F_Tileset:: @ 8286CF4
+MtPyre_Exterior_Tileset:: @ 8286CF4
+MtPyre_Summit_Tileset:: @ 8286CF4
+NewMauville_Entrance_Tileset:: @ 8286CF4
+NewMauville_Inside_Tileset:: @ 8286CF4
+OldaleTown_Tileset:: @ 8286CF4
+PacifidlogTown_Tileset:: @ 8286CF4
+PetalburgCity_Tileset:: @ 8286CF4
+PetalburgWoods_Tileset:: @ 8286CF4
+Route101_Tileset:: @ 8286CF4
+Route102_Tileset:: @ 8286CF4
+Route103_Tileset:: @ 8286CF4
+Route104_Prototype_Tileset:: @ 8286CF4
+Route104_Tileset:: @ 8286CF4
+Route105_Tileset:: @ 8286CF4
+Route106_Tileset:: @ 8286CF4
+Route107_Tileset:: @ 8286CF4
+Route108_Tileset:: @ 8286CF4
+Route109_Tileset:: @ 8286CF4
+Route110_Tileset:: @ 8286CF4
+Route111_Tileset:: @ 8286CF4
+Route112_CableCarStation_Tileset:: @ 8286CF4
+Route112_Tileset:: @ 8286CF4
+Route113_Tileset:: @ 8286CF4
+Route114_FossilManiacsTunnel_Tileset:: @ 8286CF4
+Route114_Tileset:: @ 8286CF4
+Route115_Tileset:: @ 8286CF4
+Route116_Tileset:: @ 8286CF4
+Route117_Tileset:: @ 8286CF4
+Route118_Tileset:: @ 8286CF4
+Route119_Tileset:: @ 8286CF4
+Route120_Tileset:: @ 8286CF4
+Route121_Tileset:: @ 8286CF4
+Route122_Tileset:: @ 8286CF4
+Route123_Tileset:: @ 8286CF4
+Route124_Tileset:: @ 8286CF4
+Route125_Tileset:: @ 8286CF4
+Route126_Tileset:: @ 8286CF4
+Route127_Tileset:: @ 8286CF4
+Route128_Tileset:: @ 8286CF4
+Route129_Tileset:: @ 8286CF4
+Route130_Tileset:: @ 8286CF4
+Route131_Tileset:: @ 8286CF4
+Route132_Tileset:: @ 8286CF4
+Route133_Tileset:: @ 8286CF4
+Route134_Tileset:: @ 8286CF4
+RustboroCity_DevonCorp_1F_Tileset:: @ 8286CF4
+RustboroCity_DevonCorp_2F_Tileset:: @ 8286CF4
+RustboroCity_DevonCorp_3F_Tileset:: @ 8286CF4
+RustboroCity_Tileset:: @ 8286CF4
+RusturfTunnel_Tileset:: @ 8286CF4
+SSTidalCorridor_Tileset:: @ 8286CF4
+SSTidalLowerDeck_Tileset:: @ 8286CF4
+SSTidalRooms_Tileset:: @ 8286CF4
+SafariZone_Northeast_Tileset:: @ 8286CF4
+SafariZone_Northwest_Tileset:: @ 8286CF4
+SafariZone_Southeast_Tileset:: @ 8286CF4
+SafariZone_Southwest_Tileset:: @ 8286CF4
+ScorchedSlab_Tileset:: @ 8286CF4
+SeafloorCavern_Entrance_Tileset:: @ 8286CF4
+SeafloorCavern_Room1_Tileset:: @ 8286CF4
+SeafloorCavern_Room2_Tileset:: @ 8286CF4
+SeafloorCavern_Room3_Tileset:: @ 8286CF4
+SeafloorCavern_Room4_Tileset:: @ 8286CF4
+SeafloorCavern_Room5_Tileset:: @ 8286CF4
+SeafloorCavern_Room6_Tileset:: @ 8286CF4
+SeafloorCavern_Room7_Tileset:: @ 8286CF4
+SeafloorCavern_Room8_Tileset:: @ 8286CF4
+SeafloorCavern_Room9_Tileset:: @ 8286CF4
+SealedChamber_InnerRoom_Tileset:: @ 8286CF4
+SealedChamber_OuterRoom_Tileset:: @ 8286CF4
+ShoalCave_HighTideEntranceRoom_Tileset:: @ 8286CF4
+ShoalCave_HighTideInnerRoom_Tileset:: @ 8286CF4
+ShoalCave_LowTideEntranceRoom_Tileset:: @ 8286CF4
+ShoalCave_LowTideIceRoom_Tileset:: @ 8286CF4
+ShoalCave_LowTideInnerRoom_Tileset:: @ 8286CF4
+ShoalCave_LowTideLowerRoom_Tileset:: @ 8286CF4
+ShoalCave_LowTideStairsRoom_Tileset:: @ 8286CF4
+SkyPillar_1F_Tileset:: @ 8286CF4
+SkyPillar_2F_Tileset:: @ 8286CF4
+SkyPillar_3F_Tileset:: @ 8286CF4
+SkyPillar_4F_Tileset:: @ 8286CF4
+SkyPillar_5F_Tileset:: @ 8286CF4
+SkyPillar_Entrance_Tileset:: @ 8286CF4
+SkyPillar_Outside_Tileset:: @ 8286CF4
+SkyPillar_Top_Tileset:: @ 8286CF4
+SlateportCity_Harbor_Tileset:: @ 8286CF4
+SlateportCity_SternsShipyard_1F_Tileset:: @ 8286CF4
+SlateportCity_SternsShipyard_2F_Tileset:: @ 8286CF4
+SlateportCity_Tileset:: @ 8286CF4
+SootopolisCity_Tileset:: @ 8286CF4
+SouthernIsland_Exterior_Tileset:: @ 8286CF4
+SouthernIsland_Interior_Tileset:: @ 8286CF4
+Underwater1_Tileset:: @ 8286CF4
+Underwater2_Tileset:: @ 8286CF4
+Underwater3_Tileset:: @ 8286CF4
+Underwater4_Tileset:: @ 8286CF4
+Underwater_Route134_Tileset:: @ 8286CF4
+Underwater_SeafloorCavern_Tileset:: @ 8286CF4
+Underwater_SealedChamber_Tileset:: @ 8286CF4
+Underwater_SootopolisCity_Tileset:: @ 8286CF4
+VerdanturfTown_Tileset:: @ 8286CF4
+VictoryRoad_1F_Tileset:: @ 8286CF4
+VictoryRoad_B1F_Tileset:: @ 8286CF4
+VictoryRoad_B2F_Tileset:: @ 8286CF4
+ .byte 1
+ .byte 0
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_General
+ .4byte gTilesetPalettes_General
+ .4byte gMetatiles_General
+ .4byte gMetatileAttributes_General
+ .4byte TilesetCB_General
+
+LittlerootTown_Tileset2:: @ 8286D0C
+OldaleTown_Tileset2:: @ 8286D0C
+PetalburgCity_Tileset2:: @ 8286D0C
+Route101_Tileset2:: @ 8286D0C
+Route102_Tileset2:: @ 8286D0C
+Route103_Tileset2:: @ 8286D0C
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_Petalburg
+ .4byte gTilesetPalettes_Petalburg
+ .4byte gMetatiles_Petalburg
+ .4byte gMetatileAttributes_Petalburg
+ .4byte TilesetCB_Petalburg
+
+PetalburgWoods_Tileset2:: @ 8286D24
+Route104_Prototype_Tileset2:: @ 8286D24
+Route104_Tileset2:: @ 8286D24
+Route116_Tileset2:: @ 8286D24
+RustboroCity_Tileset2:: @ 8286D24
+SouthernIsland_Exterior_Tileset2:: @ 8286D24
+SouthernIsland_Interior_Tileset2:: @ 8286D24
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_Rustboro
+ .4byte gTilesetPalettes_Rustboro
+ .4byte gMetatiles_Rustboro
+ .4byte gMetatileAttributes_Rustboro
+ .4byte TilesetCB_Rustboro
+
+BattleTower_Outside_Tileset2:: @ 8286D3C
+DewfordTown_Tileset2:: @ 8286D3C
+Route105_Tileset2:: @ 8286D3C
+Route106_Tileset2:: @ 8286D3C
+Route107_Tileset2:: @ 8286D3C
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_Dewford
+ .4byte gTilesetPalettes_Dewford
+ .4byte gMetatiles_Dewford
+ .4byte gMetatileAttributes_Dewford
+ .4byte TilesetCB_Dewford
+
+Route108_Tileset2:: @ 8286D54
+Route109_Tileset2:: @ 8286D54
+SlateportCity_Tileset2:: @ 8286D54
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_Slateport
+ .4byte gTilesetPalettes_Slateport
+ .4byte gMetatiles_Slateport
+ .4byte gMetatileAttributes_Slateport
+ .4byte TilesetCB_Slateport
+
+MauvilleCity_Tileset2:: @ 8286D6C
+Route110_Tileset2:: @ 8286D6C
+Route111_Tileset2:: @ 8286D6C
+Route117_Tileset2:: @ 8286D6C
+Route118_Tileset2:: @ 8286D6C
+VerdanturfTown_Tileset2:: @ 8286D6C
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_Mauville
+ .4byte gTilesetPalettes_Mauville
+ .4byte gMetatiles_Mauville
+ .4byte gMetatileAttributes_Mauville
+ .4byte TilesetCB_Mauville
+
+FieryPath_Tileset2:: @ 8286D84
+JaggedPass_Tileset2:: @ 8286D84
+LavaridgeTown_Tileset2:: @ 8286D84
+MtChimney_Tileset2:: @ 8286D84
+Route112_Tileset2:: @ 8286D84
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_Lavaridge
+ .4byte gTilesetPalettes_Lavaridge
+ .4byte gMetatiles_Lavaridge
+ .4byte gMetatileAttributes_Lavaridge
+ .4byte TilesetCB_Lavaridge
+
+FallarborTown_Tileset2:: @ 8286D9C
+Route113_Tileset2:: @ 8286D9C
+Route114_FossilManiacsTunnel_Tileset2:: @ 8286D9C
+Route114_Tileset2:: @ 8286D9C
+Route115_Tileset2:: @ 8286D9C
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_Fallarbor
+ .4byte gTilesetPalettes_Fallarbor
+ .4byte gMetatiles_Fallarbor
+ .4byte gMetatileAttributes_Fallarbor
+ .4byte TilesetCB_Fallarbor
+
+FortreeCity_Tileset2:: @ 8286DB4
+Route119_Tileset2:: @ 8286DB4
+Route120_Tileset2:: @ 8286DB4
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_Fortree
+ .4byte gTilesetPalettes_Fortree
+ .4byte gMetatiles_Fortree
+ .4byte gMetatileAttributes_Fortree
+ .4byte TilesetCB_Fortree
+
+LilycoveCity_Tileset2:: @ 8286DCC
+Route121_Tileset2:: @ 8286DCC
+Route122_Tileset2:: @ 8286DCC
+Route123_Tileset2:: @ 8286DCC
+SafariZone_Northeast_Tileset2:: @ 8286DCC
+SafariZone_Northwest_Tileset2:: @ 8286DCC
+SafariZone_Southeast_Tileset2:: @ 8286DCC
+SafariZone_Southwest_Tileset2:: @ 8286DCC
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_Lilycove
+ .4byte gTilesetPalettes_Lilycove
+ .4byte gMetatiles_Lilycove
+ .4byte gMetatileAttributes_Lilycove
+ .4byte TilesetCB_Lilycove
+
+MossdeepCity_Tileset2:: @ 8286DE4
+Route124_Tileset2:: @ 8286DE4
+Route125_Tileset2:: @ 8286DE4
+Route126_Tileset2:: @ 8286DE4
+Route127_Tileset2:: @ 8286DE4
+Route128_Tileset2:: @ 8286DE4
+Route129_Tileset2:: @ 8286DE4
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_Mossdeep
+ .4byte gTilesetPalettes_Mossdeep
+ .4byte gMetatiles_Mossdeep
+ .4byte gMetatileAttributes_Mossdeep
+ .4byte TilesetCB_Mossdeep
+
+EverGrandeCity_Tileset2:: @ 8286DFC
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_EverGrande
+ .4byte gTilesetPalettes_EverGrande
+ .4byte gMetatiles_EverGrande
+ .4byte gMetatileAttributes_EverGrande
+ .4byte TilesetCB_EverGrande
+
+PacifidlogTown_Tileset2:: @ 8286E14
+Route131_Tileset2:: @ 8286E14
+Route132_Tileset2:: @ 8286E14
+Route133_Tileset2:: @ 8286E14
+Route134_Tileset2:: @ 8286E14
+SeafloorCavern_Room6_Tileset2:: @ 8286E14
+SeafloorCavern_Room7_Tileset2:: @ 8286E14
+SkyPillar_1F_Tileset2:: @ 8286E14
+SkyPillar_2F_Tileset2:: @ 8286E14
+SkyPillar_3F_Tileset2:: @ 8286E14
+SkyPillar_4F_Tileset2:: @ 8286E14
+SkyPillar_5F_Tileset2:: @ 8286E14
+SkyPillar_Outside_Tileset2:: @ 8286E14
+SkyPillar_Top_Tileset2:: @ 8286E14
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_Pacifidlog
+ .4byte gTilesetPalettes_Pacifidlog
+ .4byte gMetatiles_Pacifidlog
+ .4byte gMetatileAttributes_Pacifidlog
+ .4byte TilesetCB_Pacifidlog
+
+SootopolisCity_Tileset2:: @ 8286E2C
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_Sootopolis
+ .4byte gTilesetPalettes_Sootopolis
+ .4byte gMetatiles_Sootopolis
+ .4byte gMetatileAttributes_Sootopolis
+ .4byte TilesetCB_Sootopolis
+
+BattleTower_BattleRoom_Tileset:: @ 8286E44
+BattleTower_Corridor_Tileset:: @ 8286E44
+BattleTower_Elevator_Tileset:: @ 8286E44
+BattleTower_Lobby_Tileset:: @ 8286E44
+DewfordTown_Gym_Tileset:: @ 8286E44
+DewfordTown_Hall_Tileset:: @ 8286E44
+DewfordTown_House1_Tileset:: @ 8286E44
+DewfordTown_House2_Tileset:: @ 8286E44
+DoubleBattleColosseum_Tileset:: @ 8286E44
+EverGrandeCity_ChampionsRoom_Tileset:: @ 8286E44
+EverGrandeCity_Corridor1_Tileset:: @ 8286E44
+EverGrandeCity_Corridor4_Tileset:: @ 8286E44
+EverGrandeCity_DrakesRoom_Tileset:: @ 8286E44
+EverGrandeCity_GlaciasRoom_Tileset:: @ 8286E44
+EverGrandeCity_HallOfFame_Tileset:: @ 8286E44
+EverGrandeCity_PhoebesRoom_Tileset:: @ 8286E44
+EverGrandeCity_PokemonLeague_Tileset:: @ 8286E44
+EverGrandeCity_SidneysRoom_Tileset:: @ 8286E44
+FallarborTown_ContestHall_Tileset:: @ 8286E44
+FallarborTown_ContestLobby_Tileset:: @ 8286E44
+FortreeCity_DecorationShop_Tileset:: @ 8286E44
+FortreeCity_Gym_Tileset:: @ 8286E44
+FortreeCity_House1_Tileset:: @ 8286E44
+FortreeCity_House2_Tileset:: @ 8286E44
+LavaridgeTown_Gym_1F_Tileset:: @ 8286E44
+LavaridgeTown_Gym_B1F_Tileset:: @ 8286E44
+LavaridgeTown_HerbShop_Tileset:: @ 8286E44
+LavaridgeTown_PokemonCenter_1F_Tileset:: @ 8286E44
+LilycoveCity_ContestHall_Tileset:: @ 8286E44
+LilycoveCity_ContestLobby_Tileset:: @ 8286E44
+LilycoveCity_CoveLilyMotel_1F_Tileset:: @ 8286E44
+LilycoveCity_CoveLilyMotel_2F_Tileset:: @ 8286E44
+LilycoveCity_DepartmentStoreElevator_Tileset:: @ 8286E44
+LilycoveCity_DepartmentStoreRooftop_Tileset:: @ 8286E44
+LilycoveCity_DepartmentStore_1F_Tileset:: @ 8286E44
+LilycoveCity_DepartmentStore_2F_Tileset:: @ 8286E44
+LilycoveCity_DepartmentStore_3F_Tileset:: @ 8286E44
+LilycoveCity_DepartmentStore_4F_Tileset:: @ 8286E44
+LilycoveCity_DepartmentStore_5F_Tileset:: @ 8286E44
+LilycoveCity_House2_Tileset:: @ 8286E44
+LilycoveCity_LilycoveMuseum_1F_Tileset:: @ 8286E44
+LilycoveCity_LilycoveMuseum_2F_Tileset:: @ 8286E44
+LilycoveCity_PokemonTrainerFanClub_Tileset:: @ 8286E44
+LittlerootTown_BrendansHouse_1F_Tileset:: @ 8286E44
+LittlerootTown_BrendansHouse_2F_Tileset:: @ 8286E44
+LittlerootTown_MaysHouse_1F_Tileset:: @ 8286E44
+LittlerootTown_MaysHouse_2F_Tileset:: @ 8286E44
+LittlerootTown_ProfessorBirchsLab_Tileset:: @ 8286E44
+MauvilleCity_GameCorner_Tileset:: @ 8286E44
+MauvilleCity_Gym_Tileset:: @ 8286E44
+MossdeepCity_GameCorner_1F_Tileset:: @ 8286E44
+MossdeepCity_GameCorner_B1F_Tileset:: @ 8286E44
+MossdeepCity_Gym_Tileset:: @ 8286E44
+MossdeepCity_StevensHouse_Tileset:: @ 8286E44
+OldaleTown_House1_Tileset:: @ 8286E44
+OldaleTown_House2_Tileset:: @ 8286E44
+OldaleTown_Mart_Tileset:: @ 8286E44
+OldaleTown_PokemonCenter_1F_Tileset:: @ 8286E44
+OldaleTown_PokemonCenter_2F_Tileset:: @ 8286E44
+PacifidlogTown_House1_Tileset:: @ 8286E44
+PacifidlogTown_House2_Tileset:: @ 8286E44
+PetalburgCity_Gym_Tileset:: @ 8286E44
+PetalburgCity_House2_Tileset:: @ 8286E44
+RecordCorner_Tileset:: @ 8286E44
+Route104_MrBrineysHouse_Tileset:: @ 8286E44
+Route104_PrettyPetalFlowerShop_Tileset:: @ 8286E44
+Route109_SeashoreHouse_Tileset:: @ 8286E44
+Route110_SeasideCyclingRoadSouthEntrance_Tileset:: @ 8286E44
+Route110_TrickHouseCorridor_Tileset:: @ 8286E44
+Route110_TrickHouseEnd_Tileset:: @ 8286E44
+Route110_TrickHouseEntrance_Tileset:: @ 8286E44
+Route110_TrickHousePuzzle1_Tileset:: @ 8286E44
+Route110_TrickHousePuzzle2_Tileset:: @ 8286E44
+Route110_TrickHousePuzzle3_Tileset:: @ 8286E44
+Route110_TrickHousePuzzle4_Tileset:: @ 8286E44
+Route110_TrickHousePuzzle5_Tileset:: @ 8286E44
+Route110_TrickHousePuzzle6_Tileset:: @ 8286E44
+Route110_TrickHousePuzzle7_Tileset:: @ 8286E44
+Route110_TrickHousePuzzle8_Tileset:: @ 8286E44
+Route114_FossilManiacsHouse_Tileset:: @ 8286E44
+Route114_LanettesHouse_Tileset:: @ 8286E44
+Route116_TunnelersRestHouse_Tileset:: @ 8286E44
+Route117_PokemonDayCare_Tileset:: @ 8286E44
+Route119_WeatherInstitute_1F_Tileset:: @ 8286E44
+Route119_WeatherInstitute_2F_Tileset:: @ 8286E44
+Route121_SafariZoneEntrance_Tileset:: @ 8286E44
+Route124_DivingTreasureHuntersHouse_Tileset:: @ 8286E44
+RustboroCity_CuttersHouse_Tileset:: @ 8286E44
+RustboroCity_Flat1_1F_Tileset:: @ 8286E44
+RustboroCity_Flat1_2F_Tileset:: @ 8286E44
+RustboroCity_Flat2_1F_Tileset:: @ 8286E44
+RustboroCity_Flat2_2F_Tileset:: @ 8286E44
+RustboroCity_Flat2_3F_Tileset:: @ 8286E44
+RustboroCity_Gym_Tileset:: @ 8286E44
+RustboroCity_House1_Tileset:: @ 8286E44
+RustboroCity_House2_Tileset:: @ 8286E44
+RustboroCity_PokemonSchool_Tileset:: @ 8286E44
+SafariZone_RestHouse_Tileset:: @ 8286E44
+SingleBattleColosseum_Tileset:: @ 8286E44
+SlateportCity_OceanicMuseum_1F_Tileset:: @ 8286E44
+SlateportCity_OceanicMuseum_2F_Tileset:: @ 8286E44
+SlateportCity_PokemonFanClub_Tileset:: @ 8286E44
+SootopolisCity_Gym_1F_Tileset:: @ 8286E44
+SootopolisCity_Gym_B1F_Tileset:: @ 8286E44
+SootopolisCity_House1_Tileset:: @ 8286E44
+SootopolisCity_House2_Tileset:: @ 8286E44
+SootopolisCity_House3_Tileset:: @ 8286E44
+SootopolisCity_House8_Tileset:: @ 8286E44
+TradeCenter_Tileset:: @ 8286E44
+UnknownMap_25_29_Tileset:: @ 8286E44
+UnknownMap_25_30_Tileset:: @ 8286E44
+UnknownMap_25_31_Tileset:: @ 8286E44
+UnknownMap_25_32_Tileset:: @ 8286E44
+UnknownMap_25_33_Tileset:: @ 8286E44
+UnknownMap_25_34_Tileset:: @ 8286E44
+VerdanturfTown_WandasHouse_Tileset:: @ 8286E44
+ .byte 1
+ .byte 0
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_Building
+ .4byte gTilesetPalettes_Building
+ .4byte gMetatiles_Building
+ .4byte gMetatileAttributes_Building
+ .4byte TilesetCB_Building
+
+LavaridgeTown_HerbShop_Tileset2:: @ 8286E5C
+LilycoveCity_DepartmentStoreRooftop_Tileset2:: @ 8286E5C
+LilycoveCity_DepartmentStore_1F_Tileset2:: @ 8286E5C
+LilycoveCity_DepartmentStore_2F_Tileset2:: @ 8286E5C
+LilycoveCity_DepartmentStore_3F_Tileset2:: @ 8286E5C
+LilycoveCity_DepartmentStore_4F_Tileset2:: @ 8286E5C
+LilycoveCity_DepartmentStore_5F_Tileset2:: @ 8286E5C
+OldaleTown_Mart_Tileset2:: @ 8286E5C
+Route110_SeasideCyclingRoadSouthEntrance_Tileset2:: @ 8286E5C
+Route121_SafariZoneEntrance_Tileset2:: @ 8286E5C
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_Shop
+ .4byte gTilesetPalettes_Shop
+ .4byte gMetatiles_Shop
+ .4byte gMetatileAttributes_Shop
+ .4byte 0x0
+
+EverGrandeCity_PokemonLeague_Tileset2:: @ 8286E74
+LavaridgeTown_PokemonCenter_1F_Tileset2:: @ 8286E74
+OldaleTown_PokemonCenter_1F_Tileset2:: @ 8286E74
+OldaleTown_PokemonCenter_2F_Tileset2:: @ 8286E74
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_PokemonCenter
+ .4byte gTilesetPalettes_PokemonCenter
+ .4byte gMetatiles_PokemonCenter
+ .4byte gMetatileAttributes_PokemonCenter
+ .4byte 0x0
+
+AncientTomb_Tileset2:: @ 8286E8C
+CaveOfOrigin_1F_Tileset2:: @ 8286E8C
+CaveOfOrigin_B1F_Tileset2:: @ 8286E8C
+CaveOfOrigin_B2F_Tileset2:: @ 8286E8C
+CaveOfOrigin_B3F_Tileset2:: @ 8286E8C
+CaveOfOrigin_B4F_Tileset2:: @ 8286E8C
+CaveOfOrigin_Entrance_Tileset2:: @ 8286E8C
+DesertRuins_Tileset2:: @ 8286E8C
+GraniteCave_1F_Tileset2:: @ 8286E8C
+GraniteCave_B1F_Tileset2:: @ 8286E8C
+GraniteCave_B2F_Tileset2:: @ 8286E8C
+GraniteCave_StevensRoom_Tileset2:: @ 8286E8C
+IslandCave_Tileset2:: @ 8286E8C
+Route130_Tileset2:: @ 8286E8C
+ScorchedSlab_Tileset2:: @ 8286E8C
+SeafloorCavern_Entrance_Tileset2:: @ 8286E8C
+SeafloorCavern_Room1_Tileset2:: @ 8286E8C
+SeafloorCavern_Room2_Tileset2:: @ 8286E8C
+SeafloorCavern_Room3_Tileset2:: @ 8286E8C
+SeafloorCavern_Room4_Tileset2:: @ 8286E8C
+SeafloorCavern_Room5_Tileset2:: @ 8286E8C
+SeafloorCavern_Room8_Tileset2:: @ 8286E8C
+SeafloorCavern_Room9_Tileset2:: @ 8286E8C
+SealedChamber_InnerRoom_Tileset2:: @ 8286E8C
+SealedChamber_OuterRoom_Tileset2:: @ 8286E8C
+ShoalCave_HighTideEntranceRoom_Tileset2:: @ 8286E8C
+ShoalCave_HighTideInnerRoom_Tileset2:: @ 8286E8C
+ShoalCave_LowTideEntranceRoom_Tileset2:: @ 8286E8C
+ShoalCave_LowTideIceRoom_Tileset2:: @ 8286E8C
+ShoalCave_LowTideInnerRoom_Tileset2:: @ 8286E8C
+ShoalCave_LowTideLowerRoom_Tileset2:: @ 8286E8C
+ShoalCave_LowTideStairsRoom_Tileset2:: @ 8286E8C
+SkyPillar_Entrance_Tileset2:: @ 8286E8C
+VictoryRoad_1F_Tileset2:: @ 8286E8C
+VictoryRoad_B1F_Tileset2:: @ 8286E8C
+VictoryRoad_B2F_Tileset2:: @ 8286E8C
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_Cave
+ .4byte gTilesetPalettes_Cave
+ .4byte gMetatiles_Cave
+ .4byte gMetatileAttributes_Cave
+ .4byte TilesetCB_Cave
+
+RustboroCity_PokemonSchool_Tileset2:: @ 8286EA4
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_PokemonSchool
+ .4byte gTilesetPalettes_PokemonSchool
+ .4byte gMetatiles_PokemonSchool
+ .4byte gMetatileAttributes_PokemonSchool
+ .4byte 0x0
+
+SlateportCity_PokemonFanClub_Tileset2:: @ 8286EBC
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_PokemonFanClub
+ .4byte gTilesetPalettes_PokemonFanClub
+ .4byte gMetatiles_PokemonFanClub
+ .4byte gMetatileAttributes_PokemonFanClub
+ .4byte 0x0
+
+ .incbin "baserom.gba", 0x286ed4, 0x18
+
+MeteorFalls_1F_1R_Tileset2:: @ 8286EEC
+MeteorFalls_1F_2R_Tileset2:: @ 8286EEC
+MeteorFalls_B1F_1R_Tileset2:: @ 8286EEC
+MeteorFalls_B1F_2R_Tileset2:: @ 8286EEC
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_MeteorFalls
+ .4byte gTilesetPalettes_MeteorFalls
+ .4byte gMetatiles_MeteorFalls
+ .4byte gMetatileAttributes_MeteorFalls
+ .4byte 0x0
+
+SlateportCity_OceanicMuseum_1F_Tileset2:: @ 8286F04
+SlateportCity_OceanicMuseum_2F_Tileset2:: @ 8286F04
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_OceanicMuseum
+ .4byte gTilesetPalettes_OceanicMuseum
+ .4byte gMetatiles_OceanicMuseum
+ .4byte gMetatileAttributes_OceanicMuseum
+ .4byte 0x0
+
+DoubleBattleColosseum_Tileset2:: @ 8286F1C
+EverGrandeCity_HallOfFame_Tileset2:: @ 8286F1C
+RecordCorner_Tileset2:: @ 8286F1C
+SingleBattleColosseum_Tileset2:: @ 8286F1C
+TradeCenter_Tileset2:: @ 8286F1C
+ .byte 0
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_CableClub
+ .4byte gTilesetPalettes_CableClub
+ .4byte gMetatiles_CableClub
+ .4byte gMetatileAttributes_CableClub
+ .4byte 0x0
+
+Route109_SeashoreHouse_Tileset2:: @ 8286F34
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_SeashoreHouse
+ .4byte gTilesetPalettes_SeashoreHouse
+ .4byte gMetatiles_SeashoreHouse
+ .4byte gMetatileAttributes_SeashoreHouse
+ .4byte 0x0
+
+Route104_PrettyPetalFlowerShop_Tileset2:: @ 8286F4C
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_PrettyPetalFlowerShop
+ .4byte gTilesetPalettes_PrettyPetalFlowerShop
+ .4byte gMetatiles_PrettyPetalFlowerShop
+ .4byte gMetatileAttributes_PrettyPetalFlowerShop
+ .4byte 0x0
+
+Route117_PokemonDayCare_Tileset2:: @ 8286F64
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_PokemonDayCare
+ .4byte gTilesetPalettes_PokemonDayCare
+ .4byte gMetatiles_PokemonDayCare
+ .4byte gMetatileAttributes_PokemonDayCare
+ .4byte 0x0
+
+AbandonedShip_CaptainsOffice_Tileset2:: @ 8286F7C
+AbandonedShip_Deck_Tileset2:: @ 8286F7C
+AquaHideout_1F_Tileset2:: @ 8286F7C
+AquaHideout_B1F_Tileset2:: @ 8286F7C
+AquaHideout_B2F_Tileset2:: @ 8286F7C
+LilycoveCity_EmptyMap_Tileset2:: @ 8286F7C
+MagmaHideout_1F_Tileset2:: @ 8286F7C
+MagmaHideout_B1F_Tileset2:: @ 8286F7C
+MagmaHideout_B2F_Tileset2:: @ 8286F7C
+MossdeepCity_SpaceCenter_1F_Tileset2:: @ 8286F7C
+MossdeepCity_SpaceCenter_2F_Tileset2:: @ 8286F7C
+MtPyre_1F_Tileset2:: @ 8286F7C
+MtPyre_2F_Tileset2:: @ 8286F7C
+MtPyre_3F_Tileset2:: @ 8286F7C
+MtPyre_4F_Tileset2:: @ 8286F7C
+MtPyre_5F_Tileset2:: @ 8286F7C
+MtPyre_6F_Tileset2:: @ 8286F7C
+MtPyre_Exterior_Tileset2:: @ 8286F7C
+MtPyre_Summit_Tileset2:: @ 8286F7C
+NewMauville_Entrance_Tileset2:: @ 8286F7C
+Route112_CableCarStation_Tileset2:: @ 8286F7C
+RustboroCity_DevonCorp_1F_Tileset2:: @ 8286F7C
+RustboroCity_DevonCorp_2F_Tileset2:: @ 8286F7C
+RustboroCity_DevonCorp_3F_Tileset2:: @ 8286F7C
+SlateportCity_Harbor_Tileset2:: @ 8286F7C
+SlateportCity_SternsShipyard_1F_Tileset2:: @ 8286F7C
+SlateportCity_SternsShipyard_2F_Tileset2:: @ 8286F7C
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_Facility
+ .4byte gTilesetPalettes_Facility
+ .4byte gMetatiles_Facility
+ .4byte gMetatileAttributes_Facility
+ .4byte 0x0
+
+MauvilleCity_BikeShop_Tileset2:: @ 8286F94
+NewMauville_Inside_Tileset2:: @ 8286F94
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_BikeShop
+ .4byte gTilesetPalettes_BikeShop
+ .4byte gMetatiles_BikeShop
+ .4byte gMetatileAttributes_BikeShop
+ .4byte TilesetCB_BikeShop
+
+RusturfTunnel_Tileset2:: @ 8286FAC
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_RusturfTunnel
+ .4byte gTilesetPalettes_RusturfTunnel
+ .4byte gMetatiles_RusturfTunnel
+ .4byte gMetatileAttributes_RusturfTunnel
+ .4byte 0x0
+
+SecretBase_BrownCave1_Tileset2:: @ 8286FC4
+SecretBase_BrownCave2_Tileset2:: @ 8286FC4
+SecretBase_BrownCave3_Tileset2:: @ 8286FC4
+SecretBase_BrownCave4_Tileset2:: @ 8286FC4
+ .byte 0
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_SecretBaseBrownCave
+ .4byte gTilesetPalettes_SecretBaseBrownCave
+ .4byte gMetatiles_SecretBaseSecondary
+ .4byte gMetatileAttributes_SecretBaseSecondary
+ .4byte 0x0
+
+SecretBase_Tree1_Tileset2:: @ 8286FDC
+SecretBase_Tree2_Tileset2:: @ 8286FDC
+SecretBase_Tree3_Tileset2:: @ 8286FDC
+SecretBase_Tree4_Tileset2:: @ 8286FDC
+ .byte 0
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_SecretBaseTree
+ .4byte gTilesetPalettes_SecretBaseTree
+ .4byte gMetatiles_SecretBaseSecondary
+ .4byte gMetatileAttributes_SecretBaseSecondary
+ .4byte 0x0
+
+SecretBase_Shrub1_Tileset2:: @ 8286FF4
+SecretBase_Shrub2_Tileset2:: @ 8286FF4
+SecretBase_Shrub3_Tileset2:: @ 8286FF4
+SecretBase_Shrub4_Tileset2:: @ 8286FF4
+ .byte 0
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_SecretBaseShrub
+ .4byte gTilesetPalettes_SecretBaseShrub
+ .4byte gMetatiles_SecretBaseSecondary
+ .4byte gMetatileAttributes_SecretBaseSecondary
+ .4byte 0x0
+
+SecretBase_BlueCave1_Tileset2:: @ 828700C
+SecretBase_BlueCave2_Tileset2:: @ 828700C
+SecretBase_BlueCave3_Tileset2:: @ 828700C
+SecretBase_BlueCave4_Tileset2:: @ 828700C
+ .byte 0
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_SecretBaseBlueCave
+ .4byte gTilesetPalettes_SecretBaseBlueCave
+ .4byte gMetatiles_SecretBaseSecondary
+ .4byte gMetatileAttributes_SecretBaseSecondary
+ .4byte 0x0
+
+SecretBase_YellowCave1_Tileset2:: @ 8287024
+SecretBase_YellowCave2_Tileset2:: @ 8287024
+SecretBase_YellowCave3_Tileset2:: @ 8287024
+SecretBase_YellowCave4_Tileset2:: @ 8287024
+ .byte 0
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_SecretBaseYellowCave
+ .4byte gTilesetPalettes_SecretBaseYellowCave
+ .4byte gMetatiles_SecretBaseSecondary
+ .4byte gMetatileAttributes_SecretBaseSecondary
+ .4byte 0x0
+
+SecretBase_RedCave1_Tileset2:: @ 828703C
+SecretBase_RedCave2_Tileset2:: @ 828703C
+SecretBase_RedCave3_Tileset2:: @ 828703C
+SecretBase_RedCave4_Tileset2:: @ 828703C
+ .byte 0
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_SecretBaseRedCave
+ .4byte gTilesetPalettes_SecretBaseRedCave
+ .4byte gMetatiles_SecretBaseSecondary
+ .4byte gMetatileAttributes_SecretBaseSecondary
+ .4byte 0x0
+
+InsideOfTruck_Tileset2:: @ 8287054
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_InsideOfTruck
+ .4byte gTilesetPalettes_InsideOfTruck
+ .4byte gMetatiles_InsideOfTruck
+ .4byte gMetatileAttributes_InsideOfTruck
+ .4byte 0x0
+
+ .incbin "baserom.gba", 0x28706c, 0x18
+
+FallarborTown_ContestHall_Tileset2:: @ 8287084
+FallarborTown_ContestLobby_Tileset2:: @ 8287084
+LilycoveCity_ContestHall_Tileset2:: @ 8287084
+LilycoveCity_ContestLobby_Tileset2:: @ 8287084
+LinkContestRoom1_Tileset2:: @ 8287084
+LinkContestRoom2_Tileset2:: @ 8287084
+LinkContestRoom3_Tileset2:: @ 8287084
+LinkContestRoom4_Tileset2:: @ 8287084
+LinkContestRoom5_Tileset2:: @ 8287084
+LinkContestRoom6_Tileset2:: @ 8287084
+UnknownMap_25_29_Tileset2:: @ 8287084
+UnknownMap_25_30_Tileset2:: @ 8287084
+UnknownMap_25_31_Tileset2:: @ 8287084
+UnknownMap_25_32_Tileset2:: @ 8287084
+UnknownMap_25_33_Tileset2:: @ 8287084
+UnknownMap_25_34_Tileset2:: @ 8287084
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_Contest
+ .4byte gTilesetPalettes_Contest
+ .4byte gMetatiles_Contest
+ .4byte gMetatileAttributes_Contest
+ .4byte 0x0
+
+LilycoveCity_LilycoveMuseum_1F_Tileset2:: @ 828709C
+LilycoveCity_LilycoveMuseum_2F_Tileset2:: @ 828709C
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_LilycoveMuseum
+ .4byte gTilesetPalettes_LilycoveMuseum
+ .4byte gMetatiles_LilycoveMuseum
+ .4byte gMetatileAttributes_LilycoveMuseum
+ .4byte 0x0
+
+LittlerootTown_BrendansHouse_1F_Tileset2:: @ 82870B4
+LittlerootTown_BrendansHouse_2F_Tileset2:: @ 82870B4
+LittlerootTown_MaysHouse_1F_Tileset2:: @ 82870B4
+LittlerootTown_MaysHouse_2F_Tileset2:: @ 82870B4
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_BrendansMaysHouse
+ .4byte gTilesetPalettes_BrendansMaysHouse
+ .4byte gMetatiles_BrendansMaysHouse
+ .4byte gMetatileAttributes_BrendansMaysHouse
+ .4byte 0x0
+
+LittlerootTown_ProfessorBirchsLab_Tileset2:: @ 82870CC
+Route114_LanettesHouse_Tileset2:: @ 82870CC
+Route119_WeatherInstitute_1F_Tileset2:: @ 82870CC
+Route119_WeatherInstitute_2F_Tileset2:: @ 82870CC
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_Lab
+ .4byte gTilesetPalettes_Lab
+ .4byte gMetatiles_Lab
+ .4byte gMetatileAttributes_Lab
+ .4byte 0x0
+
+Underwater1_Tileset2:: @ 82870E4
+Underwater2_Tileset2:: @ 82870E4
+Underwater3_Tileset2:: @ 82870E4
+Underwater4_Tileset2:: @ 82870E4
+Underwater_Route134_Tileset2:: @ 82870E4
+Underwater_SeafloorCavern_Tileset2:: @ 82870E4
+Underwater_SealedChamber_Tileset2:: @ 82870E4
+Underwater_SootopolisCity_Tileset2:: @ 82870E4
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_Underwater
+ .4byte gTilesetPalettes_Underwater
+ .4byte gMetatiles_Underwater
+ .4byte gMetatileAttributes_Underwater
+ .4byte TilesetCB_Underwater
+
+PetalburgCity_Gym_Tileset2:: @ 82870FC
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_PetalburgGym
+ .4byte gTilesetPalettes_PetalburgGym
+ .4byte gMetatiles_PetalburgGym
+ .4byte gMetatileAttributes_PetalburgGym
+ .4byte 0x0
+
+SootopolisCity_Gym_1F_Tileset2:: @ 8287114
+SootopolisCity_Gym_B1F_Tileset2:: @ 8287114
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_SootopolisGym
+ .4byte gTilesetPalettes_SootopolisGym
+ .4byte gMetatiles_SootopolisGym
+ .4byte gMetatileAttributes_SootopolisGym
+ .4byte TilesetCB_SootopolisGym
+
+DewfordTown_Hall_Tileset2:: @ 828712C
+DewfordTown_House1_Tileset2:: @ 828712C
+DewfordTown_House2_Tileset2:: @ 828712C
+FortreeCity_DecorationShop_Tileset2:: @ 828712C
+FortreeCity_House1_Tileset2:: @ 828712C
+FortreeCity_House2_Tileset2:: @ 828712C
+LilycoveCity_CoveLilyMotel_1F_Tileset2:: @ 828712C
+LilycoveCity_CoveLilyMotel_2F_Tileset2:: @ 828712C
+LilycoveCity_House2_Tileset2:: @ 828712C
+LilycoveCity_PokemonTrainerFanClub_Tileset2:: @ 828712C
+MossdeepCity_GameCorner_1F_Tileset2:: @ 828712C
+MossdeepCity_GameCorner_B1F_Tileset2:: @ 828712C
+MossdeepCity_StevensHouse_Tileset2:: @ 828712C
+OldaleTown_House1_Tileset2:: @ 828712C
+OldaleTown_House2_Tileset2:: @ 828712C
+PacifidlogTown_House1_Tileset2:: @ 828712C
+PacifidlogTown_House2_Tileset2:: @ 828712C
+PetalburgCity_House2_Tileset2:: @ 828712C
+Route104_MrBrineysHouse_Tileset2:: @ 828712C
+Route110_TrickHouseCorridor_Tileset2:: @ 828712C
+Route110_TrickHouseEnd_Tileset2:: @ 828712C
+Route110_TrickHouseEntrance_Tileset2:: @ 828712C
+Route114_FossilManiacsHouse_Tileset2:: @ 828712C
+Route116_TunnelersRestHouse_Tileset2:: @ 828712C
+Route124_DivingTreasureHuntersHouse_Tileset2:: @ 828712C
+RustboroCity_CuttersHouse_Tileset2:: @ 828712C
+RustboroCity_Flat1_1F_Tileset2:: @ 828712C
+RustboroCity_Flat1_2F_Tileset2:: @ 828712C
+RustboroCity_Flat2_1F_Tileset2:: @ 828712C
+RustboroCity_Flat2_2F_Tileset2:: @ 828712C
+RustboroCity_Flat2_3F_Tileset2:: @ 828712C
+RustboroCity_House1_Tileset2:: @ 828712C
+RustboroCity_House2_Tileset2:: @ 828712C
+SafariZone_RestHouse_Tileset2:: @ 828712C
+SootopolisCity_House1_Tileset2:: @ 828712C
+SootopolisCity_House2_Tileset2:: @ 828712C
+SootopolisCity_House3_Tileset2:: @ 828712C
+SootopolisCity_House8_Tileset2:: @ 828712C
+VerdanturfTown_WandasHouse_Tileset2:: @ 828712C
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_GenericBuilding
+ .4byte gTilesetPalettes_GenericBuilding
+ .4byte gMetatiles_GenericBuilding
+ .4byte gMetatileAttributes_GenericBuilding
+ .4byte 0x0
+
+MauvilleCity_GameCorner_Tileset2:: @ 8287144
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_MauvilleGameCorner
+ .4byte gTilesetPalettes_MauvilleGameCorner
+ .4byte gMetatiles_MauvilleGameCorner
+ .4byte gMetatileAttributes_MauvilleGameCorner
+ .4byte 0x0
+
+RustboroCity_Gym_Tileset2:: @ 828715C
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_RustboroGym
+ .4byte gTilesetPalettes_RustboroGym
+ .4byte gMetatiles_RustboroGym
+ .4byte gMetatileAttributes_RustboroGym
+ .4byte 0x0
+
+DewfordTown_Gym_Tileset2:: @ 8287174
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_DewfordGym
+ .4byte gTilesetPalettes_DewfordGym
+ .4byte gMetatiles_DewfordGym
+ .4byte gMetatileAttributes_DewfordGym
+ .4byte 0x0
+
+MauvilleCity_Gym_Tileset2:: @ 828718C
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_MauvilleGym
+ .4byte gTilesetPalettes_MauvilleGym
+ .4byte gMetatiles_MauvilleGym
+ .4byte gMetatileAttributes_MauvilleGym
+ .4byte TilesetCB_MauvilleGym
+
+LavaridgeTown_Gym_1F_Tileset2:: @ 82871A4
+LavaridgeTown_Gym_B1F_Tileset2:: @ 82871A4
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_LavaridgeGym
+ .4byte gTilesetPalettes_LavaridgeGym
+ .4byte gMetatiles_LavaridgeGym
+ .4byte gMetatileAttributes_LavaridgeGym
+ .4byte 0x0
+
+Route110_TrickHousePuzzle1_Tileset2:: @ 82871BC
+Route110_TrickHousePuzzle2_Tileset2:: @ 82871BC
+Route110_TrickHousePuzzle3_Tileset2:: @ 82871BC
+Route110_TrickHousePuzzle4_Tileset2:: @ 82871BC
+Route110_TrickHousePuzzle5_Tileset2:: @ 82871BC
+Route110_TrickHousePuzzle6_Tileset2:: @ 82871BC
+Route110_TrickHousePuzzle7_Tileset2:: @ 82871BC
+Route110_TrickHousePuzzle8_Tileset2:: @ 82871BC
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_TrickHousePuzzle
+ .4byte gTilesetPalettes_TrickHousePuzzle
+ .4byte gMetatiles_TrickHousePuzzle
+ .4byte gMetatileAttributes_TrickHousePuzzle
+ .4byte 0x0
+
+FortreeCity_Gym_Tileset2:: @ 82871D4
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_FortreeGym
+ .4byte gTilesetPalettes_FortreeGym
+ .4byte gMetatiles_FortreeGym
+ .4byte gMetatileAttributes_FortreeGym
+ .4byte 0x0
+
+MossdeepCity_Gym_Tileset2:: @ 82871EC
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_MossdeepGym
+ .4byte gTilesetPalettes_MossdeepGym
+ .4byte gMetatiles_MossdeepGym
+ .4byte gMetatileAttributes_MossdeepGym
+ .4byte 0x0
+
+AbandonedShip_Corridors_1F_Tileset2:: @ 8287204
+AbandonedShip_Corridors_B1F_Tileset2:: @ 8287204
+AbandonedShip_HiddenFloorCorridors_Tileset2:: @ 8287204
+AbandonedShip_HiddenFloorRooms_Tileset2:: @ 8287204
+AbandonedShip_Room_B1F_Tileset2:: @ 8287204
+AbandonedShip_Rooms2_1F_Tileset2:: @ 8287204
+AbandonedShip_Rooms2_B1F_Tileset2:: @ 8287204
+AbandonedShip_Rooms_1F_Tileset2:: @ 8287204
+AbandonedShip_Rooms_B1F_Tileset2:: @ 8287204
+AbandonedShip_Underwater1_Tileset2:: @ 8287204
+AbandonedShip_Underwater2_Tileset2:: @ 8287204
+SSTidalCorridor_Tileset2:: @ 8287204
+SSTidalLowerDeck_Tileset2:: @ 8287204
+SSTidalRooms_Tileset2:: @ 8287204
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_Ship
+ .4byte gTilesetPalettes_Ship
+ .4byte gMetatiles_Ship
+ .4byte gMetatileAttributes_Ship
+ .4byte 0x0
+
+SecretBase_BlueCave1_Tileset:: @ 828721C
+SecretBase_BlueCave2_Tileset:: @ 828721C
+SecretBase_BlueCave3_Tileset:: @ 828721C
+SecretBase_BlueCave4_Tileset:: @ 828721C
+SecretBase_BrownCave1_Tileset:: @ 828721C
+SecretBase_BrownCave2_Tileset:: @ 828721C
+SecretBase_BrownCave3_Tileset:: @ 828721C
+SecretBase_BrownCave4_Tileset:: @ 828721C
+SecretBase_RedCave1_Tileset:: @ 828721C
+SecretBase_RedCave2_Tileset:: @ 828721C
+SecretBase_RedCave3_Tileset:: @ 828721C
+SecretBase_RedCave4_Tileset:: @ 828721C
+SecretBase_Shrub1_Tileset:: @ 828721C
+SecretBase_Shrub2_Tileset:: @ 828721C
+SecretBase_Shrub3_Tileset:: @ 828721C
+SecretBase_Shrub4_Tileset:: @ 828721C
+SecretBase_Tree1_Tileset:: @ 828721C
+SecretBase_Tree2_Tileset:: @ 828721C
+SecretBase_Tree3_Tileset:: @ 828721C
+SecretBase_Tree4_Tileset:: @ 828721C
+SecretBase_YellowCave1_Tileset:: @ 828721C
+SecretBase_YellowCave2_Tileset:: @ 828721C
+SecretBase_YellowCave3_Tileset:: @ 828721C
+SecretBase_YellowCave4_Tileset:: @ 828721C
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_SecretBase
+ .4byte gTilesetPalettes_SecretBase
+ .4byte gMetatiles_SecretBasePrimary
+ .4byte gMetatileAttributes_SecretBasePrimary
+ .4byte 0x0
+
+EverGrandeCity_ChampionsRoom_Tileset2:: @ 8287234
+EverGrandeCity_Corridor1_Tileset2:: @ 8287234
+EverGrandeCity_Corridor4_Tileset2:: @ 8287234
+EverGrandeCity_DrakesRoom_Tileset2:: @ 8287234
+EverGrandeCity_GlaciasRoom_Tileset2:: @ 8287234
+EverGrandeCity_PhoebesRoom_Tileset2:: @ 8287234
+EverGrandeCity_SidneysRoom_Tileset2:: @ 8287234
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_EliteFour
+ .4byte gTilesetPalettes_EliteFour
+ .4byte gMetatiles_EliteFour
+ .4byte gMetatileAttributes_EliteFour
+ .4byte TilesetCB_EliteFour
+
+BattleTower_BattleRoom_Tileset2:: @ 828724C
+BattleTower_Corridor_Tileset2:: @ 828724C
+BattleTower_Elevator_Tileset2:: @ 828724C
+BattleTower_Lobby_Tileset2:: @ 828724C
+LilycoveCity_DepartmentStoreElevator_Tileset2:: @ 828724C
+ .byte 1
+ .byte 1
+ .byte 0
+ .byte 0
+ .4byte gTilesetTiles_BattleTower
+ .4byte gTilesetPalettes_BattleTower
+ .4byte gMetatiles_BattleTower
+ .4byte gMetatileAttributes_BattleTower
+ .4byte 0x0
+
+ .include "data/maps/_assets.s"
.global gUnknown_08304F18
gUnknown_08304F18: @ 8304F18
- .incbin "baserom.gba", 0x00304f18, 0x3670
+ .incbin "baserom.gba", 0x304f18, 0x530
+
+ .include "data/maps/PetalburgCity/header.s"
+ .include "data/maps/SlateportCity/header.s"
+ .include "data/maps/MauvilleCity/header.s"
+ .include "data/maps/RustboroCity/header.s"
+ .include "data/maps/FortreeCity/header.s"
+ .include "data/maps/LilycoveCity/header.s"
+ .include "data/maps/MossdeepCity/header.s"
+ .include "data/maps/SootopolisCity/header.s"
+ .include "data/maps/EverGrandeCity/header.s"
+ .include "data/maps/LittlerootTown/header.s"
+ .include "data/maps/OldaleTown/header.s"
+ .include "data/maps/DewfordTown/header.s"
+ .include "data/maps/LavaridgeTown/header.s"
+ .include "data/maps/FallarborTown/header.s"
+ .include "data/maps/VerdanturfTown/header.s"
+ .include "data/maps/PacifidlogTown/header.s"
+ .include "data/maps/Route101/header.s"
+ .include "data/maps/Route102/header.s"
+ .include "data/maps/Route103/header.s"
+ .include "data/maps/Route104/header.s"
+ .include "data/maps/Route105/header.s"
+ .include "data/maps/Route106/header.s"
+ .include "data/maps/Route107/header.s"
+ .include "data/maps/Route108/header.s"
+ .include "data/maps/Route109/header.s"
+ .include "data/maps/Route110/header.s"
+ .include "data/maps/Route111/header.s"
+ .include "data/maps/Route112/header.s"
+ .include "data/maps/Route113/header.s"
+ .include "data/maps/Route114/header.s"
+ .include "data/maps/Route115/header.s"
+ .include "data/maps/Route116/header.s"
+ .include "data/maps/Route117/header.s"
+ .include "data/maps/Route118/header.s"
+ .include "data/maps/Route119/header.s"
+ .include "data/maps/Route120/header.s"
+ .include "data/maps/Route121/header.s"
+ .include "data/maps/Route122/header.s"
+ .include "data/maps/Route123/header.s"
+ .include "data/maps/Route124/header.s"
+ .include "data/maps/Route125/header.s"
+ .include "data/maps/Route126/header.s"
+ .include "data/maps/Route127/header.s"
+ .include "data/maps/Route128/header.s"
+ .include "data/maps/Route129/header.s"
+ .include "data/maps/Route130/header.s"
+ .include "data/maps/Route131/header.s"
+ .include "data/maps/Route132/header.s"
+ .include "data/maps/Route133/header.s"
+ .include "data/maps/Route134/header.s"
+ .include "data/maps/Underwater1/header.s"
+ .include "data/maps/Underwater2/header.s"
+ .include "data/maps/Underwater3/header.s"
+ .include "data/maps/Underwater4/header.s"
+ .include "data/maps/LittlerootTown_BrendansHouse_1F/header.s"
+ .include "data/maps/LittlerootTown_BrendansHouse_2F/header.s"
+ .include "data/maps/LittlerootTown_MaysHouse_1F/header.s"
+ .include "data/maps/LittlerootTown_MaysHouse_2F/header.s"
+ .include "data/maps/LittlerootTown_ProfessorBirchsLab/header.s"
+ .include "data/maps/OldaleTown_House1/header.s"
+ .include "data/maps/OldaleTown_House2/header.s"
+ .include "data/maps/OldaleTown_PokemonCenter_1F/header.s"
+ .include "data/maps/OldaleTown_PokemonCenter_2F/header.s"
+ .include "data/maps/OldaleTown_Mart/header.s"
+ .include "data/maps/DewfordTown_House1/header.s"
+ .include "data/maps/DewfordTown_PokemonCenter_1F/header.s"
+ .include "data/maps/DewfordTown_PokemonCenter_2F/header.s"
+ .include "data/maps/DewfordTown_Gym/header.s"
+ .include "data/maps/DewfordTown_Hall/header.s"
+ .include "data/maps/DewfordTown_House2/header.s"
+ .include "data/maps/LavaridgeTown_HerbShop/header.s"
+ .include "data/maps/LavaridgeTown_Gym_1F/header.s"
+ .include "data/maps/LavaridgeTown_Gym_B1F/header.s"
+ .include "data/maps/LavaridgeTown_House/header.s"
+ .include "data/maps/LavaridgeTown_Mart/header.s"
+ .include "data/maps/LavaridgeTown_PokemonCenter_1F/header.s"
+ .include "data/maps/LavaridgeTown_PokemonCenter_2F/header.s"
+ .include "data/maps/FallarborTown_Mart/header.s"
+ .include "data/maps/FallarborTown_ContestLobby/header.s"
+ .include "data/maps/FallarborTown_ContestHall/header.s"
+ .include "data/maps/FallarborTown_PokemonCenter_1F/header.s"
+ .include "data/maps/FallarborTown_PokemonCenter_2F/header.s"
+ .include "data/maps/FallarborTown_House1/header.s"
+ .include "data/maps/FallarborTown_House2/header.s"
+ .include "data/maps/VerdanturfTown_ContestLobby/header.s"
+ .include "data/maps/VerdanturfTown_ContestHall/header.s"
+ .include "data/maps/VerdanturfTown_Mart/header.s"
+ .include "data/maps/VerdanturfTown_PokemonCenter_1F/header.s"
+ .include "data/maps/VerdanturfTown_PokemonCenter_2F/header.s"
+ .include "data/maps/VerdanturfTown_WandasHouse/header.s"
+ .include "data/maps/VerdanturfTown_FriendshipRatersHouse/header.s"
+ .include "data/maps/VerdanturfTown_House/header.s"
+ .include "data/maps/PacifidlogTown_PokemonCenter_1F/header.s"
+ .include "data/maps/PacifidlogTown_PokemonCenter_2F/header.s"
+ .include "data/maps/PacifidlogTown_House1/header.s"
+ .include "data/maps/PacifidlogTown_House2/header.s"
+ .include "data/maps/PacifidlogTown_House3/header.s"
+ .include "data/maps/PacifidlogTown_House4/header.s"
+ .include "data/maps/PacifidlogTown_House5/header.s"
+ .include "data/maps/PetalburgCity_WallysHouse/header.s"
+ .include "data/maps/PetalburgCity_Gym/header.s"
+ .include "data/maps/PetalburgCity_House1/header.s"
+ .include "data/maps/PetalburgCity_House2/header.s"
+ .include "data/maps/PetalburgCity_PokemonCenter_1F/header.s"
+ .include "data/maps/PetalburgCity_PokemonCenter_2F/header.s"
+ .include "data/maps/PetalburgCity_Mart/header.s"
+ .include "data/maps/SlateportCity_SternsShipyard_1F/header.s"
+ .include "data/maps/SlateportCity_SternsShipyard_2F/header.s"
+ .include "data/maps/SlateportCity_ContestLobby/header.s"
+ .include "data/maps/SlateportCity_ContestHall/header.s"
+ .include "data/maps/SlateportCity_House1/header.s"
+ .include "data/maps/SlateportCity_PokemonFanClub/header.s"
+ .include "data/maps/SlateportCity_OceanicMuseum_1F/header.s"
+ .include "data/maps/SlateportCity_OceanicMuseum_2F/header.s"
+ .include "data/maps/SlateportCity_Harbor/header.s"
+ .include "data/maps/SlateportCity_House2/header.s"
+ .include "data/maps/SlateportCity_PokemonCenter_1F/header.s"
+ .include "data/maps/SlateportCity_PokemonCenter_2F/header.s"
+ .include "data/maps/SlateportCity_Mart/header.s"
+ .include "data/maps/MauvilleCity_Gym/header.s"
+ .include "data/maps/MauvilleCity_BikeShop/header.s"
+ .include "data/maps/MauvilleCity_House1/header.s"
+ .include "data/maps/MauvilleCity_GameCorner/header.s"
+ .include "data/maps/MauvilleCity_House2/header.s"
+ .include "data/maps/MauvilleCity_PokemonCenter_1F/header.s"
+ .include "data/maps/MauvilleCity_PokemonCenter_2F/header.s"
+ .include "data/maps/MauvilleCity_Mart/header.s"
+ .include "data/maps/RustboroCity_DevonCorp_1F/header.s"
+ .include "data/maps/RustboroCity_DevonCorp_2F/header.s"
+ .include "data/maps/RustboroCity_DevonCorp_3F/header.s"
+ .include "data/maps/RustboroCity_Gym/header.s"
+ .include "data/maps/RustboroCity_PokemonSchool/header.s"
+ .include "data/maps/RustboroCity_PokemonCenter_1F/header.s"
+ .include "data/maps/RustboroCity_PokemonCenter_2F/header.s"
+ .include "data/maps/RustboroCity_Mart/header.s"
+ .include "data/maps/RustboroCity_Flat1_1F/header.s"
+ .include "data/maps/RustboroCity_Flat1_2F/header.s"
+ .include "data/maps/RustboroCity_House1/header.s"
+ .include "data/maps/RustboroCity_CuttersHouse/header.s"
+ .include "data/maps/RustboroCity_House2/header.s"
+ .include "data/maps/RustboroCity_Flat2_1F/header.s"
+ .include "data/maps/RustboroCity_Flat2_2F/header.s"
+ .include "data/maps/RustboroCity_Flat2_3F/header.s"
+ .include "data/maps/RustboroCity_House3/header.s"
+ .include "data/maps/FortreeCity_House1/header.s"
+ .include "data/maps/FortreeCity_Gym/header.s"
+ .include "data/maps/FortreeCity_PokemonCenter_1F/header.s"
+ .include "data/maps/FortreeCity_PokemonCenter_2F/header.s"
+ .include "data/maps/FortreeCity_Mart/header.s"
+ .include "data/maps/FortreeCity_House2/header.s"
+ .include "data/maps/FortreeCity_House3/header.s"
+ .include "data/maps/FortreeCity_House4/header.s"
+ .include "data/maps/FortreeCity_House5/header.s"
+ .include "data/maps/FortreeCity_DecorationShop/header.s"
+ .include "data/maps/LilycoveCity_CoveLilyMotel_1F/header.s"
+ .include "data/maps/LilycoveCity_CoveLilyMotel_2F/header.s"
+ .include "data/maps/LilycoveCity_LilycoveMuseum_1F/header.s"
+ .include "data/maps/LilycoveCity_LilycoveMuseum_2F/header.s"
+ .include "data/maps/LilycoveCity_ContestLobby/header.s"
+ .include "data/maps/LilycoveCity_ContestHall/header.s"
+ .include "data/maps/LilycoveCity_PokemonCenter_1F/header.s"
+ .include "data/maps/LilycoveCity_PokemonCenter_2F/header.s"
+ .include "data/maps/LilycoveCity_UnusedMart/header.s"
+ .include "data/maps/LilycoveCity_PokemonTrainerFanClub/header.s"
+ .include "data/maps/LilycoveCity_Harbor/header.s"
+ .include "data/maps/LilycoveCity_EmptyMap/header.s"
+ .include "data/maps/LilycoveCity_MoveDeletersHouse/header.s"
+ .include "data/maps/LilycoveCity_House1/header.s"
+ .include "data/maps/LilycoveCity_House2/header.s"
+ .include "data/maps/LilycoveCity_House3/header.s"
+ .include "data/maps/LilycoveCity_House4/header.s"
+ .include "data/maps/LilycoveCity_DepartmentStore_1F/header.s"
+ .include "data/maps/LilycoveCity_DepartmentStore_2F/header.s"
+ .include "data/maps/LilycoveCity_DepartmentStore_3F/header.s"
+ .include "data/maps/LilycoveCity_DepartmentStore_4F/header.s"
+ .include "data/maps/LilycoveCity_DepartmentStore_5F/header.s"
+ .include "data/maps/LilycoveCity_DepartmentStoreRooftop/header.s"
+ .include "data/maps/LilycoveCity_DepartmentStoreElevator/header.s"
+ .include "data/maps/MossdeepCity_Gym/header.s"
+ .include "data/maps/MossdeepCity_House1/header.s"
+ .include "data/maps/MossdeepCity_House2/header.s"
+ .include "data/maps/MossdeepCity_PokemonCenter_1F/header.s"
+ .include "data/maps/MossdeepCity_PokemonCenter_2F/header.s"
+ .include "data/maps/MossdeepCity_Mart/header.s"
+ .include "data/maps/MossdeepCity_House3/header.s"
+ .include "data/maps/MossdeepCity_StevensHouse/header.s"
+ .include "data/maps/MossdeepCity_House4/header.s"
+ .include "data/maps/MossdeepCity_SpaceCenter_1F/header.s"
+ .include "data/maps/MossdeepCity_SpaceCenter_2F/header.s"
+ .include "data/maps/MossdeepCity_GameCorner_1F/header.s"
+ .include "data/maps/MossdeepCity_GameCorner_B1F/header.s"
+ .include "data/maps/SootopolisCity_Gym_1F/header.s"
+ .include "data/maps/SootopolisCity_Gym_B1F/header.s"
+ .include "data/maps/SootopolisCity_PokemonCenter_1F/header.s"
+ .include "data/maps/SootopolisCity_PokemonCenter_2F/header.s"
+ .include "data/maps/SootopolisCity_Mart/header.s"
+ .include "data/maps/SootopolisCity_House1/header.s"
+ .include "data/maps/SootopolisCity_House2/header.s"
+ .include "data/maps/SootopolisCity_House3/header.s"
+ .include "data/maps/SootopolisCity_House4/header.s"
+ .include "data/maps/SootopolisCity_House5/header.s"
+ .include "data/maps/SootopolisCity_House6/header.s"
+ .include "data/maps/SootopolisCity_House7/header.s"
+ .include "data/maps/SootopolisCity_House8/header.s"
+ .include "data/maps/EverGrandeCity_SidneysRoom/header.s"
+ .include "data/maps/EverGrandeCity_PhoebesRoom/header.s"
+ .include "data/maps/EverGrandeCity_GlaciasRoom/header.s"
+ .include "data/maps/EverGrandeCity_DrakesRoom/header.s"
+ .include "data/maps/EverGrandeCity_ChampionsRoom/header.s"
+ .include "data/maps/EverGrandeCity_Corridor1/header.s"
+ .include "data/maps/EverGrandeCity_Corridor2/header.s"
+ .include "data/maps/EverGrandeCity_Corridor3/header.s"
+ .include "data/maps/EverGrandeCity_Corridor4/header.s"
+ .include "data/maps/EverGrandeCity_Corridor5/header.s"
+ .include "data/maps/EverGrandeCity_PokemonLeague/header.s"
+ .include "data/maps/EverGrandeCity_HallOfFame/header.s"
+ .include "data/maps/EverGrandeCity_PokemonCenter_1F/header.s"
+ .include "data/maps/EverGrandeCity_PokemonCenter_2F/header.s"
+ .include "data/maps/Route104_MrBrineysHouse/header.s"
+ .include "data/maps/Route104_PrettyPetalFlowerShop/header.s"
+ .include "data/maps/Route111_WinstrateFamilysHouse/header.s"
+ .include "data/maps/Route111_OldLadysRestStop/header.s"
+ .include "data/maps/Route112_CableCarStation/header.s"
+ .include "data/maps/MtChimney_CableCarStation/header.s"
+ .include "data/maps/Route114_FossilManiacsHouse/header.s"
+ .include "data/maps/Route114_FossilManiacsTunnel/header.s"
+ .include "data/maps/Route114_LanettesHouse/header.s"
+ .include "data/maps/Route116_TunnelersRestHouse/header.s"
+ .include "data/maps/Route117_PokemonDayCare/header.s"
+ .include "data/maps/Route121_SafariZoneEntrance/header.s"
+ .include "data/maps/MeteorFalls_1F_1R/header.s"
+ .include "data/maps/MeteorFalls_1F_2R/header.s"
+ .include "data/maps/MeteorFalls_B1F_1R/header.s"
+ .include "data/maps/MeteorFalls_B1F_2R/header.s"
+ .include "data/maps/RusturfTunnel/header.s"
+ .include "data/maps/Underwater_SootopolisCity/header.s"
+ .include "data/maps/DesertRuins/header.s"
+ .include "data/maps/GraniteCave_1F/header.s"
+ .include "data/maps/GraniteCave_B1F/header.s"
+ .include "data/maps/GraniteCave_B2F/header.s"
+ .include "data/maps/GraniteCave_StevensRoom/header.s"
+ .include "data/maps/PetalburgWoods/header.s"
+ .include "data/maps/MtChimney/header.s"
+ .include "data/maps/JaggedPass/header.s"
+ .include "data/maps/FieryPath/header.s"
+ .include "data/maps/MtPyre_1F/header.s"
+ .include "data/maps/MtPyre_2F/header.s"
+ .include "data/maps/MtPyre_3F/header.s"
+ .include "data/maps/MtPyre_4F/header.s"
+ .include "data/maps/MtPyre_5F/header.s"
+ .include "data/maps/MtPyre_6F/header.s"
+ .include "data/maps/MtPyre_Exterior/header.s"
+ .include "data/maps/MtPyre_Summit/header.s"
+ .include "data/maps/AquaHideout_1F/header.s"
+ .include "data/maps/AquaHideout_B1F/header.s"
+ .include "data/maps/AquaHideout_B2F/header.s"
+ .include "data/maps/Underwater_SeafloorCavern/header.s"
+ .include "data/maps/SeafloorCavern_Entrance/header.s"
+ .include "data/maps/SeafloorCavern_Room1/header.s"
+ .include "data/maps/SeafloorCavern_Room2/header.s"
+ .include "data/maps/SeafloorCavern_Room3/header.s"
+ .include "data/maps/SeafloorCavern_Room4/header.s"
+ .include "data/maps/SeafloorCavern_Room5/header.s"
+ .include "data/maps/SeafloorCavern_Room6/header.s"
+ .include "data/maps/SeafloorCavern_Room7/header.s"
+ .include "data/maps/SeafloorCavern_Room8/header.s"
+ .include "data/maps/SeafloorCavern_Room9/header.s"
+ .include "data/maps/CaveOfOrigin_Entrance/header.s"
+ .include "data/maps/CaveOfOrigin_1F/header.s"
+ .include "data/maps/CaveOfOrigin_B1F/header.s"
+ .include "data/maps/CaveOfOrigin_B2F/header.s"
+ .include "data/maps/CaveOfOrigin_B3F/header.s"
+ .include "data/maps/CaveOfOrigin_B4F/header.s"
+ .include "data/maps/VictoryRoad_1F/header.s"
+ .include "data/maps/VictoryRoad_B1F/header.s"
+ .include "data/maps/VictoryRoad_B2F/header.s"
+ .include "data/maps/ShoalCave_LowTideEntranceRoom/header.s"
+ .include "data/maps/ShoalCave_LowTideInnerRoom/header.s"
+ .include "data/maps/ShoalCave_LowTideStairsRoom/header.s"
+ .include "data/maps/ShoalCave_LowTideLowerRoom/header.s"
+ .include "data/maps/ShoalCave_HighTideEntranceRoom/header.s"
+ .include "data/maps/ShoalCave_HighTideInnerRoom/header.s"
+ .include "data/maps/NewMauville_Entrance/header.s"
+ .include "data/maps/NewMauville_Inside/header.s"
+ .include "data/maps/AbandonedShip_Deck/header.s"
+ .include "data/maps/AbandonedShip_Corridors_1F/header.s"
+ .include "data/maps/AbandonedShip_Rooms_1F/header.s"
+ .include "data/maps/AbandonedShip_Corridors_B1F/header.s"
+ .include "data/maps/AbandonedShip_Rooms_B1F/header.s"
+ .include "data/maps/AbandonedShip_Rooms2_B1F/header.s"
+ .include "data/maps/AbandonedShip_Underwater1/header.s"
+ .include "data/maps/AbandonedShip_Room_B1F/header.s"
+ .include "data/maps/AbandonedShip_Rooms2_1F/header.s"
+ .include "data/maps/AbandonedShip_CaptainsOffice/header.s"
+ .include "data/maps/AbandonedShip_Underwater2/header.s"
+ .include "data/maps/AbandonedShip_HiddenFloorCorridors/header.s"
+ .include "data/maps/AbandonedShip_HiddenFloorRooms/header.s"
+ .include "data/maps/IslandCave/header.s"
+ .include "data/maps/AncientTomb/header.s"
+ .include "data/maps/Underwater_Route134/header.s"
+ .include "data/maps/Underwater_SealedChamber/header.s"
+ .include "data/maps/SealedChamber_OuterRoom/header.s"
+ .include "data/maps/SealedChamber_InnerRoom/header.s"
+ .include "data/maps/ScorchedSlab/header.s"
+ .include "data/maps/MagmaHideout_1F/header.s"
+ .include "data/maps/MagmaHideout_B1F/header.s"
+ .include "data/maps/MagmaHideout_B2F/header.s"
+ .include "data/maps/SkyPillar_Entrance/header.s"
+ .include "data/maps/SkyPillar_Outside/header.s"
+ .include "data/maps/SkyPillar_1F/header.s"
+ .include "data/maps/SkyPillar_2F/header.s"
+ .include "data/maps/SkyPillar_3F/header.s"
+ .include "data/maps/SkyPillar_4F/header.s"
+ .include "data/maps/ShoalCave_LowTideIceRoom/header.s"
+ .include "data/maps/SkyPillar_5F/header.s"
+ .include "data/maps/SkyPillar_Top/header.s"
+ .include "data/maps/SecretBase_RedCave1/header.s"
+ .include "data/maps/SecretBase_BrownCave1/header.s"
+ .include "data/maps/SecretBase_BlueCave1/header.s"
+ .include "data/maps/SecretBase_YellowCave1/header.s"
+ .include "data/maps/SecretBase_Tree1/header.s"
+ .include "data/maps/SecretBase_Shrub1/header.s"
+ .include "data/maps/SecretBase_RedCave2/header.s"
+ .include "data/maps/SecretBase_BrownCave2/header.s"
+ .include "data/maps/SecretBase_BlueCave2/header.s"
+ .include "data/maps/SecretBase_YellowCave2/header.s"
+ .include "data/maps/SecretBase_Tree2/header.s"
+ .include "data/maps/SecretBase_Shrub2/header.s"
+ .include "data/maps/SecretBase_RedCave3/header.s"
+ .include "data/maps/SecretBase_BrownCave3/header.s"
+ .include "data/maps/SecretBase_BlueCave3/header.s"
+ .include "data/maps/SecretBase_YellowCave3/header.s"
+ .include "data/maps/SecretBase_Tree3/header.s"
+ .include "data/maps/SecretBase_Shrub3/header.s"
+ .include "data/maps/SecretBase_RedCave4/header.s"
+ .include "data/maps/SecretBase_BrownCave4/header.s"
+ .include "data/maps/SecretBase_BlueCave4/header.s"
+ .include "data/maps/SecretBase_YellowCave4/header.s"
+ .include "data/maps/SecretBase_Tree4/header.s"
+ .include "data/maps/SecretBase_Shrub4/header.s"
+ .include "data/maps/SingleBattleColosseum/header.s"
+ .include "data/maps/TradeCenter/header.s"
+ .include "data/maps/RecordCorner/header.s"
+ .include "data/maps/DoubleBattleColosseum/header.s"
+ .include "data/maps/LinkContestRoom1/header.s"
+ .include "data/maps/UnknownMap_25_29/header.s"
+ .include "data/maps/UnknownMap_25_30/header.s"
+ .include "data/maps/UnknownMap_25_31/header.s"
+ .include "data/maps/UnknownMap_25_32/header.s"
+ .include "data/maps/UnknownMap_25_33/header.s"
+ .include "data/maps/UnknownMap_25_34/header.s"
+ .include "data/maps/LinkContestRoom2/header.s"
+ .include "data/maps/LinkContestRoom3/header.s"
+ .include "data/maps/LinkContestRoom4/header.s"
+ .include "data/maps/LinkContestRoom5/header.s"
+ .include "data/maps/LinkContestRoom6/header.s"
+ .include "data/maps/InsideOfTruck/header.s"
+ .include "data/maps/SSTidalCorridor/header.s"
+ .include "data/maps/SSTidalLowerDeck/header.s"
+ .include "data/maps/SSTidalRooms/header.s"
+ .include "data/maps/SafariZone_Northwest/header.s"
+ .include "data/maps/SafariZone_Northeast/header.s"
+ .include "data/maps/SafariZone_Southwest/header.s"
+ .include "data/maps/SafariZone_Southeast/header.s"
+ .include "data/maps/BattleTower_Outside/header.s"
+ .include "data/maps/BattleTower_Lobby/header.s"
+ .include "data/maps/BattleTower_Elevator/header.s"
+ .include "data/maps/BattleTower_Corridor/header.s"
+ .include "data/maps/BattleTower_BattleRoom/header.s"
+ .include "data/maps/SouthernIsland_Exterior/header.s"
+ .include "data/maps/SouthernIsland_Interior/header.s"
+ .include "data/maps/SafariZone_RestHouse/header.s"
+ .include "data/maps/Route104_Prototype/header.s"
+ .include "data/maps/Route104_PrototypePrettyPetalFlowerShop/header.s"
+ .include "data/maps/Route109_SeashoreHouse/header.s"
+ .include "data/maps/Route110_TrickHouseEntrance/header.s"
+ .include "data/maps/Route110_TrickHouseEnd/header.s"
+ .include "data/maps/Route110_TrickHouseCorridor/header.s"
+ .include "data/maps/Route110_TrickHousePuzzle1/header.s"
+ .include "data/maps/Route110_TrickHousePuzzle2/header.s"
+ .include "data/maps/Route110_TrickHousePuzzle3/header.s"
+ .include "data/maps/Route110_TrickHousePuzzle4/header.s"
+ .include "data/maps/Route110_TrickHousePuzzle5/header.s"
+ .include "data/maps/Route110_TrickHousePuzzle6/header.s"
+ .include "data/maps/Route110_TrickHousePuzzle7/header.s"
+ .include "data/maps/Route110_TrickHousePuzzle8/header.s"
+ .include "data/maps/Route110_SeasideCyclingRoadSouthEntrance/header.s"
+ .include "data/maps/Route110_SeasideCyclingRoadNorthEntrance/header.s"
+ .include "data/maps/Route113_GlassWorkshop/header.s"
+ .include "data/maps/Route123_BerryMastersHouse/header.s"
+ .include "data/maps/Route119_WeatherInstitute_1F/header.s"
+ .include "data/maps/Route119_WeatherInstitute_2F/header.s"
+ .include "data/maps/Route119_House/header.s"
+ .include "data/maps/Route124_DivingTreasureHuntersHouse/header.s"
+ .include "data/maps/_groups.s"
.global gUnknown_08308588
gUnknown_08308588: @ 8308588
- .incbin "baserom.gba", 0x00308588, 0x8a0
+gMapGroups:: @ 8308588
+ .4byte gMapGroup0
+ .4byte gMapGroup1
+ .4byte gMapGroup2
+ .4byte gMapGroup3
+ .4byte gMapGroup4
+ .4byte gMapGroup5
+ .4byte gMapGroup6
+ .4byte gMapGroup7
+ .4byte gMapGroup8
+ .4byte gMapGroup9
+ .4byte gMapGroup10
+ .4byte gMapGroup11
+ .4byte gMapGroup12
+ .4byte gMapGroup13
+ .4byte gMapGroup14
+ .4byte gMapGroup15
+ .4byte gMapGroup16
+ .4byte gMapGroup17
+ .4byte gMapGroup18
+ .4byte gMapGroup19
+ .4byte gMapGroup20
+ .4byte gMapGroup21
+ .4byte gMapGroup22
+ .4byte gMapGroup23
+ .4byte gMapGroup24
+ .4byte gMapGroup25
+ .4byte gMapGroup26
+ .4byte gMapGroup27
+ .4byte gMapGroup28
+ .4byte gMapGroup29
+ .4byte gMapGroup30
+ .4byte gMapGroup31
+ .4byte gMapGroup32
+ .4byte gMapGroup33
+
+ .include "data/maps/LittlerootTown/connections.s"
+ .include "data/maps/OldaleTown/connections.s"
+ .include "data/maps/DewfordTown/connections.s"
+ .include "data/maps/LavaridgeTown/connections.s"
+ .include "data/maps/FallarborTown/connections.s"
+ .include "data/maps/VerdanturfTown/connections.s"
+ .include "data/maps/PacifidlogTown/connections.s"
+ .include "data/maps/PetalburgCity/connections.s"
+ .include "data/maps/SlateportCity/connections.s"
+ .include "data/maps/MauvilleCity/connections.s"
+ .include "data/maps/RustboroCity/connections.s"
+ .include "data/maps/FortreeCity/connections.s"
+ .include "data/maps/LilycoveCity/connections.s"
+ .include "data/maps/MossdeepCity/connections.s"
+ .include "data/maps/EverGrandeCity/connections.s"
+ .include "data/maps/Route101/connections.s"
+ .include "data/maps/Route102/connections.s"
+ .include "data/maps/Route103/connections.s"
+ .include "data/maps/Route104/connections.s"
+ .include "data/maps/Route105/connections.s"
+ .include "data/maps/Route106/connections.s"
+ .include "data/maps/Route107/connections.s"
+ .include "data/maps/Route108/connections.s"
+ .include "data/maps/Route109/connections.s"
+ .include "data/maps/Route110/connections.s"
+ .include "data/maps/Route111/connections.s"
+ .include "data/maps/Route112/connections.s"
+ .include "data/maps/Route113/connections.s"
+ .include "data/maps/Route114/connections.s"
+ .include "data/maps/Route115/connections.s"
+ .include "data/maps/Route116/connections.s"
+ .include "data/maps/Route117/connections.s"
+ .include "data/maps/Route118/connections.s"
+ .include "data/maps/Route119/connections.s"
+ .include "data/maps/Route120/connections.s"
+ .include "data/maps/Route121/connections.s"
+ .include "data/maps/Route122/connections.s"
+ .include "data/maps/Route123/connections.s"
+ .include "data/maps/Route124/connections.s"
+ .include "data/maps/Route125/connections.s"
+ .include "data/maps/Route126/connections.s"
+ .include "data/maps/Route127/connections.s"
+ .include "data/maps/Route128/connections.s"
+ .include "data/maps/Route129/connections.s"
+ .include "data/maps/Route130/connections.s"
+ .include "data/maps/Route131/connections.s"
+ .include "data/maps/Route132/connections.s"
+ .include "data/maps/Route133/connections.s"
+ .include "data/maps/Route134/connections.s"
+ .include "data/maps/Underwater1/connections.s"
+ .include "data/maps/Underwater2/connections.s"
+ .include "data/maps/Underwater3/connections.s"
+ .include "data/maps/Underwater4/connections.s"
+ .include "data/maps/SafariZone_Northwest/connections.s"
+ .include "data/maps/SafariZone_Northeast/connections.s"
+ .include "data/maps/SafariZone_Southwest/connections.s"
+ .include "data/maps/SafariZone_Southeast/connections.s"
.global gUnknown_08308E28
gUnknown_08308E28: @ 8308E28
.incbin "baserom.gba", 0x00308e28, 0x4
@@ -4580,7 +6251,416 @@ gUnknown_0837F5B0: @ 837F5B0
.global gUnknown_0837F5E0
gUnknown_0837F5E0: @ 837F5E0
- .incbin "baserom.gba", 0x0037f5e0, 0x13bf8
+
+ .incbin "baserom.gba", 0x37f5e0, 0x10
+
+ .include "data/maps/events/PetalburgCity.s"
+ .include "data/maps/events/SlateportCity.s"
+ .include "data/maps/events/MauvilleCity.s"
+ .include "data/maps/events/RustboroCity.s"
+ .include "data/maps/events/FortreeCity.s"
+ .include "data/maps/events/LilycoveCity.s"
+ .include "data/maps/events/MossdeepCity.s"
+ .include "data/maps/events/SootopolisCity.s"
+ .include "data/maps/events/EverGrandeCity.s"
+ .include "data/maps/events/LittlerootTown.s"
+ .include "data/maps/events/OldaleTown.s"
+ .include "data/maps/events/DewfordTown.s"
+ .include "data/maps/events/LavaridgeTown.s"
+ .include "data/maps/events/FallarborTown.s"
+ .include "data/maps/events/VerdanturfTown.s"
+ .include "data/maps/events/PacifidlogTown.s"
+ .include "data/maps/events/Route101.s"
+ .include "data/maps/events/Route102.s"
+ .include "data/maps/events/Route103.s"
+ .include "data/maps/events/Route104.s"
+ .include "data/maps/events/Route105.s"
+ .include "data/maps/events/Route106.s"
+ .include "data/maps/events/Route107.s"
+ .include "data/maps/events/Route108.s"
+ .include "data/maps/events/Route109.s"
+ .include "data/maps/events/Route110.s"
+ .include "data/maps/events/Route111.s"
+ .include "data/maps/events/Route112.s"
+ .include "data/maps/events/Route113.s"
+ .include "data/maps/events/Route114.s"
+ .include "data/maps/events/Route115.s"
+ .include "data/maps/events/Route116.s"
+ .include "data/maps/events/Route117.s"
+ .include "data/maps/events/Route118.s"
+ .include "data/maps/events/Route119.s"
+ .include "data/maps/events/Route120.s"
+ .include "data/maps/events/Route121.s"
+ .include "data/maps/events/Route122.s"
+ .include "data/maps/events/Route123.s"
+ .include "data/maps/events/Route124.s"
+ .include "data/maps/events/Route125.s"
+ .include "data/maps/events/Route126.s"
+ .include "data/maps/events/Route127.s"
+ .include "data/maps/events/Route128.s"
+ .include "data/maps/events/Route129.s"
+ .include "data/maps/events/Route130.s"
+ .include "data/maps/events/Route131.s"
+ .include "data/maps/events/Route132.s"
+ .include "data/maps/events/Route133.s"
+ .include "data/maps/events/Route134.s"
+ .include "data/maps/events/Underwater1.s"
+ .include "data/maps/events/Underwater2.s"
+ .include "data/maps/events/Underwater3.s"
+ .include "data/maps/events/Underwater4.s"
+ .include "data/maps/events/LittlerootTown_BrendansHouse_1F.s"
+ .include "data/maps/events/LittlerootTown_BrendansHouse_2F.s"
+ .include "data/maps/events/LittlerootTown_MaysHouse_1F.s"
+ .include "data/maps/events/LittlerootTown_MaysHouse_2F.s"
+ .include "data/maps/events/LittlerootTown_ProfessorBirchsLab.s"
+ .include "data/maps/events/OldaleTown_House1.s"
+ .include "data/maps/events/OldaleTown_House2.s"
+ .include "data/maps/events/OldaleTown_PokemonCenter_1F.s"
+ .include "data/maps/events/OldaleTown_PokemonCenter_2F.s"
+ .include "data/maps/events/OldaleTown_Mart.s"
+ .include "data/maps/events/DewfordTown_House1.s"
+ .include "data/maps/events/DewfordTown_PokemonCenter_1F.s"
+ .include "data/maps/events/DewfordTown_PokemonCenter_2F.s"
+ .include "data/maps/events/DewfordTown_Gym.s"
+ .include "data/maps/events/DewfordTown_Hall.s"
+ .include "data/maps/events/DewfordTown_House2.s"
+ .include "data/maps/events/LavaridgeTown_HerbShop.s"
+ .include "data/maps/events/LavaridgeTown_Gym_1F.s"
+ .include "data/maps/events/LavaridgeTown_Gym_B1F.s"
+ .include "data/maps/events/LavaridgeTown_House.s"
+ .include "data/maps/events/LavaridgeTown_Mart.s"
+ .include "data/maps/events/LavaridgeTown_PokemonCenter_1F.s"
+ .include "data/maps/events/LavaridgeTown_PokemonCenter_2F.s"
+ .include "data/maps/events/FallarborTown_Mart.s"
+ .include "data/maps/events/FallarborTown_ContestLobby.s"
+ .include "data/maps/events/FallarborTown_ContestHall.s"
+ .include "data/maps/events/FallarborTown_PokemonCenter_1F.s"
+ .include "data/maps/events/FallarborTown_PokemonCenter_2F.s"
+ .include "data/maps/events/FallarborTown_House1.s"
+ .include "data/maps/events/FallarborTown_House2.s"
+ .include "data/maps/events/VerdanturfTown_ContestLobby.s"
+ .include "data/maps/events/VerdanturfTown_ContestHall.s"
+ .include "data/maps/events/VerdanturfTown_Mart.s"
+ .include "data/maps/events/VerdanturfTown_PokemonCenter_1F.s"
+ .include "data/maps/events/VerdanturfTown_PokemonCenter_2F.s"
+ .include "data/maps/events/VerdanturfTown_WandasHouse.s"
+ .include "data/maps/events/VerdanturfTown_FriendshipRatersHouse.s"
+ .include "data/maps/events/VerdanturfTown_House.s"
+ .include "data/maps/events/PacifidlogTown_PokemonCenter_1F.s"
+ .include "data/maps/events/PacifidlogTown_PokemonCenter_2F.s"
+ .include "data/maps/events/PacifidlogTown_House1.s"
+ .include "data/maps/events/PacifidlogTown_House2.s"
+ .include "data/maps/events/PacifidlogTown_House3.s"
+ .include "data/maps/events/PacifidlogTown_House4.s"
+ .include "data/maps/events/PacifidlogTown_House5.s"
+ .include "data/maps/events/PetalburgCity_WallysHouse.s"
+ .include "data/maps/events/PetalburgCity_Gym.s"
+ .include "data/maps/events/PetalburgCity_House1.s"
+ .include "data/maps/events/PetalburgCity_House2.s"
+ .include "data/maps/events/PetalburgCity_PokemonCenter_1F.s"
+ .include "data/maps/events/PetalburgCity_PokemonCenter_2F.s"
+ .include "data/maps/events/PetalburgCity_Mart.s"
+ .include "data/maps/events/SlateportCity_SternsShipyard_1F.s"
+ .include "data/maps/events/SlateportCity_SternsShipyard_2F.s"
+ .include "data/maps/events/SlateportCity_ContestLobby.s"
+ .include "data/maps/events/SlateportCity_ContestHall.s"
+ .include "data/maps/events/SlateportCity_House1.s"
+ .include "data/maps/events/SlateportCity_PokemonFanClub.s"
+ .include "data/maps/events/SlateportCity_OceanicMuseum_1F.s"
+ .include "data/maps/events/SlateportCity_OceanicMuseum_2F.s"
+ .include "data/maps/events/SlateportCity_Harbor.s"
+ .include "data/maps/events/SlateportCity_House2.s"
+ .include "data/maps/events/SlateportCity_PokemonCenter_1F.s"
+ .include "data/maps/events/SlateportCity_PokemonCenter_2F.s"
+ .include "data/maps/events/SlateportCity_Mart.s"
+ .include "data/maps/events/MauvilleCity_Gym.s"
+ .include "data/maps/events/MauvilleCity_BikeShop.s"
+ .include "data/maps/events/MauvilleCity_House1.s"
+ .include "data/maps/events/MauvilleCity_GameCorner.s"
+ .include "data/maps/events/MauvilleCity_House2.s"
+ .include "data/maps/events/MauvilleCity_PokemonCenter_1F.s"
+ .include "data/maps/events/MauvilleCity_PokemonCenter_2F.s"
+ .include "data/maps/events/MauvilleCity_Mart.s"
+ .include "data/maps/events/RustboroCity_DevonCorp_1F.s"
+ .include "data/maps/events/RustboroCity_DevonCorp_2F.s"
+ .include "data/maps/events/RustboroCity_DevonCorp_3F.s"
+ .include "data/maps/events/RustboroCity_Gym.s"
+ .include "data/maps/events/RustboroCity_PokemonSchool.s"
+ .include "data/maps/events/RustboroCity_PokemonCenter_1F.s"
+ .include "data/maps/events/RustboroCity_PokemonCenter_2F.s"
+ .include "data/maps/events/RustboroCity_Mart.s"
+ .include "data/maps/events/RustboroCity_Flat1_1F.s"
+ .include "data/maps/events/RustboroCity_Flat1_2F.s"
+ .include "data/maps/events/RustboroCity_House1.s"
+ .include "data/maps/events/RustboroCity_CuttersHouse.s"
+ .include "data/maps/events/RustboroCity_House2.s"
+ .include "data/maps/events/RustboroCity_Flat2_1F.s"
+ .include "data/maps/events/RustboroCity_Flat2_2F.s"
+ .include "data/maps/events/RustboroCity_Flat2_3F.s"
+ .include "data/maps/events/RustboroCity_House3.s"
+ .include "data/maps/events/FortreeCity_House1.s"
+ .include "data/maps/events/FortreeCity_Gym.s"
+ .include "data/maps/events/FortreeCity_PokemonCenter_1F.s"
+ .include "data/maps/events/FortreeCity_PokemonCenter_2F.s"
+ .include "data/maps/events/FortreeCity_Mart.s"
+ .include "data/maps/events/FortreeCity_House2.s"
+ .include "data/maps/events/FortreeCity_House3.s"
+ .include "data/maps/events/FortreeCity_House4.s"
+ .include "data/maps/events/FortreeCity_House5.s"
+ .include "data/maps/events/FortreeCity_DecorationShop.s"
+ .include "data/maps/events/LilycoveCity_CoveLilyMotel_1F.s"
+ .include "data/maps/events/LilycoveCity_CoveLilyMotel_2F.s"
+ .include "data/maps/events/LilycoveCity_LilycoveMuseum_1F.s"
+ .include "data/maps/events/LilycoveCity_LilycoveMuseum_2F.s"
+ .include "data/maps/events/LilycoveCity_ContestLobby.s"
+ .include "data/maps/events/LilycoveCity_ContestHall.s"
+ .include "data/maps/events/LilycoveCity_PokemonCenter_1F.s"
+ .include "data/maps/events/LilycoveCity_PokemonCenter_2F.s"
+ .include "data/maps/events/LilycoveCity_UnusedMart.s"
+ .include "data/maps/events/LilycoveCity_PokemonTrainerFanClub.s"
+ .include "data/maps/events/LilycoveCity_Harbor.s"
+ .include "data/maps/events/LilycoveCity_EmptyMap.s"
+ .include "data/maps/events/LilycoveCity_MoveDeletersHouse.s"
+ .include "data/maps/events/LilycoveCity_House1.s"
+ .include "data/maps/events/LilycoveCity_House2.s"
+ .include "data/maps/events/LilycoveCity_House3.s"
+ .include "data/maps/events/LilycoveCity_House4.s"
+ .include "data/maps/events/LilycoveCity_DepartmentStore_1F.s"
+ .include "data/maps/events/LilycoveCity_DepartmentStore_2F.s"
+ .include "data/maps/events/LilycoveCity_DepartmentStore_3F.s"
+ .include "data/maps/events/LilycoveCity_DepartmentStore_4F.s"
+ .include "data/maps/events/LilycoveCity_DepartmentStore_5F.s"
+ .include "data/maps/events/LilycoveCity_DepartmentStoreRooftop.s"
+ .include "data/maps/events/LilycoveCity_DepartmentStoreElevator.s"
+ .include "data/maps/events/MossdeepCity_Gym.s"
+ .include "data/maps/events/MossdeepCity_House1.s"
+ .include "data/maps/events/MossdeepCity_House2.s"
+ .include "data/maps/events/MossdeepCity_PokemonCenter_1F.s"
+ .include "data/maps/events/MossdeepCity_PokemonCenter_2F.s"
+ .include "data/maps/events/MossdeepCity_Mart.s"
+ .include "data/maps/events/MossdeepCity_House3.s"
+ .include "data/maps/events/MossdeepCity_StevensHouse.s"
+ .include "data/maps/events/MossdeepCity_House4.s"
+ .include "data/maps/events/MossdeepCity_SpaceCenter_1F.s"
+ .include "data/maps/events/MossdeepCity_SpaceCenter_2F.s"
+ .include "data/maps/events/MossdeepCity_GameCorner_1F.s"
+ .include "data/maps/events/MossdeepCity_GameCorner_B1F.s"
+ .include "data/maps/events/SootopolisCity_Gym_1F.s"
+ .include "data/maps/events/SootopolisCity_Gym_B1F.s"
+ .include "data/maps/events/SootopolisCity_PokemonCenter_1F.s"
+ .include "data/maps/events/SootopolisCity_PokemonCenter_2F.s"
+ .include "data/maps/events/SootopolisCity_Mart.s"
+ .include "data/maps/events/SootopolisCity_House1.s"
+ .include "data/maps/events/SootopolisCity_House2.s"
+ .include "data/maps/events/SootopolisCity_House3.s"
+ .include "data/maps/events/SootopolisCity_House4.s"
+ .include "data/maps/events/SootopolisCity_House5.s"
+ .include "data/maps/events/SootopolisCity_House6.s"
+ .include "data/maps/events/SootopolisCity_House7.s"
+ .include "data/maps/events/SootopolisCity_House8.s"
+ .include "data/maps/events/EverGrandeCity_SidneysRoom.s"
+ .include "data/maps/events/EverGrandeCity_PhoebesRoom.s"
+ .include "data/maps/events/EverGrandeCity_GlaciasRoom.s"
+ .include "data/maps/events/EverGrandeCity_DrakesRoom.s"
+ .include "data/maps/events/EverGrandeCity_ChampionsRoom.s"
+ .include "data/maps/events/EverGrandeCity_Corridor1.s"
+ .include "data/maps/events/EverGrandeCity_Corridor2.s"
+ .include "data/maps/events/EverGrandeCity_Corridor3.s"
+ .include "data/maps/events/EverGrandeCity_Corridor4.s"
+ .include "data/maps/events/EverGrandeCity_Corridor5.s"
+ .include "data/maps/events/EverGrandeCity_PokemonLeague.s"
+ .include "data/maps/events/EverGrandeCity_HallOfFame.s"
+ .include "data/maps/events/EverGrandeCity_PokemonCenter_1F.s"
+ .include "data/maps/events/EverGrandeCity_PokemonCenter_2F.s"
+ .include "data/maps/events/Route104_MrBrineysHouse.s"
+ .include "data/maps/events/Route104_PrettyPetalFlowerShop.s"
+ .include "data/maps/events/Route111_WinstrateFamilysHouse.s"
+ .include "data/maps/events/Route111_OldLadysRestStop.s"
+ .include "data/maps/events/Route112_CableCarStation.s"
+ .include "data/maps/events/MtChimney_CableCarStation.s"
+ .include "data/maps/events/Route114_FossilManiacsHouse.s"
+ .include "data/maps/events/Route114_FossilManiacsTunnel.s"
+ .include "data/maps/events/Route114_LanettesHouse.s"
+ .include "data/maps/events/Route116_TunnelersRestHouse.s"
+ .include "data/maps/events/Route117_PokemonDayCare.s"
+ .include "data/maps/events/Route121_SafariZoneEntrance.s"
+ .include "data/maps/events/MeteorFalls_1F_1R.s"
+ .include "data/maps/events/MeteorFalls_1F_2R.s"
+ .include "data/maps/events/MeteorFalls_B1F_1R.s"
+ .include "data/maps/events/MeteorFalls_B1F_2R.s"
+ .include "data/maps/events/RusturfTunnel.s"
+ .include "data/maps/events/Underwater_SootopolisCity.s"
+ .include "data/maps/events/DesertRuins.s"
+ .include "data/maps/events/GraniteCave_1F.s"
+ .include "data/maps/events/GraniteCave_B1F.s"
+ .include "data/maps/events/GraniteCave_B2F.s"
+ .include "data/maps/events/GraniteCave_StevensRoom.s"
+ .include "data/maps/events/PetalburgWoods.s"
+ .include "data/maps/events/MtChimney.s"
+ .include "data/maps/events/JaggedPass.s"
+ .include "data/maps/events/FieryPath.s"
+ .include "data/maps/events/MtPyre_1F.s"
+ .include "data/maps/events/MtPyre_2F.s"
+ .include "data/maps/events/MtPyre_3F.s"
+ .include "data/maps/events/MtPyre_4F.s"
+ .include "data/maps/events/MtPyre_5F.s"
+ .include "data/maps/events/MtPyre_6F.s"
+ .include "data/maps/events/MtPyre_Exterior.s"
+ .include "data/maps/events/MtPyre_Summit.s"
+ .include "data/maps/events/AquaHideout_1F.s"
+ .include "data/maps/events/AquaHideout_B1F.s"
+ .include "data/maps/events/AquaHideout_B2F.s"
+ .include "data/maps/events/Underwater_SeafloorCavern.s"
+ .include "data/maps/events/SeafloorCavern_Entrance.s"
+ .include "data/maps/events/SeafloorCavern_Room1.s"
+ .include "data/maps/events/SeafloorCavern_Room2.s"
+ .include "data/maps/events/SeafloorCavern_Room3.s"
+ .include "data/maps/events/SeafloorCavern_Room4.s"
+ .include "data/maps/events/SeafloorCavern_Room5.s"
+ .include "data/maps/events/SeafloorCavern_Room6.s"
+ .include "data/maps/events/SeafloorCavern_Room7.s"
+ .include "data/maps/events/SeafloorCavern_Room8.s"
+ .include "data/maps/events/SeafloorCavern_Room9.s"
+ .include "data/maps/events/CaveOfOrigin_Entrance.s"
+ .include "data/maps/events/CaveOfOrigin_1F.s"
+ .include "data/maps/events/CaveOfOrigin_B1F.s"
+ .include "data/maps/events/CaveOfOrigin_B2F.s"
+ .include "data/maps/events/CaveOfOrigin_B3F.s"
+ .include "data/maps/events/CaveOfOrigin_B4F.s"
+ .include "data/maps/events/VictoryRoad_1F.s"
+ .include "data/maps/events/VictoryRoad_B1F.s"
+ .include "data/maps/events/VictoryRoad_B2F.s"
+ .include "data/maps/events/ShoalCave_LowTideEntranceRoom.s"
+ .include "data/maps/events/ShoalCave_LowTideInnerRoom.s"
+ .include "data/maps/events/ShoalCave_LowTideStairsRoom.s"
+ .include "data/maps/events/ShoalCave_LowTideLowerRoom.s"
+ .include "data/maps/events/ShoalCave_HighTideEntranceRoom.s"
+ .include "data/maps/events/ShoalCave_HighTideInnerRoom.s"
+ .include "data/maps/events/NewMauville_Entrance.s"
+ .include "data/maps/events/NewMauville_Inside.s"
+ .include "data/maps/events/AbandonedShip_Deck.s"
+ .include "data/maps/events/AbandonedShip_Corridors_1F.s"
+ .include "data/maps/events/AbandonedShip_Rooms_1F.s"
+ .include "data/maps/events/AbandonedShip_Corridors_B1F.s"
+ .include "data/maps/events/AbandonedShip_Rooms_B1F.s"
+ .include "data/maps/events/AbandonedShip_Rooms2_B1F.s"
+ .include "data/maps/events/AbandonedShip_Underwater1.s"
+ .include "data/maps/events/AbandonedShip_Room_B1F.s"
+ .include "data/maps/events/AbandonedShip_Rooms2_1F.s"
+ .include "data/maps/events/AbandonedShip_CaptainsOffice.s"
+ .include "data/maps/events/AbandonedShip_Underwater2.s"
+ .include "data/maps/events/AbandonedShip_HiddenFloorCorridors.s"
+ .include "data/maps/events/AbandonedShip_HiddenFloorRooms.s"
+ .include "data/maps/events/IslandCave.s"
+ .include "data/maps/events/AncientTomb.s"
+ .include "data/maps/events/Underwater_Route134.s"
+ .include "data/maps/events/Underwater_SealedChamber.s"
+ .include "data/maps/events/SealedChamber_OuterRoom.s"
+ .include "data/maps/events/SealedChamber_InnerRoom.s"
+ .include "data/maps/events/ScorchedSlab.s"
+ .include "data/maps/events/MagmaHideout_1F.s"
+ .include "data/maps/events/MagmaHideout_B1F.s"
+ .include "data/maps/events/MagmaHideout_B2F.s"
+ .include "data/maps/events/SkyPillar_Entrance.s"
+ .include "data/maps/events/SkyPillar_Outside.s"
+ .include "data/maps/events/SkyPillar_1F.s"
+ .include "data/maps/events/SkyPillar_2F.s"
+ .include "data/maps/events/SkyPillar_3F.s"
+ .include "data/maps/events/SkyPillar_4F.s"
+ .include "data/maps/events/ShoalCave_LowTideIceRoom.s"
+ .include "data/maps/events/SkyPillar_5F.s"
+ .include "data/maps/events/SkyPillar_Top.s"
+ .include "data/maps/events/SecretBase_RedCave1.s"
+ .include "data/maps/events/SecretBase_BrownCave1.s"
+ .include "data/maps/events/SecretBase_BlueCave1.s"
+ .include "data/maps/events/SecretBase_YellowCave1.s"
+ .include "data/maps/events/SecretBase_Tree1.s"
+ .include "data/maps/events/SecretBase_Shrub1.s"
+ .include "data/maps/events/SecretBase_RedCave2.s"
+ .include "data/maps/events/SecretBase_BrownCave2.s"
+ .include "data/maps/events/SecretBase_BlueCave2.s"
+ .include "data/maps/events/SecretBase_YellowCave2.s"
+ .include "data/maps/events/SecretBase_Tree2.s"
+ .include "data/maps/events/SecretBase_Shrub2.s"
+ .include "data/maps/events/SecretBase_RedCave3.s"
+ .include "data/maps/events/SecretBase_BrownCave3.s"
+ .include "data/maps/events/SecretBase_BlueCave3.s"
+ .include "data/maps/events/SecretBase_YellowCave3.s"
+ .include "data/maps/events/SecretBase_Tree3.s"
+ .include "data/maps/events/SecretBase_Shrub3.s"
+ .include "data/maps/events/SecretBase_RedCave4.s"
+ .include "data/maps/events/SecretBase_BrownCave4.s"
+ .include "data/maps/events/SecretBase_BlueCave4.s"
+ .include "data/maps/events/SecretBase_YellowCave4.s"
+ .include "data/maps/events/SecretBase_Tree4.s"
+ .include "data/maps/events/SecretBase_Shrub4.s"
+ .include "data/maps/events/SingleBattleColosseum.s"
+ .include "data/maps/events/TradeCenter.s"
+ .include "data/maps/events/RecordCorner.s"
+ .include "data/maps/events/DoubleBattleColosseum.s"
+ .include "data/maps/events/LinkContestRoom1.s"
+ .include "data/maps/events/LinkContestRoom2.s"
+ .include "data/maps/events/LinkContestRoom3.s"
+ .include "data/maps/events/LinkContestRoom4.s"
+ .include "data/maps/events/LinkContestRoom5.s"
+ .include "data/maps/events/LinkContestRoom6.s"
+ .include "data/maps/events/UnknownMap_25_29.s"
+ .include "data/maps/events/UnknownMap_25_30.s"
+ .include "data/maps/events/UnknownMap_25_31.s"
+ .include "data/maps/events/UnknownMap_25_32.s"
+ .include "data/maps/events/UnknownMap_25_33.s"
+ .include "data/maps/events/UnknownMap_25_34.s"
+ .include "data/maps/events/InsideOfTruck.s"
+ .include "data/maps/events/SSTidalCorridor.s"
+ .include "data/maps/events/SSTidalLowerDeck.s"
+ .include "data/maps/events/SSTidalRooms.s"
+ .include "data/maps/events/SafariZone_Northwest.s"
+ .include "data/maps/events/SafariZone_Northeast.s"
+ .include "data/maps/events/SafariZone_Southwest.s"
+ .include "data/maps/events/SafariZone_Southeast.s"
+ .include "data/maps/events/BattleTower_Outside.s"
+ .include "data/maps/events/BattleTower_Lobby.s"
+ .include "data/maps/events/BattleTower_Elevator.s"
+ .include "data/maps/events/BattleTower_Corridor.s"
+ .include "data/maps/events/BattleTower_BattleRoom.s"
+ .include "data/maps/events/SouthernIsland_Exterior.s"
+ .include "data/maps/events/SouthernIsland_Interior.s"
+ .include "data/maps/events/SafariZone_RestHouse.s"
+ .include "data/maps/events/Route104_Prototype.s"
+ .include "data/maps/events/Route104_PrototypePrettyPetalFlowerShop.s"
+ .include "data/maps/events/Route109_SeashoreHouse.s"
+ .include "data/maps/events/Route110_TrickHouseEntrance.s"
+ .include "data/maps/events/Route110_TrickHouseEnd.s"
+ .include "data/maps/events/Route110_TrickHouseCorridor.s"
+ .include "data/maps/events/Route110_TrickHousePuzzle1.s"
+ .include "data/maps/events/Route110_TrickHousePuzzle2.s"
+ .include "data/maps/events/Route110_TrickHousePuzzle3.s"
+ .include "data/maps/events/Route110_TrickHousePuzzle4.s"
+ .include "data/maps/events/Route110_TrickHousePuzzle5.s"
+ .include "data/maps/events/Route110_TrickHousePuzzle6.s"
+ .include "data/maps/events/Route110_TrickHousePuzzle7.s"
+ .include "data/maps/events/Route110_TrickHousePuzzle8.s"
+ .include "data/maps/events/Route110_SeasideCyclingRoadSouthEntrance.s"
+ .include "data/maps/events/Route110_SeasideCyclingRoadNorthEntrance.s"
+ .include "data/maps/events/Route113_GlassWorkshop.s"
+ .include "data/maps/events/Route123_BerryMastersHouse.s"
+ .include "data/maps/events/Route119_WeatherInstitute_1F.s"
+ .include "data/maps/events/Route119_WeatherInstitute_2F.s"
+ .include "data/maps/events/Route119_House.s"
+Route124_DivingTreasureHuntersHouse_MapObjects:: @ 839300C
+ object_event 1, MAP_OBJ_GFX_MAN_6, 0, 5, 0, 4, 0, 0, 9, 0, 0, 0, 0, 0, 0, Route124_DivingTreasureHuntersHouse_EventScript_163E04, 0, 0, 0
+
+Route124_DivingTreasureHuntersHouse_MapWarps:: @ 8393024
+ warp_def 3, 8, 0, 0, Route124
+ warp_def 4, 8, 0, 0, Route124
+
+Route124_DivingTreasureHuntersHouse_MapBGEvents:: @ 8393034
+ bg_event 7, 1, 0, 0, 0, Route124_DivingTreasureHuntersHouse_EventScript_164335
+
+Route124_DivingTreasureHuntersHouse_MapEvents:: @ 8393040
+ map_events Route124_DivingTreasureHuntersHouse_MapObjects, Route124_DivingTreasureHuntersHouse_MapWarps, 0x0, Route124_DivingTreasureHuntersHouse_MapBGEvents
+
+ .incbin "baserom.gba", 0x393054, 0x184
.global gUnknown_083931D8
gUnknown_083931D8: @ 83931D8
diff --git a/data/maps/AbandonedShip_CaptainsOffice/border.bin b/data/maps/AbandonedShip_CaptainsOffice/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/AbandonedShip_CaptainsOffice/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/AbandonedShip_CaptainsOffice/header.s b/data/maps/AbandonedShip_CaptainsOffice/header.s
new file mode 100644
index 000000000..b6e5f4895
--- /dev/null
+++ b/data/maps/AbandonedShip_CaptainsOffice/header.s
@@ -0,0 +1,15 @@
+AbandonedShip_CaptainsOffice:: @ 8307454
+ .4byte AbandonedShip_CaptainsOffice_MapAttributes
+ .4byte AbandonedShip_CaptainsOffice_MapEvents
+ .4byte AbandonedShip_CaptainsOffice_MapScripts
+ .4byte 0x0
+ .2byte 381
+ .2byte 196
+ .byte 61
+ .byte 0
+ .byte 11
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/AbandonedShip_CaptainsOffice/map.bin b/data/maps/AbandonedShip_CaptainsOffice/map.bin
new file mode 100644
index 000000000..c9097fa63
--- /dev/null
+++ b/data/maps/AbandonedShip_CaptainsOffice/map.bin
Binary files differ
diff --git a/data/maps/AbandonedShip_Corridors_1F/border.bin b/data/maps/AbandonedShip_Corridors_1F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/AbandonedShip_Corridors_1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/AbandonedShip_Corridors_1F/header.s b/data/maps/AbandonedShip_Corridors_1F/header.s
new file mode 100644
index 000000000..84a9f8ecb
--- /dev/null
+++ b/data/maps/AbandonedShip_Corridors_1F/header.s
@@ -0,0 +1,15 @@
+AbandonedShip_Corridors_1F:: @ 8307374
+ .4byte AbandonedShip_Corridors_1F_MapAttributes
+ .4byte AbandonedShip_Corridors_1F_MapEvents
+ .4byte AbandonedShip_Corridors_1F_MapScripts
+ .4byte 0x0
+ .2byte 381
+ .2byte 188
+ .byte 61
+ .byte 0
+ .byte 11
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/AbandonedShip_Corridors_1F/map.bin b/data/maps/AbandonedShip_Corridors_1F/map.bin
new file mode 100644
index 000000000..5ef5ca949
--- /dev/null
+++ b/data/maps/AbandonedShip_Corridors_1F/map.bin
@@ -0,0 +1,3 @@
+    22222
+2 662222222
+2 6222222222222222226201222220111122222012222201111222220122222011112222201222220111122262%#&2222%$"#&2222-+6.2222-2,*+6.262222222222222222222222222222222222 \ No newline at end of file
diff --git a/data/maps/AbandonedShip_Corridors_B1F/border.bin b/data/maps/AbandonedShip_Corridors_B1F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/AbandonedShip_Corridors_B1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/AbandonedShip_Corridors_B1F/header.s b/data/maps/AbandonedShip_Corridors_B1F/header.s
new file mode 100644
index 000000000..ae5418a2d
--- /dev/null
+++ b/data/maps/AbandonedShip_Corridors_B1F/header.s
@@ -0,0 +1,15 @@
+AbandonedShip_Corridors_B1F:: @ 83073AC
+ .4byte AbandonedShip_Corridors_B1F_MapAttributes
+ .4byte AbandonedShip_Corridors_B1F_MapEvents
+ .4byte AbandonedShip_Corridors_B1F_MapScripts
+ .4byte 0x0
+ .2byte 381
+ .2byte 190
+ .byte 61
+ .byte 0
+ .byte 11
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/AbandonedShip_Corridors_B1F/map.bin b/data/maps/AbandonedShip_Corridors_B1F/map.bin
new file mode 100644
index 000000000..24b1a7b61
--- /dev/null
+++ b/data/maps/AbandonedShip_Corridors_B1F/map.bin
@@ -0,0 +1 @@
+!!011112!!011)011112)0112011112201122%#$"&22%#$22-+6,*2.22-+6,22222222222222222222222226222222222222262220111111122222011111112 \ No newline at end of file
diff --git a/data/maps/AbandonedShip_Deck/border.bin b/data/maps/AbandonedShip_Deck/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/AbandonedShip_Deck/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/AbandonedShip_Deck/header.s b/data/maps/AbandonedShip_Deck/header.s
new file mode 100644
index 000000000..3573d6b3d
--- /dev/null
+++ b/data/maps/AbandonedShip_Deck/header.s
@@ -0,0 +1,15 @@
+AbandonedShip_Deck:: @ 8307358
+ .4byte AbandonedShip_Deck_MapAttributes
+ .4byte AbandonedShip_Deck_MapEvents
+ .4byte AbandonedShip_Deck_MapScripts
+ .4byte 0x0
+ .2byte 381
+ .2byte 187
+ .byte 61
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/AbandonedShip_Deck/map.bin b/data/maps/AbandonedShip_Deck/map.bin
new file mode 100644
index 000000000..67cdde3d7
--- /dev/null
+++ b/data/maps/AbandonedShip_Deck/map.bin
@@ -0,0 +1 @@
+(((`(`(((((b`(((((((((((`(''`(eif(b`(((((((((`('/`(((((b`('((ef(`(/'hiiiiij`(''('((((`(*/`(//(/((((`(* ]]]2hiiiiiiii(((`(((33*2*22*22ef(hiiiiif(2(2ei (((00((( ]]]2002]]]]]]]](((33*2*22*22*22*22*2*2*2*2*2*2*2(((((((2(2(2(2(2(2(2(2(2(2(2(2iiiiiiiiiiiif(2(2eiiiiiii00 00  22 44pppppppp \ No newline at end of file
diff --git a/data/maps/AbandonedShip_HiddenFloorCorridors/border.bin b/data/maps/AbandonedShip_HiddenFloorCorridors/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/AbandonedShip_HiddenFloorCorridors/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/AbandonedShip_HiddenFloorCorridors/header.s b/data/maps/AbandonedShip_HiddenFloorCorridors/header.s
new file mode 100644
index 000000000..cce83595e
--- /dev/null
+++ b/data/maps/AbandonedShip_HiddenFloorCorridors/header.s
@@ -0,0 +1,15 @@
+AbandonedShip_HiddenFloorCorridors:: @ 830748C
+ .4byte AbandonedShip_HiddenFloorCorridors_MapAttributes
+ .4byte AbandonedShip_HiddenFloorCorridors_MapEvents
+ .4byte AbandonedShip_HiddenFloorCorridors_MapScripts
+ .4byte 0x0
+ .2byte 381
+ .2byte 290
+ .byte 61
+ .byte 0
+ .byte 11
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/AbandonedShip_HiddenFloorCorridors/map.bin b/data/maps/AbandonedShip_HiddenFloorCorridors/map.bin
new file mode 100644
index 000000000..a4637ccbe
--- /dev/null
+++ b/data/maps/AbandonedShip_HiddenFloorCorridors/map.bin
@@ -0,0 +1 @@
+    222222222222262242222224222222011111112266201111111222220111111122222%#$"#$"#&22-36,*36,*+6.22V2222222222GVx2222222222 \ No newline at end of file
diff --git a/data/maps/AbandonedShip_HiddenFloorRooms/border.bin b/data/maps/AbandonedShip_HiddenFloorRooms/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/AbandonedShip_HiddenFloorRooms/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/AbandonedShip_HiddenFloorRooms/header.s b/data/maps/AbandonedShip_HiddenFloorRooms/header.s
new file mode 100644
index 000000000..bc9d2f425
--- /dev/null
+++ b/data/maps/AbandonedShip_HiddenFloorRooms/header.s
@@ -0,0 +1,15 @@
+AbandonedShip_HiddenFloorRooms:: @ 83074A8
+ .4byte AbandonedShip_HiddenFloorRooms_MapAttributes
+ .4byte AbandonedShip_HiddenFloorRooms_MapEvents
+ .4byte AbandonedShip_HiddenFloorRooms_MapScripts
+ .4byte 0x0
+ .2byte 381
+ .2byte 311
+ .byte 61
+ .byte 0
+ .byte 11
+ .byte 4
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/AbandonedShip_HiddenFloorRooms/map.bin b/data/maps/AbandonedShip_HiddenFloorRooms/map.bin
new file mode 100644
index 000000000..b63eeabe6
--- /dev/null
+++ b/data/maps/AbandonedShip_HiddenFloorRooms/map.bin
@@ -0,0 +1 @@
+6''''c'''''76''''''''''76'''''c'''''7>////6/////?>/////2/////GF/////6/////?>h;2;2;2;2;2;2;2;2;2;2;2?>:2;2;2665;266;2;2;2;2ON:2;2;2;2;2;2;2g2;2;266;2?>=28282828282a2828282826?>682a2^6_682b6682828282;2;2<28282b68282828282826682?>=282V6W68282828282a28282?>=28282`2828282828282828282?>=282828282`282828282828282?>682^6_6828282828282`282?>=2`2828282828282828282a282?>682V6W682828282b6828282a2?>=28282828282828282828282?>=2828282828282828282828282?>=282^6_6828282a2828282826?6''''''''''''76'''''''''''''76'''''''''''''7>////////////?>/////////////?>/////////////?>:2g2;2;2;2;25;2;2;2;2;2?>:2;2;2;2;2;2;2;2;2;2;2;2;2?>:2;2;2g2;2;2;2;2;2;266;2?>=282828282a2828282V6W682?>=28282828282`2828282b6826?>682828282V6W68282826682?>=28282828282828282^6_682?>=28282a2`28282828282828282?>=282828282^6_68282a2828282?>682`2828282828282828282?>=2V6W682828282828282828282?>=282828282828282828282826?>=282828282d2e2828282826?>=2^6_6828282d2e2828282a282?>=2`282b68282d2e282828282a2? \ No newline at end of file
diff --git a/data/maps/AbandonedShip_Room_B1F/border.bin b/data/maps/AbandonedShip_Room_B1F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/AbandonedShip_Room_B1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/AbandonedShip_Room_B1F/header.s b/data/maps/AbandonedShip_Room_B1F/header.s
new file mode 100644
index 000000000..f60789b9d
--- /dev/null
+++ b/data/maps/AbandonedShip_Room_B1F/header.s
@@ -0,0 +1,15 @@
+AbandonedShip_Room_B1F:: @ 830741C
+ .4byte AbandonedShip_Room_B1F_MapAttributes
+ .4byte AbandonedShip_Room_B1F_MapEvents
+ .4byte AbandonedShip_Room_B1F_MapScripts
+ .4byte 0x0
+ .2byte 381
+ .2byte 194
+ .byte 61
+ .byte 0
+ .byte 11
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/AbandonedShip_Room_B1F/map.bin b/data/maps/AbandonedShip_Room_B1F/map.bin
new file mode 100644
index 000000000..cb8393eb2
--- /dev/null
+++ b/data/maps/AbandonedShip_Room_B1F/map.bin
@@ -0,0 +1 @@
+6'''''''7>///////?>:2;2;2;2;2;2;2?>=282a282828282?>=2`28282828282?>=282828282a282?>=2828282828282?>=28282d2e282b? \ No newline at end of file
diff --git a/data/maps/AbandonedShip_Rooms2_1F/border.bin b/data/maps/AbandonedShip_Rooms2_1F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/AbandonedShip_Rooms2_1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/AbandonedShip_Rooms2_1F/header.s b/data/maps/AbandonedShip_Rooms2_1F/header.s
new file mode 100644
index 000000000..a31aa342f
--- /dev/null
+++ b/data/maps/AbandonedShip_Rooms2_1F/header.s
@@ -0,0 +1,15 @@
+AbandonedShip_Rooms2_1F:: @ 8307438
+ .4byte AbandonedShip_Rooms2_1F_MapAttributes
+ .4byte AbandonedShip_Rooms2_1F_MapEvents
+ .4byte AbandonedShip_Rooms2_1F_MapScripts
+ .4byte 0x0
+ .2byte 381
+ .2byte 195
+ .byte 61
+ .byte 0
+ .byte 11
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/AbandonedShip_Rooms2_1F/map.bin b/data/maps/AbandonedShip_Rooms2_1F/map.bin
new file mode 100644
index 000000000..c897ce8a0
--- /dev/null
+++ b/data/maps/AbandonedShip_Rooms2_1F/map.bin
@@ -0,0 +1 @@
+6@kc''7>Hs6//?>PQ:2;2;2;2;2?>XY=282828282?>2;2<28282a282?>=2828282828282?>=282b82a28282?>=2828282828282?=26'''=2'''7>///=2///?>:2;2;2<2;2;2;2?>=2828282828282?>=2VW82a28282?>=2^_a2828282?>=2828282828282?>=28282d2e28282? \ No newline at end of file
diff --git a/data/maps/AbandonedShip_Rooms2_B1F/border.bin b/data/maps/AbandonedShip_Rooms2_B1F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/AbandonedShip_Rooms2_B1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/AbandonedShip_Rooms2_B1F/header.s b/data/maps/AbandonedShip_Rooms2_B1F/header.s
new file mode 100644
index 000000000..f2214211a
--- /dev/null
+++ b/data/maps/AbandonedShip_Rooms2_B1F/header.s
@@ -0,0 +1,15 @@
+AbandonedShip_Rooms2_B1F:: @ 83073E4
+ .4byte AbandonedShip_Rooms2_B1F_MapAttributes
+ .4byte AbandonedShip_Rooms2_B1F_MapEvents
+ .4byte AbandonedShip_Rooms2_B1F_MapScripts
+ .4byte 0x0
+ .2byte 381
+ .2byte 192
+ .byte 61
+ .byte 0
+ .byte 11
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/AbandonedShip_Rooms2_B1F/map.bin b/data/maps/AbandonedShip_Rooms2_B1F/map.bin
new file mode 100644
index 000000000..7865bb69d
--- /dev/null
+++ b/data/maps/AbandonedShip_Rooms2_B1F/map.bin
@@ -0,0 +1 @@
+6@AB''''76@AB'CDE7>HIJ////?>HIJ/KLM?>PQ:2;2;2;2;2GFPQ:2;2;2TU?>XY=282VW6ONXY=28282\]?>:2;2<282^_82;2;2;2;2f28282;2;2?>=2828282828282?>=282828282826?>6828282828282?>682828282`282?>=28282d2e282b?>=28282d2e28282? \ No newline at end of file
diff --git a/data/maps/AbandonedShip_Rooms_1F/border.bin b/data/maps/AbandonedShip_Rooms_1F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/AbandonedShip_Rooms_1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/AbandonedShip_Rooms_1F/header.s b/data/maps/AbandonedShip_Rooms_1F/header.s
new file mode 100644
index 000000000..709d5e359
--- /dev/null
+++ b/data/maps/AbandonedShip_Rooms_1F/header.s
@@ -0,0 +1,15 @@
+AbandonedShip_Rooms_1F:: @ 8307390
+ .4byte AbandonedShip_Rooms_1F_MapAttributes
+ .4byte AbandonedShip_Rooms_1F_MapEvents
+ .4byte AbandonedShip_Rooms_1F_MapScripts
+ .4byte 0x0
+ .2byte 381
+ .2byte 189
+ .byte 61
+ .byte 0
+ .byte 11
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/AbandonedShip_Rooms_1F/map.bin b/data/maps/AbandonedShip_Rooms_1F/map.bin
new file mode 100644
index 000000000..20529b3df
--- /dev/null
+++ b/data/maps/AbandonedShip_Rooms_1F/map.bin
@@ -0,0 +1 @@
+6''c''76@kc''7>//6//?>Hs6//?>:2;2;2;2;2;2;2?>PQ:2;2;2;2;2?>=2828282828282?>XY=28282826?>682828282a282?>:2;2<282828282?>=2828282828282?>=2828282`28282?>=2b8282828282?>6828282828282?>=2828282a28282?>=2828282828282?=26@AB'''E76'''=2CDE7>HIJ////?>///=2KLM?>PQ:2;2;2;2;2GF:2;2;2<2;2TU?>XY=282`28282ON=282828282\]?>:2;2<2b828282;2;2<282828282;2;2?>=2828282828282?>=2VW8282826?>=2a28282828282?>=2^_82828282?>68282d2e28282?>=28282d2e28282? \ No newline at end of file
diff --git a/data/maps/AbandonedShip_Rooms_B1F/border.bin b/data/maps/AbandonedShip_Rooms_B1F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/AbandonedShip_Rooms_B1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/AbandonedShip_Rooms_B1F/header.s b/data/maps/AbandonedShip_Rooms_B1F/header.s
new file mode 100644
index 000000000..51e0c04f6
--- /dev/null
+++ b/data/maps/AbandonedShip_Rooms_B1F/header.s
@@ -0,0 +1,15 @@
+AbandonedShip_Rooms_B1F:: @ 83073C8
+ .4byte AbandonedShip_Rooms_B1F_MapAttributes
+ .4byte AbandonedShip_Rooms_B1F_MapEvents
+ .4byte AbandonedShip_Rooms_B1F_MapScripts
+ .4byte 0x0
+ .2byte 381
+ .2byte 191
+ .byte 61
+ .byte 0
+ .byte 11
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/AbandonedShip_Rooms_B1F/map.bin b/data/maps/AbandonedShip_Rooms_B1F/map.bin
new file mode 100644
index 000000000..b18509507
--- /dev/null
+++ b/data/maps/AbandonedShip_Rooms_B1F/map.bin
@@ -0,0 +1 @@
+6@kmE@kc''@kmE7>Hs2uMHs6//Hs2uM?>PQ:2;2;2TUPQ:2;2;2;2;2PQ:2;2;2TU?>XY=28282\]XY=28282a282XY=2a282\]?>:2;2<2a282;2;2:2;2<28282826:2;2<28282;2;2?>=2VW8282826=282=28282a2828282?>=2^_82`28282=2pVp82=2`2828282b82?>6828282828282=2VGV82=282828282826? \ No newline at end of file
diff --git a/data/maps/AbandonedShip_Underwater1/border.bin b/data/maps/AbandonedShip_Underwater1/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/AbandonedShip_Underwater1/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/AbandonedShip_Underwater1/header.s b/data/maps/AbandonedShip_Underwater1/header.s
new file mode 100644
index 000000000..e80ed1dd8
--- /dev/null
+++ b/data/maps/AbandonedShip_Underwater1/header.s
@@ -0,0 +1,15 @@
+AbandonedShip_Underwater1:: @ 8307400
+ .4byte AbandonedShip_Underwater1_MapAttributes
+ .4byte AbandonedShip_Underwater1_MapEvents
+ .4byte AbandonedShip_Underwater1_MapScripts
+ .4byte 0x0
+ .2byte 411
+ .2byte 193
+ .byte 61
+ .byte 0
+ .byte 14
+ .byte 5
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/AbandonedShip_Underwater1/map.bin b/data/maps/AbandonedShip_Underwater1/map.bin
new file mode 100644
index 000000000..2c73cfe86
--- /dev/null
+++ b/data/maps/AbandonedShip_Underwater1/map.bin
@@ -0,0 +1 @@
+222222222222222222222222222222222222222222222222 \ No newline at end of file
diff --git a/data/maps/AbandonedShip_Underwater2/border.bin b/data/maps/AbandonedShip_Underwater2/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/AbandonedShip_Underwater2/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/AbandonedShip_Underwater2/header.s b/data/maps/AbandonedShip_Underwater2/header.s
new file mode 100644
index 000000000..f71a72aca
--- /dev/null
+++ b/data/maps/AbandonedShip_Underwater2/header.s
@@ -0,0 +1,15 @@
+AbandonedShip_Underwater2:: @ 8307470
+ .4byte AbandonedShip_Underwater2_MapAttributes
+ .4byte AbandonedShip_Underwater2_MapEvents
+ .4byte AbandonedShip_Underwater2_MapScripts
+ .4byte 0x0
+ .2byte 411
+ .2byte 197
+ .byte 61
+ .byte 0
+ .byte 14
+ .byte 5
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/AbandonedShip_Underwater2/map.bin b/data/maps/AbandonedShip_Underwater2/map.bin
new file mode 100644
index 000000000..9dbd5c71a
--- /dev/null
+++ b/data/maps/AbandonedShip_Underwater2/map.bin
@@ -0,0 +1 @@
+2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222 \ No newline at end of file
diff --git a/data/maps/AncientTomb/border.bin b/data/maps/AncientTomb/border.bin
new file mode 100644
index 000000000..c07869a9f
--- /dev/null
+++ b/data/maps/AncientTomb/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/AncientTomb/header.s b/data/maps/AncientTomb/header.s
new file mode 100644
index 000000000..97c7ae8a8
--- /dev/null
+++ b/data/maps/AncientTomb/header.s
@@ -0,0 +1,15 @@
+AncientTomb:: @ 83074E0
+ .4byte AncientTomb_MapAttributes
+ .4byte AncientTomb_MapEvents
+ .4byte AncientTomb_MapScripts
+ .4byte 0x0
+ .2byte 438
+ .2byte 282
+ .byte 83
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/AncientTomb/map.bin b/data/maps/AncientTomb/map.bin
new file mode 100644
index 000000000..bb87de307
--- /dev/null
+++ b/data/maps/AncientTomb/map.bin
Binary files differ
diff --git a/data/maps/AquaHideout_1F/border.bin b/data/maps/AquaHideout_1F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/AquaHideout_1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/AquaHideout_1F/header.s b/data/maps/AquaHideout_1F/header.s
new file mode 100644
index 000000000..6f4e01a4d
--- /dev/null
+++ b/data/maps/AquaHideout_1F/header.s
@@ -0,0 +1,15 @@
+AquaHideout_1F:: @ 8306FF4
+ .4byte AquaHideout_1F_MapAttributes
+ .4byte AquaHideout_1F_MapEvents
+ .4byte AquaHideout_1F_MapScripts
+ .4byte 0x0
+ .2byte 430
+ .2byte 144
+ .byte 66
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 1
+ .byte 3
+
diff --git a/data/maps/AquaHideout_1F/map.bin b/data/maps/AquaHideout_1F/map.bin
new file mode 100644
index 000000000..2330fe015
--- /dev/null
+++ b/data/maps/AquaHideout_1F/map.bin
@@ -0,0 +1,55 @@
+STST [\21$#![\0!21!!2"
+cd:292)2)2)2cd82)2:292)2)22)22)2'
+
+!!! k2l22(2(2(2(2k2l22(2(2(2(2(2(2(2(2(27
+
+2)2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2)2
+
+'//2(2(2]iiiiiiiiii^2(2(2(2(2(2
+
+/'/2(2(2`q1q1q1q1q1q1q1q1q1q12(2(2(2(2(2
+
+'/22(2(2`q1p1p1p1p1p1p1p1p1q12(2(2(2(2(2
+
+/22(2(2(2hiiiiiiiiii2(2(2(2(2
+
+)22(2(2(2(2*2*2*2*2*2*2*2*2*2*2*2*22(2(2(2(2'
+
+)2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2/
+
+)2(2(2]iiiiiif(2(2eiiiiii^2(2'
+
+)2(2(2`t||||||00||||||2(2/
+
+)2(2(2`us2(2*2
+
+)2(2(2`upppppppppppps2(2(2
+
+22(2`upppppppppppps2(2(2
+
+2uppppppppppppsy2(2(2
+
+2*BBBBtppppprBBBBB*2(2(2
+
+)2*22((BBBBuypppxsBBBBB((222
+
+)2(2(2t|||}ppp{||||2
+
+)2(2(2`uppps2
+
+)2(2(2`upppppppppppps2*2*2
+
+22(2`upppppppppppps2(2(2
+
+2`upppppppppppps222
+
+2uppppppppppppsy2
+
+)2*22*BBBBBtppprBBBBBB*2
+
+)2(2(2((BBBBBuypxsB(B(B(B(B(B((2*2*2
+
+mmmmmmmmougsnmmmmmmmmm
+
+qqqqqqqqusqqqqqqqqq
+llllllllllllllllllllll \ No newline at end of file
diff --git a/data/maps/AquaHideout_B1F/border.bin b/data/maps/AquaHideout_B1F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/AquaHideout_B1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/AquaHideout_B1F/header.s b/data/maps/AquaHideout_B1F/header.s
new file mode 100644
index 000000000..5979c9b51
--- /dev/null
+++ b/data/maps/AquaHideout_B1F/header.s
@@ -0,0 +1,15 @@
+AquaHideout_B1F:: @ 8307010
+ .4byte AquaHideout_B1F_MapAttributes
+ .4byte AquaHideout_B1F_MapEvents
+ .4byte AquaHideout_B1F_MapScripts
+ .4byte 0x0
+ .2byte 430
+ .2byte 145
+ .byte 66
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 1
+ .byte 3
+
diff --git a/data/maps/AquaHideout_B1F/map.bin b/data/maps/AquaHideout_B1F/map.bin
new file mode 100644
index 000000000..5d13df58d
--- /dev/null
+++ b/data/maps/AquaHideout_B1F/map.bin
@@ -0,0 +1,83 @@
+ 01!2
+112!
+!!2!!
+
+!!!
+ST8292)22)22
+92922)22)2
+')22)22)2'
+
+)2)2)2
+
+!2[\ )2(2(2(2(2(2
+)2(2(2(2(2(27
+/2(2(2(2(2/
+
+72(227
+
+)22)22cd2)2(2(2(2(2(2
+)2(2(2(2(22*2*27
+)22(2(2(22(2
+
+)2*22(2(2*2*27
+
+)2(2(2(2k2l22(2(2(2(2(2(2  2Y2Y2Y2Y2Y2Y2Y2Y2Y2  2Y2Y2Y2Y2Y2Y2 
+)22(2(22(2(22(2
+
+)2(2(2(22A2B2222(2(2(2+,-.
+iiiiiii^
+
+)2(2(2(2IJ222(2(2(2
+$#$!!!
+0013456
+
+`2222222
+
+)2(2(2(2222A2B22(2(2(2
+37733366
+828292;<=>
+
+hiiiiiii
+
+)2(2(2(2222IJ(2(2(2
+3337733333
+)263(2CDEF
+
+)22(2(22(2(22(2
+
+)2(2(2(2222222(2(2(2
+3333333323
+)2(2(2KLMN
+
+iiiiiii^
+  2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2 3333333333 )2(2(2(2UV)2
+
+`2222222
+)22(2(2(2(2(2
+
+hiiiiiii
+
+!!!!!!!!!!!!! !!!!!!!!!!  2Y2Y2Y2Y2Y2Y2 
+)22(2(22(2(22(2
+
+)2)2)2)2)2)2)2)2)2)2)2)2)22)2222222223
+iiiiiii^
+
+)2(22(2(2(2(2(2(2(2(2(2(2(2(23  2227 !!!!!!!
+
+`2222222
+
+iiiiiiiiiiiii^222D322222)2)2
+
+hiiiiiii
+
+`2222222222222222222222222222(2(2
+
+)22(2(22(2(22(2
+
+`2O1O1O1O1O1O1O1O1O1O1O1O12A2B2222A2B23322222(2(2
+  2Y2Y2Y2Y2Y2Y2Y2Y2 
+hiiiiiiiiiiiii2IJ222IJ22222(22
+
+)2*22*2*2*2*2*2*2*2*2*2*2*2*2222222222222222(2(2
+ !!!!!!!!!   2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!  \ No newline at end of file
diff --git a/data/maps/AquaHideout_B2F/border.bin b/data/maps/AquaHideout_B2F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/AquaHideout_B2F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/AquaHideout_B2F/header.s b/data/maps/AquaHideout_B2F/header.s
new file mode 100644
index 000000000..bf6b2d8ea
--- /dev/null
+++ b/data/maps/AquaHideout_B2F/header.s
@@ -0,0 +1,15 @@
+AquaHideout_B2F:: @ 830702C
+ .4byte AquaHideout_B2F_MapAttributes
+ .4byte AquaHideout_B2F_MapEvents
+ .4byte AquaHideout_B2F_MapScripts
+ .4byte 0x0
+ .2byte 430
+ .2byte 146
+ .byte 66
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 1
+ .byte 3
+
diff --git a/data/maps/AquaHideout_B2F/map.bin b/data/maps/AquaHideout_B2F/map.bin
new file mode 100644
index 000000000..2e843a8e4
--- /dev/null
+++ b/data/maps/AquaHideout_B2F/map.bin
@@ -0,0 +1,51 @@
+ST+,-.+,-.222 [\012
+!!23456!!3456!!!
+cd82922)22
+)2)22)22;<=>)2)2;<=>)2)2)2
+
+!2!
+k2l22(2(2(2(2
+)2(2(2(2(2CDEF2(2CDEF2(2(2
+
+)22)22)2
+)2(2(2(2(2(2(2
+)2(2(2(2(2KLMN2(2KLMN2(2(2
+
+)2(2(2(2(2
+)2(2(22A2B22
+)2(2(2(2(2(2UV2(2(2(2UV2(2(2(2
+
+)2(2(2
+)2(2(22IJ
+)2(222(2(2*2*22(2(2(2*2*22(2(2(2
+
+)2//(2
+)2(2(22222
+)2(22(222(2(222(222(2(2(2
+
+)277/2
+)22(22222
+)2(2202(2222(2
+  2Y2Y2Y2Y2  2Y2Y2Y2Y2Y2Y2 )2(2*2*22822(2:22(2(2
+)2(2(2(2(2(2*2*22(2*2*22*2*22(2(2
+
+!!!!! 012!!!!
+)2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2
+
+)2)2)2)2)228292:2)2)2)2)2
+)2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2 
+)2(2(2(2(2(2(2(2(2(2(22(2 )2(2(22(2(2(2'2Y2Y2Y2Y2Y2Y2Y2Y2
+)2(2(2(2(2(2(2(2(2(2(2(2(2)2(2(2(2(2(2'/
+
+iiiiiiiiiiif )2(2(2(2(2(2/// !!!!!!!!
+
+2iiiiiii^2)2)2)2)2)2)2)2)2
+
+VVVVVVVVppp2(2(2(2(2(2(22(2
+
+GGGGGGGVVVVVVVVpppppy2(2(2(2(2
+
+GGGGGGGGGGGGGGVVVVVp*22(2(2(2(2''//
+
+GGGGGGGGGGGGGGGGGGVp2(2(2(2(2//)22
+ GGGGGGGGGGGGGGGGGGVp2Y2Y2Y2Y2 2 2 2Y2 GGGGGGGGGGGGGGGGGGVpb iiiiiiiiiiiiiiiiiiiiij !!!!!!!!  \ No newline at end of file
diff --git a/data/maps/BattleTower_BattleRoom/border.bin b/data/maps/BattleTower_BattleRoom/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/BattleTower_BattleRoom/border.bin
Binary files differ
diff --git a/data/maps/BattleTower_BattleRoom/header.s b/data/maps/BattleTower_BattleRoom/header.s
new file mode 100644
index 000000000..62dc56a2c
--- /dev/null
+++ b/data/maps/BattleTower_BattleRoom/header.s
@@ -0,0 +1,15 @@
+BattleTower_BattleRoom:: @ 8307C88
+ .4byte BattleTower_BattleRoom_MapAttributes
+ .4byte BattleTower_BattleRoom_MapEvents
+ .4byte BattleTower_BattleRoom_MapScripts
+ .4byte 0x0
+ .2byte 384
+ .2byte 269
+ .byte 58
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 8
+
diff --git a/data/maps/BattleTower_BattleRoom/map.bin b/data/maps/BattleTower_BattleRoom/map.bin
new file mode 100644
index 000000000..42d99b5a6
--- /dev/null
+++ b/data/maps/BattleTower_BattleRoom/map.bin
@@ -0,0 +1 @@
+///LMMN///?77TU2U2V77?G<2<2<2<2<2<2<2<2;2:2H2B2I2J2B2K2:2:2;2:2D2P2Q2R2S2E2:2:2;2:2D2X2Y2Z2[2E2:2:2;2:2D2`2a2b2c2E2:2:2~2:2@2C21292C2A2:2>2:2:2:222:2:2:2F \ No newline at end of file
diff --git a/data/maps/BattleTower_Corridor/border.bin b/data/maps/BattleTower_Corridor/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/BattleTower_Corridor/border.bin
Binary files differ
diff --git a/data/maps/BattleTower_Corridor/header.s b/data/maps/BattleTower_Corridor/header.s
new file mode 100644
index 000000000..1254251d7
--- /dev/null
+++ b/data/maps/BattleTower_Corridor/header.s
@@ -0,0 +1,15 @@
+BattleTower_Corridor:: @ 8307C6C
+ .4byte BattleTower_Corridor_MapAttributes
+ .4byte BattleTower_Corridor_MapEvents
+ .4byte BattleTower_Corridor_MapScripts
+ .4byte 0x0
+ .2byte 384
+ .2byte 268
+ .byte 58
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/BattleTower_Corridor/map.bin b/data/maps/BattleTower_Corridor/map.bin
new file mode 100644
index 000000000..0b0803f91
--- /dev/null
+++ b/data/maps/BattleTower_Corridor/map.bin
Binary files differ
diff --git a/data/maps/BattleTower_Elevator/border.bin b/data/maps/BattleTower_Elevator/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/BattleTower_Elevator/border.bin
Binary files differ
diff --git a/data/maps/BattleTower_Elevator/header.s b/data/maps/BattleTower_Elevator/header.s
new file mode 100644
index 000000000..2f1b809a5
--- /dev/null
+++ b/data/maps/BattleTower_Elevator/header.s
@@ -0,0 +1,15 @@
+BattleTower_Elevator:: @ 8307C50
+ .4byte BattleTower_Elevator_MapAttributes
+ .4byte BattleTower_Elevator_MapEvents
+ .4byte BattleTower_Elevator_MapScripts
+ .4byte 0x0
+ .2byte 384
+ .2byte 267
+ .byte 58
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/BattleTower_Elevator/map.bin b/data/maps/BattleTower_Elevator/map.bin
new file mode 100644
index 000000000..8777c1471
--- /dev/null
+++ b/data/maps/BattleTower_Elevator/map.bin
@@ -0,0 +1 @@
+hiijpqqrxyyz\2]2]2]2d2e2e2f2d2e2e2f2d2O2W2f2 \ No newline at end of file
diff --git a/data/maps/BattleTower_Lobby/border.bin b/data/maps/BattleTower_Lobby/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/BattleTower_Lobby/border.bin
Binary files differ
diff --git a/data/maps/BattleTower_Lobby/header.s b/data/maps/BattleTower_Lobby/header.s
new file mode 100644
index 000000000..eb4ab476c
--- /dev/null
+++ b/data/maps/BattleTower_Lobby/header.s
@@ -0,0 +1,15 @@
+BattleTower_Lobby:: @ 8307C34
+ .4byte BattleTower_Lobby_MapAttributes
+ .4byte BattleTower_Lobby_MapEvents
+ .4byte BattleTower_Lobby_MapScripts
+ .4byte 0x0
+ .2byte 384
+ .2byte 265
+ .byte 58
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/BattleTower_Lobby/map.bin b/data/maps/BattleTower_Lobby/map.bin
new file mode 100644
index 000000000..8ff3182a6
--- /dev/null
+++ b/data/maps/BattleTower_Lobby/map.bin
Binary files differ
diff --git a/data/maps/BattleTower_Outside/border.bin b/data/maps/BattleTower_Outside/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/BattleTower_Outside/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/BattleTower_Outside/header.s b/data/maps/BattleTower_Outside/header.s
new file mode 100644
index 000000000..ee7f2feec
--- /dev/null
+++ b/data/maps/BattleTower_Outside/header.s
@@ -0,0 +1,15 @@
+BattleTower_Outside:: @ 8307C18
+ .4byte BattleTower_Outside_MapAttributes
+ .4byte BattleTower_Outside_MapEvents
+ .4byte BattleTower_Outside_MapScripts
+ .4byte 0x0
+ .2byte 384
+ .2byte 266
+ .byte 58
+ .byte 0
+ .byte 0
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/BattleTower_Outside/map.bin b/data/maps/BattleTower_Outside/map.bin
new file mode 100644
index 000000000..6e9f6adb6
--- /dev/null
+++ b/data/maps/BattleTower_Outside/map.bin
@@ -0,0 +1 @@
+ppppppprIJJxyz{bJJ`tp1ppppppppppprIJJxyz{bJJ`tpppppppprk0rIJJxyz{bJJ`s0mtppppprks0jIJJxyz{bJJ`k00mtpppxsqsk00HIJJxyz{bJJ`a22umtppskssHIJJxyz{bJJ`auuqutpssqss0HIJJKLMNOJJ`a2uuquuyssqss00PQRRSTUVWRRhi22uuquuyssks0X2Y2Z2Z2[\]^_Z2Z2p2q22uuquusssqs000w2o22c2d2e2f2g2222222uuquusssqs00w2o2l2m2n22222uut}usssqs0000000t2u2v2000000t}uuqusssq{00000|2}2~200000ut}ut}ss{qs0000000000000t}uquus{sq{000000000ut}t}up{s{|{00000t}uququps{qsq{||||000||||}t}ququpp{{{||000}qququppsqsqqqqt000qqqt|}t}pppsq{||||}q]^0^0^0_q{|||}qquppp{||]^0^0^0_|||}pppp]^0^0^0_pppppppppppppp]^0^0^0^0V0V0V0V0V0V0Wppppppppppppppppp]^0^0^0^0^0^0^0^0^0^0_pppppppppppppppp22pppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp \ No newline at end of file
diff --git a/data/maps/CaveOfOrigin_1F/border.bin b/data/maps/CaveOfOrigin_1F/border.bin
new file mode 100644
index 000000000..f1629c020
--- /dev/null
+++ b/data/maps/CaveOfOrigin_1F/border.bin
@@ -0,0 +1 @@
+3333 \ No newline at end of file
diff --git a/data/maps/CaveOfOrigin_1F/header.s b/data/maps/CaveOfOrigin_1F/header.s
new file mode 100644
index 000000000..c38b0948e
--- /dev/null
+++ b/data/maps/CaveOfOrigin_1F/header.s
@@ -0,0 +1,15 @@
+CaveOfOrigin_1F:: @ 8307198
+ .4byte CaveOfOrigin_1F_MapAttributes
+ .4byte CaveOfOrigin_1F_MapEvents
+ .4byte CaveOfOrigin_1F_MapScripts
+ .4byte 0x0
+ .2byte 386
+ .2byte 159
+ .byte 72
+ .byte 1
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/CaveOfOrigin_1F/map.bin b/data/maps/CaveOfOrigin_1F/map.bin
new file mode 100644
index 000000000..c3c5e7abf
--- /dev/null
+++ b/data/maps/CaveOfOrigin_1F/map.bin
@@ -0,0 +1 @@
+)))))))))))))))))))))"33333333))))3333333 ")))))))*3333()))))) ""33)))))))))))))33  ""3*333)))))))) 33  ""3"3))*33333=333  33  ""3"*33333333333  33  "$""33333333322$ 33  "3"""33333222$333 33  "3"""3333$3333333 3$ "3"""333$33333333( 3 "3"""333 3333333333  3 "3"""333 3333333333  3 "3"""333()333)))  3 "*""33333()))*333   3 ""3""3333333333333   3 ""3"$33333333333$  3 ""3"3$3333;33333$3  3 ""3$3$22289:222$2$ 3 "$3$222222222222$33 $"3"33222223332222$ 3"3$22$33333$222$3332$3$222222222222222222$333 \ No newline at end of file
diff --git a/data/maps/CaveOfOrigin_B1F/border.bin b/data/maps/CaveOfOrigin_B1F/border.bin
new file mode 100644
index 000000000..f1629c020
--- /dev/null
+++ b/data/maps/CaveOfOrigin_B1F/border.bin
@@ -0,0 +1 @@
+3333 \ No newline at end of file
diff --git a/data/maps/CaveOfOrigin_B1F/header.s b/data/maps/CaveOfOrigin_B1F/header.s
new file mode 100644
index 000000000..1c6ba4ac7
--- /dev/null
+++ b/data/maps/CaveOfOrigin_B1F/header.s
@@ -0,0 +1,15 @@
+CaveOfOrigin_B1F:: @ 83071B4
+ .4byte CaveOfOrigin_B1F_MapAttributes
+ .4byte CaveOfOrigin_B1F_MapEvents
+ .4byte CaveOfOrigin_B1F_MapScripts
+ .4byte 0x0
+ .2byte 386
+ .2byte 160
+ .byte 72
+ .byte 1
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/CaveOfOrigin_B1F/map.bin b/data/maps/CaveOfOrigin_B1F/map.bin
new file mode 100644
index 000000000..0ffbdaaa0
--- /dev/null
+++ b/data/maps/CaveOfOrigin_B1F/map.bin
@@ -0,0 +1 @@
+33))))))))))))))))33333"33)))3333))) 33333"33"333())))*333 (33)*33"3))))))))3( 33"33)*3"))))))(3  33"33"333""3333<33( 3  33"3*333""3333333  3  33"3"3333%%333333  3  33"3"333333%23333  3  33"*)))333%333  2 33""3")(333"33   3 33""3""=3( 333""33   3 33""3""33  33*"33   3 33""3""33 ())**33   3 33""3""33())))*333   3 33""3""33333333333  ( 33""3"%333333333% 3  33""3"3%3333333%3 3  33""3%3%2222222%2%3  33"%3%2222222222%32% 33"3%23322222233 33 33%33%22%333333%22%2%333%2222222222222222%3333 \ No newline at end of file
diff --git a/data/maps/CaveOfOrigin_B2F/border.bin b/data/maps/CaveOfOrigin_B2F/border.bin
new file mode 100644
index 000000000..4117717f2
--- /dev/null
+++ b/data/maps/CaveOfOrigin_B2F/border.bin
@@ -0,0 +1 @@
+#### \ No newline at end of file
diff --git a/data/maps/CaveOfOrigin_B2F/header.s b/data/maps/CaveOfOrigin_B2F/header.s
new file mode 100644
index 000000000..79d236a0e
--- /dev/null
+++ b/data/maps/CaveOfOrigin_B2F/header.s
@@ -0,0 +1,15 @@
+CaveOfOrigin_B2F:: @ 83071D0
+ .4byte CaveOfOrigin_B2F_MapAttributes
+ .4byte CaveOfOrigin_B2F_MapEvents
+ .4byte CaveOfOrigin_B2F_MapScripts
+ .4byte 0x0
+ .2byte 386
+ .2byte 161
+ .byte 72
+ .byte 1
+ .byte 6
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/CaveOfOrigin_B2F/map.bin b/data/maps/CaveOfOrigin_B2F/map.bin
new file mode 100644
index 000000000..4c1fd5ab8
--- /dev/null
+++ b/data/maps/CaveOfOrigin_B2F/map.bin
@@ -0,0 +1 @@
+)))))###))))##)"#####()))*))())*# "#))))))))*##()))) "#"##))))))))))##  "#"##"))))))))(#  "*)*"33333333( #  ""#")*333333333  % ""#""333223333   # ""#""33%##%333   %""#""33 ####%33    #""#""<33 #####"33    #""#"%22%#####"33    #"%%2#####)*33    #"#"##"#)))*3333   ("#"##"#"=33333332  # "#"##%"333333%#  # "#"###"%222222%2%( "#"###%22222222%###  "#%222##222222##  %222#%22%######%22% ####%222222222222222% \ No newline at end of file
diff --git a/data/maps/CaveOfOrigin_B3F/border.bin b/data/maps/CaveOfOrigin_B3F/border.bin
new file mode 100644
index 000000000..f1629c020
--- /dev/null
+++ b/data/maps/CaveOfOrigin_B3F/border.bin
@@ -0,0 +1 @@
+3333 \ No newline at end of file
diff --git a/data/maps/CaveOfOrigin_B3F/header.s b/data/maps/CaveOfOrigin_B3F/header.s
new file mode 100644
index 000000000..b1284439c
--- /dev/null
+++ b/data/maps/CaveOfOrigin_B3F/header.s
@@ -0,0 +1,15 @@
+CaveOfOrigin_B3F:: @ 83071EC
+ .4byte CaveOfOrigin_B3F_MapAttributes
+ .4byte CaveOfOrigin_B3F_MapEvents
+ .4byte CaveOfOrigin_B3F_MapScripts
+ .4byte 0x0
+ .2byte 386
+ .2byte 162
+ .byte 72
+ .byte 1
+ .byte 6
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/CaveOfOrigin_B3F/map.bin b/data/maps/CaveOfOrigin_B3F/map.bin
new file mode 100644
index 000000000..ea574b224
--- /dev/null
+++ b/data/maps/CaveOfOrigin_B3F/map.bin
@@ -0,0 +1 @@
+)))))))))))))))))")))3333)))333 ""333())))*333()) ""33)))))))))33  ""33")))))))(3  ""3*"3333333( 3  "$"*333333=33  $ "3"""3322233   3 "3"""3$333$3   3 "3"""3 33333"$  3 "3"""3(3333" 3  3 "3"""33(33* 3  3 "*""333 33"$3 ( ""3""333())* 33 3  ""3"$3<33333 2$3  ""3$"333333  333  ""33"$222222$ 333  ""33$22222222$333  "$2233332222222$ "333$2222$3222222$$2222222222$3333333 \ No newline at end of file
diff --git a/data/maps/CaveOfOrigin_B4F/border.bin b/data/maps/CaveOfOrigin_B4F/border.bin
new file mode 100644
index 000000000..f1629c020
--- /dev/null
+++ b/data/maps/CaveOfOrigin_B4F/border.bin
@@ -0,0 +1 @@
+3333 \ No newline at end of file
diff --git a/data/maps/CaveOfOrigin_B4F/header.s b/data/maps/CaveOfOrigin_B4F/header.s
new file mode 100644
index 000000000..a16f7f230
--- /dev/null
+++ b/data/maps/CaveOfOrigin_B4F/header.s
@@ -0,0 +1,15 @@
+CaveOfOrigin_B4F:: @ 8307208
+ .4byte CaveOfOrigin_B4F_MapAttributes
+ .4byte CaveOfOrigin_B4F_MapEvents
+ .4byte CaveOfOrigin_B4F_MapScripts
+ .4byte 0x0
+ .2byte 0
+ .2byte 163
+ .byte 72
+ .byte 0
+ .byte 6
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/CaveOfOrigin_B4F/map.bin b/data/maps/CaveOfOrigin_B4F/map.bin
new file mode 100644
index 000000000..efec94a9e
--- /dev/null
+++ b/data/maps/CaveOfOrigin_B4F/map.bin
@@ -0,0 +1 @@
+)))))))))))))))))3)))))))))))))3J"3"3333333333333 3 "*3)))))))))3( ""3*))))))@(3  ""3"*333333A3( 3J ""3"333)333  3  ""3""33END33  3  ""3""3ENOND3  3  ""3""3GNOOONF3  3L ""3"3GNOOONF3  3  ""3""3$3?NON>$33 3  "M3"$3$3?N>$33$ 3  ""3$"33$3B3$333 $3  "$3"$2222222$ 3$ "3"3$222222222$33 "3$22223332222$3 "333333$222$333333 $222222232222222$ \ No newline at end of file
diff --git a/data/maps/CaveOfOrigin_Entrance/border.bin b/data/maps/CaveOfOrigin_Entrance/border.bin
new file mode 100644
index 000000000..f1629c020
--- /dev/null
+++ b/data/maps/CaveOfOrigin_Entrance/border.bin
@@ -0,0 +1 @@
+3333 \ No newline at end of file
diff --git a/data/maps/CaveOfOrigin_Entrance/header.s b/data/maps/CaveOfOrigin_Entrance/header.s
new file mode 100644
index 000000000..3aae1a042
--- /dev/null
+++ b/data/maps/CaveOfOrigin_Entrance/header.s
@@ -0,0 +1,15 @@
+CaveOfOrigin_Entrance:: @ 830717C
+ .4byte CaveOfOrigin_Entrance_MapAttributes
+ .4byte CaveOfOrigin_Entrance_MapEvents
+ .4byte CaveOfOrigin_Entrance_MapScripts
+ .4byte 0x0
+ .2byte 386
+ .2byte 158
+ .byte 72
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/CaveOfOrigin_Entrance/map.bin b/data/maps/CaveOfOrigin_Entrance/map.bin
new file mode 100644
index 000000000..4bbffd109
--- /dev/null
+++ b/data/maps/CaveOfOrigin_Entrance/map.bin
@@ -0,0 +1 @@
+3333333333333333333333333))))))3333333)))*)))3())3333")))*333())) 3333"")))-./))3 (333"""3)5637) 3 3 33*""3"33333333  3( 33"3""3"33333333  33  33"3""3"33333333  33  33"3""3"33333333 (3 (**"3"33333333 3 3 3 "3"3"3"33333333 3 3 3 "3"3"3"33333333 3( 3 "3"3"3"33333333 33  3 "3"3"3"33333333 33 ( "*3"3"33333333 33 3  ""33"3"33333333 33 3  ""33"3"33333333 3$3  ""3*3"33333333 3 33  ""3"33"33333333 3 33  ""3"33"333#3333 3 33  "%"33$289:2$3 33  "3"$22233322$33  "3"3333$222$33333  "3$22222222222222$ $222222233322222$ \ No newline at end of file
diff --git a/data/maps/DesertRuins/border.bin b/data/maps/DesertRuins/border.bin
new file mode 100644
index 000000000..c07869a9f
--- /dev/null
+++ b/data/maps/DesertRuins/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/DesertRuins/header.s b/data/maps/DesertRuins/header.s
new file mode 100644
index 000000000..b9c665f95
--- /dev/null
+++ b/data/maps/DesertRuins/header.s
@@ -0,0 +1,15 @@
+DesertRuins:: @ 8306E18
+ .4byte DesertRuins_MapAttributes
+ .4byte DesertRuins_MapEvents
+ .4byte DesertRuins_MapScripts
+ .4byte 0x0
+ .2byte 438
+ .2byte 132
+ .byte 82
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/DesertRuins/map.bin b/data/maps/DesertRuins/map.bin
new file mode 100644
index 000000000..bb87de307
--- /dev/null
+++ b/data/maps/DesertRuins/map.bin
Binary files differ
diff --git a/data/maps/DewfordTown/border.bin b/data/maps/DewfordTown/border.bin
new file mode 100644
index 000000000..281762f5b
--- /dev/null
+++ b/data/maps/DewfordTown/border.bin
@@ -0,0 +1 @@
+CCCC \ No newline at end of file
diff --git a/data/maps/DewfordTown/connections.s b/data/maps/DewfordTown/connections.s
new file mode 100644
index 000000000..68044f3b4
--- /dev/null
+++ b/data/maps/DewfordTown/connections.s
@@ -0,0 +1,8 @@
+DewfordTown_MapConnectionsList:: @ 8308650
+ connection up, -60, Route106, 0
+ connection right, 0, Route107, 0
+
+DewfordTown_MapConnections:: @ 8308668
+ .4byte 0x2
+ .4byte DewfordTown_MapConnectionsList
+
diff --git a/data/maps/DewfordTown/header.s b/data/maps/DewfordTown/header.s
new file mode 100644
index 000000000..15493743c
--- /dev/null
+++ b/data/maps/DewfordTown/header.s
@@ -0,0 +1,15 @@
+DewfordTown:: @ 830557C
+ .4byte DewfordTown_MapAttributes
+ .4byte DewfordTown_MapEvents
+ .4byte DewfordTown_MapScripts
+ .4byte DewfordTown_MapConnections
+ .2byte 427
+ .2byte 12
+ .byte 2
+ .byte 0
+ .byte 2
+ .byte 1
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/DewfordTown/map.bin b/data/maps/DewfordTown/map.bin
new file mode 100644
index 000000000..e8a1154e8
--- /dev/null
+++ b/data/maps/DewfordTown/map.bin
@@ -0,0 +1,2 @@
+C 2 2 2$1$1$1$1$1%pzCCC92C92C$1$1$1$1$1%pzC:CCCC:$1$1$1$1$1%pzC92CC:C92'%&$1$1$1$1$1%pz5CC:C92:C$1$1$1$1$1$1$19292%pzCC92CC92:$1$1$1$1$1$1 2 2%pz:::CCC$1$1$1$1$1$1$1%pyy:::$12222$1$1%ppppyyy$1PQRS$1$1%&%pppppppp$1XYZ[$1$1$1$1$1$1(2)2)2pppppp$1 ab
+$1$1$1$1$101111111$1$1$1$1$1$1$1$1$1$1$1>111=1$1 2 2 2 2$1$1$1$1$1$1$1$1$1$1$1$1$1$1$1$1$1$1$1$1$1222222$1$1$1$1$192$1$1$1$1"####$$1$1$1$1$1%&C$1$1$1$1+,-./2$1$1$1$1$1$192C$1$1$1$134567$1$1$1$1$1$1$1C:92$1$1$1;2<2=>?2$1$1$1$1$1929292:92C92$1$1$1$1$1$1$1$1$1$149292:CCCCC9292929292929292929292CC92CC92 \ No newline at end of file
diff --git a/data/maps/DewfordTown_Gym/border.bin b/data/maps/DewfordTown_Gym/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/DewfordTown_Gym/border.bin
Binary files differ
diff --git a/data/maps/DewfordTown_Gym/header.s b/data/maps/DewfordTown_Gym/header.s
new file mode 100644
index 000000000..6a930f461
--- /dev/null
+++ b/data/maps/DewfordTown_Gym/header.s
@@ -0,0 +1,15 @@
+DewfordTown_Gym:: @ 8305B9C
+ .4byte DewfordTown_Gym_MapAttributes
+ .4byte DewfordTown_Gym_MapEvents
+ .4byte DewfordTown_Gym_MapScripts
+ .4byte 0x0
+ .2byte 364
+ .2byte 65
+ .byte 2
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 1
+
diff --git a/data/maps/DewfordTown_Gym/map.bin b/data/maps/DewfordTown_Gym/map.bin
new file mode 100644
index 000000000..19ea81674
--- /dev/null
+++ b/data/maps/DewfordTown_Gym/map.bin
@@ -0,0 +1,50 @@
+                 
+         
+          
+          )***
+          +292:22;82$222242
+'12222& ,2-2.2/2#2#2-2/2#2
+  +22
+  +2
+  +22
+ +2
+  +22
+  +2
+  +22
+ +2+22
+  72&  +22
+ +2+22
+  
+    +22
+'7252.2.2622&  
++22
+          
+ +22 
+ ,2-2/2$22
+ 
+ +2
+ +2242.2.2.2/2#2-2.2.2& 
+ +2
+ +22
+    +2
+    
+'72& +22
+    +2
+    
+   '722<  +2
+    
+    
+  +2
+    
+ ,2+2
+    
+ ,2+2+2
+    
+'12"2#2#2#2#22252.2/2$2
+    
+ '122222
+   +2
+    
+    +22 
+  '72&    
+  '82$2242&         22 \ No newline at end of file
diff --git a/data/maps/DewfordTown_Hall/border.bin b/data/maps/DewfordTown_Hall/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/DewfordTown_Hall/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/DewfordTown_Hall/header.s b/data/maps/DewfordTown_Hall/header.s
new file mode 100644
index 000000000..8128a4e01
--- /dev/null
+++ b/data/maps/DewfordTown_Hall/header.s
@@ -0,0 +1,15 @@
+DewfordTown_Hall:: @ 8305BB8
+ .4byte DewfordTown_Hall_MapAttributes
+ .4byte DewfordTown_Hall_MapEvents
+ .4byte DewfordTown_Hall_MapScripts
+ .4byte 0x0
+ .2byte 427
+ .2byte 66
+ .byte 2
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/DewfordTown_Hall/map.bin b/data/maps/DewfordTown_Hall/map.bin
new file mode 100644
index 000000000..5fd13209d
--- /dev/null
+++ b/data/maps/DewfordTown_Hall/map.bin
Binary files differ
diff --git a/data/maps/DewfordTown_House1/border.bin b/data/maps/DewfordTown_House1/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/DewfordTown_House1/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/DewfordTown_House1/header.s b/data/maps/DewfordTown_House1/header.s
new file mode 100644
index 000000000..0e0797571
--- /dev/null
+++ b/data/maps/DewfordTown_House1/header.s
@@ -0,0 +1,15 @@
+DewfordTown_House1:: @ 8305B48
+ .4byte DewfordTown_House1_MapAttributes
+ .4byte DewfordTown_House1_MapEvents
+ .4byte DewfordTown_House1_MapScripts
+ .4byte 0x0
+ .2byte 427
+ .2byte 64
+ .byte 2
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/DewfordTown_House1/map.bin b/data/maps/DewfordTown_House1/map.bin
new file mode 100644
index 000000000..1f732ba3f
--- /dev/null
+++ b/data/maps/DewfordTown_House1/map.bin
@@ -0,0 +1 @@
+222!2!2@22222!2)2)2D2NOD2)2)2)2!2)2)2D2VWD2)2)2)2!2)2)2)2)2)2)2)2)2)2 3333333333#33333333 \ No newline at end of file
diff --git a/data/maps/DewfordTown_House2/border.bin b/data/maps/DewfordTown_House2/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/DewfordTown_House2/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/DewfordTown_House2/header.s b/data/maps/DewfordTown_House2/header.s
new file mode 100644
index 000000000..5a18c98fd
--- /dev/null
+++ b/data/maps/DewfordTown_House2/header.s
@@ -0,0 +1,15 @@
+DewfordTown_House2:: @ 8305BD4
+ .4byte DewfordTown_House2_MapAttributes
+ .4byte DewfordTown_House2_MapEvents
+ .4byte DewfordTown_House2_MapScripts
+ .4byte 0x0
+ .2byte 427
+ .2byte 67
+ .byte 2
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/DewfordTown_House2/map.bin b/data/maps/DewfordTown_House2/map.bin
new file mode 100644
index 000000000..6274e4418
--- /dev/null
+++ b/data/maps/DewfordTown_House2/map.bin
@@ -0,0 +1 @@
+22266!2!2!222!2)2D2)2)2)2)2)2)2)2!2)2)2)2)2)2)2N_D2!2)2)2)2)2)2D2VWD2!2)2)2)2)2)2)2)2)2)2 3333333333#33333333 \ No newline at end of file
diff --git a/data/maps/DewfordTown_PokemonCenter_1F/header.s b/data/maps/DewfordTown_PokemonCenter_1F/header.s
new file mode 100644
index 000000000..ddc150385
--- /dev/null
+++ b/data/maps/DewfordTown_PokemonCenter_1F/header.s
@@ -0,0 +1,15 @@
+DewfordTown_PokemonCenter_1F:: @ 8305B64
+ .4byte DewfordTown_PokemonCenter_1F_MapAttributes
+ .4byte DewfordTown_PokemonCenter_1F_MapEvents
+ .4byte DewfordTown_PokemonCenter_1F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 61
+ .byte 2
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/DewfordTown_PokemonCenter_2F/header.s b/data/maps/DewfordTown_PokemonCenter_2F/header.s
new file mode 100644
index 000000000..e3571d5a0
--- /dev/null
+++ b/data/maps/DewfordTown_PokemonCenter_2F/header.s
@@ -0,0 +1,15 @@
+DewfordTown_PokemonCenter_2F:: @ 8305B80
+ .4byte DewfordTown_PokemonCenter_2F_MapAttributes
+ .4byte DewfordTown_PokemonCenter_2F_MapEvents
+ .4byte DewfordTown_PokemonCenter_2F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 62
+ .byte 2
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/DoubleBattleColosseum/border.bin b/data/maps/DoubleBattleColosseum/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/DoubleBattleColosseum/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/DoubleBattleColosseum/header.s b/data/maps/DoubleBattleColosseum/header.s
new file mode 100644
index 000000000..8b34c1419
--- /dev/null
+++ b/data/maps/DoubleBattleColosseum/header.s
@@ -0,0 +1,15 @@
+DoubleBattleColosseum:: @ 83079CC
+ .4byte DoubleBattleColosseum_MapAttributes
+ .4byte DoubleBattleColosseum_MapEvents
+ .4byte DoubleBattleColosseum_MapScripts
+ .4byte 0x0
+ .2byte 422
+ .2byte 225
+ .byte 87
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 8
+
diff --git a/data/maps/DoubleBattleColosseum/map.bin b/data/maps/DoubleBattleColosseum/map.bin
new file mode 100644
index 000000000..77606e818
--- /dev/null
+++ b/data/maps/DoubleBattleColosseum/map.bin
@@ -0,0 +1 @@
+hijjjkllmjjjoOpqrrrstturrrwWxyzzz{||}zzz_22L2M22222M2N2222U2`2U2U2b2c2U2U2a2U222U2T2U2U2d2e2U2U2V2U222U2`2U2U2f2g2U2U2a2U222U2\2]2]2]2]2]2]2^2U22!2!2!2!2 \ No newline at end of file
diff --git a/data/maps/EverGrandeCity/border.bin b/data/maps/EverGrandeCity/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/EverGrandeCity/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/EverGrandeCity/connections.s b/data/maps/EverGrandeCity/connections.s
new file mode 100644
index 000000000..538a910a8
--- /dev/null
+++ b/data/maps/EverGrandeCity/connections.s
@@ -0,0 +1,7 @@
+EverGrandeCity_MapConnectionsList:: @ 8308808
+ connection left, 40, Route128, 0
+
+EverGrandeCity_MapConnections:: @ 8308814
+ .4byte 0x1
+ .4byte EverGrandeCity_MapConnectionsList
+
diff --git a/data/maps/EverGrandeCity/header.s b/data/maps/EverGrandeCity/header.s
new file mode 100644
index 000000000..da6f2d8e4
--- /dev/null
+++ b/data/maps/EverGrandeCity/header.s
@@ -0,0 +1,15 @@
+EverGrandeCity:: @ 8305528
+ .4byte EverGrandeCity_MapAttributes
+ .4byte EverGrandeCity_MapEvents
+ .4byte EverGrandeCity_MapScripts
+ .4byte EverGrandeCity_MapConnections
+ .2byte 422
+ .2byte 9
+ .byte 15
+ .byte 0
+ .byte 2
+ .byte 2
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/EverGrandeCity/map.bin b/data/maps/EverGrandeCity/map.bin
new file mode 100644
index 000000000..33b271d5d
--- /dev/null
+++ b/data/maps/EverGrandeCity/map.bin
Binary files differ
diff --git a/data/maps/EverGrandeCity_ChampionsRoom/border.bin b/data/maps/EverGrandeCity_ChampionsRoom/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/EverGrandeCity_ChampionsRoom/border.bin
Binary files differ
diff --git a/data/maps/EverGrandeCity_ChampionsRoom/header.s b/data/maps/EverGrandeCity_ChampionsRoom/header.s
new file mode 100644
index 000000000..1acd3ddce
--- /dev/null
+++ b/data/maps/EverGrandeCity_ChampionsRoom/header.s
@@ -0,0 +1,15 @@
+EverGrandeCity_ChampionsRoom:: @ 8306B08
+ .4byte EverGrandeCity_ChampionsRoom_MapAttributes
+ .4byte EverGrandeCity_ChampionsRoom_MapEvents
+ .4byte EverGrandeCity_ChampionsRoom_MapScripts
+ .4byte 0x0
+ .2byte 429
+ .2byte 116
+ .byte 15
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/EverGrandeCity_ChampionsRoom/map.bin b/data/maps/EverGrandeCity_ChampionsRoom/map.bin
new file mode 100644
index 000000000..a234307b5
--- /dev/null
+++ b/data/maps/EverGrandeCity_ChampionsRoom/map.bin
Binary files differ
diff --git a/data/maps/EverGrandeCity_Corridor1/border.bin b/data/maps/EverGrandeCity_Corridor1/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/EverGrandeCity_Corridor1/border.bin
Binary files differ
diff --git a/data/maps/EverGrandeCity_Corridor1/header.s b/data/maps/EverGrandeCity_Corridor1/header.s
new file mode 100644
index 000000000..b765c17f1
--- /dev/null
+++ b/data/maps/EverGrandeCity_Corridor1/header.s
@@ -0,0 +1,15 @@
+EverGrandeCity_Corridor1:: @ 8306B24
+ .4byte EverGrandeCity_Corridor1_MapAttributes
+ .4byte EverGrandeCity_Corridor1_MapEvents
+ .4byte EverGrandeCity_Corridor1_MapScripts
+ .4byte 0x0
+ .2byte 429
+ .2byte 117
+ .byte 15
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/EverGrandeCity_Corridor1/map.bin b/data/maps/EverGrandeCity_Corridor1/map.bin
new file mode 100644
index 000000000..75812b238
--- /dev/null
+++ b/data/maps/EverGrandeCity_Corridor1/map.bin
@@ -0,0 +1 @@
+DHIHI E HIHI2222222222222222222222222222222222222222222222 \ No newline at end of file
diff --git a/data/maps/EverGrandeCity_Corridor2/header.s b/data/maps/EverGrandeCity_Corridor2/header.s
new file mode 100644
index 000000000..d5cf8d773
--- /dev/null
+++ b/data/maps/EverGrandeCity_Corridor2/header.s
@@ -0,0 +1,15 @@
+EverGrandeCity_Corridor2:: @ 8306B40
+ .4byte EverGrandeCity_Corridor2_MapAttributes
+ .4byte EverGrandeCity_Corridor2_MapEvents
+ .4byte EverGrandeCity_Corridor2_MapScripts
+ .4byte 0x0
+ .2byte 429
+ .2byte 117
+ .byte 15
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/EverGrandeCity_Corridor3/header.s b/data/maps/EverGrandeCity_Corridor3/header.s
new file mode 100644
index 000000000..8c51e8ec8
--- /dev/null
+++ b/data/maps/EverGrandeCity_Corridor3/header.s
@@ -0,0 +1,15 @@
+EverGrandeCity_Corridor3:: @ 8306B5C
+ .4byte EverGrandeCity_Corridor3_MapAttributes
+ .4byte EverGrandeCity_Corridor3_MapEvents
+ .4byte EverGrandeCity_Corridor3_MapScripts
+ .4byte 0x0
+ .2byte 429
+ .2byte 117
+ .byte 15
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/EverGrandeCity_Corridor4/border.bin b/data/maps/EverGrandeCity_Corridor4/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/EverGrandeCity_Corridor4/border.bin
Binary files differ
diff --git a/data/maps/EverGrandeCity_Corridor4/header.s b/data/maps/EverGrandeCity_Corridor4/header.s
new file mode 100644
index 000000000..43bec825d
--- /dev/null
+++ b/data/maps/EverGrandeCity_Corridor4/header.s
@@ -0,0 +1,15 @@
+EverGrandeCity_Corridor4:: @ 8306B78
+ .4byte EverGrandeCity_Corridor4_MapAttributes
+ .4byte EverGrandeCity_Corridor4_MapEvents
+ .4byte EverGrandeCity_Corridor4_MapScripts
+ .4byte 0x0
+ .2byte 429
+ .2byte 316
+ .byte 15
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/EverGrandeCity_Corridor4/map.bin b/data/maps/EverGrandeCity_Corridor4/map.bin
new file mode 100644
index 000000000..580ae095a
--- /dev/null
+++ b/data/maps/EverGrandeCity_Corridor4/map.bin
@@ -0,0 +1 @@
+D     E     2222222222222222222222222222J222J222J222J222J222J222222J222J222222222J222J222222222222J222J222222222222222222222222222222 \ No newline at end of file
diff --git a/data/maps/EverGrandeCity_Corridor5/header.s b/data/maps/EverGrandeCity_Corridor5/header.s
new file mode 100644
index 000000000..70881a526
--- /dev/null
+++ b/data/maps/EverGrandeCity_Corridor5/header.s
@@ -0,0 +1,15 @@
+EverGrandeCity_Corridor5:: @ 8306B94
+ .4byte EverGrandeCity_Corridor5_MapAttributes
+ .4byte EverGrandeCity_Corridor5_MapEvents
+ .4byte EverGrandeCity_Corridor5_MapScripts
+ .4byte 0x0
+ .2byte 429
+ .2byte 117
+ .byte 15
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/EverGrandeCity_DrakesRoom/border.bin b/data/maps/EverGrandeCity_DrakesRoom/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/EverGrandeCity_DrakesRoom/border.bin
Binary files differ
diff --git a/data/maps/EverGrandeCity_DrakesRoom/header.s b/data/maps/EverGrandeCity_DrakesRoom/header.s
new file mode 100644
index 000000000..a73b38430
--- /dev/null
+++ b/data/maps/EverGrandeCity_DrakesRoom/header.s
@@ -0,0 +1,15 @@
+EverGrandeCity_DrakesRoom:: @ 8306AEC
+ .4byte EverGrandeCity_DrakesRoom_MapAttributes
+ .4byte EverGrandeCity_DrakesRoom_MapEvents
+ .4byte EverGrandeCity_DrakesRoom_MapScripts
+ .4byte 0x0
+ .2byte 429
+ .2byte 115
+ .byte 15
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 7
+
diff --git a/data/maps/EverGrandeCity_DrakesRoom/map.bin b/data/maps/EverGrandeCity_DrakesRoom/map.bin
new file mode 100644
index 000000000..3b5248d98
--- /dev/null
+++ b/data/maps/EverGrandeCity_DrakesRoom/map.bin
@@ -0,0 +1,2 @@
+      
+      2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222HIHI222HIHI \ No newline at end of file
diff --git a/data/maps/EverGrandeCity_GlaciasRoom/border.bin b/data/maps/EverGrandeCity_GlaciasRoom/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/EverGrandeCity_GlaciasRoom/border.bin
Binary files differ
diff --git a/data/maps/EverGrandeCity_GlaciasRoom/header.s b/data/maps/EverGrandeCity_GlaciasRoom/header.s
new file mode 100644
index 000000000..2cbba4f16
--- /dev/null
+++ b/data/maps/EverGrandeCity_GlaciasRoom/header.s
@@ -0,0 +1,15 @@
+EverGrandeCity_GlaciasRoom:: @ 8306AD0
+ .4byte EverGrandeCity_GlaciasRoom_MapAttributes
+ .4byte EverGrandeCity_GlaciasRoom_MapEvents
+ .4byte EverGrandeCity_GlaciasRoom_MapScripts
+ .4byte 0x0
+ .2byte 429
+ .2byte 114
+ .byte 15
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 6
+
diff --git a/data/maps/EverGrandeCity_GlaciasRoom/map.bin b/data/maps/EverGrandeCity_GlaciasRoom/map.bin
new file mode 100644
index 000000000..2d7db7377
--- /dev/null
+++ b/data/maps/EverGrandeCity_GlaciasRoom/map.bin
@@ -0,0 +1,2 @@
+      
+      r2r2r2r2r2222r2r2r2r2r2v22p2s2s2s2t222wu}~22x2y2z2{2|222}222222222q22x2222|22222x2222|222222222222222222222222222222222222222222222HIHI222HIHI \ No newline at end of file
diff --git a/data/maps/EverGrandeCity_HallOfFame/border.bin b/data/maps/EverGrandeCity_HallOfFame/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/EverGrandeCity_HallOfFame/border.bin
Binary files differ
diff --git a/data/maps/EverGrandeCity_HallOfFame/header.s b/data/maps/EverGrandeCity_HallOfFame/header.s
new file mode 100644
index 000000000..8cebf0ebe
--- /dev/null
+++ b/data/maps/EverGrandeCity_HallOfFame/header.s
@@ -0,0 +1,15 @@
+EverGrandeCity_HallOfFame:: @ 8306BCC
+ .4byte EverGrandeCity_HallOfFame_MapAttributes
+ .4byte EverGrandeCity_HallOfFame_MapEvents
+ .4byte EverGrandeCity_HallOfFame_MapScripts
+ .4byte 0x0
+ .2byte 447
+ .2byte 299
+ .byte 15
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/EverGrandeCity_HallOfFame/map.bin b/data/maps/EverGrandeCity_HallOfFame/map.bin
new file mode 100644
index 000000000..1df9e4804
--- /dev/null
+++ b/data/maps/EverGrandeCity_HallOfFame/map.bin
@@ -0,0 +1 @@
+2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222262226 \ No newline at end of file
diff --git a/data/maps/EverGrandeCity_PhoebesRoom/border.bin b/data/maps/EverGrandeCity_PhoebesRoom/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/EverGrandeCity_PhoebesRoom/border.bin
Binary files differ
diff --git a/data/maps/EverGrandeCity_PhoebesRoom/header.s b/data/maps/EverGrandeCity_PhoebesRoom/header.s
new file mode 100644
index 000000000..e30513083
--- /dev/null
+++ b/data/maps/EverGrandeCity_PhoebesRoom/header.s
@@ -0,0 +1,15 @@
+EverGrandeCity_PhoebesRoom:: @ 8306AB4
+ .4byte EverGrandeCity_PhoebesRoom_MapAttributes
+ .4byte EverGrandeCity_PhoebesRoom_MapEvents
+ .4byte EverGrandeCity_PhoebesRoom_MapScripts
+ .4byte 0x0
+ .2byte 429
+ .2byte 113
+ .byte 15
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 5
+
diff --git a/data/maps/EverGrandeCity_PhoebesRoom/map.bin b/data/maps/EverGrandeCity_PhoebesRoom/map.bin
new file mode 100644
index 000000000..2e75b706c
--- /dev/null
+++ b/data/maps/EverGrandeCity_PhoebesRoom/map.bin
@@ -0,0 +1,2 @@
+      
+      B2B2B2B2B2X2X2X2B2B2B2B2B2EF\2\2@2C2C2C2D2\2\2GAMN\2\2H2I2J2K2L2\2\2O@UV\2\2P2Q2R2S2T2\2\2WA]^\2\2H2Y2Z2[2L2\2\2WBef\2\2H2a2b2c2L2\2\2gCm2n2\2\2h2k2k2k2l2\2\2o2`2j2i2i2i2i2i2i2i2i2i2i2i2i22222222222222\2\2\2HIHId2d2d2HIHI \ No newline at end of file
diff --git a/data/maps/EverGrandeCity_PokemonCenter_1F/header.s b/data/maps/EverGrandeCity_PokemonCenter_1F/header.s
new file mode 100644
index 000000000..20f21a1f5
--- /dev/null
+++ b/data/maps/EverGrandeCity_PokemonCenter_1F/header.s
@@ -0,0 +1,15 @@
+EverGrandeCity_PokemonCenter_1F:: @ 8306BE8
+ .4byte EverGrandeCity_PokemonCenter_1F_MapAttributes
+ .4byte EverGrandeCity_PokemonCenter_1F_MapEvents
+ .4byte EverGrandeCity_PokemonCenter_1F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 61
+ .byte 15
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/EverGrandeCity_PokemonCenter_2F/header.s b/data/maps/EverGrandeCity_PokemonCenter_2F/header.s
new file mode 100644
index 000000000..ca689dff7
--- /dev/null
+++ b/data/maps/EverGrandeCity_PokemonCenter_2F/header.s
@@ -0,0 +1,15 @@
+EverGrandeCity_PokemonCenter_2F:: @ 8306C04
+ .4byte EverGrandeCity_PokemonCenter_2F_MapAttributes
+ .4byte EverGrandeCity_PokemonCenter_2F_MapEvents
+ .4byte EverGrandeCity_PokemonCenter_2F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 62
+ .byte 15
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/EverGrandeCity_PokemonLeague/border.bin b/data/maps/EverGrandeCity_PokemonLeague/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/EverGrandeCity_PokemonLeague/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/EverGrandeCity_PokemonLeague/header.s b/data/maps/EverGrandeCity_PokemonLeague/header.s
new file mode 100644
index 000000000..fa685d20d
--- /dev/null
+++ b/data/maps/EverGrandeCity_PokemonLeague/header.s
@@ -0,0 +1,15 @@
+EverGrandeCity_PokemonLeague:: @ 8306BB0
+ .4byte EverGrandeCity_PokemonLeague_MapAttributes
+ .4byte EverGrandeCity_PokemonLeague_MapEvents
+ .4byte EverGrandeCity_PokemonLeague_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 271
+ .byte 15
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/EverGrandeCity_PokemonLeague/map.bin b/data/maps/EverGrandeCity_PokemonLeague/map.bin
new file mode 100644
index 000000000..d2acdf2dd
--- /dev/null
+++ b/data/maps/EverGrandeCity_PokemonLeague/map.bin
@@ -0,0 +1,2 @@
+  JK        "#RSI22Hs2*+2[Q$22222222P}2)2t2u2!!!!Y<2@2@2@2@2@2@2@2X!!! 222222%2@2@20232@2@2@2g2222D2 2@2@2@2@2@2@2@2v2{2{2w2@2@2@2@2@2@2'22^222@2@2@202{222{232@2@2@2@2^2
+2f22@2@2@282|222|2;2@2@2@2&2f 2@2&2=>@2@2@2~2|2|22@2@2@2=>@2'2 2@242EF&2@2@2@2A2B2@2@2@2@2EF42'2 2@2@2@242@2@2@2@2@2@2@2@2@22&242@2'2(22@2@2@2@2@2@222@2@2@2@2@2@2@27 \ No newline at end of file
diff --git a/data/maps/EverGrandeCity_SidneysRoom/border.bin b/data/maps/EverGrandeCity_SidneysRoom/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/EverGrandeCity_SidneysRoom/border.bin
Binary files differ
diff --git a/data/maps/EverGrandeCity_SidneysRoom/header.s b/data/maps/EverGrandeCity_SidneysRoom/header.s
new file mode 100644
index 000000000..508ff9984
--- /dev/null
+++ b/data/maps/EverGrandeCity_SidneysRoom/header.s
@@ -0,0 +1,15 @@
+EverGrandeCity_SidneysRoom:: @ 8306A98
+ .4byte EverGrandeCity_SidneysRoom_MapAttributes
+ .4byte EverGrandeCity_SidneysRoom_MapEvents
+ .4byte EverGrandeCity_SidneysRoom_MapScripts
+ .4byte 0x0
+ .2byte 429
+ .2byte 112
+ .byte 15
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 4
+
diff --git a/data/maps/EverGrandeCity_SidneysRoom/map.bin b/data/maps/EverGrandeCity_SidneysRoom/map.bin
new file mode 100644
index 000000000..ebca00c5c
--- /dev/null
+++ b/data/maps/EverGrandeCity_SidneysRoom/map.bin
@@ -0,0 +1,2 @@
+      
+      22222(2(2(222222>,2,222222,2,2,2,222222,2,2%&,2,2 2!2"2#2$2,2,2'%?:,2,22)2*2+22,2,2'?-.,2,221222322,2,2/-=262,2,282;2;2;2<2,2,27252922222222222222222222222222,2,2,2HIHI424242HIHI \ No newline at end of file
diff --git a/data/maps/FallarborTown/border.bin b/data/maps/FallarborTown/border.bin
new file mode 100644
index 000000000..23e2a92e5
--- /dev/null
+++ b/data/maps/FallarborTown/border.bin
@@ -0,0 +1 @@
+klst \ No newline at end of file
diff --git a/data/maps/FallarborTown/connections.s b/data/maps/FallarborTown/connections.s
new file mode 100644
index 000000000..3c2c3ef20
--- /dev/null
+++ b/data/maps/FallarborTown/connections.s
@@ -0,0 +1,8 @@
+FallarborTown_MapConnectionsList:: @ 8308684
+ connection left, 0, Route114, 0
+ connection right, 0, Route113, 0
+
+FallarborTown_MapConnections:: @ 830869C
+ .4byte 0x2
+ .4byte FallarborTown_MapConnectionsList
+
diff --git a/data/maps/FallarborTown/header.s b/data/maps/FallarborTown/header.s
new file mode 100644
index 000000000..7c447a1f8
--- /dev/null
+++ b/data/maps/FallarborTown/header.s
@@ -0,0 +1,15 @@
+FallarborTown:: @ 83055B4
+ .4byte FallarborTown_MapAttributes
+ .4byte FallarborTown_MapEvents
+ .4byte FallarborTown_MapScripts
+ .4byte FallarborTown_MapConnections
+ .2byte 437
+ .2byte 14
+ .byte 4
+ .byte 0
+ .byte 2
+ .byte 1
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/FallarborTown/map.bin b/data/maps/FallarborTown/map.bin
new file mode 100644
index 000000000..08f68b6ea
--- /dev/null
+++ b/data/maps/FallarborTown/map.bin
Binary files differ
diff --git a/data/maps/FallarborTown_ContestHall/border.bin b/data/maps/FallarborTown_ContestHall/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/FallarborTown_ContestHall/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/FallarborTown_ContestHall/header.s b/data/maps/FallarborTown_ContestHall/header.s
new file mode 100644
index 000000000..7df9309a3
--- /dev/null
+++ b/data/maps/FallarborTown_ContestHall/header.s
@@ -0,0 +1,15 @@
+FallarborTown_ContestHall:: @ 8305CEC
+ .4byte FallarborTown_ContestHall_MapAttributes
+ .4byte FallarborTown_ContestHall_MapEvents
+ .4byte FallarborTown_ContestHall_MapScripts
+ .4byte 0x0
+ .2byte 452
+ .2byte 73
+ .byte 4
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/FallarborTown_ContestHall/map.bin b/data/maps/FallarborTown_ContestHall/map.bin
new file mode 100644
index 000000000..d65e7c489
--- /dev/null
+++ b/data/maps/FallarborTown_ContestHall/map.bin
@@ -0,0 +1 @@
+/////////////////////nnnbbbbbbbbbbbbbbbbbbbbb 2!2!2!2!2!2!2!2!2!2!2!2!2!2!2!2!2!2!2!2"2(2`2`2              f2`2*2(2`2`2$%2%2%2%2%2%2%2%2%2%2%2%2%2&f2`2*2(2`2`2$%2%2hiiiiiiij%2%2&f2`2*2(2`2`2$%2%2pq2q2q2q2q2o2q2r%2%2&f2`2*2(2`2`2$%2%2pq2q2q22qwBqr%2%2&f2`2*2(2`2`2$%2%2pq2q2q22q2qq2r%2%2&f2`2*2(2`2`2$%2%2pq2q2q2q2q2q2q2r%2%2&f2`2*2(2`2`2$%2%2xyyk2l2m2yyz%2%2&f2`2*2(2`2`222222s2t2u222222f2`2*2(2`2`26s2t2u26f2`2*2(2`2`22_2_2_2_2_2_2_2_2_2_2_2_2_2_2g2`2*2(2`2J2`2`2J2`2`2`2`2`2`2`2`2`2J2`2`2J2`2*2(2`2R6`2`2R6`2`2`2`2`2`2`2R6`2`2R6`2*2 \ No newline at end of file
diff --git a/data/maps/FallarborTown_ContestLobby/border.bin b/data/maps/FallarborTown_ContestLobby/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/FallarborTown_ContestLobby/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/FallarborTown_ContestLobby/header.s b/data/maps/FallarborTown_ContestLobby/header.s
new file mode 100644
index 000000000..bafc53026
--- /dev/null
+++ b/data/maps/FallarborTown_ContestLobby/header.s
@@ -0,0 +1,15 @@
+FallarborTown_ContestLobby:: @ 8305CD0
+ .4byte FallarborTown_ContestLobby_MapAttributes
+ .4byte FallarborTown_ContestLobby_MapEvents
+ .4byte FallarborTown_ContestLobby_MapScripts
+ .4byte 0x0
+ .2byte 452
+ .2byte 72
+ .byte 4
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/FallarborTown_ContestLobby/map.bin b/data/maps/FallarborTown_ContestLobby/map.bin
new file mode 100644
index 000000000..87407546a
--- /dev/null
+++ b/data/maps/FallarborTown_ContestLobby/map.bin
@@ -0,0 +1 @@
+[\]NMcdebVbbbbTb 2!2!2222U2!2!2!2!2!2"2(2`2`2f2`2`2`2`292(2`2`22_2_2_2_2g2`2`2`2`2`2A2(2`2`2`2`2`2`2`2`2`2`2`2`292(2`2`2`2`2`2`2`2`2`2`2`2A2 \ No newline at end of file
diff --git a/data/maps/FallarborTown_House1/header.s b/data/maps/FallarborTown_House1/header.s
new file mode 100644
index 000000000..aa043f1a2
--- /dev/null
+++ b/data/maps/FallarborTown_House1/header.s
@@ -0,0 +1,15 @@
+FallarborTown_House1:: @ 8305D40
+ .4byte FallarborTown_House1_MapAttributes
+ .4byte FallarborTown_House1_MapEvents
+ .4byte FallarborTown_House1_MapScripts
+ .4byte 0x0
+ .2byte 437
+ .2byte 59
+ .byte 4
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/FallarborTown_House2/header.s b/data/maps/FallarborTown_House2/header.s
new file mode 100644
index 000000000..9058cb23f
--- /dev/null
+++ b/data/maps/FallarborTown_House2/header.s
@@ -0,0 +1,15 @@
+FallarborTown_House2:: @ 8305D5C
+ .4byte FallarborTown_House2_MapAttributes
+ .4byte FallarborTown_House2_MapEvents
+ .4byte FallarborTown_House2_MapScripts
+ .4byte 0x0
+ .2byte 437
+ .2byte 60
+ .byte 4
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/FallarborTown_Mart/header.s b/data/maps/FallarborTown_Mart/header.s
new file mode 100644
index 000000000..43ea0cffa
--- /dev/null
+++ b/data/maps/FallarborTown_Mart/header.s
@@ -0,0 +1,15 @@
+FallarborTown_Mart:: @ 8305CB4
+ .4byte FallarborTown_Mart_MapAttributes
+ .4byte FallarborTown_Mart_MapEvents
+ .4byte FallarborTown_Mart_MapScripts
+ .4byte 0x0
+ .2byte 404
+ .2byte 63
+ .byte 4
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/FallarborTown_PokemonCenter_1F/header.s b/data/maps/FallarborTown_PokemonCenter_1F/header.s
new file mode 100644
index 000000000..2f0b0cdad
--- /dev/null
+++ b/data/maps/FallarborTown_PokemonCenter_1F/header.s
@@ -0,0 +1,15 @@
+FallarborTown_PokemonCenter_1F:: @ 8305D08
+ .4byte FallarborTown_PokemonCenter_1F_MapAttributes
+ .4byte FallarborTown_PokemonCenter_1F_MapEvents
+ .4byte FallarborTown_PokemonCenter_1F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 61
+ .byte 4
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/FallarborTown_PokemonCenter_2F/header.s b/data/maps/FallarborTown_PokemonCenter_2F/header.s
new file mode 100644
index 000000000..abdac24dd
--- /dev/null
+++ b/data/maps/FallarborTown_PokemonCenter_2F/header.s
@@ -0,0 +1,15 @@
+FallarborTown_PokemonCenter_2F:: @ 8305D24
+ .4byte FallarborTown_PokemonCenter_2F_MapAttributes
+ .4byte FallarborTown_PokemonCenter_2F_MapEvents
+ .4byte FallarborTown_PokemonCenter_2F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 62
+ .byte 4
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/FieryPath/border.bin b/data/maps/FieryPath/border.bin
new file mode 100644
index 000000000..9ae2c2126
--- /dev/null
+++ b/data/maps/FieryPath/border.bin
@@ -0,0 +1 @@
+qqqq \ No newline at end of file
diff --git a/data/maps/FieryPath/header.s b/data/maps/FieryPath/header.s
new file mode 100644
index 000000000..95ec9f2e1
--- /dev/null
+++ b/data/maps/FieryPath/header.s
@@ -0,0 +1,15 @@
+FieryPath:: @ 8306EF8
+ .4byte FieryPath_MapAttributes
+ .4byte FieryPath_MapEvents
+ .4byte FieryPath_MapScripts
+ .4byte 0x0
+ .2byte 366
+ .2byte 294
+ .byte 74
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/FieryPath/map.bin b/data/maps/FieryPath/map.bin
new file mode 100644
index 000000000..5928fb173
--- /dev/null
+++ b/data/maps/FieryPath/map.bin
@@ -0,0 +1,10 @@
+qqqq{ttttttt|qqqq{ttttttttttt|qqqqqqqqqr{ttt|qpqqqqr{tttttttt|qpqqqqqqqq{z{333|pqqq{z33333333|pqqqqqqqqrq33333pqqqrq333333333pqqqqqqq{zq33333pqqqr{3333333 33pqqqqqq{zq3
+   ~pqqqr3333
+   ~~qqqqqqr{tt3h   ~qqqr333
+pqqqqqqqqqqqqqrr3333pqqqqqqr333pqqqqqqqqqqqqqrr3
+ 3pqqqqqqqr333pqqqqqqqqqqqqqrr33xttttt|qr333pqqqqqqqqqqqqqrr33ttttt|pqr333pqqqqqqqqqqqqqrr3333333333pqr333pqqqqqqqqqqqqqrr3
+      3
+~xtz333pqqqqqqqqqqqqqrr3qqq 3qqqq333pqqqqqqqqqqqqqrr3h  jr33tttt333x|qqqqqqqqqqqqrr3pqrr33333333333pqqqqqqqqqqqqrr3pqqrr333
+    333qpqqqqqqqqqqqqrr3pqqr   ~h j333|x|qqqqqqqqqqrr3pqq     ~qr3333qxtttt|qqqqq{zr3xt|qqqqqqqqr3333tttt|pqqqqqr{3t|xt|qqqqqqr 33333333|pqqqqqrr33 73|x|qqqqqr333333333pqqqqqrr33333|qpqqqqqj333333333pqqqqqr   333qpqqqqqqr     3333pqqqqq  jr333qpqqqqqqiiiij3333pqqqqqqqqrr33
+~qpqqqqqqqqqqqr3333pqqqqqqqqrr3
+~qqpqqqqqqqqqqqr 333pqqqqqqqrr3tt|pqqqqqqqqqqqrq333pqqqqqqqqrr3333ppqqqqqqqqqqqj333pqqqqqqq{z 333pxt|qqqqqqqqqqr333pqqqqqqqr{tz333xt|pqqqqqqqqqqr333pqqqqqqqrr 33333 ppqqqqqqqqqqr333pqqqqqqqrr3333333ppqqqqqqqqqqr333pqqqqqqqrr3333333ppqqqqqqqqqqr333pqqqqqqqrr3333333ppqqqqqqqqqqr333pqqqqqqqr       ~pqqqqqqqqqqr333pqqqqqqqiiiiiiiii~qqqqqqqqqqr3 33pqqqqqqqqqqqqqqqqqqqqqqqqqqqq ~~qqqqq \ No newline at end of file
diff --git a/data/maps/FortreeCity/border.bin b/data/maps/FortreeCity/border.bin
new file mode 100644
index 000000000..addb5d6ce
--- /dev/null
+++ b/data/maps/FortreeCity/border.bin
Binary files differ
diff --git a/data/maps/FortreeCity/connections.s b/data/maps/FortreeCity/connections.s
new file mode 100644
index 000000000..bdd6f068e
--- /dev/null
+++ b/data/maps/FortreeCity/connections.s
@@ -0,0 +1,8 @@
+FortreeCity_MapConnectionsList:: @ 8308794
+ connection left, 0, Route119, 0
+ connection right, 0, Route120, 0
+
+FortreeCity_MapConnections:: @ 83087AC
+ .4byte 0x2
+ .4byte FortreeCity_MapConnectionsList
+
diff --git a/data/maps/FortreeCity/header.s b/data/maps/FortreeCity/header.s
new file mode 100644
index 000000000..2cf17c277
--- /dev/null
+++ b/data/maps/FortreeCity/header.s
@@ -0,0 +1,15 @@
+FortreeCity:: @ 83054B8
+ .4byte FortreeCity_MapAttributes
+ .4byte FortreeCity_MapEvents
+ .4byte FortreeCity_MapScripts
+ .4byte FortreeCity_MapConnections
+ .2byte 382
+ .2byte 5
+ .byte 11
+ .byte 0
+ .byte 2
+ .byte 2
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/FortreeCity/map.bin b/data/maps/FortreeCity/map.bin
new file mode 100644
index 000000000..a2aa40e98
--- /dev/null
+++ b/data/maps/FortreeCity/map.bin
@@ -0,0 +1 @@
+$%&HIJ$%&*$%&$%&+,-./PQR+,-./**+,-./+,-./34567D\DHIJK3456734567**34567*3<B>B>B7PQRS3<B=B>B?BVBVB;B<B>B>B?BVBVBVB;B<B=B>B?BVBVB;B<B>B>B7XYZ[CFEFGDDCFFFGDDDCFEFGDDCFEFG0`abcMHIJMHIJM00000X2Y2Y2SSa2PQRcddddea2PQRa2SSS00000000`2a2a2a2a2a2Aa2SAa2a2a2b2000000000h2a2a2a2a2sS`2U2sa2a2a2j200000000000h2a2a2a20`2]*Sa2a2j20000000(0)0)0+00`2a2K2$%&**0111`2a2a2a2a20$%&01230`2K2+,-./0X2Y2Y2Y2Y2a2K2*Sa2a2a2+,-./89:;0`234567K2K2K2K2K2K20h2i2i234567`ABCX2a23<B=B>B?BVBVBVBVBVBVBVBVBVBVBVBVBVBVBVBNNNNVB;B<B>B>B7000X2a2a2SCFEFGDDDDDDDDDDDDDDD00X2Y2DCFEF6GX2Y2a2a2a2a2SSMHIJL2Y2a2a2S6S6S6MK2K2a2a2a2a2a2a2a2PQRHIJK2a2a2a2a2a2a2K2K2K2a2a2a2a2D\DPQRK2K2a2a2a2K2**K2K2K2K2*D\DK2K2K2 \ No newline at end of file
diff --git a/data/maps/FortreeCity_DecorationShop/border.bin b/data/maps/FortreeCity_DecorationShop/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/FortreeCity_DecorationShop/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/FortreeCity_DecorationShop/header.s b/data/maps/FortreeCity_DecorationShop/header.s
new file mode 100644
index 000000000..be7e2af10
--- /dev/null
+++ b/data/maps/FortreeCity_DecorationShop/header.s
@@ -0,0 +1,15 @@
+FortreeCity_DecorationShop:: @ 8306504
+ .4byte FortreeCity_DecorationShop_MapAttributes
+ .4byte FortreeCity_DecorationShop_MapEvents
+ .4byte FortreeCity_DecorationShop_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 256
+ .byte 11
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/FortreeCity_DecorationShop/map.bin b/data/maps/FortreeCity_DecorationShop/map.bin
new file mode 100644
index 000000000..6ca8b4e61
--- /dev/null
+++ b/data/maps/FortreeCity_DecorationShop/map.bin
@@ -0,0 +1 @@
+333333333333733337 \ No newline at end of file
diff --git a/data/maps/FortreeCity_Gym/border.bin b/data/maps/FortreeCity_Gym/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/FortreeCity_Gym/border.bin
Binary files differ
diff --git a/data/maps/FortreeCity_Gym/header.s b/data/maps/FortreeCity_Gym/header.s
new file mode 100644
index 000000000..447839649
--- /dev/null
+++ b/data/maps/FortreeCity_Gym/header.s
@@ -0,0 +1,15 @@
+FortreeCity_Gym:: @ 8306424
+ .4byte FortreeCity_Gym_MapAttributes
+ .4byte FortreeCity_Gym_MapEvents
+ .4byte FortreeCity_Gym_MapScripts
+ .4byte 0x0
+ .2byte 364
+ .2byte 100
+ .byte 11
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 1
+
diff --git a/data/maps/FortreeCity_Gym/map.bin b/data/maps/FortreeCity_Gym/map.bin
new file mode 100644
index 000000000..a8ee94ae1
--- /dev/null
+++ b/data/maps/FortreeCity_Gym/map.bin
@@ -0,0 +1,2 @@
+ 22222202222222222232222222222"2"2"202223422222222222   32242$2 2 22222342222,2222)22"2"21222222222 (22  32322222 22)242     22#2"2$22222 222222 222222 2222222     (
+22222222 222222 2 2 2 2 2323-22222 32422222 ()2"2"2$2     2   2222 222222222222.222'2222 2"2"2022222222 2 2/22/23   3222223  22222)   )#2 2222)  222 22          %& \ No newline at end of file
diff --git a/data/maps/FortreeCity_House1/border.bin b/data/maps/FortreeCity_House1/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/FortreeCity_House1/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/FortreeCity_House1/header.s b/data/maps/FortreeCity_House1/header.s
new file mode 100644
index 000000000..74cd1d8d8
--- /dev/null
+++ b/data/maps/FortreeCity_House1/header.s
@@ -0,0 +1,15 @@
+FortreeCity_House1:: @ 8306408
+ .4byte FortreeCity_House1_MapAttributes
+ .4byte FortreeCity_House1_MapEvents
+ .4byte FortreeCity_House1_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 99
+ .byte 11
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/FortreeCity_House1/map.bin b/data/maps/FortreeCity_House1/map.bin
new file mode 100644
index 000000000..5a3ac8cb6
--- /dev/null
+++ b/data/maps/FortreeCity_House1/map.bin
@@ -0,0 +1 @@
+33333333333333333333733337 \ No newline at end of file
diff --git a/data/maps/FortreeCity_House2/border.bin b/data/maps/FortreeCity_House2/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/FortreeCity_House2/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/FortreeCity_House2/header.s b/data/maps/FortreeCity_House2/header.s
new file mode 100644
index 000000000..9e612538c
--- /dev/null
+++ b/data/maps/FortreeCity_House2/header.s
@@ -0,0 +1,15 @@
+FortreeCity_House2:: @ 8306494
+ .4byte FortreeCity_House2_MapAttributes
+ .4byte FortreeCity_House2_MapEvents
+ .4byte FortreeCity_House2_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 101
+ .byte 11
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/FortreeCity_House2/map.bin b/data/maps/FortreeCity_House2/map.bin
new file mode 100644
index 000000000..3fbcd6043
--- /dev/null
+++ b/data/maps/FortreeCity_House2/map.bin
@@ -0,0 +1 @@
+37733333333333333333733337 \ No newline at end of file
diff --git a/data/maps/FortreeCity_House3/header.s b/data/maps/FortreeCity_House3/header.s
new file mode 100644
index 000000000..55899e69f
--- /dev/null
+++ b/data/maps/FortreeCity_House3/header.s
@@ -0,0 +1,15 @@
+FortreeCity_House3:: @ 83064B0
+ .4byte FortreeCity_House3_MapAttributes
+ .4byte FortreeCity_House3_MapEvents
+ .4byte FortreeCity_House3_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 99
+ .byte 11
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/FortreeCity_House4/header.s b/data/maps/FortreeCity_House4/header.s
new file mode 100644
index 000000000..ae10fe254
--- /dev/null
+++ b/data/maps/FortreeCity_House4/header.s
@@ -0,0 +1,15 @@
+FortreeCity_House4:: @ 83064CC
+ .4byte FortreeCity_House4_MapAttributes
+ .4byte FortreeCity_House4_MapEvents
+ .4byte FortreeCity_House4_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 101
+ .byte 11
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/FortreeCity_House5/header.s b/data/maps/FortreeCity_House5/header.s
new file mode 100644
index 000000000..de05c63c1
--- /dev/null
+++ b/data/maps/FortreeCity_House5/header.s
@@ -0,0 +1,15 @@
+FortreeCity_House5:: @ 83064E8
+ .4byte FortreeCity_House5_MapAttributes
+ .4byte FortreeCity_House5_MapEvents
+ .4byte FortreeCity_House5_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 99
+ .byte 11
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/FortreeCity_Mart/header.s b/data/maps/FortreeCity_Mart/header.s
new file mode 100644
index 000000000..d334876da
--- /dev/null
+++ b/data/maps/FortreeCity_Mart/header.s
@@ -0,0 +1,15 @@
+FortreeCity_Mart:: @ 8306478
+ .4byte FortreeCity_Mart_MapAttributes
+ .4byte FortreeCity_Mart_MapEvents
+ .4byte FortreeCity_Mart_MapScripts
+ .4byte 0x0
+ .2byte 404
+ .2byte 63
+ .byte 11
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/FortreeCity_PokemonCenter_1F/header.s b/data/maps/FortreeCity_PokemonCenter_1F/header.s
new file mode 100644
index 000000000..82be5c3e6
--- /dev/null
+++ b/data/maps/FortreeCity_PokemonCenter_1F/header.s
@@ -0,0 +1,15 @@
+FortreeCity_PokemonCenter_1F:: @ 8306440
+ .4byte FortreeCity_PokemonCenter_1F_MapAttributes
+ .4byte FortreeCity_PokemonCenter_1F_MapEvents
+ .4byte FortreeCity_PokemonCenter_1F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 61
+ .byte 11
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/FortreeCity_PokemonCenter_2F/header.s b/data/maps/FortreeCity_PokemonCenter_2F/header.s
new file mode 100644
index 000000000..b0d529544
--- /dev/null
+++ b/data/maps/FortreeCity_PokemonCenter_2F/header.s
@@ -0,0 +1,15 @@
+FortreeCity_PokemonCenter_2F:: @ 830645C
+ .4byte FortreeCity_PokemonCenter_2F_MapAttributes
+ .4byte FortreeCity_PokemonCenter_2F_MapEvents
+ .4byte FortreeCity_PokemonCenter_2F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 62
+ .byte 11
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/GraniteCave_1F/border.bin b/data/maps/GraniteCave_1F/border.bin
new file mode 100644
index 000000000..423a0732e
--- /dev/null
+++ b/data/maps/GraniteCave_1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/GraniteCave_1F/header.s b/data/maps/GraniteCave_1F/header.s
new file mode 100644
index 000000000..cc5d9d7be
--- /dev/null
+++ b/data/maps/GraniteCave_1F/header.s
@@ -0,0 +1,15 @@
+GraniteCave_1F:: @ 8306E34
+ .4byte GraniteCave_1F_MapAttributes
+ .4byte GraniteCave_1F_MapEvents
+ .4byte GraniteCave_1F_MapScripts
+ .4byte 0x0
+ .2byte 366
+ .2byte 133
+ .byte 55
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/GraniteCave_1F/map.bin b/data/maps/GraniteCave_1F/map.bin
new file mode 100644
index 000000000..58c7945ab
--- /dev/null
+++ b/data/maps/GraniteCave_1F/map.bin
@@ -0,0 +1,5 @@
+22222222222222222222222?22''2222222222222222222222222222222    "2222222222222222222222222222222222222222222222222222222222226222222  
+222222222222222222222J6R6F622222 $# 
+22222222222<22222222;62;622222#
+22222222# XYZ  "222;62;62?22      "#    
+2222# "# "2;2;6222#   "2222#      "#       $'# XYZ$$#            $#         $ \ No newline at end of file
diff --git a/data/maps/GraniteCave_B1F/border.bin b/data/maps/GraniteCave_B1F/border.bin
new file mode 100644
index 000000000..423a0732e
--- /dev/null
+++ b/data/maps/GraniteCave_B1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/GraniteCave_B1F/header.s b/data/maps/GraniteCave_B1F/header.s
new file mode 100644
index 000000000..36796c3d7
--- /dev/null
+++ b/data/maps/GraniteCave_B1F/header.s
@@ -0,0 +1,15 @@
+GraniteCave_B1F:: @ 8306E50
+ .4byte GraniteCave_B1F_MapAttributes
+ .4byte GraniteCave_B1F_MapEvents
+ .4byte GraniteCave_B1F_MapScripts
+ .4byte 0x0
+ .2byte 366
+ .2byte 134
+ .byte 55
+ .byte 1
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/GraniteCave_B1F/map.bin b/data/maps/GraniteCave_B1F/map.bin
new file mode 100644
index 000000000..27f98c6cf
--- /dev/null
+++ b/data/maps/GraniteCave_B1F/map.bin
@@ -0,0 +1,10 @@
+2/2/2/2/2/2/22222222/2/2/2/2/2/2/2/2!!!!
+222/2/2/2/2/2/22222222/2/2/2/2/2/2/2/2?2222!!!!!!
+2?222/2/2/2/2/2/2/2/22222!!!!!
+/2/2/2/2/2/222222222/2/2/222?222/2/2/2/2/2/2/222222222/2/2/222222/2/2/2/2/2/2/222222#!#!!
+222222#!#!#!#!!!!!!!#222222020222222222222222222222222222222222222222222222222>2222?22222  
+222  
+222222222222222222222222222  #222222222222222#  
+2222222222222222222222222222222222#  
+222222=22# 
+222 !!!!"2222?222222222#     !!!"#   ###    ##      #     ##       ##                              # \ No newline at end of file
diff --git a/data/maps/GraniteCave_B2F/border.bin b/data/maps/GraniteCave_B2F/border.bin
new file mode 100644
index 000000000..423a0732e
--- /dev/null
+++ b/data/maps/GraniteCave_B2F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/GraniteCave_B2F/header.s b/data/maps/GraniteCave_B2F/header.s
new file mode 100644
index 000000000..d2607c74d
--- /dev/null
+++ b/data/maps/GraniteCave_B2F/header.s
@@ -0,0 +1,15 @@
+GraniteCave_B2F:: @ 8306E6C
+ .4byte GraniteCave_B2F_MapAttributes
+ .4byte GraniteCave_B2F_MapEvents
+ .4byte GraniteCave_B2F_MapScripts
+ .4byte 0x0
+ .2byte 366
+ .2byte 135
+ .byte 55
+ .byte 1
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/GraniteCave_B2F/map.bin b/data/maps/GraniteCave_B2F/map.bin
new file mode 100644
index 000000000..bbf8dc7af
--- /dev/null
+++ b/data/maps/GraniteCave_B2F/map.bin
@@ -0,0 +1,2 @@
+2222222222222222222222262222222222S22222222222222'62>22222222222:2>22222222222222222222222222:2     "222222222222222222>22BR22222226222222222222222222222 $P622            $$        $    666666666666666666666666666666666666666666666S66622  2 2b6 2 2"22S622222222222222222222222222222222222222>2222222222222222222222222222'2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222    
+222222222222222222222222222222'222   $22=222222222222     "'222$            $$    $$                $$      $$                              # \ No newline at end of file
diff --git a/data/maps/GraniteCave_StevensRoom/border.bin b/data/maps/GraniteCave_StevensRoom/border.bin
new file mode 100644
index 000000000..423a0732e
--- /dev/null
+++ b/data/maps/GraniteCave_StevensRoom/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/GraniteCave_StevensRoom/header.s b/data/maps/GraniteCave_StevensRoom/header.s
new file mode 100644
index 000000000..a01baa172
--- /dev/null
+++ b/data/maps/GraniteCave_StevensRoom/header.s
@@ -0,0 +1,15 @@
+GraniteCave_StevensRoom:: @ 8306E88
+ .4byte GraniteCave_StevensRoom_MapAttributes
+ .4byte GraniteCave_StevensRoom_MapEvents
+ .4byte GraniteCave_StevensRoom_MapScripts
+ .4byte 0x0
+ .2byte 366
+ .2byte 289
+ .byte 55
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/GraniteCave_StevensRoom/map.bin b/data/maps/GraniteCave_StevensRoom/map.bin
new file mode 100644
index 000000000..3dc6987c2
--- /dev/null
+++ b/data/maps/GraniteCave_StevensRoom/map.bin
@@ -0,0 +1,4 @@
+   22222222222222222222222222$!
+22222$
+2222$
+$!!!!!$$!!!!!!!!$$!!!!!!!!!!$ \ No newline at end of file
diff --git a/data/maps/InsideOfTruck/border.bin b/data/maps/InsideOfTruck/border.bin
new file mode 100644
index 000000000..8459c2996
--- /dev/null
+++ b/data/maps/InsideOfTruck/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/InsideOfTruck/header.s b/data/maps/InsideOfTruck/header.s
new file mode 100644
index 000000000..357b0d869
--- /dev/null
+++ b/data/maps/InsideOfTruck/header.s
@@ -0,0 +1,15 @@
+InsideOfTruck:: @ 8307B38
+ .4byte InsideOfTruck_MapAttributes
+ .4byte InsideOfTruck_MapEvents
+ .4byte InsideOfTruck_MapScripts
+ .4byte 0x0
+ .2byte 0
+ .2byte 238
+ .byte 84
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/InsideOfTruck/map.bin b/data/maps/InsideOfTruck/map.bin
new file mode 100644
index 000000000..84b946be5
--- /dev/null
+++ b/data/maps/InsideOfTruck/map.bin
@@ -0,0 +1,2 @@
+ 
+2 2 22222!"#$  \ No newline at end of file
diff --git a/data/maps/IslandCave/border.bin b/data/maps/IslandCave/border.bin
new file mode 100644
index 000000000..c07869a9f
--- /dev/null
+++ b/data/maps/IslandCave/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/IslandCave/header.s b/data/maps/IslandCave/header.s
new file mode 100644
index 000000000..571442946
--- /dev/null
+++ b/data/maps/IslandCave/header.s
@@ -0,0 +1,15 @@
+IslandCave:: @ 83074C4
+ .4byte IslandCave_MapAttributes
+ .4byte IslandCave_MapEvents
+ .4byte IslandCave_MapScripts
+ .4byte 0x0
+ .2byte 438
+ .2byte 281
+ .byte 81
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/IslandCave/map.bin b/data/maps/IslandCave/map.bin
new file mode 100644
index 000000000..a7fa61b4d
--- /dev/null
+++ b/data/maps/IslandCave/map.bin
Binary files differ
diff --git a/data/maps/JaggedPass/border.bin b/data/maps/JaggedPass/border.bin
new file mode 100644
index 000000000..9ae2c2126
--- /dev/null
+++ b/data/maps/JaggedPass/border.bin
@@ -0,0 +1 @@
+qqqq \ No newline at end of file
diff --git a/data/maps/JaggedPass/header.s b/data/maps/JaggedPass/header.s
new file mode 100644
index 000000000..a1104305a
--- /dev/null
+++ b/data/maps/JaggedPass/header.s
@@ -0,0 +1,15 @@
+JaggedPass:: @ 8306EDC
+ .4byte JaggedPass_MapAttributes
+ .4byte JaggedPass_MapEvents
+ .4byte JaggedPass_MapScripts
+ .4byte 0x0
+ .2byte 366
+ .2byte 293
+ .byte 76
+ .byte 0
+ .byte 0
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/JaggedPass/map.bin b/data/maps/JaggedPass/map.bin
new file mode 100644
index 000000000..a87a5332e
--- /dev/null
+++ b/data/maps/JaggedPass/map.bin
Binary files differ
diff --git a/data/maps/LavaridgeTown/border.bin b/data/maps/LavaridgeTown/border.bin
new file mode 100644
index 000000000..9ae2c2126
--- /dev/null
+++ b/data/maps/LavaridgeTown/border.bin
@@ -0,0 +1 @@
+qqqq \ No newline at end of file
diff --git a/data/maps/LavaridgeTown/connections.s b/data/maps/LavaridgeTown/connections.s
new file mode 100644
index 000000000..d54669994
--- /dev/null
+++ b/data/maps/LavaridgeTown/connections.s
@@ -0,0 +1,7 @@
+LavaridgeTown_MapConnectionsList:: @ 8308670
+ connection right, -40, Route112, 0
+
+LavaridgeTown_MapConnections:: @ 830867C
+ .4byte 0x1
+ .4byte LavaridgeTown_MapConnectionsList
+
diff --git a/data/maps/LavaridgeTown/header.s b/data/maps/LavaridgeTown/header.s
new file mode 100644
index 000000000..478241605
--- /dev/null
+++ b/data/maps/LavaridgeTown/header.s
@@ -0,0 +1,15 @@
+LavaridgeTown:: @ 8305598
+ .4byte LavaridgeTown_MapAttributes
+ .4byte LavaridgeTown_MapEvents
+ .4byte LavaridgeTown_MapScripts
+ .4byte LavaridgeTown_MapConnections
+ .2byte 363
+ .2byte 13
+ .byte 3
+ .byte 0
+ .byte 2
+ .byte 1
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/LavaridgeTown/map.bin b/data/maps/LavaridgeTown/map.bin
new file mode 100644
index 000000000..604ad5f3f
--- /dev/null
+++ b/data/maps/LavaridgeTown/map.bin
@@ -0,0 +1,3 @@
+qqqq{ttttt|qqqqqqq66{tttzq22222xttttttttr{2t2|qqqNKLOq6rr2222JHIMyy0123rr2332PQRS2289:;44rr2222XYZ[55`ABC44rr`abc550 1"1044rr2222220 1"10000 1"1000rr2222220 1"1000 1"1000rrBB00 1!11111!1!1111rr22200(1)1)1)1)1)1)1)1)1)1)1rr111111000000000000rr0000 0 0
+00 0 0
+00rr0000rr000  4rr11000 !" !"4rr000000000000400004m00000000000000044qqrm0000000000000044qqllllllllllllllll \ No newline at end of file
diff --git a/data/maps/LavaridgeTown_Gym_1F/border.bin b/data/maps/LavaridgeTown_Gym_1F/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/LavaridgeTown_Gym_1F/border.bin
Binary files differ
diff --git a/data/maps/LavaridgeTown_Gym_1F/header.s b/data/maps/LavaridgeTown_Gym_1F/header.s
new file mode 100644
index 000000000..75540e29c
--- /dev/null
+++ b/data/maps/LavaridgeTown_Gym_1F/header.s
@@ -0,0 +1,15 @@
+LavaridgeTown_Gym_1F:: @ 8305C0C
+ .4byte LavaridgeTown_Gym_1F_MapAttributes
+ .4byte LavaridgeTown_Gym_1F_MapEvents
+ .4byte LavaridgeTown_Gym_1F_MapScripts
+ .4byte 0x0
+ .2byte 364
+ .2byte 69
+ .byte 3
+ .byte 0
+ .byte 6
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 1
+
diff --git a/data/maps/LavaridgeTown_Gym_1F/map.bin b/data/maps/LavaridgeTown_Gym_1F/map.bin
new file mode 100644
index 000000000..7f2b02f90
--- /dev/null
+++ b/data/maps/LavaridgeTown_Gym_1F/map.bin
@@ -0,0 +1,2 @@
+66666666662222222222222222222222222222222222222222222222222222222222222222222222222222222222222
+2 2 2 2 2222222222222222222222222222222222222222222222 222 22222222222222222222222222222222222222222222222222222 2222222222(22222 \ No newline at end of file
diff --git a/data/maps/LavaridgeTown_Gym_B1F/border.bin b/data/maps/LavaridgeTown_Gym_B1F/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/LavaridgeTown_Gym_B1F/border.bin
Binary files differ
diff --git a/data/maps/LavaridgeTown_Gym_B1F/header.s b/data/maps/LavaridgeTown_Gym_B1F/header.s
new file mode 100644
index 000000000..59d48f7ae
--- /dev/null
+++ b/data/maps/LavaridgeTown_Gym_B1F/header.s
@@ -0,0 +1,15 @@
+LavaridgeTown_Gym_B1F:: @ 8305C28
+ .4byte LavaridgeTown_Gym_B1F_MapAttributes
+ .4byte LavaridgeTown_Gym_B1F_MapEvents
+ .4byte LavaridgeTown_Gym_B1F_MapScripts
+ .4byte 0x0
+ .2byte 364
+ .2byte 70
+ .byte 3
+ .byte 0
+ .byte 6
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 1
+
diff --git a/data/maps/LavaridgeTown_Gym_B1F/map.bin b/data/maps/LavaridgeTown_Gym_B1F/map.bin
new file mode 100644
index 000000000..035719ffe
--- /dev/null
+++ b/data/maps/LavaridgeTown_Gym_B1F/map.bin
@@ -0,0 +1 @@
+666666666662222222222222222222222   22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222!22!22!22)))22222222222222222222222222222222222222222222 \ No newline at end of file
diff --git a/data/maps/LavaridgeTown_HerbShop/border.bin b/data/maps/LavaridgeTown_HerbShop/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/LavaridgeTown_HerbShop/border.bin
Binary files differ
diff --git a/data/maps/LavaridgeTown_HerbShop/header.s b/data/maps/LavaridgeTown_HerbShop/header.s
new file mode 100644
index 000000000..6272cc2f8
--- /dev/null
+++ b/data/maps/LavaridgeTown_HerbShop/header.s
@@ -0,0 +1,15 @@
+LavaridgeTown_HerbShop:: @ 8305BF0
+ .4byte LavaridgeTown_HerbShop_MapAttributes
+ .4byte LavaridgeTown_HerbShop_MapEvents
+ .4byte LavaridgeTown_HerbShop_MapScripts
+ .4byte 0x0
+ .2byte 363
+ .2byte 68
+ .byte 3
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LavaridgeTown_HerbShop/map.bin b/data/maps/LavaridgeTown_HerbShop/map.bin
new file mode 100644
index 000000000..cc0294a80
--- /dev/null
+++ b/data/maps/LavaridgeTown_HerbShop/map.bin
@@ -0,0 +1 @@
+32222x2p2p2p2p22h2h2h2x2p2p2p2p2p2y2h2h2h232h2h2h2h2h2h2h2h2h22g2h2h2h2h2h2h2h2f2Z2abh2h2h2h2h2ab \ No newline at end of file
diff --git a/data/maps/LavaridgeTown_House/header.s b/data/maps/LavaridgeTown_House/header.s
new file mode 100644
index 000000000..b8bf2725f
--- /dev/null
+++ b/data/maps/LavaridgeTown_House/header.s
@@ -0,0 +1,15 @@
+LavaridgeTown_House:: @ 8305C44
+ .4byte LavaridgeTown_House_MapAttributes
+ .4byte LavaridgeTown_House_MapEvents
+ .4byte LavaridgeTown_House_MapScripts
+ .4byte 0x0
+ .2byte 363
+ .2byte 64
+ .byte 3
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LavaridgeTown_Mart/header.s b/data/maps/LavaridgeTown_Mart/header.s
new file mode 100644
index 000000000..c2e8ba94d
--- /dev/null
+++ b/data/maps/LavaridgeTown_Mart/header.s
@@ -0,0 +1,15 @@
+LavaridgeTown_Mart:: @ 8305C60
+ .4byte LavaridgeTown_Mart_MapAttributes
+ .4byte LavaridgeTown_Mart_MapEvents
+ .4byte LavaridgeTown_Mart_MapScripts
+ .4byte 0x0
+ .2byte 404
+ .2byte 63
+ .byte 3
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LavaridgeTown_PokemonCenter_1F/border.bin b/data/maps/LavaridgeTown_PokemonCenter_1F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/LavaridgeTown_PokemonCenter_1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/LavaridgeTown_PokemonCenter_1F/header.s b/data/maps/LavaridgeTown_PokemonCenter_1F/header.s
new file mode 100644
index 000000000..0b4b2a46b
--- /dev/null
+++ b/data/maps/LavaridgeTown_PokemonCenter_1F/header.s
@@ -0,0 +1,15 @@
+LavaridgeTown_PokemonCenter_1F:: @ 8305C7C
+ .4byte LavaridgeTown_PokemonCenter_1F_MapAttributes
+ .4byte LavaridgeTown_PokemonCenter_1F_MapEvents
+ .4byte LavaridgeTown_PokemonCenter_1F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 71
+ .byte 3
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LavaridgeTown_PokemonCenter_1F/map.bin b/data/maps/LavaridgeTown_PokemonCenter_1F/map.bin
new file mode 100644
index 000000000..d841f9f1a
--- /dev/null
+++ b/data/maps/LavaridgeTown_PokemonCenter_1F/map.bin
@@ -0,0 +1 @@
+   JK   H"#RSI2222P*+2[Q$2222 2&222X!!!Y<222'2 24222`2l2m2n2o22%222'222222021222322222'26B228292:2;2242=>'222222@2A2B2C22&2EF'2(2222222222&2427 \ No newline at end of file
diff --git a/data/maps/LavaridgeTown_PokemonCenter_2F/header.s b/data/maps/LavaridgeTown_PokemonCenter_2F/header.s
new file mode 100644
index 000000000..ee01816cc
--- /dev/null
+++ b/data/maps/LavaridgeTown_PokemonCenter_2F/header.s
@@ -0,0 +1,15 @@
+LavaridgeTown_PokemonCenter_2F:: @ 8305C98
+ .4byte LavaridgeTown_PokemonCenter_2F_MapAttributes
+ .4byte LavaridgeTown_PokemonCenter_2F_MapEvents
+ .4byte LavaridgeTown_PokemonCenter_2F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 62
+ .byte 3
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity/border.bin b/data/maps/LilycoveCity/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/LilycoveCity/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/LilycoveCity/connections.s b/data/maps/LilycoveCity/connections.s
new file mode 100644
index 000000000..427cc98a6
--- /dev/null
+++ b/data/maps/LilycoveCity/connections.s
@@ -0,0 +1,8 @@
+LilycoveCity_MapConnectionsList:: @ 83087B4
+ connection left, 10, Route121, 0
+ connection right, -10, Route124, 0
+
+LilycoveCity_MapConnections:: @ 83087CC
+ .4byte 0x2
+ .4byte LilycoveCity_MapConnectionsList
+
diff --git a/data/maps/LilycoveCity/header.s b/data/maps/LilycoveCity/header.s
new file mode 100644
index 000000000..b4a9aa076
--- /dev/null
+++ b/data/maps/LilycoveCity/header.s
@@ -0,0 +1,15 @@
+LilycoveCity:: @ 83054D4
+ .4byte LilycoveCity_MapAttributes
+ .4byte LilycoveCity_MapEvents
+ .4byte LilycoveCity_MapScripts
+ .4byte LilycoveCity_MapConnections
+ .2byte 408
+ .2byte 6
+ .byte 12
+ .byte 0
+ .byte 2
+ .byte 2
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/LilycoveCity/map.bin b/data/maps/LilycoveCity/map.bin
new file mode 100644
index 000000000..d17bd748d
--- /dev/null
+++ b/data/maps/LilycoveCity/map.bin
Binary files differ
diff --git a/data/maps/LilycoveCity_ContestHall/border.bin b/data/maps/LilycoveCity_ContestHall/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/LilycoveCity_ContestHall/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/LilycoveCity_ContestHall/header.s b/data/maps/LilycoveCity_ContestHall/header.s
new file mode 100644
index 000000000..2e1c85499
--- /dev/null
+++ b/data/maps/LilycoveCity_ContestHall/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_ContestHall:: @ 83065AC
+ .4byte LilycoveCity_ContestHall_MapAttributes
+ .4byte LilycoveCity_ContestHall_MapEvents
+ .4byte LilycoveCity_ContestHall_MapScripts
+ .4byte 0x0
+ .2byte 452
+ .2byte 106
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity_ContestHall/map.bin b/data/maps/LilycoveCity_ContestHall/map.bin
new file mode 100644
index 000000000..06fdae4f7
--- /dev/null
+++ b/data/maps/LilycoveCity_ContestHall/map.bin
@@ -0,0 +1,3 @@
+///////////////////////////////2222222222~v 2222222222////
+////22222<=>bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb<=> 22222////
+DEF. 2!2!2!2!2!2!2!2!2!2!2!2!2!2!2!2!2!2!2!2!2!2!2!2!2!2!2!2!2!2"2,DEF////<=>bbbb6(2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2*24bbbb<=>DEF. 2!2!2!2!202`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`222!2!2!2!2"2,DEFbbbb6(2`2`2`2`2`2`2`2`2`2`2`2`2              f2`2`2`2`2`2`2`2`2`2`2`2*24bbbb 2!2!2!2!202`2`2J2`2`2`2`2`2`2`2`2`2$%2%2%2%2%2%2%2%2%2%2%2%2%2&f2`2`2`2`2`2`2`2`2J2`2`222!2!2!2!2"2(2`2`2`2`2`2`2`2R`2`2`2`2`2`2`2`2`2$%2%2hiiiiiiij%2%2&f2`2`2`2`2`2`2`2`2R`2`2`2`2`2`2`2*2(2`2J2`2`2J2`2`2`2`2`2`2H2`2H2`2`2`2$%2%2pq2q2q2q2q2o2q2r%2%2&f2`2`2I2`2I2`2`2`2`2`2`2J2`2`2J2`2*2(2`2R`2`2R`2`2`2`2`2`2P2`2P2`2`2`2$%2%2pq2q2q22qwBqr%2%2&f2`2`2Q2`2Q2`2`2`2`2`2`2R`2`2R`2*2(2`2`2`2`2`2`2`2`2`2`2`2X2`2X2`2`2`2$%2%2pq2q2q22q2qq2r%2%2&f2`2`2Y2`2Y2`2`2`2`2`2`2`2`2`2`2`2*2(2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2$%2%2pq2q2q2q2q2q2q2r%2%2&f2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2*2(2`2`2`2`2`2`2`2`2`2`2`2H2`2H2`2`2`2$%2%2xyy{2|2}2yyz%2%2&f2`2`2I2`2I2`2`2`2`2`2`2`2`2`2`2`2*2(2`2`2`2`2`2`2`2`2`2`2`2P2`2P2`2`2`22222222222222f2`2`2Q2`2Q2`2`2`2`2`2`2`2`2`2`2`2*2(2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2222f2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2*2(2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`22_2_2_2_2_2_2_2_2_2_2_2_2_2_2g2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2*2(2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2*2(2`2`2`2`2`2              f2`2`2`2`2`2`2`2`2              f2`2`2`2`2*2(2`2`2`2`2`2$%2%2%2%2%2%2%2%2%2%2%2%2%2&f2`2`2`2`2`2`2`2`2$%2%2%2%2%2%2%2%2%2%2%2%2%2&f2`2`2`2`2*2(2`2`2`2`2`2$%2%2hiiiiiiij%2%2&f2I2`2`2`2`2`2H2`2$%2%2hiiiiiiij%2%2&f2`2`2`2`2*2(2`2H2`2H2`2$%2%2pq2q2q2q2q2o2q2r%2%2&f2Q2`2`2`2`2`2P2`2$%2%2pq2q2q2q2q2o2q2r%2%2&f2I2`2I2`2*2(2`2P2`2P2`2$%2%2pq2q2q22qwBqr%2%2&f2Y2`2`2`2`2`2X2`2$%2%2pq2q2q22qwBqr%2%2&f2Q2`2Q2`2*2(2`2X2`2X2`2$%2%2pq2q2q22q2qq2r%2%2&f2`2`2`2`2`2`2`2`2$%2%2pq2q2q22q2qq2r%2%2&f2Y2`2Y2`2*2(2`2`2`2`2`2$%2%2pq2q2q2q2q2q2q2r%2%2&f2I2`2`2`2`2`2H2`2$%2%2pq2q2q2q2q2q2q2r%2%2&f2`2`2`2`2*2(2`2H2`2H2`2$%2%2xyy222yyz%2%2&f2Q2`2`2`2`2`2P2`2$%2%2xyy222yyz%2%2&f2I2`2I2`2*2(2`2P2`2P2`22222222222222f2Y2`2`2`2`2`2X2`22222222222222f2Q2`2Q2`2*2(2`2X2`2X2`2222f2`2`2`2`2`2`2`2`2222f2Y2`2Y2`2*2(2`2`2`2`2`22_2_2_2_2_2_2_2_2_2_2_2_2_2_2g2`2`2`2`2`2`2`2`22_2_2_2_2_2_2_2_2_2_2_2_2_2_2g2`2`2`2`2*2(2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2*2(2`2`2J2`2`2`2J2`2`2`2J2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2J2`2`2`2J2`2`2`2J2`2`2*2(2`2`2R`2`2`2R`2`2`2R`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2R`2`2`2R`2`2`2R`2`2*2 \ No newline at end of file
diff --git a/data/maps/LilycoveCity_ContestLobby/border.bin b/data/maps/LilycoveCity_ContestLobby/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/LilycoveCity_ContestLobby/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/LilycoveCity_ContestLobby/header.s b/data/maps/LilycoveCity_ContestLobby/header.s
new file mode 100644
index 000000000..3d191a8a9
--- /dev/null
+++ b/data/maps/LilycoveCity_ContestLobby/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_ContestLobby:: @ 8306590
+ .4byte LilycoveCity_ContestLobby_MapAttributes
+ .4byte LilycoveCity_ContestLobby_MapEvents
+ .4byte LilycoveCity_ContestLobby_MapScripts
+ .4byte 0x0
+ .2byte 452
+ .2byte 105
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity_ContestLobby/map.bin b/data/maps/LilycoveCity_ContestLobby/map.bin
new file mode 100644
index 000000000..3d8c96b04
--- /dev/null
+++ b/data/maps/LilycoveCity_ContestLobby/map.bin
@@ -0,0 +1 @@
+[\]:;M[\]c6debbBCbbc6debbbbT 2!2!2222222U2!2!2!2!2!2!2!2!2!2!2"2(2`2`2f2`2`2`2`2`2`2`2`2`2`2*2(2`2`22_2_2_2_2_2_2_2g2`2`2`2`2`2`2`2`2`2`2*2(2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2*282`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`292@2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2A2(2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2*282`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`292@2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2A2(2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2`2*2 \ No newline at end of file
diff --git a/data/maps/LilycoveCity_CoveLilyMotel_1F/border.bin b/data/maps/LilycoveCity_CoveLilyMotel_1F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/LilycoveCity_CoveLilyMotel_1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/LilycoveCity_CoveLilyMotel_1F/header.s b/data/maps/LilycoveCity_CoveLilyMotel_1F/header.s
new file mode 100644
index 000000000..eb9a12aab
--- /dev/null
+++ b/data/maps/LilycoveCity_CoveLilyMotel_1F/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_CoveLilyMotel_1F:: @ 8306520
+ .4byte LilycoveCity_CoveLilyMotel_1F_MapAttributes
+ .4byte LilycoveCity_CoveLilyMotel_1F_MapEvents
+ .4byte LilycoveCity_CoveLilyMotel_1F_MapScripts
+ .4byte 0x0
+ .2byte 408
+ .2byte 300
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity_CoveLilyMotel_1F/map.bin b/data/maps/LilycoveCity_CoveLilyMotel_1F/map.bin
new file mode 100644
index 000000000..5242f8e57
--- /dev/null
+++ b/data/maps/LilycoveCity_CoveLilyMotel_1F/map.bin
@@ -0,0 +1 @@
+a 2!2!2!2!2222!2!2@22!2)2)2)2)2)2)2)2)2)2)2)2!2D2NOD2)2)2D2N_D2)2!2D2VWD2)2)2D2VWD2)2!2)2)2)2)2)2)2)2)2)2)2)2 333333333333#3333333333 \ No newline at end of file
diff --git a/data/maps/LilycoveCity_CoveLilyMotel_2F/border.bin b/data/maps/LilycoveCity_CoveLilyMotel_2F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/LilycoveCity_CoveLilyMotel_2F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/LilycoveCity_CoveLilyMotel_2F/header.s b/data/maps/LilycoveCity_CoveLilyMotel_2F/header.s
new file mode 100644
index 000000000..f76f2e5a3
--- /dev/null
+++ b/data/maps/LilycoveCity_CoveLilyMotel_2F/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_CoveLilyMotel_2F:: @ 830653C
+ .4byte LilycoveCity_CoveLilyMotel_2F_MapAttributes
+ .4byte LilycoveCity_CoveLilyMotel_2F_MapEvents
+ .4byte LilycoveCity_CoveLilyMotel_2F_MapScripts
+ .4byte 0x0
+ .2byte 408
+ .2byte 301
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity_CoveLilyMotel_2F/map.bin b/data/maps/LilycoveCity_CoveLilyMotel_2F/map.bin
new file mode 100644
index 000000000..4484b5b55
--- /dev/null
+++ b/data/maps/LilycoveCity_CoveLilyMotel_2F/map.bin
@@ -0,0 +1 @@
+a2!2!2!2!2!2!2!22222!2)2N_D2)2)2D2NOD2)2!2D2VWD2)2)2D2VWD2)2!2)2)2)2)2)2)2)2)2)2)2)2!2D2NOD2)2)2)2N_)2)2!2D2VWD2)2)2D2VW)2)2!2)2)2)2)2)2)2)2)2)2)2)2 \ No newline at end of file
diff --git a/data/maps/LilycoveCity_DepartmentStoreElevator/border.bin b/data/maps/LilycoveCity_DepartmentStoreElevator/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/LilycoveCity_DepartmentStoreElevator/border.bin
Binary files differ
diff --git a/data/maps/LilycoveCity_DepartmentStoreElevator/header.s b/data/maps/LilycoveCity_DepartmentStoreElevator/header.s
new file mode 100644
index 000000000..c71ca1926
--- /dev/null
+++ b/data/maps/LilycoveCity_DepartmentStoreElevator/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_DepartmentStoreElevator:: @ 83067A4
+ .4byte LilycoveCity_DepartmentStoreElevator_MapAttributes
+ .4byte LilycoveCity_DepartmentStoreElevator_MapEvents
+ .4byte LilycoveCity_DepartmentStoreElevator_MapScripts
+ .4byte 0x0
+ .2byte 408
+ .2byte 274
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity_DepartmentStoreElevator/map.bin b/data/maps/LilycoveCity_DepartmentStoreElevator/map.bin
new file mode 100644
index 000000000..1b3bf23c0
--- /dev/null
+++ b/data/maps/LilycoveCity_DepartmentStoreElevator/map.bin
@@ -0,0 +1 @@
+hiijpqqrxyyz\2]2]2]2d2e2e2f2d2O2W2f2 \ No newline at end of file
diff --git a/data/maps/LilycoveCity_DepartmentStoreRooftop/border.bin b/data/maps/LilycoveCity_DepartmentStoreRooftop/border.bin
new file mode 100644
index 000000000..c1b82435c
--- /dev/null
+++ b/data/maps/LilycoveCity_DepartmentStoreRooftop/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/LilycoveCity_DepartmentStoreRooftop/header.s b/data/maps/LilycoveCity_DepartmentStoreRooftop/header.s
new file mode 100644
index 000000000..2fa2db369
--- /dev/null
+++ b/data/maps/LilycoveCity_DepartmentStoreRooftop/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_DepartmentStoreRooftop:: @ 8306788
+ .4byte LilycoveCity_DepartmentStoreRooftop_MapAttributes
+ .4byte LilycoveCity_DepartmentStoreRooftop_MapEvents
+ .4byte LilycoveCity_DepartmentStoreRooftop_MapScripts
+ .4byte 0x0
+ .2byte 408
+ .2byte 263
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity_DepartmentStoreRooftop/map.bin b/data/maps/LilycoveCity_DepartmentStoreRooftop/map.bin
new file mode 100644
index 000000000..e9125baf0
--- /dev/null
+++ b/data/maps/LilycoveCity_DepartmentStoreRooftop/map.bin
@@ -0,0 +1 @@
+&oo'.S2S2S2S2S2S2S2S2wwS2NO5/622J2J2J2J2J2J2M2M23VW=z'6J2J2J2J2J2J2J2J2J2^_ET2S2/622J2J2J2J2J2J2J2J2J2M2M2M2M2676J2J266J2J266J2J2J2J2J267>U2[2[2[2[2[2[2[2[2[2[2[2[2[2[2[2?FccccccccccccccccG \ No newline at end of file
diff --git a/data/maps/LilycoveCity_DepartmentStore_1F/border.bin b/data/maps/LilycoveCity_DepartmentStore_1F/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/LilycoveCity_DepartmentStore_1F/border.bin
Binary files differ
diff --git a/data/maps/LilycoveCity_DepartmentStore_1F/header.s b/data/maps/LilycoveCity_DepartmentStore_1F/header.s
new file mode 100644
index 000000000..b60e12d91
--- /dev/null
+++ b/data/maps/LilycoveCity_DepartmentStore_1F/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_DepartmentStore_1F:: @ 83066FC
+ .4byte LilycoveCity_DepartmentStore_1F_MapAttributes
+ .4byte LilycoveCity_DepartmentStore_1F_MapEvents
+ .4byte LilycoveCity_DepartmentStore_1F_MapScripts
+ .4byte 0x0
+ .2byte 408
+ .2byte 258
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity_DepartmentStore_1F/map.bin b/data/maps/LilycoveCity_DepartmentStore_1F/map.bin
new file mode 100644
index 000000000..2d3d15360
--- /dev/null
+++ b/data/maps/LilycoveCity_DepartmentStore_1F/map.bin
@@ -0,0 +1 @@
+|}~  Px2222p2p22222x2p2p2p2p2p22h2h2h2h2h22h2h2h2n2h22g2h2h2h2h2q2p2p2p2p2p2y2h2h2h2h2h2abhh2h2h2h2h2h2h2h2h2h2h2h2h2n2h22g2h2h2h2h2h2h2h2h2h2h2h2h2l2h2l2l2abh2h2h2h2h2h2h2h2h2h2th2tt \ No newline at end of file
diff --git a/data/maps/LilycoveCity_DepartmentStore_2F/border.bin b/data/maps/LilycoveCity_DepartmentStore_2F/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/LilycoveCity_DepartmentStore_2F/border.bin
Binary files differ
diff --git a/data/maps/LilycoveCity_DepartmentStore_2F/header.s b/data/maps/LilycoveCity_DepartmentStore_2F/header.s
new file mode 100644
index 000000000..817af834a
--- /dev/null
+++ b/data/maps/LilycoveCity_DepartmentStore_2F/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_DepartmentStore_2F:: @ 8306718
+ .4byte LilycoveCity_DepartmentStore_2F_MapAttributes
+ .4byte LilycoveCity_DepartmentStore_2F_MapEvents
+ .4byte LilycoveCity_DepartmentStore_2F_MapScripts
+ .4byte 0x0
+ .2byte 404
+ .2byte 259
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity_DepartmentStore_2F/map.bin b/data/maps/LilycoveCity_DepartmentStore_2F/map.bin
new file mode 100644
index 000000000..82ca90b08
--- /dev/null
+++ b/data/maps/LilycoveCity_DepartmentStore_2F/map.bin
@@ -0,0 +1 @@
+|}~    PQ 22222222222222222222222222222222222m22222222222222u2234222234222222 2222222m2222222222222222u \ No newline at end of file
diff --git a/data/maps/LilycoveCity_DepartmentStore_3F/border.bin b/data/maps/LilycoveCity_DepartmentStore_3F/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/LilycoveCity_DepartmentStore_3F/border.bin
Binary files differ
diff --git a/data/maps/LilycoveCity_DepartmentStore_3F/header.s b/data/maps/LilycoveCity_DepartmentStore_3F/header.s
new file mode 100644
index 000000000..088254e7a
--- /dev/null
+++ b/data/maps/LilycoveCity_DepartmentStore_3F/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_DepartmentStore_3F:: @ 8306734
+ .4byte LilycoveCity_DepartmentStore_3F_MapAttributes
+ .4byte LilycoveCity_DepartmentStore_3F_MapEvents
+ .4byte LilycoveCity_DepartmentStore_3F_MapScripts
+ .4byte 0x0
+ .2byte 404
+ .2byte 260
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity_DepartmentStore_3F/map.bin b/data/maps/LilycoveCity_DepartmentStore_3F/map.bin
new file mode 100644
index 000000000..c10b776f5
--- /dev/null
+++ b/data/maps/LilycoveCity_DepartmentStore_3F/map.bin
@@ -0,0 +1 @@
+|}~6    6QP 222222C2222 22222222222222222222+,2222222222+,2222342222222222342222;<2222222222;<22222222222222222222 \ No newline at end of file
diff --git a/data/maps/LilycoveCity_DepartmentStore_4F/border.bin b/data/maps/LilycoveCity_DepartmentStore_4F/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/LilycoveCity_DepartmentStore_4F/border.bin
Binary files differ
diff --git a/data/maps/LilycoveCity_DepartmentStore_4F/header.s b/data/maps/LilycoveCity_DepartmentStore_4F/header.s
new file mode 100644
index 000000000..4cf4e2d11
--- /dev/null
+++ b/data/maps/LilycoveCity_DepartmentStore_4F/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_DepartmentStore_4F:: @ 8306750
+ .4byte LilycoveCity_DepartmentStore_4F_MapAttributes
+ .4byte LilycoveCity_DepartmentStore_4F_MapEvents
+ .4byte LilycoveCity_DepartmentStore_4F_MapScripts
+ .4byte 0x0
+ .2byte 404
+ .2byte 261
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity_DepartmentStore_4F/map.bin b/data/maps/LilycoveCity_DepartmentStore_4F/map.bin
new file mode 100644
index 000000000..bc1a09e2c
--- /dev/null
+++ b/data/maps/LilycoveCity_DepartmentStore_4F/map.bin
@@ -0,0 +1 @@
+|}~    PQ 2222222222222222222222222222222222222222222222222222222662222266662266222 22222666622222222222222222 \ No newline at end of file
diff --git a/data/maps/LilycoveCity_DepartmentStore_5F/border.bin b/data/maps/LilycoveCity_DepartmentStore_5F/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/LilycoveCity_DepartmentStore_5F/border.bin
Binary files differ
diff --git a/data/maps/LilycoveCity_DepartmentStore_5F/header.s b/data/maps/LilycoveCity_DepartmentStore_5F/header.s
new file mode 100644
index 000000000..207d30369
--- /dev/null
+++ b/data/maps/LilycoveCity_DepartmentStore_5F/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_DepartmentStore_5F:: @ 830676C
+ .4byte LilycoveCity_DepartmentStore_5F_MapAttributes
+ .4byte LilycoveCity_DepartmentStore_5F_MapEvents
+ .4byte LilycoveCity_DepartmentStore_5F_MapScripts
+ .4byte 0x0
+ .2byte 404
+ .2byte 262
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity_DepartmentStore_5F/map.bin b/data/maps/LilycoveCity_DepartmentStore_5F/map.bin
new file mode 100644
index 000000000..80acc3900
--- /dev/null
+++ b/data/maps/LilycoveCity_DepartmentStore_5F/map.bin
Binary files differ
diff --git a/data/maps/LilycoveCity_EmptyMap/border.bin b/data/maps/LilycoveCity_EmptyMap/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/LilycoveCity_EmptyMap/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/LilycoveCity_EmptyMap/header.s b/data/maps/LilycoveCity_EmptyMap/header.s
new file mode 100644
index 000000000..4da5d01e9
--- /dev/null
+++ b/data/maps/LilycoveCity_EmptyMap/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_EmptyMap:: @ 8306654
+ .4byte LilycoveCity_EmptyMap_MapAttributes
+ .4byte LilycoveCity_EmptyMap_MapEvents
+ .4byte LilycoveCity_EmptyMap_MapScripts
+ .4byte 0x0
+ .2byte 408
+ .2byte 108
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity_EmptyMap/map.bin b/data/maps/LilycoveCity_EmptyMap/map.bin
new file mode 100644
index 000000000..f70d7bba4
--- /dev/null
+++ b/data/maps/LilycoveCity_EmptyMap/map.bin
@@ -0,0 +1 @@
+42 \ No newline at end of file
diff --git a/data/maps/LilycoveCity_Harbor/header.s b/data/maps/LilycoveCity_Harbor/header.s
new file mode 100644
index 000000000..cff946095
--- /dev/null
+++ b/data/maps/LilycoveCity_Harbor/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_Harbor:: @ 8306638
+ .4byte LilycoveCity_Harbor_MapAttributes
+ .4byte LilycoveCity_Harbor_MapEvents
+ .4byte LilycoveCity_Harbor_MapScripts
+ .4byte 0x0
+ .2byte 408
+ .2byte 88
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity_House1/header.s b/data/maps/LilycoveCity_House1/header.s
new file mode 100644
index 000000000..1654d5bae
--- /dev/null
+++ b/data/maps/LilycoveCity_House1/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_House1:: @ 830668C
+ .4byte LilycoveCity_House1_MapAttributes
+ .4byte LilycoveCity_House1_MapEvents
+ .4byte LilycoveCity_House1_MapScripts
+ .4byte 0x0
+ .2byte 408
+ .2byte 59
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity_House2/border.bin b/data/maps/LilycoveCity_House2/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/LilycoveCity_House2/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/LilycoveCity_House2/header.s b/data/maps/LilycoveCity_House2/header.s
new file mode 100644
index 000000000..7a710e7cc
--- /dev/null
+++ b/data/maps/LilycoveCity_House2/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_House2:: @ 83066A8
+ .4byte LilycoveCity_House2_MapAttributes
+ .4byte LilycoveCity_House2_MapEvents
+ .4byte LilycoveCity_House2_MapScripts
+ .4byte 0x0
+ .2byte 408
+ .2byte 74
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity_House2/map.bin b/data/maps/LilycoveCity_House2/map.bin
new file mode 100644
index 000000000..e381f20eb
--- /dev/null
+++ b/data/maps/LilycoveCity_House2/map.bin
@@ -0,0 +1 @@
+222!2!2222Y2N6O6)2)2)2)2)2Y2V6W6D2)2)2)2)2!2)2)2)2)2)2)2)2 33333333#333333 \ No newline at end of file
diff --git a/data/maps/LilycoveCity_House3/header.s b/data/maps/LilycoveCity_House3/header.s
new file mode 100644
index 000000000..a3f1310b2
--- /dev/null
+++ b/data/maps/LilycoveCity_House3/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_House3:: @ 83066C4
+ .4byte LilycoveCity_House3_MapAttributes
+ .4byte LilycoveCity_House3_MapEvents
+ .4byte LilycoveCity_House3_MapScripts
+ .4byte 0x0
+ .2byte 408
+ .2byte 60
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity_House4/header.s b/data/maps/LilycoveCity_House4/header.s
new file mode 100644
index 000000000..ed0cfed66
--- /dev/null
+++ b/data/maps/LilycoveCity_House4/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_House4:: @ 83066E0
+ .4byte LilycoveCity_House4_MapAttributes
+ .4byte LilycoveCity_House4_MapEvents
+ .4byte LilycoveCity_House4_MapScripts
+ .4byte 0x0
+ .2byte 408
+ .2byte 59
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity_LilycoveMuseum_1F/border.bin b/data/maps/LilycoveCity_LilycoveMuseum_1F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/LilycoveCity_LilycoveMuseum_1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/LilycoveCity_LilycoveMuseum_1F/header.s b/data/maps/LilycoveCity_LilycoveMuseum_1F/header.s
new file mode 100644
index 000000000..88586f5d2
--- /dev/null
+++ b/data/maps/LilycoveCity_LilycoveMuseum_1F/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_LilycoveMuseum_1F:: @ 8306558
+ .4byte LilycoveCity_LilycoveMuseum_1F_MapAttributes
+ .4byte LilycoveCity_LilycoveMuseum_1F_MapEvents
+ .4byte LilycoveCity_LilycoveMuseum_1F_MapScripts
+ .4byte 0x0
+ .2byte 373
+ .2byte 103
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity_LilycoveMuseum_1F/map.bin b/data/maps/LilycoveCity_LilycoveMuseum_1F/map.bin
new file mode 100644
index 000000000..6e92a8b58
--- /dev/null
+++ b/data/maps/LilycoveCity_LilycoveMuseum_1F/map.bin
@@ -0,0 +1 @@
+          !"#$% &'222222222222222222222222222222222 22222222 2 2 2 2 2 2 2 222222222222  -.  /  2222222222256722222:2;2;2;2<22222222222 22222B()*DO222222222222222J012LO22:2;2;2;2;2<222222222RSSSTO22HSAS@I>22222222?2?2?2?2?2F22M2?2?2?2O22222222+222,>222842;2;2;29O222222223>22?2F222RSSSSTO222222?2F22222 \ No newline at end of file
diff --git a/data/maps/LilycoveCity_LilycoveMuseum_2F/border.bin b/data/maps/LilycoveCity_LilycoveMuseum_2F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/LilycoveCity_LilycoveMuseum_2F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/LilycoveCity_LilycoveMuseum_2F/header.s b/data/maps/LilycoveCity_LilycoveMuseum_2F/header.s
new file mode 100644
index 000000000..ecaf07df5
--- /dev/null
+++ b/data/maps/LilycoveCity_LilycoveMuseum_2F/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_LilycoveMuseum_2F:: @ 8306574
+ .4byte LilycoveCity_LilycoveMuseum_2F_MapAttributes
+ .4byte LilycoveCity_LilycoveMuseum_2F_MapEvents
+ .4byte LilycoveCity_LilycoveMuseum_2F_MapScripts
+ .4byte 0x0
+ .2byte 373
+ .2byte 104
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity_LilycoveMuseum_2F/map.bin b/data/maps/LilycoveCity_LilycoveMuseum_2F/map.bin
new file mode 100644
index 000000000..76a918838
--- /dev/null
+++ b/data/maps/LilycoveCity_LilycoveMuseum_2F/map.bin
@@ -0,0 +1 @@
+yyyzjklxyyyrstq2p2q2p2q2p2q2q2p2q2q2p2p2q2p2q2p2i2h2i2h2i2h2i2h2i2h2i2h2i2p2q2p2q2q2d2e2f2g2h2i2h2i2d2e2f2g2h2i2h2i2d2e2f2g2h2p2nno2h2i2h2nno2h2i2h2nno2q2XYw{2i2h2i2XYw{2i2h2i2XYw{2p2|2}2~222h2i2h2|2}2~222h2i2h2|2}2~222q2h2i2h2i2d2e2f2g2h2i2h2i2d2e2f2g2h2i2h2i2h2p2i2h2i2h2nno2h2i2h2nno2h2i2h2i2q2h2i2h2i2XYw{2i2h2i2XYw{2i2h2i2h2p2i2h2i2h2|2}2~222h2i2h2|2}2~222h2i2h2i2q2h2i2h2i2h2i2h2i2h2i2h2i2h2i2h2i2h2i2h2i2h2 \ No newline at end of file
diff --git a/data/maps/LilycoveCity_MoveDeletersHouse/header.s b/data/maps/LilycoveCity_MoveDeletersHouse/header.s
new file mode 100644
index 000000000..cabf8d4ee
--- /dev/null
+++ b/data/maps/LilycoveCity_MoveDeletersHouse/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_MoveDeletersHouse:: @ 8306670
+ .4byte LilycoveCity_MoveDeletersHouse_MapAttributes
+ .4byte LilycoveCity_MoveDeletersHouse_MapEvents
+ .4byte LilycoveCity_MoveDeletersHouse_MapScripts
+ .4byte 0x0
+ .2byte 408
+ .2byte 60
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity_PokemonCenter_1F/header.s b/data/maps/LilycoveCity_PokemonCenter_1F/header.s
new file mode 100644
index 000000000..155d8a611
--- /dev/null
+++ b/data/maps/LilycoveCity_PokemonCenter_1F/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_PokemonCenter_1F:: @ 83065C8
+ .4byte LilycoveCity_PokemonCenter_1F_MapAttributes
+ .4byte LilycoveCity_PokemonCenter_1F_MapEvents
+ .4byte LilycoveCity_PokemonCenter_1F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 61
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity_PokemonCenter_2F/header.s b/data/maps/LilycoveCity_PokemonCenter_2F/header.s
new file mode 100644
index 000000000..d7e073023
--- /dev/null
+++ b/data/maps/LilycoveCity_PokemonCenter_2F/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_PokemonCenter_2F:: @ 83065E4
+ .4byte LilycoveCity_PokemonCenter_2F_MapAttributes
+ .4byte LilycoveCity_PokemonCenter_2F_MapEvents
+ .4byte LilycoveCity_PokemonCenter_2F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 62
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity_PokemonTrainerFanClub/border.bin b/data/maps/LilycoveCity_PokemonTrainerFanClub/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/LilycoveCity_PokemonTrainerFanClub/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/LilycoveCity_PokemonTrainerFanClub/header.s b/data/maps/LilycoveCity_PokemonTrainerFanClub/header.s
new file mode 100644
index 000000000..f67e967f1
--- /dev/null
+++ b/data/maps/LilycoveCity_PokemonTrainerFanClub/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_PokemonTrainerFanClub:: @ 830661C
+ .4byte LilycoveCity_PokemonTrainerFanClub_MapAttributes
+ .4byte LilycoveCity_PokemonTrainerFanClub_MapEvents
+ .4byte LilycoveCity_PokemonTrainerFanClub_MapScripts
+ .4byte 0x0
+ .2byte 408
+ .2byte 107
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LilycoveCity_PokemonTrainerFanClub/map.bin b/data/maps/LilycoveCity_PokemonTrainerFanClub/map.bin
new file mode 100644
index 000000000..cddfe5d9d
--- /dev/null
+++ b/data/maps/LilycoveCity_PokemonTrainerFanClub/map.bin
@@ -0,0 +1,2 @@
+no0vwi    ~22q2$2$2$2$2$282$22292#2#2+2LMLM,2#2#2#292#2#2#2TUTU#2#2#2#292#2#2#2#2#2#2,2#2#2#2#2 322#2#2#2#2#2#2222#2#2#2#2#2#2 526262626272
+hi22$2=2H^HI?2%2p2q292#2#2=2PQPQ?2#2#2#292#2#2E2F2F2F2F2G2#2#2#292#2#2#2#2#2#2#2#2#2#2#292#2#2#2#2 #2#2#2#2#2 \ No newline at end of file
diff --git a/data/maps/LilycoveCity_UnusedMart/header.s b/data/maps/LilycoveCity_UnusedMart/header.s
new file mode 100644
index 000000000..221fac730
--- /dev/null
+++ b/data/maps/LilycoveCity_UnusedMart/header.s
@@ -0,0 +1,15 @@
+LilycoveCity_UnusedMart:: @ 8306600
+ .4byte LilycoveCity_UnusedMart_MapAttributes
+ .4byte LilycoveCity_UnusedMart_MapEvents
+ .4byte LilycoveCity_UnusedMart_MapScripts
+ .4byte 0x0
+ .2byte 404
+ .2byte 63
+ .byte 12
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LinkContestRoom1/border.bin b/data/maps/LinkContestRoom1/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/LinkContestRoom1/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/LinkContestRoom1/header.s b/data/maps/LinkContestRoom1/header.s
new file mode 100644
index 000000000..67d8697e9
--- /dev/null
+++ b/data/maps/LinkContestRoom1/header.s
@@ -0,0 +1,15 @@
+LinkContestRoom1:: @ 83079E8
+ .4byte LinkContestRoom1_MapAttributes
+ .4byte LinkContestRoom1_MapEvents
+ .4byte LinkContestRoom1_MapScripts
+ .4byte 0x0
+ .2byte 440
+ .2byte 226
+ .byte 87
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LinkContestRoom1/map.bin b/data/maps/LinkContestRoom1/map.bin
new file mode 100644
index 000000000..a8853f6ae
--- /dev/null
+++ b/data/maps/LinkContestRoom1/map.bin
@@ -0,0 +1 @@
+```````````````              $%2%2%2%2%2%2%2%2%2%2%2%2%2&$%2%2hiiiiiiij%2%2&$%2%2pq2q2q2q2q2o2q2r%2%2&$%2%2pq2q2q22q2w6q2r%2%2&$%2%2pq2q2q22q2q2q2r%2%2&$%2%2pq2q2q2q2q2q2q2r%2%2&$%2%2xyyk2l2m2yyz%2%2&22222s2t2u2222226s2t2u26 \ No newline at end of file
diff --git a/data/maps/LinkContestRoom2/border.bin b/data/maps/LinkContestRoom2/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/LinkContestRoom2/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/LinkContestRoom2/header.s b/data/maps/LinkContestRoom2/header.s
new file mode 100644
index 000000000..96f0388c0
--- /dev/null
+++ b/data/maps/LinkContestRoom2/header.s
@@ -0,0 +1,15 @@
+LinkContestRoom2:: @ 8307AAC
+ .4byte LinkContestRoom2_MapAttributes
+ .4byte LinkContestRoom2_MapEvents
+ .4byte LinkContestRoom2_MapScripts
+ .4byte 0x0
+ .2byte 440
+ .2byte 233
+ .byte 87
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LinkContestRoom2/map.bin b/data/maps/LinkContestRoom2/map.bin
new file mode 100644
index 000000000..7cb63b40d
--- /dev/null
+++ b/data/maps/LinkContestRoom2/map.bin
@@ -0,0 +1 @@
+```````````````              $%2%2%2%2%2%2%2%2%2%2%2%2%2&$%2%2hiiiiiiij%2%2&$%2%2pq2q2q2q2q2o2q2r%2%2&$%2%2pq2q2q22q2w6q2r%2%2&$%2%2pq2q2q22q2q2q2r%2%2&$%2%2pq2q2q2q2q2q2q2r%2%2&$%2%2xyy{2|2}2yyz%2%2&222222222222262226 \ No newline at end of file
diff --git a/data/maps/LinkContestRoom3/border.bin b/data/maps/LinkContestRoom3/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/LinkContestRoom3/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/LinkContestRoom3/header.s b/data/maps/LinkContestRoom3/header.s
new file mode 100644
index 000000000..3643b39cb
--- /dev/null
+++ b/data/maps/LinkContestRoom3/header.s
@@ -0,0 +1,15 @@
+LinkContestRoom3:: @ 8307AC8
+ .4byte LinkContestRoom3_MapAttributes
+ .4byte LinkContestRoom3_MapEvents
+ .4byte LinkContestRoom3_MapScripts
+ .4byte 0x0
+ .2byte 440
+ .2byte 234
+ .byte 87
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LinkContestRoom3/map.bin b/data/maps/LinkContestRoom3/map.bin
new file mode 100644
index 000000000..59e9e9182
--- /dev/null
+++ b/data/maps/LinkContestRoom3/map.bin
@@ -0,0 +1 @@
+```````````````              $%2%2%2%2%2%2%2%2%2%2%2%2%2&$%2%2hiiiiiiij%2%2&$%2%2pq2q2q2q2q2o2q2r%2%2&$%2%2pq2q2q22q2w6q2r%2%2&$%2%2pq2q2q22q2q2q2r%2%2&$%2%2pq2q2q2q2q2q2q2r%2%2&$%2%2xyy222yyz%2%2&222222222222262226 \ No newline at end of file
diff --git a/data/maps/LinkContestRoom4/border.bin b/data/maps/LinkContestRoom4/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/LinkContestRoom4/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/LinkContestRoom4/header.s b/data/maps/LinkContestRoom4/header.s
new file mode 100644
index 000000000..a656ab463
--- /dev/null
+++ b/data/maps/LinkContestRoom4/header.s
@@ -0,0 +1,15 @@
+LinkContestRoom4:: @ 8307AE4
+ .4byte LinkContestRoom4_MapAttributes
+ .4byte LinkContestRoom4_MapEvents
+ .4byte LinkContestRoom4_MapScripts
+ .4byte 0x0
+ .2byte 440
+ .2byte 235
+ .byte 87
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LinkContestRoom4/map.bin b/data/maps/LinkContestRoom4/map.bin
new file mode 100644
index 000000000..4e2166c19
--- /dev/null
+++ b/data/maps/LinkContestRoom4/map.bin
@@ -0,0 +1 @@
+```````````````              $%2%2%2%2%2%2%2%2%2%2%2%2%2&$%2%2hiiiiiiij%2%2&$%2%2pq2q2q2q2q2o2q2r%2%2&$%2%2pq2q2q22q2w6q2r%2%2&$%2%2pq2q2q22q2q2q2r%2%2&$%2%2pq2q2q2q2q2q2q2r%2%2&$%2%2xyy222yyz%2%2&222222222222262226 \ No newline at end of file
diff --git a/data/maps/LinkContestRoom5/border.bin b/data/maps/LinkContestRoom5/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/LinkContestRoom5/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/LinkContestRoom5/header.s b/data/maps/LinkContestRoom5/header.s
new file mode 100644
index 000000000..229b7b522
--- /dev/null
+++ b/data/maps/LinkContestRoom5/header.s
@@ -0,0 +1,15 @@
+LinkContestRoom5:: @ 8307B00
+ .4byte LinkContestRoom5_MapAttributes
+ .4byte LinkContestRoom5_MapEvents
+ .4byte LinkContestRoom5_MapScripts
+ .4byte 0x0
+ .2byte 440
+ .2byte 236
+ .byte 87
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LinkContestRoom5/map.bin b/data/maps/LinkContestRoom5/map.bin
new file mode 100644
index 000000000..ad068fe7c
--- /dev/null
+++ b/data/maps/LinkContestRoom5/map.bin
@@ -0,0 +1 @@
+```````````````              $%2%2%2%2%2%2%2%2%2%2%2%2%2&$%2%2hiiiiiiij%2%2&$%2%2pq2q2q2q2q2o2q2r%2%2&$%2%2pq2q2q22q2w6q2r%2%2&$%2%2pq2q2q22q2q2q2r%2%2&$%2%2pq2q2q2q2q2q2q2r%2%2&$%2%2xyy222yyz%2%2&222222222222262226 \ No newline at end of file
diff --git a/data/maps/LinkContestRoom6/border.bin b/data/maps/LinkContestRoom6/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/LinkContestRoom6/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/LinkContestRoom6/header.s b/data/maps/LinkContestRoom6/header.s
new file mode 100644
index 000000000..d3706c3c8
--- /dev/null
+++ b/data/maps/LinkContestRoom6/header.s
@@ -0,0 +1,15 @@
+LinkContestRoom6:: @ 8307B1C
+ .4byte LinkContestRoom6_MapAttributes
+ .4byte LinkContestRoom6_MapEvents
+ .4byte LinkContestRoom6_MapScripts
+ .4byte 0x0
+ .2byte 440
+ .2byte 237
+ .byte 87
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LinkContestRoom6/map.bin b/data/maps/LinkContestRoom6/map.bin
new file mode 100644
index 000000000..9fcec5a5e
--- /dev/null
+++ b/data/maps/LinkContestRoom6/map.bin
@@ -0,0 +1 @@
+```````````````              $%2%2%2%2%2%2%2%2%2%2%2%2%2&$%2%2hiiiiiiij%2%2&$%2%2pq2q2q2q2q2o2q2r%2%2&$%2%2pq2q2q22q2w6q2r%2%2&$%2%2pq2q2q22q2q2q2r%2%2&$%2%2pq2q2q2q2q2q2q2r%2%2&$%2%2xyy222yyz%2%2&222222222222262226 \ No newline at end of file
diff --git a/data/maps/LittlerootTown/border.bin b/data/maps/LittlerootTown/border.bin
new file mode 100644
index 000000000..03bcafef1
--- /dev/null
+++ b/data/maps/LittlerootTown/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/LittlerootTown/connections.s b/data/maps/LittlerootTown/connections.s
new file mode 100644
index 000000000..d0afc49bc
--- /dev/null
+++ b/data/maps/LittlerootTown/connections.s
@@ -0,0 +1,7 @@
+LittlerootTown_MapConnectionsList:: @ 8308610
+ connection up, 0, Route101, 0
+
+LittlerootTown_MapConnections:: @ 830861C
+ .4byte 0x1
+ .4byte LittlerootTown_MapConnectionsList
+
diff --git a/data/maps/LittlerootTown/header.s b/data/maps/LittlerootTown/header.s
new file mode 100644
index 000000000..2b39145fc
--- /dev/null
+++ b/data/maps/LittlerootTown/header.s
@@ -0,0 +1,15 @@
+LittlerootTown:: @ 8305544
+ .4byte LittlerootTown_MapAttributes
+ .4byte LittlerootTown_MapEvents
+ .4byte LittlerootTown_MapScripts
+ .4byte LittlerootTown_MapConnections
+ .2byte 405
+ .2byte 10
+ .byte 0
+ .byte 0
+ .byte 2
+ .byte 1
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/LittlerootTown/map.bin b/data/maps/LittlerootTown/map.bin
new file mode 100644
index 000000000..9af76f90e
--- /dev/null
+++ b/data/maps/LittlerootTown/map.bin
@@ -0,0 +1,3 @@
+5000000000000000000000000000000000000002 2 2 2
+20000002 2 2 2
+2000000000000000000000000"20@!000000 @12#0000*:8H)400004(H9:+000000020000000020000000000000000000000000000000000000000000000 2B2C2 2 2 220000000000000JK0000000000000000000000000,A-0000000011000&4I5'00000000110000200000000110000000000000011111111111111 \ No newline at end of file
diff --git a/data/maps/LittlerootTown_BrendansHouse_1F/border.bin b/data/maps/LittlerootTown_BrendansHouse_1F/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/LittlerootTown_BrendansHouse_1F/border.bin
Binary files differ
diff --git a/data/maps/LittlerootTown_BrendansHouse_1F/header.s b/data/maps/LittlerootTown_BrendansHouse_1F/header.s
new file mode 100644
index 000000000..86d8440ad
--- /dev/null
+++ b/data/maps/LittlerootTown_BrendansHouse_1F/header.s
@@ -0,0 +1,15 @@
+LittlerootTown_BrendansHouse_1F:: @ 8305A30
+ .4byte LittlerootTown_BrendansHouse_1F_MapAttributes
+ .4byte LittlerootTown_BrendansHouse_1F_MapEvents
+ .4byte LittlerootTown_BrendansHouse_1F_MapScripts
+ .4byte 0x0
+ .2byte 405
+ .2byte 54
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LittlerootTown_BrendansHouse_1F/map.bin b/data/maps/LittlerootTown_BrendansHouse_1F/map.bin
new file mode 100644
index 000000000..3ae8e69a6
--- /dev/null
+++ b/data/maps/LittlerootTown_BrendansHouse_1F/map.bin
@@ -0,0 +1 @@
+nnnn01234&&  M89:;<222222B222d222222@A222222252H2I2J2.2622222222662222222 2!2"#$2%222222(2)2*2+2,2-222 \ No newline at end of file
diff --git a/data/maps/LittlerootTown_BrendansHouse_2F/border.bin b/data/maps/LittlerootTown_BrendansHouse_2F/border.bin
new file mode 100644
index 000000000..c1b82435c
--- /dev/null
+++ b/data/maps/LittlerootTown_BrendansHouse_2F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/LittlerootTown_BrendansHouse_2F/header.s b/data/maps/LittlerootTown_BrendansHouse_2F/header.s
new file mode 100644
index 000000000..910d126c5
--- /dev/null
+++ b/data/maps/LittlerootTown_BrendansHouse_2F/header.s
@@ -0,0 +1,15 @@
+LittlerootTown_BrendansHouse_2F:: @ 8305A4C
+ .4byte LittlerootTown_BrendansHouse_2F_MapAttributes
+ .4byte LittlerootTown_BrendansHouse_2F_MapEvents
+ .4byte LittlerootTown_BrendansHouse_2F_MapScripts
+ .4byte 0x0
+ .2byte 405
+ .2byte 55
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LittlerootTown_BrendansHouse_2F/map.bin b/data/maps/LittlerootTown_BrendansHouse_2F/map.bin
new file mode 100644
index 000000000..9de4bae2a
--- /dev/null
+++ b/data/maps/LittlerootTown_BrendansHouse_2F/map.bin
@@ -0,0 +1 @@
+RTPTV'   Z[Ue/b2c2x2f2]2x2222{2|2}22222222222222BB222222222222222222222 \ No newline at end of file
diff --git a/data/maps/LittlerootTown_MaysHouse_1F/border.bin b/data/maps/LittlerootTown_MaysHouse_1F/border.bin
new file mode 100644
index 000000000..c1b82435c
--- /dev/null
+++ b/data/maps/LittlerootTown_MaysHouse_1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/LittlerootTown_MaysHouse_1F/header.s b/data/maps/LittlerootTown_MaysHouse_1F/header.s
new file mode 100644
index 000000000..8105a0ba7
--- /dev/null
+++ b/data/maps/LittlerootTown_MaysHouse_1F/header.s
@@ -0,0 +1,15 @@
+LittlerootTown_MaysHouse_1F:: @ 8305A68
+ .4byte LittlerootTown_MaysHouse_1F_MapAttributes
+ .4byte LittlerootTown_MaysHouse_1F_MapEvents
+ .4byte LittlerootTown_MaysHouse_1F_MapScripts
+ .4byte 0x0
+ .2byte 405
+ .2byte 56
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LittlerootTown_MaysHouse_1F/map.bin b/data/maps/LittlerootTown_MaysHouse_1F/map.bin
new file mode 100644
index 000000000..12b4f86c2
--- /dev/null
+++ b/data/maps/LittlerootTown_MaysHouse_1F/map.bin
@@ -0,0 +1 @@
+nnnnno m&&CD120vwux22KL9:82222y22F22222222222@A22222252.2J2H2I26222222222222222 2!2"#$2%2222(2)2*2+2,2-22 \ No newline at end of file
diff --git a/data/maps/LittlerootTown_MaysHouse_2F/border.bin b/data/maps/LittlerootTown_MaysHouse_2F/border.bin
new file mode 100644
index 000000000..c1b82435c
--- /dev/null
+++ b/data/maps/LittlerootTown_MaysHouse_2F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/LittlerootTown_MaysHouse_2F/header.s b/data/maps/LittlerootTown_MaysHouse_2F/header.s
new file mode 100644
index 000000000..0788bfc2e
--- /dev/null
+++ b/data/maps/LittlerootTown_MaysHouse_2F/header.s
@@ -0,0 +1,15 @@
+LittlerootTown_MaysHouse_2F:: @ 8305A84
+ .4byte LittlerootTown_MaysHouse_2F_MapAttributes
+ .4byte LittlerootTown_MaysHouse_2F_MapEvents
+ .4byte LittlerootTown_MaysHouse_2F_MapScripts
+ .4byte 0x0
+ .2byte 405
+ .2byte 57
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LittlerootTown_MaysHouse_2F/map.bin b/data/maps/LittlerootTown_MaysHouse_2F/map.bin
new file mode 100644
index 000000000..b51210332
--- /dev/null
+++ b/data/maps/LittlerootTown_MaysHouse_2F/map.bin
@@ -0,0 +1,2 @@
+ 
+'VTPTQ/eUXYE2222]2g22`2a2222222222222222222222BB2222222222222222 \ No newline at end of file
diff --git a/data/maps/LittlerootTown_ProfessorBirchsLab/border.bin b/data/maps/LittlerootTown_ProfessorBirchsLab/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/LittlerootTown_ProfessorBirchsLab/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/LittlerootTown_ProfessorBirchsLab/header.s b/data/maps/LittlerootTown_ProfessorBirchsLab/header.s
new file mode 100644
index 000000000..c8e61bee7
--- /dev/null
+++ b/data/maps/LittlerootTown_ProfessorBirchsLab/header.s
@@ -0,0 +1,15 @@
+LittlerootTown_ProfessorBirchsLab:: @ 8305AA0
+ .4byte LittlerootTown_ProfessorBirchsLab_MapAttributes
+ .4byte LittlerootTown_ProfessorBirchsLab_MapEvents
+ .4byte LittlerootTown_ProfessorBirchsLab_MapScripts
+ .4byte 0x0
+ .2byte 383
+ .2byte 58
+ .byte 0
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/LittlerootTown_ProfessorBirchsLab/map.bin b/data/maps/LittlerootTown_ProfessorBirchsLab/map.bin
new file mode 100644
index 000000000..0b62afcdf
--- /dev/null
+++ b/data/maps/LittlerootTown_ProfessorBirchsLab/map.bin
@@ -0,0 +1,4 @@
+  <
+   
+
+ !2D"2#2>2"232"232>2>2(2*2*2A22222)2:222222222221B2'$2%2627222222?2?22/2,-,-22222224545222222=2>2>2>2222222G2?2220222222222;.H8922222222I2C:2H@2&22222222KBO2?22.22222?2?2 \ No newline at end of file
diff --git a/data/maps/MagmaHideout_1F/border.bin b/data/maps/MagmaHideout_1F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/MagmaHideout_1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/MagmaHideout_1F/header.s b/data/maps/MagmaHideout_1F/header.s
new file mode 100644
index 000000000..38e543419
--- /dev/null
+++ b/data/maps/MagmaHideout_1F/header.s
@@ -0,0 +1,15 @@
+MagmaHideout_1F:: @ 8307588
+ .4byte MagmaHideout_1F_MapAttributes
+ .4byte MagmaHideout_1F_MapEvents
+ .4byte MagmaHideout_1F_MapScripts
+ .4byte 0x0
+ .2byte 430
+ .2byte 317
+ .byte 66
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 1
+ .byte 2
+
diff --git a/data/maps/MagmaHideout_1F/map.bin b/data/maps/MagmaHideout_1F/map.bin
new file mode 100644
index 000000000..52c2d57eb
--- /dev/null
+++ b/data/maps/MagmaHideout_1F/map.bin
Binary files differ
diff --git a/data/maps/MagmaHideout_B1F/border.bin b/data/maps/MagmaHideout_B1F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/MagmaHideout_B1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/MagmaHideout_B1F/header.s b/data/maps/MagmaHideout_B1F/header.s
new file mode 100644
index 000000000..20a62c8c8
--- /dev/null
+++ b/data/maps/MagmaHideout_B1F/header.s
@@ -0,0 +1,15 @@
+MagmaHideout_B1F:: @ 83075A4
+ .4byte MagmaHideout_B1F_MapAttributes
+ .4byte MagmaHideout_B1F_MapEvents
+ .4byte MagmaHideout_B1F_MapScripts
+ .4byte 0x0
+ .2byte 430
+ .2byte 318
+ .byte 66
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 1
+ .byte 2
+
diff --git a/data/maps/MagmaHideout_B1F/map.bin b/data/maps/MagmaHideout_B1F/map.bin
new file mode 100644
index 000000000..b423ca1a9
--- /dev/null
+++ b/data/maps/MagmaHideout_B1F/map.bin
@@ -0,0 +1,95 @@
+ 01!2
+012!!!!!!!3333
+
+!!!
+STST8292)22)22
+82922)22)2)2)2)2)2)2)27777//
+
+)2)2)2
+
+!2[\01!!
+2[\
+)2(2(2(2(2(2
+)2(2(2(2(22A2B222(2(2*2*27777
+
+72(227
+
+)22)22cd8292)2)2
+'2)22cd
+)2(2(2(2(2(2
+)2(2(2(2(22IJ2(2(2(2(2*2*2*2*2
+
+)2*22(2(2*2*27
+
+)2(2(2(2k2l2(22(2(2
+/2(2(2k2l2
+)2(2(2(22(2
+)2(2(2(2(222222(2(2(22(2(2(2(2
+
+)22(2(22(2(22(2
+
+)2(2(2(2(2(2(2(2(2(2
+'2(2(2(2(2
+)22A2B222  2Y2Y2Y2Y2Y2Y2Y2Y22Y2Y2Y2Y2Y2Y2Y2Y2 
+mmmmmmmo
+
+)2(2(2(2(2(2(22(2(2
+/62(2(2(2(2
+)22IJ2
+vq0q0q0q0q0q0q0w
+  2Y2Y2Y2Y2Y2Y2Y2Y2Y2 )222(2(2(2
+)222222
+$#$!!
+001!3333
+
+~yyyyyyy
+)2(2(2(2(2(2
+)2(2(2(2(2(2
+77333
+828292)2
+
+)22(2(22(2(22(2
+ !!!!!!!!!!  2Y2Y2Y2Y2Y2  2Y2Y2Y2Y2Y2 3333333
+)2(2(2(2*2*2
+
+mmmmmmmo
++,-.333333332
+)2(22(2(22*2*2
+
+vq0q0q0q0q0q0q0w
+
+345601
+0011!! 333333333  2Y2Y2Y2Y2Y2Y2Y2 
+~yyyyyyy
+
+;<=>8292
+82829292)2)2
+)22(2(22(2(22(2
+
+CDEF)22
+)2(22(2(2(2 !!!!!!!!! !!!!!!!!
+
+mmmmmmmo
+
+KLMN)2(2
+)2(2(2(2(2(22)2)2)2)2)2)2)2)2)22)2)2)2)2)2)2)2)2
+
+vq0q0q0q0q0q0q0w
+
+)2UV)22(2  2Y2Y2Y2Y2Y2Y2Y2Y223222222222222(2(2
+
+~yyyyyyy
+
+)2)2)2)2(2(2  2A2B222@2B2332(2(2
+
+)22(2(22(2(22(2
+
+)2(2(2(233
+!!!!!!!!! 2IJ22HJ2(2(2
+  2Y2Y2Y2Y2Y2Y2Y2Y2 
+)2(233
+)2)2)2)2)2)2)2)2)222222222222222(22
+
+3377(2(2
+)2(22(2(2(2(2(2(2(22222222222222(2(2
+ !!!!!!!!!  7777  2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2  !!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!  \ No newline at end of file
diff --git a/data/maps/MagmaHideout_B2F/border.bin b/data/maps/MagmaHideout_B2F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/MagmaHideout_B2F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/MagmaHideout_B2F/header.s b/data/maps/MagmaHideout_B2F/header.s
new file mode 100644
index 000000000..7cfd192dd
--- /dev/null
+++ b/data/maps/MagmaHideout_B2F/header.s
@@ -0,0 +1,15 @@
+MagmaHideout_B2F:: @ 83075C0
+ .4byte MagmaHideout_B2F_MapAttributes
+ .4byte MagmaHideout_B2F_MapEvents
+ .4byte MagmaHideout_B2F_MapScripts
+ .4byte 0x0
+ .2byte 430
+ .2byte 319
+ .byte 66
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 1
+ .byte 2
+
diff --git a/data/maps/MagmaHideout_B2F/map.bin b/data/maps/MagmaHideout_B2F/map.bin
new file mode 100644
index 000000000..68afb0063
--- /dev/null
+++ b/data/maps/MagmaHideout_B2F/map.bin
@@ -0,0 +1,49 @@
+ST|}~|}~ [\012
+!!23456!!3456!!!
+cd82922)22
+)2)22)22;<=>)2)2;<=>)2)2)2
+
+2! k2l22(2(2(2(2
+)2(2(2(2(2CDEF(2(2CDEF2(2(2
+
+'2)22)22)2(2(2(2(2(2(2
+)2(2(2(2(2KLMN(2(2KLMN22(2
+
+/(2(2(2(22A2B222(2(2(2
+)222(2(2(2UV2(2(2(2UV2(2(2(2
+
+/(2(2(2(22IJ2(2(2(2
+)222(2(2(2(2(2(2(2*2*22(2(2(2
+
+)2(2(2(2(222222(2(2(2
+)2:22(2(2(2(2(2(222(222(2(2
+
+)2(2(2(2(222222(2(2(2
+)2*2*22(2(2(2(2(2(2(222(2
+  2Y22Y2Y2Y2Y2Y2Y2Y2Y2Y2Y2  2Y2Y2Y2Y2Y2Y2Y22(2(2:22(2
+(2(2*2*22*2*22(2
+
+01
+!!!!!!!!!!
+!!!!!!!! (2(2(2(2(2(2(2(2(2
+
+8292
+)2)2)2)2)2)2)2)2)2)2 )2)2)2)2)2)2)2)22(2(2(2(2(22Y2Y2Y2 
+)2(2
+)2(2(2(2(2(2(2(22(2)2(22(2(2(2(2(2(2(2(2(2(2(2
+)22
+)2(2(2(2(2(2(2(2(2(2 iiiiiiiiiiii^ !!!
+
+)2(2
+)2(2(2(2piiiif22)2)2)2
+
+)2(2 )2(2(2(2`pppppVVVVVVb2(22(2
+
+)2(2)2(2(2(2`ppppppVVVVVGGGGGVb2(2(2(2
+
+)2(2 )2(2(2(2xpppVVVGGGGGGGGGGVb2(2(2(2
+
+)2(22)2(2(2(2*2pVVGGGGGGGGGGGGGVb2(2(2(2
+
+)2(2(2(2(2(2(2VGGGGGGGGGGGGGGGVb2(2(2(2
+  2Y2Y2Y2Y2Y22`VGGGGGGGGGGGGGGGVb{3(2(2(2 `VGGGGGGGGGGGGGGGVb !!!!!! hiiiiiiiiiiiiiiiiiiij !!!  \ No newline at end of file
diff --git a/data/maps/MauvilleCity/border.bin b/data/maps/MauvilleCity/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/MauvilleCity/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/MauvilleCity/connections.s b/data/maps/MauvilleCity/connections.s
new file mode 100644
index 000000000..e71bc6d94
--- /dev/null
+++ b/data/maps/MauvilleCity/connections.s
@@ -0,0 +1,10 @@
+MauvilleCity_MapConnectionsList:: @ 8308730
+ connection up, 0, Route111, 0
+ connection down, 0, Route110, 0
+ connection left, 0, Route117, 0
+ connection right, 0, Route118, 0
+
+MauvilleCity_MapConnections:: @ 8308760
+ .4byte 0x4
+ .4byte MauvilleCity_MapConnectionsList
+
diff --git a/data/maps/MauvilleCity/header.s b/data/maps/MauvilleCity/header.s
new file mode 100644
index 000000000..0053e7ae4
--- /dev/null
+++ b/data/maps/MauvilleCity/header.s
@@ -0,0 +1,15 @@
+MauvilleCity:: @ 8305480
+ .4byte MauvilleCity_MapAttributes
+ .4byte MauvilleCity_MapEvents
+ .4byte MauvilleCity_MapScripts
+ .4byte MauvilleCity_MapConnections
+ .2byte 399
+ .2byte 3
+ .byte 9
+ .byte 0
+ .byte 2
+ .byte 2
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/MauvilleCity/map.bin b/data/maps/MauvilleCity/map.bin
new file mode 100644
index 000000000..80a38e902
--- /dev/null
+++ b/data/maps/MauvilleCity/map.bin
Binary files differ
diff --git a/data/maps/MauvilleCity_BikeShop/border.bin b/data/maps/MauvilleCity_BikeShop/border.bin
new file mode 100644
index 000000000..064786e8c
--- /dev/null
+++ b/data/maps/MauvilleCity_BikeShop/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/MauvilleCity_BikeShop/header.s b/data/maps/MauvilleCity_BikeShop/header.s
new file mode 100644
index 000000000..c0b88535c
--- /dev/null
+++ b/data/maps/MauvilleCity_BikeShop/header.s
@@ -0,0 +1,15 @@
+MauvilleCity_BikeShop:: @ 8306168
+ .4byte MauvilleCity_BikeShop_MapAttributes
+ .4byte MauvilleCity_BikeShop_MapEvents
+ .4byte MauvilleCity_BikeShop_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 90
+ .byte 9
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/MauvilleCity_BikeShop/map.bin b/data/maps/MauvilleCity_BikeShop/map.bin
new file mode 100644
index 000000000..9891b9fd5
--- /dev/null
+++ b/data/maps/MauvilleCity_BikeShop/map.bin
@@ -0,0 +1,2 @@
+()*+,- 
+    012345222892:2;2<2:2@A2B2?2C2D2!"#2$2%2&2HIJ2?2KL?2?2?2?2P2Q2R2?2ST"?2?2?2?2?2?2?2?2EF!"?2?2?2?2?2?2?2?2MN6?22 2?2?2?2?2?2UV \ No newline at end of file
diff --git a/data/maps/MauvilleCity_GameCorner/border.bin b/data/maps/MauvilleCity_GameCorner/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/MauvilleCity_GameCorner/border.bin
Binary files differ
diff --git a/data/maps/MauvilleCity_GameCorner/header.s b/data/maps/MauvilleCity_GameCorner/header.s
new file mode 100644
index 000000000..016e47e46
--- /dev/null
+++ b/data/maps/MauvilleCity_GameCorner/header.s
@@ -0,0 +1,15 @@
+MauvilleCity_GameCorner:: @ 83061A0
+ .4byte MauvilleCity_GameCorner_MapAttributes
+ .4byte MauvilleCity_GameCorner_MapEvents
+ .4byte MauvilleCity_GameCorner_MapScripts
+ .4byte 0x0
+ .2byte 426
+ .2byte 91
+ .byte 9
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/MauvilleCity_GameCorner/map.bin b/data/maps/MauvilleCity_GameCorner/map.bin
new file mode 100644
index 000000000..ce3f9bf73
--- /dev/null
+++ b/data/maps/MauvilleCity_GameCorner/map.bin
@@ -0,0 +1,3 @@
+<=>>>>? 
+
+ ///DFEFFFG.227772LC2M2N2M2M2O22222222222TVUVUUW 222222222222222\2]2^2^2^2]2_2 22222622$2%2222$2%222222222222222&2,-'22&2,-'22222"# 22"# 222&2,-'22&2,-'22222*+ 22*+ 222&2,-'22&2,-'2222223 2223 222&245'22&245'22222222222222222222222222222222222 \ No newline at end of file
diff --git a/data/maps/MauvilleCity_Gym/border.bin b/data/maps/MauvilleCity_Gym/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/MauvilleCity_Gym/border.bin
Binary files differ
diff --git a/data/maps/MauvilleCity_Gym/header.s b/data/maps/MauvilleCity_Gym/header.s
new file mode 100644
index 000000000..addd97988
--- /dev/null
+++ b/data/maps/MauvilleCity_Gym/header.s
@@ -0,0 +1,15 @@
+MauvilleCity_Gym:: @ 830614C
+ .4byte MauvilleCity_Gym_MapAttributes
+ .4byte MauvilleCity_Gym_MapEvents
+ .4byte MauvilleCity_Gym_MapScripts
+ .4byte 0x0
+ .2byte 364
+ .2byte 89
+ .byte 9
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 1
+
diff --git a/data/maps/MauvilleCity_Gym/map.bin b/data/maps/MauvilleCity_Gym/map.bin
new file mode 100644
index 000000000..73847264c
--- /dev/null
+++ b/data/maps/MauvilleCity_Gym/map.bin
@@ -0,0 +1,3 @@
+&'666622222222222222222 2!22222@() 222222H22222 222232P62232222:2;2C:2;2@22 222222H 2 2222Q2 2!2P622()2222222 2222222222222222
+222
+222222222222222222 \ No newline at end of file
diff --git a/data/maps/MauvilleCity_House1/header.s b/data/maps/MauvilleCity_House1/header.s
new file mode 100644
index 000000000..786b0aadf
--- /dev/null
+++ b/data/maps/MauvilleCity_House1/header.s
@@ -0,0 +1,15 @@
+MauvilleCity_House1:: @ 8306184
+ .4byte MauvilleCity_House1_MapAttributes
+ .4byte MauvilleCity_House1_MapEvents
+ .4byte MauvilleCity_House1_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 60
+ .byte 9
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/MauvilleCity_House2/header.s b/data/maps/MauvilleCity_House2/header.s
new file mode 100644
index 000000000..b5d079c2c
--- /dev/null
+++ b/data/maps/MauvilleCity_House2/header.s
@@ -0,0 +1,15 @@
+MauvilleCity_House2:: @ 83061BC
+ .4byte MauvilleCity_House2_MapAttributes
+ .4byte MauvilleCity_House2_MapEvents
+ .4byte MauvilleCity_House2_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 59
+ .byte 9
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/MauvilleCity_Mart/header.s b/data/maps/MauvilleCity_Mart/header.s
new file mode 100644
index 000000000..a83f5106f
--- /dev/null
+++ b/data/maps/MauvilleCity_Mart/header.s
@@ -0,0 +1,15 @@
+MauvilleCity_Mart:: @ 8306210
+ .4byte MauvilleCity_Mart_MapAttributes
+ .4byte MauvilleCity_Mart_MapEvents
+ .4byte MauvilleCity_Mart_MapScripts
+ .4byte 0x0
+ .2byte 404
+ .2byte 63
+ .byte 9
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/MauvilleCity_PokemonCenter_1F/header.s b/data/maps/MauvilleCity_PokemonCenter_1F/header.s
new file mode 100644
index 000000000..dd8dae9eb
--- /dev/null
+++ b/data/maps/MauvilleCity_PokemonCenter_1F/header.s
@@ -0,0 +1,15 @@
+MauvilleCity_PokemonCenter_1F:: @ 83061D8
+ .4byte MauvilleCity_PokemonCenter_1F_MapAttributes
+ .4byte MauvilleCity_PokemonCenter_1F_MapEvents
+ .4byte MauvilleCity_PokemonCenter_1F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 61
+ .byte 9
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/MauvilleCity_PokemonCenter_2F/header.s b/data/maps/MauvilleCity_PokemonCenter_2F/header.s
new file mode 100644
index 000000000..40800a47a
--- /dev/null
+++ b/data/maps/MauvilleCity_PokemonCenter_2F/header.s
@@ -0,0 +1,15 @@
+MauvilleCity_PokemonCenter_2F:: @ 83061F4
+ .4byte MauvilleCity_PokemonCenter_2F_MapAttributes
+ .4byte MauvilleCity_PokemonCenter_2F_MapEvents
+ .4byte MauvilleCity_PokemonCenter_2F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 62
+ .byte 9
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/MeteorFalls_1F_1R/border.bin b/data/maps/MeteorFalls_1F_1R/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/MeteorFalls_1F_1R/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/MeteorFalls_1F_1R/header.s b/data/maps/MeteorFalls_1F_1R/header.s
new file mode 100644
index 000000000..b1a0fc3aa
--- /dev/null
+++ b/data/maps/MeteorFalls_1F_1R/header.s
@@ -0,0 +1,15 @@
+MeteorFalls_1F_1R:: @ 8306D70
+ .4byte MeteorFalls_1F_1R_MapAttributes
+ .4byte MeteorFalls_1F_1R_MapEvents
+ .4byte MeteorFalls_1F_1R_MapScripts
+ .4byte 0x0
+ .2byte 386
+ .2byte 126
+ .byte 63
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/MeteorFalls_1F_1R/map.bin b/data/maps/MeteorFalls_1F_1R/map.bin
new file mode 100644
index 000000000..bcfb05fd2
--- /dev/null
+++ b/data/maps/MeteorFalls_1F_1R/map.bin
@@ -0,0 +1 @@
+4deDDDLDDDDDDDDDDDDDDdeDDDDfg<4lmDDDTDDDDDDfgDDDDDDlmDDDDno<4tuDDD\DDEFGDnoDDDDDDtuDDDDno<42222242DMN2ODvwDDD<22222242vw<42222 242222242(<222222422<422222?2>2>2>2>2?2ppp(<222222?222<42222422ppp(<222224222<42222?2pppppppp(<2222242222<4>2>2>2?2ppppppppp(=2>2>2>2>2?2222<46666>272yppppppx5262>2>2>2<4deDDDD/.DDfgDDDdeD2D<4lmDDDD/.DDnoDDDlmD2D<4tuDDDD/.LDnoDDDtuD2D<42242DD/.TDnoDD<2222<42242*D/LLLLLLLL.\DvwD(<22222<4>2>2?2*TTTTTTTTZ[22((=2>2>2>2>2<422ppppppppppXY(<4>2>2>2?2pppp8pBqBqBqBqBrB9pp(<BBBBB<42pppx(<BBBBB4B`BaaabB<BBBBBB<42222ppp<B4BhBiiijB=B3}~<42222222222222(<B4B*q0(<<4222222222222(<B4B*p((=>>><42>2>2>2>2>2>222222(=B?B*pp(01111<4>2?2LDD2Dde<2222272yp011111<4fgTDD2Dlm=2>2>2?2DLDD/.DDDDD<4no\)2)2)2)2tu.DDD/DTDD/.DDDDD<4vw)2)2)2)2)2)2)2.DDD/\DD/.DDDDL<4)2)2)2)2)2)2)2)2)2)2)2)2)2)2*DD/.DEFGT<4)2)2)2U2V2W2)2)2)2)2)2)2**D/.DMN2O\<411]^_1111212**/LLL.<2222<4*)2U2W2U2V2V2W2)2)2)2)2)2***TTT(<222<42]_]^^_112112**ppp(<2222<41U2V2V2V2W2U2W2)2)2)2)**ppp(<2222<41]^^^_]_121112*ppp(<2222<4*U2W2U2V2V2W2U2V2W2)2)2)2)2*ppp(<2222<4*]_]^^_]^_)222)22pPQ(=222<4*U2V2V2V2W2U2V2V2W2)222)2*pXY0=2>2<4*]^^^_]^^_21112pppp0111<4*)2)2)2)2)2)2)2)2)2)2)2)2)2pppppZ[<42)2)2)2$2)2)2)2)2)2)2)2)26)2ppppPQppXY<4XXYHIJY")2)2)2)2)2)26ppppXYpppp<6666666666666666666666666666 \ No newline at end of file
diff --git a/data/maps/MeteorFalls_1F_2R/border.bin b/data/maps/MeteorFalls_1F_2R/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/MeteorFalls_1F_2R/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/MeteorFalls_1F_2R/header.s b/data/maps/MeteorFalls_1F_2R/header.s
new file mode 100644
index 000000000..060889f3b
--- /dev/null
+++ b/data/maps/MeteorFalls_1F_2R/header.s
@@ -0,0 +1,15 @@
+MeteorFalls_1F_2R:: @ 8306D8C
+ .4byte MeteorFalls_1F_2R_MapAttributes
+ .4byte MeteorFalls_1F_2R_MapEvents
+ .4byte MeteorFalls_1F_2R_MapScripts
+ .4byte 0x0
+ .2byte 386
+ .2byte 127
+ .byte 63
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/MeteorFalls_1F_2R/map.bin b/data/maps/MeteorFalls_1F_2R/map.bin
new file mode 100644
index 000000000..cea93a39b
--- /dev/null
+++ b/data/maps/MeteorFalls_1F_2R/map.bin
@@ -0,0 +1,2 @@
+>>>>>>>>>>>>>>4111111111111<4222222222222(=>>>>?22222222222201111=>>>>>>>>?2>2>2>2>2>2U2V2V2W2U2W2=>>01111111111212111]^^_]_11=>>>>>11111112>2>2>2>2>2U2W2U2V2V2V2W2=01111114112111]_]^^^_1111<>>>>?*>2>2>2>2>2U2V2W2U2W2U2V2V2W2=>>(<4111121211]^_]_]^^_11(<4*11112>2>2>2U2W2U2V2V2W22U2V2V2W2=((=>4**4111121]_]^^_]^^_(01<4**?2222222U2V2V2W2222222011(<4**2222222]^^_2U2W2U2V2W2=>((<4** 22222U2V2V2W2222]_]^_1((<4**2222]^^_2222222(((<4**
+2222222<42U2W2U2V2V2W2(((<4**>?2222U2V2W2=?2]_]^^_(((<4**?22]^_2222222(((<4**?22222222222222222(((<4**22 2222222222222222(((<4**22222Z[22222222223(<4**pXY222222(<(<4**pppppPQpppp2222 22((34**dQppPQXYpppp222222(((<4**lYPQXYpppppp222222(((<4**pXYppppp6262622223((<4**pppppppp222222(<((<4**pp626262626262222222(<3(<4**pp222222222222(<(<34**kzqqzk}Q(<(<66 \ No newline at end of file
diff --git a/data/maps/MeteorFalls_B1F_1R/border.bin b/data/maps/MeteorFalls_B1F_1R/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/MeteorFalls_B1F_1R/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/MeteorFalls_B1F_1R/header.s b/data/maps/MeteorFalls_B1F_1R/header.s
new file mode 100644
index 000000000..1e83a15fb
--- /dev/null
+++ b/data/maps/MeteorFalls_B1F_1R/header.s
@@ -0,0 +1,15 @@
+MeteorFalls_B1F_1R:: @ 8306DA8
+ .4byte MeteorFalls_B1F_1R_MapAttributes
+ .4byte MeteorFalls_B1F_1R_MapEvents
+ .4byte MeteorFalls_B1F_1R_MapScripts
+ .4byte 0x0
+ .2byte 386
+ .2byte 128
+ .byte 63
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/MeteorFalls_B1F_1R/map.bin b/data/maps/MeteorFalls_B1F_1R/map.bin
new file mode 100644
index 000000000..a37afdb17
--- /dev/null
+++ b/data/maps/MeteorFalls_B1F_1R/map.bin
@@ -0,0 +1,6 @@
+>>>>>>>>>>>>>>>?DDDDDDDDDD=>>>4DDDD/DDDEFGDDDD.DD<?DDD/DDDMN2ODDDD.D(<411111D/22222222.((<4*11c11B*222222222(((<4*BB BBBBB*2222222222p(((<4*BBBBBB*p(((<4*BBBBBB*ppppppppppp((=4*BBRRR
+*ppppppppppp((0<4*BB<R4R*ppppppppppp0(<4*BB<R R4R*pppBqBqBqBqBpp0((<4*BB<RR4R*px(<B
+*yp((<4*BB=R>R?R*p(<B=?*pp(<4*BB1*p(<Bc*pp(<4*BBB211p(<BBB BB*pp(<4*BBB222p(<BBBBB*pp(<4*BBB222pp(<BBBBB*pp(<4*BBB222pp(<BBBB*pp(<4*BBBBBBkBzBqBqBzBkBBBB12pp(<4*BBBBBBBBBBBBBBB*pp(<4*6RRRRRRRR
+BBBBB>BB*pppp(<4*RRRRRR4RBBBBB12pppp(<4R RRRRR>R?RBBBBB*pppp(<4RRR4RBBBBB*pppppp(<4RRRR4RBBBBBBB*pppppp(<4RRRR4RBBBBBBB2pppppxk(<6
+B*ppppx(<(<R4
+*ppppp(<(<R4*ppppp(<(<R4*ppppp(<R4*ppppp(<<R4*ppppp(<<R4*ppppp(<<R4*2222222<<R4*222222<<R4*222222<<R66}~ \ No newline at end of file
diff --git a/data/maps/MeteorFalls_B1F_2R/border.bin b/data/maps/MeteorFalls_B1F_2R/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/MeteorFalls_B1F_2R/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/MeteorFalls_B1F_2R/header.s b/data/maps/MeteorFalls_B1F_2R/header.s
new file mode 100644
index 000000000..366a988ad
--- /dev/null
+++ b/data/maps/MeteorFalls_B1F_2R/header.s
@@ -0,0 +1,15 @@
+MeteorFalls_B1F_2R:: @ 8306DC4
+ .4byte MeteorFalls_B1F_2R_MapAttributes
+ .4byte MeteorFalls_B1F_2R_MapEvents
+ .4byte MeteorFalls_B1F_2R_MapScripts
+ .4byte 0x0
+ .2byte 386
+ .2byte 129
+ .byte 63
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/MeteorFalls_B1F_2R/map.bin b/data/maps/MeteorFalls_B1F_2R/map.bin
new file mode 100644
index 000000000..5f4497752
--- /dev/null
+++ b/data/maps/MeteorFalls_B1F_2R/map.bin
@@ -0,0 +1 @@
+>>>>>>>>>41111111<4*11111(<4**22222((<4**22222((<4**((<4**ppp((<4**ppp((<4**ppp((<4**ppp((<4**ppp((<4**ppp((<4**ppp((<4**ppp((<4**22222((<4**22222((<4*}~(< \ No newline at end of file
diff --git a/data/maps/MossdeepCity/border.bin b/data/maps/MossdeepCity/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/MossdeepCity/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/MossdeepCity/connections.s b/data/maps/MossdeepCity/connections.s
new file mode 100644
index 000000000..73f37c00d
--- /dev/null
+++ b/data/maps/MossdeepCity/connections.s
@@ -0,0 +1,11 @@
+MossdeepCity_MapConnectionsList:: @ 83087D4
+ connection up, 0, Route125, 0
+ connection down, 0, Route127, 0
+ connection left, -40, Route124, 0
+
+MossdeepCity_MapConnections:: @ 83087F8
+ .4byte 0x3
+ .4byte MossdeepCity_MapConnectionsList
+
+ .incbin "baserom.gba", 0x308800, 0x8
+
diff --git a/data/maps/MossdeepCity/header.s b/data/maps/MossdeepCity/header.s
new file mode 100644
index 000000000..bd22da8f1
--- /dev/null
+++ b/data/maps/MossdeepCity/header.s
@@ -0,0 +1,15 @@
+MossdeepCity:: @ 83054F0
+ .4byte MossdeepCity_MapAttributes
+ .4byte MossdeepCity_MapEvents
+ .4byte MossdeepCity_MapScripts
+ .4byte MossdeepCity_MapConnections
+ .2byte 399
+ .2byte 7
+ .byte 13
+ .byte 0
+ .byte 2
+ .byte 2
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/MossdeepCity/map.bin b/data/maps/MossdeepCity/map.bin
new file mode 100644
index 000000000..29b167286
--- /dev/null
+++ b/data/maps/MossdeepCity/map.bin
Binary files differ
diff --git a/data/maps/MossdeepCity_GameCorner_1F/border.bin b/data/maps/MossdeepCity_GameCorner_1F/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/MossdeepCity_GameCorner_1F/border.bin
Binary files differ
diff --git a/data/maps/MossdeepCity_GameCorner_1F/header.s b/data/maps/MossdeepCity_GameCorner_1F/header.s
new file mode 100644
index 000000000..ae519cbfc
--- /dev/null
+++ b/data/maps/MossdeepCity_GameCorner_1F/header.s
@@ -0,0 +1,15 @@
+MossdeepCity_GameCorner_1F:: @ 83068F4
+ .4byte MossdeepCity_GameCorner_1F_MapAttributes
+ .4byte MossdeepCity_GameCorner_1F_MapEvents
+ .4byte MossdeepCity_GameCorner_1F_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 306
+ .byte 13
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/MossdeepCity_GameCorner_1F/map.bin b/data/maps/MossdeepCity_GameCorner_1F/map.bin
new file mode 100644
index 000000000..bad63f412
--- /dev/null
+++ b/data/maps/MossdeepCity_GameCorner_1F/map.bin
@@ -0,0 +1,2 @@
+0no
+2  hvw22$2$2$2$2$282p2~2292#2#2#2#2#2#2#2#2#2#292#2#2#2+2JK,2#2#2#292#2#2#2+2RS,2#2#2#292#2#2#2#2#2#2#2#2"2"292#2#2 #2#2#2#2** \ No newline at end of file
diff --git a/data/maps/MossdeepCity_GameCorner_B1F/border.bin b/data/maps/MossdeepCity_GameCorner_B1F/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/MossdeepCity_GameCorner_B1F/border.bin
Binary files differ
diff --git a/data/maps/MossdeepCity_GameCorner_B1F/header.s b/data/maps/MossdeepCity_GameCorner_B1F/header.s
new file mode 100644
index 000000000..04f65e51f
--- /dev/null
+++ b/data/maps/MossdeepCity_GameCorner_B1F/header.s
@@ -0,0 +1,15 @@
+MossdeepCity_GameCorner_B1F:: @ 8306910
+ .4byte MossdeepCity_GameCorner_B1F_MapAttributes
+ .4byte MossdeepCity_GameCorner_B1F_MapEvents
+ .4byte MossdeepCity_GameCorner_B1F_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 307
+ .byte 13
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/MossdeepCity_GameCorner_B1F/map.bin b/data/maps/MossdeepCity_GameCorner_B1F/map.bin
new file mode 100644
index 000000000..399d05705
--- /dev/null
+++ b/data/maps/MossdeepCity_GameCorner_B1F/map.bin
@@ -0,0 +1,2 @@
+ 
+        6$2$2$2$2$2$2$2$2$2$2692#2#2#2#2#2#2#2#2#2#2#292#2#2#252626272#2#2#2#292#2#2#2=2>2>2?2#2#2#2#292#2#2#2E2F2F2G2#2#2#2#22#2#2#2#2#2#2#2#2#2#2"2#2#2#2#2#2#2#2#2#2#2* \ No newline at end of file
diff --git a/data/maps/MossdeepCity_Gym/border.bin b/data/maps/MossdeepCity_Gym/border.bin
new file mode 100644
index 000000000..064786e8c
--- /dev/null
+++ b/data/maps/MossdeepCity_Gym/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/MossdeepCity_Gym/header.s b/data/maps/MossdeepCity_Gym/header.s
new file mode 100644
index 000000000..5028ace1c
--- /dev/null
+++ b/data/maps/MossdeepCity_Gym/header.s
@@ -0,0 +1,15 @@
+MossdeepCity_Gym:: @ 83067C0
+ .4byte MossdeepCity_Gym_MapAttributes
+ .4byte MossdeepCity_Gym_MapEvents
+ .4byte MossdeepCity_Gym_MapScripts
+ .4byte 0x0
+ .2byte 364
+ .2byte 109
+ .byte 13
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 1
+
diff --git a/data/maps/MossdeepCity_Gym/map.bin b/data/maps/MossdeepCity_Gym/map.bin
new file mode 100644
index 000000000..cd6eb09f9
--- /dev/null
+++ b/data/maps/MossdeepCity_Gym/map.bin
@@ -0,0 +1,50 @@
+@@@@@@@@@@@@@@@@@@@@HHHHHHHHHHHHHHHHHHHH222222 2 2 2 2 2 2 2 2 22222-2222222222222
+2(22222-222222222222 
+2(22222-22222 2222222(
+2(2222222&2%F*2E&2&2&2&22-2282(.2B B B B B B B1 B B B B B/2-2222(.2=7557>226'2G6 /2-2222#4?2,2,2?24
+24,2?24  -22222(2(8222(
+2(22(
+2(-22222(202222(
+2(22(
+2(6662
+2(2662
+2(
+2#
+2(-2&2&2+2*2E+2E&2&2+2*2E*2&2&22(
+2(O2BB))B)BBB))B)BB/20
+2(O2 G32226326G3222622G/28
+2(O2 ?22
+2424?22
+24
+2?2222( 
+2 2
+2(2(222
+2(
+2 2222
+2((
+2(2
+2(20222
+2#2
+2((
+2(2
+2(22222222222 
+2((
+2(2
+2022222222222(
+2((
+202
+2 2 2 22
+2((
+2222222222222222(
+2((22 2 2 2 2 2 2 2 2 2 2 2 2 2(
+2((
+22228222222222(2(
+2((
+2 22222222222202(
+2((
+2(2222<2222<2222 2 2(
+2((
+2#D222D$
+2((
+2 2 2 2 2 2;2222;2222222
+2(022222222!"222222220 \ No newline at end of file
diff --git a/data/maps/MossdeepCity_House1/header.s b/data/maps/MossdeepCity_House1/header.s
new file mode 100644
index 000000000..fd3395b16
--- /dev/null
+++ b/data/maps/MossdeepCity_House1/header.s
@@ -0,0 +1,15 @@
+MossdeepCity_House1:: @ 83067DC
+ .4byte MossdeepCity_House1_MapAttributes
+ .4byte MossdeepCity_House1_MapEvents
+ .4byte MossdeepCity_House1_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 60
+ .byte 13
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/MossdeepCity_House2/header.s b/data/maps/MossdeepCity_House2/header.s
new file mode 100644
index 000000000..a5078fba3
--- /dev/null
+++ b/data/maps/MossdeepCity_House2/header.s
@@ -0,0 +1,15 @@
+MossdeepCity_House2:: @ 83067F8
+ .4byte MossdeepCity_House2_MapAttributes
+ .4byte MossdeepCity_House2_MapEvents
+ .4byte MossdeepCity_House2_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 59
+ .byte 13
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/MossdeepCity_House3/header.s b/data/maps/MossdeepCity_House3/header.s
new file mode 100644
index 000000000..39c394b57
--- /dev/null
+++ b/data/maps/MossdeepCity_House3/header.s
@@ -0,0 +1,15 @@
+MossdeepCity_House3:: @ 8306868
+ .4byte MossdeepCity_House3_MapAttributes
+ .4byte MossdeepCity_House3_MapEvents
+ .4byte MossdeepCity_House3_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 60
+ .byte 13
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/MossdeepCity_House4/header.s b/data/maps/MossdeepCity_House4/header.s
new file mode 100644
index 000000000..14f4b7a53
--- /dev/null
+++ b/data/maps/MossdeepCity_House4/header.s
@@ -0,0 +1,15 @@
+MossdeepCity_House4:: @ 83068A0
+ .4byte MossdeepCity_House4_MapAttributes
+ .4byte MossdeepCity_House4_MapEvents
+ .4byte MossdeepCity_House4_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 80
+ .byte 13
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/MossdeepCity_Mart/header.s b/data/maps/MossdeepCity_Mart/header.s
new file mode 100644
index 000000000..4b3d0a8e9
--- /dev/null
+++ b/data/maps/MossdeepCity_Mart/header.s
@@ -0,0 +1,15 @@
+MossdeepCity_Mart:: @ 830684C
+ .4byte MossdeepCity_Mart_MapAttributes
+ .4byte MossdeepCity_Mart_MapEvents
+ .4byte MossdeepCity_Mart_MapScripts
+ .4byte 0x0
+ .2byte 404
+ .2byte 63
+ .byte 13
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/MossdeepCity_PokemonCenter_1F/header.s b/data/maps/MossdeepCity_PokemonCenter_1F/header.s
new file mode 100644
index 000000000..1dd52ebe2
--- /dev/null
+++ b/data/maps/MossdeepCity_PokemonCenter_1F/header.s
@@ -0,0 +1,15 @@
+MossdeepCity_PokemonCenter_1F:: @ 8306814
+ .4byte MossdeepCity_PokemonCenter_1F_MapAttributes
+ .4byte MossdeepCity_PokemonCenter_1F_MapEvents
+ .4byte MossdeepCity_PokemonCenter_1F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 61
+ .byte 13
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/MossdeepCity_PokemonCenter_2F/header.s b/data/maps/MossdeepCity_PokemonCenter_2F/header.s
new file mode 100644
index 000000000..0dc2c58f5
--- /dev/null
+++ b/data/maps/MossdeepCity_PokemonCenter_2F/header.s
@@ -0,0 +1,15 @@
+MossdeepCity_PokemonCenter_2F:: @ 8306830
+ .4byte MossdeepCity_PokemonCenter_2F_MapAttributes
+ .4byte MossdeepCity_PokemonCenter_2F_MapEvents
+ .4byte MossdeepCity_PokemonCenter_2F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 62
+ .byte 13
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/MossdeepCity_SpaceCenter_1F/border.bin b/data/maps/MossdeepCity_SpaceCenter_1F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/MossdeepCity_SpaceCenter_1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/MossdeepCity_SpaceCenter_1F/header.s b/data/maps/MossdeepCity_SpaceCenter_1F/header.s
new file mode 100644
index 000000000..f3f02f3fa
--- /dev/null
+++ b/data/maps/MossdeepCity_SpaceCenter_1F/header.s
@@ -0,0 +1,15 @@
+MossdeepCity_SpaceCenter_1F:: @ 83068BC
+ .4byte MossdeepCity_SpaceCenter_1F_MapAttributes
+ .4byte MossdeepCity_SpaceCenter_1F_MapEvents
+ .4byte MossdeepCity_SpaceCenter_1F_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 276
+ .byte 13
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/MossdeepCity_SpaceCenter_1F/map.bin b/data/maps/MossdeepCity_SpaceCenter_1F/map.bin
new file mode 100644
index 000000000..44f5081b9
--- /dev/null
+++ b/data/maps/MossdeepCity_SpaceCenter_1F/map.bin
Binary files differ
diff --git a/data/maps/MossdeepCity_SpaceCenter_2F/border.bin b/data/maps/MossdeepCity_SpaceCenter_2F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/MossdeepCity_SpaceCenter_2F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/MossdeepCity_SpaceCenter_2F/header.s b/data/maps/MossdeepCity_SpaceCenter_2F/header.s
new file mode 100644
index 000000000..18646043d
--- /dev/null
+++ b/data/maps/MossdeepCity_SpaceCenter_2F/header.s
@@ -0,0 +1,15 @@
+MossdeepCity_SpaceCenter_2F:: @ 83068D8
+ .4byte MossdeepCity_SpaceCenter_2F_MapAttributes
+ .4byte MossdeepCity_SpaceCenter_2F_MapEvents
+ .4byte MossdeepCity_SpaceCenter_2F_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 277
+ .byte 13
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/MossdeepCity_SpaceCenter_2F/map.bin b/data/maps/MossdeepCity_SpaceCenter_2F/map.bin
new file mode 100644
index 000000000..d2e52d780
--- /dev/null
+++ b/data/maps/MossdeepCity_SpaceCenter_2F/map.bin
Binary files differ
diff --git a/data/maps/MossdeepCity_StevensHouse/border.bin b/data/maps/MossdeepCity_StevensHouse/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/MossdeepCity_StevensHouse/border.bin
Binary files differ
diff --git a/data/maps/MossdeepCity_StevensHouse/header.s b/data/maps/MossdeepCity_StevensHouse/header.s
new file mode 100644
index 000000000..381c8f0c8
--- /dev/null
+++ b/data/maps/MossdeepCity_StevensHouse/header.s
@@ -0,0 +1,15 @@
+MossdeepCity_StevensHouse:: @ 8306884
+ .4byte MossdeepCity_StevensHouse_MapAttributes
+ .4byte MossdeepCity_StevensHouse_MapEvents
+ .4byte MossdeepCity_StevensHouse_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 328
+ .byte 13
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/MossdeepCity_StevensHouse/map.bin b/data/maps/MossdeepCity_StevensHouse/map.bin
new file mode 100644
index 000000000..ade25497a
--- /dev/null
+++ b/data/maps/MossdeepCity_StevensHouse/map.bin
@@ -0,0 +1 @@
+h     ii22p2$2$2$2$2$2$2q2q292#2#2#26666#2#2[392#2#2#26666#2#2c792#2#2#2#2#2,2#2#2#2[392#2#2#2#2#2#2#2#2#2c792#2#2 #2#2#2#2#2#2 \ No newline at end of file
diff --git a/data/maps/MtChimney/border.bin b/data/maps/MtChimney/border.bin
new file mode 100644
index 000000000..9ae2c2126
--- /dev/null
+++ b/data/maps/MtChimney/border.bin
@@ -0,0 +1 @@
+qqqq \ No newline at end of file
diff --git a/data/maps/MtChimney/header.s b/data/maps/MtChimney/header.s
new file mode 100644
index 000000000..b80cbef95
--- /dev/null
+++ b/data/maps/MtChimney/header.s
@@ -0,0 +1,15 @@
+MtChimney:: @ 8306EC0
+ .4byte MtChimney_MapAttributes
+ .4byte MtChimney_MapEvents
+ .4byte MtChimney_MapScripts
+ .4byte 0x0
+ .2byte 406
+ .2byte 137
+ .byte 56
+ .byte 0
+ .byte 7
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/MtChimney/map.bin b/data/maps/MtChimney/map.bin
new file mode 100644
index 000000000..09eb5a906
--- /dev/null
+++ b/data/maps/MtChimney/map.bin
@@ -0,0 +1 @@
+h~qpqqpqpqrrrq2rx|q2{zppppqrrqqqrqqpqqpqqpqpqrrr{z|xtz{~6ppppqrrqqqrqqpqh~qqph~qrrrr{yyyqppppqrrqqqrq{pqpqqqppqqrrrrh~pppqrrqq{zqrpqpqqqppqqrrrrph~pxtzrqqrqqrpqpqqqppq{zrrr~pph~2q2q2q2rqqrqqrpqpqqqpxtzq22227qpppq2q2q2q2rq{zqqrpqpqqqpq2q2q2q2q2q2q2q2h~ppq2q2q2q2rqrqq{zpqpqqqpq2q2q2q2{tttpqppq2q2q2q2rqrqqrqpqx|qqpq2q2q2q2rrr~~h~pq2q2q2{zqrq{zqx|qpqqphijq2rrpqh~h~2q2q2q2rq{zqrqqqpqx|qppqrq222jqqr~h~qph~2q2q2q2q2rqrqqrq{qpqqpqpxtzq2q2q22i2jiiiii~qh~6pq2q2q2q2q2rqrqqrqr|x|qx|x|q2q2q2q2hijriijqqhii~6q6pq2q2q2q2q2rqrqqr{zpqpqqpqx|q2q2q2pqr2i2jii~hi2i2i2~2q2q2q2q2q2rqrq{zr{x|x|qpqqpq2q2q2xtzq2q22i2i2i2i2~2q2q2q2q2q2q2q2q2q2r{zqr{zrqpqpqx|qpq2q2q2q2q2q2q2q2q2q2q2q2q2q2q2q2q2q2q2q2q2q2{zrq{zr{z|pqpqqpqx|q2q2q2q2q2q2q2q2q2q2q2q2q2q2q2q2q2q2q2q2q2rq6rqrqrrqppqx|qpqqxt|q2q2q2q2q2q2q2q2q2q2q2q2q2q2q2q2q2q2q2rq6r{z{zr{px|qx|xttt|pq2q2q2q2q2q2q2q2q2q2q2q2q2q2q2q2q2q2{zq6rrqrqrrpqx|qxttt|pxt|q2q2q2q2q2q2q2q2q2q2q2q2q2q2q2{zq6q6rrqr{zrpqqxt|qqqppq6q6x|q2q2q2q2q2q2q2q2q2q2q2q2q2{z{ttzrqrrqrxtt|qxt|qpxt|q2xt|q2q2{ttttt2ttz{z{ttz{zrqrqqqxt|qpqxt|xtt|xttzq2q2q2q2q2q2{ttz{z{ttz{zqrttt|qx|xt|qxt|q6x|q2q2{2tttttzq2q2{z{z{ttz{tztt|pqqxt|x|qqxt|xttzq2q2q2q2q2q2q2q2q2r{z{z{ttzqqqqpx|qqqpqxtt|qxt|q2q2q2q2q2q2q2q2q2{tzrq2rq2rqqq2{tqqpqxt|q|qqqx|qqx|q2q2q2{ttt2z{tz{{zqq{qqqx|q2pq6pqqqqxtt|xtttzq2q2q2q2{zq2q2r6r{ttzqqqqx|t|xttttt|qxtttttttt2zq2q2q2rqrrq2q262qqqqp66qpqqqqqqxtttttt|q2q2q2q2q2q2q2q2r{rq6qq6qqqqxtt|pqq2qqpq2q2q2q2q2{ttzr6r22{tt|qqqqqqppqq2qqq2&2'2!2!2"2q2q2xttt2tzq2q2q2r{z6r2qxtt|qqqppq22q&2.6/))*Z2Z2Z2Z2Z2Z2Z2Z2T2S2q2{zr26{z2tt|pqqqppq6q-67112q2q2q2q2q2q2q2q2\2[2R2Qq2r6{z266qqpxt|2pxt|62->?9:%q2q2q2q2q2q2q2q2d6q2q2YRQqrq6{|qxt|pt||5FGABWq2q2q2q2q2q2q2q2q2q2q2rqYRQq{z6pq2qpp66qpp22q2q2q2q2q2q2q2q24q2q2q222q2rqrqYRQ{tp22pxt|qp6p666q2q2q2q2q2q2q2q2q2q2q2q266{z{2rqYPap66t|p2x|pqq2q2q2q2{z{6r2rrYx|66qppqpt|q2q2q2q2q2q2q2q2q2q2{z{z66{zrrrqt|qpp6qp66qt6226ttz{z2q2q2rq26rrrq66qp2px|2|6277226{zq26{zq2{zrrtt|qpx|p666|776rq2q2{z2q2rq2rr22p2pqpt|p{z22rq2q2r2rrpp2p6q6p6p6r2r2662rrrpp6xtt|x|x|6r6r22rrr \ No newline at end of file
diff --git a/data/maps/MtChimney_CableCarStation/header.s b/data/maps/MtChimney_CableCarStation/header.s
new file mode 100644
index 000000000..339430b73
--- /dev/null
+++ b/data/maps/MtChimney_CableCarStation/header.s
@@ -0,0 +1,15 @@
+MtChimney_CableCarStation:: @ 8306CAC
+ .4byte MtChimney_CableCarStation_MapAttributes
+ .4byte MtChimney_CableCarStation_MapEvents
+ .4byte MtChimney_CableCarStation_MapScripts
+ .4byte 0x0
+ .2byte 360
+ .2byte 119
+ .byte 56
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/MtPyre_1F/border.bin b/data/maps/MtPyre_1F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/MtPyre_1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/MtPyre_1F/header.s b/data/maps/MtPyre_1F/header.s
new file mode 100644
index 000000000..62678857c
--- /dev/null
+++ b/data/maps/MtPyre_1F/header.s
@@ -0,0 +1,15 @@
+MtPyre_1F:: @ 8306F14
+ .4byte MtPyre_1F_MapAttributes
+ .4byte MtPyre_1F_MapEvents
+ .4byte MtPyre_1F_MapScripts
+ .4byte 0x0
+ .2byte 432
+ .2byte 138
+ .byte 65
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/MtPyre_1F/map.bin b/data/maps/MtPyre_1F/map.bin
new file mode 100644
index 000000000..60b992a73
--- /dev/null
+++ b/data/maps/MtPyre_1F/map.bin
@@ -0,0 +1 @@
+22222&7&722222222222662666266'7222266266626622222222226622222222222222222222666266&7622222666266&762222222222222662222222222266222222222&7622662222266&7622662222266222222222222 \ No newline at end of file
diff --git a/data/maps/MtPyre_2F/border.bin b/data/maps/MtPyre_2F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/MtPyre_2F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/MtPyre_2F/header.s b/data/maps/MtPyre_2F/header.s
new file mode 100644
index 000000000..c7ff3a070
--- /dev/null
+++ b/data/maps/MtPyre_2F/header.s
@@ -0,0 +1,15 @@
+MtPyre_2F:: @ 8306F30
+ .4byte MtPyre_2F_MapAttributes
+ .4byte MtPyre_2F_MapEvents
+ .4byte MtPyre_2F_MapScripts
+ .4byte 0x0
+ .2byte 432
+ .2byte 139
+ .byte 65
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/MtPyre_2F/map.bin b/data/maps/MtPyre_2F/map.bin
new file mode 100644
index 000000000..628d2262e
--- /dev/null
+++ b/data/maps/MtPyre_2F/map.bin
@@ -0,0 +1 @@
+22222222&&2222&2222222222&2222222&222222222222222222222222222&222222&2222232222222222222&22222&22222 \ No newline at end of file
diff --git a/data/maps/MtPyre_3F/border.bin b/data/maps/MtPyre_3F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/MtPyre_3F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/MtPyre_3F/header.s b/data/maps/MtPyre_3F/header.s
new file mode 100644
index 000000000..8675269ff
--- /dev/null
+++ b/data/maps/MtPyre_3F/header.s
@@ -0,0 +1,15 @@
+MtPyre_3F:: @ 8306F4C
+ .4byte MtPyre_3F_MapAttributes
+ .4byte MtPyre_3F_MapEvents
+ .4byte MtPyre_3F_MapScripts
+ .4byte 0x0
+ .2byte 432
+ .2byte 140
+ .byte 65
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/MtPyre_3F/map.bin b/data/maps/MtPyre_3F/map.bin
new file mode 100644
index 000000000..fabbe8cb3
--- /dev/null
+++ b/data/maps/MtPyre_3F/map.bin
@@ -0,0 +1 @@
+22&2222&&&2222&&2222222222222222222&222222&222222222222222222222&222&2222222222222222222222222323 \ No newline at end of file
diff --git a/data/maps/MtPyre_4F/border.bin b/data/maps/MtPyre_4F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/MtPyre_4F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/MtPyre_4F/header.s b/data/maps/MtPyre_4F/header.s
new file mode 100644
index 000000000..0b2d38a46
--- /dev/null
+++ b/data/maps/MtPyre_4F/header.s
@@ -0,0 +1,15 @@
+MtPyre_4F:: @ 8306F68
+ .4byte MtPyre_4F_MapAttributes
+ .4byte MtPyre_4F_MapEvents
+ .4byte MtPyre_4F_MapScripts
+ .4byte 0x0
+ .2byte 432
+ .2byte 141
+ .byte 65
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/MtPyre_4F/map.bin b/data/maps/MtPyre_4F/map.bin
new file mode 100644
index 000000000..98dc679ff
--- /dev/null
+++ b/data/maps/MtPyre_4F/map.bin
@@ -0,0 +1 @@
+2&&222&'&2222002200&222&&&&&222&&2222222222222222222222&226223222&22222&232222222222 \ No newline at end of file
diff --git a/data/maps/MtPyre_5F/border.bin b/data/maps/MtPyre_5F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/MtPyre_5F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/MtPyre_5F/header.s b/data/maps/MtPyre_5F/header.s
new file mode 100644
index 000000000..fffc9cc3d
--- /dev/null
+++ b/data/maps/MtPyre_5F/header.s
@@ -0,0 +1,15 @@
+MtPyre_5F:: @ 8306F84
+ .4byte MtPyre_5F_MapAttributes
+ .4byte MtPyre_5F_MapEvents
+ .4byte MtPyre_5F_MapScripts
+ .4byte 0x0
+ .2byte 432
+ .2byte 142
+ .byte 65
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/MtPyre_5F/map.bin b/data/maps/MtPyre_5F/map.bin
new file mode 100644
index 000000000..12fbeeb7e
--- /dev/null
+++ b/data/maps/MtPyre_5F/map.bin
@@ -0,0 +1 @@
+2&222&2&2222222&222&&&&&222&&2222222222222222222222&2222222226223&222222222&222222222223 \ No newline at end of file
diff --git a/data/maps/MtPyre_6F/border.bin b/data/maps/MtPyre_6F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/MtPyre_6F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/MtPyre_6F/header.s b/data/maps/MtPyre_6F/header.s
new file mode 100644
index 000000000..2c5978436
--- /dev/null
+++ b/data/maps/MtPyre_6F/header.s
@@ -0,0 +1,15 @@
+MtPyre_6F:: @ 8306FA0
+ .4byte MtPyre_6F_MapAttributes
+ .4byte MtPyre_6F_MapEvents
+ .4byte MtPyre_6F_MapScripts
+ .4byte 0x0
+ .2byte 432
+ .2byte 143
+ .byte 65
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/MtPyre_6F/map.bin b/data/maps/MtPyre_6F/map.bin
new file mode 100644
index 000000000..54f599ec2
--- /dev/null
+++ b/data/maps/MtPyre_6F/map.bin
@@ -0,0 +1 @@
+2&222&&222222&22222226622222222262222&2222226622222&22&&272&&22&22222222222232222222222222222222222&2222222 \ No newline at end of file
diff --git a/data/maps/MtPyre_Exterior/border.bin b/data/maps/MtPyre_Exterior/border.bin
new file mode 100644
index 000000000..1d7df4a00
--- /dev/null
+++ b/data/maps/MtPyre_Exterior/border.bin
Binary files differ
diff --git a/data/maps/MtPyre_Exterior/header.s b/data/maps/MtPyre_Exterior/header.s
new file mode 100644
index 000000000..3915e37f3
--- /dev/null
+++ b/data/maps/MtPyre_Exterior/header.s
@@ -0,0 +1,15 @@
+MtPyre_Exterior:: @ 8306FBC
+ .4byte MtPyre_Exterior_MapAttributes
+ .4byte MtPyre_Exterior_MapEvents
+ .4byte MtPyre_Exterior_MapScripts
+ .4byte 0x0
+ .2byte 434
+ .2byte 303
+ .byte 65
+ .byte 0
+ .byte 0
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/MtPyre_Exterior/map.bin b/data/maps/MtPyre_Exterior/map.bin
new file mode 100644
index 000000000..7ab1e0461
--- /dev/null
+++ b/data/maps/MtPyre_Exterior/map.bin
Binary files differ
diff --git a/data/maps/MtPyre_Summit/border.bin b/data/maps/MtPyre_Summit/border.bin
new file mode 100644
index 000000000..1d7df4a00
--- /dev/null
+++ b/data/maps/MtPyre_Summit/border.bin
Binary files differ
diff --git a/data/maps/MtPyre_Summit/header.s b/data/maps/MtPyre_Summit/header.s
new file mode 100644
index 000000000..1016bb131
--- /dev/null
+++ b/data/maps/MtPyre_Summit/header.s
@@ -0,0 +1,15 @@
+MtPyre_Summit:: @ 8306FD8
+ .4byte MtPyre_Summit_MapAttributes
+ .4byte MtPyre_Summit_MapEvents
+ .4byte MtPyre_Summit_MapScripts
+ .4byte 0x0
+ .2byte 434
+ .2byte 304
+ .byte 65
+ .byte 0
+ .byte 6
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/MtPyre_Summit/map.bin b/data/maps/MtPyre_Summit/map.bin
new file mode 100644
index 000000000..1de8bd5ea
--- /dev/null
+++ b/data/maps/MtPyre_Summit/map.bin
Binary files differ
diff --git a/data/maps/NewMauville_Entrance/border.bin b/data/maps/NewMauville_Entrance/border.bin
new file mode 100644
index 000000000..4531975c7
--- /dev/null
+++ b/data/maps/NewMauville_Entrance/border.bin
Binary files differ
diff --git a/data/maps/NewMauville_Entrance/header.s b/data/maps/NewMauville_Entrance/header.s
new file mode 100644
index 000000000..a324ca2f9
--- /dev/null
+++ b/data/maps/NewMauville_Entrance/header.s
@@ -0,0 +1,15 @@
+NewMauville_Entrance:: @ 8307320
+ .4byte NewMauville_Entrance_MapAttributes
+ .4byte NewMauville_Entrance_MapEvents
+ .4byte NewMauville_Entrance_MapScripts
+ .4byte 0x0
+ .2byte 432
+ .2byte 185
+ .byte 62
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/NewMauville_Entrance/map.bin b/data/maps/NewMauville_Entrance/map.bin
new file mode 100644
index 000000000..1e3f471e8
--- /dev/null
+++ b/data/maps/NewMauville_Entrance/map.bin
@@ -0,0 +1 @@
+t||||ut2suu33333suu33333suu33333suu33333suu33333suslllllll \ No newline at end of file
diff --git a/data/maps/NewMauville_Inside/border.bin b/data/maps/NewMauville_Inside/border.bin
new file mode 100644
index 000000000..064786e8c
--- /dev/null
+++ b/data/maps/NewMauville_Inside/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/NewMauville_Inside/header.s b/data/maps/NewMauville_Inside/header.s
new file mode 100644
index 000000000..ccf0d4bc7
--- /dev/null
+++ b/data/maps/NewMauville_Inside/header.s
@@ -0,0 +1,15 @@
+NewMauville_Inside:: @ 830733C
+ .4byte NewMauville_Inside_MapAttributes
+ .4byte NewMauville_Inside_MapEvents
+ .4byte NewMauville_Inside_MapScripts
+ .4byte 0x0
+ .2byte 432
+ .2byte 186
+ .byte 62
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/NewMauville_Inside/map.bin b/data/maps/NewMauville_Inside/map.bin
new file mode 100644
index 000000000..78d1e39ce
--- /dev/null
+++ b/data/maps/NewMauville_Inside/map.bin
@@ -0,0 +1 @@
+hjhjp'''''rp''rpu222u2/2/26/22222u2226u22266rp}22727272726727222'''''''}222266}26666}2266rp}2'''''''}22/2/2/2/2/26/2/2/2~22222/2~26666}222/2rh}2jp}22727272727267272222222222/2/2/2~2222rp'}2rp}2''''''''}22222222>22222rpu22/2~2222rh}2jp}22222222222ry2o2222o272p}2'rxy27272727272727272727272727272zp'w}2w'rp2/2~22/222r'''''''''''''''pu2/2/2~22/2/2rp}262222.22rp}2.2222622rxy2727272727272zy2722227272'''''''p}2''rhjp66u2~22/2/2rp''''rp66}22222rpu222u2/2222u26622rpu2/2~22222}22222222}266}22rp}222222'}22222222}22/2~22rp2222222/26/2~222222222~2222.2rpX6266222726222272727272272o27272o272pX62222''}22'''''w''ry2o272o272o272p}222/2/2/2/2u2/2/2/222rp'w'wwrp}22226222}222222`''ajpu2/2/2/22/22rp}222222}222222'u222/222'''rp}2227222272722222222/26/2~2222222/2/2/2rp6222''}2'}22222726222222227222rp2622222/26/2/2/2/2~2222u2/2~2222''}222222'}2rp2222227262222222}222222rxy27272727272zp}2rp222''}222222~222222r''''''p}2rxy222227272zxy272727272727272727272727272zp}2r'}22''''''''''''''''p}2rp}22rp}2rp}22rhjh\n]p}2rp}22rp'rpv2a}2rp}2222u22222222/2/2/222}2rp}22'''}22}2222'''}22222222226/2~2rp}222/22222/2/2/2~22}2.2222/26/2/2/2~22222o2727272267272zxy27272727272727272722222~22222726727222222w''''''''''''''}2222222''''}222622/222/2rxy2727272727272zxy27272727272727272z'''''''''''''''' \ No newline at end of file
diff --git a/data/maps/OldaleTown/border.bin b/data/maps/OldaleTown/border.bin
new file mode 100644
index 000000000..03bcafef1
--- /dev/null
+++ b/data/maps/OldaleTown/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/OldaleTown/connections.s b/data/maps/OldaleTown/connections.s
new file mode 100644
index 000000000..755c20543
--- /dev/null
+++ b/data/maps/OldaleTown/connections.s
@@ -0,0 +1,9 @@
+OldaleTown_MapConnectionsList:: @ 8308624
+ connection up, 0, Route103, 0
+ connection down, 0, Route101, 0
+ connection left, 0, Route102, 0
+
+OldaleTown_MapConnections:: @ 8308648
+ .4byte 0x3
+ .4byte OldaleTown_MapConnectionsList
+
diff --git a/data/maps/OldaleTown/header.s b/data/maps/OldaleTown/header.s
new file mode 100644
index 000000000..334dc56dd
--- /dev/null
+++ b/data/maps/OldaleTown/header.s
@@ -0,0 +1,15 @@
+OldaleTown:: @ 8305560
+ .4byte OldaleTown_MapAttributes
+ .4byte OldaleTown_MapEvents
+ .4byte OldaleTown_MapScripts
+ .4byte OldaleTown_MapConnections
+ .2byte 363
+ .2byte 11
+ .byte 1
+ .byte 0
+ .byte 2
+ .byte 1
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/OldaleTown/map.bin b/data/maps/OldaleTown/map.bin
new file mode 100644
index 000000000..e6ff2362e
--- /dev/null
+++ b/data/maps/OldaleTown/map.bin
@@ -0,0 +1 @@
+01101110000011110000000011110(0)0)000l2m2m2n2111100123000tuuv1111189:;000|}~11111`ABC00011111111110001111000111111100111111001111111020111111100011111100211111111111111110110001111111111000000H0I02211111l2m2m2n2000PQRS11110tuuv110XYZ[11110|}~0`abc1111000011111000011000111110000111x211111111 \ No newline at end of file
diff --git a/data/maps/OldaleTown_House1/border.bin b/data/maps/OldaleTown_House1/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/OldaleTown_House1/border.bin
Binary files differ
diff --git a/data/maps/OldaleTown_House1/header.s b/data/maps/OldaleTown_House1/header.s
new file mode 100644
index 000000000..f23b9b097
--- /dev/null
+++ b/data/maps/OldaleTown_House1/header.s
@@ -0,0 +1,15 @@
+OldaleTown_House1:: @ 8305ABC
+ .4byte OldaleTown_House1_MapAttributes
+ .4byte OldaleTown_House1_MapEvents
+ .4byte OldaleTown_House1_MapScripts
+ .4byte 0x0
+ .2byte 363
+ .2byte 59
+ .byte 1
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/OldaleTown_House1/map.bin b/data/maps/OldaleTown_House1/map.bin
new file mode 100644
index 000000000..ea185484d
--- /dev/null
+++ b/data/maps/OldaleTown_House1/map.bin
@@ -0,0 +1 @@
+yz   222222$2$2$2$29252626262626272#2#292=H6I62>2>2?2#2#292=P6Q62>2>2?2#2#292E2F2F2F2F2F2G2#2#292#2#2#2#2#2#2#2#2"292#2#2 #2#2#2#2*6 \ No newline at end of file
diff --git a/data/maps/OldaleTown_House2/border.bin b/data/maps/OldaleTown_House2/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/OldaleTown_House2/border.bin
Binary files differ
diff --git a/data/maps/OldaleTown_House2/header.s b/data/maps/OldaleTown_House2/header.s
new file mode 100644
index 000000000..44f67bca0
--- /dev/null
+++ b/data/maps/OldaleTown_House2/header.s
@@ -0,0 +1,15 @@
+OldaleTown_House2:: @ 8305AD8
+ .4byte OldaleTown_House2_MapAttributes
+ .4byte OldaleTown_House2_MapEvents
+ .4byte OldaleTown_House2_MapScripts
+ .4byte 0x0
+ .2byte 363
+ .2byte 60
+ .byte 1
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/OldaleTown_House2/map.bin b/data/maps/OldaleTown_House2/map.bin
new file mode 100644
index 000000000..0e9f07964
--- /dev/null
+++ b/data/maps/OldaleTown_House2/map.bin
@@ -0,0 +1 @@
+0x   hlm2282$2$2$2$2p2t2u2292#2#2#2#2#2#2#2#2#2#292#2#2#2+2JK,2#2#2#292#2#2#2+2RS,2#2#2#22#2#2#2#2#2#2#2#2#2"2#2#2 #2#2#2#2#2* \ No newline at end of file
diff --git a/data/maps/OldaleTown_Mart/border.bin b/data/maps/OldaleTown_Mart/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/OldaleTown_Mart/border.bin
Binary files differ
diff --git a/data/maps/OldaleTown_Mart/header.s b/data/maps/OldaleTown_Mart/header.s
new file mode 100644
index 000000000..7c9ed4c62
--- /dev/null
+++ b/data/maps/OldaleTown_Mart/header.s
@@ -0,0 +1,15 @@
+OldaleTown_Mart:: @ 8305B2C
+ .4byte OldaleTown_Mart_MapAttributes
+ .4byte OldaleTown_Mart_MapEvents
+ .4byte OldaleTown_Mart_MapScripts
+ .4byte 0x0
+ .2byte 404
+ .2byte 63
+ .byte 1
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/OldaleTown_Mart/map.bin b/data/maps/OldaleTown_Mart/map.bin
new file mode 100644
index 000000000..73d90bf31
--- /dev/null
+++ b/data/maps/OldaleTown_Mart/map.bin
@@ -0,0 +1,3 @@
+"#$#$D*()() 222 2220212!212%28292:2222222-@AB222+,22+
+22222234223
+222222;<22;222222222 \ No newline at end of file
diff --git a/data/maps/OldaleTown_PokemonCenter_1F/border.bin b/data/maps/OldaleTown_PokemonCenter_1F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/OldaleTown_PokemonCenter_1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/OldaleTown_PokemonCenter_1F/header.s b/data/maps/OldaleTown_PokemonCenter_1F/header.s
new file mode 100644
index 000000000..1e7904ac8
--- /dev/null
+++ b/data/maps/OldaleTown_PokemonCenter_1F/header.s
@@ -0,0 +1,15 @@
+OldaleTown_PokemonCenter_1F:: @ 8305AF4
+ .4byte OldaleTown_PokemonCenter_1F_MapAttributes
+ .4byte OldaleTown_PokemonCenter_1F_MapEvents
+ .4byte OldaleTown_PokemonCenter_1F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 61
+ .byte 1
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/OldaleTown_PokemonCenter_1F/map.bin b/data/maps/OldaleTown_PokemonCenter_1F/map.bin
new file mode 100644
index 000000000..5201dde15
--- /dev/null
+++ b/data/maps/OldaleTown_PokemonCenter_1F/map.bin
@@ -0,0 +1 @@
+ ij   JK   qrH"#RSI22y2z2P*+2[Q$2222 2&2422X!!!Y<222'2 2222`2l2m2n2o22%222'222222021222322222'26B228292:2;2242=>'222222@2A2B2C22&2EF'2(2222222222&24276 \ No newline at end of file
diff --git a/data/maps/OldaleTown_PokemonCenter_2F/border.bin b/data/maps/OldaleTown_PokemonCenter_2F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/OldaleTown_PokemonCenter_2F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/OldaleTown_PokemonCenter_2F/header.s b/data/maps/OldaleTown_PokemonCenter_2F/header.s
new file mode 100644
index 000000000..14a93944f
--- /dev/null
+++ b/data/maps/OldaleTown_PokemonCenter_2F/header.s
@@ -0,0 +1,15 @@
+OldaleTown_PokemonCenter_2F:: @ 8305B10
+ .4byte OldaleTown_PokemonCenter_2F_MapAttributes
+ .4byte OldaleTown_PokemonCenter_2F_MapEvents
+ .4byte OldaleTown_PokemonCenter_2F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 62
+ .byte 1
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/OldaleTown_PokemonCenter_2F/map.bin b/data/maps/OldaleTown_PokemonCenter_2F/map.bin
new file mode 100644
index 000000000..40cf9afd7
--- /dev/null
+++ b/data/maps/OldaleTown_PokemonCenter_2F/map.bin
@@ -0,0 +1 @@
+  ?L\?M\?N\?GTd6GUd6GVd6G222Oh22Oh22Oh22Ob2 222Wp]Wp]Wp]W/2222ek22_k22_k22_/2Bg2%22g2%22g2%22g2c2222^22222^22222'2 222f42&242&2f42&242&2'2(622222222222276 \ No newline at end of file
diff --git a/data/maps/PacifidlogTown/border.bin b/data/maps/PacifidlogTown/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/PacifidlogTown/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/PacifidlogTown/connections.s b/data/maps/PacifidlogTown/connections.s
new file mode 100644
index 000000000..d0d2deb68
--- /dev/null
+++ b/data/maps/PacifidlogTown/connections.s
@@ -0,0 +1,8 @@
+PacifidlogTown_MapConnectionsList:: @ 83086C4
+ connection left, 0, Route132, 0
+ connection right, 0, Route131, 0
+
+PacifidlogTown_MapConnections:: @ 83086DC
+ .4byte 0x2
+ .4byte PacifidlogTown_MapConnectionsList
+
diff --git a/data/maps/PacifidlogTown/header.s b/data/maps/PacifidlogTown/header.s
new file mode 100644
index 000000000..562fdcf5a
--- /dev/null
+++ b/data/maps/PacifidlogTown/header.s
@@ -0,0 +1,15 @@
+PacifidlogTown:: @ 83055EC
+ .4byte PacifidlogTown_MapAttributes
+ .4byte PacifidlogTown_MapEvents
+ .4byte PacifidlogTown_MapScripts
+ .4byte PacifidlogTown_MapConnections
+ .2byte 408
+ .2byte 16
+ .byte 6
+ .byte 0
+ .byte 2
+ .byte 1
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/PacifidlogTown/map.bin b/data/maps/PacifidlogTown/map.bin
new file mode 100644
index 000000000..02c1454bb
--- /dev/null
+++ b/data/maps/PacifidlogTown/map.bin
@@ -0,0 +1,6 @@
+qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqt||qqqqqqqqqqqqqt||}q{qqqqqqqqqqt|}qqq{q{y|||||||||}qqt||{|qqqqqqt||}qt{{y|||||}t|}{}pppppuv 
+  pppppppppppp}~22ppppppppp 
+  p22pp0123ppp22p2!2!2!22pPQRS p22p 2!2!2!2$2p2XYZ[2p 2!2!2!2$2p())*2,p2HabK2p()*2),ppX2p2!2!2!22pX2ppp`2P2Q2 2!2!2!2!2$2P2Q2P2Q2`2pp()*2)),pppppppppppppX2ppppp 
+  p 
+  pp`2ppppp22p22ppX2pppp22p22pp`2p 
+   2!2!2!2$2p 2!2!2!2$2ppX2p22()*2),()*2),`2p22ppX2ppppX2ppppX2p 2!2!2!2$2pp`2ppppp`2P2Q2P2Q2`2p()*2),ppX2ppppppppX2P2Q2P2Q2P2Q2P2Q2`2pppppppp`2pppppppppppuvpppppppppppppppppp}~ppppppppppppppuvppppr{{{{{{{{{{{{t}~pp{{qqqqklllllmq{{{{qqqqkllqqqqqlllmqqkllqqqqqqqqqqqqllqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq \ No newline at end of file
diff --git a/data/maps/PacifidlogTown_House1/border.bin b/data/maps/PacifidlogTown_House1/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/PacifidlogTown_House1/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/PacifidlogTown_House1/header.s b/data/maps/PacifidlogTown_House1/header.s
new file mode 100644
index 000000000..8ba2ddbb1
--- /dev/null
+++ b/data/maps/PacifidlogTown_House1/header.s
@@ -0,0 +1,15 @@
+PacifidlogTown_House1:: @ 8305E90
+ .4byte PacifidlogTown_House1_MapAttributes
+ .4byte PacifidlogTown_House1_MapEvents
+ .4byte PacifidlogTown_House1_MapScripts
+ .4byte 0x0
+ .2byte 408
+ .2byte 77
+ .byte 6
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/PacifidlogTown_House1/map.bin b/data/maps/PacifidlogTown_House1/map.bin
new file mode 100644
index 000000000..7865fdc7c
--- /dev/null
+++ b/data/maps/PacifidlogTown_House1/map.bin
@@ -0,0 +1 @@
+3333373333333333333333333333733333333333333333733333333373333337 \ No newline at end of file
diff --git a/data/maps/PacifidlogTown_House2/border.bin b/data/maps/PacifidlogTown_House2/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/PacifidlogTown_House2/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/PacifidlogTown_House2/header.s b/data/maps/PacifidlogTown_House2/header.s
new file mode 100644
index 000000000..ad383155d
--- /dev/null
+++ b/data/maps/PacifidlogTown_House2/header.s
@@ -0,0 +1,15 @@
+PacifidlogTown_House2:: @ 8305EAC
+ .4byte PacifidlogTown_House2_MapAttributes
+ .4byte PacifidlogTown_House2_MapEvents
+ .4byte PacifidlogTown_House2_MapScripts
+ .4byte 0x0
+ .2byte 408
+ .2byte 78
+ .byte 6
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/PacifidlogTown_House2/map.bin b/data/maps/PacifidlogTown_House2/map.bin
new file mode 100644
index 000000000..617346322
--- /dev/null
+++ b/data/maps/PacifidlogTown_House2/map.bin
@@ -0,0 +1 @@
+3333333333733333333373333333333333333333333333333333333373333337 \ No newline at end of file
diff --git a/data/maps/PacifidlogTown_House3/header.s b/data/maps/PacifidlogTown_House3/header.s
new file mode 100644
index 000000000..3751a2a7d
--- /dev/null
+++ b/data/maps/PacifidlogTown_House3/header.s
@@ -0,0 +1,15 @@
+PacifidlogTown_House3:: @ 8305EC8
+ .4byte PacifidlogTown_House3_MapAttributes
+ .4byte PacifidlogTown_House3_MapEvents
+ .4byte PacifidlogTown_House3_MapScripts
+ .4byte 0x0
+ .2byte 408
+ .2byte 77
+ .byte 6
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/PacifidlogTown_House4/header.s b/data/maps/PacifidlogTown_House4/header.s
new file mode 100644
index 000000000..3a3740880
--- /dev/null
+++ b/data/maps/PacifidlogTown_House4/header.s
@@ -0,0 +1,15 @@
+PacifidlogTown_House4:: @ 8305EE4
+ .4byte PacifidlogTown_House4_MapAttributes
+ .4byte PacifidlogTown_House4_MapEvents
+ .4byte PacifidlogTown_House4_MapScripts
+ .4byte 0x0
+ .2byte 408
+ .2byte 78
+ .byte 6
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/PacifidlogTown_House5/header.s b/data/maps/PacifidlogTown_House5/header.s
new file mode 100644
index 000000000..db94eff6f
--- /dev/null
+++ b/data/maps/PacifidlogTown_House5/header.s
@@ -0,0 +1,15 @@
+PacifidlogTown_House5:: @ 8305F00
+ .4byte PacifidlogTown_House5_MapAttributes
+ .4byte PacifidlogTown_House5_MapEvents
+ .4byte PacifidlogTown_House5_MapScripts
+ .4byte 0x0
+ .2byte 408
+ .2byte 77
+ .byte 6
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/PacifidlogTown_PokemonCenter_1F/header.s b/data/maps/PacifidlogTown_PokemonCenter_1F/header.s
new file mode 100644
index 000000000..1f23e60e3
--- /dev/null
+++ b/data/maps/PacifidlogTown_PokemonCenter_1F/header.s
@@ -0,0 +1,15 @@
+PacifidlogTown_PokemonCenter_1F:: @ 8305E58
+ .4byte PacifidlogTown_PokemonCenter_1F_MapAttributes
+ .4byte PacifidlogTown_PokemonCenter_1F_MapEvents
+ .4byte PacifidlogTown_PokemonCenter_1F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 61
+ .byte 6
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/PacifidlogTown_PokemonCenter_2F/header.s b/data/maps/PacifidlogTown_PokemonCenter_2F/header.s
new file mode 100644
index 000000000..d9f3a9da9
--- /dev/null
+++ b/data/maps/PacifidlogTown_PokemonCenter_2F/header.s
@@ -0,0 +1,15 @@
+PacifidlogTown_PokemonCenter_2F:: @ 8305E74
+ .4byte PacifidlogTown_PokemonCenter_2F_MapAttributes
+ .4byte PacifidlogTown_PokemonCenter_2F_MapEvents
+ .4byte PacifidlogTown_PokemonCenter_2F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 62
+ .byte 6
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/PetalburgCity/border.bin b/data/maps/PetalburgCity/border.bin
new file mode 100644
index 000000000..03bcafef1
--- /dev/null
+++ b/data/maps/PetalburgCity/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/PetalburgCity/connections.s b/data/maps/PetalburgCity/connections.s
new file mode 100644
index 000000000..d4b725f2e
--- /dev/null
+++ b/data/maps/PetalburgCity/connections.s
@@ -0,0 +1,8 @@
+PetalburgCity_MapConnectionsList:: @ 83086E4
+ connection left, -50, Route104, 0
+ connection right, 10, Route102, 0
+
+PetalburgCity_MapConnections:: @ 83086FC
+ .4byte 0x2
+ .4byte PetalburgCity_MapConnectionsList
+
diff --git a/data/maps/PetalburgCity/header.s b/data/maps/PetalburgCity/header.s
new file mode 100644
index 000000000..dbe89a607
--- /dev/null
+++ b/data/maps/PetalburgCity/header.s
@@ -0,0 +1,15 @@
+PetalburgCity:: @ 8305448
+ .4byte PetalburgCity_MapAttributes
+ .4byte PetalburgCity_MapEvents
+ .4byte PetalburgCity_MapScripts
+ .4byte PetalburgCity_MapConnections
+ .2byte 362
+ .2byte 1
+ .byte 7
+ .byte 0
+ .byte 2
+ .byte 2
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/PetalburgCity/map.bin b/data/maps/PetalburgCity/map.bin
new file mode 100644
index 000000000..35f0172ca
--- /dev/null
+++ b/data/maps/PetalburgCity/map.bin
@@ -0,0 +1,4 @@
+UNMNMNVD   
+F000LL55T  L??0 !"LLL001100LLL00 1"100LLL00 1"10<2fL111L5500 1"1deT0011101T00000P2Q2XY0000 1"1000000 1!1"110000000123550000 1"1000000 1!1"1000000089:;001111!1!1111111!1!1"10000000`ABC11(1)1)1)1)1R2S2)1)1)1)1)1)1!1"100H0I0J0K000110000000 1"100PQRS00 1"10000000 1"100XYZ[00 1"1050 0 0
+000 1"10`abc00 1"100000 1!111111111!1!1100 00 1!1)1)1)1)1)1)1)1)1)1)1*10055 !"00 1"1000000000111100020000 1"10<2=2=2=2=2=2=2>200000000 1"10D  
+EEF00000000 1"10LL110 1"10T L0 1"100 !"00L0 1!111111000L0(1)1)1)1)1)1*1000T11111111111100001111 \ No newline at end of file
diff --git a/data/maps/PetalburgCity_Gym/border.bin b/data/maps/PetalburgCity_Gym/border.bin
new file mode 100644
index 000000000..064786e8c
--- /dev/null
+++ b/data/maps/PetalburgCity_Gym/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/PetalburgCity_Gym/header.s b/data/maps/PetalburgCity_Gym/header.s
new file mode 100644
index 000000000..e48e5f57e
--- /dev/null
+++ b/data/maps/PetalburgCity_Gym/header.s
@@ -0,0 +1,15 @@
+PetalburgCity_Gym:: @ 8305F38
+ .4byte PetalburgCity_Gym_MapAttributes
+ .4byte PetalburgCity_Gym_MapEvents
+ .4byte PetalburgCity_Gym_MapScripts
+ .4byte 0x0
+ .2byte 364
+ .2byte 79
+ .byte 7
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 1
+
diff --git a/data/maps/PetalburgCity_Gym/map.bin b/data/maps/PetalburgCity_Gym/map.bin
new file mode 100644
index 000000000..665783c7b
--- /dev/null
+++ b/data/maps/PetalburgCity_Gym/map.bin
@@ -0,0 +1,10 @@
+xyz{
+    222222222 222222222 222(2)2*2222 222021222222 2228292:2222 222222222
+        222222222 2A2B2C2D2E2F2G22 2I2J2K2L2M2N2O22 2Q2R2S2T2U2V2W22 2Y2Z2[2\2]2^2_22 222222222
+        222222222 2A2B2C2D2E2F2G22 2I2J2K2L2M2N2O22 2Q2R2S2T2U2V2W22 2Y2Z2[2\2]2^2_22 222222222
+        222222222 2A2B2C2D2E2F2G22 2I2J2K2L2M2N2O22 2Q2R2S2T2U2V2W22 2Y2Z2[2\2]2^2_22 222222222
+        222222222 2A2B2C2D2E2F2G22 2I2J2K2L2M2N2O22 2Q2R2S2T2U2V2W22 2Y2Z2[2\2]2^2_22 222222222
+        222222222 2A2B2C2D2E2F2G22 2I2J2K2L2M2N2O22 2Q2R2S2T2U2V2W22 2Y2Z2[2\2]2^2_22 222222222
+        222222222 2A2B2C2D2E2F2G22 2I2J2K2L2M2N2O22 2Q2R2S2T2U2V2W22 2Y2Z2[2\2]2^2_22 222222222
+        222222222 2A2B2C2D2E2F2G22 2I2J2K2L2M2N2O22 2Q2R2S2T2U2V2W22 2Y2Z2[2\2]2^2_22 222222222
+        222222222 222222222 222222222 2@222222@22 2H6+22222H6+2 22322222232 \ No newline at end of file
diff --git a/data/maps/PetalburgCity_House1/header.s b/data/maps/PetalburgCity_House1/header.s
new file mode 100644
index 000000000..7b937d13c
--- /dev/null
+++ b/data/maps/PetalburgCity_House1/header.s
@@ -0,0 +1,15 @@
+PetalburgCity_House1:: @ 8305F54
+ .4byte PetalburgCity_House1_MapAttributes
+ .4byte PetalburgCity_House1_MapEvents
+ .4byte PetalburgCity_House1_MapScripts
+ .4byte 0x0
+ .2byte 362
+ .2byte 59
+ .byte 7
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/PetalburgCity_House2/border.bin b/data/maps/PetalburgCity_House2/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/PetalburgCity_House2/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/PetalburgCity_House2/header.s b/data/maps/PetalburgCity_House2/header.s
new file mode 100644
index 000000000..01dcbff0c
--- /dev/null
+++ b/data/maps/PetalburgCity_House2/header.s
@@ -0,0 +1,15 @@
+PetalburgCity_House2:: @ 8305F70
+ .4byte PetalburgCity_House2_MapAttributes
+ .4byte PetalburgCity_House2_MapEvents
+ .4byte PetalburgCity_House2_MapScripts
+ .4byte 0x0
+ .2byte 362
+ .2byte 80
+ .byte 7
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/PetalburgCity_House2/map.bin b/data/maps/PetalburgCity_House2/map.bin
new file mode 100644
index 000000000..b91b7153b
--- /dev/null
+++ b/data/maps/PetalburgCity_House2/map.bin
@@ -0,0 +1 @@
+nohi    vwp2q2$2$2$2$2$2$2~22Z6[6#2#2#2#2#2#2#2,2b6c6#2#2#2#2#2#2LM92#2#2#2#2#2#2+2TU92#2#2#2#2#2#2#2#2#292#2#2 #2#2#2#2#2 \ No newline at end of file
diff --git a/data/maps/PetalburgCity_Mart/header.s b/data/maps/PetalburgCity_Mart/header.s
new file mode 100644
index 000000000..442adfaae
--- /dev/null
+++ b/data/maps/PetalburgCity_Mart/header.s
@@ -0,0 +1,15 @@
+PetalburgCity_Mart:: @ 8305FC4
+ .4byte PetalburgCity_Mart_MapAttributes
+ .4byte PetalburgCity_Mart_MapEvents
+ .4byte PetalburgCity_Mart_MapScripts
+ .4byte 0x0
+ .2byte 404
+ .2byte 63
+ .byte 7
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/PetalburgCity_PokemonCenter_1F/header.s b/data/maps/PetalburgCity_PokemonCenter_1F/header.s
new file mode 100644
index 000000000..fe7e2fe2b
--- /dev/null
+++ b/data/maps/PetalburgCity_PokemonCenter_1F/header.s
@@ -0,0 +1,15 @@
+PetalburgCity_PokemonCenter_1F:: @ 8305F8C
+ .4byte PetalburgCity_PokemonCenter_1F_MapAttributes
+ .4byte PetalburgCity_PokemonCenter_1F_MapEvents
+ .4byte PetalburgCity_PokemonCenter_1F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 61
+ .byte 7
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/PetalburgCity_PokemonCenter_2F/header.s b/data/maps/PetalburgCity_PokemonCenter_2F/header.s
new file mode 100644
index 000000000..dd489051a
--- /dev/null
+++ b/data/maps/PetalburgCity_PokemonCenter_2F/header.s
@@ -0,0 +1,15 @@
+PetalburgCity_PokemonCenter_2F:: @ 8305FA8
+ .4byte PetalburgCity_PokemonCenter_2F_MapAttributes
+ .4byte PetalburgCity_PokemonCenter_2F_MapEvents
+ .4byte PetalburgCity_PokemonCenter_2F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 62
+ .byte 7
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/PetalburgCity_WallysHouse/header.s b/data/maps/PetalburgCity_WallysHouse/header.s
new file mode 100644
index 000000000..067fc6911
--- /dev/null
+++ b/data/maps/PetalburgCity_WallysHouse/header.s
@@ -0,0 +1,15 @@
+PetalburgCity_WallysHouse:: @ 8305F1C
+ .4byte PetalburgCity_WallysHouse_MapAttributes
+ .4byte PetalburgCity_WallysHouse_MapEvents
+ .4byte PetalburgCity_WallysHouse_MapScripts
+ .4byte 0x0
+ .2byte 362
+ .2byte 60
+ .byte 7
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/PetalburgWoods/border.bin b/data/maps/PetalburgWoods/border.bin
new file mode 100644
index 000000000..03bcafef1
--- /dev/null
+++ b/data/maps/PetalburgWoods/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/PetalburgWoods/header.s b/data/maps/PetalburgWoods/header.s
new file mode 100644
index 000000000..5e47bd649
--- /dev/null
+++ b/data/maps/PetalburgWoods/header.s
@@ -0,0 +1,15 @@
+PetalburgWoods:: @ 8306EA4
+ .4byte PetalburgWoods_MapAttributes
+ .4byte PetalburgWoods_MapEvents
+ .4byte PetalburgWoods_MapScripts
+ .4byte 0x0
+ .2byte 366
+ .2byte 136
+ .byte 59
+ .byte 0
+ .byte 11
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/PetalburgWoods/map.bin b/data/maps/PetalburgWoods/map.bin
new file mode 100644
index 000000000..a032b4c43
--- /dev/null
+++ b/data/maps/PetalburgWoods/map.bin
@@ -0,0 +1 @@
+000000 0 0 0 0 0 0IIII000001111 0 0 000000000000005555 0 0 0000000000000000 0 0000000 0 0 0 04000000 0 0000000 0 0 0000 0 0 0 0 0 00000000 0 0 00111111 0 0000000 0 0 0 0 0 0 00000000000 0 0 0 0 0 0 0555555 0 0 000000000 0 0 0 0 0111111000011111111111111110000 0 00 0 0 05555550000555555555555555000 0 0 000000000100 0 0 00000500 0 0 0000 00000010 0 0 00 0 0 0 0 0 00000000000000000050 0 0 0 0 0 0 0 0 0 0000000 0 0 0 0000000000 0 0 0 0 0 0 0 0 000000 0 0 0 0 0 0 0 0 0000000 011111111000011111111110000005555555500005555555555000000000000 000000 000000 0 000000000 000000 0 0 00000000000000 0 0 0 0 0 0 0 000 0 0000000 0 0 0 0 00 0 0 00000000000 0 0 0 0 0 0000 0 0 00110 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0000000000000000 0 0 0 0550 0 0 0 0 0 0 0 0 0 0 0 0 0111111000000111111 0 0 0 011 0 0 0 011 0 0 0 0 0 0555000000555555 0 0 0 05 0 0 0 05 0 0 0 0 0 00000000 0 0 01111 0 0 0 0 0 0000 0 0 0 0 0 0 000000000000 0 0 0 0 0 0 0 0 040000000 0 0 0 0110 0 0 0 0 0 000000000 0 0 0 0 000005000000000000000 0 0 0 0 0 0 000000000 0 0 0 0 0 01111111100000011111111111111000 0 00 0 0500000055000 0 0 0 0 00000000000 0 011IIIIIIII5 \ No newline at end of file
diff --git a/data/maps/RecordCorner/border.bin b/data/maps/RecordCorner/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/RecordCorner/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/RecordCorner/header.s b/data/maps/RecordCorner/header.s
new file mode 100644
index 000000000..c9296e1d3
--- /dev/null
+++ b/data/maps/RecordCorner/header.s
@@ -0,0 +1,15 @@
+RecordCorner:: @ 83079B0
+ .4byte RecordCorner_MapAttributes
+ .4byte RecordCorner_MapEvents
+ .4byte RecordCorner_MapScripts
+ .4byte 0x0
+ .2byte 422
+ .2byte 224
+ .byte 87
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/RecordCorner/map.bin b/data/maps/RecordCorner/map.bin
new file mode 100644
index 000000000..51dfb6e5a
--- /dev/null
+++ b/data/maps/RecordCorner/map.bin
@@ -0,0 +1 @@
+22222222222222222222222222222222222222222222222222222222222222222222"2"2"2"2 \ No newline at end of file
diff --git a/data/maps/Route101/border.bin b/data/maps/Route101/border.bin
new file mode 100644
index 000000000..03bcafef1
--- /dev/null
+++ b/data/maps/Route101/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Route101/connections.s b/data/maps/Route101/connections.s
new file mode 100644
index 000000000..62f170762
--- /dev/null
+++ b/data/maps/Route101/connections.s
@@ -0,0 +1,8 @@
+Route101_MapConnectionsList:: @ 830881C
+ connection up, 0, OldaleTown, 0
+ connection down, 0, LittlerootTown, 0
+
+Route101_MapConnections:: @ 8308834
+ .4byte 0x2
+ .4byte Route101_MapConnectionsList
+
diff --git a/data/maps/Route101/header.s b/data/maps/Route101/header.s
new file mode 100644
index 000000000..b866083e4
--- /dev/null
+++ b/data/maps/Route101/header.s
@@ -0,0 +1,15 @@
+Route101:: @ 8305608
+ .4byte Route101_MapAttributes
+ .4byte Route101_MapEvents
+ .4byte Route101_MapScripts
+ .4byte Route101_MapConnections
+ .2byte 359
+ .2byte 17
+ .byte 16
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route101/map.bin b/data/maps/Route101/map.bin
new file mode 100644
index 000000000..fab3a1d69
--- /dev/null
+++ b/data/maps/Route101/map.bin
@@ -0,0 +1 @@
+11101110 0 0 000000000 0 0 05 0 0 0 0000000 0 0 0 0 0 0 0 0 0 0000000 0 0 0 0 0 011 0 0 000000011 0 0 0 0 0 0 000n11 0 000000000011011000000001110001110 0 0011110111110 0 0 0 0 001110111110 0 0 0 0 0 00110011100 0 0 0 0 0 0000 0 0000011 0 0 0011 0 0 0 0 00000000 0 00011 0 0 0 00000001111 0 0 0 000000011111111000000 \ No newline at end of file
diff --git a/data/maps/Route102/border.bin b/data/maps/Route102/border.bin
new file mode 100644
index 000000000..03bcafef1
--- /dev/null
+++ b/data/maps/Route102/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Route102/connections.s b/data/maps/Route102/connections.s
new file mode 100644
index 000000000..a19220ac6
--- /dev/null
+++ b/data/maps/Route102/connections.s
@@ -0,0 +1,8 @@
+Route102_MapConnectionsList:: @ 830883C
+ connection left, -10, PetalburgCity, 0
+ connection right, 0, OldaleTown, 0
+
+Route102_MapConnections:: @ 8308854
+ .4byte 0x2
+ .4byte Route102_MapConnectionsList
+
diff --git a/data/maps/Route102/header.s b/data/maps/Route102/header.s
new file mode 100644
index 000000000..4083cbf79
--- /dev/null
+++ b/data/maps/Route102/header.s
@@ -0,0 +1,15 @@
+Route102:: @ 8305624
+ .4byte Route102_MapAttributes
+ .4byte Route102_MapEvents
+ .4byte Route102_MapScripts
+ .4byte Route102_MapConnections
+ .2byte 359
+ .2byte 18
+ .byte 17
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route102/map.bin b/data/maps/Route102/map.bin
new file mode 100644
index 000000000..7378bb44b
--- /dev/null
+++ b/data/maps/Route102/map.bin
@@ -0,0 +1 @@
+ 0 0 00000000000026620 0 0 0 0 0 0 000011110000011110 0 0 0 0 0 0 0 0 0 0 0 0 0011111111000000000000000 0 0 0 0 0 0 0 0 0 0 0 00111q2y211110000000000110000 0 0 0000 0 0 0 0 0 0 0011100111100000 0 00000 0 0 0 00001r210000 0 0 0 0 00110000000000000000000000000 0 0 0 0 0 0 00{00000000000001111111100000 0 0 0 0 0 0 00011000000000000011 0 0 0 0 0 000000000011110000000 0 0 0 000000000111111100011 0 000 0 0 00011000 0 0111111111000 0 01100011000 0 0 0 0111111101111 0 0 0000000000 0 0 0 0 000111111000 0 0 001100 0 0 00000 0 0 0000111001111 0 0 0 00 0 0 0 0 0 0 0000000000000001111111111 0 0 00000011111111 0 0 0 0000011111111 \ No newline at end of file
diff --git a/data/maps/Route103/border.bin b/data/maps/Route103/border.bin
new file mode 100644
index 000000000..03bcafef1
--- /dev/null
+++ b/data/maps/Route103/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Route103/connections.s b/data/maps/Route103/connections.s
new file mode 100644
index 000000000..90117e3df
--- /dev/null
+++ b/data/maps/Route103/connections.s
@@ -0,0 +1,8 @@
+Route103_MapConnectionsList:: @ 830885C
+ connection down, 0, OldaleTown, 0
+ connection right, -60, Route110, 0
+
+Route103_MapConnections:: @ 8308874
+ .4byte 0x2
+ .4byte Route103_MapConnectionsList
+
diff --git a/data/maps/Route103/header.s b/data/maps/Route103/header.s
new file mode 100644
index 000000000..2e5425184
--- /dev/null
+++ b/data/maps/Route103/header.s
@@ -0,0 +1,15 @@
+Route103:: @ 8305640
+ .4byte Route103_MapAttributes
+ .4byte Route103_MapEvents
+ .4byte Route103_MapScripts
+ .4byte Route103_MapConnections
+ .2byte 359
+ .2byte 19
+ .byte 18
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route103/map.bin b/data/maps/Route103/map.bin
new file mode 100644
index 000000000..6c5205b4c
--- /dev/null
+++ b/data/maps/Route103/map.bin
@@ -0,0 +1 @@
+ppppppppppppppsqqsqqqsqqqqqqqqqqqqqqqqqqqqqqqt|}qqquuvpppppppppuvp{|sqqq{qqqqt|||||||qqqqqqqqt}qqqqqu000000 0 0 0 0 0 0}~ppppppppp}~ps{qqq{||||}qtq{||||||||}qqqqqqu00001111 0 0 0 0ppppppuvPQpppppp{sqt||}qqq{|||||||} 0 0000011110 0 0 0 0 0puvppp}~XYppuvpps{|}tyyy 0 0 0 04444444o4 0 0 0 0dQpp}~uvPQpppPQ}~uvPesqqqu0K1L5L5L5M1 0 0 0 0 0 0 000004444444lYuvpp}~XYpppXYpp}~Xm{|||z011111000000 0 0 0 0 0 0 000000000000p}~pppppppppppppppp0000000000000000000 0 0 0 0 0 0 00000111110000ppppppppppppppppppppppp00000000000000000011 0 0 0 0 00040111111000ppppppppppppppppppppppppp011110000000000011111 0 0 0 000000001111000ppppppppppppppppppppppppp0(1)1!1!1111100000011!1!1)1)1)1 0 0 0 0000000 0 0 0 00000ppppppppppppppppppppppppp000(1)1)1)1!1!1111111111111111!1!1)1*10004444444444 0 0 0 0 000000yppppppppppppppppppppppp0000000(1)1)1)1)1)1)1)1)1)1)1)1)1)1)1)1)1)1*1000000000000 0 0 0 0 0 0 0111111dQPQppppppppppuvppppp0000000000000000000000000000000 0 0 0 0 0 0 05555lYXYuvppppPQPQ}~puvpx000000000001100000011111122yp}~uvPQXYXYpPQ}~Pe0000000000000005ppp}~XYpppppXYppXm000000000110000uvppppppppppppppp550000}~ppppppppppppppx00000pppppppppppppppp \ No newline at end of file
diff --git a/data/maps/Route104/border.bin b/data/maps/Route104/border.bin
new file mode 100644
index 000000000..03bcafef1
--- /dev/null
+++ b/data/maps/Route104/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Route104/connections.s b/data/maps/Route104/connections.s
new file mode 100644
index 000000000..c394dfe0e
--- /dev/null
+++ b/data/maps/Route104/connections.s
@@ -0,0 +1,9 @@
+Route104_MapConnectionsList:: @ 830887C
+ connection up, 0, RustboroCity, 0
+ connection down, 0, Route105, 0
+ connection right, 50, PetalburgCity, 0
+
+Route104_MapConnections:: @ 83088A0
+ .4byte 0x3
+ .4byte Route104_MapConnectionsList
+
diff --git a/data/maps/Route104/header.s b/data/maps/Route104/header.s
new file mode 100644
index 000000000..22e965902
--- /dev/null
+++ b/data/maps/Route104/header.s
@@ -0,0 +1,15 @@
+Route104:: @ 830565C
+ .4byte Route104_MapAttributes
+ .4byte Route104_MapEvents
+ .4byte Route104_MapScripts
+ .4byte Route104_MapConnections
+ .2byte 401
+ .2byte 20
+ .byte 19
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route104/map.bin b/data/maps/Route104/map.bin
new file mode 100644
index 000000000..7731bc31c
--- /dev/null
+++ b/data/maps/Route104/map.bin
Binary files differ
diff --git a/data/maps/Route104_MrBrineysHouse/border.bin b/data/maps/Route104_MrBrineysHouse/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/Route104_MrBrineysHouse/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Route104_MrBrineysHouse/header.s b/data/maps/Route104_MrBrineysHouse/header.s
new file mode 100644
index 000000000..eb0ec5221
--- /dev/null
+++ b/data/maps/Route104_MrBrineysHouse/header.s
@@ -0,0 +1,15 @@
+Route104_MrBrineysHouse:: @ 8306C20
+ .4byte Route104_MrBrineysHouse_MapAttributes
+ .4byte Route104_MrBrineysHouse_MapEvents
+ .4byte Route104_MrBrineysHouse_MapScripts
+ .4byte 0x0
+ .2byte 362
+ .2byte 102
+ .byte 19
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route104_MrBrineysHouse/map.bin b/data/maps/Route104_MrBrineysHouse/map.bin
new file mode 100644
index 000000000..7660fd5d7
--- /dev/null
+++ b/data/maps/Route104_MrBrineysHouse/map.bin
@@ -0,0 +1 @@
+222!22!2!22222266)2)2)2)2)2)2)2)2)2)26)2)2)2)2)2)2NO)2)2)2!2)2)2)2)2)2)2VWD2)2)2!2)2)2)2)2)2)2)2)2)2)2)2 333333333333#3333333333 \ No newline at end of file
diff --git a/data/maps/Route104_PrettyPetalFlowerShop/border.bin b/data/maps/Route104_PrettyPetalFlowerShop/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/Route104_PrettyPetalFlowerShop/border.bin
Binary files differ
diff --git a/data/maps/Route104_PrettyPetalFlowerShop/header.s b/data/maps/Route104_PrettyPetalFlowerShop/header.s
new file mode 100644
index 000000000..a0f60a52b
--- /dev/null
+++ b/data/maps/Route104_PrettyPetalFlowerShop/header.s
@@ -0,0 +1,15 @@
+Route104_PrettyPetalFlowerShop:: @ 8306C3C
+ .4byte Route104_PrettyPetalFlowerShop_MapAttributes
+ .4byte Route104_PrettyPetalFlowerShop_MapEvents
+ .4byte Route104_PrettyPetalFlowerShop_MapScripts
+ .4byte 0x0
+ .2byte 362
+ .2byte 118
+ .byte 19
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route104_PrettyPetalFlowerShop/map.bin b/data/maps/Route104_PrettyPetalFlowerShop/map.bin
new file mode 100644
index 000000000..d34ff5c1a
--- /dev/null
+++ b/data/maps/Route104_PrettyPetalFlowerShop/map.bin
Binary files differ
diff --git a/data/maps/Route104_Prototype/border.bin b/data/maps/Route104_Prototype/border.bin
new file mode 100644
index 000000000..03bcafef1
--- /dev/null
+++ b/data/maps/Route104_Prototype/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Route104_Prototype/header.s b/data/maps/Route104_Prototype/header.s
new file mode 100644
index 000000000..9278842ae
--- /dev/null
+++ b/data/maps/Route104_Prototype/header.s
@@ -0,0 +1,15 @@
+Route104_Prototype:: @ 8307CF8
+ .4byte Route104_Prototype_MapAttributes
+ .4byte Route104_Prototype_MapEvents
+ .4byte Route104_Prototype_MapScripts
+ .4byte 0x0
+ .2byte 401
+ .2byte 288
+ .byte 19
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route104_Prototype/map.bin b/data/maps/Route104_Prototype/map.bin
new file mode 100644
index 000000000..71bd63e62
--- /dev/null
+++ b/data/maps/Route104_Prototype/map.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Route104_PrototypePrettyPetalFlowerShop/header.s b/data/maps/Route104_PrototypePrettyPetalFlowerShop/header.s
new file mode 100644
index 000000000..a303e2568
--- /dev/null
+++ b/data/maps/Route104_PrototypePrettyPetalFlowerShop/header.s
@@ -0,0 +1,15 @@
+Route104_PrototypePrettyPetalFlowerShop:: @ 8307D14
+ .4byte Route104_PrototypePrettyPetalFlowerShop_MapAttributes
+ .4byte Route104_PrototypePrettyPetalFlowerShop_MapEvents
+ .4byte Route104_PrototypePrettyPetalFlowerShop_MapScripts
+ .4byte 0x0
+ .2byte 401
+ .2byte 118
+ .byte 19
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route105/border.bin b/data/maps/Route105/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/Route105/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/Route105/connections.s b/data/maps/Route105/connections.s
new file mode 100644
index 000000000..af7d5d271
--- /dev/null
+++ b/data/maps/Route105/connections.s
@@ -0,0 +1,8 @@
+Route105_MapConnectionsList:: @ 83088A8
+ connection up, 0, Route104, 0
+ connection down, 0, Route106, 0
+
+Route105_MapConnections:: @ 83088C0
+ .4byte 0x2
+ .4byte Route105_MapConnectionsList
+
diff --git a/data/maps/Route105/header.s b/data/maps/Route105/header.s
new file mode 100644
index 000000000..ad1e78934
--- /dev/null
+++ b/data/maps/Route105/header.s
@@ -0,0 +1,15 @@
+Route105:: @ 8305678
+ .4byte Route105_MapAttributes
+ .4byte Route105_MapEvents
+ .4byte Route105_MapScripts
+ .4byte Route105_MapConnections
+ .2byte 401
+ .2byte 21
+ .byte 20
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route105/map.bin b/data/maps/Route105/map.bin
new file mode 100644
index 000000000..152aad670
--- /dev/null
+++ b/data/maps/Route105/map.bin
Binary files differ
diff --git a/data/maps/Route106/border.bin b/data/maps/Route106/border.bin
new file mode 100644
index 000000000..281762f5b
--- /dev/null
+++ b/data/maps/Route106/border.bin
@@ -0,0 +1 @@
+CCCC \ No newline at end of file
diff --git a/data/maps/Route106/connections.s b/data/maps/Route106/connections.s
new file mode 100644
index 000000000..28acdb4d5
--- /dev/null
+++ b/data/maps/Route106/connections.s
@@ -0,0 +1,8 @@
+Route106_MapConnectionsList:: @ 83088C8
+ connection up, 0, Route105, 0
+ connection down, 60, DewfordTown, 0
+
+Route106_MapConnections:: @ 83088E0
+ .4byte 0x2
+ .4byte Route106_MapConnectionsList
+
diff --git a/data/maps/Route106/header.s b/data/maps/Route106/header.s
new file mode 100644
index 000000000..fba96d7f7
--- /dev/null
+++ b/data/maps/Route106/header.s
@@ -0,0 +1,15 @@
+Route106:: @ 8305694
+ .4byte Route106_MapAttributes
+ .4byte Route106_MapEvents
+ .4byte Route106_MapScripts
+ .4byte Route106_MapConnections
+ .2byte 401
+ .2byte 22
+ .byte 21
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route106/map.bin b/data/maps/Route106/map.bin
new file mode 100644
index 000000000..d65a278a4
--- /dev/null
+++ b/data/maps/Route106/map.bin
Binary files differ
diff --git a/data/maps/Route107/border.bin b/data/maps/Route107/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/Route107/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/Route107/connections.s b/data/maps/Route107/connections.s
new file mode 100644
index 000000000..8b9ff8e35
--- /dev/null
+++ b/data/maps/Route107/connections.s
@@ -0,0 +1,8 @@
+Route107_MapConnectionsList:: @ 83088E8
+ connection left, 0, DewfordTown, 0
+ connection right, 0, Route108, 0
+
+Route107_MapConnections:: @ 8308900
+ .4byte 0x2
+ .4byte Route107_MapConnectionsList
+
diff --git a/data/maps/Route107/header.s b/data/maps/Route107/header.s
new file mode 100644
index 000000000..efc38ee01
--- /dev/null
+++ b/data/maps/Route107/header.s
@@ -0,0 +1,15 @@
+Route107:: @ 83056B0
+ .4byte Route107_MapAttributes
+ .4byte Route107_MapEvents
+ .4byte Route107_MapScripts
+ .4byte Route107_MapConnections
+ .2byte 401
+ .2byte 23
+ .byte 22
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route107/map.bin b/data/maps/Route107/map.bin
new file mode 100644
index 000000000..521997b0f
--- /dev/null
+++ b/data/maps/Route107/map.bin
Binary files differ
diff --git a/data/maps/Route108/border.bin b/data/maps/Route108/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/Route108/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/Route108/connections.s b/data/maps/Route108/connections.s
new file mode 100644
index 000000000..47a08d49e
--- /dev/null
+++ b/data/maps/Route108/connections.s
@@ -0,0 +1,8 @@
+Route108_MapConnectionsList:: @ 8308908
+ connection left, 0, Route107, 0
+ connection right, -40, Route109, 0
+
+Route108_MapConnections:: @ 8308920
+ .4byte 0x2
+ .4byte Route108_MapConnectionsList
+
diff --git a/data/maps/Route108/header.s b/data/maps/Route108/header.s
new file mode 100644
index 000000000..1456c7c5e
--- /dev/null
+++ b/data/maps/Route108/header.s
@@ -0,0 +1,15 @@
+Route108:: @ 83056CC
+ .4byte Route108_MapAttributes
+ .4byte Route108_MapEvents
+ .4byte Route108_MapScripts
+ .4byte Route108_MapConnections
+ .2byte 401
+ .2byte 24
+ .byte 23
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route108/map.bin b/data/maps/Route108/map.bin
new file mode 100644
index 000000000..0a82f9924
--- /dev/null
+++ b/data/maps/Route108/map.bin
@@ -0,0 +1 @@
+ppppppppppppppppPQpp111111111111pppppppppppppPQpppppppppppPQppppppppppppppXYp11511^5_515^5_511bQppppppppppppXYpppppppppPQXY11pPQpppppppppPc^5_5155n5o551n5o555jYppp11111pPQppppuvpuvPQXYpPc^5_5bQXY11pPQppXkn5o5111^5_51Q3R3S3T35puvPc^5_515bQXYuvpp}~p}~XYpppXkn5o5jYpPc^5_5bQXYuvpn5o5X7YZ[\7]p}~Xkn5o551jYpp}~PQpPQppppppppppXkn5o5jYpp}~pppppp1`abcdepppp11pppppXYpXYpppppppppppppppppppppppppppi3j3k3ppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppuvppppppppppppppPQp11pppppppppppppppPQpppppppppppppppppppp}~ppppppppp11pXY1511ppppppppppppppXYpppppppppppppp111ppppPQppPQpp5ppp1511pp11ppppppPQppPQuvppppp11p51ppuvXYuvXYpppuvppPc^5_5bQpppppXYppXY}~uvppPc^5_5bQpPQ}~pp}~puvppPQp}~PQppPQuvXkn5o5jYppppPQppppppp}~PQXkn5o5jYpPQuvXYppppppp}~PQXYuvpXYPQXY}~ppPQPQXYpppppppppXYpPQXY}~pppPQppppppXYpp}~pppXYpppppPQpppXYXYppppppppppppppppppXYpppppppXYppppppppppppppppppppppXYppppppp \ No newline at end of file
diff --git a/data/maps/Route109/border.bin b/data/maps/Route109/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/Route109/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/Route109/connections.s b/data/maps/Route109/connections.s
new file mode 100644
index 000000000..6e05ad6d1
--- /dev/null
+++ b/data/maps/Route109/connections.s
@@ -0,0 +1,8 @@
+Route109_MapConnectionsList:: @ 8308928
+ connection up, 0, SlateportCity, 0
+ connection left, 40, Route108, 0
+
+Route109_MapConnections:: @ 8308940
+ .4byte 0x2
+ .4byte Route109_MapConnectionsList
+
diff --git a/data/maps/Route109/header.s b/data/maps/Route109/header.s
new file mode 100644
index 000000000..360afd7e0
--- /dev/null
+++ b/data/maps/Route109/header.s
@@ -0,0 +1,15 @@
+Route109:: @ 83056E8
+ .4byte Route109_MapAttributes
+ .4byte Route109_MapEvents
+ .4byte Route109_MapScripts
+ .4byte Route109_MapConnections
+ .2byte 401
+ .2byte 25
+ .byte 24
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route109/map.bin b/data/maps/Route109/map.bin
new file mode 100644
index 000000000..eb83de870
--- /dev/null
+++ b/data/maps/Route109/map.bin
Binary files differ
diff --git a/data/maps/Route109_SeashoreHouse/border.bin b/data/maps/Route109_SeashoreHouse/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/Route109_SeashoreHouse/border.bin
Binary files differ
diff --git a/data/maps/Route109_SeashoreHouse/header.s b/data/maps/Route109_SeashoreHouse/header.s
new file mode 100644
index 000000000..e3416d5d3
--- /dev/null
+++ b/data/maps/Route109_SeashoreHouse/header.s
@@ -0,0 +1,15 @@
+Route109_SeashoreHouse:: @ 8307D30
+ .4byte Route109_SeashoreHouse_MapAttributes
+ .4byte Route109_SeashoreHouse_MapEvents
+ .4byte Route109_SeashoreHouse_MapScripts
+ .4byte 0x0
+ .2byte 427
+ .2byte 244
+ .byte 24
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route109_SeashoreHouse/map.bin b/data/maps/Route109_SeashoreHouse/map.bin
new file mode 100644
index 000000000..cb7853a17
--- /dev/null
+++ b/data/maps/Route109_SeashoreHouse/map.bin
@@ -0,0 +1,3 @@
+./   67
+
+   22222'22222"2,2,2-2$2$2,2,2-2$2$2$2,2,2&2 %2%2%2%2%2!22*2222*2*2222*2*222 $2$2$2$2$2!22%2222%2%2222%2%222 *2*2*2*2*2*2*2*2*2*2*2!22%2%2%2%2%2%2%2%2%222 \ No newline at end of file
diff --git a/data/maps/Route110/border.bin b/data/maps/Route110/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/Route110/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/Route110/connections.s b/data/maps/Route110/connections.s
new file mode 100644
index 000000000..8db62595b
--- /dev/null
+++ b/data/maps/Route110/connections.s
@@ -0,0 +1,9 @@
+Route110_MapConnectionsList:: @ 8308948
+ connection up, 0, MauvilleCity, 0
+ connection down, 0, SlateportCity, 0
+ connection left, 60, Route103, 0
+
+Route110_MapConnections:: @ 830896C
+ .4byte 0x3
+ .4byte Route110_MapConnectionsList
+
diff --git a/data/maps/Route110/header.s b/data/maps/Route110/header.s
new file mode 100644
index 000000000..1e52e049e
--- /dev/null
+++ b/data/maps/Route110/header.s
@@ -0,0 +1,15 @@
+Route110:: @ 8305704
+ .4byte Route110_MapAttributes
+ .4byte Route110_MapEvents
+ .4byte Route110_MapScripts
+ .4byte Route110_MapConnections
+ .2byte 360
+ .2byte 26
+ .byte 25
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route110/map.bin b/data/maps/Route110/map.bin
new file mode 100644
index 000000000..e10394048
--- /dev/null
+++ b/data/maps/Route110/map.bin
Binary files differ
diff --git a/data/maps/Route110_SeasideCyclingRoadNorthEntrance/header.s b/data/maps/Route110_SeasideCyclingRoadNorthEntrance/header.s
new file mode 100644
index 000000000..d887837c1
--- /dev/null
+++ b/data/maps/Route110_SeasideCyclingRoadNorthEntrance/header.s
@@ -0,0 +1,15 @@
+Route110_SeasideCyclingRoadNorthEntrance:: @ 8307E9C
+ .4byte Route110_SeasideCyclingRoadNorthEntrance_MapAttributes
+ .4byte Route110_SeasideCyclingRoadNorthEntrance_MapEvents
+ .4byte Route110_SeasideCyclingRoadNorthEntrance_MapScripts
+ .4byte 0x0
+ .2byte 433
+ .2byte 257
+ .byte 25
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route110_SeasideCyclingRoadSouthEntrance/border.bin b/data/maps/Route110_SeasideCyclingRoadSouthEntrance/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/Route110_SeasideCyclingRoadSouthEntrance/border.bin
Binary files differ
diff --git a/data/maps/Route110_SeasideCyclingRoadSouthEntrance/header.s b/data/maps/Route110_SeasideCyclingRoadSouthEntrance/header.s
new file mode 100644
index 000000000..425dd5bfa
--- /dev/null
+++ b/data/maps/Route110_SeasideCyclingRoadSouthEntrance/header.s
@@ -0,0 +1,15 @@
+Route110_SeasideCyclingRoadSouthEntrance:: @ 8307E80
+ .4byte Route110_SeasideCyclingRoadSouthEntrance_MapAttributes
+ .4byte Route110_SeasideCyclingRoadSouthEntrance_MapEvents
+ .4byte Route110_SeasideCyclingRoadSouthEntrance_MapScripts
+ .4byte 0x0
+ .2byte 433
+ .2byte 257
+ .byte 25
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route110_SeasideCyclingRoadSouthEntrance/map.bin b/data/maps/Route110_SeasideCyclingRoadSouthEntrance/map.bin
new file mode 100644
index 000000000..e9fc770d4
--- /dev/null
+++ b/data/maps/Route110_SeasideCyclingRoadSouthEntrance/map.bin
@@ -0,0 +1 @@
+x2p2p2p2p2622226x2p2p2p22h2h2h2h26666662h2h2h2\2h2h2h2h2p2Y2Z2Y2Z2p2y2h2h2l2d6h2h2h2a6b6a6b6h2h2t6 \ No newline at end of file
diff --git a/data/maps/Route110_TrickHouseCorridor/border.bin b/data/maps/Route110_TrickHouseCorridor/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/Route110_TrickHouseCorridor/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Route110_TrickHouseCorridor/header.s b/data/maps/Route110_TrickHouseCorridor/header.s
new file mode 100644
index 000000000..892f42635
--- /dev/null
+++ b/data/maps/Route110_TrickHouseCorridor/header.s
@@ -0,0 +1,15 @@
+Route110_TrickHouseCorridor:: @ 8307D84
+ .4byte Route110_TrickHouseCorridor_MapAttributes
+ .4byte Route110_TrickHouseCorridor_MapEvents
+ .4byte Route110_TrickHouseCorridor_MapScripts
+ .4byte 0x0
+ .2byte 448
+ .2byte 247
+ .byte 25
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route110_TrickHouseCorridor/map.bin b/data/maps/Route110_TrickHouseCorridor/map.bin
new file mode 100644
index 000000000..8981d28bd
--- /dev/null
+++ b/data/maps/Route110_TrickHouseCorridor/map.bin
@@ -0,0 +1 @@
+2!2!2!2!2!2!2!2!2!2!22!2)2)2)2)2)2)2)2)2)2)2)2!2)2)2!2)2)2!2)2)2!2)2)22!22!2)2)2!2)2)2)2)2)2!2)2)2)2)2)2!2)2)2!2)2)2!2)2)2!2)2)2!2)2)2!2)2)2!2)2)2!2)2)2!2)2)2!2)2)2!2)2)2!2)2)22!22!2)2)2)222 \ No newline at end of file
diff --git a/data/maps/Route110_TrickHouseEnd/border.bin b/data/maps/Route110_TrickHouseEnd/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/Route110_TrickHouseEnd/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Route110_TrickHouseEnd/header.s b/data/maps/Route110_TrickHouseEnd/header.s
new file mode 100644
index 000000000..bb6a7ebec
--- /dev/null
+++ b/data/maps/Route110_TrickHouseEnd/header.s
@@ -0,0 +1,15 @@
+Route110_TrickHouseEnd:: @ 8307D68
+ .4byte Route110_TrickHouseEnd_MapAttributes
+ .4byte Route110_TrickHouseEnd_MapEvents
+ .4byte Route110_TrickHouseEnd_MapScripts
+ .4byte 0x0
+ .2byte 448
+ .2byte 246
+ .byte 25
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route110_TrickHouseEnd/map.bin b/data/maps/Route110_TrickHouseEnd/map.bin
new file mode 100644
index 000000000..506fdb644
--- /dev/null
+++ b/data/maps/Route110_TrickHouseEnd/map.bin
@@ -0,0 +1 @@
+26 26!22222!2!2!22!2!2!2!2)2)2)2)2)2D2)2)2)2)2)2!2)2)2)2)2NO)2)2)2)2)2!2)2)2)2D2VWD2)2)2)2)2!2)2)2)2)2)2)2)2)2)2)2)2!2)2)2)2)2)2)2)2)2)2)2)2 \ No newline at end of file
diff --git a/data/maps/Route110_TrickHouseEntrance/border.bin b/data/maps/Route110_TrickHouseEntrance/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/Route110_TrickHouseEntrance/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Route110_TrickHouseEntrance/header.s b/data/maps/Route110_TrickHouseEntrance/header.s
new file mode 100644
index 000000000..58ec74e0e
--- /dev/null
+++ b/data/maps/Route110_TrickHouseEntrance/header.s
@@ -0,0 +1,15 @@
+Route110_TrickHouseEntrance:: @ 8307D4C
+ .4byte Route110_TrickHouseEntrance_MapAttributes
+ .4byte Route110_TrickHouseEntrance_MapEvents
+ .4byte Route110_TrickHouseEntrance_MapScripts
+ .4byte 0x0
+ .2byte 448
+ .2byte 245
+ .byte 25
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route110_TrickHouseEntrance/map.bin b/data/maps/Route110_TrickHouseEntrance/map.bin
new file mode 100644
index 000000000..1306bb9b5
--- /dev/null
+++ b/data/maps/Route110_TrickHouseEntrance/map.bin
@@ -0,0 +1 @@
+6!2!2!2!2!2!2!2!2!2222!2)2)2)2D2NOD2)2)2)2)23)2)2)2D2VWD2)2)2)23'7)2)2)2)2)2)2)2)2)2)2"7 333333333333#333332233333 \ No newline at end of file
diff --git a/data/maps/Route110_TrickHousePuzzle1/border.bin b/data/maps/Route110_TrickHousePuzzle1/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle1/border.bin
Binary files differ
diff --git a/data/maps/Route110_TrickHousePuzzle1/header.s b/data/maps/Route110_TrickHousePuzzle1/header.s
new file mode 100644
index 000000000..f3a32d7ed
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle1/header.s
@@ -0,0 +1,15 @@
+Route110_TrickHousePuzzle1:: @ 8307DA0
+ .4byte Route110_TrickHousePuzzle1_MapAttributes
+ .4byte Route110_TrickHousePuzzle1_MapEvents
+ .4byte Route110_TrickHousePuzzle1_MapScripts
+ .4byte 0x0
+ .2byte 448
+ .2byte 248
+ .byte 25
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route110_TrickHousePuzzle1/map.bin b/data/maps/Route110_TrickHousePuzzle1/map.bin
new file mode 100644
index 000000000..c809b7482
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle1/map.bin
@@ -0,0 +1,2 @@
+o233333333334
+w6 #$+$$$+$$$$!222Z2Z2*Z2Z2Z2*Z2Z2Z2Z2*22222222222222222222,222,2222,2222#$$+$$$$+$$$$%2Z2Z2Z2"Z2Z2Z2Z2*Z2Z2Z2Z2Z22222"2222222222222,2222,22222012 $%2 $$$$+$%Z2Z22*Z2Z22"Z2Z2Z2Z2*Z2Z22222222"2222222222,222,2222,222#$$$+$$$$+$$%22Z2Z2Z2Z2"Z2Z2Z2Z2*Z2Z2Z2222222"22222222222222,2222,2222#$%2#$$+$$$%201Z2Z2Z22Z2Z2Z2"Z2Z2Z2Z22Z2Z22222222*22222222222222Z22222222 \ No newline at end of file
diff --git a/data/maps/Route110_TrickHousePuzzle2/border.bin b/data/maps/Route110_TrickHousePuzzle2/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle2/border.bin
Binary files differ
diff --git a/data/maps/Route110_TrickHousePuzzle2/header.s b/data/maps/Route110_TrickHousePuzzle2/header.s
new file mode 100644
index 000000000..2f7f3d519
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle2/header.s
@@ -0,0 +1,15 @@
+Route110_TrickHousePuzzle2:: @ 8307DBC
+ .4byte Route110_TrickHousePuzzle2_MapAttributes
+ .4byte Route110_TrickHousePuzzle2_MapEvents
+ .4byte Route110_TrickHousePuzzle2_MapScripts
+ .4byte 0x0
+ .2byte 448
+ .2byte 249
+ .byte 25
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route110_TrickHousePuzzle2/map.bin b/data/maps/Route110_TrickHousePuzzle2/map.bin
new file mode 100644
index 000000000..819080ced
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle2/map.bin
@@ -0,0 +1,2 @@
+o         
+w6 222X22222222222222222222222i2222222i222222222222222222222222222222222222222X22222222222222i22222222222i22222222222222222222222222222222X2222222222222222222222222222222222222222X2 \ No newline at end of file
diff --git a/data/maps/Route110_TrickHousePuzzle3/border.bin b/data/maps/Route110_TrickHousePuzzle3/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle3/border.bin
Binary files differ
diff --git a/data/maps/Route110_TrickHousePuzzle3/header.s b/data/maps/Route110_TrickHousePuzzle3/header.s
new file mode 100644
index 000000000..52000d55a
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle3/header.s
@@ -0,0 +1,15 @@
+Route110_TrickHousePuzzle3:: @ 8307DD8
+ .4byte Route110_TrickHousePuzzle3_MapAttributes
+ .4byte Route110_TrickHousePuzzle3_MapEvents
+ .4byte Route110_TrickHousePuzzle3_MapScripts
+ .4byte 0x0
+ .2byte 448
+ .2byte 250
+ .byte 25
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route110_TrickHousePuzzle3/map.bin b/data/maps/Route110_TrickHousePuzzle3/map.bin
new file mode 100644
index 000000000..4dc43a00d
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle3/map.bin
@@ -0,0 +1,2 @@
+o         
+w6 &22&22&22&X22&22-X22-22-K2L2-22-K2L2522:225S2T2:22MS2T2q222B22q222B22U222K2L2829222./225S2T25@AM22:675X22~22X222U222Bq2q2q222./&K2L2K2L2&22K2L2567"S2T2:S2T2"2X2MS2T2q2q2q2"22B22"22U22222-X228292-829222522M22:@A5@A:22q222U222B22q222B228292./2222K2L25@A567:22M22:S2T2q222q2q2q2B22U222B2222K2L2K2L28292./5225S2T25S2T25@A567q222q22X2q222q222q2q2q2222222222222222 \ No newline at end of file
diff --git a/data/maps/Route110_TrickHousePuzzle4/border.bin b/data/maps/Route110_TrickHousePuzzle4/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle4/border.bin
Binary files differ
diff --git a/data/maps/Route110_TrickHousePuzzle4/header.s b/data/maps/Route110_TrickHousePuzzle4/header.s
new file mode 100644
index 000000000..6f8c508a0
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle4/header.s
@@ -0,0 +1,15 @@
+Route110_TrickHousePuzzle4:: @ 8307DF4
+ .4byte Route110_TrickHousePuzzle4_MapAttributes
+ .4byte Route110_TrickHousePuzzle4_MapEvents
+ .4byte Route110_TrickHousePuzzle4_MapScripts
+ .4byte 0x0
+ .2byte 448
+ .2byte 251
+ .byte 25
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route110_TrickHousePuzzle4/map.bin b/data/maps/Route110_TrickHousePuzzle4/map.bin
new file mode 100644
index 000000000..e0b8cf33f
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle4/map.bin
@@ -0,0 +1,2 @@
+o            
+w6 22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222q2q2q2q2q2q2q2q2q2q2q2q2q2q2222222222222222222222222222222222222222222222 \ No newline at end of file
diff --git a/data/maps/Route110_TrickHousePuzzle5/border.bin b/data/maps/Route110_TrickHousePuzzle5/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle5/border.bin
Binary files differ
diff --git a/data/maps/Route110_TrickHousePuzzle5/header.s b/data/maps/Route110_TrickHousePuzzle5/header.s
new file mode 100644
index 000000000..350c5a9df
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle5/header.s
@@ -0,0 +1,15 @@
+Route110_TrickHousePuzzle5:: @ 8307E10
+ .4byte Route110_TrickHousePuzzle5_MapAttributes
+ .4byte Route110_TrickHousePuzzle5_MapEvents
+ .4byte Route110_TrickHousePuzzle5_MapScripts
+ .4byte 0x0
+ .2byte 448
+ .2byte 252
+ .byte 25
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route110_TrickHousePuzzle5/map.bin b/data/maps/Route110_TrickHousePuzzle5/map.bin
new file mode 100644
index 000000000..a64ea34b6
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle5/map.bin
@@ -0,0 +1,2 @@
+o            
+w6 hhhhh22222hh222hhh2222222222hhhh22222222222hhh222222hh2222hhh2222hhhhh2222hh2222hhhhh2222hh222hhhhh22222hhhhhhhhh22222hhhhhhhh222222hhhhhhhh222222hhhhhhhh222222hhhhhhhhh2222hhhhhhhhhhh222hhhhhhhhhhhhh22hhhhhhhhhhhhhh2hhhhhhhhhhhhh222hhhhhhhhhhh22222hhhhh2222222222hhhhh22hhh22222hhhhh22hhhh222hhhhhh \ No newline at end of file
diff --git a/data/maps/Route110_TrickHousePuzzle6/border.bin b/data/maps/Route110_TrickHousePuzzle6/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle6/border.bin
Binary files differ
diff --git a/data/maps/Route110_TrickHousePuzzle6/header.s b/data/maps/Route110_TrickHousePuzzle6/header.s
new file mode 100644
index 000000000..5e82720a3
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle6/header.s
@@ -0,0 +1,15 @@
+Route110_TrickHousePuzzle6:: @ 8307E2C
+ .4byte Route110_TrickHousePuzzle6_MapAttributes
+ .4byte Route110_TrickHousePuzzle6_MapEvents
+ .4byte Route110_TrickHousePuzzle6_MapScripts
+ .4byte 0x0
+ .2byte 448
+ .2byte 253
+ .byte 25
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route110_TrickHousePuzzle6/map.bin b/data/maps/Route110_TrickHousePuzzle6/map.bin
new file mode 100644
index 000000000..ec8447889
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle6/map.bin
@@ -0,0 +1,2 @@
+o            
+w6 222222222222222222222222222222222222222222222222222222222222222222222222622222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222 \ No newline at end of file
diff --git a/data/maps/Route110_TrickHousePuzzle7/border.bin b/data/maps/Route110_TrickHousePuzzle7/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle7/border.bin
Binary files differ
diff --git a/data/maps/Route110_TrickHousePuzzle7/header.s b/data/maps/Route110_TrickHousePuzzle7/header.s
new file mode 100644
index 000000000..b6856d605
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle7/header.s
@@ -0,0 +1,15 @@
+Route110_TrickHousePuzzle7:: @ 8307E48
+ .4byte Route110_TrickHousePuzzle7_MapAttributes
+ .4byte Route110_TrickHousePuzzle7_MapEvents
+ .4byte Route110_TrickHousePuzzle7_MapScripts
+ .4byte 0x0
+ .2byte 448
+ .2byte 254
+ .byte 25
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route110_TrickHousePuzzle7/map.bin b/data/maps/Route110_TrickHousePuzzle7/map.bin
new file mode 100644
index 000000000..5859601f6
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle7/map.bin
@@ -0,0 +1,2 @@
+o            
+w6 222222g2F262222222g2e22g222e22d2f22222g2>62g22`222f222f2g22g22>6f22zW2V2W2W2W2W2V2[2W2W2{2[2V2t2uBnB]nBnBmBmB\mBuByBuBnBnBnBnBp^2pNNp^2}OpO}}}px2v2x2N2N2x2v22O2x2O2222x2d2f22f2f2d2f2g22>g222222f2d2f2f2f2g222g2d22222>2e2f2f2g222g2c2e2e2e2e2e2f2f2f2g2e2e2e2e2e2e2e2e2e2a2f2f2f2g22222d2d2d2d2g2f2e2f2f2f2g22g2e2e2e2e2e2g22e2f2f2f2f2g22g2g2e2e2e22g22>6f2f222g222g22222g222c2f222g222e2e2e2e2e22g2f2222G222e22e2e2e2e2e2e2f222222e2e2222g2222f22222e2e22222d2d2d2d2f2 \ No newline at end of file
diff --git a/data/maps/Route110_TrickHousePuzzle8/border.bin b/data/maps/Route110_TrickHousePuzzle8/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle8/border.bin
Binary files differ
diff --git a/data/maps/Route110_TrickHousePuzzle8/header.s b/data/maps/Route110_TrickHousePuzzle8/header.s
new file mode 100644
index 000000000..843b6bcc5
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle8/header.s
@@ -0,0 +1,15 @@
+Route110_TrickHousePuzzle8:: @ 8307E64
+ .4byte Route110_TrickHousePuzzle8_MapAttributes
+ .4byte Route110_TrickHousePuzzle8_MapEvents
+ .4byte Route110_TrickHousePuzzle8_MapScripts
+ .4byte 0x0
+ .2byte 448
+ .2byte 255
+ .byte 25
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route110_TrickHousePuzzle8/map.bin b/data/maps/Route110_TrickHousePuzzle8/map.bin
new file mode 100644
index 000000000..d8c131da6
--- /dev/null
+++ b/data/maps/Route110_TrickHousePuzzle8/map.bin
@@ -0,0 +1,2 @@
+o            
+w6 666666666666226k2k2k2k2k2k2k2k2k2k2k2l6k2k2l6k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2l6k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2l6k2k2k2k2k2k2k2l6k2k2k2k2k2k2k2l6k2k2k2k2k2k2k2k2k2k2l6k2k2k2k2k2l6k2k2k2k2k2l6k2k2k2k2l6l6k2k2k2k2k2l6l6l6l6l6k2l6l6l6l6l6l6l6l6222266266226222666266666626662k2k2k2k2k2l6k2k2k2k2k2k2k2k2k2k2l6k2k2k2k2k2k2k2k2k2k2l6k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2l6k2l6k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2k2l6k2k2k2k2l6k2k2k2k2l6k2k2k2k2k2k2k2l6k2k2226666666666222222266666662222 \ No newline at end of file
diff --git a/data/maps/Route111/border.bin b/data/maps/Route111/border.bin
new file mode 100644
index 000000000..4531975c7
--- /dev/null
+++ b/data/maps/Route111/border.bin
Binary files differ
diff --git a/data/maps/Route111/connections.s b/data/maps/Route111/connections.s
new file mode 100644
index 000000000..1557c2152
--- /dev/null
+++ b/data/maps/Route111/connections.s
@@ -0,0 +1,9 @@
+Route111_MapConnectionsList:: @ 8308974
+ connection down, 0, MauvilleCity, 0
+ connection left, 0, Route113, 0
+ connection left, 20, Route112, 0
+
+Route111_MapConnections:: @ 8308998
+ .4byte 0x3
+ .4byte Route111_MapConnectionsList
+
diff --git a/data/maps/Route111/header.s b/data/maps/Route111/header.s
new file mode 100644
index 000000000..7eef11d53
--- /dev/null
+++ b/data/maps/Route111/header.s
@@ -0,0 +1,15 @@
+Route111:: @ 8305720
+ .4byte Route111_MapAttributes
+ .4byte Route111_MapEvents
+ .4byte Route111_MapScripts
+ .4byte Route111_MapConnections
+ .2byte 360
+ .2byte 27
+ .byte 26
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route111/map.bin b/data/maps/Route111/map.bin
new file mode 100644
index 000000000..50fc935bd
--- /dev/null
+++ b/data/maps/Route111/map.bin
Binary files differ
diff --git a/data/maps/Route111_OldLadysRestStop/header.s b/data/maps/Route111_OldLadysRestStop/header.s
new file mode 100644
index 000000000..063278d11
--- /dev/null
+++ b/data/maps/Route111_OldLadysRestStop/header.s
@@ -0,0 +1,15 @@
+Route111_OldLadysRestStop:: @ 8306C74
+ .4byte Route111_OldLadysRestStop_MapAttributes
+ .4byte Route111_OldLadysRestStop_MapEvents
+ .4byte Route111_OldLadysRestStop_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 64
+ .byte 26
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route111_WinstrateFamilysHouse/header.s b/data/maps/Route111_WinstrateFamilysHouse/header.s
new file mode 100644
index 000000000..15044ba0f
--- /dev/null
+++ b/data/maps/Route111_WinstrateFamilysHouse/header.s
@@ -0,0 +1,15 @@
+Route111_WinstrateFamilysHouse:: @ 8306C58
+ .4byte Route111_WinstrateFamilysHouse_MapAttributes
+ .4byte Route111_WinstrateFamilysHouse_MapEvents
+ .4byte Route111_WinstrateFamilysHouse_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 60
+ .byte 26
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route112/border.bin b/data/maps/Route112/border.bin
new file mode 100644
index 000000000..9ae2c2126
--- /dev/null
+++ b/data/maps/Route112/border.bin
@@ -0,0 +1 @@
+qqqq \ No newline at end of file
diff --git a/data/maps/Route112/connections.s b/data/maps/Route112/connections.s
new file mode 100644
index 000000000..2af82c10a
--- /dev/null
+++ b/data/maps/Route112/connections.s
@@ -0,0 +1,9 @@
+Route112_MapConnectionsList:: @ 83089A0
+ connection up, -60, Route113, 0
+ connection left, 40, LavaridgeTown, 0
+ connection right, -20, Route111, 0
+
+Route112_MapConnections:: @ 83089C4
+ .4byte 0x3
+ .4byte Route112_MapConnectionsList
+
diff --git a/data/maps/Route112/header.s b/data/maps/Route112/header.s
new file mode 100644
index 000000000..4fcf92978
--- /dev/null
+++ b/data/maps/Route112/header.s
@@ -0,0 +1,15 @@
+Route112:: @ 830573C
+ .4byte Route112_MapAttributes
+ .4byte Route112_MapEvents
+ .4byte Route112_MapScripts
+ .4byte Route112_MapConnections
+ .2byte 360
+ .2byte 28
+ .byte 27
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route112/map.bin b/data/maps/Route112/map.bin
new file mode 100644
index 000000000..bc194cbc5
--- /dev/null
+++ b/data/maps/Route112/map.bin
Binary files differ
diff --git a/data/maps/Route112_CableCarStation/border.bin b/data/maps/Route112_CableCarStation/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/Route112_CableCarStation/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Route112_CableCarStation/header.s b/data/maps/Route112_CableCarStation/header.s
new file mode 100644
index 000000000..b1afd17be
--- /dev/null
+++ b/data/maps/Route112_CableCarStation/header.s
@@ -0,0 +1,15 @@
+Route112_CableCarStation:: @ 8306C90
+ .4byte Route112_CableCarStation_MapAttributes
+ .4byte Route112_CableCarStation_MapEvents
+ .4byte Route112_CableCarStation_MapScripts
+ .4byte 0x0
+ .2byte 360
+ .2byte 119
+ .byte 27
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route112_CableCarStation/map.bin b/data/maps/Route112_CableCarStation/map.bin
new file mode 100644
index 000000000..93db9d5f0
--- /dev/null
+++ b/data/maps/Route112_CableCarStation/map.bin
Binary files differ
diff --git a/data/maps/Route113/border.bin b/data/maps/Route113/border.bin
new file mode 100644
index 000000000..73e1e3c60
--- /dev/null
+++ b/data/maps/Route113/border.bin
@@ -0,0 +1 @@
+mnuv \ No newline at end of file
diff --git a/data/maps/Route113/connections.s b/data/maps/Route113/connections.s
new file mode 100644
index 000000000..4225b9368
--- /dev/null
+++ b/data/maps/Route113/connections.s
@@ -0,0 +1,9 @@
+Route113_MapConnectionsList:: @ 83089CC
+ connection down, 60, Route112, 0
+ connection left, 0, FallarborTown, 0
+ connection right, 0, Route111, 0
+
+Route113_MapConnections:: @ 83089F0
+ .4byte 0x3
+ .4byte Route113_MapConnectionsList
+
diff --git a/data/maps/Route113/header.s b/data/maps/Route113/header.s
new file mode 100644
index 000000000..85f7bb551
--- /dev/null
+++ b/data/maps/Route113/header.s
@@ -0,0 +1,15 @@
+Route113:: @ 8305758
+ .4byte Route113_MapAttributes
+ .4byte Route113_MapEvents
+ .4byte Route113_MapScripts
+ .4byte Route113_MapConnections
+ .2byte 418
+ .2byte 29
+ .byte 28
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route113/map.bin b/data/maps/Route113/map.bin
new file mode 100644
index 000000000..1d6c6b283
--- /dev/null
+++ b/data/maps/Route113/map.bin
@@ -0,0 +1,288 @@
+yyyyyyyyyyyppp.n6mnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmnmn  mnmnmnmnmnmn llllllllyyyyyyyyyyppp vu  vuvuvu  vuvuvuvuvuvu                  mnmnmn        mnm22n           2 qkllllllpppn6m22nmnmnm22nmnmnmnm22
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2/222      222/2222      /
+2
+2
+2kqqqqqqiiiiiiiiiiiixpp vu        mnmn       
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2222222
+2
+222)222222222222
+2
+2
+2 qqkllqqqqqqqiiiiiiiiiiiiixpn6m%    222
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+22262
+2
+2
+2
+2
+2222222)22222222
+2
+2
+2 qq{||qqqt|||iiiiiiiiiiiiiix vu 22)222222222
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2 qq 
+2
+2
+22222
+2
+2
+2
+2
+2
+22222222222222
+2
+2
+2||||{|||}qqqq2q2q2q2q2q2q2q2q2q2q2q2q2q2q2n6m22222
+2
+222)2222222
+2
+2
+2
+2
+2
+2
+2
+2
+2222 qq 222
+2
+2
+2
+2
+2
+2
+2
+2
+222222222222
+2
+2
+2
+22220xyqqqqqty22222y222222y22y22 vu 22
+2
+2
+2
+222222222
+2
+2
+2
+2
+2
+2
+2
+222222 qq 222
+2
+2
+2
+2
+2
+2
+2
+2
+2 q  mnmn '
+2
+2
+2
+22222000xyyyyyz022222y222222y2y2222  2
+2
+2
+2
+2
+2
+2&%22222
+2
+2
+2
+2
+2222y'
+2
+2
+2
+2
+2
+2222 q 2u   
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+222200000000001122222y222222y222&
+2
+2
+2
+2
+2
+2
+2
+2
+2
+22222222
+2
+2
+2 qqq 2222222
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2222y  
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+222200000000000(1)1y2y2y2y2y2y2y2y2y2y2y2y2y22222222
+2
+2
+2
+2
+2
+2
+2
+2
+2&22
+2
+2
+2 qqq 2222222
+2
+2
+2
+2
+2
+2
+2$222'22
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2220000000000000022222y222222y22222222222
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+222222
+2
+2 qqq 222222222
+2
+2
+2
+2
+222222222222
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+222220000hiiiiiiiii22222222222y22222222222
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2222222 qqq222222
+2
+2
+2
+22222222222222
+2
+2
+2
+2iiiiqqqklllll22222y22222222222222222
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2222222 qqqqq 222222222222222222 qkllllllllllmsqqqqq22222222222l6ml6  m222222222
+2
+2
+2
+2
+2
+222222222qqqq 2222 qq 2n  mnmn  mn   kllkllllllmqqukqqqqqststs66ts6tst22uvuvuvuvu  mnm2yyyy2n  m2 qq ' v22uvuv22uv222 sqqqsqqqqt|}qqusqqqqqq6k6l6k22l6k622l6k6l6mnmn  mn  m2 qqqqqqq   m222222nm22n  qq22nmnmnmnmnmnmn  sqqq{||||}qt||}sqqqqqq22sts6t6ststs6t6stuvuv22uv22u  qqqqqqqqq 222uvuvuvuvuvuv2 qqqq 2uvuvuvuvuvuvuv2 qq{|qqqqqt||}qqq{||||||k6l6k6l6klk6l6k6l6klk6l6k6nmnmnmnmnm2 qqqqqqqqq  mnmnmnmnmnmnmn  qqqq  mnmnmnmnmnmnmn  qqqq{|||||}qqqqqqqqqqqqqststs6t6ststs6t6stsv6uvuvuvuvu yyyyyyyyy2uvuvuvuvuvuvuv2yyyy2uvuvuvuvuvuvuv2yyyyyyyyyyyyyyyyyyy \ No newline at end of file
diff --git a/data/maps/Route113_GlassWorkshop/header.s b/data/maps/Route113_GlassWorkshop/header.s
new file mode 100644
index 000000000..c8d5445a6
--- /dev/null
+++ b/data/maps/Route113_GlassWorkshop/header.s
@@ -0,0 +1,15 @@
+Route113_GlassWorkshop:: @ 8307EB8
+ .4byte Route113_GlassWorkshop_MapAttributes
+ .4byte Route113_GlassWorkshop_MapEvents
+ .4byte Route113_GlassWorkshop_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 67
+ .byte 28
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route114/border.bin b/data/maps/Route114/border.bin
new file mode 100644
index 000000000..23e2a92e5
--- /dev/null
+++ b/data/maps/Route114/border.bin
@@ -0,0 +1 @@
+klst \ No newline at end of file
diff --git a/data/maps/Route114/connections.s b/data/maps/Route114/connections.s
new file mode 100644
index 000000000..274d7bcde
--- /dev/null
+++ b/data/maps/Route114/connections.s
@@ -0,0 +1,8 @@
+Route114_MapConnectionsList:: @ 83089F8
+ connection left, 40, Route115, 0
+ connection right, 0, FallarborTown, 0
+
+Route114_MapConnections:: @ 8308A10
+ .4byte 0x2
+ .4byte Route114_MapConnectionsList
+
diff --git a/data/maps/Route114/header.s b/data/maps/Route114/header.s
new file mode 100644
index 000000000..5a62d0062
--- /dev/null
+++ b/data/maps/Route114/header.s
@@ -0,0 +1,15 @@
+Route114:: @ 8305774
+ .4byte Route114_MapAttributes
+ .4byte Route114_MapEvents
+ .4byte Route114_MapScripts
+ .4byte Route114_MapConnections
+ .2byte 360
+ .2byte 30
+ .byte 29
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route114/map.bin b/data/maps/Route114/map.bin
new file mode 100644
index 000000000..0d92450f4
--- /dev/null
+++ b/data/maps/Route114/map.bin
Binary files differ
diff --git a/data/maps/Route114_FossilManiacsHouse/border.bin b/data/maps/Route114_FossilManiacsHouse/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/Route114_FossilManiacsHouse/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Route114_FossilManiacsHouse/header.s b/data/maps/Route114_FossilManiacsHouse/header.s
new file mode 100644
index 000000000..3e7554a35
--- /dev/null
+++ b/data/maps/Route114_FossilManiacsHouse/header.s
@@ -0,0 +1,15 @@
+Route114_FossilManiacsHouse:: @ 8306CC8
+ .4byte Route114_FossilManiacsHouse_MapAttributes
+ .4byte Route114_FossilManiacsHouse_MapEvents
+ .4byte Route114_FossilManiacsHouse_MapScripts
+ .4byte 0x0
+ .2byte 437
+ .2byte 120
+ .byte 29
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route114_FossilManiacsHouse/map.bin b/data/maps/Route114_FossilManiacsHouse/map.bin
new file mode 100644
index 000000000..ea2d94fda
--- /dev/null
+++ b/data/maps/Route114_FossilManiacsHouse/map.bin
@@ -0,0 +1 @@
+622!22233@2!2)2)2)2)277222!2NOD2)222)2)2)2Y2VW)2)2)2)2)2)2)2 3333333333#33333333 \ No newline at end of file
diff --git a/data/maps/Route114_FossilManiacsTunnel/border.bin b/data/maps/Route114_FossilManiacsTunnel/border.bin
new file mode 100644
index 000000000..580a207f4
--- /dev/null
+++ b/data/maps/Route114_FossilManiacsTunnel/border.bin
@@ -0,0 +1 @@
+wwww \ No newline at end of file
diff --git a/data/maps/Route114_FossilManiacsTunnel/header.s b/data/maps/Route114_FossilManiacsTunnel/header.s
new file mode 100644
index 000000000..417b99bc7
--- /dev/null
+++ b/data/maps/Route114_FossilManiacsTunnel/header.s
@@ -0,0 +1,15 @@
+Route114_FossilManiacsTunnel:: @ 8306CE4
+ .4byte Route114_FossilManiacsTunnel_MapAttributes
+ .4byte Route114_FossilManiacsTunnel_MapEvents
+ .4byte Route114_FossilManiacsTunnel_MapScripts
+ .4byte 0x0
+ .2byte 437
+ .2byte 121
+ .byte 29
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route114_FossilManiacsTunnel/map.bin b/data/maps/Route114_FossilManiacsTunnel/map.bin
new file mode 100644
index 000000000..586216000
--- /dev/null
+++ b/data/maps/Route114_FossilManiacsTunnel/map.bin
@@ -0,0 +1 @@
+w2whiiiiiijw2w2w2whxhiiiijrw2ww2wphxhiijrzjwww2pphx33rzjrw2wwppp332zjrrw6wwppp6y233rrrw6wwppp3y2y26rrrw6wwppp3y2y22rrrwwwpp7y2y22rrrw6wwp7p3y26rrrwwww6pp3y22rrrw6w6ww6ppp3y26rrw6w6ww6ppp62r6rzjw6ww6ppp32r3zjrw6ww6ppp32r3y6rrw6ww6ppp32r3y6rrw6whxp32r3y6rrw6wp2p2p 3r77rrw6wp6p2p 3zj3rzjwp2p6p 33r3r3rwp2p2p32r3r7rwp2p2p36r3zjrhx2p7p32r77rrpy62phx32zj3rrpy62pp3333r3rrpy62pp3222r3rr \ No newline at end of file
diff --git a/data/maps/Route114_LanettesHouse/border.bin b/data/maps/Route114_LanettesHouse/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/Route114_LanettesHouse/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Route114_LanettesHouse/header.s b/data/maps/Route114_LanettesHouse/header.s
new file mode 100644
index 000000000..3b30dc25f
--- /dev/null
+++ b/data/maps/Route114_LanettesHouse/header.s
@@ -0,0 +1,15 @@
+Route114_LanettesHouse:: @ 8306D00
+ .4byte Route114_LanettesHouse_MapAttributes
+ .4byte Route114_LanettesHouse_MapEvents
+ .4byte Route114_LanettesHouse_MapScripts
+ .4byte 0x0
+ .2byte 437
+ .2byte 122
+ .byte 29
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route114_LanettesHouse/map.bin b/data/maps/Route114_LanettesHouse/map.bin
new file mode 100644
index 000000000..de1858be4
--- /dev/null
+++ b/data/maps/Route114_LanettesHouse/map.bin
@@ -0,0 +1,2 @@
+  
+L  !2 !22"2#2"2#2 !2(2(202PQ2(:2Q62%2282XY22BY,-2@22J262%2P4522222)2,-XJ2222145 \ No newline at end of file
diff --git a/data/maps/Route115/border.bin b/data/maps/Route115/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/Route115/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/Route115/connections.s b/data/maps/Route115/connections.s
new file mode 100644
index 000000000..7d1e7228e
--- /dev/null
+++ b/data/maps/Route115/connections.s
@@ -0,0 +1,8 @@
+Route115_MapConnectionsList:: @ 8308A18
+ connection down, 0, RustboroCity, 0
+ connection right, -40, Route114, 0
+
+Route115_MapConnections:: @ 8308A30
+ .4byte 0x2
+ .4byte Route115_MapConnectionsList
+
diff --git a/data/maps/Route115/header.s b/data/maps/Route115/header.s
new file mode 100644
index 000000000..0225c2e49
--- /dev/null
+++ b/data/maps/Route115/header.s
@@ -0,0 +1,15 @@
+Route115:: @ 8305790
+ .4byte Route115_MapAttributes
+ .4byte Route115_MapEvents
+ .4byte Route115_MapScripts
+ .4byte Route115_MapConnections
+ .2byte 401
+ .2byte 31
+ .byte 30
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route115/map.bin b/data/maps/Route115/map.bin
new file mode 100644
index 000000000..d6e8e9f1c
--- /dev/null
+++ b/data/maps/Route115/map.bin
Binary files differ
diff --git a/data/maps/Route116/border.bin b/data/maps/Route116/border.bin
new file mode 100644
index 000000000..03bcafef1
--- /dev/null
+++ b/data/maps/Route116/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Route116/connections.s b/data/maps/Route116/connections.s
new file mode 100644
index 000000000..19e82aabc
--- /dev/null
+++ b/data/maps/Route116/connections.s
@@ -0,0 +1,8 @@
+Route116_MapConnectionsList:: @ 8308A38
+ connection down, 80, VerdanturfTown, 0
+ connection left, 0, RustboroCity, 0
+
+Route116_MapConnections:: @ 8308A50
+ .4byte 0x2
+ .4byte Route116_MapConnectionsList
+
diff --git a/data/maps/Route116/header.s b/data/maps/Route116/header.s
new file mode 100644
index 000000000..8c9d5baac
--- /dev/null
+++ b/data/maps/Route116/header.s
@@ -0,0 +1,15 @@
+Route116:: @ 83057AC
+ .4byte Route116_MapAttributes
+ .4byte Route116_MapEvents
+ .4byte Route116_MapScripts
+ .4byte Route116_MapConnections
+ .2byte 401
+ .2byte 32
+ .byte 31
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route116/map.bin b/data/maps/Route116/map.bin
new file mode 100644
index 000000000..055562dbb
--- /dev/null
+++ b/data/maps/Route116/map.bin
Binary files differ
diff --git a/data/maps/Route116_TunnelersRestHouse/border.bin b/data/maps/Route116_TunnelersRestHouse/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/Route116_TunnelersRestHouse/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Route116_TunnelersRestHouse/header.s b/data/maps/Route116_TunnelersRestHouse/header.s
new file mode 100644
index 000000000..f3480c42d
--- /dev/null
+++ b/data/maps/Route116_TunnelersRestHouse/header.s
@@ -0,0 +1,15 @@
+Route116_TunnelersRestHouse:: @ 8306D1C
+ .4byte Route116_TunnelersRestHouse_MapAttributes
+ .4byte Route116_TunnelersRestHouse_MapEvents
+ .4byte Route116_TunnelersRestHouse_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 123
+ .byte 31
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route116_TunnelersRestHouse/map.bin b/data/maps/Route116_TunnelersRestHouse/map.bin
new file mode 100644
index 000000000..91e2c2019
--- /dev/null
+++ b/data/maps/Route116_TunnelersRestHouse/map.bin
@@ -0,0 +1 @@
+222!2!2!2!2222!2)2)2)2)2)2)2)2)2)2Y2NO)2)2)2)2NOD2!2VWD2)2)2D2VWD2!2)2)2)2)2)2)2)2)2)2 3333333333#33333333 \ No newline at end of file
diff --git a/data/maps/Route117/border.bin b/data/maps/Route117/border.bin
new file mode 100644
index 000000000..addb5d6ce
--- /dev/null
+++ b/data/maps/Route117/border.bin
Binary files differ
diff --git a/data/maps/Route117/connections.s b/data/maps/Route117/connections.s
new file mode 100644
index 000000000..bf5838ae3
--- /dev/null
+++ b/data/maps/Route117/connections.s
@@ -0,0 +1,8 @@
+Route117_MapConnectionsList:: @ 8308A58
+ connection left, 0, VerdanturfTown, 0
+ connection right, 0, MauvilleCity, 0
+
+Route117_MapConnections:: @ 8308A70
+ .4byte 0x2
+ .4byte Route117_MapConnectionsList
+
diff --git a/data/maps/Route117/header.s b/data/maps/Route117/header.s
new file mode 100644
index 000000000..b94e65136
--- /dev/null
+++ b/data/maps/Route117/header.s
@@ -0,0 +1,15 @@
+Route117:: @ 83057C8
+ .4byte Route117_MapAttributes
+ .4byte Route117_MapEvents
+ .4byte Route117_MapScripts
+ .4byte Route117_MapConnections
+ .2byte 360
+ .2byte 33
+ .byte 32
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route117/map.bin b/data/maps/Route117/map.bin
new file mode 100644
index 000000000..9aaa06fef
--- /dev/null
+++ b/data/maps/Route117/map.bin
@@ -0,0 +1,11 @@
+5670 2 000000000 0 0
+20000000000 0 00000h4s4q0u4i0j4000 2 0000040 0 0 0 00000000 0 0 0 0 0 0 00000000p4{4|4}4q0r440 0 000000 0000 0 0
+00000008IIIIII:0000000p4q0q0t4y4z40 0 00000 0 200 2004000@2 22
+222B000000
+2x4y4y4z400 00 04000000 20 000000@22 22
+22B000000000000 !"@222 22
+2B000000000
+20200000000000000000000000000020@2222 22B011111110000020001111111111111110000000000IIIIIIIHI0000IJ0 1!1)1)1)1)1*1000000000011!1!1!1)1x2y2x2y2x2y2x2y2!1!1!111000000002200202000000000 1"1000000000011111!1!1!1!1*10(1)1!1!1!1111000002202020011111111!1"100 20000(1)1!1!1!1!1!1!1*10110(1!1!1!1)1*10000022200000(1)1)1)1)1)1)1)1)1*100200000(1)1!1!1!1"10000 1!1*1000000020202000000000000000000000(1!1!1"1000 1"100000000II@@@@II8II000II:0 0 00200000 1!1!110K1L5L5L5M1001!1"10000000000@22 22
+222B 0 0 00 0 0 00(1!1!1"101111100 1!1*10000@222 22
+22B 0 0 0 0 0 0 0 00 1!1!1100000000001!1"100@2222 22
+2B 0 0 0 0 0 0 0 0 0(1!1!1!11111111111!1!1*100H0IIIIIIJ@@@------%0%0 0 0 0 0 0(1)1)1)1)1)1)1)1)1)1)1)1)1)1*1000000000000000000%0%0 0 0 00000000000000000000%0%0%00000 \ No newline at end of file
diff --git a/data/maps/Route117_PokemonDayCare/border.bin b/data/maps/Route117_PokemonDayCare/border.bin
new file mode 100644
index 000000000..7f603e844
--- /dev/null
+++ b/data/maps/Route117_PokemonDayCare/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Route117_PokemonDayCare/header.s b/data/maps/Route117_PokemonDayCare/header.s
new file mode 100644
index 000000000..eda0fc27c
--- /dev/null
+++ b/data/maps/Route117_PokemonDayCare/header.s
@@ -0,0 +1,15 @@
+Route117_PokemonDayCare:: @ 8306D38
+ .4byte Route117_PokemonDayCare_MapAttributes
+ .4byte Route117_PokemonDayCare_MapEvents
+ .4byte Route117_PokemonDayCare_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 124
+ .byte 32
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route117_PokemonDayCare/map.bin b/data/maps/Route117_PokemonDayCare/map.bin
new file mode 100644
index 000000000..bd4b64e13
--- /dev/null
+++ b/data/maps/Route117_PokemonDayCare/map.bin
@@ -0,0 +1,2 @@
+567      
+=>?$2&22&244222 22 .!.#222222222(222322222-2022222222222)*%2222222820212222222C222922%2;<22@AAAAA \ No newline at end of file
diff --git a/data/maps/Route118/border.bin b/data/maps/Route118/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/Route118/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/Route118/connections.s b/data/maps/Route118/connections.s
new file mode 100644
index 000000000..a2d990d79
--- /dev/null
+++ b/data/maps/Route118/connections.s
@@ -0,0 +1,9 @@
+Route118_MapConnectionsList:: @ 8308A78
+ connection up, 40, Route119, 0
+ connection left, 0, MauvilleCity, 0
+ connection right, 0, Route123, 0
+
+Route118_MapConnections:: @ 8308A9C
+ .4byte 0x3
+ .4byte Route118_MapConnectionsList
+
diff --git a/data/maps/Route118/header.s b/data/maps/Route118/header.s
new file mode 100644
index 000000000..ae5f1b16e
--- /dev/null
+++ b/data/maps/Route118/header.s
@@ -0,0 +1,15 @@
+Route118:: @ 83057E4
+ .4byte Route118_MapAttributes
+ .4byte Route118_MapEvents
+ .4byte Route118_MapScripts
+ .4byte Route118_MapConnections
+ .2byte 32767
+ .2byte 34
+ .byte 33
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route118/map.bin b/data/maps/Route118/map.bin
new file mode 100644
index 000000000..c8b0865d0
--- /dev/null
+++ b/data/maps/Route118/map.bin
Binary files differ
diff --git a/data/maps/Route119/border.bin b/data/maps/Route119/border.bin
new file mode 100644
index 000000000..864ac15fa
--- /dev/null
+++ b/data/maps/Route119/border.bin
Binary files differ
diff --git a/data/maps/Route119/connections.s b/data/maps/Route119/connections.s
new file mode 100644
index 000000000..e76ee20b0
--- /dev/null
+++ b/data/maps/Route119/connections.s
@@ -0,0 +1,8 @@
+Route119_MapConnectionsList:: @ 8308AA4
+ connection down, -40, Route118, 0
+ connection right, 0, FortreeCity, 0
+
+Route119_MapConnections:: @ 8308ABC
+ .4byte 0x2
+ .4byte Route119_MapConnectionsList
+
diff --git a/data/maps/Route119/header.s b/data/maps/Route119/header.s
new file mode 100644
index 000000000..91b7044ec
--- /dev/null
+++ b/data/maps/Route119/header.s
@@ -0,0 +1,15 @@
+Route119:: @ 8305800
+ .4byte Route119_MapAttributes
+ .4byte Route119_MapEvents
+ .4byte Route119_MapScripts
+ .4byte Route119_MapConnections
+ .2byte 402
+ .2byte 35
+ .byte 34
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route119/map.bin b/data/maps/Route119/map.bin
new file mode 100644
index 000000000..cd1c748d9
--- /dev/null
+++ b/data/maps/Route119/map.bin
Binary files differ
diff --git a/data/maps/Route119_House/header.s b/data/maps/Route119_House/header.s
new file mode 100644
index 000000000..9516f4b89
--- /dev/null
+++ b/data/maps/Route119_House/header.s
@@ -0,0 +1,15 @@
+Route119_House:: @ 8307F28
+ .4byte Route119_House_MapAttributes
+ .4byte Route119_House_MapEvents
+ .4byte Route119_House_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 59
+ .byte 34
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route119_WeatherInstitute_1F/border.bin b/data/maps/Route119_WeatherInstitute_1F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/Route119_WeatherInstitute_1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Route119_WeatherInstitute_1F/header.s b/data/maps/Route119_WeatherInstitute_1F/header.s
new file mode 100644
index 000000000..f3b012210
--- /dev/null
+++ b/data/maps/Route119_WeatherInstitute_1F/header.s
@@ -0,0 +1,15 @@
+Route119_WeatherInstitute_1F:: @ 8307EF0
+ .4byte Route119_WeatherInstitute_1F_MapAttributes
+ .4byte Route119_WeatherInstitute_1F_MapEvents
+ .4byte Route119_WeatherInstitute_1F_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 272
+ .byte 34
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route119_WeatherInstitute_1F/map.bin b/data/maps/Route119_WeatherInstitute_1F/map.bin
new file mode 100644
index 000000000..07a4e7ebb
--- /dev/null
+++ b/data/maps/Route119_WeatherInstitute_1F/map.bin
@@ -0,0 +1 @@
+__nk___k______|}~_ggkgggk,-,-gglmv2kj2z2z2k4545j222z2222tuR2sr2R2R2sj2z2z2z2w2R2R2R2R2R2R2R2r2R2R2pr2R2R2pr2R2R2`aR2R2R2`aR2R2r2R2R2xr2R2R2xr2R2^2STV2R2^2STV2R2r2U2R22w2R2R22w2R2R2R2R2R2R2U22fZ2h2R2R2R2h2Z2Z2Z2Z2Z2Z2Z2Z2Z2Z2Z2f___pR2R2R2p____________gggxR2R2R2xggggggggggggj2z2z22R2R2R22z2z2z2z2z2z2z2z2z2z2z2z2r2R2R2R2R2R2R2R2U2R2R2U2R2R2R2R2R2R2R2R2r2R2R2R2R2R2R2R2]]R2R2R2R2R2R2R2R2 \ No newline at end of file
diff --git a/data/maps/Route119_WeatherInstitute_2F/border.bin b/data/maps/Route119_WeatherInstitute_2F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/Route119_WeatherInstitute_2F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Route119_WeatherInstitute_2F/header.s b/data/maps/Route119_WeatherInstitute_2F/header.s
new file mode 100644
index 000000000..b5a60130b
--- /dev/null
+++ b/data/maps/Route119_WeatherInstitute_2F/header.s
@@ -0,0 +1,15 @@
+Route119_WeatherInstitute_2F:: @ 8307F0C
+ .4byte Route119_WeatherInstitute_2F_MapAttributes
+ .4byte Route119_WeatherInstitute_2F_MapEvents
+ .4byte Route119_WeatherInstitute_2F_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 273
+ .byte 34
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route119_WeatherInstitute_2F/map.bin b/data/maps/Route119_WeatherInstitute_2F/map.bin
new file mode 100644
index 000000000..97953f463
--- /dev/null
+++ b/data/maps/Route119_WeatherInstitute_2F/map.bin
@@ -0,0 +1 @@
+__k___________|6}6~6_ggk,-,-,-,-,-g66gj222z2k4545454545j22z22z2r2`i2i2sj2z2z2dez2z2z2dew2i2i2i2i2W2Ti2i2pr2i2^2STV2i2^2STV2i2i2i2i2r2\i2i2xr2i2i2i2i2i2i2i2i2i2i2r2i2i2i22w2i2i2i2i2i2i2i2i2i2i2i2i2i2i2r2i2i2i2r2i2i2`ai2i2i2`ai2i2i2i2i2r2`i2i2kr2i2^2STi2i2^2STV2i2i2i2i2W2Ti2i2kr2i2i2i2i2i2i2i2i2i2i2r2\i2i2kr2i2i2i2i2i2i2i2i2i2i2i2i2i2i2 \ No newline at end of file
diff --git a/data/maps/Route120/border.bin b/data/maps/Route120/border.bin
new file mode 100644
index 000000000..864ac15fa
--- /dev/null
+++ b/data/maps/Route120/border.bin
Binary files differ
diff --git a/data/maps/Route120/connections.s b/data/maps/Route120/connections.s
new file mode 100644
index 000000000..5df35b99d
--- /dev/null
+++ b/data/maps/Route120/connections.s
@@ -0,0 +1,8 @@
+Route120_MapConnectionsList:: @ 8308AC4
+ connection left, 0, FortreeCity, 0
+ connection right, 80, Route121, 0
+
+Route120_MapConnections:: @ 8308ADC
+ .4byte 0x2
+ .4byte Route120_MapConnectionsList
+
diff --git a/data/maps/Route120/header.s b/data/maps/Route120/header.s
new file mode 100644
index 000000000..8711fab28
--- /dev/null
+++ b/data/maps/Route120/header.s
@@ -0,0 +1,15 @@
+Route120:: @ 830581C
+ .4byte Route120_MapAttributes
+ .4byte Route120_MapEvents
+ .4byte Route120_MapScripts
+ .4byte Route120_MapConnections
+ .2byte 361
+ .2byte 36
+ .byte 35
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route120/map.bin b/data/maps/Route120/map.bin
new file mode 100644
index 000000000..bb98e751c
--- /dev/null
+++ b/data/maps/Route120/map.bin
Binary files differ
diff --git a/data/maps/Route121/border.bin b/data/maps/Route121/border.bin
new file mode 100644
index 000000000..03bcafef1
--- /dev/null
+++ b/data/maps/Route121/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Route121/connections.s b/data/maps/Route121/connections.s
new file mode 100644
index 000000000..d563294ad
--- /dev/null
+++ b/data/maps/Route121/connections.s
@@ -0,0 +1,9 @@
+Route121_MapConnectionsList:: @ 8308AE4
+ connection down, 20, Route122, 0
+ connection left, -80, Route120, 0
+ connection right, -10, LilycoveCity, 0
+
+Route121_MapConnections:: @ 8308B08
+ .4byte 0x3
+ .4byte Route121_MapConnectionsList
+
diff --git a/data/maps/Route121/header.s b/data/maps/Route121/header.s
new file mode 100644
index 000000000..10f50d1b2
--- /dev/null
+++ b/data/maps/Route121/header.s
@@ -0,0 +1,15 @@
+Route121:: @ 8305838
+ .4byte Route121_MapAttributes
+ .4byte Route121_MapEvents
+ .4byte Route121_MapScripts
+ .4byte Route121_MapConnections
+ .2byte 361
+ .2byte 37
+ .byte 36
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route121/map.bin b/data/maps/Route121/map.bin
new file mode 100644
index 000000000..5c5397c0b
--- /dev/null
+++ b/data/maps/Route121/map.bin
@@ -0,0 +1 @@
+urX011120Z6ururX011120Zururs6L5L5u6X0000000001112000Zur00000000000000000000ur{211}255X000000008999:000Zur000000000000000000||||}r 0 0 0PQQQQQQQQQQQQQQQQQ3$%&5QQQRurPQQQQQQQQQQQQQQQQQR0PQQQQQQAQQQQQRD55 0 0 0 000000 0 0 0000000110BD-EC0tyy}r00000000 0 0 0 0 0000000000 0 0 0 00Z0000000000000000000000000000 0 0 0 0 000000000000r00tz000000000 0 0 0 0 0 0 000000 0 0 0 0 0 0Z0000000000000000000000000000 0 0 0 0 0000001100000r&'rPQQQQR00PQQR000PR00PQQQQQQQQR000000000001111111100000000 0 0 0 0 0 0 00000t00yyz00r 0 0000000000Z000XZ00X00000000Z00000000011!1!1)1)1)1)1)1*10 0 0 0PQQQQQQQQQQQR00r0000000r 0 0 0PQQQQR0PR000XZ00PQQQQQQQQR000011111!1!1!1*100000 0 0 0 0 0 0 0 0 0 0 00t|||||00||||z0000000r 0 0 0 0 0 0 00000Z 0 00XZ0000 0 0 0 0 0 000001155)1)1)1)1)1*10011111111 0 0 0 0t|||}t00yyyy00zPQQQQQQQQQQR 0 0 0XZ000 0 0 0 0 0 000000555500000000t|||}tz000000000000 0 0 0 0 0000000000000 0 0 0 0 0XZPQQQQQQQQR000055t|00000000555utz00000tyy00yy0000 0 0 0 0 0 0 0000000000 0 0 0 0 0XZ011111100000t|||}yyyyyy||||||||}u00000t|||}]^0^0^0_{|||| 0 0 0 0 0 0 00000000 0 0 0 0 0 0PR026666200000uPPPPPPt}t||||}]^0^0^0^0_{||||||||||||||||||||||||||||||||||}p1p1p1p111P55t||}q0q0q0q0q0q0t}pPe]^0^0^0^0_dQppp1p1p1p1Pt|}t||||||}ppppppXm]^0^0^0^0_lYPQpppppppppppppppppppppppppppppp1p1p1p1p1p1p1p1p1p1p1p1p155t}q0q0uppppppppPQe^0^0^0^0gpXYPQPQpppppppppppppppppppppppppp1p1p1p1p1p1p1p1p1p1p1p1p1Pt}q0t|}pppppppppppppppppXYpppXYXYpppppppppppppppppppppppppp1p1p1p1p1p1p1p1p1p1p1p1p1 \ No newline at end of file
diff --git a/data/maps/Route121_SafariZoneEntrance/border.bin b/data/maps/Route121_SafariZoneEntrance/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/Route121_SafariZoneEntrance/border.bin
Binary files differ
diff --git a/data/maps/Route121_SafariZoneEntrance/header.s b/data/maps/Route121_SafariZoneEntrance/header.s
new file mode 100644
index 000000000..561634bcb
--- /dev/null
+++ b/data/maps/Route121_SafariZoneEntrance/header.s
@@ -0,0 +1,15 @@
+Route121_SafariZoneEntrance:: @ 8306D54
+ .4byte Route121_SafariZoneEntrance_MapAttributes
+ .4byte Route121_SafariZoneEntrance_MapEvents
+ .4byte Route121_SafariZoneEntrance_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 125
+ .byte 36
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route121_SafariZoneEntrance/map.bin b/data/maps/Route121_SafariZoneEntrance/map.bin
new file mode 100644
index 000000000..35c1badac
--- /dev/null
+++ b/data/maps/Route121_SafariZoneEntrance/map.bin
@@ -0,0 +1 @@
+]x2p2p2p2p2p22222e2x2p2p2p2p22h2h2h2h2h22h22h2h22\2h2h2h2h2h2q2Y2Z2Y2Z2p2y2h2h2h2h22d6h2h2h2h2ababh2h2h2h2h2h2h22h2h2h222\2h2h2h2dh2h2h2x22h2h2h222h2h2h222h2h2h2\2h2h2h2q22d6h2h2t6 \ No newline at end of file
diff --git a/data/maps/Route122/border.bin b/data/maps/Route122/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/Route122/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/Route122/connections.s b/data/maps/Route122/connections.s
new file mode 100644
index 000000000..ae4bc0daa
--- /dev/null
+++ b/data/maps/Route122/connections.s
@@ -0,0 +1,8 @@
+Route122_MapConnectionsList:: @ 8308B10
+ connection up, -20, Route121, 0
+ connection down, -100, Route123, 0
+
+Route122_MapConnections:: @ 8308B28
+ .4byte 0x2
+ .4byte Route122_MapConnectionsList
+
diff --git a/data/maps/Route122/header.s b/data/maps/Route122/header.s
new file mode 100644
index 000000000..17d0add81
--- /dev/null
+++ b/data/maps/Route122/header.s
@@ -0,0 +1,15 @@
+Route122:: @ 8305854
+ .4byte Route122_MapAttributes
+ .4byte Route122_MapEvents
+ .4byte Route122_MapScripts
+ .4byte Route122_MapConnections
+ .2byte 374
+ .2byte 38
+ .byte 37
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route122/map.bin b/data/maps/Route122/map.bin
new file mode 100644
index 000000000..1c76b0b0a
--- /dev/null
+++ b/data/maps/Route122/map.bin
Binary files differ
diff --git a/data/maps/Route123/border.bin b/data/maps/Route123/border.bin
new file mode 100644
index 000000000..864ac15fa
--- /dev/null
+++ b/data/maps/Route123/border.bin
Binary files differ
diff --git a/data/maps/Route123/connections.s b/data/maps/Route123/connections.s
new file mode 100644
index 000000000..638344d63
--- /dev/null
+++ b/data/maps/Route123/connections.s
@@ -0,0 +1,8 @@
+Route123_MapConnectionsList:: @ 8308B30
+ connection up, 100, Route122, 0
+ connection left, 0, Route118, 0
+
+Route123_MapConnections:: @ 8308B48
+ .4byte 0x2
+ .4byte Route123_MapConnectionsList
+
diff --git a/data/maps/Route123/header.s b/data/maps/Route123/header.s
new file mode 100644
index 000000000..ed097b769
--- /dev/null
+++ b/data/maps/Route123/header.s
@@ -0,0 +1,15 @@
+Route123:: @ 8305870
+ .4byte Route123_MapAttributes
+ .4byte Route123_MapEvents
+ .4byte Route123_MapScripts
+ .4byte Route123_MapConnections
+ .2byte 374
+ .2byte 39
+ .byte 38
+ .byte 0
+ .byte 2
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route123/map.bin b/data/maps/Route123/map.bin
new file mode 100644
index 000000000..9b5573cc5
--- /dev/null
+++ b/data/maps/Route123/map.bin
@@ -0,0 +1,2 @@
+pppppppppppppppppppppE00Gppppppppppppppppp@000000000@00hiiiiiiiiiiiij 0 0 0 0 00 0 04K1L5L5L5M1pppppppppppppppppppE00Gppppppppppppppppp@AIIIIIIII90@00000pqqqqqqqqqqqqr0 0 0 0 0 0 0 0 0 0 001111100pppppppppppppppppE00Gppppppppppppppppp@Bs6u60s6u60s6u6@00 0 0
+00@00000040xyyyyqqqqqr00 0 0 0 0 0 0 0 0 0 0000000ppppppppppppppppE00Gppppppppppppppppp@B{2}20{2}20{2}2@00@00000000 0 0xqqqqr000 0 0 0 0 0 0 0 0 0 0 00000000pppppppppppppppE00Gppppppppppppppppp@Bs6u60s6u60s6u6@0 0@0000000 0 0 0 0xyyw44444440 0 0000 0 00000 0 000000000pppppppppppppE00Gppppppppppppppppp0@B{2}20{2}20{2}2@0 !"0@00000000 0 0 0 0 04o000000000 0000000000 0 0 0 0 00pppppppppppE00Gpppppppppppppp000@3II0000II2400000@04000000000 0 0 0 0 0 00000000000000000000 0 0 0 0 0 0 00ppppppppppE00Gpppppppppppp00000@0000000000000000@000000000000%0%0 0 0 0 0000000000000400000%0 0 0 0 0 0 00ppppppppE00Gppppppppp00000000@00000000011000@000000000000000004000%0 0 0 00004444440 0 0 000000%0 0 0 0 0 0 00pppE00Gpp000000000@000000000011000@0000000000000000000 0 00000000000%0 0 00000%0 0 0 0 0 00000000000>4>4>40000>4>4>4000000000HIIIIIIIIII0110II200440444444o400000000000000 0 0 0 04000 0 0 000040001100400000000000400000000001100000000000000000000000000%0 0 0 0 0000000000000000000 0 0 00000001!1"1000000000000000000000000000000011000000000000000000004444444%0%0 0 00000000000400000000 0 0 0 0 00K1L5L5L5M100111!1!1*10000000011111111111111111111111111111111000444444o0000000 000001111011111000000 0 0 0 0 0 0 000001111111!1!1!1!1*1000000000000111111111111111111111111111111110000000000001111111000111!1!1)1*10(1)1)1!1!1111140 0 0 0 0 0 0 00011111111111!1!1!1)1)1*1004000000000000000000000000000000000000000111111110000(1)1)1)1)1!1!11111100(1)1)1)1*1000000(1)1)1)1)1*10%0%0%0 0 0 0 0 000(1)1)1)1)1)1)1)1)1)1)1)1)1*10000000@4I0IIIIIIIIIII@4@4IIIII0@40000000(1)1)1)1)1)1)1*1000000000(1)1)1)1)1)1*10000000040000000000%0%0%0%0 0000000004000000000000000000000000000000000000000400000000000000400000000000000000040000000000000000000000000000000000000000000000000000 \ No newline at end of file
diff --git a/data/maps/Route123_BerryMastersHouse/header.s b/data/maps/Route123_BerryMastersHouse/header.s
new file mode 100644
index 000000000..14620f51d
--- /dev/null
+++ b/data/maps/Route123_BerryMastersHouse/header.s
@@ -0,0 +1,15 @@
+Route123_BerryMastersHouse:: @ 8307ED4
+ .4byte Route123_BerryMastersHouse_MapAttributes
+ .4byte Route123_BerryMastersHouse_MapEvents
+ .4byte Route123_BerryMastersHouse_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 60
+ .byte 38
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route124/border.bin b/data/maps/Route124/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/Route124/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/Route124/connections.s b/data/maps/Route124/connections.s
new file mode 100644
index 000000000..f6523a172
--- /dev/null
+++ b/data/maps/Route124/connections.s
@@ -0,0 +1,11 @@
+Route124_MapConnectionsList:: @ 8308B50
+ connection down, 0, Route126, 0
+ connection left, 10, LilycoveCity, 0
+ connection right, 0, Route125, 0
+ connection right, 40, MossdeepCity, 0
+ connection dive, 0, Underwater1, 0
+
+Route124_MapConnections:: @ 8308B8C
+ .4byte 0x5
+ .4byte Route124_MapConnectionsList
+
diff --git a/data/maps/Route124/header.s b/data/maps/Route124/header.s
new file mode 100644
index 000000000..5dda168bb
--- /dev/null
+++ b/data/maps/Route124/header.s
@@ -0,0 +1,15 @@
+Route124:: @ 830588C
+ .4byte Route124_MapAttributes
+ .4byte Route124_MapEvents
+ .4byte Route124_MapScripts
+ .4byte Route124_MapConnections
+ .2byte 361
+ .2byte 40
+ .byte 39
+ .byte 0
+ .byte 2
+ .byte 6
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route124/map.bin b/data/maps/Route124/map.bin
new file mode 100644
index 000000000..212135178
--- /dev/null
+++ b/data/maps/Route124/map.bin
Binary files differ
diff --git a/data/maps/Route124_DivingTreasureHuntersHouse/border.bin b/data/maps/Route124_DivingTreasureHuntersHouse/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/Route124_DivingTreasureHuntersHouse/border.bin
Binary files differ
diff --git a/data/maps/Route124_DivingTreasureHuntersHouse/header.s b/data/maps/Route124_DivingTreasureHuntersHouse/header.s
new file mode 100644
index 000000000..b30162418
--- /dev/null
+++ b/data/maps/Route124_DivingTreasureHuntersHouse/header.s
@@ -0,0 +1,15 @@
+Route124_DivingTreasureHuntersHouse:: @ 8307F44
+ .4byte Route124_DivingTreasureHuntersHouse_MapAttributes
+ .4byte Route124_DivingTreasureHuntersHouse_MapEvents
+ .4byte Route124_DivingTreasureHuntersHouse_MapScripts
+ .4byte 0x0
+ .2byte 408
+ .2byte 302
+ .byte 39
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/Route124_DivingTreasureHuntersHouse/map.bin b/data/maps/Route124_DivingTreasureHuntersHouse/map.bin
new file mode 100644
index 000000000..8f1f6cbef
--- /dev/null
+++ b/data/maps/Route124_DivingTreasureHuntersHouse/map.bin
@@ -0,0 +1 @@
+yzX  g 22222$2$2$2$2$29252626262626272#2#292=2H6I6>?#2#292=2P6Q6>?#2#292E2F2F2F2F2F2G#2#292#2#2#2#2#2#2#2#2"292#2#2 #2#2#2#2*6 \ No newline at end of file
diff --git a/data/maps/Route125/border.bin b/data/maps/Route125/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/Route125/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/Route125/connections.s b/data/maps/Route125/connections.s
new file mode 100644
index 000000000..d4d9d4baf
--- /dev/null
+++ b/data/maps/Route125/connections.s
@@ -0,0 +1,8 @@
+Route125_MapConnectionsList:: @ 8308B94
+ connection down, 0, MossdeepCity, 0
+ connection left, 0, Route124, 0
+
+Route125_MapConnections:: @ 8308BAC
+ .4byte 0x2
+ .4byte Route125_MapConnectionsList
+
diff --git a/data/maps/Route125/header.s b/data/maps/Route125/header.s
new file mode 100644
index 000000000..47ca52df9
--- /dev/null
+++ b/data/maps/Route125/header.s
@@ -0,0 +1,15 @@
+Route125:: @ 83058A8
+ .4byte Route125_MapAttributes
+ .4byte Route125_MapEvents
+ .4byte Route125_MapScripts
+ .4byte Route125_MapConnections
+ .2byte 361
+ .2byte 41
+ .byte 40
+ .byte 0
+ .byte 2
+ .byte 6
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route125/map.bin b/data/maps/Route125/map.bin
new file mode 100644
index 000000000..12dab2a0b
--- /dev/null
+++ b/data/maps/Route125/map.bin
Binary files differ
diff --git a/data/maps/Route126/border.bin b/data/maps/Route126/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/Route126/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/Route126/connections.s b/data/maps/Route126/connections.s
new file mode 100644
index 000000000..808cd5a7e
--- /dev/null
+++ b/data/maps/Route126/connections.s
@@ -0,0 +1,9 @@
+Route126_MapConnectionsList:: @ 8308BB4
+ connection up, 0, Route124, 0
+ connection right, 0, Route127, 0
+ connection dive, 0, Underwater2, 0
+
+Route126_MapConnections:: @ 8308BD8
+ .4byte 0x3
+ .4byte Route126_MapConnectionsList
+
diff --git a/data/maps/Route126/header.s b/data/maps/Route126/header.s
new file mode 100644
index 000000000..835b4972e
--- /dev/null
+++ b/data/maps/Route126/header.s
@@ -0,0 +1,15 @@
+Route126:: @ 83058C4
+ .4byte Route126_MapAttributes
+ .4byte Route126_MapEvents
+ .4byte Route126_MapScripts
+ .4byte Route126_MapConnections
+ .2byte 361
+ .2byte 42
+ .byte 41
+ .byte 0
+ .byte 2
+ .byte 6
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route126/map.bin b/data/maps/Route126/map.bin
new file mode 100644
index 000000000..2d684cf64
--- /dev/null
+++ b/data/maps/Route126/map.bin
Binary files differ
diff --git a/data/maps/Route127/border.bin b/data/maps/Route127/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/Route127/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/Route127/connections.s b/data/maps/Route127/connections.s
new file mode 100644
index 000000000..82871cfa1
--- /dev/null
+++ b/data/maps/Route127/connections.s
@@ -0,0 +1,10 @@
+Route127_MapConnectionsList:: @ 8308BE0
+ connection up, 0, MossdeepCity, 0
+ connection down, 0, Route128, 0
+ connection left, 0, Route126, 0
+ connection dive, 0, Underwater3, 0
+
+Route127_MapConnections:: @ 8308C10
+ .4byte 0x4
+ .4byte Route127_MapConnectionsList
+
diff --git a/data/maps/Route127/header.s b/data/maps/Route127/header.s
new file mode 100644
index 000000000..ac84853c9
--- /dev/null
+++ b/data/maps/Route127/header.s
@@ -0,0 +1,15 @@
+Route127:: @ 83058E0
+ .4byte Route127_MapAttributes
+ .4byte Route127_MapEvents
+ .4byte Route127_MapScripts
+ .4byte Route127_MapConnections
+ .2byte 361
+ .2byte 43
+ .byte 42
+ .byte 0
+ .byte 2
+ .byte 6
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route127/map.bin b/data/maps/Route127/map.bin
new file mode 100644
index 000000000..3d4690c18
--- /dev/null
+++ b/data/maps/Route127/map.bin
Binary files differ
diff --git a/data/maps/Route128/border.bin b/data/maps/Route128/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/Route128/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/Route128/connections.s b/data/maps/Route128/connections.s
new file mode 100644
index 000000000..58befb241
--- /dev/null
+++ b/data/maps/Route128/connections.s
@@ -0,0 +1,10 @@
+Route128_MapConnectionsList:: @ 8308C18
+ connection up, 0, Route127, 0
+ connection down, 0, Route129, 0
+ connection right, -40, EverGrandeCity, 0
+ connection dive, 0, Underwater4, 0
+
+Route128_MapConnections:: @ 8308C48
+ .4byte 0x4
+ .4byte Route128_MapConnectionsList
+
diff --git a/data/maps/Route128/header.s b/data/maps/Route128/header.s
new file mode 100644
index 000000000..800a64590
--- /dev/null
+++ b/data/maps/Route128/header.s
@@ -0,0 +1,15 @@
+Route128:: @ 83058FC
+ .4byte Route128_MapAttributes
+ .4byte Route128_MapEvents
+ .4byte Route128_MapScripts
+ .4byte Route128_MapConnections
+ .2byte 361
+ .2byte 44
+ .byte 43
+ .byte 0
+ .byte 2
+ .byte 6
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route128/map.bin b/data/maps/Route128/map.bin
new file mode 100644
index 000000000..fae8a373e
--- /dev/null
+++ b/data/maps/Route128/map.bin
Binary files differ
diff --git a/data/maps/Route129/border.bin b/data/maps/Route129/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/Route129/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/Route129/connections.s b/data/maps/Route129/connections.s
new file mode 100644
index 000000000..1c1644007
--- /dev/null
+++ b/data/maps/Route129/connections.s
@@ -0,0 +1,8 @@
+Route129_MapConnectionsList:: @ 8308C50
+ connection up, 0, Route128, 0
+ connection left, 0, Route130, 0
+
+Route129_MapConnections:: @ 8308C68
+ .4byte 0x2
+ .4byte Route129_MapConnectionsList
+
diff --git a/data/maps/Route129/header.s b/data/maps/Route129/header.s
new file mode 100644
index 000000000..7ee7b0489
--- /dev/null
+++ b/data/maps/Route129/header.s
@@ -0,0 +1,15 @@
+Route129:: @ 8305918
+ .4byte Route129_MapAttributes
+ .4byte Route129_MapEvents
+ .4byte Route129_MapScripts
+ .4byte Route129_MapConnections
+ .2byte 402
+ .2byte 45
+ .byte 44
+ .byte 0
+ .byte 2
+ .byte 6
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route129/map.bin b/data/maps/Route129/map.bin
new file mode 100644
index 000000000..8d09787fd
--- /dev/null
+++ b/data/maps/Route129/map.bin
Binary files differ
diff --git a/data/maps/Route130/border.bin b/data/maps/Route130/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/Route130/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/Route130/connections.s b/data/maps/Route130/connections.s
new file mode 100644
index 000000000..255b3d27c
--- /dev/null
+++ b/data/maps/Route130/connections.s
@@ -0,0 +1,8 @@
+Route130_MapConnectionsList:: @ 8308C70
+ connection left, 0, Route131, 0
+ connection right, 0, Route129, 0
+
+Route130_MapConnections:: @ 8308C88
+ .4byte 0x2
+ .4byte Route130_MapConnectionsList
+
diff --git a/data/maps/Route130/header.s b/data/maps/Route130/header.s
new file mode 100644
index 000000000..2446c9d05
--- /dev/null
+++ b/data/maps/Route130/header.s
@@ -0,0 +1,15 @@
+Route130:: @ 8305934
+ .4byte Route130_MapAttributes
+ .4byte Route130_MapEvents
+ .4byte Route130_MapScripts
+ .4byte Route130_MapConnections
+ .2byte 402
+ .2byte 264
+ .byte 45
+ .byte 0
+ .byte 2
+ .byte 6
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route130/map.bin b/data/maps/Route130/map.bin
new file mode 100644
index 000000000..b06fa74dc
--- /dev/null
+++ b/data/maps/Route130/map.bin
@@ -0,0 +1 @@
+pppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppr{{{{{{vppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppprqkllmqvppppuvpppppppppppppppppppppppppppppppppppppppppppppppr{{{{{{{vpppppppuqkqquqq|uvpp}~pu{vppppppppppppppppppppppppppppppppppppppppu{{qklllmqvppppuvq{|||}qt}~pppppzq|ppppuvuvppppppppppppppppppppppppppppppppzqqqkklmmqvppp}~pyqqqtyppu{{vppyppPQ}~}~ppppppppppppppppppppppppppppppuvzqqqsq{|}quqq|ppPQppppyyyppppzqq|pPQppuvXYppppPQppppppppppppppppppppppppppuv}~qq{qqqt}qtppXYpppuvppppppuvyypXYpp}~ppppppXYpppppppppppppppppppppPQppp}~pppyq{|||}qtpuv{vppp}~pppppp}~pppPQpppppppppppppr{vpppppppppppppppppppXYu{{vpppPQpyypp}~q|ppppppppppPQppppXYppPQpppppppu{q{vpppppppppppppppuvu{qq|pppXYppppppppuvppppyppppppppppXYppppppppXYpppppuvqqqqvpppppppppppppp}~zqqqtppppppppppppp}~ppppppppppppppppppppppppuvppppppp}~pyyyyyuvppppppu{{vpuvpyyyuvppppppuvppppppppppppuvppppppppppppu{{v}~ppppppppppppppppp}~pppu{{kmv}~pppppp}~pppppp}~pppppppppppp}~u{vpppppppuvyyppppppppppppppppppppuvppzqqq{}q|puvpppppppppppppppppppppppppuvppztppppppp}~pppppppppppppppppppppppp}~PQyyqqtp}~ppppppppppppppppppppppppp}~ppppppppppppppppppppppppppppppppppppppXYpppyyppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppPQpppppppuvppppppppppppppppppppppppppppppppppu{vpppppppppppppppppppppppppppppPQpXYppr{{{v}~ppu{{vppppppppppppppppppppppppppppzq|uvpppppppppppppppppppppppppppXYpppr{qqqvpuvqq|ppppppppppppppppppppppppppuvy}~pppppppppppppppppppppppppppppu{{qqqqqqv}~qqtpPQpppppppppppppppppppppuv}~ppppppppppppppppppppppppppuvpuvpppqqqqqqqqqvpyyuvXYPQu{vpuvpppppppPQpppp}~pppppppppppppppppppppppppppp}~p}~ppppyqqqqqqtypppp}~ppXYyp}~pppppppXYu{{{vpppuvppppppppppppppppppppppPQpuvpu{{{vppyyyyyyPQpppppppppppppuvpPQpppuvppzqqq{vp}~ppppppuvppppppppppppppXYp}~pqqvpppppppppXYupppppppppppp}~pXYu{v}~uvyyqqvpuvpppPQ}~pppppppPQppppr{{{vppptyppppppppppp}pppppPQppppppppppzq|pp}~pppyyyp}~PQpXYppu{{vpuvXYppr{qkmvppppppppppppppppppppppXYppppppppppypppppppppppppppXYuvpppqv}~pu{{klm{}q|pppppppppppppppppppppppppppppppppppppppppppppppppppppppp}~ppppyypppqq{|}qqtppppppppppppppppppppppppppppppPQpppppppppppppppppppppppppppppppppppPQpyyyypppppppppppppppppppppppppppppppXYpppppppppppppppppppppppppppppppppppXYpppppppppppppppppppppppppppppp \ No newline at end of file
diff --git a/data/maps/Route131/border.bin b/data/maps/Route131/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/Route131/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/Route131/connections.s b/data/maps/Route131/connections.s
new file mode 100644
index 000000000..77bd6dae2
--- /dev/null
+++ b/data/maps/Route131/connections.s
@@ -0,0 +1,8 @@
+Route131_MapConnectionsList:: @ 8308C90
+ connection left, 0, PacifidlogTown, 0
+ connection right, 0, Route130, 0
+
+Route131_MapConnections:: @ 8308CA8
+ .4byte 0x2
+ .4byte Route131_MapConnectionsList
+
diff --git a/data/maps/Route131/header.s b/data/maps/Route131/header.s
new file mode 100644
index 000000000..c204938bf
--- /dev/null
+++ b/data/maps/Route131/header.s
@@ -0,0 +1,15 @@
+Route131:: @ 8305950
+ .4byte Route131_MapAttributes
+ .4byte Route131_MapEvents
+ .4byte Route131_MapScripts
+ .4byte Route131_MapConnections
+ .2byte 402
+ .2byte 47
+ .byte 46
+ .byte 0
+ .byte 2
+ .byte 6
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route131/map.bin b/data/maps/Route131/map.bin
new file mode 100644
index 000000000..ca8079e0f
--- /dev/null
+++ b/data/maps/Route131/map.bin
@@ -0,0 +1 @@
+qqqqqqqqqqqt||}ut|}ppVOOOOOOOOOOOOOOOOOVpppppppppppppppppqqqqqqqqt||}qqt}upppVOOOOOOOOOOOOOOOOOVppppppppppppppppp||||||||}qqqt|}t}pppppppVOOOOOOOOOOOOOOOOVpppppppppppppppppqqqqqt|||}qt}pppppppVOOOOOOOOOOOOOOOVppppppppppppppppppqqt||}qqqt|}ppppppppVOOOOOOOOOOOOOOOVpppppppppppppppppp||}qt|||}ppuvppppppVOOOOOOOOOOOOOOVpppppppppppppppppp|}uvpu{vp}~ppppppVOOOOOOOOOOOOOVpppppppppppppppppppZ[ppppp}~pzq|ppppppppppVOOOOOOOOOOOOVpppppppPQpppppppppppXYppppuvppppypppppppuvpVOOOOOOOOOOOOVppuvu{vXYppppppppppppppu{vp}~ppuvPQppppppPQ}~pVOOOOOOOOOOOVpuv}~zq|ppuvppppppppppppzq|ppppp}~XYppuvppXYpu{vVOOOOOOOOOOVp}~ppyPQ}~ppppppppPQppyppuvPQpppPQ}~pPQppzq|VOOOOOOOOOVpuvppppppXYpu{{vpppppXYpppppPQ}~XYpuvXYpPQXYppypVOOOOOOOOVu|pppuvpppuqqvpppppppppppXYppppp}~pppXYppppppuvpVOOOOOOVpzq|ppp}~PQpyyyyPQppppppppppppppppppppuvppppppp}~uvVVVVVVuvypppppXYuvpppppXYu{pppppppppppppppppp}~u{vpppppp}~ppppPQ}~pppppppppp}~pppppppzqppppppppppppppppppppzq{vppppuvppuvXYpppppppu{vpppppppppuvyppppppppppppppppppppyyypppp}~uv}~pppppppu{q|ppppppppp}~ppppppppppppppppppppppppppppppppp}~pppppppPQzqqq|pppppppppppPQppppppppppppppppppppppppppppppppppppppppXYyyypppppppppppXYppppppppppppppppppppppppPQppuvpppppppu{vppppppppppppppppppppppppppppppppppppppppppppXYPQ}~ppppuvuq|ppppppppppppppppppppppppppppppppppppppppppppppXYppu{{v}~yyppppppppppppppppppppppppppppppppppppppppppppppppppyyppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppPQppppppppppppppppppppppppppppppppppppppppppppuvppppppPQppppXYppppppppppppppppppppppppppppppppppPQuvpppppp}~pppuvpXYppppppppuvppppppppppppppppppppppppppppppXY}~ppppppu{PQp}~pppu{vpppppzvpuvpppppppppppppuvpppppppppuvppppppppppzqXYppppppzq|puvppv}~pppppppppppPQ}~pppppppuv}~ppppppppPQy{{{{tpppyp}~uvpypppppppu{{vppXYppuvppppp}~pppPQpuvppXYppqqqq{tppppuvp}~ppuvpppppppzqq{vpppp}~uvppu{{vppXYp}~puvpppllllmq{{{t}~pppuv}~ppu{{vpqqqvppppp}~puqq{{vu{{{v}~pppqqqqllmqq{tppp}~ppu{qq|uvyyyyppppppPQyyyqqqqtpppppqqqqqqqmqqqutppppppzqqqt}~ppppppppppppXYppppyqqqtppppPQqqqqqqqqllmuu{tppuvyyypppppppppppppppppppppppyyypppppXYqqqqqqqqqqqltp}~ppppppppppppppppppppppppppppppppppppppppqqqqqqqqqqqqqqqqutpppppppppppppppppppppppppppppppppppppppppp \ No newline at end of file
diff --git a/data/maps/Route132/border.bin b/data/maps/Route132/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/Route132/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/Route132/connections.s b/data/maps/Route132/connections.s
new file mode 100644
index 000000000..db002a248
--- /dev/null
+++ b/data/maps/Route132/connections.s
@@ -0,0 +1,8 @@
+Route132_MapConnectionsList:: @ 8308CB0
+ connection left, 0, Route133, 0
+ connection right, 0, PacifidlogTown, 0
+
+Route132_MapConnections:: @ 8308CC8
+ .4byte 0x2
+ .4byte Route132_MapConnectionsList
+
diff --git a/data/maps/Route132/header.s b/data/maps/Route132/header.s
new file mode 100644
index 000000000..ee0367c10
--- /dev/null
+++ b/data/maps/Route132/header.s
@@ -0,0 +1,15 @@
+Route132:: @ 830596C
+ .4byte Route132_MapAttributes
+ .4byte Route132_MapEvents
+ .4byte Route132_MapScripts
+ .4byte Route132_MapConnections
+ .2byte 402
+ .2byte 48
+ .byte 47
+ .byte 0
+ .byte 2
+ .byte 6
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route132/map.bin b/data/maps/Route132/map.bin
new file mode 100644
index 000000000..f122b2865
--- /dev/null
+++ b/data/maps/Route132/map.bin
Binary files differ
diff --git a/data/maps/Route133/border.bin b/data/maps/Route133/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/Route133/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/Route133/connections.s b/data/maps/Route133/connections.s
new file mode 100644
index 000000000..64c1be53e
--- /dev/null
+++ b/data/maps/Route133/connections.s
@@ -0,0 +1,8 @@
+Route133_MapConnectionsList:: @ 8308CD0
+ connection left, 0, Route134, 0
+ connection right, 0, Route132, 0
+
+Route133_MapConnections:: @ 8308CE8
+ .4byte 0x2
+ .4byte Route133_MapConnectionsList
+
diff --git a/data/maps/Route133/header.s b/data/maps/Route133/header.s
new file mode 100644
index 000000000..085d30dae
--- /dev/null
+++ b/data/maps/Route133/header.s
@@ -0,0 +1,15 @@
+Route133:: @ 8305988
+ .4byte Route133_MapAttributes
+ .4byte Route133_MapEvents
+ .4byte Route133_MapScripts
+ .4byte Route133_MapConnections
+ .2byte 402
+ .2byte 49
+ .byte 48
+ .byte 0
+ .byte 2
+ .byte 6
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route133/map.bin b/data/maps/Route133/map.bin
new file mode 100644
index 000000000..dfb44fe81
--- /dev/null
+++ b/data/maps/Route133/map.bin
@@ -0,0 +1 @@
+ppppuvuvPQppppPQppppppuvppppPQPQppppuvPQPQPQpppPQppPQppuvPQuvppppPQPQuvPQuvpppPQPQpp}~}~XYppuvXYPQuvPQ}~PQuvXYXYppPQ}~XYXYXYpuvXYPQXYPQ}~XY}~PQuvXYXY}~XY}~PQpXYXYuvppppppuv}~ppXY}~XYccXY}~ppppPQXYpppppppPQ}~ppXYppXYccppppXY}~cccccpppppXYPQppp}~pppppp}~ppppppppcccccpppppppXYcppppppppXYpppppppcccccccpppcccccccccccppppXYpccppppppppppppppccccccccccccccccccccPQcccccpppppcccccccccccccccccccccccccccccccccppppuvppuvpppuvccccVF2F2F2WcccccXYcccpppppcccccccccccccccccVF2F2F2F2F2F2F2F2F2F2F2F2Wccccccpuv}~pp}~ppp}~VF2F2F2>2111_ccccPQccccccccccccccccccccccccccccc^111111111111_ccccccc}~11111111111^WWWW_OgccccXYccccccccccccccccccccfGGN111111111_ccccVF2F2F2F21111^WWWWWWWtyo_cccccccccccccccccccccccccccccfGGN111111_cccc^^W_11111ftyyo11_cccccccccccccccccccVF2F2F2WccccccccccfGN1111_cccV>2f_11^Wtyyyyyo111OGgcccccccccccccccccccc^111?2F2F2WccccccccfGGGGgccc^^WWtyyo1111111OGgccccccccccccccccccfN11111?2F2F2WcccccccccccccV>2f1111111OGGgcccccu{{{{{{{{{{{{tccfN1111111?2F2F2Wccccccccccc^1ftyyyyo1OGGGGGgcccu{{{{tccfN111111111?2F2F2Wccccccccc^1nyyo111111_ccccccccutyyyyyyyyyy{tccfN11111111111?2F2F2Wccccccccccc^1111111OGGGgcccccu{{tyy$1$1$1$1$1$1$1$1$1$1yyy|ccfN1111111111111_cccccccccccfGN1111Ogccccccccccccu{tyyy$1111111$1$111111$1$1$1tccccfGGGGGGGGGGGGGgccccccccccfGGGGgcccccccccccccztyo11111111111111nytcccccccccccccccccccPQcccccccccccccccccccccccccc}~ppp}y~cccccccccccccccccccXYcccccccccccccccccccccccccccppppppppppppppppppppppppppcccccccccccccccccccccccccccccccccccccccccccccccccpppppppppppppppppppppppppcccccccccccccccccccccccccccccccccccccccccccccccccccccccccpppppppppppppppppppppccccccccccccccccccccccccccccccccccccccccccccccccccccccccccPQppPQppppPQppppppppu{{{{{{{{{{tcccPQccPQcccPQPQcccccPQPQccccccccccccccccccccPQcXYPQXYPQPQXYppppu{{{tPQXYccXYcPQXYXYPQcPQXYXYcccccccccccccccccuvcXYcccXYppXYXYppppputyyyyytyyyyy~XYcccccccXYppppXYcXYO1O1O1O1cccccccccccccccuv}~lllcccpppppppppppu{to1111n1111?2WcccccpppppppppppPQO1O1O1O1O1F2Wcccccccccccuv}~llllcccccccpppppu{{tyyo111111no111111?2WccpppppppppppPQXYO1O1O1O1O11_cccccccccuv}~llllcccccccccccpputo11111^_111111^_111_cppppppppppppXYO1O1O1O1O1O1O11_ccccccccc}~llllccccccccccccccc}yyyo11111no1111111fg^_1_ccpppppppppppPQO1O1O1O1O1O1O11_cccccccccclllccccccccccccccccccccc^1111^_111111111nofg1_cccppppppppppXYO1O1O1O1O1O1O11_ccccccccccccccccccccccccccccccccccfGN11fg1111111111no1_cccccpppppppccPQO1O1O1O1O1O11_cccccccccccccccccccccccccccccccccccc^11no1111OGGGN1111OgcccccccppPQccXYPQO1O1O1O11_cccccccccc\\\cccccccccccccccccccccccfN11111OGgcccfGGGGgccccccccccXYccXYPQPQOgccccccccccPQ\\\\cccccccccccccccccccccfN111OgccccccccccccccccccccccccccXYXYgcccccccccccXYPQ\\\\\cccccccccccccccccccfGGGgccccccccccccccccccccccccpPQccccccccccccccccccXYuvPQ\\\ccccccccccpppppppccccccccccccccccccccccccuvccppXYppccuvccccccccccuvpp}~XYccccccPQccccPQpppppPQuvccccccccccpppuvppPQuv}~ppppppppppPQPQ}~ccccccuvPQ}~ppppuvccccccXYuvPQXYpppppXY}~PQccccppPQuvp}~PQXY}~PQppuvppppPQXYXYppPQPQuv}~XYpppppp}~uvuvPQuv}~XYpPQuvPQuvppXYPQuvuvXY}~PQpXYppppXYuv}~PQuvXYppppppXYXY}~pppppppppppp}~}~XY}~pppppXY}~XY}~ppppXY}~}~ppppXYppppppppp}~ppXY}~pppppp \ No newline at end of file
diff --git a/data/maps/Route134/border.bin b/data/maps/Route134/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/Route134/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/Route134/connections.s b/data/maps/Route134/connections.s
new file mode 100644
index 000000000..0a3d95d9f
--- /dev/null
+++ b/data/maps/Route134/connections.s
@@ -0,0 +1,8 @@
+Route134_MapConnectionsList:: @ 8308CF0
+ connection left, 0, SlateportCity, 0
+ connection right, 0, Route133, 0
+
+Route134_MapConnections:: @ 8308D08
+ .4byte 0x2
+ .4byte Route134_MapConnectionsList
+
diff --git a/data/maps/Route134/header.s b/data/maps/Route134/header.s
new file mode 100644
index 000000000..914a0c1a9
--- /dev/null
+++ b/data/maps/Route134/header.s
@@ -0,0 +1,15 @@
+Route134:: @ 83059A4
+ .4byte Route134_MapAttributes
+ .4byte Route134_MapEvents
+ .4byte Route134_MapScripts
+ .4byte Route134_MapConnections
+ .2byte 402
+ .2byte 50
+ .byte 49
+ .byte 0
+ .byte 2
+ .byte 6
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Route134/map.bin b/data/maps/Route134/map.bin
new file mode 100644
index 000000000..fbb491539
--- /dev/null
+++ b/data/maps/Route134/map.bin
Binary files differ
diff --git a/data/maps/RustboroCity/border.bin b/data/maps/RustboroCity/border.bin
new file mode 100644
index 000000000..03bcafef1
--- /dev/null
+++ b/data/maps/RustboroCity/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/RustboroCity/connections.s b/data/maps/RustboroCity/connections.s
new file mode 100644
index 000000000..9c0a35a1f
--- /dev/null
+++ b/data/maps/RustboroCity/connections.s
@@ -0,0 +1,9 @@
+RustboroCity_MapConnectionsList:: @ 8308768
+ connection up, 0, Route115, 0
+ connection down, 0, Route104, 0
+ connection right, 0, Route116, 0
+
+RustboroCity_MapConnections:: @ 830878C
+ .4byte 0x3
+ .4byte RustboroCity_MapConnectionsList
+
diff --git a/data/maps/RustboroCity/header.s b/data/maps/RustboroCity/header.s
new file mode 100644
index 000000000..1306fc1c8
--- /dev/null
+++ b/data/maps/RustboroCity/header.s
@@ -0,0 +1,15 @@
+RustboroCity:: @ 830549C
+ .4byte RustboroCity_MapAttributes
+ .4byte RustboroCity_MapEvents
+ .4byte RustboroCity_MapScripts
+ .4byte RustboroCity_MapConnections
+ .2byte 399
+ .2byte 4
+ .byte 10
+ .byte 0
+ .byte 2
+ .byte 2
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/RustboroCity/map.bin b/data/maps/RustboroCity/map.bin
new file mode 100644
index 000000000..d8921ec3f
--- /dev/null
+++ b/data/maps/RustboroCity/map.bin
Binary files differ
diff --git a/data/maps/RustboroCity_CuttersHouse/border.bin b/data/maps/RustboroCity_CuttersHouse/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/RustboroCity_CuttersHouse/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/RustboroCity_CuttersHouse/header.s b/data/maps/RustboroCity_CuttersHouse/header.s
new file mode 100644
index 000000000..fbd6313f0
--- /dev/null
+++ b/data/maps/RustboroCity_CuttersHouse/header.s
@@ -0,0 +1,15 @@
+RustboroCity_CuttersHouse:: @ 8306360
+ .4byte RustboroCity_CuttersHouse_MapAttributes
+ .4byte RustboroCity_CuttersHouse_MapEvents
+ .4byte RustboroCity_CuttersHouse_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 98
+ .byte 10
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/RustboroCity_CuttersHouse/map.bin b/data/maps/RustboroCity_CuttersHouse/map.bin
new file mode 100644
index 000000000..5515d00cf
--- /dev/null
+++ b/data/maps/RustboroCity_CuttersHouse/map.bin
@@ -0,0 +1 @@
+yzfg8898x88no@@A@VW33v3w3+3+3+3+33^3_3+3{3|3|3}3,3,3,3,3,3,3+33>2>23,3,3,3j7k7E3+33>2>23,3,3D3r7s7E3+33333,3,3,3,3,3,3F3G3,3,3,3,3,3,3,3,3,3N7O7,3,3,3LM,3,3,3,3 \ No newline at end of file
diff --git a/data/maps/RustboroCity_DevonCorp_1F/border.bin b/data/maps/RustboroCity_DevonCorp_1F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/RustboroCity_DevonCorp_1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/RustboroCity_DevonCorp_1F/header.s b/data/maps/RustboroCity_DevonCorp_1F/header.s
new file mode 100644
index 000000000..f2a5918ce
--- /dev/null
+++ b/data/maps/RustboroCity_DevonCorp_1F/header.s
@@ -0,0 +1,15 @@
+RustboroCity_DevonCorp_1F:: @ 830622C
+ .4byte RustboroCity_DevonCorp_1F_MapAttributes
+ .4byte RustboroCity_DevonCorp_1F_MapEvents
+ .4byte RustboroCity_DevonCorp_1F_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 92
+ .byte 10
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/RustboroCity_DevonCorp_1F/map.bin b/data/maps/RustboroCity_DevonCorp_1F/map.bin
new file mode 100644
index 000000000..78cc0c199
--- /dev/null
+++ b/data/maps/RustboroCity_DevonCorp_1F/map.bin
@@ -0,0 +1 @@
+333333333333333333333333333333333333333333333333333333333333333333333333333333333333322333333333333 \ No newline at end of file
diff --git a/data/maps/RustboroCity_DevonCorp_2F/border.bin b/data/maps/RustboroCity_DevonCorp_2F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/RustboroCity_DevonCorp_2F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/RustboroCity_DevonCorp_2F/header.s b/data/maps/RustboroCity_DevonCorp_2F/header.s
new file mode 100644
index 000000000..ed47a35b9
--- /dev/null
+++ b/data/maps/RustboroCity_DevonCorp_2F/header.s
@@ -0,0 +1,15 @@
+RustboroCity_DevonCorp_2F:: @ 8306248
+ .4byte RustboroCity_DevonCorp_2F_MapAttributes
+ .4byte RustboroCity_DevonCorp_2F_MapEvents
+ .4byte RustboroCity_DevonCorp_2F_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 93
+ .byte 10
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/RustboroCity_DevonCorp_2F/map.bin b/data/maps/RustboroCity_DevonCorp_2F/map.bin
new file mode 100644
index 000000000..03985c572
--- /dev/null
+++ b/data/maps/RustboroCity_DevonCorp_2F/map.bin
@@ -0,0 +1 @@
+33333333333333333333333333333333333337773377337733773333377333733333333333333333333333333333333333377337733773333333333333333333333 \ No newline at end of file
diff --git a/data/maps/RustboroCity_DevonCorp_3F/border.bin b/data/maps/RustboroCity_DevonCorp_3F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/RustboroCity_DevonCorp_3F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/RustboroCity_DevonCorp_3F/header.s b/data/maps/RustboroCity_DevonCorp_3F/header.s
new file mode 100644
index 000000000..b870716dd
--- /dev/null
+++ b/data/maps/RustboroCity_DevonCorp_3F/header.s
@@ -0,0 +1,15 @@
+RustboroCity_DevonCorp_3F:: @ 8306264
+ .4byte RustboroCity_DevonCorp_3F_MapAttributes
+ .4byte RustboroCity_DevonCorp_3F_MapEvents
+ .4byte RustboroCity_DevonCorp_3F_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 270
+ .byte 10
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/RustboroCity_DevonCorp_3F/map.bin b/data/maps/RustboroCity_DevonCorp_3F/map.bin
new file mode 100644
index 000000000..8333a8bc3
--- /dev/null
+++ b/data/maps/RustboroCity_DevonCorp_3F/map.bin
@@ -0,0 +1 @@
+IJK33333333Q3R3S333333333333333333333333333332333H33333233333P33333333233333333333333333333333333333333333333333333333 \ No newline at end of file
diff --git a/data/maps/RustboroCity_Flat1_1F/border.bin b/data/maps/RustboroCity_Flat1_1F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/RustboroCity_Flat1_1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/RustboroCity_Flat1_1F/header.s b/data/maps/RustboroCity_Flat1_1F/header.s
new file mode 100644
index 000000000..bbace0643
--- /dev/null
+++ b/data/maps/RustboroCity_Flat1_1F/header.s
@@ -0,0 +1,15 @@
+RustboroCity_Flat1_1F:: @ 830630C
+ .4byte RustboroCity_Flat1_1F_MapAttributes
+ .4byte RustboroCity_Flat1_1F_MapEvents
+ .4byte RustboroCity_Flat1_1F_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 314
+ .byte 10
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/RustboroCity_Flat1_1F/map.bin b/data/maps/RustboroCity_Flat1_1F/map.bin
new file mode 100644
index 000000000..017298e71
--- /dev/null
+++ b/data/maps/RustboroCity_Flat1_1F/map.bin
@@ -0,0 +1 @@
+8()*:888:8x88:H0 2B@@@B@VWBP3+3+3+3+3+3+3+3+3+33^3_3+3+3D3,3,3,3,3,3,3{3|3|3|3|3}3+3h7i7,3,3,3,3,332H6I623+3p7q7E3,3,3,3,33>2P6Q623F3G3,3,3,3,3,3,3333333N7O7,3,3,3,3LM,3,3,3,3,3,3 \ No newline at end of file
diff --git a/data/maps/RustboroCity_Flat1_2F/border.bin b/data/maps/RustboroCity_Flat1_2F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/RustboroCity_Flat1_2F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/RustboroCity_Flat1_2F/header.s b/data/maps/RustboroCity_Flat1_2F/header.s
new file mode 100644
index 000000000..2fc4e4e55
--- /dev/null
+++ b/data/maps/RustboroCity_Flat1_2F/header.s
@@ -0,0 +1,15 @@
+RustboroCity_Flat1_2F:: @ 8306328
+ .4byte RustboroCity_Flat1_2F_MapAttributes
+ .4byte RustboroCity_Flat1_2F_MapEvents
+ .4byte RustboroCity_Flat1_2F_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 315
+ .byte 10
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/RustboroCity_Flat1_2F/map.bin b/data/maps/RustboroCity_Flat1_2F/map.bin
new file mode 100644
index 000000000..17a611343
--- /dev/null
+++ b/data/maps/RustboroCity_Flat1_2F/map.bin
@@ -0,0 +1 @@
+8()*:888:8888:@02B@@@BT7UIB+3+3+3+3+3+3+3+3+3\3?3]3Q3+3+3,3,3,3,3,3,3,3{3|3|3|3}3,3+3D3~777E3,3,33>2>2>23,3+3,3777E3,3,33>2>2>23,3+3G3G3,3,3,3,3,333333,3+3O7O7,3,3,3,3,3,3,3,3,3,3,3 \ No newline at end of file
diff --git a/data/maps/RustboroCity_Flat2_1F/border.bin b/data/maps/RustboroCity_Flat2_1F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/RustboroCity_Flat2_1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/RustboroCity_Flat2_1F/header.s b/data/maps/RustboroCity_Flat2_1F/header.s
new file mode 100644
index 000000000..f5fc03059
--- /dev/null
+++ b/data/maps/RustboroCity_Flat2_1F/header.s
@@ -0,0 +1,15 @@
+RustboroCity_Flat2_1F:: @ 8306398
+ .4byte RustboroCity_Flat2_1F_MapAttributes
+ .4byte RustboroCity_Flat2_1F_MapEvents
+ .4byte RustboroCity_Flat2_1F_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 295
+ .byte 10
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/RustboroCity_Flat2_1F/map.bin b/data/maps/RustboroCity_Flat2_1F/map.bin
new file mode 100644
index 000000000..0f6829f9c
--- /dev/null
+++ b/data/maps/RustboroCity_Flat2_1F/map.bin
Binary files differ
diff --git a/data/maps/RustboroCity_Flat2_2F/border.bin b/data/maps/RustboroCity_Flat2_2F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/RustboroCity_Flat2_2F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/RustboroCity_Flat2_2F/header.s b/data/maps/RustboroCity_Flat2_2F/header.s
new file mode 100644
index 000000000..4ea6769f8
--- /dev/null
+++ b/data/maps/RustboroCity_Flat2_2F/header.s
@@ -0,0 +1,15 @@
+RustboroCity_Flat2_2F:: @ 83063B4
+ .4byte RustboroCity_Flat2_2F_MapAttributes
+ .4byte RustboroCity_Flat2_2F_MapEvents
+ .4byte RustboroCity_Flat2_2F_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 296
+ .byte 10
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/RustboroCity_Flat2_2F/map.bin b/data/maps/RustboroCity_Flat2_2F/map.bin
new file mode 100644
index 000000000..9f3750fb4
--- /dev/null
+++ b/data/maps/RustboroCity_Flat2_2F/map.bin
Binary files differ
diff --git a/data/maps/RustboroCity_Flat2_3F/border.bin b/data/maps/RustboroCity_Flat2_3F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/RustboroCity_Flat2_3F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/RustboroCity_Flat2_3F/header.s b/data/maps/RustboroCity_Flat2_3F/header.s
new file mode 100644
index 000000000..ef58a464c
--- /dev/null
+++ b/data/maps/RustboroCity_Flat2_3F/header.s
@@ -0,0 +1,15 @@
+RustboroCity_Flat2_3F:: @ 83063D0
+ .4byte RustboroCity_Flat2_3F_MapAttributes
+ .4byte RustboroCity_Flat2_3F_MapEvents
+ .4byte RustboroCity_Flat2_3F_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 297
+ .byte 10
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/RustboroCity_Flat2_3F/map.bin b/data/maps/RustboroCity_Flat2_3F/map.bin
new file mode 100644
index 000000000..2112fe799
--- /dev/null
+++ b/data/maps/RustboroCity_Flat2_3F/map.bin
Binary files differ
diff --git a/data/maps/RustboroCity_Gym/border.bin b/data/maps/RustboroCity_Gym/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/RustboroCity_Gym/border.bin
Binary files differ
diff --git a/data/maps/RustboroCity_Gym/header.s b/data/maps/RustboroCity_Gym/header.s
new file mode 100644
index 000000000..f782fa055
--- /dev/null
+++ b/data/maps/RustboroCity_Gym/header.s
@@ -0,0 +1,15 @@
+RustboroCity_Gym:: @ 8306280
+ .4byte RustboroCity_Gym_MapAttributes
+ .4byte RustboroCity_Gym_MapEvents
+ .4byte RustboroCity_Gym_MapScripts
+ .4byte 0x0
+ .2byte 364
+ .2byte 94
+ .byte 10
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 1
+
diff --git a/data/maps/RustboroCity_Gym/map.bin b/data/maps/RustboroCity_Gym/map.bin
new file mode 100644
index 000000000..bc69d8879
--- /dev/null
+++ b/data/maps/RustboroCity_Gym/map.bin
@@ -0,0 +1,2 @@
+         
+%262222262  2726$222$622 22222222222"2&2&2!2222 2!22-2)(.222)*/21)*%22222)*/21)062!2222)*/215.222./211%2"2#2222"2'26241/2)*/222+*1/2)*/22222)*1/2)*/222 2&23*,/2./222. 2722272222222 22222222222 222222222 222222222 \ No newline at end of file
diff --git a/data/maps/RustboroCity_House1/border.bin b/data/maps/RustboroCity_House1/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/RustboroCity_House1/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/RustboroCity_House1/header.s b/data/maps/RustboroCity_House1/header.s
new file mode 100644
index 000000000..8417edf89
--- /dev/null
+++ b/data/maps/RustboroCity_House1/header.s
@@ -0,0 +1,15 @@
+RustboroCity_House1:: @ 8306344
+ .4byte RustboroCity_House1_MapAttributes
+ .4byte RustboroCity_House1_MapEvents
+ .4byte RustboroCity_House1_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 97
+ .byte 10
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/RustboroCity_House1/map.bin b/data/maps/RustboroCity_House1/map.bin
new file mode 100644
index 000000000..a14fc0405
--- /dev/null
+++ b/data/maps/RustboroCity_House1/map.bin
@@ -0,0 +1 @@
+888188::88888CJK@@BB@TUICN7R3S363+3+3+3+3+3\3]3Q3N7+3,3,3,3,3,3,3,3{3|3|3}3,3+3,3D3~777E3,33>2>23,3+3,3D3777,3,33333,3F3,3,3,3,3,3,3,3,3,3,3,3G3N7,3,3,3,3LM,3,3,3,3,3O7 \ No newline at end of file
diff --git a/data/maps/RustboroCity_House2/border.bin b/data/maps/RustboroCity_House2/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/RustboroCity_House2/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/RustboroCity_House2/header.s b/data/maps/RustboroCity_House2/header.s
new file mode 100644
index 000000000..a173262d3
--- /dev/null
+++ b/data/maps/RustboroCity_House2/header.s
@@ -0,0 +1,15 @@
+RustboroCity_House2:: @ 830637C
+ .4byte RustboroCity_House2_MapAttributes
+ .4byte RustboroCity_House2_MapEvents
+ .4byte RustboroCity_House2_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 96
+ .byte 10
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/RustboroCity_House2/map.bin b/data/maps/RustboroCity_House2/map.bin
new file mode 100644
index 000000000..5a53bbc77
--- /dev/null
+++ b/data/maps/RustboroCity_House2/map.bin
@@ -0,0 +1 @@
+yz89888819fgIA@@JKAno33Q3+3+3+3R3S363+3v3w3+3,3,3{3|3|3|3|3}3,3,3,3+3,3,332H^23,3,3,3+3,3,332PQ23,3,3,3+3,3,3333333,3,3,3F3,3,3,3,3,3,3,3,3,3,3G3N,3,3,3,3LM,3,3,3,3O \ No newline at end of file
diff --git a/data/maps/RustboroCity_House3/header.s b/data/maps/RustboroCity_House3/header.s
new file mode 100644
index 000000000..50843c2bf
--- /dev/null
+++ b/data/maps/RustboroCity_House3/header.s
@@ -0,0 +1,15 @@
+RustboroCity_House3:: @ 83063EC
+ .4byte RustboroCity_House3_MapAttributes
+ .4byte RustboroCity_House3_MapEvents
+ .4byte RustboroCity_House3_MapScripts
+ .4byte 0x0
+ .2byte 399
+ .2byte 96
+ .byte 10
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/RustboroCity_Mart/header.s b/data/maps/RustboroCity_Mart/header.s
new file mode 100644
index 000000000..59be293a8
--- /dev/null
+++ b/data/maps/RustboroCity_Mart/header.s
@@ -0,0 +1,15 @@
+RustboroCity_Mart:: @ 83062F0
+ .4byte RustboroCity_Mart_MapAttributes
+ .4byte RustboroCity_Mart_MapEvents
+ .4byte RustboroCity_Mart_MapScripts
+ .4byte 0x0
+ .2byte 404
+ .2byte 63
+ .byte 10
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/RustboroCity_PokemonCenter_1F/header.s b/data/maps/RustboroCity_PokemonCenter_1F/header.s
new file mode 100644
index 000000000..38c4af614
--- /dev/null
+++ b/data/maps/RustboroCity_PokemonCenter_1F/header.s
@@ -0,0 +1,15 @@
+RustboroCity_PokemonCenter_1F:: @ 83062B8
+ .4byte RustboroCity_PokemonCenter_1F_MapAttributes
+ .4byte RustboroCity_PokemonCenter_1F_MapEvents
+ .4byte RustboroCity_PokemonCenter_1F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 61
+ .byte 10
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/RustboroCity_PokemonCenter_2F/header.s b/data/maps/RustboroCity_PokemonCenter_2F/header.s
new file mode 100644
index 000000000..8b6b3af7d
--- /dev/null
+++ b/data/maps/RustboroCity_PokemonCenter_2F/header.s
@@ -0,0 +1,15 @@
+RustboroCity_PokemonCenter_2F:: @ 83062D4
+ .4byte RustboroCity_PokemonCenter_2F_MapAttributes
+ .4byte RustboroCity_PokemonCenter_2F_MapEvents
+ .4byte RustboroCity_PokemonCenter_2F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 62
+ .byte 10
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/RustboroCity_PokemonSchool/border.bin b/data/maps/RustboroCity_PokemonSchool/border.bin
new file mode 100644
index 000000000..8f857616b
--- /dev/null
+++ b/data/maps/RustboroCity_PokemonSchool/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/RustboroCity_PokemonSchool/header.s b/data/maps/RustboroCity_PokemonSchool/header.s
new file mode 100644
index 000000000..4cc3c080b
--- /dev/null
+++ b/data/maps/RustboroCity_PokemonSchool/header.s
@@ -0,0 +1,15 @@
+RustboroCity_PokemonSchool:: @ 830629C
+ .4byte RustboroCity_PokemonSchool_MapAttributes
+ .4byte RustboroCity_PokemonSchool_MapEvents
+ .4byte RustboroCity_PokemonSchool_MapScripts
+ .4byte 0x0
+ .2byte 435
+ .2byte 95
+ .byte 10
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/RustboroCity_PokemonSchool/map.bin b/data/maps/RustboroCity_PokemonSchool/map.bin
new file mode 100644
index 000000000..3f3b183d3
--- /dev/null
+++ b/data/maps/RustboroCity_PokemonSchool/map.bin
Binary files differ
diff --git a/data/maps/RusturfTunnel/border.bin b/data/maps/RusturfTunnel/border.bin
new file mode 100644
index 000000000..423a0732e
--- /dev/null
+++ b/data/maps/RusturfTunnel/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/RusturfTunnel/header.s b/data/maps/RusturfTunnel/header.s
new file mode 100644
index 000000000..6d8e7fa4e
--- /dev/null
+++ b/data/maps/RusturfTunnel/header.s
@@ -0,0 +1,15 @@
+RusturfTunnel:: @ 8306DE0
+ .4byte RusturfTunnel_MapAttributes
+ .4byte RusturfTunnel_MapEvents
+ .4byte RusturfTunnel_MapScripts
+ .4byte 0x0
+ .2byte 366
+ .2byte 130
+ .byte 60
+ .byte 0
+ .byte 6
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/RusturfTunnel/map.bin b/data/maps/RusturfTunnel/map.bin
new file mode 100644
index 000000000..87ce9bc73
--- /dev/null
+++ b/data/maps/RusturfTunnel/map.bin
@@ -0,0 +1,2 @@
+3!43!!!4222222@<A@<<<A22222222222222222222222222222222222222222222222222222222222222222                 
+2222222223!!4222222222234@<<A3422222222222@A@A22222222222 PQR   3!422         @<A2223!!4      "22222222234@<<A342222222222   "@A   @A2222222222222 "  2222222222222      2222     PQR  342222            @A2222            222   PQR  3!4        3!4@<A           @<A \ No newline at end of file
diff --git a/data/maps/SSTidalCorridor/border.bin b/data/maps/SSTidalCorridor/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/SSTidalCorridor/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SSTidalCorridor/header.s b/data/maps/SSTidalCorridor/header.s
new file mode 100644
index 000000000..d67a82aaa
--- /dev/null
+++ b/data/maps/SSTidalCorridor/header.s
@@ -0,0 +1,15 @@
+SSTidalCorridor:: @ 8307B54
+ .4byte SSTidalCorridor_MapAttributes
+ .4byte SSTidalCorridor_MapEvents
+ .4byte SSTidalCorridor_MapScripts
+ .4byte 0x0
+ .2byte 431
+ .2byte 278
+ .byte 87
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SSTidalCorridor/map.bin b/data/maps/SSTidalCorridor/map.bin
new file mode 100644
index 000000000..f8cf1725d
--- /dev/null
+++ b/data/maps/SSTidalCorridor/map.bin
@@ -0,0 +1 @@
+2222222222222222 6222222222222222222201111111111222222011111111112222220111111111122222201111111111222222%#$"#$"#$"#&22222-+6{*+6{*+6{*+622222222222222222222 22222222222222222 \ No newline at end of file
diff --git a/data/maps/SSTidalLowerDeck/border.bin b/data/maps/SSTidalLowerDeck/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/SSTidalLowerDeck/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SSTidalLowerDeck/header.s b/data/maps/SSTidalLowerDeck/header.s
new file mode 100644
index 000000000..53da475ec
--- /dev/null
+++ b/data/maps/SSTidalLowerDeck/header.s
@@ -0,0 +1,15 @@
+SSTidalLowerDeck:: @ 8307B70
+ .4byte SSTidalLowerDeck_MapAttributes
+ .4byte SSTidalLowerDeck_MapEvents
+ .4byte SSTidalLowerDeck_MapScripts
+ .4byte 0x0
+ .2byte 431
+ .2byte 279
+ .byte 87
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SSTidalLowerDeck/map.bin b/data/maps/SSTidalLowerDeck/map.bin
new file mode 100644
index 000000000..059ce30fe
--- /dev/null
+++ b/data/maps/SSTidalLowerDeck/map.bin
@@ -0,0 +1 @@
+22222222 22 22 22 2 2 22 2222 2222 22222 2 2 22222222 222 2222 2 2 22222 2 22222 2 2222222222222222 2 22 2 2 2 2 2 2 2 2 2 2 2 2 2 2222222222 222 222 2 22222 2662222222 2 \ No newline at end of file
diff --git a/data/maps/SSTidalRooms/border.bin b/data/maps/SSTidalRooms/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/SSTidalRooms/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SSTidalRooms/header.s b/data/maps/SSTidalRooms/header.s
new file mode 100644
index 000000000..39fe900c1
--- /dev/null
+++ b/data/maps/SSTidalRooms/header.s
@@ -0,0 +1,15 @@
+SSTidalRooms:: @ 8307B8C
+ .4byte SSTidalRooms_MapAttributes
+ .4byte SSTidalRooms_MapEvents
+ .4byte SSTidalRooms_MapScripts
+ .4byte 0x0
+ .2byte 431
+ .2byte 280
+ .byte 87
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SSTidalRooms/map.bin b/data/maps/SSTidalRooms/map.bin
new file mode 100644
index 000000000..6103ad0c2
--- /dev/null
+++ b/data/maps/SSTidalRooms/map.bin
@@ -0,0 +1 @@
+6@kcmE@kcmE@kc''@kcmE7>HsuMHsuMHs////uM?>PQ:2;2;2TUPQ:2;2;2TUPQ:2;2;2;2;2;2;2;2TU?>XY=28282\]XY=28282\]XY=282828282828282\]?>:;2<28282;2;2:;2<28282;2;2:2;2<282828282w682828282;2;2?>=2828282828282w68282VW8282=282`2VWa282=28282828282a2?>=2828282VW82=282`2^_a282=282`2^_a282=282828282VW?>=28282`2^_b=2828282828282=2828282b8282=2828282`2^_?6@klvlmElvllCDE@lvlvmE@kv'vmE7>Hst~tuMt~ttKij/t~t~uMHs~/~//?>PQ:2;2;2TU:2;2;2;2;2qr66;2;2;2TUPQ:2;2;2;2|2?>XY=28282\]=2VW8282yz828282\]XY=2VppW?>:;2<28282;2|2=2^_a282;256=282828282;2;2h;2<2^xx_?>=2828282828282=2828282828282=2828282828282=28282`2828282?>=2828282828282=2828282828282=2828282828282=2828282828282?>=28282de8282=28282de8282=28282de8282=28282de8282? \ No newline at end of file
diff --git a/data/maps/SafariZone_Northeast/border.bin b/data/maps/SafariZone_Northeast/border.bin
new file mode 100644
index 000000000..03bcafef1
--- /dev/null
+++ b/data/maps/SafariZone_Northeast/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SafariZone_Northeast/connections.s b/data/maps/SafariZone_Northeast/connections.s
new file mode 100644
index 000000000..dcba64de1
--- /dev/null
+++ b/data/maps/SafariZone_Northeast/connections.s
@@ -0,0 +1,8 @@
+SafariZone_Northeast_MapConnectionsList:: @ 8308DC8
+ connection left, 0, SafariZone_Northwest, 0
+ connection down, 0, SafariZone_Southeast, 0
+
+SafariZone_Northeast_MapConnections:: @ 8308DE0
+ .4byte 0x2
+ .4byte SafariZone_Northeast_MapConnectionsList
+
diff --git a/data/maps/SafariZone_Northeast/header.s b/data/maps/SafariZone_Northeast/header.s
new file mode 100644
index 000000000..1a9ad6a0e
--- /dev/null
+++ b/data/maps/SafariZone_Northeast/header.s
@@ -0,0 +1,15 @@
+SafariZone_Northeast:: @ 8307BC4
+ .4byte SafariZone_Northeast_MapAttributes
+ .4byte SafariZone_Northeast_MapEvents
+ .4byte SafariZone_Northeast_MapScripts
+ .4byte SafariZone_Northeast_MapConnections
+ .2byte 428
+ .2byte 240
+ .byte 57
+ .byte 0
+ .byte 0
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SafariZone_Northeast/map.bin b/data/maps/SafariZone_Northeast/map.bin
new file mode 100644
index 000000000..d5e7fd825
--- /dev/null
+++ b/data/maps/SafariZone_Northeast/map.bin
Binary files differ
diff --git a/data/maps/SafariZone_Northwest/border.bin b/data/maps/SafariZone_Northwest/border.bin
new file mode 100644
index 000000000..03bcafef1
--- /dev/null
+++ b/data/maps/SafariZone_Northwest/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SafariZone_Northwest/connections.s b/data/maps/SafariZone_Northwest/connections.s
new file mode 100644
index 000000000..db8fbd19c
--- /dev/null
+++ b/data/maps/SafariZone_Northwest/connections.s
@@ -0,0 +1,8 @@
+SafariZone_Northwest_MapConnectionsList:: @ 8308DA8
+ connection right, 0, SafariZone_Northeast, 0
+ connection down, 0, SafariZone_Southwest, 0
+
+SafariZone_Northwest_MapConnections:: @ 8308DC0
+ .4byte 0x2
+ .4byte SafariZone_Northwest_MapConnectionsList
+
diff --git a/data/maps/SafariZone_Northwest/header.s b/data/maps/SafariZone_Northwest/header.s
new file mode 100644
index 000000000..1995a7ca5
--- /dev/null
+++ b/data/maps/SafariZone_Northwest/header.s
@@ -0,0 +1,15 @@
+SafariZone_Northwest:: @ 8307BA8
+ .4byte SafariZone_Northwest_MapAttributes
+ .4byte SafariZone_Northwest_MapEvents
+ .4byte SafariZone_Northwest_MapScripts
+ .4byte SafariZone_Northwest_MapConnections
+ .2byte 428
+ .2byte 239
+ .byte 57
+ .byte 0
+ .byte 0
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SafariZone_Northwest/map.bin b/data/maps/SafariZone_Northwest/map.bin
new file mode 100644
index 000000000..1825a1c92
--- /dev/null
+++ b/data/maps/SafariZone_Northwest/map.bin
Binary files differ
diff --git a/data/maps/SafariZone_RestHouse/border.bin b/data/maps/SafariZone_RestHouse/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/SafariZone_RestHouse/border.bin
Binary files differ
diff --git a/data/maps/SafariZone_RestHouse/header.s b/data/maps/SafariZone_RestHouse/header.s
new file mode 100644
index 000000000..9275f8cbf
--- /dev/null
+++ b/data/maps/SafariZone_RestHouse/header.s
@@ -0,0 +1,15 @@
+SafariZone_RestHouse:: @ 8307CDC
+ .4byte SafariZone_RestHouse_MapAttributes
+ .4byte SafariZone_RestHouse_MapEvents
+ .4byte SafariZone_RestHouse_MapScripts
+ .4byte 0x0
+ .2byte 428
+ .2byte 330
+ .byte 57
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SafariZone_RestHouse/map.bin b/data/maps/SafariZone_RestHouse/map.bin
new file mode 100644
index 000000000..c57c99c7b
--- /dev/null
+++ b/data/maps/SafariZone_RestHouse/map.bin
@@ -0,0 +1 @@
+        $2$2$2$2$2$2$2$2$2$292#24266<2#2#2#2#292#24266<2#2#2#2#292#2#2#2#2#2#2#2#2#292#2#2 #2#2#2#2#2 \ No newline at end of file
diff --git a/data/maps/SafariZone_Southeast/border.bin b/data/maps/SafariZone_Southeast/border.bin
new file mode 100644
index 000000000..03bcafef1
--- /dev/null
+++ b/data/maps/SafariZone_Southeast/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SafariZone_Southeast/connections.s b/data/maps/SafariZone_Southeast/connections.s
new file mode 100644
index 000000000..ffe609503
--- /dev/null
+++ b/data/maps/SafariZone_Southeast/connections.s
@@ -0,0 +1,8 @@
+SafariZone_Southeast_MapConnectionsList:: @ 8308E08
+ connection up, 0, SafariZone_Northeast, 0
+ connection left, 0, SafariZone_Southwest, 0
+
+SafariZone_Southeast_MapConnections:: @ 8308E20
+ .4byte 0x2
+ .4byte SafariZone_Southeast_MapConnectionsList
+
diff --git a/data/maps/SafariZone_Southeast/header.s b/data/maps/SafariZone_Southeast/header.s
new file mode 100644
index 000000000..854b25d3b
--- /dev/null
+++ b/data/maps/SafariZone_Southeast/header.s
@@ -0,0 +1,15 @@
+SafariZone_Southeast:: @ 8307BFC
+ .4byte SafariZone_Southeast_MapAttributes
+ .4byte SafariZone_Southeast_MapEvents
+ .4byte SafariZone_Southeast_MapScripts
+ .4byte SafariZone_Southeast_MapConnections
+ .2byte 428
+ .2byte 242
+ .byte 57
+ .byte 0
+ .byte 0
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SafariZone_Southeast/map.bin b/data/maps/SafariZone_Southeast/map.bin
new file mode 100644
index 000000000..540798144
--- /dev/null
+++ b/data/maps/SafariZone_Southeast/map.bin
Binary files differ
diff --git a/data/maps/SafariZone_Southwest/border.bin b/data/maps/SafariZone_Southwest/border.bin
new file mode 100644
index 000000000..03bcafef1
--- /dev/null
+++ b/data/maps/SafariZone_Southwest/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SafariZone_Southwest/connections.s b/data/maps/SafariZone_Southwest/connections.s
new file mode 100644
index 000000000..423ff05c0
--- /dev/null
+++ b/data/maps/SafariZone_Southwest/connections.s
@@ -0,0 +1,8 @@
+SafariZone_Southwest_MapConnectionsList:: @ 8308DE8
+ connection up, 0, SafariZone_Northwest, 0
+ connection right, 0, SafariZone_Southeast, 0
+
+SafariZone_Southwest_MapConnections:: @ 8308E00
+ .4byte 0x2
+ .4byte SafariZone_Southwest_MapConnectionsList
+
diff --git a/data/maps/SafariZone_Southwest/header.s b/data/maps/SafariZone_Southwest/header.s
new file mode 100644
index 000000000..ad1844d51
--- /dev/null
+++ b/data/maps/SafariZone_Southwest/header.s
@@ -0,0 +1,15 @@
+SafariZone_Southwest:: @ 8307BE0
+ .4byte SafariZone_Southwest_MapAttributes
+ .4byte SafariZone_Southwest_MapEvents
+ .4byte SafariZone_Southwest_MapScripts
+ .4byte SafariZone_Southwest_MapConnections
+ .2byte 428
+ .2byte 241
+ .byte 57
+ .byte 0
+ .byte 0
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SafariZone_Southwest/map.bin b/data/maps/SafariZone_Southwest/map.bin
new file mode 100644
index 000000000..0074b6e55
--- /dev/null
+++ b/data/maps/SafariZone_Southwest/map.bin
Binary files differ
diff --git a/data/maps/ScorchedSlab/border.bin b/data/maps/ScorchedSlab/border.bin
new file mode 100644
index 000000000..423a0732e
--- /dev/null
+++ b/data/maps/ScorchedSlab/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/ScorchedSlab/header.s b/data/maps/ScorchedSlab/header.s
new file mode 100644
index 000000000..8043e870b
--- /dev/null
+++ b/data/maps/ScorchedSlab/header.s
@@ -0,0 +1,15 @@
+ScorchedSlab:: @ 830756C
+ .4byte ScorchedSlab_MapAttributes
+ .4byte ScorchedSlab_MapEvents
+ .4byte ScorchedSlab_MapScripts
+ .4byte 0x0
+ .2byte 366
+ .2byte 312
+ .byte 80
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/ScorchedSlab/map.bin b/data/maps/ScorchedSlab/map.bin
new file mode 100644
index 000000000..edbd982ee
--- /dev/null
+++ b/data/maps/ScorchedSlab/map.bin
@@ -0,0 +1 @@
+222222222222222222222222222222222ppppppppppppppppppppppppppppppppppppppppppppppppppppGG^^^^GGG          $G \ No newline at end of file
diff --git a/data/maps/SeafloorCavern_Entrance/border.bin b/data/maps/SeafloorCavern_Entrance/border.bin
new file mode 100644
index 000000000..f0eabd248
--- /dev/null
+++ b/data/maps/SeafloorCavern_Entrance/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SeafloorCavern_Entrance/header.s b/data/maps/SeafloorCavern_Entrance/header.s
new file mode 100644
index 000000000..42f1dc55f
--- /dev/null
+++ b/data/maps/SeafloorCavern_Entrance/header.s
@@ -0,0 +1,15 @@
+SeafloorCavern_Entrance:: @ 8307064
+ .4byte SeafloorCavern_Entrance_MapAttributes
+ .4byte SeafloorCavern_Entrance_MapEvents
+ .4byte SeafloorCavern_Entrance_MapScripts
+ .4byte 0x0
+ .2byte 406
+ .2byte 148
+ .byte 68
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SeafloorCavern_Entrance/map.bin b/data/maps/SeafloorCavern_Entrance/map.bin
new file mode 100644
index 000000000..3861044dd
--- /dev/null
+++ b/data/maps/SeafloorCavern_Entrance/map.bin
@@ -0,0 +1,11 @@
+3  $1$1$1$1$1 $1$1$1$1$1$1$1$1$1  $1$1$1$1$1$1$1$1$1 $1$1$1$1$1$1$1$1$1$1$1$1  $1$1$1$1$1$1$1$1$1$1$1$1 
+ $1$1$1$1$1$1$1$1$1$1$1$1$1$1$1
+ $1$1$1$1$111111$1$1$1$1$1
+ $1$1$1111111111$1$1$1
+ $1$111111111111$1$1
+ $1111111$1
+ 111ppppp11$1
+ 11ppppppp11
+ 11ppppppppp11
+ 11ppppppppp11
+1ppVVVVppppVVpVV \ No newline at end of file
diff --git a/data/maps/SeafloorCavern_Room1/border.bin b/data/maps/SeafloorCavern_Room1/border.bin
new file mode 100644
index 000000000..f0eabd248
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room1/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SeafloorCavern_Room1/header.s b/data/maps/SeafloorCavern_Room1/header.s
new file mode 100644
index 000000000..642aa57b8
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room1/header.s
@@ -0,0 +1,15 @@
+SeafloorCavern_Room1:: @ 8307080
+ .4byte SeafloorCavern_Room1_MapAttributes
+ .4byte SeafloorCavern_Room1_MapEvents
+ .4byte SeafloorCavern_Room1_MapScripts
+ .4byte 0x0
+ .2byte 406
+ .2byte 149
+ .byte 68
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SeafloorCavern_Room1/map.bin b/data/maps/SeafloorCavern_Room1/map.bin
new file mode 100644
index 000000000..57cd82f78
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room1/map.bin
@@ -0,0 +1 @@
+222322222222222222222222222222222222222622222226222222222222222222222222222222222222226666222222266662222<22266666222662222222222222222222222 \ No newline at end of file
diff --git a/data/maps/SeafloorCavern_Room2/border.bin b/data/maps/SeafloorCavern_Room2/border.bin
new file mode 100644
index 000000000..f0eabd248
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room2/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SeafloorCavern_Room2/header.s b/data/maps/SeafloorCavern_Room2/header.s
new file mode 100644
index 000000000..78bf99b95
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room2/header.s
@@ -0,0 +1,15 @@
+SeafloorCavern_Room2:: @ 830709C
+ .4byte SeafloorCavern_Room2_MapAttributes
+ .4byte SeafloorCavern_Room2_MapEvents
+ .4byte SeafloorCavern_Room2_MapScripts
+ .4byte 0x0
+ .2byte 406
+ .2byte 150
+ .byte 68
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SeafloorCavern_Room2/map.bin b/data/maps/SeafloorCavern_Room2/map.bin
new file mode 100644
index 000000000..01b66f2f3
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room2/map.bin
@@ -0,0 +1 @@
+33222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222 \ No newline at end of file
diff --git a/data/maps/SeafloorCavern_Room3/border.bin b/data/maps/SeafloorCavern_Room3/border.bin
new file mode 100644
index 000000000..f0eabd248
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room3/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SeafloorCavern_Room3/header.s b/data/maps/SeafloorCavern_Room3/header.s
new file mode 100644
index 000000000..59b117b57
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room3/header.s
@@ -0,0 +1,15 @@
+SeafloorCavern_Room3:: @ 83070B8
+ .4byte SeafloorCavern_Room3_MapAttributes
+ .4byte SeafloorCavern_Room3_MapEvents
+ .4byte SeafloorCavern_Room3_MapScripts
+ .4byte 0x0
+ .2byte 406
+ .2byte 151
+ .byte 68
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SeafloorCavern_Room3/map.bin b/data/maps/SeafloorCavern_Room3/map.bin
new file mode 100644
index 000000000..b5e92ca20
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room3/map.bin
@@ -0,0 +1 @@
+666666663666662226666622266666222666662226662226662226662222222222222222222222222222222222222QQQM2222222222222222226666666 \ No newline at end of file
diff --git a/data/maps/SeafloorCavern_Room4/border.bin b/data/maps/SeafloorCavern_Room4/border.bin
new file mode 100644
index 000000000..f0eabd248
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room4/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SeafloorCavern_Room4/header.s b/data/maps/SeafloorCavern_Room4/header.s
new file mode 100644
index 000000000..ea04ec1a6
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room4/header.s
@@ -0,0 +1,15 @@
+SeafloorCavern_Room4:: @ 83070D4
+ .4byte SeafloorCavern_Room4_MapAttributes
+ .4byte SeafloorCavern_Room4_MapEvents
+ .4byte SeafloorCavern_Room4_MapScripts
+ .4byte 0x0
+ .2byte 406
+ .2byte 152
+ .byte 68
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SeafloorCavern_Room4/map.bin b/data/maps/SeafloorCavern_Room4/map.bin
new file mode 100644
index 000000000..928749c95
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room4/map.bin
@@ -0,0 +1 @@
+3362222222622222226LQQM22262222222292222222222229222222222222222222666222222222222223222222229222222222229222222LQQQM2222222222 \ No newline at end of file
diff --git a/data/maps/SeafloorCavern_Room5/border.bin b/data/maps/SeafloorCavern_Room5/border.bin
new file mode 100644
index 000000000..f0eabd248
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room5/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SeafloorCavern_Room5/header.s b/data/maps/SeafloorCavern_Room5/header.s
new file mode 100644
index 000000000..c459b89ac
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room5/header.s
@@ -0,0 +1,15 @@
+SeafloorCavern_Room5:: @ 83070F0
+ .4byte SeafloorCavern_Room5_MapAttributes
+ .4byte SeafloorCavern_Room5_MapEvents
+ .4byte SeafloorCavern_Room5_MapScripts
+ .4byte 0x0
+ .2byte 406
+ .2byte 153
+ .byte 68
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SeafloorCavern_Room5/map.bin b/data/maps/SeafloorCavern_Room5/map.bin
new file mode 100644
index 000000000..386430fe4
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room5/map.bin
@@ -0,0 +1 @@
+32222222222222222222222222222222222222222222222222222222222222222222222222222222222222 \ No newline at end of file
diff --git a/data/maps/SeafloorCavern_Room6/border.bin b/data/maps/SeafloorCavern_Room6/border.bin
new file mode 100644
index 000000000..a00c39057
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room6/border.bin
@@ -0,0 +1 @@
+~~~~ \ No newline at end of file
diff --git a/data/maps/SeafloorCavern_Room6/header.s b/data/maps/SeafloorCavern_Room6/header.s
new file mode 100644
index 000000000..483bc8e65
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room6/header.s
@@ -0,0 +1,15 @@
+SeafloorCavern_Room6:: @ 830710C
+ .4byte SeafloorCavern_Room6_MapAttributes
+ .4byte SeafloorCavern_Room6_MapEvents
+ .4byte SeafloorCavern_Room6_MapScripts
+ .4byte 0x0
+ .2byte 406
+ .2byte 154
+ .byte 68
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SeafloorCavern_Room6/map.bin b/data/maps/SeafloorCavern_Room6/map.bin
new file mode 100644
index 000000000..3776cc4c7
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room6/map.bin
@@ -0,0 +1 @@
+z2xzzy2y2y2y2xxzzy2y2y2y2pxxzzy2y2y2y2ppppppppppppxxzzy2y2y2y2ppppuvvvwpppxxzzpppu~~~wppxxzzppppppp}ppxxzzppppppxxzzpppppppppppppxxzzpppppppppxxzzpppppppppppxxzzppppppxxzzpppppppppppppxxzzppppppppppxxzzpppppppppppppxxzzpppppppppxxzzpppppppppxxzzppppppppppxxzzpppppppppppuvzzpppppuo2o2o2vwpuv~~~~vvvvvz~22~2x~v~~~~~~~~~~~~~~~~~~~~~~~~~ \ No newline at end of file
diff --git a/data/maps/SeafloorCavern_Room7/border.bin b/data/maps/SeafloorCavern_Room7/border.bin
new file mode 100644
index 000000000..a00c39057
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room7/border.bin
@@ -0,0 +1 @@
+~~~~ \ No newline at end of file
diff --git a/data/maps/SeafloorCavern_Room7/header.s b/data/maps/SeafloorCavern_Room7/header.s
new file mode 100644
index 000000000..7a2dc0b29
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room7/header.s
@@ -0,0 +1,15 @@
+SeafloorCavern_Room7:: @ 8307128
+ .4byte SeafloorCavern_Room7_MapAttributes
+ .4byte SeafloorCavern_Room7_MapEvents
+ .4byte SeafloorCavern_Room7_MapScripts
+ .4byte 0x0
+ .2byte 406
+ .2byte 155
+ .byte 68
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SeafloorCavern_Room7/map.bin b/data/maps/SeafloorCavern_Room7/map.bin
new file mode 100644
index 000000000..c1afaebcf
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room7/map.bin
@@ -0,0 +1 @@
+z2~6~6~6~6~6~6~6~6~6xzzy2y2y2y2y2y2y2y2y2y2x~6~6~6~6~6~6~6~6~6xzzy2y2y2y2y2xzzpppxxzzpppppppppppppppppxxzzppxxzzpppppppppppppppxxzzppxxzzppppppppppppppxxzzpppppppxxzzpppppppppppppppxxzzpppppxxzzpppppppppppxxzzpppppppppppxxzzpppxxzzpppppppppppppxxzzpppppppppppppxxzzpppxxz66q2ypppppppppppppxxzy6z6y2pppppppppppppxxzy6z6y2q2q2q2q2q2yppppppppxxz66y2y2y2y2y2y2ppppppppxxzzy22y2y2sy2tppppppppxxqqvvvvvvvvvv \ No newline at end of file
diff --git a/data/maps/SeafloorCavern_Room8/border.bin b/data/maps/SeafloorCavern_Room8/border.bin
new file mode 100644
index 000000000..f0eabd248
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room8/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SeafloorCavern_Room8/header.s b/data/maps/SeafloorCavern_Room8/header.s
new file mode 100644
index 000000000..5bcc23a31
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room8/header.s
@@ -0,0 +1,15 @@
+SeafloorCavern_Room8:: @ 8307144
+ .4byte SeafloorCavern_Room8_MapAttributes
+ .4byte SeafloorCavern_Room8_MapEvents
+ .4byte SeafloorCavern_Room8_MapScripts
+ .4byte 0x0
+ .2byte 406
+ .2byte 156
+ .byte 68
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SeafloorCavern_Room8/map.bin b/data/maps/SeafloorCavern_Room8/map.bin
new file mode 100644
index 000000000..e70e95b47
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room8/map.bin
@@ -0,0 +1 @@
+632222222222222222222222222222222222LQM22222222222 \ No newline at end of file
diff --git a/data/maps/SeafloorCavern_Room9/border.bin b/data/maps/SeafloorCavern_Room9/border.bin
new file mode 100644
index 000000000..f0eabd248
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room9/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SeafloorCavern_Room9/header.s b/data/maps/SeafloorCavern_Room9/header.s
new file mode 100644
index 000000000..f0c00e733
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room9/header.s
@@ -0,0 +1,15 @@
+SeafloorCavern_Room9:: @ 8307160
+ .4byte SeafloorCavern_Room9_MapAttributes
+ .4byte SeafloorCavern_Room9_MapEvents
+ .4byte SeafloorCavern_Room9_MapScripts
+ .4byte 0x0
+ .2byte 406
+ .2byte 157
+ .byte 68
+ .byte 0
+ .byte 6
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SeafloorCavern_Room9/map.bin b/data/maps/SeafloorCavern_Room9/map.bin
new file mode 100644
index 000000000..252112ac2
--- /dev/null
+++ b/data/maps/SeafloorCavern_Room9/map.bin
@@ -0,0 +1 @@
+222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222  222 222    2222222 2222222222 2222222    # 222    #2222 #  2222      2222 #    2222  222 # OO 222OOOO222pNOOOONp222ppNNNNpp22222pppppppp22222 ppppppppp22222222#2s2lpppppppp222222222#2lpppppjs2s2$222222222#2s2s2s2s2s2$22222222222222222222222 \ No newline at end of file
diff --git a/data/maps/SealedChamber_InnerRoom/border.bin b/data/maps/SealedChamber_InnerRoom/border.bin
new file mode 100644
index 000000000..9afd13cdc
--- /dev/null
+++ b/data/maps/SealedChamber_InnerRoom/border.bin
Binary files differ
diff --git a/data/maps/SealedChamber_InnerRoom/header.s b/data/maps/SealedChamber_InnerRoom/header.s
new file mode 100644
index 000000000..0e2ac4280
--- /dev/null
+++ b/data/maps/SealedChamber_InnerRoom/header.s
@@ -0,0 +1,15 @@
+SealedChamber_InnerRoom:: @ 8307550
+ .4byte SealedChamber_InnerRoom_MapAttributes
+ .4byte SealedChamber_InnerRoom_MapEvents
+ .4byte SealedChamber_InnerRoom_MapScripts
+ .4byte 0x0
+ .2byte 438
+ .2byte 305
+ .byte 78
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SealedChamber_InnerRoom/map.bin b/data/maps/SealedChamber_InnerRoom/map.bin
new file mode 100644
index 000000000..823fa5fab
--- /dev/null
+++ b/data/maps/SealedChamber_InnerRoom/map.bin
@@ -0,0 +1 @@
+222222222222777222222222222222222222222222222222222222722222722222222222222222222222222222222222222222222222222722222222272222222222222222222222222222222222222222222222222722222722222222222222 \ No newline at end of file
diff --git a/data/maps/SealedChamber_OuterRoom/border.bin b/data/maps/SealedChamber_OuterRoom/border.bin
new file mode 100644
index 000000000..9afd13cdc
--- /dev/null
+++ b/data/maps/SealedChamber_OuterRoom/border.bin
Binary files differ
diff --git a/data/maps/SealedChamber_OuterRoom/header.s b/data/maps/SealedChamber_OuterRoom/header.s
new file mode 100644
index 000000000..29dc27666
--- /dev/null
+++ b/data/maps/SealedChamber_OuterRoom/header.s
@@ -0,0 +1,15 @@
+SealedChamber_OuterRoom:: @ 8307534
+ .4byte SealedChamber_OuterRoom_MapAttributes
+ .4byte SealedChamber_OuterRoom_MapEvents
+ .4byte SealedChamber_OuterRoom_MapScripts
+ .4byte 0x0
+ .2byte 438
+ .2byte 285
+ .byte 78
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SealedChamber_OuterRoom/map.bin b/data/maps/SealedChamber_OuterRoom/map.bin
new file mode 100644
index 000000000..bf1482f97
--- /dev/null
+++ b/data/maps/SealedChamber_OuterRoom/map.bin
@@ -0,0 +1,11 @@
+`*+,a)2324)222222222222222222222222222222   
+2   
+2 
+555255525222222222222222   
+2   
+2 
+555255525222222222222222   
+2   
+222255525552222222222222222222   
+2   
+222255525552222222222222222222222222222222222VVV2222222222VGV22222$ggggg_____ggggg#$                 #$$                 ## \ No newline at end of file
diff --git a/data/maps/SecretBase_BlueCave1/border.bin b/data/maps/SecretBase_BlueCave1/border.bin
new file mode 100644
index 000000000..5c0908a6a
--- /dev/null
+++ b/data/maps/SecretBase_BlueCave1/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_BlueCave1/header.s b/data/maps/SecretBase_BlueCave1/header.s
new file mode 100644
index 000000000..16a3d1735
--- /dev/null
+++ b/data/maps/SecretBase_BlueCave1/header.s
@@ -0,0 +1,15 @@
+SecretBase_BlueCave1:: @ 8307710
+ .4byte SecretBase_BlueCave1_MapAttributes
+ .4byte SecretBase_BlueCave1_MapEvents
+ .4byte SecretBase_BlueCave1_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 200
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_BlueCave1/map.bin b/data/maps/SecretBase_BlueCave1/map.bin
new file mode 100644
index 000000000..371b2a8d5
--- /dev/null
+++ b/data/maps/SecretBase_BlueCave1/map.bin
@@ -0,0 +1,50 @@
+6
+2
+2
+2
+2
+2   6
+2
+22
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+26 
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2 6
+2
+22
+2
+2
+2   \ No newline at end of file
diff --git a/data/maps/SecretBase_BlueCave2/border.bin b/data/maps/SecretBase_BlueCave2/border.bin
new file mode 100644
index 000000000..5c0908a6a
--- /dev/null
+++ b/data/maps/SecretBase_BlueCave2/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_BlueCave2/header.s b/data/maps/SecretBase_BlueCave2/header.s
new file mode 100644
index 000000000..2a7026586
--- /dev/null
+++ b/data/maps/SecretBase_BlueCave2/header.s
@@ -0,0 +1,15 @@
+SecretBase_BlueCave2:: @ 83077B8
+ .4byte SecretBase_BlueCave2_MapAttributes
+ .4byte SecretBase_BlueCave2_MapEvents
+ .4byte SecretBase_BlueCave2_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 206
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_BlueCave2/map.bin b/data/maps/SecretBase_BlueCave2/map.bin
new file mode 100644
index 000000000..4993e5b65
--- /dev/null
+++ b/data/maps/SecretBase_BlueCave2/map.bin
@@ -0,0 +1,57 @@
+  62
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2 6
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2 6
+2
+2
+2
+2
+22
+2
+2
+26  \ No newline at end of file
diff --git a/data/maps/SecretBase_BlueCave3/border.bin b/data/maps/SecretBase_BlueCave3/border.bin
new file mode 100644
index 000000000..5c0908a6a
--- /dev/null
+++ b/data/maps/SecretBase_BlueCave3/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_BlueCave3/header.s b/data/maps/SecretBase_BlueCave3/header.s
new file mode 100644
index 000000000..1dfbb4b99
--- /dev/null
+++ b/data/maps/SecretBase_BlueCave3/header.s
@@ -0,0 +1,15 @@
+SecretBase_BlueCave3:: @ 8307860
+ .4byte SecretBase_BlueCave3_MapAttributes
+ .4byte SecretBase_BlueCave3_MapEvents
+ .4byte SecretBase_BlueCave3_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 212
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_BlueCave3/map.bin b/data/maps/SecretBase_BlueCave3/map.bin
new file mode 100644
index 000000000..968aade07
--- /dev/null
+++ b/data/maps/SecretBase_BlueCave3/map.bin
@@ -0,0 +1,51 @@
+ 
+2
+2
+2
+22
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2 
+2
+2  
+2
+2  
+2
+222
+2
+2
+2
+2 
+2  
+2 
+2  
+2
+2
+22
+2  
+2
+2  
+2 6
+222  
+2
+22
+2
+2   \ No newline at end of file
diff --git a/data/maps/SecretBase_BlueCave4/border.bin b/data/maps/SecretBase_BlueCave4/border.bin
new file mode 100644
index 000000000..5c0908a6a
--- /dev/null
+++ b/data/maps/SecretBase_BlueCave4/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_BlueCave4/header.s b/data/maps/SecretBase_BlueCave4/header.s
new file mode 100644
index 000000000..38486de2f
--- /dev/null
+++ b/data/maps/SecretBase_BlueCave4/header.s
@@ -0,0 +1,15 @@
+SecretBase_BlueCave4:: @ 8307908
+ .4byte SecretBase_BlueCave4_MapAttributes
+ .4byte SecretBase_BlueCave4_MapEvents
+ .4byte SecretBase_BlueCave4_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 218
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_BlueCave4/map.bin b/data/maps/SecretBase_BlueCave4/map.bin
new file mode 100644
index 000000000..631ac0f81
--- /dev/null
+++ b/data/maps/SecretBase_BlueCave4/map.bin
@@ -0,0 +1,57 @@
+ 
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+22  
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2 6
+2
+2"6  #6  2 
+2   6
+22  
+2
+2
+2  
+22
+2   \ No newline at end of file
diff --git a/data/maps/SecretBase_BrownCave1/border.bin b/data/maps/SecretBase_BrownCave1/border.bin
new file mode 100644
index 000000000..5c0908a6a
--- /dev/null
+++ b/data/maps/SecretBase_BrownCave1/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_BrownCave1/header.s b/data/maps/SecretBase_BrownCave1/header.s
new file mode 100644
index 000000000..839031e06
--- /dev/null
+++ b/data/maps/SecretBase_BrownCave1/header.s
@@ -0,0 +1,15 @@
+SecretBase_BrownCave1:: @ 83076F4
+ .4byte SecretBase_BrownCave1_MapAttributes
+ .4byte SecretBase_BrownCave1_MapEvents
+ .4byte SecretBase_BrownCave1_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 199
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_BrownCave1/map.bin b/data/maps/SecretBase_BrownCave1/map.bin
new file mode 100644
index 000000000..56d3436ca
--- /dev/null
+++ b/data/maps/SecretBase_BrownCave1/map.bin
@@ -0,0 +1,54 @@
+6
+2
+2
+2
+2
+2
+2
+2  
+2 6
+2
+22
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+26
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+22
+2
+2
+2   \ No newline at end of file
diff --git a/data/maps/SecretBase_BrownCave2/border.bin b/data/maps/SecretBase_BrownCave2/border.bin
new file mode 100644
index 000000000..5c0908a6a
--- /dev/null
+++ b/data/maps/SecretBase_BrownCave2/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_BrownCave2/header.s b/data/maps/SecretBase_BrownCave2/header.s
new file mode 100644
index 000000000..f718dc706
--- /dev/null
+++ b/data/maps/SecretBase_BrownCave2/header.s
@@ -0,0 +1,15 @@
+SecretBase_BrownCave2:: @ 830779C
+ .4byte SecretBase_BrownCave2_MapAttributes
+ .4byte SecretBase_BrownCave2_MapEvents
+ .4byte SecretBase_BrownCave2_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 205
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_BrownCave2/map.bin b/data/maps/SecretBase_BrownCave2/map.bin
new file mode 100644
index 000000000..184896975
--- /dev/null
+++ b/data/maps/SecretBase_BrownCave2/map.bin
@@ -0,0 +1,56 @@
+ 
+2
+2
+2
+2
+2
+2
+2
+2 6  
+26
+2
+2
+2
+2
+2
+22
+2  
+2  
+2
+2
+2
+2
+2
+2
+2
+2  
+2  
+2
+2
+2
+2
+2
+2
+2
+2  
+2  
+2
+2
+2
+2
+2
+2
+2
+2  
+2  
+2
+2
+2
+2
+2
+2
+2 2 6
+2
+2
+2
+2   \ No newline at end of file
diff --git a/data/maps/SecretBase_BrownCave3/border.bin b/data/maps/SecretBase_BrownCave3/border.bin
new file mode 100644
index 000000000..5c0908a6a
--- /dev/null
+++ b/data/maps/SecretBase_BrownCave3/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_BrownCave3/header.s b/data/maps/SecretBase_BrownCave3/header.s
new file mode 100644
index 000000000..7cea2913d
--- /dev/null
+++ b/data/maps/SecretBase_BrownCave3/header.s
@@ -0,0 +1,15 @@
+SecretBase_BrownCave3:: @ 8307844
+ .4byte SecretBase_BrownCave3_MapAttributes
+ .4byte SecretBase_BrownCave3_MapEvents
+ .4byte SecretBase_BrownCave3_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 211
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_BrownCave3/map.bin b/data/maps/SecretBase_BrownCave3/map.bin
new file mode 100644
index 000000000..d9967522a
--- /dev/null
+++ b/data/maps/SecretBase_BrownCave3/map.bin
@@ -0,0 +1,69 @@
+ 
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+26
+2
+2
+2 66
+2
+2
+2  
+2
+2
+2 6  
+2
+2
+2  
+2
+2
+2
+2  
+2
+2
+2  
+2
+2
+2
+2 
+2
+2
+2  
+2
+2
+2
+2  2
+2
+2
+2  
+2
+2
+2
+2  
+2
+2
+2
+2  
+2
+2
+2
+2  
+2
+2
+2
+2  
+22
+2
+2   \ No newline at end of file
diff --git a/data/maps/SecretBase_BrownCave4/border.bin b/data/maps/SecretBase_BrownCave4/border.bin
new file mode 100644
index 000000000..5c0908a6a
--- /dev/null
+++ b/data/maps/SecretBase_BrownCave4/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_BrownCave4/header.s b/data/maps/SecretBase_BrownCave4/header.s
new file mode 100644
index 000000000..f34cde172
--- /dev/null
+++ b/data/maps/SecretBase_BrownCave4/header.s
@@ -0,0 +1,15 @@
+SecretBase_BrownCave4:: @ 83078EC
+ .4byte SecretBase_BrownCave4_MapAttributes
+ .4byte SecretBase_BrownCave4_MapEvents
+ .4byte SecretBase_BrownCave4_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 217
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_BrownCave4/map.bin b/data/maps/SecretBase_BrownCave4/map.bin
new file mode 100644
index 000000000..8b5a763c4
--- /dev/null
+++ b/data/maps/SecretBase_BrownCave4/map.bin
@@ -0,0 +1,70 @@
+  62
+2
+2
+2
+2
+2
+2
+2"6
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2
+2#6
+2
+2  
+2
+2
+2
+2  
+2
+2
+2  
+2  
+2
+2
+2 
+2  
+2
+2
+2  
+2
+2
+2
+22
+2  
+2
+2
+2  
+2
+2
+2
+2
+2
+2  
+22
+2  
+2
+2
+2
+2
+2
+2   
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2  \ No newline at end of file
diff --git a/data/maps/SecretBase_RedCave1/border.bin b/data/maps/SecretBase_RedCave1/border.bin
new file mode 100644
index 000000000..5c0908a6a
--- /dev/null
+++ b/data/maps/SecretBase_RedCave1/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_RedCave1/header.s b/data/maps/SecretBase_RedCave1/header.s
new file mode 100644
index 000000000..4eed1df11
--- /dev/null
+++ b/data/maps/SecretBase_RedCave1/header.s
@@ -0,0 +1,15 @@
+SecretBase_RedCave1:: @ 83076D8
+ .4byte SecretBase_RedCave1_MapAttributes
+ .4byte SecretBase_RedCave1_MapEvents
+ .4byte SecretBase_RedCave1_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 198
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_RedCave1/map.bin b/data/maps/SecretBase_RedCave1/map.bin
new file mode 100644
index 000000000..ce666b57d
--- /dev/null
+++ b/data/maps/SecretBase_RedCave1/map.bin
@@ -0,0 +1,51 @@
+
+2
+2
+2
+2
+2
+2
+2   6
+2
+2
+2
+2
+2
+2
+2 6 
+2
+2
+2
+2
+2
+2
+2
+26 
+2
+2
+2
+2
+2
+22
+2  
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2 6
+2
+22
+2
+2
+26  \ No newline at end of file
diff --git a/data/maps/SecretBase_RedCave2/border.bin b/data/maps/SecretBase_RedCave2/border.bin
new file mode 100644
index 000000000..5c0908a6a
--- /dev/null
+++ b/data/maps/SecretBase_RedCave2/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_RedCave2/header.s b/data/maps/SecretBase_RedCave2/header.s
new file mode 100644
index 000000000..5768d3f1e
--- /dev/null
+++ b/data/maps/SecretBase_RedCave2/header.s
@@ -0,0 +1,15 @@
+SecretBase_RedCave2:: @ 8307780
+ .4byte SecretBase_RedCave2_MapAttributes
+ .4byte SecretBase_RedCave2_MapEvents
+ .4byte SecretBase_RedCave2_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 204
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_RedCave2/map.bin b/data/maps/SecretBase_RedCave2/map.bin
new file mode 100644
index 000000000..4fa03acfe
--- /dev/null
+++ b/data/maps/SecretBase_RedCave2/map.bin
@@ -0,0 +1,42 @@
+ 
+22
+2  
+2
+2
+2  
+2
+2
+2 
+2
+2
+2  2
+2
+2
+2  
+2
+2
+2
+2  
+2
+2
+2
+2 6 
+2
+2
+2
+2 6  
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2 
+2
+2
+26
+26 
+2  2   \ No newline at end of file
diff --git a/data/maps/SecretBase_RedCave3/border.bin b/data/maps/SecretBase_RedCave3/border.bin
new file mode 100644
index 000000000..5c0908a6a
--- /dev/null
+++ b/data/maps/SecretBase_RedCave3/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_RedCave3/header.s b/data/maps/SecretBase_RedCave3/header.s
new file mode 100644
index 000000000..1f60200f9
--- /dev/null
+++ b/data/maps/SecretBase_RedCave3/header.s
@@ -0,0 +1,15 @@
+SecretBase_RedCave3:: @ 8307828
+ .4byte SecretBase_RedCave3_MapAttributes
+ .4byte SecretBase_RedCave3_MapEvents
+ .4byte SecretBase_RedCave3_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 210
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_RedCave3/map.bin b/data/maps/SecretBase_RedCave3/map.bin
new file mode 100644
index 000000000..0528e565d
--- /dev/null
+++ b/data/maps/SecretBase_RedCave3/map.bin
@@ -0,0 +1,47 @@
+ 
+2
+22
+2   6
+2
+2
+2
+2  
+2
+2
+2
+2  
+2
+2
+2
+2
+2 6
+2
+2
+2
+2  
+2
+2
+2
+2
+222
+22
+2
+2
+2
+2  
+2
+2
+2
+2
+26
+2
+2
+2
+2  
+2
+22
+2
+2 6
+2
+2
+2   \ No newline at end of file
diff --git a/data/maps/SecretBase_RedCave4/border.bin b/data/maps/SecretBase_RedCave4/border.bin
new file mode 100644
index 000000000..5c0908a6a
--- /dev/null
+++ b/data/maps/SecretBase_RedCave4/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_RedCave4/header.s b/data/maps/SecretBase_RedCave4/header.s
new file mode 100644
index 000000000..734f53a50
--- /dev/null
+++ b/data/maps/SecretBase_RedCave4/header.s
@@ -0,0 +1,15 @@
+SecretBase_RedCave4:: @ 83078D0
+ .4byte SecretBase_RedCave4_MapAttributes
+ .4byte SecretBase_RedCave4_MapEvents
+ .4byte SecretBase_RedCave4_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 216
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_RedCave4/map.bin b/data/maps/SecretBase_RedCave4/map.bin
new file mode 100644
index 000000000..526763290
--- /dev/null
+++ b/data/maps/SecretBase_RedCave4/map.bin
@@ -0,0 +1,56 @@
+ 
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2 "66 #6 2  
+2
+2
+2
+22
+2  
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2 6 
+22
+2
+2
+2
+2 6  
+2
+2
+2  \ No newline at end of file
diff --git a/data/maps/SecretBase_Shrub1/border.bin b/data/maps/SecretBase_Shrub1/border.bin
new file mode 100644
index 000000000..064786e8c
--- /dev/null
+++ b/data/maps/SecretBase_Shrub1/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_Shrub1/header.s b/data/maps/SecretBase_Shrub1/header.s
new file mode 100644
index 000000000..ff810d323
--- /dev/null
+++ b/data/maps/SecretBase_Shrub1/header.s
@@ -0,0 +1,15 @@
+SecretBase_Shrub1:: @ 8307764
+ .4byte SecretBase_Shrub1_MapAttributes
+ .4byte SecretBase_Shrub1_MapEvents
+ .4byte SecretBase_Shrub1_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 203
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_Shrub1/map.bin b/data/maps/SecretBase_Shrub1/map.bin
new file mode 100644
index 000000000..4b566cc1b
--- /dev/null
+++ b/data/maps/SecretBase_Shrub1/map.bin
@@ -0,0 +1,53 @@
+ 
+2
+2 
+2
+2
+2
+2  
+2
+2 6
+22
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+26
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+22
+2
+2
+2   \ No newline at end of file
diff --git a/data/maps/SecretBase_Shrub2/border.bin b/data/maps/SecretBase_Shrub2/border.bin
new file mode 100644
index 000000000..064786e8c
--- /dev/null
+++ b/data/maps/SecretBase_Shrub2/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_Shrub2/header.s b/data/maps/SecretBase_Shrub2/header.s
new file mode 100644
index 000000000..1e952f99f
--- /dev/null
+++ b/data/maps/SecretBase_Shrub2/header.s
@@ -0,0 +1,15 @@
+SecretBase_Shrub2:: @ 830780C
+ .4byte SecretBase_Shrub2_MapAttributes
+ .4byte SecretBase_Shrub2_MapEvents
+ .4byte SecretBase_Shrub2_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 209
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_Shrub2/map.bin b/data/maps/SecretBase_Shrub2/map.bin
new file mode 100644
index 000000000..8cb88cc44
--- /dev/null
+++ b/data/maps/SecretBase_Shrub2/map.bin
@@ -0,0 +1,57 @@
+  6
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+22  
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2 
+2
+22
+2
+2
+2
+2
+2  \ No newline at end of file
diff --git a/data/maps/SecretBase_Shrub3/border.bin b/data/maps/SecretBase_Shrub3/border.bin
new file mode 100644
index 000000000..064786e8c
--- /dev/null
+++ b/data/maps/SecretBase_Shrub3/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_Shrub3/header.s b/data/maps/SecretBase_Shrub3/header.s
new file mode 100644
index 000000000..36d307fef
--- /dev/null
+++ b/data/maps/SecretBase_Shrub3/header.s
@@ -0,0 +1,15 @@
+SecretBase_Shrub3:: @ 83078B4
+ .4byte SecretBase_Shrub3_MapAttributes
+ .4byte SecretBase_Shrub3_MapEvents
+ .4byte SecretBase_Shrub3_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 215
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_Shrub3/map.bin b/data/maps/SecretBase_Shrub3/map.bin
new file mode 100644
index 000000000..d51aeea21
--- /dev/null
+++ b/data/maps/SecretBase_Shrub3/map.bin
@@ -0,0 +1,65 @@
+ 
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2 
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2 
+2 
+2 
+2  
+2
+2
+2
+22
+2 6
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+22
+2
+2
+2
+2
+2   \ No newline at end of file
diff --git a/data/maps/SecretBase_Shrub4/border.bin b/data/maps/SecretBase_Shrub4/border.bin
new file mode 100644
index 000000000..064786e8c
--- /dev/null
+++ b/data/maps/SecretBase_Shrub4/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_Shrub4/header.s b/data/maps/SecretBase_Shrub4/header.s
new file mode 100644
index 000000000..cb6add815
--- /dev/null
+++ b/data/maps/SecretBase_Shrub4/header.s
@@ -0,0 +1,15 @@
+SecretBase_Shrub4:: @ 830795C
+ .4byte SecretBase_Shrub4_MapAttributes
+ .4byte SecretBase_Shrub4_MapEvents
+ .4byte SecretBase_Shrub4_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 221
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_Shrub4/map.bin b/data/maps/SecretBase_Shrub4/map.bin
new file mode 100644
index 000000000..8a4cf836d
--- /dev/null
+++ b/data/maps/SecretBase_Shrub4/map.bin
@@ -0,0 +1,69 @@
+ 
+2
+2"6
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2#6
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2  
+2
+2 
+2
+2
+2  
+2
+22
+2
+2   6
+2
+2
+2  
+2
+2
+2
+2
+2  
+2
+2
+2
+2  
+2
+2
+2
+2
+2  2
+2
+2
+2  
+2
+2
+2
+2
+2 
+22
+2  
+2
+2
+2
+2
+2   \ No newline at end of file
diff --git a/data/maps/SecretBase_Tree1/border.bin b/data/maps/SecretBase_Tree1/border.bin
new file mode 100644
index 000000000..064786e8c
--- /dev/null
+++ b/data/maps/SecretBase_Tree1/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_Tree1/header.s b/data/maps/SecretBase_Tree1/header.s
new file mode 100644
index 000000000..537d6d90f
--- /dev/null
+++ b/data/maps/SecretBase_Tree1/header.s
@@ -0,0 +1,15 @@
+SecretBase_Tree1:: @ 8307748
+ .4byte SecretBase_Tree1_MapAttributes
+ .4byte SecretBase_Tree1_MapEvents
+ .4byte SecretBase_Tree1_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 202
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_Tree1/map.bin b/data/maps/SecretBase_Tree1/map.bin
new file mode 100644
index 000000000..907f1486a
--- /dev/null
+++ b/data/maps/SecretBase_Tree1/map.bin
@@ -0,0 +1,56 @@
+
+2
+22
+2
+2
+2
+2  
+2 6
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+26
+2
+2
+22
+2
+2
+2   \ No newline at end of file
diff --git a/data/maps/SecretBase_Tree2/border.bin b/data/maps/SecretBase_Tree2/border.bin
new file mode 100644
index 000000000..064786e8c
--- /dev/null
+++ b/data/maps/SecretBase_Tree2/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_Tree2/header.s b/data/maps/SecretBase_Tree2/header.s
new file mode 100644
index 000000000..9191a888d
--- /dev/null
+++ b/data/maps/SecretBase_Tree2/header.s
@@ -0,0 +1,15 @@
+SecretBase_Tree2:: @ 83077F0
+ .4byte SecretBase_Tree2_MapAttributes
+ .4byte SecretBase_Tree2_MapEvents
+ .4byte SecretBase_Tree2_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 208
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_Tree2/map.bin b/data/maps/SecretBase_Tree2/map.bin
new file mode 100644
index 000000000..c2e5698b0
--- /dev/null
+++ b/data/maps/SecretBase_Tree2/map.bin
@@ -0,0 +1,48 @@
+ 
+2
+22
+2  
+2
+2
+2
+2  
+2
+2
+2
+2  
+2
+2
+2
+2 6 
+2
+2
+2
+2 6  
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2 
+2
+2
+2
+2  
+2
+2
+2
+2  
+2
+2
+26
+26 
+2  2   \ No newline at end of file
diff --git a/data/maps/SecretBase_Tree3/border.bin b/data/maps/SecretBase_Tree3/border.bin
new file mode 100644
index 000000000..064786e8c
--- /dev/null
+++ b/data/maps/SecretBase_Tree3/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_Tree3/header.s b/data/maps/SecretBase_Tree3/header.s
new file mode 100644
index 000000000..9fea32a6d
--- /dev/null
+++ b/data/maps/SecretBase_Tree3/header.s
@@ -0,0 +1,15 @@
+SecretBase_Tree3:: @ 8307898
+ .4byte SecretBase_Tree3_MapAttributes
+ .4byte SecretBase_Tree3_MapEvents
+ .4byte SecretBase_Tree3_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 214
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_Tree3/map.bin b/data/maps/SecretBase_Tree3/map.bin
new file mode 100644
index 000000000..b6ae04b00
--- /dev/null
+++ b/data/maps/SecretBase_Tree3/map.bin
@@ -0,0 +1,63 @@
+ 
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2 6 2
+2
+2
+2
+2
+2
+2
+2
+2
+2 6  
+2
+2
+2
+2
+2  
+2  
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2  
+2  
+2
+2
+2
+2
+2 
+2
+2
+2
+2  
+2  
+2
+2
+2
+2
+2 
+2
+2
+2  2 
+2
+2
+2
+2   \ No newline at end of file
diff --git a/data/maps/SecretBase_Tree4/border.bin b/data/maps/SecretBase_Tree4/border.bin
new file mode 100644
index 000000000..064786e8c
--- /dev/null
+++ b/data/maps/SecretBase_Tree4/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_Tree4/header.s b/data/maps/SecretBase_Tree4/header.s
new file mode 100644
index 000000000..b947e8c9d
--- /dev/null
+++ b/data/maps/SecretBase_Tree4/header.s
@@ -0,0 +1,15 @@
+SecretBase_Tree4:: @ 8307940
+ .4byte SecretBase_Tree4_MapAttributes
+ .4byte SecretBase_Tree4_MapEvents
+ .4byte SecretBase_Tree4_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 220
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_Tree4/map.bin b/data/maps/SecretBase_Tree4/map.bin
new file mode 100644
index 000000000..b3b381d9e
--- /dev/null
+++ b/data/maps/SecretBase_Tree4/map.bin
@@ -0,0 +1,77 @@
+ 
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2 
+2
+2 
+2
+2
+2
+2
+2 "6  
+2
+2
+2
+2 #6 "6  2 #6  
+2 6
+2
+2
+2
+2
+222  
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+22
+2
+26  \ No newline at end of file
diff --git a/data/maps/SecretBase_YellowCave1/border.bin b/data/maps/SecretBase_YellowCave1/border.bin
new file mode 100644
index 000000000..5c0908a6a
--- /dev/null
+++ b/data/maps/SecretBase_YellowCave1/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_YellowCave1/header.s b/data/maps/SecretBase_YellowCave1/header.s
new file mode 100644
index 000000000..cd5f7c00c
--- /dev/null
+++ b/data/maps/SecretBase_YellowCave1/header.s
@@ -0,0 +1,15 @@
+SecretBase_YellowCave1:: @ 830772C
+ .4byte SecretBase_YellowCave1_MapAttributes
+ .4byte SecretBase_YellowCave1_MapEvents
+ .4byte SecretBase_YellowCave1_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 201
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_YellowCave1/map.bin b/data/maps/SecretBase_YellowCave1/map.bin
new file mode 100644
index 000000000..1301e7317
--- /dev/null
+++ b/data/maps/SecretBase_YellowCave1/map.bin
@@ -0,0 +1,57 @@
+ 
+2
+22
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2 6  
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2
+2 
+2
+2
+22
+2
+2  \ No newline at end of file
diff --git a/data/maps/SecretBase_YellowCave2/border.bin b/data/maps/SecretBase_YellowCave2/border.bin
new file mode 100644
index 000000000..5c0908a6a
--- /dev/null
+++ b/data/maps/SecretBase_YellowCave2/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_YellowCave2/header.s b/data/maps/SecretBase_YellowCave2/header.s
new file mode 100644
index 000000000..cf4ec5acc
--- /dev/null
+++ b/data/maps/SecretBase_YellowCave2/header.s
@@ -0,0 +1,15 @@
+SecretBase_YellowCave2:: @ 83077D4
+ .4byte SecretBase_YellowCave2_MapAttributes
+ .4byte SecretBase_YellowCave2_MapEvents
+ .4byte SecretBase_YellowCave2_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 207
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_YellowCave2/map.bin b/data/maps/SecretBase_YellowCave2/map.bin
new file mode 100644
index 000000000..e18cb47c6
--- /dev/null
+++ b/data/maps/SecretBase_YellowCave2/map.bin
@@ -0,0 +1,56 @@
+ 2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+26
+2  
+2
+2
+2
+2
+2
+2
+2  
+2 
+2
+2
+2
+2
+2
+2  
+2  
+2
+2
+2
+2
+2
+2  
+2  
+2
+2
+2
+2
+2
+2 6  
+2  
+2
+2
+2
+2
+2
+2
+2  2   \ No newline at end of file
diff --git a/data/maps/SecretBase_YellowCave3/border.bin b/data/maps/SecretBase_YellowCave3/border.bin
new file mode 100644
index 000000000..5c0908a6a
--- /dev/null
+++ b/data/maps/SecretBase_YellowCave3/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_YellowCave3/header.s b/data/maps/SecretBase_YellowCave3/header.s
new file mode 100644
index 000000000..3d52fa563
--- /dev/null
+++ b/data/maps/SecretBase_YellowCave3/header.s
@@ -0,0 +1,15 @@
+SecretBase_YellowCave3:: @ 830787C
+ .4byte SecretBase_YellowCave3_MapAttributes
+ .4byte SecretBase_YellowCave3_MapEvents
+ .4byte SecretBase_YellowCave3_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 213
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_YellowCave3/map.bin b/data/maps/SecretBase_YellowCave3/map.bin
new file mode 100644
index 000000000..b7d80a0ab
--- /dev/null
+++ b/data/maps/SecretBase_YellowCave3/map.bin
@@ -0,0 +1,63 @@
+ 
+2
+2
+2  
+2
+2  
+2
+2
+2  
+2
+2  
+2
+2
+2  
+2
+2 
+2
+2
+2  
+2
+2 6
+2
+2
+22
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2
+266
+2
+2
+22
+2
+2
+2
+2   \ No newline at end of file
diff --git a/data/maps/SecretBase_YellowCave4/border.bin b/data/maps/SecretBase_YellowCave4/border.bin
new file mode 100644
index 000000000..5c0908a6a
--- /dev/null
+++ b/data/maps/SecretBase_YellowCave4/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SecretBase_YellowCave4/header.s b/data/maps/SecretBase_YellowCave4/header.s
new file mode 100644
index 000000000..faffee591
--- /dev/null
+++ b/data/maps/SecretBase_YellowCave4/header.s
@@ -0,0 +1,15 @@
+SecretBase_YellowCave4:: @ 8307924
+ .4byte SecretBase_YellowCave4_MapAttributes
+ .4byte SecretBase_YellowCave4_MapEvents
+ .4byte SecretBase_YellowCave4_MapScripts
+ .4byte 0x0
+ .2byte 382
+ .2byte 219
+ .byte 86
+ .byte 0
+ .byte 0
+ .byte 9
+ .2byte 0
+ .byte 1
+ .byte 8
+
diff --git a/data/maps/SecretBase_YellowCave4/map.bin b/data/maps/SecretBase_YellowCave4/map.bin
new file mode 100644
index 000000000..d3c3e0204
--- /dev/null
+++ b/data/maps/SecretBase_YellowCave4/map.bin
@@ -0,0 +1,80 @@
+ 
+2
+2
+2
+2
+2
+2
+2
+2"6
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2#6
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2  
+2
+2  
+2
+2  
+2
+2 
+2
+2  
+2
+2 6
+2
+2
+22
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2
+2  
+2
+2
+2
+2
+2
+2
+2
+2 
+2
+2
+2
+2
+2
+2
+2 
+2
+2
+22
+2
+2
+2   \ No newline at end of file
diff --git a/data/maps/ShoalCave_HighTideEntranceRoom/border.bin b/data/maps/ShoalCave_HighTideEntranceRoom/border.bin
new file mode 100644
index 000000000..423a0732e
--- /dev/null
+++ b/data/maps/ShoalCave_HighTideEntranceRoom/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/ShoalCave_HighTideEntranceRoom/header.s b/data/maps/ShoalCave_HighTideEntranceRoom/header.s
new file mode 100644
index 000000000..6e34199a2
--- /dev/null
+++ b/data/maps/ShoalCave_HighTideEntranceRoom/header.s
@@ -0,0 +1,15 @@
+ShoalCave_HighTideEntranceRoom:: @ 83072E8
+ .4byte ShoalCave_HighTideEntranceRoom_MapAttributes
+ .4byte ShoalCave_HighTideEntranceRoom_MapEvents
+ .4byte ShoalCave_HighTideEntranceRoom_MapScripts
+ .4byte 0x0
+ .2byte 432
+ .2byte 169
+ .byte 67
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/ShoalCave_HighTideEntranceRoom/map.bin b/data/maps/ShoalCave_HighTideEntranceRoom/map.bin
new file mode 100644
index 000000000..0e4b88c8f
--- /dev/null
+++ b/data/maps/ShoalCave_HighTideEntranceRoom/map.bin
@@ -0,0 +1 @@
+      2222222222222222822222222222222222|z22822222222222222222|pppppz22@QQQQQ22222pppppz222222222222|pppppz222222222222|ppppppppppppp2222222|pppppppppppppz22pppppppppppppppppppz22|pppppppppppppppppppz22|pppppppppppppppppppppppz22|pppppppppppppppppppppppz22|pppppppppppp11111111112C22]C]CUCUCUCUC^pppppp1111111111122BBBBBB|pppppp1111111111m#222BBBBB|pppppp11111222BBB2ppppppppppp11111    BBB|ppppppppppp11111BBB|pppppppppppppp111mn#  BBB|pppppppppppppp111BBB2ppppppppppppp111BBB1111111111111111111  BBB1111111111111111111   BBB1111111111111111111BBB1111111111111111111BBB#BnBnBnBnBnBnBo111111111111BBBBBBBBBB111111111111#         "111111111111111111u211111        " nnnnnXYZnnnn   "                                                                         \ No newline at end of file
diff --git a/data/maps/ShoalCave_HighTideInnerRoom/border.bin b/data/maps/ShoalCave_HighTideInnerRoom/border.bin
new file mode 100644
index 000000000..423a0732e
--- /dev/null
+++ b/data/maps/ShoalCave_HighTideInnerRoom/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/ShoalCave_HighTideInnerRoom/header.s b/data/maps/ShoalCave_HighTideInnerRoom/header.s
new file mode 100644
index 000000000..d81d52893
--- /dev/null
+++ b/data/maps/ShoalCave_HighTideInnerRoom/header.s
@@ -0,0 +1,15 @@
+ShoalCave_HighTideInnerRoom:: @ 8307304
+ .4byte ShoalCave_HighTideInnerRoom_MapAttributes
+ .4byte ShoalCave_HighTideInnerRoom_MapEvents
+ .4byte ShoalCave_HighTideInnerRoom_MapScripts
+ .4byte 0x0
+ .2byte 432
+ .2byte 170
+ .byte 67
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/ShoalCave_HighTideInnerRoom/map.bin b/data/maps/ShoalCave_HighTideInnerRoom/map.bin
new file mode 100644
index 000000000..c540a4008
--- /dev/null
+++ b/data/maps/ShoalCave_HighTideInnerRoom/map.bin
@@ -0,0 +1 @@
+BBBBBBBBBBB22222BBBBBBBBBBB22222BBBBBBBBBBBBBBBBppppppppppppppppppppppppBBBBBBBBBBppppppppppppppppppppppppBBBBBBBBBB[32ppppppppppppppppppppppppBBB22ppp111111111111111111111RRRRR[SRBBB22ppp111111111111111111111RRRRRRBBB22pppmnRnRnRnRnRnRnRnRnRnRnRo111111112BBB2pppR[S  B B B B B B B"#R Ro11BBBpppRRBBBBBBBRR11pppppppppBBBpppppRRBBBBBBBRR11pppppppppBBBpppppRRBBBBRR11pppppppppBBBpppppBBBBRR1111111111111BBBppppp111BBBBRR1111111111111BBBpppppppBBBBRR111111mnRnRnRnRnRnR#RBBBppppppppppBBBBRR111111RRRRR[SRBBBBBBBBBBBRR111111RRRRRRRBBBBBBBBBBB111111RRRRRRRppppppppppB2111111RRRR111pppppppBBBBBB1111RRRR#RnRnRnRnRnRopppppppBBBBBBpppppRRRRRRRRRRppppp11BBBBBBpppppppppRRRRRRRpppppmn#     "pppppppppRRRRRRR1111111111   pppppppppRRRRRRR1111111111pppppppppRRRRRRR1111111111     "11111111111RRRRRRR#RnRnRnRnRnRnRnRnRnRnR#R11111111111RRRRRRRRRRRRRRRRRRR##nnnnnnnnnn1#RRRRRRRRRRRRRRRR<RRRR#        "RR<RRR#          XYZ  ## XYZ ##         "#   "#      "#       ##      ##                                     # \ No newline at end of file
diff --git a/data/maps/ShoalCave_LowTideEntranceRoom/border.bin b/data/maps/ShoalCave_LowTideEntranceRoom/border.bin
new file mode 100644
index 000000000..423a0732e
--- /dev/null
+++ b/data/maps/ShoalCave_LowTideEntranceRoom/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/ShoalCave_LowTideEntranceRoom/header.s b/data/maps/ShoalCave_LowTideEntranceRoom/header.s
new file mode 100644
index 000000000..b8b65f64c
--- /dev/null
+++ b/data/maps/ShoalCave_LowTideEntranceRoom/header.s
@@ -0,0 +1,15 @@
+ShoalCave_LowTideEntranceRoom:: @ 8307278
+ .4byte ShoalCave_LowTideEntranceRoom_MapAttributes
+ .4byte ShoalCave_LowTideEntranceRoom_MapEvents
+ .4byte ShoalCave_LowTideEntranceRoom_MapScripts
+ .4byte 0x0
+ .2byte 432
+ .2byte 165
+ .byte 67
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/ShoalCave_LowTideEntranceRoom/map.bin b/data/maps/ShoalCave_LowTideEntranceRoom/map.bin
new file mode 100644
index 000000000..1cf7c87f2
--- /dev/null
+++ b/data/maps/ShoalCave_LowTideEntranceRoom/map.bin
@@ -0,0 +1,3 @@
+      2222222222222222822222222222222222   22822222222222222222222@QQQQQ2222222222222222222222222222222222222222i22222222222222222222222222222222222222222222222222222222222222222222222222222222222222           22#     
+2222 2222222222222#B B B B B B
+22222222222222222BBBBBB22222222222222p#222BBBBBB2222222222222BBBB2222h222222   #BBB22222222222222BBB222222222222p # #BBB222222222222222BBB#            #222BBB#2 222222222222222222 #BBB2222222222222222222  #BBB2222222222222222222BBB2222222222211112222BBB#B B B B B B Bq222111111222BBBBBBBBBB222111111222#         "221111111122221111u211122#       "#     XYZ    ## "#               ##                    ##                               # \ No newline at end of file
diff --git a/data/maps/ShoalCave_LowTideIceRoom/border.bin b/data/maps/ShoalCave_LowTideIceRoom/border.bin
new file mode 100644
index 000000000..206bd63f8
--- /dev/null
+++ b/data/maps/ShoalCave_LowTideIceRoom/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/ShoalCave_LowTideIceRoom/header.s b/data/maps/ShoalCave_LowTideIceRoom/header.s
new file mode 100644
index 000000000..c84bd0ac8
--- /dev/null
+++ b/data/maps/ShoalCave_LowTideIceRoom/header.s
@@ -0,0 +1,15 @@
+ShoalCave_LowTideIceRoom:: @ 8307684
+ .4byte ShoalCave_LowTideIceRoom_MapAttributes
+ .4byte ShoalCave_LowTideIceRoom_MapEvents
+ .4byte ShoalCave_LowTideIceRoom_MapScripts
+ .4byte 0x0
+ .2byte 432
+ .2byte 329
+ .byte 67
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/ShoalCave_LowTideIceRoom/map.bin b/data/maps/ShoalCave_LowTideIceRoom/map.bin
new file mode 100644
index 000000000..222f1f26c
--- /dev/null
+++ b/data/maps/ShoalCave_LowTideIceRoom/map.bin
@@ -0,0 +1 @@
+{|{|3333~33~33333}333333333}333333333}3~333323333333|33333~33333333333xyCyCyCz33~}333xCCCC3333|333CCCCww|3xyCCCCCC33333333CCCCCC33333333CCC~CC33333333c|CCC33333333233CCC333~333333}CCCCz333333}333CCCCCyCz333333~3CC~CC}3333z333C}CCCCCz333z33|CCCCC3333333CCCCC3333333|CCC333{3}3}33CCC333{}333333333333333333333333333333233333333333~23333}3233333yyz33~3333333333yyyyyz3333333yyyyyyy \ No newline at end of file
diff --git a/data/maps/ShoalCave_LowTideInnerRoom/border.bin b/data/maps/ShoalCave_LowTideInnerRoom/border.bin
new file mode 100644
index 000000000..423a0732e
--- /dev/null
+++ b/data/maps/ShoalCave_LowTideInnerRoom/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/ShoalCave_LowTideInnerRoom/header.s b/data/maps/ShoalCave_LowTideInnerRoom/header.s
new file mode 100644
index 000000000..2fc917e37
--- /dev/null
+++ b/data/maps/ShoalCave_LowTideInnerRoom/header.s
@@ -0,0 +1,15 @@
+ShoalCave_LowTideInnerRoom:: @ 8307294
+ .4byte ShoalCave_LowTideInnerRoom_MapAttributes
+ .4byte ShoalCave_LowTideInnerRoom_MapEvents
+ .4byte ShoalCave_LowTideInnerRoom_MapScripts
+ .4byte 0x0
+ .2byte 432
+ .2byte 166
+ .byte 67
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/ShoalCave_LowTideInnerRoom/map.bin b/data/maps/ShoalCave_LowTideInnerRoom/map.bin
new file mode 100644
index 000000000..87df28cf4
--- /dev/null
+++ b/data/maps/ShoalCave_LowTideInnerRoom/map.bin
@@ -0,0 +1,2 @@
+BBBBBBBBBBB22222BBBBBBBBBBBBB22222BBBBBBBBBBBBBBBBBBRRRRRRRRRRRRRRRRRRRRRRRRBBBBBBBBBBRRRRRRRRRRRRRRRRRRRRRZSRRBBBBBBBBBB[32RRRRRRRRRRRRRRRRRRRRRRRRBBB22RRR 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2#2RRRRR[SRBBB22RRR222222222222222222222RRRRRRRBBB22RRR  R R R R R R R R R R R"22222222BBB2RRRR[S  B B B B B B B"#R R"222BBBRRRRRBBBBBBBRR222BBBRRRRRRRBBBBBBBRR222222222BBBRRRRRRRBBBBRR22#       #BBBRRRRRBBBBRR22#2 2 2 2 2 2 2 2 2 2#2BBB   BBBBRR2222222222222BBB2222BBBBRR222222  R R R R R R#RBBB22222222BBBBRR222222RRRRR[SRBBBBBBBBBBBBBBBRR222222RRRRRRRBBBBBBBBBBBBBBBRR222222RRRRRRR22222222B222222RRRRR#   
+2222BBBBBB   2RRRR#R R R R#R R1 2"22 #BBBBBB22RRRRRRRRRR22Z3  #BBBBBB2222222RRRRRRR222  #     "2222222RRRRRRR2222#  #  #2222222RRRRRRR2222#2 2 2 2 2#22222222RRRRRRR2222222222     "#    XYZ#RRRRRRR R R R R R R R R R R R#R#         #RRRRRRRRRRRRRRRRRRR##       1 R R R#RRRRRRRRRRRRRRRR<RRRR#        "RRRRR<RRR#          XYZ  ##    XYZ ##         "#   "#      "#       ##      ##                                     # \ No newline at end of file
diff --git a/data/maps/ShoalCave_LowTideLowerRoom/border.bin b/data/maps/ShoalCave_LowTideLowerRoom/border.bin
new file mode 100644
index 000000000..423a0732e
--- /dev/null
+++ b/data/maps/ShoalCave_LowTideLowerRoom/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/ShoalCave_LowTideLowerRoom/header.s b/data/maps/ShoalCave_LowTideLowerRoom/header.s
new file mode 100644
index 000000000..425019148
--- /dev/null
+++ b/data/maps/ShoalCave_LowTideLowerRoom/header.s
@@ -0,0 +1,15 @@
+ShoalCave_LowTideLowerRoom:: @ 83072CC
+ .4byte ShoalCave_LowTideLowerRoom_MapAttributes
+ .4byte ShoalCave_LowTideLowerRoom_MapEvents
+ .4byte ShoalCave_LowTideLowerRoom_MapScripts
+ .4byte 0x0
+ .2byte 432
+ .2byte 168
+ .byte 67
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/ShoalCave_LowTideLowerRoom/map.bin b/data/maps/ShoalCave_LowTideLowerRoom/map.bin
new file mode 100644
index 000000000..04bf2baf3
--- /dev/null
+++ b/data/maps/ShoalCave_LowTideLowerRoom/map.bin
@@ -0,0 +1,4 @@
+222222222222Z322222222222222222222222222222222HQQQQQ  6 6 6 
+2222222222922222 6 6 6
+2222222222222292222222XYZ              
+222#                "222222222222XYZ#6 6 6#6#   ##6 6 6 6 6#6 \ No newline at end of file
diff --git a/data/maps/ShoalCave_LowTideStairsRoom/border.bin b/data/maps/ShoalCave_LowTideStairsRoom/border.bin
new file mode 100644
index 000000000..423a0732e
--- /dev/null
+++ b/data/maps/ShoalCave_LowTideStairsRoom/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/ShoalCave_LowTideStairsRoom/header.s b/data/maps/ShoalCave_LowTideStairsRoom/header.s
new file mode 100644
index 000000000..2b3ea0ba4
--- /dev/null
+++ b/data/maps/ShoalCave_LowTideStairsRoom/header.s
@@ -0,0 +1,15 @@
+ShoalCave_LowTideStairsRoom:: @ 83072B0
+ .4byte ShoalCave_LowTideStairsRoom_MapAttributes
+ .4byte ShoalCave_LowTideStairsRoom_MapEvents
+ .4byte ShoalCave_LowTideStairsRoom_MapScripts
+ .4byte 0x0
+ .2byte 432
+ .2byte 167
+ .byte 67
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/ShoalCave_LowTideStairsRoom/map.bin b/data/maps/ShoalCave_LowTideStairsRoom/map.bin
new file mode 100644
index 000000000..f2b56644d
--- /dev/null
+++ b/data/maps/ShoalCave_LowTideStairsRoom/map.bin
@@ -0,0 +1 @@
+             1     22222262 2626222222622222622262222222Z322222222222222266222222222222#                     \ No newline at end of file
diff --git a/data/maps/SingleBattleColosseum/border.bin b/data/maps/SingleBattleColosseum/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/SingleBattleColosseum/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SingleBattleColosseum/header.s b/data/maps/SingleBattleColosseum/header.s
new file mode 100644
index 000000000..b1458e54f
--- /dev/null
+++ b/data/maps/SingleBattleColosseum/header.s
@@ -0,0 +1,15 @@
+SingleBattleColosseum:: @ 8307978
+ .4byte SingleBattleColosseum_MapAttributes
+ .4byte SingleBattleColosseum_MapEvents
+ .4byte SingleBattleColosseum_MapScripts
+ .4byte 0x0
+ .2byte 422
+ .2byte 222
+ .byte 87
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 8
+
diff --git a/data/maps/SingleBattleColosseum/map.bin b/data/maps/SingleBattleColosseum/map.bin
new file mode 100644
index 000000000..1f66ab707
--- /dev/null
+++ b/data/maps/SingleBattleColosseum/map.bin
@@ -0,0 +1 @@
+hijjjkllmjjjoOpqrrrstturrrwWxyzzz{||}zzz_22L2M22222M2N2222U2T2U2U2b2c2U2U2V2U222U2`2U2U2d2e2U2U2a2U222U2T2U2U2f2g2U2U2V2U222U2\2]2]2]2]2]2]2^2U22!2!2 \ No newline at end of file
diff --git a/data/maps/SkyPillar_1F/border.bin b/data/maps/SkyPillar_1F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/SkyPillar_1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SkyPillar_1F/header.s b/data/maps/SkyPillar_1F/header.s
new file mode 100644
index 000000000..82bbafe45
--- /dev/null
+++ b/data/maps/SkyPillar_1F/header.s
@@ -0,0 +1,15 @@
+SkyPillar_1F:: @ 8307614
+ .4byte SkyPillar_1F_MapAttributes
+ .4byte SkyPillar_1F_MapEvents
+ .4byte SkyPillar_1F_MapScripts
+ .4byte 0x0
+ .2byte 406
+ .2byte 323
+ .byte 85
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SkyPillar_1F/map.bin b/data/maps/SkyPillar_1F/map.bin
new file mode 100644
index 000000000..1eb299c49
--- /dev/null
+++ b/data/maps/SkyPillar_1F/map.bin
@@ -0,0 +1 @@
+''''''''';<=''/////////CD2E//222222222222222222222222222222222222222289999:2222222@AAAAB222222AAAAAA22222AAAAAA222222AAAAAA222222IMMMMJ2222222222222222222222222222222222"2#222222 \ No newline at end of file
diff --git a/data/maps/SkyPillar_2F/border.bin b/data/maps/SkyPillar_2F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/SkyPillar_2F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SkyPillar_2F/header.s b/data/maps/SkyPillar_2F/header.s
new file mode 100644
index 000000000..b27955859
--- /dev/null
+++ b/data/maps/SkyPillar_2F/header.s
@@ -0,0 +1,15 @@
+SkyPillar_2F:: @ 8307630
+ .4byte SkyPillar_2F_MapAttributes
+ .4byte SkyPillar_2F_MapEvents
+ .4byte SkyPillar_2F_MapScripts
+ .4byte 0x0
+ .2byte 406
+ .2byte 324
+ .byte 85
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SkyPillar_2F/map.bin b/data/maps/SkyPillar_2F/map.bin
new file mode 100644
index 000000000..8ec9bf213
--- /dev/null
+++ b/data/maps/SkyPillar_2F/map.bin
@@ -0,0 +1 @@
+'';<='''';<=''//CD2E////CL2E//5252525252525252525252525242424242424242424242424242424242424242424242424242424289999:626262624242@AAAAB6262626242426262AAAAAA42424262626262AAAAAA4242424262626262AAAAAA4242424262624242IMMMMJ626242426242426262424242626262624242426262424242426262626242424262626242424242424242 \ No newline at end of file
diff --git a/data/maps/SkyPillar_3F/border.bin b/data/maps/SkyPillar_3F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/SkyPillar_3F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SkyPillar_3F/header.s b/data/maps/SkyPillar_3F/header.s
new file mode 100644
index 000000000..cd9aae845
--- /dev/null
+++ b/data/maps/SkyPillar_3F/header.s
@@ -0,0 +1,15 @@
+SkyPillar_3F:: @ 830764C
+ .4byte SkyPillar_3F_MapAttributes
+ .4byte SkyPillar_3F_MapEvents
+ .4byte SkyPillar_3F_MapScripts
+ .4byte 0x0
+ .2byte 406
+ .2byte 325
+ .byte 85
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SkyPillar_3F/map.bin b/data/maps/SkyPillar_3F/map.bin
new file mode 100644
index 000000000..d6c76d48c
--- /dev/null
+++ b/data/maps/SkyPillar_3F/map.bin
@@ -0,0 +1 @@
+'';<=';<=';<='//CL2E/CD2E/CD2E/2222222222222222222222222222222222222289999:2222222@AAAAB222222AAAAAA2222222AAAAAA2222222AAAAAA2222222IMMMMJ222222222222222222222222222222222222222 \ No newline at end of file
diff --git a/data/maps/SkyPillar_4F/border.bin b/data/maps/SkyPillar_4F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/SkyPillar_4F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SkyPillar_4F/header.s b/data/maps/SkyPillar_4F/header.s
new file mode 100644
index 000000000..a07f93d26
--- /dev/null
+++ b/data/maps/SkyPillar_4F/header.s
@@ -0,0 +1,15 @@
+SkyPillar_4F:: @ 8307668
+ .4byte SkyPillar_4F_MapAttributes
+ .4byte SkyPillar_4F_MapEvents
+ .4byte SkyPillar_4F_MapScripts
+ .4byte 0x0
+ .2byte 406
+ .2byte 326
+ .byte 85
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SkyPillar_4F/map.bin b/data/maps/SkyPillar_4F/map.bin
new file mode 100644
index 000000000..02e82bb4f
--- /dev/null
+++ b/data/maps/SkyPillar_4F/map.bin
@@ -0,0 +1 @@
+'';<=';<=';<='//CD2E/CL2E/CL2E/5252525252525252652525252526262666424242642426242626242626424242426424289999:4262626242424242@AAAAB42626262426262AAAAAA42626424262662AAAAAA424242662662AAAAAA42424242624242IMMMMJ4242424242424262426426242662624242424264262426242624262624242424242624262426426262624242 \ No newline at end of file
diff --git a/data/maps/SkyPillar_5F/border.bin b/data/maps/SkyPillar_5F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/SkyPillar_5F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SkyPillar_5F/header.s b/data/maps/SkyPillar_5F/header.s
new file mode 100644
index 000000000..0f525ceed
--- /dev/null
+++ b/data/maps/SkyPillar_5F/header.s
@@ -0,0 +1,15 @@
+SkyPillar_5F:: @ 83076A0
+ .4byte SkyPillar_5F_MapAttributes
+ .4byte SkyPillar_5F_MapEvents
+ .4byte SkyPillar_5F_MapScripts
+ .4byte 0x0
+ .2byte 406
+ .2byte 331
+ .byte 85
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SkyPillar_5F/map.bin b/data/maps/SkyPillar_5F/map.bin
new file mode 100644
index 000000000..b8cd541d5
--- /dev/null
+++ b/data/maps/SkyPillar_5F/map.bin
@@ -0,0 +1 @@
+'';<='''';<=''//CL2E////CD2E//22222622262222226222226222222228999999:622622@AAAAAAB622262AAAAAAAA226222AAAAAAAA222222AAAAAAAA22222AAAAAAAA262222AAAAAAAA62222IMMMMMMJ22222222222222622622222222222 \ No newline at end of file
diff --git a/data/maps/SkyPillar_Entrance/border.bin b/data/maps/SkyPillar_Entrance/border.bin
new file mode 100644
index 000000000..423a0732e
--- /dev/null
+++ b/data/maps/SkyPillar_Entrance/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SkyPillar_Entrance/header.s b/data/maps/SkyPillar_Entrance/header.s
new file mode 100644
index 000000000..d6c85d434
--- /dev/null
+++ b/data/maps/SkyPillar_Entrance/header.s
@@ -0,0 +1,15 @@
+SkyPillar_Entrance:: @ 83075DC
+ .4byte SkyPillar_Entrance_MapAttributes
+ .4byte SkyPillar_Entrance_MapEvents
+ .4byte SkyPillar_Entrance_MapScripts
+ .4byte 0x0
+ .2byte 406
+ .2byte 321
+ .byte 85
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SkyPillar_Entrance/map.bin b/data/maps/SkyPillar_Entrance/map.bin
new file mode 100644
index 000000000..b215b86ef
--- /dev/null
+++ b/data/maps/SkyPillar_Entrance/map.bin
@@ -0,0 +1 @@
+222222222222222222226222222222222222222 ##22   #2226   #2222222222222222222222222222######## \ No newline at end of file
diff --git a/data/maps/SkyPillar_Outside/border.bin b/data/maps/SkyPillar_Outside/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/SkyPillar_Outside/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/SkyPillar_Outside/header.s b/data/maps/SkyPillar_Outside/header.s
new file mode 100644
index 000000000..de2207fe5
--- /dev/null
+++ b/data/maps/SkyPillar_Outside/header.s
@@ -0,0 +1,15 @@
+SkyPillar_Outside:: @ 83075F8
+ .4byte SkyPillar_Outside_MapAttributes
+ .4byte SkyPillar_Outside_MapEvents
+ .4byte SkyPillar_Outside_MapScripts
+ .4byte 0x0
+ .2byte 406
+ .2byte 322
+ .byte 85
+ .byte 0
+ .byte 0
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SkyPillar_Outside/map.bin b/data/maps/SkyPillar_Outside/map.bin
new file mode 100644
index 000000000..4517589d0
--- /dev/null
+++ b/data/maps/SkyPillar_Outside/map.bin
@@ -0,0 +1 @@
+ppppppppppr6666t5pppppppppppppppr66!1!1666tppppppppppr66!1!1!166!1!1!1!1ustppppppprs!1!1!1!1666!1!1uqutppppprss!1!1!1!1!1666!1!1uquuypppxsss!1!1!126666!1uquupppss{!1$1$12222226uquupppssqs$1$1$1$12222222ut}uppps{s$1$1$1$1$1$12222222t}uquppp{ss$1$1$1$1$1$1$122uququpppss{$1$1$1$1$1$1qqu2uququppppssqs$1$1$1$1$1sqqqu2uqut}pppps{{$1$1$1$1{|d|}2ut}uqppPQ{{{$1$1$10t}ut}ppXY{{{$1$1$1$1$1$14$1$1ut}upppppp{{s$1$1$1$1$1$1$1$1t}ut}ppPQppppsqs{$1$1$14$1t|}quuppXYppppPesq{{4$1$1t}qt|}upPQppppppXm{q{{|||}qt}t|}pXYppppPQp{q{|}qupppppppXYpp{|0|}ppppppppppPQpp$1$1$1$1$1Z[ppppppppppXYppppp$1$1$1$1$1pXYu{{{tp \ No newline at end of file
diff --git a/data/maps/SkyPillar_Top/border.bin b/data/maps/SkyPillar_Top/border.bin
new file mode 100644
index 000000000..e0241fa60
--- /dev/null
+++ b/data/maps/SkyPillar_Top/border.bin
Binary files differ
diff --git a/data/maps/SkyPillar_Top/header.s b/data/maps/SkyPillar_Top/header.s
new file mode 100644
index 000000000..fef3ce3e2
--- /dev/null
+++ b/data/maps/SkyPillar_Top/header.s
@@ -0,0 +1,15 @@
+SkyPillar_Top:: @ 83076BC
+ .4byte SkyPillar_Top_MapAttributes
+ .4byte SkyPillar_Top_MapEvents
+ .4byte SkyPillar_Top_MapScripts
+ .4byte 0x0
+ .2byte 406
+ .2byte 332
+ .byte 85
+ .byte 0
+ .byte 0
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SkyPillar_Top/map.bin b/data/maps/SkyPillar_Top/map.bin
new file mode 100644
index 000000000..fe6c2ad43
--- /dev/null
+++ b/data/maps/SkyPillar_Top/map.bin
@@ -0,0 +1 @@
+d2d2d2d2d2d2d2d2d2d2d26d2d2d2d2d26d26d2d2d2d2d2d2d2424242424242427642424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242764242424242424242424242424242424242424242424242424242424242424242427642424242424242424242424242424242424242424242424242424242424242424276424242424242424242424242427642424242424242427642424242424242''''''''''m22n';<='''''''''//////////j22k/CL2E/////////525252525252525252525252525252525252525252525252424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242[[[[[[[[[[[[[[[[[[[[[[[[[[[ \ No newline at end of file
diff --git a/data/maps/SlateportCity/border.bin b/data/maps/SlateportCity/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/SlateportCity/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/SlateportCity/connections.s b/data/maps/SlateportCity/connections.s
new file mode 100644
index 000000000..1ccbb7d15
--- /dev/null
+++ b/data/maps/SlateportCity/connections.s
@@ -0,0 +1,9 @@
+SlateportCity_MapConnectionsList:: @ 8308704
+ connection up, 0, Route110, 0
+ connection down, 0, Route109, 0
+ connection right, 0, Route134, 0
+
+SlateportCity_MapConnections:: @ 8308728
+ .4byte 0x3
+ .4byte SlateportCity_MapConnectionsList
+
diff --git a/data/maps/SlateportCity/header.s b/data/maps/SlateportCity/header.s
new file mode 100644
index 000000000..c44092e65
--- /dev/null
+++ b/data/maps/SlateportCity/header.s
@@ -0,0 +1,15 @@
+SlateportCity:: @ 8305464
+ .4byte SlateportCity_MapAttributes
+ .4byte SlateportCity_MapEvents
+ .4byte SlateportCity_MapScripts
+ .4byte SlateportCity_MapConnections
+ .2byte 433
+ .2byte 2
+ .byte 8
+ .byte 0
+ .byte 2
+ .byte 2
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SlateportCity/map.bin b/data/maps/SlateportCity/map.bin
new file mode 100644
index 000000000..97046ab59
--- /dev/null
+++ b/data/maps/SlateportCity/map.bin
Binary files differ
diff --git a/data/maps/SlateportCity_ContestHall/header.s b/data/maps/SlateportCity_ContestHall/header.s
new file mode 100644
index 000000000..7f0a884ff
--- /dev/null
+++ b/data/maps/SlateportCity_ContestHall/header.s
@@ -0,0 +1,15 @@
+SlateportCity_ContestHall:: @ 8306034
+ .4byte SlateportCity_ContestHall_MapAttributes
+ .4byte SlateportCity_ContestHall_MapEvents
+ .4byte SlateportCity_ContestHall_MapScripts
+ .4byte 0x0
+ .2byte 452
+ .2byte 73
+ .byte 8
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SlateportCity_ContestLobby/header.s b/data/maps/SlateportCity_ContestLobby/header.s
new file mode 100644
index 000000000..39dffacbf
--- /dev/null
+++ b/data/maps/SlateportCity_ContestLobby/header.s
@@ -0,0 +1,15 @@
+SlateportCity_ContestLobby:: @ 8306018
+ .4byte SlateportCity_ContestLobby_MapAttributes
+ .4byte SlateportCity_ContestLobby_MapEvents
+ .4byte SlateportCity_ContestLobby_MapScripts
+ .4byte 0x0
+ .2byte 452
+ .2byte 72
+ .byte 8
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SlateportCity_Harbor/border.bin b/data/maps/SlateportCity_Harbor/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/SlateportCity_Harbor/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SlateportCity_Harbor/header.s b/data/maps/SlateportCity_Harbor/header.s
new file mode 100644
index 000000000..2f1e08407
--- /dev/null
+++ b/data/maps/SlateportCity_Harbor/header.s
@@ -0,0 +1,15 @@
+SlateportCity_Harbor:: @ 83060C0
+ .4byte SlateportCity_Harbor_MapAttributes
+ .4byte SlateportCity_Harbor_MapEvents
+ .4byte SlateportCity_Harbor_MapScripts
+ .4byte 0x0
+ .2byte 433
+ .2byte 88
+ .byte 8
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SlateportCity_Harbor/map.bin b/data/maps/SlateportCity_Harbor/map.bin
new file mode 100644
index 000000000..c77c1edfb
--- /dev/null
+++ b/data/maps/SlateportCity_Harbor/map.bin
@@ -0,0 +1 @@
+!!!!!!!!!!!!!!!!!!!!!!!!222MNNNNNNNNNNNNNNNNNNNN222Gqqqqqqqqqqqqqqqqqqqq222Gqppppppppppppppppppp222Gqppppppppppppppppppp222Gqppppppppppppppppppp222Gqppppppppppppppppppp222hVVW[3[3UVVVVVVVF77VVVV222222222%222%222%22`77776*622222222222222222`77777722222222222222222`*6*6*6*677222222222222222`(6(6(6(677 \ No newline at end of file
diff --git a/data/maps/SlateportCity_House1/header.s b/data/maps/SlateportCity_House1/header.s
new file mode 100644
index 000000000..fbff176d8
--- /dev/null
+++ b/data/maps/SlateportCity_House1/header.s
@@ -0,0 +1,15 @@
+SlateportCity_House1:: @ 8306050
+ .4byte SlateportCity_House1_MapAttributes
+ .4byte SlateportCity_House1_MapEvents
+ .4byte SlateportCity_House1_MapScripts
+ .4byte 0x0
+ .2byte 433
+ .2byte 80
+ .byte 8
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SlateportCity_House2/header.s b/data/maps/SlateportCity_House2/header.s
new file mode 100644
index 000000000..5841ccc7e
--- /dev/null
+++ b/data/maps/SlateportCity_House2/header.s
@@ -0,0 +1,15 @@
+SlateportCity_House2:: @ 83060DC
+ .4byte SlateportCity_House2_MapAttributes
+ .4byte SlateportCity_House2_MapEvents
+ .4byte SlateportCity_House2_MapScripts
+ .4byte 0x0
+ .2byte 433
+ .2byte 60
+ .byte 8
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SlateportCity_Mart/header.s b/data/maps/SlateportCity_Mart/header.s
new file mode 100644
index 000000000..686f90274
--- /dev/null
+++ b/data/maps/SlateportCity_Mart/header.s
@@ -0,0 +1,15 @@
+SlateportCity_Mart:: @ 8306130
+ .4byte SlateportCity_Mart_MapAttributes
+ .4byte SlateportCity_Mart_MapEvents
+ .4byte SlateportCity_Mart_MapScripts
+ .4byte 0x0
+ .2byte 404
+ .2byte 63
+ .byte 8
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SlateportCity_OceanicMuseum_1F/border.bin b/data/maps/SlateportCity_OceanicMuseum_1F/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/SlateportCity_OceanicMuseum_1F/border.bin
Binary files differ
diff --git a/data/maps/SlateportCity_OceanicMuseum_1F/header.s b/data/maps/SlateportCity_OceanicMuseum_1F/header.s
new file mode 100644
index 000000000..3c8010f30
--- /dev/null
+++ b/data/maps/SlateportCity_OceanicMuseum_1F/header.s
@@ -0,0 +1,15 @@
+SlateportCity_OceanicMuseum_1F:: @ 8306088
+ .4byte SlateportCity_OceanicMuseum_1F_MapAttributes
+ .4byte SlateportCity_OceanicMuseum_1F_MapEvents
+ .4byte SlateportCity_OceanicMuseum_1F_MapScripts
+ .4byte 0x0
+ .2byte 375
+ .2byte 86
+ .byte 8
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SlateportCity_OceanicMuseum_1F/map.bin b/data/maps/SlateportCity_OceanicMuseum_1F/map.bin
new file mode 100644
index 000000000..f18b01e49
--- /dev/null
+++ b/data/maps/SlateportCity_OceanicMuseum_1F/map.bin
@@ -0,0 +1,2 @@
+]W&'&'   ^_ ./ ./    22222222262722627222222222 2222222222222!222!2222(C222222222222)6C22)6C2222K22"2#2#2$222"2#2#2$22K222K222 222U6H6I6V6C22U6I636V6C222!2222(C22>6D22>6C22>6D22>6C222)6C2222K22`6C22`6
+ `6C22`6C2222K2 \ No newline at end of file
diff --git a/data/maps/SlateportCity_OceanicMuseum_2F/border.bin b/data/maps/SlateportCity_OceanicMuseum_2F/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/SlateportCity_OceanicMuseum_2F/border.bin
Binary files differ
diff --git a/data/maps/SlateportCity_OceanicMuseum_2F/header.s b/data/maps/SlateportCity_OceanicMuseum_2F/header.s
new file mode 100644
index 000000000..fabf1104e
--- /dev/null
+++ b/data/maps/SlateportCity_OceanicMuseum_2F/header.s
@@ -0,0 +1,15 @@
+SlateportCity_OceanicMuseum_2F:: @ 83060A4
+ .4byte SlateportCity_OceanicMuseum_2F_MapAttributes
+ .4byte SlateportCity_OceanicMuseum_2F_MapEvents
+ .4byte SlateportCity_OceanicMuseum_2F_MapScripts
+ .4byte 0x0
+ .2byte 375
+ .2byte 87
+ .byte 8
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SlateportCity_OceanicMuseum_2F/map.bin b/data/maps/SlateportCity_OceanicMuseum_2F/map.bin
new file mode 100644
index 000000000..1fa2cdc18
--- /dev/null
+++ b/data/maps/SlateportCity_OceanicMuseum_2F/map.bin
@@ -0,0 +1 @@
+ac %       bd%   22M2N2N2O22222-222222222C2289@,C22225C2S2T22S2T22 22C222334C22222K2[\2[\2(C2C22E2F2F2G2K2222222222222K2C22*01,C2222222Q2R2222 22C222334C2222222YZC222(C2C222222K222222222K2222K2 \ No newline at end of file
diff --git a/data/maps/SlateportCity_PokemonCenter_1F/header.s b/data/maps/SlateportCity_PokemonCenter_1F/header.s
new file mode 100644
index 000000000..99c3a51cd
--- /dev/null
+++ b/data/maps/SlateportCity_PokemonCenter_1F/header.s
@@ -0,0 +1,15 @@
+SlateportCity_PokemonCenter_1F:: @ 83060F8
+ .4byte SlateportCity_PokemonCenter_1F_MapAttributes
+ .4byte SlateportCity_PokemonCenter_1F_MapEvents
+ .4byte SlateportCity_PokemonCenter_1F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 61
+ .byte 8
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SlateportCity_PokemonCenter_2F/header.s b/data/maps/SlateportCity_PokemonCenter_2F/header.s
new file mode 100644
index 000000000..5cd989918
--- /dev/null
+++ b/data/maps/SlateportCity_PokemonCenter_2F/header.s
@@ -0,0 +1,15 @@
+SlateportCity_PokemonCenter_2F:: @ 8306114
+ .4byte SlateportCity_PokemonCenter_2F_MapAttributes
+ .4byte SlateportCity_PokemonCenter_2F_MapEvents
+ .4byte SlateportCity_PokemonCenter_2F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 62
+ .byte 8
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SlateportCity_PokemonFanClub/border.bin b/data/maps/SlateportCity_PokemonFanClub/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/SlateportCity_PokemonFanClub/border.bin
Binary files differ
diff --git a/data/maps/SlateportCity_PokemonFanClub/header.s b/data/maps/SlateportCity_PokemonFanClub/header.s
new file mode 100644
index 000000000..12634f994
--- /dev/null
+++ b/data/maps/SlateportCity_PokemonFanClub/header.s
@@ -0,0 +1,15 @@
+SlateportCity_PokemonFanClub:: @ 830606C
+ .4byte SlateportCity_PokemonFanClub_MapAttributes
+ .4byte SlateportCity_PokemonFanClub_MapEvents
+ .4byte SlateportCity_PokemonFanClub_MapScripts
+ .4byte 0x0
+ .2byte 433
+ .2byte 85
+ .byte 8
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SlateportCity_PokemonFanClub/map.bin b/data/maps/SlateportCity_PokemonFanClub/map.bin
new file mode 100644
index 000000000..71ae8c7c9
--- /dev/null
+++ b/data/maps/SlateportCity_PokemonFanClub/map.bin
Binary files differ
diff --git a/data/maps/SlateportCity_SternsShipyard_1F/border.bin b/data/maps/SlateportCity_SternsShipyard_1F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/SlateportCity_SternsShipyard_1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SlateportCity_SternsShipyard_1F/header.s b/data/maps/SlateportCity_SternsShipyard_1F/header.s
new file mode 100644
index 000000000..72d24c67b
--- /dev/null
+++ b/data/maps/SlateportCity_SternsShipyard_1F/header.s
@@ -0,0 +1,15 @@
+SlateportCity_SternsShipyard_1F:: @ 8305FE0
+ .4byte SlateportCity_SternsShipyard_1F_MapAttributes
+ .4byte SlateportCity_SternsShipyard_1F_MapEvents
+ .4byte SlateportCity_SternsShipyard_1F_MapScripts
+ .4byte 0x0
+ .2byte 433
+ .2byte 81
+ .byte 8
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SlateportCity_SternsShipyard_1F/map.bin b/data/maps/SlateportCity_SternsShipyard_1F/map.bin
new file mode 100644
index 000000000..036f5ce26
--- /dev/null
+++ b/data/maps/SlateportCity_SternsShipyard_1F/map.bin
@@ -0,0 +1,7 @@
+!
+!012! #!$!"!!"2222
+)28292:2)22)2)2)2)2)2)2)2)2222222  2 2 2 2 2 2 2 2&2)2)2)2)22A2B22222?)2)2)2'IJ2222
+G$[\3456 )2)2)2''2222   O)2cd;<=>2)2)2)2/7A2B222)2)2k2l2CDEF)2)2)2)2)2)2IJ2222 )2)2)2)2K2LMN2)2)2)2)2)2)22222222)2)2)253)2UV)2)2)2)2)2)2)2A2B222222)2)2(2_2(2*2*253)2)2)2)2)22IJ22222)2(2_2(2(2(2_2)2)2)2'222222
+'2(2W(2(2(2W)2)2)2'''222222
+/'(2(2(2(2(2)2)2)2//7222222
+77/)2)2)2)2)2)2)2)2)2)2)2 \ No newline at end of file
diff --git a/data/maps/SlateportCity_SternsShipyard_2F/border.bin b/data/maps/SlateportCity_SternsShipyard_2F/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/SlateportCity_SternsShipyard_2F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SlateportCity_SternsShipyard_2F/header.s b/data/maps/SlateportCity_SternsShipyard_2F/header.s
new file mode 100644
index 000000000..7093672d5
--- /dev/null
+++ b/data/maps/SlateportCity_SternsShipyard_2F/header.s
@@ -0,0 +1,15 @@
+SlateportCity_SternsShipyard_2F:: @ 8305FFC
+ .4byte SlateportCity_SternsShipyard_2F_MapAttributes
+ .4byte SlateportCity_SternsShipyard_2F_MapEvents
+ .4byte SlateportCity_SternsShipyard_2F_MapScripts
+ .4byte 0x0
+ .2byte 433
+ .2byte 82
+ .byte 8
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SlateportCity_SternsShipyard_2F/map.bin b/data/maps/SlateportCity_SternsShipyard_2F/map.bin
new file mode 100644
index 000000000..d10ed2ac2
--- /dev/null
+++ b/data/maps/SlateportCity_SternsShipyard_2F/map.bin
@@ -0,0 +1 @@
+!!!$#! !!$! !!22222222222222222222222222  22  22@2B2A2B2222222222HJIJ2222PQQQQQQR222222222`cd;<=>2A2B2@2B22222`klCDEF2IJHJ2222`))KLMN222222222`)5)UV)2A2B2@2B22222`(W2(**52IJHJ222`(W2(((W2222222222hiiiij222222222222%2%2222222222222222222222 \ No newline at end of file
diff --git a/data/maps/SootopolisCity/border.bin b/data/maps/SootopolisCity/border.bin
new file mode 100644
index 000000000..c07869a9f
--- /dev/null
+++ b/data/maps/SootopolisCity/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SootopolisCity/header.s b/data/maps/SootopolisCity/header.s
new file mode 100644
index 000000000..f8dcc52b1
--- /dev/null
+++ b/data/maps/SootopolisCity/header.s
@@ -0,0 +1,15 @@
+SootopolisCity:: @ 830550C
+ .4byte SootopolisCity_MapAttributes
+ .4byte SootopolisCity_MapEvents
+ .4byte SootopolisCity_MapScripts
+ .4byte 0x0
+ .2byte 445
+ .2byte 8
+ .byte 14
+ .byte 0
+ .byte 2
+ .byte 2
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SootopolisCity/map.bin b/data/maps/SootopolisCity/map.bin
new file mode 100644
index 000000000..4269e22a6
--- /dev/null
+++ b/data/maps/SootopolisCity/map.bin
@@ -0,0 +1,12 @@
+222922222922222229KLM929222222 
+  222222222 
+ 2222 
+ 22%7'222222KLM2222 
+  
+ U22-?/22@AAAB Z2222#$_222222 222222222222222222 22KLM22+,_22D2E2222222222222222222222@AAAAAAAB2 @AAF2G\22222222222@AF22GAAAB22D222%6'2bD2c22222222222bD2E2c2222922->/22D2222222222222D2AAAAAB22222222222D2E2D2 
+ D2E2D2E222222222222222222222D2E226222222 222822D2E22222222222229222222222222222222@AF22GAAAAAAAAB2222222222T 
+ B22222222bD2E2cQR[RS22TA 
+ 222228222222;2222^#$222D2E2222222 !2"2^2#$22222222^+,222D2E222222()2)2)2*222^2+,2222 
+  
+ KLM^22222222222n22o0q0q0q022222^22222D2E2 2 ^22222222222bD2E2cq06q06q022^2222D2E2%7'2%7']AAAB2222D2q0q0q0q0q0q06q06q0q0q0^222222222-?/2AAB-?/2D2E222D2q0q0q0q0q0q0q0q0q0q0q0q0q0q0]AB222222222222222222222q0q0q0q0q0q0q0q0q0q0q0q0q0q0D2E2KLM22222KLMD2E2222q0q0t||||||||||TB222 2222222KL22TYZB22D2E2ty}s^2222222222222 22^22222q0q0t}yyyyyyyy{y^222222222%6'22^222k6l6l6m6q0q0uyyyyyyyyyys^2222222 22222->/22^2222220123q0q0uyyyyyyyyyyyyys]AAB22222222AAAAB]AAAAB89:;q0q0uyyyyyyys{|}~2222222222ABwq0q0uyyyyysTPQRS2222D22222222222222q0q0uyyyyys^XYZ[222222222222222222222222222q0q0uyyyyys^abvD2E222222KLM22222D2E2q0q0q0uy01110yys^22222222222I222TYZB2222q0q0q0q0q0q0uy000000100yys^22222222222222^2222q0q0q0q0q0q0t}y00000100yys]B22@AF22222 
+ 22^2222q0tD2E2yzy00000000yysD2E2N22 2222^2222222q0r0000yy00000000yy{yyyD2E2N22%7'2]B2222q0r0000yyyy04000pN22-?/2222222tyyz0yyyyyyyyyyyyyyy00000pV@AAAAAAB2qtyyz0000yyyyyyyyyyyyyyyyyyyy00000p2qqr0000000yyyyyyyyyyyyyyyyyyyy000xyyyyqqq2qqr0000000yyyyyyyyyyyyyyyyyyyyyy00000000x2qqr000000000yyyyyyyyyyyyyyyyyyyyyy000000000pq2qqr000000000yyyyyyyyyyyyyyyyyyyyyy000011pq2qqr00000001100yyyyyyyyyyyyyyyyyyyyyyyyy0000pqq2qr000000000yyyyyyyyyyyyyyyyyyyyyyyyy0000pqqiiij000yyyyyyyyyyyyyyyyyyyyyyyyypqqij0yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyypr0yyyyyyyyyyyyyyyyyyyyyyyyyyyyyy`ii0i0i00iijyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyqqqqqryyyyyyyyyyyyyyyyyyyyyyyyiiiiiiqryyyyyyyyyyyyyyyyyyyyyyyyqqqqqqqryyyyyyyyyyyyyyyiiiiqqqqryyyyyyyyyyyqqqqqqqryyyyyyyyyqqqqqiiiiyyiiqqqqqqiiiiiiiiiiiiiiiiiqqqqqqqqqqqqqqqqqqqqqqqqq \ No newline at end of file
diff --git a/data/maps/SootopolisCity_Gym_1F/border.bin b/data/maps/SootopolisCity_Gym_1F/border.bin
new file mode 100644
index 000000000..12819766e
--- /dev/null
+++ b/data/maps/SootopolisCity_Gym_1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SootopolisCity_Gym_1F/header.s b/data/maps/SootopolisCity_Gym_1F/header.s
new file mode 100644
index 000000000..04c88dc91
--- /dev/null
+++ b/data/maps/SootopolisCity_Gym_1F/header.s
@@ -0,0 +1,15 @@
+SootopolisCity_Gym_1F:: @ 830692C
+ .4byte SootopolisCity_Gym_1F_MapAttributes
+ .4byte SootopolisCity_Gym_1F_MapEvents
+ .4byte SootopolisCity_Gym_1F_MapScripts
+ .4byte 0x0
+ .2byte 364
+ .2byte 110
+ .byte 14
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 1
+
diff --git a/data/maps/SootopolisCity_Gym_1F/map.bin b/data/maps/SootopolisCity_Gym_1F/map.bin
new file mode 100644
index 000000000..a4a20d477
--- /dev/null
+++ b/data/maps/SootopolisCity_Gym_1F/map.bin
@@ -0,0 +1,3 @@
+<JJ
+ !JJJ!
+ JJ9DER)RRR)R@AJLMF21*2+2,21G2HIJRRU?2>2>2>2223242>2>2>2>2PRRXYZJJJ:2;JJJJ`b DERRRRB2CRRRR@ADM22222 222222HADM 2 2 2 2 2 2 2 2 2HADM 2 2 2 2 2 2 2 2 2 2 2HANLM 2 2 2 2 2 2 2 2 2HIJVRU<JJJ:2;JJJ9PRR  DERRB2CRR@A   DM222 2222HADM 2 2 2 2 2 2HANJJLM 2 2 2 2 2 2HIJJJVRRRU<J:2;J9PRRRR    DEB2C@A     DM2 2HANJJJJLM 2 2 2HIJJJJJVRRRRRU 2 2PRRRRRR  XYY[:2;`aab   DERRB2CRR@ADMF2G2G2G2G2G22HADM?22>2>2>22>2HADM?2>2>2>2>2HADM?2G2>2G2>2HA \ No newline at end of file
diff --git a/data/maps/SootopolisCity_Gym_B1F/border.bin b/data/maps/SootopolisCity_Gym_B1F/border.bin
new file mode 100644
index 000000000..12819766e
--- /dev/null
+++ b/data/maps/SootopolisCity_Gym_B1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SootopolisCity_Gym_B1F/header.s b/data/maps/SootopolisCity_Gym_B1F/header.s
new file mode 100644
index 000000000..33927d780
--- /dev/null
+++ b/data/maps/SootopolisCity_Gym_B1F/header.s
@@ -0,0 +1,15 @@
+SootopolisCity_Gym_B1F:: @ 8306948
+ .4byte SootopolisCity_Gym_B1F_MapAttributes
+ .4byte SootopolisCity_Gym_B1F_MapEvents
+ .4byte SootopolisCity_Gym_B1F_MapScripts
+ .4byte 0x0
+ .2byte 364
+ .2byte 111
+ .byte 14
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 1
+
diff --git a/data/maps/SootopolisCity_Gym_B1F/map.bin b/data/maps/SootopolisCity_Gym_B1F/map.bin
new file mode 100644
index 000000000..eb73a4d2f
--- /dev/null
+++ b/data/maps/SootopolisCity_Gym_B1F/map.bin
@@ -0,0 +1 @@
+%&&&&&&&&&&&&&'-%           '/--22222222222//--22222222222//--22222222222//&5-22222222222/7&&&527&&...-%   2   '/...--2222222//--2222222//&&&5-2222222/7&&&&&&&527&&&&.....-% 2 '/.....--222//&&&&&5-222/7&&&&&&&&&&&52227&&&&&&...%&&&2&&&'...-%   2   '/--2222222//--2222222//--2222222//--2222222// \ No newline at end of file
diff --git a/data/maps/SootopolisCity_House1/border.bin b/data/maps/SootopolisCity_House1/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/SootopolisCity_House1/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SootopolisCity_House1/header.s b/data/maps/SootopolisCity_House1/header.s
new file mode 100644
index 000000000..a5e9515f4
--- /dev/null
+++ b/data/maps/SootopolisCity_House1/header.s
@@ -0,0 +1,15 @@
+SootopolisCity_House1:: @ 83069B8
+ .4byte SootopolisCity_House1_MapAttributes
+ .4byte SootopolisCity_House1_MapEvents
+ .4byte SootopolisCity_House1_MapScripts
+ .4byte 0x0
+ .2byte 445
+ .2byte 308
+ .byte 14
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SootopolisCity_House1/map.bin b/data/maps/SootopolisCity_House1/map.bin
new file mode 100644
index 000000000..43f11b194
--- /dev/null
+++ b/data/maps/SootopolisCity_House1/map.bin
@@ -0,0 +1 @@
+023333332332772333327723333333333333 333 \ No newline at end of file
diff --git a/data/maps/SootopolisCity_House2/border.bin b/data/maps/SootopolisCity_House2/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/SootopolisCity_House2/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SootopolisCity_House2/header.s b/data/maps/SootopolisCity_House2/header.s
new file mode 100644
index 000000000..ffe14bd60
--- /dev/null
+++ b/data/maps/SootopolisCity_House2/header.s
@@ -0,0 +1,15 @@
+SootopolisCity_House2:: @ 83069D4
+ .4byte SootopolisCity_House2_MapAttributes
+ .4byte SootopolisCity_House2_MapEvents
+ .4byte SootopolisCity_House2_MapScripts
+ .4byte 0x0
+ .2byte 445
+ .2byte 309
+ .byte 14
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SootopolisCity_House2/map.bin b/data/maps/SootopolisCity_House2/map.bin
new file mode 100644
index 000000000..632e1e36a
--- /dev/null
+++ b/data/maps/SootopolisCity_House2/map.bin
@@ -0,0 +1 @@
+vw62223336333277233333772333333333333 333 \ No newline at end of file
diff --git a/data/maps/SootopolisCity_House3/border.bin b/data/maps/SootopolisCity_House3/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/SootopolisCity_House3/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SootopolisCity_House3/header.s b/data/maps/SootopolisCity_House3/header.s
new file mode 100644
index 000000000..9efaa48d5
--- /dev/null
+++ b/data/maps/SootopolisCity_House3/header.s
@@ -0,0 +1,15 @@
+SootopolisCity_House3:: @ 83069F0
+ .4byte SootopolisCity_House3_MapAttributes
+ .4byte SootopolisCity_House3_MapEvents
+ .4byte SootopolisCity_House3_MapScripts
+ .4byte 0x0
+ .2byte 445
+ .2byte 310
+ .byte 14
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SootopolisCity_House3/map.bin b/data/maps/SootopolisCity_House3/map.bin
new file mode 100644
index 000000000..8bbd6c517
--- /dev/null
+++ b/data/maps/SootopolisCity_House3/map.bin
@@ -0,0 +1 @@
+62233322333333337723333377333333333 333 \ No newline at end of file
diff --git a/data/maps/SootopolisCity_House4/header.s b/data/maps/SootopolisCity_House4/header.s
new file mode 100644
index 000000000..03ba1b809
--- /dev/null
+++ b/data/maps/SootopolisCity_House4/header.s
@@ -0,0 +1,15 @@
+SootopolisCity_House4:: @ 8306A0C
+ .4byte SootopolisCity_House4_MapAttributes
+ .4byte SootopolisCity_House4_MapEvents
+ .4byte SootopolisCity_House4_MapScripts
+ .4byte 0x0
+ .2byte 445
+ .2byte 308
+ .byte 14
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SootopolisCity_House5/header.s b/data/maps/SootopolisCity_House5/header.s
new file mode 100644
index 000000000..b85197d68
--- /dev/null
+++ b/data/maps/SootopolisCity_House5/header.s
@@ -0,0 +1,15 @@
+SootopolisCity_House5:: @ 8306A28
+ .4byte SootopolisCity_House5_MapAttributes
+ .4byte SootopolisCity_House5_MapEvents
+ .4byte SootopolisCity_House5_MapScripts
+ .4byte 0x0
+ .2byte 445
+ .2byte 309
+ .byte 14
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SootopolisCity_House6/header.s b/data/maps/SootopolisCity_House6/header.s
new file mode 100644
index 000000000..0fdde3c15
--- /dev/null
+++ b/data/maps/SootopolisCity_House6/header.s
@@ -0,0 +1,15 @@
+SootopolisCity_House6:: @ 8306A44
+ .4byte SootopolisCity_House6_MapAttributes
+ .4byte SootopolisCity_House6_MapEvents
+ .4byte SootopolisCity_House6_MapScripts
+ .4byte 0x0
+ .2byte 445
+ .2byte 310
+ .byte 14
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SootopolisCity_House7/header.s b/data/maps/SootopolisCity_House7/header.s
new file mode 100644
index 000000000..f89aadb3a
--- /dev/null
+++ b/data/maps/SootopolisCity_House7/header.s
@@ -0,0 +1,15 @@
+SootopolisCity_House7:: @ 8306A60
+ .4byte SootopolisCity_House7_MapAttributes
+ .4byte SootopolisCity_House7_MapEvents
+ .4byte SootopolisCity_House7_MapScripts
+ .4byte 0x0
+ .2byte 445
+ .2byte 308
+ .byte 14
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SootopolisCity_House8/border.bin b/data/maps/SootopolisCity_House8/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/SootopolisCity_House8/border.bin
Binary files differ
diff --git a/data/maps/SootopolisCity_House8/header.s b/data/maps/SootopolisCity_House8/header.s
new file mode 100644
index 000000000..7e4549c35
--- /dev/null
+++ b/data/maps/SootopolisCity_House8/header.s
@@ -0,0 +1,15 @@
+SootopolisCity_House8:: @ 8306A7C
+ .4byte SootopolisCity_House8_MapAttributes
+ .4byte SootopolisCity_House8_MapEvents
+ .4byte SootopolisCity_House8_MapScripts
+ .4byte 0x0
+ .2byte 445
+ .2byte 298
+ .byte 14
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SootopolisCity_House8/map.bin b/data/maps/SootopolisCity_House8/map.bin
new file mode 100644
index 000000000..ffeea7269
--- /dev/null
+++ b/data/maps/SootopolisCity_House8/map.bin
@@ -0,0 +1 @@
+XX``22333366333773333327723333333333333 333 \ No newline at end of file
diff --git a/data/maps/SootopolisCity_Mart/header.s b/data/maps/SootopolisCity_Mart/header.s
new file mode 100644
index 000000000..9ce2c4f63
--- /dev/null
+++ b/data/maps/SootopolisCity_Mart/header.s
@@ -0,0 +1,15 @@
+SootopolisCity_Mart:: @ 830699C
+ .4byte SootopolisCity_Mart_MapAttributes
+ .4byte SootopolisCity_Mart_MapEvents
+ .4byte SootopolisCity_Mart_MapScripts
+ .4byte 0x0
+ .2byte 404
+ .2byte 63
+ .byte 14
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SootopolisCity_PokemonCenter_1F/header.s b/data/maps/SootopolisCity_PokemonCenter_1F/header.s
new file mode 100644
index 000000000..be57b9c0e
--- /dev/null
+++ b/data/maps/SootopolisCity_PokemonCenter_1F/header.s
@@ -0,0 +1,15 @@
+SootopolisCity_PokemonCenter_1F:: @ 8306964
+ .4byte SootopolisCity_PokemonCenter_1F_MapAttributes
+ .4byte SootopolisCity_PokemonCenter_1F_MapEvents
+ .4byte SootopolisCity_PokemonCenter_1F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 61
+ .byte 14
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SootopolisCity_PokemonCenter_2F/header.s b/data/maps/SootopolisCity_PokemonCenter_2F/header.s
new file mode 100644
index 000000000..267771372
--- /dev/null
+++ b/data/maps/SootopolisCity_PokemonCenter_2F/header.s
@@ -0,0 +1,15 @@
+SootopolisCity_PokemonCenter_2F:: @ 8306980
+ .4byte SootopolisCity_PokemonCenter_2F_MapAttributes
+ .4byte SootopolisCity_PokemonCenter_2F_MapEvents
+ .4byte SootopolisCity_PokemonCenter_2F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 62
+ .byte 14
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/SouthernIsland_Exterior/border.bin b/data/maps/SouthernIsland_Exterior/border.bin
new file mode 100644
index 000000000..c3fe51511
--- /dev/null
+++ b/data/maps/SouthernIsland_Exterior/border.bin
@@ -0,0 +1 @@
+pppp \ No newline at end of file
diff --git a/data/maps/SouthernIsland_Exterior/header.s b/data/maps/SouthernIsland_Exterior/header.s
new file mode 100644
index 000000000..cca809d70
--- /dev/null
+++ b/data/maps/SouthernIsland_Exterior/header.s
@@ -0,0 +1,15 @@
+SouthernIsland_Exterior:: @ 8307CA4
+ .4byte SouthernIsland_Exterior_MapAttributes
+ .4byte SouthernIsland_Exterior_MapEvents
+ .4byte SouthernIsland_Exterior_MapScripts
+ .4byte 0x0
+ .2byte 381
+ .2byte 291
+ .byte 73
+ .byte 0
+ .byte 0
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SouthernIsland_Exterior/map.bin b/data/maps/SouthernIsland_Exterior/map.bin
new file mode 100644
index 000000000..8c2c2df4a
--- /dev/null
+++ b/data/maps/SouthernIsland_Exterior/map.bin
@@ -0,0 +1 @@
+qss444444444444444444444440uuuuqss444444444444444444444444t}uuuqss444444444444444444444444uquuuqss444444444444444444444444uquuuqss444444444447744444444444ut}uuqss444444444443344444444444uuquuss04444444444334444444444t}ut}uss{|444444440004444444444uquut}s{qs444444440000440000004ut}uu{sqs444444440000000444000uuquups{s044444444000004444400uuquups{s{64444444400044444t00zuquup{s{44p0444444444t6666z000ut}upssq{|{||444444tz4444t00yzuqupssqqq{44{666|||}tyyyyz0000ut}ps{|||44x444tz0000000t|}upsqqqq{||xyyyz0000000000t}qt}pp{||qqqqs0000000000t||||}t|}pp{||q{|||||00|||}t}pppppp{|]^0^0_}ppppppppppp]^0^0_ppppppppppppppppppppUV0V0V02^0^0_qpppppppppppppppppppppppp]^0^0^0^0^0^0_qppppppppppppppppppppppppSTTV3W3TTUqpppppppppppppppppppppppp[\\\\\\]qppppppppppppppppppppppppqqqqqqqqqpppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp \ No newline at end of file
diff --git a/data/maps/SouthernIsland_Interior/border.bin b/data/maps/SouthernIsland_Interior/border.bin
new file mode 100644
index 000000000..03bcafef1
--- /dev/null
+++ b/data/maps/SouthernIsland_Interior/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/SouthernIsland_Interior/header.s b/data/maps/SouthernIsland_Interior/header.s
new file mode 100644
index 000000000..d4de36ff1
--- /dev/null
+++ b/data/maps/SouthernIsland_Interior/header.s
@@ -0,0 +1,15 @@
+SouthernIsland_Interior:: @ 8307CC0
+ .4byte SouthernIsland_Interior_MapAttributes
+ .4byte SouthernIsland_Interior_MapEvents
+ .4byte SouthernIsland_Interior_MapScripts
+ .4byte 0x0
+ .2byte 381
+ .2byte 292
+ .byte 73
+ .byte 0
+ .byte 11
+ .byte 3
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/SouthernIsland_Interior/map.bin b/data/maps/SouthernIsland_Interior/map.bin
new file mode 100644
index 000000000..db1e4b153
--- /dev/null
+++ b/data/maps/SouthernIsland_Interior/map.bin
@@ -0,0 +1 @@
+000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000011000000000000001111001112211 \ No newline at end of file
diff --git a/data/maps/TradeCenter/border.bin b/data/maps/TradeCenter/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/TradeCenter/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/TradeCenter/header.s b/data/maps/TradeCenter/header.s
new file mode 100644
index 000000000..245690ad6
--- /dev/null
+++ b/data/maps/TradeCenter/header.s
@@ -0,0 +1,15 @@
+TradeCenter:: @ 8307994
+ .4byte TradeCenter_MapAttributes
+ .4byte TradeCenter_MapEvents
+ .4byte TradeCenter_MapScripts
+ .4byte 0x0
+ .2byte 422
+ .2byte 223
+ .byte 87
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/TradeCenter/map.bin b/data/maps/TradeCenter/map.bin
new file mode 100644
index 000000000..7e592dbe6
--- /dev/null
+++ b/data/maps/TradeCenter/map.bin
@@ -0,0 +1,2 @@
+017456742389?<=  >?<:;@AGDE((FGDBCHI2.2222222.2J2KP22
+2 2 2 22222SPQ2+22222+2R2SP2222222222SXY222#2$2%2&222Z2[,2-2 \ No newline at end of file
diff --git a/data/maps/Underwater1/border.bin b/data/maps/Underwater1/border.bin
new file mode 100644
index 000000000..b15c94f96
--- /dev/null
+++ b/data/maps/Underwater1/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Underwater1/connections.s b/data/maps/Underwater1/connections.s
new file mode 100644
index 000000000..f898dd6f7
--- /dev/null
+++ b/data/maps/Underwater1/connections.s
@@ -0,0 +1,8 @@
+Underwater1_MapConnectionsList:: @ 8308D10
+ connection down, 0, Underwater2, 0
+ connection emerge, 0, Route124, 0
+
+Underwater1_MapConnections:: @ 8308D28
+ .4byte 0x2
+ .4byte Underwater1_MapConnectionsList
+
diff --git a/data/maps/Underwater1/header.s b/data/maps/Underwater1/header.s
new file mode 100644
index 000000000..6941ac85a
--- /dev/null
+++ b/data/maps/Underwater1/header.s
@@ -0,0 +1,15 @@
+Underwater1:: @ 83059C0
+ .4byte Underwater1_MapAttributes
+ .4byte Underwater1_MapEvents
+ .4byte Underwater1_MapScripts
+ .4byte Underwater1_MapConnections
+ .2byte 411
+ .2byte 275
+ .byte 50
+ .byte 0
+ .byte 14
+ .byte 5
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Underwater1/map.bin b/data/maps/Underwater1/map.bin
new file mode 100644
index 000000000..230e3dcd2
--- /dev/null
+++ b/data/maps/Underwater1/map.bin
@@ -0,0 +1,17 @@
+2222222222222222222222222222222222222222222222222222222222222222222222# 22
+"##~222222222222222222222222222222222#  "#####~22222222222}####### 22
+||~22###~22222222#  "22######~2222222222222222222222222222222222222222222222222222}|||| 22
+"22222222222#  "22222222222222222222222222222222222222222222222222#|~222222222222222222#~2222#||~2222222222222222222#|||||||||||~222#~22222#~2222222222222#~2222222222#|||# 22
+"22#  "222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222# 22
+"22}"2222222222222222222y2y222222222222y2y222222222222222# 22
+""~22222222222222222222222#  "222222222222}|"22222222222222222222222222# 22
+|||"2222222222222222222#  "2222"~222222222}|"222# 22
+""|~22222}|"22}|#  ""|||||"22222222222222222222222222222222222222222222222222}||~2222222222222222}"22222222# 22
+"2222"~2222222#  "222222}""|~}"2222222}""|||||22222222222222# 22
+"2222#  "222222"~22222222"~222222222"~22z222
+"22222222222222y2y22222222222222222#~22# 22
+"||||~222222222222#  "#|~2222222222222222222222222222222#|~2222222222222# 22
+"||||||# 22
+"222#  "#  "22222222}"222222222222222
+ "# 22
+"#  " \ No newline at end of file
diff --git a/data/maps/Underwater2/border.bin b/data/maps/Underwater2/border.bin
new file mode 100644
index 000000000..b15c94f96
--- /dev/null
+++ b/data/maps/Underwater2/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Underwater2/connections.s b/data/maps/Underwater2/connections.s
new file mode 100644
index 000000000..80f305b4d
--- /dev/null
+++ b/data/maps/Underwater2/connections.s
@@ -0,0 +1,9 @@
+Underwater2_MapConnectionsList:: @ 8308D30
+ connection up, 0, Underwater1, 0
+ connection right, 0, Underwater3, 0
+ connection emerge, 0, Route126, 0
+
+Underwater2_MapConnections:: @ 8308D54
+ .4byte 0x3
+ .4byte Underwater2_MapConnectionsList
+
diff --git a/data/maps/Underwater2/header.s b/data/maps/Underwater2/header.s
new file mode 100644
index 000000000..887c465be
--- /dev/null
+++ b/data/maps/Underwater2/header.s
@@ -0,0 +1,15 @@
+Underwater2:: @ 83059DC
+ .4byte Underwater2_MapAttributes
+ .4byte Underwater2_MapEvents
+ .4byte Underwater2_MapScripts
+ .4byte Underwater2_MapConnections
+ .2byte 411
+ .2byte 51
+ .byte 51
+ .byte 0
+ .byte 14
+ .byte 5
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Underwater2/map.bin b/data/maps/Underwater2/map.bin
new file mode 100644
index 000000000..0c6377c30
--- /dev/null
+++ b/data/maps/Underwater2/map.bin
@@ -0,0 +1,35 @@
+2222222222222222222222222222222222222222222222222222222z222x2#~6y2y222}||||||||||||||##||||#2222222222222222222222222#       22222222222/# 222222222222222222
+    222222222222222222222#  22222222222222222222222# 22222222222222222222222222# 2222222222222222222222222222222222222222222222222
+    22222222222222222222222222222222
+" #  222/2222222 222222222222222222222 "#/#   "# 22222
+"222222222222222222222##     " "2222222222222222222222/ "222222
+  222222222222222222
+  22222222222222222/  2222222222/2222222222222/#  22222# 222222222222222222222222
+"#22/2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222
+"2222222222222222222222222222222222222222222222222# 22222222222222222
+   2222222222222222222222222222222222222222
+   "#     22222222222222222222222222222222222
+ " /#           22222222222222/2222222222
+"/ " #/#  22222222/2222222222222
+ " " "# /#/# 2222222222222222222
+ " "/ "#/#/# 2222222222222222222
+" "/ "#/## 2222222222
+"222222
+" " "#/#/# 22222# 222/2222222 "/ "### 22222#/222222222
+" "##22222222222222 " "#/# 2222222222222## 2222## 2
+"22222
+  "/2222/# "/222222 "##2222#22222222222#2222222/### 2222/2222222//622222/222222
+ 22222222222/22222#222222/222222222222/222222#2222222222222//2222222222222
+"22222222222222222222//62222222/# 2222222/2222222/ "2222222/2222222
+"## 2222222/222222
+" "22222222222222/222222222/222222
+"/ "# 222222222/22222222222222222//2222222 "222222222222//2222222
+"#/# 22222222222222efg2222222222/ "##   222222222222222222mno2222222222222222222 #  222222222222222222222222222222222222222222
+" "222222 /#  222222222222222222222222222222222222222
+"2222222##    22222222222222222222222222222222
+  " "6222222222/# 222222222222222222222222222222
+"/62222z222x22##  2222222222222222222222222
+  " "622}~2y2y22} #   22222222222222222222
+ "622 |||| ##   222222222222222
+ "/ "622/#  2222222
+     "622##       "/ "62222// "6222222#"222222|~22222 ||||   \ No newline at end of file
diff --git a/data/maps/Underwater3/border.bin b/data/maps/Underwater3/border.bin
new file mode 100644
index 000000000..b15c94f96
--- /dev/null
+++ b/data/maps/Underwater3/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Underwater3/connections.s b/data/maps/Underwater3/connections.s
new file mode 100644
index 000000000..bcc435893
--- /dev/null
+++ b/data/maps/Underwater3/connections.s
@@ -0,0 +1,9 @@
+Underwater3_MapConnectionsList:: @ 8308D5C
+ connection emerge, 0, Route127, 0
+ connection left, 0, Underwater2, 0
+ connection down, 0, Underwater4, 0
+
+Underwater3_MapConnections:: @ 8308D80
+ .4byte 0x3
+ .4byte Underwater3_MapConnectionsList
+
diff --git a/data/maps/Underwater3/header.s b/data/maps/Underwater3/header.s
new file mode 100644
index 000000000..88ce8253d
--- /dev/null
+++ b/data/maps/Underwater3/header.s
@@ -0,0 +1,15 @@
+Underwater3:: @ 83059F8
+ .4byte Underwater3_MapAttributes
+ .4byte Underwater3_MapEvents
+ .4byte Underwater3_MapScripts
+ .4byte Underwater3_MapConnections
+ .2byte 411
+ .2byte 52
+ .byte 52
+ .byte 0
+ .byte 14
+ .byte 5
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Underwater3/map.bin b/data/maps/Underwater3/map.bin
new file mode 100644
index 000000000..1f7addb2d
--- /dev/null
+++ b/data/maps/Underwater3/map.bin
@@ -0,0 +1 @@
+666666666666666666666666666666666666666666666666666666666666666666666666666666666666666;2;266666666666666;2;2;2;266666666666@2C2C2A26666666666<2P2Q2:266666666666<2T2R:266666666666<2T2R:2666666666666@2G2T2R2:266666666666@2A2@2G2P2\2R2B2A266666666666@2D2B2A2<2P2\2V2Z2Q2:266666666666?2P2Q2B2:2<2K2L2V2V2R2B2A266666666666?2W2]2Q2:23242T2V2V2R2S2:266666666666?2W2S2U2:2# ?2K2L2V2Z2Q2:266666666666?2W2S2U2:23242T2V2V2R2:26666666666?2Y2O2U2B2A2## ?2K2K2L2R2:26666666666I242W2U2S2:2#32422L2R2:26666666666  ?2W2]2Q2:2## 422L2R2:26666666666?2Y2O2U2:2#3242L2R2:2666666666I242W2U2B2A2## 42T2R2:26666666666  ?2W2U2S2:2#42T2R2:2666666666?2W2]2Q2:242T2R20 66666666?2W2S2U2:2;242T2R2866666666?2Y2O2U2B2A242T2R28 "666666666   I242W2U2S2:2;242T2R28 "666666666  ?2W2]2Q2:2@2C2A2###!a6`"  666666666?2W2S2U2:2?2S2:2# #" "666666666?2W2S2U2B2A2?2S2:266666666?2W2S2U2S2:2?2S2B2A2# "66666666?2W2S2U2S2:23242S2:2 "66666666?2W2S2U2S2:2@2A2# ?2S2B2A2# "66666666?2W2S2]2Q2:2?2B2A2?2S2S2:2  666666666?2W2P2Q2U2:2?2S2:2?22S2:2666666666?2W2T2R2U2:2?2S2:2?2S2S2:2#"666666666@2A2?2W2T2R2U2:2?2S2B2A2?2S2S2:2# "666666666<2:2?2W2T2R2U2:2@2D2P2Q2:2?2S2S2:2#  666666666@22B2A2?2W2T2R2U2:2?2P2_2U2:2@2D2S2S2:2#"666666666@2222:2?2W2T2R2U2:2?2W2S2U2:2?2S2S22232#666666666<2222B2A2?2W2T2R2U2:2;2?2W2S2U2:2?2S2S2:2" "666666666<2222S2:2;2?2W2T2R2U2B2A2?2W2S2U2:2;2?2S2S2:266666666I242T2Z2Q2:2@2G2W2T2R2U2S2:2?2W2S2U2B2A2@2D2S2S2:2#"66666666# ?2Y2L2R2B2A2?2S2W2T2R2]2Q2:2?2K2O2U2S2:2?2S2S2S2:266666666I242T2Z2Q2:2?2P2_2T2Z2Q2U2:23242T2U2S2:2?2S2S22232226666666 6# ?2Y2L2R2:2?2W2S2T2V2R2U2:2  ?2T2U22232?2S2S2:2"  222266666666I242T2R2:2?2W2P2\2V2R2U2:2;2?2T2U2:2 ?2S22232  22222266 66666# ?2T2R2B2A2?2W2T2V2V2R2U2B2A2?2T2U2:2@2D2S2:2"22222266666666?2T2Z2Q2:2?2W2T2V2V2R2U2S2:2?2T2U2:2?2S2S2:2  222222266666#?2Y2L2R2:2?2W2T2V2V2R2]2Q2:2?2T2U2:2@2D2S22232222z222x2266666#66I242T2R2B2A2>2?2T2Y2L2V2Z2Q2U2:2>2?2T2U2:2?2S2S2:2"    2222y2y22}#666666666# ?2T2R2S2:2>2?2Y2O2T2V2V2R2U2:2>2>2@2D2T2U2:2@2D2S2S2:2  22222226666666?2T2Z2Q2:2>2?2S2W2Y2L2V2R2U2B2A2>2<22_2U2:2?2S2S22232  2222222}#666666#66#6?2T2V2R2:2>2?2S2Y2O2T2V2R2]2Q2B2C2D2T2M2K2:2?2S2S2:2" "  2222222}#666666666?2T2V2R2:2>2I242S2W2T2V2Z2Q2U2S2S22_2U22232?2S22232 "222222266666#6666#?2Y2L2R2:2>2>2?2S2W2T2V2V2R2U2S2S2T2S2U2:2"?2S2:2"  #~z222x22}|6666666#I242T2R2:2>2>2?2S2W2T2V2V2R2]2^2^2_2S2U2:2?2S2:2 """  2y2y2226666#666#66# ?2T2R2:2# >2I242W2Y2L2V2Z2Q2S2S2S2M2K2:2?2S20"  "#~22}|#666666666?2T2R20" >2>2?2Y2O2T2V2V2Z2Q2S2M2K2S2:2#!!"  "22666666666##1T2R28 " >2>2I242W2Y2L2V2V2R2S2U2S22232 "#~}|666666669T2R28 ">2>2>2?2Y2O2T2V2V2R2M2K22232"   "66666666#6##9T2R28# >2>2?2S2W2T2V2V2R2U2S2:2>2 "  ##6666666669T2R28#>2>2I242W2T2V2V2R2U2S2:2" "  666666669T2R28>2>2>2?2W2Y2L2V2R2U2S2:2 " "  666666#6669T2R28## >2>2?2Y2O2T2V2R2U22232 " "666666666##)) ## >2I242W2T2V2R2U2:2>2 "66666666#  >2>2?2W2T2J2K2U2:2"66666#6666# " "### >2?2W2T2R2S2U2:2 "  666666666# ">2?2W2T2R2S2U2:2 "66666666 "##>2?2W2T2R2S2U2:2 " "66#6666666#">2?2W2T2R22U2:2666666666#>2?2W2T2R2S2U2:2666666666>2?2W2T2R2S2U2:2666666666>2?2W2T2R2S2U2:2666666666>2?2W2T2Z22U2:26666666#66 ">2?2W2T2V2R2U2:2666666666>2?2W2T2V2R2U2:2666666666>2?2W2T2V2R2U2:2 \ No newline at end of file
diff --git a/data/maps/Underwater4/border.bin b/data/maps/Underwater4/border.bin
new file mode 100644
index 000000000..b15c94f96
--- /dev/null
+++ b/data/maps/Underwater4/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Underwater4/connections.s b/data/maps/Underwater4/connections.s
new file mode 100644
index 000000000..a2e01faf3
--- /dev/null
+++ b/data/maps/Underwater4/connections.s
@@ -0,0 +1,8 @@
+Underwater4_MapConnectionsList:: @ 8308D88
+ connection up, 0, Underwater3, 0
+ connection emerge, 0, Route128, 0
+
+Underwater4_MapConnections:: @ 8308DA0
+ .4byte 0x2
+ .4byte Underwater4_MapConnectionsList
+
diff --git a/data/maps/Underwater4/header.s b/data/maps/Underwater4/header.s
new file mode 100644
index 000000000..d8624334e
--- /dev/null
+++ b/data/maps/Underwater4/header.s
@@ -0,0 +1,15 @@
+Underwater4:: @ 8305A14
+ .4byte Underwater4_MapAttributes
+ .4byte Underwater4_MapEvents
+ .4byte Underwater4_MapScripts
+ .4byte Underwater4_MapConnections
+ .2byte 411
+ .2byte 53
+ .byte 53
+ .byte 0
+ .byte 14
+ .byte 5
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Underwater4/map.bin b/data/maps/Underwater4/map.bin
new file mode 100644
index 000000000..23f987681
--- /dev/null
+++ b/data/maps/Underwater4/map.bin
@@ -0,0 +1 @@
+666666666  >2?2W2T2V2R2U2:2666666666>2?2W2T2V2R2U2:2666666666>2?2W2K2L2R2U2:2666666666# ?2K2O2T2R2U2:2666666666 3242W2T2R2U2:2666666666 "# ?2W2T2R2U2:2 66666666#?2W2T2R2U2:2#666666666 "?2W2T2R2U2B2A2 666 666666?2W2T2R2]2Q2B2C2C2C2A2 # #6666666666?2W2T2Z2Q2]2[2[2[2Q2B2C2C2C2A2 #   #6666666666#)aV2V2Z2[2[2[2Q2]2[2[2[2Q2:2;2;2;2  666666666 6 6aV2V2V2V2V2Z2[2[2[2Q2U2B2A2@2C2C2C2C2C2C2C2C2C28 666666666##))))))aV2V2R2]2Q2B2C2A2@2C2C2D2P2[2[2[2[2[2[2[2[28666666666 #)))a]2[2Q2B2C2C2C2C2D2P2[2[2_2P2[2[2[2[2[2[2`#666666 66666666 "#a[2]2[2[2[2[2[2[2_2P2[2[2\2V2V2V2V2`)"66666666666666##a[2[2[2[2[2[2[2[2\2V2V2`))))"66666666666666#aV2V2V2V2V2V2V2V2`)"66666666666d2V2V2V2V2V2`)"@2C2A2 6666 6666666666@2C2C2A2<2L2V2V2V2`" @2D22B2C2A26666666 6666666<222:2<2T2L2V2b28 " #<2P2[2[2Q2B2C2C2C2C2C2A26666666666666@2A2## 12:2@2D2T2T2J20 #1W2P2Q2]2[2[2[2[2[2Q2B2C2A2666666666666666@2D2B2A2" !""<2P2_2T2R28#aT2Z2[2[2[2[2[2Q2]2[2Q2B2C26666 66666666666<2P2Q2:2<2T2P2V2R28#aV2V2V2V2V2V2Z2[2[2]2[2`"666666666666666<2T2R2:2<2T2T2V2R28#)aV2V2V2V2`))))"666666666666666#1T2R2B2A2@2D2T2T2V2R28#))))"666666666666666#aZ2Q2B2C2A2efg@2C2D2P2_2T2V2R28  6666666666666666#aZ2[2Q2B2C2A2mn2o@2D2P2[2_2P2V2`)"# 6666666666666666#aQ2]2[2Q2B2C2C2C2A2;2;2;2;2;2<2P2_2P2[2`)" # "#6666666666666666#)aQ2]2[2[2[2Q2B2C2C2C2C2C2D2T2P2V2` "6666666666666666#))a[2Q2]2[2[2[2[2[2[2[2_2T2` "6666666666666666 #aZ2[2[2[2[2[2[2[2[2[2b2 6666666666666666 "##)aV2V2V2V2V2V2V2J2:2 " "666666666666666 d2V2V2V2V2V2J2U2:2 " "6666666666666666@2D2L2V2V2V2V2R2U2B2A2 " "6666666 666666666#<2P2_2L2V2V2V2R2]2Q2B2C2C2C2C2C2C2C2C2A2 6666666666666666#<2T2P2\2V2`)))a[2[2[2[2[2[2[2[2Q2:26666666666666666#@2D2T2`))"#))a[2[2[2[2`))"6666666666666666# @2C2C2D2P2`" #))))" "66666666666666666""# )))))" "#66666666666666666#"#" \ No newline at end of file
diff --git a/data/maps/Underwater_Route134/border.bin b/data/maps/Underwater_Route134/border.bin
new file mode 100644
index 000000000..b15c94f96
--- /dev/null
+++ b/data/maps/Underwater_Route134/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Underwater_Route134/header.s b/data/maps/Underwater_Route134/header.s
new file mode 100644
index 000000000..e6e1240ec
--- /dev/null
+++ b/data/maps/Underwater_Route134/header.s
@@ -0,0 +1,15 @@
+Underwater_Route134:: @ 83074FC
+ .4byte Underwater_Route134_MapAttributes
+ .4byte Underwater_Route134_MapEvents
+ .4byte Underwater_Route134_MapScripts
+ .4byte 0x0
+ .2byte 411
+ .2byte 283
+ .byte 79
+ .byte 0
+ .byte 14
+ .byte 5
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Underwater_Route134/map.bin b/data/maps/Underwater_Route134/map.bin
new file mode 100644
index 000000000..77bdd37aa
--- /dev/null
+++ b/data/maps/Underwater_Route134/map.bin
@@ -0,0 +1,2 @@
+(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2### # (2(2$(2(2(2
+""""# +,-  " \ No newline at end of file
diff --git a/data/maps/Underwater_SeafloorCavern/border.bin b/data/maps/Underwater_SeafloorCavern/border.bin
new file mode 100644
index 000000000..b15c94f96
--- /dev/null
+++ b/data/maps/Underwater_SeafloorCavern/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Underwater_SeafloorCavern/header.s b/data/maps/Underwater_SeafloorCavern/header.s
new file mode 100644
index 000000000..f2abedf3a
--- /dev/null
+++ b/data/maps/Underwater_SeafloorCavern/header.s
@@ -0,0 +1,15 @@
+Underwater_SeafloorCavern:: @ 8307048
+ .4byte Underwater_SeafloorCavern_MapAttributes
+ .4byte Underwater_SeafloorCavern_MapEvents
+ .4byte Underwater_SeafloorCavern_MapScripts
+ .4byte 0x0
+ .2byte 411
+ .2byte 147
+ .byte 69
+ .byte 0
+ .byte 14
+ .byte 5
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Underwater_SeafloorCavern/map.bin b/data/maps/Underwater_SeafloorCavern/map.bin
new file mode 100644
index 000000000..4cacc495e
--- /dev/null
+++ b/data/maps/Underwater_SeafloorCavern/map.bin
@@ -0,0 +1,2 @@
+6666(22222(2(2(2(2(2(2(2(2### (2(2$(2(2(2
+"""# +,-  " \ No newline at end of file
diff --git a/data/maps/Underwater_SealedChamber/border.bin b/data/maps/Underwater_SealedChamber/border.bin
new file mode 100644
index 000000000..b15c94f96
--- /dev/null
+++ b/data/maps/Underwater_SealedChamber/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Underwater_SealedChamber/header.s b/data/maps/Underwater_SealedChamber/header.s
new file mode 100644
index 000000000..d0cca5ac5
--- /dev/null
+++ b/data/maps/Underwater_SealedChamber/header.s
@@ -0,0 +1,15 @@
+Underwater_SealedChamber:: @ 8307518
+ .4byte Underwater_SealedChamber_MapAttributes
+ .4byte Underwater_SealedChamber_MapEvents
+ .4byte Underwater_SealedChamber_MapScripts
+ .4byte 0x0
+ .2byte 411
+ .2byte 284
+ .byte 79
+ .byte 0
+ .byte 14
+ .byte 5
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Underwater_SealedChamber/map.bin b/data/maps/Underwater_SealedChamber/map.bin
new file mode 100644
index 000000000..5ac0b4a73
--- /dev/null
+++ b/data/maps/Underwater_SealedChamber/map.bin
@@ -0,0 +1 @@
+efgmno22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222  2222222#222222222222222222222  222222222222#2222222  222222222222#2222222  222222222222222222222222#222222  22222222222222222222222222222222222222222222     2222222222222222222222222222222p2222222222C2C2C2222222222222S2S2S2222222# 22222S2S2S22222 "#            " \ No newline at end of file
diff --git a/data/maps/Underwater_SootopolisCity/border.bin b/data/maps/Underwater_SootopolisCity/border.bin
new file mode 100644
index 000000000..b15c94f96
--- /dev/null
+++ b/data/maps/Underwater_SootopolisCity/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/Underwater_SootopolisCity/header.s b/data/maps/Underwater_SootopolisCity/header.s
new file mode 100644
index 000000000..675354732
--- /dev/null
+++ b/data/maps/Underwater_SootopolisCity/header.s
@@ -0,0 +1,15 @@
+Underwater_SootopolisCity:: @ 8306DFC
+ .4byte Underwater_SootopolisCity_MapAttributes
+ .4byte Underwater_SootopolisCity_MapEvents
+ .4byte Underwater_SootopolisCity_MapScripts
+ .4byte 0x0
+ .2byte 411
+ .2byte 131
+ .byte 54
+ .byte 0
+ .byte 14
+ .byte 5
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/Underwater_SootopolisCity/map.bin b/data/maps/Underwater_SootopolisCity/map.bin
new file mode 100644
index 000000000..71346ab72
--- /dev/null
+++ b/data/maps/Underwater_SootopolisCity/map.bin
@@ -0,0 +1,2 @@
+(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2(2### # (2(2(2$(2(2(2(2(2
+""""#  +,-    " \ No newline at end of file
diff --git a/data/maps/UnknownMap_25_29/border.bin b/data/maps/UnknownMap_25_29/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/UnknownMap_25_29/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/UnknownMap_25_29/header.s b/data/maps/UnknownMap_25_29/header.s
new file mode 100644
index 000000000..e255354ec
--- /dev/null
+++ b/data/maps/UnknownMap_25_29/header.s
@@ -0,0 +1,15 @@
+UnknownMap_25_29:: @ 8307A04
+ .4byte UnknownMap_25_29_MapAttributes
+ .4byte UnknownMap_25_29_MapEvents
+ .4byte UnknownMap_25_29_MapScripts
+ .4byte 0x0
+ .2byte 357
+ .2byte 227
+ .byte 87
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/UnknownMap_25_29/map.bin b/data/maps/UnknownMap_25_29/map.bin
new file mode 100644
index 000000000..5fc1e81ec
--- /dev/null
+++ b/data/maps/UnknownMap_25_29/map.bin
@@ -0,0 +1 @@
+  \ No newline at end of file
diff --git a/data/maps/UnknownMap_25_30/border.bin b/data/maps/UnknownMap_25_30/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/UnknownMap_25_30/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/UnknownMap_25_30/header.s b/data/maps/UnknownMap_25_30/header.s
new file mode 100644
index 000000000..965cb5601
--- /dev/null
+++ b/data/maps/UnknownMap_25_30/header.s
@@ -0,0 +1,15 @@
+UnknownMap_25_30:: @ 8307A20
+ .4byte UnknownMap_25_30_MapAttributes
+ .4byte UnknownMap_25_30_MapEvents
+ .4byte UnknownMap_25_30_MapScripts
+ .4byte 0x0
+ .2byte 357
+ .2byte 228
+ .byte 87
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/UnknownMap_25_30/map.bin b/data/maps/UnknownMap_25_30/map.bin
new file mode 100644
index 000000000..5fc1e81ec
--- /dev/null
+++ b/data/maps/UnknownMap_25_30/map.bin
@@ -0,0 +1 @@
+  \ No newline at end of file
diff --git a/data/maps/UnknownMap_25_31/border.bin b/data/maps/UnknownMap_25_31/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/UnknownMap_25_31/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/UnknownMap_25_31/header.s b/data/maps/UnknownMap_25_31/header.s
new file mode 100644
index 000000000..88791a122
--- /dev/null
+++ b/data/maps/UnknownMap_25_31/header.s
@@ -0,0 +1,15 @@
+UnknownMap_25_31:: @ 8307A3C
+ .4byte UnknownMap_25_31_MapAttributes
+ .4byte UnknownMap_25_31_MapEvents
+ .4byte UnknownMap_25_31_MapScripts
+ .4byte 0x0
+ .2byte 357
+ .2byte 229
+ .byte 87
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/UnknownMap_25_31/map.bin b/data/maps/UnknownMap_25_31/map.bin
new file mode 100644
index 000000000..5fc1e81ec
--- /dev/null
+++ b/data/maps/UnknownMap_25_31/map.bin
@@ -0,0 +1 @@
+  \ No newline at end of file
diff --git a/data/maps/UnknownMap_25_32/border.bin b/data/maps/UnknownMap_25_32/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/UnknownMap_25_32/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/UnknownMap_25_32/header.s b/data/maps/UnknownMap_25_32/header.s
new file mode 100644
index 000000000..2447edb10
--- /dev/null
+++ b/data/maps/UnknownMap_25_32/header.s
@@ -0,0 +1,15 @@
+UnknownMap_25_32:: @ 8307A58
+ .4byte UnknownMap_25_32_MapAttributes
+ .4byte UnknownMap_25_32_MapEvents
+ .4byte UnknownMap_25_32_MapScripts
+ .4byte 0x0
+ .2byte 357
+ .2byte 230
+ .byte 87
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/UnknownMap_25_32/map.bin b/data/maps/UnknownMap_25_32/map.bin
new file mode 100644
index 000000000..5fc1e81ec
--- /dev/null
+++ b/data/maps/UnknownMap_25_32/map.bin
@@ -0,0 +1 @@
+  \ No newline at end of file
diff --git a/data/maps/UnknownMap_25_33/border.bin b/data/maps/UnknownMap_25_33/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/UnknownMap_25_33/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/UnknownMap_25_33/header.s b/data/maps/UnknownMap_25_33/header.s
new file mode 100644
index 000000000..1236ec9d1
--- /dev/null
+++ b/data/maps/UnknownMap_25_33/header.s
@@ -0,0 +1,15 @@
+UnknownMap_25_33:: @ 8307A74
+ .4byte UnknownMap_25_33_MapAttributes
+ .4byte UnknownMap_25_33_MapEvents
+ .4byte UnknownMap_25_33_MapScripts
+ .4byte 0x0
+ .2byte 357
+ .2byte 231
+ .byte 87
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/UnknownMap_25_33/map.bin b/data/maps/UnknownMap_25_33/map.bin
new file mode 100644
index 000000000..5fc1e81ec
--- /dev/null
+++ b/data/maps/UnknownMap_25_33/map.bin
@@ -0,0 +1 @@
+  \ No newline at end of file
diff --git a/data/maps/UnknownMap_25_34/border.bin b/data/maps/UnknownMap_25_34/border.bin
new file mode 100644
index 000000000..19d906679
--- /dev/null
+++ b/data/maps/UnknownMap_25_34/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/UnknownMap_25_34/header.s b/data/maps/UnknownMap_25_34/header.s
new file mode 100644
index 000000000..69a090f05
--- /dev/null
+++ b/data/maps/UnknownMap_25_34/header.s
@@ -0,0 +1,15 @@
+UnknownMap_25_34:: @ 8307A90
+ .4byte UnknownMap_25_34_MapAttributes
+ .4byte UnknownMap_25_34_MapEvents
+ .4byte UnknownMap_25_34_MapScripts
+ .4byte 0x0
+ .2byte 357
+ .2byte 232
+ .byte 87
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/UnknownMap_25_34/map.bin b/data/maps/UnknownMap_25_34/map.bin
new file mode 100644
index 000000000..5fc1e81ec
--- /dev/null
+++ b/data/maps/UnknownMap_25_34/map.bin
@@ -0,0 +1 @@
+  \ No newline at end of file
diff --git a/data/maps/VerdanturfTown/border.bin b/data/maps/VerdanturfTown/border.bin
new file mode 100644
index 000000000..864ac15fa
--- /dev/null
+++ b/data/maps/VerdanturfTown/border.bin
Binary files differ
diff --git a/data/maps/VerdanturfTown/connections.s b/data/maps/VerdanturfTown/connections.s
new file mode 100644
index 000000000..f2b6b7767
--- /dev/null
+++ b/data/maps/VerdanturfTown/connections.s
@@ -0,0 +1,8 @@
+VerdanturfTown_MapConnectionsList:: @ 83086A4
+ connection up, -80, Route116, 0
+ connection right, 0, Route117, 0
+
+VerdanturfTown_MapConnections:: @ 83086BC
+ .4byte 0x2
+ .4byte VerdanturfTown_MapConnectionsList
+
diff --git a/data/maps/VerdanturfTown/header.s b/data/maps/VerdanturfTown/header.s
new file mode 100644
index 000000000..c2a02a8f5
--- /dev/null
+++ b/data/maps/VerdanturfTown/header.s
@@ -0,0 +1,15 @@
+VerdanturfTown:: @ 83055D0
+ .4byte VerdanturfTown_MapAttributes
+ .4byte VerdanturfTown_MapEvents
+ .4byte VerdanturfTown_MapScripts
+ .4byte VerdanturfTown_MapConnections
+ .2byte 398
+ .2byte 15
+ .byte 5
+ .byte 0
+ .byte 2
+ .byte 1
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/VerdanturfTown/map.bin b/data/maps/VerdanturfTown/map.bin
new file mode 100644
index 000000000..0dbece956
--- /dev/null
+++ b/data/maps/VerdanturfTown/map.bin
Binary files differ
diff --git a/data/maps/VerdanturfTown_ContestHall/header.s b/data/maps/VerdanturfTown_ContestHall/header.s
new file mode 100644
index 000000000..2394e9648
--- /dev/null
+++ b/data/maps/VerdanturfTown_ContestHall/header.s
@@ -0,0 +1,15 @@
+VerdanturfTown_ContestHall:: @ 8305D94
+ .4byte VerdanturfTown_ContestHall_MapAttributes
+ .4byte VerdanturfTown_ContestHall_MapEvents
+ .4byte VerdanturfTown_ContestHall_MapScripts
+ .4byte 0x0
+ .2byte 452
+ .2byte 73
+ .byte 5
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/VerdanturfTown_ContestLobby/header.s b/data/maps/VerdanturfTown_ContestLobby/header.s
new file mode 100644
index 000000000..b3b3a0272
--- /dev/null
+++ b/data/maps/VerdanturfTown_ContestLobby/header.s
@@ -0,0 +1,15 @@
+VerdanturfTown_ContestLobby:: @ 8305D78
+ .4byte VerdanturfTown_ContestLobby_MapAttributes
+ .4byte VerdanturfTown_ContestLobby_MapEvents
+ .4byte VerdanturfTown_ContestLobby_MapScripts
+ .4byte 0x0
+ .2byte 452
+ .2byte 72
+ .byte 5
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/VerdanturfTown_FriendshipRatersHouse/header.s b/data/maps/VerdanturfTown_FriendshipRatersHouse/header.s
new file mode 100644
index 000000000..6db80f2dc
--- /dev/null
+++ b/data/maps/VerdanturfTown_FriendshipRatersHouse/header.s
@@ -0,0 +1,15 @@
+VerdanturfTown_FriendshipRatersHouse:: @ 8305E20
+ .4byte VerdanturfTown_FriendshipRatersHouse_MapAttributes
+ .4byte VerdanturfTown_FriendshipRatersHouse_MapEvents
+ .4byte VerdanturfTown_FriendshipRatersHouse_MapScripts
+ .4byte 0x0
+ .2byte 398
+ .2byte 60
+ .byte 5
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/VerdanturfTown_House/header.s b/data/maps/VerdanturfTown_House/header.s
new file mode 100644
index 000000000..0a0aed8df
--- /dev/null
+++ b/data/maps/VerdanturfTown_House/header.s
@@ -0,0 +1,15 @@
+VerdanturfTown_House:: @ 8305E3C
+ .4byte VerdanturfTown_House_MapAttributes
+ .4byte VerdanturfTown_House_MapEvents
+ .4byte VerdanturfTown_House_MapScripts
+ .4byte 0x0
+ .2byte 398
+ .2byte 59
+ .byte 5
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/VerdanturfTown_Mart/header.s b/data/maps/VerdanturfTown_Mart/header.s
new file mode 100644
index 000000000..e73df9a3b
--- /dev/null
+++ b/data/maps/VerdanturfTown_Mart/header.s
@@ -0,0 +1,15 @@
+VerdanturfTown_Mart:: @ 8305DB0
+ .4byte VerdanturfTown_Mart_MapAttributes
+ .4byte VerdanturfTown_Mart_MapEvents
+ .4byte VerdanturfTown_Mart_MapScripts
+ .4byte 0x0
+ .2byte 404
+ .2byte 63
+ .byte 5
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/VerdanturfTown_PokemonCenter_1F/header.s b/data/maps/VerdanturfTown_PokemonCenter_1F/header.s
new file mode 100644
index 000000000..3ec212117
--- /dev/null
+++ b/data/maps/VerdanturfTown_PokemonCenter_1F/header.s
@@ -0,0 +1,15 @@
+VerdanturfTown_PokemonCenter_1F:: @ 8305DCC
+ .4byte VerdanturfTown_PokemonCenter_1F_MapAttributes
+ .4byte VerdanturfTown_PokemonCenter_1F_MapEvents
+ .4byte VerdanturfTown_PokemonCenter_1F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 61
+ .byte 5
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/VerdanturfTown_PokemonCenter_2F/header.s b/data/maps/VerdanturfTown_PokemonCenter_2F/header.s
new file mode 100644
index 000000000..a4f35498f
--- /dev/null
+++ b/data/maps/VerdanturfTown_PokemonCenter_2F/header.s
@@ -0,0 +1,15 @@
+VerdanturfTown_PokemonCenter_2F:: @ 8305DE8
+ .4byte VerdanturfTown_PokemonCenter_2F_MapAttributes
+ .4byte VerdanturfTown_PokemonCenter_2F_MapEvents
+ .4byte VerdanturfTown_PokemonCenter_2F_MapScripts
+ .4byte 0x0
+ .2byte 400
+ .2byte 62
+ .byte 5
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/VerdanturfTown_WandasHouse/border.bin b/data/maps/VerdanturfTown_WandasHouse/border.bin
new file mode 100644
index 000000000..f496f458e
--- /dev/null
+++ b/data/maps/VerdanturfTown_WandasHouse/border.bin
Binary files differ
diff --git a/data/maps/VerdanturfTown_WandasHouse/header.s b/data/maps/VerdanturfTown_WandasHouse/header.s
new file mode 100644
index 000000000..5e5a697f5
--- /dev/null
+++ b/data/maps/VerdanturfTown_WandasHouse/header.s
@@ -0,0 +1,15 @@
+VerdanturfTown_WandasHouse:: @ 8305E04
+ .4byte VerdanturfTown_WandasHouse_MapAttributes
+ .4byte VerdanturfTown_WandasHouse_MapEvents
+ .4byte VerdanturfTown_WandasHouse_MapScripts
+ .4byte 0x0
+ .2byte 398
+ .2byte 76
+ .byte 5
+ .byte 0
+ .byte 0
+ .byte 8
+ .2byte 0
+ .byte 0
+ .byte 0
+
diff --git a/data/maps/VerdanturfTown_WandasHouse/map.bin b/data/maps/VerdanturfTown_WandasHouse/map.bin
new file mode 100644
index 000000000..95d14d3c4
--- /dev/null
+++ b/data/maps/VerdanturfTown_WandasHouse/map.bin
Binary files differ
diff --git a/data/maps/VictoryRoad_1F/border.bin b/data/maps/VictoryRoad_1F/border.bin
new file mode 100644
index 000000000..423a0732e
--- /dev/null
+++ b/data/maps/VictoryRoad_1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/VictoryRoad_1F/header.s b/data/maps/VictoryRoad_1F/header.s
new file mode 100644
index 000000000..e4b62cdd5
--- /dev/null
+++ b/data/maps/VictoryRoad_1F/header.s
@@ -0,0 +1,15 @@
+VictoryRoad_1F:: @ 8307224
+ .4byte VictoryRoad_1F_MapAttributes
+ .4byte VictoryRoad_1F_MapEvents
+ .4byte VictoryRoad_1F_MapScripts
+ .4byte 0x0
+ .2byte 429
+ .2byte 164
+ .byte 70
+ .byte 0
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/VictoryRoad_1F/map.bin b/data/maps/VictoryRoad_1F/map.bin
new file mode 100644
index 000000000..a78316ef9
--- /dev/null
+++ b/data/maps/VictoryRoad_1F/map.bin
@@ -0,0 +1,10 @@
+2222222222622222222222'222222222226222    XYZ #   
+222         #222        #F222222222222BBBBBBBBBBBB2222BBBBBBBBBBBBBB2222BBBBBBBBBBBBBB#  #
+222222     
+BBBBBBBBBBBB  B B B"22222#BBBBBBBBBBBBBBBBBBB B B B B"BBBBBBBBBBBBBBBBBBBBBBBBBB22222BB2222222BB222222222222BB222222222222222222222222222BB22222222222222222222222BB222     
+2222222222222222222222BBBBBBB B B B"22222222222222222222222BBBBBBBBBB22     
+2222   
+2222222222  B B BBBBBB B"22L6Q6M6222P6BBBBBBBBB2222222222222228#2222222222222222222228#
+222222222222222222228222222222222222222     
+2228222222222222222222  B B B"2228#   #22222222BBBBBBBB B B B"22222222222222#22BBBBBBBBBBB222222222222222 #B2222282222222222   ###B222228222222222#  B B#B#BB22222222222@QI22222222  ## #  B#BBBBBB22222'62222222822222222  B B B B B B#BBBBBBBB#   
+2262222222822     #              ##   "#     XYZ   # #      #            ## "#               #   #  ##"#                      ##                            # \ No newline at end of file
diff --git a/data/maps/VictoryRoad_B1F/border.bin b/data/maps/VictoryRoad_B1F/border.bin
new file mode 100644
index 000000000..423a0732e
--- /dev/null
+++ b/data/maps/VictoryRoad_B1F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/VictoryRoad_B1F/header.s b/data/maps/VictoryRoad_B1F/header.s
new file mode 100644
index 000000000..40f7a58e4
--- /dev/null
+++ b/data/maps/VictoryRoad_B1F/header.s
@@ -0,0 +1,15 @@
+VictoryRoad_B1F:: @ 8307240
+ .4byte VictoryRoad_B1F_MapAttributes
+ .4byte VictoryRoad_B1F_MapEvents
+ .4byte VictoryRoad_B1F_MapScripts
+ .4byte 0x0
+ .2byte 429
+ .2byte 286
+ .byte 70
+ .byte 1
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/VictoryRoad_B1F/map.bin b/data/maps/VictoryRoad_B1F/map.bin
new file mode 100644
index 000000000..706c96974
--- /dev/null
+++ b/data/maps/VictoryRoad_B1F/map.bin
@@ -0,0 +1,25 @@
+BBBBBBBBB2222222BBBB2222222P22222222#
+222BBBB2  
+2282222222222 
+222#
+222BBBB222R2222  
+2#222#
+22 #BBBB2222222   
+2# #22#2#BBBBB#
+2  
+22  B B B BBBBB B B B B
+2fBBBf#"2222BBBBBBBBBBBB2BBBBB2222222222222BfBB#    
+2#2222222#"#  "2222222222P2222222222#"2222222  
+22228222# 
+22222 ##       ## 
+228222#  
+22  B B#B #22R222 #B B B BBBBBBBB222P22622#   
+22BBBBBBBBBBB2222222228222222222BBB2222222222R222 #2222BBB22#      
+2222222222#22BB #22# 
+2222# 
+2222#22BB22222#222#    #222BB22#22# 
+22222BB22#
+222#
+222222#
+2222222222222222222222222P222#
+222222222222222222222282222222222222 #2222222222R222#                 ##              ##                                          ##                                            # \ No newline at end of file
diff --git a/data/maps/VictoryRoad_B2F/border.bin b/data/maps/VictoryRoad_B2F/border.bin
new file mode 100644
index 000000000..423a0732e
--- /dev/null
+++ b/data/maps/VictoryRoad_B2F/border.bin
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/data/maps/VictoryRoad_B2F/header.s b/data/maps/VictoryRoad_B2F/header.s
new file mode 100644
index 000000000..fa9047510
--- /dev/null
+++ b/data/maps/VictoryRoad_B2F/header.s
@@ -0,0 +1,15 @@
+VictoryRoad_B2F:: @ 830725C
+ .4byte VictoryRoad_B2F_MapAttributes
+ .4byte VictoryRoad_B2F_MapEvents
+ .4byte VictoryRoad_B2F_MapScripts
+ .4byte 0x0
+ .2byte 429
+ .2byte 287
+ .byte 70
+ .byte 1
+ .byte 0
+ .byte 4
+ .2byte 0
+ .byte 1
+ .byte 0
+
diff --git a/data/maps/VictoryRoad_B2F/map.bin b/data/maps/VictoryRoad_B2F/map.bin
new file mode 100644
index 000000000..682c31764
--- /dev/null
+++ b/data/maps/VictoryRoad_B2F/map.bin
@@ -0,0 +1 @@
+2{{{{{{{{{{{{{{{{{{{{{{2222{{{{{{{{{{{{{{{{{{{{{{22222222{{{{{{{{{{{{{{{{{{{{{{222222222{{{{{TUUUV{{{{{{{{{{{{22222222222W3W3W3y{W3W3W3W3W3W3W3W3y{{{222  "22222222222{22222222W3W3y{ #B22#B"222222222222{222222222222{222222222222222{22222222222{222222222222222222222Z[tuv222222222{222XY{{{{{{{{22222222222tuv{{PQ{{{{{{{22222222{{{{{{{{{{{{{{{{XY{{{{{{{{{{x  #222222###UUUV{{{{{{{{{TUUUUUUUUUUV{{  2#2222222#     "V{{{TUUUU         "D2D2D22222222#2 2 2  B B"D2D2D2     #  B B B B B BBBBBBBB222222222BBBBBBBBB B B B B#BBBBBBBBBBBBBB2222BBBBBBBBBBBBBBBBBBB222NRRRO222BBBBBBBB22222222222222222222222222222222Q222222222222229222222222222222222622222S2222222222222222222226#             ##              #6#               ##                  ##                                          ##                                            # \ No newline at end of file
diff --git a/data/maps/_assets.s b/data/maps/_assets.s
new file mode 100644
index 000000000..2f2655b1c
--- /dev/null
+++ b/data/maps/_assets.s
@@ -0,0 +1,4584 @@
+PetalburgCity_MapBorder:: @ 8287264
+ .incbin "data/maps/PetalburgCity/border.bin"
+
+PetalburgCity_MapBlockdata:: @ 828726C
+ .incbin "data/maps/PetalburgCity/map.bin"
+
+PetalburgCity_MapAttributes:: @ 8287974
+ .4byte 0x1e
+ .4byte 0x1e
+ .4byte PetalburgCity_MapBorder
+ .4byte PetalburgCity_MapBlockdata
+ .4byte PetalburgCity_Tileset
+ .4byte PetalburgCity_Tileset2
+
+SlateportCity_MapBorder:: @ 828798C
+ .incbin "data/maps/SlateportCity/border.bin"
+
+SlateportCity_MapBlockdata:: @ 8287994
+ .incbin "data/maps/SlateportCity/map.bin"
+
+SlateportCity_MapAttributes:: @ 8288C54
+ .4byte 0x28
+ .4byte 0x3c
+ .4byte SlateportCity_MapBorder
+ .4byte SlateportCity_MapBlockdata
+ .4byte SlateportCity_Tileset
+ .4byte SlateportCity_Tileset2
+
+MauvilleCity_MapBorder:: @ 8288C6C
+ .incbin "data/maps/MauvilleCity/border.bin"
+
+MauvilleCity_MapBlockdata:: @ 8288C74
+ .incbin "data/maps/MauvilleCity/map.bin"
+
+MauvilleCity_MapAttributes:: @ 82892B4
+ .4byte 0x28
+ .4byte 0x14
+ .4byte MauvilleCity_MapBorder
+ .4byte MauvilleCity_MapBlockdata
+ .4byte MauvilleCity_Tileset
+ .4byte MauvilleCity_Tileset2
+
+RustboroCity_MapBorder:: @ 82892CC
+ .incbin "data/maps/RustboroCity/border.bin"
+
+RustboroCity_MapBlockdata:: @ 82892D4
+ .incbin "data/maps/RustboroCity/map.bin"
+
+RustboroCity_MapAttributes:: @ 828A594
+ .4byte 0x28
+ .4byte 0x3c
+ .4byte RustboroCity_MapBorder
+ .4byte RustboroCity_MapBlockdata
+ .4byte RustboroCity_Tileset
+ .4byte RustboroCity_Tileset2
+
+FortreeCity_MapBorder:: @ 828A5AC
+ .incbin "data/maps/FortreeCity/border.bin"
+
+FortreeCity_MapBlockdata:: @ 828A5B4
+ .incbin "data/maps/FortreeCity/map.bin"
+
+FortreeCity_MapAttributes:: @ 828ABF4
+ .4byte 0x28
+ .4byte 0x14
+ .4byte FortreeCity_MapBorder
+ .4byte FortreeCity_MapBlockdata
+ .4byte FortreeCity_Tileset
+ .4byte FortreeCity_Tileset2
+
+LilycoveCity_MapBorder:: @ 828AC0C
+ .incbin "data/maps/LilycoveCity/border.bin"
+
+LilycoveCity_MapBlockdata:: @ 828AC14
+ .incbin "data/maps/LilycoveCity/map.bin"
+
+LilycoveCity_MapAttributes:: @ 828C514
+ .4byte 0x50
+ .4byte 0x28
+ .4byte LilycoveCity_MapBorder
+ .4byte LilycoveCity_MapBlockdata
+ .4byte LilycoveCity_Tileset
+ .4byte LilycoveCity_Tileset2
+
+MossdeepCity_MapBorder:: @ 828C52C
+ .incbin "data/maps/MossdeepCity/border.bin"
+
+MossdeepCity_MapBlockdata:: @ 828C534
+ .incbin "data/maps/MossdeepCity/map.bin"
+
+MossdeepCity_MapAttributes:: @ 828DE34
+ .4byte 0x50
+ .4byte 0x28
+ .4byte MossdeepCity_MapBorder
+ .4byte MossdeepCity_MapBlockdata
+ .4byte MossdeepCity_Tileset
+ .4byte MossdeepCity_Tileset2
+
+SootopolisCity_MapBorder:: @ 828DE4C
+ .incbin "data/maps/SootopolisCity/border.bin"
+
+SootopolisCity_MapBlockdata:: @ 828DE54
+ .incbin "data/maps/SootopolisCity/map.bin"
+
+SootopolisCity_MapAttributes:: @ 828FA74
+ .4byte 0x3c
+ .4byte 0x3c
+ .4byte SootopolisCity_MapBorder
+ .4byte SootopolisCity_MapBlockdata
+ .4byte SootopolisCity_Tileset
+ .4byte SootopolisCity_Tileset2
+
+EverGrandeCity_MapBorder:: @ 828FA8C
+ .incbin "data/maps/EverGrandeCity/border.bin"
+
+EverGrandeCity_MapBlockdata:: @ 828FA94
+ .incbin "data/maps/EverGrandeCity/map.bin"
+
+EverGrandeCity_MapAttributes:: @ 8291394
+ .4byte 0x28
+ .4byte 0x50
+ .4byte EverGrandeCity_MapBorder
+ .4byte EverGrandeCity_MapBlockdata
+ .4byte EverGrandeCity_Tileset
+ .4byte EverGrandeCity_Tileset2
+
+LittlerootTown_MapBorder:: @ 82913AC
+ .incbin "data/maps/LittlerootTown/border.bin"
+
+LittlerootTown_MapBlockdata:: @ 82913B4
+ .incbin "data/maps/LittlerootTown/map.bin"
+
+LittlerootTown_MapAttributes:: @ 82916D4
+ .4byte 0x14
+ .4byte 0x14
+ .4byte LittlerootTown_MapBorder
+ .4byte LittlerootTown_MapBlockdata
+ .4byte LittlerootTown_Tileset
+ .4byte LittlerootTown_Tileset2
+
+OldaleTown_MapBorder:: @ 82916EC
+ .incbin "data/maps/OldaleTown/border.bin"
+
+OldaleTown_MapBlockdata:: @ 82916F4
+ .incbin "data/maps/OldaleTown/map.bin"
+
+OldaleTown_MapAttributes:: @ 8291A14
+ .4byte 0x14
+ .4byte 0x14
+ .4byte OldaleTown_MapBorder
+ .4byte OldaleTown_MapBlockdata
+ .4byte OldaleTown_Tileset
+ .4byte OldaleTown_Tileset2
+
+DewfordTown_MapBorder:: @ 8291A2C
+ .incbin "data/maps/DewfordTown/border.bin"
+
+DewfordTown_MapBlockdata:: @ 8291A34
+ .incbin "data/maps/DewfordTown/map.bin"
+
+DewfordTown_MapAttributes:: @ 8291D54
+ .4byte 0x14
+ .4byte 0x14
+ .4byte DewfordTown_MapBorder
+ .4byte DewfordTown_MapBlockdata
+ .4byte DewfordTown_Tileset
+ .4byte DewfordTown_Tileset2
+
+LavaridgeTown_MapBorder:: @ 8291D6C
+ .incbin "data/maps/LavaridgeTown/border.bin"
+
+LavaridgeTown_MapBlockdata:: @ 8291D74
+ .incbin "data/maps/LavaridgeTown/map.bin"
+
+LavaridgeTown_MapAttributes:: @ 8292094
+ .4byte 0x14
+ .4byte 0x14
+ .4byte LavaridgeTown_MapBorder
+ .4byte LavaridgeTown_MapBlockdata
+ .4byte LavaridgeTown_Tileset
+ .4byte LavaridgeTown_Tileset2
+
+FallarborTown_MapBorder:: @ 82920AC
+ .incbin "data/maps/FallarborTown/border.bin"
+
+FallarborTown_MapBlockdata:: @ 82920B4
+ .incbin "data/maps/FallarborTown/map.bin"
+
+FallarborTown_MapAttributes:: @ 82923D4
+ .4byte 0x14
+ .4byte 0x14
+ .4byte FallarborTown_MapBorder
+ .4byte FallarborTown_MapBlockdata
+ .4byte FallarborTown_Tileset
+ .4byte FallarborTown_Tileset2
+
+VerdanturfTown_MapBorder:: @ 82923EC
+ .incbin "data/maps/VerdanturfTown/border.bin"
+
+VerdanturfTown_MapBlockdata:: @ 82923F4
+ .incbin "data/maps/VerdanturfTown/map.bin"
+
+VerdanturfTown_MapAttributes:: @ 8292714
+ .4byte 0x14
+ .4byte 0x14
+ .4byte VerdanturfTown_MapBorder
+ .4byte VerdanturfTown_MapBlockdata
+ .4byte VerdanturfTown_Tileset
+ .4byte VerdanturfTown_Tileset2
+
+PacifidlogTown_MapBorder:: @ 829272C
+ .incbin "data/maps/PacifidlogTown/border.bin"
+
+PacifidlogTown_MapBlockdata:: @ 8292734
+ .incbin "data/maps/PacifidlogTown/map.bin"
+
+PacifidlogTown_MapAttributes:: @ 8292D74
+ .4byte 0x14
+ .4byte 0x28
+ .4byte PacifidlogTown_MapBorder
+ .4byte PacifidlogTown_MapBlockdata
+ .4byte PacifidlogTown_Tileset
+ .4byte PacifidlogTown_Tileset2
+
+Route101_MapBorder:: @ 8292D8C
+ .incbin "data/maps/Route101/border.bin"
+
+Route101_MapBlockdata:: @ 8292D94
+ .incbin "data/maps/Route101/map.bin"
+
+Route101_MapAttributes:: @ 82930B4
+ .4byte 0x14
+ .4byte 0x14
+ .4byte Route101_MapBorder
+ .4byte Route101_MapBlockdata
+ .4byte Route101_Tileset
+ .4byte Route101_Tileset2
+
+Route102_MapBorder:: @ 82930CC
+ .incbin "data/maps/Route102/border.bin"
+
+Route102_MapBlockdata:: @ 82930D4
+ .incbin "data/maps/Route102/map.bin"
+
+Route102_MapAttributes:: @ 82938A4
+ .4byte 0x32
+ .4byte 0x14
+ .4byte Route102_MapBorder
+ .4byte Route102_MapBlockdata
+ .4byte Route102_Tileset
+ .4byte Route102_Tileset2
+
+Route103_MapBorder:: @ 82938BC
+ .incbin "data/maps/Route103/border.bin"
+
+Route103_MapBlockdata:: @ 82938C4
+ .incbin "data/maps/Route103/map.bin"
+
+Route103_MapAttributes:: @ 8294544
+ .4byte 0x50
+ .4byte 0x14
+ .4byte Route103_MapBorder
+ .4byte Route103_MapBlockdata
+ .4byte Route103_Tileset
+ .4byte Route103_Tileset2
+
+Route104_MapBorder:: @ 829455C
+ .incbin "data/maps/Route104/border.bin"
+
+Route104_MapBlockdata:: @ 8294564
+ .incbin "data/maps/Route104/map.bin"
+
+Route104_MapAttributes:: @ 8295E64
+ .4byte 0x28
+ .4byte 0x50
+ .4byte Route104_MapBorder
+ .4byte Route104_MapBlockdata
+ .4byte Route104_Tileset
+ .4byte Route104_Tileset2
+
+Route105_MapBorder:: @ 8295E7C
+ .incbin "data/maps/Route105/border.bin"
+
+Route105_MapBlockdata:: @ 8295E84
+ .incbin "data/maps/Route105/map.bin"
+
+Route105_MapAttributes:: @ 8297784
+ .4byte 0x28
+ .4byte 0x50
+ .4byte Route105_MapBorder
+ .4byte Route105_MapBlockdata
+ .4byte Route105_Tileset
+ .4byte Route105_Tileset2
+
+Route106_MapBorder:: @ 829779C
+ .incbin "data/maps/Route106/border.bin"
+
+Route106_MapBlockdata:: @ 82977A4
+ .incbin "data/maps/Route106/map.bin"
+
+Route106_MapAttributes:: @ 8298424
+ .4byte 0x50
+ .4byte 0x14
+ .4byte Route106_MapBorder
+ .4byte Route106_MapBlockdata
+ .4byte Route106_Tileset
+ .4byte Route106_Tileset2
+
+Route107_MapBorder:: @ 829843C
+ .incbin "data/maps/Route107/border.bin"
+
+Route107_MapBlockdata:: @ 8298444
+ .incbin "data/maps/Route107/map.bin"
+
+Route107_MapAttributes:: @ 8298DA4
+ .4byte 0x3c
+ .4byte 0x14
+ .4byte Route107_MapBorder
+ .4byte Route107_MapBlockdata
+ .4byte Route107_Tileset
+ .4byte Route107_Tileset2
+
+Route108_MapBorder:: @ 8298DBC
+ .incbin "data/maps/Route108/border.bin"
+
+Route108_MapBlockdata:: @ 8298DC4
+ .incbin "data/maps/Route108/map.bin"
+
+Route108_MapAttributes:: @ 8299724
+ .4byte 0x3c
+ .4byte 0x14
+ .4byte Route108_MapBorder
+ .4byte Route108_MapBlockdata
+ .4byte Route108_Tileset
+ .4byte Route108_Tileset2
+
+Route109_MapBorder:: @ 829973C
+ .incbin "data/maps/Route109/border.bin"
+
+Route109_MapBlockdata:: @ 8299744
+ .incbin "data/maps/Route109/map.bin"
+
+Route109_MapAttributes:: @ 829AA04
+ .4byte 0x28
+ .4byte 0x3c
+ .4byte Route109_MapBorder
+ .4byte Route109_MapBlockdata
+ .4byte Route109_Tileset
+ .4byte Route109_Tileset2
+
+Route110_MapBorder:: @ 829AA1C
+ .incbin "data/maps/Route110/border.bin"
+
+Route110_MapBlockdata:: @ 829AA24
+ .incbin "data/maps/Route110/map.bin"
+
+Route110_MapAttributes:: @ 829C964
+ .4byte 0x28
+ .4byte 0x64
+ .4byte Route110_MapBorder
+ .4byte Route110_MapBlockdata
+ .4byte Route110_Tileset
+ .4byte Route110_Tileset2
+
+Route111_MapBorder:: @ 829C97C
+ .incbin "data/maps/Route111/border.bin"
+
+Route111_MapBlockdata:: @ 829C984
+ .incbin "data/maps/Route111/map.bin"
+
+Route111_MapAttributes:: @ 829F544
+ .4byte 0x28
+ .4byte 0x8c
+ .4byte Route111_MapBorder
+ .4byte Route111_MapBlockdata
+ .4byte Route111_Tileset
+ .4byte Route111_Tileset2
+
+Route112_MapBorder:: @ 829F55C
+ .incbin "data/maps/Route112/border.bin"
+
+Route112_MapBlockdata:: @ 829F564
+ .incbin "data/maps/Route112/map.bin"
+
+Route112_MapAttributes:: @ 82A0824
+ .4byte 0x28
+ .4byte 0x3c
+ .4byte Route112_MapBorder
+ .4byte Route112_MapBlockdata
+ .4byte Route112_Tileset
+ .4byte Route112_Tileset2
+
+Route113_MapBorder:: @ 82A083C
+ .incbin "data/maps/Route113/border.bin"
+
+Route113_MapBlockdata:: @ 82A0844
+ .incbin "data/maps/Route113/map.bin"
+
+Route113_MapAttributes:: @ 82A17E4
+ .4byte 0x64
+ .4byte 0x14
+ .4byte Route113_MapBorder
+ .4byte Route113_MapBlockdata
+ .4byte Route113_Tileset
+ .4byte Route113_Tileset2
+
+Route114_MapBorder:: @ 82A17FC
+ .incbin "data/maps/Route114/border.bin"
+
+Route114_MapBlockdata:: @ 82A1804
+ .incbin "data/maps/Route114/map.bin"
+
+Route114_MapAttributes:: @ 82A3104
+ .4byte 0x28
+ .4byte 0x50
+ .4byte Route114_MapBorder
+ .4byte Route114_MapBlockdata
+ .4byte Route114_Tileset
+ .4byte Route114_Tileset2
+
+Route115_MapBorder:: @ 82A311C
+ .incbin "data/maps/Route115/border.bin"
+
+Route115_MapBlockdata:: @ 82A3124
+ .incbin "data/maps/Route115/map.bin"
+
+Route115_MapAttributes:: @ 82A4A24
+ .4byte 0x28
+ .4byte 0x50
+ .4byte Route115_MapBorder
+ .4byte Route115_MapBlockdata
+ .4byte Route115_Tileset
+ .4byte Route115_Tileset2
+
+Route116_MapBorder:: @ 82A4A3C
+ .incbin "data/maps/Route116/border.bin"
+
+Route116_MapBlockdata:: @ 82A4A44
+ .incbin "data/maps/Route116/map.bin"
+
+Route116_MapAttributes:: @ 82A59E4
+ .4byte 0x64
+ .4byte 0x14
+ .4byte Route116_MapBorder
+ .4byte Route116_MapBlockdata
+ .4byte Route116_Tileset
+ .4byte Route116_Tileset2
+
+Route117_MapBorder:: @ 82A59FC
+ .incbin "data/maps/Route117/border.bin"
+
+Route117_MapBlockdata:: @ 82A5A04
+ .incbin "data/maps/Route117/map.bin"
+
+Route117_MapAttributes:: @ 82A6364
+ .4byte 0x3c
+ .4byte 0x14
+ .4byte Route117_MapBorder
+ .4byte Route117_MapBlockdata
+ .4byte Route117_Tileset
+ .4byte Route117_Tileset2
+
+Route118_MapBorder:: @ 82A637C
+ .incbin "data/maps/Route118/border.bin"
+
+Route118_MapBlockdata:: @ 82A6384
+ .incbin "data/maps/Route118/map.bin"
+
+Route118_MapAttributes:: @ 82A7004
+ .4byte 0x50
+ .4byte 0x14
+ .4byte Route118_MapBorder
+ .4byte Route118_MapBlockdata
+ .4byte Route118_Tileset
+ .4byte Route118_Tileset2
+
+Route119_MapBorder:: @ 82A701C
+ .incbin "data/maps/Route119/border.bin"
+
+Route119_MapBlockdata:: @ 82A7024
+ .incbin "data/maps/Route119/map.bin"
+
+Route119_MapAttributes:: @ 82A9BE4
+ .4byte 0x28
+ .4byte 0x8c
+ .4byte Route119_MapBorder
+ .4byte Route119_MapBlockdata
+ .4byte Route119_Tileset
+ .4byte Route119_Tileset2
+
+Route120_MapBorder:: @ 82A9BFC
+ .incbin "data/maps/Route120/border.bin"
+
+Route120_MapBlockdata:: @ 82A9C04
+ .incbin "data/maps/Route120/map.bin"
+
+Route120_MapAttributes:: @ 82ABB44
+ .4byte 0x28
+ .4byte 0x64
+ .4byte Route120_MapBorder
+ .4byte Route120_MapBlockdata
+ .4byte Route120_Tileset
+ .4byte Route120_Tileset2
+
+Route121_MapBorder:: @ 82ABB5C
+ .incbin "data/maps/Route121/border.bin"
+
+Route121_MapBlockdata:: @ 82ABB64
+ .incbin "data/maps/Route121/map.bin"
+
+Route121_MapAttributes:: @ 82AC7E4
+ .4byte 0x50
+ .4byte 0x14
+ .4byte Route121_MapBorder
+ .4byte Route121_MapBlockdata
+ .4byte Route121_Tileset
+ .4byte Route121_Tileset2
+
+Route122_MapBorder:: @ 82AC7FC
+ .incbin "data/maps/Route122/border.bin"
+
+Route122_MapBlockdata:: @ 82AC804
+ .incbin "data/maps/Route122/map.bin"
+
+Route122_MapAttributes:: @ 82AD484
+ .4byte 0x28
+ .4byte 0x28
+ .4byte Route122_MapBorder
+ .4byte Route122_MapBlockdata
+ .4byte Route122_Tileset
+ .4byte Route122_Tileset2
+
+Route123_MapBorder:: @ 82AD49C
+ .incbin "data/maps/Route123/border.bin"
+
+Route123_MapBlockdata:: @ 82AD4A4
+ .incbin "data/maps/Route123/map.bin"
+
+Route123_MapAttributes:: @ 82AEA84
+ .4byte 0x8c
+ .4byte 0x14
+ .4byte Route123_MapBorder
+ .4byte Route123_MapBlockdata
+ .4byte Route123_Tileset
+ .4byte Route123_Tileset2
+
+Route124_MapBorder:: @ 82AEA9C
+ .incbin "data/maps/Route124/border.bin"
+
+Route124_MapBlockdata:: @ 82AEAA4
+ .incbin "data/maps/Route124/map.bin"
+
+Route124_MapAttributes:: @ 82B1CA4
+ .4byte 0x50
+ .4byte 0x50
+ .4byte Route124_MapBorder
+ .4byte Route124_MapBlockdata
+ .4byte Route124_Tileset
+ .4byte Route124_Tileset2
+
+Route125_MapBorder:: @ 82B1CBC
+ .incbin "data/maps/Route125/border.bin"
+
+Route125_MapBlockdata:: @ 82B1CC4
+ .incbin "data/maps/Route125/map.bin"
+
+Route125_MapAttributes:: @ 82B35C4
+ .4byte 0x50
+ .4byte 0x28
+ .4byte Route125_MapBorder
+ .4byte Route125_MapBlockdata
+ .4byte Route125_Tileset
+ .4byte Route125_Tileset2
+
+Route126_MapBorder:: @ 82B35DC
+ .incbin "data/maps/Route126/border.bin"
+
+Route126_MapBlockdata:: @ 82B35E4
+ .incbin "data/maps/Route126/map.bin"
+
+Route126_MapAttributes:: @ 82B67E4
+ .4byte 0x50
+ .4byte 0x50
+ .4byte Route126_MapBorder
+ .4byte Route126_MapBlockdata
+ .4byte Route126_Tileset
+ .4byte Route126_Tileset2
+
+Route127_MapBorder:: @ 82B67FC
+ .incbin "data/maps/Route127/border.bin"
+
+Route127_MapBlockdata:: @ 82B6804
+ .incbin "data/maps/Route127/map.bin"
+
+Route127_MapAttributes:: @ 82B9A04
+ .4byte 0x50
+ .4byte 0x50
+ .4byte Route127_MapBorder
+ .4byte Route127_MapBlockdata
+ .4byte Route127_Tileset
+ .4byte Route127_Tileset2
+
+Route128_MapBorder:: @ 82B9A1C
+ .incbin "data/maps/Route128/border.bin"
+
+Route128_MapBlockdata:: @ 82B9A24
+ .incbin "data/maps/Route128/map.bin"
+
+Route128_MapAttributes:: @ 82BBFA4
+ .4byte 0x78
+ .4byte 0x28
+ .4byte Route128_MapBorder
+ .4byte Route128_MapBlockdata
+ .4byte Route128_Tileset
+ .4byte Route128_Tileset2
+
+Route129_MapBorder:: @ 82BBFBC
+ .incbin "data/maps/Route129/border.bin"
+
+Route129_MapBlockdata:: @ 82BBFC4
+ .incbin "data/maps/Route129/map.bin"
+
+Route129_MapAttributes:: @ 82BD8C4
+ .4byte 0x50
+ .4byte 0x28
+ .4byte Route129_MapBorder
+ .4byte Route129_MapBlockdata
+ .4byte Route129_Tileset
+ .4byte Route129_Tileset2
+
+ .incbin "baserom.gba", 0x2bd8dc, 0x1920
+
+Route131_MapBorder:: @ 82BF1FC
+ .incbin "data/maps/Route131/border.bin"
+
+Route131_MapBlockdata:: @ 82BF204
+ .incbin "data/maps/Route131/map.bin"
+
+Route131_MapAttributes:: @ 82C04C4
+ .4byte 0x3c
+ .4byte 0x28
+ .4byte Route131_MapBorder
+ .4byte Route131_MapBlockdata
+ .4byte Route131_Tileset
+ .4byte Route131_Tileset2
+
+Route132_MapBorder:: @ 82C04DC
+ .incbin "data/maps/Route132/border.bin"
+
+Route132_MapBlockdata:: @ 82C04E4
+ .incbin "data/maps/Route132/map.bin"
+
+Route132_MapAttributes:: @ 82C1DE4
+ .4byte 0x50
+ .4byte 0x28
+ .4byte Route132_MapBorder
+ .4byte Route132_MapBlockdata
+ .4byte Route132_Tileset
+ .4byte Route132_Tileset2
+
+Route133_MapBorder:: @ 82C1DFC
+ .incbin "data/maps/Route133/border.bin"
+
+Route133_MapBlockdata:: @ 82C1E04
+ .incbin "data/maps/Route133/map.bin"
+
+Route133_MapAttributes:: @ 82C3704
+ .4byte 0x50
+ .4byte 0x28
+ .4byte Route133_MapBorder
+ .4byte Route133_MapBlockdata
+ .4byte Route133_Tileset
+ .4byte Route133_Tileset2
+
+Route134_MapBorder:: @ 82C371C
+ .incbin "data/maps/Route134/border.bin"
+
+Route134_MapBlockdata:: @ 82C3724
+ .incbin "data/maps/Route134/map.bin"
+
+Route134_MapAttributes:: @ 82C5024
+ .4byte 0x50
+ .4byte 0x28
+ .4byte Route134_MapBorder
+ .4byte Route134_MapBlockdata
+ .4byte Route134_Tileset
+ .4byte Route134_Tileset2
+
+Underwater2_MapBorder:: @ 82C503C
+ .incbin "data/maps/Underwater2/border.bin"
+
+Underwater2_MapBlockdata:: @ 82C5044
+ .incbin "data/maps/Underwater2/map.bin"
+
+Underwater2_MapAttributes:: @ 82C8244
+ .4byte 0x50
+ .4byte 0x50
+ .4byte Underwater2_MapBorder
+ .4byte Underwater2_MapBlockdata
+ .4byte Underwater2_Tileset
+ .4byte Underwater2_Tileset2
+
+Underwater3_MapBorder:: @ 82C825C
+ .incbin "data/maps/Underwater3/border.bin"
+
+Underwater3_MapBlockdata:: @ 82C8264
+ .incbin "data/maps/Underwater3/map.bin"
+
+Underwater3_MapAttributes:: @ 82CB464
+ .4byte 0x50
+ .4byte 0x50
+ .4byte Underwater3_MapBorder
+ .4byte Underwater3_MapBlockdata
+ .4byte Underwater3_Tileset
+ .4byte Underwater3_Tileset2
+
+Underwater4_MapBorder:: @ 82CB47C
+ .incbin "data/maps/Underwater4/border.bin"
+
+Underwater4_MapBlockdata:: @ 82CB484
+ .incbin "data/maps/Underwater4/map.bin"
+
+Underwater4_MapAttributes:: @ 82CDA04
+ .4byte 0x78
+ .4byte 0x28
+ .4byte Underwater4_MapBorder
+ .4byte Underwater4_MapBlockdata
+ .4byte Underwater4_Tileset
+ .4byte Underwater4_Tileset2
+
+LittlerootTown_BrendansHouse_1F_MapBorder:: @ 82CDA1C
+ .incbin "data/maps/LittlerootTown_BrendansHouse_1F/border.bin"
+
+LittlerootTown_BrendansHouse_1F_MapBlockdata:: @ 82CDA24
+ .incbin "data/maps/LittlerootTown_BrendansHouse_1F/map.bin"
+
+ .incbin "baserom.gba", 0x2cdaea, 0x2
+
+LittlerootTown_BrendansHouse_1F_MapAttributes:: @ 82CDAEC
+ .4byte 0xb
+ .4byte 0x9
+ .4byte LittlerootTown_BrendansHouse_1F_MapBorder
+ .4byte LittlerootTown_BrendansHouse_1F_MapBlockdata
+ .4byte LittlerootTown_BrendansHouse_1F_Tileset
+ .4byte LittlerootTown_BrendansHouse_1F_Tileset2
+
+LittlerootTown_BrendansHouse_2F_MapBorder:: @ 82CDB04
+ .incbin "data/maps/LittlerootTown_BrendansHouse_2F/border.bin"
+
+LittlerootTown_BrendansHouse_2F_MapBlockdata:: @ 82CDB0C
+ .incbin "data/maps/LittlerootTown_BrendansHouse_2F/map.bin"
+
+LittlerootTown_BrendansHouse_2F_MapAttributes:: @ 82CDB9C
+ .4byte 0x9
+ .4byte 0x8
+ .4byte LittlerootTown_BrendansHouse_2F_MapBorder
+ .4byte LittlerootTown_BrendansHouse_2F_MapBlockdata
+ .4byte LittlerootTown_BrendansHouse_2F_Tileset
+ .4byte LittlerootTown_BrendansHouse_2F_Tileset2
+
+LittlerootTown_MaysHouse_1F_MapBorder:: @ 82CDBB4
+ .incbin "data/maps/LittlerootTown_MaysHouse_1F/border.bin"
+
+LittlerootTown_MaysHouse_1F_MapBlockdata:: @ 82CDBBC
+ .incbin "data/maps/LittlerootTown_MaysHouse_1F/map.bin"
+
+ .incbin "baserom.gba", 0x2cdc82, 0x2
+
+LittlerootTown_MaysHouse_1F_MapAttributes:: @ 82CDC84
+ .4byte 0xb
+ .4byte 0x9
+ .4byte LittlerootTown_MaysHouse_1F_MapBorder
+ .4byte LittlerootTown_MaysHouse_1F_MapBlockdata
+ .4byte LittlerootTown_MaysHouse_1F_Tileset
+ .4byte LittlerootTown_MaysHouse_1F_Tileset2
+
+LittlerootTown_MaysHouse_2F_MapBorder:: @ 82CDC9C
+ .incbin "data/maps/LittlerootTown_MaysHouse_2F/border.bin"
+
+LittlerootTown_MaysHouse_2F_MapBlockdata:: @ 82CDCA4
+ .incbin "data/maps/LittlerootTown_MaysHouse_2F/map.bin"
+
+LittlerootTown_MaysHouse_2F_MapAttributes:: @ 82CDD34
+ .4byte 0x9
+ .4byte 0x8
+ .4byte LittlerootTown_MaysHouse_2F_MapBorder
+ .4byte LittlerootTown_MaysHouse_2F_MapBlockdata
+ .4byte LittlerootTown_MaysHouse_2F_Tileset
+ .4byte LittlerootTown_MaysHouse_2F_Tileset2
+
+LittlerootTown_ProfessorBirchsLab_MapBorder:: @ 82CDD4C
+ .incbin "data/maps/LittlerootTown_ProfessorBirchsLab/border.bin"
+
+LittlerootTown_ProfessorBirchsLab_MapBlockdata:: @ 82CDD54
+ .incbin "data/maps/LittlerootTown_ProfessorBirchsLab/map.bin"
+
+ .incbin "baserom.gba", 0x2cdea6, 0x2
+
+LittlerootTown_ProfessorBirchsLab_MapAttributes:: @ 82CDEA8
+ .4byte 0xd
+ .4byte 0xd
+ .4byte LittlerootTown_ProfessorBirchsLab_MapBorder
+ .4byte LittlerootTown_ProfessorBirchsLab_MapBlockdata
+ .4byte LittlerootTown_ProfessorBirchsLab_Tileset
+ .4byte LittlerootTown_ProfessorBirchsLab_Tileset2
+
+OldaleTown_House1_MapBorder:: @ 82CDEC0
+ .incbin "data/maps/OldaleTown_House1/border.bin"
+
+OldaleTown_House1_MapBlockdata:: @ 82CDEC8
+ .incbin "data/maps/OldaleTown_House1/map.bin"
+
+FallarborTown_House1_MapAttributes:: @ 82CDF7C
+LilycoveCity_House1_MapAttributes:: @ 82CDF7C
+LilycoveCity_House4_MapAttributes:: @ 82CDF7C
+MauvilleCity_House2_MapAttributes:: @ 82CDF7C
+MossdeepCity_House2_MapAttributes:: @ 82CDF7C
+OldaleTown_House1_MapAttributes:: @ 82CDF7C
+PetalburgCity_House1_MapAttributes:: @ 82CDF7C
+Route119_House_MapAttributes:: @ 82CDF7C
+VerdanturfTown_House_MapAttributes:: @ 82CDF7C
+ .4byte 0xa
+ .4byte 0x9
+ .4byte OldaleTown_House1_MapBorder
+ .4byte OldaleTown_House1_MapBlockdata
+ .4byte OldaleTown_House1_Tileset
+ .4byte OldaleTown_House1_Tileset2
+
+OldaleTown_House2_MapBorder:: @ 82CDF94
+ .incbin "data/maps/OldaleTown_House2/border.bin"
+
+OldaleTown_House2_MapBlockdata:: @ 82CDF9C
+ .incbin "data/maps/OldaleTown_House2/map.bin"
+
+FallarborTown_House2_MapAttributes:: @ 82CE04C
+LilycoveCity_House3_MapAttributes:: @ 82CE04C
+LilycoveCity_MoveDeletersHouse_MapAttributes:: @ 82CE04C
+MauvilleCity_House1_MapAttributes:: @ 82CE04C
+MossdeepCity_House1_MapAttributes:: @ 82CE04C
+MossdeepCity_House3_MapAttributes:: @ 82CE04C
+OldaleTown_House2_MapAttributes:: @ 82CE04C
+PetalburgCity_WallysHouse_MapAttributes:: @ 82CE04C
+Route111_WinstrateFamilysHouse_MapAttributes:: @ 82CE04C
+Route123_BerryMastersHouse_MapAttributes:: @ 82CE04C
+SlateportCity_House2_MapAttributes:: @ 82CE04C
+VerdanturfTown_FriendshipRatersHouse_MapAttributes:: @ 82CE04C
+ .4byte 0xb
+ .4byte 0x8
+ .4byte OldaleTown_House2_MapBorder
+ .4byte OldaleTown_House2_MapBlockdata
+ .4byte OldaleTown_House2_Tileset
+ .4byte OldaleTown_House2_Tileset2
+
+OldaleTown_PokemonCenter_1F_MapBorder:: @ 82CE064
+ .incbin "data/maps/OldaleTown_PokemonCenter_1F/border.bin"
+
+OldaleTown_PokemonCenter_1F_MapBlockdata:: @ 82CE06C
+ .incbin "data/maps/OldaleTown_PokemonCenter_1F/map.bin"
+
+DewfordTown_PokemonCenter_1F_MapAttributes:: @ 82CE168
+EverGrandeCity_PokemonCenter_1F_MapAttributes:: @ 82CE168
+FallarborTown_PokemonCenter_1F_MapAttributes:: @ 82CE168
+FortreeCity_PokemonCenter_1F_MapAttributes:: @ 82CE168
+LilycoveCity_PokemonCenter_1F_MapAttributes:: @ 82CE168
+MauvilleCity_PokemonCenter_1F_MapAttributes:: @ 82CE168
+MossdeepCity_PokemonCenter_1F_MapAttributes:: @ 82CE168
+OldaleTown_PokemonCenter_1F_MapAttributes:: @ 82CE168
+PacifidlogTown_PokemonCenter_1F_MapAttributes:: @ 82CE168
+PetalburgCity_PokemonCenter_1F_MapAttributes:: @ 82CE168
+RustboroCity_PokemonCenter_1F_MapAttributes:: @ 82CE168
+SlateportCity_PokemonCenter_1F_MapAttributes:: @ 82CE168
+SootopolisCity_PokemonCenter_1F_MapAttributes:: @ 82CE168
+VerdanturfTown_PokemonCenter_1F_MapAttributes:: @ 82CE168
+ .4byte 0xe
+ .4byte 0x9
+ .4byte OldaleTown_PokemonCenter_1F_MapBorder
+ .4byte OldaleTown_PokemonCenter_1F_MapBlockdata
+ .4byte OldaleTown_PokemonCenter_1F_Tileset
+ .4byte OldaleTown_PokemonCenter_1F_Tileset2
+
+OldaleTown_PokemonCenter_2F_MapBorder:: @ 82CE180
+ .incbin "data/maps/OldaleTown_PokemonCenter_2F/border.bin"
+
+OldaleTown_PokemonCenter_2F_MapBlockdata:: @ 82CE188
+ .incbin "data/maps/OldaleTown_PokemonCenter_2F/map.bin"
+
+DewfordTown_PokemonCenter_2F_MapAttributes:: @ 82CE284
+EverGrandeCity_PokemonCenter_2F_MapAttributes:: @ 82CE284
+FallarborTown_PokemonCenter_2F_MapAttributes:: @ 82CE284
+FortreeCity_PokemonCenter_2F_MapAttributes:: @ 82CE284
+LavaridgeTown_PokemonCenter_2F_MapAttributes:: @ 82CE284
+LilycoveCity_PokemonCenter_2F_MapAttributes:: @ 82CE284
+MauvilleCity_PokemonCenter_2F_MapAttributes:: @ 82CE284
+MossdeepCity_PokemonCenter_2F_MapAttributes:: @ 82CE284
+OldaleTown_PokemonCenter_2F_MapAttributes:: @ 82CE284
+PacifidlogTown_PokemonCenter_2F_MapAttributes:: @ 82CE284
+PetalburgCity_PokemonCenter_2F_MapAttributes:: @ 82CE284
+RustboroCity_PokemonCenter_2F_MapAttributes:: @ 82CE284
+SlateportCity_PokemonCenter_2F_MapAttributes:: @ 82CE284
+SootopolisCity_PokemonCenter_2F_MapAttributes:: @ 82CE284
+VerdanturfTown_PokemonCenter_2F_MapAttributes:: @ 82CE284
+ .4byte 0xe
+ .4byte 0x9
+ .4byte OldaleTown_PokemonCenter_2F_MapBorder
+ .4byte OldaleTown_PokemonCenter_2F_MapBlockdata
+ .4byte OldaleTown_PokemonCenter_2F_Tileset
+ .4byte OldaleTown_PokemonCenter_2F_Tileset2
+
+OldaleTown_Mart_MapBorder:: @ 82CE29C
+ .incbin "data/maps/OldaleTown_Mart/border.bin"
+
+OldaleTown_Mart_MapBlockdata:: @ 82CE2A4
+ .incbin "data/maps/OldaleTown_Mart/map.bin"
+
+FallarborTown_Mart_MapAttributes:: @ 82CE354
+FortreeCity_Mart_MapAttributes:: @ 82CE354
+LavaridgeTown_Mart_MapAttributes:: @ 82CE354
+LilycoveCity_UnusedMart_MapAttributes:: @ 82CE354
+MauvilleCity_Mart_MapAttributes:: @ 82CE354
+MossdeepCity_Mart_MapAttributes:: @ 82CE354
+OldaleTown_Mart_MapAttributes:: @ 82CE354
+PetalburgCity_Mart_MapAttributes:: @ 82CE354
+RustboroCity_Mart_MapAttributes:: @ 82CE354
+SlateportCity_Mart_MapAttributes:: @ 82CE354
+SootopolisCity_Mart_MapAttributes:: @ 82CE354
+VerdanturfTown_Mart_MapAttributes:: @ 82CE354
+ .4byte 0xb
+ .4byte 0x8
+ .4byte OldaleTown_Mart_MapBorder
+ .4byte OldaleTown_Mart_MapBlockdata
+ .4byte OldaleTown_Mart_Tileset
+ .4byte OldaleTown_Mart_Tileset2
+
+DewfordTown_House1_MapBorder:: @ 82CE36C
+ .incbin "data/maps/DewfordTown_House1/border.bin"
+
+DewfordTown_House1_MapBlockdata:: @ 82CE374
+ .incbin "data/maps/DewfordTown_House1/map.bin"
+
+DewfordTown_House1_MapAttributes:: @ 82CE414
+LavaridgeTown_House_MapAttributes:: @ 82CE414
+Route111_OldLadysRestStop_MapAttributes:: @ 82CE414
+ .4byte 0xa
+ .4byte 0x8
+ .4byte DewfordTown_House1_MapBorder
+ .4byte DewfordTown_House1_MapBlockdata
+ .4byte DewfordTown_House1_Tileset
+ .4byte DewfordTown_House1_Tileset2
+
+DewfordTown_Gym_MapBorder:: @ 82CE42C
+ .incbin "data/maps/DewfordTown_Gym/border.bin"
+
+DewfordTown_Gym_MapBlockdata:: @ 82CE434
+ .incbin "data/maps/DewfordTown_Gym/map.bin"
+
+DewfordTown_Gym_MapAttributes:: @ 82CE824
+ .4byte 0x12
+ .4byte 0x1c
+ .4byte DewfordTown_Gym_MapBorder
+ .4byte DewfordTown_Gym_MapBlockdata
+ .4byte DewfordTown_Gym_Tileset
+ .4byte DewfordTown_Gym_Tileset2
+
+DewfordTown_Hall_MapBorder:: @ 82CE83C
+ .incbin "data/maps/DewfordTown_Hall/border.bin"
+
+DewfordTown_Hall_MapBlockdata:: @ 82CE844
+ .incbin "data/maps/DewfordTown_Hall/map.bin"
+
+ .incbin "baserom.gba", 0x2ce976, 0x2
+
+DewfordTown_Hall_MapAttributes:: @ 82CE978
+ .4byte 0x11
+ .4byte 0x9
+ .4byte DewfordTown_Hall_MapBorder
+ .4byte DewfordTown_Hall_MapBlockdata
+ .4byte DewfordTown_Hall_Tileset
+ .4byte DewfordTown_Hall_Tileset2
+
+DewfordTown_House2_MapBorder:: @ 82CE990
+ .incbin "data/maps/DewfordTown_House2/border.bin"
+
+DewfordTown_House2_MapBlockdata:: @ 82CE998
+ .incbin "data/maps/DewfordTown_House2/map.bin"
+
+DewfordTown_House2_MapAttributes:: @ 82CEA4C
+Route113_GlassWorkshop_MapAttributes:: @ 82CEA4C
+ .4byte 0xa
+ .4byte 0x9
+ .4byte DewfordTown_House2_MapBorder
+ .4byte DewfordTown_House2_MapBlockdata
+ .4byte DewfordTown_House2_Tileset
+ .4byte DewfordTown_House2_Tileset2
+
+LavaridgeTown_HerbShop_MapBorder:: @ 82CEA64
+ .incbin "data/maps/LavaridgeTown_HerbShop/border.bin"
+
+LavaridgeTown_HerbShop_MapBlockdata:: @ 82CEA6C
+ .incbin "data/maps/LavaridgeTown_HerbShop/map.bin"
+
+LavaridgeTown_HerbShop_MapAttributes:: @ 82CEB1C
+ .4byte 0xb
+ .4byte 0x8
+ .4byte LavaridgeTown_HerbShop_MapBorder
+ .4byte LavaridgeTown_HerbShop_MapBlockdata
+ .4byte LavaridgeTown_HerbShop_Tileset
+ .4byte LavaridgeTown_HerbShop_Tileset2
+
+LavaridgeTown_Gym_1F_MapBorder:: @ 82CEB34
+ .incbin "data/maps/LavaridgeTown_Gym_1F/border.bin"
+
+LavaridgeTown_Gym_1F_MapBlockdata:: @ 82CEB3C
+ .incbin "data/maps/LavaridgeTown_Gym_1F/map.bin"
+
+LavaridgeTown_Gym_1F_MapAttributes:: @ 82CED4C
+ .4byte 0xb
+ .4byte 0x18
+ .4byte LavaridgeTown_Gym_1F_MapBorder
+ .4byte LavaridgeTown_Gym_1F_MapBlockdata
+ .4byte LavaridgeTown_Gym_1F_Tileset
+ .4byte LavaridgeTown_Gym_1F_Tileset2
+
+LavaridgeTown_Gym_B1F_MapBorder:: @ 82CED64
+ .incbin "data/maps/LavaridgeTown_Gym_B1F/border.bin"
+
+LavaridgeTown_Gym_B1F_MapBlockdata:: @ 82CED6C
+ .incbin "data/maps/LavaridgeTown_Gym_B1F/map.bin"
+
+LavaridgeTown_Gym_B1F_MapAttributes:: @ 82CEF7C
+ .4byte 0xb
+ .4byte 0x18
+ .4byte LavaridgeTown_Gym_B1F_MapBorder
+ .4byte LavaridgeTown_Gym_B1F_MapBlockdata
+ .4byte LavaridgeTown_Gym_B1F_Tileset
+ .4byte LavaridgeTown_Gym_B1F_Tileset2
+
+LavaridgeTown_PokemonCenter_1F_MapBorder:: @ 82CEF94
+ .incbin "data/maps/LavaridgeTown_PokemonCenter_1F/border.bin"
+
+LavaridgeTown_PokemonCenter_1F_MapBlockdata:: @ 82CEF9C
+ .incbin "data/maps/LavaridgeTown_PokemonCenter_1F/map.bin"
+
+LavaridgeTown_PokemonCenter_1F_MapAttributes:: @ 82CF098
+ .4byte 0xe
+ .4byte 0x9
+ .4byte LavaridgeTown_PokemonCenter_1F_MapBorder
+ .4byte LavaridgeTown_PokemonCenter_1F_MapBlockdata
+ .4byte LavaridgeTown_PokemonCenter_1F_Tileset
+ .4byte LavaridgeTown_PokemonCenter_1F_Tileset2
+
+FallarborTown_ContestLobby_MapBorder:: @ 82CF0B0
+ .incbin "data/maps/FallarborTown_ContestLobby/border.bin"
+
+FallarborTown_ContestLobby_MapBlockdata:: @ 82CF0B8
+ .incbin "data/maps/FallarborTown_ContestLobby/map.bin"
+
+ .incbin "baserom.gba", 0x2cf18a, 0x2
+
+FallarborTown_ContestLobby_MapAttributes:: @ 82CF18C
+SlateportCity_ContestLobby_MapAttributes:: @ 82CF18C
+VerdanturfTown_ContestLobby_MapAttributes:: @ 82CF18C
+ .4byte 0xf
+ .4byte 0x7
+ .4byte FallarborTown_ContestLobby_MapBorder
+ .4byte FallarborTown_ContestLobby_MapBlockdata
+ .4byte FallarborTown_ContestLobby_Tileset
+ .4byte FallarborTown_ContestLobby_Tileset2
+
+FallarborTown_ContestHall_MapBorder:: @ 82CF1A4
+ .incbin "data/maps/FallarborTown_ContestHall/border.bin"
+
+FallarborTown_ContestHall_MapBlockdata:: @ 82CF1AC
+ .incbin "data/maps/FallarborTown_ContestHall/map.bin"
+
+FallarborTown_ContestHall_MapAttributes:: @ 82CF4A0
+SlateportCity_ContestHall_MapAttributes:: @ 82CF4A0
+VerdanturfTown_ContestHall_MapAttributes:: @ 82CF4A0
+ .4byte 0x15
+ .4byte 0x12
+ .4byte FallarborTown_ContestHall_MapBorder
+ .4byte FallarborTown_ContestHall_MapBlockdata
+ .4byte FallarborTown_ContestHall_Tileset
+ .4byte FallarborTown_ContestHall_Tileset2
+
+LilycoveCity_House2_MapBorder:: @ 82CF4B8
+ .incbin "data/maps/LilycoveCity_House2/border.bin"
+
+LilycoveCity_House2_MapBlockdata:: @ 82CF4C0
+ .incbin "data/maps/LilycoveCity_House2/map.bin"
+
+LilycoveCity_House2_MapAttributes:: @ 82CF540
+ .4byte 0x8
+ .4byte 0x8
+ .4byte LilycoveCity_House2_MapBorder
+ .4byte LilycoveCity_House2_MapBlockdata
+ .4byte LilycoveCity_House2_Tileset
+ .4byte LilycoveCity_House2_Tileset2
+
+ .incbin "baserom.gba", 0x2cf558, 0x24
+
+VerdanturfTown_WandasHouse_MapBorder:: @ 82CF57C
+ .incbin "data/maps/VerdanturfTown_WandasHouse/border.bin"
+
+VerdanturfTown_WandasHouse_MapBlockdata:: @ 82CF584
+ .incbin "data/maps/VerdanturfTown_WandasHouse/map.bin"
+
+VerdanturfTown_WandasHouse_MapAttributes:: @ 82CF694
+ .4byte 0x11
+ .4byte 0x8
+ .4byte VerdanturfTown_WandasHouse_MapBorder
+ .4byte VerdanturfTown_WandasHouse_MapBlockdata
+ .4byte VerdanturfTown_WandasHouse_Tileset
+ .4byte VerdanturfTown_WandasHouse_Tileset2
+
+PacifidlogTown_House1_MapBorder:: @ 82CF6AC
+ .incbin "data/maps/PacifidlogTown_House1/border.bin"
+
+PacifidlogTown_House1_MapBlockdata:: @ 82CF6B4
+ .incbin "data/maps/PacifidlogTown_House1/map.bin"
+
+PacifidlogTown_House1_MapAttributes:: @ 82CF768
+PacifidlogTown_House3_MapAttributes:: @ 82CF768
+PacifidlogTown_House5_MapAttributes:: @ 82CF768
+ .4byte 0xa
+ .4byte 0x9
+ .4byte PacifidlogTown_House1_MapBorder
+ .4byte PacifidlogTown_House1_MapBlockdata
+ .4byte PacifidlogTown_House1_Tileset
+ .4byte PacifidlogTown_House1_Tileset2
+
+PacifidlogTown_House2_MapBorder:: @ 82CF780
+ .incbin "data/maps/PacifidlogTown_House2/border.bin"
+
+PacifidlogTown_House2_MapBlockdata:: @ 82CF788
+ .incbin "data/maps/PacifidlogTown_House2/map.bin"
+
+PacifidlogTown_House2_MapAttributes:: @ 82CF83C
+PacifidlogTown_House4_MapAttributes:: @ 82CF83C
+ .4byte 0xa
+ .4byte 0x9
+ .4byte PacifidlogTown_House2_MapBorder
+ .4byte PacifidlogTown_House2_MapBlockdata
+ .4byte PacifidlogTown_House2_Tileset
+ .4byte PacifidlogTown_House2_Tileset2
+
+PetalburgCity_Gym_MapBorder:: @ 82CF854
+ .incbin "data/maps/PetalburgCity_Gym/border.bin"
+
+PetalburgCity_Gym_MapBlockdata:: @ 82CF85C
+ .incbin "data/maps/PetalburgCity_Gym/map.bin"
+
+PetalburgCity_Gym_MapAttributes:: @ 82D003C
+ .4byte 0x9
+ .4byte 0x70
+ .4byte PetalburgCity_Gym_MapBorder
+ .4byte PetalburgCity_Gym_MapBlockdata
+ .4byte PetalburgCity_Gym_Tileset
+ .4byte PetalburgCity_Gym_Tileset2
+
+PetalburgCity_House2_MapBorder:: @ 82D0054
+ .incbin "data/maps/PetalburgCity_House2/border.bin"
+
+PetalburgCity_House2_MapBlockdata:: @ 82D005C
+ .incbin "data/maps/PetalburgCity_House2/map.bin"
+
+MossdeepCity_House4_MapAttributes:: @ 82D00FC
+PetalburgCity_House2_MapAttributes:: @ 82D00FC
+SlateportCity_House1_MapAttributes:: @ 82D00FC
+ .4byte 0xa
+ .4byte 0x8
+ .4byte PetalburgCity_House2_MapBorder
+ .4byte PetalburgCity_House2_MapBlockdata
+ .4byte PetalburgCity_House2_Tileset
+ .4byte PetalburgCity_House2_Tileset2
+
+SlateportCity_SternsShipyard_1F_MapBorder:: @ 82D0114
+ .incbin "data/maps/SlateportCity_SternsShipyard_1F/border.bin"
+
+SlateportCity_SternsShipyard_1F_MapBlockdata:: @ 82D011C
+ .incbin "data/maps/SlateportCity_SternsShipyard_1F/map.bin"
+
+ .incbin "baserom.gba", 0x2d0392, 0x2
+
+SlateportCity_SternsShipyard_1F_MapAttributes:: @ 82D0394
+ .4byte 0x15
+ .4byte 0xf
+ .4byte SlateportCity_SternsShipyard_1F_MapBorder
+ .4byte SlateportCity_SternsShipyard_1F_MapBlockdata
+ .4byte SlateportCity_SternsShipyard_1F_Tileset
+ .4byte SlateportCity_SternsShipyard_1F_Tileset2
+
+SlateportCity_SternsShipyard_2F_MapBorder:: @ 82D03AC
+ .incbin "data/maps/SlateportCity_SternsShipyard_2F/border.bin"
+
+SlateportCity_SternsShipyard_2F_MapBlockdata:: @ 82D03B4
+ .incbin "data/maps/SlateportCity_SternsShipyard_2F/map.bin"
+
+ .incbin "baserom.gba", 0x2d05b2, 0x2
+
+SlateportCity_SternsShipyard_2F_MapAttributes:: @ 82D05B4
+ .4byte 0x11
+ .4byte 0xf
+ .4byte SlateportCity_SternsShipyard_2F_MapBorder
+ .4byte SlateportCity_SternsShipyard_2F_MapBlockdata
+ .4byte SlateportCity_SternsShipyard_2F_Tileset
+ .4byte SlateportCity_SternsShipyard_2F_Tileset2
+
+ .incbin "baserom.gba", 0x2d05cc, 0x48
+
+SlateportCity_PokemonFanClub_MapBorder:: @ 82D0614
+ .incbin "data/maps/SlateportCity_PokemonFanClub/border.bin"
+
+SlateportCity_PokemonFanClub_MapBlockdata:: @ 82D061C
+ .incbin "data/maps/SlateportCity_PokemonFanClub/map.bin"
+
+SlateportCity_PokemonFanClub_MapAttributes:: @ 82D0750
+ .4byte 0xe
+ .4byte 0xb
+ .4byte SlateportCity_PokemonFanClub_MapBorder
+ .4byte SlateportCity_PokemonFanClub_MapBlockdata
+ .4byte SlateportCity_PokemonFanClub_Tileset
+ .4byte SlateportCity_PokemonFanClub_Tileset2
+
+SlateportCity_OceanicMuseum_1F_MapBorder:: @ 82D0768
+ .incbin "data/maps/SlateportCity_OceanicMuseum_1F/border.bin"
+
+SlateportCity_OceanicMuseum_1F_MapBlockdata:: @ 82D0770
+ .incbin "data/maps/SlateportCity_OceanicMuseum_1F/map.bin"
+
+SlateportCity_OceanicMuseum_1F_MapAttributes:: @ 82D08D8
+ .4byte 0x14
+ .4byte 0x9
+ .4byte SlateportCity_OceanicMuseum_1F_MapBorder
+ .4byte SlateportCity_OceanicMuseum_1F_MapBlockdata
+ .4byte SlateportCity_OceanicMuseum_1F_Tileset
+ .4byte SlateportCity_OceanicMuseum_1F_Tileset2
+
+SlateportCity_OceanicMuseum_2F_MapBorder:: @ 82D08F0
+ .incbin "data/maps/SlateportCity_OceanicMuseum_2F/border.bin"
+
+SlateportCity_OceanicMuseum_2F_MapBlockdata:: @ 82D08F8
+ .incbin "data/maps/SlateportCity_OceanicMuseum_2F/map.bin"
+
+SlateportCity_OceanicMuseum_2F_MapAttributes:: @ 82D0A60
+ .4byte 0x14
+ .4byte 0x9
+ .4byte SlateportCity_OceanicMuseum_2F_MapBorder
+ .4byte SlateportCity_OceanicMuseum_2F_MapBlockdata
+ .4byte SlateportCity_OceanicMuseum_2F_Tileset
+ .4byte SlateportCity_OceanicMuseum_2F_Tileset2
+
+SlateportCity_Harbor_MapBorder:: @ 82D0A78
+ .incbin "data/maps/SlateportCity_Harbor/border.bin"
+
+SlateportCity_Harbor_MapBlockdata:: @ 82D0A80
+ .incbin "data/maps/SlateportCity_Harbor/map.bin"
+
+LilycoveCity_Harbor_MapAttributes:: @ 82D0D50
+SlateportCity_Harbor_MapAttributes:: @ 82D0D50
+ .4byte 0x18
+ .4byte 0xf
+ .4byte SlateportCity_Harbor_MapBorder
+ .4byte SlateportCity_Harbor_MapBlockdata
+ .4byte SlateportCity_Harbor_Tileset
+ .4byte SlateportCity_Harbor_Tileset2
+
+MauvilleCity_Gym_MapBorder:: @ 82D0D68
+ .incbin "data/maps/MauvilleCity_Gym/border.bin"
+
+MauvilleCity_Gym_MapBlockdata:: @ 82D0D70
+ .incbin "data/maps/MauvilleCity_Gym/map.bin"
+
+MauvilleCity_Gym_MapAttributes:: @ 82D0F14
+ .4byte 0xa
+ .4byte 0x15
+ .4byte MauvilleCity_Gym_MapBorder
+ .4byte MauvilleCity_Gym_MapBlockdata
+ .4byte MauvilleCity_Gym_Tileset
+ .4byte MauvilleCity_Gym_Tileset2
+
+MauvilleCity_BikeShop_MapBorder:: @ 82D0F2C
+ .incbin "data/maps/MauvilleCity_BikeShop/border.bin"
+
+MauvilleCity_BikeShop_MapBlockdata:: @ 82D0F34
+ .incbin "data/maps/MauvilleCity_BikeShop/map.bin"
+
+MauvilleCity_BikeShop_MapAttributes:: @ 82D100C
+ .4byte 0xc
+ .4byte 0x9
+ .4byte MauvilleCity_BikeShop_MapBorder
+ .4byte MauvilleCity_BikeShop_MapBlockdata
+ .4byte MauvilleCity_BikeShop_Tileset
+ .4byte MauvilleCity_BikeShop_Tileset2
+
+MauvilleCity_GameCorner_MapBorder:: @ 82D1024
+ .incbin "data/maps/MauvilleCity_GameCorner/border.bin"
+
+MauvilleCity_GameCorner_MapBlockdata:: @ 82D102C
+ .incbin "data/maps/MauvilleCity_GameCorner/map.bin"
+
+MauvilleCity_GameCorner_MapAttributes:: @ 82D1210
+ .4byte 0x16
+ .4byte 0xb
+ .4byte MauvilleCity_GameCorner_MapBorder
+ .4byte MauvilleCity_GameCorner_MapBlockdata
+ .4byte MauvilleCity_GameCorner_Tileset
+ .4byte MauvilleCity_GameCorner_Tileset2
+
+RustboroCity_DevonCorp_1F_MapBorder:: @ 82D1228
+ .incbin "data/maps/RustboroCity_DevonCorp_1F/border.bin"
+
+RustboroCity_DevonCorp_1F_MapBlockdata:: @ 82D1230
+ .incbin "data/maps/RustboroCity_DevonCorp_1F/map.bin"
+
+ .incbin "baserom.gba", 0x2d1386, 0x2
+
+RustboroCity_DevonCorp_1F_MapAttributes:: @ 82D1388
+ .4byte 0x13
+ .4byte 0x9
+ .4byte RustboroCity_DevonCorp_1F_MapBorder
+ .4byte RustboroCity_DevonCorp_1F_MapBlockdata
+ .4byte RustboroCity_DevonCorp_1F_Tileset
+ .4byte RustboroCity_DevonCorp_1F_Tileset2
+
+RustboroCity_DevonCorp_2F_MapBorder:: @ 82D13A0
+ .incbin "data/maps/RustboroCity_DevonCorp_2F/border.bin"
+
+RustboroCity_DevonCorp_2F_MapBlockdata:: @ 82D13A8
+ .incbin "data/maps/RustboroCity_DevonCorp_2F/map.bin"
+
+ .incbin "baserom.gba", 0x2d14fe, 0x2
+
+RustboroCity_DevonCorp_2F_MapAttributes:: @ 82D1500
+ .4byte 0x13
+ .4byte 0x9
+ .4byte RustboroCity_DevonCorp_2F_MapBorder
+ .4byte RustboroCity_DevonCorp_2F_MapBlockdata
+ .4byte RustboroCity_DevonCorp_2F_Tileset
+ .4byte RustboroCity_DevonCorp_2F_Tileset2
+
+RustboroCity_Gym_MapBorder:: @ 82D1518
+ .incbin "data/maps/RustboroCity_Gym/border.bin"
+
+RustboroCity_Gym_MapBlockdata:: @ 82D1520
+ .incbin "data/maps/RustboroCity_Gym/map.bin"
+
+ .incbin "baserom.gba", 0x2d16c2, 0x2
+
+RustboroCity_Gym_MapAttributes:: @ 82D16C4
+ .4byte 0xb
+ .4byte 0x13
+ .4byte RustboroCity_Gym_MapBorder
+ .4byte RustboroCity_Gym_MapBlockdata
+ .4byte RustboroCity_Gym_Tileset
+ .4byte RustboroCity_Gym_Tileset2
+
+RustboroCity_PokemonSchool_MapBorder:: @ 82D16DC
+ .incbin "data/maps/RustboroCity_PokemonSchool/border.bin"
+
+RustboroCity_PokemonSchool_MapBlockdata:: @ 82D16E4
+ .incbin "data/maps/RustboroCity_PokemonSchool/map.bin"
+
+RustboroCity_PokemonSchool_MapAttributes:: @ 82D17EC
+ .4byte 0xc
+ .4byte 0xb
+ .4byte RustboroCity_PokemonSchool_MapBorder
+ .4byte RustboroCity_PokemonSchool_MapBlockdata
+ .4byte RustboroCity_PokemonSchool_Tileset
+ .4byte RustboroCity_PokemonSchool_Tileset2
+
+RustboroCity_House2_MapBorder:: @ 82D1804
+ .incbin "data/maps/RustboroCity_House2/border.bin"
+
+RustboroCity_House2_MapBlockdata:: @ 82D180C
+ .incbin "data/maps/RustboroCity_House2/map.bin"
+
+RustboroCity_House2_MapAttributes:: @ 82D18E4
+RustboroCity_House3_MapAttributes:: @ 82D18E4
+ .4byte 0xc
+ .4byte 0x9
+ .4byte RustboroCity_House2_MapBorder
+ .4byte RustboroCity_House2_MapBlockdata
+ .4byte RustboroCity_House2_Tileset
+ .4byte RustboroCity_House2_Tileset2
+
+RustboroCity_House1_MapBorder:: @ 82D18FC
+ .incbin "data/maps/RustboroCity_House1/border.bin"
+
+RustboroCity_House1_MapBlockdata:: @ 82D1904
+ .incbin "data/maps/RustboroCity_House1/map.bin"
+
+RustboroCity_House1_MapAttributes:: @ 82D19D4
+ .4byte 0xd
+ .4byte 0x8
+ .4byte RustboroCity_House1_MapBorder
+ .4byte RustboroCity_House1_MapBlockdata
+ .4byte RustboroCity_House1_Tileset
+ .4byte RustboroCity_House1_Tileset2
+
+RustboroCity_CuttersHouse_MapBorder:: @ 82D19EC
+ .incbin "data/maps/RustboroCity_CuttersHouse/border.bin"
+
+RustboroCity_CuttersHouse_MapBlockdata:: @ 82D19F4
+ .incbin "data/maps/RustboroCity_CuttersHouse/map.bin"
+
+ .incbin "baserom.gba", 0x2d1aba, 0x2
+
+RustboroCity_CuttersHouse_MapAttributes:: @ 82D1ABC
+ .4byte 0xb
+ .4byte 0x9
+ .4byte RustboroCity_CuttersHouse_MapBorder
+ .4byte RustboroCity_CuttersHouse_MapBlockdata
+ .4byte RustboroCity_CuttersHouse_Tileset
+ .4byte RustboroCity_CuttersHouse_Tileset2
+
+FortreeCity_House1_MapBorder:: @ 82D1AD4
+ .incbin "data/maps/FortreeCity_House1/border.bin"
+
+FortreeCity_House1_MapBlockdata:: @ 82D1ADC
+ .incbin "data/maps/FortreeCity_House1/map.bin"
+
+FortreeCity_House1_MapAttributes:: @ 82D1B3C
+FortreeCity_House3_MapAttributes:: @ 82D1B3C
+FortreeCity_House5_MapAttributes:: @ 82D1B3C
+ .4byte 0x8
+ .4byte 0x6
+ .4byte FortreeCity_House1_MapBorder
+ .4byte FortreeCity_House1_MapBlockdata
+ .4byte FortreeCity_House1_Tileset
+ .4byte FortreeCity_House1_Tileset2
+
+FortreeCity_Gym_MapBorder:: @ 82D1B54
+ .incbin "data/maps/FortreeCity_Gym/border.bin"
+
+FortreeCity_Gym_MapBlockdata:: @ 82D1B5C
+ .incbin "data/maps/FortreeCity_Gym/map.bin"
+
+FortreeCity_Gym_MapAttributes:: @ 82D1F44
+ .4byte 0x14
+ .4byte 0x19
+ .4byte FortreeCity_Gym_MapBorder
+ .4byte FortreeCity_Gym_MapBlockdata
+ .4byte FortreeCity_Gym_Tileset
+ .4byte FortreeCity_Gym_Tileset2
+
+FortreeCity_House2_MapBorder:: @ 82D1F5C
+ .incbin "data/maps/FortreeCity_House2/border.bin"
+
+FortreeCity_House2_MapBlockdata:: @ 82D1F64
+ .incbin "data/maps/FortreeCity_House2/map.bin"
+
+FortreeCity_House2_MapAttributes:: @ 82D1FC4
+FortreeCity_House4_MapAttributes:: @ 82D1FC4
+ .4byte 0x8
+ .4byte 0x6
+ .4byte FortreeCity_House2_MapBorder
+ .4byte FortreeCity_House2_MapBlockdata
+ .4byte FortreeCity_House2_Tileset
+ .4byte FortreeCity_House2_Tileset2
+
+Route104_MrBrineysHouse_MapBorder:: @ 82D1FDC
+ .incbin "data/maps/Route104_MrBrineysHouse/border.bin"
+
+Route104_MrBrineysHouse_MapBlockdata:: @ 82D1FE4
+ .incbin "data/maps/Route104_MrBrineysHouse/map.bin"
+
+Route104_MrBrineysHouse_MapAttributes:: @ 82D20BC
+ .4byte 0xc
+ .4byte 0x9
+ .4byte Route104_MrBrineysHouse_MapBorder
+ .4byte Route104_MrBrineysHouse_MapBlockdata
+ .4byte Route104_MrBrineysHouse_Tileset
+ .4byte Route104_MrBrineysHouse_Tileset2
+
+LilycoveCity_LilycoveMuseum_1F_MapBorder:: @ 82D20D4
+ .incbin "data/maps/LilycoveCity_LilycoveMuseum_1F/border.bin"
+
+LilycoveCity_LilycoveMuseum_1F_MapBlockdata:: @ 82D20DC
+ .incbin "data/maps/LilycoveCity_LilycoveMuseum_1F/map.bin"
+
+LilycoveCity_LilycoveMuseum_1F_MapAttributes:: @ 82D2328
+ .4byte 0x15
+ .4byte 0xe
+ .4byte LilycoveCity_LilycoveMuseum_1F_MapBorder
+ .4byte LilycoveCity_LilycoveMuseum_1F_MapBlockdata
+ .4byte LilycoveCity_LilycoveMuseum_1F_Tileset
+ .4byte LilycoveCity_LilycoveMuseum_1F_Tileset2
+
+LilycoveCity_LilycoveMuseum_2F_MapBorder:: @ 82D2340
+ .incbin "data/maps/LilycoveCity_LilycoveMuseum_2F/border.bin"
+
+LilycoveCity_LilycoveMuseum_2F_MapBlockdata:: @ 82D2348
+ .incbin "data/maps/LilycoveCity_LilycoveMuseum_2F/map.bin"
+
+LilycoveCity_LilycoveMuseum_2F_MapAttributes:: @ 82D2584
+ .4byte 0x16
+ .4byte 0xd
+ .4byte LilycoveCity_LilycoveMuseum_2F_MapBorder
+ .4byte LilycoveCity_LilycoveMuseum_2F_MapBlockdata
+ .4byte LilycoveCity_LilycoveMuseum_2F_Tileset
+ .4byte LilycoveCity_LilycoveMuseum_2F_Tileset2
+
+LilycoveCity_ContestLobby_MapBorder:: @ 82D259C
+ .incbin "data/maps/LilycoveCity_ContestLobby/border.bin"
+
+LilycoveCity_ContestLobby_MapBlockdata:: @ 82D25A4
+ .incbin "data/maps/LilycoveCity_ContestLobby/map.bin"
+
+LilycoveCity_ContestLobby_MapAttributes:: @ 82D27CC
+ .4byte 0x17
+ .4byte 0xc
+ .4byte LilycoveCity_ContestLobby_MapBorder
+ .4byte LilycoveCity_ContestLobby_MapBlockdata
+ .4byte LilycoveCity_ContestLobby_Tileset
+ .4byte LilycoveCity_ContestLobby_Tileset2
+
+LilycoveCity_ContestHall_MapBorder:: @ 82D27E4
+ .incbin "data/maps/LilycoveCity_ContestHall/border.bin"
+
+LilycoveCity_ContestHall_MapBlockdata:: @ 82D27EC
+ .incbin "data/maps/LilycoveCity_ContestHall/map.bin"
+
+ .incbin "baserom.gba", 0x2d3512, 0x2
+
+LilycoveCity_ContestHall_MapAttributes:: @ 82D3514
+ .4byte 0x33
+ .4byte 0x21
+ .4byte LilycoveCity_ContestHall_MapBorder
+ .4byte LilycoveCity_ContestHall_MapBlockdata
+ .4byte LilycoveCity_ContestHall_Tileset
+ .4byte LilycoveCity_ContestHall_Tileset2
+
+LilycoveCity_PokemonTrainerFanClub_MapBorder:: @ 82D352C
+ .incbin "data/maps/LilycoveCity_PokemonTrainerFanClub/border.bin"
+
+LilycoveCity_PokemonTrainerFanClub_MapBlockdata:: @ 82D3534
+ .incbin "data/maps/LilycoveCity_PokemonTrainerFanClub/map.bin"
+
+LilycoveCity_PokemonTrainerFanClub_MapAttributes:: @ 82D3684
+ .4byte 0xc
+ .4byte 0xe
+ .4byte LilycoveCity_PokemonTrainerFanClub_MapBorder
+ .4byte LilycoveCity_PokemonTrainerFanClub_MapBlockdata
+ .4byte LilycoveCity_PokemonTrainerFanClub_Tileset
+ .4byte LilycoveCity_PokemonTrainerFanClub_Tileset2
+
+LilycoveCity_EmptyMap_MapBorder:: @ 82D369C
+ .incbin "data/maps/LilycoveCity_EmptyMap/border.bin"
+
+LilycoveCity_EmptyMap_MapBlockdata:: @ 82D36A4
+ .incbin "data/maps/LilycoveCity_EmptyMap/map.bin"
+
+ .incbin "baserom.gba", 0x2d36a6, 0x2
+
+LilycoveCity_EmptyMap_MapAttributes:: @ 82D36A8
+ .4byte 0x1
+ .4byte 0x1
+ .4byte LilycoveCity_EmptyMap_MapBorder
+ .4byte LilycoveCity_EmptyMap_MapBlockdata
+ .4byte LilycoveCity_EmptyMap_Tileset
+ .4byte LilycoveCity_EmptyMap_Tileset2
+
+MossdeepCity_Gym_MapBorder:: @ 82D36C0
+ .incbin "data/maps/MossdeepCity_Gym/border.bin"
+
+MossdeepCity_Gym_MapBlockdata:: @ 82D36C8
+ .incbin "data/maps/MossdeepCity_Gym/map.bin"
+
+MossdeepCity_Gym_MapAttributes:: @ 82D3B78
+ .4byte 0x14
+ .4byte 0x1e
+ .4byte MossdeepCity_Gym_MapBorder
+ .4byte MossdeepCity_Gym_MapBlockdata
+ .4byte MossdeepCity_Gym_Tileset
+ .4byte MossdeepCity_Gym_Tileset2
+
+SootopolisCity_Gym_1F_MapBorder:: @ 82D3B90
+ .incbin "data/maps/SootopolisCity_Gym_1F/border.bin"
+
+SootopolisCity_Gym_1F_MapBlockdata:: @ 82D3B98
+ .incbin "data/maps/SootopolisCity_Gym_1F/map.bin"
+
+SootopolisCity_Gym_1F_MapAttributes:: @ 82D3F0C
+ .4byte 0x11
+ .4byte 0x1a
+ .4byte SootopolisCity_Gym_1F_MapBorder
+ .4byte SootopolisCity_Gym_1F_MapBlockdata
+ .4byte SootopolisCity_Gym_1F_Tileset
+ .4byte SootopolisCity_Gym_1F_Tileset2
+
+SootopolisCity_Gym_B1F_MapBorder:: @ 82D3F24
+ .incbin "data/maps/SootopolisCity_Gym_B1F/border.bin"
+
+SootopolisCity_Gym_B1F_MapBlockdata:: @ 82D3F2C
+ .incbin "data/maps/SootopolisCity_Gym_B1F/map.bin"
+
+SootopolisCity_Gym_B1F_MapAttributes:: @ 82D42A0
+ .4byte 0x11
+ .4byte 0x1a
+ .4byte SootopolisCity_Gym_B1F_MapBorder
+ .4byte SootopolisCity_Gym_B1F_MapBlockdata
+ .4byte SootopolisCity_Gym_B1F_Tileset
+ .4byte SootopolisCity_Gym_B1F_Tileset2
+
+EverGrandeCity_SidneysRoom_MapBorder:: @ 82D42B8
+ .incbin "data/maps/EverGrandeCity_SidneysRoom/border.bin"
+
+EverGrandeCity_SidneysRoom_MapBlockdata:: @ 82D42C0
+ .incbin "data/maps/EverGrandeCity_SidneysRoom/map.bin"
+
+EverGrandeCity_SidneysRoom_MapAttributes:: @ 82D442C
+ .4byte 0xd
+ .4byte 0xe
+ .4byte EverGrandeCity_SidneysRoom_MapBorder
+ .4byte EverGrandeCity_SidneysRoom_MapBlockdata
+ .4byte EverGrandeCity_SidneysRoom_Tileset
+ .4byte EverGrandeCity_SidneysRoom_Tileset2
+
+EverGrandeCity_PhoebesRoom_MapBorder:: @ 82D4444
+ .incbin "data/maps/EverGrandeCity_PhoebesRoom/border.bin"
+
+EverGrandeCity_PhoebesRoom_MapBlockdata:: @ 82D444C
+ .incbin "data/maps/EverGrandeCity_PhoebesRoom/map.bin"
+
+EverGrandeCity_PhoebesRoom_MapAttributes:: @ 82D45B8
+ .4byte 0xd
+ .4byte 0xe
+ .4byte EverGrandeCity_PhoebesRoom_MapBorder
+ .4byte EverGrandeCity_PhoebesRoom_MapBlockdata
+ .4byte EverGrandeCity_PhoebesRoom_Tileset
+ .4byte EverGrandeCity_PhoebesRoom_Tileset2
+
+EverGrandeCity_GlaciasRoom_MapBorder:: @ 82D45D0
+ .incbin "data/maps/EverGrandeCity_GlaciasRoom/border.bin"
+
+EverGrandeCity_GlaciasRoom_MapBlockdata:: @ 82D45D8
+ .incbin "data/maps/EverGrandeCity_GlaciasRoom/map.bin"
+
+EverGrandeCity_GlaciasRoom_MapAttributes:: @ 82D4744
+ .4byte 0xd
+ .4byte 0xe
+ .4byte EverGrandeCity_GlaciasRoom_MapBorder
+ .4byte EverGrandeCity_GlaciasRoom_MapBlockdata
+ .4byte EverGrandeCity_GlaciasRoom_Tileset
+ .4byte EverGrandeCity_GlaciasRoom_Tileset2
+
+EverGrandeCity_DrakesRoom_MapBorder:: @ 82D475C
+ .incbin "data/maps/EverGrandeCity_DrakesRoom/border.bin"
+
+EverGrandeCity_DrakesRoom_MapBlockdata:: @ 82D4764
+ .incbin "data/maps/EverGrandeCity_DrakesRoom/map.bin"
+
+EverGrandeCity_DrakesRoom_MapAttributes:: @ 82D48D0
+ .4byte 0xd
+ .4byte 0xe
+ .4byte EverGrandeCity_DrakesRoom_MapBorder
+ .4byte EverGrandeCity_DrakesRoom_MapBlockdata
+ .4byte EverGrandeCity_DrakesRoom_Tileset
+ .4byte EverGrandeCity_DrakesRoom_Tileset2
+
+EverGrandeCity_ChampionsRoom_MapBorder:: @ 82D48E8
+ .incbin "data/maps/EverGrandeCity_ChampionsRoom/border.bin"
+
+EverGrandeCity_ChampionsRoom_MapBlockdata:: @ 82D48F0
+ .incbin "data/maps/EverGrandeCity_ChampionsRoom/map.bin"
+
+ .incbin "baserom.gba", 0x2d4a42, 0x2
+
+EverGrandeCity_ChampionsRoom_MapAttributes:: @ 82D4A44
+ .4byte 0xd
+ .4byte 0xd
+ .4byte EverGrandeCity_ChampionsRoom_MapBorder
+ .4byte EverGrandeCity_ChampionsRoom_MapBlockdata
+ .4byte EverGrandeCity_ChampionsRoom_Tileset
+ .4byte EverGrandeCity_ChampionsRoom_Tileset2
+
+EverGrandeCity_Corridor1_MapBorder:: @ 82D4A5C
+ .incbin "data/maps/EverGrandeCity_Corridor1/border.bin"
+
+EverGrandeCity_Corridor1_MapBlockdata:: @ 82D4A64
+ .incbin "data/maps/EverGrandeCity_Corridor1/map.bin"
+
+ .incbin "baserom.gba", 0x2d4b82, 0x2
+
+EverGrandeCity_Corridor1_MapAttributes:: @ 82D4B84
+EverGrandeCity_Corridor2_MapAttributes:: @ 82D4B84
+EverGrandeCity_Corridor3_MapAttributes:: @ 82D4B84
+EverGrandeCity_Corridor5_MapAttributes:: @ 82D4B84
+ .4byte 0xb
+ .4byte 0xd
+ .4byte EverGrandeCity_Corridor1_MapBorder
+ .4byte EverGrandeCity_Corridor1_MapBlockdata
+ .4byte EverGrandeCity_Corridor1_Tileset
+ .4byte EverGrandeCity_Corridor1_Tileset2
+
+Route104_PrettyPetalFlowerShop_MapBorder:: @ 82D4B9C
+ .incbin "data/maps/Route104_PrettyPetalFlowerShop/border.bin"
+
+Route104_PrettyPetalFlowerShop_MapBlockdata:: @ 82D4BA4
+ .incbin "data/maps/Route104_PrettyPetalFlowerShop/map.bin"
+
+ .incbin "baserom.gba", 0x2d4cb2, 0x2
+
+Route104_PrettyPetalFlowerShop_MapAttributes:: @ 82D4CB4
+Route104_PrototypePrettyPetalFlowerShop_MapAttributes:: @ 82D4CB4
+ .4byte 0xf
+ .4byte 0x9
+ .4byte Route104_PrettyPetalFlowerShop_MapBorder
+ .4byte Route104_PrettyPetalFlowerShop_MapBlockdata
+ .4byte Route104_PrettyPetalFlowerShop_Tileset
+ .4byte Route104_PrettyPetalFlowerShop_Tileset2
+
+Route112_CableCarStation_MapBorder:: @ 82D4CCC
+ .incbin "data/maps/Route112_CableCarStation/border.bin"
+
+Route112_CableCarStation_MapBlockdata:: @ 82D4CD4
+ .incbin "data/maps/Route112_CableCarStation/map.bin"
+
+MtChimney_CableCarStation_MapAttributes:: @ 82D4E0C
+Route112_CableCarStation_MapAttributes:: @ 82D4E0C
+ .4byte 0xd
+ .4byte 0xc
+ .4byte Route112_CableCarStation_MapBorder
+ .4byte Route112_CableCarStation_MapBlockdata
+ .4byte Route112_CableCarStation_Tileset
+ .4byte Route112_CableCarStation_Tileset2
+
+Route114_FossilManiacsHouse_MapBorder:: @ 82D4E24
+ .incbin "data/maps/Route114_FossilManiacsHouse/border.bin"
+
+Route114_FossilManiacsHouse_MapBlockdata:: @ 82D4E2C
+ .incbin "data/maps/Route114_FossilManiacsHouse/map.bin"
+
+Route114_FossilManiacsHouse_MapAttributes:: @ 82D4ECC
+ .4byte 0xa
+ .4byte 0x8
+ .4byte Route114_FossilManiacsHouse_MapBorder
+ .4byte Route114_FossilManiacsHouse_MapBlockdata
+ .4byte Route114_FossilManiacsHouse_Tileset
+ .4byte Route114_FossilManiacsHouse_Tileset2
+
+Route114_FossilManiacsTunnel_MapBorder:: @ 82D4EE4
+ .incbin "data/maps/Route114_FossilManiacsTunnel/border.bin"
+
+Route114_FossilManiacsTunnel_MapBlockdata:: @ 82D4EEC
+ .incbin "data/maps/Route114_FossilManiacsTunnel/map.bin"
+
+Route114_FossilManiacsTunnel_MapAttributes:: @ 82D5190
+ .4byte 0xd
+ .4byte 0x1a
+ .4byte Route114_FossilManiacsTunnel_MapBorder
+ .4byte Route114_FossilManiacsTunnel_MapBlockdata
+ .4byte Route114_FossilManiacsTunnel_Tileset
+ .4byte Route114_FossilManiacsTunnel_Tileset2
+
+Route114_LanettesHouse_MapBorder:: @ 82D51A8
+ .incbin "data/maps/Route114_LanettesHouse/border.bin"
+
+Route114_LanettesHouse_MapBlockdata:: @ 82D51B0
+ .incbin "data/maps/Route114_LanettesHouse/map.bin"
+
+Route114_LanettesHouse_MapAttributes:: @ 82D5260
+ .4byte 0xb
+ .4byte 0x8
+ .4byte Route114_LanettesHouse_MapBorder
+ .4byte Route114_LanettesHouse_MapBlockdata
+ .4byte Route114_LanettesHouse_Tileset
+ .4byte Route114_LanettesHouse_Tileset2
+
+Route116_TunnelersRestHouse_MapBorder:: @ 82D5278
+ .incbin "data/maps/Route116_TunnelersRestHouse/border.bin"
+
+Route116_TunnelersRestHouse_MapBlockdata:: @ 82D5280
+ .incbin "data/maps/Route116_TunnelersRestHouse/map.bin"
+
+Route116_TunnelersRestHouse_MapAttributes:: @ 82D5334
+ .4byte 0xa
+ .4byte 0x9
+ .4byte Route116_TunnelersRestHouse_MapBorder
+ .4byte Route116_TunnelersRestHouse_MapBlockdata
+ .4byte Route116_TunnelersRestHouse_Tileset
+ .4byte Route116_TunnelersRestHouse_Tileset2
+
+Route117_PokemonDayCare_MapBorder:: @ 82D534C
+ .incbin "data/maps/Route117_PokemonDayCare/border.bin"
+
+Route117_PokemonDayCare_MapBlockdata:: @ 82D5354
+ .incbin "data/maps/Route117_PokemonDayCare/map.bin"
+
+Route117_PokemonDayCare_MapAttributes:: @ 82D542C
+ .4byte 0xc
+ .4byte 0x9
+ .4byte Route117_PokemonDayCare_MapBorder
+ .4byte Route117_PokemonDayCare_MapBlockdata
+ .4byte Route117_PokemonDayCare_Tileset
+ .4byte Route117_PokemonDayCare_Tileset2
+
+Route121_SafariZoneEntrance_MapBorder:: @ 82D5444
+ .incbin "data/maps/Route121_SafariZoneEntrance/border.bin"
+
+Route121_SafariZoneEntrance_MapBlockdata:: @ 82D544C
+ .incbin "data/maps/Route121_SafariZoneEntrance/map.bin"
+
+Route121_SafariZoneEntrance_MapAttributes:: @ 82D5644
+ .4byte 0x12
+ .4byte 0xe
+ .4byte Route121_SafariZoneEntrance_MapBorder
+ .4byte Route121_SafariZoneEntrance_MapBlockdata
+ .4byte Route121_SafariZoneEntrance_Tileset
+ .4byte Route121_SafariZoneEntrance_Tileset2
+
+MeteorFalls_1F_1R_MapBorder:: @ 82D565C
+ .incbin "data/maps/MeteorFalls_1F_1R/border.bin"
+
+MeteorFalls_1F_1R_MapBlockdata:: @ 82D5664
+ .incbin "data/maps/MeteorFalls_1F_1R/map.bin"
+
+MeteorFalls_1F_1R_MapAttributes:: @ 82D603C
+ .4byte 0x1e
+ .4byte 0x2a
+ .4byte MeteorFalls_1F_1R_MapBorder
+ .4byte MeteorFalls_1F_1R_MapBlockdata
+ .4byte MeteorFalls_1F_1R_Tileset
+ .4byte MeteorFalls_1F_1R_Tileset2
+
+MeteorFalls_1F_2R_MapBorder:: @ 82D6054
+ .incbin "data/maps/MeteorFalls_1F_2R/border.bin"
+
+MeteorFalls_1F_2R_MapBlockdata:: @ 82D605C
+ .incbin "data/maps/MeteorFalls_1F_2R/map.bin"
+
+MeteorFalls_1F_2R_MapAttributes:: @ 82D67DC
+ .4byte 0x1e
+ .4byte 0x20
+ .4byte MeteorFalls_1F_2R_MapBorder
+ .4byte MeteorFalls_1F_2R_MapBlockdata
+ .4byte MeteorFalls_1F_2R_Tileset
+ .4byte MeteorFalls_1F_2R_Tileset2
+
+MeteorFalls_B1F_1R_MapBorder:: @ 82D67F4
+ .incbin "data/maps/MeteorFalls_B1F_1R/border.bin"
+
+MeteorFalls_B1F_1R_MapBlockdata:: @ 82D67FC
+ .incbin "data/maps/MeteorFalls_B1F_1R/map.bin"
+
+MeteorFalls_B1F_1R_MapAttributes:: @ 82D7098
+ .4byte 0x1d
+ .4byte 0x26
+ .4byte MeteorFalls_B1F_1R_MapBorder
+ .4byte MeteorFalls_B1F_1R_MapBlockdata
+ .4byte MeteorFalls_B1F_1R_Tileset
+ .4byte MeteorFalls_B1F_1R_Tileset2
+
+MeteorFalls_B1F_2R_MapBorder:: @ 82D70B0
+ .incbin "data/maps/MeteorFalls_B1F_2R/border.bin"
+
+MeteorFalls_B1F_2R_MapBlockdata:: @ 82D70B8
+ .incbin "data/maps/MeteorFalls_B1F_2R/map.bin"
+
+MeteorFalls_B1F_2R_MapAttributes:: @ 82D7244
+ .4byte 0xb
+ .4byte 0x12
+ .4byte MeteorFalls_B1F_2R_MapBorder
+ .4byte MeteorFalls_B1F_2R_MapBlockdata
+ .4byte MeteorFalls_B1F_2R_Tileset
+ .4byte MeteorFalls_B1F_2R_Tileset2
+
+RusturfTunnel_MapBorder:: @ 82D725C
+ .incbin "data/maps/RusturfTunnel/border.bin"
+
+RusturfTunnel_MapBlockdata:: @ 82D7264
+ .incbin "data/maps/RusturfTunnel/map.bin"
+
+RusturfTunnel_MapAttributes:: @ 82D7924
+ .4byte 0x24
+ .4byte 0x18
+ .4byte RusturfTunnel_MapBorder
+ .4byte RusturfTunnel_MapBlockdata
+ .4byte RusturfTunnel_Tileset
+ .4byte RusturfTunnel_Tileset2
+
+Underwater_SootopolisCity_MapBorder:: @ 82D793C
+ .incbin "data/maps/Underwater_SootopolisCity/border.bin"
+
+Underwater_SootopolisCity_MapBlockdata:: @ 82D7944
+ .incbin "data/maps/Underwater_SootopolisCity/map.bin"
+
+Underwater_SootopolisCity_MapAttributes:: @ 82D7AD4
+ .4byte 0x14
+ .4byte 0xa
+ .4byte Underwater_SootopolisCity_MapBorder
+ .4byte Underwater_SootopolisCity_MapBlockdata
+ .4byte Underwater_SootopolisCity_Tileset
+ .4byte Underwater_SootopolisCity_Tileset2
+
+DesertRuins_MapBorder:: @ 82D7AEC
+ .incbin "data/maps/DesertRuins/border.bin"
+
+DesertRuins_MapBlockdata:: @ 82D7AF4
+ .incbin "data/maps/DesertRuins/map.bin"
+
+ .incbin "baserom.gba", 0x2d7f56, 0x2
+
+DesertRuins_MapAttributes:: @ 82D7F58
+ .4byte 0x11
+ .4byte 0x21
+ .4byte DesertRuins_MapBorder
+ .4byte DesertRuins_MapBlockdata
+ .4byte DesertRuins_Tileset
+ .4byte DesertRuins_Tileset2
+
+GraniteCave_1F_MapBorder:: @ 82D7F70
+ .incbin "data/maps/GraniteCave_1F/border.bin"
+
+GraniteCave_1F_MapBlockdata:: @ 82D7F78
+ .incbin "data/maps/GraniteCave_1F/map.bin"
+
+GraniteCave_1F_MapAttributes:: @ 82D8464
+ .4byte 0x2a
+ .4byte 0xf
+ .4byte GraniteCave_1F_MapBorder
+ .4byte GraniteCave_1F_MapBlockdata
+ .4byte GraniteCave_1F_Tileset
+ .4byte GraniteCave_1F_Tileset2
+
+GraniteCave_B1F_MapBorder:: @ 82D847C
+ .incbin "data/maps/GraniteCave_B1F/border.bin"
+
+GraniteCave_B1F_MapBlockdata:: @ 82D8484
+ .incbin "data/maps/GraniteCave_B1F/map.bin"
+
+GraniteCave_B1F_MapAttributes:: @ 82D8B04
+ .4byte 0x20
+ .4byte 0x1a
+ .4byte GraniteCave_B1F_MapBorder
+ .4byte GraniteCave_B1F_MapBlockdata
+ .4byte GraniteCave_B1F_Tileset
+ .4byte GraniteCave_B1F_Tileset2
+
+GraniteCave_B2F_MapBorder:: @ 82D8B1C
+ .incbin "data/maps/GraniteCave_B2F/border.bin"
+
+GraniteCave_B2F_MapBlockdata:: @ 82D8B24
+ .incbin "data/maps/GraniteCave_B2F/map.bin"
+
+GraniteCave_B2F_MapAttributes:: @ 82D91A4
+ .4byte 0x20
+ .4byte 0x1a
+ .4byte GraniteCave_B2F_MapBorder
+ .4byte GraniteCave_B2F_MapBlockdata
+ .4byte GraniteCave_B2F_Tileset
+ .4byte GraniteCave_B2F_Tileset2
+
+PetalburgWoods_MapBorder:: @ 82D91BC
+ .incbin "data/maps/PetalburgWoods/border.bin"
+
+PetalburgWoods_MapBlockdata:: @ 82D91C4
+ .incbin "data/maps/PetalburgWoods/map.bin"
+
+PetalburgWoods_MapAttributes:: @ 82DA244
+ .4byte 0x30
+ .4byte 0x2c
+ .4byte PetalburgWoods_MapBorder
+ .4byte PetalburgWoods_MapBlockdata
+ .4byte PetalburgWoods_Tileset
+ .4byte PetalburgWoods_Tileset2
+
+MtChimney_MapBorder:: @ 82DA25C
+ .incbin "data/maps/MtChimney/border.bin"
+
+MtChimney_MapBlockdata:: @ 82DA264
+ .incbin "data/maps/MtChimney/map.bin"
+
+MtChimney_MapAttributes:: @ 82DB114
+ .4byte 0x28
+ .4byte 0x2f
+ .4byte MtChimney_MapBorder
+ .4byte MtChimney_MapBlockdata
+ .4byte MtChimney_Tileset
+ .4byte MtChimney_Tileset2
+
+MtPyre_1F_MapBorder:: @ 82DB12C
+ .incbin "data/maps/MtPyre_1F/border.bin"
+
+MtPyre_1F_MapBlockdata:: @ 82DB134
+ .incbin "data/maps/MtPyre_1F/map.bin"
+
+MtPyre_1F_MapAttributes:: @ 82DB478
+ .4byte 0x16
+ .4byte 0x13
+ .4byte MtPyre_1F_MapBorder
+ .4byte MtPyre_1F_MapBlockdata
+ .4byte MtPyre_1F_Tileset
+ .4byte MtPyre_1F_Tileset2
+
+MtPyre_2F_MapBorder:: @ 82DB490
+ .incbin "data/maps/MtPyre_2F/border.bin"
+
+MtPyre_2F_MapBlockdata:: @ 82DB498
+ .incbin "data/maps/MtPyre_2F/map.bin"
+
+ .incbin "baserom.gba", 0x2db5ea, 0x2
+
+MtPyre_2F_MapAttributes:: @ 82DB5EC
+ .4byte 0xd
+ .4byte 0xd
+ .4byte MtPyre_2F_MapBorder
+ .4byte MtPyre_2F_MapBlockdata
+ .4byte MtPyre_2F_Tileset
+ .4byte MtPyre_2F_Tileset2
+
+MtPyre_3F_MapBorder:: @ 82DB604
+ .incbin "data/maps/MtPyre_3F/border.bin"
+
+MtPyre_3F_MapBlockdata:: @ 82DB60C
+ .incbin "data/maps/MtPyre_3F/map.bin"
+
+ .incbin "baserom.gba", 0x2db75e, 0x2
+
+MtPyre_3F_MapAttributes:: @ 82DB760
+ .4byte 0xd
+ .4byte 0xd
+ .4byte MtPyre_3F_MapBorder
+ .4byte MtPyre_3F_MapBlockdata
+ .4byte MtPyre_3F_Tileset
+ .4byte MtPyre_3F_Tileset2
+
+MtPyre_4F_MapBorder:: @ 82DB778
+ .incbin "data/maps/MtPyre_4F/border.bin"
+
+MtPyre_4F_MapBlockdata:: @ 82DB780
+ .incbin "data/maps/MtPyre_4F/map.bin"
+
+ .incbin "baserom.gba", 0x2db8d2, 0x2
+
+MtPyre_4F_MapAttributes:: @ 82DB8D4
+ .4byte 0xd
+ .4byte 0xd
+ .4byte MtPyre_4F_MapBorder
+ .4byte MtPyre_4F_MapBlockdata
+ .4byte MtPyre_4F_Tileset
+ .4byte MtPyre_4F_Tileset2
+
+MtPyre_5F_MapBorder:: @ 82DB8EC
+ .incbin "data/maps/MtPyre_5F/border.bin"
+
+MtPyre_5F_MapBlockdata:: @ 82DB8F4
+ .incbin "data/maps/MtPyre_5F/map.bin"
+
+ .incbin "baserom.gba", 0x2dba46, 0x2
+
+MtPyre_5F_MapAttributes:: @ 82DBA48
+ .4byte 0xd
+ .4byte 0xd
+ .4byte MtPyre_5F_MapBorder
+ .4byte MtPyre_5F_MapBlockdata
+ .4byte MtPyre_5F_Tileset
+ .4byte MtPyre_5F_Tileset2
+
+MtPyre_6F_MapBorder:: @ 82DBA60
+ .incbin "data/maps/MtPyre_6F/border.bin"
+
+MtPyre_6F_MapBlockdata:: @ 82DBA68
+ .incbin "data/maps/MtPyre_6F/map.bin"
+
+ .incbin "baserom.gba", 0x2dbbba, 0x2
+
+MtPyre_6F_MapAttributes:: @ 82DBBBC
+ .4byte 0xd
+ .4byte 0xd
+ .4byte MtPyre_6F_MapBorder
+ .4byte MtPyre_6F_MapBlockdata
+ .4byte MtPyre_6F_Tileset
+ .4byte MtPyre_6F_Tileset2
+
+AquaHideout_1F_MapBorder:: @ 82DBBD4
+ .incbin "data/maps/AquaHideout_1F/border.bin"
+
+AquaHideout_1F_MapBlockdata:: @ 82DBBDC
+ .incbin "data/maps/AquaHideout_1F/map.bin"
+
+AquaHideout_1F_MapAttributes:: @ 82DC26C
+ .4byte 0x1c
+ .4byte 0x1e
+ .4byte AquaHideout_1F_MapBorder
+ .4byte AquaHideout_1F_MapBlockdata
+ .4byte AquaHideout_1F_Tileset
+ .4byte AquaHideout_1F_Tileset2
+
+AquaHideout_B1F_MapBorder:: @ 82DC284
+ .incbin "data/maps/AquaHideout_B1F/border.bin"
+
+AquaHideout_B1F_MapBlockdata:: @ 82DC28C
+ .incbin "data/maps/AquaHideout_B1F/map.bin"
+
+AquaHideout_B1F_MapAttributes:: @ 82DCC1C
+ .4byte 0x33
+ .4byte 0x18
+ .4byte AquaHideout_B1F_MapBorder
+ .4byte AquaHideout_B1F_MapBlockdata
+ .4byte AquaHideout_B1F_Tileset
+ .4byte AquaHideout_B1F_Tileset2
+
+AquaHideout_B2F_MapBorder:: @ 82DCC34
+ .incbin "data/maps/AquaHideout_B2F/border.bin"
+
+AquaHideout_B2F_MapBlockdata:: @ 82DCC3C
+ .incbin "data/maps/AquaHideout_B2F/map.bin"
+
+AquaHideout_B2F_MapAttributes:: @ 82DD29C
+ .4byte 0x22
+ .4byte 0x18
+ .4byte AquaHideout_B2F_MapBorder
+ .4byte AquaHideout_B2F_MapBlockdata
+ .4byte AquaHideout_B2F_Tileset
+ .4byte AquaHideout_B2F_Tileset2
+
+Underwater_SeafloorCavern_MapBorder:: @ 82DD2B4
+ .incbin "data/maps/Underwater_SeafloorCavern/border.bin"
+
+Underwater_SeafloorCavern_MapBlockdata:: @ 82DD2BC
+ .incbin "data/maps/Underwater_SeafloorCavern/map.bin"
+
+Underwater_SeafloorCavern_MapAttributes:: @ 82DD3B8
+ .4byte 0xe
+ .4byte 0x9
+ .4byte Underwater_SeafloorCavern_MapBorder
+ .4byte Underwater_SeafloorCavern_MapBlockdata
+ .4byte Underwater_SeafloorCavern_Tileset
+ .4byte Underwater_SeafloorCavern_Tileset2
+
+SeafloorCavern_Entrance_MapBorder:: @ 82DD3D0
+ .incbin "data/maps/SeafloorCavern_Entrance/border.bin"
+
+SeafloorCavern_Entrance_MapBlockdata:: @ 82DD3D8
+ .incbin "data/maps/SeafloorCavern_Entrance/map.bin"
+
+SeafloorCavern_Entrance_MapAttributes:: @ 82DD6F8
+ .4byte 0x14
+ .4byte 0x14
+ .4byte SeafloorCavern_Entrance_MapBorder
+ .4byte SeafloorCavern_Entrance_MapBlockdata
+ .4byte SeafloorCavern_Entrance_Tileset
+ .4byte SeafloorCavern_Entrance_Tileset2
+
+SeafloorCavern_Room1_MapBorder:: @ 82DD710
+ .incbin "data/maps/SeafloorCavern_Room1/border.bin"
+
+SeafloorCavern_Room1_MapBlockdata:: @ 82DD718
+ .incbin "data/maps/SeafloorCavern_Room1/map.bin"
+
+SeafloorCavern_Room1_MapAttributes:: @ 82DDA60
+ .4byte 0x14
+ .4byte 0x15
+ .4byte SeafloorCavern_Room1_MapBorder
+ .4byte SeafloorCavern_Room1_MapBlockdata
+ .4byte SeafloorCavern_Room1_Tileset
+ .4byte SeafloorCavern_Room1_Tileset2
+
+SeafloorCavern_Room2_MapBorder:: @ 82DDA78
+ .incbin "data/maps/SeafloorCavern_Room2/border.bin"
+
+SeafloorCavern_Room2_MapBlockdata:: @ 82DDA80
+ .incbin "data/maps/SeafloorCavern_Room2/map.bin"
+
+SeafloorCavern_Room2_MapAttributes:: @ 82DDD74
+ .4byte 0x12
+ .4byte 0x15
+ .4byte SeafloorCavern_Room2_MapBorder
+ .4byte SeafloorCavern_Room2_MapBlockdata
+ .4byte SeafloorCavern_Room2_Tileset
+ .4byte SeafloorCavern_Room2_Tileset2
+
+SeafloorCavern_Room3_MapBorder:: @ 82DDD8C
+ .incbin "data/maps/SeafloorCavern_Room3/border.bin"
+
+SeafloorCavern_Room3_MapBlockdata:: @ 82DDD94
+ .incbin "data/maps/SeafloorCavern_Room3/map.bin"
+
+SeafloorCavern_Room3_MapAttributes:: @ 82DDFB4
+ .4byte 0x10
+ .4byte 0x11
+ .4byte SeafloorCavern_Room3_MapBorder
+ .4byte SeafloorCavern_Room3_MapBlockdata
+ .4byte SeafloorCavern_Room3_Tileset
+ .4byte SeafloorCavern_Room3_Tileset2
+
+SeafloorCavern_Room4_MapBorder:: @ 82DDFCC
+ .incbin "data/maps/SeafloorCavern_Room4/border.bin"
+
+SeafloorCavern_Room4_MapBlockdata:: @ 82DDFD4
+ .incbin "data/maps/SeafloorCavern_Room4/map.bin"
+
+SeafloorCavern_Room4_MapAttributes:: @ 82DE280
+ .4byte 0x12
+ .4byte 0x13
+ .4byte SeafloorCavern_Room4_MapBorder
+ .4byte SeafloorCavern_Room4_MapBlockdata
+ .4byte SeafloorCavern_Room4_Tileset
+ .4byte SeafloorCavern_Room4_Tileset2
+
+SeafloorCavern_Room5_MapBorder:: @ 82DE298
+ .incbin "data/maps/SeafloorCavern_Room5/border.bin"
+
+SeafloorCavern_Room5_MapBlockdata:: @ 82DE2A0
+ .incbin "data/maps/SeafloorCavern_Room5/map.bin"
+
+SeafloorCavern_Room5_MapAttributes:: @ 82DE5C0
+ .4byte 0x14
+ .4byte 0x14
+ .4byte SeafloorCavern_Room5_MapBorder
+ .4byte SeafloorCavern_Room5_MapBlockdata
+ .4byte SeafloorCavern_Room5_Tileset
+ .4byte SeafloorCavern_Room5_Tileset2
+
+SeafloorCavern_Room6_MapBorder:: @ 82DE5D8
+ .incbin "data/maps/SeafloorCavern_Room6/border.bin"
+
+SeafloorCavern_Room6_MapBlockdata:: @ 82DE5E0
+ .incbin "data/maps/SeafloorCavern_Room6/map.bin"
+
+SeafloorCavern_Room6_MapAttributes:: @ 82DEA30
+ .4byte 0x18
+ .4byte 0x17
+ .4byte SeafloorCavern_Room6_MapBorder
+ .4byte SeafloorCavern_Room6_MapBlockdata
+ .4byte SeafloorCavern_Room6_Tileset
+ .4byte SeafloorCavern_Room6_Tileset2
+
+SeafloorCavern_Room7_MapBorder:: @ 82DEA48
+ .incbin "data/maps/SeafloorCavern_Room7/border.bin"
+
+SeafloorCavern_Room7_MapBlockdata:: @ 82DEA50
+ .incbin "data/maps/SeafloorCavern_Room7/map.bin"
+
+ .incbin "baserom.gba", 0x2deece, 0x2
+
+SeafloorCavern_Room7_MapAttributes:: @ 82DEED0
+ .4byte 0x17
+ .4byte 0x19
+ .4byte SeafloorCavern_Room7_MapBorder
+ .4byte SeafloorCavern_Room7_MapBlockdata
+ .4byte SeafloorCavern_Room7_Tileset
+ .4byte SeafloorCavern_Room7_Tileset2
+
+SeafloorCavern_Room8_MapBorder:: @ 82DEEE8
+ .incbin "data/maps/SeafloorCavern_Room8/border.bin"
+
+SeafloorCavern_Room8_MapBlockdata:: @ 82DEEF0
+ .incbin "data/maps/SeafloorCavern_Room8/map.bin"
+
+SeafloorCavern_Room8_MapAttributes:: @ 82DF024
+ .4byte 0xb
+ .4byte 0xe
+ .4byte SeafloorCavern_Room8_MapBorder
+ .4byte SeafloorCavern_Room8_MapBlockdata
+ .4byte SeafloorCavern_Room8_Tileset
+ .4byte SeafloorCavern_Room8_Tileset2
+
+SeafloorCavern_Room9_MapBorder:: @ 82DF03C
+ .incbin "data/maps/SeafloorCavern_Room9/border.bin"
+
+SeafloorCavern_Room9_MapBlockdata:: @ 82DF044
+ .incbin "data/maps/SeafloorCavern_Room9/map.bin"
+
+SeafloorCavern_Room9_MapAttributes:: @ 82DF9F8
+ .4byte 0x1b
+ .4byte 0x2e
+ .4byte SeafloorCavern_Room9_MapBorder
+ .4byte SeafloorCavern_Room9_MapBlockdata
+ .4byte SeafloorCavern_Room9_Tileset
+ .4byte SeafloorCavern_Room9_Tileset2
+
+CaveOfOrigin_Entrance_MapBorder:: @ 82DFA10
+ .incbin "data/maps/CaveOfOrigin_Entrance/border.bin"
+
+CaveOfOrigin_Entrance_MapBlockdata:: @ 82DFA18
+ .incbin "data/maps/CaveOfOrigin_Entrance/map.bin"
+
+CaveOfOrigin_Entrance_MapAttributes:: @ 82DFDF4
+ .4byte 0x13
+ .4byte 0x1a
+ .4byte CaveOfOrigin_Entrance_MapBorder
+ .4byte CaveOfOrigin_Entrance_MapBlockdata
+ .4byte CaveOfOrigin_Entrance_Tileset
+ .4byte CaveOfOrigin_Entrance_Tileset2
+
+CaveOfOrigin_1F_MapBorder:: @ 82DFE0C
+ .incbin "data/maps/CaveOfOrigin_1F/border.bin"
+
+CaveOfOrigin_1F_MapBlockdata:: @ 82DFE14
+ .incbin "data/maps/CaveOfOrigin_1F/map.bin"
+
+ .incbin "baserom.gba", 0x2e0236, 0x2
+
+CaveOfOrigin_1F_MapAttributes:: @ 82E0238
+ .4byte 0x17
+ .4byte 0x17
+ .4byte CaveOfOrigin_1F_MapBorder
+ .4byte CaveOfOrigin_1F_MapBlockdata
+ .4byte CaveOfOrigin_1F_Tileset
+ .4byte CaveOfOrigin_1F_Tileset2
+
+CaveOfOrigin_B1F_MapBorder:: @ 82E0250
+ .incbin "data/maps/CaveOfOrigin_B1F/border.bin"
+
+CaveOfOrigin_B1F_MapBlockdata:: @ 82E0258
+ .incbin "data/maps/CaveOfOrigin_B1F/map.bin"
+
+ .incbin "baserom.gba", 0x2e067a, 0x2
+
+CaveOfOrigin_B1F_MapAttributes:: @ 82E067C
+ .4byte 0x17
+ .4byte 0x17
+ .4byte CaveOfOrigin_B1F_MapBorder
+ .4byte CaveOfOrigin_B1F_MapBlockdata
+ .4byte CaveOfOrigin_B1F_Tileset
+ .4byte CaveOfOrigin_B1F_Tileset2
+
+CaveOfOrigin_B2F_MapBorder:: @ 82E0694
+ .incbin "data/maps/CaveOfOrigin_B2F/border.bin"
+
+CaveOfOrigin_B2F_MapBlockdata:: @ 82E069C
+ .incbin "data/maps/CaveOfOrigin_B2F/map.bin"
+
+ .incbin "baserom.gba", 0x2e0a0e, 0x2
+
+CaveOfOrigin_B2F_MapAttributes:: @ 82E0A10
+ .4byte 0x15
+ .4byte 0x15
+ .4byte CaveOfOrigin_B2F_MapBorder
+ .4byte CaveOfOrigin_B2F_MapBlockdata
+ .4byte CaveOfOrigin_B2F_Tileset
+ .4byte CaveOfOrigin_B2F_Tileset2
+
+CaveOfOrigin_B3F_MapBorder:: @ 82E0A28
+ .incbin "data/maps/CaveOfOrigin_B3F/border.bin"
+
+CaveOfOrigin_B3F_MapBlockdata:: @ 82E0A30
+ .incbin "data/maps/CaveOfOrigin_B3F/map.bin"
+
+ .incbin "baserom.gba", 0x2e0d4e, 0x2
+
+CaveOfOrigin_B3F_MapAttributes:: @ 82E0D50
+ .4byte 0x13
+ .4byte 0x15
+ .4byte CaveOfOrigin_B3F_MapBorder
+ .4byte CaveOfOrigin_B3F_MapBlockdata
+ .4byte CaveOfOrigin_B3F_Tileset
+ .4byte CaveOfOrigin_B3F_Tileset2
+
+CaveOfOrigin_B4F_MapBorder:: @ 82E0D68
+ .incbin "data/maps/CaveOfOrigin_B4F/border.bin"
+
+CaveOfOrigin_B4F_MapBlockdata:: @ 82E0D70
+ .incbin "data/maps/CaveOfOrigin_B4F/map.bin"
+
+ .incbin "baserom.gba", 0x2e1042, 0x2
+
+CaveOfOrigin_B4F_MapAttributes:: @ 82E1044
+ .4byte 0x13
+ .4byte 0x13
+ .4byte CaveOfOrigin_B4F_MapBorder
+ .4byte CaveOfOrigin_B4F_MapBlockdata
+ .4byte CaveOfOrigin_B4F_Tileset
+ .4byte CaveOfOrigin_B4F_Tileset2
+
+VictoryRoad_1F_MapBorder:: @ 82E105C
+ .incbin "data/maps/VictoryRoad_1F/border.bin"
+
+VictoryRoad_1F_MapBlockdata:: @ 82E1064
+ .incbin "data/maps/VictoryRoad_1F/map.bin"
+
+VictoryRoad_1F_MapAttributes:: @ 82E2090
+ .4byte 0x2e
+ .4byte 0x2d
+ .4byte VictoryRoad_1F_MapBorder
+ .4byte VictoryRoad_1F_MapBlockdata
+ .4byte VictoryRoad_1F_Tileset
+ .4byte VictoryRoad_1F_Tileset2
+
+ShoalCave_LowTideEntranceRoom_MapBorder:: @ 82E20A8
+ .incbin "data/maps/ShoalCave_LowTideEntranceRoom/border.bin"
+
+ShoalCave_LowTideEntranceRoom_MapBlockdata:: @ 82E20B0
+ .incbin "data/maps/ShoalCave_LowTideEntranceRoom/map.bin"
+
+ .incbin "baserom.gba", 0x2e2a42, 0x2
+
+ShoalCave_LowTideEntranceRoom_MapAttributes:: @ 82E2A44
+ .4byte 0x23
+ .4byte 0x23
+ .4byte ShoalCave_LowTideEntranceRoom_MapBorder
+ .4byte ShoalCave_LowTideEntranceRoom_MapBlockdata
+ .4byte ShoalCave_LowTideEntranceRoom_Tileset
+ .4byte ShoalCave_LowTideEntranceRoom_Tileset2
+
+ShoalCave_LowTideInnerRoom_MapBorder:: @ 82E2A5C
+ .incbin "data/maps/ShoalCave_LowTideInnerRoom/border.bin"
+
+ShoalCave_LowTideInnerRoom_MapBlockdata:: @ 82E2A64
+ .incbin "data/maps/ShoalCave_LowTideInnerRoom/map.bin"
+
+ShoalCave_LowTideInnerRoom_MapAttributes:: @ 82E380C
+ .4byte 0x2e
+ .4byte 0x26
+ .4byte ShoalCave_LowTideInnerRoom_MapBorder
+ .4byte ShoalCave_LowTideInnerRoom_MapBlockdata
+ .4byte ShoalCave_LowTideInnerRoom_Tileset
+ .4byte ShoalCave_LowTideInnerRoom_Tileset2
+
+ShoalCave_LowTideStairsRoom_MapBorder:: @ 82E3824
+ .incbin "data/maps/ShoalCave_LowTideStairsRoom/border.bin"
+
+ShoalCave_LowTideStairsRoom_MapBlockdata:: @ 82E382C
+ .incbin "data/maps/ShoalCave_LowTideStairsRoom/map.bin"
+
+ .incbin "baserom.gba", 0x2e3aa2, 0x2
+
+ShoalCave_LowTideStairsRoom_MapAttributes:: @ 82E3AA4
+ .4byte 0x15
+ .4byte 0xf
+ .4byte ShoalCave_LowTideStairsRoom_MapBorder
+ .4byte ShoalCave_LowTideStairsRoom_MapBlockdata
+ .4byte ShoalCave_LowTideStairsRoom_Tileset
+ .4byte ShoalCave_LowTideStairsRoom_Tileset2
+
+ShoalCave_LowTideLowerRoom_MapBorder:: @ 82E3ABC
+ .incbin "data/maps/ShoalCave_LowTideLowerRoom/border.bin"
+
+ShoalCave_LowTideLowerRoom_MapBlockdata:: @ 82E3AC4
+ .incbin "data/maps/ShoalCave_LowTideLowerRoom/map.bin"
+
+ShoalCave_LowTideLowerRoom_MapAttributes:: @ 82E3E28
+ .4byte 0x1f
+ .4byte 0xe
+ .4byte ShoalCave_LowTideLowerRoom_MapBorder
+ .4byte ShoalCave_LowTideLowerRoom_MapBlockdata
+ .4byte ShoalCave_LowTideLowerRoom_Tileset
+ .4byte ShoalCave_LowTideLowerRoom_Tileset2
+
+ShoalCave_HighTideEntranceRoom_MapBorder:: @ 82E3E40
+ .incbin "data/maps/ShoalCave_HighTideEntranceRoom/border.bin"
+
+ShoalCave_HighTideEntranceRoom_MapBlockdata:: @ 82E3E48
+ .incbin "data/maps/ShoalCave_HighTideEntranceRoom/map.bin"
+
+ .incbin "baserom.gba", 0x2e47da, 0x2
+
+ShoalCave_HighTideEntranceRoom_MapAttributes:: @ 82E47DC
+ .4byte 0x23
+ .4byte 0x23
+ .4byte ShoalCave_HighTideEntranceRoom_MapBorder
+ .4byte ShoalCave_HighTideEntranceRoom_MapBlockdata
+ .4byte ShoalCave_HighTideEntranceRoom_Tileset
+ .4byte ShoalCave_HighTideEntranceRoom_Tileset2
+
+ShoalCave_HighTideInnerRoom_MapBorder:: @ 82E47F4
+ .incbin "data/maps/ShoalCave_HighTideInnerRoom/border.bin"
+
+ShoalCave_HighTideInnerRoom_MapBlockdata:: @ 82E47FC
+ .incbin "data/maps/ShoalCave_HighTideInnerRoom/map.bin"
+
+ShoalCave_HighTideInnerRoom_MapAttributes:: @ 82E55A4
+ .4byte 0x2e
+ .4byte 0x26
+ .4byte ShoalCave_HighTideInnerRoom_MapBorder
+ .4byte ShoalCave_HighTideInnerRoom_MapBlockdata
+ .4byte ShoalCave_HighTideInnerRoom_Tileset
+ .4byte ShoalCave_HighTideInnerRoom_Tileset2
+
+ .incbin "baserom.gba", 0x2e55bc, 0x1f8
+
+NewMauville_Entrance_MapBorder:: @ 82E57B4
+ .incbin "data/maps/NewMauville_Entrance/border.bin"
+
+NewMauville_Entrance_MapBlockdata:: @ 82E57BC
+ .incbin "data/maps/NewMauville_Entrance/map.bin"
+
+ .incbin "baserom.gba", 0x2e585e, 0x2
+
+NewMauville_Entrance_MapAttributes:: @ 82E5860
+ .4byte 0x9
+ .4byte 0x9
+ .4byte NewMauville_Entrance_MapBorder
+ .4byte NewMauville_Entrance_MapBlockdata
+ .4byte NewMauville_Entrance_Tileset
+ .4byte NewMauville_Entrance_Tileset2
+
+NewMauville_Inside_MapBorder:: @ 82E5878
+ .incbin "data/maps/NewMauville_Inside/border.bin"
+
+NewMauville_Inside_MapBlockdata:: @ 82E5880
+ .incbin "data/maps/NewMauville_Inside/map.bin"
+
+ .incbin "baserom.gba", 0x2e65a2, 0x2
+
+NewMauville_Inside_MapAttributes:: @ 82E65A4
+ .4byte 0x29
+ .4byte 0x29
+ .4byte NewMauville_Inside_MapBorder
+ .4byte NewMauville_Inside_MapBlockdata
+ .4byte NewMauville_Inside_Tileset
+ .4byte NewMauville_Inside_Tileset2
+
+AbandonedShip_Deck_MapBorder:: @ 82E65BC
+ .incbin "data/maps/AbandonedShip_Deck/border.bin"
+
+AbandonedShip_Deck_MapBlockdata:: @ 82E65C4
+ .incbin "data/maps/AbandonedShip_Deck/map.bin"
+
+ .incbin "baserom.gba", 0x2e698a, 0x2
+
+AbandonedShip_Deck_MapAttributes:: @ 82E698C
+ .4byte 0x17
+ .4byte 0x15
+ .4byte AbandonedShip_Deck_MapBorder
+ .4byte AbandonedShip_Deck_MapBlockdata
+ .4byte AbandonedShip_Deck_Tileset
+ .4byte AbandonedShip_Deck_Tileset2
+
+AbandonedShip_Corridors_1F_MapBorder:: @ 82E69A4
+ .incbin "data/maps/AbandonedShip_Corridors_1F/border.bin"
+
+AbandonedShip_Corridors_1F_MapBlockdata:: @ 82E69AC
+ .incbin "data/maps/AbandonedShip_Corridors_1F/map.bin"
+
+AbandonedShip_Corridors_1F_MapAttributes:: @ 82E6B5C
+ .4byte 0x12
+ .4byte 0xc
+ .4byte AbandonedShip_Corridors_1F_MapBorder
+ .4byte AbandonedShip_Corridors_1F_MapBlockdata
+ .4byte AbandonedShip_Corridors_1F_Tileset
+ .4byte AbandonedShip_Corridors_1F_Tileset2
+
+AbandonedShip_Rooms_1F_MapBorder:: @ 82E6B74
+ .incbin "data/maps/AbandonedShip_Rooms_1F/border.bin"
+
+AbandonedShip_Rooms_1F_MapBlockdata:: @ 82E6B7C
+ .incbin "data/maps/AbandonedShip_Rooms_1F/map.bin"
+
+AbandonedShip_Rooms_1F_MapAttributes:: @ 82E6DE0
+ .4byte 0x12
+ .4byte 0x11
+ .4byte AbandonedShip_Rooms_1F_MapBorder
+ .4byte AbandonedShip_Rooms_1F_MapBlockdata
+ .4byte AbandonedShip_Rooms_1F_Tileset
+ .4byte AbandonedShip_Rooms_1F_Tileset2
+
+AbandonedShip_Corridors_B1F_MapBorder:: @ 82E6DF8
+ .incbin "data/maps/AbandonedShip_Corridors_B1F/border.bin"
+
+AbandonedShip_Corridors_B1F_MapBlockdata:: @ 82E6E00
+ .incbin "data/maps/AbandonedShip_Corridors_B1F/map.bin"
+
+AbandonedShip_Corridors_B1F_MapAttributes:: @ 82E6F04
+ .4byte 0xd
+ .4byte 0xa
+ .4byte AbandonedShip_Corridors_B1F_MapBorder
+ .4byte AbandonedShip_Corridors_B1F_MapBlockdata
+ .4byte AbandonedShip_Corridors_B1F_Tileset
+ .4byte AbandonedShip_Corridors_B1F_Tileset2
+
+AbandonedShip_Rooms_B1F_MapBorder:: @ 82E6F1C
+ .incbin "data/maps/AbandonedShip_Rooms_B1F/border.bin"
+
+AbandonedShip_Rooms_B1F_MapBlockdata:: @ 82E6F24
+ .incbin "data/maps/AbandonedShip_Rooms_B1F/map.bin"
+
+AbandonedShip_Rooms_B1F_MapAttributes:: @ 82E70D4
+ .4byte 0x1b
+ .4byte 0x8
+ .4byte AbandonedShip_Rooms_B1F_MapBorder
+ .4byte AbandonedShip_Rooms_B1F_MapBlockdata
+ .4byte AbandonedShip_Rooms_B1F_Tileset
+ .4byte AbandonedShip_Rooms_B1F_Tileset2
+
+AbandonedShip_Rooms2_B1F_MapBorder:: @ 82E70EC
+ .incbin "data/maps/AbandonedShip_Rooms2_B1F/border.bin"
+
+AbandonedShip_Rooms2_B1F_MapBlockdata:: @ 82E70F4
+ .incbin "data/maps/AbandonedShip_Rooms2_B1F/map.bin"
+
+AbandonedShip_Rooms2_B1F_MapAttributes:: @ 82E7214
+ .4byte 0x12
+ .4byte 0x8
+ .4byte AbandonedShip_Rooms2_B1F_MapBorder
+ .4byte AbandonedShip_Rooms2_B1F_MapBlockdata
+ .4byte AbandonedShip_Rooms2_B1F_Tileset
+ .4byte AbandonedShip_Rooms2_B1F_Tileset2
+
+AbandonedShip_Underwater1_MapBorder:: @ 82E722C
+ .incbin "data/maps/AbandonedShip_Underwater1/border.bin"
+
+AbandonedShip_Underwater1_MapBlockdata:: @ 82E7234
+ .incbin "data/maps/AbandonedShip_Underwater1/map.bin"
+
+AbandonedShip_Underwater1_MapAttributes:: @ 82E72B4
+ .4byte 0x8
+ .4byte 0x8
+ .4byte AbandonedShip_Underwater1_MapBorder
+ .4byte AbandonedShip_Underwater1_MapBlockdata
+ .4byte AbandonedShip_Underwater1_Tileset
+ .4byte AbandonedShip_Underwater1_Tileset2
+
+AbandonedShip_Room_B1F_MapBorder:: @ 82E72CC
+ .incbin "data/maps/AbandonedShip_Room_B1F/border.bin"
+
+AbandonedShip_Room_B1F_MapBlockdata:: @ 82E72D4
+ .incbin "data/maps/AbandonedShip_Room_B1F/map.bin"
+
+AbandonedShip_Room_B1F_MapAttributes:: @ 82E7364
+ .4byte 0x9
+ .4byte 0x8
+ .4byte AbandonedShip_Room_B1F_MapBorder
+ .4byte AbandonedShip_Room_B1F_MapBlockdata
+ .4byte AbandonedShip_Room_B1F_Tileset
+ .4byte AbandonedShip_Room_B1F_Tileset2
+
+AbandonedShip_Rooms2_1F_MapBorder:: @ 82E737C
+ .incbin "data/maps/AbandonedShip_Rooms2_1F/border.bin"
+
+AbandonedShip_Rooms2_1F_MapBlockdata:: @ 82E7384
+ .incbin "data/maps/AbandonedShip_Rooms2_1F/map.bin"
+
+ .incbin "baserom.gba", 0x2e74b6, 0x2
+
+AbandonedShip_Rooms2_1F_MapAttributes:: @ 82E74B8
+ .4byte 0x9
+ .4byte 0x11
+ .4byte AbandonedShip_Rooms2_1F_MapBorder
+ .4byte AbandonedShip_Rooms2_1F_MapBlockdata
+ .4byte AbandonedShip_Rooms2_1F_Tileset
+ .4byte AbandonedShip_Rooms2_1F_Tileset2
+
+AbandonedShip_CaptainsOffice_MapBorder:: @ 82E74D0
+ .incbin "data/maps/AbandonedShip_CaptainsOffice/border.bin"
+
+AbandonedShip_CaptainsOffice_MapBlockdata:: @ 82E74D8
+ .incbin "data/maps/AbandonedShip_CaptainsOffice/map.bin"
+
+ .incbin "baserom.gba", 0x2e7556, 0x2
+
+AbandonedShip_CaptainsOffice_MapAttributes:: @ 82E7558
+ .4byte 0x9
+ .4byte 0x7
+ .4byte AbandonedShip_CaptainsOffice_MapBorder
+ .4byte AbandonedShip_CaptainsOffice_MapBlockdata
+ .4byte AbandonedShip_CaptainsOffice_Tileset
+ .4byte AbandonedShip_CaptainsOffice_Tileset2
+
+AbandonedShip_Underwater2_MapBorder:: @ 82E7570
+ .incbin "data/maps/AbandonedShip_Underwater2/border.bin"
+
+AbandonedShip_Underwater2_MapBlockdata:: @ 82E7578
+ .incbin "data/maps/AbandonedShip_Underwater2/map.bin"
+
+ .incbin "baserom.gba", 0x2e769e, 0x2
+
+AbandonedShip_Underwater2_MapAttributes:: @ 82E76A0
+ .4byte 0x15
+ .4byte 0x7
+ .4byte AbandonedShip_Underwater2_MapBorder
+ .4byte AbandonedShip_Underwater2_MapBlockdata
+ .4byte AbandonedShip_Underwater2_Tileset
+ .4byte AbandonedShip_Underwater2_Tileset2
+
+SecretBase_RedCave1_MapBorder:: @ 82E76B8
+ .incbin "data/maps/SecretBase_RedCave1/border.bin"
+
+SecretBase_RedCave1_MapBlockdata:: @ 82E76C0
+ .incbin "data/maps/SecretBase_RedCave1/map.bin"
+
+ .incbin "baserom.gba", 0x2e7786, 0x2
+
+SecretBase_RedCave1_MapAttributes:: @ 82E7788
+ .4byte 0xb
+ .4byte 0x9
+ .4byte SecretBase_RedCave1_MapBorder
+ .4byte SecretBase_RedCave1_MapBlockdata
+ .4byte SecretBase_RedCave1_Tileset
+ .4byte SecretBase_RedCave1_Tileset2
+
+SecretBase_BrownCave1_MapBorder:: @ 82E77A0
+ .incbin "data/maps/SecretBase_BrownCave1/border.bin"
+
+SecretBase_BrownCave1_MapBlockdata:: @ 82E77A8
+ .incbin "data/maps/SecretBase_BrownCave1/map.bin"
+
+ .incbin "baserom.gba", 0x2e786e, 0x2
+
+SecretBase_BrownCave1_MapAttributes:: @ 82E7870
+ .4byte 0xb
+ .4byte 0x9
+ .4byte SecretBase_BrownCave1_MapBorder
+ .4byte SecretBase_BrownCave1_MapBlockdata
+ .4byte SecretBase_BrownCave1_Tileset
+ .4byte SecretBase_BrownCave1_Tileset2
+
+SecretBase_BlueCave1_MapBorder:: @ 82E7888
+ .incbin "data/maps/SecretBase_BlueCave1/border.bin"
+
+SecretBase_BlueCave1_MapBlockdata:: @ 82E7890
+ .incbin "data/maps/SecretBase_BlueCave1/map.bin"
+
+ .incbin "baserom.gba", 0x2e7956, 0x2
+
+SecretBase_BlueCave1_MapAttributes:: @ 82E7958
+ .4byte 0xb
+ .4byte 0x9
+ .4byte SecretBase_BlueCave1_MapBorder
+ .4byte SecretBase_BlueCave1_MapBlockdata
+ .4byte SecretBase_BlueCave1_Tileset
+ .4byte SecretBase_BlueCave1_Tileset2
+
+SecretBase_YellowCave1_MapBorder:: @ 82E7970
+ .incbin "data/maps/SecretBase_YellowCave1/border.bin"
+
+SecretBase_YellowCave1_MapBlockdata:: @ 82E7978
+ .incbin "data/maps/SecretBase_YellowCave1/map.bin"
+
+ .incbin "baserom.gba", 0x2e7a3e, 0x2
+
+SecretBase_YellowCave1_MapAttributes:: @ 82E7A40
+ .4byte 0xb
+ .4byte 0x9
+ .4byte SecretBase_YellowCave1_MapBorder
+ .4byte SecretBase_YellowCave1_MapBlockdata
+ .4byte SecretBase_YellowCave1_Tileset
+ .4byte SecretBase_YellowCave1_Tileset2
+
+SecretBase_Tree1_MapBorder:: @ 82E7A58
+ .incbin "data/maps/SecretBase_Tree1/border.bin"
+
+SecretBase_Tree1_MapBlockdata:: @ 82E7A60
+ .incbin "data/maps/SecretBase_Tree1/map.bin"
+
+ .incbin "baserom.gba", 0x2e7b26, 0x2
+
+SecretBase_Tree1_MapAttributes:: @ 82E7B28
+ .4byte 0xb
+ .4byte 0x9
+ .4byte SecretBase_Tree1_MapBorder
+ .4byte SecretBase_Tree1_MapBlockdata
+ .4byte SecretBase_Tree1_Tileset
+ .4byte SecretBase_Tree1_Tileset2
+
+SecretBase_Shrub1_MapBorder:: @ 82E7B40
+ .incbin "data/maps/SecretBase_Shrub1/border.bin"
+
+SecretBase_Shrub1_MapBlockdata:: @ 82E7B48
+ .incbin "data/maps/SecretBase_Shrub1/map.bin"
+
+ .incbin "baserom.gba", 0x2e7c0e, 0x2
+
+SecretBase_Shrub1_MapAttributes:: @ 82E7C10
+ .4byte 0xb
+ .4byte 0x9
+ .4byte SecretBase_Shrub1_MapBorder
+ .4byte SecretBase_Shrub1_MapBlockdata
+ .4byte SecretBase_Shrub1_Tileset
+ .4byte SecretBase_Shrub1_Tileset2
+
+SecretBase_RedCave2_MapBorder:: @ 82E7C28
+ .incbin "data/maps/SecretBase_RedCave2/border.bin"
+
+SecretBase_RedCave2_MapBlockdata:: @ 82E7C30
+ .incbin "data/maps/SecretBase_RedCave2/map.bin"
+
+SecretBase_RedCave2_MapAttributes:: @ 82E7D10
+ .4byte 0x7
+ .4byte 0x10
+ .4byte SecretBase_RedCave2_MapBorder
+ .4byte SecretBase_RedCave2_MapBlockdata
+ .4byte SecretBase_RedCave2_Tileset
+ .4byte SecretBase_RedCave2_Tileset2
+
+SecretBase_BrownCave2_MapBorder:: @ 82E7D28
+ .incbin "data/maps/SecretBase_BrownCave2/border.bin"
+
+SecretBase_BrownCave2_MapBlockdata:: @ 82E7D30
+ .incbin "data/maps/SecretBase_BrownCave2/map.bin"
+
+SecretBase_BrownCave2_MapAttributes:: @ 82E7E2C
+ .4byte 0xe
+ .4byte 0x9
+ .4byte SecretBase_BrownCave2_MapBorder
+ .4byte SecretBase_BrownCave2_MapBlockdata
+ .4byte SecretBase_BrownCave2_Tileset
+ .4byte SecretBase_BrownCave2_Tileset2
+
+SecretBase_BlueCave2_MapBorder:: @ 82E7E44
+ .incbin "data/maps/SecretBase_BlueCave2/border.bin"
+
+SecretBase_BlueCave2_MapBlockdata:: @ 82E7E4C
+ .incbin "data/maps/SecretBase_BlueCave2/map.bin"
+
+ .incbin "baserom.gba", 0x2e7f1e, 0x2
+
+SecretBase_BlueCave2_MapAttributes:: @ 82E7F20
+ .4byte 0xf
+ .4byte 0x7
+ .4byte SecretBase_BlueCave2_MapBorder
+ .4byte SecretBase_BlueCave2_MapBlockdata
+ .4byte SecretBase_BlueCave2_Tileset
+ .4byte SecretBase_BlueCave2_Tileset2
+
+SecretBase_YellowCave2_MapBorder:: @ 82E7F38
+ .incbin "data/maps/SecretBase_YellowCave2/border.bin"
+
+SecretBase_YellowCave2_MapBlockdata:: @ 82E7F40
+ .incbin "data/maps/SecretBase_YellowCave2/map.bin"
+
+SecretBase_YellowCave2_MapAttributes:: @ 82E803C
+ .4byte 0xe
+ .4byte 0x9
+ .4byte SecretBase_YellowCave2_MapBorder
+ .4byte SecretBase_YellowCave2_MapBlockdata
+ .4byte SecretBase_YellowCave2_Tileset
+ .4byte SecretBase_YellowCave2_Tileset2
+
+SecretBase_Tree2_MapBorder:: @ 82E8054
+ .incbin "data/maps/SecretBase_Tree2/border.bin"
+
+SecretBase_Tree2_MapBlockdata:: @ 82E805C
+ .incbin "data/maps/SecretBase_Tree2/map.bin"
+
+SecretBase_Tree2_MapAttributes:: @ 82E813C
+ .4byte 0x7
+ .4byte 0x10
+ .4byte SecretBase_Tree2_MapBorder
+ .4byte SecretBase_Tree2_MapBlockdata
+ .4byte SecretBase_Tree2_Tileset
+ .4byte SecretBase_Tree2_Tileset2
+
+SecretBase_Shrub2_MapBorder:: @ 82E8154
+ .incbin "data/maps/SecretBase_Shrub2/border.bin"
+
+SecretBase_Shrub2_MapBlockdata:: @ 82E815C
+ .incbin "data/maps/SecretBase_Shrub2/map.bin"
+
+ .incbin "baserom.gba", 0x2e822e, 0x2
+
+SecretBase_Shrub2_MapAttributes:: @ 82E8230
+ .4byte 0xf
+ .4byte 0x7
+ .4byte SecretBase_Shrub2_MapBorder
+ .4byte SecretBase_Shrub2_MapBlockdata
+ .4byte SecretBase_Shrub2_Tileset
+ .4byte SecretBase_Shrub2_Tileset2
+
+SecretBase_RedCave3_MapBorder:: @ 82E8248
+ .incbin "data/maps/SecretBase_RedCave3/border.bin"
+
+SecretBase_RedCave3_MapBlockdata:: @ 82E8250
+ .incbin "data/maps/SecretBase_RedCave3/map.bin"
+
+SecretBase_RedCave3_MapAttributes:: @ 82E8340
+ .4byte 0xf
+ .4byte 0x8
+ .4byte SecretBase_RedCave3_MapBorder
+ .4byte SecretBase_RedCave3_MapBlockdata
+ .4byte SecretBase_RedCave3_Tileset
+ .4byte SecretBase_RedCave3_Tileset2
+
+SecretBase_BrownCave3_MapBorder:: @ 82E8358
+ .incbin "data/maps/SecretBase_BrownCave3/border.bin"
+
+SecretBase_BrownCave3_MapBlockdata:: @ 82E8360
+ .incbin "data/maps/SecretBase_BrownCave3/map.bin"
+
+ .incbin "baserom.gba", 0x2e84aa, 0x2
+
+SecretBase_BrownCave3_MapAttributes:: @ 82E84AC
+ .4byte 0xf
+ .4byte 0xb
+ .4byte SecretBase_BrownCave3_MapBorder
+ .4byte SecretBase_BrownCave3_MapBlockdata
+ .4byte SecretBase_BrownCave3_Tileset
+ .4byte SecretBase_BrownCave3_Tileset2
+
+SecretBase_BlueCave3_MapBorder:: @ 82E84C4
+ .incbin "data/maps/SecretBase_BlueCave3/border.bin"
+
+SecretBase_BlueCave3_MapBlockdata:: @ 82E84CC
+ .incbin "data/maps/SecretBase_BlueCave3/map.bin"
+
+SecretBase_BlueCave3_MapAttributes:: @ 82E8620
+ .4byte 0xa
+ .4byte 0x11
+ .4byte SecretBase_BlueCave3_MapBorder
+ .4byte SecretBase_BlueCave3_MapBlockdata
+ .4byte SecretBase_BlueCave3_Tileset
+ .4byte SecretBase_BlueCave3_Tileset2
+
+SecretBase_YellowCave3_MapBorder:: @ 82E8638
+ .incbin "data/maps/SecretBase_YellowCave3/border.bin"
+
+SecretBase_YellowCave3_MapBlockdata:: @ 82E8640
+ .incbin "data/maps/SecretBase_YellowCave3/map.bin"
+
+SecretBase_YellowCave3_MapAttributes:: @ 82E8748
+ .4byte 0xc
+ .4byte 0xb
+ .4byte SecretBase_YellowCave3_MapBorder
+ .4byte SecretBase_YellowCave3_MapBlockdata
+ .4byte SecretBase_YellowCave3_Tileset
+ .4byte SecretBase_YellowCave3_Tileset2
+
+SecretBase_Tree3_MapBorder:: @ 82E8760
+ .incbin "data/maps/SecretBase_Tree3/border.bin"
+
+SecretBase_Tree3_MapBlockdata:: @ 82E8768
+ .incbin "data/maps/SecretBase_Tree3/map.bin"
+
+SecretBase_Tree3_MapAttributes:: @ 82E8878
+ .4byte 0x11
+ .4byte 0x8
+ .4byte SecretBase_Tree3_MapBorder
+ .4byte SecretBase_Tree3_MapBlockdata
+ .4byte SecretBase_Tree3_Tileset
+ .4byte SecretBase_Tree3_Tileset2
+
+SecretBase_Shrub3_MapBorder:: @ 82E8890
+ .incbin "data/maps/SecretBase_Shrub3/border.bin"
+
+SecretBase_Shrub3_MapBlockdata:: @ 82E8898
+ .incbin "data/maps/SecretBase_Shrub3/map.bin"
+
+ .incbin "baserom.gba", 0x2e89b6, 0x2
+
+SecretBase_Shrub3_MapAttributes:: @ 82E89B8
+ .4byte 0xd
+ .4byte 0xb
+ .4byte SecretBase_Shrub3_MapBorder
+ .4byte SecretBase_Shrub3_MapBlockdata
+ .4byte SecretBase_Shrub3_Tileset
+ .4byte SecretBase_Shrub3_Tileset2
+
+SecretBase_RedCave4_MapBorder:: @ 82E89D0
+ .incbin "data/maps/SecretBase_RedCave4/border.bin"
+
+SecretBase_RedCave4_MapBlockdata:: @ 82E89D8
+ .incbin "data/maps/SecretBase_RedCave4/map.bin"
+
+ .incbin "baserom.gba", 0x2e8ae6, 0x2
+
+SecretBase_RedCave4_MapAttributes:: @ 82E8AE8
+ .4byte 0x9
+ .4byte 0xf
+ .4byte SecretBase_RedCave4_MapBorder
+ .4byte SecretBase_RedCave4_MapBlockdata
+ .4byte SecretBase_RedCave4_Tileset
+ .4byte SecretBase_RedCave4_Tileset2
+
+SecretBase_BrownCave4_MapBorder:: @ 82E8B00
+ .incbin "data/maps/SecretBase_BrownCave4/border.bin"
+
+SecretBase_BrownCave4_MapBlockdata:: @ 82E8B08
+ .incbin "data/maps/SecretBase_BrownCave4/map.bin"
+
+SecretBase_BrownCave4_MapAttributes:: @ 82E8C58
+ .4byte 0xe
+ .4byte 0xc
+ .4byte SecretBase_BrownCave4_MapBorder
+ .4byte SecretBase_BrownCave4_MapBlockdata
+ .4byte SecretBase_BrownCave4_Tileset
+ .4byte SecretBase_BrownCave4_Tileset2
+
+SecretBase_BlueCave4_MapBorder:: @ 82E8C70
+ .incbin "data/maps/SecretBase_BlueCave4/border.bin"
+
+SecretBase_BlueCave4_MapBlockdata:: @ 82E8C78
+ .incbin "data/maps/SecretBase_BlueCave4/map.bin"
+
+ .incbin "baserom.gba", 0x2e8daa, 0x2
+
+SecretBase_BlueCave4_MapAttributes:: @ 82E8DAC
+ .4byte 0x9
+ .4byte 0x11
+ .4byte SecretBase_BlueCave4_MapBorder
+ .4byte SecretBase_BlueCave4_MapBlockdata
+ .4byte SecretBase_BlueCave4_Tileset
+ .4byte SecretBase_BlueCave4_Tileset2
+
+SecretBase_YellowCave4_MapBorder:: @ 82E8DC4
+ .incbin "data/maps/SecretBase_YellowCave4/border.bin"
+
+SecretBase_YellowCave4_MapBlockdata:: @ 82E8DCC
+ .incbin "data/maps/SecretBase_YellowCave4/map.bin"
+
+SecretBase_YellowCave4_MapAttributes:: @ 82E8F38
+ .4byte 0xd
+ .4byte 0xe
+ .4byte SecretBase_YellowCave4_MapBorder
+ .4byte SecretBase_YellowCave4_MapBlockdata
+ .4byte SecretBase_YellowCave4_Tileset
+ .4byte SecretBase_YellowCave4_Tileset2
+
+SecretBase_Tree4_MapBorder:: @ 82E8F50
+ .incbin "data/maps/SecretBase_Tree4/border.bin"
+
+SecretBase_Tree4_MapBlockdata:: @ 82E8F58
+ .incbin "data/maps/SecretBase_Tree4/map.bin"
+
+SecretBase_Tree4_MapAttributes:: @ 82E90E0
+ .4byte 0xe
+ .4byte 0xe
+ .4byte SecretBase_Tree4_MapBorder
+ .4byte SecretBase_Tree4_MapBlockdata
+ .4byte SecretBase_Tree4_Tileset
+ .4byte SecretBase_Tree4_Tileset2
+
+SecretBase_Shrub4_MapBorder:: @ 82E90F8
+ .incbin "data/maps/SecretBase_Shrub4/border.bin"
+
+SecretBase_Shrub4_MapBlockdata:: @ 82E9100
+ .incbin "data/maps/SecretBase_Shrub4/map.bin"
+
+SecretBase_Shrub4_MapAttributes:: @ 82E9234
+ .4byte 0xe
+ .4byte 0xb
+ .4byte SecretBase_Shrub4_MapBorder
+ .4byte SecretBase_Shrub4_MapBlockdata
+ .4byte SecretBase_Shrub4_Tileset
+ .4byte SecretBase_Shrub4_Tileset2
+
+SingleBattleColosseum_MapBorder:: @ 82E924C
+ .incbin "data/maps/SingleBattleColosseum/border.bin"
+
+SingleBattleColosseum_MapBlockdata:: @ 82E9254
+ .incbin "data/maps/SingleBattleColosseum/map.bin"
+
+SingleBattleColosseum_MapAttributes:: @ 82E9350
+ .4byte 0xe
+ .4byte 0x9
+ .4byte SingleBattleColosseum_MapBorder
+ .4byte SingleBattleColosseum_MapBlockdata
+ .4byte SingleBattleColosseum_Tileset
+ .4byte SingleBattleColosseum_Tileset2
+
+TradeCenter_MapBorder:: @ 82E9368
+ .incbin "data/maps/TradeCenter/border.bin"
+
+TradeCenter_MapBlockdata:: @ 82E9370
+ .incbin "data/maps/TradeCenter/map.bin"
+
+TradeCenter_MapAttributes:: @ 82E9448
+ .4byte 0xc
+ .4byte 0x9
+ .4byte TradeCenter_MapBorder
+ .4byte TradeCenter_MapBlockdata
+ .4byte TradeCenter_Tileset
+ .4byte TradeCenter_Tileset2
+
+RecordCorner_MapBorder:: @ 82E9460
+ .incbin "data/maps/RecordCorner/border.bin"
+
+RecordCorner_MapBlockdata:: @ 82E9468
+ .incbin "data/maps/RecordCorner/map.bin"
+
+RecordCorner_MapAttributes:: @ 82E95F8
+ .4byte 0x14
+ .4byte 0xa
+ .4byte RecordCorner_MapBorder
+ .4byte RecordCorner_MapBlockdata
+ .4byte RecordCorner_Tileset
+ .4byte RecordCorner_Tileset2
+
+DoubleBattleColosseum_MapBorder:: @ 82E9610
+ .incbin "data/maps/DoubleBattleColosseum/border.bin"
+
+DoubleBattleColosseum_MapBlockdata:: @ 82E9618
+ .incbin "data/maps/DoubleBattleColosseum/map.bin"
+
+DoubleBattleColosseum_MapAttributes:: @ 82E9714
+ .4byte 0xe
+ .4byte 0x9
+ .4byte DoubleBattleColosseum_MapBorder
+ .4byte DoubleBattleColosseum_MapBlockdata
+ .4byte DoubleBattleColosseum_Tileset
+ .4byte DoubleBattleColosseum_Tileset2
+
+LinkContestRoom1_MapBorder:: @ 82E972C
+ .incbin "data/maps/LinkContestRoom1/border.bin"
+
+LinkContestRoom1_MapBlockdata:: @ 82E9734
+ .incbin "data/maps/LinkContestRoom1/map.bin"
+
+ .incbin "baserom.gba", 0x2e987e, 0x2
+
+LinkContestRoom1_MapAttributes:: @ 82E9880
+ .4byte 0xf
+ .4byte 0xb
+ .4byte LinkContestRoom1_MapBorder
+ .4byte LinkContestRoom1_MapBlockdata
+ .4byte LinkContestRoom1_Tileset
+ .4byte LinkContestRoom1_Tileset2
+
+UnknownMap_25_29_MapBorder:: @ 82E9898
+ .incbin "data/maps/UnknownMap_25_29/border.bin"
+
+UnknownMap_25_29_MapBlockdata:: @ 82E98A0
+ .incbin "data/maps/UnknownMap_25_29/map.bin"
+
+ .incbin "baserom.gba", 0x2e98a2, 0x2
+
+UnknownMap_25_29_MapAttributes:: @ 82E98A4
+ .4byte 0x1
+ .4byte 0x1
+ .4byte UnknownMap_25_29_MapBorder
+ .4byte UnknownMap_25_29_MapBlockdata
+ .4byte UnknownMap_25_29_Tileset
+ .4byte UnknownMap_25_29_Tileset2
+
+UnknownMap_25_30_MapBorder:: @ 82E98BC
+ .incbin "data/maps/UnknownMap_25_30/border.bin"
+
+UnknownMap_25_30_MapBlockdata:: @ 82E98C4
+ .incbin "data/maps/UnknownMap_25_30/map.bin"
+
+ .incbin "baserom.gba", 0x2e98c6, 0x2
+
+UnknownMap_25_30_MapAttributes:: @ 82E98C8
+ .4byte 0x1
+ .4byte 0x1
+ .4byte UnknownMap_25_30_MapBorder
+ .4byte UnknownMap_25_30_MapBlockdata
+ .4byte UnknownMap_25_30_Tileset
+ .4byte UnknownMap_25_30_Tileset2
+
+UnknownMap_25_31_MapBorder:: @ 82E98E0
+ .incbin "data/maps/UnknownMap_25_31/border.bin"
+
+UnknownMap_25_31_MapBlockdata:: @ 82E98E8
+ .incbin "data/maps/UnknownMap_25_31/map.bin"
+
+ .incbin "baserom.gba", 0x2e98ea, 0x2
+
+UnknownMap_25_31_MapAttributes:: @ 82E98EC
+ .4byte 0x1
+ .4byte 0x1
+ .4byte UnknownMap_25_31_MapBorder
+ .4byte UnknownMap_25_31_MapBlockdata
+ .4byte UnknownMap_25_31_Tileset
+ .4byte UnknownMap_25_31_Tileset2
+
+UnknownMap_25_32_MapBorder:: @ 82E9904
+ .incbin "data/maps/UnknownMap_25_32/border.bin"
+
+UnknownMap_25_32_MapBlockdata:: @ 82E990C
+ .incbin "data/maps/UnknownMap_25_32/map.bin"
+
+ .incbin "baserom.gba", 0x2e990e, 0x2
+
+UnknownMap_25_32_MapAttributes:: @ 82E9910
+ .4byte 0x1
+ .4byte 0x1
+ .4byte UnknownMap_25_32_MapBorder
+ .4byte UnknownMap_25_32_MapBlockdata
+ .4byte UnknownMap_25_32_Tileset
+ .4byte UnknownMap_25_32_Tileset2
+
+UnknownMap_25_33_MapBorder:: @ 82E9928
+ .incbin "data/maps/UnknownMap_25_33/border.bin"
+
+UnknownMap_25_33_MapBlockdata:: @ 82E9930
+ .incbin "data/maps/UnknownMap_25_33/map.bin"
+
+ .incbin "baserom.gba", 0x2e9932, 0x2
+
+UnknownMap_25_33_MapAttributes:: @ 82E9934
+ .4byte 0x1
+ .4byte 0x1
+ .4byte UnknownMap_25_33_MapBorder
+ .4byte UnknownMap_25_33_MapBlockdata
+ .4byte UnknownMap_25_33_Tileset
+ .4byte UnknownMap_25_33_Tileset2
+
+UnknownMap_25_34_MapBorder:: @ 82E994C
+ .incbin "data/maps/UnknownMap_25_34/border.bin"
+
+UnknownMap_25_34_MapBlockdata:: @ 82E9954
+ .incbin "data/maps/UnknownMap_25_34/map.bin"
+
+ .incbin "baserom.gba", 0x2e9956, 0x2
+
+UnknownMap_25_34_MapAttributes:: @ 82E9958
+ .4byte 0x1
+ .4byte 0x1
+ .4byte UnknownMap_25_34_MapBorder
+ .4byte UnknownMap_25_34_MapBlockdata
+ .4byte UnknownMap_25_34_Tileset
+ .4byte UnknownMap_25_34_Tileset2
+
+LinkContestRoom2_MapBorder:: @ 82E9970
+ .incbin "data/maps/LinkContestRoom2/border.bin"
+
+LinkContestRoom2_MapBlockdata:: @ 82E9978
+ .incbin "data/maps/LinkContestRoom2/map.bin"
+
+ .incbin "baserom.gba", 0x2e9ac2, 0x2
+
+LinkContestRoom2_MapAttributes:: @ 82E9AC4
+ .4byte 0xf
+ .4byte 0xb
+ .4byte LinkContestRoom2_MapBorder
+ .4byte LinkContestRoom2_MapBlockdata
+ .4byte LinkContestRoom2_Tileset
+ .4byte LinkContestRoom2_Tileset2
+
+LinkContestRoom3_MapBorder:: @ 82E9ADC
+ .incbin "data/maps/LinkContestRoom3/border.bin"
+
+LinkContestRoom3_MapBlockdata:: @ 82E9AE4
+ .incbin "data/maps/LinkContestRoom3/map.bin"
+
+ .incbin "baserom.gba", 0x2e9c2e, 0x2
+
+LinkContestRoom3_MapAttributes:: @ 82E9C30
+ .4byte 0xf
+ .4byte 0xb
+ .4byte LinkContestRoom3_MapBorder
+ .4byte LinkContestRoom3_MapBlockdata
+ .4byte LinkContestRoom3_Tileset
+ .4byte LinkContestRoom3_Tileset2
+
+LinkContestRoom4_MapBorder:: @ 82E9C48
+ .incbin "data/maps/LinkContestRoom4/border.bin"
+
+LinkContestRoom4_MapBlockdata:: @ 82E9C50
+ .incbin "data/maps/LinkContestRoom4/map.bin"
+
+ .incbin "baserom.gba", 0x2e9d9a, 0x2
+
+LinkContestRoom4_MapAttributes:: @ 82E9D9C
+ .4byte 0xf
+ .4byte 0xb
+ .4byte LinkContestRoom4_MapBorder
+ .4byte LinkContestRoom4_MapBlockdata
+ .4byte LinkContestRoom4_Tileset
+ .4byte LinkContestRoom4_Tileset2
+
+LinkContestRoom5_MapBorder:: @ 82E9DB4
+ .incbin "data/maps/LinkContestRoom5/border.bin"
+
+LinkContestRoom5_MapBlockdata:: @ 82E9DBC
+ .incbin "data/maps/LinkContestRoom5/map.bin"
+
+ .incbin "baserom.gba", 0x2e9f06, 0x2
+
+LinkContestRoom5_MapAttributes:: @ 82E9F08
+ .4byte 0xf
+ .4byte 0xb
+ .4byte LinkContestRoom5_MapBorder
+ .4byte LinkContestRoom5_MapBlockdata
+ .4byte LinkContestRoom5_Tileset
+ .4byte LinkContestRoom5_Tileset2
+
+LinkContestRoom6_MapBorder:: @ 82E9F20
+ .incbin "data/maps/LinkContestRoom6/border.bin"
+
+LinkContestRoom6_MapBlockdata:: @ 82E9F28
+ .incbin "data/maps/LinkContestRoom6/map.bin"
+
+ .incbin "baserom.gba", 0x2ea072, 0x2
+
+LinkContestRoom6_MapAttributes:: @ 82EA074
+ .4byte 0xf
+ .4byte 0xb
+ .4byte LinkContestRoom6_MapBorder
+ .4byte LinkContestRoom6_MapBlockdata
+ .4byte LinkContestRoom6_Tileset
+ .4byte LinkContestRoom6_Tileset2
+
+InsideOfTruck_MapBorder:: @ 82EA08C
+ .incbin "data/maps/InsideOfTruck/border.bin"
+
+InsideOfTruck_MapBlockdata:: @ 82EA094
+ .incbin "data/maps/InsideOfTruck/map.bin"
+
+ .incbin "baserom.gba", 0x2ea0c6, 0x2
+
+InsideOfTruck_MapAttributes:: @ 82EA0C8
+ .4byte 0x5
+ .4byte 0x5
+ .4byte InsideOfTruck_MapBorder
+ .4byte InsideOfTruck_MapBlockdata
+ .4byte InsideOfTruck_Tileset
+ .4byte InsideOfTruck_Tileset2
+
+SafariZone_Northwest_MapBorder:: @ 82EA0E0
+ .incbin "data/maps/SafariZone_Northwest/border.bin"
+
+SafariZone_Northwest_MapBlockdata:: @ 82EA0E8
+ .incbin "data/maps/SafariZone_Northwest/map.bin"
+
+SafariZone_Northwest_MapAttributes:: @ 82EAD68
+ .4byte 0x28
+ .4byte 0x28
+ .4byte SafariZone_Northwest_MapBorder
+ .4byte SafariZone_Northwest_MapBlockdata
+ .4byte SafariZone_Northwest_Tileset
+ .4byte SafariZone_Northwest_Tileset2
+
+SafariZone_Northeast_MapBorder:: @ 82EAD80
+ .incbin "data/maps/SafariZone_Northeast/border.bin"
+
+SafariZone_Northeast_MapBlockdata:: @ 82EAD88
+ .incbin "data/maps/SafariZone_Northeast/map.bin"
+
+SafariZone_Northeast_MapAttributes:: @ 82EBA08
+ .4byte 0x28
+ .4byte 0x28
+ .4byte SafariZone_Northeast_MapBorder
+ .4byte SafariZone_Northeast_MapBlockdata
+ .4byte SafariZone_Northeast_Tileset
+ .4byte SafariZone_Northeast_Tileset2
+
+SafariZone_Southwest_MapBorder:: @ 82EBA20
+ .incbin "data/maps/SafariZone_Southwest/border.bin"
+
+SafariZone_Southwest_MapBlockdata:: @ 82EBA28
+ .incbin "data/maps/SafariZone_Southwest/map.bin"
+
+SafariZone_Southwest_MapAttributes:: @ 82EC6A8
+ .4byte 0x28
+ .4byte 0x28
+ .4byte SafariZone_Southwest_MapBorder
+ .4byte SafariZone_Southwest_MapBlockdata
+ .4byte SafariZone_Southwest_Tileset
+ .4byte SafariZone_Southwest_Tileset2
+
+SafariZone_Southeast_MapBorder:: @ 82EC6C0
+ .incbin "data/maps/SafariZone_Southeast/border.bin"
+
+SafariZone_Southeast_MapBlockdata:: @ 82EC6C8
+ .incbin "data/maps/SafariZone_Southeast/map.bin"
+
+SafariZone_Southeast_MapAttributes:: @ 82ED348
+ .4byte 0x28
+ .4byte 0x28
+ .4byte SafariZone_Southeast_MapBorder
+ .4byte SafariZone_Southeast_MapBlockdata
+ .4byte SafariZone_Southeast_Tileset
+ .4byte SafariZone_Southeast_Tileset2
+
+ .incbin "baserom.gba", 0x2ed360, 0xbe8
+
+Route109_SeashoreHouse_MapBorder:: @ 82EDF48
+ .incbin "data/maps/Route109_SeashoreHouse/border.bin"
+
+Route109_SeashoreHouse_MapBlockdata:: @ 82EDF50
+ .incbin "data/maps/Route109_SeashoreHouse/map.bin"
+
+Route109_SeashoreHouse_MapAttributes:: @ 82EE07C
+ .4byte 0xf
+ .4byte 0xa
+ .4byte Route109_SeashoreHouse_MapBorder
+ .4byte Route109_SeashoreHouse_MapBlockdata
+ .4byte Route109_SeashoreHouse_Tileset
+ .4byte Route109_SeashoreHouse_Tileset2
+
+Route110_TrickHouseEntrance_MapBorder:: @ 82EE094
+ .incbin "data/maps/Route110_TrickHouseEntrance/border.bin"
+
+Route110_TrickHouseEntrance_MapBlockdata:: @ 82EE09C
+ .incbin "data/maps/Route110_TrickHouseEntrance/map.bin"
+
+Route110_TrickHouseEntrance_MapAttributes:: @ 82EE15C
+ .4byte 0xc
+ .4byte 0x8
+ .4byte Route110_TrickHouseEntrance_MapBorder
+ .4byte Route110_TrickHouseEntrance_MapBlockdata
+ .4byte Route110_TrickHouseEntrance_Tileset
+ .4byte Route110_TrickHouseEntrance_Tileset2
+
+Route110_TrickHouseEnd_MapBorder:: @ 82EE174
+ .incbin "data/maps/Route110_TrickHouseEnd/border.bin"
+
+Route110_TrickHouseEnd_MapBlockdata:: @ 82EE17C
+ .incbin "data/maps/Route110_TrickHouseEnd/map.bin"
+
+Route110_TrickHouseEnd_MapAttributes:: @ 82EE23C
+ .4byte 0xc
+ .4byte 0x8
+ .4byte Route110_TrickHouseEnd_MapBorder
+ .4byte Route110_TrickHouseEnd_MapBlockdata
+ .4byte Route110_TrickHouseEnd_Tileset
+ .4byte Route110_TrickHouseEnd_Tileset2
+
+Route110_TrickHouseCorridor_MapBorder:: @ 82EE254
+ .incbin "data/maps/Route110_TrickHouseCorridor/border.bin"
+
+Route110_TrickHouseCorridor_MapBlockdata:: @ 82EE25C
+ .incbin "data/maps/Route110_TrickHouseCorridor/map.bin"
+
+Route110_TrickHouseCorridor_MapAttributes:: @ 82EE52C
+ .4byte 0xf
+ .4byte 0x18
+ .4byte Route110_TrickHouseCorridor_MapBorder
+ .4byte Route110_TrickHouseCorridor_MapBlockdata
+ .4byte Route110_TrickHouseCorridor_Tileset
+ .4byte Route110_TrickHouseCorridor_Tileset2
+
+Route110_TrickHousePuzzle1_MapBorder:: @ 82EE544
+ .incbin "data/maps/Route110_TrickHousePuzzle1/border.bin"
+
+Route110_TrickHousePuzzle1_MapBlockdata:: @ 82EE54C
+ .incbin "data/maps/Route110_TrickHousePuzzle1/map.bin"
+
+Route110_TrickHousePuzzle1_MapAttributes:: @ 82EE7E0
+ .4byte 0xf
+ .4byte 0x16
+ .4byte Route110_TrickHousePuzzle1_MapBorder
+ .4byte Route110_TrickHousePuzzle1_MapBlockdata
+ .4byte Route110_TrickHousePuzzle1_Tileset
+ .4byte Route110_TrickHousePuzzle1_Tileset2
+
+Route110_TrickHousePuzzle2_MapBorder:: @ 82EE7F8
+ .incbin "data/maps/Route110_TrickHousePuzzle2/border.bin"
+
+Route110_TrickHousePuzzle2_MapBlockdata:: @ 82EE800
+ .incbin "data/maps/Route110_TrickHousePuzzle2/map.bin"
+
+Route110_TrickHousePuzzle2_MapAttributes:: @ 82EEA94
+ .4byte 0xf
+ .4byte 0x16
+ .4byte Route110_TrickHousePuzzle2_MapBorder
+ .4byte Route110_TrickHousePuzzle2_MapBlockdata
+ .4byte Route110_TrickHousePuzzle2_Tileset
+ .4byte Route110_TrickHousePuzzle2_Tileset2
+
+Route110_TrickHousePuzzle3_MapBorder:: @ 82EEAAC
+ .incbin "data/maps/Route110_TrickHousePuzzle3/border.bin"
+
+Route110_TrickHousePuzzle3_MapBlockdata:: @ 82EEAB4
+ .incbin "data/maps/Route110_TrickHousePuzzle3/map.bin"
+
+Route110_TrickHousePuzzle3_MapAttributes:: @ 82EED48
+ .4byte 0xf
+ .4byte 0x16
+ .4byte Route110_TrickHousePuzzle3_MapBorder
+ .4byte Route110_TrickHousePuzzle3_MapBlockdata
+ .4byte Route110_TrickHousePuzzle3_Tileset
+ .4byte Route110_TrickHousePuzzle3_Tileset2
+
+Route110_TrickHousePuzzle4_MapBorder:: @ 82EED60
+ .incbin "data/maps/Route110_TrickHousePuzzle4/border.bin"
+
+Route110_TrickHousePuzzle4_MapBlockdata:: @ 82EED68
+ .incbin "data/maps/Route110_TrickHousePuzzle4/map.bin"
+
+Route110_TrickHousePuzzle4_MapAttributes:: @ 82EEFFC
+ .4byte 0xf
+ .4byte 0x16
+ .4byte Route110_TrickHousePuzzle4_MapBorder
+ .4byte Route110_TrickHousePuzzle4_MapBlockdata
+ .4byte Route110_TrickHousePuzzle4_Tileset
+ .4byte Route110_TrickHousePuzzle4_Tileset2
+
+Route110_TrickHousePuzzle5_MapBorder:: @ 82EF014
+ .incbin "data/maps/Route110_TrickHousePuzzle5/border.bin"
+
+Route110_TrickHousePuzzle5_MapBlockdata:: @ 82EF01C
+ .incbin "data/maps/Route110_TrickHousePuzzle5/map.bin"
+
+Route110_TrickHousePuzzle5_MapAttributes:: @ 82EF2B0
+ .4byte 0xf
+ .4byte 0x16
+ .4byte Route110_TrickHousePuzzle5_MapBorder
+ .4byte Route110_TrickHousePuzzle5_MapBlockdata
+ .4byte Route110_TrickHousePuzzle5_Tileset
+ .4byte Route110_TrickHousePuzzle5_Tileset2
+
+Route110_TrickHousePuzzle6_MapBorder:: @ 82EF2C8
+ .incbin "data/maps/Route110_TrickHousePuzzle6/border.bin"
+
+Route110_TrickHousePuzzle6_MapBlockdata:: @ 82EF2D0
+ .incbin "data/maps/Route110_TrickHousePuzzle6/map.bin"
+
+Route110_TrickHousePuzzle6_MapAttributes:: @ 82EF564
+ .4byte 0xf
+ .4byte 0x16
+ .4byte Route110_TrickHousePuzzle6_MapBorder
+ .4byte Route110_TrickHousePuzzle6_MapBlockdata
+ .4byte Route110_TrickHousePuzzle6_Tileset
+ .4byte Route110_TrickHousePuzzle6_Tileset2
+
+Route110_TrickHousePuzzle7_MapBorder:: @ 82EF57C
+ .incbin "data/maps/Route110_TrickHousePuzzle7/border.bin"
+
+Route110_TrickHousePuzzle7_MapBlockdata:: @ 82EF584
+ .incbin "data/maps/Route110_TrickHousePuzzle7/map.bin"
+
+Route110_TrickHousePuzzle7_MapAttributes:: @ 82EF818
+ .4byte 0xf
+ .4byte 0x16
+ .4byte Route110_TrickHousePuzzle7_MapBorder
+ .4byte Route110_TrickHousePuzzle7_MapBlockdata
+ .4byte Route110_TrickHousePuzzle7_Tileset
+ .4byte Route110_TrickHousePuzzle7_Tileset2
+
+Route110_TrickHousePuzzle8_MapBorder:: @ 82EF830
+ .incbin "data/maps/Route110_TrickHousePuzzle8/border.bin"
+
+Route110_TrickHousePuzzle8_MapBlockdata:: @ 82EF838
+ .incbin "data/maps/Route110_TrickHousePuzzle8/map.bin"
+
+Route110_TrickHousePuzzle8_MapAttributes:: @ 82EFACC
+ .4byte 0xf
+ .4byte 0x16
+ .4byte Route110_TrickHousePuzzle8_MapBorder
+ .4byte Route110_TrickHousePuzzle8_MapBlockdata
+ .4byte Route110_TrickHousePuzzle8_Tileset
+ .4byte Route110_TrickHousePuzzle8_Tileset2
+
+FortreeCity_DecorationShop_MapBorder:: @ 82EFAE4
+ .incbin "data/maps/FortreeCity_DecorationShop/border.bin"
+
+FortreeCity_DecorationShop_MapBlockdata:: @ 82EFAEC
+ .incbin "data/maps/FortreeCity_DecorationShop/map.bin"
+
+FortreeCity_DecorationShop_MapAttributes:: @ 82EFB4C
+ .4byte 0x8
+ .4byte 0x6
+ .4byte FortreeCity_DecorationShop_MapBorder
+ .4byte FortreeCity_DecorationShop_MapBlockdata
+ .4byte FortreeCity_DecorationShop_Tileset
+ .4byte FortreeCity_DecorationShop_Tileset2
+
+Route110_SeasideCyclingRoadSouthEntrance_MapBorder:: @ 82EFB64
+ .incbin "data/maps/Route110_SeasideCyclingRoadSouthEntrance/border.bin"
+
+Route110_SeasideCyclingRoadSouthEntrance_MapBlockdata:: @ 82EFB6C
+ .incbin "data/maps/Route110_SeasideCyclingRoadSouthEntrance/map.bin"
+
+Route110_SeasideCyclingRoadNorthEntrance_MapAttributes:: @ 82EFC20
+Route110_SeasideCyclingRoadSouthEntrance_MapAttributes:: @ 82EFC20
+ .4byte 0xf
+ .4byte 0x6
+ .4byte Route110_SeasideCyclingRoadSouthEntrance_MapBorder
+ .4byte Route110_SeasideCyclingRoadSouthEntrance_MapBlockdata
+ .4byte Route110_SeasideCyclingRoadSouthEntrance_Tileset
+ .4byte Route110_SeasideCyclingRoadSouthEntrance_Tileset2
+
+LilycoveCity_DepartmentStore_1F_MapBorder:: @ 82EFC38
+ .incbin "data/maps/LilycoveCity_DepartmentStore_1F/border.bin"
+
+LilycoveCity_DepartmentStore_1F_MapBlockdata:: @ 82EFC40
+ .incbin "data/maps/LilycoveCity_DepartmentStore_1F/map.bin"
+
+LilycoveCity_DepartmentStore_1F_MapAttributes:: @ 82EFD60
+ .4byte 0x12
+ .4byte 0x8
+ .4byte LilycoveCity_DepartmentStore_1F_MapBorder
+ .4byte LilycoveCity_DepartmentStore_1F_MapBlockdata
+ .4byte LilycoveCity_DepartmentStore_1F_Tileset
+ .4byte LilycoveCity_DepartmentStore_1F_Tileset2
+
+LilycoveCity_DepartmentStore_2F_MapBorder:: @ 82EFD78
+ .incbin "data/maps/LilycoveCity_DepartmentStore_2F/border.bin"
+
+LilycoveCity_DepartmentStore_2F_MapBlockdata:: @ 82EFD80
+ .incbin "data/maps/LilycoveCity_DepartmentStore_2F/map.bin"
+
+LilycoveCity_DepartmentStore_2F_MapAttributes:: @ 82EFEA0
+ .4byte 0x12
+ .4byte 0x8
+ .4byte LilycoveCity_DepartmentStore_2F_MapBorder
+ .4byte LilycoveCity_DepartmentStore_2F_MapBlockdata
+ .4byte LilycoveCity_DepartmentStore_2F_Tileset
+ .4byte LilycoveCity_DepartmentStore_2F_Tileset2
+
+LilycoveCity_DepartmentStore_3F_MapBorder:: @ 82EFEB8
+ .incbin "data/maps/LilycoveCity_DepartmentStore_3F/border.bin"
+
+LilycoveCity_DepartmentStore_3F_MapBlockdata:: @ 82EFEC0
+ .incbin "data/maps/LilycoveCity_DepartmentStore_3F/map.bin"
+
+LilycoveCity_DepartmentStore_3F_MapAttributes:: @ 82EFFE0
+ .4byte 0x12
+ .4byte 0x8
+ .4byte LilycoveCity_DepartmentStore_3F_MapBorder
+ .4byte LilycoveCity_DepartmentStore_3F_MapBlockdata
+ .4byte LilycoveCity_DepartmentStore_3F_Tileset
+ .4byte LilycoveCity_DepartmentStore_3F_Tileset2
+
+LilycoveCity_DepartmentStore_4F_MapBorder:: @ 82EFFF8
+ .incbin "data/maps/LilycoveCity_DepartmentStore_4F/border.bin"
+
+LilycoveCity_DepartmentStore_4F_MapBlockdata:: @ 82F0000
+ .incbin "data/maps/LilycoveCity_DepartmentStore_4F/map.bin"
+
+LilycoveCity_DepartmentStore_4F_MapAttributes:: @ 82F0120
+ .4byte 0x12
+ .4byte 0x8
+ .4byte LilycoveCity_DepartmentStore_4F_MapBorder
+ .4byte LilycoveCity_DepartmentStore_4F_MapBlockdata
+ .4byte LilycoveCity_DepartmentStore_4F_Tileset
+ .4byte LilycoveCity_DepartmentStore_4F_Tileset2
+
+LilycoveCity_DepartmentStore_5F_MapBorder:: @ 82F0138
+ .incbin "data/maps/LilycoveCity_DepartmentStore_5F/border.bin"
+
+LilycoveCity_DepartmentStore_5F_MapBlockdata:: @ 82F0140
+ .incbin "data/maps/LilycoveCity_DepartmentStore_5F/map.bin"
+
+LilycoveCity_DepartmentStore_5F_MapAttributes:: @ 82F0260
+ .4byte 0x12
+ .4byte 0x8
+ .4byte LilycoveCity_DepartmentStore_5F_MapBorder
+ .4byte LilycoveCity_DepartmentStore_5F_MapBlockdata
+ .4byte LilycoveCity_DepartmentStore_5F_Tileset
+ .4byte LilycoveCity_DepartmentStore_5F_Tileset2
+
+LilycoveCity_DepartmentStoreRooftop_MapBorder:: @ 82F0278
+ .incbin "data/maps/LilycoveCity_DepartmentStoreRooftop/border.bin"
+
+LilycoveCity_DepartmentStoreRooftop_MapBlockdata:: @ 82F0280
+ .incbin "data/maps/LilycoveCity_DepartmentStoreRooftop/map.bin"
+
+LilycoveCity_DepartmentStoreRooftop_MapAttributes:: @ 82F0430
+ .4byte 0x12
+ .4byte 0xc
+ .4byte LilycoveCity_DepartmentStoreRooftop_MapBorder
+ .4byte LilycoveCity_DepartmentStoreRooftop_MapBlockdata
+ .4byte LilycoveCity_DepartmentStoreRooftop_Tileset
+ .4byte LilycoveCity_DepartmentStoreRooftop_Tileset2
+
+Route130_MapBorder:: @ 82F0448
+ .incbin "data/maps/Route130/border.bin"
+
+Route130_MapBlockdata:: @ 82F0450
+ .incbin "data/maps/Route130/map.bin"
+
+Route130_MapAttributes:: @ 82F1D50
+ .4byte 0x50
+ .4byte 0x28
+ .4byte Route130_MapBorder
+ .4byte Route130_MapBlockdata
+ .4byte Route130_Tileset
+ .4byte Route130_Tileset2
+
+BattleTower_Lobby_MapBorder:: @ 82F1D68
+ .incbin "data/maps/BattleTower_Lobby/border.bin"
+
+BattleTower_Lobby_MapBlockdata:: @ 82F1D70
+ .incbin "data/maps/BattleTower_Lobby/map.bin"
+
+BattleTower_Lobby_MapAttributes:: @ 82F1E6C
+ .4byte 0xe
+ .4byte 0x9
+ .4byte BattleTower_Lobby_MapBorder
+ .4byte BattleTower_Lobby_MapBlockdata
+ .4byte BattleTower_Lobby_Tileset
+ .4byte BattleTower_Lobby_Tileset2
+
+BattleTower_Outside_MapBorder:: @ 82F1E84
+ .incbin "data/maps/BattleTower_Outside/border.bin"
+
+BattleTower_Outside_MapBlockdata:: @ 82F1E8C
+ .incbin "data/maps/BattleTower_Outside/map.bin"
+
+BattleTower_Outside_MapAttributes:: @ 82F2558
+ .4byte 0x1d
+ .4byte 0x1e
+ .4byte BattleTower_Outside_MapBorder
+ .4byte BattleTower_Outside_MapBlockdata
+ .4byte BattleTower_Outside_Tileset
+ .4byte BattleTower_Outside_Tileset2
+
+BattleTower_Elevator_MapBorder:: @ 82F2570
+ .incbin "data/maps/BattleTower_Elevator/border.bin"
+
+BattleTower_Elevator_MapBlockdata:: @ 82F2578
+ .incbin "data/maps/BattleTower_Elevator/map.bin"
+
+BattleTower_Elevator_MapAttributes:: @ 82F25B0
+ .4byte 0x4
+ .4byte 0x7
+ .4byte BattleTower_Elevator_MapBorder
+ .4byte BattleTower_Elevator_MapBlockdata
+ .4byte BattleTower_Elevator_Tileset
+ .4byte BattleTower_Elevator_Tileset2
+
+BattleTower_Corridor_MapBorder:: @ 82F25C8
+ .incbin "data/maps/BattleTower_Corridor/border.bin"
+
+BattleTower_Corridor_MapBlockdata:: @ 82F25D0
+ .incbin "data/maps/BattleTower_Corridor/map.bin"
+
+ .incbin "baserom.gba", 0x2f267a, 0x2
+
+BattleTower_Corridor_MapAttributes:: @ 82F267C
+ .4byte 0x11
+ .4byte 0x5
+ .4byte BattleTower_Corridor_MapBorder
+ .4byte BattleTower_Corridor_MapBlockdata
+ .4byte BattleTower_Corridor_Tileset
+ .4byte BattleTower_Corridor_Tileset2
+
+BattleTower_BattleRoom_MapBorder:: @ 82F2694
+ .incbin "data/maps/BattleTower_BattleRoom/border.bin"
+
+BattleTower_BattleRoom_MapBlockdata:: @ 82F269C
+ .incbin "data/maps/BattleTower_BattleRoom/map.bin"
+
+BattleTower_BattleRoom_MapAttributes:: @ 82F2750
+ .4byte 0xa
+ .4byte 0x9
+ .4byte BattleTower_BattleRoom_MapBorder
+ .4byte BattleTower_BattleRoom_MapBlockdata
+ .4byte BattleTower_BattleRoom_Tileset
+ .4byte BattleTower_BattleRoom_Tileset2
+
+RustboroCity_DevonCorp_3F_MapBorder:: @ 82F2768
+ .incbin "data/maps/RustboroCity_DevonCorp_3F/border.bin"
+
+RustboroCity_DevonCorp_3F_MapBlockdata:: @ 82F2770
+ .incbin "data/maps/RustboroCity_DevonCorp_3F/map.bin"
+
+ .incbin "baserom.gba", 0x2f28c6, 0x2
+
+RustboroCity_DevonCorp_3F_MapAttributes:: @ 82F28C8
+ .4byte 0x13
+ .4byte 0x9
+ .4byte RustboroCity_DevonCorp_3F_MapBorder
+ .4byte RustboroCity_DevonCorp_3F_MapBlockdata
+ .4byte RustboroCity_DevonCorp_3F_Tileset
+ .4byte RustboroCity_DevonCorp_3F_Tileset2
+
+EverGrandeCity_PokemonLeague_MapBorder:: @ 82F28E0
+ .incbin "data/maps/EverGrandeCity_PokemonLeague/border.bin"
+
+EverGrandeCity_PokemonLeague_MapBlockdata:: @ 82F28E8
+ .incbin "data/maps/EverGrandeCity_PokemonLeague/map.bin"
+
+EverGrandeCity_PokemonLeague_MapAttributes:: @ 82F2AB0
+ .4byte 0x13
+ .4byte 0xc
+ .4byte EverGrandeCity_PokemonLeague_MapBorder
+ .4byte EverGrandeCity_PokemonLeague_MapBlockdata
+ .4byte EverGrandeCity_PokemonLeague_Tileset
+ .4byte EverGrandeCity_PokemonLeague_Tileset2
+
+Route119_WeatherInstitute_1F_MapBorder:: @ 82F2AC8
+ .incbin "data/maps/Route119_WeatherInstitute_1F/border.bin"
+
+Route119_WeatherInstitute_1F_MapBlockdata:: @ 82F2AD0
+ .incbin "data/maps/Route119_WeatherInstitute_1F/map.bin"
+
+Route119_WeatherInstitute_1F_MapAttributes:: @ 82F2CD8
+ .4byte 0x14
+ .4byte 0xd
+ .4byte Route119_WeatherInstitute_1F_MapBorder
+ .4byte Route119_WeatherInstitute_1F_MapBlockdata
+ .4byte Route119_WeatherInstitute_1F_Tileset
+ .4byte Route119_WeatherInstitute_1F_Tileset2
+
+Route119_WeatherInstitute_2F_MapBorder:: @ 82F2CF0
+ .incbin "data/maps/Route119_WeatherInstitute_2F/border.bin"
+
+Route119_WeatherInstitute_2F_MapBlockdata:: @ 82F2CF8
+ .incbin "data/maps/Route119_WeatherInstitute_2F/map.bin"
+
+Route119_WeatherInstitute_2F_MapAttributes:: @ 82F2EB0
+ .4byte 0x14
+ .4byte 0xb
+ .4byte Route119_WeatherInstitute_2F_MapBorder
+ .4byte Route119_WeatherInstitute_2F_MapBlockdata
+ .4byte Route119_WeatherInstitute_2F_Tileset
+ .4byte Route119_WeatherInstitute_2F_Tileset2
+
+LilycoveCity_DepartmentStoreElevator_MapBorder:: @ 82F2EC8
+ .incbin "data/maps/LilycoveCity_DepartmentStoreElevator/border.bin"
+
+LilycoveCity_DepartmentStoreElevator_MapBlockdata:: @ 82F2ED0
+ .incbin "data/maps/LilycoveCity_DepartmentStoreElevator/map.bin"
+
+LilycoveCity_DepartmentStoreElevator_MapAttributes:: @ 82F2F00
+ .4byte 0x4
+ .4byte 0x6
+ .4byte LilycoveCity_DepartmentStoreElevator_MapBorder
+ .4byte LilycoveCity_DepartmentStoreElevator_MapBlockdata
+ .4byte LilycoveCity_DepartmentStoreElevator_Tileset
+ .4byte LilycoveCity_DepartmentStoreElevator_Tileset2
+
+Underwater1_MapBorder:: @ 82F2F18
+ .incbin "data/maps/Underwater1/border.bin"
+
+Underwater1_MapBlockdata:: @ 82F2F20
+ .incbin "data/maps/Underwater1/map.bin"
+
+Underwater1_MapAttributes:: @ 82F6120
+ .4byte 0x50
+ .4byte 0x50
+ .4byte Underwater1_MapBorder
+ .4byte Underwater1_MapBlockdata
+ .4byte Underwater1_Tileset
+ .4byte Underwater1_Tileset2
+
+MossdeepCity_SpaceCenter_1F_MapBorder:: @ 82F6138
+ .incbin "data/maps/MossdeepCity_SpaceCenter_1F/border.bin"
+
+MossdeepCity_SpaceCenter_1F_MapBlockdata:: @ 82F6140
+ .incbin "data/maps/MossdeepCity_SpaceCenter_1F/map.bin"
+
+MossdeepCity_SpaceCenter_1F_MapAttributes:: @ 82F6280
+ .4byte 0x10
+ .4byte 0xa
+ .4byte MossdeepCity_SpaceCenter_1F_MapBorder
+ .4byte MossdeepCity_SpaceCenter_1F_MapBlockdata
+ .4byte MossdeepCity_SpaceCenter_1F_Tileset
+ .4byte MossdeepCity_SpaceCenter_1F_Tileset2
+
+MossdeepCity_SpaceCenter_2F_MapBorder:: @ 82F6298
+ .incbin "data/maps/MossdeepCity_SpaceCenter_2F/border.bin"
+
+MossdeepCity_SpaceCenter_2F_MapBlockdata:: @ 82F62A0
+ .incbin "data/maps/MossdeepCity_SpaceCenter_2F/map.bin"
+
+MossdeepCity_SpaceCenter_2F_MapAttributes:: @ 82F63E0
+ .4byte 0x10
+ .4byte 0xa
+ .4byte MossdeepCity_SpaceCenter_2F_MapBorder
+ .4byte MossdeepCity_SpaceCenter_2F_MapBlockdata
+ .4byte MossdeepCity_SpaceCenter_2F_Tileset
+ .4byte MossdeepCity_SpaceCenter_2F_Tileset2
+
+SSTidalCorridor_MapBorder:: @ 82F63F8
+ .incbin "data/maps/SSTidalCorridor/border.bin"
+
+SSTidalCorridor_MapBlockdata:: @ 82F6400
+ .incbin "data/maps/SSTidalCorridor/map.bin"
+
+SSTidalCorridor_MapAttributes:: @ 82F65D4
+ .4byte 0x12
+ .4byte 0xd
+ .4byte SSTidalCorridor_MapBorder
+ .4byte SSTidalCorridor_MapBlockdata
+ .4byte SSTidalCorridor_Tileset
+ .4byte SSTidalCorridor_Tileset2
+
+SSTidalLowerDeck_MapBorder:: @ 82F65EC
+ .incbin "data/maps/SSTidalLowerDeck/border.bin"
+
+SSTidalLowerDeck_MapBlockdata:: @ 82F65F4
+ .incbin "data/maps/SSTidalLowerDeck/map.bin"
+
+ .incbin "baserom.gba", 0x2f67ae, 0x2
+
+SSTidalLowerDeck_MapAttributes:: @ 82F67B0
+ .4byte 0x11
+ .4byte 0xd
+ .4byte SSTidalLowerDeck_MapBorder
+ .4byte SSTidalLowerDeck_MapBlockdata
+ .4byte SSTidalLowerDeck_Tileset
+ .4byte SSTidalLowerDeck_Tileset2
+
+SSTidalRooms_MapBorder:: @ 82F67C8
+ .incbin "data/maps/SSTidalRooms/border.bin"
+
+SSTidalRooms_MapBlockdata:: @ 82F67D0
+ .incbin "data/maps/SSTidalRooms/map.bin"
+
+SSTidalRooms_MapAttributes:: @ 82F6CE0
+ .4byte 0x24
+ .4byte 0x12
+ .4byte SSTidalRooms_MapBorder
+ .4byte SSTidalRooms_MapBlockdata
+ .4byte SSTidalRooms_Tileset
+ .4byte SSTidalRooms_Tileset2
+
+IslandCave_MapBorder:: @ 82F6CF8
+ .incbin "data/maps/IslandCave/border.bin"
+
+IslandCave_MapBlockdata:: @ 82F6D00
+ .incbin "data/maps/IslandCave/map.bin"
+
+ .incbin "baserom.gba", 0x2f7162, 0x2
+
+IslandCave_MapAttributes:: @ 82F7164
+ .4byte 0x11
+ .4byte 0x21
+ .4byte IslandCave_MapBorder
+ .4byte IslandCave_MapBlockdata
+ .4byte IslandCave_Tileset
+ .4byte IslandCave_Tileset2
+
+AncientTomb_MapBorder:: @ 82F717C
+ .incbin "data/maps/AncientTomb/border.bin"
+
+AncientTomb_MapBlockdata:: @ 82F7184
+ .incbin "data/maps/AncientTomb/map.bin"
+
+ .incbin "baserom.gba", 0x2f75e6, 0x2
+
+AncientTomb_MapAttributes:: @ 82F75E8
+ .4byte 0x11
+ .4byte 0x21
+ .4byte AncientTomb_MapBorder
+ .4byte AncientTomb_MapBlockdata
+ .4byte AncientTomb_Tileset
+ .4byte AncientTomb_Tileset2
+
+Underwater_Route134_MapBorder:: @ 82F7600
+ .incbin "data/maps/Underwater_Route134/border.bin"
+
+Underwater_Route134_MapBlockdata:: @ 82F7608
+ .incbin "data/maps/Underwater_Route134/map.bin"
+
+Underwater_Route134_MapAttributes:: @ 82F7770
+ .4byte 0x12
+ .4byte 0xa
+ .4byte Underwater_Route134_MapBorder
+ .4byte Underwater_Route134_MapBlockdata
+ .4byte Underwater_Route134_Tileset
+ .4byte Underwater_Route134_Tileset2
+
+Underwater_SealedChamber_MapBorder:: @ 82F7788
+ .incbin "data/maps/Underwater_SealedChamber/border.bin"
+
+Underwater_SealedChamber_MapBlockdata:: @ 82F7790
+ .incbin "data/maps/Underwater_SealedChamber/map.bin"
+
+Underwater_SealedChamber_MapAttributes:: @ 82F7FD0
+ .4byte 0x16
+ .4byte 0x30
+ .4byte Underwater_SealedChamber_MapBorder
+ .4byte Underwater_SealedChamber_MapBlockdata
+ .4byte Underwater_SealedChamber_Tileset
+ .4byte Underwater_SealedChamber_Tileset2
+
+SealedChamber_OuterRoom_MapBorder:: @ 82F7FE8
+ .incbin "data/maps/SealedChamber_OuterRoom/border.bin"
+
+SealedChamber_OuterRoom_MapBlockdata:: @ 82F7FF0
+ .incbin "data/maps/SealedChamber_OuterRoom/map.bin"
+
+ .incbin "baserom.gba", 0x2f83b6, 0x2
+
+SealedChamber_OuterRoom_MapAttributes:: @ 82F83B8
+ .4byte 0x15
+ .4byte 0x17
+ .4byte SealedChamber_OuterRoom_MapBorder
+ .4byte SealedChamber_OuterRoom_MapBlockdata
+ .4byte SealedChamber_OuterRoom_Tileset
+ .4byte SealedChamber_OuterRoom_Tileset2
+
+VictoryRoad_B1F_MapBorder:: @ 82F83D0
+ .incbin "data/maps/VictoryRoad_B1F/border.bin"
+
+VictoryRoad_B1F_MapBlockdata:: @ 82F83D8
+ .incbin "data/maps/VictoryRoad_B1F/map.bin"
+
+VictoryRoad_B1F_MapAttributes:: @ 82F8EFC
+ .4byte 0x2e
+ .4byte 0x1f
+ .4byte VictoryRoad_B1F_MapBorder
+ .4byte VictoryRoad_B1F_MapBlockdata
+ .4byte VictoryRoad_B1F_Tileset
+ .4byte VictoryRoad_B1F_Tileset2
+
+VictoryRoad_B2F_MapBorder:: @ 82F8F14
+ .incbin "data/maps/VictoryRoad_B2F/border.bin"
+
+VictoryRoad_B2F_MapBlockdata:: @ 82F8F1C
+ .incbin "data/maps/VictoryRoad_B2F/map.bin"
+
+VictoryRoad_B2F_MapAttributes:: @ 82F9A40
+ .4byte 0x2e
+ .4byte 0x1f
+ .4byte VictoryRoad_B2F_MapBorder
+ .4byte VictoryRoad_B2F_MapBlockdata
+ .4byte VictoryRoad_B2F_Tileset
+ .4byte VictoryRoad_B2F_Tileset2
+
+Route104_Prototype_MapBorder:: @ 82F9A58
+ .incbin "data/maps/Route104_Prototype/border.bin"
+
+Route104_Prototype_MapBlockdata:: @ 82F9A60
+ .incbin "data/maps/Route104_Prototype/map.bin"
+
+ .incbin "baserom.gba", 0x2f9a62, 0x2
+
+Route104_Prototype_MapAttributes:: @ 82F9A64
+ .4byte 0x1
+ .4byte 0x1
+ .4byte Route104_Prototype_MapBorder
+ .4byte Route104_Prototype_MapBlockdata
+ .4byte Route104_Prototype_Tileset
+ .4byte Route104_Prototype_Tileset2
+
+GraniteCave_StevensRoom_MapBorder:: @ 82F9A7C
+ .incbin "data/maps/GraniteCave_StevensRoom/border.bin"
+
+GraniteCave_StevensRoom_MapBlockdata:: @ 82F9A84
+ .incbin "data/maps/GraniteCave_StevensRoom/map.bin"
+
+GraniteCave_StevensRoom_MapAttributes:: @ 82F9C28
+ .4byte 0xf
+ .4byte 0xe
+ .4byte GraniteCave_StevensRoom_MapBorder
+ .4byte GraniteCave_StevensRoom_MapBlockdata
+ .4byte GraniteCave_StevensRoom_Tileset
+ .4byte GraniteCave_StevensRoom_Tileset2
+
+AbandonedShip_HiddenFloorCorridors_MapBorder:: @ 82F9C40
+ .incbin "data/maps/AbandonedShip_HiddenFloorCorridors/border.bin"
+
+AbandonedShip_HiddenFloorCorridors_MapBlockdata:: @ 82F9C48
+ .incbin "data/maps/AbandonedShip_HiddenFloorCorridors/map.bin"
+
+ .incbin "baserom.gba", 0x2f9d66, 0x2
+
+AbandonedShip_HiddenFloorCorridors_MapAttributes:: @ 82F9D68
+ .4byte 0xd
+ .4byte 0xb
+ .4byte AbandonedShip_HiddenFloorCorridors_MapBorder
+ .4byte AbandonedShip_HiddenFloorCorridors_MapBlockdata
+ .4byte AbandonedShip_HiddenFloorCorridors_Tileset
+ .4byte AbandonedShip_HiddenFloorCorridors_Tileset2
+
+SouthernIsland_Exterior_MapBorder:: @ 82F9D80
+ .incbin "data/maps/SouthernIsland_Exterior/border.bin"
+
+SouthernIsland_Exterior_MapBlockdata:: @ 82F9D88
+ .incbin "data/maps/SouthernIsland_Exterior/map.bin"
+
+SouthernIsland_Exterior_MapAttributes:: @ 82FA544
+ .4byte 0x21
+ .4byte 0x1e
+ .4byte SouthernIsland_Exterior_MapBorder
+ .4byte SouthernIsland_Exterior_MapBlockdata
+ .4byte SouthernIsland_Exterior_Tileset
+ .4byte SouthernIsland_Exterior_Tileset2
+
+SouthernIsland_Interior_MapBorder:: @ 82FA55C
+ .incbin "data/maps/SouthernIsland_Interior/border.bin"
+
+SouthernIsland_Interior_MapBlockdata:: @ 82FA564
+ .incbin "data/maps/SouthernIsland_Interior/map.bin"
+
+SouthernIsland_Interior_MapAttributes:: @ 82FAA74
+ .4byte 0x1b
+ .4byte 0x18
+ .4byte SouthernIsland_Interior_MapBorder
+ .4byte SouthernIsland_Interior_MapBlockdata
+ .4byte SouthernIsland_Interior_Tileset
+ .4byte SouthernIsland_Interior_Tileset2
+
+JaggedPass_MapBorder:: @ 82FAA8C
+ .incbin "data/maps/JaggedPass/border.bin"
+
+JaggedPass_MapBlockdata:: @ 82FAA94
+ .incbin "data/maps/JaggedPass/map.bin"
+
+JaggedPass_MapAttributes:: @ 82FB55C
+ .4byte 0x1e
+ .4byte 0x2e
+ .4byte JaggedPass_MapBorder
+ .4byte JaggedPass_MapBlockdata
+ .4byte JaggedPass_Tileset
+ .4byte JaggedPass_Tileset2
+
+FieryPath_MapBorder:: @ 82FB574
+ .incbin "data/maps/FieryPath/border.bin"
+
+FieryPath_MapBlockdata:: @ 82FB57C
+ .incbin "data/maps/FieryPath/map.bin"
+
+FieryPath_MapAttributes:: @ 82FBFE0
+ .4byte 0x23
+ .4byte 0x26
+ .4byte FieryPath_MapBorder
+ .4byte FieryPath_MapBlockdata
+ .4byte FieryPath_Tileset
+ .4byte FieryPath_Tileset2
+
+RustboroCity_Flat2_1F_MapBorder:: @ 82FBFF8
+ .incbin "data/maps/RustboroCity_Flat2_1F/border.bin"
+
+RustboroCity_Flat2_1F_MapBlockdata:: @ 82FC000
+ .incbin "data/maps/RustboroCity_Flat2_1F/map.bin"
+
+RustboroCity_Flat2_1F_MapAttributes:: @ 82FC0FC
+ .4byte 0xe
+ .4byte 0x9
+ .4byte RustboroCity_Flat2_1F_MapBorder
+ .4byte RustboroCity_Flat2_1F_MapBlockdata
+ .4byte RustboroCity_Flat2_1F_Tileset
+ .4byte RustboroCity_Flat2_1F_Tileset2
+
+RustboroCity_Flat2_2F_MapBorder:: @ 82FC114
+ .incbin "data/maps/RustboroCity_Flat2_2F/border.bin"
+
+RustboroCity_Flat2_2F_MapBlockdata:: @ 82FC11C
+ .incbin "data/maps/RustboroCity_Flat2_2F/map.bin"
+
+RustboroCity_Flat2_2F_MapAttributes:: @ 82FC218
+ .4byte 0xe
+ .4byte 0x9
+ .4byte RustboroCity_Flat2_2F_MapBorder
+ .4byte RustboroCity_Flat2_2F_MapBlockdata
+ .4byte RustboroCity_Flat2_2F_Tileset
+ .4byte RustboroCity_Flat2_2F_Tileset2
+
+RustboroCity_Flat2_3F_MapBorder:: @ 82FC230
+ .incbin "data/maps/RustboroCity_Flat2_3F/border.bin"
+
+RustboroCity_Flat2_3F_MapBlockdata:: @ 82FC238
+ .incbin "data/maps/RustboroCity_Flat2_3F/map.bin"
+
+RustboroCity_Flat2_3F_MapAttributes:: @ 82FC334
+ .4byte 0xe
+ .4byte 0x9
+ .4byte RustboroCity_Flat2_3F_MapBorder
+ .4byte RustboroCity_Flat2_3F_MapBlockdata
+ .4byte RustboroCity_Flat2_3F_Tileset
+ .4byte RustboroCity_Flat2_3F_Tileset2
+
+SootopolisCity_House8_MapBorder:: @ 82FC34C
+ .incbin "data/maps/SootopolisCity_House8/border.bin"
+
+SootopolisCity_House8_MapBlockdata:: @ 82FC354
+ .incbin "data/maps/SootopolisCity_House8/map.bin"
+
+SootopolisCity_House8_MapAttributes:: @ 82FC3C4
+ .4byte 0x8
+ .4byte 0x7
+ .4byte SootopolisCity_House8_MapBorder
+ .4byte SootopolisCity_House8_MapBlockdata
+ .4byte SootopolisCity_House8_Tileset
+ .4byte SootopolisCity_House8_Tileset2
+
+EverGrandeCity_HallOfFame_MapBorder:: @ 82FC3DC
+ .incbin "data/maps/EverGrandeCity_HallOfFame/border.bin"
+
+EverGrandeCity_HallOfFame_MapBlockdata:: @ 82FC3E4
+ .incbin "data/maps/EverGrandeCity_HallOfFame/map.bin"
+
+ .incbin "baserom.gba", 0x2fc5e2, 0x2
+
+EverGrandeCity_HallOfFame_MapAttributes:: @ 82FC5E4
+ .4byte 0xf
+ .4byte 0x11
+ .4byte EverGrandeCity_HallOfFame_MapBorder
+ .4byte EverGrandeCity_HallOfFame_MapBlockdata
+ .4byte EverGrandeCity_HallOfFame_Tileset
+ .4byte EverGrandeCity_HallOfFame_Tileset2
+
+LilycoveCity_CoveLilyMotel_1F_MapBorder:: @ 82FC5FC
+ .incbin "data/maps/LilycoveCity_CoveLilyMotel_1F/border.bin"
+
+LilycoveCity_CoveLilyMotel_1F_MapBlockdata:: @ 82FC604
+ .incbin "data/maps/LilycoveCity_CoveLilyMotel_1F/map.bin"
+
+LilycoveCity_CoveLilyMotel_1F_MapAttributes:: @ 82FC6DC
+ .4byte 0xc
+ .4byte 0x9
+ .4byte LilycoveCity_CoveLilyMotel_1F_MapBorder
+ .4byte LilycoveCity_CoveLilyMotel_1F_MapBlockdata
+ .4byte LilycoveCity_CoveLilyMotel_1F_Tileset
+ .4byte LilycoveCity_CoveLilyMotel_1F_Tileset2
+
+LilycoveCity_CoveLilyMotel_2F_MapBorder:: @ 82FC6F4
+ .incbin "data/maps/LilycoveCity_CoveLilyMotel_2F/border.bin"
+
+LilycoveCity_CoveLilyMotel_2F_MapBlockdata:: @ 82FC6FC
+ .incbin "data/maps/LilycoveCity_CoveLilyMotel_2F/map.bin"
+
+LilycoveCity_CoveLilyMotel_2F_MapAttributes:: @ 82FC7D4
+ .4byte 0xc
+ .4byte 0x9
+ .4byte LilycoveCity_CoveLilyMotel_2F_MapBorder
+ .4byte LilycoveCity_CoveLilyMotel_2F_MapBlockdata
+ .4byte LilycoveCity_CoveLilyMotel_2F_Tileset
+ .4byte LilycoveCity_CoveLilyMotel_2F_Tileset2
+
+Route124_DivingTreasureHuntersHouse_MapBorder:: @ 82FC7EC
+ .incbin "data/maps/Route124_DivingTreasureHuntersHouse/border.bin"
+
+Route124_DivingTreasureHuntersHouse_MapBlockdata:: @ 82FC7F4
+ .incbin "data/maps/Route124_DivingTreasureHuntersHouse/map.bin"
+
+Route124_DivingTreasureHuntersHouse_MapAttributes:: @ 82FC8A8
+ .4byte 0xa
+ .4byte 0x9
+ .4byte Route124_DivingTreasureHuntersHouse_MapBorder
+ .4byte Route124_DivingTreasureHuntersHouse_MapBlockdata
+ .4byte Route124_DivingTreasureHuntersHouse_Tileset
+ .4byte Route124_DivingTreasureHuntersHouse_Tileset2
+
+MtPyre_Exterior_MapBorder:: @ 82FC8C0
+ .incbin "data/maps/MtPyre_Exterior/border.bin"
+
+MtPyre_Exterior_MapBlockdata:: @ 82FC8C8
+ .incbin "data/maps/MtPyre_Exterior/map.bin"
+
+MtPyre_Exterior_MapAttributes:: @ 82FD7EC
+ .4byte 0x26
+ .4byte 0x33
+ .4byte MtPyre_Exterior_MapBorder
+ .4byte MtPyre_Exterior_MapBlockdata
+ .4byte MtPyre_Exterior_Tileset
+ .4byte MtPyre_Exterior_Tileset2
+
+MtPyre_Summit_MapBorder:: @ 82FD804
+ .incbin "data/maps/MtPyre_Summit/border.bin"
+
+MtPyre_Summit_MapBlockdata:: @ 82FD80C
+ .incbin "data/maps/MtPyre_Summit/map.bin"
+
+MtPyre_Summit_MapAttributes:: @ 82FE680
+ .4byte 0x32
+ .4byte 0x25
+ .4byte MtPyre_Summit_MapBorder
+ .4byte MtPyre_Summit_MapBlockdata
+ .4byte MtPyre_Summit_Tileset
+ .4byte MtPyre_Summit_Tileset2
+
+SealedChamber_InnerRoom_MapBorder:: @ 82FE698
+ .incbin "data/maps/SealedChamber_InnerRoom/border.bin"
+
+SealedChamber_InnerRoom_MapBlockdata:: @ 82FE6A0
+ .incbin "data/maps/SealedChamber_InnerRoom/map.bin"
+
+ .incbin "baserom.gba", 0x2fea66, 0x2
+
+SealedChamber_InnerRoom_MapAttributes:: @ 82FEA68
+ .4byte 0x15
+ .4byte 0x17
+ .4byte SealedChamber_InnerRoom_MapBorder
+ .4byte SealedChamber_InnerRoom_MapBlockdata
+ .4byte SealedChamber_InnerRoom_Tileset
+ .4byte SealedChamber_InnerRoom_Tileset2
+
+MossdeepCity_GameCorner_1F_MapBorder:: @ 82FEA80
+ .incbin "data/maps/MossdeepCity_GameCorner_1F/border.bin"
+
+MossdeepCity_GameCorner_1F_MapBlockdata:: @ 82FEA88
+ .incbin "data/maps/MossdeepCity_GameCorner_1F/map.bin"
+
+MossdeepCity_GameCorner_1F_MapAttributes:: @ 82FEB38
+ .4byte 0xb
+ .4byte 0x8
+ .4byte MossdeepCity_GameCorner_1F_MapBorder
+ .4byte MossdeepCity_GameCorner_1F_MapBlockdata
+ .4byte MossdeepCity_GameCorner_1F_Tileset
+ .4byte MossdeepCity_GameCorner_1F_Tileset2
+
+MossdeepCity_GameCorner_B1F_MapBorder:: @ 82FEB50
+ .incbin "data/maps/MossdeepCity_GameCorner_B1F/border.bin"
+
+MossdeepCity_GameCorner_B1F_MapBlockdata:: @ 82FEB58
+ .incbin "data/maps/MossdeepCity_GameCorner_B1F/map.bin"
+
+MossdeepCity_GameCorner_B1F_MapAttributes:: @ 82FEC30
+ .4byte 0xc
+ .4byte 0x9
+ .4byte MossdeepCity_GameCorner_B1F_MapBorder
+ .4byte MossdeepCity_GameCorner_B1F_MapBlockdata
+ .4byte MossdeepCity_GameCorner_B1F_Tileset
+ .4byte MossdeepCity_GameCorner_B1F_Tileset2
+
+SootopolisCity_House1_MapBorder:: @ 82FEC48
+ .incbin "data/maps/SootopolisCity_House1/border.bin"
+
+SootopolisCity_House1_MapBlockdata:: @ 82FEC50
+ .incbin "data/maps/SootopolisCity_House1/map.bin"
+
+SootopolisCity_House1_MapAttributes:: @ 82FECC0
+SootopolisCity_House4_MapAttributes:: @ 82FECC0
+SootopolisCity_House7_MapAttributes:: @ 82FECC0
+ .4byte 0x8
+ .4byte 0x7
+ .4byte SootopolisCity_House1_MapBorder
+ .4byte SootopolisCity_House1_MapBlockdata
+ .4byte SootopolisCity_House1_Tileset
+ .4byte SootopolisCity_House1_Tileset2
+
+SootopolisCity_House2_MapBorder:: @ 82FECD8
+ .incbin "data/maps/SootopolisCity_House2/border.bin"
+
+SootopolisCity_House2_MapBlockdata:: @ 82FECE0
+ .incbin "data/maps/SootopolisCity_House2/map.bin"
+
+SootopolisCity_House2_MapAttributes:: @ 82FED50
+SootopolisCity_House5_MapAttributes:: @ 82FED50
+ .4byte 0x8
+ .4byte 0x7
+ .4byte SootopolisCity_House2_MapBorder
+ .4byte SootopolisCity_House2_MapBlockdata
+ .4byte SootopolisCity_House2_Tileset
+ .4byte SootopolisCity_House2_Tileset2
+
+SootopolisCity_House3_MapBorder:: @ 82FED68
+ .incbin "data/maps/SootopolisCity_House3/border.bin"
+
+SootopolisCity_House3_MapBlockdata:: @ 82FED70
+ .incbin "data/maps/SootopolisCity_House3/map.bin"
+
+SootopolisCity_House3_MapAttributes:: @ 82FEDE0
+SootopolisCity_House6_MapAttributes:: @ 82FEDE0
+ .4byte 0x8
+ .4byte 0x7
+ .4byte SootopolisCity_House3_MapBorder
+ .4byte SootopolisCity_House3_MapBlockdata
+ .4byte SootopolisCity_House3_Tileset
+ .4byte SootopolisCity_House3_Tileset2
+
+AbandonedShip_HiddenFloorRooms_MapBorder:: @ 82FEDF8
+ .incbin "data/maps/AbandonedShip_HiddenFloorRooms/border.bin"
+
+AbandonedShip_HiddenFloorRooms_MapBlockdata:: @ 82FEE00
+ .incbin "data/maps/AbandonedShip_HiddenFloorRooms/map.bin"
+
+AbandonedShip_HiddenFloorRooms_MapAttributes:: @ 82FF328
+ .4byte 0x2c
+ .4byte 0xf
+ .4byte AbandonedShip_HiddenFloorRooms_MapBorder
+ .4byte AbandonedShip_HiddenFloorRooms_MapBlockdata
+ .4byte AbandonedShip_HiddenFloorRooms_Tileset
+ .4byte AbandonedShip_HiddenFloorRooms_Tileset2
+
+ScorchedSlab_MapBorder:: @ 82FF340
+ .incbin "data/maps/ScorchedSlab/border.bin"
+
+ScorchedSlab_MapBlockdata:: @ 82FF348
+ .incbin "data/maps/ScorchedSlab/map.bin"
+
+ScorchedSlab_MapAttributes:: @ 82FF5A0
+ .4byte 0xf
+ .4byte 0x14
+ .4byte ScorchedSlab_MapBorder
+ .4byte ScorchedSlab_MapBlockdata
+ .4byte ScorchedSlab_Tileset
+ .4byte ScorchedSlab_Tileset2
+
+ .incbin "baserom.gba", 0x2ff5b8, 0x2f4
+
+RustboroCity_Flat1_1F_MapBorder:: @ 82FF8AC
+ .incbin "data/maps/RustboroCity_Flat1_1F/border.bin"
+
+RustboroCity_Flat1_1F_MapBlockdata:: @ 82FF8B4
+ .incbin "data/maps/RustboroCity_Flat1_1F/map.bin"
+
+RustboroCity_Flat1_1F_MapAttributes:: @ 82FF994
+ .4byte 0xe
+ .4byte 0x8
+ .4byte RustboroCity_Flat1_1F_MapBorder
+ .4byte RustboroCity_Flat1_1F_MapBlockdata
+ .4byte RustboroCity_Flat1_1F_Tileset
+ .4byte RustboroCity_Flat1_1F_Tileset2
+
+RustboroCity_Flat1_2F_MapBorder:: @ 82FF9AC
+ .incbin "data/maps/RustboroCity_Flat1_2F/border.bin"
+
+RustboroCity_Flat1_2F_MapBlockdata:: @ 82FF9B4
+ .incbin "data/maps/RustboroCity_Flat1_2F/map.bin"
+
+RustboroCity_Flat1_2F_MapAttributes:: @ 82FFA94
+ .4byte 0xe
+ .4byte 0x8
+ .4byte RustboroCity_Flat1_2F_MapBorder
+ .4byte RustboroCity_Flat1_2F_MapBlockdata
+ .4byte RustboroCity_Flat1_2F_Tileset
+ .4byte RustboroCity_Flat1_2F_Tileset2
+
+EverGrandeCity_Corridor4_MapBorder:: @ 82FFAAC
+ .incbin "data/maps/EverGrandeCity_Corridor4/border.bin"
+
+EverGrandeCity_Corridor4_MapBlockdata:: @ 82FFAB4
+ .incbin "data/maps/EverGrandeCity_Corridor4/map.bin"
+
+EverGrandeCity_Corridor4_MapAttributes:: @ 82FFDA0
+ .4byte 0xb
+ .4byte 0x22
+ .4byte EverGrandeCity_Corridor4_MapBorder
+ .4byte EverGrandeCity_Corridor4_MapBlockdata
+ .4byte EverGrandeCity_Corridor4_Tileset
+ .4byte EverGrandeCity_Corridor4_Tileset2
+
+MagmaHideout_1F_MapBorder:: @ 82FFDB8
+ .incbin "data/maps/MagmaHideout_1F/border.bin"
+
+MagmaHideout_1F_MapBlockdata:: @ 82FFDC0
+ .incbin "data/maps/MagmaHideout_1F/map.bin"
+
+MagmaHideout_1F_MapAttributes:: @ 8300450
+ .4byte 0x1c
+ .4byte 0x1e
+ .4byte MagmaHideout_1F_MapBorder
+ .4byte MagmaHideout_1F_MapBlockdata
+ .4byte MagmaHideout_1F_Tileset
+ .4byte MagmaHideout_1F_Tileset2
+
+MagmaHideout_B1F_MapBorder:: @ 8300468
+ .incbin "data/maps/MagmaHideout_B1F/border.bin"
+
+MagmaHideout_B1F_MapBlockdata:: @ 8300470
+ .incbin "data/maps/MagmaHideout_B1F/map.bin"
+
+MagmaHideout_B1F_MapAttributes:: @ 8301010
+ .4byte 0x3e
+ .4byte 0x18
+ .4byte MagmaHideout_B1F_MapBorder
+ .4byte MagmaHideout_B1F_MapBlockdata
+ .4byte MagmaHideout_B1F_Tileset
+ .4byte MagmaHideout_B1F_Tileset2
+
+MagmaHideout_B2F_MapBorder:: @ 8301028
+ .incbin "data/maps/MagmaHideout_B2F/border.bin"
+
+MagmaHideout_B2F_MapBlockdata:: @ 8301030
+ .incbin "data/maps/MagmaHideout_B2F/map.bin"
+
+MagmaHideout_B2F_MapAttributes:: @ 8301690
+ .4byte 0x22
+ .4byte 0x18
+ .4byte MagmaHideout_B2F_MapBorder
+ .4byte MagmaHideout_B2F_MapBlockdata
+ .4byte MagmaHideout_B2F_Tileset
+ .4byte MagmaHideout_B2F_Tileset2
+
+ .incbin "baserom.gba", 0x3016a8, 0x12e0
+
+SkyPillar_Entrance_MapBorder:: @ 8302988
+ .incbin "data/maps/SkyPillar_Entrance/border.bin"
+
+SkyPillar_Entrance_MapBlockdata:: @ 8302990
+ .incbin "data/maps/SkyPillar_Entrance/map.bin"
+
+SkyPillar_Entrance_MapAttributes:: @ 8302C18
+ .4byte 0x12
+ .4byte 0x12
+ .4byte SkyPillar_Entrance_MapBorder
+ .4byte SkyPillar_Entrance_MapBlockdata
+ .4byte SkyPillar_Entrance_Tileset
+ .4byte SkyPillar_Entrance_Tileset2
+
+SkyPillar_Outside_MapBorder:: @ 8302C30
+ .incbin "data/maps/SkyPillar_Outside/border.bin"
+
+SkyPillar_Outside_MapBlockdata:: @ 8302C38
+ .incbin "data/maps/SkyPillar_Outside/map.bin"
+
+SkyPillar_Outside_MapAttributes:: @ 8303140
+ .4byte 0x1c
+ .4byte 0x17
+ .4byte SkyPillar_Outside_MapBorder
+ .4byte SkyPillar_Outside_MapBlockdata
+ .4byte SkyPillar_Outside_Tileset
+ .4byte SkyPillar_Outside_Tileset2
+
+SkyPillar_1F_MapBorder:: @ 8303158
+ .incbin "data/maps/SkyPillar_1F/border.bin"
+
+SkyPillar_1F_MapBlockdata:: @ 8303160
+ .incbin "data/maps/SkyPillar_1F/map.bin"
+
+SkyPillar_1F_MapAttributes:: @ 83032E8
+ .4byte 0xe
+ .4byte 0xe
+ .4byte SkyPillar_1F_MapBorder
+ .4byte SkyPillar_1F_MapBlockdata
+ .4byte SkyPillar_1F_Tileset
+ .4byte SkyPillar_1F_Tileset2
+
+SkyPillar_2F_MapBorder:: @ 8303300
+ .incbin "data/maps/SkyPillar_2F/border.bin"
+
+SkyPillar_2F_MapBlockdata:: @ 8303308
+ .incbin "data/maps/SkyPillar_2F/map.bin"
+
+SkyPillar_2F_MapAttributes:: @ 8303490
+ .4byte 0xe
+ .4byte 0xe
+ .4byte SkyPillar_2F_MapBorder
+ .4byte SkyPillar_2F_MapBlockdata
+ .4byte SkyPillar_2F_Tileset
+ .4byte SkyPillar_2F_Tileset2
+
+SkyPillar_3F_MapBorder:: @ 83034A8
+ .incbin "data/maps/SkyPillar_3F/border.bin"
+
+SkyPillar_3F_MapBlockdata:: @ 83034B0
+ .incbin "data/maps/SkyPillar_3F/map.bin"
+
+SkyPillar_3F_MapAttributes:: @ 8303638
+ .4byte 0xe
+ .4byte 0xe
+ .4byte SkyPillar_3F_MapBorder
+ .4byte SkyPillar_3F_MapBlockdata
+ .4byte SkyPillar_3F_Tileset
+ .4byte SkyPillar_3F_Tileset2
+
+SkyPillar_4F_MapBorder:: @ 8303650
+ .incbin "data/maps/SkyPillar_4F/border.bin"
+
+SkyPillar_4F_MapBlockdata:: @ 8303658
+ .incbin "data/maps/SkyPillar_4F/map.bin"
+
+SkyPillar_4F_MapAttributes:: @ 83037E0
+ .4byte 0xe
+ .4byte 0xe
+ .4byte SkyPillar_4F_MapBorder
+ .4byte SkyPillar_4F_MapBlockdata
+ .4byte SkyPillar_4F_Tileset
+ .4byte SkyPillar_4F_Tileset2
+
+ .incbin "baserom.gba", 0x3037f8, 0x9d4
+
+MossdeepCity_StevensHouse_MapBorder:: @ 83041CC
+ .incbin "data/maps/MossdeepCity_StevensHouse/border.bin"
+
+MossdeepCity_StevensHouse_MapBlockdata:: @ 83041D4
+ .incbin "data/maps/MossdeepCity_StevensHouse/map.bin"
+
+MossdeepCity_StevensHouse_MapAttributes:: @ 8304284
+ .4byte 0xb
+ .4byte 0x8
+ .4byte MossdeepCity_StevensHouse_MapBorder
+ .4byte MossdeepCity_StevensHouse_MapBlockdata
+ .4byte MossdeepCity_StevensHouse_Tileset
+ .4byte MossdeepCity_StevensHouse_Tileset2
+
+ShoalCave_LowTideIceRoom_MapBorder:: @ 830429C
+ .incbin "data/maps/ShoalCave_LowTideIceRoom/border.bin"
+
+ShoalCave_LowTideIceRoom_MapBlockdata:: @ 83042A4
+ .incbin "data/maps/ShoalCave_LowTideIceRoom/map.bin"
+
+ShoalCave_LowTideIceRoom_MapAttributes:: @ 8304754
+ .4byte 0x14
+ .4byte 0x1e
+ .4byte ShoalCave_LowTideIceRoom_MapBorder
+ .4byte ShoalCave_LowTideIceRoom_MapBlockdata
+ .4byte ShoalCave_LowTideIceRoom_Tileset
+ .4byte ShoalCave_LowTideIceRoom_Tileset2
+
+SafariZone_RestHouse_MapBorder:: @ 830476C
+ .incbin "data/maps/SafariZone_RestHouse/border.bin"
+
+SafariZone_RestHouse_MapBlockdata:: @ 8304774
+ .incbin "data/maps/SafariZone_RestHouse/map.bin"
+
+SafariZone_RestHouse_MapAttributes:: @ 8304828
+ .4byte 0xa
+ .4byte 0x9
+ .4byte SafariZone_RestHouse_MapBorder
+ .4byte SafariZone_RestHouse_MapBlockdata
+ .4byte SafariZone_RestHouse_Tileset
+ .4byte SafariZone_RestHouse_Tileset2
+
+SkyPillar_5F_MapBorder:: @ 8304840
+ .incbin "data/maps/SkyPillar_5F/border.bin"
+
+SkyPillar_5F_MapBlockdata:: @ 8304848
+ .incbin "data/maps/SkyPillar_5F/map.bin"
+
+SkyPillar_5F_MapAttributes:: @ 83049D0
+ .4byte 0xe
+ .4byte 0xe
+ .4byte SkyPillar_5F_MapBorder
+ .4byte SkyPillar_5F_MapBlockdata
+ .4byte SkyPillar_5F_Tileset
+ .4byte SkyPillar_5F_Tileset2
+
+SkyPillar_Top_MapBorder:: @ 83049E8
+ .incbin "data/maps/SkyPillar_Top/border.bin"
+
+SkyPillar_Top_MapBlockdata:: @ 83049F0
+ .incbin "data/maps/SkyPillar_Top/map.bin"
+
+SkyPillar_Top_MapAttributes:: @ 8304F00
+ .4byte 0x1b
+ .4byte 0x18
+ .4byte SkyPillar_Top_MapBorder
+ .4byte SkyPillar_Top_MapBlockdata
+ .4byte SkyPillar_Top_Tileset
+ .4byte SkyPillar_Top_Tileset2
+
diff --git a/data/maps/_groups.s b/data/maps/_groups.s
new file mode 100644
index 000000000..e4ea931f6
--- /dev/null
+++ b/data/maps/_groups.s
@@ -0,0 +1,462 @@
+gMapGroup0:: @ 8307F60
+ .4byte PetalburgCity
+ .4byte SlateportCity
+ .4byte MauvilleCity
+ .4byte RustboroCity
+ .4byte FortreeCity
+ .4byte LilycoveCity
+ .4byte MossdeepCity
+ .4byte SootopolisCity
+ .4byte EverGrandeCity
+ .4byte LittlerootTown
+ .4byte OldaleTown
+ .4byte DewfordTown
+ .4byte LavaridgeTown
+ .4byte FallarborTown
+ .4byte VerdanturfTown
+ .4byte PacifidlogTown
+ .4byte Route101
+ .4byte Route102
+ .4byte Route103
+ .4byte Route104
+ .4byte Route105
+ .4byte Route106
+ .4byte Route107
+ .4byte Route108
+ .4byte Route109
+ .4byte Route110
+ .4byte Route111
+ .4byte Route112
+ .4byte Route113
+ .4byte Route114
+ .4byte Route115
+ .4byte Route116
+ .4byte Route117
+ .4byte Route118
+ .4byte Route119
+ .4byte Route120
+ .4byte Route121
+ .4byte Route122
+ .4byte Route123
+ .4byte Route124
+ .4byte Route125
+ .4byte Route126
+ .4byte Route127
+ .4byte Route128
+ .4byte Route129
+ .4byte Route130
+ .4byte Route131
+ .4byte Route132
+ .4byte Route133
+ .4byte Route134
+ .4byte Underwater1
+ .4byte Underwater2
+ .4byte Underwater3
+ .4byte Underwater4
+
+gMapGroup1:: @ 8308038
+ .4byte LittlerootTown_BrendansHouse_1F
+ .4byte LittlerootTown_BrendansHouse_2F
+ .4byte LittlerootTown_MaysHouse_1F
+ .4byte LittlerootTown_MaysHouse_2F
+ .4byte LittlerootTown_ProfessorBirchsLab
+
+gMapGroup2:: @ 830804C
+ .4byte OldaleTown_House1
+ .4byte OldaleTown_House2
+ .4byte OldaleTown_PokemonCenter_1F
+ .4byte OldaleTown_PokemonCenter_2F
+ .4byte OldaleTown_Mart
+
+gMapGroup3:: @ 8308060
+ .4byte DewfordTown_House1
+ .4byte DewfordTown_PokemonCenter_1F
+ .4byte DewfordTown_PokemonCenter_2F
+ .4byte DewfordTown_Gym
+ .4byte DewfordTown_Hall
+ .4byte DewfordTown_House2
+
+gMapGroup4:: @ 8308078
+ .4byte LavaridgeTown_HerbShop
+ .4byte LavaridgeTown_Gym_1F
+ .4byte LavaridgeTown_Gym_B1F
+ .4byte LavaridgeTown_House
+ .4byte LavaridgeTown_Mart
+ .4byte LavaridgeTown_PokemonCenter_1F
+ .4byte LavaridgeTown_PokemonCenter_2F
+
+gMapGroup5:: @ 8308094
+ .4byte FallarborTown_Mart
+ .4byte FallarborTown_ContestLobby
+ .4byte FallarborTown_ContestHall
+ .4byte FallarborTown_PokemonCenter_1F
+ .4byte FallarborTown_PokemonCenter_2F
+ .4byte FallarborTown_House1
+ .4byte FallarborTown_House2
+
+gMapGroup6:: @ 83080B0
+ .4byte VerdanturfTown_ContestLobby
+ .4byte VerdanturfTown_ContestHall
+ .4byte VerdanturfTown_Mart
+ .4byte VerdanturfTown_PokemonCenter_1F
+ .4byte VerdanturfTown_PokemonCenter_2F
+ .4byte VerdanturfTown_WandasHouse
+ .4byte VerdanturfTown_FriendshipRatersHouse
+ .4byte VerdanturfTown_House
+
+gMapGroup7:: @ 83080D0
+ .4byte PacifidlogTown_PokemonCenter_1F
+ .4byte PacifidlogTown_PokemonCenter_2F
+ .4byte PacifidlogTown_House1
+ .4byte PacifidlogTown_House2
+ .4byte PacifidlogTown_House3
+ .4byte PacifidlogTown_House4
+ .4byte PacifidlogTown_House5
+
+gMapGroup8:: @ 83080EC
+ .4byte PetalburgCity_WallysHouse
+ .4byte PetalburgCity_Gym
+ .4byte PetalburgCity_House1
+ .4byte PetalburgCity_House2
+ .4byte PetalburgCity_PokemonCenter_1F
+ .4byte PetalburgCity_PokemonCenter_2F
+ .4byte PetalburgCity_Mart
+
+gMapGroup9:: @ 8308108
+ .4byte SlateportCity_SternsShipyard_1F
+ .4byte SlateportCity_SternsShipyard_2F
+ .4byte SlateportCity_ContestLobby
+ .4byte SlateportCity_ContestHall
+ .4byte SlateportCity_House1
+ .4byte SlateportCity_PokemonFanClub
+ .4byte SlateportCity_OceanicMuseum_1F
+ .4byte SlateportCity_OceanicMuseum_2F
+ .4byte SlateportCity_Harbor
+ .4byte SlateportCity_House2
+ .4byte SlateportCity_PokemonCenter_1F
+ .4byte SlateportCity_PokemonCenter_2F
+ .4byte SlateportCity_Mart
+
+gMapGroup10:: @ 830813C
+ .4byte MauvilleCity_Gym
+ .4byte MauvilleCity_BikeShop
+ .4byte MauvilleCity_House1
+ .4byte MauvilleCity_GameCorner
+ .4byte MauvilleCity_House2
+ .4byte MauvilleCity_PokemonCenter_1F
+ .4byte MauvilleCity_PokemonCenter_2F
+ .4byte MauvilleCity_Mart
+
+gMapGroup11:: @ 830815C
+ .4byte RustboroCity_DevonCorp_1F
+ .4byte RustboroCity_DevonCorp_2F
+ .4byte RustboroCity_DevonCorp_3F
+ .4byte RustboroCity_Gym
+ .4byte RustboroCity_PokemonSchool
+ .4byte RustboroCity_PokemonCenter_1F
+ .4byte RustboroCity_PokemonCenter_2F
+ .4byte RustboroCity_Mart
+ .4byte RustboroCity_Flat1_1F
+ .4byte RustboroCity_Flat1_2F
+ .4byte RustboroCity_House1
+ .4byte RustboroCity_CuttersHouse
+ .4byte RustboroCity_House2
+ .4byte RustboroCity_Flat2_1F
+ .4byte RustboroCity_Flat2_2F
+ .4byte RustboroCity_Flat2_3F
+ .4byte RustboroCity_House3
+
+gMapGroup12:: @ 83081A0
+ .4byte FortreeCity_House1
+ .4byte FortreeCity_Gym
+ .4byte FortreeCity_PokemonCenter_1F
+ .4byte FortreeCity_PokemonCenter_2F
+ .4byte FortreeCity_Mart
+ .4byte FortreeCity_House2
+ .4byte FortreeCity_House3
+ .4byte FortreeCity_House4
+ .4byte FortreeCity_House5
+ .4byte FortreeCity_DecorationShop
+
+gMapGroup13:: @ 83081C8
+ .4byte LilycoveCity_CoveLilyMotel_1F
+ .4byte LilycoveCity_CoveLilyMotel_2F
+ .4byte LilycoveCity_LilycoveMuseum_1F
+ .4byte LilycoveCity_LilycoveMuseum_2F
+ .4byte LilycoveCity_ContestLobby
+ .4byte LilycoveCity_ContestHall
+ .4byte LilycoveCity_PokemonCenter_1F
+ .4byte LilycoveCity_PokemonCenter_2F
+ .4byte LilycoveCity_UnusedMart
+ .4byte LilycoveCity_PokemonTrainerFanClub
+ .4byte LilycoveCity_Harbor
+ .4byte LilycoveCity_EmptyMap
+ .4byte LilycoveCity_MoveDeletersHouse
+ .4byte LilycoveCity_House1
+ .4byte LilycoveCity_House2
+ .4byte LilycoveCity_House3
+ .4byte LilycoveCity_House4
+ .4byte LilycoveCity_DepartmentStore_1F
+ .4byte LilycoveCity_DepartmentStore_2F
+ .4byte LilycoveCity_DepartmentStore_3F
+ .4byte LilycoveCity_DepartmentStore_4F
+ .4byte LilycoveCity_DepartmentStore_5F
+ .4byte LilycoveCity_DepartmentStoreRooftop
+ .4byte LilycoveCity_DepartmentStoreElevator
+
+gMapGroup14:: @ 8308228
+ .4byte MossdeepCity_Gym
+ .4byte MossdeepCity_House1
+ .4byte MossdeepCity_House2
+ .4byte MossdeepCity_PokemonCenter_1F
+ .4byte MossdeepCity_PokemonCenter_2F
+ .4byte MossdeepCity_Mart
+ .4byte MossdeepCity_House3
+ .4byte MossdeepCity_StevensHouse
+ .4byte MossdeepCity_House4
+ .4byte MossdeepCity_SpaceCenter_1F
+ .4byte MossdeepCity_SpaceCenter_2F
+ .4byte MossdeepCity_GameCorner_1F
+ .4byte MossdeepCity_GameCorner_B1F
+
+gMapGroup15:: @ 830825C
+ .4byte SootopolisCity_Gym_1F
+ .4byte SootopolisCity_Gym_B1F
+ .4byte SootopolisCity_PokemonCenter_1F
+ .4byte SootopolisCity_PokemonCenter_2F
+ .4byte SootopolisCity_Mart
+ .4byte SootopolisCity_House1
+ .4byte SootopolisCity_House2
+ .4byte SootopolisCity_House3
+ .4byte SootopolisCity_House4
+ .4byte SootopolisCity_House5
+ .4byte SootopolisCity_House6
+ .4byte SootopolisCity_House7
+ .4byte SootopolisCity_House8
+
+gMapGroup16:: @ 8308290
+ .4byte EverGrandeCity_SidneysRoom
+ .4byte EverGrandeCity_PhoebesRoom
+ .4byte EverGrandeCity_GlaciasRoom
+ .4byte EverGrandeCity_DrakesRoom
+ .4byte EverGrandeCity_ChampionsRoom
+ .4byte EverGrandeCity_Corridor1
+ .4byte EverGrandeCity_Corridor2
+ .4byte EverGrandeCity_Corridor3
+ .4byte EverGrandeCity_Corridor4
+ .4byte EverGrandeCity_Corridor5
+ .4byte EverGrandeCity_PokemonLeague
+ .4byte EverGrandeCity_HallOfFame
+ .4byte EverGrandeCity_PokemonCenter_1F
+ .4byte EverGrandeCity_PokemonCenter_2F
+
+gMapGroup17:: @ 83082C8
+ .4byte Route104_MrBrineysHouse
+ .4byte Route104_PrettyPetalFlowerShop
+
+gMapGroup18:: @ 83082D0
+ .4byte Route111_WinstrateFamilysHouse
+ .4byte Route111_OldLadysRestStop
+
+gMapGroup19:: @ 83082D8
+ .4byte Route112_CableCarStation
+ .4byte MtChimney_CableCarStation
+
+gMapGroup20:: @ 83082E0
+ .4byte Route114_FossilManiacsHouse
+ .4byte Route114_FossilManiacsTunnel
+ .4byte Route114_LanettesHouse
+
+gMapGroup21:: @ 83082EC
+ .4byte Route116_TunnelersRestHouse
+
+gMapGroup22:: @ 83082F0
+ .4byte Route117_PokemonDayCare
+
+gMapGroup23:: @ 83082F4
+ .4byte Route121_SafariZoneEntrance
+
+gMapGroup24:: @ 83082F8
+ .4byte MeteorFalls_1F_1R
+ .4byte MeteorFalls_1F_2R
+ .4byte MeteorFalls_B1F_1R
+ .4byte MeteorFalls_B1F_2R
+ .4byte RusturfTunnel
+ .4byte Underwater_SootopolisCity
+ .4byte DesertRuins
+ .4byte GraniteCave_1F
+ .4byte GraniteCave_B1F
+ .4byte GraniteCave_B2F
+ .4byte GraniteCave_StevensRoom
+ .4byte PetalburgWoods
+ .4byte MtChimney
+ .4byte JaggedPass
+ .4byte FieryPath
+ .4byte MtPyre_1F
+ .4byte MtPyre_2F
+ .4byte MtPyre_3F
+ .4byte MtPyre_4F
+ .4byte MtPyre_5F
+ .4byte MtPyre_6F
+ .4byte MtPyre_Exterior
+ .4byte MtPyre_Summit
+ .4byte AquaHideout_1F
+ .4byte AquaHideout_B1F
+ .4byte AquaHideout_B2F
+ .4byte Underwater_SeafloorCavern
+ .4byte SeafloorCavern_Entrance
+ .4byte SeafloorCavern_Room1
+ .4byte SeafloorCavern_Room2
+ .4byte SeafloorCavern_Room3
+ .4byte SeafloorCavern_Room4
+ .4byte SeafloorCavern_Room5
+ .4byte SeafloorCavern_Room6
+ .4byte SeafloorCavern_Room7
+ .4byte SeafloorCavern_Room8
+ .4byte SeafloorCavern_Room9
+ .4byte CaveOfOrigin_Entrance
+ .4byte CaveOfOrigin_1F
+ .4byte CaveOfOrigin_B1F
+ .4byte CaveOfOrigin_B2F
+ .4byte CaveOfOrigin_B3F
+ .4byte CaveOfOrigin_B4F
+ .4byte VictoryRoad_1F
+ .4byte VictoryRoad_B1F
+ .4byte VictoryRoad_B2F
+ .4byte ShoalCave_LowTideEntranceRoom
+ .4byte ShoalCave_LowTideInnerRoom
+ .4byte ShoalCave_LowTideStairsRoom
+ .4byte ShoalCave_LowTideLowerRoom
+ .4byte ShoalCave_HighTideEntranceRoom
+ .4byte ShoalCave_HighTideInnerRoom
+ .4byte NewMauville_Entrance
+ .4byte NewMauville_Inside
+ .4byte AbandonedShip_Deck
+ .4byte AbandonedShip_Corridors_1F
+ .4byte AbandonedShip_Rooms_1F
+ .4byte AbandonedShip_Corridors_B1F
+ .4byte AbandonedShip_Rooms_B1F
+ .4byte AbandonedShip_Rooms2_B1F
+ .4byte AbandonedShip_Underwater1
+ .4byte AbandonedShip_Room_B1F
+ .4byte AbandonedShip_Rooms2_1F
+ .4byte AbandonedShip_CaptainsOffice
+ .4byte AbandonedShip_Underwater2
+ .4byte AbandonedShip_HiddenFloorCorridors
+ .4byte AbandonedShip_HiddenFloorRooms
+ .4byte IslandCave
+ .4byte AncientTomb
+ .4byte Underwater_Route134
+ .4byte Underwater_SealedChamber
+ .4byte SealedChamber_OuterRoom
+ .4byte SealedChamber_InnerRoom
+ .4byte ScorchedSlab
+ .4byte MagmaHideout_1F
+ .4byte MagmaHideout_B1F
+ .4byte MagmaHideout_B2F
+ .4byte SkyPillar_Entrance
+ .4byte SkyPillar_Outside
+ .4byte SkyPillar_1F
+ .4byte SkyPillar_2F
+ .4byte SkyPillar_3F
+ .4byte SkyPillar_4F
+ .4byte ShoalCave_LowTideIceRoom
+ .4byte SkyPillar_5F
+ .4byte SkyPillar_Top
+
+gMapGroup25:: @ 8308450
+ .4byte SecretBase_RedCave1
+ .4byte SecretBase_BrownCave1
+ .4byte SecretBase_BlueCave1
+ .4byte SecretBase_YellowCave1
+ .4byte SecretBase_Tree1
+ .4byte SecretBase_Shrub1
+ .4byte SecretBase_RedCave2
+ .4byte SecretBase_BrownCave2
+ .4byte SecretBase_BlueCave2
+ .4byte SecretBase_YellowCave2
+ .4byte SecretBase_Tree2
+ .4byte SecretBase_Shrub2
+ .4byte SecretBase_RedCave3
+ .4byte SecretBase_BrownCave3
+ .4byte SecretBase_BlueCave3
+ .4byte SecretBase_YellowCave3
+ .4byte SecretBase_Tree3
+ .4byte SecretBase_Shrub3
+ .4byte SecretBase_RedCave4
+ .4byte SecretBase_BrownCave4
+ .4byte SecretBase_BlueCave4
+ .4byte SecretBase_YellowCave4
+ .4byte SecretBase_Tree4
+ .4byte SecretBase_Shrub4
+ .4byte SingleBattleColosseum
+ .4byte TradeCenter
+ .4byte RecordCorner
+ .4byte DoubleBattleColosseum
+ .4byte LinkContestRoom1
+ .4byte UnknownMap_25_29
+ .4byte UnknownMap_25_30
+ .4byte UnknownMap_25_31
+ .4byte UnknownMap_25_32
+ .4byte UnknownMap_25_33
+ .4byte UnknownMap_25_34
+ .4byte LinkContestRoom2
+ .4byte LinkContestRoom3
+ .4byte LinkContestRoom4
+ .4byte LinkContestRoom5
+ .4byte LinkContestRoom6
+ .4byte InsideOfTruck
+ .4byte SSTidalCorridor
+ .4byte SSTidalLowerDeck
+ .4byte SSTidalRooms
+
+gMapGroup26:: @ 8308500
+ .4byte SafariZone_Northwest
+ .4byte SafariZone_Northeast
+ .4byte SafariZone_Southwest
+ .4byte SafariZone_Southeast
+ .4byte BattleTower_Outside
+ .4byte BattleTower_Lobby
+ .4byte BattleTower_Elevator
+ .4byte BattleTower_Corridor
+ .4byte BattleTower_BattleRoom
+ .4byte SouthernIsland_Exterior
+ .4byte SouthernIsland_Interior
+ .4byte SafariZone_RestHouse
+
+gMapGroup27:: @ 8308530
+ .4byte Route104_Prototype
+ .4byte Route104_PrototypePrettyPetalFlowerShop
+
+gMapGroup28:: @ 8308538
+ .4byte Route109_SeashoreHouse
+
+gMapGroup29:: @ 830853C
+ .4byte Route110_TrickHouseEntrance
+ .4byte Route110_TrickHouseEnd
+ .4byte Route110_TrickHouseCorridor
+ .4byte Route110_TrickHousePuzzle1
+ .4byte Route110_TrickHousePuzzle2
+ .4byte Route110_TrickHousePuzzle3
+ .4byte Route110_TrickHousePuzzle4
+ .4byte Route110_TrickHousePuzzle5
+ .4byte Route110_TrickHousePuzzle6
+ .4byte Route110_TrickHousePuzzle7
+ .4byte Route110_TrickHousePuzzle8
+ .4byte Route110_SeasideCyclingRoadSouthEntrance
+ .4byte Route110_SeasideCyclingRoadNorthEntrance
+
+gMapGroup30:: @ 8308570
+ .4byte Route113_GlassWorkshop
+
+gMapGroup31:: @ 8308574
+ .4byte Route123_BerryMastersHouse
+
+gMapGroup32:: @ 8308578
+ .4byte Route119_WeatherInstitute_1F
+ .4byte Route119_WeatherInstitute_2F
+ .4byte Route119_House
+
+gMapGroup33:: @ 8308584
+ .4byte Route124_DivingTreasureHuntersHouse
+
diff --git a/data/maps/events/AbandonedShip_CaptainsOffice.s b/data/maps/events/AbandonedShip_CaptainsOffice.s
new file mode 100644
index 000000000..ab3cdc682
--- /dev/null
+++ b/data/maps/events/AbandonedShip_CaptainsOffice.s
@@ -0,0 +1,11 @@
+AbandonedShip_CaptainsOffice_MapObjects:: @ 838E45C
+ object_event 1, MAP_OBJ_GFX_SCIENTIST_1, 0, 3, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, AbandonedShip_CaptainsOffice_EventScript_15EAF5, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_ITEM_BALL, 0, 0, 0, 6, 0, 3, 1, 17, 0, 0, 0, 0, 0, AbandonedShip_CaptainsOffice_EventScript_1B18BE, 1100, 0, 0
+
+AbandonedShip_CaptainsOffice_MapWarps:: @ 838E48C
+ warp_def 7, 6, 3, 4, AbandonedShip_Deck
+ warp_def 8, 6, 3, 4, AbandonedShip_Deck
+
+AbandonedShip_CaptainsOffice_MapEvents:: @ 838E49C
+ map_events AbandonedShip_CaptainsOffice_MapObjects, AbandonedShip_CaptainsOffice_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/AbandonedShip_Corridors_1F.s b/data/maps/events/AbandonedShip_Corridors_1F.s
new file mode 100644
index 000000000..35218874f
--- /dev/null
+++ b/data/maps/events/AbandonedShip_Corridors_1F.s
@@ -0,0 +1,21 @@
+AbandonedShip_Corridors_1F_MapObjects:: @ 838E120
+ object_event 1, MAP_OBJ_GFX_YOUNGSTER, 0, 17, 0, 7, 0, 3, 2, 17, 0, 0, 0, 0, 0, AbandonedShip_Corridors_1F_EventScript_15E965, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_TUBER_M, 0, 5, 0, 10, 0, 3, 45, 116, 0, 1, 0, 3, 0, AbandonedShip_Corridors_1F_EventScript_15E96E, 0, 0, 0
+
+AbandonedShip_Corridors_1F_MapWarps:: @ 838E150
+ warp_def 9, 11, 3, 2, AbandonedShip_Deck
+ warp_def 8, 11, 3, 2, AbandonedShip_Deck
+ warp_def 0, 11, 3, 3, AbandonedShip_Deck
+ warp_def 1, 11, 3, 3, AbandonedShip_Deck
+ warp_def 11, 9, 3, 0, AbandonedShip_Rooms_1F
+ warp_def 14, 9, 3, 3, AbandonedShip_Rooms_1F
+ warp_def 11, 3, 3, 2, AbandonedShip_Rooms_1F
+ warp_def 14, 3, 3, 4, AbandonedShip_Rooms_1F
+ warp_def 3, 9, 3, 0, AbandonedShip_Rooms2_1F
+ warp_def 16, 2, 3, 7, AbandonedShip_Corridors_B1F
+ warp_def 5, 2, 3, 6, AbandonedShip_Corridors_B1F
+ warp_def 3, 3, 3, 2, AbandonedShip_Rooms2_1F
+
+AbandonedShip_Corridors_1F_MapEvents:: @ 838E1B0
+ map_events AbandonedShip_Corridors_1F_MapObjects, AbandonedShip_Corridors_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/AbandonedShip_Corridors_B1F.s b/data/maps/events/AbandonedShip_Corridors_B1F.s
new file mode 100644
index 000000000..42766d63d
--- /dev/null
+++ b/data/maps/events/AbandonedShip_Corridors_B1F.s
@@ -0,0 +1,20 @@
+AbandonedShip_Corridors_B1F_MapObjects:: @ 838E238
+ object_event 1, MAP_OBJ_GFX_TUBER_M, 0, 2, 0, 8, 0, 3, 2, 17, 0, 0, 0, 0, 0, AbandonedShip_Corridors_B1F_EventScript_15E9CA, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SAILOR, 0, 9, 0, 6, 0, 3, 14, 0, 0, 1, 0, 4, 0, AbandonedShip_Corridors_B1F_EventScript_15EA1E, 0, 0, 0
+
+AbandonedShip_Corridors_B1F_MapWarps:: @ 838E268
+ warp_def 6, 4, 3, 2, AbandonedShip_Rooms2_B1F
+ warp_def 3, 4, 3, 0, AbandonedShip_Rooms2_B1F
+ warp_def 5, 7, 3, 0, AbandonedShip_Rooms_B1F
+ warp_def 8, 7, 3, 1, AbandonedShip_Rooms_B1F
+ warp_def 11, 7, 3, 2, AbandonedShip_Rooms_B1F
+ warp_def 11, 4, 3, 0, AbandonedShip_Room_B1F
+ warp_def 0, 2, 3, 10, AbandonedShip_Corridors_1F
+ warp_def 8, 2, 3, 9, AbandonedShip_Corridors_1F
+
+AbandonedShip_Corridors_B1F_MapBGEvents:: @ 838E2A8
+ bg_event 11, 4, 3, 0, 0, AbandonedShip_Corridors_B1F_EventScript_15E9D3
+
+AbandonedShip_Corridors_B1F_MapEvents:: @ 838E2B4
+ map_events AbandonedShip_Corridors_B1F_MapObjects, AbandonedShip_Corridors_B1F_MapWarps, 0x0, AbandonedShip_Corridors_B1F_MapBGEvents
+
diff --git a/data/maps/events/AbandonedShip_Deck.s b/data/maps/events/AbandonedShip_Deck.s
new file mode 100644
index 000000000..5246e92ae
--- /dev/null
+++ b/data/maps/events/AbandonedShip_Deck.s
@@ -0,0 +1,10 @@
+AbandonedShip_Deck_MapWarps:: @ 838E0E4
+ warp_def 13, 15, 3, 0, Route108
+ warp_def 14, 15, 3, 0, Route108
+ warp_def 13, 9, 3, 1, AbandonedShip_Corridors_1F
+ warp_def 8, 9, 3, 2, AbandonedShip_Corridors_1F
+ warp_def 12, 5, 3, 0, AbandonedShip_CaptainsOffice
+
+AbandonedShip_Deck_MapEvents:: @ 838E10C
+ map_events 0x0, AbandonedShip_Deck_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/AbandonedShip_HiddenFloorCorridors.s b/data/maps/events/AbandonedShip_HiddenFloorCorridors.s
new file mode 100644
index 000000000..8f60ea32a
--- /dev/null
+++ b/data/maps/events/AbandonedShip_HiddenFloorCorridors.s
@@ -0,0 +1,17 @@
+AbandonedShip_HiddenFloorCorridors_MapWarps:: @ 838E4CC
+ warp_def 3, 8, 3, 0, AbandonedShip_HiddenFloorRooms
+ warp_def 6, 8, 3, 2, AbandonedShip_HiddenFloorRooms
+ warp_def 9, 8, 3, 4, AbandonedShip_HiddenFloorRooms
+ warp_def 3, 3, 3, 6, AbandonedShip_HiddenFloorRooms
+ warp_def 6, 3, 3, 7, AbandonedShip_HiddenFloorRooms
+ warp_def 9, 3, 3, 8, AbandonedShip_HiddenFloorRooms
+
+AbandonedShip_HiddenFloorCorridors_MapBGEvents:: @ 838E4FC
+ bg_event 3, 8, 3, 0, 0, AbandonedShip_HiddenFloorCorridors_EventScript_15EBF3
+ bg_event 6, 8, 3, 0, 0, AbandonedShip_HiddenFloorCorridors_EventScript_15EC2A
+ bg_event 3, 4, 0, 0, 0, AbandonedShip_HiddenFloorCorridors_EventScript_15EC61
+ bg_event 9, 4, 0, 0, 0, AbandonedShip_HiddenFloorCorridors_EventScript_15EC98
+
+AbandonedShip_HiddenFloorCorridors_MapEvents:: @ 838E52C
+ map_events 0x0, AbandonedShip_HiddenFloorCorridors_MapWarps, 0x0, AbandonedShip_HiddenFloorCorridors_MapBGEvents
+
diff --git a/data/maps/events/AbandonedShip_HiddenFloorRooms.s b/data/maps/events/AbandonedShip_HiddenFloorRooms.s
new file mode 100644
index 000000000..2a5bb2ecc
--- /dev/null
+++ b/data/maps/events/AbandonedShip_HiddenFloorRooms.s
@@ -0,0 +1,32 @@
+AbandonedShip_HiddenFloorRooms_MapObjects:: @ 838E540
+ object_event 1, MAP_OBJ_GFX_ITEM_BALL, 0, 41, 0, 4, 0, 3, 1, 0, 0, 0, 0, 0, 0, AbandonedShip_HiddenFloorRooms_EventScript_1B18CB, 1077, 0, 0
+ object_event 2, MAP_OBJ_GFX_ITEM_BALL, 0, 16, 0, 10, 0, 3, 1, 0, 0, 0, 0, 0, 0, AbandonedShip_HiddenFloorRooms_EventScript_1B18D8, 1078, 0, 0
+ object_event 3, MAP_OBJ_GFX_ITEM_BALL, 0, 5, 0, 11, 0, 3, 1, 17, 0, 0, 0, 0, 0, AbandonedShip_HiddenFloorRooms_EventScript_1B18F2, 1102, 0, 0
+ object_event 4, MAP_OBJ_GFX_ITEM_BALL, 0, 31, 0, 11, 0, 3, 1, 17, 0, 0, 0, 0, 0, AbandonedShip_HiddenFloorRooms_EventScript_1B18E5, 1101, 0, 0
+
+AbandonedShip_HiddenFloorRooms_MapWarps:: @ 838E5A0
+ warp_def 6, 14, 3, 0, AbandonedShip_HiddenFloorCorridors
+ warp_def 7, 14, 3, 0, AbandonedShip_HiddenFloorCorridors
+ warp_def 21, 14, 3, 1, AbandonedShip_HiddenFloorCorridors
+ warp_def 22, 14, 3, 1, AbandonedShip_HiddenFloorCorridors
+ warp_def 36, 14, 3, 2, AbandonedShip_HiddenFloorCorridors
+ warp_def 37, 14, 3, 2, AbandonedShip_HiddenFloorCorridors
+ warp_def 6, 1, 3, 3, AbandonedShip_HiddenFloorCorridors
+ warp_def 21, 1, 3, 4, AbandonedShip_HiddenFloorCorridors
+ warp_def 36, 1, 3, 5, AbandonedShip_HiddenFloorCorridors
+
+AbandonedShip_HiddenFloorRooms_MapBGEvents:: @ 838E5E8
+ bg_event 42, 10, 3, 7, 0, ITEM_ROOM_1_KEY, 31, 0
+ bg_event 20, 5, 3, 7, 0, ITEM_ROOM_2_KEY, 32, 0
+ bg_event 1, 12, 3, 7, 0, ITEM_ROOM_4_KEY, 33, 0
+ bg_event 1, 2, 0, 7, 0, ITEM_ROOM_6_KEY, 34, 0
+ bg_event 8, 5, 3, 0, 0, AbandonedShip_HiddenFloorRooms_EventScript_15EEAB
+ bg_event 11, 3, 3, 0, 0, AbandonedShip_HiddenFloorRooms_EventScript_15EEAB
+ bg_event 10, 10, 3, 0, 0, AbandonedShip_HiddenFloorRooms_EventScript_15EEAB
+ bg_event 16, 3, 3, 0, 0, AbandonedShip_HiddenFloorRooms_EventScript_15EEAB
+ bg_event 25, 2, 3, 0, 0, AbandonedShip_HiddenFloorRooms_EventScript_15EEAB
+ bg_event 24, 6, 3, 0, 0, AbandonedShip_HiddenFloorRooms_EventScript_15EEAB
+
+AbandonedShip_HiddenFloorRooms_MapEvents:: @ 838E660
+ map_events AbandonedShip_HiddenFloorRooms_MapObjects, AbandonedShip_HiddenFloorRooms_MapWarps, 0x0, AbandonedShip_HiddenFloorRooms_MapBGEvents
+
diff --git a/data/maps/events/AbandonedShip_Room_B1F.s b/data/maps/events/AbandonedShip_Room_B1F.s
new file mode 100644
index 000000000..27b93348a
--- /dev/null
+++ b/data/maps/events/AbandonedShip_Room_B1F.s
@@ -0,0 +1,10 @@
+AbandonedShip_Room_B1F_MapObjects:: @ 838E3AC
+ object_event 1, MAP_OBJ_GFX_ITEM_BALL, 0, 4, 0, 4, 0, 3, 1, 17, 0, 0, 0, 0, 0, AbandonedShip_Room_B1F_EventScript_1B18A4, 1098, 0, 0
+
+AbandonedShip_Room_B1F_MapWarps:: @ 838E3C4
+ warp_def 4, 7, 3, 5, AbandonedShip_Corridors_B1F
+ warp_def 5, 7, 3, 5, AbandonedShip_Corridors_B1F
+
+AbandonedShip_Room_B1F_MapEvents:: @ 838E3D4
+ map_events AbandonedShip_Room_B1F_MapObjects, AbandonedShip_Room_B1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/AbandonedShip_Rooms2_1F.s b/data/maps/events/AbandonedShip_Rooms2_1F.s
new file mode 100644
index 000000000..82f981e3c
--- /dev/null
+++ b/data/maps/events/AbandonedShip_Rooms2_1F.s
@@ -0,0 +1,13 @@
+AbandonedShip_Rooms2_1F_MapObjects:: @ 838E3E8
+ object_event 1, MAP_OBJ_GFX_MAN_5, 0, 7, 0, 13, 0, 3, 8, 0, 0, 1, 0, 0, 0, AbandonedShip_Rooms2_1F_EventScript_15EA68, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_5, 0, 6, 0, 13, 0, 3, 8, 0, 0, 1, 0, 0, 0, AbandonedShip_Rooms2_1F_EventScript_15EAAE, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_ITEM_BALL, 0, 4, 0, 4, 0, 3, 1, 17, 0, 0, 0, 0, 0, AbandonedShip_Rooms2_1F_EventScript_1B18B1, 1099, 0, 0
+
+AbandonedShip_Rooms2_1F_MapWarps:: @ 838E430
+ warp_def 4, 16, 3, 8, AbandonedShip_Corridors_1F
+ warp_def 5, 16, 3, 8, AbandonedShip_Corridors_1F
+ warp_def 4, 1, 3, 11, AbandonedShip_Corridors_1F
+
+AbandonedShip_Rooms2_1F_MapEvents:: @ 838E448
+ map_events AbandonedShip_Rooms2_1F_MapObjects, AbandonedShip_Rooms2_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/AbandonedShip_Rooms2_B1F.s b/data/maps/events/AbandonedShip_Rooms2_B1F.s
new file mode 100644
index 000000000..23a7751aa
--- /dev/null
+++ b/data/maps/events/AbandonedShip_Rooms2_B1F.s
@@ -0,0 +1,13 @@
+AbandonedShip_Rooms2_B1F_MapObjects:: @ 838E324
+ object_event 1, MAP_OBJ_GFX_CAMPER, 0, 3, 0, 4, 0, 3, 2, 17, 0, 0, 0, 0, 0, AbandonedShip_Rooms2_B1F_EventScript_15EA4E, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_ITEM_BALL, 0, 13, 0, 3, 0, 3, 1, 17, 0, 0, 0, 0, 0, AbandonedShip_Rooms2_B1F_EventScript_1B1897, 1097, 0, 0
+
+AbandonedShip_Rooms2_B1F_MapWarps:: @ 838E354
+ warp_def 4, 7, 3, 1, AbandonedShip_Corridors_B1F
+ warp_def 5, 7, 3, 1, AbandonedShip_Corridors_B1F
+ warp_def 13, 7, 3, 0, AbandonedShip_Corridors_B1F
+ warp_def 14, 7, 3, 0, AbandonedShip_Corridors_B1F
+
+AbandonedShip_Rooms2_B1F_MapEvents:: @ 838E374
+ map_events AbandonedShip_Rooms2_B1F_MapObjects, AbandonedShip_Rooms2_B1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/AbandonedShip_Rooms_1F.s b/data/maps/events/AbandonedShip_Rooms_1F.s
new file mode 100644
index 000000000..f1d37bafd
--- /dev/null
+++ b/data/maps/events/AbandonedShip_Rooms_1F.s
@@ -0,0 +1,15 @@
+AbandonedShip_Rooms_1F_MapObjects:: @ 838E1C4
+ object_event 1, MAP_OBJ_GFX_GENTLEMAN, 0, 11, 0, 6, 0, 3, 2, 17, 0, 0, 0, 0, 0, AbandonedShip_Rooms_1F_EventScript_15E986, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_ITEM_BALL, 0, 4, 0, 5, 0, 3, 1, 17, 0, 0, 0, 0, 0, AbandonedShip_Rooms_1F_EventScript_1B187D, 1095, 0, 0
+
+AbandonedShip_Rooms_1F_MapWarps:: @ 838E1F4
+ warp_def 4, 16, 3, 4, AbandonedShip_Corridors_1F
+ warp_def 5, 16, 3, 4, AbandonedShip_Corridors_1F
+ warp_def 4, 1, 3, 6, AbandonedShip_Corridors_1F
+ warp_def 13, 16, 3, 5, AbandonedShip_Corridors_1F
+ warp_def 13, 1, 3, 7, AbandonedShip_Corridors_1F
+ warp_def 14, 16, 3, 5, AbandonedShip_Corridors_1F
+
+AbandonedShip_Rooms_1F_MapEvents:: @ 838E224
+ map_events AbandonedShip_Rooms_1F_MapObjects, AbandonedShip_Rooms_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/AbandonedShip_Rooms_B1F.s b/data/maps/events/AbandonedShip_Rooms_B1F.s
new file mode 100644
index 000000000..8d7264820
--- /dev/null
+++ b/data/maps/events/AbandonedShip_Rooms_B1F.s
@@ -0,0 +1,12 @@
+AbandonedShip_Rooms_B1F_MapObjects:: @ 838E2C8
+ object_event 1, MAP_OBJ_GFX_FAT_MAN, 0, 25, 0, 6, 0, 3, 9, 0, 0, 0, 0, 0, 0, AbandonedShip_Rooms_B1F_EventScript_15EA44, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_ITEM_BALL, 0, 6, 0, 7, 0, 3, 1, 17, 0, 0, 0, 0, 0, AbandonedShip_Rooms_B1F_EventScript_1B188A, 1096, 0, 0
+
+AbandonedShip_Rooms_B1F_MapWarps:: @ 838E2F8
+ warp_def 4, 1, 3, 2, AbandonedShip_Corridors_B1F
+ warp_def 13, 1, 3, 3, AbandonedShip_Corridors_B1F
+ warp_def 22, 1, 3, 4, AbandonedShip_Corridors_B1F
+
+AbandonedShip_Rooms_B1F_MapEvents:: @ 838E310
+ map_events AbandonedShip_Rooms_B1F_MapObjects, AbandonedShip_Rooms_B1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/AbandonedShip_Underwater1.s b/data/maps/events/AbandonedShip_Underwater1.s
new file mode 100644
index 000000000..c6e7adf24
--- /dev/null
+++ b/data/maps/events/AbandonedShip_Underwater1.s
@@ -0,0 +1,7 @@
+AbandonedShip_Underwater1_MapWarps:: @ 838E388
+ warp_def 3, 7, 3, 0, AbandonedShip_Underwater2
+ warp_def 4, 7, 3, 0, AbandonedShip_Underwater2
+
+AbandonedShip_Underwater1_MapEvents:: @ 838E398
+ map_events 0x0, AbandonedShip_Underwater1_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/AbandonedShip_Underwater2.s b/data/maps/events/AbandonedShip_Underwater2.s
new file mode 100644
index 000000000..d6bb65101
--- /dev/null
+++ b/data/maps/events/AbandonedShip_Underwater2.s
@@ -0,0 +1,6 @@
+AbandonedShip_Underwater2_MapWarps:: @ 838E4B0
+ warp_def 3, 1, 3, 0, AbandonedShip_Underwater1
+
+AbandonedShip_Underwater2_MapEvents:: @ 838E4B8
+ map_events 0x0, AbandonedShip_Underwater2_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/AncientTomb.s b/data/maps/events/AncientTomb.s
new file mode 100644
index 000000000..d3a5b2051
--- /dev/null
+++ b/data/maps/events/AncientTomb.s
@@ -0,0 +1,16 @@
+AncientTomb_MapObjects:: @ 838E6DC
+ object_event 1, MAP_OBJ_GFX_REGISTEEL, 0, 8, 0, 7, 0, 3, 8, 0, 0, 0, 0, 0, 0, AncientTomb_EventScript_15F050, 937, 0, 0
+
+AncientTomb_MapWarps:: @ 838E6F4
+ warp_def 8, 29, 3, 0, Route120
+ warp_def 8, 20, 0, 2, AncientTomb
+ warp_def 8, 11, 3, 1, AncientTomb
+
+AncientTomb_MapBGEvents:: @ 838E70C
+ bg_event 8, 20, 0, 0, 0, AncientTomb_EventScript_15F021
+ bg_event 7, 20, 0, 0, 0, AncientTomb_EventScript_15F042
+ bg_event 9, 20, 0, 0, 0, AncientTomb_EventScript_15F042
+
+AncientTomb_MapEvents:: @ 838E730
+ map_events AncientTomb_MapObjects, AncientTomb_MapWarps, 0x0, AncientTomb_MapBGEvents
+
diff --git a/data/maps/events/AquaHideout_1F.s b/data/maps/events/AquaHideout_1F.s
new file mode 100644
index 000000000..c23236788
--- /dev/null
+++ b/data/maps/events/AquaHideout_1F.s
@@ -0,0 +1,13 @@
+AquaHideout_1F_MapObjects:: @ 838CD0C
+ object_event 1, 241, 0, 13, 0, 11, 0, 3, 8, 0, 0, 0, 0, 0, 0, AquaHideout_1F_EventScript_15D7CE, 821, 0, 0
+ object_event 2, 241, 0, 14, 0, 11, 0, 3, 8, 0, 0, 0, 0, 0, 0, AquaHideout_1F_EventScript_15D7ED, 822, 0, 0
+ object_event 3, 241, 0, 20, 0, 4, 0, 3, 50, 93, 0, 1, 0, 3, 0, AquaHideout_1F_EventScript_15D80C, 924, 0, 0
+
+AquaHideout_1F_MapWarps:: @ 838CD54
+ warp_def 13, 27, 1, 6, LilycoveCity
+ warp_def 14, 27, 1, 6, LilycoveCity
+ warp_def 22, 1, 3, 0, AquaHideout_B1F
+
+AquaHideout_1F_MapEvents:: @ 838CD6C
+ map_events AquaHideout_1F_MapObjects, AquaHideout_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/AquaHideout_B1F.s b/data/maps/events/AquaHideout_B1F.s
new file mode 100644
index 000000000..7f1235a81
--- /dev/null
+++ b/data/maps/events/AquaHideout_B1F.s
@@ -0,0 +1,40 @@
+AquaHideout_B1F_MapObjects:: @ 838CD80
+ object_event 1, 241, 0, 27, 0, 18, 0, 3, 24, 0, 0, 1, 0, 3, 0, AquaHideout_B1F_EventScript_15D850, 924, 0, 0
+ object_event 2, 241, 0, 6, 0, 6, 0, 3, 9, 0, 0, 1, 0, 5, 0, AquaHideout_B1F_EventScript_15D875, 924, 0, 0
+ object_event 3, MAP_OBJ_GFX_ITEM_BALL, 0, 29, 0, 12, 0, 3, 1, 0, 0, 0, 0, 0, 0, AquaHideout_B1F_EventScript_1B19A8, 1071, 0, 0
+ object_event 4, 242, 0, 20, 0, 18, 0, 3, 27, 4, 0, 1, 0, 4, 0, AquaHideout_B1F_EventScript_15D89A, 924, 0, 0
+ object_event 5, MAP_OBJ_GFX_ITEM_BALL, 0, 15, 0, 9, 0, 3, 1, 17, 0, 0, 0, 0, 0, AquaHideout_B1F_EventScript_1B198E, 1124, 0, 0
+ object_event 6, MAP_OBJ_GFX_ITEM_BALL, 0, 16, 0, 9, 0, 3, 1, 17, 0, 0, 0, 0, 0, AquaHideout_B1F_EventScript_1A04FD, 977, 0, 0
+ object_event 7, MAP_OBJ_GFX_ITEM_BALL, 0, 15, 0, 10, 0, 3, 1, 17, 0, 0, 0, 0, 0, AquaHideout_B1F_EventScript_1B199B, 1132, 0, 0
+ object_event 8, MAP_OBJ_GFX_ITEM_BALL, 0, 16, 0, 10, 0, 3, 1, 17, 0, 0, 0, 0, 0, AquaHideout_B1F_EventScript_1A051B, 978, 0, 0
+
+AquaHideout_B1F_MapWarps:: @ 838CE40
+ warp_def 29, 1, 3, 2, AquaHideout_1F
+ warp_def 18, 1, 3, 0, AquaHideout_B2F
+ warp_def 12, 1, 3, 1, AquaHideout_B2F
+ warp_def 3, 3, 3, 2, AquaHideout_B2F
+ warp_def 31, 4, 3, 7, AquaHideout_B1F
+ warp_def 27, 4, 3, 8, AquaHideout_B1F
+ warp_def 20, 4, 3, 10, AquaHideout_B1F
+ warp_def 27, 12, 3, 4, AquaHideout_B1F
+ warp_def 3, 15, 3, 5, AquaHideout_B1F
+ warp_def 3, 20, 3, 12, AquaHideout_B1F
+ warp_def 32, 19, 3, 6, AquaHideout_B1F
+ warp_def 23, 10, 3, 22, AquaHideout_B1F
+ warp_def 45, 3, 3, 9, AquaHideout_B1F
+ warp_def 42, 5, 3, 18, AquaHideout_B1F
+ warp_def 45, 5, 3, 12, AquaHideout_B1F
+ warp_def 48, 5, 3, 16, AquaHideout_B1F
+ warp_def 42, 9, 3, 15, AquaHideout_B1F
+ warp_def 45, 9, 3, 20, AquaHideout_B1F
+ warp_def 48, 9, 3, 13, AquaHideout_B1F
+ warp_def 42, 13, 3, 24, AquaHideout_B1F
+ warp_def 45, 13, 3, 17, AquaHideout_B1F
+ warp_def 48, 13, 3, 12, AquaHideout_B1F
+ warp_def 42, 17, 3, 11, AquaHideout_B1F
+ warp_def 45, 17, 3, 17, AquaHideout_B1F
+ warp_def 48, 17, 3, 19, AquaHideout_B1F
+
+AquaHideout_B1F_MapEvents:: @ 838CF08
+ map_events AquaHideout_B1F_MapObjects, AquaHideout_B1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/AquaHideout_B2F.s b/data/maps/events/AquaHideout_B2F.s
new file mode 100644
index 000000000..112e431fe
--- /dev/null
+++ b/data/maps/events/AquaHideout_B2F.s
@@ -0,0 +1,26 @@
+AquaHideout_B2F_MapObjects:: @ 838CF1C
+ object_event 1, 241, 0, 23, 0, 19, 0, 3, 9, 0, 0, 0, 0, 0, 0, AquaHideout_B2F_EventScript_15D8E1, 924, 0, 0
+ object_event 2, 241, 0, 23, 0, 10, 0, 3, 45, 52, 0, 1, 0, 3, 0, AquaHideout_B2F_EventScript_15D962, 924, 0, 0
+ object_event 3, MAP_OBJ_GFX_ITEM_BALL, 0, 3, 0, 13, 0, 3, 1, 0, 0, 0, 0, 0, 0, AquaHideout_B2F_EventScript_1B19B5, 1072, 0, 0
+ object_event 4, MAP_OBJ_GFX_SUBMARINE_SHADOW, 0, 19, 0, 20, 0, 1, 9, 0, 0, 0, 0, 0, 0, 0x0, 943, 0, 0
+ object_event 5, 242, 0, 10, 0, 6, 0, 3, 7, 17, 0, 1, 0, 4, 0, AquaHideout_B2F_EventScript_15D987, 924, 0, 0
+
+AquaHideout_B2F_MapWarps:: @ 838CF94
+ warp_def 18, 1, 3, 1, AquaHideout_B1F
+ warp_def 12, 1, 3, 2, AquaHideout_B1F
+ warp_def 3, 3, 3, 3, AquaHideout_B1F
+ warp_def 31, 8, 3, 5, AquaHideout_B2F
+ warp_def 8, 8, 3, 8, AquaHideout_B2F
+ warp_def 5, 8, 3, 3, AquaHideout_B2F
+ warp_def 18, 13, 3, 7, AquaHideout_B2F
+ warp_def 12, 13, 3, 6, AquaHideout_B2F
+ warp_def 31, 17, 3, 4, AquaHideout_B2F
+ warp_def 32, 20, 3, 4, AquaHideout_B1F
+
+AquaHideout_B2F_MapCoordEvents:: @ 838CFE4
+ coord_event 28, 17, 3, 0, 0x4001, 0, 0, AquaHideout_B2F_EventScript_15D8BD
+ coord_event 28, 16, 3, 0, 0x4001, 0, 0, AquaHideout_B2F_EventScript_15D8BD
+
+AquaHideout_B2F_MapEvents:: @ 838D004
+ map_events AquaHideout_B2F_MapObjects, AquaHideout_B2F_MapWarps, AquaHideout_B2F_MapCoordEvents, 0x0
+
diff --git a/data/maps/events/BattleTower_BattleRoom.s b/data/maps/events/BattleTower_BattleRoom.s
new file mode 100644
index 000000000..161bf8a2f
--- /dev/null
+++ b/data/maps/events/BattleTower_BattleRoom.s
@@ -0,0 +1,11 @@
+BattleTower_BattleRoom_MapObjects:: @ 8391DAC
+ object_event 1, 240, 0, 5, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 888, 0, 0
+ object_event 2, MAP_OBJ_GFX_TEALA, 0, 1, 0, 7, 0, 3, 10, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+
+BattleTower_BattleRoom_MapWarps:: @ 8391DDC
+ warp_def 5, 8, 0, 2, BattleTower_Lobby
+ warp_def 6, 8, 0, 2, BattleTower_Lobby
+
+BattleTower_BattleRoom_MapEvents:: @ 8391DEC
+ map_events BattleTower_BattleRoom_MapObjects, BattleTower_BattleRoom_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/BattleTower_Corridor.s b/data/maps/events/BattleTower_Corridor.s
new file mode 100644
index 000000000..07f7b23f5
--- /dev/null
+++ b/data/maps/events/BattleTower_Corridor.s
@@ -0,0 +1,6 @@
+BattleTower_Corridor_MapObjects:: @ 8391D80
+ object_event 1, MAP_OBJ_GFX_TEALA, 0, 9, 0, 2, 0, 3, 9, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+
+BattleTower_Corridor_MapEvents:: @ 8391D98
+ map_events BattleTower_Corridor_MapObjects, 0x0, 0x0, 0x0
+
diff --git a/data/maps/events/BattleTower_Elevator.s b/data/maps/events/BattleTower_Elevator.s
new file mode 100644
index 000000000..37e14df01
--- /dev/null
+++ b/data/maps/events/BattleTower_Elevator.s
@@ -0,0 +1,6 @@
+BattleTower_Elevator_MapObjects:: @ 8391D54
+ object_event 1, MAP_OBJ_GFX_TEALA, 0, 1, 0, 5, 0, 3, 7, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+
+BattleTower_Elevator_MapEvents:: @ 8391D6C
+ map_events BattleTower_Elevator_MapObjects, 0x0, 0x0, 0x0
+
diff --git a/data/maps/events/BattleTower_Lobby.s b/data/maps/events/BattleTower_Lobby.s
new file mode 100644
index 000000000..a61e6eaa7
--- /dev/null
+++ b/data/maps/events/BattleTower_Lobby.s
@@ -0,0 +1,19 @@
+BattleTower_Lobby_MapObjects:: @ 8391C8C
+ object_event 1, MAP_OBJ_GFX_TEALA, 0, 6, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, BattleTower_Lobby_EventScript_16049E, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_5, 0, 12, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, BattleTower_Lobby_EventScript_1606A5, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_WOMAN_7, 0, 10, 0, 8, 0, 3, 2, 17, 0, 0, 0, 0, 0, BattleTower_Lobby_EventScript_160715, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_BOY_1, 0, 1, 0, 2, 0, 3, 2, 17, 0, 0, 0, 0, 0, BattleTower_Lobby_EventScript_16071E, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_REPORTER_F, 0, 4, 0, 7, 0, 3, 1, 0, 0, 0, 0, 0, 0, BattleTower_Lobby_EventScript_1AE1FF, 918, 0, 0
+ object_event 6, MAP_OBJ_GFX_MAN_2, 0, 7, 0, 6, 0, 3, 9, 0, 0, 0, 0, 0, 0, BattleTower_Lobby_EventScript_160733, 941, 0, 0
+
+BattleTower_Lobby_MapWarps:: @ 8391D1C
+ warp_def 6, 8, 0, 0, BattleTower_Outside
+ warp_def 7, 8, 0, 0, BattleTower_Outside
+ warp_def 6, 1, 0, 0, BattleTower_BattleRoom
+
+BattleTower_Lobby_MapBGEvents:: @ 8391D34
+ bg_event 3, 5, 3, 1, 0, BattleTower_Lobby_EventScript_160727
+
+BattleTower_Lobby_MapEvents:: @ 8391D40
+ map_events BattleTower_Lobby_MapObjects, BattleTower_Lobby_MapWarps, 0x0, BattleTower_Lobby_MapBGEvents
+
diff --git a/data/maps/events/BattleTower_Outside.s b/data/maps/events/BattleTower_Outside.s
new file mode 100644
index 000000000..5ffb86b0a
--- /dev/null
+++ b/data/maps/events/BattleTower_Outside.s
@@ -0,0 +1,16 @@
+BattleTower_Outside_MapObjects:: @ 8391BEC
+ object_event 1, MAP_OBJ_GFX_BUG_CATCHER, 0, 18, 0, 11, 0, 3, 2, 17, 0, 0, 0, 0, 0, BattleTower_Outside_EventScript_160263, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_5, 0, 11, 0, 14, 0, 3, 2, 17, 0, 0, 0, 0, 0, BattleTower_Outside_EventScript_16026C, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_BOY_2, 0, 10, 0, 11, 0, 3, 2, 17, 0, 0, 0, 0, 0, BattleTower_Outside_EventScript_160275, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_SS_TIDAL, 0, 19, 0, 26, 0, 1, 10, 17, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_BEAUTY, 0, 19, 0, 24, 0, 3, 7, 17, 0, 0, 0, 0, 0, BattleTower_Outside_EventScript_160168, 0, 0, 0
+
+BattleTower_Outside_MapWarps:: @ 8391C64
+ warp_def 14, 8, 0, 0, BattleTower_Lobby
+
+BattleTower_Outside_MapBGEvents:: @ 8391C6C
+ bg_event 16, 13, 0, 0, 0, BattleTower_Outside_EventScript_16025A
+
+BattleTower_Outside_MapEvents:: @ 8391C78
+ map_events BattleTower_Outside_MapObjects, BattleTower_Outside_MapWarps, 0x0, BattleTower_Outside_MapBGEvents
+
diff --git a/data/maps/events/CaveOfOrigin_1F.s b/data/maps/events/CaveOfOrigin_1F.s
new file mode 100644
index 000000000..8e97e7761
--- /dev/null
+++ b/data/maps/events/CaveOfOrigin_1F.s
@@ -0,0 +1,12 @@
+CaveOfOrigin_1F_MapWarps:: @ 838D718
+ warp_def 11, 17, 3, 1, CaveOfOrigin_Entrance
+ warp_def 14, 5, 3, 0, CaveOfOrigin_B1F
+
+CaveOfOrigin_1F_MapCoordEvents:: @ 838D728
+ coord_event 7, 11, 3, 0, 0x4001, 0, 0, CaveOfOrigin_1F_EventScript_1A04AF
+ coord_event 6, 11, 3, 0, 0x4001, 0, 0, CaveOfOrigin_1F_EventScript_1A04AF
+ coord_event 5, 11, 3, 0, 0x4001, 0, 0, CaveOfOrigin_1F_EventScript_1A04AF
+
+CaveOfOrigin_1F_MapEvents:: @ 838D758
+ map_events 0x0, CaveOfOrigin_1F_MapWarps, CaveOfOrigin_1F_MapCoordEvents, 0x0
+
diff --git a/data/maps/events/CaveOfOrigin_B1F.s b/data/maps/events/CaveOfOrigin_B1F.s
new file mode 100644
index 000000000..733582664
--- /dev/null
+++ b/data/maps/events/CaveOfOrigin_B1F.s
@@ -0,0 +1,12 @@
+CaveOfOrigin_B1F_MapWarps:: @ 838D76C
+ warp_def 13, 5, 3, 1, CaveOfOrigin_1F
+ warp_def 5, 11, 3, 0, CaveOfOrigin_B2F
+
+CaveOfOrigin_B1F_MapCoordEvents:: @ 838D77C
+ coord_event 12, 15, 3, 0, 0x4001, 0, 0, CaveOfOrigin_B1F_EventScript_1A04AF
+ coord_event 12, 16, 3, 0, 0x4001, 0, 0, CaveOfOrigin_B1F_EventScript_1A04AF
+ coord_event 12, 17, 3, 0, 0x4001, 0, 0, CaveOfOrigin_B1F_EventScript_1A04AF
+
+CaveOfOrigin_B1F_MapEvents:: @ 838D7AC
+ map_events 0x0, CaveOfOrigin_B1F_MapWarps, CaveOfOrigin_B1F_MapCoordEvents, 0x0
+
diff --git a/data/maps/events/CaveOfOrigin_B2F.s b/data/maps/events/CaveOfOrigin_B2F.s
new file mode 100644
index 000000000..90f1d2681
--- /dev/null
+++ b/data/maps/events/CaveOfOrigin_B2F.s
@@ -0,0 +1,12 @@
+CaveOfOrigin_B2F_MapWarps:: @ 838D7C0
+ warp_def 5, 10, 3, 1, CaveOfOrigin_B1F
+ warp_def 8, 14, 3, 0, CaveOfOrigin_B3F
+
+CaveOfOrigin_B2F_MapCoordEvents:: @ 838D7D0
+ coord_event 10, 6, 3, 0, 0x4001, 0, 0, CaveOfOrigin_B2F_EventScript_1A04AF
+ coord_event 10, 5, 3, 0, 0x4001, 0, 0, CaveOfOrigin_B2F_EventScript_1A04AF
+ coord_event 14, 13, 3, 0, 0x4002, 0, 0, CaveOfOrigin_B2F_EventScript_1A04BB
+
+CaveOfOrigin_B2F_MapEvents:: @ 838D800
+ map_events 0x0, CaveOfOrigin_B2F_MapWarps, CaveOfOrigin_B2F_MapCoordEvents, 0x0
+
diff --git a/data/maps/events/CaveOfOrigin_B3F.s b/data/maps/events/CaveOfOrigin_B3F.s
new file mode 100644
index 000000000..774164c52
--- /dev/null
+++ b/data/maps/events/CaveOfOrigin_B3F.s
@@ -0,0 +1,15 @@
+CaveOfOrigin_B3F_MapObjects:: @ 838D814
+ object_event 1, MAP_OBJ_GFX_ITEM_BALL, 0, 6, 0, 5, 0, 3, 1, 0, 0, 0, 0, 0, 0, CaveOfOrigin_B3F_EventScript_1B1A44, 1059, 0, 0
+
+CaveOfOrigin_B3F_MapWarps:: @ 838D82C
+ warp_def 7, 14, 3, 1, CaveOfOrigin_B2F
+ warp_def 12, 6, 3, 0, CaveOfOrigin_B4F
+
+CaveOfOrigin_B3F_MapCoordEvents:: @ 838D83C
+ coord_event 5, 11, 3, 0, 0x4001, 0, 0, CaveOfOrigin_B3F_EventScript_1A04AF
+ coord_event 8, 6, 3, 0, 0x4002, 0, 0, CaveOfOrigin_B3F_EventScript_1A04BB
+ coord_event 8, 5, 3, 0, 0x4002, 0, 0, CaveOfOrigin_B3F_EventScript_1A04BB
+
+CaveOfOrigin_B3F_MapEvents:: @ 838D86C
+ map_events CaveOfOrigin_B3F_MapObjects, CaveOfOrigin_B3F_MapWarps, CaveOfOrigin_B3F_MapCoordEvents, 0x0
+
diff --git a/data/maps/events/CaveOfOrigin_B4F.s b/data/maps/events/CaveOfOrigin_B4F.s
new file mode 100644
index 000000000..353ef25b9
--- /dev/null
+++ b/data/maps/events/CaveOfOrigin_B4F.s
@@ -0,0 +1,14 @@
+CaveOfOrigin_B4F_MapObjects:: @ 838D880
+ object_event 1, 248, 0, 9, 0, 10, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 825, 0, 0
+
+CaveOfOrigin_B4F_MapWarps:: @ 838D898
+ warp_def 12, 5, 3, 1, CaveOfOrigin_B3F
+
+CaveOfOrigin_B4F_MapCoordEvents:: @ 838D8A0
+ coord_event 9, 13, 3, 0, 0x409b, 0, 0, CaveOfOrigin_B4F_EventScript_15DDD7
+ coord_event 13, 9, 3, 0, 0x4005, 0, 0, CaveOfOrigin_B4F_EventScript_1A04A0
+ coord_event 5, 9, 3, 0, 0x4005, 0, 0, CaveOfOrigin_B4F_EventScript_1A04A0
+
+CaveOfOrigin_B4F_MapEvents:: @ 838D8D0
+ map_events CaveOfOrigin_B4F_MapObjects, CaveOfOrigin_B4F_MapWarps, CaveOfOrigin_B4F_MapCoordEvents, 0x0
+
diff --git a/data/maps/events/CaveOfOrigin_Entrance.s b/data/maps/events/CaveOfOrigin_Entrance.s
new file mode 100644
index 000000000..8adbba9d4
--- /dev/null
+++ b/data/maps/events/CaveOfOrigin_Entrance.s
@@ -0,0 +1,7 @@
+CaveOfOrigin_Entrance_MapWarps:: @ 838D6F4
+ warp_def 9, 20, 3, 3, SootopolisCity
+ warp_def 9, 5, 3, 0, CaveOfOrigin_1F
+
+CaveOfOrigin_Entrance_MapEvents:: @ 838D704
+ map_events 0x0, CaveOfOrigin_Entrance_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/DesertRuins.s b/data/maps/events/DesertRuins.s
new file mode 100644
index 000000000..2e0508adb
--- /dev/null
+++ b/data/maps/events/DesertRuins.s
@@ -0,0 +1,16 @@
+DesertRuins_MapObjects:: @ 838BEBC
+ object_event 1, MAP_OBJ_GFX_REGIROCK, 0, 8, 0, 7, 0, 3, 8, 0, 0, 0, 0, 0, 0, DesertRuins_EventScript_15CB85, 935, 0, 0
+
+DesertRuins_MapWarps:: @ 838BED4
+ warp_def 8, 29, 3, 1, Route111
+ warp_def 8, 20, 0, 2, DesertRuins
+ warp_def 8, 11, 3, 1, DesertRuins
+
+DesertRuins_MapBGEvents:: @ 838BEEC
+ bg_event 8, 20, 0, 0, 0, DesertRuins_EventScript_15CB56
+ bg_event 7, 20, 0, 0, 0, DesertRuins_EventScript_15CB77
+ bg_event 9, 20, 0, 0, 0, DesertRuins_EventScript_15CB77
+
+DesertRuins_MapEvents:: @ 838BF10
+ map_events DesertRuins_MapObjects, DesertRuins_MapWarps, 0x0, DesertRuins_MapBGEvents
+
diff --git a/data/maps/events/DewfordTown.s b/data/maps/events/DewfordTown.s
new file mode 100644
index 000000000..77b2a72e9
--- /dev/null
+++ b/data/maps/events/DewfordTown.s
@@ -0,0 +1,24 @@
+DewfordTown_MapObjects:: @ 8380B88
+ object_event 1, MAP_OBJ_GFX_WOMAN_3, 0, 7, 0, 12, 0, 3, 5, 1, 0, 0, 0, 0, 0, DewfordTown_EventScript_14E0A2, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_OLD_MAN_1, 0, 12, 0, 9, 0, 3, 9, 16, 0, 0, 0, 3, 0, DewfordTown_EventScript_14E002, 740, 0, 0
+ object_event 3, MAP_OBJ_GFX_FISHERMAN, 0, 12, 0, 14, 0, 3, 5, 1, 0, 0, 0, 0, 0, DewfordTown_EventScript_14E0C6, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_MR_BRINEYS_BOAT, 0, 12, 0, 8, 0, 1, 8, 0, 0, 0, 0, 0, 0, 0x0, 743, 0, 0
+ object_event 5, MAP_OBJ_GFX_BOY_1, 0, 1, 0, 6, 0, 3, 1, 0, 0, 0, 0, 0, 0, DewfordTown_EventScript_14E413, 0, 0, 0
+
+DewfordTown_MapWarps:: @ 8380C00
+ warp_def 3, 3, 0, 0, DewfordTown_Hall
+ warp_def 2, 10, 0, 0, DewfordTown_PokemonCenter_1F
+ warp_def 8, 17, 0, 0, DewfordTown_Gym
+ warp_def 17, 14, 0, 0, DewfordTown_House1
+ warp_def 8, 8, 0, 0, DewfordTown_House2
+
+DewfordTown_MapBGEvents:: @ 8380C28
+ bg_event 10, 10, 0, 0, 0, DewfordTown_EventScript_14E0AB
+ bg_event 11, 16, 0, 0, 0, DewfordTown_EventScript_14E0B4
+ bg_event 4, 10, 0, 1, 0, DewfordTown_EventScript_1A00EA
+ bg_event 3, 10, 0, 1, 0, DewfordTown_EventScript_1A00EA
+ bg_event 2, 4, 0, 0, 0, DewfordTown_EventScript_14E0BD
+
+DewfordTown_MapEvents:: @ 8380C64
+ map_events DewfordTown_MapObjects, DewfordTown_MapWarps, 0x0, DewfordTown_MapBGEvents
+
diff --git a/data/maps/events/DewfordTown_Gym.s b/data/maps/events/DewfordTown_Gym.s
new file mode 100644
index 000000000..0eb8606bb
--- /dev/null
+++ b/data/maps/events/DewfordTown_Gym.s
@@ -0,0 +1,20 @@
+DewfordTown_Gym_MapObjects:: @ 8385FBC
+ object_event 1, MAP_OBJ_GFX_BRAWLY, 0, 14, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, DewfordTown_Gym_EventScript_153152, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_BLACK_BELT, 0, 2, 0, 17, 0, 3, 7, 0, 0, 1, 0, 3, 0, DewfordTown_Gym_EventScript_1531D9, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_GIRL_3, 0, 1, 0, 10, 0, 3, 7, 0, 0, 1, 0, 3, 0, DewfordTown_Gym_EventScript_1531FB, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_GIRL_3, 0, 12, 0, 24, 0, 3, 7, 0, 0, 1, 0, 2, 0, DewfordTown_Gym_EventScript_15321D, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_MAN_2, 0, 5, 0, 24, 0, 3, 8, 0, 0, 0, 0, 0, 0, DewfordTown_Gym_EventScript_15323F, 0, 0, 0
+
+DewfordTown_Gym_MapWarps:: @ 8386034
+ warp_def 5, 27, 0, 2, DewfordTown
+ warp_def 6, 27, 0, 2, DewfordTown
+
+DewfordTown_Gym_MapBGEvents:: @ 8386044
+ bg_event 7, 21, 0, 1, 0, DewfordTown_Gym_EventScript_15325E
+ bg_event 10, 21, 0, 1, 0, DewfordTown_Gym_EventScript_15326E
+ bg_event 4, 24, 0, 1, 0, DewfordTown_Gym_EventScript_15325E
+ bg_event 7, 24, 0, 1, 0, DewfordTown_Gym_EventScript_15326E
+
+DewfordTown_Gym_MapEvents:: @ 8386074
+ map_events DewfordTown_Gym_MapObjects, DewfordTown_Gym_MapWarps, 0x0, DewfordTown_Gym_MapBGEvents
+
diff --git a/data/maps/events/DewfordTown_Hall.s b/data/maps/events/DewfordTown_Hall.s
new file mode 100644
index 000000000..1aa3b84fb
--- /dev/null
+++ b/data/maps/events/DewfordTown_Hall.s
@@ -0,0 +1,22 @@
+DewfordTown_Hall_MapObjects:: @ 8386088
+ object_event 1, MAP_OBJ_GFX_GIRL_2, 0, 4, 0, 6, 0, 0, 7, 0, 0, 0, 0, 0, 0, DewfordTown_Hall_EventScript_153293, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_3, 0, 1, 0, 5, 0, 0, 10, 0, 0, 0, 0, 0, 0, DewfordTown_Hall_EventScript_1532BC, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MAN_1, 0, 5, 0, 4, 0, 0, 9, 0, 0, 0, 0, 0, 0, DewfordTown_Hall_EventScript_1532CD, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_OLD_MAN_1, 0, 9, 0, 3, 0, 0, 7, 0, 0, 0, 0, 0, 0, DewfordTown_Hall_EventScript_15330A, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_LITTLE_GIRL_1, 0, 5, 0, 2, 0, 3, 7, 0, 0, 0, 0, 0, 0, DewfordTown_Hall_EventScript_153326, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_LITTLE_BOY_2, 0, 14, 0, 7, 0, 0, 5, 1, 0, 0, 0, 0, 0, DewfordTown_Hall_EventScript_153342, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_SCHOOL_KID_M, 0, 12, 0, 3, 0, 3, 10, 0, 0, 0, 0, 0, 0, DewfordTown_Hall_EventScript_1533F2, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_PSYCHIC_M, 0, 15, 0, 3, 0, 3, 9, 0, 0, 0, 0, 0, 0, DewfordTown_Hall_EventScript_1533FE, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_MANIAC, 0, 8, 0, 6, 0, 3, 5, 1, 0, 0, 0, 0, 0, DewfordTown_Hall_EventScript_15359D, 940, 0, 0
+
+DewfordTown_Hall_MapWarps:: @ 8386160
+ warp_def 5, 8, 0, 0, DewfordTown
+ warp_def 6, 8, 0, 0, DewfordTown
+
+DewfordTown_Hall_MapBGEvents:: @ 8386170
+ bg_event 0, 1, 3, 0, 0, DewfordTown_Hall_EventScript_153353
+ bg_event 7, 1, 3, 0, 0, DewfordTown_Hall_EventScript_153363
+
+DewfordTown_Hall_MapEvents:: @ 8386188
+ map_events DewfordTown_Hall_MapObjects, DewfordTown_Hall_MapWarps, 0x0, DewfordTown_Hall_MapBGEvents
+
diff --git a/data/maps/events/DewfordTown_House1.s b/data/maps/events/DewfordTown_House1.s
new file mode 100644
index 000000000..2faf40276
--- /dev/null
+++ b/data/maps/events/DewfordTown_House1.s
@@ -0,0 +1,12 @@
+DewfordTown_House1_MapObjects:: @ 8385E58
+ object_event 1, MAP_OBJ_GFX_WOMAN_4, 0, 6, 0, 3, 0, 3, 9, 0, 0, 0, 0, 0, 0, DewfordTown_House1_EventScript_152FF8, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_1, 0, 3, 0, 3, 0, 3, 10, 0, 0, 0, 0, 0, 0, DewfordTown_House1_EventScript_152FEF, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_ZIGZAGOON, 0, 4, 0, 2, 0, 3, 8, 19, 0, 0, 0, 0, 0, DewfordTown_House1_EventScript_153001, 0, 0, 0
+
+DewfordTown_House1_MapWarps:: @ 8385EA0
+ warp_def 3, 7, 0, 3, DewfordTown
+ warp_def 4, 7, 0, 3, DewfordTown
+
+DewfordTown_House1_MapEvents:: @ 8385EB0
+ map_events DewfordTown_House1_MapObjects, DewfordTown_House1_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/DewfordTown_House2.s b/data/maps/events/DewfordTown_House2.s
new file mode 100644
index 000000000..ab8d6eab9
--- /dev/null
+++ b/data/maps/events/DewfordTown_House2.s
@@ -0,0 +1,11 @@
+DewfordTown_House2_MapObjects:: @ 838619C
+ object_event 1, MAP_OBJ_GFX_MAN_4, 0, 6, 0, 5, 0, 3, 10, 0, 0, 0, 0, 0, 0, DewfordTown_House2_EventScript_1535DC, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_BOY_2, 0, 2, 0, 3, 0, 3, 1, 0, 0, 0, 0, 0, 0, DewfordTown_House2_EventScript_15361F, 0, 0, 0
+
+DewfordTown_House2_MapWarps:: @ 83861CC
+ warp_def 3, 8, 0, 4, DewfordTown
+ warp_def 4, 8, 0, 4, DewfordTown
+
+DewfordTown_House2_MapEvents:: @ 83861DC
+ map_events DewfordTown_House2_MapObjects, DewfordTown_House2_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/DewfordTown_PokemonCenter_1F.s b/data/maps/events/DewfordTown_PokemonCenter_1F.s
new file mode 100644
index 000000000..8ff89ab68
--- /dev/null
+++ b/data/maps/events/DewfordTown_PokemonCenter_1F.s
@@ -0,0 +1,13 @@
+DewfordTown_PokemonCenter_1F_MapObjects:: @ 8385EC4
+ object_event 1, MAP_OBJ_GFX_NURSE, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, DewfordTown_PokemonCenter_1F_EventScript_153023, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_2, 0, 10, 0, 6, 0, 3, 10, 0, 0, 0, 0, 0, 0, DewfordTown_PokemonCenter_1F_EventScript_153031, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MAN_4, 0, 5, 0, 5, 0, 0, 5, 18, 0, 0, 0, 0, 0, DewfordTown_PokemonCenter_1F_EventScript_15303A, 0, 0, 0
+
+DewfordTown_PokemonCenter_1F_MapWarps:: @ 8385F0C
+ warp_def 7, 8, 3, 1, DewfordTown
+ warp_def 6, 8, 3, 1, DewfordTown
+ warp_def 1, 6, 4, 0, DewfordTown_PokemonCenter_2F
+
+DewfordTown_PokemonCenter_1F_MapEvents:: @ 8385F24
+ map_events DewfordTown_PokemonCenter_1F_MapObjects, DewfordTown_PokemonCenter_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/DewfordTown_PokemonCenter_2F.s b/data/maps/events/DewfordTown_PokemonCenter_2F.s
new file mode 100644
index 000000000..81dcd1573
--- /dev/null
+++ b/data/maps/events/DewfordTown_PokemonCenter_2F.s
@@ -0,0 +1,15 @@
+DewfordTown_PokemonCenter_2F_MapObjects:: @ 8385F38
+ object_event 1, MAP_OBJ_GFX_TEALA, 0, 4, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, DewfordTown_PokemonCenter_2F_EventScript_153053, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_TEALA, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, DewfordTown_PokemonCenter_2F_EventScript_153059, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_TEALA, 0, 10, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, DewfordTown_PokemonCenter_2F_EventScript_15305F, 0, 0, 0
+
+DewfordTown_PokemonCenter_2F_MapWarps:: @ 8385F80
+ warp_def 1, 5, 4, 2, DewfordTown_PokemonCenter_1F
+ warp_def 5, 1, 0, 0, SingleBattleColosseum
+ warp_def 8, 1, 0, 0, TradeCenter
+ warp_def 11, 1, 0, 0, RecordCorner
+ warp_def 0, 0, 0, 0, DoubleBattleColosseum
+
+DewfordTown_PokemonCenter_2F_MapEvents:: @ 8385FA8
+ map_events DewfordTown_PokemonCenter_2F_MapObjects, DewfordTown_PokemonCenter_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/DoubleBattleColosseum.s b/data/maps/events/DoubleBattleColosseum.s
new file mode 100644
index 000000000..94e077e78
--- /dev/null
+++ b/data/maps/events/DoubleBattleColosseum.s
@@ -0,0 +1,15 @@
+DoubleBattleColosseum_MapWarps:: @ 8391428
+ warp_def 5, 8, 3, 127, NONE
+ warp_def 6, 8, 3, 127, NONE
+ warp_def 7, 8, 3, 127, NONE
+ warp_def 8, 8, 3, 127, NONE
+
+DoubleBattleColosseum_MapCoordEvents:: @ 8391448
+ coord_event 3, 4, 3, 0, 0x4000, 0, 0, DoubleBattleColosseum_EventScript_1A4383
+ coord_event 3, 6, 3, 0, 0x4000, 0, 0, DoubleBattleColosseum_EventScript_1A43B9
+ coord_event 10, 4, 3, 0, 0x4000, 0, 0, DoubleBattleColosseum_EventScript_1A439E
+ coord_event 10, 6, 3, 0, 0x4000, 0, 0, DoubleBattleColosseum_EventScript_1A43D4
+
+DoubleBattleColosseum_MapEvents:: @ 8391488
+ map_events 0x0, DoubleBattleColosseum_MapWarps, DoubleBattleColosseum_MapCoordEvents, 0x0
+
diff --git a/data/maps/events/EverGrandeCity.s b/data/maps/events/EverGrandeCity.s
new file mode 100644
index 000000000..fd9270eb6
--- /dev/null
+++ b/data/maps/events/EverGrandeCity.s
@@ -0,0 +1,29 @@
+EverGrandeCity_MapWarps:: @ 83807DC
+ warp_def 18, 5, 0, 0, EverGrandeCity_PokemonLeague
+ warp_def 27, 48, 0, 0, EverGrandeCity_PokemonCenter_1F
+ warp_def 18, 41, 0, 0, VictoryRoad_1F
+ warp_def 18, 27, 0, 1, VictoryRoad_1F
+
+EverGrandeCity_MapCoordEvents:: @ 83807FC
+ coord_event 17, 58, 1, 0, 0x4001, 0, 0, EverGrandeCity_EventScript_14D500
+ coord_event 16, 58, 1, 0, 0x4001, 0, 0, EverGrandeCity_EventScript_14D500
+ coord_event 18, 58, 1, 0, 0x4001, 0, 0, EverGrandeCity_EventScript_14D500
+ coord_event 19, 58, 1, 0, 0x4001, 0, 0, EverGrandeCity_EventScript_14D500
+ coord_event 20, 58, 1, 0, 0x4001, 0, 0, EverGrandeCity_EventScript_14D500
+ coord_event 21, 58, 1, 0, 0x4001, 0, 0, EverGrandeCity_EventScript_14D500
+ coord_event 22, 58, 1, 0, 0x4001, 0, 0, EverGrandeCity_EventScript_14D500
+ coord_event 23, 58, 1, 0, 0x4001, 0, 0, EverGrandeCity_EventScript_14D500
+ coord_event 24, 58, 1, 0, 0x4001, 0, 0, EverGrandeCity_EventScript_14D500
+ coord_event 25, 58, 1, 0, 0x4001, 0, 0, EverGrandeCity_EventScript_14D500
+ coord_event 26, 58, 1, 0, 0x4001, 0, 0, EverGrandeCity_EventScript_14D500
+
+EverGrandeCity_MapBGEvents:: @ 83808AC
+ bg_event 19, 43, 5, 0, 0, EverGrandeCity_EventScript_14D4E5
+ bg_event 29, 48, 0, 1, 0, EverGrandeCity_EventScript_1A00EA
+ bg_event 18, 52, 5, 0, 0, EverGrandeCity_EventScript_14D4EE
+ bg_event 23, 15, 0, 0, 0, EverGrandeCity_EventScript_14D4F7
+ bg_event 28, 48, 0, 1, 0, EverGrandeCity_EventScript_1A00EA
+
+EverGrandeCity_MapEvents:: @ 83808E8
+ map_events 0x0, EverGrandeCity_MapWarps, EverGrandeCity_MapCoordEvents, EverGrandeCity_MapBGEvents
+
diff --git a/data/maps/events/EverGrandeCity_ChampionsRoom.s b/data/maps/events/EverGrandeCity_ChampionsRoom.s
new file mode 100644
index 000000000..4a1d90085
--- /dev/null
+++ b/data/maps/events/EverGrandeCity_ChampionsRoom.s
@@ -0,0 +1,12 @@
+EverGrandeCity_ChampionsRoom_MapObjects:: @ 838B334
+ object_event 1, MAP_OBJ_GFX_STEVEN, 0, 6, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+ object_event 2, 240, 0, 6, 0, 12, 0, 3, 7, 0, 0, 0, 0, 0, 0, 0x0, 920, 0, 0
+ object_event 3, MAP_OBJ_GFX_PROF_BIRCH, 0, 6, 0, 12, 0, 3, 7, 0, 0, 0, 0, 0, 0, 0x0, 921, 0, 0
+
+EverGrandeCity_ChampionsRoom_MapWarps:: @ 838B37C
+ warp_def 6, 12, 3, 1, EverGrandeCity_Corridor4
+ warp_def 6, 2, 0, 0, EverGrandeCity_HallOfFame
+
+EverGrandeCity_ChampionsRoom_MapEvents:: @ 838B38C
+ map_events EverGrandeCity_ChampionsRoom_MapObjects, EverGrandeCity_ChampionsRoom_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/EverGrandeCity_Corridor1.s b/data/maps/events/EverGrandeCity_Corridor1.s
new file mode 100644
index 000000000..d9b3964ca
--- /dev/null
+++ b/data/maps/events/EverGrandeCity_Corridor1.s
@@ -0,0 +1,9 @@
+EverGrandeCity_Corridor1_MapWarps:: @ 838B3A0
+ warp_def 5, 12, 3, 1, EverGrandeCity_SidneysRoom
+ warp_def 5, 2, 0, 0, EverGrandeCity_PhoebesRoom
+ warp_def 4, 12, 3, 1, EverGrandeCity_SidneysRoom
+ warp_def 6, 12, 3, 1, EverGrandeCity_SidneysRoom
+
+EverGrandeCity_Corridor1_MapEvents:: @ 838B3C0
+ map_events 0x0, EverGrandeCity_Corridor1_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/EverGrandeCity_Corridor2.s b/data/maps/events/EverGrandeCity_Corridor2.s
new file mode 100644
index 000000000..acd3875e4
--- /dev/null
+++ b/data/maps/events/EverGrandeCity_Corridor2.s
@@ -0,0 +1,9 @@
+EverGrandeCity_Corridor2_MapWarps:: @ 838B3D4
+ warp_def 5, 12, 3, 1, EverGrandeCity_PhoebesRoom
+ warp_def 5, 2, 0, 0, EverGrandeCity_GlaciasRoom
+ warp_def 4, 12, 3, 1, EverGrandeCity_PhoebesRoom
+ warp_def 6, 12, 3, 1, EverGrandeCity_PhoebesRoom
+
+EverGrandeCity_Corridor2_MapEvents:: @ 838B3F4
+ map_events 0x0, EverGrandeCity_Corridor2_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/EverGrandeCity_Corridor3.s b/data/maps/events/EverGrandeCity_Corridor3.s
new file mode 100644
index 000000000..53b3357c8
--- /dev/null
+++ b/data/maps/events/EverGrandeCity_Corridor3.s
@@ -0,0 +1,9 @@
+EverGrandeCity_Corridor3_MapWarps:: @ 838B408
+ warp_def 5, 12, 3, 1, EverGrandeCity_GlaciasRoom
+ warp_def 5, 2, 0, 0, EverGrandeCity_DrakesRoom
+ warp_def 4, 12, 3, 1, EverGrandeCity_GlaciasRoom
+ warp_def 6, 12, 3, 1, EverGrandeCity_GlaciasRoom
+
+EverGrandeCity_Corridor3_MapEvents:: @ 838B428
+ map_events 0x0, EverGrandeCity_Corridor3_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/EverGrandeCity_Corridor4.s b/data/maps/events/EverGrandeCity_Corridor4.s
new file mode 100644
index 000000000..d53d63404
--- /dev/null
+++ b/data/maps/events/EverGrandeCity_Corridor4.s
@@ -0,0 +1,7 @@
+EverGrandeCity_Corridor4_MapWarps:: @ 838B43C
+ warp_def 5, 33, 3, 1, EverGrandeCity_DrakesRoom
+ warp_def 5, 2, 0, 0, EverGrandeCity_ChampionsRoom
+
+EverGrandeCity_Corridor4_MapEvents:: @ 838B44C
+ map_events 0x0, EverGrandeCity_Corridor4_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/EverGrandeCity_Corridor5.s b/data/maps/events/EverGrandeCity_Corridor5.s
new file mode 100644
index 000000000..e4fbbbd53
--- /dev/null
+++ b/data/maps/events/EverGrandeCity_Corridor5.s
@@ -0,0 +1,9 @@
+EverGrandeCity_Corridor5_MapWarps:: @ 838B460
+ warp_def 5, 12, 3, 2, EverGrandeCity_PokemonLeague
+ warp_def 5, 2, 0, 0, EverGrandeCity_SidneysRoom
+ warp_def 4, 12, 3, 2, EverGrandeCity_PokemonLeague
+ warp_def 6, 12, 3, 2, EverGrandeCity_PokemonLeague
+
+EverGrandeCity_Corridor5_MapEvents:: @ 838B480
+ map_events 0x0, EverGrandeCity_Corridor5_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/EverGrandeCity_DrakesRoom.s b/data/maps/events/EverGrandeCity_DrakesRoom.s
new file mode 100644
index 000000000..72b4c3170
--- /dev/null
+++ b/data/maps/events/EverGrandeCity_DrakesRoom.s
@@ -0,0 +1,10 @@
+EverGrandeCity_DrakesRoom_MapObjects:: @ 838B2F8
+ object_event 1, MAP_OBJ_GFX_DRAKE, 0, 6, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, EverGrandeCity_DrakesRoom_EventScript_15B764, 0, 0, 0
+
+EverGrandeCity_DrakesRoom_MapWarps:: @ 838B310
+ warp_def 6, 13, 3, 1, EverGrandeCity_Corridor3
+ warp_def 6, 2, 0, 0, EverGrandeCity_Corridor4
+
+EverGrandeCity_DrakesRoom_MapEvents:: @ 838B320
+ map_events EverGrandeCity_DrakesRoom_MapObjects, EverGrandeCity_DrakesRoom_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/EverGrandeCity_GlaciasRoom.s b/data/maps/events/EverGrandeCity_GlaciasRoom.s
new file mode 100644
index 000000000..87ee60dee
--- /dev/null
+++ b/data/maps/events/EverGrandeCity_GlaciasRoom.s
@@ -0,0 +1,10 @@
+EverGrandeCity_GlaciasRoom_MapObjects:: @ 838B2BC
+ object_event 1, MAP_OBJ_GFX_GLACIA, 0, 6, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, EverGrandeCity_GlaciasRoom_EventScript_15B6CA, 0, 0, 0
+
+EverGrandeCity_GlaciasRoom_MapWarps:: @ 838B2D4
+ warp_def 6, 13, 3, 1, EverGrandeCity_Corridor2
+ warp_def 6, 2, 0, 0, EverGrandeCity_Corridor3
+
+EverGrandeCity_GlaciasRoom_MapEvents:: @ 838B2E4
+ map_events EverGrandeCity_GlaciasRoom_MapObjects, EverGrandeCity_GlaciasRoom_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/EverGrandeCity_HallOfFame.s b/data/maps/events/EverGrandeCity_HallOfFame.s
new file mode 100644
index 000000000..e610ee5dc
--- /dev/null
+++ b/data/maps/events/EverGrandeCity_HallOfFame.s
@@ -0,0 +1,9 @@
+EverGrandeCity_HallOfFame_MapObjects:: @ 838B528
+ object_event 1, MAP_OBJ_GFX_STEVEN, 0, 6, 0, 16, 0, 3, 7, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+
+EverGrandeCity_HallOfFame_MapWarps:: @ 838B540
+ warp_def 7, 11, 3, 1, EverGrandeCity_ChampionsRoom
+
+EverGrandeCity_HallOfFame_MapEvents:: @ 838B548
+ map_events EverGrandeCity_HallOfFame_MapObjects, EverGrandeCity_HallOfFame_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/EverGrandeCity_PhoebesRoom.s b/data/maps/events/EverGrandeCity_PhoebesRoom.s
new file mode 100644
index 000000000..1401900f8
--- /dev/null
+++ b/data/maps/events/EverGrandeCity_PhoebesRoom.s
@@ -0,0 +1,10 @@
+EverGrandeCity_PhoebesRoom_MapObjects:: @ 838B280
+ object_event 1, MAP_OBJ_GFX_PHOEBE, 0, 6, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, EverGrandeCity_PhoebesRoom_EventScript_15B630, 0, 0, 0
+
+EverGrandeCity_PhoebesRoom_MapWarps:: @ 838B298
+ warp_def 6, 13, 3, 1, EverGrandeCity_Corridor1
+ warp_def 6, 2, 0, 0, EverGrandeCity_Corridor2
+
+EverGrandeCity_PhoebesRoom_MapEvents:: @ 838B2A8
+ map_events EverGrandeCity_PhoebesRoom_MapObjects, EverGrandeCity_PhoebesRoom_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/EverGrandeCity_PokemonCenter_1F.s b/data/maps/events/EverGrandeCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..27497731d
--- /dev/null
+++ b/data/maps/events/EverGrandeCity_PokemonCenter_1F.s
@@ -0,0 +1,13 @@
+EverGrandeCity_PokemonCenter_1F_MapObjects:: @ 838B55C
+ object_event 1, MAP_OBJ_GFX_NURSE, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, EverGrandeCity_PokemonCenter_1F_EventScript_15BC70, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_7, 0, 5, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, EverGrandeCity_PokemonCenter_1F_EventScript_15BC7E, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_OLD_MAN_1, 0, 10, 0, 7, 0, 3, 10, 0, 0, 0, 0, 0, 0, EverGrandeCity_PokemonCenter_1F_EventScript_15BC87, 0, 0, 0
+
+EverGrandeCity_PokemonCenter_1F_MapWarps:: @ 838B5A4
+ warp_def 7, 8, 3, 1, EverGrandeCity
+ warp_def 6, 8, 3, 1, EverGrandeCity
+ warp_def 1, 6, 4, 0, EverGrandeCity_PokemonCenter_2F
+
+EverGrandeCity_PokemonCenter_1F_MapEvents:: @ 838B5BC
+ map_events EverGrandeCity_PokemonCenter_1F_MapObjects, EverGrandeCity_PokemonCenter_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/EverGrandeCity_PokemonCenter_2F.s b/data/maps/events/EverGrandeCity_PokemonCenter_2F.s
new file mode 100644
index 000000000..7bd153239
--- /dev/null
+++ b/data/maps/events/EverGrandeCity_PokemonCenter_2F.s
@@ -0,0 +1,15 @@
+EverGrandeCity_PokemonCenter_2F_MapObjects:: @ 838B5D0
+ object_event 1, MAP_OBJ_GFX_TEALA, 0, 4, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, EverGrandeCity_PokemonCenter_2F_EventScript_15BCA0, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_TEALA, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, EverGrandeCity_PokemonCenter_2F_EventScript_15BCA6, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_TEALA, 0, 10, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, EverGrandeCity_PokemonCenter_2F_EventScript_15BCAC, 0, 0, 0
+
+EverGrandeCity_PokemonCenter_2F_MapWarps:: @ 838B618
+ warp_def 1, 5, 4, 2, EverGrandeCity_PokemonCenter_1F
+ warp_def 5, 1, 0, 0, SingleBattleColosseum
+ warp_def 8, 1, 0, 0, TradeCenter
+ warp_def 11, 1, 0, 0, RecordCorner
+ warp_def 0, 0, 0, 0, DoubleBattleColosseum
+
+EverGrandeCity_PokemonCenter_2F_MapEvents:: @ 838B640
+ map_events EverGrandeCity_PokemonCenter_2F_MapObjects, EverGrandeCity_PokemonCenter_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/EverGrandeCity_PokemonLeague.s b/data/maps/events/EverGrandeCity_PokemonLeague.s
new file mode 100644
index 000000000..3e759a22f
--- /dev/null
+++ b/data/maps/events/EverGrandeCity_PokemonLeague.s
@@ -0,0 +1,15 @@
+EverGrandeCity_PokemonLeague_MapObjects:: @ 838B494
+ object_event 1, MAP_OBJ_GFX_NURSE, 0, 3, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, EverGrandeCity_PokemonLeague_EventScript_15BA9A, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MART_EMPLOYEE, 0, 16, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, EverGrandeCity_PokemonLeague_EventScript_15BAA8, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MAN_4, 0, 8, 0, 2, 0, 3, 8, 17, 0, 0, 0, 0, 0, EverGrandeCity_PokemonLeague_EventScript_15BAD2, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_MAN_4, 0, 11, 0, 2, 0, 3, 8, 17, 0, 0, 0, 0, 0, EverGrandeCity_PokemonLeague_EventScript_15BAD2, 0, 0, 0
+
+EverGrandeCity_PokemonLeague_MapWarps:: @ 838B4F4
+ warp_def 9, 11, 3, 0, EverGrandeCity
+ warp_def 10, 11, 3, 0, EverGrandeCity
+ warp_def 9, 1, 3, 0, EverGrandeCity_Corridor5
+ warp_def 10, 1, 3, 0, EverGrandeCity_Corridor5
+
+EverGrandeCity_PokemonLeague_MapEvents:: @ 838B514
+ map_events EverGrandeCity_PokemonLeague_MapObjects, EverGrandeCity_PokemonLeague_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/EverGrandeCity_SidneysRoom.s b/data/maps/events/EverGrandeCity_SidneysRoom.s
new file mode 100644
index 000000000..4c73e643d
--- /dev/null
+++ b/data/maps/events/EverGrandeCity_SidneysRoom.s
@@ -0,0 +1,10 @@
+EverGrandeCity_SidneysRoom_MapObjects:: @ 838B244
+ object_event 1, MAP_OBJ_GFX_SIDNEY, 0, 6, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, EverGrandeCity_SidneysRoom_EventScript_15B596, 0, 0, 0
+
+EverGrandeCity_SidneysRoom_MapWarps:: @ 838B25C
+ warp_def 6, 13, 3, 1, EverGrandeCity_Corridor5
+ warp_def 6, 2, 0, 0, EverGrandeCity_Corridor1
+
+EverGrandeCity_SidneysRoom_MapEvents:: @ 838B26C
+ map_events EverGrandeCity_SidneysRoom_MapObjects, EverGrandeCity_SidneysRoom_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/FallarborTown.s b/data/maps/events/FallarborTown.s
new file mode 100644
index 000000000..e98657297
--- /dev/null
+++ b/data/maps/events/FallarborTown.s
@@ -0,0 +1,26 @@
+FallarborTown_MapObjects:: @ 8380E04
+ object_event 1, MAP_OBJ_GFX_GIRL_1, 0, 8, 0, 11, 0, 3, 8, 16, 0, 0, 0, 0, 0, FallarborTown_EventScript_14E814, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_OLD_MAN_1, 0, 11, 0, 9, 0, 3, 5, 1, 0, 0, 0, 0, 0, FallarborTown_EventScript_14E7F5, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_GENTLEMAN, 0, 11, 0, 15, 0, 3, 3, 17, 0, 0, 0, 0, 0, FallarborTown_EventScript_14E81D, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_AZURILL, 0, 8, 0, 12, 0, 3, 1, 1, 0, 0, 0, 0, 0, FallarborTown_EventScript_14E826, 907, 0, 0
+
+FallarborTown_MapWarps:: @ 8380E64
+ warp_def 15, 15, 0, 0, FallarborTown_Mart
+ warp_def 8, 7, 0, 0, FallarborTown_ContestLobby
+ warp_def 14, 7, 0, 0, FallarborTown_PokemonCenter_1F
+ warp_def 6, 17, 0, 0, FallarborTown_House1
+ warp_def 1, 6, 0, 0, FallarborTown_House2
+
+FallarborTown_MapBGEvents:: @ 8380E8C
+ bg_event 16, 15, 0, 1, 0, FallarborTown_EventScript_1A00E1
+ bg_event 15, 7, 0, 1, 0, FallarborTown_EventScript_1A00EA
+ bg_event 6, 8, 0, 0, 0, FallarborTown_EventScript_14E839
+ bg_event 16, 7, 0, 1, 0, FallarborTown_EventScript_1A00EA
+ bg_event 10, 11, 0, 0, 0, FallarborTown_EventScript_14E842
+ bg_event 17, 15, 0, 1, 0, FallarborTown_EventScript_1A00E1
+ bg_event 3, 7, 0, 0, 0, FallarborTown_EventScript_14E84B
+ bg_event 2, 15, 3, 7, 0, ITEM_NUGGET, 28, 0
+
+FallarborTown_MapEvents:: @ 8380EEC
+ map_events FallarborTown_MapObjects, FallarborTown_MapWarps, 0x0, FallarborTown_MapBGEvents
+
diff --git a/data/maps/events/FallarborTown_ContestHall.s b/data/maps/events/FallarborTown_ContestHall.s
new file mode 100644
index 000000000..90fe5d71b
--- /dev/null
+++ b/data/maps/events/FallarborTown_ContestHall.s
@@ -0,0 +1,16 @@
+FallarborTown_ContestHall_MapObjects:: @ 83867DC
+ object_event 1, MAP_OBJ_GFX_MAN_1, 0, 19, 0, 8, 0, 0, 2, 34, 0, 0, 0, 0, 0, FallarborTown_ContestHall_EventScript_153ACF, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_7, 0, 5, 0, 7, 0, 0, 2, 50, 0, 0, 0, 0, 0, FallarborTown_ContestHall_EventScript_153AD8, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_YOUNGSTER, 0, 0, 0, 15, 0, 0, 2, 51, 0, 0, 0, 0, 0, FallarborTown_ContestHall_EventScript_153AE1, 0, 0, 0
+
+FallarborTown_ContestHall_MapWarps:: @ 8386824
+ warp_def 10, 17, 0, 2, FallarborTown_ContestLobby
+ warp_def 11, 17, 0, 2, FallarborTown_ContestLobby
+
+FallarborTown_ContestHall_MapBGEvents:: @ 8386834
+ bg_event 12, 14, 3, 0, 0, FallarborTown_ContestHall_EventScript_153AEA
+ bg_event 8, 14, 3, 0, 0, FallarborTown_ContestHall_EventScript_153AEA
+
+FallarborTown_ContestHall_MapEvents:: @ 838684C
+ map_events FallarborTown_ContestHall_MapObjects, FallarborTown_ContestHall_MapWarps, 0x0, FallarborTown_ContestHall_MapBGEvents
+
diff --git a/data/maps/events/FallarborTown_ContestLobby.s b/data/maps/events/FallarborTown_ContestLobby.s
new file mode 100644
index 000000000..7ae34cad6
--- /dev/null
+++ b/data/maps/events/FallarborTown_ContestLobby.s
@@ -0,0 +1,22 @@
+FallarborTown_ContestLobby_MapObjects:: @ 83866F0
+ object_event 1, MAP_OBJ_GFX_TEALA, 0, 5, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, FallarborTown_ContestLobby_EventScript_1539CD, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_LITTLE_BOY_2, 0, 2, 0, 6, 0, 3, 5, 1, 0, 0, 0, 0, 0, FallarborTown_ContestLobby_EventScript_153A8E, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_LASS, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, FallarborTown_ContestLobby_EventScript_153AB2, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_OLD_MAN_1, 0, 11, 0, 5, 0, 3, 10, 0, 0, 0, 0, 0, 0, FallarborTown_ContestLobby_EventScript_1B778A, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_REPORTER_M, 0, 7, 0, 5, 0, 3, 9, 0, 0, 0, 0, 0, 0, FallarborTown_ContestLobby_EventScript_1AE0B6, 800, 0, 0
+ object_event 6, MAP_OBJ_GFX_ARTIST, 0, 12, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, FallarborTown_ContestLobby_EventScript_153A97, 0, 0, 0
+
+FallarborTown_ContestLobby_MapWarps:: @ 8386780
+ warp_def 5, 6, 0, 1, FallarborTown
+ warp_def 6, 6, 0, 1, FallarborTown
+ warp_def 1, 1, 0, 0, FallarborTown_ContestHall
+
+FallarborTown_ContestLobby_MapBGEvents:: @ 8386798
+ bg_event 10, 3, 0, 0, 0, FallarborTown_ContestLobby_EventScript_1B7823
+ bg_event 12, 5, 0, 0, 0, FallarborTown_ContestLobby_EventScript_1B7604
+ bg_event 11, 1, 3, 0, 0, FallarborTown_ContestLobby_EventScript_153ABB
+ bg_event 13, 1, 0, 0, 0, FallarborTown_ContestLobby_EventScript_153AC2
+
+FallarborTown_ContestLobby_MapEvents:: @ 83867C8
+ map_events FallarborTown_ContestLobby_MapObjects, FallarborTown_ContestLobby_MapWarps, 0x0, FallarborTown_ContestLobby_MapBGEvents
+
diff --git a/data/maps/events/FallarborTown_House1.s b/data/maps/events/FallarborTown_House1.s
new file mode 100644
index 000000000..5ed16a6ea
--- /dev/null
+++ b/data/maps/events/FallarborTown_House1.s
@@ -0,0 +1,11 @@
+FallarborTown_House1_MapObjects:: @ 8386970
+ object_event 1, MAP_OBJ_GFX_SCIENTIST_1, 0, 6, 0, 4, 0, 3, 2, 17, 0, 0, 0, 0, 0, FallarborTown_House1_EventScript_153BB5, 928, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_3, 0, 5, 0, 6, 0, 3, 5, 1, 0, 0, 0, 0, 0, FallarborTown_House1_EventScript_153C5E, 0, 0, 0
+
+FallarborTown_House1_MapWarps:: @ 83869A0
+ warp_def 3, 8, 0, 3, FallarborTown
+ warp_def 4, 8, 0, 3, FallarborTown
+
+FallarborTown_House1_MapEvents:: @ 83869B0
+ map_events FallarborTown_House1_MapObjects, FallarborTown_House1_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/FallarborTown_House2.s b/data/maps/events/FallarborTown_House2.s
new file mode 100644
index 000000000..dd5061663
--- /dev/null
+++ b/data/maps/events/FallarborTown_House2.s
@@ -0,0 +1,10 @@
+FallarborTown_House2_MapObjects:: @ 83869C4
+ object_event 1, MAP_OBJ_GFX_FAT_MAN, 0, 4, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, FallarborTown_House2_EventScript_153C91, 0, 0, 0
+
+FallarborTown_House2_MapWarps:: @ 83869DC
+ warp_def 3, 7, 0, 4, FallarborTown
+ warp_def 4, 7, 0, 4, FallarborTown
+
+FallarborTown_House2_MapEvents:: @ 83869EC
+ map_events FallarborTown_House2_MapObjects, FallarborTown_House2_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/FallarborTown_Mart.s b/data/maps/events/FallarborTown_Mart.s
new file mode 100644
index 000000000..5548e4d43
--- /dev/null
+++ b/data/maps/events/FallarborTown_Mart.s
@@ -0,0 +1,13 @@
+FallarborTown_Mart_MapObjects:: @ 838666C
+ object_event 1, MAP_OBJ_GFX_MART_EMPLOYEE, 0, 1, 0, 3, 0, 3, 10, 0, 0, 0, 0, 0, 0, FallarborTown_Mart_EventScript_153967, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_3, 0, 5, 0, 3, 0, 3, 2, 17, 0, 0, 0, 0, 0, FallarborTown_Mart_EventScript_15399C, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MAN_3, 0, 9, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, FallarborTown_Mart_EventScript_1539A5, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_SKITTY, 0, 2, 0, 5, 0, 3, 1, 17, 0, 0, 0, 0, 0, FallarborTown_Mart_EventScript_1539AE, 0, 0, 0
+
+FallarborTown_Mart_MapWarps:: @ 83866CC
+ warp_def 3, 7, 0, 0, FallarborTown
+ warp_def 4, 7, 0, 0, FallarborTown
+
+FallarborTown_Mart_MapEvents:: @ 83866DC
+ map_events FallarborTown_Mart_MapObjects, FallarborTown_Mart_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/FallarborTown_PokemonCenter_1F.s b/data/maps/events/FallarborTown_PokemonCenter_1F.s
new file mode 100644
index 000000000..2282928ba
--- /dev/null
+++ b/data/maps/events/FallarborTown_PokemonCenter_1F.s
@@ -0,0 +1,14 @@
+FallarborTown_PokemonCenter_1F_MapObjects:: @ 8386860
+ object_event 1, MAP_OBJ_GFX_NURSE, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, FallarborTown_PokemonCenter_1F_EventScript_153B02, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_GIRL_3, 0, 10, 0, 6, 0, 3, 10, 0, 0, 0, 0, 0, 0, FallarborTown_PokemonCenter_1F_EventScript_153B10, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_OLD_MAN_1, 0, 2, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, FallarborTown_PokemonCenter_1F_EventScript_153B19, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_WOMAN_3, 0, 10, 0, 2, 0, 3, 7, 0, 0, 0, 0, 0, 0, FallarborTown_PokemonCenter_1F_EventScript_153B22, 871, 0, 0
+
+FallarborTown_PokemonCenter_1F_MapWarps:: @ 83868C0
+ warp_def 7, 8, 3, 2, FallarborTown
+ warp_def 6, 8, 3, 2, FallarborTown
+ warp_def 1, 6, 4, 0, FallarborTown_PokemonCenter_2F
+
+FallarborTown_PokemonCenter_1F_MapEvents:: @ 83868D8
+ map_events FallarborTown_PokemonCenter_1F_MapObjects, FallarborTown_PokemonCenter_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/FallarborTown_PokemonCenter_2F.s b/data/maps/events/FallarborTown_PokemonCenter_2F.s
new file mode 100644
index 000000000..61d042023
--- /dev/null
+++ b/data/maps/events/FallarborTown_PokemonCenter_2F.s
@@ -0,0 +1,15 @@
+FallarborTown_PokemonCenter_2F_MapObjects:: @ 83868EC
+ object_event 1, MAP_OBJ_GFX_TEALA, 0, 10, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, FallarborTown_PokemonCenter_2F_EventScript_153BA8, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_TEALA, 0, 4, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, FallarborTown_PokemonCenter_2F_EventScript_153B9C, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_TEALA, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, FallarborTown_PokemonCenter_2F_EventScript_153BA2, 0, 0, 0
+
+FallarborTown_PokemonCenter_2F_MapWarps:: @ 8386934
+ warp_def 1, 5, 4, 2, FallarborTown_PokemonCenter_1F
+ warp_def 5, 1, 3, 0, SingleBattleColosseum
+ warp_def 8, 1, 3, 0, TradeCenter
+ warp_def 11, 1, 3, 0, RecordCorner
+ warp_def 0, 0, 0, 0, DoubleBattleColosseum
+
+FallarborTown_PokemonCenter_2F_MapEvents:: @ 838695C
+ map_events FallarborTown_PokemonCenter_2F_MapObjects, FallarborTown_PokemonCenter_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/FieryPath.s b/data/maps/events/FieryPath.s
new file mode 100644
index 000000000..c6fc85f61
--- /dev/null
+++ b/data/maps/events/FieryPath.s
@@ -0,0 +1,17 @@
+FieryPath_MapObjects:: @ 838C718
+ object_event 1, MAP_OBJ_GFX_ITEM_BALL, 0, 8, 0, 3, 0, 3, 1, 17, 0, 0, 0, 0, 0, FieryPath_EventScript_1B17EE, 1091, 0, 0
+ object_event 2, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 10, 0, 15, 0, 3, 1, 0, 0, 0, 0, 0, 0, FieryPath_EventScript_1B0FCB, 17, 0, 0
+ object_event 3, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 17, 0, 15, 0, 3, 1, 0, 0, 0, 0, 0, 0, FieryPath_EventScript_1B0FCB, 18, 0, 0
+ object_event 4, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 8, 0, 11, 0, 3, 1, 0, 0, 0, 0, 0, 0, FieryPath_EventScript_1B0FCB, 19, 0, 0
+ object_event 5, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 3, 0, 12, 0, 3, 1, 0, 0, 0, 0, 0, 0, FieryPath_EventScript_1B0FCB, 20, 0, 0
+ object_event 6, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 6, 0, 23, 0, 3, 1, 0, 0, 0, 0, 0, 0, FieryPath_EventScript_1B0FCB, 21, 0, 0
+ object_event 7, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 5, 0, 24, 0, 3, 1, 0, 0, 0, 0, 0, 0, FieryPath_EventScript_1B0FCB, 22, 0, 0
+ object_event 8, MAP_OBJ_GFX_ITEM_BALL, 0, 7, 0, 32, 0, 3, 1, 17, 0, 0, 0, 0, 0, FieryPath_EventScript_1B17E1, 1111, 0, 0
+
+FieryPath_MapWarps:: @ 838C7D8
+ warp_def 26, 36, 3, 4, Route112
+ warp_def 26, 4, 3, 5, Route112
+
+FieryPath_MapEvents:: @ 838C7E8
+ map_events FieryPath_MapObjects, FieryPath_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/FortreeCity.s b/data/maps/events/FortreeCity.s
new file mode 100644
index 000000000..4e2d1e97b
--- /dev/null
+++ b/data/maps/events/FortreeCity.s
@@ -0,0 +1,31 @@
+FortreeCity_MapObjects:: @ 8380020
+ object_event 1, MAP_OBJ_GFX_MAN_2, 0, 31, 0, 3, 0, 4, 1, 0, 0, 0, 0, 0, 0, FortreeCity_EventScript_14C955, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_GIRL_1, 0, 32, 0, 16, 0, 3, 2, 17, 0, 0, 0, 0, 0, FortreeCity_EventScript_14C97D, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_WOMAN_7, 0, 32, 0, 10, 0, 3, 3, 16, 0, 0, 0, 0, 0, FortreeCity_EventScript_14C95E, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_BOY_1, 0, 11, 0, 14, 0, 4, 1, 0, 0, 0, 0, 0, 0, FortreeCity_EventScript_14C98F, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_OLD_MAN_2, 0, 8, 0, 10, 0, 3, 1, 0, 0, 0, 0, 0, 0, FortreeCity_EventScript_14C986, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_BOY_5, 0, 9, 0, 16, 0, 3, 8, 0, 0, 0, 0, 0, 0, FortreeCity_EventScript_14C998, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_KECLEON_1, 0, 25, 0, 8, 0, 3, 76, 17, 0, 0, 0, 0, 0, FortreeCity_EventScript_14C9B3, 969, 0, 0
+
+FortreeCity_MapWarps:: @ 83800C8
+ warp_def 5, 6, 0, 0, FortreeCity_PokemonCenter_1F
+ warp_def 10, 3, 0, 0, FortreeCity_House1
+ warp_def 22, 11, 0, 0, FortreeCity_Gym
+ warp_def 4, 14, 0, 0, FortreeCity_Mart
+ warp_def 17, 3, 0, 0, FortreeCity_House2
+ warp_def 25, 3, 0, 0, FortreeCity_House3
+ warp_def 32, 2, 0, 0, FortreeCity_House4
+ warp_def 12, 13, 0, 0, FortreeCity_House5
+ warp_def 37, 13, 0, 0, FortreeCity_DecorationShop
+
+FortreeCity_MapBGEvents:: @ 8380110
+ bg_event 6, 9, 0, 0, 0, FortreeCity_EventScript_14C9A1
+ bg_event 7, 6, 0, 1, 0, FortreeCity_EventScript_1A00EA
+ bg_event 5, 14, 0, 1, 0, FortreeCity_EventScript_1A00E1
+ bg_event 26, 10, 0, 0, 0, FortreeCity_EventScript_14C9AA
+ bg_event 6, 6, 0, 1, 0, FortreeCity_EventScript_1A00EA
+ bg_event 6, 14, 0, 1, 0, FortreeCity_EventScript_1A00E1
+
+FortreeCity_MapEvents:: @ 8380158
+ map_events FortreeCity_MapObjects, FortreeCity_MapWarps, 0x0, FortreeCity_MapBGEvents
+
diff --git a/data/maps/events/FortreeCity_DecorationShop.s b/data/maps/events/FortreeCity_DecorationShop.s
new file mode 100644
index 000000000..1283fe593
--- /dev/null
+++ b/data/maps/events/FortreeCity_DecorationShop.s
@@ -0,0 +1,13 @@
+FortreeCity_DecorationShop_MapObjects:: @ 83893E0
+ object_event 1, MAP_OBJ_GFX_MAN_3, 0, 6, 0, 5, 0, 3, 1, 17, 0, 0, 0, 0, 0, FortreeCity_DecorationShop_EventScript_158258, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_GIRL_3, 0, 0, 0, 4, 0, 3, 9, 0, 0, 0, 0, 0, 0, FortreeCity_DecorationShop_EventScript_158261, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MART_EMPLOYEE, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, FortreeCity_DecorationShop_EventScript_15826A, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_MART_EMPLOYEE, 0, 6, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, FortreeCity_DecorationShop_EventScript_158298, 0, 0, 0
+
+FortreeCity_DecorationShop_MapWarps:: @ 8389440
+ warp_def 3, 5, 0, 8, FortreeCity
+ warp_def 4, 5, 0, 8, FortreeCity
+
+FortreeCity_DecorationShop_MapEvents:: @ 8389450
+ map_events FortreeCity_DecorationShop_MapObjects, FortreeCity_DecorationShop_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/FortreeCity_Gym.s b/data/maps/events/FortreeCity_Gym.s
new file mode 100644
index 000000000..7427a7ab1
--- /dev/null
+++ b/data/maps/events/FortreeCity_Gym.s
@@ -0,0 +1,19 @@
+FortreeCity_Gym_MapObjects:: @ 8389018
+ object_event 1, MAP_OBJ_GFX_WINONA, 0, 4, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, FortreeCity_Gym_EventScript_157EF0, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_6, 0, 12, 0, 22, 0, 3, 7, 0, 0, 1, 0, 3, 0, FortreeCity_Gym_EventScript_157F62, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_CAMPER, 0, 9, 0, 9, 0, 3, 8, 0, 0, 1, 0, 3, 0, FortreeCity_Gym_EventScript_157F90, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_PICNICKER, 0, 18, 0, 19, 0, 3, 9, 0, 0, 1, 0, 4, 0, FortreeCity_Gym_EventScript_157FA7, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_MAN_6, 0, 18, 0, 1, 0, 3, 8, 0, 0, 1, 0, 1, 0, FortreeCity_Gym_EventScript_157F79, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_MAN_2, 0, 2, 0, 19, 0, 3, 8, 0, 0, 0, 0, 0, 0, FortreeCity_Gym_EventScript_157FBE, 0, 0, 0
+
+FortreeCity_Gym_MapWarps:: @ 83890A8
+ warp_def 2, 24, 0, 2, FortreeCity
+ warp_def 3, 24, 0, 2, FortreeCity
+
+FortreeCity_Gym_MapBGEvents:: @ 83890B8
+ bg_event 1, 21, 0, 1, 0, FortreeCity_Gym_EventScript_157FDD
+ bg_event 4, 21, 0, 1, 0, FortreeCity_Gym_EventScript_157FED
+
+FortreeCity_Gym_MapEvents:: @ 83890D0
+ map_events FortreeCity_Gym_MapObjects, FortreeCity_Gym_MapWarps, 0x0, FortreeCity_Gym_MapBGEvents
+
diff --git a/data/maps/events/FortreeCity_House1.s b/data/maps/events/FortreeCity_House1.s
new file mode 100644
index 000000000..f687cd86a
--- /dev/null
+++ b/data/maps/events/FortreeCity_House1.s
@@ -0,0 +1,12 @@
+FortreeCity_House1_MapObjects:: @ 8388FAC
+ object_event 1, MAP_OBJ_GFX_WOMAN_1, 0, 1, 0, 3, 0, 3, 10, 0, 0, 0, 0, 0, 0, FortreeCity_House1_EventScript_157E13, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_ZIGZAGOON, 0, 2, 0, 3, 0, 3, 9, 0, 0, 0, 0, 0, 0, FortreeCity_House1_EventScript_157EC0, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_OLD_WOMAN_1, 0, 7, 0, 4, 0, 3, 1, 17, 0, 0, 0, 0, 0, FortreeCity_House1_EventScript_157EB7, 0, 0, 0
+
+FortreeCity_House1_MapWarps:: @ 8388FF4
+ warp_def 3, 5, 0, 1, FortreeCity
+ warp_def 4, 5, 0, 1, FortreeCity
+
+FortreeCity_House1_MapEvents:: @ 8389004
+ map_events FortreeCity_House1_MapObjects, FortreeCity_House1_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/FortreeCity_House2.s b/data/maps/events/FortreeCity_House2.s
new file mode 100644
index 000000000..9e9fea410
--- /dev/null
+++ b/data/maps/events/FortreeCity_House2.s
@@ -0,0 +1,10 @@
+FortreeCity_House2_MapObjects:: @ 8389278
+ object_event 1, MAP_OBJ_GFX_OLD_WOMAN_1, 0, 2, 0, 3, 0, 3, 5, 1, 0, 0, 0, 0, 0, FortreeCity_House2_EventScript_1580B4, 0, 0, 0
+
+FortreeCity_House2_MapWarps:: @ 8389290
+ warp_def 3, 5, 0, 4, FortreeCity
+ warp_def 4, 5, 0, 4, FortreeCity
+
+FortreeCity_House2_MapEvents:: @ 83892A0
+ map_events FortreeCity_House2_MapObjects, FortreeCity_House2_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/FortreeCity_House3.s b/data/maps/events/FortreeCity_House3.s
new file mode 100644
index 000000000..c4970c754
--- /dev/null
+++ b/data/maps/events/FortreeCity_House3.s
@@ -0,0 +1,11 @@
+FortreeCity_House3_MapObjects:: @ 83892B4
+ object_event 1, MAP_OBJ_GFX_MANIAC, 0, 0, 0, 3, 0, 3, 10, 0, 0, 0, 0, 0, 0, FortreeCity_House3_EventScript_15816C, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SCHOOL_KID_M, 0, 5, 0, 4, 0, 3, 2, 17, 0, 0, 0, 0, 0, FortreeCity_House3_EventScript_158175, 0, 0, 0
+
+FortreeCity_House3_MapWarps:: @ 83892E4
+ warp_def 3, 5, 0, 5, FortreeCity
+ warp_def 4, 5, 0, 5, FortreeCity
+
+FortreeCity_House3_MapEvents:: @ 83892F4
+ map_events FortreeCity_House3_MapObjects, FortreeCity_House3_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/FortreeCity_House4.s b/data/maps/events/FortreeCity_House4.s
new file mode 100644
index 000000000..c4ac000bd
--- /dev/null
+++ b/data/maps/events/FortreeCity_House4.s
@@ -0,0 +1,12 @@
+FortreeCity_House4_MapObjects:: @ 8389308
+ object_event 1, MAP_OBJ_GFX_WOMAN_5, 0, 6, 0, 4, 0, 3, 2, 17, 0, 0, 0, 0, 0, FortreeCity_House4_EventScript_15817F, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_BOY_3, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, FortreeCity_House4_EventScript_158188, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_WINGULL, 0, 2, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, FortreeCity_House4_EventScript_15821E, 933, 0, 0
+
+FortreeCity_House4_MapWarps:: @ 8389350
+ warp_def 3, 5, 0, 6, FortreeCity
+ warp_def 4, 5, 0, 6, FortreeCity
+
+FortreeCity_House4_MapEvents:: @ 8389360
+ map_events FortreeCity_House4_MapObjects, FortreeCity_House4_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/FortreeCity_House5.s b/data/maps/events/FortreeCity_House5.s
new file mode 100644
index 000000000..eba77eada
--- /dev/null
+++ b/data/maps/events/FortreeCity_House5.s
@@ -0,0 +1,12 @@
+FortreeCity_House5_MapObjects:: @ 8389374
+ object_event 1, MAP_OBJ_GFX_WOMAN_2, 0, 6, 0, 4, 0, 3, 20, 0, 0, 0, 0, 0, 0, FortreeCity_House5_EventScript_158232, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_ZIGZAGOON, 0, 6, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, FortreeCity_House5_EventScript_158244, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MAN_1, 0, 2, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, FortreeCity_House5_EventScript_15823B, 0, 0, 0
+
+FortreeCity_House5_MapWarps:: @ 83893BC
+ warp_def 3, 5, 0, 7, FortreeCity
+ warp_def 4, 5, 0, 7, FortreeCity
+
+FortreeCity_House5_MapEvents:: @ 83893CC
+ map_events FortreeCity_House5_MapObjects, FortreeCity_House5_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/FortreeCity_Mart.s b/data/maps/events/FortreeCity_Mart.s
new file mode 100644
index 000000000..0e88f0598
--- /dev/null
+++ b/data/maps/events/FortreeCity_Mart.s
@@ -0,0 +1,13 @@
+FortreeCity_Mart_MapObjects:: @ 83891F4
+ object_event 1, MAP_OBJ_GFX_MART_EMPLOYEE, 0, 1, 0, 3, 0, 3, 10, 0, 0, 0, 0, 0, 0, FortreeCity_Mart_EventScript_158067, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_3, 0, 9, 0, 3, 0, 3, 7, 0, 0, 0, 0, 0, 0, FortreeCity_Mart_EventScript_158098, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_GIRL_3, 0, 8, 0, 5, 0, 3, 2, 17, 0, 0, 0, 0, 0, FortreeCity_Mart_EventScript_1580A1, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_BOY_2, 0, 5, 0, 6, 0, 3, 10, 17, 0, 0, 0, 0, 0, FortreeCity_Mart_EventScript_1580AA, 0, 0, 0
+
+FortreeCity_Mart_MapWarps:: @ 8389254
+ warp_def 3, 7, 0, 3, FortreeCity
+ warp_def 4, 7, 0, 3, FortreeCity
+
+FortreeCity_Mart_MapEvents:: @ 8389264
+ map_events FortreeCity_Mart_MapObjects, FortreeCity_Mart_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/FortreeCity_PokemonCenter_1F.s b/data/maps/events/FortreeCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..dd81d8351
--- /dev/null
+++ b/data/maps/events/FortreeCity_PokemonCenter_1F.s
@@ -0,0 +1,14 @@
+FortreeCity_PokemonCenter_1F_MapObjects:: @ 83890E4
+ object_event 1, MAP_OBJ_GFX_NURSE, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, FortreeCity_PokemonCenter_1F_EventScript_15801B, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_GENTLEMAN, 0, 4, 0, 7, 0, 3, 1, 0, 0, 0, 0, 0, 0, FortreeCity_PokemonCenter_1F_EventScript_158029, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MAN_4, 0, 8, 0, 5, 0, 3, 1, 0, 0, 0, 0, 0, 0, FortreeCity_PokemonCenter_1F_EventScript_158032, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_BOY_3, 0, 2, 0, 3, 0, 3, 8, 17, 0, 0, 0, 0, 0, FortreeCity_PokemonCenter_1F_EventScript_15803B, 0, 0, 0
+
+FortreeCity_PokemonCenter_1F_MapWarps:: @ 8389144
+ warp_def 7, 8, 3, 0, FortreeCity
+ warp_def 6, 8, 3, 0, FortreeCity
+ warp_def 1, 6, 4, 0, FortreeCity_PokemonCenter_2F
+
+FortreeCity_PokemonCenter_1F_MapEvents:: @ 838915C
+ map_events FortreeCity_PokemonCenter_1F_MapObjects, FortreeCity_PokemonCenter_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/FortreeCity_PokemonCenter_2F.s b/data/maps/events/FortreeCity_PokemonCenter_2F.s
new file mode 100644
index 000000000..c23083513
--- /dev/null
+++ b/data/maps/events/FortreeCity_PokemonCenter_2F.s
@@ -0,0 +1,15 @@
+FortreeCity_PokemonCenter_2F_MapObjects:: @ 8389170
+ object_event 1, MAP_OBJ_GFX_TEALA, 0, 4, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, FortreeCity_PokemonCenter_2F_EventScript_158054, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_TEALA, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, FortreeCity_PokemonCenter_2F_EventScript_15805A, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_TEALA, 0, 10, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, FortreeCity_PokemonCenter_2F_EventScript_158060, 0, 0, 0
+
+FortreeCity_PokemonCenter_2F_MapWarps:: @ 83891B8
+ warp_def 1, 5, 4, 2, FortreeCity_PokemonCenter_1F
+ warp_def 5, 1, 0, 0, SingleBattleColosseum
+ warp_def 8, 1, 0, 0, TradeCenter
+ warp_def 11, 1, 0, 0, RecordCorner
+ warp_def 0, 0, 0, 0, DoubleBattleColosseum
+
+FortreeCity_PokemonCenter_2F_MapEvents:: @ 83891E0
+ map_events FortreeCity_PokemonCenter_2F_MapObjects, FortreeCity_PokemonCenter_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/GraniteCave_1F.s b/data/maps/events/GraniteCave_1F.s
new file mode 100644
index 000000000..8ed16ccd8
--- /dev/null
+++ b/data/maps/events/GraniteCave_1F.s
@@ -0,0 +1,13 @@
+GraniteCave_1F_MapObjects:: @ 838BF24
+ object_event 1, MAP_OBJ_GFX_HIKER, 0, 36, 0, 9, 0, 3, 1, 0, 0, 0, 0, 0, 0, GraniteCave_1F_EventScript_15CBA7, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_ITEM_BALL, 0, 17, 0, 7, 0, 3, 8, 0, 0, 0, 0, 0, 0, GraniteCave_1F_EventScript_1B17A0, 1050, 0, 0
+
+GraniteCave_1F_MapWarps:: @ 838BF54
+ warp_def 37, 12, 3, 0, Route106
+ warp_def 35, 3, 3, 0, GraniteCave_B1F
+ warp_def 17, 11, 3, 1, GraniteCave_B1F
+ warp_def 5, 10, 3, 0, GraniteCave_StevensRoom
+
+GraniteCave_1F_MapEvents:: @ 838BF74
+ map_events GraniteCave_1F_MapObjects, GraniteCave_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/GraniteCave_B1F.s b/data/maps/events/GraniteCave_B1F.s
new file mode 100644
index 000000000..2c2b4c2a2
--- /dev/null
+++ b/data/maps/events/GraniteCave_B1F.s
@@ -0,0 +1,15 @@
+GraniteCave_B1F_MapObjects:: @ 838BF88
+ object_event 1, MAP_OBJ_GFX_ITEM_BALL, 0, 15, 0, 21, 0, 3, 1, 0, 0, 0, 0, 0, 0, GraniteCave_B1F_EventScript_1B17AD, 1051, 0, 0
+
+GraniteCave_B1F_MapWarps:: @ 838BFA0
+ warp_def 25, 13, 3, 1, GraniteCave_1F
+ warp_def 4, 21, 3, 2, GraniteCave_1F
+ warp_def 29, 13, 3, 0, GraniteCave_B2F
+ warp_def 28, 21, 3, 1, GraniteCave_B2F
+ warp_def 8, 5, 3, 2, GraniteCave_B2F
+ warp_def 12, 3, 3, 3, GraniteCave_B2F
+ warp_def 29, 2, 3, 4, GraniteCave_B2F
+
+GraniteCave_B1F_MapEvents:: @ 838BFD8
+ map_events GraniteCave_B1F_MapObjects, GraniteCave_B1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/GraniteCave_B2F.s b/data/maps/events/GraniteCave_B2F.s
new file mode 100644
index 000000000..9d781e583
--- /dev/null
+++ b/data/maps/events/GraniteCave_B2F.s
@@ -0,0 +1,25 @@
+GraniteCave_B2F_MapObjects:: @ 838BFEC
+ object_event 1, MAP_OBJ_GFX_ITEM_BALL, 0, 4, 0, 4, 0, 3, 1, 0, 0, 0, 0, 0, 0, GraniteCave_B2F_EventScript_1B17BA, 1053, 0, 0
+ object_event 2, MAP_OBJ_GFX_ITEM_BALL, 0, 29, 0, 4, 0, 3, 1, 0, 0, 0, 0, 0, 0, GraniteCave_B2F_EventScript_1B17C7, 1054, 0, 0
+ object_event 3, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 5, 0, 14, 0, 3, 1, 17, 0, 0, 0, 0, 0, GraniteCave_B2F_EventScript_1B0EB7, 17, 0, 0
+ object_event 4, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 3, 0, 14, 0, 3, 1, 17, 0, 0, 0, 0, 0, GraniteCave_B2F_EventScript_1B0EB7, 18, 0, 0
+ object_event 5, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 2, 0, 16, 0, 3, 1, 17, 0, 0, 0, 0, 0, GraniteCave_B2F_EventScript_1B0EB7, 19, 0, 0
+ object_event 6, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 7, 0, 12, 0, 3, 1, 17, 0, 0, 0, 0, 0, GraniteCave_B2F_EventScript_1B0EB7, 20, 0, 0
+ object_event 7, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 4, 0, 22, 0, 3, 1, 17, 0, 0, 0, 0, 0, GraniteCave_B2F_EventScript_1B0EB7, 21, 0, 0
+ object_event 8, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 6, 0, 22, 0, 3, 1, 17, 0, 0, 0, 0, 0, GraniteCave_B2F_EventScript_1B0EB7, 22, 0, 0
+ object_event 9, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 3, 0, 21, 0, 3, 1, 17, 0, 0, 0, 0, 0, GraniteCave_B2F_EventScript_1B0EB7, 23, 0, 0
+
+GraniteCave_B2F_MapWarps:: @ 838C0C4
+ warp_def 29, 13, 3, 2, GraniteCave_B1F
+ warp_def 28, 21, 3, 3, GraniteCave_B1F
+ warp_def 8, 5, 3, 4, GraniteCave_B1F
+ warp_def 12, 3, 3, 5, GraniteCave_B1F
+ warp_def 29, 2, 3, 6, GraniteCave_B1F
+
+GraniteCave_B2F_MapBGEvents:: @ 838C0EC
+ bg_event 28, 6, 3, 7, 0, ITEM_EVERSTONE, 48, 0
+ bg_event 15, 11, 3, 7, 0, ITEM_EVERSTONE, 49, 0
+
+GraniteCave_B2F_MapEvents:: @ 838C104
+ map_events GraniteCave_B2F_MapObjects, GraniteCave_B2F_MapWarps, 0x0, GraniteCave_B2F_MapBGEvents
+
diff --git a/data/maps/events/GraniteCave_StevensRoom.s b/data/maps/events/GraniteCave_StevensRoom.s
new file mode 100644
index 000000000..812b0fc27
--- /dev/null
+++ b/data/maps/events/GraniteCave_StevensRoom.s
@@ -0,0 +1,9 @@
+GraniteCave_StevensRoom_MapObjects:: @ 838C118
+ object_event 1, MAP_OBJ_GFX_STEVEN, 0, 7, 0, 8, 0, 3, 1, 0, 0, 0, 0, 0, 0, GraniteCave_StevensRoom_EventScript_15CBFA, 833, 0, 0
+
+GraniteCave_StevensRoom_MapWarps:: @ 838C130
+ warp_def 7, 3, 3, 3, GraniteCave_1F
+
+GraniteCave_StevensRoom_MapEvents:: @ 838C138
+ map_events GraniteCave_StevensRoom_MapObjects, GraniteCave_StevensRoom_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/InsideOfTruck.s b/data/maps/events/InsideOfTruck.s
new file mode 100644
index 000000000..f0531d1dc
--- /dev/null
+++ b/data/maps/events/InsideOfTruck.s
@@ -0,0 +1,25 @@
+InsideOfTruck_MapObjects:: @ 8391618
+ object_event 1, MAP_OBJ_GFX_MOVING_BOX, 0, 0, 0, 0, 0, 8, 8, 0, 0, 0, 0, 0, 0, InsideOfTruck_EventScript_15FC8B, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MOVING_BOX, 0, 0, 0, 3, 0, 8, 8, 0, 0, 0, 0, 0, 0, InsideOfTruck_EventScript_15FC8B, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MOVING_BOX, 0, 2, 0, 3, 0, 8, 8, 0, 0, 0, 0, 0, 0, InsideOfTruck_EventScript_15FC8B, 0, 0, 0
+
+InsideOfTruck_MapWarps:: @ 8391660
+ warp_def 4, 1, 0, 127, NONE
+ warp_def 4, 2, 0, 127, NONE
+ warp_def 4, 3, 0, 127, NONE
+
+InsideOfTruck_MapCoordEvents:: @ 8391678
+ coord_event 3, 1, 3, 0, 0x4092, 0, 0, InsideOfTruck_EventScript_15FC29
+ coord_event 3, 2, 3, 0, 0x4092, 0, 0, InsideOfTruck_EventScript_15FC29
+ coord_event 3, 3, 3, 0, 0x4092, 0, 0, InsideOfTruck_EventScript_15FC29
+
+InsideOfTruck_MapBGEvents:: @ 83916A8
+ bg_event 1, 0, 0, 0, 0, InsideOfTruck_EventScript_15FC8B
+ bg_event 3, 4, 0, 0, 0, InsideOfTruck_EventScript_15FC8B
+ bg_event 2, 3, 0, 0, 0, InsideOfTruck_EventScript_15FC8B
+ bg_event 0, 1, 0, 0, 0, InsideOfTruck_EventScript_15FC8B
+ bg_event 0, 2, 0, 0, 0, InsideOfTruck_EventScript_15FC8B
+
+InsideOfTruck_MapEvents:: @ 83916E4
+ map_events InsideOfTruck_MapObjects, InsideOfTruck_MapWarps, InsideOfTruck_MapCoordEvents, InsideOfTruck_MapBGEvents
+
diff --git a/data/maps/events/IslandCave.s b/data/maps/events/IslandCave.s
new file mode 100644
index 000000000..72f7b9266
--- /dev/null
+++ b/data/maps/events/IslandCave.s
@@ -0,0 +1,16 @@
+IslandCave_MapObjects:: @ 838E674
+ object_event 1, MAP_OBJ_GFX_REGICE, 0, 8, 0, 7, 0, 3, 8, 0, 0, 0, 0, 0, 0, IslandCave_EventScript_15EF9D, 936, 0, 0
+
+IslandCave_MapWarps:: @ 838E68C
+ warp_def 8, 29, 3, 0, Route105
+ warp_def 8, 20, 0, 2, IslandCave
+ warp_def 8, 11, 3, 1, IslandCave
+
+IslandCave_MapBGEvents:: @ 838E6A4
+ bg_event 8, 20, 0, 0, 0, IslandCave_EventScript_15EF59
+ bg_event 7, 20, 0, 0, 0, IslandCave_EventScript_15EF7C
+ bg_event 9, 20, 0, 0, 0, IslandCave_EventScript_15EF7C
+
+IslandCave_MapEvents:: @ 838E6C8
+ map_events IslandCave_MapObjects, IslandCave_MapWarps, 0x0, IslandCave_MapBGEvents
+
diff --git a/data/maps/events/JaggedPass.s b/data/maps/events/JaggedPass.s
new file mode 100644
index 000000000..8267f504d
--- /dev/null
+++ b/data/maps/events/JaggedPass.s
@@ -0,0 +1,26 @@
+JaggedPass_MapObjects:: @ 838C61C
+ object_event 1, MAP_OBJ_GFX_HIKER, 0, 8, 0, 18, 0, 3, 8, 0, 0, 1, 0, 3, 0, JaggedPass_EventScript_15D285, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_CAMPER, 0, 16, 0, 22, 0, 3, 14, 0, 0, 1, 0, 2, 0, JaggedPass_EventScript_15D2DA, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_ITEM_BALL, 0, 23, 0, 24, 0, 3, 1, 0, 0, 0, 0, 0, 0, JaggedPass_EventScript_1B17D4, 1070, 0, 0
+ object_event 4, MAP_OBJ_GFX_PICNICKER, 0, 13, 0, 35, 0, 3, 15, 17, 0, 1, 0, 3, 0, JaggedPass_EventScript_15D29C, 0, 0, 0
+
+JaggedPass_MapWarps:: @ 838C67C
+ warp_def 14, 40, 3, 2, Route112
+ warp_def 15, 40, 3, 3, Route112
+ warp_def 13, 5, 3, 2, MtChimney
+ warp_def 14, 5, 3, 3, MtChimney
+
+JaggedPass_MapCoordEvents:: @ 838C69C
+ coord_event 13, 15, 3, 0, 2, 0, 0, 0x0
+ coord_event 21, 12, 3, 0, 8, 0, 0, 0x0
+ coord_event 14, 15, 3, 0, 2, 0, 0, 0x0
+ coord_event 18, 17, 3, 0, 2, 0, 0, 0x0
+ coord_event 22, 19, 3, 0, 2, 0, 0, 0x0
+
+JaggedPass_MapBGEvents:: @ 838C6EC
+ bg_event 8, 10, 3, 7, 0, ITEM_FULL_HEAL, 77, 0
+ bg_event 7, 29, 3, 7, 0, ITEM_GREAT_BALL, 76, 0
+
+JaggedPass_MapEvents:: @ 838C704
+ map_events JaggedPass_MapObjects, JaggedPass_MapWarps, JaggedPass_MapCoordEvents, JaggedPass_MapBGEvents
+
diff --git a/data/maps/events/LavaridgeTown.s b/data/maps/events/LavaridgeTown.s
new file mode 100644
index 000000000..dc9c8c05f
--- /dev/null
+++ b/data/maps/events/LavaridgeTown.s
@@ -0,0 +1,35 @@
+LavaridgeTown_MapObjects:: @ 8380C78
+ object_event 1, MAP_OBJ_GFX_OLD_WOMAN_1, 0, 8, 0, 7, 0, 3, 8, 0, 0, 0, 0, 0, 0, LavaridgeTown_EventScript_14E751, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_OLD_MAN_1, 0, 5, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, LavaridgeTown_EventScript_14E724, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_OLD_MAN_2, 0, 5, 0, 8, 0, 3, 8, 0, 0, 0, 0, 0, 0, LavaridgeTown_EventScript_14E72D, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_LITTLE_GIRL_1, 0, 10, 0, 13, 0, 3, 3, 32, 0, 0, 0, 0, 0, LavaridgeTown_EventScript_14E736, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_HOT_SPRINGS_OLD_WOMAN, 0, 4, 0, 4, 0, 3, 18, 0, 0, 0, 0, 0, 0, LavaridgeTown_EventScript_14E73F, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_HOT_SPRINGS_OLD_WOMAN, 0, 5, 0, 4, 0, 3, 17, 0, 0, 0, 0, 0, 0, LavaridgeTown_EventScript_14E748, 0, 0, 0
+ object_event 7, 243, 0, 6, 0, 16, 0, 3, 9, 0, 0, 0, 0, 0, 0, 0x0, 930, 0, 0
+ object_event 8, 240, 0, 12, 0, 15, 0, 0, 8, 0, 0, 0, 0, 0, 0, LavaridgeTown_EventScript_14E575, 929, 0, 0
+ object_event 9, MAP_OBJ_GFX_OLD_WOMAN_1, 0, 4, 0, 7, 0, 3, 8, 17, 0, 0, 0, 0, 0, LavaridgeTown_EventScript_14E75A, 0, 0, 0
+
+LavaridgeTown_MapWarps:: @ 8380D50
+ warp_def 12, 15, 0, 0, LavaridgeTown_HerbShop
+ warp_def 5, 15, 0, 0, LavaridgeTown_Gym_1F
+ warp_def 15, 5, 0, 0, LavaridgeTown_Mart
+ warp_def 9, 6, 0, 0, LavaridgeTown_PokemonCenter_1F
+ warp_def 16, 15, 0, 0, LavaridgeTown_House
+ warp_def 9, 2, 3, 3, LavaridgeTown_PokemonCenter_1F
+
+LavaridgeTown_MapCoordEvents:: @ 8380D80
+ coord_event 6, 3, 3, 0, 0, 0, 0, LavaridgeTown_EventScript_14E710
+
+LavaridgeTown_MapBGEvents:: @ 8380D90
+ bg_event 14, 16, 0, 0, 0, LavaridgeTown_EventScript_14E7D7
+ bg_event 7, 15, 0, 0, 0, LavaridgeTown_EventScript_14E7C5
+ bg_event 17, 5, 0, 1, 0, LavaridgeTown_EventScript_1A00E1
+ bg_event 13, 8, 0, 0, 0, LavaridgeTown_EventScript_14E7BC
+ bg_event 10, 6, 0, 1, 0, LavaridgeTown_EventScript_1A00EA
+ bg_event 16, 5, 0, 1, 0, LavaridgeTown_EventScript_1A00E1
+ bg_event 11, 6, 0, 1, 0, LavaridgeTown_EventScript_1A00EA
+ bg_event 4, 5, 3, 7, 0, ITEM_ICE_HEAL, 0, 0
+
+LavaridgeTown_MapEvents:: @ 8380DF0
+ map_events LavaridgeTown_MapObjects, LavaridgeTown_MapWarps, LavaridgeTown_MapCoordEvents, LavaridgeTown_MapBGEvents
+
diff --git a/data/maps/events/LavaridgeTown_Gym_1F.s b/data/maps/events/LavaridgeTown_Gym_1F.s
new file mode 100644
index 000000000..2c28aaf2b
--- /dev/null
+++ b/data/maps/events/LavaridgeTown_Gym_1F.s
@@ -0,0 +1,40 @@
+LavaridgeTown_Gym_1F_MapObjects:: @ 838625C
+ object_event 1, MAP_OBJ_GFX_FLANNERY, 0, 8, 0, 10, 0, 3, 8, 0, 0, 0, 0, 0, 0, LavaridgeTown_Gym_1F_EventScript_153741, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_6, 0, 10, 0, 19, 0, 3, 8, 0, 0, 3, 0, 1, 0, LavaridgeTown_Gym_1F_EventScript_1537CB, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MAN_4, 0, 4, 0, 17, 0, 3, 8, 0, 0, 3, 0, 1, 0, LavaridgeTown_Gym_1F_EventScript_15383E, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_MAN_6, 0, 4, 0, 12, 0, 3, 8, 0, 0, 3, 0, 1, 0, LavaridgeTown_Gym_1F_EventScript_1537ED, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_GIRL_3, 0, 0, 0, 2, 0, 3, 8, 0, 0, 3, 0, 1, 0, LavaridgeTown_Gym_1F_EventScript_153823, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_MAN_2, 0, 6, 0, 23, 0, 3, 10, 0, 0, 0, 0, 0, 0, LavaridgeTown_Gym_1F_EventScript_153859, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_MAN_6, 0, 6, 0, 2, 0, 3, 8, 0, 0, 3, 0, 1, 0, LavaridgeTown_Gym_1F_EventScript_153808, 0, 0, 0
+
+LavaridgeTown_Gym_1F_MapWarps:: @ 8386304
+ warp_def 8, 23, 3, 1, LavaridgeTown
+ warp_def 9, 23, 3, 1, LavaridgeTown
+ warp_def 3, 21, 3, 0, LavaridgeTown_Gym_B1F
+ warp_def 1, 14, 3, 2, LavaridgeTown_Gym_B1F
+ warp_def 6, 14, 3, 4, LavaridgeTown_Gym_B1F
+ warp_def 1, 6, 3, 3, LavaridgeTown_Gym_B1F
+ warp_def 9, 2, 3, 1, LavaridgeTown_Gym_B1F
+ warp_def 6, 20, 3, 5, LavaridgeTown_Gym_B1F
+ warp_def 0, 23, 3, 6, LavaridgeTown_Gym_B1F
+ warp_def 0, 17, 3, 7, LavaridgeTown_Gym_B1F
+ warp_def 4, 17, 3, 8, LavaridgeTown_Gym_B1F
+ warp_def 0, 11, 3, 9, LavaridgeTown_Gym_B1F
+ warp_def 4, 12, 3, 10, LavaridgeTown_Gym_B1F
+ warp_def 4, 9, 3, 11, LavaridgeTown_Gym_B1F
+ warp_def 0, 2, 3, 12, LavaridgeTown_Gym_B1F
+ warp_def 4, 6, 3, 13, LavaridgeTown_Gym_B1F
+ warp_def 4, 2, 3, 14, LavaridgeTown_Gym_B1F
+ warp_def 10, 19, 3, 15, LavaridgeTown_Gym_B1F
+ warp_def 10, 14, 3, 16, LavaridgeTown_Gym_B1F
+ warp_def 6, 6, 3, 17, LavaridgeTown_Gym_B1F
+ warp_def 6, 2, 3, 18, LavaridgeTown_Gym_B1F
+ warp_def 10, 6, 3, 19, LavaridgeTown_Gym_B1F
+
+LavaridgeTown_Gym_1F_MapBGEvents:: @ 83863B4
+ bg_event 6, 17, 0, 1, 0, LavaridgeTown_Gym_1F_EventScript_153878
+ bg_event 10, 17, 0, 1, 0, LavaridgeTown_Gym_1F_EventScript_153888
+
+LavaridgeTown_Gym_1F_MapEvents:: @ 83863CC
+ map_events LavaridgeTown_Gym_1F_MapObjects, LavaridgeTown_Gym_1F_MapWarps, 0x0, LavaridgeTown_Gym_1F_MapBGEvents
+
diff --git a/data/maps/events/LavaridgeTown_Gym_B1F.s b/data/maps/events/LavaridgeTown_Gym_B1F.s
new file mode 100644
index 000000000..e3147dcb8
--- /dev/null
+++ b/data/maps/events/LavaridgeTown_Gym_B1F.s
@@ -0,0 +1,25 @@
+LavaridgeTown_Gym_B1F_MapWarps:: @ 83863E0
+ warp_def 3, 21, 3, 2, LavaridgeTown_Gym_1F
+ warp_def 9, 2, 3, 6, LavaridgeTown_Gym_1F
+ warp_def 1, 14, 3, 3, LavaridgeTown_Gym_1F
+ warp_def 1, 6, 3, 5, LavaridgeTown_Gym_1F
+ warp_def 6, 14, 3, 4, LavaridgeTown_Gym_1F
+ warp_def 6, 20, 3, 7, LavaridgeTown_Gym_1F
+ warp_def 0, 23, 3, 8, LavaridgeTown_Gym_1F
+ warp_def 0, 17, 3, 9, LavaridgeTown_Gym_1F
+ warp_def 4, 17, 3, 10, LavaridgeTown_Gym_1F
+ warp_def 0, 11, 3, 11, LavaridgeTown_Gym_1F
+ warp_def 4, 12, 3, 12, LavaridgeTown_Gym_1F
+ warp_def 4, 9, 3, 13, LavaridgeTown_Gym_1F
+ warp_def 0, 2, 3, 14, LavaridgeTown_Gym_1F
+ warp_def 4, 6, 3, 15, LavaridgeTown_Gym_1F
+ warp_def 4, 2, 3, 16, LavaridgeTown_Gym_1F
+ warp_def 10, 18, 3, 17, LavaridgeTown_Gym_1F
+ warp_def 10, 14, 3, 18, LavaridgeTown_Gym_1F
+ warp_def 6, 6, 3, 19, LavaridgeTown_Gym_1F
+ warp_def 6, 2, 3, 20, LavaridgeTown_Gym_1F
+ warp_def 10, 6, 3, 21, LavaridgeTown_Gym_1F
+
+LavaridgeTown_Gym_B1F_MapEvents:: @ 8386480
+ map_events 0x0, LavaridgeTown_Gym_B1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/LavaridgeTown_HerbShop.s b/data/maps/events/LavaridgeTown_HerbShop.s
new file mode 100644
index 000000000..b78ff8835
--- /dev/null
+++ b/data/maps/events/LavaridgeTown_HerbShop.s
@@ -0,0 +1,12 @@
+LavaridgeTown_HerbShop_MapObjects:: @ 83861F0
+ object_event 1, MAP_OBJ_GFX_WOMAN_3, 0, 3, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, LavaridgeTown_HerbShop_EventScript_153629, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_OLD_MAN_2, 0, 7, 0, 5, 0, 3, 1, 17, 0, 0, 0, 0, 0, LavaridgeTown_HerbShop_EventScript_153655, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_OLD_MAN_1, 0, 9, 0, 3, 0, 3, 5, 17, 0, 0, 0, 0, 0, LavaridgeTown_HerbShop_EventScript_15364C, 0, 0, 0
+
+LavaridgeTown_HerbShop_MapWarps:: @ 8386238
+ warp_def 3, 7, 0, 0, LavaridgeTown
+ warp_def 4, 7, 0, 0, LavaridgeTown
+
+LavaridgeTown_HerbShop_MapEvents:: @ 8386248
+ map_events LavaridgeTown_HerbShop_MapObjects, LavaridgeTown_HerbShop_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/LavaridgeTown_House.s b/data/maps/events/LavaridgeTown_House.s
new file mode 100644
index 000000000..ca600d8d7
--- /dev/null
+++ b/data/maps/events/LavaridgeTown_House.s
@@ -0,0 +1,11 @@
+LavaridgeTown_House_MapObjects:: @ 8386494
+ object_event 1, MAP_OBJ_GFX_OLD_MAN_2, 0, 2, 0, 3, 0, 3, 1, 17, 0, 0, 0, 0, 0, LavaridgeTown_House_EventScript_1538AE, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_ZIGZAGOON, 0, 6, 0, 6, 0, 3, 1, 17, 0, 0, 0, 0, 0, LavaridgeTown_House_EventScript_1538B7, 0, 0, 0
+
+LavaridgeTown_House_MapWarps:: @ 83864C4
+ warp_def 3, 7, 0, 4, LavaridgeTown
+ warp_def 4, 7, 0, 4, LavaridgeTown
+
+LavaridgeTown_House_MapEvents:: @ 83864D4
+ map_events LavaridgeTown_House_MapObjects, LavaridgeTown_House_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/LavaridgeTown_Mart.s b/data/maps/events/LavaridgeTown_Mart.s
new file mode 100644
index 000000000..cb5c05af5
--- /dev/null
+++ b/data/maps/events/LavaridgeTown_Mart.s
@@ -0,0 +1,12 @@
+LavaridgeTown_Mart_MapObjects:: @ 83864E8
+ object_event 1, MAP_OBJ_GFX_MART_EMPLOYEE, 0, 1, 0, 3, 0, 3, 10, 0, 0, 0, 0, 0, 0, LavaridgeTown_Mart_EventScript_1538CB, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_OLD_MAN_1, 0, 4, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, LavaridgeTown_Mart_EventScript_1538FA, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_OLD_WOMAN_2, 0, 9, 0, 5, 0, 3, 10, 0, 0, 0, 0, 0, 0, LavaridgeTown_Mart_EventScript_153903, 0, 0, 0
+
+LavaridgeTown_Mart_MapWarps:: @ 8386530
+ warp_def 3, 7, 0, 2, LavaridgeTown
+ warp_def 4, 7, 0, 2, LavaridgeTown
+
+LavaridgeTown_Mart_MapEvents:: @ 8386540
+ map_events LavaridgeTown_Mart_MapObjects, LavaridgeTown_Mart_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/LavaridgeTown_PokemonCenter_1F.s b/data/maps/events/LavaridgeTown_PokemonCenter_1F.s
new file mode 100644
index 000000000..28cac417b
--- /dev/null
+++ b/data/maps/events/LavaridgeTown_PokemonCenter_1F.s
@@ -0,0 +1,15 @@
+LavaridgeTown_PokemonCenter_1F_MapObjects:: @ 8386554
+ object_event 1, MAP_OBJ_GFX_NURSE, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, LavaridgeTown_PokemonCenter_1F_EventScript_15391B, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_YOUNGSTER, 0, 11, 0, 8, 0, 3, 7, 0, 0, 0, 0, 0, 0, LavaridgeTown_PokemonCenter_1F_EventScript_153929, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_WOMAN_4, 0, 10, 0, 6, 0, 0, 9, 0, 0, 0, 0, 0, 0, LavaridgeTown_PokemonCenter_1F_EventScript_153932, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_GENTLEMAN, 0, 1, 0, 3, 0, 3, 10, 0, 0, 0, 0, 0, 0, LavaridgeTown_PokemonCenter_1F_EventScript_15393B, 0, 0, 0
+
+LavaridgeTown_PokemonCenter_1F_MapWarps:: @ 83865B4
+ warp_def 7, 8, 3, 3, LavaridgeTown
+ warp_def 6, 8, 3, 3, LavaridgeTown
+ warp_def 1, 6, 4, 0, LavaridgeTown_PokemonCenter_2F
+ warp_def 2, 1, 0, 5, LavaridgeTown
+
+LavaridgeTown_PokemonCenter_1F_MapEvents:: @ 83865D4
+ map_events LavaridgeTown_PokemonCenter_1F_MapObjects, LavaridgeTown_PokemonCenter_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/LavaridgeTown_PokemonCenter_2F.s b/data/maps/events/LavaridgeTown_PokemonCenter_2F.s
new file mode 100644
index 000000000..b657b8759
--- /dev/null
+++ b/data/maps/events/LavaridgeTown_PokemonCenter_2F.s
@@ -0,0 +1,15 @@
+LavaridgeTown_PokemonCenter_2F_MapObjects:: @ 83865E8
+ object_event 1, MAP_OBJ_GFX_TEALA, 0, 10, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, LavaridgeTown_PokemonCenter_2F_EventScript_153960, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_TEALA, 0, 4, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, LavaridgeTown_PokemonCenter_2F_EventScript_153954, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_TEALA, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, LavaridgeTown_PokemonCenter_2F_EventScript_15395A, 0, 0, 0
+
+LavaridgeTown_PokemonCenter_2F_MapWarps:: @ 8386630
+ warp_def 1, 5, 4, 2, LavaridgeTown_PokemonCenter_1F
+ warp_def 5, 1, 0, 0, SingleBattleColosseum
+ warp_def 8, 1, 0, 0, TradeCenter
+ warp_def 11, 1, 0, 0, RecordCorner
+ warp_def 0, 0, 0, 0, DoubleBattleColosseum
+
+LavaridgeTown_PokemonCenter_2F_MapEvents:: @ 8386658
+ map_events LavaridgeTown_PokemonCenter_2F_MapObjects, LavaridgeTown_PokemonCenter_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/LilycoveCity.s b/data/maps/events/LilycoveCity.s
new file mode 100644
index 000000000..2a1034f44
--- /dev/null
+++ b/data/maps/events/LilycoveCity.s
@@ -0,0 +1,54 @@
+LilycoveCity_MapObjects:: @ 838016C
+ object_event 1, MAP_OBJ_GFX_SAILOR, 0, 32, 0, 20, 0, 3, 3, 16, 0, 0, 0, 0, 0, LilycoveCity_EventScript_14CBEF, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_GIRL_1, 0, 15, 0, 18, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_EventScript_14CBC7, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MAN_1, 0, 28, 0, 28, 0, 3, 1, 0, 0, 0, 0, 0, 0, LilycoveCity_EventScript_14CBBE, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_BOY_4, 0, 21, 0, 15, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_EventScript_14CBE6, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_MAN_2, 0, 16, 0, 9, 0, 5, 5, 1, 0, 0, 0, 0, 0, LilycoveCity_EventScript_14CC2D, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_WOMAN_3, 0, 35, 0, 27, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_EventScript_14CC0E, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_OLD_MAN_1, 0, 35, 0, 37, 0, 5, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_EventScript_14CC36, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_OLD_WOMAN_1, 0, 34, 0, 37, 0, 5, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_EventScript_14CC3F, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_OLD_MAN_1, 0, 57, 0, 17, 0, 3, 1, 0, 0, 0, 0, 0, 0, LilycoveCity_EventScript_14CC48, 0, 0, 0
+ object_event 10, 241, 0, 73, 0, 15, 0, 3, 10, 0, 0, 0, 0, 0, 0, LilycoveCity_EventScript_14CCE5, 852, 0, 0
+ object_event 11, MAP_OBJ_GFX_ITEM_BALL, 0, 61, 0, 36, 0, 5, 1, 0, 0, 0, 0, 0, 0, LilycoveCity_EventScript_1B1738, 1042, 0, 0
+ object_event 12, 241, 0, 43, 0, 18, 0, 3, 5, 1, 0, 0, 0, 0, 0, LilycoveCity_EventScript_14CD3D, 852, 0, 0
+ object_event 13, 241, 0, 46, 0, 12, 0, 3, 9, 0, 0, 0, 0, 0, 0, LilycoveCity_EventScript_14CD22, 852, 0, 0
+ object_event 14, 241, 0, 45, 0, 12, 0, 3, 10, 0, 0, 0, 0, 0, 0, LilycoveCity_EventScript_14CD2B, 852, 0, 0
+ object_event 15, 241, 0, 38, 0, 9, 0, 5, 9, 0, 0, 0, 0, 0, 0, LilycoveCity_EventScript_14CD34, 852, 0, 0
+ object_event 16, MAP_OBJ_GFX_GENTLEMAN, 0, 50, 0, 7, 0, 5, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_EventScript_14CB74, 0, 0, 0
+ object_event 17, 240, 0, 27, 0, 7, 0, 5, 8, 17, 0, 0, 0, 0, 0, LilycoveCity_EventScript_14CD46, 971, 0, 0
+
+LilycoveCity_MapWarps:: @ 8380304
+ warp_def 27, 6, 0, 0, LilycoveCity_DepartmentStore_1F
+ warp_def 37, 24, 0, 0, LilycoveCity_CoveLilyMotel_1F
+ warp_def 24, 14, 0, 0, LilycoveCity_PokemonCenter_1F
+ warp_def 11, 5, 0, 0, LilycoveCity_LilycoveMuseum_1F
+ warp_def 23, 24, 0, 0, LilycoveCity_ContestLobby
+ warp_def 39, 14, 0, 1, LilycoveCity_PokemonTrainerFanClub
+ warp_def 70, 5, 1, 0, AquaHideout_1F
+ warp_def 36, 6, 0, 0, LilycoveCity_MoveDeletersHouse
+ warp_def 42, 6, 0, 0, LilycoveCity_House1
+ warp_def 55, 15, 0, 0, LilycoveCity_House2
+ warp_def 11, 22, 0, 0, LilycoveCity_House3
+ warp_def 12, 14, 0, 0, LilycoveCity_House4
+ warp_def 12, 32, 0, 0, LilycoveCity_Harbor
+ warp_def 12, 5, 0, 1, LilycoveCity_LilycoveMuseum_1F
+ warp_def 71, 5, 1, 0, MagmaHideout_1F
+
+LilycoveCity_MapBGEvents:: @ 838037C
+ bg_event 19, 7, 0, 0, 0, LilycoveCity_EventScript_14CC82
+ bg_event 25, 14, 0, 1, 0, LilycoveCity_EventScript_1A00EA
+ bg_event 29, 7, 0, 0, 0, LilycoveCity_EventScript_14CCD3
+ bg_event 26, 14, 0, 1, 0, LilycoveCity_EventScript_1A00EA
+ bg_event 6, 15, 0, 0, 0, LilycoveCity_EventScript_14CC67
+ bg_event 29, 24, 0, 0, 0, LilycoveCity_EventScript_14CC70
+ bg_event 35, 24, 0, 0, 0, LilycoveCity_EventScript_14CC79
+ bg_event 6, 30, 3, 0, 0, LilycoveCity_EventScript_14CCAC
+ bg_event 36, 14, 0, 0, 0, LilycoveCity_EventScript_14CCCA
+ bg_event 34, 6, 0, 0, 0, LilycoveCity_EventScript_14CCDC
+ bg_event 36, 31, 3, 7, 0, ITEM_HEART_SCALE, 27, 0
+ bg_event 61, 7, 0, 7, 0, ITEM_PP_UP, 43, 0
+ bg_event 64, 31, 0, 7, 0, ITEM_POKE_BALL, 75, 0
+
+LilycoveCity_MapEvents:: @ 8380418
+ map_events LilycoveCity_MapObjects, LilycoveCity_MapWarps, 0x0, LilycoveCity_MapBGEvents
+
diff --git a/data/maps/events/LilycoveCity_ContestHall.s b/data/maps/events/LilycoveCity_ContestHall.s
new file mode 100644
index 000000000..e99ba1f1a
--- /dev/null
+++ b/data/maps/events/LilycoveCity_ContestHall.s
@@ -0,0 +1,51 @@
+LilycoveCity_ContestHall_MapObjects:: @ 8389A18
+ object_event 1, MAP_OBJ_GFX_BOY_1, 0, 30, 0, 30, 0, 3, 2, 68, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_15909B, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_BOY_3, 0, 11, 0, 7, 0, 3, 2, 51, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_1590A4, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_GIRL_3, 0, 40, 0, 8, 0, 3, 2, 34, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_1590AD, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_WOMAN_4, 0, 12, 0, 22, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_1590BF, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_CONTEST_JUDGE, 0, 15, 0, 22, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_1590D4, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_BLACK_BELT, 0, 10, 0, 25, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_1590E9, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_OLD_MAN_1, 0, 12, 0, 25, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_1590FE, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_MANIAC, 0, 14, 0, 25, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_159113, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_WOMAN_6, 0, 16, 0, 25, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_159128, 0, 0, 0
+ object_event 10, MAP_OBJ_GFX_OLD_WOMAN_1, 0, 8, 0, 24, 0, 3, 10, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_15913D, 0, 0, 0
+ object_event 11, MAP_OBJ_GFX_WOMAN_7, 0, 18, 0, 24, 0, 3, 9, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_159170, 0, 0, 0
+ object_event 12, MAP_OBJ_GFX_BOY_1, 0, 8, 0, 22, 0, 3, 10, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_159146, 0, 0, 0
+ object_event 13, MAP_OBJ_GFX_WOMAN_4, 0, 24, 0, 10, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_159185, 0, 0, 0
+ object_event 14, MAP_OBJ_GFX_CONTEST_JUDGE, 0, 27, 0, 10, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_15919A, 0, 0, 0
+ object_event 15, MAP_OBJ_GFX_WOMAN_5, 0, 22, 0, 13, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_1591AF, 0, 0, 0
+ object_event 16, MAP_OBJ_GFX_LITTLE_GIRL_1, 0, 24, 0, 13, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_1591C4, 0, 0, 0
+ object_event 17, MAP_OBJ_GFX_PSYCHIC_M, 0, 26, 0, 13, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_1591D9, 0, 0, 0
+ object_event 18, MAP_OBJ_GFX_WOMAN_2, 0, 28, 0, 13, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_1591EE, 0, 0, 0
+ object_event 19, MAP_OBJ_GFX_WOMAN_3, 0, 20, 0, 10, 0, 3, 10, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_159203, 0, 0, 0
+ object_event 20, MAP_OBJ_GFX_WOMAN_1, 0, 30, 0, 11, 0, 3, 9, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_15922D, 0, 0, 0
+ object_event 21, MAP_OBJ_GFX_MAN_1, 0, 26, 0, 8, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_159218, 0, 0, 0
+ object_event 22, MAP_OBJ_GFX_CAMPER, 0, 13, 0, 20, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_15915B, 0, 0, 0
+ object_event 23, MAP_OBJ_GFX_WOMAN_4, 0, 36, 0, 22, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_159242, 0, 0, 0
+ object_event 24, MAP_OBJ_GFX_CONTEST_JUDGE, 0, 39, 0, 22, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_159257, 0, 0, 0
+ object_event 25, MAP_OBJ_GFX_BOY_2, 0, 34, 0, 25, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_15926C, 0, 0, 0
+ object_event 26, MAP_OBJ_GFX_GIRL_2, 0, 36, 0, 25, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_159281, 0, 0, 0
+ object_event 27, MAP_OBJ_GFX_BOY_3, 0, 38, 0, 25, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_159296, 0, 0, 0
+ object_event 28, MAP_OBJ_GFX_OLD_WOMAN_1, 0, 40, 0, 25, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_1592AB, 0, 0, 0
+ object_event 29, MAP_OBJ_GFX_WOMAN_3, 0, 32, 0, 23, 0, 3, 10, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_1592C0, 0, 0, 0
+ object_event 30, MAP_OBJ_GFX_MAN_1, 0, 37, 0, 20, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_1592F7, 0, 0, 0
+ object_event 31, MAP_OBJ_GFX_LITTLE_GIRL_2, 0, 42, 0, 24, 0, 3, 9, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_1592E2, 0, 0, 0
+ object_event 32, MAP_OBJ_GFX_SAILOR, 0, 23, 0, 26, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_ContestHall_EventScript_1590B6, 0, 0, 0
+
+LilycoveCity_ContestHall_MapWarps:: @ 8389D18
+ warp_def 19, 32, 0, 2, LilycoveCity_ContestLobby
+ warp_def 30, 32, 0, 3, LilycoveCity_ContestLobby
+ warp_def 20, 32, 0, 2, LilycoveCity_ContestLobby
+ warp_def 31, 32, 0, 3, LilycoveCity_ContestLobby
+
+LilycoveCity_ContestHall_MapBGEvents:: @ 8389D38
+ bg_event 27, 16, 0, 0, 0, LilycoveCity_ContestHall_EventScript_15930C
+ bg_event 39, 28, 0, 0, 0, LilycoveCity_ContestHall_EventScript_159315
+ bg_event 11, 28, 0, 0, 0, LilycoveCity_ContestHall_EventScript_15931E
+ bg_event 15, 28, 0, 0, 0, LilycoveCity_ContestHall_EventScript_15931E
+ bg_event 23, 16, 0, 0, 0, LilycoveCity_ContestHall_EventScript_15930C
+ bg_event 35, 28, 0, 0, 0, LilycoveCity_ContestHall_EventScript_159315
+
+LilycoveCity_ContestHall_MapEvents:: @ 8389D80
+ map_events LilycoveCity_ContestHall_MapObjects, LilycoveCity_ContestHall_MapWarps, 0x0, LilycoveCity_ContestHall_MapBGEvents
+
diff --git a/data/maps/events/LilycoveCity_ContestLobby.s b/data/maps/events/LilycoveCity_ContestLobby.s
new file mode 100644
index 000000000..480cabfce
--- /dev/null
+++ b/data/maps/events/LilycoveCity_ContestLobby.s
@@ -0,0 +1,33 @@
+LilycoveCity_ContestLobby_MapObjects:: @ 838984C
+ object_event 1, MAP_OBJ_GFX_TEALA, 0, 6, 0, 2, 0, 3, 8, 17, 0, 0, 0, 0, 0, LilycoveCity_ContestLobby_EventScript_158EB0, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_TEALA, 0, 7, 0, 2, 0, 3, 8, 17, 0, 0, 0, 0, 0, LilycoveCity_ContestLobby_EventScript_158B85, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_OLD_MAN_1, 0, 17, 0, 9, 0, 3, 10, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestLobby_EventScript_1B77AB, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_ARTIST, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0x0, 774, 0, 0
+ object_event 5, MAP_OBJ_GFX_BLACK_BELT, 0, 14, 0, 6, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_ContestLobby_EventScript_15901E, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_GIRL_2, 0, 3, 0, 10, 0, 3, 2, 34, 0, 0, 0, 0, 0, LilycoveCity_ContestLobby_EventScript_159027, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_ARTIST, 0, 20, 0, 2, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_ContestLobby_EventScript_159042, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_REPORTER_M, 0, 8, 0, 10, 0, 3, 9, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestLobby_EventScript_1AE0B6, 802, 0, 0
+ object_event 9, MAP_OBJ_GFX_BOY_1, 0, 18, 0, 8, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestLobby_EventScript_15907B, 0, 0, 0
+ object_event 10, MAP_OBJ_GFX_GIRL_1, 0, 19, 0, 9, 0, 3, 9, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestLobby_EventScript_159084, 0, 0, 0
+ object_event 11, MAP_OBJ_GFX_ARTIST, 0, 13, 0, 1, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0x0, 895, 0, 0
+ object_event 12, MAP_OBJ_GFX_FISHERMAN, 0, 13, 0, 10, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_ContestLobby_EventScript_159054, 0, 0, 0
+ object_event 13, MAP_OBJ_GFX_FAT_MAN, 0, 1, 0, 6, 0, 3, 10, 0, 0, 0, 0, 0, 0, LilycoveCity_ContestLobby_EventScript_15904B, 0, 0, 0
+ object_event 14, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 7, 0, 7, 0, 3, 3, 16, 0, 0, 0, 0, 0, LilycoveCity_ContestLobby_EventScript_15905D, 0, 0, 0
+
+LilycoveCity_ContestLobby_MapWarps:: @ 838999C
+ warp_def 6, 11, 0, 4, LilycoveCity
+ warp_def 7, 11, 0, 4, LilycoveCity
+ warp_def 1, 1, 0, 0, LilycoveCity_ContestHall
+ warp_def 13, 1, 0, 1, LilycoveCity_ContestHall
+
+LilycoveCity_ContestLobby_MapBGEvents:: @ 83899BC
+ bg_event 18, 5, 0, 0, 0, LilycoveCity_ContestLobby_EventScript_1B7835
+ bg_event 18, 9, 0, 0, 0, LilycoveCity_ContestLobby_EventScript_1B7659
+ bg_event 15, 1, 0, 0, 0, LilycoveCity_ContestLobby_EventScript_159066
+ bg_event 17, 1, 0, 0, 0, LilycoveCity_ContestLobby_EventScript_15906D
+ bg_event 19, 1, 0, 0, 0, LilycoveCity_ContestLobby_EventScript_159074
+ bg_event 22, 1, 0, 0, 0, LilycoveCity_ContestLobby_EventScript_15908D
+
+LilycoveCity_ContestLobby_MapEvents:: @ 8389A04
+ map_events LilycoveCity_ContestLobby_MapObjects, LilycoveCity_ContestLobby_MapWarps, 0x0, LilycoveCity_ContestLobby_MapBGEvents
+
diff --git a/data/maps/events/LilycoveCity_CoveLilyMotel_1F.s b/data/maps/events/LilycoveCity_CoveLilyMotel_1F.s
new file mode 100644
index 000000000..44c7d612a
--- /dev/null
+++ b/data/maps/events/LilycoveCity_CoveLilyMotel_1F.s
@@ -0,0 +1,14 @@
+LilycoveCity_CoveLilyMotel_1F_MapObjects:: @ 8389464
+ object_event 1, MAP_OBJ_GFX_MAN_1, 0, 10, 0, 3, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_CoveLilyMotel_1F_EventScript_1582C5, 0, 0, 0
+
+LilycoveCity_CoveLilyMotel_1F_MapWarps:: @ 838947C
+ warp_def 5, 8, 0, 1, LilycoveCity
+ warp_def 6, 8, 0, 1, LilycoveCity
+ warp_def 2, 1, 0, 0, LilycoveCity_CoveLilyMotel_2F
+
+LilycoveCity_CoveLilyMotel_1F_MapCoordEvents:: @ 8389494
+ coord_event 10, 2, 3, 0, 0x4001, 0, 0, LilycoveCity_CoveLilyMotel_1F_EventScript_15834D
+
+LilycoveCity_CoveLilyMotel_1F_MapEvents:: @ 83894A4
+ map_events LilycoveCity_CoveLilyMotel_1F_MapObjects, LilycoveCity_CoveLilyMotel_1F_MapWarps, LilycoveCity_CoveLilyMotel_1F_MapCoordEvents, 0x0
+
diff --git a/data/maps/events/LilycoveCity_CoveLilyMotel_2F.s b/data/maps/events/LilycoveCity_CoveLilyMotel_2F.s
new file mode 100644
index 000000000..a8cb53f84
--- /dev/null
+++ b/data/maps/events/LilycoveCity_CoveLilyMotel_2F.s
@@ -0,0 +1,14 @@
+LilycoveCity_CoveLilyMotel_2F_MapObjects:: @ 83894B8
+ object_event 1, MAP_OBJ_GFX_MAN_4, 0, 4, 0, 6, 0, 3, 9, 0, 0, 0, 0, 0, 0, LilycoveCity_CoveLilyMotel_2F_EventScript_1583A1, 925, 0, 0
+ object_event 2, MAP_OBJ_GFX_SCIENTIST_1, 0, 1, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, LilycoveCity_CoveLilyMotel_2F_EventScript_1583F7, 925, 0, 0
+ object_event 3, MAP_OBJ_GFX_FAT_MAN, 0, 7, 0, 7, 0, 3, 10, 0, 0, 0, 0, 0, 0, LilycoveCity_CoveLilyMotel_2F_EventScript_158400, 925, 0, 0
+ object_event 4, MAP_OBJ_GFX_MAN_5, 0, 10, 0, 3, 0, 3, 9, 0, 0, 0, 0, 0, 0, LilycoveCity_CoveLilyMotel_2F_EventScript_1583EE, 925, 0, 0
+ object_event 5, MAP_OBJ_GFX_BOY_5, 0, 7, 0, 3, 0, 3, 8, 17, 0, 0, 0, 0, 0, LilycoveCity_CoveLilyMotel_2F_EventScript_158412, 925, 0, 0
+ object_event 6, MAP_OBJ_GFX_WOMAN_3, 0, 4, 0, 4, 0, 3, 9, 17, 0, 0, 0, 0, 0, LilycoveCity_CoveLilyMotel_2F_EventScript_158409, 925, 0, 0
+
+LilycoveCity_CoveLilyMotel_2F_MapWarps:: @ 8389548
+ warp_def 2, 1, 0, 2, LilycoveCity_CoveLilyMotel_1F
+
+LilycoveCity_CoveLilyMotel_2F_MapEvents:: @ 8389550
+ map_events LilycoveCity_CoveLilyMotel_2F_MapObjects, LilycoveCity_CoveLilyMotel_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/LilycoveCity_DepartmentStoreElevator.s b/data/maps/events/LilycoveCity_DepartmentStoreElevator.s
new file mode 100644
index 000000000..117c0b76c
--- /dev/null
+++ b/data/maps/events/LilycoveCity_DepartmentStoreElevator.s
@@ -0,0 +1,10 @@
+LilycoveCity_DepartmentStoreElevator_MapObjects:: @ 838A624
+ object_event 1, MAP_OBJ_GFX_TEALA, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStoreElevator_EventScript_15A39C, 0, 0, 0
+
+LilycoveCity_DepartmentStoreElevator_MapWarps:: @ 838A63C
+ warp_def 1, 5, 3, 127, NONE
+ warp_def 2, 5, 3, 127, NONE
+
+LilycoveCity_DepartmentStoreElevator_MapEvents:: @ 838A64C
+ map_events LilycoveCity_DepartmentStoreElevator_MapObjects, LilycoveCity_DepartmentStoreElevator_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/LilycoveCity_DepartmentStoreRooftop.s b/data/maps/events/LilycoveCity_DepartmentStoreRooftop.s
new file mode 100644
index 000000000..849ac136e
--- /dev/null
+++ b/data/maps/events/LilycoveCity_DepartmentStoreRooftop.s
@@ -0,0 +1,15 @@
+LilycoveCity_DepartmentStoreRooftop_MapObjects:: @ 838A5A8
+ object_event 1, MAP_OBJ_GFX_MAN_2, 0, 4, 0, 4, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStoreRooftop_EventScript_15A1A0, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_4, 0, 7, 0, 5, 0, 3, 5, 1, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStoreRooftop_EventScript_15A1C4, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_ROOFTOP_SALE_WOMAN, 0, 6, 0, 1, 0, 3, 8, 17, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStoreRooftop_EventScript_15A167, 962, 0, 0
+
+LilycoveCity_DepartmentStoreRooftop_MapWarps:: @ 838A5F0
+ warp_def 13, 3, 0, 2, LilycoveCity_DepartmentStore_5F
+
+LilycoveCity_DepartmentStoreRooftop_MapBGEvents:: @ 838A5F8
+ bg_event 9, 1, 0, 0, 0, LilycoveCity_DepartmentStoreRooftop_EventScript_15A1CD
+ bg_event 10, 1, 0, 0, 0, LilycoveCity_DepartmentStoreRooftop_EventScript_15A1CD
+
+LilycoveCity_DepartmentStoreRooftop_MapEvents:: @ 838A610
+ map_events LilycoveCity_DepartmentStoreRooftop_MapObjects, LilycoveCity_DepartmentStoreRooftop_MapWarps, 0x0, LilycoveCity_DepartmentStoreRooftop_MapBGEvents
+
diff --git a/data/maps/events/LilycoveCity_DepartmentStore_1F.s b/data/maps/events/LilycoveCity_DepartmentStore_1F.s
new file mode 100644
index 000000000..5143b5d9a
--- /dev/null
+++ b/data/maps/events/LilycoveCity_DepartmentStore_1F.s
@@ -0,0 +1,20 @@
+LilycoveCity_DepartmentStore_1F_MapObjects:: @ 838A218
+ object_event 1, MAP_OBJ_GFX_BEAUTY, 0, 8, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_1F_EventScript_159D55, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_BEAUTY, 0, 10, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_1F_EventScript_159D5E, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_WOMAN_2, 0, 14, 0, 5, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_1F_EventScript_159ED7, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_LITTLE_GIRL_2, 0, 4, 0, 4, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_1F_EventScript_159EE0, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_MAN_3, 0, 3, 0, 6, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_1F_EventScript_159EE9, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_AZUMARILL, 0, 2, 0, 6, 0, 3, 1, 17, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_1F_EventScript_159EF2, 0, 0, 0
+
+LilycoveCity_DepartmentStore_1F_MapWarps:: @ 838A2A8
+ warp_def 8, 7, 0, 0, LilycoveCity
+ warp_def 9, 7, 0, 0, LilycoveCity
+ warp_def 16, 1, 0, 0, LilycoveCity_DepartmentStore_2F
+ warp_def 2, 1, 0, 0, LilycoveCity_DepartmentStoreElevator
+
+LilycoveCity_DepartmentStore_1F_MapBGEvents:: @ 838A2C8
+ bg_event 0, 8, 0, 1, 0, LilycoveCity_DepartmentStore_1F_EventScript_159F05
+
+LilycoveCity_DepartmentStore_1F_MapEvents:: @ 838A2D4
+ map_events LilycoveCity_DepartmentStore_1F_MapObjects, LilycoveCity_DepartmentStore_1F_MapWarps, 0x0, LilycoveCity_DepartmentStore_1F_MapBGEvents
+
diff --git a/data/maps/events/LilycoveCity_DepartmentStore_2F.s b/data/maps/events/LilycoveCity_DepartmentStore_2F.s
new file mode 100644
index 000000000..ffda16328
--- /dev/null
+++ b/data/maps/events/LilycoveCity_DepartmentStore_2F.s
@@ -0,0 +1,15 @@
+LilycoveCity_DepartmentStore_2F_MapObjects:: @ 838A2E8
+ object_event 1, MAP_OBJ_GFX_COOK, 0, 8, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_2F_EventScript_159F0F, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_2, 0, 0, 0, 5, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_2F_EventScript_159F18, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_SAILOR, 0, 13, 0, 5, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_2F_EventScript_159F21, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_WOMAN_4, 0, 10, 0, 6, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_2F_EventScript_159F5E, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_WOMAN_4, 0, 7, 0, 6, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_2F_EventScript_159F2A, 0, 0, 0
+
+LilycoveCity_DepartmentStore_2F_MapWarps:: @ 838A360
+ warp_def 16, 1, 0, 2, LilycoveCity_DepartmentStore_1F
+ warp_def 13, 1, 0, 0, LilycoveCity_DepartmentStore_3F
+ warp_def 2, 1, 0, 0, LilycoveCity_DepartmentStoreElevator
+
+LilycoveCity_DepartmentStore_2F_MapEvents:: @ 838A378
+ map_events LilycoveCity_DepartmentStore_2F_MapObjects, LilycoveCity_DepartmentStore_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/LilycoveCity_DepartmentStore_3F.s b/data/maps/events/LilycoveCity_DepartmentStore_3F.s
new file mode 100644
index 000000000..d904058d2
--- /dev/null
+++ b/data/maps/events/LilycoveCity_DepartmentStore_3F.s
@@ -0,0 +1,15 @@
+LilycoveCity_DepartmentStore_3F_MapObjects:: @ 838A38C
+ object_event 1, MAP_OBJ_GFX_RUNNING_TRIATHLETE_M, 0, 0, 0, 5, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_3F_EventScript_159FE2, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_3, 0, 7, 0, 7, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_3F_EventScript_159FEB, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_WOMAN_7, 0, 13, 0, 5, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_3F_EventScript_159FF4, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_WOMAN_4, 0, 8, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_3F_EventScript_159F91, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_WOMAN_4, 0, 10, 0, 2, 0, 3, 8, 17, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_3F_EventScript_159FB8, 0, 0, 0
+
+LilycoveCity_DepartmentStore_3F_MapWarps:: @ 838A404
+ warp_def 13, 1, 0, 1, LilycoveCity_DepartmentStore_2F
+ warp_def 16, 1, 0, 0, LilycoveCity_DepartmentStore_4F
+ warp_def 2, 1, 0, 0, LilycoveCity_DepartmentStoreElevator
+
+LilycoveCity_DepartmentStore_3F_MapEvents:: @ 838A41C
+ map_events LilycoveCity_DepartmentStore_3F_MapObjects, LilycoveCity_DepartmentStore_3F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/LilycoveCity_DepartmentStore_4F.s b/data/maps/events/LilycoveCity_DepartmentStore_4F.s
new file mode 100644
index 000000000..8f5a468ef
--- /dev/null
+++ b/data/maps/events/LilycoveCity_DepartmentStore_4F.s
@@ -0,0 +1,15 @@
+LilycoveCity_DepartmentStore_4F_MapObjects:: @ 838A430
+ object_event 1, MAP_OBJ_GFX_GENTLEMAN, 0, 0, 0, 2, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_4F_EventScript_159FFE, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_3, 0, 6, 0, 2, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_4F_EventScript_15A007, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_YOUNGSTER, 0, 13, 0, 4, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_4F_EventScript_15A010, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_WOMAN_4, 0, 7, 0, 6, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_4F_EventScript_15A019, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_WOMAN_4, 0, 9, 0, 6, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_4F_EventScript_15A03C, 0, 0, 0
+
+LilycoveCity_DepartmentStore_4F_MapWarps:: @ 838A4A8
+ warp_def 16, 1, 0, 1, LilycoveCity_DepartmentStore_3F
+ warp_def 13, 1, 0, 0, LilycoveCity_DepartmentStore_5F
+ warp_def 2, 1, 0, 0, LilycoveCity_DepartmentStoreElevator
+
+LilycoveCity_DepartmentStore_4F_MapEvents:: @ 838A4C0
+ map_events LilycoveCity_DepartmentStore_4F_MapObjects, LilycoveCity_DepartmentStore_4F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/LilycoveCity_DepartmentStore_5F.s b/data/maps/events/LilycoveCity_DepartmentStore_5F.s
new file mode 100644
index 000000000..a24138ca2
--- /dev/null
+++ b/data/maps/events/LilycoveCity_DepartmentStore_5F.s
@@ -0,0 +1,17 @@
+LilycoveCity_DepartmentStore_5F_MapObjects:: @ 838A4D4
+ object_event 1, MAP_OBJ_GFX_LITTLE_GIRL_2, 0, 1, 0, 6, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_5F_EventScript_15A136, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_2, 0, 7, 0, 7, 0, 3, 17, 17, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_5F_EventScript_15A124, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_WOMAN_4, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_5F_EventScript_15A061, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_WOMAN_4, 0, 9, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_5F_EventScript_15A094, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_WOMAN_4, 0, 15, 0, 6, 0, 3, 9, 0, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_5F_EventScript_15A0C2, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_WOMAN_4, 0, 17, 0, 6, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_5F_EventScript_15A0F2, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_WOMAN_3, 0, 9, 0, 5, 0, 3, 10, 17, 0, 0, 0, 0, 0, LilycoveCity_DepartmentStore_5F_EventScript_15A12D, 0, 0, 0
+
+LilycoveCity_DepartmentStore_5F_MapWarps:: @ 838A57C
+ warp_def 13, 1, 0, 1, LilycoveCity_DepartmentStore_4F
+ warp_def 2, 1, 0, 0, LilycoveCity_DepartmentStoreElevator
+ warp_def 16, 1, 0, 0, LilycoveCity_DepartmentStoreRooftop
+
+LilycoveCity_DepartmentStore_5F_MapEvents:: @ 838A594
+ map_events LilycoveCity_DepartmentStore_5F_MapObjects, LilycoveCity_DepartmentStore_5F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/LilycoveCity_EmptyMap.s b/data/maps/events/LilycoveCity_EmptyMap.s
new file mode 100644
index 000000000..b3bbd3805
--- /dev/null
+++ b/data/maps/events/LilycoveCity_EmptyMap.s
@@ -0,0 +1,6 @@
+LilycoveCity_EmptyMap_MapWarps:: @ 838A028
+ warp_def 7, 5, 0, 2, LilycoveCity_Harbor
+
+LilycoveCity_EmptyMap_MapEvents:: @ 838A030
+ map_events 0x0, LilycoveCity_EmptyMap_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/LilycoveCity_Harbor.s b/data/maps/events/LilycoveCity_Harbor.s
new file mode 100644
index 000000000..01664e2d6
--- /dev/null
+++ b/data/maps/events/LilycoveCity_Harbor.s
@@ -0,0 +1,15 @@
+LilycoveCity_Harbor_MapObjects:: @ 8389F94
+ object_event 1, MAP_OBJ_GFX_BEAUTY, 0, 8, 0, 10, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_Harbor_EventScript_1598A2, 908, 0, 0
+ object_event 2, MAP_OBJ_GFX_SS_TIDAL, 0, 8, 0, 9, 0, 1, 10, 0, 0, 0, 0, 0, 0, 0x0, 861, 0, 0
+ object_event 3, MAP_OBJ_GFX_SAILOR, 0, 3, 0, 13, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_Harbor_EventScript_159A8D, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_SAILOR, 0, 8, 0, 10, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 909, 0, 0
+
+LilycoveCity_Harbor_MapWarps:: @ 8389FF4
+ warp_def 11, 14, 0, 12, LilycoveCity
+ warp_def 12, 14, 0, 12, LilycoveCity
+ warp_def 20, 15, 0, 0, LilycoveCity_EmptyMap
+ warp_def 21, 15, 0, 0, LilycoveCity_EmptyMap
+
+LilycoveCity_Harbor_MapEvents:: @ 838A014
+ map_events LilycoveCity_Harbor_MapObjects, LilycoveCity_Harbor_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/LilycoveCity_House1.s b/data/maps/events/LilycoveCity_House1.s
new file mode 100644
index 000000000..85c4081a5
--- /dev/null
+++ b/data/maps/events/LilycoveCity_House1.s
@@ -0,0 +1,11 @@
+LilycoveCity_House1_MapObjects:: @ 838A080
+ object_event 1, MAP_OBJ_GFX_OLD_MAN_1, 0, 4, 0, 5, 0, 3, 9, 17, 0, 0, 0, 0, 0, LilycoveCity_House1_EventScript_159B86, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_KECLEON_1, 0, 4, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_House1_EventScript_159B8F, 0, 0, 0
+
+LilycoveCity_House1_MapWarps:: @ 838A0B0
+ warp_def 3, 8, 0, 8, LilycoveCity
+ warp_def 4, 8, 0, 8, LilycoveCity
+
+LilycoveCity_House1_MapEvents:: @ 838A0C0
+ map_events LilycoveCity_House1_MapObjects, LilycoveCity_House1_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/LilycoveCity_House2.s b/data/maps/events/LilycoveCity_House2.s
new file mode 100644
index 000000000..9589929c0
--- /dev/null
+++ b/data/maps/events/LilycoveCity_House2.s
@@ -0,0 +1,10 @@
+LilycoveCity_House2_MapObjects:: @ 838A0D4
+ object_event 1, MAP_OBJ_GFX_FAT_MAN, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_House2_EventScript_159BA3, 0, 0, 0
+
+LilycoveCity_House2_MapWarps:: @ 838A0EC
+ warp_def 2, 7, 0, 9, LilycoveCity
+ warp_def 3, 7, 0, 9, LilycoveCity
+
+LilycoveCity_House2_MapEvents:: @ 838A0FC
+ map_events LilycoveCity_House2_MapObjects, LilycoveCity_House2_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/LilycoveCity_House3.s b/data/maps/events/LilycoveCity_House3.s
new file mode 100644
index 000000000..48917beac
--- /dev/null
+++ b/data/maps/events/LilycoveCity_House3.s
@@ -0,0 +1,15 @@
+LilycoveCity_House3_MapObjects:: @ 838A110
+ object_event 1, MAP_OBJ_GFX_BOY_5, 0, 3, 0, 4, 0, 3, 8, 17, 0, 0, 0, 0, 0, LilycoveCity_House3_EventScript_159CE5, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_2, 0, 7, 0, 4, 0, 3, 9, 0, 0, 0, 0, 0, 0, LilycoveCity_House3_EventScript_159BF3, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_BOY_5, 0, 1, 0, 4, 0, 3, 8, 17, 0, 0, 0, 0, 0, LilycoveCity_House3_EventScript_159C7D, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_BOY_5, 0, 2, 0, 5, 0, 3, 7, 17, 0, 0, 0, 0, 0, LilycoveCity_House3_EventScript_159CB1, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_BOY_5, 0, 2, 0, 3, 0, 3, 8, 17, 0, 0, 0, 0, 0, LilycoveCity_House3_EventScript_159C49, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_MAN_1, 0, 7, 0, 5, 0, 3, 9, 17, 0, 0, 0, 0, 0, LilycoveCity_House3_EventScript_159C32, 0, 0, 0
+
+LilycoveCity_House3_MapWarps:: @ 838A1A0
+ warp_def 3, 7, 0, 10, LilycoveCity
+ warp_def 4, 7, 0, 10, LilycoveCity
+
+LilycoveCity_House3_MapEvents:: @ 838A1B0
+ map_events LilycoveCity_House3_MapObjects, LilycoveCity_House3_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/LilycoveCity_House4.s b/data/maps/events/LilycoveCity_House4.s
new file mode 100644
index 000000000..cf7498304
--- /dev/null
+++ b/data/maps/events/LilycoveCity_House4.s
@@ -0,0 +1,11 @@
+LilycoveCity_House4_MapObjects:: @ 838A1C4
+ object_event 1, MAP_OBJ_GFX_MAN_5, 0, 1, 0, 4, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_House4_EventScript_159D42, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_1, 0, 7, 0, 4, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_House4_EventScript_159D4B, 0, 0, 0
+
+LilycoveCity_House4_MapWarps:: @ 838A1F4
+ warp_def 3, 8, 0, 11, LilycoveCity
+ warp_def 4, 8, 0, 11, LilycoveCity
+
+LilycoveCity_House4_MapEvents:: @ 838A204
+ map_events LilycoveCity_House4_MapObjects, LilycoveCity_House4_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/LilycoveCity_LilycoveMuseum_1F.s b/data/maps/events/LilycoveCity_LilycoveMuseum_1F.s
new file mode 100644
index 000000000..6b4c67874
--- /dev/null
+++ b/data/maps/events/LilycoveCity_LilycoveMuseum_1F.s
@@ -0,0 +1,38 @@
+LilycoveCity_LilycoveMuseum_1F_MapObjects:: @ 8389564
+ object_event 1, MAP_OBJ_GFX_BEAUTY, 0, 5, 0, 12, 0, 3, 10, 0, 0, 0, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_15841C, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_GENTLEMAN, 0, 16, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_158425, 775, 0, 0
+ object_event 3, MAP_OBJ_GFX_SCHOOL_KID_M, 0, 13, 0, 7, 0, 3, 10, 0, 0, 0, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_158558, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_ARTIST, 0, 13, 0, 10, 0, 3, 5, 2, 0, 0, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_158561, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 2, 0, 8, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_15856A, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_WOMAN_5, 0, 3, 0, 8, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_158573, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_WOMAN_3, 0, 11, 0, 3, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_15857C, 776, 0, 0
+ object_event 8, MAP_OBJ_GFX_ARTIST, 0, 19, 0, 3, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_15858E, 779, 0, 0
+ object_event 9, MAP_OBJ_GFX_FAT_MAN, 0, 2, 0, 2, 0, 3, 2, 34, 0, 0, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_1585A3, 780, 0, 0
+ object_event 10, MAP_OBJ_GFX_PSYCHIC_M, 0, 6, 0, 2, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_158585, 778, 0, 0
+
+LilycoveCity_LilycoveMuseum_1F_MapWarps:: @ 8389654
+ warp_def 9, 13, 0, 3, LilycoveCity
+ warp_def 10, 13, 0, 13, LilycoveCity
+ warp_def 16, 1, 0, 0, LilycoveCity_LilycoveMuseum_2F
+
+LilycoveCity_LilycoveMuseum_1F_MapBGEvents:: @ 838966C
+ bg_event 1, 1, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_158510
+ bg_event 2, 1, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_158510
+ bg_event 5, 1, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_158534
+ bg_event 6, 1, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_158534
+ bg_event 9, 1, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_158507
+ bg_event 3, 6, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_158519
+ bg_event 2, 6, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_158519
+ bg_event 15, 12, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_15853D
+ bg_event 11, 1, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_158507
+ bg_event 6, 6, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_15852B
+ bg_event 17, 9, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_15854F
+ bg_event 19, 1, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_158522
+ bg_event 20, 1, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_158522
+ bg_event 18, 9, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_15854F
+ bg_event 18, 11, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_158546
+ bg_event 16, 9, 0, 0, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_15854F
+
+LilycoveCity_LilycoveMuseum_1F_MapEvents:: @ 838972C
+ map_events LilycoveCity_LilycoveMuseum_1F_MapObjects, LilycoveCity_LilycoveMuseum_1F_MapWarps, 0x0, LilycoveCity_LilycoveMuseum_1F_MapBGEvents
+
diff --git a/data/maps/events/LilycoveCity_LilycoveMuseum_2F.s b/data/maps/events/LilycoveCity_LilycoveMuseum_2F.s
new file mode 100644
index 000000000..55774a8bf
--- /dev/null
+++ b/data/maps/events/LilycoveCity_LilycoveMuseum_2F.s
@@ -0,0 +1,26 @@
+LilycoveCity_LilycoveMuseum_2F_MapObjects:: @ 8389740
+ object_event 1, MAP_OBJ_GFX_GENTLEMAN, 0, 10, 0, 8, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_LilycoveMuseum_2F_EventScript_1586D8, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_GIRL_2, 0, 19, 0, 10, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_LilycoveMuseum_2F_EventScript_158805, 777, 0, 0
+ object_event 3, MAP_OBJ_GFX_OLD_MAN_1, 0, 7, 0, 3, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_LilycoveMuseum_2F_EventScript_15880E, 780, 0, 0
+ object_event 4, MAP_OBJ_GFX_BOY_4, 0, 14, 0, 6, 0, 3, 2, 17, 0, 0, 0, 0, 0, LilycoveCity_LilycoveMuseum_2F_EventScript_158817, 780, 0, 0
+
+LilycoveCity_LilycoveMuseum_2F_MapWarps:: @ 83897A0
+ warp_def 13, 1, 0, 2, LilycoveCity_LilycoveMuseum_1F
+
+LilycoveCity_LilycoveMuseum_2F_MapBGEvents:: @ 83897A8
+ bg_event 14, 10, 0, 0, 0, LilycoveCity_LilycoveMuseum_2F_EventScript_15879D
+ bg_event 15, 10, 0, 0, 0, LilycoveCity_LilycoveMuseum_2F_EventScript_15879D
+ bg_event 3, 6, 0, 0, 0, LilycoveCity_LilycoveMuseum_2F_EventScript_1587B0
+ bg_event 2, 6, 0, 0, 0, LilycoveCity_LilycoveMuseum_2F_EventScript_1587B0
+ bg_event 10, 6, 0, 0, 0, LilycoveCity_LilycoveMuseum_2F_EventScript_1587C3
+ bg_event 11, 6, 0, 0, 0, LilycoveCity_LilycoveMuseum_2F_EventScript_1587C3
+ bg_event 19, 6, 0, 0, 0, LilycoveCity_LilycoveMuseum_2F_EventScript_1587D6
+ bg_event 18, 6, 0, 0, 0, LilycoveCity_LilycoveMuseum_2F_EventScript_1587D6
+ bg_event 6, 10, 0, 0, 0, LilycoveCity_LilycoveMuseum_2F_EventScript_1587E9
+ bg_event 7, 10, 0, 0, 0, LilycoveCity_LilycoveMuseum_2F_EventScript_1587E9
+ bg_event 11, 2, 0, 0, 0, LilycoveCity_LilycoveMuseum_2F_EventScript_15853D
+ bg_event 15, 2, 0, 0, 0, LilycoveCity_LilycoveMuseum_2F_EventScript_15853D
+
+LilycoveCity_LilycoveMuseum_2F_MapEvents:: @ 8389838
+ map_events LilycoveCity_LilycoveMuseum_2F_MapObjects, LilycoveCity_LilycoveMuseum_2F_MapWarps, 0x0, LilycoveCity_LilycoveMuseum_2F_MapBGEvents
+
diff --git a/data/maps/events/LilycoveCity_MoveDeletersHouse.s b/data/maps/events/LilycoveCity_MoveDeletersHouse.s
new file mode 100644
index 000000000..6747891dd
--- /dev/null
+++ b/data/maps/events/LilycoveCity_MoveDeletersHouse.s
@@ -0,0 +1,10 @@
+LilycoveCity_MoveDeletersHouse_MapObjects:: @ 838A044
+ object_event 1, MAP_OBJ_GFX_OLD_MAN_1, 0, 4, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_MoveDeletersHouse_EventScript_159AAE, 0, 0, 0
+
+LilycoveCity_MoveDeletersHouse_MapWarps:: @ 838A05C
+ warp_def 3, 7, 0, 7, LilycoveCity
+ warp_def 4, 7, 0, 7, LilycoveCity
+
+LilycoveCity_MoveDeletersHouse_MapEvents:: @ 838A06C
+ map_events LilycoveCity_MoveDeletersHouse_MapObjects, LilycoveCity_MoveDeletersHouse_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/LilycoveCity_PokemonCenter_1F.s b/data/maps/events/LilycoveCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..8b45733ed
--- /dev/null
+++ b/data/maps/events/LilycoveCity_PokemonCenter_1F.s
@@ -0,0 +1,13 @@
+LilycoveCity_PokemonCenter_1F_MapObjects:: @ 8389D94
+ object_event 1, MAP_OBJ_GFX_NURSE, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_PokemonCenter_1F_EventScript_159331, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_BOY_1, 0, 10, 0, 7, 0, 3, 10, 0, 0, 0, 0, 0, 0, LilycoveCity_PokemonCenter_1F_EventScript_15933F, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MANIAC, 0, 11, 0, 8, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_PokemonCenter_1F_EventScript_159348, 0, 0, 0
+
+LilycoveCity_PokemonCenter_1F_MapWarps:: @ 8389DDC
+ warp_def 7, 8, 3, 2, LilycoveCity
+ warp_def 6, 8, 3, 2, LilycoveCity
+ warp_def 1, 6, 4, 0, LilycoveCity_PokemonCenter_2F
+
+LilycoveCity_PokemonCenter_1F_MapEvents:: @ 8389DF4
+ map_events LilycoveCity_PokemonCenter_1F_MapObjects, LilycoveCity_PokemonCenter_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/LilycoveCity_PokemonCenter_2F.s b/data/maps/events/LilycoveCity_PokemonCenter_2F.s
new file mode 100644
index 000000000..f50bdc536
--- /dev/null
+++ b/data/maps/events/LilycoveCity_PokemonCenter_2F.s
@@ -0,0 +1,15 @@
+LilycoveCity_PokemonCenter_2F_MapObjects:: @ 8389E08
+ object_event 1, MAP_OBJ_GFX_TEALA, 0, 4, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_PokemonCenter_2F_EventScript_159377, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_TEALA, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_PokemonCenter_2F_EventScript_15937D, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_TEALA, 0, 10, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_PokemonCenter_2F_EventScript_159383, 0, 0, 0
+
+LilycoveCity_PokemonCenter_2F_MapWarps:: @ 8389E50
+ warp_def 1, 5, 4, 2, LilycoveCity_PokemonCenter_1F
+ warp_def 5, 1, 0, 0, SingleBattleColosseum
+ warp_def 8, 1, 0, 0, TradeCenter
+ warp_def 11, 1, 0, 0, RecordCorner
+ warp_def 0, 0, 0, 0, DoubleBattleColosseum
+
+LilycoveCity_PokemonCenter_2F_MapEvents:: @ 8389E78
+ map_events LilycoveCity_PokemonCenter_2F_MapObjects, LilycoveCity_PokemonCenter_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/LilycoveCity_PokemonTrainerFanClub.s b/data/maps/events/LilycoveCity_PokemonTrainerFanClub.s
new file mode 100644
index 000000000..d5b5493a2
--- /dev/null
+++ b/data/maps/events/LilycoveCity_PokemonTrainerFanClub.s
@@ -0,0 +1,17 @@
+LilycoveCity_PokemonTrainerFanClub_MapObjects:: @ 8389EB0
+ object_event 1, MAP_OBJ_GFX_LASS, 0, 3, 0, 11, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_PokemonTrainerFanClub_EventScript_1595A6, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_5, 0, 8, 0, 10, 0, 3, 9, 0, 0, 0, 0, 0, 0, LilycoveCity_PokemonTrainerFanClub_EventScript_15952F, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MAN_3, 0, 6, 0, 11, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_PokemonTrainerFanClub_EventScript_15961D, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_LITTLE_GIRL_2, 0, 5, 0, 8, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_PokemonTrainerFanClub_EventScript_159694, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 7, 0, 11, 0, 3, 7, 0, 0, 0, 0, 0, 0, LilycoveCity_PokemonTrainerFanClub_EventScript_15970B, 791, 0, 0
+ object_event 6, MAP_OBJ_GFX_BOY_2, 0, 1, 0, 9, 0, 3, 8, 0, 0, 0, 0, 0, 0, LilycoveCity_PokemonTrainerFanClub_EventScript_15976D, 790, 0, 0
+ object_event 7, MAP_OBJ_GFX_WOMAN_4, 0, 3, 0, 10, 0, 3, 10, 0, 0, 0, 0, 0, 0, LilycoveCity_PokemonTrainerFanClub_EventScript_1597CF, 792, 0, 0
+ object_event 8, MAP_OBJ_GFX_OLD_WOMAN_1, 0, 10, 0, 10, 0, 3, 9, 0, 0, 0, 0, 0, 0, LilycoveCity_PokemonTrainerFanClub_EventScript_159831, 789, 0, 0
+
+LilycoveCity_PokemonTrainerFanClub_MapWarps:: @ 8389F70
+ warp_def 6, 13, 0, 5, LilycoveCity
+ warp_def 5, 13, 0, 5, LilycoveCity
+
+LilycoveCity_PokemonTrainerFanClub_MapEvents:: @ 8389F80
+ map_events LilycoveCity_PokemonTrainerFanClub_MapObjects, LilycoveCity_PokemonTrainerFanClub_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/LilycoveCity_UnusedMart.s b/data/maps/events/LilycoveCity_UnusedMart.s
new file mode 100644
index 000000000..7fec14286
--- /dev/null
+++ b/data/maps/events/LilycoveCity_UnusedMart.s
@@ -0,0 +1,7 @@
+LilycoveCity_UnusedMart_MapWarps:: @ 8389E8C
+ warp_def 3, 7, 0, 0, LilycoveCity
+ warp_def 4, 7, 0, 0, LilycoveCity
+
+LilycoveCity_UnusedMart_MapEvents:: @ 8389E9C
+ map_events 0x0, LilycoveCity_UnusedMart_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/LinkContestRoom1.s b/data/maps/events/LinkContestRoom1.s
new file mode 100644
index 000000000..6c1e09430
--- /dev/null
+++ b/data/maps/events/LinkContestRoom1.s
@@ -0,0 +1,18 @@
+LinkContestRoom1_MapObjects:: @ 839149C
+ object_event 1, MAP_OBJ_GFX_WOMAN_4, 0, 6, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_CONTEST_JUDGE, 0, 7, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+ object_event 3, 240, 0, 4, 0, 7, 0, 3, 7, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+ object_event 4, 241, 0, 6, 0, 7, 0, 3, 7, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+ object_event 5, 242, 0, 8, 0, 7, 0, 3, 7, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+ object_event 6, 244, 0, 2, 0, 6, 0, 3, 10, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+ object_event 7, 246, 0, 4, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+ object_event 8, 247, 0, 5, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+ object_event 9, 248, 0, 9, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+ object_event 10, 249, 0, 10, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+ object_event 11, 250, 0, 12, 0, 5, 0, 3, 9, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+ object_event 12, 245, 0, 2, 0, 5, 0, 3, 10, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+ object_event 13, MAP_OBJ_GFX_ITEM_BALL, 0, 7, 0, 5, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0x0, 86, 0, 0
+ object_event 14, 243, 0, 10, 0, 7, 0, 3, 7, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+ object_event 15, MAP_OBJ_GFX_ARTIST, 0, 12, 0, 6, 0, 3, 9, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+
+LinkContestRoom1_MapEvents:: @ 8391604
diff --git a/data/maps/events/LinkContestRoom2.s b/data/maps/events/LinkContestRoom2.s
new file mode 100644
index 000000000..562a96523
--- /dev/null
+++ b/data/maps/events/LinkContestRoom2.s
@@ -0,0 +1 @@
+LinkContestRoom2_MapEvents:: @ 8391604
diff --git a/data/maps/events/LinkContestRoom3.s b/data/maps/events/LinkContestRoom3.s
new file mode 100644
index 000000000..8c93f28c9
--- /dev/null
+++ b/data/maps/events/LinkContestRoom3.s
@@ -0,0 +1 @@
+LinkContestRoom3_MapEvents:: @ 8391604
diff --git a/data/maps/events/LinkContestRoom4.s b/data/maps/events/LinkContestRoom4.s
new file mode 100644
index 000000000..a5e455811
--- /dev/null
+++ b/data/maps/events/LinkContestRoom4.s
@@ -0,0 +1 @@
+LinkContestRoom4_MapEvents:: @ 8391604
diff --git a/data/maps/events/LinkContestRoom5.s b/data/maps/events/LinkContestRoom5.s
new file mode 100644
index 000000000..f0f8fa508
--- /dev/null
+++ b/data/maps/events/LinkContestRoom5.s
@@ -0,0 +1 @@
+LinkContestRoom5_MapEvents:: @ 8391604
diff --git a/data/maps/events/LinkContestRoom6.s b/data/maps/events/LinkContestRoom6.s
new file mode 100644
index 000000000..a8fd4962f
--- /dev/null
+++ b/data/maps/events/LinkContestRoom6.s
@@ -0,0 +1 @@
+LinkContestRoom6_MapEvents:: @ 8391604
diff --git a/data/maps/events/LittlerootTown.s b/data/maps/events/LittlerootTown.s
new file mode 100644
index 000000000..14ce5fcb1
--- /dev/null
+++ b/data/maps/events/LittlerootTown.s
@@ -0,0 +1,33 @@
+LittlerootTown_MapObjects:: @ 83808FC
+ object_event 1, MAP_OBJ_GFX_LITTLE_BOY_3, 0, 16, 0, 10, 0, 3, 2, 33, 0, 0, 0, 0, 0, LittlerootTown_EventScript_14D6DF, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_FAT_MAN, 0, 12, 0, 13, 0, 3, 2, 18, 0, 0, 0, 0, 0, LittlerootTown_EventScript_14D6CD, 868, 0, 0
+ object_event 3, MAP_OBJ_GFX_BOY_2, 0, 14, 0, 17, 0, 3, 2, 18, 0, 0, 0, 0, 0, LittlerootTown_EventScript_14D6D6, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_MOM, 0, 5, 0, 8, 0, 3, 7, 0, 0, 0, 0, 0, 0, LittlerootTown_EventScript_14DCE2, 752, 0, 0
+ object_event 5, MAP_OBJ_GFX_TRUCK, 0, 2, 0, 10, 0, 4, 10, 0, 0, 0, 0, 0, 0, 0x0, 761, 0, 0
+ object_event 6, MAP_OBJ_GFX_TRUCK, 0, 11, 0, 10, 0, 4, 10, 0, 0, 0, 0, 0, 0, 0x0, 762, 0, 0
+
+LittlerootTown_MapWarps:: @ 838098C
+ warp_def 14, 8, 0, 1, LittlerootTown_MaysHouse_1F
+ warp_def 5, 8, 0, 1, LittlerootTown_BrendansHouse_1F
+ warp_def 7, 16, 0, 0, LittlerootTown_ProfessorBirchsLab
+
+LittlerootTown_MapCoordEvents:: @ 83809A4
+ coord_event 10, 1, 3, 0, 0x4050, 0, 0, LittlerootTown_EventScript_14D739
+ coord_event 11, 1, 3, 0, 0x4050, 0, 0, LittlerootTown_EventScript_14D797
+ coord_event 11, 1, 3, 0, 0x4050, 1, 0, LittlerootTown_EventScript_14D7C7
+ coord_event 8, 9, 3, 0, 0x4050, 3, 0, LittlerootTown_EventScript_14D89E
+ coord_event 9, 9, 3, 0, 0x4050, 3, 0, LittlerootTown_EventScript_14D8AA
+ coord_event 10, 9, 3, 0, 0x4050, 3, 0, LittlerootTown_EventScript_14D886
+ coord_event 11, 9, 3, 0, 0x4050, 3, 0, LittlerootTown_EventScript_14D892
+ coord_event 10, 2, 3, 0, 0x4050, 3, 0, LittlerootTown_EventScript_14D860
+ coord_event 11, 2, 3, 0, 0x4050, 3, 0, LittlerootTown_EventScript_14D873
+
+LittlerootTown_MapBGEvents:: @ 8380A34
+ bg_event 15, 13, 0, 0, 0, LittlerootTown_EventScript_14D7F6
+ bg_event 6, 17, 0, 0, 0, LittlerootTown_EventScript_14D7FF
+ bg_event 7, 8, 3, 0, 0, LittlerootTown_EventScript_14D808
+ bg_event 12, 8, 3, 0, 0, LittlerootTown_EventScript_14D834
+
+LittlerootTown_MapEvents:: @ 8380A64
+ map_events LittlerootTown_MapObjects, LittlerootTown_MapWarps, LittlerootTown_MapCoordEvents, LittlerootTown_MapBGEvents
+
diff --git a/data/maps/events/LittlerootTown_BrendansHouse_1F.s b/data/maps/events/LittlerootTown_BrendansHouse_1F.s
new file mode 100644
index 000000000..624f712c5
--- /dev/null
+++ b/data/maps/events/LittlerootTown_BrendansHouse_1F.s
@@ -0,0 +1,18 @@
+LittlerootTown_BrendansHouse_1F_MapObjects:: @ 8385674
+ object_event 1, MAP_OBJ_GFX_MOM, 0, 2, 0, 6, 0, 3, 10, 0, 0, 0, 0, 0, 0, LittlerootTown_BrendansHouse_1F_EventScript_1B6BE9, 758, 0, 0
+ object_event 2, MAP_OBJ_GFX_MACHOKE_CARRYING_BOX, 0, 1, 0, 3, 0, 3, 28, 3, 0, 0, 0, 0, 0, LittlerootTown_BrendansHouse_1F_EventScript_1B6CB9, 755, 0, 0
+ object_event 3, MAP_OBJ_GFX_MACHOKE_FACING_AWAY, 0, 4, 0, 5, 0, 3, 65, 0, 0, 0, 0, 0, 0, LittlerootTown_BrendansHouse_1F_EventScript_1B6CA6, 754, 0, 0
+ object_event 4, MAP_OBJ_GFX_WOMAN_5, 0, 2, 0, 7, 0, 3, 10, 0, 0, 0, 0, 0, 0, LittlerootTown_BrendansHouse_1F_EventScript_1529EB, 784, 0, 0
+ object_event 5, MAP_OBJ_GFX_NORMAN, 0, 5, 0, 6, 0, 3, 9, 17, 0, 0, 0, 0, 0, 0x0, 734, 0, 0
+
+LittlerootTown_BrendansHouse_1F_MapWarps:: @ 83856EC
+ warp_def 9, 8, 0, 1, LittlerootTown
+ warp_def 8, 8, 0, 1, LittlerootTown
+ warp_def 8, 2, 0, 0, LittlerootTown_BrendansHouse_2F
+
+LittlerootTown_BrendansHouse_1F_MapCoordEvents:: @ 8385704
+ coord_event 8, 8, 0, 0, 0x4092, 4, 0, LittlerootTown_BrendansHouse_1F_EventScript_152789
+
+LittlerootTown_BrendansHouse_1F_MapEvents:: @ 8385714
+ map_events LittlerootTown_BrendansHouse_1F_MapObjects, LittlerootTown_BrendansHouse_1F_MapWarps, LittlerootTown_BrendansHouse_1F_MapCoordEvents, 0x0
+
diff --git a/data/maps/events/LittlerootTown_BrendansHouse_2F.s b/data/maps/events/LittlerootTown_BrendansHouse_2F.s
new file mode 100644
index 000000000..53d62b978
--- /dev/null
+++ b/data/maps/events/LittlerootTown_BrendansHouse_2F.s
@@ -0,0 +1,28 @@
+LittlerootTown_BrendansHouse_2F_MapObjects:: @ 8385728
+ object_event 1, MAP_OBJ_GFX_RIVAL_BRENDAN_NORMAL, 0, 0, 0, 2, 0, 3, 7, 1, 0, 0, 0, 0, 0, LittlerootTown_BrendansHouse_2F_EventScript_152A9D, 760, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 4, 1, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 2, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 3, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 4, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 5, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, MAP_OBJ_GFX_MOM, 0, 7, 0, 1, 0, 3, 8, 1, 0, 0, 0, 0, 0, 0x0, 757, 0, 0
+
+LittlerootTown_BrendansHouse_2F_MapWarps:: @ 8385878
+ warp_def 7, 1, 0, 2, LittlerootTown_BrendansHouse_1F
+
+LittlerootTown_BrendansHouse_2F_MapBGEvents:: @ 8385880
+ bg_event 0, 1, 0, 1, 0, LittlerootTown_BrendansHouse_2F_EventScript_15281E
+ bg_event 1, 1, 0, 0, 0, LittlerootTown_BrendansHouse_2F_EventScript_152867
+ bg_event 5, 1, 0, 0, 0, LittlerootTown_BrendansHouse_2F_EventScript_1B69D3
+ bg_event 3, 1, 0, 0, 0, LittlerootTown_BrendansHouse_2F_EventScript_152870
+
+LittlerootTown_BrendansHouse_2F_MapEvents:: @ 83858B0
+ map_events LittlerootTown_BrendansHouse_2F_MapObjects, LittlerootTown_BrendansHouse_2F_MapWarps, 0x0, LittlerootTown_BrendansHouse_2F_MapBGEvents
+
diff --git a/data/maps/events/LittlerootTown_MaysHouse_1F.s b/data/maps/events/LittlerootTown_MaysHouse_1F.s
new file mode 100644
index 000000000..05dff7a9e
--- /dev/null
+++ b/data/maps/events/LittlerootTown_MaysHouse_1F.s
@@ -0,0 +1,18 @@
+LittlerootTown_MaysHouse_1F_MapObjects:: @ 83858C4
+ object_event 1, MAP_OBJ_GFX_MOM, 0, 8, 0, 6, 0, 3, 9, 0, 0, 0, 0, 0, 0, LittlerootTown_MaysHouse_1F_EventScript_1B6BE9, 759, 0, 0
+ object_event 2, MAP_OBJ_GFX_MACHOKE_FACING_AWAY, 0, 6, 0, 5, 0, 3, 65, 0, 0, 0, 0, 0, 0, LittlerootTown_MaysHouse_1F_EventScript_1B6CA6, 754, 0, 0
+ object_event 3, MAP_OBJ_GFX_MACHOKE_CARRYING_BOX, 0, 9, 0, 3, 0, 3, 27, 3, 0, 0, 0, 0, 0, LittlerootTown_MaysHouse_1F_EventScript_1B6CB9, 755, 0, 0
+ object_event 4, MAP_OBJ_GFX_WOMAN_5, 0, 8, 0, 7, 0, 3, 9, 0, 0, 0, 0, 0, 0, LittlerootTown_MaysHouse_1F_EventScript_1529EB, 785, 0, 0
+ object_event 5, MAP_OBJ_GFX_NORMAN, 0, 5, 0, 6, 0, 3, 10, 17, 0, 0, 0, 0, 0, 0x0, 734, 0, 0
+
+LittlerootTown_MaysHouse_1F_MapWarps:: @ 838593C
+ warp_def 1, 8, 0, 0, LittlerootTown
+ warp_def 2, 8, 0, 0, LittlerootTown
+ warp_def 2, 2, 0, 0, LittlerootTown_MaysHouse_2F
+
+LittlerootTown_MaysHouse_1F_MapCoordEvents:: @ 8385954
+ coord_event 2, 8, 0, 0, 0x4092, 4, 0, LittlerootTown_MaysHouse_1F_EventScript_152A35
+
+LittlerootTown_MaysHouse_1F_MapEvents:: @ 8385964
+ map_events LittlerootTown_MaysHouse_1F_MapObjects, LittlerootTown_MaysHouse_1F_MapWarps, LittlerootTown_MaysHouse_1F_MapCoordEvents, 0x0
+
diff --git a/data/maps/events/LittlerootTown_MaysHouse_2F.s b/data/maps/events/LittlerootTown_MaysHouse_2F.s
new file mode 100644
index 000000000..cbadc3bed
--- /dev/null
+++ b/data/maps/events/LittlerootTown_MaysHouse_2F.s
@@ -0,0 +1,29 @@
+LittlerootTown_MaysHouse_2F_MapObjects:: @ 8385978
+ object_event 1, MAP_OBJ_GFX_RIVAL_MAY_NORMAL, 0, 8, 0, 2, 0, 3, 7, 1, 0, 0, 0, 0, 0, LittlerootTown_MaysHouse_2F_EventScript_152A9D, 722, 0, 0
+ object_event 2, 240, 0, 0, 0, 6, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 1, 0, 6, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 2, 0, 6, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 3, 0, 6, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 4, 0, 6, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 5, 0, 6, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 7, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 7, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 2, 0, 7, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 3, 0, 7, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 4, 0, 7, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 5, 0, 7, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, MAP_OBJ_GFX_MOM, 0, 1, 0, 1, 0, 3, 8, 1, 0, 0, 0, 0, 0, 0x0, 757, 0, 0
+ object_event 15, MAP_OBJ_GFX_PICHU_DOLL, 0, 3, 0, 4, 0, 4, 8, 17, 0, 0, 0, 0, 0, 0x0, 849, 0, 0
+
+LittlerootTown_MaysHouse_2F_MapWarps:: @ 8385AE0
+ warp_def 1, 1, 0, 2, LittlerootTown_MaysHouse_1F
+
+LittlerootTown_MaysHouse_2F_MapBGEvents:: @ 8385AE8
+ bg_event 5, 1, 0, 0, 0, LittlerootTown_MaysHouse_2F_EventScript_152870
+ bg_event 7, 1, 0, 0, 0, LittlerootTown_MaysHouse_2F_EventScript_152867
+ bg_event 3, 1, 0, 0, 0, LittlerootTown_MaysHouse_2F_EventScript_1B69DF
+ bg_event 8, 1, 0, 0, 0, LittlerootTown_MaysHouse_2F_EventScript_152C39
+
+LittlerootTown_MaysHouse_2F_MapEvents:: @ 8385B18
+ map_events LittlerootTown_MaysHouse_2F_MapObjects, LittlerootTown_MaysHouse_2F_MapWarps, 0x0, LittlerootTown_MaysHouse_2F_MapBGEvents
+
diff --git a/data/maps/events/LittlerootTown_ProfessorBirchsLab.s b/data/maps/events/LittlerootTown_ProfessorBirchsLab.s
new file mode 100644
index 000000000..2e680faf8
--- /dev/null
+++ b/data/maps/events/LittlerootTown_ProfessorBirchsLab.s
@@ -0,0 +1,29 @@
+LittlerootTown_ProfessorBirchsLab_MapObjects:: @ 8385B2C
+ object_event 1, MAP_OBJ_GFX_SCIENTIST_1, 0, 9, 0, 8, 0, 3, 2, 17, 0, 0, 0, 0, 0, LittlerootTown_ProfessorBirchsLab_EventScript_152D63, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_PROF_BIRCH, 0, 6, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, LittlerootTown_ProfessorBirchsLab_EventScript_152D9A, 721, 0, 0
+ object_event 3, 240, 0, 7, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, LittlerootTown_ProfessorBirchsLab_EventScript_152EA3, 889, 0, 0
+
+LittlerootTown_ProfessorBirchsLab_MapWarps:: @ 8385B74
+ warp_def 6, 12, 0, 2, LittlerootTown
+ warp_def 7, 12, 0, 2, LittlerootTown
+
+LittlerootTown_ProfessorBirchsLab_MapBGEvents:: @ 8385B84
+ bg_event 10, 7, 0, 1, 0, LittlerootTown_ProfessorBirchsLab_EventScript_152E9A
+ bg_event 11, 7, 0, 1, 0, LittlerootTown_ProfessorBirchsLab_EventScript_152E9A
+ bg_event 7, 1, 0, 0, 0, LittlerootTown_ProfessorBirchsLab_EventScript_152EE2
+ bg_event 8, 1, 0, 0, 0, LittlerootTown_ProfessorBirchsLab_EventScript_152EE2
+ bg_event 1, 1, 0, 0, 0, LittlerootTown_ProfessorBirchsLab_EventScript_152ED9
+ bg_event 0, 7, 0, 0, 0, LittlerootTown_ProfessorBirchsLab_EventScript_152ED9
+ bg_event 1, 7, 0, 0, 0, LittlerootTown_ProfessorBirchsLab_EventScript_152ED9
+ bg_event 2, 7, 0, 0, 0, LittlerootTown_ProfessorBirchsLab_EventScript_152ED9
+ bg_event 3, 7, 0, 0, 0, LittlerootTown_ProfessorBirchsLab_EventScript_152ED9
+ bg_event 4, 1, 0, 0, 0, LittlerootTown_ProfessorBirchsLab_EventScript_152ED0
+ bg_event 3, 1, 0, 0, 0, LittlerootTown_ProfessorBirchsLab_EventScript_152ED0
+ bg_event 1, 10, 0, 0, 0, LittlerootTown_ProfessorBirchsLab_EventScript_152ED0
+ bg_event 1, 9, 0, 0, 0, LittlerootTown_ProfessorBirchsLab_EventScript_152ED0
+ bg_event 11, 10, 0, 0, 0, LittlerootTown_ProfessorBirchsLab_EventScript_152ED0
+ bg_event 11, 9, 0, 0, 0, LittlerootTown_ProfessorBirchsLab_EventScript_152ED0
+
+LittlerootTown_ProfessorBirchsLab_MapEvents:: @ 8385C38
+ map_events LittlerootTown_ProfessorBirchsLab_MapObjects, LittlerootTown_ProfessorBirchsLab_MapWarps, 0x0, LittlerootTown_ProfessorBirchsLab_MapBGEvents
+
diff --git a/data/maps/events/MagmaHideout_1F.s b/data/maps/events/MagmaHideout_1F.s
new file mode 100644
index 000000000..f0339712c
--- /dev/null
+++ b/data/maps/events/MagmaHideout_1F.s
@@ -0,0 +1,12 @@
+MagmaHideout_1F_MapObjects:: @ 838E9BC
+ object_event 1, 241, 0, 13, 0, 19, 0, 3, 8, 17, 0, 0, 0, 0, 0, MagmaHideout_1F_EventScript_15D7CE, 821, 0, 0
+ object_event 2, 241, 0, 14, 0, 19, 0, 3, 8, 17, 0, 0, 0, 0, 0, MagmaHideout_1F_EventScript_15D7ED, 822, 0, 0
+ object_event 3, 241, 0, 20, 0, 3, 0, 3, 50, 110, 0, 1, 0, 3, 0, MagmaHideout_1F_EventScript_15D80C, 0, 0, 0
+
+MagmaHideout_1F_MapWarps:: @ 838EA04
+ warp_def 13, 27, 1, 14, LilycoveCity
+ warp_def 13, 1, 3, 0, MagmaHideout_B1F
+
+MagmaHideout_1F_MapEvents:: @ 838EA14
+ map_events MagmaHideout_1F_MapObjects, MagmaHideout_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MagmaHideout_B1F.s b/data/maps/events/MagmaHideout_B1F.s
new file mode 100644
index 000000000..5ec44bb7c
--- /dev/null
+++ b/data/maps/events/MagmaHideout_B1F.s
@@ -0,0 +1,44 @@
+MagmaHideout_B1F_MapObjects:: @ 838EA28
+ object_event 1, 241, 0, 33, 0, 3, 0, 3, 9, 17, 0, 1, 0, 5, 0, MagmaHideout_B1F_EventScript_15D850, 0, 0, 0
+ object_event 2, 241, 0, 41, 0, 17, 0, 3, 23, 17, 0, 1, 0, 3, 0, MagmaHideout_B1F_EventScript_15D875, 0, 0, 0
+ object_event 3, 242, 0, 33, 0, 19, 0, 3, 27, 20, 0, 1, 0, 3, 0, MagmaHideout_B1F_EventScript_15D89A, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_ITEM_BALL, 0, 26, 0, 10, 0, 3, 1, 17, 0, 0, 0, 0, 0, MagmaHideout_B1F_EventScript_1B19C2, 1125, 0, 0
+ object_event 5, MAP_OBJ_GFX_ITEM_BALL, 0, 14, 0, 18, 0, 3, 1, 17, 0, 0, 0, 0, 0, MagmaHideout_B1F_EventScript_1B19DC, 1126, 0, 0
+ object_event 6, MAP_OBJ_GFX_ITEM_BALL, 0, 27, 0, 10, 0, 3, 1, 17, 0, 0, 0, 0, 0, MagmaHideout_B1F_EventScript_1A04FD, 977, 0, 0
+ object_event 7, MAP_OBJ_GFX_ITEM_BALL, 0, 26, 0, 11, 0, 3, 1, 17, 0, 0, 0, 0, 0, MagmaHideout_B1F_EventScript_1B19CF, 1134, 0, 0
+ object_event 8, MAP_OBJ_GFX_ITEM_BALL, 0, 27, 0, 11, 0, 3, 1, 17, 0, 0, 0, 0, 0, MagmaHideout_B1F_EventScript_1A051B, 978, 0, 0
+
+MagmaHideout_B1F_MapWarps:: @ 838EAE8
+ warp_def 3, 3, 3, 1, MagmaHideout_1F
+ warp_def 14, 3, 3, 0, MagmaHideout_B2F
+ warp_def 23, 1, 3, 1, MagmaHideout_B2F
+ warp_def 29, 1, 3, 2, MagmaHideout_B2F
+ warp_def 8, 5, 3, 6, MagmaHideout_B1F
+ warp_def 8, 7, 3, 9, MagmaHideout_B1F
+ warp_def 14, 8, 3, 4, MagmaHideout_B1F
+ warp_def 23, 5, 3, 10, MagmaHideout_B1F
+ warp_def 39, 5, 3, 13, MagmaHideout_B1F
+ warp_def 16, 16, 3, 5, MagmaHideout_B1F
+ warp_def 21, 14, 3, 7, MagmaHideout_B1F
+ warp_def 21, 20, 3, 12, MagmaHideout_B1F
+ warp_def 38, 11, 3, 11, MagmaHideout_B1F
+ warp_def 43, 19, 3, 8, MagmaHideout_B1F
+ warp_def 34, 11, 3, 28, MagmaHideout_B1F
+ warp_def 41, 11, 3, 16, MagmaHideout_B1F
+ warp_def 56, 3, 3, 15, MagmaHideout_B1F
+ warp_def 56, 5, 3, 16, MagmaHideout_B1F
+ warp_def 53, 5, 3, 22, MagmaHideout_B1F
+ warp_def 59, 5, 3, 20, MagmaHideout_B1F
+ warp_def 53, 9, 3, 19, MagmaHideout_B1F
+ warp_def 56, 9, 3, 24, MagmaHideout_B1F
+ warp_def 59, 9, 3, 18, MagmaHideout_B1F
+ warp_def 53, 13, 3, 17, MagmaHideout_B1F
+ warp_def 56, 13, 3, 21, MagmaHideout_B1F
+ warp_def 59, 13, 3, 26, MagmaHideout_B1F
+ warp_def 53, 17, 3, 25, MagmaHideout_B1F
+ warp_def 56, 17, 3, 21, MagmaHideout_B1F
+ warp_def 59, 17, 3, 14, MagmaHideout_B1F
+
+MagmaHideout_B1F_MapEvents:: @ 838EBD0
+ map_events MagmaHideout_B1F_MapObjects, MagmaHideout_B1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MagmaHideout_B2F.s b/data/maps/events/MagmaHideout_B2F.s
new file mode 100644
index 000000000..8453baf55
--- /dev/null
+++ b/data/maps/events/MagmaHideout_B2F.s
@@ -0,0 +1,26 @@
+MagmaHideout_B2F_MapObjects:: @ 838EBE4
+ object_event 1, 241, 0, 8, 0, 19, 0, 3, 10, 17, 0, 0, 0, 0, 0, MagmaHideout_B2F_EventScript_15D8E1, 924, 0, 0
+ object_event 2, 241, 0, 31, 0, 11, 0, 3, 51, 71, 0, 1, 0, 3, 0, MagmaHideout_B2F_EventScript_15D962, 924, 0, 0
+ object_event 3, MAP_OBJ_GFX_SUBMARINE_SHADOW, 0, 12, 0, 20, 0, 1, 10, 17, 0, 0, 0, 0, 0, 0x0, 943, 0, 0
+ object_event 4, 242, 0, 13, 0, 3, 0, 3, 9, 17, 0, 1, 0, 4, 0, MagmaHideout_B2F_EventScript_15D987, 924, 0, 0
+ object_event 5, MAP_OBJ_GFX_ITEM_BALL, 0, 31, 0, 20, 0, 3, 8, 17, 0, 0, 0, 0, 0, MagmaHideout_B2F_EventScript_1B19E9, 1127, 0, 0
+
+MagmaHideout_B2F_MapWarps:: @ 838EC5C
+ warp_def 3, 3, 3, 1, MagmaHideout_B1F
+ warp_def 12, 1, 3, 2, MagmaHideout_B1F
+ warp_def 18, 1, 3, 3, MagmaHideout_B1F
+ warp_def 2, 14, 3, 4, MagmaHideout_B1F
+ warp_def 12, 13, 3, 5, MagmaHideout_B2F
+ warp_def 17, 13, 3, 4, MagmaHideout_B2F
+ warp_def 31, 4, 3, 7, MagmaHideout_B2F
+ warp_def 31, 16, 3, 6, MagmaHideout_B2F
+
+MagmaHideout_B2F_MapCoordEvents:: @ 838EC9C
+ coord_event 7, 16, 3, 0, 0x4001, 0, 0, MagmaHideout_B2F_EventScript_15D8BD
+ coord_event 6, 16, 3, 0, 0x4001, 0, 0, MagmaHideout_B2F_EventScript_15D8BD
+ coord_event 5, 16, 3, 0, 0x4001, 0, 0, MagmaHideout_B2F_EventScript_15D8BD
+ coord_event 4, 16, 3, 0, 0x4001, 0, 0, MagmaHideout_B2F_EventScript_15D8BD
+
+MagmaHideout_B2F_MapEvents:: @ 838ECDC
+ map_events MagmaHideout_B2F_MapObjects, MagmaHideout_B2F_MapWarps, MagmaHideout_B2F_MapCoordEvents, 0x0
+
diff --git a/data/maps/events/MauvilleCity.s b/data/maps/events/MauvilleCity.s
new file mode 100644
index 000000000..9249a7053
--- /dev/null
+++ b/data/maps/events/MauvilleCity.s
@@ -0,0 +1,33 @@
+MauvilleCity_MapObjects:: @ 837FB90
+ object_event 1, MAP_OBJ_GFX_BOY_3, 0, 29, 0, 16, 0, 3, 5, 17, 0, 0, 0, 0, 0, MauvilleCity_EventScript_14C05A, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_BOY_4, 0, 24, 0, 10, 0, 3, 5, 1, 0, 0, 0, 0, 0, MauvilleCity_EventScript_14C075, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MANIAC, 0, 14, 0, 11, 0, 3, 10, 0, 0, 0, 0, 0, 0, MauvilleCity_EventScript_14C063, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_WOMAN_5, 0, 18, 0, 6, 0, 3, 1, 0, 0, 0, 0, 0, 0, MauvilleCity_EventScript_14C06C, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_SCHOOL_KID_M, 0, 17, 0, 14, 0, 3, 8, 0, 0, 0, 0, 0, 0, MauvilleCity_EventScript_14C0A2, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_WALLY, 0, 8, 0, 6, 0, 3, 7, 0, 0, 0, 0, 0, 0, MauvilleCity_EventScript_14C0F9, 804, 0, 0
+ object_event 7, MAP_OBJ_GFX_MAN_3, 0, 9, 0, 6, 0, 3, 9, 0, 0, 0, 0, 0, 0, MauvilleCity_EventScript_14C0C4, 805, 0, 0
+ object_event 8, MAP_OBJ_GFX_WATTSON, 0, 29, 0, 9, 0, 3, 1, 0, 0, 0, 0, 0, 0, MauvilleCity_EventScript_14C2F2, 912, 0, 0
+ object_event 9, MAP_OBJ_GFX_ITEM_BALL, 0, 28, 0, 19, 0, 3, 1, 17, 0, 0, 0, 0, 0, MauvilleCity_EventScript_1B171E, 1116, 0, 0
+
+MauvilleCity_MapWarps:: @ 837FC68
+ warp_def 8, 5, 0, 0, MauvilleCity_Gym
+ warp_def 22, 5, 0, 0, MauvilleCity_PokemonCenter_1F
+ warp_def 35, 5, 0, 0, MauvilleCity_BikeShop
+ warp_def 23, 14, 0, 0, MauvilleCity_Mart
+ warp_def 32, 14, 0, 0, MauvilleCity_House1
+ warp_def 8, 13, 0, 0, MauvilleCity_GameCorner
+ warp_def 19, 14, 0, 0, MauvilleCity_House2
+
+MauvilleCity_MapBGEvents:: @ 837FCA0
+ bg_event 23, 5, 0, 1, 0, MauvilleCity_EventScript_1A00EA
+ bg_event 11, 6, 3, 0, 0, MauvilleCity_EventScript_14C087
+ bg_event 24, 14, 0, 1, 0, MauvilleCity_EventScript_1A00E1
+ bg_event 25, 14, 0, 1, 0, MauvilleCity_EventScript_1A00E1
+ bg_event 24, 5, 0, 1, 0, MauvilleCity_EventScript_1A00EA
+ bg_event 19, 7, 0, 0, 0, MauvilleCity_EventScript_14C07E
+ bg_event 33, 6, 0, 0, 0, MauvilleCity_EventScript_14C090
+ bg_event 11, 15, 0, 0, 0, MauvilleCity_EventScript_14C099
+
+MauvilleCity_MapEvents:: @ 837FD00
+ map_events MauvilleCity_MapObjects, MauvilleCity_MapWarps, 0x0, MauvilleCity_MapBGEvents
+
diff --git a/data/maps/events/MauvilleCity_BikeShop.s b/data/maps/events/MauvilleCity_BikeShop.s
new file mode 100644
index 000000000..165f23c3e
--- /dev/null
+++ b/data/maps/events/MauvilleCity_BikeShop.s
@@ -0,0 +1,15 @@
+MauvilleCity_BikeShop_MapObjects:: @ 8388318
+ object_event 1, MAP_OBJ_GFX_MAN_2, 0, 2, 0, 5, 0, 3, 9, 0, 0, 0, 0, 0, 0, MauvilleCity_BikeShop_EventScript_156796, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_6, 0, 7, 0, 6, 0, 3, 2, 17, 0, 0, 0, 0, 0, MauvilleCity_BikeShop_EventScript_15690B, 0, 0, 0
+
+MauvilleCity_BikeShop_MapWarps:: @ 8388348
+ warp_def 3, 8, 0, 2, MauvilleCity
+ warp_def 4, 8, 0, 2, MauvilleCity
+
+MauvilleCity_BikeShop_MapBGEvents:: @ 8388358
+ bg_event 8, 1, 0, 0, 0, MauvilleCity_BikeShop_EventScript_156914
+ bg_event 11, 1, 0, 0, 0, MauvilleCity_BikeShop_EventScript_156988
+
+MauvilleCity_BikeShop_MapEvents:: @ 8388370
+ map_events MauvilleCity_BikeShop_MapObjects, MauvilleCity_BikeShop_MapWarps, 0x0, MauvilleCity_BikeShop_MapBGEvents
+
diff --git a/data/maps/events/MauvilleCity_GameCorner.s b/data/maps/events/MauvilleCity_GameCorner.s
new file mode 100644
index 000000000..4aa469f77
--- /dev/null
+++ b/data/maps/events/MauvilleCity_GameCorner.s
@@ -0,0 +1,47 @@
+MauvilleCity_GameCorner_MapObjects:: @ 83883C0
+ object_event 1, MAP_OBJ_GFX_WOMAN_3, 0, 12, 0, 7, 0, 3, 8, 0, 0, 0, 0, 0, 0, MauvilleCity_GameCorner_EventScript_156F84, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_GENTLEMAN, 0, 16, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, MauvilleCity_GameCorner_EventScript_156F8D, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_BEAUTY, 0, 11, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, MauvilleCity_GameCorner_EventScript_156A34, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_BEAUTY, 0, 14, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, MauvilleCity_GameCorner_EventScript_156B6C, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_GIRL_2, 0, 7, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, MauvilleCity_GameCorner_EventScript_156F96, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_MAN_3, 0, 19, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, MauvilleCity_GameCorner_EventScript_15707C, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_OLD_MAN_2, 0, 20, 0, 8, 0, 3, 9, 0, 0, 0, 0, 0, 0, MauvilleCity_GameCorner_EventScript_1570D8, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_COOK, 0, 6, 0, 8, 0, 3, 10, 0, 0, 0, 0, 0, 0, MauvilleCity_GameCorner_EventScript_1570E8, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_BEAUTY, 0, 13, 0, 2, 0, 3, 8, 17, 0, 0, 0, 0, 0, MauvilleCity_GameCorner_EventScript_156D1A, 0, 0, 0
+ object_event 10, MAP_OBJ_GFX_MAN_4, 0, 1, 0, 7, 0, 3, 10, 17, 0, 0, 0, 0, 0, MauvilleCity_GameCorner_EventScript_1570F8, 0, 0, 0
+ object_event 11, MAP_OBJ_GFX_MANIAC, 0, 9, 0, 8, 0, 3, 9, 17, 0, 0, 0, 0, 0, MauvilleCity_GameCorner_EventScript_157115, 0, 0, 0
+ object_event 12, MAP_OBJ_GFX_WOMAN_7, 0, 4, 0, 6, 0, 3, 9, 17, 0, 0, 0, 0, 0, MauvilleCity_GameCorner_EventScript_157125, 0, 0, 0
+
+MauvilleCity_GameCorner_MapWarps:: @ 83884E0
+ warp_def 11, 10, 3, 5, MauvilleCity
+ warp_def 12, 10, 3, 5, MauvilleCity
+
+MauvilleCity_GameCorner_MapBGEvents:: @ 83884F0
+ bg_event 2, 6, 0, 3, 0, MauvilleCity_GameCorner_EventScript_157135
+ bg_event 2, 8, 0, 3, 0, MauvilleCity_GameCorner_EventScript_157155
+ bg_event 2, 9, 0, 3, 0, MauvilleCity_GameCorner_EventScript_157175
+ bg_event 3, 7, 0, 4, 0, MauvilleCity_GameCorner_EventScript_157195
+ bg_event 3, 8, 0, 4, 0, MauvilleCity_GameCorner_EventScript_1571B5
+ bg_event 3, 9, 0, 4, 0, MauvilleCity_GameCorner_EventScript_1571D5
+ bg_event 7, 6, 0, 3, 0, MauvilleCity_GameCorner_EventScript_1571F5
+ bg_event 7, 7, 0, 3, 0, MauvilleCity_GameCorner_EventScript_157215
+ bg_event 7, 9, 0, 3, 0, MauvilleCity_GameCorner_EventScript_157235
+ bg_event 8, 6, 0, 4, 0, MauvilleCity_GameCorner_EventScript_157255
+ bg_event 8, 7, 0, 4, 0, MauvilleCity_GameCorner_EventScript_157275
+ bg_event 8, 9, 0, 4, 0, MauvilleCity_GameCorner_EventScript_157295
+ bg_event 14, 6, 0, 0, 0, MauvilleCity_GameCorner_EventScript_1C407E
+ bg_event 15, 6, 0, 0, 0, MauvilleCity_GameCorner_EventScript_1C407E
+ bg_event 14, 7, 0, 0, 0, MauvilleCity_GameCorner_EventScript_1C407E
+ bg_event 15, 7, 0, 0, 0, MauvilleCity_GameCorner_EventScript_1C407E
+ bg_event 14, 8, 0, 0, 0, MauvilleCity_GameCorner_EventScript_1C407E
+ bg_event 15, 8, 0, 0, 0, MauvilleCity_GameCorner_EventScript_1C407E
+ bg_event 18, 6, 0, 0, 0, MauvilleCity_GameCorner_EventScript_1C40AC
+ bg_event 19, 6, 0, 0, 0, MauvilleCity_GameCorner_EventScript_1C40AC
+ bg_event 18, 7, 0, 0, 0, MauvilleCity_GameCorner_EventScript_1C40AC
+ bg_event 19, 7, 0, 0, 0, MauvilleCity_GameCorner_EventScript_1C40AC
+ bg_event 18, 8, 0, 0, 0, MauvilleCity_GameCorner_EventScript_1C40AC
+ bg_event 19, 8, 0, 0, 0, MauvilleCity_GameCorner_EventScript_1C40AC
+
+MauvilleCity_GameCorner_MapEvents:: @ 8388610
+ map_events MauvilleCity_GameCorner_MapObjects, MauvilleCity_GameCorner_MapWarps, 0x0, MauvilleCity_GameCorner_MapBGEvents
+
diff --git a/data/maps/events/MauvilleCity_Gym.s b/data/maps/events/MauvilleCity_Gym.s
new file mode 100644
index 000000000..561cab1ff
--- /dev/null
+++ b/data/maps/events/MauvilleCity_Gym.s
@@ -0,0 +1,24 @@
+MauvilleCity_Gym_MapObjects:: @ 838821C
+ object_event 1, MAP_OBJ_GFX_WATTSON, 0, 4, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, MauvilleCity_Gym_EventScript_1565AB, 913, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_6, 0, 6, 0, 9, 0, 3, 9, 0, 0, 1, 0, 2, 0, MauvilleCity_Gym_EventScript_1566FD, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_GIRL_3, 0, 7, 0, 11, 0, 3, 8, 0, 0, 1, 0, 1, 0, MauvilleCity_Gym_EventScript_15672B, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_YOUNGSTER, 0, 1, 0, 13, 0, 3, 10, 0, 0, 1, 0, 1, 0, MauvilleCity_Gym_EventScript_156714, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_MAN_6, 0, 2, 0, 15, 0, 3, 8, 0, 0, 1, 0, 2, 0, MauvilleCity_Gym_EventScript_1566E6, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_MAN_2, 0, 7, 0, 20, 0, 3, 9, 0, 0, 0, 0, 0, 0, MauvilleCity_Gym_EventScript_156742, 0, 0, 0
+
+MauvilleCity_Gym_MapWarps:: @ 83882AC
+ warp_def 4, 20, 0, 0, MauvilleCity
+ warp_def 5, 20, 0, 0, MauvilleCity
+
+MauvilleCity_Gym_MapCoordEvents:: @ 83882BC
+ coord_event 0, 9, 3, 0, 0x4000, 0, 0, MauvilleCity_Gym_EventScript_15664B
+ coord_event 8, 11, 3, 0, 0x4000, 0, 0, MauvilleCity_Gym_EventScript_156670
+ coord_event 4, 15, 3, 0, 0x4000, 0, 0, MauvilleCity_Gym_EventScript_156695
+
+MauvilleCity_Gym_MapBGEvents:: @ 83882EC
+ bg_event 3, 18, 0, 1, 0, MauvilleCity_Gym_EventScript_156761
+ bg_event 6, 18, 0, 1, 0, MauvilleCity_Gym_EventScript_156771
+
+MauvilleCity_Gym_MapEvents:: @ 8388304
+ map_events MauvilleCity_Gym_MapObjects, MauvilleCity_Gym_MapWarps, MauvilleCity_Gym_MapCoordEvents, MauvilleCity_Gym_MapBGEvents
+
diff --git a/data/maps/events/MauvilleCity_House1.s b/data/maps/events/MauvilleCity_House1.s
new file mode 100644
index 000000000..02fd08bc9
--- /dev/null
+++ b/data/maps/events/MauvilleCity_House1.s
@@ -0,0 +1,10 @@
+MauvilleCity_House1_MapObjects:: @ 8388384
+ object_event 1, MAP_OBJ_GFX_SCIENTIST_1, 0, 4, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, MauvilleCity_House1_EventScript_1569FD, 0, 0, 0
+
+MauvilleCity_House1_MapWarps:: @ 838839C
+ warp_def 3, 7, 0, 4, MauvilleCity
+ warp_def 4, 7, 0, 4, MauvilleCity
+
+MauvilleCity_House1_MapEvents:: @ 83883AC
+ map_events MauvilleCity_House1_MapObjects, MauvilleCity_House1_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MauvilleCity_House2.s b/data/maps/events/MauvilleCity_House2.s
new file mode 100644
index 000000000..5318ac92a
--- /dev/null
+++ b/data/maps/events/MauvilleCity_House2.s
@@ -0,0 +1,10 @@
+MauvilleCity_House2_MapObjects:: @ 8388624
+ object_event 1, MAP_OBJ_GFX_WOMAN_4, 0, 4, 0, 5, 0, 3, 9, 0, 0, 0, 0, 0, 0, MauvilleCity_House2_EventScript_1572C0, 0, 0, 0
+
+MauvilleCity_House2_MapWarps:: @ 838863C
+ warp_def 3, 8, 0, 6, MauvilleCity
+ warp_def 4, 8, 0, 6, MauvilleCity
+
+MauvilleCity_House2_MapEvents:: @ 838864C
+ map_events MauvilleCity_House2_MapObjects, MauvilleCity_House2_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MauvilleCity_Mart.s b/data/maps/events/MauvilleCity_Mart.s
new file mode 100644
index 000000000..4b83cacff
--- /dev/null
+++ b/data/maps/events/MauvilleCity_Mart.s
@@ -0,0 +1,12 @@
+MauvilleCity_Mart_MapObjects:: @ 83887A0
+ object_event 1, MAP_OBJ_GFX_MART_EMPLOYEE, 0, 1, 0, 3, 0, 3, 10, 0, 0, 0, 0, 0, 0, MauvilleCity_Mart_EventScript_1573BE, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_OLD_MAN_1, 0, 5, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, MauvilleCity_Mart_EventScript_1573F4, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MAN_4, 0, 5, 0, 5, 0, 3, 10, 0, 0, 0, 0, 0, 0, MauvilleCity_Mart_EventScript_1573FD, 0, 0, 0
+
+MauvilleCity_Mart_MapWarps:: @ 83887E8
+ warp_def 3, 7, 0, 3, MauvilleCity
+ warp_def 4, 7, 0, 3, MauvilleCity
+
+MauvilleCity_Mart_MapEvents:: @ 83887F8
+ map_events MauvilleCity_Mart_MapObjects, MauvilleCity_Mart_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MauvilleCity_PokemonCenter_1F.s b/data/maps/events/MauvilleCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..2c6599053
--- /dev/null
+++ b/data/maps/events/MauvilleCity_PokemonCenter_1F.s
@@ -0,0 +1,15 @@
+MauvilleCity_PokemonCenter_1F_MapObjects:: @ 8388660
+ object_event 1, MAP_OBJ_GFX_NURSE, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, MauvilleCity_PokemonCenter_1F_EventScript_157369, 0, 0, 0
+ object_event 2, 240, 0, 2, 0, 3, 0, 3, 9, 1, 0, 0, 0, 0, 0, MauvilleCity_PokemonCenter_1F_EventScript_1AE744, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_WOMAN_1, 0, 8, 0, 6, 0, 3, 1, 0, 0, 0, 0, 0, 0, MauvilleCity_PokemonCenter_1F_EventScript_157377, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_WOMAN_7, 0, 11, 0, 4, 0, 3, 3, 16, 0, 0, 0, 0, 0, MauvilleCity_PokemonCenter_1F_EventScript_157380, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_YOUNGSTER, 0, 2, 0, 8, 0, 3, 1, 17, 0, 0, 0, 0, 0, MauvilleCity_PokemonCenter_1F_EventScript_157389, 0, 0, 0
+
+MauvilleCity_PokemonCenter_1F_MapWarps:: @ 83886D8
+ warp_def 7, 8, 3, 1, MauvilleCity
+ warp_def 6, 8, 3, 1, MauvilleCity
+ warp_def 1, 6, 4, 0, MauvilleCity_PokemonCenter_2F
+
+MauvilleCity_PokemonCenter_1F_MapEvents:: @ 83886F0
+ map_events MauvilleCity_PokemonCenter_1F_MapObjects, MauvilleCity_PokemonCenter_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MauvilleCity_PokemonCenter_2F.s b/data/maps/events/MauvilleCity_PokemonCenter_2F.s
new file mode 100644
index 000000000..0586e29f0
--- /dev/null
+++ b/data/maps/events/MauvilleCity_PokemonCenter_2F.s
@@ -0,0 +1,16 @@
+MauvilleCity_PokemonCenter_2F_MapObjects:: @ 8388704
+ object_event 1, MAP_OBJ_GFX_TEALA, 0, 4, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, MauvilleCity_PokemonCenter_2F_EventScript_1573A2, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_TEALA, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, MauvilleCity_PokemonCenter_2F_EventScript_1573A8, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_TEALA, 0, 10, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, MauvilleCity_PokemonCenter_2F_EventScript_1573AE, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_YOUNGSTER, 0, 6, 0, 7, 0, 3, 5, 1, 0, 0, 0, 0, 0, MauvilleCity_PokemonCenter_2F_EventScript_1573B4, 0, 0, 0
+
+MauvilleCity_PokemonCenter_2F_MapWarps:: @ 8388764
+ warp_def 1, 5, 4, 2, MauvilleCity_PokemonCenter_1F
+ warp_def 5, 1, 0, 0, SingleBattleColosseum
+ warp_def 8, 1, 0, 0, TradeCenter
+ warp_def 11, 1, 0, 0, RecordCorner
+ warp_def 0, 0, 0, 0, DoubleBattleColosseum
+
+MauvilleCity_PokemonCenter_2F_MapEvents:: @ 838878C
+ map_events MauvilleCity_PokemonCenter_2F_MapObjects, MauvilleCity_PokemonCenter_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MeteorFalls_1F_1R.s b/data/maps/events/MeteorFalls_1F_1R.s
new file mode 100644
index 000000000..7072ecbdc
--- /dev/null
+++ b/data/maps/events/MeteorFalls_1F_1R.s
@@ -0,0 +1,29 @@
+MeteorFalls_1F_1R_MapObjects:: @ 838BACC
+ object_event 1, MAP_OBJ_GFX_ITEM_BALL, 0, 2, 0, 4, 0, 3, 1, 0, 0, 0, 0, 0, 0, MeteorFalls_1F_1R_EventScript_1B17FB, 1044, 0, 0
+ object_event 2, MAP_OBJ_GFX_ITEM_BALL, 0, 2, 0, 14, 0, 3, 1, 0, 0, 0, 0, 0, 0, MeteorFalls_1F_1R_EventScript_1B1815, 1046, 0, 0
+ object_event 3, MAP_OBJ_GFX_ITEM_BALL, 0, 27, 0, 5, 0, 3, 1, 0, 0, 0, 0, 0, 0, MeteorFalls_1F_1R_EventScript_1B1808, 1045, 0, 0
+ object_event 4, MAP_OBJ_GFX_ITEM_BALL, 0, 26, 0, 32, 0, 3, 1, 0, 0, 0, 0, 0, 0, MeteorFalls_1F_1R_EventScript_1B1822, 1047, 0, 0
+ object_event 5, 241, 0, 12, 0, 20, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 938, 0, 0
+ object_event 6, 241, 0, 14, 0, 21, 0, 3, 9, 0, 0, 0, 0, 0, 0, 0x0, 938, 0, 0
+ object_event 7, 247, 0, 6, 0, 20, 0, 3, 10, 0, 0, 0, 0, 0, 0, 0x0, 939, 0, 0
+ object_event 8, 244, 0, 6, 0, 20, 0, 3, 10, 0, 0, 0, 0, 0, 0, 0x0, 939, 0, 0
+ object_event 9, 244, 0, 6, 0, 21, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0x0, 939, 0, 0
+ object_event 10, MAP_OBJ_GFX_SCIENTIST_1, 0, 13, 0, 23, 0, 3, 21, 0, 0, 0, 0, 0, 0, MeteorFalls_1F_1R_EventScript_15C656, 942, 0, 0
+
+MeteorFalls_1F_1R_MapWarps:: @ 838BBBC
+ warp_def 27, 18, 4, 0, Route114
+ warp_def 6, 39, 3, 0, Route115
+ warp_def 10, 3, 3, 0, MeteorFalls_1F_2R
+ warp_def 5, 4, 3, 4, MeteorFalls_B1F_1R
+ warp_def 26, 28, 3, 5, MeteorFalls_B1F_1R
+
+MeteorFalls_1F_1R_MapCoordEvents:: @ 838BBE4
+ coord_event 14, 18, 4, 0, 0x40bf, 0, 0, MeteorFalls_1F_1R_EventScript_15C49C
+
+MeteorFalls_1F_1R_MapBGEvents:: @ 838BBF4
+ bg_event 38, 9, 0, 1, 0, MeteorFalls_1F_1R_EventScript_14E842
+ bg_event 9, 58, 0, 0, 0, 0x0
+
+MeteorFalls_1F_1R_MapEvents:: @ 838BC0C
+ map_events MeteorFalls_1F_1R_MapObjects, MeteorFalls_1F_1R_MapWarps, MeteorFalls_1F_1R_MapCoordEvents, MeteorFalls_1F_1R_MapBGEvents
+
diff --git a/data/maps/events/MeteorFalls_1F_2R.s b/data/maps/events/MeteorFalls_1F_2R.s
new file mode 100644
index 000000000..db5d53ee6
--- /dev/null
+++ b/data/maps/events/MeteorFalls_1F_2R.s
@@ -0,0 +1,18 @@
+MeteorFalls_1F_2R_MapObjects:: @ 838BC20
+ object_event 1, MAP_OBJ_GFX_MAN_4, 0, 13, 0, 2, 0, 3, 8, 0, 0, 1, 0, 1, 0, MeteorFalls_1F_2R_EventScript_15C679, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_OLD_MAN_1, 0, 6, 0, 12, 0, 3, 8, 17, 0, 1, 0, 0, 0, MeteorFalls_1F_2R_EventScript_15C6B7, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_OLD_WOMAN_1, 0, 7, 0, 12, 0, 3, 8, 17, 0, 1, 0, 0, 0, MeteorFalls_1F_2R_EventScript_15C6FD, 0, 0, 0
+
+MeteorFalls_1F_2R_MapWarps:: @ 838BC68
+ warp_def 10, 29, 3, 2, MeteorFalls_1F_1R
+ warp_def 4, 14, 3, 0, MeteorFalls_B1F_1R
+ warp_def 7, 20, 3, 1, MeteorFalls_B1F_1R
+ warp_def 21, 23, 3, 2, MeteorFalls_B1F_1R
+
+MeteorFalls_1F_2R_MapBGEvents:: @ 838BC88
+ bg_event 38, 9, 0, 1, 0, MeteorFalls_1F_2R_EventScript_14E842
+ bg_event 9, 58, 0, 0, 0, 0x0
+
+MeteorFalls_1F_2R_MapEvents:: @ 838BCA0
+ map_events MeteorFalls_1F_2R_MapObjects, MeteorFalls_1F_2R_MapWarps, 0x0, MeteorFalls_1F_2R_MapBGEvents
+
diff --git a/data/maps/events/MeteorFalls_B1F_1R.s b/data/maps/events/MeteorFalls_B1F_1R.s
new file mode 100644
index 000000000..f5990a9a6
--- /dev/null
+++ b/data/maps/events/MeteorFalls_B1F_1R.s
@@ -0,0 +1,11 @@
+MeteorFalls_B1F_1R_MapWarps:: @ 838BCB4
+ warp_def 5, 6, 4, 1, MeteorFalls_1F_2R
+ warp_def 7, 11, 5, 2, MeteorFalls_1F_2R
+ warp_def 18, 15, 4, 3, MeteorFalls_1F_2R
+ warp_def 17, 3, 3, 0, MeteorFalls_B1F_2R
+ warp_def 3, 23, 5, 3, MeteorFalls_1F_1R
+ warp_def 20, 36, 3, 4, MeteorFalls_1F_1R
+
+MeteorFalls_B1F_1R_MapEvents:: @ 838BCE4
+ map_events 0x0, MeteorFalls_B1F_1R_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MeteorFalls_B1F_2R.s b/data/maps/events/MeteorFalls_B1F_2R.s
new file mode 100644
index 000000000..2a48daee1
--- /dev/null
+++ b/data/maps/events/MeteorFalls_B1F_2R.s
@@ -0,0 +1,9 @@
+MeteorFalls_B1F_2R_MapObjects:: @ 838BCF8
+ object_event 1, MAP_OBJ_GFX_ITEM_BALL, 0, 5, 0, 3, 0, 3, 1, 17, 0, 0, 0, 0, 0, MeteorFalls_B1F_2R_EventScript_1B182F, 1080, 0, 0
+
+MeteorFalls_B1F_2R_MapWarps:: @ 838BD10
+ warp_def 5, 15, 3, 3, MeteorFalls_B1F_1R
+
+MeteorFalls_B1F_2R_MapEvents:: @ 838BD18
+ map_events MeteorFalls_B1F_2R_MapObjects, MeteorFalls_B1F_2R_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MossdeepCity.s b/data/maps/events/MossdeepCity.s
new file mode 100644
index 000000000..2b9a53f62
--- /dev/null
+++ b/data/maps/events/MossdeepCity.s
@@ -0,0 +1,42 @@
+MossdeepCity_MapObjects:: @ 838042C
+ object_event 1, MAP_OBJ_GFX_SAILOR, 0, 42, 0, 24, 0, 5, 2, 17, 0, 0, 0, 0, 0, MossdeepCity_EventScript_14CFB7, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_OLD_MAN_1, 0, 50, 0, 34, 0, 5, 5, 1, 0, 0, 0, 0, 0, MossdeepCity_EventScript_14CFC9, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_WOMAN_2, 0, 32, 0, 12, 0, 5, 2, 17, 0, 0, 0, 0, 0, MossdeepCity_EventScript_14CFAE, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 26, 0, 21, 0, 5, 3, 16, 0, 0, 0, 0, 0, MossdeepCity_EventScript_14CFC0, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_GIRL_1, 0, 45, 0, 18, 0, 7, 9, 0, 0, 0, 0, 0, 0, MossdeepCity_EventScript_14CFD2, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_ITEM_BALL, 0, 62, 0, 35, 0, 5, 1, 0, 0, 0, 0, 0, 0, MossdeepCity_EventScript_1B1745, 1043, 0, 0
+ object_event 7, MAP_OBJ_GFX_MAN_1, 0, 53, 0, 5, 0, 7, 7, 0, 0, 0, 0, 0, 0, MossdeepCity_EventScript_14D011, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_GIRL_1, 0, 56, 0, 21, 0, 7, 10, 17, 0, 0, 0, 0, 0, MossdeepCity_EventScript_14CFDB, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_BOY_2, 0, 23, 0, 13, 0, 5, 2, 17, 0, 0, 0, 0, 0, MossdeepCity_EventScript_14D027, 0, 0, 0
+
+MossdeepCity_MapWarps:: @ 8380504
+ warp_def 28, 9, 0, 0, MossdeepCity_House1
+ warp_def 38, 9, 0, 0, MossdeepCity_Gym
+ warp_def 28, 16, 0, 0, MossdeepCity_PokemonCenter_1F
+ warp_def 67, 24, 0, 0, MossdeepCity_House2
+ warp_def 37, 18, 0, 0, MossdeepCity_Mart
+ warp_def 49, 6, 0, 0, MossdeepCity_House3
+ warp_def 19, 10, 0, 0, MossdeepCity_StevensHouse
+ warp_def 18, 16, 0, 1, MossdeepCity_House4
+ warp_def 64, 13, 0, 0, MossdeepCity_SpaceCenter_1F
+ warp_def 36, 24, 0, 0, MossdeepCity_GameCorner_1F
+
+MossdeepCity_MapCoordEvents:: @ 8380554
+ coord_event 25, 25, 0, 0, 0x4001, 0, 0, MossdeepCity_EventScript_14D008
+ coord_event 26, 25, 0, 0, 0x4001, 0, 0, MossdeepCity_EventScript_14D008
+ coord_event 32, 27, 0, 0, 0x4001, 0, 0, MossdeepCity_EventScript_14D008
+ coord_event 33, 27, 0, 0, 0x4001, 0, 0, MossdeepCity_EventScript_14D008
+
+MossdeepCity_MapBGEvents:: @ 8380594
+ bg_event 25, 16, 0, 0, 0, MossdeepCity_EventScript_14CFF6
+ bg_event 34, 9, 0, 0, 0, MossdeepCity_EventScript_14CFED
+ bg_event 29, 16, 0, 1, 0, MossdeepCity_EventScript_1A00EA
+ bg_event 38, 18, 0, 1, 0, MossdeepCity_EventScript_1A00E1
+ bg_event 66, 14, 0, 0, 0, MossdeepCity_EventScript_14CFFF
+ bg_event 30, 16, 0, 1, 0, MossdeepCity_EventScript_1A00EA
+ bg_event 39, 18, 0, 1, 0, MossdeepCity_EventScript_1A00E1
+ bg_event 57, 21, 7, 0, 0, MossdeepCity_EventScript_14CFE4
+
+MossdeepCity_MapEvents:: @ 83805F4
+ map_events MossdeepCity_MapObjects, MossdeepCity_MapWarps, MossdeepCity_MapCoordEvents, MossdeepCity_MapBGEvents
+
diff --git a/data/maps/events/MossdeepCity_GameCorner_1F.s b/data/maps/events/MossdeepCity_GameCorner_1F.s
new file mode 100644
index 000000000..5cad24dc1
--- /dev/null
+++ b/data/maps/events/MossdeepCity_GameCorner_1F.s
@@ -0,0 +1,14 @@
+MossdeepCity_GameCorner_1F_MapObjects:: @ 838AC6C
+ object_event 1, MAP_OBJ_GFX_OLD_MAN_1, 0, 4, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, MossdeepCity_GameCorner_1F_EventScript_15AD42, 0, 0, 0
+
+MossdeepCity_GameCorner_1F_MapWarps:: @ 838AC84
+ warp_def 3, 7, 0, 9, MossdeepCity
+ warp_def 4, 7, 0, 9, MossdeepCity
+ warp_def 3, 1, 0, 0, MossdeepCity_GameCorner_B1F
+
+MossdeepCity_GameCorner_1F_MapBGEvents:: @ 838AC9C
+ bg_event 3, 1, 0, 0, 0, MossdeepCity_GameCorner_1F_EventScript_15AE4C
+
+MossdeepCity_GameCorner_1F_MapEvents:: @ 838ACA8
+ map_events MossdeepCity_GameCorner_1F_MapObjects, MossdeepCity_GameCorner_1F_MapWarps, 0x0, MossdeepCity_GameCorner_1F_MapBGEvents
+
diff --git a/data/maps/events/MossdeepCity_GameCorner_B1F.s b/data/maps/events/MossdeepCity_GameCorner_B1F.s
new file mode 100644
index 000000000..47a760807
--- /dev/null
+++ b/data/maps/events/MossdeepCity_GameCorner_B1F.s
@@ -0,0 +1,9 @@
+MossdeepCity_GameCorner_B1F_MapObjects:: @ 838ACBC
+ object_event 1, 240, 0, 6, 0, 5, 0, 3, 9, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+
+MossdeepCity_GameCorner_B1F_MapWarps:: @ 838ACD4
+ warp_def 3, 1, 0, 2, MossdeepCity_GameCorner_1F
+
+MossdeepCity_GameCorner_B1F_MapEvents:: @ 838ACDC
+ map_events MossdeepCity_GameCorner_B1F_MapObjects, MossdeepCity_GameCorner_B1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MossdeepCity_Gym.s b/data/maps/events/MossdeepCity_Gym.s
new file mode 100644
index 000000000..cafe7a834
--- /dev/null
+++ b/data/maps/events/MossdeepCity_Gym.s
@@ -0,0 +1,29 @@
+MossdeepCity_Gym_MapObjects:: @ 838A660
+ object_event 1, MAP_OBJ_GFX_TATE, 0, 8, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, MossdeepCity_Gym_EventScript_15A56B, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_PSYCHIC_M, 0, 2, 0, 24, 0, 3, 7, 0, 0, 1, 0, 1, 0, MossdeepCity_Gym_EventScript_15A74E, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_PSYCHIC_M, 0, 17, 0, 18, 0, 3, 7, 0, 0, 1, 0, 1, 0, MossdeepCity_Gym_EventScript_15A77C, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_LASS, 0, 9, 0, 17, 0, 3, 9, 0, 0, 1, 0, 1, 0, MossdeepCity_Gym_EventScript_15A7C1, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_LASS, 0, 11, 0, 10, 0, 3, 8, 0, 0, 1, 0, 1, 0, MossdeepCity_Gym_EventScript_15A7AA, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_PSYCHIC_M, 0, 0, 0, 7, 0, 3, 10, 0, 0, 1, 0, 1, 0, MossdeepCity_Gym_EventScript_15A765, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_LASS, 0, 4, 0, 3, 0, 3, 8, 0, 0, 1, 0, 2, 0, MossdeepCity_Gym_EventScript_15A793, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_MAN_2, 0, 8, 0, 29, 0, 3, 10, 0, 0, 0, 0, 0, 0, MossdeepCity_Gym_EventScript_15A7D8, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_LIZA, 0, 9, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, MossdeepCity_Gym_EventScript_15A56B, 0, 0, 0
+
+MossdeepCity_Gym_MapWarps:: @ 838A738
+ warp_def 9, 29, 0, 1, MossdeepCity
+ warp_def 10, 29, 0, 1, MossdeepCity
+
+MossdeepCity_Gym_MapCoordEvents:: @ 838A748
+ coord_event 12, 3, 3, 0, 0x4001, 0, 0, MossdeepCity_Gym_EventScript_15A742
+
+MossdeepCity_Gym_MapBGEvents:: @ 838A758
+ bg_event 2, 7, 0, 0, 0, MossdeepCity_Gym_EventScript_15A5EA
+ bg_event 8, 10, 0, 0, 0, MossdeepCity_Gym_EventScript_15A646
+ bg_event 17, 15, 0, 0, 0, MossdeepCity_Gym_EventScript_15A69A
+ bg_event 5, 24, 0, 0, 0, MossdeepCity_Gym_EventScript_15A6EE
+ bg_event 7, 27, 0, 1, 0, MossdeepCity_Gym_EventScript_15A7FA
+ bg_event 11, 27, 0, 1, 0, MossdeepCity_Gym_EventScript_15A80A
+
+MossdeepCity_Gym_MapEvents:: @ 838A7A0
+ map_events MossdeepCity_Gym_MapObjects, MossdeepCity_Gym_MapWarps, MossdeepCity_Gym_MapCoordEvents, MossdeepCity_Gym_MapBGEvents
+
diff --git a/data/maps/events/MossdeepCity_House1.s b/data/maps/events/MossdeepCity_House1.s
new file mode 100644
index 000000000..ab1ab92cc
--- /dev/null
+++ b/data/maps/events/MossdeepCity_House1.s
@@ -0,0 +1,11 @@
+MossdeepCity_House1_MapObjects:: @ 838A7B4
+ object_event 1, MAP_OBJ_GFX_BLACK_BELT, 0, 3, 0, 3, 0, 3, 3, 17, 0, 0, 0, 0, 0, MossdeepCity_House1_EventScript_15A82F, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_3, 0, 7, 0, 4, 0, 3, 9, 0, 0, 0, 0, 0, 0, MossdeepCity_House1_EventScript_15A85F, 0, 0, 0
+
+MossdeepCity_House1_MapWarps:: @ 838A7E4
+ warp_def 3, 7, 0, 0, MossdeepCity
+ warp_def 4, 7, 0, 0, MossdeepCity
+
+MossdeepCity_House1_MapEvents:: @ 838A7F4
+ map_events MossdeepCity_House1_MapObjects, MossdeepCity_House1_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MossdeepCity_House2.s b/data/maps/events/MossdeepCity_House2.s
new file mode 100644
index 000000000..e55c0ff06
--- /dev/null
+++ b/data/maps/events/MossdeepCity_House2.s
@@ -0,0 +1,12 @@
+MossdeepCity_House2_MapObjects:: @ 838A808
+ object_event 1, MAP_OBJ_GFX_MAN_5, 0, 6, 0, 6, 0, 3, 9, 0, 0, 0, 0, 0, 0, MossdeepCity_House2_EventScript_15A869, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_LITTLE_GIRL_1, 0, 4, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, MossdeepCity_House2_EventScript_15A872, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_WINGULL, 0, 4, 0, 5, 0, 3, 7, 0, 0, 0, 0, 0, 0, MossdeepCity_House2_EventScript_15A87B, 934, 0, 0
+
+MossdeepCity_House2_MapWarps:: @ 838A850
+ warp_def 3, 8, 0, 3, MossdeepCity
+ warp_def 4, 8, 0, 3, MossdeepCity
+
+MossdeepCity_House2_MapEvents:: @ 838A860
+ map_events MossdeepCity_House2_MapObjects, MossdeepCity_House2_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MossdeepCity_House3.s b/data/maps/events/MossdeepCity_House3.s
new file mode 100644
index 000000000..b55646ca9
--- /dev/null
+++ b/data/maps/events/MossdeepCity_House3.s
@@ -0,0 +1,10 @@
+MossdeepCity_House3_MapObjects:: @ 838AA08
+ object_event 1, MAP_OBJ_GFX_FISHERMAN, 0, 4, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, MossdeepCity_House3_EventScript_15A972, 0, 0, 0
+
+MossdeepCity_House3_MapWarps:: @ 838AA20
+ warp_def 3, 7, 0, 5, MossdeepCity
+ warp_def 4, 7, 0, 5, MossdeepCity
+
+MossdeepCity_House3_MapEvents:: @ 838AA30
+ map_events MossdeepCity_House3_MapObjects, MossdeepCity_House3_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MossdeepCity_House4.s b/data/maps/events/MossdeepCity_House4.s
new file mode 100644
index 000000000..7eefcf496
--- /dev/null
+++ b/data/maps/events/MossdeepCity_House4.s
@@ -0,0 +1,12 @@
+MossdeepCity_House4_MapObjects:: @ 838AAF8
+ object_event 1, MAP_OBJ_GFX_WOMAN_3, 0, 3, 0, 4, 0, 3, 9, 0, 0, 0, 0, 0, 0, MossdeepCity_House4_EventScript_15AB31, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 6, 0, 6, 0, 3, 5, 1, 0, 0, 0, 0, 0, MossdeepCity_House4_EventScript_15AB50, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_SKITTY, 0, 2, 0, 4, 0, 3, 1, 17, 0, 0, 0, 0, 0, MossdeepCity_House4_EventScript_15AB77, 0, 0, 0
+
+MossdeepCity_House4_MapWarps:: @ 838AB40
+ warp_def 4, 7, 0, 7, MossdeepCity
+ warp_def 3, 7, 0, 7, MossdeepCity
+
+MossdeepCity_House4_MapEvents:: @ 838AB50
+ map_events MossdeepCity_House4_MapObjects, MossdeepCity_House4_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MossdeepCity_Mart.s b/data/maps/events/MossdeepCity_Mart.s
new file mode 100644
index 000000000..be10d2e50
--- /dev/null
+++ b/data/maps/events/MossdeepCity_Mart.s
@@ -0,0 +1,13 @@
+MossdeepCity_Mart_MapObjects:: @ 838A984
+ object_event 1, MAP_OBJ_GFX_MART_EMPLOYEE, 0, 1, 0, 3, 0, 3, 10, 0, 0, 0, 0, 0, 0, MossdeepCity_Mart_EventScript_15A926, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_7, 0, 1, 0, 5, 0, 3, 7, 0, 0, 0, 0, 0, 0, MossdeepCity_Mart_EventScript_15A956, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_BOY_2, 0, 8, 0, 3, 0, 3, 3, 16, 0, 0, 0, 0, 0, MossdeepCity_Mart_EventScript_15A95F, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_SAILOR, 0, 5, 0, 3, 0, 3, 2, 17, 0, 0, 0, 0, 0, MossdeepCity_Mart_EventScript_15A968, 0, 0, 0
+
+MossdeepCity_Mart_MapWarps:: @ 838A9E4
+ warp_def 3, 7, 0, 4, MossdeepCity
+ warp_def 4, 7, 0, 4, MossdeepCity
+
+MossdeepCity_Mart_MapEvents:: @ 838A9F4
+ map_events MossdeepCity_Mart_MapObjects, MossdeepCity_Mart_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MossdeepCity_PokemonCenter_1F.s b/data/maps/events/MossdeepCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..ddd6f6d43
--- /dev/null
+++ b/data/maps/events/MossdeepCity_PokemonCenter_1F.s
@@ -0,0 +1,13 @@
+MossdeepCity_PokemonCenter_1F_MapObjects:: @ 838A874
+ object_event 1, MAP_OBJ_GFX_NURSE, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, MossdeepCity_PokemonCenter_1F_EventScript_15A8DA, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_3, 0, 8, 0, 4, 0, 3, 7, 0, 0, 0, 0, 0, 0, MossdeepCity_PokemonCenter_1F_EventScript_15A8E8, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_GIRL_1, 0, 3, 0, 5, 0, 3, 1, 0, 0, 0, 0, 0, 0, MossdeepCity_PokemonCenter_1F_EventScript_15A8F1, 0, 0, 0
+
+MossdeepCity_PokemonCenter_1F_MapWarps:: @ 838A8BC
+ warp_def 7, 8, 3, 2, MossdeepCity
+ warp_def 6, 8, 3, 2, MossdeepCity
+ warp_def 1, 6, 4, 0, MossdeepCity_PokemonCenter_2F
+
+MossdeepCity_PokemonCenter_1F_MapEvents:: @ 838A8D4
+ map_events MossdeepCity_PokemonCenter_1F_MapObjects, MossdeepCity_PokemonCenter_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MossdeepCity_PokemonCenter_2F.s b/data/maps/events/MossdeepCity_PokemonCenter_2F.s
new file mode 100644
index 000000000..abce6d90e
--- /dev/null
+++ b/data/maps/events/MossdeepCity_PokemonCenter_2F.s
@@ -0,0 +1,16 @@
+MossdeepCity_PokemonCenter_2F_MapObjects:: @ 838A8E8
+ object_event 1, MAP_OBJ_GFX_TEALA, 0, 4, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, MossdeepCity_PokemonCenter_2F_EventScript_15A913, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_TEALA, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, MossdeepCity_PokemonCenter_2F_EventScript_15A919, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_TEALA, 0, 10, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, MossdeepCity_PokemonCenter_2F_EventScript_15A91F, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_WOMAN_7, 0, 10, 0, 6, 0, 3, 5, 18, 0, 0, 0, 0, 0, MossdeepCity_PokemonCenter_2F_EventScript_15A90A, 0, 0, 0
+
+MossdeepCity_PokemonCenter_2F_MapWarps:: @ 838A948
+ warp_def 1, 5, 4, 2, MossdeepCity_PokemonCenter_1F
+ warp_def 5, 1, 0, 0, SingleBattleColosseum
+ warp_def 8, 1, 0, 0, TradeCenter
+ warp_def 11, 1, 0, 0, RecordCorner
+ warp_def 0, 0, 0, 0, DoubleBattleColosseum
+
+MossdeepCity_PokemonCenter_2F_MapEvents:: @ 838A970
+ map_events MossdeepCity_PokemonCenter_2F_MapObjects, MossdeepCity_PokemonCenter_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MossdeepCity_SpaceCenter_1F.s b/data/maps/events/MossdeepCity_SpaceCenter_1F.s
new file mode 100644
index 000000000..febaceb4a
--- /dev/null
+++ b/data/maps/events/MossdeepCity_SpaceCenter_1F.s
@@ -0,0 +1,15 @@
+MossdeepCity_SpaceCenter_1F_MapObjects:: @ 838AB64
+ object_event 1, MAP_OBJ_GFX_SCIENTIST_1, 0, 7, 0, 2, 0, 3, 7, 0, 0, 0, 0, 0, 0, MossdeepCity_SpaceCenter_1F_EventScript_15AB8B, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SCIENTIST_1, 0, 2, 0, 2, 0, 3, 7, 0, 0, 0, 0, 0, 0, MossdeepCity_SpaceCenter_1F_EventScript_15ABCC, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_SAILOR, 0, 6, 0, 6, 0, 3, 9, 0, 0, 0, 0, 0, 0, MossdeepCity_SpaceCenter_1F_EventScript_15ABD5, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_OLD_MAN_2, 0, 10, 0, 2, 0, 3, 7, 0, 0, 0, 0, 0, 0, MossdeepCity_SpaceCenter_1F_EventScript_15AC1F, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_WOMAN_5, 0, 14, 0, 7, 0, 3, 3, 17, 0, 0, 0, 0, 0, MossdeepCity_SpaceCenter_1F_EventScript_15AC16, 0, 0, 0
+
+MossdeepCity_SpaceCenter_1F_MapWarps:: @ 838ABDC
+ warp_def 7, 9, 0, 8, MossdeepCity
+ warp_def 8, 9, 0, 8, MossdeepCity
+ warp_def 13, 1, 0, 0, MossdeepCity_SpaceCenter_2F
+
+MossdeepCity_SpaceCenter_1F_MapEvents:: @ 838ABF4
+ map_events MossdeepCity_SpaceCenter_1F_MapObjects, MossdeepCity_SpaceCenter_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MossdeepCity_SpaceCenter_2F.s b/data/maps/events/MossdeepCity_SpaceCenter_2F.s
new file mode 100644
index 000000000..ca4dd97b0
--- /dev/null
+++ b/data/maps/events/MossdeepCity_SpaceCenter_2F.s
@@ -0,0 +1,11 @@
+MossdeepCity_SpaceCenter_2F_MapObjects:: @ 838AC08
+ object_event 1, MAP_OBJ_GFX_BOY_4, 0, 6, 0, 2, 0, 3, 7, 0, 0, 0, 0, 0, 0, MossdeepCity_SpaceCenter_2F_EventScript_15AC49, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_GENTLEMAN, 0, 11, 0, 8, 0, 3, 7, 0, 0, 0, 0, 0, 0, MossdeepCity_SpaceCenter_2F_EventScript_15AC40, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_SCIENTIST_1, 0, 5, 0, 6, 0, 3, 2, 17, 0, 0, 0, 0, 0, MossdeepCity_SpaceCenter_2F_EventScript_15AC37, 0, 0, 0
+
+MossdeepCity_SpaceCenter_2F_MapWarps:: @ 838AC50
+ warp_def 13, 1, 0, 2, MossdeepCity_SpaceCenter_1F
+
+MossdeepCity_SpaceCenter_2F_MapEvents:: @ 838AC58
+ map_events MossdeepCity_SpaceCenter_2F_MapObjects, MossdeepCity_SpaceCenter_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MossdeepCity_StevensHouse.s b/data/maps/events/MossdeepCity_StevensHouse.s
new file mode 100644
index 000000000..062fe3a4e
--- /dev/null
+++ b/data/maps/events/MossdeepCity_StevensHouse.s
@@ -0,0 +1,19 @@
+MossdeepCity_StevensHouse_MapObjects:: @ 838AA44
+ object_event 1, MAP_OBJ_GFX_STEVEN, 0, 9, 0, 6, 0, 3, 10, 0, 0, 0, 0, 0, 0, MossdeepCity_StevensHouse_EventScript_15AAF9, 967, 0, 0
+ object_event 2, MAP_OBJ_GFX_ITEM_BALL, 0, 4, 0, 3, 0, 3, 1, 17, 0, 0, 0, 0, 0, MossdeepCity_StevensHouse_EventScript_15AA7C, 968, 0, 0
+ object_event 3, MAP_OBJ_GFX_ITEM_BALL, 0, 5, 0, 3, 0, 3, 1, 17, 0, 0, 0, 0, 0, MossdeepCity_StevensHouse_EventScript_15AB20, 1133, 0, 0
+ object_event 4, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 6, 0, 4, 0, 3, 76, 17, 0, 0, 0, 0, 0, MossdeepCity_StevensHouse_EventScript_15AB02, 727, 0, 0
+
+MossdeepCity_StevensHouse_MapWarps:: @ 838AAA4
+ warp_def 3, 7, 0, 6, MossdeepCity
+ warp_def 4, 7, 0, 6, MossdeepCity
+
+MossdeepCity_StevensHouse_MapBGEvents:: @ 838AAB4
+ bg_event 0, 1, 0, 0, 0, MossdeepCity_StevensHouse_EventScript_15AAF0
+ bg_event 1, 1, 0, 0, 0, MossdeepCity_StevensHouse_EventScript_15AAF0
+ bg_event 10, 4, 3, 0, 0, MossdeepCity_StevensHouse_EventScript_15AAF0
+ bg_event 10, 6, 3, 0, 0, MossdeepCity_StevensHouse_EventScript_15AAF0
+
+MossdeepCity_StevensHouse_MapEvents:: @ 838AAE4
+ map_events MossdeepCity_StevensHouse_MapObjects, MossdeepCity_StevensHouse_MapWarps, 0x0, MossdeepCity_StevensHouse_MapBGEvents
+
diff --git a/data/maps/events/MtChimney.s b/data/maps/events/MtChimney.s
new file mode 100644
index 000000000..741c7bea9
--- /dev/null
+++ b/data/maps/events/MtChimney.s
@@ -0,0 +1,43 @@
+MtChimney_MapObjects:: @ 838C330
+ object_event 1, 247, 0, 24, 0, 19, 0, 3, 9, 0, 0, 0, 0, 0, 0, MtChimney_EventScript_1B2C95, 927, 0, 0
+ object_event 2, 246, 0, 13, 0, 6, 0, 3, 10, 0, 0, 0, 0, 0, 0, MtChimney_EventScript_1B2CCB, 926, 0, 0
+ object_event 3, 241, 0, 12, 0, 11, 0, 3, 9, 0, 0, 1, 0, 2, 0, MtChimney_EventScript_15D110, 926, 0, 0
+ object_event 4, 241, 0, 32, 0, 5, 0, 3, 9, 0, 0, 0, 0, 0, 0, MtChimney_EventScript_15D162, 926, 0, 0
+ object_event 5, 241, 0, 28, 0, 12, 0, 3, 10, 0, 0, 0, 0, 0, 0, MtChimney_EventScript_15D159, 926, 0, 0
+ object_event 6, 244, 0, 19, 0, 39, 0, 3, 10, 0, 0, 0, 0, 0, 0, MtChimney_EventScript_15D0FE, 927, 0, 0
+ object_event 7, 244, 0, 29, 0, 5, 0, 3, 10, 0, 0, 0, 0, 0, 0, MtChimney_EventScript_15D0F5, 927, 0, 0
+ object_event 8, 244, 0, 31, 0, 12, 0, 3, 9, 0, 0, 0, 0, 0, 0, MtChimney_EventScript_15D107, 927, 0, 0
+ object_event 9, MAP_OBJ_GFX_OLD_WOMAN_2, 0, 16, 0, 37, 0, 3, 8, 0, 0, 0, 0, 0, 0, MtChimney_EventScript_15CF95, 877, 0, 0
+ object_event 10, 241, 0, 22, 0, 39, 0, 3, 9, 0, 0, 0, 0, 0, 0, MtChimney_EventScript_15D162, 926, 0, 0
+ object_event 11, MAP_OBJ_GFX_POOCHYENA, 0, 23, 0, 19, 0, 3, 74, 0, 0, 0, 0, 0, 0, MtChimney_EventScript_15D174, 927, 0, 0
+ object_event 12, MAP_OBJ_GFX_POOCHYENA, 0, 23, 0, 18, 0, 3, 64, 0, 0, 0, 0, 0, 0, MtChimney_EventScript_15D16B, 926, 0, 0
+ object_event 13, 241, 0, 23, 0, 17, 0, 3, 8, 0, 0, 0, 0, 0, 0, MtChimney_EventScript_15D13E, 926, 0, 0
+ object_event 14, MAP_OBJ_GFX_POOCHYENA, 0, 23, 0, 20, 0, 3, 65, 0, 0, 0, 0, 0, 0, MtChimney_EventScript_15D16B, 926, 0, 0
+ object_event 15, MAP_OBJ_GFX_POOCHYENA, 0, 22, 0, 19, 0, 3, 67, 0, 0, 0, 0, 0, 0, MtChimney_EventScript_15D16B, 926, 0, 0
+ object_event 16, 241, 0, 23, 0, 21, 0, 3, 7, 0, 0, 0, 0, 0, 0, MtChimney_EventScript_15D150, 926, 0, 0
+ object_event 17, 241, 0, 21, 0, 19, 0, 3, 10, 0, 0, 0, 0, 0, 0, MtChimney_EventScript_15D13E, 926, 0, 0
+ object_event 18, MAP_OBJ_GFX_POOCHYENA, 0, 30, 0, 12, 0, 3, 66, 0, 0, 0, 0, 0, 0, MtChimney_EventScript_15D174, 927, 0, 0
+ object_event 19, MAP_OBJ_GFX_POOCHYENA, 0, 29, 0, 12, 0, 3, 67, 0, 0, 0, 0, 0, 0, MtChimney_EventScript_15D16B, 926, 0, 0
+ object_event 20, MAP_OBJ_GFX_POOCHYENA, 0, 30, 0, 5, 0, 3, 67, 0, 0, 0, 0, 0, 0, MtChimney_EventScript_15D174, 927, 0, 0
+ object_event 21, MAP_OBJ_GFX_POOCHYENA, 0, 31, 0, 5, 0, 3, 66, 0, 0, 0, 0, 0, 0, MtChimney_EventScript_15D16B, 926, 0, 0
+ object_event 22, 241, 0, 9, 0, 15, 0, 3, 10, 0, 0, 1, 0, 3, 0, MtChimney_EventScript_15D127, 926, 0, 0
+ object_event 23, MAP_OBJ_GFX_POOCHYENA, 0, 20, 0, 39, 0, 3, 67, 0, 0, 0, 0, 0, 0, MtChimney_EventScript_15D174, 927, 0, 0
+ object_event 24, MAP_OBJ_GFX_POOCHYENA, 0, 21, 0, 39, 0, 3, 66, 0, 0, 0, 0, 0, 0, MtChimney_EventScript_15D16B, 926, 0, 0
+ object_event 25, MAP_OBJ_GFX_OLD_WOMAN_1, 0, 16, 0, 18, 0, 3, 13, 0, 0, 1, 0, 3, 0, MtChimney_EventScript_15D1E3, 877, 0, 0
+ object_event 26, MAP_OBJ_GFX_BEAUTY, 0, 14, 0, 7, 0, 3, 70, 0, 0, 1, 0, 4, 0, MtChimney_EventScript_15D221, 877, 0, 0
+ object_event 27, MAP_OBJ_GFX_BEAUTY, 0, 29, 0, 7, 0, 3, 17, 17, 0, 1, 0, 3, 0, MtChimney_EventScript_15D238, 877, 0, 0
+ object_event 28, MAP_OBJ_GFX_BEAUTY, 0, 27, 0, 17, 0, 3, 16, 17, 0, 1, 0, 3, 0, MtChimney_EventScript_15D24F, 877, 0, 0
+
+MtChimney_MapWarps:: @ 838C5D0
+ warp_def 17, 36, 0, 0, MtChimney_CableCarStation
+ warp_def 18, 36, 0, 1, MtChimney_CableCarStation
+ warp_def 20, 41, 3, 2, JaggedPass
+ warp_def 21, 41, 3, 3, JaggedPass
+
+MtChimney_MapBGEvents:: @ 838C5F0
+ bg_event 14, 6, 0, 0, 0, MtChimney_EventScript_15D17D
+ bg_event 24, 37, 3, 0, 0, MtChimney_EventScript_15D1DA
+
+MtChimney_MapEvents:: @ 838C608
+ map_events MtChimney_MapObjects, MtChimney_MapWarps, 0x0, MtChimney_MapBGEvents
+
diff --git a/data/maps/events/MtChimney_CableCarStation.s b/data/maps/events/MtChimney_CableCarStation.s
new file mode 100644
index 000000000..a151775e0
--- /dev/null
+++ b/data/maps/events/MtChimney_CableCarStation.s
@@ -0,0 +1,11 @@
+MtChimney_CableCarStation_MapObjects:: @ 838B828
+ object_event 1, MAP_OBJ_GFX_BEAUTY, 0, 6, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, MtChimney_CableCarStation_EventScript_15C14B, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_CABLE_CAR, 0, 6, 0, 3, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+
+MtChimney_CableCarStation_MapWarps:: @ 838B858
+ warp_def 6, 11, 0, 0, MtChimney
+ warp_def 7, 11, 0, 1, MtChimney
+
+MtChimney_CableCarStation_MapEvents:: @ 838B868
+ map_events MtChimney_CableCarStation_MapObjects, MtChimney_CableCarStation_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MtPyre_1F.s b/data/maps/events/MtPyre_1F.s
new file mode 100644
index 000000000..bd68cb405
--- /dev/null
+++ b/data/maps/events/MtPyre_1F.s
@@ -0,0 +1,16 @@
+MtPyre_1F_MapObjects:: @ 838C7FC
+ object_event 1, MAP_OBJ_GFX_OLD_WOMAN_2, 0, 21, 0, 2, 0, 3, 8, 17, 0, 0, 0, 0, 0, MtPyre_1F_EventScript_15D323, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_2, 0, 17, 0, 8, 0, 3, 7, 17, 0, 0, 0, 0, 0, MtPyre_1F_EventScript_15D35C, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MAN_5, 0, 13, 0, 10, 0, 3, 9, 17, 0, 0, 0, 0, 0, MtPyre_1F_EventScript_15D365, 0, 0, 0
+
+MtPyre_1F_MapWarps:: @ 838C844
+ warp_def 17, 18, 3, 0, Route122
+ warp_def 3, 6, 3, 0, MtPyre_Exterior
+ warp_def 18, 18, 3, 0, Route122
+ warp_def 4, 6, 3, 0, MtPyre_Exterior
+ warp_def 11, 1, 3, 0, MtPyre_2F
+ warp_def 20, 9, 3, 4, MtPyre_2F
+
+MtPyre_1F_MapEvents:: @ 838C874
+ map_events MtPyre_1F_MapObjects, MtPyre_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MtPyre_2F.s b/data/maps/events/MtPyre_2F.s
new file mode 100644
index 000000000..80f64f367
--- /dev/null
+++ b/data/maps/events/MtPyre_2F.s
@@ -0,0 +1,18 @@
+MtPyre_2F_MapObjects:: @ 838C888
+ object_event 1, MAP_OBJ_GFX_MANIAC, 0, 6, 0, 6, 0, 3, 17, 17, 0, 1, 0, 2, 0, MtPyre_2F_EventScript_15D39B, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_ITEM_BALL, 0, 0, 0, 10, 0, 3, 1, 17, 0, 0, 0, 0, 0, MtPyre_2F_EventScript_1B1933, 1129, 0, 0
+ object_event 3, MAP_OBJ_GFX_WOMAN_1, 0, 5, 0, 3, 0, 3, 10, 17, 0, 0, 0, 0, 0, MtPyre_2F_EventScript_15D389, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_MAN_3, 0, 7, 0, 11, 0, 3, 8, 17, 0, 0, 0, 0, 0, MtPyre_2F_EventScript_15D392, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_WOMAN_5, 0, 2, 0, 8, 0, 3, 8, 17, 0, 1, 0, 0, 0, MtPyre_2F_EventScript_15D3CD, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_MAN_5, 0, 3, 0, 8, 0, 3, 8, 17, 0, 1, 0, 0, 0, MtPyre_2F_EventScript_15D3B2, 0, 0, 0
+
+MtPyre_2F_MapWarps:: @ 838C918
+ warp_def 2, 1, 3, 4, MtPyre_1F
+ warp_def 10, 1, 3, 0, MtPyre_3F
+ warp_def 10, 12, 3, 4, MtPyre_3F
+ warp_def 6, 12, 3, 5, MtPyre_3F
+ warp_def 11, 9, 3, 5, MtPyre_1F
+
+MtPyre_2F_MapEvents:: @ 838C940
+ map_events MtPyre_2F_MapObjects, MtPyre_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MtPyre_3F.s b/data/maps/events/MtPyre_3F.s
new file mode 100644
index 000000000..609560c1b
--- /dev/null
+++ b/data/maps/events/MtPyre_3F.s
@@ -0,0 +1,16 @@
+MtPyre_3F_MapObjects:: @ 838C954
+ object_event 1, MAP_OBJ_GFX_PSYCHIC_M, 0, 1, 0, 4, 0, 3, 18, 17, 0, 1, 0, 3, 0, MtPyre_3F_EventScript_15D3E9, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_LASS, 0, 12, 0, 7, 0, 3, 17, 17, 0, 1, 0, 3, 0, MtPyre_3F_EventScript_15D400, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_ITEM_BALL, 0, 0, 0, 7, 0, 3, 1, 17, 0, 0, 0, 0, 0, MtPyre_3F_EventScript_1B1940, 1120, 0, 0
+
+MtPyre_3F_MapWarps:: @ 838C99C
+ warp_def 10, 1, 3, 1, MtPyre_2F
+ warp_def 2, 1, 3, 1, MtPyre_4F
+ warp_def 9, 10, 3, 4, MtPyre_4F
+ warp_def 1, 12, 3, 5, MtPyre_4F
+ warp_def 10, 12, 3, 2, MtPyre_2F
+ warp_def 6, 12, 3, 3, MtPyre_2F
+
+MtPyre_3F_MapEvents:: @ 838C9CC
+ map_events MtPyre_3F_MapObjects, MtPyre_3F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MtPyre_4F.s b/data/maps/events/MtPyre_4F.s
new file mode 100644
index 000000000..9d2650c9e
--- /dev/null
+++ b/data/maps/events/MtPyre_4F.s
@@ -0,0 +1,15 @@
+MtPyre_4F_MapObjects:: @ 838C9E0
+ object_event 1, MAP_OBJ_GFX_BLACK_BELT, 0, 11, 0, 7, 0, 3, 24, 17, 0, 1, 0, 2, 0, MtPyre_4F_EventScript_15D418, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_ITEM_BALL, 0, 3, 0, 11, 0, 3, 1, 17, 0, 0, 0, 0, 0, MtPyre_4F_EventScript_1B194D, 1130, 0, 0
+
+MtPyre_4F_MapWarps:: @ 838CA10
+ warp_def 10, 1, 3, 1, MtPyre_5F
+ warp_def 2, 5, 3, 1, MtPyre_3F
+ warp_def 12, 10, 3, 3, MtPyre_5F
+ warp_def 12, 12, 3, 4, MtPyre_5F
+ warp_def 9, 10, 3, 2, MtPyre_3F
+ warp_def 2, 12, 3, 3, MtPyre_3F
+
+MtPyre_4F_MapEvents:: @ 838CA40
+ map_events MtPyre_4F_MapObjects, MtPyre_4F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MtPyre_5F.s b/data/maps/events/MtPyre_5F.s
new file mode 100644
index 000000000..edc844971
--- /dev/null
+++ b/data/maps/events/MtPyre_5F.s
@@ -0,0 +1,14 @@
+MtPyre_5F_MapObjects:: @ 838CA54
+ object_event 1, MAP_OBJ_GFX_HEX_MANIAC, 0, 3, 0, 7, 0, 3, 17, 17, 0, 1, 0, 2, 0, MtPyre_5F_EventScript_15D430, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_ITEM_BALL, 0, 6, 0, 11, 0, 3, 1, 17, 0, 0, 0, 0, 0, MtPyre_5F_EventScript_1B195A, 1052, 0, 0
+
+MtPyre_5F_MapWarps:: @ 838CA84
+ warp_def 2, 1, 3, 0, MtPyre_6F
+ warp_def 10, 5, 3, 0, MtPyre_4F
+ warp_def 1, 10, 3, 1, MtPyre_6F
+ warp_def 12, 10, 3, 2, MtPyre_4F
+ warp_def 12, 12, 3, 3, MtPyre_4F
+
+MtPyre_5F_MapEvents:: @ 838CAAC
+ map_events MtPyre_5F_MapObjects, MtPyre_5F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MtPyre_6F.s b/data/maps/events/MtPyre_6F.s
new file mode 100644
index 000000000..420ff3711
--- /dev/null
+++ b/data/maps/events/MtPyre_6F.s
@@ -0,0 +1,11 @@
+MtPyre_6F_MapObjects:: @ 838CAC0
+ object_event 1, MAP_OBJ_GFX_HEX_MANIAC, 0, 6, 0, 3, 0, 3, 23, 17, 0, 1, 0, 2, 0, MtPyre_6F_EventScript_15D448, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_ITEM_BALL, 0, 6, 0, 9, 0, 3, 1, 17, 0, 0, 0, 0, 0, MtPyre_6F_EventScript_1B1967, 1089, 0, 0
+
+MtPyre_6F_MapWarps:: @ 838CAF0
+ warp_def 2, 1, 3, 0, MtPyre_5F
+ warp_def 1, 10, 3, 2, MtPyre_5F
+
+MtPyre_6F_MapEvents:: @ 838CB00
+ map_events MtPyre_6F_MapObjects, MtPyre_6F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/MtPyre_Exterior.s b/data/maps/events/MtPyre_Exterior.s
new file mode 100644
index 000000000..f01e9a6b9
--- /dev/null
+++ b/data/maps/events/MtPyre_Exterior.s
@@ -0,0 +1,23 @@
+MtPyre_Exterior_MapObjects:: @ 838CB14
+ object_event 1, MAP_OBJ_GFX_ITEM_BALL, 0, 27, 0, 15, 0, 3, 1, 0, 0, 0, 0, 0, 0, MtPyre_Exterior_EventScript_1B1974, 1073, 0, 0
+ object_event 2, MAP_OBJ_GFX_ITEM_BALL, 0, 19, 0, 40, 0, 3, 1, 0, 0, 0, 0, 0, 0, MtPyre_Exterior_EventScript_1B1981, 1074, 0, 0
+
+MtPyre_Exterior_MapWarps:: @ 838CB44
+ warp_def 10, 42, 3, 1, MtPyre_1F
+ warp_def 19, 10, 3, 1, MtPyre_Summit
+ warp_def 20, 10, 3, 1, MtPyre_Summit
+
+MtPyre_Exterior_MapCoordEvents:: @ 838CB5C
+ coord_event 24, 21, 3, 0, 0, 0, 0, MtPyre_Exterior_EventScript_15D4A7
+ coord_event 25, 21, 3, 0, 0, 0, 0, MtPyre_Exterior_EventScript_15D4A7
+ coord_event 22, 27, 3, 0, 0, 0, 0, MtPyre_Exterior_EventScript_15D4AC
+ coord_event 23, 28, 3, 0, 0, 0, 0, MtPyre_Exterior_EventScript_15D4AC
+ coord_event 26, 21, 3, 0, 0, 0, 0, MtPyre_Exterior_EventScript_15D4A7
+
+MtPyre_Exterior_MapBGEvents:: @ 838CBAC
+ bg_event 9, 8, 0, 7, 0, ITEM_ULTRA_BALL, 29, 0
+ bg_event 16, 22, 0, 7, 0, ITEM_MAX_ETHER, 78, 0
+
+MtPyre_Exterior_MapEvents:: @ 838CBC4
+ map_events MtPyre_Exterior_MapObjects, MtPyre_Exterior_MapWarps, MtPyre_Exterior_MapCoordEvents, MtPyre_Exterior_MapBGEvents
+
diff --git a/data/maps/events/MtPyre_Summit.s b/data/maps/events/MtPyre_Summit.s
new file mode 100644
index 000000000..a424a62fe
--- /dev/null
+++ b/data/maps/events/MtPyre_Summit.s
@@ -0,0 +1,28 @@
+MtPyre_Summit_MapObjects:: @ 838CBD8
+ object_event 1, MAP_OBJ_GFX_OLD_MAN_2, 0, 22, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, MtPyre_Summit_EventScript_15D5EF, 0, 0, 0
+ object_event 2, 246, 0, 23, 0, 6, 0, 3, 7, 0, 0, 0, 0, 0, 0, 0x0, 916, 0, 0
+ object_event 3, MAP_OBJ_GFX_OLD_WOMAN_1, 0, 23, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, MtPyre_Summit_EventScript_15D623, 0, 0, 0
+ object_event 4, 241, 0, 21, 0, 18, 0, 3, 10, 0, 0, 1, 0, 3, 0, MtPyre_Summit_EventScript_1B2DA9, 917, 0, 0
+ object_event 5, 241, 0, 25, 0, 15, 0, 3, 9, 0, 0, 1, 0, 3, 0, MtPyre_Summit_EventScript_1B2DC0, 917, 0, 0
+ object_event 6, 241, 0, 21, 0, 11, 0, 3, 10, 0, 0, 1, 0, 3, 0, MtPyre_Summit_EventScript_1B2DD7, 917, 0, 0
+
+MtPyre_Summit_MapWarps:: @ 838CC68
+ warp_def 22, 31, 3, 1, MtPyre_Exterior
+ warp_def 23, 31, 3, 1, MtPyre_Exterior
+ warp_def 24, 31, 3, 1, MtPyre_Exterior
+
+MtPyre_Summit_MapCoordEvents:: @ 838CC80
+ coord_event 22, 7, 3, 0, 0x40b9, 0, 0, MtPyre_Summit_EventScript_15D4BD
+ coord_event 23, 7, 3, 0, 0x40b9, 0, 0, MtPyre_Summit_EventScript_15D4C9
+ coord_event 24, 7, 3, 0, 0x40b9, 0, 0, MtPyre_Summit_EventScript_15D4D5
+ coord_event 22, 7, 3, 0, 0x40b9, 2, 0, MtPyre_Summit_EventScript_15D6CE
+ coord_event 23, 7, 3, 0, 0x40b9, 2, 0, MtPyre_Summit_EventScript_15D6DA
+ coord_event 24, 7, 3, 0, 0x40b9, 2, 0, MtPyre_Summit_EventScript_15D6E6
+
+MtPyre_Summit_MapBGEvents:: @ 838CCE0
+ bg_event 9, 25, 0, 7, 0, ITEM_ZINC, 79, 0
+ bg_event 37, 7, 3, 7, 0, ITEM_RARE_CANDY, 80, 0
+
+MtPyre_Summit_MapEvents:: @ 838CCF8
+ map_events MtPyre_Summit_MapObjects, MtPyre_Summit_MapWarps, MtPyre_Summit_MapCoordEvents, MtPyre_Summit_MapBGEvents
+
diff --git a/data/maps/events/NewMauville_Entrance.s b/data/maps/events/NewMauville_Entrance.s
new file mode 100644
index 000000000..e1b1e2e04
--- /dev/null
+++ b/data/maps/events/NewMauville_Entrance.s
@@ -0,0 +1,10 @@
+NewMauville_Entrance_MapWarps:: @ 838DED4
+ warp_def 4, 6, 3, 0, Route110
+ warp_def 4, 1, 3, 0, NewMauville_Inside
+
+NewMauville_Entrance_MapCoordEvents:: @ 838DEE4
+ coord_event 4, 2, 3, 0, 0x40ba, 0, 0, NewMauville_Entrance_EventScript_15E4DC
+
+NewMauville_Entrance_MapEvents:: @ 838DEF4
+ map_events 0x0, NewMauville_Entrance_MapWarps, NewMauville_Entrance_MapCoordEvents, 0x0
+
diff --git a/data/maps/events/NewMauville_Inside.s b/data/maps/events/NewMauville_Inside.s
new file mode 100644
index 000000000..c0cd16a2f
--- /dev/null
+++ b/data/maps/events/NewMauville_Inside.s
@@ -0,0 +1,38 @@
+NewMauville_Inside_MapObjects:: @ 838DF08
+ object_event 1, MAP_OBJ_GFX_ITEM_BALL, 0, 32, 0, 25, 0, 3, 1, 0, 0, 0, 0, 0, 0, NewMauville_Inside_EventScript_1B183C, 1075, 0, 0
+ object_event 2, MAP_OBJ_GFX_ITEM_BALL, 0, 16, 0, 22, 0, 3, 1, 0, 0, 0, 0, 0, 0, NewMauville_Inside_EventScript_1B1849, 1076, 0, 0
+ object_event 3, MAP_OBJ_GFX_ITEM_BALL, 0, 39, 0, 4, 0, 3, 1, 17, 0, 0, 0, 0, 0, NewMauville_Inside_EventScript_1B1856, 1110, 0, 0
+ object_event 4, MAP_OBJ_GFX_ITEM_BALL, 0, 17, 0, 10, 0, 3, 1, 17, 0, 0, 0, 0, 0, NewMauville_Inside_EventScript_1B1863, 1122, 0, 0
+ object_event 5, MAP_OBJ_GFX_ITEM_BALL, 0, 2, 0, 11, 0, 3, 1, 17, 0, 0, 0, 0, 0, NewMauville_Inside_EventScript_1B1870, 1123, 0, 0
+ object_event 6, MAP_OBJ_GFX_ITEM_BALL, 0, 25, 0, 18, 0, 3, 1, 17, 0, 0, 0, 0, 0, NewMauville_Inside_EventScript_15E900, 974, 0, 0
+ object_event 7, MAP_OBJ_GFX_ITEM_BALL, 0, 6, 0, 11, 0, 3, 1, 17, 0, 0, 0, 0, 0, NewMauville_Inside_EventScript_15E91E, 975, 0, 0
+ object_event 8, MAP_OBJ_GFX_ITEM_BALL, 0, 13, 0, 10, 0, 3, 1, 17, 0, 0, 0, 0, 0, NewMauville_Inside_EventScript_15E93C, 976, 0, 0
+
+NewMauville_Inside_MapWarps:: @ 838DFC8
+ warp_def 32, 33, 3, 1, NewMauville_Entrance
+
+NewMauville_Inside_MapCoordEvents:: @ 838DFD0
+ coord_event 30, 38, 3, 0, 0x4001, 0, 0, NewMauville_Inside_EventScript_15E5AA
+ coord_event 18, 36, 3, 0, 0x4002, 0, 0, NewMauville_Inside_EventScript_15E5C2
+ coord_event 4, 26, 3, 0, 0x4001, 0, 0, NewMauville_Inside_EventScript_15E5AA
+ coord_event 16, 22, 3, 0, 0x4001, 0, 0, NewMauville_Inside_EventScript_15E5AA
+ coord_event 25, 18, 3, 0, 0x4002, 0, 0, NewMauville_Inside_EventScript_15E5C2
+ coord_event 2, 11, 3, 0, 0x4002, 0, 0, NewMauville_Inside_EventScript_15E5C2
+ coord_event 6, 11, 3, 0, 0x4001, 0, 0, NewMauville_Inside_EventScript_15E5AA
+ coord_event 13, 10, 3, 0, 0x4001, 0, 0, NewMauville_Inside_EventScript_15E5AA
+ coord_event 17, 10, 3, 0, 0x4002, 0, 0, NewMauville_Inside_EventScript_15E5C2
+ coord_event 33, 6, 3, 0, 0x40ba, 1, 0, NewMauville_Inside_EventScript_15E876
+
+NewMauville_Inside_MapBGEvents:: @ 838E070
+ bg_event 32, 4, 3, 0, 0, NewMauville_Inside_EventScript_15E8E0
+ bg_event 32, 3, 3, 0, 0, NewMauville_Inside_EventScript_15E8E0
+ bg_event 32, 2, 0, 0, 0, NewMauville_Inside_EventScript_15E8E0
+ bg_event 33, 4, 3, 0, 0, NewMauville_Inside_EventScript_15E8E0
+ bg_event 34, 4, 3, 0, 0, NewMauville_Inside_EventScript_15E8E0
+ bg_event 35, 4, 3, 0, 0, NewMauville_Inside_EventScript_15E8E0
+ bg_event 35, 3, 3, 0, 0, NewMauville_Inside_EventScript_15E8E0
+ bg_event 35, 2, 0, 0, 0, NewMauville_Inside_EventScript_15E8E0
+
+NewMauville_Inside_MapEvents:: @ 838E0D0
+ map_events NewMauville_Inside_MapObjects, NewMauville_Inside_MapWarps, NewMauville_Inside_MapCoordEvents, NewMauville_Inside_MapBGEvents
+
diff --git a/data/maps/events/OldaleTown.s b/data/maps/events/OldaleTown.s
new file mode 100644
index 000000000..5c4fb5f93
--- /dev/null
+++ b/data/maps/events/OldaleTown.s
@@ -0,0 +1,28 @@
+OldaleTown_MapObjects:: @ 8380A78
+ object_event 1, MAP_OBJ_GFX_GIRL_3, 0, 16, 0, 11, 0, 3, 9, 0, 0, 0, 0, 0, 0, OldaleTown_EventScript_14DDB3, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MART_EMPLOYEE, 0, 13, 0, 7, 0, 3, 8, 0, 0, 0, 0, 0, 0, OldaleTown_EventScript_14DDBC, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MANIAC, 0, 8, 0, 9, 0, 3, 10, 0, 0, 0, 0, 0, 0, OldaleTown_EventScript_14DEDF, 0, 0, 0
+ object_event 4, 240, 0, 11, 0, 19, 0, 3, 7, 17, 0, 0, 0, 0, 0, OldaleTown_EventScript_14DF30, 979, 0, 0
+
+OldaleTown_MapWarps:: @ 8380AD8
+ warp_def 5, 7, 0, 0, OldaleTown_House1
+ warp_def 15, 16, 0, 0, OldaleTown_House2
+ warp_def 6, 16, 0, 0, OldaleTown_PokemonCenter_1F
+ warp_def 14, 6, 0, 0, OldaleTown_Mart
+
+OldaleTown_MapCoordEvents:: @ 8380AF8
+ coord_event 0, 10, 3, 0, 0x4051, 0, 0, OldaleTown_EventScript_14DEFF
+ coord_event 8, 19, 3, 0, 0x40c7, 1, 0, OldaleTown_EventScript_14DF41
+ coord_event 9, 19, 3, 0, 0x40c7, 1, 0, OldaleTown_EventScript_14DF5C
+ coord_event 10, 19, 3, 0, 0x40c7, 1, 0, OldaleTown_EventScript_14DF77
+
+OldaleTown_MapBGEvents:: @ 8380B38
+ bg_event 11, 9, 0, 0, 0, OldaleTown_EventScript_14DDAA
+ bg_event 7, 16, 0, 1, 0, OldaleTown_EventScript_1A00EA
+ bg_event 15, 6, 0, 1, 0, OldaleTown_EventScript_1A00E1
+ bg_event 8, 16, 0, 1, 0, OldaleTown_EventScript_1A00EA
+ bg_event 16, 6, 0, 1, 0, OldaleTown_EventScript_1A00E1
+
+OldaleTown_MapEvents:: @ 8380B74
+ map_events OldaleTown_MapObjects, OldaleTown_MapWarps, OldaleTown_MapCoordEvents, OldaleTown_MapBGEvents
+
diff --git a/data/maps/events/OldaleTown_House1.s b/data/maps/events/OldaleTown_House1.s
new file mode 100644
index 000000000..9af90253e
--- /dev/null
+++ b/data/maps/events/OldaleTown_House1.s
@@ -0,0 +1,10 @@
+OldaleTown_House1_MapObjects:: @ 8385C4C
+ object_event 1, MAP_OBJ_GFX_WOMAN_3, 0, 6, 0, 4, 0, 3, 2, 17, 0, 0, 0, 0, 0, OldaleTown_House1_EventScript_152EEC, 0, 0, 0
+
+OldaleTown_House1_MapWarps:: @ 8385C64
+ warp_def 3, 8, 0, 0, OldaleTown
+ warp_def 4, 8, 0, 0, OldaleTown
+
+OldaleTown_House1_MapEvents:: @ 8385C74
+ map_events OldaleTown_House1_MapObjects, OldaleTown_House1_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/OldaleTown_House2.s b/data/maps/events/OldaleTown_House2.s
new file mode 100644
index 000000000..b183496ca
--- /dev/null
+++ b/data/maps/events/OldaleTown_House2.s
@@ -0,0 +1,11 @@
+OldaleTown_House2_MapObjects:: @ 8385C88
+ object_event 1, MAP_OBJ_GFX_WOMAN_2, 0, 4, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, OldaleTown_House2_EventScript_152EF6, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SCHOOL_KID_M, 0, 7, 0, 4, 0, 3, 9, 0, 0, 0, 0, 0, 0, OldaleTown_House2_EventScript_152EFF, 0, 0, 0
+
+OldaleTown_House2_MapWarps:: @ 8385CB8
+ warp_def 3, 7, 0, 1, OldaleTown
+ warp_def 4, 7, 0, 1, OldaleTown
+
+OldaleTown_House2_MapEvents:: @ 8385CC8
+ map_events OldaleTown_House2_MapObjects, OldaleTown_House2_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/OldaleTown_Mart.s b/data/maps/events/OldaleTown_Mart.s
new file mode 100644
index 000000000..1621d4a79
--- /dev/null
+++ b/data/maps/events/OldaleTown_Mart.s
@@ -0,0 +1,12 @@
+OldaleTown_Mart_MapObjects:: @ 8385DEC
+ object_event 1, MAP_OBJ_GFX_MART_EMPLOYEE, 0, 1, 0, 3, 0, 3, 10, 0, 0, 0, 0, 0, 0, OldaleTown_Mart_EventScript_152F79, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_7, 0, 5, 0, 5, 0, 3, 10, 0, 0, 0, 0, 0, 0, OldaleTown_Mart_EventScript_152FC6, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_BOY_1, 0, 9, 0, 4, 0, 3, 3, 16, 0, 0, 0, 0, 0, OldaleTown_Mart_EventScript_152FE5, 0, 0, 0
+
+OldaleTown_Mart_MapWarps:: @ 8385E34
+ warp_def 3, 7, 0, 3, OldaleTown
+ warp_def 4, 7, 0, 3, OldaleTown
+
+OldaleTown_Mart_MapEvents:: @ 8385E44
+ map_events OldaleTown_Mart_MapObjects, OldaleTown_Mart_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/OldaleTown_PokemonCenter_1F.s b/data/maps/events/OldaleTown_PokemonCenter_1F.s
new file mode 100644
index 000000000..54049c00e
--- /dev/null
+++ b/data/maps/events/OldaleTown_PokemonCenter_1F.s
@@ -0,0 +1,14 @@
+OldaleTown_PokemonCenter_1F_MapObjects:: @ 8385CDC
+ object_event 1, MAP_OBJ_GFX_NURSE, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, OldaleTown_PokemonCenter_1F_EventScript_152F17, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_GENTLEMAN, 0, 4, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, OldaleTown_PokemonCenter_1F_EventScript_152F25, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_BOY_1, 0, 10, 0, 6, 0, 3, 10, 0, 0, 0, 0, 0, 0, OldaleTown_PokemonCenter_1F_EventScript_152F2E, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_GIRL_3, 0, 3, 0, 7, 0, 3, 10, 17, 0, 0, 0, 0, 0, OldaleTown_PokemonCenter_1F_EventScript_152F37, 0, 0, 0
+
+OldaleTown_PokemonCenter_1F_MapWarps:: @ 8385D3C
+ warp_def 7, 8, 3, 2, OldaleTown
+ warp_def 6, 8, 3, 2, OldaleTown
+ warp_def 1, 6, 4, 0, OldaleTown_PokemonCenter_2F
+
+OldaleTown_PokemonCenter_1F_MapEvents:: @ 8385D54
+ map_events OldaleTown_PokemonCenter_1F_MapObjects, OldaleTown_PokemonCenter_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/OldaleTown_PokemonCenter_2F.s b/data/maps/events/OldaleTown_PokemonCenter_2F.s
new file mode 100644
index 000000000..79e7be760
--- /dev/null
+++ b/data/maps/events/OldaleTown_PokemonCenter_2F.s
@@ -0,0 +1,15 @@
+OldaleTown_PokemonCenter_2F_MapObjects:: @ 8385D68
+ object_event 1, MAP_OBJ_GFX_TEALA, 0, 4, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, OldaleTown_PokemonCenter_2F_EventScript_152F66, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_TEALA, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, OldaleTown_PokemonCenter_2F_EventScript_152F6C, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_TEALA, 0, 10, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, OldaleTown_PokemonCenter_2F_EventScript_152F72, 0, 0, 0
+
+OldaleTown_PokemonCenter_2F_MapWarps:: @ 8385DB0
+ warp_def 1, 5, 4, 2, OldaleTown_PokemonCenter_1F
+ warp_def 5, 1, 0, 0, SingleBattleColosseum
+ warp_def 8, 1, 0, 0, TradeCenter
+ warp_def 11, 1, 0, 0, RecordCorner
+ warp_def 0, 0, 0, 0, DoubleBattleColosseum
+
+OldaleTown_PokemonCenter_2F_MapEvents:: @ 8385DD8
+ map_events OldaleTown_PokemonCenter_2F_MapObjects, OldaleTown_PokemonCenter_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/PacifidlogTown.s b/data/maps/events/PacifidlogTown.s
new file mode 100644
index 000000000..a608c7c12
--- /dev/null
+++ b/data/maps/events/PacifidlogTown.s
@@ -0,0 +1,21 @@
+PacifidlogTown_MapObjects:: @ 838100C
+ object_event 1, MAP_OBJ_GFX_GIRL_1, 0, 10, 0, 23, 0, 3, 9, 0, 0, 0, 0, 0, 0, PacifidlogTown_EventScript_14E909, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_FISHERMAN, 0, 11, 0, 14, 0, 3, 10, 0, 0, 0, 0, 0, 0, PacifidlogTown_EventScript_14E912, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 9, 0, 16, 0, 3, 8, 0, 0, 0, 0, 0, 0, PacifidlogTown_EventScript_14E900, 0, 0, 0
+
+PacifidlogTown_MapWarps:: @ 8381054
+ warp_def 8, 15, 0, 0, PacifidlogTown_PokemonCenter_1F
+ warp_def 16, 13, 0, 0, PacifidlogTown_House1
+ warp_def 3, 22, 0, 0, PacifidlogTown_House2
+ warp_def 12, 24, 0, 0, PacifidlogTown_House3
+ warp_def 2, 12, 0, 0, PacifidlogTown_House4
+ warp_def 17, 21, 0, 0, PacifidlogTown_House5
+
+PacifidlogTown_MapBGEvents:: @ 8381084
+ bg_event 9, 15, 0, 1, 0, PacifidlogTown_EventScript_1A00EA
+ bg_event 7, 16, 0, 0, 0, PacifidlogTown_EventScript_14E91B
+ bg_event 10, 15, 0, 1, 0, PacifidlogTown_EventScript_1A00EA
+
+PacifidlogTown_MapEvents:: @ 83810A8
+ map_events PacifidlogTown_MapObjects, PacifidlogTown_MapWarps, 0x0, PacifidlogTown_MapBGEvents
+
diff --git a/data/maps/events/PacifidlogTown_House1.s b/data/maps/events/PacifidlogTown_House1.s
new file mode 100644
index 000000000..917648e80
--- /dev/null
+++ b/data/maps/events/PacifidlogTown_House1.s
@@ -0,0 +1,11 @@
+PacifidlogTown_House1_MapObjects:: @ 8386F40
+ object_event 1, MAP_OBJ_GFX_MAN_6, 0, 3, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, PacifidlogTown_House1_EventScript_154155, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_5, 0, 6, 0, 4, 0, 3, 9, 0, 0, 0, 0, 0, 0, PacifidlogTown_House1_EventScript_15415E, 0, 0, 0
+
+PacifidlogTown_House1_MapWarps:: @ 8386F70
+ warp_def 4, 8, 0, 1, PacifidlogTown
+ warp_def 5, 8, 0, 1, PacifidlogTown
+
+PacifidlogTown_House1_MapEvents:: @ 8386F80
+ map_events PacifidlogTown_House1_MapObjects, PacifidlogTown_House1_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/PacifidlogTown_House2.s b/data/maps/events/PacifidlogTown_House2.s
new file mode 100644
index 000000000..4765253b2
--- /dev/null
+++ b/data/maps/events/PacifidlogTown_House2.s
@@ -0,0 +1,12 @@
+PacifidlogTown_House2_MapObjects:: @ 8386F94
+ object_event 1, MAP_OBJ_GFX_GENTLEMAN, 0, 3, 0, 5, 0, 3, 8, 17, 0, 0, 0, 0, 0, PacifidlogTown_House2_EventScript_154168, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_AZURILL, 0, 8, 0, 6, 0, 3, 1, 17, 0, 0, 0, 0, 0, PacifidlogTown_House2_EventScript_154267, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_AZURILL, 0, 1, 0, 7, 0, 3, 1, 17, 0, 0, 0, 0, 0, PacifidlogTown_House2_EventScript_154282, 0, 0, 0
+
+PacifidlogTown_House2_MapWarps:: @ 8386FDC
+ warp_def 4, 8, 0, 2, PacifidlogTown
+ warp_def 5, 8, 0, 2, PacifidlogTown
+
+PacifidlogTown_House2_MapEvents:: @ 8386FEC
+ map_events PacifidlogTown_House2_MapObjects, PacifidlogTown_House2_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/PacifidlogTown_House3.s b/data/maps/events/PacifidlogTown_House3.s
new file mode 100644
index 000000000..e2a6f747f
--- /dev/null
+++ b/data/maps/events/PacifidlogTown_House3.s
@@ -0,0 +1,11 @@
+PacifidlogTown_House3_MapObjects:: @ 8387000
+ object_event 1, MAP_OBJ_GFX_GIRL_2, 0, 3, 0, 5, 0, 3, 18, 0, 0, 0, 0, 0, 0, PacifidlogTown_House3_EventScript_154342, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_5, 0, 4, 0, 2, 0, 3, 10, 17, 0, 0, 0, 0, 0, PacifidlogTown_House3_EventScript_15429E, 0, 0, 0
+
+PacifidlogTown_House3_MapWarps:: @ 8387030
+ warp_def 4, 8, 0, 3, PacifidlogTown
+ warp_def 5, 8, 0, 3, PacifidlogTown
+
+PacifidlogTown_House3_MapEvents:: @ 8387040
+ map_events PacifidlogTown_House3_MapObjects, PacifidlogTown_House3_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/PacifidlogTown_House4.s b/data/maps/events/PacifidlogTown_House4.s
new file mode 100644
index 000000000..52666b2e3
--- /dev/null
+++ b/data/maps/events/PacifidlogTown_House4.s
@@ -0,0 +1,12 @@
+PacifidlogTown_House4_MapObjects:: @ 8387054
+ object_event 1, MAP_OBJ_GFX_WOMAN_3, 0, 3, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, PacifidlogTown_House4_EventScript_154355, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_LITTLE_GIRL_2, 0, 7, 0, 5, 0, 3, 2, 17, 0, 0, 0, 0, 0, PacifidlogTown_House4_EventScript_15434C, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_BOY_1, 0, 7, 0, 4, 0, 3, 2, 17, 0, 0, 0, 0, 0, PacifidlogTown_House4_EventScript_15435E, 0, 0, 0
+
+PacifidlogTown_House4_MapWarps:: @ 838709C
+ warp_def 4, 8, 0, 4, PacifidlogTown
+ warp_def 5, 8, 0, 4, PacifidlogTown
+
+PacifidlogTown_House4_MapEvents:: @ 83870AC
+ map_events PacifidlogTown_House4_MapObjects, PacifidlogTown_House4_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/PacifidlogTown_House5.s b/data/maps/events/PacifidlogTown_House5.s
new file mode 100644
index 000000000..b2793c57a
--- /dev/null
+++ b/data/maps/events/PacifidlogTown_House5.s
@@ -0,0 +1,11 @@
+PacifidlogTown_House5_MapObjects:: @ 83870C0
+ object_event 1, MAP_OBJ_GFX_OLD_MAN_1, 0, 9, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, PacifidlogTown_House5_EventScript_154394, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_GENTLEMAN, 0, 3, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, PacifidlogTown_House5_EventScript_1543BA, 0, 0, 0
+
+PacifidlogTown_House5_MapWarps:: @ 83870F0
+ warp_def 4, 8, 0, 5, PacifidlogTown
+ warp_def 5, 8, 0, 5, PacifidlogTown
+
+PacifidlogTown_House5_MapEvents:: @ 8387100
+ map_events PacifidlogTown_House5_MapObjects, PacifidlogTown_House5_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/PacifidlogTown_PokemonCenter_1F.s b/data/maps/events/PacifidlogTown_PokemonCenter_1F.s
new file mode 100644
index 000000000..d66a2eafc
--- /dev/null
+++ b/data/maps/events/PacifidlogTown_PokemonCenter_1F.s
@@ -0,0 +1,14 @@
+PacifidlogTown_PokemonCenter_1F_MapObjects:: @ 8386E30
+ object_event 1, MAP_OBJ_GFX_NURSE, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, PacifidlogTown_PokemonCenter_1F_EventScript_153F18, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_OLD_MAN_2, 0, 10, 0, 6, 0, 3, 9, 0, 0, 0, 0, 0, 0, PacifidlogTown_PokemonCenter_1F_EventScript_154129, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_GIRL_2, 0, 2, 0, 2, 0, 3, 7, 0, 0, 0, 0, 0, 0, PacifidlogTown_PokemonCenter_1F_EventScript_154117, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_WOMAN_1, 0, 4, 0, 5, 0, 3, 1, 17, 0, 0, 0, 0, 0, PacifidlogTown_PokemonCenter_1F_EventScript_154120, 0, 0, 0
+
+PacifidlogTown_PokemonCenter_1F_MapWarps:: @ 8386E90
+ warp_def 7, 8, 3, 0, PacifidlogTown
+ warp_def 6, 8, 3, 0, PacifidlogTown
+ warp_def 1, 6, 4, 0, PacifidlogTown_PokemonCenter_2F
+
+PacifidlogTown_PokemonCenter_1F_MapEvents:: @ 8386EA8
+ map_events PacifidlogTown_PokemonCenter_1F_MapObjects, PacifidlogTown_PokemonCenter_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/PacifidlogTown_PokemonCenter_2F.s b/data/maps/events/PacifidlogTown_PokemonCenter_2F.s
new file mode 100644
index 000000000..abe443e5e
--- /dev/null
+++ b/data/maps/events/PacifidlogTown_PokemonCenter_2F.s
@@ -0,0 +1,15 @@
+PacifidlogTown_PokemonCenter_2F_MapObjects:: @ 8386EBC
+ object_event 1, MAP_OBJ_GFX_TEALA, 0, 4, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, PacifidlogTown_PokemonCenter_2F_EventScript_153F48, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_TEALA, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, PacifidlogTown_PokemonCenter_2F_EventScript_153F4E, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_TEALA, 0, 10, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, PacifidlogTown_PokemonCenter_2F_EventScript_15414E, 0, 0, 0
+
+PacifidlogTown_PokemonCenter_2F_MapWarps:: @ 8386F04
+ warp_def 1, 5, 4, 2, PacifidlogTown_PokemonCenter_1F
+ warp_def 5, 1, 0, 0, SingleBattleColosseum
+ warp_def 8, 1, 0, 0, TradeCenter
+ warp_def 11, 1, 0, 0, RecordCorner
+ warp_def 0, 1, 0, 0, DoubleBattleColosseum
+
+PacifidlogTown_PokemonCenter_2F_MapEvents:: @ 8386F2C
+ map_events PacifidlogTown_PokemonCenter_2F_MapObjects, PacifidlogTown_PokemonCenter_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/PetalburgCity.s b/data/maps/events/PetalburgCity.s
new file mode 100644
index 000000000..10525c300
--- /dev/null
+++ b/data/maps/events/PetalburgCity.s
@@ -0,0 +1,38 @@
+PetalburgCity_MapObjects:: @ 837F5F0
+ object_event 1, MAP_OBJ_GFX_WOMAN_5, 0, 16, 0, 18, 0, 3, 2, 17, 0, 0, 0, 0, 0, PetalburgCity_EventScript_14B7C3, 728, 0, 0
+ object_event 2, MAP_OBJ_GFX_WALLY, 0, 15, 0, 10, 0, 3, 7, 0, 0, 0, 0, 0, 0, 0x0, 726, 0, 0
+ object_event 3, MAP_OBJ_GFX_BOY_1, 0, 8, 0, 22, 0, 3, 8, 0, 0, 0, 0, 0, 0, PetalburgCity_EventScript_14B7AC, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_GENTLEMAN, 0, 20, 0, 10, 0, 3, 3, 16, 0, 0, 0, 0, 0, PetalburgCity_EventScript_14B824, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_MAN_1, 0, 15, 0, 11, 0, 3, 7, 0, 0, 0, 0, 0, 0, 0x0, 811, 0, 0
+ object_event 6, MAP_OBJ_GFX_WOMAN_2, 0, 14, 0, 11, 0, 3, 7, 0, 0, 0, 0, 0, 0, 0x0, 812, 0, 0
+ object_event 7, MAP_OBJ_GFX_ITEM_BALL, 0, 19, 0, 2, 0, 3, 1, 0, 0, 0, 0, 0, 0, PetalburgCity_EventScript_1B1704, 1039, 0, 0
+ object_event 8, MAP_OBJ_GFX_ITEM_BALL, 0, 3, 0, 28, 0, 3, 1, 0, 0, 0, 0, 0, 0, PetalburgCity_EventScript_1B1711, 1040, 0, 0
+ object_event 9, MAP_OBJ_GFX_BOY_2, 0, 12, 0, 15, 0, 3, 1, 0, 0, 0, 0, 0, 0, PetalburgCity_EventScript_14BA2D, 0, 0, 0
+
+PetalburgCity_MapWarps:: @ 837F6C8
+ warp_def 10, 19, 0, 0, PetalburgCity_House1
+ warp_def 7, 5, 0, 0, PetalburgCity_WallysHouse
+ warp_def 15, 8, 0, 0, PetalburgCity_Gym
+ warp_def 20, 16, 0, 0, PetalburgCity_PokemonCenter_1F
+ warp_def 20, 24, 0, 0, PetalburgCity_House2
+ warp_def 25, 12, 0, 0, PetalburgCity_Mart
+
+PetalburgCity_MapCoordEvents:: @ 837F6F8
+ coord_event 8, 10, 3, 0, 0x4057, 0, 0, PetalburgCity_EventScript_14B836
+ coord_event 8, 11, 3, 0, 0x4057, 0, 0, PetalburgCity_EventScript_14B842
+ coord_event 8, 12, 3, 0, 0x4057, 0, 0, PetalburgCity_EventScript_14B84E
+ coord_event 8, 13, 3, 0, 0x4057, 0, 0, PetalburgCity_EventScript_14B85A
+
+PetalburgCity_MapBGEvents:: @ 837F738
+ bg_event 17, 10, 0, 0, 0, PetalburgCity_EventScript_14B812
+ bg_event 26, 12, 0, 1, 0, PetalburgCity_EventScript_1A00E1
+ bg_event 21, 16, 0, 1, 0, PetalburgCity_EventScript_1A00EA
+ bg_event 17, 16, 0, 0, 0, PetalburgCity_EventScript_14B81B
+ bg_event 22, 16, 0, 1, 0, PetalburgCity_EventScript_1A00EA
+ bg_event 27, 12, 0, 1, 0, PetalburgCity_EventScript_1A00E1
+ bg_event 8, 9, 0, 0, 0, PetalburgCity_EventScript_14B82D
+ bg_event 11, 29, 3, 7, 0, ITEM_RARE_CANDY, 95, 0
+
+PetalburgCity_MapEvents:: @ 837F798
+ map_events PetalburgCity_MapObjects, PetalburgCity_MapWarps, PetalburgCity_MapCoordEvents, PetalburgCity_MapBGEvents
+
diff --git a/data/maps/events/PetalburgCity_Gym.s b/data/maps/events/PetalburgCity_Gym.s
new file mode 100644
index 000000000..178f2a684
--- /dev/null
+++ b/data/maps/events/PetalburgCity_Gym.s
@@ -0,0 +1,71 @@
+PetalburgCity_Gym_MapObjects:: @ 8387168
+ object_event 1, MAP_OBJ_GFX_NORMAN, 0, 4, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, PetalburgCity_Gym_EventScript_1545B9, 772, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_7, 0, 4, 0, 94, 0, 3, 8, 0, 0, 1, 0, 0, 0, PetalburgCity_Gym_EventScript_154EE6, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MAN_4, 0, 4, 0, 81, 0, 3, 8, 0, 0, 1, 0, 0, 0, PetalburgCity_Gym_EventScript_154DF6, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_MAN_4, 0, 4, 0, 42, 0, 3, 8, 0, 0, 1, 0, 0, 0, PetalburgCity_Gym_EventScript_154E32, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_WOMAN_7, 0, 4, 0, 55, 0, 3, 8, 0, 0, 1, 0, 0, 0, PetalburgCity_Gym_EventScript_154F22, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_MAN_4, 0, 4, 0, 68, 0, 3, 8, 0, 0, 1, 0, 0, 0, PetalburgCity_Gym_EventScript_154E6E, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_WOMAN_7, 0, 4, 0, 16, 0, 3, 8, 0, 0, 1, 0, 0, 0, PetalburgCity_Gym_EventScript_154F5E, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_MAN_4, 0, 4, 0, 29, 0, 3, 8, 0, 0, 1, 0, 0, 0, PetalburgCity_Gym_EventScript_154EAA, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_MAN_2, 0, 3, 0, 109, 0, 3, 8, 0, 0, 0, 0, 0, 0, PetalburgCity_Gym_EventScript_15518B, 781, 0, 0
+ object_event 10, MAP_OBJ_GFX_WALLY, 0, 4, 0, 111, 0, 3, 7, 0, 0, 0, 0, 0, 0, 0x0, 866, 0, 0
+
+PetalburgCity_Gym_MapWarps:: @ 8387258
+ warp_def 4, 111, 3, 2, PetalburgCity
+ warp_def 5, 111, 3, 2, PetalburgCity
+ warp_def 1, 105, 3, 3, PetalburgCity_Gym
+ warp_def 7, 85, 3, 2, PetalburgCity_Gym
+ warp_def 6, 85, 3, 2, PetalburgCity_Gym
+ warp_def 7, 105, 3, 6, PetalburgCity_Gym
+ warp_def 1, 98, 3, 5, PetalburgCity_Gym
+ warp_def 2, 98, 3, 5, PetalburgCity_Gym
+ warp_def 1, 79, 3, 10, PetalburgCity_Gym
+ warp_def 7, 79, 3, 12, PetalburgCity_Gym
+ warp_def 7, 46, 3, 8, PetalburgCity_Gym
+ warp_def 6, 46, 3, 8, PetalburgCity_Gym
+ warp_def 1, 59, 3, 9, PetalburgCity_Gym
+ warp_def 2, 59, 3, 9, PetalburgCity_Gym
+ warp_def 1, 92, 3, 16, PetalburgCity_Gym
+ warp_def 7, 92, 3, 18, PetalburgCity_Gym
+ warp_def 7, 59, 3, 14, PetalburgCity_Gym
+ warp_def 6, 59, 3, 14, PetalburgCity_Gym
+ warp_def 1, 72, 3, 15, PetalburgCity_Gym
+ warp_def 2, 72, 3, 15, PetalburgCity_Gym
+ warp_def 7, 40, 3, 24, PetalburgCity_Gym
+ warp_def 1, 53, 3, 26, PetalburgCity_Gym
+ warp_def 7, 53, 3, 28, PetalburgCity_Gym
+ warp_def 1, 66, 3, 30, PetalburgCity_Gym
+ warp_def 1, 20, 3, 20, PetalburgCity_Gym
+ warp_def 2, 20, 3, 20, PetalburgCity_Gym
+ warp_def 7, 20, 3, 21, PetalburgCity_Gym
+ warp_def 6, 20, 3, 21, PetalburgCity_Gym
+ warp_def 1, 33, 3, 22, PetalburgCity_Gym
+ warp_def 2, 33, 3, 22, PetalburgCity_Gym
+ warp_def 7, 33, 3, 23, PetalburgCity_Gym
+ warp_def 6, 33, 3, 23, PetalburgCity_Gym
+ warp_def 7, 14, 3, 34, PetalburgCity_Gym
+ warp_def 1, 27, 3, 36, PetalburgCity_Gym
+ warp_def 1, 7, 3, 32, PetalburgCity_Gym
+ warp_def 2, 7, 3, 32, PetalburgCity_Gym
+ warp_def 7, 7, 3, 33, PetalburgCity_Gym
+ warp_def 6, 7, 3, 33, PetalburgCity_Gym
+
+PetalburgCity_Gym_MapBGEvents:: @ 8387388
+ bg_event 1, 105, 3, 0, 0, PetalburgCity_Gym_EventScript_154B73
+ bg_event 7, 105, 3, 0, 0, PetalburgCity_Gym_EventScript_154BC3
+ bg_event 1, 79, 3, 0, 0, PetalburgCity_Gym_EventScript_154BF8
+ bg_event 7, 79, 3, 0, 0, PetalburgCity_Gym_EventScript_154C2B
+ bg_event 1, 92, 3, 0, 0, PetalburgCity_Gym_EventScript_154C5E
+ bg_event 7, 92, 3, 0, 0, PetalburgCity_Gym_EventScript_154C91
+ bg_event 7, 40, 3, 0, 0, PetalburgCity_Gym_EventScript_154CC4
+ bg_event 1, 53, 3, 0, 0, PetalburgCity_Gym_EventScript_154CF7
+ bg_event 7, 53, 3, 0, 0, PetalburgCity_Gym_EventScript_154D2A
+ bg_event 1, 66, 3, 0, 0, PetalburgCity_Gym_EventScript_154D5D
+ bg_event 7, 14, 3, 0, 0, PetalburgCity_Gym_EventScript_154D90
+ bg_event 1, 27, 3, 0, 0, PetalburgCity_Gym_EventScript_154DC3
+ bg_event 1, 110, 3, 1, 0, PetalburgCity_Gym_EventScript_1551AA
+ bg_event 7, 110, 3, 1, 0, PetalburgCity_Gym_EventScript_1551BA
+
+PetalburgCity_Gym_MapEvents:: @ 8387430
+ map_events PetalburgCity_Gym_MapObjects, PetalburgCity_Gym_MapWarps, 0x0, PetalburgCity_Gym_MapBGEvents
+
diff --git a/data/maps/events/PetalburgCity_House1.s b/data/maps/events/PetalburgCity_House1.s
new file mode 100644
index 000000000..48973ff27
--- /dev/null
+++ b/data/maps/events/PetalburgCity_House1.s
@@ -0,0 +1,11 @@
+PetalburgCity_House1_MapObjects:: @ 8387444
+ object_event 1, MAP_OBJ_GFX_GIRL_1, 0, 7, 0, 4, 0, 3, 2, 34, 0, 0, 0, 0, 0, PetalburgCity_House1_EventScript_1551E8, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_OLD_MAN_1, 0, 4, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, PetalburgCity_House1_EventScript_1551DF, 0, 0, 0
+
+PetalburgCity_House1_MapWarps:: @ 8387474
+ warp_def 3, 8, 0, 0, PetalburgCity
+ warp_def 4, 8, 0, 0, PetalburgCity
+
+PetalburgCity_House1_MapEvents:: @ 8387484
+ map_events PetalburgCity_House1_MapObjects, PetalburgCity_House1_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/PetalburgCity_House2.s b/data/maps/events/PetalburgCity_House2.s
new file mode 100644
index 000000000..11fab721b
--- /dev/null
+++ b/data/maps/events/PetalburgCity_House2.s
@@ -0,0 +1,11 @@
+PetalburgCity_House2_MapObjects:: @ 8387498
+ object_event 1, MAP_OBJ_GFX_WOMAN_2, 0, 2, 0, 5, 0, 3, 2, 17, 0, 0, 0, 0, 0, PetalburgCity_House2_EventScript_1551F2, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SCHOOL_KID_M, 0, 7, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, PetalburgCity_House2_EventScript_1551FB, 0, 0, 0
+
+PetalburgCity_House2_MapWarps:: @ 83874C8
+ warp_def 3, 7, 0, 4, PetalburgCity
+ warp_def 4, 7, 0, 4, PetalburgCity
+
+PetalburgCity_House2_MapEvents:: @ 83874D8
+ map_events PetalburgCity_House2_MapObjects, PetalburgCity_House2_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/PetalburgCity_Mart.s b/data/maps/events/PetalburgCity_Mart.s
new file mode 100644
index 000000000..68c9abbce
--- /dev/null
+++ b/data/maps/events/PetalburgCity_Mart.s
@@ -0,0 +1,13 @@
+PetalburgCity_Mart_MapObjects:: @ 8387614
+ object_event 1, MAP_OBJ_GFX_MART_EMPLOYEE, 0, 1, 0, 3, 0, 3, 10, 0, 0, 0, 0, 0, 0, PetalburgCity_Mart_EventScript_1552B0, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_1, 0, 9, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, PetalburgCity_Mart_EventScript_15532C, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_BOY_1, 0, 6, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, PetalburgCity_Mart_EventScript_155323, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_WOMAN_3, 0, 5, 0, 5, 0, 3, 10, 0, 0, 0, 0, 0, 0, PetalburgCity_Mart_EventScript_15531A, 0, 0, 0
+
+PetalburgCity_Mart_MapWarps:: @ 8387674
+ warp_def 3, 7, 0, 5, PetalburgCity
+ warp_def 4, 7, 0, 5, PetalburgCity
+
+PetalburgCity_Mart_MapEvents:: @ 8387684
+ map_events PetalburgCity_Mart_MapObjects, PetalburgCity_Mart_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/PetalburgCity_PokemonCenter_1F.s b/data/maps/events/PetalburgCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..77ff43bc1
--- /dev/null
+++ b/data/maps/events/PetalburgCity_PokemonCenter_1F.s
@@ -0,0 +1,15 @@
+PetalburgCity_PokemonCenter_1F_MapObjects:: @ 83874EC
+ object_event 1, MAP_OBJ_GFX_NURSE, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, PetalburgCity_PokemonCenter_1F_EventScript_155213, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_5, 0, 11, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, PetalburgCity_PokemonCenter_1F_EventScript_1B1B14, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_FAT_MAN, 0, 2, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, PetalburgCity_PokemonCenter_1F_EventScript_155221, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_YOUNGSTER, 0, 9, 0, 6, 0, 3, 2, 17, 0, 0, 0, 0, 0, PetalburgCity_PokemonCenter_1F_EventScript_15522A, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_WOMAN_7, 0, 5, 0, 4, 0, 3, 1, 17, 0, 0, 0, 0, 0, PetalburgCity_PokemonCenter_1F_EventScript_155233, 0, 0, 0
+
+PetalburgCity_PokemonCenter_1F_MapWarps:: @ 8387564
+ warp_def 7, 8, 3, 3, PetalburgCity
+ warp_def 6, 8, 3, 3, PetalburgCity
+ warp_def 1, 6, 4, 0, PetalburgCity_PokemonCenter_2F
+
+PetalburgCity_PokemonCenter_1F_MapEvents:: @ 838757C
+ map_events PetalburgCity_PokemonCenter_1F_MapObjects, PetalburgCity_PokemonCenter_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/PetalburgCity_PokemonCenter_2F.s b/data/maps/events/PetalburgCity_PokemonCenter_2F.s
new file mode 100644
index 000000000..2adccdc91
--- /dev/null
+++ b/data/maps/events/PetalburgCity_PokemonCenter_2F.s
@@ -0,0 +1,15 @@
+PetalburgCity_PokemonCenter_2F_MapObjects:: @ 8387590
+ object_event 1, MAP_OBJ_GFX_TEALA, 0, 4, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, PetalburgCity_PokemonCenter_2F_EventScript_15529D, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_TEALA, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, PetalburgCity_PokemonCenter_2F_EventScript_1552A3, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_TEALA, 0, 10, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, PetalburgCity_PokemonCenter_2F_EventScript_1552A9, 0, 0, 0
+
+PetalburgCity_PokemonCenter_2F_MapWarps:: @ 83875D8
+ warp_def 1, 5, 4, 2, PetalburgCity_PokemonCenter_1F
+ warp_def 5, 1, 0, 0, SingleBattleColosseum
+ warp_def 8, 1, 0, 0, TradeCenter
+ warp_def 11, 1, 0, 0, RecordCorner
+ warp_def 0, 0, 0, 0, DoubleBattleColosseum
+
+PetalburgCity_PokemonCenter_2F_MapEvents:: @ 8387600
+ map_events PetalburgCity_PokemonCenter_2F_MapObjects, PetalburgCity_PokemonCenter_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/PetalburgCity_WallysHouse.s b/data/maps/events/PetalburgCity_WallysHouse.s
new file mode 100644
index 000000000..777afdc10
--- /dev/null
+++ b/data/maps/events/PetalburgCity_WallysHouse.s
@@ -0,0 +1,11 @@
+PetalburgCity_WallysHouse_MapObjects:: @ 8387114
+ object_event 1, MAP_OBJ_GFX_MAN_3, 0, 3, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, PetalburgCity_WallysHouse_EventScript_1543C4, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_5, 0, 7, 0, 5, 0, 3, 9, 0, 0, 0, 0, 0, 0, PetalburgCity_WallysHouse_EventScript_154445, 0, 0, 0
+
+PetalburgCity_WallysHouse_MapWarps:: @ 8387144
+ warp_def 3, 7, 0, 1, PetalburgCity
+ warp_def 4, 7, 0, 1, PetalburgCity
+
+PetalburgCity_WallysHouse_MapEvents:: @ 8387154
+ map_events PetalburgCity_WallysHouse_MapObjects, PetalburgCity_WallysHouse_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/PetalburgWoods.s b/data/maps/events/PetalburgWoods.s
new file mode 100644
index 000000000..633a02de0
--- /dev/null
+++ b/data/maps/events/PetalburgWoods.s
@@ -0,0 +1,38 @@
+PetalburgWoods_MapObjects:: @ 838C14C
+ object_event 1, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 19, 0, 10, 0, 3, 1, 0, 0, 0, 0, 0, 0, PetalburgWoods_EventScript_1B0DCC, 17, 0, 0
+ object_event 2, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 19, 0, 11, 0, 3, 1, 0, 0, 0, 0, 0, 0, PetalburgWoods_EventScript_1B0DCC, 18, 0, 0
+ object_event 3, 241, 0, 26, 0, 17, 0, 3, 10, 0, 0, 0, 0, 0, 0, 0x0, 725, 0, 0
+ object_event 4, MAP_OBJ_GFX_MAN_2, 0, 26, 0, 20, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0x0, 724, 0, 0
+ object_event 5, MAP_OBJ_GFX_ITEM_BALL, 0, 45, 0, 7, 0, 3, 8, 0, 0, 0, 0, 0, 0, PetalburgWoods_EventScript_1B175F, 1056, 0, 0
+ object_event 6, MAP_OBJ_GFX_ITEM_BALL, 0, 35, 0, 20, 0, 3, 8, 0, 0, 0, 0, 0, 0, PetalburgWoods_EventScript_1B1752, 1055, 0, 0
+ object_event 7, MAP_OBJ_GFX_ITEM_BALL, 0, 4, 0, 8, 0, 3, 1, 0, 0, 0, 0, 0, 0, PetalburgWoods_EventScript_1B176C, 1058, 0, 0
+ object_event 8, MAP_OBJ_GFX_BOY_2, 0, 15, 0, 19, 0, 3, 3, 33, 0, 0, 0, 0, 0, PetalburgWoods_EventScript_15CECA, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_BUG_CATCHER, 0, 7, 0, 32, 0, 3, 22, 0, 0, 1, 0, 3, 0, PetalburgWoods_EventScript_15CF27, 0, 0, 0
+ object_event 10, MAP_OBJ_GFX_BUG_CATCHER, 0, 4, 0, 14, 0, 3, 20, 0, 0, 1, 0, 3, 0, PetalburgWoods_EventScript_15CF3E, 0, 0, 0
+ object_event 11, MAP_OBJ_GFX_BOY_3, 0, 30, 0, 34, 0, 3, 2, 18, 0, 0, 0, 0, 0, PetalburgWoods_EventScript_15CED3, 0, 0, 0
+ object_event 12, MAP_OBJ_GFX_ITEM_BALL, 0, 4, 0, 26, 0, 3, 1, 17, 0, 0, 0, 0, 0, PetalburgWoods_EventScript_1B1779, 1117, 0, 0
+ object_event 13, MAP_OBJ_GFX_GIRL_2, 0, 33, 0, 5, 0, 3, 1, 17, 0, 0, 0, 0, 0, PetalburgWoods_EventScript_15CEDC, 0, 0, 0
+
+PetalburgWoods_MapWarps:: @ 838C284
+ warp_def 14, 5, 0, 2, Route104
+ warp_def 15, 5, 0, 3, Route104
+ warp_def 16, 38, 0, 4, Route104
+ warp_def 17, 38, 0, 5, Route104
+ warp_def 36, 38, 0, 6, Route104
+ warp_def 37, 38, 0, 7, Route104
+
+PetalburgWoods_MapCoordEvents:: @ 838C2B4
+ coord_event 26, 23, 3, 0, 0x4098, 0, 0, PetalburgWoods_EventScript_15CCA8
+ coord_event 27, 23, 3, 0, 0x4098, 0, 0, PetalburgWoods_EventScript_15CD42
+
+PetalburgWoods_MapBGEvents:: @ 838C2D4
+ bg_event 14, 32, 3, 0, 0, PetalburgWoods_EventScript_15CF15
+ bg_event 39, 35, 3, 7, 0, ITEM_POTION, 58, 0
+ bg_event 26, 6, 3, 7, 0, ITEM_TINY_MUSHROOM, 59, 0
+ bg_event 40, 29, 3, 7, 0, ITEM_TINY_MUSHROOM, 60, 0
+ bg_event 4, 19, 3, 7, 0, ITEM_POKE_BALL, 61, 0
+ bg_event 11, 8, 3, 0, 0, PetalburgWoods_EventScript_15CF1E
+
+PetalburgWoods_MapEvents:: @ 838C31C
+ map_events PetalburgWoods_MapObjects, PetalburgWoods_MapWarps, PetalburgWoods_MapCoordEvents, PetalburgWoods_MapBGEvents
+
diff --git a/data/maps/events/RecordCorner.s b/data/maps/events/RecordCorner.s
new file mode 100644
index 000000000..83942871c
--- /dev/null
+++ b/data/maps/events/RecordCorner.s
@@ -0,0 +1,18 @@
+RecordCorner_MapObjects:: @ 839139C
+ object_event 1, MAP_OBJ_GFX_WOMAN_6, 0, 10, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, RecordCorner_EventScript_1A44BC, 0, 0, 0
+
+RecordCorner_MapWarps:: @ 83913B4
+ warp_def 8, 9, 3, 127, NONE
+ warp_def 9, 9, 3, 127, NONE
+ warp_def 11, 9, 3, 127, NONE
+ warp_def 10, 9, 3, 127, NONE
+
+RecordCorner_MapCoordEvents:: @ 83913D4
+ coord_event 6, 4, 3, 0, 0x4000, 0, 0, RecordCorner_EventScript_1A4418
+ coord_event 6, 6, 3, 0, 0x4000, 0, 0, RecordCorner_EventScript_1A4442
+ coord_event 13, 4, 3, 0, 0x4000, 0, 0, RecordCorner_EventScript_1A442D
+ coord_event 13, 6, 3, 0, 0x4000, 0, 0, RecordCorner_EventScript_1A4457
+
+RecordCorner_MapEvents:: @ 8391414
+ map_events RecordCorner_MapObjects, RecordCorner_MapWarps, RecordCorner_MapCoordEvents, 0x0
+
diff --git a/data/maps/events/Route101.s b/data/maps/events/Route101.s
new file mode 100644
index 000000000..8ee7bf27b
--- /dev/null
+++ b/data/maps/events/Route101.s
@@ -0,0 +1,25 @@
+Route101_MapObjects:: @ 83810BC
+ object_event 1, MAP_OBJ_GFX_YOUNGSTER, 0, 16, 0, 8, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route101_EventScript_14EA64, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_PROF_BIRCH, 0, 9, 0, 13, 0, 0, 71, 0, 0, 0, 0, 0, 0, 0x0, 720, 0, 0
+ object_event 3, MAP_OBJ_GFX_BIRCHS_BAG, 0, 7, 0, 14, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route101_EventScript_14EA7F, 700, 0, 0
+ object_event 4, MAP_OBJ_GFX_POOCHYENA, 0, 10, 0, 13, 0, 0, 70, 0, 0, 0, 0, 0, 0, 0x0, 750, 0, 0
+ object_event 5, MAP_OBJ_GFX_PROF_BIRCH, 0, 5, 0, 11, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route101_EventScript_1A037F, 897, 0, 0
+ object_event 6, MAP_OBJ_GFX_BOY_2, 0, 2, 0, 13, 0, 3, 5, 17, 0, 0, 0, 0, 0, Route101_EventScript_14EA6D, 991, 0, 0
+
+Route101_MapCoordEvents:: @ 838114C
+ coord_event 10, 19, 3, 0, 0x4060, 1, 0, Route101_EventScript_14E948
+ coord_event 11, 19, 3, 0, 0x4060, 1, 0, Route101_EventScript_14E948
+ coord_event 10, 18, 3, 0, 0x4060, 2, 0, Route101_EventScript_14E9B8
+ coord_event 11, 18, 3, 0, 0x4060, 2, 0, Route101_EventScript_14E9B8
+ coord_event 6, 16, 3, 0, 0x4060, 2, 0, Route101_EventScript_14E9CE
+ coord_event 6, 15, 3, 0, 0x4060, 2, 0, Route101_EventScript_14E9CE
+ coord_event 6, 17, 3, 0, 0x4060, 2, 0, Route101_EventScript_14E9CE
+ coord_event 6, 18, 3, 0, 0x4060, 2, 0, Route101_EventScript_14E9CE
+ coord_event 7, 13, 3, 0, 0x4060, 2, 0, Route101_EventScript_14E9E4
+
+Route101_MapBGEvents:: @ 83811DC
+ bg_event 5, 9, 0, 0, 0, Route101_EventScript_14EA76
+
+Route101_MapEvents:: @ 83811E8
+ map_events Route101_MapObjects, 0x0, Route101_MapCoordEvents, Route101_MapBGEvents
+
diff --git a/data/maps/events/Route102.s b/data/maps/events/Route102.s
new file mode 100644
index 000000000..58be44d36
--- /dev/null
+++ b/data/maps/events/Route102.s
@@ -0,0 +1,18 @@
+Route102_MapObjects:: @ 83811FC
+ object_event 1, MAP_OBJ_GFX_LITTLE_BOY_2, 0, 18, 0, 11, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route102_EventScript_14EADA, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_YOUNGSTER, 0, 33, 0, 14, 0, 3, 8, 0, 0, 1, 0, 3, 0, Route102_EventScript_14EAFE, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_BUG_CATCHER, 0, 25, 0, 15, 0, 3, 7, 0, 0, 1, 0, 2, 0, Route102_EventScript_14EB3C, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_LASS, 0, 8, 0, 7, 0, 3, 18, 0, 0, 1, 0, 3, 0, Route102_EventScript_14EB53, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_BOY_1, 0, 37, 0, 4, 0, 3, 2, 17, 0, 0, 0, 0, 0, Route102_EventScript_14EAF5, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_ITEM_BALL, 0, 11, 0, 15, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route102_EventScript_1B1439, 1000, 0, 0
+ object_event 7, MAP_OBJ_GFX_BERRY_TREE, 0, 24, 0, 2, 0, 3, 12, 0, 0, 0, 0, 2, 0, Route102_EventScript_1A14DD, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_BERRY_TREE, 0, 25, 0, 2, 0, 3, 12, 0, 0, 0, 0, 1, 0, Route102_EventScript_1A14DD, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_YOUNGSTER, 0, 19, 0, 4, 0, 3, 8, 17, 0, 1, 0, 3, 0, Route102_EventScript_14EB6A, 0, 0, 0
+
+Route102_MapBGEvents:: @ 83812D4
+ bg_event 17, 2, 0, 0, 0, Route102_EventScript_14EAEC
+ bg_event 40, 9, 0, 0, 0, Route102_EventScript_14EAE3
+
+Route102_MapEvents:: @ 83812EC
+ map_events Route102_MapObjects, 0x0, 0x0, Route102_MapBGEvents
+
diff --git a/data/maps/events/Route103.s b/data/maps/events/Route103.s
new file mode 100644
index 000000000..2b3f4ef6c
--- /dev/null
+++ b/data/maps/events/Route103.s
@@ -0,0 +1,23 @@
+Route103_MapObjects:: @ 8381300
+ object_event 1, MAP_OBJ_GFX_MAN_4, 0, 49, 0, 12, 0, 3, 9, 0, 0, 0, 0, 0, 0, Route103_EventScript_14ED82, 0, 0, 0
+ object_event 2, 240, 0, 10, 0, 2, 0, 3, 7, 0, 0, 0, 0, 0, 0, Route103_EventScript_14EB92, 723, 0, 0
+ object_event 3, MAP_OBJ_GFX_WOMAN_3, 0, 71, 0, 10, 0, 3, 18, 0, 0, 1, 0, 3, 0, Route103_EventScript_14ED94, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_LITTLE_GIRL_1, 0, 65, 0, 11, 0, 3, 8, 0, 0, 1, 0, 0, 0, Route103_EventScript_14EDF1, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_LITTLE_GIRL_1, 0, 64, 0, 11, 0, 3, 8, 0, 0, 1, 0, 0, 0, Route103_EventScript_14EDAB, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_FISHERMAN, 0, 50, 0, 8, 0, 3, 26, 16, 0, 1, 0, 3, 0, Route103_EventScript_14EE37, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_BERRY_TREE, 0, 58, 0, 5, 0, 3, 12, 0, 0, 0, 0, 5, 0, Route103_EventScript_1A14DD, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_BERRY_TREE, 0, 59, 0, 5, 0, 3, 12, 0, 0, 0, 0, 6, 0, Route103_EventScript_1A14DD, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_BERRY_TREE, 0, 60, 0, 5, 0, 3, 12, 0, 0, 0, 0, 7, 0, Route103_EventScript_1A14DD, 0, 0, 0
+ object_event 10, MAP_OBJ_GFX_BOY_1, 0, 20, 0, 10, 0, 3, 2, 33, 0, 0, 0, 0, 0, Route103_EventScript_14ED79, 0, 0, 0
+ object_event 11, MAP_OBJ_GFX_PROF_BIRCH, 0, 7, 0, 3, 0, 3, 2, 17, 0, 0, 0, 0, 0, Route103_EventScript_1A037F, 898, 0, 0
+ object_event 12, MAP_OBJ_GFX_MAN_3, 0, 56, 0, 12, 0, 3, 10, 0, 0, 1, 0, 5, 0, Route103_EventScript_14EE4E, 0, 0, 0
+ object_event 13, MAP_OBJ_GFX_ITEM_BALL, 0, 63, 0, 8, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route103_EventScript_1B1446, 1114, 0, 0
+ object_event 14, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 67, 0, 7, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route103_EventScript_1B0DCC, 18, 0, 0
+ object_event 15, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 69, 0, 7, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route103_EventScript_1B0DCC, 19, 0, 0
+
+Route103_MapBGEvents:: @ 8381468
+ bg_event 11, 9, 0, 0, 0, Route103_EventScript_14ED8B
+
+Route103_MapEvents:: @ 8381474
+ map_events Route103_MapObjects, 0x0, 0x0, Route103_MapBGEvents
+
diff --git a/data/maps/events/Route104.s b/data/maps/events/Route104.s
new file mode 100644
index 000000000..8bb03579c
--- /dev/null
+++ b/data/maps/events/Route104.s
@@ -0,0 +1,59 @@
+Route104_MapObjects:: @ 8381488
+ object_event 1, MAP_OBJ_GFX_BUG_CATCHER, 0, 15, 0, 60, 0, 3, 9, 0, 0, 0, 0, 0, 0, Route104_EventScript_14EF4B, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_GIRL_2, 0, 25, 0, 49, 0, 3, 2, 17, 0, 0, 0, 0, 0, Route104_EventScript_14EF42, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_LASS, 0, 31, 0, 24, 0, 3, 9, 0, 0, 1, 0, 7, 0, Route104_EventScript_14F1A0, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_BOY_1, 0, 27, 0, 63, 0, 3, 3, 16, 0, 0, 0, 0, 0, Route104_EventScript_14EF81, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_WOMAN_3, 0, 30, 0, 50, 0, 3, 2, 17, 0, 0, 0, 0, 0, Route104_EventScript_14EF8A, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_GIRL_3, 0, 28, 0, 74, 0, 3, 7, 0, 0, 0, 0, 0, 0, Route104_EventScript_14EFCC, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_MR_BRINEYS_BOAT, 0, 12, 0, 54, 0, 1, 7, 0, 0, 0, 0, 0, 0, 0x0, 742, 0, 0
+ object_event 8, MAP_OBJ_GFX_OLD_MAN_1, 0, 12, 0, 51, 0, 4, 10, 0, 0, 0, 0, 0, 0, 0x0, 738, 0, 0
+ object_event 9, MAP_OBJ_GFX_FISHERMAN, 0, 29, 0, 8, 0, 3, 8, 0, 0, 1, 0, 0, 0, Route104_EventScript_14F172, 0, 0, 0
+ object_event 10, MAP_OBJ_GFX_BERRY_TREE, 0, 34, 0, 6, 0, 3, 12, 0, 0, 0, 0, 8, 0, Route104_EventScript_1A14DD, 0, 0, 0
+ object_event 11, MAP_OBJ_GFX_BERRY_TREE, 0, 35, 0, 6, 0, 3, 12, 0, 0, 0, 0, 9, 0, Route104_EventScript_1A14DD, 0, 0, 0
+ object_event 12, MAP_OBJ_GFX_BERRY_TREE, 0, 36, 0, 6, 0, 3, 12, 0, 0, 0, 0, 10, 0, Route104_EventScript_1A14DD, 0, 0, 0
+ object_event 13, MAP_OBJ_GFX_BERRY_TREE, 0, 22, 0, 41, 0, 3, 12, 0, 0, 0, 0, 11, 0, Route104_EventScript_1A14DD, 0, 0, 0
+ object_event 14, MAP_OBJ_GFX_BERRY_TREE, 0, 23, 0, 41, 0, 3, 12, 0, 0, 0, 0, 12, 0, Route104_EventScript_1A14DD, 0, 0, 0
+ object_event 15, MAP_OBJ_GFX_BERRY_TREE, 0, 24, 0, 41, 0, 3, 12, 0, 0, 0, 0, 13, 0, Route104_EventScript_1A14DD, 0, 0, 0
+ object_event 16, MAP_OBJ_GFX_OLD_WOMAN_1, 0, 37, 0, 8, 0, 3, 9, 17, 0, 0, 0, 0, 0, Route104_EventScript_14EEC8, 0, 0, 0
+ object_event 17, MAP_OBJ_GFX_BERRY_TREE, 0, 3, 0, 22, 0, 3, 12, 0, 0, 0, 0, 3, 0, Route104_EventScript_1A14DD, 0, 0, 0
+ object_event 18, MAP_OBJ_GFX_BERRY_TREE, 0, 3, 0, 23, 0, 3, 12, 0, 0, 0, 0, 4, 0, Route104_EventScript_1A14DD, 0, 0, 0
+ object_event 19, MAP_OBJ_GFX_BERRY_TREE, 0, 3, 0, 24, 0, 3, 12, 0, 0, 0, 0, 75, 0, Route104_EventScript_1A14DD, 0, 0, 0
+ object_event 20, MAP_OBJ_GFX_BERRY_TREE, 0, 3, 0, 25, 0, 3, 12, 0, 0, 0, 0, 76, 0, Route104_EventScript_1A14DD, 0, 0, 0
+ object_event 21, MAP_OBJ_GFX_ITEM_BALL, 0, 39, 0, 15, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route104_EventScript_1B1453, 1002, 0, 0
+ object_event 22, MAP_OBJ_GFX_WOMAN_7, 0, 8, 0, 19, 0, 3, 5, 1, 0, 0, 0, 0, 0, Route104_EventScript_14EF09, 906, 0, 0
+ object_event 23, MAP_OBJ_GFX_LITTLE_GIRL_1, 0, 27, 0, 15, 0, 3, 8, 0, 0, 1, 0, 0, 0, Route104_EventScript_14F25A, 0, 0, 0
+ object_event 24, MAP_OBJ_GFX_LITTLE_GIRL_1, 0, 28, 0, 15, 0, 3, 8, 0, 0, 1, 0, 0, 0, Route104_EventScript_14F279, 0, 0, 0
+ object_event 25, MAP_OBJ_GFX_BOY_4, 0, 11, 0, 44, 0, 3, 16, 0, 0, 1, 0, 3, 0, Route104_EventScript_14F1DE, 0, 0, 0
+ object_event 26, MAP_OBJ_GFX_WOMAN_3, 0, 22, 0, 25, 0, 3, 23, 0, 0, 1, 0, 3, 0, Route104_EventScript_14F21C, 0, 0, 0
+ object_event 27, MAP_OBJ_GFX_ITEM_BALL, 0, 29, 0, 53, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route104_EventScript_1B1460, 1057, 0, 0
+ object_event 28, MAP_OBJ_GFX_YOUNGSTER, 0, 18, 0, 67, 0, 3, 46, 101, 0, 1, 0, 2, 0, Route104_EventScript_14F189, 0, 0, 0
+ object_event 29, MAP_OBJ_GFX_ITEM_BALL, 0, 37, 0, 22, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route104_EventScript_1B146D, 1115, 0, 0
+ object_event 30, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 35, 0, 22, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route104_EventScript_1B0DCC, 17, 0, 0
+ object_event 31, MAP_OBJ_GFX_ITEM_BALL, 0, 5, 0, 8, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route104_EventScript_1B147A, 1135, 0, 0
+ object_event 32, MAP_OBJ_GFX_BOY_2, 0, 5, 0, 26, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route104_EventScript_14EF93, 0, 0, 0
+
+Route104_MapWarps:: @ 8381788
+ warp_def 17, 50, 0, 0, Route104_MrBrineysHouse
+ warp_def 5, 18, 0, 0, Route104_PrettyPetalFlowerShop
+ warp_def 10, 30, 3, 0, PetalburgWoods
+ warp_def 11, 30, 3, 1, PetalburgWoods
+ warp_def 10, 38, 3, 2, PetalburgWoods
+ warp_def 11, 38, 3, 3, PetalburgWoods
+ warp_def 32, 42, 3, 4, PetalburgWoods
+ warp_def 33, 42, 3, 5, PetalburgWoods
+
+Route104_MapBGEvents:: @ 83817C8
+ bg_event 20, 50, 0, 0, 0, Route104_EventScript_14EF54
+ bg_event 27, 66, 0, 0, 0, Route104_EventScript_14EF5D
+ bg_event 23, 5, 0, 0, 0, Route104_EventScript_14EF66
+ bg_event 7, 20, 0, 0, 0, Route104_EventScript_14EF6F
+ bg_event 17, 23, 3, 0, 0, Route104_EventScript_14EF78
+ bg_event 7, 6, 3, 7, 0, ITEM_SUPER_POTION, 44, 0
+ bg_event 3, 9, 3, 7, 0, ITEM_POKE_BALL, 62, 0
+ bg_event 14, 55, 3, 7, 0, ITEM_POTION, 37, 0
+ bg_event 16, 72, 3, 7, 0, ITEM_ANTIDOTE, 85, 0
+ bg_event 16, 64, 3, 7, 0, ITEM_HEART_SCALE, 88, 0
+
+Route104_MapEvents:: @ 8381840
+ map_events Route104_MapObjects, Route104_MapWarps, 0x0, Route104_MapBGEvents
+
diff --git a/data/maps/events/Route104_MrBrineysHouse.s b/data/maps/events/Route104_MrBrineysHouse.s
new file mode 100644
index 000000000..64959eb74
--- /dev/null
+++ b/data/maps/events/Route104_MrBrineysHouse.s
@@ -0,0 +1,11 @@
+Route104_MrBrineysHouse_MapObjects:: @ 838B654
+ object_event 1, MAP_OBJ_GFX_OLD_MAN_1, 0, 5, 0, 3, 0, 3, 50, 51, 0, 0, 0, 0, 0, Route104_MrBrineysHouse_EventScript_15BCEB, 739, 0, 0
+ object_event 2, MAP_OBJ_GFX_WINGULL, 0, 6, 0, 3, 0, 3, 8, 51, 0, 0, 0, 0, 0, Route104_MrBrineysHouse_EventScript_15BDD1, 881, 0, 0
+
+Route104_MrBrineysHouse_MapWarps:: @ 838B684
+ warp_def 5, 8, 0, 0, Route104
+ warp_def 6, 8, 0, 0, Route104
+
+Route104_MrBrineysHouse_MapEvents:: @ 838B694
+ map_events Route104_MrBrineysHouse_MapObjects, Route104_MrBrineysHouse_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/Route104_PrettyPetalFlowerShop.s b/data/maps/events/Route104_PrettyPetalFlowerShop.s
new file mode 100644
index 000000000..d2baf64fe
--- /dev/null
+++ b/data/maps/events/Route104_PrettyPetalFlowerShop.s
@@ -0,0 +1,12 @@
+Route104_PrettyPetalFlowerShop_MapObjects:: @ 838B6A8
+ object_event 1, MAP_OBJ_GFX_WOMAN_3, 0, 0, 0, 3, 0, 3, 10, 0, 0, 0, 0, 0, 0, Route104_PrettyPetalFlowerShop_EventScript_15BE0B, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_GIRL_3, 0, 7, 0, 3, 0, 3, 5, 1, 0, 0, 0, 0, 0, Route104_PrettyPetalFlowerShop_EventScript_15BEA4, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_GIRL_1, 0, 11, 0, 6, 0, 4, 2, 34, 0, 0, 0, 0, 0, Route104_PrettyPetalFlowerShop_EventScript_15BEDA, 0, 0, 0
+
+Route104_PrettyPetalFlowerShop_MapWarps:: @ 838B6F0
+ warp_def 2, 8, 0, 1, Route104
+ warp_def 3, 8, 0, 1, Route104
+
+Route104_PrettyPetalFlowerShop_MapEvents:: @ 838B700
+ map_events Route104_PrettyPetalFlowerShop_MapObjects, Route104_PrettyPetalFlowerShop_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/Route104_Prototype.s b/data/maps/events/Route104_Prototype.s
new file mode 100644
index 000000000..4d073abb2
--- /dev/null
+++ b/data/maps/events/Route104_Prototype.s
@@ -0,0 +1,24 @@
+Route104_Prototype_MapObjects:: @ 8391F2C
+ object_event 1, MAP_OBJ_GFX_WOMAN_3, 0, 27, 0, 9, 0, 3, 23, 0, 0, 1, 0, 1, 0, Route104_Prototype_EventScript_160D2E, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_LITTLE_GIRL_1, 0, 13, 0, 9, 0, 3, 10, 0, 0, 1, 0, 0, 0, Route104_Prototype_EventScript_160D60, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_LITTLE_GIRL_1, 0, 13, 0, 10, 0, 3, 10, 0, 0, 1, 0, 0, 0, Route104_Prototype_EventScript_160D60, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_HIKER, 0, 25, 0, 21, 0, 3, 8, 0, 0, 1, 0, 1, 0, Route104_Prototype_EventScript_160D7B, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_WOMAN_3, 0, 16, 0, 30, 0, 3, 24, 0, 0, 1, 0, 1, 0, Route104_Prototype_EventScript_160D92, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_HIKER, 0, 34, 0, 2, 0, 3, 8, 0, 0, 1, 0, 3, 0, Route104_Prototype_EventScript_160DA9, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_BOY_1, 0, 15, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route104_Prototype_EventScript_160C4B, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_GIRL_1, 0, 14, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route104_Prototype_EventScript_160CA3, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_LITTLE_GIRL_1, 0, 27, 0, 29, 0, 3, 8, 0, 0, 1, 0, 0, 0, Route104_Prototype_EventScript_160D45, 0, 0, 0
+ object_event 10, MAP_OBJ_GFX_LITTLE_GIRL_1, 0, 26, 0, 29, 0, 3, 8, 0, 0, 1, 0, 0, 0, Route104_Prototype_EventScript_160D45, 0, 0, 0
+ object_event 11, MAP_OBJ_GFX_BOY_1, 0, 17, 0, 37, 0, 3, 7, 0, 0, 0, 0, 0, 0, Route104_Prototype_EventScript_160D13, 0, 0, 0
+ object_event 12, MAP_OBJ_GFX_MAN_3, 0, 11, 0, 28, 0, 3, 2, 17, 0, 0, 0, 0, 0, Route104_Prototype_EventScript_160D0A, 0, 0, 0
+
+Route104_Prototype_MapWarps:: @ 839204C
+ warp_def 5, 24, 0, 0, Route104_PrototypePrettyPetalFlowerShop
+
+Route104_Prototype_MapBGEvents:: @ 8392054
+ bg_event 7, 26, 0, 0, 0, Route104_Prototype_EventScript_160D1C
+ bg_event 18, 8, 0, 0, 0, Route104_Prototype_EventScript_160D25
+
+Route104_Prototype_MapEvents:: @ 839206C
+ map_events Route104_Prototype_MapObjects, Route104_Prototype_MapWarps, 0x0, Route104_Prototype_MapBGEvents
+
diff --git a/data/maps/events/Route104_PrototypePrettyPetalFlowerShop.s b/data/maps/events/Route104_PrototypePrettyPetalFlowerShop.s
new file mode 100644
index 000000000..21cb6be90
--- /dev/null
+++ b/data/maps/events/Route104_PrototypePrettyPetalFlowerShop.s
@@ -0,0 +1,10 @@
+Route104_PrototypePrettyPetalFlowerShop_MapObjects:: @ 8392080
+ object_event 1, MAP_OBJ_GFX_GIRL_1, 0, 2, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route104_PrototypePrettyPetalFlowerShop_EventScript_160DC1, 0, 0, 0
+
+Route104_PrototypePrettyPetalFlowerShop_MapWarps:: @ 8392098
+ warp_def 2, 8, 0, 0, Route104_Prototype
+ warp_def 3, 8, 0, 0, Route104_Prototype
+
+Route104_PrototypePrettyPetalFlowerShop_MapEvents:: @ 83920A8
+ map_events Route104_PrototypePrettyPetalFlowerShop_MapObjects, Route104_PrototypePrettyPetalFlowerShop_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/Route105.s b/data/maps/events/Route105.s
new file mode 100644
index 000000000..9ac8d94f3
--- /dev/null
+++ b/data/maps/events/Route105.s
@@ -0,0 +1,17 @@
+Route105_MapObjects:: @ 8381854
+ object_event 1, MAP_OBJ_GFX_SWIMMER_M, 0, 18, 0, 60, 0, 1, 10, 0, 0, 1, 0, 6, 0, Route105_EventScript_14F2D2, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SWIMMER_M, 0, 10, 0, 44, 0, 1, 27, 7, 0, 1, 0, 3, 0, Route105_EventScript_14F2E9, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_SWIMMER_F, 0, 26, 0, 36, 0, 1, 25, 112, 0, 1, 0, 3, 0, Route105_EventScript_14F300, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_SWIMMER_F, 0, 19, 0, 9, 0, 1, 24, 80, 0, 1, 0, 3, 0, Route105_EventScript_14F317, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_ITEM_BALL, 0, 8, 0, 73, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route105_EventScript_1B1487, 1003, 0, 0
+ object_event 6, MAP_OBJ_GFX_HIKER, 0, 12, 0, 51, 0, 3, 13, 0, 0, 1, 0, 3, 0, Route105_EventScript_14F2BB, 0, 0, 0
+
+Route105_MapWarps:: @ 83818E4
+ warp_def 9, 20, 0, 0, IslandCave
+
+Route105_MapBGEvents:: @ 83818EC
+ bg_event 15, 68, 3, 7, 0, ITEM_HEART_SCALE, 89, 0
+
+Route105_MapEvents:: @ 83818F8
+ map_events Route105_MapObjects, Route105_MapWarps, 0x0, Route105_MapBGEvents
+
diff --git a/data/maps/events/Route106.s b/data/maps/events/Route106.s
new file mode 100644
index 000000000..1119231b5
--- /dev/null
+++ b/data/maps/events/Route106.s
@@ -0,0 +1,19 @@
+Route106_MapObjects:: @ 838190C
+ object_event 1, MAP_OBJ_GFX_SWIMMER_M, 0, 29, 0, 11, 0, 1, 27, 4, 0, 1, 0, 3, 0, Route106_EventScript_14F338, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SWIMMER_F, 0, 18, 0, 5, 0, 3, 1, 0, 0, 1, 0, 3, 0, Route106_EventScript_14F34F, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_FISHERMAN, 0, 51, 0, 14, 0, 3, 10, 0, 0, 1, 0, 4, 0, Route106_EventScript_14F366, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_FISHERMAN, 0, 65, 0, 14, 0, 3, 1, 0, 0, 1, 0, 3, 0, Route106_EventScript_14F3A4, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_ITEM_BALL, 0, 29, 0, 14, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route106_EventScript_1B1494, 1004, 0, 0
+
+Route106_MapWarps:: @ 8381984
+ warp_def 48, 16, 0, 0, GraniteCave_1F
+
+Route106_MapBGEvents:: @ 838198C
+ bg_event 41, 11, 3, 7, 0, ITEM_POKE_BALL, 63, 0
+ bg_event 53, 12, 0, 7, 0, ITEM_STARDUST, 46, 0
+ bg_event 68, 15, 3, 7, 0, ITEM_HEART_SCALE, 47, 0
+ bg_event 59, 13, 3, 0, 0, Route106_EventScript_14F32F
+
+Route106_MapEvents:: @ 83819BC
+ map_events Route106_MapObjects, Route106_MapWarps, 0x0, Route106_MapBGEvents
+
diff --git a/data/maps/events/Route107.s b/data/maps/events/Route107.s
new file mode 100644
index 000000000..576975eca
--- /dev/null
+++ b/data/maps/events/Route107.s
@@ -0,0 +1,11 @@
+Route107_MapObjects:: @ 83819D0
+ object_event 1, MAP_OBJ_GFX_SWIMMER_M, 0, 27, 0, 10, 0, 1, 24, 17, 0, 1, 0, 3, 0, Route107_EventScript_14F3BC, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SWIMMER_M, 0, 38, 0, 11, 0, 1, 52, 38, 0, 1, 0, 2, 0, Route107_EventScript_14F3D3, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_SWIMMER_F, 0, 50, 0, 6, 0, 1, 14, 0, 0, 1, 0, 3, 0, Route107_EventScript_14F411, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_SWIMMER_F, 0, 16, 0, 11, 0, 1, 7, 0, 0, 1, 0, 4, 0, Route107_EventScript_14F428, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_SWIMMER_F, 0, 33, 0, 4, 0, 1, 8, 17, 0, 1, 0, 0, 0, Route107_EventScript_14F43F, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_TUBER_M_SWIMMING, 0, 32, 0, 4, 0, 1, 8, 17, 0, 1, 0, 0, 0, Route107_EventScript_14F45A, 0, 0, 0
+
+Route107_MapEvents:: @ 8381A60
+ map_events Route107_MapObjects, 0x0, 0x0, 0x0
+
diff --git a/data/maps/events/Route108.s b/data/maps/events/Route108.s
new file mode 100644
index 000000000..363cb6bd1
--- /dev/null
+++ b/data/maps/events/Route108.s
@@ -0,0 +1,15 @@
+Route108_MapObjects:: @ 8381A74
+ object_event 1, MAP_OBJ_GFX_SWIMMER_M, 0, 17, 0, 13, 0, 1, 45, 51, 0, 1, 0, 3, 0, Route108_EventScript_14F476, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SWIMMER_F, 0, 8, 0, 6, 0, 1, 13, 17, 0, 1, 0, 3, 0, Route108_EventScript_14F4A4, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_SWIMMER_M, 0, 50, 0, 10, 0, 1, 24, 0, 0, 1, 0, 3, 0, Route108_EventScript_14F48D, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_SWIMMER_F, 0, 36, 0, 12, 0, 1, 51, 54, 0, 1, 0, 3, 0, Route108_EventScript_14F4BB, 0, 0, 0
+
+Route108_MapWarps:: @ 8381AD4
+ warp_def 29, 6, 3, 0, AbandonedShip_Deck
+
+Route108_MapBGEvents:: @ 8381ADC
+ bg_event 38, 14, 3, 7, 0, ITEM_RARE_CANDY, 86, 0
+
+Route108_MapEvents:: @ 8381AE8
+ map_events Route108_MapObjects, Route108_MapWarps, 0x0, Route108_MapBGEvents
+
diff --git a/data/maps/events/Route109.s b/data/maps/events/Route109.s
new file mode 100644
index 000000000..e076fc164
--- /dev/null
+++ b/data/maps/events/Route109.s
@@ -0,0 +1,38 @@
+Route109_MapObjects:: @ 8381AFC
+ object_event 1, MAP_OBJ_GFX_MR_BRINEYS_BOAT, 0, 21, 0, 26, 0, 1, 7, 0, 0, 0, 0, 0, 0, 0x0, 744, 0, 0
+ object_event 2, MAP_OBJ_GFX_OLD_MAN_1, 0, 21, 0, 24, 0, 3, 7, 0, 0, 0, 0, 0, 0, Route109_EventScript_14F680, 741, 0, 0
+ object_event 3, MAP_OBJ_GFX_SWIMMER_M, 0, 12, 0, 36, 0, 3, 10, 0, 0, 1, 0, 5, 0, Route109_EventScript_14F7AD, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_SWIMMER_F, 0, 25, 0, 42, 0, 3, 15, 0, 0, 1, 0, 5, 0, Route109_EventScript_14F7C4, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_SAILOR, 0, 19, 0, 19, 0, 3, 10, 0, 0, 1, 0, 4, 0, Route109_EventScript_14F7DB, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_SAILOR, 0, 14, 0, 11, 0, 4, 8, 0, 0, 1, 0, 1, 0, Route109_EventScript_14F7F2, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_TUBER_M, 0, 21, 0, 11, 0, 3, 23, 0, 0, 1, 0, 3, 0, Route109_EventScript_14F809, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_TUBER_F, 0, 28, 0, 8, 0, 3, 10, 0, 0, 1, 0, 4, 0, Route109_EventScript_14F847, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_LITTLE_GIRL_2, 0, 11, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route109_EventScript_14F705, 0, 0, 0
+ object_event 10, MAP_OBJ_GFX_ITEM_BALL, 0, 27, 0, 48, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route109_EventScript_1B14A1, 1005, 0, 0
+ object_event 11, MAP_OBJ_GFX_TUBER_F, 0, 29, 0, 32, 0, 3, 13, 0, 0, 1, 0, 3, 0, Route109_EventScript_14F89C, 0, 0, 0
+ object_event 12, MAP_OBJ_GFX_TUBER_F, 0, 28, 0, 31, 0, 3, 17, 0, 0, 1, 0, 3, 0, Route109_EventScript_14F885, 0, 0, 0
+ object_event 13, MAP_OBJ_GFX_FISHERMAN, 0, 15, 0, 52, 0, 3, 10, 0, 0, 1, 0, 0, 0, Route109_EventScript_14F8B3, 0, 0, 0
+ object_event 14, MAP_OBJ_GFX_TUBER_M, 0, 24, 0, 17, 0, 3, 10, 17, 0, 0, 0, 0, 0, Route109_EventScript_14F70E, 0, 0, 0
+ object_event 15, MAP_OBJ_GFX_TUBER_F, 0, 25, 0, 17, 0, 3, 9, 17, 0, 0, 0, 0, 0, Route109_EventScript_14F725, 0, 0, 0
+ object_event 16, MAP_OBJ_GFX_WOMAN_2, 0, 30, 0, 32, 0, 3, 8, 17, 0, 0, 0, 0, 0, Route109_EventScript_14F776, 0, 0, 0
+ object_event 17, MAP_OBJ_GFX_WOMAN_5, 0, 8, 0, 41, 0, 3, 8, 17, 0, 1, 0, 0, 0, Route109_EventScript_14F8E5, 0, 0, 0
+ object_event 18, MAP_OBJ_GFX_MAN_5, 0, 9, 0, 41, 0, 3, 8, 17, 0, 1, 0, 0, 0, Route109_EventScript_14F8CA, 0, 0, 0
+ object_event 19, MAP_OBJ_GFX_OLD_MAN_2, 0, 33, 0, 6, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route109_EventScript_14F77F, 0, 0, 0
+ object_event 20, MAP_OBJ_GFX_ZIGZAGOON, 0, 32, 0, 6, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route109_EventScript_14F788, 0, 0, 0
+
+Route109_MapWarps:: @ 8381CDC
+ warp_def 12, 5, 0, 0, Route109_SeashoreHouse
+
+Route109_MapBGEvents:: @ 8381CE4
+ bg_event 15, 5, 0, 0, 0, Route109_EventScript_14F79B
+ bg_event 29, 10, 3, 0, 0, Route109_EventScript_14F7A4
+ bg_event 16, 23, 3, 7, 0, ITEM_REVIVE, 50, 0
+ bg_event 33, 5, 3, 7, 0, ITEM_HEART_SCALE, 52, 0
+ bg_event 9, 10, 3, 7, 0, ITEM_GREAT_BALL, 51, 0
+ bg_event 28, 20, 3, 7, 0, ITEM_ETHER, 64, 0
+ bg_event 13, 16, 3, 7, 0, ITEM_HEART_SCALE, 90, 0
+ bg_event 8, 42, 3, 7, 0, ITEM_HEART_SCALE, 91, 0
+
+Route109_MapEvents:: @ 8381D44
+ map_events Route109_MapObjects, Route109_MapWarps, 0x0, Route109_MapBGEvents
+
diff --git a/data/maps/events/Route109_SeashoreHouse.s b/data/maps/events/Route109_SeashoreHouse.s
new file mode 100644
index 000000000..47ea6ce96
--- /dev/null
+++ b/data/maps/events/Route109_SeashoreHouse.s
@@ -0,0 +1,13 @@
+Route109_SeashoreHouse_MapObjects:: @ 83920BC
+ object_event 1, MAP_OBJ_GFX_MAN_3, 0, 6, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route109_SeashoreHouse_EventScript_160DD4, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SAILOR, 0, 2, 0, 3, 0, 3, 8, 0, 0, 1, 0, 2, 0, Route109_SeashoreHouse_EventScript_160EB8, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_TUBER_M, 0, 14, 0, 9, 0, 3, 9, 0, 0, 1, 0, 2, 0, Route109_SeashoreHouse_EventScript_160EEE, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_BEAUTY, 0, 10, 0, 5, 0, 3, 14, 0, 0, 1, 0, 2, 0, Route109_SeashoreHouse_EventScript_160ED3, 0, 0, 0
+
+Route109_SeashoreHouse_MapWarps:: @ 839211C
+ warp_def 6, 9, 0, 0, Route109
+ warp_def 7, 9, 0, 0, Route109
+
+Route109_SeashoreHouse_MapEvents:: @ 839212C
+ map_events Route109_SeashoreHouse_MapObjects, Route109_SeashoreHouse_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/Route110.s b/data/maps/events/Route110.s
new file mode 100644
index 000000000..105119052
--- /dev/null
+++ b/data/maps/events/Route110.s
@@ -0,0 +1,70 @@
+Route110_MapObjects:: @ 8381D58
+ object_event 1, MAP_OBJ_GFX_CAMPER, 0, 17, 0, 90, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route110_EventScript_14F9D4, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_CYCLING_TRIATHLETE_M, 0, 29, 0, 79, 0, 4, 8, 0, 0, 0, 0, 0, 0, Route110_EventScript_14F9CB, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_OLD_WOMAN_1, 0, 14, 0, 69, 0, 3, 3, 16, 0, 0, 0, 0, 0, Route110_EventScript_14F9C2, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_CYCLING_TRIATHLETE_M, 0, 9, 0, 57, 0, 4, 2, 17, 0, 0, 0, 0, 0, Route110_EventScript_14F9B0, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_OLD_MAN_1, 0, 10, 0, 11, 0, 3, 2, 17, 0, 0, 0, 0, 0, Route110_EventScript_14F9B9, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_CYCLING_TRIATHLETE_F, 0, 27, 0, 24, 0, 4, 2, 49, 0, 0, 0, 0, 0, Route110_EventScript_14F9A7, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_BOY_3, 0, 15, 0, 7, 0, 3, 2, 17, 0, 0, 0, 0, 0, Route110_EventScript_14F99E, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_CYCLING_TRIATHLETE_F, 0, 16, 0, 73, 0, 4, 49, 226, 0, 1, 0, 3, 0, Route110_EventScript_14FB7D, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_CYCLING_TRIATHLETE_M, 0, 19, 0, 31, 0, 4, 51, 26, 0, 1, 0, 3, 0, Route110_EventScript_14FB28, 0, 0, 0
+ object_event 10, MAP_OBJ_GFX_CYCLING_TRIATHLETE_F, 0, 30, 0, 31, 0, 4, 9, 17, 0, 1, 0, 4, 0, Route110_EventScript_14FB94, 0, 0, 0
+ object_event 11, MAP_OBJ_GFX_CYCLING_TRIATHLETE_M, 0, 16, 0, 55, 0, 4, 45, 68, 0, 1, 0, 3, 0, Route110_EventScript_14FB3F, 0, 0, 0
+ object_event 12, MAP_OBJ_GFX_PSYCHIC_M, 0, 5, 0, 39, 0, 3, 23, 0, 0, 1, 0, 3, 0, Route110_EventScript_14FA8E, 0, 0, 0
+ object_event 13, MAP_OBJ_GFX_LASS, 0, 33, 0, 15, 0, 3, 9, 0, 0, 1, 0, 1, 0, Route110_EventScript_14FAA5, 0, 0, 0
+ object_event 14, MAP_OBJ_GFX_MANIAC, 0, 23, 0, 40, 0, 3, 20, 0, 0, 1, 0, 3, 0, Route110_EventScript_14FABC, 0, 0, 0
+ object_event 15, MAP_OBJ_GFX_FISHERMAN, 0, 10, 0, 19, 0, 3, 8, 0, 0, 1, 0, 1, 0, Route110_EventScript_14FAFA, 0, 0, 0
+ object_event 16, MAP_OBJ_GFX_BERRY_TREE, 0, 5, 0, 11, 0, 3, 12, 0, 0, 0, 0, 16, 0, Route110_EventScript_1A14DD, 0, 0, 0
+ object_event 17, MAP_OBJ_GFX_BERRY_TREE, 0, 6, 0, 11, 0, 3, 12, 0, 0, 0, 0, 17, 0, Route110_EventScript_1A14DD, 0, 0, 0
+ object_event 18, MAP_OBJ_GFX_BERRY_TREE, 0, 7, 0, 11, 0, 3, 12, 0, 0, 0, 0, 18, 0, Route110_EventScript_1A14DD, 0, 0, 0
+ object_event 19, MAP_OBJ_GFX_ITEM_BALL, 0, 30, 0, 69, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_EventScript_1B14BB, 1007, 0, 0
+ object_event 20, MAP_OBJ_GFX_ITEM_BALL, 0, 26, 0, 47, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_EventScript_1B14AE, 1006, 0, 0
+ object_event 21, MAP_OBJ_GFX_CYCLING_TRIATHLETE_M, 0, 27, 0, 92, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route110_EventScript_14FA53, 0, 0, 0
+ object_event 22, 241, 0, 7, 0, 83, 0, 3, 7, 0, 0, 0, 0, 0, 0, Route110_EventScript_14F946, 900, 0, 0
+ object_event 23, 241, 0, 8, 0, 83, 0, 3, 7, 0, 0, 0, 0, 0, 0, Route110_EventScript_14F95C, 900, 0, 0
+ object_event 24, 241, 0, 9, 0, 83, 0, 3, 7, 0, 0, 0, 0, 0, 0, Route110_EventScript_14F972, 900, 0, 0
+ object_event 25, 241, 0, 10, 0, 83, 0, 3, 7, 0, 0, 0, 0, 0, 0, Route110_EventScript_14F988, 900, 0, 0
+ object_event 26, 241, 0, 8, 0, 82, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0x0, 900, 0, 0
+ object_event 27, MAP_OBJ_GFX_CYCLING_TRIATHLETE_M, 0, 21, 0, 78, 0, 4, 51, 23, 0, 1, 0, 2, 0, Route110_EventScript_14FB11, 0, 0, 0
+ object_event 28, 240, 0, 34, 0, 54, 0, 3, 14, 0, 0, 0, 0, 0, 0, 0x0, 919, 0, 0
+ object_event 29, 243, 0, 34, 0, 54, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 922, 0, 0
+ object_event 30, MAP_OBJ_GFX_YOUNGSTER, 0, 33, 0, 69, 0, 3, 14, 0, 0, 1, 0, 3, 0, Route110_EventScript_14FC10, 0, 0, 0
+ object_event 31, MAP_OBJ_GFX_WOMAN_2, 0, 11, 0, 73, 0, 3, 9, 0, 0, 1, 0, 4, 0, Route110_EventScript_14FBD2, 0, 0, 0
+
+Route110_MapWarps:: @ 8382040
+ warp_def 35, 24, 3, 0, NewMauville_Entrance
+ warp_def 11, 66, 0, 0, Route110_TrickHouseEntrance
+ warp_def 15, 16, 0, 0, Route110_SeasideCyclingRoadNorthEntrance
+ warp_def 18, 16, 0, 2, Route110_SeasideCyclingRoadNorthEntrance
+ warp_def 16, 88, 0, 0, Route110_SeasideCyclingRoadSouthEntrance
+ warp_def 19, 88, 0, 2, Route110_SeasideCyclingRoadSouthEntrance
+
+Route110_MapCoordEvents:: @ 8382070
+ coord_event 28, 92, 3, 0, 0x40a9, 2, 0, Route110_EventScript_14FC27
+ coord_event 29, 92, 3, 0, 0x40a9, 2, 0, Route110_EventScript_14FC27
+ coord_event 33, 56, 3, 0, 0x4069, 0, 0, Route110_EventScript_14FD13
+ coord_event 34, 56, 3, 0, 0x4069, 0, 0, Route110_EventScript_14FD1E
+ coord_event 35, 56, 3, 0, 0x4069, 0, 0, Route110_EventScript_14FD29
+
+Route110_MapBGEvents:: @ 83820C0
+ bg_event 15, 25, 0, 0, 0, Route110_EventScript_14F9EF
+ bg_event 9, 51, 0, 0, 0, Route110_EventScript_14FA01
+ bg_event 14, 88, 0, 0, 0, Route110_EventScript_14F9E6
+ bg_event 20, 94, 0, 0, 0, Route110_EventScript_14F9DD
+ bg_event 7, 75, 0, 0, 0, Route110_EventScript_14F9F8
+ bg_event 3, 17, 0, 0, 0, Route110_EventScript_14FA0A
+ bg_event 16, 25, 0, 8, 0, ITEM_MACHO_BRACE, 0, 0
+ bg_event 17, 25, 0, 8, 0, ITEM_SOUL_DEW, 0, 0
+ bg_event 35, 39, 3, 0, 0, Route110_EventScript_14FA13
+ bg_event 37, 70, 3, 0, 0, Route110_EventScript_14FA1C
+ bg_event 8, 67, 0, 0, 0, Route110_EventScript_14FA25
+ bg_event 32, 93, 0, 0, 0, Route110_EventScript_14FA2E
+ bg_event 26, 40, 3, 7, 0, ITEM_REVIVE, 54, 0
+ bg_event 34, 42, 3, 7, 0, ITEM_GREAT_BALL, 53, 0
+ bg_event 4, 35, 3, 7, 0, ITEM_POKE_BALL, 65, 0
+ bg_event 37, 67, 3, 7, 0, ITEM_FULL_HEAL, 55, 0
+ bg_event 13, 16, 0, 0, 0, Route110_EventScript_14F9E6
+
+Route110_MapEvents:: @ 838218C
+ map_events Route110_MapObjects, Route110_MapWarps, Route110_MapCoordEvents, Route110_MapBGEvents
+
diff --git a/data/maps/events/Route110_SeasideCyclingRoadNorthEntrance.s b/data/maps/events/Route110_SeasideCyclingRoadNorthEntrance.s
new file mode 100644
index 000000000..dd1546439
--- /dev/null
+++ b/data/maps/events/Route110_SeasideCyclingRoadNorthEntrance.s
@@ -0,0 +1,16 @@
+Route110_SeasideCyclingRoadNorthEntrance_MapObjects:: @ 8392CAC
+ object_event 1, MAP_OBJ_GFX_MART_EMPLOYEE, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route110_SeasideCyclingRoadNorthEntrance_EventScript_1634EB, 0, 0, 0
+
+Route110_SeasideCyclingRoadNorthEntrance_MapWarps:: @ 8392CC4
+ warp_def 1, 5, 0, 2, Route110
+ warp_def 2, 5, 0, 2, Route110
+ warp_def 12, 5, 0, 3, Route110
+ warp_def 13, 5, 0, 3, Route110
+
+Route110_SeasideCyclingRoadNorthEntrance_MapCoordEvents:: @ 8392CE4
+ coord_event 7, 4, 3, 0, 0x4001, 0, 0, Route110_SeasideCyclingRoadNorthEntrance_EventScript_1634F7
+ coord_event 5, 4, 3, 0, 0x4001, 1, 0, Route110_SeasideCyclingRoadNorthEntrance_EventScript_16353A
+
+Route110_SeasideCyclingRoadNorthEntrance_MapEvents:: @ 8392D04
+ map_events Route110_SeasideCyclingRoadNorthEntrance_MapObjects, Route110_SeasideCyclingRoadNorthEntrance_MapWarps, Route110_SeasideCyclingRoadNorthEntrance_MapCoordEvents, 0x0
+
diff --git a/data/maps/events/Route110_SeasideCyclingRoadSouthEntrance.s b/data/maps/events/Route110_SeasideCyclingRoadSouthEntrance.s
new file mode 100644
index 000000000..6019467dc
--- /dev/null
+++ b/data/maps/events/Route110_SeasideCyclingRoadSouthEntrance.s
@@ -0,0 +1,16 @@
+Route110_SeasideCyclingRoadSouthEntrance_MapObjects:: @ 8392C40
+ object_event 1, MAP_OBJ_GFX_MART_EMPLOYEE, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route110_SeasideCyclingRoadSouthEntrance_EventScript_16347F, 0, 0, 0
+
+Route110_SeasideCyclingRoadSouthEntrance_MapWarps:: @ 8392C58
+ warp_def 1, 5, 0, 4, Route110
+ warp_def 2, 5, 0, 4, Route110
+ warp_def 12, 5, 0, 5, Route110
+ warp_def 13, 5, 0, 5, Route110
+
+Route110_SeasideCyclingRoadSouthEntrance_MapCoordEvents:: @ 8392C78
+ coord_event 7, 4, 3, 0, 0x4001, 0, 0, Route110_SeasideCyclingRoadSouthEntrance_EventScript_16348B
+ coord_event 5, 4, 3, 0, 0x4001, 1, 0, Route110_SeasideCyclingRoadSouthEntrance_EventScript_1634BD
+
+Route110_SeasideCyclingRoadSouthEntrance_MapEvents:: @ 8392C98
+ map_events Route110_SeasideCyclingRoadSouthEntrance_MapObjects, Route110_SeasideCyclingRoadSouthEntrance_MapWarps, Route110_SeasideCyclingRoadSouthEntrance_MapCoordEvents, 0x0
+
diff --git a/data/maps/events/Route110_TrickHouseCorridor.s b/data/maps/events/Route110_TrickHouseCorridor.s
new file mode 100644
index 000000000..5546edf44
--- /dev/null
+++ b/data/maps/events/Route110_TrickHouseCorridor.s
@@ -0,0 +1,9 @@
+Route110_TrickHouseCorridor_MapWarps:: @ 8392228
+ warp_def 13, 3, 3, 1, Route110_TrickHouseEnd
+ warp_def 14, 3, 3, 1, Route110_TrickHouseEnd
+ warp_def 4, 23, 3, 2, Route110_TrickHouseEntrance
+ warp_def 5, 23, 3, 2, Route110_TrickHouseEntrance
+
+Route110_TrickHouseCorridor_MapEvents:: @ 8392248
+ map_events 0x0, Route110_TrickHouseCorridor_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/Route110_TrickHouseEnd.s b/data/maps/events/Route110_TrickHouseEnd.s
new file mode 100644
index 000000000..7a789fc5a
--- /dev/null
+++ b/data/maps/events/Route110_TrickHouseEnd.s
@@ -0,0 +1,16 @@
+Route110_TrickHouseEnd_MapObjects:: @ 83921D0
+ object_event 1, MAP_OBJ_GFX_MAN_1, 0, 4, 0, 5, 0, 3, 10, 0, 0, 0, 0, 0, 0, Route110_TrickHouseEnd_EventScript_16199E, 899, 0, 0
+
+Route110_TrickHouseEnd_MapWarps:: @ 83921E8
+ warp_def 10, 1, 3, 2, Route110_TrickHousePuzzle1
+ warp_def 2, 1, 3, 0, Route110_TrickHouseCorridor
+
+Route110_TrickHouseEnd_MapCoordEvents:: @ 83921F8
+ coord_event 2, 2, 3, 0, 0x4002, 0, 0, Route110_TrickHouseEnd_EventScript_161CA0
+
+Route110_TrickHouseEnd_MapBGEvents:: @ 8392208
+ bg_event 4, 5, 3, 7, 0, ITEM_NUGGET, 1, 0
+
+Route110_TrickHouseEnd_MapEvents:: @ 8392214
+ map_events Route110_TrickHouseEnd_MapObjects, Route110_TrickHouseEnd_MapWarps, Route110_TrickHouseEnd_MapCoordEvents, Route110_TrickHouseEnd_MapBGEvents
+
diff --git a/data/maps/events/Route110_TrickHouseEntrance.s b/data/maps/events/Route110_TrickHouseEntrance.s
new file mode 100644
index 000000000..dde80168a
--- /dev/null
+++ b/data/maps/events/Route110_TrickHouseEntrance.s
@@ -0,0 +1,20 @@
+Route110_TrickHouseEntrance_MapObjects:: @ 8392140
+ object_event 1, MAP_OBJ_GFX_MAN_1, 0, 6, 0, 2, 0, 3, 9, 0, 0, 0, 0, 0, 0, Route110_TrickHouseEntrance_EventScript_16121A, 872, 0, 0
+
+Route110_TrickHouseEntrance_MapWarps:: @ 8392158
+ warp_def 5, 7, 3, 1, Route110
+ warp_def 6, 7, 3, 1, Route110
+ warp_def 5, 2, 3, 0, Route110_TrickHousePuzzle1
+
+Route110_TrickHouseEntrance_MapCoordEvents:: @ 8392170
+ coord_event 4, 7, 3, 0, 0x40a5, 0, 0, Route110_TrickHouseEntrance_EventScript_1618B0
+ coord_event 5, 6, 3, 0, 0x40a5, 0, 0, Route110_TrickHouseEntrance_EventScript_1618B0
+ coord_event 6, 6, 3, 0, 0x40a5, 0, 0, Route110_TrickHouseEntrance_EventScript_1618B0
+ coord_event 7, 7, 3, 0, 0x40a5, 0, 0, Route110_TrickHouseEntrance_EventScript_1618B0
+
+Route110_TrickHouseEntrance_MapBGEvents:: @ 83921B0
+ bg_event 5, 1, 0, 1, 0, Route110_TrickHouseEntrance_EventScript_16158A
+
+Route110_TrickHouseEntrance_MapEvents:: @ 83921BC
+ map_events Route110_TrickHouseEntrance_MapObjects, Route110_TrickHouseEntrance_MapWarps, Route110_TrickHouseEntrance_MapCoordEvents, Route110_TrickHouseEntrance_MapBGEvents
+
diff --git a/data/maps/events/Route110_TrickHousePuzzle1.s b/data/maps/events/Route110_TrickHousePuzzle1.s
new file mode 100644
index 000000000..20d28aa1e
--- /dev/null
+++ b/data/maps/events/Route110_TrickHousePuzzle1.s
@@ -0,0 +1,32 @@
+Route110_TrickHousePuzzle1_MapObjects:: @ 839225C
+ object_event 1, MAP_OBJ_GFX_LASS, 0, 13, 0, 21, 0, 3, 9, 0, 0, 1, 0, 5, 0, Route110_TrickHousePuzzle1_EventScript_161D31, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_YOUNGSTER, 0, 13, 0, 7, 0, 3, 8, 0, 0, 1, 0, 2, 0, Route110_TrickHousePuzzle1_EventScript_161D48, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_LASS, 0, 3, 0, 8, 0, 3, 9, 0, 0, 1, 0, 3, 0, Route110_TrickHousePuzzle1_EventScript_161D5F, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 3, 0, 18, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle1_EventScript_1B0DCC, 19, 0, 0
+ object_event 5, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 7, 0, 21, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle1_EventScript_1B0DCC, 17, 0, 0
+ object_event 6, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 12, 0, 18, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle1_EventScript_1B0DCC, 18, 0, 0
+ object_event 7, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 10, 0, 16, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle1_EventScript_1B0DCC, 20, 0, 0
+ object_event 8, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 12, 0, 12, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle1_EventScript_1B0DCC, 23, 0, 0
+ object_event 9, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 3, 0, 12, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle1_EventScript_1B0DCC, 22, 0, 0
+ object_event 10, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 0, 0, 14, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle1_EventScript_1B0DCC, 21, 0, 0
+ object_event 11, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 6, 0, 10, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle1_EventScript_1B0DCC, 25, 0, 0
+ object_event 12, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 2, 0, 10, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle1_EventScript_1B0DCC, 24, 0, 0
+ object_event 13, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 9, 0, 8, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle1_EventScript_1B0DCC, 26, 0, 0
+ object_event 14, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 2, 0, 4, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle1_EventScript_1B0DCC, 28, 0, 0
+ object_event 15, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 0, 0, 6, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle1_EventScript_1B0DCC, 27, 0, 0
+ object_event 16, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 6, 0, 4, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle1_EventScript_1B0DCC, 29, 0, 0
+ object_event 17, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 11, 0, 4, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle1_EventScript_1B0DCC, 30, 0, 0
+ object_event 18, MAP_OBJ_GFX_ITEM_BALL, 0, 9, 0, 12, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle1_EventScript_1B1A51, 1060, 0, 0
+ object_event 19, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 14, 0, 14, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle1_EventScript_1B0DCC, 31, 0, 0
+
+Route110_TrickHousePuzzle1_MapWarps:: @ 8392424
+ warp_def 0, 21, 3, 2, Route110_TrickHouseEntrance
+ warp_def 1, 21, 3, 2, Route110_TrickHouseEntrance
+ warp_def 13, 1, 3, 0, Route110_TrickHouseEnd
+
+Route110_TrickHousePuzzle1_MapBGEvents:: @ 839243C
+ bg_event 14, 8, 0, 0, 0, Route110_TrickHousePuzzle1_EventScript_161D14
+
+Route110_TrickHousePuzzle1_MapEvents:: @ 8392448
+ map_events Route110_TrickHousePuzzle1_MapObjects, Route110_TrickHousePuzzle1_MapWarps, 0x0, Route110_TrickHousePuzzle1_MapBGEvents
+
diff --git a/data/maps/events/Route110_TrickHousePuzzle2.s b/data/maps/events/Route110_TrickHousePuzzle2.s
new file mode 100644
index 000000000..68cbbf898
--- /dev/null
+++ b/data/maps/events/Route110_TrickHousePuzzle2.s
@@ -0,0 +1,24 @@
+Route110_TrickHousePuzzle2_MapObjects:: @ 839245C
+ object_event 1, MAP_OBJ_GFX_SCHOOL_KID_M, 0, 13, 0, 16, 0, 3, 8, 0, 0, 1, 0, 1, 0, Route110_TrickHousePuzzle2_EventScript_161E78, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SCHOOL_KID_M, 0, 0, 0, 10, 0, 3, 10, 0, 0, 1, 0, 2, 0, Route110_TrickHousePuzzle2_EventScript_161E8F, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_GIRL_3, 0, 9, 0, 7, 0, 3, 9, 0, 0, 1, 0, 3, 0, Route110_TrickHousePuzzle2_EventScript_161EA6, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_ITEM_BALL, 0, 5, 0, 19, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle2_EventScript_1B1A6B, 1062, 0, 0
+ object_event 5, MAP_OBJ_GFX_ITEM_BALL, 0, 0, 0, 2, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle2_EventScript_1B1A5E, 1061, 0, 0
+
+Route110_TrickHousePuzzle2_MapWarps:: @ 83924D4
+ warp_def 0, 21, 3, 2, Route110_TrickHouseEntrance
+ warp_def 1, 21, 3, 2, Route110_TrickHouseEntrance
+ warp_def 13, 1, 3, 0, Route110_TrickHouseEnd
+
+Route110_TrickHousePuzzle2_MapCoordEvents:: @ 83924EC
+ coord_event 14, 21, 3, 0, 0x4001, 0, 0, Route110_TrickHousePuzzle2_EventScript_161DE0
+ coord_event 8, 17, 3, 0, 0x4002, 0, 0, Route110_TrickHousePuzzle2_EventScript_161DF3
+ coord_event 4, 10, 3, 0, 0x4003, 0, 0, Route110_TrickHousePuzzle2_EventScript_161E06
+ coord_event 5, 2, 0, 0, 0x4004, 0, 0, Route110_TrickHousePuzzle2_EventScript_161E19
+
+Route110_TrickHousePuzzle2_MapBGEvents:: @ 839252C
+ bg_event 14, 5, 0, 0, 0, Route110_TrickHousePuzzle2_EventScript_161DC3
+
+Route110_TrickHousePuzzle2_MapEvents:: @ 8392538
+ map_events Route110_TrickHousePuzzle2_MapObjects, Route110_TrickHousePuzzle2_MapWarps, Route110_TrickHousePuzzle2_MapCoordEvents, Route110_TrickHousePuzzle2_MapBGEvents
+
diff --git a/data/maps/events/Route110_TrickHousePuzzle3.s b/data/maps/events/Route110_TrickHousePuzzle3.s
new file mode 100644
index 000000000..7f8b7e792
--- /dev/null
+++ b/data/maps/events/Route110_TrickHousePuzzle3.s
@@ -0,0 +1,33 @@
+Route110_TrickHousePuzzle3_MapObjects:: @ 839254C
+ object_event 1, MAP_OBJ_GFX_CAMPER, 0, 10, 0, 16, 0, 3, 8, 0, 0, 1, 0, 1, 0, Route110_TrickHousePuzzle3_EventScript_162708, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_PICNICKER, 0, 1, 0, 13, 0, 3, 10, 0, 0, 1, 0, 1, 0, Route110_TrickHousePuzzle3_EventScript_16271F, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_HIKER, 0, 11, 0, 4, 0, 3, 8, 0, 0, 1, 0, 1, 0, Route110_TrickHousePuzzle3_EventScript_162736, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 4, 0, 12, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle3_EventScript_1B0EB7, 17, 0, 0
+ object_event 5, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 1, 0, 3, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle3_EventScript_1B0EB7, 18, 0, 0
+ object_event 6, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 11, 0, 10, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle3_EventScript_1B0EB7, 19, 0, 0
+ object_event 7, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 13, 0, 7, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle3_EventScript_1B0EB7, 20, 0, 0
+ object_event 8, MAP_OBJ_GFX_ITEM_BALL, 0, 0, 0, 11, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle3_EventScript_1B1A85, 1064, 0, 0
+ object_event 9, MAP_OBJ_GFX_ITEM_BALL, 0, 7, 0, 2, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle3_EventScript_1B1A78, 1063, 0, 0
+ object_event 10, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 1, 0, 20, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle3_EventScript_1B0EB7, 21, 0, 0
+ object_event 11, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 2, 0, 21, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle3_EventScript_1B0EB7, 22, 0, 0
+
+Route110_TrickHousePuzzle3_MapWarps:: @ 8392654
+ warp_def 0, 21, 3, 2, Route110_TrickHouseEntrance
+ warp_def 1, 21, 3, 2, Route110_TrickHouseEntrance
+ warp_def 13, 1, 3, 0, Route110_TrickHouseEnd
+
+Route110_TrickHousePuzzle3_MapCoordEvents:: @ 839266C
+ coord_event 5, 20, 3, 0, 0x4001, 0, 0, Route110_TrickHousePuzzle3_EventScript_1625AB
+ coord_event 4, 12, 3, 0, 0x4002, 0, 0, Route110_TrickHousePuzzle3_EventScript_1625B7
+ coord_event 11, 10, 3, 0, 0x4003, 0, 0, Route110_TrickHousePuzzle3_EventScript_1625C3
+ coord_event 3, 8, 3, 0, 0x4004, 0, 0, Route110_TrickHousePuzzle3_EventScript_1625CF
+ coord_event 13, 7, 3, 0, 0x4005, 0, 0, Route110_TrickHousePuzzle3_EventScript_1625DB
+ coord_event 1, 3, 3, 0, 0x4006, 0, 0, Route110_TrickHousePuzzle3_EventScript_1625E7
+ coord_event 10, 2, 3, 0, 0x4007, 0, 0, Route110_TrickHousePuzzle3_EventScript_1625F3
+
+Route110_TrickHousePuzzle3_MapBGEvents:: @ 83926DC
+ bg_event 0, 8, 3, 0, 0, Route110_TrickHousePuzzle3_EventScript_1626EB
+
+Route110_TrickHousePuzzle3_MapEvents:: @ 83926E8
+ map_events Route110_TrickHousePuzzle3_MapObjects, Route110_TrickHousePuzzle3_MapWarps, Route110_TrickHousePuzzle3_MapCoordEvents, Route110_TrickHousePuzzle3_MapBGEvents
+
diff --git a/data/maps/events/Route110_TrickHousePuzzle4.s b/data/maps/events/Route110_TrickHousePuzzle4.s
new file mode 100644
index 000000000..aaa1bb895
--- /dev/null
+++ b/data/maps/events/Route110_TrickHousePuzzle4.s
@@ -0,0 +1,28 @@
+Route110_TrickHousePuzzle4_MapObjects:: @ 83926FC
+ object_event 1, MAP_OBJ_GFX_GIRL_3, 0, 12, 0, 8, 0, 3, 9, 0, 0, 1, 0, 1, 0, Route110_TrickHousePuzzle4_EventScript_16276B, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_GIRL_3, 0, 10, 0, 4, 0, 3, 10, 0, 0, 1, 0, 1, 0, Route110_TrickHousePuzzle4_EventScript_162799, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_BLACK_BELT, 0, 7, 0, 4, 0, 3, 9, 0, 0, 1, 0, 2, 0, Route110_TrickHousePuzzle4_EventScript_162782, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_ITEM_BALL, 0, 4, 0, 4, 0, 0, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle4_EventScript_1B1A92, 1065, 0, 0
+ object_event 5, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 13, 0, 3, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle4_EventScript_1B0FCB, 17, 0, 0
+ object_event 6, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 6, 0, 14, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle4_EventScript_1B0FCB, 18, 0, 0
+ object_event 7, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 2, 0, 12, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle4_EventScript_1B0FCB, 19, 0, 0
+ object_event 8, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 3, 0, 9, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle4_EventScript_1B0FCB, 20, 0, 0
+ object_event 9, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 12, 0, 2, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle4_EventScript_1B0FCB, 21, 0, 0
+ object_event 10, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 8, 0, 8, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle4_EventScript_1B0FCB, 22, 0, 0
+ object_event 11, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 9, 0, 7, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle4_EventScript_1B0FCB, 23, 0, 0
+ object_event 12, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 11, 0, 13, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle4_EventScript_1B0FCB, 24, 0, 0
+ object_event 13, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 14, 0, 2, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle4_EventScript_1B0FCB, 25, 0, 0
+ object_event 14, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 4, 0, 14, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle4_EventScript_1B0FCB, 26, 0, 0
+ object_event 15, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 14, 0, 9, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle4_EventScript_1B0FCB, 27, 0, 0
+
+Route110_TrickHousePuzzle4_MapWarps:: @ 8392864
+ warp_def 0, 21, 3, 2, Route110_TrickHouseEntrance
+ warp_def 1, 21, 3, 2, Route110_TrickHouseEntrance
+ warp_def 13, 1, 3, 0, Route110_TrickHouseEnd
+
+Route110_TrickHousePuzzle4_MapBGEvents:: @ 839287C
+ bg_event 0, 5, 3, 0, 0, Route110_TrickHousePuzzle4_EventScript_16274E
+
+Route110_TrickHousePuzzle4_MapEvents:: @ 8392888
+ map_events Route110_TrickHousePuzzle4_MapObjects, Route110_TrickHousePuzzle4_MapWarps, 0x0, Route110_TrickHousePuzzle4_MapBGEvents
+
diff --git a/data/maps/events/Route110_TrickHousePuzzle5.s b/data/maps/events/Route110_TrickHousePuzzle5.s
new file mode 100644
index 000000000..487bb49f8
--- /dev/null
+++ b/data/maps/events/Route110_TrickHousePuzzle5.s
@@ -0,0 +1,34 @@
+Route110_TrickHousePuzzle5_MapObjects:: @ 839289C
+ object_event 1, MAP_OBJ_GFX_MAN_1, 0, 9, 0, 19, 0, 3, 9, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle5_EventScript_1627F2, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_1, 0, 5, 0, 14, 0, 3, 10, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle5_EventScript_162813, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MAN_1, 0, 12, 0, 10, 0, 3, 9, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle5_EventScript_162834, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_MAN_1, 0, 12, 0, 5, 0, 3, 9, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle5_EventScript_162855, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_MAN_1, 0, 1, 0, 6, 0, 3, 10, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle5_EventScript_162876, 0, 0, 0
+
+Route110_TrickHousePuzzle5_MapWarps:: @ 8392914
+ warp_def 0, 21, 3, 2, Route110_TrickHouseEntrance
+ warp_def 1, 21, 3, 2, Route110_TrickHouseEntrance
+ warp_def 13, 1, 3, 0, Route110_TrickHouseEnd
+
+Route110_TrickHousePuzzle5_MapCoordEvents:: @ 839292C
+ coord_event 8, 19, 3, 0, 0x4001, 0, 0, Route110_TrickHousePuzzle5_EventScript_162897
+ coord_event 7, 19, 3, 0, 0x4001, 0, 0, Route110_TrickHousePuzzle5_EventScript_1628A3
+ coord_event 6, 19, 3, 0, 0x4001, 0, 0, Route110_TrickHousePuzzle5_EventScript_1628AF
+ coord_event 5, 19, 3, 0, 0x4001, 0, 0, Route110_TrickHousePuzzle5_EventScript_1628BB
+ coord_event 6, 14, 3, 0, 0x4002, 0, 0, Route110_TrickHousePuzzle5_EventScript_1628C7
+ coord_event 7, 14, 3, 0, 0x4002, 0, 0, Route110_TrickHousePuzzle5_EventScript_1628D3
+ coord_event 11, 10, 3, 0, 0x4003, 0, 0, Route110_TrickHousePuzzle5_EventScript_1628DF
+ coord_event 10, 10, 3, 0, 0x4003, 0, 0, Route110_TrickHousePuzzle5_EventScript_1628EB
+ coord_event 9, 10, 3, 0, 0x4003, 0, 0, Route110_TrickHousePuzzle5_EventScript_1628F7
+ coord_event 11, 5, 3, 0, 0x4004, 0, 0, Route110_TrickHousePuzzle5_EventScript_162903
+ coord_event 10, 5, 3, 0, 0x4004, 0, 0, Route110_TrickHousePuzzle5_EventScript_16290F
+ coord_event 2, 6, 3, 0, 0x4005, 0, 0, Route110_TrickHousePuzzle5_EventScript_16291B
+ coord_event 3, 6, 3, 0, 0x4005, 0, 0, Route110_TrickHousePuzzle5_EventScript_162927
+ coord_event 4, 6, 3, 0, 0x4005, 0, 0, Route110_TrickHousePuzzle5_EventScript_162933
+
+Route110_TrickHousePuzzle5_MapBGEvents:: @ 8392A0C
+ bg_event 2, 9, 0, 0, 0, Route110_TrickHousePuzzle5_EventScript_1627D5
+
+Route110_TrickHousePuzzle5_MapEvents:: @ 8392A18
+ map_events Route110_TrickHousePuzzle5_MapObjects, Route110_TrickHousePuzzle5_MapWarps, Route110_TrickHousePuzzle5_MapCoordEvents, Route110_TrickHousePuzzle5_MapBGEvents
+
diff --git a/data/maps/events/Route110_TrickHousePuzzle6.s b/data/maps/events/Route110_TrickHousePuzzle6.s
new file mode 100644
index 000000000..9188da0d1
--- /dev/null
+++ b/data/maps/events/Route110_TrickHousePuzzle6.s
@@ -0,0 +1,17 @@
+Route110_TrickHousePuzzle6_MapObjects:: @ 8392A2C
+ object_event 1, MAP_OBJ_GFX_PICNICKER, 0, 10, 0, 9, 0, 3, 9, 0, 0, 1, 0, 2, 0, Route110_TrickHousePuzzle6_EventScript_163107, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_6, 0, 14, 0, 12, 0, 3, 9, 0, 0, 1, 0, 2, 0, Route110_TrickHousePuzzle6_EventScript_16311E, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_CAMPER, 0, 0, 0, 3, 0, 3, 10, 0, 0, 1, 0, 4, 0, Route110_TrickHousePuzzle6_EventScript_163135, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_ITEM_BALL, 0, 8, 0, 2, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle6_EventScript_1B1A9F, 1067, 0, 0
+
+Route110_TrickHousePuzzle6_MapWarps:: @ 8392A8C
+ warp_def 0, 21, 3, 2, Route110_TrickHouseEntrance
+ warp_def 1, 21, 3, 2, Route110_TrickHouseEntrance
+ warp_def 13, 1, 3, 0, Route110_TrickHouseEnd
+
+Route110_TrickHousePuzzle6_MapBGEvents:: @ 8392AA4
+ bg_event 13, 9, 3, 0, 0, Route110_TrickHousePuzzle6_EventScript_1630EA
+
+Route110_TrickHousePuzzle6_MapEvents:: @ 8392AB0
+ map_events Route110_TrickHousePuzzle6_MapObjects, Route110_TrickHousePuzzle6_MapWarps, 0x0, Route110_TrickHousePuzzle6_MapBGEvents
+
diff --git a/data/maps/events/Route110_TrickHousePuzzle7.s b/data/maps/events/Route110_TrickHousePuzzle7.s
new file mode 100644
index 000000000..9ab0a3754
--- /dev/null
+++ b/data/maps/events/Route110_TrickHousePuzzle7.s
@@ -0,0 +1,25 @@
+Route110_TrickHousePuzzle7_MapObjects:: @ 8392AC4
+ object_event 1, MAP_OBJ_GFX_PSYCHIC_M, 0, 0, 0, 3, 0, 3, 10, 0, 0, 1, 0, 2, 0, Route110_TrickHousePuzzle7_EventScript_1633D6, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_LASS, 0, 14, 0, 3, 0, 3, 7, 0, 0, 1, 0, 1, 0, Route110_TrickHousePuzzle7_EventScript_163404, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_HEX_MANIAC, 0, 9, 0, 10, 0, 3, 23, 0, 0, 1, 0, 1, 0, Route110_TrickHousePuzzle7_EventScript_1633ED, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_ITEM_BALL, 0, 11, 0, 10, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle7_EventScript_1B1AAC, 1068, 0, 0
+
+Route110_TrickHousePuzzle7_MapWarps:: @ 8392B24
+ warp_def 0, 21, 3, 2, Route110_TrickHouseEntrance
+ warp_def 1, 21, 3, 2, Route110_TrickHouseEntrance
+ warp_def 13, 1, 3, 0, Route110_TrickHouseEnd
+
+Route110_TrickHousePuzzle7_MapCoordEvents:: @ 8392B3C
+ coord_event 9, 2, 3, 0, 0x4001, 0, 0, Route110_TrickHousePuzzle7_EventScript_1632A8
+
+Route110_TrickHousePuzzle7_MapBGEvents:: @ 8392B4C
+ bg_event 7, 2, 3, 0, 0, Route110_TrickHousePuzzle7_EventScript_16328B
+ bg_event 12, 16, 3, 0, 0, Route110_TrickHousePuzzle7_EventScript_1632B9
+ bg_event 5, 10, 3, 0, 0, Route110_TrickHousePuzzle7_EventScript_163317
+ bg_event 12, 11, 3, 0, 0, Route110_TrickHousePuzzle7_EventScript_1632E8
+ bg_event 4, 4, 3, 0, 0, Route110_TrickHousePuzzle7_EventScript_163346
+ bg_event 7, 5, 3, 0, 0, Route110_TrickHousePuzzle7_EventScript_163375
+
+Route110_TrickHousePuzzle7_MapEvents:: @ 8392B94
+ map_events Route110_TrickHousePuzzle7_MapObjects, Route110_TrickHousePuzzle7_MapWarps, Route110_TrickHousePuzzle7_MapCoordEvents, Route110_TrickHousePuzzle7_MapBGEvents
+
diff --git a/data/maps/events/Route110_TrickHousePuzzle8.s b/data/maps/events/Route110_TrickHousePuzzle8.s
new file mode 100644
index 000000000..7fbdbed39
--- /dev/null
+++ b/data/maps/events/Route110_TrickHousePuzzle8.s
@@ -0,0 +1,17 @@
+Route110_TrickHousePuzzle8_MapObjects:: @ 8392BA8
+ object_event 1, MAP_OBJ_GFX_MAN_4, 0, 12, 0, 21, 0, 3, 10, 0, 0, 1, 0, 2, 0, Route110_TrickHousePuzzle8_EventScript_163439, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_4, 0, 12, 0, 11, 0, 3, 10, 0, 0, 1, 0, 2, 0, Route110_TrickHousePuzzle8_EventScript_163467, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_WOMAN_7, 0, 10, 0, 11, 0, 3, 8, 0, 0, 1, 0, 1, 0, Route110_TrickHousePuzzle8_EventScript_163450, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_ITEM_BALL, 0, 2, 0, 11, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route110_TrickHousePuzzle8_EventScript_1B1AB9, 1069, 0, 0
+
+Route110_TrickHousePuzzle8_MapWarps:: @ 8392C08
+ warp_def 0, 21, 3, 2, Route110_TrickHouseEntrance
+ warp_def 1, 21, 3, 2, Route110_TrickHouseEntrance
+ warp_def 13, 1, 0, 0, Route110_TrickHouseEnd
+
+Route110_TrickHousePuzzle8_MapBGEvents:: @ 8392C20
+ bg_event 7, 11, 3, 0, 0, Route110_TrickHousePuzzle8_EventScript_16341C
+
+Route110_TrickHousePuzzle8_MapEvents:: @ 8392C2C
+ map_events Route110_TrickHousePuzzle8_MapObjects, Route110_TrickHousePuzzle8_MapWarps, 0x0, Route110_TrickHousePuzzle8_MapBGEvents
+
diff --git a/data/maps/events/Route111.s b/data/maps/events/Route111.s
new file mode 100644
index 000000000..500287f46
--- /dev/null
+++ b/data/maps/events/Route111.s
@@ -0,0 +1,101 @@
+Route111_MapObjects:: @ 83821A0
+ object_event 1, MAP_OBJ_GFX_MAN_1, 0, 13, 0, 114, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route111_EventScript_1501D1, 768, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_2, 0, 13, 0, 113, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0x0, 769, 0, 0
+ object_event 3, MAP_OBJ_GFX_LASS, 0, 13, 0, 113, 0, 0, 8, 1, 0, 0, 0, 0, 0, 0x0, 770, 0, 0
+ object_event 4, MAP_OBJ_GFX_OLD_WOMAN_1, 0, 13, 0, 113, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0x0, 771, 0, 0
+ object_event 5, MAP_OBJ_GFX_PICNICKER, 0, 28, 0, 51, 0, 3, 17, 0, 0, 1, 0, 3, 0, Route111_EventScript_1503BE, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_BERRY_TREE, 0, 22, 0, 5, 0, 3, 12, 0, 0, 0, 0, 19, 0, Route111_EventScript_1A14DD, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_BERRY_TREE, 0, 23, 0, 5, 0, 3, 12, 0, 0, 0, 0, 20, 0, Route111_EventScript_1A14DD, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_MAN_4, 0, 8, 0, 91, 0, 3, 2, 17, 0, 0, 0, 0, 0, Route111_EventScript_150395, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_CAMPER, 0, 24, 0, 60, 0, 3, 21, 0, 0, 1, 0, 3, 0, Route111_EventScript_1503A7, 0, 0, 0
+ object_event 10, MAP_OBJ_GFX_HIKER, 0, 27, 0, 69, 0, 3, 50, 34, 0, 1, 0, 2, 0, Route111_EventScript_150403, 0, 0, 0
+ object_event 11, MAP_OBJ_GFX_CAMPER, 0, 21, 0, 47, 0, 3, 9, 0, 0, 1, 0, 4, 0, Route111_EventScript_1503D5, 0, 0, 0
+ object_event 12, MAP_OBJ_GFX_PICNICKER, 0, 32, 0, 72, 0, 3, 24, 0, 0, 1, 0, 3, 0, Route111_EventScript_1503EC, 0, 0, 0
+ object_event 13, MAP_OBJ_GFX_CAMERAMAN, 0, 14, 0, 86, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route111_EventScript_1AE442, 796, 0, 0
+ object_event 14, MAP_OBJ_GFX_REPORTER_F, 0, 13, 0, 86, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route111_EventScript_1AE422, 796, 0, 0
+ object_event 15, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 18, 0, 101, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route111_EventScript_1B0EB7, 17, 0, 0
+ object_event 16, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 19, 0, 100, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route111_EventScript_1B0EB7, 18, 0, 0
+ object_event 17, MAP_OBJ_GFX_GIRL_1, 0, 23, 0, 8, 0, 3, 5, 1, 0, 0, 0, 0, 0, Route111_EventScript_1500C5, 0, 0, 0
+ object_event 18, MAP_OBJ_GFX_ITEM_BALL, 0, 32, 0, 105, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route111_EventScript_1B14C8, 1008, 0, 0
+ object_event 19, MAP_OBJ_GFX_BERRY_TREE, 0, 18, 0, 5, 0, 3, 12, 0, 0, 0, 0, 80, 0, Route111_EventScript_1A14DD, 0, 0, 0
+ object_event 20, MAP_OBJ_GFX_BERRY_TREE, 0, 19, 0, 5, 0, 3, 12, 0, 0, 0, 0, 81, 0, Route111_EventScript_1A14DD, 0, 0, 0
+ object_event 21, MAP_OBJ_GFX_REPORTER_F, 0, 13, 0, 86, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route111_EventScript_1AE4E2, 799, 0, 0
+ object_event 22, MAP_OBJ_GFX_CAMERAMAN, 0, 14, 0, 86, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route111_EventScript_1AE502, 799, 0, 0
+ object_event 23, MAP_OBJ_GFX_REPORTER_F, 0, 13, 0, 86, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route111_EventScript_1AE562, 903, 0, 0
+ object_event 24, MAP_OBJ_GFX_CAMERAMAN, 0, 14, 0, 86, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route111_EventScript_1AE582, 903, 0, 0
+ object_event 25, MAP_OBJ_GFX_ITEM_BALL, 0, 12, 0, 54, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route111_EventScript_1B14D5, 1009, 0, 0
+ object_event 26, MAP_OBJ_GFX_ITEM_BALL, 0, 3, 0, 114, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route111_EventScript_1B14E2, 1010, 0, 0
+ object_event 27, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 22, 0, 21, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route111_EventScript_1B0DCC, 19, 0, 0
+ object_event 28, MAP_OBJ_GFX_PICNICKER, 0, 10, 0, 82, 0, 3, 14, 0, 0, 1, 0, 2, 0, Route111_EventScript_150458, 0, 0, 0
+ object_event 29, MAP_OBJ_GFX_CAMPER, 0, 11, 0, 71, 0, 3, 22, 0, 0, 1, 0, 3, 0, Route111_EventScript_150441, 0, 0, 0
+ object_event 30, MAP_OBJ_GFX_BLACK_BELT, 0, 32, 0, 29, 0, 3, 28, 1, 0, 1, 0, 2, 0, Route111_EventScript_15046F, 0, 0, 0
+ object_event 31, MAP_OBJ_GFX_WOMAN_7, 0, 11, 0, 12, 0, 3, 7, 4, 0, 1, 0, 4, 0, Route111_EventScript_1504C4, 0, 0, 0
+ object_event 32, MAP_OBJ_GFX_MAN_4, 0, 9, 0, 27, 0, 3, 17, 0, 0, 1, 0, 3, 0, Route111_EventScript_150486, 0, 0, 0
+ object_event 33, MAP_OBJ_GFX_BOY_1, 0, 13, 0, 20, 0, 3, 7, 17, 0, 0, 0, 0, 0, Route111_EventScript_1A3858, 960, 0, 0
+ object_event 34, MAP_OBJ_GFX_FOSSIL, 0, 32, 0, 38, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route111_EventScript_150023, 963, 0, 0
+ object_event 35, MAP_OBJ_GFX_FOSSIL, 0, 33, 0, 38, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route111_EventScript_150069, 964, 0, 0
+ object_event 36, MAP_OBJ_GFX_MAN_5, 0, 20, 0, 114, 0, 3, 2, 17, 0, 0, 0, 0, 0, Route111_EventScript_15039E, 0, 0, 0
+
+Route111_MapWarps:: @ 8382500
+ warp_def 13, 113, 0, 0, Route111_WinstrateFamilysHouse
+ warp_def 29, 87, 0, 0, DesertRuins
+ warp_def 26, 18, 0, 0, Route111_OldLadysRestStop
+
+Route111_MapCoordEvents:: @ 8382518
+ coord_event 12, 62, 3, 0, 0, 0, 0, Route111_EventScript_1501C9
+ coord_event 11, 61, 3, 0, 0x4003, 0, 0, Route111_EventScript_150116
+ coord_event 12, 61, 3, 0, 0x4003, 0, 0, Route111_EventScript_150116
+ coord_event 13, 61, 3, 0, 0x4003, 0, 0, Route111_EventScript_150116
+ coord_event 7, 63, 3, 0, 0, 0, 0, Route111_EventScript_1501BC
+ coord_event 12, 44, 3, 0, 0x4003, 0, 0, Route111_EventScript_150122
+ coord_event 13, 43, 3, 0, 0x4003, 0, 0, Route111_EventScript_150122
+ coord_event 14, 42, 3, 0, 0x4003, 0, 0, Route111_EventScript_150122
+ coord_event 16, 40, 3, 0, 0x4003, 0, 0, Route111_EventScript_150122
+ coord_event 14, 61, 3, 0, 0x4003, 0, 0, Route111_EventScript_150116
+ coord_event 18, 32, 3, 0, 0, 0, 0, Route111_EventScript_1501BC
+ coord_event 17, 31, 3, 0, 0, 0, 0, Route111_EventScript_1501BC
+ coord_event 9, 37, 3, 0, 0, 0, 0, Route111_EventScript_1501BC
+ coord_event 10, 36, 3, 0, 0, 0, 0, Route111_EventScript_1501BC
+ coord_event 17, 39, 3, 0, 0x4003, 0, 0, Route111_EventScript_150122
+ coord_event 18, 38, 3, 0, 0x4003, 0, 0, Route111_EventScript_150122
+ coord_event 8, 64, 3, 0, 0, 0, 0, Route111_EventScript_1501BC
+ coord_event 9, 65, 3, 0, 0, 0, 0, Route111_EventScript_1501BC
+ coord_event 10, 65, 3, 0, 0, 0, 0, Route111_EventScript_1501BC
+ coord_event 11, 66, 3, 0, 0, 0, 0, Route111_EventScript_1501BC
+ coord_event 12, 67, 3, 0, 0, 0, 0, Route111_EventScript_1501BC
+ coord_event 13, 68, 3, 0, 0, 0, 0, Route111_EventScript_1501BC
+ coord_event 14, 69, 3, 0, 0, 0, 0, Route111_EventScript_1501BC
+ coord_event 10, 61, 3, 0, 0, 0, 0, Route111_EventScript_1501C9
+ coord_event 11, 62, 3, 0, 0, 0, 0, Route111_EventScript_1501C9
+ coord_event 13, 62, 3, 0, 0, 0, 0, Route111_EventScript_1501C9
+ coord_event 14, 62, 3, 0, 0, 0, 0, Route111_EventScript_1501C9
+ coord_event 17, 38, 3, 0, 0, 0, 0, Route111_EventScript_1501C9
+ coord_event 16, 39, 3, 0, 0, 0, 0, Route111_EventScript_1501C9
+ coord_event 15, 40, 3, 0, 0, 0, 0, Route111_EventScript_1501C9
+ coord_event 14, 41, 3, 0, 0, 0, 0, Route111_EventScript_1501C9
+ coord_event 13, 42, 3, 0, 0, 0, 0, Route111_EventScript_1501C9
+ coord_event 12, 43, 3, 0, 0, 0, 0, Route111_EventScript_1501C9
+ coord_event 11, 44, 3, 0, 0, 0, 0, Route111_EventScript_1501C9
+
+Route111_MapBGEvents:: @ 8382738
+ bg_event 16, 114, 0, 0, 0, Route111_EventScript_150368
+ bg_event 24, 126, 0, 0, 0, Route111_EventScript_15035F
+ bg_event 7, 66, 0, 0, 0, Route111_EventScript_150371
+ bg_event 13, 6, 0, 0, 0, Route111_EventScript_15037A
+ bg_event 24, 36, 0, 8, 0, ITEM_FAB_MAIL, 0, 0
+ bg_event 34, 50, 0, 8, 0, ITEM_LUM_BERRY, 0, 0
+ bg_event 33, 34, 0, 8, 0, ITEM_ORANGE_MAIL, 0, 0
+ bg_event 25, 19, 0, 0, 0, Route111_EventScript_150383
+ bg_event 35, 1, 0, 8, 0, ITEM_POTION, 0, 0
+ bg_event 35, 31, 0, 8, 0, ITEM_POMEG_BERRY, 0, 0
+ bg_event 26, 70, 0, 7, 0, ITEM_STARDUST, 2, 0
+ bg_event 27, 27, 3, 8, 0, ITEM_REVIVAL_HERB, 0, 0
+ bg_event 7, 84, 3, 0, 0, Route111_EventScript_15038C
+ bg_event 14, 19, 0, 8, 0, ITEM_PAMTRE_BERRY, 0, 0
+ bg_event 13, 19, 0, 8, 0, ITEM_RABUTA_BERRY, 0, 0
+ bg_event 19, 55, 0, 7, 0, ITEM_PROTEIN, 56, 0
+ bg_event 35, 66, 0, 7, 0, ITEM_RARE_CANDY, 57, 0
+
+Route111_MapEvents:: @ 8382804
+ map_events Route111_MapObjects, Route111_MapWarps, Route111_MapCoordEvents, Route111_MapBGEvents
+
diff --git a/data/maps/events/Route111_OldLadysRestStop.s b/data/maps/events/Route111_OldLadysRestStop.s
new file mode 100644
index 000000000..325edeee6
--- /dev/null
+++ b/data/maps/events/Route111_OldLadysRestStop.s
@@ -0,0 +1,10 @@
+Route111_OldLadysRestStop_MapObjects:: @ 838B798
+ object_event 1, MAP_OBJ_GFX_OLD_WOMAN_1, 0, 6, 0, 3, 0, 3, 9, 0, 0, 0, 0, 0, 0, Route111_OldLadysRestStop_EventScript_15BFDB, 0, 0, 0
+
+Route111_OldLadysRestStop_MapWarps:: @ 838B7B0
+ warp_def 3, 7, 0, 2, Route111
+ warp_def 4, 7, 0, 2, Route111
+
+Route111_OldLadysRestStop_MapEvents:: @ 838B7C0
+ map_events Route111_OldLadysRestStop_MapObjects, Route111_OldLadysRestStop_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/Route111_WinstrateFamilysHouse.s b/data/maps/events/Route111_WinstrateFamilysHouse.s
new file mode 100644
index 000000000..7f7b3c8a7
--- /dev/null
+++ b/data/maps/events/Route111_WinstrateFamilysHouse.s
@@ -0,0 +1,13 @@
+Route111_WinstrateFamilysHouse_MapObjects:: @ 838B714
+ object_event 1, MAP_OBJ_GFX_LASS, 0, 7, 0, 5, 0, 3, 9, 0, 0, 0, 0, 0, 0, Route111_WinstrateFamilysHouse_EventScript_15BF80, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_1, 0, 4, 0, 5, 0, 3, 10, 0, 0, 0, 0, 0, 0, Route111_WinstrateFamilysHouse_EventScript_15BF25, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_WOMAN_2, 0, 7, 0, 4, 0, 3, 9, 1, 0, 0, 0, 0, 0, Route111_WinstrateFamilysHouse_EventScript_15BF3A, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_OLD_WOMAN_1, 0, 4, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, Route111_WinstrateFamilysHouse_EventScript_15BF95, 0, 0, 0
+
+Route111_WinstrateFamilysHouse_MapWarps:: @ 838B774
+ warp_def 3, 7, 0, 0, Route111
+ warp_def 4, 7, 0, 0, Route111
+
+Route111_WinstrateFamilysHouse_MapEvents:: @ 838B784
+ map_events Route111_WinstrateFamilysHouse_MapObjects, Route111_WinstrateFamilysHouse_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/Route112.s b/data/maps/events/Route112.s
new file mode 100644
index 000000000..7344e0be2
--- /dev/null
+++ b/data/maps/events/Route112.s
@@ -0,0 +1,30 @@
+Route112_MapObjects:: @ 8382818
+ object_event 1, 241, 0, 26, 0, 30, 0, 3, 8, 17, 0, 0, 0, 0, 0, Route112_EventScript_150513, 819, 0, 0
+ object_event 2, MAP_OBJ_GFX_HIKER, 0, 24, 0, 34, 0, 3, 14, 0, 0, 1, 0, 2, 0, Route112_EventScript_150549, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_CAMPER, 0, 29, 0, 49, 0, 3, 8, 0, 0, 1, 0, 3, 0, Route112_EventScript_15059E, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_PICNICKER, 0, 22, 0, 46, 0, 3, 23, 0, 0, 1, 0, 3, 0, Route112_EventScript_1505B5, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_HIKER, 0, 17, 0, 40, 0, 3, 16, 0, 0, 1, 0, 4, 0, Route112_EventScript_150560, 0, 0, 0
+ object_event 6, 241, 0, 27, 0, 30, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route112_EventScript_15051C, 819, 0, 0
+ object_event 7, MAP_OBJ_GFX_BERRY_TREE, 0, 27, 0, 6, 0, 0, 12, 0, 0, 0, 0, 24, 0, Route112_EventScript_1A14DD, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_BERRY_TREE, 0, 28, 0, 6, 0, 0, 12, 0, 0, 0, 0, 23, 0, Route112_EventScript_1A14DD, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_BERRY_TREE, 0, 29, 0, 6, 0, 0, 12, 0, 0, 0, 0, 22, 0, Route112_EventScript_1A14DD, 0, 0, 0
+ object_event 10, MAP_OBJ_GFX_BERRY_TREE, 0, 30, 0, 6, 0, 3, 12, 0, 0, 0, 0, 21, 0, Route112_EventScript_1A14DD, 0, 0, 0
+ object_event 11, MAP_OBJ_GFX_HIKER, 0, 8, 0, 50, 0, 3, 26, 48, 0, 0, 0, 0, 0, Route112_EventScript_150540, 0, 0, 0
+ object_event 12, MAP_OBJ_GFX_ITEM_BALL, 0, 14, 0, 43, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route112_EventScript_1B14EF, 1011, 0, 0
+
+Route112_MapWarps:: @ 8382938
+ warp_def 28, 27, 0, 0, Route112_CableCarStation
+ warp_def 29, 27, 0, 1, Route112_CableCarStation
+ warp_def 6, 46, 3, 0, JaggedPass
+ warp_def 7, 46, 3, 1, JaggedPass
+ warp_def 11, 36, 0, 0, FieryPath
+ warp_def 22, 10, 0, 1, FieryPath
+
+Route112_MapBGEvents:: @ 8382968
+ bg_event 19, 44, 3, 0, 0, Route112_EventScript_15052E
+ bg_event 22, 37, 0, 0, 0, Route112_EventScript_150525
+ bg_event 4, 49, 0, 0, 0, Route112_EventScript_150537
+
+Route112_MapEvents:: @ 838298C
+ map_events Route112_MapObjects, Route112_MapWarps, 0x0, Route112_MapBGEvents
+
diff --git a/data/maps/events/Route112_CableCarStation.s b/data/maps/events/Route112_CableCarStation.s
new file mode 100644
index 000000000..3570762b3
--- /dev/null
+++ b/data/maps/events/Route112_CableCarStation.s
@@ -0,0 +1,11 @@
+Route112_CableCarStation_MapObjects:: @ 838B7D4
+ object_event 1, MAP_OBJ_GFX_BEAUTY, 0, 6, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route112_CableCarStation_EventScript_15C08C, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_CABLE_CAR, 0, 6, 0, 3, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+
+Route112_CableCarStation_MapWarps:: @ 838B804
+ warp_def 6, 11, 0, 0, Route112
+ warp_def 7, 11, 0, 1, Route112
+
+Route112_CableCarStation_MapEvents:: @ 838B814
+ map_events Route112_CableCarStation_MapObjects, Route112_CableCarStation_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/Route113.s b/data/maps/events/Route113.s
new file mode 100644
index 000000000..2cb0e6e41
--- /dev/null
+++ b/data/maps/events/Route113.s
@@ -0,0 +1,49 @@
+Route113_MapObjects:: @ 83829A0
+ object_event 1, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 66, 0, 12, 0, 3, 5, 1, 0, 0, 0, 0, 0, Route113_EventScript_15060E, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_GENTLEMAN, 0, 36, 0, 10, 0, 3, 3, 16, 0, 0, 0, 0, 0, Route113_EventScript_150605, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_YOUNGSTER, 0, 62, 0, 8, 0, 3, 8, 0, 0, 1, 0, 3, 0, Route113_EventScript_15063B, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_YOUNGSTER, 0, 21, 0, 11, 0, 3, 17, 0, 0, 1, 0, 3, 0, Route113_EventScript_150652, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_WOMAN_7, 0, 51, 0, 11, 0, 3, 23, 0, 0, 1, 0, 2, 0, Route113_EventScript_150669, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_ITEM_BALL, 0, 53, 0, 7, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route113_EventScript_1B14FC, 1012, 0, 0
+ object_event 7, MAP_OBJ_GFX_ITEM_BALL, 0, 78, 0, 5, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route113_EventScript_1B1509, 1013, 0, 0
+ object_event 8, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 66, 0, 3, 0, 3, 63, 0, 0, 3, 0, 1, 0, Route113_EventScript_1506A7, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 29, 0, 6, 0, 3, 63, 0, 0, 3, 0, 1, 0, Route113_EventScript_1506E5, 0, 0, 0
+ object_event 10, MAP_OBJ_GFX_LITTLE_GIRL_1, 0, 45, 0, 6, 0, 3, 8, 17, 0, 1, 0, 0, 0, Route113_EventScript_1506FC, 0, 0, 0
+ object_event 11, MAP_OBJ_GFX_LITTLE_GIRL_1, 0, 46, 0, 6, 0, 3, 8, 17, 0, 1, 0, 0, 0, Route113_EventScript_150717, 0, 0, 0
+
+Route113_MapWarps:: @ 8382AA8
+ warp_def 33, 5, 0, 0, Route113_GlassWorkshop
+
+Route113_MapCoordEvents:: @ 8382AB0
+ coord_event 19, 11, 3, 0, 8, 0, 0, 0x0
+ coord_event 19, 10, 3, 0, 8, 0, 0, 0x0
+ coord_event 19, 12, 3, 0, 8, 0, 0, 0x0
+ coord_event 19, 13, 3, 0, 8, 0, 0, 0x0
+ coord_event 87, 9, 3, 0, 8, 0, 0, 0x0
+ coord_event 86, 10, 3, 0, 8, 0, 0, 0x0
+ coord_event 86, 11, 3, 0, 8, 0, 0, 0x0
+ coord_event 14, 10, 3, 0, 2, 0, 0, 0x0
+ coord_event 14, 11, 3, 0, 2, 0, 0, 0x0
+ coord_event 14, 12, 3, 0, 2, 0, 0, 0x0
+ coord_event 14, 13, 3, 0, 2, 0, 0, 0x0
+ coord_event 94, 8, 3, 0, 2, 0, 0, 0x0
+ coord_event 94, 9, 3, 0, 2, 0, 0, 0x0
+ coord_event 94, 10, 3, 0, 2, 0, 0, 0x0
+ coord_event 94, 11, 0, 0, 2, 0, 0, 0x0
+ coord_event 19, 14, 3, 0, 8, 0, 0, 0x0
+ coord_event 88, 8, 3, 0, 8, 0, 0, 0x0
+ coord_event 88, 6, 3, 0, 8, 0, 0, 0x0
+ coord_event 88, 7, 3, 0, 8, 0, 0, 0x0
+
+Route113_MapBGEvents:: @ 8382BE0
+ bg_event 85, 6, 0, 0, 0, Route113_EventScript_150617
+ bg_event 11, 9, 0, 0, 0, Route113_EventScript_150620
+ bg_event 58, 4, 3, 0, 0, Route113_EventScript_150632
+ bg_event 31, 5, 0, 0, 0, Route113_EventScript_150629
+ bg_event 49, 8, 0, 8, 0, ITEM_GREAT_BALL, 0, 0
+ bg_event 72, 4, 3, 7, 0, ITEM_ETHER, 3, 0
+ bg_event 22, 5, 3, 7, 0, ITEM_TM32, 30, 0
+
+Route113_MapEvents:: @ 8382C34
+ map_events Route113_MapObjects, Route113_MapWarps, Route113_MapCoordEvents, Route113_MapBGEvents
+
diff --git a/data/maps/events/Route113_GlassWorkshop.s b/data/maps/events/Route113_GlassWorkshop.s
new file mode 100644
index 000000000..deee26c6e
--- /dev/null
+++ b/data/maps/events/Route113_GlassWorkshop.s
@@ -0,0 +1,11 @@
+Route113_GlassWorkshop_MapObjects:: @ 8392D18
+ object_event 1, MAP_OBJ_GFX_MAN_1, 0, 2, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route113_GlassWorkshop_EventScript_163565, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 5, 0, 4, 0, 3, 2, 17, 0, 0, 0, 0, 0, Route113_GlassWorkshop_EventScript_1639D6, 0, 0, 0
+
+Route113_GlassWorkshop_MapWarps:: @ 8392D48
+ warp_def 3, 8, 0, 0, Route113
+ warp_def 4, 8, 0, 0, Route113
+
+Route113_GlassWorkshop_MapEvents:: @ 8392D58
+ map_events Route113_GlassWorkshop_MapObjects, Route113_GlassWorkshop_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/Route114.s b/data/maps/events/Route114.s
new file mode 100644
index 000000000..87e2da82c
--- /dev/null
+++ b/data/maps/events/Route114.s
@@ -0,0 +1,47 @@
+Route114_MapObjects:: @ 8382C48
+ object_event 1, MAP_OBJ_GFX_BERRY_TREE, 0, 31, 0, 43, 0, 3, 12, 0, 0, 0, 0, 77, 0, Route114_EventScript_1A14DD, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_BERRY_TREE, 0, 31, 0, 44, 0, 3, 12, 0, 0, 0, 0, 78, 0, Route114_EventScript_1A14DD, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_HIKER, 0, 15, 0, 65, 0, 7, 10, 0, 0, 1, 0, 6, 0, Route114_EventScript_1507F1, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_HIKER, 0, 30, 0, 72, 0, 5, 15, 0, 0, 1, 0, 4, 0, Route114_EventScript_150808, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_CAMPER, 0, 22, 0, 50, 0, 3, 10, 0, 0, 1, 0, 3, 0, Route114_EventScript_15081F, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_PICNICKER, 0, 19, 0, 35, 0, 3, 1, 0, 0, 1, 0, 3, 0, Route114_EventScript_150836, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_MANIAC, 0, 20, 0, 56, 0, 3, 7, 0, 0, 1, 0, 3, 0, Route114_EventScript_15084D, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_BERRY_TREE, 0, 31, 0, 45, 0, 3, 12, 0, 0, 0, 0, 68, 0, Route114_EventScript_1A14DD, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_ITEM_BALL, 0, 7, 0, 6, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route114_EventScript_1B1516, 1014, 0, 0
+ object_event 10, MAP_OBJ_GFX_ITEM_BALL, 0, 11, 0, 37, 0, 4, 1, 0, 0, 0, 0, 0, 0, Route114_EventScript_1B1523, 1015, 0, 0
+ object_event 11, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 12, 0, 43, 0, 4, 1, 0, 0, 0, 0, 0, 0, Route114_EventScript_1B0EB7, 17, 0, 0
+ object_event 12, MAP_OBJ_GFX_GENTLEMAN, 0, 19, 0, 11, 0, 3, 10, 0, 0, 0, 0, 0, 0, Route114_EventScript_150782, 0, 0, 0
+ object_event 13, MAP_OBJ_GFX_POOCHYENA, 0, 19, 0, 12, 0, 3, 10, 0, 0, 0, 0, 0, 0, Route114_EventScript_1507C3, 0, 0, 0
+ object_event 14, MAP_OBJ_GFX_MAN_5, 0, 27, 0, 42, 0, 3, 3, 16, 0, 0, 0, 0, 0, Route114_EventScript_150733, 0, 0, 0
+ object_event 15, MAP_OBJ_GFX_FISHERMAN, 0, 23, 0, 20, 0, 3, 8, 0, 0, 1, 0, 0, 0, Route114_EventScript_1508E0, 0, 0, 0
+ object_event 16, MAP_OBJ_GFX_FISHERMAN, 0, 19, 0, 26, 0, 3, 9, 0, 0, 1, 0, 0, 0, Route114_EventScript_1508C9, 0, 0, 0
+ object_event 17, MAP_OBJ_GFX_MAN_6, 0, 30, 0, 58, 0, 5, 23, 0, 0, 1, 0, 3, 0, Route114_EventScript_15088B, 0, 0, 0
+ object_event 18, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 29, 0, 53, 0, 5, 1, 17, 0, 0, 0, 0, 0, Route114_EventScript_1B0EB7, 18, 0, 0
+ object_event 19, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 30, 0, 54, 0, 5, 1, 17, 0, 0, 0, 0, 0, Route114_EventScript_1B0EB7, 19, 0, 0
+ object_event 20, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 22, 0, 69, 0, 7, 1, 17, 0, 0, 0, 0, 0, Route114_EventScript_1B0EB7, 20, 0, 0
+ object_event 21, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 11, 0, 64, 0, 5, 1, 17, 0, 0, 0, 0, 0, Route114_EventScript_1B0EB7, 21, 0, 0
+ object_event 22, MAP_OBJ_GFX_LASS, 0, 24, 0, 44, 0, 3, 8, 17, 0, 1, 0, 0, 0, Route114_EventScript_150912, 0, 0, 0
+ object_event 23, MAP_OBJ_GFX_LASS, 0, 23, 0, 44, 0, 3, 8, 17, 0, 1, 0, 0, 0, Route114_EventScript_1508F7, 0, 0, 0
+
+Route114_MapWarps:: @ 8382E70
+ warp_def 8, 63, 0, 0, MeteorFalls_1F_1R
+ warp_def 29, 5, 0, 0, Route114_FossilManiacsHouse
+ warp_def 27, 36, 0, 0, Route114_LanettesHouse
+
+Route114_MapBGEvents:: @ 8382E88
+ bg_event 7, 64, 0, 0, 0, Route114_EventScript_1507D6
+ bg_event 31, 7, 0, 0, 0, Route114_EventScript_1507DF
+ bg_event 9, 47, 0, 8, 0, ITEM_RED_FLUTE, 0, 0
+ bg_event 30, 51, 0, 8, 0, ITEM_GREEN_SHARD, 0, 0
+ bg_event 11, 62, 0, 8, 0, 61, 0, 0
+ bg_event 19, 70, 0, 8, 0, ITEM_PP_MAX, 0, 0
+ bg_event 11, 27, 0, 8, 0, ITEM_EXP_SHARE, 0, 0
+ bg_event 12, 27, 0, 8, 0, ITEM_DEEP_SEA_TOOTH, 0, 0
+ bg_event 25, 38, 3, 0, 0, Route114_EventScript_1507E8
+ bg_event 20, 57, 3, 7, 0, ITEM_CARBOS, 4, 0
+ bg_event 32, 57, 0, 8, 0, ITEM_GUARD_SPEC, 0, 0
+ bg_event 7, 30, 3, 7, 0, ITEM_REVIVE, 42, 0
+
+Route114_MapEvents:: @ 8382F18
+ map_events Route114_MapObjects, Route114_MapWarps, 0x0, Route114_MapBGEvents
+
diff --git a/data/maps/events/Route114_FossilManiacsHouse.s b/data/maps/events/Route114_FossilManiacsHouse.s
new file mode 100644
index 000000000..74ec29552
--- /dev/null
+++ b/data/maps/events/Route114_FossilManiacsHouse.s
@@ -0,0 +1,17 @@
+Route114_FossilManiacsHouse_MapObjects:: @ 838B87C
+ object_event 1, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 3, 0, 2, 0, 3, 8, 17, 0, 0, 0, 0, 0, Route114_FossilManiacsHouse_EventScript_15C1C3, 0, 0, 0
+
+Route114_FossilManiacsHouse_MapWarps:: @ 838B894
+ warp_def 4, 7, 0, 1, Route114
+ warp_def 5, 7, 0, 1, Route114
+ warp_def 4, 1, 0, 0, Route114_FossilManiacsTunnel
+
+Route114_FossilManiacsHouse_MapBGEvents:: @ 838B8AC
+ bg_event 5, 3, 0, 1, 0, Route114_FossilManiacsHouse_EventScript_15C1FC
+ bg_event 6, 3, 0, 1, 0, Route114_FossilManiacsHouse_EventScript_15C1FC
+ bg_event 7, 2, 0, 1, 0, Route114_FossilManiacsHouse_EventScript_15C205
+ bg_event 8, 2, 0, 1, 0, Route114_FossilManiacsHouse_EventScript_15C205
+
+Route114_FossilManiacsHouse_MapEvents:: @ 838B8DC
+ map_events Route114_FossilManiacsHouse_MapObjects, Route114_FossilManiacsHouse_MapWarps, 0x0, Route114_FossilManiacsHouse_MapBGEvents
+
diff --git a/data/maps/events/Route114_FossilManiacsTunnel.s b/data/maps/events/Route114_FossilManiacsTunnel.s
new file mode 100644
index 000000000..c30299643
--- /dev/null
+++ b/data/maps/events/Route114_FossilManiacsTunnel.s
@@ -0,0 +1,10 @@
+Route114_FossilManiacsTunnel_MapObjects:: @ 838B8F0
+ object_event 1, MAP_OBJ_GFX_MANIAC, 0, 5, 0, 3, 0, 3, 7, 17, 0, 0, 0, 0, 0, Route114_FossilManiacsTunnel_EventScript_15C20F, 0, 0, 0
+
+Route114_FossilManiacsTunnel_MapWarps:: @ 838B908
+ warp_def 6, 25, 3, 2, Route114_FossilManiacsHouse
+ warp_def 7, 25, 3, 2, Route114_FossilManiacsHouse
+
+Route114_FossilManiacsTunnel_MapEvents:: @ 838B918
+ map_events Route114_FossilManiacsTunnel_MapObjects, Route114_FossilManiacsTunnel_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/Route114_LanettesHouse.s b/data/maps/events/Route114_LanettesHouse.s
new file mode 100644
index 000000000..5b011f2ca
--- /dev/null
+++ b/data/maps/events/Route114_LanettesHouse.s
@@ -0,0 +1,15 @@
+Route114_LanettesHouse_MapObjects:: @ 838B92C
+ object_event 1, MAP_OBJ_GFX_WOMAN_3, 0, 5, 0, 4, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route114_LanettesHouse_EventScript_15C262, 870, 0, 0
+
+Route114_LanettesHouse_MapWarps:: @ 838B944
+ warp_def 5, 7, 0, 2, Route114
+ warp_def 6, 7, 0, 2, Route114
+
+Route114_LanettesHouse_MapBGEvents:: @ 838B954
+ bg_event 5, 1, 0, 0, 0, Route114_LanettesHouse_EventScript_15C299
+ bg_event 8, 1, 0, 0, 0, Route114_LanettesHouse_EventScript_15C2D5
+ bg_event 7, 1, 0, 0, 0, Route114_LanettesHouse_EventScript_15C2D5
+
+Route114_LanettesHouse_MapEvents:: @ 838B978
+ map_events Route114_LanettesHouse_MapObjects, Route114_LanettesHouse_MapWarps, 0x0, Route114_LanettesHouse_MapBGEvents
+
diff --git a/data/maps/events/Route115.s b/data/maps/events/Route115.s
new file mode 100644
index 000000000..0b028b1e2
--- /dev/null
+++ b/data/maps/events/Route115.s
@@ -0,0 +1,40 @@
+Route115_MapObjects:: @ 8382F2C
+ object_event 1, MAP_OBJ_GFX_WOMAN_3, 0, 18, 0, 68, 0, 3, 2, 17, 0, 0, 0, 0, 0, Route115_EventScript_15092E, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_OLD_MAN_1, 0, 5, 0, 15, 0, 3, 10, 0, 0, 1, 0, 6, 0, Route115_EventScript_150949, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_BLACK_BELT, 0, 27, 0, 53, 0, 3, 15, 17, 0, 1, 0, 4, 0, Route115_EventScript_15099E, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_BERRY_TREE, 0, 11, 0, 5, 0, 3, 12, 0, 0, 0, 0, 69, 0, Route115_EventScript_1A14DD, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_BERRY_TREE, 0, 12, 0, 5, 0, 3, 12, 0, 0, 0, 0, 70, 0, Route115_EventScript_1A14DD, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_BERRY_TREE, 0, 13, 0, 5, 0, 3, 12, 0, 0, 0, 0, 71, 0, Route115_EventScript_1A14DD, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_GIRL_3, 0, 15, 0, 50, 0, 3, 64, 0, 0, 1, 0, 3, 0, Route115_EventScript_1509DC, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_BLACK_BELT, 0, 17, 0, 17, 0, 3, 50, 51, 0, 1, 0, 2, 0, Route115_EventScript_150987, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_MANIAC, 0, 25, 0, 61, 0, 3, 14, 0, 0, 1, 0, 3, 0, Route115_EventScript_150A1A, 0, 0, 0
+ object_event 10, MAP_OBJ_GFX_ITEM_BALL, 0, 20, 0, 60, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route115_EventScript_1B1530, 1016, 0, 0
+ object_event 11, MAP_OBJ_GFX_ITEM_BALL, 0, 19, 0, 5, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route115_EventScript_1B153D, 1017, 0, 0
+ object_event 12, MAP_OBJ_GFX_ITEM_BALL, 0, 23, 0, 29, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route115_EventScript_1B154A, 1018, 0, 0
+ object_event 13, MAP_OBJ_GFX_BERRY_TREE, 0, 31, 0, 64, 0, 3, 12, 0, 0, 0, 0, 55, 0, Route115_EventScript_1A14DD, 0, 0, 0
+ object_event 14, MAP_OBJ_GFX_BERRY_TREE, 0, 31, 0, 65, 0, 3, 12, 0, 0, 0, 0, 56, 0, Route115_EventScript_1A14DD, 0, 0, 0
+ object_event 15, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 29, 0, 50, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route115_EventScript_1B0EB7, 17, 0, 0
+ object_event 16, MAP_OBJ_GFX_ITEM_BALL, 0, 31, 0, 56, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route115_EventScript_1B1557, 1118, 0, 0
+
+Route115_MapWarps:: @ 83830AC
+ warp_def 27, 37, 0, 1, MeteorFalls_1F_1R
+
+Route115_MapBGEvents:: @ 83830B4
+ bg_event 32, 6, 0, 8, 0, 72, 0, 0
+ bg_event 21, 18, 0, 8, 0, 62, 0, 0
+ bg_event 16, 64, 0, 0, 0, Route115_EventScript_150937
+ bg_event 25, 38, 3, 0, 0, Route115_EventScript_150940
+ bg_event 8, 30, 0, 8, 0, ITEM_CHERI_BERRY, 0, 0
+ bg_event 32, 39, 0, 8, 0, ITEM_BLACK_FLUTE, 0, 0
+ bg_event 26, 15, 0, 8, 0, 52, 0, 0
+ bg_event 23, 8, 0, 8, 0, ITEM_WHITE_FLUTE, 0, 0
+ bg_event 32, 46, 0, 8, 0, 53, 0, 0
+ bg_event 7, 20, 0, 8, 0, ITEM_STARF_BERRY, 0, 0
+ bg_event 8, 20, 0, 8, 0, ITEM_QUICK_CLAW, 0, 0
+ bg_event 25, 24, 0, 8, 0, ITEM_HP_UP, 0, 0
+ bg_event 20, 53, 0, 8, 0, ITEM_HYPER_POTION, 0, 0
+ bg_event 15, 49, 3, 7, 0, ITEM_HEART_SCALE, 97, 0
+
+Route115_MapEvents:: @ 838315C
+ map_events Route115_MapObjects, Route115_MapWarps, 0x0, Route115_MapBGEvents
+
diff --git a/data/maps/events/Route116.s b/data/maps/events/Route116.s
new file mode 100644
index 000000000..4fcbd0eb0
--- /dev/null
+++ b/data/maps/events/Route116.s
@@ -0,0 +1,48 @@
+Route116_MapObjects:: @ 8383170
+ object_event 1, MAP_OBJ_GFX_BERRY_TREE, 0, 18, 0, 2, 0, 3, 12, 0, 0, 0, 0, 25, 0, Route116_EventScript_1A14DD, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_BERRY_TREE, 0, 19, 0, 2, 0, 3, 12, 0, 0, 0, 0, 26, 0, Route116_EventScript_1A14DD, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_YOUNGSTER, 0, 12, 0, 7, 0, 3, 16, 0, 0, 1, 0, 3, 0, Route116_EventScript_150C62, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 21, 0, 6, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route116_EventScript_1B0DCC, 17, 0, 0
+ object_event 5, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 33, 0, 8, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route116_EventScript_1B0DCC, 18, 0, 0
+ object_event 6, MAP_OBJ_GFX_BUG_CATCHER, 0, 13, 0, 17, 0, 3, 24, 0, 0, 1, 0, 2, 0, Route116_EventScript_150C79, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_ITEM_BALL, 0, 19, 0, 6, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route116_EventScript_1B1571, 1019, 0, 0
+ object_event 8, MAP_OBJ_GFX_ITEM_BALL, 0, 10, 0, 17, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route116_EventScript_1B157E, 1020, 0, 0
+ object_event 9, MAP_OBJ_GFX_BERRY_TREE, 0, 20, 0, 2, 0, 3, 12, 0, 0, 0, 0, 66, 0, Route116_EventScript_1A14DD, 0, 0, 0
+ object_event 10, MAP_OBJ_GFX_BERRY_TREE, 0, 21, 0, 2, 0, 3, 12, 0, 0, 0, 0, 67, 0, Route116_EventScript_1A14DD, 0, 0, 0
+ object_event 11, MAP_OBJ_GFX_OLD_MAN_1, 0, 46, 0, 9, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route116_EventScript_150B5D, 891, 0, 0
+ object_event 12, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 30, 0, 6, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route116_EventScript_1B0DCC, 19, 0, 0
+ object_event 13, MAP_OBJ_GFX_HIKER, 0, 36, 0, 15, 0, 3, 13, 0, 0, 1, 0, 2, 0, Route116_EventScript_150CCE, 0, 0, 0
+ object_event 14, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 24, 0, 9, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route116_EventScript_1B0DCC, 20, 0, 0
+ object_event 15, MAP_OBJ_GFX_ITEM_BALL, 0, 80, 0, 8, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route116_EventScript_1B158B, 1021, 0, 0
+ object_event 16, MAP_OBJ_GFX_LASS, 0, 22, 0, 16, 0, 3, 13, 0, 0, 1, 0, 3, 0, Route116_EventScript_150CE5, 0, 0, 0
+ object_event 17, MAP_OBJ_GFX_GIRL_3, 0, 25, 0, 4, 0, 3, 8, 0, 0, 1, 0, 2, 0, Route116_EventScript_150CFC, 0, 0, 0
+ object_event 18, MAP_OBJ_GFX_SCHOOL_KID_M, 0, 31, 0, 9, 0, 3, 9, 0, 0, 1, 0, 2, 0, Route116_EventScript_150C90, 0, 0, 0
+ object_event 19, MAP_OBJ_GFX_MAN_2, 0, 46, 0, 11, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route116_EventScript_150A7B, 947, 0, 0
+ object_event 20, MAP_OBJ_GFX_ITEM_BALL, 0, 56, 0, 12, 0, 4, 1, 17, 0, 0, 0, 0, 0, Route116_EventScript_1B1564, 1001, 0, 0
+ object_event 21, MAP_OBJ_GFX_BLACK_BELT, 0, 38, 0, 9, 0, 3, 10, 17, 0, 0, 0, 0, 0, Route116_EventScript_150A49, 894, 0, 0
+ object_event 22, MAP_OBJ_GFX_MANIAC, 0, 74, 0, 13, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route116_EventScript_150B8F, 813, 0, 0
+
+Route116_MapWarps:: @ 8383380
+ warp_def 47, 8, 0, 0, RusturfTunnel
+ warp_def 38, 8, 0, 0, Route116_TunnelersRestHouse
+ warp_def 65, 10, 0, 2, RusturfTunnel
+
+Route116_MapCoordEvents:: @ 8383398
+ coord_event 47, 9, 3, 0, 0x406f, 1, 0, Route116_EventScript_150B6E
+
+Route116_MapBGEvents:: @ 83833A8
+ bg_event 5, 10, 0, 0, 0, Route116_EventScript_150B30
+ bg_event 48, 9, 0, 0, 0, Route116_EventScript_150B39
+ bg_event 40, 9, 0, 0, 0, Route116_EventScript_150B42
+ bg_event 71, 4, 0, 8, 0, ITEM_FLUFFY_TAIL, 0, 0
+ bg_event 79, 11, 0, 8, 0, 91, 0, 0
+ bg_event 16, 12, 0, 0, 0, Route116_EventScript_150B4B
+ bg_event 29, 10, 0, 0, 0, Route116_EventScript_150B54
+ bg_event 56, 6, 0, 8, 0, 102, 0, 0
+ bg_event 55, 15, 0, 8, 0, 112, 0, 0
+ bg_event 22, 9, 3, 7, 0, ITEM_SUPER_POTION, 45, 0
+ bg_event 70, 13, 3, 7, 0, ITEM_BLACK_GLASSES, 96, 0
+
+Route116_MapEvents:: @ 838342C
+ map_events Route116_MapObjects, Route116_MapWarps, Route116_MapCoordEvents, Route116_MapBGEvents
+
diff --git a/data/maps/events/Route116_TunnelersRestHouse.s b/data/maps/events/Route116_TunnelersRestHouse.s
new file mode 100644
index 000000000..d8f3f2e01
--- /dev/null
+++ b/data/maps/events/Route116_TunnelersRestHouse.s
@@ -0,0 +1,12 @@
+Route116_TunnelersRestHouse_MapObjects:: @ 838B98C
+ object_event 1, MAP_OBJ_GFX_MAN_3, 0, 6, 0, 5, 0, 3, 10, 0, 0, 0, 0, 0, 0, Route116_TunnelersRestHouse_EventScript_15C2E8, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_3, 0, 3, 0, 6, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route116_TunnelersRestHouse_EventScript_15C2FA, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MAN_3, 0, 7, 0, 2, 0, 3, 7, 1, 0, 0, 0, 0, 0, Route116_TunnelersRestHouse_EventScript_15C2F1, 0, 0, 0
+
+Route116_TunnelersRestHouse_MapWarps:: @ 838B9D4
+ warp_def 4, 8, 0, 1, Route116
+ warp_def 5, 8, 0, 1, Route116
+
+Route116_TunnelersRestHouse_MapEvents:: @ 838B9E4
+ map_events Route116_TunnelersRestHouse_MapObjects, Route116_TunnelersRestHouse_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/Route117.s b/data/maps/events/Route117.s
new file mode 100644
index 000000000..f3eda5d9e
--- /dev/null
+++ b/data/maps/events/Route117.s
@@ -0,0 +1,35 @@
+Route117_MapObjects:: @ 8383440
+ object_event 1, MAP_OBJ_GFX_WOMAN_1, 0, 13, 0, 13, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route117_EventScript_150D57, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_LITTLE_BOY_2, 0, 26, 0, 13, 0, 3, 33, 34, 0, 0, 0, 0, 0, Route117_EventScript_150D60, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_OLD_MAN_2, 0, 47, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route117_EventScript_1B222D, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_ZIGZAGOON, 0, 33, 0, 3, 0, 3, 1, 17, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_KECLEON_1, 0, 39, 0, 4, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_AZUMARILL, 0, 42, 0, 2, 0, 3, 1, 17, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_PIKACHU, 0, 49, 0, 2, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_RUNNING_TRIATHLETE_M, 0, 35, 0, 7, 0, 3, 28, 7, 0, 1, 0, 4, 0, Route117_EventScript_150E09, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_WOMAN_3, 0, 31, 0, 11, 0, 3, 23, 0, 0, 1, 0, 3, 0, Route117_EventScript_150DCB, 0, 0, 0
+ object_event 10, MAP_OBJ_GFX_MAN_5, 0, 10, 0, 9, 0, 3, 18, 0, 0, 1, 0, 3, 0, Route117_EventScript_150D8D, 0, 0, 0
+ object_event 11, MAP_OBJ_GFX_BERRY_TREE, 0, 41, 0, 13, 0, 3, 12, 0, 0, 0, 0, 29, 0, Route117_EventScript_1A14DD, 0, 0, 0
+ object_event 12, MAP_OBJ_GFX_BERRY_TREE, 0, 42, 0, 13, 0, 3, 12, 0, 0, 0, 0, 28, 0, Route117_EventScript_1A14DD, 0, 0, 0
+ object_event 13, MAP_OBJ_GFX_BERRY_TREE, 0, 43, 0, 13, 0, 3, 12, 0, 0, 0, 0, 27, 0, Route117_EventScript_1A14DD, 0, 0, 0
+ object_event 14, MAP_OBJ_GFX_ITEM_BALL, 0, 16, 0, 18, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route117_EventScript_1B1598, 1022, 0, 0
+ object_event 15, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 15, 0, 2, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route117_EventScript_1B0DCC, 17, 0, 0
+ object_event 16, MAP_OBJ_GFX_ITEM_BALL, 0, 9, 0, 1, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route117_EventScript_1B15A5, 1023, 0, 0
+ object_event 17, MAP_OBJ_GFX_RUNNING_TRIATHLETE_F, 0, 21, 0, 1, 0, 3, 40, 68, 0, 1, 0, 3, 0, Route117_EventScript_150E47, 0, 0, 0
+ object_event 18, MAP_OBJ_GFX_MANIAC, 0, 17, 0, 12, 0, 3, 7, 17, 0, 1, 0, 4, 0, Route117_EventScript_150E85, 0, 0, 0
+ object_event 19, MAP_OBJ_GFX_LASS, 0, 46, 0, 15, 0, 3, 8, 0, 0, 1, 0, 0, 0, Route117_EventScript_150EE2, 0, 0, 0
+ object_event 20, MAP_OBJ_GFX_LASS, 0, 45, 0, 15, 0, 3, 8, 0, 0, 1, 0, 0, 0, Route117_EventScript_150E9C, 0, 0, 0
+ object_event 21, MAP_OBJ_GFX_GIRL_2, 0, 48, 0, 10, 0, 3, 2, 17, 0, 0, 0, 0, 0, Route117_EventScript_150D69, 0, 0, 0
+
+Route117_MapWarps:: @ 8383638
+ warp_def 51, 5, 0, 0, Route117_PokemonDayCare
+
+Route117_MapBGEvents:: @ 8383640
+ bg_event 16, 6, 0, 0, 0, Route117_EventScript_150D72
+ bg_event 49, 12, 0, 0, 0, Route117_EventScript_150D7B
+ bg_event 49, 5, 0, 0, 0, Route117_EventScript_150D84
+ bg_event 3, 18, 3, 7, 0, ITEM_REPEL, 72, 0
+
+Route117_MapEvents:: @ 8383670
+ map_events Route117_MapObjects, Route117_MapWarps, 0x0, Route117_MapBGEvents
+
diff --git a/data/maps/events/Route117_PokemonDayCare.s b/data/maps/events/Route117_PokemonDayCare.s
new file mode 100644
index 000000000..db5e64384
--- /dev/null
+++ b/data/maps/events/Route117_PokemonDayCare.s
@@ -0,0 +1,10 @@
+Route117_PokemonDayCare_MapObjects:: @ 838B9F8
+ object_event 1, MAP_OBJ_GFX_OLD_WOMAN_2, 0, 2, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route117_PokemonDayCare_EventScript_1B2327, 0, 0, 0
+
+Route117_PokemonDayCare_MapWarps:: @ 838BA10
+ warp_def 2, 8, 0, 0, Route117
+ warp_def 3, 8, 0, 0, Route117
+
+Route117_PokemonDayCare_MapEvents:: @ 838BA20
+ map_events Route117_PokemonDayCare_MapObjects, Route117_PokemonDayCare_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/Route118.s b/data/maps/events/Route118.s
new file mode 100644
index 000000000..eaa71212e
--- /dev/null
+++ b/data/maps/events/Route118.s
@@ -0,0 +1,41 @@
+Route118_MapObjects:: @ 8383684
+ object_event 1, MAP_OBJ_GFX_BERRY_TREE, 0, 35, 0, 5, 0, 3, 12, 0, 0, 0, 0, 31, 0, Route118_EventScript_1A14DD, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_BERRY_TREE, 0, 36, 0, 5, 0, 3, 12, 0, 0, 0, 0, 32, 0, Route118_EventScript_1A14DD, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_BERRY_TREE, 0, 37, 0, 5, 0, 3, 12, 0, 0, 0, 0, 33, 0, Route118_EventScript_1A14DD, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_MAN_6, 0, 64, 0, 10, 0, 3, 8, 0, 0, 1, 0, 3, 0, Route118_EventScript_151139, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_REPORTER_F, 0, 33, 0, 8, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route118_EventScript_1AE462, 797, 0, 0
+ object_event 6, MAP_OBJ_GFX_CAMERAMAN, 0, 34, 0, 8, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route118_EventScript_1AE482, 797, 0, 0
+ object_event 7, MAP_OBJ_GFX_GIRL_2, 0, 12, 0, 8, 0, 3, 2, 17, 0, 0, 0, 0, 0, Route118_EventScript_150F93, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_REPORTER_F, 0, 33, 0, 8, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route118_EventScript_1AE522, 901, 0, 0
+ object_event 9, MAP_OBJ_GFX_CAMERAMAN, 0, 34, 0, 8, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route118_EventScript_1AE542, 901, 0, 0
+ object_event 10, MAP_OBJ_GFX_REPORTER_F, 0, 33, 0, 8, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route118_EventScript_1AE562, 904, 0, 0
+ object_event 11, MAP_OBJ_GFX_CAMERAMAN, 0, 34, 0, 8, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route118_EventScript_1AE582, 904, 0, 0
+ object_event 12, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 38, 0, 8, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route118_EventScript_1B0DCC, 17, 0, 0
+ object_event 13, MAP_OBJ_GFX_FISHERMAN, 0, 28, 0, 8, 0, 3, 9, 0, 0, 0, 0, 0, 0, Route118_EventScript_150F34, 0, 0, 0
+ object_event 14, MAP_OBJ_GFX_WOMAN_3, 0, 7, 0, 10, 0, 3, 24, 0, 0, 1, 0, 4, 0, Route118_EventScript_15108F, 0, 0, 0
+ object_event 15, MAP_OBJ_GFX_FISHERMAN, 0, 14, 0, 14, 0, 3, 8, 0, 0, 1, 0, 0, 0, Route118_EventScript_1510E4, 0, 0, 0
+ object_event 16, MAP_OBJ_GFX_MAN_6, 0, 56, 0, 7, 0, 3, 16, 0, 0, 1, 0, 3, 0, Route118_EventScript_151150, 0, 0, 0
+ object_event 17, MAP_OBJ_GFX_FISHERMAN, 0, 39, 0, 15, 0, 3, 1, 0, 0, 1, 0, 2, 0, Route118_EventScript_1510CD, 0, 0, 0
+ object_event 18, MAP_OBJ_GFX_MAN_6, 0, 17, 0, 11, 0, 3, 15, 17, 0, 1, 0, 3, 0, Route118_EventScript_1510FB, 0, 0, 0
+ object_event 19, MAP_OBJ_GFX_STEVEN, 0, 44, 0, 7, 0, 3, 8, 17, 0, 0, 0, 0, 0, 0x0, 966, 0, 0
+ object_event 20, MAP_OBJ_GFX_ITEM_BALL, 0, 69, 0, 7, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route118_EventScript_1B15B2, 1121, 0, 0
+
+Route118_MapCoordEvents:: @ 8383864
+ coord_event 43, 11, 3, 0, 0x4071, 0, 0, Route118_EventScript_150FAE
+ coord_event 44, 11, 3, 0, 0x4071, 0, 0, Route118_EventScript_150FCE
+ coord_event 45, 11, 3, 0, 0x4071, 0, 0, Route118_EventScript_150FE4
+
+Route118_MapBGEvents:: @ 8383894
+ bg_event 47, 14, 0, 8, 0, ITEM_MASTER_BALL, 0, 0
+ bg_event 13, 6, 0, 0, 0, Route118_EventScript_150F9C
+ bg_event 56, 8, 0, 0, 0, Route118_EventScript_150FA5
+ bg_event 67, 6, 0, 8, 0, ITEM_LUXURY_BALL, 0, 0
+ bg_event 29, 5, 0, 8, 0, ITEM_HARBOR_MAIL, 0, 0
+ bg_event 47, 5, 0, 8, 0, ITEM_SPELON_BERRY, 0, 0
+ bg_event 46, 5, 0, 8, 0, ITEM_PETAYA_BERRY, 0, 0
+ bg_event 31, 13, 3, 7, 0, ITEM_IRON, 67, 0
+ bg_event 12, 14, 3, 7, 0, ITEM_HEART_SCALE, 66, 0
+
+Route118_MapEvents:: @ 8383900
+ map_events Route118_MapObjects, 0x0, Route118_MapCoordEvents, Route118_MapBGEvents
+
diff --git a/data/maps/events/Route119.s b/data/maps/events/Route119.s
new file mode 100644
index 000000000..e9cbd7300
--- /dev/null
+++ b/data/maps/events/Route119.s
@@ -0,0 +1,95 @@
+Route119_MapObjects:: @ 8383914
+ object_event 1, MAP_OBJ_GFX_BERRY_TREE, 0, 24, 0, 5, 0, 3, 12, 0, 0, 0, 0, 34, 0, Route119_EventScript_1A14DD, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_BERRY_TREE, 0, 25, 0, 5, 0, 3, 12, 0, 0, 0, 0, 35, 0, Route119_EventScript_1A14DD, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_BERRY_TREE, 0, 26, 0, 5, 0, 3, 12, 0, 0, 0, 0, 36, 0, Route119_EventScript_1A14DD, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_BUG_CATCHER, 0, 12, 0, 123, 0, 3, 59, 0, 0, 1, 0, 1, 0, Route119_EventScript_151491, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_MANIAC, 0, 26, 0, 123, 0, 3, 60, 0, 0, 1, 0, 1, 0, Route119_EventScript_151463, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_MANIAC, 0, 5, 0, 125, 0, 3, 62, 0, 0, 1, 0, 1, 0, Route119_EventScript_15144C, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_CAMPER, 0, 7, 0, 74, 0, 3, 18, 0, 0, 1, 0, 3, 0, Route119_EventScript_1514BF, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_MANIAC, 0, 28, 0, 116, 0, 3, 60, 0, 0, 1, 0, 1, 0, Route119_EventScript_151435, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_PICNICKER, 0, 35, 0, 83, 0, 4, 8, 0, 0, 1, 0, 2, 0, Route119_EventScript_1514FD, 0, 0, 0
+ object_event 10, MAP_OBJ_GFX_BUG_CATCHER, 0, 34, 0, 122, 0, 3, 61, 0, 0, 1, 0, 1, 0, Route119_EventScript_15147A, 0, 0, 0
+ object_event 11, MAP_OBJ_GFX_BUG_CATCHER, 0, 17, 0, 128, 0, 3, 61, 0, 0, 1, 0, 1, 0, Route119_EventScript_1514A8, 0, 0, 0
+ object_event 12, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 28, 0, 16, 0, 3, 57, 0, 0, 1, 0, 2, 0, Route119_EventScript_151569, 0, 0, 0
+ object_event 13, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 19, 0, 49, 0, 3, 58, 0, 0, 1, 0, 3, 0, Route119_EventScript_151580, 0, 0, 0
+ object_event 14, MAP_OBJ_GFX_MAN_6, 0, 10, 0, 50, 0, 4, 10, 0, 0, 1, 0, 3, 0, Route119_EventScript_15153B, 0, 0, 0
+ object_event 15, MAP_OBJ_GFX_MAN_6, 0, 8, 0, 62, 0, 3, 8, 0, 0, 1, 0, 3, 0, Route119_EventScript_151552, 0, 0, 0
+ object_event 16, 240, 0, 25, 0, 32, 0, 3, 7, 0, 0, 0, 0, 0, 0, 0x0, 851, 0, 0
+ object_event 17, MAP_OBJ_GFX_ITEM_BALL, 0, 12, 0, 121, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route119_EventScript_1B15BF, 1024, 0, 0
+ object_event 18, MAP_OBJ_GFX_ITEM_BALL, 0, 4, 0, 96, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route119_EventScript_1B15CC, 1025, 0, 0
+ object_event 19, MAP_OBJ_GFX_ITEM_BALL, 0, 29, 0, 53, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route119_EventScript_1B15D9, 1026, 0, 0
+ object_event 20, MAP_OBJ_GFX_ITEM_BALL, 0, 25, 0, 76, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route119_EventScript_1B15E6, 1027, 0, 0
+ object_event 21, MAP_OBJ_GFX_ITEM_BALL, 0, 8, 0, 18, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route119_EventScript_1B15F3, 1028, 0, 0
+ object_event 22, MAP_OBJ_GFX_ITEM_BALL, 0, 33, 0, 117, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route119_EventScript_1B1600, 1029, 0, 0
+ object_event 23, 241, 0, 13, 0, 33, 0, 4, 10, 0, 0, 0, 0, 0, 0, Route119_EventScript_1515C5, 890, 0, 0
+ object_event 24, 241, 0, 13, 0, 34, 0, 4, 10, 0, 0, 0, 0, 0, 0, Route119_EventScript_1515DC, 890, 0, 0
+ object_event 25, 243, 0, 17, 0, 33, 0, 4, 7, 0, 0, 0, 0, 0, 0, 0x0, 923, 0, 0
+ object_event 26, MAP_OBJ_GFX_BOY_3, 0, 31, 0, 109, 0, 3, 8, 17, 0, 0, 0, 0, 0, Route119_EventScript_1515F3, 0, 0, 0
+ object_event 27, MAP_OBJ_GFX_BERRY_TREE, 0, 8, 0, 23, 0, 3, 12, 0, 0, 0, 0, 83, 0, Route119_EventScript_1A14DD, 0, 0, 0
+ object_event 28, MAP_OBJ_GFX_BERRY_TREE, 0, 9, 0, 23, 0, 3, 12, 0, 0, 0, 0, 84, 0, Route119_EventScript_1A14DD, 0, 0, 0
+ object_event 29, MAP_OBJ_GFX_BERRY_TREE, 0, 29, 0, 90, 0, 3, 12, 0, 0, 0, 0, 85, 0, Route119_EventScript_1A14DD, 0, 0, 0
+ object_event 30, MAP_OBJ_GFX_BERRY_TREE, 0, 30, 0, 90, 0, 3, 12, 0, 0, 0, 0, 86, 0, Route119_EventScript_1A14DD, 0, 0, 0
+ object_event 31, MAP_OBJ_GFX_CYCLING_TRIATHLETE_M, 0, 19, 0, 133, 0, 3, 5, 18, 0, 0, 0, 0, 0, Route119_EventScript_15141A, 0, 0, 0
+ object_event 32, MAP_OBJ_GFX_ITEM_BALL, 0, 3, 0, 56, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route119_EventScript_1B160D, 1106, 0, 0
+ object_event 33, MAP_OBJ_GFX_BOY_2, 0, 35, 0, 93, 0, 4, 2, 17, 0, 0, 0, 0, 0, Route119_EventScript_1515FC, 0, 0, 0
+ object_event 34, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 29, 0, 6, 0, 3, 57, 17, 0, 1, 0, 3, 0, Route119_EventScript_151597, 0, 0, 0
+ object_event 35, MAP_OBJ_GFX_KECLEON_1, 0, 31, 0, 6, 0, 3, 76, 17, 0, 0, 0, 0, 0, Route119_EventScript_1A057A, 989, 0, 0
+ object_event 36, MAP_OBJ_GFX_KECLEON_1, 0, 20, 0, 13, 0, 4, 76, 17, 0, 0, 0, 0, 0, Route119_EventScript_1A0587, 990, 0, 0
+ object_event 37, MAP_OBJ_GFX_FISHERMAN, 0, 13, 0, 104, 0, 3, 10, 17, 0, 1, 0, 0, 0, Route119_EventScript_1515AE, 0, 0, 0
+
+Route119_MapWarps:: @ 8383C8C
+ warp_def 6, 32, 0, 0, Route119_WeatherInstitute_1F
+ warp_def 33, 109, 0, 0, Route119_House
+
+Route119_MapCoordEvents:: @ 8383C9C
+ coord_event 25, 31, 0, 0, 0x4072, 0, 0, Route119_EventScript_1511C5
+ coord_event 26, 31, 0, 0, 0x4072, 0, 0, Route119_EventScript_1511D0
+ coord_event 28, 13, 0, 0, 20, 0, 0, 0x0
+ coord_event 29, 13, 3, 0, 20, 0, 0, 0x0
+ coord_event 30, 13, 3, 0, 20, 0, 0, 0x0
+ coord_event 31, 13, 3, 0, 20, 0, 0, 0x0
+ coord_event 32, 13, 3, 0, 20, 0, 0, 0x0
+ coord_event 33, 13, 3, 0, 20, 0, 0, 0x0
+ coord_event 15, 133, 3, 0, 20, 0, 0, 0x0
+ coord_event 16, 132, 3, 0, 20, 0, 0, 0x0
+ coord_event 17, 131, 3, 0, 20, 0, 0, 0x0
+ coord_event 18, 130, 3, 0, 20, 0, 0, 0x0
+ coord_event 19, 131, 3, 0, 20, 0, 0, 0x0
+ coord_event 20, 132, 3, 0, 20, 0, 0, 0x0
+ coord_event 21, 133, 3, 0, 20, 0, 0, 0x0
+ coord_event 36, 6, 3, 0, 2, 0, 0, 0x0
+ coord_event 36, 7, 3, 0, 2, 0, 0, 0x0
+ coord_event 35, 8, 3, 0, 2, 0, 0, 0x0
+ coord_event 35, 9, 3, 0, 2, 0, 0, 0x0
+ coord_event 34, 10, 3, 0, 2, 0, 0, 0x0
+ coord_event 16, 137, 3, 0, 2, 0, 0, 0x0
+ coord_event 17, 137, 3, 0, 2, 0, 0, 0x0
+ coord_event 18, 137, 3, 0, 2, 0, 0, 0x0
+ coord_event 19, 137, 3, 0, 2, 0, 0, 0x0
+ coord_event 20, 137, 3, 0, 2, 0, 0, 0x0
+
+Route119_MapBGEvents:: @ 8383E2C
+ bg_event 9, 33, 0, 0, 0, Route119_EventScript_15142C
+ bg_event 27, 19, 0, 0, 0, Route119_EventScript_151423
+ bg_event 5, 2, 0, 8, 0, ITEM_DRAGON_SCALE, 0, 0
+ bg_event 4, 89, 0, 8, 0, ITEM_LIGHT_BALL, 0, 0
+ bg_event 5, 15, 0, 8, 0, ITEM_POISON_BARB, 0, 0
+ bg_event 7, 101, 3, 8, 0, ITEM_NEVER_MELT_ICE, 0, 0
+ bg_event 34, 24, 3, 8, 0, ITEM_LAX_INCENSE, 0, 0
+ bg_event 31, 73, 3, 8, 0, 231, 0, 0
+ bg_event 16, 81, 0, 8, 0, ITEM_TINY_MUSHROOM, 0, 0
+ bg_event 16, 28, 0, 8, 0, 113, 0, 0
+ bg_event 17, 82, 3, 7, 0, ITEM_CALCIUM, 5, 0
+ bg_event 38, 63, 3, 7, 0, ITEM_ULTRA_BALL, 6, 0
+ bg_event 26, 81, 0, 8, 0, ITEM_FULL_HEAL, 0, 0
+ bg_event 19, 76, 0, 8, 0, ITEM_LANSAT_BERRY, 0, 0
+ bg_event 18, 76, 0, 8, 0, ITEM_DEEP_SEA_SCALE, 0, 0
+ bg_event 4, 15, 0, 8, 0, ITEM_METAL_POWDER, 0, 0
+ bg_event 6, 2, 0, 8, 0, 233, 0, 0
+ bg_event 26, 120, 3, 7, 0, ITEM_FULL_HEAL, 68, 0
+ bg_event 20, 29, 3, 7, 0, ITEM_MAX_ETHER, 87, 0
+ bg_event 28, 9, 0, 0, 0, Route119_EventScript_151605
+
+Route119_MapEvents:: @ 8383F1C
+ map_events Route119_MapObjects, Route119_MapWarps, Route119_MapCoordEvents, Route119_MapBGEvents
+
diff --git a/data/maps/events/Route119_House.s b/data/maps/events/Route119_House.s
new file mode 100644
index 000000000..7686460c0
--- /dev/null
+++ b/data/maps/events/Route119_House.s
@@ -0,0 +1,16 @@
+Route119_House_MapObjects:: @ 8392F40
+ object_event 1, MAP_OBJ_GFX_WOMAN_5, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route119_House_EventScript_163DDE, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WINGULL, 0, 1, 0, 6, 0, 3, 2, 34, 0, 0, 0, 0, 0, Route119_House_EventScript_163DE7, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_WINGULL, 0, 0, 0, 4, 0, 3, 2, 19, 0, 0, 0, 0, 0, Route119_House_EventScript_163DE7, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_WINGULL, 0, 2, 0, 2, 0, 3, 2, 17, 0, 0, 0, 0, 0, Route119_House_EventScript_163DE7, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_WINGULL, 0, 8, 0, 5, 0, 3, 2, 35, 0, 0, 0, 0, 0, Route119_House_EventScript_163DE7, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_WINGULL, 0, 6, 0, 6, 0, 3, 2, 34, 0, 0, 0, 0, 0, Route119_House_EventScript_163DE7, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_WINGULL, 0, 5, 0, 3, 0, 3, 2, 49, 0, 0, 0, 0, 0, Route119_House_EventScript_163DE7, 0, 0, 0
+
+Route119_House_MapWarps:: @ 8392FE8
+ warp_def 3, 8, 0, 1, Route119
+ warp_def 4, 8, 0, 1, Route119
+
+Route119_House_MapEvents:: @ 8392FF8
+ map_events Route119_House_MapObjects, Route119_House_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/Route119_WeatherInstitute_1F.s b/data/maps/events/Route119_WeatherInstitute_1F.s
new file mode 100644
index 000000000..bd3760b88
--- /dev/null
+++ b/data/maps/events/Route119_WeatherInstitute_1F.s
@@ -0,0 +1,21 @@
+Route119_WeatherInstitute_1F_MapObjects:: @ 8392DC0
+ object_event 1, 241, 0, 15, 0, 3, 0, 3, 9, 0, 0, 1, 0, 3, 0, Route119_WeatherInstitute_1F_EventScript_163C94, 890, 0, 0
+ object_event 2, 242, 0, 10, 0, 5, 0, 3, 8, 0, 0, 1, 0, 2, 0, Route119_WeatherInstitute_1F_EventScript_163CAB, 890, 0, 0
+ object_event 3, MAP_OBJ_GFX_MAN_5, 0, 5, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route119_WeatherInstitute_1F_EventScript_163C7A, 892, 0, 0
+ object_event 4, MAP_OBJ_GFX_MAN_5, 0, 2, 0, 11, 0, 3, 1, 1, 0, 0, 0, 0, 0, Route119_WeatherInstitute_1F_EventScript_163C71, 892, 0, 0
+ object_event 5, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 14, 0, 11, 0, 3, 2, 17, 0, 0, 0, 0, 0, Route119_WeatherInstitute_1F_EventScript_163C4D, 0, 0, 0
+
+Route119_WeatherInstitute_1F_MapWarps:: @ 8392E38
+ warp_def 9, 12, 0, 0, Route119
+ warp_def 10, 12, 0, 0, Route119
+ warp_def 17, 1, 0, 0, Route119_WeatherInstitute_2F
+
+Route119_WeatherInstitute_1F_MapBGEvents:: @ 8392E50
+ bg_event 1, 2, 0, 0, 0, Route119_WeatherInstitute_1F_EventScript_163C83
+ bg_event 1, 3, 0, 0, 0, Route119_WeatherInstitute_1F_EventScript_163C83
+ bg_event 0, 2, 0, 0, 0, Route119_WeatherInstitute_1F_EventScript_163C83
+ bg_event 0, 3, 0, 0, 0, Route119_WeatherInstitute_1F_EventScript_163C83
+
+Route119_WeatherInstitute_1F_MapEvents:: @ 8392E80
+ map_events Route119_WeatherInstitute_1F_MapObjects, Route119_WeatherInstitute_1F_MapWarps, 0x0, Route119_WeatherInstitute_1F_MapBGEvents
+
diff --git a/data/maps/events/Route119_WeatherInstitute_2F.s b/data/maps/events/Route119_WeatherInstitute_2F.s
new file mode 100644
index 000000000..02437d9f1
--- /dev/null
+++ b/data/maps/events/Route119_WeatherInstitute_2F.s
@@ -0,0 +1,14 @@
+Route119_WeatherInstitute_2F_MapObjects:: @ 8392E94
+ object_event 1, 241, 0, 15, 0, 6, 0, 3, 10, 0, 0, 1, 0, 4, 0, Route119_WeatherInstitute_2F_EventScript_163CFC, 890, 0, 0
+ object_event 2, 241, 0, 10, 0, 8, 0, 3, 13, 0, 0, 1, 0, 2, 0, Route119_WeatherInstitute_2F_EventScript_163D13, 890, 0, 0
+ object_event 3, 242, 0, 4, 0, 6, 0, 3, 10, 0, 0, 1, 0, 0, 0, Route119_WeatherInstitute_2F_EventScript_163D2A, 890, 0, 0
+ object_event 4, MAP_OBJ_GFX_MAN_5, 0, 0, 0, 6, 0, 3, 10, 0, 0, 0, 0, 0, 0, 0x0, 893, 0, 0
+ object_event 5, MAP_OBJ_GFX_SCIENTIST_1, 0, 18, 0, 6, 0, 3, 1, 18, 0, 0, 0, 0, 0, Route119_WeatherInstitute_2F_EventScript_163DCC, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_MAN_5, 0, 1, 0, 7, 0, 3, 10, 0, 0, 0, 0, 0, 0, 0x0, 893, 0, 0
+
+Route119_WeatherInstitute_2F_MapWarps:: @ 8392F24
+ warp_def 17, 1, 0, 2, Route119_WeatherInstitute_1F
+
+Route119_WeatherInstitute_2F_MapEvents:: @ 8392F2C
+ map_events Route119_WeatherInstitute_2F_MapObjects, Route119_WeatherInstitute_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/Route120.s b/data/maps/events/Route120.s
new file mode 100644
index 000000000..eaba9195f
--- /dev/null
+++ b/data/maps/events/Route120.s
@@ -0,0 +1,87 @@
+Route120_MapObjects:: @ 8383F30
+ object_event 1, MAP_OBJ_GFX_BERRY_TREE, 0, 4, 0, 79, 0, 3, 12, 0, 0, 0, 0, 46, 0, Route120_EventScript_1A14DD, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_BERRY_TREE, 0, 5, 0, 79, 0, 3, 12, 0, 0, 0, 0, 45, 0, Route120_EventScript_1A14DD, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_BERRY_TREE, 0, 6, 0, 79, 0, 3, 12, 0, 0, 0, 0, 44, 0, Route120_EventScript_1A14DD, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_BERRY_TREE, 0, 7, 0, 79, 0, 3, 12, 0, 0, 0, 0, 43, 0, Route120_EventScript_1A14DD, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_BERRY_TREE, 0, 34, 0, 24, 0, 3, 12, 0, 0, 0, 0, 37, 0, Route120_EventScript_1A14DD, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_BERRY_TREE, 0, 35, 0, 24, 0, 3, 12, 0, 0, 0, 0, 38, 0, Route120_EventScript_1A14DD, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_BERRY_TREE, 0, 36, 0, 24, 0, 3, 12, 0, 0, 0, 0, 39, 0, Route120_EventScript_1A14DD, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_BERRY_TREE, 0, 9, 0, 92, 0, 5, 12, 0, 0, 0, 0, 40, 0, Route120_EventScript_1A14DD, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_BERRY_TREE, 0, 10, 0, 92, 0, 5, 12, 0, 0, 0, 0, 41, 0, Route120_EventScript_1A14DD, 0, 0, 0
+ object_event 10, MAP_OBJ_GFX_BERRY_TREE, 0, 11, 0, 92, 0, 5, 12, 0, 0, 0, 0, 42, 0, Route120_EventScript_1A14DD, 0, 0, 0
+ object_event 11, MAP_OBJ_GFX_MAN_6, 0, 5, 0, 22, 0, 3, 14, 0, 0, 1, 0, 3, 0, Route120_EventScript_1519B3, 0, 0, 0
+ object_event 12, MAP_OBJ_GFX_MAN_6, 0, 32, 0, 14, 0, 3, 10, 0, 0, 1, 0, 3, 0, Route120_EventScript_1519CA, 0, 0, 0
+ object_event 13, MAP_OBJ_GFX_CAMPER, 0, 27, 0, 51, 0, 3, 9, 0, 0, 1, 0, 7, 0, Route120_EventScript_151A08, 0, 0, 0
+ object_event 14, MAP_OBJ_GFX_PICNICKER, 0, 36, 0, 45, 0, 3, 9, 0, 0, 1, 0, 2, 0, Route120_EventScript_151A1F, 0, 0, 0
+ object_event 15, MAP_OBJ_GFX_MANIAC, 0, 19, 0, 80, 0, 5, 15, 0, 0, 1, 0, 3, 0, Route120_EventScript_151A36, 0, 0, 0
+ object_event 16, MAP_OBJ_GFX_ITEM_BALL, 0, 20, 0, 55, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route120_EventScript_1B161A, 1030, 0, 0
+ object_event 17, MAP_OBJ_GFX_CAMERAMAN, 0, 37, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route120_EventScript_1AE4C2, 798, 0, 0
+ object_event 18, MAP_OBJ_GFX_REPORTER_F, 0, 36, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route120_EventScript_1AE4A2, 798, 0, 0
+ object_event 19, MAP_OBJ_GFX_REPORTER_F, 0, 36, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route120_EventScript_1AE562, 902, 0, 0
+ object_event 20, MAP_OBJ_GFX_CAMERAMAN, 0, 37, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route120_EventScript_1AE582, 902, 0, 0
+ object_event 21, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 35, 0, 32, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route120_EventScript_1B0DCC, 17, 0, 0
+ object_event 22, MAP_OBJ_GFX_ITEM_BALL, 0, 7, 0, 89, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route120_EventScript_1B1627, 1031, 0, 0
+ object_event 23, MAP_OBJ_GFX_BEAUTY, 0, 14, 0, 92, 0, 5, 5, 1, 0, 0, 0, 0, 0, Route120_EventScript_151739, 0, 0, 0
+ object_event 24, MAP_OBJ_GFX_WOMAN_7, 0, 28, 0, 35, 0, 3, 15, 0, 0, 1, 0, 4, 0, Route120_EventScript_151A74, 0, 0, 0
+ object_event 25, MAP_OBJ_GFX_HIKER, 0, 9, 0, 60, 0, 3, 21, 0, 0, 1, 0, 4, 0, Route120_EventScript_151A8B, 0, 0, 0
+ object_event 26, MAP_OBJ_GFX_WOMAN_7, 0, 16, 0, 6, 0, 3, 23, 0, 0, 1, 0, 4, 0, Route120_EventScript_151AA2, 0, 0, 0
+ object_event 27, MAP_OBJ_GFX_WOMAN_7, 0, 18, 0, 34, 0, 3, 17, 0, 0, 1, 0, 3, 0, Route120_EventScript_151AB9, 0, 0, 0
+ object_event 28, MAP_OBJ_GFX_ITEM_BALL, 0, 22, 0, 13, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route120_EventScript_1B1641, 1108, 0, 0
+ object_event 29, MAP_OBJ_GFX_ITEM_BALL, 0, 23, 0, 82, 0, 5, 1, 17, 0, 0, 0, 0, 0, Route120_EventScript_1B1634, 1107, 0, 0
+ object_event 30, MAP_OBJ_GFX_KECLEON_1, 0, 12, 0, 16, 0, 4, 76, 17, 0, 0, 0, 0, 0, Route120_EventScript_151998, 970, 0, 0
+ object_event 31, MAP_OBJ_GFX_STEVEN, 0, 13, 0, 15, 0, 4, 8, 17, 0, 0, 0, 0, 0, Route120_EventScript_151853, 972, 0, 0
+ object_event 32, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 20, 0, 1, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route120_EventScript_1B0DCC, 20, 0, 0
+ object_event 33, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 15, 0, 1, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route120_EventScript_1B0DCC, 18, 0, 0
+ object_event 34, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 10, 0, 72, 0, 3, 58, 17, 0, 1, 0, 3, 0, Route120_EventScript_151AD0, 0, 0, 0
+ object_event 35, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 19, 0, 28, 0, 3, 57, 17, 0, 1, 0, 3, 0, Route120_EventScript_151AE7, 0, 0, 0
+ object_event 36, MAP_OBJ_GFX_KECLEON_2, 0, 12, 0, 16, 0, 3, 8, 17, 0, 0, 0, 0, 0, 0x0, 981, 0, 0
+ object_event 37, MAP_OBJ_GFX_KECLEON_1, 0, 20, 0, 11, 0, 3, 76, 17, 0, 0, 0, 0, 0, Route120_EventScript_1A0539, 982, 0, 0
+ object_event 38, MAP_OBJ_GFX_KECLEON_1, 0, 27, 0, 2, 0, 3, 76, 17, 0, 0, 0, 0, 0, Route120_EventScript_1A0546, 985, 0, 0
+ object_event 39, MAP_OBJ_GFX_KECLEON_1, 0, 4, 0, 77, 0, 3, 76, 17, 0, 0, 0, 0, 0, Route120_EventScript_1A0553, 986, 0, 0
+ object_event 40, MAP_OBJ_GFX_KECLEON_1, 0, 7, 0, 51, 0, 3, 76, 17, 0, 0, 0, 0, 0, Route120_EventScript_1A056D, 988, 0, 0
+ object_event 41, MAP_OBJ_GFX_KECLEON_1, 0, 19, 0, 48, 0, 3, 76, 17, 0, 0, 0, 0, 0, Route120_EventScript_1A0560, 987, 0, 0
+
+Route120_MapWarps:: @ 8384308
+ warp_def 7, 55, 0, 0, AncientTomb
+ warp_def 19, 23, 1, 0, ScorchedSlab
+
+Route120_MapCoordEvents:: @ 8384318
+ coord_event 7, 15, 0, 0, 3, 0, 0, 0x0
+ coord_event 7, 16, 0, 0, 3, 0, 0, 0x0
+ coord_event 22, 61, 3, 0, 3, 0, 0, 0x0
+ coord_event 12, 64, 3, 0, 3, 0, 0, 0x0
+ coord_event 35, 63, 3, 0, 1, 0, 0, 0x0
+ coord_event 36, 63, 3, 0, 1, 0, 0, 0x0
+ coord_event 37, 63, 3, 0, 1, 0, 0, 0x0
+ coord_event 38, 63, 3, 0, 1, 0, 0, 0x0
+ coord_event 32, 88, 5, 0, 1, 0, 0, 0x0
+ coord_event 28, 15, 0, 0, 2, 0, 0, 0x0
+ coord_event 28, 16, 0, 0, 2, 0, 0, 0x0
+ coord_event 28, 17, 3, 0, 2, 0, 0, 0x0
+ coord_event 32, 89, 5, 0, 1, 0, 0, 0x0
+ coord_event 32, 90, 5, 0, 1, 0, 0, 0x0
+ coord_event 32, 91, 5, 0, 1, 0, 0, 0x0
+ coord_event 10, 75, 3, 0, 1, 0, 0, 0x0
+ coord_event 11, 75, 3, 0, 1, 0, 0, 0x0
+ coord_event 12, 75, 3, 0, 1, 0, 0, 0x0
+ coord_event 13, 75, 3, 0, 1, 0, 0, 0x0
+
+Route120_MapBGEvents:: @ 8384448
+ bg_event 27, 3, 3, 0, 0, Route120_EventScript_1519A1
+ bg_event 38, 88, 3, 0, 0, Route120_EventScript_1519AA
+ bg_event 28, 62, 0, 8, 0, 101, 0, 0
+ bg_event 30, 62, 0, 8, 0, ITEM_HEART_SCALE, 0, 0
+ bg_event 26, 10, 0, 8, 0, ITEM_LUCKY_PUNCH, 0, 0
+ bg_event 29, 85, 5, 8, 0, 232, 0, 0
+ bg_event 18, 12, 0, 8, 0, ITEM_SUN_STONE, 0, 0
+ bg_event 38, 54, 0, 8, 0, ITEM_SOFT_SAND, 0, 0
+ bg_event 31, 23, 0, 8, 0, ITEM_SPELL_TAG, 0, 0
+ bg_event 9, 1, 3, 7, 0, ITEM_RARE_CANDY, 71, 0
+ bg_event 31, 11, 3, 7, 0, ITEM_REVIVE, 84, 0
+ bg_event 0, 86, 3, 7, 0, ITEM_RARE_CANDY, 69, 0
+ bg_event 24, 42, 3, 7, 0, ITEM_ZINC, 70, 0
+ bg_event 5, 76, 0, 8, 0, ITEM_HARD_STONE, 0, 0
+
+Route120_MapEvents:: @ 83844F0
+ map_events Route120_MapObjects, Route120_MapWarps, Route120_MapCoordEvents, Route120_MapBGEvents
+
diff --git a/data/maps/events/Route121.s b/data/maps/events/Route121.s
new file mode 100644
index 000000000..296f84ce4
--- /dev/null
+++ b/data/maps/events/Route121.s
@@ -0,0 +1,47 @@
+Route121_MapObjects:: @ 8384504
+ object_event 1, MAP_OBJ_GFX_WOMAN_4, 0, 29, 0, 14, 0, 3, 10, 17, 0, 0, 0, 0, 0, Route121_EventScript_151B0A, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_BERRY_TREE, 0, 14, 0, 2, 0, 3, 12, 0, 0, 0, 0, 47, 0, Route121_EventScript_1A14DD, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_BERRY_TREE, 0, 15, 0, 2, 0, 3, 12, 0, 0, 0, 0, 48, 0, Route121_EventScript_1A14DD, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_BERRY_TREE, 0, 16, 0, 2, 0, 3, 12, 0, 0, 0, 0, 49, 0, Route121_EventScript_1A14DD, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_BERRY_TREE, 0, 17, 0, 2, 0, 3, 12, 0, 0, 0, 0, 50, 0, Route121_EventScript_1A14DD, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_BERRY_TREE, 0, 64, 0, 14, 0, 3, 12, 0, 0, 0, 0, 51, 0, Route121_EventScript_1A14DD, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_BERRY_TREE, 0, 65, 0, 14, 0, 3, 12, 0, 0, 0, 0, 52, 0, Route121_EventScript_1A14DD, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_BERRY_TREE, 0, 66, 0, 14, 0, 3, 12, 0, 0, 0, 0, 53, 0, Route121_EventScript_1A14DD, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_BERRY_TREE, 0, 67, 0, 14, 0, 3, 12, 0, 0, 0, 0, 54, 0, Route121_EventScript_1A14DD, 0, 0, 0
+ object_event 10, MAP_OBJ_GFX_LASS, 0, 39, 0, 9, 0, 3, 8, 0, 0, 1, 0, 0, 0, Route121_EventScript_151BDE, 0, 0, 0
+ object_event 11, MAP_OBJ_GFX_LASS, 0, 40, 0, 9, 0, 3, 8, 0, 0, 1, 0, 0, 0, Route121_EventScript_151BF9, 0, 0, 0
+ object_event 12, 241, 0, 30, 0, 8, 0, 3, 7, 0, 0, 0, 0, 0, 0, 0x0, 914, 0, 0
+ object_event 13, 241, 0, 30, 0, 7, 0, 3, 10, 0, 0, 0, 0, 0, 0, 0x0, 914, 0, 0
+ object_event 14, 241, 0, 31, 0, 7, 0, 3, 9, 0, 0, 0, 0, 0, 0, 0x0, 914, 0, 0
+ object_event 15, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 32, 0, 5, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route121_EventScript_1B0DCC, 17, 0, 0
+ object_event 16, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 65, 0, 4, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route121_EventScript_1B0DCC, 18, 0, 0
+ object_event 17, MAP_OBJ_GFX_WOMAN_2, 0, 63, 0, 5, 0, 3, 9, 0, 0, 1, 0, 4, 0, Route121_EventScript_151B72, 0, 0, 0
+ object_event 18, MAP_OBJ_GFX_GENTLEMAN, 0, 55, 0, 8, 0, 3, 17, 0, 0, 1, 0, 3, 0, Route121_EventScript_151B89, 0, 0, 0
+ object_event 19, MAP_OBJ_GFX_HEX_MANIAC, 0, 11, 0, 10, 0, 3, 15, 0, 0, 1, 0, 4, 0, Route121_EventScript_151BC7, 0, 0, 0
+ object_event 20, MAP_OBJ_GFX_BEAUTY, 0, 22, 0, 5, 0, 3, 17, 0, 0, 1, 0, 4, 0, Route121_EventScript_151C14, 0, 0, 0
+ object_event 21, MAP_OBJ_GFX_ITEM_BALL, 0, 55, 0, 10, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route121_EventScript_1B164E, 1103, 0, 0
+ object_event 22, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 26, 0, 12, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route121_EventScript_1B0DCC, 19, 0, 0
+
+Route121_MapWarps:: @ 8384714
+ warp_def 37, 5, 0, 2, Route121_SafariZoneEntrance
+
+Route121_MapCoordEvents:: @ 838471C
+ coord_event 25, 5, 3, 0, 0x4074, 0, 0, Route121_EventScript_151B25
+ coord_event 25, 6, 3, 0, 0x4074, 0, 0, Route121_EventScript_151B25
+ coord_event 25, 7, 3, 0, 0x4074, 0, 0, Route121_EventScript_151B25
+ coord_event 25, 8, 3, 0, 0x4074, 0, 0, Route121_EventScript_151B25
+
+Route121_MapBGEvents:: @ 838475C
+ bg_event 32, 14, 0, 0, 0, Route121_EventScript_151B13
+ bg_event 40, 11, 0, 8, 0, ITEM_PREMIER_BALL, 0, 0
+ bg_event 18, 13, 0, 8, 0, ITEM_SUPER_POTION, 0, 0
+ bg_event 43, 7, 0, 8, 0, ITEM_NOMEL_BERRY, 0, 0
+ bg_event 42, 7, 0, 8, 0, ITEM_APICOT_BERRY, 0, 0
+ bg_event 39, 6, 0, 0, 0, Route121_EventScript_151B1C
+ bg_event 23, 10, 3, 7, 0, ITEM_HP_UP, 39, 0
+ bg_event 58, 3, 3, 7, 0, ITEM_NUGGET, 40, 0
+ bg_event 72, 5, 3, 7, 0, ITEM_FULL_HEAL, 73, 0
+
+Route121_MapEvents:: @ 83847C8
+ map_events Route121_MapObjects, Route121_MapWarps, Route121_MapCoordEvents, Route121_MapBGEvents
+
diff --git a/data/maps/events/Route121_SafariZoneEntrance.s b/data/maps/events/Route121_SafariZoneEntrance.s
new file mode 100644
index 000000000..335688067
--- /dev/null
+++ b/data/maps/events/Route121_SafariZoneEntrance.s
@@ -0,0 +1,20 @@
+Route121_SafariZoneEntrance_MapObjects:: @ 838BA34
+ object_event 1, MAP_OBJ_GFX_PICNICKER, 0, 17, 0, 9, 0, 3, 9, 0, 0, 0, 0, 0, 0, Route121_SafariZoneEntrance_EventScript_15C351, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_CAMPER, 0, 10, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route121_SafariZoneEntrance_EventScript_15C35A, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_CAMPER, 0, 8, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+
+Route121_SafariZoneEntrance_MapWarps:: @ 838BA7C
+ warp_def 2, 5, 0, 0, SafariZone_Southeast
+ warp_def 3, 5, 0, 0, SafariZone_Southeast
+ warp_def 14, 13, 0, 0, Route121
+ warp_def 15, 13, 0, 0, Route121
+
+Route121_SafariZoneEntrance_MapCoordEvents:: @ 838BA9C
+ coord_event 8, 4, 3, 0, 0x4001, 0, 0, Route121_SafariZoneEntrance_EventScript_15C383
+
+Route121_SafariZoneEntrance_MapBGEvents:: @ 838BAAC
+ bg_event 15, 1, 0, 0, 0, Route121_SafariZoneEntrance_EventScript_15C487
+
+Route121_SafariZoneEntrance_MapEvents:: @ 838BAB8
+ map_events Route121_SafariZoneEntrance_MapObjects, Route121_SafariZoneEntrance_MapWarps, Route121_SafariZoneEntrance_MapCoordEvents, Route121_SafariZoneEntrance_MapBGEvents
+
diff --git a/data/maps/events/Route122.s b/data/maps/events/Route122.s
new file mode 100644
index 000000000..588b56e41
--- /dev/null
+++ b/data/maps/events/Route122.s
@@ -0,0 +1,6 @@
+Route122_MapWarps:: @ 83847DC
+ warp_def 22, 29, 0, 0, MtPyre_1F
+
+Route122_MapEvents:: @ 83847E4
+ map_events 0x0, Route122_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/Route123.s b/data/maps/events/Route123.s
new file mode 100644
index 000000000..06cdfa2cc
--- /dev/null
+++ b/data/maps/events/Route123.s
@@ -0,0 +1,77 @@
+Route123_MapObjects:: @ 83847F8
+ object_event 1, MAP_OBJ_GFX_BERRY_TREE, 0, 11, 0, 3, 0, 3, 12, 0, 0, 0, 0, 58, 0, Route123_EventScript_1A14DD, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_BERRY_TREE, 0, 12, 0, 3, 0, 3, 12, 0, 0, 0, 0, 59, 0, Route123_EventScript_1A14DD, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_BERRY_TREE, 0, 14, 0, 3, 0, 3, 12, 0, 0, 0, 0, 60, 0, Route123_EventScript_1A14DD, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_BERRY_TREE, 0, 15, 0, 3, 0, 3, 12, 0, 0, 0, 0, 61, 0, Route123_EventScript_1A14DD, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_BERRY_TREE, 0, 81, 0, 1, 0, 3, 12, 0, 0, 0, 0, 62, 0, Route123_EventScript_1A14DD, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_BERRY_TREE, 0, 82, 0, 1, 0, 3, 12, 0, 0, 0, 0, 63, 0, Route123_EventScript_1A14DD, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_BERRY_TREE, 0, 83, 0, 1, 0, 3, 12, 0, 0, 0, 0, 64, 0, Route123_EventScript_1A14DD, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_WOMAN_7, 0, 70, 0, 12, 0, 3, 24, 0, 0, 1, 0, 1, 0, Route123_EventScript_151CD1, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_MAN_4, 0, 58, 0, 7, 0, 3, 17, 0, 0, 1, 0, 2, 0, Route123_EventScript_151CE8, 0, 0, 0
+ object_event 10, MAP_OBJ_GFX_BERRY_TREE, 0, 14, 0, 5, 0, 3, 12, 0, 0, 0, 0, 65, 0, Route123_EventScript_1A14DD, 0, 0, 0
+ object_event 11, MAP_OBJ_GFX_BERRY_TREE, 0, 15, 0, 5, 0, 3, 12, 0, 0, 0, 0, 72, 0, Route123_EventScript_1A14DD, 0, 0, 0
+ object_event 12, MAP_OBJ_GFX_BERRY_TREE, 0, 17, 0, 5, 0, 3, 12, 0, 0, 0, 0, 73, 0, Route123_EventScript_1A14DD, 0, 0, 0
+ object_event 13, MAP_OBJ_GFX_BERRY_TREE, 0, 18, 0, 5, 0, 3, 12, 0, 0, 0, 0, 74, 0, Route123_EventScript_1A14DD, 0, 0, 0
+ object_event 14, MAP_OBJ_GFX_BERRY_TREE, 0, 17, 0, 3, 0, 3, 12, 0, 0, 0, 0, 79, 0, Route123_EventScript_1A14DD, 0, 0, 0
+ object_event 15, MAP_OBJ_GFX_BERRY_TREE, 0, 18, 0, 3, 0, 3, 12, 0, 0, 0, 0, 14, 0, Route123_EventScript_1A14DD, 0, 0, 0
+ object_event 16, MAP_OBJ_GFX_BERRY_TREE, 0, 11, 0, 5, 0, 3, 12, 0, 0, 0, 0, 15, 0, Route123_EventScript_1A14DD, 0, 0, 0
+ object_event 17, MAP_OBJ_GFX_BERRY_TREE, 0, 12, 0, 5, 0, 3, 12, 0, 0, 0, 0, 30, 0, Route123_EventScript_1A14DD, 0, 0, 0
+ object_event 18, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 101, 0, 13, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route123_EventScript_1B0DCC, 17, 0, 0
+ object_event 19, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 129, 0, 14, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route123_EventScript_1B0DCC, 18, 0, 0
+ object_event 20, MAP_OBJ_GFX_CUTTABLE_TREE, 0, 92, 0, 9, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route123_EventScript_1B0DCC, 19, 0, 0
+ object_event 21, MAP_OBJ_GFX_ITEM_BALL, 0, 31, 0, 8, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route123_EventScript_1B165B, 1032, 0, 0
+ object_event 22, MAP_OBJ_GFX_ITEM_BALL, 0, 139, 0, 18, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route123_EventScript_1B1668, 1033, 0, 0
+ object_event 23, MAP_OBJ_GFX_GIRL_3, 0, 108, 0, 13, 0, 3, 15, 0, 0, 0, 0, 0, 0, Route123_EventScript_151C5D, 0, 0, 0
+ object_event 24, MAP_OBJ_GFX_BERRY_TREE, 0, 109, 0, 13, 0, 3, 12, 0, 0, 0, 0, 87, 0, Route123_EventScript_1A14DD, 0, 0, 0
+ object_event 25, MAP_OBJ_GFX_BERRY_TREE, 0, 110, 0, 13, 0, 3, 12, 0, 0, 0, 0, 88, 0, Route123_EventScript_1A14DD, 0, 0, 0
+ object_event 26, MAP_OBJ_GFX_BERRY_TREE, 0, 111, 0, 13, 0, 3, 12, 0, 0, 0, 0, 89, 0, Route123_EventScript_1A14DD, 0, 0, 0
+ object_event 27, MAP_OBJ_GFX_WOMAN_3, 0, 16, 0, 9, 0, 3, 23, 0, 0, 1, 0, 2, 0, Route123_EventScript_151CFF, 0, 0, 0
+ object_event 28, MAP_OBJ_GFX_LITTLE_GIRL_1, 0, 38, 0, 13, 0, 3, 8, 0, 0, 1, 0, 0, 0, Route123_EventScript_151DAD, 0, 0, 0
+ object_event 29, MAP_OBJ_GFX_LITTLE_GIRL_1, 0, 37, 0, 13, 0, 3, 8, 0, 0, 1, 0, 0, 0, Route123_EventScript_151D92, 0, 0, 0
+ object_event 30, MAP_OBJ_GFX_PSYCHIC_M, 0, 138, 0, 12, 0, 3, 9, 0, 0, 1, 0, 6, 0, Route123_EventScript_151D16, 0, 0, 0
+ object_event 31, MAP_OBJ_GFX_LASS, 0, 50, 0, 16, 0, 3, 8, 0, 0, 1, 0, 1, 0, Route123_EventScript_151D54, 0, 0, 0
+ object_event 32, MAP_OBJ_GFX_HEX_MANIAC, 0, 87, 0, 14, 0, 3, 1, 0, 0, 1, 0, 3, 0, Route123_EventScript_151DC8, 0, 0, 0
+ object_event 33, MAP_OBJ_GFX_ITEM_BALL, 0, 27, 0, 18, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route123_EventScript_1B1675, 1104, 0, 0
+ object_event 34, MAP_OBJ_GFX_ITEM_BALL, 0, 75, 0, 9, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route123_EventScript_1B1682, 1109, 0, 0
+
+Route123_MapWarps:: @ 8384B28
+ warp_def 22, 6, 0, 0, Route123_BerryMastersHouse
+
+Route123_MapCoordEvents:: @ 8384B30
+ coord_event 90, 16, 3, 0, 21, 0, 0, 0x0
+ coord_event 92, 9, 3, 0, 21, 0, 0, 0x0
+ coord_event 93, 12, 3, 0, 21, 0, 0, 0x0
+ coord_event 92, 13, 3, 0, 21, 0, 0, 0x0
+ coord_event 91, 14, 3, 0, 21, 0, 0, 0x0
+ coord_event 19, 13, 3, 0, 21, 0, 0, 0x0
+ coord_event 19, 12, 3, 0, 21, 0, 0, 0x0
+ coord_event 34, 13, 3, 0, 21, 0, 0, 0x0
+ coord_event 19, 14, 3, 0, 21, 0, 0, 0x0
+ coord_event 19, 15, 3, 0, 21, 0, 0, 0x0
+ coord_event 19, 16, 3, 0, 21, 0, 0, 0x0
+ coord_event 108, 14, 3, 0, 2, 0, 0, 0x0
+ coord_event 109, 15, 3, 0, 2, 0, 0, 0x0
+ coord_event 110, 16, 3, 0, 2, 0, 0, 0x0
+ coord_event 111, 17, 3, 0, 2, 0, 0, 0x0
+ coord_event 112, 18, 3, 0, 2, 0, 0, 0x0
+ coord_event 9, 12, 3, 0, 2, 0, 0, 0x0
+ coord_event 9, 13, 3, 0, 2, 0, 0, 0x0
+ coord_event 9, 14, 3, 0, 2, 0, 0, 0x0
+ coord_event 9, 15, 3, 0, 2, 0, 0, 0x0
+ coord_event 9, 16, 3, 0, 2, 0, 0, 0x0
+ coord_event 94, 10, 3, 0, 21, 0, 0, 0x0
+
+Route123_MapBGEvents:: @ 8384C90
+ bg_event 117, 10, 0, 0, 0, Route123_EventScript_151CBF
+ bg_event 47, 3, 0, 8, 0, 82, 0, 0
+ bg_event 49, 3, 0, 8, 0, 92, 0, 0
+ bg_event 10, 12, 3, 0, 0, Route123_EventScript_151CB6
+ bg_event 75, 1, 3, 7, 0, ITEM_SUPER_REPEL, 7, 0
+ bg_event 20, 7, 3, 0, 0, Route123_EventScript_151CC8
+ bg_event 57, 5, 0, 8, 0, ITEM_SUPER_REPEL, 0, 0
+ bg_event 12, 1, 3, 7, 0, ITEM_REVIVE, 41, 0
+ bg_event 91, 15, 3, 7, 0, ITEM_HYPER_POTION, 74, 0
+
+Route123_MapEvents:: @ 8384CFC
+ map_events Route123_MapObjects, Route123_MapWarps, Route123_MapCoordEvents, Route123_MapBGEvents
+
diff --git a/data/maps/events/Route123_BerryMastersHouse.s b/data/maps/events/Route123_BerryMastersHouse.s
new file mode 100644
index 000000000..42f9d7e1c
--- /dev/null
+++ b/data/maps/events/Route123_BerryMastersHouse.s
@@ -0,0 +1,11 @@
+Route123_BerryMastersHouse_MapObjects:: @ 8392D6C
+ object_event 1, MAP_OBJ_GFX_OLD_MAN_1, 0, 4, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route123_BerryMastersHouse_EventScript_1639E9, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_OLD_WOMAN_2, 0, 7, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, Route123_BerryMastersHouse_EventScript_163A64, 0, 0, 0
+
+Route123_BerryMastersHouse_MapWarps:: @ 8392D9C
+ warp_def 3, 7, 0, 0, Route123
+ warp_def 4, 7, 0, 0, Route123
+
+Route123_BerryMastersHouse_MapEvents:: @ 8392DAC
+ map_events Route123_BerryMastersHouse_MapObjects, Route123_BerryMastersHouse_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/Route124.s b/data/maps/events/Route124.s
new file mode 100644
index 000000000..4b9dc496a
--- /dev/null
+++ b/data/maps/events/Route124.s
@@ -0,0 +1,21 @@
+Route124_MapObjects:: @ 8384D10
+ object_event 1, MAP_OBJ_GFX_SWIMMER_M, 0, 58, 0, 59, 0, 1, 1, 5, 0, 1, 0, 3, 0, Route124_EventScript_151DF8, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SWIMMER_M, 0, 33, 0, 25, 0, 1, 52, 53, 0, 1, 0, 3, 0, Route124_EventScript_151E0F, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_SWIMMER_F, 0, 14, 0, 27, 0, 1, 24, 0, 0, 1, 0, 3, 0, Route124_EventScript_151E26, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_SWIMMER_F, 0, 49, 0, 45, 0, 1, 24, 134, 0, 1, 0, 3, 0, Route124_EventScript_151E64, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_SWIMMER_M, 0, 60, 0, 74, 0, 1, 28, 7, 0, 1, 0, 2, 0, Route124_EventScript_151E7B, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_ITEM_BALL, 0, 28, 0, 12, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route124_EventScript_1B168F, 1092, 0, 0
+ object_event 7, MAP_OBJ_GFX_ITEM_BALL, 0, 31, 0, 53, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route124_EventScript_1B169C, 1093, 0, 0
+ object_event 8, MAP_OBJ_GFX_ITEM_BALL, 0, 58, 0, 11, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route124_EventScript_1B16A9, 1066, 0, 0
+ object_event 9, MAP_OBJ_GFX_SWIMMER_F, 0, 18, 0, 44, 0, 1, 8, 17, 0, 1, 0, 0, 0, Route124_EventScript_151E92, 0, 0, 0
+ object_event 10, MAP_OBJ_GFX_TUBER_M_SWIMMING, 0, 17, 0, 44, 0, 1, 8, 17, 0, 1, 0, 0, 0, Route124_EventScript_151ED8, 0, 0, 0
+
+Route124_MapWarps:: @ 8384E00
+ warp_def 70, 48, 3, 0, Route124_DivingTreasureHuntersHouse
+
+Route124_MapBGEvents:: @ 8384E08
+ bg_event 73, 48, 3, 0, 0, Route124_EventScript_151DEF
+
+Route124_MapEvents:: @ 8384E14
+ map_events Route124_MapObjects, Route124_MapWarps, 0x0, Route124_MapBGEvents
+
diff --git a/data/maps/events/Route125.s b/data/maps/events/Route125.s
new file mode 100644
index 000000000..bf9696563
--- /dev/null
+++ b/data/maps/events/Route125.s
@@ -0,0 +1,21 @@
+Route125_MapObjects:: @ 8384E28
+ object_event 1, MAP_OBJ_GFX_SWIMMER_M, 0, 46, 0, 9, 0, 1, 23, 0, 0, 1, 0, 2, 0, Route125_EventScript_151F2E, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SWIMMER_M, 0, 9, 0, 32, 0, 1, 10, 82, 0, 1, 0, 2, 0, Route125_EventScript_151F45, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_SWIMMER_F, 0, 31, 0, 33, 0, 1, 28, 6, 0, 1, 0, 3, 0, Route125_EventScript_151F5C, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_SWIMMER_F, 0, 39, 0, 20, 0, 1, 52, 153, 0, 1, 0, 3, 0, Route125_EventScript_151F73, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_SAILOR, 0, 23, 0, 28, 0, 3, 14, 0, 0, 1, 0, 2, 0, Route125_EventScript_151F8A, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_LASS, 0, 20, 0, 21, 0, 3, 8, 17, 0, 1, 0, 0, 0, Route125_EventScript_151FC8, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_LASS, 0, 21, 0, 21, 0, 3, 8, 17, 0, 1, 0, 0, 0, Route125_EventScript_151FE3, 0, 0, 0
+
+Route125_MapWarps:: @ 8384ED0
+ warp_def 22, 19, 0, 0, ShoalCave_LowTideEntranceRoom
+
+Route125_MapBGEvents:: @ 8384ED8
+ bg_event 53, 10, 0, 8, 0, ITEM_ULTRA_BALL, 0, 0
+ bg_event 55, 11, 0, 8, 0, ITEM_HEAL_POWDER, 0, 0
+ bg_event 7, 25, 0, 8, 0, ITEM_RETRO_MAIL, 0, 0
+ bg_event 24, 32, 0, 8, 0, ITEM_PINAP_BERRY, 0, 0
+
+Route125_MapEvents:: @ 8384F08
+ map_events Route125_MapObjects, Route125_MapWarps, 0x0, Route125_MapBGEvents
+
diff --git a/data/maps/events/Route126.s b/data/maps/events/Route126.s
new file mode 100644
index 000000000..a70e471d1
--- /dev/null
+++ b/data/maps/events/Route126.s
@@ -0,0 +1,10 @@
+Route126_MapObjects:: @ 8384F1C
+ object_event 1, MAP_OBJ_GFX_SWIMMER_M, 0, 55, 0, 22, 0, 1, 51, 58, 0, 1, 0, 3, 0, Route126_EventScript_15200E, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SWIMMER_M, 0, 33, 0, 63, 0, 1, 28, 9, 0, 1, 0, 3, 0, Route126_EventScript_152025, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_SWIMMER_F, 0, 9, 0, 49, 0, 1, 7, 0, 0, 1, 0, 3, 0, Route126_EventScript_15203C, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_SWIMMER_F, 0, 64, 0, 44, 0, 1, 24, 0, 0, 1, 0, 3, 0, Route126_EventScript_152053, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_ITEM_BALL, 0, 14, 0, 1, 0, 3, 1, 17, 0, 0, 0, 0, 0, Route126_EventScript_1B16B6, 1105, 0, 0
+
+Route126_MapEvents:: @ 8384F94
+ map_events Route126_MapObjects, 0x0, 0x0, 0x0
+
diff --git a/data/maps/events/Route127.s b/data/maps/events/Route127.s
new file mode 100644
index 000000000..4b261a435
--- /dev/null
+++ b/data/maps/events/Route127.s
@@ -0,0 +1,21 @@
+Route127_MapObjects:: @ 8384FA8
+ object_event 1, MAP_OBJ_GFX_SWIMMER_M, 0, 18, 0, 68, 0, 1, 14, 0, 0, 1, 0, 2, 0, Route127_EventScript_15207A, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SWIMMER_F, 0, 45, 0, 44, 0, 1, 21, 0, 0, 1, 0, 4, 0, Route127_EventScript_152091, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_ITEM_BALL, 0, 10, 0, 7, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route127_EventScript_1B16C3, 1034, 0, 0
+ object_event 4, MAP_OBJ_GFX_ITEM_BALL, 0, 64, 0, 39, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route127_EventScript_1B16D0, 1035, 0, 0
+ object_event 5, MAP_OBJ_GFX_FISHERMAN, 0, 53, 0, 13, 0, 3, 7, 17, 0, 1, 0, 0, 0, Route127_EventScript_1520A8, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_FISHERMAN, 0, 52, 0, 25, 0, 3, 8, 17, 0, 1, 0, 0, 0, Route127_EventScript_1520D6, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_FISHERMAN, 0, 64, 0, 19, 0, 3, 10, 17, 0, 1, 0, 0, 0, Route127_EventScript_1520BF, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_MAN_6, 0, 12, 0, 18, 0, 3, 24, 17, 0, 1, 0, 2, 0, Route127_EventScript_152104, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_BLACK_BELT, 0, 63, 0, 63, 0, 3, 1, 17, 0, 1, 0, 3, 0, Route127_EventScript_1520ED, 0, 0, 0
+
+Route127_MapBGEvents:: @ 8385080
+ bg_event 59, 67, 0, 8, 0, ITEM_ENERGY_ROOT, 0, 0
+ bg_event 59, 72, 0, 8, 0, ITEM_SITRUS_BERRY, 0, 0
+ bg_event 67, 63, 0, 8, 0, ITEM_WEPEAR_BERRY, 0, 0
+ bg_event 61, 21, 0, 8, 0, ITEM_FIGY_BERRY, 0, 0
+ bg_event 45, 24, 0, 8, 0, ITEM_GLITTER_MAIL, 0, 0
+
+Route127_MapEvents:: @ 83850BC
+ map_events Route127_MapObjects, 0x0, 0x0, Route127_MapBGEvents
+
diff --git a/data/maps/events/Route128.s b/data/maps/events/Route128.s
new file mode 100644
index 000000000..d49492d21
--- /dev/null
+++ b/data/maps/events/Route128.s
@@ -0,0 +1,18 @@
+Route128_MapObjects:: @ 83850D0
+ object_event 1, MAP_OBJ_GFX_SWIMMER_M, 0, 77, 0, 24, 0, 1, 48, 85, 0, 1, 0, 3, 0, Route128_EventScript_1522A4, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SWIMMER_F, 0, 35, 0, 34, 0, 1, 28, 5, 0, 1, 0, 7, 0, Route128_EventScript_1522E2, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_STEVEN, 0, 40, 0, 22, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 834, 0, 0
+ object_event 4, 246, 0, 37, 0, 22, 0, 3, 9, 17, 0, 0, 0, 0, 0, 0x0, 944, 0, 0
+ object_event 5, 247, 0, 38, 0, 21, 0, 3, 7, 17, 0, 0, 0, 0, 0, 0x0, 945, 0, 0
+ object_event 6, MAP_OBJ_GFX_FISHERMAN, 0, 63, 0, 28, 0, 3, 7, 17, 0, 1, 0, 0, 0, Route128_EventScript_15234E, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_MAN_4, 0, 24, 0, 8, 0, 3, 17, 17, 0, 1, 0, 2, 0, Route128_EventScript_152337, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_WOMAN_7, 0, 47, 0, 9, 0, 3, 10, 17, 0, 1, 0, 3, 0, Route128_EventScript_152320, 0, 0, 0
+
+Route128_MapBGEvents:: @ 8385190
+ bg_event 49, 9, 3, 7, 0, ITEM_HEART_SCALE, 92, 0
+ bg_event 57, 21, 3, 7, 0, ITEM_HEART_SCALE, 93, 0
+ bg_event 31, 33, 3, 7, 0, ITEM_HEART_SCALE, 94, 0
+
+Route128_MapEvents:: @ 83851B4
+ map_events Route128_MapObjects, 0x0, 0x0, Route128_MapBGEvents
+
diff --git a/data/maps/events/Route129.s b/data/maps/events/Route129.s
new file mode 100644
index 000000000..400f26457
--- /dev/null
+++ b/data/maps/events/Route129.s
@@ -0,0 +1,9 @@
+Route129_MapObjects:: @ 83851C8
+ object_event 1, MAP_OBJ_GFX_SWIMMER_M, 0, 15, 0, 23, 0, 1, 50, 67, 0, 1, 0, 3, 0, Route129_EventScript_152366, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SWIMMER_F, 0, 35, 0, 9, 0, 1, 52, 37, 0, 1, 0, 2, 0, Route129_EventScript_15237D, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_SWIMMER_F, 0, 9, 0, 14, 0, 1, 1, 17, 0, 1, 0, 2, 0, Route129_EventScript_1523AB, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_SWIMMER_M, 0, 28, 0, 16, 0, 1, 24, 17, 0, 1, 0, 2, 0, Route129_EventScript_152394, 0, 0, 0
+
+Route129_MapEvents:: @ 8385228
+ map_events Route129_MapObjects, 0x0, 0x0, 0x0
+
diff --git a/data/maps/events/Route130.s b/data/maps/events/Route130.s
new file mode 100644
index 000000000..754002e0b
--- /dev/null
+++ b/data/maps/events/Route130.s
@@ -0,0 +1,8 @@
+Route130_MapObjects:: @ 838523C
+ object_event 1, MAP_OBJ_GFX_SWIMMER_M, 0, 7, 0, 26, 0, 1, 29, 99, 0, 1, 0, 3, 0, Route130_EventScript_152410, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SWIMMER_F, 0, 68, 0, 22, 0, 1, 13, 17, 0, 1, 0, 3, 0, Route130_EventScript_152427, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_BERRY_TREE, 0, 52, 0, 9, 0, 3, 12, 0, 0, 0, 0, 82, 0, Route130_EventScript_1A14DD, 17, 0, 0
+
+Route130_MapEvents:: @ 8385284
+ map_events Route130_MapObjects, 0x0, 0x0, 0x0
+
diff --git a/data/maps/events/Route131.s b/data/maps/events/Route131.s
new file mode 100644
index 000000000..7337299cb
--- /dev/null
+++ b/data/maps/events/Route131.s
@@ -0,0 +1,14 @@
+Route131_MapObjects:: @ 8385298
+ object_event 1, MAP_OBJ_GFX_SWIMMER_M, 0, 17, 0, 25, 0, 1, 29, 117, 0, 1, 0, 3, 0, Route131_EventScript_152452, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SWIMMER_M, 0, 36, 0, 26, 0, 1, 8, 0, 0, 1, 0, 3, 0, Route131_EventScript_152469, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_SWIMMER_F, 0, 33, 0, 28, 0, 1, 7, 0, 0, 1, 0, 4, 0, Route131_EventScript_152480, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_SWIMMER_F, 0, 45, 0, 23, 0, 1, 47, 65, 0, 1, 0, 3, 0, Route131_EventScript_152497, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_SWIMMER_F, 0, 9, 0, 16, 0, 1, 8, 17, 0, 1, 0, 0, 0, Route131_EventScript_1524AE, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_TUBER_M_SWIMMING, 0, 8, 0, 16, 0, 1, 8, 17, 0, 1, 0, 0, 0, Route131_EventScript_1524C9, 0, 0, 0
+
+Route131_MapWarps:: @ 8385328
+ warp_def 36, 6, 3, 0, SkyPillar_Entrance
+
+Route131_MapEvents:: @ 8385330
+ map_events Route131_MapObjects, Route131_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/Route132.s b/data/maps/events/Route132.s
new file mode 100644
index 000000000..ea5d79b9a
--- /dev/null
+++ b/data/maps/events/Route132.s
@@ -0,0 +1,10 @@
+Route132_MapObjects:: @ 8385344
+ object_event 1, MAP_OBJ_GFX_SWIMMER_M, 0, 7, 0, 3, 0, 1, 46, 51, 0, 1, 0, 2, 0, Route132_EventScript_1524E5, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SWIMMER_F, 0, 41, 0, 16, 0, 1, 49, 68, 0, 1, 0, 2, 0, Route132_EventScript_1524FC, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_ITEM_BALL, 0, 10, 0, 11, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route132_EventScript_1B16DD, 1036, 0, 0
+ object_event 4, MAP_OBJ_GFX_BLACK_BELT, 0, 46, 0, 28, 0, 3, 10, 0, 0, 1, 0, 4, 0, Route132_EventScript_15252A, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_FISHERMAN, 0, 9, 0, 16, 0, 3, 8, 0, 0, 1, 0, 1, 0, Route132_EventScript_152513, 0, 0, 0
+
+Route132_MapEvents:: @ 83853BC
+ map_events Route132_MapObjects, 0x0, 0x0, 0x0
+
diff --git a/data/maps/events/Route133.s b/data/maps/events/Route133.s
new file mode 100644
index 000000000..229bdcda4
--- /dev/null
+++ b/data/maps/events/Route133.s
@@ -0,0 +1,12 @@
+Route133_MapObjects:: @ 83853D0
+ object_event 1, MAP_OBJ_GFX_SWIMMER_M, 0, 6, 0, 4, 0, 1, 1, 0, 0, 1, 0, 3, 0, Route133_EventScript_152542, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SWIMMER_F, 0, 68, 0, 24, 0, 1, 8, 0, 0, 1, 0, 3, 0, Route133_EventScript_152570, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_SWIMMER_F, 0, 69, 0, 24, 0, 1, 8, 0, 0, 1, 0, 3, 0, Route133_EventScript_152559, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_ITEM_BALL, 0, 58, 0, 15, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route133_EventScript_1B16EA, 1037, 0, 0
+ object_event 5, MAP_OBJ_GFX_ITEM_BALL, 0, 8, 0, 10, 0, 3, 1, 0, 0, 0, 0, 0, 0, Route133_EventScript_1B16F7, 1038, 0, 0
+ object_event 6, MAP_OBJ_GFX_MAN_6, 0, 37, 0, 16, 0, 3, 13, 17, 0, 1, 0, 1, 0, Route133_EventScript_15259E, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_MAN_4, 0, 7, 0, 14, 0, 3, 10, 0, 0, 1, 0, 4, 0, Route133_EventScript_152587, 0, 0, 0
+
+Route133_MapEvents:: @ 8385478
+ map_events Route133_MapObjects, 0x0, 0x0, 0x0
+
diff --git a/data/maps/events/Route134.s b/data/maps/events/Route134.s
new file mode 100644
index 000000000..e763a11ed
--- /dev/null
+++ b/data/maps/events/Route134.s
@@ -0,0 +1,10 @@
+Route134_MapObjects:: @ 838548C
+ object_event 1, MAP_OBJ_GFX_SWIMMER_M, 0, 52, 0, 9, 0, 1, 49, 83, 0, 1, 0, 2, 0, Route134_EventScript_1525C4, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SWIMMER_F, 0, 45, 0, 5, 0, 1, 1, 0, 0, 1, 0, 3, 0, Route134_EventScript_1525DB, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MAN_4, 0, 41, 0, 23, 0, 3, 10, 0, 0, 1, 0, 1, 0, Route134_EventScript_152609, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_MAN_6, 0, 65, 0, 14, 0, 3, 18, 0, 0, 1, 0, 2, 0, Route134_EventScript_1525F2, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_BLACK_BELT, 0, 56, 0, 16, 0, 3, 27, 10, 0, 1, 0, 3, 0, Route134_EventScript_152620, 0, 0, 0
+
+Route134_MapEvents:: @ 8385504
+ map_events Route134_MapObjects, 0x0, 0x0, 0x0
+
diff --git a/data/maps/events/RustboroCity.s b/data/maps/events/RustboroCity.s
new file mode 100644
index 000000000..ba75bd731
--- /dev/null
+++ b/data/maps/events/RustboroCity.s
@@ -0,0 +1,60 @@
+RustboroCity_MapObjects:: @ 837FD14
+ object_event 1, MAP_OBJ_GFX_WOMAN_7, 0, 22, 0, 34, 0, 3, 3, 16, 0, 0, 0, 0, 0, RustboroCity_EventScript_14C3B1, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_FAT_MAN, 0, 19, 0, 13, 0, 3, 1, 17, 0, 0, 0, 0, 0, RustboroCity_EventScript_14C386, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 25, 0, 37, 0, 3, 7, 0, 0, 0, 0, 0, 0, RustboroCity_EventScript_14C401, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_LITTLE_GIRL_1, 0, 21, 0, 46, 0, 3, 3, 16, 0, 0, 0, 0, 0, RustboroCity_EventScript_14C3F8, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_BOY_2, 0, 12, 0, 45, 0, 3, 1, 0, 0, 0, 0, 0, 0, RustboroCity_EventScript_14C3D9, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_MAN_4, 0, 26, 0, 23, 0, 3, 1, 17, 0, 0, 0, 0, 0, RustboroCity_EventScript_14C3BA, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_LITTLE_BOY_2, 0, 24, 0, 51, 0, 3, 10, 0, 0, 0, 0, 0, 0, RustboroCity_EventScript_14C449, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_LITTLE_GIRL_2, 0, 25, 0, 51, 0, 3, 9, 0, 0, 0, 0, 0, 0, RustboroCity_EventScript_14C45F, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_MAN_2, 0, 30, 0, 10, 0, 3, 10, 17, 0, 0, 0, 0, 0, RustboroCity_EventScript_14C5FF, 732, 0, 0
+ object_event 10, 241, 0, 13, 0, 21, 0, 3, 10, 0, 0, 0, 0, 0, 0, 0x0, 731, 0, 0
+ object_event 11, MAP_OBJ_GFX_MAN_7, 0, 13, 0, 34, 0, 3, 2, 17, 0, 0, 0, 0, 0, RustboroCity_EventScript_14C3A5, 0, 0, 0
+ object_event 12, MAP_OBJ_GFX_ITEM_BALL, 0, 36, 0, 51, 0, 3, 1, 0, 0, 0, 0, 0, 0, RustboroCity_EventScript_1B172B, 1041, 0, 0
+ object_event 13, MAP_OBJ_GFX_MAN_5, 0, 19, 0, 27, 0, 3, 8, 16, 0, 0, 0, 0, 0, RustboroCity_EventScript_14C475, 0, 0, 0
+ object_event 14, 240, 0, 16, 0, 50, 0, 3, 1, 17, 0, 0, 0, 0, 0, RustboroCity_EventScript_14C8DA, 814, 0, 0
+
+RustboroCity_MapWarps:: @ 837FE64
+ warp_def 27, 19, 0, 0, RustboroCity_Gym
+ warp_def 13, 30, 0, 0, RustboroCity_Flat1_1F
+ warp_def 16, 45, 0, 0, RustboroCity_Mart
+ warp_def 16, 38, 0, 0, RustboroCity_PokemonCenter_1F
+ warp_def 27, 34, 0, 0, RustboroCity_PokemonSchool
+ warp_def 11, 15, 0, 0, RustboroCity_DevonCorp_1F
+ warp_def 12, 15, 0, 1, RustboroCity_DevonCorp_1F
+ warp_def 33, 19, 0, 0, RustboroCity_House1
+ warp_def 9, 38, 0, 0, RustboroCity_CuttersHouse
+ warp_def 30, 28, 0, 0, RustboroCity_House2
+ warp_def 5, 51, 0, 0, RustboroCity_Flat2_1F
+ warp_def 26, 46, 0, 0, RustboroCity_House3
+
+RustboroCity_MapCoordEvents:: @ 837FEC4
+ coord_event 23, 20, 3, 0, 0x405a, 1, 0, RustboroCity_EventScript_14C481
+ coord_event 23, 21, 3, 0, 0x405a, 1, 0, RustboroCity_EventScript_14C498
+ coord_event 23, 22, 3, 0, 0x405a, 1, 0, RustboroCity_EventScript_14C4AF
+ coord_event 23, 23, 3, 0, 0x405a, 1, 0, RustboroCity_EventScript_14C4C6
+ coord_event 23, 24, 3, 0, 0x405a, 1, 0, RustboroCity_EventScript_14C4DD
+ coord_event 30, 9, 3, 0, 0x405a, 2, 0, RustboroCity_EventScript_14C620
+ coord_event 29, 10, 3, 0, 0x405a, 2, 0, RustboroCity_EventScript_14C62C
+ coord_event 30, 11, 3, 0, 0x405a, 2, 0, RustboroCity_EventScript_14C638
+ coord_event 30, 12, 3, 0, 0x405a, 2, 0, RustboroCity_EventScript_14C644
+ coord_event 30, 9, 3, 0, 0x405a, 4, 0, RustboroCity_EventScript_14C74D
+ coord_event 31, 10, 3, 0, 0x405a, 4, 0, RustboroCity_EventScript_14C759
+ coord_event 30, 11, 3, 0, 0x405a, 4, 0, RustboroCity_EventScript_14C765
+ coord_event 30, 12, 3, 0, 0x405a, 4, 0, RustboroCity_EventScript_14C771
+
+RustboroCity_MapBGEvents:: @ 837FF94
+ bg_event 23, 19, 0, 0, 0, RustboroCity_EventScript_14C41C
+ bg_event 25, 35, 0, 0, 0, RustboroCity_EventScript_14C437
+ bg_event 17, 45, 0, 1, 0, RustboroCity_EventScript_1A00E1
+ bg_event 18, 38, 0, 1, 0, RustboroCity_EventScript_1A00EA
+ bg_event 19, 49, 0, 0, 0, RustboroCity_EventScript_14C42E
+ bg_event 18, 45, 0, 1, 0, RustboroCity_EventScript_1A00E1
+ bg_event 17, 38, 0, 1, 0, RustboroCity_EventScript_1A00EA
+ bg_event 17, 20, 0, 0, 0, RustboroCity_EventScript_14C413
+ bg_event 30, 8, 0, 0, 0, RustboroCity_EventScript_14C40A
+ bg_event 12, 38, 3, 0, 0, RustboroCity_EventScript_14C440
+
+RustboroCity_MapEvents:: @ 838000C
+ map_events RustboroCity_MapObjects, RustboroCity_MapWarps, RustboroCity_MapCoordEvents, RustboroCity_MapBGEvents
+
diff --git a/data/maps/events/RustboroCity_CuttersHouse.s b/data/maps/events/RustboroCity_CuttersHouse.s
new file mode 100644
index 000000000..d0cca63f3
--- /dev/null
+++ b/data/maps/events/RustboroCity_CuttersHouse.s
@@ -0,0 +1,11 @@
+RustboroCity_CuttersHouse_MapObjects:: @ 8388D9C
+ object_event 1, MAP_OBJ_GFX_MAN_3, 0, 7, 0, 5, 0, 3, 10, 0, 0, 0, 0, 0, 0, RustboroCity_CuttersHouse_EventScript_157D27, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_LASS, 0, 9, 0, 2, 0, 3, 5, 1, 0, 0, 0, 0, 0, RustboroCity_CuttersHouse_EventScript_157D5D, 0, 0, 0
+
+RustboroCity_CuttersHouse_MapWarps:: @ 8388DCC
+ warp_def 5, 8, 0, 8, RustboroCity
+ warp_def 6, 8, 0, 8, RustboroCity
+
+RustboroCity_CuttersHouse_MapEvents:: @ 8388DDC
+ map_events RustboroCity_CuttersHouse_MapObjects, RustboroCity_CuttersHouse_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/RustboroCity_DevonCorp_1F.s b/data/maps/events/RustboroCity_DevonCorp_1F.s
new file mode 100644
index 000000000..798de776b
--- /dev/null
+++ b/data/maps/events/RustboroCity_DevonCorp_1F.s
@@ -0,0 +1,13 @@
+RustboroCity_DevonCorp_1F_MapObjects:: @ 838880C
+ object_event 1, MAP_OBJ_GFX_MAN_7, 0, 2, 0, 6, 0, 3, 2, 17, 0, 0, 0, 0, 0, RustboroCity_DevonCorp_1F_EventScript_157422, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_7, 0, 15, 0, 5, 0, 3, 2, 18, 0, 0, 0, 0, 0, RustboroCity_DevonCorp_1F_EventScript_157454, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_WOMAN_4, 0, 5, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, RustboroCity_DevonCorp_1F_EventScript_15748F, 0, 0, 0
+
+RustboroCity_DevonCorp_1F_MapWarps:: @ 8388854
+ warp_def 5, 8, 0, 5, RustboroCity
+ warp_def 6, 8, 0, 6, RustboroCity
+ warp_def 14, 1, 0, 0, RustboroCity_DevonCorp_2F
+
+RustboroCity_DevonCorp_1F_MapEvents:: @ 838886C
+ map_events RustboroCity_DevonCorp_1F_MapObjects, RustboroCity_DevonCorp_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/RustboroCity_DevonCorp_2F.s b/data/maps/events/RustboroCity_DevonCorp_2F.s
new file mode 100644
index 000000000..f9c5a8665
--- /dev/null
+++ b/data/maps/events/RustboroCity_DevonCorp_2F.s
@@ -0,0 +1,14 @@
+RustboroCity_DevonCorp_2F_MapObjects:: @ 8388880
+ object_event 1, MAP_OBJ_GFX_SCIENTIST_1, 0, 6, 0, 5, 0, 3, 7, 0, 0, 0, 0, 0, 0, RustboroCity_DevonCorp_2F_EventScript_1574E2, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SCIENTIST_1, 0, 1, 0, 5, 0, 3, 10, 0, 0, 0, 0, 0, 0, RustboroCity_DevonCorp_2F_EventScript_1574F9, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_SCIENTIST_1, 0, 2, 0, 6, 0, 3, 15, 0, 0, 0, 0, 0, 0, RustboroCity_DevonCorp_2F_EventScript_157523, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_SCIENTIST_1, 0, 10, 0, 5, 0, 3, 7, 160, 0, 0, 0, 0, 0, RustboroCity_DevonCorp_2F_EventScript_15754D, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_SCIENTIST_1, 0, 14, 0, 8, 0, 3, 7, 17, 0, 0, 0, 0, 0, RustboroCity_DevonCorp_2F_EventScript_157564, 0, 0, 0
+
+RustboroCity_DevonCorp_2F_MapWarps:: @ 83888F8
+ warp_def 14, 1, 0, 2, RustboroCity_DevonCorp_1F
+ warp_def 2, 1, 0, 0, RustboroCity_DevonCorp_3F
+
+RustboroCity_DevonCorp_2F_MapEvents:: @ 8388908
+ map_events RustboroCity_DevonCorp_2F_MapObjects, RustboroCity_DevonCorp_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/RustboroCity_DevonCorp_3F.s b/data/maps/events/RustboroCity_DevonCorp_3F.s
new file mode 100644
index 000000000..a0b6f8ad9
--- /dev/null
+++ b/data/maps/events/RustboroCity_DevonCorp_3F.s
@@ -0,0 +1,15 @@
+RustboroCity_DevonCorp_3F_MapObjects:: @ 838891C
+ object_event 1, MAP_OBJ_GFX_GENTLEMAN, 0, 17, 0, 5, 0, 3, 9, 0, 0, 0, 0, 0, 0, RustboroCity_DevonCorp_3F_EventScript_15783B, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_2, 0, 3, 0, 5, 0, 3, 10, 0, 0, 0, 0, 0, 0, RustboroCity_DevonCorp_3F_EventScript_1578B0, 949, 0, 0
+ object_event 3, MAP_OBJ_GFX_GENTLEMAN, 0, 15, 0, 5, 0, 3, 76, 17, 0, 0, 0, 0, 0, RustboroCity_DevonCorp_3F_EventScript_15783B, 0, 0, 0
+
+RustboroCity_DevonCorp_3F_MapWarps:: @ 8388964
+ warp_def 2, 1, 0, 1, RustboroCity_DevonCorp_2F
+
+RustboroCity_DevonCorp_3F_MapBGEvents:: @ 838896C
+ bg_event 1, 5, 3, 0, 0, RustboroCity_DevonCorp_3F_EventScript_1578CF
+ bg_event 1, 7, 3, 0, 0, RustboroCity_DevonCorp_3F_EventScript_1578CF
+
+RustboroCity_DevonCorp_3F_MapEvents:: @ 8388984
+ map_events RustboroCity_DevonCorp_3F_MapObjects, RustboroCity_DevonCorp_3F_MapWarps, 0x0, RustboroCity_DevonCorp_3F_MapBGEvents
+
diff --git a/data/maps/events/RustboroCity_Flat1_1F.s b/data/maps/events/RustboroCity_Flat1_1F.s
new file mode 100644
index 000000000..252fd1423
--- /dev/null
+++ b/data/maps/events/RustboroCity_Flat1_1F.s
@@ -0,0 +1,12 @@
+RustboroCity_Flat1_1F_MapObjects:: @ 8388CB8
+ object_event 1, MAP_OBJ_GFX_MAN_4, 0, 9, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, RustboroCity_Flat1_1F_EventScript_157C60, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_7, 0, 12, 0, 4, 0, 3, 9, 0, 0, 0, 0, 0, 0, RustboroCity_Flat1_1F_EventScript_157C69, 0, 0, 0
+
+RustboroCity_Flat1_1F_MapWarps:: @ 8388CE8
+ warp_def 6, 7, 0, 1, RustboroCity
+ warp_def 7, 7, 0, 1, RustboroCity
+ warp_def 2, 1, 0, 0, RustboroCity_Flat1_2F
+
+RustboroCity_Flat1_1F_MapEvents:: @ 8388D00
+ map_events RustboroCity_Flat1_1F_MapObjects, RustboroCity_Flat1_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/RustboroCity_Flat1_2F.s b/data/maps/events/RustboroCity_Flat1_2F.s
new file mode 100644
index 000000000..7041d8f6e
--- /dev/null
+++ b/data/maps/events/RustboroCity_Flat1_2F.s
@@ -0,0 +1,9 @@
+RustboroCity_Flat1_2F_MapObjects:: @ 8388D14
+ object_event 1, MAP_OBJ_GFX_WOMAN_2, 0, 8, 0, 6, 0, 3, 5, 19, 0, 0, 0, 0, 0, RustboroCity_Flat1_2F_EventScript_157C73, 0, 0, 0
+
+RustboroCity_Flat1_2F_MapWarps:: @ 8388D2C
+ warp_def 2, 1, 0, 2, RustboroCity_Flat1_1F
+
+RustboroCity_Flat1_2F_MapEvents:: @ 8388D34
+ map_events RustboroCity_Flat1_2F_MapObjects, RustboroCity_Flat1_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/RustboroCity_Flat2_1F.s b/data/maps/events/RustboroCity_Flat2_1F.s
new file mode 100644
index 000000000..8f958c45f
--- /dev/null
+++ b/data/maps/events/RustboroCity_Flat2_1F.s
@@ -0,0 +1,12 @@
+RustboroCity_Flat2_1F_MapObjects:: @ 8388E44
+ object_event 1, MAP_OBJ_GFX_SKITTY, 0, 11, 0, 4, 0, 3, 9, 0, 0, 0, 0, 0, 0, RustboroCity_Flat2_1F_EventScript_157D83, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_OLD_WOMAN_2, 0, 8, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, RustboroCity_Flat2_1F_EventScript_157D7A, 0, 0, 0
+
+RustboroCity_Flat2_1F_MapWarps:: @ 8388E74
+ warp_def 2, 8, 0, 10, RustboroCity
+ warp_def 3, 8, 0, 10, RustboroCity
+ warp_def 3, 1, 0, 0, RustboroCity_Flat2_2F
+
+RustboroCity_Flat2_1F_MapEvents:: @ 8388E8C
+ map_events RustboroCity_Flat2_1F_MapObjects, RustboroCity_Flat2_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/RustboroCity_Flat2_2F.s b/data/maps/events/RustboroCity_Flat2_2F.s
new file mode 100644
index 000000000..1fdd2fa7c
--- /dev/null
+++ b/data/maps/events/RustboroCity_Flat2_2F.s
@@ -0,0 +1,11 @@
+RustboroCity_Flat2_2F_MapObjects:: @ 8388EA0
+ object_event 1, MAP_OBJ_GFX_OLD_MAN_2, 0, 11, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, RustboroCity_Flat2_2F_EventScript_157D97, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 7, 0, 3, 0, 3, 5, 2, 0, 0, 0, 0, 0, RustboroCity_Flat2_2F_EventScript_157DA0, 0, 0, 0
+
+RustboroCity_Flat2_2F_MapWarps:: @ 8388ED0
+ warp_def 3, 1, 0, 2, RustboroCity_Flat2_1F
+ warp_def 1, 1, 0, 0, RustboroCity_Flat2_3F
+
+RustboroCity_Flat2_2F_MapEvents:: @ 8388EE0
+ map_events RustboroCity_Flat2_2F_MapObjects, RustboroCity_Flat2_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/RustboroCity_Flat2_3F.s b/data/maps/events/RustboroCity_Flat2_3F.s
new file mode 100644
index 000000000..acb76be3f
--- /dev/null
+++ b/data/maps/events/RustboroCity_Flat2_3F.s
@@ -0,0 +1,10 @@
+RustboroCity_Flat2_3F_MapObjects:: @ 8388EF4
+ object_event 1, MAP_OBJ_GFX_MAN_7, 0, 7, 0, 3, 0, 3, 5, 2, 0, 0, 0, 0, 0, RustboroCity_Flat2_3F_EventScript_157DDA, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_1, 0, 12, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, RustboroCity_Flat2_3F_EventScript_157DE3, 0, 0, 0
+
+RustboroCity_Flat2_3F_MapWarps:: @ 8388F24
+ warp_def 1, 1, 0, 1, RustboroCity_Flat2_2F
+
+RustboroCity_Flat2_3F_MapEvents:: @ 8388F2C
+ map_events RustboroCity_Flat2_3F_MapObjects, RustboroCity_Flat2_3F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/RustboroCity_Gym.s b/data/maps/events/RustboroCity_Gym.s
new file mode 100644
index 000000000..929a4ffbd
--- /dev/null
+++ b/data/maps/events/RustboroCity_Gym.s
@@ -0,0 +1,17 @@
+RustboroCity_Gym_MapObjects:: @ 8388998
+ object_event 1, MAP_OBJ_GFX_ROXANNE, 0, 5, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, RustboroCity_Gym_EventScript_1578D9, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_YOUNGSTER, 0, 7, 0, 12, 0, 3, 9, 0, 0, 1, 0, 3, 0, RustboroCity_Gym_EventScript_157960, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_YOUNGSTER, 0, 3, 0, 7, 0, 3, 10, 0, 0, 1, 0, 3, 0, RustboroCity_Gym_EventScript_157977, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_MAN_2, 0, 3, 0, 17, 0, 3, 8, 0, 0, 0, 0, 0, 0, RustboroCity_Gym_EventScript_15798E, 0, 0, 0
+
+RustboroCity_Gym_MapWarps:: @ 83889F8
+ warp_def 5, 18, 0, 0, RustboroCity
+ warp_def 6, 18, 0, 0, RustboroCity
+
+RustboroCity_Gym_MapBGEvents:: @ 8388A08
+ bg_event 2, 17, 0, 1, 0, RustboroCity_Gym_EventScript_1579AD
+ bg_event 8, 17, 0, 1, 0, RustboroCity_Gym_EventScript_1579BD
+
+RustboroCity_Gym_MapEvents:: @ 8388A20
+ map_events RustboroCity_Gym_MapObjects, RustboroCity_Gym_MapWarps, 0x0, RustboroCity_Gym_MapBGEvents
+
diff --git a/data/maps/events/RustboroCity_House1.s b/data/maps/events/RustboroCity_House1.s
new file mode 100644
index 000000000..bf11dafb5
--- /dev/null
+++ b/data/maps/events/RustboroCity_House1.s
@@ -0,0 +1,11 @@
+RustboroCity_House1_MapObjects:: @ 8388D48
+ object_event 1, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 6, 0, 4, 0, 3, 9, 0, 0, 0, 0, 0, 0, RustboroCity_House1_EventScript_157C7D, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_HIKER, 0, 9, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, RustboroCity_House1_EventScript_157D1D, 0, 0, 0
+
+RustboroCity_House1_MapWarps:: @ 8388D78
+ warp_def 5, 7, 0, 7, RustboroCity
+ warp_def 6, 7, 0, 7, RustboroCity
+
+RustboroCity_House1_MapEvents:: @ 8388D88
+ map_events RustboroCity_House1_MapObjects, RustboroCity_House1_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/RustboroCity_House2.s b/data/maps/events/RustboroCity_House2.s
new file mode 100644
index 000000000..f069ba0f5
--- /dev/null
+++ b/data/maps/events/RustboroCity_House2.s
@@ -0,0 +1,11 @@
+RustboroCity_House2_MapObjects:: @ 8388DF0
+ object_event 1, MAP_OBJ_GFX_WOMAN_2, 0, 4, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, RustboroCity_House2_EventScript_157D67, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_LITTLE_GIRL_2, 0, 4, 0, 5, 0, 3, 7, 0, 0, 0, 0, 0, 0, RustboroCity_House2_EventScript_157D70, 0, 0, 0
+
+RustboroCity_House2_MapWarps:: @ 8388E20
+ warp_def 5, 8, 0, 9, RustboroCity
+ warp_def 6, 8, 0, 9, RustboroCity
+
+RustboroCity_House2_MapEvents:: @ 8388E30
+ map_events RustboroCity_House2_MapObjects, RustboroCity_House2_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/RustboroCity_House3.s b/data/maps/events/RustboroCity_House3.s
new file mode 100644
index 000000000..5c57aeee0
--- /dev/null
+++ b/data/maps/events/RustboroCity_House3.s
@@ -0,0 +1,12 @@
+RustboroCity_House3_MapObjects:: @ 8388F40
+ object_event 1, MAP_OBJ_GFX_OLD_MAN_2, 0, 4, 0, 5, 0, 3, 10, 0, 0, 0, 0, 0, 0, RustboroCity_House3_EventScript_157DED, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_OLD_WOMAN_2, 0, 7, 0, 5, 0, 3, 9, 0, 0, 0, 0, 0, 0, RustboroCity_House3_EventScript_157DF6, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_PIKACHU, 0, 4, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, RustboroCity_House3_EventScript_157DFF, 0, 0, 0
+
+RustboroCity_House3_MapWarps:: @ 8388F88
+ warp_def 5, 8, 0, 11, RustboroCity
+ warp_def 6, 8, 0, 11, RustboroCity
+
+RustboroCity_House3_MapEvents:: @ 8388F98
+ map_events RustboroCity_House3_MapObjects, RustboroCity_House3_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/RustboroCity_Mart.s b/data/maps/events/RustboroCity_Mart.s
new file mode 100644
index 000000000..ece3348c1
--- /dev/null
+++ b/data/maps/events/RustboroCity_Mart.s
@@ -0,0 +1,13 @@
+RustboroCity_Mart_MapObjects:: @ 8388C34
+ object_event 1, MAP_OBJ_GFX_MART_EMPLOYEE, 0, 1, 0, 3, 0, 3, 10, 0, 0, 0, 0, 0, 0, RustboroCity_Mart_EventScript_157BD4, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_BOY_1, 0, 2, 0, 5, 0, 3, 7, 0, 0, 0, 0, 0, 0, RustboroCity_Mart_EventScript_157C4D, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_WOMAN_2, 0, 8, 0, 4, 0, 3, 3, 16, 0, 0, 0, 0, 0, RustboroCity_Mart_EventScript_157C44, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_BUG_CATCHER, 0, 8, 0, 2, 0, 3, 7, 17, 0, 0, 0, 0, 0, RustboroCity_Mart_EventScript_157C56, 0, 0, 0
+
+RustboroCity_Mart_MapWarps:: @ 8388C94
+ warp_def 3, 7, 0, 2, RustboroCity
+ warp_def 4, 7, 0, 2, RustboroCity
+
+RustboroCity_Mart_MapEvents:: @ 8388CA4
+ map_events RustboroCity_Mart_MapObjects, RustboroCity_Mart_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/RustboroCity_PokemonCenter_1F.s b/data/maps/events/RustboroCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..36e1e386d
--- /dev/null
+++ b/data/maps/events/RustboroCity_PokemonCenter_1F.s
@@ -0,0 +1,14 @@
+RustboroCity_PokemonCenter_1F_MapObjects:: @ 8388B24
+ object_event 1, MAP_OBJ_GFX_NURSE, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, RustboroCity_PokemonCenter_1F_EventScript_157B88, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_1, 0, 11, 0, 2, 0, 3, 9, 0, 0, 0, 0, 0, 0, RustboroCity_PokemonCenter_1F_EventScript_157B96, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_BOY_1, 0, 3, 0, 4, 0, 3, 2, 17, 0, 0, 0, 0, 0, RustboroCity_PokemonCenter_1F_EventScript_157B9F, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_GIRL_3, 0, 10, 0, 6, 0, 3, 10, 0, 0, 0, 0, 0, 0, RustboroCity_PokemonCenter_1F_EventScript_157BA8, 0, 0, 0
+
+RustboroCity_PokemonCenter_1F_MapWarps:: @ 8388B84
+ warp_def 7, 8, 3, 3, RustboroCity
+ warp_def 6, 8, 3, 3, RustboroCity
+ warp_def 1, 6, 4, 0, RustboroCity_PokemonCenter_2F
+
+RustboroCity_PokemonCenter_1F_MapEvents:: @ 8388B9C
+ map_events RustboroCity_PokemonCenter_1F_MapObjects, RustboroCity_PokemonCenter_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/RustboroCity_PokemonCenter_2F.s b/data/maps/events/RustboroCity_PokemonCenter_2F.s
new file mode 100644
index 000000000..df450209c
--- /dev/null
+++ b/data/maps/events/RustboroCity_PokemonCenter_2F.s
@@ -0,0 +1,15 @@
+RustboroCity_PokemonCenter_2F_MapObjects:: @ 8388BB0
+ object_event 1, MAP_OBJ_GFX_TEALA, 0, 4, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, RustboroCity_PokemonCenter_2F_EventScript_157BC1, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_TEALA, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, RustboroCity_PokemonCenter_2F_EventScript_157BC7, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_TEALA, 0, 10, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, RustboroCity_PokemonCenter_2F_EventScript_157BCD, 0, 0, 0
+
+RustboroCity_PokemonCenter_2F_MapWarps:: @ 8388BF8
+ warp_def 1, 5, 4, 2, RustboroCity_PokemonCenter_1F
+ warp_def 5, 1, 0, 0, SingleBattleColosseum
+ warp_def 8, 1, 0, 0, TradeCenter
+ warp_def 11, 1, 0, 0, RecordCorner
+ warp_def 0, 0, 0, 0, DoubleBattleColosseum
+
+RustboroCity_PokemonCenter_2F_MapEvents:: @ 8388C20
+ map_events RustboroCity_PokemonCenter_2F_MapObjects, RustboroCity_PokemonCenter_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/RustboroCity_PokemonSchool.s b/data/maps/events/RustboroCity_PokemonSchool.s
new file mode 100644
index 000000000..7dd504a9b
--- /dev/null
+++ b/data/maps/events/RustboroCity_PokemonSchool.s
@@ -0,0 +1,22 @@
+RustboroCity_PokemonSchool_MapObjects:: @ 8388A34
+ object_event 1, MAP_OBJ_GFX_BOY_5, 0, 8, 0, 6, 0, 3, 10, 0, 0, 0, 0, 0, 0, RustboroCity_PokemonSchool_EventScript_157A98, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_BOY_5, 0, 9, 0, 6, 0, 3, 9, 0, 0, 0, 0, 0, 0, RustboroCity_PokemonSchool_EventScript_157AA1, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_BOY_4, 0, 3, 0, 8, 0, 3, 7, 0, 0, 0, 0, 0, 0, RustboroCity_PokemonSchool_EventScript_157AAA, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_LASS, 0, 10, 0, 8, 0, 3, 7, 0, 0, 0, 0, 0, 0, RustboroCity_PokemonSchool_EventScript_157AB3, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_SCHOOL_KID_M, 0, 3, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, RustboroCity_PokemonSchool_EventScript_157ABC, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_GENTLEMAN, 0, 5, 0, 3, 0, 3, 8, 17, 0, 0, 0, 0, 0, RustboroCity_PokemonSchool_EventScript_157ACE, 0, 0, 0
+
+RustboroCity_PokemonSchool_MapWarps:: @ 8388AC4
+ warp_def 5, 10, 0, 4, RustboroCity
+ warp_def 6, 10, 0, 4, RustboroCity
+
+RustboroCity_PokemonSchool_MapBGEvents:: @ 8388AD4
+ bg_event 5, 2, 0, 0, 0, RustboroCity_PokemonSchool_EventScript_1579E2
+ bg_event 4, 2, 0, 0, 0, RustboroCity_PokemonSchool_EventScript_1579E2
+ bg_event 6, 2, 0, 0, 0, RustboroCity_PokemonSchool_EventScript_1579E2
+ bg_event 7, 2, 0, 0, 0, RustboroCity_PokemonSchool_EventScript_1579E2
+ bg_event 3, 5, 0, 0, 0, RustboroCity_PokemonSchool_EventScript_157AC5
+
+RustboroCity_PokemonSchool_MapEvents:: @ 8388B10
+ map_events RustboroCity_PokemonSchool_MapObjects, RustboroCity_PokemonSchool_MapWarps, 0x0, RustboroCity_PokemonSchool_MapBGEvents
+
diff --git a/data/maps/events/RusturfTunnel.s b/data/maps/events/RusturfTunnel.s
new file mode 100644
index 000000000..a37826dc3
--- /dev/null
+++ b/data/maps/events/RusturfTunnel.s
@@ -0,0 +1,27 @@
+RusturfTunnel_MapObjects:: @ 838BD2C
+ object_event 1, MAP_OBJ_GFX_BLACK_BELT, 0, 23, 0, 5, 0, 3, 10, 0, 0, 0, 0, 0, 0, RusturfTunnel_EventScript_15C799, 807, 0, 0
+ object_event 2, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 24, 0, 5, 0, 3, 1, 0, 0, 0, 0, 0, 0, RusturfTunnel_EventScript_1B0EB7, 931, 0, 0
+ object_event 3, MAP_OBJ_GFX_ITEM_BALL, 0, 3, 0, 1, 0, 3, 1, 0, 0, 0, 0, 0, 0, RusturfTunnel_EventScript_1B1786, 1048, 0, 0
+ object_event 4, MAP_OBJ_GFX_ITEM_BALL, 0, 30, 0, 2, 0, 3, 1, 0, 0, 0, 0, 0, 0, RusturfTunnel_EventScript_1B1793, 1049, 0, 0
+ object_event 5, MAP_OBJ_GFX_OLD_MAN_1, 0, 5, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, 0x0, 879, 0, 0
+ object_event 6, 241, 0, 14, 0, 5, 0, 3, 9, 0, 0, 0, 0, 0, 0, RusturfTunnel_EventScript_15C9EA, 878, 0, 0
+ object_event 7, MAP_OBJ_GFX_WINGULL, 0, 14, 0, 4, 0, 3, 9, 0, 0, 0, 0, 0, 0, RusturfTunnel_EventScript_15C9D7, 880, 0, 0
+ object_event 8, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 24, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, RusturfTunnel_EventScript_1B0EB7, 932, 0, 0
+ object_event 9, MAP_OBJ_GFX_HIKER, 0, 32, 0, 13, 0, 3, 9, 17, 0, 1, 0, 3, 0, RusturfTunnel_EventScript_15CACD, 0, 0, 0
+ object_event 10, MAP_OBJ_GFX_WOMAN_3, 0, 25, 0, 4, 0, 3, 9, 17, 0, 0, 0, 0, 0, RusturfTunnel_EventScript_15C782, 983, 0, 0
+
+RusturfTunnel_MapWarps:: @ 838BE1C
+ warp_def 4, 10, 3, 0, Route116
+ warp_def 29, 16, 3, 4, VerdanturfTown
+ warp_def 18, 20, 3, 2, Route116
+
+RusturfTunnel_MapCoordEvents:: @ 838BE34
+ coord_event 23, 4, 3, 0, 0, 0, 0, RusturfTunnel_EventScript_15C999
+ coord_event 9, 4, 3, 0, 0x409a, 2, 0, RusturfTunnel_EventScript_15C9AB
+ coord_event 9, 5, 3, 0, 0x409a, 2, 0, RusturfTunnel_EventScript_15C9AB
+ coord_event 25, 4, 3, 0, 0, 0, 0, RusturfTunnel_EventScript_15C99F
+ coord_event 25, 5, 3, 0, 0, 0, 0, RusturfTunnel_EventScript_15C9A5
+
+RusturfTunnel_MapEvents:: @ 838BE84
+ map_events RusturfTunnel_MapObjects, RusturfTunnel_MapWarps, RusturfTunnel_MapCoordEvents, 0x0
+
diff --git a/data/maps/events/SSTidalCorridor.s b/data/maps/events/SSTidalCorridor.s
new file mode 100644
index 000000000..58fe0f3db
--- /dev/null
+++ b/data/maps/events/SSTidalCorridor.s
@@ -0,0 +1,34 @@
+SSTidalCorridor_MapObjects:: @ 83916F8
+ object_event 1, MAP_OBJ_GFX_SAILOR, 0, 1, 0, 11, 0, 3, 7, 0, 0, 0, 0, 0, 0, SSTidalCorridor_EventScript_15FDD6, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SAILOR, 0, 16, 0, 7, 0, 3, 3, 32, 0, 0, 0, 0, 0, SSTidalCorridor_EventScript_15FE60, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_OLD_MAN_1, 0, 9, 0, 2, 0, 3, 8, 17, 0, 0, 0, 0, 0, SSTidalCorridor_EventScript_15FD96, 950, 0, 0
+ object_event 4, MAP_OBJ_GFX_WINGULL, 0, 7, 0, 2, 0, 3, 1, 17, 0, 0, 0, 0, 0, SSTidalCorridor_EventScript_15FD9F, 950, 0, 0
+
+SSTidalCorridor_MapWarps:: @ 8391758
+ warp_def 4, 9, 3, 0, SSTidalRooms
+ warp_def 7, 9, 3, 2, SSTidalRooms
+ warp_def 10, 9, 3, 4, SSTidalRooms
+ warp_def 13, 9, 3, 6, SSTidalRooms
+ warp_def 4, 3, 3, 8, SSTidalRooms
+ warp_def 7, 3, 3, 9, SSTidalRooms
+ warp_def 10, 3, 3, 10, SSTidalRooms
+ warp_def 13, 3, 3, 11, SSTidalRooms
+ warp_def 16, 2, 3, 0, SSTidalLowerDeck
+
+SSTidalCorridor_MapBGEvents:: @ 83917A0
+ bg_event 2, 1, 0, 0, 0, SSTidalCorridor_EventScript_15FE3A
+ bg_event 4, 1, 0, 0, 0, SSTidalCorridor_EventScript_15FE3A
+ bg_event 6, 1, 0, 0, 0, SSTidalCorridor_EventScript_15FE3A
+ bg_event 8, 1, 0, 0, 0, SSTidalCorridor_EventScript_15FE3A
+ bg_event 10, 1, 0, 0, 0, SSTidalCorridor_EventScript_15FE3A
+ bg_event 12, 1, 0, 0, 0, SSTidalCorridor_EventScript_15FE3A
+ bg_event 14, 1, 0, 0, 0, SSTidalCorridor_EventScript_15FE3A
+ bg_event 16, 1, 0, 0, 0, SSTidalCorridor_EventScript_15FE3A
+ bg_event 5, 9, 0, 1, 0, SSTidalCorridor_EventScript_15FDB2
+ bg_event 8, 9, 0, 1, 0, SSTidalCorridor_EventScript_15FDBB
+ bg_event 11, 9, 0, 1, 0, SSTidalCorridor_EventScript_15FDC4
+ bg_event 14, 9, 0, 1, 0, SSTidalCorridor_EventScript_15FDCD
+
+SSTidalCorridor_MapEvents:: @ 8391830
+ map_events SSTidalCorridor_MapObjects, SSTidalCorridor_MapWarps, 0x0, SSTidalCorridor_MapBGEvents
+
diff --git a/data/maps/events/SSTidalLowerDeck.s b/data/maps/events/SSTidalLowerDeck.s
new file mode 100644
index 000000000..6309cc767
--- /dev/null
+++ b/data/maps/events/SSTidalLowerDeck.s
@@ -0,0 +1,13 @@
+SSTidalLowerDeck_MapObjects:: @ 8391844
+ object_event 1, MAP_OBJ_GFX_SAILOR, 0, 10, 0, 4, 0, 3, 46, 68, 0, 1, 0, 3, 0, SSTidalLowerDeck_EventScript_15FED7, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SAILOR, 0, 7, 0, 4, 0, 3, 50, 71, 0, 1, 0, 3, 0, SSTidalLowerDeck_EventScript_15FEEE, 0, 0, 0
+
+SSTidalLowerDeck_MapWarps:: @ 8391874
+ warp_def 15, 2, 3, 8, SSTidalCorridor
+
+SSTidalLowerDeck_MapBGEvents:: @ 839187C
+ bg_event 0, 2, 0, 7, 0, ITEM_LEFTOVERS, 35, 0
+
+SSTidalLowerDeck_MapEvents:: @ 8391888
+ map_events SSTidalLowerDeck_MapObjects, SSTidalLowerDeck_MapWarps, 0x0, SSTidalLowerDeck_MapBGEvents
+
diff --git a/data/maps/events/SSTidalRooms.s b/data/maps/events/SSTidalRooms.s
new file mode 100644
index 000000000..c0eb92d5a
--- /dev/null
+++ b/data/maps/events/SSTidalRooms.s
@@ -0,0 +1,31 @@
+SSTidalRooms_MapObjects:: @ 839189C
+ object_event 1, MAP_OBJ_GFX_MAN_3, 0, 4, 0, 7, 0, 3, 10, 0, 0, 1, 0, 0, 0, SSTidalRooms_EventScript_15FF5D, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_GENTLEMAN, 0, 34, 0, 11, 0, 3, 9, 0, 0, 1, 0, 3, 0, SSTidalRooms_EventScript_15FF74, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_GENTLEMAN, 0, 21, 0, 5, 0, 3, 10, 0, 0, 1, 0, 0, 0, SSTidalRooms_EventScript_15FF8B, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_MAN_5, 0, 7, 0, 13, 0, 3, 8, 0, 0, 1, 0, 0, 0, SSTidalRooms_EventScript_15FFA2, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_WOMAN_5, 0, 6, 0, 13, 0, 3, 8, 0, 0, 1, 0, 0, 0, SSTidalRooms_EventScript_15FFBD, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_BOY_4, 0, 22, 0, 11, 0, 3, 8, 17, 0, 1, 0, 3, 0, SSTidalRooms_EventScript_15FFD8, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_WOMAN_3, 0, 15, 0, 6, 0, 3, 9, 0, 0, 1, 0, 0, 0, SSTidalRooms_EventScript_15FFEF, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_MANIAC, 0, 28, 0, 5, 0, 3, 7, 17, 0, 0, 0, 0, 0, SSTidalRooms_EventScript_15FF06, 951, 0, 0
+
+SSTidalRooms_MapWarps:: @ 839195C
+ warp_def 4, 16, 0, 0, SSTidalCorridor
+ warp_def 5, 16, 0, 0, SSTidalCorridor
+ warp_def 13, 16, 0, 1, SSTidalCorridor
+ warp_def 14, 16, 0, 1, SSTidalCorridor
+ warp_def 22, 16, 0, 2, SSTidalCorridor
+ warp_def 23, 16, 0, 2, SSTidalCorridor
+ warp_def 31, 16, 0, 3, SSTidalCorridor
+ warp_def 32, 16, 0, 3, SSTidalCorridor
+ warp_def 4, 1, 0, 4, SSTidalCorridor
+ warp_def 13, 1, 0, 5, SSTidalCorridor
+ warp_def 22, 1, 0, 6, SSTidalCorridor
+ warp_def 31, 1, 0, 7, SSTidalCorridor
+
+SSTidalRooms_MapBGEvents:: @ 83919BC
+ bg_event 15, 11, 0, 0, 0, SSTidalRooms_EventScript_15FF47
+ bg_event 15, 12, 0, 0, 0, SSTidalRooms_EventScript_15FF47
+
+SSTidalRooms_MapEvents:: @ 83919D4
+ map_events SSTidalRooms_MapObjects, SSTidalRooms_MapWarps, 0x0, SSTidalRooms_MapBGEvents
+
diff --git a/data/maps/events/SafariZone_Northeast.s b/data/maps/events/SafariZone_Northeast.s
new file mode 100644
index 000000000..be0fa2ffa
--- /dev/null
+++ b/data/maps/events/SafariZone_Northeast.s
@@ -0,0 +1,14 @@
+SafariZone_Northeast_MapObjects:: @ 8391A2C
+ object_event 1, MAP_OBJ_GFX_FISHERMAN, 0, 22, 0, 9, 0, 3, 2, 17, 0, 0, 0, 0, 0, SafariZone_Northeast_EventScript_160011, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_5, 0, 6, 0, 29, 0, 3, 2, 17, 0, 0, 0, 0, 0, SafariZone_Northeast_EventScript_16001A, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 25, 0, 10, 0, 3, 1, 17, 0, 0, 0, 0, 0, SafariZone_Northeast_EventScript_1B0EB7, 17, 0, 0
+ object_event 4, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 25, 0, 13, 0, 3, 1, 17, 0, 0, 0, 0, 0, SafariZone_Northeast_EventScript_1B0EB7, 18, 0, 0
+ object_event 5, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 28, 0, 14, 0, 3, 1, 17, 0, 0, 0, 0, 0, SafariZone_Northeast_EventScript_1B0EB7, 19, 0, 0
+ object_event 6, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 23, 0, 6, 0, 3, 1, 17, 0, 0, 0, 0, 0, SafariZone_Northeast_EventScript_1B0EB7, 20, 0, 0
+ object_event 7, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 20, 0, 7, 0, 3, 1, 17, 0, 0, 0, 0, 0, SafariZone_Northeast_EventScript_1B0EB7, 21, 0, 0
+ object_event 8, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 27, 0, 7, 0, 3, 1, 17, 0, 0, 0, 0, 0, SafariZone_Northeast_EventScript_1B0EB7, 22, 0, 0
+ object_event 9, MAP_OBJ_GFX_ITEM_BALL, 0, 7, 0, 6, 0, 3, 1, 17, 0, 0, 0, 0, 0, SafariZone_Northeast_EventScript_1B1919, 1119, 0, 0
+
+SafariZone_Northeast_MapEvents:: @ 8391B04
+ map_events SafariZone_Northeast_MapObjects, 0x0, 0x0, 0x0
+
diff --git a/data/maps/events/SafariZone_Northwest.s b/data/maps/events/SafariZone_Northwest.s
new file mode 100644
index 000000000..700e88986
--- /dev/null
+++ b/data/maps/events/SafariZone_Northwest.s
@@ -0,0 +1,7 @@
+SafariZone_Northwest_MapObjects:: @ 83919E8
+ object_event 1, MAP_OBJ_GFX_MAN_1, 0, 8, 0, 8, 0, 5, 8, 0, 0, 0, 0, 0, 0, SafariZone_Northwest_EventScript_160007, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_ITEM_BALL, 0, 33, 0, 7, 0, 3, 1, 17, 0, 0, 0, 0, 0, SafariZone_Northwest_EventScript_1B190C, 1094, 0, 0
+
+SafariZone_Northwest_MapEvents:: @ 8391A18
+ map_events SafariZone_Northwest_MapObjects, 0x0, 0x0, 0x0
+
diff --git a/data/maps/events/SafariZone_RestHouse.s b/data/maps/events/SafariZone_RestHouse.s
new file mode 100644
index 000000000..2e0474133
--- /dev/null
+++ b/data/maps/events/SafariZone_RestHouse.s
@@ -0,0 +1,12 @@
+SafariZone_RestHouse_MapObjects:: @ 8391EC0
+ object_event 1, MAP_OBJ_GFX_YOUNGSTER, 0, 7, 0, 4, 0, 0, 10, 17, 0, 0, 0, 0, 0, SafariZone_RestHouse_EventScript_160C2F, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_PSYCHIC_M, 0, 8, 0, 4, 0, 0, 9, 17, 0, 0, 0, 0, 0, SafariZone_RestHouse_EventScript_160C38, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_FAT_MAN, 0, 2, 0, 5, 0, 3, 10, 17, 0, 0, 0, 0, 0, SafariZone_RestHouse_EventScript_160C41, 0, 0, 0
+
+SafariZone_RestHouse_MapWarps:: @ 8391F08
+ warp_def 3, 8, 0, 0, SafariZone_Southwest
+ warp_def 4, 8, 0, 0, SafariZone_Southwest
+
+SafariZone_RestHouse_MapEvents:: @ 8391F18
+ map_events SafariZone_RestHouse_MapObjects, SafariZone_RestHouse_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SafariZone_Southeast.s b/data/maps/events/SafariZone_Southeast.s
new file mode 100644
index 000000000..ab172ba0c
--- /dev/null
+++ b/data/maps/events/SafariZone_Southeast.s
@@ -0,0 +1,12 @@
+SafariZone_Southeast_MapObjects:: @ 8391B70
+ object_event 1, MAP_OBJ_GFX_CAMPER, 0, 32, 0, 34, 0, 4, 8, 0, 0, 0, 0, 0, 0, SafariZone_Southeast_EventScript_1600A7, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_BOY_1, 0, 26, 0, 28, 0, 3, 2, 17, 0, 0, 0, 0, 0, SafariZone_Southeast_EventScript_16008C, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MAN_5, 0, 16, 0, 6, 0, 5, 8, 0, 0, 0, 0, 0, 0, SafariZone_Southeast_EventScript_160095, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_YOUNGSTER, 0, 15, 0, 31, 0, 3, 2, 17, 0, 0, 0, 0, 0, SafariZone_Southeast_EventScript_16009E, 0, 0, 0
+
+SafariZone_Southeast_MapWarps:: @ 8391BD0
+ warp_def 32, 33, 0, 0, Route121_SafariZoneEntrance
+
+SafariZone_Southeast_MapEvents:: @ 8391BD8
+ map_events SafariZone_Southeast_MapObjects, SafariZone_Southeast_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SafariZone_Southwest.s b/data/maps/events/SafariZone_Southwest.s
new file mode 100644
index 000000000..b552c4d0f
--- /dev/null
+++ b/data/maps/events/SafariZone_Southwest.s
@@ -0,0 +1,13 @@
+SafariZone_Southwest_MapObjects:: @ 8391B18
+ object_event 1, MAP_OBJ_GFX_WOMAN_3, 0, 22, 0, 9, 0, 3, 8, 0, 0, 0, 0, 0, 0, SafariZone_Southwest_EventScript_160024, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_ITEM_BALL, 0, 0, 0, 37, 0, 3, 1, 17, 0, 0, 0, 0, 0, SafariZone_Southwest_EventScript_1B1926, 1131, 0, 0
+
+SafariZone_Southwest_MapWarps:: @ 8391B48
+ warp_def 29, 7, 3, 0, SafariZone_RestHouse
+
+SafariZone_Southwest_MapBGEvents:: @ 8391B50
+ bg_event 32, 7, 3, 0, 0, SafariZone_Southwest_EventScript_16002D
+
+SafariZone_Southwest_MapEvents:: @ 8391B5C
+ map_events SafariZone_Southwest_MapObjects, SafariZone_Southwest_MapWarps, 0x0, SafariZone_Southwest_MapBGEvents
+
diff --git a/data/maps/events/ScorchedSlab.s b/data/maps/events/ScorchedSlab.s
new file mode 100644
index 000000000..508381a9c
--- /dev/null
+++ b/data/maps/events/ScorchedSlab.s
@@ -0,0 +1,9 @@
+ScorchedSlab_MapObjects:: @ 838E988
+ object_event 1, MAP_OBJ_GFX_ITEM_BALL, 0, 7, 0, 5, 0, 3, 1, 0, 0, 0, 0, 0, 0, ScorchedSlab_EventScript_1B18FF, 1079, 0, 0
+
+ScorchedSlab_MapWarps:: @ 838E9A0
+ warp_def 7, 16, 1, 1, Route120
+
+ScorchedSlab_MapEvents:: @ 838E9A8
+ map_events ScorchedSlab_MapObjects, ScorchedSlab_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SeafloorCavern_Entrance.s b/data/maps/events/SeafloorCavern_Entrance.s
new file mode 100644
index 000000000..5a3e66e57
--- /dev/null
+++ b/data/maps/events/SeafloorCavern_Entrance.s
@@ -0,0 +1,7 @@
+SeafloorCavern_Entrance_MapWarps:: @ 838D094
+ warp_def 10, 18, 3, 0, Underwater4
+ warp_def 10, 1, 3, 0, SeafloorCavern_Room1
+
+SeafloorCavern_Entrance_MapEvents:: @ 838D0A4
+ map_events 0x0, SeafloorCavern_Entrance_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SeafloorCavern_Room1.s b/data/maps/events/SeafloorCavern_Room1.s
new file mode 100644
index 000000000..804888368
--- /dev/null
+++ b/data/maps/events/SeafloorCavern_Room1.s
@@ -0,0 +1,15 @@
+SeafloorCavern_Room1_MapObjects:: @ 838D0B8
+ object_event 1, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 5, 0, 11, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room1_EventScript_1B0FCB, 17, 0, 0
+ object_event 2, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 12, 0, 11, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room1_EventScript_1B0FCB, 18, 0, 0
+ object_event 3, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 5, 0, 10, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room1_EventScript_1B0EB7, 19, 0, 0
+ object_event 4, 241, 0, 8, 0, 6, 0, 3, 1, 17, 0, 1, 0, 2, 0, SeafloorCavern_Room1_EventScript_15DA6D, 946, 0, 0
+ object_event 5, 241, 0, 15, 0, 10, 0, 3, 16, 17, 0, 1, 0, 3, 0, SeafloorCavern_Room1_EventScript_15DA84, 946, 0, 0
+
+SeafloorCavern_Room1_MapWarps:: @ 838D130
+ warp_def 5, 18, 3, 1, SeafloorCavern_Entrance
+ warp_def 17, 13, 3, 0, SeafloorCavern_Room5
+ warp_def 6, 2, 3, 0, SeafloorCavern_Room2
+
+SeafloorCavern_Room1_MapEvents:: @ 838D148
+ map_events SeafloorCavern_Room1_MapObjects, SeafloorCavern_Room1_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SeafloorCavern_Room2.s b/data/maps/events/SeafloorCavern_Room2.s
new file mode 100644
index 000000000..66ce9694e
--- /dev/null
+++ b/data/maps/events/SeafloorCavern_Room2.s
@@ -0,0 +1,20 @@
+SeafloorCavern_Room2_MapObjects:: @ 838D15C
+ object_event 1, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 6, 0, 14, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room2_EventScript_1B0FCB, 17, 0, 0
+ object_event 2, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 6, 0, 10, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room2_EventScript_1B0FCB, 18, 0, 0
+ object_event 3, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 6, 0, 6, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room2_EventScript_1B0FCB, 19, 0, 0
+ object_event 4, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 11, 0, 6, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room2_EventScript_1B0FCB, 20, 0, 0
+ object_event 5, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 11, 0, 10, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room2_EventScript_1B0FCB, 21, 0, 0
+ object_event 6, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 11, 0, 14, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room2_EventScript_1B0FCB, 22, 0, 0
+ object_event 7, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 11, 0, 9, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room2_EventScript_1B0EB7, 24, 0, 0
+ object_event 8, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 7, 0, 6, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room2_EventScript_1B0EB7, 25, 0, 0
+ object_event 9, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 15, 0, 11, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room2_EventScript_1B0FCB, 23, 0, 0
+
+SeafloorCavern_Room2_MapWarps:: @ 838D234
+ warp_def 12, 19, 3, 2, SeafloorCavern_Room1
+ warp_def 5, 19, 3, 0, SeafloorCavern_Room4
+ warp_def 5, 2, 3, 0, SeafloorCavern_Room6
+ warp_def 12, 2, 3, 0, SeafloorCavern_Room7
+
+SeafloorCavern_Room2_MapEvents:: @ 838D254
+ map_events SeafloorCavern_Room2_MapObjects, SeafloorCavern_Room2_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SeafloorCavern_Room3.s b/data/maps/events/SeafloorCavern_Room3.s
new file mode 100644
index 000000000..b653deafd
--- /dev/null
+++ b/data/maps/events/SeafloorCavern_Room3.s
@@ -0,0 +1,20 @@
+SeafloorCavern_Room3_MapObjects:: @ 838D268
+ object_event 1, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 6, 0, 13, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room3_EventScript_1B0FCB, 17, 0, 0
+ object_event 2, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 8, 0, 12, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room3_EventScript_1B0FCB, 18, 0, 0
+ object_event 3, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 7, 0, 11, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room3_EventScript_1B0FCB, 19, 0, 0
+ object_event 4, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 9, 0, 11, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room3_EventScript_1B0FCB, 20, 0, 0
+ object_event 5, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 6, 0, 10, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room3_EventScript_1B0FCB, 21, 0, 0
+ object_event 6, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 8, 0, 10, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room3_EventScript_1B0FCB, 22, 0, 0
+ object_event 7, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 5, 0, 9, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room3_EventScript_1B0FCB, 23, 0, 0
+ object_event 8, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 7, 0, 9, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room3_EventScript_1B0FCB, 24, 0, 0
+ object_event 9, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 9, 0, 9, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room3_EventScript_1B0FCB, 25, 0, 0
+ object_event 10, 242, 0, 10, 0, 5, 0, 3, 8, 17, 0, 1, 0, 3, 0, SeafloorCavern_Room3_EventScript_15DAA8, 946, 0, 0
+
+SeafloorCavern_Room3_MapWarps:: @ 838D358
+ warp_def 8, 1, 3, 1, SeafloorCavern_Room8
+ warp_def 10, 13, 3, 1, SeafloorCavern_Room7
+ warp_def 4, 15, 3, 1, SeafloorCavern_Room6
+
+SeafloorCavern_Room3_MapEvents:: @ 838D370
+ map_events SeafloorCavern_Room3_MapObjects, SeafloorCavern_Room3_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SeafloorCavern_Room4.s b/data/maps/events/SeafloorCavern_Room4.s
new file mode 100644
index 000000000..5d598836d
--- /dev/null
+++ b/data/maps/events/SeafloorCavern_Room4.s
@@ -0,0 +1,12 @@
+SeafloorCavern_Room4_MapObjects:: @ 838D384
+ object_event 1, 241, 0, 4, 0, 8, 0, 3, 23, 17, 0, 1, 0, 3, 0, SeafloorCavern_Room4_EventScript_15DACB, 946, 0, 0
+
+SeafloorCavern_Room4_MapWarps:: @ 838D39C
+ warp_def 13, 1, 3, 1, SeafloorCavern_Room2
+ warp_def 4, 1, 3, 1, SeafloorCavern_Room5
+ warp_def 9, 10, 3, 2, SeafloorCavern_Room5
+ warp_def 10, 15, 3, 1, SeafloorCavern_Entrance
+
+SeafloorCavern_Room4_MapEvents:: @ 838D3BC
+ map_events SeafloorCavern_Room4_MapObjects, SeafloorCavern_Room4_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SeafloorCavern_Room5.s b/data/maps/events/SeafloorCavern_Room5.s
new file mode 100644
index 000000000..2a037ad1d
--- /dev/null
+++ b/data/maps/events/SeafloorCavern_Room5.s
@@ -0,0 +1,16 @@
+SeafloorCavern_Room5_MapObjects:: @ 838D3D0
+ object_event 1, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 3, 0, 11, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room5_EventScript_1B0FCB, 17, 0, 0
+ object_event 2, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 4, 0, 11, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room5_EventScript_1B0FCB, 18, 0, 0
+ object_event 3, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 11, 0, 7, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room5_EventScript_1B0FCB, 19, 0, 0
+ object_event 4, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 3, 0, 13, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room5_EventScript_1B0EB7, 21, 0, 0
+ object_event 5, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 13, 0, 8, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room5_EventScript_1B0EB7, 22, 0, 0
+ object_event 6, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 12, 0, 8, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room5_EventScript_1B0FCB, 20, 0, 0
+
+SeafloorCavern_Room5_MapWarps:: @ 838D460
+ warp_def 4, 1, 3, 1, SeafloorCavern_Room1
+ warp_def 15, 12, 3, 1, SeafloorCavern_Room4
+ warp_def 7, 17, 3, 2, SeafloorCavern_Room4
+
+SeafloorCavern_Room5_MapEvents:: @ 838D478
+ map_events SeafloorCavern_Room5_MapObjects, SeafloorCavern_Room5_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SeafloorCavern_Room6.s b/data/maps/events/SeafloorCavern_Room6.s
new file mode 100644
index 000000000..42bb93ce7
--- /dev/null
+++ b/data/maps/events/SeafloorCavern_Room6.s
@@ -0,0 +1,8 @@
+SeafloorCavern_Room6_MapWarps:: @ 838D48C
+ warp_def 11, 21, 3, 2, SeafloorCavern_Room2
+ warp_def 4, 1, 3, 2, SeafloorCavern_Room3
+ warp_def 14, 8, 1, 1, SeafloorCavern_Entrance
+
+SeafloorCavern_Room6_MapEvents:: @ 838D4A4
+ map_events 0x0, SeafloorCavern_Room6_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SeafloorCavern_Room7.s b/data/maps/events/SeafloorCavern_Room7.s
new file mode 100644
index 000000000..7c6c05a1c
--- /dev/null
+++ b/data/maps/events/SeafloorCavern_Room7.s
@@ -0,0 +1,7 @@
+SeafloorCavern_Room7_MapWarps:: @ 838D4B8
+ warp_def 3, 23, 3, 3, SeafloorCavern_Room2
+ warp_def 5, 1, 3, 1, SeafloorCavern_Room3
+
+SeafloorCavern_Room7_MapEvents:: @ 838D4C8
+ map_events 0x0, SeafloorCavern_Room7_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SeafloorCavern_Room8.s b/data/maps/events/SeafloorCavern_Room8.s
new file mode 100644
index 000000000..dbd4af805
--- /dev/null
+++ b/data/maps/events/SeafloorCavern_Room8.s
@@ -0,0 +1,21 @@
+SeafloorCavern_Room8_MapObjects:: @ 838D4DC
+ object_event 1, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 4, 0, 7, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room8_EventScript_1B0FCB, 17, 0, 0
+ object_event 2, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 5, 0, 7, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room8_EventScript_1B0FCB, 18, 0, 0
+ object_event 3, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 6, 0, 7, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room8_EventScript_1B0FCB, 19, 0, 0
+ object_event 4, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 3, 0, 6, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room8_EventScript_1B0FCB, 20, 0, 0
+ object_event 5, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 7, 0, 6, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room8_EventScript_1B0FCB, 21, 0, 0
+ object_event 6, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 4, 0, 5, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room8_EventScript_1B0FCB, 22, 0, 0
+ object_event 7, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 5, 0, 5, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room8_EventScript_1B0FCB, 23, 0, 0
+ object_event 8, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 6, 0, 5, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room8_EventScript_1B0FCB, 24, 0, 0
+ object_event 9, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 3, 0, 4, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room8_EventScript_1B0FCB, 25, 0, 0
+ object_event 10, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 4, 0, 4, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room8_EventScript_1B0FCB, 26, 0, 0
+ object_event 11, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 6, 0, 4, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room8_EventScript_1B0FCB, 27, 0, 0
+ object_event 12, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 7, 0, 4, 0, 3, 1, 0, 0, 0, 0, 0, 0, SeafloorCavern_Room8_EventScript_1B0FCB, 28, 0, 0
+
+SeafloorCavern_Room8_MapWarps:: @ 838D5FC
+ warp_def 5, 2, 3, 0, SeafloorCavern_Room9
+ warp_def 5, 12, 3, 0, SeafloorCavern_Room3
+
+SeafloorCavern_Room8_MapEvents:: @ 838D60C
+ map_events SeafloorCavern_Room8_MapObjects, SeafloorCavern_Room8_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SeafloorCavern_Room9.s b/data/maps/events/SeafloorCavern_Room9.s
new file mode 100644
index 000000000..8fac0af19
--- /dev/null
+++ b/data/maps/events/SeafloorCavern_Room9.s
@@ -0,0 +1,18 @@
+SeafloorCavern_Room9_MapObjects:: @ 838D620
+ object_event 1, 248, 0, 17, 0, 38, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 859, 0, 0
+ object_event 2, 246, 0, 9, 0, 42, 0, 3, 10, 0, 0, 0, 0, 0, 0, 0x0, 828, 0, 0
+ object_event 3, 247, 0, 9, 0, 42, 0, 3, 10, 0, 0, 0, 0, 0, 0, 0x0, 829, 0, 0
+ object_event 4, 244, 0, 8, 0, 41, 0, 3, 10, 0, 0, 0, 0, 0, 0, 0x0, 831, 0, 0
+ object_event 5, 245, 0, 8, 0, 42, 0, 3, 10, 0, 0, 0, 0, 0, 0, 0x0, 831, 0, 0
+ object_event 6, MAP_OBJ_GFX_ITEM_BALL, 0, 14, 0, 5, 0, 3, 1, 17, 0, 0, 0, 0, 0, SeafloorCavern_Room9_EventScript_1B1A37, 1090, 0, 0
+ object_event 7, 249, 0, 17, 0, 38, 0, 3, 8, 17, 0, 0, 0, 0, 0, 0x0, 733, 0, 0
+
+SeafloorCavern_Room9_MapWarps:: @ 838D6C8
+ warp_def 5, 4, 3, 0, SeafloorCavern_Room8
+
+SeafloorCavern_Room9_MapCoordEvents:: @ 838D6D0
+ coord_event 17, 42, 3, 0, 0x40a2, 0, 0, SeafloorCavern_Room9_EventScript_15DAFA
+
+SeafloorCavern_Room9_MapEvents:: @ 838D6E0
+ map_events SeafloorCavern_Room9_MapObjects, SeafloorCavern_Room9_MapWarps, SeafloorCavern_Room9_MapCoordEvents, 0x0
+
diff --git a/data/maps/events/SealedChamber_InnerRoom.s b/data/maps/events/SealedChamber_InnerRoom.s
new file mode 100644
index 000000000..3f6077e8e
--- /dev/null
+++ b/data/maps/events/SealedChamber_InnerRoom.s
@@ -0,0 +1,17 @@
+SealedChamber_InnerRoom_MapWarps:: @ 838E900
+ warp_def 10, 19, 3, 0, SealedChamber_OuterRoom
+
+SealedChamber_InnerRoom_MapBGEvents:: @ 838E908
+ bg_event 10, 4, 0, 0, 0, SealedChamber_InnerRoom_EventScript_15F1E8
+ bg_event 6, 8, 0, 0, 0, SealedChamber_InnerRoom_EventScript_15F249
+ bg_event 14, 8, 0, 0, 0, SealedChamber_InnerRoom_EventScript_15F257
+ bg_event 4, 13, 0, 0, 0, SealedChamber_InnerRoom_EventScript_15F265
+ bg_event 16, 13, 0, 0, 0, SealedChamber_InnerRoom_EventScript_15F273
+ bg_event 6, 18, 0, 0, 0, SealedChamber_InnerRoom_EventScript_15F281
+ bg_event 14, 18, 0, 0, 0, SealedChamber_InnerRoom_EventScript_15F28F
+ bg_event 9, 4, 0, 0, 0, SealedChamber_InnerRoom_EventScript_15F1E8
+ bg_event 11, 4, 0, 0, 0, SealedChamber_InnerRoom_EventScript_15F1E8
+
+SealedChamber_InnerRoom_MapEvents:: @ 838E974
+ map_events 0x0, SealedChamber_InnerRoom_MapWarps, 0x0, SealedChamber_InnerRoom_MapBGEvents
+
diff --git a/data/maps/events/SealedChamber_OuterRoom.s b/data/maps/events/SealedChamber_OuterRoom.s
new file mode 100644
index 000000000..9b95fb06c
--- /dev/null
+++ b/data/maps/events/SealedChamber_OuterRoom.s
@@ -0,0 +1,37 @@
+SealedChamber_OuterRoom_MapWarps:: @ 838E788
+ warp_def 10, 2, 3, 0, SealedChamber_InnerRoom
+
+SealedChamber_OuterRoom_MapBGEvents:: @ 838E790
+ bg_event 5, 6, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F12C
+ bg_event 5, 9, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F13A
+ bg_event 5, 12, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F148
+ bg_event 5, 15, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F156
+ bg_event 11, 6, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F164
+ bg_event 11, 9, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F172
+ bg_event 11, 12, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F180
+ bg_event 11, 15, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F19C
+ bg_event 16, 6, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F18E
+ bg_event 16, 9, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F1AA
+ bg_event 10, 2, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F1B8
+ bg_event 6, 6, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F12C
+ bg_event 4, 6, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F12C
+ bg_event 4, 9, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F13A
+ bg_event 6, 9, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F13A
+ bg_event 4, 12, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F148
+ bg_event 6, 12, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F148
+ bg_event 4, 15, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F156
+ bg_event 6, 15, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F156
+ bg_event 10, 6, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F164
+ bg_event 12, 6, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F164
+ bg_event 10, 9, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F172
+ bg_event 12, 9, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F172
+ bg_event 10, 12, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F180
+ bg_event 12, 12, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F180
+ bg_event 10, 15, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F19C
+ bg_event 12, 15, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F19C
+ bg_event 9, 2, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F1D9
+ bg_event 11, 2, 0, 0, 0, SealedChamber_OuterRoom_EventScript_15F1D9
+
+SealedChamber_OuterRoom_MapEvents:: @ 838E8EC
+ map_events 0x0, SealedChamber_OuterRoom_MapWarps, 0x0, SealedChamber_OuterRoom_MapBGEvents
+
diff --git a/data/maps/events/SecretBase_BlueCave1.s b/data/maps/events/SecretBase_BlueCave1.s
new file mode 100644
index 000000000..08ffdfdd1
--- /dev/null
+++ b/data/maps/events/SecretBase_BlueCave1.s
@@ -0,0 +1,23 @@
+SecretBase_BlueCave1_MapObjects:: @ 838F18C
+ object_event 1, 255, 0, 4, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_BlueCave1_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_BlueCave1_MapWarps:: @ 838F2F4
+ warp_def 5, 7, 0, 126, NONE
+
+SecretBase_BlueCave1_MapEvents:: @ 838F2FC
+ map_events SecretBase_BlueCave1_MapObjects, SecretBase_BlueCave1_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SecretBase_BlueCave2.s b/data/maps/events/SecretBase_BlueCave2.s
new file mode 100644
index 000000000..46f66a0be
--- /dev/null
+++ b/data/maps/events/SecretBase_BlueCave2.s
@@ -0,0 +1,23 @@
+SecretBase_BlueCave2_MapObjects:: @ 838FAA4
+ object_event 1, 255, 0, 2, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_BlueCave2_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_BlueCave2_MapWarps:: @ 838FC0C
+ warp_def 7, 5, 0, 126, NONE
+
+SecretBase_BlueCave2_MapEvents:: @ 838FC14
+ map_events SecretBase_BlueCave2_MapObjects, SecretBase_BlueCave2_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SecretBase_BlueCave3.s b/data/maps/events/SecretBase_BlueCave3.s
new file mode 100644
index 000000000..487042edd
--- /dev/null
+++ b/data/maps/events/SecretBase_BlueCave3.s
@@ -0,0 +1,23 @@
+SecretBase_BlueCave3_MapObjects:: @ 83903BC
+ object_event 1, 255, 0, 5, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_BlueCave3_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_BlueCave3_MapWarps:: @ 8390524
+ warp_def 4, 15, 0, 126, NONE
+
+SecretBase_BlueCave3_MapEvents:: @ 839052C
+ map_events SecretBase_BlueCave3_MapObjects, SecretBase_BlueCave3_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SecretBase_BlueCave4.s b/data/maps/events/SecretBase_BlueCave4.s
new file mode 100644
index 000000000..949532d0b
--- /dev/null
+++ b/data/maps/events/SecretBase_BlueCave4.s
@@ -0,0 +1,23 @@
+SecretBase_BlueCave4_MapObjects:: @ 8390CD4
+ object_event 1, 255, 0, 5, 0, 13, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_BlueCave4_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_BlueCave4_MapWarps:: @ 8390E3C
+ warp_def 4, 15, 0, 126, NONE
+
+SecretBase_BlueCave4_MapEvents:: @ 8390E44
+ map_events SecretBase_BlueCave4_MapObjects, SecretBase_BlueCave4_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SecretBase_BrownCave1.s b/data/maps/events/SecretBase_BrownCave1.s
new file mode 100644
index 000000000..8f3c7b160
--- /dev/null
+++ b/data/maps/events/SecretBase_BrownCave1.s
@@ -0,0 +1,23 @@
+SecretBase_BrownCave1_MapObjects:: @ 838F008
+ object_event 1, 255, 0, 5, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_BrownCave1_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_BrownCave1_MapWarps:: @ 838F170
+ warp_def 5, 7, 0, 126, NONE
+
+SecretBase_BrownCave1_MapEvents:: @ 838F178
+ map_events SecretBase_BrownCave1_MapObjects, SecretBase_BrownCave1_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SecretBase_BrownCave2.s b/data/maps/events/SecretBase_BrownCave2.s
new file mode 100644
index 000000000..1cc098a3d
--- /dev/null
+++ b/data/maps/events/SecretBase_BrownCave2.s
@@ -0,0 +1,23 @@
+SecretBase_BrownCave2_MapObjects:: @ 838F920
+ object_event 1, 255, 0, 11, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_BrownCave2_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_BrownCave2_MapWarps:: @ 838FA88
+ warp_def 1, 7, 0, 126, NONE
+
+SecretBase_BrownCave2_MapEvents:: @ 838FA90
+ map_events SecretBase_BrownCave2_MapObjects, SecretBase_BrownCave2_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SecretBase_BrownCave3.s b/data/maps/events/SecretBase_BrownCave3.s
new file mode 100644
index 000000000..40a318b15
--- /dev/null
+++ b/data/maps/events/SecretBase_BrownCave3.s
@@ -0,0 +1,23 @@
+SecretBase_BrownCave3_MapObjects:: @ 8390238
+ object_event 1, 255, 0, 1, 0, 7, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_BrownCave3_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_BrownCave3_MapWarps:: @ 83903A0
+ warp_def 11, 9, 0, 126, NONE
+
+SecretBase_BrownCave3_MapEvents:: @ 83903A8
+ map_events SecretBase_BrownCave3_MapObjects, SecretBase_BrownCave3_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SecretBase_BrownCave4.s b/data/maps/events/SecretBase_BrownCave4.s
new file mode 100644
index 000000000..9b5572e02
--- /dev/null
+++ b/data/maps/events/SecretBase_BrownCave4.s
@@ -0,0 +1,23 @@
+SecretBase_BrownCave4_MapObjects:: @ 8390B50
+ object_event 1, 255, 0, 2, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_BrownCave4_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_BrownCave4_MapWarps:: @ 8390CB8
+ warp_def 2, 8, 0, 126, NONE
+
+SecretBase_BrownCave4_MapEvents:: @ 8390CC0
+ map_events SecretBase_BrownCave4_MapObjects, SecretBase_BrownCave4_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SecretBase_RedCave1.s b/data/maps/events/SecretBase_RedCave1.s
new file mode 100644
index 000000000..1e44ffb93
--- /dev/null
+++ b/data/maps/events/SecretBase_RedCave1.s
@@ -0,0 +1,23 @@
+SecretBase_RedCave1_MapObjects:: @ 838EE84
+ object_event 1, 255, 0, 7, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_RedCave1_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_RedCave1_MapWarps:: @ 838EFEC
+ warp_def 5, 7, 0, 126, NONE
+
+SecretBase_RedCave1_MapEvents:: @ 838EFF4
+ map_events SecretBase_RedCave1_MapObjects, SecretBase_RedCave1_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SecretBase_RedCave2.s b/data/maps/events/SecretBase_RedCave2.s
new file mode 100644
index 000000000..e4c5c8961
--- /dev/null
+++ b/data/maps/events/SecretBase_RedCave2.s
@@ -0,0 +1,23 @@
+SecretBase_RedCave2_MapObjects:: @ 838F79C
+ object_event 1, 255, 0, 3, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_RedCave2_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_RedCave2_MapWarps:: @ 838F904
+ warp_def 3, 14, 0, 126, NONE
+
+SecretBase_RedCave2_MapEvents:: @ 838F90C
+ map_events SecretBase_RedCave2_MapObjects, SecretBase_RedCave2_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SecretBase_RedCave3.s b/data/maps/events/SecretBase_RedCave3.s
new file mode 100644
index 000000000..7841943ea
--- /dev/null
+++ b/data/maps/events/SecretBase_RedCave3.s
@@ -0,0 +1,23 @@
+SecretBase_RedCave3_MapObjects:: @ 83900B4
+ object_event 1, 255, 0, 12, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_RedCave3_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_RedCave3_MapWarps:: @ 839021C
+ warp_def 3, 6, 0, 126, NONE
+
+SecretBase_RedCave3_MapEvents:: @ 8390224
+ map_events SecretBase_RedCave3_MapObjects, SecretBase_RedCave3_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SecretBase_RedCave4.s b/data/maps/events/SecretBase_RedCave4.s
new file mode 100644
index 000000000..1a3564abe
--- /dev/null
+++ b/data/maps/events/SecretBase_RedCave4.s
@@ -0,0 +1,23 @@
+SecretBase_RedCave4_MapObjects:: @ 83909CC
+ object_event 1, 255, 0, 5, 0, 8, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_RedCave4_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_RedCave4_MapWarps:: @ 8390B34
+ warp_def 2, 12, 0, 126, NONE
+
+SecretBase_RedCave4_MapEvents:: @ 8390B3C
+ map_events SecretBase_RedCave4_MapObjects, SecretBase_RedCave4_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SecretBase_Shrub1.s b/data/maps/events/SecretBase_Shrub1.s
new file mode 100644
index 000000000..e7a1f5f3a
--- /dev/null
+++ b/data/maps/events/SecretBase_Shrub1.s
@@ -0,0 +1,23 @@
+SecretBase_Shrub1_MapObjects:: @ 838F618
+ object_event 1, 255, 0, 5, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_Shrub1_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_Shrub1_MapWarps:: @ 838F780
+ warp_def 5, 7, 0, 126, NONE
+
+SecretBase_Shrub1_MapEvents:: @ 838F788
+ map_events SecretBase_Shrub1_MapObjects, SecretBase_Shrub1_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SecretBase_Shrub2.s b/data/maps/events/SecretBase_Shrub2.s
new file mode 100644
index 000000000..b8c5cfac7
--- /dev/null
+++ b/data/maps/events/SecretBase_Shrub2.s
@@ -0,0 +1,23 @@
+SecretBase_Shrub2_MapObjects:: @ 838FF30
+ object_event 1, 255, 0, 13, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_Shrub2_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_Shrub2_MapWarps:: @ 8390098
+ warp_def 7, 5, 0, 126, NONE
+
+SecretBase_Shrub2_MapEvents:: @ 83900A0
+ map_events SecretBase_Shrub2_MapObjects, SecretBase_Shrub2_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SecretBase_Shrub3.s b/data/maps/events/SecretBase_Shrub3.s
new file mode 100644
index 000000000..30496e5cf
--- /dev/null
+++ b/data/maps/events/SecretBase_Shrub3.s
@@ -0,0 +1,23 @@
+SecretBase_Shrub3_MapObjects:: @ 8390848
+ object_event 1, 255, 0, 5, 0, 7, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_Shrub3_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_Shrub3_MapWarps:: @ 83909B0
+ warp_def 6, 9, 0, 126, NONE
+
+SecretBase_Shrub3_MapEvents:: @ 83909B8
+ map_events SecretBase_Shrub3_MapObjects, SecretBase_Shrub3_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SecretBase_Shrub4.s b/data/maps/events/SecretBase_Shrub4.s
new file mode 100644
index 000000000..b6e7d14b7
--- /dev/null
+++ b/data/maps/events/SecretBase_Shrub4.s
@@ -0,0 +1,23 @@
+SecretBase_Shrub4_MapObjects:: @ 8391160
+ object_event 1, 255, 0, 9, 0, 7, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_Shrub4_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_Shrub4_MapWarps:: @ 83912C8
+ warp_def 11, 8, 0, 126, NONE
+
+SecretBase_Shrub4_MapEvents:: @ 83912D0
+ map_events SecretBase_Shrub4_MapObjects, SecretBase_Shrub4_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SecretBase_Tree1.s b/data/maps/events/SecretBase_Tree1.s
new file mode 100644
index 000000000..dee9340d6
--- /dev/null
+++ b/data/maps/events/SecretBase_Tree1.s
@@ -0,0 +1,23 @@
+SecretBase_Tree1_MapObjects:: @ 838F494
+ object_event 1, 255, 0, 5, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_Tree1_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_Tree1_MapWarps:: @ 838F5FC
+ warp_def 5, 7, 0, 126, NONE
+
+SecretBase_Tree1_MapEvents:: @ 838F604
+ map_events SecretBase_Tree1_MapObjects, SecretBase_Tree1_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SecretBase_Tree2.s b/data/maps/events/SecretBase_Tree2.s
new file mode 100644
index 000000000..5b9e3ece0
--- /dev/null
+++ b/data/maps/events/SecretBase_Tree2.s
@@ -0,0 +1,23 @@
+SecretBase_Tree2_MapObjects:: @ 838FDAC
+ object_event 1, 255, 0, 3, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_Tree2_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_Tree2_MapWarps:: @ 838FF14
+ warp_def 3, 14, 0, 126, NONE
+
+SecretBase_Tree2_MapEvents:: @ 838FF1C
+ map_events SecretBase_Tree2_MapObjects, SecretBase_Tree2_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SecretBase_Tree3.s b/data/maps/events/SecretBase_Tree3.s
new file mode 100644
index 000000000..1ddc6eb09
--- /dev/null
+++ b/data/maps/events/SecretBase_Tree3.s
@@ -0,0 +1,23 @@
+SecretBase_Tree3_MapObjects:: @ 83906C4
+ object_event 1, 255, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_Tree3_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_Tree3_MapWarps:: @ 839082C
+ warp_def 8, 6, 0, 126, NONE
+
+SecretBase_Tree3_MapEvents:: @ 8390834
+ map_events SecretBase_Tree3_MapObjects, SecretBase_Tree3_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SecretBase_Tree4.s b/data/maps/events/SecretBase_Tree4.s
new file mode 100644
index 000000000..7eb7a36e5
--- /dev/null
+++ b/data/maps/events/SecretBase_Tree4.s
@@ -0,0 +1,23 @@
+SecretBase_Tree4_MapObjects:: @ 8390FDC
+ object_event 1, 255, 0, 10, 0, 9, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_Tree4_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_Tree4_MapWarps:: @ 8391144
+ warp_def 7, 12, 0, 126, NONE
+
+SecretBase_Tree4_MapEvents:: @ 839114C
+ map_events SecretBase_Tree4_MapObjects, SecretBase_Tree4_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SecretBase_YellowCave1.s b/data/maps/events/SecretBase_YellowCave1.s
new file mode 100644
index 000000000..f08d926ba
--- /dev/null
+++ b/data/maps/events/SecretBase_YellowCave1.s
@@ -0,0 +1,23 @@
+SecretBase_YellowCave1_MapObjects:: @ 838F310
+ object_event 1, 255, 0, 3, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_YellowCave1_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_YellowCave1_MapWarps:: @ 838F478
+ warp_def 5, 7, 0, 126, NONE
+
+SecretBase_YellowCave1_MapEvents:: @ 838F480
+ map_events SecretBase_YellowCave1_MapObjects, SecretBase_YellowCave1_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SecretBase_YellowCave2.s b/data/maps/events/SecretBase_YellowCave2.s
new file mode 100644
index 000000000..7120e785c
--- /dev/null
+++ b/data/maps/events/SecretBase_YellowCave2.s
@@ -0,0 +1,23 @@
+SecretBase_YellowCave2_MapObjects:: @ 838FC28
+ object_event 1, 255, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_YellowCave2_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_YellowCave2_MapWarps:: @ 838FD90
+ warp_def 12, 7, 0, 126, NONE
+
+SecretBase_YellowCave2_MapEvents:: @ 838FD98
+ map_events SecretBase_YellowCave2_MapObjects, SecretBase_YellowCave2_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SecretBase_YellowCave3.s b/data/maps/events/SecretBase_YellowCave3.s
new file mode 100644
index 000000000..85d70bed0
--- /dev/null
+++ b/data/maps/events/SecretBase_YellowCave3.s
@@ -0,0 +1,23 @@
+SecretBase_YellowCave3_MapObjects:: @ 8390540
+ object_event 1, 255, 0, 7, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_YellowCave3_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_YellowCave3_MapWarps:: @ 83906A8
+ warp_def 5, 9, 0, 126, NONE
+
+SecretBase_YellowCave3_MapEvents:: @ 83906B0
+ map_events SecretBase_YellowCave3_MapObjects, SecretBase_YellowCave3_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SecretBase_YellowCave4.s b/data/maps/events/SecretBase_YellowCave4.s
new file mode 100644
index 000000000..2997ddc91
--- /dev/null
+++ b/data/maps/events/SecretBase_YellowCave4.s
@@ -0,0 +1,23 @@
+SecretBase_YellowCave4_MapObjects:: @ 8390E58
+ object_event 1, 255, 0, 9, 0, 8, 0, 3, 8, 0, 0, 0, 0, 0, 0, SecretBase_YellowCave4_EventScript_1A2FC0, 173, 0, 0
+ object_event 2, 240, 0, 0, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 174, 0, 0
+ object_event 3, 241, 0, 0, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 175, 0, 0
+ object_event 4, 242, 0, 0, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 176, 0, 0
+ object_event 5, 243, 0, 0, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 177, 0, 0
+ object_event 6, 244, 0, 0, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 178, 0, 0
+ object_event 7, 245, 0, 0, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 179, 0, 0
+ object_event 8, 246, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 180, 0, 0
+ object_event 9, 247, 0, 1, 0, 0, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 181, 0, 0
+ object_event 10, 248, 0, 1, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 182, 0, 0
+ object_event 11, 249, 0, 1, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 183, 0, 0
+ object_event 12, 250, 0, 1, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 184, 0, 0
+ object_event 13, 251, 0, 1, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 185, 0, 0
+ object_event 14, 252, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 186, 0, 0
+ object_event 15, 253, 0, 1, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 187, 0, 0
+
+SecretBase_YellowCave4_MapWarps:: @ 8390FC0
+ warp_def 6, 12, 0, 126, NONE
+
+SecretBase_YellowCave4_MapEvents:: @ 8390FC8
+ map_events SecretBase_YellowCave4_MapObjects, SecretBase_YellowCave4_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/ShoalCave_HighTideEntranceRoom.s b/data/maps/events/ShoalCave_HighTideEntranceRoom.s
new file mode 100644
index 000000000..96551e11c
--- /dev/null
+++ b/data/maps/events/ShoalCave_HighTideEntranceRoom.s
@@ -0,0 +1,3 @@
+ShoalCave_HighTideEntranceRoom_MapEvents:: @ 838DEAC
+ map_events 0x0, 0x0, 0x0, 0x0
+
diff --git a/data/maps/events/ShoalCave_HighTideInnerRoom.s b/data/maps/events/ShoalCave_HighTideInnerRoom.s
new file mode 100644
index 000000000..b66bfbc4a
--- /dev/null
+++ b/data/maps/events/ShoalCave_HighTideInnerRoom.s
@@ -0,0 +1,3 @@
+ShoalCave_HighTideInnerRoom_MapEvents:: @ 838DEC0
+ map_events 0x0, 0x0, 0x0, 0x0
+
diff --git a/data/maps/events/ShoalCave_LowTideEntranceRoom.s b/data/maps/events/ShoalCave_LowTideEntranceRoom.s
new file mode 100644
index 000000000..582a1d9bd
--- /dev/null
+++ b/data/maps/events/ShoalCave_LowTideEntranceRoom.s
@@ -0,0 +1,13 @@
+ShoalCave_LowTideEntranceRoom_MapObjects:: @ 838DCDC
+ object_event 1, MAP_OBJ_GFX_ITEM_BALL, 0, 30, 0, 3, 0, 3, 1, 17, 0, 0, 0, 0, 0, ShoalCave_LowTideEntranceRoom_EventScript_1B19F6, 1081, 0, 0
+ object_event 2, MAP_OBJ_GFX_OLD_MAN_1, 0, 18, 0, 15, 0, 3, 9, 17, 0, 0, 0, 0, 0, ShoalCave_LowTideEntranceRoom_EventScript_15E076, 0, 0, 0
+
+ShoalCave_LowTideEntranceRoom_MapWarps:: @ 838DD0C
+ warp_def 20, 30, 3, 0, Route125
+ warp_def 19, 5, 3, 0, ShoalCave_LowTideInnerRoom
+ warp_def 6, 2, 3, 6, ShoalCave_LowTideInnerRoom
+ warp_def 27, 2, 3, 7, ShoalCave_LowTideInnerRoom
+
+ShoalCave_LowTideEntranceRoom_MapEvents:: @ 838DD2C
+ map_events ShoalCave_LowTideEntranceRoom_MapObjects, ShoalCave_LowTideEntranceRoom_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/ShoalCave_LowTideIceRoom.s b/data/maps/events/ShoalCave_LowTideIceRoom.s
new file mode 100644
index 000000000..236ed44fb
--- /dev/null
+++ b/data/maps/events/ShoalCave_LowTideIceRoom.s
@@ -0,0 +1,10 @@
+ShoalCave_LowTideIceRoom_MapObjects:: @ 838EDE0
+ object_event 1, MAP_OBJ_GFX_ITEM_BALL, 0, 12, 0, 8, 0, 3, 1, 17, 0, 0, 0, 0, 0, ShoalCave_LowTideIceRoom_EventScript_1B1A1D, 1112, 0, 0
+ object_event 2, MAP_OBJ_GFX_ITEM_BALL, 0, 12, 0, 21, 0, 4, 1, 17, 0, 0, 0, 0, 0, ShoalCave_LowTideIceRoom_EventScript_1B1A2A, 1113, 0, 0
+
+ShoalCave_LowTideIceRoom_MapWarps:: @ 838EE10
+ warp_def 17, 10, 3, 3, ShoalCave_LowTideLowerRoom
+
+ShoalCave_LowTideIceRoom_MapEvents:: @ 838EE18
+ map_events ShoalCave_LowTideIceRoom_MapObjects, ShoalCave_LowTideIceRoom_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/ShoalCave_LowTideInnerRoom.s b/data/maps/events/ShoalCave_LowTideInnerRoom.s
new file mode 100644
index 000000000..f69475f70
--- /dev/null
+++ b/data/maps/events/ShoalCave_LowTideInnerRoom.s
@@ -0,0 +1,24 @@
+ShoalCave_LowTideInnerRoom_MapObjects:: @ 838DD40
+ object_event 1, MAP_OBJ_GFX_ITEM_BALL, 0, 26, 0, 14, 0, 5, 1, 17, 0, 0, 0, 0, 0, ShoalCave_LowTideInnerRoom_EventScript_1B1A03, 1082, 0, 0
+
+ShoalCave_LowTideInnerRoom_MapWarps:: @ 838DD58
+ warp_def 34, 29, 3, 1, ShoalCave_LowTideEntranceRoom
+ warp_def 38, 15, 3, 0, ShoalCave_LowTideStairsRoom
+ warp_def 42, 4, 3, 1, ShoalCave_LowTideStairsRoom
+ warp_def 19, 14, 4, 0, ShoalCave_LowTideLowerRoom
+ warp_def 15, 19, 3, 1, ShoalCave_LowTideLowerRoom
+ warp_def 30, 25, 3, 2, ShoalCave_LowTideLowerRoom
+ warp_def 14, 33, 5, 2, ShoalCave_LowTideEntranceRoom
+ warp_def 40, 33, 5, 3, ShoalCave_LowTideEntranceRoom
+
+ShoalCave_LowTideInnerRoom_MapBGEvents:: @ 838DD98
+ bg_event 31, 8, 5, 0, 0, ShoalCave_LowTideInnerRoom_EventScript_15E329
+ bg_event 14, 26, 3, 0, 0, ShoalCave_LowTideInnerRoom_EventScript_15E365
+ bg_event 41, 20, 5, 0, 0, ShoalCave_LowTideInnerRoom_EventScript_15E257
+ bg_event 41, 10, 5, 0, 0, ShoalCave_LowTideInnerRoom_EventScript_15E293
+ bg_event 6, 9, 3, 0, 0, ShoalCave_LowTideInnerRoom_EventScript_15E2C5
+ bg_event 16, 13, 5, 0, 0, ShoalCave_LowTideInnerRoom_EventScript_15E2F7
+
+ShoalCave_LowTideInnerRoom_MapEvents:: @ 838DDE0
+ map_events ShoalCave_LowTideInnerRoom_MapObjects, ShoalCave_LowTideInnerRoom_MapWarps, 0x0, ShoalCave_LowTideInnerRoom_MapBGEvents
+
diff --git a/data/maps/events/ShoalCave_LowTideLowerRoom.s b/data/maps/events/ShoalCave_LowTideLowerRoom.s
new file mode 100644
index 000000000..1c810a328
--- /dev/null
+++ b/data/maps/events/ShoalCave_LowTideLowerRoom.s
@@ -0,0 +1,16 @@
+ShoalCave_LowTideLowerRoom_MapObjects:: @ 838DE3C
+ object_event 1, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 25, 0, 3, 0, 3, 1, 0, 0, 0, 0, 0, 0, ShoalCave_LowTideLowerRoom_EventScript_1B0FCB, 17, 0, 0
+ object_event 2, MAP_OBJ_GFX_BLACK_BELT, 0, 11, 0, 4, 0, 3, 2, 17, 0, 0, 0, 0, 0, ShoalCave_LowTideLowerRoom_EventScript_15E44F, 0, 0, 0
+
+ShoalCave_LowTideLowerRoom_MapWarps:: @ 838DE6C
+ warp_def 7, 2, 3, 3, ShoalCave_LowTideInnerRoom
+ warp_def 2, 6, 3, 4, ShoalCave_LowTideInnerRoom
+ warp_def 19, 11, 3, 5, ShoalCave_LowTideInnerRoom
+ warp_def 28, 11, 3, 0, ShoalCave_LowTideIceRoom
+
+ShoalCave_LowTideLowerRoom_MapBGEvents:: @ 838DE8C
+ bg_event 18, 2, 3, 0, 0, ShoalCave_LowTideLowerRoom_EventScript_15E413
+
+ShoalCave_LowTideLowerRoom_MapEvents:: @ 838DE98
+ map_events ShoalCave_LowTideLowerRoom_MapObjects, ShoalCave_LowTideLowerRoom_MapWarps, 0x0, ShoalCave_LowTideLowerRoom_MapBGEvents
+
diff --git a/data/maps/events/ShoalCave_LowTideStairsRoom.s b/data/maps/events/ShoalCave_LowTideStairsRoom.s
new file mode 100644
index 000000000..544f0f347
--- /dev/null
+++ b/data/maps/events/ShoalCave_LowTideStairsRoom.s
@@ -0,0 +1,13 @@
+ShoalCave_LowTideStairsRoom_MapObjects:: @ 838DDF4
+ object_event 1, MAP_OBJ_GFX_ITEM_BALL, 0, 13, 0, 12, 0, 3, 1, 17, 0, 0, 0, 0, 0, ShoalCave_LowTideStairsRoom_EventScript_1B1A10, 1083, 0, 0
+
+ShoalCave_LowTideStairsRoom_MapWarps:: @ 838DE0C
+ warp_def 3, 12, 3, 1, ShoalCave_LowTideInnerRoom
+ warp_def 7, 4, 3, 2, ShoalCave_LowTideInnerRoom
+
+ShoalCave_LowTideStairsRoom_MapBGEvents:: @ 838DE1C
+ bg_event 11, 11, 3, 0, 0, ShoalCave_LowTideStairsRoom_EventScript_15E3B7
+
+ShoalCave_LowTideStairsRoom_MapEvents:: @ 838DE28
+ map_events ShoalCave_LowTideStairsRoom_MapObjects, ShoalCave_LowTideStairsRoom_MapWarps, 0x0, ShoalCave_LowTideStairsRoom_MapBGEvents
+
diff --git a/data/maps/events/SingleBattleColosseum.s b/data/maps/events/SingleBattleColosseum.s
new file mode 100644
index 000000000..a7af56d3a
--- /dev/null
+++ b/data/maps/events/SingleBattleColosseum.s
@@ -0,0 +1,14 @@
+SingleBattleColosseum_MapObjects:: @ 83912E4
+ object_event 1, MAP_OBJ_GFX_WOMAN_6, 0, 9, 0, 3, 0, 3, 9, 0, 0, 0, 0, 0, 0, SingleBattleColosseum_EventScript_1A449E, 0, 0, 0
+
+SingleBattleColosseum_MapWarps:: @ 83912FC
+ warp_def 6, 8, 3, 127, NONE
+ warp_def 7, 8, 3, 127, NONE
+
+SingleBattleColosseum_MapCoordEvents:: @ 839130C
+ coord_event 3, 5, 3, 0, 0x4000, 0, 0, SingleBattleColosseum_EventScript_1A436F
+ coord_event 10, 5, 3, 0, 0x4000, 0, 0, SingleBattleColosseum_EventScript_1A4379
+
+SingleBattleColosseum_MapEvents:: @ 839132C
+ map_events SingleBattleColosseum_MapObjects, SingleBattleColosseum_MapWarps, SingleBattleColosseum_MapCoordEvents, 0x0
+
diff --git a/data/maps/events/SkyPillar_1F.s b/data/maps/events/SkyPillar_1F.s
new file mode 100644
index 000000000..8758265d4
--- /dev/null
+++ b/data/maps/events/SkyPillar_1F.s
@@ -0,0 +1,8 @@
+SkyPillar_1F_MapWarps:: @ 838ED38
+ warp_def 6, 13, 3, 1, SkyPillar_Outside
+ warp_def 7, 13, 3, 1, SkyPillar_Outside
+ warp_def 10, 1, 3, 0, SkyPillar_2F
+
+SkyPillar_1F_MapEvents:: @ 838ED50
+ map_events 0x0, SkyPillar_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SkyPillar_2F.s b/data/maps/events/SkyPillar_2F.s
new file mode 100644
index 000000000..4f4eb72a0
--- /dev/null
+++ b/data/maps/events/SkyPillar_2F.s
@@ -0,0 +1,7 @@
+SkyPillar_2F_MapWarps:: @ 838ED64
+ warp_def 10, 1, 3, 2, SkyPillar_1F
+ warp_def 3, 1, 3, 0, SkyPillar_3F
+
+SkyPillar_2F_MapEvents:: @ 838ED74
+ map_events 0x0, SkyPillar_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SkyPillar_3F.s b/data/maps/events/SkyPillar_3F.s
new file mode 100644
index 000000000..401a899db
--- /dev/null
+++ b/data/maps/events/SkyPillar_3F.s
@@ -0,0 +1,8 @@
+SkyPillar_3F_MapWarps:: @ 838ED88
+ warp_def 3, 1, 3, 1, SkyPillar_2F
+ warp_def 11, 1, 3, 0, SkyPillar_4F
+ warp_def 7, 1, 3, 1, SkyPillar_4F
+
+SkyPillar_3F_MapEvents:: @ 838EDA0
+ map_events 0x0, SkyPillar_3F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SkyPillar_4F.s b/data/maps/events/SkyPillar_4F.s
new file mode 100644
index 000000000..4cc78e723
--- /dev/null
+++ b/data/maps/events/SkyPillar_4F.s
@@ -0,0 +1,8 @@
+SkyPillar_4F_MapWarps:: @ 838EDB4
+ warp_def 11, 1, 3, 1, SkyPillar_3F
+ warp_def 7, 1, 3, 2, SkyPillar_3F
+ warp_def 3, 1, 3, 0, SkyPillar_5F
+
+SkyPillar_4F_MapEvents:: @ 838EDCC
+ map_events 0x0, SkyPillar_4F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SkyPillar_5F.s b/data/maps/events/SkyPillar_5F.s
new file mode 100644
index 000000000..2753a225f
--- /dev/null
+++ b/data/maps/events/SkyPillar_5F.s
@@ -0,0 +1,7 @@
+SkyPillar_5F_MapWarps:: @ 838EE2C
+ warp_def 3, 1, 3, 2, SkyPillar_4F
+ warp_def 10, 1, 3, 0, SkyPillar_Top
+
+SkyPillar_5F_MapEvents:: @ 838EE3C
+ map_events 0x0, SkyPillar_5F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SkyPillar_Entrance.s b/data/maps/events/SkyPillar_Entrance.s
new file mode 100644
index 000000000..03ba9a035
--- /dev/null
+++ b/data/maps/events/SkyPillar_Entrance.s
@@ -0,0 +1,7 @@
+SkyPillar_Entrance_MapWarps:: @ 838ECF0
+ warp_def 6, 16, 3, 0, Route131
+ warp_def 14, 4, 3, 0, SkyPillar_Outside
+
+SkyPillar_Entrance_MapEvents:: @ 838ED00
+ map_events 0x0, SkyPillar_Entrance_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SkyPillar_Outside.s b/data/maps/events/SkyPillar_Outside.s
new file mode 100644
index 000000000..cf8cb36ff
--- /dev/null
+++ b/data/maps/events/SkyPillar_Outside.s
@@ -0,0 +1,7 @@
+SkyPillar_Outside_MapWarps:: @ 838ED14
+ warp_def 17, 13, 3, 1, SkyPillar_Entrance
+ warp_def 14, 5, 3, 0, SkyPillar_1F
+
+SkyPillar_Outside_MapEvents:: @ 838ED24
+ map_events 0x0, SkyPillar_Outside_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SkyPillar_Top.s b/data/maps/events/SkyPillar_Top.s
new file mode 100644
index 000000000..73bf6337c
--- /dev/null
+++ b/data/maps/events/SkyPillar_Top.s
@@ -0,0 +1,9 @@
+SkyPillar_Top_MapObjects:: @ 838EE50
+ object_event 1, MAP_OBJ_GFX_RAYQUAZA, 0, 14, 0, 6, 0, 3, 8, 17, 0, 0, 0, 0, 0, SkyPillar_Top_EventScript_15F316, 773, 0, 0
+
+SkyPillar_Top_MapWarps:: @ 838EE68
+ warp_def 16, 14, 3, 1, SkyPillar_5F
+
+SkyPillar_Top_MapEvents:: @ 838EE70
+ map_events SkyPillar_Top_MapObjects, SkyPillar_Top_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SlateportCity.s b/data/maps/events/SlateportCity.s
new file mode 100644
index 000000000..dfd7bdc87
--- /dev/null
+++ b/data/maps/events/SlateportCity.s
@@ -0,0 +1,63 @@
+SlateportCity_MapObjects:: @ 837F7AC
+ object_event 1, MAP_OBJ_GFX_FAT_MAN, 0, 21, 0, 11, 0, 3, 2, 17, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BBD6, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_1, 0, 35, 0, 27, 0, 3, 5, 1, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BBF3, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_BOY_4, 0, 15, 0, 13, 0, 3, 2, 33, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BBB5, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_WOMAN_5, 0, 26, 0, 29, 0, 3, 1, 0, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BC14, 0, 0, 0
+ object_event 5, 240, 0, 31, 0, 27, 0, 3, 7, 0, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BD3A, 882, 0, 0
+ object_event 6, MAP_OBJ_GFX_COOK, 0, 5, 0, 43, 0, 3, 8, 0, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BB3F, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_OLD_WOMAN_2, 0, 20, 0, 37, 0, 3, 1, 17, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BB60, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_GIRL_1, 0, 8, 0, 42, 0, 3, 2, 17, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BB81, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_CAMERAMAN, 0, 29, 0, 13, 0, 3, 9, 0, 0, 0, 0, 0, 0, SlateportCity_EventScript_14C017, 835, 0, 0
+ object_event 10, MAP_OBJ_GFX_REPORTER_F, 0, 28, 0, 14, 0, 3, 7, 0, 0, 0, 0, 0, 0, SlateportCity_EventScript_14C020, 835, 0, 0
+ object_event 11, MAP_OBJ_GFX_SCIENTIST_1, 0, 28, 0, 13, 0, 3, 10, 0, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BEBC, 840, 0, 0
+ object_event 12, MAP_OBJ_GFX_SAILOR, 0, 35, 0, 36, 0, 3, 10, 0, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BCE2, 0, 0, 0
+ object_event 13, MAP_OBJ_GFX_SAILOR, 0, 28, 0, 46, 0, 3, 5, 1, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BCEB, 0, 0, 0
+ object_event 14, MAP_OBJ_GFX_WOMAN_2, 0, 9, 0, 50, 0, 3, 3, 16, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BCF4, 0, 0, 0
+ object_event 15, MAP_OBJ_GFX_MAN_4, 0, 16, 0, 46, 0, 3, 2, 17, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BCFD, 0, 0, 0
+ object_event 16, MAP_OBJ_GFX_SCHOOL_KID_M, 0, 12, 0, 18, 0, 3, 2, 17, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BD06, 0, 0, 0
+ object_event 17, MAP_OBJ_GFX_MANIAC, 0, 8, 0, 24, 0, 3, 3, 16, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BCB8, 0, 0, 0
+ object_event 18, MAP_OBJ_GFX_WOMAN_7, 0, 15, 0, 31, 0, 3, 1, 0, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BCD9, 0, 0, 0
+ object_event 19, 241, 0, 30, 0, 27, 0, 3, 10, 0, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BD51, 882, 0, 0
+ object_event 20, 241, 0, 29, 0, 27, 0, 3, 10, 0, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BD68, 882, 0, 0
+ object_event 21, MAP_OBJ_GFX_MART_EMPLOYEE, 0, 6, 0, 38, 0, 3, 10, 0, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BE20, 0, 0, 0
+ object_event 22, MAP_OBJ_GFX_MART_EMPLOYEE, 0, 5, 0, 51, 0, 3, 8, 0, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BDF2, 0, 0, 0
+ object_event 23, MAP_OBJ_GFX_MAN_6, 0, 34, 0, 51, 0, 3, 8, 0, 0, 0, 0, 0, 0, SlateportCity_EventScript_14C029, 0, 0, 0
+ object_event 24, MAP_OBJ_GFX_WOMAN_7, 0, 4, 0, 47, 0, 3, 8, 0, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BAE0, 0, 0, 0
+ object_event 25, MAP_OBJ_GFX_MART_EMPLOYEE, 0, 11, 0, 47, 0, 3, 8, 17, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BE9A, 948, 0, 0
+ object_event 26, MAP_OBJ_GFX_MAN_3, 0, 5, 0, 47, 0, 3, 8, 17, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BAB6, 0, 0, 0
+ object_event 27, 241, 0, 22, 0, 27, 0, 3, 10, 17, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BD7F, 882, 0, 0
+ object_event 28, 241, 0, 23, 0, 27, 0, 3, 7, 17, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BD96, 882, 0, 0
+ object_event 29, 241, 0, 24, 0, 27, 0, 3, 10, 17, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BDAD, 882, 0, 0
+ object_event 30, 241, 0, 21, 0, 26, 0, 3, 10, 17, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BDC4, 882, 0, 0
+ object_event 31, 241, 0, 20, 0, 26, 0, 3, 10, 17, 0, 0, 0, 0, 0, SlateportCity_EventScript_14BDDB, 882, 0, 0
+
+SlateportCity_MapWarps:: @ 837FA94
+ warp_def 19, 19, 0, 0, SlateportCity_PokemonCenter_1F
+ warp_def 13, 26, 0, 0, SlateportCity_Mart
+ warp_def 26, 38, 0, 0, SlateportCity_SternsShipyard_1F
+ warp_def 10, 12, 0, 0, SlateportCity_ContestLobby
+ warp_def 4, 26, 0, 0, SlateportCity_PokemonFanClub
+ warp_def 30, 26, 0, 0, SlateportCity_OceanicMuseum_1F
+ warp_def 5, 19, 0, 0, SlateportCity_House1
+ warp_def 31, 26, 0, 1, SlateportCity_OceanicMuseum_1F
+ warp_def 28, 12, 0, 0, SlateportCity_Harbor
+ warp_def 40, 7, 0, 2, SlateportCity_Harbor
+ warp_def 21, 44, 0, 0, SlateportCity_House2
+
+SlateportCity_MapBGEvents:: @ 837FAEC
+ bg_event 8, 19, 0, 0, 0, SlateportCity_EventScript_14BCAF
+ bg_event 20, 19, 0, 1, 0, SlateportCity_EventScript_1A00EA
+ bg_event 21, 19, 0, 1, 0, SlateportCity_EventScript_1A00EA
+ bg_event 14, 26, 0, 1, 0, SlateportCity_EventScript_1A00E1
+ bg_event 24, 12, 0, 0, 0, SlateportCity_EventScript_14BC91
+ bg_event 15, 26, 0, 1, 0, SlateportCity_EventScript_1A00E1
+ bg_event 14, 51, 0, 0, 0, SlateportCity_EventScript_14BC88
+ bg_event 26, 26, 0, 0, 0, SlateportCity_EventScript_14BC76
+ bg_event 16, 22, 0, 0, 0, SlateportCity_EventScript_14BC7F
+ bg_event 8, 26, 0, 0, 0, SlateportCity_EventScript_14BC6D
+ bg_event 7, 13, 0, 0, 0, SlateportCity_EventScript_14BC33
+ bg_event 23, 38, 0, 0, 0, SlateportCity_EventScript_14BC3C
+
+SlateportCity_MapEvents:: @ 837FB7C
+ map_events SlateportCity_MapObjects, SlateportCity_MapWarps, 0x0, SlateportCity_MapBGEvents
+
diff --git a/data/maps/events/SlateportCity_ContestHall.s b/data/maps/events/SlateportCity_ContestHall.s
new file mode 100644
index 000000000..398ac47f4
--- /dev/null
+++ b/data/maps/events/SlateportCity_ContestHall.s
@@ -0,0 +1,26 @@
+SlateportCity_ContestHall_MapObjects:: @ 83878A4
+ object_event 1, MAP_OBJ_GFX_FAT_MAN, 0, 19, 0, 15, 0, 3, 2, 34, 0, 0, 0, 0, 0, SlateportCity_ContestHall_EventScript_15554C, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 1, 0, 4, 0, 3, 2, 51, 0, 0, 0, 0, 0, SlateportCity_ContestHall_EventScript_155555, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_WOMAN_4, 0, 9, 0, 8, 0, 3, 8, 0, 0, 0, 0, 0, 0, SlateportCity_ContestHall_EventScript_15559F, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_CONTEST_JUDGE, 0, 12, 0, 8, 0, 3, 8, 0, 0, 0, 0, 0, 0, SlateportCity_ContestHall_EventScript_1555B4, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_GIRL_1, 0, 7, 0, 11, 0, 3, 7, 0, 0, 0, 0, 0, 0, SlateportCity_ContestHall_EventScript_1555C9, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_BOY_2, 0, 9, 0, 11, 0, 3, 7, 0, 0, 0, 0, 0, 0, SlateportCity_ContestHall_EventScript_1555DE, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_BOY_1, 0, 11, 0, 11, 0, 3, 7, 0, 0, 0, 0, 0, 0, SlateportCity_ContestHall_EventScript_1555F3, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_FAT_MAN, 0, 13, 0, 11, 0, 3, 7, 0, 0, 0, 0, 0, 0, SlateportCity_ContestHall_EventScript_155608, 0, 0, 0
+ object_event 9, MAP_OBJ_GFX_MANIAC, 0, 8, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, SlateportCity_ContestHall_EventScript_15561D, 0, 0, 0
+ object_event 10, MAP_OBJ_GFX_HIKER, 0, 12, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, SlateportCity_ContestHall_EventScript_155632, 0, 0, 0
+ object_event 11, MAP_OBJ_GFX_BOY_3, 0, 5, 0, 10, 0, 3, 10, 0, 0, 0, 0, 0, 0, SlateportCity_ContestHall_EventScript_15565C, 0, 0, 0
+ object_event 12, MAP_OBJ_GFX_BOY_1, 0, 15, 0, 10, 0, 3, 9, 0, 0, 0, 0, 0, 0, SlateportCity_ContestHall_EventScript_155647, 0, 0, 0
+ object_event 13, MAP_OBJ_GFX_SAILOR, 0, 0, 0, 17, 0, 3, 2, 65, 0, 0, 0, 0, 0, SlateportCity_ContestHall_EventScript_15555E, 0, 0, 0
+
+SlateportCity_ContestHall_MapWarps:: @ 83879DC
+ warp_def 10, 17, 0, 2, SlateportCity_ContestLobby
+ warp_def 11, 17, 0, 2, SlateportCity_ContestLobby
+
+SlateportCity_ContestHall_MapBGEvents:: @ 83879EC
+ bg_event 12, 14, 3, 0, 0, SlateportCity_ContestHall_EventScript_155671
+ bg_event 8, 14, 3, 0, 0, SlateportCity_ContestHall_EventScript_155671
+
+SlateportCity_ContestHall_MapEvents:: @ 8387A04
+ map_events SlateportCity_ContestHall_MapObjects, SlateportCity_ContestHall_MapWarps, 0x0, SlateportCity_ContestHall_MapBGEvents
+
diff --git a/data/maps/events/SlateportCity_ContestLobby.s b/data/maps/events/SlateportCity_ContestLobby.s
new file mode 100644
index 000000000..2833e91dd
--- /dev/null
+++ b/data/maps/events/SlateportCity_ContestLobby.s
@@ -0,0 +1,24 @@
+SlateportCity_ContestLobby_MapObjects:: @ 8387788
+ object_event 1, MAP_OBJ_GFX_TEALA, 0, 5, 0, 2, 0, 3, 8, 48, 0, 0, 0, 0, 0, SlateportCity_ContestLobby_EventScript_15541D, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_OLD_MAN_1, 0, 11, 0, 5, 0, 3, 10, 0, 0, 0, 0, 0, 0, SlateportCity_ContestLobby_EventScript_1B7795, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MAN_4, 0, 0, 0, 3, 0, 3, 3, 16, 0, 0, 0, 0, 0, SlateportCity_ContestLobby_EventScript_1554DE, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_GIRL_1, 0, 9, 0, 6, 0, 3, 2, 17, 0, 0, 0, 0, 0, SlateportCity_ContestLobby_EventScript_1554E7, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_REPORTER_M, 0, 7, 0, 5, 0, 3, 9, 0, 0, 0, 0, 0, 0, SlateportCity_ContestLobby_EventScript_1AE0B6, 803, 0, 0
+ object_event 6, MAP_OBJ_GFX_BOY_1, 0, 13, 0, 5, 0, 3, 9, 0, 0, 0, 0, 0, 0, SlateportCity_ContestLobby_EventScript_155536, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_LITTLE_GIRL_2, 0, 1, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, SlateportCity_ContestLobby_EventScript_1554F9, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_WOMAN_3, 0, 12, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, SlateportCity_ContestLobby_EventScript_1554F0, 0, 0, 0
+
+SlateportCity_ContestLobby_MapWarps:: @ 8387848
+ warp_def 5, 6, 0, 3, SlateportCity
+ warp_def 6, 6, 0, 3, SlateportCity
+ warp_def 1, 1, 0, 0, SlateportCity_ContestHall
+
+SlateportCity_ContestLobby_MapBGEvents:: @ 8387860
+ bg_event 10, 3, 0, 0, 0, SlateportCity_ContestLobby_EventScript_1B7829
+ bg_event 12, 5, 0, 0, 0, SlateportCity_ContestLobby_EventScript_1B761E
+ bg_event 11, 1, 0, 0, 0, SlateportCity_ContestLobby_EventScript_15552F
+ bg_event 13, 1, 0, 0, 0, SlateportCity_ContestLobby_EventScript_15908D
+
+SlateportCity_ContestLobby_MapEvents:: @ 8387890
+ map_events SlateportCity_ContestLobby_MapObjects, SlateportCity_ContestLobby_MapWarps, 0x0, SlateportCity_ContestLobby_MapBGEvents
+
diff --git a/data/maps/events/SlateportCity_Harbor.s b/data/maps/events/SlateportCity_Harbor.s
new file mode 100644
index 000000000..8ed7a8b99
--- /dev/null
+++ b/data/maps/events/SlateportCity_Harbor.s
@@ -0,0 +1,25 @@
+SlateportCity_Harbor_MapObjects:: @ 8387F30
+ object_event 1, MAP_OBJ_GFX_BEAUTY, 0, 8, 0, 10, 0, 3, 8, 0, 0, 0, 0, 0, 0, SlateportCity_Harbor_EventScript_1560C4, 905, 0, 0
+ object_event 2, MAP_OBJ_GFX_SAILOR, 0, 4, 0, 12, 0, 3, 9, 0, 0, 0, 0, 0, 0, SlateportCity_Harbor_EventScript_1561FF, 905, 0, 0
+ object_event 3, MAP_OBJ_GFX_FAT_MAN, 0, 1, 0, 12, 0, 3, 10, 0, 0, 0, 0, 0, 0, SlateportCity_Harbor_EventScript_156208, 905, 0, 0
+ object_event 4, MAP_OBJ_GFX_SCIENTIST_1, 0, 6, 0, 13, 0, 3, 1, 0, 0, 0, 0, 0, 0, SlateportCity_Harbor_EventScript_156211, 841, 0, 0
+ object_event 5, MAP_OBJ_GFX_SS_TIDAL, 0, 8, 0, 9, 0, 1, 10, 0, 0, 0, 0, 0, 0, 0x0, 860, 0, 0
+ object_event 6, 241, 0, 7, 0, 10, 0, 3, 10, 0, 0, 0, 0, 0, 0, 0x0, 845, 0, 0
+ object_event 7, 246, 0, 8, 0, 10, 0, 3, 9, 0, 0, 0, 0, 0, 0, 0x0, 846, 0, 0
+ object_event 8, MAP_OBJ_GFX_SUBMARINE_SHADOW, 0, 7, 0, 9, 0, 1, 10, 0, 0, 0, 0, 0, 0, 0x0, 848, 0, 0
+
+SlateportCity_Harbor_MapWarps:: @ 8387FF0
+ warp_def 11, 14, 0, 8, SlateportCity
+ warp_def 12, 14, 0, 8, SlateportCity
+ warp_def 19, 15, 0, 9, SlateportCity
+ warp_def 20, 15, 0, 9, SlateportCity
+
+SlateportCity_Harbor_MapCoordEvents:: @ 8388010
+ coord_event 8, 11, 3, 0, 0x40a0, 1, 0, SlateportCity_Harbor_EventScript_155F9B
+ coord_event 8, 12, 3, 0, 0x40a0, 1, 0, SlateportCity_Harbor_EventScript_155FA7
+ coord_event 8, 13, 3, 0, 0x40a0, 1, 0, SlateportCity_Harbor_EventScript_155FB3
+ coord_event 8, 14, 3, 0, 0x40a0, 1, 0, SlateportCity_Harbor_EventScript_155FBF
+
+SlateportCity_Harbor_MapEvents:: @ 8388050
+ map_events SlateportCity_Harbor_MapObjects, SlateportCity_Harbor_MapWarps, SlateportCity_Harbor_MapCoordEvents, 0x0
+
diff --git a/data/maps/events/SlateportCity_House1.s b/data/maps/events/SlateportCity_House1.s
new file mode 100644
index 000000000..f1628d47a
--- /dev/null
+++ b/data/maps/events/SlateportCity_House1.s
@@ -0,0 +1,10 @@
+SlateportCity_House1_MapObjects:: @ 8387A18
+ object_event 1, MAP_OBJ_GFX_OLD_MAN_1, 0, 7, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, SlateportCity_House1_EventScript_15567B, 0, 0, 0
+
+SlateportCity_House1_MapWarps:: @ 8387A30
+ warp_def 3, 7, 0, 6, SlateportCity
+ warp_def 4, 7, 0, 6, SlateportCity
+
+SlateportCity_House1_MapEvents:: @ 8387A40
+ map_events SlateportCity_House1_MapObjects, SlateportCity_House1_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SlateportCity_House2.s b/data/maps/events/SlateportCity_House2.s
new file mode 100644
index 000000000..689949166
--- /dev/null
+++ b/data/maps/events/SlateportCity_House2.s
@@ -0,0 +1,11 @@
+SlateportCity_House2_MapObjects:: @ 8388064
+ object_event 1, MAP_OBJ_GFX_MAN_3, 0, 4, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, SlateportCity_House2_EventScript_156390, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_GIRL_3, 0, 7, 0, 4, 0, 3, 9, 0, 0, 0, 0, 0, 0, SlateportCity_House2_EventScript_156399, 0, 0, 0
+
+SlateportCity_House2_MapWarps:: @ 8388094
+ warp_def 3, 7, 0, 10, SlateportCity
+ warp_def 4, 7, 0, 10, SlateportCity
+
+SlateportCity_House2_MapEvents:: @ 83880A4
+ map_events SlateportCity_House2_MapObjects, SlateportCity_House2_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SlateportCity_Mart.s b/data/maps/events/SlateportCity_Mart.s
new file mode 100644
index 000000000..7b8406575
--- /dev/null
+++ b/data/maps/events/SlateportCity_Mart.s
@@ -0,0 +1,12 @@
+SlateportCity_Mart_MapObjects:: @ 83881B0
+ object_event 1, MAP_OBJ_GFX_MART_EMPLOYEE, 0, 1, 0, 3, 0, 3, 10, 0, 0, 0, 0, 0, 0, SlateportCity_Mart_EventScript_156411, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_BLACK_BELT, 0, 4, 0, 2, 0, 3, 7, 0, 0, 0, 0, 0, 0, SlateportCity_Mart_EventScript_15643E, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MAN_4, 0, 5, 0, 5, 0, 3, 1, 0, 0, 0, 0, 0, 0, SlateportCity_Mart_EventScript_156447, 0, 0, 0
+
+SlateportCity_Mart_MapWarps:: @ 83881F8
+ warp_def 3, 7, 0, 1, SlateportCity
+ warp_def 4, 7, 0, 1, SlateportCity
+
+SlateportCity_Mart_MapEvents:: @ 8388208
+ map_events SlateportCity_Mart_MapObjects, SlateportCity_Mart_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SlateportCity_OceanicMuseum_1F.s b/data/maps/events/SlateportCity_OceanicMuseum_1F.s
new file mode 100644
index 000000000..488140043
--- /dev/null
+++ b/data/maps/events/SlateportCity_OceanicMuseum_1F.s
@@ -0,0 +1,43 @@
+SlateportCity_OceanicMuseum_1F_MapObjects:: @ 8387B38
+ object_event 1, MAP_OBJ_GFX_BEAUTY, 0, 7, 0, 7, 0, 3, 10, 0, 0, 0, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155ADB, 0, 0, 0
+ object_event 2, 241, 0, 18, 0, 5, 0, 3, 7, 0, 0, 0, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155BA1, 883, 0, 0
+ object_event 3, 241, 0, 12, 0, 2, 0, 3, 7, 0, 0, 0, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155BAA, 883, 0, 0
+ object_event 4, 241, 0, 2, 0, 8, 0, 3, 7, 0, 0, 0, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155B98, 883, 0, 0
+ object_event 5, 240, 0, 3, 0, 4, 0, 3, 9, 0, 0, 0, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155B8F, 883, 0, 0
+ object_event 6, 241, 0, 14, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155BB3, 883, 0, 0
+ object_event 7, MAP_OBJ_GFX_BEAUTY, 0, 12, 0, 7, 0, 3, 9, 0, 0, 0, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155ADB, 0, 0, 0
+ object_event 8, 241, 0, 8, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155BBC, 883, 0, 0
+ object_event 9, MAP_OBJ_GFX_WOMAN_7, 0, 4, 0, 2, 0, 3, 1, 17, 0, 0, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155C16, 961, 0, 0
+ object_event 10, MAP_OBJ_GFX_MANIAC, 0, 10, 0, 2, 0, 3, 7, 17, 0, 0, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155C1F, 961, 0, 0
+ object_event 11, MAP_OBJ_GFX_MAN_3, 0, 17, 0, 7, 0, 3, 10, 17, 0, 0, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155C28, 961, 0, 0
+ object_event 12, MAP_OBJ_GFX_LITTLE_GIRL_2, 0, 18, 0, 8, 0, 3, 7, 17, 0, 0, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155C31, 961, 0, 0
+ object_event 13, 241, 0, 9, 0, 4, 0, 3, 21, 17, 0, 0, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155C3A, 965, 0, 0
+ object_event 14, MAP_OBJ_GFX_REPORTER_M, 0, 7, 0, 4, 0, 3, 1, 17, 0, 0, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_1ADEE0, 961, 0, 0
+
+SlateportCity_OceanicMuseum_1F_MapWarps:: @ 8387C88
+ warp_def 9, 8, 0, 5, SlateportCity
+ warp_def 10, 8, 0, 7, SlateportCity
+ warp_def 6, 1, 0, 0, SlateportCity_OceanicMuseum_2F
+
+SlateportCity_OceanicMuseum_1F_MapCoordEvents:: @ 8387CA0
+ coord_event 9, 7, 3, 0, 0x40aa, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155AE4
+ coord_event 10, 7, 3, 0, 0x40aa, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155AF5
+
+SlateportCity_OceanicMuseum_1F_MapBGEvents:: @ 8387CC0
+ bg_event 2, 7, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155BC5
+ bg_event 2, 4, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155BCE
+ bg_event 9, 1, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155BD7
+ bg_event 12, 1, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155BE0
+ bg_event 10, 1, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155BD7
+ bg_event 13, 1, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155BE0
+ bg_event 15, 4, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155BE9
+ bg_event 18, 4, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155BF2
+ bg_event 18, 7, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155BFB
+ bg_event 2, 1, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155C04
+ bg_event 3, 1, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155C04
+ bg_event 16, 1, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155C0D
+ bg_event 17, 1, 0, 0, 0, SlateportCity_OceanicMuseum_1F_EventScript_155C0D
+
+SlateportCity_OceanicMuseum_1F_MapEvents:: @ 8387D5C
+ map_events SlateportCity_OceanicMuseum_1F_MapObjects, SlateportCity_OceanicMuseum_1F_MapWarps, SlateportCity_OceanicMuseum_1F_MapCoordEvents, SlateportCity_OceanicMuseum_1F_MapBGEvents
+
diff --git a/data/maps/events/SlateportCity_OceanicMuseum_2F.s b/data/maps/events/SlateportCity_OceanicMuseum_2F.s
new file mode 100644
index 000000000..6e35d33ca
--- /dev/null
+++ b/data/maps/events/SlateportCity_OceanicMuseum_2F.s
@@ -0,0 +1,38 @@
+SlateportCity_OceanicMuseum_2F_MapObjects:: @ 8387D70
+ object_event 1, MAP_OBJ_GFX_SCIENTIST_1, 0, 13, 0, 6, 0, 3, 8, 0, 0, 0, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155CE6, 887, 0, 0
+ object_event 2, 246, 0, 6, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 886, 0, 0
+ object_event 3, 241, 0, 6, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 884, 0, 0
+ object_event 4, 241, 0, 6, 0, 1, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 885, 0, 0
+ object_event 5, MAP_OBJ_GFX_OLD_MAN_2, 0, 12, 0, 7, 0, 3, 10, 17, 0, 0, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155F34, 961, 0, 0
+ object_event 6, MAP_OBJ_GFX_WOMAN_2, 0, 9, 0, 6, 0, 3, 1, 17, 0, 0, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155F3D, 961, 0, 0
+ object_event 7, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 1, 0, 3, 0, 3, 10, 17, 0, 0, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155F46, 961, 0, 0
+
+SlateportCity_OceanicMuseum_2F_MapWarps:: @ 8387E18
+ warp_def 6, 1, 0, 2, SlateportCity_OceanicMuseum_1F
+
+SlateportCity_OceanicMuseum_2F_MapBGEvents:: @ 8387E20
+ bg_event 18, 4, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155EDA
+ bg_event 18, 7, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155EE3
+ bg_event 4, 3, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155F22
+ bg_event 4, 4, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155F22
+ bg_event 3, 3, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155F19
+ bg_event 2, 3, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155F19
+ bg_event 3, 4, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155F19
+ bg_event 3, 6, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155F10
+ bg_event 4, 6, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155F10
+ bg_event 13, 7, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155F2B
+ bg_event 14, 7, 3, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155F2B
+ bg_event 18, 1, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155F07
+ bg_event 19, 1, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155F07
+ bg_event 15, 1, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155EFE
+ bg_event 16, 1, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155EFE
+ bg_event 8, 1, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155EF5
+ bg_event 9, 1, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155EF5
+ bg_event 12, 1, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155EEC
+ bg_event 13, 1, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155EEC
+ bg_event 3, 7, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155F10
+ bg_event 4, 7, 0, 0, 0, SlateportCity_OceanicMuseum_2F_EventScript_155F10
+
+SlateportCity_OceanicMuseum_2F_MapEvents:: @ 8387F1C
+ map_events SlateportCity_OceanicMuseum_2F_MapObjects, SlateportCity_OceanicMuseum_2F_MapWarps, 0x0, SlateportCity_OceanicMuseum_2F_MapBGEvents
+
diff --git a/data/maps/events/SlateportCity_PokemonCenter_1F.s b/data/maps/events/SlateportCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..de0938a00
--- /dev/null
+++ b/data/maps/events/SlateportCity_PokemonCenter_1F.s
@@ -0,0 +1,13 @@
+SlateportCity_PokemonCenter_1F_MapObjects:: @ 83880B8
+ object_event 1, MAP_OBJ_GFX_NURSE, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, SlateportCity_PokemonCenter_1F_EventScript_1563CE, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SAILOR, 0, 2, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, SlateportCity_PokemonCenter_1F_EventScript_1563DC, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_WOMAN_7, 0, 10, 0, 7, 0, 3, 10, 0, 0, 0, 0, 0, 0, SlateportCity_PokemonCenter_1F_EventScript_1563E5, 0, 0, 0
+
+SlateportCity_PokemonCenter_1F_MapWarps:: @ 8388100
+ warp_def 7, 8, 3, 0, SlateportCity
+ warp_def 6, 8, 3, 0, SlateportCity
+ warp_def 1, 6, 4, 0, SlateportCity_PokemonCenter_2F
+
+SlateportCity_PokemonCenter_1F_MapEvents:: @ 8388118
+ map_events SlateportCity_PokemonCenter_1F_MapObjects, SlateportCity_PokemonCenter_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SlateportCity_PokemonCenter_2F.s b/data/maps/events/SlateportCity_PokemonCenter_2F.s
new file mode 100644
index 000000000..2de928343
--- /dev/null
+++ b/data/maps/events/SlateportCity_PokemonCenter_2F.s
@@ -0,0 +1,15 @@
+SlateportCity_PokemonCenter_2F_MapObjects:: @ 838812C
+ object_event 1, MAP_OBJ_GFX_TEALA, 0, 4, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, SlateportCity_PokemonCenter_2F_EventScript_1563FE, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_TEALA, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, SlateportCity_PokemonCenter_2F_EventScript_156404, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_TEALA, 0, 10, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, SlateportCity_PokemonCenter_2F_EventScript_15640A, 0, 0, 0
+
+SlateportCity_PokemonCenter_2F_MapWarps:: @ 8388174
+ warp_def 1, 5, 4, 2, SlateportCity_PokemonCenter_1F
+ warp_def 5, 1, 0, 0, SingleBattleColosseum
+ warp_def 8, 1, 0, 0, TradeCenter
+ warp_def 11, 1, 0, 0, RecordCorner
+ warp_def 0, 0, 0, 0, DoubleBattleColosseum
+
+SlateportCity_PokemonCenter_2F_MapEvents:: @ 838819C
+ map_events SlateportCity_PokemonCenter_2F_MapObjects, SlateportCity_PokemonCenter_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SlateportCity_PokemonFanClub.s b/data/maps/events/SlateportCity_PokemonFanClub.s
new file mode 100644
index 000000000..55870c257
--- /dev/null
+++ b/data/maps/events/SlateportCity_PokemonFanClub.s
@@ -0,0 +1,17 @@
+SlateportCity_PokemonFanClub_MapObjects:: @ 8387A54
+ object_event 1, MAP_OBJ_GFX_MAN_1, 0, 11, 0, 4, 0, 0, 8, 0, 0, 0, 0, 0, 0, SlateportCity_PokemonFanClub_EventScript_155A7F, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_LITTLE_GIRL_1, 0, 1, 0, 5, 0, 0, 3, 16, 0, 0, 0, 0, 0, SlateportCity_PokemonFanClub_EventScript_155A88, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_REPORTER_F, 0, 11, 0, 5, 0, 0, 7, 0, 0, 0, 0, 0, 0, SlateportCity_PokemonFanClub_EventScript_1ADFA0, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_WOMAN_5, 0, 6, 0, 2, 0, 3, 1, 0, 0, 0, 0, 0, 0, SlateportCity_PokemonFanClub_EventScript_155A15, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_GENTLEMAN, 0, 6, 0, 5, 0, 4, 8, 0, 0, 0, 0, 0, 0, SlateportCity_PokemonFanClub_EventScript_15576B, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_ZIGZAGOON, 0, 3, 0, 9, 0, 3, 1, 17, 0, 0, 0, 0, 0, SlateportCity_PokemonFanClub_EventScript_155AA4, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_SKITTY, 0, 8, 0, 3, 0, 3, 1, 17, 0, 0, 0, 0, 0, SlateportCity_PokemonFanClub_EventScript_155A91, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_AZUMARILL, 0, 10, 0, 8, 0, 3, 1, 17, 0, 0, 0, 0, 0, SlateportCity_PokemonFanClub_EventScript_155AB7, 0, 0, 0
+
+SlateportCity_PokemonFanClub_MapWarps:: @ 8387B14
+ warp_def 6, 10, 0, 4, SlateportCity
+ warp_def 7, 10, 0, 4, SlateportCity
+
+SlateportCity_PokemonFanClub_MapEvents:: @ 8387B24
+ map_events SlateportCity_PokemonFanClub_MapObjects, SlateportCity_PokemonFanClub_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SlateportCity_SternsShipyard_1F.s b/data/maps/events/SlateportCity_SternsShipyard_1F.s
new file mode 100644
index 000000000..f57a7be9e
--- /dev/null
+++ b/data/maps/events/SlateportCity_SternsShipyard_1F.s
@@ -0,0 +1,14 @@
+SlateportCity_SternsShipyard_1F_MapObjects:: @ 8387698
+ object_event 1, MAP_OBJ_GFX_MAN_1, 0, 5, 0, 5, 0, 3, 8, 0, 0, 0, 0, 0, 0, SlateportCity_SternsShipyard_1F_EventScript_155336, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SCIENTIST_1, 0, 10, 0, 7, 0, 3, 7, 0, 0, 0, 0, 0, 0, SlateportCity_SternsShipyard_1F_EventScript_1553E3, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_SCIENTIST_1, 0, 18, 0, 8, 0, 3, 5, 1, 0, 0, 0, 0, 0, SlateportCity_SternsShipyard_1F_EventScript_1553EC, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_OLD_MAN_1, 0, 12, 0, 11, 0, 3, 2, 33, 0, 0, 0, 0, 0, SlateportCity_SternsShipyard_1F_EventScript_1553F5, 869, 0, 0
+
+SlateportCity_SternsShipyard_1F_MapWarps:: @ 83876F8
+ warp_def 2, 14, 0, 2, SlateportCity
+ warp_def 3, 14, 0, 2, SlateportCity
+ warp_def 3, 1, 0, 0, SlateportCity_SternsShipyard_2F
+
+SlateportCity_SternsShipyard_1F_MapEvents:: @ 8387710
+ map_events SlateportCity_SternsShipyard_1F_MapObjects, SlateportCity_SternsShipyard_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SlateportCity_SternsShipyard_2F.s b/data/maps/events/SlateportCity_SternsShipyard_2F.s
new file mode 100644
index 000000000..e5571ec62
--- /dev/null
+++ b/data/maps/events/SlateportCity_SternsShipyard_2F.s
@@ -0,0 +1,11 @@
+SlateportCity_SternsShipyard_2F_MapObjects:: @ 8387724
+ object_event 1, MAP_OBJ_GFX_SCIENTIST_1, 0, 10, 0, 7, 0, 3, 7, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SCIENTIST_1, 0, 8, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, SlateportCity_SternsShipyard_2F_EventScript_1553FF, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_SCIENTIST_1, 0, 0, 0, 9, 0, 3, 7, 0, 0, 0, 0, 0, 0, SlateportCity_SternsShipyard_2F_EventScript_155408, 0, 0, 0
+
+SlateportCity_SternsShipyard_2F_MapWarps:: @ 838776C
+ warp_def 3, 1, 0, 2, SlateportCity_SternsShipyard_1F
+
+SlateportCity_SternsShipyard_2F_MapEvents:: @ 8387774
+ map_events SlateportCity_SternsShipyard_2F_MapObjects, SlateportCity_SternsShipyard_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SootopolisCity.s b/data/maps/events/SootopolisCity.s
new file mode 100644
index 000000000..d1015b814
--- /dev/null
+++ b/data/maps/events/SootopolisCity.s
@@ -0,0 +1,41 @@
+SootopolisCity_MapObjects:: @ 8380608
+ object_event 1, MAP_OBJ_GFX_BEAUTY, 0, 29, 0, 20, 0, 3, 8, 0, 0, 0, 0, 0, 0, SootopolisCity_EventScript_14D18D, 855, 0, 0
+ object_event 2, MAP_OBJ_GFX_BEAUTY, 0, 33, 0, 20, 0, 3, 8, 0, 0, 0, 0, 0, 0, SootopolisCity_EventScript_14D196, 856, 0, 0
+ object_event 3, MAP_OBJ_GFX_OLD_MAN_1, 0, 36, 0, 21, 0, 3, 8, 0, 0, 0, 0, 0, 0, SootopolisCity_EventScript_14D16E, 854, 0, 0
+ object_event 4, MAP_OBJ_GFX_WOMAN_5, 0, 47, 0, 42, 0, 3, 8, 0, 0, 0, 0, 0, 0, SootopolisCity_EventScript_14D268, 854, 0, 0
+ object_event 5, MAP_OBJ_GFX_WALLACE, 0, 32, 0, 21, 0, 3, 9, 0, 0, 0, 0, 0, 0, SootopolisCity_EventScript_14D48F, 816, 0, 0
+ object_event 6, MAP_OBJ_GFX_GIRL_2, 0, 9, 0, 43, 0, 3, 5, 1, 0, 0, 0, 0, 0, SootopolisCity_EventScript_14D19F, 854, 0, 0
+ object_event 7, MAP_OBJ_GFX_LITTLE_BOY_1, 0, 51, 0, 14, 0, 3, 8, 0, 0, 0, 0, 0, 0, SootopolisCity_EventScript_14D2C5, 854, 0, 0
+ object_event 8, MAP_OBJ_GFX_BOY_1, 0, 43, 0, 26, 0, 3, 1, 0, 0, 0, 0, 0, 0, SootopolisCity_EventScript_14D2E4, 854, 0, 0
+ object_event 9, MAP_OBJ_GFX_MAN_1, 0, 26, 0, 4, 0, 3, 5, 1, 0, 0, 0, 0, 0, SootopolisCity_EventScript_14D287, 854, 0, 0
+ object_event 10, MAP_OBJ_GFX_STEVEN, 0, 30, 0, 21, 0, 3, 10, 17, 0, 0, 0, 0, 0, SootopolisCity_EventScript_14D498, 973, 0, 0
+ object_event 11, MAP_OBJ_GFX_WOMAN_7, 0, 49, 0, 34, 0, 3, 3, 17, 0, 0, 0, 0, 0, SootopolisCity_EventScript_14D2A6, 854, 0, 0
+
+SootopolisCity_MapWarps:: @ 8380710
+ warp_def 43, 31, 0, 0, SootopolisCity_PokemonCenter_1F
+ warp_def 17, 29, 0, 0, SootopolisCity_Mart
+ warp_def 31, 32, 0, 0, SootopolisCity_Gym_1F
+ warp_def 31, 16, 3, 0, CaveOfOrigin_Entrance
+ warp_def 9, 6, 0, 0, SootopolisCity_House1
+ warp_def 45, 6, 0, 0, SootopolisCity_House2
+ warp_def 9, 17, 0, 0, SootopolisCity_House3
+ warp_def 44, 17, 0, 0, SootopolisCity_House4
+ warp_def 9, 26, 0, 0, SootopolisCity_House5
+ warp_def 53, 28, 0, 0, SootopolisCity_House6
+ warp_def 8, 35, 0, 0, SootopolisCity_House7
+ warp_def 48, 25, 0, 0, SootopolisCity_House8
+
+SootopolisCity_MapCoordEvents:: @ 8380770
+ coord_event 25, 6, 3, 0, 0x405e, 1, 0, SootopolisCity_EventScript_14D308
+
+SootopolisCity_MapBGEvents:: @ 8380780
+ bg_event 32, 34, 0, 0, 0, SootopolisCity_EventScript_14D2ED
+ bg_event 19, 29, 0, 1, 0, SootopolisCity_EventScript_1A00E1
+ bg_event 44, 31, 0, 1, 0, SootopolisCity_EventScript_1A00EA
+ bg_event 45, 31, 0, 1, 0, SootopolisCity_EventScript_1A00EA
+ bg_event 18, 29, 0, 1, 0, SootopolisCity_EventScript_1A00E1
+ bg_event 41, 37, 0, 0, 0, SootopolisCity_EventScript_14D2F6
+
+SootopolisCity_MapEvents:: @ 83807C8
+ map_events SootopolisCity_MapObjects, SootopolisCity_MapWarps, SootopolisCity_MapCoordEvents, SootopolisCity_MapBGEvents
+
diff --git a/data/maps/events/SootopolisCity_Gym_1F.s b/data/maps/events/SootopolisCity_Gym_1F.s
new file mode 100644
index 000000000..f8f1ad0d8
--- /dev/null
+++ b/data/maps/events/SootopolisCity_Gym_1F.s
@@ -0,0 +1,16 @@
+SootopolisCity_Gym_1F_MapObjects:: @ 838ACF0
+ object_event 1, MAP_OBJ_GFX_WALLACE, 0, 8, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, SootopolisCity_Gym_1F_EventScript_15AFFF, 815, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_2, 0, 7, 0, 24, 0, 3, 8, 0, 0, 0, 0, 0, 0, SootopolisCity_Gym_1F_EventScript_15B084, 0, 0, 0
+
+SootopolisCity_Gym_1F_MapWarps:: @ 838AD20
+ warp_def 8, 25, 0, 2, SootopolisCity
+ warp_def 9, 25, 0, 2, SootopolisCity
+ warp_def 11, 22, 3, 0, SootopolisCity_Gym_B1F
+
+SootopolisCity_Gym_1F_MapBGEvents:: @ 838AD38
+ bg_event 6, 24, 0, 0, 0, SootopolisCity_Gym_1F_EventScript_15B0A3
+ bg_event 10, 24, 0, 1, 0, SootopolisCity_Gym_1F_EventScript_15B0B3
+
+SootopolisCity_Gym_1F_MapEvents:: @ 838AD50
+ map_events SootopolisCity_Gym_1F_MapObjects, SootopolisCity_Gym_1F_MapWarps, 0x0, SootopolisCity_Gym_1F_MapBGEvents
+
diff --git a/data/maps/events/SootopolisCity_Gym_B1F.s b/data/maps/events/SootopolisCity_Gym_B1F.s
new file mode 100644
index 000000000..3814c5852
--- /dev/null
+++ b/data/maps/events/SootopolisCity_Gym_B1F.s
@@ -0,0 +1,16 @@
+SootopolisCity_Gym_B1F_MapObjects:: @ 838AD64
+ object_event 1, MAP_OBJ_GFX_LASS, 0, 7, 0, 19, 0, 3, 10, 0, 0, 1, 0, 1, 0, SootopolisCity_Gym_B1F_EventScript_15B0D8, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_BEAUTY, 0, 9, 0, 17, 0, 3, 9, 0, 0, 1, 0, 1, 0, SootopolisCity_Gym_B1F_EventScript_15B11D, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_WOMAN_3, 0, 9, 0, 14, 0, 3, 9, 0, 0, 1, 0, 1, 0, SootopolisCity_Gym_B1F_EventScript_15B106, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_BEAUTY, 0, 6, 0, 13, 0, 3, 10, 0, 0, 1, 0, 5, 0, SootopolisCity_Gym_B1F_EventScript_15B134, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_BEAUTY, 0, 3, 0, 9, 0, 3, 10, 0, 0, 1, 0, 4, 0, SootopolisCity_Gym_B1F_EventScript_15B162, 0, 0, 0
+ object_event 6, MAP_OBJ_GFX_WOMAN_2, 0, 11, 0, 9, 0, 3, 9, 0, 0, 1, 0, 2, 0, SootopolisCity_Gym_B1F_EventScript_15B179, 0, 0, 0
+ object_event 7, MAP_OBJ_GFX_LASS, 0, 8, 0, 7, 0, 3, 8, 0, 0, 1, 0, 2, 0, SootopolisCity_Gym_B1F_EventScript_15B0EF, 0, 0, 0
+ object_event 8, MAP_OBJ_GFX_BEAUTY, 0, 12, 0, 7, 0, 3, 9, 0, 0, 1, 0, 3, 0, SootopolisCity_Gym_B1F_EventScript_15B14B, 0, 0, 0
+
+SootopolisCity_Gym_B1F_MapWarps:: @ 838AE24
+ warp_def 11, 22, 3, 2, SootopolisCity_Gym_1F
+
+SootopolisCity_Gym_B1F_MapEvents:: @ 838AE2C
+ map_events SootopolisCity_Gym_B1F_MapObjects, SootopolisCity_Gym_B1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SootopolisCity_House1.s b/data/maps/events/SootopolisCity_House1.s
new file mode 100644
index 000000000..3c5959ea6
--- /dev/null
+++ b/data/maps/events/SootopolisCity_House1.s
@@ -0,0 +1,11 @@
+SootopolisCity_House1_MapObjects:: @ 838AFA4
+ object_event 1, MAP_OBJ_GFX_BLACK_BELT, 0, 2, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, SootopolisCity_House1_EventScript_15B29B, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_KECLEON_1, 0, 2, 0, 3, 0, 3, 8, 0, 0, 0, 0, 0, 0, SootopolisCity_House1_EventScript_15B2D1, 0, 0, 0
+
+SootopolisCity_House1_MapWarps:: @ 838AFD4
+ warp_def 3, 6, 0, 4, SootopolisCity
+ warp_def 4, 6, 0, 4, SootopolisCity
+
+SootopolisCity_House1_MapEvents:: @ 838AFE4
+ map_events SootopolisCity_House1_MapObjects, SootopolisCity_House1_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SootopolisCity_House2.s b/data/maps/events/SootopolisCity_House2.s
new file mode 100644
index 000000000..c96b634c7
--- /dev/null
+++ b/data/maps/events/SootopolisCity_House2.s
@@ -0,0 +1,10 @@
+SootopolisCity_House2_MapObjects:: @ 838AFF8
+ object_event 1, MAP_OBJ_GFX_OLD_WOMAN_1, 0, 3, 0, 3, 0, 3, 10, 0, 0, 0, 0, 0, 0, SootopolisCity_House2_EventScript_15B2E5, 0, 0, 0
+
+SootopolisCity_House2_MapWarps:: @ 838B010
+ warp_def 3, 6, 0, 5, SootopolisCity
+ warp_def 4, 6, 0, 5, SootopolisCity
+
+SootopolisCity_House2_MapEvents:: @ 838B020
+ map_events SootopolisCity_House2_MapObjects, SootopolisCity_House2_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SootopolisCity_House3.s b/data/maps/events/SootopolisCity_House3.s
new file mode 100644
index 000000000..65aabc255
--- /dev/null
+++ b/data/maps/events/SootopolisCity_House3.s
@@ -0,0 +1,11 @@
+SootopolisCity_House3_MapObjects:: @ 838B034
+ object_event 1, MAP_OBJ_GFX_WOMAN_5, 0, 2, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, SootopolisCity_House3_EventScript_15B31A, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_GIRL_2, 0, 6, 0, 4, 0, 3, 2, 17, 0, 0, 0, 0, 0, SootopolisCity_House3_EventScript_15B343, 0, 0, 0
+
+SootopolisCity_House3_MapWarps:: @ 838B064
+ warp_def 3, 6, 0, 6, SootopolisCity
+ warp_def 4, 6, 0, 6, SootopolisCity
+
+SootopolisCity_House3_MapEvents:: @ 838B074
+ map_events SootopolisCity_House3_MapObjects, SootopolisCity_House3_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SootopolisCity_House4.s b/data/maps/events/SootopolisCity_House4.s
new file mode 100644
index 000000000..33e197f9f
--- /dev/null
+++ b/data/maps/events/SootopolisCity_House4.s
@@ -0,0 +1,12 @@
+SootopolisCity_House4_MapObjects:: @ 838B088
+ object_event 1, MAP_OBJ_GFX_MAN_1, 0, 2, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, SootopolisCity_House4_EventScript_15B34D, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_5, 0, 5, 0, 2, 0, 3, 7, 33, 0, 0, 0, 0, 0, SootopolisCity_House4_EventScript_15B356, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_AZUMARILL, 0, 2, 0, 3, 0, 3, 1, 17, 0, 0, 0, 0, 0, SootopolisCity_House4_EventScript_15B35F, 0, 0, 0
+
+SootopolisCity_House4_MapWarps:: @ 838B0D0
+ warp_def 3, 6, 0, 7, SootopolisCity
+ warp_def 4, 6, 0, 7, SootopolisCity
+
+SootopolisCity_House4_MapEvents:: @ 838B0E0
+ map_events SootopolisCity_House4_MapObjects, SootopolisCity_House4_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SootopolisCity_House5.s b/data/maps/events/SootopolisCity_House5.s
new file mode 100644
index 000000000..2ad8c1efd
--- /dev/null
+++ b/data/maps/events/SootopolisCity_House5.s
@@ -0,0 +1,11 @@
+SootopolisCity_House5_MapObjects:: @ 838B0F4
+ object_event 1, MAP_OBJ_GFX_MANIAC, 0, 3, 0, 3, 0, 3, 10, 0, 0, 0, 0, 0, 0, SootopolisCity_House5_EventScript_15B373, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_GIRL_3, 0, 6, 0, 3, 0, 3, 9, 0, 0, 0, 0, 0, 0, SootopolisCity_House5_EventScript_15B37C, 0, 0, 0
+
+SootopolisCity_House5_MapWarps:: @ 838B124
+ warp_def 3, 6, 0, 8, SootopolisCity
+ warp_def 4, 6, 0, 8, SootopolisCity
+
+SootopolisCity_House5_MapEvents:: @ 838B134
+ map_events SootopolisCity_House5_MapObjects, SootopolisCity_House5_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SootopolisCity_House6.s b/data/maps/events/SootopolisCity_House6.s
new file mode 100644
index 000000000..f56d0d6ef
--- /dev/null
+++ b/data/maps/events/SootopolisCity_House6.s
@@ -0,0 +1,10 @@
+SootopolisCity_House6_MapObjects:: @ 838B148
+ object_event 1, MAP_OBJ_GFX_WOMAN_3, 0, 4, 0, 3, 0, 3, 2, 17, 0, 0, 0, 0, 0, SootopolisCity_House6_EventScript_15B386, 0, 0, 0
+
+SootopolisCity_House6_MapWarps:: @ 838B160
+ warp_def 3, 6, 0, 9, SootopolisCity
+ warp_def 4, 6, 0, 9, SootopolisCity
+
+SootopolisCity_House6_MapEvents:: @ 838B170
+ map_events SootopolisCity_House6_MapObjects, SootopolisCity_House6_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SootopolisCity_House7.s b/data/maps/events/SootopolisCity_House7.s
new file mode 100644
index 000000000..a737e74b2
--- /dev/null
+++ b/data/maps/events/SootopolisCity_House7.s
@@ -0,0 +1,11 @@
+SootopolisCity_House7_MapObjects:: @ 838B184
+ object_event 1, MAP_OBJ_GFX_OLD_MAN_2, 0, 5, 0, 3, 0, 3, 9, 0, 0, 0, 0, 0, 0, SootopolisCity_House7_EventScript_15B3EE, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_2, 0, 1, 0, 4, 0, 3, 2, 17, 0, 0, 0, 0, 0, SootopolisCity_House7_EventScript_15B3F7, 0, 0, 0
+
+SootopolisCity_House7_MapWarps:: @ 838B1B4
+ warp_def 3, 6, 0, 10, SootopolisCity
+ warp_def 4, 6, 0, 10, SootopolisCity
+
+SootopolisCity_House7_MapEvents:: @ 838B1C4
+ map_events SootopolisCity_House7_MapObjects, SootopolisCity_House7_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SootopolisCity_House8.s b/data/maps/events/SootopolisCity_House8.s
new file mode 100644
index 000000000..f484d37f2
--- /dev/null
+++ b/data/maps/events/SootopolisCity_House8.s
@@ -0,0 +1,15 @@
+SootopolisCity_House8_MapObjects:: @ 838B1D8
+ object_event 1, MAP_OBJ_GFX_FISHERMAN, 0, 2, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, SootopolisCity_House8_EventScript_15B492, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_HIKER, 0, 5, 0, 4, 0, 3, 9, 0, 0, 0, 0, 0, 0, SootopolisCity_House8_EventScript_15B401, 0, 0, 0
+
+SootopolisCity_House8_MapWarps:: @ 838B208
+ warp_def 3, 6, 0, 11, SootopolisCity
+ warp_def 4, 6, 0, 11, SootopolisCity
+
+SootopolisCity_House8_MapBGEvents:: @ 838B218
+ bg_event 5, 1, 0, 0, 0, SootopolisCity_House8_EventScript_15B523
+ bg_event 2, 1, 0, 0, 0, SootopolisCity_House8_EventScript_15B531
+
+SootopolisCity_House8_MapEvents:: @ 838B230
+ map_events SootopolisCity_House8_MapObjects, SootopolisCity_House8_MapWarps, 0x0, SootopolisCity_House8_MapBGEvents
+
diff --git a/data/maps/events/SootopolisCity_Mart.s b/data/maps/events/SootopolisCity_Mart.s
new file mode 100644
index 000000000..07c83773d
--- /dev/null
+++ b/data/maps/events/SootopolisCity_Mart.s
@@ -0,0 +1,12 @@
+SootopolisCity_Mart_MapObjects:: @ 838AF38
+ object_event 1, MAP_OBJ_GFX_MART_EMPLOYEE, 0, 1, 0, 3, 0, 3, 10, 0, 0, 0, 0, 0, 0, SootopolisCity_Mart_EventScript_15B21B, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_FAT_MAN, 0, 5, 0, 5, 0, 3, 10, 0, 0, 0, 0, 0, 0, SootopolisCity_Mart_EventScript_15B24A, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_GENTLEMAN, 0, 9, 0, 5, 0, 3, 10, 0, 0, 0, 0, 0, 0, SootopolisCity_Mart_EventScript_15B272, 0, 0, 0
+
+SootopolisCity_Mart_MapWarps:: @ 838AF80
+ warp_def 3, 7, 0, 1, SootopolisCity
+ warp_def 4, 7, 0, 1, SootopolisCity
+
+SootopolisCity_Mart_MapEvents:: @ 838AF90
+ map_events SootopolisCity_Mart_MapObjects, SootopolisCity_Mart_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SootopolisCity_PokemonCenter_1F.s b/data/maps/events/SootopolisCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..640eb2389
--- /dev/null
+++ b/data/maps/events/SootopolisCity_PokemonCenter_1F.s
@@ -0,0 +1,13 @@
+SootopolisCity_PokemonCenter_1F_MapObjects:: @ 838AE40
+ object_event 1, MAP_OBJ_GFX_NURSE, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, SootopolisCity_PokemonCenter_1F_EventScript_15BC70, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_GENTLEMAN, 0, 12, 0, 4, 0, 3, 2, 17, 0, 0, 0, 0, 0, SootopolisCity_PokemonCenter_1F_EventScript_15B1A8, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_WOMAN_7, 0, 4, 0, 7, 0, 3, 5, 1, 0, 0, 0, 0, 0, SootopolisCity_PokemonCenter_1F_EventScript_15B1D0, 0, 0, 0
+
+SootopolisCity_PokemonCenter_1F_MapWarps:: @ 838AE88
+ warp_def 7, 8, 3, 0, SootopolisCity
+ warp_def 6, 8, 3, 0, SootopolisCity
+ warp_def 1, 6, 4, 0, SootopolisCity_PokemonCenter_2F
+
+SootopolisCity_PokemonCenter_1F_MapEvents:: @ 838AEA0
+ map_events SootopolisCity_PokemonCenter_1F_MapObjects, SootopolisCity_PokemonCenter_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SootopolisCity_PokemonCenter_2F.s b/data/maps/events/SootopolisCity_PokemonCenter_2F.s
new file mode 100644
index 000000000..b149402ca
--- /dev/null
+++ b/data/maps/events/SootopolisCity_PokemonCenter_2F.s
@@ -0,0 +1,15 @@
+SootopolisCity_PokemonCenter_2F_MapObjects:: @ 838AEB4
+ object_event 1, MAP_OBJ_GFX_TEALA, 0, 4, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, SootopolisCity_PokemonCenter_2F_EventScript_15B208, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_TEALA, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, SootopolisCity_PokemonCenter_2F_EventScript_15B20E, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_TEALA, 0, 10, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, SootopolisCity_PokemonCenter_2F_EventScript_15B214, 0, 0, 0
+
+SootopolisCity_PokemonCenter_2F_MapWarps:: @ 838AEFC
+ warp_def 1, 5, 4, 2, SootopolisCity_PokemonCenter_1F
+ warp_def 5, 1, 0, 0, SingleBattleColosseum
+ warp_def 8, 1, 0, 0, TradeCenter
+ warp_def 11, 1, 0, 0, RecordCorner
+ warp_def 0, 0, 0, 0, DoubleBattleColosseum
+
+SootopolisCity_PokemonCenter_2F_MapEvents:: @ 838AF24
+ map_events SootopolisCity_PokemonCenter_2F_MapObjects, SootopolisCity_PokemonCenter_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/SouthernIsland_Exterior.s b/data/maps/events/SouthernIsland_Exterior.s
new file mode 100644
index 000000000..30a77ac29
--- /dev/null
+++ b/data/maps/events/SouthernIsland_Exterior.s
@@ -0,0 +1,14 @@
+SouthernIsland_Exterior_MapObjects:: @ 8391E00
+ object_event 1, MAP_OBJ_GFX_SAILOR, 0, 13, 0, 23, 0, 3, 7, 0, 0, 0, 0, 0, 0, SouthernIsland_Exterior_EventScript_160AE0, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_SS_TIDAL, 0, 13, 0, 25, 0, 1, 10, 0, 0, 0, 0, 0, 0, 0x0, 0, 0, 0
+
+SouthernIsland_Exterior_MapWarps:: @ 8391E30
+ warp_def 14, 5, 3, 0, SouthernIsland_Interior
+ warp_def 15, 5, 3, 1, SouthernIsland_Interior
+
+SouthernIsland_Exterior_MapBGEvents:: @ 8391E40
+ bg_event 16, 7, 3, 0, 0, SouthernIsland_Exterior_EventScript_160B4A
+
+SouthernIsland_Exterior_MapEvents:: @ 8391E4C
+ map_events SouthernIsland_Exterior_MapObjects, SouthernIsland_Exterior_MapWarps, 0x0, SouthernIsland_Exterior_MapBGEvents
+
diff --git a/data/maps/events/SouthernIsland_Interior.s b/data/maps/events/SouthernIsland_Interior.s
new file mode 100644
index 000000000..0f718c43a
--- /dev/null
+++ b/data/maps/events/SouthernIsland_Interior.s
@@ -0,0 +1,14 @@
+SouthernIsland_Interior_MapObjects:: @ 8391E60
+ object_event 1, 240, 0, 13, 0, 12, 0, 3, 7, 0, 0, 0, 0, 0, 0, 0x0, 910, 0, 0
+ object_event 2, 241, 0, 13, 0, 2, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0x0, 911, 0, 0
+
+SouthernIsland_Interior_MapWarps:: @ 8391E90
+ warp_def 13, 18, 3, 0, SouthernIsland_Exterior
+ warp_def 14, 18, 3, 1, SouthernIsland_Exterior
+
+SouthernIsland_Interior_MapBGEvents:: @ 8391EA0
+ bg_event 13, 11, 3, 1, 0, SouthernIsland_Interior_EventScript_160B9B
+
+SouthernIsland_Interior_MapEvents:: @ 8391EAC
+ map_events SouthernIsland_Interior_MapObjects, SouthernIsland_Interior_MapWarps, 0x0, SouthernIsland_Interior_MapBGEvents
+
diff --git a/data/maps/events/TradeCenter.s b/data/maps/events/TradeCenter.s
new file mode 100644
index 000000000..b837208d9
--- /dev/null
+++ b/data/maps/events/TradeCenter.s
@@ -0,0 +1,14 @@
+TradeCenter_MapObjects:: @ 8391340
+ object_event 1, MAP_OBJ_GFX_WOMAN_6, 0, 9, 0, 6, 0, 3, 9, 0, 0, 0, 0, 0, 0, TradeCenter_EventScript_1A44AD, 0, 0, 0
+
+TradeCenter_MapWarps:: @ 8391358
+ warp_def 5, 8, 3, 127, NONE
+ warp_def 6, 8, 3, 127, NONE
+
+TradeCenter_MapCoordEvents:: @ 8391368
+ coord_event 4, 5, 3, 0, 0x4000, 0, 0, TradeCenter_EventScript_1A43F0
+ coord_event 7, 5, 3, 0, 0x4000, 0, 0, TradeCenter_EventScript_1A43FA
+
+TradeCenter_MapEvents:: @ 8391388
+ map_events TradeCenter_MapObjects, TradeCenter_MapWarps, TradeCenter_MapCoordEvents, 0x0
+
diff --git a/data/maps/events/Underwater1.s b/data/maps/events/Underwater1.s
new file mode 100644
index 000000000..cc1b41c03
--- /dev/null
+++ b/data/maps/events/Underwater1.s
@@ -0,0 +1,12 @@
+Underwater1_MapBGEvents:: @ 8385518
+ bg_event 42, 51, 0, 7, 0, ITEM_CARBOS, 8, 0
+ bg_event 14, 40, 0, 7, 0, ITEM_GREEN_SHARD, 9, 0
+ bg_event 66, 34, 3, 7, 0, ITEM_PEARL, 10, 0
+ bg_event 64, 54, 3, 7, 0, ITEM_BIG_PEARL, 11, 0
+ bg_event 70, 64, 3, 7, 0, ITEM_HEART_SCALE, 13, 0
+ bg_event 42, 5, 3, 7, 0, ITEM_CALCIUM, 36, 0
+ bg_event 45, 36, 3, 7, 0, ITEM_HEART_SCALE, 38, 0
+
+Underwater1_MapEvents:: @ 838556C
+ map_events 0x0, 0x0, 0x0, Underwater1_MapBGEvents
+
diff --git a/data/maps/events/Underwater2.s b/data/maps/events/Underwater2.s
new file mode 100644
index 000000000..ca025905f
--- /dev/null
+++ b/data/maps/events/Underwater2.s
@@ -0,0 +1,16 @@
+Underwater2_MapWarps:: @ 8385580
+ warp_def 45, 65, 0, 0, Underwater_SootopolisCity
+
+Underwater2_MapBGEvents:: @ 8385588
+ bg_event 30, 17, 3, 7, 0, ITEM_HEART_SCALE, 14, 0
+ bg_event 41, 19, 3, 7, 0, ITEM_ULTRA_BALL, 15, 0
+ bg_event 63, 19, 3, 7, 0, ITEM_STARDUST, 16, 0
+ bg_event 10, 36, 3, 7, 0, ITEM_PEARL, 17, 0
+ bg_event 11, 39, 3, 7, 0, ITEM_IRON, 19, 0
+ bg_event 12, 35, 3, 7, 0, ITEM_YELLOW_SHARD, 18, 0
+ bg_event 65, 60, 3, 7, 0, ITEM_BIG_PEARL, 20, 0
+ bg_event 9, 77, 3, 7, 0, ITEM_BLUE_SHARD, 12, 0
+
+Underwater2_MapEvents:: @ 83855E8
+ map_events 0x0, Underwater2_MapWarps, 0x0, Underwater2_MapBGEvents
+
diff --git a/data/maps/events/Underwater3.s b/data/maps/events/Underwater3.s
new file mode 100644
index 000000000..7fa02cd71
--- /dev/null
+++ b/data/maps/events/Underwater3.s
@@ -0,0 +1,9 @@
+Underwater3_MapBGEvents:: @ 83855FC
+ bg_event 12, 42, 3, 7, 0, ITEM_STAR_PIECE, 21, 0
+ bg_event 50, 36, 3, 7, 0, ITEM_HP_UP, 22, 0
+ bg_event 34, 72, 3, 7, 0, ITEM_HEART_SCALE, 23, 0
+ bg_event 72, 20, 3, 7, 0, ITEM_RED_SHARD, 24, 0
+
+Underwater3_MapEvents:: @ 838562C
+ map_events 0x0, 0x0, 0x0, Underwater3_MapBGEvents
+
diff --git a/data/maps/events/Underwater4.s b/data/maps/events/Underwater4.s
new file mode 100644
index 000000000..97fc15c1b
--- /dev/null
+++ b/data/maps/events/Underwater4.s
@@ -0,0 +1,10 @@
+Underwater4_MapWarps:: @ 8385640
+ warp_def 38, 26, 3, 0, Underwater_SeafloorCavern
+
+Underwater4_MapBGEvents:: @ 8385648
+ bg_event 38, 19, 3, 7, 0, ITEM_PROTEIN, 25, 0
+ bg_event 69, 18, 3, 7, 0, ITEM_PEARL, 26, 0
+
+Underwater4_MapEvents:: @ 8385660
+ map_events 0x0, Underwater4_MapWarps, 0x0, Underwater4_MapBGEvents
+
diff --git a/data/maps/events/Underwater_Route134.s b/data/maps/events/Underwater_Route134.s
new file mode 100644
index 000000000..1212a3e71
--- /dev/null
+++ b/data/maps/events/Underwater_Route134.s
@@ -0,0 +1,6 @@
+Underwater_Route134_MapWarps:: @ 838E744
+ warp_def 8, 8, 0, 0, Underwater_SealedChamber
+
+Underwater_Route134_MapEvents:: @ 838E74C
+ map_events 0x0, Underwater_Route134_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/Underwater_SeafloorCavern.s b/data/maps/events/Underwater_SeafloorCavern.s
new file mode 100644
index 000000000..dbc3638ed
--- /dev/null
+++ b/data/maps/events/Underwater_SeafloorCavern.s
@@ -0,0 +1,12 @@
+Underwater_SeafloorCavern_MapObjects:: @ 838D018
+ object_event 1, MAP_OBJ_GFX_RIVAL_BRENDAN_NORMAL, 0, 5, 0, 4, 0, 3, 76, 17, 0, 0, 0, 0, 0, Underwater_SeafloorCavern_EventScript_15DA3F, 980, 0, 0
+ object_event 2, MAP_OBJ_GFX_RIVAL_BRENDAN_NORMAL, 0, 6, 0, 4, 0, 3, 76, 17, 0, 0, 0, 0, 0, Underwater_SeafloorCavern_EventScript_15DA3F, 980, 0, 0
+ object_event 3, MAP_OBJ_GFX_RIVAL_BRENDAN_NORMAL, 0, 7, 0, 4, 0, 3, 76, 17, 0, 0, 0, 0, 0, Underwater_SeafloorCavern_EventScript_15DA3F, 980, 0, 0
+ object_event 4, MAP_OBJ_GFX_RIVAL_BRENDAN_NORMAL, 0, 8, 0, 4, 0, 3, 76, 17, 0, 0, 0, 0, 0, Underwater_SeafloorCavern_EventScript_15DA3F, 980, 0, 0
+
+Underwater_SeafloorCavern_MapWarps:: @ 838D078
+ warp_def 6, 7, 0, 0, Underwater4
+
+Underwater_SeafloorCavern_MapEvents:: @ 838D080
+ map_events Underwater_SeafloorCavern_MapObjects, Underwater_SeafloorCavern_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/Underwater_SealedChamber.s b/data/maps/events/Underwater_SealedChamber.s
new file mode 100644
index 000000000..e0cbafb31
--- /dev/null
+++ b/data/maps/events/Underwater_SealedChamber.s
@@ -0,0 +1,9 @@
+Underwater_SealedChamber_MapWarps:: @ 838E760
+ warp_def 7, 1, 0, 0, Underwater_Route134
+
+Underwater_SealedChamber_MapBGEvents:: @ 838E768
+ bg_event 12, 43, 0, 0, 0, Underwater_SealedChamber_EventScript_15F0B8
+
+Underwater_SealedChamber_MapEvents:: @ 838E774
+ map_events 0x0, Underwater_SealedChamber_MapWarps, 0x0, Underwater_SealedChamber_MapBGEvents
+
diff --git a/data/maps/events/Underwater_SootopolisCity.s b/data/maps/events/Underwater_SootopolisCity.s
new file mode 100644
index 000000000..9e55744e1
--- /dev/null
+++ b/data/maps/events/Underwater_SootopolisCity.s
@@ -0,0 +1,7 @@
+Underwater_SootopolisCity_MapWarps:: @ 838BE98
+ warp_def 9, 8, 0, 0, Underwater2
+ warp_def 10, 8, 0, 0, Underwater2
+
+Underwater_SootopolisCity_MapEvents:: @ 838BEA8
+ map_events 0x0, Underwater_SootopolisCity_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/UnknownMap_25_29.s b/data/maps/events/UnknownMap_25_29.s
new file mode 100644
index 000000000..5f3412382
--- /dev/null
+++ b/data/maps/events/UnknownMap_25_29.s
@@ -0,0 +1 @@
+UnknownMap_25_29_MapEvents:: @ 8391604
diff --git a/data/maps/events/UnknownMap_25_30.s b/data/maps/events/UnknownMap_25_30.s
new file mode 100644
index 000000000..8ce359a0b
--- /dev/null
+++ b/data/maps/events/UnknownMap_25_30.s
@@ -0,0 +1 @@
+UnknownMap_25_30_MapEvents:: @ 8391604
diff --git a/data/maps/events/UnknownMap_25_31.s b/data/maps/events/UnknownMap_25_31.s
new file mode 100644
index 000000000..f2eabe57f
--- /dev/null
+++ b/data/maps/events/UnknownMap_25_31.s
@@ -0,0 +1 @@
+UnknownMap_25_31_MapEvents:: @ 8391604
diff --git a/data/maps/events/UnknownMap_25_32.s b/data/maps/events/UnknownMap_25_32.s
new file mode 100644
index 000000000..aa0435850
--- /dev/null
+++ b/data/maps/events/UnknownMap_25_32.s
@@ -0,0 +1 @@
+UnknownMap_25_32_MapEvents:: @ 8391604
diff --git a/data/maps/events/UnknownMap_25_33.s b/data/maps/events/UnknownMap_25_33.s
new file mode 100644
index 000000000..db91b6ef5
--- /dev/null
+++ b/data/maps/events/UnknownMap_25_33.s
@@ -0,0 +1 @@
+UnknownMap_25_33_MapEvents:: @ 8391604
diff --git a/data/maps/events/UnknownMap_25_34.s b/data/maps/events/UnknownMap_25_34.s
new file mode 100644
index 000000000..9b1faa0d7
--- /dev/null
+++ b/data/maps/events/UnknownMap_25_34.s
@@ -0,0 +1,3 @@
+UnknownMap_25_34_MapEvents:: @ 8391604
+ map_events LinkContestRoom1_MapObjects, 0x0, 0x0, 0x0
+
diff --git a/data/maps/events/VerdanturfTown.s b/data/maps/events/VerdanturfTown.s
new file mode 100644
index 000000000..af83cf9fb
--- /dev/null
+++ b/data/maps/events/VerdanturfTown.s
@@ -0,0 +1,28 @@
+VerdanturfTown_MapObjects:: @ 8380F00
+ object_event 1, MAP_OBJ_GFX_MAN_2, 0, 4, 0, 17, 0, 3, 5, 1, 0, 0, 0, 0, 0, VerdanturfTown_EventScript_14E899, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_LITTLE_GIRL_1, 0, 9, 0, 2, 0, 3, 9, 1, 0, 0, 0, 0, 0, VerdanturfTown_EventScript_14E866, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_BOY_1, 0, 11, 0, 9, 0, 3, 3, 16, 0, 0, 0, 0, 0, VerdanturfTown_EventScript_14E8AB, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_CAMPER, 0, 6, 0, 10, 0, 3, 5, 1, 0, 0, 0, 0, 0, VerdanturfTown_EventScript_14E8A2, 0, 0, 0
+
+VerdanturfTown_MapWarps:: @ 8380F60
+ warp_def 4, 7, 0, 0, VerdanturfTown_ContestLobby
+ warp_def 12, 3, 0, 0, VerdanturfTown_Mart
+ warp_def 16, 3, 0, 0, VerdanturfTown_PokemonCenter_1F
+ warp_def 10, 14, 0, 0, VerdanturfTown_WandasHouse
+ warp_def 8, 1, 0, 1, RusturfTunnel
+ warp_def 1, 14, 0, 0, VerdanturfTown_FriendshipRatersHouse
+ warp_def 17, 15, 0, 0, VerdanturfTown_House
+
+VerdanturfTown_MapBGEvents:: @ 8380F98
+ bg_event 14, 3, 0, 1, 0, VerdanturfTown_EventScript_1A00E1
+ bg_event 14, 6, 0, 0, 0, VerdanturfTown_EventScript_14E8CA
+ bg_event 17, 3, 0, 1, 0, VerdanturfTown_EventScript_1A00EA
+ bg_event 7, 14, 0, 0, 0, VerdanturfTown_EventScript_14E8D3
+ bg_event 13, 3, 0, 1, 0, VerdanturfTown_EventScript_1A00E1
+ bg_event 18, 3, 0, 1, 0, VerdanturfTown_EventScript_1A00EA
+ bg_event 3, 8, 0, 0, 0, VerdanturfTown_EventScript_14E8DC
+ bg_event 7, 3, 0, 0, 0, VerdanturfTown_EventScript_14E8E5
+
+VerdanturfTown_MapEvents:: @ 8380FF8
+ map_events VerdanturfTown_MapObjects, VerdanturfTown_MapWarps, 0x0, VerdanturfTown_MapBGEvents
+
diff --git a/data/maps/events/VerdanturfTown_ContestHall.s b/data/maps/events/VerdanturfTown_ContestHall.s
new file mode 100644
index 000000000..373bca14d
--- /dev/null
+++ b/data/maps/events/VerdanturfTown_ContestHall.s
@@ -0,0 +1,16 @@
+VerdanturfTown_ContestHall_MapObjects:: @ 8386AEC
+ object_event 1, MAP_OBJ_GFX_BOY_4, 0, 0, 0, 7, 0, 0, 2, 49, 0, 0, 0, 0, 0, VerdanturfTown_ContestHall_EventScript_153EA9, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_BOY_3, 0, 20, 0, 15, 0, 0, 2, 17, 0, 0, 0, 0, 0, VerdanturfTown_ContestHall_EventScript_153E97, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_LITTLE_GIRL_2, 0, 9, 0, 8, 0, 3, 2, 34, 0, 0, 0, 0, 0, VerdanturfTown_ContestHall_EventScript_153EA0, 0, 0, 0
+
+VerdanturfTown_ContestHall_MapWarps:: @ 8386B34
+ warp_def 11, 17, 0, 2, VerdanturfTown_ContestLobby
+ warp_def 10, 17, 0, 2, VerdanturfTown_ContestLobby
+
+VerdanturfTown_ContestHall_MapBGEvents:: @ 8386B44
+ bg_event 12, 14, 3, 0, 0, VerdanturfTown_ContestHall_EventScript_153EB2
+ bg_event 8, 14, 3, 0, 0, VerdanturfTown_ContestHall_EventScript_153EB2
+
+VerdanturfTown_ContestHall_MapEvents:: @ 8386B5C
+ map_events VerdanturfTown_ContestHall_MapObjects, VerdanturfTown_ContestHall_MapWarps, 0x0, VerdanturfTown_ContestHall_MapBGEvents
+
diff --git a/data/maps/events/VerdanturfTown_ContestLobby.s b/data/maps/events/VerdanturfTown_ContestLobby.s
new file mode 100644
index 000000000..3a61c341a
--- /dev/null
+++ b/data/maps/events/VerdanturfTown_ContestLobby.s
@@ -0,0 +1,22 @@
+VerdanturfTown_ContestLobby_MapObjects:: @ 8386A00
+ object_event 1, MAP_OBJ_GFX_TEALA, 0, 5, 0, 2, 0, 3, 8, 48, 0, 0, 0, 0, 0, VerdanturfTown_ContestLobby_EventScript_153D76, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_OLD_MAN_1, 0, 11, 0, 5, 0, 3, 10, 0, 0, 0, 0, 0, 0, VerdanturfTown_ContestLobby_EventScript_1B77A0, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_GIRL_1, 0, 14, 0, 2, 0, 3, 9, 0, 0, 0, 0, 0, 0, VerdanturfTown_ContestLobby_EventScript_153E47, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_BOY_2, 0, 1, 0, 6, 0, 3, 2, 17, 0, 0, 0, 0, 0, VerdanturfTown_ContestLobby_EventScript_153E3E, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_REPORTER_M, 0, 7, 0, 5, 0, 3, 9, 0, 0, 0, 0, 0, 0, VerdanturfTown_ContestLobby_EventScript_1AE0B6, 801, 0, 0
+ object_event 6, MAP_OBJ_GFX_BOY_3, 0, 0, 0, 3, 0, 3, 3, 16, 0, 0, 0, 0, 0, VerdanturfTown_ContestLobby_EventScript_153E80, 0, 0, 0
+
+VerdanturfTown_ContestLobby_MapWarps:: @ 8386A90
+ warp_def 5, 6, 0, 0, VerdanturfTown
+ warp_def 6, 6, 0, 0, VerdanturfTown
+ warp_def 1, 1, 0, 1, VerdanturfTown_ContestHall
+
+VerdanturfTown_ContestLobby_MapBGEvents:: @ 8386AA8
+ bg_event 10, 3, 0, 0, 0, VerdanturfTown_ContestLobby_EventScript_1B782F
+ bg_event 12, 5, 0, 0, 0, VerdanturfTown_ContestLobby_EventScript_1B763F
+ bg_event 11, 1, 0, 0, 0, VerdanturfTown_ContestLobby_EventScript_153E37
+ bg_event 13, 1, 0, 0, 0, VerdanturfTown_ContestLobby_EventScript_153E89
+
+VerdanturfTown_ContestLobby_MapEvents:: @ 8386AD8
+ map_events VerdanturfTown_ContestLobby_MapObjects, VerdanturfTown_ContestLobby_MapWarps, 0x0, VerdanturfTown_ContestLobby_MapBGEvents
+
diff --git a/data/maps/events/VerdanturfTown_FriendshipRatersHouse.s b/data/maps/events/VerdanturfTown_FriendshipRatersHouse.s
new file mode 100644
index 000000000..e5c7c6c7d
--- /dev/null
+++ b/data/maps/events/VerdanturfTown_FriendshipRatersHouse.s
@@ -0,0 +1,11 @@
+VerdanturfTown_FriendshipRatersHouse_MapObjects:: @ 8386D88
+ object_event 1, MAP_OBJ_GFX_WOMAN_3, 0, 3, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, VerdanturfTown_FriendshipRatersHouse_EventScript_154030, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_PIKACHU, 0, 4, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, VerdanturfTown_FriendshipRatersHouse_EventScript_1540D9, 0, 0, 0
+
+VerdanturfTown_FriendshipRatersHouse_MapWarps:: @ 8386DB8
+ warp_def 3, 7, 0, 5, VerdanturfTown
+ warp_def 4, 7, 0, 5, VerdanturfTown
+
+VerdanturfTown_FriendshipRatersHouse_MapEvents:: @ 8386DC8
+ map_events VerdanturfTown_FriendshipRatersHouse_MapObjects, VerdanturfTown_FriendshipRatersHouse_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/VerdanturfTown_House.s b/data/maps/events/VerdanturfTown_House.s
new file mode 100644
index 000000000..6bfd73eac
--- /dev/null
+++ b/data/maps/events/VerdanturfTown_House.s
@@ -0,0 +1,11 @@
+VerdanturfTown_House_MapObjects:: @ 8386DDC
+ object_event 1, MAP_OBJ_GFX_WOMAN_7, 0, 4, 0, 5, 0, 3, 7, 0, 0, 0, 0, 0, 0, VerdanturfTown_House_EventScript_1540ED, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_7, 0, 4, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, VerdanturfTown_House_EventScript_1540F6, 0, 0, 0
+
+VerdanturfTown_House_MapWarps:: @ 8386E0C
+ warp_def 3, 8, 0, 6, VerdanturfTown
+ warp_def 4, 8, 0, 6, VerdanturfTown
+
+VerdanturfTown_House_MapEvents:: @ 8386E1C
+ map_events VerdanturfTown_House_MapObjects, VerdanturfTown_House_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/VerdanturfTown_Mart.s b/data/maps/events/VerdanturfTown_Mart.s
new file mode 100644
index 000000000..b85f000b2
--- /dev/null
+++ b/data/maps/events/VerdanturfTown_Mart.s
@@ -0,0 +1,13 @@
+VerdanturfTown_Mart_MapObjects:: @ 8386B70
+ object_event 1, MAP_OBJ_GFX_MART_EMPLOYEE, 0, 1, 0, 3, 0, 3, 10, 0, 0, 0, 0, 0, 0, VerdanturfTown_Mart_EventScript_153EBC, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_BOY_2, 0, 5, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, VerdanturfTown_Mart_EventScript_153EEE, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_OLD_WOMAN_1, 0, 8, 0, 5, 0, 3, 9, 0, 0, 0, 0, 0, 0, VerdanturfTown_Mart_EventScript_153EF7, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_LASS, 0, 3, 0, 2, 0, 3, 9, 17, 0, 0, 0, 0, 0, VerdanturfTown_Mart_EventScript_153F00, 0, 0, 0
+
+VerdanturfTown_Mart_MapWarps:: @ 8386BD0
+ warp_def 3, 7, 0, 1, VerdanturfTown
+ warp_def 4, 7, 0, 1, VerdanturfTown
+
+VerdanturfTown_Mart_MapEvents:: @ 8386BE0
+ map_events VerdanturfTown_Mart_MapObjects, VerdanturfTown_Mart_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/VerdanturfTown_PokemonCenter_1F.s b/data/maps/events/VerdanturfTown_PokemonCenter_1F.s
new file mode 100644
index 000000000..ae89432a3
--- /dev/null
+++ b/data/maps/events/VerdanturfTown_PokemonCenter_1F.s
@@ -0,0 +1,13 @@
+VerdanturfTown_PokemonCenter_1F_MapObjects:: @ 8386BF4
+ object_event 1, MAP_OBJ_GFX_NURSE, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, VerdanturfTown_PokemonCenter_1F_EventScript_153F18, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_GENTLEMAN, 0, 4, 0, 5, 0, 3, 5, 1, 0, 0, 0, 0, 0, VerdanturfTown_PokemonCenter_1F_EventScript_153F26, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_OLD_MAN_1, 0, 12, 0, 2, 0, 3, 7, 0, 0, 0, 0, 0, 0, VerdanturfTown_PokemonCenter_1F_EventScript_153F2F, 0, 0, 0
+
+VerdanturfTown_PokemonCenter_1F_MapWarps:: @ 8386C3C
+ warp_def 7, 8, 3, 2, VerdanturfTown
+ warp_def 6, 8, 3, 2, VerdanturfTown
+ warp_def 1, 6, 4, 0, VerdanturfTown_PokemonCenter_2F
+
+VerdanturfTown_PokemonCenter_1F_MapEvents:: @ 8386C54
+ map_events VerdanturfTown_PokemonCenter_1F_MapObjects, VerdanturfTown_PokemonCenter_1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/VerdanturfTown_PokemonCenter_2F.s b/data/maps/events/VerdanturfTown_PokemonCenter_2F.s
new file mode 100644
index 000000000..1a4114ba6
--- /dev/null
+++ b/data/maps/events/VerdanturfTown_PokemonCenter_2F.s
@@ -0,0 +1,15 @@
+VerdanturfTown_PokemonCenter_2F_MapObjects:: @ 8386C68
+ object_event 1, MAP_OBJ_GFX_TEALA, 0, 4, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, VerdanturfTown_PokemonCenter_2F_EventScript_153F48, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_TEALA, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, VerdanturfTown_PokemonCenter_2F_EventScript_153F4E, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_TEALA, 0, 10, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, VerdanturfTown_PokemonCenter_2F_EventScript_153F54, 0, 0, 0
+
+VerdanturfTown_PokemonCenter_2F_MapWarps:: @ 8386CB0
+ warp_def 1, 5, 4, 2, VerdanturfTown_PokemonCenter_1F
+ warp_def 5, 1, 0, 0, SingleBattleColosseum
+ warp_def 8, 1, 0, 0, TradeCenter
+ warp_def 11, 1, 0, 0, RecordCorner
+ warp_def 0, 0, 0, 0, DoubleBattleColosseum
+
+VerdanturfTown_PokemonCenter_2F_MapEvents:: @ 8386CD8
+ map_events VerdanturfTown_PokemonCenter_2F_MapObjects, VerdanturfTown_PokemonCenter_2F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/VerdanturfTown_WandasHouse.s b/data/maps/events/VerdanturfTown_WandasHouse.s
new file mode 100644
index 000000000..7fc3e4cc2
--- /dev/null
+++ b/data/maps/events/VerdanturfTown_WandasHouse.s
@@ -0,0 +1,14 @@
+VerdanturfTown_WandasHouse_MapObjects:: @ 8386CEC
+ object_event 1, MAP_OBJ_GFX_WALLY, 0, 14, 0, 5, 0, 3, 2, 17, 0, 0, 0, 0, 0, VerdanturfTown_WandasHouse_EventScript_153F5B, 806, 0, 0
+ object_event 2, MAP_OBJ_GFX_BLACK_BELT, 0, 5, 0, 4, 0, 3, 8, 0, 0, 0, 0, 0, 0, VerdanturfTown_WandasHouse_EventScript_153FAF, 808, 0, 0
+ object_event 3, MAP_OBJ_GFX_MAN_3, 0, 7, 0, 2, 0, 3, 8, 0, 0, 0, 0, 0, 0, VerdanturfTown_WandasHouse_EventScript_153F7D, 809, 0, 0
+ object_event 4, MAP_OBJ_GFX_WOMAN_2, 0, 2, 0, 4, 0, 3, 10, 0, 0, 0, 0, 0, 0, VerdanturfTown_WandasHouse_EventScript_153FEA, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_WOMAN_3, 0, 5, 0, 5, 0, 3, 9, 0, 0, 0, 0, 0, 0, VerdanturfTown_WandasHouse_EventScript_153FB8, 984, 0, 0
+
+VerdanturfTown_WandasHouse_MapWarps:: @ 8386D64
+ warp_def 7, 7, 0, 3, VerdanturfTown
+ warp_def 8, 7, 0, 3, VerdanturfTown
+
+VerdanturfTown_WandasHouse_MapEvents:: @ 8386D74
+ map_events VerdanturfTown_WandasHouse_MapObjects, VerdanturfTown_WandasHouse_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/VictoryRoad_1F.s b/data/maps/events/VictoryRoad_1F.s
new file mode 100644
index 000000000..c02f109c2
--- /dev/null
+++ b/data/maps/events/VictoryRoad_1F.s
@@ -0,0 +1,27 @@
+VictoryRoad_1F_MapObjects:: @ 838D8E4
+ object_event 1, MAP_OBJ_GFX_MAN_4, 0, 33, 0, 22, 0, 3, 8, 0, 0, 1, 0, 3, 0, VictoryRoad_1F_EventScript_15DF6F, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_WOMAN_7, 0, 6, 0, 15, 0, 4, 9, 0, 0, 1, 0, 4, 0, VictoryRoad_1F_EventScript_15DF9D, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_MAN_4, 0, 27, 0, 34, 0, 3, 18, 0, 0, 1, 0, 3, 0, VictoryRoad_1F_EventScript_15DF86, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_WALLY, 0, 31, 0, 12, 0, 3, 7, 17, 0, 0, 0, 0, 0, VictoryRoad_1F_EventScript_15DF28, 858, 0, 0
+ object_event 5, MAP_OBJ_GFX_ITEM_BALL, 0, 40, 0, 26, 0, 3, 1, 17, 0, 0, 0, 0, 0, VictoryRoad_1F_EventScript_1B1AC6, 1084, 0, 0
+ object_event 6, MAP_OBJ_GFX_ITEM_BALL, 0, 37, 0, 39, 0, 4, 1, 17, 0, 0, 0, 0, 0, VictoryRoad_1F_EventScript_1B1AD3, 1085, 0, 0
+ object_event 7, MAP_OBJ_GFX_WALLY, 0, 31, 0, 9, 0, 3, 1, 17, 0, 0, 0, 0, 0, VictoryRoad_1F_EventScript_15DF31, 751, 0, 0
+
+VictoryRoad_1F_MapWarps:: @ 838D98C
+ warp_def 15, 40, 3, 2, EverGrandeCity
+ warp_def 39, 5, 3, 3, EverGrandeCity
+ warp_def 21, 32, 3, 5, VictoryRoad_B1F
+ warp_def 42, 38, 4, 2, VictoryRoad_B1F
+ warp_def 9, 14, 4, 4, VictoryRoad_B1F
+
+VictoryRoad_1F_MapCoordEvents:: @ 838D9B4
+ coord_event 34, 3, 3, 0, 0x40c3, 0, 0, VictoryRoad_1F_EventScript_15DE97
+ coord_event 34, 4, 3, 0, 0x40c3, 0, 0, VictoryRoad_1F_EventScript_15DEAB
+ coord_event 34, 5, 3, 0, 0x40c3, 0, 0, VictoryRoad_1F_EventScript_15DEBF
+
+VictoryRoad_1F_MapBGEvents:: @ 838D9E4
+ bg_event 30, 39, 4, 7, 0, ITEM_ULTRA_BALL, 81, 0
+
+VictoryRoad_1F_MapEvents:: @ 838D9F0
+ map_events VictoryRoad_1F_MapObjects, VictoryRoad_1F_MapWarps, VictoryRoad_1F_MapCoordEvents, VictoryRoad_1F_MapBGEvents
+
diff --git a/data/maps/events/VictoryRoad_B1F.s b/data/maps/events/VictoryRoad_B1F.s
new file mode 100644
index 000000000..8fabd723c
--- /dev/null
+++ b/data/maps/events/VictoryRoad_B1F.s
@@ -0,0 +1,33 @@
+VictoryRoad_B1F_MapObjects:: @ 838DA04
+ object_event 1, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 20, 0, 5, 0, 3, 1, 0, 0, 0, 0, 0, 0, VictoryRoad_B1F_EventScript_1B0FCB, 19, 0, 0
+ object_event 2, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 21, 0, 4, 0, 3, 1, 0, 0, 0, 0, 0, 0, VictoryRoad_B1F_EventScript_1B0FCB, 20, 0, 0
+ object_event 3, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 4, 0, 7, 0, 3, 1, 0, 0, 0, 0, 0, 0, VictoryRoad_B1F_EventScript_1B0FCB, 17, 0, 0
+ object_event 4, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 9, 0, 10, 0, 3, 1, 0, 0, 0, 0, 0, 0, VictoryRoad_B1F_EventScript_1B0FCB, 18, 0, 0
+ object_event 5, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 20, 0, 26, 0, 3, 1, 0, 0, 0, 0, 0, 0, VictoryRoad_B1F_EventScript_1B0FCB, 23, 0, 0
+ object_event 6, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 21, 0, 25, 0, 3, 1, 0, 0, 0, 0, 0, 0, VictoryRoad_B1F_EventScript_1B0FCB, 22, 0, 0
+ object_event 7, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 35, 0, 6, 0, 3, 1, 0, 0, 0, 0, 0, 0, VictoryRoad_B1F_EventScript_1B0FCB, 30, 0, 0
+ object_event 8, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 19, 0, 5, 0, 3, 1, 0, 0, 0, 0, 0, 0, VictoryRoad_B1F_EventScript_1B0EB7, 25, 0, 0
+ object_event 9, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 20, 0, 4, 0, 3, 1, 0, 0, 0, 0, 0, 0, VictoryRoad_B1F_EventScript_1B0EB7, 26, 0, 0
+ object_event 10, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 18, 0, 12, 0, 3, 1, 0, 0, 0, 0, 0, 0, VictoryRoad_B1F_EventScript_1B0EB7, 27, 0, 0
+ object_event 11, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 20, 0, 25, 0, 3, 1, 0, 0, 0, 0, 0, 0, VictoryRoad_B1F_EventScript_1B0EB7, 28, 0, 0
+ object_event 12, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 21, 0, 26, 0, 3, 1, 0, 0, 0, 0, 0, 0, VictoryRoad_B1F_EventScript_1B0EB7, 29, 0, 0
+ object_event 13, MAP_OBJ_GFX_PUSHABLE_BOULDER, 0, 34, 0, 4, 0, 3, 1, 0, 0, 0, 0, 0, 0, VictoryRoad_B1F_EventScript_1B0FCB, 31, 0, 0
+ object_event 14, MAP_OBJ_GFX_MAN_4, 0, 37, 0, 12, 0, 3, 9, 0, 0, 1, 0, 3, 0, VictoryRoad_B1F_EventScript_15DFB5, 0, 0, 0
+ object_event 15, MAP_OBJ_GFX_WOMAN_7, 0, 26, 0, 16, 0, 3, 7, 0, 0, 1, 0, 4, 0, VictoryRoad_B1F_EventScript_15DFCC, 0, 0, 0
+ object_event 16, MAP_OBJ_GFX_WOMAN_7, 0, 5, 0, 21, 0, 3, 9, 0, 0, 1, 0, 2, 0, VictoryRoad_B1F_EventScript_15DFE3, 0, 0, 0
+ object_event 17, MAP_OBJ_GFX_BREAKABLE_ROCK, 0, 34, 0, 3, 0, 3, 1, 17, 0, 0, 0, 0, 0, VictoryRoad_B1F_EventScript_1B0EB7, 32, 0, 0
+ object_event 18, MAP_OBJ_GFX_ITEM_BALL, 0, 42, 0, 8, 0, 4, 1, 17, 0, 0, 0, 0, 0, VictoryRoad_B1F_EventScript_1B1AE0, 1086, 0, 0
+ object_event 19, MAP_OBJ_GFX_ITEM_BALL, 0, 32, 0, 3, 0, 3, 1, 17, 0, 0, 0, 0, 0, VictoryRoad_B1F_EventScript_1B1AED, 1087, 0, 0
+
+VictoryRoad_B1F_MapWarps:: @ 838DBCC
+ warp_def 30, 25, 3, 0, VictoryRoad_B2F
+ warp_def 17, 16, 3, 2, VictoryRoad_B2F
+ warp_def 42, 25, 3, 3, VictoryRoad_1F
+ warp_def 42, 2, 4, 1, VictoryRoad_B2F
+ warp_def 8, 3, 3, 4, VictoryRoad_1F
+ warp_def 20, 21, 3, 2, VictoryRoad_1F
+ warp_def 5, 26, 3, 3, VictoryRoad_B2F
+
+VictoryRoad_B1F_MapEvents:: @ 838DC04
+ map_events VictoryRoad_B1F_MapObjects, VictoryRoad_B1F_MapWarps, 0x0, 0x0
+
diff --git a/data/maps/events/VictoryRoad_B2F.s b/data/maps/events/VictoryRoad_B2F.s
new file mode 100644
index 000000000..139259691
--- /dev/null
+++ b/data/maps/events/VictoryRoad_B2F.s
@@ -0,0 +1,20 @@
+VictoryRoad_B2F_MapObjects:: @ 838DC18
+ object_event 1, MAP_OBJ_GFX_MAN_4, 0, 15, 0, 6, 0, 3, 8, 17, 0, 1, 0, 2, 0, VictoryRoad_B2F_EventScript_15DFFB, 0, 0, 0
+ object_event 2, MAP_OBJ_GFX_MAN_4, 0, 43, 0, 14, 0, 3, 7, 17, 0, 1, 0, 4, 0, VictoryRoad_B2F_EventScript_15E012, 0, 0, 0
+ object_event 3, MAP_OBJ_GFX_WOMAN_7, 0, 2, 0, 17, 0, 3, 8, 17, 0, 1, 0, 2, 0, VictoryRoad_B2F_EventScript_15E029, 0, 0, 0
+ object_event 4, MAP_OBJ_GFX_WOMAN_7, 0, 35, 0, 22, 0, 3, 9, 17, 0, 1, 0, 2, 0, VictoryRoad_B2F_EventScript_15E040, 0, 0, 0
+ object_event 5, MAP_OBJ_GFX_ITEM_BALL, 0, 13, 0, 8, 0, 3, 1, 17, 0, 0, 0, 0, 0, VictoryRoad_B2F_EventScript_1B1AFA, 1088, 0, 0
+
+VictoryRoad_B2F_MapWarps:: @ 838DC90
+ warp_def 30, 25, 3, 0, VictoryRoad_B1F
+ warp_def 43, 2, 3, 3, VictoryRoad_B1F
+ warp_def 19, 12, 3, 1, VictoryRoad_B1F
+ warp_def 5, 26, 3, 6, VictoryRoad_B1F
+
+VictoryRoad_B2F_MapBGEvents:: @ 838DCB0
+ bg_event 28, 5, 3, 7, 0, ITEM_ELIXIR, 82, 0
+ bg_event 37, 1, 3, 7, 0, ITEM_MAX_REPEL, 83, 0
+
+VictoryRoad_B2F_MapEvents:: @ 838DCC8
+ map_events VictoryRoad_B2F_MapObjects, VictoryRoad_B2F_MapWarps, 0x0, VictoryRoad_B2F_MapBGEvents
+
diff --git a/data/maps/scripts/AbandonedShip_CaptainsOffice.s b/data/maps/scripts/AbandonedShip_CaptainsOffice.s
new file mode 100644
index 000000000..5ad17725b
--- /dev/null
+++ b/data/maps/scripts/AbandonedShip_CaptainsOffice.s
@@ -0,0 +1,27 @@
+AbandonedShip_CaptainsOffice_MapScripts:: @ 815EAF4
+ .byte 0
+
+AbandonedShip_CaptainsOffice_EventScript_15EAF5:: @ 815EAF5
+ lock
+ faceplayer
+ checkflag 294
+ jumpeq AbandonedShip_CaptainsOffice_EventScript_15EB2D
+ checkitem ITEM_SCANNER, 1
+ compare RESULT, 1
+ jumpeq AbandonedShip_CaptainsOffice_EventScript_15EB23
+ checkflag 1078
+ jumpeq AbandonedShip_CaptainsOffice_EventScript_15EB2D
+ msgbox AbandonedShip_CaptainsOffice_Text_198C85, 4
+ release
+ end
+
+AbandonedShip_CaptainsOffice_EventScript_15EB23:: @ 815EB23
+ msgbox AbandonedShip_CaptainsOffice_Text_198D00, 4
+ release
+ end
+
+AbandonedShip_CaptainsOffice_EventScript_15EB2D:: @ 815EB2D
+ msgbox AbandonedShip_CaptainsOffice_Text_198D7B, 4
+ release
+ end
+
diff --git a/data/maps/scripts/AbandonedShip_Corridors_1F.s b/data/maps/scripts/AbandonedShip_Corridors_1F.s
new file mode 100644
index 000000000..408299ac4
--- /dev/null
+++ b/data/maps/scripts/AbandonedShip_Corridors_1F.s
@@ -0,0 +1,12 @@
+AbandonedShip_Corridors_1F_MapScripts:: @ 815E964
+ .byte 0
+
+AbandonedShip_Corridors_1F_EventScript_15E965:: @ 815E965
+ msgbox AbandonedShip_Corridors_1F_Text_1984D8, 2
+ end
+
+AbandonedShip_Corridors_1F_EventScript_15E96E:: @ 815E96E
+ trainerbattle 0, 66, 0, AbandonedShip_Corridors_1F_Text_19843D, AbandonedShip_Corridors_1F_Text_198479
+ msgbox AbandonedShip_Corridors_1F_Text_198493, 6
+ end
+
diff --git a/data/maps/scripts/AbandonedShip_Corridors_B1F.s b/data/maps/scripts/AbandonedShip_Corridors_B1F.s
new file mode 100644
index 000000000..71c3691fe
--- /dev/null
+++ b/data/maps/scripts/AbandonedShip_Corridors_B1F.s
@@ -0,0 +1,59 @@
+AbandonedShip_Corridors_B1F_MapScripts:: @ 815E98F
+ map_script 5, AbandonedShip_Corridors_B1F_MapScript1_15E99A
+ map_script 1, AbandonedShip_Corridors_B1F_MapScript1_15E9A3
+ .byte 0
+
+AbandonedShip_Corridors_B1F_MapScript1_15E99A:: @ 815E99A
+ warp4 AbandonedShip_Underwater1, 255, 5, 4
+ end
+
+AbandonedShip_Corridors_B1F_MapScript1_15E9A3:: @ 815E9A3
+ checkflag 239
+ callif 0, AbandonedShip_Corridors_B1F_EventScript_15E9B6
+ checkflag 239
+ callif 1, AbandonedShip_Corridors_B1F_EventScript_15E9C0
+ end
+
+AbandonedShip_Corridors_B1F_EventScript_15E9B6:: @ 815E9B6
+ setmaptile 11, 4, 563, 1
+ return
+
+AbandonedShip_Corridors_B1F_EventScript_15E9C0:: @ 815E9C0
+ setmaptile 11, 4, 555, 1
+ return
+
+AbandonedShip_Corridors_B1F_EventScript_15E9CA:: @ 815E9CA
+ msgbox AbandonedShip_Corridors_B1F_Text_19864A, 2
+ end
+
+AbandonedShip_Corridors_B1F_EventScript_15E9D3:: @ 815E9D3
+ lockall
+ checkflag 239
+ jumpeq AbandonedShip_Corridors_B1F_EventScript_15EA14
+ checkitem ITEM_STORAGE_KEY, 1
+ compare RESULT, 0
+ jumpeq AbandonedShip_Corridors_B1F_EventScript_15EA0A
+ msgbox AbandonedShip_Corridors_B1F_Text_198692, 4
+ playsfx 21
+ removeitem ITEM_STORAGE_KEY, 1
+ setflag 239
+ call AbandonedShip_Corridors_B1F_EventScript_15E9C0
+ special 142
+ releaseall
+ end
+
+AbandonedShip_Corridors_B1F_EventScript_15EA0A:: @ 815EA0A
+ msgbox AbandonedShip_Corridors_B1F_Text_19865C, 4
+ releaseall
+ end
+
+AbandonedShip_Corridors_B1F_EventScript_15EA14:: @ 815EA14
+ msgbox AbandonedShip_Corridors_B1F_Text_1986EC, 4
+ releaseall
+ end
+
+AbandonedShip_Corridors_B1F_EventScript_15EA1E:: @ 815EA1E
+ trainerbattle 0, 496, 0, AbandonedShip_Corridors_B1F_Text_19856F, AbandonedShip_Corridors_B1F_Text_1985C5
+ msgbox AbandonedShip_Corridors_B1F_Text_1985D7, 6
+ end
+
diff --git a/data/maps/scripts/AbandonedShip_Deck.s b/data/maps/scripts/AbandonedShip_Deck.s
new file mode 100644
index 000000000..605dbae59
--- /dev/null
+++ b/data/maps/scripts/AbandonedShip_Deck.s
@@ -0,0 +1,8 @@
+AbandonedShip_Deck_MapScripts:: @ 815E95A
+ map_script 3, AbandonedShip_Deck_MapScript1_15E960
+ .byte 0
+
+AbandonedShip_Deck_MapScript1_15E960:: @ 815E960
+ setflag 2110
+ end
+
diff --git a/data/maps/scripts/AbandonedShip_HiddenFloorCorridors.s b/data/maps/scripts/AbandonedShip_HiddenFloorCorridors.s
new file mode 100644
index 000000000..2b1254a11
--- /dev/null
+++ b/data/maps/scripts/AbandonedShip_HiddenFloorCorridors.s
@@ -0,0 +1,149 @@
+AbandonedShip_HiddenFloorCorridors_MapScripts:: @ 815EB46
+ map_script 5, AbandonedShip_HiddenFloorCorridors_MapScript1_15EB51
+ map_script 1, AbandonedShip_HiddenFloorCorridors_MapScript1_15EB5A
+ .byte 0
+
+AbandonedShip_HiddenFloorCorridors_MapScript1_15EB51:: @ 815EB51
+ warp4 AbandonedShip_Underwater1, 255, 5, 4
+ end
+
+AbandonedShip_HiddenFloorCorridors_MapScript1_15EB5A:: @ 815EB5A
+ checkflag 240
+ callif 0, AbandonedShip_HiddenFloorCorridors_EventScript_15EBCB
+ checkflag 241
+ callif 0, AbandonedShip_HiddenFloorCorridors_EventScript_15EBD5
+ checkflag 242
+ callif 0, AbandonedShip_HiddenFloorCorridors_EventScript_15EBDF
+ checkflag 243
+ callif 0, AbandonedShip_HiddenFloorCorridors_EventScript_15EBE9
+ checkflag 240
+ callif 1, AbandonedShip_HiddenFloorCorridors_EventScript_15EBA3
+ checkflag 241
+ callif 1, AbandonedShip_HiddenFloorCorridors_EventScript_15EBAD
+ checkflag 242
+ callif 1, AbandonedShip_HiddenFloorCorridors_EventScript_15EBB7
+ checkflag 243
+ callif 1, AbandonedShip_HiddenFloorCorridors_EventScript_15EBC1
+ end
+
+AbandonedShip_HiddenFloorCorridors_EventScript_15EBA3:: @ 815EBA3
+ setmaptile 3, 8, 555, 1
+ return
+
+AbandonedShip_HiddenFloorCorridors_EventScript_15EBAD:: @ 815EBAD
+ setmaptile 6, 8, 555, 1
+ return
+
+AbandonedShip_HiddenFloorCorridors_EventScript_15EBB7:: @ 815EBB7
+ setmaptile 3, 3, 538, 0
+ return
+
+AbandonedShip_HiddenFloorCorridors_EventScript_15EBC1:: @ 815EBC1
+ setmaptile 9, 3, 538, 0
+ return
+
+AbandonedShip_HiddenFloorCorridors_EventScript_15EBCB:: @ 815EBCB
+ setmaptile 3, 8, 563, 1
+ return
+
+AbandonedShip_HiddenFloorCorridors_EventScript_15EBD5:: @ 815EBD5
+ setmaptile 6, 8, 563, 1
+ return
+
+AbandonedShip_HiddenFloorCorridors_EventScript_15EBDF:: @ 815EBDF
+ setmaptile 3, 3, 564, 0
+ return
+
+AbandonedShip_HiddenFloorCorridors_EventScript_15EBE9:: @ 815EBE9
+ setmaptile 9, 3, 564, 0
+ return
+
+AbandonedShip_HiddenFloorCorridors_EventScript_15EBF3:: @ 815EBF3
+ lockall
+ checkflag 240
+ jumpeq AbandonedShip_HiddenFloorCorridors_EventScript_15ECF7
+ checkitem ITEM_ROOM_1_KEY, 1
+ compare RESULT, 0
+ jumpeq AbandonedShip_HiddenFloorCorridors_EventScript_15ECCF
+ msgbox AbandonedShip_HiddenFloorCorridors_Text_198E90, 4
+ playsfx 21
+ removeitem ITEM_ROOM_1_KEY, 1
+ setflag 240
+ call AbandonedShip_HiddenFloorCorridors_EventScript_15EBA3
+ special 142
+ releaseall
+ end
+
+AbandonedShip_HiddenFloorCorridors_EventScript_15EC2A:: @ 815EC2A
+ lockall
+ checkflag 241
+ jumpeq AbandonedShip_HiddenFloorCorridors_EventScript_15ECF7
+ checkitem ITEM_ROOM_2_KEY, 1
+ compare RESULT, 0
+ jumpeq AbandonedShip_HiddenFloorCorridors_EventScript_15ECD9
+ msgbox AbandonedShip_HiddenFloorCorridors_Text_198E90, 4
+ playsfx 21
+ removeitem ITEM_ROOM_2_KEY, 1
+ setflag 241
+ call AbandonedShip_HiddenFloorCorridors_EventScript_15EBAD
+ special 142
+ releaseall
+ end
+
+AbandonedShip_HiddenFloorCorridors_EventScript_15EC61:: @ 815EC61
+ lockall
+ checkflag 242
+ jumpeq AbandonedShip_HiddenFloorCorridors_EventScript_15ECF7
+ checkitem ITEM_ROOM_4_KEY, 1
+ compare RESULT, 0
+ jumpeq AbandonedShip_HiddenFloorCorridors_EventScript_15ECE3
+ msgbox AbandonedShip_HiddenFloorCorridors_Text_198E90, 4
+ playsfx 21
+ removeitem ITEM_ROOM_4_KEY, 1
+ setflag 242
+ call AbandonedShip_HiddenFloorCorridors_EventScript_15EBB7
+ special 142
+ releaseall
+ end
+
+AbandonedShip_HiddenFloorCorridors_EventScript_15EC98:: @ 815EC98
+ lockall
+ checkflag 243
+ jumpeq AbandonedShip_HiddenFloorCorridors_EventScript_15ECF7
+ checkitem ITEM_ROOM_6_KEY, 1
+ compare RESULT, 0
+ jumpeq AbandonedShip_HiddenFloorCorridors_EventScript_15ECED
+ msgbox AbandonedShip_HiddenFloorCorridors_Text_198E90, 4
+ playsfx 21
+ removeitem ITEM_ROOM_6_KEY, 1
+ setflag 243
+ call AbandonedShip_HiddenFloorCorridors_EventScript_15EBC1
+ special 142
+ releaseall
+ end
+
+AbandonedShip_HiddenFloorCorridors_EventScript_15ECCF:: @ 815ECCF
+ msgbox AbandonedShip_HiddenFloorCorridors_Text_198DC0, 4
+ releaseall
+ end
+
+AbandonedShip_HiddenFloorCorridors_EventScript_15ECD9:: @ 815ECD9
+ msgbox AbandonedShip_HiddenFloorCorridors_Text_198DF4, 4
+ releaseall
+ end
+
+AbandonedShip_HiddenFloorCorridors_EventScript_15ECE3:: @ 815ECE3
+ msgbox AbandonedShip_HiddenFloorCorridors_Text_198E28, 4
+ releaseall
+ end
+
+AbandonedShip_HiddenFloorCorridors_EventScript_15ECED:: @ 815ECED
+ msgbox AbandonedShip_HiddenFloorCorridors_Text_198E5C, 4
+ releaseall
+ end
+
+AbandonedShip_HiddenFloorCorridors_EventScript_15ECF7:: @ 815ECF7
+ msgbox AbandonedShip_HiddenFloorCorridors_Text_1986EC, 4
+ releaseall
+ end
+
diff --git a/data/maps/scripts/AbandonedShip_HiddenFloorRooms.s b/data/maps/scripts/AbandonedShip_HiddenFloorRooms.s
new file mode 100644
index 000000000..8b1e250a6
--- /dev/null
+++ b/data/maps/scripts/AbandonedShip_HiddenFloorRooms.s
@@ -0,0 +1,144 @@
+AbandonedShip_HiddenFloorRooms_MapScripts:: @ 815ED01
+ map_script 2, AbandonedShip_HiddenFloorRooms_MapScript2_15ED07
+ .byte 0
+
+AbandonedShip_HiddenFloorRooms_MapScript2_15ED07:: @ 815ED07
+ map_script_2 0x4001, 0, AbandonedShip_HiddenFloorRooms_EventScript_15ED11
+ .2byte 0
+
+AbandonedShip_HiddenFloorRooms_EventScript_15ED11:: @ 815ED11
+ setvar 0x4001, 1
+ getplayerxy 0x4002, 0x4003
+ setvar 0x4004, 1
+ compare 0x4002, 21
+ callif 1, AbandonedShip_HiddenFloorRooms_EventScript_15ED89
+ compare 0x4002, 36
+ callif 1, AbandonedShip_HiddenFloorRooms_EventScript_15ED8F
+ compare 0x4003, 2
+ callif 1, AbandonedShip_HiddenFloorRooms_EventScript_15ED95
+ switch 0x4004
+ case 1, AbandonedShip_HiddenFloorRooms_EventScript_15ED9B
+ case 2, AbandonedShip_HiddenFloorRooms_EventScript_15EDC4
+ case 3, AbandonedShip_HiddenFloorRooms_EventScript_15EDC5
+ case 4, AbandonedShip_HiddenFloorRooms_EventScript_15EDEB
+ case 5, AbandonedShip_HiddenFloorRooms_EventScript_15EE23
+ case 6, AbandonedShip_HiddenFloorRooms_EventScript_15EE6A
+ end
+
+AbandonedShip_HiddenFloorRooms_EventScript_15ED89:: @ 815ED89
+ addvar 0x4004, 1
+ return
+
+AbandonedShip_HiddenFloorRooms_EventScript_15ED8F:: @ 815ED8F
+ addvar 0x4004, 2
+ return
+
+AbandonedShip_HiddenFloorRooms_EventScript_15ED95:: @ 815ED95
+ addvar 0x4004, 3
+ return
+
+AbandonedShip_HiddenFloorRooms_EventScript_15ED9B:: @ 815ED9B
+ pause 20
+ setanimation 0, 10
+ setanimation 1, 10
+ setanimation 2, 0
+ doanimation 54
+ specialval RESULT, 290
+ compare RESULT, 0
+ callif 1, AbandonedShip_HiddenFloorRooms_EventScript_15EE8B
+ checkanimation 54
+ pause 10
+ end
+
+AbandonedShip_HiddenFloorRooms_EventScript_15EDC4:: @ 815EDC4
+ end
+
+AbandonedShip_HiddenFloorRooms_EventScript_15EDC5:: @ 815EDC5
+ specialval RESULT, 288
+ compare RESULT, 1
+ jumpeq AbandonedShip_HiddenFloorRooms_EventScript_15EDEA
+ pause 20
+ compare RESULT, 0
+ callif 1, AbandonedShip_HiddenFloorRooms_EventScript_15EE6B
+ checkanimation 54
+ pause 10
+ end
+
+AbandonedShip_HiddenFloorRooms_EventScript_15EDEA:: @ 815EDEA
+ end
+
+AbandonedShip_HiddenFloorRooms_EventScript_15EDEB:: @ 815EDEB
+ pause 20
+ setanimation 0, 8
+ setanimation 1, 5
+ setanimation 2, 0
+ doanimation 54
+ setanimation 0, 11
+ setanimation 1, 3
+ setanimation 2, 0
+ doanimation 54
+ specialval RESULT, 291
+ compare RESULT, 0
+ callif 1, AbandonedShip_HiddenFloorRooms_EventScript_15EE9B
+ checkanimation 54
+ pause 10
+ end
+
+AbandonedShip_HiddenFloorRooms_EventScript_15EE23:: @ 815EE23
+ pause 20
+ setanimation 0, 16
+ setanimation 1, 3
+ setanimation 2, 0
+ doanimation 54
+ setanimation 0, 25
+ setanimation 1, 2
+ setanimation 2, 0
+ doanimation 54
+ setanimation 0, 24
+ setanimation 1, 6
+ setanimation 2, 0
+ doanimation 54
+ specialval RESULT, 289
+ compare RESULT, 0
+ callif 1, AbandonedShip_HiddenFloorRooms_EventScript_15EE7B
+ checkanimation 54
+ pause 10
+ end
+
+AbandonedShip_HiddenFloorRooms_EventScript_15EE6A:: @ 815EE6A
+ end
+
+AbandonedShip_HiddenFloorRooms_EventScript_15EE6B:: @ 815EE6B
+ setanimation 0, 42
+ setanimation 1, 10
+ setanimation 2, 0
+ doanimation 54
+ return
+
+AbandonedShip_HiddenFloorRooms_EventScript_15EE7B:: @ 815EE7B
+ setanimation 0, 20
+ setanimation 1, 5
+ setanimation 2, 0
+ doanimation 54
+ return
+
+AbandonedShip_HiddenFloorRooms_EventScript_15EE8B:: @ 815EE8B
+ setanimation 0, 1
+ setanimation 1, 12
+ setanimation 2, 0
+ doanimation 54
+ return
+
+AbandonedShip_HiddenFloorRooms_EventScript_15EE9B:: @ 815EE9B
+ setanimation 0, 1
+ setanimation 1, 2
+ setanimation 2, 0
+ doanimation 54
+ return
+
+AbandonedShip_HiddenFloorRooms_EventScript_15EEAB:: @ 815EEAB
+ lockall
+ msgbox AbandonedShip_HiddenFloorRooms_Text_198EE2, 4
+ releaseall
+ end
+
diff --git a/data/maps/scripts/AbandonedShip_Room_B1F.s b/data/maps/scripts/AbandonedShip_Room_B1F.s
new file mode 100644
index 000000000..92bee6319
--- /dev/null
+++ b/data/maps/scripts/AbandonedShip_Room_B1F.s
@@ -0,0 +1,3 @@
+AbandonedShip_Room_B1F_MapScripts:: @ 815EA66
+ .byte 0
+
diff --git a/data/maps/scripts/AbandonedShip_Rooms2_1F.s b/data/maps/scripts/AbandonedShip_Rooms2_1F.s
new file mode 100644
index 000000000..b059ca4e5
--- /dev/null
+++ b/data/maps/scripts/AbandonedShip_Rooms2_1F.s
@@ -0,0 +1,29 @@
+AbandonedShip_Rooms2_1F_MapScripts:: @ 815EA67
+ .byte 0
+
+AbandonedShip_Rooms2_1F_EventScript_15EA68:: @ 815EA68
+ trainerbattle 4, 642, 0, AbandonedShip_Rooms2_1F_Text_1987C1, AbandonedShip_Rooms2_1F_Text_1987FE, AbandonedShip_Rooms2_1F_Text_19887F
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq AbandonedShip_Rooms2_1F_EventScript_15EA93
+ msgbox AbandonedShip_Rooms2_1F_Text_198835, 6
+ end
+
+AbandonedShip_Rooms2_1F_EventScript_15EA93:: @ 815EA93
+ trainerbattle 7, 642, 0, AbandonedShip_Rooms2_1F_Text_1989DF, AbandonedShip_Rooms2_1F_Text_198A53, AbandonedShip_Rooms2_1F_Text_198AEE
+ msgbox AbandonedShip_Rooms2_1F_Text_198A70, 6
+ end
+
+AbandonedShip_Rooms2_1F_EventScript_15EAAE:: @ 815EAAE
+ trainerbattle 4, 642, 0, AbandonedShip_Rooms2_1F_Text_1988CC, AbandonedShip_Rooms2_1F_Text_198916, AbandonedShip_Rooms2_1F_Text_19899A
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq AbandonedShip_Rooms2_1F_EventScript_15EAD9
+ msgbox AbandonedShip_Rooms2_1F_Text_198934, 6
+ end
+
+AbandonedShip_Rooms2_1F_EventScript_15EAD9:: @ 815EAD9
+ trainerbattle 7, 642, 0, AbandonedShip_Rooms2_1F_Text_198B3B, AbandonedShip_Rooms2_1F_Text_198BCF, AbandonedShip_Rooms2_1F_Text_198C40
+ msgbox AbandonedShip_Rooms2_1F_Text_198BEA, 6
+ end
+
diff --git a/data/maps/scripts/AbandonedShip_Rooms2_B1F.s b/data/maps/scripts/AbandonedShip_Rooms2_B1F.s
new file mode 100644
index 000000000..18e144a44
--- /dev/null
+++ b/data/maps/scripts/AbandonedShip_Rooms2_B1F.s
@@ -0,0 +1,7 @@
+AbandonedShip_Rooms2_B1F_MapScripts:: @ 815EA4D
+ .byte 0
+
+AbandonedShip_Rooms2_B1F_EventScript_15EA4E:: @ 815EA4E
+ msgbox AbandonedShip_Rooms2_B1F_Text_198759, 2
+ end
+
diff --git a/data/maps/scripts/AbandonedShip_Rooms_1F.s b/data/maps/scripts/AbandonedShip_Rooms_1F.s
new file mode 100644
index 000000000..dafa5c7bd
--- /dev/null
+++ b/data/maps/scripts/AbandonedShip_Rooms_1F.s
@@ -0,0 +1,7 @@
+AbandonedShip_Rooms_1F_MapScripts:: @ 815E985
+ .byte 0
+
+AbandonedShip_Rooms_1F_EventScript_15E986:: @ 815E986
+ msgbox AbandonedShip_Rooms_1F_Text_19850A, 2
+ end
+
diff --git a/data/maps/scripts/AbandonedShip_Rooms_B1F.s b/data/maps/scripts/AbandonedShip_Rooms_B1F.s
new file mode 100644
index 000000000..cebcf1b77
--- /dev/null
+++ b/data/maps/scripts/AbandonedShip_Rooms_B1F.s
@@ -0,0 +1,12 @@
+AbandonedShip_Rooms_B1F_MapScripts:: @ 815EA35
+ map_script 5, AbandonedShip_Rooms_B1F_MapScript1_15EA3B
+ .byte 0
+
+AbandonedShip_Rooms_B1F_MapScript1_15EA3B:: @ 815EA3B
+ warp4 AbandonedShip_Underwater2, 255, 17, 4
+ end
+
+AbandonedShip_Rooms_B1F_EventScript_15EA44:: @ 815EA44
+ msgbox AbandonedShip_Rooms_B1F_Text_1986FE, 2
+ end
+
diff --git a/data/maps/scripts/AbandonedShip_Underwater1.s b/data/maps/scripts/AbandonedShip_Underwater1.s
new file mode 100644
index 000000000..af7a26580
--- /dev/null
+++ b/data/maps/scripts/AbandonedShip_Underwater1.s
@@ -0,0 +1,8 @@
+AbandonedShip_Underwater1_MapScripts:: @ 815EA57
+ map_script 5, AbandonedShip_Underwater1_MapScript1_15EA5D
+ .byte 0
+
+AbandonedShip_Underwater1_MapScript1_15EA5D:: @ 815EA5D
+ warp4 AbandonedShip_HiddenFloorCorridors, 255, 0, 10
+ end
+
diff --git a/data/maps/scripts/AbandonedShip_Underwater2.s b/data/maps/scripts/AbandonedShip_Underwater2.s
new file mode 100644
index 000000000..a4f9d3912
--- /dev/null
+++ b/data/maps/scripts/AbandonedShip_Underwater2.s
@@ -0,0 +1,8 @@
+AbandonedShip_Underwater2_MapScripts:: @ 815EB37
+ map_script 5, AbandonedShip_Underwater2_MapScript1_15EB3D
+ .byte 0
+
+AbandonedShip_Underwater2_MapScript1_15EB3D:: @ 815EB3D
+ warp4 AbandonedShip_Rooms_B1F, 255, 13, 7
+ end
+
diff --git a/data/maps/scripts/AncientTomb.s b/data/maps/scripts/AncientTomb.s
new file mode 100644
index 000000000..66cf88a9c
--- /dev/null
+++ b/data/maps/scripts/AncientTomb.s
@@ -0,0 +1,72 @@
+AncientTomb_MapScripts:: @ 815EFBE
+ map_script 5, AncientTomb_MapScript1_15EFCE
+ map_script 1, AncientTomb_MapScript1_15EFE0
+ map_script 3, AncientTomb_MapScript1_15EFDC
+ .byte 0
+
+AncientTomb_MapScript1_15EFCE:: @ 815EFCE
+ checkflag 2145
+ callif 1, AncientTomb_EventScript_15EFD8
+ end
+
+AncientTomb_EventScript_15EFD8:: @ 815EFD8
+ disappear LAST_TALKED
+ return
+
+AncientTomb_MapScript1_15EFDC:: @ 815EFDC
+ setflag 2137
+ end
+
+AncientTomb_MapScript1_15EFE0:: @ 815EFE0
+ checkflag 2130
+ callif 0, AncientTomb_EventScript_15EFEA
+ end
+
+AncientTomb_EventScript_15EFEA:: @ 815EFEA
+ setmaptile 7, 19, 553, 1
+ setmaptile 8, 19, 553, 1
+ setmaptile 9, 19, 553, 1
+ setmaptile 7, 20, 565, 1
+ setmaptile 8, 20, 565, 1
+ setmaptile 9, 20, 565, 1
+ return
+
+AncientTomb_EventScript_15F021:: @ 815F021
+ lockall
+ checkflag 2130
+ jumpeq AncientTomb_EventScript_15F038
+ braillemsg AncientTomb_Braille_1C552E
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+AncientTomb_EventScript_15F038:: @ 815F038
+ msgbox AncientTomb_Text_1A13BE, 4
+ releaseall
+ end
+
+AncientTomb_EventScript_15F042:: @ 815F042
+ lockall
+ braillemsg AncientTomb_Braille_1C552E
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+AncientTomb_EventScript_15F050:: @ 815F050
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_REGISTEEL, 2
+ pause 40
+ waitpokecry
+ setwildbattle SPECIES_REGISTEEL, 40, ITEM_NONE
+ setflag 937
+ setflag 2145
+ special 313
+ waitstate
+ clearflag 2145
+ release
+ end
+
diff --git a/data/maps/scripts/AquaHideout_1F.s b/data/maps/scripts/AquaHideout_1F.s
new file mode 100644
index 000000000..a7e74e22e
--- /dev/null
+++ b/data/maps/scripts/AquaHideout_1F.s
@@ -0,0 +1,49 @@
+AquaHideout_1F_MapScripts:: @ 815D7C2
+ map_script 3, AquaHideout_1F_MapScript1_15D7C8
+ .byte 0
+
+AquaHideout_1F_MapScript1_15D7C8:: @ 815D7C8
+ call AquaHideout_1F_EventScript_1A0196
+ end
+
+AquaHideout_1F_EventScript_15D7CE:: @ 815D7CE
+MagmaHideout_1F_EventScript_15D7CE:: @ 815D7CE
+ lock
+ faceplayer
+ checkflag 111
+ jumpeq AquaHideout_1F_EventScript_15D7E3
+ msgbox AquaHideout_1F_Text_196AFD, 4
+ release
+ end
+
+AquaHideout_1F_EventScript_15D7E3:: @ 815D7E3
+ msgbox AquaHideout_1F_Text_196BC5, 4
+ release
+ end
+
+AquaHideout_1F_EventScript_15D7ED:: @ 815D7ED
+MagmaHideout_1F_EventScript_15D7ED:: @ 815D7ED
+ lock
+ faceplayer
+ checkflag 111
+ jumpeq AquaHideout_1F_EventScript_15D802
+ msgbox AquaHideout_1F_Text_196C83, 4
+ release
+ end
+
+AquaHideout_1F_EventScript_15D802:: @ 815D802
+ msgbox AquaHideout_1F_Text_196D46, 4
+ release
+ end
+
+AquaHideout_1F_EventScript_15D80C:: @ 815D80C
+MagmaHideout_1F_EventScript_15D80C:: @ 815D80C
+ trainerbattle 2, 567, 0, AquaHideout_1F_Text_196E01, AquaHideout_1F_Text_196E28, AquaHideout_1F_EventScript_15D827
+ msgbox AquaHideout_1F_Text_196E3D, 6
+ end
+
+AquaHideout_1F_EventScript_15D827:: @ 815D827
+ msgbox AquaHideout_1F_Text_196E3D, 4
+ release
+ end
+
diff --git a/data/maps/scripts/AquaHideout_B1F.s b/data/maps/scripts/AquaHideout_B1F.s
new file mode 100644
index 000000000..9e0d7652d
--- /dev/null
+++ b/data/maps/scripts/AquaHideout_B1F.s
@@ -0,0 +1,46 @@
+AquaHideout_B1F_MapScripts:: @ 815D831
+ map_script 5, AquaHideout_B1F_MapScript1_15D83C
+ map_script 3, AquaHideout_B1F_MapScript1_15D84A
+ .byte 0
+
+AquaHideout_B1F_MapScript1_15D83C:: @ 815D83C
+ checkflag 2145
+ callif 1, AquaHideout_B1F_EventScript_15D846
+ end
+
+AquaHideout_B1F_EventScript_15D846:: @ 815D846
+ disappear LAST_TALKED
+ return
+
+AquaHideout_B1F_MapScript1_15D84A:: @ 815D84A
+ call AquaHideout_B1F_EventScript_1A0196
+ end
+
+AquaHideout_B1F_EventScript_15D850:: @ 815D850
+MagmaHideout_B1F_EventScript_15D850:: @ 815D850
+ trainerbattle 2, 568, 0, AquaHideout_B1F_Text_196E6F, AquaHideout_B1F_Text_196EB6, AquaHideout_B1F_EventScript_15D86B
+ msgbox AquaHideout_B1F_Text_196ECC, 6
+ end
+
+AquaHideout_B1F_EventScript_15D86B:: @ 815D86B
+ msgbox AquaHideout_B1F_Text_196ECC, 4
+ release
+ end
+
+AquaHideout_B1F_EventScript_15D875:: @ 815D875
+MagmaHideout_B1F_EventScript_15D875:: @ 815D875
+ trainerbattle 2, 569, 0, AquaHideout_B1F_Text_196F39, AquaHideout_B1F_Text_196F9B, AquaHideout_B1F_EventScript_15D890
+ msgbox AquaHideout_B1F_Text_196FB5, 6
+ end
+
+AquaHideout_B1F_EventScript_15D890:: @ 815D890
+ msgbox AquaHideout_B1F_Text_196FB5, 4
+ release
+ end
+
+AquaHideout_B1F_EventScript_15D89A:: @ 815D89A
+MagmaHideout_B1F_EventScript_15D89A:: @ 815D89A
+ trainerbattle 0, 592, 0, AquaHideout_B1F_Text_196FFD, AquaHideout_B1F_Text_197040
+ msgbox AquaHideout_B1F_Text_197056, 6
+ end
+
diff --git a/data/maps/scripts/AquaHideout_B2F.s b/data/maps/scripts/AquaHideout_B2F.s
new file mode 100644
index 000000000..40cce160b
--- /dev/null
+++ b/data/maps/scripts/AquaHideout_B2F.s
@@ -0,0 +1,77 @@
+AquaHideout_B2F_MapScripts:: @ 815D8B1
+ map_script 3, AquaHideout_B2F_MapScript1_15D8B7
+ .byte 0
+
+AquaHideout_B2F_MapScript1_15D8B7:: @ 815D8B7
+ call AquaHideout_B2F_EventScript_1A0196
+ end
+
+AquaHideout_B2F_EventScript_15D8BD:: @ 815D8BD
+MagmaHideout_B2F_EventScript_15D8BD:: @ 815D8BD
+ lockall
+ setvar 0x8008, 1
+ playsfx 21
+ move 0x8008, AquaHideout_B2F_Movement_1A0833
+ waitmove 0
+ move 0x8008, AquaHideout_B2F_Movement_1A0841
+ waitmove 0
+ setvar 0x4001, 1
+ releaseall
+ end
+
+AquaHideout_B2F_EventScript_15D8E1:: @ 815D8E1
+MagmaHideout_B2F_EventScript_15D8E1:: @ 815D8E1
+ trainerbattle 2, 596, 0, AquaHideout_B2F_Text_197093, AquaHideout_B2F_Text_197145, AquaHideout_B2F_EventScript_15D8FD
+ msgbox AquaHideout_B2F_Text_1971AE, 4
+ release
+ end
+
+AquaHideout_B2F_EventScript_15D8FD:: @ 815D8FD
+ setvar 0x8008, 1
+ setvar 0x8009, 3
+ move 0x8008, AquaHideout_B2F_Movement_1A0843
+ waitmove 0
+ pause 20
+ move 0x8008, AquaHideout_B2F_Movement_1A0839
+ waitmove 0
+ msgbox AquaHideout_B2F_Text_197162, 4
+ closebutton
+ move 0x8008, AquaHideout_B2F_Movement_1A0843
+ move 0x8009, AquaHideout_B2F_Movement_15D95D
+ waitmove 0
+ disappear 0x8009
+ pause 20
+ move 0x8008, AquaHideout_B2F_Movement_1A0839
+ waitmove 0
+ msgbox AquaHideout_B2F_Text_1971AE, 4
+ setflag 112
+ setflag 852
+ release
+ end
+
+ .incbin "baserom.gba", 0x15d958, 0x5
+
+AquaHideout_B2F_Movement_15D95D:: @ 815D95D
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+AquaHideout_B2F_EventScript_15D962:: @ 815D962
+MagmaHideout_B2F_EventScript_15D962:: @ 815D962
+ trainerbattle 2, 570, 0, AquaHideout_B2F_Text_197270, AquaHideout_B2F_Text_1972AC, AquaHideout_B2F_EventScript_15D97D
+ msgbox AquaHideout_B2F_Text_1972D2, 6
+ end
+
+AquaHideout_B2F_EventScript_15D97D:: @ 815D97D
+ msgbox AquaHideout_B2F_Text_1972D2, 4
+ release
+ end
+
+AquaHideout_B2F_EventScript_15D987:: @ 815D987
+MagmaHideout_B2F_EventScript_15D987:: @ 815D987
+ trainerbattle 0, 593, 0, AquaHideout_B2F_Text_1972EF, AquaHideout_B2F_Text_197390
+ msgbox AquaHideout_B2F_Text_1973C0, 6
+ end
+
diff --git a/data/maps/scripts/BattleTower_BattleRoom.s b/data/maps/scripts/BattleTower_BattleRoom.s
new file mode 100644
index 000000000..76a1a3194
--- /dev/null
+++ b/data/maps/scripts/BattleTower_BattleRoom.s
@@ -0,0 +1,166 @@
+BattleTower_BattleRoom_MapScripts:: @ 81608DB
+ map_script 2, BattleTower_BattleRoom_MapScript2_1608E1
+ .byte 0
+
+BattleTower_BattleRoom_MapScript2_1608E1:: @ 81608E1
+ map_script_2 0x4000, 0, BattleTower_BattleRoom_EventScript_1608EB
+ .2byte 0
+
+BattleTower_BattleRoom_EventScript_1608EB:: @ 81608EB
+ setvar 0x4000, 1
+ move 255, BattleTower_BattleRoom_Movement_160AB7
+ waitmove 0
+
+BattleTower_BattleRoom_EventScript_1608FA:: @ 81608FA
+ special 232
+ reappear 1
+ move 1, BattleTower_BattleRoom_Movement_160AC0
+ waitmove 0
+ special 234
+ msgbox 0x20234cc, 4
+ waittext
+ closebutton
+ special 0
+ setvar 0x8004, 0
+ setvar 0x8005, 0
+ special 236
+ waitstate
+ switch RESULT
+ case 1, BattleTower_BattleRoom_EventScript_160961
+ special 40
+ setvar 0x8004, 0
+ setvar 0x8005, 5
+ special 237
+ setvar 0x8004, 14
+ special 237
+ setvar 0x8004, 3
+ special 170
+ warp BattleTower_Lobby, 255, 6, 6
+ waitstate
+
+BattleTower_BattleRoom_EventScript_160961:: @ 8160961
+ setvar 0x8004, 6
+ special 237
+ switch RESULT
+ case 8, BattleTower_BattleRoom_EventScript_160A56
+ move 1, BattleTower_BattleRoom_Movement_160AC6
+ waitmove 0
+ disappear 1
+ move 2, BattleTower_BattleRoom_Movement_160ACB
+ waitmove 0
+ move 255, BattleTower_BattleRoom_Movement_160ABC
+ waitmove 0
+ msgbox BattleTower_BattleRoom_Text_19ACDC, 4
+ special 40
+ special 39
+ special 239
+ fanfare 368
+ waitfanfare
+ special 0
+
+BattleTower_BattleRoom_EventScript_1609B2:: @ 81609B2
+ msgbox BattleTower_BattleRoom_Text_19AD09, 5
+ switch RESULT
+ case 0, BattleTower_BattleRoom_EventScript_1609E0
+ case 1, BattleTower_BattleRoom_EventScript_160A3C
+ case 127, BattleTower_BattleRoom_EventScript_1609E0
+
+BattleTower_BattleRoom_EventScript_1609E0:: @ 81609E0
+ msgbox BattleTower_BattleRoom_Text_19AD3C, 5
+ switch RESULT
+ case 0, BattleTower_BattleRoom_EventScript_160A0E
+ case 1, BattleTower_BattleRoom_EventScript_160A94
+ case 127, BattleTower_BattleRoom_EventScript_160A0E
+
+BattleTower_BattleRoom_EventScript_160A0E:: @ 8160A0E
+ msgbox BattleTower_BattleRoom_Text_19AD66, 5
+ switch RESULT
+ case 0, BattleTower_BattleRoom_EventScript_1609B2
+ case 1, BattleTower_BattleRoom_EventScript_160AB1
+ case 127, BattleTower_BattleRoom_EventScript_1609B2
+
+BattleTower_BattleRoom_EventScript_160A3C:: @ 8160A3C
+ closebutton
+ move 255, BattleTower_BattleRoom_Movement_160ABE
+ waitmove 0
+ move 2, BattleTower_BattleRoom_Movement_160AD0
+ waitmove 0
+ jump BattleTower_BattleRoom_EventScript_1608FA
+
+BattleTower_BattleRoom_EventScript_160A56:: @ 8160A56
+ special 40
+ setvar 0x8004, 0
+ setvar 0x8005, 4
+ special 237
+ setvar 0x8004, 2
+ setvar 0x8005, 1
+ special 237
+ setvar 0x8004, 7
+ special 237
+ setvar 0x8004, 14
+ special 237
+ setvar 0x8004, 3
+ special 170
+ warp BattleTower_Lobby, 255, 6, 6
+ waitstate
+
+BattleTower_BattleRoom_EventScript_160A94:: @ 8160A94
+ setvar 0x8004, 2
+ special 240
+ message BattleTower_BattleRoom_Text_1C6CE1
+ pause 60
+ waittext
+ playsfx 55
+ checksound
+ msgbox BattleTower_BattleRoom_Text_1C6D05, 4
+
+BattleTower_BattleRoom_EventScript_160AB1:: @ 8160AB1
+ fadescreen 1
+ special 241
+ end
+
+BattleTower_BattleRoom_Movement_160AB7:: @ 8160AB7
+ step_up
+ step_up
+ step_up
+ step_03
+ step_end
+
+BattleTower_BattleRoom_Movement_160ABC:: @ 8160ABC
+ step_00
+ step_end
+
+BattleTower_BattleRoom_Movement_160ABE:: @ 8160ABE
+ step_03
+ step_end
+
+BattleTower_BattleRoom_Movement_160AC0:: @ 8160AC0
+ step_down
+ step_down
+ step_down
+ step_down
+ step_02
+ step_end
+
+BattleTower_BattleRoom_Movement_160AC6:: @ 8160AC6
+ step_up
+ step_up
+ step_up
+ step_up
+ step_end
+
+BattleTower_BattleRoom_Movement_160ACB:: @ 8160ACB
+ step_right
+ step_right
+ step_right
+ step_up
+ step_end
+
+BattleTower_BattleRoom_Movement_160AD0:: @ 8160AD0
+ step_down
+ step_left
+ step_left
+ step_left
+ step_03
+ step_end
+
diff --git a/data/maps/scripts/BattleTower_Corridor.s b/data/maps/scripts/BattleTower_Corridor.s
new file mode 100644
index 000000000..6dd4adb3d
--- /dev/null
+++ b/data/maps/scripts/BattleTower_Corridor.s
@@ -0,0 +1,59 @@
+BattleTower_Corridor_MapScripts:: @ 8160845
+ map_script 1, BattleTower_Corridor_MapScript1_160850
+ map_script 2, BattleTower_Corridor_MapScript2_160881
+ .byte 0
+
+BattleTower_Corridor_MapScript1_160850:: @ 8160850
+ compare 0x8006, 1
+ jumpeq BattleTower_Corridor_EventScript_16086E
+ setmaptile 12, 0, 519, 0
+ setmaptile 12, 1, 527, 0
+ end
+
+BattleTower_Corridor_EventScript_16086E:: @ 816086E
+ setmaptile 15, 0, 519, 0
+ setmaptile 15, 1, 527, 0
+ end
+
+BattleTower_Corridor_MapScript2_160881:: @ 8160881
+ map_script_2 0x4000, 0, BattleTower_Corridor_EventScript_16088B
+ .2byte 0
+
+BattleTower_Corridor_EventScript_16088B:: @ 816088B
+ setvar 0x4000, 1
+ compare 0x8006, 1
+ jumpeq BattleTower_Corridor_EventScript_1608B1
+ move 1, BattleTower_Corridor_Movement_1608D5
+ move 255, BattleTower_Corridor_Movement_1608D4
+ waitmove 0
+ jump BattleTower_Corridor_EventScript_1608C2
+
+BattleTower_Corridor_EventScript_1608B1:: @ 81608B1
+ move 1, BattleTower_Corridor_Movement_1608D2
+ move 255, BattleTower_Corridor_Movement_1608D1
+ waitmove 0
+
+BattleTower_Corridor_EventScript_1608C2:: @ 81608C2
+ setvar 0x4000, 0
+ warp BattleTower_BattleRoom, 255, 4, 8
+ waitstate
+ end
+
+BattleTower_Corridor_Movement_1608D1:: @ 81608D1
+ step_right
+
+BattleTower_Corridor_Movement_1608D2:: @ 81608D2
+ step_right
+ step_right
+
+BattleTower_Corridor_Movement_1608D4:: @ 81608D4
+ step_right
+
+BattleTower_Corridor_Movement_1608D5:: @ 81608D5
+ step_right
+ step_right
+ step_right
+ step_up
+ step_54
+ step_end
+
diff --git a/data/maps/scripts/BattleTower_Elevator.s b/data/maps/scripts/BattleTower_Elevator.s
new file mode 100644
index 000000000..fab5d010d
--- /dev/null
+++ b/data/maps/scripts/BattleTower_Elevator.s
@@ -0,0 +1,58 @@
+BattleTower_Elevator_MapScripts:: @ 81607CF
+ map_script 2, BattleTower_Elevator_MapScript2_1607DA
+ map_script 4, BattleTower_Elevator_MapScript2_160821
+ .byte 0
+
+BattleTower_Elevator_MapScript2_1607DA:: @ 81607DA
+ map_script_2 0x4000, 0, BattleTower_Elevator_EventScript_1607E4
+ .2byte 0
+
+BattleTower_Elevator_EventScript_1607E4:: @ 81607E4
+ setvar 0x4000, 1
+ move 1, BattleTower_Elevator_Movement_160835
+ move 255, BattleTower_Elevator_Movement_160839
+ waitmove 0
+ special 273
+ waitstate
+ pause 64
+ move 1, BattleTower_Elevator_Movement_16083D
+ move 255, BattleTower_Elevator_Movement_160841
+ waitmove 0
+ setvar 0x4000, 0
+ warp BattleTower_Corridor, 255, 8, 1
+ waitstate
+ end
+
+BattleTower_Elevator_MapScript2_160821:: @ 8160821
+ map_script_2 0x4001, 0, BattleTower_Elevator_EventScript_16082B
+ .2byte 0
+
+BattleTower_Elevator_EventScript_16082B:: @ 816082B
+ setvar 0x4001, 1
+ spriteface 255, 2
+ end
+
+BattleTower_Elevator_Movement_160835:: @ 8160835
+ step_up
+ step_right
+ step_00
+ step_end
+
+BattleTower_Elevator_Movement_160839:: @ 8160839
+ step_up
+ step_up
+ step_00
+ step_end
+
+BattleTower_Elevator_Movement_16083D:: @ 816083D
+ step_down
+ step_down
+ step_54
+ step_end
+
+BattleTower_Elevator_Movement_160841:: @ 8160841
+ step_right
+ step_down
+ step_down
+ step_end
+
diff --git a/data/maps/scripts/BattleTower_Lobby.s b/data/maps/scripts/BattleTower_Lobby.s
new file mode 100644
index 000000000..a2fd22b10
--- /dev/null
+++ b/data/maps/scripts/BattleTower_Lobby.s
@@ -0,0 +1,422 @@
+BattleTower_Lobby_MapScripts:: @ 816027E
+ map_script 5, BattleTower_Lobby_MapScript1_160293
+ map_script 3, BattleTower_Lobby_MapScript1_1602E8
+ map_script 2, BattleTower_Lobby_MapScript2_160302
+ map_script 4, BattleTower_Lobby_MapScript2_1602EE
+ .byte 0
+
+BattleTower_Lobby_MapScript1_160293:: @ 8160293
+ special 338
+ call BattleTower_Lobby_EventScript_16029C
+ end
+
+BattleTower_Lobby_EventScript_16029C:: @ 816029C
+ setvar 0x8004, 10
+ special 237
+ checkflag 238
+ jumpeq BattleTower_Lobby_EventScript_1602E4
+ checkflag 237
+ jumpeq BattleTower_Lobby_EventScript_1602CD
+ specialval 0x8007, 247
+ compare 0x8007, 50
+ jumpif 0, BattleTower_Lobby_EventScript_1602E4
+ clearflag 941
+ special 329
+ return
+
+BattleTower_Lobby_EventScript_1602CD:: @ 81602CD
+ specialval 0x8007, 247
+ compare 0x8007, 100
+ jumpif 0, BattleTower_Lobby_EventScript_1602E4
+ clearflag 941
+ special 329
+ return
+
+BattleTower_Lobby_EventScript_1602E4:: @ 81602E4
+ setflag 941
+ return
+
+BattleTower_Lobby_MapScript1_1602E8:: @ 81602E8
+ call BattleTower_Lobby_EventScript_1AE2ED
+ end
+
+BattleTower_Lobby_MapScript2_1602EE:: @ 81602EE
+ map_script_2 0x4001, 0, BattleTower_Lobby_EventScript_1602F8
+ .2byte 0
+
+BattleTower_Lobby_EventScript_1602F8:: @ 81602F8
+ setvar 0x4001, 1
+ spriteface 255, 2
+ end
+
+BattleTower_Lobby_MapScript2_160302:: @ 8160302
+ map_script_2 0x4000, 0, BattleTower_Lobby_EventScript_16032C
+ map_script_2 0x4000, 1, BattleTower_Lobby_EventScript_160330
+ map_script_2 0x4000, 2, BattleTower_Lobby_EventScript_160342
+ map_script_2 0x4000, 3, BattleTower_Lobby_EventScript_160419
+ map_script_2 0x4000, 4, BattleTower_Lobby_EventScript_16044B
+ .2byte 0
+
+BattleTower_Lobby_EventScript_16032C:: @ 816032C
+ special 231
+ end
+
+BattleTower_Lobby_EventScript_160330:: @ 8160330
+ lock
+ faceplayer
+ msgbox BattleTower_Lobby_Text_19A3FD, 4
+ closebutton
+ setvar 0x4000, 5
+ release
+ end
+
+BattleTower_Lobby_EventScript_160342:: @ 8160342
+ lock
+ faceplayer
+ message BattleTower_Lobby_Text_19A487
+ waittext
+ setvar 0x8004, 0
+ special 238
+ compare RESULT, 6
+ jumpeq BattleTower_Lobby_EventScript_16037D
+ special 244
+ compare RESULT, 0
+ jumpeq BattleTower_Lobby_EventScript_16037D
+ message BattleTower_Lobby_Text_19A6BE
+ waittext
+ fanfare 370
+ waitfanfare
+ msgbox BattleTower_Lobby_Text_19A719, 4
+
+BattleTower_Lobby_EventScript_16037D:: @ 816037D
+ setvar 0x8004, 8
+ special 238
+ compare RESULT, 1
+ jumpeq BattleTower_Lobby_EventScript_1603AD
+ message BattleTower_Lobby_Text_19A589
+ waittext
+ setvar 0x8004, 13
+ special 237
+ special 242
+ setvar 0x8004, 3
+ special 240
+ playsfx 55
+ checksound
+
+BattleTower_Lobby_EventScript_1603AD:: @ 81603AD
+ setvar 0x8004, 0
+ setvar 0x8005, 3
+ special 237
+ message BattleTower_Lobby_Text_19A4BB
+ waittext
+ special 243
+ switch RESULT
+ case 0, BattleTower_Lobby_EventScript_160408
+ message BattleTower_Lobby_Text_19A506
+ waittext
+ fanfare 370
+ waitfanfare
+ setvar 0x8004, 9
+ special 238
+ compare RESULT, 49
+ jumpif 5, BattleTower_Lobby_EventScript_1603F8
+ msgbox BattleTower_Lobby_Text_19A617, 4
+
+BattleTower_Lobby_EventScript_1603F8:: @ 81603F8
+ msgbox BattleTower_Lobby_Text_199FA9, 4
+ closebutton
+ setvar 0x4000, 5
+ release
+ end
+
+BattleTower_Lobby_EventScript_160408:: @ 8160408
+ msgbox BattleTower_Lobby_Text_19A520, 4
+ waittext
+ closebutton
+ setvar 0x4000, 5
+ release
+ end
+
+BattleTower_Lobby_EventScript_160419:: @ 8160419
+ lock
+ faceplayer
+ message BattleTower_Lobby_Text_19A571
+ waittext
+ message BattleTower_Lobby_Text_19A589
+ waittext
+ setvar 0x8004, 13
+ special 237
+ setvar 0x8004, 0
+ special 240
+ playsfx 55
+ checksound
+ msgbox BattleTower_Lobby_Text_199FA9, 4
+ closebutton
+ setvar 0x4000, 5
+ release
+ end
+
+BattleTower_Lobby_EventScript_16044B:: @ 816044B
+ lock
+ faceplayer
+ setvar 0x40bc, 1
+ message BattleTower_Lobby_Text_19A5B1
+ waittext
+ message BattleTower_Lobby_Text_19A5CE
+ waittext
+ setvar 0x8004, 1
+ special 240
+ playsfx 55
+ checksound
+ setvar 0x8004, 8
+ setvar 0x8005, 0
+ special 237
+ setvar 0x4000, 5
+ special 39
+ special 239
+ msgbox BattleTower_Lobby_Text_19A0A8, 4
+ closebutton
+ call BattleTower_Lobby_EventScript_160664
+ warp BattleTower_Elevator, 255, 1, 6
+ setvar 0x4000, 0
+ waitstate
+
+BattleTower_Lobby_EventScript_16049E:: @ 816049E
+ lock
+ faceplayer
+ setvar 0x8004, 0
+ special 238
+ compare RESULT, 6
+ jumpeq BattleTower_Lobby_EventScript_160342
+ special 39
+ msgbox BattleTower_Lobby_Text_199F2C, 4
+
+BattleTower_Lobby_EventScript_1604BE:: @ 81604BE
+ message BattleTower_Lobby_Text_199F79
+ waittext
+ multichoice 15, 6, 23, 0
+ switch RESULT
+ case 0, BattleTower_Lobby_EventScript_1604FA
+ case 1, BattleTower_Lobby_EventScript_160600
+ case 2, BattleTower_Lobby_EventScript_160652
+ case 127, BattleTower_Lobby_EventScript_160652
+
+BattleTower_Lobby_EventScript_1604FA:: @ 81604FA
+ message BattleTower_Lobby_Text_19A024
+ waittext
+ multichoice 18, 6, 24, 0
+ switch RESULT
+ case 2, BattleTower_Lobby_EventScript_160652
+ case 127, BattleTower_Lobby_EventScript_160652
+ special 233
+ compare 0x8004, 1
+ jumpeq BattleTower_Lobby_EventScript_16060D
+ setvar 0x8004, 1
+ copyvar 0x8005, RESULT
+ copyvar 0x8006, RESULT
+ special 237
+ msgbox BattleTower_Lobby_Text_19A07B, 4
+ fadescreen 1
+ special 245
+ waitstate
+ compare RESULT, 0
+ jumpeq BattleTower_Lobby_EventScript_16064F
+ msgbox BattleTower_Lobby_Text_199FDA, 5
+ switch RESULT
+ case 0, BattleTower_Lobby_EventScript_16064F
+ case 1, BattleTower_Lobby_EventScript_160587
+ case 127, BattleTower_Lobby_EventScript_16064F
+
+BattleTower_Lobby_EventScript_160587:: @ 8160587
+ setvar 0x8004, 5
+ special 237
+ setvar 0x4000, 0
+ setvar 0x8004, 11
+ special 237
+ setvar 0x8004, 0
+ setvar 0x8005, 1
+ special 237
+ setvar 0x8004, 8
+ setvar 0x8005, 0
+ special 237
+ special 40
+ closebutton
+ pause 2
+ call BattleTower_Lobby_EventScript_19F806
+ setvar 0x4000, 5
+ hidebox 0, 0, 15, 10
+ compare RESULT, 0
+ jumpeq BattleTower_Lobby_EventScript_160642
+ inccounter 30
+ special 39
+ special 239
+ setvar 0x40bc, 1
+ msgbox BattleTower_Lobby_Text_19A0A8, 4
+ closebutton
+ call BattleTower_Lobby_EventScript_160664
+ warp BattleTower_Elevator, 255, 1, 6
+ setvar 0x4000, 0
+ waitstate
+
+BattleTower_Lobby_EventScript_160600:: @ 8160600
+ msgbox BattleTower_Lobby_Text_19A0D1, 4
+ jump BattleTower_Lobby_EventScript_1604BE
+
+BattleTower_Lobby_EventScript_16060D:: @ 816060D
+ switch RESULT
+ case 0, BattleTower_Lobby_EventScript_160628
+ case 1, BattleTower_Lobby_EventScript_160635
+
+BattleTower_Lobby_EventScript_160628:: @ 8160628
+ msgbox BattleTower_Lobby_Text_19A249, 4
+ jump BattleTower_Lobby_EventScript_160662
+
+BattleTower_Lobby_EventScript_160635:: @ 8160635
+ msgbox BattleTower_Lobby_Text_19A32D, 4
+ jump BattleTower_Lobby_EventScript_160662
+
+BattleTower_Lobby_EventScript_160642:: @ 8160642
+ setvar 0x8004, 12
+ special 237
+ jump BattleTower_Lobby_EventScript_160652
+
+BattleTower_Lobby_EventScript_16064F:: @ 816064F
+ special 40
+
+BattleTower_Lobby_EventScript_160652:: @ 8160652
+ msgbox BattleTower_Lobby_Text_199FA9, 4
+ setvar 0x8004, 11
+ special 237
+
+BattleTower_Lobby_EventScript_160662:: @ 8160662
+ release
+ end
+
+BattleTower_Lobby_EventScript_160664:: @ 8160664
+ move 1, BattleTower_Lobby_Movement_160693
+ move 255, BattleTower_Lobby_Movement_160693
+ waitmove 0
+ setdooropened 6, 1
+ doorchange
+ move 1, BattleTower_Lobby_Movement_160697
+ move 255, BattleTower_Lobby_Movement_16069A
+ waitmove 0
+ setdoorclosed 6, 1
+ doorchange
+ return
+
+BattleTower_Lobby_Movement_160693:: @ 8160693
+ step_up
+ step_up
+ step_up
+ step_end
+
+BattleTower_Lobby_Movement_160697:: @ 8160697
+ step_up
+ step_54
+ step_end
+
+BattleTower_Lobby_Movement_16069A:: @ 816069A
+ step_up
+ step_up
+ step_54
+ step_end
+
+ .incbin "baserom.gba", 0x16069e, 0x7
+
+BattleTower_Lobby_EventScript_1606A5:: @ 81606A5
+ lock
+ faceplayer
+ msgbox BattleTower_Lobby_Text_19A747, 5
+ switch RESULT
+ case 1, BattleTower_Lobby_EventScript_1606CC
+ case 0, BattleTower_Lobby_EventScript_1606F7
+ release
+ end
+
+BattleTower_Lobby_EventScript_1606CC:: @ 81606CC
+ msgbox BattleTower_Lobby_Text_19A7C3, 4
+ setvar 0x8004, 1
+ call BattleTower_Lobby_EventScript_1A00F3
+ lock
+ faceplayer
+ compare RESULT, 0
+ jumpeq BattleTower_Lobby_EventScript_160701
+ compare RESULT, 1
+ jumpeq BattleTower_Lobby_EventScript_16070B
+ end
+
+BattleTower_Lobby_EventScript_1606F7:: @ 81606F7
+ msgbox BattleTower_Lobby_Text_19A7FD, 4
+ release
+ end
+
+BattleTower_Lobby_EventScript_160701:: @ 8160701
+ msgbox BattleTower_Lobby_Text_19A83D, 4
+ release
+ end
+
+BattleTower_Lobby_EventScript_16070B:: @ 816070B
+ msgbox BattleTower_Lobby_Text_19A871, 4
+ release
+ end
+
+BattleTower_Lobby_EventScript_160715:: @ 8160715
+ msgbox BattleTower_Lobby_Text_19A8AE, 2
+ end
+
+BattleTower_Lobby_EventScript_16071E:: @ 816071E
+ msgbox BattleTower_Lobby_Text_19A946, 2
+ end
+
+BattleTower_Lobby_EventScript_160727:: @ 8160727
+ lockall
+ special 283
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+BattleTower_Lobby_EventScript_160733:: @ 8160733
+ lock
+ faceplayer
+ checkflag 238
+ jumpeq BattleTower_Lobby_EventScript_1607C5
+ checkflag 237
+ jumpeq BattleTower_Lobby_EventScript_160773
+ msgbox BattleTower_Lobby_Text_19A9EE, 4
+ setvar 0x8008, 42
+ givedecoration 42
+ compare RESULT, 0
+ jumpeq BattleTower_Lobby_EventScript_1607AF
+ setflag 237
+ msgbox BattleTower_Lobby_Text_19ABAA, 4
+ release
+ end
+
+BattleTower_Lobby_EventScript_160773:: @ 8160773
+ specialval RESULT, 247
+ compare RESULT, 100
+ jumpif 0, BattleTower_Lobby_EventScript_1607C5
+ msgbox BattleTower_Lobby_Text_19AAC4, 4
+ setvar 0x8008, 43
+ givedecoration 43
+ compare RESULT, 0
+ jumpeq BattleTower_Lobby_EventScript_1607AF
+ setflag 238
+ msgbox BattleTower_Lobby_Text_19ABAA, 4
+ release
+ end
+
+BattleTower_Lobby_EventScript_1607AF:: @ 81607AF
+ bufferdecor 1, 0x8008
+ msgbox BattleTower_Lobby_Text_1A0CEF, 4
+ msgbox BattleTower_Lobby_Text_19ABED, 4
+ release
+ end
+
+BattleTower_Lobby_EventScript_1607C5:: @ 81607C5
+ msgbox BattleTower_Lobby_Text_19AC55, 4
+ release
+ end
+
diff --git a/data/maps/scripts/BattleTower_Outside.s b/data/maps/scripts/BattleTower_Outside.s
new file mode 100644
index 000000000..4ff10710f
--- /dev/null
+++ b/data/maps/scripts/BattleTower_Outside.s
@@ -0,0 +1,95 @@
+BattleTower_Outside_MapScripts:: @ 8160156
+ map_script 3, BattleTower_Outside_MapScript1_16015C
+ .byte 0
+
+BattleTower_Outside_MapScript1_16015C:: @ 816015C
+ setflag 2120
+ setvar 0x40bc, 0
+ setflag 918
+ end
+
+BattleTower_Outside_EventScript_160168:: @ 8160168
+ lock
+ faceplayer
+ msgbox BattleTower_Outside_Text_199D06, 4
+ checkitem ITEM_SS_TICKET, 1
+ compare RESULT, 0
+ jumpeq BattleTower_Outside_EventScript_1601C6
+ message BattleTower_Outside_Text_199D9D
+ waittext
+ jump BattleTower_Outside_EventScript_16018E
+ end
+
+BattleTower_Outside_EventScript_16018E:: @ 816018E
+ multichoicedef 21, 6, 53, 2, 0
+ switch RESULT
+ case 0, BattleTower_Outside_EventScript_1601D0
+ case 1, BattleTower_Outside_EventScript_1601FB
+ case 2, BattleTower_Outside_EventScript_160250
+ case 127, BattleTower_Outside_EventScript_160250
+ end
+
+BattleTower_Outside_EventScript_1601C6:: @ 81601C6
+ msgbox BattleTower_Outside_Text_199D40, 4
+ release
+ end
+
+BattleTower_Outside_EventScript_1601D0:: @ 81601D0
+ msgbox BattleTower_Outside_Text_199DF2, 5
+ compare RESULT, 0
+ jumpeq BattleTower_Outside_EventScript_160226
+ msgbox BattleTower_Outside_Text_199E4B, 4
+ call BattleTower_Outside_EventScript_160232
+ warp SlateportCity_Harbor, 255, 8, 11
+ waitstate
+ release
+ end
+
+BattleTower_Outside_EventScript_1601FB:: @ 81601FB
+ msgbox BattleTower_Outside_Text_199E0E, 5
+ compare RESULT, 0
+ jumpeq BattleTower_Outside_EventScript_160226
+ msgbox BattleTower_Outside_Text_199E4B, 4
+ call BattleTower_Outside_EventScript_160232
+ warp LilycoveCity_Harbor, 255, 8, 11
+ waitstate
+ release
+ end
+
+BattleTower_Outside_EventScript_160226:: @ 8160226
+ message BattleTower_Outside_Text_199E7A
+ waittext
+ jump BattleTower_Outside_EventScript_16018E
+ end
+
+BattleTower_Outside_EventScript_160232:: @ 8160232
+ closebutton
+ move LAST_TALKED, BattleTower_Outside_Movement_1A0845
+ waitmove 0
+ pause 30
+ spriteinvisible 5, 26, 4
+ setvar 0x8004, 4
+ call BattleTower_Outside_EventScript_1A047C
+ return
+
+BattleTower_Outside_EventScript_160250:: @ 8160250
+ msgbox BattleTower_Outside_Text_199E29, 4
+ release
+ end
+
+BattleTower_Outside_EventScript_16025A:: @ 816025A
+ msgbox BattleTower_Outside_Text_199C6F, 3
+ end
+
+BattleTower_Outside_EventScript_160263:: @ 8160263
+ msgbox BattleTower_Outside_Text_199CA4, 2
+ end
+
+BattleTower_Outside_EventScript_16026C:: @ 816026C
+ msgbox BattleTower_Outside_Text_199E9C, 2
+ end
+
+BattleTower_Outside_EventScript_160275:: @ 8160275
+ msgbox BattleTower_Outside_Text_199ED4, 2
+ end
+
diff --git a/data/maps/scripts/CaveOfOrigin_1F.s b/data/maps/scripts/CaveOfOrigin_1F.s
new file mode 100644
index 000000000..f55cd5081
--- /dev/null
+++ b/data/maps/scripts/CaveOfOrigin_1F.s
@@ -0,0 +1,9 @@
+CaveOfOrigin_1F_MapScripts:: @ 815DD6C
+ map_script 3, CaveOfOrigin_1F_MapScript1_15DD72
+ .byte 0
+
+CaveOfOrigin_1F_MapScript1_15DD72:: @ 815DD72
+ checkflag 113
+ callif 1, CaveOfOrigin_1F_EventScript_1A04E3
+ end
+
diff --git a/data/maps/scripts/CaveOfOrigin_B1F.s b/data/maps/scripts/CaveOfOrigin_B1F.s
new file mode 100644
index 000000000..751f38659
--- /dev/null
+++ b/data/maps/scripts/CaveOfOrigin_B1F.s
@@ -0,0 +1,9 @@
+CaveOfOrigin_B1F_MapScripts:: @ 815DD7C
+ map_script 3, CaveOfOrigin_B1F_MapScript1_15DD82
+ .byte 0
+
+CaveOfOrigin_B1F_MapScript1_15DD82:: @ 815DD82
+ checkflag 113
+ callif 1, CaveOfOrigin_B1F_EventScript_1A04E3
+ end
+
diff --git a/data/maps/scripts/CaveOfOrigin_B2F.s b/data/maps/scripts/CaveOfOrigin_B2F.s
new file mode 100644
index 000000000..8c1ba56b8
--- /dev/null
+++ b/data/maps/scripts/CaveOfOrigin_B2F.s
@@ -0,0 +1,9 @@
+CaveOfOrigin_B2F_MapScripts:: @ 815DD8C
+ map_script 3, CaveOfOrigin_B2F_MapScript1_15DD92
+ .byte 0
+
+CaveOfOrigin_B2F_MapScript1_15DD92:: @ 815DD92
+ checkflag 113
+ callif 1, CaveOfOrigin_B2F_EventScript_1A04E3
+ end
+
diff --git a/data/maps/scripts/CaveOfOrigin_B3F.s b/data/maps/scripts/CaveOfOrigin_B3F.s
new file mode 100644
index 000000000..2ebdb2d05
--- /dev/null
+++ b/data/maps/scripts/CaveOfOrigin_B3F.s
@@ -0,0 +1,9 @@
+CaveOfOrigin_B3F_MapScripts:: @ 815DD9C
+ map_script 3, CaveOfOrigin_B3F_MapScript1_15DDA2
+ .byte 0
+
+CaveOfOrigin_B3F_MapScript1_15DDA2:: @ 815DDA2
+ checkflag 113
+ callif 1, CaveOfOrigin_B3F_EventScript_1A04E3
+ end
+
diff --git a/data/maps/scripts/CaveOfOrigin_B4F.s b/data/maps/scripts/CaveOfOrigin_B4F.s
new file mode 100644
index 000000000..3acf5ae1a
--- /dev/null
+++ b/data/maps/scripts/CaveOfOrigin_B4F.s
@@ -0,0 +1,84 @@
+CaveOfOrigin_B4F_MapScripts:: @ 815DDAC
+ map_script 5, CaveOfOrigin_B4F_MapScript1_15DDB7
+ map_script 3, CaveOfOrigin_B4F_MapScript1_15DDC5
+ .byte 0
+
+CaveOfOrigin_B4F_MapScript1_15DDB7:: @ 815DDB7
+ checkflag 2145
+ callif 1, CaveOfOrigin_B4F_EventScript_15DDC1
+ end
+
+CaveOfOrigin_B4F_EventScript_15DDC1:: @ 815DDC1
+ disappear 1
+ return
+
+CaveOfOrigin_B4F_MapScript1_15DDC5:: @ 815DDC5
+ setmapfooter 313
+ call CaveOfOrigin_B4F_EventScript_1A01B5
+ checkflag 113
+ callif 1, CaveOfOrigin_B4F_EventScript_1A04E3
+ end
+
+CaveOfOrigin_B4F_EventScript_15DDD7:: @ 815DDD7
+ lockall
+ move 255, CaveOfOrigin_B4F_Movement_1A0841
+ waitmove 0
+ msgbox CaveOfOrigin_B4F_Text_1B4FE4, 4
+ closebutton
+ setweather 0
+ doweather
+ special 284
+ waitstate
+ playsfx 209
+ setanimation 0, 9
+ setanimation 1, 13
+ setanimation 2, 0
+ doanimation 54
+ checkanimation 54
+ setvar RESULT, 2
+ playsfx 107
+ special 281
+ waitstate
+ special 282
+ waitstate
+ move 1, CaveOfOrigin_B4F_Movement_15DE7D
+ waitmove 0
+ pause 60
+ setwildbattle SPECIES_GROUDON, 45, ITEM_NONE
+ checksound
+ pokecry SPECIES_GROUDON, 2
+ pause 40
+ waitpokecry
+ setflag 2145
+ special 311
+ waitstate
+ clearflag 2145
+ specialval RESULT, 180
+ compare RESULT, 1
+ callif 1, CaveOfOrigin_B4F_EventScript_15DE73
+ setflag 816
+ setflag 855
+ setflag 856
+ clearflag 815
+ setvar 0x409b, 1
+ setflag 113
+ clearflag 854
+ clearflag 2090
+ setvar 0x40b9, 2
+ clearflag 916
+ releaseall
+ end
+
+CaveOfOrigin_B4F_EventScript_15DE73:: @ 815DE73
+ msgbox CaveOfOrigin_B4F_Text_1B5009, 4
+ closebutton
+ return
+
+CaveOfOrigin_B4F_Movement_15DE7D:: @ 815DE7D
+ step_5e
+ step_60
+ step_14
+ step_14
+ step_61
+ step_end
+
diff --git a/data/maps/scripts/CaveOfOrigin_Entrance.s b/data/maps/scripts/CaveOfOrigin_Entrance.s
new file mode 100644
index 000000000..a39a290be
--- /dev/null
+++ b/data/maps/scripts/CaveOfOrigin_Entrance.s
@@ -0,0 +1,3 @@
+CaveOfOrigin_Entrance_MapScripts:: @ 815DD6B
+ .byte 0
+
diff --git a/data/maps/scripts/DesertRuins.s b/data/maps/scripts/DesertRuins.s
new file mode 100644
index 000000000..de5658eac
--- /dev/null
+++ b/data/maps/scripts/DesertRuins.s
@@ -0,0 +1,72 @@
+DesertRuins_MapScripts:: @ 815CAF3
+ map_script 5, DesertRuins_MapScript1_15CB03
+ map_script 1, DesertRuins_MapScript1_15CB11
+ map_script 3, DesertRuins_MapScript1_15CB52
+ .byte 0
+
+DesertRuins_MapScript1_15CB03:: @ 815CB03
+ checkflag 2145
+ callif 1, DesertRuins_EventScript_15CB0D
+ end
+
+DesertRuins_EventScript_15CB0D:: @ 815CB0D
+ disappear LAST_TALKED
+ return
+
+DesertRuins_MapScript1_15CB11:: @ 815CB11
+ checkflag 2128
+ callif 0, DesertRuins_EventScript_15CB1B
+ end
+
+DesertRuins_EventScript_15CB1B:: @ 815CB1B
+ setmaptile 7, 19, 553, 1
+ setmaptile 8, 19, 553, 1
+ setmaptile 9, 19, 553, 1
+ setmaptile 7, 20, 565, 1
+ setmaptile 8, 20, 565, 1
+ setmaptile 9, 20, 565, 1
+ return
+
+DesertRuins_MapScript1_15CB52:: @ 815CB52
+ setflag 2134
+ end
+
+DesertRuins_EventScript_15CB56:: @ 815CB56
+ lockall
+ checkflag 2128
+ jumpeq DesertRuins_EventScript_15CB6D
+ braillemsg DesertRuins_Braille_1C54C8
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+DesertRuins_EventScript_15CB6D:: @ 815CB6D
+ msgbox DesertRuins_Text_1A13BE, 4
+ releaseall
+ end
+
+DesertRuins_EventScript_15CB77:: @ 815CB77
+ lockall
+ braillemsg DesertRuins_Braille_1C54C8
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+DesertRuins_EventScript_15CB85:: @ 815CB85
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_REGIROCK, 2
+ pause 40
+ waitpokecry
+ setwildbattle SPECIES_REGIROCK, 40, ITEM_NONE
+ setflag 935
+ setflag 2145
+ special 313
+ waitstate
+ clearflag 2145
+ release
+ end
+
diff --git a/data/maps/scripts/DewfordTown.s b/data/maps/scripts/DewfordTown.s
new file mode 100644
index 000000000..6c184198d
--- /dev/null
+++ b/data/maps/scripts/DewfordTown.s
@@ -0,0 +1,644 @@
+DewfordTown_MapScripts:: @ 814DFF8
+ map_script 3, DewfordTown_MapScript1_14DFFE
+ .byte 0
+
+DewfordTown_MapScript1_14DFFE:: @ 814DFFE
+ setflag 2065
+ end
+
+DewfordTown_EventScript_14E002:: @ 814E002
+ lock
+ faceplayer
+ checkflag 189
+ jumpif 0, DewfordTown_EventScript_14E076
+ message DewfordTown_Text_16B522
+ waittext
+ multichoicedef 21, 6, 0, 2, 0
+ switch RESULT
+ case 0, DewfordTown_EventScript_14E04B
+ case 1, DewfordTown_EventScript_14E05B
+ case 2, DewfordTown_EventScript_14E06B
+ case 127, DewfordTown_EventScript_14E06B
+ end
+
+DewfordTown_EventScript_14E04B:: @ 814E04B
+ msgbox DewfordTown_Text_16B57D, 4
+ closebutton
+ jump DewfordTown_EventScript_14E151
+
+ .incbin "baserom.gba", 0x14e059, 0x2
+
+DewfordTown_EventScript_14E05B:: @ 814E05B
+ msgbox DewfordTown_Text_16B5D2, 4
+ closebutton
+ jump DewfordTown_EventScript_14E1D8
+
+ .incbin "baserom.gba", 0x14e069, 0x2
+
+DewfordTown_EventScript_14E06B:: @ 814E06B
+ msgbox DewfordTown_Text_16B627, 4
+ closebutton
+ release
+ end
+
+DewfordTown_EventScript_14E076:: @ 814E076
+ msgbox DewfordTown_Text_16B3BC, 5
+ compare RESULT, 1
+ jumpeq DewfordTown_EventScript_14E093
+ msgbox DewfordTown_Text_16B471, 4
+ release
+ end
+
+DewfordTown_EventScript_14E093:: @ 814E093
+ msgbox DewfordTown_Text_16B417, 4
+ closebutton
+ jump DewfordTown_EventScript_14E151
+ end
+
+DewfordTown_EventScript_14E0A2:: @ 814E0A2
+ msgbox DewfordTown_Text_16B23B, 2
+ end
+
+DewfordTown_EventScript_14E0AB:: @ 814E0AB
+ msgbox DewfordTown_Text_16B2A7, 3
+ end
+
+DewfordTown_EventScript_14E0B4:: @ 814E0B4
+ msgbox DewfordTown_Text_16B2D5, 3
+ end
+
+DewfordTown_EventScript_14E0BD:: @ 814E0BD
+ msgbox DewfordTown_Text_16B317, 3
+ end
+
+DewfordTown_EventScript_14E0C6:: @ 814E0C6
+ lock
+ faceplayer
+ checkflag 257
+ jumpeq DewfordTown_EventScript_14E11B
+ msgbox DewfordTown_Text_16B665, 5
+ compare RESULT, 1
+ jumpeq DewfordTown_EventScript_14E0F0
+ compare RESULT, 0
+ jumpeq DewfordTown_EventScript_14E111
+ end
+
+DewfordTown_EventScript_14E0F0:: @ 814E0F0
+ msgbox DewfordTown_Text_16B6A8, 4
+ giveitem ITEM_OLD_ROD
+ setflag 257
+ msgbox DewfordTown_Text_16B6F9, 4
+ release
+ end
+
+DewfordTown_EventScript_14E111:: @ 814E111
+ msgbox DewfordTown_Text_16B828, 4
+ release
+ end
+
+DewfordTown_EventScript_14E11B:: @ 814E11B
+ message DewfordTown_Text_16B84E
+ waittext
+ multichoice 20, 8, 50, 1
+ compare RESULT, 0
+ jumpeq DewfordTown_EventScript_14E13D
+ compare RESULT, 1
+ jumpeq DewfordTown_EventScript_14E147
+ end
+
+DewfordTown_EventScript_14E13D:: @ 814E13D
+ msgbox DewfordTown_Text_16B866, 4
+ release
+ end
+
+DewfordTown_EventScript_14E147:: @ 814E147
+ msgbox DewfordTown_Text_16B89A, 4
+ release
+ end
+
+DewfordTown_EventScript_14E151:: @ 814E151
+ call DewfordTown_EventScript_1A010C
+ spritelevelup 2, 0, 11, 0
+ spritelevelup 255, 0, 11, 0
+ move 2, DewfordTown_Movement_14E40E
+ waitmove 0
+ disappear 2
+ move 255, DewfordTown_Movement_14E402
+ waitmove 0
+ spriteinvisible 255, 0, 11
+ call DewfordTown_EventScript_1A02E7
+ move 4, DewfordTown_Movement_14E293
+ move 255, DewfordTown_Movement_14E293
+ waitmove 0
+ spritevisible 255, 0, 19
+ call DewfordTown_EventScript_1A02EF
+ move 255, DewfordTown_Movement_14E405
+ waitmove 0
+ spritevisible 255, 0, 19
+ clearflag 739
+ clearflag 881
+ clearflag 742
+ setflag 743
+ spriteinvisible 4, 0, 11
+ setvar 0x408e, 2
+ restorespritelevel 255, 0, 11
+ warp Route104_MrBrineysHouse, 255, 5, 4
+ copyvar 0x4096, 0x8008
+ waitstate
+ release
+ end
+
+DewfordTown_EventScript_14E1D8:: @ 814E1D8
+ call DewfordTown_EventScript_1A010C
+ spritelevelup 2, 0, 11, 0
+ spritelevelup 255, 0, 11, 1
+ move 2, DewfordTown_Movement_14E40E
+ waitmove 0
+ disappear 2
+ move 255, DewfordTown_Movement_14E402
+ waitmove 0
+ spriteinvisible 255, 0, 11
+ call DewfordTown_EventScript_1A02E7
+ move 4, DewfordTown_Movement_14E356
+ move 255, DewfordTown_Movement_14E356
+ waitmove 0
+ call DewfordTown_EventScript_1A02EF
+ spritevisible 255, 0, 24
+ move 255, DewfordTown_Movement_14E409
+ waitmove 0
+ movespriteperm 2, 21, 26
+ reappear 2
+ spritelevelup 2, 0, 24, 0
+ move 2, DewfordTown_Movement_14E410
+ waitmove 0
+ clearflag 741
+ reappear 1
+ clearflag 744
+ setflag 743
+ spriteinvisible 4, 0, 11
+ checkflag 149
+ callif 0, DewfordTown_EventScript_14E281
+ checkflag 149
+ callif 1, DewfordTown_EventScript_14E28A
+ closebutton
+ copyvar 0x4096, 0x8008
+ restorespritelevel 255, 0, 11
+ restorespritelevel 2, 0, 24
+ moveoffscreen 2
+ release
+ end
+
+DewfordTown_EventScript_14E281:: @ 814E281
+ msgbox DewfordTown_Text_16E080, 4
+ return
+
+DewfordTown_EventScript_14E28A:: @ 814E28A
+ msgbox DewfordTown_Text_16E1FA, 4
+ return
+
+DewfordTown_Movement_14E293:: @ 814E293
+ step_up
+ step_up
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_up
+ step_up
+ step_left
+ step_left
+ step_17
+ step_17
+ step_17
+ step_17
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_17
+ step_17
+ step_17
+ step_17
+ step_16
+ step_16
+ step_16
+ step_16
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_16
+ step_16
+ step_16
+ step_16
+ step_17
+ step_17
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_17
+ step_17
+ step_16
+ step_16
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_16
+ step_16
+ step_16
+ step_16
+ step_up
+ step_up
+ step_up
+ step_up
+ step_end
+
+DewfordTown_Movement_14E356:: @ 814E356
+ step_right
+ step_18
+ step_18
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_18
+ step_18
+ step_16
+ step_16
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_2e
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_end
+
+DewfordTown_Movement_14E402:: @ 814E402
+ step_right
+ step_up
+ step_end
+
+DewfordTown_Movement_14E405:: @ 814E405
+ step_up
+ step_up
+ step_up
+ step_end
+
+DewfordTown_Movement_14E409:: @ 814E409
+ step_up
+ step_up
+ step_up
+ step_25
+ step_end
+
+DewfordTown_Movement_14E40E:: @ 814E40E
+ step_up
+ step_end
+
+DewfordTown_Movement_14E410:: @ 814E410
+ step_up
+ step_up
+ step_end
+
+DewfordTown_EventScript_14E413:: @ 814E413
+ lock
+ faceplayer
+ call DewfordTown_EventScript_1A0102
+ msgbox DewfordTown_Text_16B9CE, 5
+ compare RESULT, 1
+ jumpeq DewfordTown_EventScript_14E439
+ compare RESULT, 0
+ jumpeq DewfordTown_EventScript_14E443
+ end
+
+DewfordTown_EventScript_14E439:: @ 814E439
+ msgbox DewfordTown_Text_16BD37, 4
+ release
+ end
+
+DewfordTown_EventScript_14E443:: @ 814E443
+ msgbox DewfordTown_Text_16BADC, 4
+ setvar 0x8004, 9
+ call DewfordTown_EventScript_1A00F3
+ lock
+ faceplayer
+ compare RESULT, 1
+ jumpeq DewfordTown_EventScript_14E46E
+ compare RESULT, 0
+ jumpeq DewfordTown_EventScript_14E485
+ end
+
+DewfordTown_EventScript_14E46E:: @ 814E46E
+ inccounter 2
+ compare 0x8004, 0
+ jumpeq DewfordTown_EventScript_14E48F
+ msgbox DewfordTown_Text_16BB44, 4
+ release
+ end
+
+DewfordTown_EventScript_14E485:: @ 814E485
+ msgbox DewfordTown_Text_16BCE9, 4
+ release
+ end
+
+DewfordTown_EventScript_14E48F:: @ 814E48F
+ msgbox DewfordTown_Text_16BCA2, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x14e499, 0xa
+
diff --git a/data/maps/scripts/DewfordTown_Gym.s b/data/maps/scripts/DewfordTown_Gym.s
new file mode 100644
index 000000000..e51c33c69
--- /dev/null
+++ b/data/maps/scripts/DewfordTown_Gym.s
@@ -0,0 +1,201 @@
+DewfordTown_Gym_MapScripts:: @ 8153065
+ map_script 3, DewfordTown_Gym_MapScript1_15306B
+ .byte 0
+
+DewfordTown_Gym_MapScript1_15306B:: @ 815306B
+ call DewfordTown_Gym_EventScript_153071
+ end
+
+DewfordTown_Gym_EventScript_153071:: @ 8153071
+ checktrainerflag 266
+ jumpeq DewfordTown_Gym_EventScript_1530AA
+ call DewfordTown_Gym_EventScript_153122
+ copyvar 0x8001, 0x8000
+ compare 0x8000, 0
+ jumpeq DewfordTown_Gym_EventScript_1530BA
+ compare 0x8000, 1
+ jumpeq DewfordTown_Gym_EventScript_1530B6
+ compare 0x8000, 2
+ jumpeq DewfordTown_Gym_EventScript_1530B2
+ jump DewfordTown_Gym_EventScript_1530AE
+
+DewfordTown_Gym_EventScript_1530AA:: @ 81530AA
+ darken 0
+ return
+
+DewfordTown_Gym_EventScript_1530AE:: @ 81530AE
+ darken 1
+ return
+
+DewfordTown_Gym_EventScript_1530B2:: @ 81530B2
+ darken 2
+ return
+
+DewfordTown_Gym_EventScript_1530B6:: @ 81530B6
+ darken 3
+ return
+
+DewfordTown_Gym_EventScript_1530BA:: @ 81530BA
+ darken 4
+ return
+
+DewfordTown_Gym_EventScript_1530BE:: @ 81530BE
+ call DewfordTown_Gym_EventScript_153122
+ snop1
+ comparevars 0x8000, 0x8001
+ jumpeq DewfordTown_Gym_EventScript_1530F5
+ copyvar 0x8001, 0x8000
+ compare 0x8000, 1
+ jumpeq DewfordTown_Gym_EventScript_1530F6
+ compare 0x8000, 2
+ jumpeq DewfordTown_Gym_EventScript_153101
+ compare 0x8000, 3
+ jumpeq DewfordTown_Gym_EventScript_15310C
+
+DewfordTown_Gym_EventScript_1530F5:: @ 81530F5
+ return
+
+DewfordTown_Gym_EventScript_1530F6:: @ 81530F6
+ playsfx 35
+ lighten 3
+ call DewfordTown_Gym_EventScript_153071
+ return
+
+DewfordTown_Gym_EventScript_153101:: @ 8153101
+ playsfx 35
+ lighten 2
+ call DewfordTown_Gym_EventScript_153071
+ return
+
+DewfordTown_Gym_EventScript_15310C:: @ 815310C
+ playsfx 35
+ lighten 1
+ call DewfordTown_Gym_EventScript_153071
+ return
+
+DewfordTown_Gym_EventScript_153117:: @ 8153117
+ playsfx 35
+ lighten 0
+ call DewfordTown_Gym_EventScript_153071
+ return
+
+DewfordTown_Gym_EventScript_153122:: @ 8153122
+ setvar 0x8000, 0
+ checktrainerflag 179
+ jumpif 0, DewfordTown_Gym_EventScript_153135
+ addvar 0x8000, 1
+
+DewfordTown_Gym_EventScript_153135:: @ 8153135
+ checktrainerflag 425
+ jumpif 0, DewfordTown_Gym_EventScript_153143
+ addvar 0x8000, 1
+
+DewfordTown_Gym_EventScript_153143:: @ 8153143
+ checktrainerflag 426
+ jumpif 0, DewfordTown_Gym_EventScript_153151
+ addvar 0x8000, 1
+
+DewfordTown_Gym_EventScript_153151:: @ 8153151
+ return
+
+DewfordTown_Gym_EventScript_153152:: @ 8153152
+ trainerbattle 1, 266, 0, DewfordTown_Gym_Text_175182, DewfordTown_Gym_Text_175246, DewfordTown_Gym_EventScript_153177
+ checkflag 166
+ jumpif 0, DewfordTown_Gym_EventScript_1531B5
+ msgbox DewfordTown_Gym_Text_175412, 4
+ release
+ end
+
+DewfordTown_Gym_EventScript_153177:: @ 8153177
+ call DewfordTown_Gym_EventScript_153117
+ message DewfordTown_Gym_Text_1752BB
+ waittext
+ call DewfordTown_Gym_EventScript_1A02C5
+ msgbox DewfordTown_Gym_Text_1752E6, 4
+ setflag 1204
+ setflag 2056
+ addvar 0x4085, 1
+ compare 0x4085, 6
+ callif 1, DewfordTown_Gym_EventScript_1A00FB
+ setvar 0x8008, 2
+ call DewfordTown_Gym_EventScript_1A01C0
+ jump DewfordTown_Gym_EventScript_1531B5
+ end
+
+DewfordTown_Gym_EventScript_1531B5:: @ 81531B5
+ giveitem ITEM_TM08
+ compare RESULT, 0
+ jumpeq DewfordTown_Gym_EventScript_1A029B
+ msgbox DewfordTown_Gym_Text_1753BF, 4
+ setflag 166
+ release
+ end
+
+DewfordTown_Gym_EventScript_1531D9:: @ 81531D9
+ trainerbattle 2, 179, 0, DewfordTown_Gym_Text_174F61, DewfordTown_Gym_Text_174F7A, DewfordTown_Gym_EventScript_1531F4
+ msgbox DewfordTown_Gym_Text_174F8E, 6
+ end
+
+DewfordTown_Gym_EventScript_1531F4:: @ 81531F4
+ call DewfordTown_Gym_EventScript_1530BE
+ release
+ end
+
+DewfordTown_Gym_EventScript_1531FB:: @ 81531FB
+ trainerbattle 2, 425, 0, DewfordTown_Gym_Text_174FCE, DewfordTown_Gym_Text_175009, DewfordTown_Gym_EventScript_153216
+ msgbox DewfordTown_Gym_Text_175031, 6
+ end
+
+DewfordTown_Gym_EventScript_153216:: @ 8153216
+ call DewfordTown_Gym_EventScript_1530BE
+ release
+ end
+
+DewfordTown_Gym_EventScript_15321D:: @ 815321D
+ trainerbattle 2, 426, 0, DewfordTown_Gym_Text_1750C9, DewfordTown_Gym_Text_175104, DewfordTown_Gym_EventScript_153238
+ msgbox DewfordTown_Gym_Text_175117, 6
+ end
+
+DewfordTown_Gym_EventScript_153238:: @ 8153238
+ call DewfordTown_Gym_EventScript_1530BE
+ release
+ end
+
+DewfordTown_Gym_EventScript_15323F:: @ 815323F
+ lock
+ faceplayer
+ checkflag 1204
+ jumpeq DewfordTown_Gym_EventScript_153254
+ msgbox DewfordTown_Gym_Text_174D98, 4
+ release
+ end
+
+DewfordTown_Gym_EventScript_153254:: @ 8153254
+ msgbox DewfordTown_Gym_Text_174F1E, 4
+ release
+ end
+
+DewfordTown_Gym_EventScript_15325E:: @ 815325E
+ lockall
+ checkflag 2056
+ jumpeq DewfordTown_Gym_EventScript_15327E
+ jump DewfordTown_Gym_EventScript_153288
+ end
+
+DewfordTown_Gym_EventScript_15326E:: @ 815326E
+ lockall
+ checkflag 2056
+ jumpeq DewfordTown_Gym_EventScript_15327E
+ jump DewfordTown_Gym_EventScript_153288
+ end
+
+DewfordTown_Gym_EventScript_15327E:: @ 815327E
+ msgbox DewfordTown_Gym_Text_175490, 4
+ releaseall
+ end
+
+DewfordTown_Gym_EventScript_153288:: @ 8153288
+ msgbox DewfordTown_Gym_Text_175477, 4
+ releaseall
+ end
+
diff --git a/data/maps/scripts/DewfordTown_Hall.s b/data/maps/scripts/DewfordTown_Hall.s
new file mode 100644
index 000000000..a7dd01c32
--- /dev/null
+++ b/data/maps/scripts/DewfordTown_Hall.s
@@ -0,0 +1,269 @@
+DewfordTown_Hall_MapScripts:: @ 8153292
+ .byte 0
+
+DewfordTown_Hall_EventScript_153293:: @ 8153293
+ lock
+ faceplayer
+ call DewfordTown_Hall_EventScript_1A0102
+ special 127
+ compare RESULT, 1
+ jumpeq DewfordTown_Hall_EventScript_1532B2
+ msgbox DewfordTown_Hall_Text_1754C9, 4
+ release
+ end
+
+DewfordTown_Hall_EventScript_1532B2:: @ 81532B2
+ msgbox DewfordTown_Hall_Text_175528, 4
+ release
+ end
+
+DewfordTown_Hall_EventScript_1532BC:: @ 81532BC
+ lock
+ faceplayer
+ call DewfordTown_Hall_EventScript_1A0102
+ msgbox DewfordTown_Hall_Text_17559E, 4
+ release
+ end
+
+DewfordTown_Hall_EventScript_1532CD:: @ 81532CD
+ lock
+ faceplayer
+ call DewfordTown_Hall_EventScript_1A0102
+ special 128
+ msgbox DewfordTown_Hall_Text_1755F9, 5
+ compare RESULT, 1
+ jumpeq DewfordTown_Hall_EventScript_1532F6
+ compare RESULT, 0
+ jumpeq DewfordTown_Hall_EventScript_153300
+ end
+
+DewfordTown_Hall_EventScript_1532F6:: @ 81532F6
+ msgbox DewfordTown_Hall_Text_175664, 4
+ release
+ end
+
+DewfordTown_Hall_EventScript_153300:: @ 8153300
+ msgbox DewfordTown_Hall_Text_1756B7, 4
+ release
+ end
+
+DewfordTown_Hall_EventScript_15330A:: @ 815330A
+ lock
+ faceplayer
+ call DewfordTown_Hall_EventScript_1A0102
+ msgbox DewfordTown_Hall_Text_17570D, 4
+ closebutton
+ move 4, DewfordTown_Hall_Movement_1A0841
+ waitmove 0
+ release
+ end
+
+DewfordTown_Hall_EventScript_153326:: @ 8153326
+ lock
+ faceplayer
+ call DewfordTown_Hall_EventScript_1A0102
+ msgbox DewfordTown_Hall_Text_17574C, 4
+ closebutton
+ move 5, DewfordTown_Hall_Movement_1A0841
+ waitmove 0
+ release
+ end
+
+DewfordTown_Hall_EventScript_153342:: @ 8153342
+ lock
+ faceplayer
+ call DewfordTown_Hall_EventScript_1A0102
+ msgbox DewfordTown_Hall_Text_175779, 4
+ release
+ end
+
+DewfordTown_Hall_EventScript_153353:: @ 8153353
+ lockall
+ call DewfordTown_Hall_EventScript_1A0102
+ msgbox DewfordTown_Hall_Text_175842, 4
+ releaseall
+ end
+
+DewfordTown_Hall_EventScript_153363:: @ 8153363
+ lockall
+ call DewfordTown_Hall_EventScript_1A0102
+ special 129
+ switch RESULT
+ case 0, DewfordTown_Hall_EventScript_1533CA
+ case 4, DewfordTown_Hall_EventScript_1533CA
+ case 1, DewfordTown_Hall_EventScript_1533D4
+ case 5, DewfordTown_Hall_EventScript_1533CA
+ case 2, DewfordTown_Hall_EventScript_1533DE
+ case 6, DewfordTown_Hall_EventScript_1533DE
+ case 3, DewfordTown_Hall_EventScript_1533E8
+ case 7, DewfordTown_Hall_EventScript_1533DE
+ end
+
+DewfordTown_Hall_EventScript_1533CA:: @ 81533CA
+ msgbox DewfordTown_Hall_Text_1758C4, 4
+ releaseall
+ end
+
+DewfordTown_Hall_EventScript_1533D4:: @ 81533D4
+ msgbox DewfordTown_Hall_Text_1758E0, 4
+ releaseall
+ end
+
+DewfordTown_Hall_EventScript_1533DE:: @ 81533DE
+ msgbox DewfordTown_Hall_Text_1758FB, 4
+ releaseall
+ end
+
+DewfordTown_Hall_EventScript_1533E8:: @ 81533E8
+ msgbox DewfordTown_Hall_Text_175916, 4
+ releaseall
+ end
+
+DewfordTown_Hall_EventScript_1533F2:: @ 81533F2
+ lockall
+ setvar 0x8008, 0
+ jump DewfordTown_Hall_EventScript_15340A
+ end
+
+DewfordTown_Hall_EventScript_1533FE:: @ 81533FE
+ lockall
+ setvar 0x8008, 1
+ jump DewfordTown_Hall_EventScript_15340A
+ end
+
+DewfordTown_Hall_EventScript_15340A:: @ 815340A
+ call DewfordTown_Hall_EventScript_1A0102
+ special 129
+ switch RESULT
+ case 0, DewfordTown_Hall_EventScript_153470
+ case 1, DewfordTown_Hall_EventScript_153470
+ case 2, DewfordTown_Hall_EventScript_15348C
+ case 3, DewfordTown_Hall_EventScript_15348C
+ case 4, DewfordTown_Hall_EventScript_1534A8
+ case 5, DewfordTown_Hall_EventScript_1534A8
+ case 6, DewfordTown_Hall_EventScript_1534C4
+ case 7, DewfordTown_Hall_EventScript_1534E0
+ end
+
+DewfordTown_Hall_EventScript_153470:: @ 8153470
+ call DewfordTown_Hall_EventScript_1534FD
+ msgbox DewfordTown_Hall_Text_175935, 4
+ call DewfordTown_Hall_EventScript_153535
+ msgbox DewfordTown_Hall_Text_1759A1, 4
+ releaseall
+ end
+
+DewfordTown_Hall_EventScript_15348C:: @ 815348C
+ call DewfordTown_Hall_EventScript_1534FD
+ msgbox DewfordTown_Hall_Text_175A5C, 4
+ call DewfordTown_Hall_EventScript_153535
+ msgbox DewfordTown_Hall_Text_175AD9, 4
+ releaseall
+ end
+
+DewfordTown_Hall_EventScript_1534A8:: @ 81534A8
+ call DewfordTown_Hall_EventScript_1534FD
+ msgbox DewfordTown_Hall_Text_175B46, 4
+ call DewfordTown_Hall_EventScript_153535
+ msgbox DewfordTown_Hall_Text_175BA7, 4
+ releaseall
+ end
+
+DewfordTown_Hall_EventScript_1534C4:: @ 81534C4
+ call DewfordTown_Hall_EventScript_1534FD
+ msgbox DewfordTown_Hall_Text_175C41, 4
+ call DewfordTown_Hall_EventScript_153535
+ msgbox DewfordTown_Hall_Text_175CC2, 4
+ releaseall
+ end
+
+DewfordTown_Hall_EventScript_1534E0:: @ 81534E0
+ call DewfordTown_Hall_EventScript_1534FD
+ msgbox DewfordTown_Hall_Text_175D6B, 4
+ call DewfordTown_Hall_EventScript_153535
+ msgbox DewfordTown_Hall_Text_175DC3, 4
+ releaseall
+ end
+
+DewfordTown_Hall_EventScript_1534FC:: @ 81534FC
+ return
+
+DewfordTown_Hall_EventScript_1534FD:: @ 81534FD
+ move 8, DewfordTown_Hall_Movement_153599
+ waitmove 0
+ compare 0x8008, 0
+ jumpeq DewfordTown_Hall_EventScript_15351E
+ compare 0x8008, 1
+ jumpeq DewfordTown_Hall_EventScript_153534
+ end
+
+DewfordTown_Hall_EventScript_15351E:: @ 815351E
+ compare FACING, 4
+ jumpeq DewfordTown_Hall_EventScript_1534FC
+ move 255, DewfordTown_Hall_Movement_1A0843
+ waitmove 0
+ return
+
+DewfordTown_Hall_EventScript_153534:: @ 8153534
+ return
+
+DewfordTown_Hall_EventScript_153535:: @ 8153535
+ move 7, DewfordTown_Hall_Movement_15359B
+ waitmove 0
+ compare 0x8008, 0
+ jumpeq DewfordTown_Hall_EventScript_153556
+ compare 0x8008, 1
+ jumpeq DewfordTown_Hall_EventScript_153583
+ end
+
+DewfordTown_Hall_EventScript_153556:: @ 8153556
+ compare FACING, 2
+ callif 1, DewfordTown_Hall_EventScript_15356D
+ compare FACING, 1
+ callif 1, DewfordTown_Hall_EventScript_153578
+ return
+
+DewfordTown_Hall_EventScript_15356D:: @ 815356D
+ move 255, DewfordTown_Hall_Movement_1A0841
+ waitmove 0
+ return
+
+DewfordTown_Hall_EventScript_153578:: @ 8153578
+ move 255, DewfordTown_Hall_Movement_1A0845
+ waitmove 0
+ return
+
+DewfordTown_Hall_EventScript_153583:: @ 8153583
+ compare FACING, 3
+ jumpeq DewfordTown_Hall_EventScript_1534FC
+ move 255, DewfordTown_Hall_Movement_1A083F
+ waitmove 0
+ return
+
+DewfordTown_Hall_Movement_153599:: @ 8153599
+ step_1f
+ step_end
+
+DewfordTown_Hall_Movement_15359B:: @ 815359B
+ step_20
+ step_end
+
+DewfordTown_Hall_EventScript_15359D:: @ 815359D
+ lock
+ faceplayer
+ call DewfordTown_Hall_EventScript_1A0102
+ checkflag 230
+ jumpeq DewfordTown_Hall_EventScript_1535D1
+ msgbox DewfordTown_Hall_Text_175E13, 4
+ giveitem ITEM_TM36
+ compare RESULT, 0
+ jumpeq DewfordTown_Hall_EventScript_1A029B
+ setflag 230
+ release
+ end
+
+DewfordTown_Hall_EventScript_1535D1:: @ 81535D1
+ msgbox DewfordTown_Hall_Text_175EBE, 4
+ release
+ end
+
diff --git a/data/maps/scripts/DewfordTown_House1.s b/data/maps/scripts/DewfordTown_House1.s
new file mode 100644
index 000000000..fa9e62b12
--- /dev/null
+++ b/data/maps/scripts/DewfordTown_House1.s
@@ -0,0 +1,21 @@
+DewfordTown_House1_MapScripts:: @ 8152FEE
+ .byte 0
+
+DewfordTown_House1_EventScript_152FEF:: @ 8152FEF
+ msgbox DewfordTown_House1_Text_174BA5, 2
+ end
+
+DewfordTown_House1_EventScript_152FF8:: @ 8152FF8
+ msgbox DewfordTown_House1_Text_174C0D, 2
+ end
+
+DewfordTown_House1_EventScript_153001:: @ 8153001
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_ZIGZAGOON, 0
+ msgbox DewfordTown_House1_Text_174CC8, 4
+ waitpokecry
+ release
+ end
+
diff --git a/data/maps/scripts/DewfordTown_House2.s b/data/maps/scripts/DewfordTown_House2.s
new file mode 100644
index 000000000..8f1e8c784
--- /dev/null
+++ b/data/maps/scripts/DewfordTown_House2.s
@@ -0,0 +1,30 @@
+DewfordTown_House2_MapScripts:: @ 81535DB
+ .byte 0
+
+DewfordTown_House2_EventScript_1535DC:: @ 81535DC
+ lock
+ faceplayer
+ checkflag 289
+ jumpeq DewfordTown_House2_EventScript_153615
+ msgbox DewfordTown_House2_Text_175EFE, 4
+ giveitem ITEM_SILK_SCARF
+ compare RESULT, 0
+ jumpeq DewfordTown_House2_EventScript_15360B
+ setflag 289
+ release
+ end
+
+DewfordTown_House2_EventScript_15360B:: @ 815360B
+ msgbox DewfordTown_House2_Text_175FDA, 4
+ release
+ end
+
+DewfordTown_House2_EventScript_153615:: @ 8153615
+ msgbox DewfordTown_House2_Text_176055, 4
+ release
+ end
+
+DewfordTown_House2_EventScript_15361F:: @ 815361F
+ msgbox DewfordTown_House2_Text_1760C8, 2
+ end
+
diff --git a/data/maps/scripts/DewfordTown_PokemonCenter_1F.s b/data/maps/scripts/DewfordTown_PokemonCenter_1F.s
new file mode 100644
index 000000000..687a01ddc
--- /dev/null
+++ b/data/maps/scripts/DewfordTown_PokemonCenter_1F.s
@@ -0,0 +1,25 @@
+DewfordTown_PokemonCenter_1F_MapScripts:: @ 8153014
+ map_script 3, DewfordTown_PokemonCenter_1F_MapScript1_15301A
+ .byte 0
+
+DewfordTown_PokemonCenter_1F_MapScript1_15301A:: @ 815301A
+ sethealplace 15
+ call DewfordTown_PokemonCenter_1F_EventScript_19FD1B
+ end
+
+DewfordTown_PokemonCenter_1F_EventScript_153023:: @ 8153023
+ setvar 0x800b, 1
+ call DewfordTown_PokemonCenter_1F_EventScript_19FD5B
+ waittext
+ waitbutton
+ release
+ end
+
+DewfordTown_PokemonCenter_1F_EventScript_153031:: @ 8153031
+ msgbox DewfordTown_PokemonCenter_1F_Text_174CDB, 2
+ end
+
+DewfordTown_PokemonCenter_1F_EventScript_15303A:: @ 815303A
+ msgbox DewfordTown_PokemonCenter_1F_Text_174D32, 2
+ end
+
diff --git a/data/maps/scripts/DewfordTown_PokemonCenter_2F.s b/data/maps/scripts/DewfordTown_PokemonCenter_2F.s
new file mode 100644
index 000000000..5d23f1f9a
--- /dev/null
+++ b/data/maps/scripts/DewfordTown_PokemonCenter_2F.s
@@ -0,0 +1,18 @@
+DewfordTown_PokemonCenter_2F_MapScripts:: @ 8153043
+ map_script 2, DewfordTown_PokemonCenter_2F_MapScript2_1A3D88
+ map_script 4, DewfordTown_PokemonCenter_2F_MapScript2_1A3D03
+ map_script 1, DewfordTown_PokemonCenter_2F_MapScript1_1A3D32
+ .byte 0
+
+DewfordTown_PokemonCenter_2F_EventScript_153053:: @ 8153053
+ call DewfordTown_PokemonCenter_2F_EventScript_1A3EA6
+ end
+
+DewfordTown_PokemonCenter_2F_EventScript_153059:: @ 8153059
+ call DewfordTown_PokemonCenter_2F_EventScript_1A40CC
+ end
+
+DewfordTown_PokemonCenter_2F_EventScript_15305F:: @ 815305F
+ call DewfordTown_PokemonCenter_2F_EventScript_1A41FB
+ end
+
diff --git a/data/maps/scripts/DoubleBattleColosseum.s b/data/maps/scripts/DoubleBattleColosseum.s
new file mode 100644
index 000000000..360f5fced
--- /dev/null
+++ b/data/maps/scripts/DoubleBattleColosseum.s
@@ -0,0 +1,3 @@
+DoubleBattleColosseum_MapScripts:: @ 815F57F
+ .byte 0
+
diff --git a/data/maps/scripts/EverGrandeCity.s b/data/maps/scripts/EverGrandeCity.s
new file mode 100644
index 000000000..cdac6069e
--- /dev/null
+++ b/data/maps/scripts/EverGrandeCity.s
@@ -0,0 +1,26 @@
+EverGrandeCity_MapScripts:: @ 814D4D5
+ map_script 3, EverGrandeCity_MapScript1_14D4DB
+ .byte 0
+
+EverGrandeCity_MapScript1_14D4DB:: @ 814D4DB
+ checkflag 2090
+ callif 1, EverGrandeCity_EventScript_1A02C1
+ end
+
+EverGrandeCity_EventScript_14D4E5:: @ 814D4E5
+ msgbox EverGrandeCity_Text_16A74D, 3
+ end
+
+EverGrandeCity_EventScript_14D4EE:: @ 814D4EE
+ msgbox EverGrandeCity_Text_16A787, 3
+ end
+
+EverGrandeCity_EventScript_14D4F7:: @ 814D4F7
+ msgbox EverGrandeCity_Text_16A763, 3
+ end
+
+EverGrandeCity_EventScript_14D500:: @ 814D500
+ setflag 2078
+ setvar 0x4001, 1
+ end
+
diff --git a/data/maps/scripts/EverGrandeCity_ChampionsRoom.s b/data/maps/scripts/EverGrandeCity_ChampionsRoom.s
new file mode 100644
index 000000000..de6c091a5
--- /dev/null
+++ b/data/maps/scripts/EverGrandeCity_ChampionsRoom.s
@@ -0,0 +1,227 @@
+EverGrandeCity_ChampionsRoom_MapScripts:: @ 815B7AF
+ map_script 3, EverGrandeCity_ChampionsRoom_MapScript1_15B7BF
+ map_script 4, EverGrandeCity_ChampionsRoom_MapScript2_15B7C5
+ map_script 2, EverGrandeCity_ChampionsRoom_MapScript2_15B7D4
+ .byte 0
+
+EverGrandeCity_ChampionsRoom_MapScript1_15B7BF:: @ 815B7BF
+ call EverGrandeCity_ChampionsRoom_EventScript_1A014E
+ end
+
+EverGrandeCity_ChampionsRoom_MapScript2_15B7C5:: @ 815B7C5
+ map_script_2 0x4001, 0, EverGrandeCity_ChampionsRoom_EventScript_15B7CF
+ .2byte 0
+
+EverGrandeCity_ChampionsRoom_EventScript_15B7CF:: @ 815B7CF
+ spriteface 255, 2
+ end
+
+EverGrandeCity_ChampionsRoom_MapScript2_15B7D4:: @ 815B7D4
+ map_script_2 0x4001, 0, EverGrandeCity_ChampionsRoom_EventScript_15B7DE
+ .2byte 0
+
+EverGrandeCity_ChampionsRoom_EventScript_15B7DE:: @ 815B7DE
+ lockall
+ move 255, EverGrandeCity_ChampionsRoom_Movement_1A084E
+ waitmove 0
+ pause 40
+ move 255, EverGrandeCity_ChampionsRoom_Movement_15B802
+ waitmove 0
+ setvar 0x4001, 1
+ jump EverGrandeCity_ChampionsRoom_EventScript_15B805
+
+ .incbin "baserom.gba", 0x15b800, 0x2
+
+EverGrandeCity_ChampionsRoom_Movement_15B802:: @ 815B802
+ step_up
+ step_up
+ step_end
+
+EverGrandeCity_ChampionsRoom_EventScript_15B805:: @ 815B805
+ playmusic 454, 0
+ msgbox EverGrandeCity_ChampionsRoom_Text_190F9C, 4
+ trainerbattle 3, 335, 0, EverGrandeCity_ChampionsRoom_Text_1910A0
+ jump EverGrandeCity_ChampionsRoom_EventScript_15B821
+ end
+
+EverGrandeCity_ChampionsRoom_EventScript_15B821:: @ 815B821
+ playsfx 8
+ setmaptile 6, 1, 838, 0
+ setmaptile 6, 2, 839, 0
+ special 142
+ msgbox EverGrandeCity_ChampionsRoom_Text_1910FE, 4
+ closebutton
+ playsfx 8
+ checkgender
+ compare RESULT, 0
+ callif 1, EverGrandeCity_ChampionsRoom_EventScript_15B87C
+ compare RESULT, 1
+ callif 1, EverGrandeCity_ChampionsRoom_EventScript_15B881
+ reappear 2
+ call EverGrandeCity_ChampionsRoom_EventScript_15B9BD
+ checkgender
+ compare RESULT, 0
+ jumpeq EverGrandeCity_ChampionsRoom_EventScript_15B886
+ compare RESULT, 1
+ jumpeq EverGrandeCity_ChampionsRoom_EventScript_15B8BB
+ end
+
+EverGrandeCity_ChampionsRoom_EventScript_15B87C:: @ 815B87C
+ playmusic 415, 0
+ return
+
+EverGrandeCity_ChampionsRoom_EventScript_15B881:: @ 815B881
+ playmusic 421, 0
+ return
+
+EverGrandeCity_ChampionsRoom_EventScript_15B886:: @ 815B886
+ msgbox EverGrandeCity_ChampionsRoom_Text_191225, 4
+ pause 40
+ playsfx 21
+ move 2, EverGrandeCity_ChampionsRoom_Movement_1A0833
+ waitmove 0
+ move 2, EverGrandeCity_ChampionsRoom_Movement_1A0835
+ waitmove 0
+ call EverGrandeCity_ChampionsRoom_EventScript_15B9D2
+ msgbox EverGrandeCity_ChampionsRoom_Text_191268, 4
+ jump EverGrandeCity_ChampionsRoom_EventScript_15B8F0
+ end
+
+EverGrandeCity_ChampionsRoom_EventScript_15B8BB:: @ 815B8BB
+ msgbox EverGrandeCity_ChampionsRoom_Text_1912B3, 4
+ pause 40
+ playsfx 21
+ move 2, EverGrandeCity_ChampionsRoom_Movement_1A0833
+ waitmove 0
+ move 2, EverGrandeCity_ChampionsRoom_Movement_1A0835
+ waitmove 0
+ call EverGrandeCity_ChampionsRoom_EventScript_15B9D2
+ msgbox EverGrandeCity_ChampionsRoom_Text_191305, 4
+ jump EverGrandeCity_ChampionsRoom_EventScript_15B8F0
+ end
+
+EverGrandeCity_ChampionsRoom_EventScript_15B8F0:: @ 815B8F0
+ closebutton
+ reappear 3
+ move 3, EverGrandeCity_ChampionsRoom_Movement_15BA03
+ waitmove 0
+ move 255, EverGrandeCity_ChampionsRoom_Movement_1A0843
+ waitmove 0
+ msgbox EverGrandeCity_ChampionsRoom_Text_19134D, 4
+ call EverGrandeCity_ChampionsRoom_EventScript_1A03B0
+ msgbox EverGrandeCity_ChampionsRoom_Text_1914C6, 4
+ move 1, EverGrandeCity_ChampionsRoom_Movement_1A0841
+ waitmove 0
+ pause 20
+ move 1, EverGrandeCity_ChampionsRoom_Movement_1A0845
+ waitmove 0
+ msgbox EverGrandeCity_ChampionsRoom_Text_191512, 4
+ closebutton
+ pause 30
+ move 1, EverGrandeCity_ChampionsRoom_Movement_15B9FB
+ move 255, EverGrandeCity_ChampionsRoom_Movement_15B9DD
+ move 3, EverGrandeCity_ChampionsRoom_Movement_1A0841
+ move 2, EverGrandeCity_ChampionsRoom_Movement_15B9F8
+ waitmove 0
+ pause 20
+ move 255, EverGrandeCity_ChampionsRoom_Movement_1A0845
+ waitmove 0
+ msgbox EverGrandeCity_ChampionsRoom_Text_191546, 4
+ checkgender
+ compare RESULT, 0
+ callif 1, EverGrandeCity_ChampionsRoom_EventScript_15B9AB
+ compare RESULT, 1
+ callif 1, EverGrandeCity_ChampionsRoom_EventScript_15B9B4
+ closebutton
+ move 1, EverGrandeCity_ChampionsRoom_Movement_15B9FF
+ move 255, EverGrandeCity_ChampionsRoom_Movement_15B9E0
+ waitmove 0
+ setflag 781
+ warp EverGrandeCity_HallOfFame, 255, 7, 16
+ waitstate
+ releaseall
+ end
+
+EverGrandeCity_ChampionsRoom_EventScript_15B9AB:: @ 815B9AB
+ msgbox EverGrandeCity_ChampionsRoom_Text_1915D7, 4
+ return
+
+EverGrandeCity_ChampionsRoom_EventScript_15B9B4:: @ 815B9B4
+ msgbox EverGrandeCity_ChampionsRoom_Text_191675, 4
+ return
+
+EverGrandeCity_ChampionsRoom_EventScript_15B9BD:: @ 815B9BD
+ move 2, EverGrandeCity_ChampionsRoom_Movement_15B9E6
+ waitmove 0
+ move 255, EverGrandeCity_ChampionsRoom_Movement_1A083F
+ waitmove 0
+ return
+
+EverGrandeCity_ChampionsRoom_EventScript_15B9D2:: @ 815B9D2
+ move 2, EverGrandeCity_ChampionsRoom_Movement_15B9EF
+ waitmove 0
+ return
+
+EverGrandeCity_ChampionsRoom_Movement_15B9DD:: @ 815B9DD
+ step_up
+ step_up
+ step_end
+
+EverGrandeCity_ChampionsRoom_Movement_15B9E0:: @ 815B9E0
+ step_up
+ step_14
+ step_up
+ step_13
+ step_54
+ step_end
+
+EverGrandeCity_ChampionsRoom_Movement_15B9E6:: @ 815B9E6
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_left
+ step_up
+ step_28
+ step_end
+
+EverGrandeCity_ChampionsRoom_Movement_15B9EF:: @ 815B9EF
+ step_26
+ step_14
+ step_28
+ step_14
+ step_26
+ step_13
+ step_28
+ step_14
+ step_end
+
+EverGrandeCity_ChampionsRoom_Movement_15B9F8:: @ 815B9F8
+ step_right
+ step_up
+ step_end
+
+EverGrandeCity_ChampionsRoom_Movement_15B9FB:: @ 815B9FB
+ step_up
+ step_up
+ step_25
+ step_end
+
+EverGrandeCity_ChampionsRoom_Movement_15B9FF:: @ 815B9FF
+ step_up
+ step_13
+ step_54
+ step_end
+
+EverGrandeCity_ChampionsRoom_Movement_15BA03:: @ 815BA03
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_right
+ step_up
+ step_27
+ step_end
+
diff --git a/data/maps/scripts/EverGrandeCity_Corridor1.s b/data/maps/scripts/EverGrandeCity_Corridor1.s
new file mode 100644
index 000000000..a3798d99b
--- /dev/null
+++ b/data/maps/scripts/EverGrandeCity_Corridor1.s
@@ -0,0 +1,12 @@
+EverGrandeCity_Corridor1_MapScripts:: @ 815BA0C
+ map_script 4, EverGrandeCity_Corridor1_MapScript2_15BA12
+ .byte 0
+
+EverGrandeCity_Corridor1_MapScript2_15BA12:: @ 815BA12
+ map_script_2 0x4001, 0, EverGrandeCity_Corridor1_EventScript_15BA1C
+ .2byte 0
+
+EverGrandeCity_Corridor1_EventScript_15BA1C:: @ 815BA1C
+ spriteface 255, 2
+ end
+
diff --git a/data/maps/scripts/EverGrandeCity_Corridor2.s b/data/maps/scripts/EverGrandeCity_Corridor2.s
new file mode 100644
index 000000000..699338f21
--- /dev/null
+++ b/data/maps/scripts/EverGrandeCity_Corridor2.s
@@ -0,0 +1,12 @@
+EverGrandeCity_Corridor2_MapScripts:: @ 815BA21
+ map_script 4, EverGrandeCity_Corridor2_MapScript2_15BA27
+ .byte 0
+
+EverGrandeCity_Corridor2_MapScript2_15BA27:: @ 815BA27
+ map_script_2 0x4001, 0, EverGrandeCity_Corridor2_EventScript_15BA31
+ .2byte 0
+
+EverGrandeCity_Corridor2_EventScript_15BA31:: @ 815BA31
+ spriteface 255, 2
+ end
+
diff --git a/data/maps/scripts/EverGrandeCity_Corridor3.s b/data/maps/scripts/EverGrandeCity_Corridor3.s
new file mode 100644
index 000000000..d70b390a5
--- /dev/null
+++ b/data/maps/scripts/EverGrandeCity_Corridor3.s
@@ -0,0 +1,12 @@
+EverGrandeCity_Corridor3_MapScripts:: @ 815BA36
+ map_script 4, EverGrandeCity_Corridor3_MapScript2_15BA3C
+ .byte 0
+
+EverGrandeCity_Corridor3_MapScript2_15BA3C:: @ 815BA3C
+ map_script_2 0x4001, 0, EverGrandeCity_Corridor3_EventScript_15BA46
+ .2byte 0
+
+EverGrandeCity_Corridor3_EventScript_15BA46:: @ 815BA46
+ spriteface 255, 2
+ end
+
diff --git a/data/maps/scripts/EverGrandeCity_Corridor4.s b/data/maps/scripts/EverGrandeCity_Corridor4.s
new file mode 100644
index 000000000..131f5d342
--- /dev/null
+++ b/data/maps/scripts/EverGrandeCity_Corridor4.s
@@ -0,0 +1,12 @@
+EverGrandeCity_Corridor4_MapScripts:: @ 815BA4B
+ map_script 4, EverGrandeCity_Corridor4_MapScript2_15BA51
+ .byte 0
+
+EverGrandeCity_Corridor4_MapScript2_15BA51:: @ 815BA51
+ map_script_2 0x4001, 0, EverGrandeCity_Corridor4_EventScript_15BA5B
+ .2byte 0
+
+EverGrandeCity_Corridor4_EventScript_15BA5B:: @ 815BA5B
+ spriteface 255, 2
+ end
+
diff --git a/data/maps/scripts/EverGrandeCity_Corridor5.s b/data/maps/scripts/EverGrandeCity_Corridor5.s
new file mode 100644
index 000000000..d27df4ec8
--- /dev/null
+++ b/data/maps/scripts/EverGrandeCity_Corridor5.s
@@ -0,0 +1,12 @@
+EverGrandeCity_Corridor5_MapScripts:: @ 815BA60
+ map_script 4, EverGrandeCity_Corridor5_MapScript2_15BA66
+ .byte 0
+
+EverGrandeCity_Corridor5_MapScript2_15BA66:: @ 815BA66
+ map_script_2 0x4001, 0, EverGrandeCity_Corridor5_EventScript_15BA70
+ .2byte 0
+
+EverGrandeCity_Corridor5_EventScript_15BA70:: @ 815BA70
+ spriteface 255, 2
+ end
+
diff --git a/data/maps/scripts/EverGrandeCity_DrakesRoom.s b/data/maps/scripts/EverGrandeCity_DrakesRoom.s
new file mode 100644
index 000000000..035566c4e
--- /dev/null
+++ b/data/maps/scripts/EverGrandeCity_DrakesRoom.s
@@ -0,0 +1,59 @@
+EverGrandeCity_DrakesRoom_MapScripts:: @ 815B70D
+ map_script 2, EverGrandeCity_DrakesRoom_MapScript2_15B72C
+ map_script 1, EverGrandeCity_DrakesRoom_MapScript1_15B743
+ map_script 4, EverGrandeCity_DrakesRoom_MapScript2_15B570
+ .byte 0
+
+ .incbin "baserom.gba", 0x15b71d, 0xf
+
+EverGrandeCity_DrakesRoom_MapScript2_15B72C:: @ 815B72C
+ map_script_2 0x409c, 3, EverGrandeCity_DrakesRoom_EventScript_15B736
+ .2byte 0
+
+EverGrandeCity_DrakesRoom_EventScript_15B736:: @ 815B736
+ lockall
+ call EverGrandeCity_DrakesRoom_EventScript_1A0710
+ setvar 0x409c, 4
+ releaseall
+ end
+
+EverGrandeCity_DrakesRoom_MapScript1_15B743:: @ 815B743
+ checkflag 1248
+ callif 1, EverGrandeCity_DrakesRoom_EventScript_15B758
+ compare 0x409c, 4
+ callif 1, EverGrandeCity_DrakesRoom_EventScript_15B75E
+ end
+
+EverGrandeCity_DrakesRoom_EventScript_15B758:: @ 815B758
+ call EverGrandeCity_DrakesRoom_EventScript_1A0757
+ return
+
+EverGrandeCity_DrakesRoom_EventScript_15B75E:: @ 815B75E
+ call EverGrandeCity_DrakesRoom_EventScript_1A07FA
+ return
+
+EverGrandeCity_DrakesRoom_EventScript_15B764:: @ 815B764
+ lock
+ faceplayer
+ checkflag 1248
+ jumpeq EverGrandeCity_DrakesRoom_EventScript_15B78B
+ playmusic 450, 0
+ msgbox EverGrandeCity_DrakesRoom_Text_190CEB, 4
+ trainerbattle 3, 264, 0, EverGrandeCity_DrakesRoom_Text_190E42
+ jump EverGrandeCity_DrakesRoom_EventScript_15B795
+ end
+
+EverGrandeCity_DrakesRoom_EventScript_15B78B:: @ 815B78B
+ msgbox EverGrandeCity_DrakesRoom_Text_190E5D, 4
+ release
+ end
+
+EverGrandeCity_DrakesRoom_EventScript_15B795:: @ 815B795
+ setvar 0x8004, 0
+ special 170
+ setflag 1248
+ call EverGrandeCity_DrakesRoom_EventScript_1A0693
+ msgbox EverGrandeCity_DrakesRoom_Text_190E5D, 4
+ release
+ end
+
diff --git a/data/maps/scripts/EverGrandeCity_GlaciasRoom.s b/data/maps/scripts/EverGrandeCity_GlaciasRoom.s
new file mode 100644
index 000000000..830a810e6
--- /dev/null
+++ b/data/maps/scripts/EverGrandeCity_GlaciasRoom.s
@@ -0,0 +1,63 @@
+EverGrandeCity_GlaciasRoom_MapScripts:: @ 815B673
+ map_script 2, EverGrandeCity_GlaciasRoom_MapScript2_15B692
+ map_script 1, EverGrandeCity_GlaciasRoom_MapScript1_15B6A9
+ map_script 4, EverGrandeCity_GlaciasRoom_MapScript2_15B683
+ .byte 0
+
+EverGrandeCity_GlaciasRoom_MapScript2_15B683:: @ 815B683
+ map_script_2 0x4001, 0, EverGrandeCity_GlaciasRoom_EventScript_15B68D
+ .2byte 0
+
+EverGrandeCity_GlaciasRoom_EventScript_15B68D:: @ 815B68D
+ spriteface 255, 2
+ end
+
+EverGrandeCity_GlaciasRoom_MapScript2_15B692:: @ 815B692
+ map_script_2 0x409c, 2, EverGrandeCity_GlaciasRoom_EventScript_15B69C
+ .2byte 0
+
+EverGrandeCity_GlaciasRoom_EventScript_15B69C:: @ 815B69C
+ lockall
+ call EverGrandeCity_GlaciasRoom_EventScript_1A0710
+ setvar 0x409c, 3
+ releaseall
+ end
+
+EverGrandeCity_GlaciasRoom_MapScript1_15B6A9:: @ 815B6A9
+ checkflag 1247
+ callif 1, EverGrandeCity_GlaciasRoom_EventScript_15B6BE
+ compare 0x409c, 3
+ callif 1, EverGrandeCity_GlaciasRoom_EventScript_15B6C4
+ end
+
+EverGrandeCity_GlaciasRoom_EventScript_15B6BE:: @ 815B6BE
+ call EverGrandeCity_GlaciasRoom_EventScript_1A0757
+ return
+
+EverGrandeCity_GlaciasRoom_EventScript_15B6C4:: @ 815B6C4
+ call EverGrandeCity_GlaciasRoom_EventScript_1A07FA
+ return
+
+EverGrandeCity_GlaciasRoom_EventScript_15B6CA:: @ 815B6CA
+ lock
+ faceplayer
+ checkflag 1247
+ jumpeq EverGrandeCity_GlaciasRoom_EventScript_15B6F1
+ playmusic 450, 0
+ msgbox EverGrandeCity_GlaciasRoom_Text_190AF9, 4
+ trainerbattle 3, 263, 0, EverGrandeCity_GlaciasRoom_Text_190C01
+ jump EverGrandeCity_GlaciasRoom_EventScript_15B6FB
+ end
+
+EverGrandeCity_GlaciasRoom_EventScript_15B6F1:: @ 815B6F1
+ msgbox EverGrandeCity_GlaciasRoom_Text_190C8F, 4
+ release
+ end
+
+EverGrandeCity_GlaciasRoom_EventScript_15B6FB:: @ 815B6FB
+ setflag 1247
+ call EverGrandeCity_GlaciasRoom_EventScript_1A0693
+ msgbox EverGrandeCity_GlaciasRoom_Text_190C8F, 4
+ release
+ end
+
diff --git a/data/maps/scripts/EverGrandeCity_HallOfFame.s b/data/maps/scripts/EverGrandeCity_HallOfFame.s
new file mode 100644
index 000000000..e3d3b74e4
--- /dev/null
+++ b/data/maps/scripts/EverGrandeCity_HallOfFame.s
@@ -0,0 +1,85 @@
+EverGrandeCity_HallOfFame_MapScripts:: @ 815BB84
+ map_script 2, EverGrandeCity_HallOfFame_MapScript2_15BB9E
+ map_script 4, EverGrandeCity_HallOfFame_MapScript2_15BB8F
+ .byte 0
+
+EverGrandeCity_HallOfFame_MapScript2_15BB8F:: @ 815BB8F
+ map_script_2 0x4001, 0, EverGrandeCity_HallOfFame_EventScript_15BB99
+ .2byte 0
+
+EverGrandeCity_HallOfFame_EventScript_15BB99:: @ 815BB99
+ spriteface 255, 2
+ end
+
+EverGrandeCity_HallOfFame_MapScript2_15BB9E:: @ 815BB9E
+ map_script_2 0x4001, 0, EverGrandeCity_HallOfFame_EventScript_15BBA8
+ .2byte 0
+
+EverGrandeCity_HallOfFame_EventScript_15BBA8:: @ 815BBA8
+ lockall
+ move 1, EverGrandeCity_HallOfFame_Movement_15BC59
+ move 255, EverGrandeCity_HallOfFame_Movement_15BC59
+ waitmove 0
+ move 1, EverGrandeCity_HallOfFame_Movement_1A0843
+ move 255, EverGrandeCity_HallOfFame_Movement_1A083F
+ waitmove 0
+ msgbox EverGrandeCity_HallOfFame_Text_191841, 4
+ closebutton
+ move 1, EverGrandeCity_HallOfFame_Movement_15BC60
+ move 255, EverGrandeCity_HallOfFame_Movement_15BC60
+ waitmove 0
+ pause 20
+ move 1, EverGrandeCity_HallOfFame_Movement_1A0843
+ move 255, EverGrandeCity_HallOfFame_Movement_1A083F
+ waitmove 0
+ msgbox EverGrandeCity_HallOfFame_Text_1918D7, 4
+ closebutton
+ move 1, EverGrandeCity_HallOfFame_Movement_1A0841
+ move 255, EverGrandeCity_HallOfFame_Movement_1A0841
+ waitmove 0
+ pause 20
+ doanimation 62
+ checkanimation 62
+ pause 40
+ setvar 0x4001, 1
+ call EverGrandeCity_HallOfFame_EventScript_19FC13
+ checkgender
+ compare RESULT, 0
+ jumpeq EverGrandeCity_HallOfFame_EventScript_15BC41
+ compare RESULT, 1
+ jumpeq EverGrandeCity_HallOfFame_EventScript_15BC4D
+ end
+
+EverGrandeCity_HallOfFame_EventScript_15BC41:: @ 815BC41
+ sethealplace 1
+ fadescreendelay 1, 24
+ special 272
+ waitstate
+ releaseall
+ end
+
+EverGrandeCity_HallOfFame_EventScript_15BC4D:: @ 815BC4D
+ sethealplace 2
+ fadescreendelay 1, 24
+ special 272
+ waitstate
+ releaseall
+ end
+
+EverGrandeCity_HallOfFame_Movement_15BC59:: @ 815BC59
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_end
+
+EverGrandeCity_HallOfFame_Movement_15BC60:: @ 815BC60
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_end
+
diff --git a/data/maps/scripts/EverGrandeCity_PhoebesRoom.s b/data/maps/scripts/EverGrandeCity_PhoebesRoom.s
new file mode 100644
index 000000000..f97a892ce
--- /dev/null
+++ b/data/maps/scripts/EverGrandeCity_PhoebesRoom.s
@@ -0,0 +1,63 @@
+EverGrandeCity_PhoebesRoom_MapScripts:: @ 815B5D9
+ map_script 1, EverGrandeCity_PhoebesRoom_MapScript1_15B60F
+ map_script 4, EverGrandeCity_PhoebesRoom_MapScript2_15B5E9
+ map_script 2, EverGrandeCity_PhoebesRoom_MapScript2_15B5F8
+ .byte 0
+
+EverGrandeCity_PhoebesRoom_MapScript2_15B5E9:: @ 815B5E9
+ map_script_2 0x4001, 0, EverGrandeCity_PhoebesRoom_EventScript_15B5F3
+ .2byte 0
+
+EverGrandeCity_PhoebesRoom_EventScript_15B5F3:: @ 815B5F3
+ spriteface 255, 2
+ end
+
+EverGrandeCity_PhoebesRoom_MapScript2_15B5F8:: @ 815B5F8
+ map_script_2 0x409c, 1, EverGrandeCity_PhoebesRoom_EventScript_15B602
+ .2byte 0
+
+EverGrandeCity_PhoebesRoom_EventScript_15B602:: @ 815B602
+ lockall
+ call EverGrandeCity_PhoebesRoom_EventScript_1A0710
+ setvar 0x409c, 2
+ releaseall
+ end
+
+EverGrandeCity_PhoebesRoom_MapScript1_15B60F:: @ 815B60F
+ checkflag 1246
+ callif 1, EverGrandeCity_PhoebesRoom_EventScript_15B624
+ compare 0x409c, 2
+ callif 1, EverGrandeCity_PhoebesRoom_EventScript_15B62A
+ end
+
+EverGrandeCity_PhoebesRoom_EventScript_15B624:: @ 815B624
+ call EverGrandeCity_PhoebesRoom_EventScript_1A0757
+ return
+
+EverGrandeCity_PhoebesRoom_EventScript_15B62A:: @ 815B62A
+ call EverGrandeCity_PhoebesRoom_EventScript_1A07FA
+ return
+
+EverGrandeCity_PhoebesRoom_EventScript_15B630:: @ 815B630
+ lock
+ faceplayer
+ checkflag 1246
+ jumpeq EverGrandeCity_PhoebesRoom_EventScript_15B657
+ playmusic 450, 0
+ msgbox EverGrandeCity_PhoebesRoom_Text_1908F5, 4
+ trainerbattle 3, 262, 0, EverGrandeCity_PhoebesRoom_Text_190A0C
+ jump EverGrandeCity_PhoebesRoom_EventScript_15B661
+ end
+
+EverGrandeCity_PhoebesRoom_EventScript_15B657:: @ 815B657
+ msgbox EverGrandeCity_PhoebesRoom_Text_190A2A, 4
+ release
+ end
+
+EverGrandeCity_PhoebesRoom_EventScript_15B661:: @ 815B661
+ setflag 1246
+ call EverGrandeCity_PhoebesRoom_EventScript_1A0693
+ msgbox EverGrandeCity_PhoebesRoom_Text_190A2A, 4
+ release
+ end
+
diff --git a/data/maps/scripts/EverGrandeCity_PokemonCenter_1F.s b/data/maps/scripts/EverGrandeCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..85d9e2241
--- /dev/null
+++ b/data/maps/scripts/EverGrandeCity_PokemonCenter_1F.s
@@ -0,0 +1,25 @@
+EverGrandeCity_PokemonCenter_1F_MapScripts:: @ 815BC66
+ map_script 3, EverGrandeCity_PokemonCenter_1F_MapScript1_15BC6C
+ .byte 0
+
+EverGrandeCity_PokemonCenter_1F_MapScript1_15BC6C:: @ 815BC6C
+ sethealplace 11
+ end
+
+EverGrandeCity_PokemonCenter_1F_EventScript_15BC70:: @ 815BC70
+SootopolisCity_PokemonCenter_1F_EventScript_15BC70:: @ 815BC70
+ setvar 0x800b, 1
+ call SootopolisCity_PokemonCenter_1F_EventScript_19FD5B
+ waittext
+ waitbutton
+ release
+ end
+
+EverGrandeCity_PokemonCenter_1F_EventScript_15BC7E:: @ 815BC7E
+ msgbox EverGrandeCity_PokemonCenter_1F_Text_191967, 2
+ end
+
+EverGrandeCity_PokemonCenter_1F_EventScript_15BC87:: @ 815BC87
+ msgbox EverGrandeCity_PokemonCenter_1F_Text_1919EF, 2
+ end
+
diff --git a/data/maps/scripts/EverGrandeCity_PokemonCenter_2F.s b/data/maps/scripts/EverGrandeCity_PokemonCenter_2F.s
new file mode 100644
index 000000000..27da0d547
--- /dev/null
+++ b/data/maps/scripts/EverGrandeCity_PokemonCenter_2F.s
@@ -0,0 +1,18 @@
+EverGrandeCity_PokemonCenter_2F_MapScripts:: @ 815BC90
+ map_script 2, EverGrandeCity_PokemonCenter_2F_MapScript2_1A3D88
+ map_script 4, EverGrandeCity_PokemonCenter_2F_MapScript2_1A3D03
+ map_script 1, EverGrandeCity_PokemonCenter_2F_MapScript1_1A3D32
+ .byte 0
+
+EverGrandeCity_PokemonCenter_2F_EventScript_15BCA0:: @ 815BCA0
+ call EverGrandeCity_PokemonCenter_2F_EventScript_1A3EA6
+ end
+
+EverGrandeCity_PokemonCenter_2F_EventScript_15BCA6:: @ 815BCA6
+ call EverGrandeCity_PokemonCenter_2F_EventScript_1A40CC
+ end
+
+EverGrandeCity_PokemonCenter_2F_EventScript_15BCAC:: @ 815BCAC
+ call EverGrandeCity_PokemonCenter_2F_EventScript_1A41FB
+ end
+
diff --git a/data/maps/scripts/EverGrandeCity_PokemonLeague.s b/data/maps/scripts/EverGrandeCity_PokemonLeague.s
new file mode 100644
index 000000000..e5179022f
--- /dev/null
+++ b/data/maps/scripts/EverGrandeCity_PokemonLeague.s
@@ -0,0 +1,126 @@
+EverGrandeCity_PokemonLeague_MapScripts:: @ 815BA75
+ map_script 3, EverGrandeCity_PokemonLeague_MapScript1_15BA7B
+ .byte 0
+
+EverGrandeCity_PokemonLeague_MapScript1_15BA7B:: @ 815BA7B
+ sethealplace 20
+ setflag 2132
+ checkflag 263
+ callif 0, EverGrandeCity_PokemonLeague_EventScript_15BA8B
+ end
+
+EverGrandeCity_PokemonLeague_EventScript_15BA8B:: @ 815BA8B
+ movespriteperm 3, 9, 2
+ movespriteperm 4, 10, 2
+ return
+
+EverGrandeCity_PokemonLeague_EventScript_15BA9A:: @ 815BA9A
+ setvar 0x800b, 1
+ call EverGrandeCity_PokemonLeague_EventScript_19FD5B
+ waittext
+ waitbutton
+ release
+ end
+
+EverGrandeCity_PokemonLeague_EventScript_15BAA8:: @ 815BAA8
+ lock
+ faceplayer
+ message EverGrandeCity_PokemonLeague_Text_1A0BE4
+ waittext
+ pokemart EverGrandeCity_PokemonLeague_Pokemart_15BAC0
+ msgbox EverGrandeCity_PokemonLeague_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x15babf, 0x1
+
+EverGrandeCity_PokemonLeague_Pokemart_15BAC0:: @ 815BAC0
+ .2byte ITEM_ULTRA_BALL
+ .2byte ITEM_HYPER_POTION
+ .2byte ITEM_MAX_POTION
+ .2byte ITEM_FULL_RESTORE
+ .2byte ITEM_FULL_HEAL
+ .2byte ITEM_REVIVE
+ .2byte ITEM_MAX_REPEL
+ .2byte ITEM_NONE
+ release
+ end
+
+EverGrandeCity_PokemonLeague_EventScript_15BAD2:: @ 815BAD2
+ lockall
+ checkflag 263
+ jumpeq EverGrandeCity_PokemonLeague_EventScript_15BB57
+ getplayerxy 0x4000, 0x4001
+ compare 0x4000, 11
+ callif 4, EverGrandeCity_PokemonLeague_EventScript_15BB34
+ compare 0x4000, 8
+ callif 3, EverGrandeCity_PokemonLeague_EventScript_15BB3F
+ message EverGrandeCity_PokemonLeague_Text_1916FD
+ waittext
+ pause 75
+ checkflag 2060
+ jumpif 0, EverGrandeCity_PokemonLeague_EventScript_15BB4A
+ closebutton
+ move 3, EverGrandeCity_PokemonLeague_Movement_15BB7E
+ move 4, EverGrandeCity_PokemonLeague_Movement_15BB81
+ waitmove 0
+ pause 10
+ fanfare 369
+ message EverGrandeCity_PokemonLeague_Text_191804
+ waittext
+ waitfanfare
+ closebutton
+ moveoffscreen 3
+ moveoffscreen 4
+ setflag 263
+ releaseall
+ end
+
+EverGrandeCity_PokemonLeague_EventScript_15BB34:: @ 815BB34
+ move 255, EverGrandeCity_PokemonLeague_Movement_15BB76
+ waitmove 0
+ return
+
+EverGrandeCity_PokemonLeague_EventScript_15BB3F:: @ 815BB3F
+ move 255, EverGrandeCity_PokemonLeague_Movement_15BB7A
+ waitmove 0
+ return
+
+EverGrandeCity_PokemonLeague_EventScript_15BB4A:: @ 815BB4A
+ playsfx 32
+ msgbox EverGrandeCity_PokemonLeague_Text_19179C, 4
+ releaseall
+ end
+
+EverGrandeCity_PokemonLeague_EventScript_15BB57:: @ 815BB57
+ move LAST_TALKED, EverGrandeCity_PokemonLeague_Movement_1A0839
+ waitmove 0
+ msgbox EverGrandeCity_PokemonLeague_Text_191804, 4
+ closebutton
+ move LAST_TALKED, EverGrandeCity_PokemonLeague_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+EverGrandeCity_PokemonLeague_Movement_15BB76:: @ 815BB76
+ step_down
+ step_left
+ step_26
+ step_end
+
+EverGrandeCity_PokemonLeague_Movement_15BB7A:: @ 815BB7A
+ step_down
+ step_right
+ step_26
+ step_end
+
+EverGrandeCity_PokemonLeague_Movement_15BB7E:: @ 815BB7E
+ step_left
+ step_25
+ step_end
+
+EverGrandeCity_PokemonLeague_Movement_15BB81:: @ 815BB81
+ step_right
+ step_25
+ step_end
+
diff --git a/data/maps/scripts/EverGrandeCity_SidneysRoom.s b/data/maps/scripts/EverGrandeCity_SidneysRoom.s
new file mode 100644
index 000000000..02d8107d7
--- /dev/null
+++ b/data/maps/scripts/EverGrandeCity_SidneysRoom.s
@@ -0,0 +1,64 @@
+EverGrandeCity_SidneysRoom_MapScripts:: @ 815B53F
+ map_script 1, EverGrandeCity_SidneysRoom_MapScript1_15B54F
+ map_script 4, EverGrandeCity_SidneysRoom_MapScript2_15B570
+ map_script 2, EverGrandeCity_SidneysRoom_MapScript2_15B57F
+ .byte 0
+
+EverGrandeCity_SidneysRoom_MapScript1_15B54F:: @ 815B54F
+ checkflag 1245
+ callif 1, EverGrandeCity_SidneysRoom_EventScript_15B564
+ compare 0x409c, 1
+ callif 1, EverGrandeCity_SidneysRoom_EventScript_15B56A
+ end
+
+EverGrandeCity_SidneysRoom_EventScript_15B564:: @ 815B564
+ call EverGrandeCity_SidneysRoom_EventScript_1A0757
+ return
+
+EverGrandeCity_SidneysRoom_EventScript_15B56A:: @ 815B56A
+ call EverGrandeCity_SidneysRoom_EventScript_1A07FA
+ return
+
+EverGrandeCity_DrakesRoom_MapScript2_15B570:: @ 815B570
+EverGrandeCity_SidneysRoom_MapScript2_15B570:: @ 815B570
+ map_script_2 0x4001, 0, EverGrandeCity_SidneysRoom_EventScript_15B57A
+ .2byte 0
+
+EverGrandeCity_SidneysRoom_EventScript_15B57A:: @ 815B57A
+ spriteface 255, 2
+ end
+
+EverGrandeCity_SidneysRoom_MapScript2_15B57F:: @ 815B57F
+ map_script_2 0x409c, 0, EverGrandeCity_SidneysRoom_EventScript_15B589
+ .2byte 0
+
+EverGrandeCity_SidneysRoom_EventScript_15B589:: @ 815B589
+ lockall
+ call EverGrandeCity_SidneysRoom_EventScript_1A0710
+ setvar 0x409c, 1
+ releaseall
+ end
+
+EverGrandeCity_SidneysRoom_EventScript_15B596:: @ 815B596
+ lock
+ faceplayer
+ checkflag 1245
+ jumpeq EverGrandeCity_SidneysRoom_EventScript_15B5BD
+ playmusic 450, 0
+ msgbox EverGrandeCity_SidneysRoom_Text_190728, 4
+ trainerbattle 3, 261, 0, EverGrandeCity_SidneysRoom_Text_190823
+ jump EverGrandeCity_SidneysRoom_EventScript_15B5C7
+ end
+
+EverGrandeCity_SidneysRoom_EventScript_15B5BD:: @ 815B5BD
+ msgbox EverGrandeCity_SidneysRoom_Text_19086D, 4
+ release
+ end
+
+EverGrandeCity_SidneysRoom_EventScript_15B5C7:: @ 815B5C7
+ setflag 1245
+ call EverGrandeCity_SidneysRoom_EventScript_1A0693
+ msgbox EverGrandeCity_SidneysRoom_Text_19086D, 4
+ release
+ end
+
diff --git a/data/maps/scripts/FallarborTown.s b/data/maps/scripts/FallarborTown.s
new file mode 100644
index 000000000..a2e3865c3
--- /dev/null
+++ b/data/maps/scripts/FallarborTown.s
@@ -0,0 +1,57 @@
+FallarborTown_MapScripts:: @ 814E7E0
+ map_script 3, FallarborTown_MapScript1_14E7E6
+ .byte 0
+
+FallarborTown_MapScript1_14E7E6:: @ 814E7E6
+ setflag 2067
+ setvar 0x4086, 0
+ setflag 800
+ clearflag 270
+ end
+
+FallarborTown_EventScript_14E7F5:: @ 814E7F5
+ lock
+ faceplayer
+ checkflag 139
+ jumpeq FallarborTown_EventScript_14E80A
+ msgbox FallarborTown_Text_16C7FF, 4
+ release
+ end
+
+FallarborTown_EventScript_14E80A:: @ 814E80A
+ msgbox FallarborTown_Text_16C855, 4
+ release
+ end
+
+FallarborTown_EventScript_14E814:: @ 814E814
+ msgbox FallarborTown_Text_16C8D6, 2
+ end
+
+FallarborTown_EventScript_14E81D:: @ 814E81D
+ msgbox FallarborTown_Text_16C941, 2
+ end
+
+FallarborTown_EventScript_14E826:: @ 814E826
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_AZURILL, 0
+ msgbox FallarborTown_Text_16C92C, 4
+ waitpokecry
+ release
+ end
+
+FallarborTown_EventScript_14E839:: @ 814E839
+ msgbox FallarborTown_Text_16CA39, 3
+ end
+
+FallarborTown_EventScript_14E842:: @ 814E842
+MeteorFalls_1F_1R_EventScript_14E842:: @ 814E842
+MeteorFalls_1F_2R_EventScript_14E842:: @ 814E842
+ msgbox FallarborTown_Text_16CA83, 3
+ end
+
+FallarborTown_EventScript_14E84B:: @ 814E84B
+ msgbox FallarborTown_Text_16CAB9, 3
+ end
+
diff --git a/data/maps/scripts/FallarborTown_ContestHall.s b/data/maps/scripts/FallarborTown_ContestHall.s
new file mode 100644
index 000000000..74deba311
--- /dev/null
+++ b/data/maps/scripts/FallarborTown_ContestHall.s
@@ -0,0 +1,19 @@
+FallarborTown_ContestHall_MapScripts:: @ 8153ACE
+ .byte 0
+
+FallarborTown_ContestHall_EventScript_153ACF:: @ 8153ACF
+ msgbox FallarborTown_ContestHall_Text_177335, 2
+ end
+
+FallarborTown_ContestHall_EventScript_153AD8:: @ 8153AD8
+ msgbox FallarborTown_ContestHall_Text_1773C6, 2
+ end
+
+FallarborTown_ContestHall_EventScript_153AE1:: @ 8153AE1
+ msgbox FallarborTown_ContestHall_Text_177437, 2
+ end
+
+FallarborTown_ContestHall_EventScript_153AEA:: @ 8153AEA
+ msgbox FallarborTown_ContestHall_Text_1774B1, 3
+ end
+
diff --git a/data/maps/scripts/FallarborTown_ContestLobby.s b/data/maps/scripts/FallarborTown_ContestLobby.s
new file mode 100644
index 000000000..bad7e79d2
--- /dev/null
+++ b/data/maps/scripts/FallarborTown_ContestLobby.s
@@ -0,0 +1,122 @@
+FallarborTown_ContestLobby_MapScripts:: @ 81539C1
+ map_script 3, FallarborTown_ContestLobby_MapScript1_1539C7
+ .byte 0
+
+FallarborTown_ContestLobby_MapScript1_1539C7:: @ 81539C7
+ call FallarborTown_ContestLobby_EventScript_1AE188
+ end
+
+FallarborTown_ContestLobby_EventScript_1539CD:: @ 81539CD
+ setvar 0x800b, 6
+ setvar 0x8010, 1
+ call FallarborTown_ContestLobby_EventScript_1A4E92
+ call FallarborTown_ContestLobby_EventScript_1539F8
+ special 83
+ call FallarborTown_ContestLobby_EventScript_15FBDB
+ setvar 0x4088, 2
+ warp LinkContestRoom1, 255, 7, 5
+ waitstate
+ end
+
+FallarborTown_ContestLobby_EventScript_1539F8:: @ 81539F8
+ lockall
+ move 1, FallarborTown_ContestLobby_Movement_153A7C
+ waitmove 0
+ playsfx 71
+ setmaptile 4, 2, 545, 1
+ setmaptile 4, 3, 609, 1
+ special 142
+ move 1, FallarborTown_ContestLobby_Movement_153A7F
+ waitmove 0
+ playsfx 71
+ setmaptile 4, 2, 721, 1
+ setmaptile 4, 3, 729, 1
+ special 142
+ pause 20
+ move 1, FallarborTown_ContestLobby_Movement_153A8C
+ waitmove 0
+ move 255, FallarborTown_ContestLobby_Movement_153A7A
+ waitmove 0
+ msgbox FallarborTown_ContestLobby_Text_1A6832, 4
+ closebutton
+ move 1, FallarborTown_ContestLobby_Movement_153A83
+ move 255, FallarborTown_ContestLobby_Movement_153A70
+ waitmove 0
+ releaseall
+ return
+
+FallarborTown_ContestLobby_Movement_153A70:: @ 8153A70
+ step_left
+ step_left
+ step_left
+ step_left
+ step_up
+ step_up
+ step_up
+ step_13
+ step_54
+ step_end
+
+FallarborTown_ContestLobby_Movement_153A7A:: @ 8153A7A
+ step_27
+ step_end
+
+FallarborTown_ContestLobby_Movement_153A7C:: @ 8153A7C
+ step_left
+ step_25
+ step_end
+
+FallarborTown_ContestLobby_Movement_153A7F:: @ 8153A7F
+ step_down
+ step_down
+ step_26
+ step_end
+
+FallarborTown_ContestLobby_Movement_153A83:: @ 8153A83
+ step_left
+ step_left
+ step_left
+ step_up
+ step_up
+ step_up
+ step_13
+ step_54
+ step_end
+
+FallarborTown_ContestLobby_Movement_153A8C:: @ 8153A8C
+ step_28
+ step_end
+
+FallarborTown_ContestLobby_EventScript_153A8E:: @ 8153A8E
+ msgbox FallarborTown_ContestLobby_Text_177141, 2
+ end
+
+FallarborTown_ContestLobby_EventScript_153A97:: @ 8153A97
+ checkflag 270
+ jumpeq FallarborTown_ContestLobby_EventScript_153AA9
+ msgbox FallarborTown_ContestLobby_Text_177246, 2
+ end
+
+FallarborTown_ContestLobby_EventScript_153AA9:: @ 8153AA9
+ msgbox FallarborTown_ContestLobby_Text_1772D8, 2
+ end
+
+FallarborTown_ContestLobby_EventScript_153AB2:: @ 8153AB2
+ msgbox FallarborTown_ContestLobby_Text_1771F2, 2
+ end
+
+FallarborTown_ContestLobby_EventScript_153ABB:: @ 8153ABB
+ lockall
+ fadescreen 1
+ showcontestwinner 2
+ releaseall
+ end
+
+FallarborTown_ContestLobby_EventScript_153AC2:: @ 8153AC2
+ lockall
+ special 259
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
diff --git a/data/maps/scripts/FallarborTown_House1.s b/data/maps/scripts/FallarborTown_House1.s
new file mode 100644
index 000000000..379c17ef9
--- /dev/null
+++ b/data/maps/scripts/FallarborTown_House1.s
@@ -0,0 +1,78 @@
+FallarborTown_House1_MapScripts:: @ 8153BAE
+ map_script 3, FallarborTown_House1_MapScript1_153BB4
+ .byte 0
+
+FallarborTown_House1_MapScript1_153BB4:: @ 8153BB4
+ end
+
+FallarborTown_House1_EventScript_153BB5:: @ 8153BB5
+ lock
+ faceplayer
+ checkflag 229
+ jumpeq FallarborTown_House1_EventScript_153C54
+ checkitem ITEM_METEORITE, 1
+ compare RESULT, 1
+ jumpeq FallarborTown_House1_EventScript_153BDA
+ msgbox FallarborTown_House1_Text_177755, 4
+ release
+ end
+
+FallarborTown_House1_EventScript_153BDA:: @ 8153BDA
+ checkflag 2
+ callif 0, FallarborTown_House1_EventScript_153C2D
+ checkflag 2
+ callif 1, FallarborTown_House1_EventScript_153C3E
+ compare RESULT, 0
+ jumpeq FallarborTown_House1_EventScript_153C47
+ msgbox FallarborTown_House1_Text_1778C4, 4
+ giveitem ITEM_TM27
+ compare RESULT, 0
+ jumpeq FallarborTown_House1_EventScript_1A029B
+ setvar 0x8004, 280
+ call FallarborTown_House1_EventScript_1A067F
+ setflag 229
+ msgbox FallarborTown_House1_Text_177910, 4
+ release
+ end
+
+FallarborTown_House1_EventScript_153C2D:: @ 8153C2D
+ msgbox FallarborTown_House1_Text_177755, 4
+ msgbox FallarborTown_House1_Text_17780E, 5
+ return
+
+FallarborTown_House1_EventScript_153C3E:: @ 8153C3E
+ msgbox FallarborTown_House1_Text_1779B8, 5
+ return
+
+FallarborTown_House1_EventScript_153C47:: @ 8153C47
+ setflag 2
+ msgbox FallarborTown_House1_Text_17797D, 4
+ release
+ end
+
+FallarborTown_House1_EventScript_153C54:: @ 8153C54
+ msgbox FallarborTown_House1_Text_177910, 4
+ release
+ end
+
+FallarborTown_House1_EventScript_153C5E:: @ 8153C5E
+ lock
+ faceplayer
+ checkflag 229
+ jumpeq FallarborTown_House1_EventScript_153C86
+ checkflag 139
+ jumpeq FallarborTown_House1_EventScript_153C7C
+ msgbox FallarborTown_House1_Text_177A2B, 4
+ release
+ end
+
+FallarborTown_House1_EventScript_153C7C:: @ 8153C7C
+ msgbox FallarborTown_House1_Text_177A7C, 4
+ release
+ end
+
+FallarborTown_House1_EventScript_153C86:: @ 8153C86
+ msgbox FallarborTown_House1_Text_177ABB, 4
+ release
+ end
+
diff --git a/data/maps/scripts/FallarborTown_House2.s b/data/maps/scripts/FallarborTown_House2.s
new file mode 100644
index 000000000..e63074905
--- /dev/null
+++ b/data/maps/scripts/FallarborTown_House2.s
@@ -0,0 +1,64 @@
+FallarborTown_House2_MapScripts:: @ 8153C90
+ .byte 0
+
+FallarborTown_House2_EventScript_153C91:: @ 8153C91
+ lockall
+ move 1, FallarborTown_House2_Movement_1A0839
+ waitmove 0
+ checkflag 1
+ jumpeq FallarborTown_House2_EventScript_153CB6
+ msgbox FallarborTown_House2_Text_177AF4, 4
+ setflag 1
+ jump FallarborTown_House2_EventScript_153CB6
+ end
+
+FallarborTown_House2_EventScript_153CB6:: @ 8153CB6
+ checkitem ITEM_HEART_SCALE, 1
+ compare RESULT, 0
+ jumpeq FallarborTown_House2_EventScript_153D60
+ msgbox FallarborTown_House2_Text_177BDB, 5
+ switch RESULT
+ case 0, FallarborTown_House2_EventScript_153D60
+ jump FallarborTown_House2_EventScript_153CE4
+ end
+
+FallarborTown_House2_EventScript_153CE4:: @ 8153CE4
+ msgbox FallarborTown_House2_Text_177C3F, 4
+ special 219
+ waitstate
+ compare 0x8004, 255
+ jumpeq FallarborTown_House2_EventScript_153D60
+ special 328
+ compare RESULT, 1
+ jumpeq FallarborTown_House2_EventScript_153D52
+ compare 0x8005, 0
+ jumpeq FallarborTown_House2_EventScript_153D44
+ jump FallarborTown_House2_EventScript_153D1A
+ end
+
+FallarborTown_House2_EventScript_153D1A:: @ 8153D1A
+ msgbox FallarborTown_House2_Text_177C5D, 4
+ special 224
+ waitstate
+ compare 0x8004, 0
+ jumpeq FallarborTown_House2_EventScript_153CE4
+ msgbox FallarborTown_House2_Text_177CC3, 4
+ removeitem ITEM_HEART_SCALE, 1
+ jump FallarborTown_House2_EventScript_153D60
+ end
+
+FallarborTown_House2_EventScript_153D44:: @ 8153D44
+ msgbox FallarborTown_House2_Text_177C78, 4
+ jump FallarborTown_House2_EventScript_153CE4
+ end
+
+FallarborTown_House2_EventScript_153D52:: @ 8153D52
+ msgbox FallarborTown_House2_Text_177D33, 4
+ jump FallarborTown_House2_EventScript_153CE4
+ end
+
+FallarborTown_House2_EventScript_153D60:: @ 8153D60
+ msgbox FallarborTown_House2_Text_177CEF, 4
+ releaseall
+ end
+
diff --git a/data/maps/scripts/FallarborTown_Mart.s b/data/maps/scripts/FallarborTown_Mart.s
new file mode 100644
index 000000000..123128d22
--- /dev/null
+++ b/data/maps/scripts/FallarborTown_Mart.s
@@ -0,0 +1,50 @@
+FallarborTown_Mart_MapScripts:: @ 8153966
+ .byte 0
+
+FallarborTown_Mart_EventScript_153967:: @ 8153967
+ lock
+ faceplayer
+ message FallarborTown_Mart_Text_1A0BE4
+ waittext
+ pokemart FallarborTown_Mart_Pokemart_153980
+ msgbox FallarborTown_Mart_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x15397e, 0x2
+
+FallarborTown_Mart_Pokemart_153980:: @ 8153980
+ .2byte ITEM_GREAT_BALL
+ .2byte ITEM_SUPER_POTION
+ .2byte ITEM_ANTIDOTE
+ .2byte ITEM_PARALYZE_HEAL
+ .2byte ITEM_ESCAPE_ROPE
+ .2byte ITEM_SUPER_REPEL
+ .2byte ITEM_X_SPECIAL
+ .2byte ITEM_X_SPEED
+ .2byte ITEM_X_ATTACK
+ .2byte ITEM_X_DEFEND
+ .2byte ITEM_DIRE_HIT
+ .2byte ITEM_GUARD_SPEC
+ .2byte ITEM_NONE
+ release
+ end
+
+FallarborTown_Mart_EventScript_15399C:: @ 815399C
+ msgbox FallarborTown_Mart_Text_176FF0, 2
+ end
+
+FallarborTown_Mart_EventScript_1539A5:: @ 81539A5
+ msgbox FallarborTown_Mart_Text_1770E2, 2
+ end
+
+FallarborTown_Mart_EventScript_1539AE:: @ 81539AE
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_SKITTY, 0
+ msgbox FallarborTown_Mart_Text_1770D3, 4
+ waitpokecry
+ release
+ end
+
diff --git a/data/maps/scripts/FallarborTown_PokemonCenter_1F.s b/data/maps/scripts/FallarborTown_PokemonCenter_1F.s
new file mode 100644
index 000000000..04a08eeb3
--- /dev/null
+++ b/data/maps/scripts/FallarborTown_PokemonCenter_1F.s
@@ -0,0 +1,82 @@
+FallarborTown_PokemonCenter_1F_MapScripts:: @ 8153AF3
+ map_script 3, FallarborTown_PokemonCenter_1F_MapScript1_153AF9
+ .byte 0
+
+FallarborTown_PokemonCenter_1F_MapScript1_153AF9:: @ 8153AF9
+ sethealplace 17
+ call FallarborTown_PokemonCenter_1F_EventScript_19FD1B
+ end
+
+FallarborTown_PokemonCenter_1F_EventScript_153B02:: @ 8153B02
+ setvar 0x800b, 1
+ call FallarborTown_PokemonCenter_1F_EventScript_19FD5B
+ waittext
+ waitbutton
+ release
+ end
+
+FallarborTown_PokemonCenter_1F_EventScript_153B10:: @ 8153B10
+ msgbox FallarborTown_PokemonCenter_1F_Text_17768C, 2
+ end
+
+FallarborTown_PokemonCenter_1F_EventScript_153B19:: @ 8153B19
+ msgbox FallarborTown_PokemonCenter_1F_Text_1776F5, 2
+ end
+
+FallarborTown_PokemonCenter_1F_EventScript_153B22:: @ 8153B22
+ lock
+ faceplayer
+ msgbox FallarborTown_PokemonCenter_1F_Text_1774D4, 4
+ closebutton
+ switch FACING
+ case 2, FallarborTown_PokemonCenter_1F_EventScript_153B49
+ case 3, FallarborTown_PokemonCenter_1F_EventScript_153B59
+ end
+
+FallarborTown_PokemonCenter_1F_EventScript_153B49:: @ 8153B49
+ move 4, FallarborTown_PokemonCenter_1F_Movement_153B74
+ waitmove 0
+ jump FallarborTown_PokemonCenter_1F_EventScript_153B69
+ end
+
+FallarborTown_PokemonCenter_1F_EventScript_153B59:: @ 8153B59
+ move 4, FallarborTown_PokemonCenter_1F_Movement_153B81
+ waitmove 0
+ jump FallarborTown_PokemonCenter_1F_EventScript_153B69
+ end
+
+FallarborTown_PokemonCenter_1F_EventScript_153B69:: @ 8153B69
+ playsfx 18
+ disappear 4
+ clearflag 870
+ release
+ end
+
+FallarborTown_PokemonCenter_1F_Movement_153B74:: @ 8153B74
+ step_right
+ step_down
+ step_down
+ step_left
+ step_left
+ step_left
+ step_left
+ step_down
+ step_down
+ step_down
+ step_down
+ step_13
+ step_end
+
+FallarborTown_PokemonCenter_1F_Movement_153B81:: @ 8153B81
+ step_down
+ step_down
+ step_left
+ step_left
+ step_left
+ step_down
+ step_down
+ step_down
+ step_down
+ step_13
+ step_end
+
diff --git a/data/maps/scripts/FallarborTown_PokemonCenter_2F.s b/data/maps/scripts/FallarborTown_PokemonCenter_2F.s
new file mode 100644
index 000000000..bc3fb9acb
--- /dev/null
+++ b/data/maps/scripts/FallarborTown_PokemonCenter_2F.s
@@ -0,0 +1,18 @@
+FallarborTown_PokemonCenter_2F_MapScripts:: @ 8153B8C
+ map_script 2, FallarborTown_PokemonCenter_2F_MapScript2_1A3D88
+ map_script 4, FallarborTown_PokemonCenter_2F_MapScript2_1A3D03
+ map_script 1, FallarborTown_PokemonCenter_2F_MapScript1_1A3D32
+ .byte 0
+
+FallarborTown_PokemonCenter_2F_EventScript_153B9C:: @ 8153B9C
+ call FallarborTown_PokemonCenter_2F_EventScript_1A3EA6
+ end
+
+FallarborTown_PokemonCenter_2F_EventScript_153BA2:: @ 8153BA2
+ call FallarborTown_PokemonCenter_2F_EventScript_1A40CC
+ end
+
+FallarborTown_PokemonCenter_2F_EventScript_153BA8:: @ 8153BA8
+ call FallarborTown_PokemonCenter_2F_EventScript_1A41FB
+ end
+
diff --git a/data/maps/scripts/FieryPath.s b/data/maps/scripts/FieryPath.s
new file mode 100644
index 000000000..d89bd3476
--- /dev/null
+++ b/data/maps/scripts/FieryPath.s
@@ -0,0 +1,8 @@
+FieryPath_MapScripts:: @ 815D318
+ map_script 3, FieryPath_MapScript1_15D31E
+ .byte 0
+
+FieryPath_MapScript1_15D31E:: @ 815D31E
+ setflag 2122
+ end
+
diff --git a/data/maps/scripts/FortreeCity.s b/data/maps/scripts/FortreeCity.s
new file mode 100644
index 000000000..96248b265
--- /dev/null
+++ b/data/maps/scripts/FortreeCity.s
@@ -0,0 +1,92 @@
+FortreeCity_MapScripts:: @ 814C943
+ map_script 3, FortreeCity_MapScript1_14C94E
+ map_script 5, FortreeCity_MapScript1_14C952
+ .byte 0
+
+FortreeCity_MapScript1_14C94E:: @ 814C94E
+ setflag 2074
+ end
+
+FortreeCity_MapScript1_14C952:: @ 814C952
+ tileeffect 2
+ end
+
+FortreeCity_EventScript_14C955:: @ 814C955
+ msgbox FortreeCity_Text_167577, 2
+ end
+
+FortreeCity_EventScript_14C95E:: @ 814C95E
+ lock
+ faceplayer
+ checkflag 295
+ jumpeq FortreeCity_EventScript_14C973
+ msgbox FortreeCity_Text_1675C2, 4
+ release
+ end
+
+FortreeCity_EventScript_14C973:: @ 814C973
+ msgbox FortreeCity_Text_167642, 4
+ release
+ end
+
+FortreeCity_EventScript_14C97D:: @ 814C97D
+ msgbox FortreeCity_Text_16768A, 2
+ end
+
+FortreeCity_EventScript_14C986:: @ 814C986
+ msgbox FortreeCity_Text_16770E, 2
+ end
+
+FortreeCity_EventScript_14C98F:: @ 814C98F
+ msgbox FortreeCity_Text_1677BD, 2
+ end
+
+FortreeCity_EventScript_14C998:: @ 814C998
+ msgbox FortreeCity_Text_16782C, 2
+ end
+
+FortreeCity_EventScript_14C9A1:: @ 814C9A1
+ msgbox FortreeCity_Text_16792F, 3
+ end
+
+FortreeCity_EventScript_14C9AA:: @ 814C9AA
+ msgbox FortreeCity_Text_167969, 3
+ end
+
+FortreeCity_EventScript_14C9B3:: @ 814C9B3
+ lock
+ faceplayer
+ checkitem ITEM_DEVON_SCOPE, 1
+ compare RESULT, 1
+ jumpeq FortreeCity_EventScript_14C9CF
+ msgbox FortreeCity_Text_167868, 4
+ release
+ end
+
+FortreeCity_EventScript_14C9CF:: @ 814C9CF
+ msgbox FortreeCity_Text_16788B, 5
+ compare RESULT, 1
+ jumpeq FortreeCity_EventScript_14C9E4
+ release
+ end
+
+FortreeCity_EventScript_14C9E4:: @ 814C9E4
+ msgbox FortreeCity_Text_1678CB, 4
+ closebutton
+ move LAST_TALKED, FortreeCity_Movement_1A0662
+ waitmove 0
+ checksound
+ pokecry SPECIES_KECLEON, 2
+ pause 40
+ waitpokecry
+ move LAST_TALKED, FortreeCity_Movement_14CA13
+ waitmove 0
+ disappear LAST_TALKED
+ setflag 295
+ release
+ end
+
+FortreeCity_Movement_14CA13:: @ 814CA13
+ step_right
+ step_end
+
diff --git a/data/maps/scripts/FortreeCity_DecorationShop.s b/data/maps/scripts/FortreeCity_DecorationShop.s
new file mode 100644
index 000000000..f006755d4
--- /dev/null
+++ b/data/maps/scripts/FortreeCity_DecorationShop.s
@@ -0,0 +1,61 @@
+FortreeCity_DecorationShop_MapScripts:: @ 8158257
+ .byte 0
+
+FortreeCity_DecorationShop_EventScript_158258:: @ 8158258
+ msgbox FortreeCity_DecorationShop_Text_186A61, 2
+ end
+
+FortreeCity_DecorationShop_EventScript_158261:: @ 8158261
+ msgbox FortreeCity_DecorationShop_Text_186AD6, 2
+ end
+
+FortreeCity_DecorationShop_EventScript_15826A:: @ 815826A
+ lock
+ faceplayer
+ message FortreeCity_DecorationShop_Text_1A0BE4
+ waittext
+ pokemartdecor FortreeCity_DecorationShop_PokemartDecor_158284
+ msgbox FortreeCity_DecorationShop_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x158281, 0x3
+
+FortreeCity_DecorationShop_PokemartDecor_158284:: @ 8158284
+ .2byte 1
+ .2byte 2
+ .2byte 3
+ .2byte 4
+ .2byte 5
+ .2byte 7
+ .2byte 8
+ .2byte 9
+ .2byte 0
+ release
+ end
+
+FortreeCity_DecorationShop_EventScript_158298:: @ 8158298
+ lock
+ faceplayer
+ message FortreeCity_DecorationShop_Text_1A0BE4
+ waittext
+ pokemartdecor FortreeCity_DecorationShop_PokemartDecor_1582B0
+ msgbox FortreeCity_DecorationShop_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x1582af, 0x1
+
+FortreeCity_DecorationShop_PokemartDecor_1582B0:: @ 81582B0
+ .2byte 10
+ .2byte 11
+ .2byte 12
+ .2byte 15
+ .2byte 14
+ .2byte 16
+ .2byte 17
+ .2byte 18
+ .2byte 0
+ release
+ end
+
diff --git a/data/maps/scripts/FortreeCity_Gym.s b/data/maps/scripts/FortreeCity_Gym.s
new file mode 100644
index 000000000..a9d641f57
--- /dev/null
+++ b/data/maps/scripts/FortreeCity_Gym.s
@@ -0,0 +1,104 @@
+FortreeCity_Gym_MapScripts:: @ 8157ED3
+ map_script 3, FortreeCity_Gym_MapScript1_157EDE
+ map_script 4, FortreeCity_Gym_MapScript2_157EE2
+ .byte 0
+
+FortreeCity_Gym_MapScript1_157EDE:: @ 8157EDE
+ special 201
+ end
+
+FortreeCity_Gym_MapScript2_157EE2:: @ 8157EE2
+ map_script_2 0x4000, 16384, FortreeCity_Gym_EventScript_157EEC
+ .2byte 0
+
+FortreeCity_Gym_EventScript_157EEC:: @ 8157EEC
+ special 202
+ end
+
+FortreeCity_Gym_EventScript_157EF0:: @ 8157EF0
+ trainerbattle 1, 270, 0, FortreeCity_Gym_Text_185CCB, FortreeCity_Gym_Text_185DBA, FortreeCity_Gym_EventScript_157F15
+ checkflag 170
+ jumpif 0, FortreeCity_Gym_EventScript_157F3E
+ msgbox FortreeCity_Gym_Text_185F98, 4
+ release
+ end
+
+FortreeCity_Gym_EventScript_157F15:: @ 8157F15
+ message FortreeCity_Gym_Text_185E48
+ waittext
+ call FortreeCity_Gym_EventScript_1A02C5
+ msgbox FortreeCity_Gym_Text_185E73, 4
+ setflag 1225
+ setflag 2060
+ setvar 0x8008, 6
+ call FortreeCity_Gym_EventScript_1A01C0
+ jump FortreeCity_Gym_EventScript_157F3E
+ end
+
+FortreeCity_Gym_EventScript_157F3E:: @ 8157F3E
+ giveitem ITEM_TM40
+ compare RESULT, 0
+ jumpeq FortreeCity_Gym_EventScript_1A029B
+ msgbox FortreeCity_Gym_Text_185F4A, 4
+ setflag 170
+ release
+ end
+
+FortreeCity_Gym_EventScript_157F62:: @ 8157F62
+ trainerbattle 0, 401, 0, FortreeCity_Gym_Text_1859B9, FortreeCity_Gym_Text_1859EA
+ msgbox FortreeCity_Gym_Text_185A02, 6
+ end
+
+FortreeCity_Gym_EventScript_157F79:: @ 8157F79
+ trainerbattle 0, 404, 0, FortreeCity_Gym_Text_185A7F, FortreeCity_Gym_Text_185AEC
+ msgbox FortreeCity_Gym_Text_185B18, 6
+ end
+
+FortreeCity_Gym_EventScript_157F90:: @ 8157F90
+ trainerbattle 0, 654, 0, FortreeCity_Gym_Text_185B8D, FortreeCity_Gym_Text_185BEB
+ msgbox FortreeCity_Gym_Text_185C00, 6
+ end
+
+FortreeCity_Gym_EventScript_157FA7:: @ 8157FA7
+ trainerbattle 0, 655, 0, FortreeCity_Gym_Text_185C45, FortreeCity_Gym_Text_185C7C
+ msgbox FortreeCity_Gym_Text_185C8C, 6
+ end
+
+FortreeCity_Gym_EventScript_157FBE:: @ 8157FBE
+ lock
+ faceplayer
+ checkflag 1225
+ jumpeq FortreeCity_Gym_EventScript_157FD3
+ msgbox FortreeCity_Gym_Text_18589C, 4
+ release
+ end
+
+FortreeCity_Gym_EventScript_157FD3:: @ 8157FD3
+ msgbox FortreeCity_Gym_Text_185994, 4
+ release
+ end
+
+FortreeCity_Gym_EventScript_157FDD:: @ 8157FDD
+ lockall
+ checkflag 2060
+ jumpeq FortreeCity_Gym_EventScript_157FFD
+ jump FortreeCity_Gym_EventScript_158007
+ end
+
+FortreeCity_Gym_EventScript_157FED:: @ 8157FED
+ lockall
+ checkflag 2060
+ jumpeq FortreeCity_Gym_EventScript_157FFD
+ jump FortreeCity_Gym_EventScript_158007
+ end
+
+FortreeCity_Gym_EventScript_157FFD:: @ 8157FFD
+ msgbox FortreeCity_Gym_Text_185FEE, 4
+ releaseall
+ end
+
+FortreeCity_Gym_EventScript_158007:: @ 8158007
+ msgbox FortreeCity_Gym_Text_185FD5, 4
+ releaseall
+ end
+
diff --git a/data/maps/scripts/FortreeCity_House1.s b/data/maps/scripts/FortreeCity_House1.s
new file mode 100644
index 000000000..827e6cc34
--- /dev/null
+++ b/data/maps/scripts/FortreeCity_House1.s
@@ -0,0 +1,66 @@
+FortreeCity_House1_MapScripts:: @ 8157E12
+ .byte 0
+
+FortreeCity_House1_EventScript_157E13:: @ 8157E13
+ lock
+ faceplayer
+ checkflag 155
+ jumpeq FortreeCity_House1_EventScript_157EAD
+ setvar 0x8008, 1
+ copyvar 0x8004, 0x8008
+ specialval RESULT, 252
+ copyvar 0x8009, RESULT
+ msgbox FortreeCity_House1_Text_18568C, 5
+ compare RESULT, 0
+ jumpeq FortreeCity_House1_EventScript_157E95
+ special 159
+ waitstate
+ copyvar 0x800a, 0x8004
+ compare 0x8004, 255
+ jumpeq FortreeCity_House1_EventScript_157E95
+ copyvar 0x8005, 0x800a
+ specialval RESULT, 255
+ copyvar 0x800b, RESULT
+ comparevars RESULT, 0x8009
+ jumpif 5, FortreeCity_House1_EventScript_157E9F
+ copyvar 0x8004, 0x8008
+ copyvar 0x8005, 0x800a
+ special 253
+ special 254
+ waitstate
+ bufferpoke 0, 0x8009
+ msgbox FortreeCity_House1_Text_1856F7, 4
+ setflag 155
+ release
+ end
+
+FortreeCity_House1_EventScript_157E95:: @ 8157E95
+ msgbox FortreeCity_House1_Text_18577F, 4
+ release
+ end
+
+FortreeCity_House1_EventScript_157E9F:: @ 8157E9F
+ bufferpoke 0, 0x8009
+ msgbox FortreeCity_House1_Text_185737, 4
+ release
+ end
+
+FortreeCity_House1_EventScript_157EAD:: @ 8157EAD
+ msgbox FortreeCity_House1_Text_1857C7, 4
+ release
+ end
+
+FortreeCity_House1_EventScript_157EB7:: @ 8157EB7
+ msgbox FortreeCity_House1_Text_18582A, 2
+ end
+
+FortreeCity_House1_EventScript_157EC0:: @ 8157EC0
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_ZIGZAGOON, 0
+ msgbox FortreeCity_House1_Text_185888, 4
+ waitpokecry
+ release
+ end
+
diff --git a/data/maps/scripts/FortreeCity_House2.s b/data/maps/scripts/FortreeCity_House2.s
new file mode 100644
index 000000000..adf190f5c
--- /dev/null
+++ b/data/maps/scripts/FortreeCity_House2.s
@@ -0,0 +1,46 @@
+FortreeCity_House2_MapScripts:: @ 81580B3
+ .byte 0
+
+FortreeCity_House2_EventScript_1580B4:: @ 81580B4
+ lock
+ faceplayer
+ checkflag 264
+ jumpeq FortreeCity_House2_EventScript_158157
+ checkflag 118
+ callif 0, FortreeCity_House2_EventScript_15814B
+ msgbox FortreeCity_House2_Text_186360, 4
+ multichoice 21, 8, 54, 1
+ switch RESULT
+ case 1, FortreeCity_House2_EventScript_158161
+ msgbox FortreeCity_House2_Text_1863F6, 4
+ multichoice 21, 8, 54, 1
+ switch RESULT
+ case 1, FortreeCity_House2_EventScript_158161
+ msgbox FortreeCity_House2_Text_186455, 4
+ multichoice 21, 8, 54, 1
+ switch RESULT
+ case 0, FortreeCity_House2_EventScript_158161
+ msgbox FortreeCity_House2_Text_1864C6, 4
+ giveitem ITEM_TM10
+ compare RESULT, 0
+ jumpeq FortreeCity_House2_EventScript_1A029B
+ setflag 264
+ msgbox FortreeCity_House2_Text_18652F, 4
+ release
+ end
+
+FortreeCity_House2_EventScript_15814B:: @ 815814B
+ msgbox FortreeCity_House2_Text_186306, 4
+ setflag 118
+ return
+
+FortreeCity_House2_EventScript_158157:: @ 8158157
+ msgbox FortreeCity_House2_Text_18652F, 4
+ release
+ end
+
+FortreeCity_House2_EventScript_158161:: @ 8158161
+ msgbox FortreeCity_House2_Text_186565, 4
+ release
+ end
+
diff --git a/data/maps/scripts/FortreeCity_House3.s b/data/maps/scripts/FortreeCity_House3.s
new file mode 100644
index 000000000..99ff44637
--- /dev/null
+++ b/data/maps/scripts/FortreeCity_House3.s
@@ -0,0 +1,11 @@
+FortreeCity_House3_MapScripts:: @ 815816B
+ .byte 0
+
+FortreeCity_House3_EventScript_15816C:: @ 815816C
+ msgbox FortreeCity_House3_Text_186624, 2
+ end
+
+FortreeCity_House3_EventScript_158175:: @ 8158175
+ msgbox FortreeCity_House3_Text_186745, 2
+ end
+
diff --git a/data/maps/scripts/FortreeCity_House4.s b/data/maps/scripts/FortreeCity_House4.s
new file mode 100644
index 000000000..f48ef1a6d
--- /dev/null
+++ b/data/maps/scripts/FortreeCity_House4.s
@@ -0,0 +1,68 @@
+FortreeCity_House4_MapScripts:: @ 815817E
+ .byte 0
+
+FortreeCity_House4_EventScript_15817F:: @ 815817F
+ msgbox FortreeCity_House4_Text_1867AF, 2
+ end
+
+FortreeCity_House4_EventScript_158188:: @ 8158188
+ lockall
+ checkflag 223
+ jumpeq FortreeCity_House4_EventScript_158204
+ checkflag 224
+ jumpeq FortreeCity_House4_EventScript_1581D6
+ checkflag 222
+ jumpeq FortreeCity_House4_EventScript_1581C2
+ msgbox FortreeCity_House4_Text_186835, 4
+ closebutton
+ setflag 222
+ clearflag 934
+ move 3, FortreeCity_House4_Movement_158218
+ waitmove 0
+ disappear 3
+ releaseall
+ end
+
+FortreeCity_House4_EventScript_1581C2:: @ 81581C2
+ move LAST_TALKED, FortreeCity_House4_Movement_1A0839
+ waitmove 0
+ msgbox FortreeCity_House4_Text_18684E, 4
+ releaseall
+ end
+
+FortreeCity_House4_EventScript_1581D6:: @ 81581D6
+ move LAST_TALKED, FortreeCity_House4_Movement_1A0839
+ waitmove 0
+ msgbox FortreeCity_House4_Text_186881, 4
+ giveitem ITEM_MENTAL_HERB
+ compare RESULT, 0
+ jumpeq FortreeCity_House4_EventScript_1A029B
+ setflag 223
+ releaseall
+ end
+
+FortreeCity_House4_EventScript_158204:: @ 8158204
+ move LAST_TALKED, FortreeCity_House4_Movement_1A0839
+ waitmove 0
+ msgbox FortreeCity_House4_Text_186924, 4
+ releaseall
+ end
+
+FortreeCity_House4_Movement_158218:: @ 8158218
+ step_15
+ step_15
+ step_18
+ step_25
+ step_13
+ step_end
+
+FortreeCity_House4_EventScript_15821E:: @ 815821E
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_WINGULL, 0
+ msgbox FortreeCity_House4_Text_18695C, 4
+ waitpokecry
+ release
+ end
+
diff --git a/data/maps/scripts/FortreeCity_House5.s b/data/maps/scripts/FortreeCity_House5.s
new file mode 100644
index 000000000..3c92a619c
--- /dev/null
+++ b/data/maps/scripts/FortreeCity_House5.s
@@ -0,0 +1,21 @@
+FortreeCity_House5_MapScripts:: @ 8158231
+ .byte 0
+
+FortreeCity_House5_EventScript_158232:: @ 8158232
+ msgbox FortreeCity_House5_Text_18696D, 2
+ end
+
+FortreeCity_House5_EventScript_15823B:: @ 815823B
+ msgbox FortreeCity_House5_Text_1869D6, 2
+ end
+
+FortreeCity_House5_EventScript_158244:: @ 8158244
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_ZIGZAGOON, 0
+ msgbox FortreeCity_House5_Text_186A4F, 4
+ waitpokecry
+ release
+ end
+
diff --git a/data/maps/scripts/FortreeCity_Mart.s b/data/maps/scripts/FortreeCity_Mart.s
new file mode 100644
index 000000000..6c9cf6298
--- /dev/null
+++ b/data/maps/scripts/FortreeCity_Mart.s
@@ -0,0 +1,42 @@
+FortreeCity_Mart_MapScripts:: @ 8158066
+ .byte 0
+
+FortreeCity_Mart_EventScript_158067:: @ 8158067
+ lock
+ faceplayer
+ message FortreeCity_Mart_Text_1A0BE4
+ waittext
+ pokemart FortreeCity_Mart_Pokemart_158080
+ msgbox FortreeCity_Mart_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x15807e, 0x2
+
+FortreeCity_Mart_Pokemart_158080:: @ 8158080
+ .2byte ITEM_GREAT_BALL
+ .2byte ITEM_ULTRA_BALL
+ .2byte ITEM_SUPER_POTION
+ .2byte ITEM_HYPER_POTION
+ .2byte ITEM_ANTIDOTE
+ .2byte ITEM_PARALYZE_HEAL
+ .2byte ITEM_AWAKENING
+ .2byte ITEM_REVIVE
+ .2byte ITEM_SUPER_REPEL
+ .2byte ITEM_WOOD_MAIL
+ .2byte ITEM_NONE
+ release
+ end
+
+FortreeCity_Mart_EventScript_158098:: @ 8158098
+ msgbox FortreeCity_Mart_Text_1861EF, 2
+ end
+
+FortreeCity_Mart_EventScript_1580A1:: @ 81580A1
+ msgbox FortreeCity_Mart_Text_186251, 2
+ end
+
+FortreeCity_Mart_EventScript_1580AA:: @ 81580AA
+ msgbox FortreeCity_Mart_Text_1862CA, 2
+ end
+
diff --git a/data/maps/scripts/FortreeCity_PokemonCenter_1F.s b/data/maps/scripts/FortreeCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..d8a8945c9
--- /dev/null
+++ b/data/maps/scripts/FortreeCity_PokemonCenter_1F.s
@@ -0,0 +1,28 @@
+FortreeCity_PokemonCenter_1F_MapScripts:: @ 8158011
+ map_script 3, FortreeCity_PokemonCenter_1F_MapScript1_158017
+ .byte 0
+
+FortreeCity_PokemonCenter_1F_MapScript1_158017:: @ 8158017
+ sethealplace 7
+ end
+
+FortreeCity_PokemonCenter_1F_EventScript_15801B:: @ 815801B
+ setvar 0x800b, 1
+ call FortreeCity_PokemonCenter_1F_EventScript_19FD5B
+ waittext
+ waitbutton
+ release
+ end
+
+FortreeCity_PokemonCenter_1F_EventScript_158029:: @ 8158029
+ msgbox FortreeCity_PokemonCenter_1F_Text_186027, 2
+ end
+
+FortreeCity_PokemonCenter_1F_EventScript_158032:: @ 8158032
+ msgbox FortreeCity_PokemonCenter_1F_Text_186086, 2
+ end
+
+FortreeCity_PokemonCenter_1F_EventScript_15803B:: @ 815803B
+ msgbox FortreeCity_PokemonCenter_1F_Text_186138, 2
+ end
+
diff --git a/data/maps/scripts/FortreeCity_PokemonCenter_2F.s b/data/maps/scripts/FortreeCity_PokemonCenter_2F.s
new file mode 100644
index 000000000..0b63f5670
--- /dev/null
+++ b/data/maps/scripts/FortreeCity_PokemonCenter_2F.s
@@ -0,0 +1,18 @@
+FortreeCity_PokemonCenter_2F_MapScripts:: @ 8158044
+ map_script 2, FortreeCity_PokemonCenter_2F_MapScript2_1A3D88
+ map_script 4, FortreeCity_PokemonCenter_2F_MapScript2_1A3D03
+ map_script 1, FortreeCity_PokemonCenter_2F_MapScript1_1A3D32
+ .byte 0
+
+FortreeCity_PokemonCenter_2F_EventScript_158054:: @ 8158054
+ call FortreeCity_PokemonCenter_2F_EventScript_1A3EA6
+ end
+
+FortreeCity_PokemonCenter_2F_EventScript_15805A:: @ 815805A
+ call FortreeCity_PokemonCenter_2F_EventScript_1A40CC
+ end
+
+FortreeCity_PokemonCenter_2F_EventScript_158060:: @ 8158060
+ call FortreeCity_PokemonCenter_2F_EventScript_1A41FB
+ end
+
diff --git a/data/maps/scripts/GraniteCave_1F.s b/data/maps/scripts/GraniteCave_1F.s
new file mode 100644
index 000000000..5e05f8602
--- /dev/null
+++ b/data/maps/scripts/GraniteCave_1F.s
@@ -0,0 +1,20 @@
+GraniteCave_1F_MapScripts:: @ 815CBA6
+ .byte 0
+
+GraniteCave_1F_EventScript_15CBA7:: @ 815CBA7
+ lock
+ faceplayer
+ checkflag 109
+ jumpeq GraniteCave_1F_EventScript_15CBD3
+ msgbox GraniteCave_1F_Text_194917, 4
+ giveitem ITEM_HM05
+ setflag 109
+ msgbox GraniteCave_1F_Text_194A3E, 4
+ release
+ end
+
+GraniteCave_1F_EventScript_15CBD3:: @ 815CBD3
+ msgbox GraniteCave_1F_Text_194A3E, 4
+ release
+ end
+
diff --git a/data/maps/scripts/GraniteCave_B1F.s b/data/maps/scripts/GraniteCave_B1F.s
new file mode 100644
index 000000000..538c58118
--- /dev/null
+++ b/data/maps/scripts/GraniteCave_B1F.s
@@ -0,0 +1,11 @@
+GraniteCave_B1F_MapScripts:: @ 815CBDD
+ map_script 2, GraniteCave_B1F_MapScript2_1C6BB5
+ map_script 3, GraniteCave_B1F_MapScript1_1C6BBF
+ map_script 5, GraniteCave_B1F_MapScript1_15CBED
+ .byte 0
+
+GraniteCave_B1F_MapScript1_15CBED:: @ 815CBED
+ tileeffect 7
+ warp5 GraniteCave_B2F, 255, 0, 0
+ end
+
diff --git a/data/maps/scripts/GraniteCave_B2F.s b/data/maps/scripts/GraniteCave_B2F.s
new file mode 100644
index 000000000..d28614032
--- /dev/null
+++ b/data/maps/scripts/GraniteCave_B2F.s
@@ -0,0 +1,3 @@
+GraniteCave_B2F_MapScripts:: @ 815CBF8
+ .byte 0
+
diff --git a/data/maps/scripts/GraniteCave_StevensRoom.s b/data/maps/scripts/GraniteCave_StevensRoom.s
new file mode 100644
index 000000000..55dccda5f
--- /dev/null
+++ b/data/maps/scripts/GraniteCave_StevensRoom.s
@@ -0,0 +1,63 @@
+GraniteCave_StevensRoom_MapScripts:: @ 815CBF9
+ .byte 0
+
+GraniteCave_StevensRoom_EventScript_15CBFA:: @ 815CBFA
+ lock
+ faceplayer
+ msgbox GraniteCave_StevensRoom_Text_194AE5, 4
+ setvar 0x8004, 274
+ call GraniteCave_StevensRoom_EventScript_1A067F
+ setflag 189
+ msgbox GraniteCave_StevensRoom_Text_194BDD, 4
+ giveitem ITEM_TM47
+ compare RESULT, 0
+ callif 1, GraniteCave_StevensRoom_EventScript_15CC83
+ msgbox GraniteCave_StevensRoom_Text_194C8D, 4
+ closebutton
+ compare FACING, 2
+ callif 1, GraniteCave_StevensRoom_EventScript_15CC6D
+ compare FACING, 1
+ callif 1, GraniteCave_StevensRoom_EventScript_15CC78
+ compare FACING, 3
+ callif 1, GraniteCave_StevensRoom_EventScript_15CC6D
+ compare FACING, 4
+ callif 1, GraniteCave_StevensRoom_EventScript_15CC6D
+ playsfx 9
+ disappear 1
+ release
+ end
+
+GraniteCave_StevensRoom_EventScript_15CC6D:: @ 815CC6D
+ move 1, GraniteCave_StevensRoom_Movement_15CC8C
+ waitmove 0
+ return
+
+GraniteCave_StevensRoom_EventScript_15CC78:: @ 815CC78
+ move 1, GraniteCave_StevensRoom_Movement_15CC93
+ waitmove 0
+ return
+
+GraniteCave_StevensRoom_EventScript_15CC83:: @ 815CC83
+ msgbox GraniteCave_StevensRoom_Text_194D43, 4
+ return
+
+GraniteCave_StevensRoom_Movement_15CC8C:: @ 815CC8C
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_13
+ step_end
+
+GraniteCave_StevensRoom_Movement_15CC93:: @ 815CC93
+ step_left
+ step_up
+ step_up
+ step_up
+ step_right
+ step_up
+ step_up
+ step_13
+ step_end
+
diff --git a/data/maps/scripts/InsideOfTruck.s b/data/maps/scripts/InsideOfTruck.s
new file mode 100644
index 000000000..e411adde2
--- /dev/null
+++ b/data/maps/scripts/InsideOfTruck.s
@@ -0,0 +1,53 @@
+InsideOfTruck_MapScripts:: @ 815FBFF
+ map_script 1, InsideOfTruck_MapScript1_15FC0A
+ map_script 5, InsideOfTruck_MapScript1_15FC26
+ .byte 0
+
+InsideOfTruck_MapScript1_15FC0A:: @ 815FC0A
+ setmaptile 4, 1, 520, 0
+ setmaptile 4, 2, 528, 0
+ setmaptile 4, 3, 536, 0
+ end
+
+InsideOfTruck_MapScript1_15FC26:: @ 815FC26
+ tileeffect 5
+ end
+
+InsideOfTruck_EventScript_15FC29:: @ 815FC29
+ lockall
+ setflag 0x4000
+ checkgender
+ compare RESULT, 0
+ jumpeq InsideOfTruck_EventScript_15FC45
+ compare RESULT, 1
+ jumpeq InsideOfTruck_EventScript_15FC68
+ end
+
+InsideOfTruck_EventScript_15FC45:: @ 815FC45
+ sethealplace 1
+ setvar 0x4092, 1
+ setflag 759
+ setflag 762
+ setflag 784
+ setflag 760
+ setvar 0x408c, 1
+ warpplace LittlerootTown, 255, 3, 10
+ releaseall
+ end
+
+InsideOfTruck_EventScript_15FC68:: @ 815FC68
+ sethealplace 2
+ setvar 0x4092, 2
+ setflag 758
+ setflag 761
+ setflag 785
+ setflag 722
+ setvar 0x4082, 1
+ warpplace LittlerootTown, 255, 12, 10
+ releaseall
+ end
+
+InsideOfTruck_EventScript_15FC8B:: @ 815FC8B
+ msgbox InsideOfTruck_Text_198FAD, 3
+ end
+
diff --git a/data/maps/scripts/IslandCave.s b/data/maps/scripts/IslandCave.s
new file mode 100644
index 000000000..e75f99629
--- /dev/null
+++ b/data/maps/scripts/IslandCave.s
@@ -0,0 +1,33 @@
+IslandCave_MapScripts:: @ 815EEB6
+ map_script 5, IslandCave_MapScript1_15EEC6
+ map_script 1, IslandCave_MapScript1_15EED4
+ map_script 3, IslandCave_MapScript1_15EF15
+ .byte 0
+
+IslandCave_MapScript1_15EEC6:: @ 815EEC6
+ checkflag 2145
+ callif 1, IslandCave_EventScript_15EED0
+ end
+
+IslandCave_EventScript_15EED0:: @ 815EED0
+ disappear LAST_TALKED
+ return
+
+IslandCave_MapScript1_15EED4:: @ 815EED4
+ checkflag 2129
+ callif 0, IslandCave_EventScript_15EEDE
+ end
+
+IslandCave_EventScript_15EEDE:: @ 815EEDE
+ setmaptile 7, 19, 553, 1
+ setmaptile 8, 19, 553, 1
+ setmaptile 9, 19, 553, 1
+ setmaptile 7, 20, 565, 1
+ setmaptile 8, 20, 565, 1
+ setmaptile 9, 20, 565, 1
+ return
+
+IslandCave_MapScript1_15EF15:: @ 815EF15
+ setflag 2133
+ end
+
diff --git a/data/maps/scripts/JaggedPass.s b/data/maps/scripts/JaggedPass.s
new file mode 100644
index 000000000..a4aa0964b
--- /dev/null
+++ b/data/maps/scripts/JaggedPass.s
@@ -0,0 +1,50 @@
+JaggedPass_MapScripts:: @ 815D266
+ map_script 5, JaggedPass_MapScript1_15D271
+ map_script 3, JaggedPass_MapScript1_15D274
+ .byte 0
+
+JaggedPass_MapScript1_15D271:: @ 815D271
+ tileeffect 1
+ end
+
+JaggedPass_MapScript1_15D274:: @ 815D274
+ compare 0x40bd, 1
+ callif 1, JaggedPass_EventScript_15D280
+ end
+
+JaggedPass_EventScript_15D280:: @ 815D280
+ setweather 7
+ doweather
+ return
+
+JaggedPass_EventScript_15D285:: @ 815D285
+ trainerbattle 0, 632, 0, JaggedPass_Text_195DAC, JaggedPass_Text_195E27
+ msgbox JaggedPass_Text_195E3E, 6
+ end
+
+JaggedPass_EventScript_15D29C:: @ 815D29C
+ trainerbattle 0, 474, 0, JaggedPass_Text_195E9E, JaggedPass_Text_195EDF
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq JaggedPass_EventScript_15D2C3
+ msgbox JaggedPass_Text_195F04, 6
+ end
+
+JaggedPass_EventScript_15D2C3:: @ 815D2C3
+ trainerbattle 5, 474, 0, JaggedPass_Text_195F58, JaggedPass_Text_195F8C
+ msgbox JaggedPass_Text_195FB9, 6
+ end
+
+JaggedPass_EventScript_15D2DA:: @ 815D2DA
+ trainerbattle 0, 216, 0, JaggedPass_Text_195FF2, JaggedPass_Text_196032
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq JaggedPass_EventScript_15D301
+ msgbox JaggedPass_Text_196077, 6
+ end
+
+JaggedPass_EventScript_15D301:: @ 815D301
+ trainerbattle 5, 216, 0, JaggedPass_Text_1960AA, JaggedPass_Text_1960E2
+ msgbox JaggedPass_Text_196118, 6
+ end
+
diff --git a/data/maps/scripts/LavaridgeTown.s b/data/maps/scripts/LavaridgeTown.s
new file mode 100644
index 000000000..0f668c584
--- /dev/null
+++ b/data/maps/scripts/LavaridgeTown.s
@@ -0,0 +1,321 @@
+LavaridgeTown_MapScripts:: @ 814E4A3
+ map_script 3, LavaridgeTown_MapScript1_14E4AE
+ map_script 2, LavaridgeTown_MapScript2_14E4E3
+ .byte 0
+
+LavaridgeTown_MapScript1_14E4AE:: @ 814E4AE
+ setflag 2066
+ checkflag 139
+ callif 1, LavaridgeTown_EventScript_14E4DF
+ call LavaridgeTown_EventScript_1A014E
+ call LavaridgeTown_EventScript_1A0172
+ compare 0x4053, 2
+ callif 1, LavaridgeTown_EventScript_14E4D0
+ end
+
+LavaridgeTown_EventScript_14E4D0:: @ 814E4D0
+ movespriteperm 8, 11, 9
+ movespriteperm 7, 11, 9
+ return
+
+LavaridgeTown_EventScript_14E4DF:: @ 814E4DF
+ clearflag 877
+ return
+
+LavaridgeTown_MapScript2_14E4E3:: @ 814E4E3
+ map_script_2 0x4053, 1, LavaridgeTown_EventScript_14E4ED
+ .2byte 0
+
+LavaridgeTown_EventScript_14E4ED:: @ 814E4ED
+ lockall
+ setvar 0x8008, 1
+ setdooropened 12, 15
+ doorchange
+ reappear 8
+ move 8, LavaridgeTown_Movement_14E70E
+ waitmove 0
+ setdoorclosed 12, 15
+ doorchange
+ move 8, LavaridgeTown_Movement_1A083F
+ waitmove 0
+ move 255, LavaridgeTown_Movement_1A0843
+ move 8, LavaridgeTown_Movement_1A0833
+ waitmove 0
+ move 8, LavaridgeTown_Movement_1A0835
+ waitmove 0
+ checkgender
+ compare RESULT, 0
+ callif 1, LavaridgeTown_EventScript_14E56B
+ compare RESULT, 1
+ callif 1, LavaridgeTown_EventScript_14E570
+ compare 0x8008, 1
+ callif 1, LavaridgeTown_EventScript_14E68F
+ checkgender
+ compare RESULT, 0
+ jumpeq LavaridgeTown_EventScript_14E5AB
+ compare RESULT, 1
+ jumpeq LavaridgeTown_EventScript_14E5D0
+ end
+
+LavaridgeTown_EventScript_14E56B:: @ 814E56B
+ playmusic 415, 1
+ return
+
+LavaridgeTown_EventScript_14E570:: @ 814E570
+ playmusic 421, 1
+ return
+
+LavaridgeTown_EventScript_14E575:: @ 814E575
+ lock
+ faceplayer
+ setvar 0x8008, 0
+ checkgender
+ compare RESULT, 0
+ callif 1, LavaridgeTown_EventScript_14E56B
+ compare RESULT, 1
+ callif 1, LavaridgeTown_EventScript_14E570
+ checkgender
+ compare RESULT, 0
+ jumpeq LavaridgeTown_EventScript_14E5AB
+ compare RESULT, 1
+ jumpeq LavaridgeTown_EventScript_14E5D0
+ end
+
+LavaridgeTown_EventScript_14E5AB:: @ 814E5AB
+ msgbox LavaridgeTown_Text_16BDA4, 4
+ giveitem ITEM_GO_GOGGLES
+ setflag 221
+ msgbox LavaridgeTown_Text_16BE7D, 4
+ jump LavaridgeTown_EventScript_14E5F5
+ end
+
+LavaridgeTown_EventScript_14E5D0:: @ 814E5D0
+ msgbox LavaridgeTown_Text_16BF92, 4
+ giveitem ITEM_GO_GOGGLES
+ setflag 221
+ msgbox LavaridgeTown_Text_16C020, 4
+ jump LavaridgeTown_EventScript_14E5F5
+ end
+
+LavaridgeTown_EventScript_14E5F5:: @ 814E5F5
+ closebutton
+ compare 0x8008, 1
+ callif 1, LavaridgeTown_EventScript_14E646
+ compare 0x8008, 0
+ callif 1, LavaridgeTown_EventScript_14E64E
+ disappear 8
+ reappear 7
+ pause 30
+ compare 0x8008, 1
+ callif 1, LavaridgeTown_EventScript_14E69A
+ compare 0x8008, 0
+ callif 1, LavaridgeTown_EventScript_14E6A5
+ disappear 7
+ setvar 0x4053, 2
+ playmusicbattle 0
+ fadedefault
+ compare 0x8008, 0
+ jumpeq LavaridgeTown_EventScript_14E644
+ releaseall
+ end
+
+LavaridgeTown_EventScript_14E644:: @ 814E644
+ release
+ end
+
+LavaridgeTown_EventScript_14E646:: @ 814E646
+ movespriteperm 7, 6, 16
+ return
+
+LavaridgeTown_EventScript_14E64E:: @ 814E64E
+ compare FACING, 2
+ callif 1, LavaridgeTown_EventScript_14E67B
+ compare FACING, 1
+ callif 1, LavaridgeTown_EventScript_14E680
+ compare FACING, 3
+ callif 1, LavaridgeTown_EventScript_14E685
+ compare FACING, 4
+ callif 1, LavaridgeTown_EventScript_14E68A
+ return
+
+LavaridgeTown_EventScript_14E67B:: @ 814E67B
+ spritebehave 7, 8
+ return
+
+LavaridgeTown_EventScript_14E680:: @ 814E680
+ spritebehave 7, 7
+ return
+
+LavaridgeTown_EventScript_14E685:: @ 814E685
+ spritebehave 7, 10
+ return
+
+LavaridgeTown_EventScript_14E68A:: @ 814E68A
+ spritebehave 7, 9
+ return
+
+LavaridgeTown_EventScript_14E68F:: @ 814E68F
+ move 8, LavaridgeTown_Movement_14E6E8
+ waitmove 0
+ return
+
+LavaridgeTown_EventScript_14E69A:: @ 814E69A
+ move 7, LavaridgeTown_Movement_14E6EF
+ waitmove 0
+ return
+
+LavaridgeTown_EventScript_14E6A5:: @ 814E6A5
+ compare FACING, 2
+ callif 1, LavaridgeTown_EventScript_14E6D2
+ compare FACING, 1
+ callif 1, LavaridgeTown_EventScript_14E6D2
+ compare FACING, 3
+ callif 1, LavaridgeTown_EventScript_14E6DD
+ compare FACING, 4
+ callif 1, LavaridgeTown_EventScript_14E6D2
+ return
+
+LavaridgeTown_EventScript_14E6D2:: @ 814E6D2
+ move 7, LavaridgeTown_Movement_14E6FA
+ waitmove 0
+ return
+
+LavaridgeTown_EventScript_14E6DD:: @ 814E6DD
+ move 7, LavaridgeTown_Movement_14E703
+ waitmove 0
+ return
+
+LavaridgeTown_Movement_14E6E8:: @ 814E6E8
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_end
+
+LavaridgeTown_Movement_14E6EF:: @ 814E6EF
+ step_18
+ step_18
+ step_18
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_end
+
+LavaridgeTown_Movement_14E6FA:: @ 814E6FA
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_end
+
+LavaridgeTown_Movement_14E703:: @ 814E703
+ step_15
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_end
+
+LavaridgeTown_Movement_14E70E:: @ 814E70E
+ step_down
+ step_end
+
+LavaridgeTown_EventScript_14E710:: @ 814E710
+ specialval RESULT, 287
+ compare RESULT, 1
+ jumpeq LavaridgeTown_EventScript_14E721
+ end
+
+LavaridgeTown_EventScript_14E721:: @ 814E721
+ inccounter 49
+ end
+
+LavaridgeTown_EventScript_14E724:: @ 814E724
+ msgbox LavaridgeTown_Text_16C3FD, 2
+ end
+
+LavaridgeTown_EventScript_14E72D:: @ 814E72D
+ msgbox LavaridgeTown_Text_16C4DB, 3
+ end
+
+LavaridgeTown_EventScript_14E736:: @ 814E736
+ msgbox LavaridgeTown_Text_16C59B, 2
+ end
+
+LavaridgeTown_EventScript_14E73F:: @ 814E73F
+ msgbox LavaridgeTown_Text_16C603, 2
+ end
+
+LavaridgeTown_EventScript_14E748:: @ 814E748
+ msgbox LavaridgeTown_Text_16C694, 2
+ end
+
+LavaridgeTown_EventScript_14E751:: @ 814E751
+ msgbox LavaridgeTown_Text_16C54E, 2
+ end
+
+LavaridgeTown_EventScript_14E75A:: @ 814E75A
+ lock
+ faceplayer
+ checkflag 266
+ jumpeq LavaridgeTown_EventScript_14E79E
+ msgbox LavaridgeTown_Text_16C174, 5
+ compare RESULT, 0
+ jumpeq LavaridgeTown_EventScript_14E7B2
+ countpokemon
+ compare RESULT, 6
+ jumpeq LavaridgeTown_EventScript_14E7A8
+ msgbox LavaridgeTown_Text_16C2B6, 4
+ setflag 266
+ fanfare 370
+ message LavaridgeTown_Text_16C2EA
+ waitfanfare
+ waittext
+ giveegg 360
+ release
+ end
+
+LavaridgeTown_EventScript_14E79E:: @ 814E79E
+ msgbox LavaridgeTown_Text_16C398, 4
+ release
+ end
+
+LavaridgeTown_EventScript_14E7A8:: @ 814E7A8
+ msgbox LavaridgeTown_Text_16C2FF, 4
+ release
+ end
+
+LavaridgeTown_EventScript_14E7B2:: @ 814E7B2
+ msgbox LavaridgeTown_Text_16C33C, 4
+ release
+ end
+
+LavaridgeTown_EventScript_14E7BC:: @ 814E7BC
+ msgbox LavaridgeTown_Text_16C72F, 3
+ end
+
+LavaridgeTown_EventScript_14E7C5:: @ 814E7C5
+ msgbox LavaridgeTown_Text_16C77C, 3
+ end
+
+ .incbin "baserom.gba", 0x14e7ce, 0x9
+
+LavaridgeTown_EventScript_14E7D7:: @ 814E7D7
+ msgbox LavaridgeTown_Text_16C7CF, 3
+ end
+
diff --git a/data/maps/scripts/LavaridgeTown_Gym_1F.s b/data/maps/scripts/LavaridgeTown_Gym_1F.s
new file mode 100644
index 000000000..a44b3cf16
--- /dev/null
+++ b/data/maps/scripts/LavaridgeTown_Gym_1F.s
@@ -0,0 +1,172 @@
+LavaridgeTown_Gym_1F_MapScripts:: @ 815368E
+ map_script 3, LavaridgeTown_Gym_1F_MapScript1_153694
+ .byte 0
+
+LavaridgeTown_Gym_1F_MapScript1_153694:: @ 8153694
+ call LavaridgeTown_Gym_1F_EventScript_15369F
+ call LavaridgeTown_Gym_1F_EventScript_1536FF
+ end
+
+LavaridgeTown_Gym_1F_EventScript_15369F:: @ 815369F
+ setvar 0x400b, 0
+ setvar 0x400c, 0
+ setvar 0x400d, 0
+ setvar 0x400e, 0
+ setvar 0x400f, 0
+ checktrainerflag 201
+ jumpeq LavaridgeTown_Gym_1F_EventScript_1536C6
+ setvar 0x400b, 1
+
+LavaridgeTown_Gym_1F_EventScript_1536C6:: @ 81536C6
+ checktrainerflag 648
+ jumpeq LavaridgeTown_Gym_1F_EventScript_1536D4
+ setvar 0x400c, 1
+
+LavaridgeTown_Gym_1F_EventScript_1536D4:: @ 81536D4
+ checktrainerflag 203
+ jumpeq LavaridgeTown_Gym_1F_EventScript_1536E2
+ setvar 0x400d, 1
+
+LavaridgeTown_Gym_1F_EventScript_1536E2:: @ 81536E2
+ checktrainerflag 650
+ jumpeq LavaridgeTown_Gym_1F_EventScript_1536F0
+ setvar 0x400e, 1
+
+LavaridgeTown_Gym_1F_EventScript_1536F0:: @ 81536F0
+ checktrainerflag 205
+ jumpeq LavaridgeTown_Gym_1F_EventScript_1536FE
+ setvar 0x400f, 1
+
+LavaridgeTown_Gym_1F_EventScript_1536FE:: @ 81536FE
+ return
+
+LavaridgeTown_Gym_1F_EventScript_1536FF:: @ 81536FF
+ checktrainerflag 201
+ jumpeq LavaridgeTown_Gym_1F_EventScript_15370C
+ spritebehave 2, 63
+
+LavaridgeTown_Gym_1F_EventScript_15370C:: @ 815370C
+ checktrainerflag 648
+ jumpeq LavaridgeTown_Gym_1F_EventScript_153719
+ spritebehave 3, 63
+
+LavaridgeTown_Gym_1F_EventScript_153719:: @ 8153719
+ checktrainerflag 203
+ jumpeq LavaridgeTown_Gym_1F_EventScript_153726
+ spritebehave 4, 63
+
+LavaridgeTown_Gym_1F_EventScript_153726:: @ 8153726
+ checktrainerflag 650
+ jumpeq LavaridgeTown_Gym_1F_EventScript_153733
+ spritebehave 5, 63
+
+LavaridgeTown_Gym_1F_EventScript_153733:: @ 8153733
+ checktrainerflag 205
+ jumpeq LavaridgeTown_Gym_1F_EventScript_153740
+ spritebehave 7, 63
+
+LavaridgeTown_Gym_1F_EventScript_153740:: @ 8153740
+ return
+
+LavaridgeTown_Gym_1F_EventScript_153741:: @ 8153741
+ trainerbattle 1, 268, 0, LavaridgeTown_Gym_1F_Text_176801, LavaridgeTown_Gym_1F_Text_176960, LavaridgeTown_Gym_1F_EventScript_153766
+ checkflag 168
+ jumpif 0, LavaridgeTown_Gym_1F_EventScript_1537A7
+ msgbox LavaridgeTown_Gym_1F_Text_176C4A, 4
+ release
+ end
+
+LavaridgeTown_Gym_1F_EventScript_153766:: @ 8153766
+ message LavaridgeTown_Gym_1F_Text_176A62
+ waittext
+ call LavaridgeTown_Gym_1F_EventScript_1A02C5
+ msgbox LavaridgeTown_Gym_1F_Text_176A8C, 4
+ setflag 1213
+ setflag 2058
+ addvar 0x4085, 1
+ compare 0x4085, 6
+ callif 1, LavaridgeTown_Gym_1F_EventScript_1A00FB
+ setvar 0x8008, 4
+ call LavaridgeTown_Gym_1F_EventScript_1A01C0
+ setflag 806
+ setvar 0x4053, 1
+ jump LavaridgeTown_Gym_1F_EventScript_1537A7
+ end
+
+LavaridgeTown_Gym_1F_EventScript_1537A7:: @ 81537A7
+ giveitem ITEM_TM50
+ compare RESULT, 0
+ jumpeq LavaridgeTown_Gym_1F_EventScript_1A029B
+ msgbox LavaridgeTown_Gym_1F_Text_176B8F, 4
+ setflag 168
+ release
+ end
+
+LavaridgeTown_Gym_1F_EventScript_1537CB:: @ 81537CB
+ trainerbattle 2, 201, 2, LavaridgeTown_Gym_1F_Text_176432, LavaridgeTown_Gym_1F_Text_17644F, LavaridgeTown_Gym_1F_EventScript_1537E6
+ msgbox LavaridgeTown_Gym_1F_Text_176472, 6
+ end
+
+LavaridgeTown_Gym_1F_EventScript_1537E6:: @ 81537E6
+ call LavaridgeTown_Gym_1F_EventScript_15369F
+ release
+ end
+
+LavaridgeTown_Gym_1F_EventScript_1537ED:: @ 81537ED
+ trainerbattle 2, 203, 4, LavaridgeTown_Gym_1F_Text_1764D1, LavaridgeTown_Gym_1F_Text_176516, LavaridgeTown_Gym_1F_EventScript_1537E6
+ msgbox LavaridgeTown_Gym_1F_Text_176537, 6
+ end
+
+LavaridgeTown_Gym_1F_EventScript_153808:: @ 8153808
+ trainerbattle 2, 205, 7, LavaridgeTown_Gym_1F_Text_17658D, LavaridgeTown_Gym_1F_Text_17663F, LavaridgeTown_Gym_1F_EventScript_1537E6
+ msgbox LavaridgeTown_Gym_1F_Text_176660, 6
+ end
+
+LavaridgeTown_Gym_1F_EventScript_153823:: @ 8153823
+ trainerbattle 2, 650, 5, LavaridgeTown_Gym_1F_Text_176784, LavaridgeTown_Gym_1F_Text_1767A6, LavaridgeTown_Gym_1F_EventScript_1537E6
+ msgbox LavaridgeTown_Gym_1F_Text_1767C1, 6
+ end
+
+LavaridgeTown_Gym_1F_EventScript_15383E:: @ 815383E
+ trainerbattle 2, 648, 3, LavaridgeTown_Gym_1F_Text_1766D2, LavaridgeTown_Gym_1F_Text_1766FE, LavaridgeTown_Gym_1F_EventScript_1537E6
+ msgbox LavaridgeTown_Gym_1F_Text_17671D, 6
+ end
+
+LavaridgeTown_Gym_1F_EventScript_153859:: @ 8153859
+ lock
+ faceplayer
+ checkflag 1213
+ jumpeq LavaridgeTown_Gym_1F_EventScript_15386E
+ msgbox LavaridgeTown_Gym_1F_Text_176312, 4
+ release
+ end
+
+LavaridgeTown_Gym_1F_EventScript_15386E:: @ 815386E
+ msgbox LavaridgeTown_Gym_1F_Text_17640C, 4
+ release
+ end
+
+LavaridgeTown_Gym_1F_EventScript_153878:: @ 8153878
+ lockall
+ checkflag 2058
+ jumpeq LavaridgeTown_Gym_1F_EventScript_153898
+ jump LavaridgeTown_Gym_1F_EventScript_1538A2
+ end
+
+LavaridgeTown_Gym_1F_EventScript_153888:: @ 8153888
+ lockall
+ checkflag 2058
+ jumpeq LavaridgeTown_Gym_1F_EventScript_153898
+ jump LavaridgeTown_Gym_1F_EventScript_1538A2
+ end
+
+LavaridgeTown_Gym_1F_EventScript_153898:: @ 8153898
+ msgbox LavaridgeTown_Gym_1F_Text_176CCA, 4
+ releaseall
+ end
+
+LavaridgeTown_Gym_1F_EventScript_1538A2:: @ 81538A2
+ msgbox LavaridgeTown_Gym_1F_Text_176CAF, 4
+ releaseall
+ end
+
diff --git a/data/maps/scripts/LavaridgeTown_Gym_B1F.s b/data/maps/scripts/LavaridgeTown_Gym_B1F.s
new file mode 100644
index 000000000..428c76c49
--- /dev/null
+++ b/data/maps/scripts/LavaridgeTown_Gym_B1F.s
@@ -0,0 +1,3 @@
+LavaridgeTown_Gym_B1F_MapScripts:: @ 81538AC
+ .byte 0
+
diff --git a/data/maps/scripts/LavaridgeTown_HerbShop.s b/data/maps/scripts/LavaridgeTown_HerbShop.s
new file mode 100644
index 000000000..96d95a75c
--- /dev/null
+++ b/data/maps/scripts/LavaridgeTown_HerbShop.s
@@ -0,0 +1,44 @@
+LavaridgeTown_HerbShop_MapScripts:: @ 8153628
+ .byte 0
+
+LavaridgeTown_HerbShop_EventScript_153629:: @ 8153629
+ lock
+ faceplayer
+ message LavaridgeTown_HerbShop_Text_17615C
+ waittext
+ pokemart LavaridgeTown_HerbShop_Pokemart_153640
+ msgbox LavaridgeTown_HerbShop_Text_1A0C02, 4
+ release
+ end
+
+LavaridgeTown_HerbShop_Pokemart_153640:: @ 8153640
+ .2byte ITEM_ENERGY_POWDER
+ .2byte ITEM_ENERGY_ROOT
+ .2byte ITEM_HEAL_POWDER
+ .2byte ITEM_REVIVAL_HERB
+ .2byte ITEM_NONE
+ release
+ end
+
+LavaridgeTown_HerbShop_EventScript_15364C:: @ 815364C
+ msgbox LavaridgeTown_HerbShop_Text_1762A3, 2
+ end
+
+LavaridgeTown_HerbShop_EventScript_153655:: @ 8153655
+ lock
+ faceplayer
+ checkflag 254
+ jumpeq LavaridgeTown_HerbShop_EventScript_153684
+ msgbox LavaridgeTown_HerbShop_Text_1761A2, 4
+ giveitem ITEM_CHARCOAL
+ compare RESULT, 0
+ jumpeq LavaridgeTown_HerbShop_EventScript_1A029B
+ setflag 254
+ release
+ end
+
+LavaridgeTown_HerbShop_EventScript_153684:: @ 8153684
+ msgbox LavaridgeTown_HerbShop_Text_176209, 4
+ release
+ end
+
diff --git a/data/maps/scripts/LavaridgeTown_House.s b/data/maps/scripts/LavaridgeTown_House.s
new file mode 100644
index 000000000..7d5e9bf8b
--- /dev/null
+++ b/data/maps/scripts/LavaridgeTown_House.s
@@ -0,0 +1,17 @@
+LavaridgeTown_House_MapScripts:: @ 81538AD
+ .byte 0
+
+LavaridgeTown_House_EventScript_1538AE:: @ 81538AE
+ msgbox LavaridgeTown_House_Text_176D07, 2
+ end
+
+LavaridgeTown_House_EventScript_1538B7:: @ 81538B7
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_ZIGZAGOON, 0
+ msgbox LavaridgeTown_House_Text_176D94, 4
+ waitpokecry
+ release
+ end
+
diff --git a/data/maps/scripts/LavaridgeTown_Mart.s b/data/maps/scripts/LavaridgeTown_Mart.s
new file mode 100644
index 000000000..13e119eeb
--- /dev/null
+++ b/data/maps/scripts/LavaridgeTown_Mart.s
@@ -0,0 +1,37 @@
+LavaridgeTown_Mart_MapScripts:: @ 81538CA
+ .byte 0
+
+LavaridgeTown_Mart_EventScript_1538CB:: @ 81538CB
+ lock
+ faceplayer
+ message LavaridgeTown_Mart_Text_1A0BE4
+ waittext
+ pokemart LavaridgeTown_Mart_Pokemart_1538E4
+ msgbox LavaridgeTown_Mart_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x1538e2, 0x2
+
+LavaridgeTown_Mart_Pokemart_1538E4:: @ 81538E4
+ .2byte ITEM_GREAT_BALL
+ .2byte ITEM_SUPER_POTION
+ .2byte ITEM_ANTIDOTE
+ .2byte ITEM_PARALYZE_HEAL
+ .2byte ITEM_AWAKENING
+ .2byte ITEM_BURN_HEAL
+ .2byte ITEM_REVIVE
+ .2byte ITEM_SUPER_REPEL
+ .2byte ITEM_X_SPEED
+ .2byte ITEM_NONE
+ release
+ end
+
+LavaridgeTown_Mart_EventScript_1538FA:: @ 81538FA
+ msgbox LavaridgeTown_Mart_Text_176DA6, 2
+ end
+
+LavaridgeTown_Mart_EventScript_153903:: @ 8153903
+ msgbox LavaridgeTown_Mart_Text_176E1A, 2
+ end
+
diff --git a/data/maps/scripts/LavaridgeTown_PokemonCenter_1F.s b/data/maps/scripts/LavaridgeTown_PokemonCenter_1F.s
new file mode 100644
index 000000000..8c17e6d4c
--- /dev/null
+++ b/data/maps/scripts/LavaridgeTown_PokemonCenter_1F.s
@@ -0,0 +1,29 @@
+LavaridgeTown_PokemonCenter_1F_MapScripts:: @ 815390C
+ map_script 3, LavaridgeTown_PokemonCenter_1F_MapScript1_153912
+ .byte 0
+
+LavaridgeTown_PokemonCenter_1F_MapScript1_153912:: @ 8153912
+ sethealplace 16
+ call LavaridgeTown_PokemonCenter_1F_EventScript_19FD1B
+ end
+
+LavaridgeTown_PokemonCenter_1F_EventScript_15391B:: @ 815391B
+ setvar 0x800b, 1
+ call LavaridgeTown_PokemonCenter_1F_EventScript_19FD5B
+ waittext
+ waitbutton
+ release
+ end
+
+LavaridgeTown_PokemonCenter_1F_EventScript_153929:: @ 8153929
+ msgbox LavaridgeTown_PokemonCenter_1F_Text_176F08, 2
+ end
+
+LavaridgeTown_PokemonCenter_1F_EventScript_153932:: @ 8153932
+ msgbox LavaridgeTown_PokemonCenter_1F_Text_176E92, 2
+ end
+
+LavaridgeTown_PokemonCenter_1F_EventScript_15393B:: @ 815393B
+ msgbox LavaridgeTown_PokemonCenter_1F_Text_176F7A, 2
+ end
+
diff --git a/data/maps/scripts/LavaridgeTown_PokemonCenter_2F.s b/data/maps/scripts/LavaridgeTown_PokemonCenter_2F.s
new file mode 100644
index 000000000..9b7949ecc
--- /dev/null
+++ b/data/maps/scripts/LavaridgeTown_PokemonCenter_2F.s
@@ -0,0 +1,18 @@
+LavaridgeTown_PokemonCenter_2F_MapScripts:: @ 8153944
+ map_script 2, LavaridgeTown_PokemonCenter_2F_MapScript2_1A3D88
+ map_script 4, LavaridgeTown_PokemonCenter_2F_MapScript2_1A3D03
+ map_script 1, LavaridgeTown_PokemonCenter_2F_MapScript1_1A3D32
+ .byte 0
+
+LavaridgeTown_PokemonCenter_2F_EventScript_153954:: @ 8153954
+ call LavaridgeTown_PokemonCenter_2F_EventScript_1A3EA6
+ end
+
+LavaridgeTown_PokemonCenter_2F_EventScript_15395A:: @ 815395A
+ call LavaridgeTown_PokemonCenter_2F_EventScript_1A40CC
+ end
+
+LavaridgeTown_PokemonCenter_2F_EventScript_153960:: @ 8153960
+ call LavaridgeTown_PokemonCenter_2F_EventScript_1A41FB
+ end
+
diff --git a/data/maps/scripts/LilycoveCity.s b/data/maps/scripts/LilycoveCity.s
new file mode 100644
index 000000000..a8d1653c1
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity.s
@@ -0,0 +1,426 @@
+LilycoveCity_MapScripts:: @ 814CA15
+ map_script 3, LilycoveCity_MapScript1_14CA20
+ map_script 1, LilycoveCity_MapScript1_14CA3F
+ .byte 0
+
+LilycoveCity_MapScript1_14CA20:: @ 814CA20
+ setflag 2075
+ setvar 0x4086, 0
+ setflag 802
+ checkflag 2090
+ callif 1, LilycoveCity_EventScript_1A02C1
+ call LilycoveCity_EventScript_1A0196
+ call LilycoveCity_EventScript_1A014E
+ end
+
+LilycoveCity_MapScript1_14CA3F:: @ 814CA3F
+ setmaptile 69, 4, 169, 1
+ setmaptile 70, 4, 680, 1
+ setmaptile 71, 4, 681, 1
+ setmaptile 72, 4, 682, 1
+ setmaptile 69, 5, 145, 1
+ setmaptile 70, 5, 688, 1
+ setmaptile 71, 5, 689, 0
+ setmaptile 72, 5, 690, 1
+ setmaptile 69, 6, 446, 0
+ setmaptile 70, 6, 447, 0
+ setmaptile 71, 6, 368, 0
+ setmaptile 72, 6, 445, 0
+ checkflag 112
+ callif 0, LilycoveCity_EventScript_14CABE
+ checkflag 2061
+ callif 1, LilycoveCity_EventScript_14CB2B
+ end
+
+LilycoveCity_EventScript_14CABE:: @ 814CABE
+ setmaptile 76, 12, 656, 1
+ setmaptile 77, 12, 657, 1
+ setmaptile 76, 13, 672, 1
+ setmaptile 77, 13, 673, 1
+ setmaptile 76, 14, 664, 1
+ setmaptile 77, 14, 665, 1
+ setmaptile 76, 15, 672, 1
+ setmaptile 77, 15, 673, 1
+ setmaptile 77, 16, 664, 1
+ setmaptile 78, 16, 665, 1
+ setmaptile 77, 17, 672, 1
+ setmaptile 78, 17, 673, 1
+ return
+
+LilycoveCity_EventScript_14CB2B:: @ 814CB2B
+ setmaptile 69, 4, 169, 1
+ setmaptile 70, 4, 169, 1
+ setmaptile 71, 4, 169, 1
+ setmaptile 72, 4, 169, 1
+ setmaptile 69, 5, 145, 1
+ setmaptile 70, 5, 145, 1
+ setmaptile 71, 5, 145, 1
+ setmaptile 72, 5, 145, 1
+ return
+
+LilycoveCity_EventScript_14CB74:: @ 814CB74
+ lock
+ faceplayer
+ checkdailyflags
+ checkflag 2255
+ jumpeq LilycoveCity_EventScript_14CBB4
+ msgbox LilycoveCity_Text_1C5A7A, 4
+ random 10
+ addvar RESULT, 133
+ giveitem RESULT
+ compare RESULT, 0
+ jumpeq LilycoveCity_EventScript_1A029B
+ setflag 2255
+ msgbox LilycoveCity_Text_1C5B1D, 4
+ release
+ end
+
+LilycoveCity_EventScript_14CBB4:: @ 814CBB4
+ msgbox LilycoveCity_Text_1C5B5D, 4
+ release
+ end
+
+LilycoveCity_EventScript_14CBBE:: @ 814CBBE
+ msgbox LilycoveCity_Text_1686C9, 2
+ end
+
+LilycoveCity_EventScript_14CBC7:: @ 814CBC7
+ lock
+ faceplayer
+ checkflag 2061
+ jumpeq LilycoveCity_EventScript_14CBDC
+ msgbox LilycoveCity_Text_168750, 4
+ release
+ end
+
+LilycoveCity_EventScript_14CBDC:: @ 814CBDC
+ msgbox LilycoveCity_Text_168791, 4
+ release
+ end
+
+LilycoveCity_EventScript_14CBE6:: @ 814CBE6
+ msgbox LilycoveCity_Text_168819, 2
+ end
+
+LilycoveCity_EventScript_14CBEF:: @ 814CBEF
+ lock
+ faceplayer
+ checkflag 112
+ jumpeq LilycoveCity_EventScript_14CC04
+ msgbox LilycoveCity_Text_1688C1, 4
+ release
+ end
+
+LilycoveCity_EventScript_14CC04:: @ 814CC04
+ msgbox LilycoveCity_Text_168934, 4
+ release
+ end
+
+LilycoveCity_EventScript_14CC0E:: @ 814CC0E
+ lock
+ faceplayer
+ checkflag 112
+ jumpeq LilycoveCity_EventScript_14CC23
+ msgbox LilycoveCity_Text_1689BF, 4
+ release
+ end
+
+LilycoveCity_EventScript_14CC23:: @ 814CC23
+ msgbox LilycoveCity_Text_168A55, 4
+ release
+ end
+
+LilycoveCity_EventScript_14CC2D:: @ 814CC2D
+ msgbox LilycoveCity_Text_168A8D, 2
+ end
+
+LilycoveCity_EventScript_14CC36:: @ 814CC36
+ msgbox LilycoveCity_Text_168B1F, 3
+ end
+
+LilycoveCity_EventScript_14CC3F:: @ 814CC3F
+ msgbox LilycoveCity_Text_168B9B, 3
+ end
+
+LilycoveCity_EventScript_14CC48:: @ 814CC48
+ lock
+ faceplayer
+ checkflag 2061
+ jumpeq LilycoveCity_EventScript_14CC5D
+ msgbox LilycoveCity_Text_168C16, 4
+ release
+ end
+
+LilycoveCity_EventScript_14CC5D:: @ 814CC5D
+ msgbox LilycoveCity_Text_168D15, 4
+ release
+ end
+
+LilycoveCity_EventScript_14CC67:: @ 814CC67
+ msgbox LilycoveCity_Text_168DA9, 3
+ end
+
+LilycoveCity_EventScript_14CC70:: @ 814CC70
+ msgbox LilycoveCity_Text_168DE1, 3
+ end
+
+LilycoveCity_EventScript_14CC79:: @ 814CC79
+ msgbox LilycoveCity_Text_168E2F, 3
+ end
+
+LilycoveCity_EventScript_14CC82:: @ 814CC82
+ lockall
+ specialval 0x8004, 137
+ switch 0x8004
+ case 0, LilycoveCity_EventScript_14CCA2
+ msgbox LilycoveCity_Text_168EA4, 4
+ releaseall
+ end
+
+LilycoveCity_EventScript_14CCA2:: @ 814CCA2
+ msgbox LilycoveCity_Text_168E67, 4
+ releaseall
+ end
+
+LilycoveCity_EventScript_14CCAC:: @ 814CCAC
+ lockall
+ checkflag 2052
+ jumpeq LilycoveCity_EventScript_14CCC0
+ msgbox LilycoveCity_Text_168EDA, 4
+ releaseall
+ end
+
+LilycoveCity_EventScript_14CCC0:: @ 814CCC0
+ msgbox LilycoveCity_Text_168F57, 4
+ releaseall
+ end
+
+LilycoveCity_EventScript_14CCCA:: @ 814CCCA
+ msgbox LilycoveCity_Text_168FA1, 3
+ end
+
+LilycoveCity_EventScript_14CCD3:: @ 814CCD3
+ msgbox LilycoveCity_Text_168FF3, 3
+ end
+
+LilycoveCity_EventScript_14CCDC:: @ 814CCDC
+ msgbox LilycoveCity_Text_169072, 3
+ end
+
+LilycoveCity_EventScript_14CCE5:: @ 814CCE5
+ lockall
+ checkflag 218
+ jumpeq LilycoveCity_EventScript_14CD18
+ msgbox LilycoveCity_Text_16864A, 4
+ move LAST_TALKED, LilycoveCity_Movement_1A0839
+ waitmove 0
+ msgbox LilycoveCity_Text_168675, 4
+ move LAST_TALKED, LilycoveCity_Movement_1A083D
+ waitmove 0
+ setflag 218
+ releaseall
+ end
+
+LilycoveCity_EventScript_14CD18:: @ 814CD18
+ msgbox LilycoveCity_Text_16864A, 4
+ releaseall
+ end
+
+LilycoveCity_EventScript_14CD22:: @ 814CD22
+ msgbox LilycoveCity_Text_168455, 2
+ end
+
+LilycoveCity_EventScript_14CD2B:: @ 814CD2B
+ msgbox LilycoveCity_Text_1684C2, 2
+ end
+
+LilycoveCity_EventScript_14CD34:: @ 814CD34
+ msgbox LilycoveCity_Text_168573, 2
+ end
+
+LilycoveCity_EventScript_14CD3D:: @ 814CD3D
+ msgbox LilycoveCity_Text_1685EB, 2
+ end
+
+LilycoveCity_EventScript_14CD46:: @ 814CD46
+ lock
+ faceplayer
+ checkgender
+ compare RESULT, 0
+ jumpeq LilycoveCity_EventScript_14CD60
+ compare RESULT, 1
+ jumpeq LilycoveCity_EventScript_14CDD3
+ end
+
+LilycoveCity_EventScript_14CD60:: @ 814CD60
+ playmusic 415, 1
+ checkflag 286
+ callif 1, LilycoveCity_EventScript_14CDB0
+ checkflag 286
+ callif 0, LilycoveCity_EventScript_14CDB9
+ compare RESULT, 0
+ jumpeq LilycoveCity_EventScript_14CDC2
+ msgbox LilycoveCity_Text_167B94, 4
+ switch 0x4023
+ case 0, LilycoveCity_EventScript_14CE46
+ case 1, LilycoveCity_EventScript_14CE56
+ case 2, LilycoveCity_EventScript_14CE66
+ end
+
+LilycoveCity_EventScript_14CDB0:: @ 814CDB0
+ msgbox LilycoveCity_Text_167B55, 5
+ return
+
+LilycoveCity_EventScript_14CDB9:: @ 814CDB9
+ msgbox LilycoveCity_Text_1679BF, 5
+ return
+
+LilycoveCity_EventScript_14CDC2:: @ 814CDC2
+ setflag 286
+ msgbox LilycoveCity_Text_167AEB, 4
+ playmusicbattle 0
+ fadedefault
+ release
+ end
+
+LilycoveCity_EventScript_14CDD3:: @ 814CDD3
+ playmusic 421, 1
+ checkflag 286
+ callif 1, LilycoveCity_EventScript_14CE23
+ checkflag 286
+ callif 0, LilycoveCity_EventScript_14CE2C
+ compare RESULT, 0
+ jumpeq LilycoveCity_EventScript_14CE35
+ msgbox LilycoveCity_Text_1680A9, 4
+ switch 0x4023
+ case 0, LilycoveCity_EventScript_14CE76
+ case 1, LilycoveCity_EventScript_14CE86
+ case 2, LilycoveCity_EventScript_14CE96
+ end
+
+LilycoveCity_EventScript_14CE23:: @ 814CE23
+ msgbox LilycoveCity_Text_168067, 5
+ return
+
+LilycoveCity_EventScript_14CE2C:: @ 814CE2C
+ msgbox LilycoveCity_Text_167F75, 5
+ return
+
+LilycoveCity_EventScript_14CE35:: @ 814CE35
+ setflag 286
+ msgbox LilycoveCity_Text_16802C, 4
+ playmusicbattle 0
+ fadedefault
+ release
+ end
+
+LilycoveCity_EventScript_14CE46:: @ 814CE46
+ trainerbattle 3, 665, 0, LilycoveCity_Text_167BD5
+ jump LilycoveCity_EventScript_14CEA6
+ end
+
+LilycoveCity_EventScript_14CE56:: @ 814CE56
+ trainerbattle 3, 666, 0, LilycoveCity_Text_167BD5
+ jump LilycoveCity_EventScript_14CEA6
+ end
+
+LilycoveCity_EventScript_14CE66:: @ 814CE66
+ trainerbattle 3, 664, 0, LilycoveCity_Text_167BD5
+ jump LilycoveCity_EventScript_14CEA6
+ end
+
+LilycoveCity_EventScript_14CE76:: @ 814CE76
+ trainerbattle 3, 662, 0, LilycoveCity_Text_1680E4
+ jump LilycoveCity_EventScript_14CF12
+ end
+
+LilycoveCity_EventScript_14CE86:: @ 814CE86
+ trainerbattle 3, 663, 0, LilycoveCity_Text_1680E4
+ jump LilycoveCity_EventScript_14CF12
+ end
+
+LilycoveCity_EventScript_14CE96:: @ 814CE96
+ trainerbattle 3, 661, 0, LilycoveCity_Text_1680E4
+ jump LilycoveCity_EventScript_14CF12
+ end
+
+LilycoveCity_EventScript_14CEA6:: @ 814CEA6
+ msgbox LilycoveCity_Text_167C6B, 4
+ setvar RESULT, 0
+ checkflag 2060
+ callif 1, LilycoveCity_EventScript_14CEDE
+ compare RESULT, 0
+ callif 1, LilycoveCity_EventScript_14CEEE
+ compare RESULT, 1
+ callif 1, LilycoveCity_EventScript_14CEF7
+ clearflag 722
+ clearflag 849
+ jump LilycoveCity_EventScript_14CF6B
+ end
+
+LilycoveCity_EventScript_14CEDE:: @ 814CEDE
+ checkflag 2062
+ jumpeq LilycoveCity_EventScript_14CEE8
+ return
+
+LilycoveCity_EventScript_14CEE8:: @ 814CEE8
+ setvar RESULT, 1
+ return
+
+LilycoveCity_EventScript_14CEEE:: @ 814CEEE
+ msgbox LilycoveCity_Text_167D08, 4
+ return
+
+LilycoveCity_EventScript_14CEF7:: @ 814CEF7
+ checkflag 2052
+ jumpeq LilycoveCity_EventScript_14CF09
+ msgbox LilycoveCity_Text_167DDD, 4
+ return
+
+LilycoveCity_EventScript_14CF09:: @ 814CF09
+ msgbox LilycoveCity_Text_167EAA, 4
+ return
+
+LilycoveCity_EventScript_14CF12:: @ 814CF12
+ msgbox LilycoveCity_Text_168149, 4
+ setvar RESULT, 0
+ checkflag 2060
+ callif 1, LilycoveCity_EventScript_14CEDE
+ compare RESULT, 0
+ callif 1, LilycoveCity_EventScript_14CF47
+ compare RESULT, 1
+ callif 1, LilycoveCity_EventScript_14CF50
+ clearflag 760
+ jump LilycoveCity_EventScript_14CF6B
+ end
+
+LilycoveCity_EventScript_14CF47:: @ 814CF47
+ msgbox LilycoveCity_Text_1681EA, 4
+ return
+
+LilycoveCity_EventScript_14CF50:: @ 814CF50
+ checkflag 2052
+ jumpeq LilycoveCity_EventScript_14CF62
+ msgbox LilycoveCity_Text_168282, 4
+ return
+
+LilycoveCity_EventScript_14CF62:: @ 814CF62
+ msgbox LilycoveCity_Text_16835A, 4
+ return
+
+LilycoveCity_EventScript_14CF6B:: @ 814CF6B
+ closebutton
+ move LAST_TALKED, LilycoveCity_Movement_1A0845
+ waitmove 0
+ pause 50
+ setanimation 0, 1
+ doanimation 30
+ pause 15
+ disappear LAST_TALKED
+ checkanimation 30
+ playmusicbattle 0
+ fadedefault
+ setflag 292
+ release
+ end
+
diff --git a/data/maps/scripts/LilycoveCity_ContestHall.s b/data/maps/scripts/LilycoveCity_ContestHall.s
new file mode 100644
index 000000000..a06ccf14d
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_ContestHall.s
@@ -0,0 +1,256 @@
+LilycoveCity_ContestHall_MapScripts:: @ 8159099
+ .byte 0
+
+ .incbin "baserom.gba", 0x15909a, 0x1
+
+LilycoveCity_ContestHall_EventScript_15909B:: @ 815909B
+ msgbox LilycoveCity_ContestHall_Text_1890D4, 2
+ end
+
+LilycoveCity_ContestHall_EventScript_1590A4:: @ 81590A4
+ msgbox LilycoveCity_ContestHall_Text_18915F, 2
+ end
+
+LilycoveCity_ContestHall_EventScript_1590AD:: @ 81590AD
+ msgbox LilycoveCity_ContestHall_Text_189221, 2
+ end
+
+LilycoveCity_ContestHall_EventScript_1590B6:: @ 81590B6
+ msgbox LilycoveCity_ContestHall_Text_189299, 2
+ end
+
+LilycoveCity_ContestHall_EventScript_1590BF:: @ 81590BF
+ msgbox LilycoveCity_ContestHall_Text_189301, 2
+ lockall
+ move 4, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_1590D4:: @ 81590D4
+ msgbox LilycoveCity_ContestHall_Text_189366, 2
+ lockall
+ move 5, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_1590E9:: @ 81590E9
+ msgbox LilycoveCity_ContestHall_Text_1893CE, 2
+ lockall
+ move 6, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_1590FE:: @ 81590FE
+ msgbox LilycoveCity_ContestHall_Text_189463, 2
+ lockall
+ move 7, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_159113:: @ 8159113
+ msgbox LilycoveCity_ContestHall_Text_189512, 2
+ lockall
+ move 8, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_159128:: @ 8159128
+ msgbox LilycoveCity_ContestHall_Text_18956B, 2
+ lockall
+ move 9, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_15913D:: @ 815913D
+ msgbox LilycoveCity_ContestHall_Text_1895F3, 3
+ end
+
+LilycoveCity_ContestHall_EventScript_159146:: @ 8159146
+ msgbox LilycoveCity_ContestHall_Text_189617, 2
+ lockall
+ move 12, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_15915B:: @ 815915B
+ msgbox LilycoveCity_ContestHall_Text_1896BE, 2
+ lockall
+ move 22, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_159170:: @ 8159170
+ msgbox LilycoveCity_ContestHall_Text_1896FE, 2
+ lockall
+ move 11, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_159185:: @ 8159185
+ msgbox LilycoveCity_ContestHall_Text_189771, 2
+ lockall
+ move 13, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_15919A:: @ 815919A
+ msgbox LilycoveCity_ContestHall_Text_1897AA, 2
+ lockall
+ move 14, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_1591AF:: @ 81591AF
+ msgbox LilycoveCity_ContestHall_Text_18980B, 2
+ lockall
+ move 15, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_1591C4:: @ 81591C4
+ msgbox LilycoveCity_ContestHall_Text_189874, 2
+ lockall
+ move 16, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_1591D9:: @ 81591D9
+ msgbox LilycoveCity_ContestHall_Text_18990A, 2
+ lockall
+ move 17, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_1591EE:: @ 81591EE
+ msgbox LilycoveCity_ContestHall_Text_189981, 2
+ lockall
+ move 18, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_159203:: @ 8159203
+ msgbox LilycoveCity_ContestHall_Text_189A1D, 2
+ lockall
+ move 19, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_159218:: @ 8159218
+ msgbox LilycoveCity_ContestHall_Text_189A82, 2
+ lockall
+ move 21, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_15922D:: @ 815922D
+ msgbox LilycoveCity_ContestHall_Text_189AE1, 2
+ lockall
+ move 20, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_159242:: @ 8159242
+ msgbox LilycoveCity_ContestHall_Text_189B4E, 2
+ lockall
+ move 23, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_159257:: @ 8159257
+ msgbox LilycoveCity_ContestHall_Text_189BBF, 2
+ lockall
+ move 24, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_15926C:: @ 815926C
+ msgbox LilycoveCity_ContestHall_Text_189C29, 2
+ lockall
+ move 25, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_159281:: @ 8159281
+ msgbox LilycoveCity_ContestHall_Text_189C67, 2
+ lockall
+ move 26, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_159296:: @ 8159296
+ msgbox LilycoveCity_ContestHall_Text_189CB3, 2
+ lockall
+ move 27, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_1592AB:: @ 81592AB
+ msgbox LilycoveCity_ContestHall_Text_189D11, 2
+ lockall
+ move 28, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_1592C0:: @ 81592C0
+ lockall
+ move 29, LilycoveCity_ContestHall_Movement_1A0839
+ waitmove 0
+ pause 25
+ move 29, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ msgbox LilycoveCity_ContestHall_Text_189DA2, 3
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_1592E2:: @ 81592E2
+ msgbox LilycoveCity_ContestHall_Text_189E5F, 2
+ lockall
+ move 31, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_1592F7:: @ 81592F7
+ msgbox LilycoveCity_ContestHall_Text_189DF3, 2
+ lockall
+ move 30, LilycoveCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_ContestHall_EventScript_15930C:: @ 815930C
+ msgbox LilycoveCity_ContestHall_Text_189EF3, 3
+ end
+
+LilycoveCity_ContestHall_EventScript_159315:: @ 8159315
+ msgbox LilycoveCity_ContestHall_Text_189F29, 3
+ end
+
+LilycoveCity_ContestHall_EventScript_15931E:: @ 815931E
+ msgbox LilycoveCity_ContestHall_Text_189F5C, 3
+ end
+
diff --git a/data/maps/scripts/LilycoveCity_ContestLobby.s b/data/maps/scripts/LilycoveCity_ContestLobby.s
new file mode 100644
index 000000000..f1f1e7925
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_ContestLobby.s
@@ -0,0 +1,772 @@
+LilycoveCity_ContestLobby_MapScripts:: @ 8158866
+ map_script 3, LilycoveCity_ContestLobby_MapScript1_158871
+ map_script 2, LilycoveCity_ContestLobby_MapScript2_158877
+ .byte 0
+
+LilycoveCity_ContestLobby_MapScript1_158871:: @ 8158871
+ call LilycoveCity_ContestLobby_EventScript_1AE188
+ end
+
+LilycoveCity_ContestLobby_MapScript2_158877:: @ 8158877
+ map_script_2 0x4099, 1, LilycoveCity_ContestLobby_EventScript_158889
+ map_script_2 0x4099, 2, LilycoveCity_ContestLobby_EventScript_158A5B
+ .2byte 0
+
+LilycoveCity_ContestLobby_EventScript_158889:: @ 8158889
+ checkflag 775
+ jumpeq LilycoveCity_ContestLobby_EventScript_158898
+ setvar 0x4099, 0
+ end
+
+LilycoveCity_ContestLobby_EventScript_158898:: @ 8158898
+ lockall
+ reappear 4
+ move 4, LilycoveCity_ContestLobby_Movement_158A3B
+ waitmove 4
+ move 255, LilycoveCity_ContestLobby_Movement_158A4C
+ waitmove 0
+ msgbox LilycoveCity_ContestLobby_Text_18890F, 4
+ lockall
+ fadescreen 1
+ showcontestwinner 0
+ lockall
+ msgbox LilycoveCity_ContestLobby_Text_1889FD, 5
+ compare RESULT, 1
+ jumpeq LilycoveCity_ContestLobby_EventScript_1588DE
+ compare RESULT, 0
+ jumpeq LilycoveCity_ContestLobby_EventScript_158918
+ releaseall
+ end
+
+LilycoveCity_ContestLobby_EventScript_1588DE:: @ 81588DE
+ msgbox LilycoveCity_ContestLobby_Text_188AE8, 4
+ closebutton
+ special 135
+ setvar 0x4099, 0
+ specialval RESULT, 91
+ compare RESULT, 1
+ callif 1, LilycoveCity_ContestLobby_EventScript_158948
+ move 4, LilycoveCity_ContestLobby_Movement_158A43
+ waitmove 0
+ disappear 4
+ call LilycoveCity_ContestLobby_EventScript_158994
+ call LilycoveCity_ContestLobby_EventScript_1589EA
+ releaseall
+ end
+
+LilycoveCity_ContestLobby_EventScript_158918:: @ 8158918
+ msgbox LilycoveCity_ContestLobby_Text_188C41, 5
+ compare RESULT, 1
+ jumpeq LilycoveCity_ContestLobby_EventScript_1588DE
+ msgbox LilycoveCity_ContestLobby_Text_188CBD, 4
+ closebutton
+ move 4, LilycoveCity_ContestLobby_Movement_158A43
+ waitmove 0
+ setvar 0x4099, 0
+ disappear 4
+ releaseall
+ end
+
+LilycoveCity_ContestLobby_EventScript_158948:: @ 8158948
+ inccounter 42
+ special 80
+ move 4, LilycoveCity_ContestLobby_Movement_158A4E
+ waitmove 0
+ playsfx 21
+ move 4, LilycoveCity_ContestLobby_Movement_1A0833
+ waitmove 0
+ move 4, LilycoveCity_ContestLobby_Movement_158A52
+ waitmove 0
+ msgbox LilycoveCity_ContestLobby_Text_188BB5, 4
+ fanfare 370
+ msgbox LilycoveCity_ContestLobby_Text_188C03, 4
+ waitfanfare
+ msgbox LilycoveCity_ContestLobby_Text_188C19, 4
+ msgbox LilycoveCity_ContestLobby_Text_188C32, 4
+ closebutton
+ return
+
+LilycoveCity_ContestLobby_EventScript_158994:: @ 8158994
+ specialval 0x8004, 137
+ switch 0x8004
+ case 1, LilycoveCity_ContestLobby_EventScript_1589D6
+ case 2, LilycoveCity_ContestLobby_EventScript_1589DA
+ case 3, LilycoveCity_ContestLobby_EventScript_1589DE
+ case 4, LilycoveCity_ContestLobby_EventScript_1589E2
+ case 5, LilycoveCity_ContestLobby_EventScript_1589E6
+ return
+
+LilycoveCity_ContestLobby_EventScript_1589D6:: @ 81589D6
+ clearflag 776
+ return
+
+LilycoveCity_ContestLobby_EventScript_1589DA:: @ 81589DA
+ clearflag 777
+ return
+
+LilycoveCity_ContestLobby_EventScript_1589DE:: @ 81589DE
+ clearflag 778
+ return
+
+LilycoveCity_ContestLobby_EventScript_1589E2:: @ 81589E2
+ clearflag 779
+ return
+
+LilycoveCity_ContestLobby_EventScript_1589E6:: @ 81589E6
+ clearflag 780
+ return
+
+LilycoveCity_ContestLobby_EventScript_1589EA:: @ 81589EA
+ switch 0x8011
+ case 0, LilycoveCity_ContestLobby_EventScript_158A27
+ case 1, LilycoveCity_ContestLobby_EventScript_158A2B
+ case 2, LilycoveCity_ContestLobby_EventScript_158A2F
+ case 3, LilycoveCity_ContestLobby_EventScript_158A33
+ case 4, LilycoveCity_ContestLobby_EventScript_158A37
+ return
+
+LilycoveCity_ContestLobby_EventScript_158A27:: @ 8158A27
+ setflag 160
+ return
+
+LilycoveCity_ContestLobby_EventScript_158A2B:: @ 8158A2B
+ setflag 161
+ return
+
+LilycoveCity_ContestLobby_EventScript_158A2F:: @ 8158A2F
+ setflag 162
+ return
+
+LilycoveCity_ContestLobby_EventScript_158A33:: @ 8158A33
+ setflag 163
+ return
+
+LilycoveCity_ContestLobby_EventScript_158A37:: @ 8158A37
+ setflag 164
+ return
+
+LilycoveCity_ContestLobby_Movement_158A3B:: @ 8158A3B
+ step_down
+ step_down
+ step_down
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+LilycoveCity_ContestLobby_Movement_158A43:: @ 8158A43
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_end
+
+LilycoveCity_ContestLobby_Movement_158A4C:: @ 8158A4C
+ step_27
+ step_end
+
+LilycoveCity_ContestLobby_Movement_158A4E:: @ 8158A4E
+ step_down
+ step_down
+ step_down
+ step_end
+
+LilycoveCity_ContestLobby_Movement_158A52:: @ 8158A52
+ step_14
+ step_14
+ step_14
+ step_14
+ step_16
+ step_16
+ step_16
+ step_28
+ step_end
+
+LilycoveCity_ContestLobby_EventScript_158A5B:: @ 8158A5B
+ checkflag 775
+ jumpeq LilycoveCity_ContestLobby_EventScript_158A6A
+ setvar 0x4099, 0
+ end
+
+LilycoveCity_ContestLobby_EventScript_158A6A:: @ 8158A6A
+ lockall
+ reappear 11
+ move 11, LilycoveCity_ContestLobby_Movement_158B64
+ waitmove 11
+ move 255, LilycoveCity_ContestLobby_Movement_158B76
+ waitmove 0
+ msgbox LilycoveCity_ContestLobby_Text_18890F, 4
+ lockall
+ fadescreen 1
+ showcontestwinner 0
+ msgbox LilycoveCity_ContestLobby_Text_1889FD, 5
+ compare RESULT, 1
+ jumpeq LilycoveCity_ContestLobby_EventScript_158AAE
+ compare RESULT, 0
+ jumpeq LilycoveCity_ContestLobby_EventScript_158AE8
+ end
+
+LilycoveCity_ContestLobby_EventScript_158AAE:: @ 8158AAE
+ msgbox LilycoveCity_ContestLobby_Text_188AE8, 4
+ closebutton
+ special 135
+ setvar 0x4099, 0
+ specialval RESULT, 91
+ compare RESULT, 1
+ callif 1, LilycoveCity_ContestLobby_EventScript_158B18
+ move 11, LilycoveCity_ContestLobby_Movement_158B6D
+ waitmove 0
+ disappear 11
+ call LilycoveCity_ContestLobby_EventScript_158994
+ call LilycoveCity_ContestLobby_EventScript_1589EA
+ releaseall
+ end
+
+LilycoveCity_ContestLobby_EventScript_158AE8:: @ 8158AE8
+ msgbox LilycoveCity_ContestLobby_Text_188C41, 5
+ compare RESULT, 1
+ jumpeq LilycoveCity_ContestLobby_EventScript_158AAE
+ msgbox LilycoveCity_ContestLobby_Text_188CBD, 4
+ closebutton
+ move 11, LilycoveCity_ContestLobby_Movement_158B6D
+ waitmove 0
+ setvar 0x4099, 0
+ disappear 11
+ releaseall
+ end
+
+LilycoveCity_ContestLobby_EventScript_158B18:: @ 8158B18
+ inccounter 42
+ special 80
+ move 11, LilycoveCity_ContestLobby_Movement_158B78
+ waitmove 0
+ playsfx 21
+ move 11, LilycoveCity_ContestLobby_Movement_1A0833
+ waitmove 0
+ move 11, LilycoveCity_ContestLobby_Movement_158B7C
+ waitmove 0
+ msgbox LilycoveCity_ContestLobby_Text_188BB5, 4
+ fanfare 370
+ msgbox LilycoveCity_ContestLobby_Text_188C03, 4
+ waitfanfare
+ msgbox LilycoveCity_ContestLobby_Text_188C19, 4
+ msgbox LilycoveCity_ContestLobby_Text_188C32, 4
+ closebutton
+ return
+
+LilycoveCity_ContestLobby_Movement_158B64:: @ 8158B64
+ step_down
+ step_down
+ step_down
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_end
+
+LilycoveCity_ContestLobby_Movement_158B6D:: @ 8158B6D
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_end
+
+LilycoveCity_ContestLobby_Movement_158B76:: @ 8158B76
+ step_28
+ step_end
+
+LilycoveCity_ContestLobby_Movement_158B78:: @ 8158B78
+ step_down
+ step_down
+ step_down
+ step_end
+
+LilycoveCity_ContestLobby_Movement_158B7C:: @ 8158B7C
+ step_14
+ step_14
+ step_14
+ step_14
+ step_16
+ step_16
+ step_16
+ step_27
+ step_end
+
+LilycoveCity_ContestLobby_EventScript_158B85:: @ 8158B85
+ lockall
+ checkitem ITEM_CONTEST_PASS, 1
+ compare RESULT, 0
+ jumpeq LilycoveCity_ContestLobby_EventScript_158BBA
+ checkflag 2
+ jumpeq LilycoveCity_ContestLobby_EventScript_158BAE
+ message LilycoveCity_ContestLobby_Text_18848C
+ waittext
+ setflag 2
+ jump LilycoveCity_ContestLobby_EventScript_158BF0
+ end
+
+LilycoveCity_ContestLobby_EventScript_158BAE:: @ 8158BAE
+ message LilycoveCity_ContestLobby_Text_188584
+ waittext
+ jump LilycoveCity_ContestLobby_EventScript_158BF0
+ end
+
+LilycoveCity_ContestLobby_EventScript_158BBA:: @ 8158BBA
+ msgbox LilycoveCity_ContestLobby_Text_1A63F4, 4
+ releaseall
+ end
+
+LilycoveCity_ContestLobby_EventScript_158BC4:: @ 8158BC4
+ msgbox LilycoveCity_ContestLobby_Text_188521, 5
+ compare RESULT, 0
+ jumpeq LilycoveCity_ContestLobby_EventScript_158C35
+ call LilycoveCity_ContestLobby_EventScript_19F806
+ hidebox 0, 0, 15, 9
+ compare RESULT, 0
+ jumpeq LilycoveCity_ContestLobby_EventScript_158C35
+ setflag 3
+ return
+
+LilycoveCity_ContestLobby_EventScript_158BF0:: @ 8158BF0
+ multichoice 0, 0, 2, 0
+ switch RESULT
+ case 0, LilycoveCity_ContestLobby_EventScript_158CEA
+ case 1, LilycoveCity_ContestLobby_EventScript_158C27
+ case 2, LilycoveCity_ContestLobby_EventScript_158C35
+ case 127, LilycoveCity_ContestLobby_EventScript_158C35
+ end
+
+LilycoveCity_ContestLobby_EventScript_158C27:: @ 8158C27
+ msgbox LilycoveCity_ContestLobby_Text_1885A7, 4
+ jump LilycoveCity_ContestLobby_EventScript_158B85
+ end
+
+LilycoveCity_ContestLobby_EventScript_158C35:: @ 8158C35
+ msgbox LilycoveCity_ContestLobby_Text_188559, 4
+ releaseall
+ clearflag 3
+ end
+
+LilycoveCity_ContestLobby_EventScript_158C42:: @ 8158C42
+ msgbox LilycoveCity_ContestLobby_Text_188703, 4
+ setvar 0x8010, 0
+ choosecontestpkmn
+ compare 0x8004, 255
+ jumpeq LilycoveCity_ContestLobby_EventScript_158CEA
+ special 84
+ compare RESULT, 0
+ jumpeq LilycoveCity_ContestLobby_EventScript_158C96
+ compare RESULT, 1
+ jumpeq LilycoveCity_ContestLobby_EventScript_158CC0
+ compare RESULT, 2
+ jumpeq LilycoveCity_ContestLobby_EventScript_158CC0
+ compare RESULT, 3
+ jumpeq LilycoveCity_ContestLobby_EventScript_158CA4
+ compare RESULT, 4
+ jumpeq LilycoveCity_ContestLobby_EventScript_158CB2
+ end
+
+LilycoveCity_ContestLobby_EventScript_158C96:: @ 8158C96
+ msgbox LilycoveCity_ContestLobby_Text_1A664A, 4
+ jump LilycoveCity_ContestLobby_EventScript_158C42
+ end
+
+LilycoveCity_ContestLobby_EventScript_158CA4:: @ 8158CA4
+ msgbox LilycoveCity_ContestLobby_Text_1A669F, 4
+ jump LilycoveCity_ContestLobby_EventScript_158C42
+ end
+
+LilycoveCity_ContestLobby_EventScript_158CB2:: @ 8158CB2
+ msgbox LilycoveCity_ContestLobby_Text_1A66DC, 4
+ jump LilycoveCity_ContestLobby_EventScript_158C42
+ end
+
+LilycoveCity_ContestLobby_EventScript_158CC0:: @ 8158CC0
+ copyvar 0x8008, 0x8004
+ message LilycoveCity_ContestLobby_Text_1A67A3
+ waittext
+ yesnobox 20, 8
+ switch RESULT
+ case 0, LilycoveCity_ContestLobby_EventScript_158C42
+ case 1, LilycoveCity_ContestLobby_EventScript_158D24
+ end
+
+LilycoveCity_ContestLobby_EventScript_158CEA:: @ 8158CEA
+ checkflag 3
+ callif 0, LilycoveCity_ContestLobby_EventScript_158BC4
+ message LilycoveCity_ContestLobby_Text_1886DC
+ waittext
+ multichoice 0, 0, 4, 0
+ switch RESULT
+ case 5, LilycoveCity_ContestLobby_EventScript_158C35
+ case 127, LilycoveCity_ContestLobby_EventScript_158C35
+ copyvar 0x8011, RESULT
+ jump LilycoveCity_ContestLobby_EventScript_158C42
+ end
+
+LilycoveCity_ContestLobby_EventScript_158D24:: @ 8158D24
+ message LilycoveCity_ContestLobby_Text_1887C7
+ waittext
+ copyvar 0x8004, RESULT
+ special 92
+ waitstate
+ compare RESULT, 3
+ jumpeq LilycoveCity_ContestLobby_EventScript_158D90
+ compare RESULT, 5
+ jumpeq LilycoveCity_ContestLobby_EventScript_158DA1
+ compare RESULT, 6
+ jumpeq LilycoveCity_ContestLobby_EventScript_158DB2
+ message2 LilycoveCity_ContestLobby_Text_18872A
+ waittext
+ contestlinktransfer
+ switch 0x8004
+ case 0, LilycoveCity_ContestLobby_EventScript_158DD1
+ case 1, LilycoveCity_ContestLobby_EventScript_158D82
+ case 2, LilycoveCity_ContestLobby_EventScript_158DC3
+ end
+
+LilycoveCity_ContestLobby_EventScript_158D82:: @ 8158D82
+ msgbox LilycoveCity_ContestLobby_Text_188750, 4
+ jump LilycoveCity_ContestLobby_EventScript_158CEA
+ end
+
+LilycoveCity_ContestLobby_EventScript_158D90:: @ 8158D90
+ special 31
+ msgbox LilycoveCity_ContestLobby_Text_18878D, 4
+ closebutton
+ releaseall
+ clearflag 3
+ end
+
+LilycoveCity_ContestLobby_EventScript_158DA1:: @ 8158DA1
+ special 31
+ msgbox LilycoveCity_ContestLobby_Text_1887F4, 4
+ closebutton
+ releaseall
+ clearflag 3
+ end
+
+LilycoveCity_ContestLobby_EventScript_158DB2:: @ 8158DB2
+ special 31
+ msgbox LilycoveCity_ContestLobby_Text_18881F, 4
+ closebutton
+ releaseall
+ clearflag 3
+ end
+
+LilycoveCity_ContestLobby_EventScript_158DC3:: @ 8158DC3
+ msgbox LilycoveCity_ContestLobby_Text_18873A, 4
+ jump LilycoveCity_ContestLobby_EventScript_158CEA
+ end
+
+LilycoveCity_ContestLobby_EventScript_158DD1:: @ 8158DD1
+ special 77
+ addvar 0x8004, 1
+ buffernum 1, 32772
+ message2 LilycoveCity_ContestLobby_Text_188845
+ waittext
+ addvar 0x8004, 65535
+ jump LilycoveCity_ContestLobby_EventScript_158DEE
+ end
+
+LilycoveCity_ContestLobby_EventScript_158DEE:: @ 8158DEE
+ call LilycoveCity_ContestLobby_EventScript_158E0B
+ setvar 0x4086, 1
+ special 86
+ setvar 0x4088, 5
+ setvar 0x8010, 3
+ call LilycoveCity_ContestLobby_EventScript_158F08
+ end
+
+LilycoveCity_ContestLobby_EventScript_158E0B:: @ 8158E0B
+ lockall
+ message2 LilycoveCity_ContestLobby_Text_1888C6
+ waittext
+ pause 20
+ closebutton
+ move 2, LilycoveCity_ContestLobby_Movement_158E9C
+ waitmove 0
+ playsfx 71
+ setmaptile 9, 2, 545, 1
+ setmaptile 9, 3, 609, 1
+ special 142
+ move 2, LilycoveCity_ContestLobby_Movement_158EA0
+ waitmove 0
+ playsfx 71
+ setmaptile 9, 2, 721, 1
+ setmaptile 9, 3, 729, 1
+ special 142
+ pause 20
+ move 2, LilycoveCity_ContestLobby_Movement_158EAE
+ waitmove 0
+ move 255, LilycoveCity_ContestLobby_Movement_158E99
+ waitmove 0
+ message2 LilycoveCity_ContestLobby_Text_1A6832
+ waittext
+ pause 20
+ closebutton
+ move 2, LilycoveCity_ContestLobby_Movement_158EA4
+ move 255, LilycoveCity_ContestLobby_Movement_158E8E
+ waitmove 0
+ releaseall
+ return
+
+LilycoveCity_ContestLobby_Movement_158E8E:: @ 8158E8E
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_up
+ step_up
+ step_up
+ step_13
+ step_54
+ step_end
+
+LilycoveCity_ContestLobby_Movement_158E99:: @ 8158E99
+ step_28
+ step_right
+ step_end
+
+LilycoveCity_ContestLobby_Movement_158E9C:: @ 8158E9C
+ step_right
+ step_right
+ step_25
+ step_end
+
+LilycoveCity_ContestLobby_Movement_158EA0:: @ 8158EA0
+ step_down
+ step_down
+ step_26
+ step_end
+
+LilycoveCity_ContestLobby_Movement_158EA4:: @ 8158EA4
+ step_right
+ step_right
+ step_right
+ step_right
+ step_up
+ step_up
+ step_up
+ step_13
+ step_54
+ step_end
+
+LilycoveCity_ContestLobby_Movement_158EAE:: @ 8158EAE
+ step_27
+ step_end
+
+LilycoveCity_ContestLobby_EventScript_158EB0:: @ 8158EB0
+ specialval RESULT, 90
+ compare RESULT, 1
+ jumpeq LilycoveCity_ContestLobby_EventScript_158EE8
+ setvar 0x800b, 8
+ setvar 0x8010, 3
+ call LilycoveCity_ContestLobby_EventScript_1A4E92
+ call LilycoveCity_ContestLobby_EventScript_158F86
+ special 83
+ call LilycoveCity_ContestLobby_EventScript_15FBDB
+ setvar 0x4088, 4
+ call LilycoveCity_ContestLobby_EventScript_158F08
+ waitstate
+ end
+
+LilycoveCity_ContestLobby_EventScript_158EE8:: @ 8158EE8
+ setflag 775
+ copyvar 0x4094, 0x1
+ additem ITEM_CONTEST_PASS, 1
+ setvar 0x800b, 8
+ setvar 0x8010, 3
+ setvar 0x4099, 1
+ setflag 2107
+ end
+
+LilycoveCity_ContestLobby_EventScript_158F08:: @ 8158F08
+ switch 0x8011
+ case 0, LilycoveCity_ContestLobby_EventScript_158F45
+ case 1, LilycoveCity_ContestLobby_EventScript_158F52
+ case 2, LilycoveCity_ContestLobby_EventScript_158F5F
+ case 3, LilycoveCity_ContestLobby_EventScript_158F6C
+ case 4, LilycoveCity_ContestLobby_EventScript_158F79
+ return
+
+LilycoveCity_ContestLobby_EventScript_158F45:: @ 8158F45
+ warp3 LinkContestRoom4, 255, 7, 5
+ special 300
+ waitstate
+ return
+
+LilycoveCity_ContestLobby_EventScript_158F52:: @ 8158F52
+ warp3 LinkContestRoom2, 255, 7, 5
+ special 300
+ waitstate
+ return
+
+LilycoveCity_ContestLobby_EventScript_158F5F:: @ 8158F5F
+ warp3 LinkContestRoom6, 255, 7, 5
+ special 300
+ waitstate
+ return
+
+LilycoveCity_ContestLobby_EventScript_158F6C:: @ 8158F6C
+ warp3 LinkContestRoom5, 255, 7, 5
+ special 300
+ waitstate
+ return
+
+LilycoveCity_ContestLobby_EventScript_158F79:: @ 8158F79
+ warp3 LinkContestRoom3, 255, 7, 5
+ special 300
+ waitstate
+ return
+
+LilycoveCity_ContestLobby_EventScript_158F86:: @ 8158F86
+ lockall
+ move 1, LilycoveCity_ContestLobby_Movement_15900B
+ waitmove 0
+ playsfx 71
+ setmaptile 4, 2, 545, 1
+ setmaptile 4, 3, 609, 1
+ special 142
+ move 1, LilycoveCity_ContestLobby_Movement_15900F
+ waitmove 0
+ playsfx 71
+ setmaptile 4, 2, 721, 1
+ setmaptile 4, 3, 729, 1
+ special 142
+ pause 20
+ move 1, LilycoveCity_ContestLobby_Movement_15901C
+ waitmove 0
+ move 255, LilycoveCity_ContestLobby_Movement_159008
+ waitmove 0
+ msgbox LilycoveCity_ContestLobby_Text_1A6832, 4
+ closebutton
+ move 1, LilycoveCity_ContestLobby_Movement_159013
+ move 255, LilycoveCity_ContestLobby_Movement_158FFE
+ waitmove 0
+ releaseall
+ return
+
+LilycoveCity_ContestLobby_Movement_158FFE:: @ 8158FFE
+ step_left
+ step_left
+ step_left
+ step_left
+ step_up
+ step_up
+ step_up
+ step_13
+ step_54
+ step_end
+
+LilycoveCity_ContestLobby_Movement_159008:: @ 8159008
+ step_27
+ step_left
+ step_end
+
+LilycoveCity_ContestLobby_Movement_15900B:: @ 815900B
+ step_left
+ step_left
+ step_25
+ step_end
+
+LilycoveCity_ContestLobby_Movement_15900F:: @ 815900F
+ step_down
+ step_down
+ step_26
+ step_end
+
+LilycoveCity_ContestLobby_Movement_159013:: @ 8159013
+ step_left
+ step_left
+ step_left
+ step_up
+ step_up
+ step_up
+ step_13
+ step_54
+ step_end
+
+LilycoveCity_ContestLobby_Movement_15901C:: @ 815901C
+ step_28
+ step_end
+
+LilycoveCity_ContestLobby_EventScript_15901E:: @ 815901E
+ msgbox LilycoveCity_ContestLobby_Text_188D3C, 2
+ end
+
+LilycoveCity_ContestLobby_EventScript_159027:: @ 8159027
+ checkflag 150
+ jumpif 0, LilycoveCity_ContestLobby_EventScript_159039
+ msgbox LilycoveCity_ContestLobby_Text_188DDA, 2
+ end
+
+LilycoveCity_ContestLobby_EventScript_159039:: @ 8159039
+ msgbox LilycoveCity_ContestLobby_Text_188E47, 2
+ end
+
+LilycoveCity_ContestLobby_EventScript_159042:: @ 8159042
+ msgbox LilycoveCity_ContestLobby_Text_188F07, 2
+ end
+
+LilycoveCity_ContestLobby_EventScript_15904B:: @ 815904B
+ msgbox LilycoveCity_ContestLobby_Text_188F81, 2
+ end
+
+LilycoveCity_ContestLobby_EventScript_159054:: @ 8159054
+ msgbox LilycoveCity_ContestLobby_Text_188FE3, 2
+ end
+
+LilycoveCity_ContestLobby_EventScript_15905D:: @ 815905D
+ msgbox LilycoveCity_ContestLobby_Text_18904D, 2
+ end
+
+LilycoveCity_ContestLobby_EventScript_159066:: @ 8159066
+ lockall
+ fadescreen 1
+ showcontestwinner 6
+ releaseall
+ end
+
+LilycoveCity_ContestLobby_EventScript_15906D:: @ 815906D
+ lockall
+ fadescreen 1
+ showcontestwinner 7
+ releaseall
+ end
+
+LilycoveCity_ContestLobby_EventScript_159074:: @ 8159074
+ lockall
+ fadescreen 1
+ showcontestwinner 8
+ releaseall
+ end
+
+LilycoveCity_ContestLobby_EventScript_15907B:: @ 815907B
+ msgbox LilycoveCity_ContestLobby_Text_1B7225, 2
+ end
+
+LilycoveCity_ContestLobby_EventScript_159084:: @ 8159084
+ msgbox LilycoveCity_ContestLobby_Text_1B7241, 2
+ end
+
+LilycoveCity_ContestLobby_EventScript_15908D:: @ 815908D
+SlateportCity_ContestLobby_EventScript_15908D:: @ 815908D
+ lockall
+ special 259
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
diff --git a/data/maps/scripts/LilycoveCity_CoveLilyMotel_1F.s b/data/maps/scripts/LilycoveCity_CoveLilyMotel_1F.s
new file mode 100644
index 000000000..95047f532
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_CoveLilyMotel_1F.s
@@ -0,0 +1,77 @@
+LilycoveCity_CoveLilyMotel_1F_MapScripts:: @ 81582C4
+ .byte 0
+
+LilycoveCity_CoveLilyMotel_1F_EventScript_1582C5:: @ 81582C5
+ lockall
+ checkflag 2052
+ jumpeq LilycoveCity_CoveLilyMotel_1F_EventScript_158326
+ checkflag 2061
+ jumpeq LilycoveCity_CoveLilyMotel_1F_EventScript_1582FF
+ msgbox LilycoveCity_CoveLilyMotel_1F_Text_186B71, 4
+ move 1, LilycoveCity_CoveLilyMotel_1F_Movement_1A0839
+ waitmove 0
+ msgbox LilycoveCity_CoveLilyMotel_1F_Text_186C2B, 4
+ closebutton
+ move 1, LilycoveCity_CoveLilyMotel_1F_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_CoveLilyMotel_1F_EventScript_1582FF:: @ 81582FF
+ msgbox LilycoveCity_CoveLilyMotel_1F_Text_186CCE, 4
+ move 1, LilycoveCity_CoveLilyMotel_1F_Movement_1A0839
+ waitmove 0
+ msgbox LilycoveCity_CoveLilyMotel_1F_Text_186D7F, 4
+ closebutton
+ move 1, LilycoveCity_CoveLilyMotel_1F_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_CoveLilyMotel_1F_EventScript_158326:: @ 8158326
+ msgbox LilycoveCity_CoveLilyMotel_1F_Text_186E57, 4
+ move 1, LilycoveCity_CoveLilyMotel_1F_Movement_1A0839
+ waitmove 0
+ msgbox LilycoveCity_CoveLilyMotel_1F_Text_186F09, 4
+ closebutton
+ move 1, LilycoveCity_CoveLilyMotel_1F_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_CoveLilyMotel_1F_EventScript_15834D:: @ 815834D
+ lockall
+ playsfx 21
+ move 1, LilycoveCity_CoveLilyMotel_1F_Movement_1A0833
+ waitmove 0
+ move 1, LilycoveCity_CoveLilyMotel_1F_Movement_1A0835
+ waitmove 0
+ move 255, LilycoveCity_CoveLilyMotel_1F_Movement_1A0845
+ waitmove 0
+ msgbox LilycoveCity_CoveLilyMotel_1F_Text_186CA6, 4
+ closebutton
+ move 255, LilycoveCity_CoveLilyMotel_1F_Movement_158395
+ move 1, LilycoveCity_CoveLilyMotel_1F_Movement_15839A
+ waitmove 0
+ move 1, LilycoveCity_CoveLilyMotel_1F_Movement_15839C
+ waitmove 0
+ release
+ end
+
+LilycoveCity_CoveLilyMotel_1F_Movement_158395:: @ 8158395
+ step_03
+ step_40
+ step_left
+ step_41
+ step_end
+
+LilycoveCity_CoveLilyMotel_1F_Movement_15839A:: @ 815839A
+ step_up
+ step_end
+
+LilycoveCity_CoveLilyMotel_1F_Movement_15839C:: @ 815839C
+ step_00
+ step_down
+ step_01
+ step_end
+
diff --git a/data/maps/scripts/LilycoveCity_CoveLilyMotel_2F.s b/data/maps/scripts/LilycoveCity_CoveLilyMotel_2F.s
new file mode 100644
index 000000000..5f9c6cd08
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_CoveLilyMotel_2F.s
@@ -0,0 +1,56 @@
+LilycoveCity_CoveLilyMotel_2F_MapScripts:: @ 81583A0
+ .byte 0
+
+LilycoveCity_CoveLilyMotel_2F_EventScript_1583A1:: @ 81583A1
+ lock
+ faceplayer
+ checkflag 2
+ callif 0, LilycoveCity_CoveLilyMotel_2F_EventScript_1583C7
+ checkflag 2
+ callif 1, LilycoveCity_CoveLilyMotel_2F_EventScript_1583DD
+ specialval RESULT, 335
+ compare RESULT, 1
+ jumpeq LilycoveCity_CoveLilyMotel_2F_EventScript_1583D0
+ release
+ end
+
+LilycoveCity_CoveLilyMotel_2F_EventScript_1583C7:: @ 81583C7
+ msgbox LilycoveCity_CoveLilyMotel_2F_Text_186FE7, 4
+ return
+
+LilycoveCity_CoveLilyMotel_2F_EventScript_1583D0:: @ 81583D0
+ setflag 2
+ fanfare 370
+ waitfanfare
+ jump LilycoveCity_CoveLilyMotel_2F_EventScript_1583DD
+ end
+
+LilycoveCity_CoveLilyMotel_2F_EventScript_1583DD:: @ 81583DD
+ message LilycoveCity_CoveLilyMotel_2F_Text_18708F
+ waittext
+ call LilycoveCity_CoveLilyMotel_2F_EventScript_1A02C5
+ special 264
+ waitstate
+ release
+ end
+
+LilycoveCity_CoveLilyMotel_2F_EventScript_1583EE:: @ 81583EE
+ msgbox LilycoveCity_CoveLilyMotel_2F_Text_187149, 2
+ end
+
+LilycoveCity_CoveLilyMotel_2F_EventScript_1583F7:: @ 81583F7
+ msgbox LilycoveCity_CoveLilyMotel_2F_Text_18719E, 2
+ end
+
+LilycoveCity_CoveLilyMotel_2F_EventScript_158400:: @ 8158400
+ msgbox LilycoveCity_CoveLilyMotel_2F_Text_1871DF, 2
+ end
+
+LilycoveCity_CoveLilyMotel_2F_EventScript_158409:: @ 8158409
+ msgbox LilycoveCity_CoveLilyMotel_2F_Text_18729A, 2
+ end
+
+LilycoveCity_CoveLilyMotel_2F_EventScript_158412:: @ 8158412
+ msgbox LilycoveCity_CoveLilyMotel_2F_Text_1872D4, 2
+ end
+
diff --git a/data/maps/scripts/LilycoveCity_DepartmentStoreElevator.s b/data/maps/scripts/LilycoveCity_DepartmentStoreElevator.s
new file mode 100644
index 000000000..1dfacdfbf
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_DepartmentStoreElevator.s
@@ -0,0 +1,85 @@
+LilycoveCity_DepartmentStoreElevator_MapScripts:: @ 815A39B
+ .byte 0
+
+LilycoveCity_DepartmentStoreElevator_EventScript_15A39C:: @ 815A39C
+ lock
+ faceplayer
+ checkflag 2
+ callif 0, LilycoveCity_DepartmentStoreElevator_EventScript_15A4CF
+ copyvar 0x8005, 0x4043
+ special 306
+ message LilycoveCity_DepartmentStoreElevator_Text_1A0EF6
+ waittext
+ multichoice 0, 0, 57, 0
+ switch RESULT
+ case 0, LilycoveCity_DepartmentStoreElevator_EventScript_15A402
+ case 1, LilycoveCity_DepartmentStoreElevator_EventScript_15A425
+ case 2, LilycoveCity_DepartmentStoreElevator_EventScript_15A448
+ case 3, LilycoveCity_DepartmentStoreElevator_EventScript_15A46B
+ case 4, LilycoveCity_DepartmentStoreElevator_EventScript_15A48E
+ case 127, LilycoveCity_DepartmentStoreElevator_EventScript_15A4B1
+ end
+
+LilycoveCity_DepartmentStoreElevator_EventScript_15A402:: @ 815A402
+ warpplace LilycoveCity_DepartmentStore_1F, 255, 2, 1
+ compare 0x4043, 0
+ jumpeq LilycoveCity_DepartmentStoreElevator_EventScript_15A4B1
+ call LilycoveCity_DepartmentStoreElevator_EventScript_15A4B8
+ setvar 0x4043, 0
+ jump LilycoveCity_DepartmentStoreElevator_EventScript_15A4B1
+ end
+
+LilycoveCity_DepartmentStoreElevator_EventScript_15A425:: @ 815A425
+ warpplace LilycoveCity_DepartmentStore_2F, 255, 2, 1
+ compare 0x4043, 1
+ jumpeq LilycoveCity_DepartmentStoreElevator_EventScript_15A4B1
+ call LilycoveCity_DepartmentStoreElevator_EventScript_15A4B8
+ setvar 0x4043, 1
+ jump LilycoveCity_DepartmentStoreElevator_EventScript_15A4B1
+ end
+
+LilycoveCity_DepartmentStoreElevator_EventScript_15A448:: @ 815A448
+ warpplace LilycoveCity_DepartmentStore_3F, 255, 2, 1
+ compare 0x4043, 2
+ jumpeq LilycoveCity_DepartmentStoreElevator_EventScript_15A4B1
+ call LilycoveCity_DepartmentStoreElevator_EventScript_15A4B8
+ setvar 0x4043, 2
+ jump LilycoveCity_DepartmentStoreElevator_EventScript_15A4B1
+ end
+
+LilycoveCity_DepartmentStoreElevator_EventScript_15A46B:: @ 815A46B
+ warpplace LilycoveCity_DepartmentStore_4F, 255, 2, 1
+ compare 0x4043, 3
+ jumpeq LilycoveCity_DepartmentStoreElevator_EventScript_15A4B1
+ call LilycoveCity_DepartmentStoreElevator_EventScript_15A4B8
+ setvar 0x4043, 3
+ jump LilycoveCity_DepartmentStoreElevator_EventScript_15A4B1
+ end
+
+LilycoveCity_DepartmentStoreElevator_EventScript_15A48E:: @ 815A48E
+ warpplace LilycoveCity_DepartmentStore_5F, 255, 2, 1
+ compare 0x4043, 4
+ jumpeq LilycoveCity_DepartmentStoreElevator_EventScript_15A4B1
+ call LilycoveCity_DepartmentStoreElevator_EventScript_15A4B8
+ setvar 0x4043, 4
+ jump LilycoveCity_DepartmentStoreElevator_EventScript_15A4B1
+ end
+
+LilycoveCity_DepartmentStoreElevator_EventScript_15A4B1:: @ 815A4B1
+ hidebox 0, 0, 29, 19
+ release
+ end
+
+LilycoveCity_DepartmentStoreElevator_EventScript_15A4B8:: @ 815A4B8
+ hidebox 0, 0, 29, 19
+ move LAST_TALKED, LilycoveCity_DepartmentStoreElevator_Movement_1A0845
+ waitmove 0
+ special 273
+ waitstate
+ setflag 2
+ return
+
+LilycoveCity_DepartmentStoreElevator_EventScript_15A4CF:: @ 815A4CF
+ special 216
+ return
+
diff --git a/data/maps/scripts/LilycoveCity_DepartmentStoreRooftop.s b/data/maps/scripts/LilycoveCity_DepartmentStoreRooftop.s
new file mode 100644
index 000000000..b98cc38b5
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_DepartmentStoreRooftop.s
@@ -0,0 +1,204 @@
+LilycoveCity_DepartmentStoreRooftop_MapScripts:: @ 815A13F
+ map_script 3, LilycoveCity_DepartmentStoreRooftop_MapScript1_15A145
+ .byte 0
+
+LilycoveCity_DepartmentStoreRooftop_MapScript1_15A145:: @ 815A145
+ event_96 3
+ compare RESULT, 1
+ callif 1, LilycoveCity_DepartmentStoreRooftop_EventScript_15A15F
+ compare RESULT, 0
+ callif 1, LilycoveCity_DepartmentStoreRooftop_EventScript_15A163
+ end
+
+LilycoveCity_DepartmentStoreRooftop_EventScript_15A15F:: @ 815A15F
+ clearflag 962
+ return
+
+LilycoveCity_DepartmentStoreRooftop_EventScript_15A163:: @ 815A163
+ setflag 962
+ return
+
+LilycoveCity_DepartmentStoreRooftop_EventScript_15A167:: @ 815A167
+ lock
+ faceplayer
+ message LilycoveCity_DepartmentStoreRooftop_Text_1A0BE4
+ waittext
+ pokemartdecor LilycoveCity_DepartmentStoreRooftop_PokemartDecor_15A180
+ msgbox LilycoveCity_DepartmentStoreRooftop_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x15a17e, 0x2
+
+LilycoveCity_DepartmentStoreRooftop_PokemartDecor_15A180:: @ 815A180
+ .2byte 39
+ .2byte 35
+ .2byte 36
+ .2byte 37
+ .2byte 40
+ .2byte 33
+ .2byte 41
+ .2byte 38
+ .2byte 34
+ .2byte 45
+ .2byte 46
+ .2byte 47
+ .2byte 117
+ .2byte 112
+ .2byte 0
+ release
+ end
+
+LilycoveCity_DepartmentStoreRooftop_EventScript_15A1A0:: @ 815A1A0
+ lock
+ faceplayer
+ event_96 3
+ compare RESULT, 1
+ callif 1, LilycoveCity_DepartmentStoreRooftop_EventScript_15A1BA
+ msgbox LilycoveCity_DepartmentStoreRooftop_Text_18C61F, 4
+ release
+ end
+
+LilycoveCity_DepartmentStoreRooftop_EventScript_15A1BA:: @ 815A1BA
+ msgbox LilycoveCity_DepartmentStoreRooftop_Text_18C685, 4
+ release
+ end
+
+LilycoveCity_DepartmentStoreRooftop_EventScript_15A1C4:: @ 815A1C4
+ msgbox LilycoveCity_DepartmentStoreRooftop_Text_18C70E, 2
+ end
+
+LilycoveCity_DepartmentStoreRooftop_EventScript_15A1CD:: @ 815A1CD
+ lockall
+ message LilycoveCity_DepartmentStoreRooftop_Text_18C72B
+ waittext
+ showmoney 0, 0
+ snop
+ jump LilycoveCity_DepartmentStoreRooftop_EventScript_15A1DE
+ end
+
+LilycoveCity_DepartmentStoreRooftop_EventScript_15A1DE:: @ 815A1DE
+ multichoice 16, 0, 42, 0
+ copyvar 0x4001, RESULT
+ switch 0x4001
+ case 0, LilycoveCity_DepartmentStoreRooftop_EventScript_15A21C
+ case 1, LilycoveCity_DepartmentStoreRooftop_EventScript_15A227
+ case 2, LilycoveCity_DepartmentStoreRooftop_EventScript_15A232
+ msgbox LilycoveCity_DepartmentStoreRooftop_Text_18C7C3, 4
+ jump LilycoveCity_DepartmentStoreRooftop_EventScript_15A396
+ end
+
+LilycoveCity_DepartmentStoreRooftop_EventScript_15A21C:: @ 815A21C
+ setvar 0x4000, 26
+ jump LilycoveCity_DepartmentStoreRooftop_EventScript_15A267
+ end
+
+LilycoveCity_DepartmentStoreRooftop_EventScript_15A227:: @ 815A227
+ setvar 0x4000, 27
+ jump LilycoveCity_DepartmentStoreRooftop_EventScript_15A267
+ end
+
+LilycoveCity_DepartmentStoreRooftop_EventScript_15A232:: @ 815A232
+ setvar 0x4000, 28
+ jump LilycoveCity_DepartmentStoreRooftop_EventScript_15A267
+ end
+
+LilycoveCity_DepartmentStoreRooftop_EventScript_15A23D:: @ 815A23D
+ checkmoney 0xc8, 0
+ return
+
+LilycoveCity_DepartmentStoreRooftop_EventScript_15A244:: @ 815A244
+ checkmoney 0x12c, 0
+ return
+
+LilycoveCity_DepartmentStoreRooftop_EventScript_15A24B:: @ 815A24B
+ checkmoney 0x15e, 0
+ return
+
+LilycoveCity_DepartmentStoreRooftop_EventScript_15A252:: @ 815A252
+ paymoney 0xc8, 0
+ return
+
+LilycoveCity_DepartmentStoreRooftop_EventScript_15A259:: @ 815A259
+ paymoney 0x12c, 0
+ return
+
+LilycoveCity_DepartmentStoreRooftop_EventScript_15A260:: @ 815A260
+ paymoney 0x15e, 0
+ return
+
+LilycoveCity_DepartmentStoreRooftop_EventScript_15A267:: @ 815A267
+ compare 0x4001, 0
+ callif 1, LilycoveCity_DepartmentStoreRooftop_EventScript_15A23D
+ compare 0x4001, 1
+ callif 1, LilycoveCity_DepartmentStoreRooftop_EventScript_15A244
+ compare 0x4001, 2
+ callif 1, LilycoveCity_DepartmentStoreRooftop_EventScript_15A24B
+ compare RESULT, 0
+ jumpeq LilycoveCity_DepartmentStoreRooftop_EventScript_15A37A
+ checkitemspace 0x4000, 1
+ compare RESULT, 0
+ jumpeq LilycoveCity_DepartmentStoreRooftop_EventScript_15A388
+ compare 0x4001, 0
+ callif 1, LilycoveCity_DepartmentStoreRooftop_EventScript_15A252
+ compare 0x4001, 1
+ callif 1, LilycoveCity_DepartmentStoreRooftop_EventScript_15A259
+ compare 0x4001, 2
+ callif 1, LilycoveCity_DepartmentStoreRooftop_EventScript_15A260
+ updatemoney 0, 0
+ snop
+ bufferitem 0, 0x4000
+ playsfx 106
+ msgbox LilycoveCity_DepartmentStoreRooftop_Text_18C75F, 4
+ additem 0x4000, 1
+ bufferitem 1, 0x4000
+ bufferstd 2, 14
+ msgbox LilycoveCity_DepartmentStoreRooftop_Text_1A0C8C, 4
+ random 64
+ compare RESULT, 0
+ jumpif 5, LilycoveCity_DepartmentStoreRooftop_EventScript_15A36E
+ checkitemspace 0x4000, 1
+ compare RESULT, 0
+ jumpeq LilycoveCity_DepartmentStoreRooftop_EventScript_15A388
+ playsfx 106
+ msgbox LilycoveCity_DepartmentStoreRooftop_Text_18C780, 4
+ additem 0x4000, 1
+ bufferitem 1, 0x4000
+ bufferstd 2, 14
+ msgbox LilycoveCity_DepartmentStoreRooftop_Text_1A0C8C, 4
+ random 64
+ compare RESULT, 0
+ jumpif 5, LilycoveCity_DepartmentStoreRooftop_EventScript_15A36E
+ checkitemspace 0x4000, 1
+ compare RESULT, 0
+ jumpeq LilycoveCity_DepartmentStoreRooftop_EventScript_15A388
+ playsfx 106
+ msgbox LilycoveCity_DepartmentStoreRooftop_Text_18C780, 4
+ additem 0x4000, 1
+ bufferitem 1, 0x4000
+ bufferstd 2, 14
+ msgbox LilycoveCity_DepartmentStoreRooftop_Text_1A0C8C, 4
+ jump LilycoveCity_DepartmentStoreRooftop_EventScript_15A36E
+ end
+
+LilycoveCity_DepartmentStoreRooftop_EventScript_15A36E:: @ 815A36E
+ message LilycoveCity_DepartmentStoreRooftop_Text_18C72B
+ waittext
+ jump LilycoveCity_DepartmentStoreRooftop_EventScript_15A1DE
+ end
+
+LilycoveCity_DepartmentStoreRooftop_EventScript_15A37A:: @ 815A37A
+ msgbox LilycoveCity_DepartmentStoreRooftop_Text_18C7AF, 4
+ jump LilycoveCity_DepartmentStoreRooftop_EventScript_15A396
+ end
+
+LilycoveCity_DepartmentStoreRooftop_EventScript_15A388:: @ 815A388
+ msgbox LilycoveCity_DepartmentStoreRooftop_Text_1A0C79, 4
+ jump LilycoveCity_DepartmentStoreRooftop_EventScript_15A396
+ end
+
+LilycoveCity_DepartmentStoreRooftop_EventScript_15A396:: @ 815A396
+ hidemoney 0, 0
+ releaseall
+ end
+
diff --git a/data/maps/scripts/LilycoveCity_DepartmentStore_1F.s b/data/maps/scripts/LilycoveCity_DepartmentStore_1F.s
new file mode 100644
index 000000000..8a84101aa
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_DepartmentStore_1F.s
@@ -0,0 +1,146 @@
+LilycoveCity_DepartmentStore_1F_MapScripts:: @ 8159D54
+ .byte 0
+
+LilycoveCity_DepartmentStore_1F_EventScript_159D55:: @ 8159D55
+ msgbox LilycoveCity_DepartmentStore_1F_Text_18BFB5, 2
+ end
+
+LilycoveCity_DepartmentStore_1F_EventScript_159D5E:: @ 8159D5E
+ lock
+ faceplayer
+ checkdailyflags
+ compare 0x4045, 0
+ jumpif 5, LilycoveCity_DepartmentStore_1F_EventScript_159EB1
+ checkflag 2250
+ jumpeq LilycoveCity_DepartmentStore_1F_EventScript_159E4C
+ msgbox LilycoveCity_DepartmentStore_1F_Text_1C4B5E, 5
+ compare RESULT, 0
+ jumpeq LilycoveCity_DepartmentStore_1F_EventScript_159E56
+ setflag 2250
+ message LilycoveCity_DepartmentStore_1F_Text_1C4CC6
+ waittext
+ special 257
+ copyvar 0x8008, RESULT
+ special 337
+ msgbox LilycoveCity_DepartmentStore_1F_Text_1C4CF6, 4
+ move 2, LilycoveCity_DepartmentStore_1F_Movement_1A0843
+ waitmove 0
+ playsfx 4
+ special 217
+ special 258
+ pause 220
+ special 218
+ pause 10
+ move 2, LilycoveCity_DepartmentStore_1F_Movement_1A0839
+ waitmove 0
+ compare 0x8004, 0
+ jumpeq LilycoveCity_DepartmentStore_1F_EventScript_159E60
+ inccounter 46
+ compare 0x8006, 0
+ callif 1, LilycoveCity_DepartmentStore_1F_EventScript_159E3A
+ compare 0x8006, 1
+ callif 1, LilycoveCity_DepartmentStore_1F_EventScript_159E43
+ bufferitem 0, 0x8005
+ compare 0x8004, 1
+ callif 1, LilycoveCity_DepartmentStore_1F_EventScript_159E78
+ compare 0x8004, 2
+ callif 1, LilycoveCity_DepartmentStore_1F_EventScript_159E81
+ compare 0x8004, 3
+ callif 1, LilycoveCity_DepartmentStore_1F_EventScript_159E8A
+ compare 0x8004, 4
+ callif 1, LilycoveCity_DepartmentStore_1F_EventScript_159E93
+ giveitem 0x8005
+ compare RESULT, 0
+ jumpeq LilycoveCity_DepartmentStore_1F_EventScript_159E9C
+ jump LilycoveCity_DepartmentStore_1F_EventScript_159E6E
+ end
+
+LilycoveCity_DepartmentStore_1F_EventScript_159E3A:: @ 8159E3A
+ msgbox LilycoveCity_DepartmentStore_1F_Text_1C4D7D, 4
+ return
+
+LilycoveCity_DepartmentStore_1F_EventScript_159E43:: @ 8159E43
+ msgbox LilycoveCity_DepartmentStore_1F_Text_1C4DD1, 4
+ return
+
+LilycoveCity_DepartmentStore_1F_EventScript_159E4C:: @ 8159E4C
+ msgbox LilycoveCity_DepartmentStore_1F_Text_1C4C6A, 4
+ release
+ end
+
+LilycoveCity_DepartmentStore_1F_EventScript_159E56:: @ 8159E56
+ msgbox LilycoveCity_DepartmentStore_1F_Text_1C4C85, 4
+ release
+ end
+
+LilycoveCity_DepartmentStore_1F_EventScript_159E60:: @ 8159E60
+ msgbox LilycoveCity_DepartmentStore_1F_Text_1C4E27, 4
+ jump LilycoveCity_DepartmentStore_1F_EventScript_159E6E
+ end
+
+LilycoveCity_DepartmentStore_1F_EventScript_159E6E:: @ 8159E6E
+ msgbox LilycoveCity_DepartmentStore_1F_Text_1C501C, 4
+ release
+ end
+
+LilycoveCity_DepartmentStore_1F_EventScript_159E78:: @ 8159E78
+ msgbox LilycoveCity_DepartmentStore_1F_Text_1C4E4F, 4
+ return
+
+LilycoveCity_DepartmentStore_1F_EventScript_159E81:: @ 8159E81
+ msgbox LilycoveCity_DepartmentStore_1F_Text_1C4E92, 4
+ return
+
+LilycoveCity_DepartmentStore_1F_EventScript_159E8A:: @ 8159E8A
+ msgbox LilycoveCity_DepartmentStore_1F_Text_1C4ED8, 4
+ return
+
+LilycoveCity_DepartmentStore_1F_EventScript_159E93:: @ 8159E93
+ msgbox LilycoveCity_DepartmentStore_1F_Text_1C4F1C, 4
+ return
+
+LilycoveCity_DepartmentStore_1F_EventScript_159E9C:: @ 8159E9C
+ copyvar 0x4045, 0x8005
+ jump LilycoveCity_DepartmentStore_1F_EventScript_159EA7
+ end
+
+LilycoveCity_DepartmentStore_1F_EventScript_159EA7:: @ 8159EA7
+ msgbox LilycoveCity_DepartmentStore_1F_Text_1C4F77, 4
+ release
+ end
+
+LilycoveCity_DepartmentStore_1F_EventScript_159EB1:: @ 8159EB1
+ msgbox LilycoveCity_DepartmentStore_1F_Text_1C4FCC, 4
+ giveitem 0x4045
+ compare RESULT, 0
+ jumpeq LilycoveCity_DepartmentStore_1F_EventScript_159EA7
+ setvar 0x4045, 0
+ release
+ end
+
+LilycoveCity_DepartmentStore_1F_EventScript_159ED7:: @ 8159ED7
+ msgbox LilycoveCity_DepartmentStore_1F_Text_18BFDB, 2
+ end
+
+LilycoveCity_DepartmentStore_1F_EventScript_159EE0:: @ 8159EE0
+ msgbox LilycoveCity_DepartmentStore_1F_Text_18C044, 2
+ end
+
+LilycoveCity_DepartmentStore_1F_EventScript_159EE9:: @ 8159EE9
+ msgbox LilycoveCity_DepartmentStore_1F_Text_18C07A, 2
+ end
+
+LilycoveCity_DepartmentStore_1F_EventScript_159EF2:: @ 8159EF2
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_AZUMARILL, 0
+ msgbox LilycoveCity_DepartmentStore_1F_Text_18C0C3, 4
+ waitpokecry
+ release
+ end
+
+LilycoveCity_DepartmentStore_1F_EventScript_159F05:: @ 8159F05
+ msgbox LilycoveCity_DepartmentStore_1F_Text_18C0D9, 3
+ end
+
diff --git a/data/maps/scripts/LilycoveCity_DepartmentStore_2F.s b/data/maps/scripts/LilycoveCity_DepartmentStore_2F.s
new file mode 100644
index 000000000..f331dc758
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_DepartmentStore_2F.s
@@ -0,0 +1,70 @@
+LilycoveCity_DepartmentStore_2F_MapScripts:: @ 8159F0E
+ .byte 0
+
+LilycoveCity_DepartmentStore_2F_EventScript_159F0F:: @ 8159F0F
+ msgbox LilycoveCity_DepartmentStore_2F_Text_18C162, 2
+ end
+
+LilycoveCity_DepartmentStore_2F_EventScript_159F18:: @ 8159F18
+ msgbox LilycoveCity_DepartmentStore_2F_Text_18C195, 2
+ end
+
+LilycoveCity_DepartmentStore_2F_EventScript_159F21:: @ 8159F21
+ msgbox LilycoveCity_DepartmentStore_2F_Text_18C1D9, 2
+ end
+
+LilycoveCity_DepartmentStore_2F_EventScript_159F2A:: @ 8159F2A
+ lock
+ faceplayer
+ message LilycoveCity_DepartmentStore_2F_Text_1A0BE4
+ waittext
+ pokemart LilycoveCity_DepartmentStore_2F_Pokemart_159F44
+ msgbox LilycoveCity_DepartmentStore_2F_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x159f41, 0x3
+
+LilycoveCity_DepartmentStore_2F_Pokemart_159F44:: @ 8159F44
+ .2byte ITEM_POKE_BALL
+ .2byte ITEM_GREAT_BALL
+ .2byte ITEM_ULTRA_BALL
+ .2byte ITEM_ESCAPE_ROPE
+ .2byte ITEM_FULL_HEAL
+ .2byte ITEM_ANTIDOTE
+ .2byte ITEM_PARALYZE_HEAL
+ .2byte ITEM_BURN_HEAL
+ .2byte ITEM_ICE_HEAL
+ .2byte ITEM_AWAKENING
+ .2byte ITEM_FLUFFY_TAIL
+ .2byte ITEM_NONE
+ release
+ end
+
+LilycoveCity_DepartmentStore_2F_EventScript_159F5E:: @ 8159F5E
+ lock
+ faceplayer
+ message LilycoveCity_DepartmentStore_2F_Text_1A0BE4
+ waittext
+ pokemart LilycoveCity_DepartmentStore_2F_Pokemart_159F78
+ msgbox LilycoveCity_DepartmentStore_2F_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x159f75, 0x3
+
+LilycoveCity_DepartmentStore_2F_Pokemart_159F78:: @ 8159F78
+ .2byte ITEM_POTION
+ .2byte ITEM_SUPER_POTION
+ .2byte ITEM_HYPER_POTION
+ .2byte ITEM_MAX_POTION
+ .2byte ITEM_REVIVE
+ .2byte ITEM_REPEL
+ .2byte ITEM_SUPER_REPEL
+ .2byte ITEM_MAX_REPEL
+ .2byte ITEM_WAVE_MAIL
+ .2byte ITEM_MECH_MAIL
+ .2byte ITEM_NONE
+ release
+ end
+
diff --git a/data/maps/scripts/LilycoveCity_DepartmentStore_3F.s b/data/maps/scripts/LilycoveCity_DepartmentStore_3F.s
new file mode 100644
index 000000000..eddabf55f
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_DepartmentStore_3F.s
@@ -0,0 +1,60 @@
+LilycoveCity_DepartmentStore_3F_MapScripts:: @ 8159F90
+ .byte 0
+
+LilycoveCity_DepartmentStore_3F_EventScript_159F91:: @ 8159F91
+ lock
+ faceplayer
+ message LilycoveCity_DepartmentStore_3F_Text_1A0BE4
+ waittext
+ pokemart LilycoveCity_DepartmentStore_3F_Pokemart_159FA8
+ msgbox LilycoveCity_DepartmentStore_3F_Text_1A0C02, 4
+ release
+ end
+
+LilycoveCity_DepartmentStore_3F_Pokemart_159FA8:: @ 8159FA8
+ .2byte ITEM_PROTEIN
+ .2byte ITEM_CALCIUM
+ .2byte ITEM_IRON
+ .2byte ITEM_ZINC
+ .2byte ITEM_CARBOS
+ .2byte ITEM_HP_UP
+ .2byte ITEM_NONE
+ release
+ end
+
+LilycoveCity_DepartmentStore_3F_EventScript_159FB8:: @ 8159FB8
+ lock
+ faceplayer
+ message LilycoveCity_DepartmentStore_3F_Text_1A0BE4
+ waittext
+ pokemart LilycoveCity_DepartmentStore_3F_Pokemart_159FD0
+ msgbox LilycoveCity_DepartmentStore_3F_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x159fcf, 0x1
+
+LilycoveCity_DepartmentStore_3F_Pokemart_159FD0:: @ 8159FD0
+ .2byte ITEM_X_SPEED
+ .2byte ITEM_X_SPECIAL
+ .2byte ITEM_X_ATTACK
+ .2byte ITEM_X_DEFEND
+ .2byte ITEM_DIRE_HIT
+ .2byte ITEM_GUARD_SPEC
+ .2byte ITEM_X_ACCURACY
+ .2byte ITEM_NONE
+ release
+ end
+
+LilycoveCity_DepartmentStore_3F_EventScript_159FE2:: @ 8159FE2
+ msgbox LilycoveCity_DepartmentStore_3F_Text_18C24B, 2
+ end
+
+LilycoveCity_DepartmentStore_3F_EventScript_159FEB:: @ 8159FEB
+ msgbox LilycoveCity_DepartmentStore_3F_Text_18C2B5, 2
+ end
+
+LilycoveCity_DepartmentStore_3F_EventScript_159FF4:: @ 8159FF4
+ msgbox LilycoveCity_DepartmentStore_3F_Text_18C32E, 2
+ end
+
diff --git a/data/maps/scripts/LilycoveCity_DepartmentStore_4F.s b/data/maps/scripts/LilycoveCity_DepartmentStore_4F.s
new file mode 100644
index 000000000..7466deb99
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_DepartmentStore_4F.s
@@ -0,0 +1,55 @@
+LilycoveCity_DepartmentStore_4F_MapScripts:: @ 8159FFD
+ .byte 0
+
+LilycoveCity_DepartmentStore_4F_EventScript_159FFE:: @ 8159FFE
+ msgbox LilycoveCity_DepartmentStore_4F_Text_18C39C, 2
+ end
+
+LilycoveCity_DepartmentStore_4F_EventScript_15A007:: @ 815A007
+ msgbox LilycoveCity_DepartmentStore_4F_Text_18C41B, 2
+ end
+
+LilycoveCity_DepartmentStore_4F_EventScript_15A010:: @ 815A010
+ msgbox LilycoveCity_DepartmentStore_4F_Text_18C481, 2
+ end
+
+LilycoveCity_DepartmentStore_4F_EventScript_15A019:: @ 815A019
+ lock
+ faceplayer
+ message LilycoveCity_DepartmentStore_4F_Text_1A0BE4
+ waittext
+ pokemart LilycoveCity_DepartmentStore_4F_Pokemart_15A030
+ msgbox LilycoveCity_DepartmentStore_4F_Text_1A0C02, 4
+ release
+ end
+
+LilycoveCity_DepartmentStore_4F_Pokemart_15A030:: @ 815A030
+ .2byte ITEM_TM38
+ .2byte ITEM_TM25
+ .2byte ITEM_TM14
+ .2byte ITEM_TM15
+ .2byte ITEM_NONE
+ release
+ end
+
+LilycoveCity_DepartmentStore_4F_EventScript_15A03C:: @ 815A03C
+ lock
+ faceplayer
+ message LilycoveCity_DepartmentStore_4F_Text_1A0BE4
+ waittext
+ pokemart LilycoveCity_DepartmentStore_4F_Pokemart_15A054
+ msgbox LilycoveCity_DepartmentStore_4F_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x15a053, 0x1
+
+LilycoveCity_DepartmentStore_4F_Pokemart_15A054:: @ 815A054
+ .2byte ITEM_TM17
+ .2byte ITEM_TM20
+ .2byte ITEM_TM33
+ .2byte ITEM_TM16
+ .2byte ITEM_NONE
+ release
+ end
+
diff --git a/data/maps/scripts/LilycoveCity_DepartmentStore_5F.s b/data/maps/scripts/LilycoveCity_DepartmentStore_5F.s
new file mode 100644
index 000000000..bfe83d6ec
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_DepartmentStore_5F.s
@@ -0,0 +1,121 @@
+LilycoveCity_DepartmentStore_5F_MapScripts:: @ 815A060
+ .byte 0
+
+LilycoveCity_DepartmentStore_5F_EventScript_15A061:: @ 815A061
+ lock
+ faceplayer
+ message LilycoveCity_DepartmentStore_5F_Text_1A0BE4
+ waittext
+ pokemartbp LilycoveCity_DepartmentStore_5F_Pokemart_15A078
+ msgbox LilycoveCity_DepartmentStore_5F_Text_1A0C02, 4
+ release
+ end
+
+LilycoveCity_DepartmentStore_5F_Pokemart_15A078:: @ 815A078
+ .2byte ITEM_X_DEFEND
+ .2byte ITEM_X_SPEED
+ .2byte ITEM_X_ACCURACY
+ .2byte ITEM_SUPER_REPEL
+ .2byte 91
+ .2byte 92
+ .2byte ITEM_SUN_STONE
+ .2byte ITEM_MOON_STONE
+ .2byte ITEM_FIRE_STONE
+ .2byte ITEM_THUNDER_STONE
+ .2byte ITEM_WATER_STONE
+ .2byte ITEM_LEAF_STONE
+ .2byte ITEM_NONE
+ release
+ end
+
+LilycoveCity_DepartmentStore_5F_EventScript_15A094:: @ 815A094
+ lock
+ faceplayer
+ message LilycoveCity_DepartmentStore_5F_Text_1A0BE4
+ waittext
+ pokemartbp LilycoveCity_DepartmentStore_5F_Pokemart_15A0AC
+ msgbox LilycoveCity_DepartmentStore_5F_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x15a0ab, 0x1
+
+LilycoveCity_DepartmentStore_5F_Pokemart_15A0AC:: @ 815A0AC
+ .2byte 101
+ .2byte 102
+ .2byte ITEM_BIG_MUSHROOM
+ .2byte 105
+ .2byte ITEM_PEARL
+ .2byte ITEM_BIG_PEARL
+ .2byte ITEM_STARDUST
+ .2byte ITEM_STAR_PIECE
+ .2byte ITEM_NUGGET
+ .2byte ITEM_NONE
+ release
+ end
+
+LilycoveCity_DepartmentStore_5F_EventScript_15A0C2:: @ 815A0C2
+ lock
+ faceplayer
+ message LilycoveCity_DepartmentStore_5F_Text_1A0BE4
+ waittext
+ pokemartbp LilycoveCity_DepartmentStore_5F_Pokemart_15A0DC
+ msgbox LilycoveCity_DepartmentStore_5F_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x15a0d9, 0x3
+
+LilycoveCity_DepartmentStore_5F_Pokemart_15A0DC:: @ 815A0DC
+ .2byte ITEM_CARBOS
+ .2byte ITEM_CALCIUM
+ .2byte ITEM_RARE_CANDY
+ .2byte ITEM_PP_UP
+ .2byte ITEM_ZINC
+ .2byte ITEM_PP_MAX
+ .2byte 72
+ .2byte ITEM_GUARD_SPEC
+ .2byte ITEM_DIRE_HIT
+ .2byte ITEM_NONE
+ release
+ end
+
+LilycoveCity_DepartmentStore_5F_EventScript_15A0F2:: @ 815A0F2
+ lock
+ faceplayer
+ message LilycoveCity_DepartmentStore_5F_Text_1A0BE4
+ waittext
+ pokemartbp LilycoveCity_DepartmentStore_5F_Pokemart_15A10C
+ msgbox LilycoveCity_DepartmentStore_5F_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x15a109, 0x3
+
+LilycoveCity_DepartmentStore_5F_Pokemart_15A10C:: @ 815A10C
+ .2byte 59
+ .2byte 60
+ .2byte 61
+ .2byte 62
+ .2byte ITEM_HP_UP
+ .2byte ITEM_PROTEIN
+ .2byte ITEM_IRON
+ .2byte ITEM_RED_SHARD
+ .2byte ITEM_BLUE_SHARD
+ .2byte ITEM_YELLOW_SHARD
+ .2byte ITEM_NONE
+ release
+ end
+
+LilycoveCity_DepartmentStore_5F_EventScript_15A124:: @ 815A124
+ msgbox LilycoveCity_DepartmentStore_5F_Text_18C4F9, 2
+ end
+
+LilycoveCity_DepartmentStore_5F_EventScript_15A12D:: @ 815A12D
+ msgbox LilycoveCity_DepartmentStore_5F_Text_18C59F, 2
+ end
+
+LilycoveCity_DepartmentStore_5F_EventScript_15A136:: @ 815A136
+ msgbox LilycoveCity_DepartmentStore_5F_Text_18C556, 2
+ end
+
diff --git a/data/maps/scripts/LilycoveCity_EmptyMap.s b/data/maps/scripts/LilycoveCity_EmptyMap.s
new file mode 100644
index 000000000..25ecb3866
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_EmptyMap.s
@@ -0,0 +1,3 @@
+LilycoveCity_EmptyMap_MapScripts:: @ 8159AAC
+ .byte 0
+
diff --git a/data/maps/scripts/LilycoveCity_Harbor.s b/data/maps/scripts/LilycoveCity_Harbor.s
new file mode 100644
index 000000000..6195332a1
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_Harbor.s
@@ -0,0 +1,170 @@
+LilycoveCity_Harbor_MapScripts:: @ 8159893
+ map_script 3, LilycoveCity_Harbor_MapScript1_159899
+ .byte 0
+
+LilycoveCity_Harbor_MapScript1_159899:: @ 8159899
+ warp6 LilycoveCity, 255, 12, 33
+ end
+
+LilycoveCity_Harbor_EventScript_1598A2:: @ 81598A2
+ lock
+ faceplayer
+ checkitem ITEM_EON_TICKET, 1
+ compare RESULT, 1
+ jumpeq LilycoveCity_Harbor_EventScript_1599EE
+ jump LilycoveCity_Harbor_EventScript_1598BA
+ end
+
+LilycoveCity_Harbor_EventScript_1598BA:: @ 81598BA
+ checkflag 2052
+ jumpeq LilycoveCity_Harbor_EventScript_1598CD
+ msgbox LilycoveCity_Harbor_Text_18B306, 4
+ release
+ end
+
+LilycoveCity_Harbor_EventScript_1598CD:: @ 81598CD
+ msgbox LilycoveCity_Harbor_Text_18B36F, 4
+ checkitem ITEM_SS_TICKET, 1
+ compare RESULT, 0
+ jumpeq LilycoveCity_Harbor_EventScript_159929
+ message LilycoveCity_Harbor_Text_18B406
+ waittext
+ jump LilycoveCity_Harbor_EventScript_1598F1
+ end
+
+LilycoveCity_Harbor_EventScript_1598F1:: @ 81598F1
+ multichoicedef 18, 6, 56, 2, 0
+ switch RESULT
+ case 0, LilycoveCity_Harbor_EventScript_159933
+ case 1, LilycoveCity_Harbor_EventScript_15995B
+ case 2, LilycoveCity_Harbor_EventScript_1599E4
+ case 127, LilycoveCity_Harbor_EventScript_1599E4
+ end
+
+LilycoveCity_Harbor_EventScript_159929:: @ 8159929
+ msgbox LilycoveCity_Harbor_Text_18B3A9, 4
+ release
+ end
+
+LilycoveCity_Harbor_EventScript_159933:: @ 8159933
+ msgbox LilycoveCity_Harbor_Text_18B47D, 5
+ compare RESULT, 0
+ jumpeq LilycoveCity_Harbor_EventScript_15997E
+ setvar 0x40b4, 5
+ call LilycoveCity_Harbor_EventScript_15998A
+ warp SSTidalCorridor, 255, 1, 10
+ waitstate
+ release
+ end
+
+LilycoveCity_Harbor_EventScript_15995B:: @ 815995B
+ msgbox LilycoveCity_Harbor_Text_18B499, 5
+ compare RESULT, 0
+ jumpeq LilycoveCity_Harbor_EventScript_15997E
+ call LilycoveCity_Harbor_EventScript_15998A
+ warp BattleTower_Outside, 255, 19, 23
+ waitstate
+ release
+ end
+
+LilycoveCity_Harbor_EventScript_15997E:: @ 815997E
+ message LilycoveCity_Harbor_Text_18B4E2
+ waittext
+ jump LilycoveCity_Harbor_EventScript_1598F1
+ end
+
+LilycoveCity_Harbor_EventScript_15998A:: @ 815998A
+ msgbox LilycoveCity_Harbor_Text_18B4B3, 4
+ closebutton
+ move LAST_TALKED, LilycoveCity_Harbor_Movement_1A0841
+ waitmove 0
+ pause 30
+ spriteinvisible LAST_TALKED, 13, 10
+ compare FACING, 2
+ callif 1, LilycoveCity_Harbor_EventScript_1599D9
+ compare FACING, 4
+ callif 1, LilycoveCity_Harbor_EventScript_1599CE
+ pause 30
+ spriteinvisible 255, 0, 0
+ setvar 0x8004, 2
+ call LilycoveCity_Harbor_EventScript_1A040E
+ return
+
+LilycoveCity_Harbor_EventScript_1599CE:: @ 81599CE
+ move 255, LilycoveCity_Harbor_Movement_159A86
+ waitmove 0
+ return
+
+LilycoveCity_Harbor_EventScript_1599D9:: @ 81599D9
+ move 255, LilycoveCity_Harbor_Movement_159A89
+ waitmove 0
+ return
+
+LilycoveCity_Harbor_EventScript_1599E4:: @ 81599E4
+ msgbox LilycoveCity_Harbor_Text_18B45B, 4
+ release
+ end
+
+LilycoveCity_Harbor_EventScript_1599EE:: @ 81599EE
+ checkflag 2052
+ jumpif 0, LilycoveCity_Harbor_EventScript_1598BA
+ checkflag 206
+ jumpeq LilycoveCity_Harbor_EventScript_1598BA
+ checkflag 2131
+ jumpif 0, LilycoveCity_Harbor_EventScript_1598BA
+ msgbox LilycoveCity_Harbor_Text_1C50F2, 4
+ closebutton
+ move LAST_TALKED, LilycoveCity_Harbor_Movement_1A0841
+ waitmove 0
+ pause 30
+ spriteinvisible LAST_TALKED, 13, 10
+ pause 60
+ reappear 4
+ pause 30
+ move 4, LilycoveCity_Harbor_Movement_1A0839
+ waitmove 0
+ msgbox LilycoveCity_Harbor_Text_1C5120, 4
+ closebutton
+ move 4, LilycoveCity_Harbor_Movement_1A0841
+ waitmove 0
+ pause 30
+ disappear 4
+ compare FACING, 2
+ callif 1, LilycoveCity_Harbor_EventScript_1599D9
+ compare FACING, 4
+ callif 1, LilycoveCity_Harbor_EventScript_1599CE
+ pause 30
+ spriteinvisible 255, 0, 0
+ special 0
+ setvar 0x8004, 2
+ call LilycoveCity_Harbor_EventScript_1A040E
+ warp SouthernIsland_Exterior, 255, 13, 22
+ waitstate
+ release
+ end
+
+LilycoveCity_Harbor_Movement_159A86:: @ 8159A86
+ step_right
+ step_26
+ step_end
+
+LilycoveCity_Harbor_Movement_159A89:: @ 8159A89
+ step_up
+ step_end
+
+ .incbin "baserom.gba", 0x159a8b, 0x2
+
+LilycoveCity_Harbor_EventScript_159A8D:: @ 8159A8D
+ lock
+ faceplayer
+ checkflag 2052
+ jumpeq LilycoveCity_Harbor_EventScript_159AA2
+ msgbox LilycoveCity_Harbor_Text_18B504, 4
+ release
+ end
+
+LilycoveCity_Harbor_EventScript_159AA2:: @ 8159AA2
+ msgbox LilycoveCity_Harbor_Text_18B58E, 4
+ release
+ end
+
diff --git a/data/maps/scripts/LilycoveCity_House1.s b/data/maps/scripts/LilycoveCity_House1.s
new file mode 100644
index 000000000..28a4532b1
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_House1.s
@@ -0,0 +1,17 @@
+LilycoveCity_House1_MapScripts:: @ 8159B85
+ .byte 0
+
+LilycoveCity_House1_EventScript_159B86:: @ 8159B86
+ msgbox LilycoveCity_House1_Text_18B7B0, 2
+ end
+
+LilycoveCity_House1_EventScript_159B8F:: @ 8159B8F
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_KECLEON, 0
+ msgbox LilycoveCity_House1_Text_18B82B, 4
+ waitpokecry
+ release
+ end
+
diff --git a/data/maps/scripts/LilycoveCity_House2.s b/data/maps/scripts/LilycoveCity_House2.s
new file mode 100644
index 000000000..c1fe01b46
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_House2.s
@@ -0,0 +1,22 @@
+LilycoveCity_House2_MapScripts:: @ 8159BA2
+ .byte 0
+
+LilycoveCity_House2_EventScript_159BA3:: @ 8159BA3
+ lock
+ faceplayer
+ checkflag 234
+ jumpeq LilycoveCity_House2_EventScript_159BDA
+ msgbox LilycoveCity_House2_Text_18B83C, 4
+ giveitem ITEM_TM44
+ compare RESULT, 0
+ jumpeq LilycoveCity_House2_EventScript_1A029B
+ setflag 234
+ msgbox LilycoveCity_House2_Text_18B883, 4
+ release
+ end
+
+LilycoveCity_House2_EventScript_159BDA:: @ 8159BDA
+ msgbox LilycoveCity_House2_Text_18B883, 4
+ release
+ end
+
diff --git a/data/maps/scripts/LilycoveCity_House3.s b/data/maps/scripts/LilycoveCity_House3.s
new file mode 100644
index 000000000..5c4eaac9d
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_House3.s
@@ -0,0 +1,100 @@
+LilycoveCity_House3_MapScripts:: @ 8159BE4
+ map_script 3, LilycoveCity_House3_MapScript1_159BEA
+ .byte 0
+
+LilycoveCity_House3_MapScript1_159BEA:: @ 8159BEA
+ random 4
+ copyvar 0x4001, RESULT
+ end
+
+LilycoveCity_House3_EventScript_159BF3:: @ 8159BF3
+ lock
+ faceplayer
+ msgbox LilycoveCity_House3_Text_18B8CC, 5
+ compare RESULT, 0
+ jumpeq LilycoveCity_House3_EventScript_159C1D
+ msgbox LilycoveCity_House3_Text_18BA2B, 4
+ closebutton
+ move LAST_TALKED, LilycoveCity_House3_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+LilycoveCity_House3_EventScript_159C1D:: @ 8159C1D
+ msgbox LilycoveCity_House3_Text_18B9DC, 4
+ closebutton
+ move LAST_TALKED, LilycoveCity_House3_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+LilycoveCity_House3_EventScript_159C32:: @ 8159C32
+ lock
+ faceplayer
+ msgbox LilycoveCity_House3_Text_18BD64, 4
+ closebutton
+ move LAST_TALKED, LilycoveCity_House3_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+LilycoveCity_House3_EventScript_159C49:: @ 8159C49
+ lock
+ faceplayer
+ switch 0x4001
+ case 0, LilycoveCity_House3_EventScript_159D19
+ case 1, LilycoveCity_House3_EventScript_159D23
+ case 2, LilycoveCity_House3_EventScript_159D2D
+ case 3, LilycoveCity_House3_EventScript_159D37
+ end
+
+LilycoveCity_House3_EventScript_159C7D:: @ 8159C7D
+ lock
+ faceplayer
+ switch 0x4001
+ case 0, LilycoveCity_House3_EventScript_159D19
+ case 1, LilycoveCity_House3_EventScript_159D23
+ case 2, LilycoveCity_House3_EventScript_159D2D
+ case 3, LilycoveCity_House3_EventScript_159D37
+ end
+
+LilycoveCity_House3_EventScript_159CB1:: @ 8159CB1
+ lock
+ faceplayer
+ switch 0x4001
+ case 0, LilycoveCity_House3_EventScript_159D19
+ case 1, LilycoveCity_House3_EventScript_159D23
+ case 2, LilycoveCity_House3_EventScript_159D2D
+ case 3, LilycoveCity_House3_EventScript_159D37
+ end
+
+LilycoveCity_House3_EventScript_159CE5:: @ 8159CE5
+ lock
+ faceplayer
+ switch 0x4001
+ case 0, LilycoveCity_House3_EventScript_159D19
+ case 1, LilycoveCity_House3_EventScript_159D23
+ case 2, LilycoveCity_House3_EventScript_159D2D
+ case 3, LilycoveCity_House3_EventScript_159D37
+ end
+
+LilycoveCity_House3_EventScript_159D19:: @ 8159D19
+ msgbox LilycoveCity_House3_Text_18BDDB, 4
+ release
+ end
+
+LilycoveCity_House3_EventScript_159D23:: @ 8159D23
+ msgbox LilycoveCity_House3_Text_18BE14, 4
+ release
+ end
+
+LilycoveCity_House3_EventScript_159D2D:: @ 8159D2D
+ msgbox LilycoveCity_House3_Text_18BE57, 4
+ release
+ end
+
+LilycoveCity_House3_EventScript_159D37:: @ 8159D37
+ msgbox LilycoveCity_House3_Text_18BE8E, 4
+ release
+ end
+
diff --git a/data/maps/scripts/LilycoveCity_House4.s b/data/maps/scripts/LilycoveCity_House4.s
new file mode 100644
index 000000000..98d8ca9a4
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_House4.s
@@ -0,0 +1,11 @@
+LilycoveCity_House4_MapScripts:: @ 8159D41
+ .byte 0
+
+LilycoveCity_House4_EventScript_159D42:: @ 8159D42
+ msgbox LilycoveCity_House4_Text_18BEE8, 2
+ end
+
+LilycoveCity_House4_EventScript_159D4B:: @ 8159D4B
+ msgbox LilycoveCity_House4_Text_18BF4E, 2
+ end
+
diff --git a/data/maps/scripts/LilycoveCity_LilycoveMuseum_1F.s b/data/maps/scripts/LilycoveCity_LilycoveMuseum_1F.s
new file mode 100644
index 000000000..9975419d0
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_LilycoveMuseum_1F.s
@@ -0,0 +1,163 @@
+LilycoveCity_LilycoveMuseum_1F_MapScripts:: @ 815841B
+ .byte 0
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_15841C:: @ 815841C
+ msgbox LilycoveCity_LilycoveMuseum_1F_Text_187348, 3
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_158425:: @ 8158425
+ lockall
+ move 2, LilycoveCity_LilycoveMuseum_1F_Movement_1A0839
+ message LilycoveCity_LilycoveMuseum_1F_Text_1873B9
+ waittext
+ multichoice 20, 8, 16, 1
+ compare RESULT, 0
+ jumpeq LilycoveCity_LilycoveMuseum_1F_EventScript_158458
+ compare RESULT, 1
+ jumpeq LilycoveCity_LilycoveMuseum_1F_EventScript_15844F
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_15844F:: @ 815844F
+ msgbox LilycoveCity_LilycoveMuseum_1F_Text_187459, 2
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_158458:: @ 8158458
+ msgbox LilycoveCity_LilycoveMuseum_1F_Text_187495, 5
+ compare RESULT, 0
+ jumpeq LilycoveCity_LilycoveMuseum_1F_EventScript_158477
+ compare RESULT, 1
+ jumpeq LilycoveCity_LilycoveMuseum_1F_EventScript_158481
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_158477:: @ 8158477
+ msgbox LilycoveCity_LilycoveMuseum_1F_Text_1874F5, 3
+ releaseall
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_158481:: @ 8158481
+ msgbox LilycoveCity_LilycoveMuseum_1F_Text_187534, 3
+ move 2, LilycoveCity_LilycoveMuseum_1F_Movement_1584FC
+ waitmove 0
+ disappear 2
+ switch FACING
+ case 2, LilycoveCity_LilycoveMuseum_1F_EventScript_1584BD
+ case 3, LilycoveCity_LilycoveMuseum_1F_EventScript_1584D2
+ case 4, LilycoveCity_LilycoveMuseum_1F_EventScript_1584E7
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_1584BD:: @ 81584BD
+ lockall
+ move 255, LilycoveCity_LilycoveMuseum_1F_Movement_158504
+ waitmove 0
+ warp LilycoveCity_LilycoveMuseum_2F, 255, 11, 8
+ waitstate
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_1584D2:: @ 81584D2
+ lockall
+ move 255, LilycoveCity_LilycoveMuseum_1F_Movement_1584FE
+ waitmove 0
+ warp LilycoveCity_LilycoveMuseum_2F, 255, 11, 8
+ waitstate
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_1584E7:: @ 81584E7
+ lockall
+ move 255, LilycoveCity_LilycoveMuseum_1F_Movement_158501
+ waitmove 0
+ warp LilycoveCity_LilycoveMuseum_2F, 255, 11, 8
+ waitstate
+ end
+
+LilycoveCity_LilycoveMuseum_1F_Movement_1584FC:: @ 81584FC
+ step_up
+ step_end
+
+LilycoveCity_LilycoveMuseum_1F_Movement_1584FE:: @ 81584FE
+ step_left
+ step_up
+ step_end
+
+LilycoveCity_LilycoveMuseum_1F_Movement_158501:: @ 8158501
+ step_right
+ step_up
+ step_end
+
+LilycoveCity_LilycoveMuseum_1F_Movement_158504:: @ 8158504
+ step_up
+ step_up
+ step_end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_158507:: @ 8158507
+ msgbox LilycoveCity_LilycoveMuseum_1F_Text_18757F, 3
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_158510:: @ 8158510
+ msgbox LilycoveCity_LilycoveMuseum_1F_Text_1875BE, 3
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_158519:: @ 8158519
+ msgbox LilycoveCity_LilycoveMuseum_1F_Text_1875F8, 3
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_158522:: @ 8158522
+ msgbox LilycoveCity_LilycoveMuseum_1F_Text_187641, 3
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_15852B:: @ 815852B
+ msgbox LilycoveCity_LilycoveMuseum_1F_Text_1876A1, 3
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_158534:: @ 8158534
+ msgbox LilycoveCity_LilycoveMuseum_1F_Text_18770C, 3
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_15853D:: @ 815853D
+LilycoveCity_LilycoveMuseum_2F_EventScript_15853D:: @ 815853D
+ msgbox LilycoveCity_LilycoveMuseum_1F_Text_18775F, 3
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_158546:: @ 8158546
+ msgbox LilycoveCity_LilycoveMuseum_1F_Text_1877A9, 3
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_15854F:: @ 815854F
+ msgbox LilycoveCity_LilycoveMuseum_1F_Text_187810, 3
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_158558:: @ 8158558
+ msgbox LilycoveCity_LilycoveMuseum_1F_Text_1878B7, 2
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_158561:: @ 8158561
+ msgbox LilycoveCity_LilycoveMuseum_1F_Text_18791D, 2
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_15856A:: @ 815856A
+ msgbox LilycoveCity_LilycoveMuseum_1F_Text_1879BF, 3
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_158573:: @ 8158573
+ msgbox LilycoveCity_LilycoveMuseum_1F_Text_1879E6, 3
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_15857C:: @ 815857C
+ msgbox LilycoveCity_LilycoveMuseum_1F_Text_187A1A, 2
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_158585:: @ 8158585
+ msgbox LilycoveCity_LilycoveMuseum_1F_Text_187AA0, 2
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_15858E:: @ 815858E
+ msgbox LilycoveCity_LilycoveMuseum_1F_Text_187B04, 2
+ lockall
+ move 8, LilycoveCity_LilycoveMuseum_1F_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+LilycoveCity_LilycoveMuseum_1F_EventScript_1585A3:: @ 81585A3
+ msgbox LilycoveCity_LilycoveMuseum_1F_Text_187B7F, 2
+ end
+
diff --git a/data/maps/scripts/LilycoveCity_LilycoveMuseum_2F.s b/data/maps/scripts/LilycoveCity_LilycoveMuseum_2F.s
new file mode 100644
index 000000000..44015d256
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_LilycoveMuseum_2F.s
@@ -0,0 +1,230 @@
+LilycoveCity_LilycoveMuseum_2F_MapScripts:: @ 81585AC
+ map_script 1, LilycoveCity_LilycoveMuseum_2F_MapScript1_1585B7
+ map_script 2, LilycoveCity_LilycoveMuseum_2F_MapScript2_158670
+ .byte 0
+
+LilycoveCity_LilycoveMuseum_2F_MapScript1_1585B7:: @ 81585B7
+ checkflag 160
+ jumpeq LilycoveCity_LilycoveMuseum_2F_EventScript_1585FD
+ jump LilycoveCity_LilycoveMuseum_2F_EventScript_1585C6
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_1585C6:: @ 81585C6
+ checkflag 161
+ jumpeq LilycoveCity_LilycoveMuseum_2F_EventScript_158615
+ jump LilycoveCity_LilycoveMuseum_2F_EventScript_1585D5
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_1585D5:: @ 81585D5
+ checkflag 162
+ jumpeq LilycoveCity_LilycoveMuseum_2F_EventScript_15862D
+ jump LilycoveCity_LilycoveMuseum_2F_EventScript_1585E4
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_1585E4:: @ 81585E4
+ checkflag 163
+ jumpeq LilycoveCity_LilycoveMuseum_2F_EventScript_158645
+ jump LilycoveCity_LilycoveMuseum_2F_EventScript_1585F3
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_1585F3:: @ 81585F3
+ checkflag 164
+ jumpeq LilycoveCity_LilycoveMuseum_2F_EventScript_15865D
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_1585FD:: @ 81585FD
+ setmaptile 10, 6, 606, 1
+ setmaptile 11, 6, 607, 1
+ jump LilycoveCity_LilycoveMuseum_2F_EventScript_1585C6
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_158615:: @ 8158615
+ setmaptile 18, 6, 604, 1
+ setmaptile 19, 6, 605, 1
+ jump LilycoveCity_LilycoveMuseum_2F_EventScript_1585D5
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_15862D:: @ 815862D
+ setmaptile 14, 10, 608, 1
+ setmaptile 15, 10, 609, 1
+ jump LilycoveCity_LilycoveMuseum_2F_EventScript_1585E4
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_158645:: @ 8158645
+ setmaptile 6, 10, 602, 1
+ setmaptile 7, 10, 603, 1
+ jump LilycoveCity_LilycoveMuseum_2F_EventScript_1585F3
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_15865D:: @ 815865D
+ setmaptile 2, 6, 610, 1
+ setmaptile 3, 6, 611, 1
+ end
+
+LilycoveCity_LilycoveMuseum_2F_MapScript2_158670:: @ 8158670
+ map_script_2 0x4094, 0, LilycoveCity_LilycoveMuseum_2F_EventScript_15867A
+ .2byte 0
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_15867A:: @ 815867A
+ lockall
+ move 1, LilycoveCity_LilycoveMuseum_2F_Movement_1A0839
+ move 255, LilycoveCity_LilycoveMuseum_2F_Movement_1586D3
+ waitmove 0
+ msgbox LilycoveCity_LilycoveMuseum_2F_Text_187C42, 3
+ move 1, LilycoveCity_LilycoveMuseum_2F_Movement_1586D5
+ waitmove 0
+ move 255, LilycoveCity_LilycoveMuseum_2F_Movement_1586D5
+ waitmove 0
+ msgbox LilycoveCity_LilycoveMuseum_2F_Text_187C64, 3
+ move 1, LilycoveCity_LilycoveMuseum_2F_Movement_1A0839
+ waitmove 0
+ move 255, LilycoveCity_LilycoveMuseum_2F_Movement_1586D3
+ waitmove 0
+ msgbox LilycoveCity_LilycoveMuseum_2F_Text_187E1D, 3
+ copyvar 0x4094, 0x1
+ releaseall
+ end
+
+LilycoveCity_LilycoveMuseum_2F_Movement_1586D3:: @ 81586D3
+ step_27
+ step_end
+
+LilycoveCity_LilycoveMuseum_2F_Movement_1586D5:: @ 81586D5
+ step_01
+ step_14
+ step_end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_1586D8:: @ 81586D8
+ lockall
+ checkflag 236
+ jumpeq LilycoveCity_LilycoveMuseum_2F_EventScript_158793
+ specialval 0x8004, 137
+ switch 0x8004
+ case 1, LilycoveCity_LilycoveMuseum_2F_EventScript_15872C
+ case 2, LilycoveCity_LilycoveMuseum_2F_EventScript_15872C
+ case 3, LilycoveCity_LilycoveMuseum_2F_EventScript_15872C
+ case 4, LilycoveCity_LilycoveMuseum_2F_EventScript_15872C
+ case 5, LilycoveCity_LilycoveMuseum_2F_EventScript_158735
+ msgbox LilycoveCity_LilycoveMuseum_2F_Text_187F4E, 2
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_15872C:: @ 815872C
+ msgbox LilycoveCity_LilycoveMuseum_2F_Text_187F9D, 2
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_158735:: @ 8158735
+ move 1, LilycoveCity_LilycoveMuseum_2F_Movement_1A0839
+ waitmove 0
+ msgbox LilycoveCity_LilycoveMuseum_2F_Text_18802F, 4
+ move 1, LilycoveCity_LilycoveMuseum_2F_Movement_1586D5
+ msgbox LilycoveCity_LilycoveMuseum_2F_Text_188041, 4
+ jump LilycoveCity_LilycoveMuseum_2F_EventScript_15875C
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_15875C:: @ 815875C
+ move 1, LilycoveCity_LilycoveMuseum_2F_Movement_1A0839
+ msgbox LilycoveCity_LilycoveMuseum_2F_Text_188120, 4
+ givedecoration 44
+ compare RESULT, 0
+ jumpeq LilycoveCity_LilycoveMuseum_2F_EventScript_158783
+ setflag 236
+ closebutton
+ releaseall
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_158783:: @ 8158783
+ call LilycoveCity_LilycoveMuseum_2F_EventScript_1A02B8
+ msgbox LilycoveCity_LilycoveMuseum_2F_Text_188166, 4
+ closebutton
+ releaseall
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_158793:: @ 8158793
+ msgbox LilycoveCity_LilycoveMuseum_2F_Text_188194, 2
+ releaseall
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_15879D:: @ 815879D
+ lockall
+ checkflag 162
+ jumpeq LilycoveCity_LilycoveMuseum_2F_EventScript_15883C
+ msgbox LilycoveCity_LilycoveMuseum_2F_Text_188219, 3
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_1587B0:: @ 81587B0
+ lockall
+ checkflag 164
+ jumpeq LilycoveCity_LilycoveMuseum_2F_EventScript_158858
+ msgbox LilycoveCity_LilycoveMuseum_2F_Text_18824C, 3
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_1587C3:: @ 81587C3
+ lockall
+ checkflag 160
+ jumpeq LilycoveCity_LilycoveMuseum_2F_EventScript_158820
+ msgbox LilycoveCity_LilycoveMuseum_2F_Text_1882B4, 3
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_1587D6:: @ 81587D6
+ lockall
+ checkflag 161
+ jumpeq LilycoveCity_LilycoveMuseum_2F_EventScript_15882E
+ msgbox LilycoveCity_LilycoveMuseum_2F_Text_188281, 3
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_1587E9:: @ 81587E9
+ lockall
+ checkflag 163
+ jumpeq LilycoveCity_LilycoveMuseum_2F_EventScript_15884A
+ msgbox LilycoveCity_LilycoveMuseum_2F_Text_1882E6, 3
+ end
+
+ .incbin "baserom.gba", 0x1587fc, 0x9
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_158805:: @ 8158805
+ msgbox LilycoveCity_LilycoveMuseum_2F_Text_188336, 2
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_15880E:: @ 815880E
+ msgbox LilycoveCity_LilycoveMuseum_2F_Text_1883AB, 2
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_158817:: @ 8158817
+ msgbox LilycoveCity_LilycoveMuseum_2F_Text_188423, 2
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_158820:: @ 8158820
+ msgbox LilycoveCity_LilycoveMuseum_2F_Text_18831A, 3
+ fadescreen 1
+ showcontestwinner 9
+ releaseall
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_15882E:: @ 815882E
+ msgbox LilycoveCity_LilycoveMuseum_2F_Text_18831A, 3
+ fadescreen 1
+ showcontestwinner 10
+ releaseall
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_15883C:: @ 815883C
+ msgbox LilycoveCity_LilycoveMuseum_2F_Text_18831A, 3
+ fadescreen 1
+ showcontestwinner 11
+ releaseall
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_15884A:: @ 815884A
+ msgbox LilycoveCity_LilycoveMuseum_2F_Text_18831A, 3
+ fadescreen 1
+ showcontestwinner 12
+ releaseall
+ end
+
+LilycoveCity_LilycoveMuseum_2F_EventScript_158858:: @ 8158858
+ msgbox LilycoveCity_LilycoveMuseum_2F_Text_18831A, 3
+ fadescreen 1
+ showcontestwinner 13
+ releaseall
+ end
+
diff --git a/data/maps/scripts/LilycoveCity_MoveDeletersHouse.s b/data/maps/scripts/LilycoveCity_MoveDeletersHouse.s
new file mode 100644
index 000000000..cd6f648a4
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_MoveDeletersHouse.s
@@ -0,0 +1,64 @@
+LilycoveCity_MoveDeletersHouse_MapScripts:: @ 8159AAD
+ .byte 0
+
+LilycoveCity_MoveDeletersHouse_EventScript_159AAE:: @ 8159AAE
+ lockall
+ move 1, LilycoveCity_MoveDeletersHouse_Movement_1A0839
+ waitmove 0
+ msgbox LilycoveCity_MoveDeletersHouse_Text_18B622, 5
+ switch RESULT
+ case 1, LilycoveCity_MoveDeletersHouse_EventScript_159ADE
+ case 0, LilycoveCity_MoveDeletersHouse_EventScript_159B7B
+ releaseall
+ end
+
+LilycoveCity_MoveDeletersHouse_EventScript_159ADE:: @ 8159ADE
+ msgbox LilycoveCity_MoveDeletersHouse_Text_18B68C, 4
+ special 159
+ waitstate
+ compare 0x8004, 255
+ jumpeq LilycoveCity_MoveDeletersHouse_EventScript_159B7B
+ special 328
+ compare RESULT, 1
+ jumpeq LilycoveCity_MoveDeletersHouse_EventScript_159B71
+ special 223
+ compare RESULT, 1
+ jumpeq LilycoveCity_MoveDeletersHouse_EventScript_159B64
+ msgbox LilycoveCity_MoveDeletersHouse_Text_18B6B0, 4
+ fadescreen 1
+ special 220
+ fadescreen 0
+ compare 0x8005, 4
+ jumpeq LilycoveCity_MoveDeletersHouse_EventScript_159ADE
+ special 222
+ msgbox LilycoveCity_MoveDeletersHouse_Text_18B6F2, 5
+ switch RESULT
+ case 1, LilycoveCity_MoveDeletersHouse_EventScript_159B53
+ case 0, LilycoveCity_MoveDeletersHouse_EventScript_159B7B
+ releaseall
+ end
+
+LilycoveCity_MoveDeletersHouse_EventScript_159B53:: @ 8159B53
+ special 221
+ fanfare 378
+ waitfanfare
+ msgbox LilycoveCity_MoveDeletersHouse_Text_18B71E, 4
+ releaseall
+ end
+
+LilycoveCity_MoveDeletersHouse_EventScript_159B64:: @ 8159B64
+ special 222
+ msgbox LilycoveCity_MoveDeletersHouse_Text_18B6D0, 4
+ releaseall
+ end
+
+LilycoveCity_MoveDeletersHouse_EventScript_159B71:: @ 8159B71
+ msgbox LilycoveCity_MoveDeletersHouse_Text_18B78C, 4
+ releaseall
+ end
+
+LilycoveCity_MoveDeletersHouse_EventScript_159B7B:: @ 8159B7B
+ msgbox LilycoveCity_MoveDeletersHouse_Text_18B757, 4
+ releaseall
+ end
+
diff --git a/data/maps/scripts/LilycoveCity_PokemonCenter_1F.s b/data/maps/scripts/LilycoveCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..d34bd0b84
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_PokemonCenter_1F.s
@@ -0,0 +1,34 @@
+LilycoveCity_PokemonCenter_1F_MapScripts:: @ 8159327
+ map_script 3, LilycoveCity_PokemonCenter_1F_MapScript1_15932D
+ .byte 0
+
+LilycoveCity_PokemonCenter_1F_MapScript1_15932D:: @ 815932D
+ sethealplace 8
+ end
+
+LilycoveCity_PokemonCenter_1F_EventScript_159331:: @ 8159331
+ setvar 0x800b, 1
+ call LilycoveCity_PokemonCenter_1F_EventScript_19FD5B
+ waittext
+ waitbutton
+ release
+ end
+
+LilycoveCity_PokemonCenter_1F_EventScript_15933F:: @ 815933F
+ msgbox LilycoveCity_PokemonCenter_1F_Text_189FC9, 2
+ end
+
+LilycoveCity_PokemonCenter_1F_EventScript_159348:: @ 8159348
+ lock
+ faceplayer
+ checkflag 2061
+ jumpeq LilycoveCity_PokemonCenter_1F_EventScript_15935D
+ msgbox LilycoveCity_PokemonCenter_1F_Text_18A048, 4
+ release
+ end
+
+LilycoveCity_PokemonCenter_1F_EventScript_15935D:: @ 815935D
+ msgbox LilycoveCity_PokemonCenter_1F_Text_18A0A1, 4
+ release
+ end
+
diff --git a/data/maps/scripts/LilycoveCity_PokemonCenter_2F.s b/data/maps/scripts/LilycoveCity_PokemonCenter_2F.s
new file mode 100644
index 000000000..ee60cf2ca
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_PokemonCenter_2F.s
@@ -0,0 +1,18 @@
+LilycoveCity_PokemonCenter_2F_MapScripts:: @ 8159367
+ map_script 2, LilycoveCity_PokemonCenter_2F_MapScript2_1A3D88
+ map_script 4, LilycoveCity_PokemonCenter_2F_MapScript2_1A3D03
+ map_script 1, LilycoveCity_PokemonCenter_2F_MapScript1_1A3D32
+ .byte 0
+
+LilycoveCity_PokemonCenter_2F_EventScript_159377:: @ 8159377
+ call LilycoveCity_PokemonCenter_2F_EventScript_1A3EA6
+ end
+
+LilycoveCity_PokemonCenter_2F_EventScript_15937D:: @ 815937D
+ call LilycoveCity_PokemonCenter_2F_EventScript_1A40CC
+ end
+
+LilycoveCity_PokemonCenter_2F_EventScript_159383:: @ 8159383
+ call LilycoveCity_PokemonCenter_2F_EventScript_1A41FB
+ end
+
diff --git a/data/maps/scripts/LilycoveCity_PokemonTrainerFanClub.s b/data/maps/scripts/LilycoveCity_PokemonTrainerFanClub.s
new file mode 100644
index 000000000..c76acaff4
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_PokemonTrainerFanClub.s
@@ -0,0 +1,437 @@
+LilycoveCity_PokemonTrainerFanClub_MapScripts:: @ 815938A
+ map_script 2, LilycoveCity_PokemonTrainerFanClub_MapScript2_159395
+ map_script 3, LilycoveCity_PokemonTrainerFanClub_MapScript1_159412
+ .byte 0
+
+LilycoveCity_PokemonTrainerFanClub_MapScript2_159395:: @ 8159395
+ map_script_2 0x4095, 1, LilycoveCity_PokemonTrainerFanClub_EventScript_15939F
+ .2byte 0
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_15939F:: @ 815939F
+ lockall
+ move 1, LilycoveCity_PokemonTrainerFanClub_Movement_1A0845
+ waitmove 0
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18A1D6, 4
+ move 4, LilycoveCity_PokemonTrainerFanClub_Movement_159402
+ move 2, LilycoveCity_PokemonTrainerFanClub_Movement_1593FA
+ waitmove 0
+ move 255, LilycoveCity_PokemonTrainerFanClub_Movement_1A0843
+ waitmove 0
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18A1E8, 4
+ move 4, LilycoveCity_PokemonTrainerFanClub_Movement_159409
+ waitmove 0
+ move 255, LilycoveCity_PokemonTrainerFanClub_Movement_1A083F
+ waitmove 0
+ move 4, LilycoveCity_PokemonTrainerFanClub_Movement_15940C
+ waitmove 0
+ setvar 0x4095, 2
+ releaseall
+ end
+
+LilycoveCity_PokemonTrainerFanClub_Movement_1593FA:: @ 81593FA
+ step_13
+ step_25
+ step_down
+ step_down
+ step_down
+ step_left
+ step_left
+ step_end
+
+LilycoveCity_PokemonTrainerFanClub_Movement_159402:: @ 8159402
+ step_17
+ step_17
+ step_15
+ step_15
+ step_17
+ step_15
+ step_end
+
+LilycoveCity_PokemonTrainerFanClub_Movement_159409:: @ 8159409
+ step_down
+ step_28
+ step_end
+
+LilycoveCity_PokemonTrainerFanClub_Movement_15940C:: @ 815940C
+ step_49
+ step_16
+ step_16
+ step_18
+ step_25
+ step_end
+
+LilycoveCity_PokemonTrainerFanClub_MapScript1_159412:: @ 8159412
+ compare 0x4095, 1
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_159515
+ compare 0x4095, 2
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_159429
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_159429:: @ 8159429
+ special 167
+ setvar 0x8004, 8
+ specialval RESULT, 163
+ compare RESULT, 0
+ callif 1, LilycoveCity_PokemonTrainerFanClub_EventScript_1594D5
+ setvar 0x8004, 9
+ specialval RESULT, 163
+ compare RESULT, 0
+ callif 1, LilycoveCity_PokemonTrainerFanClub_EventScript_1594DD
+ setvar 0x8004, 10
+ specialval RESULT, 163
+ compare RESULT, 0
+ callif 1, LilycoveCity_PokemonTrainerFanClub_EventScript_1594E5
+ setvar 0x8004, 11
+ specialval RESULT, 163
+ compare RESULT, 0
+ callif 1, LilycoveCity_PokemonTrainerFanClub_EventScript_1594ED
+ setvar 0x8004, 12
+ specialval RESULT, 163
+ compare RESULT, 0
+ callif 1, LilycoveCity_PokemonTrainerFanClub_EventScript_1594F5
+ setvar 0x8004, 13
+ specialval RESULT, 163
+ compare RESULT, 0
+ callif 1, LilycoveCity_PokemonTrainerFanClub_EventScript_1594FD
+ setvar 0x8004, 14
+ specialval RESULT, 163
+ compare RESULT, 0
+ callif 1, LilycoveCity_PokemonTrainerFanClub_EventScript_159505
+ setvar 0x8004, 15
+ specialval RESULT, 163
+ compare RESULT, 0
+ callif 1, LilycoveCity_PokemonTrainerFanClub_EventScript_15950D
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_1594D5:: @ 81594D5
+ movespriteperm 1, 7, 5
+ return
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_1594DD:: @ 81594DD
+ movespriteperm 3, 3, 4
+ return
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_1594E5:: @ 81594E5
+ movespriteperm 4, 7, 2
+ return
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_1594ED:: @ 81594ED
+ movespriteperm 5, 5, 5
+ return
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_1594F5:: @ 81594F5
+ movespriteperm 6, 5, 2
+ return
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_1594FD:: @ 81594FD
+ movespriteperm 2, 8, 4
+ return
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_159505:: @ 8159505
+ movespriteperm 7, 3, 3
+ return
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_15950D:: @ 815950D
+ movespriteperm 8, 8, 3
+ return
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_159515:: @ 8159515
+ call LilycoveCity_PokemonTrainerFanClub_EventScript_1594DD
+ call LilycoveCity_PokemonTrainerFanClub_EventScript_1594ED
+ call LilycoveCity_PokemonTrainerFanClub_EventScript_1594F5
+ call LilycoveCity_PokemonTrainerFanClub_EventScript_159505
+ call LilycoveCity_PokemonTrainerFanClub_EventScript_15950D
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_15952F:: @ 815952F
+ lock
+ faceplayer
+ setvar 0x8004, 13
+ special 165
+ compare 0x4095, 0
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_15959C
+ specialval RESULT, 163
+ compare RESULT, 1
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_15956E
+ specialval RESULT, 164
+ compare RESULT, 7
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_159592
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18A400, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_15956E:: @ 815956E
+ specialval RESULT, 164
+ compare RESULT, 1
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_159588
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18A36A, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_159588:: @ 8159588
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18A391, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_159592:: @ 8159592
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18A48D, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_15959C:: @ 815959C
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18A4EA, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_1595A6:: @ 81595A6
+ lock
+ faceplayer
+ setvar 0x8004, 8
+ special 165
+ compare 0x4095, 0
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_159613
+ specialval RESULT, 163
+ compare RESULT, 1
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_1595E5
+ specialval RESULT, 164
+ compare RESULT, 7
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_159609
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18A629, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_1595E5:: @ 81595E5
+ specialval RESULT, 164
+ compare RESULT, 1
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_1595FF
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18A584, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_1595FF:: @ 81595FF
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18A5AC, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_159609:: @ 8159609
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18A65B, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_159613:: @ 8159613
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18A6D4, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_15961D:: @ 815961D
+ lock
+ faceplayer
+ setvar 0x8004, 9
+ special 165
+ compare 0x4095, 0
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_15968A
+ specialval RESULT, 163
+ compare RESULT, 1
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_15965C
+ specialval RESULT, 164
+ compare RESULT, 7
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_159680
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18A814, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_15965C:: @ 815965C
+ specialval RESULT, 164
+ compare RESULT, 1
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_159676
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18A71E, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_159676:: @ 8159676
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18A789, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_159680:: @ 8159680
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18A8C4, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_15968A:: @ 815968A
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18A984, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_159694:: @ 8159694
+ lock
+ faceplayer
+ setvar 0x8004, 10
+ special 165
+ compare 0x4095, 0
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_159701
+ specialval RESULT, 163
+ compare RESULT, 1
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_1596D3
+ specialval RESULT, 164
+ compare RESULT, 7
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_1596F7
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18AB0A, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_1596D3:: @ 81596D3
+ specialval RESULT, 164
+ compare RESULT, 1
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_1596ED
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18AA39, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_1596ED:: @ 81596ED
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18AA83, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_1596F7:: @ 81596F7
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18AB41, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_159701:: @ 8159701
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18ABAE, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_15970B:: @ 815970B
+ lock
+ faceplayer
+ setvar 0x8004, 11
+ special 165
+ specialval RESULT, 163
+ compare RESULT, 1
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_15973F
+ specialval RESULT, 164
+ compare RESULT, 7
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_159763
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18ACC7, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_15973F:: @ 815973F
+ specialval RESULT, 164
+ compare RESULT, 1
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_159759
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18AC15, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_159759:: @ 8159759
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18AC5E, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_159763:: @ 8159763
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18AD05, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_15976D:: @ 815976D
+ lock
+ faceplayer
+ setvar 0x8004, 12
+ special 165
+ specialval RESULT, 163
+ compare RESULT, 1
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_1597A1
+ specialval RESULT, 164
+ compare RESULT, 7
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_1597C5
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18AE63, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_1597A1:: @ 81597A1
+ specialval RESULT, 164
+ compare RESULT, 1
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_1597BB
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18AD6D, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_1597BB:: @ 81597BB
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18ADEF, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_1597C5:: @ 81597C5
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18AEF5, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_1597CF:: @ 81597CF
+ lock
+ faceplayer
+ setvar 0x8004, 14
+ special 165
+ specialval RESULT, 163
+ compare RESULT, 1
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_159803
+ specialval RESULT, 164
+ compare RESULT, 7
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_159827
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18B030, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_159803:: @ 8159803
+ specialval RESULT, 164
+ compare RESULT, 1
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_15981D
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18AF62, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_15981D:: @ 815981D
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18AFD0, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_159827:: @ 8159827
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18B0C8, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_159831:: @ 8159831
+ lock
+ faceplayer
+ setvar 0x8004, 15
+ special 165
+ specialval RESULT, 163
+ compare RESULT, 1
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_159865
+ specialval RESULT, 164
+ compare RESULT, 7
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_159889
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18B1FD, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_159865:: @ 8159865
+ specialval RESULT, 164
+ compare RESULT, 1
+ jumpeq LilycoveCity_PokemonTrainerFanClub_EventScript_15987F
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18B16E, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_15987F:: @ 815987F
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18B181, 4
+ release
+ end
+
+LilycoveCity_PokemonTrainerFanClub_EventScript_159889:: @ 8159889
+ msgbox LilycoveCity_PokemonTrainerFanClub_Text_18B24F, 4
+ release
+ end
+
diff --git a/data/maps/scripts/LilycoveCity_UnusedMart.s b/data/maps/scripts/LilycoveCity_UnusedMart.s
new file mode 100644
index 000000000..edfd32b4a
--- /dev/null
+++ b/data/maps/scripts/LilycoveCity_UnusedMart.s
@@ -0,0 +1,3 @@
+LilycoveCity_UnusedMart_MapScripts:: @ 8159389
+ .byte 0
+
diff --git a/data/maps/scripts/LinkContestRoom1.s b/data/maps/scripts/LinkContestRoom1.s
new file mode 100644
index 000000000..2709f558c
--- /dev/null
+++ b/data/maps/scripts/LinkContestRoom1.s
@@ -0,0 +1 @@
+LinkContestRoom1_MapScripts:: @ 815F580
diff --git a/data/maps/scripts/LinkContestRoom2.s b/data/maps/scripts/LinkContestRoom2.s
new file mode 100644
index 000000000..f61e3fae6
--- /dev/null
+++ b/data/maps/scripts/LinkContestRoom2.s
@@ -0,0 +1 @@
+LinkContestRoom2_MapScripts:: @ 815F580
diff --git a/data/maps/scripts/LinkContestRoom3.s b/data/maps/scripts/LinkContestRoom3.s
new file mode 100644
index 000000000..5a34f848a
--- /dev/null
+++ b/data/maps/scripts/LinkContestRoom3.s
@@ -0,0 +1 @@
+LinkContestRoom3_MapScripts:: @ 815F580
diff --git a/data/maps/scripts/LinkContestRoom4.s b/data/maps/scripts/LinkContestRoom4.s
new file mode 100644
index 000000000..bf6539bdd
--- /dev/null
+++ b/data/maps/scripts/LinkContestRoom4.s
@@ -0,0 +1 @@
+LinkContestRoom4_MapScripts:: @ 815F580
diff --git a/data/maps/scripts/LinkContestRoom5.s b/data/maps/scripts/LinkContestRoom5.s
new file mode 100644
index 000000000..d3cd5d64b
--- /dev/null
+++ b/data/maps/scripts/LinkContestRoom5.s
@@ -0,0 +1 @@
+LinkContestRoom5_MapScripts:: @ 815F580
diff --git a/data/maps/scripts/LinkContestRoom6.s b/data/maps/scripts/LinkContestRoom6.s
new file mode 100644
index 000000000..26296ece6
--- /dev/null
+++ b/data/maps/scripts/LinkContestRoom6.s
@@ -0,0 +1 @@
+LinkContestRoom6_MapScripts:: @ 815F580
diff --git a/data/maps/scripts/LittlerootTown.s b/data/maps/scripts/LittlerootTown.s
new file mode 100644
index 000000000..600218ebf
--- /dev/null
+++ b/data/maps/scripts/LittlerootTown.s
@@ -0,0 +1,881 @@
+LittlerootTown_MapScripts:: @ 814D509
+ map_script 3, LittlerootTown_MapScript1_14D514
+ map_script 2, LittlerootTown_MapScript2_14D5D5
+ .byte 0
+
+LittlerootTown_MapScript1_14D514:: @ 814D514
+ setflag 2063
+ compare 0x4092, 2
+ callif 1, LittlerootTown_EventScript_14D57B
+ checkflag 82
+ callif 0, LittlerootTown_EventScript_14D583
+ compare 0x4050, 3
+ callif 1, LittlerootTown_EventScript_14D5A6
+ compare 0x4082, 4
+ callif 1, LittlerootTown_EventScript_14D570
+ compare 0x408c, 4
+ callif 1, LittlerootTown_EventScript_14D570
+ compare 0x40c7, 1
+ callif 1, LittlerootTown_EventScript_14D567
+ compare 0x408d, 3
+ callif 1, LittlerootTown_EventScript_14D563
+ end
+
+LittlerootTown_EventScript_14D563:: @ 814D563
+ setflag 301
+ return
+
+LittlerootTown_EventScript_14D567:: @ 814D567
+ setvar 0x40c7, 2
+ setflag 979
+ return
+
+LittlerootTown_EventScript_14D570:: @ 814D570
+ setvar 0x4082, 5
+ setvar 0x408c, 5
+ return
+
+LittlerootTown_EventScript_14D57B:: @ 814D57B
+ movespriteperm 4, 14, 8
+ return
+
+LittlerootTown_EventScript_14D583:: @ 814D583
+ compare 0x4050, 0
+ jumpeq LittlerootTown_EventScript_14D59A
+ movespriteperm 1, 10, 1
+ spritebehave 1, 7
+ return
+
+LittlerootTown_EventScript_14D59A:: @ 814D59A
+ movespriteperm 1, 7, 2
+ spritebehave 1, 8
+ return
+
+LittlerootTown_EventScript_14D5A6:: @ 814D5A6
+ clearflag 752
+ spritebehave 4, 8
+ checkgender
+ compare RESULT, 0
+ callif 1, LittlerootTown_EventScript_14D5C5
+ compare RESULT, 1
+ callif 1, LittlerootTown_EventScript_14D5CD
+ return
+
+LittlerootTown_EventScript_14D5C5:: @ 814D5C5
+ movespriteperm 4, 5, 9
+ return
+
+LittlerootTown_EventScript_14D5CD:: @ 814D5CD
+ movespriteperm 4, 14, 9
+ return
+
+LittlerootTown_MapScript2_14D5D5:: @ 814D5D5
+ map_script_2 0x4092, 1, LittlerootTown_EventScript_14D5EF
+ map_script_2 0x4092, 2, LittlerootTown_EventScript_14D60D
+ map_script_2 0x4092, 7, LittlerootTown_EventScript_14D6C5
+ .2byte 0
+
+LittlerootTown_EventScript_14D5EF:: @ 814D5EF
+ lockall
+ setvar 0x8004, 5
+ setvar 0x8005, 8
+ call LittlerootTown_EventScript_14D62B
+ setflag 761
+ warpmuted LittlerootTown_BrendansHouse_1F, 255, 8, 8
+ waitstate
+ releaseall
+ end
+
+LittlerootTown_EventScript_14D60D:: @ 814D60D
+ lockall
+ setvar 0x8004, 14
+ setvar 0x8005, 8
+ call LittlerootTown_EventScript_14D62B
+ setflag 762
+ warpmuted LittlerootTown_MaysHouse_1F, 255, 2, 8
+ waitstate
+ releaseall
+ end
+
+LittlerootTown_EventScript_14D62B:: @ 814D62B
+ pause 15
+ playsfx 10
+ move 255, LittlerootTown_Movement_14D6C0
+ waitmove 0
+ setdooropened 0x8004, 0x8005
+ doorchange
+ reappear 4
+ move 4, LittlerootTown_Movement_14D6AC
+ waitmove 0
+ setdoorclosed 0x8004, 0x8005
+ doorchange
+ pause 10
+ move 4, LittlerootTown_Movement_14D6AE
+ waitmove 0
+ msgbox LittlerootTown_Text_16A7C9, 4
+ closebutton
+ move 4, LittlerootTown_Movement_14D6B1
+ move 255, LittlerootTown_Movement_14D6B8
+ waitmove 0
+ setdooropened 0x8004, 0x8005
+ doorchange
+ move 4, LittlerootTown_Movement_14D6B5
+ move 255, LittlerootTown_Movement_14D6BD
+ waitmove 0
+ setflag 752
+ setvar 0x4092, 3
+ spriteinvisible 255, 0, 0
+ setdoorclosed 0x8004, 0x8005
+ doorchange
+ clearflag 868
+ clearflag 0x4000
+ return
+
+LittlerootTown_Movement_14D6AC:: @ 814D6AC
+ step_down
+ step_end
+
+LittlerootTown_Movement_14D6AE:: @ 814D6AE
+ step_down
+ step_27
+ step_end
+
+LittlerootTown_Movement_14D6B1:: @ 814D6B1
+ step_14
+ step_13
+ step_up
+ step_end
+
+LittlerootTown_Movement_14D6B5:: @ 814D6B5
+ step_up
+ step_54
+ step_end
+
+LittlerootTown_Movement_14D6B8:: @ 814D6B8
+ step_14
+ step_13
+ step_right
+ step_26
+ step_end
+
+LittlerootTown_Movement_14D6BD:: @ 814D6BD
+ step_up
+ step_up
+ step_end
+
+LittlerootTown_Movement_14D6C0:: @ 814D6C0
+ step_45
+ step_14
+ step_14
+ step_14
+ step_end
+
+LittlerootTown_EventScript_14D6C5:: @ 814D6C5
+ lockall
+ setvar 0x4092, 8
+ releaseall
+ end
+
+LittlerootTown_EventScript_14D6CD:: @ 814D6CD
+ msgbox LittlerootTown_Text_16AC00, 2
+ end
+
+LittlerootTown_EventScript_14D6D6:: @ 814D6D6
+ msgbox LittlerootTown_Text_16AC56, 2
+ end
+
+LittlerootTown_EventScript_14D6DF:: @ 814D6DF
+ lock
+ faceplayer
+ checkflag 116
+ jumpeq LittlerootTown_EventScript_14D72F
+ checkflag 82
+ jumpeq LittlerootTown_EventScript_14D722
+ compare 0x4050, 0
+ jumpif 5, LittlerootTown_EventScript_14D708
+ msgbox LittlerootTown_Text_16ACEB, 4
+ release
+ end
+
+LittlerootTown_EventScript_14D708:: @ 814D708
+ msgbox LittlerootTown_Text_16AD82, 4
+ closebutton
+ move 1, LittlerootTown_Movement_1A083D
+ waitmove 0
+ setvar 0x4050, 2
+ release
+ end
+
+LittlerootTown_EventScript_14D722:: @ 814D722
+ special 148
+ msgbox LittlerootTown_Text_16ADF2, 4
+ release
+ end
+
+LittlerootTown_EventScript_14D72F:: @ 814D72F
+ msgbox LittlerootTown_Text_16AE25, 4
+ release
+ end
+
+LittlerootTown_EventScript_14D739:: @ 814D739
+ lockall
+ move 1, LittlerootTown_Movement_14D779
+ waitmove 0
+ call LittlerootTown_EventScript_14D755
+ move 1, LittlerootTown_Movement_14D789
+ waitmove 0
+ releaseall
+ end
+
+LittlerootTown_EventScript_14D755:: @ 814D755
+ msgbox LittlerootTown_Text_16ACEB, 4
+ closebutton
+ move 1, LittlerootTown_Movement_14D787
+ move 255, LittlerootTown_Movement_14D793
+ waitmove 0
+ msgbox LittlerootTown_Text_16AD3C, 4
+ closebutton
+ return
+
+LittlerootTown_Movement_14D779:: @ 814D779
+ step_03
+ step_13
+ step_51
+ step_49
+ step_13
+ step_18
+ step_18
+ step_18
+ step_18
+ step_16
+ step_16
+ step_17
+ step_00
+ step_end
+
+LittlerootTown_Movement_14D787:: @ 814D787
+ step_down
+ step_end
+
+LittlerootTown_Movement_14D789:: @ 814D789
+ step_right
+ step_down
+ step_down
+ step_left
+ step_left
+ step_left
+ step_left
+ step_up
+ step_25
+ step_end
+
+LittlerootTown_Movement_14D793:: @ 814D793
+ step_40
+ step_down
+ step_41
+ step_end
+
+LittlerootTown_EventScript_14D797:: @ 814D797
+ lockall
+ move 1, LittlerootTown_Movement_14D7B3
+ waitmove 0
+ call LittlerootTown_EventScript_14D755
+ move 1, LittlerootTown_Movement_14D7C0
+ waitmove 0
+ releaseall
+ end
+
+LittlerootTown_Movement_14D7B3:: @ 814D7B3
+ step_03
+ step_13
+ step_51
+ step_49
+ step_13
+ step_18
+ step_18
+ step_18
+ step_16
+ step_16
+ step_18
+ step_00
+ step_end
+
+LittlerootTown_Movement_14D7C0:: @ 814D7C0
+ step_left
+ step_down
+ step_left
+ step_left
+ step_left
+ step_25
+ step_end
+
+LittlerootTown_EventScript_14D7C7:: @ 814D7C7
+ lockall
+ move 1, LittlerootTown_Movement_1A0843
+ waitmove 0
+ move 255, LittlerootTown_Movement_1A083F
+ waitmove 0
+ msgbox LittlerootTown_Text_16AD82, 4
+ closebutton
+ move 1, LittlerootTown_Movement_1A083D
+ waitmove 0
+ setvar 0x4050, 2
+ releaseall
+ end
+
+LittlerootTown_EventScript_14D7F6:: @ 814D7F6
+ msgbox LittlerootTown_Text_16AE50, 3
+ end
+
+LittlerootTown_EventScript_14D7FF:: @ 814D7FF
+ msgbox LittlerootTown_Text_16AE87, 3
+ end
+
+LittlerootTown_EventScript_14D808:: @ 814D808
+ lockall
+ checkgender
+ compare RESULT, 0
+ callif 1, LittlerootTown_EventScript_14D822
+ compare RESULT, 1
+ callif 1, LittlerootTown_EventScript_14D82B
+ releaseall
+ end
+
+LittlerootTown_EventScript_14D822:: @ 814D822
+ msgbox LittlerootTown_Text_16AEA1, 4
+ return
+
+LittlerootTown_EventScript_14D82B:: @ 814D82B
+ msgbox LittlerootTown_Text_16AEAC, 4
+ return
+
+LittlerootTown_EventScript_14D834:: @ 814D834
+ lockall
+ checkgender
+ compare RESULT, 0
+ callif 1, LittlerootTown_EventScript_14D84E
+ compare RESULT, 1
+ callif 1, LittlerootTown_EventScript_14D857
+ releaseall
+ end
+
+LittlerootTown_EventScript_14D84E:: @ 814D84E
+ msgbox LittlerootTown_Text_16AEAC, 4
+ return
+
+LittlerootTown_EventScript_14D857:: @ 814D857
+ msgbox LittlerootTown_Text_16AEA1, 4
+ return
+
+LittlerootTown_EventScript_14D860:: @ 814D860
+ lockall
+ setvar 0x8008, 0
+ movesprite 4, 10, 9
+ jump LittlerootTown_EventScript_14D8B6
+ end
+
+LittlerootTown_EventScript_14D873:: @ 814D873
+ lockall
+ setvar 0x8008, 1
+ movesprite 4, 11, 9
+ jump LittlerootTown_EventScript_14D8B6
+ end
+
+LittlerootTown_EventScript_14D886:: @ 814D886
+ lockall
+ setvar 0x8008, 2
+ jump LittlerootTown_EventScript_14D8B6
+ end
+
+LittlerootTown_EventScript_14D892:: @ 814D892
+ lockall
+ setvar 0x8008, 3
+ jump LittlerootTown_EventScript_14D8B6
+ end
+
+LittlerootTown_EventScript_14D89E:: @ 814D89E
+ lockall
+ setvar 0x8008, 4
+ jump LittlerootTown_EventScript_14D8B6
+ end
+
+LittlerootTown_EventScript_14D8AA:: @ 814D8AA
+ lockall
+ setvar 0x8008, 5
+ jump LittlerootTown_EventScript_14D8B6
+ end
+
+LittlerootTown_EventScript_14D8B6:: @ 814D8B6
+ checkgender
+ compare RESULT, 0
+ callif 1, LittlerootTown_EventScript_14D93C
+ compare RESULT, 1
+ callif 1, LittlerootTown_EventScript_14D947
+ checkgender
+ compare RESULT, 0
+ callif 1, LittlerootTown_EventScript_14D926
+ compare RESULT, 1
+ callif 1, LittlerootTown_EventScript_14D931
+ msgbox LittlerootTown_Text_16A8EE, 4
+ closebutton
+ checkgender
+ compare RESULT, 0
+ callif 1, LittlerootTown_EventScript_14D952
+ compare RESULT, 1
+ callif 1, LittlerootTown_EventScript_14D995
+ call LittlerootTown_EventScript_14DD38
+ checkgender
+ compare RESULT, 0
+ callif 1, LittlerootTown_EventScript_14DAAA
+ compare RESULT, 1
+ callif 1, LittlerootTown_EventScript_14DAED
+ jump LittlerootTown_EventScript_14DD2B
+ end
+
+LittlerootTown_EventScript_14D926:: @ 814D926
+ setvar 0x8009, 5
+ setvar 0x800a, 8
+ return
+
+LittlerootTown_EventScript_14D931:: @ 814D931
+ setvar 0x8009, 14
+ setvar 0x800a, 8
+ return
+
+LittlerootTown_EventScript_14D93C:: @ 814D93C
+ move 4, LittlerootTown_Movement_1A0843
+ waitmove 0
+ return
+
+LittlerootTown_EventScript_14D947:: @ 814D947
+ move 4, LittlerootTown_Movement_1A083F
+ waitmove 0
+ return
+
+LittlerootTown_EventScript_14D952:: @ 814D952
+ compare 0x8008, 0
+ callif 1, LittlerootTown_EventScript_14D9D8
+ compare 0x8008, 1
+ callif 1, LittlerootTown_EventScript_14D9ED
+ compare 0x8008, 2
+ callif 1, LittlerootTown_EventScript_14DA02
+ compare 0x8008, 3
+ callif 1, LittlerootTown_EventScript_14DA17
+ compare 0x8008, 4
+ callif 1, LittlerootTown_EventScript_14DA2C
+ compare 0x8008, 5
+ callif 1, LittlerootTown_EventScript_14DA41
+ return
+
+LittlerootTown_EventScript_14D995:: @ 814D995
+ compare 0x8008, 0
+ callif 1, LittlerootTown_EventScript_14D9D8
+ compare 0x8008, 1
+ callif 1, LittlerootTown_EventScript_14D9ED
+ compare 0x8008, 2
+ callif 1, LittlerootTown_EventScript_14DA56
+ compare 0x8008, 3
+ callif 1, LittlerootTown_EventScript_14DA6B
+ compare 0x8008, 4
+ callif 1, LittlerootTown_EventScript_14DA80
+ compare 0x8008, 5
+ callif 1, LittlerootTown_EventScript_14DA95
+ return
+
+LittlerootTown_EventScript_14D9D8:: @ 814D9D8
+ move 255, LittlerootTown_Movement_1A0845
+ waitmove 0
+ move 4, LittlerootTown_Movement_14DC76
+ waitmove 0
+ return
+
+LittlerootTown_EventScript_14D9ED:: @ 814D9ED
+ move 255, LittlerootTown_Movement_1A0845
+ waitmove 0
+ move 4, LittlerootTown_Movement_14DC7D
+ waitmove 0
+ return
+
+LittlerootTown_EventScript_14DA02:: @ 814DA02
+ move 255, LittlerootTown_Movement_1A083F
+ waitmove 0
+ move 4, LittlerootTown_Movement_14DC84
+ waitmove 0
+ return
+
+LittlerootTown_EventScript_14DA17:: @ 814DA17
+ move 255, LittlerootTown_Movement_1A083F
+ waitmove 0
+ move 4, LittlerootTown_Movement_14DC89
+ waitmove 0
+ return
+
+LittlerootTown_EventScript_14DA2C:: @ 814DA2C
+ move 255, LittlerootTown_Movement_1A083F
+ waitmove 0
+ move 4, LittlerootTown_Movement_14DC8F
+ waitmove 0
+ return
+
+LittlerootTown_EventScript_14DA41:: @ 814DA41
+ move 255, LittlerootTown_Movement_1A083F
+ waitmove 0
+ move 4, LittlerootTown_Movement_14DC92
+ waitmove 0
+ return
+
+LittlerootTown_EventScript_14DA56:: @ 814DA56
+ move 255, LittlerootTown_Movement_1A0843
+ waitmove 0
+ move 4, LittlerootTown_Movement_14DC96
+ waitmove 0
+ return
+
+LittlerootTown_EventScript_14DA6B:: @ 814DA6B
+ move 255, LittlerootTown_Movement_1A0843
+ waitmove 0
+ move 4, LittlerootTown_Movement_14DC9A
+ waitmove 0
+ return
+
+LittlerootTown_EventScript_14DA80:: @ 814DA80
+ move 255, LittlerootTown_Movement_1A0843
+ waitmove 0
+ move 4, LittlerootTown_Movement_14DC9D
+ waitmove 0
+ return
+
+LittlerootTown_EventScript_14DA95:: @ 814DA95
+ move 255, LittlerootTown_Movement_1A0843
+ waitmove 0
+ move 4, LittlerootTown_Movement_14DCA3
+ waitmove 0
+ return
+
+LittlerootTown_EventScript_14DAAA:: @ 814DAAA
+ compare 0x8008, 0
+ callif 1, LittlerootTown_EventScript_14DB30
+ compare 0x8008, 1
+ callif 1, LittlerootTown_EventScript_14DB3B
+ compare 0x8008, 2
+ callif 1, LittlerootTown_EventScript_14DB46
+ compare 0x8008, 3
+ callif 1, LittlerootTown_EventScript_14DB6C
+ compare 0x8008, 4
+ callif 1, LittlerootTown_EventScript_14DB92
+ compare 0x8008, 5
+ callif 1, LittlerootTown_EventScript_14DBB8
+ return
+
+LittlerootTown_EventScript_14DAED:: @ 814DAED
+ compare 0x8008, 0
+ callif 1, LittlerootTown_EventScript_14DB30
+ compare 0x8008, 1
+ callif 1, LittlerootTown_EventScript_14DB3B
+ compare 0x8008, 2
+ callif 1, LittlerootTown_EventScript_14DBDE
+ compare 0x8008, 3
+ callif 1, LittlerootTown_EventScript_14DC04
+ compare 0x8008, 4
+ callif 1, LittlerootTown_EventScript_14DC2A
+ compare 0x8008, 5
+ callif 1, LittlerootTown_EventScript_14DC50
+ return
+
+LittlerootTown_EventScript_14DB30:: @ 814DB30
+ move 4, LittlerootTown_Movement_14DCA8
+ waitmove 0
+ return
+
+LittlerootTown_EventScript_14DB3B:: @ 814DB3B
+ move 4, LittlerootTown_Movement_14DCAE
+ waitmove 0
+ return
+
+LittlerootTown_EventScript_14DB46:: @ 814DB46
+ move 4, LittlerootTown_Movement_14DCB4
+ waitmove 0
+ setdooropened 0x8009, 0x800a
+ doorchange
+ move 4, LittlerootTown_Movement_14DCE0
+ waitmove 0
+ spriteinvisible 4, 0, 9
+ setdoorclosed 0x8009, 0x800a
+ doorchange
+ return
+
+LittlerootTown_EventScript_14DB6C:: @ 814DB6C
+ move 4, LittlerootTown_Movement_14DCBA
+ waitmove 0
+ setdooropened 0x8009, 0x800a
+ doorchange
+ move 4, LittlerootTown_Movement_14DCE0
+ waitmove 0
+ spriteinvisible 4, 0, 9
+ setdoorclosed 0x8009, 0x800a
+ doorchange
+ return
+
+LittlerootTown_EventScript_14DB92:: @ 814DB92
+ move 4, LittlerootTown_Movement_14DCC1
+ waitmove 0
+ setdooropened 0x8009, 0x800a
+ doorchange
+ move 4, LittlerootTown_Movement_14DCE0
+ waitmove 0
+ spriteinvisible 4, 0, 9
+ setdoorclosed 0x8009, 0x800a
+ doorchange
+ return
+
+LittlerootTown_EventScript_14DBB8:: @ 814DBB8
+ move 4, LittlerootTown_Movement_14DCC5
+ waitmove 0
+ setdooropened 0x8009, 0x800a
+ doorchange
+ move 4, LittlerootTown_Movement_14DCE0
+ waitmove 0
+ spriteinvisible 4, 0, 9
+ setdoorclosed 0x8009, 0x800a
+ doorchange
+ return
+
+LittlerootTown_EventScript_14DBDE:: @ 814DBDE
+ move 4, LittlerootTown_Movement_14DCCA
+ waitmove 0
+ setdooropened 0x8009, 0x800a
+ doorchange
+ move 4, LittlerootTown_Movement_14DCE0
+ waitmove 0
+ spriteinvisible 4, 0, 9
+ setdoorclosed 0x8009, 0x800a
+ doorchange
+ return
+
+LittlerootTown_EventScript_14DC04:: @ 814DC04
+ move 4, LittlerootTown_Movement_14DCCF
+ waitmove 0
+ setdooropened 0x8009, 0x800a
+ doorchange
+ move 4, LittlerootTown_Movement_14DCE0
+ waitmove 0
+ spriteinvisible 4, 0, 9
+ setdoorclosed 0x8009, 0x800a
+ doorchange
+ return
+
+LittlerootTown_EventScript_14DC2A:: @ 814DC2A
+ move 4, LittlerootTown_Movement_14DCD3
+ waitmove 0
+ setdooropened 0x8009, 0x800a
+ doorchange
+ move 4, LittlerootTown_Movement_14DCE0
+ waitmove 0
+ spriteinvisible 4, 0, 9
+ setdoorclosed 0x8009, 0x800a
+ doorchange
+ return
+
+LittlerootTown_EventScript_14DC50:: @ 814DC50
+ move 4, LittlerootTown_Movement_14DCDA
+ waitmove 0
+ setdooropened 0x8009, 0x800a
+ doorchange
+ move 4, LittlerootTown_Movement_14DCE0
+ waitmove 0
+ spriteinvisible 4, 0, 9
+ setdoorclosed 0x8009, 0x800a
+ doorchange
+ return
+
+LittlerootTown_Movement_14DC76:: @ 814DC76
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_end
+
+LittlerootTown_Movement_14DC7D:: @ 814DC7D
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_end
+
+LittlerootTown_Movement_14DC84:: @ 814DC84
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+LittlerootTown_Movement_14DC89:: @ 814DC89
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+LittlerootTown_Movement_14DC8F:: @ 814DC8F
+ step_right
+ step_right
+ step_end
+
+LittlerootTown_Movement_14DC92:: @ 814DC92
+ step_right
+ step_right
+ step_right
+ step_end
+
+LittlerootTown_Movement_14DC96:: @ 814DC96
+ step_left
+ step_left
+ step_left
+ step_end
+
+LittlerootTown_Movement_14DC9A:: @ 814DC9A
+ step_left
+ step_left
+ step_end
+
+LittlerootTown_Movement_14DC9D:: @ 814DC9D
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_end
+
+LittlerootTown_Movement_14DCA3:: @ 814DCA3
+ step_left
+ step_left
+ step_left
+ step_left
+ step_end
+
+LittlerootTown_Movement_14DCA8:: @ 814DCA8
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_end
+
+LittlerootTown_Movement_14DCAE:: @ 814DCAE
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_end
+
+LittlerootTown_Movement_14DCB4:: @ 814DCB4
+ step_left
+ step_left
+ step_left
+ step_left
+ step_26
+ step_end
+
+LittlerootTown_Movement_14DCBA:: @ 814DCBA
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_26
+ step_end
+
+LittlerootTown_Movement_14DCC1:: @ 814DCC1
+ step_left
+ step_left
+ step_26
+ step_end
+
+LittlerootTown_Movement_14DCC5:: @ 814DCC5
+ step_left
+ step_left
+ step_left
+ step_26
+ step_end
+
+LittlerootTown_Movement_14DCCA:: @ 814DCCA
+ step_right
+ step_right
+ step_right
+ step_26
+ step_end
+
+LittlerootTown_Movement_14DCCF:: @ 814DCCF
+ step_right
+ step_right
+ step_26
+ step_end
+
+LittlerootTown_Movement_14DCD3:: @ 814DCD3
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_26
+ step_end
+
+LittlerootTown_Movement_14DCDA:: @ 814DCDA
+ step_right
+ step_right
+ step_right
+ step_right
+ step_26
+ step_end
+
+LittlerootTown_Movement_14DCE0:: @ 814DCE0
+ step_up
+ step_end
+
+LittlerootTown_EventScript_14DCE2:: @ 814DCE2
+ lock
+ faceplayer
+ checkgender
+ compare RESULT, 0
+ callif 1, LittlerootTown_EventScript_14D926
+ compare RESULT, 1
+ callif 1, LittlerootTown_EventScript_14D931
+ call LittlerootTown_EventScript_14DD38
+ move 4, LittlerootTown_Movement_1A0841
+ waitmove 0
+ setdooropened 0x8009, 0x800a
+ doorchange
+ move 4, LittlerootTown_Movement_14DCE0
+ waitmove 0
+ spriteinvisible 4, 0, 9
+ setdoorclosed 0x8009, 0x800a
+ doorchange
+ jump LittlerootTown_EventScript_14DD2B
+ end
+
+LittlerootTown_EventScript_14DD2B:: @ 814DD2B
+ disappear 4
+ setflag 2144
+ setvar 0x4050, 4
+ release
+ end
+
+LittlerootTown_EventScript_14DD38:: @ 814DD38
+ msgbox LittlerootTown_Text_16A8FD, 4
+ fanfare 370
+ message LittlerootTown_Text_16AA32
+ waitfanfare
+ waittext
+ setflag 274
+ msgbox LittlerootTown_Text_16AA5C, 4
+ msgbox LittlerootTown_Text_16AB10, 4
+ closebutton
+ pause 30
+ return
+
diff --git a/data/maps/scripts/LittlerootTown_BrendansHouse_1F.s b/data/maps/scripts/LittlerootTown_BrendansHouse_1F.s
new file mode 100644
index 000000000..78a10f6e6
--- /dev/null
+++ b/data/maps/scripts/LittlerootTown_BrendansHouse_1F.s
@@ -0,0 +1,125 @@
+LittlerootTown_BrendansHouse_1F_MapScripts:: @ 815263B
+ map_script 1, LittlerootTown_BrendansHouse_1F_MapScript1_15264B
+ map_script 3, LittlerootTown_BrendansHouse_1F_MapScript1_15268A
+ map_script 2, LittlerootTown_BrendansHouse_1F_MapScript2_1526D0
+ .byte 0
+
+LittlerootTown_BrendansHouse_1F_MapScript1_15264B:: @ 815264B
+ compare 0x4092, 6
+ callif 0, LittlerootTown_BrendansHouse_1F_EventScript_152660
+ checkflag 274
+ callif 1, LittlerootTown_BrendansHouse_1F_EventScript_152673
+ end
+
+LittlerootTown_BrendansHouse_1F_EventScript_152660:: @ 8152660
+ setmaptile 5, 4, 624, 1
+ setmaptile 5, 2, 616, 1
+ return
+
+LittlerootTown_BrendansHouse_1F_EventScript_152673:: @ 8152673
+ checkgender
+ compare RESULT, 0
+ jumpeq LittlerootTown_BrendansHouse_1F_EventScript_152680
+ return
+
+LittlerootTown_BrendansHouse_1F_EventScript_152680:: @ 8152680
+ setmaptile 3, 7, 659, 1
+ return
+
+LittlerootTown_BrendansHouse_1F_MapScript1_15268A:: @ 815268A
+ compare 0x4092, 3
+ callif 1, LittlerootTown_BrendansHouse_1F_EventScript_1526C4
+ compare 0x4092, 5
+ callif 1, LittlerootTown_BrendansHouse_1F_EventScript_1526AC
+ compare 0x4092, 6
+ callif 1, LittlerootTown_BrendansHouse_1F_EventScript_1526B8
+ end
+
+LittlerootTown_BrendansHouse_1F_EventScript_1526AC:: @ 81526AC
+ movespriteperm 1, 8, 4
+ spritebehave 1, 7
+ return
+
+LittlerootTown_BrendansHouse_1F_EventScript_1526B8:: @ 81526B8
+ movespriteperm 1, 4, 5
+ spritebehave 1, 7
+ return
+
+LittlerootTown_BrendansHouse_1F_EventScript_1526C4:: @ 81526C4
+ movespriteperm 1, 9, 8
+ spritebehave 1, 7
+ return
+
+LittlerootTown_BrendansHouse_1F_MapScript2_1526D0:: @ 81526D0
+ map_script_2 0x4092, 3, LittlerootTown_BrendansHouse_1F_EventScript_152722
+ map_script_2 0x4092, 5, LittlerootTown_BrendansHouse_1F_EventScript_1526FA
+ map_script_2 0x4092, 6, LittlerootTown_BrendansHouse_1F_EventScript_152733
+ map_script_2 0x4082, 1, LittlerootTown_BrendansHouse_1F_EventScript_152744
+ map_script_2 0x4082, 3, LittlerootTown_BrendansHouse_1F_EventScript_1B6CDE
+ .2byte 0
+
+LittlerootTown_BrendansHouse_1F_EventScript_1526FA:: @ 81526FA
+ lockall
+ msgbox LittlerootTown_BrendansHouse_1F_Text_172574, 4
+ closebutton
+ move 255, LittlerootTown_BrendansHouse_1F_Movement_152720
+ move 1, LittlerootTown_BrendansHouse_1F_Movement_152720
+ waitmove 0
+ warp LittlerootTown_BrendansHouse_2F, 255, 7, 1
+ waitstate
+ releaseall
+ end
+
+LittlerootTown_BrendansHouse_1F_Movement_152720:: @ 8152720
+ step_up
+ step_end
+
+LittlerootTown_BrendansHouse_1F_EventScript_152722:: @ 8152722
+ lockall
+ setvar 0x8004, 1
+ setvar 0x8005, 0
+ jump LittlerootTown_BrendansHouse_1F_EventScript_1B6956
+ end
+
+LittlerootTown_BrendansHouse_1F_EventScript_152733:: @ 8152733
+ lockall
+ setvar 0x8004, 0
+ setvar 0x8005, 1
+ jump LittlerootTown_BrendansHouse_1F_EventScript_1B6ABF
+ end
+
+LittlerootTown_BrendansHouse_1F_EventScript_152744:: @ 8152744
+ lockall
+ playsfx 21
+ move 4, LittlerootTown_BrendansHouse_1F_Movement_1A0833
+ waitmove 0
+ move 4, LittlerootTown_BrendansHouse_1F_Movement_1A0835
+ waitmove 0
+ move 255, LittlerootTown_BrendansHouse_1F_Movement_1A083F
+ move 4, LittlerootTown_BrendansHouse_1F_Movement_152782
+ waitmove 0
+ special 149
+ msgbox LittlerootTown_BrendansHouse_1F_Text_1730C2, 4
+ setflag 87
+ setvar 0x4082, 2
+ releaseall
+ end
+
+LittlerootTown_BrendansHouse_1F_Movement_152782:: @ 8152782
+ step_down
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+LittlerootTown_BrendansHouse_1F_EventScript_152789:: @ 8152789
+ lockall
+ setvar 0x8004, 1
+ setvar 0x8005, 0
+ move 0x8004, LittlerootTown_BrendansHouse_1F_Movement_1A083F
+ waitmove 0
+ jump LittlerootTown_BrendansHouse_1F_EventScript_1B69B7
+ end
+
diff --git a/data/maps/scripts/LittlerootTown_BrendansHouse_2F.s b/data/maps/scripts/LittlerootTown_BrendansHouse_2F.s
new file mode 100644
index 000000000..ede1d33a5
--- /dev/null
+++ b/data/maps/scripts/LittlerootTown_BrendansHouse_2F.s
@@ -0,0 +1,31 @@
+LittlerootTown_BrendansHouse_2F_MapScripts:: @ 81527A4
+ map_script 3, LittlerootTown_BrendansHouse_2F_MapScript1_1527AF
+ map_script 4, LittlerootTown_BrendansHouse_2F_MapScript2_1527DA
+ .byte 0
+
+LittlerootTown_BrendansHouse_2F_MapScript1_1527AF:: @ 81527AF
+ checkflag 130
+ callif 0, LittlerootTown_BrendansHouse_2F_EventScript_1527CE
+ compare 0x4092, 4
+ callif 1, LittlerootTown_BrendansHouse_2F_EventScript_1B6950
+ call LittlerootTown_BrendansHouse_2F_EventScript_1A2F3D
+ setvar 0x4089, 0
+ end
+
+LittlerootTown_BrendansHouse_2F_EventScript_1527CE:: @ 81527CE
+ movespriteperm 1, 1, 2
+ spritebehave 1, 7
+ return
+
+LittlerootTown_BrendansHouse_2F_MapScript2_1527DA:: @ 81527DA
+ map_script_2 0x4089, 0, LittlerootTown_BrendansHouse_2F_EventScript_1527E4
+ .2byte 0
+
+LittlerootTown_BrendansHouse_2F_EventScript_1527E4:: @ 81527E4
+ checkgender
+ compare RESULT, 0
+ jumpeq LittlerootTown_BrendansHouse_2F_EventScript_1A2F68
+ end
+
+ .incbin "baserom.gba", 0x1527f1, 0x2d
+
diff --git a/data/maps/scripts/LittlerootTown_MaysHouse_1F.s b/data/maps/scripts/LittlerootTown_MaysHouse_1F.s
new file mode 100644
index 000000000..baf6df5af
--- /dev/null
+++ b/data/maps/scripts/LittlerootTown_MaysHouse_1F.s
@@ -0,0 +1,157 @@
+LittlerootTown_MaysHouse_1F_MapScripts:: @ 8152879
+ map_script 1, LittlerootTown_MaysHouse_1F_MapScript1_152889
+ map_script 3, LittlerootTown_MaysHouse_1F_MapScript1_1528C8
+ map_script 2, LittlerootTown_MaysHouse_1F_MapScript2_15290E
+ .byte 0
+
+LittlerootTown_MaysHouse_1F_MapScript1_152889:: @ 8152889
+ compare 0x4092, 6
+ callif 0, LittlerootTown_MaysHouse_1F_EventScript_15289E
+ checkflag 274
+ callif 1, LittlerootTown_MaysHouse_1F_EventScript_1528B1
+ end
+
+LittlerootTown_MaysHouse_1F_EventScript_15289E:: @ 815289E
+ setmaptile 5, 4, 624, 1
+ setmaptile 5, 2, 616, 1
+ return
+
+LittlerootTown_MaysHouse_1F_EventScript_1528B1:: @ 81528B1
+ checkgender
+ compare RESULT, 1
+ jumpeq LittlerootTown_MaysHouse_1F_EventScript_1528BE
+ return
+
+LittlerootTown_MaysHouse_1F_EventScript_1528BE:: @ 81528BE
+ setmaptile 6, 7, 659, 1
+ return
+
+LittlerootTown_MaysHouse_1F_MapScript1_1528C8:: @ 81528C8
+ compare 0x4092, 3
+ callif 1, LittlerootTown_MaysHouse_1F_EventScript_152902
+ compare 0x4092, 5
+ callif 1, LittlerootTown_MaysHouse_1F_EventScript_1528EA
+ compare 0x4092, 6
+ callif 1, LittlerootTown_MaysHouse_1F_EventScript_1528F6
+ end
+
+LittlerootTown_MaysHouse_1F_EventScript_1528EA:: @ 81528EA
+ movespriteperm 1, 2, 4
+ spritebehave 1, 7
+ return
+
+LittlerootTown_MaysHouse_1F_EventScript_1528F6:: @ 81528F6
+ movespriteperm 1, 6, 5
+ spritebehave 1, 7
+ return
+
+LittlerootTown_MaysHouse_1F_EventScript_152902:: @ 8152902
+ movespriteperm 1, 1, 8
+ spritebehave 1, 7
+ return
+
+LittlerootTown_MaysHouse_1F_MapScript2_15290E:: @ 815290E
+ map_script_2 0x4092, 3, LittlerootTown_MaysHouse_1F_EventScript_152960
+ map_script_2 0x4092, 5, LittlerootTown_MaysHouse_1F_EventScript_152938
+ map_script_2 0x4092, 6, LittlerootTown_MaysHouse_1F_EventScript_152971
+ map_script_2 0x408c, 1, LittlerootTown_MaysHouse_1F_EventScript_152982
+ map_script_2 0x4082, 3, LittlerootTown_MaysHouse_1F_EventScript_1B6CDE
+ .2byte 0
+
+LittlerootTown_MaysHouse_1F_EventScript_152938:: @ 8152938
+ lockall
+ msgbox LittlerootTown_MaysHouse_1F_Text_172574, 4
+ closebutton
+ move 255, LittlerootTown_MaysHouse_1F_Movement_15295E
+ move 1, LittlerootTown_MaysHouse_1F_Movement_15295E
+ waitmove 0
+ warp LittlerootTown_MaysHouse_2F, 255, 1, 1
+ waitstate
+ releaseall
+ end
+
+LittlerootTown_MaysHouse_1F_Movement_15295E:: @ 815295E
+ step_up
+ step_end
+
+LittlerootTown_MaysHouse_1F_EventScript_152960:: @ 8152960
+ lockall
+ setvar 0x8004, 1
+ setvar 0x8005, 1
+ jump LittlerootTown_MaysHouse_1F_EventScript_1B6956
+ end
+
+LittlerootTown_MaysHouse_1F_EventScript_152971:: @ 8152971
+ lockall
+ setvar 0x8004, 1
+ setvar 0x8005, 1
+ jump LittlerootTown_MaysHouse_1F_EventScript_1B6B2E
+ end
+
+LittlerootTown_MaysHouse_1F_EventScript_152982:: @ 8152982
+ lockall
+ playsfx 21
+ move 4, LittlerootTown_MaysHouse_1F_Movement_1A0833
+ waitmove 0
+ move 4, LittlerootTown_MaysHouse_1F_Movement_1A0835
+ waitmove 0
+ move 255, LittlerootTown_MaysHouse_1F_Movement_1A0843
+ move 4, LittlerootTown_MaysHouse_1F_Movement_1529C0
+ waitmove 0
+ special 149
+ msgbox LittlerootTown_MaysHouse_1F_Text_1730C2, 4
+ setflag 87
+ setvar 0x408c, 2
+ releaseall
+ end
+
+LittlerootTown_MaysHouse_1F_Movement_1529C0:: @ 81529C0
+ step_down
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_end
+
+ .incbin "baserom.gba", 0x1529c7, 0x24
+
+LittlerootTown_BrendansHouse_1F_EventScript_1529EB:: @ 81529EB
+LittlerootTown_MaysHouse_1F_EventScript_1529EB:: @ 81529EB
+ lock
+ faceplayer
+ checkflag 130
+ jumpeq LittlerootTown_BrendansHouse_1F_EventScript_152A21
+ checkflag 301
+ jumpeq LittlerootTown_BrendansHouse_1F_EventScript_152A17
+ compare 0x408d, 3
+ jumpeq LittlerootTown_BrendansHouse_1F_EventScript_152A2B
+ special 149
+ msgbox LittlerootTown_BrendansHouse_1F_Text_1731C6, 4
+ release
+ end
+
+LittlerootTown_BrendansHouse_1F_EventScript_152A17:: @ 8152A17
+ msgbox LittlerootTown_BrendansHouse_1F_Text_173262, 4
+ release
+ end
+
+LittlerootTown_BrendansHouse_1F_EventScript_152A21:: @ 8152A21
+ msgbox LittlerootTown_BrendansHouse_1F_Text_1732B9, 4
+ release
+ end
+
+LittlerootTown_BrendansHouse_1F_EventScript_152A2B:: @ 8152A2B
+ msgbox LittlerootTown_BrendansHouse_1F_Text_1731E3, 4
+ release
+ end
+
+LittlerootTown_MaysHouse_1F_EventScript_152A35:: @ 8152A35
+ lockall
+ setvar 0x8004, 1
+ setvar 0x8005, 1
+ move 0x8004, LittlerootTown_MaysHouse_1F_Movement_1A0843
+ waitmove 0
+ jump LittlerootTown_MaysHouse_1F_EventScript_1B69B7
+ end
+
diff --git a/data/maps/scripts/LittlerootTown_MaysHouse_2F.s b/data/maps/scripts/LittlerootTown_MaysHouse_2F.s
new file mode 100644
index 000000000..34a7752fa
--- /dev/null
+++ b/data/maps/scripts/LittlerootTown_MaysHouse_2F.s
@@ -0,0 +1,143 @@
+LittlerootTown_MaysHouse_2F_MapScripts:: @ 8152A50
+ map_script 3, LittlerootTown_MaysHouse_2F_MapScript1_152A5B
+ map_script 4, LittlerootTown_MaysHouse_2F_MapScript2_152A86
+ .byte 0
+
+LittlerootTown_MaysHouse_2F_MapScript1_152A5B:: @ 8152A5B
+ checkflag 130
+ callif 0, LittlerootTown_MaysHouse_2F_EventScript_152A7A
+ compare 0x4092, 4
+ callif 1, LittlerootTown_MaysHouse_2F_EventScript_1B6950
+ call LittlerootTown_MaysHouse_2F_EventScript_1A2F3D
+ setvar 0x4089, 0
+ end
+
+LittlerootTown_MaysHouse_2F_EventScript_152A7A:: @ 8152A7A
+ movespriteperm 1, 7, 2
+ spritebehave 1, 7
+ return
+
+LittlerootTown_MaysHouse_2F_MapScript2_152A86:: @ 8152A86
+ map_script_2 0x4089, 0, LittlerootTown_MaysHouse_2F_EventScript_152A90
+ .2byte 0
+
+LittlerootTown_MaysHouse_2F_EventScript_152A90:: @ 8152A90
+ checkgender
+ compare RESULT, 1
+ jumpeq LittlerootTown_MaysHouse_2F_EventScript_1A2F68
+ end
+
+LittlerootTown_BrendansHouse_2F_EventScript_152A9D:: @ 8152A9D
+LittlerootTown_MaysHouse_2F_EventScript_152A9D:: @ 8152A9D
+ lockall
+ checkflag 292
+ jumpeq LittlerootTown_BrendansHouse_2F_EventScript_152BB5
+ checkgender
+ compare RESULT, 0
+ callif 1, LittlerootTown_BrendansHouse_2F_EventScript_152AD4
+ compare RESULT, 1
+ callif 1, LittlerootTown_BrendansHouse_2F_EventScript_152B4A
+ playsfx 9
+ disappear LAST_TALKED
+ setvar 0x408d, 3
+ setvar 0x4050, 1
+ playmusicbattle 0
+ fadedefault
+ releaseall
+ end
+
+LittlerootTown_BrendansHouse_2F_EventScript_152AD4:: @ 8152AD4
+ msgbox LittlerootTown_BrendansHouse_2F_Text_17337E, 4
+ playmusic 415, 1
+ move LAST_TALKED, LittlerootTown_BrendansHouse_2F_Movement_1A0839
+ waitmove 0
+ move LAST_TALKED, LittlerootTown_BrendansHouse_2F_Movement_1A0833
+ waitmove 0
+ move LAST_TALKED, LittlerootTown_BrendansHouse_2F_Movement_1A0835
+ waitmove 0
+ msgbox LittlerootTown_BrendansHouse_2F_Text_1733AF, 4
+ closebutton
+ compare FACING, 4
+ callif 1, LittlerootTown_BrendansHouse_2F_EventScript_152B29
+ compare FACING, 2
+ callif 1, LittlerootTown_BrendansHouse_2F_EventScript_152B34
+ compare FACING, 3
+ callif 1, LittlerootTown_BrendansHouse_2F_EventScript_152B3F
+ return
+
+LittlerootTown_BrendansHouse_2F_EventScript_152B29:: @ 8152B29
+ move LAST_TALKED, LittlerootTown_BrendansHouse_2F_Movement_152C11
+ waitmove 0
+ return
+
+LittlerootTown_BrendansHouse_2F_EventScript_152B34:: @ 8152B34
+ move LAST_TALKED, LittlerootTown_BrendansHouse_2F_Movement_152C1C
+ waitmove 0
+ return
+
+LittlerootTown_BrendansHouse_2F_EventScript_152B3F:: @ 8152B3F
+ move LAST_TALKED, LittlerootTown_BrendansHouse_2F_Movement_152C1C
+ waitmove 0
+ return
+
+LittlerootTown_BrendansHouse_2F_EventScript_152B4A:: @ 8152B4A
+ msgbox LittlerootTown_BrendansHouse_2F_Text_1735C9, 4
+ playmusic 421, 1
+ move LAST_TALKED, LittlerootTown_BrendansHouse_2F_Movement_1A0839
+ waitmove 0
+ move LAST_TALKED, LittlerootTown_BrendansHouse_2F_Movement_1A0833
+ waitmove 0
+ move LAST_TALKED, LittlerootTown_BrendansHouse_2F_Movement_1A0835
+ waitmove 0
+ msgbox LittlerootTown_BrendansHouse_2F_Text_1735FC, 4
+ closebutton
+ compare FACING, 4
+ callif 1, LittlerootTown_BrendansHouse_2F_EventScript_152B9F
+ compare FACING, 2
+ callif 1, LittlerootTown_BrendansHouse_2F_EventScript_152B9F
+ compare FACING, 3
+ callif 1, LittlerootTown_BrendansHouse_2F_EventScript_152BAA
+ return
+
+LittlerootTown_BrendansHouse_2F_EventScript_152B9F:: @ 8152B9F
+ move LAST_TALKED, LittlerootTown_BrendansHouse_2F_Movement_152C30
+ waitmove 0
+ return
+
+LittlerootTown_BrendansHouse_2F_EventScript_152BAA:: @ 8152BAA
+ move LAST_TALKED, LittlerootTown_BrendansHouse_2F_Movement_152C25
+ waitmove 0
+ return
+
+LittlerootTown_BrendansHouse_2F_EventScript_152BB5:: @ 8152BB5
+ move LAST_TALKED, LittlerootTown_BrendansHouse_2F_Movement_1A0839
+ waitmove 0
+ checkgender
+ compare RESULT, 0
+ callif 1, LittlerootTown_BrendansHouse_2F_EventScript_152BDB
+ compare RESULT, 1
+ callif 1, LittlerootTown_BrendansHouse_2F_EventScript_152BED
+ setflag 293
+ releaseall
+ end
+
+LittlerootTown_BrendansHouse_2F_EventScript_152BDB:: @ 8152BDB
+ checkflag 293
+ jumpeq LittlerootTown_BrendansHouse_2F_EventScript_152BFF
+ msgbox LittlerootTown_BrendansHouse_2F_Text_1737AE, 4
+ return
+
+LittlerootTown_BrendansHouse_2F_EventScript_152BED:: @ 8152BED
+ checkflag 293
+ jumpeq LittlerootTown_BrendansHouse_2F_EventScript_152C08
+ msgbox LittlerootTown_BrendansHouse_2F_Text_1738F2, 4
+ return
+
+LittlerootTown_BrendansHouse_2F_EventScript_152BFF:: @ 8152BFF
+ msgbox LittlerootTown_BrendansHouse_2F_Text_173883, 4
+ return
+
+LittlerootTown_BrendansHouse_2F_EventScript_152C08:: @ 8152C08
+ msgbox LittlerootTown_BrendansHouse_2F_Text_1739CC, 4
+ return
+
diff --git a/data/maps/scripts/LittlerootTown_ProfessorBirchsLab.s b/data/maps/scripts/LittlerootTown_ProfessorBirchsLab.s
new file mode 100644
index 000000000..81bb270fc
--- /dev/null
+++ b/data/maps/scripts/LittlerootTown_ProfessorBirchsLab.s
@@ -0,0 +1,217 @@
+LittlerootTown_ProfessorBirchsLab_MapScripts:: @ 8152C82
+ map_script 3, LittlerootTown_ProfessorBirchsLab_MapScript1_152C92
+ map_script 4, LittlerootTown_ProfessorBirchsLab_MapScript2_152C9D
+ map_script 2, LittlerootTown_ProfessorBirchsLab_MapScript2_152CAC
+ .byte 0
+
+LittlerootTown_ProfessorBirchsLab_MapScript1_152C92:: @ 8152C92
+ call LittlerootTown_ProfessorBirchsLab_EventScript_1A014E
+ call LittlerootTown_ProfessorBirchsLab_EventScript_1A02F4
+ end
+
+LittlerootTown_ProfessorBirchsLab_MapScript2_152C9D:: @ 8152C9D
+ map_script_2 0x4084, 2, LittlerootTown_ProfessorBirchsLab_EventScript_152CA7
+ .2byte 0
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152CA7:: @ 8152CA7
+ spriteface 255, 2
+ end
+
+LittlerootTown_ProfessorBirchsLab_MapScript2_152CAC:: @ 8152CAC
+ map_script_2 0x4084, 2, LittlerootTown_ProfessorBirchsLab_EventScript_152CBE
+ map_script_2 0x4084, 4, LittlerootTown_ProfessorBirchsLab_EventScript_152D4A
+ .2byte 0
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152CBE:: @ 8152CBE
+ lockall
+ bufferfirstpoke 0
+ message LittlerootTown_ProfessorBirchsLab_Text_173D94
+ waittext
+ fanfare 370
+ waitfanfare
+ msgbox LittlerootTown_ProfessorBirchsLab_Text_173EF8, 5
+ compare RESULT, 1
+ jumpeq LittlerootTown_ProfessorBirchsLab_EventScript_152CEA
+ compare RESULT, 0
+ jumpeq LittlerootTown_ProfessorBirchsLab_EventScript_152CFA
+ end
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152CEA:: @ 8152CEA
+ setvar 0x8004, 0
+ call LittlerootTown_ProfessorBirchsLab_EventScript_1A0678
+ jump LittlerootTown_ProfessorBirchsLab_EventScript_152CFA
+ end
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152CFA:: @ 8152CFA
+ msgbox LittlerootTown_ProfessorBirchsLab_Text_173F3D, 5
+ compare RESULT, 1
+ jumpeq LittlerootTown_ProfessorBirchsLab_EventScript_152D19
+ compare RESULT, 0
+ jumpeq LittlerootTown_ProfessorBirchsLab_EventScript_152D2B
+ end
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152D19:: @ 8152D19
+ msgbox LittlerootTown_ProfessorBirchsLab_Text_174015, 4
+ clearflag 991
+ setvar 0x4084, 3
+ releaseall
+ end
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152D2B:: @ 8152D2B
+ msgbox LittlerootTown_ProfessorBirchsLab_Text_174075, 5
+ compare RESULT, 1
+ jumpeq LittlerootTown_ProfessorBirchsLab_EventScript_152D19
+ compare RESULT, 0
+ jumpeq LittlerootTown_ProfessorBirchsLab_EventScript_152D2B
+ end
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152D4A:: @ 8152D4A
+ lockall
+ move 255, LittlerootTown_ProfessorBirchsLab_Movement_152D5B
+ waitmove 0
+ jump LittlerootTown_ProfessorBirchsLab_EventScript_152DBA
+ end
+
+LittlerootTown_ProfessorBirchsLab_Movement_152D5B:: @ 8152D5B
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_end
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152D63:: @ 8152D63
+ lock
+ faceplayer
+ compare 0x4084, 3
+ jumpif 4, LittlerootTown_ProfessorBirchsLab_EventScript_152D90
+ checkflag 88
+ jumpeq LittlerootTown_ProfessorBirchsLab_EventScript_152D86
+ msgbox LittlerootTown_ProfessorBirchsLab_Text_173B29, 4
+ setflag 88
+ release
+ end
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152D86:: @ 8152D86
+ msgbox LittlerootTown_ProfessorBirchsLab_Text_173C88, 4
+ release
+ end
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152D90:: @ 8152D90
+ msgbox LittlerootTown_ProfessorBirchsLab_Text_173D15, 4
+ release
+ end
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152D9A:: @ 8152D9A
+ lock
+ faceplayer
+ checkflag 896
+ jumpif 0, LittlerootTown_ProfessorBirchsLab_EventScript_1A037F
+ compare 0x4084, 5
+ jumpeq LittlerootTown_ProfessorBirchsLab_EventScript_152E7B
+ msgbox LittlerootTown_ProfessorBirchsLab_Text_1740B4, 4
+ release
+ end
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152DBA:: @ 8152DBA
+ msgbox LittlerootTown_ProfessorBirchsLab_Text_17411F, 4
+ call LittlerootTown_ProfessorBirchsLab_EventScript_152E6D
+ msgbox LittlerootTown_ProfessorBirchsLab_Text_174248, 4
+ move 3, LittlerootTown_ProfessorBirchsLab_Movement_152E97
+ waitmove 0
+ move 255, LittlerootTown_ProfessorBirchsLab_Movement_1A0843
+ waitmove 0
+ checkgender
+ compare RESULT, 0
+ callif 1, LittlerootTown_ProfessorBirchsLab_EventScript_152E13
+ compare RESULT, 1
+ callif 1, LittlerootTown_ProfessorBirchsLab_EventScript_152E40
+ setvar 0x4084, 5
+ setflag 116
+ setvar 0x4051, 1
+ setvar 0x408d, 4
+ setvar 0x4050, 3
+ releaseall
+ end
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152E13:: @ 8152E13
+ msgbox LittlerootTown_ProfessorBirchsLab_Text_1743D4, 4
+ giveitem ITEM_POKE_BALL, 5
+ compare RESULT, 0
+ callif 1, LittlerootTown_ProfessorBirchsLab_EventScript_152E85
+ msgbox LittlerootTown_ProfessorBirchsLab_Text_17443D, 4
+ setvar RESULT, 0
+ return
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152E40:: @ 8152E40
+ msgbox LittlerootTown_ProfessorBirchsLab_Text_17453C, 4
+ giveitem ITEM_POKE_BALL, 5
+ compare RESULT, 0
+ callif 1, LittlerootTown_ProfessorBirchsLab_EventScript_152E8E
+ msgbox LittlerootTown_ProfessorBirchsLab_Text_17458C, 4
+ setvar RESULT, 1
+ return
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152E6D:: @ 8152E6D
+ fanfare 370
+ message LittlerootTown_ProfessorBirchsLab_Text_17422F
+ waitfanfare
+ waittext
+ setflag 2049
+ return
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152E7B:: @ 8152E7B
+ msgbox LittlerootTown_ProfessorBirchsLab_Text_17436C, 4
+ release
+ end
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152E85:: @ 8152E85
+ msgbox LittlerootTown_ProfessorBirchsLab_Text_1744F0, 4
+ return
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152E8E:: @ 8152E8E
+ msgbox LittlerootTown_ProfessorBirchsLab_Text_17465B, 4
+ return
+
+LittlerootTown_ProfessorBirchsLab_Movement_152E97:: @ 8152E97
+ step_down
+ step_27
+ step_end
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152E9A:: @ 8152E9A
+ msgbox LittlerootTown_ProfessorBirchsLab_Text_1746A2, 3
+ end
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152EA3:: @ 8152EA3
+ lock
+ faceplayer
+ checkgender
+ compare RESULT, 0
+ callif 1, LittlerootTown_ProfessorBirchsLab_EventScript_152EBE
+ compare RESULT, 1
+ callif 1, LittlerootTown_ProfessorBirchsLab_EventScript_152EC7
+ release
+ end
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152EBE:: @ 8152EBE
+ msgbox LittlerootTown_ProfessorBirchsLab_Text_174505, 4
+ return
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152EC7:: @ 8152EC7
+ msgbox LittlerootTown_ProfessorBirchsLab_Text_174671, 4
+ return
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152ED0:: @ 8152ED0
+ msgbox LittlerootTown_ProfessorBirchsLab_Text_1746E7, 3
+ end
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152ED9:: @ 8152ED9
+ msgbox LittlerootTown_ProfessorBirchsLab_Text_174724, 3
+ end
+
+LittlerootTown_ProfessorBirchsLab_EventScript_152EE2:: @ 8152EE2
+ msgbox LittlerootTown_ProfessorBirchsLab_Text_174748, 3
+ end
+
diff --git a/data/maps/scripts/MagmaHideout_1F.s b/data/maps/scripts/MagmaHideout_1F.s
new file mode 100644
index 000000000..c58248c10
--- /dev/null
+++ b/data/maps/scripts/MagmaHideout_1F.s
@@ -0,0 +1,3 @@
+MagmaHideout_1F_MapScripts:: @ 815F2A7
+ .byte 0
+
diff --git a/data/maps/scripts/MagmaHideout_B1F.s b/data/maps/scripts/MagmaHideout_B1F.s
new file mode 100644
index 000000000..ca2d6f773
--- /dev/null
+++ b/data/maps/scripts/MagmaHideout_B1F.s
@@ -0,0 +1,13 @@
+MagmaHideout_B1F_MapScripts:: @ 815F2A8
+ map_script 5, MagmaHideout_B1F_MapScript1_15F2AE
+ .byte 0
+
+MagmaHideout_B1F_MapScript1_15F2AE:: @ 815F2AE
+ checkflag 2145
+ callif 1, MagmaHideout_B1F_EventScript_15F2B8
+ end
+
+MagmaHideout_B1F_EventScript_15F2B8:: @ 815F2B8
+ disappear LAST_TALKED
+ return
+
diff --git a/data/maps/scripts/MagmaHideout_B2F.s b/data/maps/scripts/MagmaHideout_B2F.s
new file mode 100644
index 000000000..09b6659c3
--- /dev/null
+++ b/data/maps/scripts/MagmaHideout_B2F.s
@@ -0,0 +1,3 @@
+MagmaHideout_B2F_MapScripts:: @ 815F2BC
+ .byte 0
+
diff --git a/data/maps/scripts/MauvilleCity.s b/data/maps/scripts/MauvilleCity.s
new file mode 100644
index 000000000..229b6143c
--- /dev/null
+++ b/data/maps/scripts/MauvilleCity.s
@@ -0,0 +1,319 @@
+MauvilleCity_MapScripts:: @ 814C032
+ map_script 3, MauvilleCity_MapScript1_14C038
+ .byte 0
+
+MauvilleCity_MapScript1_14C038:: @ 814C038
+ setflag 2072
+ clearflag 961
+ setflag 2098
+ clearflag 99
+ setvar 0x4093, 0
+ checkflag 209
+ callif 1, MauvilleCity_EventScript_14C053
+ end
+
+MauvilleCity_EventScript_14C053:: @ 814C053
+ clearflag 913
+ setflag 912
+ return
+
+MauvilleCity_EventScript_14C05A:: @ 814C05A
+ msgbox MauvilleCity_Text_1664DF, 2
+ end
+
+MauvilleCity_EventScript_14C063:: @ 814C063
+ msgbox MauvilleCity_Text_16655C, 2
+ end
+
+MauvilleCity_EventScript_14C06C:: @ 814C06C
+ msgbox MauvilleCity_Text_1665DB, 2
+ end
+
+MauvilleCity_EventScript_14C075:: @ 814C075
+ msgbox MauvilleCity_Text_16662A, 2
+ end
+
+MauvilleCity_EventScript_14C07E:: @ 814C07E
+ msgbox MauvilleCity_Text_166665, 3
+ end
+
+MauvilleCity_EventScript_14C087:: @ 814C087
+ msgbox MauvilleCity_Text_166697, 3
+ end
+
+MauvilleCity_EventScript_14C090:: @ 814C090
+ msgbox MauvilleCity_Text_1666E4, 3
+ end
+
+MauvilleCity_EventScript_14C099:: @ 814C099
+ msgbox MauvilleCity_Text_16671C, 3
+ end
+
+MauvilleCity_EventScript_14C0A2:: @ 814C0A2
+ lock
+ faceplayer
+ checkflag 98
+ jumpeq MauvilleCity_EventScript_14C0BA
+ msgbox MauvilleCity_Text_16674A, 4
+ setflag 98
+ release
+ end
+
+MauvilleCity_EventScript_14C0BA:: @ 814C0BA
+ msgbox MauvilleCity_Text_166879, 4
+ release
+ end
+
+MauvilleCity_EventScript_14C0C4:: @ 814C0C4
+ lock
+ faceplayer
+ checkflag 284
+ jumpeq MauvilleCity_EventScript_14C0E4
+ msgbox MauvilleCity_Text_165B76, 4
+ closebutton
+ move 7, MauvilleCity_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+MauvilleCity_EventScript_14C0E4:: @ 814C0E4
+ msgbox MauvilleCity_Text_165E45, 4
+ closebutton
+ move 7, MauvilleCity_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+MauvilleCity_EventScript_14C0F9:: @ 814C0F9
+ lockall
+ checkflag 284
+ jumpeq MauvilleCity_EventScript_14C292
+ move 6, MauvilleCity_Movement_1A0843
+ waitmove 0
+ msgbox MauvilleCity_Text_165BE3, 4
+ msgbox MauvilleCity_Text_165C57, 4
+ msgbox MauvilleCity_Text_165D01, 4
+ move 6, MauvilleCity_Movement_1A0839
+ waitmove 0
+ playsfx 21
+ move 6, MauvilleCity_Movement_1A0833
+ waitmove 0
+ move 6, MauvilleCity_Movement_1A0835
+ waitmove 0
+ msgbox MauvilleCity_Text_165D50, 5
+ jump MauvilleCity_EventScript_14C154
+ end
+
+MauvilleCity_EventScript_14C154:: @ 814C154
+ compare RESULT, 1
+ callif 1, MauvilleCity_EventScript_14C23C
+ compare RESULT, 0
+ jumpeq MauvilleCity_EventScript_14C285
+ closebutton
+ switch FACING
+ case 2, MauvilleCity_EventScript_14C187
+ case 4, MauvilleCity_EventScript_14C1D9
+ end
+
+MauvilleCity_EventScript_14C187:: @ 814C187
+ move 6, MauvilleCity_Movement_14C2AA
+ move 7, MauvilleCity_Movement_14C2CC
+ waitmove 0
+ move 6, MauvilleCity_Movement_1A0843
+ waitmove 0
+ pause 30
+ move 7, MauvilleCity_Movement_14C2D8
+ waitmove 0
+ move 255, MauvilleCity_Movement_1A0845
+ waitmove 0
+ msgbox MauvilleCity_Text_1660FA, 4
+ closebutton
+ move 6, MauvilleCity_Movement_14C2B6
+ move 7, MauvilleCity_Movement_14C2DF
+ waitmove 0
+ jump MauvilleCity_EventScript_14C22B
+ end
+
+MauvilleCity_EventScript_14C1D9:: @ 814C1D9
+ move 6, MauvilleCity_Movement_14C2B0
+ move 7, MauvilleCity_Movement_14C2D2
+ waitmove 0
+ move 6, MauvilleCity_Movement_1A0843
+ waitmove 0
+ pause 30
+ move 7, MauvilleCity_Movement_14C2DC
+ waitmove 0
+ move 255, MauvilleCity_Movement_1A0845
+ waitmove 0
+ msgbox MauvilleCity_Text_1660FA, 4
+ closebutton
+ move 6, MauvilleCity_Movement_14C2C1
+ move 7, MauvilleCity_Movement_14C2E8
+ waitmove 0
+ jump MauvilleCity_EventScript_14C22B
+ end
+
+MauvilleCity_EventScript_14C22B:: @ 814C22B
+ disappear 6
+ disappear 7
+ clearflag 806
+ clearflag 809
+ setflag 190
+ releaseall
+ end
+
+MauvilleCity_EventScript_14C23C:: @ 814C23C
+ msgbox MauvilleCity_Text_165F0D, 4
+ trainerbattle 3, 656, 0, MauvilleCity_Text_165F38
+ move 6, MauvilleCity_Movement_1A0843
+ waitmove 0
+ msgbox MauvilleCity_Text_165F85, 4
+ move 6, MauvilleCity_Movement_1A0839
+ waitmove 0
+ msgbox MauvilleCity_Text_165FB3, 4
+ move 6, MauvilleCity_Movement_1A0843
+ waitmove 0
+ msgbox MauvilleCity_Text_166050, 4
+ return
+
+MauvilleCity_EventScript_14C285:: @ 814C285
+ setflag 284
+ msgbox MauvilleCity_Text_165DE8, 4
+ release
+ end
+
+MauvilleCity_EventScript_14C292:: @ 814C292
+ move 6, MauvilleCity_Movement_1A0839
+ waitmove 0
+ msgbox MauvilleCity_Text_165EE2, 5
+ jump MauvilleCity_EventScript_14C154
+ end
+
+MauvilleCity_Movement_14C2AA:: @ 814C2AA
+ step_left
+ step_left
+ step_down
+ step_down
+ step_left
+ step_end
+
+MauvilleCity_Movement_14C2B0:: @ 814C2B0
+ step_down
+ step_down
+ step_left
+ step_left
+ step_left
+ step_end
+
+MauvilleCity_Movement_14C2B6:: @ 814C2B6
+ step_14
+ step_14
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_end
+
+MauvilleCity_Movement_14C2C1:: @ 814C2C1
+ step_14
+ step_14
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_end
+
+MauvilleCity_Movement_14C2CC:: @ 814C2CC
+ step_left
+ step_left
+ step_left
+ step_down
+ step_down
+ step_end
+
+MauvilleCity_Movement_14C2D2:: @ 814C2D2
+ step_left
+ step_down
+ step_down
+ step_left
+ step_left
+ step_end
+
+MauvilleCity_Movement_14C2D8:: @ 814C2D8
+ step_right
+ step_right
+ step_26
+ step_end
+
+MauvilleCity_Movement_14C2DC:: @ 814C2DC
+ step_right
+ step_up
+ step_end
+
+MauvilleCity_Movement_14C2DF:: @ 814C2DF
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_end
+
+MauvilleCity_Movement_14C2E8:: @ 814C2E8
+ step_down
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_end
+
+MauvilleCity_EventScript_14C2F2:: @ 814C2F2
+ lock
+ faceplayer
+ checkflag 209
+ jumpeq MauvilleCity_EventScript_14C368
+ compare 0x40ba, 2
+ jumpeq MauvilleCity_EventScript_14C33C
+ checkflag 208
+ jumpeq MauvilleCity_EventScript_14C332
+ msgbox MauvilleCity_Text_1661C1, 4
+ giveitem ITEM_BASEMENT_KEY
+ setflag 208
+ msgbox MauvilleCity_Text_166331, 4
+ release
+ end
+
+MauvilleCity_EventScript_14C332:: @ 814C332
+ msgbox MauvilleCity_Text_166331, 4
+ release
+ end
+
+MauvilleCity_EventScript_14C33C:: @ 814C33C
+ msgbox MauvilleCity_Text_1663EB, 4
+ giveitem ITEM_TM24
+ compare RESULT, 0
+ jumpeq MauvilleCity_EventScript_1A029B
+ setflag 209
+ msgbox MauvilleCity_Text_166488, 4
+ release
+ end
+
+MauvilleCity_EventScript_14C368:: @ 814C368
+ msgbox MauvilleCity_Text_166488, 4
+ release
+ end
+
diff --git a/data/maps/scripts/MauvilleCity_BikeShop.s b/data/maps/scripts/MauvilleCity_BikeShop.s
new file mode 100644
index 000000000..9d9293365
--- /dev/null
+++ b/data/maps/scripts/MauvilleCity_BikeShop.s
@@ -0,0 +1,185 @@
+MauvilleCity_BikeShop_MapScripts:: @ 8156795
+ .byte 0
+
+MauvilleCity_BikeShop_EventScript_156796:: @ 8156796
+ lock
+ faceplayer
+ checkflag 90
+ jumpeq MauvilleCity_BikeShop_EventScript_15686E
+ checkflag 89
+ jumpeq MauvilleCity_BikeShop_EventScript_1567D1
+ msgbox MauvilleCity_BikeShop_Text_180F9F, 4
+ msgbox MauvilleCity_BikeShop_Text_181016, 5
+ compare RESULT, 1
+ jumpeq MauvilleCity_BikeShop_EventScript_156824
+ compare RESULT, 0
+ jumpeq MauvilleCity_BikeShop_EventScript_156817
+ end
+
+MauvilleCity_BikeShop_EventScript_1567D1:: @ 81567D1
+ msgbox MauvilleCity_BikeShop_Text_181016, 5
+ compare RESULT, 1
+ jumpeq MauvilleCity_BikeShop_EventScript_156824
+ compare RESULT, 0
+ jumpeq MauvilleCity_BikeShop_EventScript_156817
+ end
+
+MauvilleCity_BikeShop_EventScript_1567F0:: @ 81567F0
+ message MauvilleCity_BikeShop_Text_1810B1
+ waittext
+ multichoice 21, 8, 12, 1
+ switch RESULT
+ case 0, MauvilleCity_BikeShop_EventScript_15682D
+ case 1, MauvilleCity_BikeShop_EventScript_156847
+ end
+
+MauvilleCity_BikeShop_EventScript_156817:: @ 8156817
+ setflag 89
+ msgbox MauvilleCity_BikeShop_Text_181067, 4
+ release
+ end
+
+MauvilleCity_BikeShop_EventScript_156824:: @ 8156824
+ setflag 90
+ jump MauvilleCity_BikeShop_EventScript_1567F0
+ end
+
+MauvilleCity_BikeShop_EventScript_15682D:: @ 815682D
+ msgbox MauvilleCity_BikeShop_Text_181332, 4
+ giveitem ITEM_MACH_BIKE
+ jump MauvilleCity_BikeShop_EventScript_156861
+ end
+
+MauvilleCity_BikeShop_EventScript_156847:: @ 8156847
+ msgbox MauvilleCity_BikeShop_Text_18134A, 4
+ giveitem ITEM_ACRO_BIKE
+ jump MauvilleCity_BikeShop_EventScript_156861
+ end
+
+MauvilleCity_BikeShop_EventScript_156861:: @ 8156861
+ msgbox MauvilleCity_BikeShop_Text_181362, 4
+ special 130
+ release
+ end
+
+MauvilleCity_BikeShop_EventScript_15686E:: @ 815686E
+ msgbox MauvilleCity_BikeShop_Text_1813A0, 5
+ compare RESULT, 1
+ jumpeq MauvilleCity_BikeShop_EventScript_15688D
+ compare RESULT, 0
+ jumpeq MauvilleCity_BikeShop_EventScript_1568BF
+ end
+
+MauvilleCity_BikeShop_EventScript_15688D:: @ 815688D
+ msgbox MauvilleCity_BikeShop_Text_1813D4, 4
+ checkitem ITEM_ACRO_BIKE, 1
+ compare RESULT, 1
+ jumpeq MauvilleCity_BikeShop_EventScript_1568C9
+ checkitem ITEM_MACH_BIKE, 1
+ compare RESULT, 1
+ jumpeq MauvilleCity_BikeShop_EventScript_1568EA
+ msgbox MauvilleCity_BikeShop_Text_181498, 4
+ release
+ end
+
+MauvilleCity_BikeShop_EventScript_1568BF:: @ 81568BF
+ msgbox MauvilleCity_BikeShop_Text_181469, 4
+ release
+ end
+
+MauvilleCity_BikeShop_EventScript_1568C9:: @ 81568C9
+ inccounter 4
+ msgbox MauvilleCity_BikeShop_Text_181439, 4
+ removeitem ITEM_ACRO_BIKE, 1
+ giveitem ITEM_MACH_BIKE
+ jump MauvilleCity_BikeShop_EventScript_156861
+ end
+
+MauvilleCity_BikeShop_EventScript_1568EA:: @ 81568EA
+ inccounter 4
+ msgbox MauvilleCity_BikeShop_Text_181408, 4
+ removeitem ITEM_MACH_BIKE, 1
+ giveitem ITEM_ACRO_BIKE
+ jump MauvilleCity_BikeShop_EventScript_156861
+ end
+
+MauvilleCity_BikeShop_EventScript_15690B:: @ 815690B
+ msgbox MauvilleCity_BikeShop_Text_181568, 2
+ end
+
+MauvilleCity_BikeShop_EventScript_156914:: @ 8156914
+ message MauvilleCity_BikeShop_Text_1815EA
+ waittext
+ jump MauvilleCity_BikeShop_EventScript_156920
+ end
+
+MauvilleCity_BikeShop_EventScript_156920:: @ 8156920
+ multichoice 0, 0, 43, 0
+ switch RESULT
+ case 0, MauvilleCity_BikeShop_EventScript_156962
+ case 1, MauvilleCity_BikeShop_EventScript_15696E
+ case 2, MauvilleCity_BikeShop_EventScript_15697A
+ case 3, MauvilleCity_BikeShop_EventScript_156986
+ case 127, MauvilleCity_BikeShop_EventScript_156986
+ end
+
+MauvilleCity_BikeShop_EventScript_156962:: @ 8156962
+ message MauvilleCity_BikeShop_Text_18162C
+ waittext
+ jump MauvilleCity_BikeShop_EventScript_156920
+ end
+
+MauvilleCity_BikeShop_EventScript_15696E:: @ 815696E
+ message MauvilleCity_BikeShop_Text_1816F5
+ waittext
+ jump MauvilleCity_BikeShop_EventScript_156920
+ end
+
+MauvilleCity_BikeShop_EventScript_15697A:: @ 815697A
+ message MauvilleCity_BikeShop_Text_1817BF
+ waittext
+ jump MauvilleCity_BikeShop_EventScript_156920
+ end
+
+MauvilleCity_BikeShop_EventScript_156986:: @ 8156986
+ release
+ end
+
+MauvilleCity_BikeShop_EventScript_156988:: @ 8156988
+ message MauvilleCity_BikeShop_Text_181892
+ waittext
+ jump MauvilleCity_BikeShop_EventScript_156994
+ end
+
+MauvilleCity_BikeShop_EventScript_156994:: @ 8156994
+ multichoice 0, 0, 44, 0
+ switch RESULT
+ case 0, MauvilleCity_BikeShop_EventScript_1569D6
+ case 1, MauvilleCity_BikeShop_EventScript_1569E2
+ case 2, MauvilleCity_BikeShop_EventScript_1569EE
+ case 3, MauvilleCity_BikeShop_EventScript_1569FA
+ case 127, MauvilleCity_BikeShop_EventScript_1569FA
+ end
+
+MauvilleCity_BikeShop_EventScript_1569D6:: @ 81569D6
+ message MauvilleCity_BikeShop_Text_1818D4
+ waittext
+ jump MauvilleCity_BikeShop_EventScript_156994
+ end
+
+MauvilleCity_BikeShop_EventScript_1569E2:: @ 81569E2
+ message MauvilleCity_BikeShop_Text_18199A
+ waittext
+ jump MauvilleCity_BikeShop_EventScript_156994
+ end
+
+MauvilleCity_BikeShop_EventScript_1569EE:: @ 81569EE
+ message MauvilleCity_BikeShop_Text_181A3D
+ waittext
+ jump MauvilleCity_BikeShop_EventScript_156994
+ end
+
+MauvilleCity_BikeShop_EventScript_1569FA:: @ 81569FA
+ release
+ end
+
diff --git a/data/maps/scripts/MauvilleCity_GameCorner.s b/data/maps/scripts/MauvilleCity_GameCorner.s
new file mode 100644
index 000000000..073acb9f7
--- /dev/null
+++ b/data/maps/scripts/MauvilleCity_GameCorner.s
@@ -0,0 +1,652 @@
+MauvilleCity_GameCorner_MapScripts:: @ 8156A33
+ .byte 0
+
+MauvilleCity_GameCorner_EventScript_156A34:: @ 8156A34
+ lock
+ faceplayer
+ msgbox MauvilleCity_GameCorner_Text_181C35, 4
+ checkitem ITEM_COIN_CASE, 1
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_156B32
+ message MauvilleCity_GameCorner_Text_181CB4
+ waittext
+ showmoney 0, 0
+ snop
+ showcoins 0, 5
+ jump MauvilleCity_GameCorner_EventScript_156A60
+
+MauvilleCity_GameCorner_EventScript_156A60:: @ 8156A60
+ multichoicedef 15, 0, 49, 0, 0
+ switch RESULT
+ case 0, MauvilleCity_GameCorner_EventScript_156AAE
+ case 1, MauvilleCity_GameCorner_EventScript_156AF0
+ jump MauvilleCity_GameCorner_EventScript_156B4C
+ end
+
+ .incbin "baserom.gba", 0x156a87, 0x27
+
+MauvilleCity_GameCorner_EventScript_156AAE:: @ 8156AAE
+ checkcoins 16385
+ compare 0x4001, 9950
+ jumpif 4, MauvilleCity_GameCorner_EventScript_156B5C
+ checkmoney 0x3e8, 0
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_156B3C
+ givecoins 50
+ paymoney 0x3e8, 0
+ updatemoney 0, 0
+ snop
+ updatecoins 0, 5
+ playsfx 95
+ msgbox MauvilleCity_GameCorner_Text_181CFE, 4
+ hidemoney 0, 0
+ hidecoins 0, 5
+ release
+ end
+
+MauvilleCity_GameCorner_EventScript_156AF0:: @ 8156AF0
+ checkcoins 16385
+ compare 0x4001, 9500
+ jumpif 4, MauvilleCity_GameCorner_EventScript_156B5C
+ checkmoney 0x2710, 0
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_156B3C
+ givecoins 500
+ paymoney 0x2710, 0
+ updatemoney 0, 0
+ snop
+ updatecoins 0, 5
+ playsfx 95
+ msgbox MauvilleCity_GameCorner_Text_181CFE, 4
+ hidemoney 0, 0
+ hidecoins 0, 5
+ release
+ end
+
+MauvilleCity_GameCorner_EventScript_156B32:: @ 8156B32
+ msgbox MauvilleCity_GameCorner_Text_181C53, 4
+ release
+ end
+
+MauvilleCity_GameCorner_EventScript_156B3C:: @ 8156B3C
+ msgbox MauvilleCity_GameCorner_Text_181D28, 4
+ hidemoney 0, 0
+ hidecoins 0, 5
+ release
+ end
+
+MauvilleCity_GameCorner_EventScript_156B4C:: @ 8156B4C
+ msgbox MauvilleCity_GameCorner_Text_181D73, 4
+ hidemoney 0, 0
+ hidecoins 0, 5
+ release
+ end
+
+MauvilleCity_GameCorner_EventScript_156B5C:: @ 8156B5C
+ msgbox MauvilleCity_GameCorner_Text_181D57, 4
+ hidemoney 0, 0
+ hidecoins 0, 5
+ release
+ end
+
+MauvilleCity_GameCorner_EventScript_156B6C:: @ 8156B6C
+ lock
+ faceplayer
+ msgbox MauvilleCity_GameCorner_Text_181DE1, 4
+ checkitem ITEM_COIN_CASE, 1
+ compare RESULT, 1
+ jumpeq MauvilleCity_GameCorner_EventScript_156B88
+ release
+ end
+
+MauvilleCity_GameCorner_EventScript_156B88:: @ 8156B88
+ message MauvilleCity_GameCorner_Text_181E17
+ waittext
+ showcoins 0, 0
+ setvar 0x4001, 0
+ jump MauvilleCity_GameCorner_EventScript_156BA6
+
+MauvilleCity_GameCorner_EventScript_156B9B:: @ 8156B9B
+ message MauvilleCity_GameCorner_Text_181E17
+ waittext
+ jump MauvilleCity_GameCorner_EventScript_156BA6
+
+MauvilleCity_GameCorner_EventScript_156BA6:: @ 8156BA6
+ multichoice 12, 0, 48, 0
+ switch RESULT
+ case 0, MauvilleCity_GameCorner_EventScript_156BE2
+ case 1, MauvilleCity_GameCorner_EventScript_156BF0
+ case 2, MauvilleCity_GameCorner_EventScript_156BFE
+ case 3, MauvilleCity_GameCorner_EventScript_156D0D
+ jump MauvilleCity_GameCorner_EventScript_156D0D
+ end
+
+MauvilleCity_GameCorner_EventScript_156BE2:: @ 8156BE2
+ setvar 0x4001, 1
+ bufferdecor 0, 88
+ jump MauvilleCity_GameCorner_EventScript_156C0C
+
+MauvilleCity_GameCorner_EventScript_156BF0:: @ 8156BF0
+ setvar 0x4001, 2
+ bufferdecor 0, 89
+ jump MauvilleCity_GameCorner_EventScript_156C0C
+
+MauvilleCity_GameCorner_EventScript_156BFE:: @ 8156BFE
+ setvar 0x4001, 3
+ bufferdecor 0, 90
+ jump MauvilleCity_GameCorner_EventScript_156C0C
+
+MauvilleCity_GameCorner_EventScript_156C0C:: @ 8156C0C
+ msgbox MauvilleCity_GameCorner_Text_181E33, 5
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_156D0D
+ switch 0x4001
+ case 1, MauvilleCity_GameCorner_EventScript_156C46
+ case 2, MauvilleCity_GameCorner_EventScript_156C80
+ case 3, MauvilleCity_GameCorner_EventScript_156CBA
+ end
+
+MauvilleCity_GameCorner_EventScript_156C46:: @ 8156C46
+ checkcoins 16386
+ compare 0x4002, 1000
+ jumpif 0, MauvilleCity_GameCorner_EventScript_156CF4
+ bufferdecor 1, 88
+ checkdecor 88
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_156D02
+ removecoins 1000
+ adddecor 88
+ updatecoins 0, 0
+ playsfx 95
+ msgbox MauvilleCity_GameCorner_Text_181E49, 4
+ jump MauvilleCity_GameCorner_EventScript_156B9B
+ end
+
+MauvilleCity_GameCorner_EventScript_156C80:: @ 8156C80
+ checkcoins 16386
+ compare 0x4002, 1000
+ jumpif 0, MauvilleCity_GameCorner_EventScript_156CF4
+ bufferdecor 1, 89
+ checkdecor 89
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_156D02
+ removecoins 1000
+ adddecor 89
+ updatecoins 0, 0
+ playsfx 95
+ msgbox MauvilleCity_GameCorner_Text_181E49, 4
+ jump MauvilleCity_GameCorner_EventScript_156B9B
+ end
+
+MauvilleCity_GameCorner_EventScript_156CBA:: @ 8156CBA
+ checkcoins 16386
+ compare 0x4002, 1000
+ jumpif 0, MauvilleCity_GameCorner_EventScript_156CF4
+ bufferdecor 1, 90
+ checkdecor 90
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_156D02
+ removecoins 1000
+ adddecor 90
+ updatecoins 0, 0
+ playsfx 95
+ msgbox MauvilleCity_GameCorner_Text_181E49, 4
+ jump MauvilleCity_GameCorner_EventScript_156B9B
+ end
+
+MauvilleCity_GameCorner_EventScript_156CF4:: @ 8156CF4
+ msgbox MauvilleCity_GameCorner_Text_181E76, 4
+ jump MauvilleCity_GameCorner_EventScript_156B9B
+ end
+
+MauvilleCity_GameCorner_EventScript_156D02:: @ 8156D02
+ call MauvilleCity_GameCorner_EventScript_1A02B8
+ jump MauvilleCity_GameCorner_EventScript_156B9B
+ end
+
+MauvilleCity_GameCorner_EventScript_156D0D:: @ 8156D0D
+ msgbox MauvilleCity_GameCorner_Text_181EC2, 4
+ hidecoins 0, 0
+ release
+ end
+
+MauvilleCity_GameCorner_EventScript_156D1A:: @ 8156D1A
+ lock
+ faceplayer
+ msgbox MauvilleCity_GameCorner_Text_181DE1, 4
+ checkitem ITEM_COIN_CASE, 1
+ compare RESULT, 1
+ jumpeq MauvilleCity_GameCorner_EventScript_156D36
+ release
+ end
+
+MauvilleCity_GameCorner_EventScript_156D36:: @ 8156D36
+ message MauvilleCity_GameCorner_Text_181E17
+ waittext
+ showcoins 0, 0
+ setvar 0x4001, 0
+ jump MauvilleCity_GameCorner_EventScript_156D54
+
+MauvilleCity_GameCorner_EventScript_156D49:: @ 8156D49
+ message MauvilleCity_GameCorner_Text_181E17
+ waittext
+ jump MauvilleCity_GameCorner_EventScript_156D54
+
+MauvilleCity_GameCorner_EventScript_156D54:: @ 8156D54
+ multichoice 12, 0, 55, 0
+ switch RESULT
+ case 0, MauvilleCity_GameCorner_EventScript_156DA6
+ case 1, MauvilleCity_GameCorner_EventScript_156DB4
+ case 2, MauvilleCity_GameCorner_EventScript_156DC2
+ case 3, MauvilleCity_GameCorner_EventScript_156DD0
+ case 4, MauvilleCity_GameCorner_EventScript_156DDE
+ case 5, MauvilleCity_GameCorner_EventScript_156F77
+ jump MauvilleCity_GameCorner_EventScript_156F77
+ end
+
+MauvilleCity_GameCorner_EventScript_156DA6:: @ 8156DA6
+ setvar 0x4001, 1
+ bufferitem 0, ITEM_TM32
+ jump MauvilleCity_GameCorner_EventScript_156DEC
+
+MauvilleCity_GameCorner_EventScript_156DB4:: @ 8156DB4
+ setvar 0x4001, 2
+ bufferitem 0, ITEM_TM29
+ jump MauvilleCity_GameCorner_EventScript_156DEC
+
+MauvilleCity_GameCorner_EventScript_156DC2:: @ 8156DC2
+ setvar 0x4001, 3
+ bufferitem 0, ITEM_TM35
+ jump MauvilleCity_GameCorner_EventScript_156DEC
+
+MauvilleCity_GameCorner_EventScript_156DD0:: @ 8156DD0
+ setvar 0x4001, 4
+ bufferitem 0, ITEM_TM24
+ jump MauvilleCity_GameCorner_EventScript_156DEC
+
+MauvilleCity_GameCorner_EventScript_156DDE:: @ 8156DDE
+ setvar 0x4001, 5
+ bufferitem 0, ITEM_TM13
+ jump MauvilleCity_GameCorner_EventScript_156DEC
+
+MauvilleCity_GameCorner_EventScript_156DEC:: @ 8156DEC
+ msgbox MauvilleCity_GameCorner_Text_181E33, 5
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_156F77
+ switch 0x4001
+ case 1, MauvilleCity_GameCorner_EventScript_156E3C
+ case 2, MauvilleCity_GameCorner_EventScript_156E76
+ case 3, MauvilleCity_GameCorner_EventScript_156EB0
+ case 4, MauvilleCity_GameCorner_EventScript_156EEA
+ case 5, MauvilleCity_GameCorner_EventScript_156F24
+ end
+
+MauvilleCity_GameCorner_EventScript_156E3C:: @ 8156E3C
+ checkcoins 16386
+ compare 0x4002, 1500
+ jumpif 0, MauvilleCity_GameCorner_EventScript_156F5E
+ checkitemspace ITEM_TM32, 1
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_156F6C
+ removecoins 1500
+ additem ITEM_TM32, 1
+ updatecoins 0, 0
+ playsfx 95
+ msgbox MauvilleCity_GameCorner_Text_181F08, 4
+ jump MauvilleCity_GameCorner_EventScript_156D49
+ end
+
+MauvilleCity_GameCorner_EventScript_156E76:: @ 8156E76
+ checkcoins 16386
+ compare 0x4002, 3500
+ jumpif 0, MauvilleCity_GameCorner_EventScript_156F5E
+ checkitemspace ITEM_TM29, 1
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_156F6C
+ removecoins 3500
+ additem ITEM_TM29, 1
+ updatecoins 0, 0
+ playsfx 95
+ msgbox MauvilleCity_GameCorner_Text_181F08, 4
+ jump MauvilleCity_GameCorner_EventScript_156D49
+ end
+
+MauvilleCity_GameCorner_EventScript_156EB0:: @ 8156EB0
+ checkcoins 16386
+ compare 0x4002, 4000
+ jumpif 0, MauvilleCity_GameCorner_EventScript_156F5E
+ checkitemspace ITEM_TM35, 1
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_156F6C
+ removecoins 4000
+ additem ITEM_TM35, 1
+ updatecoins 0, 0
+ playsfx 95
+ msgbox MauvilleCity_GameCorner_Text_181F08, 4
+ jump MauvilleCity_GameCorner_EventScript_156D49
+ end
+
+MauvilleCity_GameCorner_EventScript_156EEA:: @ 8156EEA
+ checkcoins 16386
+ compare 0x4002, 4000
+ jumpif 0, MauvilleCity_GameCorner_EventScript_156F5E
+ checkitemspace ITEM_TM24, 1
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_156F6C
+ removecoins 4000
+ additem ITEM_TM24, 1
+ updatecoins 0, 0
+ playsfx 95
+ msgbox MauvilleCity_GameCorner_Text_181F08, 4
+ jump MauvilleCity_GameCorner_EventScript_156D49
+ end
+
+MauvilleCity_GameCorner_EventScript_156F24:: @ 8156F24
+ checkcoins 16386
+ compare 0x4002, 4000
+ jumpif 0, MauvilleCity_GameCorner_EventScript_156F5E
+ checkitemspace ITEM_TM13, 1
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_156F6C
+ removecoins 4000
+ additem ITEM_TM13, 1
+ updatecoins 0, 0
+ playsfx 95
+ msgbox MauvilleCity_GameCorner_Text_181F08, 4
+ jump MauvilleCity_GameCorner_EventScript_156D49
+ end
+
+MauvilleCity_GameCorner_EventScript_156F5E:: @ 8156F5E
+ msgbox MauvilleCity_GameCorner_Text_181E76, 4
+ jump MauvilleCity_GameCorner_EventScript_156D49
+ end
+
+MauvilleCity_GameCorner_EventScript_156F6C:: @ 8156F6C
+ call MauvilleCity_GameCorner_EventScript_1A02A5
+ jump MauvilleCity_GameCorner_EventScript_156D49
+ end
+
+MauvilleCity_GameCorner_EventScript_156F77:: @ 8156F77
+ msgbox MauvilleCity_GameCorner_Text_181EC2, 4
+ hidecoins 0, 0
+ release
+ end
+
+MauvilleCity_GameCorner_EventScript_156F84:: @ 8156F84
+ msgbox MauvilleCity_GameCorner_Text_1821C1, 2
+ end
+
+MauvilleCity_GameCorner_EventScript_156F8D:: @ 8156F8D
+ msgbox MauvilleCity_GameCorner_Text_1821F3, 2
+ end
+
+MauvilleCity_GameCorner_EventScript_156F96:: @ 8156F96
+ lock
+ faceplayer
+ checkflag 226
+ jumpeq MauvilleCity_GameCorner_EventScript_157072
+ msgbox MauvilleCity_GameCorner_Text_181F3D, 5
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_157068
+ switch 0x4023
+ case 0, MauvilleCity_GameCorner_EventScript_156FDB
+ case 1, MauvilleCity_GameCorner_EventScript_157005
+ case 2, MauvilleCity_GameCorner_EventScript_15702F
+ end
+
+MauvilleCity_GameCorner_EventScript_156FDB:: @ 8156FDB
+ bufferdecor 1, 88
+ checkdecor 88
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_157059
+ msgbox MauvilleCity_GameCorner_Text_181F89, 4
+ givedecoration 88
+ setflag 226
+ jump MauvilleCity_GameCorner_EventScript_157072
+ end
+
+MauvilleCity_GameCorner_EventScript_157005:: @ 8157005
+ bufferdecor 1, 89
+ checkdecor 89
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_157059
+ msgbox MauvilleCity_GameCorner_Text_181F89, 4
+ givedecoration 89
+ setflag 226
+ jump MauvilleCity_GameCorner_EventScript_157072
+ end
+
+MauvilleCity_GameCorner_EventScript_15702F:: @ 815702F
+ bufferdecor 1, 90
+ checkdecor 90
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_157059
+ msgbox MauvilleCity_GameCorner_Text_181F89, 4
+ givedecoration 90
+ setflag 226
+ jump MauvilleCity_GameCorner_EventScript_157072
+ end
+
+MauvilleCity_GameCorner_EventScript_157059:: @ 8157059
+ call MauvilleCity_GameCorner_EventScript_1A02B8
+ msgbox MauvilleCity_GameCorner_Text_181F97, 4
+ release
+ end
+
+MauvilleCity_GameCorner_EventScript_157068:: @ 8157068
+ msgbox MauvilleCity_GameCorner_Text_181FBC, 4
+ release
+ end
+
+MauvilleCity_GameCorner_EventScript_157072:: @ 8157072
+ msgbox MauvilleCity_GameCorner_Text_181FE9, 4
+ release
+ end
+
+MauvilleCity_GameCorner_EventScript_15707C:: @ 815707C
+ lock
+ faceplayer
+ checkitem ITEM_COIN_CASE, 1
+ compare RESULT, 1
+ jumpeq MauvilleCity_GameCorner_EventScript_15709C
+ msgbox MauvilleCity_GameCorner_Text_18201E, 4
+ jump MauvilleCity_GameCorner_EventScript_157108
+ end
+
+MauvilleCity_GameCorner_EventScript_15709C:: @ 815709C
+ checkflag 225
+ jumpeq MauvilleCity_GameCorner_EventScript_1570CA
+ checkcoins 16385
+ compare 0x4001, 1
+ jumpif 4, MauvilleCity_GameCorner_EventScript_1570CA
+ setflag 225
+ givecoins 20
+ msgbox MauvilleCity_GameCorner_Text_18208E, 4
+ playsfx 95
+ jump MauvilleCity_GameCorner_EventScript_1570CA
+ end
+
+MauvilleCity_GameCorner_EventScript_1570CA:: @ 81570CA
+ msgbox MauvilleCity_GameCorner_Text_1820DD, 4
+ jump MauvilleCity_GameCorner_EventScript_157108
+ end
+
+MauvilleCity_GameCorner_EventScript_1570D8:: @ 81570D8
+ lock
+ faceplayer
+ msgbox MauvilleCity_GameCorner_Text_182120, 4
+ jump MauvilleCity_GameCorner_EventScript_157108
+ end
+
+MauvilleCity_GameCorner_EventScript_1570E8:: @ 81570E8
+ lock
+ faceplayer
+ msgbox MauvilleCity_GameCorner_Text_18217C, 4
+ jump MauvilleCity_GameCorner_EventScript_157108
+ end
+
+MauvilleCity_GameCorner_EventScript_1570F8:: @ 81570F8
+ lock
+ faceplayer
+ msgbox MauvilleCity_GameCorner_Text_182241, 4
+ jump MauvilleCity_GameCorner_EventScript_157108
+ end
+
+MauvilleCity_GameCorner_EventScript_157108:: @ 8157108
+ closebutton
+ move LAST_TALKED, MauvilleCity_GameCorner_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+MauvilleCity_GameCorner_EventScript_157115:: @ 8157115
+ lock
+ faceplayer
+ msgbox MauvilleCity_GameCorner_Text_182272, 4
+ jump MauvilleCity_GameCorner_EventScript_157108
+ end
+
+MauvilleCity_GameCorner_EventScript_157125:: @ 8157125
+ lock
+ faceplayer
+ msgbox MauvilleCity_GameCorner_Text_1822F4, 4
+ jump MauvilleCity_GameCorner_EventScript_157108
+ end
+
+MauvilleCity_GameCorner_EventScript_157135:: @ 8157135
+ lockall
+ checkitem ITEM_COIN_CASE, 1
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_1572B5
+ setvar 0x8004, 0
+ specialval RESULT, 286
+ pokecasino 32781
+ releaseall
+ end
+
+MauvilleCity_GameCorner_EventScript_157155:: @ 8157155
+ lockall
+ checkitem ITEM_COIN_CASE, 1
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_1572B5
+ setvar 0x8004, 1
+ specialval RESULT, 286
+ pokecasino 32781
+ releaseall
+ end
+
+MauvilleCity_GameCorner_EventScript_157175:: @ 8157175
+ lockall
+ checkitem ITEM_COIN_CASE, 1
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_1572B5
+ setvar 0x8004, 2
+ specialval RESULT, 286
+ pokecasino 32781
+ releaseall
+ end
+
+MauvilleCity_GameCorner_EventScript_157195:: @ 8157195
+ lockall
+ checkitem ITEM_COIN_CASE, 1
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_1572B5
+ setvar 0x8004, 3
+ specialval RESULT, 286
+ pokecasino 32781
+ releaseall
+ end
+
+MauvilleCity_GameCorner_EventScript_1571B5:: @ 81571B5
+ lockall
+ checkitem ITEM_COIN_CASE, 1
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_1572B5
+ setvar 0x8004, 4
+ specialval RESULT, 286
+ pokecasino 32781
+ releaseall
+ end
+
+MauvilleCity_GameCorner_EventScript_1571D5:: @ 81571D5
+ lockall
+ checkitem ITEM_COIN_CASE, 1
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_1572B5
+ setvar 0x8004, 5
+ specialval RESULT, 286
+ pokecasino 32781
+ releaseall
+ end
+
+MauvilleCity_GameCorner_EventScript_1571F5:: @ 81571F5
+ lockall
+ checkitem ITEM_COIN_CASE, 1
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_1572B5
+ setvar 0x8004, 6
+ specialval RESULT, 286
+ pokecasino 32781
+ releaseall
+ end
+
+MauvilleCity_GameCorner_EventScript_157215:: @ 8157215
+ lockall
+ checkitem ITEM_COIN_CASE, 1
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_1572B5
+ setvar 0x8004, 7
+ specialval RESULT, 286
+ pokecasino 32781
+ releaseall
+ end
+
+MauvilleCity_GameCorner_EventScript_157235:: @ 8157235
+ lockall
+ checkitem ITEM_COIN_CASE, 1
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_1572B5
+ setvar 0x8004, 8
+ specialval RESULT, 286
+ pokecasino 32781
+ releaseall
+ end
+
+MauvilleCity_GameCorner_EventScript_157255:: @ 8157255
+ lockall
+ checkitem ITEM_COIN_CASE, 1
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_1572B5
+ setvar 0x8004, 9
+ specialval RESULT, 286
+ pokecasino 32781
+ releaseall
+ end
+
+MauvilleCity_GameCorner_EventScript_157275:: @ 8157275
+ lockall
+ checkitem ITEM_COIN_CASE, 1
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_1572B5
+ setvar 0x8004, 10
+ specialval RESULT, 286
+ pokecasino 32781
+ releaseall
+ end
+
+MauvilleCity_GameCorner_EventScript_157295:: @ 8157295
+ lockall
+ checkitem ITEM_COIN_CASE, 1
+ compare RESULT, 0
+ jumpeq MauvilleCity_GameCorner_EventScript_1572B5
+ setvar 0x8004, 11
+ specialval RESULT, 286
+ pokecasino 32781
+ releaseall
+ end
+
+MauvilleCity_GameCorner_EventScript_1572B5:: @ 81572B5
+ msgbox MauvilleCity_GameCorner_Text_182420, 4
+ releaseall
+ end
+
diff --git a/data/maps/scripts/MauvilleCity_Gym.s b/data/maps/scripts/MauvilleCity_Gym.s
new file mode 100644
index 000000000..bbae24bf3
--- /dev/null
+++ b/data/maps/scripts/MauvilleCity_Gym.s
@@ -0,0 +1,228 @@
+MauvilleCity_Gym_MapScripts:: @ 8156450
+ map_script 1, MauvilleCity_Gym_MapScript1_156456
+ .byte 0
+
+MauvilleCity_Gym_MapScript1_156456:: @ 8156456
+ checkflag 1208
+ jumpeq MauvilleCity_Gym_EventScript_1565A7
+ switch 0x4093
+ case 0, MauvilleCity_Gym_EventScript_156491
+ case 1, MauvilleCity_Gym_EventScript_15657D
+ case 2, MauvilleCity_Gym_EventScript_15658B
+ case 3, MauvilleCity_Gym_EventScript_156599
+ end
+
+MauvilleCity_Gym_EventScript_156491:: @ 8156491
+ checkflag 99
+ jumpeq MauvilleCity_Gym_EventScript_15649B
+ end
+
+MauvilleCity_Gym_EventScript_15649B:: @ 815649B
+ setmaptile 4, 7, 560, 0
+ setmaptile 4, 8, 568, 0
+ setmaptile 5, 7, 561, 0
+ setmaptile 5, 8, 569, 0
+ setmaptile 3, 8, 578, 1
+ setmaptile 3, 9, 538, 0
+ setmaptile 3, 10, 593, 0
+ setmaptile 1, 10, 546, 0
+ setmaptile 1, 11, 554, 1
+ setmaptile 2, 10, 547, 0
+ setmaptile 2, 11, 555, 1
+ setmaptile 4, 10, 546, 0
+ setmaptile 4, 11, 554, 1
+ setmaptile 5, 10, 547, 0
+ setmaptile 5, 11, 555, 1
+ setmaptile 6, 11, 578, 1
+ setmaptile 6, 12, 538, 0
+ setmaptile 6, 13, 593, 0
+ setmaptile 3, 11, 577, 1
+ setmaptile 3, 12, 585, 1
+ setmaptile 3, 13, 592, 1
+ setmaptile 4, 13, 560, 0
+ setmaptile 4, 14, 568, 0
+ setmaptile 5, 13, 561, 0
+ setmaptile 5, 14, 569, 0
+ end
+
+MauvilleCity_Gym_EventScript_15657D:: @ 815657D
+ setvar 0x8004, 0
+ special 140
+ jump MauvilleCity_Gym_EventScript_156491
+ end
+
+MauvilleCity_Gym_EventScript_15658B:: @ 815658B
+ setvar 0x8004, 1
+ special 140
+ jump MauvilleCity_Gym_EventScript_156491
+ end
+
+MauvilleCity_Gym_EventScript_156599:: @ 8156599
+ setvar 0x8004, 2
+ special 140
+ jump MauvilleCity_Gym_EventScript_156491
+ end
+
+MauvilleCity_Gym_EventScript_1565A7:: @ 81565A7
+ special 144
+ end
+
+MauvilleCity_Gym_EventScript_1565AB:: @ 81565AB
+ trainerbattle 1, 267, 0, MauvilleCity_Gym_Text_180C32, MauvilleCity_Gym_Text_180D64, MauvilleCity_Gym_EventScript_1565DB
+ checkflag 167
+ jumpif 0, MauvilleCity_Gym_EventScript_15661D
+ compare 0x40ba, 2
+ jumpeq MauvilleCity_Gym_EventScript_156641
+ msgbox MauvilleCity_Gym_Text_180EDB, 4
+ release
+ end
+
+MauvilleCity_Gym_EventScript_1565DB:: @ 81565DB
+ message MauvilleCity_Gym_Text_180DAF
+ waittext
+ call MauvilleCity_Gym_EventScript_1A02C5
+ msgbox MauvilleCity_Gym_Text_180DDA, 4
+ setflag 1208
+ setflag 2057
+ addvar 0x4085, 1
+ compare 0x4085, 6
+ callif 1, MauvilleCity_Gym_EventScript_1A00FB
+ setvar 0x8008, 3
+ call MauvilleCity_Gym_EventScript_1A01C0
+ special 144
+ special 142
+ playsfx 44
+ jump MauvilleCity_Gym_EventScript_15661D
+ end
+
+MauvilleCity_Gym_EventScript_15661D:: @ 815661D
+ giveitem ITEM_TM34
+ compare RESULT, 0
+ jumpeq MauvilleCity_Gym_EventScript_1A029B
+ msgbox MauvilleCity_Gym_Text_180E76, 4
+ setflag 167
+ release
+ end
+
+MauvilleCity_Gym_EventScript_156641:: @ 8156641
+ msgbox MauvilleCity_Gym_Text_180F1D, 4
+ release
+ end
+
+MauvilleCity_Gym_EventScript_15664B:: @ 815664B
+ lockall
+ checkflag 1208
+ jumpeq MauvilleCity_Gym_EventScript_1566DA
+ compare 0x4093, 1
+ jumpeq MauvilleCity_Gym_EventScript_1566DA
+ setvar 0x4093, 1
+ setvar 0x8004, 0
+ jump MauvilleCity_Gym_EventScript_1566BA
+ end
+
+MauvilleCity_Gym_EventScript_156670:: @ 8156670
+ lockall
+ checkflag 1208
+ jumpeq MauvilleCity_Gym_EventScript_1566DA
+ compare 0x4093, 2
+ jumpeq MauvilleCity_Gym_EventScript_1566DA
+ setvar 0x4093, 2
+ setvar 0x8004, 1
+ jump MauvilleCity_Gym_EventScript_1566BA
+ end
+
+MauvilleCity_Gym_EventScript_156695:: @ 8156695
+ lockall
+ checkflag 1208
+ jumpeq MauvilleCity_Gym_EventScript_1566DA
+ compare 0x4093, 3
+ jumpeq MauvilleCity_Gym_EventScript_1566DA
+ setvar 0x4093, 3
+ setvar 0x8004, 2
+ jump MauvilleCity_Gym_EventScript_1566BA
+ end
+
+MauvilleCity_Gym_EventScript_1566BA:: @ 81566BA
+ special 139
+ special 140
+ special 142
+ playsfx 44
+ checkflag 99
+ jumpeq MauvilleCity_Gym_EventScript_1566E1
+ checkflag 99
+ jumpif 0, MauvilleCity_Gym_EventScript_1566DC
+ releaseall
+ end
+
+MauvilleCity_Gym_EventScript_1566DA:: @ 81566DA
+ releaseall
+ end
+
+MauvilleCity_Gym_EventScript_1566DC:: @ 81566DC
+ setflag 99
+ releaseall
+ end
+
+MauvilleCity_Gym_EventScript_1566E1:: @ 81566E1
+ clearflag 99
+ releaseall
+ end
+
+MauvilleCity_Gym_EventScript_1566E6:: @ 81566E6
+ trainerbattle 0, 191, 0, MauvilleCity_Gym_Text_180956, MauvilleCity_Gym_Text_180997
+ msgbox MauvilleCity_Gym_Text_1809D1, 6
+ end
+
+MauvilleCity_Gym_EventScript_1566FD:: @ 81566FD
+ trainerbattle 0, 194, 0, MauvilleCity_Gym_Text_180A05, MauvilleCity_Gym_Text_180A42
+ msgbox MauvilleCity_Gym_Text_180A5E, 6
+ end
+
+MauvilleCity_Gym_EventScript_156714:: @ 8156714
+ trainerbattle 0, 323, 0, MauvilleCity_Gym_Text_180AE0, MauvilleCity_Gym_Text_180B06
+ msgbox MauvilleCity_Gym_Text_180B1D, 6
+ end
+
+MauvilleCity_Gym_EventScript_15672B:: @ 815672B
+ trainerbattle 0, 649, 0, MauvilleCity_Gym_Text_180B5A, MauvilleCity_Gym_Text_180B93
+ msgbox MauvilleCity_Gym_Text_180BAE, 6
+ end
+
+MauvilleCity_Gym_EventScript_156742:: @ 8156742
+ lock
+ faceplayer
+ checkflag 1208
+ jumpeq MauvilleCity_Gym_EventScript_156757
+ msgbox MauvilleCity_Gym_Text_180815, 4
+ release
+ end
+
+MauvilleCity_Gym_EventScript_156757:: @ 8156757
+ msgbox MauvilleCity_Gym_Text_18091D, 4
+ release
+ end
+
+MauvilleCity_Gym_EventScript_156761:: @ 8156761
+ lockall
+ checkflag 2057
+ jumpeq MauvilleCity_Gym_EventScript_156781
+ jump MauvilleCity_Gym_EventScript_15678B
+ end
+
+MauvilleCity_Gym_EventScript_156771:: @ 8156771
+ lockall
+ checkflag 2057
+ jumpeq MauvilleCity_Gym_EventScript_156781
+ jump MauvilleCity_Gym_EventScript_15678B
+ end
+
+MauvilleCity_Gym_EventScript_156781:: @ 8156781
+ msgbox MauvilleCity_Gym_Text_180F64, 4
+ releaseall
+ end
+
+MauvilleCity_Gym_EventScript_15678B:: @ 815678B
+ msgbox MauvilleCity_Gym_Text_180F4A, 4
+ releaseall
+ end
+
diff --git a/data/maps/scripts/MauvilleCity_House1.s b/data/maps/scripts/MauvilleCity_House1.s
new file mode 100644
index 000000000..e1ae389bb
--- /dev/null
+++ b/data/maps/scripts/MauvilleCity_House1.s
@@ -0,0 +1,20 @@
+MauvilleCity_House1_MapScripts:: @ 81569FC
+ .byte 0
+
+MauvilleCity_House1_EventScript_1569FD:: @ 81569FD
+ lock
+ faceplayer
+ checkflag 107
+ jumpeq MauvilleCity_House1_EventScript_156A29
+ msgbox MauvilleCity_House1_Text_181B1A, 4
+ giveitem ITEM_HM06
+ setflag 107
+ msgbox MauvilleCity_House1_Text_181B64, 4
+ release
+ end
+
+MauvilleCity_House1_EventScript_156A29:: @ 8156A29
+ msgbox MauvilleCity_House1_Text_181BF6, 4
+ release
+ end
+
diff --git a/data/maps/scripts/MauvilleCity_House2.s b/data/maps/scripts/MauvilleCity_House2.s
new file mode 100644
index 000000000..65e7c0e3e
--- /dev/null
+++ b/data/maps/scripts/MauvilleCity_House2.s
@@ -0,0 +1,46 @@
+MauvilleCity_House2_MapScripts:: @ 81572BF
+ .byte 0
+
+MauvilleCity_House2_EventScript_1572C0:: @ 81572C0
+ lock
+ faceplayer
+ checkflag 258
+ jumpeq MauvilleCity_House2_EventScript_15733D
+ msgbox MauvilleCity_House2_Text_18244E, 4
+ checkitem ITEM_HARBOR_MAIL, 1
+ compare RESULT, 1
+ jumpeq MauvilleCity_House2_EventScript_1572E5
+ release
+ end
+
+MauvilleCity_House2_EventScript_1572E5:: @ 81572E5
+ playsfx 21
+ move LAST_TALKED, MauvilleCity_House2_Movement_1A0833
+ waitmove 0
+ move LAST_TALKED, MauvilleCity_House2_Movement_1A0835
+ waitmove 0
+ msgbox MauvilleCity_House2_Text_1824D8, 5
+ compare RESULT, 1
+ jumpeq MauvilleCity_House2_EventScript_15731B
+ compare RESULT, 0
+ jumpeq MauvilleCity_House2_EventScript_157347
+ end
+
+MauvilleCity_House2_EventScript_15731B:: @ 815731B
+ msgbox MauvilleCity_House2_Text_182515, 4
+ removeitem ITEM_HARBOR_MAIL, 1
+ giveitem ITEM_COIN_CASE
+ setflag 258
+ jump MauvilleCity_House2_EventScript_15733D
+ end
+
+MauvilleCity_House2_EventScript_15733D:: @ 815733D
+ msgbox MauvilleCity_House2_Text_182549, 4
+ release
+ end
+
+MauvilleCity_House2_EventScript_157347:: @ 8157347
+ msgbox MauvilleCity_House2_Text_182578, 4
+ release
+ end
+
diff --git a/data/maps/scripts/MauvilleCity_Mart.s b/data/maps/scripts/MauvilleCity_Mart.s
new file mode 100644
index 000000000..312b64226
--- /dev/null
+++ b/data/maps/scripts/MauvilleCity_Mart.s
@@ -0,0 +1,40 @@
+MauvilleCity_Mart_MapScripts:: @ 81573BD
+ .byte 0
+
+MauvilleCity_Mart_EventScript_1573BE:: @ 81573BE
+ lock
+ faceplayer
+ message MauvilleCity_Mart_Text_1A0BE4
+ waittext
+ pokemart MauvilleCity_Mart_Pokemart_1573D8
+ msgbox MauvilleCity_Mart_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x1573d5, 0x3
+
+MauvilleCity_Mart_Pokemart_1573D8:: @ 81573D8
+ .2byte ITEM_POKE_BALL
+ .2byte ITEM_GREAT_BALL
+ .2byte ITEM_SUPER_POTION
+ .2byte ITEM_ANTIDOTE
+ .2byte ITEM_PARALYZE_HEAL
+ .2byte ITEM_AWAKENING
+ .2byte ITEM_X_SPEED
+ .2byte ITEM_X_ATTACK
+ .2byte ITEM_X_DEFEND
+ .2byte ITEM_GUARD_SPEC
+ .2byte ITEM_DIRE_HIT
+ .2byte ITEM_X_ACCURACY
+ .2byte ITEM_NONE
+ release
+ end
+
+MauvilleCity_Mart_EventScript_1573F4:: @ 81573F4
+ msgbox MauvilleCity_Mart_Text_1827D3, 2
+ end
+
+MauvilleCity_Mart_EventScript_1573FD:: @ 81573FD
+ msgbox MauvilleCity_Mart_Text_18287F, 2
+ end
+
diff --git a/data/maps/scripts/MauvilleCity_PokemonCenter_1F.s b/data/maps/scripts/MauvilleCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..6a1582145
--- /dev/null
+++ b/data/maps/scripts/MauvilleCity_PokemonCenter_1F.s
@@ -0,0 +1,34 @@
+MauvilleCity_PokemonCenter_1F_MapScripts:: @ 8157351
+ map_script 3, MauvilleCity_PokemonCenter_1F_MapScript1_157357
+ .byte 0
+
+MauvilleCity_PokemonCenter_1F_MapScript1_157357:: @ 8157357
+ sethealplace 5
+ call MauvilleCity_PokemonCenter_1F_EventScript_19FD1B
+ jump MauvilleCity_PokemonCenter_1F_EventScript_157365
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_157365:: @ 8157365
+ special 104
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_157369:: @ 8157369
+ setvar 0x800b, 1
+ call MauvilleCity_PokemonCenter_1F_EventScript_19FD5B
+ waittext
+ waitbutton
+ release
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_157377:: @ 8157377
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1825BD, 2
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_157380:: @ 8157380
+ msgbox MauvilleCity_PokemonCenter_1F_Text_182622, 2
+ end
+
+MauvilleCity_PokemonCenter_1F_EventScript_157389:: @ 8157389
+ msgbox MauvilleCity_PokemonCenter_1F_Text_1826A6, 2
+ end
+
diff --git a/data/maps/scripts/MauvilleCity_PokemonCenter_2F.s b/data/maps/scripts/MauvilleCity_PokemonCenter_2F.s
new file mode 100644
index 000000000..e888ecc6e
--- /dev/null
+++ b/data/maps/scripts/MauvilleCity_PokemonCenter_2F.s
@@ -0,0 +1,22 @@
+MauvilleCity_PokemonCenter_2F_MapScripts:: @ 8157392
+ map_script 2, MauvilleCity_PokemonCenter_2F_MapScript2_1A3D88
+ map_script 4, MauvilleCity_PokemonCenter_2F_MapScript2_1A3D03
+ map_script 1, MauvilleCity_PokemonCenter_2F_MapScript1_1A3D32
+ .byte 0
+
+MauvilleCity_PokemonCenter_2F_EventScript_1573A2:: @ 81573A2
+ call MauvilleCity_PokemonCenter_2F_EventScript_1A3EA6
+ end
+
+MauvilleCity_PokemonCenter_2F_EventScript_1573A8:: @ 81573A8
+ call MauvilleCity_PokemonCenter_2F_EventScript_1A40CC
+ end
+
+MauvilleCity_PokemonCenter_2F_EventScript_1573AE:: @ 81573AE
+ call MauvilleCity_PokemonCenter_2F_EventScript_1A41FB
+ end
+
+MauvilleCity_PokemonCenter_2F_EventScript_1573B4:: @ 81573B4
+ msgbox MauvilleCity_PokemonCenter_2F_Text_182724, 2
+ end
+
diff --git a/data/maps/scripts/MeteorFalls_1F_1R.s b/data/maps/scripts/MeteorFalls_1F_1R.s
new file mode 100644
index 000000000..7574a9b4b
--- /dev/null
+++ b/data/maps/scripts/MeteorFalls_1F_1R.s
@@ -0,0 +1,225 @@
+MeteorFalls_1F_1R_MapScripts:: @ 815C490
+ map_script 3, MeteorFalls_1F_1R_MapScript1_15C496
+ .byte 0
+
+MeteorFalls_1F_1R_MapScript1_15C496:: @ 815C496
+ call MeteorFalls_1F_1R_EventScript_1A0196
+ end
+
+MeteorFalls_1F_1R_EventScript_15C49C:: @ 815C49C
+ lockall
+ move 255, MeteorFalls_1F_1R_Movement_1A0845
+ waitmove 0
+ pause 30
+ move 5, MeteorFalls_1F_1R_Movement_1A0845
+ waitmove 0
+ msgbox MeteorFalls_1F_1R_Text_193237, 4
+ closebutton
+ move 5, MeteorFalls_1F_1R_Movement_1A0841
+ move 6, MeteorFalls_1F_1R_Movement_1A0841
+ waitmove 0
+ playsfx 21
+ move 5, MeteorFalls_1F_1R_Movement_1A0833
+ waitmove 0
+ move 5, MeteorFalls_1F_1R_Movement_1A0835
+ waitmove 0
+ msgbox MeteorFalls_1F_1R_Text_193268, 4
+ closebutton
+ move 5, MeteorFalls_1F_1R_Movement_15C5EE
+ waitmove 0
+ msgbox MeteorFalls_1F_1R_Text_1932C5, 4
+ closebutton
+ move 255, MeteorFalls_1F_1R_Movement_1A083F
+ move 5, MeteorFalls_1F_1R_Movement_1A083F
+ move 6, MeteorFalls_1F_1R_Movement_1A083F
+ waitmove 0
+ reappear 7
+ reappear 8
+ reappear 9
+ move 7, MeteorFalls_1F_1R_Movement_15C608
+ move 8, MeteorFalls_1F_1R_Movement_15C60F
+ move 9, MeteorFalls_1F_1R_Movement_15C617
+ waitmove 0
+ move 5, MeteorFalls_1F_1R_Movement_1A083F
+ move 6, MeteorFalls_1F_1R_Movement_1A083F
+ waitmove 0
+ msgbox MeteorFalls_1F_1R_Text_193320, 4
+ closebutton
+ move 255, MeteorFalls_1F_1R_Movement_15C64F
+ move 5, MeteorFalls_1F_1R_Movement_15C5F1
+ move 6, MeteorFalls_1F_1R_Movement_15C5FC
+ waitmove 0
+ disappear 5
+ disappear 6
+ move 7, MeteorFalls_1F_1R_Movement_15C628
+ waitmove 0
+ msgbox MeteorFalls_1F_1R_Text_193584, 4
+ closebutton
+ move 8, MeteorFalls_1F_1R_Movement_15C639
+ move 9, MeteorFalls_1F_1R_Movement_15C64A
+ waitmove 0
+ msgbox MeteorFalls_1F_1R_Text_193720, 4
+ move 7, MeteorFalls_1F_1R_Movement_1A0845
+ waitmove 0
+ msgbox MeteorFalls_1F_1R_Text_193747, 4
+ move 7, MeteorFalls_1F_1R_Movement_1A083F
+ waitmove 0
+ msgbox MeteorFalls_1F_1R_Text_1937AA, 4
+ closebutton
+ move 7, MeteorFalls_1F_1R_Movement_15C61F
+ move 8, MeteorFalls_1F_1R_Movement_15C62E
+ move 9, MeteorFalls_1F_1R_Movement_15C63E
+ waitmove 0
+ disappear 7
+ disappear 8
+ disappear 9
+ setflag 819
+ setvar 0x40bf, 1
+ releaseall
+ end
+
+MeteorFalls_1F_1R_Movement_15C5EE:: @ 815C5EE
+ step_right
+ step_right
+ step_end
+
+MeteorFalls_1F_1R_Movement_15C5F1:: @ 815C5F1
+ step_16
+ step_16
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_end
+
+MeteorFalls_1F_1R_Movement_15C5FC:: @ 815C5FC
+ step_16
+ step_16
+ step_16
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_end
+
+MeteorFalls_1F_1R_Movement_15C608:: @ 815C608
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+MeteorFalls_1F_1R_Movement_15C60F:: @ 815C60F
+ step_14
+ step_14
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+MeteorFalls_1F_1R_Movement_15C617:: @ 815C617
+ step_14
+ step_14
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+MeteorFalls_1F_1R_Movement_15C61F:: @ 815C61F
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+MeteorFalls_1F_1R_Movement_15C628:: @ 815C628
+ step_right
+ step_right
+ step_up
+ step_up
+ step_27
+ step_end
+
+MeteorFalls_1F_1R_Movement_15C62E:: @ 815C62E
+ step_up
+ step_up
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+MeteorFalls_1F_1R_Movement_15C639:: @ 815C639
+ step_right
+ step_right
+ step_right
+ step_26
+ step_end
+
+MeteorFalls_1F_1R_Movement_15C63E:: @ 815C63E
+ step_up
+ step_up
+ step_up
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+MeteorFalls_1F_1R_Movement_15C64A:: @ 815C64A
+ step_right
+ step_right
+ step_right
+ step_26
+ step_end
+
+MeteorFalls_1F_1R_Movement_15C64F:: @ 815C64F
+ step_25
+ step_12
+ step_28
+ step_40
+ step_left
+ step_41
+ step_end
+
+MeteorFalls_1F_1R_EventScript_15C656:: @ 815C656
+ lock
+ faceplayer
+ checkflag 244
+ jumpeq MeteorFalls_1F_1R_EventScript_15C66E
+ setflag 244
+ msgbox MeteorFalls_1F_1R_Text_1937EB, 4
+ release
+ end
+
+MeteorFalls_1F_1R_EventScript_15C66E:: @ 815C66E
+ msgbox MeteorFalls_1F_1R_Text_19396A, 4
+ release
+ end
+
diff --git a/data/maps/scripts/MeteorFalls_1F_2R.s b/data/maps/scripts/MeteorFalls_1F_2R.s
new file mode 100644
index 000000000..ffd6f619c
--- /dev/null
+++ b/data/maps/scripts/MeteorFalls_1F_2R.s
@@ -0,0 +1,42 @@
+MeteorFalls_1F_2R_MapScripts:: @ 815C678
+ .byte 0
+
+MeteorFalls_1F_2R_EventScript_15C679:: @ 815C679
+ trainerbattle 0, 392, 0, MeteorFalls_1F_2R_Text_1939C5, MeteorFalls_1F_2R_Text_193A35
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq MeteorFalls_1F_2R_EventScript_15C6A0
+ msgbox MeteorFalls_1F_2R_Text_193A60, 6
+ end
+
+MeteorFalls_1F_2R_EventScript_15C6A0:: @ 815C6A0
+ trainerbattle 5, 392, 0, MeteorFalls_1F_2R_Text_193AB3, MeteorFalls_1F_2R_Text_193B21
+ msgbox MeteorFalls_1F_2R_Text_193B4C, 6
+ end
+
+MeteorFalls_1F_2R_EventScript_15C6B7:: @ 815C6B7
+ trainerbattle 4, 681, 0, MeteorFalls_1F_2R_Text_193BB7, MeteorFalls_1F_2R_Text_193C10, MeteorFalls_1F_2R_Text_193C9F
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq MeteorFalls_1F_2R_EventScript_15C6E2
+ msgbox MeteorFalls_1F_2R_Text_193C35, 6
+ end
+
+MeteorFalls_1F_2R_EventScript_15C6E2:: @ 815C6E2
+ trainerbattle 7, 681, 0, MeteorFalls_1F_2R_Text_193E75, MeteorFalls_1F_2R_Text_193ECE, MeteorFalls_1F_2R_Text_193F59
+ msgbox MeteorFalls_1F_2R_Text_193EF3, 6
+ end
+
+MeteorFalls_1F_2R_EventScript_15C6FD:: @ 815C6FD
+ trainerbattle 4, 681, 0, MeteorFalls_1F_2R_Text_193D10, MeteorFalls_1F_2R_Text_193D6E, MeteorFalls_1F_2R_Text_193DFB
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq MeteorFalls_1F_2R_EventScript_15C728
+ msgbox MeteorFalls_1F_2R_Text_193D9A, 6
+ end
+
+MeteorFalls_1F_2R_EventScript_15C728:: @ 815C728
+ trainerbattle 7, 681, 0, MeteorFalls_1F_2R_Text_193FCA, MeteorFalls_1F_2R_Text_19403A, MeteorFalls_1F_2R_Text_1940DF
+ msgbox MeteorFalls_1F_2R_Text_194066, 6
+ end
+
diff --git a/data/maps/scripts/MeteorFalls_B1F_1R.s b/data/maps/scripts/MeteorFalls_B1F_1R.s
new file mode 100644
index 000000000..024cf305e
--- /dev/null
+++ b/data/maps/scripts/MeteorFalls_B1F_1R.s
@@ -0,0 +1,3 @@
+MeteorFalls_B1F_1R_MapScripts:: @ 815C743
+ .byte 0
+
diff --git a/data/maps/scripts/MeteorFalls_B1F_2R.s b/data/maps/scripts/MeteorFalls_B1F_2R.s
new file mode 100644
index 000000000..1f1f6ee99
--- /dev/null
+++ b/data/maps/scripts/MeteorFalls_B1F_2R.s
@@ -0,0 +1,3 @@
+MeteorFalls_B1F_2R_MapScripts:: @ 815C744
+ .byte 0
+
diff --git a/data/maps/scripts/MossdeepCity.s b/data/maps/scripts/MossdeepCity.s
new file mode 100644
index 000000000..70adb2f9d
--- /dev/null
+++ b/data/maps/scripts/MossdeepCity.s
@@ -0,0 +1,93 @@
+MossdeepCity_MapScripts:: @ 814CF92
+ map_script 3, MossdeepCity_MapScript1_14CF98
+ .byte 0
+
+MossdeepCity_MapScript1_14CF98:: @ 814CF98
+ clearflag 100
+ clearflag 101
+ clearflag 102
+ clearflag 103
+ checkflag 2090
+ callif 1, MossdeepCity_EventScript_1A02C1
+ end
+
+MossdeepCity_EventScript_14CFAE:: @ 814CFAE
+ msgbox MossdeepCity_Text_169266, 2
+ end
+
+MossdeepCity_EventScript_14CFB7:: @ 814CFB7
+ msgbox MossdeepCity_Text_1692A1, 2
+ end
+
+MossdeepCity_EventScript_14CFC0:: @ 814CFC0
+ msgbox MossdeepCity_Text_1691F2, 2
+ end
+
+MossdeepCity_EventScript_14CFC9:: @ 814CFC9
+ msgbox MossdeepCity_Text_169370, 2
+ end
+
+MossdeepCity_EventScript_14CFD2:: @ 814CFD2
+ msgbox MossdeepCity_Text_169314, 2
+ end
+
+MossdeepCity_EventScript_14CFDB:: @ 814CFDB
+ msgbox MossdeepCity_Text_1694DA, 2
+ end
+
+MossdeepCity_EventScript_14CFE4:: @ 814CFE4
+ msgbox MossdeepCity_Text_1695D3, 3
+ end
+
+MossdeepCity_EventScript_14CFED:: @ 814CFED
+ msgbox MossdeepCity_Text_1695E6, 3
+ end
+
+MossdeepCity_EventScript_14CFF6:: @ 814CFF6
+ msgbox MossdeepCity_Text_16962F, 3
+ end
+
+MossdeepCity_EventScript_14CFFF:: @ 814CFFF
+ msgbox MossdeepCity_Text_16965C, 3
+ end
+
+MossdeepCity_EventScript_14D008:: @ 814D008
+ setflag 2076
+ setvar 0x4001, 1
+ end
+
+MossdeepCity_EventScript_14D011:: @ 814D011
+ lock
+ faceplayer
+ msgbox MossdeepCity_Text_16944E, 4
+ move LAST_TALKED, MossdeepCity_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+MossdeepCity_EventScript_14D027:: @ 814D027
+ lock
+ faceplayer
+ checkflag 276
+ jumpeq MossdeepCity_EventScript_14D069
+ msgbox MossdeepCity_Text_1690A9, 5
+ compare RESULT, 0
+ jumpeq MossdeepCity_EventScript_14D073
+ msgbox MossdeepCity_Text_169117, 4
+ giveitem ITEM_KINGS_ROCK
+ compare RESULT, 0
+ jumpeq MossdeepCity_EventScript_1A029B
+ setflag 276
+ release
+ end
+
+MossdeepCity_EventScript_14D069:: @ 814D069
+ msgbox MossdeepCity_Text_16916F, 4
+ release
+ end
+
+MossdeepCity_EventScript_14D073:: @ 814D073
+ msgbox MossdeepCity_Text_1691A7, 4
+ release
+ end
+
diff --git a/data/maps/scripts/MossdeepCity_GameCorner_1F.s b/data/maps/scripts/MossdeepCity_GameCorner_1F.s
new file mode 100644
index 000000000..573e69d8e
--- /dev/null
+++ b/data/maps/scripts/MossdeepCity_GameCorner_1F.s
@@ -0,0 +1,187 @@
+MossdeepCity_GameCorner_1F_MapScripts:: @ 815AC52
+ map_script 1, MossdeepCity_GameCorner_1F_MapScript1_15AC62
+ map_script 3, MossdeepCity_GameCorner_1F_MapScript1_15AC84
+ map_script 2, MossdeepCity_GameCorner_1F_MapScript2_15ACBB
+ .byte 0
+
+MossdeepCity_GameCorner_1F_MapScript1_15AC62:: @ 815AC62
+ special 246
+ compare RESULT, 1
+ callif 1, MossdeepCity_GameCorner_1F_EventScript_15AC71
+ end
+
+MossdeepCity_GameCorner_1F_EventScript_15AC71:: @ 815AC71
+ setmaptile 3, 0, 653, 1
+ setmaptile 3, 1, 661, 1
+ return
+
+MossdeepCity_GameCorner_1F_MapScript1_15AC84:: @ 815AC84
+ special 246
+ compare RESULT, 0
+ callif 1, MossdeepCity_GameCorner_1F_EventScript_15AC9E
+ compare 0x40c0, 0
+ callif 5, MossdeepCity_GameCorner_1F_EventScript_15ACAF
+ end
+
+MossdeepCity_GameCorner_1F_EventScript_15AC9E:: @ 815AC9E
+ setvar 0x4001, 1
+ movespriteperm 1, 3, 2
+ spritebehave 1, 8
+ return
+
+MossdeepCity_GameCorner_1F_EventScript_15ACAF:: @ 815ACAF
+ movespriteperm 1, 2, 2
+ spritebehave 1, 10
+ return
+
+MossdeepCity_GameCorner_1F_MapScript2_15ACBB:: @ 815ACBB
+ map_script_2 0x40c0, 1, MossdeepCity_GameCorner_1F_EventScript_15ACD5
+ map_script_2 0x40c0, 2, MossdeepCity_GameCorner_1F_EventScript_15ACD5
+ map_script_2 0x40c0, 3, MossdeepCity_GameCorner_1F_EventScript_15ACD5
+ .2byte 0
+
+MossdeepCity_GameCorner_1F_EventScript_15ACD5:: @ 815ACD5
+ lockall
+ move 255, MossdeepCity_GameCorner_1F_Movement_15AD3D
+ waitmove 0
+ move 1, MossdeepCity_GameCorner_1F_Movement_15AD3F
+ waitmove 0
+ moveoffscreen 1
+ move 255, MossdeepCity_GameCorner_1F_Movement_1A0841
+ waitmove 0
+ compare 0x40c0, 1
+ callif 1, MossdeepCity_GameCorner_1F_EventScript_15AD22
+ compare 0x40c0, 2
+ callif 1, MossdeepCity_GameCorner_1F_EventScript_15AD2B
+ compare 0x40c0, 3
+ callif 1, MossdeepCity_GameCorner_1F_EventScript_15AD34
+ special 40
+ setvar 0x40c0, 0
+ releaseall
+ end
+
+MossdeepCity_GameCorner_1F_EventScript_15AD22:: @ 815AD22
+ msgbox MossdeepCity_GameCorner_1F_Text_18E80E, 4
+ return
+
+MossdeepCity_GameCorner_1F_EventScript_15AD2B:: @ 815AD2B
+ msgbox MossdeepCity_GameCorner_1F_Text_18E859, 4
+ return
+
+MossdeepCity_GameCorner_1F_EventScript_15AD34:: @ 815AD34
+ msgbox MossdeepCity_GameCorner_1F_Text_18E7B1, 4
+ return
+
+MossdeepCity_GameCorner_1F_Movement_15AD3D:: @ 815AD3D
+ step_down
+ step_end
+
+MossdeepCity_GameCorner_1F_Movement_15AD3F:: @ 815AD3F
+ step_right
+ step_25
+ step_end
+
+MossdeepCity_GameCorner_1F_EventScript_15AD42:: @ 815AD42
+ lock
+ faceplayer
+ compare 0x4001, 1
+ jumpeq MossdeepCity_GameCorner_1F_EventScript_15AD59
+ msgbox MossdeepCity_GameCorner_1F_Text_18E59A, 4
+ release
+ end
+
+MossdeepCity_GameCorner_1F_EventScript_15AD59:: @ 815AD59
+ special 39
+ special 285
+ msgbox MossdeepCity_GameCorner_1F_Text_18E650, 5
+ compare RESULT, 0
+ jumpeq MossdeepCity_GameCorner_1F_EventScript_15ADE8
+ call MossdeepCity_GameCorner_1F_EventScript_15ADF5
+ compare RESULT, 0
+ jumpeq MossdeepCity_GameCorner_1F_EventScript_15ADE8
+ msgbox MossdeepCity_GameCorner_1F_Text_18E741, 5
+ compare RESULT, 0
+ callif 1, MossdeepCity_GameCorner_1F_EventScript_15ADE8
+ special 40
+ call MossdeepCity_GameCorner_1F_EventScript_19F806
+ compare RESULT, 0
+ jumpeq MossdeepCity_GameCorner_1F_EventScript_15ADE8
+ hidebox 0, 0, 15, 10
+ special 39
+ special 248
+ msgbox MossdeepCity_GameCorner_1F_Text_18E777, 4
+ closebutton
+ compare FACING, 2
+ callif 1, MossdeepCity_GameCorner_1F_EventScript_15AE04
+ compare FACING, 4
+ callif 1, MossdeepCity_GameCorner_1F_EventScript_15AE16
+ compare FACING, 3
+ callif 1, MossdeepCity_GameCorner_1F_EventScript_15AE28
+ warp MossdeepCity_GameCorner_B1F, 255, 3, 1
+ waitstate
+ release
+ end
+
+MossdeepCity_GameCorner_1F_EventScript_15ADE8:: @ 815ADE8
+ special 40
+ msgbox MossdeepCity_GameCorner_1F_Text_18E698, 4
+ release
+ end
+
+MossdeepCity_GameCorner_1F_EventScript_15ADF5:: @ 815ADF5
+ msgbox MossdeepCity_GameCorner_1F_Text_18E6DA, 4
+ fadescreen 1
+ special 41
+ waitstate
+ return
+
+MossdeepCity_GameCorner_1F_EventScript_15AE04:: @ 815AE04
+ move LAST_TALKED, MossdeepCity_GameCorner_1F_Movement_15AE46
+ move 255, MossdeepCity_GameCorner_1F_Movement_15AE3A
+ waitmove 0
+ return
+
+MossdeepCity_GameCorner_1F_EventScript_15AE16:: @ 815AE16
+ move LAST_TALKED, MossdeepCity_GameCorner_1F_Movement_15AE49
+ move 255, MossdeepCity_GameCorner_1F_Movement_15AE3E
+ waitmove 0
+ return
+
+MossdeepCity_GameCorner_1F_EventScript_15AE28:: @ 815AE28
+ move LAST_TALKED, MossdeepCity_GameCorner_1F_Movement_15AE46
+ move 255, MossdeepCity_GameCorner_1F_Movement_15AE42
+ waitmove 0
+ return
+
+MossdeepCity_GameCorner_1F_Movement_15AE3A:: @ 815AE3A
+ step_14
+ step_up
+ step_up
+ step_end
+
+MossdeepCity_GameCorner_1F_Movement_15AE3E:: @ 815AE3E
+ step_14
+ step_right
+ step_up
+ step_end
+
+MossdeepCity_GameCorner_1F_Movement_15AE42:: @ 815AE42
+ step_14
+ step_left
+ step_up
+ step_end
+
+MossdeepCity_GameCorner_1F_Movement_15AE46:: @ 815AE46
+ step_left
+ step_28
+ step_end
+
+MossdeepCity_GameCorner_1F_Movement_15AE49:: @ 815AE49
+ step_right
+ step_27
+ step_end
+
+MossdeepCity_GameCorner_1F_EventScript_15AE4C:: @ 815AE4C
+ msgbox MossdeepCity_GameCorner_1F_Text_18E631, 3
+ end
+
diff --git a/data/maps/scripts/MossdeepCity_GameCorner_B1F.s b/data/maps/scripts/MossdeepCity_GameCorner_B1F.s
new file mode 100644
index 000000000..3fa9fe707
--- /dev/null
+++ b/data/maps/scripts/MossdeepCity_GameCorner_B1F.s
@@ -0,0 +1,78 @@
+MossdeepCity_GameCorner_B1F_MapScripts:: @ 815AE55
+ map_script 3, MossdeepCity_GameCorner_B1F_MapScript1_15AE60
+ map_script 2, MossdeepCity_GameCorner_B1F_MapScript2_15AE64
+ .byte 0
+
+MossdeepCity_GameCorner_B1F_MapScript1_15AE60:: @ 815AE60
+ special 322
+ end
+
+MossdeepCity_GameCorner_B1F_MapScript2_15AE64:: @ 815AE64
+ map_script_2 0x4001, 0, MossdeepCity_GameCorner_B1F_EventScript_15AE6E
+ .2byte 0
+
+MossdeepCity_GameCorner_B1F_EventScript_15AE6E:: @ 815AE6E
+ lockall
+ move 255, MossdeepCity_GameCorner_B1F_Movement_15AEF9
+ waitmove 0
+ special 235
+ msgbox 0x20234cc, 4
+ closebutton
+ setvar 0x8004, 2
+ setvar 0x8005, 0
+ special 236
+ waitstate
+ compare RESULT, 3
+ callif 1, MossdeepCity_GameCorner_B1F_EventScript_15AED5
+ compare RESULT, 1
+ callif 1, MossdeepCity_GameCorner_B1F_EventScript_15AEE3
+ compare RESULT, 2
+ callif 1, MossdeepCity_GameCorner_B1F_EventScript_15AEEE
+ closebutton
+ special 0
+ move 255, MossdeepCity_GameCorner_B1F_Movement_15AEFF
+ waitmove 0
+ special 40
+ setvar 0x4001, 1
+ warp MossdeepCity_GameCorner_1F, 255, 3, 1
+ waitstate
+ releaseall
+ end
+
+MossdeepCity_GameCorner_B1F_EventScript_15AED5:: @ 815AED5
+ setvar 0x40c0, 3
+ msgbox MossdeepCity_GameCorner_B1F_Text_18E796, 4
+ return
+
+MossdeepCity_GameCorner_B1F_EventScript_15AEE3:: @ 815AEE3
+ setvar 0x40c0, 1
+ special 141
+ waittext
+ waitbutton
+ return
+
+MossdeepCity_GameCorner_B1F_EventScript_15AEEE:: @ 815AEEE
+ setvar 0x40c0, 2
+ special 141
+ waittext
+ waitbutton
+ return
+
+MossdeepCity_GameCorner_B1F_Movement_15AEF9:: @ 815AEF9
+ step_down
+ step_down
+ step_down
+ step_right
+ step_right
+ step_end
+
+MossdeepCity_GameCorner_B1F_Movement_15AEFF:: @ 815AEFF
+ step_left
+ step_left
+ step_up
+ step_up
+ step_up
+ step_up
+ step_13
+ step_end
+
diff --git a/data/maps/scripts/MossdeepCity_Gym.s b/data/maps/scripts/MossdeepCity_Gym.s
new file mode 100644
index 000000000..a28f6043a
--- /dev/null
+++ b/data/maps/scripts/MossdeepCity_Gym.s
@@ -0,0 +1,252 @@
+MossdeepCity_Gym_MapScripts:: @ 815A4D3
+ map_script 1, MossdeepCity_Gym_MapScript1_15A4D9
+ .byte 0
+
+MossdeepCity_Gym_MapScript1_15A4D9:: @ 815A4D9
+ checkflag 100
+ jumpeq MossdeepCity_Gym_EventScript_15A510
+ jump MossdeepCity_Gym_EventScript_15A4E8
+ end
+
+MossdeepCity_Gym_EventScript_15A4E8:: @ 815A4E8
+ checkflag 101
+ jumpeq MossdeepCity_Gym_EventScript_15A528
+ jump MossdeepCity_Gym_EventScript_15A4F7
+ end
+
+MossdeepCity_Gym_EventScript_15A4F7:: @ 815A4F7
+ checkflag 102
+ jumpeq MossdeepCity_Gym_EventScript_15A540
+ jump MossdeepCity_Gym_EventScript_15A506
+ end
+
+MossdeepCity_Gym_EventScript_15A506:: @ 815A506
+ checkflag 103
+ jumpeq MossdeepCity_Gym_EventScript_15A558
+ end
+
+MossdeepCity_Gym_EventScript_15A510:: @ 815A510
+ setmaptile 5, 5, 516, 0
+ setmaptile 2, 7, 569, 1
+ jump MossdeepCity_Gym_EventScript_15A4E8
+ end
+
+MossdeepCity_Gym_EventScript_15A528:: @ 815A528
+ setmaptile 8, 14, 516, 0
+ setmaptile 8, 10, 569, 1
+ jump MossdeepCity_Gym_EventScript_15A4F7
+ end
+
+MossdeepCity_Gym_EventScript_15A540:: @ 815A540
+ setmaptile 15, 17, 524, 0
+ setmaptile 17, 15, 569, 1
+ jump MossdeepCity_Gym_EventScript_15A506
+ end
+
+MossdeepCity_Gym_EventScript_15A558:: @ 815A558
+ setmaptile 1, 23, 525, 0
+ setmaptile 5, 24, 569, 1
+ end
+
+MossdeepCity_Gym_EventScript_15A56B:: @ 815A56B
+ trainerbattle 8, 271, 0, MossdeepCity_Gym_Text_18CF02, MossdeepCity_Gym_Text_18D077, MossdeepCity_Gym_Text_18D324, MossdeepCity_Gym_EventScript_15A594
+ checkflag 171
+ jumpif 0, MossdeepCity_Gym_EventScript_15A5C6
+ msgbox MossdeepCity_Gym_Text_18D273, 4
+ release
+ end
+
+MossdeepCity_Gym_EventScript_15A594:: @ 815A594
+ message MossdeepCity_Gym_Text_18D0F9
+ waittext
+ call MossdeepCity_Gym_EventScript_1A02C5
+ msgbox MossdeepCity_Gym_Text_18D128, 4
+ setflag 1229
+ setflag 2061
+ clearflag 869
+ clearflag 915
+ setvar 0x8008, 7
+ call MossdeepCity_Gym_EventScript_1A01C0
+ clearflag 905
+ jump MossdeepCity_Gym_EventScript_15A5C6
+ end
+
+MossdeepCity_Gym_EventScript_15A5C6:: @ 815A5C6
+ giveitem ITEM_TM04
+ compare RESULT, 0
+ jumpeq MossdeepCity_Gym_EventScript_1A029B
+ msgbox MossdeepCity_Gym_Text_18D1CF, 4
+ setflag 171
+ release
+ end
+
+MossdeepCity_Gym_EventScript_15A5EA:: @ 815A5EA
+ lockall
+ checkflag 100
+ jumpeq MossdeepCity_Gym_EventScript_15A621
+ setflag 100
+ move 255, MossdeepCity_Gym_Movement_15A7F7
+ waitmove 0
+ setmaptile 5, 5, 516, 0
+ setmaptile 2, 7, 569, 1
+ jump MossdeepCity_Gym_EventScript_15A619
+ end
+
+MossdeepCity_Gym_EventScript_15A619:: @ 815A619
+ special 142
+ playsfx 36
+ releaseall
+ end
+
+MossdeepCity_Gym_EventScript_15A621:: @ 815A621
+ clearflag 100
+ move 255, MossdeepCity_Gym_Movement_15A7F7
+ waitmove 0
+ setmaptile 5, 5, 524, 0
+ setmaptile 2, 7, 568, 1
+ jump MossdeepCity_Gym_EventScript_15A619
+ end
+
+MossdeepCity_Gym_EventScript_15A646:: @ 815A646
+ lockall
+ checkflag 101
+ jumpeq MossdeepCity_Gym_EventScript_15A675
+ setflag 101
+ move 255, MossdeepCity_Gym_Movement_15A7F7
+ waitmove 0
+ setmaptile 8, 14, 516, 0
+ setmaptile 8, 10, 569, 1
+ jump MossdeepCity_Gym_EventScript_15A619
+ end
+
+MossdeepCity_Gym_EventScript_15A675:: @ 815A675
+ clearflag 101
+ move 255, MossdeepCity_Gym_Movement_15A7F7
+ waitmove 0
+ setmaptile 8, 14, 517, 0
+ setmaptile 8, 10, 568, 1
+ jump MossdeepCity_Gym_EventScript_15A619
+ end
+
+MossdeepCity_Gym_EventScript_15A69A:: @ 815A69A
+ lockall
+ checkflag 102
+ jumpeq MossdeepCity_Gym_EventScript_15A6C9
+ setflag 102
+ move 255, MossdeepCity_Gym_Movement_15A7F7
+ waitmove 0
+ setmaptile 15, 17, 524, 0
+ setmaptile 17, 15, 569, 1
+ jump MossdeepCity_Gym_EventScript_15A619
+ end
+
+MossdeepCity_Gym_EventScript_15A6C9:: @ 815A6C9
+ clearflag 102
+ move 255, MossdeepCity_Gym_Movement_15A7F7
+ waitmove 0
+ setmaptile 15, 17, 516, 0
+ setmaptile 17, 15, 568, 1
+ jump MossdeepCity_Gym_EventScript_15A619
+ end
+
+MossdeepCity_Gym_EventScript_15A6EE:: @ 815A6EE
+ lockall
+ checkflag 103
+ jumpeq MossdeepCity_Gym_EventScript_15A71D
+ setflag 103
+ move 255, MossdeepCity_Gym_Movement_15A7F7
+ waitmove 0
+ setmaptile 1, 23, 525, 0
+ setmaptile 5, 24, 569, 1
+ jump MossdeepCity_Gym_EventScript_15A619
+ end
+
+MossdeepCity_Gym_EventScript_15A71D:: @ 815A71D
+ clearflag 103
+ move 255, MossdeepCity_Gym_Movement_15A7F7
+ waitmove 0
+ setmaptile 1, 23, 516, 0
+ setmaptile 5, 24, 568, 1
+ jump MossdeepCity_Gym_EventScript_15A619
+ end
+
+MossdeepCity_Gym_EventScript_15A742:: @ 815A742
+ lockall
+ warpteleport MossdeepCity_Gym, 255, 14, 29
+ waitstate
+ releaseall
+ end
+
+MossdeepCity_Gym_EventScript_15A74E:: @ 815A74E
+ trainerbattle 0, 233, 0, MossdeepCity_Gym_Text_18C96A, MossdeepCity_Gym_Text_18C9BA
+ msgbox MossdeepCity_Gym_Text_18C9E1, 6
+ end
+
+MossdeepCity_Gym_EventScript_15A765:: @ 815A765
+ trainerbattle 0, 234, 0, MossdeepCity_Gym_Text_18CA10, MossdeepCity_Gym_Text_18CA28
+ msgbox MossdeepCity_Gym_Text_18CA48, 6
+ end
+
+MossdeepCity_Gym_EventScript_15A77C:: @ 815A77C
+ trainerbattle 0, 235, 0, MossdeepCity_Gym_Text_18CAC0, MossdeepCity_Gym_Text_18CB46
+ msgbox MossdeepCity_Gym_Text_18CB77, 6
+ end
+
+MossdeepCity_Gym_EventScript_15A793:: @ 815A793
+ trainerbattle 0, 244, 0, MossdeepCity_Gym_Text_18CC1E, MossdeepCity_Gym_Text_18CC83
+ msgbox MossdeepCity_Gym_Text_18CC9B, 6
+ end
+
+MossdeepCity_Gym_EventScript_15A7AA:: @ 815A7AA
+ trainerbattle 0, 245, 0, MossdeepCity_Gym_Text_18CD14, MossdeepCity_Gym_Text_18CD66
+ msgbox MossdeepCity_Gym_Text_18CD73, 6
+ end
+
+MossdeepCity_Gym_EventScript_15A7C1:: @ 815A7C1
+ trainerbattle 0, 246, 0, MossdeepCity_Gym_Text_18CDE0, MossdeepCity_Gym_Text_18CE47
+ msgbox MossdeepCity_Gym_Text_18CE6C, 6
+ end
+
+MossdeepCity_Gym_EventScript_15A7D8:: @ 815A7D8
+ lock
+ faceplayer
+ checkflag 1229
+ jumpeq MossdeepCity_Gym_EventScript_15A7ED
+ msgbox MossdeepCity_Gym_Text_18C7E3, 4
+ release
+ end
+
+MossdeepCity_Gym_EventScript_15A7ED:: @ 815A7ED
+ msgbox MossdeepCity_Gym_Text_18C938, 4
+ release
+ end
+
+MossdeepCity_Gym_Movement_15A7F7:: @ 815A7F7
+ step_14
+ step_14
+ step_end
+
+MossdeepCity_Gym_EventScript_15A7FA:: @ 815A7FA
+ lockall
+ checkflag 2061
+ jumpeq MossdeepCity_Gym_EventScript_15A81A
+ jump MossdeepCity_Gym_EventScript_15A824
+ end
+
+MossdeepCity_Gym_EventScript_15A80A:: @ 815A80A
+ lockall
+ checkflag 2061
+ jumpeq MossdeepCity_Gym_EventScript_15A81A
+ jump MossdeepCity_Gym_EventScript_15A824
+ end
+
+MossdeepCity_Gym_EventScript_15A81A:: @ 815A81A
+ msgbox MossdeepCity_Gym_Text_18D424, 4
+ releaseall
+ end
+
+MossdeepCity_Gym_EventScript_15A824:: @ 815A824
+ msgbox MossdeepCity_Gym_Text_18D40A, 4
+ releaseall
+ end
+
diff --git a/data/maps/scripts/MossdeepCity_House1.s b/data/maps/scripts/MossdeepCity_House1.s
new file mode 100644
index 000000000..607ca1baa
--- /dev/null
+++ b/data/maps/scripts/MossdeepCity_House1.s
@@ -0,0 +1,24 @@
+MossdeepCity_House1_MapScripts:: @ 815A82E
+ .byte 0
+
+MossdeepCity_House1_EventScript_15A82F:: @ 815A82F
+ lock
+ faceplayer
+ bufferfirstpoke 0
+ msgbox MossdeepCity_House1_Text_18D465, 4
+ specialval RESULT, 277
+ compare RESULT, 0
+ jumpeq MossdeepCity_House1_EventScript_15A855
+ msgbox MossdeepCity_House1_Text_18D475, 4
+ release
+ end
+
+MossdeepCity_House1_EventScript_15A855:: @ 815A855
+ msgbox MossdeepCity_House1_Text_18D4C0, 4
+ release
+ end
+
+MossdeepCity_House1_EventScript_15A85F:: @ 815A85F
+ msgbox MossdeepCity_House1_Text_18D4F1, 2
+ end
+
diff --git a/data/maps/scripts/MossdeepCity_House2.s b/data/maps/scripts/MossdeepCity_House2.s
new file mode 100644
index 000000000..99aa63f91
--- /dev/null
+++ b/data/maps/scripts/MossdeepCity_House2.s
@@ -0,0 +1,55 @@
+MossdeepCity_House2_MapScripts:: @ 815A868
+ .byte 0
+
+MossdeepCity_House2_EventScript_15A869:: @ 815A869
+ msgbox MossdeepCity_House2_Text_18D536, 2
+ end
+
+MossdeepCity_House2_EventScript_15A872:: @ 815A872
+ msgbox MossdeepCity_House2_Text_18D596, 2
+ end
+
+MossdeepCity_House2_EventScript_15A87B:: @ 815A87B
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_WINGULL, 0
+ msgbox MossdeepCity_House2_Text_18D61E, 4
+ waitpokecry
+ closebutton
+ setflag 224
+ clearflag 933
+ compare FACING, 2
+ callif 1, MossdeepCity_House2_EventScript_15A8AE
+ compare FACING, 3
+ callif 1, MossdeepCity_House2_EventScript_15A8B9
+ disappear 3
+ release
+ end
+
+MossdeepCity_House2_EventScript_15A8AE:: @ 815A8AE
+ move 3, MossdeepCity_House2_Movement_15A8C4
+ waitmove 0
+ return
+
+MossdeepCity_House2_EventScript_15A8B9:: @ 815A8B9
+ move 3, MossdeepCity_House2_Movement_15A8CB
+ waitmove 0
+ return
+
+MossdeepCity_House2_Movement_15A8C4:: @ 815A8C4
+ step_18
+ step_15
+ step_15
+ step_17
+ step_15
+ step_13
+ step_end
+
+MossdeepCity_House2_Movement_15A8CB:: @ 815A8CB
+ step_15
+ step_15
+ step_15
+ step_13
+ step_end
+
diff --git a/data/maps/scripts/MossdeepCity_House3.s b/data/maps/scripts/MossdeepCity_House3.s
new file mode 100644
index 000000000..9401bf58e
--- /dev/null
+++ b/data/maps/scripts/MossdeepCity_House3.s
@@ -0,0 +1,28 @@
+MossdeepCity_House3_MapScripts:: @ 815A971
+ .byte 0
+
+MossdeepCity_House3_EventScript_15A972:: @ 815A972
+ lock
+ faceplayer
+ checkflag 152
+ jumpeq MossdeepCity_House3_EventScript_15A9B1
+ msgbox MossdeepCity_House3_Text_18D909, 5
+ compare RESULT, 0
+ jumpeq MossdeepCity_House3_EventScript_15A9BB
+ msgbox MossdeepCity_House3_Text_18D9A9, 4
+ giveitem ITEM_SUPER_ROD
+ setflag 152
+ msgbox MossdeepCity_House3_Text_18D9E3, 4
+ release
+ end
+
+MossdeepCity_House3_EventScript_15A9B1:: @ 815A9B1
+ msgbox MossdeepCity_House3_Text_18DA44, 4
+ release
+ end
+
+MossdeepCity_House3_EventScript_15A9BB:: @ 815A9BB
+ msgbox MossdeepCity_House3_Text_18DA26, 4
+ release
+ end
+
diff --git a/data/maps/scripts/MossdeepCity_House4.s b/data/maps/scripts/MossdeepCity_House4.s
new file mode 100644
index 000000000..3fde63469
--- /dev/null
+++ b/data/maps/scripts/MossdeepCity_House4.s
@@ -0,0 +1,43 @@
+MossdeepCity_House4_MapScripts:: @ 815AB30
+ .byte 0
+
+MossdeepCity_House4_EventScript_15AB31:: @ 815AB31
+ lock
+ faceplayer
+ checkflag 2052
+ jumpeq MossdeepCity_House4_EventScript_15AB46
+ msgbox MossdeepCity_House4_Text_18E0E3, 4
+ release
+ end
+
+MossdeepCity_House4_EventScript_15AB46:: @ 815AB46
+ msgbox MossdeepCity_House4_Text_18E125, 4
+ release
+ end
+
+MossdeepCity_House4_EventScript_15AB50:: @ 815AB50
+ lock
+ faceplayer
+ special 7
+ compare RESULT, 0
+ jumpeq MossdeepCity_House4_EventScript_15AB6D
+ special 278
+ msgbox MossdeepCity_House4_Text_18E17E, 4
+ release
+ end
+
+MossdeepCity_House4_EventScript_15AB6D:: @ 815AB6D
+ msgbox MossdeepCity_House4_Text_18E1A7, 4
+ release
+ end
+
+MossdeepCity_House4_EventScript_15AB77:: @ 815AB77
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_SKITTY, 0
+ msgbox MossdeepCity_House4_Text_18E1E1, 4
+ waitpokecry
+ release
+ end
+
diff --git a/data/maps/scripts/MossdeepCity_Mart.s b/data/maps/scripts/MossdeepCity_Mart.s
new file mode 100644
index 000000000..ef20523a8
--- /dev/null
+++ b/data/maps/scripts/MossdeepCity_Mart.s
@@ -0,0 +1,41 @@
+MossdeepCity_Mart_MapScripts:: @ 815A925
+ .byte 0
+
+MossdeepCity_Mart_EventScript_15A926:: @ 815A926
+ lock
+ faceplayer
+ message MossdeepCity_Mart_Text_1A0BE4
+ waittext
+ pokemart MossdeepCity_Mart_Pokemart_15A940
+ msgbox MossdeepCity_Mart_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x15a93d, 0x3
+
+MossdeepCity_Mart_Pokemart_15A940:: @ 815A940
+ .2byte ITEM_ULTRA_BALL
+ .2byte ITEM_NET_BALL
+ .2byte ITEM_DIVE_BALL
+ .2byte ITEM_HYPER_POTION
+ .2byte ITEM_FULL_HEAL
+ .2byte ITEM_REVIVE
+ .2byte ITEM_MAX_REPEL
+ .2byte ITEM_X_ATTACK
+ .2byte ITEM_X_DEFEND
+ .2byte ITEM_NONE
+ release
+ end
+
+MossdeepCity_Mart_EventScript_15A956:: @ 815A956
+ msgbox MossdeepCity_Mart_Text_18D758, 2
+ end
+
+MossdeepCity_Mart_EventScript_15A95F:: @ 815A95F
+ msgbox MossdeepCity_Mart_Text_18D7E7, 2
+ end
+
+MossdeepCity_Mart_EventScript_15A968:: @ 815A968
+ msgbox MossdeepCity_Mart_Text_18D841, 2
+ end
+
diff --git a/data/maps/scripts/MossdeepCity_PokemonCenter_1F.s b/data/maps/scripts/MossdeepCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..4ac89863a
--- /dev/null
+++ b/data/maps/scripts/MossdeepCity_PokemonCenter_1F.s
@@ -0,0 +1,24 @@
+MossdeepCity_PokemonCenter_1F_MapScripts:: @ 815A8D0
+ map_script 3, MossdeepCity_PokemonCenter_1F_MapScript1_15A8D6
+ .byte 0
+
+MossdeepCity_PokemonCenter_1F_MapScript1_15A8D6:: @ 815A8D6
+ sethealplace 9
+ end
+
+MossdeepCity_PokemonCenter_1F_EventScript_15A8DA:: @ 815A8DA
+ setvar 0x800b, 1
+ call MossdeepCity_PokemonCenter_1F_EventScript_19FD5B
+ waittext
+ waitbutton
+ release
+ end
+
+MossdeepCity_PokemonCenter_1F_EventScript_15A8E8:: @ 815A8E8
+ msgbox MossdeepCity_PokemonCenter_1F_Text_18D62F, 2
+ end
+
+MossdeepCity_PokemonCenter_1F_EventScript_15A8F1:: @ 815A8F1
+ msgbox MossdeepCity_PokemonCenter_1F_Text_18D69A, 2
+ end
+
diff --git a/data/maps/scripts/MossdeepCity_PokemonCenter_2F.s b/data/maps/scripts/MossdeepCity_PokemonCenter_2F.s
new file mode 100644
index 000000000..09aca3dae
--- /dev/null
+++ b/data/maps/scripts/MossdeepCity_PokemonCenter_2F.s
@@ -0,0 +1,22 @@
+MossdeepCity_PokemonCenter_2F_MapScripts:: @ 815A8FA
+ map_script 2, MossdeepCity_PokemonCenter_2F_MapScript2_1A3D88
+ map_script 4, MossdeepCity_PokemonCenter_2F_MapScript2_1A3D03
+ map_script 1, MossdeepCity_PokemonCenter_2F_MapScript1_1A3D32
+ .byte 0
+
+MossdeepCity_PokemonCenter_2F_EventScript_15A90A:: @ 815A90A
+ msgbox MossdeepCity_PokemonCenter_2F_Text_18D6F5, 2
+ end
+
+MossdeepCity_PokemonCenter_2F_EventScript_15A913:: @ 815A913
+ call MossdeepCity_PokemonCenter_2F_EventScript_1A3EA6
+ end
+
+MossdeepCity_PokemonCenter_2F_EventScript_15A919:: @ 815A919
+ call MossdeepCity_PokemonCenter_2F_EventScript_1A40CC
+ end
+
+MossdeepCity_PokemonCenter_2F_EventScript_15A91F:: @ 815A91F
+ call MossdeepCity_PokemonCenter_2F_EventScript_1A41FB
+ end
+
diff --git a/data/maps/scripts/MossdeepCity_SpaceCenter_1F.s b/data/maps/scripts/MossdeepCity_SpaceCenter_1F.s
new file mode 100644
index 000000000..4e7fe7fb5
--- /dev/null
+++ b/data/maps/scripts/MossdeepCity_SpaceCenter_1F.s
@@ -0,0 +1,64 @@
+MossdeepCity_SpaceCenter_1F_MapScripts:: @ 815AB8A
+ .byte 0
+
+MossdeepCity_SpaceCenter_1F_EventScript_15AB8B:: @ 815AB8B
+ lock
+ faceplayer
+ checkdailyflags
+ specialval RESULT, 256
+ buffernum 0, 32781
+ compare RESULT, 0
+ callif 1, MossdeepCity_SpaceCenter_1F_EventScript_15ABBA
+ compare RESULT, 1
+ callif 4, MossdeepCity_SpaceCenter_1F_EventScript_15ABC3
+ closebutton
+ move LAST_TALKED, MossdeepCity_SpaceCenter_1F_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+MossdeepCity_SpaceCenter_1F_EventScript_15ABBA:: @ 815ABBA
+ msgbox MossdeepCity_SpaceCenter_1F_Text_18E1F3, 4
+ return
+
+MossdeepCity_SpaceCenter_1F_EventScript_15ABC3:: @ 815ABC3
+ msgbox MossdeepCity_SpaceCenter_1F_Text_18E214, 4
+ return
+
+MossdeepCity_SpaceCenter_1F_EventScript_15ABCC:: @ 815ABCC
+ msgbox MossdeepCity_SpaceCenter_1F_Text_18E251, 2
+ end
+
+MossdeepCity_SpaceCenter_1F_EventScript_15ABD5:: @ 815ABD5
+ lock
+ faceplayer
+ checkflag 192
+ jumpeq MossdeepCity_SpaceCenter_1F_EventScript_15AC0C
+ msgbox MossdeepCity_SpaceCenter_1F_Text_18E335, 4
+ giveitem ITEM_SUN_STONE
+ compare RESULT, 0
+ jumpeq MossdeepCity_SpaceCenter_1F_EventScript_1A029B
+ setflag 192
+ msgbox MossdeepCity_SpaceCenter_1F_Text_18E39B, 4
+ release
+ end
+
+MossdeepCity_SpaceCenter_1F_EventScript_15AC0C:: @ 815AC0C
+ msgbox MossdeepCity_SpaceCenter_1F_Text_18E39B, 4
+ release
+ end
+
+MossdeepCity_SpaceCenter_1F_EventScript_15AC16:: @ 815AC16
+ msgbox MossdeepCity_SpaceCenter_1F_Text_18E3E5, 2
+ end
+
+MossdeepCity_SpaceCenter_1F_EventScript_15AC1F:: @ 815AC1F
+ lock
+ faceplayer
+ msgbox MossdeepCity_SpaceCenter_1F_Text_18E427, 4
+ closebutton
+ move LAST_TALKED, MossdeepCity_SpaceCenter_1F_Movement_1A083D
+ waitmove 0
+ release
+ end
+
diff --git a/data/maps/scripts/MossdeepCity_SpaceCenter_2F.s b/data/maps/scripts/MossdeepCity_SpaceCenter_2F.s
new file mode 100644
index 000000000..145cae073
--- /dev/null
+++ b/data/maps/scripts/MossdeepCity_SpaceCenter_2F.s
@@ -0,0 +1,15 @@
+MossdeepCity_SpaceCenter_2F_MapScripts:: @ 815AC36
+ .byte 0
+
+MossdeepCity_SpaceCenter_2F_EventScript_15AC37:: @ 815AC37
+ msgbox MossdeepCity_SpaceCenter_2F_Text_18E483, 2
+ end
+
+MossdeepCity_SpaceCenter_2F_EventScript_15AC40:: @ 815AC40
+ msgbox MossdeepCity_SpaceCenter_2F_Text_18E4EE, 2
+ end
+
+MossdeepCity_SpaceCenter_2F_EventScript_15AC49:: @ 815AC49
+ msgbox MossdeepCity_SpaceCenter_2F_Text_18E564, 2
+ end
+
diff --git a/data/maps/scripts/MossdeepCity_StevensHouse.s b/data/maps/scripts/MossdeepCity_StevensHouse.s
new file mode 100644
index 000000000..69e0fbffd
--- /dev/null
+++ b/data/maps/scripts/MossdeepCity_StevensHouse.s
@@ -0,0 +1,131 @@
+MossdeepCity_StevensHouse_MapScripts:: @ 815A9C5
+ map_script 1, MossdeepCity_StevensHouse_MapScript1_15A9D5
+ map_script 3, MossdeepCity_StevensHouse_MapScript1_15A9E9
+ map_script 2, MossdeepCity_StevensHouse_MapScript2_15AA01
+ .byte 0
+
+MossdeepCity_StevensHouse_MapScript1_15A9D5:: @ 815A9D5
+ checkflag 2052
+ callif 0, MossdeepCity_StevensHouse_EventScript_15A9DF
+ end
+
+MossdeepCity_StevensHouse_EventScript_15A9DF:: @ 815A9DF
+ setmaptile 6, 4, 753, 1
+ return
+
+MossdeepCity_StevensHouse_MapScript1_15A9E9:: @ 815A9E9
+ compare 0x40c6, 1
+ callif 1, MossdeepCity_StevensHouse_EventScript_15A9F5
+ end
+
+MossdeepCity_StevensHouse_EventScript_15A9F5:: @ 815A9F5
+ movespriteperm 1, 6, 5
+ spritebehave 1, 7
+ return
+
+MossdeepCity_StevensHouse_MapScript2_15AA01:: @ 815AA01
+ map_script_2 0x40c6, 0, MossdeepCity_StevensHouse_EventScript_15AA0B
+ .2byte 0
+
+MossdeepCity_StevensHouse_EventScript_15AA0B:: @ 815AA0B
+ lockall
+ move 1, MossdeepCity_StevensHouse_Movement_1A083F
+ waitmove 0
+ playsfx 21
+ move 1, MossdeepCity_StevensHouse_Movement_1A0833
+ waitmove 0
+ move 1, MossdeepCity_StevensHouse_Movement_1A0835
+ waitmove 0
+ move 1, MossdeepCity_StevensHouse_Movement_15AA6E
+ waitmove 0
+ msgbox MossdeepCity_StevensHouse_Text_18DA77, 4
+ giveitem ITEM_HM08
+ setflag 123
+ setflag 302
+ msgbox MossdeepCity_StevensHouse_Text_18DB22, 4
+ closebutton
+ pause 20
+ move 1, MossdeepCity_StevensHouse_Movement_15AA76
+ waitmove 0
+ setvar 0x40c6, 1
+ releaseall
+ end
+
+MossdeepCity_StevensHouse_Movement_15AA6E:: @ 815AA6E
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_25
+ step_end
+
+MossdeepCity_StevensHouse_Movement_15AA76:: @ 815AA76
+ step_up
+ step_right
+ step_right
+ step_right
+ step_26
+ step_end
+
+MossdeepCity_StevensHouse_EventScript_15AA7C:: @ 815AA7C
+ lockall
+ msgbox MossdeepCity_StevensHouse_Text_18DD12, 5
+ compare RESULT, 0
+ jumpeq MossdeepCity_StevensHouse_EventScript_15AAE6
+ countpokemon
+ compare RESULT, 6
+ jumpeq MossdeepCity_StevensHouse_EventScript_15AADC
+ copyvar 0x8004, RESULT
+ disappear 2
+ fanfare 370
+ message MossdeepCity_StevensHouse_Text_18DD61
+ waitfanfare
+ waittext
+ givepokemon SPECIES_BELDUM, 5, ITEM_NONE, 0x0, 0x0, 0
+ bufferpoke 1, SPECIES_BELDUM
+ msgbox MossdeepCity_StevensHouse_Text_1A1102, 5
+ compare RESULT, 1
+ callif 1, MossdeepCity_StevensHouse_EventScript_1A0678
+ setflag 968
+ setflag 298
+ releaseall
+ end
+
+MossdeepCity_StevensHouse_EventScript_15AADC:: @ 815AADC
+ msgbox MossdeepCity_StevensHouse_Text_18DD77, 4
+ releaseall
+ end
+
+MossdeepCity_StevensHouse_EventScript_15AAE6:: @ 815AAE6
+ msgbox MossdeepCity_StevensHouse_Text_18DD9E, 4
+ releaseall
+ end
+
+MossdeepCity_StevensHouse_EventScript_15AAF0:: @ 815AAF0
+ msgbox MossdeepCity_StevensHouse_Text_18E0A3, 3
+ end
+
+MossdeepCity_StevensHouse_EventScript_15AAF9:: @ 815AAF9
+ msgbox MossdeepCity_StevensHouse_Text_18DC25, 2
+ end
+
+MossdeepCity_StevensHouse_EventScript_15AB02:: @ 815AB02
+ lockall
+ checkflag 302
+ jumpeq MossdeepCity_StevensHouse_EventScript_15AB16
+ msgbox MossdeepCity_StevensHouse_Text_18DF1A, 4
+ releaseall
+ end
+
+MossdeepCity_StevensHouse_EventScript_15AB16:: @ 815AB16
+ msgbox MossdeepCity_StevensHouse_Text_18DDC2, 4
+ releaseall
+ end
+
+MossdeepCity_StevensHouse_EventScript_15AB20:: @ 815AB20
+ giveitem ITEM_HM08, 1, 1
+ setflag 123
+ end
+
diff --git a/data/maps/scripts/MtChimney.s b/data/maps/scripts/MtChimney.s
new file mode 100644
index 000000000..09ba8313c
--- /dev/null
+++ b/data/maps/scripts/MtChimney.s
@@ -0,0 +1,215 @@
+MtChimney_MapScripts:: @ 815CF7C
+ map_script 5, MtChimney_MapScript1_15CF92
+ map_script 3, MtChimney_MapScript1_15CF87
+ .byte 0
+
+MtChimney_MapScript1_15CF87:: @ 815CF87
+ setvar 0x40bd, 1
+ call MtChimney_EventScript_1A0196
+ end
+
+MtChimney_MapScript1_15CF92:: @ 815CF92
+ tileeffect 1
+ end
+
+MtChimney_EventScript_15CF95:: @ 815CF95
+ lock
+ faceplayer
+ showmoney 0, 0
+ snop
+ msgbox MtChimney_Text_195760, 5
+ compare RESULT, 0
+ jumpeq MtChimney_EventScript_15D00B
+ checkmoney 0xc8, 0
+ compare RESULT, 0
+ jumpeq MtChimney_EventScript_15D018
+ msgbox MtChimney_Text_1957A9, 4
+ checkitemspace ITEM_LAVA_COOKIE, 1
+ compare RESULT, 1
+ callif 1, MtChimney_EventScript_15D000
+ giveitem ITEM_LAVA_COOKIE
+ compare RESULT, 0
+ jumpeq MtChimney_EventScript_15CFF3
+ hidemoney 0, 0
+ release
+ end
+
+MtChimney_EventScript_15CFF3:: @ 815CFF3
+ msgbox MtChimney_Text_1A0CC2, 4
+ hidemoney 0, 0
+ release
+ end
+
+MtChimney_EventScript_15D000:: @ 815D000
+ paymoney 0xc8, 0
+ updatemoney 0, 0
+ snop
+ return
+
+MtChimney_EventScript_15D00B:: @ 815D00B
+ msgbox MtChimney_Text_1957F7, 4
+ hidemoney 0, 0
+ release
+ end
+
+MtChimney_EventScript_15D018:: @ 815D018
+ msgbox MtChimney_Text_1957BA, 4
+ hidemoney 0, 0
+ release
+ end
+
+MtChimney_Movement_15D025:: @ 815D025
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_right
+ step_end
+
+MtChimney_Movement_15D02D:: @ 815D02D
+ step_left
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_end
+
+MtChimney_Movement_15D036:: @ 815D036
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_right
+ step_right
+ step_end
+
+MtChimney_Movement_15D03E:: @ 815D03E
+ step_left
+ step_left
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_end
+
+ .incbin "baserom.gba", 0x15d048, 0xad
+
+MtChimney_EventScript_15D0F5:: @ 815D0F5
+ msgbox MtChimney_Text_1B40EA, 3
+ end
+
+MtChimney_EventScript_15D0FE:: @ 815D0FE
+ msgbox MtChimney_Text_1B4128, 3
+ end
+
+MtChimney_EventScript_15D107:: @ 815D107
+ msgbox MtChimney_Text_1B416E, 3
+ end
+
+MtChimney_EventScript_15D110:: @ 815D110
+ trainerbattle 0, 597, 0, MtChimney_Text_1B3B36, MtChimney_Text_1B3BB8
+ msgbox MtChimney_Text_1B3C07, 6
+ end
+
+MtChimney_EventScript_15D127:: @ 815D127
+ trainerbattle 0, 579, 0, MtChimney_Text_1B3C96, MtChimney_Text_1B3D1E
+ msgbox MtChimney_Text_1B3D3D, 6
+ end
+
+MtChimney_EventScript_15D13E:: @ 815D13E
+ msgbox MtChimney_Text_1B3D9A, 3
+ end
+
+ .incbin "baserom.gba", 0x15d147, 0x9
+
+MtChimney_EventScript_15D150:: @ 815D150
+ msgbox MtChimney_Text_1B3DF5, 3
+ end
+
+MtChimney_EventScript_15D159:: @ 815D159
+ msgbox MtChimney_Text_1B3E1F, 3
+ end
+
+MtChimney_EventScript_15D162:: @ 815D162
+ msgbox MtChimney_Text_1B3E7A, 3
+ end
+
+MtChimney_EventScript_15D16B:: @ 815D16B
+ msgbox MtChimney_Text_1B3EBA, 3
+ end
+
+MtChimney_EventScript_15D174:: @ 815D174
+ msgbox MtChimney_Text_1B41B0, 3
+ end
+
+MtChimney_EventScript_15D17D:: @ 815D17D
+ lockall
+ checkflag 139
+ jumpif 0, MtChimney_EventScript_15D1D0
+ checkflag 115
+ jumpeq MtChimney_EventScript_15D1C6
+ msgbox MtChimney_Text_195870, 5
+ compare RESULT, 0
+ jumpeq MtChimney_EventScript_15D1BC
+ msgbox MtChimney_Text_1958C6, 4
+ giveitem ITEM_METEORITE
+ setflag 115
+ releaseall
+ end
+
+MtChimney_EventScript_15D1BC:: @ 815D1BC
+ msgbox MtChimney_Text_1958FC, 4
+ releaseall
+ end
+
+MtChimney_EventScript_15D1C6:: @ 815D1C6
+ msgbox MtChimney_Text_195920, 4
+ releaseall
+ end
+
+MtChimney_EventScript_15D1D0:: @ 815D1D0
+ msgbox MtChimney_Text_195806, 4
+ releaseall
+ end
+
+MtChimney_EventScript_15D1DA:: @ 815D1DA
+ msgbox MtChimney_Text_19595C, 3
+ end
+
+MtChimney_EventScript_15D1E3:: @ 815D1E3
+ trainerbattle 0, 313, 0, MtChimney_Text_19597F, MtChimney_Text_1959D8
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq MtChimney_EventScript_15D20A
+ msgbox MtChimney_Text_195A04, 6
+ end
+
+MtChimney_EventScript_15D20A:: @ 815D20A
+ trainerbattle 5, 313, 0, MtChimney_Text_195A45, MtChimney_Text_195AAD
+ msgbox MtChimney_Text_195AD9, 6
+ end
+
+MtChimney_EventScript_15D221:: @ 815D221
+ trainerbattle 0, 124, 0, MtChimney_Text_195B1C, MtChimney_Text_195B5F
+ msgbox MtChimney_Text_195B84, 6
+ end
+
+MtChimney_EventScript_15D238:: @ 815D238
+ trainerbattle 0, 125, 0, MtChimney_Text_195BB2, MtChimney_Text_195BF9
+ msgbox MtChimney_Text_195C31, 6
+ end
+
+MtChimney_EventScript_15D24F:: @ 815D24F
+ trainerbattle 0, 126, 0, MtChimney_Text_195CD8, MtChimney_Text_195D2F
+ msgbox MtChimney_Text_195D5C, 6
+ end
+
diff --git a/data/maps/scripts/MtChimney_CableCarStation.s b/data/maps/scripts/MtChimney_CableCarStation.s
new file mode 100644
index 000000000..2f916a554
--- /dev/null
+++ b/data/maps/scripts/MtChimney_CableCarStation.s
@@ -0,0 +1,88 @@
+MtChimney_CableCarStation_MapScripts:: @ 815C0FA
+ map_script 3, MtChimney_CableCarStation_MapScript1_15C105
+ map_script 2, MtChimney_CableCarStation_MapScript2_15C11D
+ .byte 0
+
+MtChimney_CableCarStation_MapScript1_15C105:: @ 815C105
+ compare 0x40a3, 1
+ callif 1, MtChimney_CableCarStation_EventScript_15C111
+ end
+
+MtChimney_CableCarStation_EventScript_15C111:: @ 815C111
+ movespriteperm 1, 5, 4
+ spritebehave 1, 10
+ return
+
+MtChimney_CableCarStation_MapScript2_15C11D:: @ 815C11D
+ map_script_2 0x40a3, 1, MtChimney_CableCarStation_EventScript_15C127
+ .2byte 0
+
+MtChimney_CableCarStation_EventScript_15C127:: @ 815C127
+ lockall
+ move 255, MtChimney_CableCarStation_Movement_15C1B4
+ move 1, MtChimney_CableCarStation_Movement_15C1AA
+ waitmove 0
+ setvar 0x40a3, 0
+ movespriteperm 1, 6, 7
+ spritebehave 1, 8
+ releaseall
+ end
+
+MtChimney_CableCarStation_EventScript_15C14B:: @ 815C14B
+ lock
+ faceplayer
+ msgbox MtChimney_CableCarStation_Text_19256A, 5
+ compare RESULT, 1
+ jumpeq MtChimney_CableCarStation_EventScript_15C16C
+ compare RESULT, 0
+ jumpeq MtChimney_CableCarStation_EventScript_15C19B
+ end
+
+MtChimney_CableCarStation_EventScript_15C16C:: @ 815C16C
+ msgbox MtChimney_CableCarStation_Text_1925A9, 4
+ closebutton
+ move 1, MtChimney_CableCarStation_Movement_15C1A5
+ move 255, MtChimney_CableCarStation_Movement_15C1AF
+ waitmove 0
+ setvar 0x8004, 1
+ setvar 0x40a3, 2
+ inccounter 48
+ special 151
+ special 152
+ waitstate
+ release
+ end
+
+MtChimney_CableCarStation_EventScript_15C19B:: @ 815C19B
+ msgbox MtChimney_CableCarStation_Text_1925BF, 4
+ release
+ end
+
+MtChimney_CableCarStation_Movement_15C1A5:: @ 815C1A5
+ step_up
+ step_up
+ step_left
+ step_28
+ step_end
+
+MtChimney_CableCarStation_Movement_15C1AA:: @ 815C1AA
+ step_14
+ step_right
+ step_down
+ step_down
+ step_end
+
+MtChimney_CableCarStation_Movement_15C1AF:: @ 815C1AF
+ step_up
+ step_up
+ step_up
+ step_14
+ step_end
+
+MtChimney_CableCarStation_Movement_15C1B4:: @ 815C1B4
+ step_down
+ step_down
+ step_down
+ step_14
+ step_end
+
diff --git a/data/maps/scripts/MtPyre_1F.s b/data/maps/scripts/MtPyre_1F.s
new file mode 100644
index 000000000..cc9ff3cba
--- /dev/null
+++ b/data/maps/scripts/MtPyre_1F.s
@@ -0,0 +1,29 @@
+MtPyre_1F_MapScripts:: @ 815D322
+ .byte 0
+
+MtPyre_1F_EventScript_15D323:: @ 815D323
+ lock
+ faceplayer
+ checkflag 282
+ jumpeq MtPyre_1F_EventScript_15D352
+ msgbox MtPyre_1F_Text_196151, 4
+ giveitem ITEM_CLEANSE_TAG
+ compare RESULT, 0
+ jumpeq MtPyre_1F_EventScript_1A029B
+ setflag 282
+ release
+ end
+
+MtPyre_1F_EventScript_15D352:: @ 815D352
+ msgbox MtPyre_1F_Text_1961CE, 4
+ release
+ end
+
+MtPyre_1F_EventScript_15D35C:: @ 815D35C
+ msgbox MtPyre_1F_Text_196218, 2
+ end
+
+MtPyre_1F_EventScript_15D365:: @ 815D365
+ msgbox MtPyre_1F_Text_196283, 2
+ end
+
diff --git a/data/maps/scripts/MtPyre_2F.s b/data/maps/scripts/MtPyre_2F.s
new file mode 100644
index 000000000..f01d63528
--- /dev/null
+++ b/data/maps/scripts/MtPyre_2F.s
@@ -0,0 +1,34 @@
+MtPyre_2F_MapScripts:: @ 815D36E
+ map_script 2, MtPyre_2F_MapScript2_1C6BB5
+ map_script 3, MtPyre_2F_MapScript1_1C6BBF
+ map_script 5, MtPyre_2F_MapScript1_15D37E
+ .byte 0
+
+MtPyre_2F_MapScript1_15D37E:: @ 815D37E
+ tileeffect 7
+ warp5 MtPyre_1F, 255, 0, 0
+ end
+
+MtPyre_2F_EventScript_15D389:: @ 815D389
+ msgbox MtPyre_2F_Text_1965BB, 2
+ end
+
+MtPyre_2F_EventScript_15D392:: @ 815D392
+ msgbox MtPyre_2F_Text_196600, 2
+ end
+
+MtPyre_2F_EventScript_15D39B:: @ 815D39B
+ trainerbattle 0, 145, 0, MtPyre_2F_Text_196674, MtPyre_2F_Text_1966BE
+ msgbox MtPyre_2F_Text_1966E7, 6
+ end
+
+MtPyre_2F_EventScript_15D3B2:: @ 815D3B2
+ trainerbattle 4, 640, 0, MtPyre_2F_Text_1962C6, MtPyre_2F_Text_196358, MtPyre_2F_Text_1963CB
+ msgbox MtPyre_2F_Text_196368, 6
+ end
+
+MtPyre_2F_EventScript_15D3CD:: @ 815D3CD
+ trainerbattle 4, 640, 0, MtPyre_2F_Text_196449, MtPyre_2F_Text_1964EB, MtPyre_2F_Text_196539
+ msgbox MtPyre_2F_Text_196504, 6
+ end
+
diff --git a/data/maps/scripts/MtPyre_3F.s b/data/maps/scripts/MtPyre_3F.s
new file mode 100644
index 000000000..2d571a99a
--- /dev/null
+++ b/data/maps/scripts/MtPyre_3F.s
@@ -0,0 +1,13 @@
+MtPyre_3F_MapScripts:: @ 815D3E8
+ .byte 0
+
+MtPyre_3F_EventScript_15D3E9:: @ 815D3E9
+ trainerbattle 0, 236, 0, MtPyre_3F_Text_19672B, MtPyre_3F_Text_19679D
+ msgbox MtPyre_3F_Text_1967B5, 6
+ end
+
+MtPyre_3F_EventScript_15D400:: @ 815D400
+ trainerbattle 0, 247, 0, MtPyre_3F_Text_1967EF, MtPyre_3F_Text_19682B
+ msgbox MtPyre_3F_Text_196842, 6
+ end
+
diff --git a/data/maps/scripts/MtPyre_4F.s b/data/maps/scripts/MtPyre_4F.s
new file mode 100644
index 000000000..34fd8db92
--- /dev/null
+++ b/data/maps/scripts/MtPyre_4F.s
@@ -0,0 +1,8 @@
+MtPyre_4F_MapScripts:: @ 815D417
+ .byte 0
+
+MtPyre_4F_EventScript_15D418:: @ 815D418
+ trainerbattle 0, 190, 0, MtPyre_4F_Text_1968A6, MtPyre_4F_Text_1968D0
+ msgbox MtPyre_4F_Text_1968EE, 6
+ end
+
diff --git a/data/maps/scripts/MtPyre_5F.s b/data/maps/scripts/MtPyre_5F.s
new file mode 100644
index 000000000..2495a4c9a
--- /dev/null
+++ b/data/maps/scripts/MtPyre_5F.s
@@ -0,0 +1,8 @@
+MtPyre_5F_MapScripts:: @ 815D42F
+ .byte 0
+
+MtPyre_5F_EventScript_15D430:: @ 815D430
+ trainerbattle 0, 109, 0, MtPyre_5F_Text_196939, MtPyre_5F_Text_196997
+ msgbox MtPyre_5F_Text_1969AC, 6
+ end
+
diff --git a/data/maps/scripts/MtPyre_6F.s b/data/maps/scripts/MtPyre_6F.s
new file mode 100644
index 000000000..90b9ac2be
--- /dev/null
+++ b/data/maps/scripts/MtPyre_6F.s
@@ -0,0 +1,16 @@
+MtPyre_6F_MapScripts:: @ 815D447
+ .byte 0
+
+MtPyre_6F_EventScript_15D448:: @ 815D448
+ trainerbattle 0, 108, 0, MtPyre_6F_Text_1969FE, MtPyre_6F_Text_196A30
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq MtPyre_6F_EventScript_15D46F
+ msgbox MtPyre_6F_Text_196A4C, 6
+ end
+
+MtPyre_6F_EventScript_15D46F:: @ 815D46F
+ trainerbattle 5, 108, 0, MtPyre_6F_Text_196A95, MtPyre_6F_Text_196AB1
+ msgbox MtPyre_6F_Text_196AC9, 6
+ end
+
diff --git a/data/maps/scripts/MtPyre_Exterior.s b/data/maps/scripts/MtPyre_Exterior.s
new file mode 100644
index 000000000..0cd44ed2b
--- /dev/null
+++ b/data/maps/scripts/MtPyre_Exterior.s
@@ -0,0 +1,28 @@
+MtPyre_Exterior_MapScripts:: @ 815D486
+ map_script 3, MtPyre_Exterior_MapScript1_15D48C
+ .byte 0
+
+MtPyre_Exterior_MapScript1_15D48C:: @ 815D48C
+ call MtPyre_Exterior_EventScript_15D492
+ end
+
+MtPyre_Exterior_EventScript_15D492:: @ 815D492
+ getplayerxy 0x4000, 0x4001
+ compare 0x4001, 12
+ jumpif 0, MtPyre_Exterior_EventScript_15D4A3
+ return
+
+MtPyre_Exterior_EventScript_15D4A3:: @ 815D4A3
+ setweather 6
+ return
+
+MtPyre_Exterior_EventScript_15D4A7:: @ 815D4A7
+ setweather 6
+ doweather
+ end
+
+MtPyre_Exterior_EventScript_15D4AC:: @ 815D4AC
+ setweather 2
+ doweather
+ end
+
diff --git a/data/maps/scripts/MtPyre_Summit.s b/data/maps/scripts/MtPyre_Summit.s
new file mode 100644
index 000000000..4967a4c00
--- /dev/null
+++ b/data/maps/scripts/MtPyre_Summit.s
@@ -0,0 +1,321 @@
+MtPyre_Summit_MapScripts:: @ 815D4B1
+ map_script 3, MtPyre_Summit_MapScript1_15D4B7
+ .byte 0
+
+MtPyre_Summit_MapScript1_15D4B7:: @ 815D4B7
+ call MtPyre_Summit_EventScript_1A0196
+ end
+
+MtPyre_Summit_EventScript_15D4BD:: @ 815D4BD
+ lockall
+ setvar 0x8008, 0
+ jump MtPyre_Summit_EventScript_15D4E1
+ end
+
+MtPyre_Summit_EventScript_15D4C9:: @ 815D4C9
+ lockall
+ setvar 0x8008, 1
+ jump MtPyre_Summit_EventScript_15D4E1
+ end
+
+MtPyre_Summit_EventScript_15D4D5:: @ 815D4D5
+ lockall
+ setvar 0x8008, 2
+ jump MtPyre_Summit_EventScript_15D4E1
+ end
+
+MtPyre_Summit_EventScript_15D4E1:: @ 815D4E1
+ move 255, MtPyre_Summit_Movement_1A0841
+ waitmove 0
+ move 2, MtPyre_Summit_Movement_1A0845
+ waitmove 0
+ pause 50
+ compare 0x8008, 0
+ callif 1, MtPyre_Summit_EventScript_15D593
+ compare 0x8008, 1
+ callif 1, MtPyre_Summit_EventScript_15D59E
+ compare 0x8008, 2
+ callif 1, MtPyre_Summit_EventScript_15D59F
+ msgbox MtPyre_Summit_Text_1B5EEC, 4
+ closebutton
+ fadescreen 1
+ disappear 2
+ disappear 4
+ disappear 5
+ disappear 6
+ setflag 916
+ setflag 917
+ fadescreen 0
+ pause 20
+ call MtPyre_Summit_EventScript_15D57A
+ compare 0x8008, 0
+ callif 1, MtPyre_Summit_EventScript_15D5AA
+ compare 0x8008, 1
+ callif 1, MtPyre_Summit_EventScript_15D5BF
+ compare 0x8008, 2
+ callif 1, MtPyre_Summit_EventScript_15D5CA
+ msgbox MtPyre_Summit_Text_1B5FE6, 4
+ giveitem ITEM_RED_ORB
+ setflag 212
+ releaseall
+ end
+
+MtPyre_Summit_EventScript_15D57A:: @ 815D57A
+ setflag 111
+ setvar 0x4058, 1
+ clearflag 840
+ clearflag 835
+ setvar 0x40a0, 1
+ setvar 0x40b9, 1
+ return
+
+MtPyre_Summit_EventScript_15D593:: @ 815D593
+ move 2, MtPyre_Summit_Movement_15D5E9
+ waitmove 0
+ return
+
+MtPyre_Summit_EventScript_15D59E:: @ 815D59E
+ return
+
+MtPyre_Summit_EventScript_15D59F:: @ 815D59F
+ move 2, MtPyre_Summit_Movement_15D5EC
+ waitmove 0
+ return
+
+MtPyre_Summit_EventScript_15D5AA:: @ 815D5AA
+ move 3, MtPyre_Summit_Movement_15D5DF
+ waitmove 0
+ move 255, MtPyre_Summit_Movement_1A0843
+ waitmove 0
+ return
+
+MtPyre_Summit_EventScript_15D5BF:: @ 815D5BF
+ move 3, MtPyre_Summit_Movement_15D5E3
+ waitmove 0
+ return
+
+MtPyre_Summit_EventScript_15D5CA:: @ 815D5CA
+ move 3, MtPyre_Summit_Movement_15D5E5
+ waitmove 0
+ move 255, MtPyre_Summit_Movement_1A083F
+ waitmove 0
+ return
+
+MtPyre_Summit_Movement_15D5DF:: @ 815D5DF
+ step_down
+ step_down
+ step_27
+ step_end
+
+MtPyre_Summit_Movement_15D5E3:: @ 815D5E3
+ step_down
+ step_end
+
+MtPyre_Summit_Movement_15D5E5:: @ 815D5E5
+ step_down
+ step_down
+ step_28
+ step_end
+
+MtPyre_Summit_Movement_15D5E9:: @ 815D5E9
+ step_left
+ step_25
+ step_end
+
+MtPyre_Summit_Movement_15D5EC:: @ 815D5EC
+ step_right
+ step_25
+ step_end
+
+MtPyre_Summit_EventScript_15D5EF:: @ 815D5EF
+ lock
+ faceplayer
+ msgbox MtPyre_Summit_Text_1B64B3, 5
+ compare RESULT, 1
+ callif 1, MtPyre_Summit_EventScript_15D611
+ compare RESULT, 0
+ callif 1, MtPyre_Summit_EventScript_15D61A
+ release
+ end
+
+MtPyre_Summit_EventScript_15D611:: @ 815D611
+ msgbox MtPyre_Summit_Text_1B65D6, 4
+ return
+
+MtPyre_Summit_EventScript_15D61A:: @ 815D61A
+ msgbox MtPyre_Summit_Text_1B6823, 4
+ return
+
+MtPyre_Summit_EventScript_15D623:: @ 815D623
+ lock
+ faceplayer
+ checkflag 259
+ jumpeq MtPyre_Summit_EventScript_15D6C4
+ checkflag 113
+ jumpeq MtPyre_Summit_EventScript_15D64A
+ checkflag 129
+ jumpeq MtPyre_Summit_EventScript_15D6BA
+ msgbox MtPyre_Summit_Text_1B60F9, 4
+ release
+ end
+
+MtPyre_Summit_EventScript_15D64A:: @ 815D64A
+ msgbox MtPyre_Summit_Text_1B6283, 5
+ compare RESULT, 1
+ jumpeq MtPyre_Summit_EventScript_15D669
+ compare RESULT, 0
+ jumpeq MtPyre_Summit_EventScript_15D69B
+ end
+
+MtPyre_Summit_EventScript_15D669:: @ 815D669
+ setvar 0x8004, 276
+ call MtPyre_Summit_EventScript_1A067F
+ closebutton
+ move LAST_TALKED, MtPyre_Summit_Movement_1A0841
+ waitmove 0
+ pause 40
+ move LAST_TALKED, MtPyre_Summit_Movement_1A0839
+ waitmove 0
+ pause 10
+ msgbox MtPyre_Summit_Text_1B639C, 4
+ setflag 259
+ release
+ end
+
+MtPyre_Summit_EventScript_15D69B:: @ 815D69B
+ msgbox MtPyre_Summit_Text_1B62E7, 5
+ compare RESULT, 1
+ jumpeq MtPyre_Summit_EventScript_15D669
+ compare RESULT, 0
+ jumpeq MtPyre_Summit_EventScript_15D69B
+ end
+
+MtPyre_Summit_EventScript_15D6BA:: @ 815D6BA
+ msgbox MtPyre_Summit_Text_1B617B, 4
+ release
+ end
+
+MtPyre_Summit_EventScript_15D6C4:: @ 815D6C4
+ msgbox MtPyre_Summit_Text_1B63F8, 4
+ release
+ end
+
+MtPyre_Summit_EventScript_15D6CE:: @ 815D6CE
+ lockall
+ setvar 0x8008, 0
+ jump MtPyre_Summit_EventScript_15D6F2
+ end
+
+MtPyre_Summit_EventScript_15D6DA:: @ 815D6DA
+ lockall
+ setvar 0x8008, 1
+ jump MtPyre_Summit_EventScript_15D6F2
+ end
+
+MtPyre_Summit_EventScript_15D6E6:: @ 815D6E6
+ lockall
+ setvar 0x8008, 2
+ jump MtPyre_Summit_EventScript_15D6F2
+ end
+
+MtPyre_Summit_EventScript_15D6F2:: @ 815D6F2
+ move 255, MtPyre_Summit_Movement_1A0841
+ waitmove 0
+ move 2, MtPyre_Summit_Movement_1A0845
+ waitmove 0
+ pause 50
+ compare 0x8008, 0
+ callif 1, MtPyre_Summit_EventScript_15D75E
+ compare 0x8008, 1
+ callif 1, MtPyre_Summit_EventScript_15D769
+ compare 0x8008, 2
+ callif 1, MtPyre_Summit_EventScript_15D774
+ msgbox MtPyre_Summit_Text_1B6848, 4
+ closebutton
+ compare 0x8008, 0
+ callif 1, MtPyre_Summit_EventScript_15D77F
+ compare 0x8008, 1
+ callif 1, MtPyre_Summit_EventScript_15D78A
+ compare 0x8008, 2
+ callif 1, MtPyre_Summit_EventScript_15D795
+ disappear 2
+ setvar 0x40b9, 3
+ releaseall
+ end
+
+MtPyre_Summit_EventScript_15D75E:: @ 815D75E
+ move 2, MtPyre_Summit_Movement_15D7A0
+ waitmove 0
+ return
+
+MtPyre_Summit_EventScript_15D769:: @ 815D769
+ move 2, MtPyre_Summit_Movement_15D7A3
+ waitmove 0
+ return
+
+MtPyre_Summit_EventScript_15D774:: @ 815D774
+ move 2, MtPyre_Summit_Movement_15D7A4
+ waitmove 0
+ return
+
+MtPyre_Summit_EventScript_15D77F:: @ 815D77F
+ move 2, MtPyre_Summit_Movement_15D7A7
+ waitmove 0
+ return
+
+MtPyre_Summit_EventScript_15D78A:: @ 815D78A
+ move 2, MtPyre_Summit_Movement_15D7B0
+ waitmove 0
+ return
+
+MtPyre_Summit_EventScript_15D795:: @ 815D795
+ move 2, MtPyre_Summit_Movement_15D7B9
+ waitmove 0
+ return
+
+MtPyre_Summit_Movement_15D7A0:: @ 815D7A0
+ step_left
+ step_25
+ step_end
+
+MtPyre_Summit_Movement_15D7A3:: @ 815D7A3
+ step_end
+
+MtPyre_Summit_Movement_15D7A4:: @ 815D7A4
+ step_right
+ step_25
+ step_end
+
+MtPyre_Summit_Movement_15D7A7:: @ 815D7A7
+ step_right
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_end
+
+MtPyre_Summit_Movement_15D7B0:: @ 815D7B0
+ step_right
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_end
+
+MtPyre_Summit_Movement_15D7B9:: @ 815D7B9
+ step_left
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_end
+
diff --git a/data/maps/scripts/NewMauville_Entrance.s b/data/maps/scripts/NewMauville_Entrance.s
new file mode 100644
index 000000000..3683aea5b
--- /dev/null
+++ b/data/maps/scripts/NewMauville_Entrance.s
@@ -0,0 +1,51 @@
+NewMauville_Entrance_MapScripts:: @ 815E48A
+ map_script 1, NewMauville_Entrance_MapScript1_15E495
+ map_script 3, NewMauville_Entrance_MapScript1_15E4D8
+ .byte 0
+
+NewMauville_Entrance_MapScript1_15E495:: @ 815E495
+ compare 0x40ba, 0
+ callif 1, NewMauville_Entrance_EventScript_15E4A1
+ end
+
+NewMauville_Entrance_EventScript_15E4A1:: @ 815E4A1
+ setmaptile 3, 0, 788, 1
+ setmaptile 4, 0, 789, 1
+ setmaptile 5, 0, 790, 1
+ setmaptile 3, 1, 796, 1
+ setmaptile 4, 1, 797, 1
+ setmaptile 5, 1, 798, 1
+ return
+
+NewMauville_Entrance_MapScript1_15E4D8:: @ 815E4D8
+ setflag 2112
+ end
+
+NewMauville_Entrance_EventScript_15E4DC:: @ 815E4DC
+ lockall
+ move 255, NewMauville_Entrance_Movement_1A0841
+ waitmove 0
+ msgbox NewMauville_Entrance_Text_1982C0, 4
+ checkitem ITEM_BASEMENT_KEY, 1
+ compare RESULT, 0
+ jumpeq NewMauville_Entrance_EventScript_15E55D
+ msgbox NewMauville_Entrance_Text_1982D4, 5
+ compare RESULT, 0
+ jumpeq NewMauville_Entrance_EventScript_15E55D
+ msgbox NewMauville_Entrance_Text_1982EA, 4
+ setmaptile 3, 0, 707, 0
+ setmaptile 4, 0, 708, 0
+ setmaptile 5, 0, 709, 0
+ setmaptile 3, 1, 715, 1
+ setmaptile 4, 1, 716, 0
+ setmaptile 5, 1, 717, 1
+ special 142
+ playsfx 20
+ setvar 0x40ba, 1
+ releaseall
+ end
+
+NewMauville_Entrance_EventScript_15E55D:: @ 815E55D
+ releaseall
+ end
+
diff --git a/data/maps/scripts/NewMauville_Inside.s b/data/maps/scripts/NewMauville_Inside.s
new file mode 100644
index 000000000..7111ab770
--- /dev/null
+++ b/data/maps/scripts/NewMauville_Inside.s
@@ -0,0 +1,208 @@
+NewMauville_Inside_MapScripts:: @ 815E55F
+ map_script 5, NewMauville_Inside_MapScript1_15E56F
+ map_script 3, NewMauville_Inside_MapScript1_15E593
+ map_script 1, NewMauville_Inside_MapScript1_15E59E
+ .byte 0
+
+NewMauville_Inside_MapScript1_15E56F:: @ 815E56F
+ compare 0x4001, 1
+ callif 1, NewMauville_Inside_EventScript_15E5DA
+ compare 0x4002, 1
+ callif 1, NewMauville_Inside_EventScript_15E728
+ checkflag 2145
+ callif 1, NewMauville_Inside_EventScript_15E58F
+ end
+
+NewMauville_Inside_EventScript_15E58F:: @ 815E58F
+ disappear LAST_TALKED
+ return
+
+NewMauville_Inside_MapScript1_15E593:: @ 815E593
+ setvar 0x4001, 0
+ setvar 0x4002, 0
+ end
+
+NewMauville_Inside_MapScript1_15E59E:: @ 815E59E
+ compare 0x40ba, 2
+ callif 1, NewMauville_Inside_EventScript_15E88B
+ end
+
+NewMauville_Inside_EventScript_15E5AA:: @ 815E5AA
+ lockall
+ setvar 0x4001, 1
+ setvar 0x4002, 0
+ playsfx 21
+ call NewMauville_Inside_EventScript_15E5DA
+ special 142
+ releaseall
+ end
+
+NewMauville_Inside_EventScript_15E5C2:: @ 815E5C2
+ lockall
+ setvar 0x4001, 0
+ setvar 0x4002, 1
+ playsfx 21
+ call NewMauville_Inside_EventScript_15E728
+ special 142
+ releaseall
+ end
+
+NewMauville_Inside_EventScript_15E5DA:: @ 815E5DA
+ setmaptile 23, 34, 617, 1
+ setmaptile 23, 35, 625, 1
+ setmaptile 23, 36, 621, 0
+ setmaptile 23, 37, 641, 0
+ setmaptile 10, 16, 617, 1
+ setmaptile 10, 17, 625, 1
+ setmaptile 10, 18, 621, 0
+ setmaptile 10, 19, 641, 0
+ setmaptile 10, 0, 617, 1
+ setmaptile 10, 1, 625, 1
+ setmaptile 10, 2, 621, 0
+ setmaptile 10, 3, 641, 0
+ setmaptile 37, 33, 694, 1
+ setmaptile 37, 34, 702, 1
+ setmaptile 37, 35, 710, 1
+ setmaptile 37, 36, 718, 1
+ setmaptile 28, 22, 694, 1
+ setmaptile 28, 23, 702, 1
+ setmaptile 28, 24, 710, 1
+ setmaptile 28, 25, 718, 1
+ setmaptile 10, 24, 694, 1
+ setmaptile 10, 25, 702, 1
+ setmaptile 10, 26, 710, 1
+ setmaptile 10, 27, 718, 1
+ setmaptile 21, 2, 694, 1
+ setmaptile 21, 3, 702, 1
+ setmaptile 21, 4, 710, 1
+ setmaptile 21, 5, 718, 1
+ setmaptile 6, 11, 591, 0
+ setmaptile 13, 10, 591, 0
+ setmaptile 16, 22, 591, 0
+ setmaptile 4, 26, 591, 0
+ setmaptile 30, 38, 591, 0
+ setmaptile 2, 11, 558, 0
+ setmaptile 17, 10, 558, 0
+ setmaptile 25, 18, 558, 0
+ setmaptile 18, 36, 558, 0
+ return
+
+NewMauville_Inside_EventScript_15E728:: @ 815E728
+ setmaptile 23, 34, 695, 1
+ setmaptile 23, 35, 703, 1
+ setmaptile 23, 36, 711, 1
+ setmaptile 23, 37, 719, 1
+ setmaptile 10, 16, 695, 1
+ setmaptile 10, 17, 703, 1
+ setmaptile 10, 18, 711, 1
+ setmaptile 10, 19, 719, 1
+ setmaptile 10, 0, 695, 1
+ setmaptile 10, 1, 703, 1
+ setmaptile 10, 2, 711, 1
+ setmaptile 10, 3, 719, 1
+ setmaptile 37, 33, 617, 1
+ setmaptile 37, 34, 625, 1
+ setmaptile 37, 35, 621, 0
+ setmaptile 37, 36, 641, 0
+ setmaptile 28, 22, 617, 1
+ setmaptile 28, 23, 625, 1
+ setmaptile 28, 24, 621, 0
+ setmaptile 28, 25, 641, 0
+ setmaptile 10, 24, 617, 1
+ setmaptile 10, 25, 625, 1
+ setmaptile 10, 26, 621, 0
+ setmaptile 10, 27, 641, 0
+ setmaptile 21, 2, 617, 1
+ setmaptile 21, 3, 625, 1
+ setmaptile 21, 4, 621, 0
+ setmaptile 21, 5, 641, 0
+ setmaptile 2, 11, 591, 0
+ setmaptile 17, 10, 591, 0
+ setmaptile 25, 18, 591, 0
+ setmaptile 18, 36, 591, 0
+ setmaptile 6, 11, 566, 0
+ setmaptile 13, 10, 566, 0
+ setmaptile 16, 22, 566, 0
+ setmaptile 4, 26, 566, 0
+ setmaptile 30, 38, 566, 0
+ return
+
+NewMauville_Inside_EventScript_15E876:: @ 815E876
+ lockall
+ msgbox NewMauville_Inside_Text_1983B1, 4
+ call NewMauville_Inside_EventScript_15E88B
+ setvar 0x40ba, 2
+ releaseall
+ end
+
+NewMauville_Inside_EventScript_15E88B:: @ 815E88B
+ setmaptile 33, 6, 591, 0
+ setmaptile 32, 2, 752, 1
+ setmaptile 33, 2, 753, 1
+ setmaptile 34, 2, 754, 1
+ setmaptile 35, 2, 755, 1
+ setmaptile 32, 3, 756, 1
+ setmaptile 33, 3, 757, 1
+ setmaptile 34, 3, 758, 1
+ setmaptile 35, 3, 759, 1
+ special 142
+ return
+
+NewMauville_Inside_EventScript_15E8E0:: @ 815E8E0
+ lockall
+ compare 0x40ba, 2
+ jumpeq NewMauville_Inside_EventScript_15E8F6
+ msgbox NewMauville_Inside_Text_198315, 4
+ releaseall
+ end
+
+NewMauville_Inside_EventScript_15E8F6:: @ 815E8F6
+ msgbox NewMauville_Inside_Text_198395, 4
+ releaseall
+ end
+
+NewMauville_Inside_EventScript_15E900:: @ 815E900
+ lock
+ faceplayer
+ setwildbattle SPECIES_VOLTORB, 25, ITEM_NONE
+ checksound
+ pokecry SPECIES_VOLTORB, 2
+ pause 40
+ waitpokecry
+ setflag 974
+ setflag 2145
+ dowildbattle
+ clearflag 2145
+ release
+ end
+
+NewMauville_Inside_EventScript_15E91E:: @ 815E91E
+ lock
+ faceplayer
+ setwildbattle SPECIES_VOLTORB, 25, ITEM_NONE
+ checksound
+ pokecry SPECIES_VOLTORB, 2
+ pause 40
+ waitpokecry
+ setflag 975
+ setflag 2145
+ dowildbattle
+ clearflag 2145
+ release
+ end
+
+NewMauville_Inside_EventScript_15E93C:: @ 815E93C
+ lock
+ faceplayer
+ setwildbattle SPECIES_VOLTORB, 25, ITEM_NONE
+ checksound
+ pokecry SPECIES_VOLTORB, 2
+ pause 40
+ waitpokecry
+ setflag 976
+ setflag 2145
+ dowildbattle
+ clearflag 2145
+ release
+ end
+
diff --git a/data/maps/scripts/OldaleTown.s b/data/maps/scripts/OldaleTown.s
new file mode 100644
index 000000000..4595cd5c0
--- /dev/null
+++ b/data/maps/scripts/OldaleTown.s
@@ -0,0 +1,299 @@
+OldaleTown_MapScripts:: @ 814DD62
+ map_script 3, OldaleTown_MapScript1_14DD68
+ .byte 0
+
+OldaleTown_MapScript1_14DD68:: @ 814DD68
+ call OldaleTown_EventScript_1A014E
+ setflag 2064
+ checkflag 116
+ callif 0, OldaleTown_EventScript_14DD92
+ checkflag 132
+ callif 0, OldaleTown_EventScript_14DD9E
+ checkflag 116
+ callif 1, OldaleTown_EventScript_14DD8C
+ end
+
+OldaleTown_EventScript_14DD8C:: @ 814DD8C
+ setvar 0x4051, 1
+ return
+
+OldaleTown_EventScript_14DD92:: @ 814DD92
+ movespriteperm 3, 1, 11
+ spritebehave 3, 9
+ return
+
+OldaleTown_EventScript_14DD9E:: @ 814DD9E
+ movespriteperm 2, 13, 14
+ spritebehave 2, 8
+ return
+
+OldaleTown_EventScript_14DDAA:: @ 814DDAA
+ msgbox OldaleTown_Text_16B20E, 3
+ end
+
+OldaleTown_EventScript_14DDB3:: @ 814DDB3
+ msgbox OldaleTown_Text_16AEC0, 2
+ end
+
+OldaleTown_EventScript_14DDBC:: @ 814DDBC
+ lock
+ faceplayer
+ checkflag 132
+ jumpeq OldaleTown_EventScript_14DE79
+ checkflag 1
+ jumpeq OldaleTown_EventScript_14DE79
+ setflag 1
+ playmusic 420, 0
+ msgbox OldaleTown_Text_16AEF2, 4
+ closebutton
+ switch FACING
+ case 1, OldaleTown_EventScript_14DE07
+ case 2, OldaleTown_EventScript_14DE1E
+ case 4, OldaleTown_EventScript_14DE35
+ end
+
+OldaleTown_EventScript_14DE07:: @ 814DE07
+ move 2, OldaleTown_Movement_14DE97
+ move 255, OldaleTown_Movement_14DEC1
+ waitmove 0
+ jump OldaleTown_EventScript_14DE4C
+ end
+
+OldaleTown_EventScript_14DE1E:: @ 814DE1E
+ move 2, OldaleTown_Movement_14DEA2
+ move 255, OldaleTown_Movement_14DECB
+ waitmove 0
+ jump OldaleTown_EventScript_14DE4C
+ end
+
+OldaleTown_EventScript_14DE35:: @ 814DE35
+ move 255, OldaleTown_Movement_14DEB9
+ move 2, OldaleTown_Movement_14DE8E
+ waitmove 0
+ jump OldaleTown_EventScript_14DE4C
+ end
+
+OldaleTown_EventScript_14DE4C:: @ 814DE4C
+ msgbox OldaleTown_Text_16AF2F, 4
+ giveitem ITEM_POTION
+ compare RESULT, 0
+ jumpeq OldaleTown_EventScript_14DE83
+ msgbox OldaleTown_Text_16AFE1, 4
+ setflag 132
+ fadedefault
+ release
+ end
+
+OldaleTown_EventScript_14DE79:: @ 814DE79
+ msgbox OldaleTown_Text_16AFE1, 4
+ release
+ end
+
+OldaleTown_EventScript_14DE83:: @ 814DE83
+ msgbox OldaleTown_Text_1A0CC2, 4
+ fadedefault
+ release
+ end
+
+OldaleTown_Movement_14DE8E:: @ 814DE8E
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_25
+ step_end
+
+OldaleTown_Movement_14DE97:: @ 814DE97
+ step_left
+ step_up
+ step_up
+ step_right
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_25
+ step_end
+
+OldaleTown_Movement_14DEA2:: @ 814DEA2
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_25
+ step_end
+
+ .incbin "baserom.gba", 0x14deab, 0xe
+
+OldaleTown_Movement_14DEB9:: @ 814DEB9
+ step_right
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_end
+
+OldaleTown_Movement_14DEC1:: @ 814DEC1
+ step_14
+ step_14
+ step_14
+ step_14
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_end
+
+OldaleTown_Movement_14DECB:: @ 814DECB
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_end
+
+ .incbin "baserom.gba", 0x14ded3, 0xc
+
+OldaleTown_EventScript_14DEDF:: @ 814DEDF
+ lock
+ faceplayer
+ checkflag 116
+ jumpeq OldaleTown_EventScript_14DF26
+ msgbox OldaleTown_Text_16B0CC, 4
+ closebutton
+ move 3, OldaleTown_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+OldaleTown_EventScript_14DEFF:: @ 814DEFF
+ lockall
+ move 255, OldaleTown_Movement_14DFEC
+ move 3, OldaleTown_Movement_14DFEF
+ waitmove 0
+ msgbox OldaleTown_Text_16B045, 4
+ closebutton
+ move 3, OldaleTown_Movement_14DFF5
+ waitmove 0
+ releaseall
+ end
+
+OldaleTown_EventScript_14DF26:: @ 814DF26
+ msgbox OldaleTown_Text_16B12A, 4
+ release
+ end
+
+OldaleTown_EventScript_14DF30:: @ 814DF30
+ lockall
+ move 4, OldaleTown_Movement_1A0839
+ waitmove 0
+ jump OldaleTown_EventScript_14DF92
+ end
+
+OldaleTown_EventScript_14DF41:: @ 814DF41
+ lockall
+ move 4, OldaleTown_Movement_14DFDE
+ waitmove 0
+ move 255, OldaleTown_Movement_1A0843
+ waitmove 0
+ jump OldaleTown_EventScript_14DF92
+ end
+
+OldaleTown_EventScript_14DF5C:: @ 814DF5C
+ lockall
+ move 4, OldaleTown_Movement_14DFE1
+ waitmove 0
+ move 255, OldaleTown_Movement_1A0843
+ waitmove 0
+ jump OldaleTown_EventScript_14DF92
+ end
+
+OldaleTown_EventScript_14DF77:: @ 814DF77
+ lockall
+ move 4, OldaleTown_Movement_14DFE3
+ waitmove 0
+ move 255, OldaleTown_Movement_1A0843
+ waitmove 0
+ jump OldaleTown_EventScript_14DF92
+ end
+
+OldaleTown_EventScript_14DF92:: @ 814DF92
+ checkgender
+ compare RESULT, 0
+ jumpeq OldaleTown_EventScript_14DFAA
+ compare RESULT, 1
+ jumpeq OldaleTown_EventScript_14DFB8
+ end
+
+OldaleTown_EventScript_14DFAA:: @ 814DFAA
+ msgbox OldaleTown_Text_16B196, 4
+ jump OldaleTown_EventScript_14DFC6
+ end
+
+OldaleTown_EventScript_14DFB8:: @ 814DFB8
+ msgbox OldaleTown_Text_16B1BE, 4
+ jump OldaleTown_EventScript_14DFC6
+ end
+
+OldaleTown_EventScript_14DFC6:: @ 814DFC6
+ closebutton
+ move 4, OldaleTown_Movement_14DFE5
+ waitmove 0
+ disappear 4
+ setvar 0x40c7, 2
+ setflag 979
+ releaseall
+ end
+
+OldaleTown_Movement_14DFDE:: @ 814DFDE
+ step_left
+ step_left
+ step_end
+
+OldaleTown_Movement_14DFE1:: @ 814DFE1
+ step_left
+ step_end
+
+OldaleTown_Movement_14DFE3:: @ 814DFE3
+ step_02
+ step_end
+
+OldaleTown_Movement_14DFE5:: @ 814DFE5
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_end
+
+OldaleTown_Movement_14DFEC:: @ 814DFEC
+ step_13
+ step_right
+ step_end
+
+OldaleTown_Movement_14DFEF:: @ 814DFEF
+ step_16
+ step_27
+ step_40
+ step_right
+ step_41
+ step_end
+
+OldaleTown_Movement_14DFF5:: @ 814DFF5
+ step_down
+ step_left
+ step_end
+
diff --git a/data/maps/scripts/OldaleTown_House1.s b/data/maps/scripts/OldaleTown_House1.s
new file mode 100644
index 000000000..033980c01
--- /dev/null
+++ b/data/maps/scripts/OldaleTown_House1.s
@@ -0,0 +1,7 @@
+OldaleTown_House1_MapScripts:: @ 8152EEB
+ .byte 0
+
+OldaleTown_House1_EventScript_152EEC:: @ 8152EEC
+ msgbox OldaleTown_House1_Text_17476D, 2
+ end
+
diff --git a/data/maps/scripts/OldaleTown_House2.s b/data/maps/scripts/OldaleTown_House2.s
new file mode 100644
index 000000000..3cdcc49db
--- /dev/null
+++ b/data/maps/scripts/OldaleTown_House2.s
@@ -0,0 +1,11 @@
+OldaleTown_House2_MapScripts:: @ 8152EF5
+ .byte 0
+
+OldaleTown_House2_EventScript_152EF6:: @ 8152EF6
+ msgbox OldaleTown_House2_Text_174838, 2
+ end
+
+OldaleTown_House2_EventScript_152EFF:: @ 8152EFF
+ msgbox OldaleTown_House2_Text_17487B, 2
+ end
+
diff --git a/data/maps/scripts/OldaleTown_Mart.s b/data/maps/scripts/OldaleTown_Mart.s
new file mode 100644
index 000000000..d4c76f516
--- /dev/null
+++ b/data/maps/scripts/OldaleTown_Mart.s
@@ -0,0 +1,62 @@
+OldaleTown_Mart_MapScripts:: @ 8152F78
+ .byte 0
+
+OldaleTown_Mart_EventScript_152F79:: @ 8152F79
+ lock
+ faceplayer
+ message OldaleTown_Mart_Text_1A0BE4
+ waittext
+ checkflag 116
+ jumpeq OldaleTown_Mart_EventScript_152FA8
+ pokemart OldaleTown_Mart_Pokemart_152F9C
+ msgbox OldaleTown_Mart_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x152f99, 0x3
+
+OldaleTown_Mart_Pokemart_152F9C:: @ 8152F9C
+ .2byte ITEM_POTION
+ .2byte ITEM_ANTIDOTE
+ .2byte ITEM_PARALYZE_HEAL
+ .2byte ITEM_AWAKENING
+ .2byte ITEM_NONE
+ release
+ end
+
+OldaleTown_Mart_EventScript_152FA8:: @ 8152FA8
+ pokemart OldaleTown_Mart_Pokemart_152FB8
+ msgbox OldaleTown_Mart_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x152fb7, 0x1
+
+OldaleTown_Mart_Pokemart_152FB8:: @ 8152FB8
+ .2byte ITEM_POKE_BALL
+ .2byte ITEM_POTION
+ .2byte ITEM_ANTIDOTE
+ .2byte ITEM_PARALYZE_HEAL
+ .2byte ITEM_AWAKENING
+ .2byte ITEM_NONE
+ release
+ end
+
+OldaleTown_Mart_EventScript_152FC6:: @ 8152FC6
+ lock
+ faceplayer
+ checkflag 116
+ jumpeq OldaleTown_Mart_EventScript_152FDB
+ msgbox OldaleTown_Mart_Text_174A8A, 4
+ release
+ end
+
+OldaleTown_Mart_EventScript_152FDB:: @ 8152FDB
+ msgbox OldaleTown_Mart_Text_174ACB, 4
+ release
+ end
+
+OldaleTown_Mart_EventScript_152FE5:: @ 8152FE5
+ msgbox OldaleTown_Mart_Text_174B10, 2
+ end
+
diff --git a/data/maps/scripts/OldaleTown_PokemonCenter_1F.s b/data/maps/scripts/OldaleTown_PokemonCenter_1F.s
new file mode 100644
index 000000000..c9abc12a7
--- /dev/null
+++ b/data/maps/scripts/OldaleTown_PokemonCenter_1F.s
@@ -0,0 +1,39 @@
+OldaleTown_PokemonCenter_1F_MapScripts:: @ 8152F08
+ map_script 3, OldaleTown_PokemonCenter_1F_MapScript1_152F0E
+ .byte 0
+
+OldaleTown_PokemonCenter_1F_MapScript1_152F0E:: @ 8152F0E
+ sethealplace 14
+ call OldaleTown_PokemonCenter_1F_EventScript_19FD1B
+ end
+
+OldaleTown_PokemonCenter_1F_EventScript_152F17:: @ 8152F17
+ setvar 0x800b, 1
+ call OldaleTown_PokemonCenter_1F_EventScript_19FD5B
+ waittext
+ waitbutton
+ release
+ end
+
+OldaleTown_PokemonCenter_1F_EventScript_152F25:: @ 8152F25
+ msgbox OldaleTown_PokemonCenter_1F_Text_1748D1, 2
+ end
+
+OldaleTown_PokemonCenter_1F_EventScript_152F2E:: @ 8152F2E
+ msgbox OldaleTown_PokemonCenter_1F_Text_174945, 2
+ end
+
+OldaleTown_PokemonCenter_1F_EventScript_152F37:: @ 8152F37
+ lock
+ faceplayer
+ checkflag 2049
+ jumpeq OldaleTown_PokemonCenter_1F_EventScript_152F4C
+ msgbox OldaleTown_PokemonCenter_1F_Text_1749C0, 4
+ release
+ end
+
+OldaleTown_PokemonCenter_1F_EventScript_152F4C:: @ 8152F4C
+ msgbox OldaleTown_PokemonCenter_1F_Text_174A2E, 4
+ release
+ end
+
diff --git a/data/maps/scripts/OldaleTown_PokemonCenter_2F.s b/data/maps/scripts/OldaleTown_PokemonCenter_2F.s
new file mode 100644
index 000000000..bab0f21af
--- /dev/null
+++ b/data/maps/scripts/OldaleTown_PokemonCenter_2F.s
@@ -0,0 +1,18 @@
+OldaleTown_PokemonCenter_2F_MapScripts:: @ 8152F56
+ map_script 2, OldaleTown_PokemonCenter_2F_MapScript2_1A3D88
+ map_script 4, OldaleTown_PokemonCenter_2F_MapScript2_1A3D03
+ map_script 1, OldaleTown_PokemonCenter_2F_MapScript1_1A3D32
+ .byte 0
+
+OldaleTown_PokemonCenter_2F_EventScript_152F66:: @ 8152F66
+ call OldaleTown_PokemonCenter_2F_EventScript_1A3EA6
+ end
+
+OldaleTown_PokemonCenter_2F_EventScript_152F6C:: @ 8152F6C
+ call OldaleTown_PokemonCenter_2F_EventScript_1A40CC
+ end
+
+OldaleTown_PokemonCenter_2F_EventScript_152F72:: @ 8152F72
+ call OldaleTown_PokemonCenter_2F_EventScript_1A41FB
+ end
+
diff --git a/data/maps/scripts/PacifidlogTown.s b/data/maps/scripts/PacifidlogTown.s
new file mode 100644
index 000000000..f1c6ed462
--- /dev/null
+++ b/data/maps/scripts/PacifidlogTown.s
@@ -0,0 +1,29 @@
+PacifidlogTown_MapScripts:: @ 814E8EE
+ map_script 3, PacifidlogTown_MapScript1_14E8F9
+ map_script 5, PacifidlogTown_MapScript1_14E8FD
+ .byte 0
+
+PacifidlogTown_MapScript1_14E8F9:: @ 814E8F9
+ setflag 2069
+ end
+
+PacifidlogTown_MapScript1_14E8FD:: @ 814E8FD
+ tileeffect 3
+ end
+
+PacifidlogTown_EventScript_14E900:: @ 814E900
+ msgbox PacifidlogTown_Text_16D04A, 2
+ end
+
+PacifidlogTown_EventScript_14E909:: @ 814E909
+ msgbox PacifidlogTown_Text_16CFC5, 2
+ end
+
+PacifidlogTown_EventScript_14E912:: @ 814E912
+ msgbox PacifidlogTown_Text_16D08A, 2
+ end
+
+PacifidlogTown_EventScript_14E91B:: @ 814E91B
+ msgbox PacifidlogTown_Text_16D0CE, 3
+ end
+
diff --git a/data/maps/scripts/PacifidlogTown_House1.s b/data/maps/scripts/PacifidlogTown_House1.s
new file mode 100644
index 000000000..e7ad13f31
--- /dev/null
+++ b/data/maps/scripts/PacifidlogTown_House1.s
@@ -0,0 +1,11 @@
+PacifidlogTown_House1_MapScripts:: @ 8154154
+ .byte 0
+
+PacifidlogTown_House1_EventScript_154155:: @ 8154155
+ msgbox PacifidlogTown_House1_Text_178F9F, 2
+ end
+
+PacifidlogTown_House1_EventScript_15415E:: @ 815415E
+ msgbox PacifidlogTown_House1_Text_17906A, 2
+ end
+
diff --git a/data/maps/scripts/PacifidlogTown_House2.s b/data/maps/scripts/PacifidlogTown_House2.s
new file mode 100644
index 000000000..62821dd11
--- /dev/null
+++ b/data/maps/scripts/PacifidlogTown_House2.s
@@ -0,0 +1,101 @@
+PacifidlogTown_House2_MapScripts:: @ 8154167
+ .byte 0
+
+PacifidlogTown_House2_EventScript_154168:: @ 8154168
+ lock
+ faceplayer
+ checkdailyflags
+ call PacifidlogTown_House2_EventScript_1541B4
+ checkflag 299
+ jumpeq PacifidlogTown_House2_EventScript_154254
+ checkflag 300
+ callif 1, PacifidlogTown_House2_EventScript_1541CE
+ checkflag 300
+ callif 0, PacifidlogTown_House2_EventScript_1541D7
+ setflag 300
+ specialval RESULT, 230
+ compare RESULT, 4
+ jumpif 4, PacifidlogTown_House2_EventScript_1541EC
+ specialval RESULT, 230
+ compare RESULT, 2
+ jumpif 4, PacifidlogTown_House2_EventScript_15421B
+ jump PacifidlogTown_House2_EventScript_154225
+ end
+
+PacifidlogTown_House2_EventScript_1541B4:: @ 81541B4
+ checkflag 299
+ jumpif 0, PacifidlogTown_House2_EventScript_1A14DC
+ specialval RESULT, 334
+ compare RESULT, 0
+ callif 1, PacifidlogTown_House2_EventScript_1541E8
+ return
+
+PacifidlogTown_House2_EventScript_1541CE:: @ 81541CE
+ msgbox PacifidlogTown_House2_Text_179155, 4
+ return
+
+PacifidlogTown_House2_EventScript_1541D7:: @ 81541D7
+ msgbox PacifidlogTown_House2_Text_1790C1, 4
+ msgbox PacifidlogTown_House2_Text_179155, 4
+ return
+
+PacifidlogTown_House2_EventScript_1541E8:: @ 81541E8
+ clearflag 299
+ return
+
+PacifidlogTown_House2_EventScript_1541EC:: @ 81541EC
+ msgbox PacifidlogTown_House2_Text_179169, 4
+ giveitem ITEM_TM27
+ compare RESULT, 0
+ jumpeq PacifidlogTown_House2_EventScript_1A029B
+ setflag 299
+ special 333
+ msgbox PacifidlogTown_House2_Text_179283, 4
+ release
+ end
+
+PacifidlogTown_House2_EventScript_15421B:: @ 815421B
+ msgbox PacifidlogTown_House2_Text_1791CA, 4
+ release
+ end
+
+PacifidlogTown_House2_EventScript_154225:: @ 8154225
+ msgbox PacifidlogTown_House2_Text_17922D, 4
+ giveitem ITEM_TM21
+ compare RESULT, 0
+ jumpeq PacifidlogTown_House2_EventScript_1A029B
+ setflag 299
+ special 333
+ msgbox PacifidlogTown_House2_Text_179283, 4
+ release
+ end
+
+PacifidlogTown_House2_EventScript_154254:: @ 8154254
+ specialval RESULT, 334
+ buffernum 0, 32781
+ msgbox PacifidlogTown_House2_Text_1792F2, 4
+ release
+ end
+
+PacifidlogTown_House2_EventScript_154267:: @ 8154267
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_AZURILL, 0
+ msgbox PacifidlogTown_House2_Text_17938B, 4
+ waitpokecry
+ msgbox PacifidlogTown_House2_Text_17939B, 4
+ release
+ end
+
+PacifidlogTown_House2_EventScript_154282:: @ 8154282
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_AZURILL, 2
+ msgbox PacifidlogTown_House2_Text_1793CC, 4
+ waitpokecry
+ msgbox PacifidlogTown_House2_Text_1793DD, 4
+ release
+ end
+
diff --git a/data/maps/scripts/PacifidlogTown_House3.s b/data/maps/scripts/PacifidlogTown_House3.s
new file mode 100644
index 000000000..4dfc1fa92
--- /dev/null
+++ b/data/maps/scripts/PacifidlogTown_House3.s
@@ -0,0 +1,56 @@
+PacifidlogTown_House3_MapScripts:: @ 815429D
+ .byte 0
+
+PacifidlogTown_House3_EventScript_15429E:: @ 815429E
+ lock
+ faceplayer
+ checkflag 154
+ jumpeq PacifidlogTown_House3_EventScript_154338
+ setvar 0x8008, 2
+ copyvar 0x8004, 0x8008
+ specialval RESULT, 252
+ copyvar 0x8009, RESULT
+ msgbox PacifidlogTown_House3_Text_17940E, 5
+ compare RESULT, 0
+ jumpeq PacifidlogTown_House3_EventScript_154320
+ special 159
+ waitstate
+ copyvar 0x800a, 0x8004
+ compare 0x8004, 255
+ jumpeq PacifidlogTown_House3_EventScript_154320
+ copyvar 0x8005, 0x800a
+ specialval RESULT, 255
+ copyvar 0x800b, RESULT
+ comparevars RESULT, 0x8009
+ jumpif 5, PacifidlogTown_House3_EventScript_15432A
+ copyvar 0x8004, 0x8008
+ copyvar 0x8005, 0x800a
+ special 253
+ special 254
+ waitstate
+ bufferpoke 0, 0x8009
+ msgbox PacifidlogTown_House3_Text_1794C4, 4
+ setflag 154
+ release
+ end
+
+PacifidlogTown_House3_EventScript_154320:: @ 8154320
+ msgbox PacifidlogTown_House3_Text_1794ED, 4
+ release
+ end
+
+PacifidlogTown_House3_EventScript_15432A:: @ 815432A
+ bufferpoke 0, 0x8009
+ msgbox PacifidlogTown_House3_Text_1794DF, 4
+ release
+ end
+
+PacifidlogTown_House3_EventScript_154338:: @ 8154338
+ msgbox PacifidlogTown_House3_Text_17950A, 4
+ release
+ end
+
+PacifidlogTown_House3_EventScript_154342:: @ 8154342
+ msgbox PacifidlogTown_House3_Text_179541, 2
+ end
+
diff --git a/data/maps/scripts/PacifidlogTown_House4.s b/data/maps/scripts/PacifidlogTown_House4.s
new file mode 100644
index 000000000..1df583033
--- /dev/null
+++ b/data/maps/scripts/PacifidlogTown_House4.s
@@ -0,0 +1,31 @@
+PacifidlogTown_House4_MapScripts:: @ 815434B
+ .byte 0
+
+PacifidlogTown_House4_EventScript_15434C:: @ 815434C
+ msgbox PacifidlogTown_House4_Text_17961F, 2
+ end
+
+PacifidlogTown_House4_EventScript_154355:: @ 8154355
+ msgbox PacifidlogTown_House4_Text_17959B, 2
+ end
+
+PacifidlogTown_House4_EventScript_15435E:: @ 815435E
+ lock
+ faceplayer
+ msgbox PacifidlogTown_House4_Text_17963D, 5
+ compare RESULT, 1
+ jumpeq PacifidlogTown_House4_EventScript_15437F
+ compare RESULT, 0
+ jumpeq PacifidlogTown_House4_EventScript_154389
+ end
+
+PacifidlogTown_House4_EventScript_15437F:: @ 815437F
+ msgbox PacifidlogTown_House4_Text_179656, 4
+ release
+ end
+
+PacifidlogTown_House4_EventScript_154389:: @ 8154389
+ msgbox PacifidlogTown_House4_Text_17968C, 4
+ release
+ end
+
diff --git a/data/maps/scripts/PacifidlogTown_House5.s b/data/maps/scripts/PacifidlogTown_House5.s
new file mode 100644
index 000000000..0aace4265
--- /dev/null
+++ b/data/maps/scripts/PacifidlogTown_House5.s
@@ -0,0 +1,22 @@
+PacifidlogTown_House5_MapScripts:: @ 8154393
+ .byte 0
+
+PacifidlogTown_House5_EventScript_154394:: @ 8154394
+ lock
+ faceplayer
+ specialval RESULT, 209
+ compare RESULT, 1
+ jumpeq PacifidlogTown_House5_EventScript_1543B0
+ msgbox PacifidlogTown_House5_Text_179718, 4
+ release
+ end
+
+PacifidlogTown_House5_EventScript_1543B0:: @ 81543B0
+ msgbox PacifidlogTown_House5_Text_17973B, 4
+ release
+ end
+
+PacifidlogTown_House5_EventScript_1543BA:: @ 81543BA
+ msgbox PacifidlogTown_House5_Text_179765, 2
+ end
+
diff --git a/data/maps/scripts/PacifidlogTown_PokemonCenter_1F.s b/data/maps/scripts/PacifidlogTown_PokemonCenter_1F.s
new file mode 100644
index 000000000..6fa955c34
--- /dev/null
+++ b/data/maps/scripts/PacifidlogTown_PokemonCenter_1F.s
@@ -0,0 +1,22 @@
+PacifidlogTown_PokemonCenter_1F_MapScripts:: @ 81540FF
+ map_script 3, PacifidlogTown_PokemonCenter_1F_MapScript1_154105
+ .byte 0
+
+PacifidlogTown_PokemonCenter_1F_MapScript1_154105:: @ 8154105
+ sethealplace 19
+ end
+
+ .incbin "baserom.gba", 0x154109, 0xe
+
+PacifidlogTown_PokemonCenter_1F_EventScript_154117:: @ 8154117
+ msgbox PacifidlogTown_PokemonCenter_1F_Text_178E47, 2
+ end
+
+PacifidlogTown_PokemonCenter_1F_EventScript_154120:: @ 8154120
+ msgbox PacifidlogTown_PokemonCenter_1F_Text_178E79, 2
+ end
+
+PacifidlogTown_PokemonCenter_1F_EventScript_154129:: @ 8154129
+ msgbox PacifidlogTown_PokemonCenter_1F_Text_178ED9, 2
+ end
+
diff --git a/data/maps/scripts/PacifidlogTown_PokemonCenter_2F.s b/data/maps/scripts/PacifidlogTown_PokemonCenter_2F.s
new file mode 100644
index 000000000..026119917
--- /dev/null
+++ b/data/maps/scripts/PacifidlogTown_PokemonCenter_2F.s
@@ -0,0 +1,12 @@
+PacifidlogTown_PokemonCenter_2F_MapScripts:: @ 8154132
+ map_script 2, PacifidlogTown_PokemonCenter_2F_MapScript2_1A3D88
+ map_script 4, PacifidlogTown_PokemonCenter_2F_MapScript2_1A3D03
+ map_script 1, PacifidlogTown_PokemonCenter_2F_MapScript1_1A3D32
+ .byte 0
+
+ .incbin "baserom.gba", 0x154142, 0xc
+
+PacifidlogTown_PokemonCenter_2F_EventScript_15414E:: @ 815414E
+ call PacifidlogTown_PokemonCenter_2F_EventScript_1A41FB
+ end
+
diff --git a/data/maps/scripts/PetalburgCity.s b/data/maps/scripts/PetalburgCity.s
new file mode 100644
index 000000000..d82359af1
--- /dev/null
+++ b/data/maps/scripts/PetalburgCity.s
@@ -0,0 +1,425 @@
+PetalburgCity_MapScripts:: @ 814B70C
+ map_script 3, PetalburgCity_MapScript1_14B717
+ map_script 2, PetalburgCity_MapScript2_14B73D
+ .byte 0
+
+PetalburgCity_MapScript1_14B717:: @ 814B717
+ setflag 2070
+ compare 0x4057, 0
+ callif 1, PetalburgCity_EventScript_14B731
+ compare 0x4057, 2
+ callif 1, PetalburgCity_EventScript_14B739
+ end
+
+PetalburgCity_EventScript_14B731:: @ 814B731
+ movespriteperm 9, 5, 11
+ return
+
+PetalburgCity_EventScript_14B739:: @ 814B739
+ playmusicbattle 420
+ return
+
+PetalburgCity_MapScript2_14B73D:: @ 814B73D
+ map_script_2 0x4057, 2, PetalburgCity_EventScript_14B747
+ .2byte 0
+
+PetalburgCity_EventScript_14B747:: @ 814B747
+ lockall
+ setflag 0x4000
+ special 39
+ special 301
+ move 2, PetalburgCity_Movement_14B7ED
+ move 255, PetalburgCity_Movement_14B7CC
+ waitmove 0
+ msgbox PetalburgCity_Text_16D361, 4
+ special 157
+ waitstate
+ msgbox PetalburgCity_Text_16D3DE, 4
+ movecoords 2, PetalburgCity_Movement_1A083F, 0, 0
+ waitmovexy 0, 0, 2
+ msgbox PetalburgCity_Text_16D408, 4
+ closebutton
+ clearflag 0x4000
+ setvar 0x4057, 3
+ fadedefault
+ clearflag 0x4001
+ special 40
+ setvar 0x4085, 1
+ warp PetalburgCity_Gym, 255, 4, 108
+ waitstate
+ releaseall
+ end
+
+PetalburgCity_EventScript_14B7AC:: @ 814B7AC
+ lock
+ faceplayer
+ msgbox PetalburgCity_Text_164490, 4
+ closebutton
+ move 3, PetalburgCity_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+PetalburgCity_EventScript_14B7C3:: @ 814B7C3
+ msgbox PetalburgCity_Text_16433E, 2
+ end
+
+PetalburgCity_Movement_14B7CC:: @ 814B7CC
+ step_13
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_up
+ step_up
+ step_28
+ step_end
+
+PetalburgCity_Movement_14B7ED:: @ 814B7ED
+ step_13
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_up
+ step_up
+ step_right
+ step_14
+ step_26
+ step_14
+ step_14
+ step_28
+ step_end
+
+PetalburgCity_EventScript_14B812:: @ 814B812
+ msgbox PetalburgCity_Text_1645BB, 3
+ end
+
+PetalburgCity_EventScript_14B81B:: @ 814B81B
+ msgbox PetalburgCity_Text_164602, 3
+ end
+
+PetalburgCity_EventScript_14B824:: @ 814B824
+ msgbox PetalburgCity_Text_16453F, 2
+ end
+
+PetalburgCity_EventScript_14B82D:: @ 814B82D
+ msgbox PetalburgCity_Text_164634, 3
+ end
+
+PetalburgCity_EventScript_14B836:: @ 814B836
+ lockall
+ setvar 0x8008, 0
+ jump PetalburgCity_EventScript_14B866
+ end
+
+PetalburgCity_EventScript_14B842:: @ 814B842
+ lockall
+ setvar 0x8008, 1
+ jump PetalburgCity_EventScript_14B866
+ end
+
+PetalburgCity_EventScript_14B84E:: @ 814B84E
+ lockall
+ setvar 0x8008, 2
+ jump PetalburgCity_EventScript_14B866
+ end
+
+PetalburgCity_EventScript_14B85A:: @ 814B85A
+ lockall
+ setvar 0x8008, 3
+ jump PetalburgCity_EventScript_14B866
+ end
+
+PetalburgCity_EventScript_14B866:: @ 814B866
+ move 9, PetalburgCity_Movement_1A0839
+ waitmove 0
+ playmusic 420, 0
+ playsfx 21
+ move 9, PetalburgCity_Movement_1A0833
+ waitmove 0
+ move 9, PetalburgCity_Movement_1A0835
+ waitmove 0
+ compare 0x8008, 0
+ callif 1, PetalburgCity_EventScript_14B91B
+ compare 0x8008, 1
+ callif 1, PetalburgCity_EventScript_14B930
+ compare 0x8008, 2
+ callif 1, PetalburgCity_EventScript_14B93B
+ compare 0x8008, 3
+ callif 1, PetalburgCity_EventScript_14B950
+ msgbox PetalburgCity_Text_16438A, 4
+ closebutton
+ compare 0x8008, 0
+ callif 1, PetalburgCity_EventScript_14B965
+ compare 0x8008, 1
+ callif 1, PetalburgCity_EventScript_14B977
+ compare 0x8008, 2
+ callif 1, PetalburgCity_EventScript_14B989
+ compare 0x8008, 3
+ callif 1, PetalburgCity_EventScript_14B99B
+ msgbox PetalburgCity_Text_164426, 4
+ move 9, PetalburgCity_Movement_1A0843
+ move 255, PetalburgCity_Movement_1A0843
+ waitmove 0
+ msgbox PetalburgCity_Text_164449, 4
+ closebutton
+ move 9, PetalburgCity_Movement_14B9F4
+ waitmove 0
+ fadedefault
+ releaseall
+ end
+
+PetalburgCity_EventScript_14B91B:: @ 814B91B
+ move 9, PetalburgCity_Movement_14B9B1
+ waitmove 0
+ move 255, PetalburgCity_Movement_1A0845
+ waitmove 0
+ return
+
+PetalburgCity_EventScript_14B930:: @ 814B930
+ move 9, PetalburgCity_Movement_14B9B6
+ waitmove 0
+ return
+
+PetalburgCity_EventScript_14B93B:: @ 814B93B
+ move 9, PetalburgCity_Movement_14B9B9
+ waitmove 0
+ move 255, PetalburgCity_Movement_1A0841
+ waitmove 0
+ return
+
+PetalburgCity_EventScript_14B950:: @ 814B950
+ move 9, PetalburgCity_Movement_14B9BE
+ waitmove 0
+ move 255, PetalburgCity_Movement_1A0841
+ waitmove 0
+ return
+
+PetalburgCity_EventScript_14B965:: @ 814B965
+ move 9, PetalburgCity_Movement_14B9C4
+ move 255, PetalburgCity_Movement_14BA01
+ waitmove 0
+ return
+
+PetalburgCity_EventScript_14B977:: @ 814B977
+ move 9, PetalburgCity_Movement_14B9CF
+ move 255, PetalburgCity_Movement_14BA0B
+ waitmove 0
+ return
+
+PetalburgCity_EventScript_14B989:: @ 814B989
+ move 9, PetalburgCity_Movement_14B9DD
+ move 255, PetalburgCity_Movement_14BA18
+ waitmove 0
+ return
+
+PetalburgCity_EventScript_14B99B:: @ 814B99B
+ move 9, PetalburgCity_Movement_14B9E8
+ move 255, PetalburgCity_Movement_14BA22
+ waitmove 0
+ return
+
+ .incbin "baserom.gba", 0x14b9ad, 0x4
+
+PetalburgCity_Movement_14B9B1:: @ 814B9B1
+ step_right
+ step_right
+ step_right
+ step_26
+ step_end
+
+PetalburgCity_Movement_14B9B6:: @ 814B9B6
+ step_right
+ step_right
+ step_end
+
+PetalburgCity_Movement_14B9B9:: @ 814B9B9
+ step_right
+ step_right
+ step_right
+ step_25
+ step_end
+
+PetalburgCity_Movement_14B9BE:: @ 814B9BE
+ step_down
+ step_right
+ step_right
+ step_right
+ step_25
+ step_end
+
+PetalburgCity_Movement_14B9C4:: @ 814B9C4
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_up
+ step_right
+ step_26
+ step_end
+
+PetalburgCity_Movement_14B9CF:: @ 814B9CF
+ step_down
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_up
+ step_up
+ step_right
+ step_26
+ step_end
+
+PetalburgCity_Movement_14B9DD:: @ 814B9DD
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_up
+ step_right
+ step_26
+ step_end
+
+PetalburgCity_Movement_14B9E8:: @ 814B9E8
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_up
+ step_up
+ step_right
+ step_26
+ step_end
+
+PetalburgCity_Movement_14B9F4:: @ 814B9F4
+ step_down
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_end
+
+PetalburgCity_Movement_14BA01:: @ 814BA01
+ step_down
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_up
+ step_end
+
+PetalburgCity_Movement_14BA0B:: @ 814BA0B
+ step_14
+ step_14
+ step_down
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_up
+ step_up
+ step_end
+
+PetalburgCity_Movement_14BA18:: @ 814BA18
+ step_up
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_up
+ step_end
+
+PetalburgCity_Movement_14BA22:: @ 814BA22
+ step_up
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_up
+ step_up
+ step_end
+
+PetalburgCity_EventScript_14BA2D:: @ 814BA2D
+ msgbox PetalburgCity_Text_16438A, 2
+ end
+
diff --git a/data/maps/scripts/PetalburgCity_Gym.s b/data/maps/scripts/PetalburgCity_Gym.s
new file mode 100644
index 000000000..c9e54f6cf
--- /dev/null
+++ b/data/maps/scripts/PetalburgCity_Gym.s
@@ -0,0 +1,1049 @@
+PetalburgCity_Gym_MapScripts:: @ 8154477
+ map_script 1, PetalburgCity_Gym_MapScript1_15448C
+ map_script 3, PetalburgCity_Gym_MapScript1_15451B
+ map_script 4, PetalburgCity_Gym_MapScript2_154553
+ map_script 2, PetalburgCity_Gym_MapScript2_154562
+ .byte 0
+
+PetalburgCity_Gym_MapScript1_15448C:: @ 815448C
+ compare 0x4085, 6
+ jumpeq PetalburgCity_Gym_EventScript_1544A3
+ compare 0x4085, 7
+ callif 4, PetalburgCity_Gym_EventScript_1544ED
+ end
+
+PetalburgCity_Gym_EventScript_1544A3:: @ 81544A3
+ setvar 0x8005, 1
+ call PetalburgCity_Gym_EventScript_154F9A
+ checktrainerflag 71
+ callif 1, PetalburgCity_Gym_EventScript_154FBB
+ checktrainerflag 89
+ callif 1, PetalburgCity_Gym_EventScript_154FDC
+ checktrainerflag 72
+ callif 1, PetalburgCity_Gym_EventScript_154FFD
+ checktrainerflag 90
+ callif 1, PetalburgCity_Gym_EventScript_15501E
+ checktrainerflag 73
+ callif 1, PetalburgCity_Gym_EventScript_15503F
+ checktrainerflag 91
+ callif 1, PetalburgCity_Gym_EventScript_155060
+ checktrainerflag 74
+ callif 1, PetalburgCity_Gym_EventScript_155081
+ end
+
+PetalburgCity_Gym_EventScript_1544ED:: @ 81544ED
+ setvar 0x8005, 1
+ call PetalburgCity_Gym_EventScript_154F9A
+ call PetalburgCity_Gym_EventScript_154FBB
+ call PetalburgCity_Gym_EventScript_154FDC
+ call PetalburgCity_Gym_EventScript_154FFD
+ call PetalburgCity_Gym_EventScript_15501E
+ call PetalburgCity_Gym_EventScript_15503F
+ call PetalburgCity_Gym_EventScript_155060
+ call PetalburgCity_Gym_EventScript_155081
+ return
+
+PetalburgCity_Gym_MapScript1_15451B:: @ 815451B
+ compare 0x4085, 1
+ callif 1, PetalburgCity_Gym_EventScript_15453B
+ compare 0x4085, 6
+ callif 0, PetalburgCity_Gym_EventScript_154543
+ checkflag 2052
+ callif 1, PetalburgCity_Gym_EventScript_15454B
+ end
+
+PetalburgCity_Gym_EventScript_15453B:: @ 815453B
+ movespriteperm 10, 5, 108
+ return
+
+PetalburgCity_Gym_EventScript_154543:: @ 8154543
+ movespriteperm 1, 4, 107
+ return
+
+PetalburgCity_Gym_EventScript_15454B:: @ 815454B
+ movespriteperm 1, 4, 107
+ return
+
+PetalburgCity_Gym_MapScript2_154553:: @ 8154553
+ map_script_2 0x4085, 1, PetalburgCity_Gym_EventScript_15455D
+ .2byte 0
+
+PetalburgCity_Gym_EventScript_15455D:: @ 815455D
+ spriteface 255, 2
+ end
+
+PetalburgCity_Gym_MapScript2_154562:: @ 8154562
+ map_script_2 0x4085, 1, PetalburgCity_Gym_EventScript_15456C
+ .2byte 0
+
+PetalburgCity_Gym_EventScript_15456C:: @ 815456C
+ lockall
+ msgbox PetalburgCity_Gym_Text_17A196, 4
+ msgbox PetalburgCity_Gym_Text_17A1B0, 4
+ closebutton
+ move 255, PetalburgCity_Gym_Movement_1A0845
+ move 10, PetalburgCity_Gym_Movement_1545B4
+ waitmove 0
+ playsfx 9
+ disappear 10
+ setflag 726
+ pause 30
+ move 255, PetalburgCity_Gym_Movement_1A0841
+ waitmove 0
+ msgbox PetalburgCity_Gym_Text_17A2A4, 4
+ setvar 0x4085, 2
+ releaseall
+ end
+
+PetalburgCity_Gym_Movement_1545B4:: @ 81545B4
+ step_down
+ step_down
+ step_down
+ step_14
+ step_end
+
+PetalburgCity_Gym_EventScript_1545B9:: @ 81545B9
+ lock
+ faceplayer
+ switch 0x4085
+ case 2, PetalburgCity_Gym_EventScript_154907
+ case 3, PetalburgCity_Gym_EventScript_154911
+ case 4, PetalburgCity_Gym_EventScript_15491B
+ case 5, PetalburgCity_Gym_EventScript_154925
+ case 6, PetalburgCity_Gym_EventScript_1549D6
+ case 7, PetalburgCity_Gym_EventScript_15493D
+ msgbox PetalburgCity_Gym_Text_179DF6, 4
+ closebutton
+ switch FACING
+ case 1, PetalburgCity_Gym_EventScript_15463D
+ case 2, PetalburgCity_Gym_EventScript_154648
+ case 3, PetalburgCity_Gym_EventScript_154653
+ case 4, PetalburgCity_Gym_EventScript_15465E
+ end
+
+PetalburgCity_Gym_EventScript_15463D:: @ 815463D
+ setvar 0x8008, 0
+ jump PetalburgCity_Gym_EventScript_154669
+ end
+
+PetalburgCity_Gym_EventScript_154648:: @ 8154648
+ setvar 0x8008, 1
+ jump PetalburgCity_Gym_EventScript_154669
+ end
+
+PetalburgCity_Gym_EventScript_154653:: @ 8154653
+ setvar 0x8008, 2
+ jump PetalburgCity_Gym_EventScript_154669
+ end
+
+PetalburgCity_Gym_EventScript_15465E:: @ 815465E
+ setvar 0x8008, 3
+ jump PetalburgCity_Gym_EventScript_154669
+ end
+
+PetalburgCity_Gym_EventScript_154669:: @ 8154669
+ reappear 10
+ playsfx 8
+ compare 0x8008, 0
+ callif 1, PetalburgCity_Gym_EventScript_1547EE
+ compare 0x8008, 1
+ callif 1, PetalburgCity_Gym_EventScript_154800
+ compare 0x8008, 2
+ callif 1, PetalburgCity_Gym_EventScript_15481C
+ compare 0x8008, 3
+ callif 1, PetalburgCity_Gym_EventScript_15481C
+ msgbox PetalburgCity_Gym_Text_179F07, 4
+ msgbox PetalburgCity_Gym_Text_179F37, 4
+ msgbox PetalburgCity_Gym_Text_179F70, 4
+ msgbox PetalburgCity_Gym_Text_17A03A, 4
+ compare 0x8008, 0
+ callif 1, PetalburgCity_Gym_EventScript_154884
+ compare 0x8008, 1
+ callif 1, PetalburgCity_Gym_EventScript_15488F
+ compare 0x8008, 2
+ callif 1, PetalburgCity_Gym_EventScript_1548A1
+ compare 0x8008, 3
+ callif 1, PetalburgCity_Gym_EventScript_1548B3
+ msgbox PetalburgCity_Gym_Text_17A04A, 4
+ compare 0x8008, 0
+ callif 1, PetalburgCity_Gym_EventScript_1548C5
+ compare 0x8008, 1
+ callif 1, PetalburgCity_Gym_EventScript_1548D0
+ compare 0x8008, 2
+ callif 1, PetalburgCity_Gym_EventScript_1548DB
+ compare 0x8008, 3
+ callif 1, PetalburgCity_Gym_EventScript_1548E6
+ msgbox PetalburgCity_Gym_Text_17A0A8, 4
+ msgbox PetalburgCity_Gym_Text_17A0EB, 4
+ msgbox PetalburgCity_Gym_Text_17A156, 4
+ compare 0x8008, 0
+ callif 1, PetalburgCity_Gym_EventScript_15492F
+ compare 0x8008, 1
+ callif 1, PetalburgCity_Gym_EventScript_154930
+ compare 0x8008, 2
+ callif 1, PetalburgCity_Gym_EventScript_15493B
+ compare 0x8008, 3
+ callif 1, PetalburgCity_Gym_EventScript_15493C
+ compare 0x8008, 0
+ callif 1, PetalburgCity_Gym_EventScript_1548F1
+ compare 0x8008, 1
+ callif 1, PetalburgCity_Gym_EventScript_1548FC
+ compare 0x8008, 2
+ callif 1, PetalburgCity_Gym_EventScript_1548F1
+ compare 0x8008, 3
+ callif 1, PetalburgCity_Gym_EventScript_1548F1
+ msgbox PetalburgCity_Gym_Text_17A171, 4
+ closebutton
+ setflag 0x4001
+ playmusic 420, 0
+ compare 0x8008, 0
+ callif 1, PetalburgCity_Gym_EventScript_154835
+ compare 0x8008, 1
+ callif 1, PetalburgCity_Gym_EventScript_15484E
+ compare 0x8008, 2
+ callif 1, PetalburgCity_Gym_EventScript_154860
+ compare 0x8008, 3
+ callif 1, PetalburgCity_Gym_EventScript_154872
+ disappear 10
+ setflag 728
+ setvar 0x4085, 1
+ setvar 0x4057, 2
+ clearflag 726
+ clearflag 866
+ setflag 889
+ special 211
+ warp PetalburgCity, 255, 15, 8
+ waitstate
+ release
+ end
+
+PetalburgCity_Gym_EventScript_1547EE:: @ 81547EE
+ move 1, PetalburgCity_Gym_Movement_1A0845
+ move 10, PetalburgCity_Gym_Movement_154B27
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_154800:: @ 8154800
+ move 10, PetalburgCity_Gym_Movement_154B1D
+ waitmove 0
+ move 1, PetalburgCity_Gym_Movement_1A0843
+ move 255, PetalburgCity_Gym_Movement_1A0843
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_15481C:: @ 815481C
+ move 1, PetalburgCity_Gym_Movement_1A0845
+ move 255, PetalburgCity_Gym_Movement_1A0845
+ move 10, PetalburgCity_Gym_Movement_154B27
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_154835:: @ 8154835
+ move 1, PetalburgCity_Gym_Movement_1A0845
+ move 10, PetalburgCity_Gym_Movement_154B3E
+ move 255, PetalburgCity_Gym_Movement_154B4D
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_15484E:: @ 815484E
+ move 10, PetalburgCity_Gym_Movement_154B2E
+ move 255, PetalburgCity_Gym_Movement_154B45
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_154860:: @ 8154860
+ move 10, PetalburgCity_Gym_Movement_154B3E
+ move 255, PetalburgCity_Gym_Movement_154B57
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_154872:: @ 8154872
+ move 10, PetalburgCity_Gym_Movement_154B36
+ move 255, PetalburgCity_Gym_Movement_154B5F
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_154884:: @ 8154884
+ move 1, PetalburgCity_Gym_Movement_1A0841
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_15488F:: @ 815488F
+ move 1, PetalburgCity_Gym_Movement_1A0845
+ move 255, PetalburgCity_Gym_Movement_1A0841
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_1548A1:: @ 81548A1
+ move 1, PetalburgCity_Gym_Movement_1A0843
+ move 255, PetalburgCity_Gym_Movement_1A083F
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_1548B3:: @ 81548B3
+ move 1, PetalburgCity_Gym_Movement_1A083F
+ move 255, PetalburgCity_Gym_Movement_1A0843
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_1548C5:: @ 81548C5
+ move 1, PetalburgCity_Gym_Movement_1A0845
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_1548D0:: @ 81548D0
+ move 1, PetalburgCity_Gym_Movement_1A0843
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_1548DB:: @ 81548DB
+ move 1, PetalburgCity_Gym_Movement_1A0845
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_1548E6:: @ 81548E6
+ move 1, PetalburgCity_Gym_Movement_1A0845
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_1548F1:: @ 81548F1
+ move 10, PetalburgCity_Gym_Movement_1A0839
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_1548FC:: @ 81548FC
+ move 10, PetalburgCity_Gym_Movement_1A0845
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_154907:: @ 8154907
+ msgbox PetalburgCity_Gym_Text_17A41E, 4
+ release
+ end
+
+PetalburgCity_Gym_EventScript_154911:: @ 8154911
+ msgbox PetalburgCity_Gym_Text_17A518, 4
+ release
+ end
+
+PetalburgCity_Gym_EventScript_15491B:: @ 815491B
+ msgbox PetalburgCity_Gym_Text_17A5F3, 4
+ release
+ end
+
+PetalburgCity_Gym_EventScript_154925:: @ 8154925
+ msgbox PetalburgCity_Gym_Text_17A5F3, 4
+ release
+ end
+
+PetalburgCity_Gym_EventScript_15492F:: @ 815492F
+ return
+
+PetalburgCity_Gym_EventScript_154930:: @ 8154930
+ move 1, PetalburgCity_Gym_Movement_1A0845
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_15493B:: @ 815493B
+ return
+
+PetalburgCity_Gym_EventScript_15493C:: @ 815493C
+ return
+
+PetalburgCity_Gym_EventScript_15493D:: @ 815493D
+ call PetalburgCity_Gym_EventScript_154969
+ compare RESULT, 1
+ jumpeq PetalburgCity_Gym_EventScript_1549B8
+ checkflag 169
+ jumpif 0, PetalburgCity_Gym_EventScript_154A2C
+ checkflag 2052
+ jumpeq PetalburgCity_Gym_EventScript_154B69
+ msgbox PetalburgCity_Gym_Text_17AA6B, 4
+ release
+ end
+
+PetalburgCity_Gym_EventScript_154969:: @ 8154969
+ specialval RESULT, 50
+ compare RESULT, 0
+ jumpeq PetalburgCity_Gym_EventScript_1549B2
+ checkitem ITEM_ENIGMA_BERRY, 1
+ compare RESULT, 1
+ jumpeq PetalburgCity_Gym_EventScript_1549B2
+ checkpcitem ITEM_ENIGMA_BERRY, 1
+ compare RESULT, 1
+ jumpeq PetalburgCity_Gym_EventScript_1549B2
+ compare 0x402d, 0
+ jumpeq PetalburgCity_Gym_EventScript_1549B2
+ msgbox PetalburgCity_Gym_Text_1C5570, 4
+ setvar RESULT, 1
+ return
+
+PetalburgCity_Gym_EventScript_1549B2:: @ 81549B2
+ setvar RESULT, 0
+ return
+
+PetalburgCity_Gym_EventScript_1549B8:: @ 81549B8
+ giveitem ITEM_ENIGMA_BERRY
+ compare RESULT, 0
+ jumpeq PetalburgCity_Gym_EventScript_1A029B
+ setvar 0x402d, 0
+ release
+ end
+
+PetalburgCity_Gym_EventScript_1549D6:: @ 81549D6
+ msgbox PetalburgCity_Gym_Text_17A653, 4
+ trainerbattle 3, 269, 0, PetalburgCity_Gym_Text_17A77A
+ message PetalburgCity_Gym_Text_17A7DD
+ waittext
+ call PetalburgCity_Gym_EventScript_1A02C5
+ msgbox PetalburgCity_Gym_Text_17A805, 4
+ setflag 1217
+ setvar 0x4085, 7
+ setflag 2059
+ call PetalburgCity_Gym_EventScript_1A0424
+ setflag 913
+ clearflag 912
+ setvar 0x8008, 5
+ call PetalburgCity_Gym_EventScript_1A01C0
+ clearflag 940
+ call PetalburgCity_Gym_EventScript_1544ED
+ special 142
+ jump PetalburgCity_Gym_EventScript_154A2C
+ end
+
+PetalburgCity_Gym_EventScript_154A2C:: @ 8154A2C
+ giveitem ITEM_TM42
+ compare RESULT, 0
+ jumpeq PetalburgCity_Gym_EventScript_1A029B
+ setflag 169
+ msgbox PetalburgCity_Gym_Text_17A8CF, 4
+ msgbox PetalburgCity_Gym_Text_17A976, 4
+ closebutton
+ compare FACING, 2
+ callif 1, PetalburgCity_Gym_EventScript_154ABC
+ compare FACING, 1
+ callif 1, PetalburgCity_Gym_EventScript_154AC7
+ compare FACING, 3
+ callif 1, PetalburgCity_Gym_EventScript_154AD2
+ compare FACING, 4
+ callif 1, PetalburgCity_Gym_EventScript_154ADD
+ pause 70
+ compare FACING, 2
+ callif 1, PetalburgCity_Gym_EventScript_154AE8
+ compare FACING, 1
+ callif 1, PetalburgCity_Gym_EventScript_154AF3
+ compare FACING, 3
+ callif 1, PetalburgCity_Gym_EventScript_154AFE
+ compare FACING, 4
+ callif 1, PetalburgCity_Gym_EventScript_154B09
+ msgbox PetalburgCity_Gym_Text_17A9F6, 4
+ release
+ end
+
+PetalburgCity_Gym_EventScript_154ABC:: @ 8154ABC
+ move 1, PetalburgCity_Gym_Movement_1A0841
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_154AC7:: @ 8154AC7
+ move 1, PetalburgCity_Gym_Movement_1A0845
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_154AD2:: @ 8154AD2
+ move 1, PetalburgCity_Gym_Movement_1A083F
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_154ADD:: @ 8154ADD
+ move 1, PetalburgCity_Gym_Movement_1A0843
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_154AE8:: @ 8154AE8
+ move 1, PetalburgCity_Gym_Movement_1A0845
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_154AF3:: @ 8154AF3
+ move 1, PetalburgCity_Gym_Movement_1A0841
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_154AFE:: @ 8154AFE
+ move 1, PetalburgCity_Gym_Movement_1A0843
+ waitmove 0
+ return
+
+PetalburgCity_Gym_EventScript_154B09:: @ 8154B09
+ move 1, PetalburgCity_Gym_Movement_1A083F
+ waitmove 0
+ return
+
+ .incbin "baserom.gba", 0x154b14, 0x9
+
+PetalburgCity_Gym_Movement_154B1D:: @ 8154B1D
+ step_14
+ step_up
+ step_14
+ step_13
+ step_up
+ step_right
+ step_up
+ step_up
+ step_27
+ step_end
+
+PetalburgCity_Gym_Movement_154B27:: @ 8154B27
+ step_14
+ step_up
+ step_14
+ step_13
+ step_up
+ step_up
+ step_end
+
+PetalburgCity_Gym_Movement_154B2E:: @ 8154B2E
+ step_down
+ step_down
+ step_down
+ step_down
+ step_26
+ step_14
+ step_1d
+ step_end
+
+PetalburgCity_Gym_Movement_154B36:: @ 8154B36
+ step_down
+ step_down
+ step_right
+ step_down
+ step_26
+ step_14
+ step_1d
+ step_end
+
+PetalburgCity_Gym_Movement_154B3E:: @ 8154B3E
+ step_down
+ step_down
+ step_down
+ step_26
+ step_14
+ step_1d
+ step_end
+
+PetalburgCity_Gym_Movement_154B45:: @ 8154B45
+ step_14
+ step_14
+ step_14
+ step_down
+ step_down
+ step_down
+ step_13
+ step_end
+
+PetalburgCity_Gym_Movement_154B4D:: @ 8154B4D
+ step_14
+ step_14
+ step_right
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_13
+ step_end
+
+PetalburgCity_Gym_Movement_154B57:: @ 8154B57
+ step_14
+ step_14
+ step_down
+ step_down
+ step_down
+ step_down
+ step_13
+ step_end
+
+PetalburgCity_Gym_Movement_154B5F:: @ 8154B5F
+ step_25
+ step_14
+ step_14
+ step_down
+ step_down
+ step_down
+ step_right
+ step_down
+ step_13
+ step_end
+
+PetalburgCity_Gym_EventScript_154B69:: @ 8154B69
+ msgbox PetalburgCity_Gym_Text_17AB17, 4
+ release
+ end
+
+PetalburgCity_Gym_EventScript_154B73:: @ 8154B73
+ lockall
+ compare 0x4085, 6
+ jumpif 0, PetalburgCity_Gym_EventScript_154BB9
+ setvar 0x8008, 7
+ setvar 0x8009, 85
+ msgbox PetalburgCity_Gym_Text_17B870, 5
+ compare RESULT, 1
+ jumpeq PetalburgCity_Gym_EventScript_154BA8
+ compare RESULT, 0
+ jumpeq PetalburgCity_Gym_EventScript_154BB7
+ end
+
+PetalburgCity_Gym_EventScript_154BA8:: @ 8154BA8
+ closebutton
+ pause 30
+ warpwalk PetalburgCity_Gym, 255, 32776, 32777
+ waitstate
+ releaseall
+ end
+
+PetalburgCity_Gym_EventScript_154BB7:: @ 8154BB7
+ releaseall
+ end
+
+PetalburgCity_Gym_EventScript_154BB9:: @ 8154BB9
+ msgbox PetalburgCity_Gym_Text_17B844, 4
+ releaseall
+ end
+
+PetalburgCity_Gym_EventScript_154BC3:: @ 8154BC3
+ lockall
+ compare 0x4085, 6
+ jumpif 0, PetalburgCity_Gym_EventScript_154BB9
+ setvar 0x8008, 1
+ setvar 0x8009, 98
+ msgbox PetalburgCity_Gym_Text_17B8D4, 5
+ compare RESULT, 1
+ jumpeq PetalburgCity_Gym_EventScript_154BA8
+ compare RESULT, 0
+ jumpeq PetalburgCity_Gym_EventScript_154BB7
+ end
+
+PetalburgCity_Gym_EventScript_154BF8:: @ 8154BF8
+ lockall
+ checktrainerflag 71
+ jumpif 0, PetalburgCity_Gym_EventScript_154BB9
+ setvar 0x8008, 7
+ setvar 0x8009, 46
+ msgbox PetalburgCity_Gym_Text_17B90F, 5
+ compare RESULT, 1
+ jumpeq PetalburgCity_Gym_EventScript_154BA8
+ compare RESULT, 0
+ jumpeq PetalburgCity_Gym_EventScript_154BB7
+ end
+
+PetalburgCity_Gym_EventScript_154C2B:: @ 8154C2B
+ lockall
+ checktrainerflag 71
+ jumpif 0, PetalburgCity_Gym_EventScript_154BB9
+ setvar 0x8008, 1
+ setvar 0x8009, 59
+ msgbox PetalburgCity_Gym_Text_17B950, 5
+ compare RESULT, 1
+ jumpeq PetalburgCity_Gym_EventScript_154BA8
+ compare RESULT, 0
+ jumpeq PetalburgCity_Gym_EventScript_154BB7
+ end
+
+PetalburgCity_Gym_EventScript_154C5E:: @ 8154C5E
+ lockall
+ checktrainerflag 89
+ jumpif 0, PetalburgCity_Gym_EventScript_154BB9
+ setvar 0x8008, 7
+ setvar 0x8009, 59
+ msgbox PetalburgCity_Gym_Text_17B950, 5
+ compare RESULT, 1
+ jumpeq PetalburgCity_Gym_EventScript_154BA8
+ compare RESULT, 0
+ jumpeq PetalburgCity_Gym_EventScript_154BB7
+ end
+
+PetalburgCity_Gym_EventScript_154C91:: @ 8154C91
+ lockall
+ checktrainerflag 89
+ jumpif 0, PetalburgCity_Gym_EventScript_154BB9
+ setvar 0x8008, 1
+ setvar 0x8009, 72
+ msgbox PetalburgCity_Gym_Text_17B98A, 5
+ compare RESULT, 1
+ jumpeq PetalburgCity_Gym_EventScript_154BA8
+ compare RESULT, 0
+ jumpeq PetalburgCity_Gym_EventScript_154BB7
+ end
+
+PetalburgCity_Gym_EventScript_154CC4:: @ 8154CC4
+ lockall
+ checktrainerflag 72
+ jumpif 0, PetalburgCity_Gym_EventScript_154BB9
+ setvar 0x8008, 1
+ setvar 0x8009, 20
+ msgbox PetalburgCity_Gym_Text_17B9C5, 5
+ compare RESULT, 1
+ jumpeq PetalburgCity_Gym_EventScript_154BA8
+ compare RESULT, 0
+ jumpeq PetalburgCity_Gym_EventScript_154BB7
+ end
+
+PetalburgCity_Gym_EventScript_154CF7:: @ 8154CF7
+ lockall
+ checktrainerflag 90
+ jumpif 0, PetalburgCity_Gym_EventScript_154BB9
+ setvar 0x8008, 7
+ setvar 0x8009, 20
+ msgbox PetalburgCity_Gym_Text_17B9C5, 5
+ compare RESULT, 1
+ jumpeq PetalburgCity_Gym_EventScript_154BA8
+ compare RESULT, 0
+ jumpeq PetalburgCity_Gym_EventScript_154BB7
+ end
+
+PetalburgCity_Gym_EventScript_154D2A:: @ 8154D2A
+ lockall
+ checktrainerflag 90
+ jumpif 0, PetalburgCity_Gym_EventScript_154BB9
+ setvar 0x8008, 1
+ setvar 0x8009, 33
+ msgbox PetalburgCity_Gym_Text_17BA00, 5
+ compare RESULT, 1
+ jumpeq PetalburgCity_Gym_EventScript_154BA8
+ compare RESULT, 0
+ jumpeq PetalburgCity_Gym_EventScript_154BB7
+ end
+
+PetalburgCity_Gym_EventScript_154D5D:: @ 8154D5D
+ lockall
+ checktrainerflag 73
+ jumpif 0, PetalburgCity_Gym_EventScript_154BB9
+ setvar 0x8008, 7
+ setvar 0x8009, 33
+ msgbox PetalburgCity_Gym_Text_17BA00, 5
+ compare RESULT, 1
+ jumpeq PetalburgCity_Gym_EventScript_154BA8
+ compare RESULT, 0
+ jumpeq PetalburgCity_Gym_EventScript_154BB7
+ end
+
+PetalburgCity_Gym_EventScript_154D90:: @ 8154D90
+ lockall
+ checktrainerflag 91
+ jumpif 0, PetalburgCity_Gym_EventScript_154BB9
+ setvar 0x8008, 1
+ setvar 0x8009, 7
+ msgbox PetalburgCity_Gym_Text_17BA3D, 5
+ compare RESULT, 1
+ jumpeq PetalburgCity_Gym_EventScript_154BA8
+ compare RESULT, 0
+ jumpeq PetalburgCity_Gym_EventScript_154BB7
+ end
+
+PetalburgCity_Gym_EventScript_154DC3:: @ 8154DC3
+ lockall
+ checktrainerflag 74
+ jumpif 0, PetalburgCity_Gym_EventScript_154BB9
+ setvar 0x8008, 7
+ setvar 0x8009, 7
+ msgbox PetalburgCity_Gym_Text_17BA3D, 5
+ compare RESULT, 1
+ jumpeq PetalburgCity_Gym_EventScript_154BA8
+ compare RESULT, 0
+ jumpeq PetalburgCity_Gym_EventScript_154BB7
+ end
+
+PetalburgCity_Gym_EventScript_154DF6:: @ 8154DF6
+ trainerbattle 2, 71, 0, PetalburgCity_Gym_Text_17ADA5, PetalburgCity_Gym_Text_17AE11, PetalburgCity_Gym_EventScript_154E1A
+ checkflag 1217
+ jumpeq PetalburgCity_Gym_EventScript_154E29
+ msgbox PetalburgCity_Gym_Text_17AE30, 6
+ end
+
+PetalburgCity_Gym_EventScript_154E1A:: @ 8154E1A
+ setvar 0x8005, 0
+ call PetalburgCity_Gym_EventScript_154FBB
+ special 142
+ release
+ end
+
+PetalburgCity_Gym_EventScript_154E29:: @ 8154E29
+ msgbox PetalburgCity_Gym_Text_17AEBB, 2
+ end
+
+PetalburgCity_Gym_EventScript_154E32:: @ 8154E32
+ trainerbattle 2, 72, 0, PetalburgCity_Gym_Text_17AF5A, PetalburgCity_Gym_Text_17AF98, PetalburgCity_Gym_EventScript_154E56
+ checkflag 1217
+ jumpeq PetalburgCity_Gym_EventScript_154E65
+ msgbox PetalburgCity_Gym_Text_17AFD3, 6
+ end
+
+PetalburgCity_Gym_EventScript_154E56:: @ 8154E56
+ setvar 0x8005, 0
+ call PetalburgCity_Gym_EventScript_154FFD
+ special 142
+ release
+ end
+
+PetalburgCity_Gym_EventScript_154E65:: @ 8154E65
+ msgbox PetalburgCity_Gym_Text_17B016, 2
+ end
+
+PetalburgCity_Gym_EventScript_154E6E:: @ 8154E6E
+ trainerbattle 2, 73, 0, PetalburgCity_Gym_Text_17B058, PetalburgCity_Gym_Text_17B0F7, PetalburgCity_Gym_EventScript_154E92
+ checkflag 1217
+ jumpeq PetalburgCity_Gym_EventScript_154EA1
+ msgbox PetalburgCity_Gym_Text_17B12C, 6
+ end
+
+PetalburgCity_Gym_EventScript_154E92:: @ 8154E92
+ setvar 0x8005, 0
+ call PetalburgCity_Gym_EventScript_15503F
+ special 142
+ release
+ end
+
+PetalburgCity_Gym_EventScript_154EA1:: @ 8154EA1
+ msgbox PetalburgCity_Gym_Text_17B1F4, 2
+ end
+
+PetalburgCity_Gym_EventScript_154EAA:: @ 8154EAA
+ trainerbattle 2, 74, 0, PetalburgCity_Gym_Text_17B237, PetalburgCity_Gym_Text_17B2C0, PetalburgCity_Gym_EventScript_154ECE
+ checkflag 1217
+ jumpeq PetalburgCity_Gym_EventScript_154EDD
+ msgbox PetalburgCity_Gym_Text_17B2E4, 6
+ end
+
+PetalburgCity_Gym_EventScript_154ECE:: @ 8154ECE
+ setvar 0x8005, 0
+ call PetalburgCity_Gym_EventScript_155081
+ special 142
+ release
+ end
+
+PetalburgCity_Gym_EventScript_154EDD:: @ 8154EDD
+ msgbox PetalburgCity_Gym_Text_17B39B, 2
+ end
+
+PetalburgCity_Gym_EventScript_154EE6:: @ 8154EE6
+ trainerbattle 2, 89, 0, PetalburgCity_Gym_Text_17B3F7, PetalburgCity_Gym_Text_17B454, PetalburgCity_Gym_EventScript_154F0A
+ checkflag 1217
+ jumpeq PetalburgCity_Gym_EventScript_154F19
+ msgbox PetalburgCity_Gym_Text_17B46F, 6
+ end
+
+PetalburgCity_Gym_EventScript_154F0A:: @ 8154F0A
+ setvar 0x8005, 0
+ call PetalburgCity_Gym_EventScript_154FDC
+ special 142
+ release
+ end
+
+PetalburgCity_Gym_EventScript_154F19:: @ 8154F19
+ msgbox PetalburgCity_Gym_Text_17B521, 2
+ end
+
+PetalburgCity_Gym_EventScript_154F22:: @ 8154F22
+ trainerbattle 2, 90, 0, PetalburgCity_Gym_Text_17B58D, PetalburgCity_Gym_Text_17B5CB, PetalburgCity_Gym_EventScript_154F46
+ checkflag 1217
+ jumpeq PetalburgCity_Gym_EventScript_154F55
+ msgbox PetalburgCity_Gym_Text_17B5EA, 6
+ end
+
+PetalburgCity_Gym_EventScript_154F46:: @ 8154F46
+ setvar 0x8005, 0
+ call PetalburgCity_Gym_EventScript_15501E
+ special 142
+ release
+ end
+
+PetalburgCity_Gym_EventScript_154F55:: @ 8154F55
+ msgbox PetalburgCity_Gym_Text_17B6B5, 2
+ end
+
+PetalburgCity_Gym_EventScript_154F5E:: @ 8154F5E
+ trainerbattle 2, 91, 0, PetalburgCity_Gym_Text_17B6D4, PetalburgCity_Gym_Text_17B732, PetalburgCity_Gym_EventScript_154F82
+ checkflag 1217
+ jumpeq PetalburgCity_Gym_EventScript_154F91
+ msgbox PetalburgCity_Gym_Text_17B749, 6
+ end
+
+PetalburgCity_Gym_EventScript_154F82:: @ 8154F82
+ setvar 0x8005, 0
+ call PetalburgCity_Gym_EventScript_155060
+ special 142
+ release
+ end
+
+PetalburgCity_Gym_EventScript_154F91:: @ 8154F91
+ msgbox PetalburgCity_Gym_Text_17B7C0, 2
+ end
+
+PetalburgCity_Gym_EventScript_154F9A:: @ 8154F9A
+ setvar 0x8004, 1
+ compare 0x8005, 0
+ callif 1, PetalburgCity_Gym_EventScript_155182
+ compare 0x8005, 1
+ callif 1, PetalburgCity_Gym_EventScript_155187
+ call PetalburgCity_Gym_EventScript_1550A2
+ return
+
+PetalburgCity_Gym_EventScript_154FBB:: @ 8154FBB
+ setvar 0x8004, 2
+ compare 0x8005, 0
+ callif 1, PetalburgCity_Gym_EventScript_155182
+ compare 0x8005, 1
+ callif 1, PetalburgCity_Gym_EventScript_155187
+ call PetalburgCity_Gym_EventScript_1550C7
+ return
+
+PetalburgCity_Gym_EventScript_154FDC:: @ 8154FDC
+ setvar 0x8004, 3
+ compare 0x8005, 0
+ callif 1, PetalburgCity_Gym_EventScript_155182
+ compare 0x8005, 1
+ callif 1, PetalburgCity_Gym_EventScript_155187
+ call PetalburgCity_Gym_EventScript_1550EC
+ return
+
+PetalburgCity_Gym_EventScript_154FFD:: @ 8154FFD
+ setvar 0x8004, 4
+ compare 0x8005, 0
+ callif 1, PetalburgCity_Gym_EventScript_155182
+ compare 0x8005, 1
+ callif 1, PetalburgCity_Gym_EventScript_155187
+ call PetalburgCity_Gym_EventScript_155111
+ return
+
+PetalburgCity_Gym_EventScript_15501E:: @ 815501E
+ setvar 0x8004, 5
+ compare 0x8005, 0
+ callif 1, PetalburgCity_Gym_EventScript_155182
+ compare 0x8005, 1
+ callif 1, PetalburgCity_Gym_EventScript_155187
+ call PetalburgCity_Gym_EventScript_155124
+ return
+
+PetalburgCity_Gym_EventScript_15503F:: @ 815503F
+ setvar 0x8004, 6
+ compare 0x8005, 0
+ callif 1, PetalburgCity_Gym_EventScript_155182
+ compare 0x8005, 1
+ callif 1, PetalburgCity_Gym_EventScript_155187
+ call PetalburgCity_Gym_EventScript_155149
+ return
+
+PetalburgCity_Gym_EventScript_155060:: @ 8155060
+ setvar 0x8004, 7
+ compare 0x8005, 0
+ callif 1, PetalburgCity_Gym_EventScript_155182
+ compare 0x8005, 1
+ callif 1, PetalburgCity_Gym_EventScript_155187
+ call PetalburgCity_Gym_EventScript_15515C
+ return
+
+PetalburgCity_Gym_EventScript_155081:: @ 8155081
+ setvar 0x8004, 8
+ compare 0x8005, 0
+ callif 1, PetalburgCity_Gym_EventScript_155182
+ compare 0x8005, 1
+ callif 1, PetalburgCity_Gym_EventScript_155187
+ call PetalburgCity_Gym_EventScript_15516F
+ return
+
+PetalburgCity_Gym_EventScript_1550A2:: @ 81550A2
+ setmaptile 6, 85, 528, 0
+ setmaptile 7, 85, 529, 0
+ setmaptile 1, 98, 528, 0
+ setmaptile 2, 98, 529, 0
+ return
+
+PetalburgCity_Gym_EventScript_1550C7:: @ 81550C7
+ setmaptile 6, 46, 528, 0
+ setmaptile 7, 46, 529, 0
+ setmaptile 1, 59, 528, 0
+ setmaptile 2, 59, 529, 0
+ return
+
+PetalburgCity_Gym_EventScript_1550EC:: @ 81550EC
+ setmaptile 6, 59, 528, 0
+ setmaptile 7, 59, 529, 0
+ setmaptile 1, 72, 528, 0
+ setmaptile 2, 72, 529, 0
+ return
+
+PetalburgCity_Gym_EventScript_155111:: @ 8155111
+ setmaptile 1, 20, 528, 0
+ setmaptile 2, 20, 529, 0
+ return
+
+PetalburgCity_Gym_EventScript_155124:: @ 8155124
+ setmaptile 6, 20, 528, 0
+ setmaptile 7, 20, 529, 0
+ setmaptile 1, 33, 528, 0
+ setmaptile 2, 33, 529, 0
+ return
+
+PetalburgCity_Gym_EventScript_155149:: @ 8155149
+ setmaptile 6, 33, 528, 0
+ setmaptile 7, 33, 529, 0
+ return
+
+PetalburgCity_Gym_EventScript_15515C:: @ 815515C
+ setmaptile 1, 7, 528, 0
+ setmaptile 2, 7, 529, 0
+ return
+
+PetalburgCity_Gym_EventScript_15516F:: @ 815516F
+ setmaptile 6, 7, 528, 0
+ setmaptile 7, 7, 529, 0
+ return
+
+PetalburgCity_Gym_EventScript_155182:: @ 8155182
+ special 145
+ waitstate
+ return
+
+PetalburgCity_Gym_EventScript_155187:: @ 8155187
+ special 146
+ return
+
+PetalburgCity_Gym_EventScript_15518B:: @ 815518B
+ lock
+ faceplayer
+ checkflag 1217
+ jumpeq PetalburgCity_Gym_EventScript_1551A0
+ msgbox PetalburgCity_Gym_Text_17AB96, 4
+ release
+ end
+
+PetalburgCity_Gym_EventScript_1551A0:: @ 81551A0
+ msgbox PetalburgCity_Gym_Text_17AD49, 4
+ release
+ end
+
+PetalburgCity_Gym_EventScript_1551AA:: @ 81551AA
+ lockall
+ checkflag 2059
+ jumpeq PetalburgCity_Gym_EventScript_1551CA
+ jump PetalburgCity_Gym_EventScript_1551D4
+ end
+
+PetalburgCity_Gym_EventScript_1551BA:: @ 81551BA
+ lockall
+ checkflag 2059
+ jumpeq PetalburgCity_Gym_EventScript_1551CA
+ jump PetalburgCity_Gym_EventScript_1551D4
+ end
+
+PetalburgCity_Gym_EventScript_1551CA:: @ 81551CA
+ msgbox PetalburgCity_Gym_Text_17BAC0, 4
+ releaseall
+ end
+
+PetalburgCity_Gym_EventScript_1551D4:: @ 81551D4
+ msgbox PetalburgCity_Gym_Text_17BAA5, 4
+ releaseall
+ end
+
diff --git a/data/maps/scripts/PetalburgCity_House1.s b/data/maps/scripts/PetalburgCity_House1.s
new file mode 100644
index 000000000..3950e1259
--- /dev/null
+++ b/data/maps/scripts/PetalburgCity_House1.s
@@ -0,0 +1,11 @@
+PetalburgCity_House1_MapScripts:: @ 81551DE
+ .byte 0
+
+PetalburgCity_House1_EventScript_1551DF:: @ 81551DF
+ msgbox PetalburgCity_House1_Text_17BAFB, 2
+ end
+
+PetalburgCity_House1_EventScript_1551E8:: @ 81551E8
+ msgbox PetalburgCity_House1_Text_17BB4A, 2
+ end
+
diff --git a/data/maps/scripts/PetalburgCity_House2.s b/data/maps/scripts/PetalburgCity_House2.s
new file mode 100644
index 000000000..fbd3f9b0d
--- /dev/null
+++ b/data/maps/scripts/PetalburgCity_House2.s
@@ -0,0 +1,11 @@
+PetalburgCity_House2_MapScripts:: @ 81551F1
+ .byte 0
+
+PetalburgCity_House2_EventScript_1551F2:: @ 81551F2
+ msgbox PetalburgCity_House2_Text_17BC4F, 2
+ end
+
+PetalburgCity_House2_EventScript_1551FB:: @ 81551FB
+ msgbox PetalburgCity_House2_Text_17BCB1, 2
+ end
+
diff --git a/data/maps/scripts/PetalburgCity_Mart.s b/data/maps/scripts/PetalburgCity_Mart.s
new file mode 100644
index 000000000..85fc92110
--- /dev/null
+++ b/data/maps/scripts/PetalburgCity_Mart.s
@@ -0,0 +1,69 @@
+PetalburgCity_Mart_MapScripts:: @ 81552AF
+ .byte 0
+
+PetalburgCity_Mart_EventScript_1552B0:: @ 81552B0
+ lock
+ faceplayer
+ message PetalburgCity_Mart_Text_1A0BE4
+ waittext
+ checkflag 296
+ jumpeq PetalburgCity_Mart_EventScript_1552EA
+ pokemart PetalburgCity_Mart_Pokemart_1552D0
+ msgbox PetalburgCity_Mart_Text_1A0C02, 4
+ release
+ end
+
+PetalburgCity_Mart_Pokemart_1552D0:: @ 81552D0
+ .2byte ITEM_POKE_BALL
+ .2byte ITEM_POTION
+ .2byte ITEM_ANTIDOTE
+ .2byte ITEM_PARALYZE_HEAL
+ .2byte ITEM_AWAKENING
+ .2byte ITEM_ESCAPE_ROPE
+ .2byte ITEM_REPEL
+ .2byte ITEM_X_SPEED
+ .2byte ITEM_X_ATTACK
+ .2byte ITEM_X_DEFEND
+ .2byte ITEM_ORANGE_MAIL
+ .2byte ITEM_NONE
+ release
+ end
+
+PetalburgCity_Mart_EventScript_1552EA:: @ 81552EA
+ pokemart PetalburgCity_Mart_Pokemart_1552FC
+ msgbox PetalburgCity_Mart_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x1552f9, 0x3
+
+PetalburgCity_Mart_Pokemart_1552FC:: @ 81552FC
+ .2byte ITEM_POKE_BALL
+ .2byte ITEM_GREAT_BALL
+ .2byte ITEM_POTION
+ .2byte ITEM_SUPER_POTION
+ .2byte ITEM_ANTIDOTE
+ .2byte ITEM_PARALYZE_HEAL
+ .2byte ITEM_AWAKENING
+ .2byte ITEM_ESCAPE_ROPE
+ .2byte ITEM_REPEL
+ .2byte ITEM_X_SPEED
+ .2byte ITEM_X_ATTACK
+ .2byte ITEM_X_DEFEND
+ .2byte ITEM_ORANGE_MAIL
+ .2byte ITEM_NONE
+ release
+ end
+
+PetalburgCity_Mart_EventScript_15531A:: @ 815531A
+ msgbox PetalburgCity_Mart_Text_17BFFD, 2
+ end
+
+PetalburgCity_Mart_EventScript_155323:: @ 8155323
+ msgbox PetalburgCity_Mart_Text_17C06C, 2
+ end
+
+PetalburgCity_Mart_EventScript_15532C:: @ 815532C
+ msgbox PetalburgCity_Mart_Text_17C0BC, 2
+ end
+
diff --git a/data/maps/scripts/PetalburgCity_PokemonCenter_1F.s b/data/maps/scripts/PetalburgCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..faf7b8792
--- /dev/null
+++ b/data/maps/scripts/PetalburgCity_PokemonCenter_1F.s
@@ -0,0 +1,57 @@
+PetalburgCity_PokemonCenter_1F_MapScripts:: @ 8155204
+ map_script 3, PetalburgCity_PokemonCenter_1F_MapScript1_15520A
+ .byte 0
+
+PetalburgCity_PokemonCenter_1F_MapScript1_15520A:: @ 815520A
+ sethealplace 3
+ call PetalburgCity_PokemonCenter_1F_EventScript_19FD1B
+ end
+
+PetalburgCity_PokemonCenter_1F_EventScript_155213:: @ 8155213
+ setvar 0x800b, 1
+ call PetalburgCity_PokemonCenter_1F_EventScript_19FD5B
+ waittext
+ waitbutton
+ release
+ end
+
+PetalburgCity_PokemonCenter_1F_EventScript_155221:: @ 8155221
+ msgbox PetalburgCity_PokemonCenter_1F_Text_17BD30, 2
+ end
+
+PetalburgCity_PokemonCenter_1F_EventScript_15522A:: @ 815522A
+ msgbox PetalburgCity_PokemonCenter_1F_Text_17BD92, 2
+ end
+
+PetalburgCity_PokemonCenter_1F_EventScript_155233:: @ 8155233
+ lock
+ faceplayer
+ msgbox PetalburgCity_PokemonCenter_1F_Text_17BDC5, 4
+ specialval RESULT, 302
+ compare RESULT, 1
+ jumpeq PetalburgCity_PokemonCenter_1F_EventScript_15524F
+ release
+ end
+
+PetalburgCity_PokemonCenter_1F_EventScript_15524F:: @ 815524F
+ compare 0x4023, 0
+ callif 1, PetalburgCity_PokemonCenter_1F_EventScript_155272
+ compare 0x4023, 1
+ callif 1, PetalburgCity_PokemonCenter_1F_EventScript_15527B
+ compare 0x4023, 2
+ callif 1, PetalburgCity_PokemonCenter_1F_EventScript_155284
+ release
+ end
+
+PetalburgCity_PokemonCenter_1F_EventScript_155272:: @ 8155272
+ msgbox PetalburgCity_PokemonCenter_1F_Text_17BE6C, 4
+ return
+
+PetalburgCity_PokemonCenter_1F_EventScript_15527B:: @ 815527B
+ msgbox PetalburgCity_PokemonCenter_1F_Text_17BEF1, 4
+ return
+
+PetalburgCity_PokemonCenter_1F_EventScript_155284:: @ 8155284
+ msgbox PetalburgCity_PokemonCenter_1F_Text_17BF73, 4
+ return
+
diff --git a/data/maps/scripts/PetalburgCity_PokemonCenter_2F.s b/data/maps/scripts/PetalburgCity_PokemonCenter_2F.s
new file mode 100644
index 000000000..e26624dd6
--- /dev/null
+++ b/data/maps/scripts/PetalburgCity_PokemonCenter_2F.s
@@ -0,0 +1,18 @@
+PetalburgCity_PokemonCenter_2F_MapScripts:: @ 815528D
+ map_script 2, PetalburgCity_PokemonCenter_2F_MapScript2_1A3D88
+ map_script 4, PetalburgCity_PokemonCenter_2F_MapScript2_1A3D03
+ map_script 1, PetalburgCity_PokemonCenter_2F_MapScript1_1A3D32
+ .byte 0
+
+PetalburgCity_PokemonCenter_2F_EventScript_15529D:: @ 815529D
+ call PetalburgCity_PokemonCenter_2F_EventScript_1A3EA6
+ end
+
+PetalburgCity_PokemonCenter_2F_EventScript_1552A3:: @ 81552A3
+ call PetalburgCity_PokemonCenter_2F_EventScript_1A40CC
+ end
+
+PetalburgCity_PokemonCenter_2F_EventScript_1552A9:: @ 81552A9
+ call PetalburgCity_PokemonCenter_2F_EventScript_1A41FB
+ end
+
diff --git a/data/maps/scripts/PetalburgCity_WallysHouse.s b/data/maps/scripts/PetalburgCity_WallysHouse.s
new file mode 100644
index 000000000..724e0da6f
--- /dev/null
+++ b/data/maps/scripts/PetalburgCity_WallysHouse.s
@@ -0,0 +1,69 @@
+PetalburgCity_WallysHouse_MapScripts:: @ 81543C3
+ .byte 0
+
+PetalburgCity_WallysHouse_EventScript_1543C4:: @ 81543C4
+ lock
+ faceplayer
+ checkflag 126
+ jumpeq PetalburgCity_WallysHouse_EventScript_1543F7
+ checkflag 122
+ jumpeq PetalburgCity_WallysHouse_EventScript_154427
+ checkflag 1217
+ jumpeq PetalburgCity_WallysHouse_EventScript_154406
+ checkflag 135
+ jumpeq PetalburgCity_WallysHouse_EventScript_15443B
+ msgbox PetalburgCity_WallysHouse_Text_179805, 4
+ setflag 135
+ release
+ end
+
+PetalburgCity_WallysHouse_EventScript_1543F7:: @ 81543F7
+ checkflag 122
+ jumpeq PetalburgCity_WallysHouse_EventScript_154431
+ jump PetalburgCity_WallysHouse_EventScript_154406
+ end
+
+PetalburgCity_WallysHouse_EventScript_154406:: @ 8154406
+ msgbox PetalburgCity_WallysHouse_Text_179996, 4
+ giveitem ITEM_HM03
+ setflag 122
+ msgbox PetalburgCity_WallysHouse_Text_179B14, 4
+ release
+ end
+
+PetalburgCity_WallysHouse_EventScript_154427:: @ 8154427
+ msgbox PetalburgCity_WallysHouse_Text_179B5B, 4
+ release
+ end
+
+PetalburgCity_WallysHouse_EventScript_154431:: @ 8154431
+ msgbox PetalburgCity_WallysHouse_Text_179B92, 4
+ release
+ end
+
+PetalburgCity_WallysHouse_EventScript_15443B:: @ 815443B
+ msgbox PetalburgCity_WallysHouse_Text_179975, 4
+ release
+ end
+
+PetalburgCity_WallysHouse_EventScript_154445:: @ 8154445
+ lock
+ faceplayer
+ checkflag 122
+ jumpeq PetalburgCity_WallysHouse_EventScript_15446D
+ checkflag 1217
+ jumpeq PetalburgCity_WallysHouse_EventScript_154463
+ msgbox PetalburgCity_WallysHouse_Text_179C2C, 4
+ release
+ end
+
+PetalburgCity_WallysHouse_EventScript_154463:: @ 8154463
+ msgbox PetalburgCity_WallysHouse_Text_179CA1, 4
+ release
+ end
+
+PetalburgCity_WallysHouse_EventScript_15446D:: @ 815446D
+ msgbox PetalburgCity_WallysHouse_Text_179D12, 4
+ release
+ end
+
diff --git a/data/maps/scripts/PetalburgWoods.s b/data/maps/scripts/PetalburgWoods.s
new file mode 100644
index 000000000..1a7419ff7
--- /dev/null
+++ b/data/maps/scripts/PetalburgWoods.s
@@ -0,0 +1,284 @@
+PetalburgWoods_MapScripts:: @ 815CC9C
+ map_script 3, PetalburgWoods_MapScript1_15CCA2
+ .byte 0
+
+PetalburgWoods_MapScript1_15CCA2:: @ 815CCA2
+ call PetalburgWoods_EventScript_1A0196
+ end
+
+PetalburgWoods_EventScript_15CCA8:: @ 815CCA8
+ lockall
+ call PetalburgWoods_EventScript_15CDE6
+ move 4, PetalburgWoods_Movement_15CE89
+ waitmove 0
+ msgbox PetalburgWoods_Text_194D92, 4
+ closebutton
+ playmusic 441, 0
+ move 3, PetalburgWoods_Movement_15CEC3
+ waitmove 0
+ msgbox PetalburgWoods_Text_194DED, 4
+ closebutton
+ move 3, PetalburgWoods_Movement_15CEB0
+ waitmove 0
+ move 4, PetalburgWoods_Movement_1A0841
+ waitmove 0
+ msgbox PetalburgWoods_Text_194E6B, 4
+ closebutton
+ move 4, PetalburgWoods_Movement_15CE9E
+ waitmove 0
+ msgbox PetalburgWoods_Text_194E9A, 4
+ move 3, PetalburgWoods_Movement_15CEC8
+ waitmove 0
+ msgbox PetalburgWoods_Text_194EE8, 4
+ trainerbattle 3, 575, 0, PetalburgWoods_Text_194F83
+ move 3, PetalburgWoods_Movement_15CEB3
+ waitmove 0
+ call PetalburgWoods_EventScript_15CDFA
+ move 4, PetalburgWoods_Movement_15CE80
+ waitmove 0
+ jump PetalburgWoods_EventScript_15CE69
+ end
+
+PetalburgWoods_EventScript_15CD42:: @ 815CD42
+ lockall
+ call PetalburgWoods_EventScript_15CDE6
+ move 4, PetalburgWoods_Movement_15CE8E
+ waitmove 0
+ move 255, PetalburgWoods_Movement_1A083F
+ waitmove 0
+ msgbox PetalburgWoods_Text_194D92, 4
+ closebutton
+ playmusic 441, 0
+ move 3, PetalburgWoods_Movement_15CEC3
+ waitmove 0
+ msgbox PetalburgWoods_Text_194DED, 4
+ closebutton
+ move 3, PetalburgWoods_Movement_15CEBF
+ waitmove 0
+ move 4, PetalburgWoods_Movement_1A0841
+ waitmove 0
+ msgbox PetalburgWoods_Text_194E6B, 4
+ closebutton
+ move 4, PetalburgWoods_Movement_15CEA4
+ waitmove 0
+ msgbox PetalburgWoods_Text_194E9A, 4
+ move 255, PetalburgWoods_Movement_1A0841
+ waitmove 0
+ msgbox PetalburgWoods_Text_194EE8, 4
+ trainerbattle 3, 575, 0, PetalburgWoods_Text_194F83
+ move 3, PetalburgWoods_Movement_15CEB3
+ waitmove 0
+ call PetalburgWoods_EventScript_15CDFA
+ move 4, PetalburgWoods_Movement_15CE95
+ waitmove 0
+ jump PetalburgWoods_EventScript_15CE69
+ end
+
+PetalburgWoods_EventScript_15CDE6:: @ 815CDE6
+ move 4, PetalburgWoods_Movement_15CE73
+ waitmove 0
+ msgbox PetalburgWoods_Text_194D71, 4
+ closebutton
+ return
+
+PetalburgWoods_EventScript_15CDFA:: @ 815CDFA
+ msgbox PetalburgWoods_Text_194FA4, 4
+ closebutton
+ move 3, PetalburgWoods_Movement_15CEB7
+ waitmove 0
+ disappear 3
+ move 255, PetalburgWoods_Movement_1A0845
+ waitmove 0
+ msgbox PetalburgWoods_Text_19507E, 4
+ giveitem ITEM_GREAT_BALL
+ compare RESULT, 0
+ jumpeq PetalburgWoods_EventScript_15CE3F
+ jump PetalburgWoods_EventScript_15CE4D
+ end
+
+PetalburgWoods_EventScript_15CE3F:: @ 815CE3F
+ msgbox PetalburgWoods_Text_195182, 4
+ jump PetalburgWoods_EventScript_15CE4D
+ end
+
+PetalburgWoods_EventScript_15CE4D:: @ 815CE4D
+ msgbox PetalburgWoods_Text_19510A, 4
+ move 4, PetalburgWoods_Movement_15CEA8
+ waitmove 0
+ msgbox PetalburgWoods_Text_195153, 4
+ closebutton
+ return
+
+PetalburgWoods_EventScript_15CE69:: @ 815CE69
+ disappear 4
+ setvar 0x4098, 1
+ releaseall
+ end
+
+PetalburgWoods_Movement_15CE73:: @ 815CE73
+ step_01
+ step_14
+ step_03
+ step_14
+ step_02
+ step_14
+ step_00
+ step_14
+ step_03
+ step_14
+ step_01
+ step_14
+ step_end
+
+PetalburgWoods_Movement_15CE80:: @ 815CE80
+ step_18
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_end
+
+PetalburgWoods_Movement_15CE89:: @ 815CE89
+ step_14
+ step_3e
+ step_down
+ step_down
+ step_end
+
+PetalburgWoods_Movement_15CE8E:: @ 815CE8E
+ step_14
+ step_3e
+ step_down
+ step_down
+ step_down
+ step_28
+ step_end
+
+PetalburgWoods_Movement_15CE95:: @ 815CE95
+ step_17
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_end
+
+PetalburgWoods_Movement_15CE9E:: @ 815CE9E
+ step_18
+ step_15
+ step_15
+ step_17
+ step_26
+ step_end
+
+PetalburgWoods_Movement_15CEA4:: @ 815CEA4
+ step_15
+ step_18
+ step_26
+ step_end
+
+PetalburgWoods_Movement_15CEA8:: @ 815CEA8
+ step_25
+ step_14
+ step_14
+ step_14
+ step_14
+ step_14
+ step_01
+ step_end
+
+PetalburgWoods_Movement_15CEB0:: @ 815CEB0
+ step_15
+ step_15
+ step_end
+
+PetalburgWoods_Movement_15CEB3:: @ 815CEB3
+ step_40
+ step_up
+ step_41
+ step_end
+
+PetalburgWoods_Movement_15CEB7:: @ 815CEB7
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_14
+ step_14
+ step_end
+
+PetalburgWoods_Movement_15CEBF:: @ 815CEBF
+ step_15
+ step_15
+ step_15
+ step_end
+
+PetalburgWoods_Movement_15CEC3:: @ 815CEC3
+ step_down
+ step_down
+ step_14
+ step_14
+ step_end
+
+PetalburgWoods_Movement_15CEC8:: @ 815CEC8
+ step_down
+ step_end
+
+PetalburgWoods_EventScript_15CECA:: @ 815CECA
+ msgbox PetalburgWoods_Text_1953AC, 2
+ end
+
+PetalburgWoods_EventScript_15CED3:: @ 815CED3
+ msgbox PetalburgWoods_Text_19542B, 2
+ end
+
+PetalburgWoods_EventScript_15CEDC:: @ 815CEDC
+ lock
+ faceplayer
+ checkflag 297
+ jumpeq PetalburgWoods_EventScript_15CF0B
+ msgbox PetalburgWoods_Text_19549E, 4
+ giveitem ITEM_MIRACLE_SEED
+ compare RESULT, 0
+ jumpeq PetalburgWoods_EventScript_1A029B
+ setflag 297
+ release
+ end
+
+PetalburgWoods_EventScript_15CF0B:: @ 815CF0B
+ msgbox PetalburgWoods_Text_195503, 4
+ release
+ end
+
+PetalburgWoods_EventScript_15CF15:: @ 815CF15
+ msgbox PetalburgWoods_Text_1955B0, 3
+ end
+
+PetalburgWoods_EventScript_15CF1E:: @ 815CF1E
+ msgbox PetalburgWoods_Text_1956A6, 3
+ end
+
+PetalburgWoods_EventScript_15CF27:: @ 815CF27
+ trainerbattle 0, 616, 0, PetalburgWoods_Text_1951BE, PetalburgWoods_Text_195202
+ msgbox PetalburgWoods_Text_195232, 6
+ end
+
+PetalburgWoods_EventScript_15CF3E:: @ 815CF3E
+ trainerbattle 0, 621, 0, PetalburgWoods_Text_19526A, PetalburgWoods_Text_1952AE
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq PetalburgWoods_EventScript_15CF65
+ msgbox PetalburgWoods_Text_1952CC, 6
+ end
+
+PetalburgWoods_EventScript_15CF65:: @ 815CF65
+ trainerbattle 5, 621, 0, PetalburgWoods_Text_195306, PetalburgWoods_Text_195338
+ msgbox PetalburgWoods_Text_195356, 6
+ end
+
diff --git a/data/maps/scripts/RecordCorner.s b/data/maps/scripts/RecordCorner.s
new file mode 100644
index 000000000..60ea39284
--- /dev/null
+++ b/data/maps/scripts/RecordCorner.s
@@ -0,0 +1,3 @@
+RecordCorner_MapScripts:: @ 815F57E
+ .byte 0
+
diff --git a/data/maps/scripts/Route101.s b/data/maps/scripts/Route101.s
new file mode 100644
index 000000000..a44d0ffd3
--- /dev/null
+++ b/data/maps/scripts/Route101.s
@@ -0,0 +1,236 @@
+Route101_MapScripts:: @ 814E924
+ map_script 3, Route101_MapScript1_14E92F
+ map_script 2, Route101_MapScript2_14E935
+ .byte 0
+
+Route101_MapScript1_14E92F:: @ 814E92F
+ call Route101_EventScript_1A02F4
+ end
+
+Route101_MapScript2_14E935:: @ 814E935
+ map_script_2 0x4060, 0, Route101_EventScript_14E93F
+ .2byte 0
+
+Route101_EventScript_14E93F:: @ 814E93F
+ setflag 0x4000
+ setvar 0x4060, 1
+ end
+
+Route101_EventScript_14E948:: @ 814E948
+ lockall
+ playmusic 410, 1
+ msgbox Route101_Text_16D10E, 4
+ closebutton
+ movesprite 2, 0, 15
+ movesprite 4, 0, 16
+ move 255, Route101_Movement_14EA2C
+ move 2, Route101_Movement_14EA50
+ move 4, Route101_Movement_14EA1F
+ waitmove 0
+ move 4, Route101_Movement_14EA00
+ move 2, Route101_Movement_14EA31
+ waitmove 0
+ move 2, Route101_Movement_1A0843
+ waitmove 0
+ move 4, Route101_Movement_14EA27
+ move 2, Route101_Movement_14EA58
+ waitmove 0
+ msgbox Route101_Text_16D119, 4
+ closebutton
+ setvar 0x4060, 2
+ releaseall
+ end
+
+Route101_EventScript_14E9B8:: @ 814E9B8
+ lockall
+ msgbox Route101_Text_16D15E, 4
+ closebutton
+ move 255, Route101_Movement_14E9FA
+ waitmove 0
+ releaseall
+ end
+
+Route101_EventScript_14E9CE:: @ 814E9CE
+ lockall
+ msgbox Route101_Text_16D15E, 4
+ closebutton
+ move 255, Route101_Movement_14E9FC
+ waitmove 0
+ releaseall
+ end
+
+Route101_EventScript_14E9E4:: @ 814E9E4
+ lockall
+ msgbox Route101_Text_16D15E, 4
+ closebutton
+ move 255, Route101_Movement_14E9FE
+ waitmove 0
+ releaseall
+ end
+
+Route101_Movement_14E9FA:: @ 814E9FA
+ step_up
+ step_end
+
+Route101_Movement_14E9FC:: @ 814E9FC
+ step_right
+ step_end
+
+Route101_Movement_14E9FE:: @ 814E9FE
+ step_down
+ step_end
+
+Route101_Movement_14EA00:: @ 814EA00
+ step_16
+ step_16
+ step_16
+ step_18
+ step_18
+ step_18
+ step_15
+ step_15
+ step_17
+ step_17
+ step_17
+ step_16
+ step_16
+ step_18
+ step_18
+ step_18
+ step_15
+ step_15
+ step_17
+ step_17
+ step_17
+ step_16
+ step_16
+ step_18
+ step_18
+ step_18
+ step_15
+ step_15
+ step_17
+ step_17
+ step_end
+
+Route101_Movement_14EA1F:: @ 814EA1F
+ step_16
+ step_18
+ step_18
+ step_18
+ step_18
+ step_16
+ step_end
+
+ .incbin "baserom.gba", 0x14ea26, 0x1
+
+Route101_Movement_14EA27:: @ 814EA27
+ step_23
+ step_23
+ step_23
+ step_23
+ step_end
+
+Route101_Movement_14EA2C:: @ 814EA2C
+ step_16
+ step_16
+ step_16
+ step_16
+ step_end
+
+Route101_Movement_14EA31:: @ 814EA31
+ step_16
+ step_16
+ step_18
+ step_18
+ step_18
+ step_15
+ step_15
+ step_17
+ step_17
+ step_17
+ step_16
+ step_16
+ step_18
+ step_18
+ step_18
+ step_15
+ step_15
+ step_17
+ step_17
+ step_17
+ step_16
+ step_16
+ step_18
+ step_18
+ step_18
+ step_15
+ step_15
+ step_17
+ step_17
+ step_17
+ step_end
+
+Route101_Movement_14EA50:: @ 814EA50
+ step_18
+ step_18
+ step_18
+ step_18
+ step_16
+ step_16
+ step_end
+
+ .incbin "baserom.gba", 0x14ea57, 0x1
+
+Route101_Movement_14EA58:: @ 814EA58
+ step_24
+ step_24
+ step_24
+ step_24
+ step_end
+
+ .incbin "baserom.gba", 0x14ea5d, 0x7
+
+Route101_EventScript_14EA64:: @ 814EA64
+ msgbox Route101_Text_16D25E, 2
+ end
+
+Route101_EventScript_14EA6D:: @ 814EA6D
+ msgbox Route101_Text_16D2CB, 2
+ end
+
+Route101_EventScript_14EA76:: @ 814EA76
+ msgbox Route101_Text_16D349, 3
+ end
+
+Route101_EventScript_14EA7F:: @ 814EA7F
+ lock
+ faceplayer
+ setflag 2048
+ setflag 82
+ fadescreen 1
+ disappear 4
+ movesprite 255, 6, 13
+ move 255, Route101_Movement_1A083F
+ waitmove 0
+ special 156
+ waitstate
+ move 2, Route101_Movement_14EAD7
+ waitmove 0
+ msgbox Route101_Text_16D191, 4
+ special 0
+ setflag 720
+ clearflag 721
+ setflag 700
+ setvar 0x4084, 2
+ setvar 0x4060, 3
+ clearflag 0x4000
+ warp LittlerootTown_ProfessorBirchsLab, 255, 6, 5
+ waitstate
+ release
+ end
+
+Route101_Movement_14EAD7:: @ 814EAD7
+ step_right
+ step_end
+
diff --git a/data/maps/scripts/Route102.s b/data/maps/scripts/Route102.s
new file mode 100644
index 000000000..09ce6f806
--- /dev/null
+++ b/data/maps/scripts/Route102.s
@@ -0,0 +1,47 @@
+Route102_MapScripts:: @ 814EAD9
+ .byte 0
+
+Route102_EventScript_14EADA:: @ 814EADA
+ msgbox Route102_Text_16D431, 2
+ end
+
+Route102_EventScript_14EAE3:: @ 814EAE3
+ msgbox Route102_Text_16D547, 3
+ end
+
+Route102_EventScript_14EAEC:: @ 814EAEC
+ msgbox Route102_Text_16D55F, 3
+ end
+
+Route102_EventScript_14EAF5:: @ 814EAF5
+ msgbox Route102_Text_16D51A, 2
+ end
+
+Route102_EventScript_14EAFE:: @ 814EAFE
+ trainerbattle 0, 318, 0, Route102_Text_1B79C3, Route102_Text_1B7A2C
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route102_EventScript_14EB25
+ msgbox Route102_Text_1B7A60, 6
+ end
+
+Route102_EventScript_14EB25:: @ 814EB25
+ trainerbattle 5, 318, 0, Route102_Text_1B7A9F, Route102_Text_1B7AFD
+ msgbox Route102_Text_1B7B2F, 6
+ end
+
+Route102_EventScript_14EB3C:: @ 814EB3C
+ trainerbattle 0, 615, 0, Route102_Text_1B7C05, Route102_Text_1B7C40
+ msgbox Route102_Text_1B7C52, 6
+ end
+
+Route102_EventScript_14EB53:: @ 814EB53
+ trainerbattle 0, 603, 0, Route102_Text_1B7C97, Route102_Text_1B7CEC
+ msgbox Route102_Text_1B7D11, 6
+ end
+
+Route102_EventScript_14EB6A:: @ 814EB6A
+ trainerbattle 0, 333, 0, Route102_Text_1B7B68, Route102_Text_1B7B9D
+ msgbox Route102_Text_1B7BD0, 6
+ end
+
diff --git a/data/maps/scripts/Route103.s b/data/maps/scripts/Route103.s
new file mode 100644
index 000000000..ad745ea37
--- /dev/null
+++ b/data/maps/scripts/Route103.s
@@ -0,0 +1,217 @@
+Route103_MapScripts:: @ 814EB81
+ map_script 3, Route103_MapScript1_14EB87
+ .byte 0
+
+Route103_MapScript1_14EB87:: @ 814EB87
+ call Route103_EventScript_1A014E
+ call Route103_EventScript_1A02F4
+ end
+
+Route103_EventScript_14EB92:: @ 814EB92
+ lockall
+ checkgender
+ compare RESULT, 0
+ jumpeq Route103_EventScript_14EBAB
+ compare RESULT, 1
+ jumpeq Route103_EventScript_14EC04
+ end
+
+Route103_EventScript_14EBAB:: @ 814EBAB
+ msgbox Route103_Text_16D57A, 4
+ playmusic 415, 1
+ move 2, Route103_Movement_1A0839
+ waitmove 0
+ move 2, Route103_Movement_1A0833
+ waitmove 0
+ move 2, Route103_Movement_1A0835
+ waitmove 0
+ msgbox Route103_Text_16D5B6, 4
+ switch 0x4023
+ case 0, Route103_EventScript_14EC5D
+ case 1, Route103_EventScript_14EC6D
+ case 2, Route103_EventScript_14EC7D
+ end
+
+Route103_EventScript_14EC04:: @ 814EC04
+ msgbox Route103_Text_16D762, 4
+ playmusic 421, 1
+ move 2, Route103_Movement_1A0839
+ waitmove 0
+ move 2, Route103_Movement_1A0833
+ waitmove 0
+ move 2, Route103_Movement_1A0835
+ waitmove 0
+ msgbox Route103_Text_16D7A9, 4
+ switch 0x4023
+ case 0, Route103_EventScript_14EC8D
+ case 1, Route103_EventScript_14EC9D
+ case 2, Route103_EventScript_14ECAD
+ end
+
+Route103_EventScript_14EC5D:: @ 814EC5D
+ trainerbattle 3, 532, 0, Route103_Text_16D65B
+ jump Route103_EventScript_14ECBD
+ end
+
+Route103_EventScript_14EC6D:: @ 814EC6D
+ trainerbattle 3, 535, 0, Route103_Text_16D65B
+ jump Route103_EventScript_14ECBD
+ end
+
+Route103_EventScript_14EC7D:: @ 814EC7D
+ trainerbattle 3, 529, 0, Route103_Text_16D65B
+ jump Route103_EventScript_14ECBD
+ end
+
+Route103_EventScript_14EC8D:: @ 814EC8D
+ trainerbattle 3, 523, 0, Route103_Text_16D836
+ jump Route103_EventScript_14ECCB
+ end
+
+Route103_EventScript_14EC9D:: @ 814EC9D
+ trainerbattle 3, 526, 0, Route103_Text_16D836
+ jump Route103_EventScript_14ECCB
+ end
+
+Route103_EventScript_14ECAD:: @ 814ECAD
+ trainerbattle 3, 520, 0, Route103_Text_16D836
+ jump Route103_EventScript_14ECCB
+ end
+
+Route103_EventScript_14ECBD:: @ 814ECBD
+ msgbox Route103_Text_16D688, 4
+ jump Route103_EventScript_14ECD9
+ end
+
+Route103_EventScript_14ECCB:: @ 814ECCB
+ msgbox Route103_Text_16D856, 4
+ jump Route103_EventScript_14ECD9
+ end
+
+Route103_EventScript_14ECD9:: @ 814ECD9
+ closebutton
+ switch FACING
+ case 1, Route103_EventScript_14ED29
+ case 2, Route103_EventScript_14ED0C
+ case 3, Route103_EventScript_14ED29
+ case 4, Route103_EventScript_14ED29
+ end
+
+Route103_EventScript_14ED0C:: @ 814ED0C
+ move 2, Route103_Movement_14ED67
+ waitmove 0
+ playsfx 10
+ move 2, Route103_Movement_14ED6B
+ waitmove 0
+ jump Route103_EventScript_14ED46
+ end
+
+Route103_EventScript_14ED29:: @ 814ED29
+ move 2, Route103_Movement_14ED71
+ waitmove 0
+ playsfx 10
+ move 2, Route103_Movement_14ED74
+ waitmove 0
+ jump Route103_EventScript_14ED46
+ end
+
+Route103_EventScript_14ED46:: @ 814ED46
+ disappear 2
+ setvar 0x4062, 1
+ setvar 0x4084, 4
+ clearflag 889
+ setflag 130
+ setvar 0x40c7, 1
+ clearflag 979
+ playmusicbattle 0
+ fadedefault
+ releaseall
+ end
+
+Route103_Movement_14ED67:: @ 814ED67
+ step_left
+ step_down
+ step_down
+ step_end
+
+Route103_Movement_14ED6B:: @ 814ED6B
+ fast_step_down
+ step_14
+ step_down
+ step_down
+ step_down
+ step_end
+
+Route103_Movement_14ED71:: @ 814ED71
+ step_down
+ step_down
+ step_end
+
+Route103_Movement_14ED74:: @ 814ED74
+ fast_step_down
+ step_14
+ step_down
+ step_down
+ step_end
+
+Route103_EventScript_14ED79:: @ 814ED79
+ msgbox Route103_Text_16D950, 2
+ end
+
+Route103_EventScript_14ED82:: @ 814ED82
+ msgbox Route103_Text_16D996, 2
+ end
+
+Route103_EventScript_14ED8B:: @ 814ED8B
+ msgbox Route103_Text_16D9FB, 3
+ end
+
+Route103_EventScript_14ED94:: @ 814ED94
+ trainerbattle 0, 36, 0, Route103_Text_1B7D55, Route103_Text_1B7D8B
+ msgbox Route103_Text_1B7DB2, 6
+ end
+
+Route103_EventScript_14EDAB:: @ 814EDAB
+ trainerbattle 4, 481, 0, Route103_Text_1B7DF7, Route103_Text_1B7E3B, Route103_Text_1B7EAC
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route103_EventScript_14EDD6
+ msgbox Route103_Text_1B7E50, 6
+ end
+
+Route103_EventScript_14EDD6:: @ 814EDD6
+ trainerbattle 7, 481, 0, Route103_Text_1B7FE7, Route103_Text_1B802B, Route103_Text_1B80AF
+ msgbox Route103_Text_1B8053, 6
+ end
+
+Route103_EventScript_14EDF1:: @ 814EDF1
+ trainerbattle 4, 481, 0, Route103_Text_1B7EFB, Route103_Text_1B7F20, Route103_Text_1B7F8E
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route103_EventScript_14EE1C
+ msgbox Route103_Text_1B7F40, 6
+ end
+
+Route103_EventScript_14EE1C:: @ 814EE1C
+ trainerbattle 7, 481, 0, Route103_Text_1B80FE, Route103_Text_1B8123, Route103_Text_1B81A1
+ msgbox Route103_Text_1B814D, 6
+ end
+
+Route103_EventScript_14EE37:: @ 814EE37
+ trainerbattle 0, 336, 0, Route103_Text_1B81FA, Route103_Text_1B8258
+ msgbox Route103_Text_1B8281, 6
+ end
+
+Route103_EventScript_14EE4E:: @ 814EE4E
+ trainerbattle 0, 293, 0, Route103_Text_1B82A9, Route103_Text_1B82EC
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route103_EventScript_14EE75
+ msgbox Route103_Text_1B830D, 6
+ end
+
+Route103_EventScript_14EE75:: @ 814EE75
+ trainerbattle 5, 293, 0, Route103_Text_1B8349, Route103_Text_1B838C
+ msgbox Route103_Text_1B83A4, 6
+ end
+
diff --git a/data/maps/scripts/Route104.s b/data/maps/scripts/Route104.s
new file mode 100644
index 000000000..624646d34
--- /dev/null
+++ b/data/maps/scripts/Route104.s
@@ -0,0 +1,462 @@
+Route104_MapScripts:: @ 814EE8C
+ map_script 2, Route104_MapScript2_14EE97
+ map_script 3, Route104_MapScript1_14EEA8
+ .byte 0
+
+Route104_MapScript2_14EE97:: @ 814EE97
+ map_script_2 0x408e, 1, Route104_EventScript_14EEA1
+ .2byte 0
+
+Route104_EventScript_14EEA1:: @ 814EEA1
+ lockall
+ jump Route104_EventScript_14EFD5
+ end
+
+Route104_MapScript1_14EEA8:: @ 814EEA8
+ call Route104_EventScript_14EEAE
+ end
+
+Route104_EventScript_14EEAE:: @ 814EEAE
+ checkflag 127
+ jumpif 0, Route104_EventScript_14EEC4
+ checkflag 2057
+ jumpif 0, Route104_EventScript_14EEC4
+ clearflag 906
+ return
+
+Route104_EventScript_14EEC4:: @ 814EEC4
+ setflag 906
+ return
+
+Route104_EventScript_14EEC8:: @ 814EEC8
+ lock
+ faceplayer
+ checkflag 246
+ jumpeq Route104_EventScript_14EEFF
+ msgbox Route104_Text_1C55B9, 4
+ giveitem ITEM_CHESTO_BERRY
+ compare RESULT, 0
+ jumpeq Route104_EventScript_1A029B
+ setflag 246
+ msgbox Route104_Text_1C5665, 4
+ release
+ end
+
+Route104_EventScript_14EEFF:: @ 814EEFF
+ msgbox Route104_Text_1C5665, 4
+ release
+ end
+
+Route104_EventScript_14EF09:: @ 814EF09
+ lock
+ faceplayer
+ checkflag 279
+ jumpeq Route104_EventScript_14EF38
+ msgbox Route104_Text_16DD91, 4
+ giveitem ITEM_WHITE_HERB
+ compare RESULT, 0
+ jumpeq Route104_EventScript_1A029B
+ setflag 279
+ release
+ end
+
+Route104_EventScript_14EF38:: @ 814EF38
+ msgbox Route104_Text_16DE36, 4
+ release
+ end
+
+Route104_EventScript_14EF42:: @ 814EF42
+ msgbox Route104_Text_16DA13, 2
+ end
+
+Route104_EventScript_14EF4B:: @ 814EF4B
+ msgbox Route104_Text_16DA89, 3
+ end
+
+Route104_EventScript_14EF54:: @ 814EF54
+ msgbox Route104_Text_16DEB3, 3
+ end
+
+Route104_EventScript_14EF5D:: @ 814EF5D
+ msgbox Route104_Text_16DEC8, 3
+ end
+
+Route104_EventScript_14EF66:: @ 814EF66
+ msgbox Route104_Text_16DEE3, 3
+ end
+
+Route104_EventScript_14EF6F:: @ 814EF6F
+ msgbox Route104_Text_16DEFD, 3
+ end
+
+Route104_EventScript_14EF78:: @ 814EF78
+ msgbox Route104_Text_16DF16, 3
+ end
+
+Route104_EventScript_14EF81:: @ 814EF81
+ msgbox Route104_Text_16DAC9, 2
+ end
+
+Route104_EventScript_14EF8A:: @ 814EF8A
+ msgbox Route104_Text_16DB5C, 2
+ end
+
+Route104_EventScript_14EF93:: @ 814EF93
+ lock
+ faceplayer
+ checkflag 262
+ jumpeq Route104_EventScript_14EFC2
+ msgbox Route104_Text_16DC5F, 4
+ giveitem ITEM_TM09
+ compare RESULT, 0
+ jumpeq Route104_EventScript_1A029B
+ setflag 262
+ release
+ end
+
+Route104_EventScript_14EFC2:: @ 814EFC2
+ msgbox Route104_Text_16DD0E, 4
+ release
+ end
+
+Route104_EventScript_14EFCC:: @ 814EFCC
+ msgbox Route104_Text_16DBC9, 2
+ end
+
+Route104_EventScript_14EFD5:: @ 814EFD5
+ spritelevelup 8, 0, 19, 0
+ spritelevelup 255, 0, 19, 0
+ move 8, Route104_Movement_14F16C
+ waitmove 0
+ disappear 8
+ move 255, Route104_Movement_14F162
+ waitmove 0
+ spriteinvisible 255, 0, 19
+ call Route104_EventScript_1A02E7
+ move 7, Route104_Movement_14F09F
+ move 255, Route104_Movement_14F09F
+ waitmove 0
+ move 255, Route104_Movement_14F166
+ waitmove 0
+ call Route104_EventScript_1A02EF
+ spritevisible 255, 0, 11
+ move 255, Route104_Movement_14F168
+ waitmove 0
+ movespriteperm 2, 12, 8
+ reappear 2
+ spritelevelup 2, 0, 11, 0
+ clearflag 740
+ move 2, Route104_Movement_14F16F
+ waitmove 0
+ reappear 4
+ clearflag 743
+ call Route104_EventScript_1A02EF
+ setflag 742
+ spriteinvisible 7, 0, 19
+ copyvar 0x4096, 0x8008
+ restorespritelevel 255, 0, 19
+ restorespritelevel 2, 0, 11
+ moveoffscreen 2
+ setvar 0x408e, 0
+ checkflag 189
+ jumpif 0, Route104_EventScript_14F08B
+ checkflag 189
+ jumpeq Route104_EventScript_14F095
+ end
+
+Route104_EventScript_14F08B:: @ 814F08B
+ msgbox Route104_Text_16B347, 4
+ releaseall
+ end
+
+Route104_EventScript_14F095:: @ 814F095
+ msgbox Route104_Text_16B4B5, 4
+ releaseall
+ end
+
+Route104_Movement_14F09F:: @ 814F09F
+ step_down
+ step_down
+ step_down
+ step_down
+ step_15
+ step_15
+ step_15
+ step_15
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_15
+ step_15
+ step_15
+ step_15
+ step_18
+ step_18
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_18
+ step_18
+ step_15
+ step_15
+ step_15
+ step_15
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_15
+ step_15
+ step_15
+ step_15
+ step_18
+ step_18
+ step_18
+ step_18
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_30
+ step_18
+ step_18
+ step_18
+ step_18
+ step_right
+ step_right
+ step_down
+ step_down
+ step_15
+ step_15
+ step_15
+ step_15
+ step_15
+ step_15
+ step_15
+ step_15
+ step_15
+ step_15
+ step_15
+ step_15
+ step_15
+ step_15
+ step_15
+ step_down
+ step_down
+ step_end
+
+Route104_Movement_14F162:: @ 814F162
+ step_left
+ step_down
+ step_down
+ step_end
+
+Route104_Movement_14F166:: @ 814F166
+ step_down
+ step_end
+
+Route104_Movement_14F168:: @ 814F168
+ step_down
+ step_left
+ step_28
+ step_end
+
+Route104_Movement_14F16C:: @ 814F16C
+ step_down
+ step_down
+ step_end
+
+Route104_Movement_14F16F:: @ 814F16F
+ step_down
+ step_27
+ step_end
+
+Route104_EventScript_14F172:: @ 814F172
+ trainerbattle 0, 337, 0, Route104_Text_1B85EB, Route104_Text_1B8637
+ msgbox Route104_Text_1B8680, 6
+ end
+
+Route104_EventScript_14F189:: @ 814F189
+ trainerbattle 0, 319, 0, Route104_Text_1B86BE, Route104_Text_1B86E8
+ msgbox Route104_Text_1B871C, 6
+ end
+
+Route104_EventScript_14F1A0:: @ 814F1A0
+ trainerbattle 0, 604, 0, Route104_Text_1B8770, Route104_Text_1B87A7
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route104_EventScript_14F1C7
+ msgbox Route104_Text_1B87C3, 6
+ end
+
+Route104_EventScript_14F1C7:: @ 814F1C7
+ trainerbattle 5, 604, 0, Route104_Text_1B8839, Route104_Text_1B8852
+ msgbox Route104_Text_1B8872, 6
+ end
+
+Route104_EventScript_14F1DE:: @ 814F1DE
+ trainerbattle 0, 136, 0, Route104_Text_1B88D4, Route104_Text_1B8911
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route104_EventScript_14F205
+ msgbox Route104_Text_1B8925, 6
+ end
+
+Route104_EventScript_14F205:: @ 814F205
+ trainerbattle 5, 136, 0, Route104_Text_1B895E, Route104_Text_1B899E
+ msgbox Route104_Text_1B89C0, 6
+ end
+
+Route104_EventScript_14F21C:: @ 814F21C
+ trainerbattle 0, 114, 0, Route104_Text_1B8A24, Route104_Text_1B8A61
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route104_EventScript_14F243
+ msgbox Route104_Text_1B8A69, 6
+ end
+
+Route104_EventScript_14F243:: @ 814F243
+ trainerbattle 5, 114, 0, Route104_Text_1B8AA7, Route104_Text_1B8AD9
+ msgbox Route104_Text_1B8B02, 6
+ end
+
+Route104_EventScript_14F25A:: @ 814F25A
+ trainerbattle 4, 483, 0, Route104_Text_1B83E9, Route104_Text_1B8414, Route104_Text_1B845C
+ special 148
+ msgbox Route104_Text_1B842C, 4
+ release
+ end
+
+Route104_EventScript_14F279:: @ 814F279
+ trainerbattle 4, 483, 0, Route104_Text_1B84DB, Route104_Text_1B850D, Route104_Text_1B8577
+ special 148
+ msgbox Route104_Text_1B853B, 4
+ release
+ end
+
diff --git a/data/maps/scripts/Route104_MrBrineysHouse.s b/data/maps/scripts/Route104_MrBrineysHouse.s
new file mode 100644
index 000000000..592e58ce8
--- /dev/null
+++ b/data/maps/scripts/Route104_MrBrineysHouse.s
@@ -0,0 +1,100 @@
+Route104_MrBrineysHouse_MapScripts:: @ 815BCB2
+ map_script 3, Route104_MrBrineysHouse_MapScript1_15BCB8
+ .byte 0
+
+Route104_MrBrineysHouse_MapScript1_15BCB8:: @ 815BCB8
+ setflag 2109
+ compare 0x4090, 1
+ callif 1, Route104_MrBrineysHouse_EventScript_15BCD4
+ checkflag 188
+ callif 1, Route104_MrBrineysHouse_EventScript_15BCD0
+ end
+
+Route104_MrBrineysHouse_EventScript_15BCD0:: @ 815BCD0
+ setflag 814
+ return
+
+Route104_MrBrineysHouse_EventScript_15BCD4:: @ 815BCD4
+ movespriteperm 1, 9, 3
+ spritebehave 1, 50
+ movespriteperm 2, 9, 6
+ spritebehave 2, 51
+ return
+
+Route104_MrBrineysHouse_EventScript_15BCEB:: @ 815BCEB
+ lock
+ faceplayer
+ checkflag 147
+ callif 0, Route104_MrBrineysHouse_EventScript_15BD0E
+ checkflag 189
+ jumpif 0, Route104_MrBrineysHouse_EventScript_15BD65
+ checkflag 149
+ jumpif 0, Route104_MrBrineysHouse_EventScript_15BD7E
+ jump Route104_MrBrineysHouse_EventScript_15BD32
+ end
+
+Route104_MrBrineysHouse_EventScript_15BD0E:: @ 815BD0E
+ setflag 147
+ msgbox Route104_MrBrineysHouse_Text_191A82, 4
+ msgbox Route104_MrBrineysHouse_Text_191AAD, 5
+ compare RESULT, 0
+ jumpeq Route104_MrBrineysHouse_EventScript_15BD97
+ jump Route104_MrBrineysHouse_EventScript_15BDAB
+ end
+
+Route104_MrBrineysHouse_EventScript_15BD32:: @ 815BD32
+ message Route104_MrBrineysHouse_Text_191E80
+ waittext
+ multichoicedef 21, 8, 14, 1, 0
+ switch RESULT
+ case 0, Route104_MrBrineysHouse_EventScript_15BDAB
+ case 1, Route104_MrBrineysHouse_EventScript_15BDA1
+ case 127, Route104_MrBrineysHouse_EventScript_15BDA1
+ end
+
+Route104_MrBrineysHouse_EventScript_15BD65:: @ 815BD65
+ msgbox Route104_MrBrineysHouse_Text_191CC3, 5
+ compare RESULT, 0
+ jumpeq Route104_MrBrineysHouse_EventScript_15BD97
+ jump Route104_MrBrineysHouse_EventScript_15BDAB
+ end
+
+Route104_MrBrineysHouse_EventScript_15BD7E:: @ 815BD7E
+ msgbox Route104_MrBrineysHouse_Text_191DA6, 5
+ compare RESULT, 0
+ jumpeq Route104_MrBrineysHouse_EventScript_15BD97
+ jump Route104_MrBrineysHouse_EventScript_15BDAB
+ end
+
+Route104_MrBrineysHouse_EventScript_15BD97:: @ 815BD97
+ msgbox Route104_MrBrineysHouse_Text_191C57, 4
+ release
+ end
+
+Route104_MrBrineysHouse_EventScript_15BDA1:: @ 815BDA1
+ msgbox Route104_MrBrineysHouse_Text_191EDB, 4
+ release
+ end
+
+Route104_MrBrineysHouse_EventScript_15BDAB:: @ 815BDAB
+ msgbox Route104_MrBrineysHouse_Text_191BFD, 4
+ call Route104_MrBrineysHouse_EventScript_1A010C
+ setvar 0x408e, 1
+ clearflag 738
+ setflag 739
+ setflag 881
+ warp Route104, 255, 13, 51
+ waitstate
+ releaseall
+ end
+
+Route104_MrBrineysHouse_EventScript_15BDD1:: @ 815BDD1
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_WINGULL, 0
+ msgbox Route104_MrBrineysHouse_Text_191FB9, 4
+ waitpokecry
+ release
+ end
+
diff --git a/data/maps/scripts/Route104_PrettyPetalFlowerShop.s b/data/maps/scripts/Route104_PrettyPetalFlowerShop.s
new file mode 100644
index 000000000..18c4f85b7
--- /dev/null
+++ b/data/maps/scripts/Route104_PrettyPetalFlowerShop.s
@@ -0,0 +1,111 @@
+Route104_PrettyPetalFlowerShop_MapScripts:: @ 815BDE4
+ map_script 3, Route104_PrettyPetalFlowerShop_MapScript1_15BDEA
+ .byte 0
+
+Route104_PrettyPetalFlowerShop_MapScript1_15BDEA:: @ 815BDEA
+ setflag 2108
+ checkflag 127
+ jumpif 0, Route104_PrettyPetalFlowerShop_EventScript_15BE03
+ checkflag 2057
+ jumpif 0, Route104_PrettyPetalFlowerShop_EventScript_15BE03
+ setflag 1
+ end
+
+Route104_PrettyPetalFlowerShop_EventScript_15BE03:: @ 815BE03
+ movespriteperm 1, 4, 6
+ end
+
+Route104_PrettyPetalFlowerShop_EventScript_15BE0B:: @ 815BE0B
+ lock
+ faceplayer
+ checkflag 1
+ jumpeq Route104_PrettyPetalFlowerShop_EventScript_15BE7C
+ msgbox Route104_PrettyPetalFlowerShop_Text_1C5EC6, 4
+ checkflag 127
+ jumpeq Route104_PrettyPetalFlowerShop_EventScript_15BE4A
+ setflag 127
+ msgbox Route104_PrettyPetalFlowerShop_Text_1C5F48, 5
+ compare RESULT, 1
+ callif 1, Route104_PrettyPetalFlowerShop_EventScript_15BE6A
+ compare RESULT, 0
+ callif 1, Route104_PrettyPetalFlowerShop_EventScript_15BE73
+ release
+ end
+
+Route104_PrettyPetalFlowerShop_EventScript_15BE4A:: @ 815BE4A
+ msgbox Route104_PrettyPetalFlowerShop_Text_1C5F1B, 5
+ compare RESULT, 1
+ callif 1, Route104_PrettyPetalFlowerShop_EventScript_15BE6A
+ compare RESULT, 0
+ callif 1, Route104_PrettyPetalFlowerShop_EventScript_15BE73
+ release
+ end
+
+Route104_PrettyPetalFlowerShop_EventScript_15BE6A:: @ 815BE6A
+ msgbox Route104_PrettyPetalFlowerShop_Text_1C5F9D, 4
+ return
+
+Route104_PrettyPetalFlowerShop_EventScript_15BE73:: @ 815BE73
+ msgbox Route104_PrettyPetalFlowerShop_Text_1C6121, 4
+ return
+
+Route104_PrettyPetalFlowerShop_EventScript_15BE7C:: @ 815BE7C
+ message Route104_PrettyPetalFlowerShop_Text_1A0C42
+ waittext
+ pokemartbp Route104_PrettyPetalFlowerShop_Pokemart_15BE94
+ msgbox Route104_PrettyPetalFlowerShop_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x15be91, 0x3
+
+Route104_PrettyPetalFlowerShop_Pokemart_15BE94:: @ 815BE94
+ .2byte ITEM_FULL_RESTORE
+ .2byte ITEM_MAX_POTION
+ .2byte ITEM_HYPER_POTION
+ .2byte ITEM_SUPER_POTION
+ .2byte ITEM_FULL_HEAL
+ .2byte ITEM_REVIVE
+ .2byte ITEM_NONE
+ release
+ end
+
+Route104_PrettyPetalFlowerShop_EventScript_15BEA4:: @ 815BEA4
+ lock
+ faceplayer
+ checkflag 94
+ jumpif 0, Route104_PrettyPetalFlowerShop_EventScript_15BEB9
+ msgbox Route104_PrettyPetalFlowerShop_Text_1C61E8, 4
+ release
+ end
+
+Route104_PrettyPetalFlowerShop_EventScript_15BEB9:: @ 815BEB9
+ msgbox Route104_PrettyPetalFlowerShop_Text_1C6158, 4
+ giveitem ITEM_WAILMER_PAIL
+ msgbox Route104_PrettyPetalFlowerShop_Text_1C61E8, 4
+ setflag 94
+ release
+ end
+
+Route104_PrettyPetalFlowerShop_EventScript_15BEDA:: @ 815BEDA
+ lock
+ faceplayer
+ checkdailyflags
+ checkflag 2256
+ jumpeq Route104_PrettyPetalFlowerShop_EventScript_15BF1A
+ msgbox Route104_PrettyPetalFlowerShop_Text_1C62DA, 4
+ random 8
+ addvar RESULT, 133
+ giveitem RESULT
+ compare RESULT, 0
+ jumpeq Route104_PrettyPetalFlowerShop_EventScript_1A029B
+ setflag 2256
+ msgbox Route104_PrettyPetalFlowerShop_Text_1C6335, 4
+ release
+ end
+
+Route104_PrettyPetalFlowerShop_EventScript_15BF1A:: @ 815BF1A
+ msgbox Route104_PrettyPetalFlowerShop_Text_1C6335, 4
+ release
+ end
+
diff --git a/data/maps/scripts/Route104_Prototype.s b/data/maps/scripts/Route104_Prototype.s
new file mode 100644
index 000000000..71022f23f
--- /dev/null
+++ b/data/maps/scripts/Route104_Prototype.s
@@ -0,0 +1,113 @@
+Route104_Prototype_MapScripts:: @ 8160C4A
+ .byte 0
+
+Route104_Prototype_EventScript_160C4B:: @ 8160C4B
+ lock
+ faceplayer
+ checktrainerflag 116
+ jumpif 0, Route104_Prototype_EventScript_160C99
+ checktrainerflag 117
+ jumpif 0, Route104_Prototype_EventScript_160C99
+ checktrainerflag 485
+ jumpif 0, Route104_Prototype_EventScript_160C99
+ checktrainerflag 486
+ jumpif 0, Route104_Prototype_EventScript_160C99
+ checktrainerflag 633
+ jumpif 0, Route104_Prototype_EventScript_160C99
+ checktrainerflag 634
+ jumpif 0, Route104_Prototype_EventScript_160C99
+ setflag 215
+ msgbox Route104_Prototype_Text_19B267, 4
+ checkflag 216
+ jumpeq Route104_Prototype_EventScript_160CFB
+ release
+ end
+
+Route104_Prototype_EventScript_160C99:: @ 8160C99
+ msgbox Route104_Prototype_Text_19B22E, 4
+ release
+ end
+
+Route104_Prototype_EventScript_160CA3:: @ 8160CA3
+ lock
+ faceplayer
+ checktrainerflag 116
+ jumpif 0, Route104_Prototype_EventScript_160CF1
+ checktrainerflag 117
+ jumpif 0, Route104_Prototype_EventScript_160CF1
+ checktrainerflag 485
+ jumpif 0, Route104_Prototype_EventScript_160CF1
+ checktrainerflag 486
+ jumpif 0, Route104_Prototype_EventScript_160CF1
+ checktrainerflag 633
+ jumpif 0, Route104_Prototype_EventScript_160CF1
+ checktrainerflag 634
+ jumpif 0, Route104_Prototype_EventScript_160CF1
+ setflag 216
+ msgbox Route104_Prototype_Text_19B2E9, 4
+ checkflag 215
+ jumpeq Route104_Prototype_EventScript_160CFB
+ release
+ end
+
+Route104_Prototype_EventScript_160CF1:: @ 8160CF1
+ msgbox Route104_Prototype_Text_19B2B6, 4
+ release
+ end
+
+Route104_Prototype_EventScript_160CFB:: @ 8160CFB
+ closebutton
+ pause 60
+ fadescreen 1
+ pause 60
+ special 271
+ waitstate
+ release
+ end
+
+Route104_Prototype_EventScript_160D0A:: @ 8160D0A
+ msgbox Route104_Prototype_Text_19B33B, 2
+ end
+
+Route104_Prototype_EventScript_160D13:: @ 8160D13
+ msgbox Route104_Prototype_Text_19B37F, 2
+ end
+
+Route104_Prototype_EventScript_160D1C:: @ 8160D1C
+ msgbox Route104_Prototype_Text_19B3DE, 3
+ end
+
+Route104_Prototype_EventScript_160D25:: @ 8160D25
+ msgbox Route104_Prototype_Text_19B3FF, 3
+ end
+
+Route104_Prototype_EventScript_160D2E:: @ 8160D2E
+ trainerbattle 0, 117, 0, Route104_Prototype_Text_19AD9B, Route104_Prototype_Text_19ADDA
+ msgbox Route104_Prototype_Text_19ADF7, 6
+ end
+
+Route104_Prototype_EventScript_160D45:: @ 8160D45
+ trainerbattle 4, 485, 0, Route104_Prototype_Text_19AE3E, Route104_Prototype_Text_19AE53, Route104_Prototype_Text_19AEA9
+ msgbox Route104_Prototype_Text_19AE6A, 6
+ end
+
+Route104_Prototype_EventScript_160D60:: @ 8160D60
+ trainerbattle 4, 486, 0, Route104_Prototype_Text_19B148, Route104_Prototype_Text_19B17D, Route104_Prototype_Text_19B1DD
+ msgbox Route104_Prototype_Text_19B18D, 6
+ end
+
+Route104_Prototype_EventScript_160D7B:: @ 8160D7B
+ trainerbattle 0, 634, 0, Route104_Prototype_Text_19AEFB, Route104_Prototype_Text_19AF3E
+ msgbox Route104_Prototype_Text_19AF56, 6
+ end
+
+Route104_Prototype_EventScript_160D92:: @ 8160D92
+ trainerbattle 0, 116, 0, Route104_Prototype_Text_19AF8A, Route104_Prototype_Text_19AFDB
+ msgbox Route104_Prototype_Text_19B00D, 6
+ end
+
+Route104_Prototype_EventScript_160DA9:: @ 8160DA9
+ trainerbattle 0, 633, 0, Route104_Prototype_Text_19B066, Route104_Prototype_Text_19B0D7
+ msgbox Route104_Prototype_Text_19B0EF, 6
+ end
+
diff --git a/data/maps/scripts/Route104_PrototypePrettyPetalFlowerShop.s b/data/maps/scripts/Route104_PrototypePrettyPetalFlowerShop.s
new file mode 100644
index 000000000..ce5355d8a
--- /dev/null
+++ b/data/maps/scripts/Route104_PrototypePrettyPetalFlowerShop.s
@@ -0,0 +1,7 @@
+Route104_PrototypePrettyPetalFlowerShop_MapScripts:: @ 8160DC0
+ .byte 0
+
+Route104_PrototypePrettyPetalFlowerShop_EventScript_160DC1:: @ 8160DC1
+ msgbox Route104_PrototypePrettyPetalFlowerShop_Text_19B436, 2
+ end
+
diff --git a/data/maps/scripts/Route105.s b/data/maps/scripts/Route105.s
new file mode 100644
index 000000000..391b31e34
--- /dev/null
+++ b/data/maps/scripts/Route105.s
@@ -0,0 +1,39 @@
+Route105_MapScripts:: @ 814F298
+ map_script 1, Route105_MapScript1_14F29E
+ .byte 0
+
+Route105_MapScript1_14F29E:: @ 814F29E
+ checkflag 228
+ callif 0, Route105_EventScript_14F2A8
+ end
+
+Route105_EventScript_14F2A8:: @ 814F2A8
+ setmaptile 9, 19, 124, 1
+ setmaptile 9, 20, 145, 1
+ return
+
+Route105_EventScript_14F2BB:: @ 814F2BB
+ trainerbattle 0, 46, 0, Route105_Text_1B8B40, Route105_Text_1B8B93
+ msgbox Route105_Text_1B8BDE, 6
+ end
+
+Route105_EventScript_14F2D2:: @ 814F2D2
+ trainerbattle 0, 151, 0, Route105_Text_1B8C28, Route105_Text_1B8C99
+ msgbox Route105_Text_1B8CA9, 6
+ end
+
+Route105_EventScript_14F2E9:: @ 814F2E9
+ trainerbattle 0, 152, 0, Route105_Text_1B8CEE, Route105_Text_1B8D23
+ msgbox Route105_Text_1B8D45, 6
+ end
+
+Route105_EventScript_14F300:: @ 814F300
+ trainerbattle 0, 441, 0, Route105_Text_1B8D99, Route105_Text_1B8DDD
+ msgbox Route105_Text_1B8DED, 6
+ end
+
+Route105_EventScript_14F317:: @ 814F317
+ trainerbattle 0, 442, 0, Route105_Text_1B8E66, Route105_Text_1B8EA0
+ msgbox Route105_Text_1B8EBD, 6
+ end
+
diff --git a/data/maps/scripts/Route106.s b/data/maps/scripts/Route106.s
new file mode 100644
index 000000000..c7c9820cd
--- /dev/null
+++ b/data/maps/scripts/Route106.s
@@ -0,0 +1,35 @@
+Route106_MapScripts:: @ 814F32E
+ .byte 0
+
+Route106_EventScript_14F32F:: @ 814F32F
+ msgbox Route106_Text_16E026, 3
+ end
+
+Route106_EventScript_14F338:: @ 814F338
+ trainerbattle 0, 153, 0, Route106_Text_1B913D, Route106_Text_1B917F
+ msgbox Route106_Text_1B918A, 6
+ end
+
+Route106_EventScript_14F34F:: @ 814F34F
+ trainerbattle 0, 443, 0, Route106_Text_1B91AC, Route106_Text_1B91F8
+ msgbox Route106_Text_1B9222, 6
+ end
+
+Route106_EventScript_14F366:: @ 814F366
+ trainerbattle 0, 339, 0, Route106_Text_1B8EF0, Route106_Text_1B8F25
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route106_EventScript_14F38D
+ msgbox Route106_Text_1B8F55, 6
+ end
+
+Route106_EventScript_14F38D:: @ 814F38D
+ trainerbattle 5, 339, 0, Route106_Text_1B8FAC, Route106_Text_1B8FF5
+ msgbox Route106_Text_1B9011, 6
+ end
+
+Route106_EventScript_14F3A4:: @ 814F3A4
+ trainerbattle 0, 340, 0, Route106_Text_1B9052, Route106_Text_1B90D3
+ msgbox Route106_Text_1B910A, 6
+ end
+
diff --git a/data/maps/scripts/Route107.s b/data/maps/scripts/Route107.s
new file mode 100644
index 000000000..c50eec6a1
--- /dev/null
+++ b/data/maps/scripts/Route107.s
@@ -0,0 +1,41 @@
+Route107_MapScripts:: @ 814F3BB
+ .byte 0
+
+Route107_EventScript_14F3BC:: @ 814F3BC
+ trainerbattle 0, 154, 0, Route107_Text_1B926B, Route107_Text_1B92B7
+ msgbox Route107_Text_1B92E7, 6
+ end
+
+Route107_EventScript_14F3D3:: @ 814F3D3
+ trainerbattle 0, 155, 0, Route107_Text_1B933A, Route107_Text_1B9365
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route107_EventScript_14F3FA
+ msgbox Route107_Text_1B938E, 6
+ end
+
+Route107_EventScript_14F3FA:: @ 814F3FA
+ trainerbattle 5, 155, 0, Route107_Text_1B93EB, Route107_Text_1B9429
+ msgbox Route107_Text_1B9477, 6
+ end
+
+Route107_EventScript_14F411:: @ 814F411
+ trainerbattle 0, 444, 0, Route107_Text_1B94C8, Route107_Text_1B94F2
+ msgbox Route107_Text_1B94FF, 6
+ end
+
+Route107_EventScript_14F428:: @ 814F428
+ trainerbattle 0, 445, 0, Route107_Text_1B9538, Route107_Text_1B956B
+ msgbox Route107_Text_1B9589, 6
+ end
+
+Route107_EventScript_14F43F:: @ 814F43F
+ trainerbattle 4, 692, 0, Route107_Text_1B95CB, Route107_Text_1B95FB, Route107_Text_1B9672
+ msgbox Route107_Text_1B9630, 6
+ end
+
+Route107_EventScript_14F45A:: @ 814F45A
+ trainerbattle 4, 692, 0, Route107_Text_1B96AB, Route107_Text_1B9707, Route107_Text_1B9788
+ msgbox Route107_Text_1B9735, 6
+ end
+
diff --git a/data/maps/scripts/Route108.s b/data/maps/scripts/Route108.s
new file mode 100644
index 000000000..70a852195
--- /dev/null
+++ b/data/maps/scripts/Route108.s
@@ -0,0 +1,23 @@
+Route108_MapScripts:: @ 814F475
+ .byte 0
+
+Route108_EventScript_14F476:: @ 814F476
+ trainerbattle 0, 156, 0, Route108_Text_1B97C3, Route108_Text_1B97EF
+ msgbox Route108_Text_1B9823, 6
+ end
+
+Route108_EventScript_14F48D:: @ 814F48D
+ trainerbattle 0, 157, 0, Route108_Text_1B9864, Route108_Text_1B989F
+ msgbox Route108_Text_1B98BC, 6
+ end
+
+Route108_EventScript_14F4A4:: @ 814F4A4
+ trainerbattle 0, 446, 0, Route108_Text_1B98EC, Route108_Text_1B992C
+ msgbox Route108_Text_1B9935, 6
+ end
+
+Route108_EventScript_14F4BB:: @ 814F4BB
+ trainerbattle 0, 447, 0, Route108_Text_1B9986, Route108_Text_1B99BB
+ msgbox Route108_Text_1B99E9, 6
+ end
+
diff --git a/data/maps/scripts/Route109.s b/data/maps/scripts/Route109.s
new file mode 100644
index 000000000..39def243c
--- /dev/null
+++ b/data/maps/scripts/Route109.s
@@ -0,0 +1,447 @@
+Route109_MapScripts:: @ 814F4D2
+ .byte 0
+
+Route109_EventScript_14F4D3:: @ 814F4D3
+ call Route109_EventScript_1A010C
+ spritelevelup 2, 0, 24, 0
+ spritelevelup 255, 0, 24, 0
+ move 2, Route109_Movement_14F67B
+ waitmove 0
+ disappear 2
+ switch FACING
+ case 1, Route109_EventScript_14F518
+ case 3, Route109_EventScript_14F538
+ case 4, Route109_EventScript_14F528
+ end
+
+Route109_EventScript_14F518:: @ 814F518
+ move 255, Route109_Movement_14F66D
+ waitmove 0
+ jump Route109_EventScript_14F548
+ end
+
+Route109_EventScript_14F528:: @ 814F528
+ move 255, Route109_Movement_14F675
+ waitmove 0
+ jump Route109_EventScript_14F548
+ end
+
+Route109_EventScript_14F538:: @ 814F538
+ move 255, Route109_Movement_14F678
+ waitmove 0
+ jump Route109_EventScript_14F548
+ end
+
+Route109_EventScript_14F548:: @ 814F548
+ spriteinvisible 255, 0, 24
+ call Route109_EventScript_1A02E7
+ move 1, Route109_Movement_14F5BF
+ move 255, Route109_Movement_14F5BF
+ waitmove 0
+ call Route109_EventScript_1A02EF
+ spritevisible 255, 0, 11
+ move 255, Route109_Movement_14F670
+ waitmove 0
+ reappear 4
+ clearflag 743
+ movespriteperm 2, 12, 8
+ reappear 2
+ spritelevelup 2, 0, 11, 0
+ move 2, Route109_Movement_14F67D
+ waitmove 0
+ clearflag 740
+ setflag 744
+ spriteinvisible 1, 0, 24
+ msgbox Route109_Text_16B4B5, 4
+ closebutton
+ copyvar 0x4096, 0x8008
+ restorespritelevel 255, 0, 24
+ restorespritelevel 2, 0, 11
+ moveoffscreen 2
+ release
+ end
+
+Route109_Movement_14F5BF:: @ 814F5BF
+ step_25
+ step_down
+ step_down
+ step_15
+ step_15
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_2d
+ step_15
+ step_15
+ step_17
+ step_17
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_2f
+ step_17
+ step_17
+ step_17
+ step_17
+ step_17
+ step_17
+ step_17
+ step_17
+ step_17
+ step_left
+ step_left
+ step_25
+ step_end
+
+Route109_Movement_14F66D:: @ 814F66D
+ step_down
+ step_down
+ step_end
+
+Route109_Movement_14F670:: @ 814F670
+ step_down
+ step_down
+ step_left
+ step_28
+ step_end
+
+Route109_Movement_14F675:: @ 814F675
+ step_right
+ step_down
+ step_end
+
+Route109_Movement_14F678:: @ 814F678
+ step_left
+ step_down
+ step_end
+
+Route109_Movement_14F67B:: @ 814F67B
+ step_down
+ step_end
+
+Route109_Movement_14F67D:: @ 814F67D
+ step_down
+ step_27
+ step_end
+
+Route109_EventScript_14F680:: @ 814F680
+ lock
+ faceplayer
+ checkflag 149
+ jumpif 0, Route109_EventScript_14F691
+ jump Route109_EventScript_14F6AF
+ end
+
+Route109_EventScript_14F691:: @ 814F691
+ message Route109_Text_16E0F9
+ msgbox Route109_Text_16E0F9, 5
+ compare RESULT, 0
+ jumpeq Route109_EventScript_14F6F1
+ jump Route109_EventScript_14F6E2
+ end
+
+Route109_EventScript_14F6AF:: @ 814F6AF
+ message Route109_Text_16E26A
+ waittext
+ multichoicedef 21, 8, 14, 1, 0
+ switch RESULT
+ case 0, Route109_EventScript_14F6E2
+ case 1, Route109_EventScript_14F6FB
+ case 127, Route109_EventScript_14F6FB
+ end
+
+Route109_EventScript_14F6E2:: @ 814F6E2
+ msgbox Route109_Text_16E159, 4
+ closebutton
+ jump Route109_EventScript_14F4D3
+ end
+
+Route109_EventScript_14F6F1:: @ 814F6F1
+ msgbox Route109_Text_16E1B1, 4
+ release
+ end
+
+Route109_EventScript_14F6FB:: @ 814F6FB
+ msgbox Route109_Text_16E2C5, 4
+ release
+ end
+
+Route109_EventScript_14F705:: @ 814F705
+ msgbox Route109_Text_16E307, 2
+ end
+
+Route109_EventScript_14F70E:: @ 814F70E
+ lock
+ faceplayer
+ msgbox Route109_Text_16E405, 4
+ closebutton
+ move LAST_TALKED, Route109_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+Route109_EventScript_14F725:: @ 814F725
+ lock
+ faceplayer
+ special 148
+ checkflag 280
+ jumpeq Route109_EventScript_14F762
+ msgbox Route109_Text_16E433, 4
+ giveitem ITEM_SOFT_SAND
+ compare RESULT, 0
+ jumpeq Route109_EventScript_1A029B
+ closebutton
+ move LAST_TALKED, Route109_Movement_1A083D
+ waitmove 0
+ setflag 280
+ release
+ end
+
+Route109_EventScript_14F762:: @ 814F762
+ msgbox Route109_Text_16E446, 4
+ move LAST_TALKED, Route109_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+Route109_EventScript_14F776:: @ 814F776
+ msgbox Route109_Text_16E35B, 2
+ end
+
+Route109_EventScript_14F77F:: @ 814F77F
+ msgbox Route109_Text_16E4D5, 2
+ end
+
+Route109_EventScript_14F788:: @ 814F788
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_ZIGZAGOON, 0
+ msgbox Route109_Text_16E5CA, 4
+ waitpokecry
+ release
+ end
+
+Route109_EventScript_14F79B:: @ 814F79B
+ msgbox Route109_Text_16E5DC, 3
+ end
+
+Route109_EventScript_14F7A4:: @ 814F7A4
+ msgbox Route109_Text_16E62C, 3
+ end
+
+Route109_EventScript_14F7AD:: @ 814F7AD
+ trainerbattle 0, 158, 0, Route109_Text_1B9A1C, Route109_Text_1B9A59
+ msgbox Route109_Text_1B9A6D, 6
+ end
+
+Route109_EventScript_14F7C4:: @ 814F7C4
+ trainerbattle 0, 448, 0, Route109_Text_1B9AAD, Route109_Text_1B9AD9
+ msgbox Route109_Text_1B9AEB, 6
+ end
+
+Route109_EventScript_14F7DB:: @ 814F7DB
+ trainerbattle 0, 490, 0, Route109_Text_1B9B11, Route109_Text_1B9B57
+ msgbox Route109_Text_1B9B68, 6
+ end
+
+Route109_EventScript_14F7F2:: @ 814F7F2
+ trainerbattle 0, 491, 0, Route109_Text_1B9B91, Route109_Text_1B9BAE
+ msgbox Route109_Text_1B9BD3, 6
+ end
+
+Route109_EventScript_14F809:: @ 814F809
+ trainerbattle 0, 64, 0, Route109_Text_1B9C23, Route109_Text_1B9C65
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route109_EventScript_14F830
+ msgbox Route109_Text_1B9C6E, 6
+ end
+
+Route109_EventScript_14F830:: @ 814F830
+ trainerbattle 5, 64, 0, Route109_Text_1B9CB3, Route109_Text_1B9CEB
+ msgbox Route109_Text_1B9D10, 6
+ end
+
+Route109_EventScript_14F847:: @ 814F847
+ trainerbattle 0, 57, 0, Route109_Text_1B9D54, Route109_Text_1B9D87
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route109_EventScript_14F86E
+ msgbox Route109_Text_1B9D8E, 6
+ end
+
+Route109_EventScript_14F86E:: @ 814F86E
+ trainerbattle 5, 57, 0, Route109_Text_1B9DD8, Route109_Text_1B9E16
+ msgbox Route109_Text_1B9E1D, 6
+ end
+
+Route109_EventScript_14F885:: @ 814F885
+ trainerbattle 0, 58, 0, Route109_Text_1B9E60, Route109_Text_1B9EA1
+ msgbox Route109_Text_1B9ECA, 6
+ end
+
+Route109_EventScript_14F89C:: @ 814F89C
+ trainerbattle 0, 59, 0, Route109_Text_1B9F07, Route109_Text_1B9F31
+ msgbox Route109_Text_1B9F44, 6
+ end
+
+Route109_EventScript_14F8B3:: @ 814F8B3
+ trainerbattle 0, 345, 0, Route109_Text_1B9F65, Route109_Text_1B9F9C
+ msgbox Route109_Text_1B9FB7, 6
+ end
+
+Route109_EventScript_14F8CA:: @ 814F8CA
+ trainerbattle 4, 680, 0, Route109_Text_1B9FF6, Route109_Text_1BA052, Route109_Text_1BA0BF
+ msgbox Route109_Text_1BA069, 6
+ end
+
+Route109_EventScript_14F8E5:: @ 814F8E5
+ trainerbattle 4, 680, 0, Route109_Text_1BA114, Route109_Text_1BA15F, Route109_Text_1BA1D0
+ msgbox Route109_Text_1BA193, 6
+ end
+
diff --git a/data/maps/scripts/Route109_SeashoreHouse.s b/data/maps/scripts/Route109_SeashoreHouse.s
new file mode 100644
index 000000000..aa9d55919
--- /dev/null
+++ b/data/maps/scripts/Route109_SeashoreHouse.s
@@ -0,0 +1,110 @@
+Route109_SeashoreHouse_MapScripts:: @ 8160DCA
+ map_script 3, Route109_SeashoreHouse_MapScript1_160DD0
+ .byte 0
+
+Route109_SeashoreHouse_MapScript1_160DD0:: @ 8160DD0
+ setflag 2111
+ end
+
+Route109_SeashoreHouse_EventScript_160DD4:: @ 8160DD4
+ lock
+ faceplayer
+ checkflag 140
+ jumpeq Route109_SeashoreHouse_EventScript_160E36
+ checkflag 141
+ jumpeq Route109_SeashoreHouse_EventScript_160E08
+ checkflag 2
+ jumpeq Route109_SeashoreHouse_EventScript_160DFE
+ msgbox Route109_SeashoreHouse_Text_19B4D9, 4
+ setflag 2
+ release
+ end
+
+Route109_SeashoreHouse_EventScript_160DFE:: @ 8160DFE
+ msgbox Route109_SeashoreHouse_Text_19B5B9, 4
+ release
+ end
+
+Route109_SeashoreHouse_EventScript_160E08:: @ 8160E08
+ msgbox Route109_SeashoreHouse_Text_19B609, 4
+ giveitem ITEM_SODA_POP, 6
+ compare RESULT, 0
+ jumpeq Route109_SeashoreHouse_EventScript_160E2C
+ setflag 140
+ release
+ end
+
+Route109_SeashoreHouse_EventScript_160E2C:: @ 8160E2C
+ msgbox Route109_SeashoreHouse_Text_19B6BE, 4
+ release
+ end
+
+Route109_SeashoreHouse_EventScript_160E36:: @ 8160E36
+ showmoney 0, 0
+ snop
+ msgbox Route109_SeashoreHouse_Text_19B702, 5
+ compare RESULT, 1
+ jumpeq Route109_SeashoreHouse_EventScript_160E5A
+ msgbox Route109_SeashoreHouse_Text_19B773, 4
+ hidemoney 0, 0
+ release
+ end
+
+Route109_SeashoreHouse_EventScript_160E5A:: @ 8160E5A
+ checkmoney 0x12c, 0
+ compare RESULT, 0
+ jumpeq Route109_SeashoreHouse_EventScript_160E9E
+ checkitemspace ITEM_SODA_POP, 1
+ compare RESULT, 0
+ jumpeq Route109_SeashoreHouse_EventScript_160EAB
+ msgbox Route109_SeashoreHouse_Text_19B74C, 4
+ paymoney 0x12c, 0
+ updatemoney 0, 0
+ snop
+ giveitem ITEM_SODA_POP
+ hidemoney 0, 0
+ release
+ end
+
+Route109_SeashoreHouse_EventScript_160E9E:: @ 8160E9E
+ msgbox Route109_SeashoreHouse_Text_19B759, 4
+ hidemoney 0, 0
+ release
+ end
+
+Route109_SeashoreHouse_EventScript_160EAB:: @ 8160EAB
+ msgbox Route109_SeashoreHouse_Text_1A0CC2, 4
+ hidemoney 0, 0
+ release
+ end
+
+Route109_SeashoreHouse_EventScript_160EB8:: @ 8160EB8
+ trainerbattle 2, 493, 0, Route109_SeashoreHouse_Text_19B809, Route109_SeashoreHouse_Text_19B869, Route109_SeashoreHouse_EventScript_160F09
+ msgbox Route109_SeashoreHouse_Text_19B89F, 6
+ end
+
+Route109_SeashoreHouse_EventScript_160ED3:: @ 8160ED3
+ trainerbattle 2, 647, 0, Route109_SeashoreHouse_Text_19B8E5, Route109_SeashoreHouse_Text_19B949, Route109_SeashoreHouse_EventScript_160F09
+ msgbox Route109_SeashoreHouse_Text_19B955, 6
+ end
+
+Route109_SeashoreHouse_EventScript_160EEE:: @ 8160EEE
+ trainerbattle 2, 65, 0, Route109_SeashoreHouse_Text_19B988, Route109_SeashoreHouse_Text_19B9C7, Route109_SeashoreHouse_EventScript_160F09
+ msgbox Route109_SeashoreHouse_Text_19B9E5, 6
+ end
+
+Route109_SeashoreHouse_EventScript_160F09:: @ 8160F09
+ checktrainerflag 493
+ jumpif 0, Route109_SeashoreHouse_EventScript_160F29
+ checktrainerflag 647
+ jumpif 0, Route109_SeashoreHouse_EventScript_160F29
+ checktrainerflag 65
+ jumpif 0, Route109_SeashoreHouse_EventScript_160F29
+ setflag 141
+ release
+ end
+
+Route109_SeashoreHouse_EventScript_160F29:: @ 8160F29
+ release
+ end
+
diff --git a/data/maps/scripts/Route110.s b/data/maps/scripts/Route110.s
new file mode 100644
index 000000000..53b2c8172
--- /dev/null
+++ b/data/maps/scripts/Route110.s
@@ -0,0 +1,540 @@
+Route110_MapScripts:: @ 814F900
+ map_script 5, Route110_MapScript1_14F910
+ map_script 3, Route110_MapScript1_14F914
+ map_script 2, Route110_MapScript2_14F933
+ .byte 0
+
+Route110_MapScript1_14F910:: @ 814F910
+ special 229
+ end
+
+Route110_MapScript1_14F914:: @ 814F914
+ call Route110_EventScript_1A0196
+ call Route110_EventScript_1A014E
+ call Route110_EventScript_1A0172
+ compare 0x40a9, 1
+ callif 1, Route110_EventScript_14F92F
+ end
+
+Route110_EventScript_14F92F:: @ 814F92F
+ playmusicbattle 403
+ return
+
+Route110_MapScript2_14F933:: @ 814F933
+ map_script_2 0x40a9, 1, Route110_EventScript_14F93D
+ .2byte 0
+
+Route110_EventScript_14F93D:: @ 814F93D
+ special 226
+ setvar 0x40a9, 2
+ return
+
+Route110_EventScript_14F946:: @ 814F946
+ lock
+ faceplayer
+ msgbox Route110_Text_16E6C0, 4
+ move LAST_TALKED, Route110_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+Route110_EventScript_14F95C:: @ 814F95C
+ lock
+ faceplayer
+ msgbox Route110_Text_16E6F2, 4
+ move LAST_TALKED, Route110_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+Route110_EventScript_14F972:: @ 814F972
+ lock
+ faceplayer
+ msgbox Route110_Text_16E729, 4
+ move LAST_TALKED, Route110_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+Route110_EventScript_14F988:: @ 814F988
+ lock
+ faceplayer
+ msgbox Route110_Text_16E76A, 4
+ move LAST_TALKED, Route110_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+Route110_EventScript_14F99E:: @ 814F99E
+ msgbox Route110_Text_16EB22, 2
+ end
+
+Route110_EventScript_14F9A7:: @ 814F9A7
+ msgbox Route110_Text_16EB65, 2
+ end
+
+Route110_EventScript_14F9B0:: @ 814F9B0
+ msgbox Route110_Text_16EBC9, 2
+ end
+
+Route110_EventScript_14F9B9:: @ 814F9B9
+ msgbox Route110_Text_16EDC5, 2
+ end
+
+Route110_EventScript_14F9C2:: @ 814F9C2
+ msgbox Route110_Text_16EE30, 2
+ end
+
+Route110_EventScript_14F9CB:: @ 814F9CB
+ msgbox Route110_Text_16EE74, 2
+ end
+
+Route110_EventScript_14F9D4:: @ 814F9D4
+ msgbox Route110_Text_16EEF6, 2
+ end
+
+Route110_EventScript_14F9DD:: @ 814F9DD
+ msgbox Route110_Text_16F381, 3
+ end
+
+Route110_EventScript_14F9E6:: @ 814F9E6
+ msgbox Route110_Text_16F39C, 3
+ end
+
+Route110_EventScript_14F9EF:: @ 814F9EF
+ msgbox Route110_Text_16F3B1, 3
+ end
+
+Route110_EventScript_14F9F8:: @ 814F9F8
+ msgbox Route110_Text_16F3E9, 3
+ end
+
+Route110_EventScript_14FA01:: @ 814FA01
+ msgbox Route110_Text_16F3FF, 3
+ end
+
+Route110_EventScript_14FA0A:: @ 814FA0A
+ msgbox Route110_Text_16F40F, 3
+ end
+
+Route110_EventScript_14FA13:: @ 814FA13
+ msgbox Route110_Text_16F429, 3
+ end
+
+Route110_EventScript_14FA1C:: @ 814FA1C
+ msgbox Route110_Text_16F4AE, 3
+ end
+
+Route110_EventScript_14FA25:: @ 814FA25
+ msgbox Route110_Text_16F4F7, 3
+ end
+
+Route110_EventScript_14FA2E:: @ 814FA2E
+ lockall
+ specialval RESULT, 225
+ compare RESULT, 0
+ jumpeq Route110_EventScript_14FA49
+ msgbox Route110_Text_16F53A, 4
+ releaseall
+ end
+
+Route110_EventScript_14FA49:: @ 814FA49
+ msgbox Route110_Text_16F57C, 4
+ releaseall
+ end
+
+Route110_EventScript_14FA53:: @ 814FA53
+ lock
+ faceplayer
+ specialval RESULT, 227
+ compare RESULT, 1
+ jumpeq Route110_EventScript_14FA84
+ compare 0x40a9, 0
+ jumpeq Route110_EventScript_14FA7A
+ msgbox Route110_Text_16F26A, 4
+ release
+ end
+
+Route110_EventScript_14FA7A:: @ 814FA7A
+ msgbox Route110_Text_16F1D0, 4
+ release
+ end
+
+Route110_EventScript_14FA84:: @ 814FA84
+ msgbox Route110_Text_16F2C4, 4
+ release
+ end
+
+Route110_EventScript_14FA8E:: @ 814FA8E
+ trainerbattle 0, 232, 0, Route110_Text_1BA699, Route110_Text_1BA6D2
+ msgbox Route110_Text_1BA6F8, 6
+ end
+
+Route110_EventScript_14FAA5:: @ 814FAA5
+ trainerbattle 0, 243, 0, Route110_Text_1BA72D, Route110_Text_1BA759
+ msgbox Route110_Text_1BA76C, 6
+ end
+
+Route110_EventScript_14FABC:: @ 814FABC
+ trainerbattle 0, 512, 0, Route110_Text_1BA7D2, Route110_Text_1BA803
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route110_EventScript_14FAE3
+ msgbox Route110_Text_1BA829, 6
+ end
+
+Route110_EventScript_14FAE3:: @ 814FAE3
+ trainerbattle 5, 512, 0, Route110_Text_1BA877, Route110_Text_1BA8CD
+ msgbox Route110_Text_1BA8E9, 6
+ end
+
+Route110_EventScript_14FAFA:: @ 814FAFA
+ trainerbattle 0, 341, 0, Route110_Text_1BA913, Route110_Text_1BA93C
+ msgbox Route110_Text_1BA94A, 6
+ end
+
+Route110_EventScript_14FB11:: @ 814FB11
+ trainerbattle 0, 351, 0, Route110_Text_1BA22C, Route110_Text_1BA264
+ msgbox Route110_Text_1BA27C, 6
+ end
+
+Route110_EventScript_14FB28:: @ 814FB28
+ trainerbattle 0, 352, 0, Route110_Text_1BA2D4, Route110_Text_1BA2FC
+ msgbox Route110_Text_1BA30C, 6
+ end
+
+Route110_EventScript_14FB3F:: @ 814FB3F
+ trainerbattle 0, 353, 0, Route110_Text_1BA352, Route110_Text_1BA379
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route110_EventScript_14FB66
+ msgbox Route110_Text_1BA3A5, 6
+ end
+
+Route110_EventScript_14FB66:: @ 814FB66
+ trainerbattle 5, 353, 0, Route110_Text_1BA3EF, Route110_Text_1BA432
+ msgbox Route110_Text_1BA456, 6
+ end
+
+Route110_EventScript_14FB7D:: @ 814FB7D
+ trainerbattle 0, 359, 0, Route110_Text_1BA5FF, Route110_Text_1BA63C
+ msgbox Route110_Text_1BA65F, 6
+ end
+
+Route110_EventScript_14FB94:: @ 814FB94
+ trainerbattle 0, 358, 0, Route110_Text_1BA4A0, Route110_Text_1BA50F
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route110_EventScript_14FBBB
+ msgbox Route110_Text_1BA52E, 6
+ end
+
+Route110_EventScript_14FBBB:: @ 814FBBB
+ trainerbattle 5, 358, 0, Route110_Text_1BA573, Route110_Text_1BA5A1
+ msgbox Route110_Text_1BA5C4, 6
+ end
+
+Route110_EventScript_14FBD2:: @ 814FBD2
+ trainerbattle 0, 302, 0, Route110_Text_1BA990, Route110_Text_1BA9D0
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route110_EventScript_14FBF9
+ msgbox Route110_Text_1BA9E9, 6
+ end
+
+Route110_EventScript_14FBF9:: @ 814FBF9
+ trainerbattle 5, 302, 0, Route110_Text_1BAA2D, Route110_Text_1BAA76
+ msgbox Route110_Text_1BAA8F, 6
+ end
+
+Route110_EventScript_14FC10:: @ 814FC10
+ trainerbattle 0, 334, 0, Route110_Text_1BAAC3, Route110_Text_1BAAF7
+ msgbox Route110_Text_1BAB19, 6
+ end
+
+Route110_EventScript_14FC27:: @ 814FC27
+ lockall
+ move 21, Route110_Movement_1A0843
+ waitmove 0
+ call Route110_EventScript_14FC39
+ releaseall
+ end
+
+Route110_EventScript_14FC39:: @ 814FC39
+ special 228
+ msgbox Route110_Text_16EF65, 4
+ switch RESULT
+ case 10, Route110_EventScript_14FCC3
+ case 9, Route110_EventScript_14FCD1
+ case 8, Route110_EventScript_14FCD1
+ case 7, Route110_EventScript_14FCD1
+ case 6, Route110_EventScript_14FCDF
+ case 5, Route110_EventScript_14FCDF
+ case 4, Route110_EventScript_14FCDF
+ case 3, Route110_EventScript_14FCED
+ case 2, Route110_EventScript_14FCED
+ case 1, Route110_EventScript_14FCED
+ case 0, Route110_EventScript_14FCFB
+ end
+
+Route110_EventScript_14FCC3:: @ 814FCC3
+ msgbox Route110_Text_16EF9F, 4
+ jump Route110_EventScript_14FD09
+ end
+
+Route110_EventScript_14FCD1:: @ 814FCD1
+ msgbox Route110_Text_16F012, 4
+ jump Route110_EventScript_14FD09
+ end
+
+Route110_EventScript_14FCDF:: @ 814FCDF
+ msgbox Route110_Text_16F069, 4
+ jump Route110_EventScript_14FD09
+ end
+
+Route110_EventScript_14FCED:: @ 814FCED
+ msgbox Route110_Text_16F0D0, 4
+ jump Route110_EventScript_14FD09
+ end
+
+Route110_EventScript_14FCFB:: @ 814FCFB
+ msgbox Route110_Text_16F139, 4
+ jump Route110_EventScript_14FD09
+ end
+
+Route110_EventScript_14FD09:: @ 814FD09
+ setvar 0x40a9, 3
+ playmusicbattle 0
+ fadedefault
+ return
+
+Route110_EventScript_14FD13:: @ 814FD13
+ setvar 0x8008, 1
+ jump Route110_EventScript_14FD34
+ end
+
+Route110_EventScript_14FD1E:: @ 814FD1E
+ setvar 0x8008, 2
+ jump Route110_EventScript_14FD34
+ end
+
+Route110_EventScript_14FD29:: @ 814FD29
+ setvar 0x8008, 3
+ jump Route110_EventScript_14FD34
+ end
+
+Route110_EventScript_14FD34:: @ 814FD34
+ lockall
+ checkgender
+ compare RESULT, 0
+ callif 1, Route110_EventScript_14FDA7
+ compare RESULT, 1
+ callif 1, Route110_EventScript_14FDAC
+ move 28, Route110_Movement_1A0845
+ waitmove 0
+ move 28, Route110_Movement_1A0833
+ waitmove 0
+ move 28, Route110_Movement_1A0835
+ waitmove 0
+ pause 30
+ compare 0x8008, 1
+ callif 1, Route110_EventScript_14FF14
+ compare 0x8008, 2
+ callif 1, Route110_EventScript_14FF1F
+ compare 0x8008, 3
+ callif 1, Route110_EventScript_14FF2A
+ checkgender
+ compare RESULT, 0
+ jumpeq Route110_EventScript_14FDB1
+ compare RESULT, 1
+ jumpeq Route110_EventScript_14FE2B
+ releaseall
+ end
+
+Route110_EventScript_14FDA7:: @ 814FDA7
+ playmusic 415, 1
+ return
+
+Route110_EventScript_14FDAC:: @ 814FDAC
+ playmusic 421, 1
+ return
+
+Route110_EventScript_14FDB1:: @ 814FDB1
+ msgbox Route110_Text_16E7A1, 4
+ switch 0x4023
+ case 0, Route110_EventScript_14FDE0
+ case 1, Route110_EventScript_14FDF0
+ case 2, Route110_EventScript_14FE00
+ end
+
+Route110_EventScript_14FDE0:: @ 814FDE0
+ trainerbattle 3, 533, 0, Route110_Text_16E826
+ jump Route110_EventScript_14FE10
+ end
+
+Route110_EventScript_14FDF0:: @ 814FDF0
+ trainerbattle 3, 536, 0, Route110_Text_16E826
+ jump Route110_EventScript_14FE10
+ end
+
+Route110_EventScript_14FE00:: @ 814FE00
+ trainerbattle 3, 530, 0, Route110_Text_16E826
+ jump Route110_EventScript_14FE10
+ end
+
+Route110_EventScript_14FE10:: @ 814FE10
+ msgbox Route110_Text_16E84C, 4
+ call Route110_EventScript_14FEA5
+ msgbox Route110_Text_16E8B3, 4
+ jump Route110_EventScript_14FEB2
+ end
+
+Route110_EventScript_14FE2B:: @ 814FE2B
+ msgbox Route110_Text_16E99A, 4
+ switch 0x4023
+ case 0, Route110_EventScript_14FE5A
+ case 1, Route110_EventScript_14FE6A
+ case 2, Route110_EventScript_14FE7A
+ end
+
+Route110_EventScript_14FE5A:: @ 814FE5A
+ trainerbattle 3, 524, 0, Route110_Text_16EA0F
+ jump Route110_EventScript_14FE8A
+ end
+
+Route110_EventScript_14FE6A:: @ 814FE6A
+ trainerbattle 3, 527, 0, Route110_Text_16EA0F
+ jump Route110_EventScript_14FE8A
+ end
+
+Route110_EventScript_14FE7A:: @ 814FE7A
+ trainerbattle 3, 521, 0, Route110_Text_16EA0F
+ jump Route110_EventScript_14FE8A
+ end
+
+Route110_EventScript_14FE8A:: @ 814FE8A
+ msgbox Route110_Text_16EA2A, 4
+ call Route110_EventScript_14FEA5
+ msgbox Route110_Text_16EA7B, 4
+ jump Route110_EventScript_14FEB2
+ end
+
+Route110_EventScript_14FEA5:: @ 814FEA5
+ giveitem ITEM_ITEMFINDER
+ return
+
+Route110_EventScript_14FEB2:: @ 814FEB2
+ closebutton
+ compare 0x8008, 1
+ callif 1, Route110_EventScript_14FF56
+ compare 0x8008, 2
+ callif 1, Route110_EventScript_14FF5E
+ compare 0x8008, 3
+ callif 1, Route110_EventScript_14FF66
+ spritebehave 28, 10
+ spritebehave 29, 10
+ disappear 28
+ reappear 29
+ pause 45
+ compare 0x8008, 1
+ callif 1, Route110_EventScript_14FF35
+ compare 0x8008, 2
+ callif 1, Route110_EventScript_14FF40
+ compare 0x8008, 3
+ callif 1, Route110_EventScript_14FF4B
+ disappear 29
+ setvar 0x4069, 1
+ playmusicbattle 0
+ fadedefault
+ releaseall
+ end
+
+Route110_EventScript_14FF14:: @ 814FF14
+ move 28, Route110_Movement_14FF6E
+ waitmove 0
+ return
+
+Route110_EventScript_14FF1F:: @ 814FF1F
+ move 28, Route110_Movement_14FF72
+ waitmove 0
+ return
+
+Route110_EventScript_14FF2A:: @ 814FF2A
+ move 28, Route110_Movement_14FF74
+ waitmove 0
+ return
+
+Route110_EventScript_14FF35:: @ 814FF35
+ move 29, Route110_Movement_14FF78
+ waitmove 0
+ return
+
+Route110_EventScript_14FF40:: @ 814FF40
+ move 29, Route110_Movement_14FF80
+ waitmove 0
+ return
+
+Route110_EventScript_14FF4B:: @ 814FF4B
+ move 29, Route110_Movement_14FF89
+ waitmove 0
+ return
+
+Route110_EventScript_14FF56:: @ 814FF56
+ movespriteperm 29, 33, 55
+ return
+
+Route110_EventScript_14FF5E:: @ 814FF5E
+ movespriteperm 29, 34, 55
+ return
+
+Route110_EventScript_14FF66:: @ 814FF66
+ movespriteperm 29, 35, 55
+ return
+
+Route110_Movement_14FF6E:: @ 814FF6E
+ step_down
+ step_left
+ step_25
+ step_end
+
+Route110_Movement_14FF72:: @ 814FF72
+ step_down
+ step_end
+
+Route110_Movement_14FF74:: @ 814FF74
+ step_down
+ step_right
+ step_25
+ step_end
+
+Route110_Movement_14FF78:: @ 814FF78
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_end
+
+Route110_Movement_14FF80:: @ 814FF80
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_15
+ step_end
+
+Route110_Movement_14FF89:: @ 814FF89
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_end
+
diff --git a/data/maps/scripts/Route110_SeasideCyclingRoadNorthEntrance.s b/data/maps/scripts/Route110_SeasideCyclingRoadNorthEntrance.s
new file mode 100644
index 000000000..ed5dd3cda
--- /dev/null
+++ b/data/maps/scripts/Route110_SeasideCyclingRoadNorthEntrance.s
@@ -0,0 +1,58 @@
+Route110_SeasideCyclingRoadNorthEntrance_MapScripts:: @ 81634C8
+ map_script 3, Route110_SeasideCyclingRoadNorthEntrance_MapScript1_1634CE
+ .byte 0
+
+Route110_SeasideCyclingRoadNorthEntrance_MapScript1_1634CE:: @ 81634CE
+ compare 0x40a9, 3
+ callif 1, Route110_SeasideCyclingRoadNorthEntrance_EventScript_1634E5
+ compare 0x40a9, 2
+ callif 1, Route110_SeasideCyclingRoadNorthEntrance_EventScript_1634E5
+ end
+
+Route110_SeasideCyclingRoadNorthEntrance_EventScript_1634E5:: @ 81634E5
+ setvar 0x40a9, 1
+ return
+
+Route110_SeasideCyclingRoadNorthEntrance_EventScript_1634EB:: @ 81634EB
+ lock
+ faceplayer
+ msgbox Route110_SeasideCyclingRoadNorthEntrance_Text_19E406, 4
+ release
+ end
+
+Route110_SeasideCyclingRoadNorthEntrance_EventScript_1634F7:: @ 81634F7
+ lockall
+ specialval RESULT, 227
+ compare RESULT, 2
+ callif 1, Route110_SeasideCyclingRoadNorthEntrance_EventScript_16351D
+ compare RESULT, 0
+ jumpeq Route110_SeasideCyclingRoadNorthEntrance_EventScript_163523
+ setflag 2091
+ setvar 0x4001, 1
+ releaseall
+ end
+
+Route110_SeasideCyclingRoadNorthEntrance_EventScript_16351D:: @ 816351D
+ setvar 0x40a9, 1
+ return
+
+Route110_SeasideCyclingRoadNorthEntrance_EventScript_163523:: @ 8163523
+ msgbox Route110_SeasideCyclingRoadNorthEntrance_Text_19E3AD, 4
+ closebutton
+ move 255, Route110_SeasideCyclingRoadNorthEntrance_Movement_163538
+ waitmove 0
+ releaseall
+ end
+
+Route110_SeasideCyclingRoadNorthEntrance_Movement_163538:: @ 8163538
+ step_left
+ step_end
+
+Route110_SeasideCyclingRoadNorthEntrance_EventScript_16353A:: @ 816353A
+ lockall
+ setvar 0x40a9, 0
+ clearflag 2091
+ setvar 0x4001, 0
+ releaseall
+ end
+
diff --git a/data/maps/scripts/Route110_SeasideCyclingRoadSouthEntrance.s b/data/maps/scripts/Route110_SeasideCyclingRoadSouthEntrance.s
new file mode 100644
index 000000000..d25463993
--- /dev/null
+++ b/data/maps/scripts/Route110_SeasideCyclingRoadSouthEntrance.s
@@ -0,0 +1,39 @@
+Route110_SeasideCyclingRoadSouthEntrance_MapScripts:: @ 816347E
+ .byte 0
+
+Route110_SeasideCyclingRoadSouthEntrance_EventScript_16347F:: @ 816347F
+ lock
+ faceplayer
+ msgbox Route110_SeasideCyclingRoadSouthEntrance_Text_19E326, 4
+ release
+ end
+
+Route110_SeasideCyclingRoadSouthEntrance_EventScript_16348B:: @ 816348B
+ lockall
+ specialval RESULT, 227
+ compare RESULT, 0
+ jumpeq Route110_SeasideCyclingRoadSouthEntrance_EventScript_1634A6
+ setflag 2091
+ setvar 0x4001, 1
+ releaseall
+ end
+
+Route110_SeasideCyclingRoadSouthEntrance_EventScript_1634A6:: @ 81634A6
+ msgbox Route110_SeasideCyclingRoadSouthEntrance_Text_19E3AD, 4
+ closebutton
+ move 255, Route110_SeasideCyclingRoadSouthEntrance_Movement_1634BB
+ waitmove 0
+ releaseall
+ end
+
+Route110_SeasideCyclingRoadSouthEntrance_Movement_1634BB:: @ 81634BB
+ step_left
+ step_end
+
+Route110_SeasideCyclingRoadSouthEntrance_EventScript_1634BD:: @ 81634BD
+ lockall
+ clearflag 2091
+ setvar 0x4001, 0
+ releaseall
+ end
+
diff --git a/data/maps/scripts/Route110_TrickHouseCorridor.s b/data/maps/scripts/Route110_TrickHouseCorridor.s
new file mode 100644
index 000000000..06da2482d
--- /dev/null
+++ b/data/maps/scripts/Route110_TrickHouseCorridor.s
@@ -0,0 +1,8 @@
+Route110_TrickHouseCorridor_MapScripts:: @ 8161CEC
+ map_script 3, Route110_TrickHouseCorridor_MapScript1_161CF2
+ .byte 0
+
+Route110_TrickHouseCorridor_MapScript1_161CF2:: @ 8161CF2
+ setvar 0x40b5, 1
+ end
+
diff --git a/data/maps/scripts/Route110_TrickHouseEnd.s b/data/maps/scripts/Route110_TrickHouseEnd.s
new file mode 100644
index 000000000..34b0cc62d
--- /dev/null
+++ b/data/maps/scripts/Route110_TrickHouseEnd.s
@@ -0,0 +1,248 @@
+Route110_TrickHouseEnd_MapScripts:: @ 8161936
+ map_script 5, Route110_TrickHouseEnd_MapScript1_16194B
+ map_script 3, Route110_TrickHouseEnd_MapScript1_161957
+ map_script 2, Route110_TrickHouseEnd_MapScript2_16197C
+ map_script 4, Route110_TrickHouseEnd_MapScript2_161965
+ .byte 0
+
+Route110_TrickHouseEnd_MapScript1_16194B:: @ 816194B
+ compare 0x4001, 1
+ callif 1, Route110_TrickHouseEnd_EventScript_161994
+ end
+
+Route110_TrickHouseEnd_MapScript1_161957:: @ 8161957
+ setvar 0x4001, 0
+ setvar 0x4002, 0
+ special 261
+ end
+
+Route110_TrickHouseEnd_MapScript2_161965:: @ 8161965
+ map_script_2 0x4002, 0, Route110_TrickHouseEnd_EventScript_16196F
+ .2byte 0
+
+Route110_TrickHouseEnd_EventScript_16196F:: @ 816196F
+ reappear 1
+ spritevisible 1, 29, 1
+ spriteface 1, 4
+ end
+
+Route110_TrickHouseEnd_MapScript2_16197C:: @ 816197C
+ map_script_2 0x4001, 0, Route110_TrickHouseEnd_EventScript_161986
+ .2byte 0
+
+Route110_TrickHouseEnd_EventScript_161986:: @ 8161986
+ setvar 0x4001, 1
+ call Route110_TrickHouseEnd_EventScript_161994
+ special 142
+ end
+
+Route110_TrickHouseEnd_EventScript_161994:: @ 8161994
+ setmaptile 10, 1, 539, 1
+ return
+
+Route110_TrickHouseEnd_EventScript_16199E:: @ 816199E
+ lock
+ faceplayer
+ msgbox Route110_TrickHouseEnd_Text_19C281, 4
+ setvar 0x4002, 1
+ switch 0x4044
+ case 0, Route110_TrickHouseEnd_EventScript_161A0B
+ case 1, Route110_TrickHouseEnd_EventScript_161A47
+ case 2, Route110_TrickHouseEnd_EventScript_161A83
+ case 3, Route110_TrickHouseEnd_EventScript_161ABF
+ case 4, Route110_TrickHouseEnd_EventScript_161AFB
+ case 5, Route110_TrickHouseEnd_EventScript_161B37
+ case 6, Route110_TrickHouseEnd_EventScript_161B73
+ case 7, Route110_TrickHouseEnd_EventScript_161BAF
+ end
+
+Route110_TrickHouseEnd_EventScript_161A0B:: @ 8161A0B
+ msgbox Route110_TrickHouseEnd_Text_19C2B2, 4
+ msgbox Route110_TrickHouseEnd_Text_19C90B, 4
+ setvar 0x40c1, 0
+ giveitem ITEM_RARE_CANDY
+ compare RESULT, 0
+ callif 1, Route110_TrickHouseEnd_EventScript_161C4E
+ msgbox Route110_TrickHouseEnd_Text_19C9BD, 4
+ closebutton
+ call Route110_TrickHouseEnd_EventScript_161C2E
+ release
+ end
+
+Route110_TrickHouseEnd_EventScript_161A47:: @ 8161A47
+ msgbox Route110_TrickHouseEnd_Text_19C333, 4
+ msgbox Route110_TrickHouseEnd_Text_19C90B, 4
+ setvar 0x40c1, 0
+ giveitem ITEM_TIMER_BALL
+ compare RESULT, 0
+ callif 1, Route110_TrickHouseEnd_EventScript_161C4E
+ msgbox Route110_TrickHouseEnd_Text_19C9BD, 4
+ closebutton
+ call Route110_TrickHouseEnd_EventScript_161C2E
+ release
+ end
+
+Route110_TrickHouseEnd_EventScript_161A83:: @ 8161A83
+ msgbox Route110_TrickHouseEnd_Text_19C3A7, 4
+ msgbox Route110_TrickHouseEnd_Text_19C90B, 4
+ setvar 0x40c1, 0
+ giveitem ITEM_HARD_STONE
+ compare RESULT, 0
+ callif 1, Route110_TrickHouseEnd_EventScript_161C4E
+ msgbox Route110_TrickHouseEnd_Text_19C9BD, 4
+ closebutton
+ call Route110_TrickHouseEnd_EventScript_161C2E
+ release
+ end
+
+Route110_TrickHouseEnd_EventScript_161ABF:: @ 8161ABF
+ msgbox Route110_TrickHouseEnd_Text_19C41F, 4
+ msgbox Route110_TrickHouseEnd_Text_19C90B, 4
+ setvar 0x40c1, 0
+ giveitem ITEM_SMOKE_BALL
+ compare RESULT, 0
+ callif 1, Route110_TrickHouseEnd_EventScript_161C4E
+ msgbox Route110_TrickHouseEnd_Text_19C9BD, 4
+ closebutton
+ call Route110_TrickHouseEnd_EventScript_161C2E
+ release
+ end
+
+Route110_TrickHouseEnd_EventScript_161AFB:: @ 8161AFB
+ msgbox Route110_TrickHouseEnd_Text_19C491, 4
+ msgbox Route110_TrickHouseEnd_Text_19C90B, 4
+ setvar 0x40c1, 0
+ giveitem ITEM_TM12
+ compare RESULT, 0
+ callif 1, Route110_TrickHouseEnd_EventScript_161C4E
+ msgbox Route110_TrickHouseEnd_Text_19C9BD, 4
+ closebutton
+ call Route110_TrickHouseEnd_EventScript_161C2E
+ release
+ end
+
+Route110_TrickHouseEnd_EventScript_161B37:: @ 8161B37
+ msgbox Route110_TrickHouseEnd_Text_19C515, 4
+ msgbox Route110_TrickHouseEnd_Text_19C90B, 4
+ setvar 0x40c1, 0
+ giveitem ITEM_MAGNET
+ compare RESULT, 0
+ callif 1, Route110_TrickHouseEnd_EventScript_161C4E
+ msgbox Route110_TrickHouseEnd_Text_19C9BD, 4
+ closebutton
+ call Route110_TrickHouseEnd_EventScript_161C2E
+ release
+ end
+
+Route110_TrickHouseEnd_EventScript_161B73:: @ 8161B73
+ msgbox Route110_TrickHouseEnd_Text_19C567, 4
+ msgbox Route110_TrickHouseEnd_Text_19C90B, 4
+ setvar 0x40c1, 0
+ giveitem ITEM_PP_MAX
+ compare RESULT, 0
+ callif 1, Route110_TrickHouseEnd_EventScript_161C4E
+ msgbox Route110_TrickHouseEnd_Text_19C9BD, 4
+ closebutton
+ call Route110_TrickHouseEnd_EventScript_161C2E
+ release
+ end
+
+Route110_TrickHouseEnd_EventScript_161BAF:: @ 8161BAF
+ msgbox Route110_TrickHouseEnd_Text_19C5AF, 4
+ closebutton
+ compare FACING, 1
+ callif 1, Route110_TrickHouseEnd_EventScript_161C74
+ compare FACING, 2
+ callif 1, Route110_TrickHouseEnd_EventScript_161C7F
+ compare FACING, 3
+ callif 1, Route110_TrickHouseEnd_EventScript_161C8A
+ compare FACING, 4
+ callif 1, Route110_TrickHouseEnd_EventScript_161C95
+ pause 30
+ msgbox Route110_TrickHouseEnd_Text_19C602, 4
+ closebutton
+ move 1, Route110_TrickHouseEnd_Movement_1A0839
+ waitmove 0
+ pause 30
+ msgbox Route110_TrickHouseEnd_Text_19C691, 4
+ setvar 0x40c1, 0
+ givedecoration 31
+ compare RESULT, 0
+ callif 1, Route110_TrickHouseEnd_EventScript_161C61
+ msgbox Route110_TrickHouseEnd_Text_19C85C, 4
+ call Route110_TrickHouseEnd_EventScript_161C2E
+ special 260
+ release
+ end
+
+Route110_TrickHouseEnd_EventScript_161C2E:: @ 8161C2E
+ move 1, Route110_TrickHouseEnd_Movement_161315
+ waitmove 0
+ playsfx 178
+ move 1, Route110_TrickHouseEnd_Movement_16131E
+ waitmove 0
+ disappear 1
+ addvar 0x4044, 1
+ return
+
+Route110_TrickHouseEnd_EventScript_161C4E:: @ 8161C4E
+ call Route110_TrickHouseEnd_EventScript_1A02A5
+ msgbox Route110_TrickHouseEnd_Text_19C92E, 4
+ setvar 0x40c1, 1
+ return
+
+Route110_TrickHouseEnd_EventScript_161C61:: @ 8161C61
+ call Route110_TrickHouseEnd_EventScript_1A02B8
+ msgbox Route110_TrickHouseEnd_Text_19C7D7, 4
+ setvar 0x40c1, 1
+ return
+
+Route110_TrickHouseEnd_EventScript_161C74:: @ 8161C74
+ move 1, Route110_TrickHouseEnd_Movement_1A0845
+ waitmove 0
+ return
+
+Route110_TrickHouseEnd_EventScript_161C7F:: @ 8161C7F
+ move 1, Route110_TrickHouseEnd_Movement_1A0841
+ waitmove 0
+ return
+
+Route110_TrickHouseEnd_EventScript_161C8A:: @ 8161C8A
+ move 1, Route110_TrickHouseEnd_Movement_1A083F
+ waitmove 0
+ return
+
+Route110_TrickHouseEnd_EventScript_161C95:: @ 8161C95
+ move 1, Route110_TrickHouseEnd_Movement_1A0843
+ waitmove 0
+ return
+
+Route110_TrickHouseEnd_EventScript_161CA0:: @ 8161CA0
+ lockall
+ spriteface 1, 3
+ playsfx 21
+ move 1, Route110_TrickHouseEnd_Movement_1A0833
+ waitmove 0
+ pause 20
+ move 1, Route110_TrickHouseEnd_Movement_161CEA
+ waitmove 0
+ playsfx 178
+ move 255, Route110_TrickHouseEnd_Movement_1A0845
+ waitmove 0
+ msgbox Route110_TrickHouseEnd_Text_19CA8B, 4
+ closebutton
+ move 255, Route110_TrickHouseEnd_Movement_161CE8
+ waitmove 0
+ pause 4
+ spriteface 1, 4
+ releaseall
+ end
+
+Route110_TrickHouseEnd_Movement_161CE8:: @ 8161CE8
+ step_down
+ step_end
+
+Route110_TrickHouseEnd_Movement_161CEA:: @ 8161CEA
+ step_48
+ step_end
+
diff --git a/data/maps/scripts/Route110_TrickHouseEntrance.s b/data/maps/scripts/Route110_TrickHouseEntrance.s
new file mode 100644
index 000000000..52d8cf147
--- /dev/null
+++ b/data/maps/scripts/Route110_TrickHouseEntrance.s
@@ -0,0 +1,303 @@
+Route110_TrickHouseEntrance_MapScripts:: @ 8160F2B
+ map_script 3, Route110_TrickHouseEntrance_MapScript1_160F3B
+ map_script 2, Route110_TrickHouseEntrance_MapScript2_1611CD
+ map_script 4, Route110_TrickHouseEntrance_MapScript2_1610B2
+ .byte 0
+
+Route110_TrickHouseEntrance_MapScript1_160F3B:: @ 8160F3B
+ setflag 2114
+ compare 0x40b5, 1
+ jumpeq Route110_TrickHouseEntrance_EventScript_160FCE
+ compare 0x40c1, 1
+ jumpeq Route110_TrickHouseEntrance_EventScript_160FB2
+ compare 0x40a6, 1
+ jumpeq Route110_TrickHouseEntrance_EventScript_16108E
+ compare 0x40a7, 5
+ callif 1, Route110_TrickHouseEntrance_EventScript_160FDE
+ compare 0x40a7, 3
+ callif 1, Route110_TrickHouseEntrance_EventScript_160FDE
+ compare 0x40a7, 0
+ callif 1, Route110_TrickHouseEntrance_EventScript_160FDE
+ switch 0x40a7
+ case 0, Route110_TrickHouseEntrance_EventScript_16109A
+ case 1, Route110_TrickHouseEntrance_EventScript_1610A0
+ case 3, Route110_TrickHouseEntrance_EventScript_1610A6
+ case 4, Route110_TrickHouseEntrance_EventScript_1610AC
+ end
+
+Route110_TrickHouseEntrance_EventScript_160FB2:: @ 8160FB2
+ setvar 0x40a5, 1
+ compare 0x4044, 8
+ jumpeq Route110_TrickHouseEntrance_EventScript_160FC8
+ setvar 0x40a7, 2
+ end
+
+Route110_TrickHouseEntrance_EventScript_160FC8:: @ 8160FC8
+ setvar 0x40a7, 6
+ end
+
+Route110_TrickHouseEntrance_EventScript_160FCE:: @ 8160FCE
+ setvar 0x40b5, 0
+ setvar 0x40a7, 5
+ setvar 0x40a5, 1
+ end
+
+Route110_TrickHouseEntrance_EventScript_160FDE:: @ 8160FDE
+ setvar 0x40a7, 0
+ compare 0x4044, 1
+ callif 1, Route110_TrickHouseEntrance_EventScript_16103C
+ compare 0x4044, 2
+ callif 1, Route110_TrickHouseEntrance_EventScript_161046
+ compare 0x4044, 3
+ callif 1, Route110_TrickHouseEntrance_EventScript_161050
+ compare 0x4044, 4
+ callif 1, Route110_TrickHouseEntrance_EventScript_16105A
+ compare 0x4044, 5
+ callif 1, Route110_TrickHouseEntrance_EventScript_161064
+ compare 0x4044, 6
+ callif 1, Route110_TrickHouseEntrance_EventScript_16106E
+ compare 0x4044, 7
+ callif 1, Route110_TrickHouseEntrance_EventScript_161078
+ compare 0x4044, 8
+ callif 1, Route110_TrickHouseEntrance_EventScript_161082
+ return
+
+Route110_TrickHouseEntrance_EventScript_16103C:: @ 816103C
+ checkflag 2057
+ callif 0, Route110_TrickHouseEntrance_EventScript_161088
+ return
+
+Route110_TrickHouseEntrance_EventScript_161046:: @ 8161046
+ checkflag 2058
+ callif 0, Route110_TrickHouseEntrance_EventScript_161088
+ return
+
+Route110_TrickHouseEntrance_EventScript_161050:: @ 8161050
+ checkflag 2059
+ callif 0, Route110_TrickHouseEntrance_EventScript_161088
+ return
+
+Route110_TrickHouseEntrance_EventScript_16105A:: @ 816105A
+ checkflag 2060
+ callif 0, Route110_TrickHouseEntrance_EventScript_161088
+ return
+
+Route110_TrickHouseEntrance_EventScript_161064:: @ 8161064
+ checkflag 2061
+ callif 0, Route110_TrickHouseEntrance_EventScript_161088
+ return
+
+Route110_TrickHouseEntrance_EventScript_16106E:: @ 816106E
+ checkflag 2062
+ callif 0, Route110_TrickHouseEntrance_EventScript_161088
+ return
+
+Route110_TrickHouseEntrance_EventScript_161078:: @ 8161078
+ checkflag 2052
+ callif 0, Route110_TrickHouseEntrance_EventScript_161088
+ return
+
+Route110_TrickHouseEntrance_EventScript_161082:: @ 8161082
+ setvar 0x40a7, 4
+ return
+
+Route110_TrickHouseEntrance_EventScript_161088:: @ 8161088
+ setvar 0x40a7, 3
+ return
+
+Route110_TrickHouseEntrance_EventScript_16108E:: @ 816108E
+ movespriteperm 1, 5, 2
+ spritebehave 1, 4
+ end
+
+Route110_TrickHouseEntrance_EventScript_16109A:: @ 816109A
+ setvar 0x40a5, 0
+ end
+
+Route110_TrickHouseEntrance_EventScript_1610A0:: @ 81610A0
+ setvar 0x40a5, 1
+ end
+
+Route110_TrickHouseEntrance_EventScript_1610A6:: @ 81610A6
+ setvar 0x40a5, 1
+ end
+
+Route110_TrickHouseEntrance_EventScript_1610AC:: @ 81610AC
+ setvar 0x40a5, 1
+ end
+
+Route110_TrickHouseEntrance_MapScript2_1610B2:: @ 81610B2
+ map_script_2 0x40a6, 1, Route110_TrickHouseEntrance_EventScript_1610F4
+ map_script_2 0x40a7, 0, Route110_TrickHouseEntrance_EventScript_161105
+ map_script_2 0x40a7, 1, Route110_TrickHouseEntrance_EventScript_1611AB
+ map_script_2 0x40a7, 2, Route110_TrickHouseEntrance_EventScript_1611AF
+ map_script_2 0x40a7, 3, Route110_TrickHouseEntrance_EventScript_1611AF
+ map_script_2 0x40a7, 4, Route110_TrickHouseEntrance_EventScript_1611AB
+ map_script_2 0x40a7, 5, Route110_TrickHouseEntrance_EventScript_1611AB
+ map_script_2 0x40a7, 6, Route110_TrickHouseEntrance_EventScript_1611BE
+ .2byte 0
+
+Route110_TrickHouseEntrance_EventScript_1610F4:: @ 81610F4
+ reappear 1
+ spritevisible 1, 29, 0
+ spriteface 1, 4
+ spriteface 255, 3
+ end
+
+Route110_TrickHouseEntrance_EventScript_161105:: @ 8161105
+ reappear 1
+ spriteinvisible 1, 29, 0
+ switch 0x4044
+ case 0, Route110_TrickHouseEntrance_EventScript_16116B
+ case 1, Route110_TrickHouseEntrance_EventScript_161173
+ case 2, Route110_TrickHouseEntrance_EventScript_161193
+ case 3, Route110_TrickHouseEntrance_EventScript_161183
+ case 4, Route110_TrickHouseEntrance_EventScript_16118B
+ case 5, Route110_TrickHouseEntrance_EventScript_16117B
+ case 6, Route110_TrickHouseEntrance_EventScript_16119B
+ case 7, Route110_TrickHouseEntrance_EventScript_1611A3
+ end
+
+Route110_TrickHouseEntrance_EventScript_16116B:: @ 816116B
+ movesprite 1, 6, 3
+ end
+
+Route110_TrickHouseEntrance_EventScript_161173:: @ 8161173
+ movesprite 1, 11, 5
+ end
+
+Route110_TrickHouseEntrance_EventScript_16117B:: @ 816117B
+ movesprite 1, 11, 1
+ end
+
+Route110_TrickHouseEntrance_EventScript_161183:: @ 8161183
+ movesprite 1, 3, 1
+ end
+
+Route110_TrickHouseEntrance_EventScript_16118B:: @ 816118B
+ movesprite 1, 0, 5
+ end
+
+Route110_TrickHouseEntrance_EventScript_161193:: @ 8161193
+ movesprite 1, 9, 1
+ end
+
+Route110_TrickHouseEntrance_EventScript_16119B:: @ 816119B
+ movesprite 1, 8, 1
+ end
+
+Route110_TrickHouseEntrance_EventScript_1611A3:: @ 81611A3
+ movesprite 1, 4, 4
+ end
+
+Route110_TrickHouseEntrance_EventScript_1611AB:: @ 81611AB
+ disappear 1
+ end
+
+Route110_TrickHouseEntrance_EventScript_1611AF:: @ 81611AF
+ reappear 1
+ movesprite 1, 5, 2
+ spriteface 1, 2
+ end
+
+Route110_TrickHouseEntrance_EventScript_1611BE:: @ 81611BE
+ reappear 1
+ movesprite 1, 5, 2
+ spriteface 1, 1
+ end
+
+Route110_TrickHouseEntrance_MapScript2_1611CD:: @ 81611CD
+ map_script_2 0x40a6, 1, Route110_TrickHouseEntrance_EventScript_1611D7
+ .2byte 0
+
+Route110_TrickHouseEntrance_EventScript_1611D7:: @ 81611D7
+ lockall
+ pause 20
+ compare 0x4044, 0
+ callif 1, Route110_TrickHouseEntrance_EventScript_161327
+ msgbox Route110_TrickHouseEntrance_Text_19BD82, 4
+ closebutton
+ pause 20
+ move 1, Route110_TrickHouseEntrance_Movement_161315
+ waitmove 0
+ playsfx 178
+ move 1, Route110_TrickHouseEntrance_Movement_16131E
+ waitmove 0
+ disappear 1
+ setvar 0x40a7, 1
+ setvar 0x40a6, 0
+ releaseall
+ end
+
+ .incbin "baserom.gba", 0x161218, 0x2
+
+Route110_TrickHouseEntrance_EventScript_16121A:: @ 816121A
+ lockall
+ switch 0x40a7
+ case 0, Route110_TrickHouseEntrance_EventScript_16124D
+ case 2, Route110_TrickHouseEntrance_EventScript_16136E
+ case 3, Route110_TrickHouseEntrance_EventScript_161330
+ case 6, Route110_TrickHouseEntrance_EventScript_161518
+ end
+
+Route110_TrickHouseEntrance_EventScript_16124D:: @ 816124D
+ playsfx 21
+ move 255, Route110_TrickHouseEntrance_Movement_1A0833
+ waitmove 0
+ move 255, Route110_TrickHouseEntrance_Movement_1A0835
+ waitmove 0
+ compare 0x4044, 0
+ callif 1, Route110_TrickHouseEntrance_EventScript_1612CD
+ compare 0x4044, 1
+ callif 1, Route110_TrickHouseEntrance_EventScript_1612D6
+ compare 0x4044, 2
+ callif 1, Route110_TrickHouseEntrance_EventScript_1612DF
+ compare 0x4044, 3
+ callif 1, Route110_TrickHouseEntrance_EventScript_1612E8
+ compare 0x4044, 4
+ callif 1, Route110_TrickHouseEntrance_EventScript_1612F1
+ compare 0x4044, 5
+ callif 1, Route110_TrickHouseEntrance_EventScript_1612FA
+ compare 0x4044, 6
+ callif 1, Route110_TrickHouseEntrance_EventScript_161303
+ compare 0x4044, 7
+ callif 1, Route110_TrickHouseEntrance_EventScript_16130C
+ closebutton
+ setvar 0x40a6, 1
+ warp Route110_TrickHouseEntrance, 255, 6, 2
+ waitstate
+ releaseall
+ end
+
+Route110_TrickHouseEntrance_EventScript_1612CD:: @ 81612CD
+ msgbox Route110_TrickHouseEntrance_Text_19BA6E, 4
+ return
+
+Route110_TrickHouseEntrance_EventScript_1612D6:: @ 81612D6
+ msgbox Route110_TrickHouseEntrance_Text_19BAC0, 4
+ return
+
+Route110_TrickHouseEntrance_EventScript_1612DF:: @ 81612DF
+ msgbox Route110_TrickHouseEntrance_Text_19BB11, 4
+ return
+
+Route110_TrickHouseEntrance_EventScript_1612E8:: @ 81612E8
+ msgbox Route110_TrickHouseEntrance_Text_19BB61, 4
+ return
+
+Route110_TrickHouseEntrance_EventScript_1612F1:: @ 81612F1
+ msgbox Route110_TrickHouseEntrance_Text_19BBB4, 4
+ return
+
+Route110_TrickHouseEntrance_EventScript_1612FA:: @ 81612FA
+ msgbox Route110_TrickHouseEntrance_Text_19BC04, 4
+ return
+
+Route110_TrickHouseEntrance_EventScript_161303:: @ 8161303
+ msgbox Route110_TrickHouseEntrance_Text_19BC55, 4
+ return
+
+Route110_TrickHouseEntrance_EventScript_16130C:: @ 816130C
+ msgbox Route110_TrickHouseEntrance_Text_19BCA8, 4
+ return
+
diff --git a/data/maps/scripts/Route110_TrickHousePuzzle1.s b/data/maps/scripts/Route110_TrickHousePuzzle1.s
new file mode 100644
index 000000000..074273652
--- /dev/null
+++ b/data/maps/scripts/Route110_TrickHousePuzzle1.s
@@ -0,0 +1,40 @@
+Route110_TrickHousePuzzle1_MapScripts:: @ 8161CF8
+ map_script 1, Route110_TrickHousePuzzle1_MapScript1_161CFE
+ .byte 0
+
+Route110_TrickHousePuzzle1_MapScript1_161CFE:: @ 8161CFE
+ compare 0x40ab, 2
+ jumpeq Route110_TrickHousePuzzle1_EventScript_161D0A
+ end
+
+Route110_TrickHousePuzzle1_EventScript_161D0A:: @ 8161D0A
+ setmaptile 13, 1, 523, 0
+ end
+
+Route110_TrickHousePuzzle1_EventScript_161D14:: @ 8161D14
+ lockall
+ compare 0x40ab, 0
+ jumpeq Route110_TrickHousePuzzle1_EventScript_161D26
+ jump Route110_TrickHousePuzzle1_EventScript_161892
+ end
+
+Route110_TrickHousePuzzle1_EventScript_161D26:: @ 8161D26
+ setvar 0x40ab, 1
+ jump Route110_TrickHousePuzzle1_EventScript_16189C
+ end
+
+Route110_TrickHousePuzzle1_EventScript_161D31:: @ 8161D31
+ trainerbattle 0, 611, 0, Route110_TrickHousePuzzle1_Text_19CB4F, Route110_TrickHousePuzzle1_Text_19CB93
+ msgbox Route110_TrickHousePuzzle1_Text_19CBAB, 6
+ end
+
+Route110_TrickHousePuzzle1_EventScript_161D48:: @ 8161D48
+ trainerbattle 0, 332, 0, Route110_TrickHousePuzzle1_Text_19CBD6, Route110_TrickHousePuzzle1_Text_19CC06
+ msgbox Route110_TrickHousePuzzle1_Text_19CC1B, 6
+ end
+
+Route110_TrickHousePuzzle1_EventScript_161D5F:: @ 8161D5F
+ trainerbattle 0, 612, 0, Route110_TrickHousePuzzle1_Text_19CC68, Route110_TrickHousePuzzle1_Text_19CC86
+ msgbox Route110_TrickHousePuzzle1_Text_19CCAA, 6
+ end
+
diff --git a/data/maps/scripts/Route110_TrickHousePuzzle2.s b/data/maps/scripts/Route110_TrickHousePuzzle2.s
new file mode 100644
index 000000000..0984690a1
--- /dev/null
+++ b/data/maps/scripts/Route110_TrickHousePuzzle2.s
@@ -0,0 +1,106 @@
+Route110_TrickHousePuzzle2_MapScripts:: @ 8161D76
+ map_script 5, Route110_TrickHousePuzzle2_MapScript1_161D81
+ map_script 3, Route110_TrickHousePuzzle2_MapScript1_161DAE
+ .byte 0
+
+Route110_TrickHousePuzzle2_MapScript1_161D81:: @ 8161D81
+ compare 0x4001, 1
+ callif 1, Route110_TrickHousePuzzle2_EventScript_161E2C
+ compare 0x4002, 1
+ callif 1, Route110_TrickHousePuzzle2_EventScript_161E3F
+ compare 0x4003, 1
+ callif 1, Route110_TrickHousePuzzle2_EventScript_161E52
+ compare 0x4004, 1
+ callif 1, Route110_TrickHousePuzzle2_EventScript_161E65
+ end
+
+Route110_TrickHousePuzzle2_MapScript1_161DAE:: @ 8161DAE
+ setvar 0x4001, 0
+ setvar 0x4002, 0
+ setvar 0x4003, 0
+ setvar 0x4004, 0
+ end
+
+Route110_TrickHousePuzzle2_EventScript_161DC3:: @ 8161DC3
+ lockall
+ compare 0x40ac, 0
+ jumpeq Route110_TrickHousePuzzle2_EventScript_161DD5
+ jump Route110_TrickHousePuzzle2_EventScript_161892
+ end
+
+Route110_TrickHousePuzzle2_EventScript_161DD5:: @ 8161DD5
+ setvar 0x40ac, 1
+ jump Route110_TrickHousePuzzle2_EventScript_16189C
+ end
+
+Route110_TrickHousePuzzle2_EventScript_161DE0:: @ 8161DE0
+ lockall
+ setvar 0x4001, 1
+ playsfx 21
+ call Route110_TrickHousePuzzle2_EventScript_161E2C
+ special 142
+ releaseall
+ end
+
+Route110_TrickHousePuzzle2_EventScript_161DF3:: @ 8161DF3
+ lockall
+ setvar 0x4002, 1
+ playsfx 21
+ call Route110_TrickHousePuzzle2_EventScript_161E3F
+ special 142
+ releaseall
+ end
+
+Route110_TrickHousePuzzle2_EventScript_161E06:: @ 8161E06
+ lockall
+ setvar 0x4003, 1
+ playsfx 21
+ call Route110_TrickHousePuzzle2_EventScript_161E52
+ special 142
+ releaseall
+ end
+
+Route110_TrickHousePuzzle2_EventScript_161E19:: @ 8161E19
+ lockall
+ setvar 0x4004, 1
+ playsfx 21
+ call Route110_TrickHousePuzzle2_EventScript_161E65
+ special 142
+ releaseall
+ end
+
+Route110_TrickHousePuzzle2_EventScript_161E2C:: @ 8161E2C
+ setmaptile 14, 21, 601, 0
+ setmaptile 1, 12, 618, 0
+ return
+
+Route110_TrickHousePuzzle2_EventScript_161E3F:: @ 8161E3F
+ setmaptile 8, 17, 601, 0
+ setmaptile 12, 13, 618, 0
+ return
+
+Route110_TrickHousePuzzle2_EventScript_161E52:: @ 8161E52
+ setmaptile 4, 10, 601, 0
+ setmaptile 8, 4, 618, 0
+ return
+
+Route110_TrickHousePuzzle2_EventScript_161E65:: @ 8161E65
+ setmaptile 5, 2, 601, 0
+ setmaptile 12, 5, 618, 0
+ return
+
+Route110_TrickHousePuzzle2_EventScript_161E78:: @ 8161E78
+ trainerbattle 0, 274, 0, Route110_TrickHousePuzzle2_Text_19CD46, Route110_TrickHousePuzzle2_Text_19CD66
+ msgbox Route110_TrickHousePuzzle2_Text_19CD91, 6
+ end
+
+Route110_TrickHousePuzzle2_EventScript_161E8F:: @ 8161E8F
+ trainerbattle 0, 275, 0, Route110_TrickHousePuzzle2_Text_19CDBF, Route110_TrickHousePuzzle2_Text_19CDF0
+ msgbox Route110_TrickHousePuzzle2_Text_19CE0D, 6
+ end
+
+Route110_TrickHousePuzzle2_EventScript_161EA6:: @ 8161EA6
+ trainerbattle 0, 281, 0, Route110_TrickHousePuzzle2_Text_19CE52, Route110_TrickHousePuzzle2_Text_19CE98
+ msgbox Route110_TrickHousePuzzle2_Text_19CEB8, 6
+ end
+
diff --git a/data/maps/scripts/Route110_TrickHousePuzzle3.s b/data/maps/scripts/Route110_TrickHousePuzzle3.s
new file mode 100644
index 000000000..309728db7
--- /dev/null
+++ b/data/maps/scripts/Route110_TrickHousePuzzle3.s
@@ -0,0 +1,397 @@
+Route110_TrickHousePuzzle3_MapScripts:: @ 8161EBD
+ map_script 5, Route110_TrickHousePuzzle3_MapScript1_161EC8
+ map_script 3, Route110_TrickHousePuzzle3_MapScript1_161EE4
+ .byte 0
+
+Route110_TrickHousePuzzle3_MapScript1_161EC8:: @ 8161EC8
+ call Route110_TrickHousePuzzle3_EventScript_161F12
+ compare 0x4009, 0
+ callif 1, Route110_TrickHousePuzzle3_EventScript_161FE5
+ compare 0x4009, 1
+ callif 1, Route110_TrickHousePuzzle3_EventScript_1622C8
+ end
+
+Route110_TrickHousePuzzle3_MapScript1_161EE4:: @ 8161EE4
+ setvar 0x4001, 0
+ setvar 0x4002, 0
+ setvar 0x4003, 0
+ setvar 0x4004, 0
+ setvar 0x4005, 0
+ setvar 0x4006, 0
+ setvar 0x4007, 0
+ setvar 0x4008, 0
+ setvar 0x4009, 0
+ end
+
+Route110_TrickHousePuzzle3_EventScript_161F12:: @ 8161F12
+ setmaptile 5, 20, 600, 0
+ setmaptile 4, 12, 600, 0
+ setmaptile 11, 10, 600, 0
+ setmaptile 3, 8, 600, 0
+ setmaptile 13, 7, 600, 0
+ setmaptile 1, 3, 600, 0
+ setmaptile 10, 2, 600, 0
+ compare 0x4008, 1
+ callif 1, Route110_TrickHousePuzzle3_EventScript_161F9F
+ compare 0x4008, 2
+ callif 1, Route110_TrickHousePuzzle3_EventScript_161FA9
+ compare 0x4008, 3
+ callif 1, Route110_TrickHousePuzzle3_EventScript_161FB3
+ compare 0x4008, 4
+ callif 1, Route110_TrickHousePuzzle3_EventScript_161FBD
+ compare 0x4008, 5
+ callif 1, Route110_TrickHousePuzzle3_EventScript_161FC7
+ compare 0x4008, 6
+ callif 1, Route110_TrickHousePuzzle3_EventScript_161FD1
+ compare 0x4008, 7
+ callif 1, Route110_TrickHousePuzzle3_EventScript_161FDB
+ return
+
+Route110_TrickHousePuzzle3_EventScript_161F9F:: @ 8161F9F
+ setmaptile 5, 20, 601, 0
+ return
+
+Route110_TrickHousePuzzle3_EventScript_161FA9:: @ 8161FA9
+ setmaptile 4, 12, 601, 0
+ return
+
+Route110_TrickHousePuzzle3_EventScript_161FB3:: @ 8161FB3
+ setmaptile 11, 10, 601, 0
+ return
+
+Route110_TrickHousePuzzle3_EventScript_161FBD:: @ 8161FBD
+ setmaptile 3, 8, 601, 0
+ return
+
+Route110_TrickHousePuzzle3_EventScript_161FC7:: @ 8161FC7
+ setmaptile 13, 7, 601, 0
+ return
+
+Route110_TrickHousePuzzle3_EventScript_161FD1:: @ 8161FD1
+ setmaptile 1, 3, 601, 0
+ return
+
+Route110_TrickHousePuzzle3_EventScript_161FDB:: @ 8161FDB
+ setmaptile 10, 2, 601, 0
+ return
+
+Route110_TrickHousePuzzle3_EventScript_161FE5:: @ 8161FE5
+ setmaptile 1, 6, 587, 0
+ setmaptile 2, 6, 588, 0
+ setmaptile 1, 7, 595, 0
+ setmaptile 2, 7, 596, 0
+ setmaptile 4, 9, 587, 0
+ setmaptile 5, 9, 588, 0
+ setmaptile 4, 10, 595, 0
+ setmaptile 5, 10, 596, 0
+ setmaptile 4, 18, 587, 0
+ setmaptile 5, 18, 588, 0
+ setmaptile 4, 19, 595, 0
+ setmaptile 5, 19, 596, 0
+ setmaptile 7, 3, 587, 0
+ setmaptile 8, 3, 588, 0
+ setmaptile 7, 4, 595, 0
+ setmaptile 8, 4, 596, 0
+ setmaptile 7, 9, 587, 0
+ setmaptile 8, 9, 588, 0
+ setmaptile 7, 10, 595, 0
+ setmaptile 8, 10, 596, 0
+ setmaptile 7, 18, 587, 0
+ setmaptile 8, 18, 588, 0
+ setmaptile 7, 19, 595, 0
+ setmaptile 8, 19, 596, 0
+ setmaptile 13, 3, 587, 0
+ setmaptile 14, 3, 588, 0
+ setmaptile 13, 4, 595, 0
+ setmaptile 14, 4, 596, 0
+ setmaptile 13, 9, 587, 0
+ setmaptile 14, 9, 588, 0
+ setmaptile 13, 10, 595, 0
+ setmaptile 14, 10, 596, 0
+ setmaptile 13, 15, 587, 0
+ setmaptile 14, 15, 588, 0
+ setmaptile 13, 16, 595, 0
+ setmaptile 14, 16, 596, 0
+ setmaptile 3, 13, 589, 1
+ setmaptile 3, 14, 597, 0
+ setmaptile 6, 7, 589, 1
+ setmaptile 6, 8, 597, 0
+ setmaptile 9, 16, 589, 1
+ setmaptile 9, 17, 597, 0
+ setmaptile 12, 4, 589, 1
+ setmaptile 12, 5, 597, 0
+ setmaptile 12, 10, 589, 1
+ setmaptile 12, 11, 597, 0
+ setmaptile 1, 15, 568, 0
+ setmaptile 2, 15, 569, 0
+ setmaptile 1, 16, 576, 1
+ setmaptile 2, 16, 577, 1
+ setmaptile 4, 6, 568, 0
+ setmaptile 5, 6, 569, 0
+ setmaptile 4, 7, 576, 1
+ setmaptile 5, 7, 577, 1
+ setmaptile 7, 12, 568, 0
+ setmaptile 8, 12, 569, 0
+ setmaptile 7, 13, 576, 1
+ setmaptile 8, 13, 577, 1
+ setmaptile 10, 12, 568, 0
+ setmaptile 11, 12, 569, 0
+ setmaptile 10, 13, 576, 1
+ setmaptile 11, 13, 577, 1
+ setmaptile 10, 18, 568, 0
+ setmaptile 11, 18, 569, 0
+ setmaptile 10, 19, 576, 1
+ setmaptile 11, 19, 577, 1
+ setmaptile 3, 4, 570, 1
+ setmaptile 3, 5, 578, 1
+ setmaptile 6, 10, 570, 1
+ setmaptile 6, 11, 578, 1
+ setmaptile 6, 13, 570, 1
+ setmaptile 6, 14, 578, 1
+ setmaptile 6, 16, 570, 1
+ setmaptile 6, 17, 578, 1
+ setmaptile 9, 4, 570, 1
+ setmaptile 9, 5, 578, 1
+ setmaptile 9, 7, 570, 1
+ setmaptile 9, 8, 578, 1
+ setmaptile 12, 13, 570, 1
+ setmaptile 12, 14, 578, 1
+ setmaptile 12, 16, 570, 1
+ setmaptile 12, 17, 578, 1
+ return
+
+Route110_TrickHousePuzzle3_EventScript_1622C8:: @ 81622C8
+ setmaptile 1, 6, 571, 0
+ setmaptile 2, 6, 572, 0
+ setmaptile 1, 7, 579, 1
+ setmaptile 2, 7, 580, 1
+ setmaptile 4, 9, 571, 0
+ setmaptile 5, 9, 572, 0
+ setmaptile 4, 10, 579, 1
+ setmaptile 5, 10, 580, 1
+ setmaptile 4, 18, 571, 0
+ setmaptile 5, 18, 572, 0
+ setmaptile 4, 19, 579, 1
+ setmaptile 5, 19, 580, 1
+ setmaptile 7, 3, 571, 0
+ setmaptile 8, 3, 572, 0
+ setmaptile 7, 4, 579, 1
+ setmaptile 8, 4, 580, 1
+ setmaptile 7, 9, 571, 0
+ setmaptile 8, 9, 572, 0
+ setmaptile 7, 10, 579, 1
+ setmaptile 8, 10, 580, 1
+ setmaptile 7, 18, 571, 0
+ setmaptile 8, 18, 572, 0
+ setmaptile 7, 19, 579, 1
+ setmaptile 8, 19, 580, 1
+ setmaptile 13, 3, 571, 0
+ setmaptile 14, 3, 572, 0
+ setmaptile 13, 4, 579, 1
+ setmaptile 14, 4, 580, 1
+ setmaptile 13, 9, 571, 0
+ setmaptile 14, 9, 572, 0
+ setmaptile 13, 10, 579, 1
+ setmaptile 14, 10, 580, 1
+ setmaptile 13, 15, 571, 0
+ setmaptile 14, 15, 572, 0
+ setmaptile 13, 16, 579, 1
+ setmaptile 14, 16, 580, 1
+ setmaptile 3, 13, 573, 1
+ setmaptile 3, 14, 581, 1
+ setmaptile 6, 7, 573, 1
+ setmaptile 6, 8, 581, 1
+ setmaptile 9, 16, 573, 1
+ setmaptile 9, 17, 581, 1
+ setmaptile 12, 4, 573, 1
+ setmaptile 12, 5, 581, 1
+ setmaptile 12, 10, 573, 1
+ setmaptile 12, 11, 581, 1
+ setmaptile 1, 15, 584, 0
+ setmaptile 2, 15, 585, 0
+ setmaptile 1, 16, 592, 0
+ setmaptile 2, 16, 593, 0
+ setmaptile 4, 6, 584, 0
+ setmaptile 5, 6, 585, 0
+ setmaptile 4, 7, 592, 0
+ setmaptile 5, 7, 593, 0
+ setmaptile 7, 12, 584, 0
+ setmaptile 8, 12, 585, 0
+ setmaptile 7, 13, 592, 0
+ setmaptile 8, 13, 593, 0
+ setmaptile 10, 12, 584, 0
+ setmaptile 11, 12, 585, 0
+ setmaptile 10, 13, 592, 0
+ setmaptile 11, 13, 593, 0
+ setmaptile 10, 18, 584, 0
+ setmaptile 11, 18, 585, 0
+ setmaptile 10, 19, 592, 0
+ setmaptile 11, 19, 593, 0
+ setmaptile 3, 4, 586, 1
+ setmaptile 3, 5, 594, 0
+ setmaptile 6, 10, 586, 1
+ setmaptile 6, 11, 594, 0
+ setmaptile 6, 13, 586, 1
+ setmaptile 6, 14, 594, 0
+ setmaptile 6, 16, 586, 1
+ setmaptile 6, 17, 594, 0
+ setmaptile 9, 4, 586, 1
+ setmaptile 9, 5, 594, 0
+ setmaptile 9, 7, 586, 1
+ setmaptile 9, 8, 594, 0
+ setmaptile 12, 13, 586, 1
+ setmaptile 12, 14, 594, 0
+ setmaptile 12, 16, 586, 1
+ setmaptile 12, 17, 594, 0
+ return
+
+Route110_TrickHousePuzzle3_EventScript_1625AB:: @ 81625AB
+ lockall
+ setvar 0x4008, 1
+ jump Route110_TrickHousePuzzle3_EventScript_1625FF
+ end
+
+Route110_TrickHousePuzzle3_EventScript_1625B7:: @ 81625B7
+ lockall
+ setvar 0x4008, 2
+ jump Route110_TrickHousePuzzle3_EventScript_1625FF
+ end
+
+Route110_TrickHousePuzzle3_EventScript_1625C3:: @ 81625C3
+ lockall
+ setvar 0x4008, 3
+ jump Route110_TrickHousePuzzle3_EventScript_1625FF
+ end
+
+Route110_TrickHousePuzzle3_EventScript_1625CF:: @ 81625CF
+ lockall
+ setvar 0x4008, 4
+ jump Route110_TrickHousePuzzle3_EventScript_1625FF
+ end
+
+Route110_TrickHousePuzzle3_EventScript_1625DB:: @ 81625DB
+ lockall
+ setvar 0x4008, 5
+ jump Route110_TrickHousePuzzle3_EventScript_1625FF
+ end
+
+Route110_TrickHousePuzzle3_EventScript_1625E7:: @ 81625E7
+ lockall
+ setvar 0x4008, 6
+ jump Route110_TrickHousePuzzle3_EventScript_1625FF
+ end
+
+Route110_TrickHousePuzzle3_EventScript_1625F3:: @ 81625F3
+ lockall
+ setvar 0x4008, 7
+ jump Route110_TrickHousePuzzle3_EventScript_1625FF
+ end
+
+Route110_TrickHousePuzzle3_EventScript_1625FF:: @ 81625FF
+ call Route110_TrickHousePuzzle3_EventScript_162612
+ playsfx 21
+ call Route110_TrickHousePuzzle3_EventScript_161F12
+ jump Route110_TrickHousePuzzle3_EventScript_1626AD
+ end
+
+Route110_TrickHousePuzzle3_EventScript_162612:: @ 8162612
+ setvar 0x4001, 0
+ setvar 0x4002, 0
+ setvar 0x4003, 0
+ setvar 0x4004, 0
+ setvar 0x4005, 0
+ setvar 0x4006, 0
+ setvar 0x4007, 0
+ compare 0x4008, 1
+ callif 1, Route110_TrickHousePuzzle3_EventScript_162683
+ compare 0x4008, 2
+ callif 1, Route110_TrickHousePuzzle3_EventScript_162689
+ compare 0x4008, 3
+ callif 1, Route110_TrickHousePuzzle3_EventScript_16268F
+ compare 0x4008, 4
+ callif 1, Route110_TrickHousePuzzle3_EventScript_162695
+ compare 0x4008, 5
+ callif 1, Route110_TrickHousePuzzle3_EventScript_16269B
+ compare 0x4008, 6
+ callif 1, Route110_TrickHousePuzzle3_EventScript_1626A1
+ compare 0x4008, 7
+ callif 1, Route110_TrickHousePuzzle3_EventScript_1626A7
+ return
+
+Route110_TrickHousePuzzle3_EventScript_162683:: @ 8162683
+ setvar 0x4001, 1
+ return
+
+Route110_TrickHousePuzzle3_EventScript_162689:: @ 8162689
+ setvar 0x4002, 1
+ return
+
+Route110_TrickHousePuzzle3_EventScript_16268F:: @ 816268F
+ setvar 0x4003, 1
+ return
+
+Route110_TrickHousePuzzle3_EventScript_162695:: @ 8162695
+ setvar 0x4004, 1
+ return
+
+Route110_TrickHousePuzzle3_EventScript_16269B:: @ 816269B
+ setvar 0x4005, 1
+ return
+
+Route110_TrickHousePuzzle3_EventScript_1626A1:: @ 81626A1
+ setvar 0x4006, 1
+ return
+
+Route110_TrickHousePuzzle3_EventScript_1626A7:: @ 81626A7
+ setvar 0x4007, 1
+ return
+
+Route110_TrickHousePuzzle3_EventScript_1626AD:: @ 81626AD
+ compare 0x4009, 1
+ callif 1, Route110_TrickHousePuzzle3_EventScript_161FE5
+ compare 0x4009, 0
+ callif 1, Route110_TrickHousePuzzle3_EventScript_1622C8
+ special 142
+ compare 0x4009, 1
+ jumpeq Route110_TrickHousePuzzle3_EventScript_1626DD
+ compare 0x4009, 0
+ jumpeq Route110_TrickHousePuzzle3_EventScript_1626E4
+ end
+
+Route110_TrickHousePuzzle3_EventScript_1626DD:: @ 81626DD
+ setvar 0x4009, 0
+ releaseall
+ end
+
+Route110_TrickHousePuzzle3_EventScript_1626E4:: @ 81626E4
+ setvar 0x4009, 1
+ releaseall
+ end
+
+Route110_TrickHousePuzzle3_EventScript_1626EB:: @ 81626EB
+ lockall
+ compare 0x40ad, 0
+ jumpeq Route110_TrickHousePuzzle3_EventScript_1626FD
+ jump Route110_TrickHousePuzzle3_EventScript_161892
+ end
+
+Route110_TrickHousePuzzle3_EventScript_1626FD:: @ 81626FD
+ setvar 0x40ad, 1
+ jump Route110_TrickHousePuzzle3_EventScript_16189C
+ end
+
+Route110_TrickHousePuzzle3_EventScript_162708:: @ 8162708
+ trainerbattle 0, 215, 0, Route110_TrickHousePuzzle3_Text_19CF76, Route110_TrickHousePuzzle3_Text_19CF9D
+ msgbox Route110_TrickHousePuzzle3_Text_19CFE6, 6
+ end
+
+Route110_TrickHousePuzzle3_EventScript_16271F:: @ 816271F
+ trainerbattle 0, 473, 0, Route110_TrickHousePuzzle3_Text_19D026, Route110_TrickHousePuzzle3_Text_19D065
+ msgbox Route110_TrickHousePuzzle3_Text_19D07A, 6
+ end
+
+Route110_TrickHousePuzzle3_EventScript_162736:: @ 8162736
+ trainerbattle 0, 630, 0, Route110_TrickHousePuzzle3_Text_19D0AE, Route110_TrickHousePuzzle3_Text_19D0F0
+ msgbox Route110_TrickHousePuzzle3_Text_19D110, 6
+ end
+
diff --git a/data/maps/scripts/Route110_TrickHousePuzzle4.s b/data/maps/scripts/Route110_TrickHousePuzzle4.s
new file mode 100644
index 000000000..f8760aba7
--- /dev/null
+++ b/data/maps/scripts/Route110_TrickHousePuzzle4.s
@@ -0,0 +1,30 @@
+Route110_TrickHousePuzzle4_MapScripts:: @ 816274D
+ .byte 0
+
+Route110_TrickHousePuzzle4_EventScript_16274E:: @ 816274E
+ lockall
+ compare 0x40ae, 0
+ jumpeq Route110_TrickHousePuzzle4_EventScript_162760
+ jump Route110_TrickHousePuzzle4_EventScript_161892
+ end
+
+Route110_TrickHousePuzzle4_EventScript_162760:: @ 8162760
+ setvar 0x40ae, 1
+ jump Route110_TrickHousePuzzle4_EventScript_16189C
+ end
+
+Route110_TrickHousePuzzle4_EventScript_16276B:: @ 816276B
+ trainerbattle 0, 428, 0, Route110_TrickHousePuzzle4_Text_19D1DE, Route110_TrickHousePuzzle4_Text_19D21F
+ msgbox Route110_TrickHousePuzzle4_Text_19D253, 6
+ end
+
+Route110_TrickHousePuzzle4_EventScript_162782:: @ 8162782
+ trainerbattle 0, 188, 0, Route110_TrickHousePuzzle4_Text_19D295, Route110_TrickHousePuzzle4_Text_19D2D1
+ msgbox Route110_TrickHousePuzzle4_Text_19D306, 6
+ end
+
+Route110_TrickHousePuzzle4_EventScript_162799:: @ 8162799
+ trainerbattle 0, 429, 0, Route110_TrickHousePuzzle4_Text_19D351, Route110_TrickHousePuzzle4_Text_19D380
+ msgbox Route110_TrickHousePuzzle4_Text_19D386, 6
+ end
+
diff --git a/data/maps/scripts/Route110_TrickHousePuzzle5.s b/data/maps/scripts/Route110_TrickHousePuzzle5.s
new file mode 100644
index 000000000..2af1e9d62
--- /dev/null
+++ b/data/maps/scripts/Route110_TrickHousePuzzle5.s
@@ -0,0 +1,677 @@
+Route110_TrickHousePuzzle5_MapScripts:: @ 81627B0
+ map_script 3, Route110_TrickHousePuzzle5_MapScript1_1627B6
+ .byte 0
+
+Route110_TrickHousePuzzle5_MapScript1_1627B6:: @ 81627B6
+ setvar 0x4001, 0
+ setvar 0x4002, 0
+ setvar 0x4003, 0
+ setvar 0x4004, 0
+ setvar 0x4005, 0
+ setvar 0x4008, 0
+ end
+
+Route110_TrickHousePuzzle5_EventScript_1627D5:: @ 81627D5
+ lockall
+ compare 0x40af, 0
+ jumpeq Route110_TrickHousePuzzle5_EventScript_1627E7
+ jump Route110_TrickHousePuzzle5_EventScript_161892
+ end
+
+Route110_TrickHousePuzzle5_EventScript_1627E7:: @ 81627E7
+ setvar 0x40af, 1
+ jump Route110_TrickHousePuzzle5_EventScript_16189C
+ end
+
+Route110_TrickHousePuzzle5_EventScript_1627F2:: @ 81627F2
+ lockall
+ move 1, Route110_TrickHousePuzzle5_Movement_1A0839
+ waitmove 0
+ compare 0x4001, 1
+ jumpeq Route110_TrickHousePuzzle5_EventScript_162DE9
+ setvar 0x4009, 0
+ jump Route110_TrickHousePuzzle5_EventScript_16293F
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162813:: @ 8162813
+ lockall
+ move 2, Route110_TrickHousePuzzle5_Movement_1A0839
+ waitmove 0
+ compare 0x4002, 1
+ jumpeq Route110_TrickHousePuzzle5_EventScript_162DE9
+ setvar 0x4009, 0
+ jump Route110_TrickHousePuzzle5_EventScript_1629B3
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162834:: @ 8162834
+ lockall
+ move 3, Route110_TrickHousePuzzle5_Movement_1A0839
+ waitmove 0
+ compare 0x4003, 1
+ jumpeq Route110_TrickHousePuzzle5_EventScript_162DE9
+ setvar 0x4009, 0
+ jump Route110_TrickHousePuzzle5_EventScript_162A27
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162855:: @ 8162855
+ lockall
+ move 4, Route110_TrickHousePuzzle5_Movement_1A0839
+ waitmove 0
+ compare 0x4004, 1
+ jumpeq Route110_TrickHousePuzzle5_EventScript_162DE9
+ setvar 0x4009, 0
+ jump Route110_TrickHousePuzzle5_EventScript_162A9B
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162876:: @ 8162876
+ lockall
+ move 5, Route110_TrickHousePuzzle5_Movement_1A0839
+ waitmove 0
+ compare 0x4005, 1
+ jumpeq Route110_TrickHousePuzzle5_EventScript_162DE9
+ setvar 0x4009, 0
+ jump Route110_TrickHousePuzzle5_EventScript_162B0F
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162897:: @ 8162897
+ lockall
+ setvar 0x4009, 0
+ jump Route110_TrickHousePuzzle5_EventScript_16293F
+ end
+
+Route110_TrickHousePuzzle5_EventScript_1628A3:: @ 81628A3
+ lockall
+ setvar 0x4009, 1
+ jump Route110_TrickHousePuzzle5_EventScript_16293F
+ end
+
+Route110_TrickHousePuzzle5_EventScript_1628AF:: @ 81628AF
+ lockall
+ setvar 0x4009, 2
+ jump Route110_TrickHousePuzzle5_EventScript_16293F
+ end
+
+Route110_TrickHousePuzzle5_EventScript_1628BB:: @ 81628BB
+ lockall
+ setvar 0x4009, 3
+ jump Route110_TrickHousePuzzle5_EventScript_16293F
+ end
+
+Route110_TrickHousePuzzle5_EventScript_1628C7:: @ 81628C7
+ lockall
+ setvar 0x4009, 0
+ jump Route110_TrickHousePuzzle5_EventScript_1629B3
+ end
+
+Route110_TrickHousePuzzle5_EventScript_1628D3:: @ 81628D3
+ lockall
+ setvar 0x4009, 1
+ jump Route110_TrickHousePuzzle5_EventScript_1629B3
+ end
+
+Route110_TrickHousePuzzle5_EventScript_1628DF:: @ 81628DF
+ lockall
+ setvar 0x4009, 0
+ jump Route110_TrickHousePuzzle5_EventScript_162A27
+ end
+
+Route110_TrickHousePuzzle5_EventScript_1628EB:: @ 81628EB
+ lockall
+ setvar 0x4009, 1
+ jump Route110_TrickHousePuzzle5_EventScript_162A27
+ end
+
+Route110_TrickHousePuzzle5_EventScript_1628F7:: @ 81628F7
+ lockall
+ setvar 0x4009, 2
+ jump Route110_TrickHousePuzzle5_EventScript_162A27
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162903:: @ 8162903
+ lockall
+ setvar 0x4009, 0
+ jump Route110_TrickHousePuzzle5_EventScript_162A9B
+ end
+
+Route110_TrickHousePuzzle5_EventScript_16290F:: @ 816290F
+ lockall
+ setvar 0x4009, 1
+ jump Route110_TrickHousePuzzle5_EventScript_162A9B
+ end
+
+Route110_TrickHousePuzzle5_EventScript_16291B:: @ 816291B
+ lockall
+ setvar 0x4009, 0
+ jump Route110_TrickHousePuzzle5_EventScript_162B0F
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162927:: @ 8162927
+ lockall
+ setvar 0x4009, 1
+ jump Route110_TrickHousePuzzle5_EventScript_162B0F
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162933:: @ 8162933
+ lockall
+ setvar 0x4009, 2
+ jump Route110_TrickHousePuzzle5_EventScript_162B0F
+ end
+
+Route110_TrickHousePuzzle5_EventScript_16293F:: @ 816293F
+ setvar 0x4001, 1
+ setvar 0x4008, 1
+ playsfx 21
+ move 1, Route110_TrickHousePuzzle5_Movement_1A0833
+ waitmove 0
+ move 1, Route110_TrickHousePuzzle5_Movement_1A0835
+ waitmove 0
+ compare 0x4009, 1
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162DF3
+ compare 0x4009, 2
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162E2B
+ compare 0x4009, 3
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162E63
+ msgbox Route110_TrickHousePuzzle5_Text_19D423, 4
+ random 3
+ switch RESULT
+ case 0, Route110_TrickHousePuzzle5_EventScript_162B83
+ case 1, Route110_TrickHousePuzzle5_EventScript_162BA6
+ case 2, Route110_TrickHousePuzzle5_EventScript_162BC9
+ end
+
+Route110_TrickHousePuzzle5_EventScript_1629B3:: @ 81629B3
+ setvar 0x4002, 1
+ setvar 0x4008, 2
+ playsfx 21
+ move 2, Route110_TrickHousePuzzle5_Movement_1A0833
+ waitmove 0
+ move 2, Route110_TrickHousePuzzle5_Movement_1A0835
+ waitmove 0
+ compare 0x4009, 1
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162E9B
+ compare 0x4009, 2
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162ED3
+ compare 0x4009, 3
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162F0B
+ msgbox Route110_TrickHousePuzzle5_Text_19D636, 4
+ random 3
+ switch RESULT
+ case 0, Route110_TrickHousePuzzle5_EventScript_162BEC
+ case 1, Route110_TrickHousePuzzle5_EventScript_162C0F
+ case 2, Route110_TrickHousePuzzle5_EventScript_162C32
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162A27:: @ 8162A27
+ setvar 0x4003, 1
+ setvar 0x4008, 3
+ playsfx 21
+ move 3, Route110_TrickHousePuzzle5_Movement_1A0833
+ waitmove 0
+ move 3, Route110_TrickHousePuzzle5_Movement_1A0835
+ waitmove 0
+ compare 0x4009, 1
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162DF3
+ compare 0x4009, 2
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162E2B
+ compare 0x4009, 3
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162E63
+ msgbox Route110_TrickHousePuzzle5_Text_19D7D3, 4
+ random 3
+ switch RESULT
+ case 0, Route110_TrickHousePuzzle5_EventScript_162C55
+ case 1, Route110_TrickHousePuzzle5_EventScript_162C78
+ case 2, Route110_TrickHousePuzzle5_EventScript_162C9B
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162A9B:: @ 8162A9B
+ setvar 0x4004, 1
+ setvar 0x4008, 4
+ playsfx 21
+ move 4, Route110_TrickHousePuzzle5_Movement_1A0833
+ waitmove 0
+ move 4, Route110_TrickHousePuzzle5_Movement_1A0835
+ waitmove 0
+ compare 0x4009, 1
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162DF3
+ compare 0x4009, 2
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162E2B
+ compare 0x4009, 3
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162E63
+ msgbox Route110_TrickHousePuzzle5_Text_19D93D, 4
+ random 3
+ switch RESULT
+ case 0, Route110_TrickHousePuzzle5_EventScript_162CBE
+ case 1, Route110_TrickHousePuzzle5_EventScript_162CE1
+ case 2, Route110_TrickHousePuzzle5_EventScript_162D04
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162B0F:: @ 8162B0F
+ setvar 0x4005, 1
+ setvar 0x4008, 5
+ playsfx 21
+ move 5, Route110_TrickHousePuzzle5_Movement_1A0833
+ waitmove 0
+ move 5, Route110_TrickHousePuzzle5_Movement_1A0835
+ waitmove 0
+ compare 0x4009, 1
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162E9B
+ compare 0x4009, 2
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162ED3
+ compare 0x4009, 3
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162F0B
+ msgbox Route110_TrickHousePuzzle5_Text_19DA9A, 4
+ random 3
+ switch RESULT
+ case 0, Route110_TrickHousePuzzle5_EventScript_162D27
+ case 1, Route110_TrickHousePuzzle5_EventScript_162D4A
+ case 2, Route110_TrickHousePuzzle5_EventScript_162D6D
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162B83:: @ 8162B83
+ msgbox Route110_TrickHousePuzzle5_Text_19D4AE, 4
+ multichoice 0, 0, 25, 1
+ switch RESULT
+ case 1, Route110_TrickHousePuzzle5_EventScript_162DDF
+ jump Route110_TrickHousePuzzle5_EventScript_162D90
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162BA6:: @ 8162BA6
+ msgbox Route110_TrickHousePuzzle5_Text_19D501, 4
+ multichoice 0, 0, 26, 1
+ switch RESULT
+ case 0, Route110_TrickHousePuzzle5_EventScript_162DDF
+ jump Route110_TrickHousePuzzle5_EventScript_162D90
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162BC9:: @ 8162BC9
+ msgbox Route110_TrickHousePuzzle5_Text_19D553, 4
+ multichoice 0, 0, 27, 1
+ switch RESULT
+ case 1, Route110_TrickHousePuzzle5_EventScript_162DDF
+ jump Route110_TrickHousePuzzle5_EventScript_162D90
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162BEC:: @ 8162BEC
+ msgbox Route110_TrickHousePuzzle5_Text_19D68E, 4
+ multichoice 0, 0, 28, 1
+ switch RESULT
+ case 2, Route110_TrickHousePuzzle5_EventScript_162DDF
+ jump Route110_TrickHousePuzzle5_EventScript_162D90
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162C0F:: @ 8162C0F
+ msgbox Route110_TrickHousePuzzle5_Text_19D6EC, 4
+ multichoice 0, 0, 29, 1
+ switch RESULT
+ case 0, Route110_TrickHousePuzzle5_EventScript_162DDF
+ jump Route110_TrickHousePuzzle5_EventScript_162D90
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162C32:: @ 8162C32
+ msgbox Route110_TrickHousePuzzle5_Text_19D745, 4
+ multichoice 0, 0, 30, 1
+ switch RESULT
+ case 0, Route110_TrickHousePuzzle5_EventScript_162DDF
+ jump Route110_TrickHousePuzzle5_EventScript_162D90
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162C55:: @ 8162C55
+ msgbox Route110_TrickHousePuzzle5_Text_19D81B, 4
+ multichoice 0, 0, 31, 1
+ switch RESULT
+ case 1, Route110_TrickHousePuzzle5_EventScript_162DDF
+ jump Route110_TrickHousePuzzle5_EventScript_162D90
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162C78:: @ 8162C78
+ msgbox Route110_TrickHousePuzzle5_Text_19D865, 4
+ multichoice 0, 0, 32, 1
+ switch RESULT
+ case 2, Route110_TrickHousePuzzle5_EventScript_162DDF
+ jump Route110_TrickHousePuzzle5_EventScript_162D90
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162C9B:: @ 8162C9B
+ msgbox Route110_TrickHousePuzzle5_Text_19D8BA, 4
+ multichoice 0, 0, 33, 1
+ switch RESULT
+ case 1, Route110_TrickHousePuzzle5_EventScript_162DDF
+ jump Route110_TrickHousePuzzle5_EventScript_162D90
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162CBE:: @ 8162CBE
+ msgbox Route110_TrickHousePuzzle5_Text_19D987, 4
+ multichoice 0, 0, 34, 1
+ switch RESULT
+ case 1, Route110_TrickHousePuzzle5_EventScript_162DDF
+ jump Route110_TrickHousePuzzle5_EventScript_162D90
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162CE1:: @ 8162CE1
+ msgbox Route110_TrickHousePuzzle5_Text_19D9DC, 4
+ multichoice 0, 0, 35, 1
+ switch RESULT
+ case 0, Route110_TrickHousePuzzle5_EventScript_162DDF
+ jump Route110_TrickHousePuzzle5_EventScript_162D90
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162D04:: @ 8162D04
+ msgbox Route110_TrickHousePuzzle5_Text_19DA1D, 4
+ multichoice 0, 0, 36, 1
+ switch RESULT
+ case 1, Route110_TrickHousePuzzle5_EventScript_162DDF
+ jump Route110_TrickHousePuzzle5_EventScript_162D90
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162D27:: @ 8162D27
+ msgbox Route110_TrickHousePuzzle5_Text_19DAEF, 4
+ multichoice 0, 0, 37, 1
+ switch RESULT
+ case 1, Route110_TrickHousePuzzle5_EventScript_162DDF
+ jump Route110_TrickHousePuzzle5_EventScript_162D90
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162D4A:: @ 8162D4A
+ msgbox Route110_TrickHousePuzzle5_Text_19DB43, 4
+ multichoice 0, 0, 38, 1
+ switch RESULT
+ case 0, Route110_TrickHousePuzzle5_EventScript_162DDF
+ jump Route110_TrickHousePuzzle5_EventScript_162D90
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162D6D:: @ 8162D6D
+ msgbox Route110_TrickHousePuzzle5_Text_19DB97, 4
+ multichoice 0, 0, 39, 1
+ switch RESULT
+ case 2, Route110_TrickHousePuzzle5_EventScript_162DDF
+ jump Route110_TrickHousePuzzle5_EventScript_162D90
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162D90:: @ 8162D90
+ checksound
+ playsfx 32
+ msgbox Route110_TrickHousePuzzle5_Text_19D5CF, 4
+ move 1, Route110_TrickHousePuzzle5_Movement_16309F
+ move 2, Route110_TrickHousePuzzle5_Movement_16309F
+ move 3, Route110_TrickHousePuzzle5_Movement_16309F
+ move 4, Route110_TrickHousePuzzle5_Movement_16309F
+ move 5, Route110_TrickHousePuzzle5_Movement_16309F
+ msgbox Route110_TrickHousePuzzle5_Text_19D5ED, 4
+ waitmove 0
+ closebutton
+ msgbox Route110_TrickHousePuzzle5_Text_19D615, 4
+ closebutton
+ warp Route110_TrickHousePuzzle5, 255, 0, 21
+ waitstate
+ releaseall
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162DDF:: @ 8162DDF
+ checksound
+ playsfx 31
+ jump Route110_TrickHousePuzzle5_EventScript_162DE9
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162DE9:: @ 8162DE9
+ msgbox Route110_TrickHousePuzzle5_Text_19D599, 4
+ releaseall
+ end
+
+Route110_TrickHousePuzzle5_EventScript_162DF3:: @ 8162DF3
+ compare 0x4008, 1
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162F43
+ compare 0x4008, 2
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162F4E
+ compare 0x4008, 3
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162F59
+ compare 0x4008, 4
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162F64
+ compare 0x4008, 5
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162F6F
+ return
+
+Route110_TrickHousePuzzle5_EventScript_162E2B:: @ 8162E2B
+ compare 0x4008, 1
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162F7A
+ compare 0x4008, 2
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162F85
+ compare 0x4008, 3
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162F90
+ compare 0x4008, 4
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162F9B
+ compare 0x4008, 5
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162FA6
+ return
+
+Route110_TrickHousePuzzle5_EventScript_162E63:: @ 8162E63
+ compare 0x4008, 1
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162FB1
+ compare 0x4008, 2
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162FBC
+ compare 0x4008, 3
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162FC7
+ compare 0x4009, 4
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162FD2
+ compare 0x4009, 5
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162FDD
+ return
+
+Route110_TrickHousePuzzle5_EventScript_162E9B:: @ 8162E9B
+ compare 0x4008, 1
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162FE8
+ compare 0x4008, 2
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162FF3
+ compare 0x4008, 3
+ callif 1, Route110_TrickHousePuzzle5_EventScript_162FFE
+ compare 0x4008, 4
+ callif 1, Route110_TrickHousePuzzle5_EventScript_163009
+ compare 0x4008, 5
+ callif 1, Route110_TrickHousePuzzle5_EventScript_163014
+ return
+
+Route110_TrickHousePuzzle5_EventScript_162ED3:: @ 8162ED3
+ compare 0x4008, 1
+ callif 1, Route110_TrickHousePuzzle5_EventScript_16301F
+ compare 0x4008, 2
+ callif 1, Route110_TrickHousePuzzle5_EventScript_16302A
+ compare 0x4008, 3
+ callif 1, Route110_TrickHousePuzzle5_EventScript_163035
+ compare 0x4008, 4
+ callif 1, Route110_TrickHousePuzzle5_EventScript_163040
+ compare 0x4008, 5
+ callif 1, Route110_TrickHousePuzzle5_EventScript_16304B
+ return
+
+Route110_TrickHousePuzzle5_EventScript_162F0B:: @ 8162F0B
+ compare 0x4008, 1
+ callif 1, Route110_TrickHousePuzzle5_EventScript_163056
+ compare 0x4008, 2
+ callif 1, Route110_TrickHousePuzzle5_EventScript_163061
+ compare 0x4008, 3
+ callif 1, Route110_TrickHousePuzzle5_EventScript_16306C
+ compare 0x4008, 4
+ callif 1, Route110_TrickHousePuzzle5_EventScript_163077
+ compare 0x4008, 5
+ callif 1, Route110_TrickHousePuzzle5_EventScript_163082
+ return
+
+Route110_TrickHousePuzzle5_EventScript_162F43:: @ 8162F43
+ move 1, Route110_TrickHousePuzzle5_Movement_16308D
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_162F4E:: @ 8162F4E
+ move 2, Route110_TrickHousePuzzle5_Movement_16308D
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_162F59:: @ 8162F59
+ move 3, Route110_TrickHousePuzzle5_Movement_16308D
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_162F64:: @ 8162F64
+ move 4, Route110_TrickHousePuzzle5_Movement_16308D
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_162F6F:: @ 8162F6F
+ move 5, Route110_TrickHousePuzzle5_Movement_16308D
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_162F7A:: @ 8162F7A
+ move 1, Route110_TrickHousePuzzle5_Movement_16308F
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_162F85:: @ 8162F85
+ move 2, Route110_TrickHousePuzzle5_Movement_16308F
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_162F90:: @ 8162F90
+ move 3, Route110_TrickHousePuzzle5_Movement_16308F
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_162F9B:: @ 8162F9B
+ move 4, Route110_TrickHousePuzzle5_Movement_16308F
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_162FA6:: @ 8162FA6
+ move 5, Route110_TrickHousePuzzle5_Movement_16308F
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_162FB1:: @ 8162FB1
+ move 1, Route110_TrickHousePuzzle5_Movement_163092
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_162FBC:: @ 8162FBC
+ move 2, Route110_TrickHousePuzzle5_Movement_163092
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_162FC7:: @ 8162FC7
+ move 3, Route110_TrickHousePuzzle5_Movement_163092
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_162FD2:: @ 8162FD2
+ move 4, Route110_TrickHousePuzzle5_Movement_163092
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_162FDD:: @ 8162FDD
+ move 5, Route110_TrickHousePuzzle5_Movement_163092
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_162FE8:: @ 8162FE8
+ move 1, Route110_TrickHousePuzzle5_Movement_163096
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_162FF3:: @ 8162FF3
+ move 2, Route110_TrickHousePuzzle5_Movement_163096
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_162FFE:: @ 8162FFE
+ move 3, Route110_TrickHousePuzzle5_Movement_163096
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_163009:: @ 8163009
+ move 4, Route110_TrickHousePuzzle5_Movement_163096
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_163014:: @ 8163014
+ move 5, Route110_TrickHousePuzzle5_Movement_163096
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_16301F:: @ 816301F
+ move 1, Route110_TrickHousePuzzle5_Movement_163098
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_16302A:: @ 816302A
+ move 2, Route110_TrickHousePuzzle5_Movement_163098
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_163035:: @ 8163035
+ move 3, Route110_TrickHousePuzzle5_Movement_163098
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_163040:: @ 8163040
+ move 4, Route110_TrickHousePuzzle5_Movement_163098
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_16304B:: @ 816304B
+ move 5, Route110_TrickHousePuzzle5_Movement_163098
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_163056:: @ 8163056
+ move 1, Route110_TrickHousePuzzle5_Movement_16309B
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_163061:: @ 8163061
+ move 2, Route110_TrickHousePuzzle5_Movement_16309B
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_16306C:: @ 816306C
+ move 3, Route110_TrickHousePuzzle5_Movement_16309B
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_163077:: @ 8163077
+ move 4, Route110_TrickHousePuzzle5_Movement_16309B
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_EventScript_163082:: @ 8163082
+ move 5, Route110_TrickHousePuzzle5_Movement_16309B
+ waitmove 0
+ return
+
+Route110_TrickHousePuzzle5_Movement_16308D:: @ 816308D
+ step_left
+ step_end
+
+Route110_TrickHousePuzzle5_Movement_16308F:: @ 816308F
+ step_left
+ step_left
+ step_end
+
+Route110_TrickHousePuzzle5_Movement_163092:: @ 8163092
+ step_left
+ step_left
+ step_left
+ step_end
+
+Route110_TrickHousePuzzle5_Movement_163096:: @ 8163096
+ step_right
+ step_end
+
+Route110_TrickHousePuzzle5_Movement_163098:: @ 8163098
+ step_right
+ step_right
+ step_end
+
+Route110_TrickHousePuzzle5_Movement_16309B:: @ 816309B
+ step_right
+ step_right
+ step_right
+ step_end
+
diff --git a/data/maps/scripts/Route110_TrickHousePuzzle6.s b/data/maps/scripts/Route110_TrickHousePuzzle6.s
new file mode 100644
index 000000000..b921842d7
--- /dev/null
+++ b/data/maps/scripts/Route110_TrickHousePuzzle6.s
@@ -0,0 +1,44 @@
+Route110_TrickHousePuzzle6_MapScripts:: @ 81630CD
+ map_script 3, Route110_TrickHousePuzzle6_MapScript1_1630D8
+ map_script 4, Route110_TrickHousePuzzle6_MapScript2_1630DC
+ .byte 0
+
+Route110_TrickHousePuzzle6_MapScript1_1630D8:: @ 81630D8
+ special 201
+ end
+
+Route110_TrickHousePuzzle6_MapScript2_1630DC:: @ 81630DC
+ map_script_2 0x4000, 16384, Route110_TrickHousePuzzle6_EventScript_1630E6
+ .2byte 0
+
+Route110_TrickHousePuzzle6_EventScript_1630E6:: @ 81630E6
+ special 202
+ end
+
+Route110_TrickHousePuzzle6_EventScript_1630EA:: @ 81630EA
+ lockall
+ compare 0x40b0, 0
+ jumpeq Route110_TrickHousePuzzle6_EventScript_1630FC
+ jump Route110_TrickHousePuzzle6_EventScript_161892
+ end
+
+Route110_TrickHousePuzzle6_EventScript_1630FC:: @ 81630FC
+ setvar 0x40b0, 1
+ jump Route110_TrickHousePuzzle6_EventScript_16189C
+ end
+
+Route110_TrickHousePuzzle6_EventScript_163107:: @ 8163107
+ trainerbattle 0, 561, 0, Route110_TrickHousePuzzle6_Text_19DC87, Route110_TrickHousePuzzle6_Text_19DCC6
+ msgbox Route110_TrickHousePuzzle6_Text_19DCE7, 6
+ end
+
+Route110_TrickHousePuzzle6_EventScript_16311E:: @ 816311E
+ trainerbattle 0, 407, 0, Route110_TrickHousePuzzle6_Text_19DD49, Route110_TrickHousePuzzle6_Text_19DD83
+ msgbox Route110_TrickHousePuzzle6_Text_19DD96, 6
+ end
+
+Route110_TrickHousePuzzle6_EventScript_163135:: @ 8163135
+ trainerbattle 0, 554, 0, Route110_TrickHousePuzzle6_Text_19DDCF, Route110_TrickHousePuzzle6_Text_19DDFE
+ msgbox Route110_TrickHousePuzzle6_Text_19DE44, 6
+ end
+
diff --git a/data/maps/scripts/Route110_TrickHousePuzzle7.s b/data/maps/scripts/Route110_TrickHousePuzzle7.s
new file mode 100644
index 000000000..a50af06c4
--- /dev/null
+++ b/data/maps/scripts/Route110_TrickHousePuzzle7.s
@@ -0,0 +1,260 @@
+Route110_TrickHousePuzzle7_MapScripts:: @ 816314C
+ map_script 5, Route110_TrickHousePuzzle7_MapScript1_163161
+ map_script 3, Route110_TrickHousePuzzle7_MapScript1_163253
+ map_script 1, Route110_TrickHousePuzzle7_MapScript1_16326F
+ map_script 2, Route110_TrickHousePuzzle7_MapScript2_16327B
+ .byte 0
+
+Route110_TrickHousePuzzle7_MapScript1_163161:: @ 8163161
+ call Route110_TrickHousePuzzle7_EventScript_163167
+ end
+
+Route110_TrickHousePuzzle7_EventScript_163167:: @ 8163167
+ checkflag 194
+ callif 1, Route110_TrickHousePuzzle7_EventScript_163195
+ checkflag 195
+ callif 1, Route110_TrickHousePuzzle7_EventScript_1631A8
+ checkflag 196
+ callif 1, Route110_TrickHousePuzzle7_EventScript_1631BB
+ checkflag 197
+ callif 1, Route110_TrickHousePuzzle7_EventScript_1631CE
+ checkflag 198
+ callif 1, Route110_TrickHousePuzzle7_EventScript_1631E1
+ return
+
+Route110_TrickHousePuzzle7_EventScript_163195:: @ 8163195
+ setmaptile 13, 17, 610, 0
+ setmaptile 12, 16, 575, 1
+ return
+
+Route110_TrickHousePuzzle7_EventScript_1631A8:: @ 81631A8
+ setmaptile 12, 13, 610, 0
+ setmaptile 12, 11, 575, 1
+ return
+
+Route110_TrickHousePuzzle7_EventScript_1631BB:: @ 81631BB
+ setmaptile 7, 12, 610, 0
+ setmaptile 5, 10, 575, 1
+ return
+
+Route110_TrickHousePuzzle7_EventScript_1631CE:: @ 81631CE
+ setmaptile 6, 6, 636, 0
+ setmaptile 4, 4, 575, 1
+ return
+
+Route110_TrickHousePuzzle7_EventScript_1631E1:: @ 81631E1
+ setmaptile 8, 4, 609, 0
+ setmaptile 7, 5, 575, 1
+ return
+
+Route110_TrickHousePuzzle7_EventScript_1631F4:: @ 81631F4
+ setmaptile 13, 17, 611, 0
+ setmaptile 12, 16, 574, 1
+ return
+
+Route110_TrickHousePuzzle7_EventScript_163207:: @ 8163207
+ setmaptile 12, 13, 609, 0
+ setmaptile 12, 11, 574, 1
+ return
+
+Route110_TrickHousePuzzle7_EventScript_16321A:: @ 816321A
+ setmaptile 7, 12, 611, 0
+ setmaptile 5, 10, 574, 1
+ return
+
+Route110_TrickHousePuzzle7_EventScript_16322D:: @ 816322D
+ setmaptile 6, 6, 635, 0
+ setmaptile 4, 4, 574, 1
+ return
+
+Route110_TrickHousePuzzle7_EventScript_163240:: @ 8163240
+ setmaptile 8, 4, 608, 0
+ setmaptile 7, 5, 574, 1
+ return
+
+Route110_TrickHousePuzzle7_MapScript1_163253:: @ 8163253
+ compare 0x40b6, 1
+ jumpeq Route110_TrickHousePuzzle7_EventScript_16326E
+ clearflag 194
+ clearflag 195
+ clearflag 196
+ clearflag 197
+ clearflag 198
+ end
+
+Route110_TrickHousePuzzle7_EventScript_16326E:: @ 816326E
+ end
+
+Route110_TrickHousePuzzle7_MapScript1_16326F:: @ 816326F
+ compare 0x40b6, 1
+ callif 1, Route110_TrickHousePuzzle7_EventScript_163167
+ end
+
+Route110_TrickHousePuzzle7_MapScript2_16327B:: @ 816327B
+ map_script_2 0x40b6, 1, Route110_TrickHousePuzzle7_EventScript_163285
+ .2byte 0
+
+Route110_TrickHousePuzzle7_EventScript_163285:: @ 8163285
+ setvar 0x40b6, 0
+ end
+
+Route110_TrickHousePuzzle7_EventScript_16328B:: @ 816328B
+ lockall
+ compare 0x40b1, 0
+ jumpeq Route110_TrickHousePuzzle7_EventScript_16329D
+ jump Route110_TrickHousePuzzle7_EventScript_161892
+ end
+
+Route110_TrickHousePuzzle7_EventScript_16329D:: @ 816329D
+ setvar 0x40b1, 1
+ jump Route110_TrickHousePuzzle7_EventScript_16189C
+ end
+
+Route110_TrickHousePuzzle7_EventScript_1632A8:: @ 81632A8
+ lockall
+ setvar 0x40b6, 1
+ warpteleport Route110_TrickHousePuzzle7, 255, 3, 19
+ waitstate
+ releaseall
+ end
+
+Route110_TrickHousePuzzle7_EventScript_1632B9:: @ 81632B9
+ lockall
+ pause 32
+ checkflag 194
+ callif 0, Route110_TrickHousePuzzle7_EventScript_163195
+ checkflag 194
+ callif 1, Route110_TrickHousePuzzle7_EventScript_1631F4
+ special 142
+ playsfx 36
+ checkflag 194
+ jumpif 0, Route110_TrickHousePuzzle7_EventScript_1633A4
+ checkflag 194
+ jumpeq Route110_TrickHousePuzzle7_EventScript_1633A9
+ end
+
+Route110_TrickHousePuzzle7_EventScript_1632E8:: @ 81632E8
+ lockall
+ pause 32
+ checkflag 195
+ callif 0, Route110_TrickHousePuzzle7_EventScript_1631A8
+ checkflag 195
+ callif 1, Route110_TrickHousePuzzle7_EventScript_163207
+ special 142
+ playsfx 36
+ checkflag 195
+ jumpif 0, Route110_TrickHousePuzzle7_EventScript_1633AE
+ checkflag 195
+ jumpeq Route110_TrickHousePuzzle7_EventScript_1633B3
+ end
+
+Route110_TrickHousePuzzle7_EventScript_163317:: @ 8163317
+ lockall
+ pause 32
+ checkflag 196
+ callif 0, Route110_TrickHousePuzzle7_EventScript_1631BB
+ checkflag 196
+ callif 1, Route110_TrickHousePuzzle7_EventScript_16321A
+ special 142
+ playsfx 36
+ checkflag 196
+ jumpif 0, Route110_TrickHousePuzzle7_EventScript_1633B8
+ checkflag 196
+ jumpeq Route110_TrickHousePuzzle7_EventScript_1633BD
+ end
+
+Route110_TrickHousePuzzle7_EventScript_163346:: @ 8163346
+ lockall
+ pause 32
+ checkflag 197
+ callif 0, Route110_TrickHousePuzzle7_EventScript_1631CE
+ checkflag 197
+ callif 1, Route110_TrickHousePuzzle7_EventScript_16322D
+ special 142
+ playsfx 36
+ checkflag 197
+ jumpif 0, Route110_TrickHousePuzzle7_EventScript_1633C2
+ checkflag 197
+ jumpeq Route110_TrickHousePuzzle7_EventScript_1633C7
+ end
+
+Route110_TrickHousePuzzle7_EventScript_163375:: @ 8163375
+ lockall
+ pause 32
+ checkflag 198
+ callif 0, Route110_TrickHousePuzzle7_EventScript_1631E1
+ checkflag 198
+ callif 1, Route110_TrickHousePuzzle7_EventScript_163240
+ special 142
+ playsfx 36
+ checkflag 198
+ jumpif 0, Route110_TrickHousePuzzle7_EventScript_1633CC
+ checkflag 198
+ jumpeq Route110_TrickHousePuzzle7_EventScript_1633D1
+ end
+
+Route110_TrickHousePuzzle7_EventScript_1633A4:: @ 81633A4
+ setflag 194
+ releaseall
+ end
+
+Route110_TrickHousePuzzle7_EventScript_1633A9:: @ 81633A9
+ clearflag 194
+ releaseall
+ end
+
+Route110_TrickHousePuzzle7_EventScript_1633AE:: @ 81633AE
+ setflag 195
+ releaseall
+ end
+
+Route110_TrickHousePuzzle7_EventScript_1633B3:: @ 81633B3
+ clearflag 195
+ releaseall
+ end
+
+Route110_TrickHousePuzzle7_EventScript_1633B8:: @ 81633B8
+ setflag 196
+ releaseall
+ end
+
+Route110_TrickHousePuzzle7_EventScript_1633BD:: @ 81633BD
+ clearflag 196
+ releaseall
+ end
+
+Route110_TrickHousePuzzle7_EventScript_1633C2:: @ 81633C2
+ setflag 197
+ releaseall
+ end
+
+Route110_TrickHousePuzzle7_EventScript_1633C7:: @ 81633C7
+ clearflag 197
+ releaseall
+ end
+
+Route110_TrickHousePuzzle7_EventScript_1633CC:: @ 81633CC
+ setflag 198
+ releaseall
+ end
+
+Route110_TrickHousePuzzle7_EventScript_1633D1:: @ 81633D1
+ clearflag 198
+ releaseall
+ end
+
+Route110_TrickHousePuzzle7_EventScript_1633D6:: @ 81633D6
+ trainerbattle 0, 237, 0, Route110_TrickHousePuzzle7_Text_19DF0B, Route110_TrickHousePuzzle7_Text_19DF4B
+ msgbox Route110_TrickHousePuzzle7_Text_19DF7E, 6
+ end
+
+Route110_TrickHousePuzzle7_EventScript_1633ED:: @ 81633ED
+ trainerbattle 0, 105, 0, Route110_TrickHousePuzzle7_Text_19DFBB, Route110_TrickHousePuzzle7_Text_19DFF2
+ msgbox Route110_TrickHousePuzzle7_Text_19E00F, 6
+ end
+
+Route110_TrickHousePuzzle7_EventScript_163404:: @ 8163404
+ trainerbattle 0, 248, 0, Route110_TrickHousePuzzle7_Text_19E054, Route110_TrickHousePuzzle7_Text_19E098
+ msgbox Route110_TrickHousePuzzle7_Text_19E0B2, 6
+ end
+
diff --git a/data/maps/scripts/Route110_TrickHousePuzzle8.s b/data/maps/scripts/Route110_TrickHousePuzzle8.s
new file mode 100644
index 000000000..99100e4f6
--- /dev/null
+++ b/data/maps/scripts/Route110_TrickHousePuzzle8.s
@@ -0,0 +1,30 @@
+Route110_TrickHousePuzzle8_MapScripts:: @ 816341B
+ .byte 0
+
+Route110_TrickHousePuzzle8_EventScript_16341C:: @ 816341C
+ lockall
+ compare 0x40b2, 0
+ jumpeq Route110_TrickHousePuzzle8_EventScript_16342E
+ jump Route110_TrickHousePuzzle8_EventScript_161892
+ end
+
+Route110_TrickHousePuzzle8_EventScript_16342E:: @ 816342E
+ setvar 0x40b2, 1
+ jump Route110_TrickHousePuzzle8_EventScript_16189C
+ end
+
+Route110_TrickHousePuzzle8_EventScript_163439:: @ 8163439
+ trainerbattle 0, 76, 0, Route110_TrickHousePuzzle8_Text_19E178, Route110_TrickHousePuzzle8_Text_19E1A1
+ msgbox Route110_TrickHousePuzzle8_Text_19E1C5, 6
+ end
+
+Route110_TrickHousePuzzle8_EventScript_163450:: @ 8163450
+ trainerbattle 0, 93, 0, Route110_TrickHousePuzzle8_Text_19E201, Route110_TrickHousePuzzle8_Text_19E22C
+ msgbox Route110_TrickHousePuzzle8_Text_19E24C, 6
+ end
+
+Route110_TrickHousePuzzle8_EventScript_163467:: @ 8163467
+ trainerbattle 0, 77, 0, Route110_TrickHousePuzzle8_Text_19E284, Route110_TrickHousePuzzle8_Text_19E2C1
+ msgbox Route110_TrickHousePuzzle8_Text_19E2EE, 6
+ end
+
diff --git a/data/maps/scripts/Route111.s b/data/maps/scripts/Route111.s
new file mode 100644
index 000000000..4a977f132
--- /dev/null
+++ b/data/maps/scripts/Route111.s
@@ -0,0 +1,438 @@
+Route111_MapScripts:: @ 814FF91
+ map_script 1, Route111_MapScript1_14FF9C
+ map_script 3, Route111_MapScript1_14FFB9
+ .byte 0
+
+Route111_MapScript1_14FF9C:: @ 814FF9C
+ checkflag 228
+ callif 0, Route111_EventScript_14FFA6
+ end
+
+Route111_EventScript_14FFA6:: @ 814FFA6
+ setmaptile 29, 86, 124, 1
+ setmaptile 29, 87, 145, 1
+ return
+
+Route111_MapScript1_14FFB9:: @ 814FFB9
+ call Route111_EventScript_14FFCD
+ call Route111_EventScript_1AE313
+ checktrainerflag 312
+ jumpif 0, Route111_EventScript_15000D
+ end
+
+Route111_EventScript_14FFCD:: @ 814FFCD
+ getplayerxy 0x4000, 0x4001
+ compare 0x4001, 34
+ jumpif 0, Route111_EventScript_15000C
+ compare 0x4001, 107
+ jumpif 2, Route111_EventScript_15000C
+ compare 0x4001, 72
+ jumpif 2, Route111_EventScript_150009
+ compare 0x4000, 2000
+ jumpif 2, Route111_EventScript_15000C
+ compare 0x4000, 8
+ jumpif 0, Route111_EventScript_15000C
+
+Route111_EventScript_150009:: @ 8150009
+ setweather 8
+
+Route111_EventScript_15000C:: @ 815000C
+ return
+
+Route111_EventScript_15000D:: @ 815000D
+ clearflag 768
+ setflag 769
+ setflag 770
+ setflag 771
+ settrainerflag 292
+ settrainerflag 299
+ settrainerflag 606
+ end
+
+Route111_EventScript_150023:: @ 8150023
+ lockall
+ msgbox Route111_Text_16FA54, 5
+ compare RESULT, 0
+ jumpeq Route111_EventScript_15005F
+ giveitem ITEM_ROOT_FOSSIL
+ closebutton
+ setflag 963
+ setflag 964
+ disappear 34
+ pause 30
+ move 35, Route111_Movement_1500AF
+ waitmove 0
+ disappear 35
+ releaseall
+ end
+
+Route111_EventScript_15005F:: @ 815005F
+ msgbox Route111_Text_16FACE, 4
+ releaseall
+ end
+
+Route111_EventScript_150069:: @ 8150069
+ lockall
+ msgbox Route111_Text_16FAED, 5
+ compare RESULT, 0
+ jumpeq Route111_EventScript_1500A5
+ giveitem ITEM_CLAW_FOSSIL
+ closebutton
+ setflag 964
+ setflag 963
+ disappear 35
+ pause 30
+ move 34, Route111_Movement_1500AF
+ waitmove 0
+ disappear 34
+ releaseall
+ end
+
+Route111_EventScript_1500A5:: @ 81500A5
+ msgbox Route111_Text_16FB67, 4
+ releaseall
+ end
+
+Route111_Movement_1500AF:: @ 81500AF
+ step_55
+ step_12
+ step_54
+ step_12
+ step_55
+ step_12
+ step_54
+ step_12
+ step_55
+ step_13
+ step_54
+ step_13
+ step_55
+ step_13
+ step_54
+ step_13
+ step_55
+ step_14
+ step_54
+ step_14
+ step_55
+ step_end
+
+Route111_EventScript_1500C5:: @ 81500C5
+ lock
+ faceplayer
+ checkdailyflags
+ checkflag 2252
+ jumpeq Route111_EventScript_150100
+ msgbox Route111_Text_1C56F0, 4
+ giveitem ITEM_RAZZ_BERRY
+ compare RESULT, 0
+ jumpeq Route111_EventScript_1A029B
+ setflag 2252
+ special 148
+ msgbox Route111_Text_1C5781, 4
+ release
+ end
+
+Route111_EventScript_150100:: @ 8150100
+ msgbox Route111_Text_1C57D2, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x15010a, 0xc
+
+Route111_EventScript_150116:: @ 8150116
+ lockall
+ setvar 0x8004, 1
+ jump Route111_EventScript_15013A
+ end
+
+Route111_EventScript_150122:: @ 8150122
+ lockall
+ setvar 0x8004, 2
+ jump Route111_EventScript_15013A
+ end
+
+ .incbin "baserom.gba", 0x15012e, 0xc
+
+Route111_EventScript_15013A:: @ 815013A
+ checkitem ITEM_GO_GOGGLES, 1
+ compare RESULT, 0
+ jumpeq Route111_EventScript_150151
+ setvar 0x4003, 1
+ releaseall
+ end
+
+Route111_EventScript_150151:: @ 8150151
+ msgbox Route111_Text_1A0F93, 4
+ closebutton
+ compare 0x8004, 0
+ callif 1, Route111_EventScript_150188
+ compare 0x8004, 1
+ callif 1, Route111_EventScript_150193
+ compare 0x8004, 2
+ callif 1, Route111_EventScript_15019E
+ compare 0x8004, 3
+ callif 1, Route111_EventScript_1501A9
+ releaseall
+ end
+
+Route111_EventScript_150188:: @ 8150188
+ move 255, Route111_Movement_1501B4
+ waitmove 0
+ return
+
+Route111_EventScript_150193:: @ 8150193
+ move 255, Route111_Movement_1501B6
+ waitmove 0
+ return
+
+Route111_EventScript_15019E:: @ 815019E
+ move 255, Route111_Movement_1501B8
+ waitmove 0
+ return
+
+Route111_EventScript_1501A9:: @ 81501A9
+ move 255, Route111_Movement_1501BA
+ waitmove 0
+ return
+
+Route111_Movement_1501B4:: @ 81501B4
+ step_up
+ step_end
+
+Route111_Movement_1501B6:: @ 81501B6
+ step_down
+ step_end
+
+Route111_Movement_1501B8:: @ 81501B8
+ step_left
+ step_end
+
+Route111_Movement_1501BA:: @ 81501BA
+ step_right
+ step_end
+
+Route111_EventScript_1501BC:: @ 81501BC
+ setweather 2
+ fademusic 360
+ doweather
+ setvar 0x4003, 0
+ end
+
+Route111_EventScript_1501C9:: @ 81501C9
+ setweather 8
+ fademusic 409
+ doweather
+ end
+
+Route111_EventScript_1501D1:: @ 81501D1
+ lock
+ faceplayer
+ setflag 2115
+ msgbox Route111_Text_16F705, 5
+ compare RESULT, 1
+ jumpeq Route111_EventScript_1501F3
+ msgbox Route111_Text_16F785, 4
+ release
+ end
+
+Route111_EventScript_1501F3:: @ 81501F3
+ msgbox Route111_Text_16F7B3, 4
+ trainerbattle 3, 292, 0, Route111_Text_16F7D2
+ move 1, Route111_Movement_1A0841
+ waitmove 0
+ call Route111_EventScript_150348
+ msgbox Route111_Text_16F7FF, 4
+ closebutton
+ move 1, Route111_Movement_150356
+ waitmove 0
+ disappear 1
+ call Route111_EventScript_15034F
+ move 255, Route111_Movement_15035B
+ waitmove 0
+ call Route111_EventScript_150348
+ reappear 2
+ move 2, Route111_Movement_150359
+ waitmove 0
+ call Route111_EventScript_15034F
+ msgbox Route111_Text_16F82D, 4
+ trainerbattle 3, 299, 0, Route111_Text_16F8A6
+ move 2, Route111_Movement_1A0841
+ waitmove 0
+ call Route111_EventScript_150348
+ msgbox Route111_Text_16F8D5, 4
+ closebutton
+ move 2, Route111_Movement_150356
+ waitmove 0
+ disappear 2
+ call Route111_EventScript_15034F
+ move 255, Route111_Movement_15035B
+ waitmove 0
+ call Route111_EventScript_150348
+ reappear 3
+ move 3, Route111_Movement_150359
+ waitmove 0
+ call Route111_EventScript_15034F
+ msgbox Route111_Text_16F90E, 4
+ trainerbattle 3, 606, 0, Route111_Text_16F956
+ move 3, Route111_Movement_1A0841
+ waitmove 0
+ call Route111_EventScript_150348
+ msgbox Route111_Text_16F96C, 4
+ closebutton
+ move 3, Route111_Movement_150356
+ waitmove 0
+ disappear 3
+ call Route111_EventScript_15034F
+ move 255, Route111_Movement_15035B
+ waitmove 0
+ call Route111_EventScript_150348
+ reappear 4
+ move 4, Route111_Movement_150359
+ waitmove 0
+ call Route111_EventScript_15034F
+ msgbox Route111_Text_16F991, 4
+ trainerbattle 3, 312, 0, Route111_Text_16F9EC
+ msgbox Route111_Text_16FA22, 4
+ closebutton
+ move 4, Route111_Movement_1A0841
+ waitmove 0
+ call Route111_EventScript_150348
+ move 4, Route111_Movement_150356
+ waitmove 0
+ disappear 4
+ call Route111_EventScript_15034F
+ release
+ end
+
+Route111_EventScript_150348:: @ 8150348
+ setdooropened 13, 113
+ doorchange
+ return
+
+Route111_EventScript_15034F:: @ 815034F
+ setdoorclosed 13, 113
+ doorchange
+ return
+
+Route111_Movement_150356:: @ 8150356
+ step_26
+ step_up
+ step_end
+
+Route111_Movement_150359:: @ 8150359
+ step_down
+ step_end
+
+Route111_Movement_15035B:: @ 815035B
+ step_14
+ step_14
+ step_14
+ step_end
+
+Route111_EventScript_15035F:: @ 815035F
+ msgbox Route111_Text_16FC9C, 3
+ end
+
+Route111_EventScript_150368:: @ 8150368
+ msgbox Route111_Text_16FCB6, 3
+ end
+
+Route111_EventScript_150371:: @ 8150371
+ msgbox Route111_Text_16FCEF, 3
+ end
+
+Route111_EventScript_15037A:: @ 815037A
+ msgbox Route111_Text_16FD05, 3
+ end
+
+Route111_EventScript_150383:: @ 8150383
+ msgbox Route111_Text_16FD1B, 3
+ end
+
+Route111_EventScript_15038C:: @ 815038C
+ msgbox Route111_Text_16FD55, 3
+ end
+
+Route111_EventScript_150395:: @ 8150395
+ msgbox Route111_Text_16FB86, 2
+ end
+
+Route111_EventScript_15039E:: @ 815039E
+ msgbox Route111_Text_16FC3A, 2
+ end
+
+Route111_EventScript_1503A7:: @ 81503A7
+ trainerbattle 0, 211, 0, Route111_Text_1BAB4B, Route111_Text_1BABC7
+ msgbox Route111_Text_1BAC10, 6
+ end
+
+Route111_EventScript_1503BE:: @ 81503BE
+ trainerbattle 0, 469, 0, Route111_Text_1BAC60, Route111_Text_1BACC5
+ msgbox Route111_Text_1BACD8, 6
+ end
+
+Route111_EventScript_1503D5:: @ 81503D5
+ trainerbattle 0, 212, 0, Route111_Text_1BAD4B, Route111_Text_1BADA3
+ msgbox Route111_Text_1BADC2, 6
+ end
+
+Route111_EventScript_1503EC:: @ 81503EC
+ trainerbattle 0, 470, 0, Route111_Text_1BAE24, Route111_Text_1BAE6E
+ msgbox Route111_Text_1BAE81, 6
+ end
+
+Route111_EventScript_150403:: @ 8150403
+ trainerbattle 0, 44, 0, Route111_Text_1BAEC9, Route111_Text_1BAF14
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route111_EventScript_15042A
+ msgbox Route111_Text_1BAF5B, 6
+ end
+
+Route111_EventScript_15042A:: @ 815042A
+ trainerbattle 5, 44, 0, Route111_Text_1BAFC1, Route111_Text_1BB034
+ msgbox Route111_Text_1BB070, 6
+ end
+
+Route111_EventScript_150441:: @ 8150441
+ trainerbattle 0, 218, 0, Route111_Text_1BB111, Route111_Text_1BB140
+ msgbox Route111_Text_1BB15B, 6
+ end
+
+Route111_EventScript_150458:: @ 8150458
+ trainerbattle 0, 476, 0, Route111_Text_1BB199, Route111_Text_1BB1D8
+ msgbox Route111_Text_1BB1F6, 6
+ end
+
+Route111_EventScript_15046F:: @ 815046F
+ trainerbattle 0, 189, 0, Route111_Text_1BB250, Route111_Text_1BB27E
+ msgbox Route111_Text_1BB290, 6
+ end
+
+Route111_EventScript_150486:: @ 8150486
+ trainerbattle 0, 78, 0, Route111_Text_1BB2E3, Route111_Text_1BB313
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route111_EventScript_1504AD
+ msgbox Route111_Text_1BB33E, 6
+ end
+
+Route111_EventScript_1504AD:: @ 81504AD
+ trainerbattle 5, 78, 0, Route111_Text_1BB3A7, Route111_Text_1BB3FA
+ msgbox Route111_Text_1BB40E, 6
+ end
+
+Route111_EventScript_1504C4:: @ 81504C4
+ trainerbattle 0, 94, 0, Route111_Text_1BB44F, Route111_Text_1BB49F
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route111_EventScript_1504EB
+ msgbox Route111_Text_1BB4CE, 6
+ end
+
+Route111_EventScript_1504EB:: @ 81504EB
+ trainerbattle 5, 94, 0, Route111_Text_1BB529, Route111_Text_1BB5A2
+ msgbox Route111_Text_1BB5C1, 6
+ end
+
diff --git a/data/maps/scripts/Route111_OldLadysRestStop.s b/data/maps/scripts/Route111_OldLadysRestStop.s
new file mode 100644
index 000000000..81f66b738
--- /dev/null
+++ b/data/maps/scripts/Route111_OldLadysRestStop.s
@@ -0,0 +1,34 @@
+Route111_OldLadysRestStop_MapScripts:: @ 815BFD1
+ map_script 3, Route111_OldLadysRestStop_MapScript1_15BFD7
+ .byte 0
+
+Route111_OldLadysRestStop_MapScript1_15BFD7:: @ 815BFD7
+ setflag 2113
+ end
+
+Route111_OldLadysRestStop_EventScript_15BFDB:: @ 815BFDB
+ lock
+ faceplayer
+ msgbox Route111_OldLadysRestStop_Text_1923AF, 5
+ compare RESULT, 1
+ jumpeq Route111_OldLadysRestStop_EventScript_15BFFC
+ compare RESULT, 0
+ jumpeq Route111_OldLadysRestStop_EventScript_15C029
+ end
+
+Route111_OldLadysRestStop_EventScript_15BFFC:: @ 815BFFC
+ msgbox Route111_OldLadysRestStop_Text_192423, 4
+ closebutton
+ call Route111_OldLadysRestStop_EventScript_1A02CA
+ msgbox Route111_OldLadysRestStop_Text_19244D, 5
+ compare RESULT, 1
+ jumpeq Route111_OldLadysRestStop_EventScript_15BFFC
+ compare RESULT, 0
+ jumpeq Route111_OldLadysRestStop_EventScript_15C029
+ end
+
+Route111_OldLadysRestStop_EventScript_15C029:: @ 815C029
+ msgbox Route111_OldLadysRestStop_Text_1924C6, 4
+ release
+ end
+
diff --git a/data/maps/scripts/Route111_WinstrateFamilysHouse.s b/data/maps/scripts/Route111_WinstrateFamilysHouse.s
new file mode 100644
index 000000000..b48269333
--- /dev/null
+++ b/data/maps/scripts/Route111_WinstrateFamilysHouse.s
@@ -0,0 +1,61 @@
+Route111_WinstrateFamilysHouse_MapScripts:: @ 815BF24
+ .byte 0
+
+Route111_WinstrateFamilysHouse_EventScript_15BF25:: @ 815BF25
+ lock
+ faceplayer
+ setvar 0x8008, 2
+ msgbox Route111_WinstrateFamilysHouse_Text_191FCE, 4
+ jump Route111_WinstrateFamilysHouse_EventScript_15BFC4
+ end
+
+Route111_WinstrateFamilysHouse_EventScript_15BF3A:: @ 815BF3A
+ lock
+ faceplayer
+ setvar 0x8008, 3
+ checkflag 277
+ jumpeq Route111_WinstrateFamilysHouse_EventScript_15BF72
+ msgbox Route111_WinstrateFamilysHouse_Text_19208A, 4
+ giveitem ITEM_MACHO_BRACE
+ compare RESULT, 0
+ jumpeq Route111_WinstrateFamilysHouse_EventScript_1A029B
+ setflag 277
+ jump Route111_WinstrateFamilysHouse_EventScript_15BFC4
+ end
+
+Route111_WinstrateFamilysHouse_EventScript_15BF72:: @ 815BF72
+ msgbox Route111_WinstrateFamilysHouse_Text_19214D, 4
+ jump Route111_WinstrateFamilysHouse_EventScript_15BFC4
+ end
+
+Route111_WinstrateFamilysHouse_EventScript_15BF80:: @ 815BF80
+ lock
+ faceplayer
+ setvar 0x8008, 1
+ msgbox Route111_WinstrateFamilysHouse_Text_192190, 4
+ jump Route111_WinstrateFamilysHouse_EventScript_15BFC4
+ end
+
+Route111_WinstrateFamilysHouse_EventScript_15BF95:: @ 815BF95
+ lock
+ faceplayer
+ setvar 0x8008, 4
+ checkflag 4
+ jumpeq Route111_WinstrateFamilysHouse_EventScript_15BFB6
+ msgbox Route111_WinstrateFamilysHouse_Text_192219, 4
+ setflag 4
+ jump Route111_WinstrateFamilysHouse_EventScript_15BFC4
+ end
+
+Route111_WinstrateFamilysHouse_EventScript_15BFB6:: @ 815BFB6
+ msgbox Route111_WinstrateFamilysHouse_Text_192334, 4
+ jump Route111_WinstrateFamilysHouse_EventScript_15BFC4
+ end
+
+Route111_WinstrateFamilysHouse_EventScript_15BFC4:: @ 815BFC4
+ closebutton
+ move 0x8008, Route111_WinstrateFamilysHouse_Movement_1A083D
+ waitmove 0
+ release
+ end
+
diff --git a/data/maps/scripts/Route112.s b/data/maps/scripts/Route112.s
new file mode 100644
index 000000000..b97a28d75
--- /dev/null
+++ b/data/maps/scripts/Route112.s
@@ -0,0 +1,61 @@
+Route112_MapScripts:: @ 8150502
+ map_script 3, Route112_MapScript1_150508
+ .byte 0
+
+Route112_MapScript1_150508:: @ 8150508
+ call Route112_EventScript_1A0196
+ setvar 0x40bd, 0
+ end
+
+Route112_EventScript_150513:: @ 8150513
+ msgbox Route112_Text_16FDF0, 2
+ end
+
+Route112_EventScript_15051C:: @ 815051C
+ msgbox Route112_Text_16FE3E, 2
+ end
+
+Route112_EventScript_150525:: @ 8150525
+ msgbox Route112_Text_16FEED, 3
+ end
+
+Route112_EventScript_15052E:: @ 815052E
+ msgbox Route112_Text_16FF19, 3
+ end
+
+Route112_EventScript_150537:: @ 8150537
+ msgbox Route112_Text_16FF64, 3
+ end
+
+Route112_EventScript_150540:: @ 8150540
+ msgbox Route112_Text_16FE7A, 2
+ end
+
+Route112_EventScript_150549:: @ 8150549
+ trainerbattle 0, 626, 0, Route112_Text_1BB619, Route112_Text_1BB655
+ msgbox Route112_Text_1BB667, 6
+ end
+
+Route112_EventScript_150560:: @ 8150560
+ trainerbattle 0, 627, 0, Route112_Text_1BB6A0, Route112_Text_1BB707
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route112_EventScript_150587
+ msgbox Route112_Text_1BB721, 6
+ end
+
+Route112_EventScript_150587:: @ 8150587
+ trainerbattle 5, 627, 0, Route112_Text_1BB7C7, Route112_Text_1BB801
+ msgbox Route112_Text_1BB819, 6
+ end
+
+Route112_EventScript_15059E:: @ 815059E
+ trainerbattle 0, 213, 0, Route112_Text_1BB893, Route112_Text_1BB8B6
+ msgbox Route112_Text_1BB8BE, 6
+ end
+
+Route112_EventScript_1505B5:: @ 81505B5
+ trainerbattle 0, 471, 0, Route112_Text_1BB8F0, Route112_Text_1BB942
+ msgbox Route112_Text_1BB958, 6
+ end
+
diff --git a/data/maps/scripts/Route112_CableCarStation.s b/data/maps/scripts/Route112_CableCarStation.s
new file mode 100644
index 000000000..4d4ab5c92
--- /dev/null
+++ b/data/maps/scripts/Route112_CableCarStation.s
@@ -0,0 +1,89 @@
+Route112_CableCarStation_MapScripts:: @ 815C033
+ map_script 3, Route112_CableCarStation_MapScript1_15C03E
+ map_script 2, Route112_CableCarStation_MapScript2_15C05E
+ .byte 0
+
+Route112_CableCarStation_MapScript1_15C03E:: @ 815C03E
+ warp6 Route112, 255, 28, 28
+ compare 0x40a3, 2
+ callif 1, Route112_CableCarStation_EventScript_15C052
+ end
+
+Route112_CableCarStation_EventScript_15C052:: @ 815C052
+ movespriteperm 1, 7, 4
+ spritebehave 1, 9
+ return
+
+Route112_CableCarStation_MapScript2_15C05E:: @ 815C05E
+ map_script_2 0x40a3, 2, Route112_CableCarStation_EventScript_15C068
+ .2byte 0
+
+Route112_CableCarStation_EventScript_15C068:: @ 815C068
+ lockall
+ move 255, Route112_CableCarStation_Movement_15C0F5
+ move 1, Route112_CableCarStation_Movement_15C0EB
+ waitmove 0
+ setvar 0x40a3, 0
+ movespriteperm 1, 6, 7
+ spritebehave 1, 8
+ releaseall
+ end
+
+Route112_CableCarStation_EventScript_15C08C:: @ 815C08C
+ lock
+ faceplayer
+ msgbox Route112_CableCarStation_Text_1924F5, 5
+ compare RESULT, 1
+ jumpeq Route112_CableCarStation_EventScript_15C0AD
+ compare RESULT, 0
+ jumpeq Route112_CableCarStation_EventScript_15C0DC
+ end
+
+Route112_CableCarStation_EventScript_15C0AD:: @ 815C0AD
+ msgbox Route112_CableCarStation_Text_1925A9, 4
+ closebutton
+ move 1, Route112_CableCarStation_Movement_15C0E6
+ move 255, Route112_CableCarStation_Movement_15C0F0
+ waitmove 0
+ setvar 0x8004, 0
+ setvar 0x40a3, 1
+ inccounter 48
+ special 151
+ special 152
+ waitstate
+ release
+ end
+
+Route112_CableCarStation_EventScript_15C0DC:: @ 815C0DC
+ msgbox Route112_CableCarStation_Text_192548, 4
+ release
+ end
+
+Route112_CableCarStation_Movement_15C0E6:: @ 815C0E6
+ step_up
+ step_up
+ step_right
+ step_27
+ step_end
+
+Route112_CableCarStation_Movement_15C0EB:: @ 815C0EB
+ step_14
+ step_left
+ step_down
+ step_down
+ step_end
+
+Route112_CableCarStation_Movement_15C0F0:: @ 815C0F0
+ step_up
+ step_up
+ step_up
+ step_14
+ step_end
+
+Route112_CableCarStation_Movement_15C0F5:: @ 815C0F5
+ step_down
+ step_down
+ step_down
+ step_14
+ step_end
+
diff --git a/data/maps/scripts/Route113.s b/data/maps/scripts/Route113.s
new file mode 100644
index 000000000..d56e7c5d5
--- /dev/null
+++ b/data/maps/scripts/Route113.s
@@ -0,0 +1,101 @@
+Route113_MapScripts:: @ 81505CC
+ map_script 5, Route113_MapScript1_1505D7
+ map_script 3, Route113_MapScript1_1505DA
+ .byte 0
+
+Route113_MapScript1_1505D7:: @ 81505D7
+ tileeffect 1
+ end
+
+Route113_MapScript1_1505DA:: @ 81505DA
+ call Route113_EventScript_1505E5
+ call Route113_EventScript_1A0196
+ end
+
+Route113_EventScript_1505E5:: @ 81505E5
+ getplayerxy 0x4000, 0x4001
+ compare 0x4000, 19
+ jumpif 0, Route113_EventScript_150604
+ compare 0x4000, 84
+ jumpif 2, Route113_EventScript_150604
+ setweather 7
+ return
+
+Route113_EventScript_150604:: @ 8150604
+ return
+
+Route113_EventScript_150605:: @ 8150605
+ msgbox Route113_Text_16FF7F, 2
+ end
+
+Route113_EventScript_15060E:: @ 815060E
+ msgbox Route113_Text_16FFEE, 2
+ end
+
+Route113_EventScript_150617:: @ 8150617
+ msgbox Route113_Text_170065, 3
+ end
+
+Route113_EventScript_150620:: @ 8150620
+ msgbox Route113_Text_17007B, 3
+ end
+
+Route113_EventScript_150629:: @ 8150629
+ msgbox Route113_Text_17011D, 3
+ end
+
+Route113_EventScript_150632:: @ 8150632
+ msgbox Route113_Text_170096, 3
+ end
+
+Route113_EventScript_15063B:: @ 815063B
+ trainerbattle 0, 326, 0, Route113_Text_1BB9BA, Route113_Text_1BB9E6
+ msgbox Route113_Text_1BB9FB, 6
+ end
+
+Route113_EventScript_150652:: @ 8150652
+ trainerbattle 0, 327, 0, Route113_Text_1BBA62, Route113_Text_1BBA9B
+ msgbox Route113_Text_1BBAB7, 6
+ end
+
+Route113_EventScript_150669:: @ 8150669
+ trainerbattle 0, 434, 0, Route113_Text_1BBB27, Route113_Text_1BBB7A
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route113_EventScript_150690
+ msgbox Route113_Text_1BBB9A, 6
+ end
+
+Route113_EventScript_150690:: @ 8150690
+ trainerbattle 5, 434, 0, Route113_Text_1BBBCE, Route113_Text_1BBC0D
+ msgbox Route113_Text_1BBC1C, 6
+ end
+
+Route113_EventScript_1506A7:: @ 81506A7
+ trainerbattle 0, 419, 0, Route113_Text_1BBC59, Route113_Text_1BBC90
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route113_EventScript_1506CE
+ msgbox Route113_Text_1BBCAB, 6
+ end
+
+Route113_EventScript_1506CE:: @ 81506CE
+ trainerbattle 5, 419, 0, Route113_Text_1BBCE6, Route113_Text_1BBD1D
+ msgbox Route113_Text_1BBD38, 6
+ end
+
+Route113_EventScript_1506E5:: @ 81506E5
+ trainerbattle 0, 420, 0, Route113_Text_1BBD92, Route113_Text_1BBDC6
+ msgbox Route113_Text_1BBE1D, 6
+ end
+
+Route113_EventScript_1506FC:: @ 81506FC
+ trainerbattle 4, 677, 0, Route113_Text_1BBE65, Route113_Text_1BBEA1, Route113_Text_1BBF25
+ msgbox Route113_Text_1BBEE4, 6
+ end
+
+Route113_EventScript_150717:: @ 8150717
+ trainerbattle 4, 677, 0, Route113_Text_1BBF62, Route113_Text_1BBF9D, Route113_Text_1BC021
+ msgbox Route113_Text_1BBFE2, 6
+ end
+
diff --git a/data/maps/scripts/Route113_GlassWorkshop.s b/data/maps/scripts/Route113_GlassWorkshop.s
new file mode 100644
index 000000000..51a4b7b7e
--- /dev/null
+++ b/data/maps/scripts/Route113_GlassWorkshop.s
@@ -0,0 +1,309 @@
+Route113_GlassWorkshop_MapScripts:: @ 816354A
+ map_script 3, Route113_GlassWorkshop_MapScript1_163550
+ .byte 0
+
+Route113_GlassWorkshop_MapScript1_163550:: @ 8163550
+ setflag 2116
+ compare 0x40be, 1
+ callif 1, Route113_GlassWorkshop_EventScript_16355F
+ end
+
+Route113_GlassWorkshop_EventScript_16355F:: @ 816355F
+ setvar 0x40be, 2
+ return
+
+Route113_GlassWorkshop_EventScript_163565:: @ 8163565
+ lock
+ faceplayer
+ compare 0x40be, 10
+ jumpif 4, Route113_GlassWorkshop_EventScript_1638D2
+ compare 0x40be, 2
+ jumpeq Route113_GlassWorkshop_EventScript_1635B5
+ compare 0x40be, 1
+ jumpeq Route113_GlassWorkshop_EventScript_1635AB
+ msgbox Route113_GlassWorkshop_Text_19E4E6, 4
+ giveitem ITEM_SOOT_SACK
+ setvar 0x40be, 1
+ msgbox Route113_GlassWorkshop_Text_19E59B, 4
+ release
+ end
+
+Route113_GlassWorkshop_EventScript_1635AB:: @ 81635AB
+ msgbox Route113_GlassWorkshop_Text_19E59B, 4
+ release
+ end
+
+Route113_GlassWorkshop_EventScript_1635B5:: @ 81635B5
+ checkitem ITEM_SOOT_SACK, 1
+ compare RESULT, 0
+ jumpeq Route113_GlassWorkshop_EventScript_1635E4
+ msgbox Route113_GlassWorkshop_Text_19E65B, 4
+ compare 0x4048, 250
+ jumpif 0, Route113_GlassWorkshop_EventScript_163818
+ message Route113_GlassWorkshop_Text_19E757
+ waittext
+ jump Route113_GlassWorkshop_EventScript_1635EE
+ end
+
+Route113_GlassWorkshop_EventScript_1635E4:: @ 81635E4
+ msgbox Route113_GlassWorkshop_Text_19EAC1, 4
+ release
+ end
+
+Route113_GlassWorkshop_EventScript_1635EE:: @ 81635EE
+ setvar 0x8009, 0
+ special 274
+ waitstate
+ switch RESULT
+ case 0, Route113_GlassWorkshop_EventScript_163660
+ case 1, Route113_GlassWorkshop_EventScript_16369C
+ case 2, Route113_GlassWorkshop_EventScript_1636D8
+ case 3, Route113_GlassWorkshop_EventScript_163714
+ case 4, Route113_GlassWorkshop_EventScript_163750
+ case 5, Route113_GlassWorkshop_EventScript_16378C
+ case 6, Route113_GlassWorkshop_EventScript_1637CD
+ case 7, Route113_GlassWorkshop_EventScript_16380E
+ case 127, Route113_GlassWorkshop_EventScript_16380E
+ end
+
+Route113_GlassWorkshop_EventScript_163660:: @ 8163660
+ setvar 0x8008, 39
+ bufferitem 0, 0x8008
+ setvar 0x800a, 250
+ compare 0x4048, 250
+ jumpif 0, Route113_GlassWorkshop_EventScript_163830
+ msgbox Route113_GlassWorkshop_Text_19E7CD, 5
+ compare RESULT, 0
+ jumpeq Route113_GlassWorkshop_EventScript_163845
+ setvar 0x40be, 10
+ subvar 0x4048, 250
+ jump Route113_GlassWorkshop_EventScript_163851
+ end
+
+Route113_GlassWorkshop_EventScript_16369C:: @ 816369C
+ setvar 0x8008, 40
+ bufferitem 0, 0x8008
+ setvar 0x800a, 500
+ compare 0x4048, 500
+ jumpif 0, Route113_GlassWorkshop_EventScript_163830
+ msgbox Route113_GlassWorkshop_Text_19E7CD, 5
+ compare RESULT, 0
+ jumpeq Route113_GlassWorkshop_EventScript_163845
+ setvar 0x40be, 11
+ subvar 0x4048, 500
+ jump Route113_GlassWorkshop_EventScript_163851
+ end
+
+Route113_GlassWorkshop_EventScript_1636D8:: @ 81636D8
+ setvar 0x8008, 41
+ bufferitem 0, 0x8008
+ setvar 0x800a, 500
+ compare 0x4048, 500
+ jumpif 0, Route113_GlassWorkshop_EventScript_163830
+ msgbox Route113_GlassWorkshop_Text_19E7CD, 5
+ compare RESULT, 0
+ jumpeq Route113_GlassWorkshop_EventScript_163845
+ setvar 0x40be, 12
+ subvar 0x4048, 500
+ jump Route113_GlassWorkshop_EventScript_163851
+ end
+
+Route113_GlassWorkshop_EventScript_163714:: @ 8163714
+ setvar 0x8008, 43
+ bufferitem 0, 0x8008
+ setvar 0x800a, 1000
+ compare 0x4048, 1000
+ jumpif 0, Route113_GlassWorkshop_EventScript_163830
+ msgbox Route113_GlassWorkshop_Text_19E7CD, 5
+ compare RESULT, 0
+ jumpeq Route113_GlassWorkshop_EventScript_163845
+ setvar 0x40be, 13
+ subvar 0x4048, 1000
+ jump Route113_GlassWorkshop_EventScript_163851
+ end
+
+Route113_GlassWorkshop_EventScript_163750:: @ 8163750
+ setvar 0x8008, 42
+ bufferitem 0, 0x8008
+ setvar 0x800a, 1000
+ compare 0x4048, 1000
+ jumpif 0, Route113_GlassWorkshop_EventScript_163830
+ msgbox Route113_GlassWorkshop_Text_19E7CD, 5
+ compare RESULT, 0
+ jumpeq Route113_GlassWorkshop_EventScript_163845
+ setvar 0x40be, 14
+ subvar 0x4048, 1000
+ jump Route113_GlassWorkshop_EventScript_163851
+ end
+
+Route113_GlassWorkshop_EventScript_16378C:: @ 816378C
+ setvar 0x8009, 1
+ setvar 0x8008, 13
+ bufferdecor 0, 0x8008
+ setvar 0x800a, 6000
+ compare 0x4048, 6000
+ jumpif 0, Route113_GlassWorkshop_EventScript_163830
+ msgbox Route113_GlassWorkshop_Text_19E7CD, 5
+ compare RESULT, 0
+ jumpeq Route113_GlassWorkshop_EventScript_163845
+ setvar 0x40be, 15
+ subvar 0x4048, 6000
+ jump Route113_GlassWorkshop_EventScript_163851
+ end
+
+Route113_GlassWorkshop_EventScript_1637CD:: @ 81637CD
+ setvar 0x8009, 1
+ setvar 0x8008, 6
+ bufferdecor 0, 0x8008
+ setvar 0x800a, 8000
+ compare 0x4048, 8000
+ jumpif 0, Route113_GlassWorkshop_EventScript_163830
+ msgbox Route113_GlassWorkshop_Text_19E7CD, 5
+ compare RESULT, 0
+ jumpeq Route113_GlassWorkshop_EventScript_163845
+ setvar 0x40be, 16
+ subvar 0x4048, 8000
+ jump Route113_GlassWorkshop_EventScript_163851
+ end
+
+Route113_GlassWorkshop_EventScript_16380E:: @ 816380E
+ msgbox Route113_GlassWorkshop_Text_19E990, 4
+ release
+ end
+
+Route113_GlassWorkshop_EventScript_163818:: @ 8163818
+ setvar 0x800a, 250
+ subvar 0x800a, 16456
+ buffernum 0, 32778
+ msgbox Route113_GlassWorkshop_Text_19E697, 4
+ release
+ end
+
+Route113_GlassWorkshop_EventScript_163830:: @ 8163830
+ subvar 0x800a, 16456
+ buffernum 1, 32778
+ message Route113_GlassWorkshop_Text_19E890
+ waittext
+ jump Route113_GlassWorkshop_EventScript_1635EE
+ end
+
+Route113_GlassWorkshop_EventScript_163845:: @ 8163845
+ message Route113_GlassWorkshop_Text_19E802
+ waittext
+ jump Route113_GlassWorkshop_EventScript_1635EE
+ end
+
+Route113_GlassWorkshop_EventScript_163851:: @ 8163851
+ msgbox Route113_GlassWorkshop_Text_19E827, 4
+ closebutton
+ fadescreen 1
+ playsfx 5
+ pause 30
+ fadescreen 0
+ msgbox Route113_GlassWorkshop_Text_19E9D7, 4
+ compare 0x8009, 0
+ callif 1, Route113_GlassWorkshop_EventScript_163889
+ compare 0x8009, 1
+ callif 1, Route113_GlassWorkshop_EventScript_1638A1
+ setvar 0x40be, 2
+ release
+ end
+
+Route113_GlassWorkshop_EventScript_163889:: @ 8163889
+ giveitem 0x8008
+ compare RESULT, 0
+ jumpeq Route113_GlassWorkshop_EventScript_1638B4
+ return
+
+Route113_GlassWorkshop_EventScript_1638A1:: @ 81638A1
+ givedecoration 0x8008
+ compare RESULT, 0
+ jumpeq Route113_GlassWorkshop_EventScript_1638C3
+ return
+
+Route113_GlassWorkshop_EventScript_1638B4:: @ 81638B4
+ call Route113_GlassWorkshop_EventScript_1A02A5
+ msgbox Route113_GlassWorkshop_Text_19EA06, 4
+ release
+ end
+
+Route113_GlassWorkshop_EventScript_1638C3:: @ 81638C3
+ call Route113_GlassWorkshop_EventScript_1A02B8
+ msgbox Route113_GlassWorkshop_Text_19EA64, 4
+ release
+ end
+
+Route113_GlassWorkshop_EventScript_1638D2:: @ 81638D2
+ switch 0x40be
+ case 10, Route113_GlassWorkshop_EventScript_163925
+ case 11, Route113_GlassWorkshop_EventScript_163939
+ case 12, Route113_GlassWorkshop_EventScript_16394D
+ case 13, Route113_GlassWorkshop_EventScript_163961
+ case 14, Route113_GlassWorkshop_EventScript_163975
+ case 15, Route113_GlassWorkshop_EventScript_163989
+ case 16, Route113_GlassWorkshop_EventScript_16399D
+ end
+
+Route113_GlassWorkshop_EventScript_163925:: @ 8163925
+ setvar 0x8009, 0
+ setvar 0x8008, 39
+ bufferitem 0, 0x8008
+ jump Route113_GlassWorkshop_EventScript_1639B1
+ end
+
+Route113_GlassWorkshop_EventScript_163939:: @ 8163939
+ setvar 0x8009, 0
+ setvar 0x8008, 40
+ bufferitem 0, 0x8008
+ jump Route113_GlassWorkshop_EventScript_1639B1
+ end
+
+Route113_GlassWorkshop_EventScript_16394D:: @ 816394D
+ setvar 0x8009, 0
+ setvar 0x8008, 41
+ bufferitem 0, 0x8008
+ jump Route113_GlassWorkshop_EventScript_1639B1
+ end
+
+Route113_GlassWorkshop_EventScript_163961:: @ 8163961
+ setvar 0x8009, 0
+ setvar 0x8008, 43
+ bufferitem 0, 0x8008
+ jump Route113_GlassWorkshop_EventScript_1639B1
+ end
+
+Route113_GlassWorkshop_EventScript_163975:: @ 8163975
+ setvar 0x8009, 0
+ setvar 0x8008, 42
+ bufferitem 0, 0x8008
+ jump Route113_GlassWorkshop_EventScript_1639B1
+ end
+
+Route113_GlassWorkshop_EventScript_163989:: @ 8163989
+ setvar 0x8009, 1
+ setvar 0x8008, 13
+ bufferdecor 0, 13
+ jump Route113_GlassWorkshop_EventScript_1639B1
+ end
+
+Route113_GlassWorkshop_EventScript_16399D:: @ 816399D
+ setvar 0x8009, 1
+ setvar 0x8008, 6
+ bufferdecor 0, 6
+ jump Route113_GlassWorkshop_EventScript_1639B1
+ end
+
+Route113_GlassWorkshop_EventScript_1639B1:: @ 81639B1
+ msgbox Route113_GlassWorkshop_Text_19E9D7, 4
+ compare 0x8009, 0
+ callif 1, Route113_GlassWorkshop_EventScript_163889
+ compare 0x8009, 1
+ callif 1, Route113_GlassWorkshop_EventScript_1638A1
+ setvar 0x40be, 2
+ release
+ end
+
+Route113_GlassWorkshop_EventScript_1639D6:: @ 81639D6
+ msgbox Route113_GlassWorkshop_Text_19EB3B, 2
+ end
+
diff --git a/data/maps/scripts/Route114.s b/data/maps/scripts/Route114.s
new file mode 100644
index 000000000..da590b8d6
--- /dev/null
+++ b/data/maps/scripts/Route114.s
@@ -0,0 +1,133 @@
+Route114_MapScripts:: @ 8150732
+ .byte 0
+
+Route114_EventScript_150733:: @ 8150733
+ lock
+ faceplayer
+ checkdailyflags
+ checkflag 2251
+ jumpeq Route114_EventScript_150778
+ msgbox Route114_Text_1C5803, 4
+ random 5
+ addvar RESULT, 15
+ addvar RESULT, 133
+ giveitem RESULT
+ compare RESULT, 0
+ jumpeq Route114_EventScript_1A029B
+ setflag 2251
+ msgbox Route114_Text_1C5861, 4
+ release
+ end
+
+Route114_EventScript_150778:: @ 8150778
+ msgbox Route114_Text_1C5878, 4
+ release
+ end
+
+Route114_EventScript_150782:: @ 8150782
+ lock
+ faceplayer
+ checkflag 231
+ jumpeq Route114_EventScript_1507B9
+ msgbox Route114_Text_170154, 4
+ giveitem ITEM_TM05
+ compare RESULT, 0
+ jumpeq Route114_EventScript_1A029B
+ setflag 231
+ msgbox Route114_Text_1701C5, 4
+ release
+ end
+
+Route114_EventScript_1507B9:: @ 81507B9
+ msgbox Route114_Text_1701C5, 4
+ release
+ end
+
+Route114_EventScript_1507C3:: @ 81507C3
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_POOCHYENA, 2
+ msgbox Route114_Text_1701F9, 4
+ waitpokecry
+ release
+ end
+
+Route114_EventScript_1507D6:: @ 81507D6
+ msgbox Route114_Text_170206, 3
+ end
+
+Route114_EventScript_1507DF:: @ 81507DF
+ msgbox Route114_Text_17022E, 3
+ end
+
+Route114_EventScript_1507E8:: @ 81507E8
+ msgbox Route114_Text_170263, 3
+ end
+
+Route114_EventScript_1507F1:: @ 81507F1
+ trainerbattle 0, 628, 0, Route114_Text_1BC05B, Route114_Text_1BC0B5
+ msgbox Route114_Text_1BC0C3, 6
+ end
+
+Route114_EventScript_150808:: @ 8150808
+ trainerbattle 0, 629, 0, Route114_Text_1BC125, Route114_Text_1BC163
+ msgbox Route114_Text_1BC184, 6
+ end
+
+Route114_EventScript_15081F:: @ 815081F
+ trainerbattle 0, 214, 0, Route114_Text_1BC1C8, Route114_Text_1BC23F
+ msgbox Route114_Text_1BC24F, 6
+ end
+
+Route114_EventScript_150836:: @ 8150836
+ trainerbattle 0, 472, 0, Route114_Text_1BC289, Route114_Text_1BC2BE
+ msgbox Route114_Text_1BC2C6, 6
+ end
+
+Route114_EventScript_15084D:: @ 815084D
+ trainerbattle 0, 143, 0, Route114_Text_1BC2F5, Route114_Text_1BC327
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route114_EventScript_150874
+ msgbox Route114_Text_1BC337, 6
+ end
+
+Route114_EventScript_150874:: @ 8150874
+ trainerbattle 5, 143, 0, Route114_Text_1BC3B3, Route114_Text_1BC3E0
+ msgbox Route114_Text_1BC40F, 6
+ end
+
+Route114_EventScript_15088B:: @ 815088B
+ trainerbattle 0, 206, 0, Route114_Text_1BC45A, Route114_Text_1BC499
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route114_EventScript_1508B2
+ msgbox Route114_Text_1BC4B5, 6
+ end
+
+Route114_EventScript_1508B2:: @ 81508B2
+ trainerbattle 5, 206, 0, Route114_Text_1BC525, Route114_Text_1BC559
+ msgbox Route114_Text_1BC58C, 6
+ end
+
+Route114_EventScript_1508C9:: @ 81508C9
+ trainerbattle 0, 338, 0, Route114_Text_1BC5FC, Route114_Text_1BC653
+ msgbox Route114_Text_1BC679, 6
+ end
+
+Route114_EventScript_1508E0:: @ 81508E0
+ trainerbattle 0, 342, 0, Route114_Text_1BC6EC, Route114_Text_1BC750
+ msgbox Route114_Text_1BC78A, 6
+ end
+
+Route114_EventScript_1508F7:: @ 81508F7
+ trainerbattle 4, 679, 0, Route114_Text_1BC7E3, Route114_Text_1BC834, Route114_Text_1BC88A
+ msgbox Route114_Text_1BC858, 6
+ end
+
+Route114_EventScript_150912:: @ 8150912
+ trainerbattle 4, 679, 0, Route114_Text_1BC8D8, Route114_Text_1BC8FB, Route114_Text_1BC96A
+ msgbox Route114_Text_1BC91E, 6
+ end
+
diff --git a/data/maps/scripts/Route114_FossilManiacsHouse.s b/data/maps/scripts/Route114_FossilManiacsHouse.s
new file mode 100644
index 000000000..71893af74
--- /dev/null
+++ b/data/maps/scripts/Route114_FossilManiacsHouse.s
@@ -0,0 +1,34 @@
+Route114_FossilManiacsHouse_MapScripts:: @ 815C1B9
+ map_script 3, Route114_FossilManiacsHouse_MapScript1_15C1BF
+ .byte 0
+
+Route114_FossilManiacsHouse_MapScript1_15C1BF:: @ 815C1BF
+ setflag 2135
+ end
+
+Route114_FossilManiacsHouse_EventScript_15C1C3:: @ 815C1C3
+ lock
+ faceplayer
+ checkflag 261
+ jumpeq Route114_FossilManiacsHouse_EventScript_15C1F2
+ msgbox Route114_FossilManiacsHouse_Text_1925E1, 4
+ giveitem ITEM_TM28
+ compare RESULT, 0
+ jumpeq Route114_FossilManiacsHouse_EventScript_1A029B
+ setflag 261
+ release
+ end
+
+Route114_FossilManiacsHouse_EventScript_15C1F2:: @ 815C1F2
+ msgbox Route114_FossilManiacsHouse_Text_1926AE, 4
+ release
+ end
+
+Route114_FossilManiacsHouse_EventScript_15C1FC:: @ 815C1FC
+ msgbox Route114_FossilManiacsHouse_Text_1926FA, 3
+ end
+
+Route114_FossilManiacsHouse_EventScript_15C205:: @ 815C205
+ msgbox Route114_FossilManiacsHouse_Text_192729, 3
+ end
+
diff --git a/data/maps/scripts/Route114_FossilManiacsTunnel.s b/data/maps/scripts/Route114_FossilManiacsTunnel.s
new file mode 100644
index 000000000..b888a3a4c
--- /dev/null
+++ b/data/maps/scripts/Route114_FossilManiacsTunnel.s
@@ -0,0 +1,28 @@
+Route114_FossilManiacsTunnel_MapScripts:: @ 815C20E
+ .byte 0
+
+Route114_FossilManiacsTunnel_EventScript_15C20F:: @ 815C20F
+ lock
+ faceplayer
+ checkflag 267
+ jumpeq Route114_FossilManiacsTunnel_EventScript_15C24E
+ checkitem ITEM_ROOT_FOSSIL, 1
+ compare RESULT, 1
+ jumpeq Route114_FossilManiacsTunnel_EventScript_15C244
+ checkitem ITEM_CLAW_FOSSIL, 1
+ compare RESULT, 1
+ jumpeq Route114_FossilManiacsTunnel_EventScript_15C244
+ msgbox Route114_FossilManiacsTunnel_Text_192795, 4
+ release
+ end
+
+Route114_FossilManiacsTunnel_EventScript_15C244:: @ 815C244
+ msgbox Route114_FossilManiacsTunnel_Text_1928DE, 4
+ release
+ end
+
+Route114_FossilManiacsTunnel_EventScript_15C24E:: @ 815C24E
+ msgbox Route114_FossilManiacsTunnel_Text_1929DC, 4
+ release
+ end
+
diff --git a/data/maps/scripts/Route114_LanettesHouse.s b/data/maps/scripts/Route114_LanettesHouse.s
new file mode 100644
index 000000000..66658dadd
--- /dev/null
+++ b/data/maps/scripts/Route114_LanettesHouse.s
@@ -0,0 +1,51 @@
+Route114_LanettesHouse_MapScripts:: @ 815C258
+ map_script 3, Route114_LanettesHouse_MapScript1_15C25E
+ .byte 0
+
+Route114_LanettesHouse_MapScript1_15C25E:: @ 815C25E
+ setflag 2117
+ end
+
+Route114_LanettesHouse_EventScript_15C262:: @ 815C262
+ lock
+ faceplayer
+ checkflag 131
+ jumpeq Route114_LanettesHouse_EventScript_15C28F
+ setflag 2123
+ msgbox Route114_LanettesHouse_Text_192A0D, 4
+ givedecoration 100
+ compare RESULT, 0
+ jumpeq Route114_LanettesHouse_EventScript_1A02AE
+ setflag 131
+ release
+ end
+
+Route114_LanettesHouse_EventScript_15C28F:: @ 815C28F
+ msgbox Route114_LanettesHouse_Text_192ACC, 4
+ release
+ end
+
+Route114_LanettesHouse_EventScript_15C299:: @ 815C299
+ lockall
+ msgbox Route114_LanettesHouse_Text_192B4A, 5
+ compare RESULT, 1
+ jumpeq Route114_LanettesHouse_EventScript_15C2B7
+ msgbox Route114_LanettesHouse_Text_192DA9, 4
+ releaseall
+ end
+
+Route114_LanettesHouse_EventScript_15C2B7:: @ 815C2B7
+ msgbox Route114_LanettesHouse_Text_192C01, 5
+ compare RESULT, 1
+ callif 1, Route114_LanettesHouse_EventScript_15C2CC
+ releaseall
+ end
+
+Route114_LanettesHouse_EventScript_15C2CC:: @ 815C2CC
+ msgbox Route114_LanettesHouse_Text_192CB4, 4
+ return
+
+Route114_LanettesHouse_EventScript_15C2D5:: @ 815C2D5
+ msgbox Route114_LanettesHouse_Text_192DC1, 3
+ end
+
diff --git a/data/maps/scripts/Route115.s b/data/maps/scripts/Route115.s
new file mode 100644
index 000000000..23e90d7d9
--- /dev/null
+++ b/data/maps/scripts/Route115.s
@@ -0,0 +1,64 @@
+Route115_MapScripts:: @ 815092D
+ .byte 0
+
+Route115_EventScript_15092E:: @ 815092E
+ msgbox Route115_Text_170273, 2
+ end
+
+Route115_EventScript_150937:: @ 8150937
+ msgbox Route115_Text_1702E7, 3
+ end
+
+Route115_EventScript_150940:: @ 8150940
+ msgbox Route115_Text_170301, 3
+ end
+
+Route115_EventScript_150949:: @ 8150949
+ trainerbattle 0, 307, 0, Route115_Text_1BC9AC, Route115_Text_1BC9E6
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route115_EventScript_150970
+ msgbox Route115_Text_1BCA0E, 6
+ end
+
+Route115_EventScript_150970:: @ 8150970
+ trainerbattle 5, 307, 0, Route115_Text_1BCA6B, Route115_Text_1BCAB3
+ msgbox Route115_Text_1BCAC6, 6
+ end
+
+Route115_EventScript_150987:: @ 8150987
+ trainerbattle 0, 182, 0, Route115_Text_1BCB0D, Route115_Text_1BCB2E
+ msgbox Route115_Text_1BCB40, 6
+ end
+
+Route115_EventScript_15099E:: @ 815099E
+ trainerbattle 0, 183, 0, Route115_Text_1BCB8A, Route115_Text_1BCBC1
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route115_EventScript_1509C5
+ msgbox Route115_Text_1BCBDE, 6
+ end
+
+Route115_EventScript_1509C5:: @ 81509C5
+ trainerbattle 5, 183, 0, Route115_Text_1BCC4C, Route115_Text_1BCCA2
+ msgbox Route115_Text_1BCCBA, 6
+ end
+
+Route115_EventScript_1509DC:: @ 81509DC
+ trainerbattle 0, 427, 0, Route115_Text_1BCCF4, Route115_Text_1BCD32
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route115_EventScript_150A03
+ msgbox Route115_Text_1BCD4C, 6
+ end
+
+Route115_EventScript_150A03:: @ 8150A03
+ trainerbattle 5, 427, 0, Route115_Text_1BCDB0, Route115_Text_1BCDD0
+ msgbox Route115_Text_1BCDEF, 6
+ end
+
+Route115_EventScript_150A1A:: @ 8150A1A
+ trainerbattle 0, 514, 0, Route115_Text_1BCEE0, Route115_Text_1BCF16
+ msgbox Route115_Text_1BCF3D, 6
+ end
+
diff --git a/data/maps/scripts/Route116.s b/data/maps/scripts/Route116.s
new file mode 100644
index 000000000..c6c6e1cb1
--- /dev/null
+++ b/data/maps/scripts/Route116.s
@@ -0,0 +1,276 @@
+Route116_MapScripts:: @ 8150A31
+ map_script 3, Route116_MapScript1_150A37
+ .byte 0
+
+Route116_MapScript1_150A37:: @ 8150A37
+ checkflag 143
+ callif 1, Route116_EventScript_150A41
+ end
+
+Route116_EventScript_150A41:: @ 8150A41
+ movespriteperm 21, 41, 10
+ return
+
+Route116_EventScript_150A49:: @ 8150A49
+ lock
+ faceplayer
+ checkflag 143
+ jumpeq Route116_EventScript_150A67
+ checkflag 142
+ jumpeq Route116_EventScript_150A71
+ msgbox Route116_Text_1703CF, 4
+ release
+ end
+
+Route116_EventScript_150A67:: @ 8150A67
+ msgbox Route116_Text_170556, 4
+ release
+ end
+
+Route116_EventScript_150A71:: @ 8150A71
+ msgbox Route116_Text_1703F7, 4
+ release
+ end
+
+Route116_EventScript_150A7B:: @ 8150A7B
+ lock
+ faceplayer
+ checkflag 287
+ jumpeq Route116_EventScript_150B04
+ msgbox Route116_Text_1705AE, 4
+ jump Route116_EventScript_150A94
+ end
+
+Route116_EventScript_150A94:: @ 8150A94
+ setflag 287
+ giveitem ITEM_REPEAT_BALL
+ compare RESULT, 0
+ jumpeq Route116_EventScript_150B12
+ msgbox Route116_Text_1707B8, 4
+ closebutton
+ compare FACING, 2
+ callif 1, Route116_EventScript_150AEE
+ compare FACING, 1
+ callif 1, Route116_EventScript_150AEE
+ compare FACING, 3
+ callif 1, Route116_EventScript_150AEE
+ compare FACING, 4
+ callif 1, Route116_EventScript_150AF9
+ disappear LAST_TALKED
+ clearflag 949
+ setflag 256
+ release
+ end
+
+Route116_EventScript_150AEE:: @ 8150AEE
+ move LAST_TALKED, Route116_Movement_150B1C
+ waitmove 0
+ return
+
+Route116_EventScript_150AF9:: @ 8150AF9
+ move LAST_TALKED, Route116_Movement_150B25
+ waitmove 0
+ return
+
+Route116_EventScript_150B04:: @ 8150B04
+ msgbox Route116_Text_170865, 4
+ jump Route116_EventScript_150A94
+ end
+
+Route116_EventScript_150B12:: @ 8150B12
+ msgbox Route116_Text_17082A, 4
+ release
+ end
+
+Route116_Movement_150B1C:: @ 8150B1C
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_end
+
+Route116_Movement_150B25:: @ 8150B25
+ step_down
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_end
+
+Route116_EventScript_150B30:: @ 8150B30
+ msgbox Route116_Text_170A46, 3
+ end
+
+Route116_EventScript_150B39:: @ 8150B39
+ msgbox Route116_Text_170A60, 3
+ end
+
+Route116_EventScript_150B42:: @ 8150B42
+ msgbox Route116_Text_170AB8, 3
+ end
+
+Route116_EventScript_150B4B:: @ 8150B4B
+ msgbox Route116_Text_170ACE, 3
+ end
+
+Route116_EventScript_150B54:: @ 8150B54
+ msgbox Route116_Text_170B7D, 3
+ end
+
+Route116_EventScript_150B5D:: @ 8150B5D
+ lock
+ faceplayer
+ msgbox Route116_Text_17032A, 4
+ setvar 0x406f, 2
+ release
+ end
+
+Route116_EventScript_150B6E:: @ 8150B6E
+ lockall
+ move 11, Route116_Movement_1A0843
+ move 255, Route116_Movement_1A083F
+ waitmove 0
+ msgbox Route116_Text_17032A, 4
+ setvar 0x406f, 2
+ releaseall
+ end
+
+Route116_EventScript_150B8F:: @ 8150B8F
+ lock
+ faceplayer
+ checkitem ITEM_BLACK_GLASSES, 1
+ compare RESULT, 1
+ jumpeq Route116_EventScript_150BCA
+ specialval RESULT, 316
+ compare RESULT, 1
+ jumpeq Route116_EventScript_150BBB
+ msgbox Route116_Text_1708EE, 4
+ release
+ end
+
+Route116_EventScript_150BBB:: @ 8150BBB
+ msgbox Route116_Text_1709B7, 4
+ closebutton
+ jump Route116_EventScript_150C03
+ end
+
+Route116_EventScript_150BCA:: @ 8150BCA
+ msgbox Route116_Text_1708EE, 4
+ msgbox Route116_Text_170921, 4
+ specialval RESULT, 316
+ compare RESULT, 1
+ jumpeq Route116_EventScript_150BF4
+ msgbox Route116_Text_170A03, 4
+ release
+ end
+
+Route116_EventScript_150BF4:: @ 8150BF4
+ msgbox Route116_Text_17094D, 4
+ closebutton
+ jump Route116_EventScript_150C03
+ end
+
+Route116_EventScript_150C03:: @ 8150C03
+ pause 20
+ compare FACING, 2
+ callif 1, Route116_EventScript_150C37
+ compare FACING, 1
+ callif 1, Route116_EventScript_150C37
+ compare FACING, 3
+ callif 1, Route116_EventScript_150C37
+ compare FACING, 4
+ callif 1, Route116_EventScript_150C42
+ disappear LAST_TALKED
+ release
+ end
+
+Route116_EventScript_150C37:: @ 8150C37
+ move LAST_TALKED, Route116_Movement_150C4D
+ waitmove 0
+ return
+
+Route116_EventScript_150C42:: @ 8150C42
+ move LAST_TALKED, Route116_Movement_150C57
+ waitmove 0
+ return
+
+Route116_Movement_150C4D:: @ 8150C4D
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_end
+
+Route116_Movement_150C57:: @ 8150C57
+ step_up
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_end
+
+Route116_EventScript_150C62:: @ 8150C62
+ trainerbattle 0, 322, 0, Route116_Text_1BD02B, Route116_Text_1BD04C
+ msgbox Route116_Text_1BD078, 6
+ end
+
+Route116_EventScript_150C79:: @ 8150C79
+ trainerbattle 0, 617, 0, Route116_Text_1BD0AF, Route116_Text_1BD0D7
+ msgbox Route116_Text_1BD0F4, 6
+ end
+
+Route116_EventScript_150C90:: @ 8150C90
+ trainerbattle 0, 273, 0, Route116_Text_1BD1C0, Route116_Text_1BD21A
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route116_EventScript_150CB7
+ msgbox Route116_Text_1BD248, 6
+ end
+
+Route116_EventScript_150CB7:: @ 8150CB7
+ trainerbattle 5, 273, 0, Route116_Text_1BD2A5, Route116_Text_1BD2FE
+ msgbox Route116_Text_1BD31A, 6
+ end
+
+Route116_EventScript_150CCE:: @ 8150CCE
+ trainerbattle 0, 631, 0, Route116_Text_1BCF79, Route116_Text_1BCFBB
+ msgbox Route116_Text_1BCFE3, 6
+ end
+
+Route116_EventScript_150CE5:: @ 8150CE5
+ trainerbattle 0, 605, 0, Route116_Text_1BD131, Route116_Text_1BD165
+ msgbox Route116_Text_1BD180, 6
+ end
+
+Route116_EventScript_150CFC:: @ 8150CFC
+ trainerbattle 0, 280, 0, Route116_Text_1BD377, Route116_Text_1BD3AC
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route116_EventScript_150D23
+ msgbox Route116_Text_1BD3C3, 6
+ end
+
+Route116_EventScript_150D23:: @ 8150D23
+ trainerbattle 5, 280, 0, Route116_Text_1BD405, Route116_Text_1BD44A
+ msgbox Route116_Text_1BD466, 6
+ end
+
diff --git a/data/maps/scripts/Route116_TunnelersRestHouse.s b/data/maps/scripts/Route116_TunnelersRestHouse.s
new file mode 100644
index 000000000..87e21addd
--- /dev/null
+++ b/data/maps/scripts/Route116_TunnelersRestHouse.s
@@ -0,0 +1,30 @@
+Route116_TunnelersRestHouse_MapScripts:: @ 815C2DE
+ map_script 3, Route116_TunnelersRestHouse_MapScript1_15C2E4
+ .byte 0
+
+Route116_TunnelersRestHouse_MapScript1_15C2E4:: @ 815C2E4
+ setflag 2138
+ end
+
+Route116_TunnelersRestHouse_EventScript_15C2E8:: @ 815C2E8
+ msgbox Route116_TunnelersRestHouse_Text_192F33, 2
+ end
+
+Route116_TunnelersRestHouse_EventScript_15C2F1:: @ 815C2F1
+ msgbox Route116_TunnelersRestHouse_Text_193049, 2
+ end
+
+Route116_TunnelersRestHouse_EventScript_15C2FA:: @ 815C2FA
+ lock
+ faceplayer
+ checkflag 199
+ jumpeq Route116_TunnelersRestHouse_EventScript_15C30F
+ msgbox Route116_TunnelersRestHouse_Text_193135, 4
+ release
+ end
+
+Route116_TunnelersRestHouse_EventScript_15C30F:: @ 815C30F
+ msgbox Route116_TunnelersRestHouse_Text_1931C1, 4
+ release
+ end
+
diff --git a/data/maps/scripts/Route117.s b/data/maps/scripts/Route117.s
new file mode 100644
index 000000000..232ed81d4
--- /dev/null
+++ b/data/maps/scripts/Route117.s
@@ -0,0 +1,123 @@
+Route117_MapScripts:: @ 8150D3A
+ map_script 3, Route117_MapScript1_150D40
+ .byte 0
+
+Route117_MapScript1_150D40:: @ 8150D40
+ call Route117_EventScript_150D46
+ end
+
+Route117_EventScript_150D46:: @ 8150D46
+ checkflag 134
+ jumpif 0, Route117_EventScript_150D56
+ movespriteperm 3, 47, 6
+
+Route117_EventScript_150D56:: @ 8150D56
+ return
+
+Route117_EventScript_150D57:: @ 8150D57
+ msgbox Route117_Text_170CA7, 2
+ end
+
+Route117_EventScript_150D60:: @ 8150D60
+ msgbox Route117_Text_170CEB, 2
+ end
+
+Route117_EventScript_150D69:: @ 8150D69
+ msgbox Route117_Text_170C26, 2
+ end
+
+Route117_EventScript_150D72:: @ 8150D72
+ msgbox Route117_Text_170D02, 3
+ end
+
+Route117_EventScript_150D7B:: @ 8150D7B
+ msgbox Route117_Text_170D1E, 3
+ end
+
+Route117_EventScript_150D84:: @ 8150D84
+ msgbox Route117_Text_170D38, 3
+ end
+
+Route117_EventScript_150D8D:: @ 8150D8D
+ trainerbattle 0, 538, 0, Route117_Text_1BD49E, Route117_Text_1BD4D9
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route117_EventScript_150DB4
+ msgbox Route117_Text_1BD4F9, 6
+ end
+
+Route117_EventScript_150DB4:: @ 8150DB4
+ trainerbattle 5, 538, 0, Route117_Text_1BD569, Route117_Text_1BD5AB
+ msgbox Route117_Text_1BD5F2, 6
+ end
+
+Route117_EventScript_150DCB:: @ 8150DCB
+ trainerbattle 0, 545, 0, Route117_Text_1BD634, Route117_Text_1BD67B
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route117_EventScript_150DF2
+ msgbox Route117_Text_1BD69B, 6
+ end
+
+Route117_EventScript_150DF2:: @ 8150DF2
+ trainerbattle 5, 545, 0, Route117_Text_1BD6F2, Route117_Text_1BD733
+ msgbox Route117_Text_1BD74F, 6
+ end
+
+Route117_EventScript_150E09:: @ 8150E09
+ trainerbattle 0, 364, 0, Route117_Text_1BD79A, Route117_Text_1BD7E0
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route117_EventScript_150E30
+ msgbox Route117_Text_1BD7F5, 6
+ end
+
+Route117_EventScript_150E30:: @ 8150E30
+ trainerbattle 5, 364, 0, Route117_Text_1BD83F, Route117_Text_1BD8A2
+ msgbox Route117_Text_1BD8BD, 6
+ end
+
+Route117_EventScript_150E47:: @ 8150E47
+ trainerbattle 0, 369, 0, Route117_Text_1BD914, Route117_Text_1BD965
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route117_EventScript_150E6E
+ msgbox Route117_Text_1BD98F, 6
+ end
+
+Route117_EventScript_150E6E:: @ 8150E6E
+ trainerbattle 5, 369, 0, Route117_Text_1BD9F1, Route117_Text_1BDA41
+ msgbox Route117_Text_1BDA6B, 6
+ end
+
+Route117_EventScript_150E85:: @ 8150E85
+ trainerbattle 0, 227, 0, Route117_Text_1BDAA7, Route117_Text_1BDAFC
+ msgbox Route117_Text_1BDB24, 6
+ end
+
+Route117_EventScript_150E9C:: @ 8150E9C
+ trainerbattle 4, 287, 0, Route117_Text_1BDBC3, Route117_Text_1BDC07, Route117_Text_1BDC96
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route117_EventScript_150EC7
+ msgbox Route117_Text_1BDC44, 6
+ end
+
+Route117_EventScript_150EC7:: @ 8150EC7
+ trainerbattle 7, 287, 0, Route117_Text_1BDDEF, Route117_Text_1BDE2F, Route117_Text_1BDEA7
+ msgbox Route117_Text_1BDE55, 6
+ end
+
+Route117_EventScript_150EE2:: @ 8150EE2
+ trainerbattle 4, 287, 0, Route117_Text_1BDCD2, Route117_Text_1BDD1E, Route117_Text_1BDD8B
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route117_EventScript_150F0D
+ msgbox Route117_Text_1BDD4E, 6
+ end
+
+Route117_EventScript_150F0D:: @ 8150F0D
+ trainerbattle 7, 287, 0, Route117_Text_1BDEE3, Route117_Text_1BDF26, Route117_Text_1BDF90
+ msgbox Route117_Text_1BDF37, 6
+ end
+
diff --git a/data/maps/scripts/Route117_PokemonDayCare.s b/data/maps/scripts/Route117_PokemonDayCare.s
new file mode 100644
index 000000000..15435a631
--- /dev/null
+++ b/data/maps/scripts/Route117_PokemonDayCare.s
@@ -0,0 +1,8 @@
+Route117_PokemonDayCare_MapScripts:: @ 815C319
+ map_script 3, Route117_PokemonDayCare_MapScript1_15C31F
+ .byte 0
+
+Route117_PokemonDayCare_MapScript1_15C31F:: @ 815C31F
+ setflag 2118
+ end
+
diff --git a/data/maps/scripts/Route118.s b/data/maps/scripts/Route118.s
new file mode 100644
index 000000000..e2e685aba
--- /dev/null
+++ b/data/maps/scripts/Route118.s
@@ -0,0 +1,207 @@
+Route118_MapScripts:: @ 8150F28
+ map_script 3, Route118_MapScript1_150F2E
+ .byte 0
+
+Route118_MapScript1_150F2E:: @ 8150F2E
+ call Route118_EventScript_1AE313
+ end
+
+Route118_EventScript_150F34:: @ 8150F34
+ lock
+ faceplayer
+ checkflag 227
+ jumpeq Route118_EventScript_150F89
+ msgbox Route118_Text_170F12, 5
+ compare RESULT, 1
+ jumpeq Route118_EventScript_150F5E
+ compare RESULT, 0
+ jumpeq Route118_EventScript_150F7F
+ end
+
+Route118_EventScript_150F5E:: @ 8150F5E
+ msgbox Route118_Text_170F46, 4
+ giveitem ITEM_GOOD_ROD
+ setflag 227
+ msgbox Route118_Text_170F7E, 4
+ release
+ end
+
+Route118_EventScript_150F7F:: @ 8150F7F
+ msgbox Route118_Text_170FB0, 4
+ release
+ end
+
+Route118_EventScript_150F89:: @ 8150F89
+ msgbox Route118_Text_170FC8, 4
+ release
+ end
+
+Route118_EventScript_150F93:: @ 8150F93
+ msgbox Route118_Text_170FFE, 2
+ end
+
+Route118_EventScript_150F9C:: @ 8150F9C
+ msgbox Route118_Text_17108B, 3
+ end
+
+Route118_EventScript_150FA5:: @ 8150FA5
+ msgbox Route118_Text_1710A5, 3
+ end
+
+Route118_EventScript_150FAE:: @ 8150FAE
+ lockall
+ setvar 0x8008, 0
+ move 255, Route118_Movement_1A0841
+ waitmove 0
+ move 19, Route118_Movement_151069
+ waitmove 0
+ jump Route118_EventScript_151004
+ end
+
+Route118_EventScript_150FCE:: @ 8150FCE
+ lockall
+ setvar 0x8008, 1
+ move 255, Route118_Movement_1A0841
+ waitmove 0
+ jump Route118_EventScript_151004
+ end
+
+Route118_EventScript_150FE4:: @ 8150FE4
+ lockall
+ setvar 0x8008, 2
+ move 255, Route118_Movement_1A0841
+ waitmove 0
+ move 19, Route118_Movement_15106B
+ waitmove 0
+ jump Route118_EventScript_151004
+ end
+
+Route118_EventScript_151004:: @ 8151004
+ playsfx 10
+ move 19, Route118_Movement_15106D
+ waitmove 0
+ pause 30
+ msgbox Route118_Text_170D66, 4
+ closebutton
+ compare 0x8008, 0
+ callif 1, Route118_EventScript_151048
+ compare 0x8008, 1
+ callif 1, Route118_EventScript_151053
+ compare 0x8008, 2
+ callif 1, Route118_EventScript_15105E
+ setvar 0x4071, 1
+ disappear 19
+ releaseall
+ end
+
+Route118_EventScript_151048:: @ 8151048
+ move 19, Route118_Movement_151071
+ waitmove 0
+ return
+
+Route118_EventScript_151053:: @ 8151053
+ move 19, Route118_Movement_15107C
+ waitmove 0
+ return
+
+Route118_EventScript_15105E:: @ 815105E
+ move 19, Route118_Movement_151086
+ waitmove 0
+ return
+
+Route118_Movement_151069:: @ 8151069
+ step_left
+ step_end
+
+Route118_Movement_15106B:: @ 815106B
+ step_right
+ step_end
+
+Route118_Movement_15106D:: @ 815106D
+ fast_step_down
+ step_14
+ step_down
+ step_end
+
+Route118_Movement_151071:: @ 8151071
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+Route118_Movement_15107C:: @ 815107C
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+Route118_Movement_151086:: @ 8151086
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+Route118_EventScript_15108F:: @ 815108F
+ trainerbattle 0, 37, 0, Route118_Text_1BDFF4, Route118_Text_1BE03C
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route118_EventScript_1510B6
+ msgbox Route118_Text_1BE05E, 6
+ end
+
+Route118_EventScript_1510B6:: @ 81510B6
+ trainerbattle 5, 37, 0, Route118_Text_1BE0AB, Route118_Text_1BE0D3
+ msgbox Route118_Text_1BE104, 6
+ end
+
+Route118_EventScript_1510CD:: @ 81510CD
+ trainerbattle 0, 343, 0, Route118_Text_1BE24A, Route118_Text_1BE291
+ msgbox Route118_Text_1BE2BE, 6
+ end
+
+Route118_EventScript_1510E4:: @ 81510E4
+ trainerbattle 0, 344, 0, Route118_Text_1BE318, Route118_Text_1BE385
+ msgbox Route118_Text_1BE39C, 6
+ end
+
+Route118_EventScript_1510FB:: @ 81510FB
+ trainerbattle 0, 196, 0, Route118_Text_1BE3E8, Route118_Text_1BE406
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route118_EventScript_151122
+ msgbox Route118_Text_1BE413, 6
+ end
+
+Route118_EventScript_151122:: @ 8151122
+ trainerbattle 5, 196, 0, Route118_Text_1BE489, Route118_Text_1BE4CC
+ msgbox Route118_Text_1BE4D9, 6
+ end
+
+Route118_EventScript_151139:: @ 8151139
+ trainerbattle 0, 398, 0, Route118_Text_1BE148, Route118_Text_1BE188
+ msgbox Route118_Text_1BE19D, 6
+ end
+
+Route118_EventScript_151150:: @ 8151150
+ trainerbattle 0, 408, 0, Route118_Text_1BE1D7, Route118_Text_1BE1F5
+ msgbox Route118_Text_1BE20D, 6
+ end
+
diff --git a/data/maps/scripts/Route119.s b/data/maps/scripts/Route119.s
new file mode 100644
index 000000000..22e8c1c84
--- /dev/null
+++ b/data/maps/scripts/Route119.s
@@ -0,0 +1,384 @@
+Route119_MapScripts:: @ 8151167
+ map_script 5, Route119_MapScript1_151172
+ map_script 3, Route119_MapScript1_15119B
+ .byte 0
+
+Route119_MapScript1_151172:: @ 8151172
+ checkflag 2145
+ callif 1, Route119_EventScript_15117C
+ end
+
+Route119_EventScript_15117C:: @ 815117C
+ compare 0x8004, 6
+ callif 1, Route119_EventScript_151193
+ compare 0x8004, 7
+ callif 1, Route119_EventScript_151197
+ return
+
+Route119_EventScript_151193:: @ 8151193
+ disappear 35
+ return
+
+Route119_EventScript_151197:: @ 8151197
+ disappear 36
+ return
+
+Route119_MapScript1_15119B:: @ 815119B
+ call Route119_EventScript_1A014E
+ call Route119_EventScript_1A0172
+ call Route119_EventScript_1A0196
+ compare 0x40b3, 1
+ callif 1, Route119_EventScript_1511B9
+ special 324
+ end
+
+Route119_EventScript_1511B9:: @ 81511B9
+ setflag 893
+ clearflag 892
+ setvar 0x40b3, 2
+ return
+
+Route119_EventScript_1511C5:: @ 81511C5
+ setvar 0x4001, 1
+ jump Route119_EventScript_1511DB
+ end
+
+Route119_EventScript_1511D0:: @ 81511D0
+ setvar 0x4001, 2
+ jump Route119_EventScript_1511DB
+ end
+
+Route119_EventScript_1511DB:: @ 81511DB
+ lockall
+ reappear 25
+ checkgender
+ compare RESULT, 0
+ callif 1, Route119_EventScript_151254
+ compare RESULT, 1
+ callif 1, Route119_EventScript_151259
+ pause 65
+ compare 0x4001, 1
+ callif 1, Route119_EventScript_1513A6
+ compare 0x4001, 2
+ callif 1, Route119_EventScript_1513B1
+ move 255, Route119_Movement_1A0845
+ waitmove 0
+ pause 30
+ compare 0x4001, 1
+ callif 1, Route119_EventScript_1513D2
+ compare 0x4001, 2
+ callif 1, Route119_EventScript_1513E1
+ disappear 25
+ reappear 16
+ pause 30
+ checkgender
+ compare RESULT, 0
+ jumpeq Route119_EventScript_15125E
+ compare RESULT, 1
+ jumpeq Route119_EventScript_1512D8
+ releaseall
+ end
+
+Route119_EventScript_151254:: @ 8151254
+ playmusic 415, 1
+ return
+
+Route119_EventScript_151259:: @ 8151259
+ playmusic 421, 1
+ return
+
+Route119_EventScript_15125E:: @ 815125E
+ msgbox Route119_Text_1710BB, 4
+ switch 0x4023
+ case 0, Route119_EventScript_15128D
+ case 1, Route119_EventScript_15129D
+ case 2, Route119_EventScript_1512AD
+ end
+
+Route119_EventScript_15128D:: @ 815128D
+ trainerbattle 3, 534, 0, Route119_Text_171156
+ jump Route119_EventScript_1512BD
+ end
+
+Route119_EventScript_15129D:: @ 815129D
+ trainerbattle 3, 537, 0, Route119_Text_171156
+ jump Route119_EventScript_1512BD
+ end
+
+Route119_EventScript_1512AD:: @ 81512AD
+ trainerbattle 3, 531, 0, Route119_Text_171156
+ jump Route119_EventScript_1512BD
+ end
+
+Route119_EventScript_1512BD:: @ 81512BD
+ msgbox Route119_Text_1711B1, 4
+ call Route119_EventScript_151352
+ msgbox Route119_Text_171214, 4
+ jump Route119_EventScript_151362
+ end
+
+Route119_EventScript_1512D8:: @ 81512D8
+ msgbox Route119_Text_171358, 4
+ switch 0x4023
+ case 0, Route119_EventScript_151307
+ case 1, Route119_EventScript_151317
+ case 2, Route119_EventScript_151327
+ end
+
+Route119_EventScript_151307:: @ 8151307
+ trainerbattle 3, 525, 0, Route119_Text_1713E2
+ jump Route119_EventScript_151337
+ end
+
+Route119_EventScript_151317:: @ 8151317
+ trainerbattle 3, 528, 0, Route119_Text_1713E2
+ jump Route119_EventScript_151337
+ end
+
+Route119_EventScript_151327:: @ 8151327
+ trainerbattle 3, 522, 0, Route119_Text_1713E2
+ jump Route119_EventScript_151337
+ end
+
+Route119_EventScript_151337:: @ 8151337
+ msgbox Route119_Text_17140B, 4
+ call Route119_EventScript_151352
+ msgbox Route119_Text_171475, 4
+ jump Route119_EventScript_151362
+ end
+
+Route119_EventScript_151352:: @ 8151352
+ giveitem ITEM_HM02
+ setflag 110
+ return
+
+Route119_EventScript_151362:: @ 8151362
+ closebutton
+ compare 0x4001, 1
+ callif 1, Route119_EventScript_1513D2
+ compare 0x4001, 2
+ callif 1, Route119_EventScript_1513E1
+ disappear 16
+ reappear 25
+ pause 30
+ compare 0x4001, 1
+ callif 1, Route119_EventScript_1513BC
+ compare 0x4001, 2
+ callif 1, Route119_EventScript_1513C7
+ disappear 25
+ setvar 0x4072, 1
+ playmusicbattle 0
+ fadedefault
+ releaseall
+ end
+
+Route119_EventScript_1513A6:: @ 81513A6
+ move 25, Route119_Movement_1513F0
+ waitmove 0
+ return
+
+Route119_EventScript_1513B1:: @ 81513B1
+ move 25, Route119_Movement_1513FA
+ waitmove 0
+ return
+
+Route119_EventScript_1513BC:: @ 81513BC
+ move 25, Route119_Movement_151405
+ waitmove 0
+ return
+
+Route119_EventScript_1513C7:: @ 81513C7
+ move 25, Route119_Movement_15140F
+ waitmove 0
+ return
+
+Route119_EventScript_1513D2:: @ 81513D2
+ movespriteperm 16, 25, 32
+ movespriteperm 25, 25, 32
+ return
+
+Route119_EventScript_1513E1:: @ 81513E1
+ movespriteperm 16, 26, 32
+ movespriteperm 25, 26, 32
+ return
+
+Route119_Movement_1513F0:: @ 81513F0
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_16
+ step_end
+
+Route119_Movement_1513FA:: @ 81513FA
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_16
+ step_end
+
+Route119_Movement_151405:: @ 8151405
+ step_18
+ step_16
+ step_16
+ step_16
+ step_18
+ step_16
+ step_16
+ step_16
+ step_16
+ step_end
+
+Route119_Movement_15140F:: @ 815140F
+ step_17
+ step_16
+ step_16
+ step_16
+ step_18
+ step_18
+ step_16
+ step_16
+ step_16
+ step_16
+ step_end
+
+Route119_EventScript_15141A:: @ 815141A
+ msgbox Route119_Text_171698, 2
+ end
+
+Route119_EventScript_151423:: @ 8151423
+ msgbox Route119_Text_171749, 3
+ end
+
+Route119_EventScript_15142C:: @ 815142C
+ msgbox Route119_Text_171762, 3
+ end
+
+Route119_EventScript_151435:: @ 8151435
+ trainerbattle 0, 223, 0, Route119_Text_1BE521, Route119_Text_1BE54F
+ msgbox Route119_Text_1BE561, 6
+ end
+
+Route119_EventScript_15144C:: @ 815144C
+ trainerbattle 0, 224, 0, Route119_Text_1BE5A4, Route119_Text_1BE5DF
+ msgbox Route119_Text_1BE5F8, 6
+ end
+
+Route119_EventScript_151463:: @ 8151463
+ trainerbattle 0, 225, 0, Route119_Text_1BE632, Route119_Text_1BE67B
+ msgbox Route119_Text_1BE695, 6
+ end
+
+Route119_EventScript_15147A:: @ 815147A
+ trainerbattle 0, 618, 0, Route119_Text_1BE6EA, Route119_Text_1BE729
+ msgbox Route119_Text_1BE748, 6
+ end
+
+Route119_EventScript_151491:: @ 8151491
+ trainerbattle 0, 619, 0, Route119_Text_1BE784, Route119_Text_1BE7D3
+ msgbox Route119_Text_1BE7E9, 6
+ end
+
+Route119_EventScript_1514A8:: @ 81514A8
+ trainerbattle 0, 620, 0, Route119_Text_1BE82F, Route119_Text_1BE88D
+ msgbox Route119_Text_1BE89A, 6
+ end
+
+Route119_EventScript_1514BF:: @ 81514BF
+ trainerbattle 0, 552, 0, Route119_Text_1BE8BB, Route119_Text_1BE90E
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route119_EventScript_1514E6
+ msgbox Route119_Text_1BE937, 6
+ end
+
+Route119_EventScript_1514E6:: @ 81514E6
+ trainerbattle 5, 552, 0, Route119_Text_1BE98D, Route119_Text_1BE9D0
+ msgbox Route119_Text_1BE9E8, 6
+ end
+
+Route119_EventScript_1514FD:: @ 81514FD
+ trainerbattle 0, 559, 0, Route119_Text_1BEA3A, Route119_Text_1BEA88
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route119_EventScript_151524
+ msgbox Route119_Text_1BEAB3, 6
+ end
+
+Route119_EventScript_151524:: @ 8151524
+ trainerbattle 5, 559, 0, Route119_Text_1BEB22, Route119_Text_1BEB49
+ msgbox Route119_Text_1BEB68, 6
+ end
+
+Route119_EventScript_15153B:: @ 815153B
+ trainerbattle 0, 399, 0, Route119_Text_1BEBC0, Route119_Text_1BEC1C
+ msgbox Route119_Text_1BEC2A, 6
+ end
+
+Route119_EventScript_151552:: @ 8151552
+ trainerbattle 0, 400, 0, Route119_Text_1BEC5E, Route119_Text_1BEC9A
+ msgbox Route119_Text_1BECB1, 6
+ end
+
+Route119_EventScript_151569:: @ 8151569
+ trainerbattle 0, 415, 0, Route119_Text_1BECF1, Route119_Text_1BED4C
+ msgbox Route119_Text_1BED5C, 6
+ end
+
+Route119_EventScript_151580:: @ 8151580
+ trainerbattle 0, 416, 0, Route119_Text_1BEDB6, Route119_Text_1BEDEC
+ msgbox Route119_Text_1BEE06, 6
+ end
+
+Route119_EventScript_151597:: @ 8151597
+ trainerbattle 0, 651, 0, Route119_Text_1BEE2D, Route119_Text_1BEE4B
+ msgbox Route119_Text_1BEE66, 6
+ end
+
+Route119_EventScript_1515AE:: @ 81515AE
+ trainerbattle 0, 693, 0, Route119_Text_1BEED0, Route119_Text_1BEF37
+ msgbox Route119_Text_1BEF67, 6
+ end
+
+Route119_EventScript_1515C5:: @ 81515C5
+ lock
+ faceplayer
+ msgbox Route119_Text_171520, 4
+ closebutton
+ move LAST_TALKED, Route119_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+Route119_EventScript_1515DC:: @ 81515DC
+ lock
+ faceplayer
+ msgbox Route119_Text_17157C, 4
+ closebutton
+ move LAST_TALKED, Route119_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+Route119_EventScript_1515F3:: @ 81515F3
+ msgbox Route119_Text_1715D7, 2
+ end
+
+Route119_EventScript_1515FC:: @ 81515FC
+ msgbox Route119_Text_1716F4, 2
+ end
+
+Route119_EventScript_151605:: @ 8151605
+ msgbox Route119_Text_171774, 3
+ end
+
diff --git a/data/maps/scripts/Route119_House.s b/data/maps/scripts/Route119_House.s
new file mode 100644
index 000000000..b18ea7a6c
--- /dev/null
+++ b/data/maps/scripts/Route119_House.s
@@ -0,0 +1,17 @@
+Route119_House_MapScripts:: @ 8163DDD
+ .byte 0
+
+Route119_House_EventScript_163DDE:: @ 8163DDE
+ msgbox Route119_House_Text_19F371, 2
+ end
+
+Route119_House_EventScript_163DE7:: @ 8163DE7
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_WINGULL, 0
+ msgbox Route119_House_Text_19F406, 4
+ waitpokecry
+ release
+ end
+
diff --git a/data/maps/scripts/Route119_WeatherInstitute_1F.s b/data/maps/scripts/Route119_WeatherInstitute_1F.s
new file mode 100644
index 000000000..1497580fd
--- /dev/null
+++ b/data/maps/scripts/Route119_WeatherInstitute_1F.s
@@ -0,0 +1,56 @@
+Route119_WeatherInstitute_1F_MapScripts:: @ 8163C2A
+ map_script 3, Route119_WeatherInstitute_1F_MapScript1_163C30
+ .byte 0
+
+Route119_WeatherInstitute_1F_MapScript1_163C30:: @ 8163C30
+ call Route119_WeatherInstitute_1F_EventScript_1A0196
+ compare 0x40b3, 0
+ callif 1, Route119_WeatherInstitute_1F_EventScript_163C41
+ end
+
+Route119_WeatherInstitute_1F_EventScript_163C41:: @ 8163C41
+ movespriteperm 5, 0, 5
+ spritebehave 5, 10
+ return
+
+Route119_WeatherInstitute_1F_EventScript_163C4D:: @ 8163C4D
+ lock
+ faceplayer
+ special 148
+ compare 0x40b3, 0
+ jumpeq Route119_WeatherInstitute_1F_EventScript_163C67
+ msgbox Route119_WeatherInstitute_1F_Text_19ED22, 4
+ release
+ end
+
+Route119_WeatherInstitute_1F_EventScript_163C67:: @ 8163C67
+ msgbox Route119_WeatherInstitute_1F_Text_19ECF4, 4
+ release
+ end
+
+Route119_WeatherInstitute_1F_EventScript_163C71:: @ 8163C71
+ msgbox Route119_WeatherInstitute_1F_Text_19ED6B, 2
+ end
+
+Route119_WeatherInstitute_1F_EventScript_163C7A:: @ 8163C7A
+ msgbox Route119_WeatherInstitute_1F_Text_19EE25, 2
+ end
+
+Route119_WeatherInstitute_1F_EventScript_163C83:: @ 8163C83
+ lockall
+ msgbox Route119_WeatherInstitute_1F_Text_19EE8B, 4
+ closebutton
+ call Route119_WeatherInstitute_1F_EventScript_1A02CA
+ releaseall
+ end
+
+Route119_WeatherInstitute_1F_EventScript_163C94:: @ 8163C94
+ trainerbattle 0, 582, 0, Route119_WeatherInstitute_1F_Text_19EB8A, Route119_WeatherInstitute_1F_Text_19EBEE
+ msgbox Route119_WeatherInstitute_1F_Text_19EC0E, 6
+ end
+
+Route119_WeatherInstitute_1F_EventScript_163CAB:: @ 8163CAB
+ trainerbattle 0, 591, 0, Route119_WeatherInstitute_1F_Text_19EC6B, Route119_WeatherInstitute_1F_Text_19EC89
+ msgbox Route119_WeatherInstitute_1F_Text_19EC97, 6
+ end
+
diff --git a/data/maps/scripts/Route119_WeatherInstitute_2F.s b/data/maps/scripts/Route119_WeatherInstitute_2F.s
new file mode 100644
index 000000000..9236afc47
--- /dev/null
+++ b/data/maps/scripts/Route119_WeatherInstitute_2F.s
@@ -0,0 +1,94 @@
+Route119_WeatherInstitute_2F_MapScripts:: @ 8163CC2
+ map_script 3, Route119_WeatherInstitute_2F_MapScript1_163CC8
+ .byte 0
+
+Route119_WeatherInstitute_2F_MapScript1_163CC8:: @ 8163CC8
+ call Route119_WeatherInstitute_2F_EventScript_1A0196
+ compare 0x40b3, 0
+ callif 1, Route119_WeatherInstitute_2F_EventScript_163CE4
+ compare 0x40b3, 1
+ callif 1, Route119_WeatherInstitute_2F_EventScript_163CF0
+ end
+
+Route119_WeatherInstitute_2F_EventScript_163CE4:: @ 8163CE4
+ movespriteperm 5, 1, 6
+ spritebehave 5, 10
+ return
+
+Route119_WeatherInstitute_2F_EventScript_163CF0:: @ 8163CF0
+ movespriteperm 5, 4, 6
+ spritebehave 5, 10
+ return
+
+Route119_WeatherInstitute_2F_EventScript_163CFC:: @ 8163CFC
+ trainerbattle 0, 583, 0, Route119_WeatherInstitute_2F_Text_19EEAF, Route119_WeatherInstitute_2F_Text_19EF1B
+ msgbox Route119_WeatherInstitute_2F_Text_19EF3E, 6
+ end
+
+Route119_WeatherInstitute_2F_EventScript_163D13:: @ 8163D13
+ trainerbattle 0, 584, 0, Route119_WeatherInstitute_2F_Text_19EFA3, Route119_WeatherInstitute_2F_Text_19EFDD
+ msgbox Route119_WeatherInstitute_2F_Text_19EFE9, 6
+ end
+
+Route119_WeatherInstitute_2F_EventScript_163D2A:: @ 8163D2A
+ trainerbattle 2, 599, 0, Route119_WeatherInstitute_2F_Text_19F042, Route119_WeatherInstitute_2F_Text_19F0F4, Route119_WeatherInstitute_2F_EventScript_163D45
+ msgbox Route119_WeatherInstitute_2F_Text_19F11B, 6
+ end
+
+Route119_WeatherInstitute_2F_EventScript_163D45:: @ 8163D45
+ msgbox Route119_WeatherInstitute_2F_Text_19F11B, 4
+ closebutton
+ setvar 0x40b3, 1
+ clearflag 893
+ fadedefault
+ fadescreen 1
+ setflag 890
+ disappear 1
+ disappear 2
+ disappear 3
+ fadescreen 0
+ move 5, Route119_WeatherInstitute_2F_Movement_163DC8
+ waitmove 0
+ moveoffscreen 5
+ jump Route119_WeatherInstitute_2F_EventScript_163D7A
+ end
+
+Route119_WeatherInstitute_2F_EventScript_163D7A:: @ 8163D7A
+ msgbox Route119_WeatherInstitute_2F_Text_19F1CF, 4
+ countpokemon
+ compare RESULT, 6
+ jumpeq Route119_WeatherInstitute_2F_EventScript_163DB4
+ fanfare 370
+ message Route119_WeatherInstitute_2F_Text_19F267
+ waitfanfare
+ waittext
+ givepokemon SPECIES_CASTFORM, 25, ITEM_MYSTIC_WATER, 0x0, 0x0, 0
+ setflag 151
+ msgbox Route119_WeatherInstitute_2F_Text_19F27D, 4
+ release
+ end
+
+Route119_WeatherInstitute_2F_EventScript_163DB4:: @ 8163DB4
+ msgbox Route119_WeatherInstitute_2F_Text_19F231, 4
+ release
+ end
+
+Route119_WeatherInstitute_2F_EventScript_163DBE:: @ 8163DBE
+ msgbox Route119_WeatherInstitute_2F_Text_19F2FE, 4
+ release
+ end
+
+Route119_WeatherInstitute_2F_Movement_163DC8:: @ 8163DC8
+ step_right
+ step_right
+ step_right
+ step_end
+
+Route119_WeatherInstitute_2F_EventScript_163DCC:: @ 8163DCC
+ lock
+ faceplayer
+ checkflag 151
+ jumpeq Route119_WeatherInstitute_2F_EventScript_163DBE
+ jump Route119_WeatherInstitute_2F_EventScript_163D7A
+ end
+
diff --git a/data/maps/scripts/Route120.s b/data/maps/scripts/Route120.s
new file mode 100644
index 000000000..e0ef91dc0
--- /dev/null
+++ b/data/maps/scripts/Route120.s
@@ -0,0 +1,358 @@
+Route120_MapScripts:: @ 815160E
+ map_script 5, Route120_MapScript1_15161E
+ map_script 3, Route120_MapScript1_1516DF
+ map_script 1, Route120_MapScript1_151686
+ .byte 0
+
+Route120_MapScript1_15161E:: @ 815161E
+ checkflag 2145
+ callif 1, Route120_EventScript_151628
+ end
+
+Route120_EventScript_151628:: @ 8151628
+ compare 0x8004, 0
+ callif 1, Route120_EventScript_15166B
+ compare 0x8004, 1
+ callif 1, Route120_EventScript_151672
+ compare 0x8004, 2
+ callif 1, Route120_EventScript_151676
+ compare 0x8004, 3
+ callif 1, Route120_EventScript_15167A
+ compare 0x8004, 4
+ callif 1, Route120_EventScript_15167E
+ compare 0x8004, 5
+ callif 1, Route120_EventScript_151682
+ return
+
+Route120_EventScript_15166B:: @ 815166B
+ disappear 30
+ disappear 36
+ return
+
+Route120_EventScript_151672:: @ 8151672
+ disappear 37
+ return
+
+Route120_EventScript_151676:: @ 8151676
+ disappear 38
+ return
+
+Route120_EventScript_15167A:: @ 815167A
+ disappear 39
+ return
+
+Route120_EventScript_15167E:: @ 815167E
+ disappear 41
+ return
+
+Route120_EventScript_151682:: @ 8151682
+ disappear 40
+ return
+
+Route120_MapScript1_151686:: @ 8151686
+ checkflag 228
+ callif 0, Route120_EventScript_1516A2
+ checkflag 285
+ callif 1, Route120_EventScript_1516B5
+ checkflag 285
+ callif 0, Route120_EventScript_1516DA
+ end
+
+Route120_EventScript_1516A2:: @ 81516A2
+ setmaptile 7, 54, 124, 1
+ setmaptile 7, 55, 145, 1
+ return
+
+Route120_EventScript_1516B5:: @ 81516B5
+ setmaptile 13, 15, 663, 0
+ setmaptile 12, 16, 671, 0
+ setmaptile 12, 17, 161, 0
+ setmaptile 13, 17, 161, 0
+ return
+
+Route120_EventScript_1516DA:: @ 81516DA
+ spritebehave 36, 10
+ return
+
+Route120_MapScript1_1516DF:: @ 81516DF
+ call Route120_EventScript_1AE313
+ call Route120_EventScript_1516EA
+ end
+
+Route120_EventScript_1516EA:: @ 81516EA
+ getplayerxy 0x4000, 0x4001
+ compare 0x4001, 14
+ jumpif 3, Route120_EventScript_151715
+ compare 0x4001, 60
+ jumpif 3, Route120_EventScript_151719
+ compare 0x4001, 61
+ jumpif 4, Route120_EventScript_151711
+ return
+
+Route120_EventScript_151711:: @ 8151711
+ setweather 1
+ return
+
+Route120_EventScript_151715:: @ 8151715
+ setweather 2
+ return
+
+Route120_EventScript_151719:: @ 8151719
+ compare 0x4000, 7
+ jumpif 3, Route120_EventScript_151735
+ compare 0x4000, 19
+ jumpif 3, Route120_EventScript_151715
+ jump Route120_EventScript_151735
+ end
+
+Route120_EventScript_151735:: @ 8151735
+ setweather 3
+ return
+
+Route120_EventScript_151739:: @ 8151739
+ lock
+ faceplayer
+ checkdailyflags
+ checkflag 2254
+ jumpeq Route120_EventScript_151837
+ msgbox Route120_Text_1C58F1, 5
+ compare RESULT, 1
+ callif 1, Route120_EventScript_151841
+ compare RESULT, 0
+ callif 1, Route120_EventScript_15184A
+ specialval RESULT, 147
+ switch RESULT
+ case 0, Route120_EventScript_1517DC
+ case 5, Route120_EventScript_1517DC
+ case 1, Route120_EventScript_1517E7
+ case 6, Route120_EventScript_1517E7
+ case 2, Route120_EventScript_1517F2
+ case 7, Route120_EventScript_1517F2
+ case 3, Route120_EventScript_1517FD
+ case 8, Route120_EventScript_1517FD
+ case 4, Route120_EventScript_151808
+ case 9, Route120_EventScript_151808
+ end
+
+Route120_EventScript_1517DC:: @ 81517DC
+ setvar 0x8004, 143
+ jump Route120_EventScript_151813
+ end
+
+Route120_EventScript_1517E7:: @ 81517E7
+ setvar 0x8004, 144
+ jump Route120_EventScript_151813
+ end
+
+Route120_EventScript_1517F2:: @ 81517F2
+ setvar 0x8004, 145
+ jump Route120_EventScript_151813
+ end
+
+Route120_EventScript_1517FD:: @ 81517FD
+ setvar 0x8004, 146
+ jump Route120_EventScript_151813
+ end
+
+Route120_EventScript_151808:: @ 8151808
+ setvar 0x8004, 147
+ jump Route120_EventScript_151813
+ end
+
+Route120_EventScript_151813:: @ 8151813
+ giveitem 0x8004
+ compare RESULT, 0
+ jumpeq Route120_EventScript_1A029B
+ setflag 2254
+ msgbox Route120_Text_1C5A0B, 4
+ release
+ end
+
+Route120_EventScript_151837:: @ 8151837
+ msgbox Route120_Text_1C5A4D, 4
+ release
+ end
+
+Route120_EventScript_151841:: @ 8151841
+ msgbox Route120_Text_1C5979, 4
+ return
+
+Route120_EventScript_15184A:: @ 815184A
+ msgbox Route120_Text_1C59B5, 4
+ return
+
+Route120_EventScript_151853:: @ 8151853
+ lock
+ faceplayer
+ checkflag 290
+ jumpeq Route120_EventScript_151884
+ msgbox Route120_Text_171827, 5
+ compare RESULT, 0
+ jumpeq Route120_EventScript_151877
+ jump Route120_EventScript_15189D
+ end
+
+Route120_EventScript_151877:: @ 8151877
+ msgbox Route120_Text_17193D, 4
+ setflag 290
+ release
+ end
+
+Route120_EventScript_151884:: @ 8151884
+ msgbox Route120_Text_17196F, 5
+ compare RESULT, 0
+ jumpeq Route120_EventScript_151877
+ jump Route120_EventScript_15189D
+ end
+
+Route120_EventScript_15189D:: @ 815189D
+ msgbox Route120_Text_1719A0, 4
+ closebutton
+ compare FACING, 2
+ callif 1, Route120_EventScript_15197F
+ compare FACING, 3
+ callif 1, Route120_EventScript_15198A
+ move 31, Route120_Movement_1A083F
+ waitmove 0
+ pause 20
+ msgbox Route120_Text_1719D4, 4
+ closebutton
+ move 30, Route120_Movement_1A0843
+ waitmove 0
+ move 30, Route120_Movement_1A0662
+ waitmove 0
+ checksound
+ pokecry SPECIES_KECLEON, 2
+ pause 40
+ waitpokecry
+ setwildbattle SPECIES_KECLEON, 30, ITEM_NONE
+ setvar 0x8004, 0
+ setflag 2145
+ dowildbattle
+ clearflag 2145
+ jump Route120_EventScript_151908
+ end
+
+Route120_EventScript_151908:: @ 8151908
+ move 31, Route120_Movement_1A0845
+ move 255, Route120_Movement_1A0841
+ waitmove 0
+ msgbox Route120_Text_171A40, 4
+ giveitem ITEM_DEVON_SCOPE
+ setflag 285
+ msgbox Route120_Text_171B0E, 4
+ closebutton
+ move 31, Route120_Movement_1A0845
+ waitmove 0
+ pause 50
+ setanimation 0, 1
+ doanimation 30
+ pause 15
+ disappear 31
+ checkanimation 30
+ setmaptile 13, 15, 663, 0
+ setmaptile 12, 16, 671, 0
+ setmaptile 12, 17, 161, 0
+ setmaptile 13, 17, 161, 0
+ special 142
+ release
+ end
+
+Route120_EventScript_15197F:: @ 815197F
+ move 255, Route120_Movement_1A083F
+ waitmove 0
+ return
+
+Route120_EventScript_15198A:: @ 815198A
+ move 255, Route120_Movement_151995
+ waitmove 0
+ return
+
+Route120_Movement_151995:: @ 8151995
+ step_down
+ step_left
+ step_end
+
+Route120_EventScript_151998:: @ 8151998
+ msgbox Route120_Text_171B93, 2
+ end
+
+Route120_EventScript_1519A1:: @ 81519A1
+ msgbox Route120_Text_171C5E, 3
+ end
+
+Route120_EventScript_1519AA:: @ 81519AA
+ msgbox Route120_Text_171C77, 3
+ end
+
+Route120_EventScript_1519B3:: @ 81519B3
+ trainerbattle 0, 405, 0, Route120_Text_1BEFC8, Route120_Text_1BF000
+ msgbox Route120_Text_1BF015, 6
+ end
+
+Route120_EventScript_1519CA:: @ 81519CA
+ trainerbattle 0, 406, 0, Route120_Text_1BF07E, Route120_Text_1BF0A5
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route120_EventScript_1519F1
+ msgbox Route120_Text_1BF0C3, 6
+ end
+
+Route120_EventScript_1519F1:: @ 81519F1
+ trainerbattle 5, 406, 0, Route120_Text_1BF0FA, Route120_Text_1BF131
+ msgbox Route120_Text_1BF154, 6
+ end
+
+Route120_EventScript_151A08:: @ 8151A08
+ trainerbattle 0, 553, 0, Route120_Text_1BF193, Route120_Text_1BF1D4
+ msgbox Route120_Text_1BF215, 6
+ end
+
+Route120_EventScript_151A1F:: @ 8151A1F
+ trainerbattle 0, 560, 0, Route120_Text_1BF26E, Route120_Text_1BF2D2
+ msgbox Route120_Text_1BF2EA, 6
+ end
+
+Route120_EventScript_151A36:: @ 8151A36
+ trainerbattle 0, 226, 0, Route120_Text_1BF32B, Route120_Text_1BF36B
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route120_EventScript_151A5D
+ msgbox Route120_Text_1BF38D, 6
+ end
+
+Route120_EventScript_151A5D:: @ 8151A5D
+ trainerbattle 5, 226, 0, Route120_Text_1BF3D0, Route120_Text_1BF416
+ msgbox Route120_Text_1BF43E, 6
+ end
+
+Route120_EventScript_151A74:: @ 8151A74
+ trainerbattle 0, 95, 0, Route120_Text_1BF4A0, Route120_Text_1BF504
+ msgbox Route120_Text_1BF51F, 6
+ end
+
+Route120_EventScript_151A8B:: @ 8151A8B
+ trainerbattle 0, 45, 0, Route120_Text_1BF560, Route120_Text_1BF5D6
+ msgbox Route120_Text_1BF5F4, 6
+ end
+
+Route120_EventScript_151AA2:: @ 8151AA2
+ trainerbattle 0, 435, 0, Route120_Text_1BF65B, Route120_Text_1BF6A4
+ msgbox Route120_Text_1BF6D0, 6
+ end
+
+Route120_EventScript_151AB9:: @ 8151AB9
+ trainerbattle 0, 436, 0, Route120_Text_1BF728, Route120_Text_1BF78C
+ msgbox Route120_Text_1BF7B2, 6
+ end
+
+Route120_EventScript_151AD0:: @ 8151AD0
+ trainerbattle 0, 652, 0, Route120_Text_1BF80B, Route120_Text_1BF852
+ msgbox Route120_Text_1BF891, 6
+ end
+
+Route120_EventScript_151AE7:: @ 8151AE7
+ trainerbattle 0, 653, 0, Route120_Text_1BF8C5, Route120_Text_1BF920
+ msgbox Route120_Text_1BF946, 6
+ end
+
diff --git a/data/maps/scripts/Route121.s b/data/maps/scripts/Route121.s
new file mode 100644
index 000000000..096e294d5
--- /dev/null
+++ b/data/maps/scripts/Route121.s
@@ -0,0 +1,114 @@
+Route121_MapScripts:: @ 8151AFE
+ map_script 3, Route121_MapScript1_151B04
+ .byte 0
+
+Route121_MapScript1_151B04:: @ 8151B04
+ call Route121_EventScript_1A0196
+ end
+
+Route121_EventScript_151B0A:: @ 8151B0A
+ msgbox Route121_Text_171CB4, 2
+ end
+
+Route121_EventScript_151B13:: @ 8151B13
+ msgbox Route121_Text_171D0C, 3
+ end
+
+Route121_EventScript_151B1C:: @ 8151B1C
+ msgbox Route121_Text_171D5B, 3
+ end
+
+Route121_EventScript_151B25:: @ 8151B25
+ lockall
+ msgbox Route121_Text_171C8F, 4
+ closebutton
+ move 12, Route121_Movement_151B57
+ move 13, Route121_Movement_151B60
+ move 14, Route121_Movement_151B69
+ waitmove 0
+ disappear 12
+ disappear 13
+ disappear 14
+ setvar 0x4074, 1
+ releaseall
+ end
+
+Route121_Movement_151B57:: @ 8151B57
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_end
+
+Route121_Movement_151B60:: @ 8151B60
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_end
+
+Route121_Movement_151B69:: @ 8151B69
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_end
+
+Route121_EventScript_151B72:: @ 8151B72
+ trainerbattle 0, 300, 0, Route121_Text_1BF96E, Route121_Text_1BF9A1
+ msgbox Route121_Text_1BF9BA, 6
+ end
+
+Route121_EventScript_151B89:: @ 8151B89
+ trainerbattle 0, 254, 0, Route121_Text_1BFA1B, Route121_Text_1BFA8C
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route121_EventScript_151BB0
+ msgbox Route121_Text_1BFA9D, 6
+ end
+
+Route121_EventScript_151BB0:: @ 8151BB0
+ trainerbattle 5, 254, 0, Route121_Text_1BFADA, Route121_Text_1BFB4B
+ msgbox Route121_Text_1BFB5C, 6
+ end
+
+Route121_EventScript_151BC7:: @ 8151BC7
+ trainerbattle 0, 107, 0, Route121_Text_1BFBB4, Route121_Text_1BFBEE
+ msgbox Route121_Text_1BFBFD, 6
+ end
+
+Route121_EventScript_151BDE:: @ 8151BDE
+ trainerbattle 4, 286, 0, Route121_Text_1BFC36, Route121_Text_1BFC7A, Route121_Text_1BFD08
+ msgbox Route121_Text_1BFCB3, 6
+ end
+
+Route121_EventScript_151BF9:: @ 8151BF9
+ trainerbattle 4, 286, 0, Route121_Text_1BFD60, Route121_Text_1BFDA3, Route121_Text_1BFE0D
+ msgbox Route121_Text_1BFDC1, 6
+ end
+
+Route121_EventScript_151C14:: @ 8151C14
+ trainerbattle 0, 127, 0, Route121_Text_1BFE51, Route121_Text_1BFE80
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route121_EventScript_151C3B
+ msgbox Route121_Text_1BFEAE, 6
+ end
+
+Route121_EventScript_151C3B:: @ 8151C3B
+ trainerbattle 5, 127, 0, Route121_Text_1BFEDE, Route121_Text_1BFF0A
+ msgbox Route121_Text_1BFF3A, 6
+ end
+
diff --git a/data/maps/scripts/Route121_SafariZoneEntrance.s b/data/maps/scripts/Route121_SafariZoneEntrance.s
new file mode 100644
index 000000000..9d5c12e26
--- /dev/null
+++ b/data/maps/scripts/Route121_SafariZoneEntrance.s
@@ -0,0 +1,139 @@
+Route121_SafariZoneEntrance_MapScripts:: @ 815C323
+ map_script 2, Route121_SafariZoneEntrance_MapScript2_15C329
+ .byte 0
+
+Route121_SafariZoneEntrance_MapScript2_15C329:: @ 815C329
+ map_script_2 0x40a4, 1, Route121_SafariZoneEntrance_EventScript_15C333
+ .2byte 0
+
+Route121_SafariZoneEntrance_EventScript_15C333:: @ 815C333
+ lockall
+ move 255, Route121_SafariZoneEntrance_Movement_15C348
+ waitmove 0
+ special 206
+ setvar 0x40a4, 0
+ releaseall
+ end
+
+Route121_SafariZoneEntrance_Movement_15C348:: @ 815C348
+ step_up
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+Route121_SafariZoneEntrance_EventScript_15C351:: @ 815C351
+ msgbox Route121_SafariZoneEntrance_Text_1C35D0, 2
+ end
+
+Route121_SafariZoneEntrance_EventScript_15C35A:: @ 815C35A
+ lock
+ faceplayer
+ msgbox Route121_SafariZoneEntrance_Text_1C3704, 5
+ compare RESULT, 1
+ jumpeq Route121_SafariZoneEntrance_EventScript_15C379
+ msgbox Route121_SafariZoneEntrance_Text_1C373C, 4
+ release
+ end
+
+Route121_SafariZoneEntrance_EventScript_15C379:: @ 815C379
+ msgbox Route121_SafariZoneEntrance_Text_1C375F, 4
+ release
+ end
+
+Route121_SafariZoneEntrance_EventScript_15C383:: @ 815C383
+ lockall
+ move 255, Route121_SafariZoneEntrance_Movement_1A0841
+ waitmove 0
+ showmoney 0, 0
+ snop
+ msgbox Route121_SafariZoneEntrance_Text_1C3832, 5
+ compare RESULT, 1
+ jumpeq Route121_SafariZoneEntrance_EventScript_15C3B3
+ msgbox Route121_SafariZoneEntrance_Text_1C3895, 4
+ jump Route121_SafariZoneEntrance_EventScript_15C46C
+ end
+
+Route121_SafariZoneEntrance_EventScript_15C3B3:: @ 815C3B3
+ checkitem ITEM_POKEBLOCK_CASE, 1
+ compare RESULT, 0
+ jumpeq Route121_SafariZoneEntrance_EventScript_15C450
+ call Route121_SafariZoneEntrance_EventScript_15C425
+ checkmoney 0x1f4, 0
+ compare RESULT, 0
+ jumpeq Route121_SafariZoneEntrance_EventScript_15C45E
+ msgbox Route121_SafariZoneEntrance_Text_1C38D9, 4
+ paymoney 0x1f4, 0
+ updatemoney 0, 0
+ snop
+ msgbox Route121_SafariZoneEntrance_Text_1C38F4, 4
+ fanfare 370
+ message Route121_SafariZoneEntrance_Text_1C3910
+ waitfanfare
+ waittext
+ msgbox Route121_SafariZoneEntrance_Text_1C392D, 4
+ closebutton
+ hidemoney 0, 0
+ move 255, Route121_SafariZoneEntrance_Movement_15C47E
+ waitmove 0
+ special 205
+ setvar 0x40a4, 2
+ warp SafariZone_Southeast, 255, 32, 33
+ waitstate
+ end
+
+Route121_SafariZoneEntrance_EventScript_15C425:: @ 815C425
+ countpokemon
+ compare RESULT, 6
+ jumpif 5, Route121_SafariZoneEntrance_EventScript_15C44F
+ specialval RESULT, 304
+ compare RESULT, 1
+ jumpeq Route121_SafariZoneEntrance_EventScript_15C44F
+ msgbox Route121_SafariZoneEntrance_Text_1C39A3, 4
+ jump Route121_SafariZoneEntrance_EventScript_15C46C
+ end
+
+Route121_SafariZoneEntrance_EventScript_15C44F:: @ 815C44F
+ return
+
+Route121_SafariZoneEntrance_EventScript_15C450:: @ 815C450
+ msgbox Route121_SafariZoneEntrance_Text_1C39C3, 4
+ jump Route121_SafariZoneEntrance_EventScript_15C46C
+ end
+
+Route121_SafariZoneEntrance_EventScript_15C45E:: @ 815C45E
+ msgbox Route121_SafariZoneEntrance_Text_1C38B5, 4
+ jump Route121_SafariZoneEntrance_EventScript_15C46C
+ end
+
+Route121_SafariZoneEntrance_EventScript_15C46C:: @ 815C46C
+ closebutton
+ hidemoney 0, 0
+ move 255, Route121_SafariZoneEntrance_Movement_15C47C
+ waitmove 0
+ releaseall
+ end
+
+Route121_SafariZoneEntrance_Movement_15C47C:: @ 815C47C
+ step_right
+ step_end
+
+Route121_SafariZoneEntrance_Movement_15C47E:: @ 815C47E
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_down
+ step_14
+ step_end
+
+Route121_SafariZoneEntrance_EventScript_15C487:: @ 815C487
+ msgbox Route121_SafariZoneEntrance_Text_1C3E4B, 3
+ end
+
diff --git a/data/maps/scripts/Route122.s b/data/maps/scripts/Route122.s
new file mode 100644
index 000000000..75718c2b1
--- /dev/null
+++ b/data/maps/scripts/Route122.s
@@ -0,0 +1,3 @@
+Route122_MapScripts:: @ 8151C52
+ .byte 0
+
diff --git a/data/maps/scripts/Route123.s b/data/maps/scripts/Route123.s
new file mode 100644
index 000000000..eb2ae5fcf
--- /dev/null
+++ b/data/maps/scripts/Route123.s
@@ -0,0 +1,103 @@
+Route123_MapScripts:: @ 8151C53
+ map_script 3, Route123_MapScript1_151C59
+ .byte 0
+
+Route123_MapScript1_151C59:: @ 8151C59
+ special 325
+ end
+
+Route123_EventScript_151C5D:: @ 8151C5D
+ lock
+ faceplayer
+ checkflag 232
+ jumpeq Route123_EventScript_151CAC
+ msgbox Route123_Text_171D83, 4
+ special 299
+ compare RESULT, 0
+ jumpeq Route123_EventScript_151CAA
+ msgbox Route123_Text_171DC2, 4
+ giveitem ITEM_TM19
+ compare RESULT, 0
+ jumpeq Route123_EventScript_1A029B
+ setflag 232
+ msgbox Route123_Text_171E34, 4
+ release
+ end
+
+Route123_EventScript_151CAA:: @ 8151CAA
+ release
+ end
+
+Route123_EventScript_151CAC:: @ 8151CAC
+ msgbox Route123_Text_171E34, 4
+ release
+ end
+
+Route123_EventScript_151CB6:: @ 8151CB6
+ msgbox Route123_Text_171E76, 3
+ end
+
+Route123_EventScript_151CBF:: @ 8151CBF
+ msgbox Route123_Text_171E8E, 3
+ end
+
+Route123_EventScript_151CC8:: @ 8151CC8
+ msgbox Route123_Text_171EBC, 3
+ end
+
+Route123_EventScript_151CD1:: @ 8151CD1
+ trainerbattle 0, 92, 0, Route123_Text_1BFF6A, Route123_Text_1BFFA2
+ msgbox Route123_Text_1BFFC1, 6
+ end
+
+Route123_EventScript_151CE8:: @ 8151CE8
+ trainerbattle 0, 75, 0, Route123_Text_1BFFF0, Route123_Text_1C0057
+ msgbox Route123_Text_1C0075, 6
+ end
+
+Route123_EventScript_151CFF:: @ 8151CFF
+ trainerbattle 0, 39, 0, Route123_Text_1C009E, Route123_Text_1C00D4
+ msgbox Route123_Text_1C0100, 6
+ end
+
+Route123_EventScript_151D16:: @ 8151D16
+ trainerbattle 0, 238, 0, Route123_Text_1C013F, Route123_Text_1C01A3
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route123_EventScript_151D3D
+ msgbox Route123_Text_1C01B1, 6
+ end
+
+Route123_EventScript_151D3D:: @ 8151D3D
+ trainerbattle 5, 238, 0, Route123_Text_1C01F9, Route123_Text_1C0240
+ msgbox Route123_Text_1C024E, 6
+ end
+
+Route123_EventScript_151D54:: @ 8151D54
+ trainerbattle 0, 249, 0, Route123_Text_1C028C, Route123_Text_1C0303
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route123_EventScript_151D7B
+ msgbox Route123_Text_1C030F, 6
+ end
+
+Route123_EventScript_151D7B:: @ 8151D7B
+ trainerbattle 5, 249, 0, Route123_Text_1C0351, Route123_Text_1C0380
+ msgbox Route123_Text_1C038C, 6
+ end
+
+Route123_EventScript_151D92:: @ 8151D92
+ trainerbattle 4, 484, 0, Route123_Text_1C03CB, Route123_Text_1C040E, Route123_Text_1C0462
+ msgbox Route123_Text_1C0423, 6
+ end
+
+Route123_EventScript_151DAD:: @ 8151DAD
+ trainerbattle 4, 484, 0, Route123_Text_1C049C, Route123_Text_1C04CD, Route123_Text_1C0519
+ msgbox Route123_Text_1C04E3, 6
+ end
+
+Route123_EventScript_151DC8:: @ 8151DC8
+ trainerbattle 0, 106, 0, Route123_Text_1C0554, Route123_Text_1C059F
+ msgbox Route123_Text_1C05BC, 6
+ end
+
diff --git a/data/maps/scripts/Route123_BerryMastersHouse.s b/data/maps/scripts/Route123_BerryMastersHouse.s
new file mode 100644
index 000000000..b1bfb5eaa
--- /dev/null
+++ b/data/maps/scripts/Route123_BerryMastersHouse.s
@@ -0,0 +1,153 @@
+Route123_BerryMastersHouse_MapScripts:: @ 81639DF
+ map_script 3, Route123_BerryMastersHouse_MapScript1_1639E5
+ .byte 0
+
+Route123_BerryMastersHouse_MapScript1_1639E5:: @ 81639E5
+ setflag 2147
+ end
+
+Route123_BerryMastersHouse_EventScript_1639E9:: @ 81639E9
+ lock
+ faceplayer
+ checkdailyflags
+ checkflag 2253
+ jumpeq Route123_BerryMastersHouse_EventScript_163A5A
+ msgbox Route123_BerryMastersHouse_Text_1C5BC4, 4
+ random 10
+ addvar RESULT, 20
+ addvar RESULT, 133
+ giveitem RESULT
+ compare RESULT, 0
+ jumpeq Route123_BerryMastersHouse_EventScript_1A029B
+ setflag 2253
+ msgbox Route123_BerryMastersHouse_Text_1C5C66, 4
+ random 10
+ addvar RESULT, 20
+ addvar RESULT, 133
+ giveitem RESULT
+ compare RESULT, 0
+ jumpeq Route123_BerryMastersHouse_EventScript_1A029B
+ msgbox Route123_BerryMastersHouse_Text_1C5C83, 4
+ release
+ end
+
+Route123_BerryMastersHouse_EventScript_163A5A:: @ 8163A5A
+ msgbox Route123_BerryMastersHouse_Text_1C5CDC, 4
+ release
+ end
+
+Route123_BerryMastersHouse_EventScript_163A64:: @ 8163A64
+ lock
+ faceplayer
+ checkdailyflags
+ checkflag 2257
+ jumpeq Route123_BerryMastersHouse_EventScript_163C13
+ msgbox Route123_BerryMastersHouse_Text_1C5D24, 4
+ setvar 0x8004, 13
+ call Route123_BerryMastersHouse_EventScript_1A00F3
+ lock
+ faceplayer
+ compare RESULT, 1
+ jumpeq Route123_BerryMastersHouse_EventScript_163AAD
+ compare RESULT, 0
+ jumpeq Route123_BerryMastersHouse_EventScript_163A9B
+ end
+
+Route123_BerryMastersHouse_EventScript_163A9B:: @ 8163A9B
+ msgbox Route123_BerryMastersHouse_Text_1C5EC0, 4
+ msgbox Route123_BerryMastersHouse_Text_1C5E59, 4
+ release
+ end
+
+Route123_BerryMastersHouse_EventScript_163AAD:: @ 8163AAD
+ compare 0x8004, 0
+ jumpeq Route123_BerryMastersHouse_EventScript_163AF0
+ compare 0x8004, 1
+ jumpeq Route123_BerryMastersHouse_EventScript_163B1E
+ compare 0x8004, 2
+ jumpeq Route123_BerryMastersHouse_EventScript_163B4F
+ compare 0x8004, 3
+ jumpeq Route123_BerryMastersHouse_EventScript_163B80
+ compare 0x8004, 4
+ jumpeq Route123_BerryMastersHouse_EventScript_163BB1
+ compare 0x8004, 5
+ jumpeq Route123_BerryMastersHouse_EventScript_163BE2
+ end
+
+Route123_BerryMastersHouse_EventScript_163AF0:: @ 8163AF0
+ msgbox Route123_BerryMastersHouse_Text_1C5E0E, 4
+ random 10
+ addvar RESULT, 133
+ giveitem RESULT
+ compare RESULT, 0
+ jumpeq Route123_BerryMastersHouse_EventScript_1A029B
+ jump Route123_BerryMastersHouse_EventScript_163C1D
+
+ .incbin "baserom.gba", 0x163b1c, 0x2
+
+Route123_BerryMastersHouse_EventScript_163B1E:: @ 8163B1E
+ checkflag 248
+ jumpeq Route123_BerryMastersHouse_EventScript_163AF0
+ msgbox Route123_BerryMastersHouse_Text_1C5DC1, 4
+ giveitem ITEM_SPELON_BERRY
+ compare RESULT, 0
+ jumpeq Route123_BerryMastersHouse_EventScript_1A029B
+ setflag 248
+ jump Route123_BerryMastersHouse_EventScript_163C1D
+ end
+
+Route123_BerryMastersHouse_EventScript_163B4F:: @ 8163B4F
+ checkflag 249
+ jumpeq Route123_BerryMastersHouse_EventScript_163AF0
+ msgbox Route123_BerryMastersHouse_Text_1C5DC1, 4
+ giveitem ITEM_PAMTRE_BERRY
+ compare RESULT, 0
+ jumpeq Route123_BerryMastersHouse_EventScript_1A029B
+ setflag 249
+ jump Route123_BerryMastersHouse_EventScript_163C1D
+ end
+
+Route123_BerryMastersHouse_EventScript_163B80:: @ 8163B80
+ checkflag 250
+ jumpeq Route123_BerryMastersHouse_EventScript_163AF0
+ msgbox Route123_BerryMastersHouse_Text_1C5DC1, 4
+ giveitem ITEM_WATMEL_BERRY
+ compare RESULT, 0
+ jumpeq Route123_BerryMastersHouse_EventScript_1A029B
+ setflag 250
+ jump Route123_BerryMastersHouse_EventScript_163C1D
+ end
+
+Route123_BerryMastersHouse_EventScript_163BB1:: @ 8163BB1
+ checkflag 251
+ jumpeq Route123_BerryMastersHouse_EventScript_163AF0
+ msgbox Route123_BerryMastersHouse_Text_1C5DC1, 4
+ giveitem ITEM_DURIN_BERRY
+ compare RESULT, 0
+ jumpeq Route123_BerryMastersHouse_EventScript_1A029B
+ setflag 251
+ jump Route123_BerryMastersHouse_EventScript_163C1D
+ end
+
+Route123_BerryMastersHouse_EventScript_163BE2:: @ 8163BE2
+ checkflag 252
+ jumpeq Route123_BerryMastersHouse_EventScript_163AF0
+ msgbox Route123_BerryMastersHouse_Text_1C5DC1, 4
+ giveitem ITEM_BELUE_BERRY
+ compare RESULT, 0
+ jumpeq Route123_BerryMastersHouse_EventScript_1A029B
+ setflag 252
+ jump Route123_BerryMastersHouse_EventScript_163C1D
+ end
+
+Route123_BerryMastersHouse_EventScript_163C13:: @ 8163C13
+ msgbox Route123_BerryMastersHouse_Text_1C5E59, 4
+ release
+ end
+
+Route123_BerryMastersHouse_EventScript_163C1D:: @ 8163C1D
+ setflag 2257
+ msgbox Route123_BerryMastersHouse_Text_1C5E59, 4
+ release
+ end
+
diff --git a/data/maps/scripts/Route124.s b/data/maps/scripts/Route124.s
new file mode 100644
index 000000000..d0295dd37
--- /dev/null
+++ b/data/maps/scripts/Route124.s
@@ -0,0 +1,72 @@
+Route124_MapScripts:: @ 8151DDF
+ map_script 3, Route124_MapScript1_151DE5
+ .byte 0
+
+Route124_MapScript1_151DE5:: @ 8151DE5
+ checkflag 2090
+ callif 1, Route124_EventScript_1A02C1
+ end
+
+Route124_EventScript_151DEF:: @ 8151DEF
+ msgbox Route124_Text_171ED1, 3
+ end
+
+Route124_EventScript_151DF8:: @ 8151DF8
+ trainerbattle 0, 159, 0, Route124_Text_1C0624, Route124_Text_1C0675
+ msgbox Route124_Text_1C0693, 6
+ end
+
+Route124_EventScript_151E0F:: @ 8151E0F
+ trainerbattle 0, 160, 0, Route124_Text_1C06F7, Route124_Text_1C0741
+ msgbox Route124_Text_1C0750, 6
+ end
+
+Route124_EventScript_151E26:: @ 8151E26
+ trainerbattle 0, 449, 0, Route124_Text_1C07B4, Route124_Text_1C07F9
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route124_EventScript_151E4D
+ msgbox Route124_Text_1C080E, 6
+ end
+
+Route124_EventScript_151E4D:: @ 8151E4D
+ trainerbattle 5, 449, 0, Route124_Text_1C0888, Route124_Text_1C08C8
+ msgbox Route124_Text_1C08EA, 6
+ end
+
+Route124_EventScript_151E64:: @ 8151E64
+ trainerbattle 0, 450, 0, Route124_Text_1C0936, Route124_Text_1C096B
+ msgbox Route124_Text_1C0994, 6
+ end
+
+Route124_EventScript_151E7B:: @ 8151E7B
+ trainerbattle 0, 174, 0, Route124_Text_1C09CE, Route124_Text_1C0A2F
+ msgbox Route124_Text_1C0A52, 6
+ end
+
+Route124_EventScript_151E92:: @ 8151E92
+ trainerbattle 4, 687, 0, Route124_Text_1C0ABD, Route124_Text_1C0B36, Route124_Text_1C0BC8
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route124_EventScript_151EBD
+ msgbox Route124_Text_1C0B72, 6
+ end
+
+Route124_EventScript_151EBD:: @ 8151EBD
+ trainerbattle 7, 687, 0, Route124_Text_1C0D1F, Route124_Text_1C0DB5, Route124_Text_1C0E5C
+ msgbox Route124_Text_1C0E06, 6
+ end
+
+Route124_EventScript_151ED8:: @ 8151ED8
+ trainerbattle 4, 687, 0, Route124_Text_1C0C0E, Route124_Text_1C0C4F, Route124_Text_1C0CE0
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route124_EventScript_151F03
+ msgbox Route124_Text_1C0C7F, 6
+ end
+
+Route124_EventScript_151F03:: @ 8151F03
+ trainerbattle 7, 687, 0, Route124_Text_1C0EA2, Route124_Text_1C0EE5, Route124_Text_1C0F90
+ msgbox Route124_Text_1C0F19, 6
+ end
+
diff --git a/data/maps/scripts/Route124_DivingTreasureHuntersHouse.s b/data/maps/scripts/Route124_DivingTreasureHuntersHouse.s
new file mode 100644
index 000000000..6e7a0a0df
--- /dev/null
+++ b/data/maps/scripts/Route124_DivingTreasureHuntersHouse.s
@@ -0,0 +1,296 @@
+Route124_DivingTreasureHuntersHouse_MapScripts:: @ 8163DFA
+ map_script 3, Route124_DivingTreasureHuntersHouse_MapScript1_163E00
+ .byte 0
+
+Route124_DivingTreasureHuntersHouse_MapScript1_163E00:: @ 8163E00
+ setflag 2139
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_163E04:: @ 8163E04
+ lock
+ faceplayer
+ checkflag 217
+ jumpeq Route124_DivingTreasureHuntersHouse_EventScript_163E20
+ msgbox Route124_DivingTreasureHuntersHouse_Text_19F416, 4
+ setflag 217
+ jump Route124_DivingTreasureHuntersHouse_EventScript_163E2E
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_163E20:: @ 8163E20
+ msgbox Route124_DivingTreasureHuntersHouse_Text_19F48F, 4
+ jump Route124_DivingTreasureHuntersHouse_EventScript_163E2E
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_163E2E:: @ 8163E2E
+ call Route124_DivingTreasureHuntersHouse_EventScript_163E44
+ compare 0x4001, 0
+ jumpeq Route124_DivingTreasureHuntersHouse_EventScript_164329
+ jump Route124_DivingTreasureHuntersHouse_EventScript_163EA2
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_163E44:: @ 8163E44
+ setvar 0x4001, 0
+ checkitem ITEM_RED_SHARD, 1
+ compare RESULT, 1
+ callif 1, Route124_DivingTreasureHuntersHouse_EventScript_163E8A
+ checkitem ITEM_YELLOW_SHARD, 1
+ compare RESULT, 1
+ callif 1, Route124_DivingTreasureHuntersHouse_EventScript_163E90
+ checkitem ITEM_BLUE_SHARD, 1
+ compare RESULT, 1
+ callif 1, Route124_DivingTreasureHuntersHouse_EventScript_163E96
+ checkitem ITEM_GREEN_SHARD, 1
+ compare RESULT, 1
+ callif 1, Route124_DivingTreasureHuntersHouse_EventScript_163E9C
+ return
+
+Route124_DivingTreasureHuntersHouse_EventScript_163E8A:: @ 8163E8A
+ addvar 0x4001, 1
+ return
+
+Route124_DivingTreasureHuntersHouse_EventScript_163E90:: @ 8163E90
+ addvar 0x4001, 2
+ return
+
+Route124_DivingTreasureHuntersHouse_EventScript_163E96:: @ 8163E96
+ addvar 0x4001, 4
+ return
+
+Route124_DivingTreasureHuntersHouse_EventScript_163E9C:: @ 8163E9C
+ addvar 0x4001, 8
+ return
+
+Route124_DivingTreasureHuntersHouse_EventScript_163EA2:: @ 8163EA2
+ msgbox Route124_DivingTreasureHuntersHouse_Text_19F544, 4
+ jump Route124_DivingTreasureHuntersHouse_EventScript_163EB0
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_163EB0:: @ 8163EB0
+ message Route124_DivingTreasureHuntersHouse_Text_19F5C5
+ waittext
+ switch 0x4001
+ case 1, Route124_DivingTreasureHuntersHouse_EventScript_163F61
+ case 2, Route124_DivingTreasureHuntersHouse_EventScript_163F87
+ case 3, Route124_DivingTreasureHuntersHouse_EventScript_163FAD
+ case 4, Route124_DivingTreasureHuntersHouse_EventScript_163FDE
+ case 5, Route124_DivingTreasureHuntersHouse_EventScript_164004
+ case 6, Route124_DivingTreasureHuntersHouse_EventScript_164035
+ case 7, Route124_DivingTreasureHuntersHouse_EventScript_164066
+ case 8, Route124_DivingTreasureHuntersHouse_EventScript_1640A2
+ case 9, Route124_DivingTreasureHuntersHouse_EventScript_1640C8
+ case 10, Route124_DivingTreasureHuntersHouse_EventScript_1640F9
+ case 11, Route124_DivingTreasureHuntersHouse_EventScript_16412A
+ case 12, Route124_DivingTreasureHuntersHouse_EventScript_164166
+ case 13, Route124_DivingTreasureHuntersHouse_EventScript_164197
+ case 14, Route124_DivingTreasureHuntersHouse_EventScript_1641D3
+ case 15, Route124_DivingTreasureHuntersHouse_EventScript_16420F
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_163F61:: @ 8163F61
+ multichoice 0, 0, 58, 0
+ switch RESULT
+ case 0, Route124_DivingTreasureHuntersHouse_EventScript_164256
+ case 1, Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ jump Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_163F87:: @ 8163F87
+ multichoice 0, 0, 59, 0
+ switch RESULT
+ case 0, Route124_DivingTreasureHuntersHouse_EventScript_164265
+ case 1, Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ jump Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_163FAD:: @ 8163FAD
+ multichoice 0, 0, 60, 0
+ switch RESULT
+ case 0, Route124_DivingTreasureHuntersHouse_EventScript_164256
+ case 1, Route124_DivingTreasureHuntersHouse_EventScript_164265
+ case 2, Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ jump Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_163FDE:: @ 8163FDE
+ multichoice 0, 0, 61, 0
+ switch RESULT
+ case 0, Route124_DivingTreasureHuntersHouse_EventScript_164274
+ case 1, Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ jump Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_164004:: @ 8164004
+ multichoice 0, 0, 62, 0
+ switch RESULT
+ case 0, Route124_DivingTreasureHuntersHouse_EventScript_164256
+ case 1, Route124_DivingTreasureHuntersHouse_EventScript_164274
+ case 2, Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ jump Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_164035:: @ 8164035
+ multichoice 0, 0, 63, 0
+ switch RESULT
+ case 0, Route124_DivingTreasureHuntersHouse_EventScript_164265
+ case 1, Route124_DivingTreasureHuntersHouse_EventScript_164274
+ case 2, Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ jump Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_164066:: @ 8164066
+ multichoice 0, 0, 64, 0
+ switch RESULT
+ case 0, Route124_DivingTreasureHuntersHouse_EventScript_164256
+ case 1, Route124_DivingTreasureHuntersHouse_EventScript_164265
+ case 2, Route124_DivingTreasureHuntersHouse_EventScript_164274
+ case 3, Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ jump Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_1640A2:: @ 81640A2
+ multichoice 0, 0, 65, 0
+ switch RESULT
+ case 0, Route124_DivingTreasureHuntersHouse_EventScript_164283
+ case 1, Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ jump Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_1640C8:: @ 81640C8
+ multichoice 0, 0, 66, 0
+ switch RESULT
+ case 0, Route124_DivingTreasureHuntersHouse_EventScript_164256
+ case 1, Route124_DivingTreasureHuntersHouse_EventScript_164283
+ case 2, Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ jump Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_1640F9:: @ 81640F9
+ multichoice 0, 0, 67, 0
+ switch RESULT
+ case 0, Route124_DivingTreasureHuntersHouse_EventScript_164265
+ case 1, Route124_DivingTreasureHuntersHouse_EventScript_164283
+ case 2, Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ jump Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_16412A:: @ 816412A
+ multichoice 0, 0, 68, 0
+ switch RESULT
+ case 0, Route124_DivingTreasureHuntersHouse_EventScript_164256
+ case 1, Route124_DivingTreasureHuntersHouse_EventScript_164265
+ case 2, Route124_DivingTreasureHuntersHouse_EventScript_164283
+ case 3, Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ jump Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_164166:: @ 8164166
+ multichoice 0, 0, 69, 0
+ switch RESULT
+ case 0, Route124_DivingTreasureHuntersHouse_EventScript_164274
+ case 1, Route124_DivingTreasureHuntersHouse_EventScript_164283
+ case 2, Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ jump Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_164197:: @ 8164197
+ multichoice 0, 0, 70, 0
+ switch RESULT
+ case 0, Route124_DivingTreasureHuntersHouse_EventScript_164256
+ case 1, Route124_DivingTreasureHuntersHouse_EventScript_164274
+ case 2, Route124_DivingTreasureHuntersHouse_EventScript_164283
+ case 3, Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ jump Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_1641D3:: @ 81641D3
+ multichoice 0, 0, 71, 0
+ switch RESULT
+ case 0, Route124_DivingTreasureHuntersHouse_EventScript_164265
+ case 1, Route124_DivingTreasureHuntersHouse_EventScript_164274
+ case 2, Route124_DivingTreasureHuntersHouse_EventScript_164283
+ case 3, Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ jump Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_16420F:: @ 816420F
+ multichoice 0, 0, 72, 0
+ switch RESULT
+ case 0, Route124_DivingTreasureHuntersHouse_EventScript_164256
+ case 1, Route124_DivingTreasureHuntersHouse_EventScript_164265
+ case 2, Route124_DivingTreasureHuntersHouse_EventScript_164274
+ case 3, Route124_DivingTreasureHuntersHouse_EventScript_164283
+ case 4, Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ jump Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_164256:: @ 8164256
+ setvar 0x8008, 48
+ setvar 0x8009, 95
+ jump Route124_DivingTreasureHuntersHouse_EventScript_164292
+
+Route124_DivingTreasureHuntersHouse_EventScript_164265:: @ 8164265
+ setvar 0x8008, 50
+ setvar 0x8009, 96
+ jump Route124_DivingTreasureHuntersHouse_EventScript_164292
+
+Route124_DivingTreasureHuntersHouse_EventScript_164274:: @ 8164274
+ setvar 0x8008, 49
+ setvar 0x8009, 97
+ jump Route124_DivingTreasureHuntersHouse_EventScript_164292
+
+Route124_DivingTreasureHuntersHouse_EventScript_164283:: @ 8164283
+ setvar 0x8008, 51
+ setvar 0x8009, 98
+ jump Route124_DivingTreasureHuntersHouse_EventScript_164292
+
+Route124_DivingTreasureHuntersHouse_EventScript_164292:: @ 8164292
+ bufferitem 0, 0x8008
+ bufferitem 1, 0x8009
+ msgbox Route124_DivingTreasureHuntersHouse_Text_19F5E0, 5
+ compare RESULT, 0
+ jumpeq Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ checkitemspace 0x8009, 1
+ compare RESULT, 1
+ jumpeq Route124_DivingTreasureHuntersHouse_EventScript_1642D3
+ checkitem 0x8008, 2
+ compare RESULT, 0
+ jumpeq Route124_DivingTreasureHuntersHouse_EventScript_1642D3
+ jump Route124_DivingTreasureHuntersHouse_EventScript_164315
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_1642D3:: @ 81642D3
+ removeitem 0x8008, 1
+ giveitem 0x8009
+ msgbox Route124_DivingTreasureHuntersHouse_Text_19F606, 4
+ call Route124_DivingTreasureHuntersHouse_EventScript_163E44
+ compare 0x4001, 0
+ jumpeq Route124_DivingTreasureHuntersHouse_EventScript_164333
+ msgbox Route124_DivingTreasureHuntersHouse_Text_19F629, 5
+ compare RESULT, 1
+ jumpeq Route124_DivingTreasureHuntersHouse_EventScript_163EB0
+ jump Route124_DivingTreasureHuntersHouse_EventScript_16431F
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_164315:: @ 8164315
+ msgbox Route124_DivingTreasureHuntersHouse_Text_19F64E, 4
+ release
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_16431F:: @ 816431F
+ msgbox Route124_DivingTreasureHuntersHouse_Text_19F686, 4
+ release
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_164329:: @ 8164329
+ msgbox Route124_DivingTreasureHuntersHouse_Text_19F4D1, 4
+ release
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_164333:: @ 8164333
+ release
+ end
+
+Route124_DivingTreasureHuntersHouse_EventScript_164335:: @ 8164335
+ msgbox Route124_DivingTreasureHuntersHouse_Text_19F6C5, 3
+ end
+
diff --git a/data/maps/scripts/Route125.s b/data/maps/scripts/Route125.s
new file mode 100644
index 000000000..1c51c45ad
--- /dev/null
+++ b/data/maps/scripts/Route125.s
@@ -0,0 +1,52 @@
+Route125_MapScripts:: @ 8151F1E
+ map_script 3, Route125_MapScript1_151F24
+ .byte 0
+
+Route125_MapScript1_151F24:: @ 8151F24
+ checkflag 2090
+ callif 1, Route125_EventScript_1A02C1
+ end
+
+Route125_EventScript_151F2E:: @ 8151F2E
+ trainerbattle 0, 161, 0, Route125_Text_1C0FCF, Route125_Text_1C1002
+ msgbox Route125_Text_1C1013, 6
+ end
+
+Route125_EventScript_151F45:: @ 8151F45
+ trainerbattle 0, 162, 0, Route125_Text_1C104B, Route125_Text_1C1073
+ msgbox Route125_Text_1C1083, 6
+ end
+
+Route125_EventScript_151F5C:: @ 8151F5C
+ trainerbattle 0, 451, 0, Route125_Text_1C10C3, Route125_Text_1C10FB
+ msgbox Route125_Text_1C110C, 6
+ end
+
+Route125_EventScript_151F73:: @ 8151F73
+ trainerbattle 0, 452, 0, Route125_Text_1C1136, Route125_Text_1C1175
+ msgbox Route125_Text_1C117F, 6
+ end
+
+Route125_EventScript_151F8A:: @ 8151F8A
+ trainerbattle 0, 492, 0, Route125_Text_1C11AF, Route125_Text_1C11ED
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route125_EventScript_151FB1
+ msgbox Route125_Text_1C1208, 6
+ end
+
+Route125_EventScript_151FB1:: @ 8151FB1
+ trainerbattle 5, 492, 0, Route125_Text_1C1282, Route125_Text_1C12C5
+ msgbox Route125_Text_1C12EE, 6
+ end
+
+Route125_EventScript_151FC8:: @ 8151FC8
+ trainerbattle 4, 678, 0, Route125_Text_1C13A1, Route125_Text_1C13FF, Route125_Text_1C146E
+ msgbox Route125_Text_1C141C, 6
+ end
+
+Route125_EventScript_151FE3:: @ 8151FE3
+ trainerbattle 4, 678, 0, Route125_Text_1C14AB, Route125_Text_1C14E7, Route125_Text_1C154F
+ msgbox Route125_Text_1C1508, 6
+ end
+
diff --git a/data/maps/scripts/Route126.s b/data/maps/scripts/Route126.s
new file mode 100644
index 000000000..574d05b98
--- /dev/null
+++ b/data/maps/scripts/Route126.s
@@ -0,0 +1,29 @@
+Route126_MapScripts:: @ 8151FFE
+ map_script 3, Route126_MapScript1_152004
+ .byte 0
+
+Route126_MapScript1_152004:: @ 8152004
+ checkflag 2090
+ callif 1, Route126_EventScript_1A02C1
+ end
+
+Route126_EventScript_15200E:: @ 815200E
+ trainerbattle 0, 163, 0, Route126_Text_1C1590, Route126_Text_1C15C3
+ msgbox Route126_Text_1C15D8, 6
+ end
+
+Route126_EventScript_152025:: @ 8152025
+ trainerbattle 0, 164, 0, Route126_Text_1C1627, Route126_Text_1C1660
+ msgbox Route126_Text_1C166F, 6
+ end
+
+Route126_EventScript_15203C:: @ 815203C
+ trainerbattle 0, 453, 0, Route126_Text_1C16AB, Route126_Text_1C16C5
+ msgbox Route126_Text_1C1702, 6
+ end
+
+Route126_EventScript_152053:: @ 8152053
+ trainerbattle 0, 454, 0, Route126_Text_1C1741, Route126_Text_1C1766
+ msgbox Route126_Text_1C1773, 6
+ end
+
diff --git a/data/maps/scripts/Route127.s b/data/maps/scripts/Route127.s
new file mode 100644
index 000000000..5beffdbcb
--- /dev/null
+++ b/data/maps/scripts/Route127.s
@@ -0,0 +1,44 @@
+Route127_MapScripts:: @ 815206A
+ map_script 3, Route127_MapScript1_152070
+ .byte 0
+
+Route127_MapScript1_152070:: @ 8152070
+ checkflag 2090
+ callif 1, Route127_EventScript_1A02C1
+ end
+
+Route127_EventScript_15207A:: @ 815207A
+ trainerbattle 0, 374, 0, Route127_Text_1C17A8, Route127_Text_1C17DD
+ msgbox Route127_Text_1C17EC, 6
+ end
+
+Route127_EventScript_152091:: @ 8152091
+ trainerbattle 0, 384, 0, Route127_Text_1C1828, Route127_Text_1C1860
+ msgbox Route127_Text_1C1877, 6
+ end
+
+Route127_EventScript_1520A8:: @ 81520A8
+ trainerbattle 0, 667, 0, Route127_Text_1C18CC, Route127_Text_1C1930
+ msgbox Route127_Text_1C195D, 6
+ end
+
+Route127_EventScript_1520BF:: @ 81520BF
+ trainerbattle 0, 668, 0, Route127_Text_1C19A3, Route127_Text_1C19D6
+ msgbox Route127_Text_1C19E7, 6
+ end
+
+Route127_EventScript_1520D6:: @ 81520D6
+ trainerbattle 0, 669, 0, Route127_Text_1C1A2E, Route127_Text_1C1A73
+ msgbox Route127_Text_1C1AA0, 6
+ end
+
+Route127_EventScript_1520ED:: @ 81520ED
+ trainerbattle 0, 672, 0, Route127_Text_1C1AE2, Route127_Text_1C1B2A
+ msgbox Route127_Text_1C1B39, 6
+ end
+
+Route127_EventScript_152104:: @ 8152104
+ trainerbattle 0, 674, 0, Route127_Text_1C1B92, Route127_Text_1C1BD9
+ msgbox Route127_Text_1C1BEC, 6
+ end
+
diff --git a/data/maps/scripts/Route128.s b/data/maps/scripts/Route128.s
new file mode 100644
index 000000000..30109a9ae
--- /dev/null
+++ b/data/maps/scripts/Route128.s
@@ -0,0 +1,200 @@
+Route128_MapScripts:: @ 815211B
+ map_script 3, Route128_MapScript1_152126
+ map_script 2, Route128_MapScript2_152135
+ .byte 0
+
+Route128_MapScript1_152126:: @ 8152126
+ checkflag 2090
+ callif 1, Route128_EventScript_1A02C1
+ call Route128_EventScript_1A0196
+ end
+
+Route128_MapScript2_152135:: @ 8152135
+ map_script_2 0x407b, 1, Route128_EventScript_15213F
+ .2byte 0
+
+Route128_EventScript_15213F:: @ 815213F
+ lockall
+ pause 20
+ special 317
+ waitstate
+ move 4, Route128_Movement_152271
+ waitmove 0
+ msgbox Route128_Text_171EE0, 4
+ move 4, Route128_Movement_152279
+ waitmove 0
+ msgbox Route128_Text_171F35, 4
+ closebutton
+ move 5, Route128_Movement_152293
+ waitmove 0
+ move 4, Route128_Movement_1A0841
+ waitmove 0
+ msgbox Route128_Text_171F4B, 4
+ closebutton
+ move 5, Route128_Movement_1522A1
+ waitmove 0
+ move 255, Route128_Movement_1A0841
+ waitmove 0
+ msgbox Route128_Text_172008, 4
+ closebutton
+ move 4, Route128_Movement_15227E
+ move 255, Route128_Movement_1A083F
+ move 5, Route128_Movement_152290
+ waitmove 0
+ msgbox Route128_Text_17210B, 4
+ closebutton
+ pause 40
+ move 5, Route128_Movement_152296
+ move 4, Route128_Movement_152283
+ waitmove 0
+ disappear 5
+ disappear 4
+ pause 100
+ setanimation 0, 1
+ doanimation 30
+ checkanimation 30
+ reappear 3
+ move 3, Route128_Movement_15226F
+ waitmove 0
+ move 255, Route128_Movement_1A0843
+ waitmove 0
+ msgbox Route128_Text_172181, 4
+ closebutton
+ move 3, Route128_Movement_15226D
+ move 255, Route128_Movement_1A0841
+ waitmove 0
+ msgbox Route128_Text_1722A1, 4
+ move 3, Route128_Movement_1A0845
+ waitmove 0
+ msgbox Route128_Text_1723BE, 4
+ closebutton
+ move 3, Route128_Movement_1A0845
+ waitmove 0
+ pause 50
+ setanimation 0, 1
+ doanimation 30
+ pause 15
+ disappear 3
+ checkanimation 30
+ setvar 0x407b, 2
+ releaseall
+ end
+
+ .incbin "baserom.gba", 0x15225e, 0xf
+
+Route128_Movement_15226D:: @ 815226D
+ step_up
+ step_end
+
+Route128_Movement_15226F:: @ 815226F
+ step_17
+ step_end
+
+Route128_Movement_152271:: @ 8152271
+ step_15
+ step_27
+ step_14
+ step_28
+ step_14
+ step_14
+ step_25
+ step_end
+
+Route128_Movement_152279:: @ 8152279
+ step_40
+ slow_step_up
+ step_14
+ step_41
+ step_end
+
+Route128_Movement_15227E:: @ 815227E
+ step_17
+ step_17
+ step_17
+ step_28
+ step_end
+
+Route128_Movement_152283:: @ 8152283
+ step_14
+ step_14
+ step_16
+ step_17
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_end
+
+Route128_Movement_152290:: @ 8152290
+ step_left
+ step_left
+ step_end
+
+Route128_Movement_152293:: @ 8152293
+ step_left
+ step_25
+ step_end
+
+Route128_Movement_152296:: @ 8152296
+ step_17
+ step_17
+ step_17
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_end
+
+Route128_Movement_1522A1:: @ 81522A1
+ step_right
+ step_25
+ step_end
+
+Route128_EventScript_1522A4:: @ 81522A4
+ trainerbattle 0, 376, 0, Route128_Text_1C1C67, Route128_Text_1C1C95
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route128_EventScript_1522CB
+ msgbox Route128_Text_1C1CC3, 6
+ end
+
+Route128_EventScript_1522CB:: @ 81522CB
+ trainerbattle 5, 376, 0, Route128_Text_1C1D02, Route128_Text_1C1D45
+ msgbox Route128_Text_1C1D6B, 6
+ end
+
+Route128_EventScript_1522E2:: @ 81522E2
+ trainerbattle 0, 386, 0, Route128_Text_1C1DB0, Route128_Text_1C1E25
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq Route128_EventScript_152309
+ msgbox Route128_Text_1C1E4A, 6
+ end
+
+Route128_EventScript_152309:: @ 8152309
+ trainerbattle 5, 386, 0, Route128_Text_1C1E90, Route128_Text_1C1EFA
+ msgbox Route128_Text_1C1F2E, 6
+ end
+
+Route128_EventScript_152320:: @ 8152320
+ trainerbattle 0, 670, 0, Route128_Text_1C1F6D, Route128_Text_1C1FCC
+ msgbox Route128_Text_1C1FE8, 6
+ end
+
+Route128_EventScript_152337:: @ 8152337
+ trainerbattle 0, 671, 0, Route128_Text_1C202C, Route128_Text_1C2051
+ msgbox Route128_Text_1C2060, 6
+ end
+
+Route128_EventScript_15234E:: @ 815234E
+ trainerbattle 0, 673, 0, Route128_Text_1C2090, Route128_Text_1C20FC
+ msgbox Route128_Text_1C210D, 6
+ end
+
diff --git a/data/maps/scripts/Route129.s b/data/maps/scripts/Route129.s
new file mode 100644
index 000000000..c6b955df8
--- /dev/null
+++ b/data/maps/scripts/Route129.s
@@ -0,0 +1,23 @@
+Route129_MapScripts:: @ 8152365
+ .byte 0
+
+Route129_EventScript_152366:: @ 8152366
+ trainerbattle 0, 378, 0, Route129_Text_1C2161, Route129_Text_1C2198
+ msgbox Route129_Text_1C21B4, 6
+ end
+
+Route129_EventScript_15237D:: @ 815237D
+ trainerbattle 0, 387, 0, Route129_Text_1C21ED, Route129_Text_1C222F
+ msgbox Route129_Text_1C2243, 6
+ end
+
+Route129_EventScript_152394:: @ 8152394
+ trainerbattle 0, 675, 0, Route129_Text_1C22C8, Route129_Text_1C22EC
+ msgbox Route129_Text_1C230F, 6
+ end
+
+Route129_EventScript_1523AB:: @ 81523AB
+ trainerbattle 0, 676, 0, Route129_Text_1C2349, Route129_Text_1C2378
+ msgbox Route129_Text_1C23A3, 6
+ end
+
diff --git a/data/maps/scripts/Route130.s b/data/maps/scripts/Route130.s
new file mode 100644
index 000000000..c61f7e3b1
--- /dev/null
+++ b/data/maps/scripts/Route130.s
@@ -0,0 +1,41 @@
+Route130_MapScripts:: @ 81523C2
+ map_script 3, Route130_MapScript1_1523C8
+ .byte 0
+
+Route130_MapScript1_1523C8:: @ 81523C8
+ specialval RESULT, 209
+ compare RESULT, 1
+ jumpeq Route130_EventScript_15240C
+ setflag 17
+ setflag 18
+ setflag 19
+ setflag 20
+ setflag 21
+ setflag 22
+ setflag 23
+ setflag 24
+ setflag 25
+ setflag 26
+ setflag 27
+ setflag 28
+ setflag 29
+ setflag 30
+ setflag 31
+ setflag 32
+ setmapfooter 264
+ end
+
+Route130_EventScript_15240C:: @ 815240C
+ setmapfooter 46
+ end
+
+Route130_EventScript_152410:: @ 8152410
+ trainerbattle 0, 165, 0, Route130_Text_1C2401, Route130_Text_1C245D
+ msgbox Route130_Text_1C2479, 6
+ end
+
+Route130_EventScript_152427:: @ 8152427
+ trainerbattle 0, 455, 0, Route130_Text_1C24DC, Route130_Text_1C2525
+ msgbox Route130_Text_1C256E, 6
+ end
+
diff --git a/data/maps/scripts/Route131.s b/data/maps/scripts/Route131.s
new file mode 100644
index 000000000..fb344f59b
--- /dev/null
+++ b/data/maps/scripts/Route131.s
@@ -0,0 +1,43 @@
+Route131_MapScripts:: @ 815243E
+ map_script 3, Route131_MapScript1_152444
+ .byte 0
+
+Route131_MapScript1_152444:: @ 8152444
+ checkflag 2052
+ callif 1, Route131_EventScript_15244E
+ end
+
+Route131_EventScript_15244E:: @ 815244E
+ setmapfooter 320
+ return
+
+Route131_EventScript_152452:: @ 8152452
+ trainerbattle 0, 166, 0, Route131_Text_1C25B3, Route131_Text_1C25F8
+ msgbox Route131_Text_1C262A, 6
+ end
+
+Route131_EventScript_152469:: @ 8152469
+ trainerbattle 0, 167, 0, Route131_Text_1C26B9, Route131_Text_1C271F
+ msgbox Route131_Text_1C2726, 6
+ end
+
+Route131_EventScript_152480:: @ 8152480
+ trainerbattle 0, 456, 0, Route131_Text_1C2774, Route131_Text_1C27A4
+ msgbox Route131_Text_1C27CF, 6
+ end
+
+Route131_EventScript_152497:: @ 8152497
+ trainerbattle 0, 457, 0, Route131_Text_1C284A, Route131_Text_1C2883
+ msgbox Route131_Text_1C2898, 6
+ end
+
+Route131_EventScript_1524AE:: @ 81524AE
+ trainerbattle 4, 686, 0, Route131_Text_1C28E2, Route131_Text_1C2918, Route131_Text_1C29B2
+ msgbox Route131_Text_1C2950, 6
+ end
+
+Route131_EventScript_1524C9:: @ 81524C9
+ trainerbattle 4, 686, 0, Route131_Text_1C29F3, Route131_Text_1C2A20, Route131_Text_1C2ACA
+ msgbox Route131_Text_1C2A5D, 6
+ end
+
diff --git a/data/maps/scripts/Route132.s b/data/maps/scripts/Route132.s
new file mode 100644
index 000000000..bdeaad51e
--- /dev/null
+++ b/data/maps/scripts/Route132.s
@@ -0,0 +1,23 @@
+Route132_MapScripts:: @ 81524E4
+ .byte 0
+
+Route132_EventScript_1524E5:: @ 81524E5
+ trainerbattle 0, 169, 0, Route132_Text_1C2AFB, Route132_Text_1C2B5B
+ msgbox Route132_Text_1C2B71, 6
+ end
+
+Route132_EventScript_1524FC:: @ 81524FC
+ trainerbattle 0, 458, 0, Route132_Text_1C2BB5, Route132_Text_1C2BEA
+ msgbox Route132_Text_1C2BFA, 6
+ end
+
+Route132_EventScript_152513:: @ 8152513
+ trainerbattle 0, 350, 0, Route132_Text_1C2C32, Route132_Text_1C2C60
+ msgbox Route132_Text_1C2C78, 6
+ end
+
+Route132_EventScript_15252A:: @ 815252A
+ trainerbattle 0, 181, 0, Route132_Text_1C2CD9, Route132_Text_1C2D1F
+ msgbox Route132_Text_1C2D3E, 6
+ end
+
diff --git a/data/maps/scripts/Route133.s b/data/maps/scripts/Route133.s
new file mode 100644
index 000000000..16d937782
--- /dev/null
+++ b/data/maps/scripts/Route133.s
@@ -0,0 +1,28 @@
+Route133_MapScripts:: @ 8152541
+ .byte 0
+
+Route133_EventScript_152542:: @ 8152542
+ trainerbattle 0, 170, 0, Route133_Text_1C2DA5, Route133_Text_1C2DF4
+ msgbox Route133_Text_1C2E09, 6
+ end
+
+Route133_EventScript_152559:: @ 8152559
+ trainerbattle 0, 460, 0, Route133_Text_1C2E61, Route133_Text_1C2EBD
+ msgbox Route133_Text_1C2ECD, 6
+ end
+
+Route133_EventScript_152570:: @ 8152570
+ trainerbattle 0, 461, 0, Route133_Text_1C2EF7, Route133_Text_1C2F19
+ msgbox Route133_Text_1C2F25, 6
+ end
+
+Route133_EventScript_152587:: @ 8152587
+ trainerbattle 0, 88, 0, Route133_Text_1C2F53, Route133_Text_1C2FA3
+ msgbox Route133_Text_1C2FC7, 6
+ end
+
+Route133_EventScript_15259E:: @ 815259E
+ trainerbattle 0, 414, 0, Route133_Text_1C302D, Route133_Text_1C305F
+ msgbox Route133_Text_1C307E, 6
+ end
+
diff --git a/data/maps/scripts/Route134.s b/data/maps/scripts/Route134.s
new file mode 100644
index 000000000..f1f738f88
--- /dev/null
+++ b/data/maps/scripts/Route134.s
@@ -0,0 +1,33 @@
+Route134_MapScripts:: @ 81525B5
+ map_script 5, Route134_MapScript1_1525BB
+ .byte 0
+
+Route134_MapScript1_1525BB:: @ 81525BB
+ warp4 Underwater_Route134, 255, 8, 6
+ end
+
+Route134_EventScript_1525C4:: @ 81525C4
+ trainerbattle 0, 172, 0, Route134_Text_1C30C6, Route134_Text_1C3110
+ msgbox Route134_Text_1C311A, 6
+ end
+
+Route134_EventScript_1525DB:: @ 81525DB
+ trainerbattle 0, 463, 0, Route134_Text_1C315E, Route134_Text_1C3198
+ msgbox Route134_Text_1C31A0, 6
+ end
+
+Route134_EventScript_1525F2:: @ 81525F2
+ trainerbattle 0, 413, 0, Route134_Text_1C31D7, Route134_Text_1C3213
+ msgbox Route134_Text_1C3229, 6
+ end
+
+Route134_EventScript_152609:: @ 8152609
+ trainerbattle 0, 397, 0, Route134_Text_1C3319, Route134_Text_1C335C
+ msgbox Route134_Text_1C336E, 6
+ end
+
+Route134_EventScript_152620:: @ 8152620
+ trainerbattle 0, 180, 0, Route134_Text_1C3262, Route134_Text_1C329E
+ msgbox Route134_Text_1C32D6, 6
+ end
+
diff --git a/data/maps/scripts/RustboroCity.s b/data/maps/scripts/RustboroCity.s
new file mode 100644
index 000000000..b7635286d
--- /dev/null
+++ b/data/maps/scripts/RustboroCity.s
@@ -0,0 +1,499 @@
+RustboroCity_MapScripts:: @ 814C372
+ map_script 3, RustboroCity_MapScript1_14C378
+ .byte 0
+
+RustboroCity_MapScript1_14C378:: @ 814C378
+ setflag 2073
+ call RustboroCity_EventScript_1A0196
+ call RustboroCity_EventScript_1A014E
+ end
+
+RustboroCity_EventScript_14C386:: @ 814C386
+ lock
+ faceplayer
+ checkflag 142
+ jumpeq RustboroCity_EventScript_14C39B
+ msgbox RustboroCity_Text_16689D, 4
+ release
+ end
+
+RustboroCity_EventScript_14C39B:: @ 814C39B
+ msgbox RustboroCity_Text_16690C, 4
+ release
+ end
+
+RustboroCity_EventScript_14C3A5:: @ 814C3A5
+ lock
+ faceplayer
+ msgbox RustboroCity_Text_166A67, 4
+ release
+ end
+
+RustboroCity_EventScript_14C3B1:: @ 814C3B1
+ msgbox RustboroCity_Text_166AE0, 2
+ end
+
+RustboroCity_EventScript_14C3BA:: @ 814C3BA
+ lock
+ faceplayer
+ checkflag 2055
+ jumpeq RustboroCity_EventScript_14C3CF
+ msgbox RustboroCity_Text_16696D, 4
+ release
+ end
+
+RustboroCity_EventScript_14C3CF:: @ 814C3CF
+ msgbox RustboroCity_Text_1669FE, 4
+ release
+ end
+
+RustboroCity_EventScript_14C3D9:: @ 814C3D9
+ lock
+ faceplayer
+ checkflag 188
+ jumpeq RustboroCity_EventScript_14C3EE
+ msgbox RustboroCity_Text_166B86, 4
+ release
+ end
+
+RustboroCity_EventScript_14C3EE:: @ 814C3EE
+ msgbox RustboroCity_Text_166BEF, 4
+ release
+ end
+
+RustboroCity_EventScript_14C3F8:: @ 814C3F8
+ msgbox RustboroCity_Text_166C98, 2
+ end
+
+RustboroCity_EventScript_14C401:: @ 814C401
+ msgbox RustboroCity_Text_166CFA, 3
+ end
+
+RustboroCity_EventScript_14C40A:: @ 814C40A
+ msgbox RustboroCity_Text_167374, 3
+ end
+
+RustboroCity_EventScript_14C413:: @ 814C413
+ msgbox RustboroCity_Text_1673FA, 3
+ end
+
+RustboroCity_EventScript_14C41C:: @ 814C41C
+ msgbox RustboroCity_Text_167439, 3
+ end
+
+ .incbin "baserom.gba", 0x14c425, 0x9
+
+RustboroCity_EventScript_14C42E:: @ 814C42E
+ msgbox RustboroCity_Text_1674DD, 3
+ end
+
+RustboroCity_EventScript_14C437:: @ 814C437
+ msgbox RustboroCity_Text_167525, 3
+ end
+
+RustboroCity_EventScript_14C440:: @ 814C440
+ msgbox RustboroCity_Text_167568, 3
+ end
+
+RustboroCity_EventScript_14C449:: @ 814C449
+ lock
+ faceplayer
+ msgbox RustboroCity_Text_166D59, 4
+ move 7, RustboroCity_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+RustboroCity_EventScript_14C45F:: @ 814C45F
+ lock
+ faceplayer
+ msgbox RustboroCity_Text_166DB0, 4
+ move 8, RustboroCity_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+RustboroCity_EventScript_14C475:: @ 814C475
+ lock
+ faceplayer
+ msgbox RustboroCity_Text_166DEE, 4
+ release
+ end
+
+RustboroCity_EventScript_14C481:: @ 814C481
+ lockall
+ movespriteperm 9, 14, 21
+ spritebehave 9, 10
+ setvar 0x8004, 0
+ jump RustboroCity_EventScript_14C4F4
+ end
+
+RustboroCity_EventScript_14C498:: @ 814C498
+ lockall
+ movespriteperm 9, 14, 21
+ spritebehave 9, 10
+ setvar 0x8004, 1
+ jump RustboroCity_EventScript_14C4F4
+ end
+
+RustboroCity_EventScript_14C4AF:: @ 814C4AF
+ lockall
+ movespriteperm 9, 14, 21
+ spritebehave 9, 10
+ setvar 0x8004, 2
+ jump RustboroCity_EventScript_14C4F4
+ end
+
+RustboroCity_EventScript_14C4C6:: @ 814C4C6
+ lockall
+ movespriteperm 9, 14, 21
+ spritebehave 9, 10
+ setvar 0x8004, 3
+ jump RustboroCity_EventScript_14C4F4
+ end
+
+RustboroCity_EventScript_14C4DD:: @ 814C4DD
+ lockall
+ movespriteperm 9, 14, 21
+ spritebehave 9, 10
+ setvar 0x8004, 4
+ jump RustboroCity_EventScript_14C4F4
+ end
+
+RustboroCity_EventScript_14C4F4:: @ 814C4F4
+ msgbox RustboroCity_Text_166E65, 4
+ closebutton
+ reappear 10
+ reappear 9
+ move 10, RustboroCity_Movement_14C5C2
+ waitmove 0
+ disappear 10
+ move 9, RustboroCity_Movement_14C5D3
+ waitmove 0
+ msgbox RustboroCity_Text_166E7E, 4
+ closebutton
+ move 9, RustboroCity_Movement_14C5DB
+ waitmove 0
+ disappear 9
+ movespriteperm 9, 30, 10
+ clearflag 732
+ setflag 142
+ setvar 0x405a, 2
+ setvar 0x409a, 2
+ setvar 0x406f, 1
+ clearflag 891
+ clearflag 880
+ clearflag 878
+ setflag 739
+ setflag 881
+ releaseall
+ end
+
+ .incbin "baserom.gba", 0x14c55d, 0x65
+
+RustboroCity_Movement_14C5C2:: @ 814C5C2
+ step_30
+ step_30
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_16
+ step_end
+
+RustboroCity_Movement_14C5D3:: @ 814C5D3
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_26
+ step_end
+
+RustboroCity_Movement_14C5DB:: @ 814C5DB
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_end
+
+ .incbin "baserom.gba", 0x14c5e3, 0x1c
+
+RustboroCity_EventScript_14C5FF:: @ 814C5FF
+ lock
+ faceplayer
+ checkflag 143
+ jumpeq RustboroCity_EventScript_14C614
+ msgbox RustboroCity_Text_166F6B, 4
+ release
+ end
+
+RustboroCity_EventScript_14C614:: @ 814C614
+ checksound
+ setvar 0x4001, 4
+ jump RustboroCity_EventScript_14C77D
+ end
+
+RustboroCity_EventScript_14C620:: @ 814C620
+ lockall
+ setvar 0x4001, 0
+ jump RustboroCity_EventScript_14C650
+ end
+
+RustboroCity_EventScript_14C62C:: @ 814C62C
+ lockall
+ setvar 0x4001, 1
+ jump RustboroCity_EventScript_14C650
+ end
+
+RustboroCity_EventScript_14C638:: @ 814C638
+ lockall
+ setvar 0x4001, 2
+ jump RustboroCity_EventScript_14C650
+ end
+
+RustboroCity_EventScript_14C644:: @ 814C644
+ lockall
+ setvar 0x4001, 3
+ jump RustboroCity_EventScript_14C650
+ end
+
+RustboroCity_EventScript_14C650:: @ 814C650
+ compare 0x4001, 0
+ callif 1, RustboroCity_EventScript_14C691
+ compare 0x4001, 1
+ callif 1, RustboroCity_EventScript_14C6BD
+ compare 0x4001, 2
+ callif 1, RustboroCity_EventScript_14C6E9
+ compare 0x4001, 3
+ callif 1, RustboroCity_EventScript_14C715
+ setflag 159
+ setvar 0x405a, 3
+ moveoffscreen 9
+ msgbox RustboroCity_Text_166EA5, 4
+ releaseall
+ end
+
+RustboroCity_EventScript_14C691:: @ 814C691
+ move 9, RustboroCity_Movement_1A0841
+ waitmove 0
+ playsfx 21
+ move 9, RustboroCity_Movement_1A0833
+ waitmove 0
+ move 9, RustboroCity_Movement_1A0835
+ waitmove 0
+ move 255, RustboroCity_Movement_1A0845
+ waitmove 0
+ return
+
+RustboroCity_EventScript_14C6BD:: @ 814C6BD
+ move 9, RustboroCity_Movement_1A083F
+ waitmove 0
+ playsfx 21
+ move 9, RustboroCity_Movement_1A0833
+ waitmove 0
+ move 9, RustboroCity_Movement_1A0835
+ waitmove 0
+ move 255, RustboroCity_Movement_1A0843
+ waitmove 0
+ return
+
+RustboroCity_EventScript_14C6E9:: @ 814C6E9
+ move 9, RustboroCity_Movement_1A0845
+ waitmove 0
+ playsfx 21
+ move 9, RustboroCity_Movement_1A0833
+ waitmove 0
+ move 9, RustboroCity_Movement_1A0835
+ waitmove 0
+ move 255, RustboroCity_Movement_1A0841
+ waitmove 0
+ return
+
+RustboroCity_EventScript_14C715:: @ 814C715
+ move 9, RustboroCity_Movement_1A0845
+ waitmove 0
+ playsfx 21
+ move 9, RustboroCity_Movement_1A0833
+ waitmove 0
+ move 9, RustboroCity_Movement_1A0835
+ waitmove 0
+ move 9, RustboroCity_Movement_14C74B
+ waitmove 0
+ move 255, RustboroCity_Movement_1A0841
+ waitmove 0
+ return
+
+RustboroCity_Movement_14C74B:: @ 814C74B
+ step_down
+ step_end
+
+RustboroCity_EventScript_14C74D:: @ 814C74D
+ lockall
+ setvar 0x4001, 0
+ jump RustboroCity_EventScript_14C77D
+ end
+
+RustboroCity_EventScript_14C759:: @ 814C759
+ lockall
+ setvar 0x4001, 1
+ jump RustboroCity_EventScript_14C77D
+ end
+
+RustboroCity_EventScript_14C765:: @ 814C765
+ lockall
+ setvar 0x4001, 2
+ jump RustboroCity_EventScript_14C77D
+ end
+
+RustboroCity_EventScript_14C771:: @ 814C771
+ lockall
+ setvar 0x4001, 3
+ jump RustboroCity_EventScript_14C77D
+ end
+
+RustboroCity_EventScript_14C77D:: @ 814C77D
+ compare 0x4001, 0
+ callif 1, RustboroCity_EventScript_14C7FE
+ compare 0x4001, 1
+ callif 1, RustboroCity_EventScript_14C82A
+ compare 0x4001, 2
+ callif 1, RustboroCity_EventScript_14C856
+ compare 0x4001, 3
+ callif 1, RustboroCity_EventScript_14C882
+ compare 0x4001, 4
+ callif 1, RustboroCity_EventScript_14C8B8
+ msgbox RustboroCity_Text_166FB4, 4
+ giveitem ITEM_GREAT_BALL
+ compare RESULT, 0
+ callif 1, RustboroCity_EventScript_14C7F5
+ msgbox RustboroCity_Text_16707F, 4
+ closebutton
+ setflag 144
+ setflag 732
+ setvar 0x405a, 5
+ pause 30
+ warp RustboroCity_DevonCorp_3F, 255, 2, 2
+ waitstate
+ releaseall
+ end
+
+RustboroCity_EventScript_14C7F5:: @ 814C7F5
+ msgbox RustboroCity_Text_16704C, 4
+ return
+
+RustboroCity_EventScript_14C7FE:: @ 814C7FE
+ move 9, RustboroCity_Movement_1A0841
+ waitmove 0
+ playsfx 21
+ move 9, RustboroCity_Movement_1A0833
+ waitmove 0
+ move 9, RustboroCity_Movement_1A0835
+ waitmove 0
+ move 255, RustboroCity_Movement_1A0845
+ waitmove 0
+ return
+
+RustboroCity_EventScript_14C82A:: @ 814C82A
+ move 9, RustboroCity_Movement_1A0843
+ waitmove 0
+ playsfx 21
+ move 9, RustboroCity_Movement_1A0833
+ waitmove 0
+ move 9, RustboroCity_Movement_1A0835
+ waitmove 0
+ move 255, RustboroCity_Movement_1A083F
+ waitmove 0
+ return
+
+RustboroCity_EventScript_14C856:: @ 814C856
+ move 9, RustboroCity_Movement_1A0845
+ waitmove 0
+ playsfx 21
+ move 9, RustboroCity_Movement_1A0833
+ waitmove 0
+ move 9, RustboroCity_Movement_1A0835
+ waitmove 0
+ move 255, RustboroCity_Movement_1A0841
+ waitmove 0
+ return
+
+RustboroCity_EventScript_14C882:: @ 814C882
+ move 9, RustboroCity_Movement_1A0845
+ waitmove 0
+ playsfx 21
+ move 9, RustboroCity_Movement_1A0833
+ waitmove 0
+ move 9, RustboroCity_Movement_1A0835
+ waitmove 0
+ move 9, RustboroCity_Movement_14C74B
+ waitmove 0
+ move 255, RustboroCity_Movement_1A0841
+ waitmove 0
+ return
+
+RustboroCity_EventScript_14C8B8:: @ 814C8B8
+ move 9, RustboroCity_Movement_1A083F
+ waitmove 0
+ playsfx 21
+ move 9, RustboroCity_Movement_1A0833
+ waitmove 0
+ move 9, RustboroCity_Movement_1A0835
+ waitmove 0
+ return
+
+RustboroCity_EventScript_14C8DA:: @ 814C8DA
+ lock
+ faceplayer
+ checkflag 288
+ jumpeq RustboroCity_EventScript_14C917
+ checkgender
+ compare RESULT, 0
+ jumpeq RustboroCity_EventScript_14C8FD
+ compare RESULT, 1
+ jumpeq RustboroCity_EventScript_14C90A
+ end
+
+RustboroCity_EventScript_14C8FD:: @ 814C8FD
+ setflag 288
+ msgbox RustboroCity_Text_1670A7, 4
+ release
+ end
+
+RustboroCity_EventScript_14C90A:: @ 814C90A
+ setflag 288
+ msgbox RustboroCity_Text_167213, 4
+ release
+ end
+
+RustboroCity_EventScript_14C917:: @ 814C917
+ checkgender
+ compare RESULT, 0
+ jumpeq RustboroCity_EventScript_14C92F
+ compare RESULT, 1
+ jumpeq RustboroCity_EventScript_14C939
+ end
+
+RustboroCity_EventScript_14C92F:: @ 814C92F
+ msgbox RustboroCity_Text_16713C, 4
+ release
+ end
+
+RustboroCity_EventScript_14C939:: @ 814C939
+ msgbox RustboroCity_Text_1672B8, 4
+ release
+ end
+
diff --git a/data/maps/scripts/RustboroCity_CuttersHouse.s b/data/maps/scripts/RustboroCity_CuttersHouse.s
new file mode 100644
index 000000000..f75cc842f
--- /dev/null
+++ b/data/maps/scripts/RustboroCity_CuttersHouse.s
@@ -0,0 +1,24 @@
+RustboroCity_CuttersHouse_MapScripts:: @ 8157D26
+ .byte 0
+
+RustboroCity_CuttersHouse_EventScript_157D27:: @ 8157D27
+ lock
+ faceplayer
+ checkflag 137
+ jumpeq RustboroCity_CuttersHouse_EventScript_157D53
+ msgbox RustboroCity_CuttersHouse_Text_18509C, 4
+ giveitem ITEM_HM01
+ setflag 137
+ msgbox RustboroCity_CuttersHouse_Text_1851C9, 4
+ release
+ end
+
+RustboroCity_CuttersHouse_EventScript_157D53:: @ 8157D53
+ msgbox RustboroCity_CuttersHouse_Text_1851C9, 4
+ release
+ end
+
+RustboroCity_CuttersHouse_EventScript_157D5D:: @ 8157D5D
+ msgbox RustboroCity_CuttersHouse_Text_1852B3, 2
+ end
+
diff --git a/data/maps/scripts/RustboroCity_DevonCorp_1F.s b/data/maps/scripts/RustboroCity_DevonCorp_1F.s
new file mode 100644
index 000000000..3c55fb9bf
--- /dev/null
+++ b/data/maps/scripts/RustboroCity_DevonCorp_1F.s
@@ -0,0 +1,81 @@
+RustboroCity_DevonCorp_1F_MapScripts:: @ 8157406
+ map_script 3, RustboroCity_DevonCorp_1F_MapScript1_15740C
+ .byte 0
+
+RustboroCity_DevonCorp_1F_MapScript1_15740C:: @ 815740C
+ checkflag 144
+ callif 0, RustboroCity_DevonCorp_1F_EventScript_157416
+ end
+
+RustboroCity_DevonCorp_1F_EventScript_157416:: @ 8157416
+ movespriteperm 2, 14, 2
+ spritebehave 2, 8
+ return
+
+RustboroCity_DevonCorp_1F_EventScript_157422:: @ 8157422
+ lock
+ faceplayer
+ checkflag 144
+ jumpeq RustboroCity_DevonCorp_1F_EventScript_15744A
+ checkflag 142
+ jumpeq RustboroCity_DevonCorp_1F_EventScript_157440
+ msgbox RustboroCity_DevonCorp_1F_Text_1829A4, 4
+ release
+ end
+
+RustboroCity_DevonCorp_1F_EventScript_157440:: @ 8157440
+ msgbox RustboroCity_DevonCorp_1F_Text_182A19, 4
+ release
+ end
+
+RustboroCity_DevonCorp_1F_EventScript_15744A:: @ 815744A
+ msgbox RustboroCity_DevonCorp_1F_Text_182AB3, 4
+ release
+ end
+
+RustboroCity_DevonCorp_1F_EventScript_157454:: @ 8157454
+ lock
+ faceplayer
+ checkflag 144
+ jumpeq RustboroCity_DevonCorp_1F_EventScript_15747B
+ checkflag 143
+ jumpeq RustboroCity_DevonCorp_1F_EventScript_157485
+ checkflag 142
+ jumpeq RustboroCity_DevonCorp_1F_EventScript_157485
+ msgbox RustboroCity_DevonCorp_1F_Text_182AF0, 4
+ release
+ end
+
+RustboroCity_DevonCorp_1F_EventScript_15747B:: @ 815747B
+ msgbox RustboroCity_DevonCorp_1F_Text_182B5A, 4
+ release
+ end
+
+RustboroCity_DevonCorp_1F_EventScript_157485:: @ 8157485
+ msgbox RustboroCity_DevonCorp_1F_Text_182B2D, 4
+ release
+ end
+
+RustboroCity_DevonCorp_1F_EventScript_15748F:: @ 815748F
+ lock
+ faceplayer
+ checkflag 144
+ jumpeq RustboroCity_DevonCorp_1F_EventScript_1574B6
+ checkflag 143
+ jumpeq RustboroCity_DevonCorp_1F_EventScript_1574C0
+ checkflag 142
+ jumpeq RustboroCity_DevonCorp_1F_EventScript_1574C0
+ msgbox RustboroCity_DevonCorp_1F_Text_1828EE, 4
+ release
+ end
+
+RustboroCity_DevonCorp_1F_EventScript_1574B6:: @ 81574B6
+ msgbox RustboroCity_DevonCorp_1F_Text_1828EE, 4
+ release
+ end
+
+RustboroCity_DevonCorp_1F_EventScript_1574C0:: @ 81574C0
+ msgbox RustboroCity_DevonCorp_1F_Text_18295E, 4
+ release
+ end
+
diff --git a/data/maps/scripts/RustboroCity_DevonCorp_2F.s b/data/maps/scripts/RustboroCity_DevonCorp_2F.s
new file mode 100644
index 000000000..cd05952fc
--- /dev/null
+++ b/data/maps/scripts/RustboroCity_DevonCorp_2F.s
@@ -0,0 +1,178 @@
+RustboroCity_DevonCorp_2F_MapScripts:: @ 81574CA
+ map_script 3, RustboroCity_DevonCorp_2F_MapScript1_1574D0
+ .byte 0
+
+RustboroCity_DevonCorp_2F_MapScript1_1574D0:: @ 81574D0
+ compare 0x40c4, 1
+ callif 1, RustboroCity_DevonCorp_2F_EventScript_1574DC
+ end
+
+RustboroCity_DevonCorp_2F_EventScript_1574DC:: @ 81574DC
+ setvar 0x40c4, 2
+ return
+
+RustboroCity_DevonCorp_2F_EventScript_1574E2:: @ 81574E2
+ lock
+ faceplayer
+ compare 0x40c4, 1
+ callif 1, RustboroCity_DevonCorp_2F_EventScript_1574DC
+ msgbox RustboroCity_DevonCorp_2F_Text_182B81, 4
+ release
+ end
+
+RustboroCity_DevonCorp_2F_EventScript_1574F9:: @ 81574F9
+ lock
+ faceplayer
+ compare 0x40c4, 1
+ callif 1, RustboroCity_DevonCorp_2F_EventScript_1574DC
+ checkflag 287
+ jumpeq RustboroCity_DevonCorp_2F_EventScript_157519
+ msgbox RustboroCity_DevonCorp_2F_Text_182BD8, 4
+ release
+ end
+
+RustboroCity_DevonCorp_2F_EventScript_157519:: @ 8157519
+ msgbox RustboroCity_DevonCorp_2F_Text_182C25, 4
+ release
+ end
+
+RustboroCity_DevonCorp_2F_EventScript_157523:: @ 8157523
+ lock
+ faceplayer
+ compare 0x40c4, 1
+ callif 1, RustboroCity_DevonCorp_2F_EventScript_1574DC
+ checkflag 188
+ jumpeq RustboroCity_DevonCorp_2F_EventScript_157543
+ msgbox RustboroCity_DevonCorp_2F_Text_182D2A, 4
+ release
+ end
+
+RustboroCity_DevonCorp_2F_EventScript_157543:: @ 8157543
+ msgbox RustboroCity_DevonCorp_2F_Text_182D7E, 4
+ release
+ end
+
+RustboroCity_DevonCorp_2F_EventScript_15754D:: @ 815754D
+ lock
+ faceplayer
+ compare 0x40c4, 1
+ callif 1, RustboroCity_DevonCorp_2F_EventScript_1574DC
+ msgbox RustboroCity_DevonCorp_2F_Text_182E6B, 4
+ release
+ end
+
+RustboroCity_DevonCorp_2F_EventScript_157564:: @ 8157564
+ lock
+ faceplayer
+ compare 0x40c4, 2
+ jumpeq RustboroCity_DevonCorp_2F_EventScript_15764A
+ compare 0x40c4, 1
+ jumpeq RustboroCity_DevonCorp_2F_EventScript_157640
+ msgbox RustboroCity_DevonCorp_2F_Text_182ED5, 4
+ checkitem ITEM_ROOT_FOSSIL, 1
+ compare RESULT, 1
+ jumpeq RustboroCity_DevonCorp_2F_EventScript_1575A6
+ checkitem ITEM_CLAW_FOSSIL, 1
+ compare RESULT, 1
+ jumpeq RustboroCity_DevonCorp_2F_EventScript_1575EE
+ release
+ end
+
+RustboroCity_DevonCorp_2F_EventScript_1575A6:: @ 81575A6
+ closebutton
+ playsfx 21
+ move 5, RustboroCity_DevonCorp_2F_Movement_1A0833
+ waitmove 0
+ move 5, RustboroCity_DevonCorp_2F_Movement_1A0835
+ waitmove 0
+ msgbox RustboroCity_DevonCorp_2F_Text_182F35, 5
+ compare RESULT, 0
+ jumpeq RustboroCity_DevonCorp_2F_EventScript_157636
+ bufferitem 0, ITEM_ROOT_FOSSIL
+ msgbox RustboroCity_DevonCorp_2F_Text_183023, 4
+ removeitem ITEM_ROOT_FOSSIL, 1
+ setvar 0x40c4, 1
+ setvar 0x40c5, 1
+ release
+ end
+
+RustboroCity_DevonCorp_2F_EventScript_1575EE:: @ 81575EE
+ closebutton
+ playsfx 21
+ move 5, RustboroCity_DevonCorp_2F_Movement_1A0833
+ waitmove 0
+ move 5, RustboroCity_DevonCorp_2F_Movement_1A0835
+ waitmove 0
+ msgbox RustboroCity_DevonCorp_2F_Text_182F35, 5
+ compare RESULT, 0
+ jumpeq RustboroCity_DevonCorp_2F_EventScript_157636
+ bufferitem 0, ITEM_CLAW_FOSSIL
+ msgbox RustboroCity_DevonCorp_2F_Text_183023, 4
+ removeitem ITEM_CLAW_FOSSIL, 1
+ setvar 0x40c4, 1
+ setvar 0x40c5, 2
+ release
+ end
+
+RustboroCity_DevonCorp_2F_EventScript_157636:: @ 8157636
+ msgbox RustboroCity_DevonCorp_2F_Text_182FD7, 4
+ release
+ end
+
+RustboroCity_DevonCorp_2F_EventScript_157640:: @ 8157640
+ msgbox RustboroCity_DevonCorp_2F_Text_183072, 4
+ release
+ end
+
+RustboroCity_DevonCorp_2F_EventScript_15764A:: @ 815764A
+ compare 0x40c5, 1
+ jumpeq RustboroCity_DevonCorp_2F_EventScript_157661
+ compare 0x40c5, 2
+ jumpeq RustboroCity_DevonCorp_2F_EventScript_1576B4
+ end
+
+RustboroCity_DevonCorp_2F_EventScript_157661:: @ 8157661
+ bufferpoke 1, SPECIES_LILEEP
+ msgbox RustboroCity_DevonCorp_2F_Text_183124, 4
+ countpokemon
+ compare RESULT, 6
+ jumpeq RustboroCity_DevonCorp_2F_EventScript_157707
+ copyvar 0x8004, RESULT
+ setvar 0x40c4, 0
+ setflag 267
+ fanfare 370
+ message RustboroCity_DevonCorp_2F_Text_18319E
+ waitfanfare
+ waittext
+ givepokemon SPECIES_LILEEP, 20, ITEM_NONE, 0x0, 0x0, 0
+ msgbox RustboroCity_DevonCorp_2F_Text_1A1102, 5
+ compare RESULT, 1
+ callif 1, RustboroCity_DevonCorp_2F_EventScript_1A0678
+ release
+ end
+
+RustboroCity_DevonCorp_2F_EventScript_1576B4:: @ 81576B4
+ bufferpoke 1, SPECIES_ANORITH
+ msgbox RustboroCity_DevonCorp_2F_Text_183124, 4
+ countpokemon
+ compare RESULT, 6
+ jumpeq RustboroCity_DevonCorp_2F_EventScript_157707
+ copyvar 0x8004, RESULT
+ setvar 0x40c4, 0
+ setflag 267
+ fanfare 370
+ message RustboroCity_DevonCorp_2F_Text_18319E
+ waitfanfare
+ waittext
+ givepokemon SPECIES_ANORITH, 20, ITEM_NONE, 0x0, 0x0, 0
+ msgbox RustboroCity_DevonCorp_2F_Text_1A1102, 5
+ compare RESULT, 1
+ callif 1, RustboroCity_DevonCorp_2F_EventScript_1A0678
+ release
+ end
+
+RustboroCity_DevonCorp_2F_EventScript_157707:: @ 8157707
+ msgbox RustboroCity_DevonCorp_2F_Text_1831C8, 4
+ release
+ end
+
diff --git a/data/maps/scripts/RustboroCity_DevonCorp_3F.s b/data/maps/scripts/RustboroCity_DevonCorp_3F.s
new file mode 100644
index 000000000..99b5e782f
--- /dev/null
+++ b/data/maps/scripts/RustboroCity_DevonCorp_3F.s
@@ -0,0 +1,193 @@
+RustboroCity_DevonCorp_3F_MapScripts:: @ 8157711
+ map_script 3, RustboroCity_DevonCorp_3F_MapScript1_157721
+ map_script 4, RustboroCity_DevonCorp_3F_MapScript2_157739
+ map_script 2, RustboroCity_DevonCorp_3F_MapScript2_157748
+ .byte 0
+
+RustboroCity_DevonCorp_3F_MapScript1_157721:: @ 8157721
+ compare 0x408f, 0
+ callif 1, RustboroCity_DevonCorp_3F_EventScript_15772D
+ end
+
+RustboroCity_DevonCorp_3F_EventScript_15772D:: @ 815772D
+ movespriteperm 2, 3, 2
+ spritebehave 2, 9
+ return
+
+RustboroCity_DevonCorp_3F_MapScript2_157739:: @ 8157739
+ map_script_2 0x408f, 0, RustboroCity_DevonCorp_3F_EventScript_157743
+ .2byte 0
+
+RustboroCity_DevonCorp_3F_EventScript_157743:: @ 8157743
+ spriteface 255, 4
+ end
+
+RustboroCity_DevonCorp_3F_MapScript2_157748:: @ 8157748
+ map_script_2 0x408f, 0, RustboroCity_DevonCorp_3F_EventScript_157752
+ .2byte 0
+
+RustboroCity_DevonCorp_3F_EventScript_157752:: @ 8157752
+ lockall
+ msgbox RustboroCity_DevonCorp_3F_Text_18374C, 4
+ closebutton
+ move 2, RustboroCity_DevonCorp_3F_Movement_157815
+ waitmove 0
+ pause 80
+ move 2, RustboroCity_DevonCorp_3F_Movement_15781E
+ waitmove 0
+ msgbox RustboroCity_DevonCorp_3F_Text_183903, 4
+ closebutton
+ playmusic 420, 0
+ move 2, RustboroCity_DevonCorp_3F_Movement_157803
+ move 255, RustboroCity_DevonCorp_3F_Movement_157827
+ waitmove 0
+ msgbox RustboroCity_DevonCorp_3F_Text_18394A, 4
+ closebutton
+ fadedefault
+ move 2, RustboroCity_DevonCorp_3F_Movement_157812
+ move 255, RustboroCity_DevonCorp_3F_Movement_157835
+ waitmove 0
+ msgbox RustboroCity_DevonCorp_3F_Text_18320B, 4
+ giveitem ITEM_LETTER
+ msgbox RustboroCity_DevonCorp_3F_Text_18337E, 4
+ fanfare 370
+ message RustboroCity_DevonCorp_3F_Text_183422
+ waitfanfare
+ waittext
+ setflag 2050
+ setflag 188
+ msgbox RustboroCity_DevonCorp_3F_Text_183439, 4
+ setflag 894
+ clearflag 807
+ clearflag 983
+ clearflag 739
+ clearflag 881
+ setvar 0x4096, 1
+ clearflag 814
+ setvar 0x408f, 1
+ releaseall
+ end
+
+ .incbin "baserom.gba", 0x1577fe, 0x5
+
+RustboroCity_DevonCorp_3F_Movement_157803:: @ 8157803
+ step_right
+ step_right
+ step_right
+ step_down
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_27
+ step_end
+
+RustboroCity_DevonCorp_3F_Movement_157812:: @ 8157812
+ step_14
+ step_25
+ step_end
+
+RustboroCity_DevonCorp_3F_Movement_157815:: @ 8157815
+ step_right
+ step_right
+ step_right
+ step_down
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+RustboroCity_DevonCorp_3F_Movement_15781E:: @ 815781E
+ step_left
+ step_left
+ step_left
+ step_left
+ step_up
+ step_left
+ step_left
+ step_left
+ step_end
+
+RustboroCity_DevonCorp_3F_Movement_157827:: @ 8157827
+ step_right
+ step_right
+ step_right
+ step_right
+ step_down
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+RustboroCity_DevonCorp_3F_Movement_157835:: @ 8157835
+ step_14
+ step_14
+ step_down
+ step_down
+ step_28
+ step_end
+
+RustboroCity_DevonCorp_3F_EventScript_15783B:: @ 815783B
+ lock
+ faceplayer
+ checkflag 272
+ jumpeq RustboroCity_DevonCorp_3F_EventScript_15789B
+ checkflag 189
+ jumpeq RustboroCity_DevonCorp_3F_EventScript_157864
+ msgbox RustboroCity_DevonCorp_3F_Text_18351E, 4
+ closebutton
+ move LAST_TALKED, RustboroCity_DevonCorp_3F_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+RustboroCity_DevonCorp_3F_EventScript_157864:: @ 8157864
+ msgbox RustboroCity_DevonCorp_3F_Text_18353E, 4
+ giveitem ITEM_EXP_SHARE
+ compare RESULT, 0
+ jumpeq RustboroCity_DevonCorp_3F_EventScript_1A029B
+ setflag 272
+ msgbox RustboroCity_DevonCorp_3F_Text_1835B3, 4
+ closebutton
+ move LAST_TALKED, RustboroCity_DevonCorp_3F_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+RustboroCity_DevonCorp_3F_EventScript_15789B:: @ 815789B
+ msgbox RustboroCity_DevonCorp_3F_Text_18368D, 4
+ closebutton
+ move LAST_TALKED, RustboroCity_DevonCorp_3F_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+RustboroCity_DevonCorp_3F_EventScript_1578B0:: @ 81578B0
+ lock
+ faceplayer
+ checkflag 256
+ jumpeq RustboroCity_DevonCorp_3F_EventScript_1578C5
+ msgbox RustboroCity_DevonCorp_3F_Text_18395C, 4
+ release
+ end
+
+RustboroCity_DevonCorp_3F_EventScript_1578C5:: @ 81578C5
+ msgbox RustboroCity_DevonCorp_3F_Text_1839A3, 4
+ release
+ end
+
+RustboroCity_DevonCorp_3F_EventScript_1578CF:: @ 81578CF
+ msgbox RustboroCity_DevonCorp_3F_Text_183A04, 3
+ end
+
diff --git a/data/maps/scripts/RustboroCity_Flat1_1F.s b/data/maps/scripts/RustboroCity_Flat1_1F.s
new file mode 100644
index 000000000..d84d2ba4f
--- /dev/null
+++ b/data/maps/scripts/RustboroCity_Flat1_1F.s
@@ -0,0 +1,11 @@
+RustboroCity_Flat1_1F_MapScripts:: @ 8157C5F
+ .byte 0
+
+RustboroCity_Flat1_1F_EventScript_157C60:: @ 8157C60
+ msgbox RustboroCity_Flat1_1F_Text_184DB4, 2
+ end
+
+RustboroCity_Flat1_1F_EventScript_157C69:: @ 8157C69
+ msgbox RustboroCity_Flat1_1F_Text_184DE9, 2
+ end
+
diff --git a/data/maps/scripts/RustboroCity_Flat1_2F.s b/data/maps/scripts/RustboroCity_Flat1_2F.s
new file mode 100644
index 000000000..a682f160a
--- /dev/null
+++ b/data/maps/scripts/RustboroCity_Flat1_2F.s
@@ -0,0 +1,7 @@
+RustboroCity_Flat1_2F_MapScripts:: @ 8157C72
+ .byte 0
+
+RustboroCity_Flat1_2F_EventScript_157C73:: @ 8157C73
+ msgbox RustboroCity_Flat1_2F_Text_184E0D, 2
+ end
+
diff --git a/data/maps/scripts/RustboroCity_Flat2_1F.s b/data/maps/scripts/RustboroCity_Flat2_1F.s
new file mode 100644
index 000000000..088a6b16f
--- /dev/null
+++ b/data/maps/scripts/RustboroCity_Flat2_1F.s
@@ -0,0 +1,17 @@
+RustboroCity_Flat2_1F_MapScripts:: @ 8157D79
+ .byte 0
+
+RustboroCity_Flat2_1F_EventScript_157D7A:: @ 8157D7A
+ msgbox RustboroCity_Flat2_1F_Text_1853DD, 2
+ end
+
+RustboroCity_Flat2_1F_EventScript_157D83:: @ 8157D83
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_SKITTY, 0
+ msgbox RustboroCity_Flat2_1F_Text_185410, 4
+ waitpokecry
+ release
+ end
+
diff --git a/data/maps/scripts/RustboroCity_Flat2_2F.s b/data/maps/scripts/RustboroCity_Flat2_2F.s
new file mode 100644
index 000000000..bd8b0c9b7
--- /dev/null
+++ b/data/maps/scripts/RustboroCity_Flat2_2F.s
@@ -0,0 +1,25 @@
+RustboroCity_Flat2_2F_MapScripts:: @ 8157D96
+ .byte 0
+
+RustboroCity_Flat2_2F_EventScript_157D97:: @ 8157D97
+ msgbox RustboroCity_Flat2_2F_Text_185421, 2
+ end
+
+RustboroCity_Flat2_2F_EventScript_157DA0:: @ 8157DA0
+ lock
+ faceplayer
+ checkflag 213
+ jumpeq RustboroCity_Flat2_2F_EventScript_157DCF
+ msgbox RustboroCity_Flat2_2F_Text_185461, 4
+ giveitem ITEM_PREMIER_BALL
+ compare RESULT, 0
+ jumpeq RustboroCity_Flat2_2F_EventScript_1A029B
+ setflag 213
+ release
+ end
+
+RustboroCity_Flat2_2F_EventScript_157DCF:: @ 8157DCF
+ msgbox RustboroCity_Flat2_2F_Text_1854C4, 4
+ release
+ end
+
diff --git a/data/maps/scripts/RustboroCity_Flat2_3F.s b/data/maps/scripts/RustboroCity_Flat2_3F.s
new file mode 100644
index 000000000..919609205
--- /dev/null
+++ b/data/maps/scripts/RustboroCity_Flat2_3F.s
@@ -0,0 +1,11 @@
+RustboroCity_Flat2_3F_MapScripts:: @ 8157DD9
+ .byte 0
+
+RustboroCity_Flat2_3F_EventScript_157DDA:: @ 8157DDA
+ msgbox RustboroCity_Flat2_3F_Text_18551D, 2
+ end
+
+RustboroCity_Flat2_3F_EventScript_157DE3:: @ 8157DE3
+ msgbox RustboroCity_Flat2_3F_Text_18554D, 2
+ end
+
diff --git a/data/maps/scripts/RustboroCity_Gym.s b/data/maps/scripts/RustboroCity_Gym.s
new file mode 100644
index 000000000..0bf68a616
--- /dev/null
+++ b/data/maps/scripts/RustboroCity_Gym.s
@@ -0,0 +1,84 @@
+RustboroCity_Gym_MapScripts:: @ 81578D8
+ .byte 0
+
+RustboroCity_Gym_EventScript_1578D9:: @ 81578D9
+ trainerbattle 1, 265, 0, RustboroCity_Gym_Text_183EE5, RustboroCity_Gym_Text_183FC4, RustboroCity_Gym_EventScript_1578FE
+ checkflag 165
+ jumpif 0, RustboroCity_Gym_EventScript_15793C
+ msgbox RustboroCity_Gym_Text_184252, 4
+ release
+ end
+
+RustboroCity_Gym_EventScript_1578FE:: @ 81578FE
+ message RustboroCity_Gym_Text_1840AB
+ waittext
+ call RustboroCity_Gym_EventScript_1A02C5
+ msgbox RustboroCity_Gym_Text_1840D5, 4
+ setflag 1201
+ setflag 2055
+ setvar 0x405a, 1
+ addvar 0x4085, 1
+ setvar 0x8008, 1
+ call RustboroCity_Gym_EventScript_1A01C0
+ compare 0x4085, 6
+ callif 1, RustboroCity_Gym_EventScript_1A00FB
+ jump RustboroCity_Gym_EventScript_15793C
+ end
+
+RustboroCity_Gym_EventScript_15793C:: @ 815793C
+ giveitem ITEM_TM39
+ compare RESULT, 0
+ jumpeq RustboroCity_Gym_EventScript_1A029B
+ setflag 165
+ msgbox RustboroCity_Gym_Text_184170, 4
+ release
+ end
+
+RustboroCity_Gym_EventScript_157960:: @ 8157960
+ trainerbattle 0, 320, 0, RustboroCity_Gym_Text_183D99, RustboroCity_Gym_Text_183DDD
+ msgbox RustboroCity_Gym_Text_183DF9, 6
+ end
+
+RustboroCity_Gym_EventScript_157977:: @ 8157977
+ trainerbattle 0, 321, 0, RustboroCity_Gym_Text_183E38, RustboroCity_Gym_Text_183E78
+ msgbox RustboroCity_Gym_Text_183E98, 6
+ end
+
+RustboroCity_Gym_EventScript_15798E:: @ 815798E
+ lock
+ faceplayer
+ checkflag 1201
+ jumpeq RustboroCity_Gym_EventScript_1579A3
+ msgbox RustboroCity_Gym_Text_183A4B, 4
+ release
+ end
+
+RustboroCity_Gym_EventScript_1579A3:: @ 81579A3
+ msgbox RustboroCity_Gym_Text_183C90, 4
+ release
+ end
+
+RustboroCity_Gym_EventScript_1579AD:: @ 81579AD
+ lockall
+ checkflag 2055
+ jumpeq RustboroCity_Gym_EventScript_1579CD
+ jump RustboroCity_Gym_EventScript_1579D7
+ end
+
+RustboroCity_Gym_EventScript_1579BD:: @ 81579BD
+ lockall
+ checkflag 2055
+ jumpeq RustboroCity_Gym_EventScript_1579CD
+ jump RustboroCity_Gym_EventScript_1579D7
+ end
+
+RustboroCity_Gym_EventScript_1579CD:: @ 81579CD
+ msgbox RustboroCity_Gym_Text_1842E6, 4
+ releaseall
+ end
+
+RustboroCity_Gym_EventScript_1579D7:: @ 81579D7
+ msgbox RustboroCity_Gym_Text_1842CC, 4
+ releaseall
+ end
+
diff --git a/data/maps/scripts/RustboroCity_House1.s b/data/maps/scripts/RustboroCity_House1.s
new file mode 100644
index 000000000..1eff4001e
--- /dev/null
+++ b/data/maps/scripts/RustboroCity_House1.s
@@ -0,0 +1,55 @@
+RustboroCity_House1_MapScripts:: @ 8157C7C
+ .byte 0
+
+RustboroCity_House1_EventScript_157C7D:: @ 8157C7D
+ lock
+ faceplayer
+ checkflag 153
+ jumpeq RustboroCity_House1_EventScript_157D13
+ setvar 0x8008, 0
+ copyvar 0x8004, 0x8008
+ specialval RESULT, 252
+ copyvar 0x8009, RESULT
+ msgbox RustboroCity_House1_Text_184EBA, 5
+ compare RESULT, 0
+ jumpeq RustboroCity_House1_EventScript_157CFB
+ special 159
+ waitstate
+ copyvar 0x800a, 0x8004
+ compare 0x8004, 255
+ jumpeq RustboroCity_House1_EventScript_157CFB
+ copyvar 0x8005, 0x800a
+ specialval RESULT, 255
+ copyvar 0x800b, RESULT
+ comparevars RESULT, 0x8009
+ jumpif 5, RustboroCity_House1_EventScript_157D05
+ copyvar 0x8004, 0x8008
+ copyvar 0x8005, 0x800a
+ special 253
+ special 254
+ waitstate
+ msgbox RustboroCity_House1_Text_184F6B, 4
+ setflag 153
+ release
+ end
+
+RustboroCity_House1_EventScript_157CFB:: @ 8157CFB
+ msgbox RustboroCity_House1_Text_184FC1, 4
+ release
+ end
+
+RustboroCity_House1_EventScript_157D05:: @ 8157D05
+ bufferpoke 0, 0x8009
+ msgbox RustboroCity_House1_Text_184F8F, 4
+ release
+ end
+
+RustboroCity_House1_EventScript_157D13:: @ 8157D13
+ msgbox RustboroCity_House1_Text_184FDD, 4
+ release
+ end
+
+RustboroCity_House1_EventScript_157D1D:: @ 8157D1D
+ msgbox RustboroCity_House1_Text_185020, 2
+ end
+
diff --git a/data/maps/scripts/RustboroCity_House2.s b/data/maps/scripts/RustboroCity_House2.s
new file mode 100644
index 000000000..66eeedf9b
--- /dev/null
+++ b/data/maps/scripts/RustboroCity_House2.s
@@ -0,0 +1,11 @@
+RustboroCity_House2_MapScripts:: @ 8157D66
+ .byte 0
+
+RustboroCity_House2_EventScript_157D67:: @ 8157D67
+ msgbox RustboroCity_House2_Text_18532D, 2
+ end
+
+RustboroCity_House2_EventScript_157D70:: @ 8157D70
+ msgbox RustboroCity_House2_Text_185388, 2
+ end
+
diff --git a/data/maps/scripts/RustboroCity_House3.s b/data/maps/scripts/RustboroCity_House3.s
new file mode 100644
index 000000000..60978400e
--- /dev/null
+++ b/data/maps/scripts/RustboroCity_House3.s
@@ -0,0 +1,21 @@
+RustboroCity_House3_MapScripts:: @ 8157DEC
+ .byte 0
+
+RustboroCity_House3_EventScript_157DED:: @ 8157DED
+ msgbox RustboroCity_House3_Text_185584, 2
+ end
+
+RustboroCity_House3_EventScript_157DF6:: @ 8157DF6
+ msgbox RustboroCity_House3_Text_1855FA, 2
+ end
+
+RustboroCity_House3_EventScript_157DFF:: @ 8157DFF
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_PIKACHU, 0
+ msgbox RustboroCity_House3_Text_18567D, 4
+ waitpokecry
+ release
+ end
+
diff --git a/data/maps/scripts/RustboroCity_Mart.s b/data/maps/scripts/RustboroCity_Mart.s
new file mode 100644
index 000000000..245d02056
--- /dev/null
+++ b/data/maps/scripts/RustboroCity_Mart.s
@@ -0,0 +1,74 @@
+RustboroCity_Mart_MapScripts:: @ 8157BD3
+ .byte 0
+
+RustboroCity_Mart_EventScript_157BD4:: @ 8157BD4
+ lock
+ faceplayer
+ message RustboroCity_Mart_Text_1A0BE4
+ waittext
+ checkflag 287
+ jumpif 0, RustboroCity_Mart_EventScript_157BEF
+ checkflag 287
+ jumpeq RustboroCity_Mart_EventScript_157C18
+ end
+
+RustboroCity_Mart_EventScript_157BEF:: @ 8157BEF
+ pokemart RustboroCity_Mart_Pokemart_157C00
+ msgbox RustboroCity_Mart_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x157bfe, 0x2
+
+RustboroCity_Mart_Pokemart_157C00:: @ 8157C00
+ .2byte ITEM_POKE_BALL
+ .2byte ITEM_POTION
+ .2byte ITEM_SUPER_POTION
+ .2byte ITEM_ANTIDOTE
+ .2byte ITEM_PARALYZE_HEAL
+ .2byte ITEM_ESCAPE_ROPE
+ .2byte ITEM_REPEL
+ .2byte ITEM_X_SPEED
+ .2byte ITEM_X_ATTACK
+ .2byte ITEM_X_DEFEND
+ .2byte ITEM_NONE
+ release
+ end
+
+RustboroCity_Mart_EventScript_157C18:: @ 8157C18
+ pokemart RustboroCity_Mart_Pokemart_157C28
+ msgbox RustboroCity_Mart_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x157c27, 0x1
+
+RustboroCity_Mart_Pokemart_157C28:: @ 8157C28
+ .2byte ITEM_POKE_BALL
+ .2byte ITEM_TIMER_BALL
+ .2byte ITEM_REPEAT_BALL
+ .2byte ITEM_POTION
+ .2byte ITEM_SUPER_POTION
+ .2byte ITEM_ANTIDOTE
+ .2byte ITEM_PARALYZE_HEAL
+ .2byte ITEM_ESCAPE_ROPE
+ .2byte ITEM_REPEL
+ .2byte ITEM_X_SPEED
+ .2byte ITEM_X_ATTACK
+ .2byte ITEM_X_DEFEND
+ .2byte ITEM_NONE
+ release
+ end
+
+RustboroCity_Mart_EventScript_157C44:: @ 8157C44
+ msgbox RustboroCity_Mart_Text_184C76, 2
+ end
+
+RustboroCity_Mart_EventScript_157C4D:: @ 8157C4D
+ msgbox RustboroCity_Mart_Text_184CD8, 2
+ end
+
+RustboroCity_Mart_EventScript_157C56:: @ 8157C56
+ msgbox RustboroCity_Mart_Text_184D43, 2
+ end
+
diff --git a/data/maps/scripts/RustboroCity_PokemonCenter_1F.s b/data/maps/scripts/RustboroCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..488c97722
--- /dev/null
+++ b/data/maps/scripts/RustboroCity_PokemonCenter_1F.s
@@ -0,0 +1,29 @@
+RustboroCity_PokemonCenter_1F_MapScripts:: @ 8157B79
+ map_script 3, RustboroCity_PokemonCenter_1F_MapScript1_157B7F
+ .byte 0
+
+RustboroCity_PokemonCenter_1F_MapScript1_157B7F:: @ 8157B7F
+ sethealplace 6
+ call RustboroCity_PokemonCenter_1F_EventScript_19FD1B
+ end
+
+RustboroCity_PokemonCenter_1F_EventScript_157B88:: @ 8157B88
+ setvar 0x800b, 1
+ call RustboroCity_PokemonCenter_1F_EventScript_19FD5B
+ waittext
+ waitbutton
+ release
+ end
+
+RustboroCity_PokemonCenter_1F_EventScript_157B96:: @ 8157B96
+ msgbox RustboroCity_PokemonCenter_1F_Text_184B37, 2
+ end
+
+RustboroCity_PokemonCenter_1F_EventScript_157B9F:: @ 8157B9F
+ msgbox RustboroCity_PokemonCenter_1F_Text_184BAB, 2
+ end
+
+RustboroCity_PokemonCenter_1F_EventScript_157BA8:: @ 8157BA8
+ msgbox RustboroCity_PokemonCenter_1F_Text_184C19, 2
+ end
+
diff --git a/data/maps/scripts/RustboroCity_PokemonCenter_2F.s b/data/maps/scripts/RustboroCity_PokemonCenter_2F.s
new file mode 100644
index 000000000..6f983d651
--- /dev/null
+++ b/data/maps/scripts/RustboroCity_PokemonCenter_2F.s
@@ -0,0 +1,18 @@
+RustboroCity_PokemonCenter_2F_MapScripts:: @ 8157BB1
+ map_script 2, RustboroCity_PokemonCenter_2F_MapScript2_1A3D88
+ map_script 4, RustboroCity_PokemonCenter_2F_MapScript2_1A3D03
+ map_script 1, RustboroCity_PokemonCenter_2F_MapScript1_1A3D32
+ .byte 0
+
+RustboroCity_PokemonCenter_2F_EventScript_157BC1:: @ 8157BC1
+ call RustboroCity_PokemonCenter_2F_EventScript_1A3EA6
+ end
+
+RustboroCity_PokemonCenter_2F_EventScript_157BC7:: @ 8157BC7
+ call RustboroCity_PokemonCenter_2F_EventScript_1A40CC
+ end
+
+RustboroCity_PokemonCenter_2F_EventScript_157BCD:: @ 8157BCD
+ call RustboroCity_PokemonCenter_2F_EventScript_1A41FB
+ end
+
diff --git a/data/maps/scripts/RustboroCity_PokemonSchool.s b/data/maps/scripts/RustboroCity_PokemonSchool.s
new file mode 100644
index 000000000..af475848f
--- /dev/null
+++ b/data/maps/scripts/RustboroCity_PokemonSchool.s
@@ -0,0 +1,166 @@
+RustboroCity_PokemonSchool_MapScripts:: @ 81579E1
+ .byte 0
+
+RustboroCity_PokemonSchool_EventScript_1579E2:: @ 81579E2
+ lockall
+ msgbox RustboroCity_PokemonSchool_Text_184321, 4
+ jump RustboroCity_PokemonSchool_EventScript_1579F1
+ end
+
+RustboroCity_PokemonSchool_EventScript_1579F1:: @ 81579F1
+ message RustboroCity_PokemonSchool_Text_184368
+ waittext
+ multichoicerow 8, 1, 13, 3, 0
+ switch RESULT
+ case 0, RustboroCity_PokemonSchool_EventScript_157A50
+ case 1, RustboroCity_PokemonSchool_EventScript_157A5E
+ case 2, RustboroCity_PokemonSchool_EventScript_157A6C
+ case 3, RustboroCity_PokemonSchool_EventScript_157A7A
+ case 4, RustboroCity_PokemonSchool_EventScript_157A88
+ case 5, RustboroCity_PokemonSchool_EventScript_157A96
+ case 127, RustboroCity_PokemonSchool_EventScript_157A96
+ end
+
+RustboroCity_PokemonSchool_EventScript_157A50:: @ 8157A50
+ msgbox RustboroCity_PokemonSchool_Text_184389, 4
+ jump RustboroCity_PokemonSchool_EventScript_1579F1
+ end
+
+RustboroCity_PokemonSchool_EventScript_157A5E:: @ 8157A5E
+ msgbox RustboroCity_PokemonSchool_Text_184447, 4
+ jump RustboroCity_PokemonSchool_EventScript_1579F1
+ end
+
+RustboroCity_PokemonSchool_EventScript_157A6C:: @ 8157A6C
+ msgbox RustboroCity_PokemonSchool_Text_1844EC, 4
+ jump RustboroCity_PokemonSchool_EventScript_1579F1
+ end
+
+RustboroCity_PokemonSchool_EventScript_157A7A:: @ 8157A7A
+ msgbox RustboroCity_PokemonSchool_Text_1845A5, 4
+ jump RustboroCity_PokemonSchool_EventScript_1579F1
+ end
+
+RustboroCity_PokemonSchool_EventScript_157A88:: @ 8157A88
+ msgbox RustboroCity_PokemonSchool_Text_184627, 4
+ jump RustboroCity_PokemonSchool_EventScript_1579F1
+ end
+
+RustboroCity_PokemonSchool_EventScript_157A96:: @ 8157A96
+ releaseall
+ end
+
+RustboroCity_PokemonSchool_EventScript_157A98:: @ 8157A98
+ msgbox RustboroCity_PokemonSchool_Text_18480E, 2
+ end
+
+RustboroCity_PokemonSchool_EventScript_157AA1:: @ 8157AA1
+ msgbox RustboroCity_PokemonSchool_Text_18483C, 2
+ end
+
+RustboroCity_PokemonSchool_EventScript_157AAA:: @ 8157AAA
+ msgbox RustboroCity_PokemonSchool_Text_184873, 2
+ end
+
+RustboroCity_PokemonSchool_EventScript_157AB3:: @ 8157AB3
+ msgbox RustboroCity_PokemonSchool_Text_1848D8, 2
+ end
+
+RustboroCity_PokemonSchool_EventScript_157ABC:: @ 8157ABC
+ msgbox RustboroCity_PokemonSchool_Text_184988, 2
+ end
+
+RustboroCity_PokemonSchool_EventScript_157AC5:: @ 8157AC5
+ msgbox RustboroCity_PokemonSchool_Text_184A17, 3
+ end
+
+RustboroCity_PokemonSchool_EventScript_157ACE:: @ 8157ACE
+ lock
+ faceplayer
+ checkflag 275
+ jumpeq RustboroCity_PokemonSchool_EventScript_157B34
+ compare FACING, 4
+ callif 1, RustboroCity_PokemonSchool_EventScript_157B1E
+ compare FACING, 3
+ callif 1, RustboroCity_PokemonSchool_EventScript_157B29
+ msgbox RustboroCity_PokemonSchool_Text_1846A2, 4
+ giveitem ITEM_QUICK_CLAW
+ compare RESULT, 0
+ jumpeq RustboroCity_PokemonSchool_EventScript_1A029B
+ closebutton
+ move LAST_TALKED, RustboroCity_PokemonSchool_Movement_1A0845
+ waitmove 0
+ setflag 275
+ release
+ end
+
+RustboroCity_PokemonSchool_EventScript_157B1E:: @ 8157B1E
+ move LAST_TALKED, RustboroCity_PokemonSchool_Movement_157B60
+ waitmove 0
+ return
+
+RustboroCity_PokemonSchool_EventScript_157B29:: @ 8157B29
+ move LAST_TALKED, RustboroCity_PokemonSchool_Movement_157B49
+ waitmove 0
+ return
+
+RustboroCity_PokemonSchool_EventScript_157B34:: @ 8157B34
+ msgbox RustboroCity_PokemonSchool_Text_184737, 4
+ closebutton
+ move LAST_TALKED, RustboroCity_PokemonSchool_Movement_1A0845
+ waitmove 0
+ release
+ end
+
+RustboroCity_PokemonSchool_Movement_157B49:: @ 8157B49
+ step_left
+ step_down
+ step_down
+ step_right
+ step_25
+ step_14
+ step_14
+ step_14
+ step_down
+ step_27
+ step_14
+ step_14
+ step_right
+ step_14
+ step_14
+ step_13
+ step_up
+ step_left
+ step_left
+ step_up
+ step_up
+ step_right
+ step_end
+
+RustboroCity_PokemonSchool_Movement_157B60:: @ 8157B60
+ step_right
+ step_right
+ step_down
+ step_down
+ step_left
+ step_left
+ step_25
+ step_14
+ step_14
+ step_14
+ step_down
+ step_27
+ step_14
+ step_14
+ step_right
+ step_14
+ step_14
+ step_13
+ step_up
+ step_right
+ step_up
+ step_up
+ step_left
+ step_left
+ step_end
+
diff --git a/data/maps/scripts/RusturfTunnel.s b/data/maps/scripts/RusturfTunnel.s
new file mode 100644
index 000000000..0eaaf4da5
--- /dev/null
+++ b/data/maps/scripts/RusturfTunnel.s
@@ -0,0 +1,405 @@
+RusturfTunnel_MapScripts:: @ 815C745
+ map_script 3, RusturfTunnel_MapScript1_15C762
+ map_script 2, RusturfTunnel_MapScript2_15C750
+ .byte 0
+
+RusturfTunnel_MapScript2_15C750:: @ 815C750
+ map_script_2 0x409a, 4, RusturfTunnel_EventScript_15C7D1
+ map_script_2 0x409a, 5, RusturfTunnel_EventScript_15C7D1
+ .2byte 0
+
+RusturfTunnel_MapScript1_15C762:: @ 815C762
+ call RusturfTunnel_EventScript_1A0196
+ compare 0x409a, 2
+ callif 1, RusturfTunnel_EventScript_15C773
+ end
+
+RusturfTunnel_EventScript_15C773:: @ 815C773
+ movespriteperm 7, 13, 4
+ movespriteperm 6, 13, 5
+ return
+
+RusturfTunnel_EventScript_15C782:: @ 815C782
+ lock
+ faceplayer
+ msgbox RusturfTunnel_Text_194766, 4
+ closebutton
+ move LAST_TALKED, RusturfTunnel_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+RusturfTunnel_EventScript_15C799:: @ 815C799
+ lock
+ faceplayer
+ checkflag 1
+ jumpeq RusturfTunnel_EventScript_15C7BC
+ setflag 1
+ msgbox RusturfTunnel_Text_1944C5, 4
+ closebutton
+ move LAST_TALKED, RusturfTunnel_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+RusturfTunnel_EventScript_15C7BC:: @ 815C7BC
+ msgbox RusturfTunnel_Text_1945B2, 4
+ closebutton
+ move LAST_TALKED, RusturfTunnel_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+RusturfTunnel_EventScript_15C7D1:: @ 815C7D1
+ lockall
+ compare 0x4001, 1
+ callif 1, RusturfTunnel_EventScript_15C8CA
+ compare 0x4001, 2
+ callif 1, RusturfTunnel_EventScript_15C8DF
+ compare 0x4001, 3
+ callif 1, RusturfTunnel_EventScript_15C8EA
+ call RusturfTunnel_EventScript_15C92D
+ msgbox RusturfTunnel_Text_19461D, 4
+ compare 0x4001, 2
+ callif 1, RusturfTunnel_EventScript_15C8EB
+ compare 0x4001, 3
+ callif 1, RusturfTunnel_EventScript_15C8EB
+ giveitem ITEM_HM04
+ setflag 106
+ msgbox RusturfTunnel_Text_194693, 4
+ closebutton
+ compare 0x4001, 1
+ callif 1, RusturfTunnel_EventScript_15C880
+ compare 0x4001, 2
+ callif 1, RusturfTunnel_EventScript_15C892
+ compare 0x4001, 3
+ callif 1, RusturfTunnel_EventScript_15C8AE
+ msgbox RusturfTunnel_Text_194706, 4
+ closebutton
+ compare 0x4001, 1
+ callif 1, RusturfTunnel_EventScript_15C8F7
+ compare 0x4001, 2
+ callif 1, RusturfTunnel_EventScript_15C909
+ compare 0x4001, 3
+ callif 1, RusturfTunnel_EventScript_15C91B
+ call RusturfTunnel_EventScript_1A0442
+ releaseall
+ end
+
+RusturfTunnel_EventScript_15C880:: @ 815C880
+ move 255, RusturfTunnel_Movement_15C96A
+ move 1, RusturfTunnel_Movement_15C98F
+ waitmove 0
+ return
+
+RusturfTunnel_EventScript_15C892:: @ 815C892
+ move 255, RusturfTunnel_Movement_15C96D
+ move 1, RusturfTunnel_Movement_15C994
+ waitmove 0
+ move 10, RusturfTunnel_Movement_1A0845
+ waitmove 0
+ return
+
+RusturfTunnel_EventScript_15C8AE:: @ 815C8AE
+ move 255, RusturfTunnel_Movement_15C96D
+ move 1, RusturfTunnel_Movement_15C994
+ waitmove 0
+ move 10, RusturfTunnel_Movement_1A0845
+ waitmove 0
+ return
+
+RusturfTunnel_EventScript_15C8CA:: @ 815C8CA
+ move 1, RusturfTunnel_Movement_1A0841
+ waitmove 0
+ move 255, RusturfTunnel_Movement_1A0845
+ waitmove 0
+ return
+
+RusturfTunnel_EventScript_15C8DF:: @ 815C8DF
+ move 1, RusturfTunnel_Movement_15C970
+ waitmove 0
+ return
+
+RusturfTunnel_EventScript_15C8EA:: @ 815C8EA
+ return
+
+RusturfTunnel_EventScript_15C8EB:: @ 815C8EB
+ closebutton
+ move 1, RusturfTunnel_Movement_15C98D
+ waitmove 0
+ return
+
+RusturfTunnel_EventScript_15C8F7:: @ 815C8F7
+ move 10, RusturfTunnel_Movement_15C945
+ move 1, RusturfTunnel_Movement_15C973
+ waitmove 0
+ return
+
+RusturfTunnel_EventScript_15C909:: @ 815C909
+ move 10, RusturfTunnel_Movement_15C951
+ move 1, RusturfTunnel_Movement_15C980
+ waitmove 0
+ return
+
+RusturfTunnel_EventScript_15C91B:: @ 815C91B
+ move 10, RusturfTunnel_Movement_15C951
+ move 1, RusturfTunnel_Movement_15C980
+ waitmove 0
+ return
+
+RusturfTunnel_EventScript_15C92D:: @ 815C92D
+ playsfx 21
+ move 1, RusturfTunnel_Movement_1A0833
+ waitmove 0
+ move 1, RusturfTunnel_Movement_1A0835
+ waitmove 0
+ return
+
+RusturfTunnel_Movement_15C945:: @ 815C945
+ step_right
+ step_right
+ step_right
+ step_right
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_end
+
+RusturfTunnel_Movement_15C951:: @ 815C951
+ step_right
+ step_right
+ step_right
+ step_right
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_end
+
+ .incbin "baserom.gba", 0x15c95d, 0xd
+
+RusturfTunnel_Movement_15C96A:: @ 815C96A
+ step_left
+ step_28
+ step_end
+
+RusturfTunnel_Movement_15C96D:: @ 815C96D
+ step_right
+ step_27
+ step_end
+
+RusturfTunnel_Movement_15C970:: @ 815C970
+ step_up
+ step_28
+ step_end
+
+RusturfTunnel_Movement_15C973:: @ 815C973
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_end
+
+RusturfTunnel_Movement_15C980:: @ 815C980
+ step_up
+ step_right
+ step_right
+ step_right
+ step_right
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_end
+
+RusturfTunnel_Movement_15C98D:: @ 815C98D
+ step_right
+ step_end
+
+RusturfTunnel_Movement_15C98F:: @ 815C98F
+ step_22
+ step_22
+ step_16
+ step_18
+ step_end
+
+RusturfTunnel_Movement_15C994:: @ 815C994
+ step_24
+ step_24
+ step_18
+ step_26
+ step_end
+
+RusturfTunnel_EventScript_15C999:: @ 815C999
+ setvar 0x4001, 1
+ end
+
+RusturfTunnel_EventScript_15C99F:: @ 815C99F
+ setvar 0x4001, 2
+ end
+
+RusturfTunnel_EventScript_15C9A5:: @ 815C9A5
+ setvar 0x4001, 3
+ end
+
+RusturfTunnel_EventScript_15C9AB:: @ 815C9AB
+ lockall
+ msgbox RusturfTunnel_Text_194159, 4
+ closebutton
+ move 6, RusturfTunnel_Movement_15C9D3
+ move 7, RusturfTunnel_Movement_15C9D3
+ waitmove 0
+ moveoffscreen 6
+ moveoffscreen 7
+ setvar 0x409a, 3
+ releaseall
+ end
+
+RusturfTunnel_Movement_15C9D3:: @ 815C9D3
+ step_40
+ step_right
+ step_41
+ step_end
+
+RusturfTunnel_EventScript_15C9D7:: @ 815C9D7
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_WINGULL, 0
+ msgbox RusturfTunnel_Text_194188, 4
+ waitpokecry
+ release
+ end
+
+RusturfTunnel_EventScript_15C9EA:: @ 815C9EA
+ lock
+ faceplayer
+ playmusic 441, 0
+ msgbox RusturfTunnel_Text_19419B, 4
+ trainerbattle 3, 581, 0, RusturfTunnel_Text_194243
+ msgbox RusturfTunnel_Text_194274, 4
+ giveitem ITEM_DEVON_GOODS
+ closebutton
+ move 255, RusturfTunnel_Movement_15CA99
+ move 6, RusturfTunnel_Movement_15CAA2
+ waitmove 0
+ disappear 6
+ pause 50
+ reappear 5
+ move 5, RusturfTunnel_Movement_15CAAC
+ waitmove 0
+ move 255, RusturfTunnel_Movement_15CA9F
+ move 5, RusturfTunnel_Movement_15CAC0
+ waitmove 0
+ msgbox RusturfTunnel_Text_19432A, 4
+ move 5, RusturfTunnel_Movement_1A0839
+ waitmove 0
+ message RusturfTunnel_Text_19434F
+ waittext
+ checksound
+ pokecry SPECIES_WINGULL, 0
+ waitbutton
+ waitpokecry
+ closebutton
+ move 5, RusturfTunnel_Movement_15CAB4
+ move 7, RusturfTunnel_Movement_15CAC3
+ waitmove 0
+ disappear 5
+ disappear 7
+ clearflag 142
+ setflag 143
+ setvar 0x405a, 4
+ setvar 0x4090, 1
+ setflag 891
+ release
+ end
+
+RusturfTunnel_Movement_15CA99:: @ 815CA99
+ step_00
+ step_40
+ step_up
+ step_41
+ step_27
+ step_end
+
+RusturfTunnel_Movement_15CA9F:: @ 815CA9F
+ step_down
+ step_26
+ step_end
+
+RusturfTunnel_Movement_15CAA2:: @ 815CAA2
+ step_17
+ step_17
+ step_17
+ step_17
+ step_17
+ step_17
+ step_17
+ step_17
+ step_17
+ step_end
+
+RusturfTunnel_Movement_15CAAC:: @ 815CAAC
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+RusturfTunnel_Movement_15CAB4:: @ 815CAB4
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_end
+
+RusturfTunnel_Movement_15CAC0:: @ 815CAC0
+ step_14
+ step_right
+ step_end
+
+RusturfTunnel_Movement_15CAC3:: @ 815CAC3
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_end
+
+RusturfTunnel_EventScript_15CACD:: @ 815CACD
+ trainerbattle 0, 635, 0, RusturfTunnel_Text_194814, RusturfTunnel_Text_1948A2
+ msgbox RusturfTunnel_Text_1948C4, 6
+ end
+
diff --git a/data/maps/scripts/SSTidalCorridor.s b/data/maps/scripts/SSTidalCorridor.s
new file mode 100644
index 000000000..90014e7d9
--- /dev/null
+++ b/data/maps/scripts/SSTidalCorridor.s
@@ -0,0 +1,42 @@
+SSTidalCorridor_MapScripts:: @ 815FC94
+ map_script 2, SSTidalCorridor_MapScript2_15FC9A
+ .byte 0
+
+SSTidalCorridor_MapScript2_15FC9A:: @ 815FC9A
+ map_script_2 0x40b4, 1, SSTidalCorridor_EventScript_15FCBC
+ map_script_2 0x40b4, 5, SSTidalCorridor_EventScript_15FCD2
+ map_script_2 0x40b4, 9, SSTidalCorridor_EventScript_15FD24
+ map_script_2 0x40b4, 10, SSTidalCorridor_EventScript_15FD3A
+ .2byte 0
+
+SSTidalCorridor_EventScript_15FCBC:: @ 815FCBC
+ special 203
+ setvar 0x40b4, 2
+ lockall
+ playsfx 73
+ msgbox SSTidalCorridor_Text_199007, 4
+ releaseall
+ end
+
+SSTidalCorridor_EventScript_15FCD2:: @ 815FCD2
+ setvar 0x40b4, 6
+ lockall
+ playsfx 73
+ msgbox SSTidalCorridor_Text_199088, 4
+ releaseall
+ end
+
+SSTidalRooms_EventScript_15FCE5:: @ 815FCE5
+ special 203
+ setvar 0x40b4, 7
+ playsfx 73
+ msgbox SSTidalRooms_Text_199007, 4
+ return
+
+SSTidalRooms_EventScript_15FCF9:: @ 815FCF9
+ special 204
+ setvar 0x40b4, 4
+ playsfx 73
+ msgbox SSTidalRooms_Text_1990F8, 4
+ return
+
diff --git a/data/maps/scripts/SSTidalLowerDeck.s b/data/maps/scripts/SSTidalLowerDeck.s
new file mode 100644
index 000000000..f3dc6f0a0
--- /dev/null
+++ b/data/maps/scripts/SSTidalLowerDeck.s
@@ -0,0 +1,13 @@
+SSTidalLowerDeck_MapScripts:: @ 815FED6
+ .byte 0
+
+SSTidalLowerDeck_EventScript_15FED7:: @ 815FED7
+ trainerbattle 0, 494, 0, SSTidalLowerDeck_Text_1993C1, SSTidalLowerDeck_Text_19941A
+ msgbox SSTidalLowerDeck_Text_19942E, 6
+ end
+
+SSTidalLowerDeck_EventScript_15FEEE:: @ 815FEEE
+ trainerbattle 0, 495, 0, SSTidalLowerDeck_Text_199491, SSTidalLowerDeck_Text_1994F7
+ msgbox SSTidalLowerDeck_Text_199508, 6
+ end
+
diff --git a/data/maps/scripts/SSTidalRooms.s b/data/maps/scripts/SSTidalRooms.s
new file mode 100644
index 000000000..860b00a47
--- /dev/null
+++ b/data/maps/scripts/SSTidalRooms.s
@@ -0,0 +1,66 @@
+SSTidalRooms_MapScripts:: @ 815FF05
+ .byte 0
+
+SSTidalRooms_EventScript_15FF06:: @ 815FF06
+ lock
+ faceplayer
+ checkflag 260
+ jumpeq SSTidalRooms_EventScript_15FF3D
+ msgbox SSTidalRooms_Text_199B65, 4
+ giveitem ITEM_TM49
+ compare RESULT, 0
+ jumpeq SSTidalRooms_EventScript_1A029B
+ setflag 260
+ msgbox SSTidalRooms_Text_199C1A, 4
+ release
+ end
+
+SSTidalRooms_EventScript_15FF3D:: @ 815FF3D
+ msgbox SSTidalRooms_Text_199C1A, 4
+ release
+ end
+
+SSTidalRooms_EventScript_15FF47:: @ 815FF47
+ lockall
+ msgbox SSTidalRooms_Text_19956B, 4
+ closebutton
+ call SSTidalRooms_EventScript_1A02CA
+ call SSTidalRooms_EventScript_15FD64
+ releaseall
+ end
+
+SSTidalRooms_EventScript_15FF5D:: @ 815FF5D
+ trainerbattle 0, 294, 0, SSTidalRooms_Text_19958A, SSTidalRooms_Text_199613
+ msgbox SSTidalRooms_Text_199630, 6
+ end
+
+SSTidalRooms_EventScript_15FF74:: @ 815FF74
+ trainerbattle 0, 255, 0, SSTidalRooms_Text_1996A6, SSTidalRooms_Text_1996BF
+ msgbox SSTidalRooms_Text_1996E1, 6
+ end
+
+SSTidalRooms_EventScript_15FF8B:: @ 815FF8B
+ trainerbattle 0, 256, 0, SSTidalRooms_Text_199723, SSTidalRooms_Text_199747
+ msgbox SSTidalRooms_Text_199778, 6
+ end
+
+SSTidalRooms_EventScript_15FFA2:: @ 815FFA2
+ trainerbattle 4, 641, 0, SSTidalRooms_Text_1997C1, SSTidalRooms_Text_199813, SSTidalRooms_Text_199887
+ msgbox SSTidalRooms_Text_199820, 6
+ end
+
+SSTidalRooms_EventScript_15FFBD:: @ 815FFBD
+ trainerbattle 4, 641, 0, SSTidalRooms_Text_1998C5, SSTidalRooms_Text_19990E, SSTidalRooms_Text_199975
+ msgbox SSTidalRooms_Text_19991C, 6
+ end
+
+SSTidalRooms_EventScript_15FFD8:: @ 815FFD8
+ trainerbattle 0, 138, 0, SSTidalRooms_Text_1999B7, SSTidalRooms_Text_1999FF
+ msgbox SSTidalRooms_Text_199A10, 6
+ end
+
+SSTidalRooms_EventScript_15FFEF:: @ 815FFEF
+ trainerbattle 0, 119, 0, SSTidalRooms_Text_199A62, SSTidalRooms_Text_199ABF
+ msgbox SSTidalRooms_Text_199ADE, 6
+ end
+
diff --git a/data/maps/scripts/SafariZone_Northeast.s b/data/maps/scripts/SafariZone_Northeast.s
new file mode 100644
index 000000000..bb301e4fa
--- /dev/null
+++ b/data/maps/scripts/SafariZone_Northeast.s
@@ -0,0 +1,11 @@
+SafariZone_Northeast_MapScripts:: @ 8160010
+ .byte 0
+
+SafariZone_Northeast_EventScript_160011:: @ 8160011
+ msgbox SafariZone_Northeast_Text_1C3D19, 2
+ end
+
+SafariZone_Northeast_EventScript_16001A:: @ 816001A
+ msgbox SafariZone_Northeast_Text_1C3D80, 2
+ end
+
diff --git a/data/maps/scripts/SafariZone_Northwest.s b/data/maps/scripts/SafariZone_Northwest.s
new file mode 100644
index 000000000..4f30ad378
--- /dev/null
+++ b/data/maps/scripts/SafariZone_Northwest.s
@@ -0,0 +1,7 @@
+SafariZone_Northwest_MapScripts:: @ 8160006
+ .byte 0
+
+SafariZone_Northwest_EventScript_160007:: @ 8160007
+ msgbox SafariZone_Northwest_Text_1C3CAE, 2
+ end
+
diff --git a/data/maps/scripts/SafariZone_RestHouse.s b/data/maps/scripts/SafariZone_RestHouse.s
new file mode 100644
index 000000000..ace6e6473
--- /dev/null
+++ b/data/maps/scripts/SafariZone_RestHouse.s
@@ -0,0 +1,15 @@
+SafariZone_RestHouse_MapScripts:: @ 8160C2E
+ .byte 0
+
+SafariZone_RestHouse_EventScript_160C2F:: @ 8160C2F
+ msgbox SafariZone_RestHouse_Text_1C3EC9, 2
+ end
+
+SafariZone_RestHouse_EventScript_160C38:: @ 8160C38
+ msgbox SafariZone_RestHouse_Text_1C3F71, 2
+ end
+
+SafariZone_RestHouse_EventScript_160C41:: @ 8160C41
+ msgbox SafariZone_RestHouse_Text_1C3FF4, 2
+ end
+
diff --git a/data/maps/scripts/SafariZone_Southeast.s b/data/maps/scripts/SafariZone_Southeast.s
new file mode 100644
index 000000000..38fa96053
--- /dev/null
+++ b/data/maps/scripts/SafariZone_Southeast.s
@@ -0,0 +1,119 @@
+SafariZone_Southeast_MapScripts:: @ 8160036
+ map_script 3, SafariZone_Southeast_MapScript1_160073
+ map_script 2, SafariZone_Southeast_MapScript2_160041
+ .byte 0
+
+SafariZone_Southeast_MapScript2_160041:: @ 8160041
+ map_script_2 0x40a4, 2, SafariZone_Southeast_EventScript_16004B
+ .2byte 0
+
+SafariZone_Southeast_EventScript_16004B:: @ 816004B
+ lockall
+ setvar 0x4001, 0
+ move 255, SafariZone_Southeast_Movement_160087
+ waitmove 0
+ move 1, SafariZone_Southeast_Movement_160089
+ waitmove 0
+ movespriteperm 1, 32, 34
+ setvar 0x40a4, 0
+ releaseall
+ end
+
+SafariZone_Southeast_MapScript1_160073:: @ 8160073
+ compare 0x40a4, 2
+ callif 1, SafariZone_Southeast_EventScript_16007F
+ end
+
+SafariZone_Southeast_EventScript_16007F:: @ 816007F
+ movespriteperm 1, 31, 34
+ return
+
+SafariZone_Southeast_Movement_160087:: @ 8160087
+ step_down
+ step_end
+
+SafariZone_Southeast_Movement_160089:: @ 8160089
+ step_right
+ step_25
+ step_end
+
+SafariZone_Southeast_EventScript_16008C:: @ 816008C
+ msgbox SafariZone_Southeast_Text_1C3B71, 2
+ end
+
+SafariZone_Southeast_EventScript_160095:: @ 8160095
+ msgbox SafariZone_Southeast_Text_1C3BBD, 2
+ end
+
+SafariZone_Southeast_EventScript_16009E:: @ 816009E
+ msgbox SafariZone_Southeast_Text_1C3DCE, 2
+ end
+
+SafariZone_Southeast_EventScript_1600A7:: @ 81600A7
+ lock
+ faceplayer
+ compare 0x4001, 0
+ jumpeq SafariZone_Southeast_EventScript_1600D1
+ msgbox SafariZone_Southeast_Text_1C3A56, 5
+ compare RESULT, 1
+ jumpeq SafariZone_Southeast_EventScript_1600E0
+ msgbox SafariZone_Southeast_Text_1C3A9C, 4
+ release
+ end
+
+SafariZone_Southeast_EventScript_1600D1:: @ 81600D1
+ setvar 0x4001, 1
+ msgbox SafariZone_Southeast_Text_1C3B2D, 4
+ release
+ end
+
+SafariZone_Southeast_EventScript_1600E0:: @ 81600E0
+ msgbox SafariZone_Southeast_Text_1C3ACA, 4
+ closebutton
+ switch FACING
+ case 2, SafariZone_Southeast_EventScript_160105
+ case 4, SafariZone_Southeast_EventScript_16011F
+ end
+
+SafariZone_Southeast_EventScript_160105:: @ 8160105
+ move 1, SafariZone_Southeast_Movement_160150
+ waitmove 0
+ move 255, SafariZone_Southeast_Movement_16014B
+ waitmove 0
+ jump SafariZone_Southeast_EventScript_160139
+ end
+
+SafariZone_Southeast_EventScript_16011F:: @ 816011F
+ move 1, SafariZone_Southeast_Movement_160153
+ waitmove 0
+ move 255, SafariZone_Southeast_Movement_16014D
+ waitmove 0
+ jump SafariZone_Southeast_EventScript_160139
+ end
+
+SafariZone_Southeast_EventScript_160139:: @ 8160139
+ setvar 0x40a4, 1
+ special 206
+ warpwalk Route121_SafariZoneEntrance, 255, 2, 5
+ waitstate
+ end
+
+SafariZone_Southeast_Movement_16014B:: @ 816014B
+ step_up
+ step_end
+
+SafariZone_Southeast_Movement_16014D:: @ 816014D
+ step_right
+ step_26
+ step_end
+
+SafariZone_Southeast_Movement_160150:: @ 8160150
+ step_left
+ step_28
+ step_end
+
+SafariZone_Southeast_Movement_160153:: @ 8160153
+ step_down
+ step_26
+ step_end
+
diff --git a/data/maps/scripts/SafariZone_Southwest.s b/data/maps/scripts/SafariZone_Southwest.s
new file mode 100644
index 000000000..158b8720f
--- /dev/null
+++ b/data/maps/scripts/SafariZone_Southwest.s
@@ -0,0 +1,11 @@
+SafariZone_Southwest_MapScripts:: @ 8160023
+ .byte 0
+
+SafariZone_Southwest_EventScript_160024:: @ 8160024
+ msgbox SafariZone_Southwest_Text_1C3C39, 2
+ end
+
+SafariZone_Southwest_EventScript_16002D:: @ 816002D
+ msgbox SafariZone_Southwest_Text_1C3EA3, 3
+ end
+
diff --git a/data/maps/scripts/ScorchedSlab.s b/data/maps/scripts/ScorchedSlab.s
new file mode 100644
index 000000000..bf5074e95
--- /dev/null
+++ b/data/maps/scripts/ScorchedSlab.s
@@ -0,0 +1,8 @@
+ScorchedSlab_MapScripts:: @ 815F29D
+ map_script 3, ScorchedSlab_MapScript1_15F2A3
+ .byte 0
+
+ScorchedSlab_MapScript1_15F2A3:: @ 815F2A3
+ setflag 2136
+ end
+
diff --git a/data/maps/scripts/SeafloorCavern_Entrance.s b/data/maps/scripts/SeafloorCavern_Entrance.s
new file mode 100644
index 000000000..5f2788cf9
--- /dev/null
+++ b/data/maps/scripts/SeafloorCavern_Entrance.s
@@ -0,0 +1,9 @@
+SeafloorCavern_Entrance_MapScripts:: @ 815DA4A
+ map_script 5, SeafloorCavern_Entrance_MapScript1_15DA50
+ .byte 0
+
+SeafloorCavern_Entrance_MapScript1_15DA50:: @ 815DA50
+ warp4 Underwater_SeafloorCavern, 255, 6, 5
+ warp6 Underwater_SeafloorCavern, 255, 6, 5
+ end
+
diff --git a/data/maps/scripts/SeafloorCavern_Room1.s b/data/maps/scripts/SeafloorCavern_Room1.s
new file mode 100644
index 000000000..4c79505b9
--- /dev/null
+++ b/data/maps/scripts/SeafloorCavern_Room1.s
@@ -0,0 +1,18 @@
+SeafloorCavern_Room1_MapScripts:: @ 815DA61
+ map_script 3, SeafloorCavern_Room1_MapScript1_15DA67
+ .byte 0
+
+SeafloorCavern_Room1_MapScript1_15DA67:: @ 815DA67
+ call SeafloorCavern_Room1_EventScript_1A0196
+ end
+
+SeafloorCavern_Room1_EventScript_15DA6D:: @ 815DA6D
+ trainerbattle 0, 571, 0, SeafloorCavern_Room1_Text_1974BA, SeafloorCavern_Room1_Text_1974EA
+ msgbox SeafloorCavern_Room1_Text_1974FF, 6
+ end
+
+SeafloorCavern_Room1_EventScript_15DA84:: @ 815DA84
+ trainerbattle 0, 572, 0, SeafloorCavern_Room1_Text_19753C, SeafloorCavern_Room1_Text_197573
+ msgbox SeafloorCavern_Room1_Text_197589, 6
+ end
+
diff --git a/data/maps/scripts/SeafloorCavern_Room2.s b/data/maps/scripts/SeafloorCavern_Room2.s
new file mode 100644
index 000000000..cc53a220a
--- /dev/null
+++ b/data/maps/scripts/SeafloorCavern_Room2.s
@@ -0,0 +1,3 @@
+SeafloorCavern_Room2_MapScripts:: @ 815DA9B
+ .byte 0
+
diff --git a/data/maps/scripts/SeafloorCavern_Room3.s b/data/maps/scripts/SeafloorCavern_Room3.s
new file mode 100644
index 000000000..4a32842e2
--- /dev/null
+++ b/data/maps/scripts/SeafloorCavern_Room3.s
@@ -0,0 +1,13 @@
+SeafloorCavern_Room3_MapScripts:: @ 815DA9C
+ map_script 3, SeafloorCavern_Room3_MapScript1_15DAA2
+ .byte 0
+
+SeafloorCavern_Room3_MapScript1_15DAA2:: @ 815DAA2
+ call SeafloorCavern_Room3_EventScript_1A0196
+ end
+
+SeafloorCavern_Room3_EventScript_15DAA8:: @ 815DAA8
+ trainerbattle 0, 600, 0, SeafloorCavern_Room3_Text_1975DC, SeafloorCavern_Room3_Text_1976F3
+ msgbox SeafloorCavern_Room3_Text_197704, 6
+ end
+
diff --git a/data/maps/scripts/SeafloorCavern_Room4.s b/data/maps/scripts/SeafloorCavern_Room4.s
new file mode 100644
index 000000000..577ac0701
--- /dev/null
+++ b/data/maps/scripts/SeafloorCavern_Room4.s
@@ -0,0 +1,13 @@
+SeafloorCavern_Room4_MapScripts:: @ 815DABF
+ map_script 3, SeafloorCavern_Room4_MapScript1_15DAC5
+ .byte 0
+
+SeafloorCavern_Room4_MapScript1_15DAC5:: @ 815DAC5
+ call SeafloorCavern_Room4_EventScript_1A0196
+ end
+
+SeafloorCavern_Room4_EventScript_15DACB:: @ 815DACB
+ trainerbattle 0, 573, 0, SeafloorCavern_Room4_Text_1977B9, SeafloorCavern_Room4_Text_1977E2
+ msgbox SeafloorCavern_Room4_Text_1977ED, 6
+ end
+
diff --git a/data/maps/scripts/SeafloorCavern_Room5.s b/data/maps/scripts/SeafloorCavern_Room5.s
new file mode 100644
index 000000000..0bccaf57d
--- /dev/null
+++ b/data/maps/scripts/SeafloorCavern_Room5.s
@@ -0,0 +1,3 @@
+SeafloorCavern_Room5_MapScripts:: @ 815DAE2
+ .byte 0
+
diff --git a/data/maps/scripts/SeafloorCavern_Room6.s b/data/maps/scripts/SeafloorCavern_Room6.s
new file mode 100644
index 000000000..c765f7715
--- /dev/null
+++ b/data/maps/scripts/SeafloorCavern_Room6.s
@@ -0,0 +1,3 @@
+SeafloorCavern_Room6_MapScripts:: @ 815DAE3
+ .byte 0
+
diff --git a/data/maps/scripts/SeafloorCavern_Room7.s b/data/maps/scripts/SeafloorCavern_Room7.s
new file mode 100644
index 000000000..b0a2e1cd3
--- /dev/null
+++ b/data/maps/scripts/SeafloorCavern_Room7.s
@@ -0,0 +1,3 @@
+SeafloorCavern_Room7_MapScripts:: @ 815DAE4
+ .byte 0
+
diff --git a/data/maps/scripts/SeafloorCavern_Room8.s b/data/maps/scripts/SeafloorCavern_Room8.s
new file mode 100644
index 000000000..48858c411
--- /dev/null
+++ b/data/maps/scripts/SeafloorCavern_Room8.s
@@ -0,0 +1,3 @@
+SeafloorCavern_Room8_MapScripts:: @ 815DAE5
+ .byte 0
+
diff --git a/data/maps/scripts/SeafloorCavern_Room9.s b/data/maps/scripts/SeafloorCavern_Room9.s
new file mode 100644
index 000000000..f0a38cfc1
--- /dev/null
+++ b/data/maps/scripts/SeafloorCavern_Room9.s
@@ -0,0 +1,215 @@
+SeafloorCavern_Room9_MapScripts:: @ 815DAE6
+ map_script 3, SeafloorCavern_Room9_MapScript1_15DAEC
+ .byte 0
+
+SeafloorCavern_Room9_MapScript1_15DAEC:: @ 815DAEC
+ call SeafloorCavern_Room9_EventScript_1A0196
+ call SeafloorCavern_Room9_EventScript_1A01B5
+ setmapfooter 327
+ end
+
+SeafloorCavern_Room9_EventScript_15DAFA:: @ 815DAFA
+ lockall
+ setvar 0x8004, 2
+ setvar 0x8005, 3
+ setvar 0x8006, 4
+ setvar 0x8007, 5
+ move 255, SeafloorCavern_Room9_Movement_1A0841
+ waitmove 0
+ move 255, SeafloorCavern_Room9_Movement_15DD68
+ waitmove 0
+ msgbox SeafloorCavern_Room9_Text_1B4850, 4
+ closebutton
+ reappear 0x8004
+ move 255, SeafloorCavern_Room9_Movement_1A083F
+ waitmove 0
+ move 0x8004, SeafloorCavern_Room9_Movement_15DD36
+ waitmove 0
+ msgbox SeafloorCavern_Room9_Text_1B486C, 4
+ move 0x8004, SeafloorCavern_Room9_Movement_1A0841
+ waitmove 0
+ msgbox SeafloorCavern_Room9_Text_1B4897, 4
+ move 0x8004, SeafloorCavern_Room9_Movement_1A0839
+ waitmove 0
+ msgbox SeafloorCavern_Room9_Text_1B491F, 4
+ trainerbattle 3, 601, 0, SeafloorCavern_Room9_Text_1B49AE
+ msgbox SeafloorCavern_Room9_Text_1B49C1, 4
+ setweather 0
+ doweather
+ special 332
+ waitstate
+ msgbox SeafloorCavern_Room9_Text_1B4A5A, 4
+ special 284
+ waitstate
+ setvar RESULT, 0
+ playsfx 209
+ setanimation 0, 16
+ setanimation 1, 42
+ setanimation 2, 0
+ doanimation 54
+ checkanimation 54
+ setvar RESULT, 1
+ fanfare 388
+ playsfx 107
+ special 281
+ move 0x8004, SeafloorCavern_Room9_Movement_1A0841
+ move 255, SeafloorCavern_Room9_Movement_1A0841
+ waitmove 0
+ pause 150
+ disappear 7
+ reappear 1
+ waitstate
+ pause 60
+ move 1, SeafloorCavern_Room9_Movement_15DD4C
+ waitmove 0
+ special 282
+ waitstate
+ setvar 0x8004, 1
+ setvar 0x8005, 1
+ special 310
+ waitstate
+ move 1, SeafloorCavern_Room9_Movement_15DD57
+ waitmove 0
+ disappear 1
+ pause 4
+ setvar 0x8004, 2
+ setvar 0x8005, 2
+ special 310
+ waitstate
+ pause 30
+ setvar 0x8004, 2
+ setvar 0x8005, 3
+ setvar 0x8006, 4
+ setvar 0x8007, 5
+ msgbox SeafloorCavern_Room9_Text_1B4A89, 4
+ playsfx 2
+ move 255, SeafloorCavern_Room9_Movement_1A083F
+ waitmove 0
+ msgbox SeafloorCavern_Room9_Text_1B4ADB, 4
+ closebutton
+ move 0x8004, SeafloorCavern_Room9_Movement_15DD41
+ waitmove 0
+ msgbox SeafloorCavern_Room9_Text_1B4B11, 4
+ closebutton
+ playsfx 3
+ pause 20
+ move 0x8004, SeafloorCavern_Room9_Movement_1A0845
+ waitmove 0
+ msgbox SeafloorCavern_Room9_Text_1B4C79, 4
+ closebutton
+ reappear 0x8005
+ reappear 0x8006
+ reappear 0x8007
+ move 0x8007, SeafloorCavern_Room9_Movement_15DD63
+ move 0x8006, SeafloorCavern_Room9_Movement_15DD63
+ move 0x8005, SeafloorCavern_Room9_Movement_15DD5A
+ waitmove 0
+ move 0x8004, SeafloorCavern_Room9_Movement_1A083F
+ waitmove 0
+ msgbox SeafloorCavern_Room9_Text_1B4D02, 4
+ playsfx 21
+ move 0x8004, SeafloorCavern_Room9_Movement_1A0833
+ waitmove 0
+ move 0x8004, SeafloorCavern_Room9_Movement_1A0835
+ waitmove 0
+ msgbox SeafloorCavern_Room9_Text_1B4DD3, 4
+ msgbox SeafloorCavern_Room9_Text_1B4E37, 4
+ closebutton
+ move 0x8005, SeafloorCavern_Room9_Movement_15DD60
+ move 0x8004, SeafloorCavern_Room9_Movement_15DD46
+ waitmove 0
+ msgbox SeafloorCavern_Room9_Text_1B4ECA, 4
+ setvar 0x407b, 1
+ clearflag 855
+ clearflag 856
+ clearflag 816
+ clearflag 973
+ setvar 0x405e, 1
+ clearflag 944
+ clearflag 945
+ setflag 2090
+ setflag 854
+ setflag 129
+ setflag 967
+ setvar 0x40c6, 1
+ setvar 0x40a2, 1
+ setflag 828
+ setflag 829
+ setflag 831
+ setflag 859
+ setflag 946
+ warp Route128, 255, 38, 22
+ waitstate
+ releaseall
+ end
+
+SeafloorCavern_Room9_Movement_15DD36:: @ 815DD36
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+ .incbin "baserom.gba", 0x15dd3e, 0x3
+
+SeafloorCavern_Room9_Movement_15DD41:: @ 815DD41
+ step_left
+ step_14
+ step_end
+
+ .incbin "baserom.gba", 0x15dd44, 0x2
+
+SeafloorCavern_Room9_Movement_15DD46:: @ 815DD46
+ step_01
+ step_40
+ step_down
+ step_41
+ step_28
+ step_end
+
+SeafloorCavern_Room9_Movement_15DD4C:: @ 815DD4C
+ step_14
+ step_14
+ slow_step_down
+ step_14
+ step_14
+ step_14
+ slow_step_down
+ step_14
+ step_14
+ step_14
+ step_end
+
+SeafloorCavern_Room9_Movement_15DD57:: @ 815DD57
+ step_32
+ step_32
+ step_end
+
+SeafloorCavern_Room9_Movement_15DD5A:: @ 815DD5A
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_end
+
+SeafloorCavern_Room9_Movement_15DD60:: @ 815DD60
+ step_right
+ step_right
+ step_end
+
+SeafloorCavern_Room9_Movement_15DD63:: @ 815DD63
+ step_18
+ step_18
+ step_18
+ step_18
+ step_end
+
+SeafloorCavern_Room9_Movement_15DD68:: @ 815DD68
+ step_14
+ step_14
+ step_end
+
diff --git a/data/maps/scripts/SealedChamber_InnerRoom.s b/data/maps/scripts/SealedChamber_InnerRoom.s
new file mode 100644
index 000000000..42a6bfce7
--- /dev/null
+++ b/data/maps/scripts/SealedChamber_InnerRoom.s
@@ -0,0 +1,89 @@
+SealedChamber_InnerRoom_MapScripts:: @ 815F1E7
+ .byte 0
+
+SealedChamber_InnerRoom_EventScript_15F1E8:: @ 815F1E8
+ lockall
+ braillemsg SealedChamber_InnerRoom_Braille_1C53C1
+ waitbutton
+ hidebox 0, 0, 29, 19
+ checkflag 228
+ jumpeq SealedChamber_InnerRoom_EventScript_15F247
+ specialval RESULT, 279
+ compare RESULT, 0
+ jumpeq SealedChamber_InnerRoom_EventScript_15F247
+ fadeout 0
+ playsfx 49
+ special 305
+ waitstate
+ pause 40
+ special 315
+ waitstate
+ playsfx 8
+ pause 40
+ special 315
+ waitstate
+ playsfx 8
+ pause 40
+ special 315
+ waitstate
+ playsfx 8
+ pause 40
+ msgbox SealedChamber_InnerRoom_Text_1A138B, 4
+ closebutton
+ fadein 0
+ setflag 228
+ releaseall
+ end
+
+SealedChamber_InnerRoom_EventScript_15F247:: @ 815F247
+ releaseall
+ end
+
+SealedChamber_InnerRoom_EventScript_15F249:: @ 815F249
+ lockall
+ braillemsg SealedChamber_InnerRoom_Braille_1C53F2
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+SealedChamber_InnerRoom_EventScript_15F257:: @ 815F257
+ lockall
+ braillemsg SealedChamber_InnerRoom_Braille_1C5414
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+SealedChamber_InnerRoom_EventScript_15F265:: @ 815F265
+ lockall
+ braillemsg SealedChamber_InnerRoom_Braille_1C5435
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+SealedChamber_InnerRoom_EventScript_15F273:: @ 815F273
+ lockall
+ braillemsg SealedChamber_InnerRoom_Braille_1C545C
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+SealedChamber_InnerRoom_EventScript_15F281:: @ 815F281
+ lockall
+ braillemsg SealedChamber_InnerRoom_Braille_1C5470
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+SealedChamber_InnerRoom_EventScript_15F28F:: @ 815F28F
+ lockall
+ braillemsg SealedChamber_InnerRoom_Braille_1C549B
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
diff --git a/data/maps/scripts/SealedChamber_OuterRoom.s b/data/maps/scripts/SealedChamber_OuterRoom.s
new file mode 100644
index 000000000..ed7a5b6bd
--- /dev/null
+++ b/data/maps/scripts/SealedChamber_OuterRoom.s
@@ -0,0 +1,132 @@
+SealedChamber_OuterRoom_MapScripts:: @ 815F0C6
+ map_script 5, SealedChamber_OuterRoom_MapScript1_15F0D6
+ map_script 3, SealedChamber_OuterRoom_MapScript1_15F0E7
+ map_script 1, SealedChamber_OuterRoom_MapScript1_15F0EB
+ .byte 0
+
+SealedChamber_OuterRoom_MapScript1_15F0D6:: @ 815F0D6
+ warp4 Underwater_SealedChamber, 255, 12, 44
+ warp6 Underwater_SealedChamber, 255, 12, 44
+ end
+
+SealedChamber_OuterRoom_MapScript1_15F0E7:: @ 815F0E7
+ setflag 2140
+ end
+
+SealedChamber_OuterRoom_MapScript1_15F0EB:: @ 815F0EB
+ checkflag 2127
+ callif 0, SealedChamber_OuterRoom_EventScript_15F0F5
+ end
+
+SealedChamber_OuterRoom_EventScript_15F0F5:: @ 815F0F5
+ setmaptile 9, 1, 553, 1
+ setmaptile 10, 1, 553, 1
+ setmaptile 11, 1, 553, 1
+ setmaptile 9, 2, 565, 1
+ setmaptile 10, 2, 565, 1
+ setmaptile 11, 2, 565, 1
+ return
+
+SealedChamber_OuterRoom_EventScript_15F12C:: @ 815F12C
+ lockall
+ braillemsg SealedChamber_OuterRoom_Braille_1C534F
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+SealedChamber_OuterRoom_EventScript_15F13A:: @ 815F13A
+ lockall
+ braillemsg SealedChamber_OuterRoom_Braille_1C5359
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+SealedChamber_OuterRoom_EventScript_15F148:: @ 815F148
+ lockall
+ braillemsg SealedChamber_OuterRoom_Braille_1C5363
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+SealedChamber_OuterRoom_EventScript_15F156:: @ 815F156
+ lockall
+ braillemsg SealedChamber_OuterRoom_Braille_1C536D
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+SealedChamber_OuterRoom_EventScript_15F164:: @ 815F164
+ lockall
+ braillemsg SealedChamber_OuterRoom_Braille_1C5377
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+SealedChamber_OuterRoom_EventScript_15F172:: @ 815F172
+ lockall
+ braillemsg SealedChamber_OuterRoom_Braille_1C5381
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+SealedChamber_OuterRoom_EventScript_15F180:: @ 815F180
+ lockall
+ braillemsg SealedChamber_OuterRoom_Braille_1C538B
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+SealedChamber_OuterRoom_EventScript_15F18E:: @ 815F18E
+ lockall
+ braillemsg SealedChamber_OuterRoom_Braille_1C5396
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+SealedChamber_OuterRoom_EventScript_15F19C:: @ 815F19C
+ lockall
+ braillemsg SealedChamber_OuterRoom_Braille_1C539E
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+SealedChamber_OuterRoom_EventScript_15F1AA:: @ 815F1AA
+ lockall
+ braillemsg SealedChamber_OuterRoom_Braille_1C53A9
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+SealedChamber_OuterRoom_EventScript_15F1B8:: @ 815F1B8
+ lockall
+ checkflag 2127
+ jumpeq SealedChamber_OuterRoom_EventScript_15F1CF
+ braillemsg SealedChamber_OuterRoom_Braille_1C53B1
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
+SealedChamber_OuterRoom_EventScript_15F1CF:: @ 815F1CF
+ msgbox SealedChamber_OuterRoom_Text_1A13BE, 4
+ releaseall
+ end
+
+SealedChamber_OuterRoom_EventScript_15F1D9:: @ 815F1D9
+ lockall
+ braillemsg SealedChamber_OuterRoom_Braille_1C53B1
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
diff --git a/data/maps/scripts/SecretBase_BlueCave1.s b/data/maps/scripts/SecretBase_BlueCave1.s
new file mode 100644
index 000000000..bca6bee55
--- /dev/null
+++ b/data/maps/scripts/SecretBase_BlueCave1.s
@@ -0,0 +1 @@
+SecretBase_BlueCave1_MapScripts:: @ 815F337
diff --git a/data/maps/scripts/SecretBase_BlueCave2.s b/data/maps/scripts/SecretBase_BlueCave2.s
new file mode 100644
index 000000000..4fc579fb9
--- /dev/null
+++ b/data/maps/scripts/SecretBase_BlueCave2.s
@@ -0,0 +1 @@
+SecretBase_BlueCave2_MapScripts:: @ 815F337
diff --git a/data/maps/scripts/SecretBase_BlueCave3.s b/data/maps/scripts/SecretBase_BlueCave3.s
new file mode 100644
index 000000000..0a8199f19
--- /dev/null
+++ b/data/maps/scripts/SecretBase_BlueCave3.s
@@ -0,0 +1 @@
+SecretBase_BlueCave3_MapScripts:: @ 815F337
diff --git a/data/maps/scripts/SecretBase_BlueCave4.s b/data/maps/scripts/SecretBase_BlueCave4.s
new file mode 100644
index 000000000..72c1e9612
--- /dev/null
+++ b/data/maps/scripts/SecretBase_BlueCave4.s
@@ -0,0 +1 @@
+SecretBase_BlueCave4_MapScripts:: @ 815F337
diff --git a/data/maps/scripts/SecretBase_BrownCave1.s b/data/maps/scripts/SecretBase_BrownCave1.s
new file mode 100644
index 000000000..ddbf182e4
--- /dev/null
+++ b/data/maps/scripts/SecretBase_BrownCave1.s
@@ -0,0 +1 @@
+SecretBase_BrownCave1_MapScripts:: @ 815F337
diff --git a/data/maps/scripts/SecretBase_BrownCave2.s b/data/maps/scripts/SecretBase_BrownCave2.s
new file mode 100644
index 000000000..06dcb6335
--- /dev/null
+++ b/data/maps/scripts/SecretBase_BrownCave2.s
@@ -0,0 +1 @@
+SecretBase_BrownCave2_MapScripts:: @ 815F337
diff --git a/data/maps/scripts/SecretBase_BrownCave3.s b/data/maps/scripts/SecretBase_BrownCave3.s
new file mode 100644
index 000000000..a0a85dc11
--- /dev/null
+++ b/data/maps/scripts/SecretBase_BrownCave3.s
@@ -0,0 +1 @@
+SecretBase_BrownCave3_MapScripts:: @ 815F337
diff --git a/data/maps/scripts/SecretBase_BrownCave4.s b/data/maps/scripts/SecretBase_BrownCave4.s
new file mode 100644
index 000000000..12d931e9e
--- /dev/null
+++ b/data/maps/scripts/SecretBase_BrownCave4.s
@@ -0,0 +1 @@
+SecretBase_BrownCave4_MapScripts:: @ 815F337
diff --git a/data/maps/scripts/SecretBase_RedCave1.s b/data/maps/scripts/SecretBase_RedCave1.s
new file mode 100644
index 000000000..77b99daec
--- /dev/null
+++ b/data/maps/scripts/SecretBase_RedCave1.s
@@ -0,0 +1 @@
+SecretBase_RedCave1_MapScripts:: @ 815F337
diff --git a/data/maps/scripts/SecretBase_RedCave2.s b/data/maps/scripts/SecretBase_RedCave2.s
new file mode 100644
index 000000000..735d386fc
--- /dev/null
+++ b/data/maps/scripts/SecretBase_RedCave2.s
@@ -0,0 +1 @@
+SecretBase_RedCave2_MapScripts:: @ 815F337
diff --git a/data/maps/scripts/SecretBase_RedCave3.s b/data/maps/scripts/SecretBase_RedCave3.s
new file mode 100644
index 000000000..c9b72ca30
--- /dev/null
+++ b/data/maps/scripts/SecretBase_RedCave3.s
@@ -0,0 +1 @@
+SecretBase_RedCave3_MapScripts:: @ 815F337
diff --git a/data/maps/scripts/SecretBase_RedCave4.s b/data/maps/scripts/SecretBase_RedCave4.s
new file mode 100644
index 000000000..6d2402f03
--- /dev/null
+++ b/data/maps/scripts/SecretBase_RedCave4.s
@@ -0,0 +1 @@
+SecretBase_RedCave4_MapScripts:: @ 815F337
diff --git a/data/maps/scripts/SecretBase_Shrub1.s b/data/maps/scripts/SecretBase_Shrub1.s
new file mode 100644
index 000000000..79116a0cf
--- /dev/null
+++ b/data/maps/scripts/SecretBase_Shrub1.s
@@ -0,0 +1 @@
+SecretBase_Shrub1_MapScripts:: @ 815F337
diff --git a/data/maps/scripts/SecretBase_Shrub2.s b/data/maps/scripts/SecretBase_Shrub2.s
new file mode 100644
index 000000000..49835f7f3
--- /dev/null
+++ b/data/maps/scripts/SecretBase_Shrub2.s
@@ -0,0 +1 @@
+SecretBase_Shrub2_MapScripts:: @ 815F337
diff --git a/data/maps/scripts/SecretBase_Shrub3.s b/data/maps/scripts/SecretBase_Shrub3.s
new file mode 100644
index 000000000..0aeb7bdf9
--- /dev/null
+++ b/data/maps/scripts/SecretBase_Shrub3.s
@@ -0,0 +1 @@
+SecretBase_Shrub3_MapScripts:: @ 815F337
diff --git a/data/maps/scripts/SecretBase_Shrub4.s b/data/maps/scripts/SecretBase_Shrub4.s
new file mode 100644
index 000000000..f131b308d
--- /dev/null
+++ b/data/maps/scripts/SecretBase_Shrub4.s
@@ -0,0 +1 @@
+SecretBase_Shrub4_MapScripts:: @ 815F337
diff --git a/data/maps/scripts/SecretBase_Tree1.s b/data/maps/scripts/SecretBase_Tree1.s
new file mode 100644
index 000000000..7345c3bbb
--- /dev/null
+++ b/data/maps/scripts/SecretBase_Tree1.s
@@ -0,0 +1 @@
+SecretBase_Tree1_MapScripts:: @ 815F337
diff --git a/data/maps/scripts/SecretBase_Tree2.s b/data/maps/scripts/SecretBase_Tree2.s
new file mode 100644
index 000000000..0f2976a8c
--- /dev/null
+++ b/data/maps/scripts/SecretBase_Tree2.s
@@ -0,0 +1 @@
+SecretBase_Tree2_MapScripts:: @ 815F337
diff --git a/data/maps/scripts/SecretBase_Tree3.s b/data/maps/scripts/SecretBase_Tree3.s
new file mode 100644
index 000000000..cb80b0d25
--- /dev/null
+++ b/data/maps/scripts/SecretBase_Tree3.s
@@ -0,0 +1 @@
+SecretBase_Tree3_MapScripts:: @ 815F337
diff --git a/data/maps/scripts/SecretBase_Tree4.s b/data/maps/scripts/SecretBase_Tree4.s
new file mode 100644
index 000000000..0a6771740
--- /dev/null
+++ b/data/maps/scripts/SecretBase_Tree4.s
@@ -0,0 +1 @@
+SecretBase_Tree4_MapScripts:: @ 815F337
diff --git a/data/maps/scripts/SecretBase_YellowCave1.s b/data/maps/scripts/SecretBase_YellowCave1.s
new file mode 100644
index 000000000..b76a5f44e
--- /dev/null
+++ b/data/maps/scripts/SecretBase_YellowCave1.s
@@ -0,0 +1 @@
+SecretBase_YellowCave1_MapScripts:: @ 815F337
diff --git a/data/maps/scripts/SecretBase_YellowCave2.s b/data/maps/scripts/SecretBase_YellowCave2.s
new file mode 100644
index 000000000..0bc1fc354
--- /dev/null
+++ b/data/maps/scripts/SecretBase_YellowCave2.s
@@ -0,0 +1 @@
+SecretBase_YellowCave2_MapScripts:: @ 815F337
diff --git a/data/maps/scripts/SecretBase_YellowCave3.s b/data/maps/scripts/SecretBase_YellowCave3.s
new file mode 100644
index 000000000..137f04316
--- /dev/null
+++ b/data/maps/scripts/SecretBase_YellowCave3.s
@@ -0,0 +1 @@
+SecretBase_YellowCave3_MapScripts:: @ 815F337
diff --git a/data/maps/scripts/SecretBase_YellowCave4.s b/data/maps/scripts/SecretBase_YellowCave4.s
new file mode 100644
index 000000000..7f6ba9644
--- /dev/null
+++ b/data/maps/scripts/SecretBase_YellowCave4.s
@@ -0,0 +1,24 @@
+SecretBase_YellowCave4_MapScripts:: @ 815F337
+ map_script 4, SecretBase_RedCave1_MapScript2_15F358
+ map_script 3, SecretBase_RedCave1_MapScript1_15F34F
+ map_script 2, SecretBase_RedCave1_MapScript2_15F362
+ map_script 5, SecretBase_RedCave1_MapScript1_15F34C
+ .byte 0
+
+SecretBase_RedCave1_MapScript1_15F34C:: @ 815F34C
+ tileeffect 6
+ end
+
+SecretBase_RedCave1_MapScript1_15F34F:: @ 815F34F
+ call SecretBase_RedCave1_EventScript_1A2F3D
+ special 22
+ end
+
+SecretBase_RedCave1_MapScript2_15F358:: @ 815F358
+ map_script_2 0x4089, 0, SecretBase_RedCave1_EventScript_1A2F68
+ .2byte 0
+
+SecretBase_RedCave1_MapScript2_15F362:: @ 815F362
+ map_script_2 0x4097, 0, SecretBase_RedCave1_EventScript_1A2DDE
+ .2byte 0
+
diff --git a/data/maps/scripts/ShoalCave_HighTideEntranceRoom.s b/data/maps/scripts/ShoalCave_HighTideEntranceRoom.s
new file mode 100644
index 000000000..7e9c3cea2
--- /dev/null
+++ b/data/maps/scripts/ShoalCave_HighTideEntranceRoom.s
@@ -0,0 +1,3 @@
+ShoalCave_HighTideEntranceRoom_MapScripts:: @ 815E488
+ .byte 0
+
diff --git a/data/maps/scripts/ShoalCave_HighTideInnerRoom.s b/data/maps/scripts/ShoalCave_HighTideInnerRoom.s
new file mode 100644
index 000000000..ed506a50e
--- /dev/null
+++ b/data/maps/scripts/ShoalCave_HighTideInnerRoom.s
@@ -0,0 +1,3 @@
+ShoalCave_HighTideInnerRoom_MapScripts:: @ 815E489
+ .byte 0
+
diff --git a/data/maps/scripts/ShoalCave_LowTideEntranceRoom.s b/data/maps/scripts/ShoalCave_LowTideEntranceRoom.s
new file mode 100644
index 000000000..f44c79dfe
--- /dev/null
+++ b/data/maps/scripts/ShoalCave_LowTideEntranceRoom.s
@@ -0,0 +1,103 @@
+ShoalCave_LowTideEntranceRoom_MapScripts:: @ 815E057
+ map_script 3, ShoalCave_LowTideEntranceRoom_MapScript1_15E05D
+ .byte 0
+
+ShoalCave_LowTideEntranceRoom_MapScript1_15E05D:: @ 815E05D
+ special 210
+ checkflag 2106
+ jumpeq ShoalCave_LowTideEntranceRoom_EventScript_15E06E
+ jump ShoalCave_LowTideEntranceRoom_EventScript_15E072
+
+ShoalCave_LowTideEntranceRoom_EventScript_15E06E:: @ 815E06E
+ setmapfooter 169
+ end
+
+ShoalCave_LowTideEntranceRoom_EventScript_15E072:: @ 815E072
+ setmapfooter 165
+ end
+
+ShoalCave_LowTideEntranceRoom_EventScript_15E076:: @ 815E076
+ lock
+ faceplayer
+ checkdailyflags
+ checkflag 2143
+ callif 1, ShoalCave_LowTideEntranceRoom_EventScript_15E176
+ checkitem ITEM_SHOAL_SALT, 4
+ compare RESULT, 0
+ jumpeq ShoalCave_LowTideEntranceRoom_EventScript_15E138
+ checkitem ITEM_SHOAL_SHELL, 4
+ compare RESULT, 0
+ jumpeq ShoalCave_LowTideEntranceRoom_EventScript_15E138
+ msgbox ShoalCave_LowTideEntranceRoom_Text_1C6793, 5
+ compare RESULT, 0
+ jumpeq ShoalCave_LowTideEntranceRoom_EventScript_15E16C
+ checkitemspace ITEM_SHELL_BELL, 1
+ compare RESULT, 0
+ callif 1, ShoalCave_LowTideEntranceRoom_EventScript_15E106
+ compare RESULT, 2
+ jumpeq ShoalCave_LowTideEntranceRoom_EventScript_15E12E
+ msgbox ShoalCave_LowTideEntranceRoom_Text_1C6808, 4
+ removeitem ITEM_SHOAL_SALT, 4
+ removeitem ITEM_SHOAL_SHELL, 4
+ giveitem ITEM_SHELL_BELL
+ compare RESULT, 0
+ jumpeq ShoalCave_LowTideEntranceRoom_EventScript_1A029B
+ msgbox ShoalCave_LowTideEntranceRoom_Text_1C688E, 4
+ setflag 2
+ release
+ end
+
+ShoalCave_LowTideEntranceRoom_EventScript_15E106:: @ 815E106
+ checkitem ITEM_SHOAL_SALT, 5
+ compare RESULT, 1
+ jumpeq ShoalCave_LowTideEntranceRoom_EventScript_15E117
+ return
+
+ShoalCave_LowTideEntranceRoom_EventScript_15E117:: @ 815E117
+ checkitem ITEM_SHOAL_SHELL, 5
+ compare RESULT, 1
+ jumpeq ShoalCave_LowTideEntranceRoom_EventScript_15E128
+ return
+
+ShoalCave_LowTideEntranceRoom_EventScript_15E128:: @ 815E128
+ setvar RESULT, 2
+ return
+
+ShoalCave_LowTideEntranceRoom_EventScript_15E12E:: @ 815E12E
+ msgbox ShoalCave_LowTideEntranceRoom_Text_1C69F5, 4
+ release
+ end
+
+ShoalCave_LowTideEntranceRoom_EventScript_15E138:: @ 815E138
+ checkitem ITEM_SHOAL_SALT, 1
+ compare RESULT, 1
+ jumpeq ShoalCave_LowTideEntranceRoom_EventScript_15E162
+ checkitem ITEM_SHOAL_SHELL, 1
+ compare RESULT, 1
+ jumpeq ShoalCave_LowTideEntranceRoom_EventScript_15E162
+ msgbox ShoalCave_LowTideEntranceRoom_Text_1C6668, 4
+ release
+ end
+
+ShoalCave_LowTideEntranceRoom_EventScript_15E162:: @ 815E162
+ msgbox ShoalCave_LowTideEntranceRoom_Text_1C670D, 4
+ release
+ end
+
+ShoalCave_LowTideEntranceRoom_EventScript_15E16C:: @ 815E16C
+ msgbox ShoalCave_LowTideEntranceRoom_Text_1C6944, 4
+ release
+ end
+
+ShoalCave_LowTideEntranceRoom_EventScript_15E176:: @ 815E176
+ clearflag 952
+ clearflag 953
+ clearflag 954
+ clearflag 955
+ clearflag 956
+ clearflag 957
+ clearflag 958
+ clearflag 959
+ clearflag 2143
+ return
+
diff --git a/data/maps/scripts/ShoalCave_LowTideIceRoom.s b/data/maps/scripts/ShoalCave_LowTideIceRoom.s
new file mode 100644
index 000000000..1290d6efd
--- /dev/null
+++ b/data/maps/scripts/ShoalCave_LowTideIceRoom.s
@@ -0,0 +1,3 @@
+ShoalCave_LowTideIceRoom_MapScripts:: @ 815F300
+ .byte 0
+
diff --git a/data/maps/scripts/ShoalCave_LowTideInnerRoom.s b/data/maps/scripts/ShoalCave_LowTideInnerRoom.s
new file mode 100644
index 000000000..d00193e42
--- /dev/null
+++ b/data/maps/scripts/ShoalCave_LowTideInnerRoom.s
@@ -0,0 +1,158 @@
+ShoalCave_LowTideInnerRoom_MapScripts:: @ 815E192
+ map_script 1, ShoalCave_LowTideInnerRoom_MapScript1_15E1B3
+ map_script 3, ShoalCave_LowTideInnerRoom_MapScript1_15E19D
+ .byte 0
+
+ShoalCave_LowTideInnerRoom_MapScript1_15E19D:: @ 815E19D
+ checkflag 2106
+ jumpeq ShoalCave_LowTideInnerRoom_EventScript_15E1AB
+ jump ShoalCave_LowTideInnerRoom_EventScript_15E1AF
+
+ShoalCave_LowTideInnerRoom_EventScript_15E1AB:: @ 815E1AB
+ setmapfooter 170
+ end
+
+ShoalCave_LowTideInnerRoom_EventScript_15E1AF:: @ 815E1AF
+ setmapfooter 166
+ end
+
+ShoalCave_LowTideInnerRoom_MapScript1_15E1B3:: @ 815E1B3
+ call ShoalCave_LowTideInnerRoom_EventScript_15E1B9
+ end
+
+ShoalCave_LowTideInnerRoom_EventScript_15E1B9:: @ 815E1B9
+ checkflag 952
+ jumpeq ShoalCave_LowTideInnerRoom_EventScript_15E1DA
+ checkflag 2106
+ jumpeq ShoalCave_LowTideInnerRoom_EventScript_15E1DA
+ setmaptile 31, 8, 856, 1
+ jump ShoalCave_LowTideInnerRoom_EventScript_15E1DA
+ end
+
+ShoalCave_LowTideInnerRoom_EventScript_15E1DA:: @ 815E1DA
+ checkflag 953
+ jumpeq ShoalCave_LowTideInnerRoom_EventScript_15E1FB
+ checkflag 2106
+ jumpeq ShoalCave_LowTideInnerRoom_EventScript_15E1FB
+ setmaptile 14, 26, 856, 1
+ jump ShoalCave_LowTideInnerRoom_EventScript_15E1FB
+ end
+
+ShoalCave_LowTideInnerRoom_EventScript_15E1FB:: @ 815E1FB
+ checkflag 956
+ jumpeq ShoalCave_LowTideInnerRoom_EventScript_15E213
+ setmaptile 41, 20, 857, 1
+ jump ShoalCave_LowTideInnerRoom_EventScript_15E213
+ end
+
+ShoalCave_LowTideInnerRoom_EventScript_15E213:: @ 815E213
+ checkflag 957
+ jumpeq ShoalCave_LowTideInnerRoom_EventScript_15E22B
+ setmaptile 41, 10, 857, 1
+ jump ShoalCave_LowTideInnerRoom_EventScript_15E22B
+ end
+
+ShoalCave_LowTideInnerRoom_EventScript_15E22B:: @ 815E22B
+ checkflag 958
+ jumpeq ShoalCave_LowTideInnerRoom_EventScript_15E243
+ setmaptile 6, 9, 857, 1
+ jump ShoalCave_LowTideInnerRoom_EventScript_15E243
+ end
+
+ShoalCave_LowTideInnerRoom_EventScript_15E243:: @ 815E243
+ checkflag 959
+ jumpeq ShoalCave_LowTideInnerRoom_EventScript_15E256
+ setmaptile 16, 13, 857, 1
+ return
+
+ShoalCave_LowTideInnerRoom_EventScript_15E256:: @ 815E256
+ return
+
+ShoalCave_LowTideInnerRoom_EventScript_15E257:: @ 815E257
+ lockall
+ checkflag 956
+ jumpeq ShoalCave_LowTideInnerRoom_EventScript_15E289
+ giveitem ITEM_SHOAL_SHELL
+ compare RESULT, 0
+ jumpeq ShoalCave_LowTideInnerRoom_EventScript_1A029B
+ setmaptile 41, 20, 859, 0
+ special 142
+ setflag 956
+ releaseall
+ end
+
+ShoalCave_LowTideInnerRoom_EventScript_15E289:: @ 815E289
+ msgbox ShoalCave_LowTideInnerRoom_Text_1C69B8, 4
+ releaseall
+ end
+
+ShoalCave_LowTideInnerRoom_EventScript_15E293:: @ 815E293
+ lockall
+ checkflag 957
+ jumpeq ShoalCave_LowTideInnerRoom_EventScript_15E289
+ giveitem ITEM_SHOAL_SHELL
+ compare RESULT, 0
+ jumpeq ShoalCave_LowTideInnerRoom_EventScript_1A029B
+ setmaptile 41, 10, 859, 0
+ special 142
+ setflag 957
+ releaseall
+ end
+
+ShoalCave_LowTideInnerRoom_EventScript_15E2C5:: @ 815E2C5
+ lockall
+ checkflag 958
+ jumpeq ShoalCave_LowTideInnerRoom_EventScript_15E289
+ giveitem ITEM_SHOAL_SHELL
+ compare RESULT, 0
+ jumpeq ShoalCave_LowTideInnerRoom_EventScript_1A029B
+ setmaptile 6, 9, 859, 0
+ special 142
+ setflag 958
+ releaseall
+ end
+
+ShoalCave_LowTideInnerRoom_EventScript_15E2F7:: @ 815E2F7
+ lockall
+ checkflag 959
+ jumpeq ShoalCave_LowTideInnerRoom_EventScript_15E289
+ giveitem ITEM_SHOAL_SHELL
+ compare RESULT, 0
+ jumpeq ShoalCave_LowTideInnerRoom_EventScript_1A029B
+ setmaptile 16, 13, 859, 0
+ special 142
+ setflag 959
+ releaseall
+ end
+
+ShoalCave_LowTideInnerRoom_EventScript_15E329:: @ 815E329
+ lockall
+ checkflag 952
+ jumpeq ShoalCave_LowTideInnerRoom_EventScript_15E35B
+ giveitem ITEM_SHOAL_SALT
+ compare RESULT, 0
+ jumpeq ShoalCave_LowTideInnerRoom_EventScript_1A029B
+ setmaptile 31, 8, 858, 0
+ special 142
+ setflag 952
+ releaseall
+ end
+
+ShoalCave_LowTideInnerRoom_EventScript_15E35B:: @ 815E35B
+ msgbox ShoalCave_LowTideInnerRoom_Text_1C6979, 4
+ releaseall
+ end
+
+ShoalCave_LowTideInnerRoom_EventScript_15E365:: @ 815E365
+ lockall
+ checkflag 953
+ jumpeq ShoalCave_LowTideInnerRoom_EventScript_15E35B
+ giveitem ITEM_SHOAL_SALT
+ compare RESULT, 0
+ jumpeq ShoalCave_LowTideInnerRoom_EventScript_1A029B
+ setmaptile 14, 26, 858, 0
+ special 142
+ setflag 953
+ releaseall
+ end
+
diff --git a/data/maps/scripts/ShoalCave_LowTideLowerRoom.s b/data/maps/scripts/ShoalCave_LowTideLowerRoom.s
new file mode 100644
index 000000000..4ffed780e
--- /dev/null
+++ b/data/maps/scripts/ShoalCave_LowTideLowerRoom.s
@@ -0,0 +1,53 @@
+ShoalCave_LowTideLowerRoom_MapScripts:: @ 815E3F3
+ map_script 1, ShoalCave_LowTideLowerRoom_MapScript1_15E3F9
+ .byte 0
+
+ShoalCave_LowTideLowerRoom_MapScript1_15E3F9:: @ 815E3F9
+ call ShoalCave_LowTideLowerRoom_EventScript_15E3FF
+ end
+
+ShoalCave_LowTideLowerRoom_EventScript_15E3FF:: @ 815E3FF
+ checkflag 955
+ jumpeq ShoalCave_LowTideLowerRoom_EventScript_15E412
+ setmaptile 18, 2, 856, 1
+ return
+
+ShoalCave_LowTideLowerRoom_EventScript_15E412:: @ 815E412
+ return
+
+ShoalCave_LowTideLowerRoom_EventScript_15E413:: @ 815E413
+ lockall
+ checkflag 955
+ jumpeq ShoalCave_LowTideLowerRoom_EventScript_15E445
+ giveitem ITEM_SHOAL_SALT
+ compare RESULT, 0
+ jumpeq ShoalCave_LowTideLowerRoom_EventScript_1A029B
+ setmaptile 18, 2, 858, 0
+ special 142
+ setflag 955
+ releaseall
+ end
+
+ShoalCave_LowTideLowerRoom_EventScript_15E445:: @ 815E445
+ msgbox ShoalCave_LowTideLowerRoom_Text_1C6979, 4
+ releaseall
+ end
+
+ShoalCave_LowTideLowerRoom_EventScript_15E44F:: @ 815E44F
+ lock
+ faceplayer
+ checkflag 283
+ jumpeq ShoalCave_LowTideLowerRoom_EventScript_15E47E
+ msgbox ShoalCave_LowTideLowerRoom_Text_198200, 4
+ giveitem ITEM_FOCUS_BAND
+ compare RESULT, 0
+ jumpeq ShoalCave_LowTideLowerRoom_EventScript_1A029B
+ setflag 283
+ release
+ end
+
+ShoalCave_LowTideLowerRoom_EventScript_15E47E:: @ 815E47E
+ msgbox ShoalCave_LowTideLowerRoom_Text_1982A2, 4
+ release
+ end
+
diff --git a/data/maps/scripts/ShoalCave_LowTideStairsRoom.s b/data/maps/scripts/ShoalCave_LowTideStairsRoom.s
new file mode 100644
index 000000000..bf660eaa4
--- /dev/null
+++ b/data/maps/scripts/ShoalCave_LowTideStairsRoom.s
@@ -0,0 +1,35 @@
+ShoalCave_LowTideStairsRoom_MapScripts:: @ 815E397
+ map_script 1, ShoalCave_LowTideStairsRoom_MapScript1_15E39D
+ .byte 0
+
+ShoalCave_LowTideStairsRoom_MapScript1_15E39D:: @ 815E39D
+ call ShoalCave_LowTideStairsRoom_EventScript_15E3A3
+ end
+
+ShoalCave_LowTideStairsRoom_EventScript_15E3A3:: @ 815E3A3
+ checkflag 954
+ jumpeq ShoalCave_LowTideStairsRoom_EventScript_15E3B6
+ setmaptile 11, 11, 856, 1
+ return
+
+ShoalCave_LowTideStairsRoom_EventScript_15E3B6:: @ 815E3B6
+ return
+
+ShoalCave_LowTideStairsRoom_EventScript_15E3B7:: @ 815E3B7
+ lockall
+ checkflag 954
+ jumpeq ShoalCave_LowTideStairsRoom_EventScript_15E3E9
+ giveitem ITEM_SHOAL_SALT
+ compare RESULT, 0
+ jumpeq ShoalCave_LowTideStairsRoom_EventScript_1A029B
+ setmaptile 11, 11, 858, 0
+ special 142
+ setflag 954
+ releaseall
+ end
+
+ShoalCave_LowTideStairsRoom_EventScript_15E3E9:: @ 815E3E9
+ msgbox ShoalCave_LowTideStairsRoom_Text_1C6979, 4
+ releaseall
+ end
+
diff --git a/data/maps/scripts/SingleBattleColosseum.s b/data/maps/scripts/SingleBattleColosseum.s
new file mode 100644
index 000000000..270e4b670
--- /dev/null
+++ b/data/maps/scripts/SingleBattleColosseum.s
@@ -0,0 +1,3 @@
+SingleBattleColosseum_MapScripts:: @ 815F57C
+ .byte 0
+
diff --git a/data/maps/scripts/SkyPillar_1F.s b/data/maps/scripts/SkyPillar_1F.s
new file mode 100644
index 000000000..6afcecf08
--- /dev/null
+++ b/data/maps/scripts/SkyPillar_1F.s
@@ -0,0 +1,3 @@
+SkyPillar_1F_MapScripts:: @ 815F2C8
+ .byte 0
+
diff --git a/data/maps/scripts/SkyPillar_2F.s b/data/maps/scripts/SkyPillar_2F.s
new file mode 100644
index 000000000..7a473a795
--- /dev/null
+++ b/data/maps/scripts/SkyPillar_2F.s
@@ -0,0 +1,11 @@
+SkyPillar_2F_MapScripts:: @ 815F2C9
+ map_script 2, SkyPillar_2F_MapScript2_1C6BB5
+ map_script 3, SkyPillar_2F_MapScript1_1C6BBF
+ map_script 5, SkyPillar_2F_MapScript1_15F2D9
+ .byte 0
+
+SkyPillar_2F_MapScript1_15F2D9:: @ 815F2D9
+ tileeffect 7
+ warp5 SkyPillar_1F, 255, 0, 0
+ end
+
diff --git a/data/maps/scripts/SkyPillar_3F.s b/data/maps/scripts/SkyPillar_3F.s
new file mode 100644
index 000000000..6b0afa4d0
--- /dev/null
+++ b/data/maps/scripts/SkyPillar_3F.s
@@ -0,0 +1,3 @@
+SkyPillar_3F_MapScripts:: @ 815F2E4
+ .byte 0
+
diff --git a/data/maps/scripts/SkyPillar_4F.s b/data/maps/scripts/SkyPillar_4F.s
new file mode 100644
index 000000000..22128480c
--- /dev/null
+++ b/data/maps/scripts/SkyPillar_4F.s
@@ -0,0 +1,11 @@
+SkyPillar_4F_MapScripts:: @ 815F2E5
+ map_script 2, SkyPillar_4F_MapScript2_1C6BB5
+ map_script 3, SkyPillar_4F_MapScript1_1C6BBF
+ map_script 5, SkyPillar_4F_MapScript1_15F2F5
+ .byte 0
+
+SkyPillar_4F_MapScript1_15F2F5:: @ 815F2F5
+ tileeffect 7
+ warp5 SkyPillar_3F, 255, 0, 0
+ end
+
diff --git a/data/maps/scripts/SkyPillar_5F.s b/data/maps/scripts/SkyPillar_5F.s
new file mode 100644
index 000000000..cf0e60ecb
--- /dev/null
+++ b/data/maps/scripts/SkyPillar_5F.s
@@ -0,0 +1,3 @@
+SkyPillar_5F_MapScripts:: @ 815F301
+ .byte 0
+
diff --git a/data/maps/scripts/SkyPillar_Entrance.s b/data/maps/scripts/SkyPillar_Entrance.s
new file mode 100644
index 000000000..09eb538c9
--- /dev/null
+++ b/data/maps/scripts/SkyPillar_Entrance.s
@@ -0,0 +1,8 @@
+SkyPillar_Entrance_MapScripts:: @ 815F2BD
+ map_script 3, SkyPillar_Entrance_MapScript1_15F2C3
+ .byte 0
+
+SkyPillar_Entrance_MapScript1_15F2C3:: @ 815F2C3
+ setflag 2142
+ end
+
diff --git a/data/maps/scripts/SkyPillar_Outside.s b/data/maps/scripts/SkyPillar_Outside.s
new file mode 100644
index 000000000..338593de7
--- /dev/null
+++ b/data/maps/scripts/SkyPillar_Outside.s
@@ -0,0 +1,3 @@
+SkyPillar_Outside_MapScripts:: @ 815F2C7
+ .byte 0
+
diff --git a/data/maps/scripts/SkyPillar_Top.s b/data/maps/scripts/SkyPillar_Top.s
new file mode 100644
index 000000000..970725bf8
--- /dev/null
+++ b/data/maps/scripts/SkyPillar_Top.s
@@ -0,0 +1,29 @@
+SkyPillar_Top_MapScripts:: @ 815F302
+ map_script 5, SkyPillar_Top_MapScript1_15F308
+ .byte 0
+
+SkyPillar_Top_MapScript1_15F308:: @ 815F308
+ checkflag 2145
+ callif 1, SkyPillar_Top_EventScript_15F312
+ end
+
+SkyPillar_Top_EventScript_15F312:: @ 815F312
+ disappear LAST_TALKED
+ return
+
+SkyPillar_Top_EventScript_15F316:: @ 815F316
+ lock
+ faceplayer
+ setwildbattle SPECIES_RAYQUAZA, 70, ITEM_NONE
+ checksound
+ pokecry SPECIES_RAYQUAZA, 2
+ pause 40
+ waitpokecry
+ setflag 773
+ setflag 2145
+ special 312
+ waitstate
+ clearflag 2145
+ release
+ end
+
diff --git a/data/maps/scripts/SlateportCity.s b/data/maps/scripts/SlateportCity.s
new file mode 100644
index 000000000..47db3a3fa
--- /dev/null
+++ b/data/maps/scripts/SlateportCity.s
@@ -0,0 +1,616 @@
+SlateportCity_MapScripts:: @ 814BA36
+ map_script 3, SlateportCity_MapScript1_14BA3C
+ .byte 0
+
+SlateportCity_MapScript1_14BA3C:: @ 814BA3C
+ setvar 0x4010, 120
+ setvar 0x4011, 119
+ setvar 0x40aa, 0
+ call SlateportCity_EventScript_14BA5C
+ compare 0x4058, 1
+ callif 1, SlateportCity_EventScript_14BA68
+ end
+
+SlateportCity_EventScript_14BA5C:: @ 814BA5C
+ setflag 2071
+ setvar 0x4086, 0
+ setflag 803
+ return
+
+SlateportCity_EventScript_14BA68:: @ 814BA68
+ movespriteperm 11, 28, 13
+ movespriteperm 7, 25, 13
+ movespriteperm 3, 25, 14
+ movespriteperm 6, 27, 16
+ movespriteperm 8, 28, 16
+ movespriteperm 1, 29, 16
+ movespriteperm 2, 31, 14
+ spritebehave 11, 8
+ spritebehave 7, 18
+ spritebehave 3, 16
+ spritebehave 6, 7
+ spritebehave 8, 7
+ spritebehave 1, 7
+ spritebehave 2, 9
+ return
+
+SlateportCity_EventScript_14BAB6:: @ 814BAB6
+ lock
+ faceplayer
+ message SlateportCity_Text_164642
+ waittext
+ pokemart SlateportCity_Pokemart_14BAD0
+ msgbox SlateportCity_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x14bacd, 0x3
+
+SlateportCity_Pokemart_14BAD0:: @ 814BAD0
+ .2byte ITEM_PROTEIN
+ .2byte ITEM_IRON
+ .2byte ITEM_CARBOS
+ .2byte ITEM_ZINC
+ .2byte ITEM_CALCIUM
+ .2byte ITEM_HP_UP
+ .2byte ITEM_NONE
+ release
+ end
+
+SlateportCity_EventScript_14BAE0:: @ 814BAE0
+ lock
+ faceplayer
+ bufferfirstpoke 0
+ msgbox SlateportCity_Text_164682, 4
+ specialval RESULT, 292
+ compare RESULT, 1
+ callif 1, SlateportCity_EventScript_14BB35
+ specialval RESULT, 294
+ compare RESULT, 0
+ callif 1, SlateportCity_EventScript_14BB2B
+ msgbox SlateportCity_Text_164691, 4
+ fanfare 370
+ message SlateportCity_Text_1646DD
+ waitfanfare
+ waittext
+ msgbox SlateportCity_Text_1646FC, 4
+ special 293
+ release
+ end
+
+SlateportCity_EventScript_14BB2B:: @ 814BB2B
+ msgbox SlateportCity_Text_16471C, 4
+ release
+ end
+
+SlateportCity_EventScript_14BB35:: @ 814BB35
+ msgbox SlateportCity_Text_164775, 4
+ release
+ end
+
+SlateportCity_EventScript_14BB3F:: @ 814BB3F
+ lock
+ faceplayer
+ compare 0x4058, 1
+ callif 1, SlateportCity_EventScript_14BB56
+ msgbox SlateportCity_Text_164814, 4
+ release
+ end
+
+SlateportCity_EventScript_14BB56:: @ 814BB56
+ msgbox SlateportCity_Text_165376, 4
+ release
+ end
+
+SlateportCity_EventScript_14BB60:: @ 814BB60
+ lock
+ faceplayer
+ compare 0x4058, 1
+ callif 1, SlateportCity_EventScript_14BB77
+ msgbox SlateportCity_Text_1648A0, 4
+ release
+ end
+
+SlateportCity_EventScript_14BB77:: @ 814BB77
+ msgbox SlateportCity_Text_165222, 4
+ release
+ end
+
+SlateportCity_EventScript_14BB81:: @ 814BB81
+ lock
+ faceplayer
+ compare 0x4058, 1
+ callif 1, SlateportCity_EventScript_14BBA1
+ checkflag 96
+ jumpeq SlateportCity_EventScript_14BBAB
+ msgbox SlateportCity_Text_164937, 4
+ release
+ end
+
+SlateportCity_EventScript_14BBA1:: @ 814BBA1
+ msgbox SlateportCity_Text_1652A0, 4
+ release
+ end
+
+SlateportCity_EventScript_14BBAB:: @ 814BBAB
+ msgbox SlateportCity_Text_164995, 4
+ release
+ end
+
+SlateportCity_EventScript_14BBB5:: @ 814BBB5
+ lock
+ faceplayer
+ compare 0x4058, 1
+ callif 1, SlateportCity_EventScript_14BBCC
+ msgbox SlateportCity_Text_164A30, 4
+ release
+ end
+
+SlateportCity_EventScript_14BBCC:: @ 814BBCC
+ msgbox SlateportCity_Text_16530A, 4
+ release
+ end
+
+SlateportCity_EventScript_14BBD6:: @ 814BBD6
+ compare 0x4058, 1
+ jumpeq SlateportCity_EventScript_14BBEA
+ msgbox SlateportCity_Text_164AA9, 2
+ end
+
+SlateportCity_EventScript_14BBEA:: @ 814BBEA
+ msgbox SlateportCity_Text_1653D1, 3
+ end
+
+SlateportCity_EventScript_14BBF3:: @ 814BBF3
+ lock
+ faceplayer
+ compare 0x4058, 1
+ callif 1, SlateportCity_EventScript_14BC0A
+ msgbox SlateportCity_Text_164B34, 4
+ release
+ end
+
+SlateportCity_EventScript_14BC0A:: @ 814BC0A
+ msgbox SlateportCity_Text_1653F4, 4
+ release
+ end
+
+SlateportCity_EventScript_14BC14:: @ 814BC14
+ lock
+ faceplayer
+ checkflag 148
+ jumpeq SlateportCity_EventScript_14BC29
+ msgbox SlateportCity_Text_164BBF, 4
+ release
+ end
+
+SlateportCity_EventScript_14BC29:: @ 814BC29
+ msgbox SlateportCity_Text_164BEA, 4
+ release
+ end
+
+SlateportCity_EventScript_14BC33:: @ 814BC33
+ msgbox SlateportCity_Text_165856, 3
+ end
+
+SlateportCity_EventScript_14BC3C:: @ 814BC3C
+ lockall
+ checkflag 2052
+ jumpeq SlateportCity_EventScript_14BC63
+ checkflag 2061
+ jumpeq SlateportCity_EventScript_14BC59
+ msgbox SlateportCity_Text_1658A0, 4
+ releaseall
+ end
+
+SlateportCity_EventScript_14BC59:: @ 814BC59
+ msgbox SlateportCity_Text_1658E8, 4
+ releaseall
+ end
+
+SlateportCity_EventScript_14BC63:: @ 814BC63
+ msgbox SlateportCity_Text_165952, 4
+ releaseall
+ end
+
+SlateportCity_EventScript_14BC6D:: @ 814BC6D
+ msgbox SlateportCity_Text_1659B3, 3
+ end
+
+SlateportCity_EventScript_14BC76:: @ 814BC76
+ msgbox SlateportCity_Text_1659E3, 3
+ end
+
+SlateportCity_EventScript_14BC7F:: @ 814BC7F
+ msgbox SlateportCity_Text_165A17, 3
+ end
+
+SlateportCity_EventScript_14BC88:: @ 814BC88
+ msgbox SlateportCity_Text_165A57, 3
+ end
+
+SlateportCity_EventScript_14BC91:: @ 814BC91
+ lockall
+ checkflag 2052
+ jumpeq SlateportCity_EventScript_14BCA5
+ msgbox SlateportCity_Text_165A8B, 4
+ releaseall
+ end
+
+SlateportCity_EventScript_14BCA5:: @ 814BCA5
+ msgbox SlateportCity_Text_165B02, 4
+ releaseall
+ end
+
+SlateportCity_EventScript_14BCAF:: @ 814BCAF
+ msgbox SlateportCity_Text_165B48, 3
+ end
+
+SlateportCity_EventScript_14BCB8:: @ 814BCB8
+ lock
+ faceplayer
+ compare 0x4058, 1
+ callif 1, SlateportCity_EventScript_14BCCF
+ msgbox SlateportCity_Text_164F9E, 4
+ release
+ end
+
+SlateportCity_EventScript_14BCCF:: @ 814BCCF
+ msgbox SlateportCity_Text_164F9E, 4
+ release
+ end
+
+SlateportCity_EventScript_14BCD9:: @ 814BCD9
+ msgbox SlateportCity_Text_164FFC, 2
+ end
+
+SlateportCity_EventScript_14BCE2:: @ 814BCE2
+ msgbox SlateportCity_Text_164E85, 2
+ end
+
+SlateportCity_EventScript_14BCEB:: @ 814BCEB
+ msgbox SlateportCity_Text_164EDB, 2
+ end
+
+SlateportCity_EventScript_14BCF4:: @ 814BCF4
+ msgbox SlateportCity_Text_164F62, 2
+ end
+
+SlateportCity_EventScript_14BCFD:: @ 814BCFD
+ msgbox SlateportCity_Text_16507C, 2
+ end
+
+SlateportCity_EventScript_14BD06:: @ 814BD06
+ lock
+ faceplayer
+ msgbox SlateportCity_Text_1650F1, 5
+ compare RESULT, 1
+ callif 1, SlateportCity_EventScript_14BD28
+ compare RESULT, 0
+ callif 1, SlateportCity_EventScript_14BD31
+ release
+ end
+
+SlateportCity_EventScript_14BD28:: @ 814BD28
+ msgbox SlateportCity_Text_16511E, 4
+ return
+
+SlateportCity_EventScript_14BD31:: @ 814BD31
+ msgbox SlateportCity_Text_1651A1, 4
+ return
+
+SlateportCity_EventScript_14BD3A:: @ 814BD3A
+ lock
+ faceplayer
+ msgbox SlateportCity_Text_164C64, 4
+ closebutton
+ move 5, SlateportCity_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+SlateportCity_EventScript_14BD51:: @ 814BD51
+ lock
+ faceplayer
+ msgbox SlateportCity_Text_164C9F, 4
+ closebutton
+ move 19, SlateportCity_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+SlateportCity_EventScript_14BD68:: @ 814BD68
+ lock
+ faceplayer
+ msgbox SlateportCity_Text_164CE8, 4
+ closebutton
+ move 20, SlateportCity_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+SlateportCity_EventScript_14BD7F:: @ 814BD7F
+ lock
+ faceplayer
+ msgbox SlateportCity_Text_164D2B, 4
+ closebutton
+ move 27, SlateportCity_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+SlateportCity_EventScript_14BD96:: @ 814BD96
+ lock
+ faceplayer
+ msgbox SlateportCity_Text_164D92, 4
+ closebutton
+ move 28, SlateportCity_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+SlateportCity_EventScript_14BDAD:: @ 814BDAD
+ lock
+ faceplayer
+ msgbox SlateportCity_Text_164DD5, 4
+ closebutton
+ move 29, SlateportCity_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+SlateportCity_EventScript_14BDC4:: @ 814BDC4
+ lock
+ faceplayer
+ msgbox SlateportCity_Text_164DF4, 4
+ closebutton
+ move 30, SlateportCity_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+SlateportCity_EventScript_14BDDB:: @ 814BDDB
+ lock
+ faceplayer
+ msgbox SlateportCity_Text_164E46, 4
+ closebutton
+ move 31, SlateportCity_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+SlateportCity_EventScript_14BDF2:: @ 814BDF2
+ lock
+ faceplayer
+ message SlateportCity_Text_1A0BE4
+ waittext
+ pokemartdecor SlateportCity_PokemartDecor_14BE0C
+ msgbox SlateportCity_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x14be09, 0x3
+
+SlateportCity_PokemartDecor_14BE0C:: @ 814BE0C
+ .2byte 95
+ .2byte 78
+ .2byte 96
+ .2byte 0
+ release
+ end
+
+SlateportCity_EventScript_14BE16:: @ 814BE16
+ msgbox SlateportCity_Text_1A116E, 4
+ release
+ end
+
+SlateportCity_EventScript_14BE20:: @ 814BE20
+ lock
+ faceplayer
+ checkflag 96
+ jumpif 0, SlateportCity_EventScript_14BE16
+ message SlateportCity_Text_1A0BE4
+ waittext
+ pokemartdecor SlateportCity_PokemartDecor_14BE40
+ msgbox SlateportCity_Text_1A0C02, 4
+ release
+ end
+
+SlateportCity_PokemartDecor_14BE40:: @ 814BE40
+ .2byte 25
+ .2byte 27
+ .2byte 26
+ .2byte 28
+ .2byte 29
+ .2byte 30
+ .2byte 51
+ .2byte 52
+ .2byte 53
+ .2byte 54
+ .2byte 55
+ .2byte 56
+ .2byte 57
+ .2byte 58
+ .2byte 0
+ release
+ end
+
+ .incbin "baserom.gba", 0x14be60, 0x3a
+
+SlateportCity_EventScript_14BE9A:: @ 814BE9A
+ lock
+ faceplayer
+ message SlateportCity_Text_1A0BE4
+ waittext
+ pokemart SlateportCity_Pokemart_14BEB4
+ msgbox SlateportCity_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x14beb1, 0x3
+
+SlateportCity_Pokemart_14BEB4:: @ 814BEB4
+ .2byte ITEM_TM10
+ .2byte ITEM_TM43
+ .2byte ITEM_NONE
+ release
+ end
+
+SlateportCity_EventScript_14BEBC:: @ 814BEBC
+ lockall
+ msgbox SlateportCity_Text_165498, 4
+ msgbox SlateportCity_Text_1654E0, 4
+ closebutton
+ move 10, SlateportCity_Movement_1A0843
+ waitmove 0
+ pause 10
+ move 9, SlateportCity_Movement_1A0845
+ waitmove 0
+ pause 25
+ move 11, SlateportCity_Movement_14C000
+ move 255, SlateportCity_Movement_14C00E
+ move 10, SlateportCity_Movement_14BFDD
+ move 9, SlateportCity_Movement_14BFEA
+ waitmove 0
+ disappear 10
+ disappear 9
+ msgbox SlateportCity_Text_16558D, 4
+ move 11, SlateportCity_Movement_1A0841
+ waitmove 0
+ msgbox SlateportCity_Text_1655E7, 4
+ playmusic 441, 0
+ msgbox SlateportCity_Text_1656BC, 4
+ move 6, SlateportCity_Movement_1A083F
+ move 1, SlateportCity_Movement_1A083F
+ move 7, SlateportCity_Movement_14BFCD
+ move 3, SlateportCity_Movement_1A0831
+ move 2, SlateportCity_Movement_14BFD5
+ waitmove 0
+ move 11, SlateportCity_Movement_1A0845
+ waitmove 0
+ msgbox SlateportCity_Text_16578F, 4
+ playsfx 21
+ move 11, SlateportCity_Movement_1A0833
+ waitmove 0
+ move 11, SlateportCity_Movement_1A0835
+ waitmove 0
+ msgbox SlateportCity_Text_1657FA, 4
+ move 11, SlateportCity_Movement_1A0839
+ waitmove 0
+ msgbox SlateportCity_Text_16583A, 4
+ closebutton
+ move 11, SlateportCity_Movement_14BFFB
+ move 255, SlateportCity_Movement_14C008
+ waitmove 0
+ disappear 11
+ clearflag 841
+ clearflag 848
+ clearflag 845
+ clearflag 846
+ setvar 0x4058, 2
+ warp SlateportCity_Harbor, 255, 11, 14
+ waitstate
+ releaseall
+ end
+
+SlateportCity_Movement_14BFCD:: @ 814BFCD
+ step_14
+ step_14
+ step_57
+ step_28
+ step_14
+ step_14
+ step_27
+ step_end
+
+SlateportCity_Movement_14BFD5:: @ 814BFD5
+ step_57
+ step_26
+ step_14
+ step_25
+ step_14
+ step_14
+ step_27
+ step_end
+
+SlateportCity_Movement_14BFDD:: @ 814BFDD
+ step_14
+ step_left
+ step_left
+ step_down
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_end
+
+SlateportCity_Movement_14BFEA:: @ 814BFEA
+ step_down
+ step_left
+ step_left
+ step_left
+ step_down
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_end
+
+ .incbin "baserom.gba", 0x14bff8, 0x3
+
+SlateportCity_Movement_14BFFB:: @ 814BFFB
+ step_right
+ step_up
+ step_up
+ step_54
+ step_end
+
+SlateportCity_Movement_14C000:: @ 814C000
+ step_14
+ step_14
+ step_14
+ step_14
+ step_14
+ step_down
+ step_left
+ step_end
+
+SlateportCity_Movement_14C008:: @ 814C008
+ step_28
+ step_14
+ step_14
+ step_right
+ step_up
+ step_end
+
+SlateportCity_Movement_14C00E:: @ 814C00E
+ step_14
+ step_14
+ step_14
+ step_14
+ step_14
+ step_14
+ step_14
+ step_25
+ step_end
+
+SlateportCity_EventScript_14C017:: @ 814C017
+ msgbox SlateportCity_Text_165425, 3
+ end
+
+SlateportCity_EventScript_14C020:: @ 814C020
+ msgbox SlateportCity_Text_165458, 3
+ end
+
+SlateportCity_EventScript_14C029:: @ 814C029
+ msgbox SlateportCity_Text_1647A7, 2
+ end
+
diff --git a/data/maps/scripts/SlateportCity_ContestHall.s b/data/maps/scripts/SlateportCity_ContestHall.s
new file mode 100644
index 000000000..2e33c1ec5
--- /dev/null
+++ b/data/maps/scripts/SlateportCity_ContestHall.s
@@ -0,0 +1,114 @@
+SlateportCity_ContestHall_MapScripts:: @ 815554B
+ .byte 0
+
+SlateportCity_ContestHall_EventScript_15554C:: @ 815554C
+ msgbox SlateportCity_ContestHall_Text_17CB71, 2
+ end
+
+SlateportCity_ContestHall_EventScript_155555:: @ 8155555
+ msgbox SlateportCity_ContestHall_Text_17CC80, 2
+ end
+
+SlateportCity_ContestHall_EventScript_15555E:: @ 815555E
+ lock
+ faceplayer
+ checkflag 265
+ jumpeq SlateportCity_ContestHall_EventScript_155595
+ msgbox SlateportCity_ContestHall_Text_17CCE2, 4
+ giveitem ITEM_TM41
+ compare RESULT, 0
+ jumpeq SlateportCity_ContestHall_EventScript_1A029B
+ setflag 265
+ msgbox SlateportCity_ContestHall_Text_17CE28, 4
+ release
+ end
+
+SlateportCity_ContestHall_EventScript_155595:: @ 8155595
+ msgbox SlateportCity_ContestHall_Text_17CE28, 4
+ release
+ end
+
+SlateportCity_ContestHall_EventScript_15559F:: @ 815559F
+ msgbox SlateportCity_ContestHall_Text_17CEF3, 2
+ lockall
+ move 3, SlateportCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+SlateportCity_ContestHall_EventScript_1555B4:: @ 81555B4
+ msgbox SlateportCity_ContestHall_Text_17CFA7, 2
+ lockall
+ move 4, SlateportCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+SlateportCity_ContestHall_EventScript_1555C9:: @ 81555C9
+ msgbox SlateportCity_ContestHall_Text_17D054, 2
+ lockall
+ move 5, SlateportCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+SlateportCity_ContestHall_EventScript_1555DE:: @ 81555DE
+ msgbox SlateportCity_ContestHall_Text_17D07F, 2
+ lockall
+ move 6, SlateportCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+SlateportCity_ContestHall_EventScript_1555F3:: @ 81555F3
+ msgbox SlateportCity_ContestHall_Text_17D0F9, 2
+ lockall
+ move 7, SlateportCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+SlateportCity_ContestHall_EventScript_155608:: @ 8155608
+ msgbox SlateportCity_ContestHall_Text_17D222, 2
+ lockall
+ move 8, SlateportCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+SlateportCity_ContestHall_EventScript_15561D:: @ 815561D
+ msgbox SlateportCity_ContestHall_Text_17D39A, 2
+ lockall
+ move 9, SlateportCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+SlateportCity_ContestHall_EventScript_155632:: @ 8155632
+ msgbox SlateportCity_ContestHall_Text_17D3F0, 2
+ lockall
+ move 10, SlateportCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+SlateportCity_ContestHall_EventScript_155647:: @ 8155647
+ msgbox SlateportCity_ContestHall_Text_17D300, 2
+ lockall
+ move 12, SlateportCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+SlateportCity_ContestHall_EventScript_15565C:: @ 815565C
+ msgbox SlateportCity_ContestHall_Text_17D27F, 2
+ lockall
+ move 11, SlateportCity_ContestHall_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+SlateportCity_ContestHall_EventScript_155671:: @ 8155671
+ msgbox SlateportCity_ContestHall_Text_17D447, 3
+ end
+
diff --git a/data/maps/scripts/SlateportCity_ContestLobby.s b/data/maps/scripts/SlateportCity_ContestLobby.s
new file mode 100644
index 000000000..871f95f33
--- /dev/null
+++ b/data/maps/scripts/SlateportCity_ContestLobby.s
@@ -0,0 +1,130 @@
+SlateportCity_ContestLobby_MapScripts:: @ 8155411
+ map_script 3, SlateportCity_ContestLobby_MapScript1_155417
+ .byte 0
+
+SlateportCity_ContestLobby_MapScript1_155417:: @ 8155417
+ call SlateportCity_ContestLobby_EventScript_1AE188
+ end
+
+SlateportCity_ContestLobby_EventScript_15541D:: @ 815541D
+ setvar 0x800b, 7
+ setvar 0x8010, 2
+ call SlateportCity_ContestLobby_EventScript_1A4E92
+ call SlateportCity_ContestLobby_EventScript_155448
+ special 83
+ call SlateportCity_ContestLobby_EventScript_15FBDB
+ setvar 0x4088, 3
+ warp LinkContestRoom1, 255, 7, 5
+ waitstate
+ end
+
+SlateportCity_ContestLobby_EventScript_155448:: @ 8155448
+ lockall
+ move 1, SlateportCity_ContestLobby_Movement_1554CC
+ waitmove 0
+ playsfx 71
+ setmaptile 4, 2, 545, 1
+ setmaptile 4, 3, 609, 1
+ special 142
+ move 1, SlateportCity_ContestLobby_Movement_1554CF
+ waitmove 0
+ playsfx 71
+ setmaptile 4, 2, 721, 1
+ setmaptile 4, 3, 729, 1
+ special 142
+ pause 20
+ move 1, SlateportCity_ContestLobby_Movement_1554DC
+ waitmove 0
+ move 255, SlateportCity_ContestLobby_Movement_1554CA
+ waitmove 0
+ msgbox SlateportCity_ContestLobby_Text_1A6832, 4
+ closebutton
+ move 1, SlateportCity_ContestLobby_Movement_1554D3
+ move 255, SlateportCity_ContestLobby_Movement_1554C0
+ waitmove 0
+ releaseall
+ return
+
+SlateportCity_ContestLobby_Movement_1554C0:: @ 81554C0
+ step_left
+ step_left
+ step_left
+ step_left
+ step_up
+ step_up
+ step_up
+ step_13
+ step_54
+ step_end
+
+SlateportCity_ContestLobby_Movement_1554CA:: @ 81554CA
+ step_27
+ step_end
+
+SlateportCity_ContestLobby_Movement_1554CC:: @ 81554CC
+ step_left
+ step_25
+ step_end
+
+SlateportCity_ContestLobby_Movement_1554CF:: @ 81554CF
+ step_down
+ step_down
+ step_26
+ step_end
+
+SlateportCity_ContestLobby_Movement_1554D3:: @ 81554D3
+ step_left
+ step_left
+ step_left
+ step_up
+ step_up
+ step_up
+ step_13
+ step_54
+ step_end
+
+SlateportCity_ContestLobby_Movement_1554DC:: @ 81554DC
+ step_28
+ step_end
+
+SlateportCity_ContestLobby_EventScript_1554DE:: @ 81554DE
+ msgbox SlateportCity_ContestLobby_Text_17C937, 2
+ end
+
+SlateportCity_ContestLobby_EventScript_1554E7:: @ 81554E7
+ msgbox SlateportCity_ContestLobby_Text_17C9D5, 2
+ end
+
+SlateportCity_ContestLobby_EventScript_1554F0:: @ 81554F0
+ msgbox SlateportCity_ContestLobby_Text_17CAEC, 2
+ end
+
+SlateportCity_ContestLobby_EventScript_1554F9:: @ 81554F9
+ lockall
+ checkflag 95
+ jumpeq SlateportCity_ContestLobby_EventScript_155526
+ move 7, SlateportCity_ContestLobby_Movement_1A0839
+ waitmove 0
+ msgbox SlateportCity_ContestLobby_Text_17CA67, 4
+ giveitem ITEM_POKEBLOCK_CASE
+ setflag 95
+ releaseall
+ end
+
+SlateportCity_ContestLobby_EventScript_155526:: @ 8155526
+ msgbox SlateportCity_ContestLobby_Text_17CA88, 2
+ end
+
+SlateportCity_ContestLobby_EventScript_15552F:: @ 815552F
+ lockall
+ fadescreen 1
+ showcontestwinner 3
+ releaseall
+ end
+
+SlateportCity_ContestLobby_EventScript_155536:: @ 8155536
+ msgbox SlateportCity_ContestLobby_Text_1B7225, 2
+ end
+
+ .incbin "baserom.gba", 0x15553f, 0xc
+
diff --git a/data/maps/scripts/SlateportCity_Harbor.s b/data/maps/scripts/SlateportCity_Harbor.s
new file mode 100644
index 000000000..5d753d8d2
--- /dev/null
+++ b/data/maps/scripts/SlateportCity_Harbor.s
@@ -0,0 +1,371 @@
+SlateportCity_Harbor_MapScripts:: @ 8155F5D
+ map_script 3, SlateportCity_Harbor_MapScript1_155F63
+ .byte 0
+
+SlateportCity_Harbor_MapScript1_155F63:: @ 8155F63
+ warp6 SlateportCity, 255, 28, 13
+ setvar 0x4001, 0
+ compare 0x40a0, 1
+ callif 1, SlateportCity_Harbor_EventScript_155F89
+ checkflag 2052
+ callif 1, SlateportCity_Harbor_EventScript_155F85
+ end
+
+SlateportCity_Harbor_EventScript_155F85:: @ 8155F85
+ clearflag 860
+ return
+
+SlateportCity_Harbor_EventScript_155F89:: @ 8155F89
+ playmusicbattle 441
+ movespriteperm 4, 12, 13
+ spritebehave 4, 9
+ setflag 905
+ return
+
+SlateportCity_Harbor_EventScript_155F9B:: @ 8155F9B
+ lockall
+ setvar 0x8008, 0
+ jump SlateportCity_Harbor_EventScript_155FD5
+ end
+
+SlateportCity_Harbor_EventScript_155FA7:: @ 8155FA7
+ lockall
+ setvar 0x8008, 1
+ jump SlateportCity_Harbor_EventScript_155FD5
+ end
+
+SlateportCity_Harbor_EventScript_155FB3:: @ 8155FB3
+ lockall
+ setvar 0x8008, 2
+ jump SlateportCity_Harbor_EventScript_155FD5
+ end
+
+SlateportCity_Harbor_EventScript_155FBF:: @ 8155FBF
+ lockall
+ setvar 0x8008, 3
+ move 255, SlateportCity_Harbor_Movement_1560C2
+ waitmove 0
+ jump SlateportCity_Harbor_EventScript_155FD5
+ end
+
+SlateportCity_Harbor_EventScript_155FD5:: @ 8155FD5
+ move 7, SlateportCity_Harbor_Movement_1A0845
+ waitmove 0
+ move 255, SlateportCity_Harbor_Movement_1A0841
+ waitmove 0
+ msgbox SlateportCity_Harbor_Text_17FD7D, 4
+ closebutton
+ move 6, SlateportCity_Harbor_Movement_15609B
+ move 7, SlateportCity_Harbor_Movement_15609B
+ move 8, SlateportCity_Harbor_Movement_1560A5
+ waitmove 0
+ disappear 6
+ disappear 7
+ disappear 8
+ setvar 0x40a0, 2
+ compare 0x8008, 0
+ callif 1, SlateportCity_Harbor_EventScript_15605C
+ compare 0x8008, 1
+ callif 1, SlateportCity_Harbor_EventScript_156071
+ compare 0x8008, 2
+ callif 1, SlateportCity_Harbor_EventScript_156086
+ compare 0x8008, 3
+ callif 1, SlateportCity_Harbor_EventScript_156086
+ msgbox SlateportCity_Harbor_Text_17FE60, 4
+ closebutton
+ setflag 821
+ setflag 822
+ moveoffscreen 4
+ spritebehave 4, 10
+ releaseall
+ end
+
+SlateportCity_Harbor_EventScript_15605C:: @ 815605C
+ move 4, SlateportCity_Harbor_Movement_1560B3
+ waitmove 0
+ move 255, SlateportCity_Harbor_Movement_1A0845
+ waitmove 0
+ return
+
+SlateportCity_Harbor_EventScript_156071:: @ 8156071
+ move 4, SlateportCity_Harbor_Movement_1560B9
+ waitmove 0
+ move 255, SlateportCity_Harbor_Movement_1A0843
+ waitmove 0
+ return
+
+SlateportCity_Harbor_EventScript_156086:: @ 8156086
+ move 4, SlateportCity_Harbor_Movement_1560BE
+ waitmove 0
+ move 255, SlateportCity_Harbor_Movement_1A0843
+ waitmove 0
+ return
+
+SlateportCity_Harbor_Movement_15609B:: @ 815609B
+ step_14
+ step_14
+ step_43
+ step_54
+ step_end
+
+ .incbin "baserom.gba", 0x1560a0, 0x5
+
+SlateportCity_Harbor_Movement_1560A5:: @ 81560A5
+ step_14
+ step_14
+ step_14
+ step_14
+ step_right
+ step_right
+ step_right
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_18
+ step_end
+
+SlateportCity_Harbor_Movement_1560B3:: @ 81560B3
+ step_left
+ step_left
+ step_left
+ step_left
+ step_up
+ step_end
+
+SlateportCity_Harbor_Movement_1560B9:: @ 81560B9
+ step_left
+ step_left
+ step_up
+ step_left
+ step_end
+
+SlateportCity_Harbor_Movement_1560BE:: @ 81560BE
+ step_left
+ step_left
+ step_left
+ step_end
+
+SlateportCity_Harbor_Movement_1560C2:: @ 81560C2
+ step_up
+ step_end
+
+SlateportCity_Harbor_EventScript_1560C4:: @ 81560C4
+ lock
+ faceplayer
+ checkflag 2052
+ jumpeq SlateportCity_Harbor_EventScript_1560D9
+ msgbox SlateportCity_Harbor_Text_17FA0A, 4
+ release
+ end
+
+SlateportCity_Harbor_EventScript_1560D9:: @ 81560D9
+ msgbox SlateportCity_Harbor_Text_17FA73, 4
+ checkitem ITEM_SS_TICKET, 1
+ compare RESULT, 0
+ jumpeq SlateportCity_Harbor_EventScript_156135
+ message SlateportCity_Harbor_Text_17FB0A
+ waittext
+ jump SlateportCity_Harbor_EventScript_1560FD
+ end
+
+SlateportCity_Harbor_EventScript_1560FD:: @ 81560FD
+ multichoicedef 18, 6, 52, 2, 0
+ switch RESULT
+ case 0, SlateportCity_Harbor_EventScript_15613F
+ case 1, SlateportCity_Harbor_EventScript_156167
+ case 2, SlateportCity_Harbor_EventScript_1561DA
+ case 127, SlateportCity_Harbor_EventScript_1561DA
+ end
+
+SlateportCity_Harbor_EventScript_156135:: @ 8156135
+ msgbox SlateportCity_Harbor_Text_17FAAD, 4
+ release
+ end
+
+SlateportCity_Harbor_EventScript_15613F:: @ 815613F
+ msgbox SlateportCity_Harbor_Text_17FB81, 5
+ compare RESULT, 0
+ jumpeq SlateportCity_Harbor_EventScript_15618A
+ setvar 0x40b4, 1
+ call SlateportCity_Harbor_EventScript_156196
+ warp SSTidalCorridor, 255, 1, 10
+ waitstate
+ release
+ end
+
+SlateportCity_Harbor_EventScript_156167:: @ 8156167
+ msgbox SlateportCity_Harbor_Text_17FB9C, 5
+ compare RESULT, 0
+ jumpeq SlateportCity_Harbor_EventScript_15618A
+ call SlateportCity_Harbor_EventScript_156196
+ warp BattleTower_Outside, 255, 19, 23
+ waitstate
+ release
+ end
+
+SlateportCity_Harbor_EventScript_15618A:: @ 815618A
+ message SlateportCity_Harbor_Text_17FBE5
+ waittext
+ jump SlateportCity_Harbor_EventScript_1560FD
+ end
+
+SlateportCity_Harbor_EventScript_156196:: @ 8156196
+ msgbox SlateportCity_Harbor_Text_17FBB6, 4
+ closebutton
+ move LAST_TALKED, SlateportCity_Harbor_Movement_1A0841
+ waitmove 0
+ pause 30
+ spriteinvisible LAST_TALKED, 9, 8
+ compare FACING, 2
+ callif 1, SlateportCity_Harbor_EventScript_1561EF
+ compare FACING, 4
+ callif 1, SlateportCity_Harbor_EventScript_1561E4
+ pause 30
+ spriteinvisible 255, 0, 0
+ setvar 0x8004, 5
+ call SlateportCity_Harbor_EventScript_1A040E
+ return
+
+SlateportCity_Harbor_EventScript_1561DA:: @ 81561DA
+ msgbox SlateportCity_Harbor_Text_17FB5F, 4
+ release
+ end
+
+SlateportCity_Harbor_EventScript_1561E4:: @ 81561E4
+ move 255, SlateportCity_Harbor_Movement_1561FA
+ waitmove 0
+ return
+
+SlateportCity_Harbor_EventScript_1561EF:: @ 81561EF
+ move 255, SlateportCity_Harbor_Movement_1561FD
+ waitmove 0
+ return
+
+SlateportCity_Harbor_Movement_1561FA:: @ 81561FA
+ step_right
+ step_26
+ step_end
+
+SlateportCity_Harbor_Movement_1561FD:: @ 81561FD
+ step_up
+ step_end
+
+SlateportCity_Harbor_EventScript_1561FF:: @ 81561FF
+ msgbox SlateportCity_Harbor_Text_17FC07, 2
+ end
+
+SlateportCity_Harbor_EventScript_156208:: @ 8156208
+ msgbox SlateportCity_Harbor_Text_17FC7C, 2
+ end
+
+SlateportCity_Harbor_EventScript_156211:: @ 8156211
+ lock
+ faceplayer
+ checkflag 2061
+ jumpeq SlateportCity_Harbor_EventScript_15626F
+ checkflag 271
+ jumpeq SlateportCity_Harbor_EventScript_156265
+ checkflag 112
+ jumpeq SlateportCity_Harbor_EventScript_156258
+ compare 0x40a0, 2
+ jumpeq SlateportCity_Harbor_EventScript_15624E
+ msgbox SlateportCity_Harbor_Text_17FD1C, 4
+ closebutton
+ move LAST_TALKED, SlateportCity_Harbor_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+SlateportCity_Harbor_EventScript_15624E:: @ 815624E
+ msgbox SlateportCity_Harbor_Text_17FE60, 4
+ release
+ end
+
+SlateportCity_Harbor_EventScript_156258:: @ 8156258
+ setflag 271
+ msgbox SlateportCity_Harbor_Text_17FF35, 4
+ release
+ end
+
+SlateportCity_Harbor_EventScript_156265:: @ 8156265
+ msgbox SlateportCity_Harbor_Text_1800A0, 4
+ release
+ end
+
+SlateportCity_Harbor_EventScript_15626F:: @ 815626F
+ compare 0x4001, 1
+ jumpeq SlateportCity_Harbor_EventScript_156380
+ checkitem ITEM_SCANNER, 1
+ compare RESULT, 1
+ jumpeq SlateportCity_Harbor_EventScript_1562A7
+ checkflag 2052
+ jumpeq SlateportCity_Harbor_EventScript_15629D
+ msgbox SlateportCity_Harbor_Text_18017B, 4
+ release
+ end
+
+SlateportCity_Harbor_EventScript_15629D:: @ 815629D
+ msgbox SlateportCity_Harbor_Text_1801EA, 4
+ release
+ end
+
+SlateportCity_Harbor_EventScript_1562A7:: @ 81562A7
+ message SlateportCity_Harbor_Text_18028B
+ waittext
+ jump SlateportCity_Harbor_EventScript_1562B3
+ end
+
+SlateportCity_Harbor_EventScript_1562B3:: @ 81562B3
+ multichoice 0, 0, 46, 0
+ switch RESULT
+ case 0, SlateportCity_Harbor_EventScript_1562EA
+ case 1, SlateportCity_Harbor_EventScript_15632A
+ case 2, SlateportCity_Harbor_EventScript_15636A
+ case 127, SlateportCity_Harbor_EventScript_15636A
+ end
+
+SlateportCity_Harbor_EventScript_1562EA:: @ 81562EA
+ msgbox SlateportCity_Harbor_Text_1803DD, 5
+ compare RESULT, 0
+ jumpeq SlateportCity_Harbor_EventScript_156374
+ giveitem ITEM_DEEP_SEA_TOOTH
+ compare RESULT, 0
+ jumpeq SlateportCity_Harbor_EventScript_1A029B
+ removeitem ITEM_SCANNER, 1
+ msgbox SlateportCity_Harbor_Text_18046B, 4
+ setflag 294
+ jump SlateportCity_Harbor_EventScript_156380
+ end
+
+SlateportCity_Harbor_EventScript_15632A:: @ 815632A
+ msgbox SlateportCity_Harbor_Text_180412, 5
+ compare RESULT, 0
+ jumpeq SlateportCity_Harbor_EventScript_156374
+ giveitem ITEM_DEEP_SEA_SCALE
+ compare RESULT, 0
+ jumpeq SlateportCity_Harbor_EventScript_1A029B
+ removeitem ITEM_SCANNER, 1
+ msgbox SlateportCity_Harbor_Text_18046B, 4
+ setflag 294
+ jump SlateportCity_Harbor_EventScript_156380
+ end
+
+SlateportCity_Harbor_EventScript_15636A:: @ 815636A
+ msgbox SlateportCity_Harbor_Text_180360, 4
+ release
+ end
+
+SlateportCity_Harbor_EventScript_156374:: @ 8156374
+ message SlateportCity_Harbor_Text_180447
+ waittext
+ jump SlateportCity_Harbor_EventScript_1562B3
+ end
+
+SlateportCity_Harbor_EventScript_156380:: @ 8156380
+ setvar 0x4001, 1
+ msgbox SlateportCity_Harbor_Text_180491, 4
+ release
+ end
+
diff --git a/data/maps/scripts/SlateportCity_House1.s b/data/maps/scripts/SlateportCity_House1.s
new file mode 100644
index 000000000..bde33129c
--- /dev/null
+++ b/data/maps/scripts/SlateportCity_House1.s
@@ -0,0 +1,73 @@
+SlateportCity_House1_MapScripts:: @ 815567A
+ .byte 0
+
+SlateportCity_House1_EventScript_15567B:: @ 815567B
+ lock
+ faceplayer
+ msgbox SlateportCity_House1_Text_17D46A, 5
+ compare RESULT, 1
+ jumpeq SlateportCity_House1_EventScript_15569C
+ compare RESULT, 0
+ jumpeq SlateportCity_House1_EventScript_1556BF
+ end
+
+SlateportCity_House1_EventScript_15569C:: @ 815569C
+ msgbox SlateportCity_House1_Text_17D4DB, 4
+ special 159
+ waitstate
+ compare 0x8004, 255
+ jumpif 5, SlateportCity_House1_EventScript_1556C9
+ compare 0x8004, 255
+ jumpeq SlateportCity_House1_EventScript_1556BF
+ end
+
+SlateportCity_House1_EventScript_1556BF:: @ 81556BF
+ msgbox SlateportCity_House1_Text_17D61E, 4
+ release
+ end
+
+SlateportCity_House1_EventScript_1556C9:: @ 81556C9
+ specialval RESULT, 327
+ compare RESULT, 412
+ jumpeq SlateportCity_House1_EventScript_15571C
+ special 124
+ special 125
+ compare RESULT, 1
+ jumpeq SlateportCity_House1_EventScript_155726
+ specialval RESULT, 336
+ special 124
+ compare RESULT, 1
+ jumpeq SlateportCity_House1_EventScript_155726
+ msgbox SlateportCity_House1_Text_17D505, 5
+ compare RESULT, 1
+ jumpeq SlateportCity_House1_EventScript_155730
+ compare RESULT, 0
+ jumpeq SlateportCity_House1_EventScript_1556BF
+ end
+
+SlateportCity_House1_EventScript_15571C:: @ 815571C
+ msgbox SlateportCity_House1_Text_17D752, 4
+ release
+ end
+
+SlateportCity_House1_EventScript_155726:: @ 8155726
+ msgbox SlateportCity_House1_Text_17D6CC, 4
+ release
+ end
+
+SlateportCity_House1_EventScript_155730:: @ 8155730
+ msgbox SlateportCity_House1_Text_17D580, 4
+ call SlateportCity_House1_EventScript_1A0678
+ specialval RESULT, 123
+ special 124
+ compare RESULT, 1
+ jumpeq SlateportCity_House1_EventScript_15575A
+ msgbox SlateportCity_House1_Text_17D63A, 4
+ release
+ end
+
+SlateportCity_House1_EventScript_15575A:: @ 815575A
+ msgbox SlateportCity_House1_Text_17D5B0, 4
+ release
+ end
+
diff --git a/data/maps/scripts/SlateportCity_House2.s b/data/maps/scripts/SlateportCity_House2.s
new file mode 100644
index 000000000..87581ceaf
--- /dev/null
+++ b/data/maps/scripts/SlateportCity_House2.s
@@ -0,0 +1,22 @@
+SlateportCity_House2_MapScripts:: @ 815638F
+ .byte 0
+
+SlateportCity_House2_EventScript_156390:: @ 8156390
+ msgbox SlateportCity_House2_Text_1804CF, 2
+ end
+
+SlateportCity_House2_EventScript_156399:: @ 8156399
+ lock
+ faceplayer
+ checkitem ITEM_CONTEST_PASS, 1
+ compare RESULT, 1
+ jumpeq SlateportCity_House2_EventScript_1563B5
+ msgbox SlateportCity_House2_Text_180567, 4
+ release
+ end
+
+SlateportCity_House2_EventScript_1563B5:: @ 81563B5
+ msgbox SlateportCity_House2_Text_1805CD, 4
+ release
+ end
+
diff --git a/data/maps/scripts/SlateportCity_Mart.s b/data/maps/scripts/SlateportCity_Mart.s
new file mode 100644
index 000000000..f2c8f029b
--- /dev/null
+++ b/data/maps/scripts/SlateportCity_Mart.s
@@ -0,0 +1,35 @@
+SlateportCity_Mart_MapScripts:: @ 8156410
+ .byte 0
+
+SlateportCity_Mart_EventScript_156411:: @ 8156411
+ lock
+ faceplayer
+ message SlateportCity_Mart_Text_1A0BE4
+ waittext
+ pokemart SlateportCity_Mart_Pokemart_156428
+ msgbox SlateportCity_Mart_Text_1A0C02, 4
+ release
+ end
+
+SlateportCity_Mart_Pokemart_156428:: @ 8156428
+ .2byte ITEM_POKE_BALL
+ .2byte ITEM_GREAT_BALL
+ .2byte ITEM_POTION
+ .2byte ITEM_SUPER_POTION
+ .2byte ITEM_ANTIDOTE
+ .2byte ITEM_PARALYZE_HEAL
+ .2byte ITEM_ESCAPE_ROPE
+ .2byte ITEM_REPEL
+ .2byte ITEM_HARBOR_MAIL
+ .2byte ITEM_NONE
+ release
+ end
+
+SlateportCity_Mart_EventScript_15643E:: @ 815643E
+ msgbox SlateportCity_Mart_Text_180730, 2
+ end
+
+SlateportCity_Mart_EventScript_156447:: @ 8156447
+ msgbox SlateportCity_Mart_Text_18079D, 2
+ end
+
diff --git a/data/maps/scripts/SlateportCity_OceanicMuseum_1F.s b/data/maps/scripts/SlateportCity_OceanicMuseum_1F.s
new file mode 100644
index 000000000..fd31c7a98
--- /dev/null
+++ b/data/maps/scripts/SlateportCity_OceanicMuseum_1F.s
@@ -0,0 +1,214 @@
+SlateportCity_OceanicMuseum_1F_MapScripts:: @ 8155ACA
+ map_script 3, SlateportCity_OceanicMuseum_1F_MapScript1_155AD0
+ .byte 0
+
+SlateportCity_OceanicMuseum_1F_MapScript1_155AD0:: @ 8155AD0
+ setvar 0x4010, 120
+ setvar 0x4011, 119
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155ADB:: @ 8155ADB
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17E1DE, 2
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155AE4:: @ 8155AE4
+ lockall
+ move 255, SlateportCity_OceanicMuseum_1F_Movement_1A083F
+ waitmove 0
+ jump SlateportCity_OceanicMuseum_1F_EventScript_155B06
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155AF5:: @ 8155AF5
+ lockall
+ move 255, SlateportCity_OceanicMuseum_1F_Movement_1A0843
+ waitmove 0
+ jump SlateportCity_OceanicMuseum_1F_EventScript_155B06
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155B06:: @ 8155B06
+ showmoney 0, 0
+ snop
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17E18D, 5
+ compare RESULT, 1
+ jumpeq SlateportCity_OceanicMuseum_1F_EventScript_155B2D
+ closebutton
+ hidemoney 0, 0
+ move 255, SlateportCity_OceanicMuseum_1F_Movement_155B8D
+ waitmove 0
+ releaseall
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155B2D:: @ 8155B2D
+ checkmoney 0x32, 0
+ compare RESULT, 0
+ jumpeq SlateportCity_OceanicMuseum_1F_EventScript_155B5A
+ paymoney 0x32, 0
+ updatemoney 0, 0
+ snop
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17E1DE, 4
+ setvar 0x40aa, 1
+ hidemoney 0, 0
+ releaseall
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155B5A:: @ 8155B5A
+ checkflag 149
+ jumpif 0, SlateportCity_OceanicMuseum_1F_EventScript_155B7B
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17E1F5, 4
+ closebutton
+ hidemoney 0, 0
+ move 255, SlateportCity_OceanicMuseum_1F_Movement_155B8D
+ waitmove 0
+ releaseall
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155B7B:: @ 8155B7B
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17E22D, 4
+ setvar 0x40aa, 1
+ hidemoney 0, 0
+ releaseall
+ end
+
+SlateportCity_OceanicMuseum_1F_Movement_155B8D:: @ 8155B8D
+ step_down
+ step_end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155B8F:: @ 8155B8F
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17E2BB, 2
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155B98:: @ 8155B98
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17E2E3, 2
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155BA1:: @ 8155BA1
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17E338, 2
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155BAA:: @ 8155BAA
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17E36F, 3
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155BB3:: @ 8155BB3
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17E3A9, 2
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155BBC:: @ 8155BBC
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17E3ED, 2
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155BC5:: @ 8155BC5
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17E6C9, 3
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155BCE:: @ 8155BCE
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17E741, 3
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155BD7:: @ 8155BD7
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17E7C4, 3
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155BE0:: @ 8155BE0
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17E892, 3
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155BE9:: @ 8155BE9
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17E944, 3
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155BF2:: @ 8155BF2
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17EA19, 3
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155BFB:: @ 8155BFB
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17EB0D, 3
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155C04:: @ 8155C04
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17EBBC, 3
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155C0D:: @ 8155C0D
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17EC98, 3
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155C16:: @ 8155C16
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17E434, 2
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155C1F:: @ 8155C1F
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17E477, 2
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155C28:: @ 8155C28
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17E4D7, 2
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155C31:: @ 8155C31
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17E540, 2
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155C3A:: @ 8155C3A
+ lock
+ faceplayer
+ pause 8
+ playsfx 21
+ move 13, SlateportCity_OceanicMuseum_1F_Movement_1A0833
+ waitmove 0
+ move 13, SlateportCity_OceanicMuseum_1F_Movement_1A0835
+ waitmove 0
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17E582, 4
+ giveitem ITEM_TM46
+ compare RESULT, 0
+ jumpeq SlateportCity_OceanicMuseum_1F_EventScript_155CC2
+ setflag 269
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17E606, 4
+ closebutton
+ compare FACING, 2
+ jumpeq SlateportCity_OceanicMuseum_1F_EventScript_155C98
+ compare FACING, 2
+ jumpif 5, SlateportCity_OceanicMuseum_1F_EventScript_155CAD
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155C98:: @ 8155C98
+ move 13, SlateportCity_OceanicMuseum_1F_Movement_155CD3
+ waitmove 0
+ setflag 965
+ playsfx 9
+ disappear 13
+ release
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155CAD:: @ 8155CAD
+ move 13, SlateportCity_OceanicMuseum_1F_Movement_155CCC
+ waitmove 0
+ setflag 965
+ playsfx 9
+ disappear 13
+ release
+ end
+
+SlateportCity_OceanicMuseum_1F_EventScript_155CC2:: @ 8155CC2
+ msgbox SlateportCity_OceanicMuseum_1F_Text_17E695, 4
+ release
+ end
+
+SlateportCity_OceanicMuseum_1F_Movement_155CCC:: @ 8155CCC
+ step_00
+ step_15
+ step_15
+ step_15
+ step_15
+ step_13
+ step_end
+
+SlateportCity_OceanicMuseum_1F_Movement_155CD3:: @ 8155CD3
+ step_18
+ step_15
+ step_15
+ step_15
+ step_15
+ step_13
+ step_end
+
diff --git a/data/maps/scripts/SlateportCity_OceanicMuseum_2F.s b/data/maps/scripts/SlateportCity_OceanicMuseum_2F.s
new file mode 100644
index 000000000..de08120f5
--- /dev/null
+++ b/data/maps/scripts/SlateportCity_OceanicMuseum_2F.s
@@ -0,0 +1,269 @@
+SlateportCity_OceanicMuseum_2F_MapScripts:: @ 8155CDA
+ map_script 3, SlateportCity_OceanicMuseum_2F_MapScript1_155CE0
+ .byte 0
+
+SlateportCity_OceanicMuseum_2F_MapScript1_155CE0:: @ 8155CE0
+ call SlateportCity_OceanicMuseum_2F_EventScript_1A0196
+ end
+
+SlateportCity_OceanicMuseum_2F_EventScript_155CE6:: @ 8155CE6
+ lock
+ faceplayer
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17ECFD, 4
+ closebutton
+ playmusic 441, 1
+ reappear 3
+ move 3, SlateportCity_OceanicMuseum_2F_Movement_155EB4
+ waitmove 0
+ reappear 4
+ move 4, SlateportCity_OceanicMuseum_2F_Movement_155EC3
+ waitmove 0
+ move 3, SlateportCity_OceanicMuseum_2F_Movement_155EB8
+ move 4, SlateportCity_OceanicMuseum_2F_Movement_155EC5
+ waitmove 0
+ compare FACING, 1
+ callif 1, SlateportCity_OceanicMuseum_2F_EventScript_155E62
+ compare FACING, 4
+ callif 1, SlateportCity_OceanicMuseum_2F_EventScript_155E62
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17EDAE, 4
+ compare FACING, 4
+ callif 5, SlateportCity_OceanicMuseum_2F_EventScript_155E6D
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17EDD7, 4
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17EE01, 4
+ closebutton
+ move 4, SlateportCity_OceanicMuseum_2F_Movement_155EB2
+ waitmove 0
+ compare FACING, 1
+ callif 1, SlateportCity_OceanicMuseum_2F_EventScript_155E78
+ compare FACING, 3
+ callif 1, SlateportCity_OceanicMuseum_2F_EventScript_155E83
+ trainerbattle 3, 585, 0, SlateportCity_OceanicMuseum_2F_Text_17EE4E
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17EE66, 4
+ closebutton
+ move 4, SlateportCity_OceanicMuseum_2F_Movement_155EBF
+ waitmove 0
+ move 3, SlateportCity_OceanicMuseum_2F_Movement_155EB2
+ waitmove 0
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17EEA5, 4
+ playmusicbattle 0
+ trainerbattle 3, 586, 0, SlateportCity_OceanicMuseum_2F_Text_17EED6
+ move 3, SlateportCity_OceanicMuseum_2F_Movement_155EBF
+ waitmove 0
+ move 3, SlateportCity_OceanicMuseum_2F_Movement_1A0845
+ move 4, SlateportCity_OceanicMuseum_2F_Movement_1A0841
+ waitmove 0
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17EEEA, 4
+ closebutton
+ pause 35
+ reappear 2
+ move 2, SlateportCity_OceanicMuseum_2F_Movement_155EA8
+ move 4, SlateportCity_OceanicMuseum_2F_Movement_155ECE
+ waitmove 0
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17EF62, 4
+ move 2, SlateportCity_OceanicMuseum_2F_Movement_155EA6
+ waitmove 0
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17F17E, 4
+ closebutton
+ fadescreen 1
+ disappear 2
+ disappear 3
+ disappear 4
+ fadescreen 0
+ pause 30
+ setflag 883
+ move 255, SlateportCity_OceanicMuseum_2F_Movement_1A0843
+ waitmove 0
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17F352, 4
+ setvar 0x8004, 269
+ call SlateportCity_OceanicMuseum_2F_EventScript_1A067F
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17F433, 4
+ closebutton
+ move 1, SlateportCity_OceanicMuseum_2F_Movement_155E98
+ waitmove 0
+ playsfx 9
+ disappear 1
+ setflag 900
+ setflag 149
+ clearflag 947
+ setflag 949
+ release
+ end
+
+SlateportCity_OceanicMuseum_2F_EventScript_155E62:: @ 8155E62
+ move 255, SlateportCity_OceanicMuseum_2F_Movement_1A083F
+ waitmove 0
+ return
+
+SlateportCity_OceanicMuseum_2F_EventScript_155E6D:: @ 8155E6D
+ move 1, SlateportCity_OceanicMuseum_2F_Movement_1A083F
+ waitmove 0
+ return
+
+SlateportCity_OceanicMuseum_2F_EventScript_155E78:: @ 8155E78
+ move 255, SlateportCity_OceanicMuseum_2F_Movement_155E8E
+ waitmove 0
+ return
+
+SlateportCity_OceanicMuseum_2F_EventScript_155E83:: @ 8155E83
+ move 255, SlateportCity_OceanicMuseum_2F_Movement_155E92
+ waitmove 0
+ return
+
+SlateportCity_OceanicMuseum_2F_Movement_155E8E:: @ 8155E8E
+ step_left
+ step_down
+ step_27
+ step_end
+
+SlateportCity_OceanicMuseum_2F_Movement_155E92:: @ 8155E92
+ step_up
+ step_left
+ step_left
+ step_down
+ step_27
+ step_end
+
+SlateportCity_OceanicMuseum_2F_Movement_155E98:: @ 8155E98
+ step_up
+ step_left
+ step_left
+ step_left
+ step_left
+ step_left
+ step_up
+ step_up
+ step_left
+ step_left
+ step_up
+ step_up
+ step_13
+ step_end
+
+SlateportCity_OceanicMuseum_2F_Movement_155EA6:: @ 8155EA6
+ step_right
+ step_end
+
+SlateportCity_OceanicMuseum_2F_Movement_155EA8:: @ 8155EA8
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+SlateportCity_OceanicMuseum_2F_Movement_155EB2:: @ 8155EB2
+ step_right
+ step_end
+
+SlateportCity_OceanicMuseum_2F_Movement_155EB4:: @ 8155EB4
+ step_down
+ step_right
+ step_25
+ step_end
+
+SlateportCity_OceanicMuseum_2F_Movement_155EB8:: @ 8155EB8
+ step_down
+ step_down
+ step_down
+ step_right
+ step_right
+ step_right
+ step_end
+
+SlateportCity_OceanicMuseum_2F_Movement_155EBF:: @ 8155EBF
+ step_40
+ step_left
+ step_41
+ step_end
+
+SlateportCity_OceanicMuseum_2F_Movement_155EC3:: @ 8155EC3
+ step_down
+ step_end
+
+SlateportCity_OceanicMuseum_2F_Movement_155EC5:: @ 8155EC5
+ step_down
+ step_down
+ step_down
+ step_down
+ step_right
+ step_right
+ step_right
+ step_right
+ step_end
+
+SlateportCity_OceanicMuseum_2F_Movement_155ECE:: @ 8155ECE
+ step_14
+ step_14
+ step_14
+ step_14
+ step_14
+ step_14
+ step_14
+ step_14
+ step_13
+ step_15
+ step_26
+ step_end
+
+SlateportCity_OceanicMuseum_2F_EventScript_155EDA:: @ 8155EDA
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17F572, 3
+ end
+
+SlateportCity_OceanicMuseum_2F_EventScript_155EE3:: @ 8155EE3
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17F5E3, 3
+ end
+
+SlateportCity_OceanicMuseum_2F_EventScript_155EEC:: @ 8155EEC
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17F653, 3
+ end
+
+SlateportCity_OceanicMuseum_2F_EventScript_155EF5:: @ 8155EF5
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17F754, 3
+ end
+
+SlateportCity_OceanicMuseum_2F_EventScript_155EFE:: @ 8155EFE
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17F7BC, 3
+ end
+
+SlateportCity_OceanicMuseum_2F_EventScript_155F07:: @ 8155F07
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17F84E, 3
+ end
+
+SlateportCity_OceanicMuseum_2F_EventScript_155F10:: @ 8155F10
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17F8BC, 3
+ end
+
+SlateportCity_OceanicMuseum_2F_EventScript_155F19:: @ 8155F19
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17F918, 3
+ end
+
+SlateportCity_OceanicMuseum_2F_EventScript_155F22:: @ 8155F22
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17F975, 3
+ end
+
+SlateportCity_OceanicMuseum_2F_EventScript_155F2B:: @ 8155F2B
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17F9C7, 3
+ end
+
+SlateportCity_OceanicMuseum_2F_EventScript_155F34:: @ 8155F34
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17F4B6, 2
+ end
+
+SlateportCity_OceanicMuseum_2F_EventScript_155F3D:: @ 8155F3D
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17F50E, 2
+ end
+
+SlateportCity_OceanicMuseum_2F_EventScript_155F46:: @ 8155F46
+ lock
+ faceplayer
+ msgbox SlateportCity_OceanicMuseum_2F_Text_17F53B, 4
+ closebutton
+ move LAST_TALKED, SlateportCity_OceanicMuseum_2F_Movement_1A083D
+ waitmove 0
+ release
+ end
+
diff --git a/data/maps/scripts/SlateportCity_PokemonCenter_1F.s b/data/maps/scripts/SlateportCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..a8ef51f52
--- /dev/null
+++ b/data/maps/scripts/SlateportCity_PokemonCenter_1F.s
@@ -0,0 +1,25 @@
+SlateportCity_PokemonCenter_1F_MapScripts:: @ 81563BF
+ map_script 3, SlateportCity_PokemonCenter_1F_MapScript1_1563C5
+ .byte 0
+
+SlateportCity_PokemonCenter_1F_MapScript1_1563C5:: @ 81563C5
+ sethealplace 4
+ call SlateportCity_PokemonCenter_1F_EventScript_19FD1B
+ end
+
+SlateportCity_PokemonCenter_1F_EventScript_1563CE:: @ 81563CE
+ setvar 0x800b, 1
+ call SlateportCity_PokemonCenter_1F_EventScript_19FD5B
+ waittext
+ waitbutton
+ release
+ end
+
+SlateportCity_PokemonCenter_1F_EventScript_1563DC:: @ 81563DC
+ msgbox SlateportCity_PokemonCenter_1F_Text_180602, 2
+ end
+
+SlateportCity_PokemonCenter_1F_EventScript_1563E5:: @ 81563E5
+ msgbox SlateportCity_PokemonCenter_1F_Text_1806CB, 2
+ end
+
diff --git a/data/maps/scripts/SlateportCity_PokemonCenter_2F.s b/data/maps/scripts/SlateportCity_PokemonCenter_2F.s
new file mode 100644
index 000000000..1f5216d11
--- /dev/null
+++ b/data/maps/scripts/SlateportCity_PokemonCenter_2F.s
@@ -0,0 +1,18 @@
+SlateportCity_PokemonCenter_2F_MapScripts:: @ 81563EE
+ map_script 2, SlateportCity_PokemonCenter_2F_MapScript2_1A3D88
+ map_script 4, SlateportCity_PokemonCenter_2F_MapScript2_1A3D03
+ map_script 1, SlateportCity_PokemonCenter_2F_MapScript1_1A3D32
+ .byte 0
+
+SlateportCity_PokemonCenter_2F_EventScript_1563FE:: @ 81563FE
+ call SlateportCity_PokemonCenter_2F_EventScript_1A3EA6
+ end
+
+SlateportCity_PokemonCenter_2F_EventScript_156404:: @ 8156404
+ call SlateportCity_PokemonCenter_2F_EventScript_1A40CC
+ end
+
+SlateportCity_PokemonCenter_2F_EventScript_15640A:: @ 815640A
+ call SlateportCity_PokemonCenter_2F_EventScript_1A41FB
+ end
+
diff --git a/data/maps/scripts/SlateportCity_PokemonFanClub.s b/data/maps/scripts/SlateportCity_PokemonFanClub.s
new file mode 100644
index 000000000..ecaf833e8
--- /dev/null
+++ b/data/maps/scripts/SlateportCity_PokemonFanClub.s
@@ -0,0 +1,264 @@
+SlateportCity_PokemonFanClub_MapScripts:: @ 8155764
+ map_script 3, SlateportCity_PokemonFanClub_MapScript1_15576A
+ .byte 0
+
+SlateportCity_PokemonFanClub_MapScript1_15576A:: @ 815576A
+ end
+
+SlateportCity_PokemonFanClub_EventScript_15576B:: @ 815576B
+ lock
+ faceplayer
+ switch 0x40b7
+ case 0, SlateportCity_PokemonFanClub_EventScript_155795
+ case 1, SlateportCity_PokemonFanClub_EventScript_1557A8
+ case 2, SlateportCity_PokemonFanClub_EventScript_1557FE
+ release
+ end
+
+SlateportCity_PokemonFanClub_EventScript_155795:: @ 8155795
+ setvar 0x40b7, 1
+ msgbox SlateportCity_PokemonFanClub_Text_17D773, 4
+ jump SlateportCity_PokemonFanClub_EventScript_155808
+ end
+
+SlateportCity_PokemonFanClub_EventScript_1557A8:: @ 81557A8
+ setvar 0x4002, 0
+ checkflag 204
+ callif 1, SlateportCity_PokemonFanClub_EventScript_155893
+ checkflag 203
+ callif 1, SlateportCity_PokemonFanClub_EventScript_155893
+ checkflag 202
+ callif 1, SlateportCity_PokemonFanClub_EventScript_155893
+ checkflag 201
+ callif 1, SlateportCity_PokemonFanClub_EventScript_155893
+ checkflag 200
+ callif 1, SlateportCity_PokemonFanClub_EventScript_155893
+ compare 0x4002, 5
+ callif 1, SlateportCity_PokemonFanClub_EventScript_15588D
+ compare 0x40b7, 2
+ jumpeq SlateportCity_PokemonFanClub_EventScript_1557FE
+ msgbox SlateportCity_PokemonFanClub_Text_17DA14, 4
+ jump SlateportCity_PokemonFanClub_EventScript_155808
+ end
+
+SlateportCity_PokemonFanClub_EventScript_1557FE:: @ 81557FE
+ msgbox SlateportCity_PokemonFanClub_Text_17DDD5, 4
+ release
+ end
+
+SlateportCity_PokemonFanClub_EventScript_155808:: @ 8155808
+ msgbox SlateportCity_PokemonFanClub_Text_17DA49, 4
+ setvar 0x4001, 0
+ checkflag 204
+ callif 0, SlateportCity_PokemonFanClub_EventScript_1559FE
+ checkflag 203
+ callif 0, SlateportCity_PokemonFanClub_EventScript_1559E7
+ checkflag 202
+ callif 0, SlateportCity_PokemonFanClub_EventScript_1559D0
+ checkflag 201
+ callif 0, SlateportCity_PokemonFanClub_EventScript_1559B9
+ checkflag 200
+ callif 0, SlateportCity_PokemonFanClub_EventScript_1559A2
+ bufferfirstpoke 0
+ switch 0x4001
+ case 0, SlateportCity_PokemonFanClub_EventScript_155899
+ case 1, SlateportCity_PokemonFanClub_EventScript_1558A3
+ case 2, SlateportCity_PokemonFanClub_EventScript_1558D4
+ case 3, SlateportCity_PokemonFanClub_EventScript_155905
+ case 4, SlateportCity_PokemonFanClub_EventScript_155936
+ case 5, SlateportCity_PokemonFanClub_EventScript_155967
+ release
+ end
+
+SlateportCity_PokemonFanClub_EventScript_15588D:: @ 815588D
+ setvar 0x40b7, 2
+ return
+
+SlateportCity_PokemonFanClub_EventScript_155893:: @ 8155893
+ addvar 0x4002, 1
+ return
+
+SlateportCity_PokemonFanClub_EventScript_155899:: @ 8155899
+ msgbox SlateportCity_PokemonFanClub_Text_17DA5C, 4
+ release
+ end
+
+SlateportCity_PokemonFanClub_EventScript_1558A3:: @ 81558A3
+ checkitemspace ITEM_RED_SCARF, 1
+ compare RESULT, 0
+ jumpeq SlateportCity_PokemonFanClub_EventScript_155998
+ msgbox SlateportCity_PokemonFanClub_Text_17DB89, 4
+ setflag 200
+ giveitem ITEM_RED_SCARF
+ msgbox SlateportCity_PokemonFanClub_Text_17DC1B, 4
+ release
+ end
+
+SlateportCity_PokemonFanClub_EventScript_1558D4:: @ 81558D4
+ checkitemspace ITEM_BLUE_SCARF, 1
+ compare RESULT, 0
+ jumpeq SlateportCity_PokemonFanClub_EventScript_155998
+ msgbox SlateportCity_PokemonFanClub_Text_17DB89, 4
+ setflag 201
+ giveitem ITEM_BLUE_SCARF
+ msgbox SlateportCity_PokemonFanClub_Text_17DC74, 4
+ release
+ end
+
+SlateportCity_PokemonFanClub_EventScript_155905:: @ 8155905
+ checkitemspace ITEM_PINK_SCARF, 1
+ compare RESULT, 0
+ jumpeq SlateportCity_PokemonFanClub_EventScript_155998
+ msgbox SlateportCity_PokemonFanClub_Text_17DB89, 4
+ setflag 202
+ giveitem ITEM_PINK_SCARF
+ msgbox SlateportCity_PokemonFanClub_Text_17DCCB, 4
+ release
+ end
+
+SlateportCity_PokemonFanClub_EventScript_155936:: @ 8155936
+ checkitemspace ITEM_GREEN_SCARF, 1
+ compare RESULT, 0
+ jumpeq SlateportCity_PokemonFanClub_EventScript_155998
+ msgbox SlateportCity_PokemonFanClub_Text_17DB89, 4
+ setflag 203
+ giveitem ITEM_GREEN_SCARF
+ msgbox SlateportCity_PokemonFanClub_Text_17DD27, 4
+ release
+ end
+
+SlateportCity_PokemonFanClub_EventScript_155967:: @ 8155967
+ checkitemspace ITEM_YELLOW_SCARF, 1
+ compare RESULT, 0
+ jumpeq SlateportCity_PokemonFanClub_EventScript_155998
+ msgbox SlateportCity_PokemonFanClub_Text_17DB89, 4
+ setflag 204
+ giveitem ITEM_YELLOW_SCARF
+ msgbox SlateportCity_PokemonFanClub_Text_17DD78, 4
+ release
+ end
+
+SlateportCity_PokemonFanClub_EventScript_155998:: @ 8155998
+ msgbox SlateportCity_PokemonFanClub_Text_17DB0B, 4
+ release
+ end
+
+SlateportCity_PokemonFanClub_EventScript_1559A2:: @ 81559A2
+ specialval RESULT, 265
+ compare RESULT, 1
+ callif 1, SlateportCity_PokemonFanClub_EventScript_1559B3
+ return
+
+SlateportCity_PokemonFanClub_EventScript_1559B3:: @ 81559B3
+ setvar 0x4001, 1
+ return
+
+SlateportCity_PokemonFanClub_EventScript_1559B9:: @ 81559B9
+ specialval RESULT, 266
+ compare RESULT, 1
+ callif 1, SlateportCity_PokemonFanClub_EventScript_1559CA
+ return
+
+SlateportCity_PokemonFanClub_EventScript_1559CA:: @ 81559CA
+ setvar 0x4001, 2
+ return
+
+SlateportCity_PokemonFanClub_EventScript_1559D0:: @ 81559D0
+ specialval RESULT, 267
+ compare RESULT, 1
+ callif 1, SlateportCity_PokemonFanClub_EventScript_1559E1
+ return
+
+SlateportCity_PokemonFanClub_EventScript_1559E1:: @ 81559E1
+ setvar 0x4001, 3
+ return
+
+SlateportCity_PokemonFanClub_EventScript_1559E7:: @ 81559E7
+ specialval RESULT, 268
+ compare RESULT, 1
+ callif 1, SlateportCity_PokemonFanClub_EventScript_1559F8
+ return
+
+SlateportCity_PokemonFanClub_EventScript_1559F8:: @ 81559F8
+ setvar 0x4001, 4
+ return
+
+SlateportCity_PokemonFanClub_EventScript_1559FE:: @ 81559FE
+ specialval RESULT, 269
+ compare RESULT, 1
+ callif 1, SlateportCity_PokemonFanClub_EventScript_155A0F
+ return
+
+SlateportCity_PokemonFanClub_EventScript_155A0F:: @ 8155A0F
+ setvar 0x4001, 5
+ return
+
+SlateportCity_PokemonFanClub_EventScript_155A15:: @ 8155A15
+ lock
+ faceplayer
+ checkflag 278
+ jumpeq SlateportCity_PokemonFanClub_EventScript_155A75
+ msgbox SlateportCity_PokemonFanClub_Text_17DE6B, 4
+ specialval RESULT, 230
+ compare RESULT, 4
+ jumpif 4, SlateportCity_PokemonFanClub_EventScript_155A3A
+ release
+ end
+
+SlateportCity_PokemonFanClub_EventScript_155A3A:: @ 8155A3A
+ playsfx 21
+ move LAST_TALKED, SlateportCity_PokemonFanClub_Movement_1A0833
+ waitmove 0
+ move LAST_TALKED, SlateportCity_PokemonFanClub_Movement_1A0835
+ waitmove 0
+ msgbox SlateportCity_PokemonFanClub_Text_17DF57, 4
+ giveitem ITEM_SOOTHE_BELL
+ compare RESULT, 0
+ jumpeq SlateportCity_PokemonFanClub_EventScript_1A029B
+ setflag 278
+ release
+ end
+
+SlateportCity_PokemonFanClub_EventScript_155A75:: @ 8155A75
+ msgbox SlateportCity_PokemonFanClub_Text_17DFB8, 4
+ release
+ end
+
+SlateportCity_PokemonFanClub_EventScript_155A7F:: @ 8155A7F
+ msgbox SlateportCity_PokemonFanClub_Text_17E03B, 2
+ end
+
+SlateportCity_PokemonFanClub_EventScript_155A88:: @ 8155A88
+ msgbox SlateportCity_PokemonFanClub_Text_17E0ED, 2
+ end
+
+SlateportCity_PokemonFanClub_EventScript_155A91:: @ 8155A91
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_SKITTY, 0
+ msgbox SlateportCity_PokemonFanClub_Text_17E14E, 4
+ waitpokecry
+ release
+ end
+
+SlateportCity_PokemonFanClub_EventScript_155AA4:: @ 8155AA4
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_ZIGZAGOON, 0
+ msgbox SlateportCity_PokemonFanClub_Text_17E164, 4
+ waitpokecry
+ release
+ end
+
+SlateportCity_PokemonFanClub_EventScript_155AB7:: @ 8155AB7
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_AZUMARILL, 0
+ msgbox SlateportCity_PokemonFanClub_Text_17E178, 4
+ waitpokecry
+ release
+ end
+
diff --git a/data/maps/scripts/SlateportCity_SternsShipyard_1F.s b/data/maps/scripts/SlateportCity_SternsShipyard_1F.s
new file mode 100644
index 000000000..64c81d3c4
--- /dev/null
+++ b/data/maps/scripts/SlateportCity_SternsShipyard_1F.s
@@ -0,0 +1,68 @@
+SlateportCity_SternsShipyard_1F_MapScripts:: @ 8155335
+ .byte 0
+
+SlateportCity_SternsShipyard_1F_EventScript_155336:: @ 8155336
+ lockall
+ checkflag 2052
+ jumpeq SlateportCity_SternsShipyard_1F_EventScript_155388
+ checkflag 2061
+ jumpeq SlateportCity_SternsShipyard_1F_EventScript_15539C
+ checkflag 149
+ jumpeq SlateportCity_SternsShipyard_1F_EventScript_1553CF
+ checkflag 148
+ jumpeq SlateportCity_SternsShipyard_1F_EventScript_1553B0
+ msgbox SlateportCity_SternsShipyard_1F_Text_17C14B, 4
+ move 1, SlateportCity_SternsShipyard_1F_Movement_1A0839
+ waitmove 0
+ msgbox SlateportCity_SternsShipyard_1F_Text_17C1EC, 4
+ closebutton
+ move 1, SlateportCity_SternsShipyard_1F_Movement_1A083D
+ waitmove 0
+ setflag 148
+ setflag 882
+ releaseall
+ end
+
+SlateportCity_SternsShipyard_1F_EventScript_155388:: @ 8155388
+ move 1, SlateportCity_SternsShipyard_1F_Movement_1A0839
+ waitmove 0
+ msgbox SlateportCity_SternsShipyard_1F_Text_17C472, 4
+ releaseall
+ end
+
+SlateportCity_SternsShipyard_1F_EventScript_15539C:: @ 815539C
+ move 1, SlateportCity_SternsShipyard_1F_Movement_1A0839
+ waitmove 0
+ msgbox SlateportCity_SternsShipyard_1F_Text_17C3F7, 4
+ releaseall
+ end
+
+SlateportCity_SternsShipyard_1F_EventScript_1553B0:: @ 81553B0
+ move 1, SlateportCity_SternsShipyard_1F_Movement_1A0839
+ waitmove 0
+ msgbox SlateportCity_SternsShipyard_1F_Text_17C2F2, 4
+ closebutton
+ move 1, SlateportCity_SternsShipyard_1F_Movement_1A083D
+ waitmove 0
+ releaseall
+ end
+
+SlateportCity_SternsShipyard_1F_EventScript_1553CF:: @ 81553CF
+ move 1, SlateportCity_SternsShipyard_1F_Movement_1A0839
+ waitmove 0
+ msgbox SlateportCity_SternsShipyard_1F_Text_17C360, 4
+ releaseall
+ end
+
+SlateportCity_SternsShipyard_1F_EventScript_1553E3:: @ 81553E3
+ msgbox SlateportCity_SternsShipyard_1F_Text_17C6BB, 2
+ end
+
+SlateportCity_SternsShipyard_1F_EventScript_1553EC:: @ 81553EC
+ msgbox SlateportCity_SternsShipyard_1F_Text_17C764, 2
+ end
+
+SlateportCity_SternsShipyard_1F_EventScript_1553F5:: @ 81553F5
+ msgbox SlateportCity_SternsShipyard_1F_Text_17C53D, 2
+ end
+
diff --git a/data/maps/scripts/SlateportCity_SternsShipyard_2F.s b/data/maps/scripts/SlateportCity_SternsShipyard_2F.s
new file mode 100644
index 000000000..069b5c9f8
--- /dev/null
+++ b/data/maps/scripts/SlateportCity_SternsShipyard_2F.s
@@ -0,0 +1,11 @@
+SlateportCity_SternsShipyard_2F_MapScripts:: @ 81553FE
+ .byte 0
+
+SlateportCity_SternsShipyard_2F_EventScript_1553FF:: @ 81553FF
+ msgbox SlateportCity_SternsShipyard_2F_Text_17C7A2, 2
+ end
+
+SlateportCity_SternsShipyard_2F_EventScript_155408:: @ 8155408
+ msgbox SlateportCity_SternsShipyard_2F_Text_17C80C, 2
+ end
+
diff --git a/data/maps/scripts/SootopolisCity.s b/data/maps/scripts/SootopolisCity.s
new file mode 100644
index 000000000..19e796b7c
--- /dev/null
+++ b/data/maps/scripts/SootopolisCity.s
@@ -0,0 +1,209 @@
+SootopolisCity_MapScripts:: @ 814D07D
+ map_script 1, SootopolisCity_MapScript1_14D08D
+ map_script 3, SootopolisCity_MapScript1_14D10D
+ map_script 5, SootopolisCity_MapScript1_14D165
+ .byte 0
+
+SootopolisCity_MapScript1_14D08D:: @ 814D08D
+ checkflag 129
+ callif 0, SootopolisCity_EventScript_14D0A0
+ checkflag 129
+ callif 1, SootopolisCity_EventScript_14D0B1
+ end
+
+SootopolisCity_EventScript_14D0A0:: @ 814D0A0
+ movespriteperm 3, 31, 18
+ setmaptile 31, 32, 592, 1
+ return
+
+SootopolisCity_EventScript_14D0B1:: @ 814D0B1
+ checkflag 113
+ callif 0, SootopolisCity_EventScript_14D0BB
+ return
+
+SootopolisCity_EventScript_14D0BB:: @ 814D0BB
+ setmaptile 9, 6, 584, 1
+ setmaptile 9, 17, 584, 1
+ setmaptile 9, 26, 584, 1
+ setmaptile 44, 17, 584, 1
+ setmaptile 8, 35, 584, 1
+ setmaptile 53, 28, 584, 1
+ setmaptile 45, 6, 584, 1
+ setmaptile 48, 25, 584, 1
+ setmaptile 31, 32, 592, 1
+ return
+
+SootopolisCity_MapScript1_14D10D:: @ 814D10D
+ setflag 2077
+ checkflag 113
+ callif 1, SootopolisCity_EventScript_14D159
+ checkflag 2090
+ callif 1, SootopolisCity_EventScript_14D123
+ end
+
+SootopolisCity_EventScript_14D123:: @ 814D123
+ call SootopolisCity_EventScript_1A02C1
+ movespriteperm 1, 29, 19
+ movespriteperm 2, 33, 19
+ compare 0x405e, 1
+ callif 1, SootopolisCity_EventScript_14D142
+ return
+
+SootopolisCity_EventScript_14D142:: @ 814D142
+ movespriteperm 10, 29, 6
+ spritebehave 10, 10
+ movespriteperm 5, 30, 6
+ spritebehave 5, 9
+ return
+
+SootopolisCity_EventScript_14D159:: @ 814D159
+ movespriteperm 10, 31, 33
+ spritebehave 10, 8
+ return
+
+SootopolisCity_MapScript1_14D165:: @ 814D165
+ warp4 Underwater_SootopolisCity, 255, 9, 6
+ end
+
+SootopolisCity_EventScript_14D16E:: @ 814D16E
+ lock
+ faceplayer
+ checkflag 113
+ jumpeq SootopolisCity_EventScript_14D183
+ msgbox SootopolisCity_Text_1696A4, 4
+ release
+ end
+
+SootopolisCity_EventScript_14D183:: @ 814D183
+ msgbox SootopolisCity_Text_16A455, 4
+ release
+ end
+
+SootopolisCity_EventScript_14D18D:: @ 814D18D
+ msgbox SootopolisCity_Text_16A2B2, 2
+ end
+
+SootopolisCity_EventScript_14D196:: @ 814D196
+ msgbox SootopolisCity_Text_16A2FB, 2
+ end
+
+SootopolisCity_EventScript_14D19F:: @ 814D19F
+ lock
+ faceplayer
+ checkdailyflags
+ special 148
+ checkflag 2258
+ jumpeq SootopolisCity_EventScript_14D241
+ msgbox SootopolisCity_Text_1C63F2, 4
+ random 10
+ addvar RESULT, 20
+ addvar RESULT, 133
+ giveitem RESULT
+ compare RESULT, 0
+ jumpeq SootopolisCity_EventScript_1A029B
+ setflag 2258
+ msgbox SootopolisCity_Text_1C64D0, 4
+ random 2
+ compare RESULT, 0
+ jumpeq SootopolisCity_EventScript_14D1FF
+ compare RESULT, 1
+ jumpeq SootopolisCity_EventScript_14D220
+ end
+
+SootopolisCity_EventScript_14D1FF:: @ 814D1FF
+ giveitem ITEM_FIGY_BERRY
+ compare RESULT, 0
+ jumpeq SootopolisCity_EventScript_1A029B
+ msgbox SootopolisCity_Text_1C650B, 4
+ release
+ end
+
+SootopolisCity_EventScript_14D220:: @ 814D220
+ giveitem ITEM_IAPAPA_BERRY
+ compare RESULT, 0
+ jumpeq SootopolisCity_EventScript_1A029B
+ msgbox SootopolisCity_Text_1C650B, 4
+ release
+ end
+
+SootopolisCity_EventScript_14D241:: @ 814D241
+ msgbox SootopolisCity_Text_1C6540, 5
+ compare RESULT, 1
+ jumpeq SootopolisCity_EventScript_14D25E
+ msgbox SootopolisCity_Text_1C6626, 4
+ release
+ end
+
+SootopolisCity_EventScript_14D25E:: @ 814D25E
+ msgbox SootopolisCity_Text_1C65D4, 4
+ release
+ end
+
+SootopolisCity_EventScript_14D268:: @ 814D268
+ lock
+ faceplayer
+ checkflag 1236
+ jumpeq SootopolisCity_EventScript_14D27D
+ msgbox SootopolisCity_Text_16A4D6, 4
+ release
+ end
+
+SootopolisCity_EventScript_14D27D:: @ 814D27D
+ msgbox SootopolisCity_Text_16A531, 4
+ release
+ end
+
+SootopolisCity_EventScript_14D287:: @ 814D287
+ lock
+ faceplayer
+ checkflag 113
+ jumpeq SootopolisCity_EventScript_14D29C
+ msgbox SootopolisCity_Text_169813, 4
+ release
+ end
+
+SootopolisCity_EventScript_14D29C:: @ 814D29C
+ msgbox SootopolisCity_Text_16A587, 4
+ release
+ end
+
+SootopolisCity_EventScript_14D2A6:: @ 814D2A6
+ lock
+ faceplayer
+ checkflag 113
+ jumpeq SootopolisCity_EventScript_14D2BB
+ msgbox SootopolisCity_Text_1698A0, 4
+ release
+ end
+
+SootopolisCity_EventScript_14D2BB:: @ 814D2BB
+ msgbox SootopolisCity_Text_16A614, 4
+ release
+ end
+
+SootopolisCity_EventScript_14D2C5:: @ 814D2C5
+ lock
+ faceplayer
+ checkflag 113
+ jumpeq SootopolisCity_EventScript_14D2DA
+ msgbox SootopolisCity_Text_1697A7, 4
+ release
+ end
+
+SootopolisCity_EventScript_14D2DA:: @ 814D2DA
+ msgbox SootopolisCity_Text_16A6AE, 4
+ release
+ end
+
+SootopolisCity_EventScript_14D2E4:: @ 814D2E4
+ msgbox SootopolisCity_Text_16972B, 2
+ end
+
+SootopolisCity_EventScript_14D2ED:: @ 814D2ED
+ msgbox SootopolisCity_Text_16A6C7, 3
+ end
+
+SootopolisCity_EventScript_14D2F6:: @ 814D2F6
+ msgbox SootopolisCity_Text_16A711, 3
+ end
+
diff --git a/data/maps/scripts/SootopolisCity_Gym_1F.s b/data/maps/scripts/SootopolisCity_Gym_1F.s
new file mode 100644
index 000000000..fa52b4da3
--- /dev/null
+++ b/data/maps/scripts/SootopolisCity_Gym_1F.s
@@ -0,0 +1,161 @@
+SootopolisCity_Gym_1F_MapScripts:: @ 815AF07
+ map_script 2, SootopolisCity_Gym_1F_MapScript2_15AF86
+ map_script 5, SootopolisCity_Gym_1F_MapScript1_15AF22
+ map_script 1, SootopolisCity_Gym_1F_MapScript1_15AF25
+ map_script 3, SootopolisCity_Gym_1F_MapScript1_15AF1C
+ .byte 0
+
+SootopolisCity_Gym_1F_MapScript1_15AF1C:: @ 815AF1C
+ setvar 0x4022, 1
+ end
+
+SootopolisCity_Gym_1F_MapScript1_15AF22:: @ 815AF22
+ tileeffect 4
+ end
+
+SootopolisCity_Gym_1F_MapScript1_15AF25:: @ 815AF25
+ call SootopolisCity_Gym_1F_EventScript_15AF2E
+ special 309
+ end
+
+SootopolisCity_Gym_1F_EventScript_15AF2E:: @ 815AF2E
+ compare 0x4022, 8
+ jumpif 0, SootopolisCity_Gym_1F_EventScript_15AF85
+ compare 0x4022, 28
+ jumpif 0, SootopolisCity_Gym_1F_EventScript_15AF73
+ compare 0x4022, 69
+ jumpif 0, SootopolisCity_Gym_1F_EventScript_15AF61
+ setmaptile 8, 4, 519, 0
+ setmaptile 8, 5, 519, 0
+
+SootopolisCity_Gym_1F_EventScript_15AF61:: @ 815AF61
+ setmaptile 8, 10, 519, 0
+ setmaptile 8, 11, 519, 0
+
+SootopolisCity_Gym_1F_EventScript_15AF73:: @ 815AF73
+ setmaptile 8, 15, 519, 0
+ setmaptile 8, 16, 519, 0
+
+SootopolisCity_Gym_1F_EventScript_15AF85:: @ 815AF85
+ return
+
+SootopolisCity_Gym_1F_MapScript2_15AF86:: @ 815AF86
+ map_script_2 0x4022, 8, SootopolisCity_Gym_1F_EventScript_15AFA8
+ map_script_2 0x4022, 28, SootopolisCity_Gym_1F_EventScript_15AFBC
+ map_script_2 0x4022, 69, SootopolisCity_Gym_1F_EventScript_15AFD0
+ map_script_2 0x4022, 0, SootopolisCity_Gym_1F_EventScript_15AFE4
+ .2byte 0
+
+SootopolisCity_Gym_1F_EventScript_15AFA8:: @ 815AFA8
+ addvar 0x4022, 1
+ pause 40
+ playsfx 40
+ call SootopolisCity_Gym_1F_EventScript_15AF2E
+ special 142
+ end
+
+SootopolisCity_Gym_1F_EventScript_15AFBC:: @ 815AFBC
+ addvar 0x4022, 1
+ pause 40
+ playsfx 40
+ call SootopolisCity_Gym_1F_EventScript_15AF2E
+ special 142
+ end
+
+SootopolisCity_Gym_1F_EventScript_15AFD0:: @ 815AFD0
+ addvar 0x4022, 1
+ pause 40
+ playsfx 40
+ call SootopolisCity_Gym_1F_EventScript_15AF2E
+ special 142
+ end
+
+SootopolisCity_Gym_1F_EventScript_15AFE4:: @ 815AFE4
+ lockall
+ pause 20
+ move 255, SootopolisCity_Gym_1F_Movement_15AFFD
+ waitmove 0
+ playsfx 43
+ pause 60
+ warphole SootopolisCity_Gym_B1F
+ waitstate
+ end
+
+SootopolisCity_Gym_1F_Movement_15AFFD:: @ 815AFFD
+ step_54
+ step_end
+
+SootopolisCity_Gym_1F_EventScript_15AFFF:: @ 815AFFF
+ trainerbattle 1, 272, 0, SootopolisCity_Gym_1F_Text_18F0CA, SootopolisCity_Gym_1F_Text_18F282, SootopolisCity_Gym_1F_EventScript_15B02D
+ checkflag 172
+ jumpif 0, SootopolisCity_Gym_1F_EventScript_15B056
+ checkflag 2060
+ jumpif 0, SootopolisCity_Gym_1F_EventScript_15B07A
+ msgbox SootopolisCity_Gym_1F_Text_18F4D7, 4
+ release
+ end
+
+SootopolisCity_Gym_1F_EventScript_15B02D:: @ 815B02D
+ message SootopolisCity_Gym_1F_Text_18F342
+ waittext
+ call SootopolisCity_Gym_1F_EventScript_1A02C5
+ msgbox SootopolisCity_Gym_1F_Text_18F36B, 4
+ setflag 1236
+ setflag 2062
+ setvar 0x8008, 8
+ call SootopolisCity_Gym_1F_EventScript_1A01C0
+ jump SootopolisCity_Gym_1F_EventScript_15B056
+ end
+
+SootopolisCity_Gym_1F_EventScript_15B056:: @ 815B056
+ giveitem ITEM_TM03
+ compare RESULT, 0
+ jumpeq SootopolisCity_Gym_1F_EventScript_1A029B
+ msgbox SootopolisCity_Gym_1F_Text_18F466, 4
+ setflag 172
+ release
+ end
+
+SootopolisCity_Gym_1F_EventScript_15B07A:: @ 815B07A
+ msgbox SootopolisCity_Gym_1F_Text_18F5B4, 4
+ release
+ end
+
+SootopolisCity_Gym_1F_EventScript_15B084:: @ 815B084
+ lock
+ faceplayer
+ checkflag 1236
+ jumpeq SootopolisCity_Gym_1F_EventScript_15B099
+ msgbox SootopolisCity_Gym_1F_Text_18E8A5, 4
+ release
+ end
+
+SootopolisCity_Gym_1F_EventScript_15B099:: @ 815B099
+ msgbox SootopolisCity_Gym_1F_Text_18E9C9, 4
+ release
+ end
+
+SootopolisCity_Gym_1F_EventScript_15B0A3:: @ 815B0A3
+ lockall
+ checkflag 2062
+ jumpeq SootopolisCity_Gym_1F_EventScript_15B0C3
+ jump SootopolisCity_Gym_1F_EventScript_15B0CD
+ end
+
+SootopolisCity_Gym_1F_EventScript_15B0B3:: @ 815B0B3
+ lockall
+ checkflag 2062
+ jumpeq SootopolisCity_Gym_1F_EventScript_15B0C3
+ jump SootopolisCity_Gym_1F_EventScript_15B0CD
+ end
+
+SootopolisCity_Gym_1F_EventScript_15B0C3:: @ 815B0C3
+ msgbox SootopolisCity_Gym_1F_Text_18F665, 4
+ releaseall
+ end
+
+SootopolisCity_Gym_1F_EventScript_15B0CD:: @ 815B0CD
+ msgbox SootopolisCity_Gym_1F_Text_18F649, 4
+ releaseall
+ end
+
diff --git a/data/maps/scripts/SootopolisCity_Gym_B1F.s b/data/maps/scripts/SootopolisCity_Gym_B1F.s
new file mode 100644
index 000000000..21bbc1558
--- /dev/null
+++ b/data/maps/scripts/SootopolisCity_Gym_B1F.s
@@ -0,0 +1,43 @@
+SootopolisCity_Gym_B1F_MapScripts:: @ 815B0D7
+ .byte 0
+
+SootopolisCity_Gym_B1F_EventScript_15B0D8:: @ 815B0D8
+ trainerbattle 0, 613, 0, SootopolisCity_Gym_B1F_Text_18EA87, SootopolisCity_Gym_B1F_Text_18EACF
+ msgbox SootopolisCity_Gym_B1F_Text_18EAED, 6
+ end
+
+SootopolisCity_Gym_B1F_EventScript_15B0EF:: @ 815B0EF
+ trainerbattle 0, 614, 0, SootopolisCity_Gym_B1F_Text_18EB22, SootopolisCity_Gym_B1F_Text_18EB81
+ msgbox SootopolisCity_Gym_B1F_Text_18EBB1, 6
+ end
+
+SootopolisCity_Gym_B1F_EventScript_15B106:: @ 815B106
+ trainerbattle 0, 118, 0, SootopolisCity_Gym_B1F_Text_18EBFA, SootopolisCity_Gym_B1F_Text_18EC5E
+ msgbox SootopolisCity_Gym_B1F_Text_18EC92, 6
+ end
+
+SootopolisCity_Gym_B1F_EventScript_15B11D:: @ 815B11D
+ trainerbattle 0, 128, 0, SootopolisCity_Gym_B1F_Text_18ECEB, SootopolisCity_Gym_B1F_Text_18ED18
+ msgbox SootopolisCity_Gym_B1F_Text_18ED2B, 6
+ end
+
+SootopolisCity_Gym_B1F_EventScript_15B134:: @ 815B134
+ trainerbattle 0, 129, 0, SootopolisCity_Gym_B1F_Text_18ED91, SootopolisCity_Gym_B1F_Text_18EDE8
+ msgbox SootopolisCity_Gym_B1F_Text_18EE03, 6
+ end
+
+SootopolisCity_Gym_B1F_EventScript_15B14B:: @ 815B14B
+ trainerbattle 0, 130, 0, SootopolisCity_Gym_B1F_Text_18EE96, SootopolisCity_Gym_B1F_Text_18EEDC
+ msgbox SootopolisCity_Gym_B1F_Text_18EEF7, 6
+ end
+
+SootopolisCity_Gym_B1F_EventScript_15B162:: @ 815B162
+ trainerbattle 0, 131, 0, SootopolisCity_Gym_B1F_Text_18EF39, SootopolisCity_Gym_B1F_Text_18EFB8
+ msgbox SootopolisCity_Gym_B1F_Text_18EFCA, 6
+ end
+
+SootopolisCity_Gym_B1F_EventScript_15B179:: @ 815B179
+ trainerbattle 0, 301, 0, SootopolisCity_Gym_B1F_Text_18F037, SootopolisCity_Gym_B1F_Text_18F07F
+ msgbox SootopolisCity_Gym_B1F_Text_18F085, 6
+ end
+
diff --git a/data/maps/scripts/SootopolisCity_House1.s b/data/maps/scripts/SootopolisCity_House1.s
new file mode 100644
index 000000000..a2243206c
--- /dev/null
+++ b/data/maps/scripts/SootopolisCity_House1.s
@@ -0,0 +1,30 @@
+SootopolisCity_House1_MapScripts:: @ 815B29A
+ .byte 0
+
+SootopolisCity_House1_EventScript_15B29B:: @ 815B29B
+ lock
+ faceplayer
+ checkflag 121
+ jumpeq SootopolisCity_House1_EventScript_15B2C7
+ msgbox SootopolisCity_House1_Text_18F991, 4
+ giveitem ITEM_TM31
+ setflag 121
+ msgbox SootopolisCity_House1_Text_18FA03, 4
+ release
+ end
+
+SootopolisCity_House1_EventScript_15B2C7:: @ 815B2C7
+ msgbox SootopolisCity_House1_Text_18FA03, 4
+ release
+ end
+
+SootopolisCity_House1_EventScript_15B2D1:: @ 815B2D1
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_KECLEON, 0
+ msgbox SootopolisCity_House1_Text_18FA50, 4
+ waitpokecry
+ release
+ end
+
diff --git a/data/maps/scripts/SootopolisCity_House2.s b/data/maps/scripts/SootopolisCity_House2.s
new file mode 100644
index 000000000..cb99f1004
--- /dev/null
+++ b/data/maps/scripts/SootopolisCity_House2.s
@@ -0,0 +1,22 @@
+SootopolisCity_House2_MapScripts:: @ 815B2E4
+ .byte 0
+
+SootopolisCity_House2_EventScript_15B2E5:: @ 815B2E5
+ lock
+ faceplayer
+ msgbox SootopolisCity_House2_Text_18FA66, 5
+ compare RESULT, 1
+ callif 1, SootopolisCity_House2_EventScript_15B307
+ compare RESULT, 0
+ callif 1, SootopolisCity_House2_EventScript_15B310
+ release
+ end
+
+SootopolisCity_House2_EventScript_15B307:: @ 815B307
+ msgbox SootopolisCity_House2_Text_18FAAE, 4
+ return
+
+SootopolisCity_House2_EventScript_15B310:: @ 815B310
+ msgbox SootopolisCity_House2_Text_18FB04, 4
+ return
+
diff --git a/data/maps/scripts/SootopolisCity_House3.s b/data/maps/scripts/SootopolisCity_House3.s
new file mode 100644
index 000000000..7ebfa3787
--- /dev/null
+++ b/data/maps/scripts/SootopolisCity_House3.s
@@ -0,0 +1,22 @@
+SootopolisCity_House3_MapScripts:: @ 815B319
+ .byte 0
+
+SootopolisCity_House3_EventScript_15B31A:: @ 815B31A
+ lock
+ faceplayer
+ msgbox SootopolisCity_House3_Text_18FB36, 5
+ compare RESULT, 1
+ jumpeq SootopolisCity_House3_EventScript_15B339
+ msgbox SootopolisCity_House3_Text_18FBC0, 4
+ release
+ end
+
+SootopolisCity_House3_EventScript_15B339:: @ 815B339
+ msgbox SootopolisCity_House3_Text_18FB9C, 4
+ release
+ end
+
+SootopolisCity_House3_EventScript_15B343:: @ 815B343
+ msgbox SootopolisCity_House3_Text_18FC1A, 2
+ end
+
diff --git a/data/maps/scripts/SootopolisCity_House4.s b/data/maps/scripts/SootopolisCity_House4.s
new file mode 100644
index 000000000..f8fdd8b4b
--- /dev/null
+++ b/data/maps/scripts/SootopolisCity_House4.s
@@ -0,0 +1,21 @@
+SootopolisCity_House4_MapScripts:: @ 815B34C
+ .byte 0
+
+SootopolisCity_House4_EventScript_15B34D:: @ 815B34D
+ msgbox SootopolisCity_House4_Text_18FC92, 2
+ end
+
+SootopolisCity_House4_EventScript_15B356:: @ 815B356
+ msgbox SootopolisCity_House4_Text_18FD41, 2
+ end
+
+SootopolisCity_House4_EventScript_15B35F:: @ 815B35F
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_AZUMARILL, 0
+ msgbox SootopolisCity_House4_Text_18FDD8, 4
+ waitpokecry
+ release
+ end
+
diff --git a/data/maps/scripts/SootopolisCity_House5.s b/data/maps/scripts/SootopolisCity_House5.s
new file mode 100644
index 000000000..b42855160
--- /dev/null
+++ b/data/maps/scripts/SootopolisCity_House5.s
@@ -0,0 +1,11 @@
+SootopolisCity_House5_MapScripts:: @ 815B372
+ .byte 0
+
+SootopolisCity_House5_EventScript_15B373:: @ 815B373
+ msgbox SootopolisCity_House5_Text_18FDEC, 2
+ end
+
+SootopolisCity_House5_EventScript_15B37C:: @ 815B37C
+ msgbox SootopolisCity_House5_Text_18FE7B, 2
+ end
+
diff --git a/data/maps/scripts/SootopolisCity_House6.s b/data/maps/scripts/SootopolisCity_House6.s
new file mode 100644
index 000000000..429d0c438
--- /dev/null
+++ b/data/maps/scripts/SootopolisCity_House6.s
@@ -0,0 +1,36 @@
+SootopolisCity_House6_MapScripts:: @ 815B385
+ .byte 0
+
+SootopolisCity_House6_EventScript_15B386:: @ 815B386
+ lock
+ faceplayer
+ checkflag 245
+ jumpeq SootopolisCity_House6_EventScript_15B3CD
+ msgbox SootopolisCity_House6_Text_18FEA1, 5
+ compare RESULT, 0
+ callif 1, SootopolisCity_House6_EventScript_15B3C3
+ msgbox SootopolisCity_House6_Text_18FF12, 4
+ givedecoration 117
+ compare RESULT, 0
+ jumpeq SootopolisCity_House6_EventScript_15B3D7
+ setflag 245
+ release
+ end
+
+SootopolisCity_House6_EventScript_15B3C3:: @ 815B3C3
+ msgbox SootopolisCity_House6_Text_18FF6D, 4
+ release
+ end
+
+SootopolisCity_House6_EventScript_15B3CD:: @ 815B3CD
+ msgbox SootopolisCity_House6_Text_18FF95, 4
+ release
+ end
+
+SootopolisCity_House6_EventScript_15B3D7:: @ 815B3D7
+ bufferdecor 1, 117
+ msgbox SootopolisCity_House6_Text_1A0CEF, 4
+ msgbox SootopolisCity_House6_Text_18FF28, 4
+ release
+ end
+
diff --git a/data/maps/scripts/SootopolisCity_House7.s b/data/maps/scripts/SootopolisCity_House7.s
new file mode 100644
index 000000000..889f8993d
--- /dev/null
+++ b/data/maps/scripts/SootopolisCity_House7.s
@@ -0,0 +1,11 @@
+SootopolisCity_House7_MapScripts:: @ 815B3ED
+ .byte 0
+
+SootopolisCity_House7_EventScript_15B3EE:: @ 815B3EE
+ msgbox SootopolisCity_House7_Text_18FFA9, 2
+ end
+
+SootopolisCity_House7_EventScript_15B3F7:: @ 815B3F7
+ msgbox SootopolisCity_House7_Text_19005B, 2
+ end
+
diff --git a/data/maps/scripts/SootopolisCity_House8.s b/data/maps/scripts/SootopolisCity_House8.s
new file mode 100644
index 000000000..0f9ee3580
--- /dev/null
+++ b/data/maps/scripts/SootopolisCity_House8.s
@@ -0,0 +1,115 @@
+SootopolisCity_House8_MapScripts:: @ 815B400
+ .byte 0
+
+SootopolisCity_House8_EventScript_15B401:: @ 815B401
+ special 119
+ lock
+ faceplayer
+ msgbox SootopolisCity_House8_Text_1900F7, 4
+ special 159
+ waitstate
+ copyvar RESULT, 0x8004
+ compare RESULT, 255
+ jumpeq SootopolisCity_House8_EventScript_15B448
+ special 120
+ compare RESULT, 1
+ jumpeq SootopolisCity_House8_EventScript_15B452
+ compare RESULT, 2
+ jumpeq SootopolisCity_House8_EventScript_15B45C
+ compare RESULT, 3
+ jumpeq SootopolisCity_House8_EventScript_15B466
+ release
+ end
+
+SootopolisCity_House8_EventScript_15B448:: @ 815B448
+ msgbox SootopolisCity_House8_Text_190366, 4
+ release
+ end
+
+SootopolisCity_House8_EventScript_15B452:: @ 815B452
+ msgbox SootopolisCity_House8_Text_190329, 4
+ release
+ end
+
+SootopolisCity_House8_EventScript_15B45C:: @ 815B45C
+ msgbox SootopolisCity_House8_Text_1902E4, 4
+ release
+ end
+
+SootopolisCity_House8_EventScript_15B466:: @ 815B466
+ msgbox SootopolisCity_House8_Text_19021D, 4
+ giveitem ITEM_ELIXIR
+ compare RESULT, 0
+ jumpeq SootopolisCity_House8_EventScript_15B488
+ closebutton
+ release
+ end
+
+SootopolisCity_House8_EventScript_15B488:: @ 815B488
+ msgbox SootopolisCity_House8_Text_1902C4, 4
+ release
+ end
+
+SootopolisCity_House8_EventScript_15B492:: @ 815B492
+ special 121
+ lock
+ faceplayer
+ msgbox SootopolisCity_House8_Text_190431, 4
+ special 159
+ waitstate
+ copyvar RESULT, 0x8004
+ compare RESULT, 255
+ jumpeq SootopolisCity_House8_EventScript_15B4D9
+ special 122
+ compare RESULT, 1
+ jumpeq SootopolisCity_House8_EventScript_15B4E3
+ compare RESULT, 2
+ jumpeq SootopolisCity_House8_EventScript_15B4ED
+ compare RESULT, 3
+ jumpeq SootopolisCity_House8_EventScript_15B4F7
+ release
+ end
+
+SootopolisCity_House8_EventScript_15B4D9:: @ 815B4D9
+ msgbox SootopolisCity_House8_Text_19065A, 4
+ release
+ end
+
+SootopolisCity_House8_EventScript_15B4E3:: @ 815B4E3
+ msgbox SootopolisCity_House8_Text_190628, 4
+ release
+ end
+
+SootopolisCity_House8_EventScript_15B4ED:: @ 815B4ED
+ msgbox SootopolisCity_House8_Text_1905E6, 4
+ release
+ end
+
+SootopolisCity_House8_EventScript_15B4F7:: @ 815B4F7
+ msgbox SootopolisCity_House8_Text_190536, 4
+ giveitem ITEM_ELIXIR
+ compare RESULT, 0
+ jumpeq SootopolisCity_House8_EventScript_15B519
+ closebutton
+ release
+ end
+
+SootopolisCity_House8_EventScript_15B519:: @ 815B519
+ msgbox SootopolisCity_House8_Text_1905C1, 4
+ release
+ end
+
+SootopolisCity_House8_EventScript_15B523:: @ 815B523
+ special 119
+ lockall
+ msgbox SootopolisCity_House8_Text_1903C9, 4
+ releaseall
+ end
+
+SootopolisCity_House8_EventScript_15B531:: @ 815B531
+ special 121
+ lockall
+ msgbox SootopolisCity_House8_Text_1906BE, 4
+ releaseall
+ end
+
diff --git a/data/maps/scripts/SootopolisCity_Mart.s b/data/maps/scripts/SootopolisCity_Mart.s
new file mode 100644
index 000000000..7dcb0e274
--- /dev/null
+++ b/data/maps/scripts/SootopolisCity_Mart.s
@@ -0,0 +1,61 @@
+SootopolisCity_Mart_MapScripts:: @ 815B21A
+ .byte 0
+
+SootopolisCity_Mart_EventScript_15B21B:: @ 815B21B
+ lock
+ faceplayer
+ message SootopolisCity_Mart_Text_1A0BE4
+ waittext
+ pokemart SootopolisCity_Mart_Pokemart_15B234
+ msgbox SootopolisCity_Mart_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x15b232, 0x2
+
+SootopolisCity_Mart_Pokemart_15B234:: @ 815B234
+ .2byte ITEM_ULTRA_BALL
+ .2byte ITEM_HYPER_POTION
+ .2byte ITEM_MAX_POTION
+ .2byte ITEM_FULL_HEAL
+ .2byte ITEM_REVIVE
+ .2byte ITEM_MAX_REPEL
+ .2byte ITEM_X_ATTACK
+ .2byte ITEM_X_DEFEND
+ .2byte ITEM_SHADOW_MAIL
+ .2byte ITEM_NONE
+ release
+ end
+
+SootopolisCity_Mart_EventScript_15B24A:: @ 815B24A
+ lock
+ faceplayer
+ checkflag 113
+ jumpeq SootopolisCity_Mart_EventScript_15B268
+ checkflag 129
+ jumpif 0, SootopolisCity_Mart_EventScript_15B268
+ msgbox SootopolisCity_Mart_Text_18F8D7, 4
+ release
+ end
+
+SootopolisCity_Mart_EventScript_15B268:: @ 815B268
+ msgbox SootopolisCity_Mart_Text_18F890, 4
+ release
+ end
+
+SootopolisCity_Mart_EventScript_15B272:: @ 815B272
+ lock
+ faceplayer
+ checkflag 113
+ jumpeq SootopolisCity_Mart_EventScript_15B290
+ checkflag 129
+ jumpif 0, SootopolisCity_Mart_EventScript_15B290
+ msgbox SootopolisCity_Mart_Text_18F96B, 4
+ release
+ end
+
+SootopolisCity_Mart_EventScript_15B290:: @ 815B290
+ msgbox SootopolisCity_Mart_Text_18F8F2, 4
+ release
+ end
+
diff --git a/data/maps/scripts/SootopolisCity_PokemonCenter_1F.s b/data/maps/scripts/SootopolisCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..1221fb845
--- /dev/null
+++ b/data/maps/scripts/SootopolisCity_PokemonCenter_1F.s
@@ -0,0 +1,42 @@
+SootopolisCity_PokemonCenter_1F_MapScripts:: @ 815B190
+ map_script 3, SootopolisCity_PokemonCenter_1F_MapScript1_15B196
+ .byte 0
+
+SootopolisCity_PokemonCenter_1F_MapScript1_15B196:: @ 815B196
+ sethealplace 10
+ end
+
+ .incbin "baserom.gba", 0x15b19a, 0xe
+
+SootopolisCity_PokemonCenter_1F_EventScript_15B1A8:: @ 815B1A8
+ lock
+ faceplayer
+ checkflag 113
+ jumpeq SootopolisCity_PokemonCenter_1F_EventScript_15B1C6
+ checkflag 129
+ jumpif 0, SootopolisCity_PokemonCenter_1F_EventScript_15B1C6
+ msgbox SootopolisCity_PokemonCenter_1F_Text_18F770, 4
+ release
+ end
+
+SootopolisCity_PokemonCenter_1F_EventScript_15B1C6:: @ 815B1C6
+ msgbox SootopolisCity_PokemonCenter_1F_Text_18F6A2, 4
+ release
+ end
+
+SootopolisCity_PokemonCenter_1F_EventScript_15B1D0:: @ 815B1D0
+ lock
+ faceplayer
+ checkflag 113
+ jumpeq SootopolisCity_PokemonCenter_1F_EventScript_15B1EE
+ checkflag 129
+ jumpif 0, SootopolisCity_PokemonCenter_1F_EventScript_15B1EE
+ msgbox SootopolisCity_PokemonCenter_1F_Text_18F860, 4
+ release
+ end
+
+SootopolisCity_PokemonCenter_1F_EventScript_15B1EE:: @ 815B1EE
+ msgbox SootopolisCity_PokemonCenter_1F_Text_18F7EA, 4
+ release
+ end
+
diff --git a/data/maps/scripts/SootopolisCity_PokemonCenter_2F.s b/data/maps/scripts/SootopolisCity_PokemonCenter_2F.s
new file mode 100644
index 000000000..2046a9042
--- /dev/null
+++ b/data/maps/scripts/SootopolisCity_PokemonCenter_2F.s
@@ -0,0 +1,18 @@
+SootopolisCity_PokemonCenter_2F_MapScripts:: @ 815B1F8
+ map_script 2, SootopolisCity_PokemonCenter_2F_MapScript2_1A3D88
+ map_script 4, SootopolisCity_PokemonCenter_2F_MapScript2_1A3D03
+ map_script 1, SootopolisCity_PokemonCenter_2F_MapScript1_1A3D32
+ .byte 0
+
+SootopolisCity_PokemonCenter_2F_EventScript_15B208:: @ 815B208
+ call SootopolisCity_PokemonCenter_2F_EventScript_1A3EA6
+ end
+
+SootopolisCity_PokemonCenter_2F_EventScript_15B20E:: @ 815B20E
+ call SootopolisCity_PokemonCenter_2F_EventScript_1A40CC
+ end
+
+SootopolisCity_PokemonCenter_2F_EventScript_15B214:: @ 815B214
+ call SootopolisCity_PokemonCenter_2F_EventScript_1A41FB
+ end
+
diff --git a/data/maps/scripts/SouthernIsland_Exterior.s b/data/maps/scripts/SouthernIsland_Exterior.s
new file mode 100644
index 000000000..b5448a2f2
--- /dev/null
+++ b/data/maps/scripts/SouthernIsland_Exterior.s
@@ -0,0 +1,42 @@
+SouthernIsland_Exterior_MapScripts:: @ 8160AD6
+ map_script 3, SouthernIsland_Exterior_MapScript1_160ADC
+ .byte 0
+
+SouthernIsland_Exterior_MapScript1_160ADC:: @ 8160ADC
+ setflag 2121
+ end
+
+SouthernIsland_Exterior_EventScript_160AE0:: @ 8160AE0
+ lock
+ faceplayer
+ msgbox SouthernIsland_Exterior_Text_1C5215, 5
+ compare RESULT, 0
+ jumpeq SouthernIsland_Exterior_EventScript_160B25
+ msgbox SouthernIsland_Exterior_Text_1C5281, 4
+ closebutton
+ move LAST_TALKED, SouthernIsland_Exterior_Movement_1A0845
+ waitmove 0
+ pause 30
+ spriteinvisible 1, 26, 9
+ setvar 0x8004, 2
+ call SouthernIsland_Exterior_EventScript_1A047C
+ warp LilycoveCity_Harbor, 255, 8, 11
+ waitstate
+ release
+ end
+
+SouthernIsland_Exterior_EventScript_160B25:: @ 8160B25
+ msgbox SouthernIsland_Exterior_Text_1C52A6, 4
+ release
+ end
+
+BattleTower_Outside_EventScript_160B2F:: @ 8160B2F
+ move 255, BattleTower_Outside_Movement_160B45
+ waitmove 0
+ return
+
+BattleTower_Outside_EventScript_160B3A:: @ 8160B3A
+ move 255, BattleTower_Outside_Movement_160B47
+ waitmove 0
+ return
+
diff --git a/data/maps/scripts/SouthernIsland_Interior.s b/data/maps/scripts/SouthernIsland_Interior.s
new file mode 100644
index 000000000..cc6fdf139
--- /dev/null
+++ b/data/maps/scripts/SouthernIsland_Interior.s
@@ -0,0 +1,110 @@
+SouthernIsland_Interior_MapScripts:: @ 8160B53
+ map_script 5, SouthernIsland_Interior_MapScript1_160B5E
+ map_script 3, SouthernIsland_Interior_MapScript1_160B6C
+ .byte 0
+
+SouthernIsland_Interior_MapScript1_160B5E:: @ 8160B5E
+ checkflag 2145
+ callif 1, SouthernIsland_Interior_EventScript_160B68
+ end
+
+SouthernIsland_Interior_EventScript_160B68:: @ 8160B68
+ disappear 2
+ return
+
+SouthernIsland_Interior_MapScript1_160B6C:: @ 8160B6C
+ setvar 0x4011, 187
+ call SouthernIsland_Interior_EventScript_160B77
+ end
+
+SouthernIsland_Interior_EventScript_160B77:: @ 8160B77
+ checkgender
+ compare RESULT, 0
+ jumpeq SouthernIsland_Interior_EventScript_160B8F
+ compare RESULT, 1
+ jumpeq SouthernIsland_Interior_EventScript_160B95
+ end
+
+SouthernIsland_Interior_EventScript_160B8F:: @ 8160B8F
+ setvar 0x4010, 100
+ return
+
+SouthernIsland_Interior_EventScript_160B95:: @ 8160B95
+ setvar 0x4010, 105
+ return
+
+SouthernIsland_Interior_EventScript_160B9B:: @ 8160B9B
+ lockall
+ setvar 0x8008, 12
+ jump SouthernIsland_Interior_EventScript_160BA7
+ end
+
+SouthernIsland_Interior_EventScript_160BA7:: @ 8160BA7
+ checkflag 206
+ jumpeq SouthernIsland_Interior_EventScript_160C08
+ checkflag 2131
+ jumpif 0, SouthernIsland_Interior_EventScript_160C08
+ setflag 206
+ special 275
+ move 127, SouthernIsland_Interior_Movement_160C12
+ waitmove 0
+ pause 50
+ checksound
+ pokecry SPECIES_LATIAS, 0
+ pause 30
+ waitpokecry
+ reappear 2
+ pause 30
+ move 127, SouthernIsland_Interior_Movement_160C16
+ move 2, SouthernIsland_Interior_Movement_160C22
+ waitmove 0
+ pause 50
+ special 276
+ setwildbattle SPECIES_LATIAS, 50, ITEM_SOUL_DEW
+ setflag 911
+ setflag 2145
+ special 323
+ waitstate
+ clearflag 2145
+ releaseall
+ end
+
+SouthernIsland_Interior_EventScript_160C08:: @ 8160C08
+ msgbox SouthernIsland_Interior_Text_1C52C5, 4
+ releaseall
+ end
+
+SouthernIsland_Interior_Movement_160C12:: @ 8160C12
+ step_up
+ step_up
+ step_up
+ step_end
+
+SouthernIsland_Interior_Movement_160C16:: @ 8160C16
+ step_14
+ step_14
+ step_14
+ step_14
+ step_14
+ step_14
+ step_14
+ step_down
+ step_down
+ step_down
+ step_26
+ step_end
+
+SouthernIsland_Interior_Movement_160C22:: @ 8160C22
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_14
+ step_14
+ step_down
+ step_down
+ step_down
+ step_down
+ step_end
+
diff --git a/data/maps/scripts/TradeCenter.s b/data/maps/scripts/TradeCenter.s
new file mode 100644
index 000000000..44efcf62f
--- /dev/null
+++ b/data/maps/scripts/TradeCenter.s
@@ -0,0 +1,3 @@
+TradeCenter_MapScripts:: @ 815F57D
+ .byte 0
+
diff --git a/data/maps/scripts/Underwater1.s b/data/maps/scripts/Underwater1.s
new file mode 100644
index 000000000..aedbe82c4
--- /dev/null
+++ b/data/maps/scripts/Underwater1.s
@@ -0,0 +1,3 @@
+Underwater1_MapScripts:: @ 8152637
+ .byte 0
+
diff --git a/data/maps/scripts/Underwater2.s b/data/maps/scripts/Underwater2.s
new file mode 100644
index 000000000..4da2a5cb2
--- /dev/null
+++ b/data/maps/scripts/Underwater2.s
@@ -0,0 +1,3 @@
+Underwater2_MapScripts:: @ 8152638
+ .byte 0
+
diff --git a/data/maps/scripts/Underwater3.s b/data/maps/scripts/Underwater3.s
new file mode 100644
index 000000000..b87c72c9f
--- /dev/null
+++ b/data/maps/scripts/Underwater3.s
@@ -0,0 +1,3 @@
+Underwater3_MapScripts:: @ 8152639
+ .byte 0
+
diff --git a/data/maps/scripts/Underwater4.s b/data/maps/scripts/Underwater4.s
new file mode 100644
index 000000000..a6d8f1bd0
--- /dev/null
+++ b/data/maps/scripts/Underwater4.s
@@ -0,0 +1,3 @@
+Underwater4_MapScripts:: @ 815263A
+ .byte 0
+
diff --git a/data/maps/scripts/Underwater_Route134.s b/data/maps/scripts/Underwater_Route134.s
new file mode 100644
index 000000000..427481eda
--- /dev/null
+++ b/data/maps/scripts/Underwater_Route134.s
@@ -0,0 +1,8 @@
+Underwater_Route134_MapScripts:: @ 815F071
+ map_script 5, Underwater_Route134_MapScript1_15F077
+ .byte 0
+
+Underwater_Route134_MapScript1_15F077:: @ 815F077
+ warp4 Route134, 255, 60, 31
+ end
+
diff --git a/data/maps/scripts/Underwater_SeafloorCavern.s b/data/maps/scripts/Underwater_SeafloorCavern.s
new file mode 100644
index 000000000..4a0388146
--- /dev/null
+++ b/data/maps/scripts/Underwater_SeafloorCavern.s
@@ -0,0 +1,46 @@
+Underwater_SeafloorCavern_MapScripts:: @ 815D99E
+ map_script 5, Underwater_SeafloorCavern_MapScript1_15DA36
+ map_script 3, Underwater_SeafloorCavern_MapScript1_15D9AE
+ map_script 1, Underwater_SeafloorCavern_MapScript1_15D9BF
+ .byte 0
+
+Underwater_SeafloorCavern_MapScript1_15D9AE:: @ 815D9AE
+ setflag 2119
+ checkflag 129
+ jumpeq Underwater_SeafloorCavern_EventScript_15D9BB
+ end
+
+Underwater_SeafloorCavern_EventScript_15D9BB:: @ 815D9BB
+ setflag 980
+ end
+
+Underwater_SeafloorCavern_MapScript1_15D9BF:: @ 815D9BF
+ checkflag 129
+ callif 1, Underwater_SeafloorCavern_EventScript_15D9C9
+ end
+
+Underwater_SeafloorCavern_EventScript_15D9C9:: @ 815D9C9
+ setmaptile 5, 3, 542, 1
+ setmaptile 6, 3, 542, 1
+ setmaptile 7, 3, 542, 1
+ setmaptile 8, 3, 542, 1
+ setmaptile 5, 4, 552, 0
+ setmaptile 6, 4, 552, 0
+ setmaptile 7, 4, 552, 0
+ setmaptile 8, 4, 552, 0
+ setmaptile 5, 5, 552, 0
+ setmaptile 6, 5, 552, 0
+ setmaptile 7, 5, 552, 0
+ setmaptile 8, 5, 552, 0
+ return
+
+Underwater_SeafloorCavern_MapScript1_15DA36:: @ 815DA36
+ warp4 SeafloorCavern_Entrance, 255, 10, 17
+ end
+
+Underwater_SeafloorCavern_EventScript_15DA3F:: @ 815DA3F
+ lockall
+ msgbox Underwater_SeafloorCavern_Text_197435, 4
+ releaseall
+ end
+
diff --git a/data/maps/scripts/Underwater_SealedChamber.s b/data/maps/scripts/Underwater_SealedChamber.s
new file mode 100644
index 000000000..8e790ddc0
--- /dev/null
+++ b/data/maps/scripts/Underwater_SealedChamber.s
@@ -0,0 +1,28 @@
+Underwater_SealedChamber_MapScripts:: @ 815F080
+ map_script 6, Underwater_SealedChamber_MapScript1_15F086
+ .byte 0
+
+Underwater_SealedChamber_MapScript1_15F086:: @ 815F086
+ getplayerxy 0x8004, 0x8005
+ compare 0x8004, 12
+ jumpif 5, Underwater_SealedChamber_EventScript_15F0A6
+ compare 0x8005, 44
+ jumpif 5, Underwater_SealedChamber_EventScript_15F0A6
+ jump Underwater_SealedChamber_EventScript_15F0AF
+
+Underwater_SealedChamber_EventScript_15F0A6:: @ 815F0A6
+ warp4 Route134, 255, 60, 31
+ end
+
+Underwater_SealedChamber_EventScript_15F0AF:: @ 815F0AF
+ warp4 SealedChamber_OuterRoom, 255, 10, 19
+ end
+
+Underwater_SealedChamber_EventScript_15F0B8:: @ 815F0B8
+ lockall
+ braillemsg Underwater_SealedChamber_Braille_1C533D
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
diff --git a/data/maps/scripts/Underwater_SootopolisCity.s b/data/maps/scripts/Underwater_SootopolisCity.s
new file mode 100644
index 000000000..aa3465cb7
--- /dev/null
+++ b/data/maps/scripts/Underwater_SootopolisCity.s
@@ -0,0 +1,8 @@
+Underwater_SootopolisCity_MapScripts:: @ 815CAE4
+ map_script 5, Underwater_SootopolisCity_MapScript1_15CAEA
+ .byte 0
+
+Underwater_SootopolisCity_MapScript1_15CAEA:: @ 815CAEA
+ warp4 SootopolisCity, 255, 29, 53
+ end
+
diff --git a/data/maps/scripts/UnknownMap_25_29.s b/data/maps/scripts/UnknownMap_25_29.s
new file mode 100644
index 000000000..a62e0c9f3
--- /dev/null
+++ b/data/maps/scripts/UnknownMap_25_29.s
@@ -0,0 +1 @@
+UnknownMap_25_29_MapScripts:: @ 815F580
diff --git a/data/maps/scripts/UnknownMap_25_30.s b/data/maps/scripts/UnknownMap_25_30.s
new file mode 100644
index 000000000..70a1f0ac2
--- /dev/null
+++ b/data/maps/scripts/UnknownMap_25_30.s
@@ -0,0 +1 @@
+UnknownMap_25_30_MapScripts:: @ 815F580
diff --git a/data/maps/scripts/UnknownMap_25_31.s b/data/maps/scripts/UnknownMap_25_31.s
new file mode 100644
index 000000000..44c67cab5
--- /dev/null
+++ b/data/maps/scripts/UnknownMap_25_31.s
@@ -0,0 +1 @@
+UnknownMap_25_31_MapScripts:: @ 815F580
diff --git a/data/maps/scripts/UnknownMap_25_32.s b/data/maps/scripts/UnknownMap_25_32.s
new file mode 100644
index 000000000..485a626e6
--- /dev/null
+++ b/data/maps/scripts/UnknownMap_25_32.s
@@ -0,0 +1 @@
+UnknownMap_25_32_MapScripts:: @ 815F580
diff --git a/data/maps/scripts/UnknownMap_25_33.s b/data/maps/scripts/UnknownMap_25_33.s
new file mode 100644
index 000000000..68feb9cc6
--- /dev/null
+++ b/data/maps/scripts/UnknownMap_25_33.s
@@ -0,0 +1 @@
+UnknownMap_25_33_MapScripts:: @ 815F580
diff --git a/data/maps/scripts/UnknownMap_25_34.s b/data/maps/scripts/UnknownMap_25_34.s
new file mode 100644
index 000000000..3fc7b181a
--- /dev/null
+++ b/data/maps/scripts/UnknownMap_25_34.s
@@ -0,0 +1,430 @@
+UnknownMap_25_34_MapScripts:: @ 815F580
+ map_script 4, LinkContestRoom1_MapScript2_15F610
+ map_script 2, LinkContestRoom1_MapScript2_15F606
+ map_script 3, LinkContestRoom1_MapScript1_15F595
+ map_script 5, LinkContestRoom1_MapScript1_15F5F4
+ .byte 0
+
+LinkContestRoom1_MapScript1_15F595:: @ 815F595
+ call LinkContestRoom1_EventScript_15F5A5
+ setvar 0x4000, 1
+ call LinkContestRoom1_EventScript_15F630
+ end
+
+LinkContestRoom1_EventScript_15F5A5:: @ 815F5A5
+ special 326
+ compare RESULT, 0
+ callif 1, LinkContestRoom1_EventScript_15F5E0
+ compare RESULT, 1
+ callif 1, LinkContestRoom1_EventScript_15F5E4
+ compare RESULT, 2
+ callif 1, LinkContestRoom1_EventScript_15F5E8
+ compare RESULT, 3
+ callif 1, LinkContestRoom1_EventScript_15F5EC
+ compare RESULT, 4
+ callif 1, LinkContestRoom1_EventScript_15F5F0
+ return
+
+LinkContestRoom1_EventScript_15F5E0:: @ 815F5E0
+ playmusicbattle 393
+ return
+
+LinkContestRoom1_EventScript_15F5E4:: @ 815F5E4
+ playmusicbattle 394
+ return
+
+LinkContestRoom1_EventScript_15F5E8:: @ 815F5E8
+ playmusicbattle 395
+ return
+
+LinkContestRoom1_EventScript_15F5EC:: @ 815F5EC
+ playmusicbattle 396
+ return
+
+LinkContestRoom1_EventScript_15F5F0:: @ 815F5F0
+ playmusicbattle 440
+ return
+
+LinkContestRoom1_MapScript1_15F5F4:: @ 815F5F4
+ compare 0x4009, 1
+ callif 1, LinkContestRoom1_EventScript_15F600
+ end
+
+LinkContestRoom1_EventScript_15F600:: @ 815F600
+ call LinkContestRoom1_EventScript_15F919
+ return
+
+LinkContestRoom1_MapScript2_15F606:: @ 815F606
+ map_script_2 0x4086, 1, LinkContestRoom1_EventScript_15F61A
+ .2byte 0
+
+LinkContestRoom1_MapScript2_15F610:: @ 815F610
+ map_script_2 0x4086, 1, LinkContestRoom1_EventScript_15F625
+ .2byte 0
+
+LinkContestRoom1_EventScript_15F61A:: @ 815F61A
+ call LinkContestRoom1_EventScript_1A514D
+ call LinkContestRoom1_EventScript_15FB64
+ end
+
+LinkContestRoom1_EventScript_15F625:: @ 815F625
+ spriteinvisible 255, 0, 9
+ call LinkContestRoom1_EventScript_15F919
+ end
+
+LinkContestRoom1_EventScript_15F630:: @ 815F630
+ call LinkContestRoom1_EventScript_15F6E6
+ call LinkContestRoom1_EventScript_15F646
+ compare 0x4000, 8
+ jumpif 0, LinkContestRoom1_EventScript_15F630
+ return
+
+LinkContestRoom1_EventScript_15F646:: @ 815F646
+ switch 0x4000
+ case 1, LinkContestRoom1_EventScript_15F699
+ case 2, LinkContestRoom1_EventScript_15F6A4
+ case 3, LinkContestRoom1_EventScript_15F6AF
+ case 4, LinkContestRoom1_EventScript_15F6BA
+ case 5, LinkContestRoom1_EventScript_15F6C5
+ case 6, LinkContestRoom1_EventScript_15F6D0
+ case 7, LinkContestRoom1_EventScript_15F6DB
+ end
+
+LinkContestRoom1_EventScript_15F699:: @ 815F699
+ copyvar 0x4014, 0x4001
+ addvar 0x4000, 1
+ return
+
+LinkContestRoom1_EventScript_15F6A4:: @ 815F6A4
+ copyvar 0x4015, 0x4001
+ addvar 0x4000, 1
+ return
+
+LinkContestRoom1_EventScript_15F6AF:: @ 815F6AF
+ copyvar 0x4016, 0x4001
+ addvar 0x4000, 1
+ return
+
+LinkContestRoom1_EventScript_15F6BA:: @ 815F6BA
+ copyvar 0x4017, 0x4001
+ addvar 0x4000, 1
+ return
+
+LinkContestRoom1_EventScript_15F6C5:: @ 815F6C5
+ copyvar 0x4018, 0x4001
+ addvar 0x4000, 1
+ return
+
+LinkContestRoom1_EventScript_15F6D0:: @ 815F6D0
+ copyvar 0x4019, 0x4001
+ addvar 0x4000, 1
+ return
+
+LinkContestRoom1_EventScript_15F6DB:: @ 815F6DB
+ copyvar 0x401a, 0x4001
+ addvar 0x4000, 1
+ return
+
+LinkContestRoom1_EventScript_15F6E6:: @ 815F6E6
+ setvar RESULT, 32
+ special 340
+ addvar RESULT, 1
+ switch RESULT
+ case 1, LinkContestRoom1_EventScript_15F859
+ case 2, LinkContestRoom1_EventScript_15F85F
+ case 3, LinkContestRoom1_EventScript_15F865
+ case 4, LinkContestRoom1_EventScript_15F86B
+ case 5, LinkContestRoom1_EventScript_15F871
+ case 6, LinkContestRoom1_EventScript_15F877
+ case 7, LinkContestRoom1_EventScript_15F87D
+ case 8, LinkContestRoom1_EventScript_15F883
+ case 9, LinkContestRoom1_EventScript_15F889
+ case 10, LinkContestRoom1_EventScript_15F88F
+ case 11, LinkContestRoom1_EventScript_15F895
+ case 12, LinkContestRoom1_EventScript_15F89B
+ case 13, LinkContestRoom1_EventScript_15F8A1
+ case 14, LinkContestRoom1_EventScript_15F8A7
+ case 15, LinkContestRoom1_EventScript_15F8AD
+ case 16, LinkContestRoom1_EventScript_15F8B3
+ case 17, LinkContestRoom1_EventScript_15F8B9
+ case 18, LinkContestRoom1_EventScript_15F8BF
+ case 19, LinkContestRoom1_EventScript_15F8C5
+ case 20, LinkContestRoom1_EventScript_15F8CB
+ case 21, LinkContestRoom1_EventScript_15F8D1
+ case 22, LinkContestRoom1_EventScript_15F8D7
+ case 23, LinkContestRoom1_EventScript_15F8DD
+ case 24, LinkContestRoom1_EventScript_15F8E3
+ case 25, LinkContestRoom1_EventScript_15F8E9
+ case 26, LinkContestRoom1_EventScript_15F8EF
+ case 27, LinkContestRoom1_EventScript_15F8F5
+ case 28, LinkContestRoom1_EventScript_15F8FB
+ case 29, LinkContestRoom1_EventScript_15F901
+ case 30, LinkContestRoom1_EventScript_15F907
+ case 31, LinkContestRoom1_EventScript_15F90D
+ case 32, LinkContestRoom1_EventScript_15F913
+ end
+
+LinkContestRoom1_EventScript_15F859:: @ 815F859
+ setvar 0x4001, 5
+ return
+
+LinkContestRoom1_EventScript_15F85F:: @ 815F85F
+ setvar 0x4001, 6
+ return
+
+LinkContestRoom1_EventScript_15F865:: @ 815F865
+ setvar 0x4001, 7
+ return
+
+LinkContestRoom1_EventScript_15F86B:: @ 815F86B
+ setvar 0x4001, 8
+ return
+
+LinkContestRoom1_EventScript_15F871:: @ 815F871
+ setvar 0x4001, 10
+ return
+
+LinkContestRoom1_EventScript_15F877:: @ 815F877
+ setvar 0x4001, 11
+ return
+
+LinkContestRoom1_EventScript_15F87D:: @ 815F87D
+ setvar 0x4001, 12
+ return
+
+LinkContestRoom1_EventScript_15F883:: @ 815F883
+ setvar 0x4001, 13
+ return
+
+LinkContestRoom1_EventScript_15F889:: @ 815F889
+ setvar 0x4001, 14
+ return
+
+LinkContestRoom1_EventScript_15F88F:: @ 815F88F
+ setvar 0x4001, 15
+ return
+
+LinkContestRoom1_EventScript_15F895:: @ 815F895
+ setvar 0x4001, 17
+ return
+
+LinkContestRoom1_EventScript_15F89B:: @ 815F89B
+ setvar 0x4001, 18
+ return
+
+LinkContestRoom1_EventScript_15F8A1:: @ 815F8A1
+ setvar 0x4001, 19
+ return
+
+LinkContestRoom1_EventScript_15F8A7:: @ 815F8A7
+ setvar 0x4001, 20
+ return
+
+LinkContestRoom1_EventScript_15F8AD:: @ 815F8AD
+ setvar 0x4001, 21
+ return
+
+LinkContestRoom1_EventScript_15F8B3:: @ 815F8B3
+ setvar 0x4001, 22
+ return
+
+LinkContestRoom1_EventScript_15F8B9:: @ 815F8B9
+ setvar 0x4001, 25
+ return
+
+LinkContestRoom1_EventScript_15F8BF:: @ 815F8BF
+ setvar 0x4001, 26
+ return
+
+LinkContestRoom1_EventScript_15F8C5:: @ 815F8C5
+ setvar 0x4001, 27
+ return
+
+LinkContestRoom1_EventScript_15F8CB:: @ 815F8CB
+ setvar 0x4001, 47
+ return
+
+LinkContestRoom1_EventScript_15F8D1:: @ 815F8D1
+ setvar 0x4001, 30
+ return
+
+LinkContestRoom1_EventScript_15F8D7:: @ 815F8D7
+ setvar 0x4001, 31
+ return
+
+LinkContestRoom1_EventScript_15F8DD:: @ 815F8DD
+ setvar 0x4001, 32
+ return
+
+LinkContestRoom1_EventScript_15F8E3:: @ 815F8E3
+ setvar 0x4001, 33
+ return
+
+LinkContestRoom1_EventScript_15F8E9:: @ 815F8E9
+ setvar 0x4001, 34
+ return
+
+LinkContestRoom1_EventScript_15F8EF:: @ 815F8EF
+ setvar 0x4001, 35
+ return
+
+LinkContestRoom1_EventScript_15F8F5:: @ 815F8F5
+ setvar 0x4001, 36
+ return
+
+LinkContestRoom1_EventScript_15F8FB:: @ 815F8FB
+ setvar 0x4001, 37
+ return
+
+LinkContestRoom1_EventScript_15F901:: @ 815F901
+ setvar 0x4001, 38
+ return
+
+LinkContestRoom1_EventScript_15F907:: @ 815F907
+ setvar 0x4001, 44
+ return
+
+LinkContestRoom1_EventScript_15F90D:: @ 815F90D
+ setvar 0x4001, 45
+ return
+
+LinkContestRoom1_EventScript_15F913:: @ 815F913
+ setvar 0x4001, 46
+ return
+
+LinkContestRoom1_EventScript_15F919:: @ 815F919
+ switch 0x4088
+ case 1, LinkContestRoom1_EventScript_15F956
+ case 2, LinkContestRoom1_EventScript_15F969
+ case 3, LinkContestRoom1_EventScript_15F9C4
+ case 4, LinkContestRoom1_EventScript_15FA70
+ case 5, LinkContestRoom1_EventScript_15FA70
+ return
+
+LinkContestRoom1_EventScript_15F956:: @ 815F956
+ createvsprite 5, 20, 3, 2, 3, 1
+ createvsprite 46, 24, 11, 2, 3, 1
+ return
+
+LinkContestRoom1_EventScript_15F969:: @ 815F969
+ createvsprite 45, 0, 2, 3, 3, 4
+ createvsprite 66, 1, 2, 4, 3, 4
+ createvsprite 55, 2, 2, 7, 3, 4
+ createvsprite 46, 3, 2, 8, 3, 4
+ createvsprite 5, 10, 12, 3, 3, 3
+ createvsprite 20, 11, 12, 4, 3, 3
+ createvsprite 24, 12, 12, 7, 3, 3
+ createvsprite 12, 13, 12, 8, 3, 3
+ createvsprite 47, 20, 3, 2, 3, 1
+ createvsprite 46, 24, 11, 2, 3, 1
+ return
+
+LinkContestRoom1_EventScript_15F9C4:: @ 815F9C4
+ createvsprite 45, 0, 2, 3, 3, 4
+ createvsprite 66, 1, 2, 4, 3, 4
+ createvsprite 55, 2, 2, 7, 3, 4
+ createvsprite 48, 3, 2, 8, 3, 4
+ createvsprite 5, 10, 12, 3, 3, 3
+ createvsprite 20, 11, 12, 4, 3, 3
+ createvsprite 24, 12, 12, 7, 3, 3
+ createvsprite 45, 13, 12, 8, 3, 3
+ createvsprite 22, 20, 3, 2, 3, 1
+ createvsprite 23, 20, 6, 2, 3, 1
+ createvsprite 34, 20, 7, 2, 3, 1
+ createvsprite 46, 24, 8, 2, 3, 1
+ createvsprite 48, 24, 11, 2, 3, 1
+ createvsprite 11, 25, 3, 9, 3, 2
+ createvsprite 35, 26, 4, 9, 3, 2
+ createvsprite 17, 27, 5, 9, 3, 2
+ createvsprite 41, 28, 9, 9, 3, 2
+ createvsprite 38, 29, 10, 9, 3, 2
+ createvsprite 83, 30, 11, 9, 3, 2
+ return
+
+LinkContestRoom1_EventScript_15FA70:: @ 815FA70
+ createvsprite 45, 0, 2, 3, 3, 4
+ createvsprite 66, 1, 2, 4, 3, 4
+ createvsprite 55, 2, 2, 7, 3, 4
+ createvsprite 12, 3, 2, 8, 3, 4
+ createvsprite 39, 4, 1, 3, 3, 4
+ createvsprite 34, 6, 1, 5, 3, 4
+ createvsprite 26, 7, 1, 6, 3, 4
+ createvsprite 48, 9, 1, 8, 3, 4
+ createvsprite 5, 10, 12, 3, 3, 3
+ createvsprite 20, 11, 12, 4, 3, 3
+ createvsprite 24, 12, 12, 7, 3, 3
+ createvsprite 45, 13, 12, 8, 3, 3
+ createvsprite 50, 14, 13, 3, 3, 3
+ createvsprite 52, 15, 13, 4, 3, 3
+ createvsprite 65, 17, 13, 6, 3, 3
+ createvsprite 83, 18, 13, 7, 3, 3
+ createvsprite 116, 19, 13, 8, 3, 3
+ createvsprite 25, 20, 3, 2, 3, 1
+ createvsprite 31, 21, 6, 2, 3, 1
+ createvsprite 33, 22, 7, 2, 3, 1
+ createvsprite 46, 24, 11, 2, 3, 1
+ createvsprite 49, 25, 3, 9, 3, 2
+ createvsprite 35, 26, 4, 9, 3, 2
+ createvsprite 48, 27, 5, 9, 3, 2
+ createvsprite 41, 28, 9, 9, 3, 2
+ createvsprite 38, 29, 10, 9, 3, 2
+ createvsprite 83, 30, 11, 9, 3, 2
+ return
+
+LinkContestRoom1_EventScript_15FB64:: @ 815FB64
+ switch 0x4088
+ case 1, LinkContestRoom1_EventScript_15FBA1
+ case 2, LinkContestRoom1_EventScript_15FBAD
+ case 3, LinkContestRoom1_EventScript_15FBB9
+ case 4, LinkContestRoom1_EventScript_15FBC5
+ case 5, LinkContestRoom1_EventScript_15FBD1
+ return
+
+LinkContestRoom1_EventScript_15FBA1:: @ 815FBA1
+ inccounter 36
+ warp VerdanturfTown_ContestLobby, 255, 5, 4
+ waitstate
+ end
+
+LinkContestRoom1_EventScript_15FBAD:: @ 815FBAD
+ inccounter 36
+ warp FallarborTown_ContestLobby, 255, 5, 4
+ waitstate
+ end
+
+LinkContestRoom1_EventScript_15FBB9:: @ 815FBB9
+ inccounter 36
+ warp SlateportCity_ContestLobby, 255, 5, 4
+ waitstate
+ end
+
+LinkContestRoom1_EventScript_15FBC5:: @ 815FBC5
+ inccounter 36
+ warp LilycoveCity_ContestLobby, 255, 6, 4
+ waitstate
+ end
+
+LinkContestRoom1_EventScript_15FBD1:: @ 815FBD1
+ warp LilycoveCity_ContestLobby, 255, 7, 4
+ waitstate
+ end
+
+FallarborTown_ContestLobby_EventScript_15FBDB:: @ 815FBDB
+LilycoveCity_ContestLobby_EventScript_15FBDB:: @ 815FBDB
+SlateportCity_ContestLobby_EventScript_15FBDB:: @ 815FBDB
+VerdanturfTown_ContestLobby_EventScript_15FBDB:: @ 815FBDB
+ checkgender
+ compare RESULT, 0
+ jumpeq FallarborTown_ContestLobby_EventScript_15FBF3
+ compare RESULT, 1
+ jumpeq FallarborTown_ContestLobby_EventScript_15FBF9
+ return
+
+FallarborTown_ContestLobby_EventScript_15FBF3:: @ 815FBF3
+ setvar 0x4013, 100
+ return
+
+FallarborTown_ContestLobby_EventScript_15FBF9:: @ 815FBF9
+ setvar 0x4013, 105
+ return
+
diff --git a/data/maps/scripts/VerdanturfTown.s b/data/maps/scripts/VerdanturfTown.s
new file mode 100644
index 000000000..6b702a243
--- /dev/null
+++ b/data/maps/scripts/VerdanturfTown.s
@@ -0,0 +1,66 @@
+VerdanturfTown_MapScripts:: @ 814E854
+ map_script 3, VerdanturfTown_MapScript1_14E85A
+ .byte 0
+
+VerdanturfTown_MapScript1_14E85A:: @ 814E85A
+ setflag 2068
+ setvar 0x4086, 0
+ setflag 801
+ end
+
+VerdanturfTown_EventScript_14E866:: @ 814E866
+ lock
+ faceplayer
+ checkflag 199
+ jumpeq VerdanturfTown_EventScript_14E885
+ msgbox VerdanturfTown_Text_16CAEB, 4
+ move 2, VerdanturfTown_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+VerdanturfTown_EventScript_14E885:: @ 814E885
+ msgbox VerdanturfTown_Text_16CBCE, 4
+ move 2, VerdanturfTown_Movement_1A083D
+ waitmove 0
+ release
+ end
+
+VerdanturfTown_EventScript_14E899:: @ 814E899
+ msgbox VerdanturfTown_Text_16CC24, 2
+ end
+
+VerdanturfTown_EventScript_14E8A2:: @ 814E8A2
+ msgbox VerdanturfTown_Text_16CCD0, 2
+ end
+
+VerdanturfTown_EventScript_14E8AB:: @ 814E8AB
+ lock
+ faceplayer
+ checkflag 199
+ jumpeq VerdanturfTown_EventScript_14E8C0
+ msgbox VerdanturfTown_Text_16CD4D, 4
+ release
+ end
+
+VerdanturfTown_EventScript_14E8C0:: @ 814E8C0
+ msgbox VerdanturfTown_Text_16CE30, 4
+ release
+ end
+
+VerdanturfTown_EventScript_14E8CA:: @ 814E8CA
+ msgbox VerdanturfTown_Text_16CEC0, 3
+ end
+
+VerdanturfTown_EventScript_14E8D3:: @ 814E8D3
+ msgbox VerdanturfTown_Text_16CF0D, 3
+ end
+
+VerdanturfTown_EventScript_14E8DC:: @ 814E8DC
+ msgbox VerdanturfTown_Text_16CF1B, 3
+ end
+
+VerdanturfTown_EventScript_14E8E5:: @ 814E8E5
+ msgbox VerdanturfTown_Text_16CF6D, 3
+ end
+
diff --git a/data/maps/scripts/VerdanturfTown_ContestHall.s b/data/maps/scripts/VerdanturfTown_ContestHall.s
new file mode 100644
index 000000000..fe4f91cef
--- /dev/null
+++ b/data/maps/scripts/VerdanturfTown_ContestHall.s
@@ -0,0 +1,21 @@
+VerdanturfTown_ContestHall_MapScripts:: @ 8153E95
+ .byte 0
+
+ .incbin "baserom.gba", 0x153e96, 0x1
+
+VerdanturfTown_ContestHall_EventScript_153E97:: @ 8153E97
+ msgbox VerdanturfTown_ContestHall_Text_177FB4, 2
+ end
+
+VerdanturfTown_ContestHall_EventScript_153EA0:: @ 8153EA0
+ msgbox VerdanturfTown_ContestHall_Text_178091, 2
+ end
+
+VerdanturfTown_ContestHall_EventScript_153EA9:: @ 8153EA9
+ msgbox VerdanturfTown_ContestHall_Text_178120, 2
+ end
+
+VerdanturfTown_ContestHall_EventScript_153EB2:: @ 8153EB2
+ msgbox VerdanturfTown_ContestHall_Text_1781A5, 3
+ end
+
diff --git a/data/maps/scripts/VerdanturfTown_ContestLobby.s b/data/maps/scripts/VerdanturfTown_ContestLobby.s
new file mode 100644
index 000000000..2f0d74896
--- /dev/null
+++ b/data/maps/scripts/VerdanturfTown_ContestLobby.s
@@ -0,0 +1,130 @@
+VerdanturfTown_ContestLobby_MapScripts:: @ 8153D6A
+ map_script 3, VerdanturfTown_ContestLobby_MapScript1_153D70
+ .byte 0
+
+VerdanturfTown_ContestLobby_MapScript1_153D70:: @ 8153D70
+ call VerdanturfTown_ContestLobby_EventScript_1AE188
+ end
+
+VerdanturfTown_ContestLobby_EventScript_153D76:: @ 8153D76
+ setvar 0x800b, 5
+ setvar 0x8010, 0
+ call VerdanturfTown_ContestLobby_EventScript_1A4E92
+ call VerdanturfTown_ContestLobby_EventScript_153DA1
+ special 83
+ call VerdanturfTown_ContestLobby_EventScript_15FBDB
+ setvar 0x4088, 1
+ warp LinkContestRoom1, 255, 7, 5
+ waitstate
+ end
+
+VerdanturfTown_ContestLobby_EventScript_153DA1:: @ 8153DA1
+ lockall
+ move 1, VerdanturfTown_ContestLobby_Movement_153E25
+ waitmove 0
+ playsfx 71
+ setmaptile 4, 2, 545, 1
+ setmaptile 4, 3, 609, 1
+ special 142
+ move 1, VerdanturfTown_ContestLobby_Movement_153E28
+ waitmove 0
+ playsfx 71
+ setmaptile 4, 2, 721, 1
+ setmaptile 4, 3, 729, 1
+ special 142
+ pause 20
+ move 1, VerdanturfTown_ContestLobby_Movement_153E35
+ waitmove 0
+ move 255, VerdanturfTown_ContestLobby_Movement_153E23
+ waitmove 0
+ msgbox VerdanturfTown_ContestLobby_Text_1A6832, 4
+ closebutton
+ move 1, VerdanturfTown_ContestLobby_Movement_153E2C
+ move 255, VerdanturfTown_ContestLobby_Movement_153E19
+ waitmove 0
+ releaseall
+ return
+
+VerdanturfTown_ContestLobby_Movement_153E19:: @ 8153E19
+ step_left
+ step_left
+ step_left
+ step_left
+ step_up
+ step_up
+ step_up
+ step_13
+ step_54
+ step_end
+
+VerdanturfTown_ContestLobby_Movement_153E23:: @ 8153E23
+ step_27
+ step_end
+
+VerdanturfTown_ContestLobby_Movement_153E25:: @ 8153E25
+ step_left
+ step_25
+ step_end
+
+VerdanturfTown_ContestLobby_Movement_153E28:: @ 8153E28
+ step_down
+ step_down
+ step_26
+ step_end
+
+VerdanturfTown_ContestLobby_Movement_153E2C:: @ 8153E2C
+ step_left
+ step_left
+ step_left
+ step_up
+ step_up
+ step_up
+ step_13
+ step_54
+ step_end
+
+VerdanturfTown_ContestLobby_Movement_153E35:: @ 8153E35
+ step_28
+ step_end
+
+VerdanturfTown_ContestLobby_EventScript_153E37:: @ 8153E37
+ lockall
+ fadescreen 1
+ showcontestwinner 1
+ releaseall
+ end
+
+VerdanturfTown_ContestLobby_EventScript_153E3E:: @ 8153E3E
+ msgbox VerdanturfTown_ContestLobby_Text_177D6C, 2
+ end
+
+VerdanturfTown_ContestLobby_EventScript_153E47:: @ 8153E47
+ lock
+ faceplayer
+ checkflag 235
+ jumpeq VerdanturfTown_ContestLobby_EventScript_153E76
+ msgbox VerdanturfTown_ContestLobby_Text_177DEC, 4
+ giveitem ITEM_TM45
+ compare RESULT, 0
+ jumpeq VerdanturfTown_ContestLobby_EventScript_1A029B
+ setflag 235
+ release
+ end
+
+VerdanturfTown_ContestLobby_EventScript_153E76:: @ 8153E76
+ msgbox VerdanturfTown_ContestLobby_Text_177E98, 4
+ release
+ end
+
+VerdanturfTown_ContestLobby_EventScript_153E80:: @ 8153E80
+ msgbox VerdanturfTown_ContestLobby_Text_177ECD, 2
+ end
+
+VerdanturfTown_ContestLobby_EventScript_153E89:: @ 8153E89
+ lockall
+ special 259
+ waitbutton
+ hidebox 0, 0, 29, 19
+ releaseall
+ end
+
diff --git a/data/maps/scripts/VerdanturfTown_FriendshipRatersHouse.s b/data/maps/scripts/VerdanturfTown_FriendshipRatersHouse.s
new file mode 100644
index 000000000..f2b561733
--- /dev/null
+++ b/data/maps/scripts/VerdanturfTown_FriendshipRatersHouse.s
@@ -0,0 +1,64 @@
+VerdanturfTown_FriendshipRatersHouse_MapScripts:: @ 815402F
+ .byte 0
+
+VerdanturfTown_FriendshipRatersHouse_EventScript_154030:: @ 8154030
+ lock
+ faceplayer
+ msgbox VerdanturfTown_FriendshipRatersHouse_Text_178A9C, 4
+ specialval RESULT, 230
+ switch RESULT
+ case 0, VerdanturfTown_FriendshipRatersHouse_EventScript_154093
+ case 1, VerdanturfTown_FriendshipRatersHouse_EventScript_15409D
+ case 2, VerdanturfTown_FriendshipRatersHouse_EventScript_1540A7
+ case 3, VerdanturfTown_FriendshipRatersHouse_EventScript_1540B1
+ case 4, VerdanturfTown_FriendshipRatersHouse_EventScript_1540BB
+ case 5, VerdanturfTown_FriendshipRatersHouse_EventScript_1540C5
+ case 6, VerdanturfTown_FriendshipRatersHouse_EventScript_1540CF
+ release
+ end
+
+VerdanturfTown_FriendshipRatersHouse_EventScript_154093:: @ 8154093
+ msgbox VerdanturfTown_FriendshipRatersHouse_Text_178C90, 4
+ release
+ end
+
+VerdanturfTown_FriendshipRatersHouse_EventScript_15409D:: @ 815409D
+ msgbox VerdanturfTown_FriendshipRatersHouse_Text_178C39, 4
+ release
+ end
+
+VerdanturfTown_FriendshipRatersHouse_EventScript_1540A7:: @ 81540A7
+ msgbox VerdanturfTown_FriendshipRatersHouse_Text_178BFA, 4
+ release
+ end
+
+VerdanturfTown_FriendshipRatersHouse_EventScript_1540B1:: @ 81540B1
+ msgbox VerdanturfTown_FriendshipRatersHouse_Text_178BC4, 4
+ release
+ end
+
+VerdanturfTown_FriendshipRatersHouse_EventScript_1540BB:: @ 81540BB
+ msgbox VerdanturfTown_FriendshipRatersHouse_Text_178B82, 4
+ release
+ end
+
+VerdanturfTown_FriendshipRatersHouse_EventScript_1540C5:: @ 81540C5
+ msgbox VerdanturfTown_FriendshipRatersHouse_Text_178B43, 4
+ release
+ end
+
+VerdanturfTown_FriendshipRatersHouse_EventScript_1540CF:: @ 81540CF
+ msgbox VerdanturfTown_FriendshipRatersHouse_Text_178AF2, 4
+ release
+ end
+
+VerdanturfTown_FriendshipRatersHouse_EventScript_1540D9:: @ 81540D9
+ lock
+ faceplayer
+ checksound
+ pokecry SPECIES_PIKACHU, 0
+ msgbox VerdanturfTown_FriendshipRatersHouse_Text_178CFD, 4
+ waitpokecry
+ release
+ end
+
diff --git a/data/maps/scripts/VerdanturfTown_House.s b/data/maps/scripts/VerdanturfTown_House.s
new file mode 100644
index 000000000..fc9f5ffd9
--- /dev/null
+++ b/data/maps/scripts/VerdanturfTown_House.s
@@ -0,0 +1,11 @@
+VerdanturfTown_House_MapScripts:: @ 81540EC
+ .byte 0
+
+VerdanturfTown_House_EventScript_1540ED:: @ 81540ED
+ msgbox VerdanturfTown_House_Text_178D11, 2
+ end
+
+VerdanturfTown_House_EventScript_1540F6:: @ 81540F6
+ msgbox VerdanturfTown_House_Text_178D8E, 2
+ end
+
diff --git a/data/maps/scripts/VerdanturfTown_Mart.s b/data/maps/scripts/VerdanturfTown_Mart.s
new file mode 100644
index 000000000..08634cb85
--- /dev/null
+++ b/data/maps/scripts/VerdanturfTown_Mart.s
@@ -0,0 +1,43 @@
+VerdanturfTown_Mart_MapScripts:: @ 8153EBB
+ .byte 0
+
+VerdanturfTown_Mart_EventScript_153EBC:: @ 8153EBC
+ lock
+ faceplayer
+ message VerdanturfTown_Mart_Text_1A0BE4
+ waittext
+ pokemart VerdanturfTown_Mart_Pokemart_153ED4
+ msgbox VerdanturfTown_Mart_Text_1A0C02, 4
+ release
+ end
+
+ .incbin "baserom.gba", 0x153ed3, 0x1
+
+VerdanturfTown_Mart_Pokemart_153ED4:: @ 8153ED4
+ .2byte ITEM_GREAT_BALL
+ .2byte ITEM_NEST_BALL
+ .2byte ITEM_SUPER_POTION
+ .2byte ITEM_ANTIDOTE
+ .2byte ITEM_PARALYZE_HEAL
+ .2byte ITEM_AWAKENING
+ .2byte ITEM_BURN_HEAL
+ .2byte ITEM_ICE_HEAL
+ .2byte ITEM_REPEL
+ .2byte ITEM_X_SPECIAL
+ .2byte ITEM_FLUFFY_TAIL
+ .2byte ITEM_NONE
+ release
+ end
+
+VerdanturfTown_Mart_EventScript_153EEE:: @ 8153EEE
+ msgbox VerdanturfTown_Mart_Text_1781C9, 2
+ end
+
+VerdanturfTown_Mart_EventScript_153EF7:: @ 8153EF7
+ msgbox VerdanturfTown_Mart_Text_178240, 2
+ end
+
+VerdanturfTown_Mart_EventScript_153F00:: @ 8153F00
+ msgbox VerdanturfTown_Mart_Text_1782C0, 2
+ end
+
diff --git a/data/maps/scripts/VerdanturfTown_PokemonCenter_1F.s b/data/maps/scripts/VerdanturfTown_PokemonCenter_1F.s
new file mode 100644
index 000000000..7b8dcfc8f
--- /dev/null
+++ b/data/maps/scripts/VerdanturfTown_PokemonCenter_1F.s
@@ -0,0 +1,26 @@
+VerdanturfTown_PokemonCenter_1F_MapScripts:: @ 8153F09
+ map_script 3, VerdanturfTown_PokemonCenter_1F_MapScript1_153F0F
+ .byte 0
+
+VerdanturfTown_PokemonCenter_1F_MapScript1_153F0F:: @ 8153F0F
+ sethealplace 18
+ call VerdanturfTown_PokemonCenter_1F_EventScript_19FD1B
+ end
+
+PacifidlogTown_PokemonCenter_1F_EventScript_153F18:: @ 8153F18
+VerdanturfTown_PokemonCenter_1F_EventScript_153F18:: @ 8153F18
+ setvar 0x800b, 1
+ call VerdanturfTown_PokemonCenter_1F_EventScript_19FD5B
+ waittext
+ waitbutton
+ release
+ end
+
+VerdanturfTown_PokemonCenter_1F_EventScript_153F26:: @ 8153F26
+ msgbox VerdanturfTown_PokemonCenter_1F_Text_17831D, 2
+ end
+
+VerdanturfTown_PokemonCenter_1F_EventScript_153F2F:: @ 8153F2F
+ msgbox VerdanturfTown_PokemonCenter_1F_Text_178389, 2
+ end
+
diff --git a/data/maps/scripts/VerdanturfTown_PokemonCenter_2F.s b/data/maps/scripts/VerdanturfTown_PokemonCenter_2F.s
new file mode 100644
index 000000000..113e3cfee
--- /dev/null
+++ b/data/maps/scripts/VerdanturfTown_PokemonCenter_2F.s
@@ -0,0 +1,20 @@
+VerdanturfTown_PokemonCenter_2F_MapScripts:: @ 8153F38
+ map_script 2, VerdanturfTown_PokemonCenter_2F_MapScript2_1A3D88
+ map_script 4, VerdanturfTown_PokemonCenter_2F_MapScript2_1A3D03
+ map_script 1, VerdanturfTown_PokemonCenter_2F_MapScript1_1A3D32
+ .byte 0
+
+PacifidlogTown_PokemonCenter_2F_EventScript_153F48:: @ 8153F48
+VerdanturfTown_PokemonCenter_2F_EventScript_153F48:: @ 8153F48
+ call VerdanturfTown_PokemonCenter_2F_EventScript_1A3EA6
+ end
+
+PacifidlogTown_PokemonCenter_2F_EventScript_153F4E:: @ 8153F4E
+VerdanturfTown_PokemonCenter_2F_EventScript_153F4E:: @ 8153F4E
+ call VerdanturfTown_PokemonCenter_2F_EventScript_1A40CC
+ end
+
+VerdanturfTown_PokemonCenter_2F_EventScript_153F54:: @ 8153F54
+ call VerdanturfTown_PokemonCenter_2F_EventScript_1A41FB
+ end
+
diff --git a/data/maps/scripts/VerdanturfTown_WandasHouse.s b/data/maps/scripts/VerdanturfTown_WandasHouse.s
new file mode 100644
index 000000000..eb497c426
--- /dev/null
+++ b/data/maps/scripts/VerdanturfTown_WandasHouse.s
@@ -0,0 +1,92 @@
+VerdanturfTown_WandasHouse_MapScripts:: @ 8153F5A
+ .byte 0
+
+VerdanturfTown_WandasHouse_EventScript_153F5B:: @ 8153F5B
+ lock
+ faceplayer
+ checkflag 193
+ jumpeq VerdanturfTown_WandasHouse_EventScript_153F73
+ msgbox VerdanturfTown_WandasHouse_Text_1783F6, 4
+ setflag 193
+ release
+ end
+
+VerdanturfTown_WandasHouse_EventScript_153F73:: @ 8153F73
+ msgbox VerdanturfTown_WandasHouse_Text_178521, 4
+ release
+ end
+
+VerdanturfTown_WandasHouse_EventScript_153F7D:: @ 8153F7D
+ lock
+ faceplayer
+ checkflag 126
+ jumpeq VerdanturfTown_WandasHouse_EventScript_153FA5
+ checkflag 1213
+ jumpeq VerdanturfTown_WandasHouse_EventScript_153F9B
+ msgbox VerdanturfTown_WandasHouse_Text_17859A, 4
+ release
+ end
+
+VerdanturfTown_WandasHouse_EventScript_153F9B:: @ 8153F9B
+ msgbox VerdanturfTown_WandasHouse_Text_178683, 4
+ release
+ end
+
+VerdanturfTown_WandasHouse_EventScript_153FA5:: @ 8153FA5
+ msgbox VerdanturfTown_WandasHouse_Text_1786B5, 4
+ release
+ end
+
+VerdanturfTown_WandasHouse_EventScript_153FAF:: @ 8153FAF
+ msgbox VerdanturfTown_WandasHouse_Text_17886A, 2
+ end
+
+VerdanturfTown_WandasHouse_EventScript_153FB8:: @ 8153FB8
+ lock
+ faceplayer
+ checkflag 1213
+ jumpeq VerdanturfTown_WandasHouse_EventScript_153FE0
+ checkflag 190
+ jumpeq VerdanturfTown_WandasHouse_EventScript_153FD6
+ msgbox VerdanturfTown_WandasHouse_Text_1787FB, 4
+ release
+ end
+
+VerdanturfTown_WandasHouse_EventScript_153FD6:: @ 8153FD6
+ msgbox VerdanturfTown_WandasHouse_Text_178739, 4
+ release
+ end
+
+VerdanturfTown_WandasHouse_EventScript_153FE0:: @ 8153FE0
+ msgbox VerdanturfTown_WandasHouse_Text_1787FB, 4
+ release
+ end
+
+VerdanturfTown_WandasHouse_EventScript_153FEA:: @ 8153FEA
+ lock
+ faceplayer
+ checkflag 126
+ jumpeq VerdanturfTown_WandasHouse_EventScript_154025
+ checkflag 1213
+ jumpeq VerdanturfTown_WandasHouse_EventScript_15401B
+ checkflag 199
+ jumpeq VerdanturfTown_WandasHouse_EventScript_154011
+ msgbox VerdanturfTown_WandasHouse_Text_1788B1, 4
+ release
+ end
+
+VerdanturfTown_WandasHouse_EventScript_154011:: @ 8154011
+ msgbox VerdanturfTown_WandasHouse_Text_178983, 4
+ release
+ end
+
+VerdanturfTown_WandasHouse_EventScript_15401B:: @ 815401B
+ msgbox VerdanturfTown_WandasHouse_Text_1789DD, 4
+ release
+ end
+
+VerdanturfTown_WandasHouse_EventScript_154025:: @ 8154025
+ msgbox VerdanturfTown_WandasHouse_Text_178A47, 4
+ release
+ end
+
diff --git a/data/maps/scripts/VictoryRoad_1F.s b/data/maps/scripts/VictoryRoad_1F.s
new file mode 100644
index 000000000..88865f4eb
--- /dev/null
+++ b/data/maps/scripts/VictoryRoad_1F.s
@@ -0,0 +1,121 @@
+VictoryRoad_1F_MapScripts:: @ 815DE83
+ map_script 3, VictoryRoad_1F_MapScript1_15DE89
+ .byte 0
+
+VictoryRoad_1F_MapScript1_15DE89:: @ 815DE89
+ checkflag 126
+ callif 1, VictoryRoad_1F_EventScript_15DE93
+ end
+
+VictoryRoad_1F_EventScript_15DE93:: @ 815DE93
+ setflag 858
+ return
+
+VictoryRoad_1F_EventScript_15DE97:: @ 815DE97
+ lockall
+ reappear 4
+ move 4, VictoryRoad_1F_Movement_15DF07
+ waitmove 0
+ jump VictoryRoad_1F_EventScript_15DED3
+ end
+
+VictoryRoad_1F_EventScript_15DEAB:: @ 815DEAB
+ lockall
+ reappear 4
+ move 4, VictoryRoad_1F_Movement_15DF13
+ waitmove 0
+ jump VictoryRoad_1F_EventScript_15DED3
+ end
+
+VictoryRoad_1F_EventScript_15DEBF:: @ 815DEBF
+ lockall
+ reappear 4
+ move 4, VictoryRoad_1F_Movement_15DF1E
+ waitmove 0
+ jump VictoryRoad_1F_EventScript_15DED3
+ end
+
+VictoryRoad_1F_EventScript_15DED3:: @ 815DED3
+ move 255, VictoryRoad_1F_Movement_1A083F
+ waitmove 0
+ msgbox VictoryRoad_1F_Text_19782B, 4
+ trainerbattle 3, 519, 0, VictoryRoad_1F_Text_197943
+ msgbox VictoryRoad_1F_Text_197967, 4
+ clearflag 858
+ moveoffscreen 4
+ setflag 126
+ setvar 0x40c3, 1
+ releaseall
+ end
+
+VictoryRoad_1F_Movement_15DF07:: @ 815DF07
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_right
+ step_right
+ step_end
+
+VictoryRoad_1F_Movement_15DF13:: @ 815DF13
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_right
+ step_right
+ step_end
+
+VictoryRoad_1F_Movement_15DF1E:: @ 815DF1E
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_up
+ step_right
+ step_right
+ step_end
+
+VictoryRoad_1F_EventScript_15DF28:: @ 815DF28
+ msgbox VictoryRoad_1F_Text_197967, 2
+ end
+
+VictoryRoad_1F_EventScript_15DF31:: @ 815DF31
+ trainerbattle 0, 657, 0, VictoryRoad_1F_Text_1979BA, VictoryRoad_1F_Text_197A23
+ specialval RESULT, 57
+ compare RESULT, 1
+ jumpeq VictoryRoad_1F_EventScript_15DF58
+ msgbox VictoryRoad_1F_Text_197A47, 6
+ end
+
+VictoryRoad_1F_EventScript_15DF58:: @ 815DF58
+ trainerbattle 5, 657, 0, VictoryRoad_1F_Text_1979BA, VictoryRoad_1F_Text_197A23
+ msgbox VictoryRoad_1F_Text_197A47, 6
+ end
+
+VictoryRoad_1F_EventScript_15DF6F:: @ 815DF6F
+ trainerbattle 0, 79, 0, VictoryRoad_1F_Text_197AD1, VictoryRoad_1F_Text_197B1A
+ msgbox VictoryRoad_1F_Text_197B36, 6
+ end
+
+VictoryRoad_1F_EventScript_15DF86:: @ 815DF86
+ trainerbattle 0, 80, 0, VictoryRoad_1F_Text_197B99, VictoryRoad_1F_Text_197BE1
+ msgbox VictoryRoad_1F_Text_197BF7, 6
+ end
+
+VictoryRoad_1F_EventScript_15DF9D:: @ 815DF9D
+ trainerbattle 0, 96, 0, VictoryRoad_1F_Text_197C45, VictoryRoad_1F_Text_197C8D
+ msgbox VictoryRoad_1F_Text_197CAF, 6
+ end
+
diff --git a/data/maps/scripts/VictoryRoad_B1F.s b/data/maps/scripts/VictoryRoad_B1F.s
new file mode 100644
index 000000000..a4f40b815
--- /dev/null
+++ b/data/maps/scripts/VictoryRoad_B1F.s
@@ -0,0 +1,18 @@
+VictoryRoad_B1F_MapScripts:: @ 815DFB4
+ .byte 0
+
+VictoryRoad_B1F_EventScript_15DFB5:: @ 815DFB5
+ trainerbattle 0, 81, 0, VictoryRoad_B1F_Text_197CE9, VictoryRoad_B1F_Text_197D42
+ msgbox VictoryRoad_B1F_Text_197D5B, 6
+ end
+
+VictoryRoad_B1F_EventScript_15DFCC:: @ 815DFCC
+ trainerbattle 0, 97, 0, VictoryRoad_B1F_Text_197D98, VictoryRoad_B1F_Text_197DE8
+ msgbox VictoryRoad_B1F_Text_197E13, 6
+ end
+
+VictoryRoad_B1F_EventScript_15DFE3:: @ 815DFE3
+ trainerbattle 0, 98, 0, VictoryRoad_B1F_Text_197E5D, VictoryRoad_B1F_Text_197EA6
+ msgbox VictoryRoad_B1F_Text_197EB6, 6
+ end
+
diff --git a/data/maps/scripts/VictoryRoad_B2F.s b/data/maps/scripts/VictoryRoad_B2F.s
new file mode 100644
index 000000000..39ac84e92
--- /dev/null
+++ b/data/maps/scripts/VictoryRoad_B2F.s
@@ -0,0 +1,23 @@
+VictoryRoad_B2F_MapScripts:: @ 815DFFA
+ .byte 0
+
+VictoryRoad_B2F_EventScript_15DFFB:: @ 815DFFB
+ trainerbattle 0, 82, 0, VictoryRoad_B2F_Text_197EF2, VictoryRoad_B2F_Text_197F46
+ msgbox VictoryRoad_B2F_Text_197F71, 6
+ end
+
+VictoryRoad_B2F_EventScript_15E012:: @ 815E012
+ trainerbattle 0, 83, 0, VictoryRoad_B2F_Text_197FE5, VictoryRoad_B2F_Text_19802B
+ msgbox VictoryRoad_B2F_Text_198047, 6
+ end
+
+VictoryRoad_B2F_EventScript_15E029:: @ 815E029
+ trainerbattle 0, 99, 0, VictoryRoad_B2F_Text_198089, VictoryRoad_B2F_Text_1980AD
+ msgbox VictoryRoad_B2F_Text_1980C8, 6
+ end
+
+VictoryRoad_B2F_EventScript_15E040:: @ 815E040
+ trainerbattle 0, 100, 0, VictoryRoad_B2F_Text_198121, VictoryRoad_B2F_Text_1981A3
+ msgbox VictoryRoad_B2F_Text_1981BA, 6
+ end
+
diff --git a/data/maps/text/AbandonedShip_CaptainsOffice.s b/data/maps/text/AbandonedShip_CaptainsOffice.s
new file mode 100644
index 000000000..69d09ed99
--- /dev/null
+++ b/data/maps/text/AbandonedShip_CaptainsOffice.s
@@ -0,0 +1,17 @@
+AbandonedShip_CaptainsOffice_Text_198C85:: @ 8198C85
+ .string "I’m investigating this ship on behalf\n"
+ .string "of CAPT. STERN.\p"
+ .string "He also asked me to find a SCANNER,\n"
+ .string "but I haven’t had any success...$"
+
+AbandonedShip_CaptainsOffice_Text_198D00:: @ 8198D00
+ .string "Oh! That’s a SCANNER!\p"
+ .string "Listen, can I get you to deliver that\n"
+ .string "to CAPT. STERN?\p"
+ .string "I want to investigate this ship a\n"
+ .string "little more.$"
+
+AbandonedShip_CaptainsOffice_Text_198D7B:: @ 8198D7B
+ .string "This ship is called S.S. CACTUS.\n"
+ .string "It seems to be from an earlier era.$"
+
diff --git a/data/maps/text/AbandonedShip_Corridors_1F.s b/data/maps/text/AbandonedShip_Corridors_1F.s
new file mode 100644
index 000000000..9a96e04f9
--- /dev/null
+++ b/data/maps/text/AbandonedShip_Corridors_1F.s
@@ -0,0 +1,15 @@
+AbandonedShip_Corridors_1F_Text_19843D:: @ 819843D
+ .string "What’s so funny about having my inner\n"
+ .string "tube aboard the ship?$"
+
+AbandonedShip_Corridors_1F_Text_198479:: @ 8198479
+ .string "Whoa, you overwhelmed me!$"
+
+AbandonedShip_Corridors_1F_Text_198493:: @ 8198493
+ .string "It’s not easy throwing POKé BALLS\n"
+ .string "while hanging on to an inner tube!$"
+
+AbandonedShip_Corridors_1F_Text_1984D8:: @ 81984D8
+ .string "Isn’t it fun here?\n"
+ .string "I get excited just being here!$"
+
diff --git a/data/maps/text/AbandonedShip_Corridors_B1F.s b/data/maps/text/AbandonedShip_Corridors_B1F.s
new file mode 100644
index 000000000..887a6c11a
--- /dev/null
+++ b/data/maps/text/AbandonedShip_Corridors_B1F.s
@@ -0,0 +1,29 @@
+AbandonedShip_Corridors_B1F_Text_19856F:: @ 819856F
+ .string "When we go out to sea, we SAILORS\n"
+ .string "always bring our POKéMON.\l"
+ .string "How about a quick battle?$"
+
+AbandonedShip_Corridors_B1F_Text_1985C5:: @ 81985C5
+ .string "Whoops, I’m sunk!$"
+
+AbandonedShip_Corridors_B1F_Text_1985D7:: @ 81985D7
+ .string "The ship’s bottom has sunk into the\n"
+ .string "depths.\p"
+ .string "If a POKéMON knew how to go underwater,\n"
+ .string "we might make some progress...$"
+
+AbandonedShip_Corridors_B1F_Text_19864A:: @ 819864A
+ .string "Yay!\n"
+ .string "It’s a ship!$"
+
+AbandonedShip_Corridors_B1F_Text_19865C:: @ 819865C
+ .string "The door is locked.\p"
+ .string "“STORAGE” is painted on the door.$"
+
+AbandonedShip_Corridors_B1F_Text_198692:: @ 8198692
+ .string "{PLAYER} inserted and turned the\n"
+ .string "STORAGE KEY.\p"
+ .string "The inserted KEY stuck fast, but the\n"
+ .string "door opened.$"
+
+AbandonedShip_Corridors_B1F_Text_1986EC:: @ 81986EC
diff --git a/data/maps/text/AbandonedShip_HiddenFloorCorridors.s b/data/maps/text/AbandonedShip_HiddenFloorCorridors.s
new file mode 100644
index 000000000..8e43b2462
--- /dev/null
+++ b/data/maps/text/AbandonedShip_HiddenFloorCorridors.s
@@ -0,0 +1,3 @@
+AbandonedShip_HiddenFloorCorridors_Text_1986EC:: @ 81986EC
+ .string "The door is open.$"
+
diff --git a/data/maps/text/AbandonedShip_HiddenFloorRooms.s b/data/maps/text/AbandonedShip_HiddenFloorRooms.s
new file mode 100644
index 000000000..861f523aa
--- /dev/null
+++ b/data/maps/text/AbandonedShip_HiddenFloorRooms.s
@@ -0,0 +1,6 @@
+AbandonedShip_HiddenFloorRooms_Text_198EE2:: @ 8198EE2
+ .string "It’s bright and shiny!\n"
+ .string "But it’s just trash...$"
+
+ .incbin "baserom.gba", 0x198f10, 0x79
+
diff --git a/data/maps/text/AbandonedShip_Rooms2_1F.s b/data/maps/text/AbandonedShip_Rooms2_1F.s
new file mode 100644
index 000000000..d7fce3236
--- /dev/null
+++ b/data/maps/text/AbandonedShip_Rooms2_1F.s
@@ -0,0 +1,71 @@
+AbandonedShip_Rooms2_1F_Text_1987C1:: @ 81987C1
+ .string "HAL: While searching for treasures,\n"
+ .string "we discovered a TRAINER!$"
+
+AbandonedShip_Rooms2_1F_Text_1987FE:: @ 81987FE
+ .string "HAL: We couldn’t win even though\n"
+ .string "we worked together...$"
+
+AbandonedShip_Rooms2_1F_Text_198835:: @ 8198835
+ .string "HAL: We can’t find any treasures...\n"
+ .string "I wonder if someone got them already?$"
+
+AbandonedShip_Rooms2_1F_Text_19887F:: @ 819887F
+ .string "HAL: You don’t even have two POKéMON.\n"
+ .string "You can’t expect to beat us like that.$"
+
+AbandonedShip_Rooms2_1F_Text_1988CC:: @ 81988CC
+ .string "LOIS: Oh? We were looking for some\n"
+ .string "treasure, but we only found a TRAINER.$"
+
+AbandonedShip_Rooms2_1F_Text_198916:: @ 8198916
+ .string "LOIS: Oh, wow, you’re strong!$"
+
+AbandonedShip_Rooms2_1F_Text_198934:: @ 8198934
+ .string "LOIS: I wonder where the treasures\n"
+ .string "are hidden?\p"
+ .string "I already know what I’m going to buy\n"
+ .string "when I find them!$"
+
+AbandonedShip_Rooms2_1F_Text_19899A:: @ 819899A
+ .string "LOIS: Don’t you have two POKéMON?\n"
+ .string "We’ll have to battle another time!$"
+
+AbandonedShip_Rooms2_1F_Text_1989DF:: @ 81989DF
+ .string "HAL: We’ve been searching for\n"
+ .string "treasures all this time.\p"
+ .string "Our POKéMON have grown stronger, too.\n"
+ .string "Let us show you, okay?$"
+
+AbandonedShip_Rooms2_1F_Text_198A53:: @ 8198A53
+ .string "HAL: You’re strong as usual!$"
+
+AbandonedShip_Rooms2_1F_Text_198A70:: @ 8198A70
+ .string "HAL: We can’t find any treasures,\n"
+ .string "we lose at POKéMON...\p"
+ .string "I want to go home... But if I say that,\n"
+ .string "she gets all angry with me...$"
+
+AbandonedShip_Rooms2_1F_Text_198AEE:: @ 8198AEE
+ .string "HAL: You don’t even have two POKéMON.\n"
+ .string "You can’t expect to beat us like that.$"
+
+AbandonedShip_Rooms2_1F_Text_198B3B:: @ 8198B3B
+ .string "LOIS: Oh, hi, we meet again!\p"
+ .string "Just like us, you haven’t given up\n"
+ .string "searching for treasures!\p"
+ .string "How about we battle, and the loser has\n"
+ .string "to give up looking?$"
+
+AbandonedShip_Rooms2_1F_Text_198BCF:: @ 8198BCF
+ .string "LOIS: Oh, we lost again...$"
+
+AbandonedShip_Rooms2_1F_Text_198BEA:: @ 8198BEA
+ .string "LOIS: We’ll raise our POKéMON more.\p"
+ .string "We’re not going home until we find our\n"
+ .string "treasures!$"
+
+AbandonedShip_Rooms2_1F_Text_198C40:: @ 8198C40
+ .string "LOIS: Don’t you have two POKéMON?\n"
+ .string "We’ll have to battle another time!$"
+
diff --git a/data/maps/text/AbandonedShip_Rooms2_B1F.s b/data/maps/text/AbandonedShip_Rooms2_B1F.s
new file mode 100644
index 000000000..7e868b335
--- /dev/null
+++ b/data/maps/text/AbandonedShip_Rooms2_B1F.s
@@ -0,0 +1,6 @@
+AbandonedShip_Rooms2_B1F_Text_198759:: @ 8198759
+ .string "This is a perfect place to go exploring!\n"
+ .string "It’s exciting here!\p"
+ .string "I bet there’re amazing treasures on\n"
+ .string "board.$"
+
diff --git a/data/maps/text/AbandonedShip_Rooms_1F.s b/data/maps/text/AbandonedShip_Rooms_1F.s
new file mode 100644
index 000000000..f6e5c729f
--- /dev/null
+++ b/data/maps/text/AbandonedShip_Rooms_1F.s
@@ -0,0 +1,6 @@
+AbandonedShip_Rooms_1F_Text_19850A:: @ 819850A
+ .string "Ships of this sort are rare, so I’m\n"
+ .string "taking a look around.\p"
+ .string "Hmhm...\n"
+ .string "There appear to be other cabins...$"
+
diff --git a/data/maps/text/AbandonedShip_Rooms_B1F.s b/data/maps/text/AbandonedShip_Rooms_B1F.s
new file mode 100644
index 000000000..9ecf30a2b
--- /dev/null
+++ b/data/maps/text/AbandonedShip_Rooms_B1F.s
@@ -0,0 +1,6 @@
+AbandonedShip_Rooms_B1F_Text_1986FE:: @ 81986FE
+ .string "Urrrrppp...\p"
+ .string "I’m getting queasy just being aboard\n"
+ .string "this ship...\p"
+ .string "It’s not even moving, but...$"
+
diff --git a/data/maps/text/AncientTomb.s b/data/maps/text/AncientTomb.s
new file mode 100644
index 000000000..ca85352f0
--- /dev/null
+++ b/data/maps/text/AncientTomb.s
@@ -0,0 +1 @@
+AncientTomb_Text_1A13BE:: @ 81A13BE
diff --git a/data/maps/text/AquaHideout_1F.s b/data/maps/text/AquaHideout_1F.s
new file mode 100644
index 000000000..f5539e687
--- /dev/null
+++ b/data/maps/text/AquaHideout_1F.s
@@ -0,0 +1,52 @@
+AquaHideout_1F_Text_196AFD:: @ 8196AFD
+ .string "What? What? What do you want with \n"
+ .string "TEAM {EVIL_TEAM}?\p"
+ .string "Our BOSS isn’t here! He’s gone off to\n"
+ .string "snatch something important!\p"
+ .string "... ...\n"
+ .string "Where did he go?\p"
+ .string "Wahaha! Do you really think I’d tell\n"
+ .string "you something that crucial?$"
+
+AquaHideout_1F_Text_196BC5:: @ 8196BC5
+ .string "What? What? What do you want with \n"
+ .string "TEAM {EVIL_TEAM}?\p"
+ .string "Our BOSS isn’t here!\n"
+ .string "He’s gone off to jack a submarine!\p"
+ .string "... ...\n"
+ .string "Where did he go?\p"
+ .string "Wahaha! Do you really think I’d tell\n"
+ .string "you something that crucial?$"
+
+AquaHideout_1F_Text_196C83:: @ 8196C83
+ .string "What? What? What do you want with \n"
+ .string "TEAM {EVIL_TEAM}?\p"
+ .string "Our BOSS isn’t here! He’s on his way to\n"
+ .string "MT. PYRE on ROUTE 122!\p"
+ .string "... ...\n"
+ .string "Why did he go?\p"
+ .string "Wahaha! Do you really think I’d tell\n"
+ .string "you something that crucial?$"
+
+AquaHideout_1F_Text_196D46:: @ 8196D46
+ .string "What? What? What do you want with\n"
+ .string "TEAM {EVIL_TEAM}?\p"
+ .string "Our BOSS isn’t here!\n"
+ .string "He’s on his way to SLATEPORT CITY!\p"
+ .string "... ...\n"
+ .string "Why did he go?\p"
+ .string "Wahaha! Do you really think I’d tell\n"
+ .string "you something that crucial?$"
+
+AquaHideout_1F_Text_196E01:: @ 8196E01
+ .string "Ayiyiyi!\n"
+ .string "Suspicious character spotted!$"
+
+AquaHideout_1F_Text_196E28:: @ 8196E28
+ .string "Grrrrr...\n"
+ .string "I lost it!$"
+
+AquaHideout_1F_Text_196E3D:: @ 8196E3D
+ .string "I took the loss for the TEAM, but\n"
+ .string "I did my job...$"
+
diff --git a/data/maps/text/AquaHideout_B1F.s b/data/maps/text/AquaHideout_B1F.s
new file mode 100644
index 000000000..f62c08e76
--- /dev/null
+++ b/data/maps/text/AquaHideout_B1F.s
@@ -0,0 +1,40 @@
+AquaHideout_B1F_Text_196E6F:: @ 8196E6F
+ .string "If you want to know the secret about\n"
+ .string "our HIDEOUT, you have me to beat!$"
+
+AquaHideout_B1F_Text_196EB6:: @ 8196EB6
+ .string "I can’t win at all...$"
+
+AquaHideout_B1F_Text_196ECC:: @ 8196ECC
+ .string "Our HIDEOUT’s secret?\p"
+ .string "Well, let’s just say...\n"
+ .string "There’s a submarine at the far end!\p"
+ .string "But, by now...\n"
+ .string "Kekekeke...$"
+
+AquaHideout_B1F_Text_196F39:: @ 8196F39
+ .string "Fuel supply loaded A-OK!\n"
+ .string "In-cruise snacks loaded A-OK!\p"
+ .string "Nothing left to do but KO a pesky\n"
+ .string "meddler!$"
+
+AquaHideout_B1F_Text_196F9B:: @ 8196F9B
+ .string "I took a serious licking!$"
+
+AquaHideout_B1F_Text_196FB5:: @ 8196FB5
+ .string "Humph!\n"
+ .string "This was supposed to happen!\p"
+ .string "My mission was to just hold you up!$"
+
+AquaHideout_B1F_Text_196FFD:: @ 8196FFD
+ .string "Yawn... Keeping watch over the\n"
+ .string "HIDEOUT bores me. I’ll take you on.$"
+
+AquaHideout_B1F_Text_197040:: @ 8197040
+ .string "Yawn...\n"
+ .string "Oh, I lost...$"
+
+AquaHideout_B1F_Text_197056:: @ 8197056
+ .string "If you scurry too much, other TEAM\n"
+ .string "{EVIL_TEAM} members might get you.$"
+
diff --git a/data/maps/text/AquaHideout_B2F.s b/data/maps/text/AquaHideout_B2F.s
new file mode 100644
index 000000000..230afe36c
--- /dev/null
+++ b/data/maps/text/AquaHideout_B2F.s
@@ -0,0 +1,59 @@
+AquaHideout_B2F_Text_197093:: @ 8197093
+ .string "Hehehe...\p"
+ .string "Got here already, did you?\n"
+ .string "We underestimated you!\p"
+ .string "But this is it!\p"
+ .string "I’m a cut above the GRUNTS you’ve seen\n"
+ .string "so far.\p"
+ .string "I’m not stalling for time. I’m going\n"
+ .string "to pulverize you!$"
+
+AquaHideout_B2F_Text_197145:: @ 8197145
+ .string "Hehehe...\n"
+ .string "So, I lost, too...$"
+
+AquaHideout_B2F_Text_197162:: @ 8197162
+ .string "Hehehe!\p"
+ .string "While I was toying with you, our BOSS\n"
+ .string "got through his preparations!$"
+
+AquaHideout_B2F_Text_1971AE:: @ 81971AE
+ .string "Hehehe!\p"
+ .string "Our BOSS has already gone on his way to\n"
+ .string "some cave under the sea!\p"
+ .string "If you’re going to give chase, you’d\n"
+ .string "better search the big, wide sea beyond\l"
+ .string "LILYCOVE.\p"
+ .string "But will you find it then?\n"
+ .string "Hehehe!$"
+
+AquaHideout_B2F_Text_197270:: @ 8197270
+ .string "Wahahah, I grew weary of waiting!\n"
+ .string "You owe me a battle, too!$"
+
+AquaHideout_B2F_Text_1972AC:: @ 81972AC
+ .string "Tired of waiting...\n"
+ .string "Lost and dazed...$"
+
+AquaHideout_B2F_Text_1972D2:: @ 81972D2
+ .string "BOSS...\n"
+ .string "Is this good enough?$"
+
+AquaHideout_B2F_Text_1972EF:: @ 81972EF
+ .string "Warp panels, the HIDEOUT’s pride\n"
+ .string "and joy!\p"
+ .string "You’re clueless about where you are,\n"
+ .string "aren’t you?\p"
+ .string "Fluster and tire out the enemy, then\n"
+ .string "lower the boom! That’s our plan!$"
+
+AquaHideout_B2F_Text_197390:: @ 8197390
+ .string "What’s wrong with you?\n"
+ .string "You’re not tired at all!$"
+
+AquaHideout_B2F_Text_1973C0:: @ 81973C0
+ .string "That reminds me... I can’t remember\n"
+ .string "where I put the MASTER BALL.\p"
+ .string "If I fail to guard it, our BOSS will\n"
+ .string "chew me out...$"
+
diff --git a/data/maps/text/BattleTower_BattleRoom.s b/data/maps/text/BattleTower_BattleRoom.s
new file mode 100644
index 000000000..f78ffcc81
--- /dev/null
+++ b/data/maps/text/BattleTower_BattleRoom.s
@@ -0,0 +1,16 @@
+BattleTower_BattleRoom_Text_19ACDC:: @ 819ACDC
+ .string "We will restore your POKéMON to\n"
+ .string "full health.$"
+
+BattleTower_BattleRoom_Text_19AD09:: @ 819AD09
+ .string "You will be facing opponent no. {STR_VAR_1}.\n"
+ .string "Are you ready?$"
+
+BattleTower_BattleRoom_Text_19AD3C:: @ 819AD3C
+ .string "Would you like to save and\n"
+ .string "quit the game?$"
+
+BattleTower_BattleRoom_Text_19AD66:: @ 819AD66
+ .string "Would you like to cancel your BATTLE\n"
+ .string "ROOM challenge?$"
+
diff --git a/data/maps/text/BattleTower_Lobby.s b/data/maps/text/BattleTower_Lobby.s
new file mode 100644
index 000000000..832041e86
--- /dev/null
+++ b/data/maps/text/BattleTower_Lobby.s
@@ -0,0 +1,193 @@
+BattleTower_Lobby_Text_199F2C:: @ 8199F2C
+ .string "Welcome to the BATTLE TOWER!\p"
+ .string "Please register with me to enter\n"
+ .string "a BATTLE ROOM.$"
+
+BattleTower_Lobby_Text_199F79:: @ 8199F79
+ .string "Would you like to make a BATTLE ROOM\n"
+ .string "challenge?$"
+
+BattleTower_Lobby_Text_199FA9:: @ 8199FA9
+ .string "We’ll be looking forward to your\n"
+ .string "next challenge.$"
+
+BattleTower_Lobby_Text_199FDA:: @ 8199FDA
+ .string "Before entering a BATTLE ROOM, your\n"
+ .string "progress must be saved. Is that okay?$"
+
+BattleTower_Lobby_Text_19A024:: @ 819A024
+ .string "There are two BATTLE ROOMS,\n"
+ .string "Level 50 and Level 100.\l"
+ .string "Which would you like to challenge?$"
+
+BattleTower_Lobby_Text_19A07B:: @ 819A07B
+ .string "Please select the POKéMON you wish\n"
+ .string "to enter.$"
+
+BattleTower_Lobby_Text_19A0A8:: @ 819A0A8
+ .string "I’ll direct you to your BATTLE ROOM now.$"
+
+BattleTower_Lobby_Text_19A0D1:: @ 819A0D1
+ .string "The BATTLE TOWER is a facility made\n"
+ .string "especially for POKéMON battles.\p"
+ .string "Within the TOWER are many BATTLE ROOMS.\p"
+ .string "In each BATTLE ROOM, seven TRAINERS\n"
+ .string "await your challenge.\p"
+ .string "Beat all seven, and you will be rewarded\n"
+ .string "with a fabulous prize.\p"
+ .string "You may also take a break from your\n"
+ .string "challenge by saving your progress.\p"
+ .string "Make sure you save properly or you\n"
+ .string "won’t be able to resume your challenge.$"
+
+BattleTower_Lobby_Text_19A249:: @ 819A249
+ .string "Excuse me!\p"
+ .string "You don’t have three eligible POKéMON.\p"
+ .string "You must have three different POKéMON\n"
+ .string "of Level 50 or less to enter.\p"
+ .string "They also must be holding different\n"
+ .string "kinds of items.\p"
+ .string "EGGS{STR_VAR_1} ineligible.\p"
+ .string "Please come see me when you are ready.$"
+
+BattleTower_Lobby_Text_19A32D:: @ 819A32D
+ .string "Excuse me!\p"
+ .string "You don’t have three eligible POKéMON.\p"
+ .string "You must have three different POKéMON\n"
+ .string "to enter.\p"
+ .string "They also must be holding different\n"
+ .string "kinds of items.\p"
+ .string "EGGS{STR_VAR_1} ineligible.\p"
+ .string "Please come see me when you are ready.$"
+
+BattleTower_Lobby_Text_19A3FD:: @ 819A3FD
+ .string "Excuse me!\p"
+ .string "You didn’t save before you quit your\n"
+ .string "challenge last time.\p"
+ .string "Because of that, your challenge so far\n"
+ .string "has been disqualified. Sorry!$"
+
+BattleTower_Lobby_Text_19A487:: @ 819A487
+ .string "Congratulations!\n"
+ .string "You’ve beaten all seven TRAINERS!\p"
+ .string "$"
+
+BattleTower_Lobby_Text_19A4BB:: @ 819A4BB
+ .string "For beating seven TRAINERS in a row,\n"
+ .string "you have earned this fabulous prize!\p"
+ .string "$"
+
+BattleTower_Lobby_Text_19A506:: @ 819A506
+ .string "{PLAYER} received the prize\n"
+ .string "{STR_VAR_1}.$"
+
+BattleTower_Lobby_Text_19A520:: @ 819A520
+ .string "Oh, your BAG appears to be full.\p"
+ .string "Please make room in your BAG, then come\n"
+ .string "see me.$"
+
+BattleTower_Lobby_Text_19A571:: @ 819A571
+ .string "Thank you for playing!\p"
+ .string "$"
+
+BattleTower_Lobby_Text_19A589:: @ 819A589
+ .string "Your record will be saved.\n"
+ .string "Please wait.$"
+
+BattleTower_Lobby_Text_19A5B1:: @ 819A5B1
+ .string "We’ve been waiting for you!\p"
+ .string "$"
+
+BattleTower_Lobby_Text_19A5CE:: @ 819A5CE
+ .string "Before entering a BATTLE ROOM, your\n"
+ .string "progress will be saved. Please wait.$"
+
+BattleTower_Lobby_Text_19A617:: @ 819A617
+ .string "You’re finally about to face the\n"
+ .string "50th TRAINER.\p"
+ .string "From here on, every time you beat seven\n"
+ .string "TRAINERS in a row, your POKéMON will\l"
+ .string "receive a commemorative RIBBON.\p"
+ .string "Good luck!$"
+
+BattleTower_Lobby_Text_19A6BE:: @ 819A6BE
+ .string "Here are some RIBBONS for beating\n"
+ .string "seven tough TRAINERS in a row.\p"
+ .string "{PLAYER} received some RIBBONS!$"
+
+BattleTower_Lobby_Text_19A719:: @ 819A719
+ .string "{PLAYER} put the RIBBONS on the\n"
+ .string "challenger POKéMON.$"
+
+BattleTower_Lobby_Text_19A747:: @ 819A747
+ .string "Hello, hello!\n"
+ .string "You’re going to battle here, right?\p"
+ .string "Can you tell me what’s going through\n"
+ .string "your mind as you prepare for battle?$"
+
+BattleTower_Lobby_Text_19A7C3:: @ 819A7C3
+ .string "Oh, wow, you’ll tell me?\n"
+ .string "Great! Then, what’s your answer?$"
+
+BattleTower_Lobby_Text_19A7FD:: @ 819A7FD
+ .string "Oh, so you don’t think much about it?\n"
+ .string "You’re one cool customer.$"
+
+BattleTower_Lobby_Text_19A83D:: @ 819A83D
+ .string "Hunh? You changed your mind?\n"
+ .string "I guess you’re fickle.$"
+
+BattleTower_Lobby_Text_19A871:: @ 819A871
+ .string "Okay, so that’s how you feel?\n"
+ .string "That’s quite original.\p"
+ .string "Thanks!$"
+
+BattleTower_Lobby_Text_19A8AE:: @ 819A8AE
+ .string "The number of matches you win in a row\n"
+ .string "is recorded.\p"
+ .string "The record is posted beside the\n"
+ .string "registration counter.\p"
+ .string "It’s also on the back of your\n"
+ .string "TRAINER’S CARD.$"
+
+BattleTower_Lobby_Text_19A946:: @ 819A946
+ .string "Once you’ve entered the BATTLE TOWER,\n"
+ .string "you can’t leave until you either lose\l"
+ .string "or you beat seven TRAINERS in a row.\p"
+ .string "You’d best be certain that you’re up\n"
+ .string "to the challenge.$"
+
+BattleTower_Lobby_Text_19A9EE:: @ 819A9EE
+ .string "Hahahaha! Pure magnificence!\n"
+ .string "Pure magnificence indeed!\p"
+ .string "Do you realize what you’ve achieved?\n"
+ .string "You’ve beaten 50 TRAINERS in a row!\p"
+ .string "Yes, purely magnificent!\p"
+ .string "As the OWNER of the BATTLE TOWER,\n"
+ .string "let me give you a memento!$"
+
+BattleTower_Lobby_Text_19AAC4:: @ 819AAC4
+ .string "Wahahaha! Pure magnificence!\n"
+ .string "Absolutely pure magnificence indeed!\p"
+ .string "Do you realize what you’ve achieved?\n"
+ .string "You’ve beaten 100 TRAINERS in a row!\p"
+ .string "Yes, absolutely magnificent!\p"
+ .string "As the OWNER of the BATTLE TOWER,\n"
+ .string "let me give you a memento!$"
+
+BattleTower_Lobby_Text_19ABAA:: @ 819ABAA
+ .string "I suggest you keep it displayed.\n"
+ .string "It will surely attract attention.$"
+
+BattleTower_Lobby_Text_19ABED:: @ 819ABED
+ .string "Oh?\n"
+ .string "Your PC has no room for this...\p"
+ .string "But it would be a shame to waste this...\n"
+ .string "Please come back for this!$"
+
+BattleTower_Lobby_Text_19AC55:: @ 819AC55
+ .string "I’m overwhelmed with satisfaction after\n"
+ .string "seeing your magnificent performance.\p"
+ .string "It makes the building of the BATTLE\n"
+ .string "TOWER all worthwhile!$"
+
diff --git a/data/maps/text/BattleTower_Outside.s b/data/maps/text/BattleTower_Outside.s
new file mode 100644
index 000000000..ef8be00de
--- /dev/null
+++ b/data/maps/text/BattleTower_Outside.s
@@ -0,0 +1,49 @@
+BattleTower_Outside_Text_199C6F:: @ 8199C6F
+ .string "BATTLE TOWER\n"
+ .string "“Win it all and be the best, TRAINERS!”$"
+
+BattleTower_Outside_Text_199CA4:: @ 8199CA4
+ .string "This is the BATTLE TOWER.\p"
+ .string "TRAINERS bring their best-raised\n"
+ .string "POKéMON for elimination-style matches.$"
+
+BattleTower_Outside_Text_199D06:: @ 8199D06
+ .string "Hello, are you here for the ferry?\n"
+ .string "May I see your TICKET?$"
+
+BattleTower_Outside_Text_199D40:: @ 8199D40
+ .string "{PLAYER} doesn’t have the TICKET...\p"
+ .string "I’m terribly sorry.\p"
+ .string "You must have a TICKET to board\n"
+ .string "the ferry.$"
+
+BattleTower_Outside_Text_199D9D:: @ 8199D9D
+ .string "{PLAYER} flashed the TICKET.\p"
+ .string "Perfect! That’s all you need!\p"
+ .string "And where would you like to go?$"
+
+BattleTower_Outside_Text_199DF2:: @ 8199DF2
+ .string "SLATEPORT CITY it is, then!$"
+
+BattleTower_Outside_Text_199E0E:: @ 8199E0E
+ .string "LILYCOVE CITY it is, then!$"
+
+BattleTower_Outside_Text_199E29:: @ 8199E29
+ .string "Please sail with us another time!$"
+
+BattleTower_Outside_Text_199E4B:: @ 8199E4B
+ .string "Please board the ferry and wait for\n"
+ .string "departure.$"
+
+BattleTower_Outside_Text_199E7A:: @ 8199E7A
+ .string "Then, where would you like to go?$"
+
+BattleTower_Outside_Text_199E9C:: @ 8199E9C
+ .string "I’m not leaving until I’ve beaten 35\n"
+ .string "TRAINERS in a row!$"
+
+BattleTower_Outside_Text_199ED4:: @ 8199ED4
+ .string "Gee, there’re a lot of tough-looking\n"
+ .string "TRAINERS here.\l"
+ .string "I’m not good enough to enter yet...$"
+
diff --git a/data/maps/text/CaveOfOrigin_B4F.s b/data/maps/text/CaveOfOrigin_B4F.s
new file mode 100644
index 000000000..5ed888e50
--- /dev/null
+++ b/data/maps/text/CaveOfOrigin_B4F.s
@@ -0,0 +1,10 @@
+CaveOfOrigin_B4F_Text_1B4FE4:: @ 81B4FE4
+ .string "{PLAYER}’s RED ORB suddenly began\n"
+ .string "glowing!$"
+
+CaveOfOrigin_B4F_Text_1B5009:: @ 81B5009
+ .string "GROUDON appears to have settled\n"
+ .string "into sleep again...$"
+
+ .incbin "baserom.gba", 0x1b503d, 0xcc0
+
diff --git a/data/maps/text/DesertRuins.s b/data/maps/text/DesertRuins.s
new file mode 100644
index 000000000..528e4c8e2
--- /dev/null
+++ b/data/maps/text/DesertRuins.s
@@ -0,0 +1 @@
+DesertRuins_Text_1A13BE:: @ 81A13BE
diff --git a/data/maps/text/DewfordTown.s b/data/maps/text/DewfordTown.s
new file mode 100644
index 000000000..113ca391e
--- /dev/null
+++ b/data/maps/text/DewfordTown.s
@@ -0,0 +1,18 @@
+DewfordTown_Text_16B23B:: @ 816B23B
+ .string "DEWFORD TOWN is a tiny island community.\n"
+ .string "If something gets trendy here,\l"
+ .string "everyone picks up on it right away.$"
+
+DewfordTown_Text_16B2A7:: @ 816B2A7
+ .string "DEWFORD TOWN\n"
+ .string "“A tiny island in the blue sea.”$"
+
+DewfordTown_Text_16B2D5:: @ 816B2D5
+ .string "DEWFORD TOWN POKéMON GYM\n"
+ .string "LEADER: BRAWLY\l"
+ .string "“A big wave in fighting!”$"
+
+DewfordTown_Text_16B317:: @ 816B317
+ .string "DEWFORD HALL\n"
+ .string "“Everyone’s information exchange!”$"
+
diff --git a/data/maps/text/DewfordTown_Gym.s b/data/maps/text/DewfordTown_Gym.s
new file mode 100644
index 000000000..904e6c338
--- /dev/null
+++ b/data/maps/text/DewfordTown_Gym.s
@@ -0,0 +1,108 @@
+DewfordTown_Gym_Text_174D98:: @ 8174D98
+ .string "Hey, how’s it going, CHAMPION-\n"
+ .string "bound {PLAYER}?\p"
+ .string "DEWFORD’s GYM LEADER BRAWLY commands\n"
+ .string "FIGHTING-type POKéMON.\p"
+ .string "Going against him with NORMAL-type\n"
+ .string "POKéMON is asking for trouble.\p"
+ .string "FIGHTING POKéMON will lay a serious\n"
+ .string "smack down on NORMAL POKéMON,\l"
+ .string "so be careful!\p"
+ .string "What’s worse, the GYM is as dark as\n"
+ .string "the ocean floor.\p"
+ .string "But it will get brighter after defeating\n"
+ .string "the TRAINERS in your way.\p"
+ .string "Hey, okay, go for it!$"
+
+DewfordTown_Gym_Text_174F1E:: @ 8174F1E
+ .string "Whoah! It’s turned too bright in here!\p"
+ .string "Your future is bright, too!$"
+
+DewfordTown_Gym_Text_174F61:: @ 8174F61
+ .string "Might is right!\n"
+ .string "Come on!$"
+
+DewfordTown_Gym_Text_174F7A:: @ 8174F7A
+ .string "Not enough power...$"
+
+DewfordTown_Gym_Text_174F8E:: @ 8174F8E
+ .string "Your skill overcame my strength!\n"
+ .string "Your technique is commendable!$"
+
+DewfordTown_Gym_Text_174FCE:: @ 8174FCE
+ .string "There’s no need for BRAWLY to be\n"
+ .string "involved!\p"
+ .string "I’ll crush you!$"
+
+DewfordTown_Gym_Text_175009:: @ 8175009
+ .string "But... How?\n"
+ .string "How could I lose so easily?$"
+
+DewfordTown_Gym_Text_175031:: @ 8175031
+ .string "I’m not going to waste this loss.\n"
+ .string "I’ll use it to motivate me to train!\p"
+ .string "One day I’ll become a GYM LEADER...\p"
+ .string "No, I’ll become the POKéMON LEAGUE\n"
+ .string "CHAMPION!$"
+
+DewfordTown_Gym_Text_1750C9:: @ 81750C9
+ .string "Don’t you dare brush me off!\n"
+ .string "It’s not my fault if you cry!$"
+
+DewfordTown_Gym_Text_175104:: @ 8175104
+ .string "Waaaaaaah!\n"
+ .string "I lost!$"
+
+DewfordTown_Gym_Text_175117:: @ 8175117
+ .string "I battle in the dark to make my heart\n"
+ .string "stronger.\p"
+ .string "But because it’s so dark, I can never\n"
+ .string "see BRAWLY’s face...$"
+
+DewfordTown_Gym_Text_175182:: @ 8175182
+ .string "I’m BRAWLY!\n"
+ .string "DEWFORD’s GYM LEADER!\p"
+ .string "I’ve been churned in the rough waves\n"
+ .string "of these parts, and I’ve grown tough\l"
+ .string "in the pitch-black cave!\p"
+ .string "So you wanted to challenge me?\n"
+ .string "Let me see what you’re made of!$"
+
+DewfordTown_Gym_Text_175246:: @ 8175246
+ .string "Whoah, wow! You made a much bigger\n"
+ .string "splash than I expected!\p"
+ .string "You swamped me!\p"
+ .string "Okay, you’ve got me.\n"
+ .string "Take this GYM BADGE!$"
+
+DewfordTown_Gym_Text_1752BB:: @ 81752BB
+ .string "{PLAYER} received the KNUCKLE BADGE\n"
+ .string "from BRAWLY.$"
+
+DewfordTown_Gym_Text_1752E6:: @ 81752E6
+ .string "The KNUCKLE BADGE makes all POKéMON\n"
+ .string "up to Level 30, even those you get in\l"
+ .string "trades, obey without question.\p"
+ .string "And, you’ll be able to use the HM move\n"
+ .string "FLASH outside of battle.\p"
+ .string "If you’d like, use this TECHNICAL\n"
+ .string "MACHINE, too.$"
+
+DewfordTown_Gym_Text_1753BF:: @ 81753BF
+ .string "That TM08 contains BULK UP.\p"
+ .string "It’s a move that raises both ATTACK\n"
+ .string "and DEFENSE stats.$"
+
+DewfordTown_Gym_Text_175412:: @ 8175412
+ .string "I can see your talent becoming a giant\n"
+ .string "wave to cause a storm of astonishment\l"
+ .string "among TRAINERS one day!$"
+
+DewfordTown_Gym_Text_175477:: @ 8175477
+ .string "DEWFORD TOWN POKéMON GYM$"
+
+DewfordTown_Gym_Text_175490:: @ 8175490
+ .string "DEWFORD TOWN POKéMON GYM\p"
+ .string "BRAWLY’S CERTIFIED TRAINERS:\n"
+ .string "{PLAYER}$"
+
diff --git a/data/maps/text/DewfordTown_Hall.s b/data/maps/text/DewfordTown_Hall.s
new file mode 100644
index 000000000..6023984a4
--- /dev/null
+++ b/data/maps/text/DewfordTown_Hall.s
@@ -0,0 +1,184 @@
+DewfordTown_Hall_Text_1754C9:: @ 81754C9
+ .string "What’s in vogue? Why, it has to be\n"
+ .string "“{STR_VAR_1}”!\p"
+ .string "I can’t imagine what life would be like\n"
+ .string "without “{STR_VAR_1}”!$"
+
+DewfordTown_Hall_Text_175528:: @ 8175528
+ .string "What’s in vogue? Why, it has to be\n"
+ .string "“{STR_VAR_1}”!\p"
+ .string "But I’m getting kind of bored with it.\p"
+ .string "I should look for the next big thing.$"
+
+DewfordTown_Hall_Text_17559E:: @ 817559E
+ .string "I’m teaching my POKéMON about\n"
+ .string "“{STR_VAR_1},”\l"
+ .string "but it’s not going well.\p"
+ .string "It’s a bit too much, I think.$"
+
+DewfordTown_Hall_Text_1755F9:: @ 81755F9
+ .string "I’m studying up on the hip and trendy\n"
+ .string "“{STR_VAR_1}” now.\p"
+ .string "Is it true that there’s a deep link\n"
+ .string "between “{STR_VAR_1}”\l"
+ .string "and “{STR_VAR_2}”?$"
+
+DewfordTown_Hall_Text_175664:: @ 8175664
+ .string "Oh!\n"
+ .string "So, my hunch was right!\p"
+ .string "I’m one step closer to being hip and\n"
+ .string "happening, yowza!$"
+
+DewfordTown_Hall_Text_1756B7:: @ 81756B7
+ .string "What?!\n"
+ .string "Is that so?!\p"
+ .string "It’s not easy for an older fellow like\n"
+ .string "me to keep up with trends!$"
+
+DewfordTown_Hall_Text_17570D:: @ 817570D
+ .string "This whole business about\n"
+ .string "“{STR_VAR_1}”...\l"
+ .string "Isn’t there a TV show on it?$"
+
+DewfordTown_Hall_Text_17574C:: @ 817574C
+ .string "Across the sea...\p"
+ .string "Is “{STR_VAR_1}”\n"
+ .string "even more popular?$"
+
+DewfordTown_Hall_Text_175779:: @ 8175779
+ .string "I collect official\n"
+ .string "“{STR_VAR_1}”\l"
+ .string "licensed merchandise.\p"
+ .string "I have official\n"
+ .string "“{STR_VAR_1}” dolls...\p"
+ .string "Official “{STR_VAR_1}”\n"
+ .string "brand clothing...\p"
+ .string "And officially licensed\n"
+ .string "“{STR_VAR_1}”\l"
+ .string "picture books.\p"
+ .string "Heheh, I own!\n"
+ .string "I’m not sharing anything with you!$"
+
+DewfordTown_Hall_Text_175842:: @ 8175842
+ .string "IDENTIFYING GOOD\n"
+ .string "“{STR_VAR_1}” &\l"
+ .string "BAD “{STR_VAR_1}”...\p"
+ .string "THE LINK BETWEEN\n"
+ .string "“{STR_VAR_1}” AND\l"
+ .string "POKéMON...\p"
+ .string "USEFUL\n"
+ .string "“{STR_VAR_1}”...\p"
+ .string "It’s neatly jammed with books about\n"
+ .string "“{STR_VAR_1}.”$"
+
+DewfordTown_Hall_Text_1758C4:: @ 81758C4
+ .string "“{STR_VAR_1}’S\n"
+ .string "SCREAM” is the title.$"
+
+DewfordTown_Hall_Text_1758E0:: @ 81758E0
+ .string "“{STR_VAR_1}’S\n"
+ .string "SMILE” is the title.$"
+
+DewfordTown_Hall_Text_1758FB:: @ 81758FB
+ .string "It’s titled “THE LAST\n"
+ .string "{STR_VAR_1}”.$"
+
+DewfordTown_Hall_Text_175916:: @ 8175916
+ .string "It’s titled “THE BIRTH OF\n"
+ .string "{STR_VAR_1}”.$"
+
+DewfordTown_Hall_Text_175935:: @ 8175935
+ .string "I saw “{STR_VAR_1}”!\n"
+ .string "Cool, huh?\p"
+ .string "It’s, like, the coolest thing going!\p"
+ .string "It was awesome!\n"
+ .string "It was the real thing, oh yeah!$"
+
+DewfordTown_Hall_Text_1759A1:: @ 81759A1
+ .string "Oh, no, no, no.\p"
+ .string "That alleged\n"
+ .string "“{STR_VAR_1}”\l"
+ .string "you claim to have seen - it’s not.\p"
+ .string "The authentic article is much...\n"
+ .string "How should I say it?\l"
+ .string "Sharper, yet more mellifluous!\p"
+ .string "Ah, no matter. It’s astonishing!$"
+
+DewfordTown_Hall_Text_175A5C:: @ 8175A5C
+ .string "Hey, listen, I composed a theme song\n"
+ .string "for “{STR_VAR_1}.”\p"
+ .string "“{STR_VAR_1}”\n"
+ .string "is really popular right now.\p"
+ .string "Okay, listen!\n"
+ .string "... ...\p"
+ .string "Oh!\n"
+ .string "{STR_VAR_1}!\p"
+ .string "Wonderful\n"
+ .string "{STR_VAR_1}!$"
+
+DewfordTown_Hall_Text_175AD9:: @ 8175AD9
+ .string "... ...\p"
+ .string "I dare say, chap, it would pay for you\n"
+ .string "to work on your singing before you\l"
+ .string "trifle yourself with\l"
+ .string "“{STR_VAR_1}.”$"
+
+DewfordTown_Hall_Text_175B46:: @ 8175B46
+ .string "Anyway, as I was saying earlier, we\n"
+ .string "should get together and organize a\l"
+ .string "“{STR_VAR_1}” party\l"
+ .string "on the island.$"
+
+DewfordTown_Hall_Text_175BA7:: @ 8175BA7
+ .string "Oh, a smashing good idea!\p"
+ .string "It will settle once and for all\n"
+ .string "who is the best at\l"
+ .string "“{STR_VAR_1}.”\l"
+ .string "Brilliant, indeed!\p"
+ .string "Starting today, our lives will revolve\n"
+ .string "around “{STR_VAR_1}”!$"
+
+DewfordTown_Hall_Text_175C41:: @ 8175C41
+ .string "I was thinking, though...\p"
+ .string "Wouldn’t you agree that\n"
+ .string "“{STR_VAR_1}” has\l"
+ .string "grown from being something trendy to\l"
+ .string "being a part of our daily lives?$"
+
+DewfordTown_Hall_Text_175CC2:: @ 8175CC2
+ .string "Beg pardon?\n"
+ .string "That much, what?\p"
+ .string "However, it’s true that\n"
+ .string "“{STR_VAR_1}”\l"
+ .string "weighs heavily on your mind, whether\l"
+ .string "you’re awake or asleep.\p"
+ .string "Absolutely, you’re the\n"
+ .string "“{STR_VAR_1}”\l"
+ .string "PROFESSOR, old sport!$"
+
+DewfordTown_Hall_Text_175D6B:: @ 8175D6B
+ .string "If you and me team up as a combo,\n"
+ .string "we’ll be invincible when it comes to all\l"
+ .string "things “{STR_VAR_1}”!$"
+
+DewfordTown_Hall_Text_175DC3:: @ 8175DC3
+ .string "Spot on, my friend!\p"
+ .string "We shall be the\n"
+ .string "“{STR_VAR_1}” DUO!\p"
+ .string "Isn’t that a ripe image?\n"
+ .string "Hahahah!$"
+
+DewfordTown_Hall_Text_175E13:: @ 8175E13
+ .string "For me, SLUDGE BOMB is at the peak\n"
+ .string "of popularity. It’s the one.\p"
+ .string "Hunh? You’re telling me that you don’t\n"
+ .string "know about SLUDGE BOMB?\p"
+ .string "That’s outright pitiful.\n"
+ .string "I’ll give you one.$"
+
+DewfordTown_Hall_Text_175EBE:: @ 8175EBE
+ .string "I love SLUDGE BOMB.\p"
+ .string "But POKéMON with the\n"
+ .string "“{STR_VAR_1}”\l"
+ .string "move are in, too.$"
+
diff --git a/data/maps/text/DewfordTown_House1.s b/data/maps/text/DewfordTown_House1.s
new file mode 100644
index 000000000..8f6324636
--- /dev/null
+++ b/data/maps/text/DewfordTown_House1.s
@@ -0,0 +1,15 @@
+DewfordTown_House1_Text_174BA5:: @ 8174BA5
+ .string "There’s a lot to be said for living on\n"
+ .string "a small island like this in harmony with\l"
+ .string "POKéMON and the family.$"
+
+DewfordTown_House1_Text_174C0D:: @ 8174C0D
+ .string "I came from the large port of SLATEPORT\n"
+ .string "CITY when I married my husband here.\p"
+ .string "Life goes by slowly on this little\n"
+ .string "island. But being surrounded by the\l"
+ .string "beautiful sea - that’s happiness, too.$"
+
+DewfordTown_House1_Text_174CC8:: @ 8174CC8
+ .string "ZIGZAGOON: Guguuh!$"
+
diff --git a/data/maps/text/DewfordTown_House2.s b/data/maps/text/DewfordTown_House2.s
new file mode 100644
index 000000000..daa41a12c
--- /dev/null
+++ b/data/maps/text/DewfordTown_House2.s
@@ -0,0 +1,29 @@
+DewfordTown_House2_Text_175EFE:: @ 8175EFE
+ .string "Gorge your eyes on this!\p"
+ .string "It’s a SILK SCARF. It’s right at the\n"
+ .string "cutting edge of fashion, yeah!\p"
+ .string "Oh, I can see your eyes twinkling!\n"
+ .string "You appreciate my dazzling style!\p"
+ .string "Oh, you’re a delight!\n"
+ .string "Here you go. I want you to have it!$"
+
+DewfordTown_House2_Text_175FDA:: @ 8175FDA
+ .string "Oh, you don’t have room?\p"
+ .string "Now, listen tight, this SCARF is a must-\n"
+ .string "have! Why, I would sell all my items\l"
+ .string "in order to get it!$"
+
+DewfordTown_House2_Text_176055:: @ 8176055
+ .string "The SILK SCARF raises the power of\n"
+ .string "NORMAL-type moves.\p"
+ .string "It’s a marvelous SCARF that will go\n"
+ .string "with almost all POKéMON!$"
+
+DewfordTown_House2_Text_1760C8:: @ 81760C8
+ .string "Wow, you bothered to cross the sea\n"
+ .string "to visit DEWFORD?\p"
+ .string "Did you maybe come here because you\n"
+ .string "heard about BRAWLY?\p"
+ .string "He’s so cool...\n"
+ .string "Everyone idolizes him.$"
+
diff --git a/data/maps/text/DewfordTown_PokemonCenter_1F.s b/data/maps/text/DewfordTown_PokemonCenter_1F.s
new file mode 100644
index 000000000..de56f404e
--- /dev/null
+++ b/data/maps/text/DewfordTown_PokemonCenter_1F.s
@@ -0,0 +1,11 @@
+DewfordTown_PokemonCenter_1F_Text_174CDB:: @ 8174CDB
+ .string "There’s a stone cavern at the edge\n"
+ .string "of town.\p"
+ .string "I’ve heard you can find rare stones\n"
+ .string "there.$"
+
+DewfordTown_PokemonCenter_1F_Text_174D32:: @ 8174D32
+ .string "Even if a POKéMON faints and can’t\n"
+ .string "battle, it can still use a move learned\l"
+ .string "from a Hidden Machine, HM.$"
+
diff --git a/data/maps/text/EverGrandeCity.s b/data/maps/text/EverGrandeCity.s
new file mode 100644
index 000000000..31e53ef90
--- /dev/null
+++ b/data/maps/text/EverGrandeCity.s
@@ -0,0 +1,12 @@
+EverGrandeCity_Text_16A74D:: @ 816A74D
+ .string "ENTERING VICTORY ROAD$"
+
+EverGrandeCity_Text_16A763:: @ 816A763
+ .string "ENTERING POKéMON LEAGUE\n"
+ .string "CENTER GATE$"
+
+EverGrandeCity_Text_16A787:: @ 816A787
+ .string "EVER GRANDE CITY\p"
+ .string "“The paradise of flowers, the sea,\n"
+ .string "and POKéMON.”$"
+
diff --git a/data/maps/text/EverGrandeCity_ChampionsRoom.s b/data/maps/text/EverGrandeCity_ChampionsRoom.s
new file mode 100644
index 000000000..82ccb7e4f
--- /dev/null
+++ b/data/maps/text/EverGrandeCity_ChampionsRoom.s
@@ -0,0 +1,101 @@
+EverGrandeCity_ChampionsRoom_Text_190F9C:: @ 8190F9C
+ .string "STEVEN: Welcome, {PLAYER}{KUN}.\p"
+ .string "I was looking forward to seeing you\n"
+ .string "here one day.\p"
+ .string "You... What did you see on your\n"
+ .string "journey with POKéMON?\p"
+ .string "What did you feel, meeting so many\n"
+ .string "other TRAINERS like you?\p"
+ .string "What has awoken in you?\n"
+ .string "I want you to hit me with it all!\p"
+ .string "Now, bring it!$"
+
+EverGrandeCity_ChampionsRoom_Text_1910A0:: @ 81910A0
+ .string "I, the CHAMPION, fall in defeat...\p"
+ .string "Kudos to you, {PLAYER}{KUN}!\p"
+ .string "You are a truly noble POKéMON\n"
+ .string "TRAINER!$"
+
+EverGrandeCity_ChampionsRoom_Text_1910FE:: @ 81910FE
+ .string "STEVEN: Congratulations!\p"
+ .string "The feelings you have for your\n"
+ .string "POKéMON...\p"
+ .string "And the POKéMON that responded to\n"
+ .string "those feelings with all their might...\p"
+ .string "They came together as one, and created\n"
+ .string "an even greater power.\p"
+ .string "And thus, you were able to grasp\n"
+ .string "victory today!\p"
+ .string "You are rightfully the HOENN region’s\n"
+ .string "new...$"
+
+EverGrandeCity_ChampionsRoom_Text_191225:: @ 8191225
+ .string "MAY: {PLAYER}{KUN}!\p"
+ .string "Here’s some advice before you challenge\n"
+ .string "the CHAMPION...$"
+
+EverGrandeCity_ChampionsRoom_Text_191268:: @ 8191268
+ .string "MAY: Huh? What, what, what?\p"
+ .string "{PLAYER}{KUN}...\n"
+ .string "Could it be that...\l"
+ .string "It’s already over?$"
+
+EverGrandeCity_ChampionsRoom_Text_1912B3:: @ 81912B3
+ .string "BRENDAN: {PLAYER}!\p"
+ .string "How would you like some advice before\n"
+ .string "you challenge the CHAMPION?...$"
+
+EverGrandeCity_ChampionsRoom_Text_191305:: @ 8191305
+ .string "BRENDAN: {PLAYER}...\p"
+ .string "Are you trying to tell me...\n"
+ .string "You’ve beaten the CHAMPION?$"
+
+EverGrandeCity_ChampionsRoom_Text_19134D:: @ 819134D
+ .string "PROF. BIRCH: See?\n"
+ .string "What did I tell you, {RIVAL}?\p"
+ .string "Didn’t I tell you that you don’t need\n"
+ .string "to worry about {PLAYER}{KUN}?\p"
+ .string "... ... ... ... ... ... ... ...\n"
+ .string "{PLAYER}{KUN}, you’ve finally done it.\p"
+ .string "When I heard that you defeated your\n"
+ .string "own father at the PETALBURG GYM,\l"
+ .string "I thought perhaps you had a chance...\p"
+ .string "But to think you’ve actually become\n"
+ .string "the CHAMPION!\p"
+ .string "Ah, yes!\p"
+ .string "What became of your POKéDEX?\n"
+ .string "Here, let me see.$"
+
+EverGrandeCity_ChampionsRoom_Text_1914C6:: @ 81914C6
+ .string "PROF. BIRCH: Anyways,\n"
+ .string "congratulations!\p"
+ .string "Now, go proudly into the final room!$"
+
+EverGrandeCity_ChampionsRoom_Text_191512:: @ 8191512
+ .string "STEVEN: {PLAYER}{KUN}...\p"
+ .string "No, the new CHAMPION!\p"
+ .string "Come with me.$"
+
+EverGrandeCity_ChampionsRoom_Text_191546:: @ 8191546
+ .string "STEVEN: I’m sorry, but...\p"
+ .string "From here on, only those TRAINERS who\n"
+ .string "have become CHAMPIONS may enter.\p"
+ .string "You’ll have to wait outside with the\n"
+ .string "PROFESSOR.$"
+
+EverGrandeCity_ChampionsRoom_Text_1915D7:: @ 81915D7
+ .string "MAY: Groan...\p"
+ .string "... ... ... ... ... ... ... ...\n"
+ .string "... ... ... ... ... ... ... ...\p"
+ .string "I’m just joking! That’s okay!\n"
+ .string "That’s the rule!\p"
+ .string "{PLAYER}{KUN}!\n"
+ .string "Honestly, congratulations!$"
+
+EverGrandeCity_ChampionsRoom_Text_191675:: @ 8191675
+ .string "BRENDAN: ... ... ... ... ... ...\n"
+ .string "... ... ... ... ... ... ... ...\p"
+ .string "It can’t be helped if that’s the rule.\p"
+ .string "{PLAYER}, way to go!\n"
+ .string "Congratulations!$"
+
diff --git a/data/maps/text/EverGrandeCity_DrakesRoom.s b/data/maps/text/EverGrandeCity_DrakesRoom.s
new file mode 100644
index 000000000..d3c83c885
--- /dev/null
+++ b/data/maps/text/EverGrandeCity_DrakesRoom.s
@@ -0,0 +1,29 @@
+EverGrandeCity_DrakesRoom_Text_190CEB:: @ 8190CEB
+ .string "I am the last of the POKéMON LEAGUE\n"
+ .string "ELITE FOUR, DRAKE the DRAGON master!\p"
+ .string "In their natural state, POKéMON are\n"
+ .string "wild living things. They are free.\p"
+ .string "At times, they hinder us.\n"
+ .string "At times, they help us.\p"
+ .string "For us to battle with POKéMON as\n"
+ .string "partners, do you know what it takes?\p"
+ .string "Do you know what is needed?\p"
+ .string "If you don’t, then you will never\n"
+ .string "prevail over me!$"
+
+EverGrandeCity_DrakesRoom_Text_190E42:: @ 8190E42
+ .string "Superb, it should be said.$"
+
+EverGrandeCity_DrakesRoom_Text_190E5D:: @ 8190E5D
+ .string "You deserve every credit for coming\n"
+ .string "this far as a TRAINER of POKéMON.\p"
+ .string "You do seem to know what is needed.\p"
+ .string "Yes, what a TRAINER needs is a\n"
+ .string "virtuous heart.\p"
+ .string "POKéMON touch the good hearts of\n"
+ .string "TRAINERS and learn good from wrong.\p"
+ .string "They touch the good hearts of\n"
+ .string "TRAINERS and grow strong.\p"
+ .string "Go! Go onwards!\n"
+ .string "The CHAMPION is waiting!$"
+
diff --git a/data/maps/text/EverGrandeCity_GlaciasRoom.s b/data/maps/text/EverGrandeCity_GlaciasRoom.s
new file mode 100644
index 000000000..a25070dca
--- /dev/null
+++ b/data/maps/text/EverGrandeCity_GlaciasRoom.s
@@ -0,0 +1,23 @@
+EverGrandeCity_GlaciasRoom_Text_190AF9:: @ 8190AF9
+ .string "Welcome, my name is GLACIA of the\n"
+ .string "ELITE FOUR.\p"
+ .string "I’ve traveled from afar to HOENN so\n"
+ .string "that I may hone my ice skills.\p"
+ .string "But all I have seen are challenges by\n"
+ .string "weak TRAINERS and their POKéMON.\p"
+ .string "What about you?\p"
+ .string "It would please me to no end if I could\n"
+ .string "go all out against you!$"
+
+EverGrandeCity_GlaciasRoom_Text_190C01:: @ 8190C01
+ .string "You and your POKéMON...\n"
+ .string "How hot your spirits burn!\p"
+ .string "The all-consuming heat overwhelms.\p"
+ .string "It’s no surprise that my icy skills\n"
+ .string "failed to harm you.$"
+
+EverGrandeCity_GlaciasRoom_Text_190C8F:: @ 8190C8F
+ .string "Advance to the next room.\p"
+ .string "And there, confirm the truly fearsome\n"
+ .string "side of the POKéMON LEAGUE.$"
+
diff --git a/data/maps/text/EverGrandeCity_HallOfFame.s b/data/maps/text/EverGrandeCity_HallOfFame.s
new file mode 100644
index 000000000..5b6701471
--- /dev/null
+++ b/data/maps/text/EverGrandeCity_HallOfFame.s
@@ -0,0 +1,14 @@
+EverGrandeCity_HallOfFame_Text_191841:: @ 8191841
+ .string "STEVEN: This room...\p"
+ .string "This is where we keep records of\n"
+ .string "POKéMON that prevailed through\l"
+ .string "harsh battles.\p"
+ .string "It is here that the LEAGUE CHAMPIONS\n"
+ .string "are honored.$"
+
+EverGrandeCity_HallOfFame_Text_1918D7:: @ 81918D7
+ .string "STEVEN: Come on, let’s record your\n"
+ .string "name as a TRAINER who triumphed over\l"
+ .string "the POKéMON LEAGUE, and the names of\l"
+ .string "the partners who battled with you.$"
+
diff --git a/data/maps/text/EverGrandeCity_PhoebesRoom.s b/data/maps/text/EverGrandeCity_PhoebesRoom.s
new file mode 100644
index 000000000..047390a95
--- /dev/null
+++ b/data/maps/text/EverGrandeCity_PhoebesRoom.s
@@ -0,0 +1,24 @@
+EverGrandeCity_PhoebesRoom_Text_1908F5:: @ 81908F5
+ .string "Ahahaha!\p"
+ .string "I’m PHOEBE of the ELITE FOUR.\n"
+ .string "I did my training on MT. PYRE.\p"
+ .string "While I trained, I gained the ability\n"
+ .string "to commune with GHOST-type POKéMON.\p"
+ .string "Yes, the bond I developed with POKéMON\n"
+ .string "is extremely tight.\p"
+ .string "So, come on, just try and see if you can\n"
+ .string "even inflict damage on my POKéMON!$"
+
+EverGrandeCity_PhoebesRoom_Text_190A0C:: @ 8190A0C
+ .string "Oh, darn.\n"
+ .string "I’ve gone and lost.$"
+
+EverGrandeCity_PhoebesRoom_Text_190A2A:: @ 8190A2A
+ .string "There’s a definite bond between you\n"
+ .string "and your POKéMON, too.\p"
+ .string "I didn’t recognize it, so it’s only\n"
+ .string "natural that I lost.\p"
+ .string "Yup, I’d like to see how far your bond\n"
+ .string "will carry you.\p"
+ .string "Go ahead, move on to the next room.$"
+
diff --git a/data/maps/text/EverGrandeCity_PokemonCenter_1F.s b/data/maps/text/EverGrandeCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..767e24696
--- /dev/null
+++ b/data/maps/text/EverGrandeCity_PokemonCenter_1F.s
@@ -0,0 +1,13 @@
+EverGrandeCity_PokemonCenter_1F_Text_191967:: @ 8191967
+ .string "The POKéMON LEAGUE is only a short\n"
+ .string "distance after the VICTORY ROAD.\p"
+ .string "If you’ve come this far, what choice\n"
+ .string "do you have but to keep going?$"
+
+EverGrandeCity_PokemonCenter_1F_Text_1919EF:: @ 81919EF
+ .string "The long and harrowing VICTORY ROAD...\p"
+ .string "It’s like reliving the path one has\n"
+ .string "traveled in life...\p"
+ .string "Believe in your POKéMON and give it\n"
+ .string "your very best!$"
+
diff --git a/data/maps/text/EverGrandeCity_PokemonLeague.s b/data/maps/text/EverGrandeCity_PokemonLeague.s
new file mode 100644
index 000000000..3d5c5fa1f
--- /dev/null
+++ b/data/maps/text/EverGrandeCity_PokemonLeague.s
@@ -0,0 +1,16 @@
+EverGrandeCity_PokemonLeague_Text_1916FD:: @ 81916FD
+ .string "Beyond this point, only those TRAINERS\n"
+ .string "who have collected all the GYM BADGES\l"
+ .string "are permitted to enter.\p"
+ .string "TRAINER, let us confirm that you have\n"
+ .string "all the GYM BADGES.$"
+
+EverGrandeCity_PokemonLeague_Text_19179C:: @ 819179C
+ .string "You haven’t obtained all the BADGES.\p"
+ .string "If you’re bound for the POKéMON\n"
+ .string "LEAGUE, you must return with them.$"
+
+EverGrandeCity_PokemonLeague_Text_191804:: @ 8191804
+ .string "TRAINER! Believe in yourself and your\n"
+ .string "POKéMON, and go forth!$"
+
diff --git a/data/maps/text/EverGrandeCity_SidneysRoom.s b/data/maps/text/EverGrandeCity_SidneysRoom.s
new file mode 100644
index 000000000..6ec9f3327
--- /dev/null
+++ b/data/maps/text/EverGrandeCity_SidneysRoom.s
@@ -0,0 +1,21 @@
+EverGrandeCity_SidneysRoom_Text_190728:: @ 8190728
+ .string "Welcome, challenger!\n"
+ .string "I’m SIDNEY of the ELITE FOUR.\p"
+ .string "I like that look you’re giving me.\n"
+ .string "I guess you’ll give me a good match.\l"
+ .string "That’s good! Looking real good!\p"
+ .string "All right! You and me, let’s enjoy a\n"
+ .string "battle that can only be staged here\l"
+ .string "in the POKéMON LEAGUE!$"
+
+EverGrandeCity_SidneysRoom_Text_190823:: @ 8190823
+ .string "Well, how do you like that? I lost!\n"
+ .string "Eh, it was fun, so it doesn’t matter.$"
+
+EverGrandeCity_SidneysRoom_Text_19086D:: @ 819086D
+ .string "Well, listen to what this loser has\n"
+ .string "to say.\p"
+ .string "You’ve got what it takes to go far.\n"
+ .string "Now, go on to the next room and enjoy\l"
+ .string "your next battle!$"
+
diff --git a/data/maps/text/FallarborTown.s b/data/maps/text/FallarborTown.s
new file mode 100644
index 000000000..6bb2b38e0
--- /dev/null
+++ b/data/maps/text/FallarborTown.s
@@ -0,0 +1,42 @@
+FallarborTown_Text_16C7FF:: @ 816C7FF
+ .string "What’s up, what’s up?\p"
+ .string "I saw a shady fellow scuttling in and\n"
+ .string "out of PROF. COZMO’s LAB.$"
+
+FallarborTown_Text_16C855:: @ 816C855
+ .string "This region’s been known for meteors\n"
+ .string "since the olden days.\p"
+ .string "They say METEOR FALLS was gouged out\n"
+ .string "by a falling meteorite long ago.$"
+
+FallarborTown_Text_16C8D6:: @ 816C8D6
+ .string "See! Take a look!\n"
+ .string "This is my precious AZURILL!\p"
+ .string "It’s slick and smooth and plushy, too!$"
+
+FallarborTown_Text_16C92C:: @ 816C92C
+ .string "AZURILL: Rooreelooo.$"
+
+FallarborTown_Text_16C941:: @ 816C941
+ .string "Have you already challenged FLANNERY,\n"
+ .string "the LEADER of LAVARIDGE GYM?\p"
+ .string "The girl’s grandfather was famous.\n"
+ .string "He was one of the ELITE FOUR in the\l"
+ .string "POKéMON LEAGUE at one point.\p"
+ .string "It wouldn’t surprise me to see FLANNERY\n"
+ .string "become a great TRAINER in her own\l"
+ .string "right.$"
+
+FallarborTown_Text_16CA39:: @ 816CA39
+ .string "POKéMON CONTESTS\n"
+ .string "SUPER RANK REGISTRATION\p"
+ .string "“Burst on to the POKéMON scene!”$"
+
+FallarborTown_Text_16CA83:: @ 816CA83
+ .string "FALLARBOR TOWN\n"
+ .string "“A farm community with small gardens.”$"
+
+FallarborTown_Text_16CAB9:: @ 816CAB9
+ .string "MOVE TUTOR’S HOUSE\n"
+ .string "“New moves taught to POKéMON.”$"
+
diff --git a/data/maps/text/FallarborTown_ContestHall.s b/data/maps/text/FallarborTown_ContestHall.s
new file mode 100644
index 000000000..a9ff40989
--- /dev/null
+++ b/data/maps/text/FallarborTown_ContestHall.s
@@ -0,0 +1,22 @@
+FallarborTown_ContestHall_Text_177335:: @ 8177335
+ .string "We do all right in the preliminary round,\n"
+ .string "but we can never win the appeals...\p"
+ .string "Maybe it means I have to watch what\n"
+ .string "other contestants are doing...$"
+
+FallarborTown_ContestHall_Text_1773C6:: @ 81773C6
+ .string "See!\n"
+ .string "My POKéMON won all these RIBBONS!\p"
+ .string "Have your POKéMON earned any RIBBONS?\n"
+ .string "You can check them on your POKéNAV.$"
+
+FallarborTown_ContestHall_Text_177437:: @ 8177437
+ .string "I can’t beat GYM LEADERS...\p"
+ .string "I can’t win any CONTESTS...\p"
+ .string "I’ve been here, there, and everywhere,\n"
+ .string "and it’s all for naught...$"
+
+FallarborTown_ContestHall_Text_1774B1:: @ 81774B1
+ .string "POKéMON CONTESTS\n"
+ .string "SUPER RANK STAGE!$"
+
diff --git a/data/maps/text/FallarborTown_ContestLobby.s b/data/maps/text/FallarborTown_ContestLobby.s
new file mode 100644
index 000000000..58a1116d1
--- /dev/null
+++ b/data/maps/text/FallarborTown_ContestLobby.s
@@ -0,0 +1,24 @@
+FallarborTown_ContestLobby_Text_177141:: @ 8177141
+ .string "They had a sketch of my POKéMON up\n"
+ .string "on the wall over there, but they\l"
+ .string "changed it with a new one already.\p"
+ .string "I’m going to enter my HANA in CONTESTS\n"
+ .string "so we can get her sketch up again!$"
+
+FallarborTown_ContestLobby_Text_1771F2:: @ 81771F2
+ .string "Hi, are you making any {POKEBLOCK}S?\p"
+ .string "You should come by with a bunch of\n"
+ .string "BERRIES sometime.$"
+
+FallarborTown_ContestLobby_Text_177246:: @ 8177246
+ .string "You see how they display a sketch of\n"
+ .string "a CONTEST winner here?\p"
+ .string "I sketch them!\p"
+ .string "If any of your POKéMON wins a CONTEST,\n"
+ .string "I’d gladly make a sketch of it!$"
+
+FallarborTown_ContestLobby_Text_1772D8:: @ 81772D8
+ .string "Hello! Congratulations!\p"
+ .string "I’ve put up a sketch of your POKéMON\n"
+ .string "right here for everyone to see!$"
+
diff --git a/data/maps/text/FallarborTown_House1.s b/data/maps/text/FallarborTown_House1.s
new file mode 100644
index 000000000..d01357fa2
--- /dev/null
+++ b/data/maps/text/FallarborTown_House1.s
@@ -0,0 +1,52 @@
+FallarborTown_House1_Text_177755:: @ 8177755
+ .string "PROF. COZMO: Oh...\n"
+ .string "I never should have let myself be\l"
+ .string "conned into telling TEAM {EVIL_TEAM} where\l"
+ .string "you can find METEORITES...\p"
+ .string "That METEORITE from METEOR FALLS...\n"
+ .string "It’s never going to be mine now...$"
+
+FallarborTown_House1_Text_17780E:: @ 817780E
+ .string "Oh!\n"
+ .string "Hah?\p"
+ .string "That item...\p"
+ .string "Could it be?\p"
+ .string "Is it the METEORITE that TEAM {EVIL_TEAM}\n"
+ .string "took from METEOR FALLS?\p"
+ .string "Please, may I have it?\p"
+ .string "I’m not asking for it for free.\n"
+ .string "How about in exchange for this TM?$"
+
+FallarborTown_House1_Text_1778C4:: @ 81778C4
+ .string "PROF. COZMO: This TM, it represents\n"
+ .string "my feeling of gratitude.\l"
+ .string "Please use it!$"
+
+FallarborTown_House1_Text_177910:: @ 8177910
+ .string "PROF. COZMO: Oh, I can’t believe it.\n"
+ .string "This is really, really great!\p"
+ .string "This is really going to help my research!$"
+
+FallarborTown_House1_Text_17797D:: @ 817797D
+ .string "PROF. COZMO: Oh, but...\n"
+ .string "I’m crushed with disappointment...$"
+
+FallarborTown_House1_Text_1779B8:: @ 81779B8
+ .string "PROF. COZMO: Please, may I have that\n"
+ .string "METEORITE?\p"
+ .string "I’m not asking for it for free.\n"
+ .string "How about in exchange for this TM?$"
+
+FallarborTown_House1_Text_177A2B:: @ 8177A2B
+ .string "PROF. COZMO went off to METEOR FALLS\n"
+ .string "on ROUTE 114 with some people from\l"
+ .string "TEAM {EVIL_TEAM}.$"
+
+FallarborTown_House1_Text_177A7C:: @ 8177A7C
+ .string "Poor PROF. COZMO...\n"
+ .string "He’s so depressed... I feel sorry for him.$"
+
+FallarborTown_House1_Text_177ABB:: @ 8177ABB
+ .string "Look at PROF. COZMO...\n"
+ .string "He’s so happy! I think it’s cute.$"
+
diff --git a/data/maps/text/FallarborTown_House2.s b/data/maps/text/FallarborTown_House2.s
new file mode 100644
index 000000000..32f430dd9
--- /dev/null
+++ b/data/maps/text/FallarborTown_House2.s
@@ -0,0 +1,39 @@
+FallarborTown_House2_Text_177AF4:: @ 8177AF4
+ .string "I’m the MOVE TUTOR.\p"
+ .string "I know all the moves that POKéMON\n"
+ .string "learn - every one of them - and I can\l"
+ .string "teach POKéMON those moves.\p"
+ .string "I can teach a move to a POKéMON\n"
+ .string "of yours if you’d like.\p"
+ .string "I’ll do it for a HEART SCALE.\n"
+ .string "I’m collecting those now.$"
+
+FallarborTown_House2_Text_177BDB:: @ 8177BDB
+ .string "Oh! That’s it! That’s an honest to\n"
+ .string "goodness HEART SCALE!\p"
+ .string "Let me guess, you want me to teach\n"
+ .string "a move?$"
+
+FallarborTown_House2_Text_177C3F:: @ 8177C3F
+ .string "Which POKéMON needs tutoring?$"
+
+FallarborTown_House2_Text_177C5D:: @ 8177C5D
+ .string "Which move should I teach?$"
+
+FallarborTown_House2_Text_177C78:: @ 8177C78
+ .string "Sorry...\p"
+ .string "It doesn’t appear as if I have any move\n"
+ .string "I can teach that POKéMON.$"
+
+FallarborTown_House2_Text_177CC3:: @ 8177CC3
+ .string "{PLAYER} handed over one HEART SCALE\n"
+ .string "in exchange.$"
+
+FallarborTown_House2_Text_177CEF:: @ 8177CEF
+ .string "If your POKéMON need to learn a move,\n"
+ .string "come back with a HEART SCALE.$"
+
+FallarborTown_House2_Text_177D33:: @ 8177D33
+ .string "Hunh? There isn’t a single move that\n"
+ .string "I can teach an EGG.$"
+
diff --git a/data/maps/text/FallarborTown_Mart.s b/data/maps/text/FallarborTown_Mart.s
new file mode 100644
index 000000000..a83d94a9f
--- /dev/null
+++ b/data/maps/text/FallarborTown_Mart.s
@@ -0,0 +1,17 @@
+FallarborTown_Mart_Text_176FF0:: @ 8176FF0
+ .string "I’m having a hard time deciding if I\n"
+ .string "should make my SKITTY evolve or not.\p"
+ .string "I only have to use this MOON STONE,\n"
+ .string "but it’s so hard to decide...\p"
+ .string "If I make it evolve, it will become\n"
+ .string "much stronger.\p"
+ .string "But it will look so different, too.$"
+
+FallarborTown_Mart_Text_1770D3:: @ 81770D3
+ .string "SKITTY: Miyao?$"
+
+FallarborTown_Mart_Text_1770E2:: @ 81770E2
+ .string "This NUGGET I found here...\n"
+ .string "I suppose I’ll have to sell it, seeing\l"
+ .string "as how it has no other use.$"
+
diff --git a/data/maps/text/FallarborTown_PokemonCenter_1F.s b/data/maps/text/FallarborTown_PokemonCenter_1F.s
new file mode 100644
index 000000000..8c3f8886e
--- /dev/null
+++ b/data/maps/text/FallarborTown_PokemonCenter_1F.s
@@ -0,0 +1,28 @@
+FallarborTown_PokemonCenter_1F_Text_1774D4:: @ 81774D4
+ .string "Oh, hello.\n"
+ .string "You are?\p"
+ .string "Okay, your name’s {PLAYER}{KUN}.\n"
+ .string "I can see that you’re a TRAINER.\p"
+ .string "So that means you use the POKéMON\n"
+ .string "Storage System I developed.\p"
+ .string "How I arrived at that conclusion is\n"
+ .string "a simple deductive process.\p"
+ .string "You spoke to me because you wanted\n"
+ .string "to access something on this PC.\p"
+ .string "Oh, I’m sorry. I’m LANETTE.\p"
+ .string "Honestly, I’m glad to meet you - it’s\n"
+ .string "great you’re using the Storage System.\p"
+ .string "If you could, please visit me at home.\n"
+ .string "My house is on ROUTE 114.$"
+
+FallarborTown_PokemonCenter_1F_Text_17768C:: @ 817768C
+ .string "I wonder what POKéMON looked like\n"
+ .string "long, long ago?\p"
+ .string "Maybe the FOSSIL MANIAC at the edge\n"
+ .string "of town will know.$"
+
+FallarborTown_PokemonCenter_1F_Text_1776F5:: @ 81776F5
+ .string "In the fields of FALLARBOR, we plant\n"
+ .string "seedlings of hardy trees that thrive\l"
+ .string "even in volcanic ash.$"
+
diff --git a/data/maps/text/FieryPath.s b/data/maps/text/FieryPath.s
new file mode 100644
index 000000000..367fe93ec
--- /dev/null
+++ b/data/maps/text/FieryPath.s
@@ -0,0 +1,18 @@
+FieryPath_Text_1B103D:: @ 81B103D
+ .string "It’s a big boulder, but a POKéMON\n"
+ .string "may be able to push it aside.\p"
+ .string "Would you like to use STRENGTH?$"
+
+FieryPath_Text_1B109D:: @ 81B109D
+ .string "{STR_VAR_1} used STRENGTH.\p"
+ .string "{STR_VAR_1}’s STRENGTH made it possible\n"
+ .string "to move boulders around.$"
+
+FieryPath_Text_1B10E7:: @ 81B10E7
+ .string "It’s a big boulder, but a POKéMON\n"
+ .string "may be able to push it aside.$"
+
+FieryPath_Text_1B1127:: @ 81B1127
+ .string "STRENGTH made it possible to move\n"
+ .string "boulders around.$"
+
diff --git a/data/maps/text/FortreeCity.s b/data/maps/text/FortreeCity.s
new file mode 100644
index 000000000..873c61066
--- /dev/null
+++ b/data/maps/text/FortreeCity.s
@@ -0,0 +1,63 @@
+FortreeCity_Text_167577:: @ 8167577
+ .string "Sniff...\n"
+ .string "Um... You, uh...smell singed.\p"
+ .string "Were you at a volcano or something?$"
+
+FortreeCity_Text_1675C2:: @ 81675C2
+ .string "I want to go to the POKéMON GYM, but\n"
+ .string "something’s blocking the way.\p"
+ .string "After all the bother I went through\n"
+ .string "training on ROUTE 120...$"
+
+FortreeCity_Text_167642:: @ 8167642
+ .string "I’ve got my pride-and-joy POKéMON\n"
+ .string "with me. This time, I’ll beat WINONA.$"
+
+FortreeCity_Text_16768A:: @ 816768A
+ .string "The ground absorbs rainwater, and\n"
+ .string "trees grow by drinking that water...\p"
+ .string "Our FORTREE CITY exists because\n"
+ .string "there’s both water and soil.$"
+
+FortreeCity_Text_16770E:: @ 816770E
+ .string "The CITY consists of homes built on\n"
+ .string "trees.\p"
+ .string "Perhaps because of that lifestyle,\n"
+ .string "everyone is healthy and lively.\p"
+ .string "Why, even myself - I feel as if I’ve\n"
+ .string "grown thirty years younger.$"
+
+FortreeCity_Text_1677BD:: @ 81677BD
+ .string "Living on top of trees is okay.\p"
+ .string "But sometimes BUG POKéMON come in\n"
+ .string "through windows.\l"
+ .string "It can be really startling.$"
+
+FortreeCity_Text_16782C:: @ 816782C
+ .string "Some POKéMON evolve when they go\n"
+ .string "through a Game Link cable.$"
+
+FortreeCity_Text_167868:: @ 8167868
+ .string "Something unseeable is in the way.$"
+
+FortreeCity_Text_16788B:: @ 816788B
+ .string "Something unseeable is in the way.\p"
+ .string "Want to use the DEVON SCOPE?$"
+
+FortreeCity_Text_1678CB:: @ 81678CB
+ .string "{PLAYER} used the DEVON SCOPE.\p"
+ .string "An invisible POKéMON became completely\n"
+ .string "visible!\p"
+ .string "The startled POKéMON fled!$"
+
+FortreeCity_Text_16792F:: @ 816792F
+ .string "FORTREE CITY\n"
+ .string "“The treetop city that frolics with\l"
+ .string "nature.”$"
+
+FortreeCity_Text_167969:: @ 8167969
+ .string "FORTREE CITY POKéMON GYM\n"
+ .string "LEADER: WINONA\p"
+ .string "“The bird user taking flight into\n"
+ .string "the world.”$"
+
diff --git a/data/maps/text/FortreeCity_DecorationShop.s b/data/maps/text/FortreeCity_DecorationShop.s
new file mode 100644
index 000000000..d977d0e35
--- /dev/null
+++ b/data/maps/text/FortreeCity_DecorationShop.s
@@ -0,0 +1,13 @@
+FortreeCity_DecorationShop_Text_186A61:: @ 8186A61
+ .string "Merchandise you buy here is sent to\n"
+ .string "your own PC.\p"
+ .string "That’s fantastic! I wish they could\n"
+ .string "also deliver me home like that.$"
+
+FortreeCity_DecorationShop_Text_186AD6:: @ 8186AD6
+ .string "I’m buying a pretty desk and I’m\n"
+ .string "putting my cute DOLLS on it.\p"
+ .string "If I don’t, when I decorate my\n"
+ .string "SECRET BASE, my DOLLS will get\l"
+ .string "dirty or poked with splinters.$"
+
diff --git a/data/maps/text/FortreeCity_Gym.s b/data/maps/text/FortreeCity_Gym.s
new file mode 100644
index 000000000..1c8d5c55d
--- /dev/null
+++ b/data/maps/text/FortreeCity_Gym.s
@@ -0,0 +1,117 @@
+FortreeCity_Gym_Text_18589C:: @ 818589C
+ .string "Yo, how’s it going, CHAMPION-\n"
+ .string "bound {PLAYER}?\p"
+ .string "FORTREE GYM LEADER WINONA is a\n"
+ .string "master of FLYING-type POKéMON.\p"
+ .string "She’s waiting at the back of this GYM,\n"
+ .string "behind the rotating doors.\p"
+ .string "She’s waiting for new challengers who\n"
+ .string "are trying to take wing!\p"
+ .string "Okay, go for it!$"
+
+FortreeCity_Gym_Text_185994:: @ 8185994
+ .string "You did it!\n"
+ .string "You’ve achieved liftoff!$"
+
+FortreeCity_Gym_Text_1859B9:: @ 81859B9
+ .string "Behold the elegant battle style of\n"
+ .string "BIRD POKéMON!$"
+
+FortreeCity_Gym_Text_1859EA:: @ 81859EA
+ .string "You...\n"
+ .string "You’re strong...$"
+
+FortreeCity_Gym_Text_185A02:: @ 8185A02
+ .string "A TRAINER has to be smart to keep\n"
+ .string "up with unexpected turns of events.\p"
+ .string "Let’s see if you have the smarts to\n"
+ .string "get to our LEADER?$"
+
+FortreeCity_Gym_Text_185A7F:: @ 8185A7F
+ .string "The lovers of BIRD POKéMON aspire\n"
+ .string "to join this GYM.\p"
+ .string "As a member of the FORTREE GYM,\n"
+ .string "I’m not allowed to lose!$"
+
+FortreeCity_Gym_Text_185AEC:: @ 8185AEC
+ .string "It was too much of a load for me\n"
+ .string "to bear...$"
+
+FortreeCity_Gym_Text_185B18:: @ 8185B18
+ .string "The world is huge, and there are\n"
+ .string "countless tough TRAINERS.\p"
+ .string "I’m going to keep training and make\n"
+ .string "myself even stronger.$"
+
+FortreeCity_Gym_Text_185B8D:: @ 8185B8D
+ .string "There’s no need for WINONA, our GYM\n"
+ .string "LEADER, to deal with you!\p"
+ .string "I’m plenty good enough for you!$"
+
+FortreeCity_Gym_Text_185BEB:: @ 8185BEB
+ .string "WINONA, I...\n"
+ .string "I lost!$"
+
+FortreeCity_Gym_Text_185C00:: @ 8185C00
+ .string "WINONA is cute and she’s strong.\n"
+ .string "She’s the ultimate LEADER!\p"
+ .string "Blush...$"
+
+FortreeCity_Gym_Text_185C45:: @ 8185C45
+ .string "WINONA taught me personally!\n"
+ .string "You can’t beat me easily!$"
+
+FortreeCity_Gym_Text_185C7C:: @ 8185C7C
+ .string "I was beaten...$"
+
+FortreeCity_Gym_Text_185C8C:: @ 8185C8C
+ .string "Thanks to WINONA, the people of\n"
+ .string "FORTREE can live without fear.$"
+
+FortreeCity_Gym_Text_185CCB:: @ 8185CCB
+ .string "I am WINONA. I am the LEADER of the\n"
+ .string "FORTREE POKéMON GYM.\p"
+ .string "I have become one with BIRD POKéMON\n"
+ .string "and have soared the skies...\p"
+ .string "However grueling the battle, we have\n"
+ .string "triumphed with grace...\p"
+ .string "Witness the elegant choreography\n"
+ .string "of BIRD POKéMON and I!$"
+
+FortreeCity_Gym_Text_185DBA:: @ 8185DBA
+ .string "Never before have I seen a TRAINER\n"
+ .string "command POKéMON with more grace\l"
+ .string "than I...\p"
+ .string "In recognition of your prowess,\n"
+ .string "I present to you this GYM BADGE.$"
+
+FortreeCity_Gym_Text_185E48:: @ 8185E48
+ .string "{PLAYER} received the FEATHER BADGE\n"
+ .string "from WINONA.$"
+
+FortreeCity_Gym_Text_185E73:: @ 8185E73
+ .string "With the FEATHER BADGE, all POKéMON up\n"
+ .string "to LV 70, even those received through\l"
+ .string "trades, will obey your every command.\p"
+ .string "You will also be able to use the\n"
+ .string "HM move FLY outside of battle.\p"
+ .string "And this...\n"
+ .string "This is a gift from me.$"
+
+FortreeCity_Gym_Text_185F4A:: @ 8185F4A
+ .string "TM40 contains AERIAL ACE.\p"
+ .string "Its speed...\n"
+ .string "No POKéMON should be able to avoid it.$"
+
+FortreeCity_Gym_Text_185F98:: @ 8185F98
+ .string "Though I fell to you, I will remain\n"
+ .string "devoted to BIRD POKéMON.$"
+
+FortreeCity_Gym_Text_185FD5:: @ 8185FD5
+ .string "FORTREE CITY POKéMON GYM$"
+
+FortreeCity_Gym_Text_185FEE:: @ 8185FEE
+ .string "FORTREE CITY POKéMON GYM\p"
+ .string "WINONA’S CERTIFIED TRAINERS:\n"
+ .string "{PLAYER}$"
+
diff --git a/data/maps/text/FortreeCity_House1.s b/data/maps/text/FortreeCity_House1.s
new file mode 100644
index 000000000..605d9a842
--- /dev/null
+++ b/data/maps/text/FortreeCity_House1.s
@@ -0,0 +1,36 @@
+FortreeCity_House1_Text_18568C:: @ 818568C
+ .string "Hi, there’s this POKéMON that I’m\n"
+ .string "looking for.\p"
+ .string "I want a {STR_VAR_1}.\n"
+ .string "Do you have one?\p"
+ .string "Would you trade it for my {STR_VAR_2}?$"
+
+FortreeCity_House1_Text_1856F7:: @ 81856F7
+ .string "Thank you!\p"
+ .string "I’ll be good to your {STR_VAR_1},\n"
+ .string "so please be nice to my {STR_VAR_2}!$"
+
+FortreeCity_House1_Text_185737:: @ 8185737
+ .string "Wait!\n"
+ .string "That POKéMON isn’t a {STR_VAR_1}.\p"
+ .string "I guess you don’t want to trade\n"
+ .string "with me.$"
+
+FortreeCity_House1_Text_18577F:: @ 818577F
+ .string "Oh, okay. If you change your mind,\n"
+ .string "please come see me.\p"
+ .string "I’ll be waiting!$"
+
+FortreeCity_House1_Text_1857C7:: @ 81857C7
+ .string "Thank you for trading with me!\p"
+ .string "I really wanted this POKéMON, so\n"
+ .string "I promise to take good care of it!$"
+
+FortreeCity_House1_Text_18582A:: @ 818582A
+ .string "Trading POKéMON with others...\p"
+ .string "It’s as if you’re trading your own\n"
+ .string "memories with other people.$"
+
+FortreeCity_House1_Text_185888:: @ 8185888
+ .string "ZIGZAGOON: Gumomoh?$"
+
diff --git a/data/maps/text/FortreeCity_House2.s b/data/maps/text/FortreeCity_House2.s
new file mode 100644
index 000000000..6a549f8c3
--- /dev/null
+++ b/data/maps/text/FortreeCity_House2.s
@@ -0,0 +1,40 @@
+FortreeCity_House2_Text_186306:: @ 8186306
+ .string "People... POKéMON...\p"
+ .string "Their hidden powers are aroused by\n"
+ .string "living in natural environments...$"
+
+FortreeCity_House2_Text_186360:: @ 8186360
+ .string "Let this old woman see if your hidden\n"
+ .string "power has awoken...\p"
+ .string "I hold a coin in my hand.\p"
+ .string "Now, tell me, have I palmed it in the\n"
+ .string "right hand? Or in the left?$"
+
+FortreeCity_House2_Text_1863F6:: @ 81863F6
+ .string "Oh! Yes, correct!\p"
+ .string "We shall try again.\p"
+ .string "In which hand have I palmed the coin?\n"
+ .string "The right or left?$"
+
+FortreeCity_House2_Text_186455:: @ 8186455
+ .string "Oh! Yes, correct again!\p"
+ .string "We shall try once more.\p"
+ .string "In which hand have I palmed the coin?\n"
+ .string "The right or left? Choose!$"
+
+FortreeCity_House2_Text_1864C6:: @ 81864C6
+ .string "Oh! Splendid!\n"
+ .string "Your hidden power has awoken!\p"
+ .string "Here, take this and awaken the hidden\n"
+ .string "power of your POKéMON.$"
+
+FortreeCity_House2_Text_18652F:: @ 818652F
+ .string "HIDDEN POWER is a move that changes\n"
+ .string "with the POKéMON.$"
+
+FortreeCity_House2_Text_186565:: @ 8186565
+ .string "No, too bad.\n"
+ .string "You guessed wrong.$"
+
+ .incbin "baserom.gba", 0x186585, 0x9f
+
diff --git a/data/maps/text/FortreeCity_House3.s b/data/maps/text/FortreeCity_House3.s
new file mode 100644
index 000000000..a4705366d
--- /dev/null
+++ b/data/maps/text/FortreeCity_House3.s
@@ -0,0 +1,18 @@
+FortreeCity_House3_Text_186624:: @ 8186624
+ .string "Speaking of POKéDEXES, I remembered\n"
+ .string "something.\p"
+ .string "I met this TRAINER, STEVEN, when\n"
+ .string "I was searching for rare stones.\p"
+ .string "Hoo, boy, he had some amazing POKéMON\n"
+ .string "with him.\p"
+ .string "They weren’t just rare, they were\n"
+ .string "trained to terrifying extremes!\p"
+ .string "He might even be stronger than the\n"
+ .string "GYM LEADER in this town...$"
+
+FortreeCity_House3_Text_186745:: @ 8186745
+ .string "What’s that thing you have there?\p"
+ .string "... ... ... ... ... ...\p"
+ .string "Oh, it’s called a POKéDEX?\n"
+ .string "It’s really awesome!$"
+
diff --git a/data/maps/text/FortreeCity_House4.s b/data/maps/text/FortreeCity_House4.s
new file mode 100644
index 000000000..7673409b8
--- /dev/null
+++ b/data/maps/text/FortreeCity_House4.s
@@ -0,0 +1,31 @@
+FortreeCity_House4_Text_1867AF:: @ 81867AF
+ .string "By being together with POKéMON,\n"
+ .string "people make more and more friends.\p"
+ .string "And that brings the world closer\n"
+ .string "together. I think it’s wonderful!$"
+
+FortreeCity_House4_Text_186835:: @ 8186835
+ .string "There!\n"
+ .string "Go, BIRD POKéMON!$"
+
+FortreeCity_House4_Text_18684E:: @ 818684E
+ .string "Heheh, I asked my WINGULL to run an\n"
+ .string "errand for me.$"
+
+FortreeCity_House4_Text_186881:: @ 8186881
+ .string "Good!\n"
+ .string "Welcome back, WINGULL!\p"
+ .string "Huh? What is this?\n"
+ .string "What is it holding?\p"
+ .string "A MENTAL HERB?\n"
+ .string "It must have picked it up somewhere.\p"
+ .string "But I’m not a TRAINER, so you can\n"
+ .string "have it.$"
+
+FortreeCity_House4_Text_186924:: @ 8186924
+ .string "Thanks to my WINGULL, I have friends\n"
+ .string "who live far away.$"
+
+FortreeCity_House4_Text_18695C:: @ 818695C
+ .string "WINGULL: Pihyoh!$"
+
diff --git a/data/maps/text/FortreeCity_House5.s b/data/maps/text/FortreeCity_House5.s
new file mode 100644
index 000000000..4d35b3a7b
--- /dev/null
+++ b/data/maps/text/FortreeCity_House5.s
@@ -0,0 +1,14 @@
+FortreeCity_House5_Text_18696D:: @ 818696D
+ .string "The tree houses of FORTREE are great!\p"
+ .string "I think it’s the number one town for\n"
+ .string "living together with POKéMON.$"
+
+FortreeCity_House5_Text_1869D6:: @ 81869D6
+ .string "POKéMON and people have adapted to\n"
+ .string "nature to survive.\p"
+ .string "There’s no need to make nature\n"
+ .string "conform to the way we want to live.$"
+
+FortreeCity_House5_Text_186A4F:: @ 8186A4F
+ .string "ZIGZAGOON: Bufuu!$"
+
diff --git a/data/maps/text/FortreeCity_Mart.s b/data/maps/text/FortreeCity_Mart.s
new file mode 100644
index 000000000..9f12492a1
--- /dev/null
+++ b/data/maps/text/FortreeCity_Mart.s
@@ -0,0 +1,16 @@
+FortreeCity_Mart_Text_1861EF:: @ 81861EF
+ .string "SUPER REPEL lasts a long time, and\n"
+ .string "it gets the job done.\p"
+ .string "It’s much better than an ordinary\n"
+ .string "REPEL.$"
+
+FortreeCity_Mart_Text_186251:: @ 8186251
+ .string "I always stock up on more items than\n"
+ .string "I’m sure I’ll need.\p"
+ .string "You never know what might happen.\n"
+ .string "Better to be safe than sorry!$"
+
+FortreeCity_Mart_Text_1862CA:: @ 81862CA
+ .string "A RARE CANDY makes a POKéMON grow\n"
+ .string "immediately by one level.$"
+
diff --git a/data/maps/text/FortreeCity_PokemonCenter_1F.s b/data/maps/text/FortreeCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..7ce6d3c3f
--- /dev/null
+++ b/data/maps/text/FortreeCity_PokemonCenter_1F.s
@@ -0,0 +1,23 @@
+FortreeCity_PokemonCenter_1F_Text_186027:: @ 8186027
+ .string "Listen, kid, are you working\n"
+ .string "on a POKéDEX?\p"
+ .string "Hmm... Go to the SAFARI ZONE.\n"
+ .string "That’s my suggestion.$"
+
+FortreeCity_PokemonCenter_1F_Text_186086:: @ 8186086
+ .string "Have you done anything at the\n"
+ .string "RECORD CORNER?\p"
+ .string "It’s pretty neat. It mixes and matches\n"
+ .string "the records of TRAINERS.\p"
+ .string "I don’t know quite how it works,\n"
+ .string "but it’s cool. It’s exciting, even!$"
+
+FortreeCity_PokemonCenter_1F_Text_186138:: @ 8186138
+ .string "Hey, you’ve got a POKéNAV!\n"
+ .string "It’s the same as mine.\p"
+ .string "Check out the TRAINER’S EYES on it.\p"
+ .string "It shows you TRAINERS who want a\n"
+ .string "rematch with you.\p"
+ .string "Isn’t it great?\n"
+ .string "You have to hand it to DEVON!$"
+
diff --git a/data/maps/text/GraniteCave_1F.s b/data/maps/text/GraniteCave_1F.s
new file mode 100644
index 000000000..a2f1257fb
--- /dev/null
+++ b/data/maps/text/GraniteCave_1F.s
@@ -0,0 +1,20 @@
+GraniteCave_1F_Text_194917:: @ 8194917
+ .string "Hey, you.\n"
+ .string "It gets awfully dark ahead.\l"
+ .string "It’ll be tough trying to explore.\p"
+ .string "That guy who came by earlier...\n"
+ .string "STEVEN, I think it was.\p"
+ .string "He knew how to use FLASH, so he ought\n"
+ .string "to be all right, but...\p"
+ .string "Well, for us HIKERS, helping out those\n"
+ .string "that we meet is our motto.\p"
+ .string "Here you go, I’ll pass this on to you.$"
+
+GraniteCave_1F_Text_194A3E:: @ 8194A3E
+ .string "Teach that hidden move FLASH to a\n"
+ .string "POKéMON and use it.\p"
+ .string "It lights up even the inky darkness\n"
+ .string "of caves.\p"
+ .string "But, to use it, you need the GYM BADGE\n"
+ .string "from DEWFORD’s POKéMON GYM.$"
+
diff --git a/data/maps/text/GraniteCave_StevensRoom.s b/data/maps/text/GraniteCave_StevensRoom.s
new file mode 100644
index 000000000..78e74a984
--- /dev/null
+++ b/data/maps/text/GraniteCave_StevensRoom.s
@@ -0,0 +1,34 @@
+GraniteCave_StevensRoom_Text_194AE5:: @ 8194AE5
+ .string "That device you have there...\n"
+ .string "It’s a POKéNAV.\p"
+ .string "When TRAINERS that have POKéNAVS\n"
+ .string "battle, it keeps a record of how\l"
+ .string "things went, I think.\p"
+ .string "Oh, pardon me.\n"
+ .string "My name is STEVEN.\p"
+ .string "I’m interested in rare stones, so\n"
+ .string "I travel here and there.\p"
+ .string "Oh?\n"
+ .string "A LETTER for me?$"
+
+GraniteCave_StevensRoom_Text_194BDD:: @ 8194BDD
+ .string "STEVEN: Okay, thank you.\p"
+ .string "You went through all this trouble to\n"
+ .string "deliver that. I need to thank you.\p"
+ .string "Let me see...\n"
+ .string "I’ll give you this TM.\p"
+ .string "It contains my favorite move,\n"
+ .string "STEEL WING.$"
+
+GraniteCave_StevensRoom_Text_194C8D:: @ 8194C8D
+ .string "STEVEN: Your POKéMON appear quite\n"
+ .string "capable.\p"
+ .string "If you keep training, you could even\n"
+ .string "become the CHAMPION of the POKéMON\l"
+ .string "LEAGUE one day. That’s what I think.\p"
+ .string "Now, I’ve got to hurry along.$"
+
+GraniteCave_StevensRoom_Text_194D43:: @ 8194D43
+ .string "Oh, your BAG is full...\n"
+ .string "That’s too bad, then.$"
+
diff --git a/data/maps/text/InsideOfTruck.s b/data/maps/text/InsideOfTruck.s
new file mode 100644
index 000000000..e4d4ada90
--- /dev/null
+++ b/data/maps/text/InsideOfTruck.s
@@ -0,0 +1,5 @@
+InsideOfTruck_Text_198FAD:: @ 8198FAD
+ .string "The box is printed with a POKéMON logo.\p"
+ .string "It’s a POKéMON brand moving and\n"
+ .string "delivery service.$"
+
diff --git a/data/maps/text/IslandCave.s b/data/maps/text/IslandCave.s
new file mode 100644
index 000000000..5722700dd
--- /dev/null
+++ b/data/maps/text/IslandCave.s
@@ -0,0 +1 @@
+IslandCave_Text_1A13BE:: @ 81A13BE
diff --git a/data/maps/text/JaggedPass.s b/data/maps/text/JaggedPass.s
new file mode 100644
index 000000000..9c9798959
--- /dev/null
+++ b/data/maps/text/JaggedPass.s
@@ -0,0 +1,64 @@
+JaggedPass_Text_195DAC:: @ 8195DAC
+ .string "MT. CHIMNEY’s JAGGED PASS...\p"
+ .string "Now this is what I’ve always wanted\n"
+ .string "in a mountain.\p"
+ .string "This jagged bumpiness...\n"
+ .string "It rocks my soul!$"
+
+JaggedPass_Text_195E27:: @ 8195E27
+ .string "Losing left me bitter!$"
+
+JaggedPass_Text_195E3E:: @ 8195E3E
+ .string "Yes, I did lose at POKéMON...\p"
+ .string "But, when it comes to the love of\n"
+ .string "the mountains, I have you beat!$"
+
+JaggedPass_Text_195E9E:: @ 8195E9E
+ .string "This place isn’t your casual hike.\n"
+ .string "It’s not suited for a picnic.$"
+
+JaggedPass_Text_195EDF:: @ 8195EDF
+ .string "Ohhh, no!\n"
+ .string "The ground is too bumpy...$"
+
+JaggedPass_Text_195F04:: @ 8195F04
+ .string "Did you know?\p"
+ .string "Some people cleverly ride their\n"
+ .string "bicycles up this horribly bumpy pass.$"
+
+JaggedPass_Text_195F58:: @ 8195F58
+ .string "Picnics are fun wherever you go.\n"
+ .string "Just like POKéMON!$"
+
+JaggedPass_Text_195F8C:: @ 8195F8C
+ .string "I only lost because the ground is\n"
+ .string "too bumpy!$"
+
+JaggedPass_Text_195FB9:: @ 8195FB9
+ .string "I’ll forget about losing and just\n"
+ .string "enjoy this bumpy hike.$"
+
+JaggedPass_Text_195FF2:: @ 8195FF2
+ .string "JAGGED PASS is hard to walk on.\n"
+ .string "It’s a good place for training.$"
+
+JaggedPass_Text_196032:: @ 8196032
+ .string "It was all over while we were still\n"
+ .string "trying to find a good footing...$"
+
+JaggedPass_Text_196077:: @ 8196077
+ .string "If I had an ACRO BIKE, I’d be able to\n"
+ .string "jump ledges.$"
+
+JaggedPass_Text_1960AA:: @ 81960AA
+ .string "I got used to this bumpiness.\n"
+ .string "I sing while I climb now.$"
+
+JaggedPass_Text_1960E2:: @ 81960E2
+ .string "It’s still not easy to battle on this\n"
+ .string "bumpy ground...$"
+
+JaggedPass_Text_196118:: @ 8196118
+ .string "I should get an ACRO BIKE from RYDEL\n"
+ .string "in MAUVILLE CITY...$"
+
diff --git a/data/maps/text/LavaridgeTown.s b/data/maps/text/LavaridgeTown.s
new file mode 100644
index 000000000..dbd5fde24
--- /dev/null
+++ b/data/maps/text/LavaridgeTown.s
@@ -0,0 +1,130 @@
+LavaridgeTown_Text_16BDA4:: @ 816BDA4
+ .string "MAY: {PLAYER}{KUN}! Long time no see!\p"
+ .string "Oh? While I was visiting the hot springs,\n"
+ .string "you got the LAVARIDGE GYM BADGE.\p"
+ .string "You must have caught good POKéMON...\n"
+ .string "No, I guess you raised some.\p"
+ .string "I guess it would be okay for you to\n"
+ .string "have this.$"
+
+LavaridgeTown_Text_16BE7D:: @ 816BE7D
+ .string "MAY: With those GO-GOGGLES, you’ll\n"
+ .string "have no trouble getting through the\l"
+ .string "desert near ROUTE 111.\p"
+ .string "But, wow, {PLAYER}{KUN}...\n"
+ .string "Challenging GYMS...\p"
+ .string "You’re trying hard because you don’t\n"
+ .string "want to lose to me, I bet!\p"
+ .string "{PLAYER}{KUN}, I think I should challenge\n"
+ .string "your dad in PETALBURG GYM.\p"
+ .string "{PLAYER}{KUN}, see you again!$"
+
+LavaridgeTown_Text_16BF92:: @ 816BF92
+ .string "BRENDAN: {PLAYER}, hey, it’s been a while.\n"
+ .string "How’s it going?\p"
+ .string "Hmm...\n"
+ .string "That’s a decent collection of BADGES.\p"
+ .string "All right, then.\n"
+ .string "You may as well have this.$"
+
+LavaridgeTown_Text_16C020:: @ 816C020
+ .string "BRENDAN: Keep those with you if you’re\n"
+ .string "planning on going into that desert near\l"
+ .string "ROUTE 111.\p"
+ .string "There should be some POKéMON that\n"
+ .string "are exclusively desert-dwellers.\l"
+ .string "You might look around for those.\p"
+ .string "As for me...\n"
+ .string "I’m considering challenging NORMAN,\l"
+ .string "the GYM LEADER of PETALBURG.\p"
+ .string "Unlike you, {PLAYER}, your dad looks like\n"
+ .string "he really is tough.\p"
+ .string "See you around!$"
+
+LavaridgeTown_Text_16C174:: @ 816C174
+ .string "I have here an EGG.\p"
+ .string "I’d hoped to hatch it by covering it in\n"
+ .string "hot sand by the hot springs.\l"
+ .string "But that doesn’t seem to be enough...\p"
+ .string "I’ve heard it would be best if it were\n"
+ .string "kept together with POKéMON and\l"
+ .string "carried about.\p"
+ .string "You are a TRAINER, yes?\n"
+ .string "And your POKéMON radiate vitality.\p"
+ .string "So, what say you?\n"
+ .string "Will you take this EGG to hatch?$"
+
+LavaridgeTown_Text_16C2B6:: @ 816C2B6
+ .string "Good! I hope you’ll walk plenty with\n"
+ .string "this here EGG!$"
+
+LavaridgeTown_Text_16C2EA:: @ 816C2EA
+ .string "{PLAYER} received the EGG.$"
+
+LavaridgeTown_Text_16C2FF:: @ 816C2FF
+ .string "Oh? You’ve too many POKéMON.\n"
+ .string "There’s no room for this EGG...$"
+
+LavaridgeTown_Text_16C33C:: @ 816C33C
+ .string "As you wish, then...\p"
+ .string "If you have a change of heart about\n"
+ .string "hatching this EGG, I will be here.$"
+
+LavaridgeTown_Text_16C398:: @ 816C398
+ .string "Every so often, an EGG will be found at\n"
+ .string "the POKéMON DAY CARE.\p"
+ .string "Or at least that’s how the rumor goes.$"
+
+LavaridgeTown_Text_16C3FD:: @ 816C3FD
+ .string "We draw as much hot water as we need,\n"
+ .string "and yet the hot springs never run dry.\p"
+ .string "Isn’t it magical?\p"
+ .string "These hot springs appear near active\n"
+ .string "volcanoes. Veins of water under the\l"
+ .string "ground are heated by magma to well up\l"
+ .string "as hot springs.$"
+
+LavaridgeTown_Text_16C4DB:: @ 816C4DB
+ .string "Being buried in this hot sand is...\n"
+ .string "Sigh...\p"
+ .string "So warm and heavenly...\p"
+ .string "Eh? Gyaah! Ouch!\p"
+ .string "A POKéMON nipped my backside!$"
+
+LavaridgeTown_Text_16C54E:: @ 816C54E
+ .string "Oh, you like hot springs, do you?\p"
+ .string "That’s surprising for one as young\n"
+ .string "as you.$"
+
+LavaridgeTown_Text_16C59B:: @ 816C59B
+ .string "I bathe in the hot springs every day.\p"
+ .string "I want to become a beautiful and strong\n"
+ .string "GYM LEADER like FLANNERY.$"
+
+LavaridgeTown_Text_16C603:: @ 816C603
+ .string "If people put POKéMON in hot springs,\n"
+ .string "it might be seriously strange.\p"
+ .string "Why, it might be an electric bath, or\n"
+ .string "a bubble bath, or even a lava bath...$"
+
+LavaridgeTown_Text_16C694:: @ 816C694
+ .string "They’re claiming that these hot springs\n"
+ .string "are good for calming nervous tension,\l"
+ .string "relieving aching muscles, solving\l"
+ .string "romantic problems, and attracting\l"
+ .string "money...$"
+
+LavaridgeTown_Text_16C72F:: @ 816C72F
+ .string "LAVARIDGE TOWN\p"
+ .string "“POKéMON CENTER HOT SPRINGS\n"
+ .string "An excellent place for relaxing!”$"
+
+LavaridgeTown_Text_16C77C:: @ 816C77C
+ .string "LAVARIDGE TOWN POKéMON GYM\n"
+ .string "LEADER: FLANNERY\l"
+ .string "“One with a fiery passion that burns!”$"
+
+LavaridgeTown_Text_16C7CF:: @ 816C7CF
+ .string "POKéMON HERB SHOP\n"
+ .string "“Bitter taste - better cure!”$"
+
diff --git a/data/maps/text/LavaridgeTown_Gym_1F.s b/data/maps/text/LavaridgeTown_Gym_1F.s
new file mode 100644
index 000000000..1a59a31da
--- /dev/null
+++ b/data/maps/text/LavaridgeTown_Gym_1F.s
@@ -0,0 +1,141 @@
+LavaridgeTown_Gym_1F_Text_176312:: @ 8176312
+ .string "Hey, how’s it going, CHAMPION-\n"
+ .string "bound {PLAYER}?\p"
+ .string "LAVARIDGE’s GYM LEADER FLANNERY\n"
+ .string "uses FIRE-type POKéMON.\p"
+ .string "Her passion for POKéMON burns stronger\n"
+ .string "and hotter than a volcano.\p"
+ .string "Don’t get too close to her - you’ll burn!\n"
+ .string "Hose her down with water and then\l"
+ .string "go for it!$"
+
+LavaridgeTown_Gym_1F_Text_17640C:: @ 817640C
+ .string "Yow! That was a scorching hot battle!$"
+
+LavaridgeTown_Gym_1F_Text_176432:: @ 8176432
+ .string "Owowowowow!\n"
+ .string "Yikes, it’s hot!$"
+
+LavaridgeTown_Gym_1F_Text_17644F:: @ 817644F
+ .string "I’m blinded by sweat in my eyes...$"
+
+LavaridgeTown_Gym_1F_Text_176472:: @ 8176472
+ .string "Being buried in hot sand promotes\n"
+ .string "circulation.\p"
+ .string "It’s effective for healing pain in\n"
+ .string "your joints.$"
+
+LavaridgeTown_Gym_1F_Text_1764D1:: @ 81764D1
+ .string "I’m trying to relieve my stress.\n"
+ .string "Don’t come along and stress me out!$"
+
+LavaridgeTown_Gym_1F_Text_176516:: @ 8176516
+ .string "I hope FLANNERY flames you good!$"
+
+LavaridgeTown_Gym_1F_Text_176537:: @ 8176537
+ .string "Haaah... Whew...\p"
+ .string "If you spend too much time buried in\n"
+ .string "hot sand, it tuckers you out...$"
+
+LavaridgeTown_Gym_1F_Text_17658D:: @ 817658D
+ .string "You must be getting tired by now.\n"
+ .string "You’d like to rest in the hot sand,\l"
+ .string "wouldn’t you?\p"
+ .string "But you should know that maintaining\n"
+ .string "your willpower is an important ability\l"
+ .string "for all TRAINERS.$"
+
+LavaridgeTown_Gym_1F_Text_17663F:: @ 817663F
+ .string "Play with fire, and be burned...$"
+
+LavaridgeTown_Gym_1F_Text_176660:: @ 8176660
+ .string "Your skill is real...\n"
+ .string "But our LEADER FLANNERY is strong.\p"
+ .string "If you don’t watch yourself, you’ll be\n"
+ .string "burned seriously.$"
+
+LavaridgeTown_Gym_1F_Text_1766D2:: @ 81766D2
+ .string "Can your POKéMON withstand\n"
+ .string "392-degree heat?$"
+
+LavaridgeTown_Gym_1F_Text_1766FE:: @ 81766FE
+ .string "It didn’t burn hotly enough...$"
+
+LavaridgeTown_Gym_1F_Text_17671D:: @ 817671D
+ .string "The temperature of magma is\n"
+ .string "392 degrees.\p"
+ .string "Your POKéMON beat me, so they should\n"
+ .string "easily survive in magma.$"
+
+LavaridgeTown_Gym_1F_Text_176784:: @ 8176784
+ .string "Um...\n"
+ .string "Okay, I’ll battle with you.$"
+
+LavaridgeTown_Gym_1F_Text_1767A6:: @ 81767A6
+ .string "Oh, but you’re too strong.$"
+
+LavaridgeTown_Gym_1F_Text_1767C1:: @ 81767C1
+ .string "I’m going to be a pretty and strong\n"
+ .string "TRAINER just like FLANNERY.$"
+
+LavaridgeTown_Gym_1F_Text_176801:: @ 8176801
+ .string "Welcome... No, wait.\p"
+ .string "Puny TRAINER, how good to see you’ve\n"
+ .string "made it here!\p"
+ .string "I have been entrusted with the...\n"
+ .string "No, wait.\p"
+ .string "I am FLANNERY, and I’m the GYM\n"
+ .string "LEADER here!\p"
+ .string "Uh...\n"
+ .string "Dare not underestimate me, though\l"
+ .string "I have been LEADER only a short time!\p"
+ .string "With skills inherited from my grand-\n"
+ .string "father, I shall, uh...demonstrate the\l"
+ .string "hot moves we have honed on this land!$"
+
+LavaridgeTown_Gym_1F_Text_176960:: @ 8176960
+ .string "Oh...\n"
+ .string "I guess I was trying too hard...\p"
+ .string "I... I’ve only recently become a GYM\n"
+ .string "LEADER.\p"
+ .string "I tried too hard to be someone I’m not.\p"
+ .string "I have to do things my natural way.\n"
+ .string "If I don’t, my POKéMON will be confused.\p"
+ .string "Thanks for teaching me that.\n"
+ .string "For that, you deserve this.$"
+
+LavaridgeTown_Gym_1F_Text_176A62:: @ 8176A62
+ .string "{PLAYER} received the HEAT BADGE\n"
+ .string "from FLANNERY.$"
+
+LavaridgeTown_Gym_1F_Text_176A8C:: @ 8176A8C
+ .string "If you have a HEAT BADGE, all POKéMON\n"
+ .string "up to Level 50, even those you get in\l"
+ .string "trades from other people, will obey\l"
+ .string "you completely.\p"
+ .string "And, it lets POKéMON use the HM move\n"
+ .string "STRENGTH outside of battle.\p"
+ .string "This is a token of my appreciation.\n"
+ .string "Don’t be shy about taking it!$"
+
+LavaridgeTown_Gym_1F_Text_176B8F:: @ 8176B8F
+ .string "That TM50 contains OVERHEAT.\p"
+ .string "That move inflicts serious damage on\n"
+ .string "the opponent.\p"
+ .string "But it also sharply cuts the SP. ATK\n"
+ .string "of the POKéMON using it. It might not\l"
+ .string "be suitable for longer battles.$"
+
+LavaridgeTown_Gym_1F_Text_176C4A:: @ 8176C4A
+ .string "Your power reminds me of someone...\p"
+ .string "Oh! I know! You battle like NORMAN,\n"
+ .string "the GYM LEADER of PETALBURG.$"
+
+LavaridgeTown_Gym_1F_Text_176CAF:: @ 8176CAF
+ .string "LAVARIDGE TOWN POKéMON GYM$"
+
+LavaridgeTown_Gym_1F_Text_176CCA:: @ 8176CCA
+ .string "LAVARIDGE TOWN POKéMON GYM\p"
+ .string "FLANNERY’S CERTIFIED TRAINERS:\n"
+ .string "{PLAYER}$"
+
diff --git a/data/maps/text/LavaridgeTown_HerbShop.s b/data/maps/text/LavaridgeTown_HerbShop.s
new file mode 100644
index 000000000..e3f3dd526
--- /dev/null
+++ b/data/maps/text/LavaridgeTown_HerbShop.s
@@ -0,0 +1,23 @@
+LavaridgeTown_HerbShop_Text_17615C:: @ 817615C
+ .string "Welcome to the HERB SHOP, home of\n"
+ .string "effective and inexpensive medicine!$"
+
+LavaridgeTown_HerbShop_Text_1761A2:: @ 81761A2
+ .string "You’ve come to look at herbal medicine\n"
+ .string "in LAVARIDGE?\p"
+ .string "That’s rather commendable.\p"
+ .string "I like you! Take this!$"
+
+LavaridgeTown_HerbShop_Text_176209:: @ 8176209
+ .string "That CHARCOAL I gave you, it’s used\n"
+ .string "for making herbal medicine.\p"
+ .string "It also does wonders when held by\n"
+ .string "a POKéMON.\p"
+ .string "It intensifies the power of FIRE-type\n"
+ .string "moves.$"
+
+LavaridgeTown_HerbShop_Text_1762A3:: @ 81762A3
+ .string "Herbal medicine works impressively well.\n"
+ .string "But your POKéMON will dislike you for it.\l"
+ .string "It must be horribly bitter!$"
+
diff --git a/data/maps/text/LavaridgeTown_House.s b/data/maps/text/LavaridgeTown_House.s
new file mode 100644
index 000000000..7bd77210a
--- /dev/null
+++ b/data/maps/text/LavaridgeTown_House.s
@@ -0,0 +1,9 @@
+LavaridgeTown_House_Text_176D07:: @ 8176D07
+ .string "My wife’s warming an EGG in the hot\n"
+ .string "springs. This is what she told me.\p"
+ .string "She left two POKéMON with the DAY CARE.\n"
+ .string "And they discovered that EGG!$"
+
+LavaridgeTown_House_Text_176D94:: @ 8176D94
+ .string "ZIGZAGOON: Pshoo!$"
+
diff --git a/data/maps/text/LavaridgeTown_Mart.s b/data/maps/text/LavaridgeTown_Mart.s
new file mode 100644
index 000000000..1f04a0dd8
--- /dev/null
+++ b/data/maps/text/LavaridgeTown_Mart.s
@@ -0,0 +1,11 @@
+LavaridgeTown_Mart_Text_176DA6:: @ 8176DA6
+ .string "Use X SPEED to add to a POKéMON’s\n"
+ .string "SPEED in battle.\p"
+ .string "That will help it get in the first\n"
+ .string "strike - a decided advantage!$"
+
+LavaridgeTown_Mart_Text_176E1A:: @ 8176E1A
+ .string "On MT. CHIMNEY’s peak, there’s a local\n"
+ .string "specialty that you can buy only there.\p"
+ .string "Give it to a POKéMON - it will be elated.$"
+
diff --git a/data/maps/text/LavaridgeTown_PokemonCenter_1F.s b/data/maps/text/LavaridgeTown_PokemonCenter_1F.s
new file mode 100644
index 000000000..6585b5219
--- /dev/null
+++ b/data/maps/text/LavaridgeTown_PokemonCenter_1F.s
@@ -0,0 +1,18 @@
+LavaridgeTown_PokemonCenter_1F_Text_176E92:: @ 8176E92
+ .string "I think POKéMON get closer to their\n"
+ .string "TRAINERS if they spend time together.\p"
+ .string "The longer the better.\n"
+ .string "That’s what I think.$"
+
+LavaridgeTown_PokemonCenter_1F_Text_176F08:: @ 8176F08
+ .string "I gave a RED {POKEBLOCK} to my POKéMON.\n"
+ .string "It looks a lot cooler all of a sudden.\p"
+ .string "Hmm...\n"
+ .string "Maybe I ought to eat a RED {POKEBLOCK}.$"
+
+LavaridgeTown_PokemonCenter_1F_Text_176F7A:: @ 8176F7A
+ .string "Hohoho! Hey, kid, you can reach\n"
+ .string "the hot springs from here.\p"
+ .string "If POKéMON are getting rest, so too\n"
+ .string "should their TRAINERS.$"
+
diff --git a/data/maps/text/LilycoveCity.s b/data/maps/text/LilycoveCity.s
new file mode 100644
index 000000000..8ff35d572
--- /dev/null
+++ b/data/maps/text/LilycoveCity.s
@@ -0,0 +1,302 @@
+LilycoveCity_Text_1679BF:: @ 81679BF
+ .string "MAY: Oh, hey?\n"
+ .string "{PLAYER}{KUN}, are you shopping, too?\p"
+ .string "I bought a whole bunch of DOLLS and\n"
+ .string "POSTERS.\p"
+ .string "Of course, I’ve also caught a lot of\n"
+ .string "POKéMON, and I’m raising them\l"
+ .string "properly, too.\p"
+ .string "Actually, I’m more worried if you’re\n"
+ .string "raising POKéMON properly, {PLAYER}{KUN}.\p"
+ .string "I’ll battle with you, so you can show\n"
+ .string "me your POKéMON, {PLAYER}{KUN}.$"
+
+LilycoveCity_Text_167AEB:: @ 8167AEB
+ .string "MAY: Oh, why? {PLAYER}{KUN}, haven’t you\n"
+ .string "been raising your POKéMON?\p"
+ .string "That’s not a very good showing as a\n"
+ .string "TRAINER...$"
+
+LilycoveCity_Text_167B55:: @ 8167B55
+ .string "MAY: Come on, battle with me, so I can\n"
+ .string "check out your POKéMON!$"
+
+LilycoveCity_Text_167B94:: @ 8167B94
+ .string "MAY: The POKéMON I raised won’t be\n"
+ .string "beaten by your POKéMON, {PLAYER}{KUN}!$"
+
+LilycoveCity_Text_167BD5:: @ 8167BD5
+ .string "... ... ... ... ... ... ... ...\p"
+ .string "I remember the battle I had with you,\n"
+ .string "{PLAYER}{KUN}, on ROUTE 103.\p"
+ .string "That battle helped you become this\n"
+ .string "strong, {PLAYER}{KUN}, didn’t it?$"
+
+LilycoveCity_Text_167C6B:: @ 8167C6B
+ .string "MAY: I’m thinking of going back to\n"
+ .string "LITTLEROOT soon.\p"
+ .string "I’ve caught a decent group of POKéMON,\n"
+ .string "and my POKéDEX is coming along, so\l"
+ .string "I’m going home to show my dad.$"
+
+LilycoveCity_Text_167D08:: @ 8167D08
+ .string "{PLAYER}{KUN}, what are you going to do?\p"
+ .string "Collect all the GYM BADGES and take\n"
+ .string "the POKéMON LEAGUE challenge?\p"
+ .string "Well, while you’re collecting BADGES,\n"
+ .string "{PLAYER}{KUN}, I’m going to work on my\l"
+ .string "POKéDEX. I’ll complete it before you!\p"
+ .string "See you!$"
+
+LilycoveCity_Text_167DDD:: @ 8167DDD
+ .string "{PLAYER}{KUN}, what are you going to do?\p"
+ .string "Are you taking the POKéMON LEAGUE\n"
+ .string "challenge?\p"
+ .string "Or, are you going to complete your\n"
+ .string "POKéDEX?\p"
+ .string "I might’ve lost to you in battling,\n"
+ .string "but I’ll finish my POKéDEX before you!\p"
+ .string "See you!$"
+
+LilycoveCity_Text_167EAA:: @ 8167EAA
+ .string "{PLAYER}{KUN}, what are you going to do?\p"
+ .string "Are you taking the BATTLE TOWER\n"
+ .string "challenge?\p"
+ .string "Or, are you going to complete your\n"
+ .string "POKéDEX?\p"
+ .string "I might’ve lost to you in battling,\n"
+ .string "but I’ll finish my POKéDEX before you!\p"
+ .string "See you!$"
+
+LilycoveCity_Text_167F75:: @ 8167F75
+ .string "BRENDAN: Oh, hey, it’s {PLAYER}.\p"
+ .string "I’m running an errand for my dad.\n"
+ .string "No, I’m not buying any DOLLS.\p"
+ .string "Anyways, it’s been a while.\p"
+ .string "Want to have a battle to see who’s been\n"
+ .string "raising POKéMON better?$"
+
+LilycoveCity_Text_16802C:: @ 816802C
+ .string "BRENDAN: Oh, what’s the matter?\n"
+ .string "Don’t have the confidence?$"
+
+LilycoveCity_Text_168067:: @ 8168067
+ .string "BRENDAN: Want to battle to see who’s\n"
+ .string "been raising POKéMON better?$"
+
+LilycoveCity_Text_1680A9:: @ 81680A9
+ .string "BRENDAN: Aww, but you know I’m not\n"
+ .string "going to lose to no {PLAYER}.$"
+
+LilycoveCity_Text_1680E4:: @ 81680E4
+ .string "Humph...\n"
+ .string "You’ve done a lot of raising.\p"
+ .string "That stings a bit - I had a head start\n"
+ .string "on you as a TRAINER...$"
+
+LilycoveCity_Text_168149:: @ 8168149
+ .string "BRENDAN: I...\n"
+ .string "I plan on going home to LITTLEROOT.\p"
+ .string "You know I’m helping out my dad on his\n"
+ .string "POKéDEX. It’s coming together pretty\l"
+ .string "decently, so I should go show him.$"
+
+LilycoveCity_Text_1681EA:: @ 81681EA
+ .string "{PLAYER}, what are you going to do?\p"
+ .string "Collect all the GYM BADGES and take\n"
+ .string "the POKéMON LEAGUE challenge?\p"
+ .string "Maybe I’ll do that, too...\p"
+ .string "Well, anyway, hang in there!$"
+
+LilycoveCity_Text_168282:: @ 8168282
+ .string "{PLAYER}, what are you going to do?\p"
+ .string "Since you’re that strong, are you\n"
+ .string "taking the POKéMON LEAGUE challenge?\p"
+ .string "Heh, even me - if I trained my POKéMON\n"
+ .string "a bit more, I should be stronger than\l"
+ .string "you, {PLAYER}.\p"
+ .string "Well, anyway, hang in there!$"
+
+LilycoveCity_Text_16835A:: @ 816835A
+ .string "{PLAYER}, what are you going to do?\p"
+ .string "Since you’re that strong, are you\n"
+ .string "taking the BATTLE TOWER challenge?\p"
+ .string "Heh, even me - if I trained my POKéMON\n"
+ .string "a bit more, I should be stronger than\l"
+ .string "you, {PLAYER}.\l"
+ .string "Maybe I will go to the BATTLE TOWER.\p"
+ .string "Well, anyway, hang in there!$"
+
+LilycoveCity_Text_168455:: @ 8168455
+ .string "Fufufu...\p"
+ .string "We moved more loot into our secret\n"
+ .string "HIDEOUT today...\p"
+ .string "Wh-who are you?!\n"
+ .string "I was just talking to myself!$"
+
+LilycoveCity_Text_1684C2:: @ 81684C2
+ .string "I’m just a GRUNT, so I don’t know what\n"
+ .string "the BOSS is thinking...\p"
+ .string "But being on TEAM {EVIL_TEAM}, I know I’ll get\n"
+ .string "the chance to do big things!\p"
+ .string "Wh-who are you?!\n"
+ .string "I was just talking to myself!$"
+
+LilycoveCity_Text_168573:: @ 8168573
+ .string "Hey, you!\p"
+ .string "Don’t go near the cave in the cove!\p"
+ .string "Why? You don’t need a reason why!\n"
+ .string "I’m an adult, so you just listen to me!$"
+
+LilycoveCity_Text_1685EB:: @ 81685EB
+ .string "If this whole wide world becomes ours,\n"
+ .string "TEAM {EVIL_TEAM}’s, it will be a happier\l"
+ .string "place for POKéMON, too.$"
+
+LilycoveCity_Text_16864A:: @ 816864A
+ .string "There! WAILMER!\n"
+ .string "Leap out of the water now!$"
+
+LilycoveCity_Text_168675:: @ 8168675
+ .string "Hunh? What do you want?\p"
+ .string "You’re messing up our training, so can\n"
+ .string "you, like, get lost?$"
+
+LilycoveCity_Text_1686C9:: @ 81686C9
+ .string "The POKéMON that come to this CONTEST\n"
+ .string "HALL are all prizewinners.\l"
+ .string "They come from all over the country.\p"
+ .string "My heart swells with excitement!$"
+
+LilycoveCity_Text_168750:: @ 8168750
+ .string "Have you seen that strange cave in\n"
+ .string "the cove at the edge of town?$"
+
+LilycoveCity_Text_168791:: @ 8168791
+ .string "I’m going to teach my POKéMON some new\n"
+ .string "moves for entering a CONTEST.\p"
+ .string "So, I’m going to see the MOVE DELETER\n"
+ .string "and make it forget HM moves.$"
+
+LilycoveCity_Text_168819:: @ 8168819
+ .string "I came from KANTO.\p"
+ .string "The HOENN region is beautiful with\n"
+ .string "all its water and verdant nature.\p"
+ .string "Hunh? Wait a second...\p"
+ .string "Could there be rare POKéMON that live\n"
+ .string "only in this area?$"
+
+LilycoveCity_Text_1688C1:: @ 81688C1
+ .string "TEAM {EVIL_TEAM}’s been training their\n"
+ .string "WAILMER in the cove.\p"
+ .string "We SAILORS can’t get our boats out\n"
+ .string "to sea with them in the way!$"
+
+LilycoveCity_Text_168934:: @ 8168934
+ .string "Ahoy, did you know?\p"
+ .string "Someone punted TEAM {EVIL_TEAM} out of the\n"
+ .string "way for us!\p"
+ .string "That got the WAILMER out of the cove,\n"
+ .string "so we can get our boats out again.$"
+
+LilycoveCity_Text_1689BF:: @ 81689BF
+ .string "I was taking a relaxing snooze at the\n"
+ .string "seaside inn to the sound of waves...\p"
+ .string "When someone stole my POKéMON!\p"
+ .string "Who’s the abductor?\n"
+ .string "TEAM {EVIL_TEAM}? Is it TEAM {EVIL_TEAM}?$"
+
+LilycoveCity_Text_168A55:: @ 8168A55
+ .string "My missing POKéMON...\n"
+ .string "It came back without me noticing!$"
+
+LilycoveCity_Text_168A8D:: @ 8168A8D
+ .string "I’m an ART DEALER.\p"
+ .string "I am a buyer and seller of fine art,\n"
+ .string "especially paintings.\p"
+ .string "I’ve heard that the MUSEUM here has\n"
+ .string "magnificent works on exhibit...$"
+
+LilycoveCity_Text_168B1F:: @ 8168B1F
+ .string "Even as we grow old and wrinkled, the\n"
+ .string "sea remains forever young with the\l"
+ .string "vivid brilliance of life...\p"
+ .string "Fwohoho fwohohohoho...$"
+
+LilycoveCity_Text_168B9B:: @ 8168B9B
+ .string "It was sixty years ago that my husband\n"
+ .string "proposed to me here.\l"
+ .string "The sea remains as beautiful as ever.\p"
+ .string "Mufufufu mufufufufufu...$"
+
+LilycoveCity_Text_168C16:: @ 8168C16
+ .string "Hm, you know of the peculiar cavern\n"
+ .string "in this cove?\p"
+ .string "That had been a natural formation, but\n"
+ .string "then that TEAM {EVIL_TEAM} lot came along\l"
+ .string "and made their renovations.\p"
+ .string "They call themselves the “nature-loving\n"
+ .string "TEAM {EVIL_TEAM}”!\p"
+ .string "But what they do and what they say\n"
+ .string "don’t match at all!$"
+
+LilycoveCity_Text_168D15:: @ 8168D15
+ .string "That cave in the cove...\n"
+ .string "It seems someone sealed the entrance,\l"
+ .string "so no one can enter it anymore.\p"
+ .string "That TEAM {EVIL_TEAM} lot, they must\n"
+ .string "have gone away for good.$"
+
+LilycoveCity_Text_168DA9:: @ 8168DA9
+ .string "LILYCOVE CITY\p"
+ .string "“Where the land ends and the\n"
+ .string "sea begins.”$"
+
+LilycoveCity_Text_168DE1:: @ 8168DE1
+ .string "POKéMON CONTESTS\n"
+ .string "MASTER RANK REGISTRATION\p"
+ .string "“Enter CONTESTS with your friends!”$"
+
+LilycoveCity_Text_168E2F:: @ 8168E2F
+ .string "COVE LILY MOTEL\p"
+ .string "“Remember us as COVE LILY of\n"
+ .string "LILYCOVE.”$"
+
+LilycoveCity_Text_168E67:: @ 8168E67
+ .string "LILYCOVE MUSEUM\p"
+ .string "“POKéMON Masterpiece Collection\n"
+ .string "on exhibit!”$"
+
+LilycoveCity_Text_168EA4:: @ 8168EA4
+ .string "LILYCOVE MUSEUM\p"
+ .string "“{PLAYER}’s POKéMON Collection\n"
+ .string "on exhibit!”$"
+
+LilycoveCity_Text_168EDA:: @ 8168EDA
+ .string "LILYCOVE CITY HARBOR\p"
+ .string "“The ferry S.S. TIDAL is under\n"
+ .string "construction in SLATEPORT CITY.\p"
+ .string "“Service is scheduled to begin\n"
+ .string "shortly.”$"
+
+LilycoveCity_Text_168F57:: @ 8168F57
+ .string "LILYCOVE CITY HARBOR\p"
+ .string "“Enjoy a delightful cruise on the\n"
+ .string "ferry S.S. TIDAL.”$"
+
+LilycoveCity_Text_168FA1:: @ 8168FA1
+ .string "POKéMON TRAINER FAN CLUB\p"
+ .string "The names of TRAINERS are scribbled\n"
+ .string "all over the sign...$"
+
+LilycoveCity_Text_168FF3:: @ 8168FF3
+ .string "LILYCOVE DEPARTMENT STORE\p"
+ .string "“Overflowing with great merchandise\n"
+ .string "and excitement!\p"
+ .string "“A great place to find that something\n"
+ .string "you need!”$"
+
+LilycoveCity_Text_169072:: @ 8169072
+ .string "MOVE DELETER’S HOUSE\p"
+ .string "“Unwanted POKéMON moves deleted.”$"
+
diff --git a/data/maps/text/LilycoveCity_ContestHall.s b/data/maps/text/LilycoveCity_ContestHall.s
new file mode 100644
index 000000000..4ca84f697
--- /dev/null
+++ b/data/maps/text/LilycoveCity_ContestHall.s
@@ -0,0 +1,203 @@
+LilycoveCity_ContestHall_Text_1890D4:: @ 81890D4
+ .string "This POKéMON won the BEAUTY CONTEST\n"
+ .string "here before.\p"
+ .string "Well, guess what? Today, I made it\n"
+ .string "win a SMARTNESS CONTEST!\p"
+ .string "My abilities scare even me...$"
+
+LilycoveCity_ContestHall_Text_18915F:: @ 818915F
+ .string "I’ve entered a bunch of CONTESTS,\n"
+ .string "so I’m seeing how things work.\p"
+ .string "If you’re in a COOLNESS CONTEST,\n"
+ .string "cool moves go over as appeals.\p"
+ .string "But smart moves and cute moves\n"
+ .string "don’t go over well, for instance.$"
+
+LilycoveCity_ContestHall_Text_189221:: @ 8189221
+ .string "That young man who won earlier had\n"
+ .string "a whole bunch of different {POKEBLOCK}S.\p"
+ .string "Can you win if you had that many\n"
+ .string "of those things?$"
+
+LilycoveCity_ContestHall_Text_189299:: @ 8189299
+ .string "Whoa, isn’t this place humongous!\p"
+ .string "The tension in the air... It’s not\n"
+ .string "like a CONTEST hall in the sticks.$"
+
+LilycoveCity_ContestHall_Text_189301:: @ 8189301
+ .string "MC: Okay, SMART POKéMON and their\n"
+ .string "TRAINERS, are you ready?!\p"
+ .string "Give it your best showing!\n"
+ .string "Let’s appeal!$"
+
+LilycoveCity_ContestHall_Text_189366:: @ 8189366
+ .string "JUDGE: Are you enjoying this CONTEST?\p"
+ .string "Come back with three friends, and\n"
+ .string "all of you may enter a CONTEST!$"
+
+LilycoveCity_ContestHall_Text_1893CE:: @ 81893CE
+ .string "Ayayayay...\n"
+ .string "I entered the wrong CONTEST.\p"
+ .string "I entered this tough POKéMON in the\n"
+ .string "SMARTNESS CONTEST...\p"
+ .string "Come on, wow them with a smart-looking\n"
+ .string "ROCK SMASH.$"
+
+LilycoveCity_ContestHall_Text_189463:: @ 8189463
+ .string "I’ve spent many a year, and all my\n"
+ .string "wisdom besides, raising this POKéMON\l"
+ .string "to be smart.\p"
+ .string "It won’t be easily bested by some\n"
+ .string "young pup’s POKéMON.\p"
+ .string "My dear wife, are you seeing this?$"
+
+LilycoveCity_ContestHall_Text_189512:: @ 8189512
+ .string "There it is!\p"
+ .string "If my POKéMON pulls a smart move next,\n"
+ .string "the audience’s excitement will peak!$"
+
+LilycoveCity_ContestHall_Text_18956B:: @ 818956B
+ .string "Oh, dear, no!\p"
+ .string "My darling ZUBAT’s LEECH LIFE is so\n"
+ .string "cute I kept using it over and over!\p"
+ .string "But these mean people don’t appreciate\n"
+ .string "it at all!$"
+
+LilycoveCity_ContestHall_Text_1895F3:: @ 81895F3
+ .string "Kiyaaah! You’re beautiful, Grandpa!$"
+
+LilycoveCity_ContestHall_Text_189617:: @ 8189617
+ .string "Even when TRAINERS enter the same\n"
+ .string "kind of POKéMON, they all seem to use\l"
+ .string "different moves for appeals.\p"
+ .string "It’s just like the way people have\n"
+ .string "different styles for battling.$"
+
+LilycoveCity_ContestHall_Text_1896BE:: @ 81896BE
+ .string "I think the POKéMON look smarter\n"
+ .string "than their TRAINERS. By a lot.$"
+
+LilycoveCity_ContestHall_Text_1896FE:: @ 81896FE
+ .string "When all’s said and done, I still love\n"
+ .string "SMARTNESS CONTESTS.\p"
+ .string "That intellectual green color...\n"
+ .string "It’s so... So... Cool.$"
+
+LilycoveCity_ContestHall_Text_189771:: @ 8189771
+ .string "MC: Are you entering the BEAUTY\n"
+ .string "CONTEST, too? Good luck!$"
+
+LilycoveCity_ContestHall_Text_1897AA:: @ 81897AA
+ .string "JUDGE: Ah, every POKéMON here is a\n"
+ .string "model of pristine beauty!\p"
+ .string "Why, I almost forgot to score them!$"
+
+LilycoveCity_ContestHall_Text_18980B:: @ 818980B
+ .string "A POKéMON this beautiful...\n"
+ .string "There isn’t another one like it.\p"
+ .string "Everyone’s eyes will be glued to\n"
+ .string "my beauty.$"
+
+LilycoveCity_ContestHall_Text_189874:: @ 8189874
+ .string "Waaaah!\p"
+ .string "I brushed and groomed my POKéMON\n"
+ .string "carefully for this CONTEST...\p"
+ .string "But I overdid it...\n"
+ .string "My POKéMON’s coat turned all scraggly...\p"
+ .string "What should I do?$"
+
+LilycoveCity_ContestHall_Text_18990A:: @ 818990A
+ .string "This AURORA BEAM is so dazzling,\n"
+ .string "the JUDGE won’t be able to see it.\p"
+ .string "Uh, wait a second...\n"
+ .string "That’ll be meaningless, then!$"
+
+LilycoveCity_ContestHall_Text_189981:: @ 8189981
+ .string "This pretty POKéMON looks just like\n"
+ .string "me when I was younger.\p"
+ .string "Right when I said that, my husband\n"
+ .string "spewed the coffee he was drinking.\p"
+ .string "Did I say something funny?$"
+
+LilycoveCity_ContestHall_Text_189A1D:: @ 8189A1D
+ .string "You know, as a woman, if I win at a\n"
+ .string "BEAUTY CONTEST, sure it makes me\l"
+ .string "happy. More than usual, anyway.$"
+
+LilycoveCity_ContestHall_Text_189A82:: @ 8189A82
+ .string "Wahahahah!\p"
+ .string "Will you take a gander at all those\n"
+ .string "pretty POKéMON!\l"
+ .string "I just love this sort of glitz!$"
+
+LilycoveCity_ContestHall_Text_189AE1:: @ 8189AE1
+ .string "You can’t always win on just beauty\n"
+ .string "alone.\p"
+ .string "You have to groom your POKéMON so\n"
+ .string "it’s nice and glossy like mine.$"
+
+LilycoveCity_ContestHall_Text_189B4E:: @ 8189B4E
+ .string "MC: Uh-oh! Hello!\n"
+ .string "We’re in the middle of a CONTEST!\p"
+ .string "Please enter at our registration\n"
+ .string "counter and come out, okay?$"
+
+LilycoveCity_ContestHall_Text_189BBF:: @ 8189BBF
+ .string "JUDGE: Oh, such charming and cute\n"
+ .string "appeals!\p"
+ .string "Oh, my goodness! What a perfectly\n"
+ .string "adorable WATER SPORT appeal!$"
+
+LilycoveCity_ContestHall_Text_189C29:: @ 8189C29
+ .string "Oh, no... My sweet AZURILL was\n"
+ .string "distracted by another POKéMON.$"
+
+LilycoveCity_ContestHall_Text_189C67:: @ 8189C67
+ .string "My POKéMON has never won in a battle,\n"
+ .string "but put it in a CONTEST and look out!$"
+
+LilycoveCity_ContestHall_Text_189CB3:: @ 8189CB3
+ .string "My POKéMON’s PETAL DANCE is a marvel\n"
+ .string "of elegance.\p"
+ .string "I won’t let anyone disturb its\n"
+ .string "performance.$"
+
+LilycoveCity_ContestHall_Text_189D11:: @ 8189D11
+ .string "Everyone’s POKéMON are very cute.\p"
+ .string "However, if my POKéMON were to make\n"
+ .string "a cute appeal...\p"
+ .string "I’m sure that it would be so much \n"
+ .string "cuter than the others.$"
+
+LilycoveCity_ContestHall_Text_189DA2:: @ 8189DA2
+ .string "My child is in this CONTEST.\p"
+ .string "Come on, dear. Go for it!\n"
+ .string "Your POKéMON is the best!$"
+
+LilycoveCity_ContestHall_Text_189DF3:: @ 8189DF3
+ .string "I think that girl over there is the\n"
+ .string "cutest of the lot.\p"
+ .string "What’s that? They’re judging\n"
+ .string "POKéMON by their looks?$"
+
+LilycoveCity_ContestHall_Text_189E5F:: @ 8189E5F
+ .string "Ohh, seeing all these cute POKéMON,\n"
+ .string "they make we want to get my own!\p"
+ .string "I’m going to go catch some!$"
+
+ .incbin "baserom.gba", 0x189ec0, 0x33
+
+LilycoveCity_ContestHall_Text_189EF3:: @ 8189EF3
+ .string "BEAUTY CONTEST STAGE\n"
+ .string "BE ALLURED BY BEAUTIFUL POKéMON!$"
+
+LilycoveCity_ContestHall_Text_189F29:: @ 8189F29
+ .string "CUTENESS CONTEST STAGE\n"
+ .string "BE CHARMED BY CUTE POKéMON!$"
+
+LilycoveCity_ContestHall_Text_189F5C:: @ 8189F5C
+ .string "SMARTNESS CONTEST STAGE\n"
+ .string "BE IMPRESSED BY SMART POKéMON!$"
+
+ .incbin "baserom.gba", 0x189f93, 0x36
+
diff --git a/data/maps/text/LilycoveCity_ContestLobby.s b/data/maps/text/LilycoveCity_ContestLobby.s
new file mode 100644
index 000000000..e99cb48fd
--- /dev/null
+++ b/data/maps/text/LilycoveCity_ContestLobby.s
@@ -0,0 +1,11 @@
+LilycoveCity_ContestLobby_Text_18848C:: @ 818848C
+ .string "I only register four players for\n"
+ .string "POKéMON CONTESTS.\p"
+ .string "If three other players link up, all\n"
+ .string "four may enter the same CONTEST.\p"
+ .string "Would you like to take part?$"
+
+LilycoveCity_ContestLobby_Text_188521:: @ 8188521
+ .string "Before entering a CONTEST, your\n"
+ .string "progress will be saved.$"
+
diff --git a/data/maps/text/LilycoveCity_CoveLilyMotel_1F.s b/data/maps/text/LilycoveCity_CoveLilyMotel_1F.s
new file mode 100644
index 000000000..0ecfd290b
--- /dev/null
+++ b/data/maps/text/LilycoveCity_CoveLilyMotel_1F.s
@@ -0,0 +1,54 @@
+LilycoveCity_CoveLilyMotel_1F_Text_186B71:: @ 8186B71
+ .string "Hm, so they doubled the guests by\n"
+ .string "using POKéMON as attractions?\p"
+ .string "Hm, well, maybe I should make a cute\n"
+ .string "POKéMON our inn’s mascot.\p"
+ .string "I wonder if that will attract more\n"
+ .string "guests to stay with us?$"
+
+LilycoveCity_CoveLilyMotel_1F_Text_186C2B:: @ 8186C2B
+ .string "Oh, sorry, sorry!\n"
+ .string "I was too involved in watching TV!\p"
+ .string "Since that TEAM {EVIL_TEAM} came to town,\n"
+ .string "the tourists have been staying away.$"
+
+LilycoveCity_CoveLilyMotel_1F_Text_186CA6:: @ 8186CA6
+ .string "Hey, down in front!\n"
+ .string "I can’t see the TV!$"
+
+LilycoveCity_CoveLilyMotel_1F_Text_186CCE:: @ 8186CCE
+ .string "Amazing! You’re telling me a POKéMON\n"
+ .string "found someone’s lost item?\p"
+ .string "That’s something. If we had some smart\n"
+ .string "POKéMON like that...\p"
+ .string "We could recover anything that our\n"
+ .string "guests mislaid...$"
+
+LilycoveCity_CoveLilyMotel_1F_Text_186D7F:: @ 8186D7F
+ .string "Oh, sorry, sorry!\n"
+ .string "I was too involved in watching TV!\p"
+ .string "I heard that someone busted the\n"
+ .string "TEAM {EVIL_TEAM} HIDEOUT.\p"
+ .string "Thanks to that, we just booked a\n"
+ .string "reservation from a big group.\p"
+ .string "It was a company called... Uh...\n"
+ .string "GAME something...$"
+
+LilycoveCity_CoveLilyMotel_1F_Text_186E57:: @ 8186E57
+ .string "Amazing! A house-sitting POKéMON\n"
+ .string "caught a burglar?\p"
+ .string "That’s something. If we had a tough\n"
+ .string "POKéMON as a security guard...\p"
+ .string "We would be able to provide our guests\n"
+ .string "with greater safety.$"
+
+LilycoveCity_CoveLilyMotel_1F_Text_186F09:: @ 8186F09
+ .string "Oh, sorry, sorry!\n"
+ .string "I was too involved in watching TV.\p"
+ .string "Oh, yes. A big group of guests arrived\n"
+ .string "a little while ago.\p"
+ .string "They booked in as GAME FREAK, so I\n"
+ .string "guess they must make games.\p"
+ .string "Uh-oh, I’d better get working on\n"
+ .string "their dinner!$"
+
diff --git a/data/maps/text/LilycoveCity_CoveLilyMotel_2F.s b/data/maps/text/LilycoveCity_CoveLilyMotel_2F.s
new file mode 100644
index 000000000..4aac25329
--- /dev/null
+++ b/data/maps/text/LilycoveCity_CoveLilyMotel_2F.s
@@ -0,0 +1,46 @@
+LilycoveCity_CoveLilyMotel_2F_Text_186FE7:: @ 8186FE7
+ .string "I’m the GAME DESIGNER.\p"
+ .string "Oh, is that right?\n"
+ .string "You’re working on a POKéDEX?\p"
+ .string "It’s tough trying to complete it,\n"
+ .string "but don’t give up.\p"
+ .string "If you do complete it, please come\n"
+ .string "show me.$"
+
+LilycoveCity_CoveLilyMotel_2F_Text_18708F:: @ 818708F
+ .string "Wow! That’s awesome!\n"
+ .string "Yep, it’s totally awesome!\p"
+ .string "This POKéDEX is completely filled!\n"
+ .string "You really must love POKéMON!\p"
+ .string "I’m so impressed!\p"
+ .string "Let me give you something in\n"
+ .string "recognition of your feat!$"
+
+LilycoveCity_CoveLilyMotel_2F_Text_187149:: @ 8187149
+ .string "Me? You’re talking to me?\n"
+ .string "I’m the PROGRAMMER.\p"
+ .string "I wonder what the SLOTS are\n"
+ .string "like here.$"
+
+LilycoveCity_CoveLilyMotel_2F_Text_18719E:: @ 818719E
+ .string "I’m the GRAPHIC ARTIST! Aren’t the\n"
+ .string "POKéMON of HOENN interesting?$"
+
+LilycoveCity_CoveLilyMotel_2F_Text_1871DF:: @ 81871DF
+ .string "The girl TUBERS, they’re cute, hey?\n"
+ .string "To battle against a cute TUBER...\p"
+ .string "Whoop, it drives me wild!\p"
+ .string "And the TWINS! Aren’t they cute?\n"
+ .string "A 2-on-2 battle with TWINS...\p"
+ .string "Whoop, it’s unbearably fun!$"
+
+LilycoveCity_CoveLilyMotel_2F_Text_18729A:: @ 818729A
+ .string "The sea breeze tickles my heart.\n"
+ .string "It feels wonderful here!$"
+
+LilycoveCity_CoveLilyMotel_2F_Text_1872D4:: @ 81872D4
+ .string "You never know when and where\n"
+ .string "people will challenge you.\p"
+ .string "That’s why I never leave home without\n"
+ .string "my GAME BOY ADVANCE.$"
+
diff --git a/data/maps/text/LilycoveCity_DepartmentStoreElevator.s b/data/maps/text/LilycoveCity_DepartmentStoreElevator.s
new file mode 100644
index 000000000..c76ef1179
--- /dev/null
+++ b/data/maps/text/LilycoveCity_DepartmentStoreElevator.s
@@ -0,0 +1,6 @@
+LilycoveCity_DepartmentStoreElevator_Text_1A0EF6:: @ 81A0EF6
+ .string "Welcome to LILYCOVE DEPARTMENT STORE.\p"
+ .string "Which floor would you like?$"
+
+ .incbin "baserom.gba", 0x1a0f38, 0x5b
+
diff --git a/data/maps/text/LilycoveCity_DepartmentStoreRooftop.s b/data/maps/text/LilycoveCity_DepartmentStoreRooftop.s
new file mode 100644
index 000000000..cc788cb16
--- /dev/null
+++ b/data/maps/text/LilycoveCity_DepartmentStoreRooftop.s
@@ -0,0 +1,34 @@
+LilycoveCity_DepartmentStoreRooftop_Text_18C61F:: @ 818C61F
+ .string "Don’t they have set dates for their\n"
+ .string "clear-out sales?\p"
+ .string "I watch TV, but they never show any\n"
+ .string "commercials.$"
+
+LilycoveCity_DepartmentStoreRooftop_Text_18C685:: @ 818C685
+ .string "Yes! I’ve been waiting a long time for\n"
+ .string "this clear-out sale.\p"
+ .string "They have items that you can only get\n"
+ .string "here. I’m going to load up, that I am!$"
+
+LilycoveCity_DepartmentStoreRooftop_Text_18C70E:: @ 818C70E
+ .string "Ohh... I’m bone-dry thirsty!$"
+
+LilycoveCity_DepartmentStoreRooftop_Text_18C72B:: @ 818C72B
+ .string "It’s a VENDING MACHINE.\n"
+ .string "Which drink would you like?$"
+
+LilycoveCity_DepartmentStoreRooftop_Text_18C75F:: @ 818C75F
+ .string "Clang!\p"
+ .string "A can of {STR_VAR_1} dropped down.$"
+
+LilycoveCity_DepartmentStoreRooftop_Text_18C780:: @ 818C780
+ .string "Clang!\p"
+ .string "Score! An extra can of {STR_VAR_1}\n"
+ .string "dropped down!$"
+
+LilycoveCity_DepartmentStoreRooftop_Text_18C7AF:: @ 818C7AF
+ .string "Not enough money...$"
+
+LilycoveCity_DepartmentStoreRooftop_Text_18C7C3:: @ 818C7C3
+ .string "Decided against buying a drink.$"
+
diff --git a/data/maps/text/LilycoveCity_DepartmentStore_1F.s b/data/maps/text/LilycoveCity_DepartmentStore_1F.s
new file mode 100644
index 000000000..b4f34f2c3
--- /dev/null
+++ b/data/maps/text/LilycoveCity_DepartmentStore_1F.s
@@ -0,0 +1,28 @@
+LilycoveCity_DepartmentStore_1F_Text_18BFB5:: @ 818BFB5
+ .string "Welcome to LILYCOVE DEPARTMENT STORE.$"
+
+LilycoveCity_DepartmentStore_1F_Text_18BFDB:: @ 818BFDB
+ .string "Whenever I come to the DEPARTMENT\n"
+ .string "STORE, I always end up buying all sorts\l"
+ .string "of things because it’s so fun.$"
+
+LilycoveCity_DepartmentStore_1F_Text_18C044:: @ 818C044
+ .string "Today, my mom is going to buy me some\n"
+ .string "nice furniture.$"
+
+LilycoveCity_DepartmentStore_1F_Text_18C07A:: @ 818C07A
+ .string "I’m buying something for my AZUMARILL\n"
+ .string "as a reward for winning a CONTEST.$"
+
+LilycoveCity_DepartmentStore_1F_Text_18C0C3:: @ 818C0C3
+ .string "AZUMARILL: Maririroo!$"
+
+LilycoveCity_DepartmentStore_1F_Text_18C0D9:: @ 818C0D9
+ .string "1F: SERVICE COUNTER\n"
+ .string " LOTTERY CORNER\p"
+ .string "2F: TRAINER’S ZONE\p"
+ .string "3F: BATTLE COLLECTION\p"
+ .string "4F: TM CORNER\p"
+ .string "5F: POKé DOLL FLOOR\p"
+ .string "ROOFTOP: ROOFTOP PLAZA$"
+
diff --git a/data/maps/text/LilycoveCity_DepartmentStore_2F.s b/data/maps/text/LilycoveCity_DepartmentStore_2F.s
new file mode 100644
index 000000000..6101d1e2c
--- /dev/null
+++ b/data/maps/text/LilycoveCity_DepartmentStore_2F.s
@@ -0,0 +1,14 @@
+LilycoveCity_DepartmentStore_2F_Text_18C162:: @ 818C162
+ .string "Learn to use items properly.\n"
+ .string "That’s basic, really.$"
+
+LilycoveCity_DepartmentStore_2F_Text_18C195:: @ 818C195
+ .string "My husband is waiting at home.\n"
+ .string "What would make a good gift for him?$"
+
+LilycoveCity_DepartmentStore_2F_Text_18C1D9:: @ 818C1D9
+ .string "I’m leaving on a long journey soon.\n"
+ .string "I need to stock up on items.$"
+
+ .incbin "baserom.gba", 0x18c21a, 0x31
+
diff --git a/data/maps/text/LilycoveCity_DepartmentStore_3F.s b/data/maps/text/LilycoveCity_DepartmentStore_3F.s
new file mode 100644
index 000000000..6e27e6ab5
--- /dev/null
+++ b/data/maps/text/LilycoveCity_DepartmentStore_3F.s
@@ -0,0 +1,18 @@
+LilycoveCity_DepartmentStore_3F_Text_18C24B:: @ 818C24B
+ .string "For quickly toughening up POKéMON,\n"
+ .string "items are the best.\p"
+ .string "PROTEIN boosts ATTACK, and CALCIUM\n"
+ .string "raises SP. ATK.$"
+
+LilycoveCity_DepartmentStore_3F_Text_18C2B5:: @ 818C2B5
+ .string "I want my POKéMON to have more\n"
+ .string "endurance.\p"
+ .string "I’m trying to decide whether to raise\n"
+ .string "DEFENSE with IRON, or SP. DEF with ZINC.$"
+
+LilycoveCity_DepartmentStore_3F_Text_18C32E:: @ 818C32E
+ .string "I gave a CARBOS to my POKéMON and its\n"
+ .string "SPEED went up.$"
+
+ .incbin "baserom.gba", 0x18c363, 0x39
+
diff --git a/data/maps/text/LilycoveCity_DepartmentStore_4F.s b/data/maps/text/LilycoveCity_DepartmentStore_4F.s
new file mode 100644
index 000000000..2b65fc775
--- /dev/null
+++ b/data/maps/text/LilycoveCity_DepartmentStore_4F.s
@@ -0,0 +1,19 @@
+LilycoveCity_DepartmentStore_4F_Text_18C39C:: @ 818C39C
+ .string "Hmm...\p"
+ .string "An attacking move...\n"
+ .string "Or a defensive move...\p"
+ .string "It’s no easy matter to decide which TM\n"
+ .string "moves should be taught to POKéMON...$"
+
+LilycoveCity_DepartmentStore_4F_Text_18C41B:: @ 818C41B
+ .string "There are so many different kinds of\n"
+ .string "TM moves.\p"
+ .string "A catalog I read said there are fifty\n"
+ .string "different kinds.$"
+
+LilycoveCity_DepartmentStore_4F_Text_18C481:: @ 818C481
+ .string "I’d like to get all the different TMs,\n"
+ .string "but a POKéMON learns only four moves.$"
+
+ .incbin "baserom.gba", 0x18c4ce, 0x2b
+
diff --git a/data/maps/text/LilycoveCity_DepartmentStore_5F.s b/data/maps/text/LilycoveCity_DepartmentStore_5F.s
new file mode 100644
index 000000000..dc9598a9b
--- /dev/null
+++ b/data/maps/text/LilycoveCity_DepartmentStore_5F.s
@@ -0,0 +1,16 @@
+LilycoveCity_DepartmentStore_5F_Text_18C4F9:: @ 818C4F9
+ .string "This place is full of cute DOLLS.\p"
+ .string "I should buy some for me, instead of\n"
+ .string "just for my children.$"
+
+LilycoveCity_DepartmentStore_5F_Text_18C556:: @ 818C556
+ .string "I’m not big enough to raise POKéMON,\n"
+ .string "so I’m getting a cute DOLL instead.$"
+
+LilycoveCity_DepartmentStore_5F_Text_18C59F:: @ 818C59F
+ .string "They sell many cute MATS here.\p"
+ .string "I wonder which one I should get?\n"
+ .string "Maybe I’ll buy them all...$"
+
+ .incbin "baserom.gba", 0x18c5fa, 0x25
+
diff --git a/data/maps/text/LilycoveCity_Harbor.s b/data/maps/text/LilycoveCity_Harbor.s
new file mode 100644
index 000000000..8b30a1ec0
--- /dev/null
+++ b/data/maps/text/LilycoveCity_Harbor.s
@@ -0,0 +1,50 @@
+LilycoveCity_Harbor_Text_18B306:: @ 818B306
+ .string "I beg your pardon?\n"
+ .string "You’re looking for a ship?\p"
+ .string "I’m sorry, the ferry service isn’t\n"
+ .string "available at present...$"
+
+LilycoveCity_Harbor_Text_18B36F:: @ 818B36F
+ .string "Hello, are you here for the ferry?\n"
+ .string "May I see your TICKET?$"
+
+LilycoveCity_Harbor_Text_18B3A9:: @ 818B3A9
+ .string "{PLAYER} doesn’t have the TICKET...\p"
+ .string "I’m terribly sorry.\p"
+ .string "You must have a TICKET to board\n"
+ .string "the ferry.$"
+
+LilycoveCity_Harbor_Text_18B406:: @ 818B406
+ .string "{PLAYER} flashed the TICKET.\p"
+ .string "Perfect! That’s all you need!\p"
+ .string "And where would you like to go?$"
+
+LilycoveCity_Harbor_Text_18B45B:: @ 818B45B
+ .string "Please sail with us another time!$"
+
+LilycoveCity_Harbor_Text_18B47D:: @ 818B47D
+ .string "SLATEPORT CITY it is, then!$"
+
+LilycoveCity_Harbor_Text_18B499:: @ 818B499
+ .string "BATTLE TOWER it is, then!$"
+
+LilycoveCity_Harbor_Text_18B4B3:: @ 818B4B3
+ .string "Please board the ferry and wait for\n"
+ .string "departure.$"
+
+LilycoveCity_Harbor_Text_18B4E2:: @ 818B4E2
+ .string "Then, where would you like to go?$"
+
+LilycoveCity_Harbor_Text_18B504:: @ 818B504
+ .string "Until they finish making the ferry, we\n"
+ .string "sailors have nothing to do...\p"
+ .string "I wish they’d get a move on, the folks\n"
+ .string "at the SHIPYARD in SLATEPORT.$"
+
+LilycoveCity_Harbor_Text_18B58E:: @ 818B58E
+ .string "The ferry S.S. TIDAL is finally in\n"
+ .string "operation.\p"
+ .string "The folks at the SHIPYARD in SLATEPORT\n"
+ .string "must’ve worked extra hard.\p"
+ .string "Well, it’s my turn to get busy now!$"
+
diff --git a/data/maps/text/LilycoveCity_House1.s b/data/maps/text/LilycoveCity_House1.s
new file mode 100644
index 000000000..b70a063ee
--- /dev/null
+++ b/data/maps/text/LilycoveCity_House1.s
@@ -0,0 +1,9 @@
+LilycoveCity_House1_Text_18B7B0:: @ 818B7B0
+ .string "POKéMON are partners to people.\n"
+ .string "They aren’t our tools.\p"
+ .string "Unfortunately, there are some people\n"
+ .string "who fail to understand that...$"
+
+LilycoveCity_House1_Text_18B82B:: @ 818B82B
+ .string "KECLEON: Ruroro?$"
+
diff --git a/data/maps/text/LilycoveCity_House2.s b/data/maps/text/LilycoveCity_House2.s
new file mode 100644
index 000000000..c50013bf8
--- /dev/null
+++ b/data/maps/text/LilycoveCity_House2.s
@@ -0,0 +1,10 @@
+LilycoveCity_House2_Text_18B83C:: @ 818B83C
+ .string "Huh? What? What’s that?\p"
+ .string "I’m not near awake yet...\n"
+ .string "You can have this...$"
+
+LilycoveCity_House2_Text_18B883:: @ 818B883
+ .string "Yawn...\p"
+ .string "Sleep is essential for good health...\n"
+ .string "Sleep and regain health...$"
+
diff --git a/data/maps/text/LilycoveCity_House3.s b/data/maps/text/LilycoveCity_House3.s
new file mode 100644
index 000000000..bb20e610f
--- /dev/null
+++ b/data/maps/text/LilycoveCity_House3.s
@@ -0,0 +1,69 @@
+LilycoveCity_House3_Text_18B8CC:: @ 818B8CC
+ .string "Oh, my, my! Are you traveling alone?\n"
+ .string "But you’re so young! Good for you!\p"
+ .string "I’m sure my kids could learn a thing\n"
+ .string "or two from you!\p"
+ .string "Me? I’m a master of {POKEBLOCK}S.\p"
+ .string "If I get serious just a little, why, I\n"
+ .string "can concoct great {POKEBLOCK}S.\p"
+ .string "Would you like to learn from me, a\n"
+ .string "master of {POKEBLOCK}S?$"
+
+LilycoveCity_House3_Text_18B9DC:: @ 818B9DC
+ .string "Oh? Are you sure?\p"
+ .string "You shouldn’t always try to do\n"
+ .string "everything by yourself, dear!$"
+
+LilycoveCity_House3_Text_18BA2B:: @ 818BA2B
+ .string "Oh, good! You’re a smart soul!\n"
+ .string "This is a bit long, so listen up!\p"
+ .string "Are you ready?\p"
+ .string "If you look at {POKEBLOCK}S, you should see\n"
+ .string "that they are rated on how they feel.\p"
+ .string "The lower the feel rating,\n"
+ .string "the better it is. Don’t forget this!\p"
+ .string "A good {POKEBLOCK} has a low feel\n"
+ .string "rating and a high level.\p"
+ .string "A POKéMON can eat more good\n"
+ .string "{POKEBLOCK}S than ordinary ones, too.\p"
+ .string "And this is important.\p"
+ .string "If you want to make smooth {POKEBLOCK}S,\n"
+ .string "use different kinds of BERRIES.\p"
+ .string "Don’t be stingy - the kinds of BERRIES\n"
+ .string "affect the smoothness of {POKEBLOCK}S.\p"
+ .string "And another thing.\p"
+ .string "The more people blending BERRIES, the\n"
+ .string "smoother the {POKEBLOCK}S.\p"
+ .string "That’s why you should talk to other\n"
+ .string "people and make {POKEBLOCK}S together.\p"
+ .string "That’s about all you need to know to\n"
+ .string "make good {POKEBLOCK}S.\p"
+ .string "If everyone had POKéMON they love,\n"
+ .string "smooth {POKEBLOCK}S, and a loving family,\l"
+ .string "the world would be a happier place.\p"
+ .string "Don’t give up, dear!$"
+
+LilycoveCity_House3_Text_18BD64:: @ 818BD64
+ .string "When my wife gave birth to quadruplets,\n"
+ .string "you bet I was shocked.\p"
+ .string "But, now, seeing them play together,\n"
+ .string "it makes me happy.$"
+
+LilycoveCity_House3_Text_18BDDB:: @ 818BDDB
+ .string "We’re having MULTI BATTLES, but I know\n"
+ .string "I’m going to win.$"
+
+LilycoveCity_House3_Text_18BE14:: @ 818BE14
+ .string "We like mixing stuff at the RECORD\n"
+ .string "CORNER.\p"
+ .string "But what gets mixed up?$"
+
+LilycoveCity_House3_Text_18BE57:: @ 818BE57
+ .string "We’re going to make super {POKEBLOCK}S\n"
+ .string "with a BERRY BLENDER!$"
+
+LilycoveCity_House3_Text_18BE8E:: @ 818BE8E
+ .string "I want to brag about how tough my\n"
+ .string "POKéMON is, so we’re going to enter a\l"
+ .string "CONTEST together.$"
+
diff --git a/data/maps/text/LilycoveCity_House4.s b/data/maps/text/LilycoveCity_House4.s
new file mode 100644
index 000000000..62b00b418
--- /dev/null
+++ b/data/maps/text/LilycoveCity_House4.s
@@ -0,0 +1,10 @@
+LilycoveCity_House4_Text_18BEE8:: @ 818BEE8
+ .string "This planet’s biggest mysteries are\n"
+ .string "at the bottom of the sea.\p"
+ .string "Somebody said that, but I don’t know...$"
+
+LilycoveCity_House4_Text_18BF4E:: @ 818BF4E
+ .string "There’s a deep underwater trench\n"
+ .string "between MOSSDEEP and SOOTOPOLIS.\p"
+ .string "That’s what someone told me, anyway.$"
+
diff --git a/data/maps/text/LilycoveCity_LilycoveMuseum_1F.s b/data/maps/text/LilycoveCity_LilycoveMuseum_1F.s
new file mode 100644
index 000000000..828d08ab3
--- /dev/null
+++ b/data/maps/text/LilycoveCity_LilycoveMuseum_1F.s
@@ -0,0 +1,129 @@
+LilycoveCity_LilycoveMuseum_1F_Text_187348:: @ 8187348
+ .string "Welcome to LILYCOVE MUSEUM.\p"
+ .string "Please take the time to enjoy our\n"
+ .string "collection of fantastic artwork\l"
+ .string "featuring POKéMON.$"
+
+LilycoveCity_LilycoveMuseum_1F_Text_1873B9:: @ 81873B9
+ .string "I’m the CURATOR of this MUSEUM of\n"
+ .string "fine arts.\p"
+ .string "It’s heartening to see someone so\n"
+ .string "young as you in our MUSEUM.\p"
+ .string "Have you viewed our collection of\n"
+ .string "paintings already?$"
+
+LilycoveCity_LilycoveMuseum_1F_Text_187459:: @ 8187459
+ .string "Ah, then let me not disturb you.\n"
+ .string "Please, do take your time.$"
+
+LilycoveCity_LilycoveMuseum_1F_Text_187495:: @ 8187495
+ .string "Oh? I do believe that you seem to\n"
+ .string "be a POKéMON TRAINER.\p"
+ .string "Have you an interest in paintings,\n"
+ .string "too?$"
+
+LilycoveCity_LilycoveMuseum_1F_Text_1874F5:: @ 81874F5
+ .string "I see...\p"
+ .string "I’m honored that you would visit\n"
+ .string "us in spite of that.$"
+
+LilycoveCity_LilycoveMuseum_1F_Text_187534:: @ 8187534
+ .string "Ah, excellent!\n"
+ .string "You do like paintings!\p"
+ .string "Then, may I ask you to come with me?$"
+
+LilycoveCity_LilycoveMuseum_1F_Text_18757F:: @ 818757F
+ .string "It’s a very old painting.\n"
+ .string "The paint is peeling here and there.$"
+
+LilycoveCity_LilycoveMuseum_1F_Text_1875BE:: @ 81875BE
+ .string "It’s an odd landscape with bizarre\n"
+ .string "and fantastic scenery.$"
+
+LilycoveCity_LilycoveMuseum_1F_Text_1875F8:: @ 81875F8
+ .string "It’s a painting of a beautiful, smiling\n"
+ .string "woman with a POKéMON on her lap.$"
+
+LilycoveCity_LilycoveMuseum_1F_Text_187641:: @ 8187641
+ .string "It’s a painting of a legendary POKéMON\n"
+ .string "from long ago.\p"
+ .string "The artist painted this from\n"
+ .string "imagination.$"
+
+LilycoveCity_LilycoveMuseum_1F_Text_1876A1:: @ 81876A1
+ .string "It’s a painting of GRASS POKéMON\n"
+ .string "swaying in a breeze.\p"
+ .string "They appear to be enjoying the wind’s\n"
+ .string "gentle caress.$"
+
+LilycoveCity_LilycoveMuseum_1F_Text_18770C:: @ 818770C
+ .string "It’s a delicious-looking painting\n"
+ .string "of BERRIES.\p"
+ .string "This painting could make you hungry!$"
+
+LilycoveCity_LilycoveMuseum_1F_Text_18775F:: @ 818775F
+ .string "It’s a replica of a famous sculpture.\p"
+ .string "It depicts an ancient BIRD POKéMON.$"
+
+LilycoveCity_LilycoveMuseum_1F_Text_1877A9:: @ 81877A9
+ .string "It’s a big POKé BALL carved from a\n"
+ .string "black stone.\p"
+ .string "It was apparently used in festivals\n"
+ .string "in the olden days.$"
+
+LilycoveCity_LilycoveMuseum_1F_Text_187810:: @ 8187810
+ .string "It’s a huge stone tablet inscribed\n"
+ .string "with POKéMON and dense text in the\l"
+ .string "small characters of an ancient,\l"
+ .string "unreadable language.$"
+
+ .incbin "baserom.gba", 0x18788b, 0x2c
+
+LilycoveCity_LilycoveMuseum_1F_Text_1878B7:: @ 81878B7
+ .string "Battling with POKéMON is fun,\n"
+ .string "I’ll grant you that.\p"
+ .string "But one mustn’t forget our love for\n"
+ .string "the fine arts.$"
+
+LilycoveCity_LilycoveMuseum_1F_Text_18791D:: @ 818791D
+ .string "This ART MUSEUM... Well, you could\n"
+ .string "see many fantastic paintings.\p"
+ .string "And the CURATOR is a wonderful person.\p"
+ .string "Among artists like myself, this MUSEUM\n"
+ .string "is an inspiration.$"
+
+LilycoveCity_LilycoveMuseum_1F_Text_1879BF:: @ 81879BF
+ .string "This lady is pretty!\n"
+ .string "She’s like Mommy!$"
+
+LilycoveCity_LilycoveMuseum_1F_Text_1879E6:: @ 81879E6
+ .string "This POKéMON is adorable!\n"
+ .string "Just like our little boy!$"
+
+LilycoveCity_LilycoveMuseum_1F_Text_187A1A:: @ 8187A1A
+ .string "I’d heard that this ART MUSEUM got\n"
+ .string "in some new paintings.\p"
+ .string "So, naturally I hurried over.\p"
+ .string "Are the new paintings up on the\n"
+ .string "second floor?$"
+
+LilycoveCity_LilycoveMuseum_1F_Text_187AA0:: @ 8187AA0
+ .string "Lately, the CURATOR has been\n"
+ .string "unusually cheerful.\p"
+ .string "I bet something good happened for him.\n"
+ .string "Definitely.$"
+
+LilycoveCity_LilycoveMuseum_1F_Text_187B04:: @ 8187B04
+ .string "I aim to see many great paintings\n"
+ .string "here and learn from them.\p"
+ .string "I have this dream of one day having\n"
+ .string "my artwork exhibited here.$"
+
+LilycoveCity_LilycoveMuseum_1F_Text_187B7F:: @ 8187B7F
+ .string "The ART MUSEUM has become a favorite\n"
+ .string "tourist destination.\p"
+ .string "It’s great for LILYCOVE...\n"
+ .string "No, great for the HOENN region!\p"
+ .string "This is what I’ve heard - a lone TRAINER\n"
+ .string "procured all the paintings upstairs.$"
+
diff --git a/data/maps/text/LilycoveCity_LilycoveMuseum_2F.s b/data/maps/text/LilycoveCity_LilycoveMuseum_2F.s
new file mode 100644
index 000000000..8c6bf1084
--- /dev/null
+++ b/data/maps/text/LilycoveCity_LilycoveMuseum_2F.s
@@ -0,0 +1,114 @@
+LilycoveCity_LilycoveMuseum_2F_Text_187C42:: @ 8187C42
+ .string "This is our special exhibit hall.$"
+
+LilycoveCity_LilycoveMuseum_2F_Text_187C64:: @ 8187C64
+ .string "As you can plainly see, there is not a\n"
+ .string "single painting on exhibit.\p"
+ .string "Here, I don’t wish to exhibit works of\n"
+ .string "so-called classical art.\p"
+ .string "Such classical works you can see on\n"
+ .string "our ground floor.\p"
+ .string "I wish to exhibit work that is far\n"
+ .string "different from the classics.\p"
+ .string "Art, after all, is not restricted to old,\n"
+ .string "famous works!\p"
+ .string "This exhibit hall, I wish to fill it with...\p"
+ .string "Modern and vibrant artworks of\n"
+ .string "POKéMON seemingly ready to spring\l"
+ .string "forth into glorious life!$"
+
+LilycoveCity_LilycoveMuseum_2F_Text_187E1D:: @ 8187E1D
+ .string "I beg your pardon. I didn’t intend\n"
+ .string "to monopolize the conversation.\p"
+ .string "Now, as you are young, and yet\n"
+ .string "obviously well traveled...\p"
+ .string "You must encounter lively POKéMON\n"
+ .string "and works of art depicting them.\p"
+ .string "If you were to come across such a\n"
+ .string "painting, may we ask you to obtain\l"
+ .string "the artist’s permission to exhibit\l"
+ .string "it here?$"
+
+LilycoveCity_LilycoveMuseum_2F_Text_187F4E:: @ 8187F4E
+ .string "I wish to fill this exhibit hall with\n"
+ .string "modern and vibrant paintings of\l"
+ .string "POKéMON.$"
+
+LilycoveCity_LilycoveMuseum_2F_Text_187F9D:: @ 8187F9D
+ .string "Thanks to you, we’ve added a new\n"
+ .string "painting to our collection!\p"
+ .string "I’ve heard it depicts your POKéMON.\n"
+ .string "Truly magnificent!\p"
+ .string "Thank you so very, very much!$"
+
+LilycoveCity_LilycoveMuseum_2F_Text_18802F:: @ 818802F
+ .string "Ah! It’s you!\n"
+ .string "{PLAYER}!$"
+
+LilycoveCity_LilycoveMuseum_2F_Text_188041:: @ 8188041
+ .string "Isn’t this marvelous?\n"
+ .string "This collection of paintings!\p"
+ .string "Each one of them flawless!\n"
+ .string "None better than another!\p"
+ .string "These paintings have attracted\n"
+ .string "more guests to our ART MUSEUM.\p"
+ .string "Sincerely, I thank you, {PLAYER}.\n"
+ .string "This is my dream come true!$"
+
+LilycoveCity_LilycoveMuseum_2F_Text_188120:: @ 8188120
+ .string "This is merely a token of my gratitude.$"
+
+ .incbin "baserom.gba", 0x188148, 0x1e
+
+LilycoveCity_LilycoveMuseum_2F_Text_188166:: @ 8188166
+ .string "I will keep this for you until we\n"
+ .string "meet again.$"
+
+LilycoveCity_LilycoveMuseum_2F_Text_188194:: @ 8188194
+ .string "Ah, so good to see you, {PLAYER}!\p"
+ .string "It’s an honor to have you visit us\n"
+ .string "on your busy journeys.\p"
+ .string "Please, relax and do enjoy your\n"
+ .string "visit with us.$"
+
+LilycoveCity_LilycoveMuseum_2F_Text_188219:: @ 8188219
+ .string "It’s a picture frame with pink-colored\n"
+ .string "adornments.$"
+
+LilycoveCity_LilycoveMuseum_2F_Text_18824C:: @ 818824C
+ .string "It’s a picture frame with yellow-colored\n"
+ .string "adornments.$"
+
+LilycoveCity_LilycoveMuseum_2F_Text_188281:: @ 8188281
+ .string "It’s a picture frame with blue-colored\n"
+ .string "adornments.$"
+
+LilycoveCity_LilycoveMuseum_2F_Text_1882B4:: @ 81882B4
+ .string "It’s a picture frame with red-colored\n"
+ .string "adornments.$"
+
+LilycoveCity_LilycoveMuseum_2F_Text_1882E6:: @ 81882E6
+ .string "It’s a picture frame with green-colored\n"
+ .string "adornments.$"
+
+LilycoveCity_LilycoveMuseum_2F_Text_18831A:: @ 818831A
+ .string "It’s a painting of POKéMON.$"
+
+LilycoveCity_LilycoveMuseum_2F_Text_188336:: @ 8188336
+ .string "I’ve been away awhile, so the new\n"
+ .string "paintings up here surprised me.\p"
+ .string "I wish someone would paint my POKéMON\n"
+ .string "this pretty.$"
+
+LilycoveCity_LilycoveMuseum_2F_Text_1883AB:: @ 81883AB
+ .string "Well... So this is where they show the\n"
+ .string "topical POKéMON paintings.\p"
+ .string "I see, these new paintings are indeed\n"
+ .string "rather amusing.$"
+
+LilycoveCity_LilycoveMuseum_2F_Text_188423:: @ 8188423
+ .string "Wow, is that right?\n"
+ .string "These paintings are of your POKéMON.\p"
+ .string "Isn’t that just the ultimate joy for\n"
+ .string "a TRAINER?$"
+
diff --git a/data/maps/text/LilycoveCity_MoveDeletersHouse.s b/data/maps/text/LilycoveCity_MoveDeletersHouse.s
new file mode 100644
index 000000000..532aa6cc4
--- /dev/null
+++ b/data/maps/text/LilycoveCity_MoveDeletersHouse.s
@@ -0,0 +1,33 @@
+LilycoveCity_MoveDeletersHouse_Text_18B622:: @ 818B622
+ .string "Uh...\n"
+ .string "Oh, yes, I’m the MOVE DELETER.\p"
+ .string "I can make POKéMON forget their moves.\p"
+ .string "Would you like me to do that?$"
+
+LilycoveCity_MoveDeletersHouse_Text_18B68C:: @ 818B68C
+ .string "Which POKéMON should forget a move?$"
+
+LilycoveCity_MoveDeletersHouse_Text_18B6B0:: @ 818B6B0
+ .string "Which move should be forgotten?$"
+
+LilycoveCity_MoveDeletersHouse_Text_18B6D0:: @ 818B6D0
+ .string "{STR_VAR_1} seems to know only one\n"
+ .string "move...$"
+
+LilycoveCity_MoveDeletersHouse_Text_18B6F2:: @ 818B6F2
+ .string "Hm! {STR_VAR_1}’s {STR_VAR_2}?\n"
+ .string "That move should be forgotten?$"
+
+LilycoveCity_MoveDeletersHouse_Text_18B71E:: @ 818B71E
+ .string "It worked to perfection!\p"
+ .string "{STR_VAR_1} has forgotten\n"
+ .string "{STR_VAR_2} completely.$"
+
+LilycoveCity_MoveDeletersHouse_Text_18B757:: @ 818B757
+ .string "Come again if there are other moves\n"
+ .string "to be forgotten.$"
+
+LilycoveCity_MoveDeletersHouse_Text_18B78C:: @ 818B78C
+ .string "What?\n"
+ .string "No EGG should know any moves.$"
+
diff --git a/data/maps/text/LilycoveCity_PokemonCenter_1F.s b/data/maps/text/LilycoveCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..3f3f0cbbb
--- /dev/null
+++ b/data/maps/text/LilycoveCity_PokemonCenter_1F.s
@@ -0,0 +1,18 @@
+LilycoveCity_PokemonCenter_1F_Text_189FC9:: @ 8189FC9
+ .string "I wonder how many kinds of POKéMON\n"
+ .string "there are in the world?\p"
+ .string "It’d be great to cross seas and\n"
+ .string "trade POKéMON with people far away.$"
+
+LilycoveCity_PokemonCenter_1F_Text_18A048:: @ 818A048
+ .string "I’ve been hearing about some rotten\n"
+ .string "scoundrels who steal POKéMON and rip\l"
+ .string "off METEORITES.$"
+
+LilycoveCity_PokemonCenter_1F_Text_18A0A1:: @ 818A0A1
+ .string "Those rotten scoundrels who steal\n"
+ .string "POKéMON and rip off METEORITES...\p"
+ .string "I haven’t seen them around recently.$"
+
+ .incbin "baserom.gba", 0x18a10a, 0xcc
+
diff --git a/data/maps/text/LilycoveCity_PokemonTrainerFanClub.s b/data/maps/text/LilycoveCity_PokemonTrainerFanClub.s
new file mode 100644
index 000000000..c40892c52
--- /dev/null
+++ b/data/maps/text/LilycoveCity_PokemonTrainerFanClub.s
@@ -0,0 +1,252 @@
+LilycoveCity_PokemonTrainerFanClub_Text_18A1D6:: @ 818A1D6
+ .string "Oh, wow!\n"
+ .string "It’s {PLAYER}!$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18A1E8:: @ 818A1E8
+ .string "I’ve heard the news!\n"
+ .string "You’re really strong, aren’t you?\p"
+ .string "We always argue about who is the\n"
+ .string "strongest of all TRAINERS here.\p"
+ .string "So when I heard about you, I decided\n"
+ .string "to be your fan!\p"
+ .string "I hope you’ll keep on battling other\n"
+ .string "tough TRAINERS.\p"
+ .string "That way, we’ll be able to see more\n"
+ .string "of your hot, hot battles.\p"
+ .string "That will make the others here see\n"
+ .string "exactly how great you are.\p"
+ .string "Remember, I’m cheering for you,\n"
+ .string "{PLAYER}!$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18A36A:: @ 818A36A
+ .string "Yo, {PLAYER}!\n"
+ .string "You’re the one we want to win!$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18A391:: @ 818A391
+ .string "The others, they don’t know that\n"
+ .string "you’re the best of the best!\p"
+ .string "Isn’t that right, {PLAYER}?\n"
+ .string "Show them you’ve got guts!$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18A400:: @ 818A400
+ .string "I hate to say this, but the TRAINER\n"
+ .string "everybody’s talking about is\l"
+ .string "{STR_VAR_1}, no question about it!\p"
+ .string "That TRAINER’s power...\n"
+ .string "It’s out of the ordinary.$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18A48D:: @ 818A48D
+ .string "Darn it... I’ve been telling people\n"
+ .string "that {STR_VAR_1} is the best now...\p"
+ .string "But no one wants to listen...$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18A4EA:: @ 818A4EA
+ .string "I’ve been hearing things about a\n"
+ .string "tough new TRAINER.\p"
+ .string "This TRAINER’s supposed to be beating\n"
+ .string "GYM LEADERS, even.\p"
+ .string "Do you know anything about this\n"
+ .string "new TRAINER?$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18A584:: @ 818A584
+ .string "Oh!\n"
+ .string "{PLAYER}!\p"
+ .string "Go for it!\n"
+ .string "I’m pulling for you!$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18A5AC:: @ 818A5AC
+ .string "Sigh...\n"
+ .string "BRAWLY...\p"
+ .string "Oh, no! Wait!\n"
+ .string "That’s not right! No, no, no!\p"
+ .string "I’m your fan through and through!\p"
+ .string "So make me proud!\n"
+ .string "Go for it!$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18A629:: @ 818A629
+ .string "I can’t help it, I can only get to\n"
+ .string "like BRAWLY...$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18A65B:: @ 818A65B
+ .string "Nobody understands the charm of\n"
+ .string "BRAWLY...\p"
+ .string "I don’t care!\p"
+ .string "Even if I’m the only one, I’m going\n"
+ .string "to keep cheering for BRAWLY!$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18A6D4:: @ 818A6D4
+ .string "Whatever anyone says, my favorite\n"
+ .string "TRAINER is DEWFORD’s GYM LEADER\l"
+ .string "BRAWLY!$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18A71E:: @ 818A71E
+ .string "You’ve surpassed your own father in\n"
+ .string "every regard!\p"
+ .string "I’m telling you, so there’s no question\n"
+ .string "about it at all!$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18A789:: @ 818A789
+ .string "Even when things turned bleak, your\n"
+ .string "father never gave up.\p"
+ .string "This I know to be true.\p"
+ .string "You never give up even if you lose!\n"
+ .string "So keep on battling!$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18A814:: @ 818A814
+ .string "NORMAN battled with more power,\n"
+ .string "charisma, and showmanship than you.\p"
+ .string "Even though people may say that\n"
+ .string "you’re strong...\p"
+ .string "You’ve still got a long way to go\n"
+ .string "compared to your father.$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18A8C4:: @ 818A8C4
+ .string "You’re beginning to get the same\n"
+ .string "air of awe NORMAN exudes.\p"
+ .string "But there’s something conclusively\n"
+ .string "different between you and NORMAN.\p"
+ .string "I can’t tell you what that is.\n"
+ .string "You’ll have to find it yourself.$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18A984:: @ 818A984
+ .string "Everyone here, we’re all huge fans\n"
+ .string "of POKéMON battles.\p"
+ .string "We discuss who we consider to be\n"
+ .string "the strongest of all TRAINERS.\p"
+ .string "If you were to become famous, we\n"
+ .string "might even become your fans!$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18AA39:: @ 818AA39
+ .string "Oh, woweee! It’s {PLAYER}!\n"
+ .string "For real, too!\p"
+ .string "Please, shake my hand, shake my hand!$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18AA83:: @ 818AA83
+ .string "I’ll always cheer for you, {PLAYER}!\n"
+ .string "Always, always!\p"
+ .string "I don’t want to see you lose ever,\n"
+ .string "{PLAYER}.\p"
+ .string "Because I know you’re really, really\n"
+ .string "strong, {PLAYER}!$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18AB0A:: @ 818AB0A
+ .string "{STR_VAR_1} is really cool...\p"
+ .string "Everyone thinks so, right, right?$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18AB41:: @ 818AB41
+ .string "{STR_VAR_1} really is cool, don’t\n"
+ .string "you think so?\p"
+ .string "Even if it’s just me, I’m going to keep\n"
+ .string "cheering my favorite TRAINER.$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18ABAE:: @ 818ABAE
+ .string "My favorite TRAINER is...\p"
+ .string "Cool...\p"
+ .string "Strong...\p"
+ .string "And really nice...\p"
+ .string "I wish there was a TRAINER like that...$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18AC15:: @ 818AC15
+ .string "Whoa! It’s {PLAYER}!\n"
+ .string "Wicked!\p"
+ .string "When I grow up, I want to be strong\n"
+ .string "like you, {PLAYER}!$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18AC5E:: @ 818AC5E
+ .string "Even if I’m the only one...\p"
+ .string "You’ll always be the only one I\n"
+ .string "cheer for, {PLAYER}!\p"
+ .string "Because I believe in you, {PLAYER}!$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18ACC7:: @ 818ACC7
+ .string "{STR_VAR_1} is so wickedly cool...\n"
+ .string "I want to shake hands with my hero.$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18AD05:: @ 818AD05
+ .string "Even if I’m the only one...\p"
+ .string "I’m never going to stop being\n"
+ .string "{STR_VAR_1}’s fan!\p"
+ .string "Because I’ve heard, {STR_VAR_1}\n"
+ .string "never loses!$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18AD6D:: @ 818AD6D
+ .string "{PLAYER}!\n"
+ .string "You are amazing after all!\p"
+ .string "Ever since I set eyes on you, I knew\n"
+ .string "that you were great.\p"
+ .string "It looks like my eyes didn’t deceive me.$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18ADEF:: @ 818ADEF
+ .string "Who cares about the others.\n"
+ .string "I’m in your corner!\p"
+ .string "You don’t need to worry. Just get\n"
+ .string "out there and battle like always.$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18AE63:: @ 818AE63
+ .string "You’re a pretty decent TRAINER,\n"
+ .string "I think.\p"
+ .string "But I also think that {STR_VAR_1}\n"
+ .string "is number one right now.\p"
+ .string "That’s just my opinion.\n"
+ .string "Don’t worry about it too much.$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18AEF5:: @ 818AEF5
+ .string "Wow, you really are strong.\n"
+ .string "Maybe even stronger than {STR_VAR_1}.\p"
+ .string "But {STR_VAR_1} needs me.\p"
+ .string "If I don’t cheer for {STR_VAR_1},\n"
+ .string "who will?$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18AF62:: @ 818AF62
+ .string "You’ve changed my mind!\n"
+ .string "You are strong, aren’t you?\p"
+ .string "I’d like you to tell me how you managed\n"
+ .string "to get so strong!$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18AFD0:: @ 818AFD0
+ .string "The tougher the situation, the more\n"
+ .string "attractively you battle.\p"
+ .string "I can’t wait for your next battle!$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18B030:: @ 818B030
+ .string "Among the recently hot TRAINERS,\n"
+ .string "{STR_VAR_1} is the standout.\p"
+ .string "That toughness, it’s simply not normal.\p"
+ .string "You’re doing okay, but you’re not in\n"
+ .string "the same class as {STR_VAR_1}.$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18B0C8:: @ 818B0C8
+ .string "You are really popular...\p"
+ .string "You’re strong, and you’re caring to\n"
+ .string "POKéMON. No one can knock you.\p"
+ .string "But, you know, I believe in {STR_VAR_1}.\p"
+ .string "{STR_VAR_1} is definitely stronger!\n"
+ .string "I’m positive!$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18B16E:: @ 818B16E
+ .string "You...\p"
+ .string "Impressive!$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18B181:: @ 818B181
+ .string "Your true worth, it is fine if only\n"
+ .string "I recognized it.\p"
+ .string "The others I doubt will understand\n"
+ .string "the hidden power that beats within.$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18B1FD:: @ 818B1FD
+ .string "Yes, I see strength in your eyes.\p"
+ .string "But!\p"
+ .string "You still haven’t realized your\n"
+ .string "potential.$"
+
+LilycoveCity_PokemonTrainerFanClub_Text_18B24F:: @ 818B24F
+ .string "It is true that you are tremendously\n"
+ .string "powerful.\p"
+ .string "But!\n"
+ .string "I can tell...\p"
+ .string "That strength cannot be considered\n"
+ .string "true strength yet!\p"
+ .string "True strength is...!\n"
+ .string "... ...\p"
+ .string "Actually, I have no idea, either.$"
+
diff --git a/data/maps/text/LinkContestRoom1.s b/data/maps/text/LinkContestRoom1.s
new file mode 100644
index 000000000..a3f3c2a53
--- /dev/null
+++ b/data/maps/text/LinkContestRoom1.s
@@ -0,0 +1,88 @@
+LinkContestRoom1_Text_1A68F0:: @ 81A68F0
+ .string "MC: Hello! We’re just getting started\n"
+ .string "with a {STR_VAR_3} Rank POKéMON\l"
+ .string "{STR_VAR_2} CONTEST!\p"
+ .string "The participating TRAINERS and their\n"
+ .string "POKéMON are as follows:$"
+
+LinkContestRoom1_Text_1A6976:: @ 81A6976
+ .string "MC: Hello! We’re just getting started\n"
+ .string "with a 4-player linked POKéMON\l"
+ .string "{STR_VAR_2} CONTEST!\p"
+ .string "The participating TRAINERS and their\n"
+ .string "POKéMON are as follows:$"
+
+LinkContestRoom1_Text_1A6A04:: @ 81A6A04
+ .string "MC: Entry No. {STR_VAR_2}!\n"
+ .string "{STR_VAR_1}’s {STR_VAR_3}!$"
+
+LinkContestRoom1_Text_1A6A1F:: @ 81A6A1F
+ .string "MC: We’ve just seen the four POKéMON\n"
+ .string "contestants.\p"
+ .string "Now it’s time for primary judging!\p"
+ .string "The audience will vote on their\n"
+ .string "favorite POKéMON contestants.\p"
+ .string "Without any further ado, let the\n"
+ .string "voting begin!$"
+
+LinkContestRoom1_Text_1A6AE1:: @ 81A6AE1
+ .string "Voting under way...$"
+
+LinkContestRoom1_Text_1A6AF5:: @ 81A6AF5
+ .string "Voting is now complete!\p"
+ .string "While the votes are being tallied,\n"
+ .string "let’s move on to secondary judging!\p"
+ .string "The second stage of judging is the\n"
+ .string "much anticipated appeal time!\p"
+ .string "May the contestants amaze us with\n"
+ .string "superb appeals of dazzling moves!\p"
+ .string "Let’s see a little enthusiasm!\n"
+ .string "Let’s appeal!$"
+
+LinkContestRoom1_Text_1A6C06:: @ 81A6C06
+ .string "MC: That’s it for judging!$"
+
+LinkContestRoom1_Text_1A6C21:: @ 81A6C21
+ .string "Thank you all for a most wonderful\n"
+ .string "display of quality appeals!\p"
+ .string "This concludes all judging!\n"
+ .string "Thank you for your fine efforts!$"
+
+LinkContestRoom1_Text_1A6C9D:: @ 81A6C9D
+ .string "Now, all that remains is the pulse-\n"
+ .string "pounding proclamation of the winner.\p"
+ .string "The JUDGE looks ready to make the\n"
+ .string "announcement!$"
+
+LinkContestRoom1_Text_1A6D16:: @ 81A6D16
+ .string "JUDGE: I will now declare the winner!$"
+
+LinkContestRoom1_Text_1A6D3C:: @ 81A6D3C
+ .string "MC: Entry No. {STR_VAR_2}!\p"
+ .string "{STR_VAR_3} and {STR_VAR_1},\n"
+ .string "congratulations!$"
+
+LinkContestRoom1_Text_1A6D6A:: @ 81A6D6A
+ .string "We confer on you this RIBBON as your\n"
+ .string "prize!$"
+
+LinkContestRoom1_Text_1A6D96:: @ 81A6D96
+ .string "{PLAYER} received a RIBBON.$"
+
+LinkContestRoom1_Text_1A6DAC:: @ 81A6DAC
+ .string "{PLAYER} put the RIBBON on\n"
+ .string "{STR_VAR_1}.$"
+
+LinkContestRoom1_Text_1A6DC5:: @ 81A6DC5
+ .string "MC: Here you are!\n"
+ .string "Please accept your prize!$"
+
+LinkContestRoom1_Text_1A6DF1:: @ 81A6DF1
+ .string "MC: Congratulations!\n"
+ .string "Please do compete again!$"
+
+LinkContestRoom1_Text_1A6E1F:: @ 81A6E1F
+ .string "Please pick up your prize at the\n"
+ .string "reception counter later.\l"
+ .string "Please do compete again!$"
+
diff --git a/data/maps/text/LittlerootTown.s b/data/maps/text/LittlerootTown.s
new file mode 100644
index 000000000..7ae7cf9af
--- /dev/null
+++ b/data/maps/text/LittlerootTown.s
@@ -0,0 +1,95 @@
+LittlerootTown_Text_16A7C9:: @ 816A7C9
+ .string "MOM: {PLAYER}, we’re here, honey!\p"
+ .string "It must be tiring riding with our things\n"
+ .string "in the moving truck.\p"
+ .string "Well, this is LITTLEROOT TOWN.\p"
+ .string "How do you like it?\n"
+ .string "This is our new home!\p"
+ .string "It has a quaint feel, but it seems to be\n"
+ .string "an easy place to live, don’t you think?\p"
+ .string "And, you get your own room, {PLAYER}!\n"
+ .string "Let’s go inside.$"
+
+LittlerootTown_Text_16A8EE:: @ 816A8EE
+ .string "MOM: Wait, {PLAYER}!$"
+
+LittlerootTown_Text_16A8FD:: @ 816A8FD
+ .string "MOM: {PLAYER}! {PLAYER}! Did you\n"
+ .string "introduce yourself to PROF. BIRCH?\p"
+ .string "Oh! What an adorable POKéMON!\n"
+ .string "You got it from PROF. BIRCH. How nice!\p"
+ .string "You’re your father’s child, all right.\n"
+ .string "You look good together with POKéMON!\p"
+ .string "Here, honey! If you’re going out on an\n"
+ .string "adventure, wear these RUNNING SHOES.\p"
+ .string "They’ll put a zip in your step!$"
+
+LittlerootTown_Text_16AA32:: @ 816AA32
+ .string "{PLAYER} switched shoes with the\n"
+ .string "RUNNING SHOES.$"
+
+LittlerootTown_Text_16AA5C:: @ 816AA5C
+ .string "MOM: {PLAYER}, those shoes came with\n"
+ .string "instructions.\p"
+ .string "“Press the B Button while wearing these\n"
+ .string "RUNNING SHOES to run extra-fast!\p"
+ .string "“Slip on these RUNNING SHOES and race\n"
+ .string "in the great outdoors!”$"
+
+LittlerootTown_Text_16AB10:: @ 816AB10
+ .string "... ... ... ... ... ... ... ...\n"
+ .string "... ... ... ... ... ... ... ...\p"
+ .string "To think that you have your very own\n"
+ .string "POKéMON now...\l"
+ .string "Your father will be overjoyed.\p"
+ .string "...But please be careful.\n"
+ .string "If anything happens, you can come home.\p"
+ .string "Go on, go get them, honey!$"
+
+LittlerootTown_Text_16AC00:: @ 816AC00
+ .string "If you use a PC, you can store items\n"
+ .string "and POKéMON.\p"
+ .string "The power of science is staggering!$"
+
+LittlerootTown_Text_16AC56:: @ 816AC56
+ .string "PROF. BIRCH spends days in his LAB\n"
+ .string "studying, then he’ll suddenly go out in\l"
+ .string "the wild to do more research...\p"
+ .string "When does PROF. BIRCH spend time\n"
+ .string "at home?$"
+
+LittlerootTown_Text_16ACEB:: @ 816ACEB
+ .string "If you go in the tall grass at the sides\n"
+ .string "of this road, wild POKéMON will appear.$"
+
+LittlerootTown_Text_16AD3C:: @ 816AD3C
+ .string "It’s not safe to go out there if you\n"
+ .string "don’t have any POKéMON with you.$"
+
+LittlerootTown_Text_16AD82:: @ 816AD82
+ .string "I can hear someone shouting down the\n"
+ .string "road here.\p"
+ .string "What should I do? What should we do?\n"
+ .string "Somebody has to go help...$"
+
+LittlerootTown_Text_16ADF2:: @ 816ADF2
+ .string "Boy, am I glad you went and rescued\n"
+ .string "the PROFESSOR.$"
+
+LittlerootTown_Text_16AE25:: @ 816AE25
+ .string "Are you going to catch POKéMON?\n"
+ .string "Good luck!$"
+
+LittlerootTown_Text_16AE50:: @ 816AE50
+ .string "LITTLEROOT TOWN\n"
+ .string "“A town that can’t be shaded any hue.”$"
+
+LittlerootTown_Text_16AE87:: @ 816AE87
+ .string "PROF. BIRCH’S POKéMON LAB$"
+
+LittlerootTown_Text_16AEA1:: @ 816AEA1
+ .string "{PLAYER}’s HOUSE$"
+
+LittlerootTown_Text_16AEAC:: @ 816AEAC
+ .string "PROF. BIRCH’S HOUSE$"
+
diff --git a/data/maps/text/LittlerootTown_BrendansHouse_1F.s b/data/maps/text/LittlerootTown_BrendansHouse_1F.s
new file mode 100644
index 000000000..948ba1d41
--- /dev/null
+++ b/data/maps/text/LittlerootTown_BrendansHouse_1F.s
@@ -0,0 +1,20 @@
+LittlerootTown_BrendansHouse_1F_Text_172429:: @ 8172429
+ .string "MOM: See, {PLAYER}?\n"
+ .string "Isn’t it nice in here, too?$"
+
+LittlerootTown_BrendansHouse_1F_Text_172453:: @ 8172453
+ .string "The mover’s POKéMON do all the work\n"
+ .string "of moving us in and cleaning up after.\l"
+ .string "This is so convenient!\p"
+ .string "{PLAYER}, your room is upstairs.\n"
+ .string "Go check it out, dear!\p"
+ .string "DAD bought you a new clock to mark\n"
+ .string "our move here.\l"
+ .string "Don’t forget to set it!$"
+
+LittlerootTown_BrendansHouse_1F_Text_172531:: @ 8172531
+ .string "MOM: Well, {PLAYER}?\p"
+ .string "Aren’t you interested in seeing your\n"
+ .string "very own room?$"
+
+LittlerootTown_BrendansHouse_1F_Text_172574:: @ 8172574
diff --git a/data/maps/text/LittlerootTown_BrendansHouse_2F.s b/data/maps/text/LittlerootTown_BrendansHouse_2F.s
new file mode 100644
index 000000000..07c127c92
--- /dev/null
+++ b/data/maps/text/LittlerootTown_BrendansHouse_2F.s
@@ -0,0 +1,31 @@
+LittlerootTown_BrendansHouse_2F_Text_172E18:: @ 8172E18
+ .string "The clock is stopped...\p"
+ .string "Better set it and start it!$"
+
+LittlerootTown_BrendansHouse_2F_Text_172E4C:: @ 8172E4C
+ .string "MOM: {PLAYER}, how do you like your\n"
+ .string "new room?\p"
+ .string "Good! Everything’s put away neatly!\p"
+ .string "They finished moving everything in\n"
+ .string "downstairs, too.\p"
+ .string "POKéMON movers are so convenient!\p"
+ .string "Oh, you should make sure that\n"
+ .string "everything’s all there on your desk.$"
+
+ .incbin "baserom.gba", 0x172f31, 0x69
+
+LittlerootTown_BrendansHouse_2F_Text_172F9A:: @ 8172F9A
+ .string "{PLAYER} flipped open the notebook.\p"
+ .string "ADVENTURE RULE NO. 1\n"
+ .string "Open the MENU with START.\p"
+ .string "ADVENTURE RULE NO. 2\n"
+ .string "Record your progress with SAVE.\p"
+ .string "The remaining pages are blank...$"
+
+ .incbin "baserom.gba", 0x17303d, 0x2f
+
+LittlerootTown_BrendansHouse_2F_Text_17306C:: @ 817306C
+ .string "It’s a Nintendo GameCube.\p"
+ .string "A Game Boy Advance is connected to\n"
+ .string "serve as the Controller.$"
+
diff --git a/data/maps/text/LittlerootTown_MaysHouse_1F.s b/data/maps/text/LittlerootTown_MaysHouse_1F.s
new file mode 100644
index 000000000..04dd49540
--- /dev/null
+++ b/data/maps/text/LittlerootTown_MaysHouse_1F.s
@@ -0,0 +1,4 @@
+LittlerootTown_MaysHouse_1F_Text_172574:: @ 8172574
+ .string "MOM: {PLAYER}.\p"
+ .string "Go set the clock in your room, honey.$"
+
diff --git a/data/maps/text/LittlerootTown_MaysHouse_2F.s b/data/maps/text/LittlerootTown_MaysHouse_2F.s
new file mode 100644
index 000000000..42d8c1055
--- /dev/null
+++ b/data/maps/text/LittlerootTown_MaysHouse_2F.s
@@ -0,0 +1,9 @@
+LittlerootTown_MaysHouse_2F_Text_1A100C:: @ 81A100C
+ .string "There’s an e-mail from POKéMON TRAINER\n"
+ .string "SCHOOL.\p"
+ .string "... ... ... ... ... ...\p"
+ .string "A POKéMON may learn up to four moves.\p"
+ .string "A TRAINER’s expertise is tested on the\n"
+ .string "move sets chosen for POKéMON.\p"
+ .string "... ... ... ... ... ...$"
+
diff --git a/data/maps/text/LittlerootTown_ProfessorBirchsLab.s b/data/maps/text/LittlerootTown_ProfessorBirchsLab.s
new file mode 100644
index 000000000..2456b6178
--- /dev/null
+++ b/data/maps/text/LittlerootTown_ProfessorBirchsLab.s
@@ -0,0 +1,157 @@
+LittlerootTown_ProfessorBirchsLab_Text_173B29:: @ 8173B29
+ .string "Hunh? PROF. BIRCH?\p"
+ .string "The PROF’s away on fieldwork.\n"
+ .string "Ergo, he isn’t here.\p"
+ .string "Oh, let me explain what fieldwork is.\p"
+ .string "It is to study things in the natural\n"
+ .string "environment, like fields and mountains,\l"
+ .string "instead of a laboratory.\p"
+ .string "The PROF isn’t one for doing desk work.\n"
+ .string "He’s the type of person who would\l"
+ .string "rather go outside and experience\l"
+ .string "things than read about them here.$"
+
+LittlerootTown_ProfessorBirchsLab_Text_173C88:: @ 8173C88
+ .string "The PROF isn’t one for doing desk work.\n"
+ .string "He’s the type of person who would\l"
+ .string "rather go outside and experience\l"
+ .string "things than read about them here.$"
+
+LittlerootTown_ProfessorBirchsLab_Text_173D15:: @ 8173D15
+ .string "PROF. BIRCH is studying the habitats\n"
+ .string "and distribution of POKéMON.\p"
+ .string "The PROF enjoys {RIVAL}’s help, too.\n"
+ .string "There’s a lot of love there.$"
+
+LittlerootTown_ProfessorBirchsLab_Text_173D94:: @ 8173D94
+ .string "PROF. BIRCH: So, {PLAYER}{KUN}.\p"
+ .string "I’ve heard so much about you from\n"
+ .string "your father.\p"
+ .string "I’ve heard that you don’t have your\n"
+ .string "own POKéMON yet.\p"
+ .string "But the way you battled earlier,\n"
+ .string "you pulled it off with aplomb!\p"
+ .string "I guess you have your father’s blood\n"
+ .string "in your veins after all!\p"
+ .string "Oh, yes. As thanks for rescuing me,\n"
+ .string "I’d like you to have the POKéMON you\l"
+ .string "used earlier.\p"
+ .string "{PLAYER} received the {STR_VAR_1}!$"
+
+LittlerootTown_ProfessorBirchsLab_Text_173EF8:: @ 8173EF8
+ .string "PROF. BIRCH: While you’re at it, why not\n"
+ .string "give a nickname to that {STR_VAR_1}?$"
+
+LittlerootTown_ProfessorBirchsLab_Text_173F3D:: @ 8173F3D
+ .string "PROF. BIRCH: If you work at POKéMON\n"
+ .string "and gain experience, I think you’ll make\l"
+ .string "a darn good TRAINER.\p"
+ .string "My kid, {RIVAL}, is out on ROUTE 103\n"
+ .string "studying POKéMON.\p"
+ .string "It might not be a bad idea for you to\n"
+ .string "go see {RIVAL}. What do you think?$"
+
+LittlerootTown_ProfessorBirchsLab_Text_174015:: @ 8174015
+ .string "PROF. BIRCH: Great!\n"
+ .string "{RIVAL} should be happy, too.\p"
+ .string "Get {RIVAL} to teach you what it\n"
+ .string "means to be a TRAINER.$"
+
+LittlerootTown_ProfessorBirchsLab_Text_174075:: @ 8174075
+ .string "PROF. BIRCH: Oh, don’t be that way.\n"
+ .string "You should go meet my kid.$"
+
+LittlerootTown_ProfessorBirchsLab_Text_1740B4:: @ 81740B4
+ .string "PROF. BIRCH: {RIVAL} should be on\n"
+ .string "ROUTE 103 somewhere.\p"
+ .string "If you or your POKéMON get tired,\n"
+ .string "get some rest at home.$"
+
+LittlerootTown_ProfessorBirchsLab_Text_17411F:: @ 817411F
+ .string "PROF. BIRCH: Oh, hi, {PLAYER}{KUN}!\p"
+ .string "I heard you beat {RIVAL} on\n"
+ .string "your first try. That’s excellent!\p"
+ .string "{RIVAL}’s been helping with my research\n"
+ .string "for a long time.\p"
+ .string "{RIVAL} has an extensive history as\n"
+ .string "a TRAINER already.\p"
+ .string "Here, {PLAYER}{KUN}, I ordered this for my\n"
+ .string "research, but I think you should have\l"
+ .string "this POKéDEX.$"
+
+LittlerootTown_ProfessorBirchsLab_Text_17422F:: @ 817422F
+ .string "{PLAYER} received the POKéDEX!$"
+
+LittlerootTown_ProfessorBirchsLab_Text_174248:: @ 8174248
+ .string "PROF. BIRCH: The POKéDEX is a high-tech\n"
+ .string "tool that automatically makes a record\l"
+ .string "of any POKéMON you meet or catch.\p"
+ .string "My kid, {RIVAL}, goes everywhere\n"
+ .string "with it.\p"
+ .string "Whenever my kid catches a rare POKéMON\n"
+ .string "and records its data in the POKéDEX,\l"
+ .string "why, {RIVAL} looks for me while I’m out\l"
+ .string "doing fieldwork, and shows me.$"
+
+LittlerootTown_ProfessorBirchsLab_Text_17436C:: @ 817436C
+ .string "PROF. BIRCH: Countless POKéMON await\n"
+ .string "you!\p"
+ .string "Argh, I’m getting the itch to get out\n"
+ .string "and do fieldwork again!$"
+
+LittlerootTown_ProfessorBirchsLab_Text_1743D4:: @ 81743D4
+ .string "MAY: Oh, wow, {PLAYER}{KUN}!\n"
+ .string "You got a POKéDEX, too!\p"
+ .string "That’s great! Just like me!\n"
+ .string "I’ve got something for you, too!$"
+
+LittlerootTown_ProfessorBirchsLab_Text_17443D:: @ 817443D
+ .string "MAY: It’s fun if you can get a lot of\n"
+ .string "POKéMON!\p"
+ .string "I’m going to look all over the place\n"
+ .string "because I want different POKéMON.\p"
+ .string "If I find any cute POKéMON, I’ll catch\n"
+ .string "them with POKé BALLS!$"
+
+LittlerootTown_ProfessorBirchsLab_Text_1744F0:: @ 81744F0
+ .string "Oh? Your BAG’s full.$"
+
+LittlerootTown_ProfessorBirchsLab_Text_174505:: @ 8174505
+ .string "MAY: I wonder where I should go look\n"
+ .string "for POKéMON next?$"
+
+LittlerootTown_ProfessorBirchsLab_Text_17453C:: @ 817453C
+ .string "BRENDAN: Huh...\n"
+ .string "So you got a POKéDEX, too.\p"
+ .string "Well then, here.\n"
+ .string "I’ll give you this.$"
+
+LittlerootTown_ProfessorBirchsLab_Text_17458C:: @ 817458C
+ .string "BRENDAN: You know it’s more fun to\n"
+ .string "have a whole bunch of POKéMON.\p"
+ .string "I’m going to explore all over the place\n"
+ .string "to find different POKéMON.\p"
+ .string "If I find any cool POKéMON, you bet\n"
+ .string "I’ll try to get them with POKé BALLS.$"
+
+LittlerootTown_ProfessorBirchsLab_Text_17465B:: @ 817465B
+ .string "Hey, your BAG’s full.$"
+
+LittlerootTown_ProfessorBirchsLab_Text_174671:: @ 8174671
+ .string "BRENDAN: Where should I look for\n"
+ .string "POKéMON next...$"
+
+LittlerootTown_ProfessorBirchsLab_Text_1746A2:: @ 81746A2
+ .string "It’s a serious-looking machine.\n"
+ .string "The PROF must use this for research.$"
+
+LittlerootTown_ProfessorBirchsLab_Text_1746E7:: @ 81746E7
+ .string "It’s a PC used for research.\n"
+ .string "Better not mess around with it.$"
+
+LittlerootTown_ProfessorBirchsLab_Text_174724:: @ 8174724
+ .string "It’s crammed with books on POKéMON.$"
+
+LittlerootTown_ProfessorBirchsLab_Text_174748:: @ 8174748
+ .string "It’s a book that’s too hard to read.$"
+
diff --git a/data/maps/text/MauvilleCity.s b/data/maps/text/MauvilleCity.s
new file mode 100644
index 000000000..f72dd5be1
--- /dev/null
+++ b/data/maps/text/MauvilleCity.s
@@ -0,0 +1,175 @@
+MauvilleCity_Text_165B76:: @ 8165B76
+ .string "UNCLE: It’s because of POKéMON that\n"
+ .string "this boy’s got more pep, I suppose...\l"
+ .string "But he’s become a bit too peppy...$"
+
+MauvilleCity_Text_165BE3:: @ 8165BE3
+ .string "WALLY: Aww, UNCLE, please?\p"
+ .string "I want to challenge this GYM and see\n"
+ .string "how much better I’ve become.\p"
+ .string "Please? May I, please?$"
+
+MauvilleCity_Text_165C57:: @ 8165C57
+ .string "UNCLE: Now hold on, WALLY.\p"
+ .string "Since you started living with POKéMON,\n"
+ .string "you have grown quite a lot stronger.\p"
+ .string "But don’t you think you’re pushing it\n"
+ .string "to suddenly challenge a GYM?$"
+
+MauvilleCity_Text_165D01:: @ 8165D01
+ .string "WALLY: I’m not pushing it.\p"
+ .string "If I combine forces with RALTS,\n"
+ .string "we can beat anyone!$"
+
+MauvilleCity_Text_165D50:: @ 8165D50
+ .string "WALLY: Oh! Hi, {PLAYER}!\p"
+ .string "I’ve gotten a lot stronger since we\n"
+ .string "met.\p"
+ .string "{PLAYER}, I want you and my UNCLE to\n"
+ .string "understand that.\p"
+ .string "{PLAYER}, please, will you have a\n"
+ .string "battle with me?$"
+
+MauvilleCity_Text_165DE8:: @ 8165DE8
+ .string "WALLY: Oh... If you won’t battle me,\n"
+ .string "{PLAYER}, my UNCLE won’t know that I’ve\l"
+ .string "become really strong.$"
+
+MauvilleCity_Text_165E45:: @ 8165E45
+ .string "UNCLE: {PLAYER}{KUN}, was it?\n"
+ .string "On WALLY’s behalf, can I ask you to\l"
+ .string "battle with him just this once?\p"
+ .string "I don’t think he’s going to listen to\n"
+ .string "any reason the way he is now.$"
+
+MauvilleCity_Text_165EE2:: @ 8165EE2
+ .string "WALLY: {PLAYER}, please!\n"
+ .string "Battle with me, please.$"
+
+MauvilleCity_Text_165F0D:: @ 8165F0D
+ .string "WALLY: {PLAYER}, thank you.\p"
+ .string "Okay... Here I come!$"
+
+MauvilleCity_Text_165F38:: @ 8165F38
+ .string "WALLY: ... ... ... ... ... ... ...\p"
+ .string "... ... ... ... ... ... ... ...\p"
+ .string "I lost...$"
+
+MauvilleCity_Text_165F85:: @ 8165F85
+ .string "WALLY: UNCLE...\n"
+ .string "I’ll go back to VERDANTURF...$"
+
+MauvilleCity_Text_165FB3:: @ 8165FB3
+ .string "{PLAYER}, thank you.\n"
+ .string "Being a TRAINER is tough, isn’t it?\p"
+ .string "It’s not enough just to have POKéMON\n"
+ .string "and make them battle. That isn’t what\l"
+ .string "being a real TRAINER is about.$"
+
+MauvilleCity_Text_166050:: @ 8166050
+ .string "UNCLE: WALLY, there’s no need to be so\n"
+ .string "down on yourself.\p"
+ .string "Why, what’s keeping you from becoming\n"
+ .string "stronger and stronger?\p"
+ .string "Come on, let’s go home.\n"
+ .string "Everyone’s waiting for you.$"
+
+MauvilleCity_Text_1660FA:: @ 81660FA
+ .string "UNCLE: {PLAYER}{KUN}, it just dawned on me\n"
+ .string "that you must be the TRAINER who kept\l"
+ .string "an eye out for WALLY when he caught\l"
+ .string "his POKéMON.\p"
+ .string "Why don’t you visit us in VERDANTURF\n"
+ .string "sometime?\l"
+ .string "I’m sure WALLY would enjoy it.$"
+
+MauvilleCity_Text_1661C1:: @ 81661C1
+ .string "WATTSON: Oh, {PLAYER}{KUN}!\n"
+ .string "You look like you have a lot of zip!\l"
+ .string "That’s a good thing, wahahahaha!\p"
+ .string "Fine! I’ve decided!\n"
+ .string "I need a favor, {PLAYER}{KUN}!\p"
+ .string "MAUVILLE CITY has an underground\n"
+ .string "sector called NEW MAUVILLE.\p"
+ .string "{PLAYER}{KUN}, I’d like you to go there and\n"
+ .string "switch off the GENERATOR.\p"
+ .string "The GENERATOR has been running a bit\n"
+ .string "haywire. It’s getting unsafe.\p"
+ .string "Here, this is the KEY to get into NEW\n"
+ .string "MAUVILLE.$"
+
+MauvilleCity_Text_166331:: @ 8166331
+ .string "WATTSON: Don’t you worry about it.\n"
+ .string "It won’t be a challenge to you.\p"
+ .string "The entrance to NEW MAUVILLE is just\n"
+ .string "a short SURF away from ROUTE 110.\p"
+ .string "That’s it, then, you have my trust!\n"
+ .string "Wahahahaha!$"
+
+MauvilleCity_Text_1663EB:: @ 81663EB
+ .string "WATTSON: Wahahahaha!\p"
+ .string "I knew it, {PLAYER}{KUN}! I knew I’d made\n"
+ .string "the right choice asking you!\p"
+ .string "This is my thanks - a TM containing\n"
+ .string "THUNDERBOLT!\p"
+ .string "Go on, you’ve earned it!$"
+
+MauvilleCity_Text_166488:: @ 8166488
+ .string "WATTSON: Wahahahaha!\p"
+ .string "It pleases me to no end to see the\n"
+ .string "young step up and take charge!$"
+
+MauvilleCity_Text_1664DF:: @ 81664DF
+ .string "You know, it’s cool to have POKéMON\n"
+ .string "battles and stuff...\p"
+ .string "But if your POKéMON gets hurt, you\n"
+ .string "have to nurse it back to health.$"
+
+MauvilleCity_Text_16655C:: @ 816655C
+ .string "The roads of this town stretch north\n"
+ .string "and south, and east and west.\p"
+ .string "Because of that, we get all sorts of\n"
+ .string "people coming through.$"
+
+MauvilleCity_Text_1665DB:: @ 81665DB
+ .string "Have you been to RYDEL’S CYCLES yet?\p"
+ .string "RYDEL, the owner, is a very generous\n"
+ .string "man.$"
+
+MauvilleCity_Text_16662A:: @ 816662A
+ .string "Even if you’re riding a BIKE, wild\n"
+ .string "POKéMON could jump you.$"
+
+MauvilleCity_Text_166665:: @ 8166665
+ .string "MAUVILLE CITY\n"
+ .string "“The bright and shiny city of fun!”$"
+
+MauvilleCity_Text_166697:: @ 8166697
+ .string "MAUVILLE CITY POKéMON GYM\n"
+ .string "LEADER: WATTSON\l"
+ .string "“The cheerfully electrifying man!”$"
+
+MauvilleCity_Text_1666E4:: @ 81666E4
+ .string "“Ride in gravel and shake up your\n"
+ .string "soul!”\l"
+ .string "RYDEL’S CYCLES$"
+
+MauvilleCity_Text_16671C:: @ 816671C
+ .string "“The play spot for all!”\n"
+ .string "MAUVILLE GAME CORNER$"
+
+MauvilleCity_Text_16674A:: @ 816674A
+ .string "Hi, do you check out TV at all?\p"
+ .string "They’ve added a bunch of cool new\n"
+ .string "shows recently.\p"
+ .string "TV is so cool. I’ve seen my friends on\n"
+ .string "TV just out of the blue.\p"
+ .string "And, sometimes, they even put you on TV\n"
+ .string "without telling you.\p"
+ .string "I wish I would be on TV sometime.\p"
+ .string "That’s why I think you should check\n"
+ .string "out TVs whenever you can.$"
+
+MauvilleCity_Text_166879:: @ 8166879
+ .string "Hi, have you been checking out TVs?$"
+
diff --git a/data/maps/text/MauvilleCity_BikeShop.s b/data/maps/text/MauvilleCity_BikeShop.s
new file mode 100644
index 000000000..3bdb594b9
--- /dev/null
+++ b/data/maps/text/MauvilleCity_BikeShop.s
@@ -0,0 +1,145 @@
+MauvilleCity_BikeShop_Text_180F9F:: @ 8180F9F
+ .string "Well, well, what have we here?\n"
+ .string "A most energetic customer!\p"
+ .string "Me? You may call me RYDEL.\n"
+ .string "I’m the owner of this cycle shop.$"
+
+MauvilleCity_BikeShop_Text_181016:: @ 8181016
+ .string "RYDEL: Your RUNNING SHOES...\n"
+ .string "They’re awfully filthy.\p"
+ .string "Did you come from far away?$"
+
+MauvilleCity_BikeShop_Text_181067:: @ 8181067
+ .string "RYDEL: Is that right?\p"
+ .string "Then, I guess you have no need for\n"
+ .string "any of my BIKES.$"
+
+MauvilleCity_BikeShop_Text_1810B1:: @ 81810B1
+ .string "RYDEL: Hm, hm... ... ... ... ...\n"
+ .string "... ... ... ... ... ... ... ...\p"
+ .string "You’re saying that you came all this\n"
+ .string "way from LITTLEROOT?\p"
+ .string "My goodness!\n"
+ .string "That’s ridiculously far!\p"
+ .string "If you had one of my BIKES, you could\n"
+ .string "go anywhere easily while feeling the\l"
+ .string "gentle caress of the wind!\p"
+ .string "I’ll tell you what!\n"
+ .string "I’ll give you a BIKE!\p"
+ .string "Oh, wait a second!\p"
+ .string "I forgot to tell you that there are\n"
+ .string "two kinds of BIKES!\p"
+ .string "They are the MACH BIKE and the\n"
+ .string "ACRO BIKE!\p"
+ .string "MACH BIKE is for cyclists who want\n"
+ .string "to feel the wind with their bodies!\p"
+ .string "And an ACRO BIKE is for those who\n"
+ .string "prefer technical rides!\p"
+ .string "I’m a real sweetheart, so you can\n"
+ .string "have whichever one you like!\p"
+ .string "Which one will you choose?$"
+
+MauvilleCity_BikeShop_Text_181332:: @ 8181332
+ .string "{PLAYER} chose the MACH BIKE.$"
+
+MauvilleCity_BikeShop_Text_18134A:: @ 818134A
+ .string "{PLAYER} chose the ACRO BIKE.$"
+
+MauvilleCity_BikeShop_Text_181362:: @ 8181362
+ .string "RYDEL: If you get the urge to switch\n"
+ .string "BIKES, just come see me!$"
+
+MauvilleCity_BikeShop_Text_1813A0:: @ 81813A0
+ .string "RYDEL: Oh? Were you thinking about\n"
+ .string "switching BIKES?$"
+
+MauvilleCity_BikeShop_Text_1813D4:: @ 81813D4
+ .string "RYDEL: Okay, no problem!\n"
+ .string "I’ll switch BIKES for you!$"
+
+MauvilleCity_BikeShop_Text_181408:: @ 8181408
+ .string "{PLAYER} got the MACH BIKE exchanged\n"
+ .string "for an ACRO BIKE.$"
+
+MauvilleCity_BikeShop_Text_181439:: @ 8181439
+ .string "{PLAYER} got the ACRO BIKE exchanged\n"
+ .string "for a MACH BIKE.$"
+
+MauvilleCity_BikeShop_Text_181469:: @ 8181469
+ .string "RYDEL: Good, good!\n"
+ .string "I’m happy that you like it!$"
+
+MauvilleCity_BikeShop_Text_181498:: @ 8181498
+ .string "Oh? What happened to that BIKE I\n"
+ .string "gave you?\p"
+ .string "Oh, I get it, you stored it using your PC.\p"
+ .string "Well, take it out of PC storage,\n"
+ .string "and I’ll be happy to exchange it!\p"
+ .string "May the wind always be at your back\n"
+ .string "on your adventure!$"
+
+MauvilleCity_BikeShop_Text_181568:: @ 8181568
+ .string "I’m learning about BIKES while\n"
+ .string "I work here.\p"
+ .string "If you need advice on how to ride your\n"
+ .string "BIKE, there’re a couple handbooks in\l"
+ .string "the back.$"
+
+MauvilleCity_BikeShop_Text_1815EA:: @ 81815EA
+ .string "It’s a handbook on the MACH BIKE.\p"
+ .string "Which page do you want to read?$"
+
+MauvilleCity_BikeShop_Text_18162C:: @ 818162C
+ .string "A BIKE moves in the direction that\n"
+ .string "the + Control Pad is pressed.\p"
+ .string "It will speed up once it gets rolling.\p"
+ .string "To stop, release the + Control Pad.\n"
+ .string "The BIKE will slow to a stop.\p"
+ .string "Want to read a different page?$"
+
+MauvilleCity_BikeShop_Text_1816F5:: @ 81816F5
+ .string "A MACH BIKE is speedy, but it can’t\n"
+ .string "stop very quickly.\p"
+ .string "It gets a little tricky to get around\n"
+ .string "a corner.\p"
+ .string "Release the + Control Pad a little\n"
+ .string "before the corner and slow down.\p"
+ .string "Want to read a different page?$"
+
+MauvilleCity_BikeShop_Text_1817BF:: @ 81817BF
+ .string "There are small sandy slopes throughout\n"
+ .string "the HOENN region.\p"
+ .string "The loose, crumbly sand makes it\n"
+ .string "impossible to climb normally.\p"
+ .string "But if you have a MACH BIKE, you can\n"
+ .string "zip up a sandy slope.\p"
+ .string "Want to read a different page?$"
+
+MauvilleCity_BikeShop_Text_181892:: @ 8181892
+ .string "It’s a handbook on the ACRO BIKE.\p"
+ .string "Which page do you want to read?$"
+
+MauvilleCity_BikeShop_Text_1818D4:: @ 81818D4
+ .string "Press the B Button while riding, and the\n"
+ .string "front wheel lifts up.\p"
+ .string "You can zip around with the front\n"
+ .string "wheel up using the + Control Pad.\p"
+ .string "This technique is called a wheelie.\p"
+ .string "Want to read a different page?$"
+
+MauvilleCity_BikeShop_Text_18199A:: @ 818199A
+ .string "Keeping the B Button pressed, your\n"
+ .string "BIKE can hop on the spot.\p"
+ .string "This technique is called a bunny hop.\p"
+ .string "You can ride while hopping, too.\p"
+ .string "Want to read a different page?$"
+
+MauvilleCity_BikeShop_Text_181A3D:: @ 8181A3D
+ .string "Press the B Button and the + Control\n"
+ .string "Pad at the same time to jump.\p"
+ .string "Press the + Control Pad to the side\n"
+ .string "to jump sideways.\p"
+ .string "Press it backwards to make the BIKE\n"
+ .string "change directions while jumping.\p"
+ .string "Want to read a different page?$"
+
diff --git a/data/maps/text/MauvilleCity_GameCorner.s b/data/maps/text/MauvilleCity_GameCorner.s
new file mode 100644
index 000000000..05d977447
--- /dev/null
+++ b/data/maps/text/MauvilleCity_GameCorner.s
@@ -0,0 +1,143 @@
+MauvilleCity_GameCorner_Text_181C35:: @ 8181C35
+ .string "This is MAUVILLE GAME CORNER.$"
+
+MauvilleCity_GameCorner_Text_181C53:: @ 8181C53
+ .string "Okay, you wanted some COINS for\n"
+ .string "the games?\p"
+ .string "But you don’t have a COIN CASE for\n"
+ .string "stowing the COINS.$"
+
+MauvilleCity_GameCorner_Text_181CB4:: @ 8181CB4
+ .string "Were you looking for COINS?\p"
+ .string "It’s ¥1000 for 50 COINS.\n"
+ .string "Would you like some?$"
+
+MauvilleCity_GameCorner_Text_181CFE:: @ 8181CFE
+ .string "Thank you very much!\n"
+ .string "Here are your COINS!$"
+
+MauvilleCity_GameCorner_Text_181D28:: @ 8181D28
+ .string "Um... You don’t appear to have\n"
+ .string "enough money...$"
+
+MauvilleCity_GameCorner_Text_181D57:: @ 8181D57
+ .string "Oh?\n"
+ .string "Your COIN CASE is full.$"
+
+MauvilleCity_GameCorner_Text_181D73:: @ 8181D73
+ .string "Oh... You don’t need COINS, then?\n"
+ .string "Good luck on your adventure!$"
+
+ .incbin "baserom.gba", 0x181db2, 0x2f
+
+MauvilleCity_GameCorner_Text_181DE1:: @ 8181DE1
+ .string "Welcome.\p"
+ .string "You can exchange your COINS for\n"
+ .string "prizes here.$"
+
+MauvilleCity_GameCorner_Text_181E17:: @ 8181E17
+ .string "Which prize would you like?$"
+
+MauvilleCity_GameCorner_Text_181E33:: @ 8181E33
+ .string "So your choice is {STR_VAR_1}?$"
+
+MauvilleCity_GameCorner_Text_181E49:: @ 8181E49
+ .string "Thank you!\n"
+ .string "We’ll send it to your PC at home.$"
+
+MauvilleCity_GameCorner_Text_181E76:: @ 8181E76
+ .string "You don’t have enough COINS.$"
+
+ .incbin "baserom.gba", 0x181e93, 0x2f
+
+MauvilleCity_GameCorner_Text_181EC2:: @ 8181EC2
+ .string "Oh, is that so? \n"
+ .string "You need to save some COINS before\l"
+ .string "coming back here.$"
+
+MauvilleCity_GameCorner_Text_181F08:: @ 8181F08
+ .string "Here you go!$"
+
+ .incbin "baserom.gba", 0x181f15, 0x28
+
+MauvilleCity_GameCorner_Text_181F3D:: @ 8181F3D
+ .string "I made a mistake and got two of the\n"
+ .string "same DOLLS.\p"
+ .string "Would you like one of them?$"
+
+MauvilleCity_GameCorner_Text_181F89:: @ 8181F89
+ .string "There you go!$"
+
+MauvilleCity_GameCorner_Text_181F97:: @ 8181F97
+ .string "Huh?\n"
+ .string "You want it, but not right now?$"
+
+MauvilleCity_GameCorner_Text_181FBC:: @ 8181FBC
+ .string "Oh, don’t be so negative!\n"
+ .string "You can have this!$"
+
+MauvilleCity_GameCorner_Text_181FE9:: @ 8181FE9
+ .string "There’s a prize I want, but I can’t win\n"
+ .string "the jackpot.$"
+
+MauvilleCity_GameCorner_Text_18201E:: @ 818201E
+ .string "Hey, kid, if you want to play here,\n"
+ .string "you need a COIN CASE.\p"
+ .string "I think the young lady next door\n"
+ .string "had one. Go see her!$"
+
+MauvilleCity_GameCorner_Text_18208E:: @ 818208E
+ .string "My luck can only last so long.\n"
+ .string "This is too much for me.\l"
+ .string "Here, take some COINS!$"
+
+MauvilleCity_GameCorner_Text_1820DD:: @ 81820DD
+ .string "MAUVILLE has something for\n"
+ .string "everyone.\p"
+ .string "For me, it’s the GAME CORNER.$"
+
+MauvilleCity_GameCorner_Text_182120:: @ 8182120
+ .string "The ROULETTE tables have different\n"
+ .string "rates.\p"
+ .string "Check your COINS if you’re going to\n"
+ .string "pick a table.$"
+
+MauvilleCity_GameCorner_Text_18217C:: @ 818217C
+ .string "It’s easy to lose track of time in here. \n"
+ .string "I should get back to work.$"
+
+MauvilleCity_GameCorner_Text_1821C1:: @ 81821C1
+ .string "COINS are needed to play here in the\n"
+ .string "GAME CORNER.$"
+
+MauvilleCity_GameCorner_Text_1821F3:: @ 81821F3
+ .string "This ROULETTE thing...\n"
+ .string "It’s rather demanding.\p"
+ .string "Win or lose, it’s only by luck.$"
+
+MauvilleCity_GameCorner_Text_182241:: @ 8182241
+ .string "Up to three COINS can be used to play\n"
+ .string "the SLOTS.$"
+
+MauvilleCity_GameCorner_Text_182272:: @ 8182272
+ .string "It’s very difficult to make it stop\n"
+ .string "right on “7.”\p"
+ .string "If it stops on “7” during the REEL TIME\n"
+ .string "bonus game, you’ll receive extra COINS.$"
+
+MauvilleCity_GameCorner_Text_1822F4:: @ 81822F4
+ .string "Here’s some information for you\n"
+ .string "about the SLOTS.\p"
+ .string "The more lightning bolts you stock, the\n"
+ .string "more REEL TIME chances you get.\p"
+ .string "In a game with the maximum five REEL\n"
+ .string "TIME chances...\p"
+ .string "It is possible to receive four regular\n"
+ .string "bonuses, then a big bonus.\p"
+ .string "The big bonus is 660 COINS, but it’s\n"
+ .string "very difficult to get.$"
+
+MauvilleCity_GameCorner_Text_182420:: @ 8182420
+ .string "You can’t play if you don’t have a\n"
+ .string "COIN CASE.$"
+
diff --git a/data/maps/text/MauvilleCity_Gym.s b/data/maps/text/MauvilleCity_Gym.s
new file mode 100644
index 000000000..c143e2281
--- /dev/null
+++ b/data/maps/text/MauvilleCity_Gym.s
@@ -0,0 +1,117 @@
+MauvilleCity_Gym_Text_180815:: @ 8180815
+ .string "Hey, how’s it going, the CHAMPION-\n"
+ .string "bound {PLAYER}?\p"
+ .string "WATTSON, the LEADER of MAUVILLE\n"
+ .string "GYM, uses ELECTRIC-type POKéMON.\p"
+ .string "If you challenge him with WATER-type\n"
+ .string "POKéMON, he’ll zap them! Bzzt!\p"
+ .string "And, he’s put in switch-controlled doors\n"
+ .string "all over his GYM! Eccentric!\p"
+ .string "Hey, go for it!$"
+
+MauvilleCity_Gym_Text_18091D:: @ 818091D
+ .string "Whoa, you’re electrifying!\n"
+ .string "You’ve powered the door open!$"
+
+MauvilleCity_Gym_Text_180956:: @ 8180956
+ .string "My electric soul, it’ll shatter your\n"
+ .string "dreams whole, whoah-yeahah!$"
+
+MauvilleCity_Gym_Text_180997:: @ 8180997
+ .string "That was plugged in, amped up,\n"
+ .string "over-driven electric, man!$"
+
+MauvilleCity_Gym_Text_1809D1:: @ 81809D1
+ .string "POKéMON and rock, it’s all about heart,\n"
+ .string "whoah yeah!$"
+
+MauvilleCity_Gym_Text_180A05:: @ 8180A05
+ .string "I trained under WATTSON!\n"
+ .string "There ain’t no way I’d lose easily!$"
+
+MauvilleCity_Gym_Text_180A42:: @ 8180A42
+ .string "Unplugged and turned off...$"
+
+MauvilleCity_Gym_Text_180A5E:: @ 8180A5E
+ .string "WATTSON, our GYM LEADER, has been\n"
+ .string "around for a long, long time.\p"
+ .string "He was battling even before your\n"
+ .string "daddy was born, that tough coot.$"
+
+MauvilleCity_Gym_Text_180AE0:: @ 8180AE0
+ .string "This GYM’s got puzzles!\n"
+ .string "Isn’t it fun?$"
+
+MauvilleCity_Gym_Text_180B06:: @ 8180B06
+ .string "It’s no fun to lose...$"
+
+MauvilleCity_Gym_Text_180B1D:: @ 8180B1D
+ .string "WATTSON says he likes setting up\n"
+ .string "little traps with switches.$"
+
+MauvilleCity_Gym_Text_180B5A:: @ 8180B5A
+ .string "With my charm and my POKéMON’s moves,\n"
+ .string "you’ll be shocked!$"
+
+MauvilleCity_Gym_Text_180B93:: @ 8180B93
+ .string "I’m shocked by your power!$"
+
+MauvilleCity_Gym_Text_180BAE:: @ 8180BAE
+ .string "I’ve heard that MAUVILLE was founded\n"
+ .string "by WATTSON.\p"
+ .string "He was a TRAINER long before we\n"
+ .string "became TRAINERS.\l"
+ .string "He must know all sorts of things!$"
+
+MauvilleCity_Gym_Text_180C32:: @ 8180C32
+ .string "I’ve given up on my plans to convert\n"
+ .string "the city, I have.\p"
+ .string "And so, I put my time into making\n"
+ .string "door traps in my GYM.\p"
+ .string "Oh? Now, what are you doing here?\p"
+ .string "What’s that? You say you’ve gotten\n"
+ .string "past all my rigged doors?\p"
+ .string "Wahahahah!\n"
+ .string "Now, that is amusing!\p"
+ .string "Then, I, WATTSON, the LEADER of\n"
+ .string "MAUVILLE GYM, shall electrify you!$"
+
+MauvilleCity_Gym_Text_180D64:: @ 8180D64
+ .string "Wahahahah!\n"
+ .string "Fine, I lost!\p"
+ .string "You ended up giving me a thrill!\n"
+ .string "Take this BADGE!$"
+
+MauvilleCity_Gym_Text_180DAF:: @ 8180DAF
+ .string "{PLAYER} received the DYNAMO BADGE\n"
+ .string "from WATTSON.$"
+
+MauvilleCity_Gym_Text_180DDA:: @ 8180DDA
+ .string "With the DYNAMO BADGE, POKéMON can\n"
+ .string "use ROCK SMASH out of battle.\p"
+ .string "And, it will make your POKéMON a little\n"
+ .string "bit faster, too.\p"
+ .string "Hmm...\n"
+ .string "You should take this, too!$"
+
+MauvilleCity_Gym_Text_180E76:: @ 8180E76
+ .string "That TM34 there contains SHOCK WAVE.\p"
+ .string "It’s a trustworthy move that never\n"
+ .string "misses! You can count on it!$"
+
+MauvilleCity_Gym_Text_180EDB:: @ 8180EDB
+ .string "I swell with optimism, seeing a promising\n"
+ .string "young TRAINER like you!$"
+
+MauvilleCity_Gym_Text_180F1D:: @ 8180F1D
+ .string "Wahahahah!\n"
+ .string "Go forth and endeavor, youngster!$"
+
+MauvilleCity_Gym_Text_180F4A:: @ 8180F4A
+ .string "MAUVILLE CITY POKéMON GYM$"
+
+MauvilleCity_Gym_Text_180F64:: @ 8180F64
+ .string "MAUVILLE CITY POKéMON GYM\p"
+ .string "WATTSON’S CERTIFIED TRAINERS:\n"
+ .string "{PLAYER}$"
+
diff --git a/data/maps/text/MauvilleCity_House1.s b/data/maps/text/MauvilleCity_House1.s
new file mode 100644
index 000000000..60f44c47d
--- /dev/null
+++ b/data/maps/text/MauvilleCity_House1.s
@@ -0,0 +1,17 @@
+MauvilleCity_House1_Text_181B1A:: @ 8181B1A
+ .string "Woohoo, your POKéMON look pretty\n"
+ .string "strong.\p"
+ .string "I like that!\n"
+ .string "Here, take this HM!$"
+
+MauvilleCity_House1_Text_181B64:: @ 8181B64
+ .string "That HM contains ROCK SMASH.\p"
+ .string "If you come across large boulders\n"
+ .string "that block your path...\p"
+ .string "Well, use that HM move and smash\n"
+ .string "it right out of your way!$"
+
+MauvilleCity_House1_Text_181BF6:: @ 8181BF6
+ .string "Oh, yes, if you smash a rock, a POKéMON\n"
+ .string "could come flying out.$"
+
diff --git a/data/maps/text/MauvilleCity_House2.s b/data/maps/text/MauvilleCity_House2.s
new file mode 100644
index 000000000..8d2053b33
--- /dev/null
+++ b/data/maps/text/MauvilleCity_House2.s
@@ -0,0 +1,23 @@
+MauvilleCity_House2_Text_18244E:: @ 818244E
+ .string "If I had a BIKE, it’d be easy to cycle to\n"
+ .string "SLATEPORT for some shopping.\p"
+ .string "I’d be able to buy HARBOR MAIL at the\n"
+ .string "POKéMON MART in SLATEPORT...$"
+
+MauvilleCity_House2_Text_1824D8:: @ 81824D8
+ .string "Oh! You have HARBOR MAIL?\n"
+ .string "Will you trade it for a COIN CASE?$"
+
+MauvilleCity_House2_Text_182515:: @ 8182515
+ .string "Oh, I’m so happy!\n"
+ .string "Okay, I’ll trade you a COIN CASE!$"
+
+MauvilleCity_House2_Text_182549:: @ 8182549
+ .string "That COIN CASE can be used at the\n"
+ .string "GAME CORNER.$"
+
+MauvilleCity_House2_Text_182578:: @ 8182578
+ .string "Oh, that’s disappointing.\p"
+ .string "A COIN CASE is needed for the\n"
+ .string "GAME CORNER.$"
+
diff --git a/data/maps/text/MauvilleCity_Mart.s b/data/maps/text/MauvilleCity_Mart.s
new file mode 100644
index 000000000..63d02b551
--- /dev/null
+++ b/data/maps/text/MauvilleCity_Mart.s
@@ -0,0 +1,14 @@
+MauvilleCity_Mart_Text_1827D3:: @ 81827D3
+ .string "There are items that temporarily\n"
+ .string "elevate the stats of POKéMON.\p"
+ .string "The ones I know you use in battle\n"
+ .string "are X ATTACK and X DEFEND...\p"
+ .string "I do believe that there are others\n"
+ .string "like them.$"
+
+MauvilleCity_Mart_Text_18287F:: @ 818287F
+ .string "Use a certain move, or use an item\n"
+ .string "instead...\p"
+ .string "The TRAINER’s decisions determine how\n"
+ .string "battles turn out, I think.$"
+
diff --git a/data/maps/text/MauvilleCity_PokemonCenter_1F.s b/data/maps/text/MauvilleCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..797dc87d5
--- /dev/null
+++ b/data/maps/text/MauvilleCity_PokemonCenter_1F.s
@@ -0,0 +1,19 @@
+MauvilleCity_PokemonCenter_1F_Text_1825BD:: @ 81825BD
+ .string "That man over there, he says weird\n"
+ .string "things!\p"
+ .string "He’s funny in a weird way.\n"
+ .string "I doubt I’ll forget about him!$"
+
+MauvilleCity_PokemonCenter_1F_Text_182622:: @ 8182622
+ .string "When I accessed the RECORD CORNER,\n"
+ .string "the data for what’s hot in DEWFORD\l"
+ .string "got updated.\p"
+ .string "Now that bit of data is the same\n"
+ .string "as my friend’s!$"
+
+MauvilleCity_PokemonCenter_1F_Text_1826A6:: @ 81826A6
+ .string "A RECORD CORNER opened upstairs in\n"
+ .string "the POKéMON CENTER.\p"
+ .string "I don’t know what it’s about, but it\n"
+ .string "sounds fun. I’ll go check it out!$"
+
diff --git a/data/maps/text/MauvilleCity_PokemonCenter_2F.s b/data/maps/text/MauvilleCity_PokemonCenter_2F.s
new file mode 100644
index 000000000..68296bb2d
--- /dev/null
+++ b/data/maps/text/MauvilleCity_PokemonCenter_2F.s
@@ -0,0 +1,8 @@
+MauvilleCity_PokemonCenter_2F_Text_182724:: @ 8182724
+ .string "Did you know that you can link battle\n"
+ .string "at the COLOSSEUM here?\p"
+ .string "They put up your record on the wall\n"
+ .string "for everyone to see.\p"
+ .string "It’s embarrassing if you lose more\n"
+ .string "often than you win...$"
+
diff --git a/data/maps/text/MeteorFalls_1F_1R.s b/data/maps/text/MeteorFalls_1F_1R.s
new file mode 100644
index 000000000..efddb3b22
--- /dev/null
+++ b/data/maps/text/MeteorFalls_1F_1R.s
@@ -0,0 +1,81 @@
+MeteorFalls_1F_1R_Text_193237:: @ 8193237
+ .string "Hehehe!\p"
+ .string "With this METEORITE, MT. CHIMNEY\n"
+ .string "will...$"
+
+MeteorFalls_1F_1R_Text_193268:: @ 8193268
+ .string "Heh?\p"
+ .string "I don’t know who you are, but if you get\n"
+ .string "in the way of TEAM {EVIL_TEAM}, don’t\l"
+ .string "expect any mercy!$"
+
+MeteorFalls_1F_1R_Text_1932C5:: @ 81932C5
+ .string "Hold it right there, TEAM {EVIL_TEAM}!\p"
+ .string "We, TEAM {GOOD_TEAM}, won’t allow you to\n"
+ .string "get away with your misdeeds!$"
+
+MeteorFalls_1F_1R_Text_193320:: @ 8193320
+ .string "Hehehe!\n"
+ .string "Even TEAM {GOOD_TEAM} joins us!\p"
+ .string "But it’s too much trouble to deal with\n"
+ .string "you all...\p"
+ .string "Heh, it doesn’t matter!\p"
+ .string "We’ve got the METEORITE, so off to\n"
+ .string "MT. CHIMNEY we go!\p"
+ .string "Hehehe! Be seeing you, you TEAM\n"
+ .string "{GOOD_TEAM} dingbats!$"
+
+ .incbin "baserom.gba", 0x1933ec, 0x198
+
+MeteorFalls_1F_1R_Text_193584:: @ 8193584
+ .string "Who might you be?\p"
+ .string "... ... ... ... ... ... ... ...\n"
+ .string "... ... ... ... ... ... ... ...\p"
+ .string "Ah, so you are {PLAYER}{KUN}.\p"
+ .string "I am ARCHIE. As the head of TEAM AQUA,\n"
+ .string "I have dedicated myself to thwarting\l"
+ .string "the dangerous plans of TEAM MAGMA.\p"
+ .string "Why? Because TEAM MAGMA is a grave\n"
+ .string "threat to us all.\p"
+ .string "They have committed many destructive\n"
+ .string "acts in their bid to expand the land.\p"
+ .string "We, TEAM AQUA, love the sea above\n"
+ .string "all! TEAM MAGMA is our sworn enemy!$"
+
+MeteorFalls_1F_1R_Text_193720:: @ 8193720
+ .string "{GOOD_LEADER}, we should give chase to\n"
+ .string "TEAM {EVIL_TEAM}...$"
+
+MeteorFalls_1F_1R_Text_193747:: @ 8193747
+ .string "{GOOD_LEADER}: Yes, yes, we must!\n"
+ .string "We’ve got to hurry.\p"
+ .string "There’s no telling what TEAM {EVIL_TEAM}\n"
+ .string "will do at MT. CHIMNEY!$"
+
+MeteorFalls_1F_1R_Text_1937AA:: @ 81937AA
+ .string "{GOOD_LEADER}: {PLAYER}{KUN}, you should keep\n"
+ .string "an eye out for TEAM {EVIL_TEAM}, too.\p"
+ .string "Farewell!$"
+
+MeteorFalls_1F_1R_Text_1937EB:: @ 81937EB
+ .string "I... I’m COZMO...\n"
+ .string "I’m a PROFESSOR...\p"
+ .string "I usually study METEORITES in\n"
+ .string "FALLARBOR TOWN...\p"
+ .string "Then some people from TEAM {EVIL_TEAM}\n"
+ .string "made me guide them to METEOR FALLS...\p"
+ .string "They promised me that they would\n"
+ .string "excavate METEORITES for me...\p"
+ .string "But, I...\n"
+ .string "TEAM {EVIL_TEAM} tricked me...\p"
+ .string "Oh... That METEORITE...\n"
+ .string "It will never be mine now...\p"
+ .string "But that TEAM {EVIL_TEAM}...\p"
+ .string "What are they going to do with that\n"
+ .string "METEORITE at MT. CHIMNEY?$"
+
+MeteorFalls_1F_1R_Text_19396A:: @ 819396A
+ .string "PROF. COZMO: That TEAM {EVIL_TEAM}...\p"
+ .string "What are they going to do with that\n"
+ .string "METEORITE at MT. CHIMNEY?$"
+
diff --git a/data/maps/text/MeteorFalls_1F_2R.s b/data/maps/text/MeteorFalls_1F_2R.s
new file mode 100644
index 000000000..a260ce9ef
--- /dev/null
+++ b/data/maps/text/MeteorFalls_1F_2R.s
@@ -0,0 +1,114 @@
+MeteorFalls_1F_2R_Text_1939C5:: @ 81939C5
+ .string "This is where we DRAGON users do our\n"
+ .string "training.\p"
+ .string "The CHAMPION even visits.\n"
+ .string "Now do you see how special it is here?$"
+
+MeteorFalls_1F_2R_Text_193A35:: @ 8193A35
+ .string "Urgh!\n"
+ .string "I didn’t expect you to be so strong!$"
+
+MeteorFalls_1F_2R_Text_193A60:: @ 8193A60
+ .string "The road ahead remains long and harsh.\p"
+ .string "When will my POKéMON and I become the\n"
+ .string "best?$"
+
+MeteorFalls_1F_2R_Text_193AB3:: @ 8193AB3
+ .string "Since we met, we have trained hard\n"
+ .string "with our sights on number one.\p"
+ .string "Help us see how much stronger we’ve\n"
+ .string "become!$"
+
+MeteorFalls_1F_2R_Text_193B21:: @ 8193B21
+ .string "Urgh!\n"
+ .string "I didn’t expect you to be so strong!$"
+
+MeteorFalls_1F_2R_Text_193B4C:: @ 8193B4C
+ .string "You’ve obviously kept up your\n"
+ .string "POKéMON training.\p"
+ .string "So long as you remain strong, I, too,\n"
+ .string "can become stronger!$"
+
+MeteorFalls_1F_2R_Text_193BB7:: @ 8193BB7
+ .string "JOHN: We’ve always battled POKéMON\n"
+ .string "together as a twosome.\l"
+ .string "We’ve confidence in ourselves.$"
+
+MeteorFalls_1F_2R_Text_193C10:: @ 8193C10
+ .string "JOHN: Oh, my.\n"
+ .string "We’ve lost, dear wife.$"
+
+MeteorFalls_1F_2R_Text_193C35:: @ 8193C35
+ .string "JOHN: We’ve been married for\n"
+ .string "fifty years.\p"
+ .string "Come to think of it, I’ve yet to beat\n"
+ .string "my dear wife in a battle.$"
+
+MeteorFalls_1F_2R_Text_193C9F:: @ 8193C9F
+ .string "JOHN: Well, well, what a young TRAINER!\p"
+ .string "Will you battle with us? If so, you’ll\n"
+ .string "have to return with more POKéMON.$"
+
+MeteorFalls_1F_2R_Text_193D10:: @ 8193D10
+ .string "JAY: We’ve been married for\n"
+ .string "fifty years.\p"
+ .string "The bond we share as a couple could\n"
+ .string "never be broken.$"
+
+MeteorFalls_1F_2R_Text_193D6E:: @ 8193D6E
+ .string "JAY: Oh, dear.\n"
+ .string "We’ve lost, my dear husband.$"
+
+MeteorFalls_1F_2R_Text_193D9A:: @ 8193D9A
+ .string "JAY: Fifty years of marriage...\p"
+ .string "If we ever argued, we always settled\n"
+ .string "it with a POKéMON battle...$"
+
+MeteorFalls_1F_2R_Text_193DFB:: @ 8193DFB
+ .string "JAY: Well, well, aren’t you a young\n"
+ .string "TRAINER?\p"
+ .string "If you’d care to battle with us, you’ll\n"
+ .string "have to come back with more POKéMON.$"
+
+MeteorFalls_1F_2R_Text_193E75:: @ 8193E75
+ .string "JOHN: We’ve always battled POKéMON\n"
+ .string "together as a twosome.\l"
+ .string "We’ve confidence in ourselves.$"
+
+MeteorFalls_1F_2R_Text_193ECE:: @ 8193ECE
+ .string "JOHN: Oh, my.\n"
+ .string "We’ve lost, dear wife.$"
+
+MeteorFalls_1F_2R_Text_193EF3:: @ 8193EF3
+ .string "JOHN: Married for fifty years...\p"
+ .string "On reflection, the dear wife and I,\n"
+ .string "we battled day in and day out...$"
+
+MeteorFalls_1F_2R_Text_193F59:: @ 8193F59
+ .string "JOHN: Well, well, what a young\n"
+ .string "TRAINER!\p"
+ .string "Will you battle with us? If so, you’ll\n"
+ .string "have to return with more POKéMON.$"
+
+MeteorFalls_1F_2R_Text_193FCA:: @ 8193FCA
+ .string "JAY: We’ve been married for\n"
+ .string "fifty years.\p"
+ .string "We’ve supported each other all that\n"
+ .string "time. We’ve made ourselves strong.$"
+
+MeteorFalls_1F_2R_Text_19403A:: @ 819403A
+ .string "JAY: Oh, dear.\n"
+ .string "We’ve lost, my dear husband.$"
+
+MeteorFalls_1F_2R_Text_194066:: @ 8194066
+ .string "JAY: Fifty years of marriage...\n"
+ .string "Many things have happened.\p"
+ .string "I hope that we will continue to make\n"
+ .string "happy memories together.$"
+
+MeteorFalls_1F_2R_Text_1940DF:: @ 81940DF
+ .string "JAY: Well, well, aren’t you a young\n"
+ .string "TRAINER?\p"
+ .string "If you’d care to battle with us, you’ll\n"
+ .string "have to come back with more POKéMON.$"
+
diff --git a/data/maps/text/MossdeepCity.s b/data/maps/text/MossdeepCity.s
new file mode 100644
index 000000000..c7d7132c1
--- /dev/null
+++ b/data/maps/text/MossdeepCity.s
@@ -0,0 +1,87 @@
+MossdeepCity_Text_1690A9:: @ 81690A9
+ .string "I got this from STEVEN, but I don’t\n"
+ .string "know what it’s good for.\p"
+ .string "I think it’s called KING’S ROCK.\n"
+ .string "Do you want it?$"
+
+MossdeepCity_Text_169117:: @ 8169117
+ .string "Why would you want it?\n"
+ .string "You’re weird.\p"
+ .string "You can keep it, but keep it a secret\n"
+ .string "from STEVEN.$"
+
+MossdeepCity_Text_16916F:: @ 816916F
+ .string "Is it really that fun collecting\n"
+ .string "rocks? I don’t get it.$"
+
+MossdeepCity_Text_1691A7:: @ 81691A7
+ .string "Yeah, you think so, too! What are you\n"
+ .string "supposed to do with some weird rock?$"
+
+MossdeepCity_Text_1691F2:: @ 81691F2
+ .string "Around MOSSDEEP, you can see wild\n"
+ .string "WAILMER.\p"
+ .string "It’s called, uh...\n"
+ .string "What was it now...\p"
+ .string "WAI, WAI, WAI...\p"
+ .string "WAILMER watching!$"
+
+MossdeepCity_Text_169266:: @ 8169266
+ .string "The island’s SPACE CENTER has been\n"
+ .string "launching huge rockets.$"
+
+MossdeepCity_Text_1692A1:: @ 81692A1
+ .string "I’d heard from my mates in LILYCOVE\n"
+ .string "that the herd of WAILMER has\l"
+ .string "disappeared.\p"
+ .string "What went down over there, I wonder?$"
+
+MossdeepCity_Text_169314:: @ 8169314
+ .string "Wouldn’t it be nice?\p"
+ .string "If the whole world was covered in\n"
+ .string "plants and flowers like this island?$"
+
+MossdeepCity_Text_169370:: @ 8169370
+ .string "All life needs the sea to live, even\n"
+ .string "though it makes its home on the land.\p"
+ .string "Life, having run its course, becomes\n"
+ .string "soil and returns to the land.\p"
+ .string "And the sea is always connected to\n"
+ .string "the land.\p"
+ .string "Yes, like the very shoreline here.$"
+
+MossdeepCity_Text_16944E:: @ 816944E
+ .string "A voyage on a ship is fine.\p"
+ .string "But crossing the sea with POKéMON\n"
+ .string "using SURF...\p"
+ .string "Now that’s an exhilarating trip!\n"
+ .string "Wouldn’t you agree, youngster?$"
+
+MossdeepCity_Text_1694DA:: @ 81694DA
+ .string "This rock has a special meaning to\n"
+ .string "the people at the SPACE CENTER.\p"
+ .string "They put it here as their wish for\n"
+ .string "their rockets to fly safely.\p"
+ .string "When you make a wish, what do you use?\n"
+ .string "Do you wish upon a star?\p"
+ .string "I use a wish tag to make it happen.\n"
+ .string "That’s what I do.$"
+
+MossdeepCity_Text_1695D3:: @ 81695D3
+ .string "It’s a white rock.$"
+
+MossdeepCity_Text_1695E6:: @ 81695E6
+ .string "MOSSDEEP CITY POKéMON GYM\n"
+ .string "LEADERS: LIZA & TATE\p"
+ .string "“The mystic combination!”$"
+
+MossdeepCity_Text_16962F:: @ 816962F
+ .string "MOSSDEEP CITY\n"
+ .string "“Our slogan: Cherish POKéMON!”$"
+
+MossdeepCity_Text_16965C:: @ 816965C
+ .string "MOSSDEEP SPACE CENTER\n"
+ .string "“The closest place to space.”$"
+
+ .incbin "baserom.gba", 0x169690, 0x14
+
diff --git a/data/maps/text/MossdeepCity_GameCorner_1F.s b/data/maps/text/MossdeepCity_GameCorner_1F.s
new file mode 100644
index 000000000..0b6cd83e4
--- /dev/null
+++ b/data/maps/text/MossdeepCity_GameCorner_1F.s
@@ -0,0 +1,35 @@
+MossdeepCity_GameCorner_1F_Text_18E59A:: @ 818E59A
+ .string "When I was young, I traveled the world\n"
+ .string "as a POKéMON TRAINER.\p"
+ .string "Now that I’ve become an old buzzard,\n"
+ .string "my only amusement is watching young\l"
+ .string "TRAINERS battle.$"
+
+MossdeepCity_GameCorner_1F_Text_18E631:: @ 818E631
+ .string "The door appears to be locked.$"
+
+MossdeepCity_GameCorner_1F_Text_18E650:: @ 818E650
+ .string "A TRAINER named {STR_VAR_1} is\n"
+ .string "visiting my home.\p"
+ .string "Would you like to challenge\n"
+ .string "{STR_VAR_1}?$"
+
+MossdeepCity_GameCorner_1F_Text_18E698:: @ 818E698
+ .string "You won’t battle? I’m disappointed\n"
+ .string "that I can’t see you battle...$"
+
+MossdeepCity_GameCorner_1F_Text_18E6DA:: @ 818E6DA
+ .string "Oh, good, good!\p"
+ .string "But my house isn’t all that sturdy.\p"
+ .string "Could I ask you to keep it down to\n"
+ .string "a 3-on-3 match?$"
+
+MossdeepCity_GameCorner_1F_Text_18E741:: @ 818E741
+ .string "Before you two battle, you should\n"
+ .string "save your progress.$"
+
+MossdeepCity_GameCorner_1F_Text_18E777:: @ 818E777
+ .string "I hope to see a good match!$"
+
+ .incbin "baserom.gba", 0x18e793, 0x3
+
diff --git a/data/maps/text/MossdeepCity_GameCorner_B1F.s b/data/maps/text/MossdeepCity_GameCorner_B1F.s
new file mode 100644
index 000000000..2acc54920
--- /dev/null
+++ b/data/maps/text/MossdeepCity_GameCorner_B1F.s
@@ -0,0 +1,3 @@
+MossdeepCity_GameCorner_B1F_Text_18E796:: @ 818E796
+ .string "The match ended up a draw.$"
+
diff --git a/data/maps/text/MossdeepCity_Gym.s b/data/maps/text/MossdeepCity_Gym.s
new file mode 100644
index 000000000..4bb63b01a
--- /dev/null
+++ b/data/maps/text/MossdeepCity_Gym.s
@@ -0,0 +1,169 @@
+MossdeepCity_Gym_Text_18C7E3:: @ 818C7E3
+ .string "Yo, how’s it going, CHAMPION-bound\n"
+ .string "{PLAYER}?\p"
+ .string "The GYM LEADERS here use PSYCHIC-type\n"
+ .string "POKéMON.\p"
+ .string "If you go up against them with\n"
+ .string "FIGHTING- or POISON-type POKéMON,\l"
+ .string "they’ll inflict horrible damage!\p"
+ .string "Plus, they’ll come at you with\n"
+ .string "outstanding combination attacks.\p"
+ .string "If you want to win, you’ll need to show\n"
+ .string "them how tight you are with your\l"
+ .string "POKéMON. Go for it!$"
+
+MossdeepCity_Gym_Text_18C938:: @ 818C938
+ .string "Wow, you’re astounding!\n"
+ .string "You’re one great TRAINER!$"
+
+MossdeepCity_Gym_Text_18C96A:: @ 818C96A
+ .string "Battles hinge on the strength of your\n"
+ .string "spirit! The weak-spirited will never win!$"
+
+MossdeepCity_Gym_Text_18C9BA:: @ 818C9BA
+ .string "I lost! I must temper my spirit again!$"
+
+MossdeepCity_Gym_Text_18C9E1:: @ 818C9E1
+ .string "The indecisive lose.\n"
+ .string "That’s my warning to you.$"
+
+MossdeepCity_Gym_Text_18CA10:: @ 818CA10
+ .string "Let me see your talent!$"
+
+MossdeepCity_Gym_Text_18CA28:: @ 818CA28
+ .string "You possess spectacular talent!$"
+
+MossdeepCity_Gym_Text_18CA48:: @ 818CA48
+ .string "If there are prodigies in the world,\n"
+ .string "then our GYM LEADERS are them!\p"
+ .string "However, you may be even more talented\n"
+ .string "than them...$"
+
+MossdeepCity_Gym_Text_18CAC0:: @ 818CAC0
+ .string "Fufufufu... Watch me levitate a POKé\n"
+ .string "BALL telekinetically!\p"
+ .string "Wrooooooooaaaar!\n"
+ .string "... ... ... ... ... ... ...\p"
+ .string "Sometimes, I’m out of sync...$"
+
+MossdeepCity_Gym_Text_18CB46:: @ 818CB46
+ .string "My POKéMON battling skills are out\n"
+ .string "of sync, too!$"
+
+MossdeepCity_Gym_Text_18CB77:: @ 818CB77
+ .string "A POKé BALL was too heavy to lift\n"
+ .string "psychically. But this dust bunny...\p"
+ .string "Whoooooooooooooooh!\n"
+ .string "... ... ... ... ... ...\p"
+ .string "No, I’m not cheating!\n"
+ .string "I didn’t blow on it! Honestly!$"
+
+MossdeepCity_Gym_Text_18CC1E:: @ 818CC1E
+ .string "When you lose to me, don’t be too hard\n"
+ .string "on yourself.\p"
+ .string "It’s not that you’re weak - I’m just\n"
+ .string "too strong!$"
+
+MossdeepCity_Gym_Text_18CC83:: @ 818CC83
+ .string "You’re just too strong!$"
+
+MossdeepCity_Gym_Text_18CC9B:: @ 818CC9B
+ .string "I’m not going to get down on myself for\n"
+ .string "losing. I just need to train harder.\p"
+ .string "Positive thinking - that’s my strong\n"
+ .string "point!$"
+
+MossdeepCity_Gym_Text_18CD14:: @ 818CD14
+ .string "I see it...\n"
+ .string "I see your future...\p"
+ .string "If you can beat me, I will tell you\n"
+ .string "your future!$"
+
+MossdeepCity_Gym_Text_18CD66:: @ 818CD66
+ .string "I surrender!$"
+
+MossdeepCity_Gym_Text_18CD73:: @ 818CD73
+ .string "You will wage a terrifically intense\n"
+ .string "battle with our GYM LEADERS...\p"
+ .string "The result...\n"
+ .string "You won’t hear it from me!$"
+
+MossdeepCity_Gym_Text_18CDE0:: @ 818CDE0
+ .string "The roads you have traveled...\n"
+ .string "What you have experienced...\p"
+ .string "Come at me with everything you’ve\n"
+ .string "learned!$"
+
+MossdeepCity_Gym_Text_18CE47:: @ 818CE47
+ .string "You’ve traveled a path of greatness!$"
+
+MossdeepCity_Gym_Text_18CE6C:: @ 818CE6C
+ .string "A bright future awaits those who have\n"
+ .string "worked diligently.\p"
+ .string "For those who lazed idly, there is\n"
+ .string "only despair at the end.\p"
+ .string "What goes around comes around...$"
+
+MossdeepCity_Gym_Text_18CF02:: @ 818CF02
+ .string "TATE: Hehehe... Were you surprised?\p"
+ .string "LIZA: Fufufu... Were you surprised?\p"
+ .string "TATE: That there are two GYM LEADERS?\n"
+ .string "LIZA: That there are two GYM LEADERS?\p"
+ .string "TATE: We’re twins!\n"
+ .string "LIZA: We’re twins!\p"
+ .string "TATE: We don’t need to talk because...\n"
+ .string "LIZA: We can each determine what...\p"
+ .string "TATE: The other is thinking...\n"
+ .string "LIZA: All in our minds!\p"
+ .string "TATE: This combination of ours...\n"
+ .string "LIZA: Can you beat it?$"
+
+MossdeepCity_Gym_Text_18D077:: @ 818D077
+ .string "TATE: What?! Our combination...\n"
+ .string "LIZA: Was shattered!\p"
+ .string "TATE: It can’t be helped. You’ve won...\n"
+ .string "LIZA: So, in recognition, take this.$"
+
+MossdeepCity_Gym_Text_18D0F9:: @ 818D0F9
+ .string "{PLAYER} received the MIND BADGE\n"
+ .string "from LIZA and TATE.$"
+
+MossdeepCity_Gym_Text_18D128:: @ 818D128
+ .string "TATE: The MIND BADGE enhances the\n"
+ .string "SP. ATK and SP. DEF of POKéMON.\p"
+ .string "LIZA: It also lets you use the HM move\n"
+ .string "DIVE outside of battle.\p"
+ .string "TATE: You should also take this, too.$"
+
+MossdeepCity_Gym_Text_18D1CF:: @ 818D1CF
+ .string "TATE: That TM04 contains...\n"
+ .string "LIZA: CALM MIND!\p"
+ .string "TATE: It raises SP. ATK and...\n"
+ .string "LIZA: It raises SP. DEF!\p"
+ .string "TATE: It’s a move that’s perfect...\n"
+ .string "LIZA: For PSYCHIC POKéMON!$"
+
+MossdeepCity_Gym_Text_18D273:: @ 818D273
+ .string "TATE: Looks like the bond between you\n"
+ .string "and your POKéMON is far stronger than\l"
+ .string "the bond that we share as twins.\p"
+ .string "LIZA: You will become even stronger!\n"
+ .string "We’ve battled you, so we know.$"
+
+MossdeepCity_Gym_Text_18D324:: @ 818D324
+ .string "TATE: Hehehe... Were you surprised?\p"
+ .string "LIZA: That there are two GYM LEADERS?\p"
+ .string "TATE: Oops, you have only one...\n"
+ .string "LIZA: POKéMON that can battle.\p"
+ .string "TATE: We can’t battle that way!\p"
+ .string "LIZA: If you want to challenge us,\n"
+ .string "bring some more POKéMON.$"
+
+MossdeepCity_Gym_Text_18D40A:: @ 818D40A
+ .string "MOSSDEEP CITY POKéMON GYM$"
+
+MossdeepCity_Gym_Text_18D424:: @ 818D424
+ .string "MOSSDEEP CITY POKéMON GYM\p"
+ .string "LIZA AND TATE’S CERTIFIED TRAINERS:\n"
+ .string "{PLAYER}$"
+
diff --git a/data/maps/text/MossdeepCity_House1.s b/data/maps/text/MossdeepCity_House1.s
new file mode 100644
index 000000000..81a6194bd
--- /dev/null
+++ b/data/maps/text/MossdeepCity_House1.s
@@ -0,0 +1,18 @@
+MossdeepCity_House1_Text_18D465:: @ 818D465
+ .string "Hmm!\n"
+ .string "Your {STR_VAR_1}...$"
+
+MossdeepCity_House1_Text_18D475:: @ 818D475
+ .string "It likes {STR_VAR_1}S,\n"
+ .string "doesn’t it?\p"
+ .string "No, I’m positive of it! It definitely\n"
+ .string "likes {STR_VAR_1}S!$"
+
+MossdeepCity_House1_Text_18D4C0:: @ 818D4C0
+ .string "It doesn’t appear to like or dislike\n"
+ .string "any {POKEBLOCK}S.$"
+
+MossdeepCity_House1_Text_18D4F1:: @ 818D4F1
+ .string "My husband can tell what kind of\n"
+ .string "{POKEBLOCK}S a POKéMON likes at a glance.$"
+
diff --git a/data/maps/text/MossdeepCity_House2.s b/data/maps/text/MossdeepCity_House2.s
new file mode 100644
index 000000000..74bf1fa22
--- /dev/null
+++ b/data/maps/text/MossdeepCity_House2.s
@@ -0,0 +1,15 @@
+MossdeepCity_House2_Text_18D536:: @ 818D536
+ .string "My little sister exchanges MAIL with\n"
+ .string "her boyfriend in FORTREE.\p"
+ .string "I don’t envy her one bit at all.$"
+
+MossdeepCity_House2_Text_18D596:: @ 818D596
+ .string "Even though I can’t see my friend in\n"
+ .string "FORTREE, my POKéMON carries MAIL back\l"
+ .string "and forth for us.\p"
+ .string "I’m not lonesome, even though we’re\n"
+ .string "apart.$"
+
+MossdeepCity_House2_Text_18D61E:: @ 818D61E
+ .string "WINGULL: Pihyoh!$"
+
diff --git a/data/maps/text/MossdeepCity_House3.s b/data/maps/text/MossdeepCity_House3.s
new file mode 100644
index 000000000..e4b8779ce
--- /dev/null
+++ b/data/maps/text/MossdeepCity_House3.s
@@ -0,0 +1,24 @@
+MossdeepCity_House3_Text_18D909:: @ 818D909
+ .string "Hey there, TRAINER!\n"
+ .string "A SUPER ROD really is super!\p"
+ .string "Say all you want, but this baby can\n"
+ .string "catch POKéMON off the seafloor!\p"
+ .string "What do you think?\n"
+ .string "You want it, don’t you?$"
+
+MossdeepCity_House3_Text_18D9A9:: @ 818D9A9
+ .string "You bet, you bet!\n"
+ .string "After all, a SUPER ROD is really super!$"
+
+MossdeepCity_House3_Text_18D9E3:: @ 818D9E3
+ .string "If there’s any water, try dropping in\n"
+ .string "your ROD and see what bites!$"
+
+MossdeepCity_House3_Text_18DA26:: @ 818DA26
+ .string "Hunh?\n"
+ .string "Don’t you like to fish?$"
+
+MossdeepCity_House3_Text_18DA44:: @ 818DA44
+ .string "Go after the seafloor POKéMON with\n"
+ .string "your SUPER ROD.$"
+
diff --git a/data/maps/text/MossdeepCity_House4.s b/data/maps/text/MossdeepCity_House4.s
new file mode 100644
index 000000000..ab9106da6
--- /dev/null
+++ b/data/maps/text/MossdeepCity_House4.s
@@ -0,0 +1,20 @@
+MossdeepCity_House4_Text_18E0E3:: @ 818E0E3
+ .string "My little brother says he likes to go\n"
+ .string "find people’s SECRET BASES.$"
+
+MossdeepCity_House4_Text_18E125:: @ 818E125
+ .string "My little brother says he likes to\n"
+ .string "visit people’s SECRET BASES and have\l"
+ .string "POKéMON battles.$"
+
+MossdeepCity_House4_Text_18E17E:: @ 818E17E
+ .string "Was it you who made a SECRET BASE in\n"
+ .string "{STR_VAR_1}?$"
+
+MossdeepCity_House4_Text_18E1A7:: @ 818E1A7
+ .string "You should make a SECRET BASE\n"
+ .string "somewhere. I’ll go find it!$"
+
+MossdeepCity_House4_Text_18E1E1:: @ 818E1E1
+ .string "DELCATTY: Miyaan?$"
+
diff --git a/data/maps/text/MossdeepCity_Mart.s b/data/maps/text/MossdeepCity_Mart.s
new file mode 100644
index 000000000..fec3149ce
--- /dev/null
+++ b/data/maps/text/MossdeepCity_Mart.s
@@ -0,0 +1,20 @@
+MossdeepCity_Mart_Text_18D758:: @ 818D758
+ .string "REVIVE is fantastic!\p"
+ .string "Give it to a fainted POKéMON, and the\n"
+ .string "POKéMON will arise.\p"
+ .string "But be careful, REVIVE doesn’t restore\n"
+ .string "the used-up PP of moves.$"
+
+MossdeepCity_Mart_Text_18D7E7:: @ 818D7E7
+ .string "MAX REPEL keeps all weak POKéMON away.\p"
+ .string "Out of all the REPEL sprays, it lasts\n"
+ .string "the longest.$"
+
+MossdeepCity_Mart_Text_18D841:: @ 818D841
+ .string "The NET and DIVE BALLS are rare POKé\n"
+ .string "BALLS that are only made in MOSSDEEP.\p"
+ .string "A NET BALL is effective against\n"
+ .string "BUG-type and WATER-type POKéMON.\p"
+ .string "A DIVE BALL works best on POKéMON at\n"
+ .string "the bottom of the sea.$"
+
diff --git a/data/maps/text/MossdeepCity_PokemonCenter_1F.s b/data/maps/text/MossdeepCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..d9f42b3a1
--- /dev/null
+++ b/data/maps/text/MossdeepCity_PokemonCenter_1F.s
@@ -0,0 +1,11 @@
+MossdeepCity_PokemonCenter_1F_Text_18D62F:: @ 818D62F
+ .string "The GYM LEADERS in this town are a\n"
+ .string "formidable duo.\p"
+ .string "Their combination attacks are, like,\n"
+ .string "excellent and wow!$"
+
+MossdeepCity_PokemonCenter_1F_Text_18D69A:: @ 818D69A
+ .string "Depending on the special abilities of\n"
+ .string "POKéMON, some moves might change\l"
+ .string "or not work at all.$"
+
diff --git a/data/maps/text/MossdeepCity_PokemonCenter_2F.s b/data/maps/text/MossdeepCity_PokemonCenter_2F.s
new file mode 100644
index 000000000..486d36d76
--- /dev/null
+++ b/data/maps/text/MossdeepCity_PokemonCenter_2F.s
@@ -0,0 +1,5 @@
+MossdeepCity_PokemonCenter_2F_Text_18D6F5:: @ 818D6F5
+ .string "If I win a whole lot of link battles\n"
+ .string "and show everyone how good I am,\l"
+ .string "I might get a fan following!$"
+
diff --git a/data/maps/text/MossdeepCity_SpaceCenter_1F.s b/data/maps/text/MossdeepCity_SpaceCenter_1F.s
new file mode 100644
index 000000000..23f544099
--- /dev/null
+++ b/data/maps/text/MossdeepCity_SpaceCenter_1F.s
@@ -0,0 +1,34 @@
+MossdeepCity_SpaceCenter_1F_Text_18E1F3:: @ 818E1F3
+ .string "The rocket’s launch is imminent!$"
+
+MossdeepCity_SpaceCenter_1F_Text_18E214:: @ 818E214
+ .string "The rocket launched safely!\n"
+ .string "That’s successful launch no. {STR_VAR_1}!$"
+
+MossdeepCity_SpaceCenter_1F_Text_18E251:: @ 818E251
+ .string "A rocket launch demands perfection.\n"
+ .string "Not even a 1% margin of error is allowed.\p"
+ .string "Even if it’s 99% okay, the whole thing\n"
+ .string "is useless if 1% happens to be no good.\p"
+ .string "Despite that, we never stop trying.\n"
+ .string "Why? It’s a dream that never ends.$"
+
+MossdeepCity_SpaceCenter_1F_Text_18E335:: @ 818E335
+ .string "I was taking a stroll down the beach\n"
+ .string "when I found this.\p"
+ .string "It’s not anything I need, so you can\n"
+ .string "have it.$"
+
+MossdeepCity_SpaceCenter_1F_Text_18E39B:: @ 818E39B
+ .string "The HOENN region has been famous for \n"
+ .string "its meteor showers for a long time.$"
+
+MossdeepCity_SpaceCenter_1F_Text_18E3E5:: @ 818E3E5
+ .string "Some people claim that POKéMON came\n"
+ .string "from space. Could it be true?$"
+
+MossdeepCity_SpaceCenter_1F_Text_18E427:: @ 818E427
+ .string "A giant chunk of metal bursts through\n"
+ .string "the skies and flies into space...\p"
+ .string "It boggles my mind!$"
+
diff --git a/data/maps/text/MossdeepCity_SpaceCenter_2F.s b/data/maps/text/MossdeepCity_SpaceCenter_2F.s
new file mode 100644
index 000000000..fdaf8d0a5
--- /dev/null
+++ b/data/maps/text/MossdeepCity_SpaceCenter_2F.s
@@ -0,0 +1,16 @@
+MossdeepCity_SpaceCenter_2F_Text_18E483:: @ 818E483
+ .string "MOSSDEEP has mainly sunny weather,\n"
+ .string "and its winds are stable.\p"
+ .string "It’s an ideal location for launching\n"
+ .string "rockets.$"
+
+MossdeepCity_SpaceCenter_2F_Text_18E4EE:: @ 818E4EE
+ .string "If only I was a little younger, I would\n"
+ .string "have liked being an astronaut...\p"
+ .string "No... It’s not too late!\n"
+ .string "I can and will try!$"
+
+MossdeepCity_SpaceCenter_2F_Text_18E564:: @ 818E564
+ .string "I wish ordinary people could go into\n"
+ .string "space one day...$"
+
diff --git a/data/maps/text/MossdeepCity_StevensHouse.s b/data/maps/text/MossdeepCity_StevensHouse.s
new file mode 100644
index 000000000..b05b557b8
--- /dev/null
+++ b/data/maps/text/MossdeepCity_StevensHouse.s
@@ -0,0 +1,84 @@
+MossdeepCity_StevensHouse_Text_18DA77:: @ 818DA77
+ .string "STEVEN: {PLAYER}{KUN}?\p"
+ .string "Yes, this is my place. It’s a little\n"
+ .string "embarrassing how empty it is here.\p"
+ .string "Oh, here, you should take this HM.\p"
+ .string "It contains DIVE.\n"
+ .string "I’ve already taught my POKéMON.$"
+
+MossdeepCity_StevensHouse_Text_18DB22:: @ 818DB22
+ .string "STEVEN: While you’re using SURF, you\n"
+ .string "should notice dark patches of water.\p"
+ .string "Use DIVE if you come to deep water\n"
+ .string "like it. You’ll drop to the seafloor.\p"
+ .string "When you want to come back up, use\n"
+ .string "DIVE again.\p"
+ .string "In some places, it won’t be possible\n"
+ .string "for you to surface, though.$"
+
+MossdeepCity_StevensHouse_Text_18DC25:: @ 818DC25
+ .string "STEVEN: Apparently, there’s an\n"
+ .string "underwater cavern between\l"
+ .string "MOSSDEEP and SOOTOPOLIS.\p"
+ .string "You know, the one that CAPT. STERN\n"
+ .string "found in his submarine.\p"
+ .string "An underwater cavern...\p"
+ .string "There might be some rare stones down\n"
+ .string "there... I should go for a DIVE...$"
+
+MossdeepCity_StevensHouse_Text_18DD12:: @ 818DD12
+ .string "{PLAYER} checked the POKé BALL.\p"
+ .string "It contained the POKéMON\n"
+ .string "BELDUM.\p"
+ .string "Take the POKé BALL?$"
+
+MossdeepCity_StevensHouse_Text_18DD61:: @ 818DD61
+ .string "{PLAYER} obtained a BELDUM.$"
+
+MossdeepCity_StevensHouse_Text_18DD77:: @ 818DD77
+ .string "There is no space for another POKéMON.$"
+
+MossdeepCity_StevensHouse_Text_18DD9E:: @ 818DD9E
+ .string "{PLAYER} left the POKé BALL where\n"
+ .string "it was.$"
+
+MossdeepCity_StevensHouse_Text_18DDC2:: @ 818DDC2
+ .string "It’s a letter.\p"
+ .string "... ... ... ... ... ...\p"
+ .string "To {PLAYER}{KUN}...\p"
+ .string "I’ve decided to do a little soul-\n"
+ .string "searching and train on the road.\p"
+ .string "I don’t plan to return home for some\n"
+ .string "time.\p"
+ .string "I have a favor to ask of you.\p"
+ .string "I want you to take the POKé BALL on\n"
+ .string "the desk.\p"
+ .string "Inside it is a BELDUM, my favorite\n"
+ .string "POKéMON.\p"
+ .string "I’m counting on you.\p"
+ .string "May our paths cross some day.\p"
+ .string "STEVEN STONE$"
+
+MossdeepCity_StevensHouse_Text_18DF1A:: @ 818DF1A
+ .string "It’s a letter.\p"
+ .string "... ... ... ... ... ...\p"
+ .string "To {PLAYER}{KUN}...\p"
+ .string "I’ve decided to do a little soul-\n"
+ .string "searching and train on the road.\p"
+ .string "I don’t plan to return home for some\n"
+ .string "time.\p"
+ .string "I have a favor to ask of you.\p"
+ .string "I want you to take the POKé BALL on\n"
+ .string "the desk.\p"
+ .string "Inside it is a BELDUM, my favorite\n"
+ .string "POKéMON.\p"
+ .string "I’m counting on you.\p"
+ .string "If you’d like, you should also take\n"
+ .string "the HM DIVE.\p"
+ .string "May our paths cross some day.\p"
+ .string "STEVEN STONE$"
+
+MossdeepCity_StevensHouse_Text_18E0A3:: @ 818E0A3
+ .string "It’s a collection of rare rocks and\n"
+ .string "stones assembled by STEVEN.$"
+
diff --git a/data/maps/text/MtChimney.s b/data/maps/text/MtChimney.s
new file mode 100644
index 000000000..3c033fe0c
--- /dev/null
+++ b/data/maps/text/MtChimney.s
@@ -0,0 +1,108 @@
+MtChimney_Text_195760:: @ 8195760
+ .string "LAVA COOKIES are MT. CHIMNEY’s local\n"
+ .string "specialty.\p"
+ .string "Try one. It’s just ¥200.$"
+
+MtChimney_Text_1957A9:: @ 81957A9
+ .string "Thank you, dear!$"
+
+MtChimney_Text_1957BA:: @ 81957BA
+ .string "Oh, dear. You can’t buy a thing if\n"
+ .string "you’ve not got the money.$"
+
+MtChimney_Text_1957F7:: @ 81957F7
+ .string "Oh, fine then.$"
+
+MtChimney_Text_195806:: @ 8195806
+ .string "A METEORITE is fitted on a mysterious\n"
+ .string "machine...\p"
+ .string "The machine seems to be storing\n"
+ .string "energy in the METEORITE.$"
+
+MtChimney_Text_195870:: @ 8195870
+ .string "A METEORITE is fitted on a mysterious\n"
+ .string "machine...\p"
+ .string "Do you want to remove the METEORITE?$"
+
+MtChimney_Text_1958C6:: @ 81958C6
+ .string "{PLAYER} removed the METEORITE from\n"
+ .string "the mysterious machine.$"
+
+MtChimney_Text_1958FC:: @ 81958FC
+ .string "{PLAYER} left the METEORITE where\n"
+ .string "it was.$"
+
+MtChimney_Text_195920:: @ 8195920
+ .string "This mysterious machine...\n"
+ .string "It makes no response whatsoever.$"
+
+MtChimney_Text_19595C:: @ 819595C
+ .string "{0x7A} JAGGED PATH\n"
+ .string "LAVARIDGE TOWN AHEAD$"
+
+MtChimney_Text_19597F:: @ 819597F
+ .string "I’ve been to the hot springs and\n"
+ .string "refreshed my tired bones.\l"
+ .string "Right now I’m feeling strong!$"
+
+MtChimney_Text_1959D8:: @ 81959D8
+ .string "Oh, my goodness.\n"
+ .string "Now, aren’t you something!$"
+
+MtChimney_Text_195A04:: @ 8195A04
+ .string "Well, well, I’ve lost. I can’t call\n"
+ .string "myself an EXPERT now, can I?$"
+
+MtChimney_Text_195A45:: @ 8195A45
+ .string "If you can mesh your heart with those\n"
+ .string "of your POKéMON, why, you should be\l"
+ .string "able to achieve great things.$"
+
+MtChimney_Text_195AAD:: @ 8195AAD
+ .string "Oh, my goodness.\n"
+ .string "Now, aren’t you something!$"
+
+MtChimney_Text_195AD9:: @ 8195AD9
+ .string "Perhaps your heart has become one\n"
+ .string "with the hearts of your POKéMON.$"
+
+MtChimney_Text_195B1C:: @ 8195B1C
+ .string "I’ve got the fire in me, baby.\n"
+ .string "I can’t stand it! I have to battle!$"
+
+MtChimney_Text_195B5F:: @ 8195B5F
+ .string "Ooh, that was a scorching-hot match!$"
+
+MtChimney_Text_195B84:: @ 8195B84
+ .string "The heat of MT. CHIMNEY lights my\n"
+ .string "fire, baby!$"
+
+MtChimney_Text_195BB2:: @ 8195BB2
+ .string "I’ve finally made it to MT. CHIMNEY.\n"
+ .string "I want to make my POKéMON battle!$"
+
+MtChimney_Text_195BF9:: @ 8195BF9
+ .string "The way you battle...\n"
+ .string "It’s like a MT. CHIMNEY eruption!$"
+
+MtChimney_Text_195C31:: @ 8195C31
+ .string "Like I said, I’ve finally made it to\n"
+ .string "MT. CHIMNEY. It would be a shame if\l"
+ .string "I only do a little sightseeing...\p"
+ .string "I want to get in some battles and buy\n"
+ .string "COOKIES as souvenirs.$"
+
+MtChimney_Text_195CD8:: @ 8195CD8
+ .string "Since I bathed in the hot springs,\n"
+ .string "I’ve been feeling great!\l"
+ .string "I’m sure I’m going to win!$"
+
+MtChimney_Text_195D2F:: @ 8195D2F
+ .string "Yowch!\n"
+ .string "I’m getting a chill out of the water.$"
+
+MtChimney_Text_195D5C:: @ 8195D5C
+ .string "I’ll have to take another dip in the\n"
+ .string "hot springs. Want to join me?\p"
+ .string "Just joking!$"
+
diff --git a/data/maps/text/MtChimney_CableCarStation.s b/data/maps/text/MtChimney_CableCarStation.s
new file mode 100644
index 000000000..d82308f92
--- /dev/null
+++ b/data/maps/text/MtChimney_CableCarStation.s
@@ -0,0 +1,5 @@
+MtChimney_CableCarStation_Text_19256A:: @ 819256A
+ .string "The CABLE CAR is ready to go down.\n"
+ .string "Would you like to be on it?$"
+
+MtChimney_CableCarStation_Text_1925A9:: @ 81925A9
diff --git a/data/maps/text/MtPyre_1F.s b/data/maps/text/MtPyre_1F.s
new file mode 100644
index 000000000..ff17f173e
--- /dev/null
+++ b/data/maps/text/MtPyre_1F.s
@@ -0,0 +1,20 @@
+MtPyre_1F_Text_196151:: @ 8196151
+ .string "All sorts of beings wander the slopes\n"
+ .string "of MT. PYRE...\p"
+ .string "There is no telling what may happen.\n"
+ .string "Take this. It’s for your own good.$"
+
+MtPyre_1F_Text_1961CE:: @ 81961CE
+ .string "Have a POKéMON hold that\n"
+ .string "CLEANSE TAG.\p"
+ .string "It will help ward off wild POKéMON.$"
+
+MtPyre_1F_Text_196218:: @ 8196218
+ .string "Did you come to pay your respect\n"
+ .string "to the spirits of departed POKéMON?\p"
+ .string "You must care for your POKéMON a lot.$"
+
+MtPyre_1F_Text_196283:: @ 8196283
+ .string "This is the final resting place of my\n"
+ .string "ZIGZAGOON. I cherished it...$"
+
diff --git a/data/maps/text/MtPyre_2F.s b/data/maps/text/MtPyre_2F.s
new file mode 100644
index 000000000..f98b916d5
--- /dev/null
+++ b/data/maps/text/MtPyre_2F.s
@@ -0,0 +1,64 @@
+MtPyre_2F_Text_1962C6:: @ 81962C6
+ .string "LUKE: We’re here on a dare.\p"
+ .string "Heheh, if I show her how cool I am,\n"
+ .string "she’ll fall for me. I know it!\p"
+ .string "I know! I’ll cream you and show her\n"
+ .string "how cool I am!$"
+
+MtPyre_2F_Text_196358:: @ 8196358
+ .string "LUKE: Whoopsie!$"
+
+MtPyre_2F_Text_196368:: @ 8196368
+ .string "LUKE: Well, we lost but that’s okay!\n"
+ .string "I’m right here by your side.\l"
+ .string "We’ll make it through this dare!$"
+
+MtPyre_2F_Text_1963CB:: @ 81963CB
+ .string "LUKE: If you want to take me on, bring\n"
+ .string "some more POKéMON.\p"
+ .string "If you don’t, I won’t be able to show\n"
+ .string "off how cool I am to my girl!$"
+
+MtPyre_2F_Text_196449:: @ 8196449
+ .string "DEZ: I came here on a dare with my\n"
+ .string "boyfriend.\p"
+ .string "It’s really scary, but I’m with my\n"
+ .string "boyfriend. It’s okay.\p"
+ .string "I know! I’ll get my boyfriend to look\n"
+ .string "cool by beating you!$"
+
+MtPyre_2F_Text_1964EB:: @ 81964EB
+ .string "DEZ: Waaaah! I’m scared!$"
+
+MtPyre_2F_Text_196504:: @ 8196504
+ .string "DEZ: We’re lovey-dovey, so we don’t\n"
+ .string "care if we lose!$"
+
+MtPyre_2F_Text_196539:: @ 8196539
+ .string "DEZ: If you want to challenge us, you\n"
+ .string "should bring at least two POKéMON.\p"
+ .string "My boyfriend’s strong.\n"
+ .string "Just one POKéMON won’t do at all.$"
+
+MtPyre_2F_Text_1965BB:: @ 81965BB
+ .string "Memories of my darling SKITTY...\n"
+ .string "My eyes overflow thinking about it.$"
+
+MtPyre_2F_Text_196600:: @ 8196600
+ .string "Ooch, ouch... There are holes in the\n"
+ .string "ground here and there.\p"
+ .string "I didn’t notice and took a tumble from\n"
+ .string "the floor above.$"
+
+MtPyre_2F_Text_196674:: @ 8196674
+ .string "Hey! Are you searching for POKéMON?\n"
+ .string "You came along after me! You’re rude!$"
+
+MtPyre_2F_Text_1966BE:: @ 81966BE
+ .string "Ayieeeeh!\n"
+ .string "I’m sorry, forgive me, please!$"
+
+MtPyre_2F_Text_1966E7:: @ 81966E7
+ .string "People don’t come here often, so\n"
+ .string "I thought there’d be rare POKéMON.$"
+
diff --git a/data/maps/text/MtPyre_3F.s b/data/maps/text/MtPyre_3F.s
new file mode 100644
index 000000000..3eb54cc99
--- /dev/null
+++ b/data/maps/text/MtPyre_3F.s
@@ -0,0 +1,28 @@
+MtPyre_3F_Text_19672B:: @ 819672B
+ .string "The rich atmosphere of the mountain\n"
+ .string "has elevated my psychic power!\p"
+ .string "A mere child like you...\n"
+ .string "You dream of winning?$"
+
+MtPyre_3F_Text_19679D:: @ 819679D
+ .string "I drown in self-pity...$"
+
+MtPyre_3F_Text_1967B5:: @ 81967B5
+ .string "My psychic powers have surely\n"
+ .string "grown several times, but...$"
+
+MtPyre_3F_Text_1967EF:: @ 81967EF
+ .string "Ahahahaha!\p"
+ .string "This is no place for children, least\n"
+ .string "of all you!$"
+
+MtPyre_3F_Text_19682B:: @ 819682B
+ .string "I lost that cleanly...$"
+
+MtPyre_3F_Text_196842:: @ 8196842
+ .string "This means my training is still not\n"
+ .string "enough...\p"
+ .string "I’ve got to keep working toward the\n"
+ .string "summit...\p"
+ .string "Go, me!$"
+
diff --git a/data/maps/text/MtPyre_4F.s b/data/maps/text/MtPyre_4F.s
new file mode 100644
index 000000000..e1f539cdc
--- /dev/null
+++ b/data/maps/text/MtPyre_4F.s
@@ -0,0 +1,12 @@
+MtPyre_4F_Text_1968A6:: @ 81968A6
+ .string "Teacher...\n"
+ .string "Please watch over my progress!$"
+
+MtPyre_4F_Text_1968D0:: @ 81968D0
+ .string "Teacher...\n"
+ .string "Please forgive me!$"
+
+MtPyre_4F_Text_1968EE:: @ 81968EE
+ .string "Until I improve, my teacher, who rests\n"
+ .string "here, will never find true peace...$"
+
diff --git a/data/maps/text/MtPyre_5F.s b/data/maps/text/MtPyre_5F.s
new file mode 100644
index 000000000..9830042f9
--- /dev/null
+++ b/data/maps/text/MtPyre_5F.s
@@ -0,0 +1,15 @@
+MtPyre_5F_Text_196939:: @ 8196939
+ .string "I love all things horrifying...\n"
+ .string "It’s like a disease...\p"
+ .string "When I’m here...\n"
+ .string "I shiver with fear...$"
+
+MtPyre_5F_Text_196997:: @ 8196997
+ .string "Losing, I dislike...$"
+
+MtPyre_5F_Text_1969AC:: @ 81969AC
+ .string "I want to see dreadful things...\n"
+ .string "I can’t leave...\p"
+ .string "Stay...\n"
+ .string "Won’t you stay with me?$"
+
diff --git a/data/maps/text/MtPyre_6F.s b/data/maps/text/MtPyre_6F.s
new file mode 100644
index 000000000..de30577bc
--- /dev/null
+++ b/data/maps/text/MtPyre_6F.s
@@ -0,0 +1,22 @@
+MtPyre_6F_Text_1969FE:: @ 81969FE
+ .string "When I’m here...\n"
+ .string "A curious power flows into me...$"
+
+MtPyre_6F_Text_196A30:: @ 8196A30
+ .string "The power is ebbing away...$"
+
+MtPyre_6F_Text_196A4C:: @ 8196A4C
+ .string "Perhaps the power is from the spirits\n"
+ .string "of POKéMON in fitful sleep here...$"
+
+MtPyre_6F_Text_196A95:: @ 8196A95
+ .string "Behind you...\n"
+ .string "What is it...$"
+
+MtPyre_6F_Text_196AB1:: @ 8196AB1
+ .string "Something faded away...$"
+
+MtPyre_6F_Text_196AC9:: @ 8196AC9
+ .string "The POKéMON at rest here...\n"
+ .string "Sometimes, they play...$"
+
diff --git a/data/maps/text/MtPyre_Summit.s b/data/maps/text/MtPyre_Summit.s
new file mode 100644
index 000000000..a6f1507e5
--- /dev/null
+++ b/data/maps/text/MtPyre_Summit.s
@@ -0,0 +1,155 @@
+MtPyre_Summit_Text_1B5CFD:: @ 81B5CFD
+ .string "I’ll show you exactly how scary\n"
+ .string "TEAM MAGMA can be!$"
+
+MtPyre_Summit_Text_1B5D30:: @ 81B5D30
+ .string "So you think you can stand up alone\n"
+ .string "to TEAM MAGMA’s might...$"
+
+MtPyre_Summit_Text_1B5D6D:: @ 81B5D6D
+ .string "Yeah, so you are strong...\n"
+ .string "But there’re a lot of us!$"
+
+MtPyre_Summit_Text_1B5DA2:: @ 81B5DA2
+ .string "What’s up with you?\n"
+ .string "What does a single kid expect to do?$"
+
+MtPyre_Summit_Text_1B5DDB:: @ 81B5DDB
+ .string "Dang...\n"
+ .string "Too strong...$"
+
+MtPyre_Summit_Text_1B5DF1:: @ 81B5DF1
+ .string "You don’t know anything.\n"
+ .string "Quit messing around with us!$"
+
+MtPyre_Summit_Text_1B5E27:: @ 81B5E27
+ .string "Hey, I remember you from MT. CHIMNEY!\n"
+ .string "It’s payback time!$"
+
+MtPyre_Summit_Text_1B5E60:: @ 81B5E60
+ .string "Urgggh...\n"
+ .string "Beaten by some kid again!$"
+
+MtPyre_Summit_Text_1B5E84:: @ 81B5E84
+ .string "Heh, it doesn’t matter!\n"
+ .string "We bought ourselves some time!\p"
+ .string "The BOSS should have snatched what\n"
+ .string "he was after!$"
+
+MtPyre_Summit_Text_1B5EEC:: @ 81B5EEC
+ .string "MAXIE: Not you again...\p"
+ .string "You’ve impeded our plans repeatedly,\n"
+ .string "but this time you’re too late.\p"
+ .string "The BLUE ORB that rested atop\n"
+ .string "MT. PYRE...\l"
+ .string "I, MAXIE, claim it as mine!\p"
+ .string "Fufufu... Finally, I can realize my\n"
+ .string "grand design...\p"
+ .string "Come on, crew!\n"
+ .string "It’s SLATEPORT next!$"
+
+MtPyre_Summit_Text_1B5FE6:: @ 81B5FE6
+ .string "Oh, no...\n"
+ .string "This cannot happen...\p"
+ .string "How could they take the BLUE ORB?\p"
+ .string "The BLUE ORB and RED ORB must never\n"
+ .string "be separated. They belong together.\p"
+ .string "... ... ... ... ... ... ... ...\n"
+ .string "Hmm...\p"
+ .string "Fine!\n"
+ .string "You take the remaining RED ORB.\p"
+ .string "Please take after that foul man and\n"
+ .string "get the other ORB back!$"
+
+MtPyre_Summit_Text_1B60F9:: @ 81B60F9
+ .string "The RED ORB you have been entrusted\n"
+ .string "with and the stolen BLUE ORB...\p"
+ .string "They must never be apart...\n"
+ .string "Something terrible will happen...$"
+
+MtPyre_Summit_Text_1B617B:: @ 81B617B
+ .string "So...\n"
+ .string "GROUDON has awoken...\p"
+ .string "The wondrous ORB that is said to have\n"
+ .string "becalmed the raging GROUDON...\l"
+ .string "It is the RED ORB you bear.\p"
+ .string "That RED ORB was found buried inside\n"
+ .string "the CAVE OF ORIGIN in SOOTOPOLIS...\p"
+ .string "There is perhaps a link between\n"
+ .string "GROUDON and the CAVE OF ORIGIN...$"
+
+MtPyre_Summit_Text_1B6283:: @ 81B6283
+ .string "That man, he returned the BLUE ORB.\p"
+ .string "Are you going to return the RED ORB\n"
+ .string "to its rightful place, too?$"
+
+MtPyre_Summit_Text_1B62E7:: @ 81B62E7
+ .string "What’s that?!\p"
+ .string "If the balance is not restored, there\n"
+ .string "is no telling what could happen.\p"
+ .string "You will return the RED ORB to its\n"
+ .string "rightful place, yes?$"
+
+ .incbin "baserom.gba", 0x1b6374, 0x28
+
+MtPyre_Summit_Text_1B639C:: @ 81B639C
+ .string "Yes...\n"
+ .string "The two ORBS should remain here.\p"
+ .string "It is how it should be for the good\n"
+ .string "of all HOENN...$"
+
+MtPyre_Summit_Text_1B63F8:: @ 81B63F8
+ .string "The spirit of the land...\p"
+ .string "That is what GROUDON is said to be in\n"
+ .string "POKéMON form...\p"
+ .string "In the same manner that we and POKéMON\n"
+ .string "have life, this very land is alive...\p"
+ .string "GROUDON has taught us that...$"
+
+MtPyre_Summit_Text_1B64B3:: @ 81B64B3
+ .string "MT. PYRE is where we calm the spirits\n"
+ .string "of POKéMON that have passed on...\p"
+ .string "This is a high place where one can\n"
+ .string "see all of HOENN...\p"
+ .string "The disembodied spirits of POKéMON\n"
+ .string "must find solace here...\p"
+ .string "Is it coincidence that you are here...\p"
+ .string "Will you hear out my tale? A tale long\n"
+ .string "told in the HOENN region?$"
+
+MtPyre_Summit_Text_1B65D6:: @ 81B65D6
+ .string "It happened long, long ago...\p"
+ .string "The world was wracked by a ferocious\n"
+ .string "clash between the POKéMON of the land\l"
+ .string "and the POKéMON of the sea...\p"
+ .string "The POKéMON of the land raised\n"
+ .string "mountains and created continents...\p"
+ .string "The POKéMON of the sea raised huge\n"
+ .string "waves and carved out oceans...\p"
+ .string "Their fierce duel raged without end.\p"
+ .string "The world was engulfed in vicious\n"
+ .string "storms and massive infernos.\p"
+ .string "The RED ORB and the BLUE ORB brought\n"
+ .string "an end to the calamity.\p"
+ .string "Light poured from the two ORBS and\n"
+ .string "becalmed the enraged adversaries.\p"
+ .string "The pair, made docile, burrowed deep\n"
+ .string "under the ground where eventually\l"
+ .string "they disappeared...$"
+
+MtPyre_Summit_Text_1B6823:: @ 81B6823
+ .string "I see...\n"
+ .string "Well, that, too, is fine...$"
+
+MtPyre_Summit_Text_1B6848:: @ 81B6848
+ .string "MAXIE: You...\n"
+ .string "So you stopped GROUDON...\p"
+ .string "I shouldn’t be surprised...\p"
+ .string "I understand now that humans cannot\n"
+ .string "freely control the balance between\l"
+ .string "the land and the sea...\p"
+ .string "So I have come to return the\n"
+ .string "BLUE ORB...\p"
+ .string "I doubt that we will cross paths again...\n"
+ .string "Farewell...$"
+
diff --git a/data/maps/text/NewMauville_Entrance.s b/data/maps/text/NewMauville_Entrance.s
new file mode 100644
index 000000000..070e9cdec
--- /dev/null
+++ b/data/maps/text/NewMauville_Entrance.s
@@ -0,0 +1,10 @@
+NewMauville_Entrance_Text_1982C0:: @ 81982C0
+ .string "The door is closed.$"
+
+NewMauville_Entrance_Text_1982D4:: @ 81982D4
+ .string "Use the BASEMENT KEY?$"
+
+NewMauville_Entrance_Text_1982EA:: @ 81982EA
+ .string "{PLAYER} used the BASEMENT KEY.\p"
+ .string "The door opened!$"
+
diff --git a/data/maps/text/NewMauville_Inside.s b/data/maps/text/NewMauville_Inside.s
new file mode 100644
index 000000000..982e1a004
--- /dev/null
+++ b/data/maps/text/NewMauville_Inside.s
@@ -0,0 +1,17 @@
+NewMauville_Inside_Text_198315:: @ 8198315
+ .string "The generator is radiating heat that\n"
+ .string "can be felt even at a distance.\p"
+ .string "It looks like it should be turned off\n"
+ .string "as soon as possible.$"
+
+NewMauville_Inside_Text_198395:: @ 8198395
+ .string "The generator quieted down.$"
+
+NewMauville_Inside_Text_1983B1:: @ 81983B1
+ .string "{PLAYER} stepped on the switch.\p"
+ .string "Click...\p"
+ .string "... ... ... ... ... ... ... ...\n"
+ .string "... ... ... ... ... ... ... ...\p"
+ .string "The generator appears to have\n"
+ .string "stopped...$"
+
diff --git a/data/maps/text/OldaleTown.s b/data/maps/text/OldaleTown.s
new file mode 100644
index 000000000..349d9b480
--- /dev/null
+++ b/data/maps/text/OldaleTown.s
@@ -0,0 +1,56 @@
+OldaleTown_Text_16AEC0:: @ 816AEC0
+ .string "I want to take a rest, so I’m saving my\n"
+ .string "progress.$"
+
+OldaleTown_Text_16AEF2:: @ 816AEF2
+ .string "Hi!\n"
+ .string "I work at a POKéMON MART.\p"
+ .string "Can I get you to come with me?$"
+
+OldaleTown_Text_16AF2F:: @ 816AF2F
+ .string "This is a POKéMON MART.\n"
+ .string "Just look for our blue roof.\p"
+ .string "We sell a variety of goods including\n"
+ .string "POKé BALLS for catching POKéMON.\p"
+ .string "Here, I’d like you to have this as a\n"
+ .string "promotional item.$"
+
+OldaleTown_Text_16AFE1:: @ 816AFE1
+ .string "A POTION can be used anytime, so it’s\n"
+ .string "even more useful than a POKéMON CENTER\l"
+ .string "in certain situations.$"
+
+OldaleTown_Text_16B045:: @ 816B045
+ .string "Aaaaah! Wait!\n"
+ .string "Please don’t come in here.\p"
+ .string "I just discovered the footprints of\n"
+ .string "a rare POKéMON!\p"
+ .string "Wait until I finish sketching\n"
+ .string "them, okay?$"
+
+OldaleTown_Text_16B0CC:: @ 816B0CC
+ .string "I just discovered the footprints of\n"
+ .string "a rare POKéMON!\p"
+ .string "Wait until I finish sketching\n"
+ .string "them, okay?$"
+
+OldaleTown_Text_16B12A:: @ 816B12A
+ .string "I finished sketching the footprints of\n"
+ .string "a rare POKéMON.\p"
+ .string "But it turns out they were only my\n"
+ .string "own footprints...$"
+
+OldaleTown_Text_16B196:: @ 816B196
+ .string "MAY: {PLAYER}{KUN}!\n"
+ .string "Over here!\l"
+ .string "Let’s hurry home!$"
+
+OldaleTown_Text_16B1BE:: @ 816B1BE
+ .string "BRENDAN: I’m heading back to my dad’s\n"
+ .string "LAB now.\l"
+ .string "{PLAYER}, you should hustle back, too.$"
+
+OldaleTown_Text_16B20E:: @ 816B20E
+ .string "OLDALE TOWN\n"
+ .string "“Where things start off scarce.”$"
+
diff --git a/data/maps/text/OldaleTown_House1.s b/data/maps/text/OldaleTown_House1.s
new file mode 100644
index 000000000..f153339eb
--- /dev/null
+++ b/data/maps/text/OldaleTown_House1.s
@@ -0,0 +1,8 @@
+OldaleTown_House1_Text_17476D:: @ 817476D
+ .string "When a POKéMON battle starts, the one\n"
+ .string "at the left of the list goes out first.\p"
+ .string "So, when you get more POKéMON in your\n"
+ .string "party, try switching around the order\l"
+ .string "of your POKéMON.\p"
+ .string "It could give you an advantage.$"
+
diff --git a/data/maps/text/OldaleTown_House2.s b/data/maps/text/OldaleTown_House2.s
new file mode 100644
index 000000000..a4cb72254
--- /dev/null
+++ b/data/maps/text/OldaleTown_House2.s
@@ -0,0 +1,9 @@
+OldaleTown_House2_Text_174838:: @ 8174838
+ .string "When POKéMON battle, they eventually\n"
+ .string "level up and become stronger.$"
+
+OldaleTown_House2_Text_17487B:: @ 817487B
+ .string "If the POKéMON with you become\n"
+ .string "stronger, you’ll be able to go farther\l"
+ .string "away from here.$"
+
diff --git a/data/maps/text/OldaleTown_Mart.s b/data/maps/text/OldaleTown_Mart.s
new file mode 100644
index 000000000..71e0a0513
--- /dev/null
+++ b/data/maps/text/OldaleTown_Mart.s
@@ -0,0 +1,14 @@
+OldaleTown_Mart_Text_174A8A:: @ 8174A8A
+ .string "The clerk says they’re all sold out.\n"
+ .string "I can’t buy any POKé BALLS.$"
+
+OldaleTown_Mart_Text_174ACB:: @ 8174ACB
+ .string "I’m going to buy a bunch of POKé BALLS\n"
+ .string "and catch a bunch of POKéMON!$"
+
+OldaleTown_Mart_Text_174B10:: @ 8174B10
+ .string "If a POKéMON gets hurt and loses its HP\n"
+ .string "and faints, it won’t be able to battle.\p"
+ .string "To prevent your POKéMON from fainting,\n"
+ .string "restore its HP with a POTION.$"
+
diff --git a/data/maps/text/OldaleTown_PokemonCenter_1F.s b/data/maps/text/OldaleTown_PokemonCenter_1F.s
new file mode 100644
index 000000000..5b3f1f674
--- /dev/null
+++ b/data/maps/text/OldaleTown_PokemonCenter_1F.s
@@ -0,0 +1,23 @@
+OldaleTown_PokemonCenter_1F_Text_1748D1:: @ 81748D1
+ .string "That PC in the corner there is\n"
+ .string "for any POKéMON TRAINER to use.\p"
+ .string "Naturally, that means you’re welcome\n"
+ .string "to use it, too.$"
+
+OldaleTown_PokemonCenter_1F_Text_174945:: @ 8174945
+ .string "POKéMON CENTERS are great!\p"
+ .string "You can use their services as much\n"
+ .string "as you like, and it’s all for free.\l"
+ .string "You never have to worry!$"
+
+OldaleTown_PokemonCenter_1F_Text_1749C0:: @ 81749C0
+ .string "The POKéMON CABLE CLUB on the second\n"
+ .string "floor was built recently.\p"
+ .string "But they say they’re still making\n"
+ .string "adjustments.$"
+
+OldaleTown_PokemonCenter_1F_Text_174A2E:: @ 8174A2E
+ .string "The POKéMON CABLE CLUB on the second\n"
+ .string "floor was built recently.\p"
+ .string "I traded POKéMON right away.$"
+
diff --git a/data/maps/text/OldaleTown_PokemonCenter_2F.s b/data/maps/text/OldaleTown_PokemonCenter_2F.s
new file mode 100644
index 000000000..78a02ffbe
--- /dev/null
+++ b/data/maps/text/OldaleTown_PokemonCenter_2F.s
@@ -0,0 +1,12 @@
+OldaleTown_PokemonCenter_2F_Text_1A13DF:: @ 81A13DF
+ .string "I’m terribly sorry. The COLOSSEUM\n"
+ .string "is undergoing adjustments.$"
+
+OldaleTown_PokemonCenter_2F_Text_1A141C:: @ 81A141C
+ .string "I’m terribly sorry. The TRADE CENTER\n"
+ .string "is undergoing inspections.$"
+
+OldaleTown_PokemonCenter_2F_Text_1A145C:: @ 81A145C
+ .string "I’m terribly sorry. The RECORD CORNER\n"
+ .string "is under preparation.$"
+
diff --git a/data/maps/text/PacifidlogTown.s b/data/maps/text/PacifidlogTown.s
new file mode 100644
index 000000000..9f67efa9e
--- /dev/null
+++ b/data/maps/text/PacifidlogTown.s
@@ -0,0 +1,20 @@
+PacifidlogTown_Text_16CFC5:: @ 816CFC5
+ .string "The sea between PACIFIDLOG and\n"
+ .string "SLATEPORT has a fast-running tide.\p"
+ .string "If you decide to SURF, you could end\n"
+ .string "up swept away somewhere else.$"
+
+PacifidlogTown_Text_16D04A:: @ 816D04A
+ .string "See, isn’t it neat?\n"
+ .string "These houses are on water!\p"
+ .string "I was born here!$"
+
+PacifidlogTown_Text_16D08A:: @ 816D08A
+ .string "The folks of PACIFIDLOG all fish and\n"
+ .string "dive as part of the lifestyle.$"
+
+PacifidlogTown_Text_16D0CE:: @ 816D0CE
+ .string "PACIFIDLOG TOWN\p"
+ .string "“Where the morning sun smiles upon\n"
+ .string "the waters.”$"
+
diff --git a/data/maps/text/PacifidlogTown_House1.s b/data/maps/text/PacifidlogTown_House1.s
new file mode 100644
index 000000000..7c3e3afd4
--- /dev/null
+++ b/data/maps/text/PacifidlogTown_House1.s
@@ -0,0 +1,14 @@
+PacifidlogTown_House1_Text_178F9F:: @ 8178F9F
+ .string "In the HOENN region, there are three\n"
+ .string "POKéMON that represent the power of\l"
+ .string "rock, ice, and steel.\p"
+ .string "Each of them is said to hide away deep\n"
+ .string "inside caves.\p"
+ .string "That’s the story I heard when I was\n"
+ .string "just a little kid.$"
+
+PacifidlogTown_House1_Text_17906A:: @ 817906A
+ .string "“Six dots open three doors.”\p"
+ .string "Grandpa used to say that, but I don’t\n"
+ .string "know what he meant.$"
+
diff --git a/data/maps/text/PacifidlogTown_House2.s b/data/maps/text/PacifidlogTown_House2.s
new file mode 100644
index 000000000..0e56cea1c
--- /dev/null
+++ b/data/maps/text/PacifidlogTown_House2.s
@@ -0,0 +1,55 @@
+PacifidlogTown_House2_Text_1790C1:: @ 81790C1
+ .string "Er-hem!\p"
+ .string "I am the POKéMON FAN CLUB’s most\n"
+ .string "important person, the CHAIRMAN’s\l"
+ .string "younger brother.\p"
+ .string "I’m here enjoying my vacation with\n"
+ .string "POKéMON, yes, indeed.$"
+
+PacifidlogTown_House2_Text_179155:: @ 8179155
+ .string "Ah!\n"
+ .string "Your POKéMON...$"
+
+PacifidlogTown_House2_Text_179169:: @ 8179169
+ .string "It clearly likes you very much.\p"
+ .string "A POKéMON that adoring and adorable\n"
+ .string "deserves a TM like this, no?$"
+
+PacifidlogTown_House2_Text_1791CA:: @ 81791CA
+ .string "Hmm...\n"
+ .string "It’s not bad, but it’s also not good.\p"
+ .string "You, as the TRAINER, need to put in\n"
+ .string "some more effort.$"
+
+PacifidlogTown_House2_Text_17922D:: @ 817922D
+ .string "It has a vicious look to it.\p"
+ .string "A frightening POKéMON like that\n"
+ .string "deserves a TM like this.$"
+
+PacifidlogTown_House2_Text_179283:: @ 8179283
+ .string "If a POKéMON likes you a lot, RETURN’s\n"
+ .string "power is enhanced.\p"
+ .string "If it doesn’t like you, FRUSTRATION’s\n"
+ .string "power goes up.$"
+
+PacifidlogTown_House2_Text_1792F2:: @ 81792F2
+ .string "Oh, yes. In about {STR_VAR_1} or so days,\n"
+ .string "I should be getting a good TM or two.\p"
+ .string "You should come see me then.\n"
+ .string "I’ll give you a TM that’s suitable for\l"
+ .string "your POKéMON.$"
+
+PacifidlogTown_House2_Text_17938B:: @ 817938B
+ .string "AZURILL: Rurii.$"
+
+PacifidlogTown_House2_Text_17939B:: @ 817939B
+ .string "It appears to be very friendly with the\n"
+ .string "TRAINER.$"
+
+PacifidlogTown_House2_Text_1793CC:: @ 81793CC
+ .string "AZURILL: Rururi!$"
+
+PacifidlogTown_House2_Text_1793DD:: @ 81793DD
+ .string "It doesn’t appear to like the TRAINER\n"
+ .string "very much.$"
+
diff --git a/data/maps/text/PacifidlogTown_House3.s b/data/maps/text/PacifidlogTown_House3.s
new file mode 100644
index 000000000..0dba3cca4
--- /dev/null
+++ b/data/maps/text/PacifidlogTown_House3.s
@@ -0,0 +1,28 @@
+PacifidlogTown_House3_Text_17940E:: @ 817940E
+ .string "Hello, TRAINER. Would you do me a favor\n"
+ .string "and trade POKéMON with me?\p"
+ .string "Living in PACIFIDLOG, I can only catch\n"
+ .string "certain kinds of POKéMON.\p"
+ .string "{STR_VAR_1}? Do you have one?\n"
+ .string "I’ll trade you my {STR_VAR_2} for it.$"
+
+PacifidlogTown_House3_Text_1794C4:: @ 81794C4
+ .string "Wow!\n"
+ .string "This {STR_VAR_1} is so fluffy!$"
+
+PacifidlogTown_House3_Text_1794DF:: @ 81794DF
+ .string "That’s no {STR_VAR_1}.$"
+
+PacifidlogTown_House3_Text_1794ED:: @ 81794ED
+ .string "I’m a little disappointed...$"
+
+PacifidlogTown_House3_Text_17950A:: @ 817950A
+ .string "Since we traded, you and me,\n"
+ .string "we’re friends, aren’t we?$"
+
+PacifidlogTown_House3_Text_179541:: @ 8179541
+ .string "Is that a POKéDEX?\p"
+ .string "Did you get to meet a lot of different\n"
+ .string "POKéMON?\p"
+ .string "I wish I was like you.$"
+
diff --git a/data/maps/text/PacifidlogTown_House4.s b/data/maps/text/PacifidlogTown_House4.s
new file mode 100644
index 000000000..a5cb340f8
--- /dev/null
+++ b/data/maps/text/PacifidlogTown_House4.s
@@ -0,0 +1,24 @@
+PacifidlogTown_House4_Text_17959B:: @ 817959B
+ .string "People were saying they saw a POKéMON\n"
+ .string "FLYING high above HOENN.\p"
+ .string "Is it FLYING around all the time?\n"
+ .string "Doesn’t it need to rest somewhere?$"
+
+PacifidlogTown_House4_Text_17961F:: @ 817961F
+ .string "A sky POKéMON!\n"
+ .string "A sky POKéMON!$"
+
+PacifidlogTown_House4_Text_17963D:: @ 817963D
+ .string "Where did you come from?$"
+
+PacifidlogTown_House4_Text_179656:: @ 8179656
+ .string "Yes?\n"
+ .string "YES TOWN?\p"
+ .string "I’ve never heard of a place like that.$"
+
+PacifidlogTown_House4_Text_17968C:: @ 817968C
+ .string "No? That doesn’t make any sense.\n"
+ .string "You have to come from somewhere.\p"
+ .string "Oh! Wait! You’re not going to say you\n"
+ .string "were born at the bottom of the sea?$"
+
diff --git a/data/maps/text/PacifidlogTown_House5.s b/data/maps/text/PacifidlogTown_House5.s
new file mode 100644
index 000000000..ece3aca2e
--- /dev/null
+++ b/data/maps/text/PacifidlogTown_House5.s
@@ -0,0 +1,15 @@
+PacifidlogTown_House5_Text_179718:: @ 8179718
+ .string "I can’t see MIRAGE ISLAND today...$"
+
+PacifidlogTown_House5_Text_17973B:: @ 817973B
+ .string "Oh! Oh my!\n"
+ .string "I can see MIRAGE ISLAND today!$"
+
+PacifidlogTown_House5_Text_179765:: @ 8179765
+ .string "MIRAGE ISLAND...\p"
+ .string "It must become visible and invisible\n"
+ .string "depending on the weather conditions\l"
+ .string "that make mirages appear.\p"
+ .string "Or is it really appearing and\n"
+ .string "disappearing?$"
+
diff --git a/data/maps/text/PacifidlogTown_PokemonCenter_1F.s b/data/maps/text/PacifidlogTown_PokemonCenter_1F.s
new file mode 100644
index 000000000..6ded1de17
--- /dev/null
+++ b/data/maps/text/PacifidlogTown_PokemonCenter_1F.s
@@ -0,0 +1,18 @@
+PacifidlogTown_PokemonCenter_1F_Text_178E47:: @ 8178E47
+ .string "What color is your TRAINER’S CARD?\n"
+ .string "Mine’s copper!$"
+
+PacifidlogTown_PokemonCenter_1F_Text_178E79:: @ 8178E79
+ .string "PACIFIDLOG TOWN floats on top of\n"
+ .string "a colony of CORSOLA.\p"
+ .string "If I told you that, would you believe me?$"
+
+PacifidlogTown_PokemonCenter_1F_Text_178ED9:: @ 8178ED9
+ .string "The ancestors of the people in\n"
+ .string "PACIFIDLOG were said to have been\l"
+ .string "born on boats and then lived and died \l"
+ .string "aboard them.\p"
+ .string "I understand that they lived that way\n"
+ .string "because they were searching for\l"
+ .string "something.$"
+
diff --git a/data/maps/text/PetalburgCity.s b/data/maps/text/PetalburgCity.s
new file mode 100644
index 000000000..62b4423dc
--- /dev/null
+++ b/data/maps/text/PetalburgCity.s
@@ -0,0 +1,45 @@
+PetalburgCity_Text_16433E:: @ 816433E
+ .string "Where has our WALLY gone?\p"
+ .string "We have to leave for VERDANTURF TOWN\n"
+ .string "very soon...$"
+
+PetalburgCity_Text_16438A:: @ 816438A
+ .string "Hiya! Are you maybe...\n"
+ .string "A rookie TRAINER?\p"
+ .string "Do you know what POKéMON TRAINERS\n"
+ .string "do when they reach a new town?\p"
+ .string "They first check what kind of GYM\n"
+ .string "is in the town.$"
+
+PetalburgCity_Text_164426:: @ 8164426
+ .string "See? This is PETALBURG CITY’s GYM.$"
+
+PetalburgCity_Text_164449:: @ 8164449
+ .string "This is the GYM’s sign. Look for it\n"
+ .string "whenever you’re looking for a GYM.$"
+
+PetalburgCity_Text_164490:: @ 8164490
+ .string "My face is reflected in the water.\p"
+ .string "It’s a shining grin full of hope...\p"
+ .string "Or it could be a look of somber silence\n"
+ .string "struggling with fear...\p"
+ .string "What do you see reflected in your face?$"
+
+PetalburgCity_Text_16453F:: @ 816453F
+ .string "Let’s say you have six POKéMON.\n"
+ .string "If you catch another one...\p"
+ .string "It is automatically sent to a STORAGE\n"
+ .string "BOX over a PC connection.$"
+
+PetalburgCity_Text_1645BB:: @ 81645BB
+ .string "PETALBURG CITY POKéMON GYM\n"
+ .string "LEADER: NORMAN\l"
+ .string "“A man in pursuit of power!”$"
+
+PetalburgCity_Text_164602:: @ 8164602
+ .string "PETALBURG CITY\n"
+ .string "“Where people mingle with nature.”$"
+
+PetalburgCity_Text_164634:: @ 8164634
+ .string "WALLY’S HOUSE$"
+
diff --git a/data/maps/text/PetalburgCity_Gym.s b/data/maps/text/PetalburgCity_Gym.s
new file mode 100644
index 000000000..041f22a9d
--- /dev/null
+++ b/data/maps/text/PetalburgCity_Gym.s
@@ -0,0 +1,410 @@
+PetalburgCity_Gym_Text_179DF6:: @ 8179DF6
+ .string "DAD: Hm?\p"
+ .string "Well, if it isn’t {PLAYER}!\n"
+ .string "So you’re all finished moving in?\p"
+ .string "I’m surprised that you managed to\n"
+ .string "get here by yourself.\p"
+ .string "Oh, I see.\n"
+ .string "You’re with your POKéMON.\p"
+ .string "Hm... Then I guess you’re going to\n"
+ .string "become a TRAINER like me, {PLAYER}.\p"
+ .string "That’s great news!\n"
+ .string "I’ll be looking forward to it!$"
+
+PetalburgCity_Gym_Text_179F07:: @ 8179F07
+ .string "Um... I... I’d like to get a\n"
+ .string "POKéMON, please...$"
+
+PetalburgCity_Gym_Text_179F37:: @ 8179F37
+ .string "DAD: Hm? You’re... Uh... Oh, right.\n"
+ .string "You’re WALLY, right?$"
+
+PetalburgCity_Gym_Text_179F70:: @ 8179F70
+ .string "WALLY: I’m going to go stay with my\n"
+ .string "relatives in VERDANTURF TOWN.\p"
+ .string "I thought I would be lonely by myself,\n"
+ .string "so I wanted to take a POKéMON along.\p"
+ .string "But I’ve never caught a POKéMON before.\n"
+ .string "I don’t know how...$"
+
+PetalburgCity_Gym_Text_17A03A:: @ 817A03A
+ .string "DAD: Hm. I see.$"
+
+PetalburgCity_Gym_Text_17A04A:: @ 817A04A
+ .string "DAD: {PLAYER}, you heard that,\n"
+ .string "right?\p"
+ .string "Go with WALLY and make sure that he\n"
+ .string "safely catches a POKéMON.$"
+
+PetalburgCity_Gym_Text_17A0A8:: @ 817A0A8
+ .string "WALLY, here, I’ll loan you my POKéMON.\p"
+ .string "WALLY received a ZIGZAGOON!$"
+
+PetalburgCity_Gym_Text_17A0EB:: @ 817A0EB
+ .string "WALLY: Oh, wow!\n"
+ .string "A POKéMON!\p"
+ .string "DAD: Hm. I’ll give you a POKé BALL, too.\n"
+ .string "Go for it!\p"
+ .string "WALLY received a POKé BALL!$"
+
+PetalburgCity_Gym_Text_17A156:: @ 817A156
+ .string "WALLY: Oh, wow!\n"
+ .string "Thank you!$"
+
+PetalburgCity_Gym_Text_17A171:: @ 817A171
+ .string "{PLAYER}... Would you really come\n"
+ .string "with me?$"
+
+PetalburgCity_Gym_Text_17A196:: @ 817A196
+ .string "DAD: So, did it work out?$"
+
+PetalburgCity_Gym_Text_17A1B0:: @ 817A1B0
+ .string "WALLY: Thank you, yes, it did.\n"
+ .string "Here’s your POKéMON back.\p"
+ .string "{PLAYER}, thank you for coming along\n"
+ .string "with me.\p"
+ .string "You two are why I was able to catch\n"
+ .string "my POKéMON.\p"
+ .string "I promise I’ll take really good\n"
+ .string "care of it.\p"
+ .string "Oh! My mom’s waiting for me, so I\n"
+ .string "have to go!\p"
+ .string "Bye, {PLAYER}!$"
+
+PetalburgCity_Gym_Text_17A2A4:: @ 817A2A4
+ .string "DAD: Now...\p"
+ .string "{PLAYER}, if you want to become a\n"
+ .string "strong TRAINER, here’s my advice.\p"
+ .string "Head for RUSTBORO CITY beyond this\n"
+ .string "town.\p"
+ .string "There, you should challenge the GYM\n"
+ .string "LEADER, ROXANNE.\p"
+ .string "After her, go on to other POKéMON\n"
+ .string "GYMS and defeat their LEADERS.\p"
+ .string "Collect BADGES from them,\n"
+ .string "understood?\p"
+ .string "Of course, I’m a GYM LEADER, too.\n"
+ .string "We’ll battle one day, {PLAYER}.\p"
+ .string "But that’s only after you become\n"
+ .string "stronger, {PLAYER}.$"
+
+PetalburgCity_Gym_Text_17A41E:: @ 817A41E
+ .string "DAD: Hm? Aren’t you going to the\n"
+ .string "POKéMON GYM in RUSTBORO CITY?\p"
+ .string "There’s no challenge for me to\n"
+ .string "battle a greenhorn TRAINER.\p"
+ .string "{PLAYER}, I want you to challenge me\n"
+ .string "when you become a lot stronger.\p"
+ .string "I’ll battle you, {PLAYER}, when you\n"
+ .string "can show me four GYM BADGES, okay?$"
+
+PetalburgCity_Gym_Text_17A518:: @ 817A518
+ .string "DAD: I see... So, you’ve beaten the\n"
+ .string "GYM LEADER in RUSTBORO CITY.\p"
+ .string "But there are many more TRAINERS\n"
+ .string "who are stronger than you, {PLAYER}.\p"
+ .string "Across the sea in DEWFORD TOWN is a\n"
+ .string "GYM LEADER named BRAWLY.\p"
+ .string "You should go challenge him.$"
+
+PetalburgCity_Gym_Text_17A5F3:: @ 817A5F3
+ .string "DAD: Hm... {PLAYER}, you have gotten\n"
+ .string "stronger.\p"
+ .string "I can tell by the number of BADGES\n"
+ .string "that you’ve earned.$"
+
+PetalburgCity_Gym_Text_17A653:: @ 817A653
+ .string "DAD: Hm...\n"
+ .string "So, you did get four GYM BADGES.\p"
+ .string "Fine, as I promised, we will have a\n"
+ .string "POKéMON battle.\p"
+ .string "{PLAYER}...\p"
+ .string "I’m so happy that I can have a \n"
+ .string "real battle with my own child.\p"
+ .string "But, a battle is a battle!\p"
+ .string "I will do everything in my power as\n"
+ .string "a GYM LEADER to win.\p"
+ .string "{PLAYER}, you’d better give it your\n"
+ .string "best shot, too!$"
+
+PetalburgCity_Gym_Text_17A77A:: @ 817A77A
+ .string "...\p"
+ .string "I... I can’t...\p"
+ .string "I can’t believe it. {PLAYER}...\p"
+ .string "I lost to {PLAYER}?\p"
+ .string "But, rules are rules!\n"
+ .string "Here, take this.$"
+
+PetalburgCity_Gym_Text_17A7DD:: @ 817A7DD
+ .string "{PLAYER} received the BALANCE BADGE\n"
+ .string "from DAD!$"
+
+PetalburgCity_Gym_Text_17A805:: @ 817A805
+ .string "DAD: With that BADGE, the DEFENSE\n"
+ .string "of all your POKéMON will increase.\p"
+ .string "POKéMON that know the HM move SURF\n"
+ .string "will be able to travel over water.\p"
+ .string "This is my gift to you. {PLAYER}, I’m\n"
+ .string "sure you can use it correctly.$"
+
+PetalburgCity_Gym_Text_17A8CF:: @ 817A8CF
+ .string "DAD: TM42 contains FACADE.\p"
+ .string "It doubles the power of moves if\n"
+ .string "the POKéMON is poisoned, paralyzed,\l"
+ .string "or burned.\p"
+ .string "It might be able to turn a bad\n"
+ .string "situation into an advantage.$"
+
+PetalburgCity_Gym_Text_17A976:: @ 817A976
+ .string "DAD: As the GYM LEADER, I can’t\n"
+ .string "express how upset I am...\p"
+ .string "But as a father, it makes me both\n"
+ .string "happy and a little sad. It’s odd...$"
+
+PetalburgCity_Gym_Text_17A9F6:: @ 817A9F6
+ .string "DAD: Oh, yes...\p"
+ .string "WALLY’s parents came calling\n"
+ .string "earlier.\p"
+ .string "They said that they had something\n"
+ .string "they wanted to give you, {PLAYER}.$"
+
+PetalburgCity_Gym_Text_17AA6B:: @ 817AA6B
+ .string "DAD: {PLAYER}, you should go visit\n"
+ .string "your mother every so often.\p"
+ .string "I’m going to stay here and redouble\n"
+ .string "my training.\p"
+ .string "It would bother me as a TRAINER to\n"
+ .string "not avenge my loss to you, {PLAYER}!$"
+
+PetalburgCity_Gym_Text_17AB17:: @ 817AB17
+ .string "DAD: {PLAYER}, how are things going?\p"
+ .string "The world of POKéMON is deep.\p"
+ .string "I honestly think that no amount of\n"
+ .string "training would ever be enough.$"
+
+PetalburgCity_Gym_Text_17AB96:: @ 817AB96
+ .string "Hey, how’s it going, CHAMPION-\n"
+ .string "bound {PLAYER}?\p"
+ .string "The doors in this GYM open when you\n"
+ .string "beat the awaiting TRAINERS.\p"
+ .string "Whoops! The doors in this room are\n"
+ .string "already open, so don’t attack me!\p"
+ .string "The TRAINERS of PETALBURG GYM use\n"
+ .string "all kinds of items.\p"
+ .string "The door at the left leads to the\n"
+ .string "SPEED ROOM.\p"
+ .string "The door at the right leads to the\n"
+ .string "ACCURACY ROOM.\p"
+ .string "The room’s name will be on the\n"
+ .string "door, so choose carefully.\p"
+ .string "Once you’ve chosen the door...\n"
+ .string "Well, hey, go for it!$"
+
+PetalburgCity_Gym_Text_17AD49:: @ 817AD49
+ .string "{PLAYER}! Whoa! You’ve overcome even\n"
+ .string "your own father!\p"
+ .string "Like, whoa!\n"
+ .string "What a stunning turn of events!$"
+
+PetalburgCity_Gym_Text_17ADA5:: @ 817ADA5
+ .string "The ability to attack before the\n"
+ .string "opponent...\p"
+ .string "Just that alone puts me at a great\n"
+ .string "advantage, don’t you agree?$"
+
+PetalburgCity_Gym_Text_17AE11:: @ 817AE11
+ .string "That was a magnificent battle!$"
+
+PetalburgCity_Gym_Text_17AE30:: @ 817AE30
+ .string "Go on to the next room where a new\n"
+ .string "challenge awaits you.\p"
+ .string "At the left is the ZERO REDUCTION\n"
+ .string "ROOM.\p"
+ .string "The right door leads to the DEFENSE\n"
+ .string "ROOM.$"
+
+PetalburgCity_Gym_Text_17AEBB:: @ 817AEBB
+ .string "Whomever you beat, and whomever you\n"
+ .string "may lose to, you never shirk from\l"
+ .string "training yourself and your POKéMON.\p"
+ .string "That’s what I think being a\n"
+ .string "GYM LEADER is all about.$"
+
+PetalburgCity_Gym_Text_17AF5A:: @ 817AF5A
+ .string "Don’t waste your time trying to\n"
+ .string "lower my POKéMON’s abilities!$"
+
+PetalburgCity_Gym_Text_17AF98:: @ 817AF98
+ .string "My POKéMON’s abilities weren’t\n"
+ .string "harmed, but I still lost...$"
+
+PetalburgCity_Gym_Text_17AFD3:: @ 817AFD3
+ .string "The next room is the STRENGTH ROOM.\n"
+ .string "Can you withstand brute force?$"
+
+PetalburgCity_Gym_Text_17B016:: @ 817B016
+ .string "After you beat our LEADER, the\n"
+ .string "training has become a lot tougher.$"
+
+PetalburgCity_Gym_Text_17B058:: @ 817B058
+ .string "Just when you think you’re going to\n"
+ .string "win, your opponent restores HP...\p"
+ .string "Can you just imagine how awful that\n"
+ .string "must feel?\p"
+ .string "I’ll show you exactly how awful it\n"
+ .string "feels!$"
+
+PetalburgCity_Gym_Text_17B0F7:: @ 817B0F7
+ .string "I couldn’t restore HP enough...\n"
+ .string "What ATTACK power...$"
+
+PetalburgCity_Gym_Text_17B12C:: @ 817B12C
+ .string "I should have expected no less from\n"
+ .string "our LEADER’s kid.\p"
+ .string "No, wait! A TRAINER’s abilities are\n"
+ .string "earned only through effort.\p"
+ .string "I lost because my own efforts\n"
+ .string "weren’t enough.\p"
+ .string "Go on! The ONE-HIT KO ROOM is next.$"
+
+PetalburgCity_Gym_Text_17B1F4:: @ 817B1F4
+ .string "I’m going to keep training at GYMS.\n"
+ .string "One day, I’ll become a LEADER.$"
+
+PetalburgCity_Gym_Text_17B237:: @ 817B237
+ .string "I’m not going to take it easy just\n"
+ .string "because you’re our LEADER’s kid.\p"
+ .string "I’ll show you how horrid it is for\n"
+ .string "a POKéMON to take a critical hit!$"
+
+PetalburgCity_Gym_Text_17B2C0:: @ 817B2C0
+ .string "Your power...\n"
+ .string "You’re the real deal.$"
+
+PetalburgCity_Gym_Text_17B2E4:: @ 817B2E4
+ .string "Your father really is strong. He’s\n"
+ .string "a TRAINER worth my respect.\p"
+ .string "And, I sense the same glow coming\n"
+ .string "from you as your father.\p"
+ .string "I hope that you’ll stage a terrific\n"
+ .string "battle with your father!$"
+
+PetalburgCity_Gym_Text_17B39B:: @ 817B39B
+ .string "Since your dad became the LEADER,\n"
+ .string "the TRAINERS of PETALBURG CITY have\l"
+ .string "become a lot tougher.$"
+
+PetalburgCity_Gym_Text_17B3F7:: @ 817B3F7
+ .string "Giggle...\n"
+ .string "This is the ACCURACY ROOM.\p"
+ .string "It’s pretty nasty when every attack\n"
+ .string "lands without fail.$"
+
+PetalburgCity_Gym_Text_17B454:: @ 817B454
+ .string "You were a cut above me...$"
+
+PetalburgCity_Gym_Text_17B46F:: @ 817B46F
+ .string "There are some even stronger\n"
+ .string "TRAINERS waiting for you.\p"
+ .string "The left is the DEFENSE ROOM, and\n"
+ .string "the right is the RECOVERY ROOM.\p"
+ .string "Your POKéMON’s ATTACK power will be\n"
+ .string "on trial either way.$"
+
+PetalburgCity_Gym_Text_17B521:: @ 817B521
+ .string "Do you know what we’re trying to\n"
+ .string "achieve as TRAINERS?\p"
+ .string "We’re striving to become soul mates\n"
+ .string "with our POKéMON.$"
+
+PetalburgCity_Gym_Text_17B58D:: @ 817B58D
+ .string "The higher the DEFENSE, the more\n"
+ .string "reckless I can be in attack.$"
+
+PetalburgCity_Gym_Text_17B5CB:: @ 817B5CB
+ .string "Our defenses weren’t enough...$"
+
+PetalburgCity_Gym_Text_17B5EA:: @ 817B5EA
+ .string "I think you’ve taught me a valuable\n"
+ .string "lesson here.\p"
+ .string "Now, go on! The left door goes to\n"
+ .string "the STRENGTH ROOM.\p"
+ .string "The right door opens to the\n"
+ .string "ONE-HIT KO ROOM.\p"
+ .string "Both of them have TRAINERS who are\n"
+ .string "offensively skilled.$"
+
+PetalburgCity_Gym_Text_17B6B5:: @ 817B6B5
+ .string "Hi! Have you tried using SURF?$"
+
+PetalburgCity_Gym_Text_17B6D4:: @ 817B6D4
+ .string "Our GYM LEADER told us to go all out\n"
+ .string "and beat you.\p"
+ .string "Even if you happen to be the\n"
+ .string "LEADER’s kid!$"
+
+PetalburgCity_Gym_Text_17B732:: @ 817B732
+ .string "But... I went all out!$"
+
+PetalburgCity_Gym_Text_17B749:: @ 817B749
+ .string "The way you use your POKéMON...\n"
+ .string "It’s like your father’s style.\p"
+ .string "Go on through! The GYM LEADER, your\n"
+ .string "father, is waiting!$"
+
+PetalburgCity_Gym_Text_17B7C0:: @ 817B7C0
+ .string "Sure, it’s fine to make your POKéMON\n"
+ .string "stronger.\p"
+ .string "But what decides the winner?\p"
+ .string "Why, it’s the feelings TRAINERS have for\n"
+ .string "their POKéMON.$"
+
+PetalburgCity_Gym_Text_17B844:: @ 817B844
+ .string "This door appears to be locked\n"
+ .string "right now...$"
+
+PetalburgCity_Gym_Text_17B870:: @ 817B870
+ .string "“SPEED ROOM,” the sign says.\p"
+ .string "Do you want to go through?$"
+
+ .incbin "baserom.gba", 0x17b8a8, 0x2c
+
+PetalburgCity_Gym_Text_17B8D4:: @ 817B8D4
+ .string "“ACCURACY ROOM,” the sign says.\p"
+ .string "Do you want to go through?$"
+
+PetalburgCity_Gym_Text_17B90F:: @ 817B90F
+ .string "“ZERO REDUCTION ROOM,” the sign\n"
+ .string "says.\p"
+ .string "Do you want to go through?$"
+
+PetalburgCity_Gym_Text_17B950:: @ 817B950
+ .string "“DEFENSE ROOM,” the sign says.\p"
+ .string "Do you want to go through?$"
+
+PetalburgCity_Gym_Text_17B98A:: @ 817B98A
+ .string "“RECOVERY ROOM,” the sign says.\p"
+ .string "Do you want to go through?$"
+
+PetalburgCity_Gym_Text_17B9C5:: @ 817B9C5
+ .string "“STRENGTH ROOM,” the sign says.\p"
+ .string "Do you want to go through?$"
+
+PetalburgCity_Gym_Text_17BA00:: @ 817BA00
+ .string "“ONE-HIT KO ROOM,” the sign says.\p"
+ .string "Do you want to go through?$"
+
+PetalburgCity_Gym_Text_17BA3D:: @ 817BA3D
+ .string "“GYM LEADER’S ROOM\p"
+ .string "“See for yourself what POKéMON await\n"
+ .string "you!” the sign says.\p"
+ .string "Do you want to go through?$"
+
+PetalburgCity_Gym_Text_17BAA5:: @ 817BAA5
+ .string "PETALBURG CITY POKéMON GYM$"
+
+PetalburgCity_Gym_Text_17BAC0:: @ 817BAC0
+ .string "PETALBURG CITY POKéMON GYM\p"
+ .string "NORMAN’S CERTIFIED TRAINERS:\n"
+ .string "{PLAYER}$"
+
diff --git a/data/maps/text/PetalburgCity_House1.s b/data/maps/text/PetalburgCity_House1.s
new file mode 100644
index 000000000..c1cb09305
--- /dev/null
+++ b/data/maps/text/PetalburgCity_House1.s
@@ -0,0 +1,17 @@
+PetalburgCity_House1_Text_17BAFB:: @ 817BAFB
+ .string "Traveling is wonderful!\p"
+ .string "When I was young, I roamed the seas\n"
+ .string "and the mountains!$"
+
+PetalburgCity_House1_Text_17BB4A:: @ 817BB4A
+ .string "Sigh...\p"
+ .string "I wish I could go on an adventure\n"
+ .string "with some POKéMON...\p"
+ .string "Crawl through some damp grass...\n"
+ .string "Climb rocky, rugged mountains...\p"
+ .string "Cross the raging seas...\n"
+ .string "Wander about in dark caves...\p"
+ .string "And, sometimes, even get a little\n"
+ .string "homesick...\p"
+ .string "It must be fabulous to travel!$"
+
diff --git a/data/maps/text/PetalburgCity_House2.s b/data/maps/text/PetalburgCity_House2.s
new file mode 100644
index 000000000..b0eec582c
--- /dev/null
+++ b/data/maps/text/PetalburgCity_House2.s
@@ -0,0 +1,13 @@
+PetalburgCity_House2_Text_17BC4F:: @ 817BC4F
+ .string "NORMAN became our town’s new GYM\n"
+ .string "LEADER.\p"
+ .string "I think he called his family over from\n"
+ .string "the JOHTO region.$"
+
+PetalburgCity_House2_Text_17BCB1:: @ 817BCB1
+ .string "I battled NORMAN once, but, whew,\n"
+ .string "he was way too strong.\p"
+ .string "How would I put it?\p"
+ .string "I just got the feeling that he\n"
+ .string "lives for POKéMON.$"
+
diff --git a/data/maps/text/PetalburgCity_Mart.s b/data/maps/text/PetalburgCity_Mart.s
new file mode 100644
index 000000000..42dd9f329
--- /dev/null
+++ b/data/maps/text/PetalburgCity_Mart.s
@@ -0,0 +1,18 @@
+PetalburgCity_Mart_Text_17BFFD:: @ 817BFFD
+ .string "Even if a POKéMON is weak now,\n"
+ .string "it will grow stronger.\p"
+ .string "The most important thing is love!\n"
+ .string "Love for your POKéMON!$"
+
+PetalburgCity_Mart_Text_17C06C:: @ 817C06C
+ .string "Do you use REPEL?\n"
+ .string "It keeps POKéMON away, so it’s\l"
+ .string "useful when you’re in a hurry.$"
+
+PetalburgCity_Mart_Text_17C0BC:: @ 817C0BC
+ .string "Do you have any ANTIDOTES with\n"
+ .string "you?\p"
+ .string "If you walk around with a poisoned\n"
+ .string "POKéMON, it will lose HP until it faints.\l"
+ .string "Take some ANTIDOTES with you.$"
+
diff --git a/data/maps/text/PetalburgCity_PokemonCenter_1F.s b/data/maps/text/PetalburgCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..63a203107
--- /dev/null
+++ b/data/maps/text/PetalburgCity_PokemonCenter_1F.s
@@ -0,0 +1,40 @@
+PetalburgCity_PokemonCenter_1F_Text_17BD30:: @ 817BD30
+ .string "That PC-based POKéMON storage\n"
+ .string "system...\p"
+ .string "Whoever made it must be some kind\n"
+ .string "of a scientific wizard!$"
+
+PetalburgCity_PokemonCenter_1F_Text_17BD92:: @ 817BD92
+ .string "When my POKéMON ate an\n"
+ .string "ORAN BERRY, it regained HP!$"
+
+PetalburgCity_PokemonCenter_1F_Text_17BDC5:: @ 817BDC5
+ .string "There are many types of POKéMON.\p"
+ .string "All types have their strengths and\n"
+ .string "weaknesses against other types.\p"
+ .string "Depending on the types of POKéMON,\n"
+ .string "a battle could be easy or hard.$"
+
+PetalburgCity_PokemonCenter_1F_Text_17BE6C:: @ 817BE6C
+ .string "For example, your TREECKO is a\n"
+ .string "GRASS type.\p"
+ .string "It’s strong against the WATER and\n"
+ .string "GROUND types.\p"
+ .string "But, it’s weak against FIRE-type\n"
+ .string "POKéMON.$"
+
+PetalburgCity_PokemonCenter_1F_Text_17BEF1:: @ 817BEF1
+ .string "For example, your TORCHIC is a\n"
+ .string "FIRE type.\p"
+ .string "It’s strong against the GRASS and\n"
+ .string "BUG types.\p"
+ .string "But, it’s weak against WATER-type\n"
+ .string "POKéMON.$"
+
+PetalburgCity_PokemonCenter_1F_Text_17BF73:: @ 817BF73
+ .string "For example, your MUDKIP is a\n"
+ .string "WATER type.\p"
+ .string "It’s strong against the FIRE type.\p"
+ .string "But, it’s weak against GRASS-type\n"
+ .string "and ELECTRIC-type POKéMON.$"
+
diff --git a/data/maps/text/PetalburgCity_WallysHouse.s b/data/maps/text/PetalburgCity_WallysHouse.s
new file mode 100644
index 000000000..7a4e50ec8
--- /dev/null
+++ b/data/maps/text/PetalburgCity_WallysHouse.s
@@ -0,0 +1,73 @@
+PetalburgCity_WallysHouse_Text_179805:: @ 8179805
+ .string "You’re...\n"
+ .string "Ah, you must be {PLAYER}{KUN}, right?\p"
+ .string "Thank you for playing with WALLY a\n"
+ .string "little while ago.\p"
+ .string "He’s been frail and sickly ever\n"
+ .string "since he was a baby.\p"
+ .string "We’ve sent him to stay with my relatives\n"
+ .string "in VERDANTURF TOWN for a while.\p"
+ .string "The air is a lot cleaner there\n"
+ .string "than it is here.\p"
+ .string "What’s that? Where’s WALLY?\n"
+ .string "He’s already left, our WALLY.\p"
+ .string "I wonder where he could have\n"
+ .string "gotten by now?$"
+
+PetalburgCity_WallysHouse_Text_179975:: @ 8179975
+ .string "I wonder how our WALLY is doing?$"
+
+PetalburgCity_WallysHouse_Text_179996:: @ 8179996
+ .string "Hi there, {PLAYER}{KUN}!\p"
+ .string "Our WALLY’s become very healthy\n"
+ .string "since he went to VERDANTURF TOWN.\p"
+ .string "We owe it all to you!\p"
+ .string "When WALLY left town, you helped\n"
+ .string "him catch a POKéMON, right?\p"
+ .string "I think that made WALLY really\n"
+ .string "happy.\p"
+ .string "Actually, not just WALLY.\n"
+ .string "It made me, his father, happy too.\p"
+ .string "Happy that he’s got such a great\n"
+ .string "friend as you.\p"
+ .string "This isn’t a bribe or anything, but\n"
+ .string "I’d really like you to have this.$"
+
+PetalburgCity_WallysHouse_Text_179B14:: @ 8179B14
+ .string "If your POKéMON can SURF, you’ll be\n"
+ .string "able to go to all sorts of places.$"
+
+PetalburgCity_WallysHouse_Text_179B5B:: @ 8179B5B
+ .string "WALLY’s coming home soon.\n"
+ .string "I’m looking forward to that.$"
+
+PetalburgCity_WallysHouse_Text_179B92:: @ 8179B92
+ .string "Oh? You met WALLY in EVER GRANDE\n"
+ .string "CITY?\p"
+ .string "Oh, {PLAYER}{KUN}, don’t be silly.\p"
+ .string "He may have gotten healthy, but he\n"
+ .string "can’t go somewhere far away like\l"
+ .string "that all by himself.$"
+
+PetalburgCity_WallysHouse_Text_179C2C:: @ 8179C2C
+ .string "WALLY was really happy when he told\n"
+ .string "us that he caught a POKéMON.\p"
+ .string "It’s been ages since I’ve seen him\n"
+ .string "smile like that.$"
+
+PetalburgCity_WallysHouse_Text_179CA1:: @ 8179CA1
+ .string "Oh, hello, {PLAYER}! We’ve got\n"
+ .string "something we want you to have.\p"
+ .string "My husband has it, so please have a\n"
+ .string "word with him, dear.$"
+
+PetalburgCity_WallysHouse_Text_179D12:: @ 8179D12
+ .string "I want you to keep this a secret\n"
+ .string "from my husband...\p"
+ .string "But our WALLY left VERDANTURF TOWN\n"
+ .string "without telling anyone.\p"
+ .string "You know, WALLY is frail, but\n"
+ .string "he’s surprisingly strong-willed.\p"
+ .string "I’m sure that he’ll come back safe\n"
+ .string "and sound one day!$"
+
diff --git a/data/maps/text/PetalburgWoods.s b/data/maps/text/PetalburgWoods.s
new file mode 100644
index 000000000..6305d32c2
--- /dev/null
+++ b/data/maps/text/PetalburgWoods.s
@@ -0,0 +1,146 @@
+PetalburgWoods_Text_194D71:: @ 8194D71
+ .string "Hmmm...\n"
+ .string "Not a one to be found...$"
+
+PetalburgWoods_Text_194D92:: @ 8194D92
+ .string "Hello, have you seen any POKéMON\n"
+ .string "called SHROOMISH around here?\p"
+ .string "I really love that POKéMON.$"
+
+PetalburgWoods_Text_194DED:: @ 8194DED
+ .string "I was going to ambush you, but you\n"
+ .string "had to dawdle in PETALBURG WOODS\l"
+ .string "forever, didn’t you?\p"
+ .string "I got sick of waiting, so here I am!$"
+
+PetalburgWoods_Text_194E6B:: @ 8194E6B
+ .string "You! DEVON RESEARCHER!\p"
+ .string "Hand over those papers!$"
+
+PetalburgWoods_Text_194E9A:: @ 8194E9A
+ .string "Aiyeeeh!\p"
+ .string "You’re a POKéMON TRAINER, aren’t you?\n"
+ .string "You’ve got to help me, please!$"
+
+PetalburgWoods_Text_194EE8:: @ 8194EE8
+ .string "Hunh? What do you think you’re doing?\n"
+ .string "What, you’re going to protect him?\p"
+ .string "No one who crosses TEAM {EVIL_TEAM}\n"
+ .string "gets any mercy, not even a kid!\p"
+ .string "Come on and battle me!$"
+
+PetalburgWoods_Text_194F83:: @ 8194F83
+ .string "You’re kidding me! You’re tough!$"
+
+PetalburgWoods_Text_194FA4:: @ 8194FA4
+ .string "Grrr... You’ve got some nerve\n"
+ .string "meddling with TEAM {EVIL_TEAM}!\l"
+ .string "Come on and battle me again!\p"
+ .string "I wish I could say that, but I’m out of\n"
+ .string "POKéMON...\p"
+ .string "And, hey, we of TEAM {EVIL_TEAM} are also\n"
+ .string "after something in RUSTBORO.\p"
+ .string "I’ll let you go today!$"
+
+PetalburgWoods_Text_19507E:: @ 819507E
+ .string "Whew...\n"
+ .string "That was awfully close!\p"
+ .string "Thanks to you, he didn’t rob me of\n"
+ .string "these important papers.\p"
+ .string "I know, I’ll give you a GREAT BALL as\n"
+ .string "my thanks!$"
+
+PetalburgWoods_Text_19510A:: @ 819510A
+ .string "Didn’t that TEAM {EVIL_TEAM} thug say\n"
+ .string "they were after something in\l"
+ .string "RUSTBORO, too?$"
+
+PetalburgWoods_Text_195153:: @ 8195153
+ .string "Uh-oh! It’s a crisis!\n"
+ .string "I can’t be wasting time!$"
+
+PetalburgWoods_Text_195182:: @ 8195182
+ .string "You’re loaded with items.\n"
+ .string "I can’t give you this GREAT BALL.$"
+
+PetalburgWoods_Text_1951BE:: @ 81951BE
+ .string "I caught a whole bunch of POKéMON!\p"
+ .string "Go, go, go!\n"
+ .string "My BUG POKéMON team!$"
+
+PetalburgWoods_Text_195202:: @ 8195202
+ .string "I have all these POKéMON, but I\n"
+ .string "couldn’t win...$"
+
+PetalburgWoods_Text_195232:: @ 8195232
+ .string "I caught a bunch of POKéMON.\n"
+ .string "Now I’m out of POKé BALLS.$"
+
+PetalburgWoods_Text_19526A:: @ 819526A
+ .string "If you take BUG POKéMON to school,\n"
+ .string "you get to be instantly popular!$"
+
+PetalburgWoods_Text_1952AE:: @ 81952AE
+ .string "I can’t be popular if I lose.$"
+
+PetalburgWoods_Text_1952CC:: @ 81952CC
+ .string "If you have a big BUG POKéMON, people\n"
+ .string "respect you for it.$"
+
+PetalburgWoods_Text_195306:: @ 8195306
+ .string "My BUG POKéMON have grown.\n"
+ .string "I’ll be popular again.$"
+
+PetalburgWoods_Text_195338:: @ 8195338
+ .string "I can’t be popular if I lose.$"
+
+PetalburgWoods_Text_195356:: @ 8195356
+ .string "You get to be popular if you have\n"
+ .string "strong POKéMON, right?\l"
+ .string "So, I’ve been training hard.$"
+
+PetalburgWoods_Text_1953AC:: @ 81953AC
+ .string "Yo, there!\n"
+ .string "Your POKéMON doing okay?\p"
+ .string "If your POKéMON are weak and you want\n"
+ .string "to avoid battles, you should stay out\l"
+ .string "of tall grass.$"
+
+PetalburgWoods_Text_19542B:: @ 819542B
+ .string "Sometimes, there are things on the\n"
+ .string "ground even if you can’t see them.\p"
+ .string "That’s why I always check where I’m\n"
+ .string "walking.$"
+
+PetalburgWoods_Text_19549E:: @ 819549E
+ .string "Oh, neat!\n"
+ .string "That’s the BADGE from RUSTBORO GYM!\p"
+ .string "You must be a TRAINER.\n"
+ .string "You should try using this item.$"
+
+PetalburgWoods_Text_195503:: @ 8195503
+ .string "It’s a MIRACLE SEED.\n"
+ .string "If a POKéMON holds that item, its\l"
+ .string "GRASS-type moves become stronger.\p"
+ .string "Besides MIRACLE SEED, I think there are\n"
+ .string "other convenient items for POKéMON\l"
+ .string "to hold.$"
+
+PetalburgWoods_Text_1955B0:: @ 81955B0
+ .string "TRAINER TIPS\p"
+ .string "Any POKéMON that appears even once\n"
+ .string "in a battle is awarded EXP Points.\p"
+ .string "To raise a weak POKéMON, put it at the\n"
+ .string "top of the team list.\p"
+ .string "As soon as a battle starts, switch it\n"
+ .string "out. It will earn EXP Points without\l"
+ .string "being exposed to any harm.$"
+
+PetalburgWoods_Text_1956A6:: @ 81956A6
+ .string "TRAINER TIPS\p"
+ .string "In addition to Hit Points (HP), POKéMON\n"
+ .string "have Power Points (PP) that are used to\l"
+ .string "make moves during battle.\p"
+ .string "If a POKéMON runs out of PP, it must be\n"
+ .string "taken to a POKéMON CENTER.$"
+
diff --git a/data/maps/text/RecordCorner.s b/data/maps/text/RecordCorner.s
new file mode 100644
index 000000000..665e2360a
--- /dev/null
+++ b/data/maps/text/RecordCorner.s
@@ -0,0 +1,12 @@
+RecordCorner_Text_1A4DD7:: @ 81A4DD7
+ .string "Please take your seat and wait.$"
+
+RecordCorner_Text_1A4DF7:: @ 81A4DF7
+ .string "Thanks for coming.$"
+
+ .incbin "baserom.gba", 0x1a4e0a, 0x31
+
+RecordCorner_Text_1A4E3B:: @ 81A4E3B
+ .string "{STR_VAR_1} sent over one\n"
+ .string "{STR_VAR_2}.$"
+
diff --git a/data/maps/text/Route101.s b/data/maps/text/Route101.s
new file mode 100644
index 000000000..1897cce4e
--- /dev/null
+++ b/data/maps/text/Route101.s
@@ -0,0 +1,40 @@
+Route101_Text_16D10E:: @ 816D10E
+ .string "H-help me!$"
+
+Route101_Text_16D119:: @ 816D119
+ .string "Hello! You over there!\n"
+ .string "Please! Help!\p"
+ .string "In my BAG!\n"
+ .string "There’s a POKé BALL!$"
+
+Route101_Text_16D15E:: @ 816D15E
+ .string "Wh-Where are you going?!\n"
+ .string "Don’t leave me like this!$"
+
+Route101_Text_16D191:: @ 816D191
+ .string "PROF. BIRCH: Whew...\p"
+ .string "I was in the tall grass studying wild\n"
+ .string "POKéMON when I was jumped.\p"
+ .string "You saved me.\n"
+ .string "Thanks a lot!\p"
+ .string "Oh?\p"
+ .string "Hi, you’re {PLAYER}{KUN}!\p"
+ .string "This is not the place to chat, so come\n"
+ .string "by my POKéMON LAB later, okay?$"
+
+Route101_Text_16D25E:: @ 816D25E
+ .string "If POKéMON get tired, take them to\n"
+ .string "a POKéMON CENTER.\p"
+ .string "There’s a POKéMON CENTER in OLDALE\n"
+ .string "TOWN right close by.$"
+
+Route101_Text_16D2CB:: @ 816D2CB
+ .string "Wild POKéMON will jump out at you in\n"
+ .string "tall grass.\p"
+ .string "If you want to catch POKéMON, you have\n"
+ .string "to go into the tall grass and search.$"
+
+Route101_Text_16D349:: @ 816D349
+ .string "ROUTE 101\n"
+ .string "{0x79} OLDALE TOWN$"
+
diff --git a/data/maps/text/Route102.s b/data/maps/text/Route102.s
new file mode 100644
index 000000000..f58934d09
--- /dev/null
+++ b/data/maps/text/Route102.s
@@ -0,0 +1,21 @@
+Route102_Text_16D431:: @ 816D431
+ .string "I’m...not very tall, so I sink right\n"
+ .string "into tall grass.\p"
+ .string "The grass goes up my nose and...\n"
+ .string "Fwafwafwafwafwa...\p"
+ .string "Fwatchoo!$"
+
+ .incbin "baserom.gba", 0x16d4a5, 0x75
+
+Route102_Text_16D51A:: @ 816D51A
+ .string "I’m going to catch a whole bunch of\n"
+ .string "POKéMON!$"
+
+Route102_Text_16D547:: @ 816D547
+ .string "ROUTE 102\n"
+ .string "{0x7C} OLDALE TOWN$"
+
+Route102_Text_16D55F:: @ 816D55F
+ .string "ROUTE 102\n"
+ .string "{0x7B} PETALBURG CITY$"
+
diff --git a/data/maps/text/Route103.s b/data/maps/text/Route103.s
new file mode 100644
index 000000000..97ad26169
--- /dev/null
+++ b/data/maps/text/Route103.s
@@ -0,0 +1,65 @@
+Route103_Text_16D57A:: @ 816D57A
+ .string "MAY: Let’s see... The POKéMON found\n"
+ .string "on ROUTE 103 include...$"
+
+Route103_Text_16D5B6:: @ 816D5B6
+ .string "Oh, hi, {PLAYER}{KUN}!\p"
+ .string "...Oh, I see, my dad gave you a\n"
+ .string "POKéMON as a gift.\p"
+ .string "Since we’re here, let’s have a quick\n"
+ .string "battle!\p"
+ .string "I’ll give you a taste of what being a\n"
+ .string "TRAINER is like.$"
+
+Route103_Text_16D65B:: @ 816D65B
+ .string "Wow! That’s great!\n"
+ .string "{PLAYER}{KUN}, you’re pretty good!$"
+
+Route103_Text_16D688:: @ 816D688
+ .string "MAY: I think I know why my dad has an\n"
+ .string "eye out for you now.\p"
+ .string "I mean, you just got that POKéMON but\n"
+ .string "it already likes you.\p"
+ .string "You might be able to befriend any\n"
+ .string "kind of POKéMON easily.\p"
+ .string "Well, it’s time to head back to the\n"
+ .string "LAB.$"
+
+Route103_Text_16D762:: @ 816D762
+ .string "BRENDAN: Okay, so it’s this one and\n"
+ .string "that one that live on ROUTE 103...$"
+
+Route103_Text_16D7A9:: @ 816D7A9
+ .string "Hey, it’s {PLAYER}!\p"
+ .string "...Oh, yeah, Dad gave you a POKéMON.\p"
+ .string "Since we’re here, how about a little\n"
+ .string "battle?\p"
+ .string "I’ll teach you what being a TRAINER’s\n"
+ .string "about!$"
+
+Route103_Text_16D836:: @ 816D836
+ .string "Huh, {PLAYER}, you’re not too shabby.$"
+
+Route103_Text_16D856:: @ 816D856
+ .string "BRENDAN: I think I get it.\n"
+ .string "I think I know why my dad has his eye\l"
+ .string "out for you now.\p"
+ .string "Look, your POKéMON already likes you,\n"
+ .string "even though you just got it.\p"
+ .string "{PLAYER}, I get the feeling that you\n"
+ .string "could befriend any POKéMON with ease.\p"
+ .string "We should head back to the LAB.$"
+
+Route103_Text_16D950:: @ 816D950
+ .string "My POKéMON is staggeringly tired...\n"
+ .string "I should have brought a POTION...$"
+
+Route103_Text_16D996:: @ 816D996
+ .string "If you cross the sea from here,\n"
+ .string "it’ll be a shortcut to OLDALE TOWN.\p"
+ .string "Fufufu, that’s useful, isn’t it?$"
+
+Route103_Text_16D9FB:: @ 816D9FB
+ .string "ROUTE 103\n"
+ .string "{0x7A} OLDALE TOWN$"
+
diff --git a/data/maps/text/Route104.s b/data/maps/text/Route104.s
new file mode 100644
index 000000000..f36b68ddd
--- /dev/null
+++ b/data/maps/text/Route104.s
@@ -0,0 +1,6 @@
+Route104_Text_16B347:: @ 816B347
+ .string "MR. BRINEY: Ahoy!\n"
+ .string "We’ve hit land in DEWFORD.\p"
+ .string "I suppose you’re off to deliver that\n"
+ .string "LETTER to, who was it now, STEVEN!$"
+
diff --git a/data/maps/text/Route104_MrBrineysHouse.s b/data/maps/text/Route104_MrBrineysHouse.s
new file mode 100644
index 000000000..c669d44c5
--- /dev/null
+++ b/data/maps/text/Route104_MrBrineysHouse.s
@@ -0,0 +1,64 @@
+Route104_MrBrineysHouse_Text_191A82:: @ 8191A82
+ .string "MR. BRINEY: Hold on, lass!\n"
+ .string "Wait up, PEEKO!$"
+
+Route104_MrBrineysHouse_Text_191AAD:: @ 8191AAD
+ .string "Hm? You’re {PLAYER}{KUN}!\n"
+ .string "You saved my darling PEEKO!\l"
+ .string "We owe so much to you!\p"
+ .string "What’s that?\n"
+ .string "You want to sail with me?\p"
+ .string "Hmhm...\p"
+ .string "You have a LETTER bound for DEWFORD\n"
+ .string "and a package for SLATEPORT, then?\p"
+ .string "Quite the busy life you must lead!\p"
+ .string "But, certainly, what you’re asking is\n"
+ .string "no problem at all.\p"
+ .string "You’ve come to the right man!\n"
+ .string "We’ll set sail for DEWFORD.$"
+
+Route104_MrBrineysHouse_Text_191BFD:: @ 8191BFD
+ .string "MR. BRINEY: DEWFORD, here we come!\p"
+ .string "Anchors aweigh!\n"
+ .string "PEEKO, we’re setting sail, my darling!$"
+
+Route104_MrBrineysHouse_Text_191C57:: @ 8191C57
+ .string "MR. BRINEY: Is that so?\n"
+ .string "Your deliveries can wait?\p"
+ .string "You just go on and tell me whenever\n"
+ .string "you want to set sail!$"
+
+Route104_MrBrineysHouse_Text_191CC3:: @ 8191CC3
+ .string "MR. BRINEY: Ahoy!\n"
+ .string "I know exactly what you want to say!\p"
+ .string "You’re to deliver a LETTER to DEWFORD\n"
+ .string "and a package to SLATEPORT.\p"
+ .string "What you need me to do is no problem\n"
+ .string "at all - I’m the man for the job!\p"
+ .string "First, we’ll set sail for DEWFORD.$"
+
+Route104_MrBrineysHouse_Text_191DA6:: @ 8191DA6
+ .string "MR. BRINEY: Ahoy!\n"
+ .string "I know exactly what you want to say!\p"
+ .string "You’re to deliver a package to\n"
+ .string "CAPT. STERN in SLATEPORT.\p"
+ .string "What you need me to do is no problem\n"
+ .string "at all - I’m the man for the job!\p"
+ .string "First, we’ll set sail for DEWFORD.$"
+
+Route104_MrBrineysHouse_Text_191E80:: @ 8191E80
+ .string "MR. BRINEY: Ahoy!\n"
+ .string "For you, I’ll go out to sea anytime!\p"
+ .string "Now, my friend, where are we bound?$"
+
+Route104_MrBrineysHouse_Text_191EDB:: @ 8191EDB
+ .string "MR. BRINEY: Is that so?\n"
+ .string "Well, PEEKO owes her life to you.\p"
+ .string "You just go on and tell me whenever\n"
+ .string "you want to set sail!$"
+
+ .incbin "baserom.gba", 0x191f4f, 0x6a
+
+Route104_MrBrineysHouse_Text_191FB9:: @ 8191FB9
+ .string "PEEKO: Pii pihyoroo!$"
+
diff --git a/data/maps/text/Route104_PrettyPetalFlowerShop.s b/data/maps/text/Route104_PrettyPetalFlowerShop.s
new file mode 100644
index 000000000..53a329108
--- /dev/null
+++ b/data/maps/text/Route104_PrettyPetalFlowerShop.s
@@ -0,0 +1 @@
+Route104_PrettyPetalFlowerShop_Text_1A0C02:: @ 81A0C02
diff --git a/data/maps/text/Route104_Prototype.s b/data/maps/text/Route104_Prototype.s
new file mode 100644
index 000000000..59a71018f
--- /dev/null
+++ b/data/maps/text/Route104_Prototype.s
@@ -0,0 +1,116 @@
+Route104_Prototype_Text_19AD9B:: @ 819AD9B
+ .string "Oh? You look like a good TRAINER.\n"
+ .string "Will you look at my POKéMON?$"
+
+Route104_Prototype_Text_19ADDA:: @ 819ADDA
+ .string "I’m not good enough for you.$"
+
+Route104_Prototype_Text_19ADF7:: @ 819ADF7
+ .string "I enjoyed our battle very much.\n"
+ .string "Please battle with me some other time.$"
+
+Route104_Prototype_Text_19AE3E:: @ 819AE3E
+ .string "Go!\n"
+ .string "Go, our POKéMON!$"
+
+Route104_Prototype_Text_19AE53:: @ 819AE53
+ .string "Oh... We couldn’t win.$"
+
+Route104_Prototype_Text_19AE6A:: @ 819AE6A
+ .string "Did it surprise you that two POKéMON\n"
+ .string "battled at the same time?$"
+
+Route104_Prototype_Text_19AEA9:: @ 819AEA9
+ .string "You can’t battle with us if you have\n"
+ .string "only one POKéMON.\l"
+ .string "Why? Because we’re strong!$"
+
+Route104_Prototype_Text_19AEFB:: @ 819AEFB
+ .string "Hey, hey! This is my first battle in\n"
+ .string "a while. I’ll give it my all!$"
+
+Route104_Prototype_Text_19AF3E:: @ 819AF3E
+ .string "But I gave it my all...$"
+
+Route104_Prototype_Text_19AF56:: @ 819AF56
+ .string "You’re far too strong!\n"
+ .string "You must be a great TRAINER!$"
+
+Route104_Prototype_Text_19AF8A:: @ 819AF8A
+ .string "My POKéMON are extremely cute and\n"
+ .string "extremely strong.\l"
+ .string "Please allow me to show you.$"
+
+Route104_Prototype_Text_19AFDB:: @ 819AFDB
+ .string "I must concede defeat.\n"
+ .string "After all, you are strong.$"
+
+Route104_Prototype_Text_19B00D:: @ 819B00D
+ .string "The next time we meet, I will have raised\n"
+ .string "my POKéMON much more.\p"
+ .string "Don’t expect mercy then!$"
+
+Route104_Prototype_Text_19B066:: @ 819B066
+ .string "We HIKERS are always full of energy!\n"
+ .string "My POKéMON are also full of energy, too.\l"
+ .string "We’re always itching for a battle!$"
+
+Route104_Prototype_Text_19B0D7:: @ 819B0D7
+ .string "We ran out of energy...$"
+
+Route104_Prototype_Text_19B0EF:: @ 819B0EF
+ .string "Wahahah! Sure, we lost!\n"
+ .string "But we had a great battle, didn’t we?\l"
+ .string "We’re satisfied with that!$"
+
+Route104_Prototype_Text_19B148:: @ 819B148
+ .string "You look like a strong TRAINER,\n"
+ .string "but can you beat us?$"
+
+Route104_Prototype_Text_19B17D:: @ 819B17D
+ .string "Waaah!\n"
+ .string "We lost!$"
+
+Route104_Prototype_Text_19B18D:: @ 819B18D
+ .string "If two POKéMON can battle at the same\n"
+ .string "time, all sorts of new things can happen.$"
+
+Route104_Prototype_Text_19B1DD:: @ 819B1DD
+ .string "Do you only have one POKéMON that can\n"
+ .string "battle?\p"
+ .string "Then we can’t battle with you yet.$"
+
+Route104_Prototype_Text_19B22E:: @ 819B22E
+ .string "Have you tried beating all the other\n"
+ .string "TRAINERS in battle?$"
+
+Route104_Prototype_Text_19B267:: @ 819B267
+ .string "Thanks for coming today!\p"
+ .string "I hope you’re looking forward to this\n"
+ .string "game’s release!$"
+
+Route104_Prototype_Text_19B2B6:: @ 819B2B6
+ .string "Huh? Did you battle with all the\n"
+ .string "TRAINERS already?$"
+
+Route104_Prototype_Text_19B2E9:: @ 819B2E9
+ .string "Thank you for coming today!\p"
+ .string "I hope you’re looking forward to this\n"
+ .string "game’s release!$"
+
+Route104_Prototype_Text_19B33B:: @ 819B33B
+ .string "I’ve never seen the POKéMON you have.\n"
+ .string "It makes me envious a little.$"
+
+Route104_Prototype_Text_19B37F:: @ 819B37F
+ .string "Look at all those TRAINERS!\n"
+ .string "They have different POKéMON, too.\l"
+ .string "And they’re all waiting for you!$"
+
+Route104_Prototype_Text_19B3DE:: @ 819B3DE
+ .string "Welcome to the World of POKéMON!$"
+
+Route104_Prototype_Text_19B3FF:: @ 819B3FF
+ .string "May all POKéMON battles be bright,\n"
+ .string "fun, and ferocious!$"
+
diff --git a/data/maps/text/Route104_PrototypePrettyPetalFlowerShop.s b/data/maps/text/Route104_PrototypePrettyPetalFlowerShop.s
new file mode 100644
index 000000000..0c3af5f1f
--- /dev/null
+++ b/data/maps/text/Route104_PrototypePrettyPetalFlowerShop.s
@@ -0,0 +1,7 @@
+Route104_PrototypePrettyPetalFlowerShop_Text_19B436:: @ 819B436
+ .string "I have to stay home today.\p"
+ .string "My big sisters had to go out.\n"
+ .string "They said it was for preparations.\p"
+ .string "In the autumn, we’re going to start\n"
+ .string "a flower shop. Please wait for it!$"
+
diff --git a/data/maps/text/Route105.s b/data/maps/text/Route105.s
new file mode 100644
index 000000000..a0aeea007
--- /dev/null
+++ b/data/maps/text/Route105.s
@@ -0,0 +1,64 @@
+Route105_Text_1B8B40:: @ 81B8B40
+ .string "There’s supposed to be a mystical\n"
+ .string "rock around here.\l"
+ .string "Do you know anything about it?$"
+
+Route105_Text_1B8B93:: @ 81B8B93
+ .string "I was thinking too much about that\n"
+ .string "rock, while my POKéMON remained weak...$"
+
+Route105_Text_1B8BDE:: @ 81B8BDE
+ .string "I can spend hours and hours staring\n"
+ .string "at a nice rock without growing bored.$"
+
+Route105_Text_1B8C28:: @ 81B8C28
+ .string "Whew! I was worried that a kid was\n"
+ .string "drowning when I saw you.\p"
+ .string "You seem to be okay, so what do you\n"
+ .string "say to a battle?$"
+
+Route105_Text_1B8C99:: @ 81B8C99
+ .string "Glub... Glub...$"
+
+Route105_Text_1B8CA9:: @ 81B8CA9
+ .string "If you are drowning, the signal is to\n"
+ .string "wave one arm toward the beach.$"
+
+Route105_Text_1B8CEE:: @ 81B8CEE
+ .string "Swimming the deep blue sea...\n"
+ .string "It feels the greatest!$"
+
+Route105_Text_1B8D23:: @ 81B8D23
+ .string "I lost...\n"
+ .string "Now I’m feeling blue...$"
+
+Route105_Text_1B8D45:: @ 81B8D45
+ .string "Why is the sea blue?\p"
+ .string "I learned about that at the MUSEUM in\n"
+ .string "SLATEPORT, but I forgot.$"
+
+Route105_Text_1B8D99:: @ 81B8D99
+ .string "My body feels lighter in the water.\n"
+ .string "It’s as if I’ve gotten slimmer!$"
+
+Route105_Text_1B8DDD:: @ 81B8DDD
+ .string "I’m floating...$"
+
+Route105_Text_1B8DED:: @ 81B8DED
+ .string "Your body weight is reduced to just\n"
+ .string "one tenth in the water.\p"
+ .string "That would make me...\n"
+ .string "Whoops! I’m not telling you my weight!$"
+
+Route105_Text_1B8E66:: @ 81B8E66
+ .string "The blue, blue sky...\n"
+ .string "The vast sea...\l"
+ .string "It’s so peaceful...$"
+
+Route105_Text_1B8EA0:: @ 81B8EA0
+ .string "I lost while I was lounging!$"
+
+Route105_Text_1B8EBD:: @ 81B8EBD
+ .string "I want to be told I’m relaxing to be\n"
+ .string "with. Giggle.$"
+
diff --git a/data/maps/text/Route106.s b/data/maps/text/Route106.s
new file mode 100644
index 000000000..521eefe26
--- /dev/null
+++ b/data/maps/text/Route106.s
@@ -0,0 +1,5 @@
+Route106_Text_16E026:: @ 816E026
+ .string "TRAINER TIPS\p"
+ .string "Advice on catching POKéMON with a ROD:\n"
+ .string "Press the A Button if you get a bite.$"
+
diff --git a/data/maps/text/Route107.s b/data/maps/text/Route107.s
new file mode 100644
index 000000000..17daa8c37
--- /dev/null
+++ b/data/maps/text/Route107.s
@@ -0,0 +1,99 @@
+Route107_Text_1B926B:: @ 81B926B
+ .string "Yawn...\p"
+ .string "I must have drifted off to sleep while\n"
+ .string "I was drifting in the waves.$"
+
+Route107_Text_1B92B7:: @ 81B92B7
+ .string "Ahaha, I lost...\n"
+ .string "I’ll take a snooze, I think...$"
+
+Route107_Text_1B92E7:: @ 81B92E7
+ .string "Floating and being rocked by the\n"
+ .string "waves - it’s like sleeping in a plush,\l"
+ .string "comfy bed.$"
+
+Route107_Text_1B933A:: @ 81B933A
+ .string "The sea is like my backyard.\n"
+ .string "Let’s battle!$"
+
+Route107_Text_1B9365:: @ 81B9365
+ .string "I lost on my home field...\n"
+ .string "I’m in shock!$"
+
+Route107_Text_1B938E:: @ 81B938E
+ .string "I swim the seas with a heart full of\n"
+ .string "dreams...\p"
+ .string "It’s a song!\n"
+ .string "Anyways, I’m swimming some more.$"
+
+Route107_Text_1B93EB:: @ 81B93EB
+ .string "Swimming in the big, wide sea, my\n"
+ .string "POKéMON has grown stronger!$"
+
+Route107_Text_1B9429:: @ 81B9429
+ .string "What a shock!\p"
+ .string "My POKéMON has gotten stronger, but\n"
+ .string "I stayed weak as a TRAINER!$"
+
+Route107_Text_1B9477:: @ 81B9477
+ .string "What you learn in battle makes you a\n"
+ .string "stronger TRAINER.\l"
+ .string "The waves taught me that.$"
+
+Route107_Text_1B94C8:: @ 81B94C8
+ .string "Do you know a little town called\n"
+ .string "DEWFORD?$"
+
+Route107_Text_1B94F2:: @ 81B94F2
+ .string "I hate this!$"
+
+Route107_Text_1B94FF:: @ 81B94FF
+ .string "A weird saying is getting really\n"
+ .string "trendy at DEWFORD HALL.$"
+
+Route107_Text_1B9538:: @ 81B9538
+ .string "Did you want to battle me?\n"
+ .string "Sure, I’ll go with you!$"
+
+Route107_Text_1B956B:: @ 81B956B
+ .string "I wasn’t good enough for you.$"
+
+Route107_Text_1B9589:: @ 81B9589
+ .string "I think you’re going to keep getting\n"
+ .string "better. I’ll go for it, too!$"
+
+Route107_Text_1B95CB:: @ 81B95CB
+ .string "LISA: We challenge you as a sister\n"
+ .string "and brother!$"
+
+Route107_Text_1B95FB:: @ 81B95FB
+ .string "LISA: Awesome.\n"
+ .string "You’re in a different class of tough.$"
+
+Route107_Text_1B9630:: @ 81B9630
+ .string "LISA: Do you have any friends who\n"
+ .string "would go to the beach with you?$"
+
+Route107_Text_1B9672:: @ 81B9672
+ .string "LISA: If you want to battle with us,\n"
+ .string "bring more POKéMON.$"
+
+Route107_Text_1B96AB:: @ 81B96AB
+ .string "RAY: We always battle POKéMON, me\n"
+ .string "and my sister.\p"
+ .string "I always lose, but we can beat you\n"
+ .string "2-on-2!$"
+
+Route107_Text_1B9707:: @ 81B9707
+ .string "RAY: Wowee, you’re at a higher level\n"
+ .string "than us!$"
+
+Route107_Text_1B9735:: @ 81B9735
+ .string "RAY: My sister gave me my POKéMON.\n"
+ .string "I raised it, and now it’s my important\l"
+ .string "partner!$"
+
+Route107_Text_1B9788:: @ 81B9788
+ .string "RAY: If you want to battle us, go\n"
+ .string "bring some more POKéMON!$"
+
diff --git a/data/maps/text/Route108.s b/data/maps/text/Route108.s
new file mode 100644
index 000000000..cb9d43cac
--- /dev/null
+++ b/data/maps/text/Route108.s
@@ -0,0 +1,48 @@
+Route108_Text_1B97C3:: @ 81B97C3
+ .string "My dream is to swim the world’s seven\n"
+ .string "seas!$"
+
+Route108_Text_1B97EF:: @ 81B97EF
+ .string "I won’t be able to swim the seven seas\n"
+ .string "like this...$"
+
+Route108_Text_1B9823:: @ 81B9823
+ .string "Playing with marine POKéMON is one of\n"
+ .string "the pleasures of swimming!$"
+
+Route108_Text_1B9864:: @ 81B9864
+ .string "Ahoy, there! Are you going out to the\n"
+ .string "ABANDONED SHIP, too?$"
+
+Route108_Text_1B989F:: @ 81B989F
+ .string "I’m sinking!\n"
+ .string "Glub... Glub...$"
+
+Route108_Text_1B98BC:: @ 81B98BC
+ .string "Some people even go inside that\n"
+ .string "ABANDONED SHIP.$"
+
+Route108_Text_1B98EC:: @ 81B98EC
+ .string "My liar of a boyfriend told me that\n"
+ .string "I look great in a bikini...$"
+
+Route108_Text_1B992C:: @ 81B992C
+ .string "Oh, boo!$"
+
+Route108_Text_1B9935:: @ 81B9935
+ .string "Even if it’s a lie, I love being told\n"
+ .string "I look great...\l"
+ .string "We girls are so complex...$"
+
+Route108_Text_1B9986:: @ 81B9986
+ .string "I love the sea!\n"
+ .string "I forget all my worries when I swim!$"
+
+Route108_Text_1B99BB:: @ 81B99BB
+ .string "When I lose a battle, I get all\n"
+ .string "stressed out!$"
+
+Route108_Text_1B99E9:: @ 81B99E9
+ .string "Work off your stress by swimming!\n"
+ .string "It’s so healthy!$"
+
diff --git a/data/maps/text/Route109.s b/data/maps/text/Route109.s
new file mode 100644
index 000000000..cda39b440
--- /dev/null
+++ b/data/maps/text/Route109.s
@@ -0,0 +1,6 @@
+Route109_Text_16B4B5:: @ 816B4B5
+ .string "MR. BRINEY: Ahoy!\n"
+ .string "We’ve hit land in DEWFORD!\p"
+ .string "You just go on and tell me whenever\n"
+ .string "you want to set sail again!$"
+
diff --git a/data/maps/text/Route109_SeashoreHouse.s b/data/maps/text/Route109_SeashoreHouse.s
new file mode 100644
index 000000000..ef4fc0ed1
--- /dev/null
+++ b/data/maps/text/Route109_SeashoreHouse.s
@@ -0,0 +1,81 @@
+Route109_SeashoreHouse_Text_19B4D9:: @ 819B4D9
+ .string "I’m the owner of the SEASHORE HOUSE.\n"
+ .string "But you can call me MR. SEA!\p"
+ .string "What I love above all is to see hot\n"
+ .string "POKéMON battles.\p"
+ .string "Let me see that your heart burns hot!\p"
+ .string "If you can defeat all the TRAINERS\n"
+ .string "here, I’ll reward your efforts.$"
+
+Route109_SeashoreHouse_Text_19B5B9:: @ 819B5B9
+ .string "Show me some hot matches!\p"
+ .string "I run this SEASHORE HOUSE just for\n"
+ .string "that reason alone!$"
+
+Route109_SeashoreHouse_Text_19B609:: @ 819B609
+ .string "You’re scorching hot!\n"
+ .string "Those battles blazed!\l"
+ .string "I’m more than just satisfied!\p"
+ .string "As thanks for showing me your hot\n"
+ .string "streak, I want you to take these.\p"
+ .string "It’s half a dozen bottles of SODA POP!$"
+
+Route109_SeashoreHouse_Text_19B6BE:: @ 819B6BE
+ .string "Oh, but hey, your BAG’s jammed full.\n"
+ .string "I’ll hang on to these for you.$"
+
+Route109_SeashoreHouse_Text_19B702:: @ 819B702
+ .string "Want to buy some SODA POP?\n"
+ .string "POKéMON love it!\p"
+ .string "Just ¥300 a bottle!\n"
+ .string "Buy some!$"
+
+Route109_SeashoreHouse_Text_19B74C:: @ 819B74C
+ .string "Here you go!$"
+
+Route109_SeashoreHouse_Text_19B759:: @ 819B759
+ .string "You don’t have the money.$"
+
+Route109_SeashoreHouse_Text_19B773:: @ 819B773
+ .string "No?\n"
+ .string "That’s too bad.$"
+
+ .incbin "baserom.gba", 0x19b787, 0x82
+
+Route109_SeashoreHouse_Text_19B809:: @ 819B809
+ .string "If you’re looking for a battle on the\n"
+ .string "high seas, you’ll find no hotter \l"
+ .string "TRAINER than me, matey!$"
+
+Route109_SeashoreHouse_Text_19B869:: @ 819B869
+ .string "That was a hot battle!\n"
+ .string "I can accept that loss, matey!$"
+
+Route109_SeashoreHouse_Text_19B89F:: @ 819B89F
+ .string "Whenever I’m in SLATEPORT, I enjoy\n"
+ .string "hot battles and ice-cold SODA POP!$"
+
+Route109_SeashoreHouse_Text_19B8E5:: @ 819B8E5
+ .string "Boring battles aren’t worth the effort.\p"
+ .string "Fiery hot battles are what toughen up\n"
+ .string "TRAINERS and POKéMON!$"
+
+Route109_SeashoreHouse_Text_19B949:: @ 819B949
+ .string "That’s hot!$"
+
+Route109_SeashoreHouse_Text_19B955:: @ 819B955
+ .string "Whew, I’m all thirsty.\n"
+ .string "Maybe I’ll have a SODA POP.$"
+
+Route109_SeashoreHouse_Text_19B988:: @ 819B988
+ .string "I’m going to show you how great my\n"
+ .string "POKéMON are, but don’t cry!$"
+
+Route109_SeashoreHouse_Text_19B9C7:: @ 819B9C7
+ .string "...I lost, but I won’t cry...$"
+
+Route109_SeashoreHouse_Text_19B9E5:: @ 819B9E5
+ .string "If one of my POKéMON knew the move\n"
+ .string "for carrying me across water on its\l"
+ .string "back, I could get rid of this inner tube.$"
+
diff --git a/data/maps/text/Route110.s b/data/maps/text/Route110.s
new file mode 100644
index 000000000..6159709d7
--- /dev/null
+++ b/data/maps/text/Route110.s
@@ -0,0 +1,220 @@
+Route110_Text_16E6C0:: @ 816E6C0
+ .string "TEAM {EVIL_TEAM}’s activities must be kept\n"
+ .string "secret for now.$"
+
+Route110_Text_16E6F2:: @ 816E6F2
+ .string "I want to get going to SLATEPORT and\n"
+ .string "kick up a ruckus!$"
+
+Route110_Text_16E729:: @ 816E729
+ .string "This is my first job after joining\n"
+ .string "TEAM {EVIL_TEAM}. I’ve got the shakes!$"
+
+Route110_Text_16E76A:: @ 816E76A
+ .string "TEAM {EVIL_TEAM}’s actions will put a smile\n"
+ .string "on everyone’s face!$"
+
+Route110_Text_16E7A1:: @ 816E7A1
+ .string "MAY: Hi, {PLAYER}{KUN}, long time no see!\p"
+ .string "While I was searching for other\n"
+ .string "POKéMON, my POKéMON grew stronger.\p"
+ .string "So...\n"
+ .string "How about a little battle?$"
+
+Route110_Text_16E826:: @ 816E826
+ .string "Yikes!\n"
+ .string "You’re better than I expected!$"
+
+Route110_Text_16E84C:: @ 816E84C
+ .string "MAY: {PLAYER}{KUN}, you’ve been busy\n"
+ .string "training, too, haven’t you?\p"
+ .string "I think you deserve a reward!\n"
+ .string "This is from me!$"
+
+Route110_Text_16E8B3:: @ 816E8B3
+ .string "MAY: That’s an ITEMFINDER.\p"
+ .string "Try it out. If there is an item that’s\n"
+ .string "not visible, it emits a sound.\p"
+ .string "Okay, {PLAYER}{KUN}, let’s meet again!\p"
+ .string "I know it’s a little silly coming from\n"
+ .string "me, but I think you should train a lot\l"
+ .string "harder for the next time.$"
+
+Route110_Text_16E99A:: @ 816E99A
+ .string "BRENDAN: Hey, {PLAYER}.\n"
+ .string "So this is where you were.\l"
+ .string "How’s it going?\p"
+ .string "Have you been raising your POKéMON?\n"
+ .string "I’ll check for you.$"
+
+Route110_Text_16EA0F:: @ 816EA0F
+ .string "Hmm...\n"
+ .string "You’re pretty good.$"
+
+Route110_Text_16EA2A:: @ 816EA2A
+ .string "BRENDAN: {PLAYER}, you’ve trained\n"
+ .string "without me noticing...\p"
+ .string "Good enough!\n"
+ .string "Here, take this.$"
+
+Route110_Text_16EA7B:: @ 816EA7B
+ .string "BRENDAN: That’s an ITEMFINDER.\p"
+ .string "Use it to root around for items that\n"
+ .string "aren’t visible.\p"
+ .string "If it senses something, it emits a\n"
+ .string "sound.\p"
+ .string "Anyway, I’m off to look for new\n"
+ .string "POKéMON.$"
+
+Route110_Text_16EB22:: @ 816EB22
+ .string "Wouldn’t it be great to ride a BIKE\n"
+ .string "at full speed on CYCLING ROAD?$"
+
+Route110_Text_16EB65:: @ 816EB65
+ .string "How do you like the way my raven-\n"
+ .string "colored hair streams behind me?\p"
+ .string "I grew my hair out just for that.$"
+
+Route110_Text_16EBC9:: @ 816EBC9
+ .string "Oh, hey, you got that BIKE from RYDEL!\p"
+ .string "Oh, it’s glaringly obvious.\n"
+ .string "It says right on your bike...\p"
+ .string "RYDEL, RYDEL, RYDEL, RYDEL, RYDEL,\n"
+ .string "RYDEL, RYDEL, RYDEL, RYDEL, RYDEL,\p"
+ .string "RYDEL, RYDEL, RYDEL, RYDEL, RYDEL,\n"
+ .string "RYDEL, RYDEL, RYDEL, RYDEL, RYDEL,\p"
+ .string "RYDEL, RYDEL, RYDEL, RYDEL, RYDEL,\n"
+ .string "RYDEL, RYDEL, RYDEL, RYDEL, RYDEL,\p"
+ .string "RYDEL, RYDEL, RYDEL, RYDEL, RYDEL,\n"
+ .string "RYDEL, RYDEL, RYDEL, RYDEL, RYDEL,\p"
+ .string "RYDEL, RYDEL, RYDEL, RYDEL, RYDEL...\n"
+ .string "That name’s everywhere.\p"
+ .string "You should ride it around all over\n"
+ .string "the place - it’s good advertising!$"
+
+Route110_Text_16EDC5:: @ 816EDC5
+ .string "The two roads, one above, one below...\p"
+ .string "A road each for people and POKéMON.\n"
+ .string "Perhaps that is right and fair.$"
+
+Route110_Text_16EE30:: @ 816EE30
+ .string "I don’t have a BIKE, so I’ll take a\n"
+ .string "leisurely walk on the low road.$"
+
+Route110_Text_16EE74:: @ 816EE74
+ .string "Learning techniques will make BIKE\n"
+ .string "riding even more fun.\p"
+ .string "There are some places that you can\n"
+ .string "reach only by using a BIKE technique.$"
+
+Route110_Text_16EEF6:: @ 816EEF6
+ .string "Which should I choose?\p"
+ .string "Make a beeline for MAUVILLE on\n"
+ .string "CYCLING ROAD, or take the low road\l"
+ .string "and look for POKéMON?$"
+
+Route110_Text_16EF65:: @ 816EF65
+ .string "Number of collisions:\n"
+ .string "... ... {STR_VAR_1}!\p"
+ .string "Total time:\n"
+ .string "... ... {STR_VAR_2}!$"
+
+Route110_Text_16EF9F:: @ 816EF9F
+ .string "Bravo! Splendid showing!\p"
+ .string "Your love of cycling comes from deep\n"
+ .string "within your heart.\l"
+ .string "You’ve shaken me to my very soul!$"
+
+Route110_Text_16F012:: @ 816F012
+ .string "Your technique is remarkable.\p"
+ .string "I suggest you slow down just enough\n"
+ .string "to avoid collisions.$"
+
+Route110_Text_16F069:: @ 816F069
+ .string "I would consider you a work in\n"
+ .string "progress.\p"
+ .string "Still, I hope you don’t forget the\n"
+ .string "sheer pleasure of cycling.$"
+
+Route110_Text_16F0D0:: @ 816F0D0
+ .string "My word... Your cycling skills border\n"
+ .string "on terrifying.\p"
+ .string "Most certainly, you need much more\n"
+ .string "practice riding.$"
+
+Route110_Text_16F139:: @ 816F139
+ .string "...I am aghast...\p"
+ .string "You’re perhaps not cut out for this\n"
+ .string "unfortunate cycling business.\p"
+ .string "You ought to give serious thought to\n"
+ .string "returning that BIKE to RYDEL.$"
+
+Route110_Text_16F1D0:: @ 816F1D0
+ .string "This is CYCLING ROAD.\p"
+ .string "If you were to ride from MAUVILLE to\n"
+ .string "SLATEPORT on a MACH BIKE, you would\l"
+ .string "be rated for the number of collisions\l"
+ .string "and your total time.$"
+
+Route110_Text_16F26A:: @ 816F26A
+ .string "Regardless of the results, I count on\n"
+ .string "seeing more challenges from you.\l"
+ .string "Always aim higher!$"
+
+Route110_Text_16F2C4:: @ 816F2C4
+ .string "On this CYCLING ROAD, those riding\n"
+ .string "MACH BIKES are rated for their number\l"
+ .string "of collisions and their total times.\p"
+ .string "ACRO BIKES do not qualify for rating.\n"
+ .string "They are easy to turn, so it’s not fair.$"
+
+Route110_Text_16F381:: @ 816F381
+ .string "ROUTE 110\n"
+ .string "{0x7A} SLATEPORT CITY$"
+
+Route110_Text_16F39C:: @ 816F39C
+ .string "SEASIDE CYCLING ROAD$"
+
+Route110_Text_16F3B1:: @ 816F3B1
+ .string "“TEAM {EVIL_TEAM} RULEZ!”\p"
+ .string "Somebody scribbled that on the sign...$"
+
+Route110_Text_16F3E9:: @ 816F3E9
+ .string "ROUTE 110\n"
+ .string "{0x7B} ROUTE 103$"
+
+Route110_Text_16F3FF:: @ 816F3FF
+ .string "SEASIDE PARKING$"
+
+Route110_Text_16F40F:: @ 816F40F
+ .string "ROUTE 110\n"
+ .string "{0x79} MAUVILLE CITY$"
+
+Route110_Text_16F429:: @ 816F429
+ .string "TRAINER TIPS\p"
+ .string "The foe can be made helpless by\n"
+ .string "paralyzing it or causing it to sleep.\p"
+ .string "It is an important technique for\n"
+ .string "POKéMON battles.$"
+
+Route110_Text_16F4AE:: @ 816F4AE
+ .string "TRAINER TIPS\p"
+ .string "The items in the BAG can be reorganized\n"
+ .string "by pressing SELECT.$"
+
+Route110_Text_16F4F7:: @ 816F4F7
+ .string "“Three steps {0x7C} and two steps {0x79}\n"
+ .string "to reach the wondrous TRICK HOUSE.”$"
+
+Route110_Text_16F53A:: @ 816F53A
+ .string "THE BEST RECORD TO DATE...\p"
+ .string "No. of collisions: {STR_VAR_1}\p"
+ .string "Elapsed time: {STR_VAR_2}$"
+
+Route110_Text_16F57C:: @ 816F57C
+ .string "THE BEST RECORD TO DATE...\p"
+ .string "No one seems to have taken the\n"
+ .string "challenge. There is no record...$"
+
+ .incbin "baserom.gba", 0x16f5d7, 0x12e
+
diff --git a/data/maps/text/Route110_SeasideCyclingRoadNorthEntrance.s b/data/maps/text/Route110_SeasideCyclingRoadNorthEntrance.s
new file mode 100644
index 000000000..1f6343ed3
--- /dev/null
+++ b/data/maps/text/Route110_SeasideCyclingRoadNorthEntrance.s
@@ -0,0 +1 @@
+Route110_SeasideCyclingRoadNorthEntrance_Text_19E3AD:: @ 819E3AD
diff --git a/data/maps/text/Route110_SeasideCyclingRoadSouthEntrance.s b/data/maps/text/Route110_SeasideCyclingRoadSouthEntrance.s
new file mode 100644
index 000000000..cee94a531
--- /dev/null
+++ b/data/maps/text/Route110_SeasideCyclingRoadSouthEntrance.s
@@ -0,0 +1,6 @@
+Route110_SeasideCyclingRoadSouthEntrance_Text_19E326:: @ 819E326
+ .string "On CYCLING ROAD, you can go all out\n"
+ .string "and cycle as fast as you’d like.\p"
+ .string "It feels great to go that fast, but try\n"
+ .string "not to crash into anyone!$"
+
diff --git a/data/maps/text/Route110_TrickHouseEnd.s b/data/maps/text/Route110_TrickHouseEnd.s
new file mode 100644
index 000000000..43d6353b6
--- /dev/null
+++ b/data/maps/text/Route110_TrickHouseEnd.s
@@ -0,0 +1,106 @@
+Route110_TrickHouseEnd_Text_19C281:: @ 819C281
+ .string "Aak!\n"
+ .string "You’ve made it to me?\l"
+ .string "Hmmm... You’re sharp!$"
+
+Route110_TrickHouseEnd_Text_19C2B2:: @ 819C2B2
+ .string "It took me all night to plant all those\n"
+ .string "trees...\p"
+ .string "You’re almost my equal in greatness by\n"
+ .string "one, two, three, four, five, six places!$"
+
+Route110_TrickHouseEnd_Text_19C333:: @ 819C333
+ .string "It took me all night to make the maze...\p"
+ .string "You’re almost my equal in greatness by\n"
+ .string "one, two, three, four, five places!$"
+
+Route110_TrickHouseEnd_Text_19C3A7:: @ 819C3A7
+ .string "It took me all night to bring in those\n"
+ .string "boulders...\p"
+ .string "You’re almost my equal in greatness by\n"
+ .string "one, two, three, four places!$"
+
+Route110_TrickHouseEnd_Text_19C41F:: @ 819C41F
+ .string "It took me all night to shove in those\n"
+ .string "boulders...\p"
+ .string "You’re almost my equal in greatness by\n"
+ .string "one, two, three places!$"
+
+Route110_TrickHouseEnd_Text_19C491:: @ 819C491
+ .string "It took me all night to make MECHADOLLS\n"
+ .string "and another to think up the quiz...\p"
+ .string "You’re almost my equal in greatness by\n"
+ .string "one, two places!$"
+
+Route110_TrickHouseEnd_Text_19C515:: @ 819C515
+ .string "It took me all night to install\n"
+ .string "the doors...\p"
+ .string "You’re almost my equal in greatness!$"
+
+Route110_TrickHouseEnd_Text_19C567:: @ 819C567
+ .string "It took me all night setting up arrows...\p"
+ .string "You’re my equal in greatness!$"
+
+Route110_TrickHouseEnd_Text_19C5AF:: @ 819C5AF
+ .string "It took me all night polishing floors...\p"
+ .string "You’re above me in greatness!\n"
+ .string "Possibly...$"
+
+Route110_TrickHouseEnd_Text_19C602:: @ 819C602
+ .string "Wh-what should I do?\n"
+ .string "My fountain of ideas for tricks has\l"
+ .string "run dry...\p"
+ .string "Perhaps it is time I toured the country\n"
+ .string "on a quest to devise new tricks...$"
+
+Route110_TrickHouseEnd_Text_19C691:: @ 819C691
+ .string "I hate to admit defeat, but you have\n"
+ .string "bested me!\p"
+ .string "Still, you must have been reeled in by\n"
+ .string "my charisma for you to visit me again\l"
+ .string "and again. Yes, you must have!\p"
+ .string "But that has nothing to do with my\n"
+ .string "losing!\p"
+ .string "In recognition of the friendship\n"
+ .string "between you, the driven, and the genius\l"
+ .string "that is myself, I demand that you take\l"
+ .string "this keepsake!$"
+
+Route110_TrickHouseEnd_Text_19C7D7:: @ 819C7D7
+ .string "What? No room in your PC?\n"
+ .string "What am I to make of that?\p"
+ .string "I wish I could say that, but I am much\n"
+ .string "too kind and caring, so come back later!$"
+
+Route110_TrickHouseEnd_Text_19C85C:: @ 819C85C
+ .string "... ... ... ... ... ...\p"
+ .string "I am leaving on a journey of discovery.\n"
+ .string "A quest in search of new tricks.\p"
+ .string "I wish that you will one day visit and\n"
+ .string "entertain me again.\p"
+ .string "And now, farewell!$"
+
+Route110_TrickHouseEnd_Text_19C90B:: @ 819C90B
+ .string "Fine!\n"
+ .string "You have earned this reward!$"
+
+Route110_TrickHouseEnd_Text_19C92E:: @ 819C92E
+ .string "What? Have you no room for this?\n"
+ .string "What manner of items do you carry?\p"
+ .string "But fine, since you’ve reached me,\n"
+ .string "your reward will be with me till later.$"
+
+Route110_TrickHouseEnd_Text_19C9BD:: @ 819C9BD
+ .string "Scrub that smug smirk from your face!\n"
+ .string "It’s much too early to think you’ve won!\p"
+ .string "I’ll make new tricks to stump you, I will.\n"
+ .string "You may mock me only when you’re done.\p"
+ .string "Come back for the next exciting\n"
+ .string "installment!$"
+
+Route110_TrickHouseEnd_Text_19CA8B:: @ 819CA8B
+ .string "Now, now! You’re ignoring me now?\n"
+ .string "Now that, I consider heartbreaking!$"
+
+ .incbin "baserom.gba", 0x19cad1, 0x7e
+
diff --git a/data/maps/text/Route110_TrickHouseEntrance.s b/data/maps/text/Route110_TrickHouseEntrance.s
new file mode 100644
index 000000000..83f11ea5f
--- /dev/null
+++ b/data/maps/text/Route110_TrickHouseEntrance.s
@@ -0,0 +1,112 @@
+Route110_TrickHouseEntrance_Text_19BA56:: @ 819BA56
+ .string "You’re being watched...$"
+
+Route110_TrickHouseEntrance_Text_19BA6E:: @ 819BA6E
+ .string "Hah? Grrr...\p"
+ .string "How did you know I concealed myself\n"
+ .string "beneath this desk? You’re sharp!$"
+
+Route110_TrickHouseEntrance_Text_19BAC0:: @ 819BAC0
+ .string "Hah? Grrr...\p"
+ .string "How did you know I concealed myself\n"
+ .string "behind this tree? You’re sharp!$"
+
+Route110_TrickHouseEntrance_Text_19BB11:: @ 819BB11
+ .string "Hah? Grrr...\p"
+ .string "How did you know I concealed myself\n"
+ .string "in this dresser? You’re sharp!$"
+
+Route110_TrickHouseEntrance_Text_19BB61:: @ 819BB61
+ .string "Hah? Grrr...\p"
+ .string "How did you know I concealed myself\n"
+ .string "beyond this window? You’re sharp!$"
+
+Route110_TrickHouseEntrance_Text_19BBB4:: @ 819BBB4
+ .string "Hah? Grrr...\p"
+ .string "How did you know I concealed myself\n"
+ .string "in this planter? You’re sharp!$"
+
+Route110_TrickHouseEntrance_Text_19BC04:: @ 819BC04
+ .string "Hah? Grrr...\p"
+ .string "How did you know I concealed myself\n"
+ .string "in this cupboard? You’re sharp!$"
+
+Route110_TrickHouseEntrance_Text_19BC55:: @ 819BC55
+ .string "Hah? Grrr...\p"
+ .string "How did you know I concealed myself\n"
+ .string "behind this window? You’re sharp!$"
+
+Route110_TrickHouseEntrance_Text_19BCA8:: @ 819BCA8
+ .string "Hah? Grrr...\p"
+ .string "How did you know I concealed myself\n"
+ .string "beneath this cushion? You’re sharp!$"
+
+Route110_TrickHouseEntrance_Text_19BCFD:: @ 819BCFD
+ .string "Behold!\p"
+ .string "For I am the greatest living mystery\n"
+ .string "of a man in all of HOENN!\l"
+ .string "They call me...\p"
+ .string "The TRICK MASTER!\n"
+ .string "Wahahaha! Glad to meet you!$"
+
+Route110_TrickHouseEntrance_Text_19BD82:: @ 819BD82
+ .string "You, you’ve come to challenge my\n"
+ .string "TRICK HOUSE, haven’t you?\p"
+ .string "That’s why you’re here, isn’t it?\n"
+ .string "Yes, it is!\p"
+ .string "Consider your challenge accepted!\p"
+ .string "Enter through the scroll there,\n"
+ .string "and let your challenge commence!\p"
+ .string "I shall be waiting in the back!$"
+
+Route110_TrickHouseEntrance_Text_19BE6E:: @ 819BE6E
+ .string "It’s a scroll.$"
+
+Route110_TrickHouseEntrance_Text_19BE7D:: @ 819BE7D
+ .string "There is a big hole behind the scroll!\p"
+ .string "Want to go in?$"
+
+Route110_TrickHouseEntrance_Text_19BEB3:: @ 819BEB3
+ .string "There is a note affixed to the scroll...\p"
+ .string "“I am leaving on a journey.\n"
+ .string "Don’t look for me. TRICK MASTER”$"
+
+Route110_TrickHouseEntrance_Text_19BF19:: @ 819BF19
+ .string "For the next time, I’ll use this trick,\n"
+ .string "and that scheme, and those ruses...\p"
+ .string "Mufufufu... If I may say so, it’s\n"
+ .string "brilliantly difficult, even for me!$"
+
+Route110_TrickHouseEntrance_Text_19BFAB:: @ 819BFAB
+ .string "Hah? What?!\n"
+ .string "Oh, it’s you!\p"
+ .string "I’m in the midst of devising new tricky\n"
+ .string "challenges!\p"
+ .string "It’s not too much to ask for a bit more\n"
+ .string "time for me to think, is it now?\l"
+ .string "You wouldn’t begrudge me that?\l"
+ .string "Come back in a little while!$"
+
+Route110_TrickHouseEntrance_Text_19C07E:: @ 819C07E
+ .string "Ah, it’s you! You’re here to accept the\n"
+ .string "reward from before, isn’t that right?\l"
+ .string "Yes, right I am!\p"
+ .string "Here!\n"
+ .string "I’ll give it to you now!$"
+
+Route110_TrickHouseEntrance_Text_19C0FC:: @ 819C0FC
+ .string "Hah?\n"
+ .string "Did you not come to claim your reward?$"
+
+Route110_TrickHouseEntrance_Text_19C128:: @ 819C128
+ .string "MECHADOLL 5 I AM!\n"
+ .string "IF REWARD IS NOT TAKEN BY YOU,\l"
+ .string "THEN TRICK MASTER YOU CANNOT FOLLOW.$"
+
+Route110_TrickHouseEntrance_Text_19C17E:: @ 819C17E
+ .string "THEN FAREWELL.$"
+
+Route110_TrickHouseEntrance_Text_19C18D:: @ 819C18D
+ .string "YOUR PC STATUS: FULL AGAIN.\n"
+ .string "MEAN, YOU ARE.$"
+
diff --git a/data/maps/text/Route110_TrickHousePuzzle1.s b/data/maps/text/Route110_TrickHousePuzzle1.s
new file mode 100644
index 000000000..19731e2b4
--- /dev/null
+++ b/data/maps/text/Route110_TrickHousePuzzle1.s
@@ -0,0 +1,12 @@
+Route110_TrickHousePuzzle1_Text_19C1B8:: @ 819C1B8
+ .string "{PLAYER} found a scroll.$"
+
+Route110_TrickHousePuzzle1_Text_19C1CB:: @ 819C1CB
+ .string "{PLAYER} memorized the secret code\n"
+ .string "written on the scroll.$"
+
+Route110_TrickHousePuzzle1_Text_19C1FF:: @ 819C1FF
+ .string "A secret code is written on it.$"
+
+ .incbin "baserom.gba", 0x19c21f, 0x62
+
diff --git a/data/maps/text/Route110_TrickHousePuzzle2.s b/data/maps/text/Route110_TrickHousePuzzle2.s
new file mode 100644
index 000000000..76583b324
--- /dev/null
+++ b/data/maps/text/Route110_TrickHousePuzzle2.s
@@ -0,0 +1,35 @@
+Route110_TrickHousePuzzle2_Text_19CD46:: @ 819CD46
+ .string "Which switch closes which hole?$"
+
+Route110_TrickHousePuzzle2_Text_19CD66:: @ 819CD66
+ .string "After that battle, I’m even more\n"
+ .string "confused!$"
+
+Route110_TrickHousePuzzle2_Text_19CD91:: @ 819CD91
+ .string "Can I get you to push all the buttons\n"
+ .string "for me?$"
+
+Route110_TrickHousePuzzle2_Text_19CDBF:: @ 819CDBF
+ .string "Oh! You’re on your second TRICK HOUSE\n"
+ .string "challenge!$"
+
+Route110_TrickHousePuzzle2_Text_19CDF0:: @ 819CDF0
+ .string "You’re good at battling too?$"
+
+Route110_TrickHousePuzzle2_Text_19CE0D:: @ 819CE0D
+ .string "The TRICK MASTER rigged all the tricks\n"
+ .string "in this house all by himself.$"
+
+Route110_TrickHousePuzzle2_Text_19CE52:: @ 819CE52
+ .string "I want to make my own GYM one day.\n"
+ .string "So, I’m studying how to set traps.$"
+
+Route110_TrickHousePuzzle2_Text_19CE98:: @ 819CE98
+ .string "I didn’t study battling enough!$"
+
+Route110_TrickHousePuzzle2_Text_19CEB8:: @ 819CEB8
+ .string "You’re strong, aren’t you?\n"
+ .string "Maybe even enough to be a GYM LEADER!$"
+
+ .incbin "baserom.gba", 0x19cef9, 0x7d
+
diff --git a/data/maps/text/Route110_TrickHousePuzzle3.s b/data/maps/text/Route110_TrickHousePuzzle3.s
new file mode 100644
index 000000000..b4e6184fe
--- /dev/null
+++ b/data/maps/text/Route110_TrickHousePuzzle3.s
@@ -0,0 +1,37 @@
+Route110_TrickHousePuzzle3_Text_19CF76:: @ 819CF76
+ .string "I keep coming back to this same place!$"
+
+Route110_TrickHousePuzzle3_Text_19CF9D:: @ 819CF9D
+ .string "I’m already having trouble, and then\n"
+ .string "you have to beat me? It’s not fair!$"
+
+Route110_TrickHousePuzzle3_Text_19CFE6:: @ 819CFE6
+ .string "It’s full of doors here!\n"
+ .string "It’s too small and dark in here! Help!$"
+
+Route110_TrickHousePuzzle3_Text_19D026:: @ 819D026
+ .string "I don’t know what’s going on here.\n"
+ .string "I’m starting to feel sad...$"
+
+Route110_TrickHousePuzzle3_Text_19D065:: @ 819D065
+ .string "You... You’re awful!$"
+
+Route110_TrickHousePuzzle3_Text_19D07A:: @ 819D07A
+ .string "I know I’m weak!\n"
+ .string "And, I have no sense of direction!$"
+
+Route110_TrickHousePuzzle3_Text_19D0AE:: @ 819D0AE
+ .string "I don’t get it. What would anyone want\n"
+ .string "with a house this bizarre?$"
+
+Route110_TrickHousePuzzle3_Text_19D0F0:: @ 819D0F0
+ .string "I don’t get it.\n"
+ .string "How did I lose?$"
+
+Route110_TrickHousePuzzle3_Text_19D110:: @ 819D110
+ .string "I don’t get it.\n"
+ .string "How many traps are in this house?\p"
+ .string "You may be the one to solve that.$"
+
+ .incbin "baserom.gba", 0x19d164, 0x7a
+
diff --git a/data/maps/text/Route110_TrickHousePuzzle4.s b/data/maps/text/Route110_TrickHousePuzzle4.s
new file mode 100644
index 000000000..7a0516a75
--- /dev/null
+++ b/data/maps/text/Route110_TrickHousePuzzle4.s
@@ -0,0 +1,36 @@
+Route110_TrickHousePuzzle4_Text_19D1DE:: @ 819D1DE
+ .string "It’s too much bother to think this out.\n"
+ .string "I only wanted to battle!$"
+
+Route110_TrickHousePuzzle4_Text_19D21F:: @ 819D21F
+ .string "Even though I lost, I still like battling\n"
+ .string "the best!$"
+
+Route110_TrickHousePuzzle4_Text_19D253:: @ 819D253
+ .string "Wouldn’t you agree? You would go\n"
+ .string "anywhere if TRAINERS were there.$"
+
+Route110_TrickHousePuzzle4_Text_19D295:: @ 819D295
+ .string "Heh! Boulders like this, I can brush\n"
+ .string "aside with one finger!$"
+
+Route110_TrickHousePuzzle4_Text_19D2D1:: @ 819D2D1
+ .string "I can push boulders, but I can’t solve\n"
+ .string "the puzzle...$"
+
+Route110_TrickHousePuzzle4_Text_19D306:: @ 819D306
+ .string "It’s not good enough to be brawny...\n"
+ .string "You have to use your head. Be brainy!$"
+
+Route110_TrickHousePuzzle4_Text_19D351:: @ 819D351
+ .string "The TRICK HOUSE is getting trickier,\n"
+ .string "isn’t it?$"
+
+Route110_TrickHousePuzzle4_Text_19D380:: @ 819D380
+ .string "Aaak!$"
+
+Route110_TrickHousePuzzle4_Text_19D386:: @ 819D386
+ .string "Has anyone made it to the end?$"
+
+ .incbin "baserom.gba", 0x19d3a5, 0x7e
+
diff --git a/data/maps/text/Route110_TrickHousePuzzle5.s b/data/maps/text/Route110_TrickHousePuzzle5.s
new file mode 100644
index 000000000..e88aaa08f
--- /dev/null
+++ b/data/maps/text/Route110_TrickHousePuzzle5.s
@@ -0,0 +1,127 @@
+Route110_TrickHousePuzzle5_Text_19D423:: @ 819D423
+ .string "CLICKETY-CLACK...\n"
+ .string "MECHADOLL 1 AM I!\p"
+ .string "IF YOU ANSWER QUIZZES CORRECTLY,\n"
+ .string "THEN YOU WILL GO TO MECHADOLL 5.\l"
+ .string "THEN YOU CAN OBTAIN THE SECRET CODE.$"
+
+Route110_TrickHousePuzzle5_Text_19D4AE:: @ 819D4AE
+ .string "MECHADOLL 1 QUIZ.\p"
+ .string "One of these POKéMON is not found\n"
+ .string "on ROUTE 103. Which one is it?$"
+
+Route110_TrickHousePuzzle5_Text_19D501:: @ 819D501
+ .string "MECHADOLL 1 QUIZ.\p"
+ .string "One of these POKéMON is not of the\n"
+ .string "GRASS type. Which one is it?$"
+
+Route110_TrickHousePuzzle5_Text_19D553:: @ 819D553
+ .string "MECHADOLL 1 QUIZ.\p"
+ .string "One of these POKéMON uses SCRATCH.\n"
+ .string "Which one is it?$"
+
+Route110_TrickHousePuzzle5_Text_19D599:: @ 819D599
+ .string "CONGRATULATIONS. CORRECT YOU ARE.\n"
+ .string "GO THROUGH. PLEASE.$"
+
+Route110_TrickHousePuzzle5_Text_19D5CF:: @ 819D5CF
+ .string "BZZZT. DISAPPOINTMENT.\n"
+ .string "ERROR.$"
+
+Route110_TrickHousePuzzle5_Text_19D5ED:: @ 819D5ED
+ .string "WAHAHAHAHA! WAHAHAHAHA!\n"
+ .string "CLICKETY-CLACK!$"
+
+Route110_TrickHousePuzzle5_Text_19D615:: @ 819D615
+ .string "YOUR NEXT CHALLENGE WE WAIT FOR.$"
+
+Route110_TrickHousePuzzle5_Text_19D636:: @ 819D636
+ .string "CLICKETY-CLACK...\n"
+ .string "MECHADOLL 2 AM I!\p"
+ .string "MECHADOLL 1’S QUIZ DIFFICULTY LEVEL\n"
+ .string "IS SET TOO LOW.$"
+
+Route110_TrickHousePuzzle5_Text_19D68E:: @ 819D68E
+ .string "MECHADOLL 2 QUIZ.\p"
+ .string "In PROF. BIRCH’s bag, there were three\n"
+ .string "POKéMON. Which one was at the right?$"
+
+Route110_TrickHousePuzzle5_Text_19D6EC:: @ 819D6EC
+ .string "MECHADOLL 2 QUIZ.\p"
+ .string "Which POKéMON was offered for a trade\n"
+ .string "at the POKéMON TRAINER’S SCHOOL?$"
+
+Route110_TrickHousePuzzle5_Text_19D745:: @ 819D745
+ .string "MECHADOLL 2 QUIZ.\p"
+ .string "The DEVON RESEARCHER was looking for\n"
+ .string "what POKéMON in PETALBURG WOODS?$"
+
+ .incbin "baserom.gba", 0x19d79d, 0x36
+
+Route110_TrickHousePuzzle5_Text_19D7D3:: @ 819D7D3
+ .string "CLICKETY-CLACK...\n"
+ .string "MECHADOLL 3 AM I!\p"
+ .string "MATTERS OF MONEY ARE MY SOLE FOCUS.$"
+
+Route110_TrickHousePuzzle5_Text_19D81B:: @ 819D81B
+ .string "MECHADOLL 3 QUIZ.\p"
+ .string "Which costs more?\n"
+ .string "Three POKé BALLS or one SUPER POTION?$"
+
+Route110_TrickHousePuzzle5_Text_19D865:: @ 819D865
+ .string "MECHADOLL 3 QUIZ.\p"
+ .string "Sell one ESCAPE ROPE and buy\n"
+ .string "one ANTIDOTE. How much money remains?$"
+
+Route110_TrickHousePuzzle5_Text_19D8BA:: @ 819D8BA
+ .string "MECHADOLL 3 QUIZ.\p"
+ .string "Do one FULL HEAL and GREAT BALL\n"
+ .string "cost more than one REVIVE?$"
+
+ .incbin "baserom.gba", 0x19d907, 0x36
+
+Route110_TrickHousePuzzle5_Text_19D93D:: @ 819D93D
+ .string "CLICKETY-CLACK...\n"
+ .string "MECHADOLL 4 THAT IS ME!\p"
+ .string "MY QUIZ IS AN OBJECT OF BEAUTY.$"
+
+Route110_TrickHousePuzzle5_Text_19D987:: @ 819D987
+ .string "MECHADOLL 4 QUIZ.\p"
+ .string "RUSTBORO GYM LEADER ROXANNE used a\n"
+ .string "GEODUDE. Was it male or female?$"
+
+Route110_TrickHousePuzzle5_Text_19D9DC:: @ 819D9DC
+ .string "MECHADOLL 4 QUIZ.\p"
+ .string "In DEWFORD HALL, were there more men\n"
+ .string "or women?$"
+
+Route110_TrickHousePuzzle5_Text_19DA1D:: @ 819DA1D
+ .string "MECHADOLL 4 QUIZ.\p"
+ .string "The first TRAINER in DEWFORD GYM was\n"
+ .string "male or female?$"
+
+ .incbin "baserom.gba", 0x19da64, 0x36
+
+Route110_TrickHousePuzzle5_Text_19DA9A:: @ 819DA9A
+ .string "CLICKETY-CLACK...\n"
+ .string "MECHADOLL 5 AM I!\p"
+ .string "THE MASTER’S BEST AND PROUDEST\n"
+ .string "ACHIEVEMENT AM I.$"
+
+Route110_TrickHousePuzzle5_Text_19DAEF:: @ 819DAEF
+ .string "MECHADOLL 5 QUIZ.\p"
+ .string "How many BIKES does RYDEL have on\n"
+ .string "display outside his cycle shop?$"
+
+Route110_TrickHousePuzzle5_Text_19DB43:: @ 819DB43
+ .string "MECHADOLL 5 QUIZ.\p"
+ .string "How many people give you BERRIES at the\n"
+ .string "PRETTY PETAL flower shop?$"
+
+Route110_TrickHousePuzzle5_Text_19DB97:: @ 819DB97
+ .string "MECHADOLL 5 QUIZ.\p"
+ .string "How many signs are there in\n"
+ .string "LILYCOVE CITY?$"
+
+ .incbin "baserom.gba", 0x19dbd4, 0xb3
+
diff --git a/data/maps/text/Route110_TrickHousePuzzle6.s b/data/maps/text/Route110_TrickHousePuzzle6.s
new file mode 100644
index 000000000..559336ae4
--- /dev/null
+++ b/data/maps/text/Route110_TrickHousePuzzle6.s
@@ -0,0 +1,38 @@
+Route110_TrickHousePuzzle6_Text_19DC87:: @ 819DC87
+ .string "When I heard there was a strange\n"
+ .string "house, I had to check it out.$"
+
+Route110_TrickHousePuzzle6_Text_19DCC6:: @ 819DCC6
+ .string "I’ve discovered a tough TRAINER!$"
+
+Route110_TrickHousePuzzle6_Text_19DCE7:: @ 819DCE7
+ .string "I’m sure having a good time checking\n"
+ .string "this place out.\p"
+ .string "It’s a challenge I’ve found worth\n"
+ .string "repeating!$"
+
+Route110_TrickHousePuzzle6_Text_19DD49:: @ 819DD49
+ .string "Maybe I could get my BIRD POKéMON\n"
+ .string "to fly over the wall...$"
+
+Route110_TrickHousePuzzle6_Text_19DD83:: @ 819DD83
+ .string "Gwaaah! I blew it!$"
+
+Route110_TrickHousePuzzle6_Text_19DD96:: @ 819DD96
+ .string "Ehehehe... I guess I lost because I\n"
+ .string "was trying to cheat.$"
+
+Route110_TrickHousePuzzle6_Text_19DDCF:: @ 819DDCF
+ .string "I’m getting dizzy from these rotating\n"
+ .string "doors...$"
+
+Route110_TrickHousePuzzle6_Text_19DDFE:: @ 819DDFE
+ .string "Everything’s spinning around and\n"
+ .string "around. I can’t take this anymore...$"
+
+Route110_TrickHousePuzzle6_Text_19DE44:: @ 819DE44
+ .string "You don’t seem to be affected at all.\n"
+ .string "Or do you have your poker face on?$"
+
+ .incbin "baserom.gba", 0x19de8d, 0x7e
+
diff --git a/data/maps/text/Route110_TrickHousePuzzle7.s b/data/maps/text/Route110_TrickHousePuzzle7.s
new file mode 100644
index 000000000..9cccb954d
--- /dev/null
+++ b/data/maps/text/Route110_TrickHousePuzzle7.s
@@ -0,0 +1,38 @@
+Route110_TrickHousePuzzle7_Text_19DF0B:: @ 819DF0B
+ .string "The TRICK MASTER always vanishes\n"
+ .string "like smoke. How does he do it?$"
+
+Route110_TrickHousePuzzle7_Text_19DF4B:: @ 819DF4B
+ .string "Aiyeeeh! You’re much too strong!\n"
+ .string "How do you do it?$"
+
+Route110_TrickHousePuzzle7_Text_19DF7E:: @ 819DF7E
+ .string "I wish I could appear and disappear as\n"
+ .string "if I were smoke, too.$"
+
+Route110_TrickHousePuzzle7_Text_19DFBB:: @ 819DFBB
+ .string "Going around the same spot...\n"
+ .string "It begets ill fortune...$"
+
+Route110_TrickHousePuzzle7_Text_19DFF2:: @ 819DFF2
+ .string "Defeated!\n"
+ .string "It’s a bad sign...$"
+
+Route110_TrickHousePuzzle7_Text_19E00F:: @ 819E00F
+ .string "I’ve circled the same spot over ten\n"
+ .string "times now... It’s ill fortune...$"
+
+Route110_TrickHousePuzzle7_Text_19E054:: @ 819E054
+ .string "Whoever wins will get through here\n"
+ .string "first. That’s the feeling I get.$"
+
+Route110_TrickHousePuzzle7_Text_19E098:: @ 819E098
+ .string "Oh!\n"
+ .string "Well, go ahead, then!$"
+
+Route110_TrickHousePuzzle7_Text_19E0B2:: @ 819E0B2
+ .string "You’re solving all the puzzles in the\n"
+ .string "TRICK HOUSE. That’s the feeling I get.$"
+
+ .incbin "baserom.gba", 0x19e0ff, 0x79
+
diff --git a/data/maps/text/Route110_TrickHousePuzzle8.s b/data/maps/text/Route110_TrickHousePuzzle8.s
new file mode 100644
index 000000000..fa5173969
--- /dev/null
+++ b/data/maps/text/Route110_TrickHousePuzzle8.s
@@ -0,0 +1,35 @@
+Route110_TrickHousePuzzle8_Text_19E178:: @ 819E178
+ .string "Not many TRAINERS have made it\n"
+ .string "this far.$"
+
+Route110_TrickHousePuzzle8_Text_19E1A1:: @ 819E1A1
+ .string "That must mean you’re tough, too...$"
+
+Route110_TrickHousePuzzle8_Text_19E1C5:: @ 819E1C5
+ .string "You’ve beaten the POKéMON LEAGUE\n"
+ .string "CHAMPION? That’s too much!$"
+
+Route110_TrickHousePuzzle8_Text_19E201:: @ 819E201
+ .string "Consider yourself lucky to be\n"
+ .string "battling me!$"
+
+Route110_TrickHousePuzzle8_Text_19E22C:: @ 819E22C
+ .string "This isn’t right!\n"
+ .string "I can’t lose!$"
+
+Route110_TrickHousePuzzle8_Text_19E24C:: @ 819E24C
+ .string "It’s a miracle that you beat me.\n"
+ .string "You can brag about it.$"
+
+Route110_TrickHousePuzzle8_Text_19E284:: @ 819E284
+ .string "You’ve been slugging through the TRICK\n"
+ .string "HOUSE challenge, too.$"
+
+Route110_TrickHousePuzzle8_Text_19E2C1:: @ 819E2C1
+ .string "I see...\n"
+ .string "You possess an extraordinary style.$"
+
+Route110_TrickHousePuzzle8_Text_19E2EE:: @ 819E2EE
+ .string "Seeing someone like you should please\n"
+ .string "the TRICK MASTER.$"
+
diff --git a/data/maps/text/Route111.s b/data/maps/text/Route111.s
new file mode 100644
index 000000000..35ed597cb
--- /dev/null
+++ b/data/maps/text/Route111.s
@@ -0,0 +1,120 @@
+Route111_Text_16F705:: @ 816F705
+ .string "Hello! I take it you’re a traveler.\p"
+ .string "How’s this? What do you say to taking\n"
+ .string "on our family of four in a series of\l"
+ .string "POKéMON battles?$"
+
+Route111_Text_16F785:: @ 816F785
+ .string "Is that so?\n"
+ .string "Drop in, if you change your mind!$"
+
+Route111_Text_16F7B3:: @ 816F7B3
+ .string "That’s the spirit! I like you!$"
+
+Route111_Text_16F7D2:: @ 816F7D2
+ .string "Aiyah!\n"
+ .string "You’re a lot tougher than I expected!$"
+
+Route111_Text_16F7FF:: @ 816F7FF
+ .string "Hey, all!\n"
+ .string "I’ve found a pretty strong TRAINER!$"
+
+Route111_Text_16F82D:: @ 816F82D
+ .string "Oh, my goodness! Aren’t you young?\p"
+ .string "You must be quite the TRAINER to beat\n"
+ .string "my husband, though.\p"
+ .string "It’s my turn to battle now!$"
+
+Route111_Text_16F8A6:: @ 816F8A6
+ .string "Oh, gosh!\n"
+ .string "I can’t get over how strong you are!$"
+
+Route111_Text_16F8D5:: @ 816F8D5
+ .string "There’s a strong TRAINER here!\n"
+ .string "This one’s really strong!$"
+
+Route111_Text_16F90E:: @ 816F90E
+ .string "You’re stronger than Mommy? Wow!\p"
+ .string "But I’m strong, too!\n"
+ .string "Really! Honestly!$"
+
+Route111_Text_16F956:: @ 816F956
+ .string "Huh? Did I just lose?$"
+
+Route111_Text_16F96C:: @ 816F96C
+ .string "This stinks...\p"
+ .string "...Snivel... Grandma!$"
+
+Route111_Text_16F991:: @ 816F991
+ .string "How dare you make my granddaughter\n"
+ .string "cry!\p"
+ .string "For that, I’m going to smack you!\n"
+ .string "Prepare to lose!$"
+
+Route111_Text_16F9EC:: @ 816F9EC
+ .string "Kwah! You are strong...\n"
+ .string "My granddaughter was right...$"
+
+Route111_Text_16FA22:: @ 816FA22
+ .string "If you’re not in any hurry, visit with\n"
+ .string "us awhile.$"
+
+Route111_Text_16FA54:: @ 816FA54
+ .string "You found the ROOT FOSSIL.\p"
+ .string "If this FOSSIL is taken, the other\n"
+ .string "one will sink into the sand...\p"
+ .string "Take the ROOT FOSSIL anyway?$"
+
+Route111_Text_16FACE:: @ 816FACE
+ .string "{PLAYER} left the ROOT FOSSIL alone.$"
+
+Route111_Text_16FAED:: @ 816FAED
+ .string "You found the CLAW FOSSIL.\p"
+ .string "If this FOSSIL is taken, the other\n"
+ .string "one will sink into the sand...\p"
+ .string "Take the CLAW FOSSIL anyway?$"
+
+Route111_Text_16FB67:: @ 816FB67
+ .string "{PLAYER} left the CLAW FOSSIL alone.$"
+
+Route111_Text_16FB86:: @ 816FB86
+ .string "If you don’t raise your POKéMON some\n"
+ .string "more, it could be tough to keep winning\l"
+ .string "up through the ranks.\p"
+ .string "I’ve heard the POKéMON LEAGUE’s\n"
+ .string "ELITE FOUR are far stronger than\l"
+ .string "any GYM LEADER.$"
+
+Route111_Text_16FC3A:: @ 816FC3A
+ .string "I challenged the WINSTRATE family,\n"
+ .string "but four matches in a row is tough\l"
+ .string "going... They destroyed me.$"
+
+Route111_Text_16FC9C:: @ 816FC9C
+ .string "ROUTE 111\n"
+ .string "{0x7A} MAUVILLE CITY$"
+
+Route111_Text_16FCB6:: @ 816FCB6
+ .string "“Our family’s hearts beat as one!”\n"
+ .string "THE WINSTRATE’S HOUSE$"
+
+Route111_Text_16FCEF:: @ 816FCEF
+ .string "ROUTE 111\n"
+ .string "{0x7B} ROUTE 112$"
+
+Route111_Text_16FD05:: @ 816FD05
+ .string "ROUTE 111\n"
+ .string "{0x7B} ROUTE 113$"
+
+Route111_Text_16FD1B:: @ 816FD1B
+ .string "OLD LADY’S REST STOP\n"
+ .string "“Come in and rest your tired bones.”$"
+
+Route111_Text_16FD55:: @ 816FD55
+ .string "TRAINER TIPS\p"
+ .string "One of the indicators of a POKéMON’s\n"
+ .string "powerfulness is SP. ATK. It stands for\l"
+ .string "“SPECIAL ATTACK.”\p"
+ .string "Likewise, SP. DEF stands for “SPECIAL\n"
+ .string "DEFENSE.”$"
+
diff --git a/data/maps/text/Route111_OldLadysRestStop.s b/data/maps/text/Route111_OldLadysRestStop.s
new file mode 100644
index 000000000..05823893d
--- /dev/null
+++ b/data/maps/text/Route111_OldLadysRestStop.s
@@ -0,0 +1,20 @@
+Route111_OldLadysRestStop_Text_1923AF:: @ 81923AF
+ .string "Oh, dear, dear.\n"
+ .string "Aren’t your POKéMON exhausted?\p"
+ .string "If you’d like, rest up here.\n"
+ .string "That’s a fine idea! You should do that.$"
+
+Route111_OldLadysRestStop_Text_192423:: @ 8192423
+ .string "That’s right.\n"
+ .string "Take your time and rest up!$"
+
+Route111_OldLadysRestStop_Text_19244D:: @ 819244D
+ .string "Oh, dear, dear.\n"
+ .string "Are your POKéMON still tired?\p"
+ .string "You should take another rest here.\n"
+ .string "That’s a fine idea. You should do that.$"
+
+Route111_OldLadysRestStop_Text_1924C6:: @ 81924C6
+ .string "Is that so?\n"
+ .string "You don’t need to be shy about it.$"
+
diff --git a/data/maps/text/Route111_WinstrateFamilysHouse.s b/data/maps/text/Route111_WinstrateFamilysHouse.s
new file mode 100644
index 000000000..a2fb85041
--- /dev/null
+++ b/data/maps/text/Route111_WinstrateFamilysHouse.s
@@ -0,0 +1,44 @@
+Route111_WinstrateFamilysHouse_Text_191FCE:: @ 8191FCE
+ .string "You’re the first TRAINER I’ve seen who\n"
+ .string "deploys POKéMON so masterfully.\p"
+ .string "But, I should tell you - my son is\n"
+ .string "stronger than you.\p"
+ .string "He even took the POKéMON LEAGUE\n"
+ .string "challenge, I’ll have you know.$"
+
+Route111_WinstrateFamilysHouse_Text_19208A:: @ 819208A
+ .string "We use this MACHO BRACE to more\n"
+ .string "effectively strengthen our POKéMON\l"
+ .string "in training.\p"
+ .string "Since you’ve beaten our entire family,\n"
+ .string "I don’t know if you need it, but we\l"
+ .string "would like you to have our MACHO BRACE.$"
+
+Route111_WinstrateFamilysHouse_Text_19214D:: @ 819214D
+ .string "When it comes to POKéMON battles,\n"
+ .string "we tend to be pretty passionate.$"
+
+Route111_WinstrateFamilysHouse_Text_192190:: @ 8192190
+ .string "Mommy is stronger than Daddy.\p"
+ .string "I’m stronger than Mommy.\p"
+ .string "And Grandma’s stronger than me!\p"
+ .string "But my big brother is even stronger\n"
+ .string "than Grandma.$"
+
+Route111_WinstrateFamilysHouse_Text_192219:: @ 8192219
+ .string "There’s no question that you’re strong.\p"
+ .string "But if you were to battle my grandson,\n"
+ .string "you’d end up crying in frustration.\p"
+ .string "He’s much stronger than any TRAINER\n"
+ .string "our family knows.\p"
+ .string "He must be challenging the POKéMON\n"
+ .string "LEAGUE CHAMPION by now.\p"
+ .string "Knowing my grandson, he could be the\n"
+ .string "CHAMPION already!$"
+
+Route111_WinstrateFamilysHouse_Text_192334:: @ 8192334
+ .string "My grandson must be challenging the\n"
+ .string "POKéMON LEAGUE CHAMPION by now.\p"
+ .string "Knowing my grandson, he could be the\n"
+ .string "CHAMPION already!$"
+
diff --git a/data/maps/text/Route112.s b/data/maps/text/Route112.s
new file mode 100644
index 000000000..5171aecaa
--- /dev/null
+++ b/data/maps/text/Route112.s
@@ -0,0 +1,28 @@
+Route112_Text_16FDF0:: @ 816FDF0
+ .string "Grumble...\p"
+ .string "What happened to the others who went\n"
+ .string "to FALLARBOR? They’re late...$"
+
+Route112_Text_16FE3E:: @ 816FE3E
+ .string "Grumble...\p"
+ .string "I’d like to ride the CABLE CAR to the\n"
+ .string "top, too..$"
+
+Route112_Text_16FE7A:: @ 816FE7A
+ .string "Eh, I’d like to get to MAUVILLE, but if\n"
+ .string "I went down these ledges, it’d be no\l"
+ .string "easy matter to get back to LAVARIDGE.$"
+
+Route112_Text_16FEED:: @ 816FEED
+ .string "MT. CHIMNEY CABLE CAR\n"
+ .string "“A short walk {0x79} way!”$"
+
+Route112_Text_16FF19:: @ 816FF19
+ .string "MT. CHIMNEY\p"
+ .string "“For LAVARIDGE TOWN or the summit,\n"
+ .string "please take the CABLE CAR.”$"
+
+Route112_Text_16FF64:: @ 816FF64
+ .string "ROUTE 112\n"
+ .string "{0x7B} LAVARIDGE TOWN$"
+
diff --git a/data/maps/text/Route112_CableCarStation.s b/data/maps/text/Route112_CableCarStation.s
new file mode 100644
index 000000000..ccb3241e7
--- /dev/null
+++ b/data/maps/text/Route112_CableCarStation.s
@@ -0,0 +1,9 @@
+Route112_CableCarStation_Text_1924F5:: @ 81924F5
+ .string "The CABLE CAR is ready to go up.\n"
+ .string "Would you like to be on it?$"
+
+ .incbin "baserom.gba", 0x192532, 0x16
+
+Route112_CableCarStation_Text_192548:: @ 8192548
+ .string "Please ride with us another time.$"
+
diff --git a/data/maps/text/Route113.s b/data/maps/text/Route113.s
new file mode 100644
index 000000000..8ececd771
--- /dev/null
+++ b/data/maps/text/Route113.s
@@ -0,0 +1,31 @@
+Route113_Text_16FF7F:: @ 816FF7F
+ .string "Wahahaha! Today’s technology is a\n"
+ .string "wondrous thing!\p"
+ .string "Take this volcanic ash here.\n"
+ .string "It can be fashioned into glass.$"
+
+Route113_Text_16FFEE:: @ 816FFEE
+ .string "It’s fun walking through the volcano’s\n"
+ .string "ashes on the ground and grass.\p"
+ .string "You can see where you walked - it’s\n"
+ .string "really neat!$"
+
+Route113_Text_170065:: @ 8170065
+ .string "ROUTE 113\n"
+ .string "{0x7C} ROUTE 111$"
+
+Route113_Text_17007B:: @ 817007B
+ .string "ROUTE 113\n"
+ .string "{0x7B} FALLARBOR TOWN$"
+
+Route113_Text_170096:: @ 8170096
+ .string "TRAINER TIPS\p"
+ .string "You may register one of the KEY ITEMS\n"
+ .string "in your BAG as SELECT.\p"
+ .string "Simply press SELECT to use the\n"
+ .string "registered item conveniently.$"
+
+Route113_Text_17011D:: @ 817011D
+ .string "GLASS WORKSHOP\n"
+ .string "“Turning Volcanic Ash into Glass Items”$"
+
diff --git a/data/maps/text/Route113_GlassWorkshop.s b/data/maps/text/Route113_GlassWorkshop.s
new file mode 100644
index 000000000..e80f72d0e
--- /dev/null
+++ b/data/maps/text/Route113_GlassWorkshop.s
@@ -0,0 +1,87 @@
+Route113_GlassWorkshop_Text_19E4E6:: @ 819E4E6
+ .string "This area is covered in volcanic ash,\n"
+ .string "huff-puff!\p"
+ .string "I’m specially gifted, huff-puff.\p"
+ .string "I make glass out of volcanic ash\n"
+ .string "and make items, huff-puff.\p"
+ .string "Go collect ashes with this, huff-puff.$"
+
+Route113_GlassWorkshop_Text_19E59B:: @ 819E59B
+ .string "Just take that SOOT SACK and walk\n"
+ .string "through piles of ash, huff-puff.\p"
+ .string "And it will fill up with the volcanic ash,\n"
+ .string "huff-puff.\p"
+ .string "Once you think you’ve collected a good\n"
+ .string "amount, come see me, huff-puff.$"
+
+Route113_GlassWorkshop_Text_19E65B:: @ 819E65B
+ .string "Have you collected ashes, huff-puff?\n"
+ .string "Let me see, huff-puff.$"
+
+Route113_GlassWorkshop_Text_19E697:: @ 819E697
+ .string "Hmmm...\n"
+ .string "There’s not enough ash here, huff-puff.\l"
+ .string "I can’t make glass with this, huff-puff.\p"
+ .string "Let’s see... {STR_VAR_1} is the number of steps\n"
+ .string "you’ll need to walk for me to make you\l"
+ .string "a BLUE FLUTE, huff-puff.$"
+
+Route113_GlassWorkshop_Text_19E757:: @ 819E757
+ .string "Oh!\n"
+ .string "You’ve got a lot of ashes, huff-puff!\p"
+ .string "I’ll make you a glass item, huff-puff!\n"
+ .string "Which one would you like, huff-puff?$"
+
+Route113_GlassWorkshop_Text_19E7CD:: @ 819E7CD
+ .string "A {STR_VAR_1}, huff-puff?\n"
+ .string "Is that the one for you, huff-puff?$"
+
+Route113_GlassWorkshop_Text_19E802:: @ 819E802
+ .string "Which one would you like, huff-puff?$"
+
+Route113_GlassWorkshop_Text_19E827:: @ 819E827
+ .string "A {STR_VAR_1} it is, then, huff-puff!\p"
+ .string "Okay! I’ll make it for you, huff-puff.\n"
+ .string "Just wait a little while, huff-puff.$"
+
+Route113_GlassWorkshop_Text_19E890:: @ 819E890
+ .string "A {STR_VAR_1}, huff-puff?\p"
+ .string "There’s not enough ash here to make\n"
+ .string "that, though, huff-puff.\p"
+ .string "Let’s see... {STR_VAR_2} is the number of steps\n"
+ .string "you’ll need to walk through volcanic ash\l"
+ .string "for me to make that item, huff-puff.\p"
+ .string "Which item would you rather have me\n"
+ .string "make instead, huff-puff?$"
+
+Route113_GlassWorkshop_Text_19E990:: @ 819E990
+ .string "You’ve collected all that ash, but you\n"
+ .string "don’t want anything, huff-puff?$"
+
+Route113_GlassWorkshop_Text_19E9D7:: @ 819E9D7
+ .string "Ah, I’ve finished your {STR_VAR_1}.\n"
+ .string "Take it, huff-puff.$"
+
+Route113_GlassWorkshop_Text_19EA06:: @ 819EA06
+ .string "Oh?\n"
+ .string "You’ve no room in your BAG, huff-puff.\p"
+ .string "I’ll hold on to it, so come back later,\n"
+ .string "huff-puff.$"
+
+Route113_GlassWorkshop_Text_19EA64:: @ 819EA64
+ .string "Oh?\n"
+ .string "You’ve no room in your PC, huff-puff?\p"
+ .string "I’ll hold on to it, so come back later,\n"
+ .string "huff-puff.$"
+
+Route113_GlassWorkshop_Text_19EAC1:: @ 819EAC1
+ .string "Hah? You haven’t got your SOOT SACK\n"
+ .string "with you, huff-puff.\p"
+ .string "You have to keep it with you to collect\n"
+ .string "volcanic ash, huff-puff.$"
+
+Route113_GlassWorkshop_Text_19EB3B:: @ 819EB3B
+ .string "It’s fun to blow a glass flute while my\n"
+ .string "boss is talking.\p"
+ .string "Huff-huff! Puff-puff!$"
+
diff --git a/data/maps/text/Route114.s b/data/maps/text/Route114.s
new file mode 100644
index 000000000..5190cac0c
--- /dev/null
+++ b/data/maps/text/Route114.s
@@ -0,0 +1,24 @@
+Route114_Text_170154:: @ 8170154
+ .string "All my POKéMON does is ROAR...\n"
+ .string "No one dares to come near me...\p"
+ .string "Sigh... If you would, please take\n"
+ .string "this TM away...$"
+
+Route114_Text_1701C5:: @ 81701C5
+ .string "TM05 contains ROAR.\n"
+ .string "A ROAR sends POKéMON scurrying.$"
+
+Route114_Text_1701F9:: @ 81701F9
+ .string "Bow! Bowwow!$"
+
+Route114_Text_170206:: @ 8170206
+ .string "METEOR FALLS\n"
+ .string "RUSTBORO CITY THROUGH HERE$"
+
+Route114_Text_17022E:: @ 817022E
+ .string "FOSSIL MANIAC’S HOUSE\n"
+ .string "“Fossils gratefully accepted!”$"
+
+Route114_Text_170263:: @ 8170263
+ .string "LANETTE’S HOUSE$"
+
diff --git a/data/maps/text/Route114_FossilManiacsHouse.s b/data/maps/text/Route114_FossilManiacsHouse.s
new file mode 100644
index 000000000..af2cb7c6a
--- /dev/null
+++ b/data/maps/text/Route114_FossilManiacsHouse.s
@@ -0,0 +1,22 @@
+Route114_FossilManiacsHouse_Text_1925E1:: @ 81925E1
+ .string "My big brother’s the FOSSIL MANIAC...\n"
+ .string "He’s a nice guy who loves fossils...\p"
+ .string "He loves digging holes, too...\n"
+ .string "He dug this hole by himself...\p"
+ .string "You can have this, so you can DIG\n"
+ .string "holes just like my big brother...$"
+
+Route114_FossilManiacsHouse_Text_1926AE:: @ 81926AE
+ .string "If you make a POKéMON DIG inside a\n"
+ .string "cave, you’re returned to the entrance...$"
+
+Route114_FossilManiacsHouse_Text_1926FA:: @ 81926FA
+ .string "Rocks in peculiar shapes fill the\n"
+ .string "display case$"
+
+Route114_FossilManiacsHouse_Text_192729:: @ 8192729
+ .string "THE COMPOSITION OF STRATA...\n"
+ .string "HOW RAIN SHAPES THE LAND...\l"
+ .string "STONES, SOIL, AND ROCK...\p"
+ .string "It’s crammed with books.$"
+
diff --git a/data/maps/text/Route114_FossilManiacsTunnel.s b/data/maps/text/Route114_FossilManiacsTunnel.s
new file mode 100644
index 000000000..03b30ada6
--- /dev/null
+++ b/data/maps/text/Route114_FossilManiacsTunnel.s
@@ -0,0 +1,27 @@
+Route114_FossilManiacsTunnel_Text_192795:: @ 8192795
+ .string "I’m the FOSSIL MANIAC...\n"
+ .string "I’m a nice guy who loves fossils...\p"
+ .string "Do you want a fossil?\p"
+ .string "But the fossils around these parts all\n"
+ .string "belong to me... None for you...\p"
+ .string "If you can’t go without a fossil, go to\n"
+ .string "the desert on ROUTE 111...\p"
+ .string "From what I’ve heard, fossils that were\n"
+ .string "buried in the sand sometimes rise to\l"
+ .string "the surface from sandstorms...$"
+
+Route114_FossilManiacsTunnel_Text_1928DE:: @ 81928DE
+ .string "You found a FOSSIL, didn’t you?\n"
+ .string "That’s so nice... It’s so dreamy...\p"
+ .string "What are you going to do with that\n"
+ .string "FOSSIL?\p"
+ .string "From what I’ve heard, DEVON is doing\n"
+ .string "research on reviving POKéMON from\l"
+ .string "FOSSILS...\p"
+ .string "I love my FOSSILS, so I would never\n"
+ .string "do anything like that...$"
+
+Route114_FossilManiacsTunnel_Text_1929DC:: @ 81929DC
+ .string "FOSSILS are so... Wonderful...\n"
+ .string "It’s so dreamy...$"
+
diff --git a/data/maps/text/Route114_LanettesHouse.s b/data/maps/text/Route114_LanettesHouse.s
new file mode 100644
index 000000000..35ec3e86b
--- /dev/null
+++ b/data/maps/text/Route114_LanettesHouse.s
@@ -0,0 +1,57 @@
+Route114_LanettesHouse_Text_192A0D:: @ 8192A0D
+ .string "LANETTE: Oh! {PLAYER}{KUN}!\p"
+ .string "I’m sorry everything is so cluttered...\n"
+ .string "When I get engrossed in research,\l"
+ .string "things end up this way...\p"
+ .string "This is embarrassing... Please keep\n"
+ .string "this a secret in exchange for this.$"
+
+Route114_LanettesHouse_Text_192ACC:: @ 8192ACC
+ .string "May I offer advice about my POKéMON\n"
+ .string "Storage System?\p"
+ .string "You should organize your BOXES so you\n"
+ .string "can tell which POKéMON are in them.$"
+
+Route114_LanettesHouse_Text_192B4A:: @ 8192B4A
+ .string "It’s LANETTE’s research notes.\n"
+ .string "There’s information about BOXES.\p"
+ .string "Design BOXES to hold 30 POKéMON each.\p"
+ .string "Each TRAINER should be able to store\n"
+ .string "420 POKéMON on the PC system.\p"
+ .string "Keep reading?$"
+
+Route114_LanettesHouse_Text_192C01:: @ 8192C01
+ .string "A marking system should be added to\n"
+ .string "make POKéMON easier to organize.\p"
+ .string "The name and wallpaper design of each\n"
+ .string "BOX will be made changeable to please\l"
+ .string "the stored POKéMON.\p"
+ .string "Keep reading?$"
+
+Route114_LanettesHouse_Text_192CB4:: @ 8192CB4
+ .string "When storing a POKéMON, it should be\n"
+ .string "sent to the BOX inspected last.\p"
+ .string "If that BOX is full, the received\n"
+ .string "POKéMON is stored in the next BOX.\p"
+ .string "In other words, when a BOX is examined,\n"
+ .string "it is automatically selected as the BOX\l"
+ .string "to which POKéMON are sent.$"
+
+Route114_LanettesHouse_Text_192DA9:: @ 8192DA9
+ .string "{PLAYER} closed the notebook.$"
+
+Route114_LanettesHouse_Text_192DC1:: @ 8192DC1
+ .string "There’s an e-mail from someone on\n"
+ .string "the PC.\p"
+ .string "“... ... ... ... ... ... ...\p"
+ .string "“Your Storage System offers more\n"
+ .string "convenience than mine.\p"
+ .string "“It has a lot of user-friendly features\n"
+ .string "that make it fun and useful, too.\p"
+ .string "“It makes me proud that I played\n"
+ .string "a part in its development.\p"
+ .string "“Here’s hoping that you’ll continue\n"
+ .string "research in Storage Systems.\p"
+ .string "“From BILL\n"
+ .string "... ... ... ... ... ... ... ...”$"
+
diff --git a/data/maps/text/Route115.s b/data/maps/text/Route115.s
new file mode 100644
index 000000000..8e88c74dd
--- /dev/null
+++ b/data/maps/text/Route115.s
@@ -0,0 +1,14 @@
+Route115_Text_170273:: @ 8170273
+ .string "Exploring a cave isn’t like walking\n"
+ .string "on a road.\p"
+ .string "You never know when wild POKéMON will\n"
+ .string "appear. It’s full of suspense.$"
+
+Route115_Text_1702E7:: @ 81702E7
+ .string "ROUTE 115\n"
+ .string "{0x7A} RUSTBORO CITY$"
+
+Route115_Text_170301:: @ 8170301
+ .string "METEOR FALLS\n"
+ .string "FALLARBOR TOWN THROUGH HERE$"
+
diff --git a/data/maps/text/Route116.s b/data/maps/text/Route116.s
new file mode 100644
index 000000000..9106aa1a4
--- /dev/null
+++ b/data/maps/text/Route116.s
@@ -0,0 +1,120 @@
+Route116_Text_17032A:: @ 817032A
+ .string "Ohhh, what am I to do?\p"
+ .string "We were on our walk, PEEKO and I, when\n"
+ .string "we were jumped by an odd thug...\p"
+ .string "The scoundrel made off with my\n"
+ .string "darling PEEKO!\p"
+ .string "Wrrrooooooaaaar! PEEKO!$"
+
+Route116_Text_1703CF:: @ 81703CF
+ .string "Nnn... Roar!\p"
+ .string "I want to dig that tunnel!$"
+
+Route116_Text_1703F7:: @ 81703F7
+ .string "Nnn... Roar!\n"
+ .string "What’s going on?\p"
+ .string "I was digging the tunnel without any\n"
+ .string "tools when some goon ordered me out!\p"
+ .string "That tunnel’s filled with POKéMON\n"
+ .string "that react badly to loud noises.\l"
+ .string "They could cause an uproar.\p"
+ .string "That’s why we stopped using heavy\n"
+ .string "equipment for tunneling...\p"
+ .string "I’m worried that the goon will do\n"
+ .string "something stupid and startle the\l"
+ .string "POKéMON into an uproar.$"
+
+Route116_Text_170556:: @ 8170556
+ .string "Nnn... Roar!\p"
+ .string "That goofy goon hightailed it out of\n"
+ .string "the tunnel! I can go back to digging!$"
+
+Route116_Text_1705AE:: @ 81705AE
+ .string "Oh! It’s you!\p"
+ .string "You’re that person who not only helped\n"
+ .string "me in PETALBURG WOODS, but also got\l"
+ .string "back my stolen package and then even\l"
+ .string "graciously delivered it to SLATEPORT!\p"
+ .string "CAPT. STERN informed us that the\n"
+ .string "package arrived, too!\p"
+ .string "I thank you very, very much!\p"
+ .string "Why, if I were a rain cloud, I would\n"
+ .string "shower you with gratitude and hail\l"
+ .string "you as a hero!\p"
+ .string "For you, the most wonderful TRAINER,\n"
+ .string "I bear good news!\p"
+ .string "Recently, our company developed a new\n"
+ .string "kind of POKé BALL.\p"
+ .string "As a token of our appreciation, this\n"
+ .string "is our gift to our wonderful TRAINER!$"
+
+Route116_Text_1707B8:: @ 81707B8
+ .string "Our new POKé BALL will be available\n"
+ .string "at the POKéMON MART in RUSTBORO.\p"
+ .string "Please do try it out!\n"
+ .string "Thank you and bye-bye!$"
+
+Route116_Text_17082A:: @ 817082A
+ .string "Your BAG is jam-packed.\n"
+ .string "I can’t give you this REPEAT BALL.$"
+
+Route116_Text_170865:: @ 8170865
+ .string "As a token of our appreciation for\n"
+ .string "your delivering our package, I have a\l"
+ .string "gift of a new kind of POKé BALL for our\l"
+ .string "most wonderful TRAINER!$"
+
+Route116_Text_1708EE:: @ 81708EE
+ .string "I dropped my glasses...\n"
+ .string "Can you help me find them?$"
+
+Route116_Text_170921:: @ 8170921
+ .string "Those glasses!\n"
+ .string "May I see them for a second?$"
+
+Route116_Text_17094D:: @ 817094D
+ .string "Hmm...\n"
+ .string "These are BLACKGLASSES.\l"
+ .string "They’re not what I’m looking for...\p"
+ .string "Maybe my glasses aren’t around\n"
+ .string "here...$"
+
+Route116_Text_1709B7:: @ 81709B7
+ .string "Hmm...\n"
+ .string "I can’t find my glasses anywhere...\l"
+ .string "Maybe they’re not around here...$"
+
+Route116_Text_170A03:: @ 8170A03
+ .string "Hmm...\n"
+ .string "These are BLACKGLASSES.\l"
+ .string "They’re not what I’m looking for...$"
+
+Route116_Text_170A46:: @ 8170A46
+ .string "ROUTE 116\n"
+ .string "{0x7B} RUSTBORO CITY$"
+
+Route116_Text_170A60:: @ 8170A60
+ .string "RUSTURF TUNNEL\n"
+ .string "“Linking RUSTBORO and VERDANTURF\p"
+ .string "“The tunnel project has been\n"
+ .string "canceled.”$"
+
+Route116_Text_170AB8:: @ 8170AB8
+ .string "TUNNELER’S REST HOUSE$"
+
+Route116_Text_170ACE:: @ 8170ACE
+ .string "TRAINER TIPS\p"
+ .string "If you want to stop a POKéMON from\n"
+ .string "evolving, press the B Button while it\l"
+ .string "is trying to evolve.\l"
+ .string "The startled POKéMON will stop.\p"
+ .string "This is called an evolution cancel.$"
+
+Route116_Text_170B7D:: @ 8170B7D
+ .string "TRAINER TIPS\p"
+ .string "Your BAG has several POCKETS.\p"
+ .string "Items you obtain are automatically\n"
+ .string "placed in the appropriate POCKETS.\p"
+ .string "No TRAINER can afford to be without\n"
+ .string "a BAG of their own.$"
+
diff --git a/data/maps/text/Route116_TunnelersRestHouse.s b/data/maps/text/Route116_TunnelersRestHouse.s
new file mode 100644
index 000000000..ea6f0e97b
--- /dev/null
+++ b/data/maps/text/Route116_TunnelersRestHouse.s
@@ -0,0 +1,32 @@
+Route116_TunnelersRestHouse_Text_192F33:: @ 8192F33
+ .string "That RUSTURF TUNNEL there...\p"
+ .string "At first, we had a huge work crew boring\n"
+ .string "through rock with the latest machinery.\l"
+ .string "But, we had to stop.\p"
+ .string "It turns out that we would have had\n"
+ .string "a negative effect on wild POKéMON in\l"
+ .string "the area.\p"
+ .string "So, we’ve got nothing to do but loll\n"
+ .string "around here doing nothing.$"
+
+Route116_TunnelersRestHouse_Text_193049:: @ 8193049
+ .string "There’s a man digging his way to\n"
+ .string "VERDANTURF all by his lonesome.\l"
+ .string "He’s desperate to get through.\p"
+ .string "He says that if he digs little by little\n"
+ .string "without using machines, he won’t\l"
+ .string "disturb POKéMON, and he’ll avoid harming\l"
+ .string "the natural environment.$"
+
+Route116_TunnelersRestHouse_Text_193135:: @ 8193135
+ .string "To get to VERDANTURF without using\n"
+ .string "this TUNNEL, you’d have to cross the\l"
+ .string "sea to DEWFORD, sail on to SLATEPORT,\l"
+ .string "then travel through MAUVILLE.$"
+
+Route116_TunnelersRestHouse_Text_1931C1:: @ 81931C1
+ .string "Did you hear? The TUNNEL to VERDANTURF\n"
+ .string "has gone through!\p"
+ .string "Sometimes, if you hope strongly enough,\n"
+ .string "dreams do come true.$"
+
diff --git a/data/maps/text/Route117.s b/data/maps/text/Route117.s
new file mode 100644
index 000000000..37482d51a
--- /dev/null
+++ b/data/maps/text/Route117.s
@@ -0,0 +1,26 @@
+Route117_Text_170C26:: @ 8170C26
+ .string "I left my POKéMON at the DAY CARE.\p"
+ .string "When I got it back, it had a new move\n"
+ .string "that I didn’t teach it.\l"
+ .string "I was really, really surprised.$"
+
+Route117_Text_170CA7:: @ 8170CA7
+ .string "What do you think?\n"
+ .string "Aren’t these flowers pretty?\p"
+ .string "I planted them all!$"
+
+Route117_Text_170CEB:: @ 8170CEB
+ .string "The air is tasty here!$"
+
+Route117_Text_170D02:: @ 8170D02
+ .string "ROUTE 117\n"
+ .string "{0x7B} VERDANTURF TOWN$"
+
+Route117_Text_170D1E:: @ 8170D1E
+ .string "ROUTE 117\n"
+ .string "{0x7C} MAUVILLE CITY$"
+
+Route117_Text_170D38:: @ 8170D38
+ .string "POKéMON DAY CARE\n"
+ .string "“Let us raise your POKéMON.”$"
+
diff --git a/data/maps/text/Route117_PokemonDayCare.s b/data/maps/text/Route117_PokemonDayCare.s
new file mode 100644
index 000000000..f3ab011f8
--- /dev/null
+++ b/data/maps/text/Route117_PokemonDayCare.s
@@ -0,0 +1,74 @@
+Route117_PokemonDayCare_Text_1B28F2:: @ 81B28F2
+ .string "I’m the DAY-CARE LADY.\p"
+ .string "We can raise POKéMON for you.\p"
+ .string "Would you like us to raise one?$"
+
+Route117_PokemonDayCare_Text_1B2947:: @ 81B2947
+ .string "Which POKéMON should we raise for you?$"
+
+Route117_PokemonDayCare_Text_1B296E:: @ 81B296E
+ .string "Fine, we’ll raise your {STR_VAR_1} for\n"
+ .string "a while.\p"
+ .string "Come back for it later.$"
+
+Route117_PokemonDayCare_Text_1B29AD:: @ 81B29AD
+ .string "We can raise two of your POKéMON.\n"
+ .string "Would you like us to raise one more?$"
+
+Route117_PokemonDayCare_Text_1B29F4:: @ 81B29F4
+ .string "My husband was looking for you.$"
+
+Route117_PokemonDayCare_Text_1B2A14:: @ 81B2A14
+ .string "Oh, fine, then.\n"
+ .string "Come again.$"
+
+Route117_PokemonDayCare_Text_1B2A30:: @ 81B2A30
+ .string "You don’t have enough money...$"
+
+Route117_PokemonDayCare_Text_1B2A4F:: @ 81B2A4F
+ .string "Will you take back the other one, too?$"
+
+Route117_PokemonDayCare_Text_1B2A76:: @ 81B2A76
+ .string "Fine.\n"
+ .string "Come again.$"
+
+Route117_PokemonDayCare_Text_1B2A88:: @ 81B2A88
+ .string "Ah, it’s you! Good to see you.\n"
+ .string "Your POKéMON can only be doing good!$"
+
+Route117_PokemonDayCare_Text_1B2ACC:: @ 81B2ACC
+ .string "By level, your {STR_VAR_1} has grown\n"
+ .string "by {STR_VAR_2}.$"
+
+Route117_PokemonDayCare_Text_1B2AEF:: @ 81B2AEF
+ .string "Your POKéMON team is full.\n"
+ .string "Make room, then come see me.$"
+
+ .incbin "baserom.gba", 0x1b2b27, 0x22
+
+Route117_PokemonDayCare_Text_1B2B49:: @ 81B2B49
+ .string "If you want your {STR_VAR_1} back,\n"
+ .string "it will cost ¥{STR_VAR_2}.$"
+
+Route117_PokemonDayCare_Text_1B2B75:: @ 81B2B75
+ .string "Perfect!\n"
+ .string "Here’s your POKéMON.$"
+
+Route117_PokemonDayCare_Text_1B2B93:: @ 81B2B93
+ .string "{PLAYER} took back {STR_VAR_1} from\n"
+ .string "the DAY-CARE LADY.$"
+
+Route117_PokemonDayCare_Text_1B2BBB:: @ 81B2BBB
+ .string "Oh? But you have just one POKéMON.\p"
+ .string "Come back another time.$"
+
+Route117_PokemonDayCare_Text_1B2BF6:: @ 81B2BF6
+ .string "Will you take your POKéMON back?$"
+
+Route117_PokemonDayCare_Text_1B2C17:: @ 81B2C17
+ .string "If you leave me that POKéMON,\n"
+ .string "what will you battle with?\p"
+ .string "Come back another time.$"
+
+ .incbin "baserom.gba", 0x1b2c68, 0x2d
+
diff --git a/data/maps/text/Route118.s b/data/maps/text/Route118.s
new file mode 100644
index 000000000..f6636cada
--- /dev/null
+++ b/data/maps/text/Route118.s
@@ -0,0 +1,56 @@
+Route118_Text_170D66:: @ 8170D66
+ .string "STEVEN: Hi!\p"
+ .string "You’re that TRAINER I met in DEWFORD!\p"
+ .string "... ... ... ... ... ... ... ...\n"
+ .string "... ... ... ... ... ... ... ...\p"
+ .string "Oh, okay, you’re {PLAYER}{KUN}.\n"
+ .string "I’ll remember it.\p"
+ .string "{PLAYER}{KUN}.\p"
+ .string "In this vast world, there are many\n"
+ .string "kinds of POKéMON.\l"
+ .string "They come in many types.\p"
+ .string "Do you raise different types?\n"
+ .string "Or do you raise only POKéMON of a\l"
+ .string "certain type?\p"
+ .string "What do you think as a TRAINER?\p"
+ .string "Sorry, it’s not my place to ask, is it?\p"
+ .string "Well, anyway, I hope to see you\n"
+ .string "again.$"
+
+Route118_Text_170F12:: @ 8170F12
+ .string "Hmm!\n"
+ .string "A GOOD ROD is really good!\p"
+ .string "Wouldn’t you agree?$"
+
+Route118_Text_170F46:: @ 8170F46
+ .string "Hmm!\n"
+ .string "We’re of identical minds!\p"
+ .string "Hmm!\n"
+ .string "Take this GOOD ROD!$"
+
+Route118_Text_170F7E:: @ 8170F7E
+ .string "Wherever there’s water, try your luck\n"
+ .string "at fishing.$"
+
+Route118_Text_170FB0:: @ 8170FB0
+ .string "Don’t you like to fish?$"
+
+Route118_Text_170FC8:: @ 8170FC8
+ .string "Try catching all sorts of POKéMON\n"
+ .string "with your GOOD ROD.$"
+
+Route118_Text_170FFE:: @ 8170FFE
+ .string "Even if there isn’t a boat, you can\n"
+ .string "cross rivers and the sea if you have\l"
+ .string "a POKéMON that knows SURF.\p"
+ .string "POKéMON can be counted on to do so\n"
+ .string "much!$"
+
+Route118_Text_17108B:: @ 817108B
+ .string "ROUTE 118\n"
+ .string "{0x7B} MAUVILLE CITY$"
+
+Route118_Text_1710A5:: @ 81710A5
+ .string "ROUTE 118\n"
+ .string "{0x79} ROUTE 119$"
+
diff --git a/data/maps/text/Route119.s b/data/maps/text/Route119.s
new file mode 100644
index 000000000..6df6f5e79
--- /dev/null
+++ b/data/maps/text/Route119.s
@@ -0,0 +1,103 @@
+Route119_Text_1710BB:: @ 81710BB
+ .string "MAY: {PLAYER}{KUN}!\n"
+ .string "Where were you? I was looking for you!\p"
+ .string "How much stronger have you gotten?\n"
+ .string "Let me check for you!\p"
+ .string "Ready with your POKéMON?\n"
+ .string "Of course you are! Go!$"
+
+Route119_Text_171156:: @ 8171156
+ .string "Achah!\n"
+ .string "{PLAYER}{KUN}, you’re strong!\p"
+ .string "I was worried that you might be\n"
+ .string "struggling with your training.$"
+
+Route119_Text_1711B1:: @ 81711B1
+ .string "MAY: But I had absolutely nothing to\n"
+ .string "worry about! Keep it up!\p"
+ .string "And, here! I have a present for you.$"
+
+Route119_Text_171214:: @ 8171214
+ .string "MAY: Use FLY, and your POKéMON will\n"
+ .string "instantly carry you to any town you’ve\l"
+ .string "already visited.\p"
+ .string "But, to use FLY, you have to get the\n"
+ .string "GYM BADGE from FORTREE CITY.\l"
+ .string "That’s important, so don’t forget.\p"
+ .string "You should FLY home and visit\n"
+ .string "LITTLEROOT for a change.\p"
+ .string "I bet your mom’s worried about you,\n"
+ .string "{PLAYER}{KUN}.\p"
+ .string "Well, let’s meet again somewhere!$"
+
+Route119_Text_171358:: @ 8171358
+ .string "BRENDAN: {PLAYER}! So this is where\n"
+ .string "you’ve been looking for POKéMON?\p"
+ .string "Let me see how good you got.\n"
+ .string "I’ll test you!\p"
+ .string "Now!\n"
+ .string "It’s a battle, so battle!$"
+
+Route119_Text_1713E2:: @ 81713E2
+ .string "Hmm...\n"
+ .string "You’ve gotten pretty darn decent.$"
+
+Route119_Text_17140B:: @ 817140B
+ .string "BRENDAN: I’d say you’re good enough\n"
+ .string "to search for POKéMON anywhere.\p"
+ .string "Here, I’ll give you this.\n"
+ .string "Try it out.$"
+
+Route119_Text_171475:: @ 8171475
+ .string "BRENDAN: Use FLY, and your POKéMON\n"
+ .string "instantly carries you to any town\l"
+ .string "you’ve already visited.\p"
+ .string "But you need the FORTREE GYM BADGE \n"
+ .string "to do that.\p"
+ .string "Anyway, I have to move along.$"
+
+Route119_Text_171520:: @ 8171520
+ .string "We’re standing lookout here.\p"
+ .string "Hey, you! Stay away from the WEATHER\n"
+ .string "INSTITUTE. It’s not safe.$"
+
+Route119_Text_17157C:: @ 817157C
+ .string "Lookout duty is surprisingly boring.\p"
+ .string "Hey, you! Please don’t go near the\n"
+ .string "WEATHER INSTITUTE.$"
+
+Route119_Text_1715D7:: @ 81715D7
+ .string "I thought you FLY by catching a whole\n"
+ .string "flock of BIRD POKéMON, and then\l"
+ .string "hanging on to them somehow.\p"
+ .string "But it turns out there’s an HM move\n"
+ .string "called FLY!\p"
+ .string "I wish I’d known about that a long\n"
+ .string "time ago...$"
+
+Route119_Text_171698:: @ 8171698
+ .string "Tch... It’s a no-go...\p"
+ .string "The tall grass snares BIKE tires.\n"
+ .string "There’s no way you can cycle here.$"
+
+Route119_Text_1716F4:: @ 81716F4
+ .string "Can your POKéMON use its SECRET POWER\n"
+ .string "on a big pile of grass and make a\l"
+ .string "SECRET BASE?$"
+
+Route119_Text_171749:: @ 8171749
+ .string "ROUTE 119\n"
+ .string "{0x7C} FORTREE CITY$"
+
+Route119_Text_171762:: @ 8171762
+ .string "WEATHER INSTITUTE$"
+
+Route119_Text_171774:: @ 8171774
+ .string "TRAINER TIPS\p"
+ .string "Up to sixteen decorations and\n"
+ .string "furniture items can be placed in\l"
+ .string "a SECRET BASE.\p"
+ .string "Pick your favorite items and create\n"
+ .string "your very own SECRET BASE exactly the\l"
+ .string "way you want.$"
+
diff --git a/data/maps/text/Route119_House.s b/data/maps/text/Route119_House.s
new file mode 100644
index 000000000..df5b32895
--- /dev/null
+++ b/data/maps/text/Route119_House.s
@@ -0,0 +1,10 @@
+Route119_House_Text_19F371:: @ 819F371
+ .string "I heard about a cave called the CAVE\n"
+ .string "OF ORIGIN.\p"
+ .string "People rumor that the spirits of\n"
+ .string "POKéMON are revived there.\l"
+ .string "Could something like that really happen?$"
+
+Route119_House_Text_19F406:: @ 819F406
+ .string "WINGULL: Pihyo?$"
+
diff --git a/data/maps/text/Route119_WeatherInstitute_1F.s b/data/maps/text/Route119_WeatherInstitute_1F.s
new file mode 100644
index 000000000..30dc66a17
--- /dev/null
+++ b/data/maps/text/Route119_WeatherInstitute_1F.s
@@ -0,0 +1,55 @@
+Route119_WeatherInstitute_1F_Text_19EB8A:: @ 819EB8A
+ .string "The BOSS got interested in the\n"
+ .string "research they have going here, so he\l"
+ .string "sent us out.\p"
+ .string "You quit meddling!$"
+
+Route119_WeatherInstitute_1F_Text_19EBEE:: @ 819EBEE
+ .string "Blast it...\n"
+ .string "Blasted by a kid...$"
+
+Route119_WeatherInstitute_1F_Text_19EC0E:: @ 819EC0E
+ .string "Our BOSS knows everything.\p"
+ .string "But I’m just a GRUNT. What would I know\n"
+ .string "about what he’s thinking?$"
+
+Route119_WeatherInstitute_1F_Text_19EC6B:: @ 819EC6B
+ .string "Huh?\n"
+ .string "What’s a kid doing here?$"
+
+Route119_WeatherInstitute_1F_Text_19EC89:: @ 819EC89
+ .string "Huh?\n"
+ .string "I lost?!$"
+
+Route119_WeatherInstitute_1F_Text_19EC97:: @ 819EC97
+ .string "Oh, no...\n"
+ .string "I’ll catch an earful for losing to a kid...\p"
+ .string "I should just take a nap in the bed...$"
+
+Route119_WeatherInstitute_1F_Text_19ECF4:: @ 819ECF4
+ .string "While I was sleeping, everyone went\n"
+ .string "upstairs!$"
+
+Route119_WeatherInstitute_1F_Text_19ED22:: @ 819ED22
+ .string "Wow, you’re really strong!\p"
+ .string "I wish I could be a POKéMON TRAINER\n"
+ .string "like you!$"
+
+Route119_WeatherInstitute_1F_Text_19ED6B:: @ 819ED6B
+ .string "The PROFESSOR loves rain.\n"
+ .string "That’s a fact.\p"
+ .string "But if it keeps raining, people will be in\n"
+ .string "trouble. That’s another fact.\p"
+ .string "And thus, the PROFESSOR is studying\n"
+ .string "if the rain can be put to good use.$"
+
+Route119_WeatherInstitute_1F_Text_19EE25:: @ 819EE25
+ .string "Hello!\n"
+ .string "We’ve been saved by your actions!\p"
+ .string "What I don’t understand is what on\n"
+ .string "earth the {EVIL_TEAM}S were up to.$"
+
+Route119_WeatherInstitute_1F_Text_19EE8B:: @ 819EE8B
+ .string "There’s a bed...\n"
+ .string "Let’s take a rest.$"
+
diff --git a/data/maps/text/Route119_WeatherInstitute_2F.s b/data/maps/text/Route119_WeatherInstitute_2F.s
new file mode 100644
index 000000000..3b00452a7
--- /dev/null
+++ b/data/maps/text/Route119_WeatherInstitute_2F.s
@@ -0,0 +1,72 @@
+Route119_WeatherInstitute_2F_Text_19EEAF:: @ 819EEAF
+ .string "The INSTITUTE created a type of\n"
+ .string "POKéMON that has something to do with\l"
+ .string "the weather. We’re here to take them!$"
+
+Route119_WeatherInstitute_2F_Text_19EF1B:: @ 819EF1B
+ .string "Our plan’s being spoiled by a kid?$"
+
+Route119_WeatherInstitute_2F_Text_19EF3E:: @ 819EF3E
+ .string "If the POKéMON they made here can\n"
+ .string "control the weather freely, then we of\l"
+ .string "TEAM {EVIL_TEAM} definitely need it!$"
+
+Route119_WeatherInstitute_2F_Text_19EFA3:: @ 819EFA3
+ .string "We’re TEAM {EVIL_TEAM}!\n"
+ .string "We appear wherever anything rare is\l"
+ .string "found!$"
+
+Route119_WeatherInstitute_2F_Text_19EFDD:: @ 819EFDD
+ .string "You got me!$"
+
+Route119_WeatherInstitute_2F_Text_19EFE9:: @ 819EFE9
+ .string "You don’t have any idea what we of\n"
+ .string "TEAM {EVIL_TEAM} are working towards!\l"
+ .string "You stay out of our way!$"
+
+Route119_WeatherInstitute_2F_Text_19F042:: @ 819F042
+ .string "Ahahahaha!\p"
+ .string "You’re going to meddle in TEAM {EVIL_TEAM}’s\n"
+ .string "affairs?\p"
+ .string "You’re either absolutely fearless,\n"
+ .string "simply ignorant, or both!\p"
+ .string "You’re so cute, you’re disgusting!\n"
+ .string "I’ll put you down, kiddy!$"
+
+Route119_WeatherInstitute_2F_Text_19F0F4:: @ 819F0F4
+ .string "Ahahahaha!\n"
+ .string "You’re disgustingly strong!$"
+
+Route119_WeatherInstitute_2F_Text_19F11B:: @ 819F11B
+ .string "Ahahahaha!\n"
+ .string "We got meddled with unexpectedly!\p"
+ .string "We’re out of options.\n"
+ .string "We’ll have to pull out.\p"
+ .string "But this isn’t the last you’ll see of\n"
+ .string "TEAM {EVIL_TEAM}! We have other plans!\l"
+ .string "Don’t you forget it!$"
+
+Route119_WeatherInstitute_2F_Text_19F1CF:: @ 819F1CF
+ .string "Thanks!\n"
+ .string "Thanks to you, we’re safe!\p"
+ .string "It might be an odd way of thanking you,\n"
+ .string "but take this POKéMON.$"
+
+Route119_WeatherInstitute_2F_Text_19F231:: @ 819F231
+ .string "Hm? You don’t seem to have any room\n"
+ .string "for this POKéMON.$"
+
+Route119_WeatherInstitute_2F_Text_19F267:: @ 819F267
+ .string "{PLAYER} received CASTFORM!$"
+
+Route119_WeatherInstitute_2F_Text_19F27D:: @ 819F27D
+ .string "That POKéMON changes shape according\n"
+ .string "to the weather conditions.\p"
+ .string "There’re plenty of them in the\n"
+ .string "INSTITUTE - go ahead and take it.$"
+
+Route119_WeatherInstitute_2F_Text_19F2FE:: @ 819F2FE
+ .string "I’ve been researching rain for many\n"
+ .string "years, but it’s ridiculous to think that\l"
+ .string "humans can freely change the weather.$"
+
diff --git a/data/maps/text/Route120.s b/data/maps/text/Route120.s
new file mode 100644
index 000000000..55eaf9ed9
--- /dev/null
+++ b/data/maps/text/Route120.s
@@ -0,0 +1,48 @@
+Route120_Text_171827:: @ 8171827
+ .string "STEVEN: Hm? {PLAYER}{KUN}, hi.\n"
+ .string "It’s been a while.\p"
+ .string "There’s something here that you can’t\n"
+ .string "see, right?\p"
+ .string "Now, if I were to use this device on\n"
+ .string "the invisible obstacle...\p"
+ .string "No, no. Rather than describing it,\n"
+ .string "I should just show you.\l"
+ .string "That would be more fun.\p"
+ .string "{PLAYER}{KUN}, are your POKéMON ready for\n"
+ .string "battle?$"
+
+Route120_Text_17193D:: @ 817193D
+ .string "STEVEN: No?\p"
+ .string "I’ll wait here, so you can get ready.$"
+
+Route120_Text_17196F:: @ 817196F
+ .string "STEVEN: {PLAYER}{KUN}, are your POKéMON\n"
+ .string "ready for battle?$"
+
+Route120_Text_1719A0:: @ 81719A0
+ .string "STEVEN: {PLAYER}{KUN}, show me your true\n"
+ .string "power as a TRAINER!$"
+
+Route120_Text_1719D4:: @ 81719D4
+ .string "STEVEN used the DEVON SCOPE.\p"
+ .string "An invisible POKéMON became completely\n"
+ .string "visible!\p"
+ .string "The startled POKéMON attacked!$"
+
+Route120_Text_171A40:: @ 8171A40
+ .string "STEVEN: I see...\n"
+ .string "Your battle style is intriguing.\p"
+ .string "Your POKéMON have obviously grown\n"
+ .string "since I first met you in DEWFORD.\p"
+ .string "I’d like you to have this\n"
+ .string "DEVON SCOPE.\p"
+ .string "Who knows, there may be other\n"
+ .string "concealed POKéMON.$"
+
+Route120_Text_171B0E:: @ 8171B0E
+ .string "STEVEN: {PLAYER}{KUN}.\p"
+ .string "I enjoy seeing POKéMON and TRAINERS\n"
+ .string "who strive together.\p"
+ .string "I think you’re doing great.\p"
+ .string "Well, let’s meet again somewhere.$"
+
diff --git a/data/maps/text/Route121.s b/data/maps/text/Route121.s
new file mode 100644
index 000000000..f62d91b5c
--- /dev/null
+++ b/data/maps/text/Route121.s
@@ -0,0 +1,18 @@
+Route121_Text_171C8F:: @ 8171C8F
+ .string "Okay!\n"
+ .string "We’re to move out to MT. PYRE!$"
+
+Route121_Text_171CB4:: @ 8171CB4
+ .string "Ahead looms MT. PYRE...\p"
+ .string "It is a natural monument to the spirits \n"
+ .string "of departed POKéMON...$"
+
+Route121_Text_171D0C:: @ 8171D0C
+ .string "MT. PYRE PIER\p"
+ .string "...The sign is old and worn out.\n"
+ .string "The words are barely legible...$"
+
+Route121_Text_171D5B:: @ 8171D5B
+ .string "“Filled with rare POKéMON!”\n"
+ .string "SAFARI ZONE$"
+
diff --git a/data/maps/text/Route121_SafariZoneEntrance.s b/data/maps/text/Route121_SafariZoneEntrance.s
new file mode 100644
index 000000000..c3d6dd69b
--- /dev/null
+++ b/data/maps/text/Route121_SafariZoneEntrance.s
@@ -0,0 +1,67 @@
+Route121_SafariZoneEntrance_Text_1C35D0:: @ 81C35D0
+ .string "Welcome to the SAFARI ZONE!\p"
+ .string "Here, you may witness many kinds of\n"
+ .string "POKéMON rarely seen in HOENN.\p"
+ .string "And, you’ll see them in their wild,\n"
+ .string "untamed state in natural habitats.\p"
+ .string "What’s more, we’ve thrown open the\n"
+ .string "gates to POKéMON TRAINERS.\p"
+ .string "You’re encouraged to catch POKéMON\n"
+ .string "for keeps!\p"
+ .string "Come in and enjoy the SAFARI ZONE!$"
+
+Route121_SafariZoneEntrance_Text_1C3704:: @ 81C3704
+ .string "Welcome to the SAFARI ZONE!\n"
+ .string "Is it your first time here?$"
+
+Route121_SafariZoneEntrance_Text_1C373C:: @ 81C373C
+ .string "Come in and enjoy the SAFARI ZONE!$"
+
+Route121_SafariZoneEntrance_Text_1C375F:: @ 81C375F
+ .string "When you enter the SAFARI ZONE, you\n"
+ .string "start with 30 SAFARI BALLS for\l"
+ .string "catching POKéMON.\p"
+ .string "The SAFARI Game is over when you run\n"
+ .string "out of SAFARI BALLS, or when you’ve\l"
+ .string "walked 500 steps.\p"
+ .string "Come in and enjoy the SAFARI ZONE!$"
+
+Route121_SafariZoneEntrance_Text_1C3832:: @ 81C3832
+ .string "Welcome to the SAFARI ZONE!\p"
+ .string "All you can catch for just ¥500!\n"
+ .string "Would you like to play a SAFARI Game?$"
+
+Route121_SafariZoneEntrance_Text_1C3895:: @ 81C3895
+ .string "Okay.\n"
+ .string "Please play another time!$"
+
+Route121_SafariZoneEntrance_Text_1C38B5:: @ 81C38B5
+ .string "You don’t have enough money.\n"
+ .string "Sorry.$"
+
+Route121_SafariZoneEntrance_Text_1C38D9:: @ 81C38D9
+ .string "That will be ¥500, please.$"
+
+Route121_SafariZoneEntrance_Text_1C38F4:: @ 81C38F4
+ .string "Here are your SAFARI BALLS.$"
+
+Route121_SafariZoneEntrance_Text_1C3910:: @ 81C3910
+ .string "{PLAYER} received 30 SAFARI BALLS.$"
+
+Route121_SafariZoneEntrance_Text_1C392D:: @ 81C392D
+ .string "We’ll let you know when your game\n"
+ .string "is over.\p"
+ .string "So, until then, enjoy yourself, please!\n"
+ .string "Off you go on your wild excursion!$"
+
+Route121_SafariZoneEntrance_Text_1C39A3:: @ 81C39A3
+ .string "Excuse me!\n"
+ .string "Your PC BOX is full.$"
+
+Route121_SafariZoneEntrance_Text_1C39C3:: @ 81C39C3
+ .string "Excuse me!\n"
+ .string "You seem to be without a {POKEBLOCK} CASE.\p"
+ .string "Your SAFARI Game will be much more\n"
+ .string "fruitful if you use {POKEBLOCK}S.\p"
+ .string "Please come back with a {POKEBLOCK} CASE.$"
+
diff --git a/data/maps/text/Route123.s b/data/maps/text/Route123.s
new file mode 100644
index 000000000..bebe88f83
--- /dev/null
+++ b/data/maps/text/Route123.s
@@ -0,0 +1,26 @@
+Route123_Text_171D83:: @ 8171D83
+ .string "I love GRASS-type POKéMON!\p"
+ .string "Do you have any GRASS-type POKéMON?$"
+
+Route123_Text_171DC2:: @ 8171DC2
+ .string "Oh?\p"
+ .string "You like GRASS-type POKéMON, too,\n"
+ .string "don’t you?\p"
+ .string "I’m so happy, you can have this!\n"
+ .string "It’s a token of our friendship.$"
+
+Route123_Text_171E34:: @ 8171E34
+ .string "I check trees with my GRASS-type\n"
+ .string "POKéMON. I’m like a tree doctor.$"
+
+Route123_Text_171E76:: @ 8171E76
+ .string "{0x7C} ROUTE 123\n"
+ .string "{0x7B} ROUTE 118$"
+
+Route123_Text_171E8E:: @ 8171E8E
+ .string "{0x79} MT. PYRE\n"
+ .string "“Forbidden to the faint of heart.”$"
+
+Route123_Text_171EBC:: @ 8171EBC
+ .string "BERRY MASTER’S HOUSE$"
+
diff --git a/data/maps/text/Route123_BerryMastersHouse.s b/data/maps/text/Route123_BerryMastersHouse.s
new file mode 100644
index 000000000..6f958d50b
--- /dev/null
+++ b/data/maps/text/Route123_BerryMastersHouse.s
@@ -0,0 +1,46 @@
+Route123_BerryMastersHouse_Text_1C5BC4:: @ 81C5BC4
+ .string "You may call me the BERRY MASTER.\p"
+ .string "I dream of filling the world with\n"
+ .string "beautiful flowers, so I raise BERRIES\l"
+ .string "and hand them out to everyone.\p"
+ .string "You’re deserving of one!$"
+
+Route123_BerryMastersHouse_Text_1C5C66:: @ 81C5C66
+ .string "Why be stingy?\n"
+ .string "Take another!$"
+
+Route123_BerryMastersHouse_Text_1C5C83:: @ 81C5C83
+ .string "Be sure to visit the PRETTY PETAL\n"
+ .string "flower shop near RUSTBORO.\p"
+ .string "Let flowers fill the world!$"
+
+Route123_BerryMastersHouse_Text_1C5CDC:: @ 81C5CDC
+ .string "I’m done for today.\n"
+ .string "Come again another day.\p"
+ .string "Let flowers fill the world!$"
+
+Route123_BerryMastersHouse_Text_1C5D24:: @ 81C5D24
+ .string "The way my husband grows BERRIES,\n"
+ .string "oh, he’s the best in the world.\p"
+ .string "He makes me proud, that he does.\p"
+ .string "Incidentally, child, have you heard\n"
+ .string "a good saying lately?$"
+
+Route123_BerryMastersHouse_Text_1C5DC1:: @ 81C5DC1
+ .string "Ah! What a remarkable saying!\n"
+ .string "Inspirational, it is!\p"
+ .string "I want you to have this.$"
+
+Route123_BerryMastersHouse_Text_1C5E0E:: @ 81C5E0E
+ .string "Oh! A good saying it is.\n"
+ .string "You’re quite remarkable.\p"
+ .string "I want you to have this.$"
+
+Route123_BerryMastersHouse_Text_1C5E59:: @ 81C5E59
+ .string "Our four grandchildren should become\n"
+ .string "more accomplished than my husband.\p"
+ .string "Joy never goes out of my life!$"
+
+Route123_BerryMastersHouse_Text_1C5EC0:: @ 81C5EC0
+ .string "Ah...$"
+
diff --git a/data/maps/text/Route124.s b/data/maps/text/Route124.s
new file mode 100644
index 000000000..26b76cc2a
--- /dev/null
+++ b/data/maps/text/Route124.s
@@ -0,0 +1,3 @@
+Route124_Text_171ED1:: @ 8171ED1
+ .string "HUNTER’S HOUSE$"
+
diff --git a/data/maps/text/Route124_DivingTreasureHuntersHouse.s b/data/maps/text/Route124_DivingTreasureHuntersHouse.s
new file mode 100644
index 000000000..84ce7168b
--- /dev/null
+++ b/data/maps/text/Route124_DivingTreasureHuntersHouse.s
@@ -0,0 +1,54 @@
+Route124_DivingTreasureHuntersHouse_Text_19F416:: @ 819F416
+ .string "I’m the DIVING TREASURE HUNTER!\p"
+ .string "I’m the awesome dude who makes\n"
+ .string "deep-sea dives to gather treasures\l"
+ .string "resting at the bottom.$"
+
+Route124_DivingTreasureHuntersHouse_Text_19F48F:: @ 819F48F
+ .string "Tell me, have you seen any SHARDS of\n"
+ .string "tools made in ancient times?$"
+
+Route124_DivingTreasureHuntersHouse_Text_19F4D1:: @ 819F4D1
+ .string "You haven’t got any treasures\n"
+ .string "for me...\p"
+ .string "If you see any SHARDS, like the RED\n"
+ .string "SHARD, you’ve got to trade it with me!$"
+
+Route124_DivingTreasureHuntersHouse_Text_19F544:: @ 819F544
+ .string "Oh, hey! That...\n"
+ .string "That’s a SHARD! I’m looking for those!\p"
+ .string "Oh, man, you’ve got to trade that\n"
+ .string "with me! I’ll give you something good!$"
+
+Route124_DivingTreasureHuntersHouse_Text_19F5C5:: @ 819F5C5
+ .string "What do you want to trade?$"
+
+Route124_DivingTreasureHuntersHouse_Text_19F5E0:: @ 819F5E0
+ .string "You’ll trade your {STR_VAR_1} for\n"
+ .string "my {STR_VAR_2}, then?$"
+
+Route124_DivingTreasureHuntersHouse_Text_19F606:: @ 819F606
+ .string "It’s a done deal!\n"
+ .string "Use that wisely!$"
+
+Route124_DivingTreasureHuntersHouse_Text_19F629:: @ 819F629
+ .string "Do you want to trade something else?$"
+
+Route124_DivingTreasureHuntersHouse_Text_19F64E:: @ 819F64E
+ .string "Whoops, your BAG’s full.\n"
+ .string "Get rid of some items, friend!$"
+
+Route124_DivingTreasureHuntersHouse_Text_19F686:: @ 819F686
+ .string "No? That’s a downer.\n"
+ .string "Well, if you change your mind, come back.$"
+
+Route124_DivingTreasureHuntersHouse_Text_19F6C5:: @ 819F6C5
+ .string "Wanted item Trade item\n"
+ .string " RED SHARD {0x7B}{0x7C} FIRE STONE\p"
+ .string "Wanted item Trade item\n"
+ .string " YELLOW SHARD {0x7B}{0x7C} THUNDERSTONE\p"
+ .string "Wanted item Trade item\n"
+ .string " BLUE SHARD {0x7B}{0x7C} WATER STONE\p"
+ .string "Wanted item Trade item\n"
+ .string " GREEN SHARD {0x7B}{0x7C} LEAF STONE$"
+
diff --git a/data/maps/text/Route125.s b/data/maps/text/Route125.s
new file mode 100644
index 000000000..a774ff72d
--- /dev/null
+++ b/data/maps/text/Route125.s
@@ -0,0 +1,107 @@
+Route125_Text_1C0FCF:: @ 81C0FCF
+ .string "I heard you approaching, so I hung\n"
+ .string "around for you!$"
+
+Route125_Text_1C1002:: @ 81C1002
+ .string "I beg for peace!$"
+
+Route125_Text_1C1013:: @ 81C1013
+ .string "Sound travels faster in water than\n"
+ .string "it does through air.$"
+
+Route125_Text_1C104B:: @ 81C104B
+ .string "Hey, there!\n"
+ .string "Check out my sweet POKéMON!$"
+
+Route125_Text_1C1073:: @ 81C1073
+ .string "I floundered...$"
+
+Route125_Text_1C1083:: @ 81C1083
+ .string "I was blown away by HORSEA’s charm,\n"
+ .string "so I started swimming, too.$"
+
+Route125_Text_1C10C3:: @ 81C10C3
+ .string "I’m tired of swimming.\n"
+ .string "Are you up for a battle with me?$"
+
+Route125_Text_1C10FB:: @ 81C10FB
+ .string "You’re too much!$"
+
+Route125_Text_1C110C:: @ 81C110C
+ .string "Whew...\n"
+ .string "Which way is it to MOSSDEEP CITY?$"
+
+Route125_Text_1C1136:: @ 81C1136
+ .string "How would you like to take on the\n"
+ .string "WATER-type POKéMON I raised?$"
+
+Route125_Text_1C1175:: @ 81C1175
+ .string "I lost...$"
+
+Route125_Text_1C117F:: @ 81C117F
+ .string "Your power... You’re the real deal.\n"
+ .string "I’m amazed!$"
+
+Route125_Text_1C11AF:: @ 81C11AF
+ .string "Ahoy! I’m a buff, tough SAILOR!\n"
+ .string "I’ve braved the world’s seas!$"
+
+Route125_Text_1C11ED:: @ 81C11ED
+ .string "Gwrroooar!\n"
+ .string "I couldn’t win!$"
+
+Route125_Text_1C1208:: @ 81C1208
+ .string "The tide ebbs and flows inside the\n"
+ .string "SHOAL CAVE.\p"
+ .string "By the way, it’s about six hours from\n"
+ .string "high tide to low tide. Did you know?$"
+
+Route125_Text_1C1282:: @ 81C1282
+ .string "It’s high time I get my payback\n"
+ .string "from you! Come on, we’re battling!$"
+
+Route125_Text_1C12C5:: @ 81C12C5
+ .string "I couldn’t win!\n"
+ .string "I flat out couldn’t win!$"
+
+Route125_Text_1C12EE:: @ 81C12EE
+ .string "The SHOAL CAVE...\p"
+ .string "There are places you can and can’t\n"
+ .string "get to depending on the rise and fall\l"
+ .string "of the tide.\p"
+ .string "By the way, it’s about six hours from\n"
+ .string "high tide to low tide. Don’t forget!$"
+
+Route125_Text_1C13A1:: @ 81C13A1
+ .string "KIM: A funny old man lives in the\n"
+ .string "SHOAL CAVE. Someone told me.\l"
+ .string "Are you going to see him, too?$"
+
+Route125_Text_1C13FF:: @ 81C13FF
+ .string "KIM: I thought we would win.$"
+
+Route125_Text_1C141C:: @ 81C141C
+ .string "KIM: A funny old man lives in the\n"
+ .string "SHOAL CAVE, doesn’t he?\p"
+ .string "Let’s go see him, IRIS!$"
+
+Route125_Text_1C146E:: @ 81C146E
+ .string "KIM: No, no, no! You need two POKéMON,\n"
+ .string "or it’s just no good!$"
+
+Route125_Text_1C14AB:: @ 81C14AB
+ .string "IRIS: KIM, can you tell me what we’re\n"
+ .string "looking for out here?$"
+
+Route125_Text_1C14E7:: @ 81C14E7
+ .string "IRIS: Oh, we came sort of close.$"
+
+Route125_Text_1C1508:: @ 81C1508
+ .string "IRIS: KIM, are we really going into\n"
+ .string "the SHOAL CAVE?\l"
+ .string "We’ll get all wet.$"
+
+Route125_Text_1C154F:: @ 81C154F
+ .string "IRIS: Oh, we could never, ever do\n"
+ .string "anything like a 2-on-1 battle.$"
+
diff --git a/data/maps/text/Route126.s b/data/maps/text/Route126.s
new file mode 100644
index 000000000..c49a3db1c
--- /dev/null
+++ b/data/maps/text/Route126.s
@@ -0,0 +1,45 @@
+Route126_Text_1C1590:: @ 81C1590
+ .string "Swimming is a full-body workout!\n"
+ .string "You will get fit!$"
+
+Route126_Text_1C15C3:: @ 81C15C3
+ .string "I admit it! You win!$"
+
+Route126_Text_1C15D8:: @ 81C15D8
+ .string "Thanks to my daily swimming routine...\n"
+ .string "Look! Feast your eyes on this physique!$"
+
+Route126_Text_1C1627:: @ 81C1627
+ .string "This towering white mountain of rock\n"
+ .string "is SOOTOPOLIS CITY.$"
+
+Route126_Text_1C1660:: @ 81C1660
+ .string "I was done in?$"
+
+Route126_Text_1C166F:: @ 81C166F
+ .string "I can’t find the entrance to\n"
+ .string "SOOTOPOLIS. Where could it be?$"
+
+Route126_Text_1C16AB:: @ 81C16AB
+ .string "Ufufufufu!\n"
+ .string "I’m a mermaid!$"
+
+Route126_Text_1C16C5:: @ 81C16C5
+ .string "My fantasy burst as if it were a bubble!\n"
+ .string "Blub, blub, blub...$"
+
+Route126_Text_1C1702:: @ 81C1702
+ .string "You thrashed me... I want to\n"
+ .string "disappear in a wave of despair...$"
+
+Route126_Text_1C1741:: @ 81C1741
+ .string "Hello, kiddo!\n"
+ .string "Want a battle with me?$"
+
+Route126_Text_1C1766:: @ 81C1766
+ .string "Oh, noooooh!$"
+
+Route126_Text_1C1773:: @ 81C1773
+ .string "I love frolicking with POKéMON in\n"
+ .string "the sea like this!$"
+
diff --git a/data/maps/text/Route127.s b/data/maps/text/Route127.s
new file mode 100644
index 000000000..45a9bb030
--- /dev/null
+++ b/data/maps/text/Route127.s
@@ -0,0 +1,84 @@
+Route127_Text_1C17A8:: @ 81C17A8
+ .string "I can see it in your face. You want\n"
+ .string "to challenge me.$"
+
+Route127_Text_1C17DD:: @ 81C17DD
+ .string "Awawawawawa...$"
+
+Route127_Text_1C17EC:: @ 81C17EC
+ .string "A well-played match leaves me feeling\n"
+ .string "refreshed and serene.$"
+
+Route127_Text_1C1828:: @ 81C1828
+ .string "Do you have a rival whom you just\n"
+ .string "hate to lose against?$"
+
+Route127_Text_1C1860:: @ 81C1860
+ .string "Arrrgh! I hate losing!$"
+
+Route127_Text_1C1877:: @ 81C1877
+ .string "If you have a rival, don’t you get the\n"
+ .string "feeling that you have to keep getting\l"
+ .string "better?$"
+
+Route127_Text_1C18CC:: @ 81C18CC
+ .string "Through fishing, I have attained a\n"
+ .string "state of becalmed serenity...\l"
+ .string "Please, allow me to demonstrate...$"
+
+Route127_Text_1C1930:: @ 81C1930
+ .string "Though I have lost, my heart remains\n"
+ .string "calm...$"
+
+Route127_Text_1C195D:: @ 81C195D
+ .string "It matters not that I catch nothing.\n"
+ .string "The line remains in the water...$"
+
+Route127_Text_1C19A3:: @ 81C19A3
+ .string "Whoops! Don’t tell me I snagged\n"
+ .string "a SURFING POKéMON?$"
+
+Route127_Text_1C19D6:: @ 81C19D6
+ .string "I can’t keep up!$"
+
+Route127_Text_1C19E7:: @ 81C19E7
+ .string "Your POKéMON look pretty strong.\n"
+ .string "They’d be a handful if I hooked them!$"
+
+Route127_Text_1C1A2E:: @ 81C1A2E
+ .string "Well, hey! This is a match between a\n"
+ .string "POKéMON fan and a fishing buff!$"
+
+Route127_Text_1C1A73:: @ 81C1A73
+ .string "No! My line’s all tangled!\n"
+ .string "The party’s over!$"
+
+Route127_Text_1C1AA0:: @ 81C1AA0
+ .string "My fishing line’s doing a dance!\n"
+ .string "The tangle tango! Hahaha, snarl!$"
+
+Route127_Text_1C1AE2:: @ 81C1AE2
+ .string "What I learned at DEWFORD’s POKéMON\n"
+ .string "GYM, I will put into practice here.$"
+
+Route127_Text_1C1B2A:: @ 81C1B2A
+ .string "I was swamped!$"
+
+Route127_Text_1C1B39:: @ 81C1B39
+ .string "BRAWLY, DEWFORD’s GYM LEADER, used\n"
+ .string "to train with a guy named BRUNO in\l"
+ .string "KANTO, I’ve heard.$"
+
+Route127_Text_1C1B92:: @ 81C1B92
+ .string "BIRD POKéMON have excellent vision.\n"
+ .string "They spot prey from great heights.$"
+
+Route127_Text_1C1BD9:: @ 81C1BD9
+ .string "Whew... I give up.$"
+
+Route127_Text_1C1BEC:: @ 81C1BEC
+ .string "There’re lots of diving spots in the\n"
+ .string "sea around here.\p"
+ .string "You can spot them easily from the sky\n"
+ .string "because of their darker color.$"
+
diff --git a/data/maps/text/Route128.s b/data/maps/text/Route128.s
new file mode 100644
index 000000000..2bf3c3433
--- /dev/null
+++ b/data/maps/text/Route128.s
@@ -0,0 +1,58 @@
+Route128_Text_171EE0:: @ 8171EE0
+ .string "{EVIL_LEADER}: What happened...\n"
+ .string "What is this wretched scene...\p"
+ .string "Did I...make a horrible mistake?$"
+
+Route128_Text_171F35:: @ 8171F35
+ .string "I...\n"
+ .string "I only wanted...$"
+
+Route128_Text_171F4B:: @ 8171F4B
+ .string "{GOOD_LEADER}: Do you understand now,\n"
+ .string "{EVIL_LEADER}?\p"
+ .string "Do you finally see how disastrous\n"
+ .string "your dream turned out to be?\p"
+ .string "We have to hurry! We have to do\n"
+ .string "something before the situation goes\l"
+ .string "completely out of control!$"
+
+Route128_Text_172008:: @ 8172008
+ .string "{GOOD_LEADER}: {PLAYER}{KUN}...\p"
+ .string "We, TEAM {GOOD_TEAM}, had been pursuing TEAM\n"
+ .string "{EVIL_TEAM} to prevent this from happening.\p"
+ .string "You’ve been very helpful, but I fear\n"
+ .string "the worst has happened...\p"
+ .string "It’s gone too far for a child like you\n"
+ .string "to manage...\p"
+ .string "Leave things to us, and get out of\n"
+ .string "here while you still can!$"
+
+Route128_Text_17210B:: @ 817210B
+ .string "{GOOD_LEADER}: This defies belief...\p"
+ .string "A super-ancient POKéMON...\p"
+ .string "Its power is unbelievable.\n"
+ .string "It has upset the balance of nature...$"
+
+Route128_Text_172181:: @ 8172181
+ .string "STEVEN: {PLAYER}{KUN}!\n"
+ .string "What is happening?$"
+
+ .incbin "baserom.gba", 0x1721a2, 0xff
+
+Route128_Text_1722A1:: @ 81722A1
+ .string "This is terrible...\p"
+ .string "If this doesn’t stop, all of HOENN...\n"
+ .string "No, the whole world will be parched.\p"
+ .string "The cause of this calamity, the blazing\n"
+ .string "sun, is in the sky above SOOTOPOLIS...\p"
+ .string "What in the world is taking place there?\p"
+ .string "There’s no point arguing here...\n"
+ .string "SOOTOPOLIS should provide answers...$"
+
+Route128_Text_1723BE:: @ 81723BE
+ .string "{PLAYER}{KUN}...\n"
+ .string "I don’t know what you intend to do,\l"
+ .string "but don’t do anything reckless.\p"
+ .string "Okay.\n"
+ .string "I’m going to SOOTOPOLIS.$"
+
diff --git a/data/maps/text/Route129.s b/data/maps/text/Route129.s
new file mode 100644
index 000000000..be245cece
--- /dev/null
+++ b/data/maps/text/Route129.s
@@ -0,0 +1,52 @@
+Route129_Text_1C2161:: @ 81C2161
+ .string "This is my first triathlon.\n"
+ .string "I’m all tense and nervous!$"
+
+Route129_Text_1C2198:: @ 81C2198
+ .string "Wroooaaar!\n"
+ .string "I failed to win!$"
+
+Route129_Text_1C21B4:: @ 81C21B4
+ .string "If I’m all tensed up, I won’t be able to\n"
+ .string "give it my all.$"
+
+Route129_Text_1C21ED:: @ 81C21ED
+ .string "I’m in the middle of a triathlon, but,\n"
+ .string "sure, why don’t we battle?$"
+
+Route129_Text_1C222F:: @ 81C222F
+ .string "I was sure I’d win!$"
+
+Route129_Text_1C2243:: @ 81C2243
+ .string "Do you know what’s the greatest thing\n"
+ .string "about triathlons?\p"
+ .string "Testing the limits of your own\n"
+ .string "strength and endurance against\l"
+ .string "Mother Nature!$"
+
+Route129_Text_1C22C8:: @ 81C22C8
+ .string "Say hey, hey!\n"
+ .string "Let’s get on with it!$"
+
+Route129_Text_1C22EC:: @ 81C22EC
+ .string "Beat, I’m beaten.\n"
+ .string "That’s it, done!$"
+
+Route129_Text_1C230F:: @ 81C230F
+ .string "There’s nothing for a loser.\n"
+ .string "Time for me to beat it home.$"
+
+Route129_Text_1C2349:: @ 81C2349
+ .string "What’s the hurry?\n"
+ .string "Let’s take it slow and easy.$"
+
+Route129_Text_1C2378:: @ 81C2378
+ .string "Oh, my.\n"
+ .string "I wanted to relax a little more...$"
+
+Route129_Text_1C23A3:: @ 81C23A3
+ .string "Don’t you hate making mistakes when\n"
+ .string "you’re in a rush?\p"
+ .string "That’s why I try to take things\n"
+ .string "slowly.$"
+
diff --git a/data/maps/text/Route130.s b/data/maps/text/Route130.s
new file mode 100644
index 000000000..5ccc2e1e0
--- /dev/null
+++ b/data/maps/text/Route130.s
@@ -0,0 +1,28 @@
+Route130_Text_1C2401:: @ 81C2401
+ .string "What a surprise! I didn’t expect to\n"
+ .string "see a TRAINER out in the sea.\p"
+ .string "I think we should battle!$"
+
+Route130_Text_1C245D:: @ 81C245D
+ .string "This kid’s awfully tough...$"
+
+Route130_Text_1C2479:: @ 81C2479
+ .string "Your eyes have that look of someone\n"
+ .string "who’s experienced harsh challenges\l"
+ .string "and won. It suits you well!$"
+
+Route130_Text_1C24DC:: @ 81C24DC
+ .string "In the deep blue sea,\n"
+ .string "my shattered blue heart finds\l"
+ .string "comfort among waves.$"
+
+Route130_Text_1C2525:: @ 81C2525
+ .string "Like the vast blue sea,\n"
+ .string "the world of POKéMON spans\l"
+ .string "depths beyond belief.$"
+
+Route130_Text_1C256E:: @ 81C256E
+ .string "The world’s children dream\n"
+ .string "of one day becoming the\l"
+ .string "POKéMON CHAMPION.$"
+
diff --git a/data/maps/text/Route131.s b/data/maps/text/Route131.s
new file mode 100644
index 000000000..b42288db6
--- /dev/null
+++ b/data/maps/text/Route131.s
@@ -0,0 +1,88 @@
+Route131_Text_1C25B3:: @ 81C25B3
+ .string "The sea is teeming with POKéMON.\n"
+ .string "It’s not easy swimming, I tell you.$"
+
+Route131_Text_1C25F8:: @ 81C25F8
+ .string "POKéMON raised by TRAINERS are\n"
+ .string "seriously tough...$"
+
+Route131_Text_1C262A:: @ 81C262A
+ .string "Gasp... Gasp... I’m wiped out...\p"
+ .string "The going’s easy. It’s the leaving\n"
+ .string "that’s the hard part.\p"
+ .string "Will I have any energy left to make\n"
+ .string "the return trip?$"
+
+Route131_Text_1C26B9:: @ 81C26B9
+ .string "The sea... The sea... The sea...\n"
+ .string "The sea as far as these eyes can see!\l"
+ .string "I’m sick and tired of the sea!$"
+
+Route131_Text_1C271F:: @ 81C271F
+ .string "Bleah!$"
+
+Route131_Text_1C2726:: @ 81C2726
+ .string "Bored I am by the sea, but swim I must.\p"
+ .string "I’m a born swimmer!\n"
+ .string "That’s what I am.$"
+
+Route131_Text_1C2774:: @ 81C2774
+ .string "Hi, sweetie, wait!\n"
+ .string "We should battle, you and I!$"
+
+Route131_Text_1C27A4:: @ 81C27A4
+ .string "You’re tough in spite of the way\n"
+ .string "you look!$"
+
+Route131_Text_1C27CF:: @ 81C27CF
+ .string "Did you see a guy over there who whines\n"
+ .string "that he’s bored of the sea?\p"
+ .string "That’s all talk.\n"
+ .string "He’s hopelessly in love with the sea!$"
+
+Route131_Text_1C284A:: @ 81C284A
+ .string "Why do men love bathing suits so much?\p"
+ .string "They all ogle me!$"
+
+Route131_Text_1C2883:: @ 81C2883
+ .string "I’m out of my depth!$"
+
+Route131_Text_1C2898:: @ 81C2898
+ .string "Maybe it’s not my bathing suit that\n"
+ .string "makes men look. It must be my beauty!$"
+
+Route131_Text_1C28E2:: @ 81C28E2
+ .string "RELI: We’ll work together as siblings\n"
+ .string "to take you on!$"
+
+Route131_Text_1C2918:: @ 81C2918
+ .string "RELI: We couldn’t win even though we\n"
+ .string "worked together...$"
+
+Route131_Text_1C2950:: @ 81C2950
+ .string "RELI: The people of PACIFIDLOG are\n"
+ .string "together with the sea and POKéMON from\l"
+ .string "the time they are born.$"
+
+Route131_Text_1C29B2:: @ 81C29B2
+ .string "RELI: You don’t have two POKéMON?\n"
+ .string "We can’t enjoy a battle, then.$"
+
+Route131_Text_1C29F3:: @ 81C29F3
+ .string "IAN: I’m doing my best together with\n"
+ .string "my sis!$"
+
+Route131_Text_1C2A20:: @ 81C2A20
+ .string "IAN: I did my best with my sis, but\n"
+ .string "we still couldn’t win...$"
+
+Route131_Text_1C2A5D:: @ 81C2A5D
+ .string "IAN: You know how PACIFIDLOG is\n"
+ .string "a floating town?\p"
+ .string "So, wherever there is the sea, that’s\n"
+ .string "a part of PACIFIDLOG!$"
+
+Route131_Text_1C2ACA:: @ 81C2ACA
+ .string "IAN: If you have two POKéMON, we’ll\n"
+ .string "take you on!$"
+
diff --git a/data/maps/text/Route132.s b/data/maps/text/Route132.s
new file mode 100644
index 000000000..7f9ee58fd
--- /dev/null
+++ b/data/maps/text/Route132.s
@@ -0,0 +1,50 @@
+Route132_Text_1C2AFB:: @ 81C2AFB
+ .string "I used to catch colds all the time as\n"
+ .string "a kid, but I became totally fit after\l"
+ .string "I started swimming.$"
+
+Route132_Text_1C2B5B:: @ 81C2B5B
+ .string "I crave more power...$"
+
+Route132_Text_1C2B71:: @ 81C2B71
+ .string "TRAINERS travel the fields and\n"
+ .string "mountains, so they must be fit, too.$"
+
+Route132_Text_1C2BB5:: @ 81C2BB5
+ .string "I try not to swim where the currents\n"
+ .string "are too strong.$"
+
+Route132_Text_1C2BEA:: @ 81C2BEA
+ .string "Oh, please, no!$"
+
+Route132_Text_1C2BFA:: @ 81C2BFA
+ .string "If I get swept away, I’ll lose all my\n"
+ .string "sense of place...$"
+
+Route132_Text_1C2C32:: @ 81C2C32
+ .string "Win or lose, you’ll never know until\n"
+ .string "you try!$"
+
+Route132_Text_1C2C60:: @ 81C2C60
+ .string "Waah!\n"
+ .string "I sank in defeat!$"
+
+Route132_Text_1C2C78:: @ 81C2C78
+ .string "I never battle when I know I’ll win.\n"
+ .string "I like to battle at the razor’s edge of\l"
+ .string "victory and defeat!$"
+
+Route132_Text_1C2CD9:: @ 81C2CD9
+ .string "I contemplate POKéMON 24 hours a day.\n"
+ .string "How could you possibly beat me?$"
+
+Route132_Text_1C2D1F:: @ 81C2D1F
+ .string "I lose.\n"
+ .string "I will concede defeat.$"
+
+Route132_Text_1C2D3E:: @ 81C2D3E
+ .string "Urggh...\n"
+ .string "You’re a POKéMON fanatic, aren’t you?\p"
+ .string "You must contemplate POKéMON 24 hours\n"
+ .string "a day, don’t you?$"
+
diff --git a/data/maps/text/Route133.s b/data/maps/text/Route133.s
new file mode 100644
index 000000000..fc7266d6b
--- /dev/null
+++ b/data/maps/text/Route133.s
@@ -0,0 +1,61 @@
+Route133_Text_1C2DA5:: @ 81C2DA5
+ .string "Did the currents carry you here, too?\n"
+ .string "This must have been fated. Let’s battle!$"
+
+Route133_Text_1C2DF4:: @ 81C2DF4
+ .string "Strong!\n"
+ .string "Too much so!$"
+
+Route133_Text_1C2E09:: @ 81C2E09
+ .string "It’s just my luck that a tough TRAINER\n"
+ .string "like you would drift here...\l"
+ .string "I must be cursed...$"
+
+Route133_Text_1C2E61:: @ 81C2E61
+ .string "I’ve led a life of woe and misery...\n"
+ .string "I’ve been cast away, and this is where\l"
+ .string "I’ve drifted...$"
+
+Route133_Text_1C2EBD:: @ 81C2EBD
+ .string "Another loss...$"
+
+Route133_Text_1C2ECD:: @ 81C2ECD
+ .string "A life adrift...\n"
+ .string "I don’t want it anymore!$"
+
+Route133_Text_1C2EF7:: @ 81C2EF7
+ .string "Welcome!\n"
+ .string "I’ve been expecting you!$"
+
+Route133_Text_1C2F19:: @ 81C2F19
+ .string "No! Please!$"
+
+Route133_Text_1C2F25:: @ 81C2F25
+ .string "A strong child TRAINER...\n"
+ .string "That’s so annoying!$"
+
+Route133_Text_1C2F53:: @ 81C2F53
+ .string "I want to win like everyone else, but I\n"
+ .string "won’t raise POKéMON like everyone else.$"
+
+Route133_Text_1C2FA3:: @ 81C2FA3
+ .string "Darn it!\n"
+ .string "My way is still too slack!$"
+
+Route133_Text_1C2FC7:: @ 81C2FC7
+ .string "It’s way more fun to do things the way\n"
+ .string "I want than to be like everybody else.\l"
+ .string "I mean, that’s obvious!$"
+
+Route133_Text_1C302D:: @ 81C302D
+ .string "I came all the way out here with my\n"
+ .string "BIRD POKéMON.$"
+
+Route133_Text_1C305F:: @ 81C305F
+ .string "You...\n"
+ .string "You’re stunningly cool!$"
+
+Route133_Text_1C307E:: @ 81C307E
+ .string "I’d like to go back to FORTREE, but I’ve\n"
+ .string "grown to like this place, too.$"
+
diff --git a/data/maps/text/Route134.s b/data/maps/text/Route134.s
new file mode 100644
index 000000000..dbbe0a776
--- /dev/null
+++ b/data/maps/text/Route134.s
@@ -0,0 +1,58 @@
+Route134_Text_1C30C6:: @ 81C30C6
+ .string "Even those POKéMON that can swim are\n"
+ .string "carried along by the rapid currents.$"
+
+Route134_Text_1C3110:: @ 81C3110
+ .string "Aiyeeeeh!$"
+
+Route134_Text_1C311A:: @ 81C311A
+ .string "I think POKéMON enjoy the fast-running\n"
+ .string "currents around these parts.$"
+
+Route134_Text_1C315E:: @ 81C315E
+ .string "My LUVDISC are looking for a fun\n"
+ .string "match. Will you join us?$"
+
+Route134_Text_1C3198:: @ 81C3198
+ .string "Oopsie!$"
+
+Route134_Text_1C31A0:: @ 81C31A0
+ .string "There’s a collector who’s after the\n"
+ .string "SCALES of LUVDISC.$"
+
+Route134_Text_1C31D7:: @ 81C31D7
+ .string "Okeydokey! That’s enough rest, gang!\n"
+ .string "It’s time for a match!$"
+
+Route134_Text_1C3213:: @ 81C3213
+ .string "Tuckered out again...$"
+
+Route134_Text_1C3229:: @ 81C3229
+ .string "My BIRD POKéMON get tired quickly after\n"
+ .string "a long flight...$"
+
+Route134_Text_1C3262:: @ 81C3262
+ .string "You’re a POKéMON TRAINER.\n"
+ .string "No need for words. We battle now.$"
+
+Route134_Text_1C329E:: @ 81C329E
+ .string "... ... ... ... ... ... ...\n"
+ .string "... ... ... ... ... ... ...$"
+
+Route134_Text_1C32D6:: @ 81C32D6
+ .string "It was I who challenged you, and yet\n"
+ .string "I lost. I am deeply shamed...$"
+
+Route134_Text_1C3319:: @ 81C3319
+ .string "The savage tide in this area serves to\n"
+ .string "make us stronger than ever.$"
+
+Route134_Text_1C335C:: @ 81C335C
+ .string "I concede defeat.$"
+
+Route134_Text_1C336E:: @ 81C336E
+ .string "We will return for more training at\n"
+ .string "METEOR FALLS.\p"
+ .string "If you’d like, you should go, too.\n"
+ .string "It will definitely toughen you up!$"
+
diff --git a/data/maps/text/RustboroCity.s b/data/maps/text/RustboroCity.s
new file mode 100644
index 000000000..70b7fa653
--- /dev/null
+++ b/data/maps/text/RustboroCity.s
@@ -0,0 +1,176 @@
+RustboroCity_Text_16689D:: @ 816689D
+ .string "The DEVON CORPORATION...\n"
+ .string "We all just shorten it to DEVON.\p"
+ .string "That company makes all sorts of\n"
+ .string "convenient products.$"
+
+RustboroCity_Text_16690C:: @ 816690C
+ .string "Hm? A sneaky-looking man?\p"
+ .string "Come to think of it, yes, a shady-\n"
+ .string "looking guy went around the corner.$"
+
+RustboroCity_Text_16696D:: @ 816696D
+ .string "Have you taken the POKéMON GYM\n"
+ .string "challenge?\p"
+ .string "When you get that shiny GYM BADGE\n"
+ .string "in hand, I guess TRAINERS begin to\l"
+ .string "realize what is required of them.$"
+
+RustboroCity_Text_1669FE:: @ 81669FE
+ .string "Hey, that’s RUSTBORO’s GYM BADGE!\p"
+ .string "Out of all the POKéMON GYM BADGES,\n"
+ .string "RUSTBORO’s is the coolest, I’d say.$"
+
+RustboroCity_Text_166A67:: @ 8166A67
+ .string "Oh? Who might you be?\n"
+ .string "You’re a new face around these parts.\p"
+ .string "Have you just transferred into the\n"
+ .string "POKéMON TRAINER’S SCHOOL?$"
+
+RustboroCity_Text_166AE0:: @ 8166AE0
+ .string "I challenged the GYM LEADER, but...\p"
+ .string "It’s not going to be easy winning with\n"
+ .string "my FIRE-type POKéMON...\p"
+ .string "FIRE-type POKéMON don’t match up\n"
+ .string "well against ROCK-type POKéMON...$"
+
+RustboroCity_Text_166B86:: @ 8166B86
+ .string "The old sailor MR. BRINEY lives in a\n"
+ .string "cottage by the sea.\p"
+ .string "He goes for walks in the tunnel every\n"
+ .string "so often.$"
+
+RustboroCity_Text_166BEF:: @ 8166BEF
+ .string "The old sailor MR. BRINEY lives in a\n"
+ .string "cottage by the sea.\p"
+ .string "He said he was going shopping in\n"
+ .string "SLATEPORT for his pet, PEEKO.\p"
+ .string "That old seadog, he must really love\n"
+ .string "that PEEKO.$"
+
+RustboroCity_Text_166C98:: @ 8166C98
+ .string "Wow, you have POKéMON with you, too.\p"
+ .string "When I get bigger, I’m going to go\n"
+ .string "places with POKéMON, too.$"
+
+RustboroCity_Text_166CFA:: @ 8166CFA
+ .string "POKéMON TRAINER’S SCHOOL!\p"
+ .string "If I go to this school, will I be able\n"
+ .string "to catch rare POKéMON easily?$"
+
+RustboroCity_Text_166D59:: @ 8166D59
+ .string "If a POKéMON gains experience in\n"
+ .string "battles, it can sometimes change in\l"
+ .string "the way it looks.$"
+
+RustboroCity_Text_166DB0:: @ 8166DB0
+ .string "A POKéMON changes shape?\n"
+ .string "If one did that, I would be shocked!$"
+
+RustboroCity_Text_166DEE:: @ 8166DEE
+ .string "A POKéMON you get in a trade from\n"
+ .string "someone grows fast.\p"
+ .string "But if you don’t have certain GYM\n"
+ .string "BADGES, it may not obey you...$"
+
+RustboroCity_Text_166E65:: @ 8166E65
+ .string "Get out! Out of the way!$"
+
+RustboroCity_Text_166E7E:: @ 8166E7E
+ .string "Wait! Pleeeaaase!\p"
+ .string "Don’t take my GOODS!$"
+
+RustboroCity_Text_166EA5:: @ 8166EA5
+ .string "Oh, it’s you!\p"
+ .string "You’re that fantastic TRAINER who\n"
+ .string "helped me in PETALBURG WOODS!\p"
+ .string "Help me! I was robbed by TEAM {EVIL_TEAM}!\n"
+ .string "I have to get the DEVON GOODS back!\p"
+ .string "If I don’t...\n"
+ .string "I’m going to be in serious trouble.$"
+
+RustboroCity_Text_166F6B:: @ 8166F6B
+ .string "That shady character, I think he took\n"
+ .string "off towards the tunnel over there.$"
+
+RustboroCity_Text_166FB4:: @ 8166FB4
+ .string "Oh! How did it go?\n"
+ .string "The DEVON GOODS?\p"
+ .string "You did!\n"
+ .string "You got them back!\p"
+ .string "You really are a great TRAINER!\p"
+ .string "I know! As my thanks, I’ll give you\n"
+ .string "another GREAT BALL!$"
+
+RustboroCity_Text_16704C:: @ 816704C
+ .string "Your BAG’s full.\n"
+ .string "I can’t give you this GREAT BALL.$"
+
+RustboroCity_Text_16707F:: @ 816707F
+ .string "Excuse me, please!\n"
+ .string "Please come with me!$"
+
+RustboroCity_Text_1670A7:: @ 81670A7
+ .string "MAY: Oh, hi, {PLAYER}{KUN}!\n"
+ .string "How’s your POKéDEX coming along?\p"
+ .string "Mine’s looking pretty decent.\p"
+ .string "I caught POKéMON in PETALBURG WOODS\n"
+ .string "until I ran out of POKé BALLS.$"
+
+RustboroCity_Text_16713C:: @ 816713C
+ .string "MAY: Oh, by the way, I passed MR. BRINEY\n"
+ .string "in PETALBURG WOODS.\p"
+ .string "I guess he’s on his way home to his\n"
+ .string "cottage by the sea.\p"
+ .string "{PLAYER}{KUN}, you just moved here so you\n"
+ .string "might not know this, but MR. BRINEY\l"
+ .string "was once a revered seafarer.$"
+
+RustboroCity_Text_167213:: @ 8167213
+ .string "BRENDAN: {PLAYER}, how’s your POKéDEX?\n"
+ .string "Have you filled in any pages yet?\p"
+ .string "Mine rules.\p"
+ .string "I went on a POKéMON-catching frenzy\n"
+ .string "in PETALBURG WOODS until I ran out\l"
+ .string "of POKé BALLS.$"
+
+RustboroCity_Text_1672B8:: @ 81672B8
+ .string "BRENDAN: By the way, I walked by MR.\n"
+ .string "BRINEY in PETALBURG WOODS.\p"
+ .string "I bet he was on his way home to his\n"
+ .string "cottage by the sea.\p"
+ .string "I bet you didn’t know this, but he’s\n"
+ .string "always got a POKéMON with him.$"
+
+RustboroCity_Text_167374:: @ 8167374
+ .string "“Timesaving tunnel nearing\n"
+ .string "completion!”\p"
+ .string "...Is what it says on the sign, but\n"
+ .string "there’s also a big “X” splashed\l"
+ .string "across it in red paint...$"
+
+RustboroCity_Text_1673FA:: @ 81673FA
+ .string "DEVON CORPORATION\p"
+ .string "“For all your living needs, we make\n"
+ .string "it all.”$"
+
+RustboroCity_Text_167439:: @ 8167439
+ .string "RUSTBORO CITY POKéMON GYM\n"
+ .string "LEADER: ROXANNE\p"
+ .string "“The ROCK-loving honors student!”$"
+
+ .incbin "baserom.gba", 0x167485, 0x58
+
+RustboroCity_Text_1674DD:: @ 81674DD
+ .string "RUSTBORO CITY\p"
+ .string "“The city probing the integration of\n"
+ .string "nature and science.”$"
+
+RustboroCity_Text_167525:: @ 8167525
+ .string "POKéMON TRAINER’S SCHOOL\p"
+ .string "“We’ll teach you anything about\n"
+ .string "POKéMON!”$"
+
+RustboroCity_Text_167568:: @ 8167568
+ .string "CUTTER’S HOUSE$"
+
diff --git a/data/maps/text/RustboroCity_CuttersHouse.s b/data/maps/text/RustboroCity_CuttersHouse.s
new file mode 100644
index 000000000..dc0c394c1
--- /dev/null
+++ b/data/maps/text/RustboroCity_CuttersHouse.s
@@ -0,0 +1,28 @@
+RustboroCity_CuttersHouse_Text_18509C:: @ 818509C
+ .string "That determined expression...\n"
+ .string "That limber way you move...\l"
+ .string "And your well-trained POKéMON...\p"
+ .string "You’re obviously a skilled TRAINER!\p"
+ .string "No, wait, don’t say a word.\n"
+ .string "I can tell just by looking at you.\p"
+ .string "I’m sure that you will be capable\n"
+ .string "of putting this HM to good use.\p"
+ .string "No need to be modest or shy.\n"
+ .string "Go on, take it!$"
+
+RustboroCity_CuttersHouse_Text_1851C9:: @ 81851C9
+ .string "That HM, it’s CUT.\p"
+ .string "An HM move is one that can be used\n"
+ .string "by POKéMON out of a battle.\p"
+ .string "Any POKéMON that’s learned CUT can\n"
+ .string "chop down thin trees if the TRAINER\l"
+ .string "has earned the STONE BADGE.\p"
+ .string "And, unlike a TM, an HM doesn’t break\n"
+ .string "after one use.$"
+
+RustboroCity_CuttersHouse_Text_1852B3:: @ 81852B3
+ .string "When they were expanding the city of\n"
+ .string "RUSTBORO, my dad helped out.\p"
+ .string "He made his POKéMON use CUT to clear\n"
+ .string "the land of trees.$"
+
diff --git a/data/maps/text/RustboroCity_DevonCorp_1F.s b/data/maps/text/RustboroCity_DevonCorp_1F.s
new file mode 100644
index 000000000..09f130ea8
--- /dev/null
+++ b/data/maps/text/RustboroCity_DevonCorp_1F.s
@@ -0,0 +1,39 @@
+RustboroCity_DevonCorp_1F_Text_1828EE:: @ 81828EE
+ .string "Hello and welcome to the DEVON\n"
+ .string "CORPORATION.\p"
+ .string "We’re proud producers of items and\n"
+ .string "medicine that enhance your life.$"
+
+RustboroCity_DevonCorp_1F_Text_18295E:: @ 818295E
+ .string "One of our research staff stupidly\n"
+ .string "got robbed of an important parcel.$"
+
+RustboroCity_DevonCorp_1F_Text_1829A4:: @ 81829A4
+ .string "Hey, those RUNNING SHOES!\n"
+ .string "They’re one of our products!\p"
+ .string "It makes me happy when I see someone\n"
+ .string "using something we made.$"
+
+RustboroCity_DevonCorp_1F_Text_182A19:: @ 8182A19
+ .string "That stolen parcel...\p"
+ .string "Well, sure it’s important, but it’s not\n"
+ .string "anything that anyone can use.\p"
+ .string "In my estimation, that robber must not\n"
+ .string "have been very bright.$"
+
+RustboroCity_DevonCorp_1F_Text_182AB3:: @ 8182AB3
+ .string "It sounds like they’ve recovered\n"
+ .string "the ripped-off DEVON GOODS.$"
+
+RustboroCity_DevonCorp_1F_Text_182AF0:: @ 8182AF0
+ .string "I’m sorry, only authorized people\n"
+ .string "are allowed to enter here.$"
+
+RustboroCity_DevonCorp_1F_Text_182B2D:: @ 8182B2D
+ .string "It’s beyond stupid.\n"
+ .string "How could we get robbed?$"
+
+RustboroCity_DevonCorp_1F_Text_182B5A:: @ 8182B5A
+ .string "Hi, there!\n"
+ .string "You’re always welcome here!$"
+
diff --git a/data/maps/text/RustboroCity_DevonCorp_2F.s b/data/maps/text/RustboroCity_DevonCorp_2F.s
new file mode 100644
index 000000000..de37c8266
--- /dev/null
+++ b/data/maps/text/RustboroCity_DevonCorp_2F.s
@@ -0,0 +1,89 @@
+RustboroCity_DevonCorp_2F_Text_182B81:: @ 8182B81
+ .string "We’re developing a device for talking\n"
+ .string "with POKéMON.\p"
+ .string "But we haven’t had much success...$"
+
+RustboroCity_DevonCorp_2F_Text_182BD8:: @ 8182BD8
+ .string "I’m developing new kinds of\n"
+ .string "POKé BALLS...\p"
+ .string "But I haven’t made much headway...$"
+
+RustboroCity_DevonCorp_2F_Text_182C25:: @ 8182C25
+ .string "We finally made new kinds of POKé BALLS!\p"
+ .string "The REPEAT BALL makes it easier to\n"
+ .string "catch POKéMON you’d caught before.\p"
+ .string "The TIMER BALL gets better at catching\n"
+ .string "POKéMON the longer a battle runs.\p"
+ .string "Both are proudly developed by the\n"
+ .string "DEVON CORPORATION.\p"
+ .string "Please give them a try!$"
+
+RustboroCity_DevonCorp_2F_Text_182D2A:: @ 8182D2A
+ .string "I made the POKéNAV!\p"
+ .string "As an engineer, I feel blessed to have\n"
+ .string "made something so great!$"
+
+RustboroCity_DevonCorp_2F_Text_182D7E:: @ 8182D7E
+ .string "Oh, wow!\n"
+ .string "That’s a POKéNAV!\p"
+ .string "It came about as a result of our\n"
+ .string "PRESIDENT’s desire to learn about\l"
+ .string "the feelings of POKéMON.\p"
+ .string "Would you like me to describe its\n"
+ .string "features in detail?\p"
+ .string "No, no. I think you’ll find out just by\n"
+ .string "trying the POKéNAV out.$"
+
+RustboroCity_DevonCorp_2F_Text_182E6B:: @ 8182E6B
+ .string "I’m trying to develop a device that\n"
+ .string "visually reproduces the dreams of\l"
+ .string "POKéMON...\p"
+ .string "But it’s not going well.$"
+
+RustboroCity_DevonCorp_2F_Text_182ED5:: @ 8182ED5
+ .string "I’ve been trying to develop a device\n"
+ .string "that resurrects POKéMON from fossils...\p"
+ .string "And, it’s working!$"
+
+RustboroCity_DevonCorp_2F_Text_182F35:: @ 8182F35
+ .string "Wait! That thing you have there...\n"
+ .string "Is that a POKéMON fossil?\p"
+ .string "Would you like to bring that POKéMON\n"
+ .string "back to life?\p"
+ .string "I can with my newly developed\n"
+ .string "FOSSIL REGENERATOR.$"
+
+RustboroCity_DevonCorp_2F_Text_182FD7:: @ 8182FD7
+ .string "Oh, is that so?\p"
+ .string "DEVON’s technological expertise\n"
+ .string "is outstanding, I tell you.$"
+
+RustboroCity_DevonCorp_2F_Text_183023:: @ 8183023
+ .string "Excellent!\n"
+ .string "Let’s do this right away.\p"
+ .string "{PLAYER} handed the {STR_VAR_1} to\n"
+ .string "the DEVON RESEARCHER.$"
+
+RustboroCity_DevonCorp_2F_Text_183072:: @ 8183072
+ .string "The FOSSIL REGENERATOR, which I made,\n"
+ .string "is incredible.\p"
+ .string "But it has one drawback - it takes\n"
+ .string "a long time to work.\p"
+ .string "So, uh... How about you go for a stroll\n"
+ .string "and look around for a while?$"
+
+RustboroCity_DevonCorp_2F_Text_183124:: @ 8183124
+ .string "Thanks for waiting!\p"
+ .string "Your fossilized POKéMON has been\n"
+ .string "brought back to life!\p"
+ .string "The fossil was an ancient POKéMON.\n"
+ .string "{STR_VAR_2}, it was!$"
+
+RustboroCity_DevonCorp_2F_Text_18319E:: @ 818319E
+ .string "{PLAYER} received {STR_VAR_2} from\n"
+ .string "the DEVON RESEARCHER.$"
+
+RustboroCity_DevonCorp_2F_Text_1831C8:: @ 81831C8
+ .string "Uh-oh, you’ve got too many POKéMON.\n"
+ .string "You have no room for this one.$"
+
diff --git a/data/maps/text/RustboroCity_DevonCorp_3F.s b/data/maps/text/RustboroCity_DevonCorp_3F.s
new file mode 100644
index 000000000..011513d8d
--- /dev/null
+++ b/data/maps/text/RustboroCity_DevonCorp_3F.s
@@ -0,0 +1,99 @@
+RustboroCity_DevonCorp_3F_Text_18320B:: @ 818320B
+ .string "I’m MR. STONE, the PRESIDENT of\n"
+ .string "the DEVON CORPORATION.\p"
+ .string "I’d just got word about you!\p"
+ .string "You saved our staff not just once,\n"
+ .string "but twice!\p"
+ .string "I have a favor to ask of an amazing\n"
+ .string "person like you.\p"
+ .string "I understand that you’re delivering\n"
+ .string "a package to SLATEPORT’s SHIPYARD.\p"
+ .string "Well, on the way, could you stop off in\n"
+ .string "DEWFORD TOWN?\p"
+ .string "I was hoping that you’d deliver a LETTER\n"
+ .string "to STEVEN in DEWFORD.$"
+
+RustboroCity_DevonCorp_3F_Text_18337E:: @ 818337E
+ .string "MR. STONE: Now, you should know that\n"
+ .string "I am a great PRESIDENT.\p"
+ .string "So, I’d never be so cheap as to ask\n"
+ .string "a favor for nothing in return.\p"
+ .string "That’s why I want you to have this!$"
+
+RustboroCity_DevonCorp_3F_Text_183422:: @ 8183422
+ .string "{PLAYER} received a POKéNAV.$"
+
+RustboroCity_DevonCorp_3F_Text_183439:: @ 8183439
+ .string "MR. STONE: That device...\p"
+ .string "It’s a POKéMON NAVIGATOR, or POKéNAV\n"
+ .string "for short.\p"
+ .string "It’s an indispensable tool for any\n"
+ .string "TRAINER on an adventure.\p"
+ .string "It has a map of the HOENN region.\p"
+ .string "You can check the locations of\n"
+ .string "DEWFORD and SLATEPORT easily!$"
+
+RustboroCity_DevonCorp_3F_Text_18351E:: @ 818351E
+ .string "MR. STONE: I’m counting on you!$"
+
+RustboroCity_DevonCorp_3F_Text_18353E:: @ 818353E
+ .string "MR. STONE: You delivered my LETTER?\n"
+ .string "Thank you kindly!\p"
+ .string "This is my way of thanking you.\n"
+ .string "It should help you, a TRAINER.$"
+
+RustboroCity_DevonCorp_3F_Text_1835B3:: @ 81835B3
+ .string "MR. STONE: A POKéMON holding that\n"
+ .string "EXP. SHARE will be given some of the\l"
+ .string "EXP Points from battle.\p"
+ .string "It will get EXP Points even if it didn’t\n"
+ .string "actually battle.\p"
+ .string "I would say EXP. SHARE is quite useful\n"
+ .string "for raising weak POKéMON.$"
+
+RustboroCity_DevonCorp_3F_Text_18368D:: @ 818368D
+ .string "MR. STONE: Since my youth, I’ve immersed\n"
+ .string "myself in work.\p"
+ .string "Consequently, I’m not familiar with\n"
+ .string "trends and that sort of thing.\p"
+ .string "But do young people all want to be\n"
+ .string "TRAINERS in the POKéMON LEAGUE?$"
+
+RustboroCity_DevonCorp_3F_Text_18374C:: @ 818374C
+ .string "This is the DEVON CORPORATION’s\n"
+ .string "third floor.\p"
+ .string "Our PRESIDENT’s OFFICE is on this floor.\p"
+ .string "Anyway, I can’t tell you how much I’m\n"
+ .string "grateful for what you’ve done.\p"
+ .string "Um... By the way, that parcel you got\n"
+ .string "back for us...\p"
+ .string "Could I get you to deliver that to the\n"
+ .string "SHIPYARD in SLATEPORT?\p"
+ .string "It would be awful if those robbers\n"
+ .string "tried to take it again.\p"
+ .string "Uh... Hehehe, so, uh, could I count\n"
+ .string "on you to do that for me?\p"
+ .string "Oh, that’s right.\n"
+ .string "Could you wait here a second?$"
+
+RustboroCity_DevonCorp_3F_Text_183903:: @ 8183903
+ .string "Our PRESIDENT would like to have\n"
+ .string "a word with you.\p"
+ .string "Please come with me.$"
+
+RustboroCity_DevonCorp_3F_Text_18394A:: @ 818394A
+ .string "Please, go ahead.$"
+
+RustboroCity_DevonCorp_3F_Text_18395C:: @ 818395C
+ .string "If you visit the SHIPYARD in SLATEPORT,\n"
+ .string "you should go see CAPT. STERN.$"
+
+RustboroCity_DevonCorp_3F_Text_1839A3:: @ 81839A3
+ .string "DEVON’s new products, the REPEAT BALL\n"
+ .string "and TIMER BALL, have become hugely\l"
+ .string "popular among TRAINERS.$"
+
+RustboroCity_DevonCorp_3F_Text_183A04:: @ 8183A04
+ .string "It’s a collection of rare rocks and\n"
+ .string "stones assembled by the PRESIDENT.$"
+
diff --git a/data/maps/text/RustboroCity_Flat1_1F.s b/data/maps/text/RustboroCity_Flat1_1F.s
new file mode 100644
index 000000000..afd8384b7
--- /dev/null
+++ b/data/maps/text/RustboroCity_Flat1_1F.s
@@ -0,0 +1,7 @@
+RustboroCity_Flat1_1F_Text_184DB4:: @ 8184DB4
+ .string "Every POKéMON has a special ability\n"
+ .string "that it can use.$"
+
+RustboroCity_Flat1_1F_Text_184DE9:: @ 8184DE9
+ .string "POKéMON are such strange creatures.$"
+
diff --git a/data/maps/text/RustboroCity_Flat1_2F.s b/data/maps/text/RustboroCity_Flat1_2F.s
new file mode 100644
index 000000000..79553bf9c
--- /dev/null
+++ b/data/maps/text/RustboroCity_Flat1_2F.s
@@ -0,0 +1,9 @@
+RustboroCity_Flat1_2F_Text_184E0D:: @ 8184E0D
+ .string "Oh, it’s so hard every day...\p"
+ .string "What’s hard?\n"
+ .string "You need to ask?\p"
+ .string "It’s trying to figure out what to\n"
+ .string "make for meals every day.\p"
+ .string "It really isn’t easy coming up with\n"
+ .string "meals every day.$"
+
diff --git a/data/maps/text/RustboroCity_Flat2_1F.s b/data/maps/text/RustboroCity_Flat2_1F.s
new file mode 100644
index 000000000..9ae0b72d7
--- /dev/null
+++ b/data/maps/text/RustboroCity_Flat2_1F.s
@@ -0,0 +1,7 @@
+RustboroCity_Flat2_1F_Text_1853DD:: @ 81853DD
+ .string "DEVON CORPORATION’s workers live in\n"
+ .string "this building.$"
+
+RustboroCity_Flat2_1F_Text_185410:: @ 8185410
+ .string "SKITTY: Gyaaaah!$"
+
diff --git a/data/maps/text/RustboroCity_Flat2_2F.s b/data/maps/text/RustboroCity_Flat2_2F.s
new file mode 100644
index 000000000..797b6f810
--- /dev/null
+++ b/data/maps/text/RustboroCity_Flat2_2F.s
@@ -0,0 +1,14 @@
+RustboroCity_Flat2_2F_Text_185421:: @ 8185421
+ .string "Way back in the old days, DEVON was just\n"
+ .string "a teeny, tiny company.$"
+
+RustboroCity_Flat2_2F_Text_185461:: @ 8185461
+ .string "My daddy’s working at the CORPORATION.\p"
+ .string "My daddy made this!\n"
+ .string "But I can’t use it, so you can have it.$"
+
+RustboroCity_Flat2_2F_Text_1854C4:: @ 81854C4
+ .string "My daddy’s working at the CORPORATION.\p"
+ .string "When I grow up, I’m going to work for\n"
+ .string "DEVON, too.$"
+
diff --git a/data/maps/text/RustboroCity_Flat2_3F.s b/data/maps/text/RustboroCity_Flat2_3F.s
new file mode 100644
index 000000000..bb05f1932
--- /dev/null
+++ b/data/maps/text/RustboroCity_Flat2_3F.s
@@ -0,0 +1,8 @@
+RustboroCity_Flat2_3F_Text_18551D:: @ 818551D
+ .string "DEVON’s PRESIDENT likes to collect\n"
+ .string "rare stones.$"
+
+RustboroCity_Flat2_3F_Text_18554D:: @ 818554D
+ .string "I think the PRESIDENT’s son also\n"
+ .string "collects rare stones.$"
+
diff --git a/data/maps/text/RustboroCity_Gym.s b/data/maps/text/RustboroCity_Gym.s
new file mode 100644
index 000000000..e87ecbd6e
--- /dev/null
+++ b/data/maps/text/RustboroCity_Gym.s
@@ -0,0 +1,112 @@
+RustboroCity_Gym_Text_183A4B:: @ 8183A4B
+ .string "Yo, how’s it going?\p"
+ .string "Listen, my friend!\n"
+ .string "Would you like to become the CHAMPION?\p"
+ .string "I’m no TRAINER, not me, but I can\n"
+ .string "sure give you winning advice.\p"
+ .string "That’s settled, then! We’ll aim for the\n"
+ .string "POKéMON CHAMPIONSHIP together!\p"
+ .string "It’s your job as a TRAINER to collect\n"
+ .string "GYM BADGES, am I right?\p"
+ .string "But GYM LEADERS aren’t pushovers!\p"
+ .string "And that’s where I come in!\n"
+ .string "I’m here to provide expert advice!\p"
+ .string "ROXANNE, the GYM LEADER, is a user\n"
+ .string "of ROCK-type POKéMON.\p"
+ .string "The ROCK type is very durable, but\n"
+ .string "it can’t stand WATER-type and\l"
+ .string "GRASS-type moves.\p"
+ .string "Come see me afterwards, if you beat\n"
+ .string "the GYM LEADER.\p"
+ .string "Well, go for it!$"
+
+RustboroCity_Gym_Text_183C90:: @ 8183C90
+ .string "Whoa! What a breathtaking victory!\n"
+ .string "My cheering must’ve worked!\p"
+ .string "Great!\n"
+ .string "Check your TRAINER CARD.\p"
+ .string "The STONE BADGE you got should be\n"
+ .string "properly recorded on it.\p"
+ .string "In other words...\p"
+ .string "You’ve climbed the first step on\n"
+ .string "the stairs to the CHAMPIONSHIP!\p"
+ .string "That’s got to feel awesome!$"
+
+RustboroCity_Gym_Text_183D99:: @ 8183D99
+ .string "Don’t take us GYM TRAINERS lightly!\n"
+ .string "I’ll show you why we’re better!$"
+
+RustboroCity_Gym_Text_183DDD:: @ 8183DDD
+ .string "You were too good for me...$"
+
+RustboroCity_Gym_Text_183DF9:: @ 8183DF9
+ .string "You haven’t seen anything of the ROCK\n"
+ .string "type’s terrifying power!$"
+
+RustboroCity_Gym_Text_183E38:: @ 8183E38
+ .string "If you can’t beat me, you won’t stand\n"
+ .string "a chance against ROXANNE!$"
+
+RustboroCity_Gym_Text_183E78:: @ 8183E78
+ .string "Wow! You’ve got some potential!$"
+
+RustboroCity_Gym_Text_183E98:: @ 8183E98
+ .string "ROXANNE is stronger than me by\n"
+ .string "several times.\p"
+ .string "You’d better be on your guard!$"
+
+RustboroCity_Gym_Text_183EE5:: @ 8183EE5
+ .string "Hello, I am ROXANNE, the RUSTBORO\n"
+ .string "POKéMON GYM LEADER.\p"
+ .string "I became a GYM LEADER so that I may\n"
+ .string "apply what I learned at the POKéMON\l"
+ .string "TRAINER’S SCHOOL in battle.\p"
+ .string "Would you kindly demonstrate how you\n"
+ .string "battle, and with which POKéMON?$"
+
+RustboroCity_Gym_Text_183FC4:: @ 8183FC4
+ .string "So...\n"
+ .string "I lost...\p"
+ .string "It seems that I still have much more\n"
+ .string "to learn...\p"
+ .string "I understand.\p"
+ .string "The POKéMON LEAGUE’s rules state\n"
+ .string "that TRAINERS are to be given this\l"
+ .string "if they defeat a GYM LEADER.\p"
+ .string "Please accept the official POKéMON\n"
+ .string "LEAGUE STONE BADGE.$"
+
+RustboroCity_Gym_Text_1840AB:: @ 81840AB
+ .string "{PLAYER} received the STONE BADGE\n"
+ .string "from ROXANNE.$"
+
+RustboroCity_Gym_Text_1840D5:: @ 81840D5
+ .string "The STONE BADGE heightens the ATTACK\n"
+ .string "power of your POKéMON.\p"
+ .string "It also enables them to use the HM move\n"
+ .string "CUT outside of battle.\p"
+ .string "Please take this with you, too.$"
+
+RustboroCity_Gym_Text_184170:: @ 8184170
+ .string "That TM39 contains ROCK TOMB.\p"
+ .string "It not only inflicts damage by dropping\n"
+ .string "rocks, it also lowers SPEED.\p"
+ .string "If you use a TM, it instantly teaches\n"
+ .string "the move to a POKéMON.\p"
+ .string "Remember, a TM can be used only once,\n"
+ .string "so think before you use it.$"
+
+RustboroCity_Gym_Text_184252:: @ 8184252
+ .string "Since you are so strong, you should\n"
+ .string "challenge other GYM LEADERS.\p"
+ .string "By battling many TRAINERS, you should\n"
+ .string "learn many things.$"
+
+RustboroCity_Gym_Text_1842CC:: @ 81842CC
+ .string "RUSTBORO CITY POKéMON GYM$"
+
+RustboroCity_Gym_Text_1842E6:: @ 81842E6
+ .string "RUSTBORO CITY POKéMON GYM\p"
+ .string "ROXANNE’S CERTIFIED TRAINERS:\n"
+ .string "{PLAYER}$"
+
diff --git a/data/maps/text/RustboroCity_House1.s b/data/maps/text/RustboroCity_House1.s
new file mode 100644
index 000000000..2835b8abe
--- /dev/null
+++ b/data/maps/text/RustboroCity_House1.s
@@ -0,0 +1,28 @@
+RustboroCity_House1_Text_184EBA:: @ 8184EBA
+ .string "Do you nickname your POKéMON?\n"
+ .string "I gave a cool name to mine.\p"
+ .string "But when I call my POKéMON by that\n"
+ .string "name, people laugh at me...\p"
+ .string "If it’s okay with you, want to trade\n"
+ .string "your {STR_VAR_1} for my {STR_VAR_2}?$"
+
+RustboroCity_House1_Text_184F6B:: @ 8184F6B
+ .string "Eheheheh, ooh, this is so exciting!$"
+
+RustboroCity_House1_Text_184F8F:: @ 8184F8F
+ .string "But that’s no {STR_VAR_1}.\n"
+ .string "Tch, that’s so disappointing...$"
+
+RustboroCity_House1_Text_184FC1:: @ 8184FC1
+ .string "Aww, it’s a good POKéMON...$"
+
+RustboroCity_House1_Text_184FDD:: @ 8184FDD
+ .string "Don’t you get curious about what other\n"
+ .string "people named their POKéMON?$"
+
+RustboroCity_House1_Text_185020:: @ 8185020
+ .string "In all sorts of places, there are all\n"
+ .string "sorts of POKéMON and people.\p"
+ .string "I find that fascinating, so I go to all\n"
+ .string "sorts of places.$"
+
diff --git a/data/maps/text/RustboroCity_House2.s b/data/maps/text/RustboroCity_House2.s
new file mode 100644
index 000000000..fba2dc73c
--- /dev/null
+++ b/data/maps/text/RustboroCity_House2.s
@@ -0,0 +1,10 @@
+RustboroCity_House2_Text_18532D:: @ 818532D
+ .string "The TRAINER’S SCHOOL is excellent.\p"
+ .string "If you study there, you could even\n"
+ .string "become a GYM LEADER.$"
+
+RustboroCity_House2_Text_185388:: @ 8185388
+ .string "ROXANNE, the GYM LEADER, really knows\n"
+ .string "a lot about POKéMON.\p"
+ .string "She’s really strong, too!$"
+
diff --git a/data/maps/text/RustboroCity_House3.s b/data/maps/text/RustboroCity_House3.s
new file mode 100644
index 000000000..69c64c3d4
--- /dev/null
+++ b/data/maps/text/RustboroCity_House3.s
@@ -0,0 +1,15 @@
+RustboroCity_House3_Text_185584:: @ 8185584
+ .string "For my own POKéMON, I give them\n"
+ .string "perfectly suited nicknames!\p"
+ .string "It’s my expression of, uh...\n"
+ .string "originality, yes, that’s it!$"
+
+RustboroCity_House3_Text_1855FA:: @ 81855FA
+ .string "But giving the name PEKACHU to a\n"
+ .string "PIKACHU? It seems pointless.\p"
+ .string "I suppose it is good to use a name\n"
+ .string "that’s easy to understand, but...$"
+
+RustboroCity_House3_Text_18567D:: @ 818567D
+ .string "PEKACHU: Peka!$"
+
diff --git a/data/maps/text/RustboroCity_Mart.s b/data/maps/text/RustboroCity_Mart.s
new file mode 100644
index 000000000..48b5ea874
--- /dev/null
+++ b/data/maps/text/RustboroCity_Mart.s
@@ -0,0 +1,18 @@
+RustboroCity_Mart_Text_184C76:: @ 8184C76
+ .string "I’m buying some PARLYZ HEALS and\n"
+ .string "ANTIDOTES.\p"
+ .string "Just in case I run into SHROOMISH\n"
+ .string "in PETALBURG WOODS.$"
+
+RustboroCity_Mart_Text_184CD8:: @ 8184CD8
+ .string "My POKéMON evolved.\n"
+ .string "It has a lot of HP now.\p"
+ .string "I should buy SUPER POTIONS for it\n"
+ .string "instead of ordinary POTIONS.$"
+
+RustboroCity_Mart_Text_184D43:: @ 8184D43
+ .string "I’m getting an ESCAPE ROPE just in\n"
+ .string "case I get lost in a cave.\p"
+ .string "I just need to use it to get back to the\n"
+ .string "entrance.$"
+
diff --git a/data/maps/text/RustboroCity_PokemonCenter_1F.s b/data/maps/text/RustboroCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..be48ec5c8
--- /dev/null
+++ b/data/maps/text/RustboroCity_PokemonCenter_1F.s
@@ -0,0 +1,17 @@
+RustboroCity_PokemonCenter_1F_Text_184B37:: @ 8184B37
+ .string "My POKéMON has a NAIVE nature, and my\n"
+ .string "friend’s has a JOLLY nature.\p"
+ .string "It’s fascinating how POKéMON have\n"
+ .string "personalities!$"
+
+RustboroCity_PokemonCenter_1F_Text_184BAB:: @ 8184BAB
+ .string "Just like people, there are male and\n"
+ .string "female POKéMON.\p"
+ .string "But no one seems to have any idea how\n"
+ .string "they’re different.$"
+
+RustboroCity_PokemonCenter_1F_Text_184C19:: @ 8184C19
+ .string "The man next door gave me an HM!\p"
+ .string "I used it to teach my POKéMON how to\n"
+ .string "CUT down skinny trees.$"
+
diff --git a/data/maps/text/RustboroCity_PokemonSchool.s b/data/maps/text/RustboroCity_PokemonSchool.s
new file mode 100644
index 000000000..a6cd855c4
--- /dev/null
+++ b/data/maps/text/RustboroCity_PokemonSchool.s
@@ -0,0 +1,102 @@
+RustboroCity_PokemonSchool_Text_184321:: @ 8184321
+ .string "The blackboard lists status changes\n"
+ .string "that may affect POKéMON in battle.$"
+
+RustboroCity_PokemonSchool_Text_184368:: @ 8184368
+ .string "Which topic do you want to read?$"
+
+RustboroCity_PokemonSchool_Text_184389:: @ 8184389
+ .string "If a POKéMON is poisoned, it will\n"
+ .string "steadily lose HP.\p"
+ .string "The effects of poison remain after\n"
+ .string "a battle.\p"
+ .string "A poisoned POKéMON’s HP will drop\n"
+ .string "while it is traveling.\p"
+ .string "Heal a poisoning using an ANTIDOTE.$"
+
+RustboroCity_PokemonSchool_Text_184447:: @ 8184447
+ .string "If a POKéMON becomes paralyzed,\n"
+ .string "its SPEED drops.\p"
+ .string "It may also not be able to move while\n"
+ .string "it is in battle.\p"
+ .string "Paralysis remains after battle.\n"
+ .string "Cure it using a PARLYZ HEAL.$"
+
+RustboroCity_PokemonSchool_Text_1844EC:: @ 81844EC
+ .string "If a POKéMON falls asleep, it will be\n"
+ .string "unable to attack.\p"
+ .string "A POKéMON may wake up on its own,\n"
+ .string "but if a battle ends while it is sleeping,\l"
+ .string "it will stay asleep.\p"
+ .string "Wake it up using an AWAKENING.$"
+
+RustboroCity_PokemonSchool_Text_1845A5:: @ 81845A5
+ .string "A burn reduces ATTACK power, and it\n"
+ .string "steadily reduces the victim’s HP.\p"
+ .string "A burn lingers after battle.\n"
+ .string "Cure a burn using a BURN HEAL.$"
+
+RustboroCity_PokemonSchool_Text_184627:: @ 8184627
+ .string "If a POKéMON is frozen, it becomes\n"
+ .string "completely helpless.\p"
+ .string "It will remain frozen after battle.\n"
+ .string "Thaw it out using an ICE HEAL.$"
+
+RustboroCity_PokemonSchool_Text_1846A2:: @ 81846A2
+ .string "Students who don’t study get a little\n"
+ .string "taste of my QUICK CLAW.\p"
+ .string "Whether or not you are a good student \n"
+ .string "will be evident from the way you use\l"
+ .string "this item.$"
+
+RustboroCity_PokemonSchool_Text_184737:: @ 8184737
+ .string "A POKéMON holding the QUICK CLAW will\n"
+ .string "occasionally speed up and get to move\l"
+ .string "before its opponent.\p"
+ .string "There are many other items that are\n"
+ .string "meant to be held by POKéMON.\p"
+ .string "Just those alone will give you many\n"
+ .string "topics to study!$"
+
+RustboroCity_PokemonSchool_Text_18480E:: @ 818480E
+ .string "I’m trading POKéMON with my friend\n"
+ .string "right now.$"
+
+RustboroCity_PokemonSchool_Text_18483C:: @ 818483C
+ .string "I always wanted a SEEDOT, and\n"
+ .string "I’m finally getting one!$"
+
+RustboroCity_PokemonSchool_Text_184873:: @ 8184873
+ .string "POKéMON can hold items, but they\n"
+ .string "don’t know what to do with man-made\l"
+ .string "items like POTION and ANTIDOTE.$"
+
+RustboroCity_PokemonSchool_Text_1848D8:: @ 81848D8
+ .string "You know how some POKéMON moves can\n"
+ .string "confuse a POKéMON?\p"
+ .string "A confused POKéMON will sometimes\n"
+ .string "attack itself without meaning to.\p"
+ .string "But once it leaves battle, it will\n"
+ .string "return to normal.$"
+
+RustboroCity_PokemonSchool_Text_184988:: @ 8184988
+ .string "A POKéMON holding a BERRY will heal\n"
+ .string "itself...\p"
+ .string "There are many kinds of items that\n"
+ .string "POKéMON can hold...\p"
+ .string "Boy, it sure is hard taking notes\n"
+ .string "down...$"
+
+RustboroCity_PokemonSchool_Text_184A17:: @ 8184A17
+ .string "It’s this student’s notebook...\p"
+ .string "POKéMON are to be caught using\n"
+ .string "POKé BALLS.\p"
+ .string "Up to six POKéMON can accompany\n"
+ .string "a TRAINER.\p"
+ .string "A TRAINER is someone who catches\n"
+ .string "POKéMON, raises them, and battles\l"
+ .string "with them.\p"
+ .string "A TRAINER’s mission is to defeat the\n"
+ .string "strong TRAINERS who await challengers\l"
+ .string "in POKéMON GYMS.$"
+
diff --git a/data/maps/text/RusturfTunnel.s b/data/maps/text/RusturfTunnel.s
new file mode 100644
index 000000000..4905383e0
--- /dev/null
+++ b/data/maps/text/RusturfTunnel.s
@@ -0,0 +1,106 @@
+RusturfTunnel_Text_194159:: @ 8194159
+ .string "What, are you coming?\n"
+ .string "Come and get some, then!$"
+
+RusturfTunnel_Text_194188:: @ 8194188
+ .string "PEEKO: Pii pihyoh!$"
+
+RusturfTunnel_Text_19419B:: @ 819419B
+ .string "Grah, keelhaul it all!\p"
+ .string "That hostage POKéMON turned out to\n"
+ .string "be worthless!\p"
+ .string "And to think I made a getaway...\n"
+ .string "In this tunnel to nowhere!\p"
+ .string "Hey! You!\n"
+ .string "So you want to battle me?$"
+
+RusturfTunnel_Text_194243:: @ 8194243
+ .string "Urrrggh! My career in crime comes to\n"
+ .string "a dead end!$"
+
+RusturfTunnel_Text_194274:: @ 8194274
+ .string "This is plain not right...\p"
+ .string "The BOSS told me this would be a\n"
+ .string "slick-and-easy job to pull.\p"
+ .string "All I had to do was steal some package\n"
+ .string "from DEVON.\p"
+ .string "Tch!\n"
+ .string "You want it back that badly, take it!$"
+
+RusturfTunnel_Text_19432A:: @ 819432A
+ .string "PEEKO! Am I glad to see you’re safe!$"
+
+RusturfTunnel_Text_19434F:: @ 819434F
+ .string "PEEKO owes her life to you!\p"
+ .string "They call me MR. BRINEY.\n"
+ .string "And, you are?\p"
+ .string "... ... ... ... ... ... ... ...\n"
+ .string "... ... ... ... ... ... ... ...\p"
+ .string "Ah, so you are {PLAYER}{KUN}!\n"
+ .string "I sincerely thank you!\p"
+ .string "Now, if there’s anything that troubles\n"
+ .string "you, don’t hesitate to tell me!\p"
+ .string "You can usually find me in my cottage\n"
+ .string "by the sea near PETALBURG WOODS.\p"
+ .string "Come, PEEKO, we should make our way\n"
+ .string "home.\p"
+ .string "PEEKO: Pihyoh!$"
+
+RusturfTunnel_Text_1944C5:: @ 81944C5
+ .string "... ...\p"
+ .string "Why can’t they keep digging?\n"
+ .string "Is the bedrock too hard?\p"
+ .string "My beloved awaits me in VERDANTURF\n"
+ .string "TOWN just beyond here...\p"
+ .string "If RUSTBORO and VERDANTURF were\n"
+ .string "joined by this tunnel, I could visit\l"
+ .string "her every day...\p"
+ .string "But this...\n"
+ .string "What am I to do?$"
+
+RusturfTunnel_Text_1945B2:: @ 81945B2
+ .string "To get from RUSTBORO to VERDANTURF,\n"
+ .string "you need to go to DEWFORD, then pass\l"
+ .string "through SLATEPORT and MAUVILLE...$"
+
+RusturfTunnel_Text_19461D:: @ 819461D
+ .string "Wow! You shattered that boulder\n"
+ .string "blocking the way.\p"
+ .string "To show you how much I appreciate it,\n"
+ .string "I’d like you to have this HM.$"
+
+RusturfTunnel_Text_194693:: @ 8194693
+ .string "That HM contains STRENGTH.\p"
+ .string "If a muscular POKéMON were to learn\n"
+ .string "that, it would be able to move even\l"
+ .string "large boulders.$"
+
+RusturfTunnel_Text_194706:: @ 8194706
+ .string "WANDA!\n"
+ .string "Now I can see you anytime!\p"
+ .string "WANDA: That’s...wonderful.\p"
+ .string "Please, take some rest at my home.$"
+
+RusturfTunnel_Text_194766:: @ 8194766
+ .string "On the other side of this rock...\n"
+ .string "My boyfriend is there.\p"
+ .string "He... He’s not just digging the tunnel\n"
+ .string "to come see me.\p"
+ .string "He works his hands raw and rough\n"
+ .string "for the benefit of everyone.$"
+
+RusturfTunnel_Text_194814:: @ 8194814
+ .string "What do you call a wild man up in the\n"
+ .string "mountains? A mountain man, right?\p"
+ .string "So why don’t they call a POKéMON in the\n"
+ .string "mountains a mountain POKéMON?$"
+
+RusturfTunnel_Text_1948A2:: @ 81948A2
+ .string "My POKéMON...\n"
+ .string "Ran out of power...$"
+
+RusturfTunnel_Text_1948C4:: @ 81948C4
+ .string "They halted development here to\n"
+ .string "protect POKéMON, right?\l"
+ .string "There’s a feel-good story!$"
+
diff --git a/data/maps/text/SSTidalCorridor.s b/data/maps/text/SSTidalCorridor.s
new file mode 100644
index 000000000..fac2cbc81
--- /dev/null
+++ b/data/maps/text/SSTidalCorridor.s
@@ -0,0 +1 @@
+SSTidalCorridor_Text_199007:: @ 8199007
diff --git a/data/maps/text/SSTidalLowerDeck.s b/data/maps/text/SSTidalLowerDeck.s
new file mode 100644
index 000000000..8792f18d5
--- /dev/null
+++ b/data/maps/text/SSTidalLowerDeck.s
@@ -0,0 +1,26 @@
+SSTidalLowerDeck_Text_1993C1:: @ 81993C1
+ .string "Arrrgh! I’m fed up and dog-tired of\n"
+ .string "cleaning this huge place!\p"
+ .string "Let’s have a quick battle!$"
+
+SSTidalLowerDeck_Text_19941A:: @ 819941A
+ .string "Little bro, I lost!$"
+
+SSTidalLowerDeck_Text_19942E:: @ 819942E
+ .string "We’re the CLEANUP BROTHERS!\p"
+ .string "The old one dumps the detergent,\n"
+ .string "and the young one does the scrubbing!$"
+
+SSTidalLowerDeck_Text_199491:: @ 8199491
+ .string "This is the bottom of the ship’s hull.\n"
+ .string "There’s plenty of room.\l"
+ .string "It’ll be alright for a POKéMON battle.$"
+
+SSTidalLowerDeck_Text_1994F7:: @ 81994F7
+ .string "Big bro, I lost!$"
+
+SSTidalLowerDeck_Text_199508:: @ 8199508
+ .string "We’re the CLEANUP BROTHERS!\p"
+ .string "The old one dumps the detergent,\n"
+ .string "and the young one does the scrubbing!$"
+
diff --git a/data/maps/text/SSTidalRooms.s b/data/maps/text/SSTidalRooms.s
new file mode 100644
index 000000000..3d1b421f8
--- /dev/null
+++ b/data/maps/text/SSTidalRooms.s
@@ -0,0 +1,6 @@
+SSTidalRooms_Text_199007:: @ 8199007
+ .string "This ferry is built to plow through\n"
+ .string "fast-running currents.\p"
+ .string "We hope you enjoy your voyage with us.\n"
+ .string "Feel free to explore the ship.$"
+
diff --git a/data/maps/text/SafariZone_Northeast.s b/data/maps/text/SafariZone_Northeast.s
new file mode 100644
index 000000000..5134aa15f
--- /dev/null
+++ b/data/maps/text/SafariZone_Northeast.s
@@ -0,0 +1,9 @@
+SafariZone_Northeast_Text_1C3D19:: @ 81C3D19
+ .string "I’m on a mission to find WATER POKéMON\n"
+ .string "you don’t see in HOENN.\p"
+ .string "Do you have any idea where the lake is?$"
+
+SafariZone_Northeast_Text_1C3D80:: @ 81C3D80
+ .string "I’m going to catch a lot of rare POKéMON\n"
+ .string "here and trade them with my friends!$"
+
diff --git a/data/maps/text/SafariZone_Northwest.s b/data/maps/text/SafariZone_Northwest.s
new file mode 100644
index 000000000..cb7046baf
--- /dev/null
+++ b/data/maps/text/SafariZone_Northwest.s
@@ -0,0 +1,6 @@
+SafariZone_Northwest_Text_1C3CAE:: @ 81C3CAE
+ .string "Gasp... Gasp...\n"
+ .string "I...made it out here...but...\p"
+ .string "I’m exhausted... I don’t have the\n"
+ .string "energy to catch POKéMON...$"
+
diff --git a/data/maps/text/SafariZone_RestHouse.s b/data/maps/text/SafariZone_RestHouse.s
new file mode 100644
index 000000000..e3d14d9a3
--- /dev/null
+++ b/data/maps/text/SafariZone_RestHouse.s
@@ -0,0 +1,19 @@
+SafariZone_RestHouse_Text_1C3EC9:: @ 81C3EC9
+ .string "I don’t have any {POKEBLOCK}S, but I caught\n"
+ .string "a good number of POKéMON.\p"
+ .string "You can improve your chances of making\n"
+ .string "a catch by getting closer to them\l"
+ .string "before throwing a SAFARI BALL.$"
+
+SafariZone_RestHouse_Text_1C3F71:: @ 81C3F71
+ .string "If you use {POKEBLOCK}S, wild POKéMON won’t\n"
+ .string "be so quick to run away.\p"
+ .string "It’s not much use to give {POKEBLOCK}S to\n"
+ .string "POKéMON that don’t flee easily.$"
+
+SafariZone_RestHouse_Text_1C3FF4:: @ 81C3FF4
+ .string "If you put a {POKEBLOCK} on the FEEDER,\n"
+ .string "POKéMON are attracted to it.\p"
+ .string "I think POKéMON with the same sort of\n"
+ .string "nature are drawn by a certain {POKEBLOCK}.$"
+
diff --git a/data/maps/text/SafariZone_Southeast.s b/data/maps/text/SafariZone_Southeast.s
new file mode 100644
index 000000000..3f8e7df99
--- /dev/null
+++ b/data/maps/text/SafariZone_Southeast.s
@@ -0,0 +1,31 @@
+SafariZone_Southeast_Text_1C3A56:: @ 81C3A56
+ .string "You still have time left. Would you like\n"
+ .string "to exit the SAFARI ZONE now?$"
+
+SafariZone_Southeast_Text_1C3A9C:: @ 81C3A9C
+ .string "Please enjoy the rest of your wild\n"
+ .string "adventure!$"
+
+SafariZone_Southeast_Text_1C3ACA:: @ 81C3ACA
+ .string "Okay.\p"
+ .string "I’ll take back your remaining SAFARI\n"
+ .string "BALLS.\p"
+ .string "Thank you for playing.\n"
+ .string "We hope to see you again.$"
+
+SafariZone_Southeast_Text_1C3B2D:: @ 81C3B2D
+ .string "Good luck!\p"
+ .string "If you need anything, don’t hesitate\n"
+ .string "to tell me, please!$"
+
+SafariZone_Southeast_Text_1C3B71:: @ 81C3B71
+ .string "Did you know?\p"
+ .string "If you put a {POKEBLOCK} in that square box,\n"
+ .string "POKéMON gather around.$"
+
+SafariZone_Southeast_Text_1C3BBD:: @ 81C3BBD
+ .string "I want to keep going deeper, but I\n"
+ .string "forgot to bring a BIKE.\p"
+ .string "Something tells me that rare POKéMON\n"
+ .string "live in the outlying areas.$"
+
diff --git a/data/maps/text/SafariZone_Southwest.s b/data/maps/text/SafariZone_Southwest.s
new file mode 100644
index 000000000..de7d9913b
--- /dev/null
+++ b/data/maps/text/SafariZone_Southwest.s
@@ -0,0 +1,6 @@
+SafariZone_Southwest_Text_1C3C39:: @ 81C3C39
+ .string "Sometimes, when I toss a {POKEBLOCK} at \n"
+ .string "POKéMON, it gets ignored.\p"
+ .string "Do POKéMON have likes and dislikes\n"
+ .string "about what they eat?$"
+
diff --git a/data/maps/text/SeafloorCavern_Room1.s b/data/maps/text/SeafloorCavern_Room1.s
new file mode 100644
index 000000000..7200026f6
--- /dev/null
+++ b/data/maps/text/SeafloorCavern_Room1.s
@@ -0,0 +1,23 @@
+SeafloorCavern_Room1_Text_1974BA:: @ 81974BA
+ .string "We don’t need a kid around!\n"
+ .string "Go on home already!$"
+
+SeafloorCavern_Room1_Text_1974EA:: @ 81974EA
+ .string "I want to go home...$"
+
+SeafloorCavern_Room1_Text_1974FF:: @ 81974FF
+ .string "I want to get a promotion so I can\n"
+ .string "boss around the GRUNTS...$"
+
+SeafloorCavern_Room1_Text_19753C:: @ 819753C
+ .string "That submarine... It’s tiny inside.\n"
+ .string "I’m sore all over!$"
+
+SeafloorCavern_Room1_Text_197573:: @ 8197573
+ .string "Losing makes me sore!$"
+
+SeafloorCavern_Room1_Text_197589:: @ 8197589
+ .string "That submarine we jacked, man, it’s\n"
+ .string "brutal as a ride.\l"
+ .string "It’s way too tight in there!$"
+
diff --git a/data/maps/text/SeafloorCavern_Room3.s b/data/maps/text/SeafloorCavern_Room3.s
new file mode 100644
index 000000000..f23b5ab28
--- /dev/null
+++ b/data/maps/text/SeafloorCavern_Room3.s
@@ -0,0 +1,25 @@
+SeafloorCavern_Room3_Text_1975DC:: @ 81975DC
+ .string "Ahahahaha!\p"
+ .string "How did you manage to get here without\n"
+ .string "a submarine?\l"
+ .string "What an impressive child!\p"
+ .string "But... It won’t do to have you\n"
+ .string "meddling about here.\p"
+ .string "And, I do want payback for what\n"
+ .string "happened at the WEATHER INSTITUTE...\p"
+ .string "I’m going to give you a little taste\n"
+ .string "of pain! Resign yourself to it!$"
+
+SeafloorCavern_Room3_Text_1976F3:: @ 81976F3
+ .string "Ahahahaha!\p"
+ .string "Ouch!$"
+
+SeafloorCavern_Room3_Text_197704:: @ 8197704
+ .string "Ahahahaha!\n"
+ .string "You’re so darn strong.\p"
+ .string "It’s terribly disappointing that you’re\n"
+ .string "not a TEAM {EVIL_TEAM} member.\p"
+ .string "You could have enjoyed the fabulous\n"
+ .string "world our BOSS has promised to one\l"
+ .string "of our own...$"
+
diff --git a/data/maps/text/SeafloorCavern_Room4.s b/data/maps/text/SeafloorCavern_Room4.s
new file mode 100644
index 000000000..2dd1ac5bd
--- /dev/null
+++ b/data/maps/text/SeafloorCavern_Room4.s
@@ -0,0 +1,11 @@
+SeafloorCavern_Room4_Text_1977B9:: @ 81977B9
+ .string "Who are you?\n"
+ .string "Where did you come in from?$"
+
+SeafloorCavern_Room4_Text_1977E2:: @ 81977E2
+ .string "Lost it...$"
+
+SeafloorCavern_Room4_Text_1977ED:: @ 81977ED
+ .string "I can’t find the way out!\p"
+ .string "I’m not afraid. Don’t get me wrong!$"
+
diff --git a/data/maps/text/SeafloorCavern_Room9.s b/data/maps/text/SeafloorCavern_Room9.s
new file mode 100644
index 000000000..9aaeb9358
--- /dev/null
+++ b/data/maps/text/SeafloorCavern_Room9.s
@@ -0,0 +1,100 @@
+SeafloorCavern_Room9_Text_1B4850:: @ 81B4850
+ .string "MAXIE: Hold it right there.$"
+
+SeafloorCavern_Room9_Text_1B486C:: @ 81B486C
+ .string "MAXIE: Fufufu...\n"
+ .string "So it was you, after all.$"
+
+SeafloorCavern_Room9_Text_1B4897:: @ 81B4897
+ .string "MAXIE: Behold!\p"
+ .string "See how beautiful it is, the sleeping\n"
+ .string "form of the ancient POKéMON GROUDON!\p"
+ .string "I have waited so long for this day to\n"
+ .string "come...$"
+
+SeafloorCavern_Room9_Text_1B491F:: @ 81B491F
+ .string "MAXIE: It surprises me, how you’ve\n"
+ .string "managed to chase me here.\p"
+ .string "But that’s all over now.\p"
+ .string "For the realization of my dream,\n"
+ .string "you must disappear now!$"
+
+SeafloorCavern_Room9_Text_1B49AE:: @ 81B49AE
+ .string "I...\n"
+ .string "I lost again?$"
+
+SeafloorCavern_Room9_Text_1B49C1:: @ 81B49C1
+ .string "MAXIE: Fufufu...\p"
+ .string "I commend you. I must recognize that\n"
+ .string "you are truly gifted.\p"
+ .string "But!\n"
+ .string "I have this in my possession!\p"
+ .string "With this BLUE ORB, I can make\n"
+ .string "GROUDON...$"
+
+SeafloorCavern_Room9_Text_1B4A5A:: @ 81B4A5A
+ .string "The BLUE ORB suddenly began shining\n"
+ .string "by itself!$"
+
+SeafloorCavern_Room9_Text_1B4A89:: @ 81B4A89
+ .string "MAXIE: What?!\p"
+ .string "I didn’t do anything.\n"
+ .string "Why did the BLUE ORB...\p"
+ .string "Where did GROUDON go?$"
+
+SeafloorCavern_Room9_Text_1B4ADB:: @ 81B4ADB
+ .string "MAXIE: Hm? It’s a message from our\n"
+ .string "members outside...$"
+
+SeafloorCavern_Room9_Text_1B4B11:: @ 81B4B11
+ .string "MAXIE: Yes, what is it?\p"
+ .string "Hm...\n"
+ .string "The sun is burning brightly?\p"
+ .string "Good... That should have happened.\n"
+ .string "That is why we awakened GROUDON,\l"
+ .string "to realize TEAM MAGMA’s vision of\l"
+ .string "expanding the world’s landmass.\p"
+ .string "What?!\p"
+ .string "It’s far hotter than we envisioned?\n"
+ .string "It’s so hot that it’s dangerous?\p"
+ .string "That can’t be...\n"
+ .string "That’s just not possible...\p"
+ .string "Hold your position and monitor the\n"
+ .string "situation!$"
+
+SeafloorCavern_Room9_Text_1B4C79:: @ 81B4C79
+ .string "MAXIE: There’s something wrong...\p"
+ .string "The BLUE ORB is supposed to awaken\n"
+ .string "and control GROUDON...\p"
+ .string "But... Why?\n"
+ .string "Why did GROUDON disappear?\p"
+ .string "Why?!$"
+
+SeafloorCavern_Room9_Text_1B4D02:: @ 81B4D02
+ .string "ARCHIE: What have you wrought?\p"
+ .string "MAXIE... You’ve finally awoken GROUDON,\n"
+ .string "haven’t you?\p"
+ .string "What will happen to the world if this\n"
+ .string "sunshine continues for all eternity?\p"
+ .string "The world’s seas will all dry up and\n"
+ .string "disappear...$"
+
+SeafloorCavern_Room9_Text_1B4DD3:: @ 81B4DD3
+ .string "MAXIE: What are you saying?\p"
+ .string "The BLUE ORB should let me control\n"
+ .string "GROUDON...\l"
+ .string "That can’t be possible...$"
+
+SeafloorCavern_Room9_Text_1B4E37:: @ 81B4E37
+ .string "ARCHIE: We don’t have the time to\n"
+ .string "argue about it here!\p"
+ .string "Get outside and see for yourself!\p"
+ .string "See if what you’ve wrought is the\n"
+ .string "world that you desired!$"
+
+SeafloorCavern_Room9_Text_1B4ECA:: @ 81B4ECA
+ .string "ARCHIE: {PLAYER}{KUN}, come on, you have\n"
+ .string "to get out of here, too!$"
+
+ .incbin "baserom.gba", 0x1b4f03, 0xe1
+
diff --git a/data/maps/text/SealedChamber_InnerRoom.s b/data/maps/text/SealedChamber_InnerRoom.s
new file mode 100644
index 000000000..c62da87ce
--- /dev/null
+++ b/data/maps/text/SealedChamber_InnerRoom.s
@@ -0,0 +1,4 @@
+SealedChamber_InnerRoom_Text_1A138B:: @ 81A138B
+ .string "It sounded as if a door opened\n"
+ .string "somewhere far away.$"
+
diff --git a/data/maps/text/SealedChamber_OuterRoom.s b/data/maps/text/SealedChamber_OuterRoom.s
new file mode 100644
index 000000000..fdfea3c66
--- /dev/null
+++ b/data/maps/text/SealedChamber_OuterRoom.s
@@ -0,0 +1,3 @@
+SealedChamber_OuterRoom_Text_1A13BE:: @ 81A13BE
+ .string "There is a big hole in the wall.$"
+
diff --git a/data/maps/text/SecretBase_RedCave1.s b/data/maps/text/SecretBase_RedCave1.s
new file mode 100644
index 000000000..1258599b8
--- /dev/null
+++ b/data/maps/text/SecretBase_RedCave1.s
@@ -0,0 +1,3 @@
+SecretBase_RedCave1_Text_198F89:: @ 8198F89
+ .string "Want to make your SECRET BASE here?$"
+
diff --git a/data/maps/text/ShoalCave_LowTideEntranceRoom.s b/data/maps/text/ShoalCave_LowTideEntranceRoom.s
new file mode 100644
index 000000000..bd40b25f2
--- /dev/null
+++ b/data/maps/text/ShoalCave_LowTideEntranceRoom.s
@@ -0,0 +1,40 @@
+ShoalCave_LowTideEntranceRoom_Text_1C6668:: @ 81C6668
+ .string "Are you planning on going deep in\n"
+ .string "there?\p"
+ .string "How about bringing me back some\n"
+ .string "SHOAL SALT and SHOAL SHELLS?\p"
+ .string "I can make you something good if\n"
+ .string "you bring me the ingredients.$"
+
+ShoalCave_LowTideEntranceRoom_Text_1C670D:: @ 81C670D
+ .string "If you bring me four each of the\n"
+ .string "SHOAL SALT and SHOAL SHELLS,\l"
+ .string "I can make you a SHELL BELL...\p"
+ .string "You can get those ingredients\n"
+ .string "every day.$"
+
+ShoalCave_LowTideEntranceRoom_Text_1C6793:: @ 81C6793
+ .string "Oh, hey! SHOAL SALT and SHOAL\n"
+ .string "SHELLS! And enough of them, too!\p"
+ .string "Would you like me to make you a\n"
+ .string "SHELL BELL with them?$"
+
+ShoalCave_LowTideEntranceRoom_Text_1C6808:: @ 81C6808
+ .string "All righty, then! I’ll make you a\n"
+ .string "SHELL BELL right away.\p"
+ .string "... ... ... ... ... ... ... ...\n"
+ .string "... ... ... ... ... ... ... ...\p"
+ .string "There! Done!$"
+
+ShoalCave_LowTideEntranceRoom_Text_1C688E:: @ 81C688E
+ .string "Have a POKéMON hold on to that.\n"
+ .string "It’ll love it, that’s for certain.\p"
+ .string "Why, the SHELL BELL’s chime...\n"
+ .string "It’s simply sublime!\p"
+ .string "You can get its ingredients every\n"
+ .string "day, so I can make you more.$"
+
+ShoalCave_LowTideEntranceRoom_Text_1C6944:: @ 81C6944
+ .string "Oh... Is that so...\n"
+ .string "I wanted to make a SHELL BELL...$"
+
diff --git a/data/maps/text/ShoalCave_LowTideInnerRoom.s b/data/maps/text/ShoalCave_LowTideInnerRoom.s
new file mode 100644
index 000000000..b79e0e805
--- /dev/null
+++ b/data/maps/text/ShoalCave_LowTideInnerRoom.s
@@ -0,0 +1 @@
+ShoalCave_LowTideInnerRoom_Text_1C6979:: @ 81C6979
diff --git a/data/maps/text/ShoalCave_LowTideLowerRoom.s b/data/maps/text/ShoalCave_LowTideLowerRoom.s
new file mode 100644
index 000000000..b59cb0378
--- /dev/null
+++ b/data/maps/text/ShoalCave_LowTideLowerRoom.s
@@ -0,0 +1,10 @@
+ShoalCave_LowTideLowerRoom_Text_198200:: @ 8198200
+ .string "The penetrating cold around these\n"
+ .string "parts is an impediment to training.\p"
+ .string "But with focus, one can overcome!\p"
+ .string "With this FOCUS BAND, buckle down and\n"
+ .string "withstand the cold!$"
+
+ShoalCave_LowTideLowerRoom_Text_1982A2:: @ 81982A2
+ .string "Everything starts with focus!$"
+
diff --git a/data/maps/text/ShoalCave_LowTideStairsRoom.s b/data/maps/text/ShoalCave_LowTideStairsRoom.s
new file mode 100644
index 000000000..6bad21fed
--- /dev/null
+++ b/data/maps/text/ShoalCave_LowTideStairsRoom.s
@@ -0,0 +1,4 @@
+ShoalCave_LowTideStairsRoom_Text_1C6979:: @ 81C6979
+ .string "There was some SHOAL SALT here.\n"
+ .string "But, there’s nothing here now.$"
+
diff --git a/data/maps/text/SingleBattleColosseum.s b/data/maps/text/SingleBattleColosseum.s
new file mode 100644
index 000000000..1743b5841
--- /dev/null
+++ b/data/maps/text/SingleBattleColosseum.s
@@ -0,0 +1,4 @@
+SingleBattleColosseum_Text_1A4D7E:: @ 81A4D7E
+ .string "Please take your seat and start\n"
+ .string "your battle.$"
+
diff --git a/data/maps/text/SlateportCity.s b/data/maps/text/SlateportCity.s
new file mode 100644
index 000000000..bcad42f2d
--- /dev/null
+++ b/data/maps/text/SlateportCity.s
@@ -0,0 +1,322 @@
+SlateportCity_Text_164642:: @ 8164642
+ .string "I’m the ENERGY GURU!\n"
+ .string "I’ll go for it and sell you what you need!$"
+
+SlateportCity_Text_164682:: @ 8164682
+ .string "Oh?\n"
+ .string "Your {STR_VAR_1}...$"
+
+SlateportCity_Text_164691:: @ 8164691
+ .string "Went for it stupendously!\p"
+ .string "As its reward, please give it this\n"
+ .string "EFFORT RIBBON.$"
+
+SlateportCity_Text_1646DD:: @ 81646DD
+ .string "{PLAYER} received the EFFORT RIBBON.$"
+
+SlateportCity_Text_1646FC:: @ 81646FC
+ .string "{PLAYER} put the EFFORT RIBBON\n"
+ .string "on {STR_VAR_1}.$"
+
+SlateportCity_Text_16471C:: @ 816471C
+ .string "You have to go for it a little harder.\p"
+ .string "If you do, I’ll give your POKéMON\n"
+ .string "something nice.$"
+
+SlateportCity_Text_164775:: @ 8164775
+ .string "Oh! Your {STR_VAR_1}, that EFFORT\n"
+ .string "RIBBON looks good on it!$"
+
+SlateportCity_Text_1647A7:: @ 81647A7
+ .string "The light of the lighthouse reaches\n"
+ .string "dozens of miles away.\p"
+ .string "I wonder if it doesn’t startle POKéMON\n"
+ .string "in the sea.$"
+
+SlateportCity_Text_164814:: @ 8164814
+ .string "Ooh, look at this!\p"
+ .string "The seaweed you can get around these\n"
+ .string "parts is fresh and full of life.\p"
+ .string "Why, it looks like it can even rear up\n"
+ .string "and attack!$"
+
+SlateportCity_Text_1648A0:: @ 81648A0
+ .string "Where the water is clean, the fruits\n"
+ .string "of bountiful harvest gather.\p"
+ .string "And where people gather, a market\n"
+ .string "soon starts.\p"
+ .string "That is how a town is born and grows.$"
+
+SlateportCity_Text_164937:: @ 8164937
+ .string "Shopping where you can breathe the\n"
+ .string "scent of the ocean...\p"
+ .string "SLATEPORT is such a wonderful place!$"
+
+SlateportCity_Text_164995:: @ 8164995
+ .string "If you put DOLLS or CUSHIONS on the\n"
+ .string "floor, they’ll get dirty.\p"
+ .string "I’m going to buy some BRICKS so my\n"
+ .string "DOLLS and CUSHIONS won’t get dirty\l"
+ .string "when I leave them out.$"
+
+SlateportCity_Text_164A30:: @ 8164A30
+ .string "Yeah! I’ve waited so long for this!\n"
+ .string "POKéMON CONTESTS!\l"
+ .string "I’m going to enter!\p"
+ .string "But before I do, I have to catch some\n"
+ .string "POKéMON!$"
+
+SlateportCity_Text_164AA9:: @ 8164AA9
+ .string "Whew... I’m just bushed...\p"
+ .string "I hiked over from MAUVILLE CITY.\n"
+ .string "But, boy, this city’s huge.\p"
+ .string "If I’d known this, I would’ve ridden\n"
+ .string "my BIKE here.$"
+
+SlateportCity_Text_164B34:: @ 8164B34
+ .string "STERN, the fellow who built the\n"
+ .string "MUSEUM, also happens to be the leader\l"
+ .string "of an undersea exploration team.\p"
+ .string "So, everyone calls him CAPT. STERN.$"
+
+SlateportCity_Text_164BBF:: @ 8164BBF
+ .string "What is that over there?\n"
+ .string "That long line...$"
+
+SlateportCity_Text_164BEA:: @ 8164BEA
+ .string "When I was a child, I visited the\n"
+ .string "MUSEUM often.\p"
+ .string "I used to dream about the mysteries of\n"
+ .string "the sea after seeing the exhibits.$"
+
+SlateportCity_Text_164C64:: @ 8164C64
+ .string "Hey, there! Quit pushing!\n"
+ .string "This is the line, can’t you see?$"
+
+SlateportCity_Text_164C9F:: @ 8164C9F
+ .string "TEAM {EVIL_TEAM} has a policy of\n"
+ .string "assembling and dispersing at the\l"
+ .string "operation site.$"
+
+SlateportCity_Text_164CE8:: @ 8164CE8
+ .string "Our BOSS is brilliant.\p"
+ .string "What would he want to do with a\n"
+ .string "MUSEUM now?$"
+
+SlateportCity_Text_164D2B:: @ 8164D2B
+ .string "What’s the new scheme, I wonder?\p"
+ .string "Our BOSS is scary when he’s mad, so\n"
+ .string "I’d better not screw things up...$"
+
+SlateportCity_Text_164D92:: @ 8164D92
+ .string "If there’s something we need in the\n"
+ .string "MUSEUM, we should take it all!$"
+
+SlateportCity_Text_164DD5:: @ 8164DD5
+ .string "Hey, you there!\n"
+ .string "Don’t butt in!$"
+
+SlateportCity_Text_164DF4:: @ 8164DF4
+ .string "A long line, huh?\p"
+ .string "It reminds me of the times I lined up to\n"
+ .string "buy smash-hit games...$"
+
+SlateportCity_Text_164E46:: @ 8164E46
+ .string "Why are we even lining up and paying?\n"
+ .string "We should just march in!$"
+
+SlateportCity_Text_164E85:: @ 8164E85
+ .string "The sea is just so vast...\p"
+ .string "Could the sea have been made by the\n"
+ .string "tears shed by POKéMON?$"
+
+SlateportCity_Text_164EDB:: @ 8164EDB
+ .string "Do you know what they do with old\n"
+ .string "ships that become too creaky to sail?\p"
+ .string "They sink them in the sea so they\n"
+ .string "become habitats for POKéMON.$"
+
+SlateportCity_Text_164F62:: @ 8164F62
+ .string "Whenever I visit here, I get carried\n"
+ .string "away and buy too much.$"
+
+SlateportCity_Text_164F9E:: @ 8164F9E
+ .string "If you want to change your POKéMON’s\n"
+ .string "nickname, you’ll have to get the NAME\l"
+ .string "RATER to help you.$"
+
+SlateportCity_Text_164FFC:: @ 8164FFC
+ .string "Any POKéMON you get in a trade, you\n"
+ .string "can’t change its nickname.\p"
+ .string "The original TRAINER’s love for that\n"
+ .string "POKéMON is in the nickname.$"
+
+SlateportCity_Text_16507C:: @ 816507C
+ .string "A POKéMON CONTEST HALL opened in\n"
+ .string "SLATEPORT recently.\p"
+ .string "I plan on entering after I improve the\n"
+ .string "condition of my POKéMON.$"
+
+SlateportCity_Text_1650F1:: @ 81650F1
+ .string "Do you know about the machine\n"
+ .string "BERRY BLENDER?$"
+
+SlateportCity_Text_16511E:: @ 816511E
+ .string "People have to work together to get it\n"
+ .string "to spin faster.\p"
+ .string "The faster you can make it spin, the\n"
+ .string "better {POKEBLOCK}S you can get, I’ve heard.$"
+
+SlateportCity_Text_1651A1:: @ 81651A1
+ .string "It’s used for making a kind of candy\n"
+ .string "called a {POKEBLOCK}.\p"
+ .string "If you give a good {POKEBLOCK} to a POKéMON,\n"
+ .string "its condition will improve by a lot.$"
+
+SlateportCity_Text_165222:: @ 8165222
+ .string "I was hoping that it was a famous star\n"
+ .string "so I could get an autograph.\p"
+ .string "But who’s that being interviewed?\n"
+ .string "Isn’t that CAPT. STERN?$"
+
+SlateportCity_Text_1652A0:: @ 81652A0
+ .string "That lady interviewer is so cool and\n"
+ .string "pretty.\p"
+ .string "When I grow up, I’m going to be an\n"
+ .string "international journalist!$"
+
+SlateportCity_Text_16530A:: @ 816530A
+ .string "CAPT. STERN says they discovered\n"
+ .string "something at the bottom of the sea.\p"
+ .string "I wonder what it is?\n"
+ .string "What could it be?$"
+
+SlateportCity_Text_165376:: @ 8165376
+ .string "What’s going on here?\p"
+ .string "Did the good CAPTAIN come back with\n"
+ .string "a big fish from the ocean floor?$"
+
+SlateportCity_Text_1653D1:: @ 81653D1
+ .string "Hey! Are you watching?\n"
+ .string "Am I on TV?$"
+
+SlateportCity_Text_1653F4:: @ 81653F4
+ .string "A TV interview! Here!\n"
+ .string "The CAPTAIN’s a celebrity!$"
+
+SlateportCity_Text_165425:: @ 8165425
+ .string "TY: Okay, CAPT. STERN, a big smile\n"
+ .string "for the camera!$"
+
+SlateportCity_Text_165458:: @ 8165458
+ .string "GABBY: I see, I see. You’ve had a most\n"
+ .string "invaluable experience...$"
+
+SlateportCity_Text_165498:: @ 8165498
+ .string "CAPT. STERN: Yes, indeed. We intend to\n"
+ .string "move ahead with our exploration.$"
+
+SlateportCity_Text_1654E0:: @ 81654E0
+ .string "GABBY: That’s wonderful, CAPT. STERN!\n"
+ .string "Thank you for taking the time from\l"
+ .string "your busy schedule to talk to us.\p"
+ .string "We hope we can interview you again\n"
+ .string "with news of more discoveries!$"
+
+SlateportCity_Text_16558D:: @ 816558D
+ .string "CAPT. STERN: Whew...\p"
+ .string "That was my first time to be filmed for\n"
+ .string "TV. That was nerve wracking.$"
+
+SlateportCity_Text_1655E7:: @ 81655E7
+ .string "Oh! {PLAYER}{KUN}!\n"
+ .string "You’re looking great!\p"
+ .string "We made a huge discovery on our last\n"
+ .string "seafloor exploration.\p"
+ .string "We found an underwater cavern on\n"
+ .string "ROUTE 128.\p"
+ .string "We think it’s the habitat of a POKéMON\n"
+ .string "that’s said to have been long extinct.$"
+
+SlateportCity_Text_1656BC:: @ 81656BC
+ .string "Fufufu...\n"
+ .string "CAPT. STERN, I presume.\p"
+ .string "We of TEAM {EVIL_TEAM} will assume\n"
+ .string "control of your submarine!\p"
+ .string "Your objections are meaningless!\n"
+ .string "We expect your total cooperation!\p"
+ .string "Fufufu...\n"
+ .string "Just watch and learn what TEAM\l"
+ .string "{EVIL_TEAM} has planned!$"
+
+SlateportCity_Text_16578F:: @ 816578F
+ .string "CAPT. STERN: What was that all about?\p"
+ .string "It sounded like someone using a\n"
+ .string "megaphone...\p"
+ .string "Where did it come from?$"
+
+SlateportCity_Text_1657FA:: @ 81657FA
+ .string "It’s from the HARBOR!\p"
+ .string "The submarine!\n"
+ .string "They’re trying to take it!$"
+
+SlateportCity_Text_16583A:: @ 816583A
+ .string "{PLAYER}{KUN}!\n"
+ .string "Please, come with me!$"
+
+SlateportCity_Text_165856:: @ 8165856
+ .string "POKéMON CONTESTS\n"
+ .string "HYPER RANK REGISTRATION\l"
+ .string "“Let it burn! POKéMON TRAINERS!”$"
+
+SlateportCity_Text_1658A0:: @ 81658A0
+ .string "STERN’S SHIPYARD\p"
+ .string "“Wanted: A sailor capable of sailing\n"
+ .string "in all currents.”$"
+
+SlateportCity_Text_1658E8:: @ 81658E8
+ .string "STERN’S SHIPYARD\p"
+ .string "“The ferry S.S. TIDAL nears\n"
+ .string "completion for serving the ports of\l"
+ .string "SLATEPORT and LILYCOVE.”$"
+
+SlateportCity_Text_165952:: @ 8165952
+ .string "STERN’S SHIPYARD\p"
+ .string "“Boarding of the SLATEPORT-LILYCOVE\n"
+ .string "ferry S.S. TIDAL is handled at the\l"
+ .string "HARBOR.”$"
+
+SlateportCity_Text_1659B3:: @ 81659B3
+ .string "POKéMON FAN CLUB\n"
+ .string "“Calling all fans of POKéMON!”$"
+
+SlateportCity_Text_1659E3:: @ 81659E3
+ .string "“The endless sea sustains\n"
+ .string "all life.”\p"
+ .string "OCEANIC MUSEUM$"
+
+SlateportCity_Text_165A17:: @ 8165A17
+ .string "SLATEPORT CITY\p"
+ .string "“The port where people and POKéMON\n"
+ .string "cross paths.”$"
+
+SlateportCity_Text_165A57:: @ 8165A57
+ .string "SLATEPORT MARKET\n"
+ .string "“Unique items found nowhere else!”$"
+
+SlateportCity_Text_165A8B:: @ 8165A8B
+ .string "SLATEPORT HARBOR\p"
+ .string "“The ferry S.S. TIDAL is under\n"
+ .string "construction in the SHIPYARD.\p"
+ .string "“Service is scheduled to begin\n"
+ .string "shortly.”$"
+
+SlateportCity_Text_165B02:: @ 8165B02
+ .string "SLATEPORT HARBOR\p"
+ .string "“Enjoy a delightful cruise on the\n"
+ .string "ferry S.S. TIDAL.”$"
+
+SlateportCity_Text_165B48:: @ 8165B48
+ .string "NAME RATER’S HOUSE\n"
+ .string "“POKéMON nicknames rated.”$"
+
diff --git a/data/maps/text/SlateportCity_ContestHall.s b/data/maps/text/SlateportCity_ContestHall.s
new file mode 100644
index 000000000..edc29d872
--- /dev/null
+++ b/data/maps/text/SlateportCity_ContestHall.s
@@ -0,0 +1,106 @@
+SlateportCity_ContestHall_Text_17CB71:: @ 817CB71
+ .string "Want a tasty little bit of advice\n"
+ .string "for CONTESTS?\p"
+ .string "Using a certain move after another\n"
+ .string "certain kind of move sometimes gets\l"
+ .string "you extra attention.\p"
+ .string "If you know what you’re doing, you\n"
+ .string "can score big in appeal.\p"
+ .string "Of course, your opponents might try\n"
+ .string "disrupting your POKéMON’s showing.$"
+
+SlateportCity_ContestHall_Text_17CC80:: @ 817CC80
+ .string "My papa, he’s a CONTEST JUDGE.\p"
+ .string "I wonder what I should be when I\n"
+ .string "grow up, a JUDGE or a GYM LEADER?$"
+
+SlateportCity_ContestHall_Text_17CCE2:: @ 817CCE2
+ .string "Hey, man, I’m like majorly cheesed,\n"
+ .string "you know. Like, you know, I just\l"
+ .string "wanted to know why my POKéMON\l"
+ .string "never won, you know, like, hey?\p"
+ .string "So, like, I gave the JUDGE my two\n"
+ .string "cents, you know, they’re free.\p"
+ .string "And he wouldn’t hear me out, like, hey!\n"
+ .string "So, like, total bummer, man!\p"
+ .string "Hey, like, you! Zip it, you know?\n"
+ .string "Just, you know, take this!$"
+
+SlateportCity_ContestHall_Text_17CE28:: @ 817CE28
+ .string "That’s, like, TM41, you know?\n"
+ .string "Hey, it’s TORMENT, you hearing me?\p"
+ .string "Like, it won’t let the other guy\n"
+ .string "use the same move twice in a row, see?\p"
+ .string "Hey, now, you listen here, like,\n"
+ .string "I’m not laying a torment on you!$"
+
+SlateportCity_ContestHall_Text_17CEF3:: @ 817CEF3
+ .string "MC: Oh, my, my!\n"
+ .string "Now isn’t that a dandy of a POKéMON?\p"
+ .string "Please! Do step right up and take\n"
+ .string "part in our splendid CONTESTS!\p"
+ .string "You’ll do well! I’m sure of it!\n"
+ .string "My eyes have never failed me!$"
+
+SlateportCity_ContestHall_Text_17CFA7:: @ 817CFA7
+ .string "JUDGE: Well, hello there!\n"
+ .string "I see that you’re a TRAINER!\p"
+ .string "Then, it just wouldn’t do for you\n"
+ .string "to miss a POKéMON CONTEST!\p"
+ .string "Get a CONTEST PASS in VERDANTURF\n"
+ .string "CITY and enter anytime!$"
+
+SlateportCity_ContestHall_Text_17D054:: @ 817D054
+ .string "It’s appeal time!\n"
+ .string "What should I lead with?$"
+
+SlateportCity_ContestHall_Text_17D07F:: @ 817D07F
+ .string "They didn’t pay much attention to\n"
+ .string "my POKéMON’s appeal...\p"
+ .string "Humph, that JUDGE, he doesn’t know\n"
+ .string "a good thing when he sees it.$"
+
+SlateportCity_ContestHall_Text_17D0F9:: @ 817D0F9
+ .string "Oh, hi! You must be a serious fan to get\n"
+ .string "this close to the action.\p"
+ .string "I’ll reward your enthusiasm with this\n"
+ .string "sage advice.\p"
+ .string "If a move goes over really well,\n"
+ .string "the audience will get excited.\p"
+ .string "The POKéMON that makes its appeal\n"
+ .string "right when everyone’s excited...\p"
+ .string "Well, you’d think something good has\n"
+ .string "to happen!$"
+
+SlateportCity_ContestHall_Text_17D222:: @ 817D222
+ .string "I can’t do this! I’m more freaked out\n"
+ .string "than my POKéMON.\p"
+ .string "I’m shivering and my heart is racing!$"
+
+SlateportCity_ContestHall_Text_17D27F:: @ 817D27F
+ .string "A battle and a CONTEST aren’t the\n"
+ .string "same, but they are alike, too.\p"
+ .string "You need to work hard and believe\n"
+ .string "in the POKéMON you’ve raised.$"
+
+SlateportCity_ContestHall_Text_17D300:: @ 817D300
+ .string "That POKéMON looks like it’s on top\n"
+ .string "of its game, huh?\p"
+ .string "A POKéMON that does good in the\n"
+ .string "secondary judging seems to be more\l"
+ .string "relaxed when it’s doing appeals.$"
+
+SlateportCity_ContestHall_Text_17D39A:: @ 817D39A
+ .string "Will you look at that sorry sight?\p"
+ .string "Heh, my POKéMON’s absolutely better\n"
+ .string "than that lot!$"
+
+SlateportCity_ContestHall_Text_17D3F0:: @ 817D3F0
+ .string "Don’t you get the urge to move with\n"
+ .string "POKéMON if they’re putting on an\l"
+ .string "energetic appeal?$"
+
+SlateportCity_ContestHall_Text_17D447:: @ 817D447
+ .string "POKéMON CONTESTS\n"
+ .string "HYPER RANK STAGE!$"
+
diff --git a/data/maps/text/SlateportCity_ContestLobby.s b/data/maps/text/SlateportCity_ContestLobby.s
new file mode 100644
index 000000000..a4f42c1b0
--- /dev/null
+++ b/data/maps/text/SlateportCity_ContestLobby.s
@@ -0,0 +1,28 @@
+SlateportCity_ContestLobby_Text_17C937:: @ 817C937
+ .string "I want to raise a POKéMON that’s\n"
+ .string "the ultimate in “great” for both\l"
+ .string "battles and CONTESTS.\p"
+ .string "It’s vexing, trying to figure out\n"
+ .string "which moves I should make it learn.$"
+
+SlateportCity_ContestLobby_Text_17C9D5:: @ 817C9D5
+ .string "Do any of your friends have any\n"
+ .string "BERRIES?\p"
+ .string "You can use that BERRY BLENDER and\n"
+ .string "make {POKEBLOCK}S with your friends!\p"
+ .string "You should try it - it’s a lot of fun!$"
+
+SlateportCity_ContestLobby_Text_17CA67:: @ 817CA67
+ .string "I have two, so you can have one!$"
+
+SlateportCity_ContestLobby_Text_17CA88:: @ 817CA88
+ .string "Make {POKEBLOCK}S and put them in there.\p"
+ .string "When you make a {POKEBLOCK}, everyone\n"
+ .string "has to put in a different BERRY.$"
+
+SlateportCity_ContestLobby_Text_17CAEC:: @ 817CAEC
+ .string "If you win a CONTEST, they put up a\n"
+ .string "poster of your POKéMON on the wall.\p"
+ .string "It will have a portrait of your\n"
+ .string "POKéMON and both your names.$"
+
diff --git a/data/maps/text/SlateportCity_Harbor.s b/data/maps/text/SlateportCity_Harbor.s
new file mode 100644
index 000000000..06c82f94b
--- /dev/null
+++ b/data/maps/text/SlateportCity_Harbor.s
@@ -0,0 +1,149 @@
+SlateportCity_Harbor_Text_17FA0A:: @ 817FA0A
+ .string "I beg your pardon?\n"
+ .string "You’re looking for a ship?\p"
+ .string "I’m sorry, the ferry service isn’t\n"
+ .string "available at present...$"
+
+SlateportCity_Harbor_Text_17FA73:: @ 817FA73
+ .string "Hello, are you here for the ferry?\n"
+ .string "May I see your TICKET?$"
+
+SlateportCity_Harbor_Text_17FAAD:: @ 817FAAD
+ .string "{PLAYER} doesn’t have the TICKET...\p"
+ .string "I’m terribly sorry.\p"
+ .string "You must have a TICKET to board\n"
+ .string "the ferry.$"
+
+SlateportCity_Harbor_Text_17FB0A:: @ 817FB0A
+ .string "{PLAYER} flashed the TICKET.\p"
+ .string "Perfect! That’s all you need!\p"
+ .string "And where would you like to go?$"
+
+SlateportCity_Harbor_Text_17FB5F:: @ 817FB5F
+ .string "Please sail with us another time!$"
+
+SlateportCity_Harbor_Text_17FB81:: @ 817FB81
+ .string "LILYCOVE CITY it is, then!$"
+
+SlateportCity_Harbor_Text_17FB9C:: @ 817FB9C
+ .string "BATTLE TOWER it is, then!$"
+
+SlateportCity_Harbor_Text_17FBB6:: @ 817FBB6
+ .string "Please board the ferry and wait for\n"
+ .string "departure.$"
+
+SlateportCity_Harbor_Text_17FBE5:: @ 817FBE5
+ .string "Then, where would you like to go?$"
+
+SlateportCity_Harbor_Text_17FC07:: @ 817FC07
+ .string "A journey to the bottom of the sea...\n"
+ .string "I wonder what it’d be like?\p"
+ .string "I’d love to go deep underwater like\n"
+ .string "that some day.$"
+
+SlateportCity_Harbor_Text_17FC7C:: @ 817FC7C
+ .string "I wanted to go with CAPT. STERN on\n"
+ .string "the ocean floor exploration.\p"
+ .string "But the sub’s too small for me.\p"
+ .string "If I squeezed in, there wouldn’t be\n"
+ .string "any room for the CAPTAIN...$"
+
+SlateportCity_Harbor_Text_17FD1C:: @ 817FD1C
+ .string "CAPT. STERN: Those thugs...\p"
+ .string "They’re the same lot who tried to rob\n"
+ .string "the DEVON GOODS at the MUSEUM.$"
+
+SlateportCity_Harbor_Text_17FD7D:: @ 817FD7D
+ .string "{EVIL_LEADER}: Fwahahaha...\n"
+ .string "I commiserate with you!\p"
+ .string "All that effort you spent following\n"
+ .string "me here all the way from MT. PYRE.\p"
+ .string "But now...\n"
+ .string "No one can stop us! No one!\p"
+ .string "Or, will you follow us back to our\n"
+ .string "HIDEOUT in LILYCOVE CITY?\p"
+ .string "Fwahahahaha...$"
+
+SlateportCity_Harbor_Text_17FE60:: @ 817FE60
+ .string "CAPT. STERN: Why...\p"
+ .string "Why would TEAM {EVIL_TEAM} steal my\n"
+ .string "SUBMARINE EXPLORER 1?\p"
+ .string "They can’t be after the slumbering\n"
+ .string "POKéMON at the bottom of the sea...\p"
+ .string "But even if I were to chase them,\n"
+ .string "I don’t stand a chance against them...$"
+
+SlateportCity_Harbor_Text_17FF35:: @ 817FF35
+ .string "CAPT. STERN: Oh, {PLAYER}{KUN}...\p"
+ .string "Okay... So TEAM {EVIL_TEAM} left before you\n"
+ .string "could stop them...\p"
+ .string "Oh, no, don’t blame yourself.\n"
+ .string "You’re not responsible for this.\p"
+ .string "Trying to catch a submarine...\n"
+ .string "It’s impossible for most people.\p"
+ .string "You would need a POKéMON that knows\n"
+ .string "how to DIVE...\p"
+ .string "Perhaps if you went out to\n"
+ .string "MOSSDEEP CITY...\p"
+ .string "A lot of divers live out there, so\n"
+ .string "someone might teach you...$"
+
+SlateportCity_Harbor_Text_1800A0:: @ 81800A0
+ .string "CAPT. STERN: Trying to catch a\n"
+ .string "submarine... It’s impossible.\p"
+ .string "You would need a POKéMON that knows\n"
+ .string "how to DIVE...\p"
+ .string "Perhaps if you went out to\n"
+ .string "MOSSDEEP CITY...\p"
+ .string "A lot of divers live out there, so\n"
+ .string "someone might teach you...$"
+
+SlateportCity_Harbor_Text_18017B:: @ 818017B
+ .string "CAPT. STERN: Oh, yes.\n"
+ .string "MR. BRINEY came to our SHIPYARD.\p"
+ .string "It won’t be long now before we finish\n"
+ .string "making the ferry!$"
+
+SlateportCity_Harbor_Text_1801EA:: @ 81801EA
+ .string "CAPT. STERN: {PLAYER}{KUN}!\p"
+ .string "We finally finished making the ferry\n"
+ .string "S.S. TIDAL!\p"
+ .string "We couldn’t have done it without your\n"
+ .string "friend MR. BRINEY.\p"
+ .string "Please go for a short cruise on it!$"
+
+SlateportCity_Harbor_Text_18028B:: @ 818028B
+ .string "CAPT. STERN: Oh?\n"
+ .string "{PLAYER}{KUN}, that item you have...\p"
+ .string "That’s a SCANNER! That would sure\n"
+ .string "help us on our explorations.\p"
+ .string "{PLAYER}{KUN}, would you trade your\n"
+ .string "SCANNER for something?\p"
+ .string "Like say a DEEPSEATOOTH or a\n"
+ .string "DEEPSEASCALE that I have?$"
+
+SlateportCity_Harbor_Text_180360:: @ 8180360
+ .string "CAPT. STERN: Are you certain?\n"
+ .string "It’s useless to you, {PLAYER}{KUN}...\p"
+ .string "Well, okay, then. If you want to trade\n"
+ .string "your SCANNER, let me know.$"
+
+SlateportCity_Harbor_Text_1803DD:: @ 81803DD
+ .string "CAPT. STERN: So you’ll trade it for\n"
+ .string "my DEEPSEATOOTH?$"
+
+SlateportCity_Harbor_Text_180412:: @ 8180412
+ .string "CAPT. STERN: So you’ll trade it for\n"
+ .string "my DEEPSEASCALE?$"
+
+SlateportCity_Harbor_Text_180447:: @ 8180447
+ .string "CAPT. STERN: Which one do you want?$"
+
+SlateportCity_Harbor_Text_18046B:: @ 818046B
+ .string "{PLAYER} handed the SCANNER to\n"
+ .string "CAPT. STERN.$"
+
+SlateportCity_Harbor_Text_180491:: @ 8180491
+ .string "CAPT. STERN: Thanks, {PLAYER}{KUN}!\n"
+ .string "This will help our research a lot!$"
+
diff --git a/data/maps/text/SlateportCity_House1.s b/data/maps/text/SlateportCity_House1.s
new file mode 100644
index 000000000..dad8b0c5b
--- /dev/null
+++ b/data/maps/text/SlateportCity_House1.s
@@ -0,0 +1,48 @@
+SlateportCity_House1_Text_17D46A:: @ 817D46A
+ .string "Hi, hi! I’m the NAME RATER!\n"
+ .string "I’m the fortune-teller of names!\p"
+ .string "I shall be pleased to rate your\n"
+ .string "POKéMON’s nickname.$"
+
+SlateportCity_House1_Text_17D4DB:: @ 817D4DB
+ .string "Which POKéMON’s nickname should\n"
+ .string "I divine?$"
+
+SlateportCity_House1_Text_17D505:: @ 817D505
+ .string "Hmmm... {STR_VAR_1}, is it? That is\n"
+ .string "quite a fine name you bestowed.\p"
+ .string "But! What say you, if I were to\n"
+ .string "suggest a slightly better name?$"
+
+SlateportCity_House1_Text_17D580:: @ 817D580
+ .string "Ah, good. Then, what shall the new\n"
+ .string "nickname be?$"
+
+SlateportCity_House1_Text_17D5B0:: @ 817D5B0
+ .string "Done! From now on, this POKéMON\n"
+ .string "shall be known as {STR_VAR_1}!\p"
+ .string "It is a better name than before!\n"
+ .string "How fortunate for you!$"
+
+SlateportCity_House1_Text_17D61E:: @ 817D61E
+ .string "I see.\n"
+ .string "Do come visit again.$"
+
+SlateportCity_House1_Text_17D63A:: @ 817D63A
+ .string "Done! From now on, this POKéMON\n"
+ .string "shall be known as {STR_VAR_1}!\p"
+ .string "It looks no different from before,\n"
+ .string "and yet, this is vastly superior!\l"
+ .string "How fortunate for you!$"
+
+SlateportCity_House1_Text_17D6CC:: @ 817D6CC
+ .string "Hmmm... {STR_VAR_1} it is!\p"
+ .string "This is a magnificent nickname!\n"
+ .string "It is impeccably beyond reproach!\p"
+ .string "You’ll do well to cherish your\n"
+ .string "{STR_VAR_1} now and beyond.$"
+
+SlateportCity_House1_Text_17D752:: @ 817D752
+ .string "Now, now.\n"
+ .string "That is merely an EGG!$"
+
diff --git a/data/maps/text/SlateportCity_House2.s b/data/maps/text/SlateportCity_House2.s
new file mode 100644
index 000000000..8ae21ce9a
--- /dev/null
+++ b/data/maps/text/SlateportCity_House2.s
@@ -0,0 +1,17 @@
+SlateportCity_House2_Text_1804CF:: @ 81804CF
+ .string "My POKéMON has a HASTY nature.\p"
+ .string "It has higher SPEED compared to my\n"
+ .string "other POKéMON.\p"
+ .string "Maybe their nature has something to\n"
+ .string "do with the stat gains of POKéMON.$"
+
+SlateportCity_House2_Text_180567:: @ 8180567
+ .string "You need a CONTEST PASS to enter a\n"
+ .string "CONTEST.\p"
+ .string "It’s easy to get. They give it to\n"
+ .string "anyone who has POKéMON.$"
+
+SlateportCity_House2_Text_1805CD:: @ 81805CD
+ .string "Oh, a CONTEST PASS!\n"
+ .string "You’re going to be a contestant?$"
+
diff --git a/data/maps/text/SlateportCity_Mart.s b/data/maps/text/SlateportCity_Mart.s
new file mode 100644
index 000000000..336b32d9b
--- /dev/null
+++ b/data/maps/text/SlateportCity_Mart.s
@@ -0,0 +1,12 @@
+SlateportCity_Mart_Text_180730:: @ 8180730
+ .string "The MARKET does have some interesting\n"
+ .string "merchandise.\p"
+ .string "But there are some items you can only\n"
+ .string "get at a POKé MART.$"
+
+SlateportCity_Mart_Text_18079D:: @ 818079D
+ .string "A GREAT BALL is better than a POKé BALL\n"
+ .string "at catching POKéMON.\p"
+ .string "With this, I should be able to get that\n"
+ .string "elusive POKéMON...$"
+
diff --git a/data/maps/text/SlateportCity_OceanicMuseum_1F.s b/data/maps/text/SlateportCity_OceanicMuseum_1F.s
new file mode 100644
index 000000000..038d9f6b8
--- /dev/null
+++ b/data/maps/text/SlateportCity_OceanicMuseum_1F.s
@@ -0,0 +1,157 @@
+SlateportCity_OceanicMuseum_1F_Text_17E18D:: @ 817E18D
+ .string "Welcome to the OCEANIC MUSEUM.\p"
+ .string "The entrance fee is ¥50.\n"
+ .string "Would you like to enter?$"
+
+SlateportCity_OceanicMuseum_1F_Text_17E1DE:: @ 817E1DE
+ .string "Please enjoy yourself.$"
+
+SlateportCity_OceanicMuseum_1F_Text_17E1F5:: @ 817E1F5
+ .string "Oh? I’m sorry, but you don’t seem to\n"
+ .string "have enough money.$"
+
+SlateportCity_OceanicMuseum_1F_Text_17E22D:: @ 817E22D
+ .string "Oh? You’re with that group that\n"
+ .string "went in earlier?\p"
+ .string "You’re the only one who’s late.\n"
+ .string "You’d better go catch up to them!$"
+
+ .incbin "baserom.gba", 0x17e2a0, 0x1b
+
+SlateportCity_OceanicMuseum_1F_Text_17E2BB:: @ 817E2BB
+ .string "We, TEAM {EVIL_TEAM}, exist for the good\n"
+ .string "of all!$"
+
+SlateportCity_OceanicMuseum_1F_Text_17E2E3:: @ 817E2E3
+ .string "We were told to assemble here, so\n"
+ .string "we did, but...\p"
+ .string "Our BOSS, the lynchpin, isn’t here.$"
+
+SlateportCity_OceanicMuseum_1F_Text_17E338:: @ 817E338
+ .string "If I ripped off the stuff here,\n"
+ .string "would it make me rich?$"
+
+SlateportCity_OceanicMuseum_1F_Text_17E36F:: @ 817E36F
+ .string "What I learn here, I can put to use on\n"
+ .string "nefarious deeds...$"
+
+SlateportCity_OceanicMuseum_1F_Text_17E3A9:: @ 817E3A9
+ .string "If our goons didn’t bungle things\n"
+ .string "in RUSTBORO, we wouldn’t be here!$"
+
+SlateportCity_OceanicMuseum_1F_Text_17E3ED:: @ 817E3ED
+ .string "I didn’t have ¥50, so it took a long\n"
+ .string "time getting by the receptionist.$"
+
+SlateportCity_OceanicMuseum_1F_Text_17E434:: @ 817E434
+ .string "I want to learn about the sea and\n"
+ .string "use that knowledge for battling.$"
+
+SlateportCity_OceanicMuseum_1F_Text_17E477:: @ 817E477
+ .string "I get all giddy and gooey when I\n"
+ .string "see the sea!\p"
+ .string "For me, CAPT. STERN is the number\n"
+ .string "one role model!$"
+
+SlateportCity_OceanicMuseum_1F_Text_17E4D7:: @ 817E4D7
+ .string "The sea is vast without end, and\n"
+ .string "infinitely deep...\p"
+ .string "There must be many POKéMON that we\n"
+ .string "don’t know about.$"
+
+SlateportCity_OceanicMuseum_1F_Text_17E540:: @ 817E540
+ .string "I want a sea POKéMON.\p"
+ .string "I think it would feel cool and nice\n"
+ .string "to hug.$"
+
+SlateportCity_OceanicMuseum_1F_Text_17E582:: @ 817E582
+ .string "Aiyeeeh!\n"
+ .string "What are you doing here?\p"
+ .string "Me? I’m the TEAM {EVIL_TEAM} member you\n"
+ .string "thumped before, remember?\p"
+ .string "Here, take this!\n"
+ .string "You have to forgive me!$"
+
+SlateportCity_OceanicMuseum_1F_Text_17E606:: @ 817E606
+ .string "Aww, darn it!\n"
+ .string "You so screwed up our plans!\p"
+ .string "I was going to rip off something\n"
+ .string "to make up for it, but...\p"
+ .string "Just you wait!\n"
+ .string "You’ll get yours one day!$"
+
+SlateportCity_OceanicMuseum_1F_Text_17E695:: @ 817E695
+ .string "Awww, come on!\n"
+ .string "You have to take this and let me go!$"
+
+SlateportCity_OceanicMuseum_1F_Text_17E6C9:: @ 817E6C9
+ .string "A blue fluid is spiraling inside a\n"
+ .string "glass vessel.\p"
+ .string "“This is an experiment to create a\n"
+ .string "WHIRLPOOL artificially using wind.”$"
+
+SlateportCity_OceanicMuseum_1F_Text_17E741:: @ 817E741
+ .string "A red ball is bobbing up and down\n"
+ .string "inside a glass vessel.\p"
+ .string "“This is an experiment simulating a\n"
+ .string "WATERFALL using the ball’s buoyancy.”$"
+
+SlateportCity_OceanicMuseum_1F_Text_17E7C4:: @ 817E7C4
+ .string "It’s a sample of soil from the ocean\n"
+ .string "floor.\p"
+ .string "“Over many years, the remains of\n"
+ .string "life-forms settle at the bottom of\l"
+ .string "the sea making sedimentary layers.\p"
+ .string "“By analyzing these layers, the\n"
+ .string "ancient past is revealed.”$"
+
+SlateportCity_OceanicMuseum_1F_Text_17E892:: @ 817E892
+ .string "It’s a sample of beach sand.\p"
+ .string "“Stones from mountains are washed\n"
+ .string "down by rivers where they are\l"
+ .string "chipped and ground down.\p"
+ .string "“They are reduced to grains and end\n"
+ .string "up as sand on beaches.”$"
+
+SlateportCity_OceanicMuseum_1F_Text_17E944:: @ 817E944
+ .string "“OCEANIC MINI FACT 1\n"
+ .string "Why is seawater blue?\p"
+ .string "“Light is composed of many colors.\p"
+ .string "“When light passes through water,\n"
+ .string "most kinds of light lose color.\p"
+ .string "“However, blue light retains its\n"
+ .string "color, making the sea appear blue.”$"
+
+SlateportCity_OceanicMuseum_1F_Text_17EA19:: @ 817EA19
+ .string "“OCEANIC MINI FACT 2\n"
+ .string "Why is the sea salty?\p"
+ .string "“Seawater contains dissolved salt in\n"
+ .string "the form of sodium and chlorine ions.\p"
+ .string "“These ions leach out of rocks and are\n"
+ .string "carried out to sea by rain.\p"
+ .string "“The concentration of dissolved salt\n"
+ .string "makes the sea salty.”$"
+
+SlateportCity_OceanicMuseum_1F_Text_17EB0D:: @ 817EB0D
+ .string "“OCEANIC MINI FACT 3\n"
+ .string "Which is bigger? The sea or land?\p"
+ .string "“The sea covers about 70% of the\n"
+ .string "planet, and the rest is land.\p"
+ .string "“The sea is therefore more than twice\n"
+ .string "the size of land.”$"
+
+SlateportCity_OceanicMuseum_1F_Text_17EBBC:: @ 817EBBC
+ .string "It’s a fossil with wavy ridges on it.\p"
+ .string "“Soil on the ocean floor gets scoured\n"
+ .string "by the tide.\p"
+ .string "“The flowing seawater marks the soil\n"
+ .string "with small ridges and valleys.\p"
+ .string "“If this soil becomes fossilized, it is\n"
+ .string "called a ripple mark.”$"
+
+SlateportCity_OceanicMuseum_1F_Text_17EC98:: @ 817EC98
+ .string "A strange machine is rotating under\n"
+ .string "a glass dome.\p"
+ .string "Maybe it’s for measuring the depth\n"
+ .string "of something...$"
+
diff --git a/data/maps/text/SlateportCity_OceanicMuseum_2F.s b/data/maps/text/SlateportCity_OceanicMuseum_2F.s
new file mode 100644
index 000000000..fb762e07e
--- /dev/null
+++ b/data/maps/text/SlateportCity_OceanicMuseum_2F.s
@@ -0,0 +1,158 @@
+SlateportCity_OceanicMuseum_2F_Text_17ECFD:: @ 817ECFD
+ .string "Yes? If you’re looking for STERN,\n"
+ .string "that would be me.\p"
+ .string "Ah! That must be the part I\n"
+ .string "ordered from MR. STONE of DEVON.\p"
+ .string "Thank you! That’s great!\n"
+ .string "We can prepare for our expedition now.$"
+
+SlateportCity_OceanicMuseum_2F_Text_17EDAE:: @ 817EDAE
+ .string "Hehehe, hold it!\n"
+ .string "We’ll take those parts!$"
+
+SlateportCity_OceanicMuseum_2F_Text_17EDD7:: @ 817EDD7
+ .string "CAPT. STERN: Wh-what?\n"
+ .string "Who are you people?$"
+
+SlateportCity_OceanicMuseum_2F_Text_17EE01:: @ 817EE01
+ .string "We’re TEAM {EVIL_TEAM}!\p"
+ .string "Our BOSS wants those parts!\n"
+ .string "Shut your yap and fork them over!$"
+
+SlateportCity_OceanicMuseum_2F_Text_17EE4E:: @ 817EE4E
+ .string "Awaaaah!\n"
+ .string "A kid beat me!$"
+
+SlateportCity_OceanicMuseum_2F_Text_17EE66:: @ 817EE66
+ .string "Oh, man, what a disaster...\n"
+ .string "The BOSS is going to be furious...$"
+
+SlateportCity_OceanicMuseum_2F_Text_17EEA5:: @ 817EEA5
+ .string "Humph, sniveling wimp!\n"
+ .string "Let me take care of this!$"
+
+SlateportCity_OceanicMuseum_2F_Text_17EED6:: @ 817EED6
+ .string "What?!\n"
+ .string "I lost, too!$"
+
+SlateportCity_OceanicMuseum_2F_Text_17EEEA:: @ 817EEEA
+ .string "Now what? If we don’t get the parts,\n"
+ .string "we’re in for it!\p"
+ .string "Arrgh, I didn’t count on being meddled\n"
+ .string "with by some meddling kid!$"
+
+SlateportCity_OceanicMuseum_2F_Text_17EF62:: @ 817EF62
+ .string "I came to see what was taking so\n"
+ .string "long to snatch some parts, and you\l"
+ .string "simps are held up by a mere child?$"
+
+ .incbin "baserom.gba", 0x17efc9, 0x1b5
+
+SlateportCity_OceanicMuseum_2F_Text_17F17E:: @ 817F17E
+ .string "I am TEAM MAGMA’s MAXIE.\p"
+ .string "Why on earth do you feel compelled\n"
+ .string "to mess up TEAM MAGMA’s plans?\p"
+ .string "POKéMON, people, all life exists on land...\p"
+ .string "That’s why TEAM MAGMA is trying to\n"
+ .string "expand the world’s landmass.\p"
+ .string "Don’t you agree? What we are doing\n"
+ .string "is a magnificent undertaking.\p"
+ .string "Well, no matter...\n"
+ .string "You’re young.\p"
+ .string "Your inability to understand our\n"
+ .string "noble cause can’t be helped...\p"
+ .string "But, if you were to impede us ever\n"
+ .string "again, you’ll see no mercy from us!\p"
+ .string "Keep that firmly in mind!\n"
+ .string "Farewell!$"
+
+SlateportCity_OceanicMuseum_2F_Text_17F352:: @ 817F352
+ .string "CAPT. STERN: You’re...\n"
+ .string "Ah, okay, you’re {PLAYER}{KUN}...\p"
+ .string "Anyway, that was a tense situation!\n"
+ .string "Thank you for saving us!\p"
+ .string "Oh, yes, I almost forgot that you\n"
+ .string "even brought the parts from DEVON!$"
+
+ .incbin "baserom.gba", 0x17f404, 0x2f
+
+SlateportCity_OceanicMuseum_2F_Text_17F433:: @ 817F433
+ .string "CAPT. STERN: Whoops!\n"
+ .string "There’s no time to lose!\p"
+ .string "We have to set out on our ocean floor\n"
+ .string "expedition really soon.\p"
+ .string "Thanks, and excuse me!$"
+
+SlateportCity_OceanicMuseum_2F_Text_17F4B6:: @ 817F4B6
+ .string "I saw a model of a ship here.\p"
+ .string "It reminded me of the ABANDONED SHIP\n"
+ .string "near DEWFORD TOWN...$"
+
+SlateportCity_OceanicMuseum_2F_Text_17F50E:: @ 817F50E
+ .string "Don’t you dare run around inside\n"
+ .string "the MUSEUM!$"
+
+SlateportCity_OceanicMuseum_2F_Text_17F53B:: @ 817F53B
+ .string "Wow, the submarine’s awesome!\n"
+ .string "I want to go for a ride!$"
+
+SlateportCity_OceanicMuseum_2F_Text_17F572:: @ 817F572
+ .string "“KANTO WATER QUALITY SAMPLE,” the\n"
+ .string "label says.\p"
+ .string "The sea is all connected, but the\n"
+ .string "water seems to differ by region.$"
+
+SlateportCity_OceanicMuseum_2F_Text_17F5E3:: @ 817F5E3
+ .string "“JOHTO WATER QUALITY SAMPLE,” the\n"
+ .string "label says.\p"
+ .string "Maybe the water’s saltiness differs\n"
+ .string "from one region to another...$"
+
+SlateportCity_OceanicMuseum_2F_Text_17F653:: @ 817F653
+ .string "A rubber ball is expanding and shrinking.\p"
+ .string "“In the sea, the weight of water itself\n"
+ .string "exerts pressure.\p"
+ .string "“In shallow water, the pressure is not\n"
+ .string "very heavy.\p"
+ .string "“However, in extremely deep water,\n"
+ .string "the pressure can reach even tens of\l"
+ .string "thousands of tons on a small area.”$"
+
+SlateportCity_OceanicMuseum_2F_Text_17F754:: @ 817F754
+ .string "“MODEL OF HOENN REGION”\p"
+ .string "It’s a miniature diorama of the\n"
+ .string "HOENN region.\p"
+ .string "Where is LITTLEROOT TOWN on this?$"
+
+SlateportCity_OceanicMuseum_2F_Text_17F7BC:: @ 817F7BC
+ .string "It’s a display on the flow of seawater.\p"
+ .string "“Near the bottom of the sea, water\n"
+ .string "flows due to differences in such\l"
+ .string "factors as temperature and salinity.”$"
+
+SlateportCity_OceanicMuseum_2F_Text_17F84E:: @ 817F84E
+ .string "It’s a display on the flow of\n"
+ .string "seawater.\p"
+ .string "“Toward the surface, seawater flows\n"
+ .string "as currents driven by the winds.”$"
+
+SlateportCity_OceanicMuseum_2F_Text_17F8BC:: @ 817F8BC
+ .string "“THE FERRY S.S. TIDAL\p"
+ .string "“A scale replica of the ship under\n"
+ .string "construction at STERN’S SHIPYARD.”$"
+
+SlateportCity_OceanicMuseum_2F_Text_17F918:: @ 817F918
+ .string "“SUBMARINE EXPLORER 1\p"
+ .string "“A replica of the high-performance\n"
+ .string "ocean floor exploration submarine.”$"
+
+SlateportCity_OceanicMuseum_2F_Text_17F975:: @ 817F975
+ .string "“SUBMERSIBLE POD\p"
+ .string "“A replica of a compact, unmanned\n"
+ .string "pod for seafloor exploration.”$"
+
+SlateportCity_OceanicMuseum_2F_Text_17F9C7:: @ 817F9C7
+ .string "“S.S. ANNE\p"
+ .string "“A replica of the luxury liner that\n"
+ .string "circles the globe.”$"
+
diff --git a/data/maps/text/SlateportCity_PokemonCenter_1F.s b/data/maps/text/SlateportCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..549cca714
--- /dev/null
+++ b/data/maps/text/SlateportCity_PokemonCenter_1F.s
@@ -0,0 +1,14 @@
+SlateportCity_PokemonCenter_1F_Text_180602:: @ 8180602
+ .string "Want a tip for battling?\p"
+ .string "I’d say it’s raising different kinds\n"
+ .string "of POKéMON in a balanced manner.\p"
+ .string "It’s no good to make just one\n"
+ .string "POKéMON strong.\p"
+ .string "If it has a type disadvantage, it\n"
+ .string "might not stand a chance.$"
+
+SlateportCity_PokemonCenter_1F_Text_1806CB:: @ 81806CB
+ .string "I trade POKéMON with my friends.\p"
+ .string "If a traded POKéMON is holding an\n"
+ .string "item, it makes me twice as happy!$"
+
diff --git a/data/maps/text/SlateportCity_PokemonFanClub.s b/data/maps/text/SlateportCity_PokemonFanClub.s
new file mode 100644
index 000000000..5bb7c1aeb
--- /dev/null
+++ b/data/maps/text/SlateportCity_PokemonFanClub.s
@@ -0,0 +1,132 @@
+SlateportCity_PokemonFanClub_Text_17D773:: @ 817D773
+ .string "Er-hem! I am the CHAIRMAN of the\n"
+ .string "POKéMON FAN CLUB!\p"
+ .string "Being the CHAIRMAN, I am naturally\n"
+ .string "the most important!\p"
+ .string "No one could best me when it comes\n"
+ .string "to raising POKéMON. No one!\p"
+ .string "In any CONTEST, my victory is a\n"
+ .string "foregone conclusion!\p"
+ .string "But, that would deprive others of\n"
+ .string "their enjoyment.\p"
+ .string "So, I now while away my time\n"
+ .string "examining the POKéMON of others.\p"
+ .string "It is marvelous to witness how\n"
+ .string "others have raised POKéMON.\p"
+ .string "The contented faces of properly\n"
+ .string "raised POKéMON...\p"
+ .string "The kind and loving gazes of their\n"
+ .string "TRAINERS...\p"
+ .string "My heart is overwhelmed - there is\n"
+ .string "so much happiness.\p"
+ .string "Oh, my! Excuse me! I seem to have\n"
+ .string "nattered on far too long!\p"
+ .string "Please, do allow me to examine your\n"
+ .string "POKéMON and see how it’s grown.$"
+
+SlateportCity_PokemonFanClub_Text_17DA14:: @ 817DA14
+ .string "How is your POKéMON growing?\n"
+ .string "Allow me to examine it.$"
+
+SlateportCity_PokemonFanClub_Text_17DA49:: @ 817DA49
+ .string "Hm, hm...\n"
+ .string "I see...$"
+
+SlateportCity_PokemonFanClub_Text_17DA5C:: @ 817DA5C
+ .string "Hmmm... It’s not bad, but it’s not\n"
+ .string "good, either...\p"
+ .string "You, the TRAINER, must put more\n"
+ .string "effort into raising this POKéMON!\p"
+ .string "For instance, may I suggest that\n"
+ .string "you give it more {POKEBLOCK}S?$"
+
+SlateportCity_PokemonFanClub_Text_17DB0B:: @ 817DB0B
+ .string "Oh, my...\p"
+ .string "Your POKéMON is growing quite well,\n"
+ .string "so you deserve a reward.\p"
+ .string "Unfortunately, you have no space for\n"
+ .string "this in your BAG.$"
+
+SlateportCity_PokemonFanClub_Text_17DB89:: @ 817DB89
+ .string "Your {STR_VAR_1}, it is growing in\n"
+ .string "a most impressive manner!\l"
+ .string "It is one fine specimen!\p"
+ .string "But! If you were to give it this,\n"
+ .string "it would grow even better! Indeed!$"
+
+SlateportCity_PokemonFanClub_Text_17DC1B:: @ 817DC1B
+ .string "Let a POKéMON hold that RED SCARF.\p"
+ .string "Everyone will recognize the coolness\n"
+ .string "of that POKéMON!$"
+
+SlateportCity_PokemonFanClub_Text_17DC74:: @ 817DC74
+ .string "Let a POKéMON hold that BLUE SCARF.\p"
+ .string "Its beauty will be accentuated much\n"
+ .string "more than now!$"
+
+SlateportCity_PokemonFanClub_Text_17DCCB:: @ 817DCCB
+ .string "Let a POKéMON hold that PINK SCARF.\p"
+ .string "It will draw out the cuteness of\n"
+ .string "the POKéMON some more!$"
+
+SlateportCity_PokemonFanClub_Text_17DD27:: @ 817DD27
+ .string "Let a POKéMON hold that GREEN SCARF.\p"
+ .string "That will enhance the\n"
+ .string "smartness of POKéMON!$"
+
+SlateportCity_PokemonFanClub_Text_17DD78:: @ 817DD78
+ .string "Let a POKéMON hold that YELLOW SCARF.\p"
+ .string "It will bolster your POKéMON’s\n"
+ .string "toughness so much more!$"
+
+SlateportCity_PokemonFanClub_Text_17DDD5:: @ 817DDD5
+ .string "I’m sorry, but I’ve nothing else to\n"
+ .string "give you! None at all!\p"
+ .string "After all, you’re blessed with the gift\n"
+ .string "of raising POKéMON without resorting\l"
+ .string "to any items!$"
+
+SlateportCity_PokemonFanClub_Text_17DE6B:: @ 817DE6B
+ .string "I love seeing POKéMON that love\n"
+ .string "their TRAINERS.\p"
+ .string "POKéMON are very sensitive to the\n"
+ .string "feelings of their TRAINERS.\p"
+ .string "If you treat your POKéMON with love\n"
+ .string "and care, they’ll love you back.\p"
+ .string "When your POKéMON grow to love you,\n"
+ .string "please come show me.$"
+
+SlateportCity_PokemonFanClub_Text_17DF57:: @ 817DF57
+ .string "Your POKéMON really adores you.\p"
+ .string "For you, a most compassionate\n"
+ .string "TRAINER, a gift from the FAN CLUB!$"
+
+SlateportCity_PokemonFanClub_Text_17DFB8:: @ 817DFB8
+ .string "POKéMON are very sensitive to the\n"
+ .string "feelings of their TRAINERS.\p"
+ .string "If you treat your POKéMON with love\n"
+ .string "and care, they’ll love you back.$"
+
+SlateportCity_PokemonFanClub_Text_17E03B:: @ 817E03B
+ .string "If you keep letting a POKéMON faint\n"
+ .string "in battle, it’ll come to resent it.\p"
+ .string "Soon, it will become less trusting\n"
+ .string "of the TRAINER.\p"
+ .string "In other words, it certainly won’t\n"
+ .string "like you very much.$"
+
+SlateportCity_PokemonFanClub_Text_17E0ED:: @ 817E0ED
+ .string "Do POKéMON enjoy having items used\n"
+ .string "on them?\p"
+ .string "Mine acted really happy when I gave\n"
+ .string "it some PROTEIN.$"
+
+SlateportCity_PokemonFanClub_Text_17E14E:: @ 817E14E
+ .string "SKITTY: Fffnyaaaah...$"
+
+SlateportCity_PokemonFanClub_Text_17E164:: @ 817E164
+ .string "ZIGZAGOON: Kyuuu...$"
+
+SlateportCity_PokemonFanClub_Text_17E178:: @ 817E178
+ .string "AZUMARILL: Marimari?$"
+
diff --git a/data/maps/text/SlateportCity_SternsShipyard_1F.s b/data/maps/text/SlateportCity_SternsShipyard_1F.s
new file mode 100644
index 000000000..0d16eed1b
--- /dev/null
+++ b/data/maps/text/SlateportCity_SternsShipyard_1F.s
@@ -0,0 +1,79 @@
+SlateportCity_SternsShipyard_1F_Text_17C14B:: @ 817C14B
+ .string "Umm... If this goes here, and that\n"
+ .string "goes over there...\p"
+ .string "Then where does this thing go?\n"
+ .string "And what about that doohickey?\p"
+ .string "Aaargh! I can’t make heads or tails\n"
+ .string "of this!$"
+
+SlateportCity_SternsShipyard_1F_Text_17C1EC:: @ 817C1EC
+ .string "Hm?\n"
+ .string "Hi, I’m DOCK.\p"
+ .string "CAPT. STERN commissioned me to\n"
+ .string "design a ferry.\p"
+ .string "Oh! That there...\n"
+ .string "Are they DEVON GOODS?\p"
+ .string "But, hmm...\n"
+ .string "This won’t do...\p"
+ .string "CAPT. STERN went off somewhere.\n"
+ .string "He said he had some work to do.\p"
+ .string "Could I get you to go find CAPT.\n"
+ .string "STERN and deliver that to him?$"
+
+SlateportCity_SternsShipyard_1F_Text_17C2F2:: @ 817C2F2
+ .string "DOCK: Where could CAPT. STERN have\n"
+ .string "gone off to?\p"
+ .string "Could you go find CAPT. STERN and\n"
+ .string "deliver that parcel to him?$"
+
+SlateportCity_SternsShipyard_1F_Text_17C360:: @ 817C360
+ .string "DOCK: Shipbuilding is an art.\p"
+ .string "A lot of things can’t be figured out\n"
+ .string "just by calculating.\p"
+ .string "I really could use advice from a veteran\n"
+ .string "who knows the seas...$"
+
+SlateportCity_SternsShipyard_1F_Text_17C3F7:: @ 817C3F7
+ .string "DOCK: Hi! MR. BRINEY’s joined us to\n"
+ .string "lend us his help.\p"
+ .string "Thanks to the veteran sailor, the\n"
+ .string "ferry is steadily coming together.$"
+
+SlateportCity_SternsShipyard_1F_Text_17C472:: @ 817C472
+ .string "DOCK: The ferry is finally ready!\p"
+ .string "The new S.S. TIDAL is truly a marvel\n"
+ .string "of technology!\p"
+ .string "But, I get the feeling that we can\n"
+ .string "make something even better.\p"
+ .string "You know, there’s never an end to\n"
+ .string "technology’s march.$"
+
+SlateportCity_SternsShipyard_1F_Text_17C53D:: @ 817C53D
+ .string "MR. BRINEY: Ah, {PLAYER}{KUN}!\n"
+ .string "It’s been too long!\p"
+ .string "Aye, since I met you, this old seadog’s\n"
+ .string "been feeling frisky!\p"
+ .string "So I’ve decided to help DOCK make a\n"
+ .string "ferry.\p"
+ .string "Aye, after all, a ferry would be able\n"
+ .string "to carry a lot of people.\p"
+ .string "But, you know, that DOCK is really\n"
+ .string "something special.\p"
+ .string "With his knack for technology and\n"
+ .string "my experience, I’m sure that we can\l"
+ .string "build one great ship, aye!$"
+
+ .incbin "baserom.gba", 0x17c6a6, 0x15
+
+SlateportCity_SternsShipyard_1F_Text_17C6BB:: @ 817C6BB
+ .string "The seasons, the weather, where the\n"
+ .string "moon sits in the sky...\p"
+ .string "These and other conditions make the\n"
+ .string "sea change its expression.\p"
+ .string "That’s right!\n"
+ .string "The sea is like a living thing!$"
+
+SlateportCity_SternsShipyard_1F_Text_17C764:: @ 817C764
+ .string "I get seasick real easily.\n"
+ .string "So I get to help out here instead.$"
+
diff --git a/data/maps/text/SlateportCity_SternsShipyard_2F.s b/data/maps/text/SlateportCity_SternsShipyard_2F.s
new file mode 100644
index 000000000..d97aa7cd0
--- /dev/null
+++ b/data/maps/text/SlateportCity_SternsShipyard_2F.s
@@ -0,0 +1,13 @@
+SlateportCity_SternsShipyard_2F_Text_17C7A2:: @ 817C7A2
+ .string "Designing a large ship is more like\n"
+ .string "making a big building than putting\l"
+ .string "together a transportation vehicle.$"
+
+SlateportCity_SternsShipyard_2F_Text_17C80C:: @ 817C80C
+ .string "Don’t you think it’s strange that a\n"
+ .string "ship made of heavy iron floats?\p"
+ .string "It floats because of a principle\n"
+ .string "called buoyancy.$"
+
+ .incbin "baserom.gba", 0x17c882, 0xb5
+
diff --git a/data/maps/text/SootopolisCity.s b/data/maps/text/SootopolisCity.s
new file mode 100644
index 000000000..e73748ad8
--- /dev/null
+++ b/data/maps/text/SootopolisCity.s
@@ -0,0 +1,158 @@
+SootopolisCity_Text_1696A4:: @ 81696A4
+ .string "Who might you be?\p"
+ .string "This is the CAVE OF ORIGIN.\p"
+ .string "The spirits of POKéMON, becalmed at\n"
+ .string "MT. PYRE, are said to be revived here.\p"
+ .string "Please leave.$"
+
+SootopolisCity_Text_16972B:: @ 816972B
+ .string "Diving in the sea. Climbing up and\n"
+ .string "down stairs all the time...\p"
+ .string "If you live in this town, you end up\n"
+ .string "getting physically fit.$"
+
+SootopolisCity_Text_1697A7:: @ 81697A7
+ .string "I... I’ve never been out of this city.\p"
+ .string "I wonder what the world is like on the\n"
+ .string "other side of this round sky?$"
+
+SootopolisCity_Text_169813:: @ 8169813
+ .string "Hm!\n"
+ .string "You’ve come all the way to SOOTOPOLIS?\l"
+ .string "You’re no ordinary tourist.\p"
+ .string "But I suppose that doesn’t make you an\n"
+ .string "extraordinary tourist, either.$"
+
+SootopolisCity_Text_1698A0:: @ 81698A0
+ .string "SOOTOPOLIS sprang up as a town in the\n"
+ .string "crater of a volcano.\p"
+ .string "If you look up at the sky, the lip of\n"
+ .string "the crater is also visible.\l"
+ .string "So, all you see is the sky in a circle.\p"
+ .string "But that’s what makes the sky above\n"
+ .string "SOOTOPOLIS the most beautiful.$"
+
+ .incbin "baserom.gba", 0x169988, 0x487
+
+SootopolisCity_Text_169E0F:: @ 8169E0F
+ .string "STEVEN: {PLAYER}{KUN}, you came, too?\n"
+ .string "Under this scorching sun, yet...\p"
+ .string "Oh, yes, can you hear out what my\n"
+ .string "friend has to say?$"
+
+SootopolisCity_Text_169E82:: @ 8169E82
+ .string "My name is WALLACE.\n"
+ .string "I’m this town’s GYM LEADER.\p"
+ .string "I’ve also been entrusted with the\n"
+ .string "protection of the CAVE OF ORIGIN.\p"
+ .string "This sunshine is caused by a power\n"
+ .string "emanating from the CAVE OF ORIGIN.$"
+
+SootopolisCity_Text_169F3C:: @ 8169F3C
+ .string "That... That is the RED ORB.\p"
+ .string "I see.\n"
+ .string "Follow me.$"
+
+SootopolisCity_Text_169F6B:: @ 8169F6B
+ .string "STEVEN: This sunlight...\p"
+ .string "People and POKéMON need sunlight\n"
+ .string "to live...\p"
+ .string "But why does this sunlight fill us\n"
+ .string "with so much dread?\p"
+ .string "The blazing sun over SOOTOPOLIS is\n"
+ .string "intensifying... Soon, all of HOENN\l"
+ .string "will be under its withering glare...\p"
+ .string "If that were to happen...$"
+
+SootopolisCity_Text_16A06C:: @ 816A06C
+ .string "WALLACE: The CAVE OF ORIGIN is ahead.\p"
+ .string "No one from SOOTOPOLIS is permitted\n"
+ .string "to enter the CAVE OF ORIGIN.\p"
+ .string "But you must go. \n"
+ .string "Together with your RED ORB.\p"
+ .string "You must go regardless of what awaits\n"
+ .string "you inside the CAVE...$"
+
+SootopolisCity_Text_16A13E:: @ 816A13E
+ .string "STEVEN: {PLAYER}{KUN}, I never expected you\n"
+ .string "to be holding the RED ORB.\p"
+ .string "You’ll be okay. With your POKéMON,\n"
+ .string "you’ll get things done no matter what.\p"
+ .string "I’m convinced of it!$"
+
+SootopolisCity_Text_16A1DB:: @ 816A1DB
+ .string "WALLACE: You must go together with\n"
+ .string "your RED ORB.\p"
+ .string "You must go regardless of what awaits\n"
+ .string "you inside the CAVE...$"
+
+SootopolisCity_Text_16A249:: @ 816A249
+ .string "STEVEN: You’ll be okay. With your\n"
+ .string "POKéMON, you’ll get things done\l"
+ .string "whatever happens.\p"
+ .string "I’m convinced of it!$"
+
+SootopolisCity_Text_16A2B2:: @ 816A2B2
+ .string "The legend told by the old man on\n"
+ .string "MT. PYRE... It wasn’t a made-up story.$"
+
+SootopolisCity_Text_16A2FB:: @ 816A2FB
+ .string "The natural balance of HOENN is going\n"
+ .string "through a wrenching shift...$"
+
+SootopolisCity_Text_16A33E:: @ 816A33E
+ .string "STEVEN: {PLAYER}{KUN}, we owe it all to you.\p"
+ .string "The sky above SOOTOPOLIS has returned\n"
+ .string "to normal. For that, WALLACE sends his\l"
+ .string "thanks, too.\p"
+ .string "And, that same WALLACE is waiting for\n"
+ .string "you inside.\p"
+ .string "He’s strong.\n"
+ .string "But the way you are now, you should be\l"
+ .string "on equal footing with him.\p"
+ .string "Give it your best shot.$"
+
+SootopolisCity_Text_16A455:: @ 816A455
+ .string "All life starts at the CAVE OF ORIGIN,\n"
+ .string "and it all ends on MT. PYRE...\p"
+ .string "Where do people and POKéMON come\n"
+ .string "from? Where are we bound?$"
+
+SootopolisCity_Text_16A4D6:: @ 816A4D6
+ .string "Let me guess, you’re going to challenge\n"
+ .string "WALLACE?\p"
+ .string "Oh, you are really?\n"
+ .string "You’re awfully brave!$"
+
+SootopolisCity_Text_16A531:: @ 816A531
+ .string "Let me guess, you’ve beaten WALLACE!\n"
+ .string "Oh, you did, really?\p"
+ .string "Maybe I’ll become your fan!$"
+
+SootopolisCity_Text_16A587:: @ 816A587
+ .string "Hm!\n"
+ .string "You’ve come all the way to SOOTOPOLIS?\l"
+ .string "You’re no ordinary tourist.\p"
+ .string "But I suppose that doesn’t make you an\n"
+ .string "extraordinary tourist, either.$"
+
+SootopolisCity_Text_16A614:: @ 816A614
+ .string "A circle of a night sky framed by the\n"
+ .string "crater of a volcano...\p"
+ .string "And in that ring, stars flicker and\n"
+ .string "blink as if they were alive...\l"
+ .string "It’s my favorite scenery.$"
+
+SootopolisCity_Text_16A6AE:: @ 816A6AE
+ .string "Hunh? Where is my house?$"
+
+SootopolisCity_Text_16A6C7:: @ 816A6C7
+ .string "SOOTOPOLIS CITY POKéMON GYM\n"
+ .string "LEADER: WALLACE\p"
+ .string "“Artist, and lover of WATER.”$"
+
+SootopolisCity_Text_16A711:: @ 816A711
+ .string "SOOTOPOLIS CITY\p"
+ .string "“The mystical city where history\n"
+ .string "slumbers.”$"
+
diff --git a/data/maps/text/SootopolisCity_Gym_1F.s b/data/maps/text/SootopolisCity_Gym_1F.s
new file mode 100644
index 000000000..c48dce048
--- /dev/null
+++ b/data/maps/text/SootopolisCity_Gym_1F.s
@@ -0,0 +1,19 @@
+SootopolisCity_Gym_1F_Text_18E8A5:: @ 818E8A5
+ .string "Yo! How’s it going, CHAMPION-\n"
+ .string "bound {PLAYER}?\p"
+ .string "SOOTOPOLIS’s GYM LEADER WALLACE is\n"
+ .string "a master of WATER-type POKéMON.\p"
+ .string "And, to get to WALLACE, an icy floor\n"
+ .string "will hamper your progress...\p"
+ .string "Listen, I’m sorry, but that’s all the\n"
+ .string "advice that I have for you.\p"
+ .string "The rest of the way, you have to\n"
+ .string "go for it yourself!$"
+
+SootopolisCity_Gym_1F_Text_18E9C9:: @ 818E9C9
+ .string "Yow! You’ve beaten even WALLACE, who\n"
+ .string "was supposedly the best in all HOENN!\p"
+ .string "Okay! Check out your TRAINER’s CARD.\p"
+ .string "If you’ve gotten all the BADGES, you’re\n"
+ .string "set for the POKéMON LEAGUE challenge!$"
+
diff --git a/data/maps/text/SootopolisCity_Gym_B1F.s b/data/maps/text/SootopolisCity_Gym_B1F.s
new file mode 100644
index 000000000..35cc6e96c
--- /dev/null
+++ b/data/maps/text/SootopolisCity_Gym_B1F.s
@@ -0,0 +1,104 @@
+SootopolisCity_Gym_B1F_Text_18EA87:: @ 818EA87
+ .string "I’ll show you the sublime techniques\n"
+ .string "I learned from our LEADER WALLACE!$"
+
+SootopolisCity_Gym_B1F_Text_18EACF:: @ 818EACF
+ .string "Please forgive me, WALLACE...$"
+
+SootopolisCity_Gym_B1F_Text_18EAED:: @ 818EAED
+ .string "Watch what happens if you crack all\n"
+ .string "the floor tiles.$"
+
+SootopolisCity_Gym_B1F_Text_18EB22:: @ 818EB22
+ .string "You came all the way here, but you won’t\n"
+ .string "get to see WALLACE.\p"
+ .string "Not if you lose to me, you won’t!$"
+
+SootopolisCity_Gym_B1F_Text_18EB81:: @ 818EB81
+ .string "You’re strong!\n"
+ .string "I was fooled by your cute looks!$"
+
+SootopolisCity_Gym_B1F_Text_18EBB1:: @ 818EBB1
+ .string "You might be good enough to avoid\n"
+ .string "being wiped out in one hit by WALLACE.$"
+
+SootopolisCity_Gym_B1F_Text_18EBFA:: @ 818EBFA
+ .string "The sight of WALLACE conducting a\n"
+ .string "battle...\p"
+ .string "The very beauty of it compelled me to\n"
+ .string "become a TRAINER.$"
+
+SootopolisCity_Gym_B1F_Text_18EC5E:: @ 818EC5E
+ .string "You battled with more beauty than\n"
+ .string "I could muster...$"
+
+SootopolisCity_Gym_B1F_Text_18EC92:: @ 818EC92
+ .string "The grace you bring to battle is\n"
+ .string "fabulous.\p"
+ .string "Oh... I’m so fortunate to have found\n"
+ .string "POKéMON.$"
+
+SootopolisCity_Gym_B1F_Text_18ECEB:: @ 818ECEB
+ .string "I should teach you how harsh battles\n"
+ .string "can be.$"
+
+SootopolisCity_Gym_B1F_Text_18ED18:: @ 818ED18
+ .string "Oh.\n"
+ .string "You’re strong.$"
+
+SootopolisCity_Gym_B1F_Text_18ED2B:: @ 818ED2B
+ .string "I’ll tell you something good.\p"
+ .string "If you want to reach WALLACE, you\n"
+ .string "need to walk on each floor tile once.$"
+
+SootopolisCity_Gym_B1F_Text_18ED91:: @ 818ED91
+ .string "The POKéMON GYM of the highest level\n"
+ .string "in the HOENN region...\p"
+ .string "That’s the SOOTOPOLIS GYM.$"
+
+SootopolisCity_Gym_B1F_Text_18EDE8:: @ 818EDE8
+ .string "What a high level you are!$"
+
+SootopolisCity_Gym_B1F_Text_18EE03:: @ 818EE03
+ .string "Rather than being satisfied by being\n"
+ .string "in a strong GYM, I imagine training in\l"
+ .string "other places will make you stronger.\l"
+ .string "But above all, it looks more fun.$"
+
+SootopolisCity_Gym_B1F_Text_18EE96:: @ 818EE96
+ .string "I train my POKéMON together with\n"
+ .string "WALLACE.\p"
+ .string "Don’t think I’m a pushover.$"
+
+SootopolisCity_Gym_B1F_Text_18EEDC:: @ 818EEDC
+ .string "I was bowled right over...$"
+
+SootopolisCity_Gym_B1F_Text_18EEF7:: @ 818EEF7
+ .string "I think you have potential.\n"
+ .string "Why don’t you stay and train with us?$"
+
+SootopolisCity_Gym_B1F_Text_18EF39:: @ 818EF39
+ .string "A graceful glide across the ice while\n"
+ .string "crossing no lines...\p"
+ .string "A TRAINER putting on that performance\n"
+ .string "would be elegantly beautiful!$"
+
+SootopolisCity_Gym_B1F_Text_18EFB8:: @ 818EFB8
+ .string "Well, excuse me?!$"
+
+SootopolisCity_Gym_B1F_Text_18EFCA:: @ 818EFCA
+ .string "This is really obvious, but how strong\n"
+ .string "you are as a TRAINER has nothing to do\l"
+ .string "with how young or old you are.$"
+
+SootopolisCity_Gym_B1F_Text_18F037:: @ 818F037
+ .string "When I’m with my POKéMON, the time\n"
+ .string "flies by before you can say, “Oops!”$"
+
+SootopolisCity_Gym_B1F_Text_18F07F:: @ 818F07F
+ .string "Oops!$"
+
+SootopolisCity_Gym_B1F_Text_18F085:: @ 818F085
+ .string "I wish I can forget about lost causes\n"
+ .string "before I can manage an “Oops!”$"
+
diff --git a/data/maps/text/SootopolisCity_House1.s b/data/maps/text/SootopolisCity_House1.s
new file mode 100644
index 000000000..57ae71945
--- /dev/null
+++ b/data/maps/text/SootopolisCity_House1.s
@@ -0,0 +1,13 @@
+SootopolisCity_House1_Text_18F991:: @ 818F991
+ .string "For thirty years I’ve remained in\n"
+ .string "SOOTOPOLIS honing my skills.\p"
+ .string "I developed a shattering TM.\n"
+ .string "I bequeath it to you!$"
+
+SootopolisCity_House1_Text_18FA03:: @ 818FA03
+ .string "TM31 contains BRICK BREAK! It’s a move\n"
+ .string "so horrible that I can’t describe it.$"
+
+SootopolisCity_House1_Text_18FA50:: @ 818FA50
+ .string "KECLEON: Puu puhyaah.$"
+
diff --git a/data/maps/text/SootopolisCity_House2.s b/data/maps/text/SootopolisCity_House2.s
new file mode 100644
index 000000000..42ed0a803
--- /dev/null
+++ b/data/maps/text/SootopolisCity_House2.s
@@ -0,0 +1,14 @@
+SootopolisCity_House2_Text_18FA66:: @ 818FA66
+ .string "MT. PYRE...\p"
+ .string "At its peak are two orbs placed side\n"
+ .string "by side. Did you know?$"
+
+SootopolisCity_House2_Text_18FAAE:: @ 818FAAE
+ .string "Yes, two orbs side by side...\p"
+ .string "The sight of them together...\n"
+ .string "It is somehow soothing...$"
+
+SootopolisCity_House2_Text_18FB04:: @ 818FB04
+ .string "Is that so?\n"
+ .string "Perhaps you ought to visit and see...$"
+
diff --git a/data/maps/text/SootopolisCity_House3.s b/data/maps/text/SootopolisCity_House3.s
new file mode 100644
index 000000000..4bc270f16
--- /dev/null
+++ b/data/maps/text/SootopolisCity_House3.s
@@ -0,0 +1,21 @@
+SootopolisCity_House3_Text_18FB36:: @ 818FB36
+ .string "You’re a POKéMON TRAINER, aren’t you?\p"
+ .string "SOOTOPOLIS’s GYM LEADER WALLACE has\n"
+ .string "many fans.\l"
+ .string "Do you have any?$"
+
+SootopolisCity_House3_Text_18FB9C:: @ 818FB9C
+ .string "Oh, then you must be pretty strong.$"
+
+SootopolisCity_House3_Text_18FBC0:: @ 818FBC0
+ .string "Oh, dear...\n"
+ .string "That’s a little lonesome.\p"
+ .string "Try working a little harder to get a\n"
+ .string "fan following.$"
+
+SootopolisCity_House3_Text_18FC1A:: @ 818FC1A
+ .string "Dedicated fans come over from even\n"
+ .string "KANTO and JOHTO.\p"
+ .string "It was really wild when I went to the\n"
+ .string "TRAINER FAN CLUB in LILYCOVE.$"
+
diff --git a/data/maps/text/SootopolisCity_House4.s b/data/maps/text/SootopolisCity_House4.s
new file mode 100644
index 000000000..5d49f5cf7
--- /dev/null
+++ b/data/maps/text/SootopolisCity_House4.s
@@ -0,0 +1,18 @@
+SootopolisCity_House4_Text_18FC92:: @ 818FC92
+ .string "Listen up, and I’ll tell you something\n"
+ .string "good.\p"
+ .string "There’s supposed to be an ancient\n"
+ .string "ruin in the sea around here.\p"
+ .string "There could be treasures just waiting\n"
+ .string "to be discovered down there.$"
+
+SootopolisCity_House4_Text_18FD41:: @ 818FD41
+ .string "Ancient treasures...\p"
+ .string "It would be nice if they existed, but\n"
+ .string "even if they didn’t, it would be so\l"
+ .string "beautiful to take an underwater\l"
+ .string "stroll with my POKéMON.$"
+
+SootopolisCity_House4_Text_18FDD8:: @ 818FDD8
+ .string "AZUMARILL: Marurii.$"
+
diff --git a/data/maps/text/SootopolisCity_House5.s b/data/maps/text/SootopolisCity_House5.s
new file mode 100644
index 000000000..9fca78e0f
--- /dev/null
+++ b/data/maps/text/SootopolisCity_House5.s
@@ -0,0 +1,9 @@
+SootopolisCity_House5_Text_18FDEC:: @ 818FDEC
+ .string "There appears to be some connection\n"
+ .string "between SOOTOPOLIS and MT. PYRE.\p"
+ .string "My friends and I did some research on\n"
+ .string "it at the lab where I used to work.$"
+
+SootopolisCity_House5_Text_18FE7B:: @ 818FE7B
+ .string "My big brother used to study the sea.$"
+
diff --git a/data/maps/text/SootopolisCity_House6.s b/data/maps/text/SootopolisCity_House6.s
new file mode 100644
index 000000000..895719f84
--- /dev/null
+++ b/data/maps/text/SootopolisCity_House6.s
@@ -0,0 +1,20 @@
+SootopolisCity_House6_Text_18FEA1:: @ 818FEA1
+ .string "Hello! You’re our first guest in a\n"
+ .string "good while.\p"
+ .string "You’ve brightened up my day, so I’ll\n"
+ .string "give you a big WAILMER DOLL.$"
+
+SootopolisCity_House6_Text_18FF12:: @ 818FF12
+ .string "Take good care of it!$"
+
+SootopolisCity_House6_Text_18FF28:: @ 818FF28
+ .string "Oh, you want it, but not right now?\n"
+ .string "Okay, then I’ll hold it for you.$"
+
+SootopolisCity_House6_Text_18FF6D:: @ 818FF6D
+ .string "Are you sure?\n"
+ .string "You don’t want this DOLL?$"
+
+SootopolisCity_House6_Text_18FF95:: @ 818FF95
+ .string "I love plush DOLLS!$"
+
diff --git a/data/maps/text/SootopolisCity_House7.s b/data/maps/text/SootopolisCity_House7.s
new file mode 100644
index 000000000..027ea91e5
--- /dev/null
+++ b/data/maps/text/SootopolisCity_House7.s
@@ -0,0 +1,15 @@
+SootopolisCity_House7_Text_18FFA9:: @ 818FFA9
+ .string "An underwater volcano erupted and\n"
+ .string "forced itself up from the depths.\p"
+ .string "Its crater emerged from the sea and\n"
+ .string "became filled with rainwater.\p"
+ .string "That’s how SOOTOPOLIS CITY came into\n"
+ .string "being.$"
+
+SootopolisCity_House7_Text_19005B:: @ 819005B
+ .string "The cave that links SOOTOPOLIS and\n"
+ .string "the outside world...\p"
+ .string "It seems as if the cave was made to\n"
+ .string "keep something from getting out.\p"
+ .string "Or am I just imagining things?$"
+
diff --git a/data/maps/text/SootopolisCity_House8.s b/data/maps/text/SootopolisCity_House8.s
new file mode 100644
index 000000000..4f526dc48
--- /dev/null
+++ b/data/maps/text/SootopolisCity_House8.s
@@ -0,0 +1,90 @@
+SootopolisCity_House8_Text_1900F7:: @ 81900F7
+ .string "Do you know the POKéMON SHROOMISH?\n"
+ .string "It’s hardly ever seen in SOOTOPOLIS.\p"
+ .string "Anyway, I love big SHROOMISH.\n"
+ .string "The bigger the better.\p"
+ .string "But my younger brother, he says that\n"
+ .string "BARBOACH is bigger.\p"
+ .string "That’s silly. SHROOMISH has to be\n"
+ .string "bigger than that!\p"
+ .string "Huh? Do you have a SHROOMISH with you?\n"
+ .string "P-p-please, show me!$"
+
+SootopolisCity_House8_Text_19021D:: @ 819021D
+ .string "{STR_VAR_2} inches!\n"
+ .string "Oh, my gosh, this is a big one!\p"
+ .string "It might even beat the big BARBOACH\n"
+ .string "my younger brother saw!\p"
+ .string "Thanks for showing me.\n"
+ .string "This is my thanks!$"
+
+ .incbin "baserom.gba", 0x1902ae, 0x16
+
+SootopolisCity_House8_Text_1902C4:: @ 81902C4
+ .string "Hunh?\n"
+ .string "Your BAG is crammed full.$"
+
+SootopolisCity_House8_Text_1902E4:: @ 81902E4
+ .string "{STR_VAR_2} inches, is it?\p"
+ .string "Hmm... I’ve seen a bigger SHROOMISH\n"
+ .string "than this one.$"
+
+SootopolisCity_House8_Text_190329:: @ 8190329
+ .string "Oh, now this is quite something...\n"
+ .string "But it’s not a SHROOMISH!$"
+
+SootopolisCity_House8_Text_190366:: @ 8190366
+ .string "You don’t have a big SHROOMISH?\n"
+ .string "That’s too bad...\p"
+ .string "If you get a big SHROOMISH, please\n"
+ .string "come show me.$"
+
+SootopolisCity_House8_Text_1903C9:: @ 81903C9
+ .string "The biggest SHROOMISH in history!\n"
+ .string "{STR_VAR_2}’s {STR_VAR_3}-inch giant!\p"
+ .string "A SHROOMISH bigger than a BARBOACH\n"
+ .string "always wanted!$"
+
+SootopolisCity_House8_Text_190431:: @ 8190431
+ .string "Do you know the POKéMON BARBOACH?\n"
+ .string "It’s rarely seen in SOOTOPOLIS.\p"
+ .string "I love, I mean love, big BARBOACH!\p"
+ .string "My big brother says that SHROOMISH is\n"
+ .string "bigger.\p"
+ .string "But that’s wrong! Everyone knows that\n"
+ .string "BARBOACH is a lot bigger.\p"
+ .string "Hunh? Do you have a BARBOACH?\n"
+ .string "P-p-please show me!$"
+
+SootopolisCity_House8_Text_190536:: @ 8190536
+ .string "{STR_VAR_2} inches!\n"
+ .string "Wow, that is big!\p"
+ .string "It might be even bigger than the huge\n"
+ .string "SHROOMISH my big brother saw.\p"
+ .string "Thanks for showing me!\n"
+ .string "This is my thanks!$"
+
+SootopolisCity_House8_Text_1905C1:: @ 81905C1
+ .string "Whoops, looks like your BAG is full.$"
+
+SootopolisCity_House8_Text_1905E6:: @ 81905E6
+ .string "{STR_VAR_2} inches?\p"
+ .string "Hmm... I’ve seen a bigger BARBOACH\n"
+ .string "than this one here.$"
+
+SootopolisCity_House8_Text_190628:: @ 8190628
+ .string "Well, isn’t this something!\n"
+ .string "But it’s no BARBOACH!$"
+
+SootopolisCity_House8_Text_19065A:: @ 819065A
+ .string "Don’t you have a big BARBOACH?\n"
+ .string "How disappointing...\p"
+ .string "If you get a big BARBOACH, please\n"
+ .string "come show me!$"
+
+SootopolisCity_House8_Text_1906BE:: @ 81906BE
+ .string "The biggest BARBOACH in history!\n"
+ .string "{STR_VAR_2}’s {STR_VAR_3}-inch colossus!\p"
+ .string "A BARBOACH bigger than a SHROOMISH\n"
+ .string "always wanted!$"
+
diff --git a/data/maps/text/SootopolisCity_Mart.s b/data/maps/text/SootopolisCity_Mart.s
new file mode 100644
index 000000000..e45624067
--- /dev/null
+++ b/data/maps/text/SootopolisCity_Mart.s
@@ -0,0 +1,18 @@
+SootopolisCity_Mart_Text_18F890:: @ 818F890
+ .string "PP UP is great!\p"
+ .string "It raises the POWER POINTS, the PP,\n"
+ .string "of a POKéMON move.$"
+
+SootopolisCity_Mart_Text_18F8D7:: @ 818F8D7
+ .string "What... What is happening?$"
+
+SootopolisCity_Mart_Text_18F8F2:: @ 818F8F2
+ .string "Do you know FULL RESTORE?\p"
+ .string "Full restoration of HP!\n"
+ .string "Eradication of all status problems!\p"
+ .string "It’s truly an item of your dreams!$"
+
+SootopolisCity_Mart_Text_18F96B:: @ 818F96B
+ .string "This weather...\n"
+ .string "Did something awaken?$"
+
diff --git a/data/maps/text/SootopolisCity_PokemonCenter_1F.s b/data/maps/text/SootopolisCity_PokemonCenter_1F.s
new file mode 100644
index 000000000..e8a78c9b6
--- /dev/null
+++ b/data/maps/text/SootopolisCity_PokemonCenter_1F.s
@@ -0,0 +1,25 @@
+SootopolisCity_PokemonCenter_1F_Text_18F6A2:: @ 818F6A2
+ .string "WALLACE, this town’s GYM LEADER, is a\n"
+ .string "powerful TRAINER.\p"
+ .string "He’s rumored to be the best in the\n"
+ .string "whole HOENN region.\p"
+ .string "But the ELITE FOUR...\p"
+ .string "They’re said to be even stronger than\n"
+ .string "WALLACE. How strong could they be?$"
+
+SootopolisCity_PokemonCenter_1F_Text_18F770:: @ 818F770
+ .string "Everyone in town has taken refuge\n"
+ .string "and won’t come out of their homes.\p"
+ .string "This weather..\n"
+ .string "Could it be the prelude to something?$"
+
+SootopolisCity_PokemonCenter_1F_Text_18F7EA:: @ 818F7EA
+ .string "Whenever, wherever, and whatever\n"
+ .string "happens, I will always be friends with\l"
+ .string "POKéMON.\p"
+ .string "Because it’s fun to be with POKéMON!$"
+
+SootopolisCity_PokemonCenter_1F_Text_18F860:: @ 818F860
+ .string "I don’t know why...\n"
+ .string "But... I’m really scared...$"
+
diff --git a/data/maps/text/SouthernIsland_Exterior.s b/data/maps/text/SouthernIsland_Exterior.s
new file mode 100644
index 000000000..5a8a0bfc8
--- /dev/null
+++ b/data/maps/text/SouthernIsland_Exterior.s
@@ -0,0 +1,12 @@
+SouthernIsland_Exterior_Text_1C5215:: @ 81C5215
+ .string "Aye, mate, there’s nothing here to\n"
+ .string "see or do on this forgettable island.\p"
+ .string "What say we sail back to LILYCOVE?$"
+
+SouthernIsland_Exterior_Text_1C5281:: @ 81C5281
+ .string "Aye, right, then!\n"
+ .string "Sail home we will!$"
+
+SouthernIsland_Exterior_Text_1C52A6:: @ 81C52A6
+ .string "Aye, right, as you like, then.$"
+
diff --git a/data/maps/text/SouthernIsland_Interior.s b/data/maps/text/SouthernIsland_Interior.s
new file mode 100644
index 000000000..d4a340435
--- /dev/null
+++ b/data/maps/text/SouthernIsland_Interior.s
@@ -0,0 +1,4 @@
+SouthernIsland_Interior_Text_1C52C5:: @ 81C52C5
+ .string "“All dreams are but another reality.\n"
+ .string "Never forget...”$"
+
diff --git a/data/maps/text/TradeCenter.s b/data/maps/text/TradeCenter.s
new file mode 100644
index 000000000..62b14b737
--- /dev/null
+++ b/data/maps/text/TradeCenter.s
@@ -0,0 +1,4 @@
+TradeCenter_Text_1A4DAB:: @ 81A4DAB
+ .string "Please take your seat and start\n"
+ .string "your trade.$"
+
diff --git a/data/maps/text/Underwater_SeafloorCavern.s b/data/maps/text/Underwater_SeafloorCavern.s
new file mode 100644
index 000000000..80153230f
--- /dev/null
+++ b/data/maps/text/Underwater_SeafloorCavern.s
@@ -0,0 +1,8 @@
+Underwater_SeafloorCavern_Text_197435:: @ 8197435
+ .string "“SUBMARINE EXPLORER 1” is painted\n"
+ .string "on the hull.\p"
+ .string "This is the submarine TEAM {EVIL_TEAM}\n"
+ .string "stole in SLATEPORT!\p"
+ .string "TEAM {EVIL_TEAM} must have gone\n"
+ .string "ashore here.$"
+
diff --git a/data/maps/text/VerdanturfTown.s b/data/maps/text/VerdanturfTown.s
new file mode 100644
index 000000000..7cdd8b9bc
--- /dev/null
+++ b/data/maps/text/VerdanturfTown.s
@@ -0,0 +1,63 @@
+VerdanturfTown_Text_16CAEB:: @ 816CAEB
+ .string "My papa told me.\p"
+ .string "He says this tunnel is full of\n"
+ .string "timid POKéMON.\p"
+ .string "They get all scared of loud noise and\n"
+ .string "make a big uproar.\p"
+ .string "So they had to stop the big tunnel\n"
+ .string "project.\p"
+ .string "But there’s one man.\n"
+ .string "He’s trying to dig the tunnel by himself!$"
+
+VerdanturfTown_Text_16CBCE:: @ 816CBCE
+ .string "There was a man who dug a tunnel for\n"
+ .string "a lady he loved.\p"
+ .string "I don’t really get it, but hey!$"
+
+VerdanturfTown_Text_16CC24:: @ 816CC24
+ .string "The way the winds blow, volcanic ash\n"
+ .string "is never blown in this direction.\p"
+ .string "The air is clean and delicious here.\n"
+ .string "Living here should do wonders for even\l"
+ .string "frail and sickly people.$"
+
+VerdanturfTown_Text_16CCD0:: @ 816CCD0
+ .string "I’m feeling a little confident about the\n"
+ .string "cuteness of my POKéMON.\p"
+ .string "I wanted to make its CONTEST debut,\n"
+ .string "so that’s why I’m here.$"
+
+VerdanturfTown_Text_16CD4D:: @ 816CD4D
+ .string "Did you see the cave next to the\n"
+ .string "POKéMON MART?\p"
+ .string "There’s a guy in there who’s trying to\n"
+ .string "bust up boulders so he can bust out\l"
+ .string "through to the other side.\p"
+ .string "It’d be great if we could go through...\n"
+ .string "It’ll make it easy to visit RUSTBORO.$"
+
+VerdanturfTown_Text_16CE30:: @ 816CE30
+ .string "That cave next to the POKéMON MART\n"
+ .string "is now a tunnel to the other side.\p"
+ .string "It’s great - it’s easy to go shop for new\n"
+ .string "DEVON products in RUSTBORO now.$"
+
+VerdanturfTown_Text_16CEC0:: @ 816CEC0
+ .string "VERDANTURF TOWN\p"
+ .string "“The windswept highlands with the\n"
+ .string "sweet fragrance of grass.”$"
+
+VerdanturfTown_Text_16CF0D:: @ 816CF0D
+ .string "WANDA’S HOUSE$"
+
+VerdanturfTown_Text_16CF1B:: @ 816CF1B
+ .string "POKéMON CONTESTS\n"
+ .string "NORMAL RANK REGISTRATION\p"
+ .string "“Gather here, all ye POKéMON TRAINERS!”$"
+
+VerdanturfTown_Text_16CF6D:: @ 816CF6D
+ .string "RUSTURF TUNNEL\n"
+ .string "“Linking RUSTBORO and VERDANTURF\p"
+ .string "“The tunnel project has been\n"
+ .string "canceled.”$"
+
diff --git a/data/maps/text/VerdanturfTown_ContestHall.s b/data/maps/text/VerdanturfTown_ContestHall.s
new file mode 100644
index 000000000..fda2a8022
--- /dev/null
+++ b/data/maps/text/VerdanturfTown_ContestHall.s
@@ -0,0 +1,27 @@
+VerdanturfTown_ContestHall_Text_177FB4:: @ 8177FB4
+ .string "Which CONTEST are you entering?\n"
+ .string "Want a piece of advice?\p"
+ .string "In any CONTEST, for example, a CUTE\n"
+ .string "CONTEST, I don’t think they judge you\l"
+ .string "only on cuteness in the first round.\p"
+ .string "You need to work out ways for raising\n"
+ .string "POKéMON better.$"
+
+VerdanturfTown_ContestHall_Text_178091:: @ 8178091
+ .string "I raised my POKéMON to be cute.\p"
+ .string "I found out you can put POKéMON in\n"
+ .string "a CONTEST for cuteness!\p"
+ .string "I’m so glad I raised my POKéMON with\n"
+ .string "loving care...$"
+
+VerdanturfTown_ContestHall_Text_178120:: @ 8178120
+ .string "My POKéMON rules!\p"
+ .string "It’s cool, tough yet beautiful, cute,\n"
+ .string "and smart. It’s complete!\p"
+ .string "I may as well go for wins in every\n"
+ .string "single CONTEST.$"
+
+VerdanturfTown_ContestHall_Text_1781A5:: @ 81781A5
+ .string "POKéMON CONTESTS\n"
+ .string "NORMAL RANK STAGE!$"
+
diff --git a/data/maps/text/VerdanturfTown_ContestLobby.s b/data/maps/text/VerdanturfTown_ContestLobby.s
new file mode 100644
index 000000000..8c2240ba9
--- /dev/null
+++ b/data/maps/text/VerdanturfTown_ContestLobby.s
@@ -0,0 +1,29 @@
+VerdanturfTown_ContestLobby_Text_177D6C:: @ 8177D6C
+ .string "I went in through the entrance and\n"
+ .string "took a look around the CONTEST hall.\p"
+ .string "Getting up on that big stage...\n"
+ .string "It’s going to be tense!$"
+
+VerdanturfTown_ContestLobby_Text_177DEC:: @ 8177DEC
+ .string "Oh, my love for POKéMON...\n"
+ .string "The attraction they evoke in me...\p"
+ .string "Whoops!\n"
+ .string "You weren’t meant to see that!\l"
+ .string "Well, anyway.\p"
+ .string "If you’re entering a CONTEST, try this\n"
+ .string "move on for size.$"
+
+VerdanturfTown_ContestLobby_Text_177E98:: @ 8177E98
+ .string "My feelings for POKéMON...\n"
+ .string "Oh, they attract me so...$"
+
+VerdanturfTown_ContestLobby_Text_177ECD:: @ 8177ECD
+ .string "Which CONTEST are you planning on\n"
+ .string "entering?\p"
+ .string "If you’re entering a COOL CONTEST,\n"
+ .string "a cool POKéMON has to be the one!\p"
+ .string "Pick a POKéMON worthy of the CONTEST\n"
+ .string "theme, and make sure it has the\l"
+ .string "right set of moves to match.\p"
+ .string "That’s fundamental!$"
+
diff --git a/data/maps/text/VerdanturfTown_FriendshipRatersHouse.s b/data/maps/text/VerdanturfTown_FriendshipRatersHouse.s
new file mode 100644
index 000000000..9d8e968b6
--- /dev/null
+++ b/data/maps/text/VerdanturfTown_FriendshipRatersHouse.s
@@ -0,0 +1,40 @@
+VerdanturfTown_FriendshipRatersHouse_Text_178A9C:: @ 8178A9C
+ .string "Let me see your POKéMON.\n"
+ .string "I’ll check to see how much it likes you.\p"
+ .string "Oh.\n"
+ .string "Your POKéMON...$"
+
+VerdanturfTown_FriendshipRatersHouse_Text_178AF2:: @ 8178AF2
+ .string "It adores you.\n"
+ .string "It can’t possibly love you any more.\l"
+ .string "I even feel happy seeing it.$"
+
+VerdanturfTown_FriendshipRatersHouse_Text_178B43:: @ 8178B43
+ .string "It seems to be very happy.\n"
+ .string "It obviously likes you a whole lot.$"
+
+VerdanturfTown_FriendshipRatersHouse_Text_178B82:: @ 8178B82
+ .string "It likes you quite a lot.\n"
+ .string "It seems to want to be babied a little.$"
+
+VerdanturfTown_FriendshipRatersHouse_Text_178BC4:: @ 8178BC4
+ .string "It’s getting used to you.\n"
+ .string "It seems to believe in you.$"
+
+VerdanturfTown_FriendshipRatersHouse_Text_178BFA:: @ 8178BFA
+ .string "It’s not very used to you yet.\n"
+ .string "It neither loves nor hates you.$"
+
+VerdanturfTown_FriendshipRatersHouse_Text_178C39:: @ 8178C39
+ .string "It’s very wary.\n"
+ .string "It has scary viciousness in its eyes.\l"
+ .string "It doesn’t like you much at all.$"
+
+VerdanturfTown_FriendshipRatersHouse_Text_178C90:: @ 8178C90
+ .string "This is a little hard for me to say...\p"
+ .string "Your POKéMON simply detests you.\n"
+ .string "Doesn’t that make you uncomfortable?$"
+
+VerdanturfTown_FriendshipRatersHouse_Text_178CFD:: @ 8178CFD
+ .string "PIKACHU: Pika pika!$"
+
diff --git a/data/maps/text/VerdanturfTown_House.s b/data/maps/text/VerdanturfTown_House.s
new file mode 100644
index 000000000..8cdb826c3
--- /dev/null
+++ b/data/maps/text/VerdanturfTown_House.s
@@ -0,0 +1,14 @@
+VerdanturfTown_House_Text_178D11:: @ 8178D11
+ .string "Far away, deep in EVER GRANDE CITY,\n"
+ .string "is the POKéMON LEAGUE.\p"
+ .string "The TRAINERS who gather there are\n"
+ .string "all frighteningly well skilled.$"
+
+VerdanturfTown_House_Text_178D8E:: @ 8178D8E
+ .string "In the POKéMON LEAGUE, I think the\n"
+ .string "rules say that you have to battle the\l"
+ .string "ELITE FOUR all in a row.\p"
+ .string "If you lose to any of them, you have\n"
+ .string "to begin your challenge again from the\l"
+ .string "first one.$"
+
diff --git a/data/maps/text/VerdanturfTown_Mart.s b/data/maps/text/VerdanturfTown_Mart.s
new file mode 100644
index 000000000..6bdb54ecd
--- /dev/null
+++ b/data/maps/text/VerdanturfTown_Mart.s
@@ -0,0 +1,18 @@
+VerdanturfTown_Mart_Text_1781C9:: @ 81781C9
+ .string "For any POKéMON match, X SPECIAL\n"
+ .string "is crucial.\p"
+ .string "It jacks up the power of some moves\n"
+ .string "even though it’s only for one battle.$"
+
+VerdanturfTown_Mart_Text_178240:: @ 8178240
+ .string "They don’t sell any items that will let\n"
+ .string "you win CONTESTS...\p"
+ .string "It means you have to raise POKéMON\n"
+ .string "diligently on an everyday basis.$"
+
+VerdanturfTown_Mart_Text_1782C0:: @ 81782C0
+ .string "The NEST BALL works better on\n"
+ .string "weakened POKéMON.\p"
+ .string "VERDANTURF is the only place you can\n"
+ .string "buy it.$"
+
diff --git a/data/maps/text/VerdanturfTown_PokemonCenter_1F.s b/data/maps/text/VerdanturfTown_PokemonCenter_1F.s
new file mode 100644
index 000000000..950922b45
--- /dev/null
+++ b/data/maps/text/VerdanturfTown_PokemonCenter_1F.s
@@ -0,0 +1,10 @@
+VerdanturfTown_PokemonCenter_1F_Text_17831D:: @ 817831D
+ .string "I daresay a TRAINER isn’t qualified if\n"
+ .string "POKéMON aren’t settled and friendly.\l"
+ .string "Have you given them any {POKEBLOCK}S?$"
+
+VerdanturfTown_PokemonCenter_1F_Text_178389:: @ 8178389
+ .string "Let me hazard a guess why you’re in\n"
+ .string "VERDANTURF. The reason: CONTESTS.\p"
+ .string "All CONTEST challenges originate here.$"
+
diff --git a/data/maps/text/VerdanturfTown_WandasHouse.s b/data/maps/text/VerdanturfTown_WandasHouse.s
new file mode 100644
index 000000000..684a4c2a3
--- /dev/null
+++ b/data/maps/text/VerdanturfTown_WandasHouse.s
@@ -0,0 +1,84 @@
+VerdanturfTown_WandasHouse_Text_1783F6:: @ 81783F6
+ .string "WALLY: I lost to you, {PLAYER}, but I’m\n"
+ .string "not feeling down anymore.\p"
+ .string "Because I have a new purpose in life.\n"
+ .string "Together with my RALTS, I’m going\l"
+ .string "to challenge POKéMON GYMS and become\l"
+ .string "a great TRAINER.\p"
+ .string "Please watch me, {PLAYER}.\n"
+ .string "I’m going to be stronger than you.\p"
+ .string "When I do, I’m going to challenge you\n"
+ .string "to another battle.$"
+
+VerdanturfTown_WandasHouse_Text_178521:: @ 8178521
+ .string "WALLY: Please watch me, {PLAYER}.\n"
+ .string "I’m going to get stronger than you.\p"
+ .string "When I do, I’m going to challenge you\n"
+ .string "to another battle.$"
+
+VerdanturfTown_WandasHouse_Text_17859A:: @ 817859A
+ .string "UNCLE: Oh! {PLAYER}{KUN}!\n"
+ .string "WALLY’s next door.\p"
+ .string "But, boy, there’s something I have to\n"
+ .string "tell you.\p"
+ .string "This natural environment is doing\n"
+ .string "wonders for WALLY’s health.\p"
+ .string "Maybe it’s not just the environment.\n"
+ .string "It could be POKéMON that are giving the\l"
+ .string "boy hope.$"
+
+VerdanturfTown_WandasHouse_Text_178683:: @ 8178683
+ .string "WALLY’s gone away...\n"
+ .string "He slipped off on his own...$"
+
+VerdanturfTown_WandasHouse_Text_1786B5:: @ 81786B5
+ .string "UNCLE: Is that right?\n"
+ .string "WALLY’s gone away that far all by\l"
+ .string "himself...\p"
+ .string "Well, I have to give him credit - he is\n"
+ .string "my little brother’s son.$"
+
+VerdanturfTown_WandasHouse_Text_178739:: @ 8178739
+ .string "WANDA: You are?\n"
+ .string "Oh, right, I get it!\p"
+ .string "You’re the {PLAYER} who WALLY was\n"
+ .string "telling me about.\p"
+ .string "I’m WALLY’s cousin.\n"
+ .string "Glad to meet you!\p"
+ .string "I think WALLY’s become a lot more lively\n"
+ .string "and healthy since he came here.$"
+
+VerdanturfTown_WandasHouse_Text_1787FB:: @ 81787FB
+ .string "WANDA: Don’t worry about WALLY.\n"
+ .string "He’ll be just fine.\p"
+ .string "I know my little cousin, and he has\n"
+ .string "POKéMON with him, too.$"
+
+VerdanturfTown_WandasHouse_Text_17886A:: @ 817886A
+ .string "Thanks to you, I can see my girlfriend\n"
+ .string "every day.\l"
+ .string "Happy? You bet I am!$"
+
+VerdanturfTown_WandasHouse_Text_1788B1:: @ 81788B1
+ .string "My daughter’s boyfriend is a very\n"
+ .string "driven and passionate sort of person.\p"
+ .string "He’s been digging a tunnel nonstop\n"
+ .string "just so he can see my daughter.\p"
+ .string "My daughter’s a little concerned,\n"
+ .string "so she goes out to the tunnel a lot.$"
+
+VerdanturfTown_WandasHouse_Text_178983:: @ 8178983
+ .string "It’s amazing. My daughter’s boyfriend\n"
+ .string "was digging the tunnel by hand!\p"
+ .string "It’s so incredible!$"
+
+VerdanturfTown_WandasHouse_Text_1789DD:: @ 81789DD
+ .string "If anything were to happen to WALLY,\n"
+ .string "I would never be able to look his\l"
+ .string "parents in PETALBURG in the eye...$"
+
+VerdanturfTown_WandasHouse_Text_178A47:: @ 8178A47
+ .string "WALLY was in EVER GRANDE?\p"
+ .string "His parents in PETALBURG would be\n"
+ .string "astonished to hear that!$"
+
diff --git a/data/maps/text/VictoryRoad_1F.s b/data/maps/text/VictoryRoad_1F.s
new file mode 100644
index 000000000..d4aaa0943
--- /dev/null
+++ b/data/maps/text/VictoryRoad_1F.s
@@ -0,0 +1,73 @@
+VictoryRoad_1F_Text_19782B:: @ 819782B
+ .string "WALLY: Hi! {PLAYER}!\p"
+ .string "I bet you’re surprised to see me here!\p"
+ .string "I made it all the way here, and it’s\n"
+ .string "all thanks to you!\p"
+ .string "{PLAYER}, losing to you that time\n"
+ .string "made me stronger!\p"
+ .string "But I’m not going to lose anymore!\p"
+ .string "I’m going to win! For the POKéMON who\n"
+ .string "gave me courage and strength!\p"
+ .string "Okay... Here I come!$"
+
+VictoryRoad_1F_Text_197943:: @ 8197943
+ .string "Wow!\n"
+ .string "{PLAYER}, you are strong, after all!$"
+
+VictoryRoad_1F_Text_197967:: @ 8197967
+ .string "WALLY: I couldn’t beat you today,\n"
+ .string "{PLAYER}, but one of these days, I’ll\l"
+ .string "catch up to you!$"
+
+VictoryRoad_1F_Text_1979BA:: @ 81979BA
+ .string "WALLY: Hi! {PLAYER}!\p"
+ .string "I’ve gotten stronger since that last\n"
+ .string "time! I wanted to show you, {PLAYER}!\p"
+ .string "Okay... Here I come!$"
+
+VictoryRoad_1F_Text_197A23:: @ 8197A23
+ .string "Wow!\n"
+ .string "{PLAYER}, you are strong, after all!$"
+
+VictoryRoad_1F_Text_197A47:: @ 8197A47
+ .string "WALLY: I couldn’t beat you this time,\n"
+ .string "too... But one of these days, {PLAYER},\l"
+ .string "I’m going to catch up to you...\p"
+ .string "And challenge the POKéMON LEAGUE!$"
+
+VictoryRoad_1F_Text_197AD1:: @ 8197AD1
+ .string "I’ve made it this far a couple times,\n"
+ .string "but the last stretch is so long...$"
+
+VictoryRoad_1F_Text_197B1A:: @ 8197B1A
+ .string "My dream ends here again...$"
+
+VictoryRoad_1F_Text_197B36:: @ 8197B36
+ .string "You’ve made it this far. Keep the\n"
+ .string "momentum going and become the\l"
+ .string "CHAMPION! If anyone can, it’s you!$"
+
+VictoryRoad_1F_Text_197B99:: @ 8197B99
+ .string "I didn’t come all this way to lose now.\n"
+ .string "That possibility doesn’t exist!$"
+
+VictoryRoad_1F_Text_197BE1:: @ 8197BE1
+ .string "Impossible...\n"
+ .string "I lost?$"
+
+VictoryRoad_1F_Text_197BF7:: @ 8197BF7
+ .string "I lost here...\p"
+ .string "That means I lack the qualifications\n"
+ .string "to become the CHAMPION...$"
+
+VictoryRoad_1F_Text_197C45:: @ 8197C45
+ .string "This seemingly infinite and harsh road\n"
+ .string "lives up to its name of VICTORY.$"
+
+VictoryRoad_1F_Text_197C8D:: @ 8197C8D
+ .string "Your battle style is fantastic...$"
+
+VictoryRoad_1F_Text_197CAF:: @ 8197CAF
+ .string "You seem to have the potential for\n"
+ .string "becoming the CHAMPION.$"
+
diff --git a/data/maps/text/VictoryRoad_B1F.s b/data/maps/text/VictoryRoad_B1F.s
new file mode 100644
index 000000000..33a34b871
--- /dev/null
+++ b/data/maps/text/VictoryRoad_B1F.s
@@ -0,0 +1,36 @@
+VictoryRoad_B1F_Text_197CE9:: @ 8197CE9
+ .string "The thought that I’m getting closer to\n"
+ .string "the POKéMON LEAGUE...\p"
+ .string "I’m getting stage fright...$"
+
+VictoryRoad_B1F_Text_197D42:: @ 8197D42
+ .string "I couldn’t do a thing...$"
+
+VictoryRoad_B1F_Text_197D5B:: @ 8197D5B
+ .string "The POKéMON LEAGUE became distant\n"
+ .string "again... What a letdown...$"
+
+VictoryRoad_B1F_Text_197D98:: @ 8197D98
+ .string "To win your way through the POKéMON\n"
+ .string "LEAGUE, you need the trust of your\l"
+ .string "POKéMON.$"
+
+VictoryRoad_B1F_Text_197DE8:: @ 8197DE8
+ .string "Your relationship is based on\n"
+ .string "solid trust.$"
+
+VictoryRoad_B1F_Text_197E13:: @ 8197E13
+ .string "By being together all the time, trust\n"
+ .string "grows between POKéMON and TRAINERS.$"
+
+VictoryRoad_B1F_Text_197E5D:: @ 8197E5D
+ .string "This isn’t the goal. It’s only a place\n"
+ .string "on the way to the POKéMON LEAGUE.$"
+
+VictoryRoad_B1F_Text_197EA6:: @ 8197EA6
+ .string "That’s the way!$"
+
+VictoryRoad_B1F_Text_197EB6:: @ 8197EB6
+ .string "You’ll do fine, for sure!\n"
+ .string "Your POKéMON are all eager to go!$"
+
diff --git a/data/maps/text/VictoryRoad_B2F.s b/data/maps/text/VictoryRoad_B2F.s
new file mode 100644
index 000000000..fe7477979
--- /dev/null
+++ b/data/maps/text/VictoryRoad_B2F.s
@@ -0,0 +1,50 @@
+VictoryRoad_B2F_Text_197EF2:: @ 8197EF2
+ .string "I trained together with my whole family,\n"
+ .string "every one of us!\l"
+ .string "I’m not losing to anyone!$"
+
+VictoryRoad_B2F_Text_197F46:: @ 8197F46
+ .string "Better than my family?!\n"
+ .string "Is that possible?!$"
+
+VictoryRoad_B2F_Text_197F71:: @ 8197F71
+ .string "I was better than everyone in my\n"
+ .string "family. I’ve never lost before...\p"
+ .string "I’ve lost my confidence...\n"
+ .string "Maybe I’ll go home...$"
+
+VictoryRoad_B2F_Text_197FE5:: @ 8197FE5
+ .string "I’d heard that there was a tough\n"
+ .string "little kid around. Do they mean you?$"
+
+VictoryRoad_B2F_Text_19802B:: @ 819802B
+ .string "The little shrimp is tough!$"
+
+VictoryRoad_B2F_Text_198047:: @ 8198047
+ .string "The rumors I heard, that tough little\n"
+ .string "kid is from PETALBURG CITY.$"
+
+VictoryRoad_B2F_Text_198089:: @ 8198089
+ .string "You must be getting a little tired.$"
+
+VictoryRoad_B2F_Text_1980AD:: @ 81980AD
+ .string "No signs of tiring at all!$"
+
+VictoryRoad_B2F_Text_1980C8:: @ 81980C8
+ .string "VICTORY ROAD and the POKéMON LEAGUE\n"
+ .string "are long and grueling challenges.\l"
+ .string "Beware of fatigue!$"
+
+VictoryRoad_B2F_Text_198121:: @ 8198121
+ .string "You shouldn’t get complacent just\n"
+ .string "because you have a lot of GYM BADGES.\p"
+ .string "There’s always going to be someone\n"
+ .string "who’s better than you!$"
+
+VictoryRoad_B2F_Text_1981A3:: @ 81981A3
+ .string "You’re better than me!$"
+
+VictoryRoad_B2F_Text_1981BA:: @ 81981BA
+ .string "Gaze on your collected BADGES and\n"
+ .string "remember the TRAINERS you’ve faced.$"
+
diff --git a/data/tilesets/metatiles.s b/data/tilesets/metatiles.s
index 6d4794352..15a5b7471 100644
--- a/data/tilesets/metatiles.s
+++ b/data/tilesets/metatiles.s
@@ -1,201 +1,321 @@
.align 1
gMetatiles_General: @ 8259C1C
+
+gMetatiles_General:: @ 8259C1C
+
.incbin "baserom.gba", 0x259c1c, 0x2000
.align 1
gMetatileAttributes_General: @ 825BC1C
+
+gMetatileAttributes_General:: @ 825BC1C
+
.incbin "baserom.gba", 0x25bc1c, 0x400
.align 1
gMetatiles_Petalburg: @ 825C01C
+
+gMetatiles_Petalburg:: @ 825C01C
+
.incbin "baserom.gba", 0x25c01c, 0x900
.align 1
gMetatileAttributes_Petalburg: @ 825C91C
+
+gMetatileAttributes_Petalburg:: @ 825C91C
+
.incbin "baserom.gba", 0x25c91c, 0x120
.align 1
gMetatiles_Rustboro: @ 825CA3C
+
+gMetatiles_Rustboro:: @ 825CA3C
+
.incbin "baserom.gba", 0x25ca3c, 0x15e0
.align 1
gMetatileAttributes_Rustboro: @ 825E01C
+
+gMetatileAttributes_Rustboro:: @ 825E01C
+
.incbin "baserom.gba", 0x25e01c, 0x2bc
.align 1
gMetatiles_Dewford: @ 825E2D8
+
+gMetatiles_Dewford:: @ 825E2D8
+
.incbin "baserom.gba", 0x25e2d8, 0x900
.align 1
gMetatileAttributes_Dewford: @ 825EBD8
+
+gMetatileAttributes_Dewford:: @ 825EBD8
+
.incbin "baserom.gba", 0x25ebd8, 0x120
.align 1
gMetatiles_Slateport: @ 825ECF8
+
+gMetatiles_Slateport:: @ 825ECF8
+
.incbin "baserom.gba", 0x25ecf8, 0x16c0
.align 1
gMetatileAttributes_Slateport: @ 82603B8
+
+gMetatileAttributes_Slateport:: @ 82603B8
+
.incbin "baserom.gba", 0x2603b8, 0x2d8
.align 1
gMetatiles_Mauville: @ 8260690
+
+gMetatiles_Mauville:: @ 8260690
+
.incbin "baserom.gba", 0x260690, 0x1b20
.align 1
gMetatileAttributes_Mauville: @ 82621B0
+
+gMetatileAttributes_Mauville:: @ 82621B0
+
.incbin "baserom.gba", 0x2621b0, 0x364
.align 1
gMetatiles_Lavaridge: @ 8262514
+
+gMetatiles_Lavaridge:: @ 8262514
+
.incbin "baserom.gba", 0x262514, 0x11e0
.align 1
gMetatileAttributes_Lavaridge: @ 82636F4
+
+gMetatileAttributes_Lavaridge:: @ 82636F4
+
.incbin "baserom.gba", 0x2636f4, 0x23c
.align 1
gMetatiles_Fallarbor: @ 8263930
+
+gMetatiles_Fallarbor:: @ 8263930
+
.incbin "baserom.gba", 0x263930, 0x1520
.align 1
gMetatileAttributes_Fallarbor: @ 8264E50
+
+gMetatileAttributes_Fallarbor:: @ 8264E50
+
.incbin "baserom.gba", 0x264e50, 0x2a4
.align 1
gMetatiles_Fortree: @ 82650F4
+
+gMetatiles_Fortree:: @ 82650F4
+
.incbin "baserom.gba", 0x2650f4, 0x10b0
.align 1
gMetatileAttributes_Fortree: @ 82661A4
+
+gMetatileAttributes_Fortree:: @ 82661A4
+
.incbin "baserom.gba", 0x2661a4, 0x216
.align 1
gMetatiles_Lilycove: @ 82663BA
+
+gMetatiles_Lilycove:: @ 82663BA
+
.incbin "baserom.gba", 0x2663ba, 0x15f0
.align 1
gMetatileAttributes_Lilycove: @ 82679AA
+
+gMetatileAttributes_Lilycove:: @ 82679AA
+
.incbin "baserom.gba", 0x2679aa, 0x2be
.align 1
gMetatiles_Mossdeep: @ 8267C68
+
+gMetatiles_Mossdeep:: @ 8267C68
+
.incbin "baserom.gba", 0x267c68, 0x16b0
.align 1
gMetatileAttributes_Mossdeep: @ 8269318
+
+gMetatileAttributes_Mossdeep:: @ 8269318
+
.incbin "baserom.gba", 0x269318, 0x2d6
.align 1
gMetatiles_EverGrande: @ 82695EE
+
+gMetatiles_EverGrande:: @ 82695EE
+
.incbin "baserom.gba", 0x2695ee, 0xa80
.align 1
gMetatileAttributes_EverGrande: @ 826A06E
+
+gMetatileAttributes_EverGrande:: @ 826A06E
+
.incbin "baserom.gba", 0x26a06e, 0x150
.align 1
gMetatiles_Pacifidlog: @ 826A1BE
+
+gMetatiles_Pacifidlog:: @ 826A1BE
+
.incbin "baserom.gba", 0x26a1be, 0xbf0
.align 1
gMetatileAttributes_Pacifidlog: @ 826ADAE
+
+gMetatileAttributes_Pacifidlog:: @ 826ADAE
+
.incbin "baserom.gba", 0x26adae, 0x17e
.align 1
gMetatiles_Sootopolis: @ 826AF2C
+
+gMetatiles_Sootopolis:: @ 826AF2C
+
.incbin "baserom.gba", 0x26af2c, 0xfe0
.align 1
gMetatileAttributes_Sootopolis: @ 826BF0C
+
+gMetatileAttributes_Sootopolis:: @ 826BF0C
+
.incbin "baserom.gba", 0x26bf0c, 0x1fc
.align 1
gMetatiles_Building: @ 826C108
+
+gMetatiles_Building:: @ 826C108
+
.incbin "baserom.gba", 0x26c108, 0x80
.align 1
gMetatileAttributes_Building: @ 826C188
+
+gMetatileAttributes_Building:: @ 826C188
+
.incbin "baserom.gba", 0x26c188, 0x10
.align 1
gMetatiles_Shop: @ 826C198
+
+gMetatiles_Shop:: @ 826C198
+
.incbin "baserom.gba", 0x26c198, 0x1180
.align 1
gMetatileAttributes_Shop: @ 826D318
+
+gMetatileAttributes_Shop:: @ 826D318
+
.incbin "baserom.gba", 0x26d318, 0x230
.align 1
gMetatiles_PokemonCenter: @ 826D548
+
+gMetatiles_PokemonCenter:: @ 826D548
+
.incbin "baserom.gba", 0x26d548, 0xc60
.align 1
gMetatileAttributes_PokemonCenter: @ 826E1A8
+
+gMetatileAttributes_PokemonCenter:: @ 826E1A8
+
.incbin "baserom.gba", 0x26e1a8, 0x18c
.align 1
gMetatiles_Cave: @ 826E334
+
+gMetatiles_Cave:: @ 826E334
+
.incbin "baserom.gba", 0x26e334, 0x19e0
.align 1
gMetatileAttributes_Cave: @ 826FD14
+
+gMetatileAttributes_Cave:: @ 826FD14
+
.incbin "baserom.gba", 0x26fd14, 0x33c
.align 1
gMetatiles_PokemonSchool: @ 8270050
+
+gMetatiles_PokemonSchool:: @ 8270050
+
.incbin "baserom.gba", 0x270050, 0x3a0
.align 1
gMetatileAttributes_PokemonSchool: @ 82703F0
+
+gMetatileAttributes_PokemonSchool:: @ 82703F0
+
.incbin "baserom.gba", 0x2703f0, 0x74
.align 1
gMetatiles_PokemonFanClub: @ 8270464
+
+gMetatiles_PokemonFanClub:: @ 8270464
+
.incbin "baserom.gba", 0x270464, 0x680
.align 1
gMetatileAttributes_PokemonFanClub: @ 8270AE4
+
+gMetatileAttributes_PokemonFanClub:: @ 8270AE4
+
.incbin "baserom.gba", 0x270ae4, 0xd0
.align 1
@@ -211,181 +331,289 @@ gMetatileAttributes_Unused1: @ 8270BD4
.align 1
gMetatiles_MeteorFalls: @ 8270BD8
+
+gMetatiles_MeteorFalls:: @ 8270BD8
+
.incbin "baserom.gba", 0x270bd8, 0x9f0
.align 1
gMetatileAttributes_MeteorFalls: @ 82715C8
+
+gMetatileAttributes_MeteorFalls:: @ 82715C8
+
.incbin "baserom.gba", 0x2715c8, 0x13e
.align 1
gMetatiles_OceanicMuseum: @ 8271706
+
+gMetatiles_OceanicMuseum:: @ 8271706
+
.incbin "baserom.gba", 0x271706, 0x650
.align 1
gMetatileAttributes_OceanicMuseum: @ 8271D56
+
+gMetatileAttributes_OceanicMuseum:: @ 8271D56
+
.incbin "baserom.gba", 0x271d56, 0xca
.align 1
gMetatiles_CableClub: @ 8271E20
+
+gMetatiles_CableClub:: @ 8271E20
+
.incbin "baserom.gba", 0x271e20, 0x1000
.align 1
gMetatileAttributes_CableClub: @ 8272E20
+
+gMetatileAttributes_CableClub:: @ 8272E20
+
.incbin "baserom.gba", 0x272e20, 0x200
.align 1
gMetatiles_SeashoreHouse: @ 8273020
+
+gMetatiles_SeashoreHouse:: @ 8273020
+
.incbin "baserom.gba", 0x273020, 0x380
.align 1
gMetatileAttributes_SeashoreHouse: @ 82733A0
+
+gMetatileAttributes_SeashoreHouse:: @ 82733A0
+
.incbin "baserom.gba", 0x2733a0, 0x70
.align 1
gMetatiles_PrettyPetalFlowerShop: @ 8273410
+
+gMetatiles_PrettyPetalFlowerShop:: @ 8273410
+
.incbin "baserom.gba", 0x273410, 0x480
.align 1
gMetatileAttributes_PrettyPetalFlowerShop: @ 8273890
+
+gMetatileAttributes_PrettyPetalFlowerShop:: @ 8273890
+
.incbin "baserom.gba", 0x273890, 0x90
.align 1
gMetatiles_PokemonDayCare: @ 8273920
+
+gMetatiles_PokemonDayCare:: @ 8273920
+
.incbin "baserom.gba", 0x273920, 0x440
.align 1
gMetatileAttributes_PokemonDayCare: @ 8273D60
+
+gMetatileAttributes_PokemonDayCare:: @ 8273D60
+
.incbin "baserom.gba", 0x273d60, 0x88
.align 1
gMetatiles_Facility: @ 8273DE8
+
+gMetatiles_Facility:: @ 8273DE8
+
.incbin "baserom.gba", 0x273de8, 0x1fe0
.align 1
gMetatileAttributes_Facility: @ 8275DC8
+
+gMetatileAttributes_Facility:: @ 8275DC8
+
.incbin "baserom.gba", 0x275dc8, 0x3fc
.align 1
gMetatiles_BikeShop: @ 82761C4
+
+gMetatiles_BikeShop:: @ 82761C4
+
.incbin "baserom.gba", 0x2761c4, 0xf80
.align 1
gMetatileAttributes_BikeShop: @ 8277144
+
+gMetatileAttributes_BikeShop:: @ 8277144
+
.incbin "baserom.gba", 0x277144, 0x1f0
.align 1
gMetatiles_RusturfTunnel: @ 8277334
+
+gMetatiles_RusturfTunnel:: @ 8277334
+
.incbin "baserom.gba", 0x277334, 0x530
.align 1
gMetatileAttributes_RusturfTunnel: @ 8277864
+
+gMetatileAttributes_RusturfTunnel:: @ 8277864
+
.incbin "baserom.gba", 0x277864, 0xa6
.align 1
gMetatiles_SecretBaseSecondary: @ 827790A
+
+gMetatiles_SecretBaseSecondary:: @ 827790A
+
.incbin "baserom.gba", 0x27790a, 0x1440
.align 1
gMetatileAttributes_SecretBaseSecondary: @ 8278D4A
+
+gMetatileAttributes_SecretBaseSecondary:: @ 8278D4A
+
.incbin "baserom.gba", 0x278d4a, 0x288
.align 1
gMetatiles_InsideOfTruck: @ 8278FD2
+
+gMetatiles_InsideOfTruck:: @ 8278FD2
+
.incbin "baserom.gba", 0x278fd2, 0x260
.align 1
gMetatileAttributes_InsideOfTruck: @ 8279232
+
+gMetatileAttributes_InsideOfTruck:: @ 8279232
+
.incbin "baserom.gba", 0x279232, 0x4c
.align 1
gMetatiles_Contest: @ 827927E
+
+gMetatiles_Contest:: @ 827927E
+
.incbin "baserom.gba", 0x27927e, 0xe00
.align 1
gMetatileAttributes_Contest: @ 827A07E
+
+gMetatileAttributes_Contest:: @ 827A07E
+
.incbin "baserom.gba", 0x27a07e, 0x1c0
.align 1
gMetatiles_LilycoveMuseum: @ 827A23E
+
+gMetatiles_LilycoveMuseum:: @ 827A23E
+
.incbin "baserom.gba", 0x27a23e, 0x8f0
.align 1
gMetatileAttributes_LilycoveMuseum: @ 827AB2E
+
+gMetatileAttributes_LilycoveMuseum:: @ 827AB2E
+
.incbin "baserom.gba", 0x27ab2e, 0x11e
.align 1
gMetatiles_BrendansMaysHouse: @ 827AC4C
+
+gMetatiles_BrendansMaysHouse:: @ 827AC4C
+
.incbin "baserom.gba", 0x27ac4c, 0xab0
.align 1
gMetatileAttributes_BrendansMaysHouse: @ 827B6FC
+
+gMetatileAttributes_BrendansMaysHouse:: @ 827B6FC
+
.incbin "baserom.gba", 0x27b6fc, 0x156
.align 1
gMetatiles_Lab: @ 827B852
+
+gMetatiles_Lab:: @ 827B852
+
.incbin "baserom.gba", 0x27b852, 0x9a0
.align 1
gMetatileAttributes_Lab: @ 827C1F2
+
+gMetatileAttributes_Lab:: @ 827C1F2
+
.incbin "baserom.gba", 0x27c1f2, 0x134
.align 1
gMetatiles_Underwater: @ 827C326
+
+gMetatiles_Underwater:: @ 827C326
+
.incbin "baserom.gba", 0x27c326, 0xec0
.align 1
gMetatileAttributes_Underwater: @ 827D1E6
+
+gMetatileAttributes_Underwater:: @ 827D1E6
+
.incbin "baserom.gba", 0x27d1e6, 0x1d8
.align 1
gMetatiles_GenericBuilding: @ 827D3BE
+
+gMetatiles_GenericBuilding:: @ 827D3BE
+
.incbin "baserom.gba", 0x27d3be, 0x2000
.align 1
gMetatileAttributes_GenericBuilding: @ 827F3BE
+
+gMetatileAttributes_GenericBuilding:: @ 827F3BE
+
.incbin "baserom.gba", 0x27f3be, 0x400
.align 1
gMetatiles_MauvilleGameCorner: @ 827F7BE
+
+gMetatiles_MauvilleGameCorner:: @ 827F7BE
+
.incbin "baserom.gba", 0x27f7be, 0x600
.align 1
gMetatileAttributes_MauvilleGameCorner: @ 827FDBE
+
+gMetatileAttributes_MauvilleGameCorner:: @ 827FDBE
+
.incbin "baserom.gba", 0x27fdbe, 0xc0
.align 1
@@ -401,129 +629,207 @@ gMetatileAttributes_Unused2: @ 828021E
.align 1
gMetatiles_RustboroGym: @ 8280292
+
+gMetatiles_RustboroGym:: @ 8280292
+
.incbin "baserom.gba", 0x280292, 0x380
.align 1
gMetatileAttributes_RustboroGym: @ 8280612
+
+gMetatileAttributes_RustboroGym:: @ 8280612
+
.incbin "baserom.gba", 0x280612, 0x70
.align 1
gMetatiles_DewfordGym: @ 8280682
+
+gMetatiles_DewfordGym:: @ 8280682
+
.incbin "baserom.gba", 0x280682, 0x3d0
.align 1
gMetatileAttributes_DewfordGym: @ 8280A52
+
+gMetatileAttributes_DewfordGym:: @ 8280A52
+
.incbin "baserom.gba", 0x280a52, 0x7a
.align 1
gMetatiles_MauvilleGym: @ 8280ACC
+
+gMetatiles_MauvilleGym:: @ 8280ACC
+
.incbin "baserom.gba", 0x280acc, 0x750
.align 1
gMetatileAttributes_MauvilleGym: @ 828121C
+
+gMetatileAttributes_MauvilleGym:: @ 828121C
+
.incbin "baserom.gba", 0x28121c, 0xea
.align 1
gMetatiles_LavaridgeGym: @ 8281306
+
+gMetatiles_LavaridgeGym:: @ 8281306
+
.incbin "baserom.gba", 0x281306, 0x2a0
.align 1
gMetatileAttributes_LavaridgeGym: @ 82815A6
+
+gMetatileAttributes_LavaridgeGym:: @ 82815A6
+
.incbin "baserom.gba", 0x2815a6, 0x54
.align 1
gMetatiles_PetalburgGym: @ 82815FA
+
+gMetatiles_PetalburgGym:: @ 82815FA
+
.incbin "baserom.gba", 0x2815fa, 0x8c0
.align 1
gMetatileAttributes_PetalburgGym: @ 8281EBA
+
+gMetatileAttributes_PetalburgGym:: @ 8281EBA
+
.incbin "baserom.gba", 0x281eba, 0x118
.align 1
gMetatiles_FortreeGym: @ 8281FD2
+
+gMetatiles_FortreeGym:: @ 8281FD2
+
.incbin "baserom.gba", 0x281fd2, 0x350
.align 1
gMetatileAttributes_FortreeGym: @ 8282322
+
+gMetatileAttributes_FortreeGym:: @ 8282322
+
.incbin "baserom.gba", 0x282322, 0x6a
.align 1
gMetatiles_MossdeepGym: @ 828238C
+
+gMetatiles_MossdeepGym:: @ 828238C
+
.incbin "baserom.gba", 0x28238c, 0x500
.align 1
gMetatileAttributes_MossdeepGym: @ 828288C
+
+gMetatileAttributes_MossdeepGym:: @ 828288C
+
.incbin "baserom.gba", 0x28288c, 0xa0
.align 1
gMetatiles_SootopolisGym: @ 828292C
+
+gMetatiles_SootopolisGym:: @ 828292C
+
.incbin "baserom.gba", 0x28292c, 0x630
.align 1
gMetatileAttributes_SootopolisGym: @ 8282F5C
+
+gMetatileAttributes_SootopolisGym:: @ 8282F5C
+
.incbin "baserom.gba", 0x282f5c, 0xc6
.align 1
gMetatiles_TrickHousePuzzle: @ 8283022
+
+gMetatiles_TrickHousePuzzle:: @ 8283022
+
.incbin "baserom.gba", 0x283022, 0x950
.align 1
gMetatileAttributes_TrickHousePuzzle: @ 8283972
+
+gMetatileAttributes_TrickHousePuzzle:: @ 8283972
+
.incbin "baserom.gba", 0x283972, 0x12a
.align 1
gMetatiles_Ship: @ 8283A9C
+
+gMetatiles_Ship:: @ 8283A9C
+
.incbin "baserom.gba", 0x283a9c, 0xfc0
.align 1
gMetatileAttributes_Ship: @ 8284A5C
+
+gMetatileAttributes_Ship:: @ 8284A5C
+
.incbin "baserom.gba", 0x284a5c, 0x1f8
.align 1
gMetatiles_SecretBasePrimary: @ 8284C54
+
+gMetatiles_SecretBasePrimary:: @ 8284C54
+
.incbin "baserom.gba", 0x284c54, 0x20
.align 1
gMetatileAttributes_SecretBasePrimary: @ 8284C74
+
+gMetatileAttributes_SecretBasePrimary:: @ 8284C74
+
.incbin "baserom.gba", 0x284c74, 0x4
.align 1
gMetatiles_EliteFour: @ 8284C78
+
+gMetatiles_EliteFour:: @ 8284C78
+
.incbin "baserom.gba", 0x284c78, 0x14b0
.align 1
gMetatileAttributes_EliteFour: @ 8286128
+
+gMetatileAttributes_EliteFour:: @ 8286128
+
.incbin "baserom.gba", 0x286128, 0x296
.align 1
gMetatiles_BattleTower: @ 82863BE
+
+gMetatiles_BattleTower:: @ 82863BE
+
.incbin "baserom.gba", 0x2863be, 0x830
.align 1
gMetatileAttributes_BattleTower: @ 8286BEE
+
+gMetatileAttributes_BattleTower:: @ 8286BEE
+
.incbin "baserom.gba", 0x286bee, 0x106