EarthBound/Item Properties Table: Difference between revisions

From Data Crystal
Jump to navigation Jump to search
No edit summary
 
m (Xkeeper moved page EarthBound:Item Properties Table to EarthBound/Item Properties Table: normalize subpages and titles)
 
(12 intermediate revisions by 6 users not shown)
Line 1: Line 1:
{{subpage|game=EarthBound:ROM map}}
{{subpage|game=EarthBound:RAM map}}
{{Infobox table|name=Item Properties Table
{{Infobox table|name=Item Properties Table
|game=[[EarthBound]]
|game=EarthBound
|loc=ROM
|start=0x155200
|start=0x155200
|end=0x1578B1
|end=0x1578B1
Line 6: Line 10:
|entrylength=39 bytes (0x27)
|entrylength=39 bytes (0x27)
|totallength=9906 bytes (0x26b2)
|totallength=9906 bytes (0x26b2)
}}The '''Item Properties Table''' stores most of the data for items, including the name, type, effect, and help text [[pointer]]. The first item is named "null" and has an index of 0.
}}The '''Item Properties Table''' stores most of the data for items, including the name, type, effect, and help text [[pointer]]. The first item is named "Null" and has an index of 0.
{{clear}}
 
=Format=
=Format=
==Name==
==Name==
* 25 bytes (0x18)
{{table el|len=25 bytes (0x19)|loc=0x00-0x18|valrange=String of [[EarthBound:Plain text|plain EarthBound text]]}}
* Range: 00-18
Name of the item in [[EarthBound:Plain text|plain EarthBound text]].
Name of the item in [[EarthBound:Plain text|plain EarthBound text]].


==Type==
==Type==
* 1 byte (0x1)
{{table el|len=1 byte (0x1)|loc=0x19|valrange=0-255 (0x00-0xFF)}}
* Range: 19
Type of the item. Affects how [[#"Strength", "Extra Power Increase", "Extra Power", "Special"|these bytes toward the end]] are interpreted. Uses [[binary]]:
Type of the item. Uses [[binary]]:
  COLUMNS      NL MT ST OP (null, main type, sub type, options)
  COLUMNS      NL MT ST OP (null, main type, sub type, options)
     type 00 - 00 00 00 00 - franklin badge
     type 00 - 00 00 00 00 - franklin badge
Line 47: Line 49:
  Plot items - [00] = regular
  Plot items - [00] = regular
               [10] = works only in specifc area
               [10] = works only in specifc area
               [11] = works only when talking to right Sprite (door, atm, person)
               [11] = works only when talking to right Sprite
                      (door, atm, person)
     type 56 - 00 11 10 00 - sound stone, meterornium
     type 56 - 00 11 10 00 - sound stone, meterornium
     type 58 - 00 11 10 10 - zom paper, hawk eye, bike - Limited area
     type 58 - 00 11 10 10 - zom paper, hawk eye, bike - Limited area
Line 56: Line 59:


==Cost==
==Cost==
* 2 bytes (0x2)
{{table el|len=2 bytes (0x2)|loc=0x1A-0x1B|valrange=0-65535 (0x0000-0xFFFF)}}
* Range: 1A-1B
Cost of item. If zero, item may not be sold or dropped. Items are sold for half of their cost, rounded down.
Cost of item. If zero, item may not be sold or dropped. Items are sold for half of their cost, rounded down.


==Ownership==
==Ownership==
* 1 byte (0x1)
{{table el|len=1 byte (0x1)|loc=0x1C|valrange=0x00-0xFF (bit separate, not a number value)}}
* Range: 1C
Each [[Binary#Bit|bit]] is a true false flag. The following list shows the [[hexadecimal]] of the bit paired with what happens when that bit is set:
Each [[Binary#Bit|bit]] is a true false flag. The following list shows the [[hexadecimal]] of the bit paired with what happens when that bit is set:
* 0x01 = [[EarthBound:Ness|Ness]] can use
* 0x01 = [[EarthBound:Ness|Ness]] can use
Line 74: Line 75:


==Effect==
==Effect==
* 2 bytes (0x2)
{{table el|len=2 bytes (0x2)|loc=0x1D-0x1E|valrange=0-65535 (0x0000-0xFFFF), but it must be a valid index in the [[EarthBound:Battle Actions Table|Battle Actions Table]]}}
* Range: 1D-1E
The [[EarthBound:Battle Actions Table|effect]] of using the item.
The [[EarthBound:Battle Actions Table|effect]] of using the item.


=="Strength", "Extra Power Increase", "Extra Power", "Special"==
=="Strength", "Extra Power Increase", "Extra Power", "Special"==
* 4 bytes (0x4)
{{table el|len=4 bytes (0x4)|loc=0x1F-0x22|valrange=Varies on item's [[#Type|type]]}}
* Range: 1F-22
These bytes, with their names listed in the order they appear in the ROM, have different effects depending on the [[#Type|type]] of the item. The names are not very accurate to what they do, but they have stuck from when the table was first documented. They are abbreviated as STR, EPI, EPW, and SPE in the following list showing their meaning for different types:
These bytes, with their names listed in the order they appear in the ROM, have different effects depending on the [[#Type|type]] of the item. The names are not very accurate to what they do, but they have stuck from when the table was first documented. They are abbreviated as STR, EPI, EPW, and SPE in the following list showing their meaning for different types:
  Known meanings of bytes 1F-22 for various types. If the type or byte
  Known meanings of bytes 1F-22 for various types. If the type or byte
Line 86: Line 85:
  ITEM TYPE NUMBERS ARE LISTED IN DECIMAL.
  ITEM TYPE NUMBERS ARE LISTED IN DECIMAL.
   
   
  Type 4 (teddy bears):
  ''Type 4 (teddy bears):''
  STR = [[EarthBound:NPC Battle AI Table|NPC Battle AI Table]] entry
  '''STR:''' [[EarthBound:NPC Battle AI Table|NPC Battle AI Table]] entry
   
   
  Type 8 (broken item):
  ''Type 8 (broken item):''
  EPI: IQ required to fix item
  '''EPI:''' IQ required to fix item
  EPW: Index of fixed item
  '''EPW:''' Index of fixed item
   
   
  Food Items (types 32, 36, 40, and 44):
  ''Food Items (types 32, 36, 40, and 44):''
  EPI: Regular HP recover
  '''EPI:''' Regular HP recover
  EPW: [[EarthBound:Poo|Poo]] HP recover
  '''EPW:''' [[EarthBound:Poo|Poo]] HP recover
   
   
  Armor Items:
  Armor Items:
  Type 20:
  ''Type 20:''
  STR: Defence
  '''STR:''' Defence
  EPW: Speed
  '''EPW:''' Speed
  SPE: Protection
  '''SPE:''' Protection
   
   
  Type 24:
  ''Type 24:''
  STR: Defence
  '''STR:''' Defence
  EPW: Luck
  '''EPW:''' Luck
  SPE: Protection
  '''SPE:''' Protection
   
   
  Type 28:
  ''Type 28:''
  STR: Defence
  '''STR:''' Defence
  EPW: Luck
  '''EPW:''' Luck
  SPE: Protection
  '''SPE:''' Protection
   
   
  Weapon Items (types 16 and 17):
  ''Weapon Items (types 16 and 17):''
  STR: Offense
  '''STR:''' Offense
  EPI: [[EarthBound:Poo|Poo]] Offense (unsure for type 17)
  '''EPI:''' [[EarthBound:Poo|Poo]] Offense (unsure for type 17)
  EPW: Guts (unsure for type 17)
  '''EPW:''' Guts (unsure for type 17)
  SPE: Miss Rate
  '''SPE:''' Miss Rate


==Help Text Address==
==Help Text Address==
* 4 bytes (0x4)
{{table el|len=4 bytes (0x4)|loc=0x23-0x26|valrange=0x00000000-0x00FFFFFF, but it must point to valid text; may or may not require a pointer to the ROM as opposed to RAM}}
* Range: 23-26
[[Pointer]] to the text shown when you select "help" on an item from the inventory screen.
[[Pointer]] to the text shown when you select "help" on an item from the inventory screen.


Line 133: Line 131:
* [http://pkhack.fobby.net/misc/txt/items_table.txt Items Properties Table doc] (basis for this page)
* [http://pkhack.fobby.net/misc/txt/items_table.txt Items Properties Table doc] (basis for this page)
* [http://pkhack.fobby.net/misc/txt/item_types.txt Item types doc] (in [[#Type|type section]] of this page)
* [http://pkhack.fobby.net/misc/txt/item_types.txt Item types doc] (in [[#Type|type section]] of this page)
[[Category:EarthBound:Items data|Items Properties Table]]

Latest revision as of 02:41, 24 January 2024

This is a sub-page of EarthBound.

This is a sub-page of EarthBound.

Item Properties Table
Game EarthBound
Start Address 0x155200
End Address 0x1578B1
# of Entries 254
Entry Length 39 bytes (0x27)
Total Length 9906 bytes (0x26b2)
Back to the ROM map

The Item Properties Table stores most of the data for items, including the name, type, effect, and help text pointer. The first item is named "Null" and has an index of 0.

Format

Name

Name of the item in plain EarthBound text.

Type

Type of the item. Affects how these bytes toward the end are interpreted. Uses binary:

COLUMNS      NL MT ST OP (null, main type, sub type, options)
   type 00 - 00 00 00 00 - franklin badge
   type 04 - 00 00 01 00 - teddy bears
   type 08 - 00 00 10 00 - broken item

Equipable items

Weapon - options = [00] bash or [01] shoot
   type 16 - 00 01 00 00 - bash
   type 17 - 00 01 00 01 - shoot
Armor
   type 20 - 00 01 01 00 - body
   type 24 - 00 01 10 00 - arm
   type 28 - 00 01 11 00 - other
Food items - no options
   type 32 - 00 10 00 00 - eatten
   type 36 - 00 10 01 00 - drinks
   type 40 - 00 10 10 00 - condiment
   type 44 - 00 10 11 00 - food for all

Special (healing, battle, and plot) items

Healing - no options
   type 48 - 00 11 00 00 - hand-aid, protractor, ruler - healing items
Battle items - direction [00] = enemy
                         [01] = party
   type 52 - 00 11 01 00 - battle offensive items
   type 53 - 00 11 01 01 - battle defensive items
Plot items - [00] = regular
             [10] = works only in specifc area
             [11] = works only when talking to right Sprite
                     (door, atm, person)
   type 56 - 00 11 10 00 - sound stone, meterornium
   type 58 - 00 11 10 10 - zom paper, hawk eye, bike - Limited area
   type 59 - 00 11 10 11 - keys, ATM, plot items - used at someone
   
   
   type255 - 11 11 11 11 - Null (item #0)

Cost

Cost of item. If zero, item may not be sold or dropped. Items are sold for half of their cost, rounded down.

Ownership

  • Length: 1 byte (0x1)
  • Offset within entry: 0x1C
  • Range of values: 0x00-0xFF (bit separate, not a number value)

Each bit is a true false flag. The following list shows the hexadecimal of the bit paired with what happens when that bit is set:

  • 0x01 = Ness can use
  • 0x02 = Paula can use
  • 0x04 = Jeff can use
  • 0x08 = Poo can use
  • 0x10 = Item is the source or target of an item transformation
  • 0x20 = "Give" command disabled (cannot move from one character's inventory to another)
  • 0x40 = Unknown; all built-in items have 0x80 set the same as 0x40
  • 0x80 = Item disappears after use

Effect

The effect of using the item.

"Strength", "Extra Power Increase", "Extra Power", "Special"

These bytes, with their names listed in the order they appear in the ROM, have different effects depending on the type of the item. The names are not very accurate to what they do, but they have stuck from when the table was first documented. They are abbreviated as STR, EPI, EPW, and SPE in the following list showing their meaning for different types:

Known meanings of bytes 1F-22 for various types. If the type or byte
is not mentioned in this list it is either unknown or unused.
ITEM TYPE NUMBERS ARE LISTED IN DECIMAL.

Type 4 (teddy bears):
STR: NPC Battle AI Table entry

Type 8 (broken item):
EPI: IQ required to fix item
EPW: Index of fixed item

Food Items (types 32, 36, 40, and 44):
EPI: Regular HP recover
EPW: Poo HP recover

Armor Items:
Type 20:
STR: Defence
EPW: Speed
SPE: Protection

Type 24:
STR: Defence
EPW: Luck
SPE: Protection

Type 28:
STR: Defence
EPW: Luck
SPE: Protection

Weapon Items (types 16 and 17):
STR: Offense
EPI: Poo Offense (unsure for type 17)
EPW: Guts (unsure for type 17)
SPE: Miss Rate

Help Text Address

  • Length: 4 bytes (0x4)
  • Offset within entry: 0x23-0x26
  • Range of values: 0x00000000-0x00FFFFFF, but it must point to valid text; may or may not require a pointer to the ROM as opposed to RAM

Pointer to the text shown when you select "help" on an item from the inventory screen.

See Also

External Links