Qwasm2 local-file player, Browser Games Now, 2026-10-19 Source: https://github.com/GMH-Code/Qwasm2/tree/c9ab09343d587ee36392aaefe29755e9a149e3af Emscripten 3.1.57; emmake make -j8. No GL4ES, OpenAL or cURL needed. Repository: source emsdk_env.sh; python3 scripts/prepare-quake2.py Verified downloads are reused from /tmp/bgn-quake2. No game data is fetched. Standalone: tar xzf qwasm2-source.tar.gz; cd qwasm2; emmake make -j8 The archive already includes engine.patch. Do not apply it twice. SDL 2.28.4 is fetched by the SDK's -sUSE_SDL=2 port. For offline builds, place the included sdl2.28.4.zip in $EM_CACHE/ports before invoking emmake. Copy release/index.js, index.wasm, index.data, game_baseq2.wasm, ref_gles3.wasm and ref_soft.wasm beside this distribution's index.html. Serve over HTTP(S). Wrapper preferred source is boot.js, index.html and messages.js. Do not replace index.html with the upstream development shell. No PAK game data is included. User-selected PAKs enter /baseq2 in memory. Saves/options use IDBFS /bgn-quake2-v1 and persist in this browser profile. Reselect original PAK files after reload, then use Game -> Load Game. Demo data is the acceptance scope; retail, mission packs and online rooms are unverified.