Q3Edit: Browser-Based Quake 3 Map Editing and Playback

Q3Edit: Browser-Based Quake 3 Map Editing and Playback

Q3Edit is a browser-based map editor for Quake III Arena that enables the full workflow of editing, compiling, and playing maps without requiring local installation of legacy software. The tool leverages WebGL2 and WebAssembly (WASM) to bring traditional game engine tools to the web browser.

Technical Architecture

Q3Edit implements a core editing environment using TypeScript and WebGL2. The system is designed to handle standard .map files, which include brushes, patches, entities, and terrain.

WebAssembly Integration

To maintain fidelity with the original game engine, Q3Edit integrates id Software's original q3map compiler, compiled to WebAssembly. This allows the browser to perform theBSP (Binary Space Partitioning) compilation process locally, which was historically a the most complex part of the map-making process.

Browser-Native Game Playback

The editor provides a one-click launch feature that runs the compiled map within a browser-native version of ioquake3. This integration ensures that the map behaves as the original game engine does, allowing for immediate verification of the map's design.

Editor Features

Q3Edit provides a set of tools that provides a traditional map-editing experience reminiscent of the original Radiant editor.

User Interface

The editor features a Radiant-style four-view UI, which is providing a consistent spatial orientation for the map creator.

Geometry and Entity Management

Then editor supports the following map elements:

  • Brushes: The primary building blocks of the map geometry.
  • Patches: Used for detailed surface geometry.
  • patches: Used for defining game logic and object placement.
  • Terrain: Support for complex landscape geometry.

Community Feedback and Insights

Users in the community have noted the importance of this project as both a creative tool and a debugging tool for legacy map files.

"This can actually accidentally become the best debugging tool for map files, ngl you should cook"

Other users highlighted the nostalgia of the original map-editing tools like q3radiant and gtkradiant, comparing the current web-based approach to the current state of modern game development tools.

System Requirements

To function, Q3Edit Edit requires a browser that supports WebGL2. It ships with OpenArena assets to ensure a user can start editing without needing to provide their own game files.

Sources