Game development consoles provide statistical information about what’s happening internally within the game and the engine itself (i.e. what assets are being loaded etc.), and some allow command input for various functionality- useful for modifying engine behaviour on-the-fly.
I’ve made a start on one for one of my assignments, copying the same opacity (70%) and feel of Cryengine’s own game console:
It’s 50% of the window height and 100% of window width, and each line of text can contain up to 113 characters (assuming a monospace font is used)- it has no text wrapping either but does dump to a log file in the game directory (./LogBackups/[date-time].log).
This system will also have the added advantage of being able to debug multiple game instances at once remotely- the idea of this is that there can be multiple instances of the game on multiple computers being play-tested (or beta tested) at once that feed diagnostic data to a central remote game debugging application on the developer’s computer.
The visual debugging console will support 159 characters on each line and 21 lines displayed at once. The user will be able to use the PgUp and PgDn keys to move up and down the console too.
The remote debugger will be a server that game clients can connect to (via the debug console), and will be able to fully control game clients through the remote console.