The Maps of Test Drive III, Finally Extracted

A developer known as s-macke has reverse-engineered and extracted the world maps from the 1990 DOS game Test Drive III: The Passion. The project, hosted on GitHub, took five years of on-and-off work, with AI assistance in the final stages. The result is a browser-based 3D viewer, exported OBJ files, and a complete set of file format specifications.

Technical Breakdown

The game's 3D format stores each tile or object as a small mesh. Three parallel arrays of 16-bit signed X, Y, and Z vertex coordinates define vertices, followed by 8-byte polygon records containing type, vertex indices, and palette color. A short 4- or 8-byte header precedes each mesh.

Maps are 32x16 grids. Each cell is 2 bytes: a tile ID selecting a mesh, plus packed rotation and height bits. This compact format allowed the game to run on early 90s hardware.

The Project Structure

The repository is organized into three main areas:

Prerequisites include Node.js 20.19+ (required by Vite 7). Installation is straightforward:

npm install
npm run dev

This opens the viewer at http://localhost:5173.

What You Can Do

CLI tools are also available for inspecting game data:

npm run lstview -- public/base/SCENE01.LST
npm run imgview -- public/base/DATAB.DAT 0x151 12083 320

File Format Documentation

The spec/ directory contains reverse-engineered documentation for multiple file formats:

Why This Matters for Developers

This project is a masterclass in reverse-engineering legacy game formats. It demonstrates how to decode proprietary binary formats, handle VGA palettes, and reconstruct 3D geometry from raw vertex data. The documented specs serve as a template for anyone tackling similar retro-engineering tasks.

For game preservationists, this is a goldmine. The extracted data can be imported into modern engines or used for mods. The browser viewer alone is a neat way to explore a piece of gaming history without needing DOSBox.

The AI Angle

The developer notes that AI helped in the final stages. While not specified, AI likely assisted in pattern recognition or code generation for the extraction scripts. This showcases how modern tools can accelerate retro-engineering projects that would otherwise take even longer.

Getting Started

If you want to explore the maps yourself:

  1. Clone the repo: git clone https://github.com/s-macke/Test-Drive-3-Maps.git
  2. Install Node.js 20.19+
  3. Run npm install
  4. Run npm run dev and open http://localhost:5173

Or, if you prefer offline assets, run npm run exportobj to get Wavefront OBJ files ready for Blender or other 3D software.

Final Thoughts

This is a passion project that delivers concrete, usable results. The code is clean, the documentation is thorough, and the tools work out of the box. If you have any interest in retro gaming, reverse engineering, or 3D file formats, this is worth a look.