This project is read-only.


  • Packets
    • ClientPacket - Abstract class. Inherit it and implement fields you want to send to server. MUST BE SERIALIZABLE
    • ServerPacket - Abstract class. Inherit it and implement fields you want to get from server. MUST BE SERIALIZABLE
  • SerializationHelper - Helper class to convert packets to byte array and vise versa.


  • ClientHandling
    • ClientHandler - Abstract class which is used for 1 connected client handling. Inherit it and implement method UpdateClient.
    • ClientsHandler - Class for all incoming messages handling and distributing for existing ClientHandlers or creating a new one. 
  • Server - Listens for incoming messages. If you want to enable logging before starting service set a property Action<string> Log. Start server with StartServer() method. To stop server with all incoming connections termination use StopServer(). If you want for server stop accepting new connections and stop after all connected users disconnects use StopServer(true).
  • ServerConfigurator - singleton class for server configuration ( listening IP, port, timeouts, thread sleep times and etc. ). Set values before server start. Also it can read values from app.config file ( use LoadFromAppConfig() method for that ).


  • NetworkClient - Client side class for sending/receiving packages. Use Send(packet) method for sending and TryGetPacket(out packet)  for getting the last packet from server ( this class is designed for games, so obsolete data is considered as unusable ). Client starts listening on it's creation. To stop client use method KillClient().

Last edited Jan 7, 2012 at 2:51 PM by PoXujistas, version 1


No comments yet.