Browser Games Now Quake local-file player, 2026-10-19 Upstream: https://github.com/fte-team/fteqw/tree/f937b9d88f71fc4429db5fe56c6a98d922711b2e Emscripten: 3.1.57 (source emsdk_env.sh), make, patch, Python 3. Repository rebuild: python3 scripts/prepare-quake.py Existing verified downloads in /tmp/bgn-quake are reused. No game files are fetched. Standalone engine rebuild from this distribution: tar xzf fte-source.tar.gz cp zlib.tar.gz fte/engine/zlib-1.3.1.tar.gz cd fte/engine make web-rel FTE_CONFIG=fteqw USE_OPUS=0 PKGCONFIG=/usr/bin/false AR=emar ARFLAGS=rc LDFLAGS=-sSTACK_SIZE=5242880 -j8 The source archive already contains engine.patch; do not apply it twice. Copy release/ftewebgl.js and release/ftewebgl.wasm beside index.html. Serve this folder over HTTP(S). boot.js, default.fmf and messages.js are editable source. Do not use the upstream generated HTML: it enables a different game/download workflow. Patched files: common/common.c, common/config_fteqw.h, client/m_download.c, web/prejs.js and web/ftejslib.js. Full patch is included. No trial minimal config. Native Single Player menu; local PAKs supplied again after reload. Saves/config use localStorage prefix bgn-quake-v1/; Cache Storage uses bgn-quake-v1. Checked data: first-episode pak0.pak only. Retail pak1, mods, WebXR and online QuakeWorld rooms are unverified. No online game server is provided.