There are 2 parts to a map made with this tool: a palette, and images that
use colors exclusively from the palette. There can be any number of images, but
there is no reason to work with more than 3.
To begin, draw the map in an image editor such as GIMP or paint.net. Always
use the same color for the same tile or object. It's like pixel art. Be sure to
split the map into at least three layers, one for the ground and possibly solid
walls, another for objects that should have a floor under them, such as
monsters, objects and tomb and cave walls, and a third layer for regions if
there are any.
While you're drawing the map, keep track of the colors you use and what they
mean, to make the palette. The palette is a text file and it looks something
like this:
GIMP Palette
Name: shrine-floor
Columns: 0
#
0 0 0 "ground":"Space"
34 41 56 "ground":"Blue Grass"
22 22 29 "ground":"Castle Stone Floor Tile Dark"
79 79 104 "ground":"Castle Stone Floor Tile"
106 97 117 "ground":"Purple Stone"
82 75 91 "ground":"Cracked Purple Stone"
66 100 127 "objs":[{"id":"Blue Pillar"}]
66 127 67 "regions":[{"id":"Spawn"}]
127 108 66 "regions":[{"id":"Arena Edge Spawn"}]
127 66 66 "regions":[{"id":"Arena Central Spawn"}]
The file must start with "GIMP Palette" and a newline. Anything between it
and the first # is metadata that's only useful if you're editing the palette in
GIMP. Each line following it contains 3 numbers 0-255 separated by at least one
space that make up a RGB color, a tab (not a space) and a piece of the json
dictionary.
Instead of making a palette file, you can manually add colors to the palette
with the Add Color button. You can later export the colors to a text file to be
reused with the Save Palette button.
Copy one of the lines and edit its color and ground/object/region name. You
can get a name from the map editor or the game's XML. Use the object's real name
that's on the same line as its unique type.
When you're done drawing the map and writing the palette, save all the map's
layers and the palette in the same folder for convenience and drag and drop them
all into the button under Input to import them. Your palettes should combine and
be visible, along with your images. Press Save Map to save the map as .jm and
then try it out in the map editor.
When a palette is imported, it goes into the big palette on the page, so it's
irrelevant whether you have a palette for each image, or one palette for the
whole image.
You _can_ have multiple objects or regions on one tile in the palette, but
it's not guaranteed to stay like that when loaded by a NR source server. If you
cover the same tile with more than one of a kind of ground, object or region,
the tool might not produce a valid jsonmap dictionary and the map won't be
valid. This is nofix until there is need for a fix, i.e. a really popular server
that uses this to make maps and supports multiple objects and regions on a tile.
Original Nilly's Realm forum thread link (dead, here just to pay respects):
https://nillysrealm.com/topic/20762/bmp-gpl2jm-convert-images-to-rotmg-maps
Example files - extract and use as prescribed for a demo:
https://saiapatsu.github.io/realm-bmp2map/example.zip