An interactive web map that stitches all of the AIMNAS mod's Arulco tactical maps into one zoomable strategic world map, rendered from the game's real isometric tile graphics (not the low-res radar minimaps). AIMNAS rebuilds Arulco as 360×360 "bigmaps" (~5× the standard map size) — 211 surface + 40 underground sectors — on the familiar 16×16 sector grid (A–P × 1–16).
Open index.html in a browser, or serve the folder (python3 -m http.server) and open it.
- Drag to pan, scroll to zoom, click a sector for its info. High-detail tiles stream in as you zoom.
- Level switcher — Surface / Basement 1–3.
- Roofs toggle — off reveals building interiors (surface).
- Bigmaps toggle — tints each sector green (upgraded 360² bigmap) or orange (standard 160² map), so you can see the mod's coverage at a glance.
- Layers panel — towns, mines, SAM sites, enemy garrisons, patrol routes, quests & POIs, NPCs & dealers, loot, creature zones, roads & rivers, terrain, and a difficulty heatmap.
- Touch: one-finger pan, pinch zoom, tap select. Keys: WASD/arrows pan,
+/−zoom,Ffit,Escdeselect. - The URL captures the view —
#@<col>,<row>,<zoom>and#<SECTOR>are shareable links;?level=b1,?roofs=0, and per-layer?mine=0work too.
The game data is not included — point the build at a JA2 1.13 AIMNAS install (paths in
build/config.js), then:
node build/build.js --webp --detail 1.0 --webp-quality 70Requirements: Node.js (zero npm dependencies) and, for WebP output, the cwebp
tool (brew install webp). The build decodes the game data and writes dist/ — the
per-sector tiles, level overviews, and manifest.json / data.js. Then open index.html
or serve the folder.
Handy flags: --one <SECTOR> renders a single sector for debugging, --webp-quality <n>
trades size for quality, --detail <0..1> scales tile resolution. Drop --webp for an
indexed-PNG fallback (no cwebp needed).
Everything is decoded from the game's own files, from scratch:
- SLF archives (tilesets / fallback maps) and loose
.datmaps - STI / ETRLE images (tile graphics)
.dattactical maps (360×360 bigmaps, with the 160² fallback maps where AIMNAS has no bigmap), with per-map loot decoded from each map- JA2SET tileset tables (binary
JA2SET.DAT) — the tile → graphic mapping - TableData / scripts — sector names, towns, mines, garrisons, NPCs, etc. (the overlays)
Tiles are sliced into a small multi-resolution pyramid (7200×3600 down to 1800×900), so the viewer only ever loads the on-screen tiles — smooth panning even at native resolution.
