item_s_p.bin File Format

From ProjectPokemon Wiki
Revision as of 00:11, 3 February 2017 by UniqueGeek (talk | contribs)
Jump to navigation Jump to search


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

Item Data Entry (Total length 4 bytes)
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]

Credits

  • The WMS project, for their notes. [2]
  • OgreGunner and nhahtdh for that huge thread on GameFaqs filled with tidbits of information! [3]