item_s_p.bin File Format
The "/BALANCE/item_s_p.bin" file in the Pokemon Mystery Dungeon: Explorers of Sky game is used to store data for the "exclusive items". Its wrapped in a SIR0 container.
File Structure
Overview
Offset | Length | Name | Description |
---|---|---|---|
0x00 | 16 | SIR0 Header | A SIR0 header wrapping the item data. |
0x10 | (NbEntries * 4) | Item Data | A block containing entries for all exclusive items. |
After Item Data | 3 | SIR0 Pointer Offset List | A list of encoded offsets to the pointers in the file. Since there are only the 2 pointers of the SIR0 header, those three bytes are always 0x04, 0x04, 0x00. |
After SIR0 Pointer Offset List | 13 | Padding Bytes | Since all entries have a fixed size, and the SIR0 Pointer Offset List is 3 bytes long, 13 0xAA bytes are used as padding to align the end of the file on 16 bytes. |
Item Data
Offset | Length | Type | Name | Description |
---|---|---|---|---|
0x0 | 2 | uint16 | Item Type | A number that indicates several things on the item. |
0x2 | 2 | uint16 | Item Parameter | A parameter that depends on the item type. |
Item Type
A list of the possible type values an "exclusive item" can have. This list is based on data compiled by nhahtdh into the item_p_sky.xlsx excel document, and then verified/confirmed on our end.(See links in the Credits section. )
The type can determine these things:
- The star rating of the item. (rarity)
- Whether its Pokemon-specific, or type-specific.
- If its a 1 star item, which of the 2 possible 1-star items is it.
- Whether its an item that a Pokemon can randomly get when hatching.
- And possibly, an additional unknown trait.
Here are the possible item type values, and what they imply:
Value | Rarity | Item "Slot" | Exclusive To | Extra Trait |
---|---|---|---|---|
0x0 | - | - | - | - |
0x1 | * | 1 | A Type | - |
0x2 | * | 2 | A Type | - |
0x3 | ** | - | A Type | - |
0x4 | *** | - | A Type | - |
0x5 | * | 1 | A Pokemon | - |
0x6 | * | 2 | A Pokemon | - |
0x7 | ** | - | A Pokemon | - |
0x8 | *** | - | A Pokemon | - |
0x9 | *** | - | A Pokemon | The Pokemon may hatch holding the item. |
0xA | *** | - | A Pokemon | ? (Only all the Eeveelutions, and the Tyrogue line have items with this type! ) |
Item Parameter
The parameter's value changes meaning depending on the exclusive item type.
Here are the two cases:
- If the item's type is set to "exclusive to a Pokemon", the parameter contains that Pokemon's National Pokedex number.
- If the item's type is set to "exclusive to a type", the parameter contains the ID of the type. (See monster.md's page for a list of values for each types.)
External Resource
- Wonder Mail S Tools, research notes. The "items_p_Sky.xlsx" excel sheet contains a comprehensive list of item names/types, pokemon names/types, moves names, etc, along with their associated index values in-game : [1]