This week I've been working on a non-invasive Minecraft control panel. By non-invasive I mean it requires no plugin to be added to the MC server and as a result adds no additional workloads to the Minecraft Server. The Control panel is written as a Microsoft c# WPF .NET 4.5 Application. Right now the control panel shows a configurable number of lines of out-put in a mock-console window and accepts command input from the end-user. Additionally the control panel tracks the memory usage , Process ID, the port, and the public IP address of the server. The current dev version also supports having a reboot schedule which cleanly stops and restarts the server daily at a predetermined time.
The memory tracker automatically scales itself based on the configured XMS and XMX properties set for the server. I've added a properties class which can read and write to server.properties and as of today have incorporated JSON.NET so that I can read and write the MC ops, whitelist and various other JSON formatted files.
Here's a sneak peek of the control panel application as it running on one of my DEV Servers.
May 22, 2015 Update
- Got my hands on JSON.NET and can now read and write to from ops.json, banned-players.json, and so on. I've added an object class for Operators (ops) and BannedPlayers and got them incorporated in to the UI.
- Next steps to include right-click context menus for the tree views so you can pardon the banned or de-op ops right from the UI with no need for commands.
Here's the latest screenshot of the console with the Ops and Banned player elements added.