Difference between revisions of "FF7/Materia data"
< FF7
Jump to navigation
Jump to search
my_wiki>Akari (→KERNEL.BIN - Section 9: Materia data format) |
my_wiki>Akari (→Equip Effects) |
||
Line 142: | Line 142: | ||
! style="background:rgb(204,204,204);" align="center" | MAG | ! style="background:rgb(204,204,204);" align="center" | MAG | ||
! style="background:rgb(204,204,204);" align="center" | MDEF | ! style="background:rgb(204,204,204);" align="center" | MDEF | ||
+ | ! style="background:rgb(204,204,204);" align="center" | LUCK | ||
+ | ! style="background:rgb(204,204,204);" align="center" | DEX | ||
! style="background:rgb(204,204,204);" align="center" | MAXHP | ! style="background:rgb(204,204,204);" align="center" | MAXHP | ||
! style="background:rgb(204,204,204);" align="center" | MAXMP | ! style="background:rgb(204,204,204);" align="center" | MAXMP | ||
− | |||
− | |||
|- | |- | ||
! style="background:rgb(204,204,204);" align="center" | 0x00 | ! style="background:rgb(204,204,204);" align="center" | 0x00 | ||
Line 162: | Line 162: | ||
|style="background:rgb(255,255,255);" align="center" | +02 | |style="background:rgb(255,255,255);" align="center" | +02 | ||
|style="background:rgb(255,255,255);" align="center" | +01 | |style="background:rgb(255,255,255);" align="center" | +01 | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
|style="background:rgb(255,255,255);" align="center" | -05% | |style="background:rgb(255,255,255);" align="center" | -05% | ||
|style="background:rgb(255,255,255);" align="center" | +05% | |style="background:rgb(255,255,255);" align="center" | +05% | ||
− | |||
− | |||
|- | |- | ||
! style="background:rgb(204,204,204);" align="center" | 0x02 | ! style="background:rgb(204,204,204);" align="center" | 0x02 | ||
|style="background:rgb(255,255,255);" align="center" | -04 | |style="background:rgb(255,255,255);" align="center" | -04 | ||
− | |style="background:rgb(255,255,255);" align="center" | - | + | |style="background:rgb(255,255,255);" align="center" | -02 |
|style="background:rgb(255,255,255);" align="center" | +04 | |style="background:rgb(255,255,255);" align="center" | +04 | ||
|style="background:rgb(255,255,255);" align="center" | +02 | |style="background:rgb(255,255,255);" align="center" | +02 | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
|style="background:rgb(255,255,255);" align="center" | -10% | |style="background:rgb(255,255,255);" align="center" | -10% | ||
|style="background:rgb(255,255,255);" align="center" | +10% | |style="background:rgb(255,255,255);" align="center" | +10% | ||
+ | |- | ||
+ | ! style="background:rgb(204,204,204);" align="center" | 0x03 | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | +02 | ||
+ | |style="background:rgb(255,255,255);" align="center" | -02 | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |- | ||
+ | ! style="background:rgb(204,204,204);" align="center" | 0x04 | ||
+ | |style="background:rgb(255,255,255);" align="center" | -01 | ||
+ | |style="background:rgb(255,255,255);" align="center" | -01 | ||
+ | |style="background:rgb(255,255,255);" align="center" | +01 | ||
+ | |style="background:rgb(255,255,255);" align="center" | +01 | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |- | ||
+ | ! style="background:rgb(204,204,204);" align="center" | 0x05 | ||
+ | |style="background:rgb(255,255,255);" align="center" | +01 | ||
+ | |style="background:rgb(255,255,255);" align="center" | +01 | ||
+ | |style="background:rgb(255,255,255);" align="center" | -01 | ||
+ | |style="background:rgb(255,255,255);" align="center" | -01 | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
|style="background:rgb(255,255,255);" align="center" | | |style="background:rgb(255,255,255);" align="center" | | ||
|style="background:rgb(255,255,255);" align="center" | | |style="background:rgb(255,255,255);" align="center" | | ||
|- | |- | ||
! style="background:rgb(204,204,204);" align="center" | 0x06 | ! style="background:rgb(204,204,204);" align="center" | 0x06 | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
|style="background:rgb(255,255,255);" align="center" | +01 | |style="background:rgb(255,255,255);" align="center" | +01 | ||
− | |||
|style="background:rgb(255,255,255);" align="center" | | |style="background:rgb(255,255,255);" align="center" | | ||
|style="background:rgb(255,255,255);" align="center" | | |style="background:rgb(255,255,255);" align="center" | | ||
Line 193: | Line 223: | ||
|style="background:rgb(255,255,255);" align="center" | | |style="background:rgb(255,255,255);" align="center" | | ||
|style="background:rgb(255,255,255);" align="center" | | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | +01 | ||
|style="background:rgb(255,255,255);" align="center" | | |style="background:rgb(255,255,255);" align="center" | | ||
− | |||
|style="background:rgb(255,255,255);" align="center" | | |style="background:rgb(255,255,255);" align="center" | | ||
|- | |- | ||
Line 202: | Line 232: | ||
|style="background:rgb(255,255,255);" align="center" | | |style="background:rgb(255,255,255);" align="center" | | ||
|style="background:rgb(255,255,255);" align="center" | | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | -01 | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |- | ||
+ | ! style="background:rgb(204,204,204);" align="center" | 0x09 | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | -02 | ||
|style="background:rgb(255,255,255);" align="center" | | |style="background:rgb(255,255,255);" align="center" | | ||
|style="background:rgb(255,255,255);" align="center" | | |style="background:rgb(255,255,255);" align="center" | | ||
− | |||
|style="background:rgb(255,255,255);" align="center" | | |style="background:rgb(255,255,255);" align="center" | | ||
|- | |- | ||
Line 212: | Line 252: | ||
|style="background:rgb(255,255,255);" align="center" | | |style="background:rgb(255,255,255);" align="center" | | ||
|style="background:rgb(255,255,255);" align="center" | | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | +02 | ||
|style="background:rgb(255,255,255);" align="center" | | |style="background:rgb(255,255,255);" align="center" | | ||
|style="background:rgb(255,255,255);" align="center" | | |style="background:rgb(255,255,255);" align="center" | | ||
|style="background:rgb(255,255,255);" align="center" | | |style="background:rgb(255,255,255);" align="center" | | ||
− | |||
|- | |- | ||
! style="background:rgb(204,204,204);" align="center" | 0x0B | ! style="background:rgb(204,204,204);" align="center" | 0x0B | ||
Line 221: | Line 261: | ||
|style="background:rgb(255,255,255);" align="center" | | |style="background:rgb(255,255,255);" align="center" | | ||
|style="background:rgb(255,255,255);" align="center" | +01 | |style="background:rgb(255,255,255);" align="center" | +01 | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
|style="background:rgb(255,255,255);" align="center" | | |style="background:rgb(255,255,255);" align="center" | | ||
|style="background:rgb(255,255,255);" align="center" | -02% | |style="background:rgb(255,255,255);" align="center" | -02% | ||
|style="background:rgb(255,255,255);" align="center" | +02% | |style="background:rgb(255,255,255);" align="center" | +02% | ||
− | |||
− | |||
|- | |- | ||
! style="background:rgb(204,204,204);" align="center" | 0x0C | ! style="background:rgb(204,204,204);" align="center" | 0x0C | ||
Line 231: | Line 271: | ||
|style="background:rgb(255,255,255);" align="center" | | |style="background:rgb(255,255,255);" align="center" | | ||
|style="background:rgb(255,255,255);" align="center" | +01 | |style="background:rgb(255,255,255);" align="center" | +01 | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
|style="background:rgb(255,255,255);" align="center" | | |style="background:rgb(255,255,255);" align="center" | | ||
|style="background:rgb(255,255,255);" align="center" | -02% | |style="background:rgb(255,255,255);" align="center" | -02% | ||
|style="background:rgb(255,255,255);" align="center" | +02% | |style="background:rgb(255,255,255);" align="center" | +02% | ||
− | |||
− | |||
|- | |- | ||
! style="background:rgb(204,204,204);" align="center" | 0x0D | ! style="background:rgb(204,204,204);" align="center" | 0x0D | ||
Line 242: | Line 282: | ||
|style="background:rgb(255,255,255);" align="center" | +01 | |style="background:rgb(255,255,255);" align="center" | +01 | ||
|style="background:rgb(255,255,255);" align="center" | +01 | |style="background:rgb(255,255,255);" align="center" | +01 | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
|style="background:rgb(255,255,255);" align="center" | -05% | |style="background:rgb(255,255,255);" align="center" | -05% | ||
|style="background:rgb(255,255,255);" align="center" | +05% | |style="background:rgb(255,255,255);" align="center" | +05% | ||
− | |||
− | |||
|- | |- | ||
! style="background:rgb(204,204,204);" align="center" | 0x0E | ! style="background:rgb(204,204,204);" align="center" | 0x0E | ||
Line 252: | Line 292: | ||
|style="background:rgb(255,255,255);" align="center" | +02 | |style="background:rgb(255,255,255);" align="center" | +02 | ||
|style="background:rgb(255,255,255);" align="center" | +02 | |style="background:rgb(255,255,255);" align="center" | +02 | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
|style="background:rgb(255,255,255);" align="center" | -10% | |style="background:rgb(255,255,255);" align="center" | -10% | ||
|style="background:rgb(255,255,255);" align="center" | +10% | |style="background:rgb(255,255,255);" align="center" | +10% | ||
− | + | ||
− | |||
|- | |- | ||
! style="background:rgb(204,204,204);" align="center" | 0x0F | ! style="background:rgb(204,204,204);" align="center" | 0x0F | ||
Line 262: | Line 303: | ||
|style="background:rgb(255,255,255);" align="center" | +04 | |style="background:rgb(255,255,255);" align="center" | +04 | ||
|style="background:rgb(255,255,255);" align="center" | +04 | |style="background:rgb(255,255,255);" align="center" | +04 | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
|style="background:rgb(255,255,255);" align="center" | -10% | |style="background:rgb(255,255,255);" align="center" | -10% | ||
|style="background:rgb(255,255,255);" align="center" | +15% | |style="background:rgb(255,255,255);" align="center" | +15% | ||
− | |||
− | |||
|- | |- | ||
! style="background:rgb(204,204,204);" align="center" | 0x10 | ! style="background:rgb(204,204,204);" align="center" | 0x10 | ||
Line 272: | Line 313: | ||
|style="background:rgb(255,255,255);" align="center" | +08 | |style="background:rgb(255,255,255);" align="center" | +08 | ||
|style="background:rgb(255,255,255);" align="center" | +08 | |style="background:rgb(255,255,255);" align="center" | +08 | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
+ | |style="background:rgb(255,255,255);" align="center" | | ||
|style="background:rgb(255,255,255);" align="center" | -10% | |style="background:rgb(255,255,255);" align="center" | -10% | ||
|style="background:rgb(255,255,255);" align="center" | +20% | |style="background:rgb(255,255,255);" align="center" | +20% | ||
− | |||
− | |||
|} | |} |
Revision as of 21:17, 4 April 2008
KERNEL.BIN - Section 9: Materia data format
This section contains the Materia data. Each record is 20 bytes long.
Offset | Length | Description | ||
---|---|---|---|---|
0x00 | 8 bytes | Level-up AP limits | Multiples of 100 (4x WORD) | |
0x08 | 1 byte | Equip Effect | [See table below] | |
0x09 | 3 bytes | Status Bitmask | ||
0x0C | 1 byte | Element | ||
0x0D | 1 byte | Materia Type | ||
Byte | Action in Battle | Action in Menu | ||
0x00 | Unknown | Unknown | ||
0x20 | Booster%: 0x0E is boosted by offset 0x0F to 0x13 depending on AP level |
Unknown | ||
0x30 | Unknown | Unknown | ||
0x21 | Add value from 0x0F-0x13 acording to number of stars to preemptive value. If materia has id 0x10 then clamp max preemptive value to 0x00-0x55. Do something in additional if this materia is mastered. | Unknown | ||
0x41 | Unknown | Unknown | ||
0x12 | Replace "Attack" command with command at offset 0x0E-0x12 acording to current number of stars. | Unknown | ||
0xX3 | Add W-commands at 0x0E (only 0x15:W-Magic, 0x16:W-Summon, 0x17:W-Item). | Unknown | ||
0xX4 | Has no influence in battle. | Unknown | ||
0x25 | Has no influence in battle. | Unknown | ||
0x35 | Has no influence in battle. | Unknown | ||
0xX6 | Add last command from 0x0E-0x12 acording to current number of stars. | Unknown | ||
0xX7 | Add skills acording to active bits in AP part of materia description and enables "enemy skill" command. | Unknown | ||
0xX8 | Add commands "steal", "sense", "coin", "morph", "deathblow", "manipulate", "mime". | Unknown | ||
0xX9 | Add spells from 0x0E-0x12 acording to current number of stars and enable "magic" command. | Unknown | ||
0xXA | Add all spells and enable "magic" command. | Unknown | ||
0xXB | Add summon from 0x0E, which can be used 0x0F-0x13 times acording to number of stars and enable "summon" command. | Unknown | ||
0xXC | Add all summons and enable "summon" command. | Unknown | ||
0x0E | 1 byte | Materia attributes | [See Above] | |
0x0F | 1 byte | Materia attributes | [See Above] | |
0x10 | 1 byte | Materia attributes | [See Above] | |
0x11 | 1 byte | Materia attributes | [See Above] | |
0x12 | 1 byte | Materia attributes | [See Above] | |
0x13 | 1 byte | Materia attributes | [See Above] |
Equip Effects
Byte | STR | VIT | MAG | MDEF | LUCK | DEX | MAXHP | MAXMP |
---|---|---|---|---|---|---|---|---|
0x00 | ||||||||
0x01 | -02 | -01 | +02 | +01 | -05% | +05% | ||
0x02 | -04 | -02 | +04 | +02 | -10% | +10% | ||
0x03 | +02 | -02 | ||||||
0x04 | -01 | -01 | +01 | +01 | ||||
0x05 | +01 | +01 | -01 | -01 | ||||
0x06 | +01 | |||||||
0x07 | +01 | |||||||
0x08 | -01 | |||||||
0x09 | -02 | |||||||
0x0A | +02 | |||||||
0x0B | -01 | +01 | -02% | +02% | ||||
0x0C | +01 | -02% | +02% | |||||
0x0D | +01 | +01 | -05% | +05% | ||||
0x0E | +02 | +02 | -10% | +10% | ||||
0x0F | +04 | +04 | -10% | +15% | ||||
0x10 | +08 | +08 | -10% | +20% |