GNUGO(6)

๐Ÿ’– GNUGO (6) ๐Ÿ’–

okay bestie, sit down, hydrate, because we are reading the gnugo manual page together and honestly? it's a whole vibe. this is section 6 of the user-contributed Perl documentation, and it's the manual for GNU Go โ€” a program that plays the actual, real, ancient game of Go. no cap. let's get into it. โœจ


๐ŸŽ€ NAME ๐ŸŽ€

  • gnugo โ€” the GNU program to play the game of Go. that's it, that's the whole rรฉsumรฉ, and it ate. ๐Ÿ’…

๐ŸŒธ SYNOPSIS ๐ŸŒธ

gnugo [--boardsize <num>] [--color <color>] [--handicap <num>] [--komi
<num>] [--quiet] [-v, --version] [-h, --help] [--help debug]
[--copyright] [--mode <mode>] [--replay <color>] [-l, --infile
<filename>] [-L, --until <move>] [-o, --outfile <filename>] [--printsgf
<filename>] [-D, --depth <num>] [-B, --backfill_depth <num>] [--score
[estimate|finish|aftermath] ] [-a, --allpats] [-T, --printboard] [-d,
--debug <level>] [-w, --worms] [-m, --moyo <level>] [-b, --benchmark
num] [-t, --trace] [-r, --seed num]

like, that's a lot of flags and every single one of them is real and matters, so don't skip ahead. ๐Ÿซถ


๐Ÿฆ‹ DESCRIPTION ๐Ÿฆ‹

GNU Go plays a game of Go against you, the user. but bestie, that is not all it does โ€” it has a whole main-character list of features: it can play against itself, or against another program, and it can analyse and score a game that's already been recorded. also it's compliant with the Go modem protocol, and it can load and save games in the Smart Game format. versatile queen. ๐Ÿ‘‘

GNU Go's default is a simple alpha-numeric board display (ASCII girlies rise up), but you're absolutely allowed to use a client like CGoban instead. do what feels right. ๐Ÿ’…

๐ŸŽฎ The game of Go

Go is a game of strategy between two players, usually played on a 19x19 grid called a goban. the two players place black and white stones on the goban in order to enclose territory. Go was invented about 4000 years ago in ancient China. it's giving "we've been at this a while." the game also goes by other names: (Chinese) Wei Chi, (Korean) Baduk, and (Ing) Goe.

๐Ÿ–ฅ๏ธ Playing a game in ASCII mode

to start a game with the default options, you literally just invoke gnugo. the board gets drawn right there in your terminal using ASCII letters. in this mode you can pull up help on the available commands by pressing the h key. so lowkey handy.

wanna play as Black with 4 stones handicap, a 0.5 komi, and record the game into the file record.sgf? say less:

gnugo --color black --handicap 4 --komi 0.5 -o record.sgf

๐ŸชŸ Playing a game with CGoban

CGoban is a general purpose client program by Bill Shubert for playing Go. it runs under the X Window System with a beautiful, resizeable graphic display. to use GNU Go under X Window System, go get the most recent version of CGoban from Bill Shubert's web site:

http://www.igoweb.org/~wms/comp/cgoban/index.html

then:

  1. Start CGoban.
  2. When the CGoban Control panel comes up, select Go Modem. You will get the Go Modem Protocol Setup.
  3. Choose one (or both) of the players to be Program, and fill out the box to the path to gnugo.
  4. After clicking OK, you get the Game Setup window.
  5. Choose Rules Set to be Japanese (otherwise handicaps won't work โ€” yeah, fr, don't skip this one).
  6. Set the board size and handicap if you want.
  7. Click OK and you are ready to go. periodt. ๐Ÿ’…

in the Go Modem Protocol Setup window, when you specify the path to GNU Go, you can give it command line options, such as --quiet, to suppress most messages. heads up though: since the Go Modem Protocol preempts standard I/O, other messages are sent to stderr, even if they are not error messages. these will show up in the terminal from which you started CGoban. just so you're not confused bestie. ๐Ÿซถ

๐Ÿงฎ Scoring system

the game stops when both players pass. GNU Go will attempt to compute and report the score to you. โš ๏ธ it may occasionally make mistakes, due to wrong evaluation of the status of a group โ€” so like, vibe check the results, okay? you can check the score as follows: in ASCII mode, at the end of the game, stones believed dead are marked in lower case letters, and you have the option of toggling their status before counting. using CGoban, you may use CGoban's counting facility to count the game using either Japanese or Chinese rules. options upon options. iconic.

๐Ÿ‘€ Viewing a stored game

gnugo -l filename.sgf --mode ascii

this loads filename.sgf and lets you navigate through the game by using the commands forward, back, goto and last. important caveat bestie: it is not possible to navigate through variations in ascii mode. ๐Ÿ˜ญ you may also use CGoban to view stored games โ€” and CGoban can navigate variations. so if you need variations, CGoban is the move.

๐Ÿ“š Documentation

the files in the doc directory contain detailed documentation about debugging options and internal program structure. other documentation may be found in comments throughout the source code. classic. very "the real docs were the comments we read along the way."

๐Ÿ“ก Go Modem Protocol

the Go Modem Protocol is a standard interface between Go programs and graphical display.

it was developed by Bruce Wilcox with input from David Fotland, Anders Kierulf and others. any Go program should use this protocol, since it is standard. since CGoban supports this protocol, the user interface for any Go program can be done entirely through CGoban. using the Go Modem Protocol, you can play with another computer running a different program โ€” even on a different operating system โ€” using a modem, a serial cable, or over the internet, if the other program also supports the protocol. you can also communicate with the Go servers using CGoban. networking queen fr fr. ๐ŸŒˆ

๐Ÿ“ฆ Smart Game Format

games (with comments, variations and other features) can be stored in the Smart Game Format (SGF). this format originated in Anders Kierulf's program Smart Go. Martin Muller and Arno Hollosi developed the current standard, which may be found at:

http://www.red-bean.com/sgf/

GNU Go supports the Smart Game Format. ๐Ÿ’…


โš™๏ธ OPTIONS โš™๏ธ

๐Ÿ”ง Main options

  • --mode mode โ€” force the playing mode (ascii, gtp or gmp). default is ASCII. and plot twist: if no terminal is detected, GMP (Go Modem Protocol) will be assumed. the computer just decides for you, bestie.
  • --replay color โ€” replay the game generating moves for color, where color is white, black, or both. (requires -l โ€” don't forget it, it will not work without it ๐Ÿ’€)
  • --quiet โ€” don't print copyright and other informational messages. shhh. ๐Ÿคซ
  • -l, --infile file โ€” load the SGF file (to score or analyze a recorded game).
  • -L, --until move โ€” stop loading just before move is played (e.g. 154 or L10).
  • -o, --outfile file โ€” save the played game to file in SGF format.

๐ŸŽฒ Game Options:

  • --boardsize num โ€” set the board size to use (1-19). default is 19, other common formats are 13 and 9.
  • --color color โ€” choose your color (black or white). Black plays first, White gets the komi compensation. main character choice, honestly.
  • --handicap num โ€” set the number of handicap stones.
  • --komi num โ€” set the komi (points given to white player to compensate advantage of the first move, usually 5.5 or 0.5). default is 5.5.

๐Ÿ’ฌ Informative Output:

  • -v, --version โ€” display the version of GNU Go.
  • -h, --help โ€” display help message.
  • --help debug โ€” display help about debugging options.
  • --copyright โ€” display copyright notice.

๐Ÿ› Debugging and advanced options:

  • -T, --printboard โ€” show board each move.
  • --level num โ€” level of play. (default 10; smaller = faster, weaker).
  • -b, --benchmark num โ€” benchmarking mode โ€” can be used with -l.
  • -t, --trace โ€” verbose tracing (use twice or more to trace reading). yes, twice. stack it. ๐Ÿซถ
  • -r, --seed num โ€” set random number seed.
  • --score [estimate|finish|aftermath] โ€” count or estimate territory of the input file. usage:
gnugo --score estimate -l filename

loads the SGF file and estimates the score by measuring the influence. use with -L if you want the estimate somewhere else than at the end of the file.

gnugo --score finish -l filename

loads the SGF file and gnugo continues to play by itself up to the very end. then the winner is determined by counting the territory.

gnugo --score aftermath -l filename

similar to --score finish except that a more accurate but slower algorithm is used to determine the final status of the groups. (more accurate = slower, the eternal tradeoff, we know her ๐Ÿ˜ญ)

if the option -o outputfilename is provided, the results will also be written as comment at the end of the output file.

  • --printsgf outfile โ€” load SGF file, output final position (requires -l).

๐Ÿ™ˆ BUGS ๐Ÿ™ˆ

if you find a bug, please send the SGF output file to gnugo@gnu.org together with a description of the bug. bestie please be descriptive, the devs are trying their best. ๐Ÿฅบ


and that's the whole page!! this was GNU Go version 3.9.1, dated 2010-12-17, from the user-contributed Perl documentation section 6. you're welcome, go play some Go, slay, and remember: black plays first. bye pookie ๐Ÿ’–โœจ๐ŸŽ€๐Ÿฆ‹

๐Ÿ“ฆ where this page comes from