Difference between revisions of "FF7/Battle/Battle Mechanics"
Jump to navigation
Jump to search
my_wiki>NFITC1 |
my_wiki>NFITC1 |
||
Line 72: | Line 72: | ||
|- | |- | ||
|} | |} | ||
+ | |||
+ | ==Active Character Data== | ||
+ | This is an array that each playable character maintains an instance of. (These addresses are off) | ||
+ | |||
+ | {| border="1" cellspacing="1" cellpadding="3" align="center" style="border: 1px solid black; border-collapse: collapse;" | ||
+ | ! style="background:rgb(204,204,204)" align="center" | Offset | ||
+ | ! style="background:rgb(204,204,204)" | Value | ||
+ | |- | ||
+ | | 000h | ||
+ | | Character ID | ||
+ | |- | ||
+ | | 001h | ||
+ | | Cover Chance | ||
+ | |- | ||
+ | | 002h | ||
+ | | Strength | ||
+ | |- | ||
+ | | 003h | ||
+ | | Vitality | ||
+ | |- | ||
+ | | 004h | ||
+ | | Magic | ||
+ | |- | ||
+ | | 005h | ||
+ | | Spirit | ||
+ | |- | ||
+ | | 006h | ||
+ | | Speed | ||
+ | |- | ||
+ | | 007h | ||
+ | | Luck | ||
+ | |- | ||
+ | | 008h | ||
+ | | Phys Attack | ||
+ | |- | ||
+ | | 00Ah | ||
+ | | Phys Def | ||
+ | |- | ||
+ | | 00Ch | ||
+ | | Mag Attack | ||
+ | |- | ||
+ | | 00Eh | ||
+ | | Mag Def | ||
+ | |- | ||
+ | | 010h | ||
+ | | Current HP | ||
+ | |- | ||
+ | | 012h | ||
+ | | Max HP | ||
+ | |- | ||
+ | | 014h | ||
+ | | Current MP | ||
+ | |- | ||
+ | | 016h | ||
+ | | Max MP | ||
+ | |- | ||
+ | | 018h | ||
+ | | Timer | ||
+ | |- | ||
+ | | 01Ah | ||
+ | | Counter Attack Action Index | ||
+ | |- | ||
+ | | 01Ch | ||
+ | | Counter Attack Chance | ||
+ | |- | ||
+ | | 021h | ||
+ | | Some sort of divisor | ||
+ | |- | ||
+ | | 022h | ||
+ | | Character Flags (Underwater, Long Range, HP<->MP, etc) | ||
+ | |- | ||
+ | | 023h | ||
+ | | Eight entries of three bytes... | ||
+ | |- | ||
+ | | 03Ch | ||
+ | | Attacking Elements | ||
+ | |- | ||
+ | | 03Eh | ||
+ | | Halved Elements | ||
+ | |- | ||
+ | | 040h | ||
+ | | Nullified Elements | ||
+ | |- | ||
+ | | 042h | ||
+ | | Absorbed Elements | ||
+ | |- | ||
+ | | 044h | ||
+ | | Attacking Elements | ||
+ | |- | ||
+ | | 046h | ||
+ | | Self Mask as a DWord | ||
+ | |- | ||
+ | | 04Ah | ||
+ | | Immune Statuses | ||
+ | |- | ||
+ | | 04Eh | ||
+ | | Enabled Command Menu (16 entries of 6 bytes) | ||
+ | |- | ||
+ | | 0ACh | ||
+ | | Limit Actions for current Limit Level | ||
+ | |- | ||
+ | | 0B8h | ||
+ | | Enabled Limit Data (three entries in Attack Data format) | ||
+ | |- | ||
+ | | 10Ch | ||
+ | | Enabled Magics (54 entries of 8 bytes) | ||
+ | |- | ||
+ | | 0 | ||
+ | | Magic Index | ||
+ | |- | ||
+ | | 1h | ||
+ | | MP Cost | ||
+ | |- | ||
+ | | 2h | ||
+ | | All Count | ||
+ | |- | ||
+ | | 3h | ||
+ | | Quad Enabled? | ||
+ | |- | ||
+ | | 4h | ||
+ | | Quad Count? | ||
+ | |- | ||
+ | | 5h | ||
+ | | Target Data | ||
+ | |- | ||
+ | | 6h | ||
+ | | Properties | ||
+ | |- | ||
+ | | 2CCh | ||
+ | | Enabled Summons (format like above) | ||
+ | |- | ||
+ | | 32Ch | ||
+ | | Enabled ESkills (format like above) | ||
+ | |- | ||
+ | | 40Ch | ||
+ | | First 11 bytes of Weapon Data | ||
+ | |- | ||
+ | | 41Ch | ||
+ | | Elements added to Attacking Elements above | ||
+ | |- | ||
+ | | 420h | ||
+ | | Four sets of two DWords : (Stat to increase, Increase value) | ||
+ | |- | ||
+ | | 43Ch | ||
+ | | Gil Bonus granted by this character | ||
+ | |- | ||
+ | | 43Dh | ||
+ | | Encounter rate "" | ||
+ | |- | ||
+ | | 43Eh | ||
+ | | Chocobo Chance "" | ||
+ | |- | ||
+ | | 43Fh | ||
+ | | PreEmptive Chance "" | ||
+ | |- | ||
+ | } |
Revision as of 22:42, 17 September 2013
This page will be for Battle memory structures. May be pretty unstructured for a while.
Command Defaults
Each command type has default execution values that can, in some cases, be overridden.
Offset | Default |
---|---|
0h | Animation |
1h | Damage Calculation |
2h | Command Properties |
AI Structure
There is a single block of memory that holds AI information on the current running script. Each Actor "owns" this while their scripts are executing.
Offset | Function |
---|---|
0h | Actor Index |
4h | Script Position |
8h | Remaining Stack Space (initially 200h) |
0Ch | Current AI OpCode |
10h | OpCode Lower Nybble |
14h | OpCode Upper Nybble |
18h | First Group Type |
1Ch | Second Group Type |
20h | OpCode Lower Nybble (related to group 1?) |
24h | OpCode Lower Nybble (related to group 2?) |
28h | Mask of non-null values in Group 1 |
2Ah | Mask of non-null values in Group 2 |
2Ch - 50h | Group 1 of variables |
54h - 78h | Group 2 of variables |
7Ch - 27Ch | Stack of values |
Active Character Data
This is an array that each playable character maintains an instance of. (These addresses are off)
}Offset | Value |
---|---|
000h | Character ID |
001h | Cover Chance |
002h | Strength |
003h | Vitality |
004h | Magic |
005h | Spirit |
006h | Speed |
007h | Luck |
008h | Phys Attack |
00Ah | Phys Def |
00Ch | Mag Attack |
00Eh | Mag Def |
010h | Current HP |
012h | Max HP |
014h | Current MP |
016h | Max MP |
018h | Timer |
01Ah | Counter Attack Action Index |
01Ch | Counter Attack Chance |
021h | Some sort of divisor |
022h | Character Flags (Underwater, Long Range, HP<->MP, etc) |
023h | Eight entries of three bytes... |
03Ch | Attacking Elements |
03Eh | Halved Elements |
040h | Nullified Elements |
042h | Absorbed Elements |
044h | Attacking Elements |
046h | Self Mask as a DWord |
04Ah | Immune Statuses |
04Eh | Enabled Command Menu (16 entries of 6 bytes) |
0ACh | Limit Actions for current Limit Level |
0B8h | Enabled Limit Data (three entries in Attack Data format) |
10Ch | Enabled Magics (54 entries of 8 bytes) |
0 | Magic Index |
1h | MP Cost |
2h | All Count |
3h | Quad Enabled? |
4h | Quad Count? |
5h | Target Data |
6h | Properties |
2CCh | Enabled Summons (format like above) |
32Ch | Enabled ESkills (format like above) |
40Ch | First 11 bytes of Weapon Data |
41Ch | Elements added to Attacking Elements above |
420h | Four sets of two DWords : (Stat to increase, Increase value) |
43Ch | Gil Bonus granted by this character |
43Dh | Encounter rate "" |
43Eh | Chocobo Chance "" |
43Fh | PreEmptive Chance "" |