Contains all services for the game application.
Gameserver
The main functionality of the gamesystem is offerred by the chatserver.
It provides in the communication with the clients, handling of messages and storage of client and game information.
It works closely together with the chatserver because when a game is running
the clients can still also use the chatwindow to chat with eachother.
Interaction with the chatserver
The gameserver receives start-, stop- and abortgame notifications from the
chatserver it needs to handle. On the other hand, if the game is finished it notifies the chatserver that the game has ended, who needs to handle it from there.
@see quest.server.chat for a mor detailed description
Database
The {@link quest.server.chat.Games} database stores all information about
the games needed for game operations. This includes for instance the name of
each game, the lists of players and spectators in the game and the current
state of the game.
Client information isn't stored by the gameserver because is uses the database
of the chatserver for that. Everytime the gameserver needs information about
a client it contacts the chatserver for that information.
@author Merijn Evertse