MOTHER 3:Item data
|Item data table|
|# of Entries||256 (0x100)|
|Entry Length||108 bytes (0x6C)|
|Total Length||27648 bytes (0x6C00)|
|Back to the ROM map|
The item data table contains the stats and parameters for each item in the game. It does not include the item names; for that, see the item names table.
Each entry in the table uses 108 bytes.
- 00-03 (04) = [ A ] Item number
- 04-07 (04) = [ B ] Item type
- 08-08 (01) = [ C ] Key item flag
- 09-09 (01) = Unclassified data
- 0A-0B (02) = [ D ] Sell price
- 0C-0D (02) = [ E ] Equip flags
- 0E-0F (02) = Unclassified data
- 10-13 (04) = [ F ] HP increase (signed)
- 14-15 (02) = [ G ] PP increase (signed)
- 16-17 (02) = Unclassified data
- 18-18 (01) = [ H ] Offense increase (signed)
- 19-19 (01) = [ I ] Defense increase (signed)
- 1A-1A (01) = [ J ] IQ increase (signed)
- 1B-1B (01) = [ K ] Speed increase (signed)
- 1C-1F (04) = Unclassified data
- 20-35 (16) = [ L ] Status ailment protection
- 36-3A (05) = [ M ] Elemental protection
- 3B-3F (05) = Unclassified data
- 40-67 (28) = [ N ] PSI/Item/Actions Info Chunk
- 68-69 (02) = Unclassified data
- 6A-6B (02) = [ O ] Item uses in-battle
00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F +-------------------------------------------------------------------------------- 00 | [ A ] [ B ] [ C] [ ?] [ D ] [ E ] [ ? ] 10 | [ F ] [ G ] [ ? ] [ H] [ I] [ J] [ K] [ ? ] 20 | [ L -> 30 | <- L ] [ M ] [ ? ] 40 | [ N ] [ O ] [ P ] [ ? ] [ Q ] 50 | [ R ] [ S] [ ? ] [ T ] [ U -> 60 | <-U] [ ? ] [ V ]
Not fully known. Values range from 0 to 9:
|01: Body armor|
|05: Status healer|
|06: Nausea (In battle throwable item?)|
|07: Fleas (Key item usable in battle?)|
Key item flag
Seems to be 01 for non-key items, 00 for key items.
This is a bitfield indicating who can equip this item:
- 01 = ?
- 02 = Flint
- 04 = Lucas
- 08 = Duster
- 10 = Kumatora
- 20 = Boney
- 40 = Salsa
- 80 = ?
Status ailment protection
Indicates how much to protect against certain status ailments. A more negative value means more protection. Each value is a 16-bit signed integer. There are 11 values, corresponding to the table below:
Similar to the status ailment protection, an item may also protect from elemental damage taken from PSI or Bomb items. Each value is an 8-bit signed integer. There are 5 values, corresponding to the table below:
|00: Neutral (PK Love, Starstorm, Ground)|
|01: PK Fire|
|02: PK Freeze|
|03: PK Thunder|
Based on the value of these bytes, the item will do different things in battle.
Here are the values:
- 00 - Damage
- 01 - 1 Damage
- 02 - Random Damage (Uses HP values as a base, but then randomizes even more)
- 03 - HP Healing
- 04 - HP Healing
- 05 - PP Healing
- 06 - PP Healing / Shield Removal
These bytes tell the game what elemental type of damage the item will deal.
Here are the values:
- 00 - Neutral
- 01 - Fire
- 02 - Freeze
- 03 - Thunder
- 04 - Bomb
These bytes tell the game who will be targeted by using the item.
Here are the values:
- 00 - To the character who has it
- 01 - Choose to which character
- 02 - Choose to which character
- 03 - To all characters
- 04 - To all characters
- 05 - To a random character
- 06 - To two random characters
- 07 - To three random characters
- 08 - To all characters in a random order
- 09 - To a random number of slots for five times
- 0A - To a random number of slots for six times
- 0B - To a random number of slots for eight times
- 0C - Choose to which character
- 0D - Choose one enemy
- 0E - To all enemies
- 0F - To a random enemy
- 10 - Twice to random enemies
- 11 - Thrice to random enemies
- 12 - Four times to random enemies
- 13 - Five times to random enemies
- 14 - Choose one enemy
- 15 - To a random entity on the field
- 16 - To all the ones on the field
- 17 - Unselectable item
- 18 - Can only choose the first character
- 19 - Can only choose the third character
- 1A - Can only choose the second character
- 1B - Can only choose the fourth character
Lower and upper HP/PP values
The lower and upper HP/PP values indicate the range of recovery for recovery-based items and the range of damage for damage-based ones. Each value uses 16 bits.
This seems to control which status ailment to heal for items such as the Antidote, Fresh Mint, etc., according to the table below:
|01: Poison (Antidote)|
|02: Numbness (Anti-Paralysis)|
|03: Sleep (Alarm Cicada)|
|04: Confusion (Paper Fan)|
|05: Crying (Eye Drops)|
|06: Forgetfulness (Recollection Bell)|
|07: Nausea (Fresh Mint)|
|08: Fleas (Flea Powder)|
These bytes manage which animations get played when using an item.
Byte 5E, if different from 00, will make the background darker while the item animation plays.
Byte 5F is the battle animation number.
Byte 60 is the number of the animation that plays only if the item hits the target, otherwise it won't play. This animation also prints the damage/healing numbers.
It is not fully known how byte 5F and 60 correspond to the battle animations entry table.
If value is 01, the item will be usable only one time, in battle, before disappearing. Otherwise, it won't disappear after the use.