Jump to content

Palette Editing Question


cleverfool27
 Share

Recommended Posts

So while playing around with the recoloring tool and creating my own battle palettes I've realized that in order to keep within the 16 color limitation some colors are used for multiple parts of the sprite (the weapon and the skin tone of the Sniper, for example).

When I played around with the colors on the Sniper palette I realized that I couldn't properly make a dark armored Sniper because his right leg used a color present in the bowstring and the face. I could fix this without passing the 16 color limitation by replacing the leg pixels with the light gray color on the rest of the armor, but it seems that there is no way to do so using FEcolor or APE on its own.

Is there any way I can fix this? Perhaps I could replace the pixels and make it a pseudo-custom animation, and then insert that? I really would like to keep color consistency between the promoted and unpromoted version of this character!

Thank you.

Attached are the Archer and Sniper palettes I've created so far. As you can see the archer palette has no real blending issues while parts of the bow and the leg use skin tones and thus can't be changed without screwing the face up.

post-12463-0-92690400-1411075507_thumb.png

post-12463-0-66247100-1411075513_thumb.png

Link to comment
Share on other sites

the only real way to do it is to go into FEditor's animation manager, dump the animation, and go into the actual image files (in something like Usenti, MS Paint might mess it up) to replace the pixels you want; then just import it again. :P

Link to comment
Share on other sites

By dumping the data, I got 3 Sniper Sheets which basically showed the images in the class animation editor. I edited those in Usenti to my liking, but cannot insert them directly. I also got a Sniper Frame Data.dmp and a Sniper file that didn't have an ending. I can "insert" this last file as an animation but I have no way of opening it up or anything.

Link to comment
Share on other sites

If you're using Yeti's tool and that other guy's tool, you can copy palettes between the archer and sniper, and edit whichever colors aren't exactly right on the sniper.

Your method of reinserting the animations so they match is fine, but it's a LOT of work as you'll have to edit each frame of the attack to line up. Just the standing sprite won't do. In the end you're talking a LOT more work in the long run using your method.

Link to comment
Share on other sites

I have been using those two tools in conjunction with each other. The way you described is actually precisely how I got the colors to match up. The issue I am having is that there is a chunk on the Sniper's leg that uses the same white as his face pixels so I can't make the leg grey like it is supposed to using the FERecolor and the insertion tool.

Link to comment
Share on other sites

I think that the process that Jubby described will lead me to my goal. I'm willing to edit the Sniper's leggings to use solely the clothing colors and not the white of his face in however many frames.

What dumping the animation gave me was a "Sniper" file of some sort, a .dmp file, and 3 images, all shown in the attachment. I made the edits on the 3 images (hence the copies of the names) and it took around 5 minutes total, so I'm assuming I'm doing something wrong and editing the incorrect stuff, based on how time consuming this method seems to be.

The "Sniper" animation file can be inserted as an animation; simply reinserting the dumped data brings up a success box in FEditor. I want to know what file to edit in Usenti so that it is insertion compatible.

Even if the process becomes very time consuming, I'm willing to do it and post the minor animation tweak to make future Sniper recolors a bit more flexible. Thank you!

post-12463-0-51355800-1411108479_thumb.png

Link to comment
Share on other sites

By dumping the data, I got 3 Sniper Sheets which basically showed the images in the class animation editor. I edited those in Usenti to my liking, but cannot insert them directly. I also got a Sniper Frame Data.dmp and a Sniper file that didn't have an ending. I can "insert" this last file as an animation but I have no way of opening it up or anything.

That "last file" is the serialization file. Open it with a hex editor if you want to edit the palette bytes at the end.

Link to comment
Share on other sites

iirc a 16 colour palette is typically formated as 32 bytes with each 2 bytes being a colour like

0rrrrrgggggbbbbb

where each letter/number is a bit of the 16 bits for the 2 bytes of that colour

r bits are of course for red, g bits for green etc.

actually it may be rrrrrgggggbbbbbb because the GBA has an extra bit for blue? probably

I remember some weirdness with blue

but it's little endian so it would be like

ggbbbbbb rrrrrggg

first colour is of course the transparent colour

palettes are ordered blue team green team red team 4th team...I think

I dunno play around with it and see. GBATEK has info on the colour format.

e: in case it wasn't obvious, you can convert rom 24bpp to 556 (or whatever the GBA uses) by chopping off the lower bits, e.g. 8 bits of red would become 5 by chopping off the bottom 3 (aka right shift)

Another edit!

I just looked in FEditor's source code ("Palete.java" in the "Graphics" folder) and found this:

	public int getARGB(int index) {
		short colour = entries[index];
		return (
			(index == 0 ? 0 : 0xFF000000) |
			((colour & 0x7C00) >> 7) | ((colour & 0x7000) >> 12) |
			((colour & 0x03E0) << 6) | ((colour & 0x0380) << 1) |
			((colour & 0x001F) << 19) | ((colour & 0x001C) << 14)
		);
	}
so the fomat is 0bbbbbgggggrrrrr (kind of backward of what I thought)

(also apparently it's guessing the bottom 3 bits by using the top 3 bits instead of raw 0s, which was a clever hack I did to ensure even colour distribution across the spectrum)

oh and the 0 bit is unused of course

Edited by Aleph
Link to comment
Share on other sites

But this method is simply to change the palette without using FERecolor, right? What I'm trying to do is change some pixels in the actual animation to use a different color on the palette, rather than change the palette itself.

Very helpful stuff nonetheless, I'll spend some time looking at the Hex Editor. HxD is the best one to use, correct?

Edited by cleverfool27
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...