Might & Magic: Heroes VII Editor – Part 2
In the first part of this series we familiarized ourselves with the editor and took a closer look at the different tools. In today’s article we’ll build our first map from the start. If you prefer learning the steps with an example, you can download the finished map below.
(4,7 MB .zip file)
|Number of players:|
|Save location: \My Documents\My Games\Might & Magic Heroes VII\MMH7Game\EditorWorkspace|
As you can see from the minimap, in the north we’ll create mountains and give the peaks some snow. A river will flow through the valley into the southern sea. The lower plains will feature a dirty swamp and a gloomy forest. The map will also have an underground maze for the heroes to explore.
Remember that it is important to save often because the editor can be quite vulnerable to crashes.
So start up the editor and we can begin!
Creating the map and setting Properties
Click the new map icon and select New Adventure Map. In the Map Name field type in First, for the Map Size select Small (Gridsize 75×75) and Map Type Scenario. The editor will generate a blank map. Now click the Map Properties icon and fill in the information as described below.
On the General tab, check Underground. If you uncheck this field in a map with an underground level, it is deleted permanently.
Map Name is the name you gave the map at the start. Here you can change how it will show up in the game.
Map Description is a brief description of the map. You can use this field to set up the story of the map or give information to the players.
Map Author should be your name or nickname, of course for everyone to know who created the map.
Hero Max Level sets the maximum level for heroes. Since patch 1.7 the maximum hero level is 999.
|Players: Blue player|
On the Players tab you can set up the individual players. In a scenario map the first player is always the one you control and can’t be set as an AI player.
You can set a custom Name for the player and set the default Faction and Team.
In the Control field, “User Defined” means the user can choose whether the player is controlled by a human or AI.
You can also set custom starting resources for each player by unchecking the “Use Default” option.
For our example map, give the blue player a custom name, set Haven as the faction and leave the Team to default Team 1. To make our map a bit more interesting, set all blue player’s Start Resources to zero.
|Players: Red player|
As we are creating a 2-player map (1 human and 1 AI), the Red player will be the AI.
Give the Red player a custom Name, select Necropolis as the Faction and leave the team selection to Team 2.
Change Control option to AI and use the Standard setting. The AI behavior can be customized, but in this example we’ll keep the selection at standard.
Active at start can be unchecked if the AI player joins the game later via scripts. Leave this option checked.
Thieves Guild determines whether the AI player is hidden in other players’ thieves guilds until it is discovered in the game. Leave this option unchecked.
Leave Start Resources to default for the Red player.
|On the Weekly Events tab you can determine which weekly bonuses appear in the game. Since Week of Storm is quite powerful (it prevents all ranged attacks) we are going to disable it by clicking on it. A red cross appears in front of the week.|
|Spells tab is basically the same as the Weekly Events tab, you can choose which spells appear in the game. This affects both magic guilds and neutral buildings that grant random spells. In this example we are disabling two powerful spells, Implosion and Tsunami.|
We can skip the Heroes and Items tabs since we’re not going to disable any heroes or items. Heroes can be disabled individually from different players, the setting prevents them from appearing in the Hall of Heroes. Disabling items affects random pickups, the black market and the merchants on the adventure map.
|Win/Loss conditions is where you can customize the conditions of victory and defeat. In this example we are keeping the settings at default. Custom conditions can be created with scripts.|
After saving the settings you may receive an error message saying both players are missing a starting hero, town and a spawn place. We can ignore these messages for now, hide them by clicking the minus sign on the error window. Remember to save the map .
Now it is time to start creating the landscape. We begin by shaping the mountains with the Height Sculpting tools . From the Tools section, select Noise which creates random and more realistic mountains. Set the Brush Size to around 1500 and select Addition as the noise brush behavior. Addition will raise the mountain, Substraction lowers it. Zoom out a bit (with the mouse wheel) and drag your cursor on the map while holding the left mouse button. You created your first mountain range! 1
You notice the tool can feel quite uncontrollable and you may create some unnatural mountainscapes. Undo your work by clicking the Undo icon and set the Tool Strength to a lower value, such as 50%. Now play around with this tool and try to create a mountain range that looks something like one at 2
Remember that you can lower the mountains by selecting Subtraction from the Noise section. Use the Undo command to step back, or if you feel you’ve destroyed the environment beyond repairing, you can still start over the whole map since we’re not that far in the creation process. There’s also the Flatten tool which can be used to level the ground back to normal.
You can fine-tune the mountains with the different Height Sculpting tools:
Brush affects the land levels.
Brush affects the liquid levels.
Paint is the basic brush to change the height of the landscape within the range of the brush.
Smooth can be used to level height differences and soften out sharp edges.
Flatten the landscape to the height below the mouse cursor.
Noise changes the landscape height through applying a noise filter. The filter is always at the same position and changes the same spots as long as the Noise Scale is unchanged.
Brush fallout sets the thickness of the brush border to start fading out the height changes.
Use Slope Flatten can be used to create diagonal surfaces along the slope below the mouse cursor.
Now that the mountains are up, let’s create some water. From Height Sculpting, select the Noise tool again. From the Noise options select Substraction which lowers the surface. On the bottom of the map, drag from left to right holding the left mouse button. Now you have a pool of water! 1
However, we are not happy with the steep coastline so we’ll use the Smooth tool to create a nice low beach around the water. 2
Next we’ll create a river. Select the Paint brush and reduce the size to 400. Press and hold the shift button while drawing the river on the map. To make the river deeper, draw again over the original river. Again you can Smooth the riverbed to make it look nicer. 3
Notice in the screenshot how there are some blue dots along the shoreline. They represent tiles where the hero can move without a boat. You may need to save and reload the map before the dots show up.
Now we can create a ford for the heroes to cross the river without the need of a bridge. Find a good spot and Smooth the left riverbank to create a passable surface 4. Do the same on the right side and use Paint to raise the ground gently if the river is too deep. Again the blue spots should appear on the ground where the hero can cross the river.
To make sure our ford is crossable, let’s test it ourselves. Switch to the Heroes panel on the left. Drag the Player Start icon (which represents a random hero) to the left side of the river. This means the hero will start the game at this spot. Select “Player 2” from the dropdown under the hero portraits and drag the random red hero to the right side of the river. 5
Click on the Test Map icon and a window with the map opens up. Here you can play your map and see if the hero can move to the other side of the river. If the path is blocked, return to the editor and raise the ground below the river. On the left corner there is a red text telling you to rebuild lighting – we can ignore that for now. You can close the test window from the X in the top right corner. 6
When you are happy with how the water and mountains are shaping up, save your map.
Now that the landscape has been created, let’s apply some textures. Open the Terrain Painting panel and scroll down the texture list until you find a Snowy Dirt texture. This is will give the mountaintops a nice base for the snow effect. 1
The brush options are quite similar to what they were in the Height Sculpting panel. Change the brush size to 800 and Paint the mountaintops with the snowy texture. You can adjust the texture fading strength with the Brush Falloff option and the overall brush intensity with Tool Strength. You can also switch off the grid and unlock the camera movement (View -> uncheck “Use In-game Camera Controls”) to get a better view at the surroundings. 2
Once you have painted the tops with dirty snow, select a clean Snow texture. Reduce the brush size to 400 and swipe just the peaks of the mountains with the new texture. Now may also be a good time to save your progress again. 3
To finish off the mountain area, paint the rest of the slopes with Rocky Cliff and apply Rocky Grass around the mountains. Since the Paint Target option is set to “Surface” you can paint easily around the river too. 4
On the shoreline we can add Beach Sand or create a marshland with Swamp Mud. In this example we are also going to use Fallen Leaves and Ground Vegetation to underlay our forest area. 5
Now we switch the editor view beneath the surface by selecting the Underground icon .
First create a simple underground maze with the Height Sculpting tools . Set the Paint brush size to 800 and shape the terrain to your liking. 1
Time to add some boiling hot lava! With the Paint tool, simply hold down shift and drag the lava area to the north of the underground level. In underground lava behaves basically the same as water on the surface, except that heroes can’t move on lava. Again use the Smooth tool to round off the edges of the lava pit. You can also use the Liquid Level icon to have the Paint tool affect only to the lava area. 2
In our map we’ll add another lava area to the southwest corner of the underground level. By selecting the Terrain Painting panel and Liquid Level icon you can transform the lava area to a calm water area. Fill the second lava pit completely with a water texture. 3
You can test the underground by adding starting heroes to the level and selecting Test Map icon . At this point the underground looks quite boring and grey, so let’s add some textures.
We’ll apply Volcanic Ground and Rocky Cliff to make the level look a bit more interesting. Notice that any area not covered in the grid does not appear in the game, so there’s no point in editing much the outer areas.
Create a road for the hero using the Tile Road texture. You may receive an error message telling “The dynamic object ‘H7PlayerStart’ isn’t on a valid tile”. As you notice the tile beneath the hero is marked red. This means the hero can’t be placed on the current tile. The error can happen even with a perfectly passable terrain, so to get rid of the error message you may move the hero’s starting point or repaint the tile with some different texture. 4
The texture panel also includes four Unused black textures which can be used like any other terrains. Let’s create an area with the black texture, we’ll be using it later. 5 Test the map again and if you’re happy with the underground, we are ready to return to the surface level.
Now it’s time to plant some trees on our plain surface ground. Open the Foliage panel . By default our foliage brush is empty so nothing will appear on the map if you try to paint something on the ground. Select a tree from the list (here we use “Pine 03”) and drag it downwards to the area in the panel named Meshes 1. You can also click a tree and press “Add Selected Foliage to Brush” to insert it into the brush.
Now that you have a tree inserted in the brush, you can paint the ground with a pine forest. If you want to insert a single tree to the map, you can simply drag and drop a tree from the list to the map. But now use the Undo action to remove any trees you planted.
You can add different kinds of trees into the same brush, but to make the outcome more natural, the brush density levels need some adjustment. Once you have inserted several trees into the brush, reduce Paint Density level down to 1%. Now the map doesn’t fill completely with trees when you’re painting it 2. You can diversify the brush even further by setting the density and scale individually for each object. Remember that heroes can’t pass a forest that’s too dense.
What if you want to remove a tree from the brush? If you click on an X in the Meshes area, you’ll get a message box confirming if you want to remove all the instances of the chosen tree from the map. So clicking the X removes all the specific trees from the map but not from the brush. 3
To understand how the object brush works, take a look at the next image 4. The trees that have a blue background in the Meshes area are active objects in the brush. You can activate/deactivate them by clicking. If none are selected, the brush won’t paint anything on the map. With the selection you can also control what objects you want to be erased from the map (erase by holding shift while painting the map).
We’ll enliven our map by adding some different trees and weeds on the shore. 5
Now find the spot on the river where we created a ford for the heroes to pass. Plant some Water Lilies in the water. By default the objects are always facing a preset direction, so they may not always look fitting in the environment. You can’t transform objects while in the Foliage panel, so open another panel such as the Heroes panel. Select the Rotate tool and click on the lilies. You’ll see three slices around the lilies: green, blue and red (one for each axis). Grab the blue section and rotate the water lilies to match the surroundings better. 6 With the Rotate tool you can spin any object that hasn’t been placed with a brush. In addition to Rotate, you can also use Translate and Scale to modify existing objects.
Now we have created a basic landscape with snowy mountains, an underground maze with lava pits, and planted some vegetation to enrich the surface. On the next article we’ll be adding objects, buildings and portals which will later be used in scripted events. Feel free to ask questions or post comments below, we’re happy to help with any problem you may have with the editor!