View Full Version : [Tutorial] Guide to editing overworld sprites in Pokemon Platinum US

April 24th, 2009, 12:25 PM
I've already posted this over at Project Pokemon, figured I'd post it here too for you single-forum types d:
Note: the Project Pokemon copy has pictures to (hopefully) aid in completion of the various operations we're about to cover. If you have any trouble understanding something, head over there. (or just ask, and I'll attempt to clarify)

A note of caution before you even begin; this process isn't for the impatient. There's currently very few tools available for editing anything in Platinum, and said tools are a pain in the ass to use because they weren't designed for editing this game. If you want a one-click solution, you'll have to wait 'til someone bothers making proper tools for the job :v

Things you'll likely need
An English Platinum ROM. It MUST be a true, unpatched, untrimmed ROM file. The sprite offsets are different in a translated game, not too sure about a trimmed one. Just use a fresh copy directly from your cartridge, 'tis ideal (you DO have a physical copy, right?).
PokeTEX English (available in the Project Pokemon tool thread)
Modified sprite index file for PokeTEX (contains the sprites' locations in the ROM; I've attached it to this post, scroll to the bottom. download it into your PokeTEX folder)
Tile Molester (available at Zophar's Domain). For basic edits and recolors, Tile Molester has a paintbrush, linemaker, paintbucket, etc.
If you're going to do anything but a very basic edit or recolor, you'll want an image-editing program that can handle modifying one pixel at a time without making a mess of things, open multiple files in one window, and preferably create multiple layers for use in a "tool sheet" image containing bits from other sprites you might use (I used Photoshop 6.0 myself). If you don't have one, I believe GIMP is free, Google it.
Lack of carpal tunnel syndrome (optional, but you'd be in far less pain when this is over)

First and foremost, back up your ROM. PokeTEX requires that you save when you import a sprite sheet or change palette colors.

Next, boot up PokeTEX. Click the "Op. ROM" button at the top, find your ROM, and...open it.

Drop down the blank box at the top of the window; you'll see several entries, including the hero/heroine ones and the battle tower people. Note that there are several different ones for both hero and heroine; you'll have to come up with sprites for all of them if you want everything working properly. For now, we're focusing on getting the walk animations working. Select any of the tower sprite sheets except for 5.

(You can try saving the hero/heroine sheets and editing them directly, but they always screwed up when I re-imported them. I'm not sure what exactly the problem is. If someone else can get it to work right, then by all means tell me, and I will add the significantly-abridged method to this guide.)

The sprite sheet should appear in the left pane. Oggle it for a moment, then click the "Save poke" button at the bottom-right corner of the window.

At this point, I recommend creating a folder to drop .poke files, exported Tile Molester sheets, and anything you make in your image editor into. It'll save a bit of clicking later on.

Congratulations, your first step into sprite-editing hell has been made. Pat yourself on the back, then continue.
Open Tile Molester, making sure not to touch its hands. Click the "File" menu and click "Open..." (or if you're savvy, clicking the little folder will do). Browse to the folder where you exported the sprite sheet from PokeTEX earlier. You won't see anything at first; drop down the "File of Type" box and set it to "All Files (*.*)". Double-click your .poke file that magically appears, and wait the millisecond it takes to load.

My, this looks like a bunch of gibberish! Tile Molester, by default, isn't set to display a file of this type. Of course, you're not going to let that stop you.
Click the "Image" menu at the top of the screen, and select "Canvas Size". Set it to 4 columns, 52 rows.
Click the "View" menu at the top of the screen, highlight the "Codec" sub-menu, find the entry "4bpp linear, reverse-order" and click it.
Click the "View" menu again, still located conveniently at the top of the screen, highlight the "Mode" sub-menu, and click "2-Dimensional".

You may have noticed (if you didn't you're completely out of it) that the image is no longer gibberish, but actually looks like wee little video game characters. The only problem is, the colors are all wonky. Easily fixed---click the "Palette" menu, highlight the "Import From" sub-menu, and click "This File...". The offset for this size sprite sheet is 6708. Tower5 uses 8244. The size for this and any other sprite sheet is 16. Click "Ok".

Full list of hero/heroine sprite palette offsets:
hero: 13300
herobike: 11028
hero2: 6596
hero2f: 1196
heroback: 2872
herofish: 8756
heroride: 2276
heroshiny: 13300
herouse: 3040
herousepoke: 2276
Heroine sheets are identical in size, so the same offsets should work for them.

Again, if you're not a zombie or summat, you'll notice that the sprite sheet, or rather column, is now clear and colorful. Admire your handiwork for a moment, then get back to it. Long way to go and all.

Something to keep in mind; the "sprite column" is shifted to the right a little too much, and so the sprites will "wrap around" to the left side. Make sure you edit not only the sprite itself, but the "wrapped" portion on the left side.
If you only intend to edit the head of the sprite, you can make the sprites stop "wrapping" by clicking the button near the top-right of the tool bar that looks suspiciously like a fast-forward button. It will make the sprite at the bottom of the "column" appear cut-off, but don't worry, it's just been shifted to the top and converted to gibberish.

Click the "Edit" menu, and click "Select All". Click the "Edit" button again, and click "Copy To...". For the file type, select "Windows Bitmap". Name the file and save it in the editing folder I assume you made.

Now for the actual editing. I can only offer instructions for limiting the palette size and preventing a smeary mess with tools in Photoshop; for any other program, consult the help file or summat.
Open the file you just saved in Photoshop. Click the "Image" menu, highlight the "Mode" sub-menu, and click "Indexed Color...". Set the palette to "exact", uncheck Transparency and click "Ok". This will prevent Photoshop from using transparencies while you paint and inadvertedly adding colors to the palette.

Open the sheet with the sprites you're going to use. I recommend coloring it with the colors of the sheet you imported from your ROM before you copy it over---it makes it much easier to get things right the first time later when you're modifying the palette in PokeTEX. Keep the colors themselves as close to the originals as possible, to ease reintergrating the sprite sheet with its .poke file. Yes, this means your character will be strangely-colored. No, there's nothing you can do about it at this point.
Important: Do NOT, in any way, edit the coding at the very top of the image. If I have to guess, I would say that this is the file's header. Screwing around with it makes Very Bad Things happen. Actually, it'll just make PokeTEX tell you to go do inappropiate things to your pet dog. Or that's what I assume it says, anyway. Someone forgot to translate the error messages. Don't touch it in any case.

Once you've completed your recoloring and editing, select each sprite with the "Retangular Marquee" tool and drag it over into its respective slot. If you recolored the sprite beforehand, the colors should automatically remap themselves to use their respective spots in the palette. If not, your sprite is going to look very strange for now.

Save the sprite sheet when you're done copying sprites over. Don't overwrite the one you originally exported, as it will be useful later.

Back in Tile Molester, click the "Edit" menu and click "Paste From...". Select the sprite sheet you just saved and open it. It should automatically align itself. Resize the window so that it's slightly wider than the sprite sheet, and click the grey area to deselect and complete the paste operation. All colors should automatically remap themselves to the palette if they're close enough to the originals. If not, don't fret, it doesn't much matter anyway. Click "File", then "Save As..." and save the .poke under a different name than the original. Do not overwrite the original, as you will need it to restore part of the ROM you're about to overwrite.

Bring PokeTEX back up, and select the sprite sheet that you originally exported. Click the "Open poke" button at the bottom-left of the screen, and open your modified sprite sheet. One or two colors may be wrong; as mentioned at the beginning of this guide, Tile Molester especially, and PokeTEX itself weren't designed to handle this game, and a color or two might have gotten screwed in the import/export process. Ignore it for now, and click the "Unk.1" button near the bottom-left of the screen.

You're almost done. Click the "Extend" button at the bottom-right of the screen. The window will expand, and a pane full of numbers will appear in the left of the expansion. This is the sprite's color mapping. You could, in theory, edit sprites solely through this interface, skipping this entire guide, if you were very good at visualizing the final product. But if you're not, read on.
There will be a red square around your character in the upper-left pane that contains the character sheet. Pressing the < and > buttons to the right of the color mapping move this square through the sheet. For now, select the first spot in the character sheet, select everything in the color map pane, right-click and click "Copy". Drop down the box at the top of the window, and select either the hero or heroine character sheet. Down next to the color map, click < to select the first spot, select everything in the color map, right-click, and click "Paste". To finalize the replacement, click the "Save ROM" button in the bottom-right of the window. Do this after each copy-paste cycle, or the change won't take.

Continue doing this until all the frames you have made are placed in their respective spots on the hero/heroine character sheet. If you can't figure out what gos where, go over to PP and view the thread I have there---this forum doesn't allow me to post the picture yet, I'm too n00b :v

When you're done, modify the palette so that your character is colored properly. I opened up another PokeTEX window and copied the colors from the original sprite sheet (since I was just modifying a tower sprite and reinserting it), but there's no reason you couldn't copy the HSL/RGB values directly from the sprite sheet you used with help from your image editor's Color Picker and palette view. Just keep in mind that you only have 15 colors to work with (+1 transparency color), and the first color must be set to the background color.

And there you have it. Repeat the same procedure for running, swimming, fishing, biking, etc etc.

If you would like a specific sprite added to the index, request it and I'll see if I can find it. For now, only sprites that I've deemed important are indexed. Eventually, I hope to get them all done.

Also coming soon: editing trainer screen picture and battle back picture.

Update: new offsets added to the PokeTEX sprite list. Credit goes to mindfreak for listing'em. Only the "important" ones are named, still. Redownload below~

Update: It was brought to my attention that I'm a screwup and forgot to include the palette offsets for ALL the hero/heroine sprite sheets, such as the ones used for biking/fishing/pokeballin'/etc. They have been added in the appropriate section of this tutorial.
Thanks to mouses11 for bringing this to my attention.

Mr. Frog
April 25th, 2009, 2:02 AM
i've been looking for this all week.

April 25th, 2009, 10:06 AM
Thank you, thanks very much. Just what I was looking for.

April 25th, 2009, 10:24 AM
Could you add some pictures to this please to make it easier to understand

April 25th, 2009, 11:40 AM
I would like to, but unfortunately the forum prevents me from linking out until I have 15 posts. I will, however, see about posting pictures in the Project Pokemon copy.

Which part of it did you have trouble understanding, so I can target my screenshots a bit better?

April 26th, 2009, 2:38 AM
I have made a (more) complete list for the sprite offsets in platinum(u)
Look out large spoiler.(I didn't name them because I'm lazy.)

May 3rd, 2009, 11:53 AM
I'm having problems with poketex. I load my rom then click hero, it loads but there is no picture, then I click save poke and a message pops up basically saying nothing, like "??????????????????" was one, how can I fix this?

May 4th, 2009, 8:14 AM
Sorry for the lack of updates, people. Been busy with other stuff.

Thanks, mindfreak. I'll update the list.txt in a little bit.

madarawolf, make absolute sure that a: you have the modified list.txt attached to this thread in your PokeTEX directory (overwrite the old one), and b: you're using a "true" English version of Platinum. If it's only patched with English, it won't work (offsets are different).
Also make sure you don't have the ROM loaded in any other program, PokeTEX won't work properly without full read/write access, even if you're just ripping stuff.

Edit: pictures added on the Project Pokemon copy of this guide~

May 5th, 2009, 1:45 PM
Thank you, it's working now. I just have one question though, can I change the size of the overworlds without screwing things up?

May 5th, 2009, 4:34 PM
The normal maximum size for an everyday sprite appears to be about 32x32. So you've as much room as the red square in PokeTEX indicates. Just make sure to keep things centered unless you want it looking funny :3

I imagine you *could* use oversized sprites, if you knew what to change in the game's internals. It'd certainly take some hex editing, and I've no idea where you would start. On top of trouble of having PokeTEX import it properly, you would also have clipping issues in-game, what with doorways and small spaces being designed for a small sprite. Actually, I think even using the full 32 wide would be too much.

But sure, if you want, there's probably a way. I've noticed that some fansites have sprites ripped from the game that appear to be ~64x64. There's bound to be someone around here who knows what to tweak~ but I'm afraid that I do not.

May 7th, 2009, 11:48 AM
Oh, but if you do find out please put it in this tut.

May 8th, 2009, 12:58 AM
Of course.

I think we've come about as far as we can in PokeTEX though, where sprites are concerned. Even if someone COULD figure out how to edit the game to accept larger sprites, PokeTEX isn't really equipped to deal with them properly :\

What we really need is some spiffy new tools.

May 17th, 2009, 8:33 AM
Too bad I'm not a very good programmer yet:(. but next year I'm taking a class on programming and if no one's made a better progam by then I will.

Ok now I'm having another problem with poketex. whenever I upload the .poke file the picture moves down and wraps around to the top. Thats a real problem that I wan to fix. so can you please help me.

May 29th, 2009, 5:34 AM
Hmm, everything went smoothly until I reinserted the Poke file... I got this. When changing anything it added the "trash" pixels and moved everything down. Also when I change sheets and then return to the hero sheet it's color palate is way changed (black and dark green). Am I doing something wrong in the steps?


June 3rd, 2009, 2:25 PM
I've been having the same problem as mrhiyuck.

June 3rd, 2009, 4:02 PM
Would this work for Fire Red? Or only Platinum?

June 5th, 2009, 12:25 PM
This only works for ds games.

June 15th, 2009, 8:53 PM
Sorry people. Been doing other stuff.

As I said in my PM to mrhiyuck (dunno if it actually sent, mind you...):
You can't edit or import into the hero sheet directly; PokeTEX was made for earlier games, so it's not 100% compatible with Platinum. You need to export one of the minor sheets, preferably one of the Tower sheets, edit your custom sprites onto it, re-import it and finalize it, then use the color map (the thing with lots of numbers in it) to manually copy each sheet piece onto the Hero sheet. It's a pain in the arse, but that's the only way I could put things in without getting a corrupted mess~

So yea. You HAVE to follow the directions to the letter. The only way to edit the hero sheet for now is indirectly, through the color map in the lower pane. Direct edits don't work; I think it's because the Platinum sheets contain a slightly larger/different header than the earlier games, and since PokeTEX hasn't been updated in...well, hasn't ever been updated, it's not equipped to deal with it properly.
You CAN, however, directly edit the palette. Simple color changes are easy enough to do :v

June 16th, 2009, 1:34 PM
Thank you for the advice (I did get the PM). I did some playing around earlier and did happen to get it to work with Platinum. The only thing I did different was the amount of times I adjusted the image in Tile Molester. I only moved it over once to edit the bottom sprites. Dunno if that's the reason or I got lucky, but whatever.

However once you get it to work, ALWAYS copy the "number sprites" to some sort of text file. You can always copy/paste into the main sheet on a fresh ROM once you have collected all of them.

June 18th, 2009, 8:28 PM
I started over and whenever I hit unk.1 A message pops up saying ??????????????
I tried redownloading the .txt file but that didn't help. I need help again.

June 24th, 2009, 1:19 AM
sorry for my bad english i'm vietnamese
where can i download the pokeTEXT tools for pokemon platinum
i want this tools

July 28th, 2009, 7:40 PM
septfox really needs to check this forum more.

August 3rd, 2009, 7:50 PM
Can someone post a working link to poketex? I downloaded it, and whenever i click on a sprite from the drop down menu after opening my rom it stops responding, any ideas?

August 8th, 2009, 9:18 AM
Did you download the .txt file and replace the old one with it?

October 7th, 2009, 7:29 PM
i successfully changed hero to goku super syan 4
but i need to change it when hes on a bike to but the off sets different can some one please help me out on it i would be wiling to give you the goku.poke file i made its actually really good for my first try i have the goku bike in bmp already and thanks

November 13th, 2009, 12:46 PM
What do you need help with specifically?

April 22nd, 2010, 6:07 PM
not all hero heroine sprite sheets use 13300 =/ like the bike one for example

April 22nd, 2010, 7:21 PM
*copies and pastes from the other copy of this tutorial*
Good evening, gentlemen. And any ladies that might be lurking around.
It's been a long time since I've bothered doing anything with this thread (or anything Pokemon in general), but I've come back to answer the questions that have cropped up...even though the original askers might not be around :\

I don't know if this tutorial is obsolete at this point; I imagine that better tools have come out since I wrote it. If so, GG, it was great to be helpful while I could be, if not, you people are bloody lazy :v
I'll look around a little more after I get done with this post, if this method of sprite replacement is obsolete then I'll note it in the original post and give a link pointing to whatever new information I might have found.

septfox really needs to check this forum more.

He does, the lazy bugger. Someone should tie him up and flog him a bit.

Can someone post a working link to poketex? I downloaded it, and whenever i click on a sprite from the drop down menu after opening my rom it stops responding, any ideas?

Either the ROM you got wasn't a true US copy, it's been trimmed/tweaked/fondled/whatever, or you didn't replace the offset list that Poketex comes with by default. Either one of those will lock the program up; the former because the US offset list points to data that Poketex can't process, the latter because Poketex comes with an offset list for...one of the JAP ROMS I think, in any case it points to data in the US ROM that Poketex can't process. Make sure all your ducks are in a row and try again~

not all hero heroine sprite sheets use 13300 =/ like the bike one for example

Of course not; sheets like the biking ones are different sizes.
An oversight on my part. *cough*
Probably never caught it because I never went past replacing walking/running animations. So yea, "my bad" as all the kewl kids say~
For now, see if the other numbers provided work; 6708 and 8244. I don't recall off the top of my head if those sheets are the same size or not.
Keep in mind that correct coloring in Tile Molester doesn't actually DO anything as long as you don't change any of the colors that it loads. The reason being, as long as Poketex itself can load the correct palette (as evidenced by the sheet looking normal in its viewer), you shouldn't have to bother anywhere else.
As long as, once importing a sheet into Poketex, you change the palette colors to the ones that your sheet actually uses (Poketex will probably load the sheet's original palette assuming you didn't change any colors), your sprite should come out fine.
(I assume this is the same problem as the guy replacing his stuff with DBZ things had.)

Should you change any colors without finding the proper palette number, you'll probably corrupt the file, since Tile Molester will probably save the colors to the wrong location. Yes, I use probably a lot; again, I never delved into editing the secondary sheets. I'll go do it after I eat something, and get back to you~

Mr. Magius
May 2nd, 2010, 12:15 PM
You said once I was done editing my sprite, I should import the finished .poke file to PokeTEX...but I never edited a .poke file, I edited a BMP file.

I managed to edit the palettes just fine, but I've no way of editing the actual sprite as I said above:


May 5th, 2010, 6:10 AM
Everything worked fine, but... Since you can't open trimmed Roms, does that mean I can't edit my 'Rom Hack'?

How to edit sprites in my trimmed rom, then...? ;_;

Invisible Fist
May 8th, 2010, 6:51 PM
Hey Septfox,

Thanks for the tutorial, but I'm trying to edit the heroine's overworld sprite in hg and when I click "Unk. 1" I get a message box with "?????????????????". Could you help me with this?

May 9th, 2010, 4:01 AM
Hey Septfox,

Thanks for the tutorial, but I'm trying to edit the heroine's overworld sprite in hg and when I click "Unk. 1" I get a message box with "?????????????????". Could you help me with this?

The Rom you're using should be untrimmed / unedited...

Be sure to have the correct list.txt file in the same folder as well.

Still need an answer to my question though;
how can I edit overworld sprites in my Rom Hack if I already edited some things?

So, in fact, if you want to edit overworlds, you can only do that at the beginning of your Rom Hacking Project?

July 20th, 2010, 12:28 AM
Would this work for Fire Red? Or only Platinum?
It Only Works For D/P/PLATINUM