The editor is one window with a fixed left rail and a viewport that fills everything else. The rail never changes position, so the minimap is always in the same corner and the palette is always in the same place, whichever module you are in.
The rail, top to bottom
Minimap. Terrain colours, with cliff faces and ramps drawn over the top. Ramps are gold, cliff edges are dark. A flat map draws no overlay at all, so an empty minimap overlay means the map has no elevation rather than that the overlay is broken. Problem markers pulse here when the Validation module has found something located.
Brush operations and options. Size, shape and falloff. These are shared by every painting tool: terrain, height, ramps and the fill tools all read the same brush, so switching tools does not reset your radius.
Palette. Search, category/faction filters and paged asset cards. Terrain choices show texture swatches. Browse & preview opens a larger catalogue with recent choices, prop thumbnails and live 3D previews. Units and buildings use their game models; imported GLBs are available through the Data module. The search box swallows keystrokes while focused, so the layer
hotkeys below are suppressed while you are typing in it, and pressing Escape
returns focus to the viewport.
Outliner. Every placed object in the map, grouped by kind. It doubles as a performance readout: a map with four thousand entities in the outliner will behave like a map with four thousand entities, and the number is right there before you find out the hard way.
Modules
| Key | Module | What it edits |
|---|---|---|
F5 | Terrain | Ground, water, resources, elevation, ramps |
F6 | Triggers | Events, conditions, actions, variables, regions |
F7 | Data | Per-map changes to units, buildings, items, spells, research upgrades and heroes |
F8 | Players | Per-seat race, controller, team, resources, AI |
F9 | Cutscene | Camera timelines and dialogue |
F10 | Validation | Every problem in the map, with jump-to |
F11 | Scripts | JavaScript/TypeScript source, syntax checks, public API reference and custom-game timing/controller data |
Ctrl+F9 | Test Map | Launches the map in the real engine |
Modules share one selection and one undo history. Selecting a building in the Terrain module and switching to Triggers leaves it selected, which is how you attach a trigger to something you can see.
Layers and hotkeys
When canvas-layer shortcuts are enabled, single letters in the Terrain module switch what the mouse acts on:
| Key | Layer |
|---|---|
T | Terrain |
U | Units |
D | Props |
P | Points |
R | Regions |
C | Cameras |
H | Pathing |
These are suppressed while a text field has focus, so typing "dwarf" into the palette search does not switch you to the prop layer four times.
While placing an entity, keys 1 to 8 choose the displayed player slots P1–P8; key 0 chooses hostile creeps. The stored player ids are zero-based, so the UI’s P1 label means stored id 0. Use declared ids in scripts. This is the
fastest way to lay out an eight-player map: pick the unit once, then hold a
number and click. Space toggles between placing and selecting; Escape
leaves the current tool, then clears the selection.
Ctrl and drag, starting outside an object, rotates the facing of whatever is
selected. Building footprints do not rotate, because the engine has no
representation for a rotated footprint; the rotation affects unit facing and
the arrangement of a multi-object selection instead. The editor says so in the
status bar rather than silently doing nothing.
Viewport
The editor uses one live 3D viewport for terrain, water, sky, trees and placed entities. Elevation appears as actual geometry, so you can judge how cliffs, ramps and buildings will read in the world while you edit.
The 3D viewport starts on a deliberately cheap graphics profile: no distant scenery ring, no ink outlines, no shadows, no weather, no grass scatter. The scenery ring alone was measured at 38% of the triangles in a scene, and the editor spends its whole life inside the map rather than looking at the horizon. A Graphics popover turns any of it back on when you want to check how the map will actually look.
The status bar
The bottom strip reads: the tile under the cursor and its elevation level, whether that tile is a ramp, its terrain type, the entity count, and the number of outstanding problems. The problem count is a link. If it is not zero, the map will not publish, and clicking it takes you to the list.
Undo
One history for the whole editor, covering terrain, height, entity properties, transforms and player settings. Height edits record the changed tiles and their old and new values rather than a copy of the map, so undoing a large brush stroke is a small operation rather than a full-map restore.