This page is a mirror of Tepples' nesdev forum mirror (URL TBD).
Last updated on Oct-18-2019 Download

Final Fantasy NES: 4 distinct character palettes

Final Fantasy NES: 4 distinct character palettes
by on (#64292)
In this post on GameFAQs:

http://www.gamefaqs.com/boards/522595-f ... /613234621

Somebody asks if it is possible to have four distinct palettes for the characters. The responses in the thread were negative. I wonder if anybody here might have knowledge that they don't have? Is it possible?

by on (#64294)
Might want to change the subject so we're not thinking about Cecil and Kain :)

Tried looking at what the palettes are currently used for?

by on (#64300)
Dwedit wrote:
Tried looking at what the palettes are currently used for?


This is the response from that thread:

Quote:
...the NES has only four object palettes and four background palettes; one foreground palette is needed for the weapons (and damage and the cursor), so with four characters you'd have to either have every weapon be the same palette, or else have one of the four characters change palette midbattle to match the weapon/damage/cursor. That's why there's a repeat in the FF3j onion knights.


If it can't be done, it can't be done I guess. I thought that there might be some way to get around the limitation.

by on (#64301)
Make the weapons the same color as the weapon user.

by on (#64303)
That sounds good, considering the reason for having four distinct palettes.

by on (#64329)
I think in fact FF1 and FF2 uses two palettes for characters and two for weapons/effects (remember damage is shown in a caption box NOT sprites), and FF3 improved it to have weapons+effects+damage using one palette, leaving 3 for characters.

So the best thing possible would be to hack FF1 to do it FF3-style. Then, technically, it should be possible to rewrite character 1's palette right after character 1 to match character 4's colors. Definitely not easy to do without too much graphical glitches, even harder to implement in FF1's code, but technically possible.
If it's too hard to hack FF1's palette so they are used in FF3-style, then this technique can be used 2 times - rewrite character 1's palette with character 3's and character 2's palette with character 4's.

by on (#64342)
Bregalad wrote:
I think in fact FF1 and FF2 uses two palettes for characters and two for weapons/effects (remember damage is shown in a caption box NOT sprites), and FF3 improved it to have weapons+effects+damage using one palette, leaving 3 for characters.

So the best thing possible would be to hack FF1 to do it FF3-style. Then, technically, it should be possible to rewrite character 1's palette right after character 1 to match character 4's colors. Definitely not easy to do without too much graphical glitches, even harder to implement in FF1's code, but technically possible.
If it's too hard to hack FF1's palette so they are used in FF3-style, then this technique can be used 2 times - rewrite character 1's palette with character 3's and character 2's palette with character 4's.


Bregalad, I want to say that I really like your Final Fantasy no menu music hack. I wish that those individuals that are constructing grand hacks of FF would use that patch in their hacks.

If you say that the palette thing is technically possible, I will continue to look into this. It doesn't sound easy, but there are a lot of examples of NES programs that change palettes mid-screen, so it's at least nice to know that something similar has already been done.

by on (#64351)
Haha I'm glad someone liked my hack. Yeah, I really can't stand the menu music in FF1. It combines with some of FF1 hacks I tried well (because I just overwrite some code with other code at a place hacks aren't likely to change) - but it breaks with GFFBH2 which I was disappointed. My music hack + GFFBH1 was the best was to play FF1.

Back on topic, changing palettes mid-frame while having something displayed is already really hard - you'd need some pixel areas where you're sure no monster will be displayed or something (after removing the borders of course).

Not to mention FF1's battle routine is a huge mess.

by on (#64354)
Something like this?

Image

I'm still researching how to do it.

by on (#64357)
Making palette changes mid-frame in your own programs is already hard enough, hacking them into a commercial game would be hell.

by on (#64360)
tokumaru wrote:
Making palette changes mid-frame in your own programs is already hard enough, hacking them into a commercial game would be hell.


This is true. However, consider how much time and effort people have already devoted to hacking and researching Final Fantasy. It must have been hell for at least some of those individuals. But yes, it would be hell, that's for sure.

by on (#64372)
No - not something like this - only remove the border where the palette would be rewritten (between the characters), not for the menu on the bottom.

Anyway this won't work because at least on the final battle with Cahos, he takes up the whole screen and there is no place where you could turn the rendering off for a few scanlines. So you'd have to do the technique I did here - on each sanline turn rendering off, write one palette entry - turn rendering on again and set scroll.
However, I always write color #0 which fast up codes a little. In FF1, the fact there is never background on the right below the characters could help a lot, yet you'd still have to find some unused RAM to achieve this (and not to mention adds code that would do that every frame flawlessly in the existing game). So it'd be hell, but technically possible.

by on (#64378)
Thanks for answering my questions. I am understanding this subject better now.
Just the idea of applying advanced raster effects to a commercial game is exciting.

by on (#64447)
I'm no expert on this subject at all, but couldn't you just have all the weapons be black/white with a certain color for shading, and have that color be the last character's coloring? For example, Red Mage has skin color, red, black, white as his four colors right? You could make the weapons use that palette, then use the other three for the other three characters so you'd have 4 distinct character colors. Hell, the idea to make the weapons change color depending on user could work too, or even just using any of the four palettes depending on the weapon.