[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
computer-go: gnugoclient 2.0
I have released version 2.0 of gnugoclient, available at
http://www.lysator.liu.se/~gunnar/gnugo/gnugoclient/
General Information
-------------------
This program can be used to connect GNU Go to NNGS (or a sufficiently
compatible server) and have it play games without supervision. When
the program is started it establishes a connection to a specified
server, then waits for match requests. In response to a request it
accepts the game and starts GNU Go as a separate process, with which
it communicates over a pipe using the Go Text Protocol (GTP). Moves
are transferred to and from the game until the game is finished or
interrupted in some other way, e.g. by adjournment. When the game is
over it goes back to listening for match requests.
The use of GTP for communication with GNU Go is a new feature of this
version (previously it used the GNU Go ascii interface), which
potentially makes it useful for other go programs too, at least those
running on unix platforms (maybe also on windows, see discussion
below).
The following GTP commands are used by gnugoclient:
level (*)
name
version
boardsize
komi
fixed_handicap
white
black
genmove_white
genmove_black
final_score (**)
final_status_list (**)
quit
(*) Can be ignored or replaced by other methods to adapt playing
speed.
(**) Only needed if automatic removal of dead stones is enabled.
Platform requirements
----------------------
Gnugoclient is written in the programming language Pike. The
interpreter for this language is freely available and can be
downloaded in both source and binary form from http://pike.roxen.com.
Pike is available for most unix platforms but also (at least some
versions of) windows. Some features are not available on all platforms
though and this program in particular needs thread support and being
able to start new processes with which it can communicate through
pipes. It has been tested on Linux and Solaris and is expected to work
on all modern unix platforms. Whether it works on windows is unknown.
If starting new processes and communicating over pipes is a problem it
should be fairly easy to replace this with socket communication over
TCP/IP. Please tell me if there's interest in this alternative.
Licensing
---------
GnugoClient is licensed under the GNU General Public License
(GPL). This license gives certain rights and imposes certain
restrictions on how modified and derived works can be distributed.
Worth to notice here is that it does not restrict how you may use the
program. In particular there's nothing stopping you from using it to
connect your go program to a server, regardless of the forms under
which you distribute your own program.
Further Information
-------------------
Download the distribution and read the README file.
/Gunnar Farnebäck