Difference between revisions of "BATTLE.BIN Routines"
Line 79: | Line 79: | ||
[[00069130 - 00069250]]: | [[00069130 - 00069250]]: | ||
− | 00069254 - 000692b8: [[Set some data for Mounted Units]] | + | 00069254 - 000692b8: [[? 0x692bc]] (WalkTo Animation inner routine for Mounted units?) | [[Set some data for Mounted Units]] |
000692bc - 00069338: [[Set Animation/Facing for Mounted Units]] | 000692bc - 00069338: [[Set Animation/Facing for Mounted Units]] | ||
Line 131: | Line 131: | ||
[[0006bad8 - 0006bbf8]]: | [[0006bad8 - 0006bbf8]]: | ||
− | 0006bbfc - 0006bce0: [[Store Coordinate,Mount,Animation Data]] | + | 0006bbfc - 0006bce0: [[Store Coordinate,Mount,Animation Data]] | [[? 0x6bbfc]] |
[[0006bce4 - 0006bda4]]: | [[0006bce4 - 0006bda4]]: | ||
Line 139: | Line 139: | ||
[[0006be8c - 0006c020]]: | [[0006be8c - 0006c020]]: | ||
− | [[0006c024 - 0006c2b8]]: | + | [[0006c024 - 0006c2b8]]: [[? 0x6c024]] |
[[0006c2bc - 0006c31c]]: | [[0006c2bc - 0006c31c]]: | ||
Line 183: | Line 183: | ||
[[0006d7e4 - 0006d814]]: | [[0006d7e4 - 0006d814]]: | ||
− | [[0006d818 - 0006db0c]]: | + | [[0006d818 - 0006db0c]]: [[Process Single Unit Movement]] |
0006db10 - 0006dc88: [[Knockback Processing]] | 0006db10 - 0006dc88: [[Knockback Processing]] | ||
Line 225: | Line 225: | ||
[[0006f4b0 - 0006f5b8]]: [[Change Map Zoom 2]] | [[0006f4b0 - 0006f5b8]]: [[Change Map Zoom 2]] | ||
− | [[0006f5bc - 0006f630]]: | + | [[0006f5bc - 0006f630]]: [[Player Camera Zoom]] (L1 Button) |
0006f634 - 0006f674: [[Change Map Zoom]] (L2 Controller Input) | 0006f634 - 0006f674: [[Change Map Zoom]] (L2 Controller Input) | ||
− | [[0006f678 - 0006f7c0]]: | + | [[0006f678 - 0006f7c0]]: [[Camera Zoom Related (0x6f678)]] |
[[0006f7c4 - 0006f8c4]]: [[Tilt Map/Zoom 2]] | [[0006f7c4 - 0006f8c4]]: [[Tilt Map/Zoom 2]] | ||
Line 255: | Line 255: | ||
[[00070640 - 000707c0]]: | [[00070640 - 000707c0]]: | ||
− | [[000707c4 - 0007081c]]: | + | [[000707c4 - 0007081c]]: [[Process Unit Movement]] |
00070820 - 00070994: [[Some Tile - map rotation interaction]] | 00070820 - 00070994: [[Some Tile - map rotation interaction]] | ||
Line 431: | Line 431: | ||
[[000742c8 - 00074304]]: | [[000742c8 - 00074304]]: | ||
− | [[00074308 - 0007446c]]: - choosing valid location (red box) | + | [[00074308 - 0007446c]]: [[Select Target Tile]] | - choosing valid location (red box) |
*Stores Script 0x19 | *Stores Script 0x19 | ||
Line 584: | Line 584: | ||
[[000773b4 - 000773f4]]: | [[000773b4 - 000773f4]]: | ||
− | [[000773f8 - 0007775c]]: Big action/ability display | + | [[000773f8 - 0007775c]]: [[? 0x773f8]] | Big action/ability display |
*Script 0x26 | *Script 0x26 | ||
Line 667: | Line 667: | ||
[[00079298 - 00079a94]]: | [[00079298 - 00079a94]]: | ||
− | 00079a98 - 0007a1d0: [[Game Flow Control routine]] | + | 00079a98 - 0007a1d0: [[Main BATTLE.BIN Loop]] | [[Game Flow Control routine]] |
*[[Game Flow Control Return Addresses]] | *[[Game Flow Control Return Addresses]] | ||
0007a1d4 - 0007a214: [[Get casting unit's misc data]] data that matches 0x9112c | 0007a1d4 - 0007a214: [[Get casting unit's misc data]] data that matches 0x9112c | ||
− | 0007a218 - 0007a258: [[Get Casting units Misc Data]] | + | 0007a218 - 0007a258: [[Get Source Unit Misc Data Pointer]] | [[Get Casting units Misc Data]] |
0007a25c - 0007a2b4: [[Get Misc Data of unit that matches register inputs]] | 0007a25c - 0007a2b4: [[Get Misc Data of unit that matches register inputs]] | ||
− | 0007a2b8 - 0007a3f4: [[Check if unit is on panel?]] | + | 0007a2b8 - 0007a3f4: [[Find Unit at Coordinates (Misc Data) (0x7a2b8)]] | [[Check if unit is on panel?]] |
0007a3f8 - 0007a4f0: [[Get misc data of unit that matches register inputs that isn't crystal/treasure]] | 0007a3f8 - 0007a4f0: [[Get misc data of unit that matches register inputs that isn't crystal/treasure]] | ||
Line 682: | Line 682: | ||
0007a4f4 - 0007a5cc: [[Some thing wtih check if chocobo is on panel]] | 0007a4f4 - 0007a5cc: [[Some thing wtih check if chocobo is on panel]] | ||
− | [[0007a5d0 - 0007a6e0]]: | + | [[0007a5d0 - 0007a6e0]]: [[Get Overlapping Unit Misc Data Pointer]] |
− | 0007a6e4 - 0007a720: [[Find Current Misc Unit Data Pointer (external ID)?]] | + | 0007a6e4 - 0007a720: [[Get Unit Misc Data Pointer]] | [[Find Current Misc Unit Data Pointer (external ID)?]] |
− | + | 0007a724 - 0007a770: [[Find Misc Unit Data Pointer (checking for specific unit)?]] | [[Get unit misc data that matches r4 ID]] | |
− | |||
− | 0007a724 - 0007a770: [[Find Misc Unit Data Pointer (checking for specific unit)?]] | ||
0007a774 - 0007a7b4: [[Count number of WEP sheets loaded?]] | 0007a774 - 0007a7b4: [[Count number of WEP sheets loaded?]] | ||
Line 718: | Line 716: | ||
[[0007af08 - 0007af40]]: | [[0007af08 - 0007af40]]: | ||
− | [[0007af44 - 0007b4e8]]: | + | [[0007af44 - 0007b4e8]]: [[Display Related? (0x7af44)]] |
0007b4ec - 0007b52c: [[Store Sprite Display Data]] | 0007b4ec - 0007b52c: [[Store Sprite Display Data]] | ||
Line 772: | Line 770: | ||
[[0007e9a8 - 0007eb88]]: | [[0007e9a8 - 0007eb88]]: | ||
− | [[0007eb8c - 0007eebc]]: | + | [[0007eb8c - 0007eebc]]: [[Determine Status Bubble Parameters]] |
− | [[0007eec0 - 0007f1d0]]: | + | [[0007eec0 - 0007f1d0]]: [[Display Status Bubble]] |
− | [[0007f1d4 - 0007f23c]]: | + | [[0007f1d4 - 0007f23c]]: [[? 0x7f1d4 (Status Bubble Related?)]] |
[[0007f240 - 0007f2a8]]: | [[0007f240 - 0007f2a8]]: | ||
Line 868: | Line 866: | ||
00082468 - 00082504: [[check for tile, status palette mod]] | 00082468 - 00082504: [[check for tile, status palette mod]] | ||
− | 00082508 - 0008254c: [[Status/? Misc ID checks]] | + | 00082508 - 0008254c: [[Determine Status Bubble Activation Byte]] | [[Status/? Misc ID checks]] |
00082550 - 00082588: [[Transparent Check]] (for opacity?) | 00082550 - 00082588: [[Transparent Check]] (for opacity?) | ||
Line 927: | Line 925: | ||
00084818 - 00085230: [[???]] Has damage display hardcording for arm aim/lucavi abilities | 00084818 - 00085230: [[???]] Has damage display hardcording for arm aim/lucavi abilities | ||
+ | *00084a34 - 00084a70: [[Blank effect animation (0xFFFF) Ability ID Hardcoding]] | ||
[[00085234 - 00085268]]: | [[00085234 - 00085268]]: | ||
Line 938: | Line 937: | ||
[[00085c0c - 000865a0]]: | [[00085c0c - 000865a0]]: | ||
− | [[000865a4 - 0008663c]]: | + | [[000865a4 - 0008663c]]: [[Process Status Bubble Display]] |
[[00086640 - 00086b40]]: | [[00086640 - 00086b40]]: | ||
Line 1,084: | Line 1,083: | ||
[[0008b824 - 0008b830]]: | [[0008b824 - 0008b830]]: | ||
− | [[0008b834 - 0008b85c]]: | + | [[0008b834 - 0008b85c]]: [[Set Camera Zoom Parameters]] |
− | [[0008b860 - 0008b8f0]]: | + | [[0008b860 - 0008b8f0]]: [[Set Camera Rotation Values]] |
[[0008b8f4 - 0008b964]]: | [[0008b8f4 - 0008b964]]: | ||
Line 1,129: | Line 1,128: | ||
[[0008bf14 - 0008bf80]]: | [[0008bf14 - 0008bf80]]: | ||
+ | |||
+ | 0008bf1c - 0008bf80: [[0x8bf1c]] | ||
[[0008bf84 - 0008bff8]]: | [[0008bf84 - 0008bff8]]: | ||
Line 1,158: | Line 1,159: | ||
[[0008c3e4 - 0008c40c]]: | [[0008c3e4 - 0008c40c]]: | ||
− | [[0008c410 - 0008c438]]: | + | [[0008c410 - 0008c438]]: [[Get Unit Screen Location Data Pointer]] |
[[0008c43c - 0008c464]]: | [[0008c43c - 0008c464]]: | ||
Line 1,170: | Line 1,171: | ||
[[0008c5e8 - 0008c660]]: | [[0008c5e8 - 0008c660]]: | ||
− | [[0008c664 - 0008c7c8]]: | + | [[0008c664 - 0008c7c8]]: [[Walk To]] |
[[0008c7cc - 0008c8e0]]: | [[0008c7cc - 0008c8e0]]: | ||
Line 1,180: | Line 1,181: | ||
[[0008c9c4 - 0008ca44]]: | [[0008c9c4 - 0008ca44]]: | ||
− | 0008ca48 - 0008ca78: [[get misc data, do something else if none found]] | + | 0008ca48 - 0008ca78: [[0x8ca48]] | [[get misc data, do something else if none found]] |
[[0008ca7c - 0008cbb0]]: | [[0008ca7c - 0008cbb0]]: | ||
Line 1,206: | Line 1,207: | ||
[[0008cdd0 - 0008ce1c]]: | [[0008cdd0 - 0008ce1c]]: | ||
− | [[0008ce20 - 0008ce74]]: | + | [[0008ce20 - 0008ce74]]: [[Get Unit Misc ID By Unit Index]] |
[[0008ce78 - 0008cecc]]: | [[0008ce78 - 0008cecc]]: | ||
Line 1,260: | Line 1,261: | ||
[[0008dcc4 - 0008dd0c]]: | [[0008dcc4 - 0008dd0c]]: | ||
− | [[0008dd10 - 0008dda4]]: | + | [[0008dd10 - 0008dda4]]: [[Start New Effect]] |
[[0008dda8 - 0008ddc8]]: | [[0008dda8 - 0008ddc8]]: | ||
Line 1,278: | Line 1,279: | ||
[[0008ded8 - 0008dee4]]: | [[0008ded8 - 0008dee4]]: | ||
− | [[0008dee8 - 0008df0c]]: | + | [[0008dee8 - 0008df0c]]: [[Set Event Speed Inner]] |
− | [[0008df10 - 0008df44]]: | + | [[0008df10 - 0008df44]]: [[Store Selected Tile Coordinates]] |
− | [[0008df48 - 0008df74]]: | + | [[0008df48 - 0008df74]]: [[Store Map Max Coordinates]] |
− | [[0008df78 - 0008dfa8]]: | + | [[0008df78 - 0008dfa8]]: [[Get Tile Data Pointer From Unit Misc ID]] |
[[0008dfac - 0008dfdc]]: | [[0008dfac - 0008dfdc]]: | ||
Line 1,302: | Line 1,303: | ||
[[0008e150 - 0008e178]]: | [[0008e150 - 0008e178]]: | ||
− | [[0008e17c - 0008e1f4]]: | + | [[0008e17c - 0008e1f4]]: [[? 0x8e17c]] |
[[0008e1f8 - 0008e230]]: | [[0008e1f8 - 0008e230]]: | ||
Line 1,340: | Line 1,341: | ||
[[0008ef7c - 0008efb0]]: | [[0008ef7c - 0008efb0]]: | ||
− | [[0008efb4 - 0008f12c]]: | + | [[0008efb4 - 0008f12c]]: [[Color Screen Related (0x8efb4)]] |
[[0008f130 - 0008f204]]: | [[0008f130 - 0008f204]]: | ||
Line 1,366: | Line 1,367: | ||
[[000907fc - 0009083c]]: | [[000907fc - 0009083c]]: | ||
− | [[00090840 - 00090c44]]: | + | [[00090840 - 00090c44]]: [[Map Darkness]] |
[[00090c48 - 00090da4]]: | [[00090c48 - 00090da4]]: | ||
Line 1,384: | Line 1,385: | ||
[[0009259c - 0009261c]]: | [[0009259c - 0009261c]]: | ||
− | 00092620 - 000926d4: [[Extract RGB+Alpha from Palette]] | + | 00092620 - 000926d4: [[Extract Colors Data]] | [[Extract RGB+Alpha from Palette]] |
− | 000926d8 - 000927b8: [[Get Palette Data]] | + | 000926d8 - 000927b8: [[Extract Palette Data]] | [[Get Palette Data]] |
[[000927bc - 00092d48]]: | [[000927bc - 00092d48]]: | ||
Line 1,398: | Line 1,399: | ||
[[00092f18 - 00092f94]]: | [[00092f18 - 00092f94]]: | ||
− | [[00092f98 - 00093044]]: | + | [[00092f98 - 00093044]]: [[? 0x92f98]] |
[[00093048 - 00093114]]: | [[00093048 - 00093114]]: | ||
Line 1,406: | Line 1,407: | ||
[[00093144 - 0009316c]]: | [[00093144 - 0009316c]]: | ||
− | [[00093170 - 000931c0]]: | + | [[00093170 - 000931c0]]: [[Color Field]] |
[[000931c4 - 000933c0]]: | [[000931c4 - 000933c0]]: | ||
Line 1,414: | Line 1,415: | ||
[[0009349c - 000934cc]]: | [[0009349c - 000934cc]]: | ||
− | [[000934d0 - 00093500]]: | + | [[000934d0 - 00093500]]: [[Map Darkness Wrapper]] |
[[00093504 - 00093534]]: | [[00093504 - 00093534]]: | ||
Line 1,428: | Line 1,429: | ||
[[00093634 - 00093650]]: | [[00093634 - 00093650]]: | ||
− | [[00093654 - 000937f4]]: | + | [[00093654 - 000937f4]]: [[? 0x93654]] |
[[000937f8 - 00093868]]: | [[000937f8 - 00093868]]: | ||
Line 1,450: | Line 1,451: | ||
[[000e8190 - 000e8408]]: | [[000e8190 - 000e8408]]: | ||
− | [[000e840c - 000ec714]]: | + | [[000e840c - 000ec714]]: [[Background Tile Color For Targeting/Movement]] |
− | [[000ec718 - 000ee100]]: | + | [[000ec718 - 000ee100]]: [[Background Tile Color For Targeting/Movement (Partial Tiles)]] |
[[000ee104 - 000ee434]]: | [[000ee104 - 000ee434]]: | ||
Line 1,506: | Line 1,507: | ||
00114750 - 0012cce4: | 00114750 - 0012cce4: | ||
− | [[ | + | 0011acdc - 0011aeec: [[Throw Determination Routine]] |
+ | |||
+ | |||
+ | 0012cc54 - 0012cf40: [[Set Tile Background Color (Partial Tiles)]] | ||
− | [[ | + | 0012cf44 - 0012d2b0: [[Set Tile Background Color]] |
[[0012d364 - 0012d618]]: | [[0012d364 - 0012d618]]: | ||
Line 1,554: | Line 1,558: | ||
[[0012df68 - 0012df94]]: | [[0012df68 - 0012df94]]: | ||
− | [[0012df98 - 0012e18c]]: | + | [[0012df98 - 0012e18c]]: [[? 0x12df98]] |
[[0012e190 - 0012e240]]: | [[0012e190 - 0012e240]]: | ||
Line 1,584: | Line 1,588: | ||
[[0012f02c - 0012f048]]: | [[0012f02c - 0012f048]]: | ||
− | [[0012f04c - 0012f108]]: | + | [[0012f04c - 0012f108]]: [[? 0x12f04c]] |
[[0012f10c - 0012f35c]]: | [[0012f10c - 0012f35c]]: | ||
Line 1,640: | Line 1,644: | ||
[[00133088 - 001330e0]]: | [[00133088 - 001330e0]]: | ||
− | [[001330e4 - 0013312c]]: | + | [[001330e4 - 0013312c]]: [[Copy Unit Screen Location Data]] |
[[00133130 - 0013314c]]: | [[00133130 - 0013314c]]: | ||
− | [[00133150 - 00133154]]: | + | [[00133150 - 00133154]]: jr r31 |
00133158 - 00133490: [[Get misc ID]] (goes through a bunch of event command checks and more) | 00133158 - 00133490: [[Get misc ID]] (goes through a bunch of event command checks and more) | ||
Line 1,672: | Line 1,676: | ||
[[00134074 - 001340a8]]: | [[00134074 - 001340a8]]: | ||
− | [[001340ac - 0013417c]]: | + | [[001340ac - 0013417c]]: [[Dismiss Unit Event Instruction]] |
[[00134180 - 00134220]]: | [[00134180 - 00134220]]: | ||
Line 1,750: | Line 1,754: | ||
[[00138b64 - 00138ed4]]: | [[00138b64 - 00138ed4]]: | ||
− | [[00138ed8 - 001390b8]]: [[Move/Act/Wait menu Idle routine]] | + | [[00138ed8 - 001390b8]]: [[Display Simple Selection Menu]] | [[Move/Act/Wait menu Idle routine]] |
[[00136b10 - 00136bcc]]: [[Get Item Graphic Data]] | [[00136b10 - 00136bcc]]: [[Get Item Graphic Data]] | ||
Line 1,886: | Line 1,890: | ||
[[0013dae4 - 0013db98]]: | [[0013dae4 - 0013db98]]: | ||
− | [[0013db9c - 0013dfac]]: | + | [[0013db9c - 0013dfac]]: [[Camera Fusion Event Instruction]] |
− | [[0013dfb0 - 0013e544]]: | + | [[0013dfb0 - 0013e544]]: [[Camera Fusion Inner Routine]] |
[[0013e548 - 0013e580]]: | [[0013e548 - 0013e580]]: | ||
Line 2,012: | Line 2,016: | ||
*001422f8 - 00142334: Increment item quantity | *001422f8 - 00142334: Increment item quantity | ||
− | [[00142508 - 001425ac]]: | + | [[00142508 - 001425ac]]: [[Get Battle Unit By Unit ID]] (For scenario conditionals?) |
[[001425b0 - 00142688]]: [[Process Scenario Conditionals]] | [[001425b0 - 00142688]]: [[Process Scenario Conditionals]] | ||
− | [[ | + | 00142694 - 00142b58: [[Process Scenario Conditional]] |
− | [[00142b5c - 00142ba0]]: | + | [[00142b5c - 00142ba0]]: [[0x142b5c]] |
[[00142ba4 - 00142bcc]]: | [[00142ba4 - 00142bcc]]: | ||
Line 2,030: | Line 2,034: | ||
[[00142d2c - 00142d54]]: [[? 0x142d2c]] | [[00142d2c - 00142d54]]: [[? 0x142d2c]] | ||
− | [[00142d58 - 001433a8]]: | + | [[00142d58 - 001433a8]]: [[0x142d58]] |
[[001433ac - 001433e4]]: | [[001433ac - 001433e4]]: | ||
Line 2,053: | Line 2,057: | ||
001449fc - 00145750: [[Event Instruction Main Routine 2]] | 001449fc - 00145750: [[Event Instruction Main Routine 2]] | ||
+ | *00145268 - 00145298: [[Event Instruction 0x76: DarkScreen]] | ||
+ | *001452d8 - 00145320: [[Event Instruction 0x78: DisplayConditions]] | ||
+ | *001455d8 - 00145648: [[Event Instruction 0x44: Draw]] | ||
00145754 - 00145f70: [[Event Instruction Main Routine 3]] | 00145754 - 00145f70: [[Event Instruction Main Routine 3]] | ||
+ | *00145964 - 001459c4: [[Event Instruction 0xe5: WaitForInstruction]] | ||
+ | *001459e8 - 00145a34: [[Event Instruction 0xf1: Wait]] | ||
+ | *00145e10 - 00145e68: [[Event Instruction 0x91: ShowMapTitle]] | ||
− | [[00145f78 - 00146000]]: | + | [[00145f78 - 00146000]]: [[? 0x145f78]] |
[[00146004 - 00146074]]: | [[00146004 - 00146074]]: | ||
− | 00146078 - 00146090: [[Load event command bytes]] | + | 00146078 - 00146090: [[Load Halfword]] | [[Load event command bytes]] |
− | [[00146094 - 001460a0]]: | + | [[00146094 - 001460a0]]: [[Store Halfword]] |
[[001460a4 - 001460e0]]: | [[001460a4 - 001460e0]]: | ||
Line 2,092: | Line 2,102: | ||
[[00147318 - 001474a0]]: | [[00147318 - 001474a0]]: | ||
− | [[001474a4 - 00147580]]: | + | [[001474a4 - 00147580]]: [[? 0x1474a4]] |
− | [[00147584 - 0014777c]]: | + | [[00147584 - 0014777c]]: [[Focus Event Instruction]] |
− | [[00147780 - 00147914]]: | + | [[00147780 - 00147914]]: [[Focus Speed Event Instruction]] |
[[00147918 - 00147924]]: | [[00147918 - 00147924]]: | ||
Line 2,172: | Line 2,182: | ||
[[00149f10 - 0014a014]]: | [[00149f10 - 0014a014]]: | ||
− | 0014a018 - 0014a2e8: Jumped to from subroutines of steal routine - [[Calculate party inventory?]] | + | 0014a018 - 0014a2e8: [[Run Script Variable Command]] <s>Jumped to from subroutines of steal routine - [[Calculate party inventory?]]</s> |
[[0014a2ec - 0014a398]]: | [[0014a2ec - 0014a398]]: | ||
Line 2,178: | Line 2,188: | ||
[[0014a39c - 0014a3f4]]: | [[0014a39c - 0014a3f4]]: | ||
− | [[0014a3f8 - 0014a460]]: | + | [[0014a3f8 - 0014a460]]: [[Wait Value Event Instruction]] |
[[0014a464 - 0014a488]]: | [[0014a464 - 0014a488]]: | ||
Line 2,226: | Line 2,236: | ||
[[0014b350 - 0014b390]]: [[Display Specific Menu Text]] | [[0014b350 - 0014b390]]: [[Display Specific Menu Text]] | ||
− | 0014b394 - 0014ba24: [[Giant message/menu loading routine]] | + | 0014b394 - 0014ba24: [[Display Menu Text]] | [[Giant message/menu loading routine]] |
0014ba28 - 0014bae0: [[Find Next Text Character]] | 0014ba28 - 0014bae0: [[Find Next Text Character]] | ||
Line 2,252: | Line 2,262: | ||
[[0014c758 - 0014c854]]: | [[0014c758 - 0014c854]]: | ||
− | [[0014c858 - 0014c89c]]: [[Wait]] | + | [[0014c858 - 0014c89c]]: [[Wait]] (Switch To Next Thread Multiple Times) |
[[0014c8a0 - 0014c920]]: [[Initialize Thread]] | [[0014c8a0 - 0014c920]]: [[Initialize Thread]] | ||
Line 2,276: | Line 2,286: | ||
0014cbb4 - 0014cbbc: [[Return Global Pointer]] | 0014cbb4 - 0014cbbc: [[Return Global Pointer]] | ||
− | 0014cbc0 - 0014cbf0: [[Get menu address?]] | + | 0014cbc0 - 0014cbf0: [[Get First Thread Parameter]] | [[Get menu address?]] |
0014cbf4 - 0014cc24: [[Get Second Thread Parameter]] | 0014cbf4 - 0014cc24: [[Get Second Thread Parameter]] | ||
Line 2,476: | Line 2,486: | ||
0017dc88 - 0017dca4: [[Get ID of Unit if Tile is Targetable]] | 0017dc88 - 0017dca4: [[Get ID of Unit if Tile is Targetable]] | ||
− | 0017dca8 - 0017decc: [[Check if another unit is on the same Tile]] | + | 0017dca8 - 0017decc: [[Find Unit at Specified Coordinates]] | [[Check if another unit is on the same Tile]] |
0017ded0 - 0017def8: [[Clear targeting panel data?]] | 0017ded0 - 0017def8: [[Clear targeting panel data?]] | ||
Line 2,509: | Line 2,519: | ||
0017f388 - 0017f5f4: [[Initialize units battlefield data]](ENTD ID/flags, Map location, palette, control, etc.) | 0017f388 - 0017f5f4: [[Initialize units battlefield data]](ENTD ID/flags, Map location, palette, control, etc.) | ||
+ | |||
0017f5f8 - 0017f61c: [[Initialize players battlefield units]] | 0017f5f8 - 0017f61c: [[Initialize players battlefield units]] | ||
Line 2,553: | Line 2,564: | ||
00180afc - 00180b28: [[Get Unit's Data Pointer]] | 00180afc - 00180b28: [[Get Unit's Data Pointer]] | ||
− | 00180b2c - 00180c8c: [[Check | + | 00180b2c - 00180c8c: [[Check Base Class]] | [[Ramza Causes Game Over]] |
− | 00180c90 - 00180dac: [[Unit Existence/crystaltreasure check]] Uses 0x183 byte, 0x161 ENTD ID | + | 00180c90 - 00180dac: [[Find Unit Data Pointer For ENTD Unit ID]] | [[Unit Existence/crystaltreasure check]] Uses 0x183 byte, 0x161 ENTD ID |
00180db0 - 00180dfc: [[Party level XX modification?]] | 00180db0 - 00180dfc: [[Party level XX modification?]] | ||
− | 00180e00 - 00180f3c: [[Store some ENTD Data(War Trophy, gil), party level calculation]] | + | 00180e00 - 00180f3c: [[Find War Trophies and Bonus Money]] | [[Store some ENTD Data(War Trophy, gil), party level calculation]] |
[[00180f40 - 00180fe0]]: | [[00180f40 - 00180fe0]]: | ||
Line 2,567: | Line 2,578: | ||
001810a0 - 001810d0: [[Map Location Calculation]] | 001810a0 - 001810d0: [[Map Location Calculation]] | ||
− | 001810d4 - 00181110: [[Load unit Data]] (exists check within) | + | 001810d4 - 00181110: [[Get Existent Battle Unit Pointer]] | [[Load unit Data]] (exists check within) |
00181114 - 00181148: [[Find Active Unit Data Pointer?]] | 00181114 - 00181148: [[Find Active Unit Data Pointer?]] | ||
Line 2,678: | Line 2,689: | ||
00183f60 - 00183fb0: [[Load Move Find-Item data to Current Map]] | 00183f60 - 00183fb0: [[Load Move Find-Item data to Current Map]] | ||
− | 00183fb4 - 00184018: [[Deals with map coordinates 1]] | + | 00183fb4 - 00184018: [[Get Tile Data Pointer]] | [[Deals with map coordinates 1]] |
0018401c - 00184148: [[Return Various Tile Data]] | 0018401c - 00184148: [[Return Various Tile Data]] | ||
Line 2,688: | Line 2,699: | ||
0018430c - 00184338: [[Force Attack Miss]] | 0018430c - 00184338: [[Force Attack Miss]] | ||
− | 0018433c - 0018435c: [[Force Attack Miss?]] | + | 0018433c - 0018435c: [[Cause Action Miss]] | [[Force Attack Miss?]] |
[[00184360 - 001843e8]]: [[Dance/Song hit %]] Returns if attack hit or not | [[00184360 - 001843e8]]: [[Dance/Song hit %]] Returns if attack hit or not | ||
Line 2,700: | Line 2,711: | ||
00184964 - 00184b20: [[Compatibility]] | 00184964 - 00184b20: [[Compatibility]] | ||
− | 00184b24 - 00184e3c: [[Validate Status Changes]] | + | 00184b24 - 00184e3c: [[Modify Status Inflictions]] | [[Validate Status Changes]] |
00184e40 - 00184e94: [[Elemental Nullification]] Nullify Action - Glain | 00184e40 - 00184e94: [[Elemental Nullification]] Nullify Action - Glain | ||
Line 2,834: | Line 2,845: | ||
001874ec - 0018750c: [[Convert HP Damage into MP Recovery]] | 001874ec - 0018750c: [[Convert HP Damage into MP Recovery]] | ||
− | 00187510 - 001875b8: [[Set XA*YA as hit%]] | + | 00187510 - 001875b8: [[Use Specific Action Hit Percentage]] | [[Set XA*YA as hit%]] |
001875bc - 001875f8: [[Dragon Check]] | 001875bc - 001875f8: [[Dragon Check]] | ||
Line 3,114: | Line 3,125: | ||
0018bcf0 - 0018bd30: [[Called by Nullify Action]] - Glain | 0018bcf0 - 0018bd30: [[Called by Nullify Action]] - Glain | ||
− | 0018bd34 - 0018bd70: [[?Nullify steal item?]] | + | 0018bd34 - 0018bd70: [[Remove Knockback Flag]] | [[?Nullify steal item?]] |
0018bd74 - 0018bdd0: [[Current Action Data Nulling]] | 0018bd74 - 0018bdd0: [[Current Action Data Nulling]] | ||
Line 3,176: | Line 3,187: | ||
0018d868 - 0018d90c: [[Transparent removal routine]] | 0018d868 - 0018d90c: [[Transparent removal routine]] | ||
− | 0018d910 - 0018da00: [[status CT decrement and innate statuses?]] | + | 0018d910 - 0018da00: [[Process Expiring Statuses]] | [[status CT decrement and innate statuses?]] |
− | 0018da04 - 0018da40: [[target pointers]] | + | 0018da04 - 0018da40: [[Set Action Target Variables]] | [[target pointers]] |
0018da44 - 0018da84: [[Crystal, Dead, Jump, Petrify, Treasure check ]] | 0018da44 - 0018da84: [[Crystal, Dead, Jump, Petrify, Treasure check ]] | ||
Line 3,216: | Line 3,227: | ||
0018ea98 - 0018eb4c: [[Add price of item / 4 to total gil]] | 0018ea98 - 0018eb4c: [[Add price of item / 4 to total gil]] | ||
− | 0018eb50 - 0018ec0c: [[Apply Exp gain / Level up]] | + | 0018eb50 - 0018ec0c: [[Handle Steal Exp]] | [[Apply Exp gain / Level up]] |
0018ec10 - 0018ec40: [[Store targeting/executing state, call 18e07c]] | 0018ec10 - 0018ec40: [[Store targeting/executing state, call 18e07c]] | ||
Line 3,395: | Line 3,406: | ||
0019a63c - 0019a66c: [[Part of the Weapon Inventory]] | 0019a63c - 0019a66c: [[Part of the Weapon Inventory]] | ||
− | 0019a670 - | + | 0019a670 - 0019aa4c: [[Ability Loading]] |
0019aa50 - 0019ab04: [[Load Known Ability Flag]] | 0019aa50 - 0019ab04: [[Load Known Ability Flag]] | ||
Line 3,427: | Line 3,438: | ||
[[0019b7b8 - 0019bb1c]]: | [[0019b7b8 - 0019bb1c]]: | ||
− | [[0019bb20 - 0019bbb8]]: | + | [[0019bb20 - 0019bbb8]]: [[Check Unit for Crystal or Treasure Status]] |
[[0019bbbc - 0019bf28]]: | [[0019bbbc - 0019bf28]]: | ||
Line 3,447: | Line 3,458: | ||
0019d218 - 0019d290: [[See if any units are on target panel]] | 0019d218 - 0019d290: [[See if any units are on target panel]] | ||
− | 0019d294 - 0019d304: [[Get unit that matches coordinates]] | + | 0019d294 - 0019d304: [[Find Unit at Coordinates (0x19d294)]] | [[Get unit that matches coordinates]] |
[[0019d308 - 0019d378]]: | [[0019d308 - 0019d378]]: | ||
Line 3,479: | Line 3,490: | ||
0019f15c - 0019f254: [[Status/CT based decision]] | 0019f15c - 0019f254: [[Status/CT based decision]] | ||
− | 0019f258 - 0019f2a0: [[Store units coordinates]] | + | 0019f258 - 0019f2a0: [[Save Coordinates to Temp Unit]] | [[Store units coordinates]] |
0019f2a4 - 0019f2f0: [[Transfer Unit Coordinates to AI]] | 0019f2a4 - 0019f2f0: [[Transfer Unit Coordinates to AI]] | ||
− | + | ||
+ | 001a0e80 - 001a0f6c: [[Effect Palette Setup]] | ||
[[001a0f70 - 001a0f84]]: | [[001a0f70 - 001a0f84]]: | ||
Line 3,489: | Line 3,501: | ||
[[001a0f88 - 001a0f9c]]: | [[001a0f88 - 001a0f9c]]: | ||
− | 001a0fa0 - 001a0fd0: [[Get Start of Frame Pointers Address]] | + | 001a0fa0 - 001a0fd0: [[Set Effect Frame Data Pointer]] | [[Get Start of Frame Pointers Address]] |
[[001a0fa0 - 001a0fd4]]: | [[001a0fa0 - 001a0fd4]]: | ||
Line 3,527: | Line 3,539: | ||
[[001a134c - 001a13b8]]: | [[001a134c - 001a13b8]]: | ||
− | 001a13bc - 001a15b0: [[Effect prep, default to cure if invalid LBA Sector]] | + | 001a13bc - 001a15b0: [[Effect Related (0x1a13bc)]] | [[Effect prep, default to cure if invalid LBA Sector]] |
001a15b4 - 001a1810: [[Ability animation]] uses animation flags (Ball Hardcoding) | 001a15b4 - 001a1810: [[Ability animation]] uses animation flags (Ball Hardcoding) | ||
Line 3,535: | Line 3,547: | ||
001a1854 - 001a187c: [[Check if ability is Item ability]] Checks 0x0800 flag, returns 1 if not item effect | 001a1854 - 001a187c: [[Check if ability is Item ability]] Checks 0x0800 flag, returns 1 if not item effect | ||
− | 001a1880 - 001a18a0: [[Increment effect section address loading directive]] 801b63e8 | + | 001a1880 - 001a18a0: [[Play Effect]] | [[Increment effect section address loading directive]] 801b63e8 |
[[001a18a4 - 001a18c4]]: | [[001a18a4 - 001a18c4]]: | ||
Line 3,541: | Line 3,553: | ||
[[001a18c8 - 001a18d4]]: | [[001a18c8 - 001a18d4]]: | ||
− | 001a18d8 - 001a1c3c: [[Load Effect section addresses]] | + | 001a18d8 - 001a1c3c: [[Effect Stage Processing]] | [[Effect Control Routine]] | [[Load Effect section addresses]] |
− | [[001a1c40 - 001a1c8c]]: | + | [[001a1c40 - 001a1c8c]]: [[Effect Cycle Processing]] |
− | [[001a1c90 - 001a1d24]]: | + | [[001a1c90 - 001a1d24]]: [[Effect Related (0x1a1c90)]] |
− | [[001a1d28 - 001a1d98]]: | + | [[001a1d28 - 001a1d98]]: [[Effect Related (0x1a1d28)]] |
− | [[001a1d9c - 001a2080]]: | + | [[001a1d9c - 001a2080]]: [[Effect Related (0x1a1d9c)]] |
001a2084 - 001a20b0: [[Clear some data in temp effect data]] | 001a2084 - 001a20b0: [[Clear some data in temp effect data]] | ||
Line 3,555: | Line 3,567: | ||
001a20b4 - 001a20e4: [[Clear some data in temp effect data 2]] | 001a20b4 - 001a20e4: [[Clear some data in temp effect data 2]] | ||
− | 001a20e8 - 001a2210: [[Initialize temp effect data?]] | + | 001a20e8 - 001a2210: [[Effect Related (0x1a20e8)]] | [[Initialize temp effect data?]] |
001a2214 - 001a2234: [[Effect code script >= 2E]] | 001a2214 - 001a2234: [[Effect code script >= 2E]] | ||
Line 3,571: | Line 3,583: | ||
[[001a236c - 001a23a4]]: | [[001a236c - 001a23a4]]: | ||
− | 001a2374 - 001a23a4: [[Effect code script 05 - Increment counter, store 2nd byte / 4 at 801bf000]] | + | 001a2374 - 001a23a4: [[Effect Code Script 0x05]] | [[Effect code script 05 - Increment counter, store 2nd byte / 4 at 801bf000]] |
[[001a23a8 - 001a2410]]: Effect code script 06 | [[001a23a8 - 001a2410]]: Effect code script 06 | ||
Line 3,605: | Line 3,617: | ||
[[001a2938 - 001a2994]]: Effect code script 15 | [[001a2938 - 001a2994]]: Effect code script 15 | ||
− | 001a2998 - 001a29dc: [[Effect code script 16 - check counter against 0x1c in temp effect data]] | + | 001a2998 - 001a29dc: [[Effect Code Script 0x16]] | [[Effect code script 16 - check counter against 0x1c in temp effect data]] |
*Sets next half as counter if check is true, jumps out of loop | *Sets next half as counter if check is true, jumps out of loop | ||
Line 3,620: | Line 3,632: | ||
[[001a2bc8 - 001a2c24]]: Effect code script 1C | [[001a2bc8 - 001a2c24]]: Effect code script 1C | ||
− | 001a2c28 - 001a2c78: [[Effect code script 1D - check timer against effect duration]] | + | 001a2c28 - 001a2c78: [[Effect Code Script 0x1d]] | [[Effect code script 1D - check timer against effect duration]] |
*jump out of loop if timer > effect duration | *jump out of loop if timer > effect duration | ||
Line 3,652: | Line 3,664: | ||
[[001a3d30 - 001a3ffc]]: | [[001a3d30 - 001a3ffc]]: | ||
− | [[001a4000 - 001a419c]]: | + | [[001a4000 - 001a419c]]: [[Effect Related (0x1a4000)]] |
[[001a41a0 - 001a4368]]: | [[001a41a0 - 001a4368]]: | ||
Line 3,674: | Line 3,686: | ||
001a4cd8 - 001a4cec: [[Effect code script 2D - duplicate of 2C]] | 001a4cd8 - 001a4cec: [[Effect code script 2D - duplicate of 2C]] | ||
− | 001a4cf0 - 001a4d98: [[Effect code script loop]] | + | 001a4cf0 - 001a4d98: [[Run Effect Block]] | [[Effect code script loop]] |
[[001a4d9c - 001a4de4]]: | [[001a4d9c - 001a4de4]]: | ||
− | [[001a4de8 - 001a4e98]]: | + | [[001a4de8 - 001a4e98]]: [[0x1a4de8]] |
[[001a4e9c - 001a4fd0]]: | [[001a4e9c - 001a4fd0]]: | ||
Line 3,705: | Line 3,717: | ||
[[001a5b48 - 001a5c38]]: | [[001a5b48 - 001a5c38]]: | ||
− | [[001a5c3c - 001a5d70]]: | + | [[001a5c3c - 001a5d70]]: [[0x1a5c3c]] |
[[001a5d74 - 001a5ea0]]: | [[001a5d74 - 001a5ea0]]: | ||
Line 3,715: | Line 3,727: | ||
[[001a6020 - 001a60a8]]: | [[001a6020 - 001a60a8]]: | ||
− | 001a60ac - 001a7f58: [[Emitter Control Routine]] | + | 001a60ac - 001a7f58: [[Effect Graphics]] | [[Emitter Control Routine]] |
[[001a7f5c - 001a8668]]: | [[001a7f5c - 001a8668]]: | ||
Line 3,769: | Line 3,781: | ||
[[001a8f14 - 001a90cc]]: | [[001a8f14 - 001a90cc]]: | ||
− | 001a90d0 - 001a9314: [[Modify based on first word of timing section header]] | + | 001a90d0 - 001a9314: [[Get Effect Screen Location Data From Unit Data]] | [[Modify based on first word of timing section header]] |
Line 3,857: | Line 3,869: | ||
[[001aab44 - 001aab8c]]: | [[001aab44 - 001aab8c]]: | ||
− | [[001aab90 - 001aac24]]: | + | [[001aab90 - 001aac24]]: [[0x1aab90]] |
[[001aac28 - 001aad2c]]: | [[001aac28 - 001aad2c]]: | ||
Line 3,865: | Line 3,877: | ||
[[001aad3c - 001aad94]]: | [[001aad3c - 001aad94]]: | ||
− | [[001aad98 - 001ab1d0]]: | + | [[001aad98 - 001ab1d0]]: [[Effect Camera Rotation]] |
− | [[001ab1d4 - 001ab58c]]: | + | [[001ab1d4 - 001ab58c]]: [[Effect Camera Movement]] |
[[001ab590 - 001ab720]]: | [[001ab590 - 001ab720]]: | ||
− | [[001ab724 - 001aca54]]: | + | [[001ab724 - 001aca54]]: [[Effect Related (0x1ab724)]] |
[[001aca58 - 001acb04]]: | [[001aca58 - 001acb04]]: | ||
Line 3,877: | Line 3,889: | ||
[[001acb08 - 001acf8c]]: | [[001acb08 - 001acf8c]]: | ||
− | [[001acf90 - 001ad194]]: | + | [[001acf90 - 001ad194]]: [[0x1acf90]] |
− | [[001ad198 - 001ad628]]: | + | [[001ad198 - 001ad628]]: [[0x1ad198]] |
[[001ad62c - 001ad824]]: | [[001ad62c - 001ad824]]: | ||
− | [[001ad828 - 001ad940]]: | + | [[001ad828 - 001ad940]]: [[Effect Related (0x1ad828)]] |
[[001ad944 - 001adadc]]: | [[001ad944 - 001adadc]]: | ||
Line 3,895: | Line 3,907: | ||
[[001adc24 - 001add50]]: | [[001adc24 - 001add50]]: | ||
− | [[001add54 - 001ade78]]: | + | [[001add54 - 001ade78]]: [[Effect Related (0x1add54)]] |
[[001ade7c - 001adfa8]]: | [[001ade7c - 001adfa8]]: | ||
Line 3,904: | Line 3,916: | ||
[[001aff18 - 001b045c]]: | [[001aff18 - 001b045c]]: | ||
+ | |||
+ | |||
+ | 001b47e0 - 001b48cc: [[Effect Related (0x1b47e0)]] | ||
END | END |
Revision as of 15:49, 6 August 2020
BATTLE.BIN RAM
00067000 - 00067794: Return Addresses
00067798 - 0006780c: ??? some data
00067810 - 000683b8: Return addresses and sparse data
000683c0 - 000683d0: Store AT list ID = 1
000683d4 - 000683e0: Store AT list ID = 0
000683e4 - 00068414: Transfer Unit's X/Y/Map Level
00068418 - 00068490: X/Y Data Gathering for Attacks?
00068494 - 00068530: Store Palette data for each unit
00068534 - 00068630: Palette modification based on team
00068634 - 00068678: Highlight units based on Team 2 (Square pressed during free cursor)
0006867c - 000686ac: Increment AT List ID
000686b0 - 00068764: AT List Check if Unit is Charging Ability
00068768 - 00068790: check something and clear AT list ID
00068794 - 000687a0: Clear AT list ID
000687a4 - 000687b8: Clear 960f8 and 960fc
000687bc - 000687dc: Transfer Palette
000687e0 - 00068948: Set evade special effects based on Evade Type Weapon Break, Golem Hand, etc.
0006894c - 000689a0: Set evade type data and weapon element effect
000689a4 - 00068a1c: Set evade type data, item and throw stone hardcoding
00068a20 - 00068a70: set some palette stuff
00068a74 - 00068a90: Call palette routine 1
00068a94 - 00068ab0: Call palette routine 2
00068ab4 - 00068ad0: Call palette routine 3
00068ad4 - 00068af0: Call palette routine 4
00068af4 - 00068b10: Call palette routine 5
00068b14 - 00068b30: Call palette routine 6
00068b34 - 00068b50: Call palette routine 7
00068b54 - 00068b90: Set targets animation 1 based on attack type
00068b94 - 00068bd0: Set targets animation 2 based on attack type
00068bd4 - 00068c14: Jump to post action display
00068c18 - 00068c7c: Set Bow Hardcoding
00068c80 - 00068cc0: Call Bow Hardcoding routine
00068cc4 - 00068d04: Call Bow Hardcoding routine
00068d08 - 00068e2c: Status/sprite transformation/animation display setting
00068e30 - 00068e54: Jump to 68d08
00068e58 - 00068e7c: Jump to 68d08 2
00068e80 - 000690f4: Special Status Flag Enabling?
000690f8 - 0006912c: Jump to set item graphic/palette (83758)
00069254 - 000692b8: ? 0x692bc (WalkTo Animation inner routine for Mounted units?) | Set some data for Mounted Units
000692bc - 00069338: Set Animation/Facing for Mounted Units
00069e68 - 00069edc: Initialize Units Coordinates, Animation, Facing
00069ee0 - 00069f10: Transfer Palette and store 0x7F in misc data
0006a20c - 0006a37c: Move target coordinates after knockback
0006ba38 - 0006bad4: Palette adjustment based on Tile Type
0006bbfc - 0006bce0: Store Coordinate,Mount,Animation Data | ? 0x6bbfc
0006c024 - 0006c2b8: ? 0x6c024
0006ca3c - 0006cacc: test
0006cc94 - 0006d05c: Some Knockback Handling
0006d7c4 - 0006d7e0: Call Initialize Units Coordinates, Animation, Facing
0006d818 - 0006db0c: Process Single Unit Movement
0006db10 - 0006dc88: Knockback Processing
0006dc8c - 0006dda8: Knockback with bows?
0006ddac - 0006dde8: Transfer Target Coordinates (knockback) knockback with bows?
0006ddec - 0006e558: free cursor input related
0006e55c - 0006e5bc: Store Name and data of unit selected by cursor
0006e5c0 - 0006e630: Store Name and Data of unit selected by cursor 2
0006e634 - 0006e6ac: Store Casting Units Name and Data selected by cursor
0006e7c8 - 0006eed8: Free Cursor Selection Routine
0006eedc - 0006eeec: Set Game Flow Variable to 1
0006eef0 - 0006eefc: Set Game Flow Variable to 0
0006f13c - 0006f170: Rotate Map (Counterclockwise?) 2 L1 controller input
0006f174 - 0006f1a4: Rotate Map (Counterclockwise?)
0006f1a8 - 0006f1dc: Rotate Map (Clockwise?) 2 R1 Controller input
0006f1e0 - 0006f214: Rotate Map (Clockwise?)
0006f218 - 0006f288: L1 and R1 rotation
0006f4b0 - 0006f5b8: Change Map Zoom 2
0006f5bc - 0006f630: Player Camera Zoom (L1 Button)
0006f634 - 0006f674: Change Map Zoom (L2 Controller Input)
0006f678 - 0006f7c0: Camera Zoom Related (0x6f678)
0006f7c4 - 0006f8c4: Tilt Map/Zoom 2
0006f968 - 0006f9a8: Tilt Map/Zoom(R2 Controller Input)
000707c4 - 0007081c: Process Unit Movement
00070820 - 00070994: Some Tile - map rotation interaction
00070998 - 000709f8: Set casting unit ID = FF 2
000709fc - 00070a34: Set casting unit ID = FF 1
00070a38 - 00070b78: Some system routines for ramza crystal, ability CT resolution
00070b7c - 00070c00: Store ENTD flags into misc data w/o control flag
00070c04 - 00070c74: Set next script = action menusPressed confirm while not highlighting any unit, also happens after completing move
- Stores Script 0x03
00070cdc - 00070d14: Store next Battle flow script = 1 (Select pressed during free cursor)
00070e6c - 00071004: In between turn events mimic, ability cast, traps, etc.
00071008 - 000711a0: - ???? happened for me before and after Mimic action
- Stores Script 0x27
000711a4 - 000712d4: - This happened after music started. I believe the map had not been shown yet. Was in mid-rotation of map if i remember correctly. Please test.
- Stores Script 0x27
0007134c - 0007139c: Highlight units based on team (Square pressed during free cursor)
000713a0 - 00071430: Menu stuff? - selecting the active unit.
- Stores Script 0x04
00071434 - 000714f0:- every time you select a unit, and there are choices. For example, selecting one of your own non active units, or checking enemy unit status. Number does not change if you go deeper into the menus
- Stores Script 0x04
000714f4 - 000715a4: Menu stuff
000715a8 - 000715e4:- pressing select to read further information on an action command or status screen. Basically any time while the above is true- Pressing Cancel on a unit to check how far they can move.
- Stores Script 0x06, 0x07
00071668 - 00071698:- Pressing Triangle to bring up the AT, Unit list and Options. Does not change if you go deeper into the menus unless you select a unit in AT list.
- Stores Script 0x08
000716dc - 00071718:- pressing select while in the AT, Unit list and Options. Pressing Select while in Unit List does not change number.
- Stores Script 0x09
0007171c - 000717c8: Get next acting unit? - Selecting a unit in the AT list.
- Stores Script 0x0a
000717cc - 00071820:- Pressed "Move" Command
- Stores Script 0x0c
0007187c - 00071928:- Pressed Circle to remove the reminder on how to move a unit, also after removing "Select within movable range" box
- Stores Script 0x0d
0007192c - 00071980:- "select within movable range" box appeared. selected tree (unpathable) as movement location. works for spaces outside of range as well
- Stores Script 0x0f
00071984 - 00071a78: - selected a spot within legal distance (blue square)
- Stores Script 0x10
00071ab8 - 00071b48:- blue squares disappeared, unit walks to location
- Stores Script 0x11
00071b4c - 00071c88: - unit finishes walking to location "are you sure you want to move here?" box appears
- Stores Script 0x12
00071c8c - 00071ce8: - happens right after confirming move command, attack command
- Stores Script 0x25
00071e68 - 00071ee4:Post Movement Display- confirm move command
00071ee8 - 000723d0: Main Post Movement
- Stores Script 0x15
000723d4 - 0007245c: Post Movement Display Prep
00072460 - 00072540: - begin choosing facing for Wait
- Stores Script 0x13
00072544 - 00072670: - Choose Wait action, or Move/Act used up
- Stores Script 0x14
0007270c - 00072738: Turn sprite towards attack
0007273c - 00072924: Movement/action direction setting?
00072928 - 00072a0c: Rider/Mount X/Y/Facing Setting?
00072a88 - 00072acc: Check if Facing Needs Changed?
00072ad0 - 00072b10: - also happens after confirming move command or attack command, happens after 0x71c9c
- Stores Script 0x26
00072b50 - 00072bec: Range 1 Ability Used
- Stores Script 0x16
- happens right after 0x73bac, unit attacks, this section will happen twice for 2 swords attacks
- Stores Script 0x2d
00072bf0 - 00072ce4: Set item/throw stone ability display stuff?
00072ce8 - 00072d88:- unit stands straight, break happened twice in a row, goes back to 0x73bac for 2 swords ori r2,r0,0x2f
- Stores SCript 0x2f
000732c8 - 000734c8: Battle Message Display- attack finishes, this section will happen twice for 2 swords attacks
- Stores Script 0x2e
000734cc - 00073634:- finish Attack command, happened 3x in a row
- Stores Script 0x28
000736d4 - 000739c8: Ability effect calculations critical hit, reflect, etc.
000739cc - 00073b98: Action phase control- ???? Something about Mimic- also happens after executing command, happens after 0x7418c
- Stores Script 0x29
- Stores Script 0x29
00073b9c - 00073ee8: set some target coordinates/attacker animation, others - unit status compltely gone, unit is about to attack, this section will happen twice for 2 swords attacks
- Stores Script 0x2c
00073eec - 00073fb4: Set damage display type based on ability - ???? Only during Mimic
- Stores Script 0x2b (Return from mimic?)
00073fb8 - 00073fdc:- happens after 0x73a78, unit status at bottom of screen almost completely disappeared. Means one of the previous menus was to hide the unit status
- Stores Script 0x2a
00073fe0 - 00074064: Store animation and facing based on animation flag 1- Execute action chosen
- Stores Script 0x1c
000740d4 - 00074200: - happens right after choosing Execute
- Stores Script 0x1e
00074204 - 000742c4:- ????happened during Mimic
- Stores Script 0x1e
00074308 - 0007446c: Select Target Tile | - choosing valid location (red box)
- Stores Script 0x19
00074470 - 000744c4:- choosing out of range target location
- Stores Script 0x18
000744c8 - 000745a8: - happens right before red boxes appear for targetting
- Stores Script 0x17
000745ac - 000746a8: - confirming location, "Executing action" box appears
- Stores Script 0x1b
00074af8 - 00074b14: - Something about Mimic
- Stores Script 0x17
00074bf8 - 00074dcc: Free Cursor Controller Input
- Script 0x00
00074dd0 - 00074e28: Get Tile Information when Select is pressed
- Script 0x01
00074e2c - 00074e90: Controller input related
- Script 0x02
00074e94 - 00074f58: Action Menus
- Script 0x03
00074f5c - 0007530c: Decide what to do based on skillset/ability selections?
- Script 0x04
00075310 - 000755f8: Set move/act based on skillset mainly for defend/eq.change - also sets other flags
- Script 0x05
- Script 0x06
00075690 - 00075718: has more controller input
- Script 0x07
0007571c - 000757c0: has more controller input
- Script 0x08
- Script 0x09
00075820 - 00075878: has more controller input
- Script 0x0a
- Script 0x0f
- Script 0x10
- Script 0x11
- Script 0x12
- Script 0x13
- Script 0x14
- Script 0x15
- Script 0x17
- Script 0x16
00076658 - 00076918: has learn from crystal, move XX up
- Script 0x18
- Script 0x19
000769b0 - 00076b78: while unit is moving?
- Script 0x1a
- Script 0x1b
00076be8 - 00076c4c: Sets next script = 1?
- Script 0x1d
- Script 0x1c
00076d84 - 00076f0c: stores animation/facing based on ability flags 1
- Script 0x1e
- Script 0x1f -
- Script 0x20
00077098 - 00077130: Action occurring
- Script 0x21 -
00077134 - 0007719c: action related
- Script 0x22
000771a0 - 00077310: action related
- Script 0x23
00077314 - 00077374: loads effect LBA sector
- Script 0x24
00077378 - 000773b0: Item, throw stone hardcoding
- script 0x25
000773f8 - 0007775c: ? 0x773f8 | Big action/ability display
- Script 0x26
- Script 0x27
000777ec - 0007799c: action related
- Script 0x28
- Script 0x29
00077bd8 - 00077c04: small one
- Script 0x2a
00077c08 - 00077c34: also small
- Script 0x2b
- Script 0x2c
00077ca4 - 00077e18: controller input checked
- Script 0x2d
- Script 0x2e
00077e88 - 00077f64: AI target processing?
- Script 0x2f
- Script 0x30
00078030 - 0007809c: Controller input checked
- Script 0x31
- Script 0x0b
00078148 - 00078324: Copy 0x16e in unit data to misc data, display processing
- Script 0x0e
- Script 0x0d
- Script 0x0e
00078504 - 000785a8: this one looks cool
- Script 0x32
000785ac - 000787d8: checks each unit for something and controller input
- Script 0x33
- Script 0x34
- Script 0x37
- Script 0x3a
- Script 0x35
- Script 0x38
- Script 0x36
- Script 0x39
00079a98 - 0007a1d0: Main BATTLE.BIN Loop | Game Flow Control routine
0007a1d4 - 0007a214: Get casting unit's misc data data that matches 0x9112c
0007a218 - 0007a258: Get Source Unit Misc Data Pointer | Get Casting units Misc Data
0007a25c - 0007a2b4: Get Misc Data of unit that matches register inputs
0007a2b8 - 0007a3f4: Find Unit at Coordinates (Misc Data) (0x7a2b8) | Check if unit is on panel?
0007a3f8 - 0007a4f0: Get misc data of unit that matches register inputs that isn't crystal/treasure
0007a4f4 - 0007a5cc: Some thing wtih check if chocobo is on panel
0007a5d0 - 0007a6e0: Get Overlapping Unit Misc Data Pointer
0007a6e4 - 0007a720: Get Unit Misc Data Pointer | Find Current Misc Unit Data Pointer (external ID)?
0007a724 - 0007a770: Find Misc Unit Data Pointer (checking for specific unit)? | Get unit misc data that matches r4 ID
0007a774 - 0007a7b4: Count number of WEP sheets loaded?
0007abd0 - 0007ac5c: Initialize some display data
0007ac60 - 0007aca8: Unit RGB/Sprite Type/? Initialization
0007acac - 0007ad04: Initialize WEP1 sprite RGB
0007ad08 - 0007adb0: Initialize RGB and some more stuff
0007adb4 - 0007ae44: Initialize Status bubble sprite displays
0007ae48 - 0007aec8: Initialize item sprite display
0007aecc - 0007af04: Call store screen offsets to GTE
0007af44 - 0007b4e8: Display Related? (0x7af44)
0007b4ec - 0007b52c: Store Sprite Display Data
0007b96c - 0007b9cc: Store vx, vy, vz vectors
0007c80c - 0007cff4: Slope Calculations (HUGE)
0007eb8c - 0007eebc: Determine Status Bubble Parameters
0007eec0 - 0007f1d0: Display Status Bubble
0007f1d4 - 0007f23c: ? 0x7f1d4 (Status Bubble Related?)
0007f45c - 0007f508: Store Item's Display Data
0007f5f8 - 0007ff40: Post Action Display Routine
0007ff44 - 0007ff78: "Speed" display
0007ff7c - 0007ffac: "CT" display
0007ffb0 - 0007ffe4: "Br" display
0007ffe8 - 0008001c: "Fa" display
00080020 - 00080050: "Attack" Sword display
00080054 - 00080088: "Magic" Rod display
0008008c - 000800b8: "Missed" display
000800bc - 000800e8: "Guarded" display
000800ec - 00080114: "Caught?" display
000803e4 - 000808b4: Post-Action Display Setup
000808b8 - 00080bc0: Set Exp/JP Display Data and get Palette
00080bc4 - 00080c3c: *One-Digit Experience*
00080c40 - 00080cf4: *Two-Digit Experience*
00080cf8 - 00080d80: *One-Digit JP*
00080d84 - 00080e38: *Two-Digit JP*
00080e3c - 00080e78: *"No Target" Display*
00080e7c - 00080eb8: *"Silenced" Display*
00080ebc - 00080f00: *"No MP" Display*
00080f04 - 00080f40: Something to do with palette?
00080f44 - 00080fe8: Prep for Displaying Earned Exp/JP
00080fec - 000810a0: Activate numerical sprite data?
000810a4 - 00081974: More post action display?
00081978 - 00081984: Store unit animation and facing value
00081988 - 000819a4: Store unit animation/facing/someothervalue
000819a8 - 00081a04: Get some Spritesheet data address
00081ad0 - 00081adc: r2 = 0x800b669c
00081ae0 - 00081aec: r2 = 0x800b6edc
00081b0c - 00081b84: Store some coordinate data
00081b88 - 00081c18: Store some movement coordinate data
00081c60 - 00081d50: Save Spritesheet ID to spritesheet data
00081d54 - 0008210c: Weather/time of day/tile palette modification
00082110 - 000822b8: Special spritesheet ID palette mods?
000822bc - 00082464: palette mod by status
00082468 - 00082504: check for tile, status palette mod
00082508 - 0008254c: Determine Status Bubble Activation Byte | Status/? Misc ID checks
00082550 - 00082588: Transparent Check (for opacity?)
00082620 - 00082788: Set some display/anim data for weapon/evade types
0008278c - 00082888: Movement validation - float/fly?
0008288c - 00082a40: Target spritesheet calculations?
00082a44 - 00082b18: Set animation for Item abilities
00082b1c - 00082b7c: Store attack animation flags and facing 1
00082b80 - 00082c0c: Set attack animation flags and facing 2
00082c10 - 00082cc0: Set attack animation flags and facing 3
00082cc4 - 00082d4c: Set Level up/Job level up animations?
00082eec - 000831b4: Set Animation based on status
000831b8 - 00083468: More animation based on status, death sound effects
0008346c - 0008356c: Poach/Morbol Transformation Can change spritesheet ID here
00083570 - 00083754: Sprite changing stuff? crystal, frog, etc.
00083758 - 00083850: Set thrown item graphic/palette also throw stone
00083874 - 00083974: Set attacker animation for shield block
00083978 - 00083c54: Set targets animation based on attack type
00083c58 - 00083cd0: Sprite display setting for all units based on attack
00084214 - 000846ac: Update Sprite display data
000846b0 - 00084754: Something to do with unit facing?
00084818 - 00085230: ??? Has damage display hardcording for arm aim/lucavi abilities
- 00084a34 - 00084a70: Blank effect animation (0xFFFF) Ability ID Hardcoding
0008526c - 00085a14: Load WEP graphic from WEP1 Sheet
000865a4 - 0008663c: Process Status Bubble Display
00087a28 - 00088014: Misc unit data initialization
0008b834 - 0008b85c: Set Camera Zoom Parameters
0008b860 - 0008b8f0: Set Camera Rotation Values
0008bf1c - 0008bf80: 0x8bf1c
0008c364 - 0008c39c: Store script = 0x3a This happened after I accepted a team at Formation. Music had not started yet. (FFM)
0008c410 - 0008c438: Get Unit Screen Location Data Pointer
0008ca48 - 0008ca78: 0x8ca48 | get misc data, do something else if none found
0008ce20 - 0008ce74: Get Unit Misc ID By Unit Index
0008ced0 - 0008cef8: Find Unit's Misc Data Pointer (+0x15c)
0008d138 - 0008d188: store mimicking misc data, existence/entd checks
0008dc24 - 0008dc70: Get Unit's Spritesheet Value
0008dc9c - 0008dcc0: Find Unit's Misc Data Pointer and Load Spritesheet Value
0008dd10 - 0008dda4: Start New Effect
0008dee8 - 0008df0c: Set Event Speed Inner
0008df10 - 0008df44: Store Selected Tile Coordinates
0008df48 - 0008df74: Store Map Max Coordinates
0008df78 - 0008dfa8: Get Tile Data Pointer From Unit Misc ID
0008e17c - 0008e1f4: ? 0x8e17c
0008efb4 - 0008f12c: Color Screen Related (0x8efb4)
0008f710 - 00090044: Palette Modification
00090840 - 00090c44: Map Darkness
00092620 - 000926d4: Extract Colors Data | Extract RGB+Alpha from Palette
000926d8 - 000927b8: Extract Palette Data | Get Palette Data
00092f98 - 00093044: ? 0x92f98
00093170 - 000931c0: Color Field
000934d0 - 00093500: Map Darkness Wrapper
00093654 - 000937f4: ? 0x93654
00093c98 - 000e729c:
000e840c - 000ec714: Background Tile Color For Targeting/Movement
000ec718 - 000ee100: Background Tile Color For Targeting/Movement (Partial Tiles)
000f5aec - 0011467c:
00114680 - 0011474c: Math Skill targeting calculations
00114750 - 0012cce4:
0011acdc - 0011aeec: Throw Determination Routine
0012cc54 - 0012cf40: Set Tile Background Color (Partial Tiles)
0012cf44 - 0012d2b0: Set Tile Background Color
0012d61c - 0012da08:
0012dde8 - 0012df08: Battle Camera Initialize
0012df98 - 0012e18c: ? 0x12df98
0012f04c - 0012f108: ? 0x12f04c
00132824 - 00132858: Prep for Loading Text
001330e4 - 0013312c: Copy Unit Screen Location Data
00133150 - 00133154: jr r31
00133158 - 00133490: Get misc ID (goes through a bunch of event command checks and more)
00133588 - 00133750: Store level,exp, HP/MP hardcoding, store CT
00133754 - 00133c94: Store units small in battle display data
00133c98 - 00133ce8: Has Status Effect (For Status Window)
00133cec - 00133eec: Display Inner Character Window
001340ac - 0013417c: Dismiss Unit Event Instruction
00134438 - 001346f0: Display Height
001346f4 - 0013493c: Height Number Display Setup
00134a74 - 001352b8: Display Projected Action Effect
00136b10 - 00136bcc: Get Item Graphic Data
00137c10 - 00137ed0: Handle Menu Action
00138094 - 00138170: ? 0x138094
00138174 - 001383c4: ? 0x138174
00138ed8 - 001390b8: Display Simple Selection Menu | Move/Act/Wait menu Idle routine
00136b10 - 00136bcc: Get Item Graphic Data
0013b590 - 0013b640: Get Script Variable
0013b644 - 0013b6e0: Set Script Variable
0013bb70 - 0013bbe8: ? 0x13bb70
0013bc14 - 0013bcb8: Load File
0013bfbc - 0013c024: Display Triangle Selection Menu
0013c284 - 0013c2d8: ? 0x13c284
0013c3a4 - 0013c568: Equip Change Routine
0013c710 - 0013c73c: Show Graphic (Outer Routine)
0013cf58 - 0013d0a8: menu Routine
0013d634 - 0013d700: Store unit names and some event block data
0013da00 - 0013da24: Set Event Speed
0013db9c - 0013dfac: Camera Fusion Event Instruction
0013dfb0 - 0013e544: Camera Fusion Inner Routine
0013e5c0 - 0013e658: Walk To Event Instruction
0013e904 - 0013edd4: Block Start Event Instruction
0013f520 - 0013f664: Data setting from menu selections
0013f668 - 0013f768: Store Selected Tile Data
0013f76c - 0013f7a8: Initialize menu counters
0013f7b4 - 0013f8b0: Store some data for menus
0013fa6c - 00140224: Main Skillset/ability loading (abilities greyed/blinking red)
001404cc - 00140728: Main act menu loading
00140a30 - 00140b00: Disable Move/Act based on menu ID
00140ed4 - 0014115c: Ability selected routine
001411b4 - 00141460: Set used item based on skillset
- Bad name for this routine, I think it does much more important shit
- Change loaded skillset here to make non-default abilities work in default skillset
00141464 - 00141650: Store message/menu type
0014171c - 00141758: Store main target ID/auto battle
0014175c - 001419b4: Spell Quote determination
001419b8 - 00141a88: System function setup routine
00141b0c - 00142504: System function routine
- 00141c14 - 00141cb8: Gameover checks (both)
- 00141db0 - 00141e24: Gameover (party incapacitated) checks
- 00142074 - 001420e0: Calculator skillset loading?
- 0014227c - 001422f4: recieve item whos quantity = 99 (increase gil)
- 001422f8 - 00142334: Increment item quantity
00142508 - 001425ac: Get Battle Unit By Unit ID (For scenario conditionals?)
001425b0 - 00142688: Process Scenario Conditionals
00142694 - 00142b58: Process Scenario Conditional
00142bd0 - 00142c20: ? 0x142bd0
00142c24 - 00142ca4: ? 0x142c24
00142ca8 - 00142d28: ? 0x142ca8
00142d2c - 00142d54: ? 0x142d2c
00143418 - 001439bc: ? 0x143418
00143bd8 - 001449f8: Event Instruction Main Routine 1
001449fc - 00145750: Event Instruction Main Routine 2
- 00145268 - 00145298: Event Instruction 0x76: DarkScreen
- 001452d8 - 00145320: Event Instruction 0x78: DisplayConditions
- 001455d8 - 00145648: Event Instruction 0x44: Draw
00145754 - 00145f70: Event Instruction Main Routine 3
- 00145964 - 001459c4: Event Instruction 0xe5: WaitForInstruction
- 001459e8 - 00145a34: Event Instruction 0xf1: Wait
- 00145e10 - 00145e68: Event Instruction 0x91: ShowMapTitle
00145f78 - 00146000: ? 0x145f78
00146078 - 00146090: Load Halfword | Load event command bytes
00146094 - 001460a0: Store Halfword
00146110 - 001466b0: Camera Event Instruction
001466b4 - 00146728: Map Darkness (Async)
001467dc - 0014693c: Color Screen Event Instruction
00146940 - 00146ee0: Sprite Move
00146ee4 - 00146f1c: Sprite Move (Outer)
0014703c - 001472d8: Map Light (Async)
001474a4 - 00147580: ? 0x1474a4
00147584 - 0014777c: Focus Event Instruction
00147780 - 00147914: Focus Speed Event Instruction
00147e60 - 00147fa8: Warp Unit
00149398 - 0014948c: Unit Anim
001495e0 - 00149688: Color Unit Event Instruction
00149bec - 00149c44: Get Next Available Thread ID
00149d48 - 00149d68: Set Thread Task ID
00149ebc - 00149f0c: Find Event Instruction Byte Offset
0014a018 - 0014a2e8: Run Script Variable Command Jumped to from subroutines of steal routine - Calculate party inventory?
0014a3f8 - 0014a460: Wait Value Event Instruction
0014a5e8 - 0014a65c: Image Loading Setup (0x14a5e8)
0014a6cc - 0014a6e0: ? 0x14a6cc
0014a82c - 0014a830: jr r31
0014a834 - 0014aa78: Image loading setup? (0x14a834)
0014b2f0 - 0014b31c: Display Menu Text Entry
0014b320 - 0014b34c: Display Menu Text Entry (Unused?)
0014b350 - 0014b390: Display Specific Menu Text
0014b394 - 0014ba24: Display Menu Text | Giant message/menu loading routine
0014ba28 - 0014bae0: Find Next Text Character
0014bf54 - 0014bf78: Copy Bytes (0x14bf54)
0014c4a8 - 0014c754: ? 0x14c4a8
0014c858 - 0014c89c: Wait (Switch To Next Thread Multiple Times)
0014c8a0 - 0014c920: Initialize Thread
0014c924 - 0014c93c: Mark Thread As Running
0014c940 - 0014c954: Mark Thread As Stopped
0014c958 - 0014c990: Stop Current Thread
0014c9d0 - 0014ca18: Wait For Thread
0014ca38 - 0014ca54: Store event command bytes
0014ca58 - 0014ca7c: Store event command bytes 2
0014ca80 - 0014cbb0: Some event data setting routine runs many many times, jr r31's to a new location
0014cbb4 - 0014cbbc: Return Global Pointer
0014cbc0 - 0014cbf0: Get First Thread Parameter | Get menu address?
0014cbf4 - 0014cc24: Get Second Thread Parameter
0014cc94 - 0014ccb4: Check Thread Running Status
0014ce78 - 0014ceb0: Find Text ID's Location
0014ceb4 - 0014cf54: Call Inner Subroutine
0014cf68 - 001743c4:
00174068 - 0017436c: Return addresses
001743c8 - 0017442c: Chocobo Check
00174430 - 00174b88: Store movement stuff into scratch pad
00175958 - 00175e9c: Movement routine Highlights panels blue
00176c10 - 00176c8c: Contains teleport chances
001780ec - 00178138: Calculate WalkTo Pathing
0017813c - 00178ca0: Calculate Pathing
00179204 - 00179258: Moldball Virus Depth Check
0017925c - 001792a0: Clear Some stuff for Untargetable Terrain
001792a4 - 001793fc: Check Vert Tolerance and if Tiles can be Chosen
00179400 - 00179420: Null some Tile Data (192dd9)
00179424 - 00179514: Remove Close Range Routine
00179518 - 00179638: Calculate Tiles Hit by Ability
0017963c - 001797b0: Calculate Possible AoE Tiles
001797b4 - 001798ac: Depth Calculation
001798b0 - 00179a1c: Set initial panels
00179a20 - 00179b54: Set targeting for weapon attack?
00179b58 - 00179c98: Striking/lunging modification
00179c9c - 00179d80: Depth Calculation 2???
00179d84 - 00179dc4: Remove ???? targets
00179dc8 - 0017a168: Set Ability Targeting?
0017a16c - 0017a28c: calculate ability range with map parameters?
0017a290 - 0017a514: Set panels affected by ability?
0017a518 - 0017a5b8: Set targeting for weapon attack 2
0017a5bc - 0017a648: Set all panels targeted if targetable
0017a64c - 0017a6d8: Remove Selection state of all panels
0017a6dc - 0017a7b8: Set target state for all units panels
0017a7bc - 0017a8bc: another targeting routine
0017a8c0 - 0017aaf4: Calculate ability range based on action menu byte
0017aaf8 - 0017ac8c: Calculate Targeting for Menu Types
0017ac90 - 0017afbc: Targeting validation (weapon flags)
0017afc0 - 0017b3f0: Auxilary targeting validation
0017b3f4 - 0017b49c: Height/coordinate validation
0017b4a0 - 0017b4cc: Disable Green Panel Flags (initialization?)
0017b4d0 - 0017b7b0: Calculator Routine
0017b7b4 - 0017b870: Disable Green Panel on all but Target's Tile
0017b874 - 0017bc74: Targeting routine
0017bc78 - 0017bdcc: Check Allies/Enemies that can be Targeted
0017bdd0 - 0017be64: Check if Unit can be Targeted
0017be68 - 0017c040: Linear/3-direction AoE Calculation
0017c044 - 0017c154: Linear Attack Tile Calculation
0017c158 - 0017c3b4: Calculate Height Data
0017c3b8 - 0017c3d8: Call Attack Preparation (ability selected)
0017c3dc - 0017c458: Call Attack Preparation (AT list preview)
0017c45c - 0017c908: Attack Preparation
0017c90c - 0017c950: Unit exists/party member checkReturns 0x16e in unit data
0017c954 - 0017c9b4: Player Item Quantity decrement
0017c9b8 - 0017cac8: Prep Current Action Data
0017cacc - 0017cd20: Reaction Target/Hit Calculation
0017cd24 - 0017ce40: Map calculations for attack Attack, charge, ranged weapon flag
0017ce44 - 0017d34c: Main ability loading routine?
0017d350 - 0017d40c: set target coordinates for ability? also set regenerator target
0017d410 - 0017d49c: draw out routine dealing with experience gain
0017d4a0 - 0017d704: Current Action Ability Data Setting / Multi Hit Formulas
0017d708 - 0017d84c: Targeting/panel routine
0017d850 - 0017da1c: more map/panel targeting
0017da20 - 0017dbc4: Ability Usage Checks and MP Reduction
0017dbc8 - 0017dc84: Store Some Acting Unit Data
0017dc88 - 0017dca4: Get ID of Unit if Tile is Targetable
0017dca8 - 0017decc: Find Unit at Specified Coordinates | Check if another unit is on the same Tile
0017ded0 - 0017def8: Clear targeting panel data?
0017defc - 0017e174: Big... Contains Hamedo check
0017e178 - 0017e58c: Main reaction routine?
0017e590 - 0017e64c: Counter magic targeting?
0017e650 - 0017e77c: Store counter ability?
0017e780 - 0017e7e0: Auto Potion
0017e7e4 - 0017ea24: Gained JP Up Section
0017ea28 - 0017ea7c: Load Job Level
0017ea80 - 0017ec14: Store JP; Calculate Unlocked Jobs
0017ec18 - 0017f01c: big map/panel routine
0017f020 - 0017f0e8: Float/Float/Fly movements
0017f0ec - 0017f178: Move Cap?
0017f17c - 0017f2d4: Calculate Projected Action Effect
0017f2d8 - 0017f318: Get Elemental Ability ID
0017f31c - 0017f384: Initialize party members Job data, Sp cap, Status initialization
0017f388 - 0017f5f4: Initialize units battlefield data(ENTD ID/flags, Map location, palette, control, etc.)
0017f5f8 - 0017f61c: Initialize players battlefield units
0017f620 - 0017f63c: Initialize enemy battlefield units
0017f640 - 0017f6c0: Set unit placement and validate
0017f6c4 - 0017f89c: Validate unit placement
0017f8a0 - 0017fbe8: Load ENTD Units | Big ENTD unit loading routine
0017fbec - 0017fcc4: ENTD AI?
0017fcc8 - 0017fd04: Disable/Remove unit
0017fd08 - 0017fd7c: Check for unit availability(existance) and ENTD level setting
0017fd80 - 0017fda8: Set unit cannot exist(but can), return r2 = 0
0017fdac - 0017fdd8: Erase unit, set to be removed from party
0017fddc - 0017ffbc: Set Rider/Mount's X/Y Data
0017ffc0 - 00180130: Set target for mounted unit, move find item/trap
00180134 - 00180174: Get movement support flags (move-MP/HP/EXP/JP up)
00180178 - 0018020c: Remove charging status/ability CT
00180210 - 0018022c: Disable acting statuses
00180230 - 001802c4: Rare/common item determination
001802c8 - 001804c0: Set map Item/trap data
001804c4 - 0018052c: Move find item flag calculation
00180530 - 00180900: Generate Crystal or Treasure
00180904 - 00180a04: Learn from Crystal
00180a08 - 00180af8: Generate Treasure
00180afc - 00180b28: Get Unit's Data Pointer
00180b2c - 00180c8c: Check Base Class | Ramza Causes Game Over
00180c90 - 00180dac: Find Unit Data Pointer For ENTD Unit ID | Unit Existence/crystaltreasure check Uses 0x183 byte, 0x161 ENTD ID
00180db0 - 00180dfc: Party level XX modification?
00180e00 - 00180f3c: Find War Trophies and Bonus Money | Store some ENTD Data(War Trophy, gil), party level calculation
00180fe4 - 0018109c: Prep for Special Status Flag Enabling
001810a0 - 001810d0: Map Location Calculation
001810d4 - 00181110: Get Existent Battle Unit Pointer | Load unit Data (exists check within)
00181114 - 00181148: Find Active Unit Data Pointer?
0018114c - 001811f4: Get Menu ID based on mount, moveable/actable
001811f8 - 00181308: Player Control Routine?
0018130c - 001813bc: Weapon Guard Usability (Check if Unit can React)
001813c0 - 00181580: Player Skill Set
00181584 - 0018171c: Skillset Loading?
00181720 - 001817bc: Ability Loading?
001817c0 - 00181b6c: Load ability data for skillset (MP, CT, req. sword booleans)
00181b70 - 00181b90: Item Inventory Ability Display
00181b94 - 00181cb4: Item Ability Loading
00181cb8 - 00181cd8: Throw
00181cdc - 00181eec: Throw Determination Routine
00181ef0 - 00181f10: Math Skill Ability Display
00181f14 - 00181f34: Math skill ability loading routine
00182068 - 001821c8: Math Skill ability loading
001821cc - 001822c8: Elemental ability loading
001822cc - 0018242c: Monster skill, frog attack ability loading
00182430 - 00182504: Monster Skill check prep
00182508 - 00182660: Monster Skill check
00182664 - 00182684: Draw Out
00182688 - 00182784: Draw Out 2 (main routine)
00182788 - 001827b0: Call ??? Skillset Loading
001827b4 - 001827ec: ??? Skillset Loading
001827f0 - 00183074: In between turn control routine
- 0018282c - 001828ac: Initialize data?
- 001828b0 - 00182920: Validate mime action?
- 00182924 - 00182978: Set active turn
- 001829b8 - 00182a40: Next clocktick - CT increment
- 00182a44 - 00182ba8: Dead processing, next turn processing (100CT)
- 00182bac - 00182c04: Ability CT decrement
- 00182c08 - 00182c8c: Post-ability CT setting
- 00182c90 - 00182ce4: Status CT decrement
- 00182ce8 - 00182d4c: Set Mime bytes
- 00182d50 - 00182d88: Clear Mime bytes
- 00182d8c - 00182dfc: Find highest CT
- 00182e00 - 00182e6c: Validate units turn
- 00182e70 - 00182ea8: Poison and regen
- 00182eac - 00182ee4: Poison marsh
- 00182ee8 - 00182f30: Transparent Removal
- 00182f34 - 00182fa0: Check if mimicable ability occurred
- 00182fa4 - 00183074: Mimic ability setting
00183078 - 001832c8: Death sentence, crystalization, treasurization, etc also reraise, defend removal, chicken brave increment
001832cc - 00183370: Status checks
00183374 - 001834b8: Gameover by party incapacitated
001834bc - 00183540: Check some list for Unit Battle ID
00183544 - 001835a4: Calculate AT List and Get Specific Unit ID
001835a8 - 001835f4: Unit doesn't exist/deadcrystaltreasurepetrify/being ridden check
001835f8 - 00183708: AT List Preview?
0018370c - 00183ac8: Calculate AT List
00183acc - 00183ba4: AT List Sorting
00183ba8 - 00183bc8: Set Only Action Taken
00183bcc - 00183bec: Set Only Movement Taken
00183bf0 - 00183c68: Set move/act flags used in defend/equip change routines
00183c6c - 00183d0c: End of Turn
00183d10 - 00183d6c: Able to move/act checks (Menu?)
00183d70 - 00183ddc: Change of Turn check
00183de0 - 00183dfc: Enable/disable acting status
00183e00 - 00183e38: another intermediate routine
00183e3c - 00183e90: Unit exists checks
00183e94 - 00183e9c: Activates move/act
00183ea0 - 00183f5c: something involving map coordinates
00183f60 - 00183fb0: Load Move Find-Item data to Current Map
00183fb4 - 00184018: Get Tile Data Pointer | Deals with map coordinates 1
0018401c - 00184148: Return Various Tile Data
0018414c - 001842f4: deals with map coordinates 3
001842f8 - 00184308: Clear r2 2
0018430c - 00184338: Force Attack Miss
0018433c - 0018435c: Cause Action Miss | Force Attack Miss?
00184360 - 001843e8: Dance/Song hit % Returns if attack hit or not
001843ec - 0018460c: Knockback Calculation
00184610 - 001848d4: Knockback 2
001848d8 - 00184960: Attack Evaded Calculations
00184964 - 00184b20: Compatibility
00184b24 - 00184e3c: Modify Status Inflictions | Validate Status Changes
00184e40 - 00184e94: Elemental Nullification Nullify Action - Glain
00184e98 - 00184f98: Elemental Damage Modification
00184f9c - 001851c0: Equipment Evasion Setting (Physical)
001851c4 - 001852e0: Equipment Evasion Setting (Magical)
001852e4 - 00185324: Concentrate Calculation
00185328 - 00185378: Dark/Confuse Caclulation
0018537c - 001853f0: Abandon Calculation
001853f4 - 001854b4: Evasion Changes due to Statuses
001854b8 - 001854f8: Transparent Calculation
001854fc - 00185734: Facing Evade Calculation
00185738 - 00185810: Weather effects on Bows
00185814 - 00185a98: Calculate Final Hit %
00185a9c - 00185c90: Base XA Calculation
00185c94 - 00185cbc: Store MA and Y
00185cc0 - 00185cfc: Base XA and YA for MA + Y / 2
00185d00 - 00185d3c: Store PA and PA + Y / 2
00185d40 - 00185d7c: Store MA and PA + Y / 2
00185d80 - 00185da8: Store MA and X
00185dac - 00185dd4: Store PA and X
00185dd8 - 00185e00: Store PA and WP
00185e04 - 00185e2c: Store PA and Y
00185e30 - 00185e58: Store Speed and X
00185e5c - 00185e90: Store PA and WP + Y
00185e94 - 00185f7c: Formula 64 or Jump Base XA / YA
00185f80 - 00185fa0: Charge Calculation
00185fa4 - 00185ff8: Weapon Element Strengthen
00185ffc - 00186050: Elemental Strengthen
00186054 - 00186148: Attack UP/Two Hands/Martial Arts
0018614c - 00186200: Formula 32, 33, 34, 35 Attack Up and Martial Arts
00186204 - 00186250: Magic Attack Up routine
00186254 - 001862c8: Attacker Berserk/Frog Check
001862cc - 00186318: Defense UP routine
0018631c - 00186368: Magic Defense Up routine
0018636c - 0018645c: Target XA affecting Statuses (Physical)
00186460 - 001864f4: Target's Status Affecting XA (Magical)
001864f8 - 00186564: Critical Hit Calculation
00186568 - 00186598: XA * YA Calculation
0018659c - 00186620: Set XA + YA for Status Formulas (Stupid section)
00186624 - 00186688: Calculate % of damage
0018668c - 001866e8: MP Damage Routine (Uses Y instead of X.)
001866ec - 00186740: Gravi2 Damage Routine
00186744 - 00186810: Steal Gil
00186814 - 001868ec: Set EXP Stolen
001868f0 - 00186918: Formula 36
0018691c - 001869e8: Damage and Knockback Routine (Dash, tackle, throw stone)
001869ec - 00186af4: Song abilities
00186af8 - 00186c00: Dance abilities
00186c04 - 00186cfc: Talk Skill
00186d00 - 00186d28: 3A +Brave (Y)
00186d2c - 00186d54: 39 +SP (Y)
00186d58 - 00186db8: 3B +Brave (X) +PA/MA/SP (Y)
00186dbc - 00186e24: 3C Heal (CasMaxHP*2/5) DmgCas (CasMaxHP/5)
00186e28 - 00186e50: 43 Dmg (CasMaxHP-CasCurHP)
00186e54 - 00186e74: 44 Dmg (TarCurMP)
00186e78 - 00186ea0: 45 Dmg (TarMaxHP-TarCurHP)
00186ea4 - 00186ecc: Y brave
00186ed0 - 00186fcc: Weather Elemental effects?
00186fd0 - 00186ff4: Elemental Damage Modification (Prep)
00186ff8 - 001870f8: Ability Elemental? Apply Elemental - Glain
001870fc - 0018714c: Elemental Absorption
00187150 - 00187244: Faith Calculation
00187248 - 0018734c: HP Absorbtion (Seems needlessly complex)
00187350 - 001873d4: Undead Reversal
001873d8 - 00187468: Undead Absorb Attack
0018746c - 001874e8: MP Recovery Routine -MP Absorb*
001874ec - 0018750c: Convert HP Damage into MP Recovery
00187510 - 001875b8: Use Specific Action Hit Percentage | Set XA*YA as hit%
001875bc - 001875f8: Dragon Check
001875fc - 00187634: Sleep Check
00187638 - 0018768c: Maintenance
00187690 - 001876e0: Conditional Status Proc Roll (19%) Inner Routine
001876e4 - 0018772c: Store Reaction/Proc ID and Target
00187730 - 00187838: Magic Gun Ability Decision
0018783c - 0018785c: Quick Effect
00187860 - 0018790c: Determine which stat will be reduced
00187910 - 001879c4: Katana Break Chance
001879c8 - 00187c9c: Steal/Break/Might Sword Hard Coding
00187ca0 - 00187eb0: Formula 01 - 06 Aftermath
00187eb4 - 00187f20: Apply status (to action) - (Preserve hit status, evade type, hit %)
00187f24 - 00188284: Apply status (to action) Formula 38
00188288 - 001882c4: MP Healing Item Formula
001882c8 - 001882f4: 100% HP/MP Healing (actual)
001882f8 - 001883a8: Finger Guard
001883ac - 00188484: Catch
00188488 - 001884bc: Calculate Hit %
001884c0 - 0018850c: Conditional Status Proc Roll (19%)
00188510 - 00188564: Physical Evade Calculation
00188568 - 001885b4: Physical Evade Calculation(Charge)
001885b8 - 001885f4: Magical Evade Calculation
001885f8 - 00188634: Physical XA Modifying Statuses/Support
00188638 - 001886a0: Weapon Damage Calculation
001886a4 - 001886d0: Damage Calculation
001886d4 - 00188718: Routine used in formula 2B
0018871c - 00188740: Elemental Absorb and status roll 19% conditional status
00188744 - 00188778: Magical Support/Status/Compat
0018877c - 001887c0: Elemental XA * YA
001887c4 - 001887fc: Elemental Absorb/Status
00188800 - 00188854: MA + X
00188858 - 00188884: Magical XA * YA
00188888 - 00188960: Calculate Accuracy as User Faith * (MA + X)%
00188964 - 001889a0: Truth/Formula 5E-5F Magical damage
001889a4 - 001889c8: 2Truth/Formula 5E-5F Calculate damage
001889cc - 00188a20: Calculate Accuracy for Magical Spells
00188a24 - 00188a80: Calculate Accuracy for Magical
00188a84 - 00188ad8: MA + X without faith
00188adc - 00188b10: Cluster of Physical Routines
00188b14 - 00188b60: Physical Routine for Hit % abilities
00188b64 - 0018ac70: Formulas
00188b64 - 00188ba0:01 Dmg_(Weapon)
00188ba4 - 00188be0:02 Dmg_(Weapon)
00188be4 - 00188c20:03 Dmg_(WP^2)
00188c24 - 00188c98:04 Magic Gun
00188c9c - 00188cf0: 05 Dmg (Weapon)
00188cf4 - 00188d38: 06 AbsHP (Weapon)
00188d3c - 00188d80: 07 Heal (Weapon)
00188d84 - 00188df0: 08 Dmg F(MA*Y)
00188df4 - 00188e74: 09 Dmg (Y/100)% Hit F(MA+X)%
00188e78 - 00188eb4: 0A Hit F(MA+X)%
00188eb8 - 00188ef4: 0B Hit F(MA+X)%
00188ef8 - 00188f34: 0C Heal F(MA*Y)
00188f38 - 00188f8c: 0D Heal (Y)% Hit F(MA+X)%
00188f90 - 00189080: 0E Dmg (Y)% Hit F(MA+X)% 100% Status Hide Status
00189084 - 001890d8: 0F AbsMP (Y)% Hit F(MA+X)%
001890dc - 00189120: 10 AbsHP (Y)% Hit F(MA+X)%
00189124 - 00189160: 11 (does nothing), 12 Set Quick Hit F(MA+X)%
00189164 - 001891a8: 13 (does nothing), 14 Set Golem Hit CasF/100*(MA+X)%
001891ac - 00189200: 15 Set CT00 Hit F(MA+X)%
00189204 - 00189258: 16 DmgMP (TarCurMP) Hit F(MA+X)%
0018925c - 00189298: 17 Dmg (TarCurHP-1) Hit F(MA+X)%
0018929c - 001892a8: 18, 19 (does nothing)
001892ac - 00189338: 1A Hit F(MA+Y)% // -PA/MA/SP (X)
0018933c - 00189378: 1B DmgMP (MA+Y)% Hit F(X)%
0018937c - 001893d4: 1C Hit (X)% Sing
001893d8 - 00189430: 1D Hit (X)% Dance
00189434 - 00189460: 1E Dmg ((MA+Y)*MA/2)
00189464 - 001895c0: 1F Dmg ((100-CasF)*(100-TarF)*(MA+Y)*MA/2)
001895c4 - 001895f0: 20 Dmg (MA*Y) Draw Out
001895f4 - 00189650: 21 DmgMP (MA*Y) Draw Out
00189654 - 00189678: 22 Draw Out Hit 100%
0018967c - 001896b0: 23 Heal (MA*Y) Draw Out
001896b4 - 001896e8: 24 Dmg ((PA+Y)/2*MA)
001896ec - 00189790: 25 Equipped: Break Hit (PA+WP+X)%
00189794 - 00189824: 26 Equipped: Steal Hit (SP+X)%
00189828 - 0018986c: 27 StealGil (CasLVL*SP) Hit (SP+X)%
00189870 - 0018990c: 28 StealExp (Lowest of TarCurExp & SP+Y) Hit (SP+X)%
00189910 - 001899a0: 29 OppositeSex: Hit (MA+X)%
001899a4 - 00189a8c: 2A Hit (MA+X)% // AffectBraveOrFaith(Y)
00189a90 - 00189ad4: 2B Hit (PA+X)% // -PA/MA/SP (X)
00189ad8 - 00189b1c: 2C DmgMP (X)% Hit (PA+Y)%
00189b20 - 00189b90: 2D Dmg (PA*(WP+Y)) 100% Status
00189b94 - 00189c4c: 2E Equipped:Break Dmg (PA*WP)
00189c50 - 00189c8c: 2F AbsMP (PA*WP)
00189c90 - 00189ccc: 30 AbsHP (PA*WP)
00189cd0 - 00189d70: 31 Dmg ((PA+Y)/2*PA)
00189d74 - 00189e24: 32 Dmg (Rdm(1…X)*(PA*3+Y))
00189e28 - 00189e90: 33 Hit (PA+X)%
00189e94 - 00189f04: 34 Heal (PA*Y) HealMP (PA*Y/2)
00189f08 - 00189f80: 35 Heal (Y)% Hit (PA+X)%
00189f84 - 00189fc8: 37 Dmg (Rdm(1…Y)*PA)
00189fcc - 0018a008: 3D Hit (MA+X)%
0018a00c - 0018a028: 3E Dmg (TarMaxHP-1)
0018a02c - 0018a084: 3F Hit (SP+X)%
0018a088 - 0018a110: 40 Undead: Hit (SP+X)%
0018a114 - 0018a178: 41 Hit (MA+X)%
0018a17c - 0018a214: 42 Dmg (PA*Y) DmgCas (PA*Y/X)
0018a218 - 0018a24c: 46 (doesn't work), 47 AbsHP (Y)% 100% Status
0018a250 - 0018a2a0: 48 Heal (Z*10)
0018a2a4 - 0018a2c0: 49 HealMP (Z*10)
0018a2c4 - 0018a2e8: Formula 4a - Elixir
0018a2ec - 0018a39c: 4B Heal (Rdm(1..9)) 100% Status
0018a3a0 - 0018a3cc: 4C Heal (MA*Y)
0018a3d0 - 0018a41c: 4D AbsHP (Y)% Hit (MA+X)%
0018a420 - 0018a454: 4E Dmg (MA*Y)
0018a458 - 0018a49c: 4F Dmg (CasMaxHP-CasCurHP) Hit (PA+X)%
0018a4a0 - 0018a4e4: 50 Hit (MA+X)%
0018a4e8 - 0018a550: 51 Hit (MA+X)%
0018a554 - 0018a5e0: 52 Dmg (CasMaxHP-CasCurHP) 100% Add Status Caster in AoE: DmgSelf (CasCurHP)
0018a5e4 - 0018a664: 53 Dmg (X)% Hit (MA+X)%
0018a668 - 0018a694: 54 HealMP (MA*Y)
0018a698 - 0018a6f4: 55 –PA (Y) Hit (MA+X)%
0018a6f8 - 0018a754: 56 –MA (Y) Hit (MA+X)%
0018a758 - 0018a820: 57 +Lvl(1) NS 100% Add Status on Caster
0018a824 - 0018a904: 58 Generic: Set Morbol: Hit(MA+X)%
0018a908 - 0018a97c: 59 –Lvl(1) Hit (MA+X)%
0018a980 - 0018a9c0: 5A Dragon: Hit(100)%
0018a9c4 - 0018aa0c: 5B Dragon: Heal (Y)% 100% Add Status
0018aa10 - 0018aa50: 5C Dragon: +Brave (X) +PA/MA/SP(Y)
0018aa54 - 0018aa94: 5D Dragon: Set Quick
0018aa98 - 0018aac4: 5E Dmg ((MA+Y)/2*MA)
0018aac8 - 0018aaf4: 5F Dmg ((MA+Y)/2*MA)
0018aaf8 - 0018ab14: 60 Dmg ((MA+Y)/2*MA) 6.25 Status
0018ab18 - 0018ab54: 61 –Brave (Y) Hit F(MA+X)%
0018ab58 - 0018ab94: 62 –Brave (Y) Hit (MA+X)%
0018ab98 - 0018ac40: 63 Dmg (SP*WP)
0018ac44 - 0018ac70: 64 Dmg (PA * WP); if using Spear (PA * 3/2 * WP); if weaponless (PA * Brave /100 * WP)
0018ac74 - 0018acd8: remove transparent status if Jump is used?
0018acdc - 0018ad54: Pheonix down on undead
0018ad58 - 0018adf0: Double WP if two hands is equipped?
0018adf4 - 0018ae38: action data nulling
0018ae3c - 0018af28: Knockback?
0018af2c - 0018b270: Perform reaction abilities
0018b274 - 0018b348: Store used weapon based on action menu byte
0018b34c - 0018b9f4: Pre Formula Setup (FDC)
0018b9f8 - 0018ba40: Remove Status
0018ba44 - 0018bcec: set some data for current attack
0018bcf0 - 0018bd30: Called by Nullify Action - Glain
0018bd34 - 0018bd70: Remove Knockback Flag | ?Nullify steal item?
0018bd74 - 0018bdd0: Current Action Data Nulling
0018bdd4 - 0018be04: Null Some Status Data
0018be08 - 0018c67c: Main Reaction Routine - performs ability effects
0018c680 - 0018c754: Poach Inventory Routine
0018c758 - 0018c858: some kind of ENTD/Unit manipulation
0018c85c - 0018c91c: Level up/down ability
0018c920 - 0018c964: Check if unit can react 1
0018c968 - 0018c99c: Check if unit can react?
0018c9a0 - 0018c9e0: Reaction check?
0018c9e4 - 0018cafc: 'Reflect', Blade Grasp, and Arrow Guard
0018cb00 - 0018cc30: Sunken State, Caution, Dragon Spirit, etc. usability
0018cc34 - 0018ccd4: MP Switch, Distribute, and Damage Split usability
0018ccd8 - 0018ce00: PA Save, MA Save, Speed Save Regenerator, HP Restore, MP Restore, Critical Quick, Meatbone Slash, Auto Potion, Gilgame Heart check
0018ce04 - 0018ce84: Counter, Counter Tackle, Counter Flood, Brave Up, Dragon Spirit, Sunken State, and Caution Usability usability
0018ce88 - 0018cef0: PA Save, MA Save, Speed Save, Regenerator, Auto Potion, Gilgame Heart usability
0018cef4 - 0018cf70: Critical Quick, HP Restore, MP Restore, Meatbone Slash usability
0018cf74 - 0018cfe4: Face Up and Absorb Used MP usability
0018cfe8 - 0018d04c: Reflect Reaction?
0018d050 - 0018d0e4: Blade Grasp Usability
0018d0e8 - 0018d1b4: Arrow Guard Usability
0018d1b8 - 0018d2a4: MP Switch Usability
0018d2a8 - 0018d314: Distribute Usability
0018d318 - 0018d380: Damage Split Usability
0018d384 - 0018d3bc: Chance to React
0018d3c0 - 0018d56c: Steal Routine
0018d570 - 0018d61c: Stat Increment/Decrement
0018d620 - 0018d708: Attacker's Earned Experience
0018d70c - 0018d7c4: Store target stats pointer data calls main action loading routine
0018d7c8 - 0018d864: Poison and Regen
0018d868 - 0018d90c: Transparent removal routine
0018d910 - 0018da00: Process Expiring Statuses | status CT decrement and innate statuses?
0018da04 - 0018da40: Set Action Target Variables | target pointers
0018da44 - 0018da84: Crystal, Dead, Jump, Petrify, Treasure check
0018da88 - 0018dbac: Poison Marsh Routine
0018dbb0 - 0018dd40: Traps Routine
0018dd44 - 0018df08: Move-HP Up, Move-MP Up, Gained Exp Up
0018df0c - 0018dff4: Prep gained exp/jp/level/job level + other stuff?
0018dff8 - 0018e078: Main Reaction subroutine - ENTD/ID stuff - Calculate Unlocked Jobs/set ability element = dark?
0018e07c - 0018e1ac: Some status hardcoding dead hp=0, remove ability CT, remove player control
0018e1b0 - 0018e244: Remove control based on status
0018e248 - 0018e30c: Inflicted status CT setting, xfer last used CT
0018e310 - 0018e5e0: Store status,modified ENTD for current attack
0018e5e4 - 0018e624: Transfer Considered Action Data to AI
0018e628 - 0018e65c: Store current attack data into AI?
0018e660 - 0018e6b4: Used by Weather Elemental effects routine
0018e6b8 - 0018e8a8: Learn on hit 1
0018e8ac - 0018e9b8: Learn on hit 2
0018e9bc - 0018e9e4: Determine if Status Flags can be Enabled
0018e9e8 - 0018ea94: Item quantity increment for steal/break?
0018ea98 - 0018eb4c: Add price of item / 4 to total gil
0018eb50 - 0018ec0c: Handle Steal Exp | Apply Exp gain / Level up
0018ec10 - 0018ec40: Store targeting/executing state, call 18e07c
0018ec44 - 0018ed78: More status infliction/removal also deals with innate status
0018ed7c - 0018edf4: Sort target list at 80193868
0018edf8 - 0018ee20: Store ability data 80193868 + 0x10 bytes
0018ee24 - 0018ee64: Count number of targets hit by ability
0018ee68 - 0018ee9c: store 8019837c if not reacting?
0018eea0 - 0018eed4: Random Process, gives a number between 0-7fff
0018eed8 - 0018ef28: Random Process, (gives a random based on r4 (MOD) and checks against r5 (chance to work))
0018ef2c - 0018ef30: jr r31
0018ef34 - 0018f034: Current Action Attacker Data Setting
0018f038 - 0018f2ac: Mimic ability setting
0018f2b0 - 0018f4c4: Map Max X,Y, targetable panel checks
0018f4c8 - 0018f4d4: Load last used ability
0018f4d8 - 001941f4:
0018f510 - 0018f610: ????? Table
0018f624 - 0018f7a0: Formula Table
00193d48 - 00193e4c: AI Return addresses
00193e50 - 001941f4: Main AI action setup?
001941f8 - 00194310: Acting Unit's Data Setup (AI?)
00194314 - 0019456c: Set type of target for all targets
00194570 - 00194718: Some targetability setting
0019471c - 00194908: Set AI flags for target consideration
0019490c - 00194940: Store main target ID and focus on target flag
00194944 - 00194e54: AI movement/panel data setting
00194e58 - 001957bc: Set AI ability considerations for all units and self
001957c0 - 00195874: Some type of checking algorithm
00195878 - 00195d90: AI Ability Data Setting
- This is called when ability is chosen by AI, r4 = address of move in units move list
00195944 - 001959d0: Attack
001959d4 - 00195a20: AI Item Inventory
00195a24 - 00195a2c: Katana Inventory
00195a30 - 00195a8c: Weapon Inventory
00195a90 - 00195b9c: Jump
00195ba0 - 00195bb8: Charge
00195bbc - 00195bfc: Arithmeticks
00195c00 - 00195d90: Default
00195f6c - 00195f88: Initialize some AI Data (mount, base hit %)
00195f8c - 00196198: set current ability CT/status change
0019619c - 0019629c: Non-Specific AI AutoBattle (Enemies)
001962a0 - 00196308: Get Longest Range Ability or Move
0019638c - 00196898: Map movement decision/data setting
00196c8c - 00196ce4: Check target type (r2 = 1 if target can't be targeted/dead without? reraise)
00196ce8 - 00196dac: Check if Unit can be Targeted (Cryst/Trea/Mount/Trans)
001971b8 - 00197534: Set chosen ability/target for AI status (berserk, blood suck, confuse, frog, chicken)
00197538 - 001978e0: Store ability/skillset data, set AI settings for ability?
001978e4 - 00197958: Find Direction of Target
0019795c - 00197b28: Range Calculation?
00197c68 - 00197d08: Checks map max X and Y
00197d0c - 00197e5c: Find which units are active?
00197e60 - 00197f10: Chose Move from Move List?
00197f14 - 00197ff0: Auto Battle Handling
00197ff4 - 001982d4: Choose Target and Set a bunch of stuff
00198b04 - 00198d7c: Find Peril Most Unit (00198b04)
00198d80 - 00198dec: Check for 0x00 status
00199124 - 00199368: Calculate Physical? Target
0019936c - 0019939c: Calculate Distance Between Units
001994f8 - 00199718: See if able to move to target?
0019971c - 001998c4: Check for good units to target (based on distance,status,coordinate)
001998c8 - 001999c4: Check if Regen/Charm/DM/Reraise/DA Can be Inflicted
00199b98 - 00199c84: Calculate Clockticks Until Unit Acts
00199c88 - 00199d1c: Get number of clockticks till able to revive dead unit
00199d20 - 00199ec4: Store hardcoded AI stuff (blood suck, frog, berserk abilities)
00199ec8 - 0019a2c8: Usable Ability Setting/ENTD AI Calculations
0019a2cc - 0019a2ec: Dividend * 4 / Divisor
0019a2f0 - 0019a528: Set AI Flags/Usable Abilities
0019a52c - 0019a5f4: Store Weapon? Attack Data
0019a5f8 - 0019aa4c: Usable Ability Setting
0019a63c - 0019a66c: Part of the Weapon Inventory
0019a670 - 0019aa4c: Ability Loading
0019aa50 - 0019ab04: Load Known Ability Flag
0019ab08 - 0019ab44: Transfer Halfword Values
0019ab48 - 0019ab74: Transfer Byte Values
0019ab78 - 0019abb0: Word Nulling
0019abb4 - 0019ad70: Some Map calculations - height diff., coordinates
0019ad74 - 0019ae2c: Determine if Height Difference < 3
0019af18 - 0019b308: AI ability use control routine
0019b6b0 - 0019b750: Calculate Height Difference Between Units
0019b754 - 0019b7b4: See if elemental ability can be used
0019bb20 - 0019bbb8: Check Unit for Crystal or Treasure Status
0019cb94 - 0019cd98: Some height/Map coordinate calculation for all units
0019d218 - 0019d290: See if any units are on target panel
0019d294 - 0019d304: Find Unit at Coordinates (0x19d294) | Get unit that matches coordinates
0019d37c - 0019db7c: AI End of turn, in between turn, etc.
0019dcac - 0019dcb8: Store Skillset = 0
0019dcbc - 0019dd88: Call AI Ability Processing
0019dd8c - 0019e15c: AI ability processing
0019e160 - 0019e374: Transfer Unit Data to AI Data
0019e378 - 0019e53c: Transfer AI Data to Unit Data
0019e540 - 0019e5d4: See if any unit decided to use an ability
0019e5d8 - 0019ef20: AI Abiltiy Use Decisions
0019ef24 - 0019efac: Check if Status Should/Can be Added
0019f01c - 0019f0d4: Set unit untargetable based on 19f0d8 routine
0019f0d8 - 0019f158: See if ability should be used based on CT
0019f15c - 0019f254: Status/CT based decision
0019f258 - 0019f2a0: Save Coordinates to Temp Unit | Store units coordinates
0019f2a4 - 0019f2f0: Transfer Unit Coordinates to AI
001a0e80 - 001a0f6c: Effect Palette Setup
001a0fa0 - 001a0fd0: Set Effect Frame Data Pointer | Get Start of Frame Pointers Address
001a0fd4 - 001a100c: Get Start of Parameter Sets Address
001a1010 - 001a1040: Get Header before Motion Data Address
001a1044 - 001a1074: Get Coordinate Data Address
001a1078 - 001a10a8: Get Motion Data Address
001a10ac - 001a10e8: Get Misc. Data and Palette Data Addresses
001a10ec - 001a1194: Some sound effect prep
001a1198 - 001a11c8: Get ??? Data Address
001a12a4 - 001a12d8: Load LBA sector and Byte length of effect
001a13bc - 001a15b0: Effect Related (0x1a13bc) | Effect prep, default to cure if invalid LBA Sector
001a15b4 - 001a1810: Ability animation uses animation flags (Ball Hardcoding)
001a1814 - 001a1850: Load ability effect Stores pre-cast effects, has some hardcodings. Also transfers lots of important effect data to 0x1bad0c
001a1854 - 001a187c: Check if ability is Item ability Checks 0x0800 flag, returns 1 if not item effect
001a1880 - 001a18a0: Play Effect | Increment effect section address loading directive 801b63e8
001a18d8 - 001a1c3c: Effect Stage Processing | Effect Control Routine | Load Effect section addresses
001a1c40 - 001a1c8c: Effect Cycle Processing
001a1c90 - 001a1d24: Effect Related (0x1a1c90)
001a1d28 - 001a1d98: Effect Related (0x1a1d28)
001a1d9c - 001a2080: Effect Related (0x1a1d9c)
001a2084 - 001a20b0: Clear some data in temp effect data
001a20b4 - 001a20e4: Clear some data in temp effect data 2
001a20e8 - 001a2210: Effect Related (0x1a20e8) | Initialize temp effect data?
001a2214 - 001a2234: [[Effect code script >= 2E]]
001a2238 - 001a2258: Effect code script 00 - Store next half as new counter, return 0 This byte creates a loop in the header section
001a225c - 001a227c: Effect code script 01 - store next half as new counter, return 1
001a2280 - 001a22f4: Effect code script 02
001a22f8 - 001a2368: Effect code script 03
001a236c - 001a2370: Effect code script 04 End effect?
001a2374 - 001a23a4: Effect Code Script 0x05 | Effect code script 05 - Increment counter, store 2nd byte / 4 at 801bf000
001a23a8 - 001a2410: Effect code script 06
001a2414 - 001a2484: Effect code script 07
001a2488 - 001a2520: Effect code script 08
001a2524 - 001a255c: Effect code script 09
001a2560 - 001a2598: Effect code script 0A
001a259c - 001a2628: Effect code script 0B
001a262c - 001a2664: Effect code script 0C
001a2668 - 001a26a0: Effect code script 0D
001a26a4 - 001a2730: Effect code script 0E
001a2734 - 001a276c: Effect code script 0F
001a2770 - 001a27ac: Effect code script 10
001a27b0 - 001a280c: Effect code script 11
001a2810 - 001a286c: Effect code script 12
001a2870 - 001a28d0: Effect code script 13
001a28d4 - 001a2934: Effect code script 14
001a2938 - 001a2994: Effect code script 15
001a2998 - 001a29dc: Effect Code Script 0x16 | Effect code script 16 - check counter against 0x1c in temp effect data
- Sets next half as counter if check is true, jumps out of loop
001a29e0 - 001a2a28: Effect code script 17
001a2a2c - 001a2a78: Effect code script 18
001a2a7c - 001a2b14: Effect code script 19
001a2b18 - 001a2b6c: Effect code script 1A
001a2b70 - 001a2bc4: Effect code script 1B
001a2bc8 - 001a2c24: Effect code script 1C
001a2c28 - 001a2c78: Effect Code Script 0x1d | Effect code script 1D - check timer against effect duration
- jump out of loop if timer > effect duration
001a2c7c - 001a2cf8: Effect code script 1E - check all timing bytes
- Seems to deal with time in between moving to next target primarily
001a2cfc - 001a2d44: Effect code script 1F - go to end if hit counter = 0?
001a2d48 - 001a2d90: Effect code script 20
001a2d94 - 001a2ddc: Effect code script 21
001a2de0 - 001a2e28: Effect code script 22
001a2e2c - 001a2e74: Effect code script 23
001a2e78 - 001a2eb0: Effect code script 24
001a2eb4 - 001a30e8: Effect code script 25 - Runs effect?
001a30ec - 001a3144: Effect code script 26
001a3148 - 001a31a4: Effect code script 27 - store first 4 words of on hit effects data
001a31a8 - 001a32e4: Effect text/transformation/animation display timing
001a32e8 - 001a3404: On-Hit effect sounds like when the healing is displayed in moogle
001a3408 - 001a3d2c: Effect code script 28 - huge big ol' routine Handles timing
001a4000 - 001a419c: Effect Related (0x1a4000)
001a4838 - 001a4c40: Effect code script 29 - 'nother huge routine
001a4c44 - 001a4c80: Effect code script 2A - clear some temp effect data
001a4c84 - 001a4cbc: Effect code script 2B - clear some temp effect data 2
001a4cc0 - 001a4cd4: Effect code script 2C - Increment counter Useful for editing
001a4cd8 - 001a4cec: Effect code script 2D - duplicate of 2C
001a4cf0 - 001a4d98: Run Effect Block | Effect code script loop
001a60ac - 001a7f58: Effect Graphics | Emitter Control Routine
001a8bf8 - 001a8c10: Modify Data 1
001a8d04 - 001a8d78: Modify Data 2
001a90d0 - 001a9314: Get Effect Screen Location Data From Unit Data | Modify based on first word of timing section header
001a9984 - 001a99a8: Store first section of on hit effects data
001a9bb0 - 001a9f40: Matrix / effect mathematics?
001aa1a0 - 001aa1f4: Some parameter set stuff
001aa1f8 - 001aa7c0: Composite frame loading for parameter sets
001aad98 - 001ab1d0: Effect Camera Rotation
001ab1d4 - 001ab58c: Effect Camera Movement
001ab724 - 001aca54: Effect Related (0x1ab724)
001ad828 - 001ad940: Effect Related (0x1ad828)
001add54 - 001ade78: Effect Related (0x1add54)
001adfac - 001adfe8: Get Ninja Ball effect based on weapons element. Only valid entries for fire,water,lightning
001b47e0 - 001b48cc: Effect Related (0x1b47e0)
END