In Go and many other games, the quasi-standard Go Text Protocol (GTP) is used as a text-based interface for communication between a game-playing program on one side, and a user interface or test script on the other side. The basic idea is that the user or test script issues a command such as asking for a move, and the program responds. The program needs to implement a loop which sits waiting for commands, computes an answer to each command, and sends it back.
We will use a small subset of GTP
for communicating with our programs, and for testing them.
Just looking at the code in our Go player's
gtp_connection.py will be enough to understand what we need.
In cases where the official documentation and our use contradict, our version takes precedence. For example, our error handling is different. Use the forum for clarification questions.
See regression testing with gogui-regress
Created: Jan 15, 2017 Last modified: Dec 5, 2019
Martin Müller and Ting-Han Wei