Posted by: Freakling An elegant way of dealing with cliff asymmetry
This article describes a small, but useful method to improve your maps' symmetry and positional balance. I have been using it in various ways since basically forever, on all of my maps. But as far as I can tell no one else has picked it up so far.
The basic facts we have to deal with:
These two facts are known to any mapper with a minimum of experience:
1. One of the side effects of how isometric terrain in BW, for graphical reasons, is constructed is, that cliffs are 3 tiles wide when the higher ground is on the north side and the lower ground is on the south side, whereas if the low ground is north of the high ground the cliffs are only two tiles wide.
This is achieved by extending south edge cliffs one tile further into the lower ground area.
different width of north and south cliffs, here on jungle tileset, but, aside from different optics, all cliffs on tilesets are set up exactly this way.
2. If a map is specified to be x*y tiles sized, in fact it is only x*(y-1) tiles sized, because the bottom line of tiles, as well as each the 5 leftmost and rightmost tiles of the second line from the bottom, which are the areas that will still be partially covered by your minimap, unit selection and unit menu boxes if you scroll your screen to the very bottom of the map, are completely unusable in-game (i.e. unbuildable and unpassable for any kind of unit).
Add up these two effects, and you will realize that any low ground terrain on the bottom of the map, that is surrounded by cliffs, is suddenly 2 tiles short on the y-axis, resulting in a loss of building and moving space, that is often not negligible.
You normally won't realize it immedeately for mains, which have plenty of size, not until you run out of building space at some point in the game, of course. But for other expansions and tight passages the effect is unmissable. At times it just presents itself as kind of an awkwardness and crampedness of building placement, like at the southern 3rd of (4)Electric Circuit, compared to the northern one. But sometimes it can cause real imbalances, like the southern island of (4)Andromeda having noticibly less building space than the northern one.
A particular severe case is Excalibur's recent map (2)Runefield, where the tight passage on the edge, which is four tiles wide on the north side, gets shrinked down to a mere two tiles at the bottom, which, among other stark disparities on how units engage each other in those areas, allows terran to place tanks behind the natural's minerals, outside of draggon range, on the north side, but not on the south side.
Two cliff walls, created using SCMDraft's inbuild y-mirror tool - notice the very noticible difference in effective building space you get inside the walls.
The solution is trivial. The simplest of math (-1-1+2=0 Duh!) impies, that the whole effect can be entirely mitigated, by just moving any high ground area at either the top or bottom of your map two tiles (which incidentally one iso) up. The two effects will then complement each other in a way that will give you the same effective shapes and sizes for both halves of your map. It's the best solution, even if the affected bases are all high ground, because considering the narrower cliff on the north side of the high ground (which potetially make buildings close to the edge more vulnerable from the low ground), the missing bottom line of tiles and the additionally missing five tiles in the edges, you still end up with a better functional symmetry.
One method to do this, is to create the general outlines of your map, using symmetry checkboxes. After that is done you should manually just extend all high and low ground areas at either the top or bottom half of your map one iso up, which is easily done, as shown by the animation below.
This animation demonstrates detailedly, how a cliff is moved up by two tiles, using isometric terrain editing.
However, if you prefer the comfort of symmetry checkboxes over the higher level of control and detail that manual editing has to offer, there is an easy method, suggested by PhilipJayFry, how you can achieve the effect described in this guide without the need of manual postediting.
If you want to make a map of a certain dimension x*y (p.e. 128*128 for a 4 player map), simply start by setting the map dimensions to x*(y-2) ( = 128*126 in our example) when you initially create the raw map. Or, if you want to work on an already existing map, use the "scenario/map dimensions" menu to set the dimensions x*(y-2).
This will allow you to achieve the same effect using symmetry checkboxes to any extend you like. Once you're done, you can just resize the map to the intended size x*y (like 128+128 in the 4 player map example), using the "scenario/map dimensions" dialogue. You will only have to post-edit the newly added two bottom lines of your map to match the adjacent terrain.
For all standard melee map sizes (96*96, 96*128, 128*96, 112*128, 128*112, 128*128) the maps created this way (having the actual respective dimensions of 96*94, 96*126, 128*94, 112*126, 128*110, 128*126) can be opened with StarCraft to test or look at stuff ingame, however, for 96x126 and 112x26 maps, the ingame minimap will be addled and not display the terrain correctly, but this will be fixed by stting the map sizes to the final size.
Another small drawback is that you cannot place any resources on y-1th line of the map, directly against the edge, before resizing it, but that should not be an issue on most maps. [Using x*(y-1) as map dimensions for editing does not work, because, among other problems that causes, an odd y-dimension prevents the use of y- and xy-checkboxes]
An animation, showing the effective building space (framed in red) for different cliff placements on the upper and lower edge of a map.
The same principle can, and shopuld, also be aplied to terrain in the middle of a map. This little patch of high ground is placed right on top of the centre of the map (intersection of red gridlines). Note how the plateau, as an unpassable object on the surrounding lower ground, is in fact not centered, but acts as if it were one tile off-centre to the south
This little pillar of high ground, however, is placed perfectly on the functional centre of your map (i.e. the centre of usable map space)
Appendix: Other solutions that have been tried:
- most maps, including all modern kespa maps, only account for the effect by moving resources on the bottom of the maps one tile up, or leaving differently wide gaps between resources and map border, which all lead to oft-minute, but real risidual positional imbalances.
- On his version of (2)Spinel Valley, testbug realized that the low ground passages on the top and bottom of his map have a different width, and subsequently tried to comensate it by adding a lot of straight cliff lines along parts of the northern edge, which is a purely functional, crude and optically not at all pleasing solution. It also, at least in this case, does not compensate for the differences in main size.
- On his map (4)Indignation, neobowman used manually edited cliffs, which are only two tiles wide on the south side, for all of the map's high ground areas. This mitigates the difference in cliff size, but does not compensate for the missing bottom line. Furthermore, it is not really a good looking solution, and makes a multiple of the work of any of the other solutions.
- advanced techniques, using copy-pasting
So far, so good, gogo make a map! -Freakling-
You can do that.
If your map is 96x94, 128x94, 128x110 or 128x126 there seems to be no problem.
For 96x126 and 112x26 maps, however, the ingame minimap will be addled...
At least that is how it happens for my version of SC, other instalations may react differently to customized map sizes (in fact, many map sizes will just outright make SC crash).
However, as long as one only uses this for developmental purposes, and does not mind that there is no fully functional minimap when testing things ingame, portability is not really an issue. modified by Freakling
So it'll actually work? Cuz that'll save a lot of time...
On a side note, I feel like the title is slightly misleading, a better one might be "Negating Cliff Assymetry" or something since we're not exactly using it to our advantage, but rather avoiding adverse affects of it...
Updated with new title and including fry's suggestion.
Also why is comment order screwed up D: modified by traceurling
I think it's that way since Crystal totally messed up some HTML with his guide O_o
Dammit crystal, too much hacking :O
Hey guys, long time no see :)
traceurling showed me this article earlier today, and since then it somehow stuck in my mind. I suddenly had an idea for a way easier solution for this problem. I'm not 100% sure if it works (I tested it, but don't know if I did it correctly). here it is:
° Create the map as a 128x126 if you want to make a 128x128 map (always -2 hex in the height then you want it to be)
° Now make the terrain like usual with any setting you want (like the build in mirroring function of Scmdraft)
° When you are finished with terrain, go on 'Scenario' and then 'Map Dimensions' and change the height to the desired one (128 in this example)
° Now you got 2 extrarows on the bottom. Fill them in with the terrain that you need, and you should be done!
Please somebody else test this too and tell if it works or not. Thanks!
More freakling articles :D thanks I'm gonna try this if I can unlazy myself enough
i need pictures... i have a vague idea...
I already made some. But I need to upload them and add some nice tables to this... Gonna do it tomorrow.
Would it work and be balanced if we were lazy and went SC2 style where the map is basically an island with air around the edges?
Airspaces, to move drops etc. around, would still be asymmetric, and of course drops would be much stronger to begin with...
nice article :)
So is it basically, we use symmetry tool for a basic outline, and then copy paste the bottom half upwards 2 tiles?
You don't need copy pasting. I added an animation, showing how it's actually done. modified by Freakling