Users browsing this thread: 1 Guest(s)
New Status Effect - Old

#2
Posts: 384
Threads: 35
Thanks Received: 11
Thanks Given: 14
Joined: Dec 2018
Reputation: 18
Status
Moog
PEA is "Push Effective Address".  What it does is place a value onto the stack.  In the instance referenced, those values are then read by a subroutine as bitfields to the status bytes.

So yeah, you need to convert the hexadecimal 16-bit number to a binary list, and compare that to the two status bytes they correspond to.

0x0311 is 0000 0011 0001 0001.
Dance is the lowest significance bit on the lower byte.
So 0x0310 would exclude Dance from the statuses to remove.

The other spot, 0x2101, should use 0x2100 (in theory).  This is because 0x20 on the high byte is "Hidden" and 0x01 on the high byte is "Rage", whereas the lone 0x01 on the low byte is Dance.


With regards to your question on character palette management, the routines are in the C1 bank.

https://raw.githubusercontent.com/everyt...s/ff3u.asm

This is Everything's complete disassembly of the game.  It has comments on many of the routines which will help you navigate the game for your modifications.
You're looking for C1/2DD3.  The way this routine works is that it checks various statuses and then adjusts the palette accordingly.  There are three types of palette adjustments here: total palette replacement (like you would see for things like Petrify or Frozen), Skin Index replacement (wherein only the two specific index colors are swapped), and outline pulsing (like how Haste makes the character's outline glow red).


The second, skin index replacement, goes to a routine at C1/2F0D, which takes the number you send into it x4 as an index into a table starting at C2E3AE.  This replaces two colors in the character's palette with those from the table (colors 7 and 8, which are stored at $7F8C,Y and $7F8E,Y respectively at this point).

For a status like Old, you're probably going to want to change the three hair colors instead (Hair Light, Hair Dark, and Eyes), or possibly the whole palette to grayscales and pale whites since not every character uses the same color indices for their hair like they do in FF5.  As such, you're probably going to have an easier time mirroring the way that Freeze and Petrify change colors instead.
  Find
Quote  
[-] The following 1 user says Thank You to C-Dude for this post:
  • Xontract (01-07-2024)



Messages In This Thread
New Status Effect - Old - by Xontract - 01-06-2024, 04:04 PM
RE: New Status Effect - Old - by C-Dude - 01-06-2024, 05:26 PM
RE: New Status Effect - Old - by Xontract - 01-07-2024, 10:43 AM
RE: New Status Effect - Old - by Warrax - 01-08-2024, 12:26 PM

Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite