Importing Images as Maps [FEBuilder]

View my reply below.

It could save you time.

Original post:
Thanks to @7743 adding a new feature of febuilder, we can now easily throw in maps or images from other games into our hacks.

palette town fe8

VisualBoyAdvance-M_3ANuYHxosS

With great power comes great responsibility

image

Limitations:

  • 512x512 image.
  • 32x32 map size.
  • 5 palettes of 16 as usual.
Additional details

The final generated object image is 256x256 size. If tiles are not repeated in your image, you’ll be restricted to just a 16x16 sized map.

Step 1.

Select a map

I’ve chosen the Blackjack from FFVI, ripped by Ryan914, and Tonberry2k, who I’ll then credit in my project. There are many to be found on the spriters-resource.

Step 2.

Align

Many of these resources are combined images, so you’ll have to crop it and then align the whole image such that the 16x16 pixel tiles will be where a unit would stand on them. Luckily most retro games use 16x16 pixels for tiles, but if yours doesn’t, good luck.

I open the image in GraphicsGale, copy part of it below as it exceeds 32 tiles in one direction, and set the canvas size to be 512x512. You may find the Custom-Grid and possibly the Snap feature to be useful.

image

Snap

image

If you managed to align it nicely, the rest should be easy.

Step 2.5. (Optional)

Colour reduce
Results when skipping step 2.5

(Not as vibrant in this case. Your results may vary depending on the colour reduction methods you use. Another test image produced seemingly identical results.)

I continue using GraphicsGale here, but Usenti is another great choice for colour reduction.

image

image
From here on out, we’re using FEBuilder now.

Step 3

Decrease Color Tool

image

image

This sets up the palette in the way that FEBuilder needs it to be.

Step 4 (Optional)

Expand the plist

Warning:
Pointing a plist entry incorrectly will destroy your rom, with FEBuilder’s lint feature immediately reporting thousands of errors. Please make a backup of your rom before changing plist entries. It is safe as long as you make a backup beforehand.

image

Change Map Style

image

They should all be unused plist and have different numbers.


I also set the tile animation to 0. Animations are not covered in this guide.

Finally, we just hit ‘Write to ROM’.

Now you’re ready to add in new maps/tilesets.

Errors

Please note that FEBuilder will report a few errors until the next step, as currently it’s a blank map that you would be playing on. Do not worry, this is normal.
image

Step 5.

Import your map

If you skipped step 4, you must overwrite an existing tileset.

Let's overwrite

Note that the various duplicates are simply re-palettes of the tileset. Changing Fields3 will change all your Fields.
image

image

Result

I can then edit my map. You’ll probably want to resize it.

LINT will no longer show errors.

Step 6.

Set the terrain

Everything is considered ‘Plains’, so now we must choose what FE8 terrain each tile will be.

This can be a bit tedious, but you can select each tile and choose the terrain type for it.

Additional possible methods
  • I’ve heard there is a way to do this with Tiled. MisakaMikoto has included instructions in this thread on it, with the header Edit the terrain info. To do: see if I can get this method to work as a quicker way to edit the terrain. If anyone has any resources on editing the terrain of a tile config, please let me know so I can add it to this guide. :slightly_smiling_face:

Found this Tileset image to FEBuilder script thread by @feels

This script converts a PyxelEdit XML tilemap file into an FEBuilder MAPCHIP_CONFIG file. The script can also incorporate terrain and palette data from a TMX file, as long as the TMX file has tilesets named ‘paletteData’ and ‘terrainData’ and the TMX shares the same filename as the XML file.

It might be easier to work in a program like Tiled where you can presumably set the terrain for a bunch of selections at once, so I am including a link to the thread for now.

Conclusion

And there we have it. We are no longer forced to contend with the regular limitations of tilesets.

Live your dreams.

image
Yes it does, Kirb. Yes it does.

Huge thank you to 7743 for adding this feature to FEBuilder.

19 Likes

DAMN! This is such a fantastic tool!
It will make porting over basic new tilesets a breeze!
Obviously organising the tile-config properly will still take time, but it cuts out so many steps!

Hats off for this nice addition!

1 Like

Holy sh*t! This is incredible, imagine all the possibilities! Is this the beginning of something big?

1 Like

There is a lot potential to make tilesets thanks to this, beats making everything by hand.
Well, there still the optimization of the object map to do by hand, since I assume it doesn’t make any difference between tiles. Anyway time to experiment with this.

Just found this. Perhaps it may be of use for creating new map_chipconfigs?

The idea would be that setting the Terrain would be a lot easier in another program where you can set it for a bunch of tiles at once. But it’s also more hassle to swap between programs and convert - I might not bother for small maps. Definitely worth looking into if you’re working on new tilesets, imo.

I see the Shrek and I wonder if there are some technological pursuits man should not chase.

2 Likes

It’s been a while, and I’ve finally learned how to streamline this process, reducing most of the workload. The biggest issues were that:

  • Some maps are bigger than 512x512, but still fit within fe map dimensions. For example, 33x31 map size was previously invalid.

  • Setting the terrain for a ton of tiles is very much not fun. Previously I set up autohotkey shortcuts to make it tolerable while using febuilder, but it was hacky.

Before we begin…

Similar shades will often be turned into a solid colour, so you may want to adjust part of your source image.

light grass -> dark grass

For me, that means adjusting the grass. Colour adjustments must be done before using febuilder’s Colour Reduction Tool.
a) open in gimp2 > Colour Index to 80 colours > Color picker the ~6 grass colours to change to a dark green
b) Preview the end result by:
FEBuilder -> Tools -> Decrease Color Tool -> Type 7 -> set the dimensions to whatever your source image is

Step 1.

Extract 16x16 tiles using this website & download tiles.png.
image

(Shoutouts to @rainlash for linking me it.)

Step 2.

FEBuilder -> Tools -> Decrease Color Tool -> Type 7

If you need tile animations, you may wish to reserve a palette (PaletteNo 4).

Step 3.

FEBuilder -> Map Editor -> Edit Palette -> Import as single image

Step 4.

FE_Map_Creator
a) File -> Load Tileset -> Processed Tiles.png
b) File -> Import Map Image -> Source Image.png
c) File -> Save as YourMap.tmx

Step 5.

a) FEBuilder -> Map Editor -> Import your .tmx

b) Set the terrain for your tileset.

Conclusion

This reduces the workload of setting the terrain by around 75% and allows for maps bigger than 32 in a dimension without manually repacking the image. That’s a win-win for me.

It may seem fairly simple to follow the above steps, but a lot of experimentation went into figuring this out. I am using 3 different programs to streamline this process, and was testing a couple more out, too. Many actions, or even ordering steps differently would break a different aspect of the tileset, tileconfig, or map, so it was pretty frustrating to figure out. Still, I am very relieved to have done so, as I believe it reduces my workload for importing new maps by up to 80%.

:pensive:

5 Likes