1) You must have the full installation of the full version of CC4 to use new maps. When installing the files or maps mentioned in this FAQ, the CC4 files that will be replaced may be backed up by renaming them with an O [=original] at the start of their file names. To restore CC4 to original configuration simply delete the new files and the O from the corresponding original files. Or simply delete the original CC4 game files or overwrite them with the new files and reinstall CC4 [a 5 minute task] to get back to standard game setup. It is also recommended you configure Windows Explorer to display file extensions. File management is difficult if file type extensionare not diplayed in Win Explorer. The Windows Help file index listing for 'extensions' has instructions on how to do this.
2) Download the CC3_4E&T.zip . This zip contains a modified Elements.adb file that uses the CC3 terrain elements edited to have the increased cover and protection values found in the West Front mod. It also adds the 8 new "West Front" terrain elements some mapmakers have used on their maps. The new CC4 Elements file allows most CC3 Map.txt files to work 'as-is' in CC4 [only the CC3 maps done for the Nam and Pac mods will not work with the new Elements file]. Unzip the new Elements file to CC4/Data/Base .
The zip also contains modified Terrain files which removes all traces of snow from the 'Newly Dug' trench graphics. The new Terrain files replace the winter treetop graphics with summer trees. Unzip the new Terrain and TerrainA.stm files to CC4/Graphics.
3) Unzip or copy the 5 or 6 CC3 map files [*.bgm *.ovm *.mmm *.rfm *.txt & *.los] to CC4/Maps. CC3 or 4 Maps without buildings will not have a *.rfm file. Rename [eg. OAssenois.*] or delete the 5 or 6 CC4 map files that are being replaced by the new map files. Do not rename or delete the CC4 *.btd file. If you choose to backup the original CC4 game files being replaced, make a backup of the .btd you plan to edit. Rename the CC3 map files to be used in CC4 the same as the CC4 map name [eg. Assenois.bgm etc]. Now comes...
It will be necessary to do some light hex editing to the CC4 map.btd file. Fear not. A hex editor works much like a text editor [Notepad etc] and the edits you will make are simple. Dont get alarmed when you open a game file and see 3 columns of strange looking letter/number combinations. There is a pattern to that madness and with a little patience you can play god with the game. The *.btd file specifys the location, value, name and links to any adjoining maps for all the victory locations [VLs] on a CC4 map. Download a hex editor [Hex Workshop , Ultra Edit or similar].
Open the CC4 *.btd file in the hex editor. Your chosen *.btd file will look similar to [but lack the color coding Ive added] the original Bastogne.btd file in image1. You may need change the hex editors preferences so the layout is 16 bytes per row as seen below [note: a byte is simply a pair of 2 alpha-numeric characters; OA, 48, FF etc.] :
image1
The .btd file format is color coded as follows :
Bytes 1-4 [the first 8 characters shaded in blue] are the file header. Do not edit the file header.
Byte 5 [shaded in light green] is the map index number. The roster of the 43 CC4 map index numbers is here. Youll note Bastogne is map index number 1C as shown in the roster and in byte 5. Do not edit the map index number.
Then follows a 32 bytes data sequence [boxed in black] for the first VL on the map. Each subsequent VL also has 32 bytes of data [boxed in black] with a maximum of 10 VLs per map.
Byte 1 [shaded in red] represents the X [or horizontal] megatile coordinate for the VL.
Byte 2 [shaded in light blue] represents the Y [or vertical] megatile coordinate for the VL.
NOTE!!! - the X,Y megatile coordinates for the 'to Senonchamps' VL are 00,0F in hexadecimal. Specifics on X,Y megatiles coordinates and the hexadecimal number value system are explained later in this FAQ.
Bytes 3 & 4 are always 00.
Byte 5 [shaded in yellow] is the point value of the VL [VLs are worth 1-3 points in CC4]. If byte 5 = 32 that VL is worth 1 point. If byte 5 = 64 that VL is worth 2 points. If byte 5 = C8 that VL is worth 3 points.
Bytes 6-8 are always 00.
Bytes 9-29 [shaded in purple] represent the 20 characters maximum alloted for the VL name. VL names of less than 20 characters use zeros to fill the remaining bytes. Editing VL names is discussed later.
Byte 30 [shaded in orange] is the map index number of the map that VL links to IF that VL is a road exit VL. IF the VL is not a road exit VL then the hex value in byte 30 can be any of the following hex values - 00, D9, FF or FE. FE is used to signify a special type of road exit which will be explained later. The map index numbers in byte 30 of road exit VLs are how CC4 knows to permit movement between maps on the Strategic Map.
Bytes 31 & 32 are always 00.
This 32 byte data sequence repeats for every VL on the map up to a maximum of 10 VLs. The ten 32 byte VL data sequences in the Bastogne.btd file are shown boxed in black in image1.
Immediately after the 32nd byte of the 10th VL's data sequence is the 8 byte map name [shaded in dark green and boxed in black]. CC4 map names can be up to 8 letters long. The restriction on map name length results in the abbreviated map names used on many of the CC4 map files. The map name in the .btd can be edited but it must exactly match the mapname used in the Index.mpi file in CC4/Maps as well as the file names for that map set [*.bgm etc.]. Hex editing the Index.mpi file is optional. One small advantage to changing the map name in the .btd and editing the Index.mpi file is you can use the CC3 map name and not have to rename the CC3 map files to match the CC4 map being replaced. Details on doing this are given later in this document.
Following the map name there is one blank byte [00 boxed in black]. Then comes the map briefing text [shaded in violet] for the US. .BTD files must have at least one letter at the start of both briefings [the German briefing is found by scrolling down to the exact middle of the file] or the game will crash if the mini-map on the Strat screen is clicked to preview the map. This crash problem will not affect you as long as you edit an original .btd file since they all contain briefing text.
Megatiles are the deployment 'squares' players set for Allied, Axis or neutral control in the CC3 Scenario Editor. The original CC4 VL locations can be modified to fit the CC3 map by changing the X & Y coordinates in bytes 1 & 2 of a VLs data. Modifying VLs coordinates to fit a CC3 map is made easier if you open the CC3 map in CC3's Scenario Editor. Place up to 8 VLs where you want them, hit the PRINT SCREEN button on you keyboard, quit CC3, open MS Paint [or similar] and use CTRL+V to paste the screenshot of the CC3 Scenario Editor deploy screen into the window. Crop the screenshot so only the map is pictured [image3] and you can then easily switch between your hex editor and the screenshot of the megatile grid while editing the .btd without having to ALT+TAB in and out of the CC3 Scenario Editor.
Count off the X,Y megatiles [as explained in the text below image3] to determine the coordinates of the VL locations shown in red on the screenshot. The CC3 Scenario editor only allows 8 VLs to be placed so if you want 10 on your map in CC4 youll have to 'eyeball' the last two.
Now comes the fun part :) The X,Y coordinates given in the bytes 1 & 2 in every VL data sequence are in hexadecimal notation [also called hex]. Hexadecimal is a variation of a base 16 numeric system. The decimal [regular everyday base 10 numbers] coordinates you count off on the new map in the CC3 Scenario Editor to determine a new VL location must be 'converted' into hex. Any decent hex editor will have a base converter tool that lets you type in either a hex or decimal value to display the equivilent value in the other numbering system.
image2
However, since the highest decimal value you will need to convert to hex when editing a .btd file is 42 [0-42 because there are 43 maps in CC4], this decimal to hex conversion table can be used to find the hex equivilents for decimal values.
Note - since a byte is always 2 characters, hex values containing only 1 character are 'padded' with a 0 in front of that one character.
image3
image3 shows the Bastogne map in the CC3 Scenario Editor. The upper left megatile of every map is the point of coordinate origin [0,0 in decimal, 00,00 in hex]. The megatiles with red boxes are the actual VL locations specified in Bastogne.btd. The X,Y megatile coordinates are noted on image3 for each Bastogne.btd VL in both hex [the values in bytes 1 & 2 of the VL data] and decimal [with the decimal coordinates in brackets]. Bytes 1 & 2 [shaded in green and red in image1 above] in the data for the first VL in Bastogne.btd are 00,0F. Using a base converter or the hex=dec list above note 00,0F in hex = 0,15 in decimal.
To better familiarize yourself with the X,Y coordinate system, starting from the 0,0 megatile upper left, count how many megatiles it is first across [the horizontal X decimal value] and then down [the vertical Y decimal value] to the red box indicating the location of the first VL in the Bastogne.btd.
Your count should have been 0 megatiles across and 15 megatiles down. If it helps, think of the X values as indicating which column of megatiles the VL is in and the Y values as which row.
Assuming Future's WFBocage map is going to replace the Bastogne map and its intended to have only the 8 VLs indicated by the red boxed megatiles on the CC3 Scenario Editor screenshot shown in image4 - The first thing to keep in mind when editing a .btd is if you want the new map to work in CC4 operations or campaigns you must include the same number of road exit VLs, using the same map index number in byte 30 of the road exit VL data sequences, that the original .btd file had. The road exit VL names can be different than the original exit VLs.
There is a special class of road exit VLs on some maps in CC4. The special road exit VLs are identified by the hex value FE in byte 30. These do not serve to link maps on the strategic level but rather to facilitate entry onto that map from 'outside' the strategic map. The maps with this special class of VL are located around the perimeter of the strategic map [Simmerath
Its easy to identify road exit VLs in an original .btd file because those VL names always start with 'to...Somehwere' and byte 30 will always be a map index number. As a rule, road exit VLs are located on one of the four map edges but youll find you can 'cheat' toward the center of the map with these. Keep in mind moving a VL towards the interior of a map will affect the map entry deployment 'box' around that VL when you play. Experiment with road exit VL locations to see how 'interior' road exit VL location affects deployment.
Its logical, but not necessary that the road exit VLs on the new map be arranged on the map perimeter in the same order they were on the original map. For example - Assenois is the map due south of Bastogne but the 'to Assenois' road exit could be located on the north [top] side of WFBocage and the 'to Foy' exit VL could be on the south side. While this would be confusing to the player, it would still work to allow movement between these maps in the strategic level.
image4
image1
image5
image5 indicates in red the edits that were made to the original Bastogne.btd file [image1] to make the VL data conform to the VL locations and names intended for the WF Bocage map as shown in image4.
Note the data sequences for the last 2 VLs in the original Bastogne.btd file were 'zeroed out' [deleted] by typing zeros over all their data because only 8 VLs will be on the WF Bocage map instead of the 10 that were on the original Bastogne map.
Note also that the 'Wrecked House' VL that replaces Bastogne's 'The Train Staion' VL is now worth 2 points [64 in hex], the 'Middle of the Map' VL that replaces the 'Hotel de Ardennes' VL is worth 3 points [C8 in hex] and all 6 road exit VLs are worth 1 point [32 in hex].
Particular care must be taken to adjust byte 30 in the road exit VLs to maintain the strategic movement linkage between the new Bastogne map and the surrounding original CC4 maps. This can be seen in the image5 edits to byte 30 in the new 'to Marvie' [map index number 24] and 'to Neffe' [map index number 1D] data sequences. Remember - it doesnt matter what the name of a road exit VL is. If a CC3 map has replaced the Neffe map for example, as long as map index number in the 'to Neffe' exilt VL data in the Bastogne .btd file is used it doesnt matter what VL name you use. If the new Neffe map is Kursk1, the exit VL in the Bastogne.btd that links Neffe could be named 'to Kursk1' as long as the Neffe map index number is in byte 30 of the VL data.
The image5 edits were made by placing the cursor immediately left of the original hex values to be changed and simply typing in the new values. The only exception to this is editing VL names. To edit VL names place the cursor in the right hand "ascii" column, again immediately left of the first letter to be changed, and type in the new name.
Example - The edit to the 'Train Station' VL name was made by placing the cursor immediately left of the 'T' in 'Train Station' and typing 'Wrecked House'
Important - if the new VL name is shorter than the old VL name, do not use the space bar to space over the remaining letters of the old VL name in the ascii column. Instead, you must reposition the cursor in the middle column of hex data at the end of the new name and use zeros to delete ['zero out'] the hex values for the remaining letters of the old VL name.
The ascii column of data is the text equivilent of the hex values in the middle data column. [eg. in the ascii column, the capital 'M' in the VL name Marvie corresponds to the hex value 4D at the beginning of the same row in the middle data column. To delete the 'e' at the end of Marvie, you would place the cursor immediately left of the hex value 65 [ie. between the hex values 69 and 65] in the data column of that row and type 00.
When finished editing the .btd file it must be saved to the CC4/Maps folder using the same name as the original .btd file.
Adding more than one CC3 map to CC4 is simply a matter of repeating the steps above for each new CC3 map.