Improved Master Server API
Currently Doomsday sends the full set of information about every public server to the master, wasting a lot of bandwidth on http://dengine.net/. The master server should be revised so that:
- The server only sends its protocol version, IP address, port number and game mode (in binary).
- The client gets the list of addresses and contacts the servers on its own to get the rest of the information (version numbers, game rules, current map, players in game, etc.).
This also has the advantage that information about the servers is always up-to-date when it's displayed in the client UI, and the client will not see servers that are unreachable.
- The revised master server should run at a new URI on the web server so that old versions of Doomsday can use the old master.php.
- The revised master server should use the same response representation as other systems used on the homepage. Effectively this means the client list should be returned to the caller as a JSON object graph.