The Map of Middle-earth
The full strategic map War in Middle Earth is played on: a 160×100
tile grid (2560×1600 pixels at the game’s native 16px tile size),
decoded from the MMAP/CHAR resources in AMaps.res and pre-composited
into the image below by tools/wime/render-map.ts. See
docs/wime/amiga/mmap-format.md in the main repo (not part of this site)
for the full byte-level format.
69 named locations. Hover or focus a marker for its name; search to highlight matches.
Want to see one of these locations up close, composited the same way the game itself renders a zoomed-in encounter? The Scene Viewer Gallery shows six named locations (Hobbiton, Weathertop, Rivendell, Isengard, Minas Tirith, and Barad-dûr) as full landscape-plus-object composites.
How terrain is stored
Section titled “How terrain is stored”Every one of the 16,160 tiles on the map is a single byte: a direct index
into a 320-tile terrain set (CHAR, 16×16px, 4 bitplanes), not a
two-part “terrain type + variant” code. The low nibble selects which of
13 movement-speed tables governs how fast each unit class crosses that
tile; the high nibble has no gameplay effect the engine reads anywhere
(confirmed by an exhaustive disassembly search) and most likely reflects
how the tile artist grouped visually similar tiles next to each other,
not a deliberate data field.
The scene selector — the game’s own terrain classification
Section titled “The scene selector — the game’s own terrain classification”Separately from the low/high nibble split, a lookup table
(DATA+0x258, indexed by the full terrain byte) maps every tile to one of
18 scene selectors — this is the classification the game itself
uses to decide which close-up landscape background and palette to show
when you zoom into a tile. Tiles sharing a selector look different up
close (variety within “Plains”, for instance) but read the same at the
strategic-map level.
| Selector | Terrain |
|---|---|
| 0 | Forest |
| 1 | Hills |
| 2 | Mountains |
| 3 | Plains |
| 4 | Barrens |
| 5 | Water |
| 6 | Marsh |
| 7 | Forest / Barrens |
| 8 | Mountains / Forest |
| 9 | Plains / Forest |
| 10 | Plains / Barrens |
| 11 | Forest / Mountain |
| 12 | Plains / Mountains |
| 13 | Plains / Barrens (variant) |
| 14 | Plains / Marsh |
| 15 | Citadel |
| 16 | Volcano |
| 17 | Water / Plains |
Key statistics
Section titled “Key statistics”- 16,160 total tiles (160×101, one row of which is a 96-byte trailer not part of the visible grid)
- ~22% water — the western ocean, coastal bays, and the Sea of Rhûn
- ~41% plains — the dominant interior terrain
- ~8% roads — an extensive road network threading the whole map
- 255 of 256 possible byte values used — almost the full terrain byte range appears somewhere on the map
Full derivation, the exact low/high-nibble tables, and the disassembly
evidence behind all of the above live in docs/wime/amiga/mmap-format.md
in the main repo (not part of this site).

