Difference between revisions of "Elemental Nullification"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
m
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
  Elemental Nullification
+
  No parameters - Returns Nothing              Alternative notes here [[Nullify_Action]]
  00184e40: 3c028019 lui r2,0x8019
+
  00184e44: 8c422d90 lw r2,0x2d90(r2) Load Current Action Data Pointer
+
Modify some Target current action (TCA) data
  00184e48: 27bdffe8 addiu r29,r29,0xffe8
+
  - 0x00 : Hit flag set to miss
  00184e4c: afbf0010 sw r31,0x0010(r29)
+
  - 0x04 : HP damage set to 0x00
  00184e50: a0400000 sb r0,0x0000(r2) Store Unable to Hit Flag
+
  - 0x05 : Evade Type set to 0x02
  00184e54: 3c038019 lui r3,0x8019
+
  - 0x10 : Special flags 1 set to 0x00
  00184e58: 8c632d90 lw r3,0x2d90(r3) Load Current Action Data Pointer
+
  - 0x11 : Special flags 2 set to 0x00
  00184e5c: 34020005 ori r2,r0,0x0005 r2 = 5
+
  - 0x2a : Hit% set to 0x00
  00184e60: a0620002 sb r2,0x0002(r3) Store ?
+
Clear some Current Ability data (via Jal)
  00184e64: 3c028019 lui r2,0x8019
+
  - Clear Proc/Reaction mechanics
  00184e68: 8c422d90 lw r2,0x2d90(r2) Load Current Action Data Pointer
+
  - Clear Knockback mechanics
  00184e6c: a4600004 sh r0,0x0004(r3) Store HP Damage = 0
+
---------------------------------------------------------
  00184e70: a460002a sh r0,0x002a(r3) Store Hit% = 0
+
  00184e40: 3c028019 lui r2,0x8019           |
  00184e74: a4600010 sh r0,0x0010(r3) Store Specials flags (1 and 2) = 0
+
  00184e44: 8c422d90 lw r2,0x2d90(r2)         |{{f/adr|<nowiki>r2 = Target Current Action (TCA) Data Pointer</nowiki>}}
  00184e78: 0c062f3c jal 0x0018bcf0 [[Called_by_Nullify_Action]]
+
  00184e48: 27bdffe8 addiu r29,r29,-0x0018    |
  00184e7c: a0400025 sb r0,0x0025(r2) Store cleared Attack Type Flags
+
  00184e4c: afbf0010 sw r31,0x0010(r29)       |
  00184e80: 0c062f4d jal 0x0018bd34 [[Remove_Knockback_Flag]] (Ex nullify steal item?)
+
  00184e50: a0400000 sb r0,0x0000(r2)         |{{f/store|Store 0x00 in TCA hit flag (Miss)}}
  00184e84: 00000000 nop
+
  00184e54: 3c038019 lui r3,0x8019           |
  00184e88: 8fbf0010 lw r31,0x0010(r29)
+
  00184e58: 8c632d90 lw r3,0x2d90(r3)         |{{f/adr|<nowiki>r3 = Target Current Action (TCA) Data Pointer</nowiki>}}
  00184e8c: 27bd0018 addiu r29,r29,0x0018
+
  00184e5c: 34020005 ori r2,r0,0x0005         |{{f/std|<nowiki>r2 = 0x05 (Evade type is nullified)</nowiki>}}
  00184e90: 03e00008 jr r31
+
  00184e60: a0620002 sb r2,0x0002(r3)         |{{f/store|Store Evade type as nullified (see notes)}}
  00184e94: 00000000 nop
+
  00184e64: 3c028019 lui r2,0x8019           |
 +
  00184e68: 8c422d90 lw r2,0x2d90(r2)         |{{f/adr|<nowiki>r2 = Current Action Data Pointer</nowiki>}}
 +
  00184e6c: a4600004 sh r0,0x0004(r3)         |{{f/store|<nowiki>Store TCA HP Damage = 0</nowiki>}}
 +
  00184e70: a460002a sh r0,0x002a(r3)         |{{f/store|<nowiki>Store Hit% = 0</nowiki>}}
 +
  00184e74: a4600010 sh r0,0x0010(r3)         |{{f/store|Clear Specials flags (1 and 2) }}
 +
  00184e78: 0c062f3c jal 0x0018bcf0           |{{f/jal|Called_by_Nullify_Action |Called_by_Nullify_Action }} Clear Reaction/Proc mechanics if needed
 +
  00184e7c: a0400025 sb r0,0x0025(r2)         |{{f/store|Clear Attack Type Flags}}
 +
  00184e80: 0c062f4d jal 0x0018bd34           |{{f/jal|Remove_Knockback_Flag |Remove_Knockback_Flag }} Prevents Target to being knocked back
 +
  00184e84: 00000000 nop                     |
 +
  00184e88: 8fbf0010 lw r31,0x0010(r29)      
 +
  00184e8c: 27bd0018 addiu r29,r29,0x0018    
 +
  00184e90: 03e00008 jr r31                  
 +
  00184e94: 00000000 nop                    
 +
 +
*Notes
 +
  This Byte is checked to skip [[Elemental_Absorption]] routine
  
 
+
=== Return Locations ===
== Return Locations ==
+
'''Battle.bin'''
 
+
  00184f00: [[Elemental_Damage_Modification]]
  001897ac: [[26 Equipped: Steal Hit_(SP+X)%]]
+
001870d0: [[Ability_Elemental%3F]]
  00189bbc: [[2E Equipped:Break Dmg_(PA*WP)]]
+
  001897b4: [[26_Equipped:_Steal_Hit_(SP%2BX)%25]]
  00184ef8: [[Elemental Damage Modification]]
+
  00189bc4: [[2E_Equipped:Break_Dmg_(PA*WP)]]
  001870c8: [[Ability Elemental?]] Apply Elemental - Glain
+
  0018ad34: [[Apply_Status_and_Check_Undead]]
0018ad2c:
 

Latest revision as of 11:56, 16 April 2022

No parameters - Returns Nothing               Alternative notes here Nullify_Action

Modify some Target current action (TCA) data
 - 0x00 : Hit flag set to miss 
 - 0x04 : HP damage set to 0x00 
 - 0x05 : Evade Type set to 0x02
 - 0x10 : Special flags 1 set to 0x00
 - 0x11 : Special flags 2 set to 0x00
 - 0x2a : Hit% set to 0x00
Clear some Current Ability data (via Jal)
 - Clear Proc/Reaction mechanics
 - Clear Knockback mechanics
---------------------------------------------------------
00184e40: 3c028019 lui r2,0x8019            |
00184e44: 8c422d90 lw r2,0x2d90(r2)         |r2 = Target Current Action (TCA) Data Pointer
00184e48: 27bdffe8 addiu r29,r29,-0x0018    |
00184e4c: afbf0010 sw r31,0x0010(r29)       |
00184e50: a0400000 sb r0,0x0000(r2)         |Store 0x00 in TCA hit flag (Miss)
00184e54: 3c038019 lui r3,0x8019            |
00184e58: 8c632d90 lw r3,0x2d90(r3)         |r3 = Target Current Action (TCA) Data Pointer
00184e5c: 34020005 ori r2,r0,0x0005         |r2 = 0x05 (Evade type is nullified)
00184e60: a0620002 sb r2,0x0002(r3)         |Store Evade type as nullified (see notes)
00184e64: 3c028019 lui r2,0x8019            |
00184e68: 8c422d90 lw r2,0x2d90(r2)         |r2 = Current Action Data Pointer
00184e6c: a4600004 sh r0,0x0004(r3)         |Store TCA HP Damage = 0
00184e70: a460002a sh r0,0x002a(r3)         |Store Hit% = 0
00184e74: a4600010 sh r0,0x0010(r3)         |Clear Specials flags (1 and 2) 
00184e78: 0c062f3c jal 0x0018bcf0           |-->Called_by_Nullify_Action  Clear Reaction/Proc mechanics if needed
00184e7c: a0400025 sb r0,0x0025(r2)         |Clear Attack Type Flags
00184e80: 0c062f4d jal 0x0018bd34           |-->Remove_Knockback_Flag  Prevents Target to being knocked back
00184e84: 00000000 nop                      |
00184e88: 8fbf0010 lw r31,0x0010(r29)       
00184e8c: 27bd0018 addiu r29,r29,0x0018     
00184e90: 03e00008 jr r31                   
00184e94: 00000000 nop                      

*Notes
 This Byte is checked to skip Elemental_Absorption routine

Return Locations

Battle.bin
00184f00: Elemental_Damage_Modification
001870d0: Ability_Elemental?
001897b4: 26_Equipped:_Steal_Hit_(SP+X)%
00189bc4: 2E_Equipped:Break_Dmg_(PA*WP)
0018ad34: Apply_Status_and_Check_Undead