Home

Awesome

TetraTerm 🖥️

TetraTermImg

Devlog Video Talking About It

TetraTerm is a terminal-based debugging app for Tetra3D games and applications. It features a node graph, easy visualization of node properties, and means to create, modify, and delete nodes with minimal modifications to your game. It works by hooking into your game using localhost networking; this means your game can crash or be interrupted and you can debug as you would normally, while TetraTerm continues without issue and will re-connect when possible.

How to install

The general approach to install TetraTerm easily would be:

  1. Run go get github.com/solarlune/tetraterm from your game project directory. This downloads tetraterm so you can create a server for your game. The server runs in your game and connects to the terminal end of TetraTerm.

  2. Create a Server instance in your game and call Server.Update() and Server.Draw() every tick from your Game.Update() function.

  3. Run go install github.com/solarlune/tetraterm/terminal to install the tetraterm terminal display application to your Go bin directory. If that Go bin directory (which defaults to ~/go on Linux) is in your terminal path, then you will now be able to run tetraterm from anywhere by just typing that command. You can also just checkout the TetraTerm repo and run or build the terminal application from the terminal directory for the same result.

  4. Now just run your game as you normally do, and run tetraterm from a terminal. They should automatically connect to each other via port 7979 (the port number used is customizeable by passing a port flag to tetraterm).

See the example for more information.

Basic usage

TetraTerm has a few options - you have the node graph at the left and the game and node properties on the right. You can use the keyboard or mouse to focus on UI elements, and collapse or expand the node tree using space or enter. Ctrl+H lists general help and key information.

To-do