summaryrefslogtreecommitdiff
path: root/data/maps/objects
diff options
context:
space:
mode:
Diffstat (limited to 'data/maps/objects')
-rw-r--r--data/maps/objects/Baadon.asm36
-rw-r--r--data/maps/objects/BaadonHouse1.asm20
-rw-r--r--data/maps/objects/BaadonHouse2.asm20
-rw-r--r--data/maps/objects/BaadonLeague1F.asm25
-rw-r--r--data/maps/objects/BaadonLeague2F.asm23
-rw-r--r--data/maps/objects/BaadonMart.asm22
-rw-r--r--data/maps/objects/BaadonPokecenter1F.asm23
-rw-r--r--data/maps/objects/BaadonPokecenter2F.asm21
-rw-r--r--data/maps/objects/BaadonRoute1.asm21
-rw-r--r--data/maps/objects/BaadonRoute2.asm19
-rw-r--r--data/maps/objects/BaadonRoute3.asm21
-rw-r--r--data/maps/objects/BaadonRouteGateNewtype.asm21
-rw-r--r--data/maps/objects/BaadonRouteGateWest.asm21
-rw-r--r--data/maps/objects/BaadonWallpaperHouse.asm19
-rw-r--r--data/maps/objects/BullForest.asm36
-rw-r--r--data/maps/objects/BullForestRoute1.asm22
-rw-r--r--data/maps/objects/BullForestRoute1House.asm20
-rw-r--r--data/maps/objects/BullForestRoute2.asm21
-rw-r--r--data/maps/objects/BullForestRoute3.asm19
-rw-r--r--data/maps/objects/BullForestRouteGateStand.asm21
-rw-r--r--data/maps/objects/BullHouse1.asm20
-rw-r--r--data/maps/objects/BullHouse2.asm20
-rw-r--r--data/maps/objects/BullHouse3.asm20
-rw-r--r--data/maps/objects/BullHouse4.asm19
-rw-r--r--data/maps/objects/BullLeague1F.asm25
-rw-r--r--data/maps/objects/BullLeague2F.asm23
-rw-r--r--data/maps/objects/BullMart.asm22
-rw-r--r--data/maps/objects/BullPokecenter1F.asm24
-rw-r--r--data/maps/objects/BullPokecenter2F.asm21
-rw-r--r--data/maps/objects/CaveMinecarts1.asm17
-rw-r--r--data/maps/objects/CaveMinecarts2.asm17
-rw-r--r--data/maps/objects/CaveMinecarts3.asm17
-rw-r--r--data/maps/objects/CaveMinecarts4.asm17
-rw-r--r--data/maps/objects/CaveMinecarts5.asm17
-rw-r--r--data/maps/objects/CaveMinecarts6.asm17
-rw-r--r--data/maps/objects/CaveMinecarts7.asm17
-rw-r--r--data/maps/objects/Fonto.asm34
-rw-r--r--data/maps/objects/FontoHouse.asm20
-rw-r--r--data/maps/objects/FontoLab.asm21
-rw-r--r--data/maps/objects/FontoMart.asm22
-rw-r--r--data/maps/objects/FontoPokecenter1F.asm24
-rw-r--r--data/maps/objects/FontoPokecenter2F.asm21
-rw-r--r--data/maps/objects/FontoRocketHouse.asm23
-rw-r--r--data/maps/objects/FontoRoute1.asm20
-rw-r--r--data/maps/objects/FontoRoute2.asm19
-rw-r--r--data/maps/objects/FontoRoute3.asm19
-rw-r--r--data/maps/objects/FontoRoute4.asm21
-rw-r--r--data/maps/objects/FontoRoute5.asm21
-rw-r--r--data/maps/objects/FontoRoute6.asm19
-rw-r--r--data/maps/objects/FontoRouteGate1.asm21
-rw-r--r--data/maps/objects/FontoRouteGate2.asm21
-rw-r--r--data/maps/objects/FontoRouteGate3.asm21
-rw-r--r--data/maps/objects/Haiteku.asm40
-rw-r--r--data/maps/objects/HaitekuAquarium1F.asm23
-rw-r--r--data/maps/objects/HaitekuAquarium2F.asm20
-rw-r--r--data/maps/objects/HaitekuHouse1.asm20
-rw-r--r--data/maps/objects/HaitekuHouse2.asm20
-rw-r--r--data/maps/objects/HaitekuImposterOakHouse.asm21
-rw-r--r--data/maps/objects/HaitekuLeague1F.asm25
-rw-r--r--data/maps/objects/HaitekuLeague2F.asm23
-rw-r--r--data/maps/objects/HaitekuMart.asm22
-rw-r--r--data/maps/objects/HaitekuPokecenter1F.asm24
-rw-r--r--data/maps/objects/HaitekuPokecenter2F.asm21
-rw-r--r--data/maps/objects/HaitekuWestRoute.asm19
-rw-r--r--data/maps/objects/HaitekuWestRouteGate.asm21
-rw-r--r--data/maps/objects/HaitekuWestRouteOcean.asm21
-rw-r--r--data/maps/objects/Kanto.asm61
-rw-r--r--data/maps/objects/KantoCeladonElevator.asm19
-rw-r--r--data/maps/objects/KantoCeladonMart1F.asm22
-rw-r--r--data/maps/objects/KantoCeladonMart2F.asm22
-rw-r--r--data/maps/objects/KantoCeladonMart3F.asm22
-rw-r--r--data/maps/objects/KantoCeladonMart4F.asm23
-rw-r--r--data/maps/objects/KantoCeladonMart5F.asm22
-rw-r--r--data/maps/objects/KantoCeruleanHouse.asm20
-rw-r--r--data/maps/objects/KantoDiner.asm19
-rw-r--r--data/maps/objects/KantoEastRoute.asm21
-rw-r--r--data/maps/objects/KantoEldersHouse.asm21
-rw-r--r--data/maps/objects/KantoFishingGuru.asm20
-rw-r--r--data/maps/objects/KantoGameCorner.asm31
-rw-r--r--data/maps/objects/KantoGameCornerPrizes.asm22
-rw-r--r--data/maps/objects/KantoGamefreakHQ1.asm26
-rw-r--r--data/maps/objects/KantoGamefreakHQ2.asm22
-rw-r--r--data/maps/objects/KantoGamefreakHQ3.asm24
-rw-r--r--data/maps/objects/KantoGamefreakHQ4.asm20
-rw-r--r--data/maps/objects/KantoGamefreakHQ5.asm19
-rw-r--r--data/maps/objects/KantoGreensHouse1F.asm21
-rw-r--r--data/maps/objects/KantoGreensHouse2F.asm18
-rw-r--r--data/maps/objects/KantoHospital.asm22
-rw-r--r--data/maps/objects/KantoLavenderHouse.asm21
-rw-r--r--data/maps/objects/KantoLeague1F.asm25
-rw-r--r--data/maps/objects/KantoLeague21F.asm25
-rw-r--r--data/maps/objects/KantoLeague22F.asm23
-rw-r--r--data/maps/objects/KantoLeague2F.asm23
-rw-r--r--data/maps/objects/KantoMart.asm22
-rw-r--r--data/maps/objects/KantoOaksLab.asm20
-rw-r--r--data/maps/objects/KantoPokecenter1F.asm24
-rw-r--r--data/maps/objects/KantoPokecenter21F.asm24
-rw-r--r--data/maps/objects/KantoPokecenter22F.asm21
-rw-r--r--data/maps/objects/KantoPokecenter2F.asm21
-rw-r--r--data/maps/objects/KantoRedsHouse.asm21
-rw-r--r--data/maps/objects/KantoSchool.asm24
-rw-r--r--data/maps/objects/KantoSilphCo.asm21
-rw-r--r--data/maps/objects/KantoUnusedArea.asm17
-rw-r--r--data/maps/objects/KantoViridianHouse.asm21
-rw-r--r--data/maps/objects/MtFuji.asm18
-rw-r--r--data/maps/objects/MtFujiRoute.asm19
-rw-r--r--data/maps/objects/Newtype.asm42
-rw-r--r--data/maps/objects/NewtypeDiner.asm23
-rw-r--r--data/maps/objects/NewtypeDojo.asm24
-rw-r--r--data/maps/objects/NewtypeHouse1.asm20
-rw-r--r--data/maps/objects/NewtypeHouse2.asm20
-rw-r--r--data/maps/objects/NewtypeHouse3.asm20
-rw-r--r--data/maps/objects/NewtypeLeague1F.asm25
-rw-r--r--data/maps/objects/NewtypeLeague2F.asm23
-rw-r--r--data/maps/objects/NewtypeMart.asm22
-rw-r--r--data/maps/objects/NewtypePokecenter1F.asm24
-rw-r--r--data/maps/objects/NewtypePokecenter2F.asm21
-rw-r--r--data/maps/objects/NewtypeRoute.asm19
-rw-r--r--data/maps/objects/NewtypeRouteGate.asm21
-rw-r--r--data/maps/objects/NewtypeSailorHouse.asm20
-rw-r--r--data/maps/objects/North.asm29
-rw-r--r--data/maps/objects/NorthHouse1.asm20
-rw-r--r--data/maps/objects/NorthHouse2.asm20
-rw-r--r--data/maps/objects/NorthMart.asm22
-rw-r--r--data/maps/objects/NorthPokecenter1F.asm24
-rw-r--r--data/maps/objects/NorthPokecenter2F.asm21
-rw-r--r--data/maps/objects/Office1.asm17
-rw-r--r--data/maps/objects/Office2.asm17
-rw-r--r--data/maps/objects/Office3.asm17
-rw-r--r--data/maps/objects/OldCity.asm50
-rw-r--r--data/maps/objects/OldCityBillsHouse.asm26
-rw-r--r--data/maps/objects/OldCityGym.asm27
-rw-r--r--data/maps/objects/OldCityHouse.asm26
-rw-r--r--data/maps/objects/OldCityKurtsHouse.asm25
-rw-r--r--data/maps/objects/OldCityMart.asm23
-rw-r--r--data/maps/objects/OldCityMuseum.asm25
-rw-r--r--data/maps/objects/OldCityPokecenter1F.asm25
-rw-r--r--data/maps/objects/OldCityPokecenter2F.asm26
-rw-r--r--data/maps/objects/OldCityPokecenterBattle.asm20
-rw-r--r--data/maps/objects/OldCityPokecenterTimeMachine.asm21
-rw-r--r--data/maps/objects/OldCityPokecenterTrade.asm20
-rw-r--r--data/maps/objects/OldCitySchool.asm29
-rw-r--r--data/maps/objects/OldCityTower1F.asm27
-rw-r--r--data/maps/objects/OldCityTower2F.asm25
-rw-r--r--data/maps/objects/OldCityTower3F.asm25
-rw-r--r--data/maps/objects/OldCityTower4F.asm25
-rw-r--r--data/maps/objects/OldCityTower5F.asm22
-rw-r--r--data/maps/objects/PlayerHouse1F.asm26
-rw-r--r--data/maps/objects/PlayerHouse2F.asm25
-rw-r--r--data/maps/objects/PowerPlant1.asm17
-rw-r--r--data/maps/objects/PowerPlant2.asm17
-rw-r--r--data/maps/objects/PowerPlant3.asm17
-rw-r--r--data/maps/objects/PowerPlant4.asm17
-rw-r--r--data/maps/objects/Prince.asm19
-rw-r--r--data/maps/objects/PrinceRoute.asm19
-rw-r--r--data/maps/objects/Route15.asm26
-rw-r--r--data/maps/objects/Route15Pokecenter1F.asm24
-rw-r--r--data/maps/objects/Route15Pokecenter2F.asm18
-rw-r--r--data/maps/objects/Route18.asm22
-rw-r--r--data/maps/objects/Route18Pokecenter1F.asm24
-rw-r--r--data/maps/objects/Route18Pokecenter2F.asm18
-rw-r--r--data/maps/objects/Route1Gate1F.asm24
-rw-r--r--data/maps/objects/Route1Gate2F.asm22
-rw-r--r--data/maps/objects/Route1P1.asm25
-rw-r--r--data/maps/objects/Route1P2.asm26
-rw-r--r--data/maps/objects/Route2.asm27
-rw-r--r--data/maps/objects/Route2Gate1F.asm24
-rw-r--r--data/maps/objects/Route2Gate2F.asm22
-rw-r--r--data/maps/objects/Route2House.asm26
-rw-r--r--data/maps/objects/RouteSilentEast.asm20
-rw-r--r--data/maps/objects/RouteSilentEastGate.asm21
-rw-r--r--data/maps/objects/RuinsOfAlphEntrance.asm17
-rw-r--r--data/maps/objects/RuinsOfAlphMain.asm17
-rw-r--r--data/maps/objects/ShizukanaOka.asm35
-rw-r--r--data/maps/objects/SilentHill.asm34
-rw-r--r--data/maps/objects/SilentHillHouse.asm27
-rw-r--r--data/maps/objects/SilentHillLabBack.asm29
-rw-r--r--data/maps/objects/SilentHillLabFront.asm46
-rw-r--r--data/maps/objects/SilentHillPokecenter.asm25
-rw-r--r--data/maps/objects/SlowpokeWellEntrance.asm17
-rw-r--r--data/maps/objects/SlowpokeWellMain.asm17
-rw-r--r--data/maps/objects/South.asm38
-rw-r--r--data/maps/objects/SouthHouse1.asm20
-rw-r--r--data/maps/objects/SouthHouse2.asm20
-rw-r--r--data/maps/objects/SouthMart.asm22
-rw-r--r--data/maps/objects/SouthPokecenter1F.asm24
-rw-r--r--data/maps/objects/SouthPokecenter2F.asm21
-rw-r--r--data/maps/objects/Stand.asm48
-rw-r--r--data/maps/objects/StandHouse.asm20
-rw-r--r--data/maps/objects/StandLab.asm20
-rw-r--r--data/maps/objects/StandLeague1F.asm25
-rw-r--r--data/maps/objects/StandLeague2F.asm23
-rw-r--r--data/maps/objects/StandMart.asm22
-rw-r--r--data/maps/objects/StandOffice.asm22
-rw-r--r--data/maps/objects/StandPokecenter1F.asm24
-rw-r--r--data/maps/objects/StandPokecenter2F.asm21
-rw-r--r--data/maps/objects/StandRocketHouse1F.asm21
-rw-r--r--data/maps/objects/StandRocketHouse2F.asm19
-rw-r--r--data/maps/objects/StandRoute.asm21
-rw-r--r--data/maps/objects/StandRouteGateKanto.asm21
-rw-r--r--data/maps/objects/Sugar.asm29
-rw-r--r--data/maps/objects/SugarHouse.asm22
-rw-r--r--data/maps/objects/SugarHouse2.asm20
-rw-r--r--data/maps/objects/SugarMart.asm22
-rw-r--r--data/maps/objects/SugarPokecenter1F.asm24
-rw-r--r--data/maps/objects/SugarPokecenter2F.asm21
-rw-r--r--data/maps/objects/SugarRoute.asm21
-rw-r--r--data/maps/objects/SugarRouteGate.asm21
-rw-r--r--data/maps/objects/UnusedMap13.asm9
-rw-r--r--data/maps/objects/West.asm45
-rw-r--r--data/maps/objects/WestGym.asm27
-rw-r--r--data/maps/objects/WestHouse1.asm26
-rw-r--r--data/maps/objects/WestHouse2.asm26
-rw-r--r--data/maps/objects/WestMart1F.asm24
-rw-r--r--data/maps/objects/WestMart2F.asm40
-rw-r--r--data/maps/objects/WestMart3F.asm37
-rw-r--r--data/maps/objects/WestMart4F.asm37
-rw-r--r--data/maps/objects/WestMart5F.asm25
-rw-r--r--data/maps/objects/WestMart6F.asm26
-rw-r--r--data/maps/objects/WestMartElevator.asm19
-rw-r--r--data/maps/objects/WestPokecenter1F.asm25
-rw-r--r--data/maps/objects/WestPokecenter2F.asm22
-rw-r--r--data/maps/objects/WestRadioTower1F.asm25
-rw-r--r--data/maps/objects/WestRadioTower2F.asm27
-rw-r--r--data/maps/objects/WestRadioTower3F.asm28
-rw-r--r--data/maps/objects/WestRadioTower4F.asm29
-rw-r--r--data/maps/objects/WestRadioTower5F.asm29
-rw-r--r--data/maps/objects/WestRocketRaidedHouse.asm31
228 files changed, 5295 insertions, 0 deletions
diff --git a/data/maps/objects/Baadon.asm b/data/maps/objects/Baadon.asm
new file mode 100644
index 0000000..f33b6cd
--- /dev/null
+++ b/data/maps/objects/Baadon.asm
@@ -0,0 +1,36 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Baadon.asm", ROMX
+
+ map_attributes Baadon, BAADON, NORTH | SOUTH | EAST
+ connection north, FontoRoute4, FONTO_ROUTE_4, 0, 0, 10
+ connection south, BaadonRoute1, BAADON_ROUTE_1, 0, 0, 10
+ connection east, BaadonRoute2, BAADON_ROUTE_2, 0, 0, 9
+
+Baadon_MapEvents::
+ dw $4000 ; unknown
+
+ db 9 ; warp events
+ warp_event 3, 4, 1, BAADON_MART, wOverworldMapBlocks + 50
+ warp_event 15, 4, 1, BAADON_POKECENTER_1F, wOverworldMapBlocks + 56
+ warp_event 4, 9, 1, BAADON_HOUSE_1, wOverworldMapBlocks + 83
+ warp_event 3, 13, 1, BAADON_WALLPAPER_HOUSE, wOverworldMapBlocks + 114
+ warp_event 9, 13, 1, BAADON_HOUSE_2, wOverworldMapBlocks + 117
+ warp_event 14, 15, 1, BAADON_LEAGUE_1F, wOverworldMapBlocks + 136
+ warp_event 15, 15, 2, BAADON_LEAGUE_1F, wOverworldMapBlocks + 136
+ warp_event 8, 5, 1, FONTO_ROUTE_GATE_2, wOverworldMapBlocks + 53
+ warp_event 9, 5, 2, FONTO_ROUTE_GATE_2, wOverworldMapBlocks + 53
+
+ db 4 ; bg events
+ bg_event 4, 4, 0, 1
+ bg_event 16, 4, 0, 2
+ bg_event 11, 10, 0, 3
+ bg_event 6, 14, 0, 4
+
+ db 3 ; person events
+ object_event 14, 8, SPRITE_SUPER_NERD, FACE_UP, 2, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 9, SPRITE_YOUNGSTER, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 14, SPRITE_TWIN, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+Baadon_Blocks::
+INCBIN "maps/Baadon.blk"
diff --git a/data/maps/objects/BaadonHouse1.asm b/data/maps/objects/BaadonHouse1.asm
new file mode 100644
index 0000000..a4ecf0b
--- /dev/null
+++ b/data/maps/objects/BaadonHouse1.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BaadonHouse1.asm", ROMX
+
+ map_attributes BaadonHouse1, BAADON_HOUSE_1, 0
+
+BaadonHouse1_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 3, 7, 3, BAADON, wOverworldMapBlocks + 42
+ warp_event 4, 7, 3, BAADON, wOverworldMapBlocks + 43
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 2, 3, SPRITE_ELDER, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+BaadonHouse1_Blocks::
+INCBIN "maps/BaadonHouse1.blk"
diff --git a/data/maps/objects/BaadonHouse2.asm b/data/maps/objects/BaadonHouse2.asm
new file mode 100644
index 0000000..cac8df5
--- /dev/null
+++ b/data/maps/objects/BaadonHouse2.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BaadonHouse2.asm", ROMX
+
+ map_attributes BaadonHouse2, BAADON_HOUSE_2, 0
+
+BaadonHouse2_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 5, BAADON, wOverworldMapBlocks + 47
+ warp_event 5, 7, 5, BAADON, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 7, 5, SPRITE_GRANNY, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+BaadonHouse2_Blocks::
+INCBIN "maps/BaadonHouse2.blk"
diff --git a/data/maps/objects/BaadonLeague1F.asm b/data/maps/objects/BaadonLeague1F.asm
new file mode 100644
index 0000000..828fa54
--- /dev/null
+++ b/data/maps/objects/BaadonLeague1F.asm
@@ -0,0 +1,25 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BaadonLeague1F.asm", ROMX
+
+ map_attributes BaadonLeague1F, BAADON_LEAGUE_1F, 0
+
+BaadonLeague1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 3, 15, 6, BAADON, wOverworldMapBlocks + 82
+ warp_event 4, 15, 7, BAADON, wOverworldMapBlocks + 83
+ warp_event 7, 1, 1, BAADON_LEAGUE_2F, wOverworldMapBlocks + 14
+
+ db 0 ; bg events
+
+ db 5 ; person events
+ object_event 2, 5, SPRITE_YOUNGSTER, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 7, SPRITE_LASS, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 9, SPRITE_BUG_CATCHER_BOY, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 3, 1, SPRITE_24, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 6, SPRITE_COOLTRAINER_F, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+
+BaadonLeague1F_Blocks::
+INCBIN "maps/BaadonLeague1F.blk"
diff --git a/data/maps/objects/BaadonLeague2F.asm b/data/maps/objects/BaadonLeague2F.asm
new file mode 100644
index 0000000..7021383
--- /dev/null
+++ b/data/maps/objects/BaadonLeague2F.asm
@@ -0,0 +1,23 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BaadonLeague2F.asm", ROMX
+
+ map_attributes BaadonLeague2F, BAADON_LEAGUE_2F, 0
+
+BaadonLeague2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 7, 15, 3, BAADON_LEAGUE_1F, wOverworldMapBlocks + 92
+
+ db 0 ; bg events
+
+ db 5 ; person events
+ object_event 4, 1, SPRITE_YOUNGSTER, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 1, 2, SPRITE_24, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 1, SPRITE_COOLTRAINER_F, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 9, SPRITE_24, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 11, SPRITE_COOLTRAINER_F, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+BaadonLeague2F_Blocks::
+INCBIN "maps/BaadonLeague2F.blk"
diff --git a/data/maps/objects/BaadonMart.asm b/data/maps/objects/BaadonMart.asm
new file mode 100644
index 0000000..2492e69
--- /dev/null
+++ b/data/maps/objects/BaadonMart.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BaadonMart.asm", ROMX
+
+ map_attributes BaadonMart, BAADON_MART, 0
+
+BaadonMart_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 1, BAADON, wOverworldMapBlocks + 59
+ warp_event 5, 7, 1, BAADON, wOverworldMapBlocks + 59
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 1, 3, SPRITE_CLERK, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 5, SPRITE_YOUNGSTER, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 1, SPRITE_TEACHER, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+BaadonMart_Blocks::
+INCBIN "maps/BaadonMart.blk"
diff --git a/data/maps/objects/BaadonPokecenter1F.asm b/data/maps/objects/BaadonPokecenter1F.asm
new file mode 100644
index 0000000..aa9f38d
--- /dev/null
+++ b/data/maps/objects/BaadonPokecenter1F.asm
@@ -0,0 +1,23 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BaadonPokecenter1F.asm", ROMX
+
+ map_attributes BaadonPokecenter1F, BAADON_POKECENTER_1F, 0
+
+BaadonPokecenter1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 5, 7, 2, BAADON, wOverworldMapBlocks + 59
+ warp_event 6, 7, 2, BAADON, wOverworldMapBlocks + 60
+ warp_event 0, 7, 1, BAADON_POKECENTER_2F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 14, 6, SPRITE_FISHER, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 5, SPRITE_GENTLEMAN, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 1, SPRITE_POKEFAN_M, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+BaadonPokecenter1F_Blocks::
+INCBIN "maps/BaadonPokecenter1F.blk"
diff --git a/data/maps/objects/BaadonPokecenter2F.asm b/data/maps/objects/BaadonPokecenter2F.asm
new file mode 100644
index 0000000..4f865a5
--- /dev/null
+++ b/data/maps/objects/BaadonPokecenter2F.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BaadonPokecenter2F.asm", ROMX
+
+ map_attributes BaadonPokecenter2F, BAADON_POKECENTER_2F, 0
+
+BaadonPokecenter2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 0, 7, 3, BAADON_POKECENTER_1F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 5, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 7, SPRITE_FISHING_GURU, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+BaadonPokecenter2F_Blocks::
+INCBIN "maps/BaadonPokecenter2F.blk"
diff --git a/data/maps/objects/BaadonRoute1.asm b/data/maps/objects/BaadonRoute1.asm
new file mode 100644
index 0000000..eddd672
--- /dev/null
+++ b/data/maps/objects/BaadonRoute1.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BaadonRoute1.asm", ROMX
+
+ map_attributes BaadonRoute1, BAADON_ROUTE_1, NORTH | SOUTH
+ connection north, Baadon, BAADON, 0, 0, 10
+ connection south, West, WEST, -3, 2, 16
+
+BaadonRoute1_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 12, 48, 3, BAADON_ROUTE_GATE_WEST, wOverworldMapBlocks + 407
+ warp_event 13, 48, 4, BAADON_ROUTE_GATE_WEST, wOverworldMapBlocks + 407
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+BaadonRoute1_Blocks::
+INCBIN "maps/BaadonRoute1.blk"
diff --git a/data/maps/objects/BaadonRoute2.asm b/data/maps/objects/BaadonRoute2.asm
new file mode 100644
index 0000000..93c9a9f
--- /dev/null
+++ b/data/maps/objects/BaadonRoute2.asm
@@ -0,0 +1,19 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BaadonRoute2.asm", ROMX
+
+ map_attributes BaadonRoute2, BAADON_ROUTE_2, WEST | EAST
+ connection west, Baadon, BAADON, 0, 0, 9
+ connection east, BaadonRoute3, BAADON_ROUTE_3, 0, 0, 12
+
+BaadonRoute2_MapEvents::
+ dw $4000 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+BaadonRoute2_Blocks::
+INCBIN "maps/BaadonRoute2.blk"
diff --git a/data/maps/objects/BaadonRoute3.asm b/data/maps/objects/BaadonRoute3.asm
new file mode 100644
index 0000000..06b491f
--- /dev/null
+++ b/data/maps/objects/BaadonRoute3.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BaadonRoute3.asm", ROMX
+
+ map_attributes BaadonRoute3, BAADON_ROUTE_3, SOUTH | WEST
+ connection south, Route15, ROUTE_15, 0, 0, 13
+ connection west, BaadonRoute2, BAADON_ROUTE_2, 0, 0, 9
+
+BaadonRoute3_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 8, 30, 3, BAADON_ROUTE_GATE_NEWTYPE, wOverworldMapBlocks + 261
+ warp_event 9, 30, 4, BAADON_ROUTE_GATE_NEWTYPE, wOverworldMapBlocks + 261
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+BaadonRoute3_Blocks::
+INCBIN "maps/BaadonRoute3.blk"
diff --git a/data/maps/objects/BaadonRouteGateNewtype.asm b/data/maps/objects/BaadonRouteGateNewtype.asm
new file mode 100644
index 0000000..6fcbe21
--- /dev/null
+++ b/data/maps/objects/BaadonRouteGateNewtype.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BaadonRouteGateNewtype.asm", ROMX
+
+ map_attributes BaadonRouteGateNewtype, BAADON_ROUTE_GATE_NEWTYPE, 0
+
+BaadonRouteGateNewtype_MapEvents::
+ dw $4000 ; unknown
+
+ db 4 ; warp events
+ warp_event 4, 7, 1, ROUTE_15, wOverworldMapBlocks + 47
+ warp_event 5, 7, 2, ROUTE_15, wOverworldMapBlocks + 47
+ warp_event 4, 0, 1, BAADON_ROUTE_3, wOverworldMapBlocks + 14
+ warp_event 5, 0, 2, BAADON_ROUTE_3, wOverworldMapBlocks + 14
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+BaadonRouteGateNewtype_Blocks::
+INCBIN "maps/BaadonRouteGateNewtype.blk"
diff --git a/data/maps/objects/BaadonRouteGateWest.asm b/data/maps/objects/BaadonRouteGateWest.asm
new file mode 100644
index 0000000..7eac9a2
--- /dev/null
+++ b/data/maps/objects/BaadonRouteGateWest.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BaadonRouteGateWest.asm", ROMX
+
+ map_attributes BaadonRouteGateWest, BAADON_ROUTE_GATE_WEST, 0
+
+BaadonRouteGateWest_MapEvents::
+ dw $4000 ; unknown
+
+ db 4 ; warp events
+ warp_event 4, 7, 11, WEST, wOverworldMapBlocks + 47
+ warp_event 5, 7, 12, WEST, wOverworldMapBlocks + 47
+ warp_event 4, 0, 1, BAADON_ROUTE_1, wOverworldMapBlocks + 14
+ warp_event 5, 0, 2, BAADON_ROUTE_1, wOverworldMapBlocks + 14
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+BaadonRouteGateWest_Blocks::
+INCBIN "maps/BaadonRouteGateWest.blk"
diff --git a/data/maps/objects/BaadonWallpaperHouse.asm b/data/maps/objects/BaadonWallpaperHouse.asm
new file mode 100644
index 0000000..56e809c
--- /dev/null
+++ b/data/maps/objects/BaadonWallpaperHouse.asm
@@ -0,0 +1,19 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BaadonWallpaperHouse.asm", ROMX
+
+ map_attributes BaadonWallpaperHouse, BAADON_WALLPAPER_HOUSE, 0
+
+BaadonWallpaperHouse_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 2, 7, 4, BAADON, wOverworldMapBlocks + 42
+ warp_event 3, 7, 4, BAADON, wOverworldMapBlocks + 42
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+BaadonWallpaperHouse_Blocks::
+INCBIN "maps/BaadonWallpaperHouse.blk"
diff --git a/data/maps/objects/BullForest.asm b/data/maps/objects/BullForest.asm
new file mode 100644
index 0000000..9c7c4f3
--- /dev/null
+++ b/data/maps/objects/BullForest.asm
@@ -0,0 +1,36 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BullForest.asm", ROMX
+
+ map_attributes BullForest, BULL_FOREST, NORTH | SOUTH | WEST
+ connection north, BullForestRoute3, BULL_FOREST_ROUTE_3, 5, 0, 10
+ connection south, BullForestRoute2, BULL_FOREST_ROUTE_2, 5, 0, 10
+ connection west, BullForestRoute1, BULL_FOREST_ROUTE_1, 9, 0, 9
+
+BullForest_MapEvents::
+ dw $4000 ; unknown
+
+ db 8 ; warp events
+ warp_event 25, 6, 1, BULL_MART, wOverworldMapBlocks + 117
+ warp_event 9, 9, 1, BULL_HOUSE_1, wOverworldMapBlocks + 135
+ warp_event 27, 11, 1, BULL_HOUSE_2, wOverworldMapBlocks + 170
+ warp_event 19, 13, 1, BULL_HOUSE_3, wOverworldMapBlocks + 192
+ warp_event 13, 18, 1, BULL_POKECENTER_1F, wOverworldMapBlocks + 267
+ warp_event 26, 21, 1, BULL_LEAGUE_1F, wOverworldMapBlocks + 300
+ warp_event 27, 21, 2, BULL_LEAGUE_1F, wOverworldMapBlocks + 300
+ warp_event 3, 22, 1, BULL_HOUSE_4, wOverworldMapBlocks + 314
+
+ db 3 ; bg events
+ bg_event 26, 6, 0, 1
+ bg_event 2, 16, 0, 2
+ bg_event 14, 18, 0, 3
+
+ db 5 ; person events
+ object_event 21, 9, SPRITE_TWIN, SLOW_STEP_DOWN, 3, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 11, 12, SPRITE_YOUNGSTER, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 7, 16, SPRITE_GRANNY, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 20, 19, SPRITE_TEACHER, FACE_UP, 2, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 20, 29, SPRITE_BUG_CATCHER_BOY, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+
+BullForest_Blocks::
+INCBIN "maps/BullForest.blk"
diff --git a/data/maps/objects/BullForestRoute1.asm b/data/maps/objects/BullForestRoute1.asm
new file mode 100644
index 0000000..ad22484
--- /dev/null
+++ b/data/maps/objects/BullForestRoute1.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BullForestRoute1.asm", ROMX
+
+ map_attributes BullForestRoute1, BULL_FOREST_ROUTE_1, SOUTH | EAST
+ connection south, Route18, ROUTE_18, 0, 0, 10
+ connection east, BullForest, BULL_FOREST, -3, 6, 12
+
+BullForestRoute1_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 8, 12, 3, NEWTYPE_ROUTE_GATE, wOverworldMapBlocks + 222
+ warp_event 9, 12, 4, NEWTYPE_ROUTE_GATE, wOverworldMapBlocks + 222
+ warp_event 9, 5, 1, BULL_FOREST_ROUTE_1_HOUSE, wOverworldMapBlocks + 98
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+BullForestRoute1_Blocks::
+INCBIN "maps/BullForestRoute1.blk"
diff --git a/data/maps/objects/BullForestRoute1House.asm b/data/maps/objects/BullForestRoute1House.asm
new file mode 100644
index 0000000..e253222
--- /dev/null
+++ b/data/maps/objects/BullForestRoute1House.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BullForestRoute1House.asm", ROMX
+
+ map_attributes BullForestRoute1House, BULL_FOREST_ROUTE_1_HOUSE, 0
+
+BullForestRoute1House_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 3, BULL_FOREST_ROUTE_1, wOverworldMapBlocks + 47
+ warp_event 5, 7, 3, BULL_FOREST_ROUTE_1, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 1, 5, SPRITE_COOLTRAINER_F, SLOW_STEP_DOWN, 1, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+BullForestRoute1House_Blocks::
+INCBIN "maps/BullForestRoute1House.blk"
diff --git a/data/maps/objects/BullForestRoute2.asm b/data/maps/objects/BullForestRoute2.asm
new file mode 100644
index 0000000..615d539
--- /dev/null
+++ b/data/maps/objects/BullForestRoute2.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BullForestRoute2.asm", ROMX
+
+ map_attributes BullForestRoute2, BULL_FOREST_ROUTE_2, NORTH | SOUTH
+ connection north, BullForest, BULL_FOREST, -3, 2, 16
+ connection south, Stand, STAND, -3, 7, 13
+
+BullForestRoute2_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 8, 48, 3, BULL_FOREST_ROUTE_GATE_STAND, wOverworldMapBlocks + 405
+ warp_event 9, 48, 4, BULL_FOREST_ROUTE_GATE_STAND, wOverworldMapBlocks + 405
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+BullForestRoute2_Blocks::
+INCBIN "maps/BullForestRoute2.blk"
diff --git a/data/maps/objects/BullForestRoute3.asm b/data/maps/objects/BullForestRoute3.asm
new file mode 100644
index 0000000..1db4c57
--- /dev/null
+++ b/data/maps/objects/BullForestRoute3.asm
@@ -0,0 +1,19 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BullForestRoute3.asm", ROMX
+
+ map_attributes BullForestRoute3, BULL_FOREST_ROUTE_3, NORTH | SOUTH
+ connection north, North, NORTH, 0, 0, 10
+ connection south, BullForest, BULL_FOREST, -3, 2, 16
+
+BullForestRoute3_MapEvents::
+ dw $4000 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+BullForestRoute3_Blocks::
+INCBIN "maps/BullForestRoute3.blk"
diff --git a/data/maps/objects/BullForestRouteGateStand.asm b/data/maps/objects/BullForestRouteGateStand.asm
new file mode 100644
index 0000000..ee252b2
--- /dev/null
+++ b/data/maps/objects/BullForestRouteGateStand.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BullForestRouteGateStand.asm", ROMX
+
+ map_attributes BullForestRouteGateStand, BULL_FOREST_ROUTE_GATE_STAND, 0
+
+BullForestRouteGateStand_MapEvents::
+ dw $4000 ; unknown
+
+ db 4 ; warp events
+ warp_event 4, 7, 9, STAND, wOverworldMapBlocks + 47
+ warp_event 5, 7, 10, STAND, wOverworldMapBlocks + 47
+ warp_event 4, 0, 1, BULL_FOREST_ROUTE_2, wOverworldMapBlocks + 14
+ warp_event 5, 0, 2, BULL_FOREST_ROUTE_2, wOverworldMapBlocks + 14
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+BullForestRouteGateStand_Blocks::
+INCBIN "maps/BullForestRouteGateStand.blk"
diff --git a/data/maps/objects/BullHouse1.asm b/data/maps/objects/BullHouse1.asm
new file mode 100644
index 0000000..430fea2
--- /dev/null
+++ b/data/maps/objects/BullHouse1.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BullHouse1.asm", ROMX
+
+ map_attributes BullHouse1, BULL_HOUSE_1, 0
+
+BullHouse1_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 3, 7, 2, BULL_FOREST, wOverworldMapBlocks + 42
+ warp_event 4, 7, 2, BULL_FOREST, wOverworldMapBlocks + 43
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 2, 3, SPRITE_KIKUKO, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+BullHouse1_Blocks::
+INCBIN "maps/BullHouse1.blk"
diff --git a/data/maps/objects/BullHouse2.asm b/data/maps/objects/BullHouse2.asm
new file mode 100644
index 0000000..286b8e8
--- /dev/null
+++ b/data/maps/objects/BullHouse2.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BullHouse2.asm", ROMX
+
+ map_attributes BullHouse2, BULL_HOUSE_2, 0
+
+BullHouse2_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 3, BULL_FOREST, wOverworldMapBlocks + 47
+ warp_event 5, 7, 3, BULL_FOREST, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 8, 4, SPRITE_GRANNY, FACE_RIGHT, 0, 1, -1, -1, 0, 0, 0, 0, 0, 0
+
+BullHouse2_Blocks::
+INCBIN "maps/BullHouse2.blk"
diff --git a/data/maps/objects/BullHouse3.asm b/data/maps/objects/BullHouse3.asm
new file mode 100644
index 0000000..6979863
--- /dev/null
+++ b/data/maps/objects/BullHouse3.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BullHouse3.asm", ROMX
+
+ map_attributes BullHouse3, BULL_HOUSE_3, 0
+
+BullHouse3_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 4, BULL_FOREST, wOverworldMapBlocks + 47
+ warp_event 5, 7, 4, BULL_FOREST, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 4, 3, SPRITE_GRAMPS, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+BullHouse3_Blocks::
+INCBIN "maps/BullHouse3.blk"
diff --git a/data/maps/objects/BullHouse4.asm b/data/maps/objects/BullHouse4.asm
new file mode 100644
index 0000000..9bf3763
--- /dev/null
+++ b/data/maps/objects/BullHouse4.asm
@@ -0,0 +1,19 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BullHouse4.asm", ROMX
+
+ map_attributes BullHouse4, BULL_HOUSE_4, 0
+
+BullHouse4_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 8, BULL_FOREST, wOverworldMapBlocks + 47
+ warp_event 5, 7, 8, BULL_FOREST, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+BullHouse4_Blocks::
+INCBIN "maps/BullHouse4.blk"
diff --git a/data/maps/objects/BullLeague1F.asm b/data/maps/objects/BullLeague1F.asm
new file mode 100644
index 0000000..f7e51d0
--- /dev/null
+++ b/data/maps/objects/BullLeague1F.asm
@@ -0,0 +1,25 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BullLeague1F.asm", ROMX
+
+ map_attributes BullLeague1F, BULL_LEAGUE_1F, 0
+
+BullLeague1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 3, 15, 6, BULL_FOREST, wOverworldMapBlocks + 82
+ warp_event 4, 15, 7, BULL_FOREST, wOverworldMapBlocks + 83
+ warp_event 7, 1, 1, BULL_LEAGUE_2F, wOverworldMapBlocks + 14
+
+ db 0 ; bg events
+
+ db 5 ; person events
+ object_event 2, 5, SPRITE_YOUNGSTER, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 7, SPRITE_LASS, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 9, SPRITE_BUG_CATCHER_BOY, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 3, 1, SPRITE_24, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 6, SPRITE_COOLTRAINER_F, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+
+BullLeague1F_Blocks::
+INCBIN "maps/BullLeague1F.blk"
diff --git a/data/maps/objects/BullLeague2F.asm b/data/maps/objects/BullLeague2F.asm
new file mode 100644
index 0000000..cb825a1
--- /dev/null
+++ b/data/maps/objects/BullLeague2F.asm
@@ -0,0 +1,23 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BullLeague2F.asm", ROMX
+
+ map_attributes BullLeague2F, BULL_LEAGUE_2F, 0
+
+BullLeague2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 7, 15, 3, BULL_LEAGUE_1F, wOverworldMapBlocks + 92
+
+ db 0 ; bg events
+
+ db 5 ; person events
+ object_event 4, 4, SPRITE_LASS, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 3, 9, SPRITE_COOLTRAINER_F, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 9, SPRITE_COOLTRAINER_F, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 11, SPRITE_COOLTRAINER_F, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 7, 11, SPRITE_COOLTRAINER_F, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+BullLeague2F_Blocks::
+INCBIN "maps/BullLeague2F.blk"
diff --git a/data/maps/objects/BullMart.asm b/data/maps/objects/BullMart.asm
new file mode 100644
index 0000000..14cbb05
--- /dev/null
+++ b/data/maps/objects/BullMart.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BullMart.asm", ROMX
+
+ map_attributes BullMart, BULL_MART, 0
+
+BullMart_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 1, BULL_FOREST, wOverworldMapBlocks + 59
+ warp_event 5, 7, 1, BULL_FOREST, wOverworldMapBlocks + 59
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 1, 3, SPRITE_CLERK, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 5, SPRITE_FISHER, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 1, SPRITE_YOUNGSTER, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+BullMart_Blocks::
+INCBIN "maps/BullMart.blk"
diff --git a/data/maps/objects/BullPokecenter1F.asm b/data/maps/objects/BullPokecenter1F.asm
new file mode 100644
index 0000000..ca32a16
--- /dev/null
+++ b/data/maps/objects/BullPokecenter1F.asm
@@ -0,0 +1,24 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BullPokecenter1F.asm", ROMX
+
+ map_attributes BullPokecenter1F, BULL_POKECENTER_1F, 0
+
+BullPokecenter1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 5, 7, 5, BULL_FOREST, wOverworldMapBlocks + 59
+ warp_event 6, 7, 5, BULL_FOREST, wOverworldMapBlocks + 60
+ warp_event 0, 7, 1, BULL_POKECENTER_2F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 4 ; person events
+ object_event 5, 1, SPRITE_NURSE, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 6, SPRITE_YOUNGSTER, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 5, SPRITE_24, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 1, SPRITE_GRANNY, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+BullPokecenter1F_Blocks::
+INCBIN "maps/BullPokecenter1F.blk"
diff --git a/data/maps/objects/BullPokecenter2F.asm b/data/maps/objects/BullPokecenter2F.asm
new file mode 100644
index 0000000..0fc3b4b
--- /dev/null
+++ b/data/maps/objects/BullPokecenter2F.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/BullPokecenter2F.asm", ROMX
+
+ map_attributes BullPokecenter2F, BULL_POKECENTER_2F, 0
+
+BullPokecenter2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 0, 7, 3, BULL_POKECENTER_1F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 5, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 7, SPRITE_FISHING_GURU, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+BullPokecenter2F_Blocks::
+INCBIN "maps/BullPokecenter2F.blk"
diff --git a/data/maps/objects/CaveMinecarts1.asm b/data/maps/objects/CaveMinecarts1.asm
new file mode 100644
index 0000000..922c9f2
--- /dev/null
+++ b/data/maps/objects/CaveMinecarts1.asm
@@ -0,0 +1,17 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/CaveMinecarts1.asm", ROMX
+
+ map_attributes CaveMinecarts1, CAVE_MINECARTS_1, 0
+
+CaveMinecarts1_MapEvents::
+ dw $0 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+CaveMinecarts1_Blocks::
+INCBIN "maps/CaveMinecarts1.blk"
diff --git a/data/maps/objects/CaveMinecarts2.asm b/data/maps/objects/CaveMinecarts2.asm
new file mode 100644
index 0000000..b878892
--- /dev/null
+++ b/data/maps/objects/CaveMinecarts2.asm
@@ -0,0 +1,17 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/CaveMinecarts2.asm", ROMX
+
+ map_attributes CaveMinecarts2, CAVE_MINECARTS_2, 0
+
+CaveMinecarts2_MapEvents::
+ dw $0 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+CaveMinecarts2_Blocks::
+INCBIN "maps/CaveMinecarts2.blk"
diff --git a/data/maps/objects/CaveMinecarts3.asm b/data/maps/objects/CaveMinecarts3.asm
new file mode 100644
index 0000000..bae9ae6
--- /dev/null
+++ b/data/maps/objects/CaveMinecarts3.asm
@@ -0,0 +1,17 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/CaveMinecarts3.asm", ROMX
+
+ map_attributes CaveMinecarts3, CAVE_MINECARTS_3, 0
+
+CaveMinecarts3_MapEvents::
+ dw $0 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+CaveMinecarts3_Blocks::
+INCBIN "maps/CaveMinecarts3.blk"
diff --git a/data/maps/objects/CaveMinecarts4.asm b/data/maps/objects/CaveMinecarts4.asm
new file mode 100644
index 0000000..955d7a3
--- /dev/null
+++ b/data/maps/objects/CaveMinecarts4.asm
@@ -0,0 +1,17 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/CaveMinecarts4.asm", ROMX
+
+ map_attributes CaveMinecarts4, CAVE_MINECARTS_4, 0
+
+CaveMinecarts4_MapEvents::
+ dw $0 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+CaveMinecarts4_Blocks::
+INCBIN "maps/CaveMinecarts4.blk"
diff --git a/data/maps/objects/CaveMinecarts5.asm b/data/maps/objects/CaveMinecarts5.asm
new file mode 100644
index 0000000..5e64a3d
--- /dev/null
+++ b/data/maps/objects/CaveMinecarts5.asm
@@ -0,0 +1,17 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/CaveMinecarts5.asm", ROMX
+
+ map_attributes CaveMinecarts5, CAVE_MINECARTS_5, 0
+
+CaveMinecarts5_MapEvents::
+ dw $0 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+CaveMinecarts5_Blocks::
+INCBIN "maps/CaveMinecarts5.blk"
diff --git a/data/maps/objects/CaveMinecarts6.asm b/data/maps/objects/CaveMinecarts6.asm
new file mode 100644
index 0000000..ca84386
--- /dev/null
+++ b/data/maps/objects/CaveMinecarts6.asm
@@ -0,0 +1,17 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/CaveMinecarts6.asm", ROMX
+
+ map_attributes CaveMinecarts6, CAVE_MINECARTS_6, 0
+
+CaveMinecarts6_MapEvents::
+ dw $0 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+CaveMinecarts6_Blocks::
+INCBIN "maps/CaveMinecarts6.blk"
diff --git a/data/maps/objects/CaveMinecarts7.asm b/data/maps/objects/CaveMinecarts7.asm
new file mode 100644
index 0000000..222f0c2
--- /dev/null
+++ b/data/maps/objects/CaveMinecarts7.asm
@@ -0,0 +1,17 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/CaveMinecarts7.asm", ROMX
+
+ map_attributes CaveMinecarts7, CAVE_MINECARTS_7, 0
+
+CaveMinecarts7_MapEvents::
+ dw $0 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+CaveMinecarts7_Blocks::
+INCBIN "maps/CaveMinecarts7.blk"
diff --git a/data/maps/objects/Fonto.asm b/data/maps/objects/Fonto.asm
new file mode 100644
index 0000000..4e9da3c
--- /dev/null
+++ b/data/maps/objects/Fonto.asm
@@ -0,0 +1,34 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Fonto.asm", ROMX
+
+ map_attributes Fonto, FONTO, NORTH | WEST | EAST
+ connection north, FontoRoute2, FONTO_ROUTE_2, 0, 0, 10
+ connection west, FontoRoute1, FONTO_ROUTE_1, 0, 0, 9
+ connection east, FontoRoute3, FONTO_ROUTE_3, 0, 0, 9
+
+Fonto_MapEvents::
+ dw $4000 ; unknown
+
+ db 5 ; warp events
+ warp_event 4, 3, 1, FONTO_ROCKET_HOUSE, wOverworldMapBlocks + 35
+ warp_event 15, 4, 1, FONTO_MART, wOverworldMapBlocks + 56
+ warp_event 3, 7, 1, FONTO_HOUSE, wOverworldMapBlocks + 66
+ warp_event 3, 12, 1, FONTO_POKECENTER_1F, wOverworldMapBlocks + 114
+ warp_event 16, 13, 1, FONTO_LAB, wOverworldMapBlocks + 121
+
+ db 5 ; bg events
+ bg_event 15, 4, 0, 1
+ bg_event 14, 6, 0, 2
+ bg_event 4, 12, 0, 3
+ bg_event 6, 12, 0, 4
+ bg_event 10, 12, 0, 5
+
+ db 4 ; person events
+ object_event 2, 4, SPRITE_36, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 5, SPRITE_SIDON, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 5, 14, SPRITE_YOUNGSTER, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 16, 8, SPRITE_TWIN, FACE_UP, 1, 1, -1, -1, 0, 0, 0, 0, 0, 0
+
+Fonto_Blocks::
+INCBIN "maps/Fonto.blk"
diff --git a/data/maps/objects/FontoHouse.asm b/data/maps/objects/FontoHouse.asm
new file mode 100644
index 0000000..05c8a5e
--- /dev/null
+++ b/data/maps/objects/FontoHouse.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/FontoHouse.asm", ROMX
+
+ map_attributes FontoHouse, FONTO_HOUSE, 0
+
+FontoHouse_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 3, FONTO, wOverworldMapBlocks + 47
+ warp_event 5, 7, 3, FONTO, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 8, 4, SPRITE_GENTLEMAN, FACE_RIGHT, 0, 1, -1, -1, 0, 0, 0, 0, 0, 0
+
+FontoHouse_Blocks::
+INCBIN "maps/FontoHouse.blk"
diff --git a/data/maps/objects/FontoLab.asm b/data/maps/objects/FontoLab.asm
new file mode 100644
index 0000000..59fa933
--- /dev/null
+++ b/data/maps/objects/FontoLab.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/FontoLab.asm", ROMX
+
+ map_attributes FontoLab, FONTO_LAB, 0
+
+FontoLab_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 3, 7, 5, FONTO, wOverworldMapBlocks + 46
+ warp_event 4, 7, 5, FONTO, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 2 ; person events
+ object_event 2, 2, SPRITE_SCIENTIST, SLOW_STEP_DOWN, 1, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 8, 5, SPRITE_SCIENTIST, SLOW_STEP_DOWN, 1, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+FontoLab_Blocks::
+INCBIN "maps/FontoLab.blk"
diff --git a/data/maps/objects/FontoMart.asm b/data/maps/objects/FontoMart.asm
new file mode 100644
index 0000000..3241f57
--- /dev/null
+++ b/data/maps/objects/FontoMart.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/FontoMart.asm", ROMX
+
+ map_attributes FontoMart, FONTO_MART, 0
+
+FontoMart_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 2, FONTO, wOverworldMapBlocks + 59
+ warp_event 5, 7, 2, FONTO, wOverworldMapBlocks + 59
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 1, 3, SPRITE_CLERK, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 5, SPRITE_GIRL, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 1, SPRITE_POKEFAN_M, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+FontoMart_Blocks::
+INCBIN "maps/FontoMart.blk"
diff --git a/data/maps/objects/FontoPokecenter1F.asm b/data/maps/objects/FontoPokecenter1F.asm
new file mode 100644
index 0000000..aefac44
--- /dev/null
+++ b/data/maps/objects/FontoPokecenter1F.asm
@@ -0,0 +1,24 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/FontoPokecenter1F.asm", ROMX
+
+ map_attributes FontoPokecenter1F, FONTO_POKECENTER_1F, 0
+
+FontoPokecenter1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 5, 7, 4, FONTO, wOverworldMapBlocks + 59
+ warp_event 6, 7, 4, FONTO, wOverworldMapBlocks + 60
+ warp_event 0, 7, 1, FONTO_POKECENTER_2F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 4 ; person events
+ object_event 5, 1, SPRITE_NURSE, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 6, SPRITE_GENTLEMAN, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 5, SPRITE_24, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 1, SPRITE_YOUNGSTER, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+FontoPokecenter1F_Blocks::
+INCBIN "maps/FontoPokecenter1F.blk"
diff --git a/data/maps/objects/FontoPokecenter2F.asm b/data/maps/objects/FontoPokecenter2F.asm
new file mode 100644
index 0000000..025df9f
--- /dev/null
+++ b/data/maps/objects/FontoPokecenter2F.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/FontoPokecenter2F.asm", ROMX
+
+ map_attributes FontoPokecenter2F, FONTO_POKECENTER_2F, 0
+
+FontoPokecenter2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 0, 7, 3, FONTO_POKECENTER_1F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 5, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 7, SPRITE_FISHING_GURU, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+FontoPokecenter2F_Blocks::
+INCBIN "maps/FontoPokecenter2F.blk"
diff --git a/data/maps/objects/FontoRocketHouse.asm b/data/maps/objects/FontoRocketHouse.asm
new file mode 100644
index 0000000..b97cb16
--- /dev/null
+++ b/data/maps/objects/FontoRocketHouse.asm
@@ -0,0 +1,23 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/FontoRocketHouse.asm", ROMX
+
+ map_attributes FontoRocketHouse, FONTO_ROCKET_HOUSE, 0
+
+FontoRocketHouse_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 12, 7, 1, FONTO, wOverworldMapBlocks + 63
+ warp_event 13, 7, 1, FONTO, wOverworldMapBlocks + 63
+
+ db 0 ; bg events
+
+ db 4 ; person events
+ object_event 5, 4, SPRITE_36, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 2, SPRITE_ROCKET_F, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 2, SPRITE_36, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 12, 2, SPRITE_POPPO, SLOW_STEP_DOWN, 1, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+FontoRocketHouse_Blocks::
+INCBIN "maps/FontoRocketHouse.blk"
diff --git a/data/maps/objects/FontoRoute1.asm b/data/maps/objects/FontoRoute1.asm
new file mode 100644
index 0000000..6218d81
--- /dev/null
+++ b/data/maps/objects/FontoRoute1.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/FontoRoute1.asm", ROMX
+
+ map_attributes FontoRoute1, FONTO_ROUTE_1, WEST | EAST
+ connection west, South, SOUTH, 0, 0, 12
+ connection east, Fonto, FONTO, 0, 0, 9
+
+FontoRoute1_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 6, 9, 3, FONTO_ROUTE_GATE_1, wOverworldMapBlocks + 209
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+FontoRoute1_Blocks::
+INCBIN "maps/FontoRoute1.blk"
diff --git a/data/maps/objects/FontoRoute2.asm b/data/maps/objects/FontoRoute2.asm
new file mode 100644
index 0000000..1c79180
--- /dev/null
+++ b/data/maps/objects/FontoRoute2.asm
@@ -0,0 +1,19 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/FontoRoute2.asm", ROMX
+
+ map_attributes FontoRoute2, FONTO_ROUTE_2, SOUTH | WEST
+ connection south, Fonto, FONTO, 0, 0, 10
+ connection west, FontoRoute6, FONTO_ROUTE_6, 0, 0, 9
+
+FontoRoute2_MapEvents::
+ dw $4000 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+FontoRoute2_Blocks::
+INCBIN "maps/FontoRoute2.blk"
diff --git a/data/maps/objects/FontoRoute3.asm b/data/maps/objects/FontoRoute3.asm
new file mode 100644
index 0000000..36dc909
--- /dev/null
+++ b/data/maps/objects/FontoRoute3.asm
@@ -0,0 +1,19 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/FontoRoute3.asm", ROMX
+
+ map_attributes FontoRoute3, FONTO_ROUTE_3, WEST | EAST
+ connection west, Fonto, FONTO, 0, 0, 9
+ connection east, FontoRoute4, FONTO_ROUTE_4, 0, 0, 12
+
+FontoRoute3_MapEvents::
+ dw $4000 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+FontoRoute3_Blocks::
+INCBIN "maps/FontoRoute3.blk"
diff --git a/data/maps/objects/FontoRoute4.asm b/data/maps/objects/FontoRoute4.asm
new file mode 100644
index 0000000..bed27cb
--- /dev/null
+++ b/data/maps/objects/FontoRoute4.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/FontoRoute4.asm", ROMX
+
+ map_attributes FontoRoute4, FONTO_ROUTE_4, SOUTH | WEST
+ connection south, Baadon, BAADON, 0, 0, 10
+ connection west, FontoRoute3, FONTO_ROUTE_3, 0, 0, 9
+
+FontoRoute4_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 8, 30, 3, FONTO_ROUTE_GATE_2, wOverworldMapBlocks + 261
+ warp_event 9, 30, 4, FONTO_ROUTE_GATE_2, wOverworldMapBlocks + 261
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+FontoRoute4_Blocks::
+INCBIN "maps/FontoRoute4.blk"
diff --git a/data/maps/objects/FontoRoute5.asm b/data/maps/objects/FontoRoute5.asm
new file mode 100644
index 0000000..441a773
--- /dev/null
+++ b/data/maps/objects/FontoRoute5.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/FontoRoute5.asm", ROMX
+
+ map_attributes FontoRoute5, FONTO_ROUTE_5, SOUTH | EAST
+ connection south, South, SOUTH, -3, 7, 13
+ connection east, FontoRoute6, FONTO_ROUTE_6, 0, 0, 9
+
+FontoRoute5_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 8, 30, 3, FONTO_ROUTE_GATE_3, wOverworldMapBlocks + 261
+ warp_event 9, 30, 4, FONTO_ROUTE_GATE_3, wOverworldMapBlocks + 261
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+FontoRoute5_Blocks::
+INCBIN "maps/FontoRoute5.blk"
diff --git a/data/maps/objects/FontoRoute6.asm b/data/maps/objects/FontoRoute6.asm
new file mode 100644
index 0000000..c3320e7
--- /dev/null
+++ b/data/maps/objects/FontoRoute6.asm
@@ -0,0 +1,19 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/FontoRoute6.asm", ROMX
+
+ map_attributes FontoRoute6, FONTO_ROUTE_6, WEST | EAST
+ connection west, FontoRoute5, FONTO_ROUTE_5, 0, 0, 12
+ connection east, FontoRoute2, FONTO_ROUTE_2, 0, 0, 12
+
+FontoRoute6_MapEvents::
+ dw $4000 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+FontoRoute6_Blocks::
+INCBIN "maps/FontoRoute6.blk"
diff --git a/data/maps/objects/FontoRouteGate1.asm b/data/maps/objects/FontoRouteGate1.asm
new file mode 100644
index 0000000..2ef0c71
--- /dev/null
+++ b/data/maps/objects/FontoRouteGate1.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/FontoRouteGate1.asm", ROMX
+
+ map_attributes FontoRouteGate1, FONTO_ROUTE_GATE_1, 0
+
+FontoRouteGate1_MapEvents::
+ dw $4000 ; unknown
+
+ db 4 ; warp events
+ warp_event 0, 7, 7, SOUTH, wOverworldMapBlocks + 45
+ warp_event 1, 7, 7, SOUTH, wOverworldMapBlocks + 45
+ warp_event 8, 7, 1, FONTO_ROUTE_1, wOverworldMapBlocks + 49
+ warp_event 9, 7, 1, FONTO_ROUTE_1, wOverworldMapBlocks + 49
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+FontoRouteGate1_Blocks::
+INCBIN "maps/FontoRouteGate1.blk"
diff --git a/data/maps/objects/FontoRouteGate2.asm b/data/maps/objects/FontoRouteGate2.asm
new file mode 100644
index 0000000..bf69bf8
--- /dev/null
+++ b/data/maps/objects/FontoRouteGate2.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/FontoRouteGate2.asm", ROMX
+
+ map_attributes FontoRouteGate2, FONTO_ROUTE_GATE_2, 0
+
+FontoRouteGate2_MapEvents::
+ dw $4000 ; unknown
+
+ db 4 ; warp events
+ warp_event 4, 7, 8, BAADON, wOverworldMapBlocks + 47
+ warp_event 5, 7, 9, BAADON, wOverworldMapBlocks + 47
+ warp_event 4, 0, 1, FONTO_ROUTE_4, wOverworldMapBlocks + 14
+ warp_event 5, 0, 2, FONTO_ROUTE_4, wOverworldMapBlocks + 14
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+FontoRouteGate2_Blocks::
+INCBIN "maps/FontoRouteGate2.blk"
diff --git a/data/maps/objects/FontoRouteGate3.asm b/data/maps/objects/FontoRouteGate3.asm
new file mode 100644
index 0000000..18af188
--- /dev/null
+++ b/data/maps/objects/FontoRouteGate3.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/FontoRouteGate3.asm", ROMX
+
+ map_attributes FontoRouteGate3, FONTO_ROUTE_GATE_3, 0
+
+FontoRouteGate3_MapEvents::
+ dw $4000 ; unknown
+
+ db 4 ; warp events
+ warp_event 4, 7, 5, SOUTH, wOverworldMapBlocks + 47
+ warp_event 5, 7, 6, SOUTH, wOverworldMapBlocks + 47
+ warp_event 4, 0, 1, FONTO_ROUTE_5, wOverworldMapBlocks + 14
+ warp_event 5, 0, 2, FONTO_ROUTE_5, wOverworldMapBlocks + 14
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+FontoRouteGate3_Blocks::
+INCBIN "maps/FontoRouteGate3.blk"
diff --git a/data/maps/objects/Haiteku.asm b/data/maps/objects/Haiteku.asm
new file mode 100644
index 0000000..2205ced
--- /dev/null
+++ b/data/maps/objects/Haiteku.asm
@@ -0,0 +1,40 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Haiteku.asm", ROMX
+
+ map_attributes Haiteku, HAITEKU, WEST
+ connection west, HaitekuWestRoute, HAITEKU_WEST_ROUTE, 0, 0, 9
+
+Haiteku_MapEvents::
+ dw $4000 ; unknown
+
+ db 9 ; warp events
+ warp_event 31, 10, 1, HAITEKU_POKECENTER_1F, wOverworldMapBlocks + 172
+ warp_event 10, 11, 1, HAITEKU_LEAGUE_1F, wOverworldMapBlocks + 162
+ warp_event 11, 11, 2, HAITEKU_LEAGUE_1F, wOverworldMapBlocks + 162
+ warp_event 31, 16, 1, HAITEKU_MART, wOverworldMapBlocks + 250
+ warp_event 7, 17, 1, HAITEKU_HOUSE_1, wOverworldMapBlocks + 238
+ warp_event 15, 17, 1, HAITEKU_HOUSE_2, wOverworldMapBlocks + 242
+ warp_event 33, 20, 1, HAITEKU_IMPOSTER_OAK_HOUSE, wOverworldMapBlocks + 303
+ warp_event 6, 27, 1, HAITEKU_AQUARIUM_1F, wOverworldMapBlocks + 368
+ warp_event 7, 27, 2, HAITEKU_AQUARIUM_1F, wOverworldMapBlocks + 368
+
+ db 8 ; bg events
+ bg_event 24, 7, 0, 1
+ bg_event 12, 12, 0, 2
+ bg_event 32, 10, 0, 3
+ bg_event 10, 17, 0, 4
+ bg_event 32, 16, 0, 5
+ bg_event 10, 27, 0, 6
+ bg_event 30, 25, 0, 7
+ bg_event 24, 28, 0, 8
+
+ db 5 ; person events
+ object_event 22, 15, SPRITE_TWIN, SLOW_STEP_DOWN, 1, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 23, 14, SPRITE_PIPPI, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 23, 24, SPRITE_SAILOR, FACE_UP, 2, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 26, 10, SPRITE_SAILOR, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 14, SPRITE_GENTLEMAN, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+Haiteku_Blocks::
+INCBIN "maps/Haiteku.blk"
diff --git a/data/maps/objects/HaitekuAquarium1F.asm b/data/maps/objects/HaitekuAquarium1F.asm
new file mode 100644
index 0000000..5b7a1de
--- /dev/null
+++ b/data/maps/objects/HaitekuAquarium1F.asm
@@ -0,0 +1,23 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/HaitekuAquarium1F.asm", ROMX
+
+ map_attributes HaitekuAquarium1F, HAITEKU_AQUARIUM_1F, 0
+
+HaitekuAquarium1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 12, 7, 8, HAITEKU, wOverworldMapBlocks + 63
+ warp_event 13, 7, 9, HAITEKU, wOverworldMapBlocks + 63
+ warp_event 0, 7, 1, HAITEKU_AQUARIUM_2F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 15, 5, SPRITE_RECEPTIONIST, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 12, 2, SPRITE_YOUNGSTER, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 5, SPRITE_LASS, FACE_UP, 1, 1, -1, -1, 0, 0, 0, 0, 0, 0
+
+HaitekuAquarium1F_Blocks::
+INCBIN "maps/HaitekuAquarium1F.blk"
diff --git a/data/maps/objects/HaitekuAquarium2F.asm b/data/maps/objects/HaitekuAquarium2F.asm
new file mode 100644
index 0000000..61a377d
--- /dev/null
+++ b/data/maps/objects/HaitekuAquarium2F.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/HaitekuAquarium2F.asm", ROMX
+
+ map_attributes HaitekuAquarium2F, HAITEKU_AQUARIUM_2F, 0
+
+HaitekuAquarium2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 0, 7, 3, HAITEKU_AQUARIUM_1F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 2 ; person events
+ object_event 7, 6, SPRITE_POKEFAN_M, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 4, SPRITE_TEACHER, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+HaitekuAquarium2F_Blocks::
+INCBIN "maps/HaitekuAquarium2F.blk"
diff --git a/data/maps/objects/HaitekuHouse1.asm b/data/maps/objects/HaitekuHouse1.asm
new file mode 100644
index 0000000..d359c1c
--- /dev/null
+++ b/data/maps/objects/HaitekuHouse1.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/HaitekuHouse1.asm", ROMX
+
+ map_attributes HaitekuHouse1, HAITEKU_HOUSE_1, 0
+
+HaitekuHouse1_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 5, HAITEKU, wOverworldMapBlocks + 47
+ warp_event 5, 7, 5, HAITEKU, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 7, 3, SPRITE_FISHING_GURU, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+HaitekuHouse1_Blocks::
+INCBIN "maps/HaitekuHouse1.blk"
diff --git a/data/maps/objects/HaitekuHouse2.asm b/data/maps/objects/HaitekuHouse2.asm
new file mode 100644
index 0000000..e0df087
--- /dev/null
+++ b/data/maps/objects/HaitekuHouse2.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/HaitekuHouse2.asm", ROMX
+
+ map_attributes HaitekuHouse2, HAITEKU_HOUSE_2, 0
+
+HaitekuHouse2_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 6, HAITEKU, wOverworldMapBlocks + 47
+ warp_event 5, 7, 6, HAITEKU, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 7, 3, SPRITE_SAILOR, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+HaitekuHouse2_Blocks::
+INCBIN "maps/HaitekuHouse2.blk"
diff --git a/data/maps/objects/HaitekuImposterOakHouse.asm b/data/maps/objects/HaitekuImposterOakHouse.asm
new file mode 100644
index 0000000..87ce9b3
--- /dev/null
+++ b/data/maps/objects/HaitekuImposterOakHouse.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/HaitekuImposterOakHouse.asm", ROMX
+
+ map_attributes HaitekuImposterOakHouse, HAITEKU_IMPOSTER_OAK_HOUSE, 0
+
+HaitekuImposterOakHouse_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 7, HAITEKU, wOverworldMapBlocks + 47
+ warp_event 5, 7, 7, HAITEKU, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 2 ; person events
+ object_event 7, 3, SPRITE_EVIL_OKIDO, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 1, 2, SPRITE_POKEFAN_F, SLOW_STEP_DOWN, 1, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+HaitekuImposterOakHouse_Blocks::
+INCBIN "maps/HaitekuImposterOakHouse.blk"
diff --git a/data/maps/objects/HaitekuLeague1F.asm b/data/maps/objects/HaitekuLeague1F.asm
new file mode 100644
index 0000000..c00342d
--- /dev/null
+++ b/data/maps/objects/HaitekuLeague1F.asm
@@ -0,0 +1,25 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/HaitekuLeague1F.asm", ROMX
+
+ map_attributes HaitekuLeague1F, HAITEKU_LEAGUE_1F, 0
+
+HaitekuLeague1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 3, 15, 2, HAITEKU, wOverworldMapBlocks + 82
+ warp_event 4, 15, 3, HAITEKU, wOverworldMapBlocks + 83
+ warp_event 7, 1, 1, HAITEKU_LEAGUE_2F, wOverworldMapBlocks + 14
+
+ db 0 ; bg events
+
+ db 5 ; person events
+ object_event 2, 5, SPRITE_YOUNGSTER, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 7, SPRITE_LASS, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 9, SPRITE_BUG_CATCHER_BOY, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 3, 1, SPRITE_24, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 6, SPRITE_COOLTRAINER_F, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+
+HaitekuLeague1F_Blocks::
+INCBIN "maps/HaitekuLeague1F.blk"
diff --git a/data/maps/objects/HaitekuLeague2F.asm b/data/maps/objects/HaitekuLeague2F.asm
new file mode 100644
index 0000000..5eadc64
--- /dev/null
+++ b/data/maps/objects/HaitekuLeague2F.asm
@@ -0,0 +1,23 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/HaitekuLeague2F.asm", ROMX
+
+ map_attributes HaitekuLeague2F, HAITEKU_LEAGUE_2F, 0
+
+HaitekuLeague2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 7, 15, 3, HAITEKU_LEAGUE_1F, wOverworldMapBlocks + 92
+
+ db 0 ; bg events
+
+ db 5 ; person events
+ object_event 4, 1, SPRITE_LASS, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 3, 6, SPRITE_24, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 8, 12, SPRITE_COOLTRAINER_F, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 10, SPRITE_24, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 7, 7, SPRITE_COOLTRAINER_F, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+HaitekuLeague2F_Blocks::
+INCBIN "maps/HaitekuLeague2F.blk"
diff --git a/data/maps/objects/HaitekuMart.asm b/data/maps/objects/HaitekuMart.asm
new file mode 100644
index 0000000..5570978
--- /dev/null
+++ b/data/maps/objects/HaitekuMart.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/HaitekuMart.asm", ROMX
+
+ map_attributes HaitekuMart, HAITEKU_MART, 0
+
+HaitekuMart_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 4, HAITEKU, wOverworldMapBlocks + 51
+ warp_event 5, 7, 4, HAITEKU, wOverworldMapBlocks + 51
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 1, 3, SPRITE_CLERK, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 5, SPRITE_POKEFAN_M, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 1, SPRITE_SAILOR, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+HaitekuMart_Blocks::
+INCBIN "maps/HaitekuMart.blk"
diff --git a/data/maps/objects/HaitekuPokecenter1F.asm b/data/maps/objects/HaitekuPokecenter1F.asm
new file mode 100644
index 0000000..e17a4aa
--- /dev/null
+++ b/data/maps/objects/HaitekuPokecenter1F.asm
@@ -0,0 +1,24 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/HaitekuPokecenter1F.asm", ROMX
+
+ map_attributes HaitekuPokecenter1F, HAITEKU_POKECENTER_1F, 0
+
+HaitekuPokecenter1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 5, 7, 1, HAITEKU, wOverworldMapBlocks + 59
+ warp_event 6, 7, 1, HAITEKU, wOverworldMapBlocks + 60
+ warp_event 0, 7, 1, HAITEKU_POKECENTER_2F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 4 ; person events
+ object_event 5, 1, SPRITE_NURSE, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 6, SPRITE_GENTLEMAN, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 5, SPRITE_FISHER, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 1, SPRITE_SAILOR, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+HaitekuPokecenter1F_Blocks::
+INCBIN "maps/HaitekuPokecenter1F.blk"
diff --git a/data/maps/objects/HaitekuPokecenter2F.asm b/data/maps/objects/HaitekuPokecenter2F.asm
new file mode 100644
index 0000000..ef3abc9
--- /dev/null
+++ b/data/maps/objects/HaitekuPokecenter2F.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/HaitekuPokecenter2F.asm", ROMX
+
+ map_attributes HaitekuPokecenter2F, HAITEKU_POKECENTER_2F, 0
+
+HaitekuPokecenter2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 0, 7, 3, HAITEKU_POKECENTER_1F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 5, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 7, SPRITE_FISHING_GURU, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+HaitekuPokecenter2F_Blocks::
+INCBIN "maps/HaitekuPokecenter2F.blk"
diff --git a/data/maps/objects/HaitekuWestRoute.asm b/data/maps/objects/HaitekuWestRoute.asm
new file mode 100644
index 0000000..6facf73
--- /dev/null
+++ b/data/maps/objects/HaitekuWestRoute.asm
@@ -0,0 +1,19 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/HaitekuWestRoute.asm", ROMX
+
+ map_attributes HaitekuWestRoute, HAITEKU_WEST_ROUTE, WEST | EAST
+ connection west, HaitekuWestRouteOcean, HAITEKU_WEST_ROUTE_OCEAN, -3, 15, 12
+ connection east, Haiteku, HAITEKU, 0, 0, 12
+
+HaitekuWestRoute_MapEvents::
+ dw $4000 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+HaitekuWestRoute_Blocks::
+INCBIN "maps/HaitekuWestRoute.blk"
diff --git a/data/maps/objects/HaitekuWestRouteGate.asm b/data/maps/objects/HaitekuWestRouteGate.asm
new file mode 100644
index 0000000..77774c2
--- /dev/null
+++ b/data/maps/objects/HaitekuWestRouteGate.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/HaitekuWestRouteGate.asm", ROMX
+
+ map_attributes HaitekuWestRouteGate, HAITEKU_WEST_ROUTE_GATE, 0
+
+HaitekuWestRouteGate_MapEvents::
+ dw $4000 ; unknown
+
+ db 4 ; warp events
+ warp_event 4, 7, 1, HAITEKU_WEST_ROUTE_OCEAN, wOverworldMapBlocks + 47
+ warp_event 5, 7, 2, HAITEKU_WEST_ROUTE_OCEAN, wOverworldMapBlocks + 47
+ warp_event 4, 0, 8, SOUTH, wOverworldMapBlocks + 14
+ warp_event 5, 0, 9, SOUTH, wOverworldMapBlocks + 14
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+HaitekuWestRouteGate_Blocks::
+INCBIN "maps/HaitekuWestRouteGate.blk"
diff --git a/data/maps/objects/HaitekuWestRouteOcean.asm b/data/maps/objects/HaitekuWestRouteOcean.asm
new file mode 100644
index 0000000..9a4ab79
--- /dev/null
+++ b/data/maps/objects/HaitekuWestRouteOcean.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/HaitekuWestRouteOcean.asm", ROMX
+
+ map_attributes HaitekuWestRouteOcean, HAITEKU_WEST_ROUTE_OCEAN, NORTH | EAST
+ connection north, South, SOUTH, -3, 7, 13
+ connection east, HaitekuWestRoute, HAITEKU_WEST_ROUTE, 18, 0, 9
+
+HaitekuWestRouteOcean_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 10, 9, 1, HAITEKU_WEST_ROUTE_GATE, wOverworldMapBlocks + 86
+ warp_event 11, 9, 2, HAITEKU_WEST_ROUTE_GATE, wOverworldMapBlocks + 86
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+HaitekuWestRouteOcean_Blocks::
+INCBIN "maps/HaitekuWestRouteOcean.blk"
diff --git a/data/maps/objects/Kanto.asm b/data/maps/objects/Kanto.asm
new file mode 100644
index 0000000..60ddd71
--- /dev/null
+++ b/data/maps/objects/Kanto.asm
@@ -0,0 +1,61 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Kanto.asm", ROMX
+
+ map_attributes Kanto, KANTO, WEST | EAST
+ connection west, RouteSilentEast, ROUTE_SILENT_EAST, 9, 0, 9
+ connection east, KantoEastRoute, KANTO_EAST_ROUTE, 9, 0, 9
+
+Kanto_MapEvents::
+ dw $4000 ; unknown
+
+ db 30 ; warp events
+ warp_event 40, 3, 1, KANTO_CERULEAN_HOUSE, wOverworldMapBlocks + 93
+ warp_event 13, 4, 1, KANTO_POKECENTER_1F, wOverworldMapBlocks + 115
+ warp_event 4, 5, 1, KANTO_LEAGUE_1F, wOverworldMapBlocks + 111
+ warp_event 5, 5, 2, KANTO_LEAGUE_1F, wOverworldMapBlocks + 111
+ warp_event 51, 11, 1, KANTO_LAVENDER_HOUSE, wOverworldMapBlocks + 242
+ warp_event 14, 17, 1, KANTO_CELADON_MART_1F, wOverworldMapBlocks + 332
+ warp_event 15, 17, 1, KANTO_CELADON_MART_1F, wOverworldMapBlocks + 332
+ warp_event 3, 18, 1, KANTO_MART, wOverworldMapBlocks + 362
+ warp_event 22, 19, 1, KANTO_GAMEFREAK_HQ_1, wOverworldMapBlocks + 372
+ warp_event 23, 19, 2, KANTO_GAMEFREAK_HQ_1, wOverworldMapBlocks + 372
+ warp_event 30, 19, 1, KANTO_SILPH_CO, wOverworldMapBlocks + 376
+ warp_event 31, 19, 2, KANTO_SILPH_CO, wOverworldMapBlocks + 376
+ warp_event 16, 23, 1, KANTO_VIRIDIAN_HOUSE, wOverworldMapBlocks + 441
+ warp_event 29, 23, 1, KANTO_GAME_CORNER, wOverworldMapBlocks + 447
+ warp_event 34, 23, 1, KANTO_GAME_CORNER_PRIZES, wOverworldMapBlocks + 450
+ warp_event 40, 23, 1, KANTO_DINER, wOverworldMapBlocks + 453
+ warp_event 52, 23, 1, KANTO_SCHOOL, wOverworldMapBlocks + 459
+ warp_event 53, 23, 2, KANTO_SCHOOL, wOverworldMapBlocks + 459
+ warp_event 38, 29, 1, KANTO_HOSPITAL, wOverworldMapBlocks + 560
+ warp_event 49, 30, 1, KANTO_POKECENTER_2_1F, wOverworldMapBlocks + 601
+ warp_event 5, 38, 1, KANTO_REDS_HOUSE, wOverworldMapBlocks + 723
+ warp_event 13, 38, 1, KANTO_GREENS_HOUSE_1F, wOverworldMapBlocks + 727
+ warp_event 39, 38, 1, KANTO_ELDERS_HOUSE, wOverworldMapBlocks + 740
+ warp_event 12, 43, 1, KANTO_OAKS_LAB, wOverworldMapBlocks + 799
+ warp_event 13, 43, 2, KANTO_OAKS_LAB, wOverworldMapBlocks + 799
+ warp_event 52, 45, 1, KANTO_LEAGUE_2_1F, wOverworldMapBlocks + 855
+ warp_event 53, 45, 2, KANTO_LEAGUE_2_1F, wOverworldMapBlocks + 855
+ warp_event 45, 46, 1, KANTO_FISHING_GURU, wOverworldMapBlocks + 887
+ warp_event 6, 27, 3, ROUTE_SILENT_EAST_GATE, wOverworldMapBlocks + 508
+ warp_event 21, 13, 5, KANTO_GAMEFREAK_HQ_1, wOverworldMapBlocks + 263
+
+ db 12 ; bg events
+ bg_event 14, 4, 0, 1
+ bg_event 42, 4, 0, 2
+ bg_event 54, 8, 0, 3
+ bg_event 4, 18, 0, 4
+ bg_event 18, 18, 0, 5
+ bg_event 26, 19, 0, 6
+ bg_event 46, 18, 0, 7
+ bg_event 8, 38, 0, 8
+ bg_event 16, 38, 0, 9
+ bg_event 6, 41, 0, 10
+ bg_event 12, 45, 0, 11
+ bg_event 50, 30, 0, 12
+
+ db 0 ; person events
+
+Kanto_Blocks::
+INCBIN "maps/Kanto.blk"
diff --git a/data/maps/objects/KantoCeladonElevator.asm b/data/maps/objects/KantoCeladonElevator.asm
new file mode 100644
index 0000000..391ba9e
--- /dev/null
+++ b/data/maps/objects/KantoCeladonElevator.asm
@@ -0,0 +1,19 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoCeladonElevator.asm", ROMX
+
+ map_attributes KantoCeladonElevator, KANTO_CELADON_ELEVATOR, 0
+
+KantoCeladonElevator_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 1, 3, 4, KANTO_CELADON_MART_1F, wOverworldMapBlocks + 17
+ warp_event 2, 3, 4, KANTO_CELADON_MART_1F, wOverworldMapBlocks + 18
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+KantoCeladonElevator_Blocks::
+INCBIN "maps/KantoCeladonElevator.blk"
diff --git a/data/maps/objects/KantoCeladonMart1F.asm b/data/maps/objects/KantoCeladonMart1F.asm
new file mode 100644
index 0000000..e97c1a2
--- /dev/null
+++ b/data/maps/objects/KantoCeladonMart1F.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoCeladonMart1F.asm", ROMX
+
+ map_attributes KantoCeladonMart1F, KANTO_CELADON_MART_1F, 0
+
+KantoCeladonMart1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 4 ; warp events
+ warp_event 13, 7, 6, KANTO, wOverworldMapBlocks + 63
+ warp_event 14, 7, 7, KANTO, wOverworldMapBlocks + 64
+ warp_event 15, 0, 2, KANTO_CELADON_MART_2F, wOverworldMapBlocks + 22
+ warp_event 2, 0, 2, KANTO_CELADON_ELEVATOR, wOverworldMapBlocks + 16
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 7, 1, SPRITE_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoCeladonMart1F_Blocks::
+INCBIN "maps/KantoCeladonMart1F.blk"
diff --git a/data/maps/objects/KantoCeladonMart2F.asm b/data/maps/objects/KantoCeladonMart2F.asm
new file mode 100644
index 0000000..306e463
--- /dev/null
+++ b/data/maps/objects/KantoCeladonMart2F.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoCeladonMart2F.asm", ROMX
+
+ map_attributes KantoCeladonMart2F, KANTO_CELADON_MART_2F, 0
+
+KantoCeladonMart2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 12, 0, 1, KANTO_CELADON_MART_3F, wOverworldMapBlocks + 21
+ warp_event 15, 0, 3, KANTO_CELADON_MART_1F, wOverworldMapBlocks + 22
+ warp_event 2, 0, 1, KANTO_CELADON_ELEVATOR, wOverworldMapBlocks + 16
+
+ db 0 ; bg events
+
+ db 2 ; person events
+ object_event 14, 5, SPRITE_CLERK, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 5, 5, SPRITE_LASS, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoCeladonMart2F_Blocks::
+INCBIN "maps/KantoCeladonMart2F.blk"
diff --git a/data/maps/objects/KantoCeladonMart3F.asm b/data/maps/objects/KantoCeladonMart3F.asm
new file mode 100644
index 0000000..86ed78e
--- /dev/null
+++ b/data/maps/objects/KantoCeladonMart3F.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoCeladonMart3F.asm", ROMX
+
+ map_attributes KantoCeladonMart3F, KANTO_CELADON_MART_3F, 0
+
+KantoCeladonMart3F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 12, 0, 1, KANTO_CELADON_MART_2F, wOverworldMapBlocks + 21
+ warp_event 15, 0, 2, KANTO_CELADON_MART_4F, wOverworldMapBlocks + 22
+ warp_event 2, 0, 1, KANTO_CELADON_ELEVATOR, wOverworldMapBlocks + 16
+
+ db 0 ; bg events
+
+ db 2 ; person events
+ object_event 6, 1, SPRITE_CLERK, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 3, 5, SPRITE_GIRL, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoCeladonMart3F_Blocks::
+INCBIN "maps/KantoCeladonMart3F.blk"
diff --git a/data/maps/objects/KantoCeladonMart4F.asm b/data/maps/objects/KantoCeladonMart4F.asm
new file mode 100644
index 0000000..db1c820
--- /dev/null
+++ b/data/maps/objects/KantoCeladonMart4F.asm
@@ -0,0 +1,23 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoCeladonMart4F.asm", ROMX
+
+ map_attributes KantoCeladonMart4F, KANTO_CELADON_MART_4F, 0
+
+KantoCeladonMart4F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 12, 0, 1, KANTO_CELADON_MART_5F, wOverworldMapBlocks + 21
+ warp_event 15, 0, 2, KANTO_CELADON_MART_3F, wOverworldMapBlocks + 22
+ warp_event 2, 0, 1, KANTO_CELADON_ELEVATOR, wOverworldMapBlocks + 16
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 14, 5, SPRITE_MEDIUM, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 8, 5, SPRITE_MEDIUM, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 5, SPRITE_MEDIUM, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoCeladonMart4F_Blocks::
+INCBIN "maps/KantoCeladonMart4F.blk"
diff --git a/data/maps/objects/KantoCeladonMart5F.asm b/data/maps/objects/KantoCeladonMart5F.asm
new file mode 100644
index 0000000..b783876
--- /dev/null
+++ b/data/maps/objects/KantoCeladonMart5F.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoCeladonMart5F.asm", ROMX
+
+ map_attributes KantoCeladonMart5F, KANTO_CELADON_MART_5F, 0
+
+KantoCeladonMart5F_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 13, 0, 1, KANTO_CELADON_MART_4F, wOverworldMapBlocks + 21
+ warp_event 2, 0, 1, KANTO_CELADON_ELEVATOR, wOverworldMapBlocks + 16
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 14, 5, SPRITE_CLERK, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 8, 3, SPRITE_SIDON, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 5, SPRITE_POPPO, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoCeladonMart5F_Blocks::
+INCBIN "maps/KantoCeladonMart5F.blk"
diff --git a/data/maps/objects/KantoCeruleanHouse.asm b/data/maps/objects/KantoCeruleanHouse.asm
new file mode 100644
index 0000000..93d6c59
--- /dev/null
+++ b/data/maps/objects/KantoCeruleanHouse.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoCeruleanHouse.asm", ROMX
+
+ map_attributes KantoCeruleanHouse, KANTO_CERULEAN_HOUSE, 0
+
+KantoCeruleanHouse_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 1, KANTO, wOverworldMapBlocks + 47
+ warp_event 5, 7, 1, KANTO, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 3, 3, SPRITE_FISHER, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoCeruleanHouse_Blocks::
+INCBIN "maps/KantoCeruleanHouse.blk"
diff --git a/data/maps/objects/KantoDiner.asm b/data/maps/objects/KantoDiner.asm
new file mode 100644
index 0000000..b161d29
--- /dev/null
+++ b/data/maps/objects/KantoDiner.asm
@@ -0,0 +1,19 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoDiner.asm", ROMX
+
+ map_attributes KantoDiner, KANTO_DINER, 0
+
+KantoDiner_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 16, KANTO, wOverworldMapBlocks + 47
+ warp_event 5, 7, 16, KANTO, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+KantoDiner_Blocks::
+INCBIN "maps/KantoDiner.blk"
diff --git a/data/maps/objects/KantoEastRoute.asm b/data/maps/objects/KantoEastRoute.asm
new file mode 100644
index 0000000..00bf8f2
--- /dev/null
+++ b/data/maps/objects/KantoEastRoute.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoEastRoute.asm", ROMX
+
+ map_attributes KantoEastRoute, KANTO_EAST_ROUTE, NORTH | WEST
+ connection north, StandRoute, STAND_ROUTE, 10, 0, 10
+ connection west, Kanto, KANTO, -3, 6, 15
+
+KantoEastRoute_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 28, 5, 1, STAND_ROUTE_GATE_KANTO, wOverworldMapBlocks + 93
+ warp_event 29, 5, 2, STAND_ROUTE_GATE_KANTO, wOverworldMapBlocks + 93
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+KantoEastRoute_Blocks::
+INCBIN "maps/KantoEastRoute.blk"
diff --git a/data/maps/objects/KantoEldersHouse.asm b/data/maps/objects/KantoEldersHouse.asm
new file mode 100644
index 0000000..7ea0b94
--- /dev/null
+++ b/data/maps/objects/KantoEldersHouse.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoEldersHouse.asm", ROMX
+
+ map_attributes KantoEldersHouse, KANTO_ELDERS_HOUSE, 0
+
+KantoEldersHouse_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 23, KANTO, wOverworldMapBlocks + 47
+ warp_event 5, 7, 23, KANTO, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 2 ; person events
+ object_event 7, 3, SPRITE_GRAMPS, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 1, 5, SPRITE_GRANNY, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoEldersHouse_Blocks::
+INCBIN "maps/KantoEldersHouse.blk"
diff --git a/data/maps/objects/KantoFishingGuru.asm b/data/maps/objects/KantoFishingGuru.asm
new file mode 100644
index 0000000..a5a2312
--- /dev/null
+++ b/data/maps/objects/KantoFishingGuru.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoFishingGuru.asm", ROMX
+
+ map_attributes KantoFishingGuru, KANTO_FISHING_GURU, 0
+
+KantoFishingGuru_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 3, 7, 28, KANTO, wOverworldMapBlocks + 46
+ warp_event 4, 7, 28, KANTO, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 4, 3, SPRITE_FISHING_GURU, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoFishingGuru_Blocks::
+INCBIN "maps/KantoFishingGuru.blk"
diff --git a/data/maps/objects/KantoGameCorner.asm b/data/maps/objects/KantoGameCorner.asm
new file mode 100644
index 0000000..424a77a
--- /dev/null
+++ b/data/maps/objects/KantoGameCorner.asm
@@ -0,0 +1,31 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoGameCorner.asm", ROMX
+
+ map_attributes KantoGameCorner, KANTO_GAME_CORNER, 0
+
+KantoGameCorner_MapEvents::
+ dw $4000 ; unknown
+
+ db 4 ; warp events
+ warp_event 8, 13, 14, KANTO, wOverworldMapBlocks + 117
+ warp_event 9, 13, 14, KANTO, wOverworldMapBlocks + 117
+ warp_event 10, 13, 14, KANTO, wOverworldMapBlocks + 118
+ warp_event 11, 13, 14, KANTO, wOverworldMapBlocks + 118
+
+ db 0 ; bg events
+
+ db 10 ; person events
+ object_event 3, 1, SPRITE_CLERK, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 1, SPRITE_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 6, SPRITE_POKEFAN_M, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 7, SPRITE_TWIN, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 5, 8, SPRITE_ROCKER, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 11, 6, SPRITE_GIRL, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 11, 8, SPRITE_GRAMPS, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 6, SPRITE_FISHER, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 17, 9, SPRITE_POKEFAN_M, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 13, 2, SPRITE_ROCKER, SLOW_STEP_DOWN, 3, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoGameCorner_Blocks::
+INCBIN "maps/KantoGameCorner.blk"
diff --git a/data/maps/objects/KantoGameCornerPrizes.asm b/data/maps/objects/KantoGameCornerPrizes.asm
new file mode 100644
index 0000000..b21ca78
--- /dev/null
+++ b/data/maps/objects/KantoGameCornerPrizes.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoGameCornerPrizes.asm", ROMX
+
+ map_attributes KantoGameCornerPrizes, KANTO_GAME_CORNER_PRIZES, 0
+
+KantoGameCornerPrizes_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 15, KANTO, wOverworldMapBlocks + 47
+ warp_event 5, 7, 15, KANTO, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 2, 1, SPRITE_CLERK, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 1, SPRITE_CLERK, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 1, SPRITE_CLERK, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoGameCornerPrizes_Blocks::
+INCBIN "maps/KantoGameCornerPrizes.blk"
diff --git a/data/maps/objects/KantoGamefreakHQ1.asm b/data/maps/objects/KantoGamefreakHQ1.asm
new file mode 100644
index 0000000..2964f40
--- /dev/null
+++ b/data/maps/objects/KantoGamefreakHQ1.asm
@@ -0,0 +1,26 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoGamefreakHQ1.asm", ROMX
+
+ map_attributes KantoGamefreakHQ1, KANTO_GAMEFREAK_HQ_1, 0
+
+KantoGamefreakHQ1_MapEvents::
+ dw $4000 ; unknown
+
+ db 5 ; warp events
+ warp_event 4, 11, 9, KANTO, wOverworldMapBlocks + 63
+ warp_event 5, 11, 10, KANTO, wOverworldMapBlocks + 63
+ warp_event 7, 1, 2, KANTO_GAMEFREAK_HQ_2, wOverworldMapBlocks + 14
+ warp_event 2, 1, 3, KANTO_GAMEFREAK_HQ_2, wOverworldMapBlocks + 12
+ warp_event 4, 0, 30, KANTO, wOverworldMapBlocks + 13
+
+ db 0 ; bg events
+
+ db 4 ; person events
+ object_event 1, 5, SPRITE_GRANNY, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 5, SPRITE_SIDON, FACE_RIGHT, 0, 1, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 0, 8, SPRITE_PIPPI, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 7, SPRITE_POPPO, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoGamefreakHQ1_Blocks::
+INCBIN "maps/KantoGamefreakHQ1.blk"
diff --git a/data/maps/objects/KantoGamefreakHQ2.asm b/data/maps/objects/KantoGamefreakHQ2.asm
new file mode 100644
index 0000000..f419688
--- /dev/null
+++ b/data/maps/objects/KantoGamefreakHQ2.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoGamefreakHQ2.asm", ROMX
+
+ map_attributes KantoGamefreakHQ2, KANTO_GAMEFREAK_HQ_2, 0
+
+KantoGamefreakHQ2_MapEvents::
+ dw $4000 ; unknown
+
+ db 4 ; warp events
+ warp_event 6, 1, 1, KANTO_GAMEFREAK_HQ_3, wOverworldMapBlocks + 14
+ warp_event 7, 1, 3, KANTO_GAMEFREAK_HQ_1, wOverworldMapBlocks + 14
+ warp_event 2, 1, 4, KANTO_GAMEFREAK_HQ_1, wOverworldMapBlocks + 12
+ warp_event 4, 1, 4, KANTO_GAMEFREAK_HQ_3, wOverworldMapBlocks + 13
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 2, 4, SPRITE_CLERK, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoGamefreakHQ2_Blocks::
+INCBIN "maps/KantoGamefreakHQ2.blk"
diff --git a/data/maps/objects/KantoGamefreakHQ3.asm b/data/maps/objects/KantoGamefreakHQ3.asm
new file mode 100644
index 0000000..4e36ec7
--- /dev/null
+++ b/data/maps/objects/KantoGamefreakHQ3.asm
@@ -0,0 +1,24 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoGamefreakHQ3.asm", ROMX
+
+ map_attributes KantoGamefreakHQ3, KANTO_GAMEFREAK_HQ_3, 0
+
+KantoGamefreakHQ3_MapEvents::
+ dw $4000 ; unknown
+
+ db 4 ; warp events
+ warp_event 6, 1, 1, KANTO_GAMEFREAK_HQ_2, wOverworldMapBlocks + 14
+ warp_event 7, 1, 2, KANTO_GAMEFREAK_HQ_4, wOverworldMapBlocks + 14
+ warp_event 2, 1, 3, KANTO_GAMEFREAK_HQ_4, wOverworldMapBlocks + 12
+ warp_event 4, 1, 4, KANTO_GAMEFREAK_HQ_2, wOverworldMapBlocks + 13
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 0, 5, SPRITE_GYM_GUY, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 0, 7, SPRITE_BURGLAR, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 7, SPRITE_FISHER, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoGamefreakHQ3_Blocks::
+INCBIN "maps/KantoGamefreakHQ3.blk"
diff --git a/data/maps/objects/KantoGamefreakHQ4.asm b/data/maps/objects/KantoGamefreakHQ4.asm
new file mode 100644
index 0000000..fc1ee0f
--- /dev/null
+++ b/data/maps/objects/KantoGamefreakHQ4.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoGamefreakHQ4.asm", ROMX
+
+ map_attributes KantoGamefreakHQ4, KANTO_GAMEFREAK_HQ_4, 0
+
+KantoGamefreakHQ4_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 2, 7, 1, KANTO_GAMEFREAK_HQ_5, wOverworldMapBlocks + 42
+ warp_event 6, 1, 2, KANTO_GAMEFREAK_HQ_3, wOverworldMapBlocks + 14
+ warp_event 2, 1, 3, KANTO_GAMEFREAK_HQ_3, wOverworldMapBlocks + 12
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+KantoGamefreakHQ4_Blocks::
+INCBIN "maps/KantoGamefreakHQ4.blk"
diff --git a/data/maps/objects/KantoGamefreakHQ5.asm b/data/maps/objects/KantoGamefreakHQ5.asm
new file mode 100644
index 0000000..96d02ca
--- /dev/null
+++ b/data/maps/objects/KantoGamefreakHQ5.asm
@@ -0,0 +1,19 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoGamefreakHQ5.asm", ROMX
+
+ map_attributes KantoGamefreakHQ5, KANTO_GAMEFREAK_HQ_5, 0
+
+KantoGamefreakHQ5_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 3, 7, 1, KANTO_GAMEFREAK_HQ_4, wOverworldMapBlocks + 42
+ warp_event 4, 7, 1, KANTO_GAMEFREAK_HQ_4, wOverworldMapBlocks + 43
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+KantoGamefreakHQ5_Blocks::
+INCBIN "maps/KantoGamefreakHQ5.blk"
diff --git a/data/maps/objects/KantoGreensHouse1F.asm b/data/maps/objects/KantoGreensHouse1F.asm
new file mode 100644
index 0000000..d6600b1
--- /dev/null
+++ b/data/maps/objects/KantoGreensHouse1F.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoGreensHouse1F.asm", ROMX
+
+ map_attributes KantoGreensHouse1F, KANTO_GREENS_HOUSE_1F, 0
+
+KantoGreensHouse1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 2, 7, 22, KANTO, wOverworldMapBlocks + 42
+ warp_event 3, 7, 22, KANTO, wOverworldMapBlocks + 42
+ warp_event 7, 1, 1, KANTO_GREENS_HOUSE_2F, wOverworldMapBlocks + 14
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 5, 3, SPRITE_0F, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoGreensHouse1F_Blocks::
+INCBIN "maps/KantoGreensHouse1F.blk"
diff --git a/data/maps/objects/KantoGreensHouse2F.asm b/data/maps/objects/KantoGreensHouse2F.asm
new file mode 100644
index 0000000..a534362
--- /dev/null
+++ b/data/maps/objects/KantoGreensHouse2F.asm
@@ -0,0 +1,18 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoGreensHouse2F.asm", ROMX
+
+ map_attributes KantoGreensHouse2F, KANTO_GREENS_HOUSE_2F, 0
+
+KantoGreensHouse2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 7, 1, 3, KANTO_GREENS_HOUSE_1F, wOverworldMapBlocks + 14
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+KantoGreensHouse2F_Blocks::
+INCBIN "maps/KantoGreensHouse2F.blk"
diff --git a/data/maps/objects/KantoHospital.asm b/data/maps/objects/KantoHospital.asm
new file mode 100644
index 0000000..252b56b
--- /dev/null
+++ b/data/maps/objects/KantoHospital.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoHospital.asm", ROMX
+
+ map_attributes KantoHospital, KANTO_HOSPITAL, 0
+
+KantoHospital_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 1, 7, 19, KANTO, wOverworldMapBlocks + 57
+ warp_event 2, 7, 19, KANTO, wOverworldMapBlocks + 58
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 5, 1, SPRITE_NURSE, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 6, SPRITE_ROCKER, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 12, 6, SPRITE_GIRL, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoHospital_Blocks::
+INCBIN "maps/KantoHospital.blk"
diff --git a/data/maps/objects/KantoLavenderHouse.asm b/data/maps/objects/KantoLavenderHouse.asm
new file mode 100644
index 0000000..e74f072
--- /dev/null
+++ b/data/maps/objects/KantoLavenderHouse.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoLavenderHouse.asm", ROMX
+
+ map_attributes KantoLavenderHouse, KANTO_LAVENDER_HOUSE, 0
+
+KantoLavenderHouse_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 5, KANTO, wOverworldMapBlocks + 47
+ warp_event 5, 7, 5, KANTO, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 2 ; person events
+ object_event 7, 3, SPRITE_POKEFAN_M, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 1, 5, SPRITE_POKEFAN_F, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoLavenderHouse_Blocks::
+INCBIN "maps/KantoLavenderHouse.blk"
diff --git a/data/maps/objects/KantoLeague1F.asm b/data/maps/objects/KantoLeague1F.asm
new file mode 100644
index 0000000..ea51b73
--- /dev/null
+++ b/data/maps/objects/KantoLeague1F.asm
@@ -0,0 +1,25 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoLeague1F.asm", ROMX
+
+ map_attributes KantoLeague1F, KANTO_LEAGUE_1F, 0
+
+KantoLeague1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 3, 15, 3, KANTO, wOverworldMapBlocks + 82
+ warp_event 4, 15, 4, KANTO, wOverworldMapBlocks + 83
+ warp_event 7, 1, 1, KANTO_LEAGUE_2F, wOverworldMapBlocks + 14
+
+ db 0 ; bg events
+
+ db 5 ; person events
+ object_event 2, 5, SPRITE_YOUNGSTER, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 7, SPRITE_LASS, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 9, SPRITE_BUG_CATCHER_BOY, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 3, 1, SPRITE_24, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 6, SPRITE_COOLTRAINER_F, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoLeague1F_Blocks::
+INCBIN "maps/KantoLeague1F.blk"
diff --git a/data/maps/objects/KantoLeague21F.asm b/data/maps/objects/KantoLeague21F.asm
new file mode 100644
index 0000000..a773116
--- /dev/null
+++ b/data/maps/objects/KantoLeague21F.asm
@@ -0,0 +1,25 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoLeague21F.asm", ROMX
+
+ map_attributes KantoLeague21F, KANTO_LEAGUE_2_1F, 0
+
+KantoLeague21F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 3, 15, 26, KANTO, wOverworldMapBlocks + 82
+ warp_event 4, 15, 27, KANTO, wOverworldMapBlocks + 83
+ warp_event 7, 1, 1, KANTO_LEAGUE_2_2F, wOverworldMapBlocks + 14
+
+ db 0 ; bg events
+
+ db 5 ; person events
+ object_event 2, 5, SPRITE_YOUNGSTER, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 7, SPRITE_LASS, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 9, SPRITE_BUG_CATCHER_BOY, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 3, 1, SPRITE_24, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 6, SPRITE_COOLTRAINER_F, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoLeague21F_Blocks::
+INCBIN "maps/KantoLeague21F.blk"
diff --git a/data/maps/objects/KantoLeague22F.asm b/data/maps/objects/KantoLeague22F.asm
new file mode 100644
index 0000000..a45069b
--- /dev/null
+++ b/data/maps/objects/KantoLeague22F.asm
@@ -0,0 +1,23 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoLeague22F.asm", ROMX
+
+ map_attributes KantoLeague22F, KANTO_LEAGUE_2_2F, 0
+
+KantoLeague22F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 7, 15, 3, KANTO_LEAGUE_2_1F, wOverworldMapBlocks + 92
+
+ db 0 ; bg events
+
+ db 5 ; person events
+ object_event 4, 7, SPRITE_POKEFAN_M, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 1, SPRITE_24, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 0, 6, SPRITE_COOLTRAINER_F, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 6, SPRITE_24, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 5, 1, SPRITE_COOLTRAINER_F, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoLeague22F_Blocks::
+INCBIN "maps/KantoLeague22F.blk"
diff --git a/data/maps/objects/KantoLeague2F.asm b/data/maps/objects/KantoLeague2F.asm
new file mode 100644
index 0000000..d6e38f4
--- /dev/null
+++ b/data/maps/objects/KantoLeague2F.asm
@@ -0,0 +1,23 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoLeague2F.asm", ROMX
+
+ map_attributes KantoLeague2F, KANTO_LEAGUE_2F, 0
+
+KantoLeague2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 7, 15, 3, KANTO_LEAGUE_1F, wOverworldMapBlocks + 92
+
+ db 0 ; bg events
+
+ db 5 ; person events
+ object_event 4, 7, SPRITE_RED, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 1, SPRITE_24, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 0, 6, SPRITE_COOLTRAINER_F, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 6, SPRITE_24, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 5, 1, SPRITE_COOLTRAINER_F, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoLeague2F_Blocks::
+INCBIN "maps/KantoLeague2F.blk"
diff --git a/data/maps/objects/KantoMart.asm b/data/maps/objects/KantoMart.asm
new file mode 100644
index 0000000..0ad9314
--- /dev/null
+++ b/data/maps/objects/KantoMart.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoMart.asm", ROMX
+
+ map_attributes KantoMart, KANTO_MART, 0
+
+KantoMart_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 8, KANTO, wOverworldMapBlocks + 59
+ warp_event 5, 7, 8, KANTO, wOverworldMapBlocks + 59
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 1, 3, SPRITE_CLERK, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 5, SPRITE_TWIN, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 1, SPRITE_GRAMPS, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoMart_Blocks::
+INCBIN "maps/KantoMart.blk"
diff --git a/data/maps/objects/KantoOaksLab.asm b/data/maps/objects/KantoOaksLab.asm
new file mode 100644
index 0000000..2760121
--- /dev/null
+++ b/data/maps/objects/KantoOaksLab.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoOaksLab.asm", ROMX
+
+ map_attributes KantoOaksLab, KANTO_OAKS_LAB, 0
+
+KantoOaksLab_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 3, 7, 24, KANTO, wOverworldMapBlocks + 42
+ warp_event 4, 7, 25, KANTO, wOverworldMapBlocks + 43
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 3, 2, SPRITE_NANAMI, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoOaksLab_Blocks::
+INCBIN "maps/KantoOaksLab.blk"
diff --git a/data/maps/objects/KantoPokecenter1F.asm b/data/maps/objects/KantoPokecenter1F.asm
new file mode 100644
index 0000000..1ee32fd
--- /dev/null
+++ b/data/maps/objects/KantoPokecenter1F.asm
@@ -0,0 +1,24 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoPokecenter1F.asm", ROMX
+
+ map_attributes KantoPokecenter1F, KANTO_POKECENTER_1F, 0
+
+KantoPokecenter1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 5, 7, 2, KANTO, wOverworldMapBlocks + 59
+ warp_event 6, 7, 2, KANTO, wOverworldMapBlocks + 60
+ warp_event 0, 7, 1, KANTO_POKECENTER_2F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 4 ; person events
+ object_event 5, 1, SPRITE_NURSE, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 6, SPRITE_YOUNGSTER, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 5, SPRITE_24, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 1, SPRITE_GRANNY, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoPokecenter1F_Blocks::
+INCBIN "maps/KantoPokecenter1F.blk"
diff --git a/data/maps/objects/KantoPokecenter21F.asm b/data/maps/objects/KantoPokecenter21F.asm
new file mode 100644
index 0000000..2e7a2ac
--- /dev/null
+++ b/data/maps/objects/KantoPokecenter21F.asm
@@ -0,0 +1,24 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoPokecenter21F.asm", ROMX
+
+ map_attributes KantoPokecenter21F, KANTO_POKECENTER_2_1F, 0
+
+KantoPokecenter21F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 5, 7, 20, KANTO, wOverworldMapBlocks + 59
+ warp_event 6, 7, 20, KANTO, wOverworldMapBlocks + 60
+ warp_event 0, 7, 1, KANTO_POKECENTER_2_2F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 4 ; person events
+ object_event 5, 1, SPRITE_NURSE, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 6, SPRITE_GENTLEMAN, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 5, SPRITE_24, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 1, SPRITE_YOUNGSTER, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoPokecenter21F_Blocks::
+INCBIN "maps/KantoPokecenter21F.blk"
diff --git a/data/maps/objects/KantoPokecenter22F.asm b/data/maps/objects/KantoPokecenter22F.asm
new file mode 100644
index 0000000..1e46fe2
--- /dev/null
+++ b/data/maps/objects/KantoPokecenter22F.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoPokecenter22F.asm", ROMX
+
+ map_attributes KantoPokecenter22F, KANTO_POKECENTER_2_2F, 0
+
+KantoPokecenter22F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 0, 7, 3, KANTO_POKECENTER_2_1F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 5, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 7, SPRITE_FISHING_GURU, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoPokecenter22F_Blocks::
+INCBIN "maps/KantoPokecenter22F.blk"
diff --git a/data/maps/objects/KantoPokecenter2F.asm b/data/maps/objects/KantoPokecenter2F.asm
new file mode 100644
index 0000000..43a9070
--- /dev/null
+++ b/data/maps/objects/KantoPokecenter2F.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoPokecenter2F.asm", ROMX
+
+ map_attributes KantoPokecenter2F, KANTO_POKECENTER_2F, 0
+
+KantoPokecenter2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 0, 7, 3, KANTO_POKECENTER_1F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 5, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 7, SPRITE_FISHING_GURU, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoPokecenter2F_Blocks::
+INCBIN "maps/KantoPokecenter2F.blk"
diff --git a/data/maps/objects/KantoRedsHouse.asm b/data/maps/objects/KantoRedsHouse.asm
new file mode 100644
index 0000000..7043e27
--- /dev/null
+++ b/data/maps/objects/KantoRedsHouse.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoRedsHouse.asm", ROMX
+
+ map_attributes KantoRedsHouse, KANTO_REDS_HOUSE, 0
+
+KantoRedsHouse_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 21, KANTO, wOverworldMapBlocks + 47
+ warp_event 5, 7, 21, KANTO, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 2 ; person events
+ object_event 7, 3, SPRITE_SUPER_NERD, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 1, 5, SPRITE_TEACHER, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoRedsHouse_Blocks::
+INCBIN "maps/KantoRedsHouse.blk"
diff --git a/data/maps/objects/KantoSchool.asm b/data/maps/objects/KantoSchool.asm
new file mode 100644
index 0000000..dcba623
--- /dev/null
+++ b/data/maps/objects/KantoSchool.asm
@@ -0,0 +1,24 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoSchool.asm", ROMX
+
+ map_attributes KantoSchool, KANTO_SCHOOL, 0
+
+KantoSchool_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 3, 15, 17, KANTO, wOverworldMapBlocks + 82
+ warp_event 4, 15, 18, KANTO, wOverworldMapBlocks + 83
+
+ db 0 ; bg events
+
+ db 5 ; person events
+ object_event 2, 5, SPRITE_YOUNGSTER, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 7, SPRITE_LASS, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 9, SPRITE_BUG_CATCHER_BOY, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 3, 1, SPRITE_24, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 6, SPRITE_COOLTRAINER_F, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoSchool_Blocks::
+INCBIN "maps/KantoSchool.blk"
diff --git a/data/maps/objects/KantoSilphCo.asm b/data/maps/objects/KantoSilphCo.asm
new file mode 100644
index 0000000..38bd8ab
--- /dev/null
+++ b/data/maps/objects/KantoSilphCo.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoSilphCo.asm", ROMX
+
+ map_attributes KantoSilphCo, KANTO_SILPH_CO, 0
+
+KantoSilphCo_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 6, 15, 11, KANTO, wOverworldMapBlocks + 148
+ warp_event 7, 15, 12, KANTO, wOverworldMapBlocks + 148
+
+ db 0 ; bg events
+
+ db 2 ; person events
+ object_event 2, 2, SPRITE_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 22, 1, SPRITE_OFFICER, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoSilphCo_Blocks::
+INCBIN "maps/KantoSilphCo.blk"
diff --git a/data/maps/objects/KantoUnusedArea.asm b/data/maps/objects/KantoUnusedArea.asm
new file mode 100644
index 0000000..7429d38
--- /dev/null
+++ b/data/maps/objects/KantoUnusedArea.asm
@@ -0,0 +1,17 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoUnusedArea.asm", ROMX
+
+ map_attributes KantoUnusedArea, KANTO_UNUSED_AREA, 0
+
+KantoUnusedArea_MapEvents::
+ dw $0 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+KantoUnusedArea_Blocks::
+INCBIN "maps/KantoUnusedArea.blk"
diff --git a/data/maps/objects/KantoViridianHouse.asm b/data/maps/objects/KantoViridianHouse.asm
new file mode 100644
index 0000000..29bc41f
--- /dev/null
+++ b/data/maps/objects/KantoViridianHouse.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/KantoViridianHouse.asm", ROMX
+
+ map_attributes KantoViridianHouse, KANTO_VIRIDIAN_HOUSE, 0
+
+KantoViridianHouse_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 13, KANTO, wOverworldMapBlocks + 47
+ warp_event 5, 7, 13, KANTO, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 2 ; person events
+ object_event 7, 3, SPRITE_BUG_CATCHER_BOY, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 1, 5, SPRITE_TWIN, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+KantoViridianHouse_Blocks::
+INCBIN "maps/KantoViridianHouse.blk"
diff --git a/data/maps/objects/MtFuji.asm b/data/maps/objects/MtFuji.asm
new file mode 100644
index 0000000..ddae1d3
--- /dev/null
+++ b/data/maps/objects/MtFuji.asm
@@ -0,0 +1,18 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/MtFuji.asm", ROMX
+
+ map_attributes MtFuji, MT_FUJI, SOUTH
+ connection south, MtFujiRoute, MT_FUJI_ROUTE, 0, 0, 10
+
+MtFuji_MapEvents::
+ dw $0 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+MtFuji_Blocks::
+INCBIN "maps/MtFuji.blk"
diff --git a/data/maps/objects/MtFujiRoute.asm b/data/maps/objects/MtFujiRoute.asm
new file mode 100644
index 0000000..e530dcc
--- /dev/null
+++ b/data/maps/objects/MtFujiRoute.asm
@@ -0,0 +1,19 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/MtFujiRoute.asm", ROMX
+
+ map_attributes MtFujiRoute, MT_FUJI_ROUTE, NORTH | SOUTH
+ connection north, MtFuji, MT_FUJI, 0, 0, 10
+ connection south, Prince, PRINCE, 0, 0, 10
+
+MtFujiRoute_MapEvents::
+ dw $0 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+MtFujiRoute_Blocks::
+INCBIN "maps/MtFujiRoute.blk"
diff --git a/data/maps/objects/Newtype.asm b/data/maps/objects/Newtype.asm
new file mode 100644
index 0000000..a0179d9
--- /dev/null
+++ b/data/maps/objects/Newtype.asm
@@ -0,0 +1,42 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Newtype.asm", ROMX
+
+ map_attributes Newtype, NEWTYPE, NORTH | WEST | EAST
+ connection north, SugarRoute, SUGAR_ROUTE, 5, 0, 10
+ connection west, Route15, ROUTE_15, 0, 0, 9
+ connection east, NewtypeRoute, NEWTYPE_ROUTE, 9, 0, 9
+
+Newtype_MapEvents::
+ dw $4000 ; unknown
+
+ db 13 ; warp events
+ warp_event 7, 8, 1, NEWTYPE_POKECENTER_1F, wOverworldMapBlocks + 134
+ warp_event 30, 9, 1, NEWTYPE_LEAGUE_1F, wOverworldMapBlocks + 146
+ warp_event 31, 9, 2, NEWTYPE_LEAGUE_1F, wOverworldMapBlocks + 146
+ warp_event 23, 13, 1, NEWTYPE_SAILOR_HOUSE, wOverworldMapBlocks + 194
+ warp_event 7, 14, 1, NEWTYPE_MART, wOverworldMapBlocks + 212
+ warp_event 33, 15, 1, NEWTYPE_DOJO, wOverworldMapBlocks + 225
+ warp_event 34, 15, 2, NEWTYPE_DOJO, wOverworldMapBlocks + 226
+ warp_event 23, 22, 1, NEWTYPE_HOUSE_1, wOverworldMapBlocks + 324
+ warp_event 5, 23, 1, NEWTYPE_DINER, wOverworldMapBlocks + 315
+ warp_event 11, 28, 1, NEWTYPE_HOUSE_2, wOverworldMapBlocks + 396
+ warp_event 35, 30, 1, NEWTYPE_HOUSE_3, wOverworldMapBlocks + 434
+ warp_event 18, 5, 1, SUGAR_ROUTE_GATE, wOverworldMapBlocks + 88
+ warp_event 19, 5, 2, SUGAR_ROUTE_GATE, wOverworldMapBlocks + 88
+
+ db 5 ; bg events
+ bg_event 0, 8, 0, 1
+ bg_event 8, 8, 0, 2
+ bg_event 8, 14, 0, 3
+ bg_event 30, 15, 0, 4
+ bg_event 30, 21, 0, 5
+
+ db 4 ; person events
+ object_event 5, 10, SPRITE_SILVER, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 24, 26, SPRITE_FISHER, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 24, 9, SPRITE_ROCKER, FACE_UP, 2, 1, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 30, SPRITE_GIRL, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+Newtype_Blocks::
+INCBIN "maps/Newtype.blk"
diff --git a/data/maps/objects/NewtypeDiner.asm b/data/maps/objects/NewtypeDiner.asm
new file mode 100644
index 0000000..fafd30a
--- /dev/null
+++ b/data/maps/objects/NewtypeDiner.asm
@@ -0,0 +1,23 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/NewtypeDiner.asm", ROMX
+
+ map_attributes NewtypeDiner, NEWTYPE_DINER, 0
+
+NewtypeDiner_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 2, 7, 9, NEWTYPE, wOverworldMapBlocks + 42
+ warp_event 3, 7, 9, NEWTYPE, wOverworldMapBlocks + 42
+
+ db 0 ; bg events
+
+ db 4 ; person events
+ object_event 2, 1, SPRITE_CLERK, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 1, 3, SPRITE_GIRL, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 5, 3, SPRITE_SAILOR, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 5, 1, SPRITE_TEACHER, SLOW_STEP_DOWN, 1, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+NewtypeDiner_Blocks::
+INCBIN "maps/NewtypeDiner.blk"
diff --git a/data/maps/objects/NewtypeDojo.asm b/data/maps/objects/NewtypeDojo.asm
new file mode 100644
index 0000000..444a861
--- /dev/null
+++ b/data/maps/objects/NewtypeDojo.asm
@@ -0,0 +1,24 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/NewtypeDojo.asm", ROMX
+
+ map_attributes NewtypeDojo, NEWTYPE_DOJO, 0
+
+NewtypeDojo_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 3, 15, 6, NEWTYPE, wOverworldMapBlocks + 82
+ warp_event 4, 15, 7, NEWTYPE, wOverworldMapBlocks + 83
+
+ db 0 ; bg events
+
+ db 5 ; person events
+ object_event 3, 2, SPRITE_BLACKBELT, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 6, SPRITE_BLACKBELT, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 5, 6, SPRITE_BLACKBELT, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 3, 10, SPRITE_BLACKBELT, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 10, SPRITE_BLACKBELT, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+NewtypeDojo_Blocks::
+INCBIN "maps/NewtypeDojo.blk"
diff --git a/data/maps/objects/NewtypeHouse1.asm b/data/maps/objects/NewtypeHouse1.asm
new file mode 100644
index 0000000..30de46a
--- /dev/null
+++ b/data/maps/objects/NewtypeHouse1.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/NewtypeHouse1.asm", ROMX
+
+ map_attributes NewtypeHouse1, NEWTYPE_HOUSE_1, 0
+
+NewtypeHouse1_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 8, NEWTYPE, wOverworldMapBlocks + 47
+ warp_event 5, 7, 8, NEWTYPE, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 7, 3, SPRITE_BUG_CATCHER_BOY, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+NewtypeHouse1_Blocks::
+INCBIN "maps/NewtypeHouse1.blk"
diff --git a/data/maps/objects/NewtypeHouse2.asm b/data/maps/objects/NewtypeHouse2.asm
new file mode 100644
index 0000000..d0153d0
--- /dev/null
+++ b/data/maps/objects/NewtypeHouse2.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/NewtypeHouse2.asm", ROMX
+
+ map_attributes NewtypeHouse2, NEWTYPE_HOUSE_2, 0
+
+NewtypeHouse2_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 10, NEWTYPE, wOverworldMapBlocks + 47
+ warp_event 5, 7, 10, NEWTYPE, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 4, 3, SPRITE_GENTLEMAN, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+NewtypeHouse2_Blocks::
+INCBIN "maps/NewtypeHouse2.blk"
diff --git a/data/maps/objects/NewtypeHouse3.asm b/data/maps/objects/NewtypeHouse3.asm
new file mode 100644
index 0000000..bf7bcfb
--- /dev/null
+++ b/data/maps/objects/NewtypeHouse3.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/NewtypeHouse3.asm", ROMX
+
+ map_attributes NewtypeHouse3, NEWTYPE_HOUSE_3, 0
+
+NewtypeHouse3_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 11, NEWTYPE, wOverworldMapBlocks + 47
+ warp_event 5, 7, 11, NEWTYPE, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 4, 3, SPRITE_GRAMPS, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+NewtypeHouse3_Blocks::
+INCBIN "maps/NewtypeHouse3.blk"
diff --git a/data/maps/objects/NewtypeLeague1F.asm b/data/maps/objects/NewtypeLeague1F.asm
new file mode 100644
index 0000000..cd9ea41
--- /dev/null
+++ b/data/maps/objects/NewtypeLeague1F.asm
@@ -0,0 +1,25 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/NewtypeLeague1F.asm", ROMX
+
+ map_attributes NewtypeLeague1F, NEWTYPE_LEAGUE_1F, 0
+
+NewtypeLeague1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 3, 15, 2, NEWTYPE, wOverworldMapBlocks + 82
+ warp_event 4, 15, 3, NEWTYPE, wOverworldMapBlocks + 83
+ warp_event 7, 1, 1, NEWTYPE_LEAGUE_2F, wOverworldMapBlocks + 14
+
+ db 0 ; bg events
+
+ db 5 ; person events
+ object_event 2, 5, SPRITE_YOUNGSTER, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 7, SPRITE_LASS, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 9, SPRITE_BUG_CATCHER_BOY, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 3, 1, SPRITE_24, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 6, SPRITE_COOLTRAINER_F, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+
+NewtypeLeague1F_Blocks::
+INCBIN "maps/NewtypeLeague1F.blk"
diff --git a/data/maps/objects/NewtypeLeague2F.asm b/data/maps/objects/NewtypeLeague2F.asm
new file mode 100644
index 0000000..19cae51
--- /dev/null
+++ b/data/maps/objects/NewtypeLeague2F.asm
@@ -0,0 +1,23 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/NewtypeLeague2F.asm", ROMX
+
+ map_attributes NewtypeLeague2F, NEWTYPE_LEAGUE_2F, 0
+
+NewtypeLeague2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 7, 15, 3, NEWTYPE_LEAGUE_1F, wOverworldMapBlocks + 92
+
+ db 0 ; bg events
+
+ db 5 ; person events
+ object_event 5, 5, SPRITE_YOUNGSTER, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 0, 0, SPRITE_24, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 0, SPRITE_COOLTRAINER_F, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 0, 11, SPRITE_24, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 11, SPRITE_COOLTRAINER_F, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+NewtypeLeague2F_Blocks::
+INCBIN "maps/NewtypeLeague2F.blk"
diff --git a/data/maps/objects/NewtypeMart.asm b/data/maps/objects/NewtypeMart.asm
new file mode 100644
index 0000000..2ada20c
--- /dev/null
+++ b/data/maps/objects/NewtypeMart.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/NewtypeMart.asm", ROMX
+
+ map_attributes NewtypeMart, NEWTYPE_MART, 0
+
+NewtypeMart_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 5, NEWTYPE, wOverworldMapBlocks + 59
+ warp_event 5, 7, 5, NEWTYPE, wOverworldMapBlocks + 59
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 1, 3, SPRITE_CLERK, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 5, SPRITE_POKEFAN_F, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 1, SPRITE_POKEFAN_M, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+NewtypeMart_Blocks::
+INCBIN "maps/NewtypeMart.blk"
diff --git a/data/maps/objects/NewtypePokecenter1F.asm b/data/maps/objects/NewtypePokecenter1F.asm
new file mode 100644
index 0000000..9122876
--- /dev/null
+++ b/data/maps/objects/NewtypePokecenter1F.asm
@@ -0,0 +1,24 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/NewtypePokecenter1F.asm", ROMX
+
+ map_attributes NewtypePokecenter1F, NEWTYPE_POKECENTER_1F, 0
+
+NewtypePokecenter1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 5, 7, 1, NEWTYPE, wOverworldMapBlocks + 59
+ warp_event 6, 7, 1, NEWTYPE, wOverworldMapBlocks + 60
+ warp_event 0, 7, 1, NEWTYPE_POKECENTER_2F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 4 ; person events
+ object_event 5, 1, SPRITE_NURSE, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 6, SPRITE_GENTLEMAN, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 5, SPRITE_COOLTRAINER_F, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 1, SPRITE_LASS, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+NewtypePokecenter1F_Blocks::
+INCBIN "maps/NewtypePokecenter1F.blk"
diff --git a/data/maps/objects/NewtypePokecenter2F.asm b/data/maps/objects/NewtypePokecenter2F.asm
new file mode 100644
index 0000000..50a988e
--- /dev/null
+++ b/data/maps/objects/NewtypePokecenter2F.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/NewtypePokecenter2F.asm", ROMX
+
+ map_attributes NewtypePokecenter2F, NEWTYPE_POKECENTER_2F, 0
+
+NewtypePokecenter2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 0, 7, 3, NEWTYPE_POKECENTER_1F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 5, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 7, SPRITE_FISHING_GURU, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+NewtypePokecenter2F_Blocks::
+INCBIN "maps/NewtypePokecenter2F.blk"
diff --git a/data/maps/objects/NewtypeRoute.asm b/data/maps/objects/NewtypeRoute.asm
new file mode 100644
index 0000000..eceaf4c
--- /dev/null
+++ b/data/maps/objects/NewtypeRoute.asm
@@ -0,0 +1,19 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/NewtypeRoute.asm", ROMX
+
+ map_attributes NewtypeRoute, NEWTYPE_ROUTE, WEST | EAST
+ connection west, Newtype, NEWTYPE, -3, 6, 12
+ connection east, Route18, ROUTE_18, -3, 33, 12
+
+NewtypeRoute_MapEvents::
+ dw $4000 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+NewtypeRoute_Blocks::
+INCBIN "maps/NewtypeRoute.blk"
diff --git a/data/maps/objects/NewtypeRouteGate.asm b/data/maps/objects/NewtypeRouteGate.asm
new file mode 100644
index 0000000..382549b
--- /dev/null
+++ b/data/maps/objects/NewtypeRouteGate.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/NewtypeRouteGate.asm", ROMX
+
+ map_attributes NewtypeRouteGate, NEWTYPE_ROUTE_GATE, 0
+
+NewtypeRouteGate_MapEvents::
+ dw $4000 ; unknown
+
+ db 4 ; warp events
+ warp_event 4, 7, 1, ROUTE_18, wOverworldMapBlocks + 47
+ warp_event 5, 7, 2, ROUTE_18, wOverworldMapBlocks + 47
+ warp_event 4, 0, 1, BULL_FOREST_ROUTE_1, wOverworldMapBlocks + 14
+ warp_event 5, 0, 2, BULL_FOREST_ROUTE_1, wOverworldMapBlocks + 14
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+NewtypeRouteGate_Blocks::
+INCBIN "maps/NewtypeRouteGate.blk"
diff --git a/data/maps/objects/NewtypeSailorHouse.asm b/data/maps/objects/NewtypeSailorHouse.asm
new file mode 100644
index 0000000..234929c
--- /dev/null
+++ b/data/maps/objects/NewtypeSailorHouse.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/NewtypeSailorHouse.asm", ROMX
+
+ map_attributes NewtypeSailorHouse, NEWTYPE_SAILOR_HOUSE, 0
+
+NewtypeSailorHouse_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 4, NEWTYPE, wOverworldMapBlocks + 47
+ warp_event 5, 7, 4, NEWTYPE, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 6, 3, SPRITE_47, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+NewtypeSailorHouse_Blocks::
+INCBIN "maps/NewtypeSailorHouse.blk"
diff --git a/data/maps/objects/North.asm b/data/maps/objects/North.asm
new file mode 100644
index 0000000..4675b13
--- /dev/null
+++ b/data/maps/objects/North.asm
@@ -0,0 +1,29 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/North.asm", ROMX
+
+ map_attributes North, NORTH, SOUTH
+ connection south, BullForestRoute3, BULL_FOREST_ROUTE_3, 0, 0, 10
+
+North_MapEvents::
+ dw $4000 ; unknown
+
+ db 4 ; warp events
+ warp_event 5, 5, 1, NORTH_HOUSE_1, wOverworldMapBlocks + 51
+ warp_event 15, 6, 1, NORTH_MART, wOverworldMapBlocks + 72
+ warp_event 5, 9, 1, NORTH_HOUSE_2, wOverworldMapBlocks + 83
+ warp_event 13, 10, 1, NORTH_POKECENTER_1F, wOverworldMapBlocks + 103
+
+ db 4 ; bg events
+ bg_event 12, 4, 0, 1
+ bg_event 16, 6, 0, 2
+ bg_event 14, 10, 0, 3
+ bg_event 8, 12, 0, 4
+
+ db 3 ; person events
+ object_event 9, 6, SPRITE_GRANNY, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 9, SPRITE_BUG_CATCHER_BOY, SLOW_STEP_DOWN, 1, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 9, SPRITE_TWIN, SLOW_STEP_DOWN, 1, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+North_Blocks::
+INCBIN "maps/North.blk"
diff --git a/data/maps/objects/NorthHouse1.asm b/data/maps/objects/NorthHouse1.asm
new file mode 100644
index 0000000..a60ac00
--- /dev/null
+++ b/data/maps/objects/NorthHouse1.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/NorthHouse1.asm", ROMX
+
+ map_attributes NorthHouse1, NORTH_HOUSE_1, 0
+
+NorthHouse1_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 1, NORTH, wOverworldMapBlocks + 47
+ warp_event 5, 7, 1, NORTH, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 2, 3, SPRITE_TWIN, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+NorthHouse1_Blocks::
+INCBIN "maps/NorthHouse1.blk"
diff --git a/data/maps/objects/NorthHouse2.asm b/data/maps/objects/NorthHouse2.asm
new file mode 100644
index 0000000..f8fce5f
--- /dev/null
+++ b/data/maps/objects/NorthHouse2.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/NorthHouse2.asm", ROMX
+
+ map_attributes NorthHouse2, NORTH_HOUSE_2, 0
+
+NorthHouse2_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 3, NORTH, wOverworldMapBlocks + 47
+ warp_event 5, 7, 3, NORTH, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 2, 3, SPRITE_TWIN, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+NorthHouse2_Blocks::
+INCBIN "maps/NorthHouse2.blk"
diff --git a/data/maps/objects/NorthMart.asm b/data/maps/objects/NorthMart.asm
new file mode 100644
index 0000000..3af319f
--- /dev/null
+++ b/data/maps/objects/NorthMart.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/NorthMart.asm", ROMX
+
+ map_attributes NorthMart, NORTH_MART, 0
+
+NorthMart_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 2, NORTH, wOverworldMapBlocks + 51
+ warp_event 5, 7, 2, NORTH, wOverworldMapBlocks + 51
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 1, 3, SPRITE_CLERK, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 5, SPRITE_GIRL, FACE_RIGHT, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 1, SPRITE_POKEFAN_M, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+NorthMart_Blocks::
+INCBIN "maps/NorthMart.blk"
diff --git a/data/maps/objects/NorthPokecenter1F.asm b/data/maps/objects/NorthPokecenter1F.asm
new file mode 100644
index 0000000..29fc812
--- /dev/null
+++ b/data/maps/objects/NorthPokecenter1F.asm
@@ -0,0 +1,24 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/NorthPokecenter1F.asm", ROMX
+
+ map_attributes NorthPokecenter1F, NORTH_POKECENTER_1F, 0
+
+NorthPokecenter1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 5, 7, 4, NORTH, wOverworldMapBlocks + 59
+ warp_event 6, 7, 4, NORTH, wOverworldMapBlocks + 60
+ warp_event 0, 7, 1, NORTH_POKECENTER_2F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 4 ; person events
+ object_event 5, 1, SPRITE_NURSE, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 6, SPRITE_GENTLEMAN, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 5, SPRITE_24, FACE_RIGHT, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 1, SPRITE_YOUNGSTER, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+NorthPokecenter1F_Blocks::
+INCBIN "maps/NorthPokecenter1F.blk"
diff --git a/data/maps/objects/NorthPokecenter2F.asm b/data/maps/objects/NorthPokecenter2F.asm
new file mode 100644
index 0000000..e092e41
--- /dev/null
+++ b/data/maps/objects/NorthPokecenter2F.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/NorthPokecenter2F.asm", ROMX
+
+ map_attributes NorthPokecenter2F, NORTH_POKECENTER_2F, 0
+
+NorthPokecenter2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 0, 7, 3, NORTH_POKECENTER_1F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 5, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 7, SPRITE_FISHING_GURU, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+NorthPokecenter2F_Blocks::
+INCBIN "maps/NorthPokecenter2F.blk"
diff --git a/data/maps/objects/Office1.asm b/data/maps/objects/Office1.asm
new file mode 100644
index 0000000..ae45362
--- /dev/null
+++ b/data/maps/objects/Office1.asm
@@ -0,0 +1,17 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Office1.asm", ROMX
+
+ map_attributes Office1, OFFICE_1, 0
+
+Office1_MapEvents::
+ dw $0 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+Office1_Blocks::
+INCBIN "maps/Office1.blk"
diff --git a/data/maps/objects/Office2.asm b/data/maps/objects/Office2.asm
new file mode 100644
index 0000000..24ef079
--- /dev/null
+++ b/data/maps/objects/Office2.asm
@@ -0,0 +1,17 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Office2.asm", ROMX
+
+ map_attributes Office2, OFFICE_2, 0
+
+Office2_MapEvents::
+ dw $0 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+Office2_Blocks::
+INCBIN "maps/Office2.blk"
diff --git a/data/maps/objects/Office3.asm b/data/maps/objects/Office3.asm
new file mode 100644
index 0000000..7a70ad1
--- /dev/null
+++ b/data/maps/objects/Office3.asm
@@ -0,0 +1,17 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Office3.asm", ROMX
+
+ map_attributes Office3, OFFICE_3, 0
+
+Office3_MapEvents::
+ dw $0 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+Office3_Blocks::
+INCBIN "maps/Office3.blk"
diff --git a/data/maps/objects/OldCity.asm b/data/maps/objects/OldCity.asm
new file mode 100644
index 0000000..00280e1
--- /dev/null
+++ b/data/maps/objects/OldCity.asm
@@ -0,0 +1,50 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/OldCity.asm", ROMX
+
+ map_attributes OldCity, OLD_CITY, SOUTH | WEST
+ connection south, Route1P2, ROUTE_1_P2, 5, 0, 10
+ connection west, Route2, ROUTE_2, 5, 0, 9
+
+OldCity_MapEvents::
+ dw $4000 ; unknown
+
+ db 14 ; warp events
+ warp_event 4, 14, 1, OLD_CITY_MUSEUM, wOverworldMapBlocks + 211
+ warp_event 5, 14, 2, OLD_CITY_MUSEUM, wOverworldMapBlocks + 211
+ warp_event 26, 14, 1, OLD_CITY_GYM, wOverworldMapBlocks + 222
+ warp_event 27, 14, 2, OLD_CITY_GYM, wOverworldMapBlocks + 222
+ warp_event 11, 17, 1, OLD_CITY_TOWER_1F, wOverworldMapBlocks + 240
+ warp_event 12, 17, 2, OLD_CITY_TOWER_1F, wOverworldMapBlocks + 241
+ warp_event 30, 22, 1, OLD_CITY_BILLS_HOUSE, wOverworldMapBlocks + 328
+ warp_event 3, 26, 1, OLD_CITY_MART, wOverworldMapBlocks + 366
+ warp_event 10, 26, 1, OLD_CITY_HOUSE, wOverworldMapBlocks + 370
+ warp_event 27, 28, 1, OLD_CITY_POKECENTER_1F, wOverworldMapBlocks + 404
+ warp_event 3, 31, 1, OLD_CITY_KURTS_HOUSE, wOverworldMapBlocks + 418
+ warp_event 18, 30, 3, ROUTE_1_GATE_1F, wOverworldMapBlocks + 426
+ warp_event 19, 30, 4, ROUTE_1_GATE_1F, wOverworldMapBlocks + 426
+ warp_event 22, 26, 1, OLD_CITY_SCHOOL, wOverworldMapBlocks + 376
+
+ db 12 ; bg events
+ bg_event 8, 14, 0, 1
+ bg_event 8, 16, 0, 2
+ bg_event 28, 16, 0, 3
+ bg_event 20, 22, 0, 4
+ bg_event 26, 22, 0, 5
+ bg_event 8, 26, 0, 6
+ bg_event 28, 28, 0, 7
+ bg_event 20, 29, 0, 8
+ bg_event 4, 32, 0, 9
+ bg_event 30, 22, 0, 10
+ bg_event 4, 14, 0, 11
+ bg_event 5, 14, 0, 11
+
+ db 5 ; person events
+ object_event 8, 30, SPRITE_TWIN, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 20, SPRITE_SUPER_NERD, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 26, SPRITE_BUG_CATCHER_BOY, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 21, SPRITE_BUG_CATCHER_BOY, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 17, 19, SPRITE_POKE_BALL, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+OldCity_Blocks::
+INCBIN "maps/OldCity.blk"
diff --git a/data/maps/objects/OldCityBillsHouse.asm b/data/maps/objects/OldCityBillsHouse.asm
new file mode 100644
index 0000000..0e79b5c
--- /dev/null
+++ b/data/maps/objects/OldCityBillsHouse.asm
@@ -0,0 +1,26 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/OldCityBillsHouse.asm", ROMX
+
+ map_attributes OldCityBillsHouse, OLD_CITY_BILLS_HOUSE, 0
+
+OldCityBillsHouse_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 3, 7, 7, OLD_CITY, wOverworldMapBlocks + 42
+ warp_event 4, 7, 7, OLD_CITY, wOverworldMapBlocks + 43
+
+ db 6 ; bg events
+ bg_event 2, 1, 0, 1
+ bg_event 3, 1, 0, 2
+ bg_event 4, 1, 0, 3
+ bg_event 6, 1, 0, 4
+ bg_event 7, 1, 0, 5
+ bg_event 1, 1, 0, 6
+
+ db 1 ; person events
+ object_event 5, 4, SPRITE_MASAKI, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+OldCityBillsHouse_Blocks::
+INCBIN "maps/OldCityBillsHouse.blk"
diff --git a/data/maps/objects/OldCityGym.asm b/data/maps/objects/OldCityGym.asm
new file mode 100644
index 0000000..3405b04
--- /dev/null
+++ b/data/maps/objects/OldCityGym.asm
@@ -0,0 +1,27 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/OldCityGym.asm", ROMX
+
+ map_attributes OldCityGym, OLD_CITY_GYM, 0
+
+OldCityGym_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 17, 3, OLD_CITY, wOverworldMapBlocks + 102
+ warp_event 5, 17, 4, OLD_CITY, wOverworldMapBlocks + 102
+
+ db 2 ; bg events
+ bg_event 3, 15, 0, 1
+ bg_event 6, 15, 0, 1
+
+ db 6 ; person events
+ object_event 4, 5, SPRITE_HAYATO, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 8, 9, SPRITE_YOUNGSTER, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 1, 0, 0
+ object_event 8, 1, SPRITE_LASS, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 1, 0, 0
+ object_event 1, 1, SPRITE_SUPER_NERD, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 1, 0, 0
+ object_event 1, 9, SPRITE_YOUNGSTER, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 1, 0, 0
+ object_event 7, 15, SPRITE_GYM_GUY, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 1, 0, 0
+
+OldCityGym_Blocks::
+INCBIN "maps/OldCityGym.blk"
diff --git a/data/maps/objects/OldCityHouse.asm b/data/maps/objects/OldCityHouse.asm
new file mode 100644
index 0000000..dd140a4
--- /dev/null
+++ b/data/maps/objects/OldCityHouse.asm
@@ -0,0 +1,26 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/OldCityHouse.asm", ROMX
+
+ map_attributes OldCityHouse, OLD_CITY_HOUSE, 0
+
+OldCityHouse_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 3, 7, 9, OLD_CITY, wOverworldMapBlocks + 42
+ warp_event 4, 7, 9, OLD_CITY, wOverworldMapBlocks + 43
+
+ db 4 ; bg events
+ bg_event 0, 1, 0, 1
+ bg_event 1, 1, 0, 2
+ bg_event 2, 1, 0, 3
+ bg_event 7, 1, 0, 4
+
+ db 3 ; person events
+ object_event 2, 3, SPRITE_POKEFAN_M, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 0, 6, SPRITE_LASS, FACE_RIGHT, 0, 1, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 5, 1, SPRITE_YOUNGSTER, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+OldCityHouse_Blocks::
+INCBIN "maps/OldCityHouse.blk"
diff --git a/data/maps/objects/OldCityKurtsHouse.asm b/data/maps/objects/OldCityKurtsHouse.asm
new file mode 100644
index 0000000..178b8a4
--- /dev/null
+++ b/data/maps/objects/OldCityKurtsHouse.asm
@@ -0,0 +1,25 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/OldCityKurtsHouse.asm", ROMX
+
+ map_attributes OldCityKurtsHouse, OLD_CITY_KURTS_HOUSE, 0
+
+OldCityKurtsHouse_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 3, 7, 11, OLD_CITY, wOverworldMapBlocks + 58
+ warp_event 4, 7, 11, OLD_CITY, wOverworldMapBlocks + 59
+
+ db 5 ; bg events
+ bg_event 4, 1, 0, 1
+ bg_event 5, 1, 0, 2
+ bg_event 12, 1, 0, 3
+ bg_event 14, 0, 0, 4
+ bg_event 15, 0, 0, 4
+
+ db 1 ; person events
+ object_event 2, 2, SPRITE_GANTETSU, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+OldCityKurtsHouse_Blocks::
+INCBIN "maps/OldCityKurtsHouse.blk"
diff --git a/data/maps/objects/OldCityMart.asm b/data/maps/objects/OldCityMart.asm
new file mode 100644
index 0000000..bbcafd0
--- /dev/null
+++ b/data/maps/objects/OldCityMart.asm
@@ -0,0 +1,23 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/OldCityMart.asm", ROMX
+
+ map_attributes OldCityMart, OLD_CITY_MART, 0
+
+OldCityMart_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 8, OLD_CITY, wOverworldMapBlocks + 51
+ warp_event 5, 7, 8, OLD_CITY, wOverworldMapBlocks + 51
+
+ db 1 ; bg events
+ bg_event 0, 7, 0, 1
+
+ db 3 ; person events
+ object_event 1, 3, SPRITE_CLERK, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 5, SPRITE_YOUNGSTER, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 1, SPRITE_24, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+OldCityMart_Blocks::
+INCBIN "maps/OldCityMart.blk"
diff --git a/data/maps/objects/OldCityMuseum.asm b/data/maps/objects/OldCityMuseum.asm
new file mode 100644
index 0000000..60f2505
--- /dev/null
+++ b/data/maps/objects/OldCityMuseum.asm
@@ -0,0 +1,25 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/OldCityMuseum.asm", ROMX
+
+ map_attributes OldCityMuseum, OLD_CITY_MUSEUM, 0
+
+OldCityMuseum_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 2, 7, 1, OLD_CITY, wOverworldMapBlocks + 58
+ warp_event 3, 7, 2, OLD_CITY, wOverworldMapBlocks + 58
+
+ db 4 ; bg events
+ bg_event 2, 3, 0, 1
+ bg_event 5, 4, 0, 2
+ bg_event 9, 4, 0, 3
+ bg_event 13, 4, 0, 4
+
+ db 2 ; person events
+ object_event 1, 5, SPRITE_FISHER, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 13, 4, SPRITE_EGG, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+OldCityMuseum_Blocks::
+INCBIN "maps/OldCityMuseum.blk"
diff --git a/data/maps/objects/OldCityPokecenter1F.asm b/data/maps/objects/OldCityPokecenter1F.asm
new file mode 100644
index 0000000..28fa3bb
--- /dev/null
+++ b/data/maps/objects/OldCityPokecenter1F.asm
@@ -0,0 +1,25 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/OldCityPokecenter1F.asm", ROMX
+
+ map_attributes OldCityPokecenter1F, OLD_CITY_POKECENTER_1F, 0
+
+OldCityPokecenter1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 5, 7, 10, OLD_CITY, wOverworldMapBlocks + 59
+ warp_event 6, 7, 10, OLD_CITY, wOverworldMapBlocks + 60
+ warp_event 0, 7, 1, OLD_CITY_POKECENTER_2F, wOverworldMapBlocks + 57
+
+ db 1 ; bg events
+ bg_event 13, 1, 0, 1
+
+ db 4 ; person events
+ object_event 5, 1, SPRITE_NURSE, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 6, SPRITE_GENTLEMAN, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 5, SPRITE_YOUNGSTER, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 1, SPRITE_35, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+OldCityPokecenter1F_Blocks::
+INCBIN "maps/OldCityPokecenter1F.blk"
diff --git a/data/maps/objects/OldCityPokecenter2F.asm b/data/maps/objects/OldCityPokecenter2F.asm
new file mode 100644
index 0000000..b6354c3
--- /dev/null
+++ b/data/maps/objects/OldCityPokecenter2F.asm
@@ -0,0 +1,26 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/OldCityPokecenter2F.asm", ROMX
+
+ map_attributes OldCityPokecenter2F, OLD_CITY_POKECENTER_2F, 0
+
+OldCityPokecenter2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 4 ; warp events
+ warp_event 0, 7, 3, OLD_CITY_POKECENTER_1F, wOverworldMapBlocks + 57
+ warp_event 5, 0, 1, OLD_CITY_POKECENTER_TRADE, wOverworldMapBlocks + 17
+ warp_event 9, 0, 1, OLD_CITY_POKECENTER_BATTLE, wOverworldMapBlocks + 19
+ warp_event 13, 2, 1, OLD_CITY_POKECENTER_TIME_MACHINE, wOverworldMapBlocks + 35
+
+ db 1 ; bg events
+ bg_event 1, 1, 0, 1
+
+ db 4 ; person events
+ object_event 5, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 3, SPRITE_GRAMPS, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 13, 3, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+OldCityPokecenter2F_Blocks::
+INCBIN "maps/OldCityPokecenter2F.blk"
diff --git a/data/maps/objects/OldCityPokecenterBattle.asm b/data/maps/objects/OldCityPokecenterBattle.asm
new file mode 100644
index 0000000..d9e3704
--- /dev/null
+++ b/data/maps/objects/OldCityPokecenterBattle.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/OldCityPokecenterBattle.asm", ROMX
+
+ map_attributes OldCityPokecenterBattle, OLD_CITY_POKECENTER_BATTLE, 0
+
+OldCityPokecenterBattle_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 3, OLD_CITY_POKECENTER_2F, wOverworldMapBlocks + 47
+ warp_event 5, 7, 3, OLD_CITY_POKECENTER_2F, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 3, 3, SPRITE_GOLD, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+OldCityPokecenterBattle_Blocks::
+INCBIN "maps/OldCityPokecenterBattle.blk"
diff --git a/data/maps/objects/OldCityPokecenterTimeMachine.asm b/data/maps/objects/OldCityPokecenterTimeMachine.asm
new file mode 100644
index 0000000..d4a91fb
--- /dev/null
+++ b/data/maps/objects/OldCityPokecenterTimeMachine.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/OldCityPokecenterTimeMachine.asm", ROMX
+
+ map_attributes OldCityPokecenterTimeMachine, OLD_CITY_POKECENTER_TIME_MACHINE, 0
+
+OldCityPokecenterTimeMachine_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 2, 7, 4, OLD_CITY_POKECENTER_2F, wOverworldMapBlocks + 58
+ warp_event 3, 7, 4, OLD_CITY_POKECENTER_2F, wOverworldMapBlocks + 58
+
+ db 1 ; bg events
+ bg_event 15, 3, 0, 1
+
+ db 1 ; person events
+ object_event 13, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+OldCityPokecenterTimeMachine_Blocks::
+INCBIN "maps/OldCityPokecenterTimeMachine.blk"
diff --git a/data/maps/objects/OldCityPokecenterTrade.asm b/data/maps/objects/OldCityPokecenterTrade.asm
new file mode 100644
index 0000000..178cbea
--- /dev/null
+++ b/data/maps/objects/OldCityPokecenterTrade.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/OldCityPokecenterTrade.asm", ROMX
+
+ map_attributes OldCityPokecenterTrade, OLD_CITY_POKECENTER_TRADE, 0
+
+OldCityPokecenterTrade_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 2, OLD_CITY_POKECENTER_2F, wOverworldMapBlocks + 47
+ warp_event 5, 7, 2, OLD_CITY_POKECENTER_2F, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 3, 3, SPRITE_GOLD, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+OldCityPokecenterTrade_Blocks::
+INCBIN "maps/OldCityPokecenterTrade.blk"
diff --git a/data/maps/objects/OldCitySchool.asm b/data/maps/objects/OldCitySchool.asm
new file mode 100644
index 0000000..db27565
--- /dev/null
+++ b/data/maps/objects/OldCitySchool.asm
@@ -0,0 +1,29 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/OldCitySchool.asm", ROMX
+
+ map_attributes OldCitySchool, OLD_CITY_SCHOOL, 0
+
+OldCitySchool_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 3, 15, 14, OLD_CITY, wOverworldMapBlocks + 82
+ warp_event 4, 15, 14, OLD_CITY, wOverworldMapBlocks + 83
+
+ db 4 ; bg events
+ bg_event 0, 1, 0, 1
+ bg_event 1, 1, 0, 1
+ bg_event 3, 0, 0, 2
+ bg_event 4, 0, 0, 2
+
+ db 6 ; person events
+ object_event 2, 5, SPRITE_GIRL, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 7, SPRITE_BUG_CATCHER_BOY, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 9, SPRITE_24, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 3, 1, SPRITE_ROCKER, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 6, SPRITE_TEACHER, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 11, SPRITE_YOUNGSTER, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+OldCitySchool_Blocks::
+INCBIN "maps/OldCitySchool.blk"
diff --git a/data/maps/objects/OldCityTower1F.asm b/data/maps/objects/OldCityTower1F.asm
new file mode 100644
index 0000000..64ddb60
--- /dev/null
+++ b/data/maps/objects/OldCityTower1F.asm
@@ -0,0 +1,27 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/OldCityTower1F.asm", ROMX
+
+ map_attributes OldCityTower1F, OLD_CITY_TOWER_1F, 0
+
+OldCityTower1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 3, 7, 5, OLD_CITY, wOverworldMapBlocks + 42
+ warp_event 4, 7, 6, OLD_CITY, wOverworldMapBlocks + 43
+ warp_event 0, 1, 1, OLD_CITY_TOWER_2F, wOverworldMapBlocks + 11
+
+ db 3 ; bg events
+ bg_event 2, 6, 0, 1
+ bg_event 5, 6, 0, 2
+ bg_event 4, 1, 0, 3
+
+ db 4 ; person events
+ object_event 0, 2, SPRITE_SAGE, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 3, 0, 0
+ object_event 1, 5, SPRITE_SAGE, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 2, 0, 0
+ object_event 5, 1, SPRITE_SAGE, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 2, 0, 0
+ object_event 6, 4, SPRITE_SAGE, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 4, 0, 0
+
+OldCityTower1F_Blocks::
+INCBIN "maps/OldCityTower1F.blk"
diff --git a/data/maps/objects/OldCityTower2F.asm b/data/maps/objects/OldCityTower2F.asm
new file mode 100644
index 0000000..078661f
--- /dev/null
+++ b/data/maps/objects/OldCityTower2F.asm
@@ -0,0 +1,25 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/OldCityTower2F.asm", ROMX
+
+ map_attributes OldCityTower2F, OLD_CITY_TOWER_2F, 0
+
+OldCityTower2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 0, 1, 3, OLD_CITY_TOWER_1F, wOverworldMapBlocks + 11
+ warp_event 7, 7, 2, OLD_CITY_TOWER_3F, wOverworldMapBlocks + 44
+
+ db 2 ; bg events
+ bg_event 3, 0, 0, 1
+ bg_event 4, 1, 0, 2
+
+ db 4 ; person events
+ object_event 2, 3, SPRITE_MEDIUM, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 2, 0, 0
+ object_event 5, 3, SPRITE_MEDIUM, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 2, 0, 0
+ object_event 2, 6, SPRITE_MEDIUM, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 2, 0, 0
+ object_event 5, 6, SPRITE_MEDIUM, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 2, 0, 0
+
+OldCityTower2F_Blocks::
+INCBIN "maps/OldCityTower2F.blk"
diff --git a/data/maps/objects/OldCityTower3F.asm b/data/maps/objects/OldCityTower3F.asm
new file mode 100644
index 0000000..fae518e
--- /dev/null
+++ b/data/maps/objects/OldCityTower3F.asm
@@ -0,0 +1,25 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/OldCityTower3F.asm", ROMX
+
+ map_attributes OldCityTower3F, OLD_CITY_TOWER_3F, 0
+
+OldCityTower3F_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 0, 1, 1, OLD_CITY_TOWER_4F, wOverworldMapBlocks + 11
+ warp_event 7, 7, 2, OLD_CITY_TOWER_2F, wOverworldMapBlocks + 44
+
+ db 2 ; bg events
+ bg_event 3, 0, 0, 1
+ bg_event 4, 1, 0, 2
+
+ db 4 ; person events
+ object_event 2, 3, SPRITE_SAGE, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 2, 0, 0
+ object_event 3, 4, SPRITE_SAGE, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 3, 0, 0
+ object_event 4, 4, SPRITE_SAGE, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 2, 0, 0
+ object_event 5, 5, SPRITE_SAGE, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 2, 0, 0
+
+OldCityTower3F_Blocks::
+INCBIN "maps/OldCityTower3F.blk"
diff --git a/data/maps/objects/OldCityTower4F.asm b/data/maps/objects/OldCityTower4F.asm
new file mode 100644
index 0000000..a3bae56
--- /dev/null
+++ b/data/maps/objects/OldCityTower4F.asm
@@ -0,0 +1,25 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/OldCityTower4F.asm", ROMX
+
+ map_attributes OldCityTower4F, OLD_CITY_TOWER_4F, 0
+
+OldCityTower4F_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 0, 1, 1, OLD_CITY_TOWER_3F, wOverworldMapBlocks + 11
+ warp_event 7, 7, 1, OLD_CITY_TOWER_5F, wOverworldMapBlocks + 44
+
+ db 2 ; bg events
+ bg_event 3, 0, 0, 1
+ bg_event 4, 1, 0, 2
+
+ db 4 ; person events
+ object_event 3, 2, SPRITE_SAGE, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 3, 0, 0
+ object_event 4, 7, SPRITE_SAGE, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 5, 0, 0
+ object_event 6, 7, SPRITE_SAGE, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 5, 0, 0
+ object_event 7, 1, SPRITE_SAGE, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 4, 0, 0
+
+OldCityTower4F_Blocks::
+INCBIN "maps/OldCityTower4F.blk"
diff --git a/data/maps/objects/OldCityTower5F.asm b/data/maps/objects/OldCityTower5F.asm
new file mode 100644
index 0000000..590aad9
--- /dev/null
+++ b/data/maps/objects/OldCityTower5F.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/OldCityTower5F.asm", ROMX
+
+ map_attributes OldCityTower5F, OLD_CITY_TOWER_5F, 0
+
+OldCityTower5F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 5, 5, 2, OLD_CITY_TOWER_4F, wOverworldMapBlocks + 30
+
+ db 3 ; bg events
+ bg_event 2, 0, 0, 1
+ bg_event 3, 0, 0, 2
+ bg_event 4, 1, 0, 3
+
+ db 1 ; person events
+ object_event 2, 3, SPRITE_SAGE, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+OldCityTower5F_Blocks::
+INCBIN "maps/OldCityTower5F.blk"
diff --git a/data/maps/objects/PlayerHouse1F.asm b/data/maps/objects/PlayerHouse1F.asm
new file mode 100644
index 0000000..4721993
--- /dev/null
+++ b/data/maps/objects/PlayerHouse1F.asm
@@ -0,0 +1,26 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/PlayerHouse1F.asm", ROMX
+
+ map_attributes PlayerHouse1F, PLAYER_HOUSE_1F, 0
+
+PlayerHouse1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 6, 7, 1, SILENT_HILL, wOverworldMapBlocks + 48
+ warp_event 7, 7, 1, SILENT_HILL, wOverworldMapBlocks + 48
+ warp_event 9, 0, 1, PLAYER_HOUSE_2F, wOverworldMapBlocks + 16
+
+ db 5 ; bg events
+ bg_event 0, 1, 0, 1
+ bg_event 1, 1, 0, 2
+ bg_event 2, 1, 0, 3
+ bg_event 4, 1, 0, 4
+ bg_event 5, 1, 0, 5
+
+ db 1 ; person events
+ object_event 7, 3, SPRITE_MOM, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+PlayerHouse1F_Blocks::
+INCBIN "maps/PlayerHouse1F.blk"
diff --git a/data/maps/objects/PlayerHouse2F.asm b/data/maps/objects/PlayerHouse2F.asm
new file mode 100644
index 0000000..6e6fc68
--- /dev/null
+++ b/data/maps/objects/PlayerHouse2F.asm
@@ -0,0 +1,25 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/PlayerHouse2F.asm", ROMX
+
+ map_attributes PlayerHouse2F, PLAYER_HOUSE_2F, 0
+
+PlayerHouse2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 9, 0, 3, PLAYER_HOUSE_1F, wOverworldMapBlocks + 16
+
+ db 5 ; bg events
+ bg_event 1, 1, 0, 1
+ bg_event 2, 1, 0, 2
+ bg_event 3, 1, 0, 3
+ bg_event 5, 1, 0, 4
+ bg_event 7, 2, 0, 5
+
+ db 2 ; person events
+ object_event 8, 1, SPRITE_ROCKER, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 1, SPRITE_PIPPI, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+PlayerHouse2F_Blocks::
+INCBIN "maps/PlayerHouse2F.blk"
diff --git a/data/maps/objects/PowerPlant1.asm b/data/maps/objects/PowerPlant1.asm
new file mode 100644
index 0000000..9a8f33e
--- /dev/null
+++ b/data/maps/objects/PowerPlant1.asm
@@ -0,0 +1,17 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/PowerPlant1.asm", ROMX
+
+ map_attributes PowerPlant1, POWER_PLANT_1, 0
+
+PowerPlant1_MapEvents::
+ dw $0 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+PowerPlant1_Blocks::
+INCBIN "maps/PowerPlant1.blk"
diff --git a/data/maps/objects/PowerPlant2.asm b/data/maps/objects/PowerPlant2.asm
new file mode 100644
index 0000000..9f68bb5
--- /dev/null
+++ b/data/maps/objects/PowerPlant2.asm
@@ -0,0 +1,17 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/PowerPlant2.asm", ROMX
+
+ map_attributes PowerPlant2, POWER_PLANT_2, 0
+
+PowerPlant2_MapEvents::
+ dw $0 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+PowerPlant2_Blocks::
+INCBIN "maps/PowerPlant2.blk"
diff --git a/data/maps/objects/PowerPlant3.asm b/data/maps/objects/PowerPlant3.asm
new file mode 100644
index 0000000..46bdc0f
--- /dev/null
+++ b/data/maps/objects/PowerPlant3.asm
@@ -0,0 +1,17 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/PowerPlant3.asm", ROMX
+
+ map_attributes PowerPlant3, POWER_PLANT_3, 0
+
+PowerPlant3_MapEvents::
+ dw $0 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+PowerPlant3_Blocks::
+INCBIN "maps/PowerPlant3.blk"
diff --git a/data/maps/objects/PowerPlant4.asm b/data/maps/objects/PowerPlant4.asm
new file mode 100644
index 0000000..9c5ee38
--- /dev/null
+++ b/data/maps/objects/PowerPlant4.asm
@@ -0,0 +1,17 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/PowerPlant4.asm", ROMX
+
+ map_attributes PowerPlant4, POWER_PLANT_4, 0
+
+PowerPlant4_MapEvents::
+ dw $0 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+PowerPlant4_Blocks::
+INCBIN "maps/PowerPlant4.blk"
diff --git a/data/maps/objects/Prince.asm b/data/maps/objects/Prince.asm
new file mode 100644
index 0000000..8923d37
--- /dev/null
+++ b/data/maps/objects/Prince.asm
@@ -0,0 +1,19 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Prince.asm", ROMX
+
+ map_attributes Prince, PRINCE, NORTH | SOUTH
+ connection north, MtFujiRoute, MT_FUJI_ROUTE, 0, 0, 10
+ connection south, PrinceRoute, PRINCE_ROUTE, 0, 0, 10
+
+Prince_MapEvents::
+ dw $0 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+Prince_Blocks::
+INCBIN "maps/Prince.blk"
diff --git a/data/maps/objects/PrinceRoute.asm b/data/maps/objects/PrinceRoute.asm
new file mode 100644
index 0000000..40ebef3
--- /dev/null
+++ b/data/maps/objects/PrinceRoute.asm
@@ -0,0 +1,19 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/PrinceRoute.asm", ROMX
+
+ map_attributes PrinceRoute, PRINCE_ROUTE, NORTH | SOUTH
+ connection north, Prince, PRINCE, 0, 0, 10
+ connection south, SilentHill, SILENT_HILL, 0, 0, 10
+
+PrinceRoute_MapEvents::
+ dw $0 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+PrinceRoute_Blocks::
+INCBIN "maps/PrinceRoute.blk"
diff --git a/data/maps/objects/Route15.asm b/data/maps/objects/Route15.asm
new file mode 100644
index 0000000..7f3329e
--- /dev/null
+++ b/data/maps/objects/Route15.asm
@@ -0,0 +1,26 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Route15.asm", ROMX
+
+ map_attributes Route15, ROUTE_15, NORTH | EAST
+ connection north, BaadonRoute3, BAADON_ROUTE_3, 0, 0, 10
+ connection east, Newtype, NEWTYPE, 0, 0, 12
+
+Route15_MapEvents::
+ dw $4000 ; unknown
+
+ db 7 ; warp events
+ warp_event 8, 5, 1, BAADON_ROUTE_GATE_NEWTYPE, wOverworldMapBlocks + 68
+ warp_event 9, 5, 2, BAADON_ROUTE_GATE_NEWTYPE, wOverworldMapBlocks + 68
+ warp_event 9, 10, 1, ROUTE_15_POKECENTER_1F, wOverworldMapBlocks + 131
+ warp_event 14, 12, 6, ROUTE_15, wOverworldMapBlocks + 155
+ warp_event 14, 13, 7, ROUTE_15, wOverworldMapBlocks + 155
+ warp_event 21, 8, 4, ROUTE_15, wOverworldMapBlocks + 116
+ warp_event 21, 9, 5, ROUTE_15, wOverworldMapBlocks + 116
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+Route15_Blocks::
+INCBIN "maps/Route15.blk"
diff --git a/data/maps/objects/Route15Pokecenter1F.asm b/data/maps/objects/Route15Pokecenter1F.asm
new file mode 100644
index 0000000..a4dd565
--- /dev/null
+++ b/data/maps/objects/Route15Pokecenter1F.asm
@@ -0,0 +1,24 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Route15Pokecenter1F.asm", ROMX
+
+ map_attributes Route15Pokecenter1F, ROUTE_15_POKECENTER_1F, 0
+
+Route15Pokecenter1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 5, 7, 3, ROUTE_15, wOverworldMapBlocks + 59
+ warp_event 6, 7, 3, ROUTE_15, wOverworldMapBlocks + 60
+ warp_event 0, 7, 1, ROUTE_15_POKECENTER_2F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 4 ; person events
+ object_event 5, 1, SPRITE_NURSE, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 6, SPRITE_GENTLEMAN, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 5, SPRITE_COOLTRAINER_F, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 1, SPRITE_LASS, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+Route15Pokecenter1F_Blocks::
+INCBIN "maps/Route15Pokecenter1F.blk"
diff --git a/data/maps/objects/Route15Pokecenter2F.asm b/data/maps/objects/Route15Pokecenter2F.asm
new file mode 100644
index 0000000..9ac2787
--- /dev/null
+++ b/data/maps/objects/Route15Pokecenter2F.asm
@@ -0,0 +1,18 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Route15Pokecenter2F.asm", ROMX
+
+ map_attributes Route15Pokecenter2F, ROUTE_15_POKECENTER_2F, 0
+
+Route15Pokecenter2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 0, 7, 3, ROUTE_15_POKECENTER_1F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+Route15Pokecenter2F_Blocks::
+INCBIN "maps/Route15Pokecenter2F.blk"
diff --git a/data/maps/objects/Route18.asm b/data/maps/objects/Route18.asm
new file mode 100644
index 0000000..95d85f5
--- /dev/null
+++ b/data/maps/objects/Route18.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Route18.asm", ROMX
+
+ map_attributes Route18, ROUTE_18, NORTH | WEST
+ connection north, BullForestRoute1, BULL_FOREST_ROUTE_1, 0, 0, 13
+ connection west, NewtypeRoute, NEWTYPE_ROUTE, 36, 0, 9
+
+Route18_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 8, 5, 1, NEWTYPE_ROUTE_GATE, wOverworldMapBlocks + 53
+ warp_event 9, 5, 2, NEWTYPE_ROUTE_GATE, wOverworldMapBlocks + 53
+ warp_event 13, 28, 1, ROUTE_18_POKECENTER_1F, wOverworldMapBlocks + 247
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+Route18_Blocks::
+INCBIN "maps/Route18.blk"
diff --git a/data/maps/objects/Route18Pokecenter1F.asm b/data/maps/objects/Route18Pokecenter1F.asm
new file mode 100644
index 0000000..9018bcf
--- /dev/null
+++ b/data/maps/objects/Route18Pokecenter1F.asm
@@ -0,0 +1,24 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Route18Pokecenter1F.asm", ROMX
+
+ map_attributes Route18Pokecenter1F, ROUTE_18_POKECENTER_1F, 0
+
+Route18Pokecenter1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 5, 7, 3, ROUTE_18, wOverworldMapBlocks + 59
+ warp_event 6, 7, 3, ROUTE_18, wOverworldMapBlocks + 60
+ warp_event 0, 7, 1, ROUTE_18_POKECENTER_2F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 4 ; person events
+ object_event 5, 1, SPRITE_NURSE, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 6, SPRITE_GENTLEMAN, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 5, SPRITE_COOLTRAINER_F, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 1, SPRITE_LASS, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+Route18Pokecenter1F_Blocks::
+INCBIN "maps/Route18Pokecenter1F.blk"
diff --git a/data/maps/objects/Route18Pokecenter2F.asm b/data/maps/objects/Route18Pokecenter2F.asm
new file mode 100644
index 0000000..6c95739
--- /dev/null
+++ b/data/maps/objects/Route18Pokecenter2F.asm
@@ -0,0 +1,18 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Route18Pokecenter2F.asm", ROMX
+
+ map_attributes Route18Pokecenter2F, ROUTE_18_POKECENTER_2F, 0
+
+Route18Pokecenter2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 0, 7, 3, ROUTE_18_POKECENTER_1F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+Route18Pokecenter2F_Blocks::
+INCBIN "maps/Route18Pokecenter2F.blk"
diff --git a/data/maps/objects/Route1Gate1F.asm b/data/maps/objects/Route1Gate1F.asm
new file mode 100644
index 0000000..fcbd314
--- /dev/null
+++ b/data/maps/objects/Route1Gate1F.asm
@@ -0,0 +1,24 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Route1Gate1F.asm", ROMX
+
+ map_attributes Route1Gate1F, ROUTE_1_GATE_1F, 0
+
+Route1Gate1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 5 ; warp events
+ warp_event 4, 7, 1, ROUTE_1_P2, wOverworldMapBlocks + 47
+ warp_event 5, 7, 2, ROUTE_1_P2, wOverworldMapBlocks + 47
+ warp_event 4, 0, 12, OLD_CITY, wOverworldMapBlocks + 14
+ warp_event 5, 0, 13, OLD_CITY, wOverworldMapBlocks + 14
+ warp_event 1, 0, 1, ROUTE_1_GATE_2F, wOverworldMapBlocks + 12
+
+ db 0 ; bg events
+
+ db 2 ; person events
+ object_event 6, 1, SPRITE_YOUNGSTER, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 1, 6, SPRITE_COOLTRAINER_F, SLOW_STEP_DOWN, 1, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+Route1Gate1F_Blocks::
+INCBIN "maps/Route1Gate1F.blk"
diff --git a/data/maps/objects/Route1Gate2F.asm b/data/maps/objects/Route1Gate2F.asm
new file mode 100644
index 0000000..18fe387
--- /dev/null
+++ b/data/maps/objects/Route1Gate2F.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Route1Gate2F.asm", ROMX
+
+ map_attributes Route1Gate2F, ROUTE_1_GATE_2F, 0
+
+Route1Gate2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 5, 0, 5, ROUTE_1_GATE_1F, wOverworldMapBlocks + 13
+
+ db 2 ; bg events
+ bg_event 1, 0, 0, 1
+ bg_event 3, 0, 0, 2
+
+ db 2 ; person events
+ object_event 3, 3, SPRITE_LASS, FACE_UP, 1, 1, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 4, SPRITE_TWIN, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+Route1Gate2F_Blocks::
+INCBIN "maps/Route1Gate2F.blk"
diff --git a/data/maps/objects/Route1P1.asm b/data/maps/objects/Route1P1.asm
new file mode 100644
index 0000000..f779b26
--- /dev/null
+++ b/data/maps/objects/Route1P1.asm
@@ -0,0 +1,25 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Route1P1.asm", ROMX
+
+ map_attributes Route1P1, ROUTE_1_P1, WEST | EAST
+ connection west, Route1P2, ROUTE_1_P2, -3, 6, 12
+ connection east, SilentHill, SILENT_HILL, 0, 0, 9
+
+Route1P1_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 8, 8, 2, SHIZUKANA_OKA, wOverworldMapBlocks + 110
+ warp_event 8, 9, 3, SHIZUKANA_OKA, wOverworldMapBlocks + 110
+
+ db 2 ; bg events
+ bg_event 12, 7, 0, 1
+ bg_event 20, 8, 0, 2
+
+ db 2 ; person events
+ object_event 20, 5, SPRITE_SUPER_NERD, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 18, 12, SPRITE_YOUNGSTER, FACE_UP, 1, 1, -1, -1, 0, 0, 0, 0, 0, 0
+
+Route1P1_Blocks::
+INCBIN "maps/Route1P1.blk"
diff --git a/data/maps/objects/Route1P2.asm b/data/maps/objects/Route1P2.asm
new file mode 100644
index 0000000..96b2d46
--- /dev/null
+++ b/data/maps/objects/Route1P2.asm
@@ -0,0 +1,26 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Route1P2.asm", ROMX
+
+ map_attributes Route1P2, ROUTE_1_P2, NORTH | EAST
+ connection north, OldCity, OLD_CITY, -3, 2, 16
+ connection east, Route1P1, ROUTE_1_P1, 9, 0, 9
+
+Route1P2_MapEvents::
+ dw $4000 ; unknown
+
+ db 4 ; warp events
+ warp_event 8, 5, 1, ROUTE_1_GATE_1F, wOverworldMapBlocks + 53
+ warp_event 9, 5, 2, ROUTE_1_GATE_1F, wOverworldMapBlocks + 53
+ warp_event 8, 25, 6, SHIZUKANA_OKA, wOverworldMapBlocks + 213
+ warp_event 9, 25, 9, SHIZUKANA_OKA, wOverworldMapBlocks + 213
+
+ db 1 ; bg events
+ bg_event 10, 20, 0, 1
+
+ db 2 ; person events
+ object_event 8, 6, SPRITE_SILVER, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 7, 15, SPRITE_TEACHER, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 3, 0, 0
+
+Route1P2_Blocks::
+INCBIN "maps/Route1P2.blk"
diff --git a/data/maps/objects/Route2.asm b/data/maps/objects/Route2.asm
new file mode 100644
index 0000000..f17db86
--- /dev/null
+++ b/data/maps/objects/Route2.asm
@@ -0,0 +1,27 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Route2.asm", ROMX
+
+ map_attributes Route2, ROUTE_2, WEST | EAST
+ connection west, West, WEST, -3, 2, 15
+ connection east, OldCity, OLD_CITY, -3, 2, 15
+
+Route2_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 6, 5, 3, ROUTE_2_GATE_1F, wOverworldMapBlocks + 67
+ warp_event 15, 4, 1, ROUTE_2_HOUSE, wOverworldMapBlocks + 71
+
+ db 3 ; bg events
+ bg_event 15, 4, 0, 3
+ bg_event 14, 5, 0, 1
+ bg_event 24, 10, 0, 2
+
+ db 3 ; person events
+ object_event 19, 11, SPRITE_YOUNGSTER, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 5, 0, 0
+ object_event 15, 7, SPRITE_YOUNGSTER, FACE_UP, 1, 1, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 8, SPRITE_YOUNGSTER, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 3, 0, 0
+
+Route2_Blocks::
+INCBIN "maps/Route2.blk"
diff --git a/data/maps/objects/Route2Gate1F.asm b/data/maps/objects/Route2Gate1F.asm
new file mode 100644
index 0000000..a9639b0
--- /dev/null
+++ b/data/maps/objects/Route2Gate1F.asm
@@ -0,0 +1,24 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Route2Gate1F.asm", ROMX
+
+ map_attributes Route2Gate1F, ROUTE_2_GATE_1F, 0
+
+Route2Gate1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 5 ; warp events
+ warp_event 0, 7, 13, WEST, wOverworldMapBlocks + 45
+ warp_event 1, 7, 13, WEST, wOverworldMapBlocks + 45
+ warp_event 8, 7, 1, ROUTE_2, wOverworldMapBlocks + 49
+ warp_event 9, 7, 1, ROUTE_2, wOverworldMapBlocks + 49
+ warp_event 1, 0, 1, ROUTE_2_GATE_2F, wOverworldMapBlocks + 12
+
+ db 0 ; bg events
+
+ db 2 ; person events
+ object_event 8, 3, SPRITE_BUG_CATCHER_BOY, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 0, 1, SPRITE_YOUNGSTER, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+Route2Gate1F_Blocks::
+INCBIN "maps/Route2Gate1F.blk"
diff --git a/data/maps/objects/Route2Gate2F.asm b/data/maps/objects/Route2Gate2F.asm
new file mode 100644
index 0000000..1fc7984
--- /dev/null
+++ b/data/maps/objects/Route2Gate2F.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Route2Gate2F.asm", ROMX
+
+ map_attributes Route2Gate2F, ROUTE_2_GATE_2F, 0
+
+Route2Gate2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 5, 0, 5, ROUTE_2_GATE_1F, wOverworldMapBlocks + 13
+
+ db 2 ; bg events
+ bg_event 1, 0, 0, 1
+ bg_event 3, 0, 0, 2
+
+ db 2 ; person events
+ object_event 2, 2, SPRITE_LASS, SLOW_STEP_DOWN, 1, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 5, 4, SPRITE_TWIN, SLOW_STEP_DOWN, 1, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+Route2Gate2F_Blocks::
+INCBIN "maps/Route2Gate2F.blk"
diff --git a/data/maps/objects/Route2House.asm b/data/maps/objects/Route2House.asm
new file mode 100644
index 0000000..2088ef6
--- /dev/null
+++ b/data/maps/objects/Route2House.asm
@@ -0,0 +1,26 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Route2House.asm", ROMX
+
+ map_attributes Route2House, ROUTE_2_HOUSE, 0
+
+Route2House_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 2, ROUTE_2, wOverworldMapBlocks + 43
+ warp_event 5, 7, 2, ROUTE_2, wOverworldMapBlocks + 43
+
+ db 6 ; bg events
+ bg_event 0, 0, 0, 1
+ bg_event 2, 0, 0, 1
+ bg_event 4, 0, 0, 1
+ bg_event 6, 0, 0, 1
+ bg_event 0, 3, 0, 2
+ bg_event 4, 3, 0, 3
+
+ db 1 ; person events
+ object_event 6, 6, SPRITE_SCIENTIST, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+Route2House_Blocks::
+INCBIN "maps/Route2House.blk"
diff --git a/data/maps/objects/RouteSilentEast.asm b/data/maps/objects/RouteSilentEast.asm
new file mode 100644
index 0000000..825ee45
--- /dev/null
+++ b/data/maps/objects/RouteSilentEast.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/RouteSilentEast.asm", ROMX
+
+ map_attributes RouteSilentEast, ROUTE_SILENT_EAST, WEST | EAST
+ connection west, SilentHill, SILENT_HILL, 0, 0, 9
+ connection east, Kanto, KANTO, -3, 6, 15
+
+RouteSilentEast_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 55, 9, 1, ROUTE_SILENT_EAST_GATE, wOverworldMapBlocks + 208
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+RouteSilentEast_Blocks::
+INCBIN "maps/RouteSilentEast.blk"
diff --git a/data/maps/objects/RouteSilentEastGate.asm b/data/maps/objects/RouteSilentEastGate.asm
new file mode 100644
index 0000000..e292b83
--- /dev/null
+++ b/data/maps/objects/RouteSilentEastGate.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/RouteSilentEastGate.asm", ROMX
+
+ map_attributes RouteSilentEastGate, ROUTE_SILENT_EAST_GATE, 0
+
+RouteSilentEastGate_MapEvents::
+ dw $4000 ; unknown
+
+ db 4 ; warp events
+ warp_event 0, 7, 1, ROUTE_SILENT_EAST, wOverworldMapBlocks + 45
+ warp_event 1, 7, 1, ROUTE_SILENT_EAST, wOverworldMapBlocks + 45
+ warp_event 8, 7, 29, KANTO, wOverworldMapBlocks + 49
+ warp_event 9, 7, 29, KANTO, wOverworldMapBlocks + 49
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+RouteSilentEastGate_Blocks::
+INCBIN "maps/RouteSilentEastGate.blk"
diff --git a/data/maps/objects/RuinsOfAlphEntrance.asm b/data/maps/objects/RuinsOfAlphEntrance.asm
new file mode 100644
index 0000000..e0e5d1f
--- /dev/null
+++ b/data/maps/objects/RuinsOfAlphEntrance.asm
@@ -0,0 +1,17 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/RuinsOfAlphEntrance.asm", ROMX
+
+ map_attributes RuinsOfAlphEntrance, RUINS_OF_ALPH_ENTRANCE, 0
+
+RuinsOfAlphEntrance_MapEvents::
+ dw $0 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+RuinsOfAlphEntrance_Blocks::
+INCBIN "maps/RuinsOfAlphEntrance.blk"
diff --git a/data/maps/objects/RuinsOfAlphMain.asm b/data/maps/objects/RuinsOfAlphMain.asm
new file mode 100644
index 0000000..decc978
--- /dev/null
+++ b/data/maps/objects/RuinsOfAlphMain.asm
@@ -0,0 +1,17 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/RuinsOfAlphMain.asm", ROMX
+
+ map_attributes RuinsOfAlphMain, RUINS_OF_ALPH_MAIN, 0
+
+RuinsOfAlphMain_MapEvents::
+ dw $0 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+RuinsOfAlphMain_Blocks::
+INCBIN "maps/RuinsOfAlphMain.blk"
diff --git a/data/maps/objects/ShizukanaOka.asm b/data/maps/objects/ShizukanaOka.asm
new file mode 100644
index 0000000..e4c1e51
--- /dev/null
+++ b/data/maps/objects/ShizukanaOka.asm
@@ -0,0 +1,35 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/ShizukanaOka.asm", ROMX
+
+ map_attributes ShizukanaOka, SHIZUKANA_OKA, 0
+
+ShizukanaOka_MapEvents::
+ dw $4000 ; unknown
+
+ db 10 ; warp events
+ warp_event 49, 28, 1, ROUTE_1_P1, wOverworldMapBlocks + 490
+ warp_event 49, 29, 1, ROUTE_1_P1, wOverworldMapBlocks + 490
+ warp_event 49, 30, 2, ROUTE_1_P1, wOverworldMapBlocks + 521
+ warp_event 49, 31, 2, ROUTE_1_P1, wOverworldMapBlocks + 521
+ warp_event 4, 0, 3, ROUTE_1_P2, wOverworldMapBlocks + 34
+ warp_event 5, 0, 3, ROUTE_1_P2, wOverworldMapBlocks + 34
+ warp_event 6, 0, 3, ROUTE_1_P2, wOverworldMapBlocks + 35
+ warp_event 7, 0, 4, ROUTE_1_P2, wOverworldMapBlocks + 35
+ warp_event 8, 0, 4, ROUTE_1_P2, wOverworldMapBlocks + 36
+ warp_event 9, 0, 4, ROUTE_1_P2, wOverworldMapBlocks + 36
+
+ db 2 ; bg events
+ bg_event 9, 2, 0, 1
+ bg_event 47, 28, 0, 2
+
+ db 6 ; person events
+ object_event 41, 28, SPRITE_ROCKER, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 7, SPRITE_YOUNGSTER, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 5, 0, 0
+ object_event 41, 19, SPRITE_YOUNGSTER, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 4, 0, 0
+ object_event 27, 14, SPRITE_FISHER, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 2, 0, 0
+ object_event 36, 16, SPRITE_TEACHER, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 5, 0, 0
+ object_event 9, 25, SPRITE_YOUNGSTER, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 4, 0, 0
+
+ShizukanaOka_Blocks::
+INCBIN "maps/ShizukanaOka.blk"
diff --git a/data/maps/objects/SilentHill.asm b/data/maps/objects/SilentHill.asm
new file mode 100644
index 0000000..1e3d49f
--- /dev/null
+++ b/data/maps/objects/SilentHill.asm
@@ -0,0 +1,34 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/SilentHill.asm", ROMX
+
+ map_attributes SilentHill, SILENT_HILL, NORTH | WEST | EAST
+ connection north, PrinceRoute, PRINCE_ROUTE, 0, 0, 10
+ connection west, Route1P1, ROUTE_1_P1, 0, 0, 9
+ connection east, RouteSilentEast, ROUTE_SILENT_EAST, 0, 0, 9
+
+SilentHill_MapEvents::
+ dw $4000 ; unknown
+
+ db 5 ; warp events
+ warp_event 5, 4, 1, PLAYER_HOUSE_1F, wOverworldMapBlocks + 51
+ warp_event 13, 4, 1, SILENT_HILL_POKECENTER, wOverworldMapBlocks + 55
+ warp_event 3, 12, 1, SILENT_HILL_HOUSE, wOverworldMapBlocks + 114
+ warp_event 14, 11, 1, SILENT_HILL_LAB_FRONT, wOverworldMapBlocks + 104
+ warp_event 15, 11, 2, SILENT_HILL_LAB_FRONT, wOverworldMapBlocks + 104
+
+ db 5 ; bg events
+ bg_event 8, 4, 0, 1
+ bg_event 14, 4, 0, 2
+ bg_event 16, 5, 0, 3
+ bg_event 10, 11, 0, 4
+ bg_event 6, 12, 0, 5
+
+ db 4 ; person events
+ object_event 6, 10, SPRITE_SILVER, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 9, SPRITE_BLUE, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 8, 6, SPRITE_TEACHER, SLOW_STEP_DOWN, 1, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 13, SPRITE_SUPER_NERD, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+SilentHill_Blocks::
+INCBIN "maps/SilentHill.blk"
diff --git a/data/maps/objects/SilentHillHouse.asm b/data/maps/objects/SilentHillHouse.asm
new file mode 100644
index 0000000..eb2fb03
--- /dev/null
+++ b/data/maps/objects/SilentHillHouse.asm
@@ -0,0 +1,27 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/SilentHillHouse.asm", ROMX
+
+ map_attributes SilentHillHouse, SILENT_HILL_HOUSE, 0
+
+SilentHillHouse_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 3, SILENT_HILL, wOverworldMapBlocks + 47
+ warp_event 5, 7, 3, SILENT_HILL, wOverworldMapBlocks + 47
+
+ db 6 ; bg events
+ bg_event 0, 1, 0, 1
+ bg_event 4, 1, 0, 2
+ bg_event 5, 1, 0, 3
+ bg_event 9, 1, 0, 4
+ bg_event 8, 1, 0, 5
+ bg_event 2, 0, 0, 6
+
+ db 2 ; person events
+ object_event 5, 3, SPRITE_SILVERS_MOM, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 5, 4, SPRITE_ROCKER, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+SilentHillHouse_Blocks::
+INCBIN "maps/SilentHillHouse.blk"
diff --git a/data/maps/objects/SilentHillLabBack.asm b/data/maps/objects/SilentHillLabBack.asm
new file mode 100644
index 0000000..ed60cec
--- /dev/null
+++ b/data/maps/objects/SilentHillLabBack.asm
@@ -0,0 +1,29 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/SilentHillLabBack.asm", ROMX
+
+ map_attributes SilentHillLabBack, SILENT_HILL_LAB_BACK, 0
+
+SilentHillLabBack_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 3, 7, 3, SILENT_HILL_LAB_FRONT, wOverworldMapBlocks + 42
+ warp_event 4, 7, 3, SILENT_HILL_LAB_FRONT, wOverworldMapBlocks + 43
+
+ db 5 ; bg events
+ bg_event 0, 1, 0, 1
+ bg_event 1, 1, 0, 2
+ bg_event 2, 1, 0, 3
+ bg_event 3, 1, 0, 4
+ bg_event 6, 0, 0, 5
+
+ db 5 ; person events
+ object_event 4, 2, SPRITE_OKIDO, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 3, 4, SPRITE_SILVER, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 5, 2, SPRITE_POKE_BALL, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 2, SPRITE_POKE_BALL, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 7, 2, SPRITE_POKE_BALL, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+SilentHillLabBack_Blocks::
+INCBIN "maps/SilentHillLabBack.blk"
diff --git a/data/maps/objects/SilentHillLabFront.asm b/data/maps/objects/SilentHillLabFront.asm
new file mode 100644
index 0000000..66cb05a
--- /dev/null
+++ b/data/maps/objects/SilentHillLabFront.asm
@@ -0,0 +1,46 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/SilentHillLabFront.asm", ROMX
+
+ map_attributes SilentHillLabFront, SILENT_HILL_LAB_FRONT, 0
+
+SilentHillLabFront_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 3, 15, 4, SILENT_HILL, wOverworldMapBlocks + 82
+ warp_event 4, 15, 5, SILENT_HILL, wOverworldMapBlocks + 83
+ warp_event 4, 0, 2, SILENT_HILL_LAB_BACK, wOverworldMapBlocks + 13
+
+ db 15 ; bg events
+ bg_event 6, 1, 0, 1
+ bg_event 2, 0, 0, 2
+ bg_event 0, 7, 0, 3
+ bg_event 1, 7, 0, 4
+ bg_event 2, 7, 0, 5
+ bg_event 5, 7, 0, 6
+ bg_event 6, 7, 0, 7
+ bg_event 7, 7, 0, 8
+ bg_event 0, 11, 0, 9
+ bg_event 1, 11, 0, 10
+ bg_event 2, 11, 0, 11
+ bg_event 5, 11, 0, 12
+ bg_event 6, 11, 0, 13
+ bg_event 7, 11, 0, 14
+ bg_event 4, 0, 0, 15
+
+ db 11 ; person events
+ object_event 4, 2, SPRITE_OKIDO, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 0, SPRITE_OKIDO, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 3, 4, SPRITE_SILVER, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 0, SPRITE_SILVER, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 14, SPRITE_BLUE, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 1, 3, SPRITE_BLUE, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 1, 13, SPRITE_NANAMI, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 1, 8, SPRITE_SCIENTIST, SLOW_STEP_DOWN, 1, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 12, SPRITE_SCIENTIST, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 0, 1, SPRITE_POKEDEX, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 1, 1, SPRITE_POKEDEX, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+SilentHillLabFront_Blocks::
+INCBIN "maps/SilentHillLabFront.blk"
diff --git a/data/maps/objects/SilentHillPokecenter.asm b/data/maps/objects/SilentHillPokecenter.asm
new file mode 100644
index 0000000..cd68ffc
--- /dev/null
+++ b/data/maps/objects/SilentHillPokecenter.asm
@@ -0,0 +1,25 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/SilentHillPokecenter.asm", ROMX
+
+ map_attributes SilentHillPokecenter, SILENT_HILL_POKECENTER, 0
+
+SilentHillPokecenter_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 5, 7, 2, SILENT_HILL, wOverworldMapBlocks + 59
+ warp_event 6, 7, 2, SILENT_HILL, wOverworldMapBlocks + 60
+
+ db 1 ; bg events
+ bg_event 13, 1, 0, 1
+
+ db 5 ; person events
+ object_event 5, 1, SPRITE_NURSE, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 6, SPRITE_GENTLEMAN, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 3, 4, SPRITE_24, SLOW_STEP_DOWN, 1, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 1, SPRITE_YOUNGSTER, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 1, SPRITE_SIDON, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+SilentHillPokecenter_Blocks::
+INCBIN "maps/SilentHillPokecenter.blk"
diff --git a/data/maps/objects/SlowpokeWellEntrance.asm b/data/maps/objects/SlowpokeWellEntrance.asm
new file mode 100644
index 0000000..3c7ede6
--- /dev/null
+++ b/data/maps/objects/SlowpokeWellEntrance.asm
@@ -0,0 +1,17 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/SlowpokeWellEntrance.asm", ROMX
+
+ map_attributes SlowpokeWellEntrance, SLOWPOKE_WELL_ENTRANCE, 0
+
+SlowpokeWellEntrance_MapEvents::
+ dw $0 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+SlowpokeWellEntrance_Blocks::
+INCBIN "maps/SlowpokeWellEntrance.blk"
diff --git a/data/maps/objects/SlowpokeWellMain.asm b/data/maps/objects/SlowpokeWellMain.asm
new file mode 100644
index 0000000..0a20a6f
--- /dev/null
+++ b/data/maps/objects/SlowpokeWellMain.asm
@@ -0,0 +1,17 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/SlowpokeWellMain.asm", ROMX
+
+ map_attributes SlowpokeWellMain, SLOWPOKE_WELL_MAIN, 0
+
+SlowpokeWellMain_MapEvents::
+ dw $0 ; unknown
+
+ db 0 ; warp events
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+SlowpokeWellMain_Blocks::
+INCBIN "maps/SlowpokeWellMain.blk"
diff --git a/data/maps/objects/South.asm b/data/maps/objects/South.asm
new file mode 100644
index 0000000..8c7dd82
--- /dev/null
+++ b/data/maps/objects/South.asm
@@ -0,0 +1,38 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/South.asm", ROMX
+
+ map_attributes South, SOUTH, NORTH | SOUTH | EAST
+ connection north, FontoRoute5, FONTO_ROUTE_5, 10, 0, 10
+ connection south, HaitekuWestRouteOcean, HAITEKU_WEST_ROUTE_OCEAN, 10, 0, 10
+ connection east, FontoRoute1, FONTO_ROUTE_1, 0, 0, 9
+
+South_MapEvents::
+ dw $4000 ; unknown
+
+ db 9 ; warp events
+ warp_event 26, 10, 1, SOUTH_HOUSE_1, wOverworldMapBlocks + 170
+ warp_event 33, 14, 1, SOUTH_POKECENTER_1F, wOverworldMapBlocks + 225
+ warp_event 19, 22, 1, SOUTH_MART, wOverworldMapBlocks + 322
+ warp_event 33, 23, 1, SOUTH_HOUSE_2, wOverworldMapBlocks + 329
+ warp_event 30, 5, 1, FONTO_ROUTE_GATE_3, wOverworldMapBlocks + 94
+ warp_event 31, 5, 2, FONTO_ROUTE_GATE_3, wOverworldMapBlocks + 94
+ warp_event 35, 19, 2, FONTO_ROUTE_GATE_1, wOverworldMapBlocks + 278
+ warp_event 30, 30, 3, HAITEKU_WEST_ROUTE_GATE, wOverworldMapBlocks + 432
+ warp_event 31, 30, 4, HAITEKU_WEST_ROUTE_GATE, wOverworldMapBlocks + 432
+
+ db 5 ; bg events
+ bg_event 30, 14, 0, 1
+ bg_event 34, 14, 0, 2
+ bg_event 28, 17, 0, 3
+ bg_event 16, 22, 0, 4
+ bg_event 20, 22, 0, 5
+
+ db 4 ; person events
+ object_event 25, 21, SPRITE_TWIN, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 24, 21, SPRITE_PIPPI, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 22, 16, SPRITE_ROCKER, SLOW_STEP_DOWN, 3, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 30, 11, SPRITE_FISHING_GURU, FACE_UP, 1, 1, -1, -1, 0, 0, 0, 0, 0, 0
+
+South_Blocks::
+INCBIN "maps/South.blk"
diff --git a/data/maps/objects/SouthHouse1.asm b/data/maps/objects/SouthHouse1.asm
new file mode 100644
index 0000000..07db5fa
--- /dev/null
+++ b/data/maps/objects/SouthHouse1.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/SouthHouse1.asm", ROMX
+
+ map_attributes SouthHouse1, SOUTH_HOUSE_1, 0
+
+SouthHouse1_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 1, SOUTH, wOverworldMapBlocks + 47
+ warp_event 5, 7, 1, SOUTH, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 2, 3, SPRITE_GRANNY, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+SouthHouse1_Blocks::
+INCBIN "maps/SouthHouse1.blk"
diff --git a/data/maps/objects/SouthHouse2.asm b/data/maps/objects/SouthHouse2.asm
new file mode 100644
index 0000000..2474d72
--- /dev/null
+++ b/data/maps/objects/SouthHouse2.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/SouthHouse2.asm", ROMX
+
+ map_attributes SouthHouse2, SOUTH_HOUSE_2, 0
+
+SouthHouse2_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 4, SOUTH, wOverworldMapBlocks + 47
+ warp_event 5, 7, 4, SOUTH, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 1, 2, SPRITE_FISHER, SLOW_STEP_DOWN, 1, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+SouthHouse2_Blocks::
+INCBIN "maps/SouthHouse2.blk"
diff --git a/data/maps/objects/SouthMart.asm b/data/maps/objects/SouthMart.asm
new file mode 100644
index 0000000..a173179
--- /dev/null
+++ b/data/maps/objects/SouthMart.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/SouthMart.asm", ROMX
+
+ map_attributes SouthMart, SOUTH_MART, 0
+
+SouthMart_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 3, SOUTH, wOverworldMapBlocks + 59
+ warp_event 5, 7, 3, SOUTH, wOverworldMapBlocks + 59
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 1, 3, SPRITE_CLERK, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 5, SPRITE_GIRL, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 1, SPRITE_POKEFAN_M, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+SouthMart_Blocks::
+INCBIN "maps/SouthMart.blk"
diff --git a/data/maps/objects/SouthPokecenter1F.asm b/data/maps/objects/SouthPokecenter1F.asm
new file mode 100644
index 0000000..3cfe73c
--- /dev/null
+++ b/data/maps/objects/SouthPokecenter1F.asm
@@ -0,0 +1,24 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/SouthPokecenter1F.asm", ROMX
+
+ map_attributes SouthPokecenter1F, SOUTH_POKECENTER_1F, 0
+
+SouthPokecenter1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 5, 7, 2, SOUTH, wOverworldMapBlocks + 59
+ warp_event 6, 7, 2, SOUTH, wOverworldMapBlocks + 60
+ warp_event 0, 7, 1, SOUTH_POKECENTER_2F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 4 ; person events
+ object_event 5, 1, SPRITE_NURSE, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 6, SPRITE_GENTLEMAN, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 5, SPRITE_24, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 1, SPRITE_YOUNGSTER, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+SouthPokecenter1F_Blocks::
+INCBIN "maps/SouthPokecenter1F.blk"
diff --git a/data/maps/objects/SouthPokecenter2F.asm b/data/maps/objects/SouthPokecenter2F.asm
new file mode 100644
index 0000000..5674b0e
--- /dev/null
+++ b/data/maps/objects/SouthPokecenter2F.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/SouthPokecenter2F.asm", ROMX
+
+ map_attributes SouthPokecenter2F, SOUTH_POKECENTER_2F, 0
+
+SouthPokecenter2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 0, 7, 3, SOUTH_POKECENTER_1F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 5, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 7, SPRITE_FISHING_GURU, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+SouthPokecenter2F_Blocks::
+INCBIN "maps/SouthPokecenter2F.blk"
diff --git a/data/maps/objects/Stand.asm b/data/maps/objects/Stand.asm
new file mode 100644
index 0000000..730f369
--- /dev/null
+++ b/data/maps/objects/Stand.asm
@@ -0,0 +1,48 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Stand.asm", ROMX
+
+ map_attributes Stand, STAND, NORTH | SOUTH
+ connection north, BullForestRoute2, BULL_FOREST_ROUTE_2, 10, 0, 10
+ connection south, StandRoute, STAND_ROUTE, 10, 0, 10
+
+Stand_MapEvents::
+ dw $4000 ; unknown
+
+ db 10 ; warp events
+ warp_event 24, 17, 1, STAND_LAB, wOverworldMapBlocks + 247
+ warp_event 33, 20, 1, STAND_POKECENTER_1F, wOverworldMapBlocks + 303
+ warp_event 16, 21, 1, STAND_OFFICE, wOverworldMapBlocks + 295
+ warp_event 35, 26, 1, STAND_MART, wOverworldMapBlocks + 382
+ warp_event 26, 29, 1, STAND_HOUSE, wOverworldMapBlocks + 404
+ warp_event 17, 31, 1, STAND_ROCKET_HOUSE_1F, wOverworldMapBlocks + 425
+ warp_event 34, 31, 1, STAND_LEAGUE_1F, wOverworldMapBlocks + 434
+ warp_event 35, 31, 2, STAND_LEAGUE_1F, wOverworldMapBlocks + 434
+ warp_event 30, 13, 1, BULL_FOREST_ROUTE_GATE_STAND, wOverworldMapBlocks + 198
+ warp_event 31, 13, 2, BULL_FOREST_ROUTE_GATE_STAND, wOverworldMapBlocks + 198
+
+ db 10 ; bg events
+ bg_event 8, 8, 0, 1
+ bg_event 14, 8, 0, 2
+ bg_event 20, 10, 0, 3
+ bg_event 16, 16, 0, 4
+ bg_event 10, 20, 0, 5
+ bg_event 18, 21, 0, 6
+ bg_event 24, 20, 0, 7
+ bg_event 34, 20, 0, 8
+ bg_event 36, 26, 0, 9
+ bg_event 32, 35, 0, 10
+
+ db 9 ; person events
+ object_event 10, 10, SPRITE_POKEFAN_M, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 17, SPRITE_TWIN, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 28, 19, SPRITE_ROCKER, FACE_RIGHT, 0, 3, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 30, 31, SPRITE_TEACHER, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 21, 8, SPRITE_SIDON, FACE_UP, 1, 1, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 13, 6, SPRITE_PIPPI, FACE_UP, 1, 1, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 6, SPRITE_SIDON, FACE_UP, 1, 1, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 15, SPRITE_POPPO, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 21, SPRITE_SIDON, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+Stand_Blocks::
+INCBIN "maps/Stand.blk"
diff --git a/data/maps/objects/StandHouse.asm b/data/maps/objects/StandHouse.asm
new file mode 100644
index 0000000..75655c0
--- /dev/null
+++ b/data/maps/objects/StandHouse.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/StandHouse.asm", ROMX
+
+ map_attributes StandHouse, STAND_HOUSE, 0
+
+StandHouse_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 5, STAND, wOverworldMapBlocks + 47
+ warp_event 5, 7, 5, STAND, wOverworldMapBlocks + 47
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 2, 3, SPRITE_SUPER_NERD, FACE_RIGHT, 0, 1, -1, -1, 0, 0, 0, 0, 0, 0
+
+StandHouse_Blocks::
+INCBIN "maps/StandHouse.blk"
diff --git a/data/maps/objects/StandLab.asm b/data/maps/objects/StandLab.asm
new file mode 100644
index 0000000..eabce9c
--- /dev/null
+++ b/data/maps/objects/StandLab.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/StandLab.asm", ROMX
+
+ map_attributes StandLab, STAND_LAB, 0
+
+StandLab_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 3, 7, 1, STAND, wOverworldMapBlocks + 42
+ warp_event 4, 7, 1, STAND, wOverworldMapBlocks + 43
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 2, 3, SPRITE_NURSE, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+StandLab_Blocks::
+INCBIN "maps/StandLab.blk"
diff --git a/data/maps/objects/StandLeague1F.asm b/data/maps/objects/StandLeague1F.asm
new file mode 100644
index 0000000..00d550c
--- /dev/null
+++ b/data/maps/objects/StandLeague1F.asm
@@ -0,0 +1,25 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/StandLeague1F.asm", ROMX
+
+ map_attributes StandLeague1F, STAND_LEAGUE_1F, 0
+
+StandLeague1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 3, 15, 7, STAND, wOverworldMapBlocks + 82
+ warp_event 4, 15, 8, STAND, wOverworldMapBlocks + 83
+ warp_event 7, 1, 1, STAND_LEAGUE_2F, wOverworldMapBlocks + 14
+
+ db 0 ; bg events
+
+ db 5 ; person events
+ object_event 2, 5, SPRITE_YOUNGSTER, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 7, SPRITE_LASS, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 9, SPRITE_BUG_CATCHER_BOY, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 3, 1, SPRITE_24, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 6, SPRITE_COOLTRAINER_F, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+
+StandLeague1F_Blocks::
+INCBIN "maps/StandLeague1F.blk"
diff --git a/data/maps/objects/StandLeague2F.asm b/data/maps/objects/StandLeague2F.asm
new file mode 100644
index 0000000..9b80537
--- /dev/null
+++ b/data/maps/objects/StandLeague2F.asm
@@ -0,0 +1,23 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/StandLeague2F.asm", ROMX
+
+ map_attributes StandLeague2F, STAND_LEAGUE_2F, 0
+
+StandLeague2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 7, 15, 3, STAND_LEAGUE_1F, wOverworldMapBlocks + 92
+
+ db 0 ; bg events
+
+ db 5 ; person events
+ object_event 4, 7, SPRITE_POKEFAN_M, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 1, SPRITE_24, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 0, 6, SPRITE_COOLTRAINER_F, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 6, SPRITE_24, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 5, 1, SPRITE_COOLTRAINER_F, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+StandLeague2F_Blocks::
+INCBIN "maps/StandLeague2F.blk"
diff --git a/data/maps/objects/StandMart.asm b/data/maps/objects/StandMart.asm
new file mode 100644
index 0000000..f05bc5b
--- /dev/null
+++ b/data/maps/objects/StandMart.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/StandMart.asm", ROMX
+
+ map_attributes StandMart, STAND_MART, 0
+
+StandMart_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 4, STAND, wOverworldMapBlocks + 59
+ warp_event 5, 7, 4, STAND, wOverworldMapBlocks + 59
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 1, 3, SPRITE_CLERK, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 5, SPRITE_GIRL, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 1, SPRITE_POKEFAN_M, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+StandMart_Blocks::
+INCBIN "maps/StandMart.blk"
diff --git a/data/maps/objects/StandOffice.asm b/data/maps/objects/StandOffice.asm
new file mode 100644
index 0000000..a85dbeb
--- /dev/null
+++ b/data/maps/objects/StandOffice.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/StandOffice.asm", ROMX
+
+ map_attributes StandOffice, STAND_OFFICE, 0
+
+StandOffice_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 2, 7, 3, STAND, wOverworldMapBlocks + 58
+ warp_event 3, 7, 3, STAND, wOverworldMapBlocks + 58
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 13, 4, SPRITE_ROCKER, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 5, 6, SPRITE_SUPER_NERD, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 7, SPRITE_POKEFAN_M, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+StandOffice_Blocks::
+INCBIN "maps/StandOffice.blk"
diff --git a/data/maps/objects/StandPokecenter1F.asm b/data/maps/objects/StandPokecenter1F.asm
new file mode 100644
index 0000000..76bfa3f
--- /dev/null
+++ b/data/maps/objects/StandPokecenter1F.asm
@@ -0,0 +1,24 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/StandPokecenter1F.asm", ROMX
+
+ map_attributes StandPokecenter1F, STAND_POKECENTER_1F, 0
+
+StandPokecenter1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 5, 7, 2, STAND, wOverworldMapBlocks + 59
+ warp_event 6, 7, 2, STAND, wOverworldMapBlocks + 60
+ warp_event 0, 7, 1, STAND_POKECENTER_2F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 4 ; person events
+ object_event 5, 1, SPRITE_NURSE, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 6, SPRITE_GIRL, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 5, SPRITE_GENTLEMAN, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 1, SPRITE_LASS, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+StandPokecenter1F_Blocks::
+INCBIN "maps/StandPokecenter1F.blk"
diff --git a/data/maps/objects/StandPokecenter2F.asm b/data/maps/objects/StandPokecenter2F.asm
new file mode 100644
index 0000000..ced417c
--- /dev/null
+++ b/data/maps/objects/StandPokecenter2F.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/StandPokecenter2F.asm", ROMX
+
+ map_attributes StandPokecenter2F, STAND_POKECENTER_2F, 0
+
+StandPokecenter2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 0, 7, 3, STAND_POKECENTER_1F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 5, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 7, SPRITE_FISHING_GURU, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+StandPokecenter2F_Blocks::
+INCBIN "maps/StandPokecenter2F.blk"
diff --git a/data/maps/objects/StandRocketHouse1F.asm b/data/maps/objects/StandRocketHouse1F.asm
new file mode 100644
index 0000000..6bda8de
--- /dev/null
+++ b/data/maps/objects/StandRocketHouse1F.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/StandRocketHouse1F.asm", ROMX
+
+ map_attributes StandRocketHouse1F, STAND_ROCKET_HOUSE_1F, 0
+
+StandRocketHouse1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 2, 7, 6, STAND, wOverworldMapBlocks + 58
+ warp_event 3, 7, 6, STAND, wOverworldMapBlocks + 58
+ warp_event 15, 1, 1, STAND_ROCKET_HOUSE_2F, wOverworldMapBlocks + 22
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 11, 4, SPRITE_36, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+StandRocketHouse1F_Blocks::
+INCBIN "maps/StandRocketHouse1F.blk"
diff --git a/data/maps/objects/StandRocketHouse2F.asm b/data/maps/objects/StandRocketHouse2F.asm
new file mode 100644
index 0000000..5ed8d35
--- /dev/null
+++ b/data/maps/objects/StandRocketHouse2F.asm
@@ -0,0 +1,19 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/StandRocketHouse2F.asm", ROMX
+
+ map_attributes StandRocketHouse2F, STAND_ROCKET_HOUSE_2F, 0
+
+StandRocketHouse2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 15, 1, 3, STAND_ROCKET_HOUSE_1F, wOverworldMapBlocks + 22
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 5, 4, SPRITE_ROCKET_F, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+
+StandRocketHouse2F_Blocks::
+INCBIN "maps/StandRocketHouse2F.blk"
diff --git a/data/maps/objects/StandRoute.asm b/data/maps/objects/StandRoute.asm
new file mode 100644
index 0000000..fabb1ae
--- /dev/null
+++ b/data/maps/objects/StandRoute.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/StandRoute.asm", ROMX
+
+ map_attributes StandRoute, STAND_ROUTE, NORTH | SOUTH
+ connection north, Stand, STAND, -3, 7, 13
+ connection south, KantoEastRoute, KANTO_EAST_ROUTE, -3, 7, 13
+
+StandRoute_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 8, 48, 3, STAND_ROUTE_GATE_KANTO, wOverworldMapBlocks + 405
+ warp_event 9, 48, 4, STAND_ROUTE_GATE_KANTO, wOverworldMapBlocks + 405
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+StandRoute_Blocks::
+INCBIN "maps/StandRoute.blk"
diff --git a/data/maps/objects/StandRouteGateKanto.asm b/data/maps/objects/StandRouteGateKanto.asm
new file mode 100644
index 0000000..a80039f
--- /dev/null
+++ b/data/maps/objects/StandRouteGateKanto.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/StandRouteGateKanto.asm", ROMX
+
+ map_attributes StandRouteGateKanto, STAND_ROUTE_GATE_KANTO, 0
+
+StandRouteGateKanto_MapEvents::
+ dw $4000 ; unknown
+
+ db 4 ; warp events
+ warp_event 4, 7, 1, KANTO_EAST_ROUTE, wOverworldMapBlocks + 47
+ warp_event 5, 7, 2, KANTO_EAST_ROUTE, wOverworldMapBlocks + 47
+ warp_event 4, 0, 1, STAND_ROUTE, wOverworldMapBlocks + 14
+ warp_event 5, 0, 2, STAND_ROUTE, wOverworldMapBlocks + 14
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+StandRouteGateKanto_Blocks::
+INCBIN "maps/StandRouteGateKanto.blk"
diff --git a/data/maps/objects/Sugar.asm b/data/maps/objects/Sugar.asm
new file mode 100644
index 0000000..43fd16e
--- /dev/null
+++ b/data/maps/objects/Sugar.asm
@@ -0,0 +1,29 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/Sugar.asm", ROMX
+
+ map_attributes Sugar, SUGAR, SOUTH
+ connection south, SugarRoute, SUGAR_ROUTE, 0, 0, 10
+
+Sugar_MapEvents::
+ dw $4000 ; unknown
+
+ db 4 ; warp events
+ warp_event 5, 5, 1, SUGAR_HOUSE, wOverworldMapBlocks + 51
+ warp_event 15, 9, 1, SUGAR_HOUSE_2, wOverworldMapBlocks + 88
+ warp_event 5, 10, 1, SUGAR_MART, wOverworldMapBlocks + 99
+ warp_event 9, 10, 1, SUGAR_POKECENTER_1F, wOverworldMapBlocks + 101
+
+ db 4 ; bg events
+ bg_event 14, 6, 0, 1
+ bg_event 6, 10, 0, 2
+ bg_event 10, 10, 0, 3
+ bg_event 10, 14, 0, 4
+
+ db 3 ; person events
+ object_event 8, 12, SPRITE_TWIN, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 6, SPRITE_GRANNY, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 13, 11, SPRITE_GRAMPS, FACE_UP, 1, 1, -1, -1, 0, 0, 0, 0, 0, 0
+
+Sugar_Blocks::
+INCBIN "maps/Sugar.blk"
diff --git a/data/maps/objects/SugarHouse.asm b/data/maps/objects/SugarHouse.asm
new file mode 100644
index 0000000..9e1f697
--- /dev/null
+++ b/data/maps/objects/SugarHouse.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/SugarHouse.asm", ROMX
+
+ map_attributes SugarHouse, SUGAR_HOUSE, 0
+
+SugarHouse_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 3, 15, 1, SUGAR, wOverworldMapBlocks + 82
+ warp_event 4, 15, 1, SUGAR, wOverworldMapBlocks + 83
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 3, 5, SPRITE_BUG_CATCHER_BOY, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 5, SPRITE_TWIN, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 3, 1, SPRITE_GRAMPS, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+SugarHouse_Blocks::
+INCBIN "maps/SugarHouse.blk"
diff --git a/data/maps/objects/SugarHouse2.asm b/data/maps/objects/SugarHouse2.asm
new file mode 100644
index 0000000..4d74ca0
--- /dev/null
+++ b/data/maps/objects/SugarHouse2.asm
@@ -0,0 +1,20 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/SugarHouse2.asm", ROMX
+
+ map_attributes SugarHouse2, SUGAR_HOUSE_2, 0
+
+SugarHouse2_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 3, 7, 2, SUGAR, wOverworldMapBlocks + 42
+ warp_event 4, 7, 2, SUGAR, wOverworldMapBlocks + 43
+
+ db 0 ; bg events
+
+ db 1 ; person events
+ object_event 2, 3, SPRITE_FISHING_GURU, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+SugarHouse2_Blocks::
+INCBIN "maps/SugarHouse2.blk"
diff --git a/data/maps/objects/SugarMart.asm b/data/maps/objects/SugarMart.asm
new file mode 100644
index 0000000..8bae8e3
--- /dev/null
+++ b/data/maps/objects/SugarMart.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/SugarMart.asm", ROMX
+
+ map_attributes SugarMart, SUGAR_MART, 0
+
+SugarMart_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 3, SUGAR, wOverworldMapBlocks + 59
+ warp_event 5, 7, 3, SUGAR, wOverworldMapBlocks + 59
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 1, 3, SPRITE_CLERK, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 5, SPRITE_GIRL, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 1, SPRITE_POKEFAN_M, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+SugarMart_Blocks::
+INCBIN "maps/SugarMart.blk"
diff --git a/data/maps/objects/SugarPokecenter1F.asm b/data/maps/objects/SugarPokecenter1F.asm
new file mode 100644
index 0000000..f43eae9
--- /dev/null
+++ b/data/maps/objects/SugarPokecenter1F.asm
@@ -0,0 +1,24 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/SugarPokecenter1F.asm", ROMX
+
+ map_attributes SugarPokecenter1F, SUGAR_POKECENTER_1F, 0
+
+SugarPokecenter1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 5, 7, 4, SUGAR, wOverworldMapBlocks + 59
+ warp_event 6, 7, 4, SUGAR, wOverworldMapBlocks + 60
+ warp_event 0, 7, 1, SUGAR_POKECENTER_2F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 4 ; person events
+ object_event 5, 1, SPRITE_NURSE, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 6, SPRITE_YOUNGSTER, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 5, SPRITE_24, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 1, SPRITE_GRANNY, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+SugarPokecenter1F_Blocks::
+INCBIN "maps/SugarPokecenter1F.blk"
diff --git a/data/maps/objects/SugarPokecenter2F.asm b/data/maps/objects/SugarPokecenter2F.asm
new file mode 100644
index 0000000..903a0b3
--- /dev/null
+++ b/data/maps/objects/SugarPokecenter2F.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/SugarPokecenter2F.asm", ROMX
+
+ map_attributes SugarPokecenter2F, SUGAR_POKECENTER_2F, 0
+
+SugarPokecenter2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 0, 7, 3, SUGAR_POKECENTER_1F, wOverworldMapBlocks + 57
+
+ db 0 ; bg events
+
+ db 3 ; person events
+ object_event 5, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 7, SPRITE_FISHING_GURU, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+SugarPokecenter2F_Blocks::
+INCBIN "maps/SugarPokecenter2F.blk"
diff --git a/data/maps/objects/SugarRoute.asm b/data/maps/objects/SugarRoute.asm
new file mode 100644
index 0000000..9f8469a
--- /dev/null
+++ b/data/maps/objects/SugarRoute.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/SugarRoute.asm", ROMX
+
+ map_attributes SugarRoute, SUGAR_ROUTE, NORTH | SOUTH
+ connection north, Sugar, SUGAR, 0, 0, 10
+ connection south, Newtype, NEWTYPE, -3, 2, 16
+
+SugarRoute_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 8, 48, 3, SUGAR_ROUTE_GATE, wOverworldMapBlocks + 405
+ warp_event 9, 48, 4, SUGAR_ROUTE_GATE, wOverworldMapBlocks + 405
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+SugarRoute_Blocks::
+INCBIN "maps/SugarRoute.blk"
diff --git a/data/maps/objects/SugarRouteGate.asm b/data/maps/objects/SugarRouteGate.asm
new file mode 100644
index 0000000..2ebce43
--- /dev/null
+++ b/data/maps/objects/SugarRouteGate.asm
@@ -0,0 +1,21 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/SugarRouteGate.asm", ROMX
+
+ map_attributes SugarRouteGate, SUGAR_ROUTE_GATE, 0
+
+SugarRouteGate_MapEvents::
+ dw $4000 ; unknown
+
+ db 4 ; warp events
+ warp_event 4, 7, 12, NEWTYPE, wOverworldMapBlocks + 47
+ warp_event 5, 7, 13, NEWTYPE, wOverworldMapBlocks + 47
+ warp_event 4, 0, 1, SUGAR_ROUTE, wOverworldMapBlocks + 14
+ warp_event 5, 0, 2, SUGAR_ROUTE, wOverworldMapBlocks + 14
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+SugarRouteGate_Blocks::
+INCBIN "maps/SugarRouteGate.blk"
diff --git a/data/maps/objects/UnusedMap13.asm b/data/maps/objects/UnusedMap13.asm
new file mode 100644
index 0000000..f5564e3
--- /dev/null
+++ b/data/maps/objects/UnusedMap13.asm
@@ -0,0 +1,9 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/UnusedMap13.asm", ROMX
+
+ map_attributes UnusedMap13, UNUSED_MAP_13, 0
+
+UnusedMap13_MapEvents::
+UnusedMap13_Blocks::
+INCBIN "maps/UnusedMap13.blk"
diff --git a/data/maps/objects/West.asm b/data/maps/objects/West.asm
new file mode 100644
index 0000000..3884b21
--- /dev/null
+++ b/data/maps/objects/West.asm
@@ -0,0 +1,45 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/West.asm", ROMX
+
+ map_attributes West, WEST, NORTH | EAST
+ connection north, BaadonRoute1, BAADON_ROUTE_1, 5, 0, 10
+ connection east, Route2, ROUTE_2, 5, 0, 9
+
+West_MapEvents::
+ dw $4000 ; unknown
+
+ db 13 ; warp events
+ warp_event 13, 5, 1, WEST_MART_1F, wOverworldMapBlocks + 85
+ warp_event 14, 5, 2, WEST_MART_1F, wOverworldMapBlocks + 86
+ warp_event 31, 7, 1, WEST_RADIO_TOWER_1F, wOverworldMapBlocks + 120
+ warp_event 32, 7, 2, WEST_RADIO_TOWER_1F, wOverworldMapBlocks + 121
+ warp_event 18, 12, 1, WEST_ROCKET_RAIDED_HOUSE, wOverworldMapBlocks + 192
+ warp_event 25, 14, 1, WEST_POKECENTER_1F, wOverworldMapBlocks + 221
+ warp_event 14, 19, 1, WEST_GYM, wOverworldMapBlocks + 268
+ warp_event 15, 19, 2, WEST_GYM, wOverworldMapBlocks + 268
+ warp_event 26, 19, 1, WEST_HOUSE_1, wOverworldMapBlocks + 274
+ warp_event 32, 19, 1, WEST_HOUSE_2, wOverworldMapBlocks + 277
+ warp_event 22, 5, 1, BAADON_ROUTE_GATE_WEST, wOverworldMapBlocks + 90
+ warp_event 23, 5, 2, BAADON_ROUTE_GATE_WEST, wOverworldMapBlocks + 90
+ warp_event 35, 15, 1, ROUTE_2_GATE_1F, wOverworldMapBlocks + 226
+
+ db 6 ; bg events
+ bg_event 16, 7, 0, 1
+ bg_event 28, 9, 0, 2
+ bg_event 12, 10, 0, 3
+ bg_event 32, 12, 0, 4
+ bg_event 26, 14, 0, 5
+ bg_event 18, 20, 0, 6
+
+ db 7 ; person events
+ object_event 6, 8, SPRITE_SAILOR, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 12, 7, SPRITE_ROCKER, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 26, 10, SPRITE_ROCKER, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 30, 14, SPRITE_LASS, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 29, 14, SPRITE_PIPPI, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 22, 19, SPRITE_COOLTRAINER_F, FACE_UP, 2, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 18, 13, SPRITE_36, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+West_Blocks::
+INCBIN "maps/West.blk"
diff --git a/data/maps/objects/WestGym.asm b/data/maps/objects/WestGym.asm
new file mode 100644
index 0000000..de11175
--- /dev/null
+++ b/data/maps/objects/WestGym.asm
@@ -0,0 +1,27 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/WestGym.asm", ROMX
+
+ map_attributes WestGym, WEST_GYM, 0
+
+WestGym_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 17, 7, WEST, wOverworldMapBlocks + 102
+ warp_event 5, 17, 8, WEST, wOverworldMapBlocks + 102
+
+ db 2 ; bg events
+ bg_event 3, 15, 0, 1
+ bg_event 6, 15, 0, 1
+
+ db 6 ; person events
+ object_event 4, 4, SPRITE_TSUKUSHI, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 7, SPRITE_LASS, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 3, 0, 0
+ object_event 3, 11, SPRITE_COOLTRAINER_F, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 3, 0, 0
+ object_event 5, 9, SPRITE_LASS, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 2, 0, 0
+ object_event 4, 6, SPRITE_TWIN, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 2, 0, 0
+ object_event 7, 15, SPRITE_GYM_GUY, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+WestGym_Blocks::
+INCBIN "maps/WestGym.blk"
diff --git a/data/maps/objects/WestHouse1.asm b/data/maps/objects/WestHouse1.asm
new file mode 100644
index 0000000..5796355
--- /dev/null
+++ b/data/maps/objects/WestHouse1.asm
@@ -0,0 +1,26 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/WestHouse1.asm", ROMX
+
+ map_attributes WestHouse1, WEST_HOUSE_1, 0
+
+WestHouse1_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 9, WEST, wOverworldMapBlocks + 47
+ warp_event 5, 7, 9, WEST, wOverworldMapBlocks + 47
+
+ db 4 ; bg events
+ bg_event 0, 1, 0, 1
+ bg_event 1, 1, 0, 2
+ bg_event 5, 1, 0, 3
+ bg_event 8, 0, 0, 4
+
+ db 3 ; person events
+ object_event 7, 3, SPRITE_GRAMPS, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 1, 6, SPRITE_YOUNGSTER, FACE_UP, 1, 1, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 1, 4, SPRITE_POPPO, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+WestHouse1_Blocks::
+INCBIN "maps/WestHouse1.blk"
diff --git a/data/maps/objects/WestHouse2.asm b/data/maps/objects/WestHouse2.asm
new file mode 100644
index 0000000..be8ea8f
--- /dev/null
+++ b/data/maps/objects/WestHouse2.asm
@@ -0,0 +1,26 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/WestHouse2.asm", ROMX
+
+ map_attributes WestHouse2, WEST_HOUSE_2, 0
+
+WestHouse2_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 10, WEST, wOverworldMapBlocks + 47
+ warp_event 5, 7, 10, WEST, wOverworldMapBlocks + 47
+
+ db 4 ; bg events
+ bg_event 0, 1, 0, 1
+ bg_event 1, 1, 0, 2
+ bg_event 5, 1, 0, 3
+ bg_event 8, 0, 0, 4
+
+ db 3 ; person events
+ object_event 7, 3, SPRITE_GRAMPS, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 8, 6, SPRITE_YOUNGSTER, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 1, 5, SPRITE_BUG_CATCHER_BOY, FACE_UP, 2, 2, -1, -1, 0, 0, 0, 0, 0, 0
+
+WestHouse2_Blocks::
+INCBIN "maps/WestHouse2.blk"
diff --git a/data/maps/objects/WestMart1F.asm b/data/maps/objects/WestMart1F.asm
new file mode 100644
index 0000000..f3a0415
--- /dev/null
+++ b/data/maps/objects/WestMart1F.asm
@@ -0,0 +1,24 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/WestMart1F.asm", ROMX
+
+ map_attributes WestMart1F, WEST_MART_1F, 0
+
+WestMart1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 4 ; warp events
+ warp_event 13, 7, 1, WEST, wOverworldMapBlocks + 63
+ warp_event 14, 7, 2, WEST, wOverworldMapBlocks + 64
+ warp_event 15, 0, 2, WEST_MART_2F, wOverworldMapBlocks + 22
+ warp_event 2, 0, 1, WEST_MART_ELEVATOR, wOverworldMapBlocks + 16
+
+ db 2 ; bg events
+ bg_event 14, 0, 0, 1
+ bg_event 3, 0, 0, 2
+
+ db 1 ; person events
+ object_event 7, 1, SPRITE_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+WestMart1F_Blocks::
+INCBIN "maps/WestMart1F.blk"
diff --git a/data/maps/objects/WestMart2F.asm b/data/maps/objects/WestMart2F.asm
new file mode 100644
index 0000000..853fe93
--- /dev/null
+++ b/data/maps/objects/WestMart2F.asm
@@ -0,0 +1,40 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/WestMart2F.asm", ROMX
+
+ map_attributes WestMart2F, WEST_MART_2F, 0
+
+WestMart2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 12, 0, 1, WEST_MART_3F, wOverworldMapBlocks + 21
+ warp_event 15, 0, 3, WEST_MART_1F, wOverworldMapBlocks + 22
+ warp_event 2, 0, 1, WEST_MART_ELEVATOR, wOverworldMapBlocks + 16
+
+ db 16 ; bg events
+ bg_event 14, 0, 0, 1
+ bg_event 3, 0, 0, 2
+ bg_event 3, 4, 0, 3
+ bg_event 3, 5, 0, 3
+ bg_event 3, 6, 0, 3
+ bg_event 3, 7, 0, 3
+ bg_event 7, 4, 0, 3
+ bg_event 7, 5, 0, 3
+ bg_event 7, 6, 0, 3
+ bg_event 7, 7, 0, 3
+ bg_event 4, 1, 0, 3
+ bg_event 5, 1, 0, 3
+ bg_event 6, 1, 0, 3
+ bg_event 7, 1, 0, 3
+ bg_event 8, 1, 0, 3
+ bg_event 9, 1, 0, 3
+
+ db 4 ; person events
+ object_event 14, 5, SPRITE_CLERK, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 5, 6, SPRITE_LASS, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 1, 5, SPRITE_BURGLAR, FACE_UP, 2, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 2, SPRITE_ROCKET_M, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+WestMart2F_Blocks::
+INCBIN "maps/WestMart2F.blk"
diff --git a/data/maps/objects/WestMart3F.asm b/data/maps/objects/WestMart3F.asm
new file mode 100644
index 0000000..3665b94
--- /dev/null
+++ b/data/maps/objects/WestMart3F.asm
@@ -0,0 +1,37 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/WestMart3F.asm", ROMX
+
+ map_attributes WestMart3F, WEST_MART_3F, 0
+
+WestMart3F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 12, 0, 1, WEST_MART_2F, wOverworldMapBlocks + 21
+ warp_event 15, 0, 2, WEST_MART_4F, wOverworldMapBlocks + 22
+ warp_event 2, 0, 1, WEST_MART_ELEVATOR, wOverworldMapBlocks + 16
+
+ db 14 ; bg events
+ bg_event 14, 0, 0, 1
+ bg_event 3, 0, 0, 2
+ bg_event 1, 4, 0, 3
+ bg_event 1, 5, 0, 3
+ bg_event 1, 6, 0, 3
+ bg_event 1, 7, 0, 3
+ bg_event 5, 4, 0, 3
+ bg_event 5, 5, 0, 3
+ bg_event 5, 6, 0, 3
+ bg_event 5, 7, 0, 3
+ bg_event 9, 4, 0, 3
+ bg_event 9, 5, 0, 3
+ bg_event 9, 6, 0, 3
+ bg_event 9, 7, 0, 3
+
+ db 3 ; person events
+ object_event 6, 1, SPRITE_CLERK, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 13, 4, SPRITE_GENTLEMAN, FACE_UP, 2, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 3, 5, SPRITE_SUPER_NERD, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+WestMart3F_Blocks::
+INCBIN "maps/WestMart3F.blk"
diff --git a/data/maps/objects/WestMart4F.asm b/data/maps/objects/WestMart4F.asm
new file mode 100644
index 0000000..0b1f857
--- /dev/null
+++ b/data/maps/objects/WestMart4F.asm
@@ -0,0 +1,37 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/WestMart4F.asm", ROMX
+
+ map_attributes WestMart4F, WEST_MART_4F, 0
+
+WestMart4F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 12, 0, 1, WEST_MART_5F, wOverworldMapBlocks + 21
+ warp_event 15, 0, 2, WEST_MART_3F, wOverworldMapBlocks + 22
+ warp_event 2, 0, 1, WEST_MART_ELEVATOR, wOverworldMapBlocks + 16
+
+ db 14 ; bg events
+ bg_event 14, 0, 0, 1
+ bg_event 3, 0, 0, 2
+ bg_event 2, 5, 0, 3
+ bg_event 3, 5, 0, 3
+ bg_event 4, 5, 0, 3
+ bg_event 5, 5, 0, 3
+ bg_event 6, 5, 0, 3
+ bg_event 7, 5, 0, 3
+ bg_event 8, 5, 0, 3
+ bg_event 9, 5, 0, 3
+ bg_event 6, 1, 0, 3
+ bg_event 7, 1, 0, 3
+ bg_event 8, 1, 0, 3
+ bg_event 9, 1, 0, 3
+
+ db 3 ; person events
+ object_event 13, 5, SPRITE_CLERK, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 8, 6, SPRITE_24, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 7, 2, SPRITE_ROCKER, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+WestMart4F_Blocks::
+INCBIN "maps/WestMart4F.blk"
diff --git a/data/maps/objects/WestMart5F.asm b/data/maps/objects/WestMart5F.asm
new file mode 100644
index 0000000..bf963f0
--- /dev/null
+++ b/data/maps/objects/WestMart5F.asm
@@ -0,0 +1,25 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/WestMart5F.asm", ROMX
+
+ map_attributes WestMart5F, WEST_MART_5F, 0
+
+WestMart5F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 12, 0, 1, WEST_MART_4F, wOverworldMapBlocks + 21
+ warp_event 15, 0, 1, WEST_MART_6F, wOverworldMapBlocks + 22
+ warp_event 2, 0, 1, WEST_MART_ELEVATOR, wOverworldMapBlocks + 16
+
+ db 2 ; bg events
+ bg_event 14, 0, 0, 1
+ bg_event 3, 0, 0, 2
+
+ db 3 ; person events
+ object_event 8, 5, SPRITE_GYM_GUY, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 13, 5, SPRITE_YOUNGSTER, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 13, 4, SPRITE_NYOROBON, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+WestMart5F_Blocks::
+INCBIN "maps/WestMart5F.blk"
diff --git a/data/maps/objects/WestMart6F.asm b/data/maps/objects/WestMart6F.asm
new file mode 100644
index 0000000..8228270
--- /dev/null
+++ b/data/maps/objects/WestMart6F.asm
@@ -0,0 +1,26 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/WestMart6F.asm", ROMX
+
+ map_attributes WestMart6F, WEST_MART_6F, 0
+
+WestMart6F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 15, 0, 2, WEST_MART_5F, wOverworldMapBlocks + 22
+
+ db 5 ; bg events
+ bg_event 8, 1, 0, 1
+ bg_event 9, 1, 0, 2
+ bg_event 10, 1, 0, 3
+ bg_event 11, 1, 0, 4
+ bg_event 14, 0, 0, 5
+
+ db 3 ; person events
+ object_event 12, 3, SPRITE_OFFICER, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 4, SPRITE_SIDON, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 3, 6, SPRITE_POPPO, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+WestMart6F_Blocks::
+INCBIN "maps/WestMart6F.blk"
diff --git a/data/maps/objects/WestMartElevator.asm b/data/maps/objects/WestMartElevator.asm
new file mode 100644
index 0000000..18861c9
--- /dev/null
+++ b/data/maps/objects/WestMartElevator.asm
@@ -0,0 +1,19 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/WestMartElevator.asm", ROMX
+
+ map_attributes WestMartElevator, WEST_MART_ELEVATOR, 0
+
+WestMartElevator_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 1, 3, 4, WEST_MART_1F, wOverworldMapBlocks + 17
+ warp_event 2, 3, 4, WEST_MART_1F, wOverworldMapBlocks + 18
+
+ db 0 ; bg events
+
+ db 0 ; person events
+
+WestMartElevator_Blocks::
+INCBIN "maps/WestMartElevator.blk"
diff --git a/data/maps/objects/WestPokecenter1F.asm b/data/maps/objects/WestPokecenter1F.asm
new file mode 100644
index 0000000..27a39e2
--- /dev/null
+++ b/data/maps/objects/WestPokecenter1F.asm
@@ -0,0 +1,25 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/WestPokecenter1F.asm", ROMX
+
+ map_attributes WestPokecenter1F, WEST_POKECENTER_1F, 0
+
+WestPokecenter1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 5, 7, 6, WEST, wOverworldMapBlocks + 59
+ warp_event 6, 7, 6, WEST, wOverworldMapBlocks + 60
+ warp_event 0, 7, 1, WEST_POKECENTER_2F, wOverworldMapBlocks + 57
+
+ db 1 ; bg events
+ bg_event 13, 1, 0, 1
+
+ db 4 ; person events
+ object_event 5, 1, SPRITE_NURSE, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 14, 6, SPRITE_GENTLEMAN, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 5, SPRITE_LASS, FACE_RIGHT, 0, 2, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 10, 1, SPRITE_ROCKET_M, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+WestPokecenter1F_Blocks::
+INCBIN "maps/WestPokecenter1F.blk"
diff --git a/data/maps/objects/WestPokecenter2F.asm b/data/maps/objects/WestPokecenter2F.asm
new file mode 100644
index 0000000..7e2c0e3
--- /dev/null
+++ b/data/maps/objects/WestPokecenter2F.asm
@@ -0,0 +1,22 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/WestPokecenter2F.asm", ROMX
+
+ map_attributes WestPokecenter2F, WEST_POKECENTER_2F, 0
+
+WestPokecenter2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 0, 7, 3, WEST_POKECENTER_1F, wOverworldMapBlocks + 57
+
+ db 1 ; bg events
+ bg_event 1, 1, 0, 1
+
+ db 3 ; person events
+ object_event 5, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 9, 2, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 13, 3, SPRITE_LINK_RECEPTIONIST, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+WestPokecenter2F_Blocks::
+INCBIN "maps/WestPokecenter2F.blk"
diff --git a/data/maps/objects/WestRadioTower1F.asm b/data/maps/objects/WestRadioTower1F.asm
new file mode 100644
index 0000000..baa2d7f
--- /dev/null
+++ b/data/maps/objects/WestRadioTower1F.asm
@@ -0,0 +1,25 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/WestRadioTower1F.asm", ROMX
+
+ map_attributes WestRadioTower1F, WEST_RADIO_TOWER_1F, 0
+
+WestRadioTower1F_MapEvents::
+ dw $4000 ; unknown
+
+ db 3 ; warp events
+ warp_event 2, 7, 3, WEST, wOverworldMapBlocks + 42
+ warp_event 3, 7, 4, WEST, wOverworldMapBlocks + 42
+ warp_event 7, 0, 2, WEST_RADIO_TOWER_2F, wOverworldMapBlocks + 14
+
+ db 2 ; bg events
+ bg_event 5, 0, 0, 1
+ bg_event 0, 1, 0, 2
+
+ db 3 ; person events
+ object_event 6, 6, SPRITE_RECEPTIONIST, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 3, SPRITE_SUPER_NERD, FACE_UP, 1, 1, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 7, 4, SPRITE_ROCKER, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+WestRadioTower1F_Blocks::
+INCBIN "maps/WestRadioTower1F.blk"
diff --git a/data/maps/objects/WestRadioTower2F.asm b/data/maps/objects/WestRadioTower2F.asm
new file mode 100644
index 0000000..5efdd72
--- /dev/null
+++ b/data/maps/objects/WestRadioTower2F.asm
@@ -0,0 +1,27 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/WestRadioTower2F.asm", ROMX
+
+ map_attributes WestRadioTower2F, WEST_RADIO_TOWER_2F, 0
+
+WestRadioTower2F_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 0, 0, 1, WEST_RADIO_TOWER_3F, wOverworldMapBlocks + 11
+ warp_event 7, 0, 3, WEST_RADIO_TOWER_1F, wOverworldMapBlocks + 14
+
+ db 1 ; bg events
+ bg_event 5, 0, 0, 1
+
+ db 7 ; person events
+ object_event 4, 6, SPRITE_GYM_GUY, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 7, 5, SPRITE_ROCKER, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 1, 5, SPRITE_SUPER_NERD, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 5, 2, SPRITE_GIRL, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 1, SPRITE_36, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 6, SPRITE_36, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 7, SPRITE_36, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+WestRadioTower2F_Blocks::
+INCBIN "maps/WestRadioTower2F.blk"
diff --git a/data/maps/objects/WestRadioTower3F.asm b/data/maps/objects/WestRadioTower3F.asm
new file mode 100644
index 0000000..db9f966
--- /dev/null
+++ b/data/maps/objects/WestRadioTower3F.asm
@@ -0,0 +1,28 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/WestRadioTower3F.asm", ROMX
+
+ map_attributes WestRadioTower3F, WEST_RADIO_TOWER_3F, 0
+
+WestRadioTower3F_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 0, 0, 1, WEST_RADIO_TOWER_2F, wOverworldMapBlocks + 11
+ warp_event 7, 0, 2, WEST_RADIO_TOWER_4F, wOverworldMapBlocks + 14
+
+ db 1 ; bg events
+ bg_event 5, 0, 0, 1
+
+ db 8 ; person events
+ object_event 4, 6, SPRITE_SUPER_NERD, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 1, 6, SPRITE_ROCKER, FACE_UP, 2, 1, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 3, 1, SPRITE_TEACHER, SLOW_STEP_DOWN, 1, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 5, SPRITE_GIRL, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 5, 2, SPRITE_36, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 3, SPRITE_36, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 1, 7, SPRITE_36, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 7, 6, SPRITE_36, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+WestRadioTower3F_Blocks::
+INCBIN "maps/WestRadioTower3F.blk"
diff --git a/data/maps/objects/WestRadioTower4F.asm b/data/maps/objects/WestRadioTower4F.asm
new file mode 100644
index 0000000..c3a5175
--- /dev/null
+++ b/data/maps/objects/WestRadioTower4F.asm
@@ -0,0 +1,29 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/WestRadioTower4F.asm", ROMX
+
+ map_attributes WestRadioTower4F, WEST_RADIO_TOWER_4F, 0
+
+WestRadioTower4F_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 0, 0, 1, WEST_RADIO_TOWER_5F, wOverworldMapBlocks + 11
+ warp_event 7, 0, 2, WEST_RADIO_TOWER_3F, wOverworldMapBlocks + 14
+
+ db 1 ; bg events
+ bg_event 5, 0, 0, 1
+
+ db 9 ; person events
+ object_event 2, 6, SPRITE_SUPER_NERD, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 3, 2, SPRITE_ROCKER, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 7, 5, SPRITE_BURGLAR, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 7, 6, SPRITE_ROCKER, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 0, 5, SPRITE_GIRL, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 5, 5, SPRITE_36, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 4, SPRITE_36, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 5, 1, SPRITE_36, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 1, 2, SPRITE_36, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+WestRadioTower4F_Blocks::
+INCBIN "maps/WestRadioTower4F.blk"
diff --git a/data/maps/objects/WestRadioTower5F.asm b/data/maps/objects/WestRadioTower5F.asm
new file mode 100644
index 0000000..9cbd21a
--- /dev/null
+++ b/data/maps/objects/WestRadioTower5F.asm
@@ -0,0 +1,29 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/WestRadioTower5F.asm", ROMX
+
+ map_attributes WestRadioTower5F, WEST_RADIO_TOWER_5F, 0
+
+WestRadioTower5F_MapEvents::
+ dw $4000 ; unknown
+
+ db 1 ; warp events
+ warp_event 0, 0, 1, WEST_RADIO_TOWER_4F, wOverworldMapBlocks + 11
+
+ db 3 ; bg events
+ bg_event 3, 0, 0, 1
+ bg_event 6, 4, 0, 2
+ bg_event 7, 4, 0, 2
+
+ db 8 ; person events
+ object_event 6, 6, SPRITE_SCIENTIST, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 5, 2, SPRITE_TEACHER, SLOW_STEP_DOWN, 1, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 6, SPRITE_PIPPI, SLOW_STEP_DOWN, 2, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 1, 5, SPRITE_PIPPI, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 3, 7, SPRITE_SAKAKI, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 4, 2, SPRITE_36, SLOW_STEP_RIGHT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 2, 4, SPRITE_36, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 6, 7, SPRITE_TEACHER, SLOW_STEP_DOWN, 1, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+WestRadioTower5F_Blocks::
+INCBIN "maps/WestRadioTower5F.blk"
diff --git a/data/maps/objects/WestRocketRaidedHouse.asm b/data/maps/objects/WestRocketRaidedHouse.asm
new file mode 100644
index 0000000..5ae6133
--- /dev/null
+++ b/data/maps/objects/WestRocketRaidedHouse.asm
@@ -0,0 +1,31 @@
+INCLUDE "constants.asm"
+
+SECTION "data/maps/objects/WestRocketRaidedHouse.asm", ROMX
+
+ map_attributes WestRocketRaidedHouse, WEST_ROCKET_RAIDED_HOUSE, 0
+
+WestRocketRaidedHouse_MapEvents::
+ dw $4000 ; unknown
+
+ db 2 ; warp events
+ warp_event 4, 7, 5, WEST, wOverworldMapBlocks + 47
+ warp_event 5, 7, 5, WEST, wOverworldMapBlocks + 47
+
+ db 7 ; bg events
+ bg_event 0, 1, 0, 1
+ bg_event 1, 1, 0, 2
+ bg_event 2, 1, 0, 3
+ bg_event 4, 1, 0, 4
+ bg_event 5, 1, 0, 4
+ bg_event 7, 1, 0, 5
+ bg_event 8, 0, 0, 6
+
+ db 5 ; person events
+ object_event 8, 1, SPRITE_36, SLOW_STEP_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 7, 5, SPRITE_36, FACE_LEFT, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 3, 4, SPRITE_POKEFAN_M, STEP_DOWN, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 1, 3, SPRITE_POKEFAN_F, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+ object_event 7, 2, SPRITE_POKE_BALL, SLOW_STEP_UP, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0
+
+WestRocketRaidedHouse_Blocks::
+INCBIN "maps/WestRocketRaidedHouse.blk"