shithub: pokecrystal

Download patch

ref: 8f2221aa703b3ed0d98003a055c65ea794144b64
parent: 8f2afd2f7c00bec87fdd33bb7745505a13d39c2e
author: Bryan Bishop <[email protected]>
date: Thu Apr 26 10:13:06 EDT 2012

add map/group constants into constants.asm

map 18.3 and 7.14 are both "Route 10" ? Need to confirm that they are
both, in fact, "Route 10". Even if they both point to the same map, we
can call them 10a and 10b so that the map constants will work.

generate_map_constants and generate_map_constant_labels have been
updated to deal with left-over issues in various labels and obscure
characters.

--- a/constants.asm
+++ b/constants.asm
@@ -664,3 +664,784 @@
 BLUESKY_MAIL  EQU $BB
 MUSIC_MAIL    EQU $BC
 MIRAGE_MAIL   EQU $BD
+
+; map group ids
+GROUP_OLIVINE_POKECENTER_1F EQU $01
+GROUP_OLIVINE_GYM EQU $01
+GROUP_OLIVINE_VOLTORB_HOUSE EQU $01
+GROUP_OLIVINE_HOUSE_BETA EQU $01
+GROUP_OLIVINE_PUNISHMENT_SPEECH_HOUSE EQU $01
+GROUP_OLIVINE_GOOD_ROD_HOUSE EQU $01
+GROUP_OLIVINE_CAFE EQU $01
+GROUP_OLIVINE_MART EQU $01
+GROUP_ROUTE_38_ECRUTEAK_GATE EQU $01
+GROUP_ROUTE_39_BARN EQU $01
+GROUP_ROUTE_39_FARMHOUSE EQU $01
+GROUP_ROUTE_38 EQU $01
+GROUP_ROUTE_39 EQU $01
+GROUP_OLIVINE_CITY EQU $01
+GROUP_MAHOGANY_RED_GYARADOS_SPEECH_HOUSE EQU $02
+GROUP_MAHOGANY_GYM EQU $02
+GROUP_MAHOGANY_POKECENTER_1F EQU $02
+GROUP_ROUTE_42_ECRUTEAK_GATE EQU $02
+GROUP_ROUTE_42 EQU $02
+GROUP_ROUTE_44 EQU $02
+GROUP_MAHOGANY_TOWN EQU $02
+GROUP_SPROUT_TOWER_1F EQU $03
+GROUP_SPROUT_TOWER_2F EQU $03
+GROUP_SPROUT_TOWER_3F EQU $03
+GROUP_TIN_TOWER_1F EQU $03
+GROUP_TIN_TOWER_2F EQU $03
+GROUP_TIN_TOWER_3F EQU $03
+GROUP_TIN_TOWER_4F EQU $03
+GROUP_TIN_TOWER_5F EQU $03
+GROUP_TIN_TOWER_6F EQU $03
+GROUP_TIN_TOWER_7F EQU $03
+GROUP_TIN_TOWER_8F EQU $03
+GROUP_TIN_TOWER_9F EQU $03
+GROUP_BURNED_TOWER_1F EQU $03
+GROUP_BURNED_TOWER_B1F EQU $03
+GROUP_NATIONAL_PARK EQU $03
+GROUP_NATIONAL_PARK_BUG_CONTEST EQU $03
+GROUP_RADIO_TOWER_1F EQU $03
+GROUP_RADIO_TOWER_2F EQU $03
+GROUP_RADIO_TOWER_3F EQU $03
+GROUP_RADIO_TOWER_4F EQU $03
+GROUP_RADIO_TOWER_5F EQU $03
+GROUP_RUINS_OF_ALPH_OUTSIDE EQU $03
+GROUP_RUINS_OF_ALPH_HO_OH_CHAMBER EQU $03
+GROUP_RUINS_OF_ALPH_KABUTO_CHAMBER EQU $03
+GROUP_RUINS_OF_ALPH_OMANYTE_CHAMBER EQU $03
+GROUP_RUINS_OF_ALPH_AERODACTYL_CHAMBER EQU $03
+GROUP_RUINS_OF_ALPH_INNER_CHAMBER EQU $03
+GROUP_RUINS_OF_ALPH_RESEARCH_CENTER EQU $03
+GROUP_RUINS_OF_ALPH_HO_OH_ITEM_ROOM EQU $03
+GROUP_RUINS_OF_ALPH_KABUTO_ITEM_ROOM EQU $03
+GROUP_RUINS_OF_ALPH_OMANYTE_ITEM_ROOM EQU $03
+GROUP_RUINS_OF_ALPH_AERODACTYL_ITEM_ROOM EQU $03
+GROUP_RUINS_OF_ALPH_HO_OH_WORD_ROOM EQU $03
+GROUP_RUINS_OF_ALPH_KABUTO_WORD_ROOM EQU $03
+GROUP_RUINS_OF_ALPH_OMANYTE_WORD_ROOM EQU $03
+GROUP_RUINS_OF_ALPH_AERODACTYL_WORD_ROOM EQU $03
+GROUP_UNION_CAVE_1F EQU $03
+GROUP_UNION_CAVE_B1F EQU $03
+GROUP_UNION_CAVE_B2F EQU $03
+GROUP_SLOWPOKE_WELL_B1F EQU $03
+GROUP_SLOWPOKE_WELL_B2F EQU $03
+GROUP_OLIVINE_LIGHTHOUSE_1F EQU $03
+GROUP_OLIVINE_LIGHTHOUSE_2F EQU $03
+GROUP_OLIVINE_LIGHTHOUSE_3F EQU $03
+GROUP_OLIVINE_LIGHTHOUSE_4F EQU $03
+GROUP_OLIVINE_LIGHTHOUSE_5F EQU $03
+GROUP_OLIVINE_LIGHTHOUSE_6F EQU $03
+GROUP_MAHOGANY_MART_1F EQU $03
+GROUP_TEAM_ROCKET_BASE_B1F EQU $03
+GROUP_TEAM_ROCKET_BASE_B2F EQU $03
+GROUP_TEAM_ROCKET_BASE_B3F EQU $03
+GROUP_ILEX_FOREST EQU $03
+GROUP_WAREHOUSE_ENTRANCE EQU $03
+GROUP_UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES EQU $03
+GROUP_GOLDENROD_DEPT_STORE_B1F EQU $03
+GROUP_UNDERGROUND_WAREHOUSE EQU $03
+GROUP_MOUNT_MORTAR_1F_OUTSIDE EQU $03
+GROUP_MOUNT_MORTAR_1F_INSIDE EQU $03
+GROUP_MOUNT_MORTAR_2F_INSIDE EQU $03
+GROUP_MOUNT_MORTAR_B1F EQU $03
+GROUP_ICE_PATH_1F EQU $03
+GROUP_ICE_PATH_B1F EQU $03
+GROUP_ICE_PATH_B2F_MAHOGANY_SIDE EQU $03
+GROUP_ICE_PATH_B2F_BLACKTHORN_SIDE EQU $03
+GROUP_ICE_PATH_B3F EQU $03
+GROUP_WHIRL_ISLAND_NW EQU $03
+GROUP_WHIRL_ISLAND_NE EQU $03
+GROUP_WHIRL_ISLAND_SW EQU $03
+GROUP_WHIRL_ISLAND_CAVE EQU $03
+GROUP_WHIRL_ISLAND_SE EQU $03
+GROUP_WHIRL_ISLAND_B1F EQU $03
+GROUP_WHIRL_ISLAND_B2F EQU $03
+GROUP_WHIRL_ISLAND_LUGIA_CHAMBER EQU $03
+GROUP_SILVER_CAVE_ROOM_1 EQU $03
+GROUP_SILVER_CAVE_ROOM_2 EQU $03
+GROUP_SILVER_CAVE_ROOM_3 EQU $03
+GROUP_SILVER_CAVE_ITEM_ROOMS EQU $03
+GROUP_DARK_CAVE_VIOLET_ENTRANCE EQU $03
+GROUP_DARK_CAVE_BLACKTHORN_ENTRANCE EQU $03
+GROUP_DRAGONS_DEN_1F EQU $03
+GROUP_DRAGONS_DEN_B1F EQU $03
+GROUP_DRAGON_SHRINE EQU $03
+GROUP_TOHJO_FALLS EQU $03
+GROUP_DIGLETTS_CAVE EQU $03
+GROUP_MOUNT_MOON EQU $03
+GROUP_UNDERGROUND EQU $03
+GROUP_ROCK_TUNNEL_1F EQU $03
+GROUP_ROCK_TUNNEL_B1F EQU $03
+GROUP_SAFARI_ZONE_FUCHSIA_GATE_BETA EQU $03
+GROUP_SAFARI_ZONE_BETA EQU $03
+GROUP_VICTORY_ROAD EQU $03
+GROUP_ECRUTEAK_HOUSE EQU $04
+GROUP_WISE_TRIOS_ROOM EQU $04
+GROUP_ECRUTEAK_POKECENTER_1F EQU $04
+GROUP_ECRUTEAK_LUGIA_SPEECH_HOUSE EQU $04
+GROUP_DANCE_THEATRE EQU $04
+GROUP_ECRUTEAK_MART EQU $04
+GROUP_ECRUTEAK_GYM EQU $04
+GROUP_ECRUTEAK_ITEMFINDER_HOUSE EQU $04
+GROUP_ECRUTEAK_CITY EQU $04
+GROUP_BLACKTHORN_GYM_1F EQU $05
+GROUP_BLACKTHORN_GYM_2F EQU $05
+GROUP_BLACKTHORN_DRAGON_SPEECH_HOUSE EQU $05
+GROUP_BLACKTHORN_DODRIO_TRADE_HOUSE EQU $05
+GROUP_BLACKTHORN_MART EQU $05
+GROUP_BLACKTHORN_POKECENTER_1F EQU $05
+GROUP_MOVE_DELETERS_HOUSE EQU $05
+GROUP_ROUTE_45 EQU $05
+GROUP_ROUTE_46 EQU $05
+GROUP_BLACKTHORN_CITY EQU $05
+GROUP_CINNABAR_POKECENTER_1F EQU $06
+GROUP_CINNABAR_POKECENTER_2F_BETA EQU $06
+GROUP_ROUTE_19___FUCHSIA_GATE EQU $06
+GROUP_SEAFOAM_GYM EQU $06
+GROUP_ROUTE_19 EQU $06
+GROUP_ROUTE_20 EQU $06
+GROUP_ROUTE_21 EQU $06
+GROUP_CINNABAR_ISLAND EQU $06
+GROUP_CERULEAN_GYM_BADGE_SPEECH_HOUSE EQU $07
+GROUP_CERULEAN_POLICE_STATION EQU $07
+GROUP_CERULEAN_TRADE_SPEECH_HOUSE EQU $07
+GROUP_CERULEAN_POKECENTER_1F EQU $07
+GROUP_CERULEAN_POKECENTER_2F_BETA EQU $07
+GROUP_CERULEAN_GYM EQU $07
+GROUP_CERULEAN_MART EQU $07
+GROUP_ROUTE_10_POKECENTER_1F EQU $07
+GROUP_ROUTE_10_POKECENTER_2F_BETA EQU $07
+GROUP_POWER_PLANT EQU $07
+GROUP_BILLS_HOUSE EQU $07
+GROUP_ROUTE_4 EQU $07
+GROUP_ROUTE_9 EQU $07
+GROUP_ROUTE_10 EQU $07
+GROUP_ROUTE_24 EQU $07
+GROUP_ROUTE_25 EQU $07
+GROUP_CERULEAN_CITY EQU $07
+GROUP_AZALEA_POKECENTER_1F EQU $08
+GROUP_CHARCOAL_KILN EQU $08
+GROUP_AZALEA_MART EQU $08
+GROUP_KURTS_HOUSE EQU $08
+GROUP_AZALEA_GYM EQU $08
+GROUP_ROUTE_33 EQU $08
+GROUP_AZALEA_TOWN EQU $08
+GROUP_LAKE_OF_RAGE_HIDDEN_POWER_HOUSE EQU $09
+GROUP_LAKE_OF_RAGE_MAGIKARP_HOUSE EQU $09
+GROUP_ROUTE_43_MAHOGANY_GATE EQU $09
+GROUP_ROUTE_43_GATE EQU $09
+GROUP_ROUTE_43 EQU $09
+GROUP_LAKE_OF_RAGE EQU $09
+GROUP_ROUTE_32 EQU $0a
+GROUP_ROUTE_35 EQU $0a
+GROUP_ROUTE_36 EQU $0a
+GROUP_ROUTE_37 EQU $0a
+GROUP_VIOLET_CITY EQU $0a
+GROUP_VIOLET_MART EQU $0a
+GROUP_VIOLET_GYM EQU $0a
+GROUP_EARLS_POKEMON_ACADEMY EQU $0a
+GROUP_VIOLET_NICKNAME_SPEECH_HOUSE EQU $0a
+GROUP_VIOLET_POKECENTER_1F EQU $0a
+GROUP_VIOLET_ONIX_TRADE_HOUSE EQU $0a
+GROUP_ROUTE_32_RUINS_OF_ALPH_GATE EQU $0a
+GROUP_ROUTE_32_POKECENTER_1F EQU $0a
+GROUP_ROUTE_35_GOLDENROD_GATE EQU $0a
+GROUP_ROUTE_35_NATIONAL_PARK_GATE EQU $0a
+GROUP_ROUTE_36_RUINS_OF_ALPH_GATE EQU $0a
+GROUP_ROUTE_36_NATIONAL_PARK_GATE EQU $0a
+GROUP_ROUTE_34 EQU $0b
+GROUP_GOLDENROD_CITY EQU $0b
+GROUP_GOLDENROD_GYM EQU $0b
+GROUP_GOLDENROD_BIKE_SHOP EQU $0b
+GROUP_GOLDENROD_HAPPINESS_RATER EQU $0b
+GROUP_GOLDENROD_BILLS_HOUSE EQU $0b
+GROUP_GOLDENROD_MAGNET_TRAIN_STATION EQU $0b
+GROUP_GOLDENROD_FLOWER_SHOP EQU $0b
+GROUP_GOLDENROD_PP_SPEECH_HOUSE EQU $0b
+GROUP_GOLDENROD_NAME_RATERS_HOUSE EQU $0b
+GROUP_GOLDENROD_DEPT_STORE_1F EQU $0b
+GROUP_GOLDENROD_DEPT_STORE_2F EQU $0b
+GROUP_GOLDENROD_DEPT_STORE_3F EQU $0b
+GROUP_GOLDENROD_DEPT_STORE_4F EQU $0b
+GROUP_GOLDENROD_DEPT_STORE_5F EQU $0b
+GROUP_GOLDENROD_DEPT_STORE_6F EQU $0b
+GROUP_GOLDENROD_DEPT_STORE_ELEVATOR EQU $0b
+GROUP_GOLDENROD_DEPT_STORE_ROOF EQU $0b
+GROUP_GOLDENROD_GAME_CORNER EQU $0b
+GROUP_GOLDENROD_POKECENTER_1F EQU $0b
+GROUP_GOLDENROD_POKECOM_CENTER_2F_MOBILE EQU $0b
+GROUP_ILEX_FOREST_AZALEA_GATE EQU $0b
+GROUP_ROUTE_34_ILEX_FOREST_GATE EQU $0b
+GROUP_DAY_CARE EQU $0b
+GROUP_ROUTE_6 EQU $0c
+GROUP_ROUTE_11 EQU $0c
+GROUP_VERMILION_CITY EQU $0c
+GROUP_VERMILION_HOUSE_FISHING_SPEECH_HOUSE EQU $0c
+GROUP_VERMILION_POKECENTER_1F EQU $0c
+GROUP_VERMILION_POKECENTER_2F_BETA EQU $0c
+GROUP_POKEMON_FAN_CLUB EQU $0c
+GROUP_VERMILION_MAGNET_TRAIN_SPEECH_HOUSE EQU $0c
+GROUP_VERMILION_MART EQU $0c
+GROUP_VERMILION_HOUSE_DIGLETTS_CAVE_SPEECH_HOUSE EQU $0c
+GROUP_VERMILION_GYM EQU $0c
+GROUP_ROUTE_6_SAFFRON_GATE EQU $0c
+GROUP_ROUTE_6_UNDERGROUND_ENTRANCE EQU $0c
+GROUP_ROUTE_1 EQU $0d
+GROUP_PALLET_TOWN EQU $0d
+GROUP_REDS_HOUSE_1F EQU $0d
+GROUP_REDS_HOUSE_2F EQU $0d
+GROUP_BLUES_HOUSE EQU $0d
+GROUP_OAKS_LAB EQU $0d
+GROUP_ROUTE_3 EQU $0e
+GROUP_PEWTER_CITY EQU $0e
+GROUP_PEWTER_NIDORAN_SPEECH_HOUSE EQU $0e
+GROUP_PEWTER_GYM EQU $0e
+GROUP_PEWTER_MART EQU $0e
+GROUP_PEWTER_POKECENTER_1F EQU $0e
+GROUP_PEWTER_POKECENTER_2F_BETA EQU $0e
+GROUP_PEWTER_SNOOZE_SPEECH_HOUSE EQU $0e
+GROUP_OLIVINE_PORT EQU $0f
+GROUP_VERMILION_PORT EQU $0f
+GROUP_FAST_SHIP_1F EQU $0f
+GROUP_FAST_SHIP_CABINS_NNW_NNE_NE EQU $0f
+GROUP_FAST_SHIP_CABINS_SW_SSW_NW EQU $0f
+GROUP_FAST_SHIP_CABINS_SE_SSE_CAPTAINS_CABIN EQU $0f
+GROUP_FAST_SHIP_B1F EQU $0f
+GROUP_OLIVINE_PORT_PASSAGE EQU $0f
+GROUP_VERMILION_PORT_PASSAGE EQU $0f
+GROUP_MOUNT_MOON_SQUARE EQU $0f
+GROUP_MOUNT_MOON_GIFT_SHOP EQU $0f
+GROUP_TIN_TOWER_ROOF EQU $0f
+GROUP_ROUTE_23 EQU $10
+GROUP_INDIGO_PLATEAU_POKECENTER_1F EQU $10
+GROUP_WILLS_ROOM EQU $10
+GROUP_KOGAS_ROOM EQU $10
+GROUP_BRUNOS_ROOM EQU $10
+GROUP_KARENS_ROOM EQU $10
+GROUP_LANCES_ROOM EQU $10
+GROUP_HALL_OF_FAME EQU $10
+GROUP_ROUTE_13 EQU $11
+GROUP_ROUTE_14 EQU $11
+GROUP_ROUTE_15 EQU $11
+GROUP_ROUTE_18 EQU $11
+GROUP_FUCHSIA_CITY EQU $11
+GROUP_FUCHSIA_MART EQU $11
+GROUP_SAFARI_ZONE_MAIN_OFFICE EQU $11
+GROUP_FUCHSIA_GYM EQU $11
+GROUP_FUCHSIA_BILL_SPEECH_HOUSE EQU $11
+GROUP_FUCHSIA_POKECENTER_1F EQU $11
+GROUP_FUCHSIA_POKECENTER_2F_BETA EQU $11
+GROUP_SAFARI_ZONE_WARDENS_HOME EQU $11
+GROUP_ROUTE_15_FUCHSIA_GATE EQU $11
+GROUP_ROUTE_8 EQU $12
+GROUP_ROUTE_12 EQU $12
+;GROUP_ROUTE_10 EQU $12
+GROUP_LAVENDER_TOWN EQU $12
+GROUP_LAVENDER_POKECENTER_1F EQU $12
+GROUP_LAVENDER_POKECENTER_2F_BETA EQU $12
+GROUP_MR_FUJIS_HOUSE EQU $12
+GROUP_LAVENDER_TOWN_SPEECH_HOUSE EQU $12
+GROUP_LAVENDER_NAME_RATER EQU $12
+GROUP_LAVENDER_MART EQU $12
+GROUP_SOUL_HOUSE EQU $12
+GROUP_LAV_RADIO_TOWER_1F EQU $12
+GROUP_ROUTE_8_SAFFRON_GATE EQU $12
+GROUP_ROUTE_12_SUPER_ROD_HOUSE EQU $12
+GROUP_ROUTE_28 EQU $13
+GROUP_SILVER_CAVE_OUTSIDE EQU $13
+GROUP_SILVER_CAVE_POKECENTER_1F EQU $13
+GROUP_ROUTE_28_FAMOUS_SPEECH_HOUSE EQU $13
+GROUP_POKECENTER_2F EQU $14
+GROUP_TRADE_CENTER EQU $14
+GROUP_COLOSSEUM EQU $14
+GROUP_TIME_CAPSULE EQU $14
+GROUP_MOBILE_TRADE_ROOM_MOBILE EQU $14
+GROUP_MOBILE_BATTLE_ROOM EQU $14
+GROUP_ROUTE_7 EQU $15
+GROUP_ROUTE_16 EQU $15
+GROUP_ROUTE_17 EQU $15
+GROUP_CELADON_CITY EQU $15
+GROUP_CELADON_DEPT_STORE_1F EQU $15
+GROUP_CELADON_DEPT_STORE_2F EQU $15
+GROUP_CELADON_DEPT_STORE_3F EQU $15
+GROUP_CELADON_DEPT_STORE_4F EQU $15
+GROUP_CELADON_DEPT_STORE_5F EQU $15
+GROUP_CELADON_DEPT_STORE_6F EQU $15
+GROUP_CELADON_DEPT_STORE_ELEVATOR EQU $15
+GROUP_CELADON_MANSION_1F EQU $15
+GROUP_CELADON_MANSION_2F EQU $15
+GROUP_CELADON_MANSION_3F EQU $15
+GROUP_CELADON_MANSION_ROOF EQU $15
+GROUP_CELADON_MANSION_ROOF_HOUSE EQU $15
+GROUP_CELADON_POKECENTER_1F EQU $15
+GROUP_CELADON_POKECENTER_2F_BETA EQU $15
+GROUP_CELADON_GAME_CORNER EQU $15
+GROUP_CELADON_GAME_CORNER_PRIZE_ROOM EQU $15
+GROUP_CELADON_GYM EQU $15
+GROUP_CELADON_CAFE EQU $15
+GROUP_ROUTE_16_FUCHSIA_SPEECH_HOUSE EQU $15
+GROUP_ROUTE_16_GATE EQU $15
+GROUP_ROUTE_7_SAFFRON_GATE EQU $15
+GROUP_ROUTE_17_18_GATE EQU $15
+GROUP_ROUTE_40 EQU $16
+GROUP_ROUTE_41 EQU $16
+GROUP_CIANWOOD_CITY EQU $16
+GROUP_MANIAS_HOUSE EQU $16
+GROUP_CIANWOOD_GYM EQU $16
+GROUP_CIANWOOD_POKECENTER_1F EQU $16
+GROUP_CIANWOOD_PHARMACY EQU $16
+GROUP_CIANWOOD_CITY_PHOTO_STUDIO EQU $16
+GROUP_CIANWOOD_LUGIA_SPEECH_HOUSE EQU $16
+GROUP_POKE_SEERS_HOUSE EQU $16
+GROUP_BATTLE_TOWER_1F EQU $16
+GROUP_BATTLE_TOWER_BATTLE_ROOM EQU $16
+GROUP_BATTLE_TOWER_ELEVATOR EQU $16
+GROUP_BATTLE_TOWER_HALLWAY EQU $16
+GROUP_ROUTE_40_BATTLE_TOWER_GATE EQU $16
+GROUP_BATTLE_TOWER_OUTSIDE EQU $16
+GROUP_ROUTE_2 EQU $17
+GROUP_ROUTE_22 EQU $17
+GROUP_VIRIDIAN_CITY EQU $17
+GROUP_VIRIDIAN_GYM EQU $17
+GROUP_VIRIDIAN_NICKNAME_SPEECH_HOUSE EQU $17
+GROUP_TRAINER_HOUSE_1F EQU $17
+GROUP_TRAINER_HOUSE_B1F EQU $17
+GROUP_VIRIDIAN_MART EQU $17
+GROUP_VIRIDIAN_POKECENTER_1F EQU $17
+GROUP_VIRIDIAN_POKECENTER_2F_BETA EQU $17
+GROUP_ROUTE_2_NUGGET_SPEECH_HOUSE EQU $17
+GROUP_ROUTE_2_GATE EQU $17
+GROUP_VICTORY_ROAD_GATE EQU $17
+GROUP_ROUTE_26 EQU $18
+GROUP_ROUTE_27 EQU $18
+GROUP_ROUTE_29 EQU $18
+GROUP_NEW_BARK_TOWN EQU $18
+GROUP_ELMS_LAB EQU $18
+GROUP_KRISS_HOUSE_1F EQU $18
+GROUP_KRISS_HOUSE_2F EQU $18
+GROUP_KRISS_NEIGHBORS_HOUSE EQU $18
+GROUP_ELMS_HOUSE EQU $18
+GROUP_ROUTE_26_HEAL_SPEECH_HOUSE EQU $18
+GROUP_ROUTE_26_DAY_OF_WEEK_SIBLINGS_HOUSE EQU $18
+GROUP_ROUTE_27_SANDSTORM_HOUSE EQU $18
+GROUP_ROUTE_29_46_GATE EQU $18
+GROUP_ROUTE_5 EQU $19
+GROUP_SAFFRON_CITY EQU $19
+GROUP_FIGHTING_DOJO EQU $19
+GROUP_SAFFRON_GYM EQU $19
+GROUP_SAFFRON_MART EQU $19
+GROUP_SAFFRON_POKECENTER_1F EQU $19
+GROUP_SAFFRON_POKECENTER_2F_BETA EQU $19
+GROUP_MR_PSYCHICS_HOUSE EQU $19
+GROUP_SAFFRON_TRAIN_STATION EQU $19
+GROUP_SILPH_CO_1F EQU $19
+GROUP_COPYCATS_HOUSE_1F EQU $19
+GROUP_COPYCATS_HOUSE_2F EQU $19
+GROUP_ROUTE_5_UNDERGROUND_ENTRANCE EQU $19
+GROUP_ROUTE_5_SAFFRON_CITY_GATE EQU $19
+GROUP_ROUTE_5_CLEANSE_TAG_SPEECH_HOUSE EQU $19
+GROUP_ROUTE_30 EQU $1a
+GROUP_ROUTE_31 EQU $1a
+GROUP_CHERRYGROVE_CITY EQU $1a
+GROUP_CHERRYGROVE_MART EQU $1a
+GROUP_CHERRYGROVE_POKECENTER_1F EQU $1a
+GROUP_CHERRYGROVE_GYM_SPEECH_HOUSE EQU $1a
+GROUP_GUIDE_GENTS_HOUSE EQU $1a
+GROUP_CHERRYGROVE_EVOLUTION_SPEECH_HOUSE EQU $1a
+GROUP_ROUTE_30_BERRY_SPEECH_HOUSE EQU $1a
+GROUP_MR_POKEMONS_HOUSE EQU $1a
+GROUP_ROUTE_31_VIOLET_GATE EQU $1a
+
+; map ids
+MAP_OLIVINE_POKECENTER_1F EQU $01
+MAP_OLIVINE_GYM EQU $02
+MAP_OLIVINE_VOLTORB_HOUSE EQU $03
+MAP_OLIVINE_HOUSE_BETA EQU $04
+MAP_OLIVINE_PUNISHMENT_SPEECH_HOUSE EQU $05
+MAP_OLIVINE_GOOD_ROD_HOUSE EQU $06
+MAP_OLIVINE_CAFE EQU $07
+MAP_OLIVINE_MART EQU $08
+MAP_ROUTE_38_ECRUTEAK_GATE EQU $09
+MAP_ROUTE_39_BARN EQU $0a
+MAP_ROUTE_39_FARMHOUSE EQU $0b
+MAP_ROUTE_38 EQU $0c
+MAP_ROUTE_39 EQU $0d
+MAP_OLIVINE_CITY EQU $0e
+MAP_MAHOGANY_RED_GYARADOS_SPEECH_HOUSE EQU $01
+MAP_MAHOGANY_GYM EQU $02
+MAP_MAHOGANY_POKECENTER_1F EQU $03
+MAP_ROUTE_42_ECRUTEAK_GATE EQU $04
+MAP_ROUTE_42 EQU $05
+MAP_ROUTE_44 EQU $06
+MAP_MAHOGANY_TOWN EQU $07
+MAP_SPROUT_TOWER_1F EQU $01
+MAP_SPROUT_TOWER_2F EQU $02
+MAP_SPROUT_TOWER_3F EQU $03
+MAP_TIN_TOWER_1F EQU $04
+MAP_TIN_TOWER_2F EQU $05
+MAP_TIN_TOWER_3F EQU $06
+MAP_TIN_TOWER_4F EQU $07
+MAP_TIN_TOWER_5F EQU $08
+MAP_TIN_TOWER_6F EQU $09
+MAP_TIN_TOWER_7F EQU $0a
+MAP_TIN_TOWER_8F EQU $0b
+MAP_TIN_TOWER_9F EQU $0c
+MAP_BURNED_TOWER_1F EQU $0d
+MAP_BURNED_TOWER_B1F EQU $0e
+MAP_NATIONAL_PARK EQU $0f
+MAP_NATIONAL_PARK_BUG_CONTEST EQU $10
+MAP_RADIO_TOWER_1F EQU $11
+MAP_RADIO_TOWER_2F EQU $12
+MAP_RADIO_TOWER_3F EQU $13
+MAP_RADIO_TOWER_4F EQU $14
+MAP_RADIO_TOWER_5F EQU $15
+MAP_RUINS_OF_ALPH_OUTSIDE EQU $16
+MAP_RUINS_OF_ALPH_HO_OH_CHAMBER EQU $17
+MAP_RUINS_OF_ALPH_KABUTO_CHAMBER EQU $18
+MAP_RUINS_OF_ALPH_OMANYTE_CHAMBER EQU $19
+MAP_RUINS_OF_ALPH_AERODACTYL_CHAMBER EQU $1a
+MAP_RUINS_OF_ALPH_INNER_CHAMBER EQU $1b
+MAP_RUINS_OF_ALPH_RESEARCH_CENTER EQU $1c
+MAP_RUINS_OF_ALPH_HO_OH_ITEM_ROOM EQU $1d
+MAP_RUINS_OF_ALPH_KABUTO_ITEM_ROOM EQU $1e
+MAP_RUINS_OF_ALPH_OMANYTE_ITEM_ROOM EQU $1f
+MAP_RUINS_OF_ALPH_AERODACTYL_ITEM_ROOM EQU $20
+MAP_RUINS_OF_ALPH_HO_OH_WORD_ROOM EQU $21
+MAP_RUINS_OF_ALPH_KABUTO_WORD_ROOM EQU $22
+MAP_RUINS_OF_ALPH_OMANYTE_WORD_ROOM EQU $23
+MAP_RUINS_OF_ALPH_AERODACTYL_WORD_ROOM EQU $24
+MAP_UNION_CAVE_1F EQU $25
+MAP_UNION_CAVE_B1F EQU $26
+MAP_UNION_CAVE_B2F EQU $27
+MAP_SLOWPOKE_WELL_B1F EQU $28
+MAP_SLOWPOKE_WELL_B2F EQU $29
+MAP_OLIVINE_LIGHTHOUSE_1F EQU $2a
+MAP_OLIVINE_LIGHTHOUSE_2F EQU $2b
+MAP_OLIVINE_LIGHTHOUSE_3F EQU $2c
+MAP_OLIVINE_LIGHTHOUSE_4F EQU $2d
+MAP_OLIVINE_LIGHTHOUSE_5F EQU $2e
+MAP_OLIVINE_LIGHTHOUSE_6F EQU $2f
+MAP_MAHOGANY_MART_1F EQU $30
+MAP_TEAM_ROCKET_BASE_B1F EQU $31
+MAP_TEAM_ROCKET_BASE_B2F EQU $32
+MAP_TEAM_ROCKET_BASE_B3F EQU $33
+MAP_ILEX_FOREST EQU $34
+MAP_WAREHOUSE_ENTRANCE EQU $35
+MAP_UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES EQU $36
+MAP_GOLDENROD_DEPT_STORE_B1F EQU $37
+MAP_UNDERGROUND_WAREHOUSE EQU $38
+MAP_MOUNT_MORTAR_1F_OUTSIDE EQU $39
+MAP_MOUNT_MORTAR_1F_INSIDE EQU $3a
+MAP_MOUNT_MORTAR_2F_INSIDE EQU $3b
+MAP_MOUNT_MORTAR_B1F EQU $3c
+MAP_ICE_PATH_1F EQU $3d
+MAP_ICE_PATH_B1F EQU $3e
+MAP_ICE_PATH_B2F_MAHOGANY_SIDE EQU $3f
+MAP_ICE_PATH_B2F_BLACKTHORN_SIDE EQU $40
+MAP_ICE_PATH_B3F EQU $41
+MAP_WHIRL_ISLAND_NW EQU $42
+MAP_WHIRL_ISLAND_NE EQU $43
+MAP_WHIRL_ISLAND_SW EQU $44
+MAP_WHIRL_ISLAND_CAVE EQU $45
+MAP_WHIRL_ISLAND_SE EQU $46
+MAP_WHIRL_ISLAND_B1F EQU $47
+MAP_WHIRL_ISLAND_B2F EQU $48
+MAP_WHIRL_ISLAND_LUGIA_CHAMBER EQU $49
+MAP_SILVER_CAVE_ROOM_1 EQU $4a
+MAP_SILVER_CAVE_ROOM_2 EQU $4b
+MAP_SILVER_CAVE_ROOM_3 EQU $4c
+MAP_SILVER_CAVE_ITEM_ROOMS EQU $4d
+MAP_DARK_CAVE_VIOLET_ENTRANCE EQU $4e
+MAP_DARK_CAVE_BLACKTHORN_ENTRANCE EQU $4f
+MAP_DRAGONS_DEN_1F EQU $50
+MAP_DRAGONS_DEN_B1F EQU $51
+MAP_DRAGON_SHRINE EQU $52
+MAP_TOHJO_FALLS EQU $53
+MAP_DIGLETTS_CAVE EQU $54
+MAP_MOUNT_MOON EQU $55
+MAP_UNDERGROUND EQU $56
+MAP_ROCK_TUNNEL_1F EQU $57
+MAP_ROCK_TUNNEL_B1F EQU $58
+MAP_SAFARI_ZONE_FUCHSIA_GATE_BETA EQU $59
+MAP_SAFARI_ZONE_BETA EQU $5a
+MAP_VICTORY_ROAD EQU $5b
+MAP_ECRUTEAK_HOUSE EQU $01
+MAP_WISE_TRIOS_ROOM EQU $02
+MAP_ECRUTEAK_POKECENTER_1F EQU $03
+MAP_ECRUTEAK_LUGIA_SPEECH_HOUSE EQU $04
+MAP_DANCE_THEATRE EQU $05
+MAP_ECRUTEAK_MART EQU $06
+MAP_ECRUTEAK_GYM EQU $07
+MAP_ECRUTEAK_ITEMFINDER_HOUSE EQU $08
+MAP_ECRUTEAK_CITY EQU $09
+MAP_BLACKTHORN_GYM_1F EQU $01
+MAP_BLACKTHORN_GYM_2F EQU $02
+MAP_BLACKTHORN_DRAGON_SPEECH_HOUSE EQU $03
+MAP_BLACKTHORN_DODRIO_TRADE_HOUSE EQU $04
+MAP_BLACKTHORN_MART EQU $05
+MAP_BLACKTHORN_POKECENTER_1F EQU $06
+MAP_MOVE_DELETERS_HOUSE EQU $07
+MAP_ROUTE_45 EQU $08
+MAP_ROUTE_46 EQU $09
+MAP_BLACKTHORN_CITY EQU $0a
+MAP_CINNABAR_POKECENTER_1F EQU $01
+MAP_CINNABAR_POKECENTER_2F_BETA EQU $02
+MAP_ROUTE_19___FUCHSIA_GATE EQU $03
+MAP_SEAFOAM_GYM EQU $04
+MAP_ROUTE_19 EQU $05
+MAP_ROUTE_20 EQU $06
+MAP_ROUTE_21 EQU $07
+MAP_CINNABAR_ISLAND EQU $08
+MAP_CERULEAN_GYM_BADGE_SPEECH_HOUSE EQU $01
+MAP_CERULEAN_POLICE_STATION EQU $02
+MAP_CERULEAN_TRADE_SPEECH_HOUSE EQU $03
+MAP_CERULEAN_POKECENTER_1F EQU $04
+MAP_CERULEAN_POKECENTER_2F_BETA EQU $05
+MAP_CERULEAN_GYM EQU $06
+MAP_CERULEAN_MART EQU $07
+MAP_ROUTE_10_POKECENTER_1F EQU $08
+MAP_ROUTE_10_POKECENTER_2F_BETA EQU $09
+MAP_POWER_PLANT EQU $0a
+MAP_BILLS_HOUSE EQU $0b
+MAP_ROUTE_4 EQU $0c
+MAP_ROUTE_9 EQU $0d
+MAP_ROUTE_10 EQU $0e
+MAP_ROUTE_24 EQU $0f
+MAP_ROUTE_25 EQU $10
+MAP_CERULEAN_CITY EQU $11
+MAP_AZALEA_POKECENTER_1F EQU $01
+MAP_CHARCOAL_KILN EQU $02
+MAP_AZALEA_MART EQU $03
+MAP_KURTS_HOUSE EQU $04
+MAP_AZALEA_GYM EQU $05
+MAP_ROUTE_33 EQU $06
+MAP_AZALEA_TOWN EQU $07
+MAP_LAKE_OF_RAGE_HIDDEN_POWER_HOUSE EQU $01
+MAP_LAKE_OF_RAGE_MAGIKARP_HOUSE EQU $02
+MAP_ROUTE_43_MAHOGANY_GATE EQU $03
+MAP_ROUTE_43_GATE EQU $04
+MAP_ROUTE_43 EQU $05
+MAP_LAKE_OF_RAGE EQU $06
+MAP_ROUTE_32 EQU $01
+MAP_ROUTE_35 EQU $02
+MAP_ROUTE_36 EQU $03
+MAP_ROUTE_37 EQU $04
+MAP_VIOLET_CITY EQU $05
+MAP_VIOLET_MART EQU $06
+MAP_VIOLET_GYM EQU $07
+MAP_EARLS_POKEMON_ACADEMY EQU $08
+MAP_VIOLET_NICKNAME_SPEECH_HOUSE EQU $09
+MAP_VIOLET_POKECENTER_1F EQU $0a
+MAP_VIOLET_ONIX_TRADE_HOUSE EQU $0b
+MAP_ROUTE_32_RUINS_OF_ALPH_GATE EQU $0c
+MAP_ROUTE_32_POKECENTER_1F EQU $0d
+MAP_ROUTE_35_GOLDENROD_GATE EQU $0e
+MAP_ROUTE_35_NATIONAL_PARK_GATE EQU $0f
+MAP_ROUTE_36_RUINS_OF_ALPH_GATE EQU $10
+MAP_ROUTE_36_NATIONAL_PARK_GATE EQU $11
+MAP_ROUTE_34 EQU $01
+MAP_GOLDENROD_CITY EQU $02
+MAP_GOLDENROD_GYM EQU $03
+MAP_GOLDENROD_BIKE_SHOP EQU $04
+MAP_GOLDENROD_HAPPINESS_RATER EQU $05
+MAP_GOLDENROD_BILLS_HOUSE EQU $06
+MAP_GOLDENROD_MAGNET_TRAIN_STATION EQU $07
+MAP_GOLDENROD_FLOWER_SHOP EQU $08
+MAP_GOLDENROD_PP_SPEECH_HOUSE EQU $09
+MAP_GOLDENROD_NAME_RATERS_HOUSE EQU $0a
+MAP_GOLDENROD_DEPT_STORE_1F EQU $0b
+MAP_GOLDENROD_DEPT_STORE_2F EQU $0c
+MAP_GOLDENROD_DEPT_STORE_3F EQU $0d
+MAP_GOLDENROD_DEPT_STORE_4F EQU $0e
+MAP_GOLDENROD_DEPT_STORE_5F EQU $0f
+MAP_GOLDENROD_DEPT_STORE_6F EQU $10
+MAP_GOLDENROD_DEPT_STORE_ELEVATOR EQU $11
+MAP_GOLDENROD_DEPT_STORE_ROOF EQU $12
+MAP_GOLDENROD_GAME_CORNER EQU $13
+MAP_GOLDENROD_POKECENTER_1F EQU $14
+MAP_GOLDENROD_POKECOM_CENTER_2F_MOBILE EQU $15
+MAP_ILEX_FOREST_AZALEA_GATE EQU $16
+MAP_ROUTE_34_ILEX_FOREST_GATE EQU $17
+MAP_DAY_CARE EQU $18
+MAP_ROUTE_6 EQU $01
+MAP_ROUTE_11 EQU $02
+MAP_VERMILION_CITY EQU $03
+MAP_VERMILION_HOUSE_FISHING_SPEECH_HOUSE EQU $04
+MAP_VERMILION_POKECENTER_1F EQU $05
+MAP_VERMILION_POKECENTER_2F_BETA EQU $06
+MAP_POKEMON_FAN_CLUB EQU $07
+MAP_VERMILION_MAGNET_TRAIN_SPEECH_HOUSE EQU $08
+MAP_VERMILION_MART EQU $09
+MAP_VERMILION_HOUSE_DIGLETTS_CAVE_SPEECH_HOUSE EQU $0a
+MAP_VERMILION_GYM EQU $0b
+MAP_ROUTE_6_SAFFRON_GATE EQU $0c
+MAP_ROUTE_6_UNDERGROUND_ENTRANCE EQU $0d
+MAP_ROUTE_1 EQU $01
+MAP_PALLET_TOWN EQU $02
+MAP_REDS_HOUSE_1F EQU $03
+MAP_REDS_HOUSE_2F EQU $04
+MAP_BLUES_HOUSE EQU $05
+MAP_OAKS_LAB EQU $06
+MAP_ROUTE_3 EQU $01
+MAP_PEWTER_CITY EQU $02
+MAP_PEWTER_NIDORAN_SPEECH_HOUSE EQU $03
+MAP_PEWTER_GYM EQU $04
+MAP_PEWTER_MART EQU $05
+MAP_PEWTER_POKECENTER_1F EQU $06
+MAP_PEWTER_POKECENTER_2F_BETA EQU $07
+MAP_PEWTER_SNOOZE_SPEECH_HOUSE EQU $08
+MAP_OLIVINE_PORT EQU $01
+MAP_VERMILION_PORT EQU $02
+MAP_FAST_SHIP_1F EQU $03
+MAP_FAST_SHIP_CABINS_NNW_NNE_NE EQU $04
+MAP_FAST_SHIP_CABINS_SW_SSW_NW EQU $05
+MAP_FAST_SHIP_CABINS_SE_SSE_CAPTAINS_CABIN EQU $06
+MAP_FAST_SHIP_B1F EQU $07
+MAP_OLIVINE_PORT_PASSAGE EQU $08
+MAP_VERMILION_PORT_PASSAGE EQU $09
+MAP_MOUNT_MOON_SQUARE EQU $0a
+MAP_MOUNT_MOON_GIFT_SHOP EQU $0b
+MAP_TIN_TOWER_ROOF EQU $0c
+MAP_ROUTE_23 EQU $01
+MAP_INDIGO_PLATEAU_POKECENTER_1F EQU $02
+MAP_WILLS_ROOM EQU $03
+MAP_KOGAS_ROOM EQU $04
+MAP_BRUNOS_ROOM EQU $05
+MAP_KARENS_ROOM EQU $06
+MAP_LANCES_ROOM EQU $07
+MAP_HALL_OF_FAME EQU $08
+MAP_ROUTE_13 EQU $01
+MAP_ROUTE_14 EQU $02
+MAP_ROUTE_15 EQU $03
+MAP_ROUTE_18 EQU $04
+MAP_FUCHSIA_CITY EQU $05
+MAP_FUCHSIA_MART EQU $06
+MAP_SAFARI_ZONE_MAIN_OFFICE EQU $07
+MAP_FUCHSIA_GYM EQU $08
+MAP_FUCHSIA_BILL_SPEECH_HOUSE EQU $09
+MAP_FUCHSIA_POKECENTER_1F EQU $0a
+MAP_FUCHSIA_POKECENTER_2F_BETA EQU $0b
+MAP_SAFARI_ZONE_WARDENS_HOME EQU $0c
+MAP_ROUTE_15_FUCHSIA_GATE EQU $0d
+MAP_ROUTE_8 EQU $01
+MAP_ROUTE_12 EQU $02
+;MAP_ROUTE_10 EQU $03
+MAP_LAVENDER_TOWN EQU $04
+MAP_LAVENDER_POKECENTER_1F EQU $05
+MAP_LAVENDER_POKECENTER_2F_BETA EQU $06
+MAP_MR_FUJIS_HOUSE EQU $07
+MAP_LAVENDER_TOWN_SPEECH_HOUSE EQU $08
+MAP_LAVENDER_NAME_RATER EQU $09
+MAP_LAVENDER_MART EQU $0a
+MAP_SOUL_HOUSE EQU $0b
+MAP_LAV_RADIO_TOWER_1F EQU $0c
+MAP_ROUTE_8_SAFFRON_GATE EQU $0d
+MAP_ROUTE_12_SUPER_ROD_HOUSE EQU $0e
+MAP_ROUTE_28 EQU $01
+MAP_SILVER_CAVE_OUTSIDE EQU $02
+MAP_SILVER_CAVE_POKECENTER_1F EQU $03
+MAP_ROUTE_28_FAMOUS_SPEECH_HOUSE EQU $04
+MAP_POKECENTER_2F EQU $01
+MAP_TRADE_CENTER EQU $02
+MAP_COLOSSEUM EQU $03
+MAP_TIME_CAPSULE EQU $04
+MAP_MOBILE_TRADE_ROOM_MOBILE EQU $05
+MAP_MOBILE_BATTLE_ROOM EQU $06
+MAP_ROUTE_7 EQU $01
+MAP_ROUTE_16 EQU $02
+MAP_ROUTE_17 EQU $03
+MAP_CELADON_CITY EQU $04
+MAP_CELADON_DEPT_STORE_1F EQU $05
+MAP_CELADON_DEPT_STORE_2F EQU $06
+MAP_CELADON_DEPT_STORE_3F EQU $07
+MAP_CELADON_DEPT_STORE_4F EQU $08
+MAP_CELADON_DEPT_STORE_5F EQU $09
+MAP_CELADON_DEPT_STORE_6F EQU $0a
+MAP_CELADON_DEPT_STORE_ELEVATOR EQU $0b
+MAP_CELADON_MANSION_1F EQU $0c
+MAP_CELADON_MANSION_2F EQU $0d
+MAP_CELADON_MANSION_3F EQU $0e
+MAP_CELADON_MANSION_ROOF EQU $0f
+MAP_CELADON_MANSION_ROOF_HOUSE EQU $10
+MAP_CELADON_POKECENTER_1F EQU $11
+MAP_CELADON_POKECENTER_2F_BETA EQU $12
+MAP_CELADON_GAME_CORNER EQU $13
+MAP_CELADON_GAME_CORNER_PRIZE_ROOM EQU $14
+MAP_CELADON_GYM EQU $15
+MAP_CELADON_CAFE EQU $16
+MAP_ROUTE_16_FUCHSIA_SPEECH_HOUSE EQU $17
+MAP_ROUTE_16_GATE EQU $18
+MAP_ROUTE_7_SAFFRON_GATE EQU $19
+MAP_ROUTE_17_18_GATE EQU $1a
+MAP_ROUTE_40 EQU $01
+MAP_ROUTE_41 EQU $02
+MAP_CIANWOOD_CITY EQU $03
+MAP_MANIAS_HOUSE EQU $04
+MAP_CIANWOOD_GYM EQU $05
+MAP_CIANWOOD_POKECENTER_1F EQU $06
+MAP_CIANWOOD_PHARMACY EQU $07
+MAP_CIANWOOD_CITY_PHOTO_STUDIO EQU $08
+MAP_CIANWOOD_LUGIA_SPEECH_HOUSE EQU $09
+MAP_POKE_SEERS_HOUSE EQU $0a
+MAP_BATTLE_TOWER_1F EQU $0b
+MAP_BATTLE_TOWER_BATTLE_ROOM EQU $0c
+MAP_BATTLE_TOWER_ELEVATOR EQU $0d
+MAP_BATTLE_TOWER_HALLWAY EQU $0e
+MAP_ROUTE_40_BATTLE_TOWER_GATE EQU $0f
+MAP_BATTLE_TOWER_OUTSIDE EQU $10
+MAP_ROUTE_2 EQU $01
+MAP_ROUTE_22 EQU $02
+MAP_VIRIDIAN_CITY EQU $03
+MAP_VIRIDIAN_GYM EQU $04
+MAP_VIRIDIAN_NICKNAME_SPEECH_HOUSE EQU $05
+MAP_TRAINER_HOUSE_1F EQU $06
+MAP_TRAINER_HOUSE_B1F EQU $07
+MAP_VIRIDIAN_MART EQU $08
+MAP_VIRIDIAN_POKECENTER_1F EQU $09
+MAP_VIRIDIAN_POKECENTER_2F_BETA EQU $0a
+MAP_ROUTE_2_NUGGET_SPEECH_HOUSE EQU $0b
+MAP_ROUTE_2_GATE EQU $0c
+MAP_VICTORY_ROAD_GATE EQU $0d
+MAP_ROUTE_26 EQU $01
+MAP_ROUTE_27 EQU $02
+MAP_ROUTE_29 EQU $03
+MAP_NEW_BARK_TOWN EQU $04
+MAP_ELMS_LAB EQU $05
+MAP_KRISS_HOUSE_1F EQU $06
+MAP_KRISS_HOUSE_2F EQU $07
+MAP_KRISS_NEIGHBORS_HOUSE EQU $08
+MAP_ELMS_HOUSE EQU $09
+MAP_ROUTE_26_HEAL_SPEECH_HOUSE EQU $0a
+MAP_ROUTE_26_DAY_OF_WEEK_SIBLINGS_HOUSE EQU $0b
+MAP_ROUTE_27_SANDSTORM_HOUSE EQU $0c
+MAP_ROUTE_29_46_GATE EQU $0d
+MAP_ROUTE_5 EQU $01
+MAP_SAFFRON_CITY EQU $02
+MAP_FIGHTING_DOJO EQU $03
+MAP_SAFFRON_GYM EQU $04
+MAP_SAFFRON_MART EQU $05
+MAP_SAFFRON_POKECENTER_1F EQU $06
+MAP_SAFFRON_POKECENTER_2F_BETA EQU $07
+MAP_MR_PSYCHICS_HOUSE EQU $08
+MAP_SAFFRON_TRAIN_STATION EQU $09
+MAP_SILPH_CO_1F EQU $0a
+MAP_COPYCATS_HOUSE_1F EQU $0b
+MAP_COPYCATS_HOUSE_2F EQU $0c
+MAP_ROUTE_5_UNDERGROUND_ENTRANCE EQU $0d
+MAP_ROUTE_5_SAFFRON_CITY_GATE EQU $0e
+MAP_ROUTE_5_CLEANSE_TAG_SPEECH_HOUSE EQU $0f
+MAP_ROUTE_30 EQU $01
+MAP_ROUTE_31 EQU $02
+MAP_CHERRYGROVE_CITY EQU $03
+MAP_CHERRYGROVE_MART EQU $04
+MAP_CHERRYGROVE_POKECENTER_1F EQU $05
+MAP_CHERRYGROVE_GYM_SPEECH_HOUSE EQU $06
+MAP_GUIDE_GENTS_HOUSE EQU $07
+MAP_CHERRYGROVE_EVOLUTION_SPEECH_HOUSE EQU $08
+MAP_ROUTE_30_BERRY_SPEECH_HOUSE EQU $09
+MAP_MR_POKEMONS_HOUSE EQU $0a
+MAP_ROUTE_31_VIOLET_GATE EQU $0b
+
--- a/extras/crystal.py
+++ b/extras/crystal.py
@@ -1014,7 +1014,9 @@
             cmap = map_names[map_group][map_id]
             name = cmap["name"]
             name = name.replace("Pokémon Center", "PokeCenter").\
-                        replace(" ", "_")
+                        replace(" ", "_").\
+                        replace("-", "_").\
+                        replace("é", "e")
             constant_label = map_name_cleaner(name).upper()
             map_internal_ids[i] = {"label": constant_label,
                                    "map_id": map_id,
@@ -1031,17 +1033,19 @@
         generate_map_constant_labels()
     globals, groups, maps = "", "", ""
     for (id, each) in map_internal_ids.items():
-        groups += "GROUP_"+each["label"] + " EQU $%.2x" % (each["map_group"])
+        label = each["label"].replace("-", "_").replace("é", "e").upper()
+
+        groups += "GROUP_"+ label + " EQU $%.2x" % (each["map_group"])
         groups += "\n"
-        maps += "MAP_"+each["label"] + " EQU $%.2x" % (each["map_id"])
+        maps += "MAP_"+ label + " EQU $%.2x" % (each["map_id"])
         maps += "\n"
-        globals +=  each["label"] + " EQU $%.2x" % (id)
+        globals +=  label + " EQU $%.2x" % (id)
         globals += "\n"
         #for multi-byte constants:
         #print each["label"] + " EQUS \"$%.2x,$%.2x\"" % (each["map_group"], each["map_id"])
     print globals
     print groups
-    #print maps
+    print maps
 
 from pokemon_constants import pokemon_constants