Joy Of Hex Editor:Toolbar:Edit Terrain Image

Toolbar Menu: Edit Terrain Image


We use the Edit Terrain Image toolbar to edit the image that makes up the map that makes up the geography on which the battle scenario is held. A quick little picture will help to remind us what this toolbar looks like:


Once you have selected the hex(es) that you wish to edit the terrain of (by clicking or shift-clicking until the hexes you want selected have a green highlight around them) you will want to change the terrain. You do this by chosing one of the terrain graphics that are to the left of the arrowpad.

There are two rows: the top row is one that I refer to as the "terrain details" while the lower row is something that I call the "terrain type". To understand the difference between these two rows, you need to keep in mind how the map graphic is made up.

The order in which a map is made up goes something like: single terrain type image first, following by whatever terrain details are required. This means that the first image that is placed on the map is a large terrain image (for example an image of grassy fields, forests, cities or swamps), of which there can be only one (in my game abstraction it doesn't make sense for a hex to be both a forest and a lake). After this first image is laid down, all the little details that typically don't cover the entire hex are added, like roads, rivers, and hillsides.

Of these two rows, they are both made up of similar parts. To the left are some arrow buttons which you can use to change the terrain type or detail. It should be noted that as different climate models can have different terrains that make them up, then you shall find that the terrain types and details that you can chose from will differ from climate to climate.

The other component of each row are the six possible choices that you can chose from. Notice how each choice acts like a standard button.

In this image I have moved the cursor over the down arrow of the lower terrain image row. Notice how in the top row there are all the possible hillside images, while in the lower row we can see all the possible clear grassy field images that are available to us. My intention is to click in this down arrow to change the terrain type of the moment.
This image follows on from the image above. After clicking and releasing on the down arrow of the lower row the possible terrain type choices have changed from clear fields to light forests. My next intention is to see what the next terrain type there is that is available to work with, so I'll click in the down arrow again.
This image follows directly on from the the image above. I've clicked in the lower arrow to bring up the next terrain type which happens to be heavy forest. If I continue to keep clicking on the lower arrow I will eventually go through all the possible choices of terrain types that are open to me for the climate that I have chosen. The terrain type list is cyclic, so on reaching the end of the list if I continue clicking I shall loop back to the start - that is I shall return to grassy fields.
Just as using the down arrow makes you go one way through the terrain type list, clicking on the up arrow will result in one going backwards through the terrain types list. Again the list is cyclic, so if you try to click past the begining you will find yourself at the end of the list.
What has been said about the terrain types row hold equally true for the terrain details row. In this image I have clicked on the down arrow of the upper row to bring up the terrain detail after hillsides which in this example happens to be cliff-faces.

Because of how the image is made up there is a slight difference in what will happen when you click in either the terrain types or terrain details row.

Since there can only be one terrain type at a time, if you change the terrain type for some selected hex then the old value is thrown away and is completely replaced by the new terrain type that you have selected. So if you have a swamp in a hex that you have selected, then chosing to replace it with a city will do so, utterly. Which is about all there is for what you can do with this row.

In this image I have moved the cursor over the fourth city choice. Clicking with my mouse will result in those hexes on my map, which are selected with the green highlight, being changed to the fourth city terrain type.

Clicking in the terrain details row is a little more complicated. Since you can have several details overlaping then simply deleting your old detail values and replacing them with your new choice is simply not good enough.

The first difference is, that for most cases, whatever new details you chose then these details are merely added to what has come before. So if you have a river segment along the side of a selected hex and you then choose a road segment, then both of these details shall appear on the selected hex.

But this isn't always the case, for some details simply shouldn't be overlaped. Details that are mutually exclusive are: [large river, medium river, small river, hillside, cliff face, dried river] and [dirt road, hardened surface road, railroad]. For example, if your selected hex has a medium river at its top left edge, and you chose a hillside for the same side of the hex, then the information about the river is deleted and replaced by the information about the hillside choice.

There are some cases that would seem to require mutual exclusiveness but which the editor doesn't seem to be bothered with checking for. The most glaring are the lake overlap details. These details are purely cosmetic and the game completely ignores them when it comes to game play. They are only included to stop the borders of large bodies of water looking ugly. These details can pretty much overlap anything, so it is a good idea to do these cosmetic changes towards the end of a scenarios development so they don't get in the way of what you're doing.

The reason why I haven't included an exhaustive means whereby the editor looks for invalid map construction is that there is an incredible amount that should be checked for, and the editor is already complex enough fo me to feel uncomfortable about adding complexity to it. This raises an interesting question: do people feel annoyed that the editor doesn't do any careful checking, or is the editor okay as it is? Would people like to see a form of "compiler" that seeks out bug like I did with Bushfire Editor 1.x.x? Any feedback on this would be helpful and interesting.

Another difference with the terrain details row is that if you select a hex on the map that has a particular detail in it and you click on that detail in the toolbar, then that detail shall be deleted from the map. This is the means that you can undo details that you have already placed on the map: you shift-click your hex-map to select the hexes with the offending details, and you then click in the toolbar on the offending detail and the detail is removed from you map. Keep in mind that if you select multiple hexes on your map, and some of these hexes don't contain the detail that you're trying to delete, then the detail that you're trying to delete will appear in these hexes.

In this image I have moved the cursor over the third dried river choice. Clicking with my mouse will result in those hexes on my map, which are selected with the green highlight, having this detail added to the right border of their hex. If I were to click a second time, all the dried river details that I had placed on the map would be deleted.

Now returning to the leftmost side of the toolbar we have three buttons are similar in aim. These three buttons are to help the scenario builder randomise the hexes of the map that he is working on. Whenever a randomisation occurs, it never changes the terrain type (for example, changes from forest never happen) only keeping the changes to a random selection within the particular terrain type.

The first button is a good button to use when the map is near completion. Clicking it will result in every terrain hex being randomly changed with one of the six possible variations of that hex's particular type. Notice how if you had a swamp hex at a particular location it will randomly change to one of the six possible swamp hexes, and not to any other hex type.

In the following image, the left is the original terrain, while on the right is the result of clicking on the Random All button. Notice how many of the terrain hexes have changed, but some haven't - this is because the randomisor randomly selects one of the six possible options available to it, which means that it could easily re-choose a particular variant that you had chosen before.

The second button will go through the entire hex map and only make changes to whichever terrain you have selected. To select a terrain type you go into the toolbar and use the up and down arrows to page through all the different terrain types that are available to you until you come across the terrain type that you want.

In the following image, I have focused on the part of the toolbar where I can select a particular terrain type to transfer onto the map. In this image I have selected a factory terrain type:

The following pair of images contrast what can happen. On the left is the original terrain image, on the right I have clicked the Random Type button. Notice how only the factory terrain hexes have changed:

The third button is for more discerning terrain randomisations. Instead of doing large sweeps of the map image, this button only makes random changes to whichever hexes you have selected with placing a green highlight.

In the following image, the left side is the original terrain, while on the right is the result of clicking on the Random Selected button. Notice how only those hexes that are highlighted with green are changed.


After you have been working on a hex map for a while you might discover that you either need there to be more or less of the map appearing. The editor allows for this short-fall/gain by allowing the scenario maker to add or delete columns or rows from the hex map.

To make a change to a hex map, you need to click on the Resize Map... button that is pictured to the left. Clicking this button will bring up the following dialog:

Ignore the image in the center, is is merely a guide to remind you where your changes will occur - namely, changes to the upper data field will change the number of rows along the top of the map, while changes to the left data field will adjust the number of columns along the left side of the hex map, and so on for the other edges.

If you place a positive number (eg, 1, 2, 3, 4,...) into a data field, then the corresponding side will have that number of rows or columns added to it. If you place a negative number (eg, -1, -2, -3, -4,...) into a data field, then the corresponding side will have that number of rows or columns deleted from it. An entry of zero will have no effect.

Notice something important about the geometry of the hexes. Because of the hex arrangement you can add or subtract any number to the number of columns (which you change by changing the left and right data fields), but you can only add or subtract a number that is divisible by 2 to the number of rows (which you change by changing the top and bottom data fields). Thus you can add or subtract numbers like 4, 3, 2, 1 from the width of a hex map, but you can only add or subtract numbers like 6, 4, 2 from the height of a hex map.

Try and keep in mind that there is a minimum size to a hex map, below which the editor won't let you go. This is about 5 hexes to the side.


When I first designed the Joy Of Hex project, I had a game that simulated World War 2, but in the end it might be possible to simulate battle from other times. Just so that the player might know the historical context in which he is playing, I have provided some basic pieces of information that can be edited.

To change these basic historic details, you first need to click on the Map Info... button that is pictured to the left. Clicking on this button will bring up the following dialog:

There are a few bits and pieces for you to fill in, the first being the date when the game is historically meant to start. You have some popup menus for the day number and the month, and there is a data field that only accepts numbers (which can be both positive and negative) for the year. Notice that you can do strange things like set the date to 31 Febuary - so in the game, when it discovers a crazy date like this it will round to the first of the next month (thus 31 Febuary becomes 1 March), which sounds crazy but it means that we all know what is going to happen.

Another data field is the game duration. This is not a count of the number of turns but the number of days, as in a 24 hour period. Since there are 6 turns per day, this means that the number number of turns that a game lasts is always divisible by 6 (that is each turn last 4 hours). Don't make the mistake of confusing the number of days with the number of turns, as it would be embarassing for people to play a game that you had intended to last 12 turns (or 2 days) and the game actually took 72 turns (or 12 days).

My object with writing the Joy Of Hex game was that I wanted to simulate various battle during World War 2. This is why for the names of the two sides you will see "Aliies" and "Axis" as the default names. But don't feel confined by my defaults, feel free to rename your armies as you wish - just keep in mind that these names will appear displayed by the game at various points and names that are too long will smear all over the place.

Finally, I left the choice open to what phase the moon is at the start of the game. You have the following choices of the moon's starting phase:

Full Moon
Waning Gibbous
Waning Half
Waning Crescent
New Moon
Waxing Crescent
Waxing Half
Waxing Gibbous

Joy Of Hex uses a very simple moon phase model. Basically the games gives an even amount of time to each phase in turn until 28 days pass, and then it loops back to the phase on which it started.


Sometimes, when making a hex map, you might want to place down the names of various places on the map - like the names of cities or rivers. To start this process you must first select a hex in the familar manner (if you select more than one hex the text will appear in all of the hexes that you have selected).
Once you have selected your hex you then click the Map Text button to bring up the following dialog:

This is a very simple dialog that allows you to type in whatever text you want - but as a matter of taste you might want to limit the number of characters that you use down to a dozen or so. If you have already place some text on the map and you want to remove it, just select the hex with the text (remembering how the text is placed on the map) and clicking the Clear Hexes in the above dialog.

In the image to the left, we can see what happens when we click OK in the above dialog. Notice how the text fits snuggly into the selected hex - keep this in mind when you're trying to locate text on the map.

There are no ways to select a different colour for the text - red on white is the only option that is available.


There are some recommended guidelines that go towards making a consistent scenario appearance, the editor doesn't check for them but you probally should:

  • Hillsides/Cliff-Faces/Dried-Rivers shouldn't appear on a lake hex.

  • Large-Rivers/Medium-Rivers/Small-Rivers shouldn't appear on a lake hex.

  • Dirt-Roads/Surfaced-Roads/Railroads shouldn't appear on a lake hex.

  • Although a ferry is supposed to partially lie on a non-lake hex, it shouldn't cross all the way across a non-lake hex.

  • Rivers (all sizes and included dried) shouldn't be incomplete over a hex border. A river image along a hex edge should have both halves side to side.

  • A cliff-face shouldn't be placed back to back with another cliff-face. (On the other hand, when a hillside is place back-to-back with another hillside then this is allowed as this is how one makes a dyke.)


  • The Single Brain Cell Web Site