Posts: 85
Threads: 4
Joined: Jul 2013
Reputation:
0
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.
Posts: 3,975
Threads: 278
Joined: Oct 2011
Reputation:
65
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:
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)
Posts: 121
Threads: 11
Joined: Jan 2013
Reputation:
7
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.
Posts: 85
Threads: 4
Joined: Jul 2013
Reputation:
0
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.
Posts: 121
Threads: 11
Joined: Jan 2013
Reputation:
7
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?
Posts: 19
Threads: 2
Joined: Mar 2014
Reputation:
0
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?
Posts: 315
Threads: 50
Joined: Feb 2012
Reputation:
4
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
Posts: 3,975
Threads: 278
Joined: Oct 2011
Reputation:
65
04-02-2014, 10:50 AM
(This post was last modified: 04-02-2014, 10:51 AM by madsiur.)
(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)
Posts: 19
Threads: 2
Joined: Mar 2014
Reputation:
0
(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.
Posts: 290
Threads: 3
Joined: Apr 2012
Reputation:
9
The easiest way to do that is probably just to swap the entirety of their character data in FF3usME.
|