feedc0de Coop loading screen
This directory contains the loading page and a dependency-free Python HTTP
service. The service exposes only the page, the selected campaign screenshots,
a read-only player-summary query, and a top-five all-time Score leaderboard. It
does not expose Steam IDs, sv.db, Lua files, or directory listings.
The Kubernetes loading-screen sidecar starts and stops this service together
with SRCDS on TCP port 8765. The configured public URL is:
https://garrysmod.brunner.ninja/?steamid=%s&map=%m
%s and %m are filled in by Garry's Mod. The HTTPS virtual host should
reverse-proxy to the loading-screen service on port 8765.
For a browser preview with sample engine callbacks:
python3 server.py --bind 127.0.0.1 --port 8765
Then open http://127.0.0.1:8765/?demo=1.
The progress percentage is based on Garry's Mod's file-count and join-status callbacks. Garry's Mod does not expose byte-level Workshop progress to loading web pages, so the interface intentionally does not claim to show byte progress.