CS Graphics Under the Hood #4 – Hex Sides Galore!

Guide For Modders

Welcome to Part Four of the CS Graphics Under the Hood series! This time, let us look at the hex sides, which comes in the form of Sides, Blocked, and Slopes. Then there’s the Full Bridges and Side Bridges.

That leaves only the various Water tiles for the fifth and last edition of Map Graphics. There, we’ll discuss the new Night tiles as well,  before moving to various Unit and User Interface files in the coming episodes of these developer diaries.


Sides is a major exception to rule for having similarly named and composed files for both 2D and 3D.

In 2D, the following tiles are included in the one Sides[view moniker].bmp file

  1. Stream
  2. Minor River
  3. Gully
  4. Dune
  5. Ditch
  6. Crest


Here’s the 2D Sides7d.bmp Normal view file:

Click to enlargen the image

However, with 3D, due to its more complex layout, there’s a separate set of files for each of the rows within the composite Sides 2D file:

  • Streams[view moniker].bmp
  • MinorRivers[view moniker].bmp
  • Gullies[view moniker].bmp
  • Dune[view moniker].bmp
  • Ditch[view moniker].bmp
  • Crest[view moniker].bmp

Here’s 3D DesertDitches3d.bmp. Note how inherently more complex the 3D map can be, as each hex side can be viewed from various directions, when rotating the map around for instance:

Click to enlargen the image

Sides and the respective 3D sets of files use the Regions + Biomes convention to differentiate one map from another:

  • DesertSides8d.bmp
  • MediterraneanCrest0d.bmp


With Blocked, we are back to both 2D and 3D sets being similarly put together. The tiles available in Blocked are:

  1. High Wall
  2. Damaged High Wall
  3. Stone Wall
  4. Hedge
  5. Bocage
  6. -reserved-
  7. -reserved-
  8. Reef

Due to Hedge and Bocage tiles present in this file, Blocked follows the GreenBrownBarren Conditions as set in Scenario Editor.

Here’s the two file sets, first 2D with GreenBlocked7d.bmp:

Click to enlargen the image

And here’s 3D with GreenBlocked3d.bmp:

Click to enlargen the image


With Slopes, we have the second major set that differentiates between 2D and 3D map views. Slopes follow the Ground Condition notation of Normal (no prefix), Soft, and Mud versions of them. (Later, the Frozen, Snow and Deep Snow versions need to be added.)

2D again is quite easier to put together, containing just four rows with six columns:

  1. 3D Contours in 2D maps (not implemented yet)
  2. Cliff
  3. Embankment
  4. Escarpment

Here’s the file in all its simplicity, with Slopes8d.bmp as the sample:

Click to enlargen the image

3D Slopes is much the busier beast, as it needs to cover all the hex sides with Reverse Map views too. Here’s MudSlopes3d.bmp, with lots of Slope variants, like Caves, Streams and Minor Rivers, and Tunnels, flowing through them:

Click to enlargen the image


We’re not nearly done though. Hexes Galore! it is.


As name implies, these are the Hex Side Bridges (and a Fjord) for both 2D and 3D. Here’s the 2D SideBridges8d.bmp:

Click to enlargen the image

And here’s the respective 3D SideBridges0d.bmp:

Click to enlargen the image

Rows included are:

  1. Fjord
  2. Light Bridge
  3. Light Bridge, Destroyed
  4. Medium Bridge
  5. Medium Bridge, Destroyed
  6. Heavy Bridge
  7. Heavy Bridge, Destroyed

And since we need something to pass full hex obstacles as well (Rivers, Major Rivers, Canals, Major Canals, and Water one hex wide, we need to have…


Full Bridges include two bridge types: a Heavy large-span Bridge, and a Pontoon Bridge. And here they are.


Click to enlargen the image


Click to enlargen the image


And that’s the hex sides covered, for most parts at least. Wheew, this one was quite a biggie… Any questions, give us a holler.

CS Graphics Under the Hood #3 – Terrain, Vegetation, and Trees

Guide for Modders

Building further from the previous Biomes and Regions and Open Terrain entries, let us introduce the next set of map graphics, namely Terrain, Vegetation, and Trees files.

Note: Vegetation and Trees, but not Terrain, are affected by Scenario Editor’s Conditions dialog. But let us look at the graphics tiles first.


First, let us look at the various terrain types depicted in Terrain files. They are the same for both 2D and 3D:

  1. Impassable hex (first cell of first row used only)
  2. Colored dirt (for instance the red soil in Vietnam)
  3. Beach
  4. Soft Sand
  5. Rough
  6. Hammada
  7. Wadi

Here’s the Desert 2D Normal View file, with white background. With 2D, these tiles are always drawn on top of the underlying hex tile. Hence, for instance with Rough, those rocks appear on top of the open terrain present in the hex.

Click to enlargen the imageHere’s the corresponding Desert 3D Normal View file. With 3D, these tiles are drawn as a whole.

Click to enlargen the image


Again, rows and cells in Vegetation are similarly positioned both with 2D and 3D:

  1. Grain Field (first three cells: Normal, next three cells: Plowed)
  2. Produce Field (first three cells: Normal, next three cells: Plowed)
  3. Vineyard
  4. Scrub
  5. Cactus
  6. Tall Grass
  7. Meadow
  8. Marsh
  9. Wet Paddy
  10. Dry Paddy

Note: Grain and Produce Field apperance (Normal, Plowed, None) are defined with Scenario Editor’s Conditions dialog.

Here’s the 2D Brown (Autumn) Vegetation file. Tiles are drawn on top of the open terrain tile below:

Click to enlargen the image


Here’s the 3D Green (Summer) Vegetation file.

Click to enlargen the image


Finally, here’s the Trees file sets as how they are defined. It’s quite a big one, with row and cell composition between 2D and 3D is the same:

  1. Orchard
  2. Sparse Orchard
  3. Palm Trees
  4. Sparse Palm Trees
  5. Thicket (for instance Nipa palms in Vietnam)
  6. Sparse Thicket
  7. Swamp
  8. Sparse Swamp
  9. Forest
  10. Sparse Forest #1
  11. Sparse Forest #2
  12. Sparse Forest #3
  13. Light Jungle
  14. Sparse Light Jungle #1
  15. Sparse Light Jungle #2
  16. Sparse Light Jungle #3
  17. Dense Jungle
  18. Sparse Dense Jungle #1
  19. Sparse Dense Jungle #2
  20. Sparse Dense Jungle #3

Note: “Sparse” variants are used when say a road or railroad goes through the hex.

Here’s 2D Green Trees file with white background:

Click to enlargen the image

Here’s 3D Barren Trees file. Note that this is from Middle East, therefore the various Jungle related cells were not yet completed at the time of posting this.

Click to enlargen the image

Scenario Editor Conditions

Here’s the Conditions dialog again:

Relevant Conditions for Trees and Vegetation are:

  • Trees: Normal, Brown and Barren available with Middle East, with Snow to be available in other Regions and Biomes.
  • Fields: All conditions available with Mediterranean biome where both Field types are  present. There is no stopping to add them to Desert maps with Map Editor either, but no stock map has them.


That’s it for Terrain, Vegetation and Trees. Any questions, shoot!

CS Graphics Under the Hood #2 – Open Terrain and Ground Conditions

Guide for Modders

Let’s continue from the first post of the series, Biomes and Regions, into our very basic building blocks, the Open Terrain tiles, and how they interact with Ground Conditions, available in Scenario Editor.

Open Terrain

First, a look at the tiles themselves. This time they differ quite significantly between 2D and 3D.

2D Open Terrain files

In 2D the tiles depict the elevations changes with a color scheme from the light colors of the lower elevations to darker colors of the high elevations. That’s at least how the vanilla implementation is, you as the Modder can fill them out as you wish of course!

Click to enlargen the image


The file comes with 50 rows, one each for all the elevation levels available. Notice the color scheme, which gets gradually darker the higher the elevation (row no) is. The first elevations have the highest color gradient, to make it easier to observe the changes from one elevation to another.

Another peculiarity with 2D open terrain files is that we hit the Windows 10 file height limit, and had to divide the 2D Zoom-In files to two pieces, say Normal8d.bmp and NormalHigh8d.bmp.

Normal[moniker].bmp is the file name for normal Ground Conditions, we’ll get to those in a bit.

3D Open Terrain files

With 3D, the file is rather a simple one, as there the map actually builds the elevations visually, with Slopes (, Escarpments, Enbankments, …) to mark an elevation change.

Here’s the graphic file itself:

Click to enlargen the image


Five rows, no color changes per elevation, just the terrain itself.

There we have them, your basic Open Terrain tiles under Normal Ground Conditions. Let us look at Ground Conditions next.

Ground Conditions

Ground Conditions, as well a few other things to be discussed later, are defined per scenario with Scenario Editor, with its Conditions dialog:

There’s six Ground Conditions available as a whole, with Middle East 2.0 regions having Normal, Soft, and Mud conditions available. Frozen, Snow, and Deep Snow will make their appearance with East Front, if not earlier.

Specifically, the Middle East 2.0 Conditions dialog allows the following Ground Conditions:

  • Desert: Normal, Mud
  • Mediterranean: Normal, Soft, Mud

Whether in 2D or 3D, the Open Terrain tiles are named accordingly:

  • Normal[view moniker].bmp
  • Soft[view moniker].bmp
  • Mud[view moniker].bmp

Open Terrain is very dependent on Biomes however, so what Middle East 2.0 ultimately contains is something like this: [Biome][Ground Condition][view moniker].bmp 

  • DesertNormal0d.bmp
  • MediterraneanSoft8d.bmp
  • etc…

That’s the Open terrain covered, any questions let us know.

The next post will cover the topics of Terrain, Vegetation, and Trees. Until then!

CS Graphics Under the Hood #1 – Biomes and Regions

Guide for Modders

One of the fundamental reorganizations done to Middle East 2.0 is the file system covering the Terrain and Vegetation graphics for the game, both with 2D and 3D. Changes include a common naming convention to files, where now say “Trees” file is named as such under both views, whether the boardgame view (2D), or the tabletop miniatures view (3D).

But, more importantly, also the whole manner how files are used was redesigned completely. Mapping the world one hex at a time,  as the slogan goes, there’s now a specific support for the Regions and Biomes of the World.

We’ll also have a look at Structures, containing the various buildings and built-up areas the game maps contain.

Display View Variants

Before going any further, let us establish how the file system for graphics works. All files are located under these folders in game root:

  • graphics
    • map
      • 2D
      • 3D

For each view option, there’s a corresponding graphics tile set made available.

Here are the 2D (Boardgame view) zoom levels with their file name monikers:

  • 2D Zoom-In View: 8d
  • 2D Normal View: 7d
  • 2D Zoom-Out View: 6d
  • 2D Extreme Zoom-Out View: 2d
  • 2D Strategic View: 1d

Here are the 3D (Tabletop miniatures view) zoom levels with their file name monikers:

  • 3D Zoom-In View: 0d
  • 3D Normal View: 3d
  • 3D Zoom-Out View: 4d
  • 3D Extreme Zoom-Out View: 5d


  • Structures0d.bmp: 3D Zoom-In view structure graphics, in \graphics\map\3D folder
  • Structures8d.bmp: 2D Zoom-In view structure graphics, in \graphics\map\2D folder

OK, that done, let us get to Biomes and Regions, next!


“A biome is a community of plants and animals that have common characteristics for the environment they exist in.”, says Wiki:

Campaign Series | Scenario design

Click to enlargen the image

Biomes available in Campaign Series, for an individual graphical representation each, are, with the filename prefix first, and explanation in parenthesis next:

  • Alpine
  • Desert
  • Mediterranean
  • SubTropForest (Subtropical forest)
  • Taiga
  • TempForest (Temperate forest)
  • TempGrassland (Temperate grassland)
  • TropRainForest (Tropical rainforest)
  • Tundra

With Middle East 2.0, the two Biomes available are Desert and Mediterranean.


But what about the buildings, at least? They differ from Biome to another as cultures are different. So imagine, for West Front, you’d want to depict the whole Mediterranean theatre of operations, and would like to have North African, Middle East and Italian peninsula with their individual look and feel?

The solution is to have Regional versions of each biome (Mediterranean, in this case). Regions supported at the moment are, again with filename prefix first:

  • Afr (Africa)
  • EAsia (East Asia)
  • EEur (Eastern Europe)
  • LatAm (Latin America)
  • NAfr (North Africa)
  • NEur (Northern Europe)
  • Pac (Pacific)
  • SAsia (South Asia)
  • SEAsia (Southeast Asia)
  • SEur (Southern Europe)
  • WAsia (West Asia)
  • WEur (Western Europe)

Region + Biome / Biome / Region / Default – In this order

So how to put them together, then? Here’s how the code covers them:

  • First, look for a completely specified filename, with both Region+Biome prefixes (in that order). If it exists, go with it. Else
  • Next, look for a filename with a Biome prefix only. If it exists, go with it. Else
  • Next, look for a filename with a Region prefix only. If it exists, go with it. Else
  • Go with a default (prefix-less) filename.

For example,

  • prefer NAfrMediterraneanStructures0d.bmp
  • over MediterraneanStructures0d.bmp
  • over NAfrStructures0d.bmp
  • over (last resort and always available) Structures0d.bmp

This can seem quite complex at first, so let us look at another sample.

Structure tiles, including individual buildings, villages, suburbs, and, cities are located in a fileset called Structures[view moniker].bmp. For instance, the 3D Zoom-in view file is called:

  • Structures0d.bmp (this is also what is called a default file, one  that always exists)

Mediterranean structures, if specifically made available (and they are), would be named as:

  • MediterraneanStructures0d.bmp

Italian buildings vs North African buildings, then, if made available (and currently they aren’t), here’s what they’d be called in turn:

  • SEurMediterraneanStructures0d.bmp
  • NAfrMediterraneanStructures0d.bmp

Also, covering Italy for instance, if not buildings at least the vegetation between Southern and Northern (alpine) Italy varies. With Trees as an example, we’d have these two sets perhaps:

  • SEurAlpineTrees0d.bmp
  • SEurMediterraneanTrees0d.bmp

Note: lots of possibilities for individual graphics, almost too much even. The idea is to Keep It Simple however, therefore each individual files would be made available only when so preferred – by us as part of the stock game, or by any modder, at any time!

Having gotten this far, let us tackle our first graphics tiles set in the opening post. And since I’ve used Structures as an example, let us go with them.


Here’s how the files look, with background changed to white, 2D file on left, and 3D file on right:

Campaign Series Middle East

Click to enlargen the image

Here’s the individual rows explained:

  1. City #1
  2. City #2
  3. Suburb #1
  4. Suburb #2
  5. Village #1
  6. Village #2
  7. Sparse Village #1 (used with roads going through them for instance)
  8. Sparse Village #2
  9. Industrial Buildings #1
  10. Industrial Buildings #2
  11. Special Buildings #1
  12. Special Buildings #2
  13. Airfield #1
  14. Airfield #2
  15. Rubble #1
  16. Rubble #2 (used in 3D only)
  17. Rubble #3 (used in 3D only)

You’ll note there’s variations for certain tiles. Some of them are altered automatically, like City, Suburb and Village tiles, while others you’ll need to toggle with Map Editor, like Industrial and Special buildings or Airfield tiles.


In this post I’ve explained how the Regions and Biomes can be used to provide individual detail to a map, depending on its location, and also, what Structures file contains.

We’ve also covered how to interpret the file names for each zoom level, and where the 2D and 3D map graphics files are located.

In next post, I’ll explain the Terrain and Vegetation files in the game. Until then!