- 6
- Posts
- 10
- Years
- Seen Dec 25, 2020
As the title suggests, I have started researching Pokemon Mystery Dungeon Red Rescue Team, specifically it's story event scripts. While I have seem a few hacks of this series making changes to it's dungeons and dialogue, I would like to provide the ability to fully modify the entire story and events down to the animation, sound effects, Pokemon, and background graphics. I'd love to see more unique and complete hacks of this series as I am a huge fan.
Seeing as this is a massive undertaking with plenty of uncharted territory, I will be focusing this thread exclusively on the structure of story events using the first event (the Tiny Woods) as a reference. Each post will highlight a specific aspect of how the event functions and how it fits into the the overall format and creation of scenes. In the end, I hope this complete breakdown of will aid in the creation of more PMD ROM hack projects such as mine.
My next post will start with story events: Their naming conventions and how they are called. Till then, happy coding!
Story Event:Dungeon Event Names
Spoiler:
Story events related to dungeons are named in the ROM DXXPYY.
XX refers to the dungeon it is calling. For example D01 is dungeon #1: Tiny Woods. There are 25 total dungeon events.
XX-Dungeon
-01-Tiny Woods
-02-Thunderwave Cave
-03-Mt.Steel
-04-Sinister Woods
-05-Silent Chasm
-06-Mt.Thunder
-07-Great Canyon
-08-Lapis Cave
-09-Mt.Blaze
-10-Frosty Forest
-11-Mt.Freeze
-12-Magma Cavern
-13-Sky Tower
-14-
-15-
-16-
-17-
-18-
-19-
-20-
-21-
-22-
-23-
-24-
-25-
YY refers to the zone of the dungeon. There are four possible zones for dungeons. Most dungeons have two zones:The entrance (P01) and the interior (P02). However, some dungeons have a midway point at P02 and the interior at P03.
YY-Zone
-01-Zone 1
-02-Zone 2
-03-Zone 3
-04-Zone 4
Using this, you can locate any dungeon that has a story event connected to them. For the rest of this research post, I will be referring to D01P01: Tiny Woods Zone 1[Entrance].
XX refers to the dungeon it is calling. For example D01 is dungeon #1: Tiny Woods. There are 25 total dungeon events.
XX-Dungeon
Spoiler:
-01-Tiny Woods
-02-Thunderwave Cave
-03-Mt.Steel
-04-Sinister Woods
-05-Silent Chasm
-06-Mt.Thunder
-07-Great Canyon
-08-Lapis Cave
-09-Mt.Blaze
-10-Frosty Forest
-11-Mt.Freeze
-12-Magma Cavern
-13-Sky Tower
-14-
-15-
-16-
-17-
-18-
-19-
-20-
-21-
-22-
-23-
-24-
-25-
YY refers to the zone of the dungeon. There are four possible zones for dungeons. Most dungeons have two zones:The entrance (P01) and the interior (P02). However, some dungeons have a midway point at P02 and the interior at P03.
YY-Zone
Spoiler:
-01-Zone 1
-02-Zone 2
-03-Zone 3
-04-Zone 4
Using this, you can locate any dungeon that has a story event connected to them. For the rest of this research post, I will be referring to D01P01: Tiny Woods Zone 1[Entrance].
Story Event:DXXPYY Key Offsets
Spoiler:
Key Offsets
When editing a DXXPYY event, there are four key offsets that control everything: The Event Pointer, the Event Pallete, the Event Tileset, and the Event Map. These core offsets and the pointers that lead to them will allow you to edit entire events and scenes.
Breaking them up into two sections, Map and Action Information, makes them easier to organize. The Event Pointer falls under Action Information. The last three fall under Map Information.
Action Information
Map Information
While changing the Event Pointer has little purpose outside of redirecting the location of where you active the scene, changing the Map Information pointers has some interesting results.
D01P01 Original Map Information
D01P01 New Map Information
The edited map actually uses H25P01 Map Information, a friend zone area called Ice Floe Beach, inside of D01P01's Scenes. HXXPYY is another
kind of event that focuses on Friend Areas. In theory, you could use any event's Map Information.
When editing a DXXPYY event, there are four key offsets that control everything: The Event Pointer, the Event Pallete, the Event Tileset, and the Event Map. These core offsets and the pointers that lead to them will allow you to edit entire events and scenes.
Breaking them up into two sections, Map and Action Information, makes them easier to organize. The Event Pointer falls under Action Information. The last three fall under Map Information.
Action Information
Spoiler:
Event Pointer
This points to the main script that plays out the event. Changing this will point to a completely different event.
$11E520-$11E5D7 Dungeon Event Pointer List
$11e520-D01P01 Event Pointer
-A8 FC 22 08
This points to the main script that plays out the event. Changing this will point to a completely different event.
$11E520-$11E5D7 Dungeon Event Pointer List
$11e520-D01P01 Event Pointer
-A8 FC 22 08
Map Information
Spoiler:
Pallete Pointer
This points to the pallete of the map.
$1890854-D01P01 Pallete Pointer
-70 E0 9F 09
Tileset Pointer
This points to the tileset for the map.
$189085C-D01P01 Tileset Pointer
-A0 E1 9F 09
Map Pointer
This points to the instructions that draw the map.
$1890864-D01P01 Map Pointer
-D0 02 A0
This points to the pallete of the map.
$1890854-D01P01 Pallete Pointer
-70 E0 9F 09
Tileset Pointer
This points to the tileset for the map.
$189085C-D01P01 Tileset Pointer
-A0 E1 9F 09
Map Pointer
This points to the instructions that draw the map.
$1890864-D01P01 Map Pointer
-D0 02 A0
While changing the Event Pointer has little purpose outside of redirecting the location of where you active the scene, changing the Map Information pointers has some interesting results.
![[PokeCommunity.com] Pokemon Mystery Dungeon Red Rescue Team Story Event Structure [PokeCommunity.com] Pokemon Mystery Dungeon Red Rescue Team Story Event Structure](https://images-wixmp-ed30a86b8c4ca887773594c2.wixmp.com/f/d7d5e61b-203c-4cde-94a6-04bc0459c6f4/dd2jzi2-63201e09-3bad-4a4b-ae8f-d13db0009b38.png?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ1cm46YXBwOjdlMGQxODg5ODIyNjQzNzNhNWYwZDQxNWVhMGQyNmUwIiwiaXNzIjoidXJuOmFwcDo3ZTBkMTg4OTgyMjY0MzczYTVmMGQ0MTVlYTBkMjZlMCIsIm9iaiI6W1t7InBhdGgiOiJcL2ZcL2Q3ZDVlNjFiLTIwM2MtNGNkZS05NGE2LTA0YmMwNDU5YzZmNFwvZGQyanppMi02MzIwMWUwOS0zYmFkLTRhNGItYWU4Zi1kMTNkYjAwMDliMzgucG5nIn1dXSwiYXVkIjpbInVybjpzZXJ2aWNlOmZpbGUuZG93bmxvYWQiXX0.LQgZwTBd27eoHlxxh5LbH1weoREyHOOfvz8GkeGHHZg)
D01P01 Original Map Information
![[PokeCommunity.com] Pokemon Mystery Dungeon Red Rescue Team Story Event Structure [PokeCommunity.com] Pokemon Mystery Dungeon Red Rescue Team Story Event Structure](https://images-wixmp-ed30a86b8c4ca887773594c2.wixmp.com/f/d7d5e61b-203c-4cde-94a6-04bc0459c6f4/dd2jzqf-bd830052-909e-49bf-a77c-d161a87fa6b3.png?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ1cm46YXBwOjdlMGQxODg5ODIyNjQzNzNhNWYwZDQxNWVhMGQyNmUwIiwiaXNzIjoidXJuOmFwcDo3ZTBkMTg4OTgyMjY0MzczYTVmMGQ0MTVlYTBkMjZlMCIsIm9iaiI6W1t7InBhdGgiOiJcL2ZcL2Q3ZDVlNjFiLTIwM2MtNGNkZS05NGE2LTA0YmMwNDU5YzZmNFwvZGQyanpxZi1iZDgzMDA1Mi05MDllLTQ5YmYtYTc3Yy1kMTYxYTg3ZmE2YjMucG5nIn1dXSwiYXVkIjpbInVybjpzZXJ2aWNlOmZpbGUuZG93bmxvYWQiXX0.5I-FioPFGlHNpi72eOs-kdSaKIQsjMZEn-YZiUxhvXw)
D01P01 New Map Information
The edited map actually uses H25P01 Map Information, a friend zone area called Ice Floe Beach, inside of D01P01's Scenes. HXXPYY is another
kind of event that focuses on Friend Areas. In theory, you could use any event's Map Information.
Story Event:Dungeon Event Structure Basics
Spoiler:
The DXXPYY Event Pointer from the last section covers the entirety of action that take place in an event.
Dungeon events are broken up into six sections:
While I will be covering each section in individual posts and how they link together in another, I will briefly describe each.
Since I am going to be covering D01P01, I will provide it as an example of this structure in action. I will also provide an more complete breakdown along with it.
$22C248-$22FCB3 -D01P01 Event
Dungeon events are broken up into six sections:
-Scene Info
-Character Info
-Flag Info
-Scene List
-Movement List
-Event Parameters
-Character Info
-Flag Info
-Scene List
-Movement List
-Event Parameters
While I will be covering each section in individual posts and how they link together in another, I will briefly describe each.
Spoiler:
-Scene Info-
This section houses dialogue, animation, sound effect, etc.
-Character Info-
This section has information about the Pokemon that are animated.
-Flag Info-
This section holds the flags for each scene in the event.
-Scene List-
This section is a list of pointers that calls to each scene.
-Movement List-
This section gives coordinates for the movement script to use.
-Event Parameters-
This section is the first section to be called and provides the framework for the event.
This section houses dialogue, animation, sound effect, etc.
-Character Info-
This section has information about the Pokemon that are animated.
-Flag Info-
This section holds the flags for each scene in the event.
-Scene List-
This section is a list of pointers that calls to each scene.
-Movement List-
This section gives coordinates for the movement script to use.
-Event Parameters-
This section is the first section to be called and provides the framework for the event.
$22C248-$22FCB3 -D01P01 Event
Spoiler:
-Abbreviated Offset Index-
$22C248-$22FA0B -Scene Info
$22FA0C-$22FAFB -Character Info
$22FAFC-$22FB1F -Flag Info
$22FA20-$22FC17 -Scene List
$22FC18-$22FCA7 -Movement List
$22FCA8-$22FCB3 -Event Parameters
-Full Offset Index-
$22C248-$22C287 -Scene 1 Info /Setup
$22C288-$22C2B3 -"../data/ground/ground_data_d01p01_station.c."
$22C2B4-$22C2BF -Scene 1 Setup
$22C2C0-$22C4BF -Scene 2 Info /Setup
$22C4C0-$22C5D7 -Scene 2 Black Screen Dialogue
$22C5D8-$22C5E3 -Scene 2 Setup
$22C5E4-$22D163 -Scene 2 Character 1 Scene Info
$22D164-$22D94F -Scene 2 Character Dialogue
$22D950-$22DC8F -Scene 2 Character 2 Scene Info
$22DC90-$22DE4F -Scene 2 Character 3 Scene Info
$22DE50-$22DF3F -Scene 3 Info /Setup
$22DF40-$22DF53 -Scene 3 Black Screen Dialogue
$22DF54-$22DF5F -Scene 3 Setup
$22DF60-$22E3FF -Scene 3 Character 1 Scene Info
$22E400-$22E5FB -Scene 3 Character Dialogue
$22E5FC-$22E89B -Scene 3 Character 2 Scene Info
$22E89C-$22E95B -Scene 3 Character 3 Scene Info
$22E95C-$22EA0B -Scene 4 Info /Setup
$22EA0C-$22EA17 -Scene 4 Setup
$22EA18-$22F147 -Scene 4 Character 1 Scene Info
$22F148-$22F68B -Scene 4 Character Dialogue
$22F68C-$22F84B -Scene 4 Character 2 Scene Info
$22F84C-$22F94B -Scene 4 Character 3 Scene Info
$22F94C-$22FA0B -Scene 4 Character 4 Scene Info
$22FA0C-$22FA53 -Scene 2 Character Info
$22FA54-$22FA9B -Scene 3 Character Info
$22FA9C-$22FAFB -Scene 4 Character Info
$22FAFC-$22FB07 -Scene 2 Flag Info
$22FB08-$22FB13 -Scene 3 Flag Info
$22FB14-$22FB1F -Scene 4 Flag Info
$22FB20-$22FB23 -Scene 1 Setup Pointer
$22FB24-$22FB27 -Scene 2 Setup Pointer
$22FB28-$22FB2B -Scene 3 Setup Pointer
$22FB2C-$22FB2F -Scene 4 Setup Pointer
$22FB30-$22FB57 -Scene 1 Parameters
$22FB58-$22FBA7 -Scene 2 Parameters
$22FBA8-$22FBCF -Scene 3 Parameters
$22FBD0-$22FBF7 -Scene 4 Parameters
$22FBF8-$22FC17 -Scene List
$22FC18-$22FCA7 -Movement List
$22FCA8-$22FCB3 -Event Parameters
$22C248-$22FA0B -Scene Info
$22FA0C-$22FAFB -Character Info
$22FAFC-$22FB1F -Flag Info
$22FA20-$22FC17 -Scene List
$22FC18-$22FCA7 -Movement List
$22FCA8-$22FCB3 -Event Parameters
-Full Offset Index-
$22C248-$22C287 -Scene 1 Info /Setup
$22C288-$22C2B3 -"../data/ground/ground_data_d01p01_station.c."
$22C2B4-$22C2BF -Scene 1 Setup
$22C2C0-$22C4BF -Scene 2 Info /Setup
$22C4C0-$22C5D7 -Scene 2 Black Screen Dialogue
$22C5D8-$22C5E3 -Scene 2 Setup
$22C5E4-$22D163 -Scene 2 Character 1 Scene Info
$22D164-$22D94F -Scene 2 Character Dialogue
$22D950-$22DC8F -Scene 2 Character 2 Scene Info
$22DC90-$22DE4F -Scene 2 Character 3 Scene Info
$22DE50-$22DF3F -Scene 3 Info /Setup
$22DF40-$22DF53 -Scene 3 Black Screen Dialogue
$22DF54-$22DF5F -Scene 3 Setup
$22DF60-$22E3FF -Scene 3 Character 1 Scene Info
$22E400-$22E5FB -Scene 3 Character Dialogue
$22E5FC-$22E89B -Scene 3 Character 2 Scene Info
$22E89C-$22E95B -Scene 3 Character 3 Scene Info
$22E95C-$22EA0B -Scene 4 Info /Setup
$22EA0C-$22EA17 -Scene 4 Setup
$22EA18-$22F147 -Scene 4 Character 1 Scene Info
$22F148-$22F68B -Scene 4 Character Dialogue
$22F68C-$22F84B -Scene 4 Character 2 Scene Info
$22F84C-$22F94B -Scene 4 Character 3 Scene Info
$22F94C-$22FA0B -Scene 4 Character 4 Scene Info
$22FA0C-$22FA53 -Scene 2 Character Info
$22FA54-$22FA9B -Scene 3 Character Info
$22FA9C-$22FAFB -Scene 4 Character Info
$22FAFC-$22FB07 -Scene 2 Flag Info
$22FB08-$22FB13 -Scene 3 Flag Info
$22FB14-$22FB1F -Scene 4 Flag Info
$22FB20-$22FB23 -Scene 1 Setup Pointer
$22FB24-$22FB27 -Scene 2 Setup Pointer
$22FB28-$22FB2B -Scene 3 Setup Pointer
$22FB2C-$22FB2F -Scene 4 Setup Pointer
$22FB30-$22FB57 -Scene 1 Parameters
$22FB58-$22FBA7 -Scene 2 Parameters
$22FBA8-$22FBCF -Scene 3 Parameters
$22FBD0-$22FBF7 -Scene 4 Parameters
$22FBF8-$22FC17 -Scene List
$22FC18-$22FCA7 -Movement List
$22FCA8-$22FCB3 -Event Parameters
Last edited: