Table of Contents

Tile Molester Graphics Guide

By FelixWright

Hello, and welcome to our current graphics guide for Tile Molester.

The main goal of this guide is to teach newbies how to use this java-based cross-platform graphics editor for their own nefarious purposes.

Let's get started.

What is Tile Molester?

Tile Molester is a cross-platform graphics editor for video game ROMs such as .SMC, .NDS, and .GBA. It was created in 2005 by SnowBro.

Downloading Tile Molester

Requirements

Java runtime environment. Something like the Eclipse Adoptium JRE will suffice. Download and Install as follows if you are on Windows x64: Download links

Tile Molester Mod 0.19 can be Downloaded from RHDN. This fixes many, but not all of 0.16's issues, making it the recommended version to use.

If you would prefer, Tile Molester 0.16 can be downloaded from RHDN.

This tutorial covers Tile Molester 0.16, and may not cover features that exist in the alternate/ mod branches of TM.

If you wish to improve upon Tile Molester 0.16, the source can be found Here on RHDN.

Known Issues with TM

You should learn these limitations now, before discovering them the hard way.

Errors/Not Working

That would be Java's fault. If Tile Molester gives errors, Try running it as an Administrator. If that still doesn't work, Make a batch file (.bat file) containing java -jar tm.jar and save it in the tile molester folder.

If Tile Molester doesn't start at all, you might need to install or update your JRE (java runtime environment) first.

Palettes

If you use a palette that has the same color in multiple slots, the graphics will get messed up. All pixels using the same color, regardless of color slot, will be made to use the first slot of that color. For best results, only use palettes with unique colors in every slot.

If you mess with palettes in TM, don't swap to other palettes. Probably due to the issue above, it messes things up catastrophically. For best results, edit palettes in an external program and either reload the ROM to use them, or load them in as an external file.

Loading Palettes from a File

Tile Molester does not support Tile Layer Pro palette files with CF00 color format. (*.tpl) It also doesn't support Windows palette files with CF00 or CF01 color format. (*.pal) If you replace tmspec.xml with this XML file, you will have a choice between CF00 *.tpl files (GBA Accurate) and CF01 *.tpl files (Super Nintendo Accurate), as well as CF01 *.pal files. (GBA Accurate)

If you're loading a palette from SNES TPL: Select Palette → Import From → Another File…, And make sure Files of Type is set to CF01 TLP File (*.tpl)

If you're loading a palette from GBA TPL: Select Palette → Import From → Another File…, And make sure Files of Type is set to CF00 TLP File (*.tpl)

Copy/Paste

If you undo after pasting graphics, the tile the graphics were pasted over will become blank. This seems to have been fixed with TM Mod 0.19.

Undo/Redo

If you change your canvas dimensions after you begin editing, and then undo, the canvas size will revert to what it was before you began editing.

Zoom

If you paste graphics before zooming out, the pasted graphics will be de-selected. This may also have been fixed in TM Mod 0.19. If you Ctrl Z it should re-select the paste.

Byte Forward/Back

You can Byte Back with the -/_ key, but you cannot Byte Forward with the =/+ key. That being said, the keypad + and - keys work as expected.

Grids

The Block and Pixel grids are not functional.

Using Tile Molester

Keyboard Shortcuts

Before we get into graphics editing you should probably learn more about how to actually use this program. For ROMhacking, here is a comprehensive list of Tile Molester's various keyboard shortcuts:

Key Combination Description
F1 Open help
Delete Clear Selection
PgUp and PgDn keys Page Forward/Back
Up and Down Arrow keys Row Forward/Back
Left and Right Arrow keys Tile Forward/Back
Keypad - and + keys Byte Forward/Back
Shift + Arrow keys Increase or Decrease Canvas Width/Height
CTRL + A Select All
CTRL + G Go To Offset
CTRL + M Mirror
CTRL + I Flip
CTRL + C Copy
CTRL + X Cut
CTRL + V Paste
CTRL + Z Undo
CTRL + Y Redo
CTRL + N Create a new file
CTRL + O Open a file
CTRL + S Save a file

And now that you know this let's look at some other features.

Tools

Tool Description
Selection Rectangle select in 8×8 tile increments. LMB + drag to select. RMB to deselect.
Zoom LMB to zoom in, RMB to zoom out.
Dropper LMB in canvas to select primary color. RMB for secondary color.
Brush LMB to draw using primary color. RMB to draw with secondary color.
Line LMB + drag to draw lines using primary color. RMB to use secondary color.
Flood Fill LMB to fill similar colors with primary color. RMB for secondary color.
Color Replacer LMB in canvas to replace all pixels of the same color with primary color. RMB for secondary.
Mover LMB/RMB + drag or Arrows to move current selection. RMB opens context menu upon release.
Mirror Horizontally flips canvas, or current selection.
Flip Vertically flips canvas, or current selection.
Rotate Right Rotates canvas or current selection clockwise, or 90 degrees.
Rotate Left Rotates canvas or current selection counter-clockwise, or -90 degrees.
Shift Left Shifts canvas or current selection left one pixel. Loops back around.
Shift Right Shifts canvas or current selection right one pixel. Loops back around.
Shift Up Shifts canvas or current selection up one pixel. Loops back around.
Shift Down Shifts canvas or current selection down one pixel. Loops back around.

Bookmarks

In Tile Molester, Bookmarks can be found in the Navigate tab and are used to quickly jump to a specific offset of Graphical Data. Bookmarks can be very handy when making changes to graphics, and are pretty easy to set. Once you are at a specific offset you want to bookmark, simply select the Bookmark Icon or Navigate → Add to Bookmarks… and a new window should appear. This window allows you to type a description for your Bookmark, and assign it to a specific bookmarks folder or location. Once you give it a description and assign the new bookmark to a favored location, select OK. Doing this will add your bookmark to the Navigate tab, and can be accessed at any time once the ROM is loaded.

Codecs

NOTE: This only applies to you if you are loading raw file types such as .gfx, and loading it creates a jumbled pixelly mess.

Codecs can be changed by using View→Codec.

If you are editing a .GFX file for a GBA, your codec should be set to 4bpp linear, reverse order.

However, if you are editing a .GFX file for a Super Nintendo, your codec should be set to 4bpp planar, composite (2 x 2bpp)

Finding Palettes

Note: This isn't a foolproof method. Palettes can often be in arbitrary locations in the ROM.

Compared to finding the Graphics Data, finding Palette Data can be a little trickier. Generally palette data is near the graphics data. Use the arrow keys to shift columns until garbage you think is palette data is at the top left corner. Generally if it's nearby graphics data it will be either before or after the graphics data.

Convert that offset to decimal, select Palette → Import From → This File…, and paste it into the offset box and set size to 9999. The format should be 15bpp BGR (555), and the byte order should be Intel. Click OK, and the palette should have changed. If it's not the correct palette data, rinse and repeat until you find the correct one.

Finding Graphics

If you're using Tile Molester you probably already know what you're looking for. If you do, Open the extracted graphics. If you can't see the file you want to open in TM, make sure Files of Type is set to all files (*.*) in the open menu. Otherwise, Goto… to find it within ROM. A window will open for you to enter an offset. If you're using hexadecimal, replace 0x with 00. Otherwise, convert it to decimal, select the decimal option, paste it in and go.

I highly suggest setting the internal window to max size (the ROM window) and increasing gfx width to 32. Not only will this make finding the right graphics easier, but you'll be viewing the graphics in the same way nintendo drew/input them. Shift columns as needed until you get it just right with very little garbage. Shift pixels as needed.

Editing

Editing Graphics is a pretty straightforward operation, once you match the palette data to what you're currently editing.

The first color of your palette will always be the background, or transparent, colour. If you want to “erase” something, you swap to that color and brush it in. Every other color in the palette is fair game. You can select these colours by either clicking them in the palette viewer or using the dropper tool. Once you have your color selected you can do one of three things to edit graphics: You can edit individual pixels with the brush tool, fill in closed areas with a particular color using the flood fill tool, or replace one color with another entirely using the color replacer tool. From there, editing the graphics is as easy as using MS paint to draw. It is still important to remember, however, to edit things in their respective tiles.

Ripping

So now, you have the correct graphics, and the correct palette. All you need to do is assemble the parts and extract them from the ROM. Use your mouse to select what you want to extract, and Copy that selection. Drag the scrollbar down to the bottom of the ROM, and Paste it. You've just pasted your graphics into what spriters call the Playground. This area should be completely empty. Use your mouse to select and drag tiles together into usable graphics for other stuff.

When you're satisfied with your rip, move it all to the top-left corner, and reduce width and height until it is just your graphics. Now it's ready to extract. Feel free to change the type of palette format by selecting Palette → Format → yourchoicehere.

Once you have that out of the way it's time you copied it out of the ROM. Select Edit → Copy To…, name your file, set its destination, and save the image. Well done, you have ripped your first set of graphics!

Saving to ROM

So you've just finished editing the graphics in your ROM, and want to save them. How can this be done in Tile Molester, you ask? To start, Close any other Programs that may be Using your ROM. Otherwise, the graphics will fail to save to memory because it is currently being run. Now you should be able to save graphics correctly. There are a few different ways you can Save: Obviously, Save simply saves what you have done in Tile Molester to ROM. Save As… allows you to save a copy to a different directory, name, or filetype. Finally, Save All will save all graphical changes from every open Tile Molester window to their respective ROMs. Pick what's right for you, and save your ROM. Now, when it is opened, the graphics should have changed to your new ones!