Difference between revisions of "Palette mod by status"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
(Created page with "<font face='Courier New'> 000822bc: 27bdffd0 addiu r29,r29,0xffd0 000822c0: afbf0028 sw r31,0x0028(r29) 000822c4: 9082013e lbu r2,0x013e(r4) load 0x13e byte 000822c8: 0...")
 
m
Line 8: Line 8:
 
  000822d0: 00c04021 addu r8,r6,r0
 
  000822d0: 00c04021 addu r8,r6,r0
 
  000822d4: 3c0260c2 lui r2,0x60c2
 
  000822d4: 3c0260c2 lui r2,0x60c2
  000822d8: 34426020 ori r2,r2,0x6020
+
  000822d8: 34426020 ori r2,r2,0x6020 statuses 20 60 c2 60
 
  000822dc: 8c830140 lw r3,0x0140(r4) load status flags
 
  000822dc: 8c830140 lw r3,0x0140(r4) load status flags
 
  000822e0: 90870004 lbu r7,0x0004(r4) load misc ID
 
  000822e0: 90870004 lbu r7,0x0004(r4) load misc ID
Line 14: Line 14:
 
  000822e8: 10400059 beq r2,r0,0x00082450 branch if none true
 
  000822e8: 10400059 beq r2,r0,0x00082450 branch if none true
 
  000822ec: 30620020 andi r2,r3,0x0020
 
  000822ec: 30620020 andi r2,r3,0x0020
  000822f0: 10400007 beq r2,r0,0x00082310 branch if not cursed?
+
  000822f0: 10400007 beq r2,r0,0x00082310 branch if not petrify
  000822f4: 34060003 ori r6,r0,0x0003
+
 
  000822f8: 34050006 ori r5,r0,0x0006
+
petrify:
 +
  000822f4: 34060003 ori r6,r0,0x0003
 +
  000822f8: 34050006 ori r5,r0,0x0006 shade type 6
 
  000822fc: afa00010 sw r0,0x0010(r29)
 
  000822fc: afa00010 sw r0,0x0010(r29)
 
  00082300: afa00014 sw r0,0x0014(r29)
 
  00082300: afa00014 sw r0,0x0014(r29)
  00082304: afa00018 sw r0,0x0018(r29)
+
  00082304: afa00018 sw r0,0x0018(r29)
 
  00082308: 08020910 j 0x00082440
 
  00082308: 08020910 j 0x00082440
  0008230c: afa0001c sw r0,0x001c(r29)
+
  0008230c: afa0001c sw r0,0x001c(r29) store 0 R, g, b
 +
 
 +
Blood suck:
 
  00082310: 3c020002 lui r2,0x0002
 
  00082310: 3c020002 lui r2,0x0002
 
  00082314: 00621024 and r2,r3,r2
 
  00082314: 00621024 and r2,r3,r2
  00082318: 10400008 beq r2,r0,0x0008233c
+
  00082318: 10400008 beq r2,r0,0x0008233c branch if not blood suck
  0008231c: 34020003 ori r2,r0,0x0003
+
  0008231c: 34020003 ori r2,r0,0x0003
  00082320: 34050006 ori r5,r0,0x0006
+
  00082320: 34050006 ori r5,r0,0x0006 shade type 6
  00082324: afa20014 sw r2,0x0014(r29)
+
  00082324: afa20014 sw r2,0x0014(r29) store 3 r
 
  00082328: 2402ffff addiu r2,r0,0xffff
 
  00082328: 2402ffff addiu r2,r0,0xffff
  0008232c: afa20018 sw r2,0x0018(r29)
+
  0008232c: afa20018 sw r2,0x0018(r29) store 3 g
 
  00082330: 34020008 ori r2,r0,0x0008
 
  00082330: 34020008 ori r2,r0,0x0008
 
  00082334: 0802090f j 0x0008243c
 
  00082334: 0802090f j 0x0008243c
 
  00082338: afa00010 sw r0,0x0010(r29)
 
  00082338: afa00010 sw r0,0x0010(r29)
 +
 +
berserk:
 
  0008233c: 30624000 andi r2,r3,0x4000
 
  0008233c: 30624000 andi r2,r3,0x4000
  00082340: 10400008 beq r2,r0,0x00082364
+
  00082340: 10400008 beq r2,r0,0x00082364 branch if not berserk
 
  00082344: 34060003 ori r6,r0,0x0003
 
  00082344: 34060003 ori r6,r0,0x0003
 
  00082348: 34050004 ori r5,r0,0x0004
 
  00082348: 34050004 ori r5,r0,0x0004
Line 43: Line 49:
 
  0008235c: 08020910 j 0x00082440
 
  0008235c: 08020910 j 0x00082440
 
  00082360: afa0001c sw r0,0x001c(r29)
 
  00082360: afa0001c sw r0,0x001c(r29)
 +
 +
Poison:
 
  00082364: 3c020040 lui r2,0x0040
 
  00082364: 3c020040 lui r2,0x0040
 
  00082368: 00621024 and r2,r3,r2
 
  00082368: 00621024 and r2,r3,r2
  0008236c: 10400007 beq r2,r0,0x0008238c
+
  0008236c: 10400007 beq r2,r0,0x0008238c branch if not poison
 
  00082370: 34020008 ori r2,r0,0x0008
 
  00082370: 34020008 ori r2,r0,0x0008
 
  00082374: 34050005 ori r5,r0,0x0005
 
  00082374: 34050005 ori r5,r0,0x0005
Line 53: Line 61:
 
  00082384: 08020910 j 0x00082440
 
  00082384: 08020910 j 0x00082440
 
  00082388: afa0001c sw r0,0x001c(r29)
 
  00082388: afa0001c sw r0,0x001c(r29)
 +
 +
regen:
 
  0008238c: 3c022000 lui r2,0x2000
 
  0008238c: 3c022000 lui r2,0x2000
 
  00082390: 00621024 and r2,r3,r2
 
  00082390: 00621024 and r2,r3,r2
  00082394: 10400006 beq r2,r0,0x000823b0
+
  00082394: 10400006 beq r2,r0,0x000823b0 branch if not regen
 
  00082398: 34060003 ori r6,r0,0x0003
 
  00082398: 34060003 ori r6,r0,0x0003
 
  0008239c: 34050004 ori r5,r0,0x0004
 
  0008239c: 34050004 ori r5,r0,0x0004
Line 62: Line 72:
 
  000823a8: 0802090e j 0x00082438
 
  000823a8: 0802090e j 0x00082438
 
  000823ac: afa00014 sw r0,0x0014(r29)
 
  000823ac: afa00014 sw r0,0x0014(r29)
 +
 +
oil:
 
  000823b0: 3c020080 lui r2,0x0080
 
  000823b0: 3c020080 lui r2,0x0080
 
  000823b4: 00621024 and r2,r3,r2
 
  000823b4: 00621024 and r2,r3,r2
  000823b8: 10400006 beq r2,r0,0x000823d4
+
  000823b8: 10400006 beq r2,r0,0x000823d4 branch if not oil
 
  000823bc: 2402fffc addiu r2,r0,0xfffc
 
  000823bc: 2402fffc addiu r2,r0,0xfffc
 
  000823c0: 34050005 ori r5,r0,0x0005
 
  000823c0: 34050005 ori r5,r0,0x0005
Line 71: Line 83:
 
  000823cc: 0802090f j 0x0008243c
 
  000823cc: 0802090f j 0x0008243c
 
  000823d0: afa20018 sw r2,0x0018(r29)
 
  000823d0: afa20018 sw r2,0x0018(r29)
 +
 +
cursed:
 
  000823d4: 30622000 andi r2,r3,0x2000
 
  000823d4: 30622000 andi r2,r3,0x2000
  000823d8: 10400007 beq r2,r0,0x000823f8
+
  000823d8: 10400007 beq r2,r0,0x000823f8 branch if not cursed
 
  000823dc: 34060003 ori r6,r0,0x0003
 
  000823dc: 34060003 ori r6,r0,0x0003
 
  000823e0: 34050005 ori r5,r0,0x0005
 
  000823e0: 34050005 ori r5,r0,0x0005
Line 80: Line 94:
 
  000823f0: 0802090f j 0x0008243c
 
  000823f0: 0802090f j 0x0008243c
 
  000823f4: afa20018 sw r2,0x0018(r29)
 
  000823f4: afa20018 sw r2,0x0018(r29)
 +
 +
undead:
 
  000823f8: 3c024000 lui r2,0x4000
 
  000823f8: 3c024000 lui r2,0x4000
 
  000823fc: 00621024 and r2,r3,r2
 
  000823fc: 00621024 and r2,r3,r2
  00082400: 10400013 beq r2,r0,0x00082450
+
  00082400: 10400013 beq r2,r0,0x00082450 branch if not undead (end? Lol)
 
  00082404: 00000000 nop
 
  00082404: 00000000 nop
 
  00082408: 90820006 lbu r2,0x0006(r4)
 
  00082408: 90820006 lbu r2,0x0006(r4)
Line 97: Line 113:
 
  00082434: afa00010 sw r0,0x0010(r29)
 
  00082434: afa00010 sw r0,0x0010(r29)
 
  00082438: afa00018 sw r0,0x0018(r29)
 
  00082438: afa00018 sw r0,0x0018(r29)
  0008243c: afa2001c sw r2,0x001c(r29)
+
 
 +
all return:
 +
  0008243c: afa2001c sw r2,0x001c(r29) store blue (some jumps here instead of one line after)
 
  00082440: 0c020844 jal 0x00082110
 
  00082440: 0c020844 jal 0x00082110
 
  00082444: afa80020 sw r8,0x0020(r29)
 
  00082444: afa80020 sw r8,0x0020(r29)

Revision as of 02:04, 14 April 2023

000822bc: 27bdffd0 addiu r29,r29,0xffd0
000822c0: afbf0028 sw r31,0x0028(r29)
000822c4: 9082013e lbu r2,0x013e(r4)		load 0x13e byte
000822c8: 00000000 nop
000822cc: 14400062 bne r2,r0,0x00082458		branch to end if not zero
000822d0: 00c04021 addu r8,r6,r0
000822d4: 3c0260c2 lui r2,0x60c2
000822d8: 34426020 ori r2,r2,0x6020			statuses 20 60 c2 60
000822dc: 8c830140 lw r3,0x0140(r4)		load status flags
000822e0: 90870004 lbu r7,0x0004(r4)		load misc ID
000822e4: 00621024 and r2,r3,r2			check for palette changing status
000822e8: 10400059 beq r2,r0,0x00082450		branch if none true
000822ec: 30620020 andi r2,r3,0x0020
000822f0: 10400007 beq r2,r0,0x00082310		branch if not petrify

petrify:

000822f4: 34060003 ori r6,r0,0x0003			
000822f8: 34050006 ori r5,r0,0x0006			shade type 6
000822fc: afa00010 sw r0,0x0010(r29)
00082300: afa00014 sw r0,0x0014(r29)
00082304: afa00018 sw r0,0x0018(r29)			
00082308: 08020910 j 0x00082440
0008230c: afa0001c sw r0,0x001c(r29)			store 0 R, g, b

Blood suck:

00082310: 3c020002 lui r2,0x0002
00082314: 00621024 and r2,r3,r2
00082318: 10400008 beq r2,r0,0x0008233c		branch if not blood suck
0008231c: 34020003 ori r2,r0,0x0003			
00082320: 34050006 ori r5,r0,0x0006			shade type 6
00082324: afa20014 sw r2,0x0014(r29)			store 3 r
00082328: 2402ffff addiu r2,r0,0xffff
0008232c: afa20018 sw r2,0x0018(r29)			store 3 g
00082330: 34020008 ori r2,r0,0x0008
00082334: 0802090f j 0x0008243c
00082338: afa00010 sw r0,0x0010(r29)

berserk:

0008233c: 30624000 andi r2,r3,0x4000
00082340: 10400008 beq r2,r0,0x00082364		branch if not berserk
00082344: 34060003 ori r6,r0,0x0003
00082348: 34050004 ori r5,r0,0x0004
0008234c: 34020008 ori r2,r0,0x0008
00082350: afa00010 sw r0,0x0010(r29)
00082354: afa20014 sw r2,0x0014(r29)
00082358: afa00018 sw r0,0x0018(r29)
0008235c: 08020910 j 0x00082440
00082360: afa0001c sw r0,0x001c(r29)

Poison:

00082364: 3c020040 lui r2,0x0040
00082368: 00621024 and r2,r3,r2
0008236c: 10400007 beq r2,r0,0x0008238c		branch if not poison
00082370: 34020008 ori r2,r0,0x0008
00082374: 34050005 ori r5,r0,0x0005
00082378: afa00010 sw r0,0x0010(r29)
0008237c: afa00014 sw r0,0x0014(r29)
00082380: afa20018 sw r2,0x0018(r29)
00082384: 08020910 j 0x00082440
00082388: afa0001c sw r0,0x001c(r29)

regen:

0008238c: 3c022000 lui r2,0x2000
00082390: 00621024 and r2,r3,r2
00082394: 10400006 beq r2,r0,0x000823b0		branch if not regen
00082398: 34060003 ori r6,r0,0x0003
0008239c: 34050004 ori r5,r0,0x0004
000823a0: 34020008 ori r2,r0,0x0008
000823a4: afa00010 sw r0,0x0010(r29)
000823a8: 0802090e j 0x00082438
000823ac: afa00014 sw r0,0x0014(r29)

oil:

000823b0: 3c020080 lui r2,0x0080
000823b4: 00621024 and r2,r3,r2
000823b8: 10400006 beq r2,r0,0x000823d4		branch if not oil
000823bc: 2402fffc addiu r2,r0,0xfffc
000823c0: 34050005 ori r5,r0,0x0005
000823c4: afa00010 sw r0,0x0010(r29)
000823c8: afa20014 sw r2,0x0014(r29)
000823cc: 0802090f j 0x0008243c
000823d0: afa20018 sw r2,0x0018(r29)

cursed:

000823d4: 30622000 andi r2,r3,0x2000
000823d8: 10400007 beq r2,r0,0x000823f8		branch if not cursed
000823dc: 34060003 ori r6,r0,0x0003
000823e0: 34050005 ori r5,r0,0x0005
000823e4: 2402fff8 addiu r2,r0,0xfff8
000823e8: afa00010 sw r0,0x0010(r29)
000823ec: afa20014 sw r2,0x0014(r29)
000823f0: 0802090f j 0x0008243c
000823f4: afa20018 sw r2,0x0018(r29)

undead:

000823f8: 3c024000 lui r2,0x4000
000823fc: 00621024 and r2,r3,r2
00082400: 10400013 beq r2,r0,0x00082450		branch if not undead (end? Lol)
00082404: 00000000 nop
00082408: 90820006 lbu r2,0x0006(r4)
0008240c: 00000000 nop
00082410: 24420075 addiu r2,r2,0x0075
00082414: 304200ff andi r2,r2,0x00ff
00082418: 2c420002 sltiu r2,r2,0x0002
0008241c: 1440000c bne r2,r0,0x00082450
00082420: 34060003 ori r6,r0,0x0003
00082424: 34050005 ori r5,r0,0x0005
00082428: 34020004 ori r2,r0,0x0004
0008242c: afa20014 sw r2,0x0014(r29)
00082430: 34020005 ori r2,r0,0x0005
00082434: afa00010 sw r0,0x0010(r29)
00082438: afa00018 sw r0,0x0018(r29)

all return:

0008243c: afa2001c sw r2,0x001c(r29)		store blue (some jumps here instead of one line after)
00082440: 0c020844 jal 0x00082110
00082444: afa80020 sw r8,0x0020(r29)
00082448: 08020916 j 0x00082458
0008244c: 00000000 nop
00082450: 0c020755 jal 0x00081d54
00082454: 01003021 addu r6,r8,r0
00082458: 8fbf0028 lw r31,0x0028(r29)
0008245c: 27bd0030 addiu r29,r29,0x0030
00082460: 03e00008 jr r31
00082464: 00000000 nop