Remote Debugger

While developing MMM I have been developing several missions to test usability and performance. Something I noticed is that debugging is not as easy as it is in other games – without a built in console window there is no real way to store error data in a persistent way. This can be a problem if the game crashes as you will lose all error information.

As I can’t fully integrate debugging into the game I investigated alternate solutions and eventually settled on a debugger application that a MMM script can connect to. This application is launched separately from Armada and will survive the death of the game.

When a script connects to the debugger all debug print output and error messages will be rerouted to it, rather than appearing in game; it is best to play in windowed mode so that you can see the output. Alternatively you can run the debugger on another computer – it communicates over the network (hence the remote bit). You can save a log of all messages received to disk to help keep track of bugs.

The remote debugger is not an entirely passive application – you can use it to send script commands to the mission to execute. These will be executed when they are received by the loader. This allows for faster development of missions and testing of ideas, as you don’t have to restart the mission every time you want to do something.

There will be a tutorial on how to use the remote debugger when it is released. The debugger will be released along with the next version of MMM.