How to Make a Hex-Map in GIMP
So I've recently started working on a new campaign for my players, something akin to the Counter-Colonial Heistcrawl, set in a fantasy and steampunk-y island chain in totally-not-the-Arabian-Sea. Think pirates, witches, and animal-folk carving out a refuge from totally-not-the-British. Oh, and there's edible magic called "jzāduchi" (or "seraphic" in not-British), made from a sugarcane-like plant. Fun stuff.
Anyways, I needed a map, and thought this would be a fun tutorial.
First, a look at what we're making:
Very empty, but so is the ocean. I want them to feel small and alone.
Ok, tutorial time.
Step 1: Getting GIMP
GIMP is an open source image editing program in the same vein as Photoshop. We're going to be using it for the rest of the tutorial, so if you want to make your own hex-map, I'd recommend picking it up. It's totally free, and really easy to install, just click the download link, run the file, and it's all set up.
Step 2: Setting Up Your Page
The next step is to set up your page. I like printing these maps out and editing them as we play, so I'm making mine 8.5 x 11 inches, or 2550 x 3300 pixels at 300 pixels per inch (ppi). Use whatever paper size is most available to you, or if you're keeping it digital, use whatever size is most comfortable.
From here on out I'll be referring to brush sizes and such in pixels, so if you chose a much larger or smaller size page, keep in mind that the stuff you make is going to appear as a different relative size on your page. If you're dead-set on a much smaller page size and want to keep the ratios the same, you can either A) scale the ppi by a relative amount in Image > Scale Image or B) scale the brush sizes by a relative amount at each step. For example, if you're printing on 5.5 x 8.5 inch pages (50% of the size), you can use a ppi of 600 or cut all your brush sizes in half.
In this step you'll also want to decide what kind of orientation you want. I went for a vertical orientation because I envisioned my island chain that way, but in most cases I go for horizontal.
Step 3: Drawing Coastlines
There are a couple different ways to draw coastlines.
One option, and probably the simplest, is to freehand it and just wiggle your cursor around the page. If you're going for this option, make sure you zoom into your page a little bit so your wiggles have depth. If you're just slashing at the page with a brush at 25% zoom, things are going to look too clean and smooth for a coastline.
The second option, and the one I like to go with, is to draw coasts off of topographic maps. To do this, find some topographic maps off Google Images (or DuckDuckGo, as I do), right click, and hit copy. Then, just open up your GIMP file and paste them in.
When you paste a new file in, you'll be able to see on the right-hand side of the screen this little message labeled Floating Selection (Pasted Layer). Make sure you click on the green Create a New Layer button in the bottom left of that window rather than the green Anchor button or the red Delete button. If you're not seeing anything like that, I've added a screenshot below with how the right-side of your screen should look, including the open windows.
Click the little green button in the bottom left! Make sure you're on "Layers"
Once I've imported my topographic maps as new layers, I like to move, scale, and rotate them using the tools in the top-left window to arrange them how I'd like them. Then, using the opacity slider in the Layers menu, I slide each layer's opacity down to 50%.
Now it's time to draw coastlines. Select the opaque round brush from the Brushes menu in the top-right of your screen, and select the Pencil tool from the top-left window. In the bottom-left window select the Tool Options menu and drop the size down to 5px. Then, in your Layers menu, click New Layer (the button we clicked that used to be green), name the new layer something like "coastlines" or "borders", and move it in between your background and your topographic maps. Make sure that when you're drawing, you're drawing on this layer specifically.
Using the topographic maps as guides, draw in some coastlines! Remember to zoom in a little to add depth, and don't worry about sticking too closely to the actual coast. Sometimes I follow the coast itself, while other times I outline the mountains, lowlands, or a mix of the two. And when I have multiple maps overlapping, I might jump from one geographic feature to another and create strange amalgamations of things. Go wild.
When you're done, you can delete your topographic maps or simply hide them by clicking the little eyeball icon in Layers.
Here's mine at this point:
Not a bad start! Can you spot Sumatra?
Step 4: Adding Locations and Paths
We've got something looking like a map now! Let's add some stuff for the players to interact with. Create four new layers using the New Layer button named Locations, Paths, Hidden Locations, and Hidden Paths. You can use layer folders to group the hidden locations and paths together if you'd like. That'll allow you to toggle visibility for those layers easily.
Next, make a list of what kind of basic locations you want on your map. I already knew I wanted six colonial cities, four temple complexes (hidden), and a mining facility on my map. As I prep I can add more stuff (like a central rail hub, airship dockyard, governor's estate, etc.) to the map, but for now this is enough to get the main travel channels and junction points scoped out.
In the Locations and Hidden Locations layers, I added stars (Star brush, 25px, -162.5 degree angle) to represent points of interest, and in the Paths and Hidden Paths layers, I drew in dotted lines (opaque circle brush, 5px, 500pt spacing, hold down to draw lines) to represent common travel routes.
Now my map looks something like this:
That southern point on the bat-shaped island is the provincial capital, Seraphton (Sākharli in the isles' native language of Dhukevi)
Step 5: Terrain
In this step we'll be using color to add some terrain to the map. It might get a little messy in the details, but hang in with me here, and follow your best judgement when things are unclear.
First, create a new layer and name it Terrain, and drag it to be just above the white background. Now, select your Borders or Coastlines layer and click the wand looking tool in the top-left menu. This is the Fuzzy Select tool, and it'll select a swath of color at once.
With the Fuzzy Select tool and the Borders layer selected (double check these, or else it'll be wonky), click anywhere in the ocean to select the entire ocean, which will be indicated by a fuzzy, animated border. Now click Select on the top menu (between Edit and View), and then Invert. This converts our selection to be all of the land and coastline pixels.
Now, in the Layers tab, click your Terrain layer. Drop its opacity down to 50%. Essentially what we're doing here is painting a light wash of terrain on the Terrain layer, but limiting the area of that paint to just the land (hence, the whole fuzzy select and inversion mess).
Now, switch back to your Pencil tool and pick the opaque brush. Choose an appropriate size for the amount of detail you want in your terrain (I picked 25px) and get painting!
I used #008000 for land/forest and #804000 for hills/mountains. Most fantasy maps distinguish even further, with separate designations for flat land, hills, mountains, forests, and swamps. For now, land/mountains is enough for me, and I'll add in swamps and thick jungle by hand on the physical copy when those areas become relevant to the players.
Overall, I'd suggest using the same maximum value for your RGB codes, which gives the map a bit of consistency. Here I'm using #80, which is 50/100 or 128/256 depending on which setting you're color selecting with.
Once you've added the terrain, it should look something like this:
Woah, mountains. I love mountains.
You might've noticed that the edges between terrain colors are pretty crisp! Let's blur those.
Click Filters in the top menu, then Blur then Gaussian Blur. Change the blur radius to 5px for both X and Y, and bring the opacity down to 50%. Take a look at some of the edges to make sure they're blurring cleanly, and then hit OK.
Here are the Gaussian Blur settings and a preview if you'd like:
Notice how the coastlines aren't black? That's because my Terrain layer is above my Borders layer. Woops, I'll go fix that.
Now that we have terrain on the land, let's fill in the ocean!
Click Select in the top menu, and then Invert. This changes our selection back from the land to the ocean. Then, click the Bucket Fill tool, and change the opacity to 50% so the color isn't too harsh. Then, change your fill color to something blue-ish. I'm using #00bfbf, which is actually teal, but that's just to give it a tropical vibe. Note that my bucket fill color is a lot higher in value than my terrain! I'm using #bf as my maximum value, which is 75/100 or 191/255. This will make your land look more important and substantial, compared to the water (which you mostly want to ignore).
Tip: As a fun trick, you can actually do this with mountains and a lower maximum value, if you want to make them pop a little better.
Once you've picked your fill color and set your fill opacity down to 50% (note: I'm talking about the bucket fill opacity on the left side of the screen, not the layer opacity on the right), click anywhere in the ocean to fill it with blue water. If nothing is being filled, double check that A) you have the Terrain layer selected and B) that you're currently selecting the ocean. If you want to double check B, try inverting the selection again and see if it works.
Here's what my map looks like with terrain.
I also added a bunch of text, but I'm sure you can do that on your own! Just click the Text tool in the top-left menu and go crazy.
Step 6: Grid
We're almost done y'all!
If you're running a pointcrawl, skip this step and add some travel times to the paths using the Text tool. If you're running a hexcrawl, you'll want a grid.
Create a new layer (yes, another one), and drag it above Terrain. Bring the layer's opacity down to 50%, so the grid isn't too harsh. You can slide the opacity up and down later as you'd like, to make the grid more or less distinct.
Then click Filters in the top menu, then Distorts and then Mosaic. The mosaic toolbox should pop up. Play around with the settings as you'd like, and get a feel for what each of them do. Here are mine:
1) Tile Geometry: Hexagons
2) Tile Height: 1
3) Tile Neatness: 1
4) Tile Color Variation: 0
5) Turn off all checkboxes
6) Tile spacing: 1
7) Light direction: 90 degrees
8) Anti-aliasing off
9) Opacity: 100%
And there you go! Now you have a hex grid overlay.
Here's what mine looks like, along with some settings:
Blackmont is such a cool name. Even cooler that the city's at the base of a dormant volcano.
Step 7: Finishing Touches and Tips
And now we're at the last step!
At this point you've got a pretty good map going, and you should be good enough at GIMP now to maneuver around the windows and menus and design most anything you want. For a final trick, I'm going to show y'all how to make little info boxes, where you can keep things like legends, map info, lore, and a bar scale.
As always, create a new layer.
Then click Image in the top toolbar, and then Configure Grid. I like to keep my grid at 75px, but there's an argument for 25px if you want to really squeeze info boxes in there. When you've decided on your grid size, click OK.
Then, click View (also in the top toolbar) and then both Show Grid and Snap to Grid. This will cause a little square grid to pop up on your map. This grid won't get printed or saved when you export your map, but it does have a use. Because we clicked Snap to Grid, our tools will snap to grid lines and intersections whenever possible, which will give us straight edges and standardized spacing.
To make a text box, click the Text tool and start writing in your text. Make sure you have a font that you like (I prefer Garamond) and that the color is black. Write your little box, go wild. When you're done, you can use the handlebars on the edges and corners of the text box to snap it onto a grid.
Now that you have your text box, click the Rectangle Select tool, and select the grid squares that include the text box, and then a little extra padding around it. Using the Bucket Fill tool, you can fill that box with white or a pale brown for paper. Then, using the Pencil tool and an opaque brush, draw in the borders of your box.
And there you have it! A little info box. If you want to add a legend or bar scale, I trust you can do it on your own. You've got all the tools you need.
Comments
Post a Comment