shithub: pokecrystal

Download patch

ref: 8826d97ee42b85dbb45647ed81eaaaad56632754
parent: 51bfd31ea82dbe45220f791eabf1b5bd9edf2e0a
author: Rangi <35663410+Rangi42@users.noreply.github.com>
date: Fri Jul 29 13:43:10 EDT 2022

Define scene constants alongside scene_scripts (#979)

Generic SCENE_DEFAULT and SCENE_FINISHED are legacy values

--- a/constants.asm
+++ b/constants.asm
@@ -38,7 +38,6 @@
 INCLUDE "constants/printer_constants.asm"
 INCLUDE "constants/radio_constants.asm"
 INCLUDE "constants/scgb_constants.asm"
-INCLUDE "constants/scene_constants.asm"
 INCLUDE "constants/script_constants.asm"
 INCLUDE "constants/serial_constants.asm"
 INCLUDE "constants/sfx_constants.asm"
--- a/constants/scene_constants.asm
+++ /dev/null
@@ -1,160 +1,0 @@
-; See data/maps/scenes.asm for which maps have scene variables.
-; Each scene_script and coord_event is associated with a current scene ID.
-
-; Scene variables default to 0.
-DEF SCENE_DEFAULT  EQU 0
-; Often a map will have a one-time default event for scene 0, and switch to a
-; do-nothing scene 1 when the event finishes.
-DEF SCENE_FINISHED EQU 1
-; A coord_event for scene -1 will always activate, regardless of the map's
-; scene variable value.
-DEF SCENE_ALWAYS   EQU -1
-
-; wPokecenter2FSceneID
-	const_def 1
-	const SCENE_POKECENTER2F_LEAVE_TRADE_CENTER       ; 1
-	const SCENE_POKECENTER2F_LEAVE_COLOSSEUM          ; 2
-	const SCENE_POKECENTER2F_LEAVE_TIME_CAPSULE       ; 3
-	const SCENE_POKECENTER2F_LEAVE_MOBILE_TRADE_ROOM  ; 4
-	const SCENE_POKECENTER2F_LEAVE_MOBILE_BATTLE_ROOM ; 5
-
-; wPowerPlantSceneID
-	const_def
-	const SCENE_POWERPLANT_NOTHING               ; 0
-	const SCENE_POWERPLANT_GUARD_GETS_PHONE_CALL ; 1
-
-; wCeruleanGymSceneID
-	const_def
-	const SCENE_CERULEANGYM_NOTHING        ; 0
-	const SCENE_CERULEANGYM_GRUNT_RUNS_OUT ; 1
-
-; wRoute25SceneID
-	const_def
-	const SCENE_ROUTE25_NOTHING     ; 0
-	const SCENE_ROUTE25_MISTYS_DATE ; 1
-
-; wLancesRoomSceneID
-	const_def 1
-	const SCENE_LANCESROOM_APPROACH_LANCE ; 1
-
-; wElmsLabSceneID
-	const_def 1
-	const SCENE_ELMSLAB_CANT_LEAVE            ; 1
-	const SCENE_ELMSLAB_NOTHING               ; 2
-	const SCENE_ELMSLAB_MEET_OFFICER          ; 3
-	const SCENE_ELMSLAB_UNUSED                ; 4
-	const SCENE_ELMSLAB_AIDE_GIVES_POTION     ; 5
-	const SCENE_ELMSLAB_AIDE_GIVES_POKE_BALLS ; 6
-
-; wRoute29SceneID
-	const_def
-	const SCENE_ROUTE29_NOTHING        ; 0
-	const SCENE_ROUTE29_CATCH_TUTORIAL ; 1
-
-; wCherrygroveCitySceneID
-	const_def
-	const SCENE_CHERRYGROVECITY_NOTHING    ; 0
-	const SCENE_CHERRYGROVECITY_MEET_RIVAL ; 1
-
-; wRoute32SceneID
-	const_def 1
-	const SCENE_ROUTE32_OFFER_SLOWPOKETAIL ; 1
-	const SCENE_ROUTE32_NOTHING            ; 2
-
-; wRoute35NationalParkGateSceneID
-	const_def
-	const SCENE_ROUTE35NATIONALPARKGATE_NOTHING             ; 0
-	const SCENE_ROUTE35NATIONALPARKGATE_UNUSED              ; 1
-	const SCENE_ROUTE35NATIONALPARKGATE_LEAVE_CONTEST_EARLY ; 2
-
-; wRoute36SceneID
-	const_def
-	const SCENE_ROUTE36_NOTHING ; 0
-	const SCENE_ROUTE36_SUICUNE ; 1
-
-; wRoute36NationalParkGateSceneID
-	const_def
-	const SCENE_ROUTE36NATIONALPARKGATE_NOTHING             ; 0
-	const SCENE_ROUTE36NATIONALPARKGATE_UNUSED              ; 1
-	const SCENE_ROUTE36NATIONALPARKGATE_LEAVE_CONTEST_EARLY ; 2
-
-; wAzaleaTownSceneID
-	const_def
-	const SCENE_AZALEATOWN_NOTHING              ; 0
-	const SCENE_AZALEATOWN_RIVAL_BATTLE         ; 1
-	const SCENE_AZALEATOWN_KURT_RETURNS_GS_BALL ; 2
-
-; wGoldenrodGymSceneID
-	const_def
-	const SCENE_GOLDENRODGYM_NOTHING              ; 0
-	const SCENE_GOLDENRODGYM_WHITNEY_STOPS_CRYING ; 1
-
-; wRoute42SceneID
-	const_def
-	const SCENE_ROUTE42_NOTHING ; 0
-	const SCENE_ROUTE42_SUICUNE ; 1
-
-; wCianwoodCitySceneID
-	const_def
-	const SCENE_CIANWOODCITY_NOTHING            ; 0
-	const SCENE_CIANWOODCITY_SUICUNE_AND_EUSINE ; 1
-
-; wBurnedTower1FSceneID
-	const_def 1
-	const SCENE_BURNEDTOWER1F_RIVAL_BATTLE ; 1
-	const SCENE_BURNEDTOWER1F_NOTHING      ; 2
-
-; wRadioTower5FSceneID
-	const_def 1
-	const SCENE_RADIOTOWER5F_ROCKET_BOSS ; 1
-	const SCENE_RADIOTOWER5F_NOTHING     ; 2
-
-; wRuinsOfAlphOutsideSceneID
-	const_def
-	const SCENE_RUINSOFALPHOUTSIDE_NOTHING       ; 0
-	const SCENE_RUINSOFALPHOUTSIDE_GET_UNOWN_DEX ; 1
-
-; wRuinsOfAlphResearchCenterSceneID
-	const_def
-	const SCENE_RUINSOFALPHRESEARCHCENTER_NOTHING       ; 0
-	const SCENE_RUINSOFALPHRESEARCHCENTER_GET_UNOWN_DEX ; 1
-
-; wRuinsOfAlphInnerChamberSceneID
-	const_def
-	const SCENE_RUINSOFALPHINNERCHAMBER_NOTHING          ; 0
-	const SCENE_RUINSOFALPHINNERCHAMBER_STRANGE_PRESENCE ; 1
-
-; wMahoganyMart1FSceneID
-	const_def
-	const SCENE_MAHOGANYMART1F_NOTHING               ; 0
-	const SCENE_MAHOGANYMART1F_LANCE_UNCOVERS_STAIRS ; 1
-
-; wTeamRocketBaseB2FSceneID
-	const_def 1
-	const SCENE_TEAMROCKETBASEB2F_ROCKET_BOSS ; 1
-	const SCENE_TEAMROCKETBASEB2F_ELECTRODES  ; 2
-	const SCENE_TEAMROCKETBASEB2F_NOTHING     ; 3
-
-; wTeamRocketBaseB3FSceneID
-	const_def 1
-	const SCENE_TEAMROCKETBASEB3F_RIVAL_ENCOUNTER ; 1
-	const SCENE_TEAMROCKETBASEB3F_ROCKET_BOSS     ; 2
-	const SCENE_TEAMROCKETBASEB3F_NOTHING         ; 3
-
-; wDragonsDenB1FSceneID
-	const_def
-	const SCENE_DRAGONSDENB1F_NOTHING        ; 0
-	const SCENE_DRAGONSDENB1F_CLAIR_GIVES_TM ; 1
-
-; wOlivinePortSceneID
-	const_def 1
-	const SCENE_OLIVINEPORT_LEAVE_SHIP ; 1
-
-; wVermilionPortSceneID
-	const_def 1
-	const SCENE_VERMILIONPORT_LEAVE_SHIP ; 1
-
-; wFastShip1FSceneID
-	const_def 1
-	const SCENE_FASTSHIP1F_ENTER_SHIP   ; 1
-	const SCENE_FASTSHIP1F_MEET_GRANDPA ; 2
--- a/constants/script_constants.asm
+++ b/constants/script_constants.asm
@@ -114,6 +114,10 @@
 DEF BG_EVENT_SIZE     EQU  5 ; bg_event
 DEF OBJECT_EVENT_SIZE EQU 13 ; object_event
 
+; A coord_event for scene -1 will always activate,
+; regardless of the map's scene variable value.
+DEF SCENE_ALWAYS EQU -1
+
 ; bg_event types
 ; BGEventJumptable indexes (see engine/overworld/events.asm)
 	const_def
--- a/docs/bugs_and_glitches.md
+++ b/docs/bugs_and_glitches.md
@@ -2193,7 +2193,7 @@
 +	callback MAPCALLBACK_NEWMAP, .UnsetClairScene
 +
 +.UnsetClairScene:
-+	setmapscene DRAGONS_DEN_B1F, SCENE_DRAGONSDENB1F_NOTHING
++	setmapscene DRAGONS_DEN_B1F, SCENE_DRAGONSDENB1F_NOOP
 +	endcallback
 ```
 
--- a/engine/events/std_scripts.asm
+++ b/engine/events/std_scripts.asm
@@ -302,7 +302,7 @@
 	clearevent EVENT_USED_THE_CARD_KEY_IN_THE_RADIO_TOWER
 	setevent EVENT_MAHOGANY_TOWN_POKEFAN_M_BLOCKS_EAST
 	specialphonecall SPECIALCALL_WEIRDBROADCAST
-	setmapscene MAHOGANY_TOWN, SCENE_FINISHED
+	setmapscene MAHOGANY_TOWN, SCENE_MAHOGANYTOWN_NOOP
 	end
 
 BugContestResultsWarpScript:
@@ -359,8 +359,8 @@
 	waitbutton
 BugContestResults_CleanUp:
 	closetext
-	setscene SCENE_ROUTE36NATIONALPARKGATE_NOTHING
-	setmapscene ROUTE_35_NATIONAL_PARK_GATE, SCENE_ROUTE35NATIONALPARKGATE_NOTHING
+	setscene SCENE_ROUTE36NATIONALPARKGATE_NOOP
+	setmapscene ROUTE_35_NATIONAL_PARK_GATE, SCENE_ROUTE35NATIONALPARKGATE_NOOP
 	setevent EVENT_BUG_CATCHING_CONTESTANT_1A
 	setevent EVENT_BUG_CATCHING_CONTESTANT_2A
 	setevent EVENT_BUG_CATCHING_CONTESTANT_3A
--- a/macros/legacy.asm
+++ b/macros/legacy.asm
@@ -249,6 +249,9 @@
 DEF PERSONTYPE_ITEMBALL EQUS "OBJECTTYPE_ITEMBALL"
 DEF PERSONTYPE_TRAINER  EQUS "OBJECTTYPE_TRAINER"
 
+DEF SCENE_DEFAULT  EQU 0
+DEF SCENE_FINISHED EQU 1
+
 ; macros/scripts/movement.asm
 
 DEF show_person   EQUS "show_object"
--- a/macros/scripts/maps.asm
+++ b/macros/scripts/maps.asm
@@ -10,13 +10,26 @@
 MACRO def_scene_scripts
 	REDEF _NUM_SCENE_SCRIPTS EQUS "_NUM_SCENE_SCRIPTS_\@"
 	db {_NUM_SCENE_SCRIPTS}
+	const_def
 	DEF {_NUM_SCENE_SCRIPTS} = 0
 ENDM
 
+MACRO scene_const
+;\1: scene id constant
+	const \1
+	EXPORT \1
+ENDM
+
 MACRO scene_script
 ;\1: script pointer
+;\2: scene id constant
 	dw \1
 	dw 0 ; filler
+	if _NARG == 2
+		scene_const \2
+	else
+		const_skip
+	endc
 	DEF {_NUM_SCENE_SCRIPTS} += 1
 ENDM
 
--- a/maps/AzaleaPokecenter1F.asm
+++ b/maps/AzaleaPokecenter1F.asm
@@ -6,7 +6,7 @@
 
 AzaleaPokecenter1F_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene
+	scene_script .DummyScene ; unusable
 
 	def_callbacks
 
--- a/maps/AzaleaTown.asm
+++ b/maps/AzaleaTown.asm
@@ -14,9 +14,9 @@
 
 AzaleaTown_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_AZALEATOWN_NOTHING
-	scene_script .DummyScene1 ; SCENE_AZALEATOWN_RIVAL_BATTLE
-	scene_script .DummyScene2 ; SCENE_AZALEATOWN_KURT_RETURNS_GS_BALL
+	scene_script .DummyScene0, SCENE_AZALEATOWN_NOOP
+	scene_script .DummyScene1, SCENE_AZALEATOWN_RIVAL_BATTLE
+	scene_script .DummyScene2, SCENE_AZALEATOWN_KURT_RETURNS_GS_BALL
 
 	def_callbacks
 	callback MAPCALLBACK_NEWMAP, .Flypoint
@@ -100,7 +100,7 @@
 	applymovement AZALEATOWN_SILVER, AzaleaTownRivalBattleExitMovement
 	playsound SFX_EXIT_BUILDING
 	disappear AZALEATOWN_SILVER
-	setscene SCENE_AZALEATOWN_NOTHING
+	setscene SCENE_AZALEATOWN_NOOP
 	waitsfx
 	playmapmusic
 	end
@@ -167,7 +167,7 @@
 	setflag ENGINE_FOREST_IS_RESTLESS
 	clearevent EVENT_ILEX_FOREST_LASS
 	setevent EVENT_ROUTE_34_ILEX_FOREST_GATE_LASS
-	setscene SCENE_AZALEATOWN_NOTHING
+	setscene SCENE_AZALEATOWN_NOOP
 	closetext
 	end
 
--- a/maps/BattleTower1F.asm
+++ b/maps/BattleTower1F.asm
@@ -7,8 +7,8 @@
 
 BattleTower1F_MapScripts:
 	def_scene_scripts
-	scene_script .Scene0 ; SCENE_DEFAULT
-	scene_script .Scene1 ; SCENE_FINISHED
+	scene_script .Scene0, SCENE_BATTLETOWER1F_CHECKSTATE
+	scene_script .Scene1, SCENE_BATTLETOWER1F_NOOP
 
 	def_callbacks
 
@@ -36,7 +36,7 @@
 	setval BATTLETOWERACTION_06
 	special BattleTowerAction
 .SkipEverything:
-	setscene SCENE_FINISHED
+	setscene SCENE_BATTLETOWER1F_NOOP
 .Scene1:
 	end
 
@@ -79,10 +79,10 @@
 	writetext Text_SaveBeforeEnteringBattleRoom
 	yesorno
 	iffalse Script_Menu_ChallengeExplanationCancel
-	setscene SCENE_DEFAULT
+	setscene SCENE_BATTLETOWER1F_CHECKSTATE
 	special TryQuickSave
 	iffalse Script_Menu_ChallengeExplanationCancel
-	setscene SCENE_FINISHED
+	setscene SCENE_BATTLETOWER1F_NOOP
 	setval BATTLETOWERACTION_SET_EXPLANATION_READ ; set 1, [sBattleTowerSaveFileFlags]
 	special BattleTowerAction
 	special BattleTowerRoomMenu
@@ -103,9 +103,9 @@
 	special BattleTowerAction
 Script_WalkToBattleTowerElevator:
 	musicfadeout MUSIC_NONE, 8
-	setmapscene BATTLE_TOWER_BATTLE_ROOM, SCENE_DEFAULT
-	setmapscene BATTLE_TOWER_ELEVATOR, SCENE_DEFAULT
-	setmapscene BATTLE_TOWER_HALLWAY, SCENE_DEFAULT
+	setmapscene BATTLE_TOWER_BATTLE_ROOM, SCENE_BATTLETOWERBATTLEROOM_ENTER
+	setmapscene BATTLE_TOWER_ELEVATOR, SCENE_BATTLETOWERELEVATOR_ENTER
+	setmapscene BATTLE_TOWER_HALLWAY, SCENE_BATTLETOWERHALLWAY_ENTER
 	follow BATTLETOWER1F_RECEPTIONIST, PLAYER
 	applymovement BATTLETOWER1F_RECEPTIONIST, MovementData_BattleTower1FWalkToElevator
 	setval BATTLETOWERACTION_0A
@@ -206,10 +206,10 @@
 	writetext Text_SaveBeforeReentry
 	yesorno
 	iffalse Script_Menu_ChallengeExplanationCancel
-	setscene SCENE_DEFAULT
+	setscene SCENE_BATTLETOWER1F_CHECKSTATE
 	special TryQuickSave
 	iffalse Script_Menu_ChallengeExplanationCancel
-	setscene SCENE_FINISHED
+	setscene SCENE_BATTLETOWER1F_NOOP
 	setval BATTLETOWERACTION_06
 	special BattleTowerAction
 	setval BATTLETOWERACTION_12
--- a/maps/BattleTowerBattleRoom.asm
+++ b/maps/BattleTowerBattleRoom.asm
@@ -4,8 +4,8 @@
 
 BattleTowerBattleRoom_MapScripts:
 	def_scene_scripts
-	scene_script .EnterBattleRoom ; SCENE_DEFAULT
-	scene_script .DummyScene ; SCENE_FINISHED
+	scene_script .EnterBattleRoom, SCENE_BATTLETOWERBATTLEROOM_ENTER
+	scene_script .DummyScene,      SCENE_BATTLETOWERBATTLEROOM_NOOP
 
 	def_callbacks
 
@@ -12,7 +12,7 @@
 .EnterBattleRoom:
 	disappear BATTLETOWERBATTLEROOM_YOUNGSTER
 	sdefer Script_BattleRoom
-	setscene SCENE_FINISHED
+	setscene SCENE_BATTLETOWERBATTLEROOM_NOOP
 .DummyScene:
 	end
 
--- a/maps/BattleTowerElevator.asm
+++ b/maps/BattleTowerElevator.asm
@@ -3,14 +3,14 @@
 
 BattleTowerElevator_MapScripts:
 	def_scene_scripts
-	scene_script .Scene0 ; SCENE_DEFAULT
-	scene_script .Scene1 ; SCENE_FINISHED
+	scene_script .Scene0, SCENE_BATTLETOWERELEVATOR_ENTER
+	scene_script .Scene1, SCENE_BATTLETOWERELEVATOR_NOOP
 
 	def_callbacks
 
 .Scene0:
 	sdefer .RideElevator
-	setscene SCENE_FINISHED
+	setscene SCENE_BATTLETOWERELEVATOR_NOOP
 .Scene1:
 	end
 
--- a/maps/BattleTowerHallway.asm
+++ b/maps/BattleTowerHallway.asm
@@ -3,14 +3,14 @@
 
 BattleTowerHallway_MapScripts:
 	def_scene_scripts
-	scene_script .Scene0 ; SCENE_DEFAULT
-	scene_script .Scene1 ; SCENE_FINISHED
+	scene_script .Scene0, SCENE_BATTLETOWERHALLWAY_ENTER
+	scene_script .Scene1, SCENE_BATTLETOWERHALLWAY_NOOP
 
 	def_callbacks
 
 .Scene0:
 	sdefer .ChooseBattleRoom
-	setscene SCENE_FINISHED
+	setscene SCENE_BATTLETOWERHALLWAY_NOOP
 .Scene1:
 	end
 
--- a/maps/BrunosRoom.asm
+++ b/maps/BrunosRoom.asm
@@ -3,8 +3,8 @@
 
 BrunosRoom_MapScripts:
 	def_scene_scripts
-	scene_script .LockDoor ; SCENE_DEFAULT
-	scene_script .DummyScene ; SCENE_FINISHED
+	scene_script .LockDoor,   SCENE_BRUNOSROOM_LOCK_DOOR
+	scene_script .DummyScene, SCENE_BRUNOSROOM_NOOP
 
 	def_callbacks
 	callback MAPCALLBACK_TILES, .BrunosRoomDoors
@@ -35,7 +35,7 @@
 	changeblock 4, 14, $2a ; wall
 	reloadmappart
 	closetext
-	setscene SCENE_FINISHED
+	setscene SCENE_BRUNOSROOM_NOOP
 	setevent EVENT_BRUNOS_ROOM_ENTRANCE_CLOSED
 	waitsfx
 	end
--- a/maps/BurnedTower1F.asm
+++ b/maps/BurnedTower1F.asm
@@ -7,9 +7,9 @@
 
 BurnedTower1F_MapScripts:
 	def_scene_scripts
-	scene_script .EusineScene ; SCENE_DEFAULT
-	scene_script .DummyScene1 ; SCENE_BURNEDTOWER1F_RIVAL_BATTLE
-	scene_script .DummyScene2 ; SCENE_BURNEDTOWER1F_NOTHING
+	scene_script .EusineScene, SCENE_BURNEDTOWER1F_MEET_EUSINE
+	scene_script .DummyScene1, SCENE_BURNEDTOWER1F_RIVAL_BATTLE
+	scene_script .DummyScene2, SCENE_BURNEDTOWER1F_NOOP
 
 	def_callbacks
 	callback MAPCALLBACK_TILES, .HoleAndLadder
@@ -96,7 +96,7 @@
 	writetext BurnedTowerSilver_AfterText1
 	waitbutton
 	closetext
-	setscene SCENE_BURNEDTOWER1F_NOTHING
+	setscene SCENE_BURNEDTOWER1F_NOOP
 	setevent EVENT_RIVAL_BURNED_TOWER
 	special FadeOutMusic
 	pause 15
--- a/maps/BurnedTowerB1F.asm
+++ b/maps/BurnedTowerB1F.asm
@@ -11,8 +11,8 @@
 
 BurnedTowerB1F_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_DEFAULT
-	scene_script .DummyScene1 ; SCENE_FINISHED
+	scene_script .DummyScene0, SCENE_BURNEDTOWERB1F_RELEASE_THE_BEASTS
+	scene_script .DummyScene1, SCENE_BURNEDTOWERB1F_NOOP
 
 	def_callbacks
 	callback MAPCALLBACK_TILES, .LadderCallback
@@ -79,10 +79,10 @@
 	disappear BURNEDTOWERB1F_SUICUNE1
 	waitsfx
 	special RestartMapMusic
-	setscene SCENE_FINISHED
+	setscene SCENE_BURNEDTOWERB1F_NOOP
 	setevent EVENT_RELEASED_THE_BEASTS
 	special InitRoamMons
-	setmapscene ECRUTEAK_GYM, SCENE_FINISHED
+	setmapscene ECRUTEAK_GYM, SCENE_ECRUTEAKGYM_NOOP
 	setmapscene CIANWOOD_CITY, SCENE_CIANWOODCITY_SUICUNE_AND_EUSINE
 	clearevent EVENT_SAW_SUICUNE_AT_CIANWOOD_CITY
 	setevent EVENT_ECRUTEAK_GYM_GRAMPS
@@ -94,7 +94,7 @@
 	changeblock 6, 14, $1b ; ladder
 	reloadmappart
 	closetext
-	setscene SCENE_FINISHED
+	setscene SCENE_BURNEDTOWERB1F_NOOP
 	end
 
 BurnedTowerB1FEusine:
@@ -245,7 +245,7 @@
 	warp_event  7, 15, BURNED_TOWER_1F, 14
 
 	def_coord_events
-	coord_event 10,  6, SCENE_DEFAULT, ReleaseTheBeasts
+	coord_event 10,  6, SCENE_BURNEDTOWERB1F_RELEASE_THE_BEASTS, ReleaseTheBeasts
 
 	def_bg_events
 
--- a/maps/CeruleanGym.asm
+++ b/maps/CeruleanGym.asm
@@ -8,8 +8,8 @@
 
 CeruleanGym_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_CERULEANGYM_NOTHING
-	scene_script .GruntRunsOut ; SCENE_CERULEANGYM_GRUNT_RUNS_OUT
+	scene_script .DummyScene0,  SCENE_CERULEANGYM_NOOP
+	scene_script .GruntRunsOut, SCENE_CERULEANGYM_GRUNT_RUNS_OUT
 
 	def_callbacks
 
@@ -46,9 +46,9 @@
 	setevent EVENT_MET_ROCKET_GRUNT_AT_CERULEAN_GYM
 	clearevent EVENT_ROUTE_24_ROCKET
 	clearevent EVENT_ROUTE_25_MISTY_BOYFRIEND
-	setscene SCENE_CERULEANGYM_NOTHING
+	setscene SCENE_CERULEANGYM_NOOP
 	setmapscene ROUTE_25, SCENE_ROUTE25_MISTYS_DATE
-	setmapscene POWER_PLANT, SCENE_POWERPLANT_NOTHING
+	setmapscene POWER_PLANT, SCENE_POWERPLANT_NOOP
 	waitsfx
 	special RestartMapMusic
 	pause 15
--- a/maps/CherrygroveCity.asm
+++ b/maps/CherrygroveCity.asm
@@ -7,8 +7,8 @@
 
 CherrygroveCity_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_CHERRYGROVECITY_NOTHING
-	scene_script .DummyScene1 ; SCENE_CHERRYGROVECITY_MEET_RIVAL
+	scene_script .DummyScene0, SCENE_CHERRYGROVECITY_NOOP
+	scene_script .DummyScene1, SCENE_CHERRYGROVECITY_MEET_RIVAL
 
 	def_callbacks
 	callback MAPCALLBACK_NEWMAP, .FlyPoint
@@ -169,7 +169,7 @@
 	turnobject PLAYER, LEFT
 	applymovement CHERRYGROVECITY_SILVER, CherrygroveCity_RivalExitsStageLeft
 	disappear CHERRYGROVECITY_SILVER
-	setscene SCENE_CHERRYGROVECITY_NOTHING
+	setscene SCENE_CHERRYGROVECITY_NOOP
 	special HealParty
 	playmapmusic
 	end
--- a/maps/CianwoodCity.asm
+++ b/maps/CianwoodCity.asm
@@ -14,8 +14,8 @@
 
 CianwoodCity_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_CIANWOODCITY_NOTHING
-	scene_script .DummyScene1 ; SCENE_CIANWOODCITY_SUICUNE_AND_EUSINE
+	scene_script .DummyScene0, SCENE_CIANWOODCITY_NOOP
+	scene_script .DummyScene1, SCENE_CIANWOODCITY_SUICUNE_AND_EUSINE
 
 	def_callbacks
 	callback MAPCALLBACK_NEWMAP, .FlyPointAndSuicune
@@ -47,7 +47,7 @@
 	applymovement CIANWOODCITY_SUICUNE, CianwoodCitySuicuneDepartMovement
 	disappear CIANWOODCITY_SUICUNE
 	pause 10
-	setscene SCENE_CIANWOODCITY_NOTHING
+	setscene SCENE_CIANWOODCITY_NOOP
 	clearevent EVENT_SAW_SUICUNE_ON_ROUTE_42
 	setmapscene ROUTE_42, SCENE_ROUTE42_SUICUNE
 	checkevent EVENT_FOUGHT_EUSINE
--- a/maps/Colosseum.asm
+++ b/maps/Colosseum.asm
@@ -4,8 +4,8 @@
 
 Colosseum_MapScripts:
 	def_scene_scripts
-	scene_script .InitializeColosseum ; SCENE_DEFAULT
-	scene_script .DummyScene1 ; SCENE_FINISHED
+	scene_script .InitializeColosseum, SCENE_COLOSSEUM_INITIALIZE
+	scene_script .DummyScene1,         SCENE_COLOSSEUM_NOOP
 	scene_script .DummyScene2 ; unused
 
 	def_callbacks
@@ -39,7 +39,7 @@
 	endcallback
 
 .InitializeAndPreparePokecenter2F:
-	setscene SCENE_FINISHED
+	setscene SCENE_COLOSSEUM_NOOP
 	setmapscene POKECENTER_2F, SCENE_POKECENTER2F_LEAVE_COLOSSEUM
 	end
 
--- a/maps/DragonShrine.asm
+++ b/maps/DragonShrine.asm
@@ -6,8 +6,8 @@
 
 DragonShrine_MapScripts:
 	def_scene_scripts
-	scene_script .DragonShrineTest ; SCENE_DEFAULT
-	scene_script .DummyScene ; SCENE_FINISHED
+	scene_script .DragonShrineTest, SCENE_DRAGONSHRINE_TAKE_TEST
+	scene_script .DummyScene,       SCENE_DRAGONSHRINE_NOOP
 
 	def_callbacks
 
@@ -163,7 +163,7 @@
 	waitsfx
 	special RestartMapMusic
 	specialphonecall SPECIALCALL_MASTERBALL
-	setscene SCENE_FINISHED
+	setscene SCENE_DRAGONSHRINE_NOOP
 	setmapscene DRAGONS_DEN_B1F, SCENE_DRAGONSDENB1F_CLAIR_GIVES_TM
 	writetext DragonShrinePlayerReceivedRisingBadgeText
 	promptbutton
--- a/maps/DragonsDenB1F.asm
+++ b/maps/DragonsDenB1F.asm
@@ -11,8 +11,8 @@
 
 DragonsDenB1F_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_DRAGONSDENB1F_NOTHING
-	scene_script .DummyScene1 ; SCENE_DRAGONSDENB1F_CLAIR_GIVES_TM
+	scene_script .DummyScene0, SCENE_DRAGONSDENB1F_NOOP
+	scene_script .DummyScene1, SCENE_DRAGONSDENB1F_CLAIR_GIVES_TM
 
 	def_callbacks
 	callback MAPCALLBACK_NEWMAP, .CheckSilver
@@ -79,7 +79,7 @@
 	pause 30
 	special RestartMapMusic
 	disappear DRAGONSDENB1F_CLAIR
-	setscene SCENE_DRAGONSDENB1F_NOTHING
+	setscene SCENE_DRAGONSDENB1F_NOOP
 	end
 
 TrainerCooltrainermDarin:
--- a/maps/EcruteakGym.asm
+++ b/maps/EcruteakGym.asm
@@ -9,8 +9,8 @@
 
 EcruteakGym_MapScripts:
 	def_scene_scripts
-	scene_script .ForcedToLeave ; SCENE_DEFAULT
-	scene_script .DummyScene ; SCENE_FINISHED
+	scene_script .ForcedToLeave, SCENE_ECRUTEAKGYM_FORCED_TO_LEAVE
+	scene_script .DummyScene,    SCENE_ECRUTEAKGYM_NOOP
 
 	def_callbacks
 
@@ -41,7 +41,7 @@
 	setflag ENGINE_FOGBADGE
 	readvar VAR_BADGES
 	scall EcruteakGymActivateRockets
-	setmapscene ECRUTEAK_TIN_TOWER_ENTRANCE, SCENE_FINISHED
+	setmapscene ECRUTEAK_TIN_TOWER_ENTRANCE, SCENE_ECRUTEAKTINTOWERENTRANCE_NOOP
 	setevent EVENT_RANG_CLEAR_BELL_1
 	setevent EVENT_RANG_CLEAR_BELL_2
 .FightDone:
--- a/maps/EcruteakPokecenter1F.asm
+++ b/maps/EcruteakPokecenter1F.asm
@@ -7,8 +7,8 @@
 
 EcruteakPokecenter1F_MapScripts:
 	def_scene_scripts
-	scene_script .MeetBill ; SCENE_DEFAULT
-	scene_script .DummyScene ; SCENE_FINISHED
+	scene_script .MeetBill,   SCENE_ECRUTEAKPOKECENTER1F_MEET_BILL
+	scene_script .DummyScene, SCENE_ECRUTEAKPOKECENTER1F_NOOP
 
 	def_callbacks
 
@@ -51,7 +51,7 @@
 	disappear ECRUTEAKPOKECENTER1F_BILL
 	clearevent EVENT_MET_BILL
 	setflag ENGINE_TIME_CAPSULE
-	setscene SCENE_FINISHED
+	setscene SCENE_ECRUTEAKPOKECENTER1F_NOOP
 	waitsfx
 	end
 
--- a/maps/EcruteakTinTowerEntrance.asm
+++ b/maps/EcruteakTinTowerEntrance.asm
@@ -6,8 +6,8 @@
 
 EcruteakTinTowerEntrance_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_DEFAULT
-	scene_script .DummyScene1 ; SCENE_FINISHED
+	scene_script .DummyScene0, SCENE_ECRUTEAKTINTOWERENTRANCE_SAGE_BLOCKS
+	scene_script .DummyScene1, SCENE_ECRUTEAKTINTOWERENTRANCE_NOOP
 
 	def_callbacks
 	callback MAPCALLBACK_OBJECTS, .InitializeSages
@@ -33,7 +33,7 @@
 	setevent EVENT_ECRUTEAK_TIN_TOWER_ENTRANCE_WANDERING_SAGE
 	checkitem CLEAR_BELL
 	iftrue .NoClearBell
-	setscene SCENE_DEFAULT
+	setscene SCENE_ECRUTEAKTINTOWERENTRANCE_SAGE_BLOCKS
 .NoClearBell:
 	endcallback
 
@@ -98,7 +98,7 @@
 	writetext EcruteakTinTowerEntranceSageText_HearsClearBell
 	waitbutton
 	closetext
-	setscene SCENE_FINISHED
+	setscene SCENE_ECRUTEAKTINTOWERENTRANCE_NOOP
 	setevent EVENT_RANG_CLEAR_BELL_2
 	clearevent EVENT_RANG_CLEAR_BELL_1
 	setevent EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1
@@ -286,8 +286,8 @@
 	warp_event 17,  3, WISE_TRIOS_ROOM, 3
 
 	def_coord_events
-	coord_event  4,  7, SCENE_DEFAULT, EcruteakTinTowerEntranceSageBlocksLeft
-	coord_event  5,  7, SCENE_DEFAULT, EcruteakTinTowerEntranceSageBlocksRight
+	coord_event  4,  7, SCENE_ECRUTEAKTINTOWERENTRANCE_SAGE_BLOCKS, EcruteakTinTowerEntranceSageBlocksLeft
+	coord_event  5,  7, SCENE_ECRUTEAKTINTOWERENTRANCE_SAGE_BLOCKS, EcruteakTinTowerEntranceSageBlocksRight
 
 	def_bg_events
 
--- a/maps/ElmsLab.asm
+++ b/maps/ElmsLab.asm
@@ -8,12 +8,13 @@
 
 ElmsLab_MapScripts:
 	def_scene_scripts
-	scene_script .MeetElm ; SCENE_DEFAULT
-	scene_script .DummyScene1 ; SCENE_ELMSLAB_CANT_LEAVE
-	scene_script .DummyScene2 ; SCENE_ELMSLAB_NOTHING
-	scene_script .DummyScene3 ; SCENE_ELMSLAB_MEET_OFFICER
-	scene_script .DummyScene4 ; SCENE_ELMSLAB_UNUSED
-	scene_script .DummyScene5 ; SCENE_ELMSLAB_AIDE_GIVES_POTION
+	scene_script .MeetElm,     SCENE_ELMSLAB_MEET_ELM
+	scene_script .DummyScene1, SCENE_ELMSLAB_CANT_LEAVE
+	scene_script .DummyScene2, SCENE_ELMSLAB_NOOP
+	scene_script .DummyScene3, SCENE_ELMSLAB_MEET_OFFICER
+	scene_script .DummyScene4, SCENE_ELMSLAB_UNUSED
+	scene_script .DummyScene5, SCENE_ELMSLAB_AIDE_GIVES_POTION
+	scene_const SCENE_ELMSLAB_AIDE_GIVES_POKE_BALLS
 
 	def_callbacks
 	callback MAPCALLBACK_OBJECTS, .MoveElmCallback
@@ -39,7 +40,7 @@
 
 .MoveElmCallback:
 	checkscene
-	iftrue .Skip ; not SCENE_DEFAULT
+	iftrue .Skip ; not SCENE_ELMSLAB_MEET_ELM
 	moveobject ELMSLAB_ELM, 3, 4
 .Skip:
 	endcallback
@@ -273,7 +274,7 @@
 	setevent EVENT_GOT_A_POKEMON_FROM_ELM
 	setevent EVENT_RIVAL_CHERRYGROVE_CITY
 	setscene SCENE_ELMSLAB_AIDE_GIVES_POTION
-	setmapscene NEW_BARK_TOWN, SCENE_FINISHED
+	setmapscene NEW_BARK_TOWN, SCENE_NEWBARKTOWN_NOOP
 	end
 
 ElmDescribesMrPokemonScript:
@@ -477,7 +478,7 @@
 	writetext AideText_AlwaysBusy
 	waitbutton
 	closetext
-	setscene SCENE_ELMSLAB_NOTHING
+	setscene SCENE_ELMSLAB_NOOP
 	end
 
 AideScript_WalkBalls1:
@@ -505,7 +506,7 @@
 	promptbutton
 	itemnotify
 	closetext
-	setscene SCENE_ELMSLAB_NOTHING
+	setscene SCENE_ELMSLAB_NOOP
 	end
 
 AideScript_ReceiveTheBalls:
@@ -560,7 +561,7 @@
 	closetext
 	applymovement ELMSLAB_OFFICER, OfficerLeavesMovement
 	disappear ELMSLAB_OFFICER
-	setscene SCENE_ELMSLAB_NOTHING
+	setscene SCENE_ELMSLAB_NOOP
 	end
 
 ElmsLabWindow:
--- a/maps/FastShip1F.asm
+++ b/maps/FastShip1F.asm
@@ -6,9 +6,9 @@
 
 FastShip1F_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_DEFAULT
-	scene_script .EnterFastShip ; SCENE_FASTSHIP1F_ENTER_SHIP
-	scene_script .DummyScene2 ; SCENE_FASTSHIP1F_MEET_GRANDPA
+	scene_script .DummyScene0,   SCENE_FASTSHIP1F_NOOP
+	scene_script .EnterFastShip, SCENE_FASTSHIP1F_ENTER_SHIP
+	scene_script .DummyScene2,   SCENE_FASTSHIP1F_MEET_GRANDPA
 
 	def_callbacks
 
@@ -37,7 +37,7 @@
 	end
 
 .SkipGrandpa:
-	setscene SCENE_DEFAULT
+	setscene SCENE_FASTSHIP1F_NOOP
 	end
 
 FastShip1FSailor1Script:
@@ -133,7 +133,7 @@
 	turnobject PLAYER, RIGHT
 	applymovement FASTSHIP1F_GENTLEMAN, FastShip1F_GrandpaRunsOutMovement
 	disappear FASTSHIP1F_GENTLEMAN
-	setscene SCENE_DEFAULT
+	setscene SCENE_FASTSHIP1F_NOOP
 	end
 
 FastShip1F_SailorStepAsideMovement:
--- a/maps/FastShipB1F.asm
+++ b/maps/FastShipB1F.asm
@@ -14,8 +14,8 @@
 
 FastShipB1F_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_DEFAULT
-	scene_script .DummyScene1 ; SCENE_FINISHED
+	scene_script .DummyScene0, SCENE_FASTSHIPB1F_SAILOR_BLOCKS
+	scene_script .DummyScene1, SCENE_FASTSHIPB1F_NOOP
 
 	def_callbacks
 
@@ -454,8 +454,8 @@
 	warp_event 31, 13, FAST_SHIP_1F, 12
 
 	def_coord_events
-	coord_event 30,  7, SCENE_DEFAULT, FastShipB1FSailorBlocksLeft
-	coord_event 31,  7, SCENE_DEFAULT, FastShipB1FSailorBlocksRight
+	coord_event 30,  7, SCENE_FASTSHIPB1F_SAILOR_BLOCKS, FastShipB1FSailorBlocksLeft
+	coord_event 31,  7, SCENE_FASTSHIPB1F_SAILOR_BLOCKS, FastShipB1FSailorBlocksRight
 
 	def_bg_events
 	bg_event 27,  9, BGEVENT_READ, FastShipB1FTrashcan
--- a/maps/FastShipCabins_NNW_NNE_NE.asm
+++ b/maps/FastShipCabins_NNW_NNE_NE.asm
@@ -96,7 +96,7 @@
 	waitbutton
 	closetext
 	setevent EVENT_FAST_SHIP_LAZY_SAILOR
-	setmapscene FAST_SHIP_B1F, SCENE_FINISHED
+	setmapscene FAST_SHIP_B1F, SCENE_FASTSHIPB1F_NOOP
 	readvar VAR_FACING
 	ifequal RIGHT, .Movement2
 	applymovement FASTSHIPCABINS_NNW_NNE_NE_SAILOR, FastShipLazySailorLeavesMovement1
--- a/maps/FastShipCabins_SE_SSE_CaptainsCabin.asm
+++ b/maps/FastShipCabins_SE_SSE_CaptainsCabin.asm
@@ -79,7 +79,7 @@
 	writetext SSAquaEntertainedGranddaughterText
 	promptbutton
 	setevent EVENT_VERMILION_PORT_SAILOR_AT_GANGWAY
-	setmapscene FAST_SHIP_1F, SCENE_DEFAULT
+	setmapscene FAST_SHIP_1F, SCENE_FASTSHIP1F_NOOP
 	sjump SSAquaMetalCoatAndDocking
 
 SSAquaGrandpa:
@@ -92,7 +92,7 @@
 	writetext SSAquaCantFindGranddaughterText
 	waitbutton
 	closetext
-	setmapscene FAST_SHIP_1F, SCENE_DEFAULT
+	setmapscene FAST_SHIP_1F, SCENE_FASTSHIP1F_NOOP
 	end
 
 SSAquaMetalCoatAndDocking:
--- a/maps/FuchsiaPokecenter1F.asm
+++ b/maps/FuchsiaPokecenter1F.asm
@@ -6,7 +6,7 @@
 
 FuchsiaPokecenter1F_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene
+	scene_script .DummyScene ; unusable
 
 	def_callbacks
 
--- a/maps/GoldenrodGym.asm
+++ b/maps/GoldenrodGym.asm
@@ -8,8 +8,8 @@
 
 GoldenrodGym_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_GOLDENRODGYM_NOTHING
-	scene_script .DummyScene1 ; SCENE_GOLDENRODGYM_WHITNEY_STOPS_CRYING
+	scene_script .DummyScene0, SCENE_GOLDENRODGYM_NOOP
+	scene_script .DummyScene1, SCENE_GOLDENRODGYM_WHITNEY_STOPS_CRYING
 
 	def_callbacks
 
@@ -110,7 +110,7 @@
 	waitbutton
 	closetext
 	applymovement GOLDENRODGYM_LASS2, BridgetWalksAwayMovement
-	setscene SCENE_GOLDENRODGYM_NOTHING
+	setscene SCENE_GOLDENRODGYM_NOOP
 	clearevent EVENT_MADE_WHITNEY_CRY
 	end
 
--- a/maps/GoldenrodMagnetTrainStation.asm
+++ b/maps/GoldenrodMagnetTrainStation.asm
@@ -4,7 +4,7 @@
 
 GoldenrodMagnetTrainStation_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene ; SCENE_DEFAULT
+	scene_script .DummyScene, SCENE_GOLDENRODMAGNETTRAINSTATION_ARRIVE_FROM_SAFFRON
 
 	def_callbacks
 
@@ -172,7 +172,7 @@
 	warp_event 11,  5, SAFFRON_MAGNET_TRAIN_STATION, 3
 
 	def_coord_events
-	coord_event 11,  6, SCENE_DEFAULT, Script_ArriveFromSaffron
+	coord_event 11,  6, SCENE_GOLDENRODMAGNETTRAINSTATION_ARRIVE_FROM_SAFFRON, Script_ArriveFromSaffron
 
 	def_bg_events
 
--- a/maps/GoldenrodPokecenter1F.asm
+++ b/maps/GoldenrodPokecenter1F.asm
@@ -7,6 +7,7 @@
 
 GoldenrodPokecenter1F_MapScripts:
 	def_scene_scripts
+	scene_const SCENE_GOLDENRODPOKECENTER1F_GS_BALL
 
 	def_callbacks
 
@@ -811,8 +812,8 @@
 	warp_event  0,  7, POKECENTER_2F, 1
 
 	def_coord_events
-	coord_event  3,  7, SCENE_DEFAULT, GoldenrodPokecenter1F_GSBallSceneLeft
-	coord_event  4,  7, SCENE_DEFAULT, GoldenrodPokecenter1F_GSBallSceneRight
+	coord_event  3,  7, SCENE_GOLDENRODPOKECENTER1F_GS_BALL, GoldenrodPokecenter1F_GSBallSceneLeft
+	coord_event  4,  7, SCENE_GOLDENRODPOKECENTER1F_GS_BALL, GoldenrodPokecenter1F_GSBallSceneRight
 
 	def_bg_events
 
--- a/maps/GoldenrodUndergroundSwitchRoomEntrances.asm
+++ b/maps/GoldenrodUndergroundSwitchRoomEntrances.asm
@@ -47,8 +47,8 @@
 
 GoldenrodUndergroundSwitchRoomEntrances_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_DEFAULT
-	scene_script .DummyScene1 ; SCENE_FINISHED
+	scene_script .DummyScene0, SCENE_GOLDENRODUNDERGROUNDSWITCHROOMENTRANCES_RIVAL_BATTLE
+	scene_script .DummyScene1, SCENE_GOLDENRODUNDERGROUNDSWITCHROOMENTRANCES_NOOP
 
 	def_callbacks
 	callback MAPCALLBACK_TILES, .UpdateDoorPositions
@@ -131,7 +131,7 @@
 	applymovement GOLDENRODUNDERGROUNDSWITCHROOMENTRANCES_SILVER, UndergroundSilverRetreatMovement1
 	playsound SFX_EXIT_BUILDING
 	disappear GOLDENRODUNDERGROUNDSWITCHROOMENTRANCES_SILVER
-	setscene SCENE_FINISHED
+	setscene SCENE_GOLDENRODUNDERGROUNDSWITCHROOMENTRANCES_NOOP
 	waitsfx
 	playmapmusic
 	end
@@ -150,7 +150,7 @@
 	applymovement GOLDENRODUNDERGROUNDSWITCHROOMENTRANCES_SILVER, UndergroundSilverRetreatMovement2
 	playsound SFX_EXIT_BUILDING
 	disappear GOLDENRODUNDERGROUNDSWITCHROOMENTRANCES_SILVER
-	setscene SCENE_FINISHED
+	setscene SCENE_GOLDENRODUNDERGROUNDSWITCHROOMENTRANCES_NOOP
 	waitsfx
 	playmapmusic
 	end
@@ -944,8 +944,8 @@
 	warp_event 21, 29, GOLDENROD_CITY, 13
 
 	def_coord_events
-	coord_event 19,  4, SCENE_DEFAULT, UndergroundSilverScene1
-	coord_event 19,  5, SCENE_DEFAULT, UndergroundSilverScene2
+	coord_event 19,  4, SCENE_GOLDENRODUNDERGROUNDSWITCHROOMENTRANCES_RIVAL_BATTLE, UndergroundSilverScene1
+	coord_event 19,  5, SCENE_GOLDENRODUNDERGROUNDSWITCHROOMENTRANCES_RIVAL_BATTLE, UndergroundSilverScene2
 
 	def_bg_events
 	bg_event 16,  1, BGEVENT_READ, Switch1Script
--- a/maps/HallOfFame.asm
+++ b/maps/HallOfFame.asm
@@ -3,8 +3,8 @@
 
 HallOfFame_MapScripts:
 	def_scene_scripts
-	scene_script .EnterHallOfFame ; SCENE_DEFAULT
-	scene_script .DummyScene ; SCENE_FINISHED
+	scene_script .EnterHallOfFame, SCENE_HALLOFFAME_ENTER
+	scene_script .DummyScene,      SCENE_HALLOFFAME_NOOP
 
 	def_callbacks
 
@@ -26,7 +26,7 @@
 	closetext
 	turnobject HALLOFFAME_LANCE, UP
 	applymovement PLAYER, HallOfFame_SlowlyApproachMachine
-	setscene SCENE_FINISHED
+	setscene SCENE_HALLOFFAME_NOOP
 	pause 15
 	setval HEALMACHINE_HALL_OF_FAME
 	special HealMachineAnim
@@ -36,7 +36,7 @@
 	clearevent EVENT_RED_IN_MT_SILVER
 	setevent EVENT_OLIVINE_PORT_SPRITES_BEFORE_HALL_OF_FAME
 	clearevent EVENT_OLIVINE_PORT_SPRITES_AFTER_HALL_OF_FAME
-	setmapscene SPROUT_TOWER_3F, SCENE_FINISHED
+	setmapscene SPROUT_TOWER_3F, SCENE_SPROUTTOWER3F_NOOP
 	special HealParty
 	checkevent EVENT_GOT_SS_TICKET_FROM_ELM
 	iftrue .SkipPhoneCall
--- a/maps/IndigoPlateauPokecenter1F.asm
+++ b/maps/IndigoPlateauPokecenter1F.asm
@@ -8,7 +8,7 @@
 
 IndigoPlateauPokecenter1F_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene ; SCENE_DEFAULT
+	scene_script .DummyScene, SCENE_INDIGOPLATEAUPOKECENTER1F_RIVAL_BATTLE
 
 	def_callbacks
 	callback MAPCALLBACK_NEWMAP, .PrepareElite4
@@ -17,12 +17,12 @@
 	end
 
 .PrepareElite4:
-	setmapscene WILLS_ROOM, SCENE_DEFAULT
-	setmapscene KOGAS_ROOM, SCENE_DEFAULT
-	setmapscene BRUNOS_ROOM, SCENE_DEFAULT
-	setmapscene KARENS_ROOM, SCENE_DEFAULT
-	setmapscene LANCES_ROOM, SCENE_DEFAULT
-	setmapscene HALL_OF_FAME, SCENE_DEFAULT
+	setmapscene WILLS_ROOM, SCENE_WILLSROOM_LOCK_DOOR
+	setmapscene KOGAS_ROOM, SCENE_KOGASROOM_LOCK_DOOR
+	setmapscene BRUNOS_ROOM, SCENE_BRUNOSROOM_LOCK_DOOR
+	setmapscene KARENS_ROOM, SCENE_KARENSROOM_LOCK_DOOR
+	setmapscene LANCES_ROOM, SCENE_LANCESROOM_LOCK_DOOR
+	setmapscene HALL_OF_FAME, SCENE_HALLOFFAME_ENTER
 	clearevent EVENT_WILLS_ROOM_ENTRANCE_CLOSED
 	clearevent EVENT_WILLS_ROOM_EXIT_OPEN
 	clearevent EVENT_KOGAS_ROOM_ENTRANCE_CLOSED
@@ -128,7 +128,7 @@
 	turnobject PLAYER, DOWN
 	applymovement INDIGOPLATEAUPOKECENTER1F_SILVER, PlateauRivalLeavesMovement
 	disappear INDIGOPLATEAUPOKECENTER1F_SILVER
-	setscene SCENE_DEFAULT
+	setscene SCENE_INDIGOPLATEAUPOKECENTER1F_RIVAL_BATTLE
 	playmapmusic
 	setflag ENGINE_INDIGO_PLATEAU_RIVAL_FIGHT
 PlateauRivalScriptDone:
@@ -310,8 +310,8 @@
 	warp_event 14,  3, WILLS_ROOM, 1
 
 	def_coord_events
-	coord_event 16,  4, SCENE_DEFAULT, PlateauRivalBattle1
-	coord_event 17,  4, SCENE_DEFAULT, PlateauRivalBattle2
+	coord_event 16,  4, SCENE_INDIGOPLATEAUPOKECENTER1F_RIVAL_BATTLE, PlateauRivalBattle1
+	coord_event 17,  4, SCENE_INDIGOPLATEAUPOKECENTER1F_RIVAL_BATTLE, PlateauRivalBattle2
 
 	def_bg_events
 
--- a/maps/KarensRoom.asm
+++ b/maps/KarensRoom.asm
@@ -3,8 +3,8 @@
 
 KarensRoom_MapScripts:
 	def_scene_scripts
-	scene_script .LockDoor ; SCENE_DEFAULT
-	scene_script .DummyScene ; SCENE_FINISHED
+	scene_script .LockDoor,   SCENE_KARENSROOM_LOCK_DOOR
+	scene_script .DummyScene, SCENE_KARENSROOM_NOOP
 
 	def_callbacks
 	callback MAPCALLBACK_TILES, .KarensRoomDoors
@@ -35,7 +35,7 @@
 	changeblock 4, 14, $2a ; wall
 	reloadmappart
 	closetext
-	setscene SCENE_FINISHED
+	setscene SCENE_KARENSROOM_NOOP
 	setevent EVENT_KARENS_ROOM_ENTRANCE_CLOSED
 	waitsfx
 	end
--- a/maps/KogasRoom.asm
+++ b/maps/KogasRoom.asm
@@ -3,8 +3,8 @@
 
 KogasRoom_MapScripts:
 	def_scene_scripts
-	scene_script .LockDoor ; SCENE_DEFAULT
-	scene_script .DummyScene ; SCENE_FINISHED
+	scene_script .LockDoor,   SCENE_KOGASROOM_LOCK_DOOR
+	scene_script .DummyScene, SCENE_KOGASROOM_NOOP
 
 	def_callbacks
 	callback MAPCALLBACK_TILES, .KogasRoomDoors
@@ -35,7 +35,7 @@
 	changeblock 4, 14, $2a ; wall
 	reloadmappart
 	closetext
-	setscene SCENE_FINISHED
+	setscene SCENE_KOGASROOM_NOOP
 	setevent EVENT_KOGAS_ROOM_ENTRANCE_CLOSED
 	waitsfx
 	end
--- a/maps/LancesRoom.asm
+++ b/maps/LancesRoom.asm
@@ -5,8 +5,8 @@
 
 LancesRoom_MapScripts:
 	def_scene_scripts
-	scene_script .LockDoor ; SCENE_DEFAULT
-	scene_script .DummyScene ; SCENE_LANCESROOM_APPROACH_LANCE
+	scene_script .LockDoor,   SCENE_LANCESROOM_LOCK_DOOR
+	scene_script .DummyScene, SCENE_LANCESROOM_APPROACH_LANCE
 
 	def_callbacks
 	callback MAPCALLBACK_TILES, .LancesRoomDoors
--- a/maps/LavenderNameRater.asm
+++ b/maps/LavenderNameRater.asm
@@ -3,7 +3,7 @@
 
 LavenderNameRater_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene
+	scene_script .DummyScene ; unusable
 
 	def_callbacks
 
--- a/maps/MahoganyMart1F.asm
+++ b/maps/MahoganyMart1F.asm
@@ -7,8 +7,8 @@
 
 MahoganyMart1F_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_MAHOGANYMART1F_NOTHING
-	scene_script .LanceUncoversStaircase ; SCENE_MAHOGANYMART1F_LANCE_UNCOVERS_STAIRS
+	scene_script .DummyScene0,            SCENE_MAHOGANYMART1F_NOOP
+	scene_script .LanceUncoversStaircase, SCENE_MAHOGANYMART1F_LANCE_UNCOVERS_STAIRS
 
 	def_callbacks
 	callback MAPCALLBACK_TILES, .MahoganyMart1FStaircase
@@ -99,7 +99,7 @@
 	applymovement MAHOGANYMART1F_LANCE, MahoganyMart1FLanceGoDownStairsMovement
 	playsound SFX_EXIT_BUILDING
 	disappear MAHOGANYMART1F_LANCE
-	setscene SCENE_MAHOGANYMART1F_NOTHING
+	setscene SCENE_MAHOGANYMART1F_NOOP
 	waitsfx
 	end
 
--- a/maps/MahoganyTown.asm
+++ b/maps/MahoganyTown.asm
@@ -8,8 +8,8 @@
 
 MahoganyTown_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_DEFAULT
-	scene_script .DummyScene1 ; SCENE_FINISHED
+	scene_script .DummyScene0, SCENE_MAHOGANYTOWN_TRY_RAGECANDYBAR
+	scene_script .DummyScene1, SCENE_MAHOGANYTOWN_NOOP
 
 	def_callbacks
 	callback MAPCALLBACK_NEWMAP, .FlyPoint
@@ -255,8 +255,8 @@
 	warp_event  9,  1, ROUTE_43_MAHOGANY_GATE, 3
 
 	def_coord_events
-	coord_event 19,  8, SCENE_DEFAULT, MahoganyTownTryARageCandyBarScript
-	coord_event 19,  9, SCENE_DEFAULT, MahoganyTownTryARageCandyBarScript
+	coord_event 19,  8, SCENE_MAHOGANYTOWN_TRY_RAGECANDYBAR, MahoganyTownTryARageCandyBarScript
+	coord_event 19,  9, SCENE_MAHOGANYTOWN_TRY_RAGECANDYBAR, MahoganyTownTryARageCandyBarScript
 
 	def_bg_events
 	bg_event  1,  5, BGEVENT_READ, MahoganyTownSign
--- a/maps/MobileBattleRoom.asm
+++ b/maps/MobileBattleRoom.asm
@@ -1,7 +1,7 @@
 MobileBattleRoom_MapScripts:
 	def_scene_scripts
-	scene_script .InitializeMobileBattleRoom ; SCENE_DEFAULT
-	scene_script .DummyScene ; SCENE_FINISHED
+	scene_script .InitializeMobileBattleRoom, SCENE_MOBILEBATTLEROOM_INITIALIZE
+	scene_script .DummyScene,                 SCENE_MOBILEBATTLEROOM_NOOP
 
 	def_callbacks
 
@@ -13,7 +13,7 @@
 	end
 
 .InitializeAndPreparePokecenter2F:
-	setscene SCENE_FINISHED
+	setscene SCENE_MOBILEBATTLEROOM_NOOP
 	setmapscene POKECENTER_2F, SCENE_POKECENTER2F_LEAVE_MOBILE_BATTLE_ROOM
 	end
 
--- a/maps/MobileTradeRoom.asm
+++ b/maps/MobileTradeRoom.asm
@@ -1,7 +1,7 @@
 MobileTradeRoom_MapScripts:
 	def_scene_scripts
-	scene_script .InitializeMobileTradeRoom ; SCENE_DEFAULT
-	scene_script .DummyScene ; SCENE_FINISHED
+	scene_script .InitializeMobileTradeRoom, SCENE_MOBILETRADEROOM_INITIALIZE
+	scene_script .DummyScene,                SCENE_MOBILETRADEROOM_NOOP
 
 	def_callbacks
 
@@ -13,7 +13,7 @@
 	end
 
 .InitializeAndPreparePokecenter2F:
-	setscene SCENE_FINISHED
+	setscene SCENE_MOBILETRADEROOM_NOOP
 	setmapscene POKECENTER_2F, SCENE_POKECENTER2F_LEAVE_MOBILE_TRADE_ROOM
 	end
 
--- a/maps/MountMoon.asm
+++ b/maps/MountMoon.asm
@@ -3,8 +3,8 @@
 
 MountMoon_MapScripts:
 	def_scene_scripts
-	scene_script .RivalEncounter ; SCENE_DEFAULT
-	scene_script .DummyScene ; SCENE_FINISHED
+	scene_script .RivalEncounter, SCENE_MOUNTMOON_RIVAL_BATTLE
+	scene_script .DummyScene,     SCENE_MOUNTMOON_NOOP
 
 	def_callbacks
 
@@ -64,7 +64,7 @@
 	closetext
 	applymovement MOUNTMOON_SILVER, MountMoonSilverMovementAfter
 	disappear MOUNTMOON_SILVER
-	setscene SCENE_FINISHED
+	setscene SCENE_MOUNTMOON_NOOP
 	setevent EVENT_BEAT_RIVAL_IN_MT_MOON
 	playmapmusic
 	end
--- a/maps/MountMoonSquare.asm
+++ b/maps/MountMoonSquare.asm
@@ -5,7 +5,7 @@
 
 MountMoonSquare_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene ; SCENE_DEFAULT
+	scene_script .DummyScene, SCENE_MOUNTMOONSQUARE_CLEFAIRY_DANCE
 
 	def_callbacks
 	callback MAPCALLBACK_NEWMAP, .DisappearMoonStone
@@ -139,7 +139,7 @@
 	warp_event 13,  7, MOUNT_MOON_GIFT_SHOP, 1
 
 	def_coord_events
-	coord_event  7, 11, SCENE_DEFAULT, ClefairyDance
+	coord_event  7, 11, SCENE_MOUNTMOONSQUARE_CLEFAIRY_DANCE, ClefairyDance
 
 	def_bg_events
 	bg_event  7,  7, BGEVENT_ITEM, MountMoonSquareHiddenMoonStone
--- a/maps/MrPokemonsHouse.asm
+++ b/maps/MrPokemonsHouse.asm
@@ -4,8 +4,8 @@
 
 MrPokemonsHouse_MapScripts:
 	def_scene_scripts
-	scene_script .MeetMrPokemon ; SCENE_DEFAULT
-	scene_script .DummyScene ; SCENE_FINISHED
+	scene_script .MeetMrPokemon, SCENE_MRPOKEMONSHOUSE_MEET_MR_POKEMON
+	scene_script .DummyScene,    SCENE_MRPOKEMONSHOUSE_NOOP
 
 	def_callbacks
 
@@ -123,7 +123,7 @@
 	setevent EVENT_RIVAL_NEW_BARK_TOWN
 	setevent EVENT_PLAYERS_HOUSE_1F_NEIGHBOR
 	clearevent EVENT_PLAYERS_NEIGHBORS_HOUSE_NEIGHBOR
-	setscene SCENE_FINISHED
+	setscene SCENE_MRPOKEMONSHOUSE_NOOP
 	setmapscene CHERRYGROVE_CITY, SCENE_CHERRYGROVECITY_MEET_RIVAL
 	setmapscene ELMS_LAB, SCENE_ELMSLAB_MEET_OFFICER
 	specialphonecall SPECIALCALL_ROBBED
--- a/maps/NewBarkTown.asm
+++ b/maps/NewBarkTown.asm
@@ -5,8 +5,8 @@
 
 NewBarkTown_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_DEFAULT
-	scene_script .DummyScene1 ; SCENE_FINISHED
+	scene_script .DummyScene0, SCENE_NEWBARKTOWN_TEACHER_STOPS_YOU
+	scene_script .DummyScene1, SCENE_NEWBARKTOWN_NOOP
 
 	def_callbacks
 	callback MAPCALLBACK_NEWMAP, .FlyPoint
@@ -289,8 +289,8 @@
 	warp_event 11, 13, ELMS_HOUSE, 1
 
 	def_coord_events
-	coord_event  1,  8, SCENE_DEFAULT, NewBarkTown_TeacherStopsYouScene1
-	coord_event  1,  9, SCENE_DEFAULT, NewBarkTown_TeacherStopsYouScene2
+	coord_event  1,  8, SCENE_NEWBARKTOWN_TEACHER_STOPS_YOU, NewBarkTown_TeacherStopsYouScene1
+	coord_event  1,  9, SCENE_NEWBARKTOWN_TEACHER_STOPS_YOU, NewBarkTown_TeacherStopsYouScene2
 
 	def_bg_events
 	bg_event  8,  8, BGEVENT_READ, NewBarkTownSign
--- a/maps/OlivineCity.asm
+++ b/maps/OlivineCity.asm
@@ -6,8 +6,8 @@
 
 OlivineCity_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_DEFAULT
-	scene_script .DummyScene1 ; SCENE_FINISHED
+	scene_script .DummyScene0, SCENE_OLIVINECITY_RIVAL_ENCOUNTER
+	scene_script .DummyScene1, SCENE_OLIVINECITY_NOOP
 
 	def_callbacks
 	callback MAPCALLBACK_NEWMAP, .FlyPoint
@@ -39,7 +39,7 @@
 	applymovement PLAYER, OlivineCityPlayerStepsAsideTopMovement
 	turnobject PLAYER, RIGHT
 	applymovement OLIVINECITY_OLIVINE_RIVAL, OlivineCityRivalLeavesTopMovement
-	setscene SCENE_FINISHED
+	setscene SCENE_OLIVINECITY_NOOP
 	disappear OLIVINECITY_OLIVINE_RIVAL
 	special RestartMapMusic
 	variablesprite SPRITE_OLIVINE_RIVAL, SPRITE_SWIMMER_GUY
@@ -64,7 +64,7 @@
 	turnobject PLAYER, RIGHT
 	applymovement OLIVINECITY_OLIVINE_RIVAL, OlivineCityRivalLeavesBottomMovement
 	disappear OLIVINECITY_OLIVINE_RIVAL
-	setscene SCENE_FINISHED
+	setscene SCENE_OLIVINECITY_NOOP
 	special RestartMapMusic
 	variablesprite SPRITE_OLIVINE_RIVAL, SPRITE_SWIMMER_GUY
 	special LoadUsedSpritesGFX
@@ -303,8 +303,8 @@
 	warp_event 20, 27, OLIVINE_PORT_PASSAGE, 2
 
 	def_coord_events
-	coord_event 13, 12, SCENE_DEFAULT, OlivineCityRivalSceneTop
-	coord_event 13, 13, SCENE_DEFAULT, OlivineCityRivalSceneBottom
+	coord_event 13, 12, SCENE_OLIVINECITY_RIVAL_ENCOUNTER, OlivineCityRivalSceneTop
+	coord_event 13, 13, SCENE_OLIVINECITY_RIVAL_ENCOUNTER, OlivineCityRivalSceneBottom
 
 	def_bg_events
 	bg_event 17, 11, BGEVENT_READ, OlivineCitySign
--- a/maps/OlivinePort.asm
+++ b/maps/OlivinePort.asm
@@ -9,8 +9,8 @@
 
 OlivinePort_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_DEFAULT
-	scene_script .LeaveFastShip ; SCENE_OLIVINEPORT_LEAVE_SHIP
+	scene_script .DummyScene0,   SCENE_OLIVINEPORT_ASK_ENTER_SHIP
+	scene_script .LeaveFastShip, SCENE_OLIVINEPORT_LEAVE_SHIP
 
 	def_callbacks
 
@@ -24,7 +24,7 @@
 .LeaveFastShipScript:
 	applymovement PLAYER, OlivinePortLeaveFastShipMovement
 	appear OLIVINEPORT_SAILOR1
-	setscene SCENE_DEFAULT
+	setscene SCENE_OLIVINEPORT_ASK_ENTER_SHIP
 	setevent EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1
 	blackoutmod OLIVINE_CITY
 	end
@@ -390,7 +390,7 @@
 	warp_event  7, 23, FAST_SHIP_1F, 1
 
 	def_coord_events
-	coord_event  7, 15, SCENE_DEFAULT, OlivinePortWalkUpToShipScript
+	coord_event  7, 15, SCENE_OLIVINEPORT_ASK_ENTER_SHIP, OlivinePortWalkUpToShipScript
 
 	def_bg_events
 	bg_event  1, 22, BGEVENT_ITEM, OlivinePortHiddenProtein
--- a/maps/PlayersHouse1F.asm
+++ b/maps/PlayersHouse1F.asm
@@ -7,8 +7,8 @@
 
 PlayersHouse1F_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_DEFAULT
-	scene_script .DummyScene1 ; SCENE_FINISHED
+	scene_script .DummyScene0, SCENE_PLAYERSHOUSE1F_MEET_MOM
+	scene_script .DummyScene1, SCENE_PLAYERSHOUSE1F_NOOP
 
 	def_callbacks
 
@@ -41,7 +41,7 @@
 	setflag ENGINE_POKEGEAR
 	setflag ENGINE_PHONE_CARD
 	addcellnum PHONE_MOM
-	setscene SCENE_FINISHED
+	setscene SCENE_PLAYERSHOUSE1F_NOOP
 	setevent EVENT_PLAYERS_HOUSE_MOM_1
 	clearevent EVENT_PLAYERS_HOUSE_MOM_2
 	writetext MomGivesPokegearText
@@ -114,7 +114,7 @@
 	faceplayer
 	setevent EVENT_TEMPORARY_UNTIL_MAP_RELOAD_2
 	checkscene
-	iffalse MeetMomTalkedScript ; SCENE_DEFAULT
+	iffalse MeetMomTalkedScript ; SCENE_PLAYERSHOUSE1F_MEET_MOM
 	opentext
 	checkevent EVENT_FIRST_TIME_BANKING_WITH_MOM
 	iftrue .FirstTimeBanking
@@ -392,8 +392,8 @@
 	warp_event  9,  0, PLAYERS_HOUSE_2F, 1
 
 	def_coord_events
-	coord_event  8,  4, SCENE_DEFAULT, MeetMomLeftScript
-	coord_event  9,  4, SCENE_DEFAULT, MeetMomRightScript
+	coord_event  8,  4, SCENE_PLAYERSHOUSE1F_MEET_MOM, MeetMomLeftScript
+	coord_event  9,  4, SCENE_PLAYERSHOUSE1F_MEET_MOM, MeetMomRightScript
 
 	def_bg_events
 	bg_event  0,  1, BGEVENT_READ, PlayersHouse1FStoveScript
--- a/maps/Pokecenter2F.asm
+++ b/maps/Pokecenter2F.asm
@@ -6,12 +6,12 @@
 
 Pokecenter2F_MapScripts:
 	def_scene_scripts
-	scene_script .Scene0 ; SCENE_DEFAULT
-	scene_script .Scene1 ; SCENE_POKECENTER2F_LEAVE_TRADE_CENTER
-	scene_script .Scene2 ; SCENE_POKECENTER2F_LEAVE_COLOSSEUM
-	scene_script .Scene3 ; SCENE_POKECENTER2F_LEAVE_TIME_CAPSULE
-	scene_script .Scene4 ; SCENE_POKECENTER2F_LEAVE_MOBILE_TRADE_ROOM
-	scene_script .Scene5 ; SCENE_POKECENTER2F_LEAVE_MOBILE_BATTLE_ROOM
+	scene_script .Scene0, SCENE_POKECENTER2F_NOOP
+	scene_script .Scene1, SCENE_POKECENTER2F_LEAVE_TRADE_CENTER
+	scene_script .Scene2, SCENE_POKECENTER2F_LEAVE_COLOSSEUM
+	scene_script .Scene3, SCENE_POKECENTER2F_LEAVE_TIME_CAPSULE
+	scene_script .Scene4, SCENE_POKECENTER2F_LEAVE_MOBILE_TRADE_ROOM
+	scene_script .Scene5, SCENE_POKECENTER2F_LEAVE_MOBILE_BATTLE_ROOM
 
 	def_callbacks
 
@@ -374,15 +374,15 @@
 Script_LeftCableTradeCenter:
 	special WaitForOtherPlayerToExit
 	scall Script_WalkOutOfLinkTradeRoom
-	setscene SCENE_DEFAULT
-	setmapscene TRADE_CENTER, SCENE_DEFAULT
+	setscene SCENE_POKECENTER2F_NOOP
+	setmapscene TRADE_CENTER, SCENE_TRADECENTER_INITIALIZE
 	end
 
 Script_LeftMobileTradeRoom:
 	special Function101220
 	scall Script_WalkOutOfMobileTradeRoom
-	setscene SCENE_DEFAULT
-	setmapscene MOBILE_TRADE_ROOM, SCENE_DEFAULT
+	setscene SCENE_POKECENTER2F_NOOP
+	setmapscene MOBILE_TRADE_ROOM, SCENE_MOBILETRADEROOM_INITIALIZE
 	end
 
 Script_WalkOutOfMobileTradeRoom:
@@ -394,15 +394,15 @@
 Script_LeftCableColosseum:
 	special WaitForOtherPlayerToExit
 	scall Script_WalkOutOfLinkBattleRoom
-	setscene SCENE_DEFAULT
-	setmapscene COLOSSEUM, SCENE_DEFAULT
+	setscene SCENE_POKECENTER2F_NOOP
+	setmapscene COLOSSEUM, SCENE_COLOSSEUM_INITIALIZE
 	end
 
 Script_LeftMobileBattleRoom:
 	special Function101220
 	scall Script_WalkOutOfMobileBattleRoom
-	setscene SCENE_DEFAULT
-	setmapscene MOBILE_BATTLE_ROOM, SCENE_DEFAULT
+	setscene SCENE_POKECENTER2F_NOOP
+	setmapscene MOBILE_BATTLE_ROOM, SCENE_MOBILEBATTLEROOM_INITIALIZE
 	end
 
 Script_WalkOutOfMobileBattleRoom:
@@ -577,8 +577,8 @@
 	applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesOneStepDown
 	applymovement POKECENTER2F_TIME_CAPSULE_RECEPTIONIST, Pokecenter2FMovementData_ReceptionistStepsRightLooksDown_2
 .Done:
-	setscene SCENE_DEFAULT
-	setmapscene TIME_CAPSULE, SCENE_DEFAULT
+	setscene SCENE_POKECENTER2F_NOOP
+	setmapscene TIME_CAPSULE, SCENE_TIMECAPSULE_INITIALIZE
 	end
 
 Pokecenter2FLinkRecordSign:
--- a/maps/PowerPlant.asm
+++ b/maps/PowerPlant.asm
@@ -9,8 +9,8 @@
 
 PowerPlant_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_POWERPLANT_NOTHING
-	scene_script .DummyScene1 ; SCENE_POWERPLANT_GUARD_GETS_PHONE_CALL
+	scene_script .DummyScene0, SCENE_POWERPLANT_NOOP
+	scene_script .DummyScene1, SCENE_POWERPLANT_GUARD_GETS_PHONE_CALL
 
 	def_callbacks
 
@@ -40,7 +40,7 @@
 	closetext
 	turnobject PLAYER, DOWN
 	applymovement POWERPLANT_OFFICER1, PowerPlantOfficer1ReturnToPostMovement
-	setscene SCENE_POWERPLANT_NOTHING
+	setscene SCENE_POWERPLANT_NOOP
 	end
 
 PowerPlantOfficerScript:
--- a/maps/RadioTower5F.asm
+++ b/maps/RadioTower5F.asm
@@ -7,9 +7,9 @@
 
 RadioTower5F_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_DEFAULT
-	scene_script .DummyScene1 ; SCENE_RADIOTOWER5F_ROCKET_BOSS
-	scene_script .DummyScene2 ; SCENE_RADIOTOWER5F_NOTHING
+	scene_script .DummyScene0, SCENE_RADIOTOWER5F_FAKE_DIRECTOR
+	scene_script .DummyScene1, SCENE_RADIOTOWER5F_ROCKET_BOSS
+	scene_script .DummyScene2, SCENE_RADIOTOWER5F_NOOP
 
 	def_callbacks
 
@@ -124,8 +124,8 @@
 	writetext RadioTower5FDirectorDescribeClearBellText
 	waitbutton
 	closetext
-	setscene SCENE_RADIOTOWER5F_NOTHING
-	setmapscene ECRUTEAK_TIN_TOWER_ENTRANCE, SCENE_DEFAULT
+	setscene SCENE_RADIOTOWER5F_NOOP
+	setmapscene ECRUTEAK_TIN_TOWER_ENTRANCE, SCENE_ECRUTEAKTINTOWERENTRANCE_SAGE_BLOCKS
 	setevent EVENT_GOT_CLEAR_BELL
 	setevent EVENT_TEAM_ROCKET_DISBANDED
 	sjump .UselessJump
@@ -426,7 +426,7 @@
 	warp_event 12,  0, RADIO_TOWER_4F, 3
 
 	def_coord_events
-	coord_event  0,  3, SCENE_DEFAULT, FakeDirectorScript
+	coord_event  0,  3, SCENE_RADIOTOWER5F_FAKE_DIRECTOR, FakeDirectorScript
 	coord_event 16,  5, SCENE_RADIOTOWER5F_ROCKET_BOSS, RadioTower5FRocketBossScene
 
 	def_bg_events
--- a/maps/RedsHouse1F.asm
+++ b/maps/RedsHouse1F.asm
@@ -3,7 +3,7 @@
 
 RedsHouse1F_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene
+	scene_script .DummyScene ; unusable
 
 	def_callbacks
 
--- a/maps/Route16Gate.asm
+++ b/maps/Route16Gate.asm
@@ -3,7 +3,7 @@
 
 Route16Gate_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene ; SCENE_DEFAULT
+	scene_script .DummyScene, SCENE_ROUTE16GATE_BICYCLE_CHECK
 
 	def_callbacks
 
@@ -68,8 +68,8 @@
 	warp_event  9,  5, ROUTE_16, 3
 
 	def_coord_events
-	coord_event  5,  4, SCENE_DEFAULT, Route16GateBicycleCheck
-	coord_event  5,  5, SCENE_DEFAULT, Route16GateBicycleCheck
+	coord_event  5,  4, SCENE_ROUTE16GATE_BICYCLE_CHECK, Route16GateBicycleCheck
+	coord_event  5,  5, SCENE_ROUTE16GATE_BICYCLE_CHECK, Route16GateBicycleCheck
 
 	def_bg_events
 
--- a/maps/Route17Route18Gate.asm
+++ b/maps/Route17Route18Gate.asm
@@ -3,7 +3,7 @@
 
 Route17Route18Gate_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene ; SCENE_DEFAULT
+	scene_script .DummyScene, SCENE_ROUTE17ROUTE18GATE_BICYCLE_CHECK
 
 	def_callbacks
 
@@ -59,8 +59,8 @@
 	warp_event  9,  5, ROUTE_18, 2
 
 	def_coord_events
-	coord_event  5,  4, SCENE_DEFAULT, Route17Route18GateBicycleCheck
-	coord_event  5,  5, SCENE_DEFAULT, Route17Route18GateBicycleCheck
+	coord_event  5,  4, SCENE_ROUTE17ROUTE18GATE_BICYCLE_CHECK, Route17Route18GateBicycleCheck
+	coord_event  5,  5, SCENE_ROUTE17ROUTE18GATE_BICYCLE_CHECK, Route17Route18GateBicycleCheck
 
 	def_bg_events
 
--- a/maps/Route25.asm
+++ b/maps/Route25.asm
@@ -13,8 +13,8 @@
 
 Route25_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_ROUTE25_NOTHING
-	scene_script .DummyScene1 ; SCENE_ROUTE25_MISTYS_DATE
+	scene_script .DummyScene0, SCENE_ROUTE25_NOOP
+	scene_script .DummyScene1, SCENE_ROUTE25_MISTYS_DATE
 
 	def_callbacks
 
@@ -46,7 +46,7 @@
 	applymovement ROUTE25_MISTY, Route25MistyLeavesMovement
 	disappear ROUTE25_MISTY
 	clearevent EVENT_TRAINERS_IN_CERULEAN_GYM
-	setscene SCENE_ROUTE25_NOTHING
+	setscene SCENE_ROUTE25_NOOP
 	special RestartMapMusic
 	end
 
@@ -72,7 +72,7 @@
 	applymovement ROUTE25_MISTY, Route25MistyLeavesMovement
 	disappear ROUTE25_MISTY
 	clearevent EVENT_TRAINERS_IN_CERULEAN_GYM
-	setscene SCENE_ROUTE25_NOTHING
+	setscene SCENE_ROUTE25_NOOP
 	special RestartMapMusic
 	end
 
--- a/maps/Route27.asm
+++ b/maps/Route27.asm
@@ -11,8 +11,8 @@
 
 Route27_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_DEFAULT
-	scene_script .DummyScene1 ; SCENE_FINISHED
+	scene_script .DummyScene0, SCENE_ROUTE27_FIRST_STEP_INTO_KANTO
+	scene_script .DummyScene1, SCENE_ROUTE27_NOOP
 
 	def_callbacks
 
@@ -40,7 +40,7 @@
 	writetext Route27FisherText
 	waitbutton
 	closetext
-	setscene SCENE_FINISHED
+	setscene SCENE_ROUTE27_NOOP
 	end
 
 Route27FisherScript:
@@ -474,8 +474,8 @@
 	warp_event 36,  5, TOHJO_FALLS, 2
 
 	def_coord_events
-	coord_event 18, 10, SCENE_DEFAULT, FirstStepIntoKantoLeftScene
-	coord_event 19, 10, SCENE_DEFAULT, FirstStepIntoKantoRightScene
+	coord_event 18, 10, SCENE_ROUTE27_FIRST_STEP_INTO_KANTO, FirstStepIntoKantoLeftScene
+	coord_event 19, 10, SCENE_ROUTE27_FIRST_STEP_INTO_KANTO, FirstStepIntoKantoRightScene
 
 	def_bg_events
 	bg_event 25,  7, BGEVENT_READ, TohjoFallsSign
--- a/maps/Route28SteelWingHouse.asm
+++ b/maps/Route28SteelWingHouse.asm
@@ -4,7 +4,7 @@
 
 Route28SteelWingHouse_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene
+	scene_script .DummyScene ; unusable
 
 	def_callbacks
 
--- a/maps/Route29.asm
+++ b/maps/Route29.asm
@@ -10,8 +10,8 @@
 
 Route29_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_ROUTE29_NOTHING
-	scene_script .DummyScene1 ; SCENE_ROUTE29_CATCH_TUTORIAL
+	scene_script .DummyScene0, SCENE_ROUTE29_NOOP
+	scene_script .DummyScene1, SCENE_ROUTE29_CATCH_TUTORIAL
 
 	def_callbacks
 	callback MAPCALLBACK_OBJECTS, .Tuscany
@@ -57,7 +57,7 @@
 	writetext CatchingTutorialDebriefText
 	waitbutton
 	closetext
-	setscene SCENE_ROUTE29_NOTHING
+	setscene SCENE_ROUTE29_NOOP
 	setevent EVENT_LEARNED_TO_CATCH_POKEMON
 	end
 
@@ -82,7 +82,7 @@
 	writetext CatchingTutorialDebriefText
 	waitbutton
 	closetext
-	setscene SCENE_ROUTE29_NOTHING
+	setscene SCENE_ROUTE29_NOOP
 	setevent EVENT_LEARNED_TO_CATCH_POKEMON
 	end
 
@@ -91,7 +91,7 @@
 	waitbutton
 	closetext
 	applymovement ROUTE29_COOLTRAINER_M1, DudeMovementData1b
-	setscene SCENE_ROUTE29_NOTHING
+	setscene SCENE_ROUTE29_NOOP
 	end
 
 Script_RefusedTutorial2:
@@ -99,7 +99,7 @@
 	waitbutton
 	closetext
 	applymovement ROUTE29_COOLTRAINER_M1, DudeMovementData2b
-	setscene SCENE_ROUTE29_NOTHING
+	setscene SCENE_ROUTE29_NOOP
 	end
 
 CatchingTutorialDudeScript:
--- a/maps/Route32.asm
+++ b/maps/Route32.asm
@@ -16,9 +16,9 @@
 
 Route32_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_DEFAULT
-	scene_script .DummyScene1 ; SCENE_ROUTE32_OFFER_SLOWPOKETAIL
-	scene_script .DummyScene2 ; SCENE_ROUTE32_NOTHING
+	scene_script .DummyScene0, SCENE_ROUTE32_COOLTRAINER_M_BLOCKS
+	scene_script .DummyScene1, SCENE_ROUTE32_OFFER_SLOWPOKETAIL
+	scene_script .DummyScene2, SCENE_ROUTE32_NOOP
 
 	def_callbacks
 	callback MAPCALLBACK_OBJECTS, .Frieda
@@ -125,7 +125,7 @@
 SlowpokeTailSalesmanScript:
 	faceplayer
 _OfferToSellSlowpokeTail:
-	setscene SCENE_ROUTE32_NOTHING
+	setscene SCENE_ROUTE32_NOOP
 	opentext
 	writetext Text_MillionDollarSlowpokeTail
 	yesorno
@@ -930,7 +930,7 @@
 	warp_event  6, 79, UNION_CAVE_1F, 4
 
 	def_coord_events
-	coord_event 18,  8, SCENE_DEFAULT, Route32CooltrainerMStopsYouScene
+	coord_event 18,  8, SCENE_ROUTE32_COOLTRAINER_M_BLOCKS, Route32CooltrainerMStopsYouScene
 	coord_event  7, 71, SCENE_ROUTE32_OFFER_SLOWPOKETAIL, Route32WannaBuyASlowpokeTailScript
 
 	def_bg_events
--- a/maps/Route34IlexForestGate.asm
+++ b/maps/Route34IlexForestGate.asm
@@ -6,6 +6,7 @@
 
 Route34IlexForestGate_MapScripts:
 	def_scene_scripts
+	scene_const SCENE_ROUTE34ILEXFORESTGATE_TEACHER_BLOCKS_IF_FOREST_IS_RESTLESS
 
 	def_callbacks
 	callback MAPCALLBACK_OBJECTS, .IsForestRestless
@@ -143,7 +144,7 @@
 	warp_event  5,  7, ILEX_FOREST, 1
 
 	def_coord_events
-	coord_event  4,  7, SCENE_DEFAULT, Route34IlexForestGateCelebiEvent
+	coord_event  4,  7, SCENE_ROUTE34ILEXFORESTGATE_TEACHER_BLOCKS_IF_FOREST_IS_RESTLESS, Route34IlexForestGateCelebiEvent
 
 	def_bg_events
 
--- a/maps/Route35NationalParkGate.asm
+++ b/maps/Route35NationalParkGate.asm
@@ -5,9 +5,9 @@
 
 Route35NationalParkGate_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_ROUTE35NATIONALPARKGATE_NOTHING
-	scene_script .DummyScene1 ; SCENE_ROUTE35NATIONALPARKGATE_UNUSED
-	scene_script .LeaveContestEarly ; SCENE_ROUTE35NATIONALPARKGATE_LEAVE_CONTEST_EARLY
+	scene_script .DummyScene0,       SCENE_ROUTE35NATIONALPARKGATE_NOOP
+	scene_script .DummyScene1,       SCENE_ROUTE35NATIONALPARKGATE_UNUSED
+	scene_script .LeaveContestEarly, SCENE_ROUTE35NATIONALPARKGATE_LEAVE_CONTEST_EARLY
 
 	def_callbacks
 	callback MAPCALLBACK_NEWMAP, .CheckIfContestRunning
@@ -26,7 +26,7 @@
 .CheckIfContestRunning:
 	checkflag ENGINE_BUG_CONTEST_TIMER
 	iftrue .BugContestIsRunning
-	setscene SCENE_ROUTE35NATIONALPARKGATE_NOTHING
+	setscene SCENE_ROUTE35NATIONALPARKGATE_NOOP
 	endcallback
 
 .BugContestIsRunning:
--- a/maps/Route36.asm
+++ b/maps/Route36.asm
@@ -11,8 +11,8 @@
 
 Route36_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_ROUTE36_NOTHING
-	scene_script .DummyScene1 ; SCENE_ROUTE36_SUICUNE
+	scene_script .DummyScene0, SCENE_ROUTE36_NOOP
+	scene_script .DummyScene1, SCENE_ROUTE36_SUICUNE
 
 	def_callbacks
 	callback MAPCALLBACK_OBJECTS, .ArthurCallback
@@ -42,7 +42,7 @@
 	disappear ROUTE36_SUICUNE
 	turnobject PLAYER, DOWN
 	pause 10
-	setscene SCENE_ROUTE36_NOTHING
+	setscene SCENE_ROUTE36_NOOP
 	clearevent EVENT_SAW_SUICUNE_AT_CIANWOOD_CITY
 	setmapscene CIANWOOD_CITY, SCENE_CIANWOODCITY_SUICUNE_AND_EUSINE
 	end
--- a/maps/Route36NationalParkGate.asm
+++ b/maps/Route36NationalParkGate.asm
@@ -14,9 +14,9 @@
 
 Route36NationalParkGate_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_ROUTE36NATIONALPARKGATE_NOTHING
-	scene_script .DummyScene1 ; SCENE_ROUTE36NATIONALPARKGATE_UNUSED
-	scene_script .LeaveContestEarly ; SCENE_ROUTE36NATIONALPARKGATE_LEAVE_CONTEST_EARLY
+	scene_script .DummyScene0,       SCENE_ROUTE36NATIONALPARKGATE_NOOP
+	scene_script .DummyScene1,       SCENE_ROUTE36NATIONALPARKGATE_UNUSED
+	scene_script .LeaveContestEarly, SCENE_ROUTE36NATIONALPARKGATE_LEAVE_CONTEST_EARLY
 
 	def_callbacks
 	callback MAPCALLBACK_NEWMAP, .CheckIfContestRunning
@@ -35,7 +35,7 @@
 .CheckIfContestRunning:
 	checkflag ENGINE_BUG_CONTEST_TIMER
 	iftrue .BugContestIsRunning
-	setscene SCENE_ROUTE36NATIONALPARKGATE_NOTHING
+	setscene SCENE_ROUTE36NATIONALPARKGATE_NOOP
 	endcallback
 
 .BugContestIsRunning:
--- a/maps/Route42.asm
+++ b/maps/Route42.asm
@@ -11,8 +11,8 @@
 
 Route42_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_ROUTE42_NOTHING
-	scene_script .DummyScene1 ; SCENE_ROUTE42_SUICUNE
+	scene_script .DummyScene0, SCENE_ROUTE42_NOOP
+	scene_script .DummyScene1, SCENE_ROUTE42_SUICUNE
 
 	def_callbacks
 
@@ -29,7 +29,7 @@
 	applymovement ROUTE42_SUICUNE, Route42SuicuneMovement
 	disappear ROUTE42_SUICUNE
 	pause 10
-	setscene SCENE_ROUTE42_NOTHING
+	setscene SCENE_ROUTE42_NOOP
 	clearevent EVENT_SAW_SUICUNE_ON_ROUTE_36
 	setmapscene ROUTE_36, SCENE_ROUTE36_SUICUNE
 	end
--- a/maps/Route43.asm
+++ b/maps/Route43.asm
@@ -17,11 +17,11 @@
 .CheckIfRockets:
 	checkevent EVENT_CLEARED_ROCKET_HIDEOUT
 	iftrue .NoRockets
-	setmapscene ROUTE_43_GATE, SCENE_DEFAULT
+	setmapscene ROUTE_43_GATE, SCENE_ROUTE43GATE_ROCKET_SHAKEDOWN
 	endcallback
 
 .NoRockets:
-	setmapscene ROUTE_43_GATE, SCENE_FINISHED
+	setmapscene ROUTE_43_GATE, SCENE_ROUTE43GATE_NOOP
 	endcallback
 
 TrainerCamperSpencer:
--- a/maps/Route43Gate.asm
+++ b/maps/Route43Gate.asm
@@ -7,8 +7,8 @@
 
 Route43Gate_MapScripts:
 	def_scene_scripts
-	scene_script .RocketShakedown ; SCENE_DEFAULT
-	scene_script .DummyScene ; SCENE_FINISHED
+	scene_script .RocketShakedown, SCENE_ROUTE43GATE_ROCKET_SHAKEDOWN
+	scene_script .DummyScene,      SCENE_ROUTE43GATE_NOOP
 
 	def_callbacks
 	callback MAPCALLBACK_NEWMAP, .CheckIfRockets
@@ -35,7 +35,7 @@
 	readvar VAR_FACING
 	ifequal DOWN, RocketScript_Southbound
 	ifequal UP, RocketScript_Northbound
-	setscene SCENE_FINISHED
+	setscene SCENE_ROUTE43GATE_NOOP
 	end
 
 RocketScript_Southbound:
@@ -67,7 +67,7 @@
 	closetext
 	applymovement ROUTE43GATE_ROCKET1, Rocket1Script_LetsYouPassSouth
 	applymovement ROUTE43GATE_ROCKET2, Rocket2Script_LetsYouPassSouth
-	setscene SCENE_FINISHED
+	setscene SCENE_ROUTE43GATE_NOOP
 	special RestartMapMusic
 	end
 
@@ -99,7 +99,7 @@
 	closetext
 	applymovement ROUTE43GATE_ROCKET2, Rocket2Script_LetsYouPassNorth
 	applymovement ROUTE43GATE_ROCKET1, Rocket1Script_LetsYouPassNorth
-	setscene SCENE_FINISHED
+	setscene SCENE_ROUTE43GATE_NOOP
 	special RestartMapMusic
 	end
 
--- a/maps/Route6SaffronGate.asm
+++ b/maps/Route6SaffronGate.asm
@@ -3,7 +3,7 @@
 
 Route6SaffronGate_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene
+	scene_script .DummyScene ; unusable
 
 	def_callbacks
 
--- a/maps/RuinsOfAlphAerodactylChamber.asm
+++ b/maps/RuinsOfAlphAerodactylChamber.asm
@@ -1,7 +1,7 @@
 RuinsOfAlphAerodactylChamber_MapScripts:
 	def_scene_scripts
-	scene_script .CheckWall ; SCENE_DEFAULT
-	scene_script .DummyScene ; SCENE_FINISHED
+	scene_script .CheckWall,  SCENE_RUINSOFALPHAERODACTYLCHAMBER_CHECK_WALL
+	scene_script .DummyScene, SCENE_RUINSOFALPHAERODACTYLCHAMBER_NOOP
 
 	def_callbacks
 	callback MAPCALLBACK_TILES, .HiddenDoors
@@ -41,7 +41,7 @@
 	changeblock 4, 0, $30 ; open wall
 	reloadmappart
 	earthquake 50
-	setscene SCENE_FINISHED
+	setscene SCENE_RUINSOFALPHAERODACTYLCHAMBER_NOOP
 	closetext
 	end
 
--- a/maps/RuinsOfAlphHoOhChamber.asm
+++ b/maps/RuinsOfAlphHoOhChamber.asm
@@ -1,7 +1,7 @@
 RuinsOfAlphHoOhChamber_MapScripts:
 	def_scene_scripts
-	scene_script .CheckWall ; SCENE_DEFAULT
-	scene_script .DummyScene ; SCENE_FINISHED
+	scene_script .CheckWall,  SCENE_RUINSOFALPHHOOHCHAMBER_CHECK_WALL
+	scene_script .DummyScene, SCENE_RUINSOFALPHHOOHCHAMBER_NOOP
 
 	def_callbacks
 	callback MAPCALLBACK_TILES, .HiddenDoors
@@ -42,7 +42,7 @@
 	changeblock 4, 0, $30 ; open wall
 	reloadmappart
 	earthquake 50
-	setscene SCENE_FINISHED
+	setscene SCENE_RUINSOFALPHHOOHCHAMBER_NOOP
 	closetext
 	end
 
--- a/maps/RuinsOfAlphInnerChamber.asm
+++ b/maps/RuinsOfAlphInnerChamber.asm
@@ -5,8 +5,8 @@
 
 RuinsOfAlphInnerChamber_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_RUINSOFALPHINNERCHAMBER_NOTHING
-	scene_script .UnownAppear ; SCENE_RUINSOFALPHINNERCHAMBER_STRANGE_PRESENCE
+	scene_script .DummyScene0, SCENE_RUINSOFALPHINNERCHAMBER_NOOP
+	scene_script .UnownAppear, SCENE_RUINSOFALPHINNERCHAMBER_STRANGE_PRESENCE
 
 	def_callbacks
 
@@ -22,7 +22,7 @@
 	writetext RuinsOfAlphStrangePresenceText
 	waitbutton
 	closetext
-	setscene SCENE_RUINSOFALPHINNERCHAMBER_NOTHING
+	setscene SCENE_RUINSOFALPHINNERCHAMBER_NOOP
 	setevent EVENT_MADE_UNOWN_APPEAR_IN_RUINS
 	clearevent EVENT_RUINS_OF_ALPH_OUTSIDE_TOURIST_FISHER
 	end
--- a/maps/RuinsOfAlphKabutoChamber.asm
+++ b/maps/RuinsOfAlphKabutoChamber.asm
@@ -4,8 +4,8 @@
 
 RuinsOfAlphKabutoChamber_MapScripts:
 	def_scene_scripts
-	scene_script .CheckWall ; SCENE_DEFAULT
-	scene_script .DummyScene ; SCENE_FINISHED
+	scene_script .CheckWall,  SCENE_RUINSOFALPHKABUTOCHAMBER_CHECK_WALL
+	scene_script .DummyScene, SCENE_RUINSOFALPHKABUTOCHAMBER_NOOP
 
 	def_callbacks
 	callback MAPCALLBACK_TILES, .HiddenDoors
@@ -45,7 +45,7 @@
 	changeblock 4, 0, $30 ; open wall
 	reloadmappart
 	earthquake 50
-	setscene SCENE_FINISHED
+	setscene SCENE_RUINSOFALPHKABUTOCHAMBER_NOOP
 	closetext
 	end
 
--- a/maps/RuinsOfAlphOmanyteChamber.asm
+++ b/maps/RuinsOfAlphOmanyteChamber.asm
@@ -1,7 +1,7 @@
 RuinsOfAlphOmanyteChamber_MapScripts:
 	def_scene_scripts
-	scene_script .CheckWall ; SCENE_DEFAULT
-	scene_script .DummyScene ; SCENE_FINISHED
+	scene_script .CheckWall,  SCENE_RUINSOFALPHOMANYTECHAMBER_CHECK_WALL
+	scene_script .DummyScene, SCENE_RUINSOFALPHOMANYTECHAMBER_NOOP
 
 	def_callbacks
 	callback MAPCALLBACK_TILES, .HiddenDoors
@@ -42,7 +42,7 @@
 	changeblock 4, 0, $30 ; open wall
 	reloadmappart
 	earthquake 50
-	setscene SCENE_FINISHED
+	setscene SCENE_RUINSOFALPHOMANYTECHAMBER_NOOP
 	closetext
 	end
 
--- a/maps/RuinsOfAlphOutside.asm
+++ b/maps/RuinsOfAlphOutside.asm
@@ -7,8 +7,8 @@
 
 RuinsOfAlphOutside_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_RUINSOFALPHOUTSIDE_NOTHING
-	scene_script .DummyScene1 ; SCENE_RUINSOFALPHOUTSIDE_GET_UNOWN_DEX
+	scene_script .DummyScene0, SCENE_RUINSOFALPHOUTSIDE_NOOP
+	scene_script .DummyScene1, SCENE_RUINSOFALPHOUTSIDE_GET_UNOWN_DEX
 
 	def_callbacks
 	callback MAPCALLBACK_OBJECTS, .ScientistCallback
@@ -38,7 +38,7 @@
 
 .NoScientist:
 	disappear RUINSOFALPHOUTSIDE_SCIENTIST
-	setscene SCENE_RUINSOFALPHOUTSIDE_NOTHING
+	setscene SCENE_RUINSOFALPHOUTSIDE_NOOP
 	endcallback
 
 RuinsOfAlphOutsideScientistScene1:
--- a/maps/RuinsOfAlphResearchCenter.asm
+++ b/maps/RuinsOfAlphResearchCenter.asm
@@ -5,8 +5,8 @@
 
 RuinsOfAlphResearchCenter_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_RUINSOFALPHRESEARCHCENTER_NOTHING
-	scene_script .GetUnownDex ; SCENE_RUINSOFALPHRESEARCHCENTER_GET_UNOWN_DEX
+	scene_script .DummyScene0, SCENE_RUINSOFALPHRESEARCHCENTER_NOOP
+	scene_script .GetUnownDex, SCENE_RUINSOFALPHRESEARCHCENTER_GET_UNOWN_DEX
 
 	def_callbacks
 	callback MAPCALLBACK_OBJECTS, .ScientistCallback
@@ -53,7 +53,7 @@
 	waitbutton
 	closetext
 	applymovement RUINSOFALPHRESEARCHCENTER_SCIENTIST3, RuinsOfAlphResearchCenterLeavesPlayerMovement
-	setscene SCENE_RUINSOFALPHRESEARCHCENTER_NOTHING
+	setscene SCENE_RUINSOFALPHRESEARCHCENTER_NOOP
 	special RestartMapMusic
 	end
 
--- a/maps/SaffronMagnetTrainStation.asm
+++ b/maps/SaffronMagnetTrainStation.asm
@@ -6,7 +6,7 @@
 
 SaffronMagnetTrainStation_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene ; SCENE_DEFAULT
+	scene_script .DummyScene, SCENE_SAFFRONMAGNETTRAINSTATION_ARRIVE_FROM_GOLDENROD
 
 	def_callbacks
 
@@ -223,7 +223,7 @@
 	warp_event 11,  5, GOLDENROD_MAGNET_TRAIN_STATION, 3
 
 	def_coord_events
-	coord_event 11,  6, SCENE_DEFAULT, Script_ArriveFromGoldenrod
+	coord_event 11,  6, SCENE_SAFFRONMAGNETTRAINSTATION_ARRIVE_FROM_GOLDENROD, Script_ArriveFromGoldenrod
 
 	def_bg_events
 
--- a/maps/SeafoamGym.asm
+++ b/maps/SeafoamGym.asm
@@ -4,7 +4,7 @@
 
 SeafoamGym_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene
+	scene_script .DummyScene ; unusable
 
 	def_callbacks
 
--- a/maps/SproutTower3F.asm
+++ b/maps/SproutTower3F.asm
@@ -9,8 +9,8 @@
 
 SproutTower3F_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_DEFAULT
-	scene_script .DummyScene1 ; SCENE_FINISHED
+	scene_script .DummyScene0, SCENE_SPROUTTOWER3F_RIVAL_ENCOUNTER
+	scene_script .DummyScene1, SCENE_SPROUTTOWER3F_NOOP
 
 	def_callbacks
 
@@ -57,7 +57,7 @@
 	disappear SPROUTTOWER3F_SILVER
 	waitsfx
 	special FadeInQuickly
-	setscene SCENE_FINISHED
+	setscene SCENE_SPROUTTOWER3F_NOOP
 	special RestartMapMusic
 	end
 
@@ -334,7 +334,7 @@
 	warp_event 10, 14, SPROUT_TOWER_2F, 4
 
 	def_coord_events
-	coord_event 11,  9, SCENE_DEFAULT, SproutTower3FRivalScene
+	coord_event 11,  9, SCENE_SPROUTTOWER3F_RIVAL_ENCOUNTER, SproutTower3FRivalScene
 
 	def_bg_events
 	bg_event  8,  1, BGEVENT_READ, SproutTower3FStatue
--- a/maps/TeamRocketBaseB1F.asm
+++ b/maps/TeamRocketBaseB1F.asm
@@ -8,7 +8,7 @@
 
 TeamRocketBaseB1F_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene ; SCENE_DEFAULT
+	scene_script .DummyScene, SCENE_TEAMROCKETBASEB1F_TRAPS
 
 	def_callbacks
 	callback MAPCALLBACK_OBJECTS, .HideSecurityGrunt
@@ -736,38 +736,38 @@
 	def_coord_events
 	; There are five security cameras in the base.
 	; Walking in front of one triggers two Rocket Grunts.
-	coord_event 24,  2, SCENE_DEFAULT, SecurityCamera1a
-	coord_event 24,  3, SCENE_DEFAULT, SecurityCamera1b
-	coord_event  6,  2, SCENE_DEFAULT, SecurityCamera2a
-	coord_event  6,  3, SCENE_DEFAULT, SecurityCamera2b
-	coord_event 24,  6, SCENE_DEFAULT, SecurityCamera3a
-	coord_event 24,  7, SCENE_DEFAULT, SecurityCamera3b
-	coord_event 22, 16, SCENE_DEFAULT, SecurityCamera4
-	coord_event  8, 16, SCENE_DEFAULT, SecurityCamera5
+	coord_event 24,  2, SCENE_TEAMROCKETBASEB1F_TRAPS, SecurityCamera1a
+	coord_event 24,  3, SCENE_TEAMROCKETBASEB1F_TRAPS, SecurityCamera1b
+	coord_event  6,  2, SCENE_TEAMROCKETBASEB1F_TRAPS, SecurityCamera2a
+	coord_event  6,  3, SCENE_TEAMROCKETBASEB1F_TRAPS, SecurityCamera2b
+	coord_event 24,  6, SCENE_TEAMROCKETBASEB1F_TRAPS, SecurityCamera3a
+	coord_event 24,  7, SCENE_TEAMROCKETBASEB1F_TRAPS, SecurityCamera3b
+	coord_event 22, 16, SCENE_TEAMROCKETBASEB1F_TRAPS, SecurityCamera4
+	coord_event  8, 16, SCENE_TEAMROCKETBASEB1F_TRAPS, SecurityCamera5
 	; There are spots on the floor that trigger a Pokémon battle.
 	; Each Pokémon (Voltorb, Koffing, Geodude) knows Selfdestruct.
-	coord_event  2,  7, SCENE_DEFAULT, ExplodingTrap1
-	coord_event  3,  7, SCENE_DEFAULT, ExplodingTrap2
-	coord_event  4,  7, SCENE_DEFAULT, ExplodingTrap3
-	coord_event  1,  8, SCENE_DEFAULT, ExplodingTrap4
-	coord_event  3,  8, SCENE_DEFAULT, ExplodingTrap5
-	coord_event  5,  8, SCENE_DEFAULT, ExplodingTrap6
-	coord_event  3,  9, SCENE_DEFAULT, ExplodingTrap7
-	coord_event  4,  9, SCENE_DEFAULT, ExplodingTrap8
-	coord_event  1, 10, SCENE_DEFAULT, ExplodingTrap9
-	coord_event  2, 10, SCENE_DEFAULT, ExplodingTrap10
-	coord_event  3, 10, SCENE_DEFAULT, ExplodingTrap11
-	coord_event  5, 10, SCENE_DEFAULT, ExplodingTrap12
-	coord_event  2, 11, SCENE_DEFAULT, ExplodingTrap13
-	coord_event  4, 11, SCENE_DEFAULT, ExplodingTrap14
-	coord_event  1, 12, SCENE_DEFAULT, ExplodingTrap15
-	coord_event  2, 12, SCENE_DEFAULT, ExplodingTrap16
-	coord_event  4, 12, SCENE_DEFAULT, ExplodingTrap17
-	coord_event  5, 12, SCENE_DEFAULT, ExplodingTrap18
-	coord_event  1, 13, SCENE_DEFAULT, ExplodingTrap19
-	coord_event  3, 13, SCENE_DEFAULT, ExplodingTrap20
-	coord_event  4, 13, SCENE_DEFAULT, ExplodingTrap21
-	coord_event  5, 13, SCENE_DEFAULT, ExplodingTrap22
+	coord_event  2,  7, SCENE_TEAMROCKETBASEB1F_TRAPS, ExplodingTrap1
+	coord_event  3,  7, SCENE_TEAMROCKETBASEB1F_TRAPS, ExplodingTrap2
+	coord_event  4,  7, SCENE_TEAMROCKETBASEB1F_TRAPS, ExplodingTrap3
+	coord_event  1,  8, SCENE_TEAMROCKETBASEB1F_TRAPS, ExplodingTrap4
+	coord_event  3,  8, SCENE_TEAMROCKETBASEB1F_TRAPS, ExplodingTrap5
+	coord_event  5,  8, SCENE_TEAMROCKETBASEB1F_TRAPS, ExplodingTrap6
+	coord_event  3,  9, SCENE_TEAMROCKETBASEB1F_TRAPS, ExplodingTrap7
+	coord_event  4,  9, SCENE_TEAMROCKETBASEB1F_TRAPS, ExplodingTrap8
+	coord_event  1, 10, SCENE_TEAMROCKETBASEB1F_TRAPS, ExplodingTrap9
+	coord_event  2, 10, SCENE_TEAMROCKETBASEB1F_TRAPS, ExplodingTrap10
+	coord_event  3, 10, SCENE_TEAMROCKETBASEB1F_TRAPS, ExplodingTrap11
+	coord_event  5, 10, SCENE_TEAMROCKETBASEB1F_TRAPS, ExplodingTrap12
+	coord_event  2, 11, SCENE_TEAMROCKETBASEB1F_TRAPS, ExplodingTrap13
+	coord_event  4, 11, SCENE_TEAMROCKETBASEB1F_TRAPS, ExplodingTrap14
+	coord_event  1, 12, SCENE_TEAMROCKETBASEB1F_TRAPS, ExplodingTrap15
+	coord_event  2, 12, SCENE_TEAMROCKETBASEB1F_TRAPS, ExplodingTrap16
+	coord_event  4, 12, SCENE_TEAMROCKETBASEB1F_TRAPS, ExplodingTrap17
+	coord_event  5, 12, SCENE_TEAMROCKETBASEB1F_TRAPS, ExplodingTrap18
+	coord_event  1, 13, SCENE_TEAMROCKETBASEB1F_TRAPS, ExplodingTrap19
+	coord_event  3, 13, SCENE_TEAMROCKETBASEB1F_TRAPS, ExplodingTrap20
+	coord_event  4, 13, SCENE_TEAMROCKETBASEB1F_TRAPS, ExplodingTrap21
+	coord_event  5, 13, SCENE_TEAMROCKETBASEB1F_TRAPS, ExplodingTrap22
 
 	def_bg_events
 	bg_event 19, 11, BGEVENT_READ, TeamRocketBaseB1FSecretSwitch
--- a/maps/TeamRocketBaseB2F.asm
+++ b/maps/TeamRocketBaseB2F.asm
@@ -16,10 +16,10 @@
 
 TeamRocketBaseB2F_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_DEFAULT
-	scene_script .DummyScene1 ; SCENE_TEAMROCKETBASEB2F_ROCKET_BOSS
-	scene_script .DummyScene2 ; SCENE_TEAMROCKETBASEB2F_ELECTRODES
-	scene_script .DummyScene3 ; SCENE_TEAMROCKETBASEB2F_NOTHING
+	scene_script .DummyScene0, SCENE_TEAMROCKETBASEB2F_LANCE_HEALS
+	scene_script .DummyScene1, SCENE_TEAMROCKETBASEB2F_ROCKET_BOSS
+	scene_script .DummyScene2, SCENE_TEAMROCKETBASEB2F_ELECTRODES
+	scene_script .DummyScene3, SCENE_TEAMROCKETBASEB2F_NOOP
 
 	def_callbacks
 	callback MAPCALLBACK_TILES, .TransmitterDoorCallback
@@ -302,7 +302,7 @@
 	clearflag ENGINE_ROCKET_SIGNAL_ON_CH20
 	setevent EVENT_ROUTE_43_GATE_ROCKETS
 	setevent EVENT_MAHOGANY_TOWN_POKEFAN_M_BLOCKS_GYM
-	setscene SCENE_TEAMROCKETBASEB2F_NOTHING
+	setscene SCENE_TEAMROCKETBASEB2F_NOOP
 	clearevent EVENT_LAKE_OF_RAGE_CIVILIANS
 	setevent EVENT_TURNED_OFF_SECURITY_CAMERAS
 	setevent EVENT_SECURITY_CAMERA_1
@@ -917,8 +917,8 @@
 	warp_event 27, 14, TEAM_ROCKET_BASE_B3F, 4
 
 	def_coord_events
-	coord_event  5, 14, SCENE_DEFAULT, LanceHealsScript1
-	coord_event  4, 13, SCENE_DEFAULT, LanceHealsScript2
+	coord_event  5, 14, SCENE_TEAMROCKETBASEB2F_LANCE_HEALS, LanceHealsScript1
+	coord_event  4, 13, SCENE_TEAMROCKETBASEB2F_LANCE_HEALS, LanceHealsScript2
 	coord_event 14, 11, SCENE_TEAMROCKETBASEB2F_ROCKET_BOSS, RocketBaseBossFLeft
 	coord_event 15, 11, SCENE_TEAMROCKETBASEB2F_ROCKET_BOSS, RocketBaseBossFRight
 	coord_event 14, 12, SCENE_TEAMROCKETBASEB2F_ELECTRODES, RocketBaseCantLeaveScript
--- a/maps/TeamRocketBaseB3F.asm
+++ b/maps/TeamRocketBaseB3F.asm
@@ -16,10 +16,10 @@
 
 TeamRocketBaseB3F_MapScripts:
 	def_scene_scripts
-	scene_script .LanceGetsPassword ; SCENE_DEFAULT
-	scene_script .DummyScene1 ; SCENE_TEAMROCKETBASEB3F_RIVAL_ENCOUNTER
-	scene_script .DummyScene2 ; SCENE_TEAMROCKETBASEB3F_ROCKET_BOSS
-	scene_script .DummyScene3 ; SCENE_TEAMROCKETBASEB3F_NOTHING
+	scene_script .LanceGetsPassword, SCENE_TEAMROCKETBASEB3F_LANCE_GETS_PASSWORD
+	scene_script .DummyScene1,       SCENE_TEAMROCKETBASEB3F_RIVAL_ENCOUNTER
+	scene_script .DummyScene2,       SCENE_TEAMROCKETBASEB3F_ROCKET_BOSS
+	scene_script .DummyScene3,       SCENE_TEAMROCKETBASEB3F_NOOP
 
 	def_callbacks
 	callback MAPCALLBACK_TILES, .CheckGiovanniDoor
@@ -114,7 +114,7 @@
 	playsound SFX_TACKLE
 	applymovement TEAMROCKETBASEB3F_ROCKET1, RocketBaseBossLeavesMovement
 	disappear TEAMROCKETBASEB3F_ROCKET1
-	setscene SCENE_TEAMROCKETBASEB3F_NOTHING
+	setscene SCENE_TEAMROCKETBASEB3F_NOOP
 	end
 
 RocketBaseMurkrow:
--- a/maps/TimeCapsule.asm
+++ b/maps/TimeCapsule.asm
@@ -4,8 +4,8 @@
 
 TimeCapsule_MapScripts:
 	def_scene_scripts
-	scene_script .InitializeTimeCapsule ; SCENE_DEFAULT
-	scene_script .DummyScene ; SCENE_FINISHED
+	scene_script .InitializeTimeCapsule, SCENE_TIMECAPSULE_INITIALIZE
+	scene_script .DummyScene,            SCENE_TIMECAPSULE_NOOP
 
 	def_callbacks
 	callback MAPCALLBACK_OBJECTS, .SetWhichChris
@@ -30,7 +30,7 @@
 	endcallback
 
 .InitializeAndPreparePokecenter2F:
-	setscene SCENE_FINISHED
+	setscene SCENE_TIMECAPSULE_NOOP
 	setmapscene POKECENTER_2F, SCENE_POKECENTER2F_LEAVE_TIME_CAPSULE
 	end
 
--- a/maps/TinTower1F.asm
+++ b/maps/TinTower1F.asm
@@ -12,8 +12,8 @@
 
 TinTower1F_MapScripts:
 	def_scene_scripts
-	scene_script .FaceSuicune ; SCENE_DEFAULT
-	scene_script .DummyScene ; SCENE_FINISHED
+	scene_script .FaceSuicune, SCENE_TINTOWER1F_SUICUNE_BATTLE
+	scene_script .DummyScene,  SCENE_TINTOWER1F_NOOP
 
 	def_callbacks
 	callback MAPCALLBACK_OBJECTS, .NPCsCallback
@@ -123,12 +123,12 @@
 	disappear TINTOWER1F_SUICUNE
 	setevent EVENT_FOUGHT_SUICUNE
 	setevent EVENT_SAW_SUICUNE_ON_ROUTE_42
-	setmapscene ROUTE_42, SCENE_ROUTE42_NOTHING
+	setmapscene ROUTE_42, SCENE_ROUTE42_NOOP
 	setevent EVENT_SAW_SUICUNE_ON_ROUTE_36
-	setmapscene ROUTE_36, SCENE_ROUTE36_NOTHING
+	setmapscene ROUTE_36, SCENE_ROUTE36_NOOP
 	setevent EVENT_SAW_SUICUNE_AT_CIANWOOD_CITY
-	setmapscene CIANWOOD_CITY, SCENE_CIANWOODCITY_NOTHING
-	setscene SCENE_FINISHED
+	setmapscene CIANWOOD_CITY, SCENE_CIANWOODCITY_NOOP
+	setscene SCENE_TINTOWER1F_NOOP
 	clearevent EVENT_SET_WHEN_FOUGHT_HO_OH
 	reloadmapafterbattle
 	pause 20
--- a/maps/TradeCenter.asm
+++ b/maps/TradeCenter.asm
@@ -4,8 +4,8 @@
 
 TradeCenter_MapScripts:
 	def_scene_scripts
-	scene_script .InitializeTradeCenter ; SCENE_DEFAULT
-	scene_script .DummyScene ; SCENE_FINISHED
+	scene_script .InitializeTradeCenter, SCENE_TRADECENTER_INITIALIZE
+	scene_script .DummyScene,            SCENE_TRADECENTER_NOOP
 
 	def_callbacks
 	callback MAPCALLBACK_OBJECTS, .SetWhichChris
@@ -30,7 +30,7 @@
 	endcallback
 
 .InitializeAndPreparePokecenter2F:
-	setscene SCENE_FINISHED
+	setscene SCENE_TRADECENTER_NOOP
 	setmapscene POKECENTER_2F, SCENE_POKECENTER2F_LEAVE_TRADE_CENTER
 	end
 
--- a/maps/TrainerHouseB1F.asm
+++ b/maps/TrainerHouseB1F.asm
@@ -4,7 +4,7 @@
 
 TrainerHouseB1F_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene ; SCENE_DEFAULT
+	scene_script .DummyScene, SCENE_TRAINERHOUSEB1F_ASK_BATTLE
 
 	def_callbacks
 
@@ -174,7 +174,7 @@
 	warp_event  9,  4, TRAINER_HOUSE_1F, 3
 
 	def_coord_events
-	coord_event  7,  3, SCENE_DEFAULT, TrainerHouseReceptionistScript
+	coord_event  7,  3, SCENE_TRAINERHOUSEB1F_ASK_BATTLE, TrainerHouseReceptionistScript
 
 	def_bg_events
 
--- a/maps/VermilionPort.asm
+++ b/maps/VermilionPort.asm
@@ -5,8 +5,8 @@
 
 VermilionPort_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_DEFAULT
-	scene_script .LeaveFastShip ; SCENE_VERMILIONPORT_LEAVE_SHIP
+	scene_script .DummyScene0,   SCENE_VERMILIONPORT_ASK_ENTER_SHIP
+	scene_script .LeaveFastShip, SCENE_VERMILIONPORT_LEAVE_SHIP
 
 	def_callbacks
 	callback MAPCALLBACK_NEWMAP, .FlyPoint
@@ -25,7 +25,7 @@
 .LeaveFastShipScript:
 	applymovement PLAYER, VermilionPortLeaveFastShipMovement
 	appear VERMILIONPORT_SAILOR1
-	setscene SCENE_DEFAULT
+	setscene SCENE_VERMILIONPORT_ASK_ENTER_SHIP
 	setevent EVENT_FAST_SHIP_CABINS_SE_SSE_CAPTAINS_CABIN_TWIN_1
 	setevent EVENT_FAST_SHIP_CABINS_SE_SSE_GENTLEMAN
 	setevent EVENT_FAST_SHIP_PASSENGERS_FIRST_TRIP
@@ -304,7 +304,7 @@
 	warp_event  7, 17, FAST_SHIP_1F, 1
 
 	def_coord_events
-	coord_event  7, 11, SCENE_DEFAULT, VermilionPortWalkUpToShipScript
+	coord_event  7, 11, SCENE_VERMILIONPORT_ASK_ENTER_SHIP, VermilionPortWalkUpToShipScript
 
 	def_bg_events
 	bg_event 16, 13, BGEVENT_ITEM, VermilionPortHiddenIron
--- a/maps/VictoryRoad.asm
+++ b/maps/VictoryRoad.asm
@@ -8,8 +8,8 @@
 
 VictoryRoad_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_DEFAULT
-	scene_script .DummyScene1 ; SCENE_FINISHED
+	scene_script .DummyScene0, SCENE_VICTORYROAD_RIVAL_BATTLE
+	scene_script .DummyScene1, SCENE_VICTORYROAD_NOOP
 
 	def_callbacks
 
@@ -30,7 +30,7 @@
 	scall VictoryRoadRivalNext
 	applymovement VICTORYROAD_SILVER, VictoryRoadRivalBattleExitMovement1
 	disappear VICTORYROAD_SILVER
-	setscene SCENE_FINISHED
+	setscene SCENE_VICTORYROAD_NOOP
 	playmapmusic
 	end
 
@@ -44,7 +44,7 @@
 	scall VictoryRoadRivalNext
 	applymovement VICTORYROAD_SILVER, VictoryRoadRivalBattleExitMovement2
 	disappear VICTORYROAD_SILVER
-	setscene SCENE_FINISHED
+	setscene SCENE_VICTORYROAD_NOOP
 	playmapmusic
 	end
 
@@ -252,8 +252,8 @@
 	warp_event 13,  5, ROUTE_23, 3
 
 	def_coord_events
-	coord_event 12,  8, SCENE_DEFAULT, VictoryRoadRivalLeft
-	coord_event 13,  8, SCENE_DEFAULT, VictoryRoadRivalRight
+	coord_event 12,  8, SCENE_VICTORYROAD_RIVAL_BATTLE, VictoryRoadRivalLeft
+	coord_event 13,  8, SCENE_VICTORYROAD_RIVAL_BATTLE, VictoryRoadRivalRight
 
 	def_bg_events
 	bg_event  3, 29, BGEVENT_ITEM, VictoryRoadHiddenMaxPotion
--- a/maps/VictoryRoadGate.asm
+++ b/maps/VictoryRoadGate.asm
@@ -5,8 +5,8 @@
 
 VictoryRoadGate_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_DEFAULT
-	scene_script .DummyScene1 ; SCENE_FINISHED
+	scene_script .DummyScene0, SCENE_VICTORYROADGATE_BADGE_CHECK
+	scene_script .DummyScene1, SCENE_VICTORYROADGATE_NOOP
 
 	def_callbacks
 
@@ -38,7 +38,7 @@
 	writetext VictoryRoadGateEightBadgesText
 	waitbutton
 	closetext
-	setscene SCENE_FINISHED
+	setscene SCENE_VICTORYROADGATE_NOOP
 	end
 
 VictoryRoadGateLeftBlackBeltScript:
@@ -109,7 +109,7 @@
 	warp_event  2,  7, ROUTE_28, 2
 
 	def_coord_events
-	coord_event 10, 11, SCENE_DEFAULT, VictoryRoadGateBadgeCheckScene
+	coord_event 10, 11, SCENE_VICTORYROADGATE_BADGE_CHECK, VictoryRoadGateBadgeCheckScene
 
 	def_bg_events
 
--- a/maps/VioletGym.asm
+++ b/maps/VioletGym.asm
@@ -34,7 +34,7 @@
 	iftrue .SpeechAfterTM
 	setevent EVENT_BEAT_BIRD_KEEPER_ROD
 	setevent EVENT_BEAT_BIRD_KEEPER_ABE
-	setmapscene ELMS_LAB, SCENE_ELMSLAB_NOTHING
+	setmapscene ELMS_LAB, SCENE_ELMSLAB_NOOP
 	specialphonecall SPECIALCALL_ASSISTANT
 	writetext FalknerZephyrBadgeText
 	promptbutton
--- a/maps/WillsRoom.asm
+++ b/maps/WillsRoom.asm
@@ -3,8 +3,8 @@
 
 WillsRoom_MapScripts:
 	def_scene_scripts
-	scene_script .LockDoor ; SCENE_DEFAULT
-	scene_script .DummyScene ; SCENE_FINISHED
+	scene_script .LockDoor,   SCENE_WILLSROOM_LOCK_DOOR
+	scene_script .DummyScene, SCENE_WILLSROOM_NOOP
 
 	def_callbacks
 	callback MAPCALLBACK_TILES, .WillsRoomDoors
@@ -35,7 +35,7 @@
 	changeblock 4, 14, $2a ; wall
 	reloadmappart
 	closetext
-	setscene SCENE_FINISHED
+	setscene SCENE_WILLSROOM_NOOP
 	setevent EVENT_WILLS_ROOM_ENTRANCE_CLOSED
 	waitsfx
 	end
--- a/maps/WiseTriosRoom.asm
+++ b/maps/WiseTriosRoom.asm
@@ -8,8 +8,8 @@
 
 WiseTriosRoom_MapScripts:
 	def_scene_scripts
-	scene_script .DummyScene0 ; SCENE_DEFAULT
-	scene_script .DummyScene1 ; SCENE_FINISHED
+	scene_script .DummyScene0, SCENE_WISETRIOSROOM_SAGE_BLOCKS
+	scene_script .DummyScene1, SCENE_WISETRIOSROOM_NOOP
 
 	def_callbacks
 	callback MAPCALLBACK_OBJECTS, .WiseTrioCallback
@@ -103,7 +103,7 @@
 	applymovement WISETRIOSROOM_SAGE6, WiseTriosRoomSageAllowsPassageMovement
 	turnobject WISETRIOSROOM_SAGE6, UP
 	setevent EVENT_KOJI_ALLOWS_YOU_PASSAGE_TO_TIN_TOWER
-	setscene SCENE_FINISHED
+	setscene SCENE_WISETRIOSROOM_NOOP
 	end
 
 .KojiAllowsPassage:
@@ -351,7 +351,7 @@
 	warp_event  1,  4, ECRUTEAK_TIN_TOWER_ENTRANCE, 5
 
 	def_coord_events
-	coord_event  7,  4, SCENE_DEFAULT, WiseTriosRoom_CannotEnterTinTowerScript
+	coord_event  7,  4, SCENE_WISETRIOSROOM_SAGE_BLOCKS, WiseTriosRoom_CannotEnterTinTowerScript
 
 	def_bg_events