Difference between revisions of "Maintenance"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
m
m
 
Line 1: Line 1:
  Maintenance Check:
+
Maintenance Check:
  00187638: 3c028019 lui r2,0x8019
+
No Parameters - Returns Nothing
  0018763c: 8c422d98 lw r2,0x2d98(r2) Load Defender's Stats
+
   
  00187640: 00000000 nop
+
If Target uses Maintenance : Guard Target Current Attack (Hit flag to 0x00, Hit% to 0%, Evade type to 0x07)
  00187644: 90420091 lbu r2,0x0091(r2) Load 3rd set of Supports
+
-----------------------------------------------------------------------------------------------------------------------
  00187648: 00000000 nop
+
  00187638: 3c028019 lui r2,0x8019           |
  0018764c: 30420004 andi r2,r2,0x0004
+
  0018763c: 8c422d98 lw r2,0x2d98(r2)         |{{f/adr|<nowiki>r2 = Target data pointer</nowiki>}}
  00187650: 1040000d beq r2,r0,0x00187688 Branch if unit doesn't have Maintenance  
+
  00187640: 00000000 nop                     |
  00187654: 00000000 nop
+
  00187644: 90420091 lbu r2,0x0091(r2)       |{{f/load|<nowiki>r2 = Target support Abilities (3rd set)</nowiki>}}
  00187658: 3c028019 lui r2,0x8019
+
  00187648: 00000000 nop                     |
  0018765c: 8c422d90 lw r2,0x2d90(r2) Load Current Action Data Pointer
+
  0018764c: 30420004 andi r2,r2,0x0004       |{{f/std|<nowiki>r2 = 0x04 if Target uses Maintenance</nowiki>}}
  00187660: 00000000 nop
+
  00187650: 1040000d beq r2,r0,0x00187688     {{f/Cond|If Target uses Maintenance}}
  00187664: a0400000 sb r0,0x0000(r2) Store Attack as missed
+
  00187654: 00000000 nop                         |
  00187668: 3c038019 lui r3,0x8019
+
  00187658: 3c028019 lui r2,0x8019               |
  0018766c: 8c632d90 lw r3,0x2d90(r3) Load Current Action Data Pointer
+
  0018765c: 8c422d90 lw r2,0x2d90(r2)             |{{f/adr|<nowiki>r2 = Target Current Action (TCA) data pointer</nowiki>}}
  00187670: 34020007 ori r2,r0,0x0007 r2 = 7
+
  00187660: 00000000 nop                         |
  00187674: a0620002 sb r2,0x0002(r3) Store Attack as guarded or missed
+
  00187664: a0400000 sb r0,0x0000(r2)             |{{f/store|Set TCA hit flag to MISS}}
  00187678: 3c028019 lui r2,0x8019
+
  00187668: 3c038019 lui r3,0x8019               |
  0018767c: 8c422d90 lw r2,0x2d90(r2) Load Current Action Data Pointer...
+
  0018766c: 8c632d90 lw r3,0x2d90(r3)             |{{f/adr|<nowiki>r3 = TCA data pointer</nowiki>}}
  00187680: 00000000 nop
+
  00187670: 34020007 ori r2,r0,0x0007             |{{f/std|<nowiki>r2 = 0x07</nowiki>}}
  00187684: a440002a sh r0,0x002a(r2) 0% chance to hit self
+
  00187674: a0620002 sb r2,0x0002(r3)             |{{f/store|Store TCA Evade type to 0x07 (guarded ?)}}
  00187688: 03e00008 jr r31
+
  00187678: 3c028019 lui r2,0x8019               |
  0018768c: 00000000 nop
+
  0018767c: 8c422d90 lw r2,0x2d90(r2)             |{{f/adr|<nowiki>r2 = TCA data pointer</nowiki>}}
 
+
  00187680: 00000000 nop                         |
 
+
  00187684: a440002a sh r0,0x002a(r2)             |{{f/store|<nowiki>Set TCA Hit% = 0 (displayed)</nowiki>}}
== Return Locations ==
+
  00187688: 03e00008 jr r31                   END
 
+
  0018768c: 00000000 nop
*Battle.bin
+
=== Return Locations ===
  0018975c: [[25 Equipped: Break Hit_(PA+WP+X)%]]
+
'''Battle.bin'''
  001897f0: [[26 Equipped: Steal Hit_(SP+X)%]]
+
  00189764: [[25 Equipped: Break Hit_(PA+WP+X)%]]
  00189bd8: [[2E Equipped:Break Dmg_(PA*WP)]]
+
  001897f8: [[26 Equipped: Steal Hit_(SP+X)%]]
 +
  00189be0: [[2E Equipped:Break Dmg_(PA*WP)]]

Latest revision as of 19:58, 20 April 2022

Maintenance Check:

No Parameters - Returns Nothing

If Target uses Maintenance : Guard Target Current Attack (Hit flag to 0x00, Hit% to 0%, Evade type to 0x07)
-----------------------------------------------------------------------------------------------------------------------
00187638: 3c028019 lui r2,0x8019            |
0018763c: 8c422d98 lw r2,0x2d98(r2)         |r2 = Target data pointer
00187640: 00000000 nop                      |
00187644: 90420091 lbu r2,0x0091(r2)        |r2 = Target support Abilities (3rd set)
00187648: 00000000 nop                      |
0018764c: 30420004 andi r2,r2,0x0004        |r2 = 0x04 if Target uses Maintenance
00187650: 1040000d beq r2,r0,0x00187688     #If Target uses Maintenance
00187654: 00000000 nop                          |
00187658: 3c028019 lui r2,0x8019                |
0018765c: 8c422d90 lw r2,0x2d90(r2)             |r2 = Target Current Action (TCA) data pointer
00187660: 00000000 nop                          |
00187664: a0400000 sb r0,0x0000(r2)             |Set TCA hit flag to MISS
00187668: 3c038019 lui r3,0x8019                |
0018766c: 8c632d90 lw r3,0x2d90(r3)             |r3 = TCA data pointer
00187670: 34020007 ori r2,r0,0x0007             |r2 = 0x07
00187674: a0620002 sb r2,0x0002(r3)             |Store TCA Evade type to 0x07 (guarded ?)
00187678: 3c028019 lui r2,0x8019                |
0018767c: 8c422d90 lw r2,0x2d90(r2)             |r2 = TCA data pointer
00187680: 00000000 nop                          |
00187684: a440002a sh r0,0x002a(r2)             |Set TCA Hit% = 0 (displayed)
00187688: 03e00008 jr r31                   END
0018768c: 00000000 nop  

Return Locations

Battle.bin
00189764: 25 Equipped: Break Hit_(PA+WP+X)%
001897f8: 26 Equipped: Steal Hit_(SP+X)%
00189be0: 2E Equipped:Break Dmg_(PA*WP)