Scale Matters

When working with maps, scale is one of the more important concepts to get right. For example, it is quite important if the distance between two cities on your map is 10 or 100 miles, and it can be quite important for what can be found in the dungeon depending on if the doors are 3 feet wide or 30 feet wide. No matter what you map, you’ll want to know what scale it is in. To accomplish this in the best possible manner, an understanding of how scale works in CC3+ is important, because as long as you do it right, you’ll have a much easier time using all the various tools and features of CC3+. For example, if you just draw that corridor an arbitrary width, and just state that “this is 5 foot wide”, that may work fine initially, but when you later try to add a 5’ foot grid you start to get in trouble because you need to figure out what size to tell CC3+ to draw your grid in. If you instead had been using scale properly all along, and the corridor was actually considered 5’ wide by CC3+, specifying the grid size would be as simple as just telling CC3+ to use 5’. This is just one of many examples why you should care about scale, and care about it from the very beginning of your map, not as an afterthought. CC3+ has lots of tools that helps you do your mapping, and there is no doubt that a lot of these works best when used at the correct scale.

In this article, we’ll have an in-depth look at the many instances where you encounter scale in CC3+ and explain how to work properly with these values, and hopefully demystify scale a bit. I expect a certain degree of familiarity with CC3+ for readers of this article, so I won’t be explaining where to find every button or menu element.

Map Scale

One of the first things that meet you when you create a new map is a prompt that requests the dimensions of the map (If you chose to base your map on a pre-defined template instead, you would see these values in the file names of most template you can choose from). Before providing the appropriate values, it is very important to understand what these values are. And this brings us to one of the most important aspects about scale in CC3+. In CC3+, your map is expressed in real-world units. CC3+ isn’t concerned about the size of your exported image or the size of your printout, CC3+ is interested in the actual real-world size of the area the map represents. So, if you plan to map an island that is approximately 700 by 300 miles in size, well, then you make a map that is 700 by 300 in size (or a bit more to make room for some ocean around it). Same if you make a battle map for miniatures, if the area covered by the battle map is 300 by 200 foot, then you enter 300 x 200, NOT the 8 by 11 inches the paper printout measures.

At this point you DO NOT care about print or pixel sizes, that is something you care about later when you are ready to print or export your map, not when you make it. Those of you familiar with working in image editing software may thing at this point, but wait, doesn’t the size I select now impact what quality I can make the map in?’. This is true for an image editor, because if you make an image 1000 by 800 pixels, it won’t be high enough quality to fill a sheet of paper when printed. But this is NOT true in CC3+. The size you pick here isn’t a pixel size and isn’t a limiting factor for final export/print quality, it is simply the size of the map. So, to re-state what I wrote above, in CC3+ your map is expressed in real-word units, so make to fill in the values according to the real-world size of the area you plan to map. Also note that the size of the map you specify here is not related to memory/CPU use when working with the map. There is no performance difference with working with a 10 by 10 map compared to a 10000 by 10000 map, the only things that effects performance is the amount of details you put into your map (and you can easily put as much detail into that 10 by 10 map as the 10000 by 10000 map if you so choose).

Ok, so we established the map dimension are in real world units? But what units are they in? miles? Km? yards? Feet? Inches? The short answer here is that it depends on the map type. For overland maps it is miles (or km for metric maps), while for city and dungeon maps, it is feet (or meters for metric maps). There are maps that uses different units of course, such as star maps which uses units such as parsecs, light years, and astronomical units. I won’t concern myself more about this for this article, because these also follows the same rule as above, the map size should be expressed in the real world size of the area to map, and the exact unit type follows from the type of map you are going to make. Just remember that fact, and use the values the template expects, such as miles (or km) for an overland map, and not feet. And don’t use print or image sizes, like inches or pixels. If you are unsure about what the correct unit is for the kind of map you picked, you can always check it by going back to the previous page in the wizard, the unit type is listed right below the preview image.

Now, the above is the simple explanation, and the one you should keep in your head for everyday use, but it will help you to understand a bit of how CC3+ treats units. CC3+ doesn’t really care about miles or meters or inches or whatever. In reality, all maps are specified in something called map units, which is the working unit of CC3+. That 400 by 300 foot dungeon, for CC3+, it is a 400 by 300 map unit map. That 400 by 300 mile overland map? Still a 400 by 300 map unit map. This system in CC3+ is what allows us to create any type of map we want, because we can simply define a map unit to mean whatever we need it to (The definition must be consistent within any one individual map of course). You’ll se term map unit being used many places, such as in effects dialogs, and the important thing to remember here is that one map unit means whatever unit your map is in. So when you set a shadow to be 10 map units long in a dungeon map, that means that the shadow will be 10 feet long, while doing the same in an overland map would result in a 10-mile shadow.

Map Units and Template Types

But with a map unit being able to represent whatever you want, why do we need different templates for imperial and metric units? “Can’t we just claim it to be whatever we need?”, you may ask. The answer here is that there are a lot of things that need to be scaled in a map. For example, symbols; when you place a 3’ wide door in an imperial template, you actually place a 3 map unit wide door. However, if you are mapping in metric units, you’d expect the same door to be about 1m wide, however, if symbols were scaled the same as in the imperial template, that would still place a 3 map unit door, which would be equivalent to 3 meters in your metric map, a huge door indeed. So, one of the things that are different in metric maps is that symbols are scaled differently, which means that when you place that 3’ door in a metric template, it ends up being 1 meter (as expected) instead of 3. Effects are also scaled differently to achieve the same visual look in a metric map compared to an imperial map, despite the fact that the imperial map basically needs three times the amount of map units to depict something the same size. This is why it is important to pick the correct template type when you start your map.

Changing Map Size

(Note that this is about changing map size because your canvas size is not the correct size to fit your map, we’ll talk about actual rescaling later)

Size we are discussing map size here, the inevitable question of how to change this always crops up. It is not always easy to know what map size you’ll need (although I always recommend you trying your best to figure it out before you start mapping, rather than just go ahead with the default values), so sometimes you’ll find your mapping space too cramped, or perhaps you are done and there are huge empty areas along the edge of the map you didn’t need.  I’ll mention this here, because it is important that this is being done correctly with regard to scale as well. For example, one (bad) way of making room for more things in your map is to simply take the scale tool and scale everything in your map down a bit, or if you find that your map didn’t properly fill he template and you have lots of available space, you could always just scale up the contents to fit the border, right? Well, that would be the wrong approach, because once you take the scale tool to something, you change its size. That strait that was supposed to be 10 miles across, well, suddenly after scaling it is 7.3. Visually, everything may look fine, but every tool that relies on distances will suddenly no longer work quite as expected.

To change the size of your map, there are basically two correct ways to do it. One of them is to start a new map in the correct scale and just use the clipboard to copy everything from the old map (except the map background and map border) to the new one. The other way is to erase the old map border (both the graphical one AND the simple lines found on the MAP BORDER layer) and draw a new one. The canvas in CC3+ is near-infinite for practical purposes, and you are not locked to the original map size you specified in any way. When specifying the map size, CC3+ puts a couple of lines on the MAP BORDER layer, this is what stops the drawing tools from drawing outside your map border, and it places a white polygon on the SCREEN sheet to cloak stuff that partially extends beyond the border (like symbols at the edge), but once you remove these elements, you are completely free.

Measurement Tools and Inputs

One of the reasons you want your map to be scaled the correct way in CC3+ is that this means that all measurements tools and inputs works as expected. For example, in the Info menu, you can find tools such as Distance, Length Along and Area. For example, the Length Along tool can tell you the length along a curvy road in your map, giving exact travel distance without you having to manually estimate how much farther it is to travel along the road instead of the straight line from end to end. Needless to say, this only works properly if your map is scaled properly in the first place, otherwise the result will be just as wrong as your scale.

There are also lots of places that expect your input, such as the command line or a dialog. Take the Add Corridor dialog from DD3 for example, where you can specify both the width of the corridor and the width of the wall. As with everything else, these widths are specified in map units (which means feet in an imperial map and meters in a metric one), and as long as your map is scaled correctly, using these are a no-brainer, just input the correct size and you are set. When combined with using the proper symbol scale (see below), this actually makes it easy to keep your map in a proper scale too as long as you actually use these value instead of randomly eyeballing things. Sure, sometimes just eyeballing things are the best approach for sizing some things but try to keep that to entities placed after you have most of the structure in the map in place so you can eyeball it in relation to properly scaled entities instead of potentially causing scale problems because you need to scale everything else in relation to something you just eyeballed.

Symbol Scale

When talking about symbol scale, there is a huge difference between overland symbols, and city/floorplan level symbols, so I’ll start by tackling these individually.

Overland symbols are primarily intended as markers to indicate that something is there and are not normally to scale. If they were, even the largest cities wouldn’t be large enough to turn up on a kingdom map, a city is absolutely tiny compared to the huge lands around it. On a fantasy map, you may also have other places of interests, such as a ruined castle or an obelisk, again things that wouldn’t be visible at all if they were to scale. There is often some size difference between different symbols to indicate relative scale, such as a village being smaller than a city, but again, they are not usually properly scaled in regard to each other. When making overland maps, visibility is something to keep in mind at all times. Now, people have different preferences, and I know not everyone agrees with me on this, but my preference is that when you hit the zoom extents button, everything should be clearly identifiable. If you need to zoom closer to see if a symbol is a village or a ruin, then your symbols are too small, and you have too much detail in your map. You would be better of making an overview map (for example a continent map) with less detail, and then create additional map levels from areas on that map with higher detail. This approach has several good points; The map is nice and legible at full map view, You can finish one map before moving into the next without constantly having huge undeveloped areas, and you only need to create detail maps for the interesting areas, which helps reducing mapping fatigue (many a mapper have started on a super-detailed continent map and never finished it).

For overland maps, CC3+ sets the default symbol scale equal to the width of the map divided by 1000. This actually means that no matter the map size, the number of symbols you can line up side by side will be exactly the same, and this is completely intentional, because it leads to large overview maps being less detailed than zoomed in local maps, and this is completely in line with how most of the real maps we use are built up as well. For example, if you look at an old-fashioned printed atlas, you’ll see that the continent maps are far less detailed than country maps. Coastlines are simpler, most cities are not there, other features are missing as well. You’ll see the same in the modern digital maps most of us use these days. They do use a dynamic zoom approach, so you can seamlessly move between map levels just by zooming, but the basics are the same. Look at a continent, and the detail level is rather low, but as you zoom in and the visible map covers a smaller and smaller area, you’ll find that more and more details appear. Not just things getting bigger and clearer, but details that wasn’t present at all when you where zoomed out. CC3+ doesn’t have such a dynamic zoom system, so you’ll need to make different maps for the different levels (continent, kingdom, region, etc.), but the idea is the same, don’t fill any map level with lots of tiny details that cannot be seen properly without zooming. Even if you don’t want to use the exact symbol scale CC3+ suggests, don’t go overboard.

Now, when we talk about city and dungeon/floorplan map, symbol scale is completely different. Here, we are concerned about the exact scale of things. We want to know how many tables we can fit in the common room of this tavern, and we need to know how big the cave opening must be to accommodate the dragon coming and leaving. Exact scale is everything. Therefore, no matter the size of the map, all official ProFantasy symbols are scaled so that on an imperial scale map (feet), at symbol scale 1.0, they are the correct size to fit a human-sized individual. So, unless you are mapping something intended for non-human sizes (like a giant castle), always stick with the default symbol scale of 1.0 for the majority of the symbols. (Metric floorplan maps have a default symbol scale of 0.3048 [Which comes from the fact that 1 foot is equal to 30.48cm or 0.3048 meters)). As you can probably see by now, symbol scale is pretty dependent on you drawing the rest of the dungeon to scale. If you want to draw a tavern, and just draw the taproom as a randomly sized room without measuring it out, you’ll probably find the symbols to bee too small or to large, and if you then start to resize them, other things needs to be manually adjusted to fit those again, and you have a cascading effect that just gives yourself lots of extra work. If you instead measured out the taproom in the first place, everything can just be placed at the default scale values, and you’ll find that you get a lot of help from CC3+ instead of manually handling everything all the time, such as making sure all tables are the same size for example.

Now, how to set the symbol scale? There are two ways, either by having a symbol at your cursor and then holding down the Control key while moving the mouse, or through the Symbol Parameters dialog you get by right-clicking inside the drawing window with a symbol at your cursor. While the first option can be great if you try to eyeball it into matching the size of something else, it is a poor way of getting a precise value, but in many cases that is perfectly acceptable. As I mentioned before though, don’t do this at the start of the map, get some structure and symbols placed at an appropriate scale first so you have something to compare your eyeballing to, don’t go the other way around and eyeball the sizes for your first symbols and then be forced to adapt everything to that, that is an easy way to throw your map off scale.

Note that no matter how you scale your symbol (eyeballing or dialog), CC3+ will remember this value for the next symbol too, so make sure you don’t accidentally place all the following symbols at the wrong scale (the value is remembered for the current session, the map defaults will be loaded when you next load the map). The easiest way to get back to the map default scale is from the Symbol Parameters dialog you get by right clicking inside the drawing area with a symbol on your cursor, and then hitting the ‘Set Normal’ button. (The map defaults can be set from File -> Drawing Properties if needed)

Scaling Effects

Effects need to be scaled to fit the map too. After all, a glow specified to be one map unit wide will appear very different in a 10 by 10 map compared to a 10000 by 10000 map.

Let us look at a sample effect. Most effects have one or more settings that are expressed in ‘units’, and they also have a set of radio buttons that lets you select which ‘Effect Units’ to utilize, with the following three options:

  • Percent of view width: This choice means that all effect settings expressed in units are treated as a percentage of the width of your current view. So, if you set the value to 10, it will always take up 10% of your view, no matter the zoom level. Obviously, this result in the effect covering a different area in your map depending on zoom level. This can be nice for glow around text but can look silly if used with the length of shadows.
  • Map Units: By using this option, you specify absolute sizes of your effects. For example, in an (imperial) dungeon map, if you set shadow length to 10, it means the shadows will be 10 feet long. This is the preferred setting for most effects in a floorplan map.
  • Percent of Drawing Extents Width: While similar to view width, this setting instead bases the size on the size of the drawing. This means that effects won’t change as you zoom in and out, but they will be different if you apply the exact same settings to two maps of different sizes. This is the preferred setting when making overland templates and saved effects settings, since the effect sizes will adapt to whatever size the user defines for his map, instead of having to manually tweak the effects when adapted to a different-sized map. For why this is appropriate for overland maps and not dungeon maps, refer to the reasons given for the symbol scales for those map types.

Tool Scales

Also drawing tools in CC3+ are affected by scale. For example, most floorplan style contains a tool for drawing a 1-foot wide wall. As discussed before, the unit behind the scenes are map units, so in reality, this draws a 1-map unit wide wall. Now, as long as you have stuck to proper scale, measured out your rooms and everything, this will be a nice 1-foot wall, but if you have just drawn an arbitrary sized rectangle without thought of scale and just say it is a 10 by 10 room, you may quickly find that the wall doesn’t look 1-foot wide at all when compared to your incorrectly sized room. Perhaps it is way to thin, or perhaps it fills the entire room.

Drawing tools can have 3 different width settings, which determine how they scale (remember that a zero-width polygon results in a filled one, while any other value means the polygon is represented by an outline of that width):

  • Use current width: This simply means that the drawing tool doesn’t specify its own width, but rather uses whatever you have set on the status bar. The value you set on the status bar is in map units of course.
  • Fixed: The drawing tool operates at a fixed width, independent of the size of the map.
  • Fraction of Map Border: This means that the width of the tool is determined by the width of the map itself. This is primarily used for overland maps, since dungeons/floorplans almost exclusively operates on a fixed scale for everything.

Fill Scaling

Fills can be scaled in CC3+. Perhaps you have noticed that even if two maps use the same fill, it may be way smaller and more repetitive in one of them? This is due to how the fills are set up to be scaled in the two maps.

You can find the setting for fill scaling by clicking the FS: indicator in the status bar, and then go to the Bitmap Files tab and select the fill you wish to modify (Note that also drawing tools depends on these fills, so if you wish to change the scaling for a fill used by a drawing tool, this is still the place to go). Here, you’ll notice a checkbox for Scaled, and values for width and height. Now, as you know, these fills are all based on image files stored in your CC3+ data directory. The values you provide here for height and width are simply how large 1 copy of this texture file would appear in your map. So, if scaling is set to 10 by 10 and you draw a square in your map that is 100 by 100 map units, the fill would be repeated 10 times in each direction. So, to lessen the amount of repetition, you can increase the scaling of the fill, for example to 25 by 25 instead. Be careful not to increase it too much however, as with any image file, the texture has a fixed resolution, and making it too large can result in pixilation, basically because the image ran out of quality. Here, you need to plan for how the map should be viewed, there will always be pixilation if you zoom deep enough, so it is always a tradeoff between making the map look good when viewed in its’ entirety vs how deep zooms you need/expect.

You may have noticed the “Sample Width” setting in this dialog too. That only contains the width (in map units) of the preview window of this dialog, and doesn’t have any effect on your map/fill whatever, it is just an aid to preview at different zooms.

Print Scale

As I mentioned earlier, when you make a map, plan according to the real world scale of the area you are mapping, not the size of the printout. Thinking about print scaling is done when you are ready to print your map. For example, it is easy to tell CC3+ to print your map to miniature scale, so that 5’ in your dungeon (map scale) equals one inch on the printout (paper scale). Again, I can’t emphasize enough the importance of mapping in the correct scale from the start, if not, you are going to get in trouble at this stage.

To print something to scale, all you have to do is to select Scale Factor under scaling instead of fit. Here, CC3+ requires two pieces of information. This is Paper distance and drawing distance. What this means it that CC3+ wants to know how long a given distance in your map should be represented on paper. For example, when working with battle maps, a very common scale is that a 5-foot square in the map should be represented by 1 inch on paper. We are lucky enough that CC3+ even recognizes ‘ for feet and “ for inches, so if I simply type 1” in the paper distance box, and 5’ in the drawing distance box, and CC3+ will automatically print to the appropriate scale.

Note that if your map is large enough to span more than one sheet of paper, you must also set up the tiling options below, otherwise you will only get the first sheet of paper printed.

Note that printing battle maps is a small deviation from my general advice above that you shouldn’t consider print scale when making your map. You should still make your map in real world units, but it is worthwhile to consider how your map will print. After all, ending up with two pages instead of one because of a single row of squares might be silly, so you may want to adapt your map size for the printout. For example, a standard A4-sized paper is 8.27 by 11.69 inches, so assuming your printer can make tiny margins, it will support a 1”-grid of 8 by 11 squares. Since each square represent 5’, it means that a map size of 40 by 55 will fit the paper exactly, so that might be a good size for your dungeon. If you plan to print on larger paper, for example A3, you should get 11 by 16 squares, or a battle map of 55 by 80 feet. (For reference, a letter sized paper is 8.5 by 11 inches, so unless your printer is completely margin-less, you will probably only be able to fit a grid of 8 by 10 squares, or a map of 40 by 50 feet)

Export Scale

CC3+ doesn’t work in pixels, but when you export your map to an image, pixels become important. As you know, the higher the resolution you export in, the better the quality of the image. Note that the export resolution you choose should be tailored to the use of the image, it is completely unrelated to the map size in map units. I’ve sometimes seen people try exporting an image in the same pixel dimensions as thy made their map size and been confused to why the quality was so poor. The important fact to not here is that the map units CC3+ uses internally isn’t related to pixels. For example, map units have a very high degree of decimal precision, while a pixel is basically just an integer. I can easily create an entity in my map that is much smaller than a map unit in any direction, but still contain lots of detail. If I rendered this map out setting export resolution equal to map size, then this highly detailed entity would have to be rendered as a single pixel in the resulting image, and a pixel is just a basic square in a single color.

Now, one of the more interesting aspects of exporting happen when you need your image to a particular scale. For example, you are planning to use it in a virtual tabletop (VTT) application that assumes each 5-foot square is 50 pixels. How do you accomplish this? Well, first of all, you need to know the dimensions of your map, without the map border (Unless the map border is exactly one grid square wide, it is going to cause havoc for your grid in the VTT application, so always export maps without the map border for such purposes). Fortunately, for most map templates, the actual map border is outside the map size you specified when starting the map, so if you made a 400 by 300 dungeon map, then these dimensions are 400 by 300. If you don’t remember, you can use the distance tool to check (use snaps or modifiers to get precise values).

So, now that we know all the numbers, what export size do we need? Let us calculate the width of the image we need:

The VTT application wanted 5’ of map to be represented by 50 pixels, so that is 10 pixels per foot. Our map is 400 foot wide, so that equals 4000 pixels. (We’ll handle the height later)

Now, when exporting, you should always use the ‘Rectangular Section PNG/JPG/BMP’ option, as this allows you to save part of your map. Again, this is required because we want the map to export without the map border, otherwise it will really mess up our calculation. This means that when you hit the save button, instead of starting the export immediately, CC3+ will ask you to specify the rectangle to export. You probably already have a reasonable snap grid setup, so make sure snap is enabled, and click once in the top left corner of the map, exactly in the corner where it meets the map border, and then do the same for the bottom right corner. This should result in the map itself being exported, and nothing else. (If you were to include the border, the map wouldn’t be scaled correctly anymore, because everything else would be just a bit smaller to fit that border into those 4000 pixels too).

Before starting the export, you should also set the export options. Set the width to our calculated value (4000 in this example) and set the height to some insanely high number. Also make sure to enable the Crop image to aspect ratio option. This option ensures that the image will be cropped properly according to the export section we selected, an is why we can ignore the height value and don’t bother calculate it (as long as it is set high enough, if the map is using landscape orientation, it is enough that it is higher than the width)

Rescaling Things

Non-visual scale example

Fresh blank map

Inserted map for drawing using Draw -> Insert File

Measured the size of the scalebar in the inserted image. It is clearly not the correct scale (Hint: Enable Ortho when measuring straight lines, and make sure snap is off)

Running the non-visual scale command. We want the scalebar to be a length of 30, so we scale it by the factor of the desired distance divided by the measured distance. Here I have just entered the calculation on the command line, but I could calculate it first and enter the value instead (1.9389)

Measuring the scale bar after rescaling. Now the value is correct (Note that since you can’t use modifiers to get a precise measurement in an inserted bitmaps, there will always be a margin of error when you measure, so don’t expect to get the desired value exactly. This is a measuring problem, and not a scaling problem)

The inserted image is now scaled correctly, and you are ready to start tracing over it. I could have picked a better template size, but it is easy to now measure the needed size in this map, and then create a new one in the desired size, and copy the scaled bitmap over (Just make sure to not accidentally rescale it when you paste it into the new map, as CC3+ does let you scale items you insert by holding down the ctrl key and moving the mouse when you paste them [and Ctrl is also used for the paste shortcut, Ctrl+V, so if you move your mouse while hitting the shortcut, you may accidentally rescale it])

There will always come a time when you need to rescale something already in your map. In CC3+, there are basically two main ways to scale some, and that is either visually by moving your mouse and decide when it looks right, or you can do a non-visual scale where you plot in the numbers on the command line instead. The first option can be a good option if you don’t know exactly by how much you wish to scale something, and you want to scale it visually compared to something else. The latter option is much better for precision scaling, and when you know exactly by how much you need to scale something.

Scaling visually is easy enough. Just click the scale button, select the entities as usual, and select Do It. CC3+ Will first ask for the scale origin. This is the center point of the scaling, and it allows you to control in which direction the scaling will take place. This doesn’t really change the scale itself, but it will affect the position of the entity after scaling it. For example, if you want the center of the entity to be in the same place before and after scaling, simply click in the center of it to set the origin. On the other hand, if you want the lower left corner of the entity to stay in the same place, click in the lower left corner of the entity, and it will “grow” upwards and to the right (or shrink down and to the left if you scale it down.). If you are unsure where to place the scale origin, the middle of the entity is usually the best. Once you have clicked the origin point, you can move your mouse upwards toward the top of the screen to increase the scale, or downward to reduce the scale. You’ll either see an outline of the entity, or a bounding box that will show you exactly how large the entity will be. When you are pleased with the result, simply click to finish the command. (Right click or Escape aborts).

However, there are lots of times when a non-visual scale is better. First of all, by scaling visually, it is very difficult to get the exact same size for all entities you wish to scale if you need more than one. Or you may need exact scaling, perhaps you need to double the size of something, but you want to be exact about it so it still fits your grid perfectly. To activate non-visual scaling, simply right click the scale button and select the non-visual scale option (if you need to scale height and width differently, you can also use the non-visual scaleXY option). Just as with the visual scale option, you need to select the entities to scale, but when you hit Do It, it will ask you for a scale factor. This is just a basic number to multiply the entity size by, so a scale factor of 2 means it will be twice the width and height, while 0.5 would mean it would be half the width and height. After providing the scale factor, you will be prompted for the scale center. This behaves exactly as for the visual scaling explained above, and you can either enter it by typing the coordinates of your scale center, which is very helpful for precision work, or you can simply click in the map to set it (remember you can use modifiers like endpoint or snaps to ensure a precise placement even when using the mouse).

Of course, one of the tricky things with non-visual scale is to know the scale factor. Sometimes you simply know you wish to double the size of something, but at other times you don’t really know. The case is often that you want something to be a specific size however. Let us for the sake of example say that your map contains a car symbol. You know that this car is supposed to be exactly 16 feet, 6 inches long (16.5 inches), but when you measure the symbol in the drawing using the distance tool you see that it is only 12.5 inches. To find the correct scale factor, simply divide the supposed distance (16.5) by the measured distance (12.5) and you have your scale factor (1.32). Now you have a number to type on the command line. However, CC3+ makes this even easier for you. There is no reason to actually calculate this number first, CC3+ can do the calculation for you mid-command. When CC3+ asks for the scale factor, instead of typing 1.32, you can instead type 16.5/12.5 followed by enter. The end result will be the same, but it is often cleaner to just give CC3+ the calculation, especially if the result would contain lots of decimal places. When done, the end result should be that your car is now exactly the size you wanted it to be, without any resorting to trial and error.

One of the more common things that need to be rescaled with proper precision is if you have an existing map as an image you want to trace over and recreate in CC3+. If the map has a scale bar, the easiest is simply just to measure that scale bar after inserting it into CC3+ and then use the procedure above to rescale it, or if it doesn’t have a scale bar, measure some length in your map that you know the distance, such as the distance between two cities, the length of an island, or so on. Try not to measure tiny details, these give a larger margin of error, it is better to measure large distances. And if you don’t know any distances on the original map, I recommend you sit down and think about it and come up with some appropriate values, as it is better to handle the issue of scale now rather than when you are done with your CC3+ map.

Rescaling the Entire Map

So, you’ve messed up somewhere, and you find that your map is in the wrong scale. Perhaps you changed your mind from your initial thoughts when you made the map, or perhaps you did something wrong and messed up while working, or just feel like changing the scale.

Rescaling the entire map relies on several of the factors we have been talking about so far.

First, you need to rescale every entity on the map. To do this, start by unhiding every sheet and unhiding and thawing every layer. You may wish to make a note of what sheets and layers were hidden/frozen to set this back later. Also turn effects off for now, that will make this faster.

Now, find the scale factor by measuring a distance in the map and divide the expected result by the result you got, just as we talked about when explain the non-visual scale command above. Also remember you don’t have to do the actual calculation, once you have the values you can just enter the calculation on the command line as discussed above, but it is important that you do find both the measured and expected distance before proceeding. Also, don’t rely on your scale bar at this point, it may be wrong, measure a real distance in the map.

Then, start the non-visual scale command. However, instead of selecting entities manually when prompted, simply hit the A key on the keyboard to select everything (All). This may take a few seconds if there are lots of entities on the map, but once CC3+ appear ready to proceed, simply hit D (for Do It) and CC3+ will continue to the next step and ask for the scale factor. Either enter the scale factor you calculated from the values you collected above, or just type the calculation as discussed earlier, and hit enter. The final prompt from CC3+ will be the scale origin. Usually, the 0,0 coordinate is located in the bottom left of the map, and I like to keep it that way, so simply enter 0,0 on the command line and hit enter. Depending on the complexity of the map, CC3+ may work for a few seconds, and when it is done, the map may look like a mess. Simply hit the Zoom Extents button, to both get the proper zoom for your new scale, as well as to force a redraw, and you should be seeing that everything is now correct. The map should look mostly as it did before, but if you measure distances now, it should report the expected distance (assuming your scale factor was correct). You can now go back and hide/freeze the appropriate sheets/layers.

That’s it for the basic rescaling of the entire map. But, you may have noticed that I wrote above that the map will look mostly as it did before. This is because we have scaled the map itself, but we haven’t scaled effects and fill styles to match. If your scaling was just a minor adjustment, this may not really be visible, but if you tried scaling it by a factor of 2 or larger, you’ll certainly notice that.

So, for the effects, you will need to go through the list of effects, and for every effect that is set to map units instead of percent of map extents, you’ll need to multiply all the various lengths by your scale factor (and you’ll need to do these calculations yourself). Right now, you can probably see the great advantage in having effects set as percent of map extents instead, since these will basically follow the map size as you scale up and down.

For bitmap fill styles, you will need to change the height and width of every fill style you use in your map, again multiplying the values here with your scale factor. Refer to the section about fill scaling above for more details.

Lastly, you may find that some bitmap fills appear more pixelated than they did before. CC3+ uses a system where it has 4 copies in different resolution for every symbol and fill style. This improves performance considerably, because it doesn’t need to show you the highest quality version when you are zoomed far out, because your screen doesn’t have enough pixels to show the difference anyway. However, when scaling by a considerable amount, the base values it uses to determine this may be off for your map. To fix this, click the Display Speed Settings button in the left toolbar, and then hit the Fill style Resolutions button in the dialog. For all the values in this dialog, divide them by your scale factor (not multiply as you did with effects and fill styles. Hit ok, clear the bitmap cache, check the redraw on ok option, and hit ok.

That’s it. You have now done a complete rescale of your map, including rescaling effects and fills to match. Do note that you may be perfectly happy with the result after just rescaling the entities, so doing the rest is completely optional, but now you know what to do if you need it.

After reading this procedure, I also hope you see why getting the scale right when you initially create your map is the best way to go.

The Automatic Option

Because rescaling a map is actually a lot of steps, especially if you need effects and fill rescaling too, I’ve created a CC3+-addon to do all of this automatically, you only need to determine the scale factor.

To use it, download the file from this address, and put the .dll file from the .zip inside your CC3+ installation directory (C:\Program Files (x86)\ProFantasy\CC3Plus by default).

You’ll also need to have the Visual C++ 2017 runtime installed on your computer. You may already have this, but if you don’t, you’ll get an error message when starting CC3+ with this .dll in it’s directory. Download from the official Microsoft download site, you’ll need the 32-bit version (vc_redist.x86.exe)

After installing the .dll and the Visual C++ runtimes (if required), you can run the command by typing SCALEDRAWING on your command line. The command line will then ask for the scale factor, which you can provide either as the number, or the calculation as with the non-visual scale command. Once you hit enter after providing the scale factor, the command will take care of the rest. Note that it doesn’t update the display when done, so simply hit the Zoom Extents button after running the command. The map should look visually identical to what it did before, as this command handles the scaling of entities, effects and fills automatically, only way to see that the command did anything is to measure distances again after running this command (and AFTER hitting Zoom Extents). Because it doesn’t do any screen updates, it should also be lightning fast, but remember, you won’t see the result until you hit Zoom Extents. If you hit Redraw instead, you can easier see the result of the scale operation, because this leave your current zoom intact.

Note that this add-on is NOT an official ProFantasy add-on, and also note that it has had very limited testing compared to official add-ons. I do recommend you keep a backup of your map before running this command just in case.


3 Responses to “Scale Matters”

  1. This is fantastically useful. Thanks!

  2. Thanks so much. Scaling has been such a mystery for so long and this really helps. Now I feel like I need to go back over all my maps. :/

  3. Thanks a million for taking the time to provide this extremely useful reference, and also for creating your addon.