Mapmaking Tutorial

Post Reply
User avatar
Elessar2
Posts: 1114
Joined: Wed Nov 30, 2016 12:35 am

Mapmaking Tutorial

Post by Elessar2 »

I have been asked to show how I build my scenario maps by interested parties, so here we go. The next country on my iternary is Greece, and given it's convoluted coastline it will be perfect to demonstrate certain key issues.

I. Map source can come from pretty much anywhere.

One tool available for use in the game folder is the Map Scanner, available in the Extras folder. The instructions are in the Resources subfolder, so I'll just mention some key tips here. All water areas need to be coded for pure blue, code 0000FF, so that will likely involve a lot of editing to add that color to all water areas. Alas this app dates back more than 10 years, and uses the game's tile codes from the previous game engine, which doesn't match the current one's settings, so tiles will come out all weird in most cases, meaning you will likely still have to manually choose them yourself.

II. I use Google Maps for my main mapping needs.

I typically will zoom in sufficiently onto the area of the map that I want to work on next. The biggest issue is what to do if that map section in the editor is not perfectly oriented N-S-E-W (for pretty much all non-Mercator projections). The drawing program I use is good old fashioned Microsoft Paint, which alas has a lot of missing functionality found in more advanced programs, one of which is that it will only rotate a pic in 90 degree intervals. But for a goob like me it is more than sufficient.

Google Maps for mobile devices WILL rotate the map for you, but it won't tell you how many degrees. The more advanced drawing programs will typically do so however; me, I use an online app: https://onlineimagetools.com/rotate-image. Note it saves it in PNG format, which Paint doesn't support (I typically change it to a JPG, but note JPGs lose a lot of little details, and sometimes a GIF or a bitmap may be more desireable).

III. You'll need a hex grid, oriented how SC has them, flat tops N-S.

Here's the file I use, a bitmap so as to avoid all the little non-clear pixels that a JPG will put in):

Image

Note the number [145] in the bottom left corner, which is the number of pixels that the hexes are wide (N-S). We'll need that when we resize the hex grid to match the scale of the map we are making.

Google Maps will have a scale bar in the bottom right hand corner. I'll simply grab a screenie, plop it into my painting program, and measure how wide the bar is, and note the Google Maps' scale. Typically I'll zoom in on GM until I get a 10 mile wide bar; this is to avoid errors which can sneak in if you use too big a chunk of the map at once. Measure the bar in pixels in your painting program.

Now some easy peasy math. Assume the bar was 90 pixels wide. My map uses 12 mile hexes, so multiply the bar size by 12/10 (or 1.2):

90 x 12/10 = 108

That's the desired hex size for your job. Now to establish how much we will need to shrink the hexes:

108 / 145 = 74.4%, so you'll need to shrink the hexes by 25.6%. Paint uses a percentage of the original size, which rounds down to 74% (alas Paint doesn't use decimals, but close enough for our purposes).

Shrink the hexes to the desired size, copy and paste the grid (switching your drawing program so that it will overlay on your map and not blot it out; Paint has that under the Select icon, called "transparent selection") onto your map. You can align it however you want, based either on how pleasing or useful the resulting map sprites will look, or if you already have a map section you have already built you can align the new section with the old one using a common hex (typically a city for me).

Here is a shot of the N Tunisian and NE Algerian coast that I used last week, rotated 5 degrees clockwise. Note I wrote in the hex size and the shrink % above the distance bar in the lower right hand corner:

Image

IV. Apply the hex sprites/tiles/pieces to build the map.

To get the best use out of these, you need to grasp how the tile sprites are aligned. I'd suggest opening the editor now so as to follow along.

Image

A land tile will have been designed to attach to another land tile at two of the red marks; you can imagine a clock face overlaid on the hex. There will typically be 4 tiles for each possible orientation, 2 sea spaces and 2 land spaces. [At the bottom of the tile screen are some specialized tiles, for fjords/canals or isthmuses and such-we'll use those as necessary] You just note how much land (or sea) a given hex has on the map you made and try to find the best matching sprite.

The biggest issue is how the opposite tiles have been drawn (the ones where the attachment points are opposite each other, say 3:30 and 9:30). Often you'll have a straight section of coast that you are trying to match-except that the person who made the sprites usually made the 2 sea spaces all deeply curved inwards, and the 2 land spaces bulged way outwards. You can either go with the best of a bad lot, or try to redraw the coast in such a way so as to avoid such dilemmas. The Tunisian example has one such tough one, the hex N of Hergia on the Tunisian east coast, going from the 12:30 to 6:30 junctions, which would use the sprites numbered 344-347 in the editor. 344 is the best match but it is still much too skinny and bulges inward too much. I redrew the given area (moving the coast out E maybe 4 miles) such that I could instead use sprite 271.

So you just go around the edge of the coast placing the best matching sprite as you go, and eventually you are done! There is a logic in how the tiles are organized; the first coastal piece 16 goes from 11:30 to 12:30, a tiny little stub sticking out to the south. Each group of 48 tiles shares the same starting junction on the left, as the other junction goes around clockwise, 12 groups 4 tiles in each group.

There is apparently some sort of shortcut involving the right mouse button to autoscroll to the matching group of 4 sprites, but I can never get it to work correctly...

Next: Making Greece
User avatar
Elessar2
Posts: 1114
Joined: Wed Nov 30, 2016 12:35 am

Re: Mapmaking Tutorial

Post by Elessar2 »

Here is the reference map I made for Greece:

Image

I actually drew this 2 years ago when I was busy reworking all of the coastlines. The job was pretty straightforward except for the three circled hexes.

PURPLE: The best matching tile for this hex would likely be 439. But the issue is that what you see here is NOT what you actually get. It would look like you could sail a ship through that hex to dock at a port dropped in to the SE of Chalcis. But there are two issues: since 439 is a land space, a ship actually cannot sail there! Nor can I put a port on the hex to its NW, since that is also a land hex (ports have to go on sea spaces, albeit those with at least some land on it somewhere). So I had to use tile 476 instead, which also had to serve as the port space (if I then put Chalcis at the next hex after that to the NW).

A similar issue plagued the RED circled hex. I could draw tile 138 below that hex, and use 439 for the circled one, but again a ship couldn't use it to get to Corinth. Remember those weird special tiles at the bottom of the editor's list, #'s 544-591? We'll use a straits piece, # 566, even tho I'll have to fudge the rest of the coast in that area.

Note I could have used canal tile #545 for Chalcis as well, but (A) you can't put cities on such hexes, and after checking Google Maps all zoomed in, there is indeed a waterway leading to the other sea area, but it is has a tiny drawbridge over it which nothing larger than a MTB could squeeze through. [Plus I'd have to redraw the entire area since as it turns out that 545 doesn't quite fit there.] IOW real-world considerations often have to be kept in mind!

The BLUE circled hex for Corinth also has a similar issue, in that it would seem to best match tiles 52 or 53, but again those are sea spaces and cities can't go on them. So I used tile # 94 instead.

Since I've already drawn the coast, I'll just put in the discussed cities (+ Athens the capital-the map won't save until you give a given country a capital), and here is the matching game tiles:

Image

For tomorrow night: adding all cities and towns.
User avatar
BillRunacre
Posts: 5451
Joined: Mon Jul 22, 2013 2:57 pm
Contact:

Re: Mapmaking Tutorial

Post by BillRunacre »

Thanks Elessar2, this is a great post and I hope it inspires more people to give modding a go! :)
Follow us on Twitter: https://twitter.com/FurySoftware

We're also on Facebook! https://www.facebook.com/FurySoftware/
User avatar
Elessar2
Posts: 1114
Joined: Wed Nov 30, 2016 12:35 am

Re: Mapmaking Tutorial

Post by Elessar2 »

Thanks Bill.

Today: The Shift

More times than I care to count I've drawn a coast, only to end up dissatisfied with either its shape, or its location in relation to other nearby land masses. This time the shape was fine, but I've known for a while now that the Aegean is too narrow E-W, Crete too long E-W and also too close to the North African coast by a couple of hexes.

So today I fixed all of that the best I could. I decided to go one hex N, then one hex NW, thus solving both issues. Crete I shrunk by one hex-I wasn't too crazy about this, since it eliminated 3 whole hexes (recall from yesterday land units and sea units cannot move onto a space which has less than half of the element that the unit can move on), but I think I utterly nailed it all, but I'll let you be the judge...

I. Get a screenshot of the area to be repaired, and make sure you have a backup of the scenario file as well.

While I am on that subject, just one overarching rule:

MAKE PLENTY OF BACKUPS, AND MAKE THEM OFTEN!

Goes without saying, but Murphy's Law has taken down more projects of this sort than can be counted. My nightmare is a power failure or glitch in the middle of the save, thus corrupting the file. I make zipped backups every 1-2 hours as a matter of routine, and copy it over to a flash drive daily I have as well as uploading it to a file site weekly. You can't be too careful.

Anyway, here is the reference screenshot-make sure you turn on sprite indexes (found in the View menu):

Image

II. Next, PLAN.

You can likely fudge a couple of areas-maybe they are too long (or short) and you can afford to either add or delete some hexes without wrecking the proportions. In this case I figured I could add 2 hexes along the far northern Greek coast, and redraw the coast to my satisfaction (could use a map grid off of Google maps, but this time I just used their measuring function and realized I had some wiggle room there.

Likewise on the west coast (where Corfu is), I also had about 2 hexes I could delete without too much trouble. So the mantra became "Up One, Over One" (N then NW). The only really involved work was on the north coast, but got that done without too much trouble.

Crete's issue gets back to how the hex grid distorts distances in certain directions:

Image

Tl;dr is that the errors are maximized along the indicated compass directions, meaning that there will be more (or fewer) hexes than what a simple measurement on Google Maps or the like will indicate.

I've tried to make several estimates of the degree of the distortions, and originally came up with 13%. This means for example that a distance which is 96 miles would ostensibly be 96 / 12 = 8 hexes (for my 12 mile hexes), but the error could mean too many hexes along the "stretched" directions (say 30 degrees), or too few along the compressed ones (e.g. 60 d.). These errors become even more problematic when dealing with long distances: a distance of 360 miles (which would seem to allow for 30 hexes) could actually mean anywhere from 27-34 hexes. Doing an estimate using another method tho gave me 23% today. :o I am still working on a foolproof method to precisely quantify & eliminate these errors, so when I come up with one which works to my satisfaction I'll post it here.

So Crete is 156 miles wide according to GM, which 156 / 12 = exactly 13 hexes. But since it lies almost exactly along the 270-90 line above, the error is thus maximized, and I ended up with 15-16 hexes the two times I overlaid the hex grid on it (attempt #2):

Image

It thus didn't quite fit adequately in the south Aegean. I eventually decided to shrink it to 14 hexes, even tho I'd have preferred 15 (the main issue is that I "lost" 3 land hexes which became sea hexes, which might make it harder to attack and advance E-W, but the aesthetics kind of won out in this case:

Image

It is now very accurately placed between southern Greece, N. Libya, and Rhodes and Karpathos:

Image

It is maybe 1 hex too close to N. Libya, but of course that is along the 0-180 line above, where I would expect to see fewer hexes. So we're good.

NEXT: adding cities (the easy part)...
User avatar
Elessar2
Posts: 1114
Joined: Wed Nov 30, 2016 12:35 am

Re: Mapmaking Tutorial

Post by Elessar2 »

Adding Cities & Towns... (and Ports)

I use a fairly loose set of criteria to determine which size population center to use. Since population figures from the prewar era are very hard to find, I rely on Wikipedia, which typically has lists of cities for each country in the world, ordered by population:

https://en.wikipedia.org/wiki/List_of_c ... _in_Greece

In some cases their census figures go back several decades, which is the case here.

My criteria:

Major City: 1 million or more
City: 250,000 - 1 million
Town: 50,000 - 250,000
Settlement 0 - 50,000

I may bump some up or down based on various factors, mainly the presence of suburbs which Wikipedia typically counts as separate communities. [Sometimes if the city is big enough I'll plop in the suburbs onto the map] Obviously any knowledge from wartime that I am aware of is used as well.

Now the question becomes: how dense do you make the city network?

Make it too sparse, and you end up with supply deserts:

Image

The red circled areas are basically voids of nothing which are not worth attacking in and of themselves (unless you can manage to grab one of the nearby cities of course). Even if you are planning to march directly on an enemy city, it can be very difficult to do it with just one HQ if the city is too far away, as the units will all lose 1 supply point as they get farther away from your own closest city, meaning you had better grab it in one turn. [Either you keep your HQ in the city, or decide to move it with your attackers-either way they will be in pretty poor shape once they get more than 3-4 hexes from the city]

Yes, this is an argument to link HQs, and that is fine, but typically you don't have enough HQs in vanilla SC to do more than 3 maybe 4 axes of advances, at least on the Russian front. The rest of the front will be forced to be pretty quiet, and, combined with the voids, you'll often see in vanilla these large gaps in the lines, where both sides realize that if there is nothing worth attacking there then there is nothing worth defending either.

And if someone does decide to march into a void, then the defender likely has a chance to quickly reinforce the cities on the edge of the thing (vanilla movement allowances are too low to cross one in one turn), and the next turn the attacker will be lucky if he can initiate a siege against one of them. Maybe he'll take it, but now he has a bunch of units in a low supply situation (if the lead HQ moved more than 8 hexes from the boosting HQ). The small number of turns in vanilla makes this kind of offensive self-defeating because it will waste too many turns where all the attacker is doing is porking his own supply, when the attacker instead needs to be grabbing as many cities as he can each turn (so they can recover from Scorched Earth sooner).

The upshot of all of that is that play (on the Russian front there at least) often devolves into predictable lines of advance where both sides know where to concentrate their forces. This makes for pat and boring play.

Now, the nature of my planned scenario is such that I intend several changes to allieviate this:

* Much higher unit density (HQs too)
* Much greater movement allowances for mobile units (still mulling over, something around 10-12, 5 for leg infantry)
* And changes in the map density (as I am discussing)

So my watchword has been to leave about 3-4 hexes between towns-sometimes 2 if two crucial cities are that close to each other, 5 or 6 if the population density is sufficiently low or a large natural barrier exists between them (mountains). That way single HQs and their troops can still be a threat. The longer unit move allowances will also likewise make crossing any larger voids that I might have doable in one turn (tho I do intend some higher movement penalties, most notably for ZoCs which I currently plan to give -2 not vanilla's -1). Scorched Earth damage will be higher, basic plan is to have newly conquered cities giving only 2-3 supply. While I do plan to have more HQs, having too many is problematic because you cannot specify which ones get linked to each other.

Making the density too great can make it a slog of course, but right now the majority will be the smallest (Settlements) who have minimal entrenchment and defensive bonuses, thus will be more useful as supply springboards than as defensive keystones.

So here is Greece's current city lineup:

Image

There is a void, E of Arta, where a bunch of mountains are (Pindos National Park). I may be going back to finished parts of the map and eliminating some Settlements in such areas.

I also gave Athens 3 suburbs (which has been my usual number for most capitals-weirdly more than half of Greece's total population lies within 100 miles or so of Athens).

Ports-typically if the capital is on the coast it will get a Major Port, as will cities which historically harbored large fleets. Often I am zooming in on the city in Google Maps to see how big their port is (if any); I am well aware that many might not have been able to historically support large armies, but alas SC has no minor ports where supply levels could be limited, so again playability is often considered. [Check out the east coast of England in vanilla, where there is nary a port to be had, anywhere, until you reach Edinburgh, in a country with tons of boats and warships per capita...]

Tomorrow: Rivers
User avatar
Elessar2
Posts: 1114
Joined: Wed Nov 30, 2016 12:35 am

Re: Mapmaking Tutorial

Post by Elessar2 »

Rivers

For me at least is typically pretty straightforward, if a bit tedious. Some watchwords:

* Get used to how your map app works (Google Maps in my case), note the scale, use the distance tool whenever necessary.

* Feel free to search for a river map for the country or region you are doing. I've found these to be a very mixed bag-often they are incomplete or out of date (or too modern), if I can find a decent one at all. But for major rivers at least, Wikipedia at least typically has some good ones of their basins (tributaries), maybe (depends on what the Wp editor chose, if anything). Since we are dealing with 80 year old terrain, inaccuracies and some guesswork is to be expected. But they can provide a big picture check on the accuracy of your work.

* Grasp the limitations of the game and how rivers always go along the edge of a hex. You'll often want to go straight through a given hex, but in the editor you cannot, of course, and thus must compromise in one direction or the other. Rivers which tend to have a straight E-W course will be forced to meander a lot more than the actual river does in the editor (N-S ones will as well, to a slightly lesser extent, as our example will demonstrate).

* SC has 2 types of rivers, Major and Regular. My cutoffs for the widths are 500 feet and 50 feet (below which I'll choose an headwaters end piece), but these are often approximate. Since Europe has been in a drought for more than a year now, the recent satellite pics often show dried-up or shrunken rivers, so I have to extrapolate and guess how wide they were during the war.

* How the river pieces are laid out. 1-120 are your bread-and-butter regular river pieces., going clockwise for both the starting junction as well as for each ending junction. 121-156 are the headwaters/end pieces for the Regular rivers, 1 short and 2 long for each junction. 157-264 are for where a river meets the sea or other larger body of water, for note LAND spaces. 265-288 are for SEA spaces. At first I got all frustrated as to which type to use where. 289-578 duplicate all of the above for Major rivers.

* Dammed lakes. My research has found out that the vast majority of dammed lakes in the entire European region did NOT exist during WWII, so in those cases I have had to guess where the river course was before the dam.

I am using the Greek river Achelous as my example, which has its outlet in the SW, near the town Agrinio. I pieced together the entire thing + tributaries, tho as a matter of course I normally don't do that (and if I do I zoom out to my default 10 mile scale), but if a particular river gets particularly annoying I may do so and then stick a hex grid on it to nail down the course. Typically I am eyeballing it on Google Maps. Note an accurate placement of your towns and cities will help immensely here, given how so often settlements are founded on a river or at a junction.

Image

Red circle: river mouth
Blue circle: the town of Agrinio
Purple circle: the forks for the 3 main tributaries

This system had no compromises and I was able to find pieces to match the courses for pretty much every twist and turn:

Image

There is another tributary, at the NW corner of that 2nd dammed lake N of Agrinios, but I decided it was too short and narrow for inclusion. [visible on the reference map below]

If you follow the 3 courses northward I termined all 3 short of their actual headwaters once it was clear they remained consistently narrower than 50 feet.

OK, trying to get the mouths to match your coasts, you'll plop them down and find they are too short (or long). But you have the option in the editor to move the river piece around! Choose the Select option in the editor, and right click on the hex in question, choose Offsets, +/- a maximum of 25 pixels available. You of course will have to typically move around the next piece or 3 so there are no breaks (each sprite has maybe 10 pixels which stick into the next tile so you have a fair amount of freedom here).

I also included the next river to the west, the Arachthos, because you get a good shot of how the river must meander on a pure N-S course. But in this case it actually matches the meanders pretty well; more often I have to cheat by using slightly different sprites to vary the artificial monotony (here I had no room to do so even if I wanted to). Often you have a choice as to which side of the hexes to put the river, which is where you can really try to nail down its course.

My reference map for the entire country:

Image

Current state after all mainland rivers have been put in (doing Crete here in a moment). Note how the reference lacks a few, esp. the short stubby ones along the coasts.

Image

LOL, I see I missed one near the town of Lamia. A perfectionist's work is never done... 8-)
User avatar
Elessar2
Posts: 1114
Joined: Wed Nov 30, 2016 12:35 am

Re: Mapmaking Tutorial

Post by Elessar2 »

OK, Terrain...

My philosophy has been to aim for a more photorealistic look, vs. a more abstract stylized 'wargaming' look (which is how the original mapmaker SIPRES started doing it-some of his work is visible in many of my screenies, including the below one. As we'll see the former approach takes a lot more time, but ultimately looks a lot more detailed and immersive, if perhaps a bit cluttered. If I had unlimited time and patience, a wargame-ish version could be done, but I'll likely not spend the additional effort (this one is killing me as it is).

As a result there are very few true "clear" tiles on my map-in Europe proper at least, any flat tile almost always has at least a few farms on it, tho I did find a 1900 map where a lot of it was indeed undeveloped.

If you check out the terrain tiles, you'll notice certain groups & patterns:

1-30 Flat forests
31-60 Flat jungle
61-90 Marsh
91-120 Foresty marshes
121-150 Hills (grassy)
151-180 Hills, forested
181-210 Hills, jungle
211-240 Mountains, grassy
241-270 Mountains, rocky
271-300 Mountains, forested
301-330 Mountains, forested/rocky peaks
331-360 Mountains, jungle
361-360 High Mountains
421-430 Bush
451-480 Fields
481-510 Bocage
521-550 Sand
551-590 Depression (impassable)
591-600 Small Lakes, bare
601-610 Small Lakes, forested
611-620 Medium Lakes
621-630 Large Lakes
631-640 Medium Lakes, forested
641-650 Large Lakes, forested

The combo tiles I believe default in the game to the primary name (the secondary names are not used in-game: my secondary tags above are my educated guesses as to what they represent) in terms of bonuses and penalties. There are actually only two types of lakes in the code-tiles with Large ones cannot be entered (by either kind of unit). Note I often use lakes on Pacific island tiles to represent lagoons in atolls.

The most problematic ones are the mountain hexes. Whoever made the tiles put many off center (note trying to not blame anyone here just pointing out the quirks), so that when you plop one down it will often overlap neighboring hexes, in some cases existing more in said adjacent hex than the target one!

In addition, there are the big mountain tiles, 221-230 for the first (clear) set (duplicated for all the other sets), which typically overlap one or more adjacent hexes. I tend to use those sparingly, preferring the various medium and smaller tiles which won't overwhelm a given area. Another quirk is how #'s 215 & 217 clearly slant from NW to SE, but #'s 216 & 218 really don't...

But your secret weapon here is, again, the Offsets menu. While +/- 25 pixels doesn't give you unlimited freedom, it gives you enough. Most of the tiles I put down are moved around to my satisfaction, which explains the relatively slow pace in building the 20k map.

I basically ask myself, for any terrain intended for a given hex, what is the predominant terrain in that area? I've come up with a subjective-ish rationale to distinguish mountains from hills and hills from flat terrain, as well as forested from clear, and it has worked pretty well. Note-just because a given area has some bumps doesn't mean it will always get a hill tile.

The real fun comes with the mixed terrain tiles, mainly forested hills and mountains. I simply gauge how much of the area is forested, vs. grassy or bare, and make my choice thusly.

I also try to via the Offsets to position them between rivers to mimic canyons, even tho the game defaults to always placing rivers on top of the terrain tiles anyway. Gives it a more 3D effect.

Again, Google Maps is my go-to resource, specifically the Terrain and Satellite screens. Here are screenies of both as well as the matching screenie from the editor, with the terrain indices labeled:

Image

Image

Image

Next-Rails and Roads, the final, and easy peasy stuff (maybe). Note I recently switched to doing those last, vs. before Terrain, because all too often the rails and roads didn't follow natural (wide) valleys and low hills.

EDIT: Lakes. Lately, since your only options for a lake hex are either making the rest of it clear, or forested, my modus operandi is to make lakes using the hex edges where there is a little bit of water on an otherwise land hex. Then I can put in any terrain that I want. Did that about half a dozen times here, incl. that big one in Albania. Note if the edge is fully water it will block movement along that edge.
User avatar
Elessar2
Posts: 1114
Joined: Wed Nov 30, 2016 12:35 am

Re: Mapmaking Tutorial

Post by Elessar2 »

Roads and Rails

Last and least, the easiest stuff, so a quickie entry today...

I can pretty easily find rail maps for most any country, and sometimes for the war years in question. While depicting modern lines, they do often show that railroads don't typically go everywhere like they usually do in vanilla.

Roads-I usually zoom out to the 20 mile scale in Google Maps, and note where the thick yellow highways go, figuring that they would have narrower precursors 80 years ago. For playability I will typically try to join even the smallest Settlement to the larger network. More modern countries will get a larger percentage of paved roads, usually paralleling the rail lines-more rural and undeveloped ones will typically be all dirt, thus making rainy seasons more important than in vanilla.

IMPORTANT: make sure any rails and roads in a port hex have a junction leading to the port. Vital for supply, especially for one hex islands.

And that is all, for Greece at least:

Image

But I do have Weather on the agenda for next time.
Post Reply

Return to “MODS and Scenarios”