Users browsing this thread: 1 Guest(s)
Advance Sprite Palettes

#1
Posts: 20
Threads: 3
Thanks Received: 0
Thanks Given: 0
Joined: Feb 2022
Reputation: 0
Status
None
So, I'm using FF6Tools, the online ROM hacker thing to try and make a mod/hack.

What I want to do at the moment is replace Edgar and Sabin with Biggs and Wedge.

Seemed easy enough. Export the "Soldier" sprite sheet and import it over those 2.
But when I do that, they show up as the green soldiers. I know that Locke's sprite palette is the only one that makes them show up as the normal brown soldiers, so naturally I set the Palette color to his when I did all this, but that didn't seem to do anything. Do I have to do something special to make the game use Locke's color palette on Edgar and Sabin? Can I even do that?

Forgive me, I'm quite new at this.

Btw, any way to turn that Pig sprite in my user information on the left over there into a Ghost?
  Find
Quote  

#2
Posts: 3,969
Threads: 279
Thanks Received: 236
Thanks Given: 57
Joined: Oct 2011
Reputation: 65
Status
Tissue-aware
(02-24-2022, 11:59 AM)LM008 Wrote: Do I have to do something special to make the game use Locke's color palette on Edgar and Sabin? Can I even do that?

This is a common question. There is the battle palette and field palette IDs. The battle palette ID can be changed with FF3usME/FF6Tools (I think) but the field one is assigned by event at character recruit. Check the palette document by runelancer here: https://www.ff6hacking.com/wiki/doku.php...s:doc:game

It will tell you where in the event banks palette for each character is assigned. This can be edited with FF6Tools event editor I think or worst case scenario with a hex editor. You'll need to test with a save file prior to the character recruit because the field palette ID is saved in SRAM.
  Find
Quote  

#3
Posts: 20
Threads: 3
Thanks Received: 0
Thanks Given: 0
Joined: Feb 2022
Reputation: 0
Status
None
Okay....

So is it the bottom row of numbers I need to mess with? Example, I see this in the document:

Edgar
D8/EAA4 - Standing
D8/EAAD - Fanfare
02 80 01 40 35 80 11 42 35 02 80 00 44 35 80 10 46 35

Sabin
D8/EAB6 - Standing
D8/EABF - Fanfare
02 80 01 48 35 80 11 4A 35 02 80 00 4C 35 80 10 4E 35

Is it that long string of numbers down at the bottom that has to do with the palette?
  Find
Quote  

#4
Posts: 3,969
Threads: 279
Thanks Received: 236
Thanks Given: 57
Joined: Oct 2011
Reputation: 65
Status
Tissue-aware
I was talking about this document: https://www.ff6hacking.com/wiki/lib/exe/...e_locs.zip

Code:
SABIN

Sabin is present in two events: the introduction flashback when the Matron tells you about him, and
when he boots Vargas. He uses sprite ID 0x04 and palette 0x00.

CA:6CAC 0x04 (INTRO)
CA:6CAF 0x00 (INTRO)

CA:6D29 0x05 (VARGAS)
CA:6D2C 0x00 (VARGAS)

EDGAR

Like Cyan, Edgar remains in the party for a while. However, he is an NPC when you first meet him,
and hits NPC status when you later meet him as "Gerad." For the rest of the time, he uses sprite
0x04 and palette 0x00.

CA:66BA 0x04
CA:66BD 0x00

Edit: I think the document you got is the OAM document and that might be needed for Shop/Save screen palette but I'm not 100% sure.
  Find
Quote  

#5
Posts: 20
Threads: 3
Thanks Received: 0
Thanks Given: 0
Joined: Feb 2022
Reputation: 0
Status
None
Okay. Im starting to understand, but I'm still a bit confused.
I get the sprite ID stuff, I think, because Ive been messing around with Codebreaker codes and I get the character selection. I think.
Example:

CB:AB39 0x14 (GHOST 1)

Yes, that makes sense. I put in a 14 to change people into a Ghost.

But:
CB:AB3C 0x00 (GHOST 1)

Thats the palette and now I'm confused.

Looking through things in FF6Tools and in a Hex Editor, I'm not quite sure where I would change things to change its palette.

Assuming I'm a TOTAL dumbass, which you should, where would you say I should go in a Hex Editor or FF6Tools to change Edgar's color palette.
I see the Event Tree, for example, but I never get to anything that has a CA like in CA:6CAC for example. Ive got 87A through 87E, for example.
  Find
Quote  

#6
Posts: 2,549
Threads: 98
Thanks Received: 147
Thanks Given: 158
Joined: Aug 2009
Reputation: 52
Status
Nattak\'d
EDGAR
CA66BA 0x04 = Sprite
CA66BD 0x00 = Palette

To keep it simple, without displaying the offset as Hi-ROM, CA66BD is offset A66BD in a hex editor, so that's where you'd want to go to - you can disregard the 'C' for this.
That will put you at a 04 hex value followed by a 00. the 00 byte is the one you'd want to change to another palette value (00-07).

The entirety of the palette command actually starts one byte earlier at A66BC: 43 04 00
43 is the issue palette command, the second parameter is the character ID, which is 04 in this case for Edgar, and the third parameter 00 is the palette.

Also besides changing the sprite and palette with FF3usME and hex editor, there will be instances of needing to change the character sprite and palette within the level editor, where they are used as NPCs on the map.

Another note, that first document you found with the OAM data for shops, you can instead use FF3usME to check a flag for the save/shop palettes to sync up to the battle palette, instead of doing it manually with that document using a hex editor. Look for the flag in the sprite editor portion of FF3usME to the right that says Save Screen / Shops Palette Indexes, and check that box for 'Use the same indexes as the battle one', if need be.


We are born, live, die and then do the same thing over again.
Quote  

#7
Posts: 20
Threads: 3
Thanks Received: 0
Thanks Given: 0
Joined: Feb 2022
Reputation: 0
Status
None
Okay. I think maybe you're already way WAY ahead of me. Ive searched for "A66BD" as a hex offset in HxD and it says no such hex offset exists.
  Find
Quote  

#8
Posts: 2,549
Threads: 98
Thanks Received: 147
Thanks Given: 158
Joined: Aug 2009
Reputation: 52
Status
Nattak\'d
(02-24-2022, 03:16 PM)LM008 Wrote: Okay. I think maybe you're already way WAY ahead of me. Ive searched for "A66BD" as a hex offset in HxD and it says no such hex offset exists.

We want to go to the address of A66BD, not search for it as hex bytes:
With HxD, at top click 'Search', then 'Goto'. In the offset field type A66BD. Click 'OK'. It should bring you to A66BD.
Alternatively you can just manually go to the offset A66BD.


We are born, live, die and then do the same thing over again.
Quote  

#9
Posts: 20
Threads: 3
Thanks Received: 0
Thanks Given: 0
Joined: Feb 2022
Reputation: 0
Status
None
Okay, so this is where I'm at now.

I don't see anything that goes "43 04 00"

Do I have something set wrong?


Attached Files Thumbnail(s)
   
  Find
Quote  

#10
Posts: 2,549
Threads: 98
Thanks Received: 147
Thanks Given: 158
Joined: Aug 2009
Reputation: 52
Status
Nattak\'d
Hmm, yeah something definitely isn't right, that doesn't appear to even be event code... I though maybe it was a header issue at first, meaning you'd have to remove the header, but I don't recognize any of that code. It should look like this:
   
   
Is that a more or less unedited ROM you're working with?


We are born, live, die and then do the same thing over again.
Quote  



Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite