The current URL is datacrystal.tcrf.net.
Pokémon Mystery Dungeon: Red Rescue Team/Dungeons Floors Data/Main Data
This is a sub-page of Pokémon Mystery Dungeon: Red Rescue Team/Dungeons Floors Data.
This page is rather stubbly and could use some expansion. Are you a bad enough dude to rescue this article? |
Dungeons Floors Data: Main Data | |
Game | Pokémon Mystery Dungeon: Red Rescue Team |
Start Address | 0x04A9F74 |
End Address | 0x04B6063 |
# of Entries | 1764 |
Entry Length | 28 bytes (0x1C) |
Total Length | 49392 bytes (0xC0F0) |
Back to the ROM map |
Every entry determines various floor setting. Below is explained entry structure.
Floor Layout Data
- Length: 2 bytes
- Offset within entry: 0x00-0x01
- Range of unique values: 0x01-0x0C for first byte. Second byte varies depending on first byte, repetitions are common.
This value regulates the approximate layout to be generated for the floor, regulating things like the number of rooms and their size and disposition. When the first byte is 02 a monster house is spawned.
Terrain Tileset ID
- Length: 1 byte
- Offset within entry: 0x02
- Range of values: 0-75 (0x00-0x4B)
Background Music ID
- Length: 1 byte
- Offset within entry: 0x03
- Range of values: 0-26 (00-1A)
Weather ID
- Length: 1 byte
- Offset within entry: 0x04
- Range of values: 0-8 (0x0-0x8)
00: Clear 01: Sunny 02: Sandstorm 03: Cloudy 04: Rain 05: Hail 06: Fog 07: Snow 08: Random
Pokémon Density
- Length: 1 byte
- Offset within entry: 0x06
- Range of values: 0-255 (0x00-0xFF)
Shop Density
- Length: 1 byte
- Offset within entry: 0x07
- Range of values: Currently Unknown
This value determines the probability of a shop spawning on a floor.
Monster House Density
- Length: 1 byte
- Offset within entry: 0x08
- Range of values: Currently Unknown
This value determines the probability of a monster house spawning on a floor.
Item Usability
- Length: 1 byte
- Offset within entry: 0x0A
- Range of values: Currently Unknown
Determines how often an item will be spawned already being sticky.
Item Density
- Length: 1 byte
- Offset within entry: 0x15
- Range of values: 0-255 (0x00-0xFF)
Trap Density
- Length: 1 byte
- Offset within entry: 0x16
- Range of values: 0-255 (0x00-0xFF)
Floor Number?
- Length: 1 byte
- Offset within entry: 0x17
- Range of values: Currently Unknown
Seems to indicate the floor number, tough modifying it don't seem to affect anything.
Event Floor
- Length: 1 byte
- Offset within entry: 0x18
- Range of values:
If different from zero, sets a prefabricated floor layout and/or shows a cutscene. Note that many cutscenes require specific animations that only few pokémon have implemented. To avoid game crashing, the appropriate pokémon must be present in the pokémon list set by the relative Floor Data ID Table entry.
Visibility
- Length: 1 byte
- Offset within entry: 0x22
- Range of values: 0-2 (0x00-0x02)
Sets the range of visibility for the floor, making the player unable to see on the screen enemy Pokémon present outside the set range. This also limits the range of room-ranged moves when used outside rooms.
00: Full visibility 01: Can't see outside room from inside, 1-tile visibility outside rooms 02: Can't see outside room from inside, 2-tiles visibility outside rooms
Max POKé Found
- Length: 1 byte
- Offset within entry: 0x23
- Range of values: 0-38 (0x00-0x26)
This regulates the max value of every pile of money found on the floor.
When the game generates a pile of POKé to be placed on the floor, it draws a random value from 1 to 100, which points to one of the 100 values below. If the value drawed is greater than the max POKé value multiplied by 40, it will halve the value ID (rounding up) and check again if it is greater, and repeating this until it gets a value smaller than the set maximum.
4, 6, 10, 14, 22, 26, 34, 38, 46, 58 62, 74, 82, 86, 94, 106, 118, 122, 134, 142 146, 158, 166, 178, 194, 202, 206, 214, 218, 226 254, 262, 274, 278, 298, 302, 314, 326, 334, 346 358, 362, 382, 386, 394, 398, 422, 446, 454, 458 466, 478, 482, 502, 514, 526, 538, 542, 554, 562 566, 586, 614, 622, 626, 634, 662, 674, 694, 698 706, 718, 734, 746, 758, 768, 778, 794, 802, 818 838, 842, 862, 866, 878, 886, 898, 914, 922, 926 934, 958, 974, 982, 998, 1000, 1100, 1300, 1500, 20000
Note that due to how the amout is calculated, it is useless to use values greater than 38 (0x26), except in case these 100 standard values are modified. These are present at offset $010A3F0, as little-endian unsigned long int values.