Character Replacing
12-20-2013, 12:38 AM
Ok, so, I need something explained to me, please... Would it be possible to change an event to where Celes takes the place of Terra at the beginning of the game, and Terra is the one chained up that Locke frees... without simply swapping the sprites? Because I still want Terra to be the one who goes berserk. I figure the easiest way to do that would be to change some code in the game that just swaps the two's placement for the duration of those events.
12-20-2013, 01:28 AM
You need to change some of the character properties such as graphics and palette when the character first join your party. If you plan to reassign another palette or graphic later, the character must be out of the party in order for make it work. Here is Celes assignantion:
And here's Terra's assignation:
Code:
CA/86FA: 7F Change character $06's name to $06 (CELES )
CA/86FD: 40 Assign properties $06 to character $06 (Actor in stot 6)
CA/8700: 88 Remove the following status ailments from character $06 (Actor in stot 6): Float, Hide, Chant (Casting Spell), Morph (Esper-form), Instant Death Protection, Frozen, Rage, Death (Wound), Petrify (Stone), Imp, Vanish (Clear), Poison, Zombie, Dark
CA/8704: 8B For character $06 (Actor in stot 6), take HP and set to maximum
CA/8707: 37 Assign graphics $06 to object $06 (Actor in stot 6)
CA/870A: 43 Assign palette $00 to character $06 (Actor in stot 6)
And here's Terra's assignation:
Code:
CA/5E34: 7F Change character $00's name to $1D (????? )
CA/5E37: 40 Assign properties $00 to character $00 (Actor in stot 0)
CA/5E3A: 3D Create object $00
CA/5E3C: 3F Assign character $00 (Actor in stot 0) to party 1
CA/5E3F: 37 Assign graphics $00 to object $00 (Actor in stot 0)
CA/5E42: 43 Assign palette $02 to character $00 (Actor in stot 0)
12-20-2013, 02:24 AM
As Madsiur was saying, just make respective changes to which characters are assigned in those segments of the code and any other points between the start of the game and the battle for Narshe which involves either Terra or Celes. You will likely need to parse through the event script and find any instances involving properties for actor $00 and $06, swapping them and any relevant data.
You will need to make at least one sprite change though, sprite 65, which is the sprite of Celes chained to the wall. You will need to make a sprite of Terra chained to the wall, which shouldn't prove too difficult. Furthermore you may need to make changes using the tile editor if Terra or Celes's sprites are ever loaded before the battle for Narshe without referencing their actor data. You may or may not need to make changes to Terra's flashback about Vector.
You will need to make at least one sprite change though, sprite 65, which is the sprite of Celes chained to the wall. You will need to make a sprite of Terra chained to the wall, which shouldn't prove too difficult. Furthermore you may need to make changes using the tile editor if Terra or Celes's sprites are ever loaded before the battle for Narshe without referencing their actor data. You may or may not need to make changes to Terra's flashback about Vector.
12-23-2013, 01:46 AM
I definitely won't need to change her flashback... this is more complicated than I originally thought it might be. I was hoping not to delve into Hex, so I could just focus on the story re-writing.
12-23-2013, 02:18 AM
To be honest the hex editing required for a job like this is pretty minimal, I would be more than happy to assist in whatever way I could. If I have time I could probably redo sprite 65 for you as well, that would be a pretty simple job.
Correct me if I'm wrong, but you are only changing the place of Terra and Celes up until the end of the 3 scenarios?
Correct me if I'm wrong, but you are only changing the place of Terra and Celes up until the end of the 3 scenarios?
04-01-2014, 09:21 PM
So, if I were to switch, say, Locke and Celes... Then I would have to alter all of her Natural Magical Learning, in the C0 Bank, as well? So that it points to Character $01, rather than $06?
04-02-2014, 09:54 AM
It's unfortunate that you feel this is gonna be complicated xD. It's pretty basic hex editting like Tin Man said and a hefty amount of the info needed was given to you already by Madsiur.
Believe me once you hop in and try some things out and actually go for it, it gets easier
Believe me once you hop in and try some things out and actually go for it, it gets easier
(04-01-2014, 09:21 PM)Nyquill MacQuaid Wrote: So, if I were to switch, say, Locke and Celes... Then I would have to alter all of her Natural Magical Learning, in the C0 Bank, as well? So that it points to Character $01, rather than $06?
There are two places where you need to change the CMP value from #$06 to #$01. The C2 code is called at the end of a battle while the C0 code is called when a level averaging is performed:
Code:
C2/61C0: C9 06 CMP #$06 (is it character #6, Celes?)
C2/61C2: F0 38 BEQ $61FC (if yes, branch to see if she learns any spells)
Code:
C0/A186: C906 CMP #$06 (is character Celes?)
C0/A188: F02E BEQ $A1B8 (branch if so)
04-02-2014, 08:54 PM
(04-02-2014, 10:50 AM)Madsiur Wrote: There are two places where you need to change the CMP value from #$06 to #$01. The C2 code is called at the end of a battle while the C0 code is called when a level averaging is performed:
Code:C2/61C0: C9 06 CMP #$06 (is it character #6, Celes?)
C2/61C2: F0 38 BEQ $61FC (if yes, branch to see if she learns any spells)
Code:C0/A186: C906 CMP #$06 (is character Celes?)
C0/A188: F02E BEQ $A1B8 (branch if so)
Right, I got ya there... So Now I ask you, is there a Way to Fundamentally Change WHO $06 is assigned to? Would it be Possible to Juggle Those Values on a Deeper Level?
i.e., To make Character Slot $01 be fully Associated with Celes? So that the Changes would Automatically Trickle-down through the Entire game?
Sprites, Pallets, Battle Statistics, etc.?
By the way, Madsiur... I really Appreciate your taking the Time to bother with me.
04-03-2014, 12:13 AM
The easiest way to do that is probably just to swap the entirety of their character data in FF3usME.
« Next Oldest | Next Newest »
Users browsing this thread: 1 Guest(s)