Map Making for Fun and Profit

If you’ve been following the goings-on with Unity of Command, you may know that we’re working on an expansion that follows the Soviet forces as they advance westward after the battle of Kursk. The working title for this expansion is “Road to Berlin” and while that work is progressing nicely, I’ve hit a snag unexpectedly a few weeks ago when I found out exactly how much mapmaking I need to do.

Now, maybe I should’ve realized ahead of time that the USSR was a big place and that mapping it is going to require some effort. Then perhaps I wouldn’t be so surprised at how little of the map I managed to complete on my first day. But I guess I was misled by the nature of terrain around Stalingrad, which is what we had in the original game – and it turns out it’s nearly featureless in comparison with the other sections (Danube delta and Leningrad area shown here).


Anyway, since it looks like I’m going to be mapmaking for a while, it’s a good time to write down a little bit of something about each of the steps involved in making the map.

I’m using our own map editor (left) and here it shows the newly expanded area of the map around Danube river delta. When we start, the south-west section map is literally empty, so the first thing I’m going to do is to create some land and sea hexes. I’m using a GIS overlay to draw this correctly (middle) because in addition to simply placing the hexes, we also need to add the coastline, and this is done by hand.

It would be great if we could just use the coast outline from GIS, but it doesn’t work that way. Mostly this is because the coastal features don’t fit onto the hex grid, but also sometimes they’re too small for the effects processing so you need to use some judgement there. Anyway, a few minutes later, the coastline has been processed for glow and other effects and this is what it looks like…


With rivers you get the same problem: it would be best to just draw the rivers as they are in GIS, however they don’t really fit the hex sides very well which means we need to draw them manually too. To make our task easier, there is our industrial strength pro river randomizer which will draw a river along the hexes you want, with just the right amount the wiggleness. You can then adjust individual points if you really need to, but 99% of the work is already done.

You can see on the left how the rivers are fitted along the hex sides. Then I turn on the path tool, and you can see the individual points. You can do a lot of detailed editing here, but I choose only to adjust at the junctions between river segments and move on (the technically inclined will recognize Bezier curves here, with their characteristic control points).


OK, so things are starting to take shape. Now, let’s add some cities: Bucharest and Constanta in Romania and Varna in Bulgaria. I just pick some nice graphics from the set Nenad has prepaired – they’re incredibly versatile.

Next I add some rail lines, and here again some judgement is called for – bacause of the scale of the game, rail lines need to be separated by some hexes otherwise it quickly becomes ridiculous. In this case, we’re going to add rail lines from Bucharest to Galati and Constanta. Also, in case you were wondering, we do have a rail randomizer that produces these nice organic wiggles in the rail line which are in tune with the map design (but much more wiggly than the actual rail lines).

Finally, I’m adding the terrain: mountains, forests, swamps and the like. The editor enforces some sanity when I do this, so I can’t just liberally mix e.g. mountains and swamps. The map may look nice, but it still needs to be readable in terms of terrain types, otherwise the players will end up holding the “T” button all the time just to figure out the terrain.


And this is it, more or less. Now only to repeat this 125 times or so and we’re done 🙂

Cheers!

 

This entry was posted in News. Bookmark the permalink.

4 Responses to Map Making for Fun and Profit

Leave a Reply

Your email address will not be published. Required fields are marked *