Users browsing this thread: 1 Guest(s)
"Valor" in FF6?

#2
Posts: 3,971
Threads: 279
Thanks Received: 237
Thanks Given: 58
Joined: Oct 2011
Reputation: 65
Status
Tissue-aware
Well the only way I see how it could be made is that you would have to create a new status or replace an existing one. If it was from a piece of equipment, you could modify the damage algorithm in consequence but since it is a spell you need to know if it has been cast one the character or not. If the character has the valor status, you double the damage by adding a branching to the damage algorithm. It's a bit the same idea when received damages are cut in half if morphed:

Code:
C2/0D17: B9 F9 3E     LDA $3EF9,Y
C2/0D1A: 89 08        BIT #$08
C2/0D1C: F0 04        BEQ $0D22   (Branch if not morph)
C2/0D1E: 46 F1        LSR $F1
C2/0D20: 66 F0        ROR $F0     (Cut damage in half)

The current character status are loaded from here. This would be where you check to see if the character has the valor status:

Code:
$3EE4 : Status byte 1
$3EE5 : Status byte 2
$3EF8 : Status byte 3
$3EF9 : Status byte 4


The status set by an attack are store in $11AA to $11AD. There is no room for an additional status:

Code:
$11AA : Status set by attack 1 (Bit 0 = Blind, 1 = Zombie, 2 = Poison, 3 = M-Tek,
                                    4 = Invisible, 5 = Imp, 6 = Stone, 7 = Death)
$11AB : Status set by attack 2 (Bit 0 = Count, 1 = Weak, 2 = Image, 3 = Mute,
                                    4 = Berserk, 5 = Confuse, 6 = Seizure, 7 = Sleep)
$11AC : Status set by attack 3 (Bit 0 = Dance, 1 = Regen, 2 = Slow, 3 = Haste,
                                    4 = Stop, 5 = Shell, 6 = Safe, 7 = Wall)
$11AD : Status set by attack 4 (Bit 0 = Rage, 1 = Freeze, 2 = Life 3, 3 = Morph,
                                    4 = Spell, 5 = Hide, 6 = Dog Block, 7 = Float)

You could possibly add another status byte if you find safe and empty room in the RAM, but that would mean an insane amount of modification for the main reason that a status goes from
spell status ---> current status ---> status to set ---> permanent (or temporary) status ---> field status (if applicable).

In each of these step the data is stored in a new 4 bytes and in each case those 4 bytes are next to each other. This is why the easiest solution is to modify an existing status, with everything that comes with that, such has modifying every place where the old status was checked and adding a check to the damage routine for your new status.
  Find
Quote  



Messages In This Thread
"Valor" in FF6? - by Zeemis - 04-19-2012, 01:45 PM
RE: "Valor" in FF6? - by madsiur - 04-19-2012, 04:39 PM
RE: "Valor" in FF6? - by Zeemis - 04-20-2012, 01:53 AM
RE: "Valor" in FF6? - by Synchysi - 04-20-2012, 11:40 AM
RE: "Valor" in FF6? - by DjinnAndTonic - 05-10-2012, 04:11 AM
RE: "Valor" in FF6? - by madsiur - 05-10-2012, 04:45 AM
RE: "Valor" in FF6? - by DjinnAndTonic - 05-10-2012, 11:53 AM

Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite