1 Web interface for lmno.games server
2 ===================================
5 Serves static content (if file exists in filesystem),
6 otherwise proxies to dynamic server.
12 Form: "Join game: (ID)"
15 Redirects to https://lmno.games/<game_engine>/<ID>/
16 For example: https://lmno.games/empires/WXYZ/
18 Links: Host a new game:
20 "Empires" links to https://lmno.games/empires
22 "Other game" links to https://lmno.games/other_game
26 https://lmno.games/WXYZ/
27 ------------------------
30 Redirects to https://lmno.games/<game_engine>/WXYZ/
32 https//lmno.games/new/<engine> (POST)
33 -------------------------------------
36 Creates a new, unique game ID and returns it as a JSON string
40 https://lmno.games/empires
41 --------------------------
44 Form: Start a new game
46 Sends POST to https://lmno.games/new/empires
47 Receives game ID as a JSON string (for example, "WXYZ")
49 https://lmno.games/empires/WXYZ?flavor=flutter
50 ----------------------------------------------
51 Type: Dynamic (to lookup game ID), but otherwise a static result
53 Serves game content (either the default or the "flutter" flavor)
57 https://lmno.games/WXYZ/empires/register (form action="/empires/register")
58 https://lmno.games/WXYZ/empires/events
65 Client saves game ID (WXYZ, say)
67 Client queries game state
69 https://lmno.games/WXYZ/empires/players
71 Client posts game updates:
73 https://lmno.games/WXYZ/empires/register