Why do I see a Red X?

If you have used Campaign Cartographer for some time, you’ve probably encountered the red X showing up in your map. Perhaps just as simple symbol missing and being replaced by a red X, or maybe your map was covered by them. Today, I’ll talk a little bit about why you may encounter this issue, what the reason behind it is, and what you can do to remedy the situation, as well as tips for avoiding it in the first place.
Hopefully after reading this, you will have a better idea on how CC3+ uses your images, and can avoid this situation in the future.

The Core Reason

The underlying reason this happens is rather simple. When you make a map in CC3+, the map will contain references to the image files used for symbols and fills. These files are not embedded in the map itself. So, every time you open up a CC3+ map, it will look at the references embedded in the map, and will then go and load these image files from your drive. However, if it cannot find these files in the location specified in the map, it won’t know what that image is supposed to look like, and it will display a red X instead indicating this. So, in other words, this happens because the image that was on your drive when you made the map is no longer there, simple as that. This isn’t an issue with CC3+ itself, it is simply a missing image file. So, what we need to look at now, is why this file may be missing. This will influence the best way to go about fixing your map.

Some of you may wonder why the map refers to the images on disk instead of just embedding them in the map. The main issue here is that this would result in truly gargantuan map files. The artwork in CC3+ is provided in really high quality, allowing you to zoom in very close or export in a high resolution without the image showing pixelation. For example, the buildings intended for city map is actually in a high enough quality to also be used for zoomed-in battlemaps. The images provided with official CC3+ artwork is generally way higher resolution than those provided with other software or found for free on the net. This allows for a very high detail when mapping, for example to support deep zooms, but it also makes them prohibitively large to embed in a map file.

So, let us examine the typical scenarios that lead to the red X’es, while also discussing how to avoid them in the first place.

Missing Products

CC3+ comes with many different add-ons. If you open a map on a different computer than you made it on (or you have re-installed the computer in the mean time) it is important that you have installed the exact same products as before. If you made a dungeon map in the SS4: Dungeons of Schley style, you’ll need to have this add-on installed on any computer you wish to open the map on, just having the core CC3+ program won’t help.

This also goes for third-party art packs, such as the Dundjinni Archives, Vintyri Cartographic Collection, Bogie’s Mapping Objects or CSUAC.

In these cases, it should be as simple as installing the product. Of course, if you got this map from another person, it might be using artwork from a product you don’t own yourself, in which case you will need to purchase and install it to use that map.

Note that due to the way CC3+ works, it doesn’t matter if CC3+ is installed in a different location from when the map was made. The official references are relative to the installation directory. However, if you have imported custom artwork, you need to watch out for this, see the chapter about custom artwork below.

Moved/Deleted Files

Since maps store the location of the image files for the symbols and fills, it is very important that these files should not be deleted or moved. Some people sometimes decide they wish to reorganize the contents of their Symbols directory inside the CC3+ data directory. That is a very bad idea. If you do that, existing maps won’t work anymore, and new maps made with your new changed structure won’t work on future installations since those will be using the default catalog structure. Make as many new symbol catalogs you want, and organize the symbols inside the symbol catalog, but never move the actual image files on the disk. (Don’t copy them either, because if you make maps based on copies in a different location, you will get into problem opening that on a standard installation [Of course, if you are making custom variants by editing the image file, that one should obviously be a copy, don’t change the originals]).

The issue with moved files mostly happens with custom artwork (see below). You may have downloaded some new artwork from the net, and imported it into your map while it was still in your download directory. Then, later you decide to organize things a bit, and move the image files from your downloads directory to a more permanent home. But then, the next time you open the map, it will be full of red X’es, because the map is still set up to look in your downloads directory for these files. So the lesson here is to put the files in the appropriate permanent location first, and then importing them into your map.

Other reasons for files being deleted/missing could be things like drive failure, the images are on a removable/network drive that isn’t currently connected or has gotten a different drive letter since last time, and of course accidental deletion of files. Keeping proper backups is always a good idea, and keep a backup with the full file structure, so you know where the files are supposed to go.

Custom Artwork

Apart from not having the correct products installed, red X’s mostly appear when using custom artwork, whether something you made yourself, or something you downloaded from the internet, and the most common reason being as I described above, that the file was moved after being imported into the map.

So, whenever you plan to import custom artwork for use in your map, the main advice is to always put it into the final location first. And to make it as easy on yourself as possible, but it inside the CC3+ data directory (This is located in C:\ProgramData\ProFantasy\CC3Plus by default unless you changed it during the installation.). Inside the data directory, there is one folder called Symbols, and one called Bitmaps, the latter being intended for fills. Use these two directories. Symbols have a sub-directory called User, which you can use for your own artwork. If you don’t want to use this one, you can also create your own directory inside Symbols, maybe with your own name or something, but I advice against putting it inside the official directories in there, it is easier to manage your artwork if you keep your own directory and don’t mix it up with official artwork. And I also advice you to make a directory structure inside your User directory, so you can organize things a bit. The Bitmaps directory doesn’t come with a User directory by default, but just make one. Now you have a couple of directories that are easy to back up, and to copy to a new installation later. Now, with your files properly placed, this is the time to import them into your map (or template or symbol catalog). Trust me, using your own personal subdirectory under Symbols and Bitmaps will make it much easier in the long run if you wish to use custom artwork. One of the main reasons for this is that you can use relative paths for your artwork. Remember above, when I mentioned that it didn’t matter where you installed CC3+, because references are relative to the location of the data directory? Well, if your files are inside the data directory too, you can utilize the same kind of relative paths, but if you instead decide to put your artwork somewhere else, for example C:\My_Artwork, it means that the files will always have to be in that exact location. If you later find you are getting low on space on C and want to move them to D, you can’t do that without causing Red X’es to appear in your maps, and having to deal with it.

How to Fix your maps

Now that we have looked into some of the typical reasons for this happening, let us see how you can easily fix your map back up with a few steps.

One – Identify the missing images and find the expected location

There are three “types” of images that may go missing that have different ways of identifying them, these being symbols, fills and inserted images.

Symbols

For symbols, start by going to the Symbol Manager (from the Symbols menu). Scroll down until you see a symbol displaying the red X. click on it to select it, and hit the List button. The list output will show a bunch of data, but the important thing here is the file name. Note that if you use the Info->List on a symbol in your map instead of going through symbol manager, you won’t see the file path, but only basic information about the symbol entity.

Fills

Click the Fill Style indicator in the top right, go to the Bitmap Files tab, and pick the missing fill from the list. You can see the Red X symbol in the preview in the drop-down list, but it is often so zoomed in that you only see the solid grey bar form the top left of the red X image. Anyway, once you have picked the problematic fill, you can see the file path in the edit box labeled “file:”.

Inserted Images

These are images you have inserted with Draw -> Insert file. To see the file path, use Info->List on the image, and look for the path listed. The output here will be quite similar to the one for the symbol above.

Two – Understanding the paths

When you look at the paths, you may have seen that they start with a symbol (@, $ or #). These symbols means that it is a relative path. Basically, if it starts with @, it means that the rest of the path refers to a location inside the CC3+ data directory. This is what is used for all official symbols/fills to ensure that it doesn’t matter where CC3+ is installed. The $ symbol means the path is relative to the map, for example if the path is $image.png, it just means that it expects the file image.png to be found in the same folder you have your map (so if you wish to move the map to another location, the image file needs to be moved along with it). The # character isn’t normally used in CC3+ maps, but you can find it in older maps from the CC3 era. For all practical purposes, just think of it the same as the @-sign when you encounter it.

For example, if the path is @Symbols\Maps\Image.png, it means that it refers to the Symbols directory that is inside your CC3+ data directory (with the file Image.png being inside a directory called Maps inside the Symbols directory).

And of course, the last option is a path not with any of these symbols prefixing this, this is an absolute path, which points exactly where it says it does.

Three – Deciding what to do

Now that you have figured where CC3+ expects your image to be, you have two options; fixing the map, or moving the files into the correct place. Which option to pick depends on the situation. If this is a new install and you find that you seems top just have copied your custom artwork into the wrong location, simply moving it to the correct location may be the best option, but if this is an older map, perhaps referring to some silly location (like your downloads folder) where you don’t really want your images to live for the future, it is better to fix the map. Of course, it also depends on how many maps you have with this problem. If you have hundreds of maps, then perhaps moving the images back to the old location is easiest.

And obviously, if the files aren’t just in the wrong location, but completely missing, you need to go dig up those image files, you can’t fix the map if you don’t have the files to point to. The filenames you found above should help you identify the files you need to go find.

Four A – Moving (Finding) the files

If you go for this option, it is just a matter of putting the files in the correct place. Remember that by correct, it has to be 100% correct, sometimes errors happen because you have an extra space. Other common path problems is that you unzipped the image form a zip archive, and your unzip utility created an additional directory in there with the name of the zip file. Examine the paths you found above, and check every step in the path. When you have copied/moved the images to the correct location, you can hit Display Speed Settings , then hit the Clear Bitmap Cache button and check the Redraw on OK checkbox and hit ok. This will force CC3+ to load the images from disk, and assuming they are now located in the correct location, should let them show up instead of the red X’es. If X’es still show up, check the path again and look for any mistake.

Four B – Fixing the Map

Fixing the map is the most involved of the procedures, but it is the best option if the references in the map point to somewhere you don’t want your files to live. How to fix it depends on which of the three above types you are fixing. Save a backup copy of your map before starting this process, and if you have multiple items to fix, I recommend saving every so often, I have experienced the occasional crash if I change too many fills at once.

Inserted Images

Use Numeric Edit on the image. This will bring up the Edit Picture dialog (assuming you selected the right entity, and that it is indeed an inserted image). From this dialog, you can hit the …(Browse) button, and just browse to the new file. If the file resides inside your CC3+ data directory, make sure that Make path is set to Relative to CC3 path; when setting this option, you should see the path starts with the @ symbol.

Note that for some images correctly selecting the image with the command can be a bit tricky, if you have problems, I recommend trying a different edge, or just zooming quite a bit out so your pick cursor is covering a much bigger part of the image (be careful not ending up selecting something else though)

Fills

Click the Fill Style indicator in the top right, then the Bitmap Files tab, and pick the fill from the dropdown. Then just click the Find button next to the file path, and browse to the new file. Note that this dialog doesn’t make the path relative by default, so if your file is inside the CC3+ data directory (it should be), manually edit the path in the Fill Style dialog after returning from the browse dialog, and replace the part of the path that goes to the data directory with a @. For example, if the path after browsing says C:\ProgramData\Profantasy\CC3Plus\Bitmaps\Tiles\Overland\farmland_VH.PNG, manually edit it to say @Bitmaps\Tiles\Overland\farmland_VH.PNG instead (this example is based on the default location of the data directory, if you have yours in a non-standard location the part you need to replace will match that instead obviously).

Symbols

To fix a symbol, you need to go back into the symbol manager, find the symbol in the list, select it, and hit the Edit button. You must now click two locations to determine the size of your edit window. Inside the edit window, just follow the procedure described for Inserted Images above. Once changed, close the edit window, CC3+ will ask if you wish to keep the changes to the symbol, say yes.

Everything at Once

You don’t have to fix each image individually, but this is a bit more technical than the other solutions.

The trick here is that CC3+ has a command called REPLACEIMAGENAMESDWG. Just type this command on the command line, and CC3+ will ask for two pieces of information, first the text you wish to replace, and then what you want to replace it with. For example, if you have a bunch of references in your map that looks like c:\users\monsen\downloads\imageXX.png, and you really want these references to go to @Symbols\User\Dungeon\imageXX.png instead, all you have to do is to run the REPLACEIMAGENAMESDWG command, answer the question about the text to replace with c:\users\monsen\downloads\ and the text to replace with as @Symbols\User\Dungeon\ and you’re set. This command does a mass replace, fixing them all at once. Of course, be extra careful before doing mass replaces like this, always have a backup save of your map in case you make a mistake. Also note that if your replacement text is longer than the text you replace, you MUST be running CC3+ 3.97 (Update 27) or newer, otherwise you’ll corrupt your map. (Only needed when you run the command, the map can still open in an older version later)

(CC3+ even has a command REPLACEIMAGENAMES that does replacements across all .fcw files in a folder if you have multiple map files to fix.)

A note about the resolution suffixes

Almost all official ProFantasy artwork comes in four different resolutions, indicated by the _VL, _LO, _HI and _VH suffixes on the image files. If you import your own files properly when making your own symbols/fills, CC3+ will also create these resolutions for you. When browsing for a replacement image, you may wonder which one to pick. But the short of it is, it doesn’t matter. CC3+ will switch between them automatically anyway.

Symbol Catalogs and Templates

Symbol catalog files (.fsc) and template files (.fct) are inspected/fixed exactly the same way as map files. Just open them up using File->open (as you would a regular map), change the file type in the dialog to symbol catalog or template, and just open them up in the main editor window.

 

 

If you have questions regarding the content of this article, please use the ProFantasy forums. It can take a long time before comments on the blog gets noticed, especially for older articles. The forums on the other hand, I frequent daily.

 

One Response to “Why do I see a Red X?”

  1. Thank you so much for this, Remy!

Leave a Reply