Skip to content
Jan Popelka edited this page Sep 22, 2022 · 3 revisions

Red Carpet Goban

The program is configured using JSON configuration file, it can be specified as a command line argument.

Command line arguments

short long description default
-v LEVEL --verbosity LEVEL amount of information logged into console
LEVEL is one of trace / debug / info / warning / error
warning
-c LEVEL --config CONFIGURATION path to configuration file used for the current run data/config.json

Configuration sections

The JSON file contains following top level sections. Their meaning and default contents is described below.

Humans

Array of human player names to choose from in the GUI. Used only as a personalization touch and in the recorded SGF files.

Default: Human

Bots

Or so called engines. At the moment GnuGo is required as the main engine, as the Goban relies on its showboard command output and territory analysis. Misconfigured engine can easily crash the program. Playing an unsupported board size can cause strange behaviour.

There are following required and optional attributes for each engine:

attribute name required attribute value description default
name yes string name of the engine as displayed in the GUI and in the recorded SGF files
path yes string hint path to the engine executable; not used if the engine is on the system PATH
command yes name of the engine executable; either a system wide command or search for in the path given above
parameters yes string command line arguments for the (GTP) engine itself
main {0, 1} if it is the main engine enforcing rules; has to be GnuGo at the moment 0
enabled {0, 1} whether the engine is enabled; to easily switch of some of the configured engines 1
kibitz {0, 1} whether it is the kibitz engine; to be used for move suggestion 0
messages dictionary rules to parse GTP engine output and display after each move; TBD

Following engines are configured in the default configuration file:

  • GnuGo 3.8 (has to be downloaded separately, except in the windows build)
  • Katago (disabled, has to be downloaded separately)
  • Pachi 12.60 (disabled, has to be downloaded separately)

Other GTP engines should be easily added, e.g. leela zero.

Using gtp4zen middleware (and Wine in linux) it is probably possible to configure Zen7 and Zen6, if you own the program and its respective zen.dll.

Controls

Control section maps keys to commands. Please see the default configuration file for supported commands.

See libRocket/Include/Rocket/Core/Input.h for actual key codes meaning.

Description of the default controls follows.

key function
C center view from above
V toggle shaders (default red carpet / red carpet anaglyphic / flat / basic 3D)
T toggle territory display
N toggle text overlay test
O test animation
X toggle max FPS game loop mode (usually capped by vsync) - otherwise redrawing only when needed
A + left/right mouse move rotate view
A + top/down mouse move tilt view
S + mouse move zoom view
D + mouse move drag view
U undo last move
R resign game
arrow left increase gamma
arrow right decrease gamma
arrow up increase contrast
arrow down decrease contrast
HOME reset brightness and gamma

Sounds

Path to wave files for move and clash sounds.

Fonts

Path to fonts used in the GUI and for the stone text overlay.

Shaders

GLSL shader variants to choose from. Each with its

  • name as displayed in GUI
  • path to vertex and fragment programs
  • and a height of stone for the overlay

GUI

Path to rocketLib GUI definition folder that has to contain goban.rcss stylesheet and goban.rml HTML-like GUI definition.

Clone this wiki locally