About
Quake III Arena is id Software's 1999 arena shooter, the third Quake game, which replaced single-player storytelling with bot-populated deathmatch combat and a Sonic Mayhem/Bill Leeb soundtrack. QuakeJS is a browser port of ioquake3 (itself a modernized Quake III Arena engine) compiled to JavaScript with Emscripten, playable directly from a public demo site without installing anything. Game assets aren't bundled with the code — they're streamed at runtime from a separate content server, with a public one available by default.
How it differs from the original
Because it runs over WebSocket networking instead of native UDP, QuakeJS's web clients and dedicated servers can't connect to standard native Quake III Arena or ioquake3 servers and clients.
Getting started
The public build is playable straight from a browser via its live demo site. Running your own dedicated server means installing Node.js dependencies, pointing it at a content server for game assets, and starting it from the command line much like a native Quake III dedicated server, including agreeing to the original game's EULA before its base files download automatically.
Known limitations
- compatibility: WebSocket-based networking means native builds and web builds cannot interact with each other.