Difference between revisions of "Uses HP damage as Action hit%"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
(Created page with " ??? Routine (Often appears after elemental absorb routine) 00187510: 3c068019 lui r6,0x8019 00187514: 8cc62d90 lw r6,0x2d90(r6) Load Current Action Data Pointer 0018751...")
 
m
Line 4: Line 4:
 
  00187518: 27bdffe8 addiu r29,r29,0xffe8
 
  00187518: 27bdffe8 addiu r29,r29,0xffe8
 
  0018751c: afbf0010 sw r31,0x0010(r29)
 
  0018751c: afbf0010 sw r31,0x0010(r29)
  00187520: 84c50004 lh r5,0x0004(r6) Load HP Damage
+
  00187520: 84c50004 lh r5,0x0004(r6) Load HitRate(r5) from "HP Damage" address
 
  00187524: 00000000 nop
 
  00187524: 00000000 nop
  00187528: 28a20064 slti r2,r5,0x0064
+
  00187528: 28a20064 slti r2,r5,0x0064 if HitRate < 100
  0018752c: 14400003 bne r2,r0,0x0018753c Branch if HP Damage is less then 100
+
  0018752c: 14400003 bne r2,r0,0x0018753c   then branch to 0x0018753c
 
  00187530: 00000000 nop
 
  00187530: 00000000 nop
 
  00187534: 08061d6b j 0x001875ac
 
  00187534: 08061d6b j 0x001875ac
Line 20: Line 20:
 
  00187558: 3c048019 lui r4,0x8019
 
  00187558: 3c048019 lui r4,0x8019
 
  0018755c: 8c84f5fc lw r4,-0x0a04(r4) Load damage display
 
  0018755c: 8c84f5fc lw r4,-0x0a04(r4) Load damage display
  00187560: a4c00004 sh r0,0x0004(r6) Store HP Damage as 0
+
  00187560: a4c00004 sh r0,0x0004(r6) Set "HP Damage" for this attack to 0
 
  00187564: 00031fc3 sra r3,r3,0x1f
 
  00187564: 00031fc3 sra r3,r3,0x1f
 
  00187568: 00001010 mfhi r2
 
  00187568: 00001010 mfhi r2

Revision as of 04:42, 4 January 2021

??? Routine (Often appears after elemental absorb routine)
00187510: 3c068019 lui r6,0x8019		
00187514: 8cc62d90 lw r6,0x2d90(r6)		Load Current Action Data Pointer
00187518: 27bdffe8 addiu r29,r29,0xffe8		
0018751c: afbf0010 sw r31,0x0010(r29)		
00187520: 84c50004 lh r5,0x0004(r6)		Load HitRate(r5) from "HP Damage" address
00187524: 00000000 nop			
00187528: 28a20064 slti r2,r5,0x0064	 	if HitRate < 100
0018752c: 14400003 bne r2,r0,0x0018753c		  then branch to 0x0018753c
00187530: 00000000 nop				
00187534: 08061d6b j 0x001875ac			
00187538: a4c00004 sh r0,0x0004(r6)		Store HP Damage as 0
0018753c: 84c2002a lh r2,0x002a(r6)		Load Hit % for attack on self?
00187540: 00000000 nop				
00187544: 00a20018 mult r5,r2			Hit% * HP damage?
00187548: 00001812 mflo r3			move to r3?
0018754c: 3c0251eb lui r2,0x51eb		
00187550: 3442851f ori r2,r2,0x851f		R2 = 51eb851f
00187554: 00620018 mult r3,r2			R3 * .33333334
00187558: 3c048019 lui r4,0x8019		
0018755c: 8c84f5fc lw r4,-0x0a04(r4)		Load damage display
00187560: a4c00004 sh r0,0x0004(r6)		Set "HP Damage" for this attack to 0
00187564: 00031fc3 sra r3,r3,0x1f		
00187568: 00001010 mfhi r2			
0018756c: 00021143 sra r2,r2,0x05		
00187570: 00431023 subu r2,r2,r3		
00187574: 10800003 beq r4,r0,0x00187584		
00187578: a4c2002a sh r2,0x002a(r6)		store hit%
0018757c: 14a0000b bne r5,r0,0x001875ac		
00187580: 00000000 nop				
00187584: 0c017833 jal 0x0005e0cc		Random Routine
00187588: 34040064 ori r4,r0,0x0064		R4 = 100
0018758c: 10400007 beq r2,r0,0x001875ac		attack hits?
00187590: 00000000 nop				
00187594: 0c0610cf jal 0x0018433c		Force Attack Miss routine?
00187598: 00000000 nop				
0018759c: 3c028019 lui r2,0x8019		
001875a0: 8c422d90 lw r2,0x2d90(r2)		Load Current Action Data Pointer
001875a4: 00000000 nop				
001875a8: a4400004 sh r0,0x0004(r2)		Store HP Damage as 0
001875ac: 8fbf0010 lw r31,0x0010(r29)
001875b0: 27bd0018 addiu r29,r29,0x0018
001875b4: 03e00008 jr r31
001875b8: 00000000 nop