Chat Server
The chat server uses a very basic design using sockets. It also uses threads. One thread is created for each connection that is made to the server.
When a thread gets data from a client program it uses the java sychronize command to stop the other threads from accessing the output loop. It then writes the data it recieved to each threads output and continues.
User names are also stored in the thread coorisponding to the connection to the client which it belongs to. They are not currently checked for uniqueness.
Command Line Options
java ChatServer [port]
port: the port to look for connection on, the default is currently 3000
Things that need to be done
1) Refine command line options
2) Build interface for a relational database server so that spells, skills etc. can be accessed by the clients
3) Come up with a better way to check for communication strings from the clients