public void Start() { NetPeerConfiguration config = new NetPeerConfiguration("MulTUNG"); config.Port = (int)Configuration.Get <long>("ServerPort", 5678); config.LocalAddress = IPAddress.Parse(Configuration.Get("LocalServerIP", "127.0.0.1")); config.EnableMessageType(NetIncomingMessageType.ConnectionApproval); Server = new NetServer(config); Server.Start(); Network.IsServer = true; ThreadPool.QueueUserWorkItem(_ => { NetIncomingMessage msg; while (Server != null) { msg = Server.WaitMessage(int.MaxValue); if (msg == null) { continue; } HandleMessage(msg); Server.Recycle(msg); } }); World.AddNetObjects(); World.LoadCircuitState(); Network.StartPositionUpdateThread(Constants.PositionUpdateInterval); Log.WriteLine("Listening on port " + config.Port); }