Also, if you exit the login server from the GUI, it sends a shutdown message to all of the game servers, so I can shutdown everything that way.
Technically, I should tell all the game servers to shutdown, and when they get told to shutdown, they should disconnect all clients and free all resources, then tell the login server they've shutdown before exiting; so I can tell if there's any game servers mis-behaving. Although I think that's unnessecary.
I also need to do some proper shutdown code in the game server; I.e. process all pending DB queries, instead of terminating the worker thread and throwing everything away. That's a great way to loose information. Well, that'll take about 30 seconds to fix anyway.
I didn't get around do doing anything major with zones, but zones are now read from a file when the server starts up, and all characters have a zone ID (index) in the database, and are stuffed in the correct zone when they connect. Things to do:
And in the long run, after I've done a bit of stress testing, but before I move to the real client app:
Right, Bed. I have to be up in 9 hours...