static void Main(string[] args) { DashCMD.Start(); DashCMD.Title = "Ace Of Spades Server"; DashCMD.WriteLine("Game Version: {0}", ConsoleColor.Magenta, GameVersion.Current); SimulatedGame game = null; ProgramExceptionHandler.RunMainWithHandler( () => // tryAction { LoadServerConfig(); game = new ServerGame(); game.Start("AOSServer Game Thread"); DashCMD.Listen(false); }, () => // finallAyction { DashCMD.Stop(); }, () => // shutdownAction { if (game.IsRunning) { game.Stop(); } Console.WriteLine("Press any key to exit..."); Console.ReadKey(); }); }
static void Main(string[] args) { DashCMD.Start(); DashCMD.Listen(true); ProgramExceptionHandler.RunMainWithHandler( () => { using (MainWindow window = new MainWindow()) window.Run(60); }, //try () => { DashCMD.Stop(); }, //finally () => { } //shutdown action ); }
static int Main() { DashCMD.Start(); DashCMD.Listen(true); ProgramExceptionHandler.RunMainWithHandler( () => { using (MainWindow window = new MainWindow()) { window.Run(60); } }, () => { DashCMD.Stop(); }, () => { } ); return(0); }
void InitializeDebugging() { DashCMD.AddCommand("endpoint", "Displays the server's ip endpoint.", (args) => { DashCMD.WriteLine("Bound IPEndPoint: {0}", AOSServer.Instance.BoundEndPoint); DashCMD.WriteLine("Receive IPEndPoint: {0}", AOSServer.Instance.ReceiveEndPoint); DashCMD.WriteLine(""); }); DashCMD.AddCommand("exit", "Stops the server.", (args) => { DashCMD.WriteImportant("Shutting down server..."); AOSServer.Instance.Shutdown("Server shutting down..."); Stop(); DashCMD.Stop(); }); DashCMD.AddScreen(new DashCMDScreen("dt", "", true, (screen) => { screen.WriteLine("DeltaTime: {0}s", lastDeltaTime); }) { SleepTime = 30 }); DashCMD.AddScreen(new DashCMDScreen("network", "", true, (screen) => { screen.WriteLine("General Stats:", ConsoleColor.Green); screen.WriteLine("Heartbeat Compution Time: {0}ms", AOSServer.Instance.HeartbeatComputionTimeMS); int totalPhysicalPS = 0; int totalVirtualPS = 0; foreach (NetConnection client in server.Connections.Values) { totalPhysicalPS += client.Stats.PhysicalPacketsReceivedPerSecond; totalVirtualPS += client.Stats.PacketsReceivedPerSecond; } screen.WriteLine("Total PPackets r/s: {0}", totalPhysicalPS); screen.WriteLine("Total VPackets r/s: {0}", totalVirtualPS); screen.WriteLine(""); foreach (NetConnection client in server.Connections.Values) { screen.WriteLine("[{0}]:", ConsoleColor.Green, client); screen.WriteLine("Send Rate: {0}", client.PacketSendRate); screen.WriteLine("MTU: {0}", client.Stats.MTU); screen.WriteLine("Ping: {0}", client.Stats.Ping); screen.WriteLine("VPackets s/s: {0}", client.Stats.PacketsSentPerSecond); screen.WriteLine("VPackets r/s: {0}", client.Stats.PacketsReceivedPerSecond); screen.WriteLine("Packets Lost: {0}", client.Stats.PacketsLost); screen.WriteLine("PPackets s/s: {0}", client.Stats.PhysicalPacketsSentPerSecond); screen.WriteLine("PPackets r/s: {0}", client.Stats.PhysicalPacketsReceivedPerSecond); } })); }