hoichess — xboard compatible chess engine

Synopsis

hoichess [options]

hoixiangqi [options]

Description

hoichess is a chess playing program. It implements major parts of the xboard/winboard chess engine protocol.

hoichess uses many of the standard techniques found in modern chess programs, like rotated bitboards, principal variation search, quiescence search, transposition table and iterative deepening.

See xboard(6) for instructions about how to use hoichess through xboard. To start up quickly, you just need the command: xboard -fcp hoichess.

hoixiangqi is a xiangqi (``Chinese chess'') playing program. Currently, it also uses the xboard/winboard protocol. However, there is no user interface that supports this protocol. In the future, a different protocol might be used.

hoichess and hoixiangqi are built from the same code base, so nearly all commands and options, as well as the text based user interface, are the same for both programs.

If run hoichess or hoixiangqi at the command line, the help command gives you a brief summary of available commands. See section ``COMMANDS'' for more details about those commands.

Options

-h, --help
Display usage information.
-V, --version
Display version information.
-v, --verbose[=n]
Increase verbosity. Multiple -v options may be given. --verbose=n sets verbosity level n.
-d, --debug[=n]
Increase debug level. Multiple -d options may be given. --debug=n sets debug level n.
-L filename, --logfile filename
Specify file name for logging. The log will be appended to this file. Note: Logging is not yet implemented in the current version of HoiChess, so the log will be empty.
-x, --xboard[=arg]
Start in xboard compatible mode. This turns off the input prompt and alters the output format to meet the requirements of the xboard protocol. Normally, this option should not be necessary because hoichess automatically detects when it is started under xboard.

The optional argument can be one of:

off
Force non-xboard mode.
on
Force xboard mode.
auto
Automatically enable xboard mode when stdout is not a terminal, which is the case when HoiChess is started under xboard.

This is the default.

--book filename
Set location of opening book.
--nobook
Disable opening book.
--hashsize arg
Set the size of the main hash table (transposition table). The size is given in bytes, the suffixes 'K' and 'M' (e.g. '32M') may be used to specify size in kilobytes or megabytes, respectively.

A size of 0 disables the hash table.

--pawnhashsize arg
Set the size of the pawn hash table. The size is given in bytes, the suffixes 'K' and 'M' (e.g. '32M') may be used to specify size in kilobytes or megabytes, respectively.

A size of 0 disables the pawn hash table.

--evalcache arg
Set the size of the evaluation cache. The size is given in bytes, the suffixes 'K' and 'M' (e.g. '32M') may be used to specify size in kilobytes or megabytes, respectively.

A size of 0 disables the evaluation cache.

--name name
Set engine's name to name.
--rcfile filename
Before accepting input from stdin, first read commands (and probably moves) from filename.
--color arg
Control usage of ANSI color control sequences, e.g. when displaying the chess board.

arg can be one of:

off
Never use ANSI color sequences.
on
Always use ANSI color sequences.
auto
Automatically use ANSI color sequences when stdout is a terminal.

On Unix platforms, the default is auto. On Windows platforms, the default is off, because the Windows terminal is normally not ANSI capable.

Commands

hoichess supports most commands of the XBoard protocol. Those commands are described in detail at http://www.tim-mann.org/xboard/engine-intf.html. Furthermore, the following special commands are also available:
help
Give a brief summary about available commands.
bench movegen
Run move generator benchmark.
bench evaluator
Run evaluator benchmark.
bench makemove
Run benchmark for make_move and unmake_move routines.
book open bookfile
Use opening book bookfile.
book close
Disable opening book.
book create bookfile pgnfile depth min_move_count
Create a new opening book, from the games in pgnfile. The new book will be written to bookfile.

The parameter depth specifies how many moves (half-moves, ply) of each game will be included in the opening book. If depth is 0, there is no depth limit, i.e. all moves of all games will be put into the book.

The parameter min_move_count specifies how many times a move must be played until it is added to the opening book.

debug level
Set debug level to level.

If level is omitted, the current debug level is printed.

evalcache clear
Clear evaluation cache.
evalcache size arg
Set the size of the evaluation cache. The size is given in bytes, the suffixes 'K' and 'M' (e.g. '32M') may be used to specify size in kilobytes or megabytes, respectively.

A size of 0 disables the evaluation cache.

evalcache off
Disable evaluation cache.
evalcache info
Print information about evaluation cache.
evalcache stats
Print evaluation cache statistics.
hash clear
Clear hash table.
hash size arg
Set the size of the main hash table (transposition table). The size is given in bytes, the suffixes 'K' and 'M' (e.g. '32M') may be used to specify size in kilobytes or megabytes, respectively.

A size of 0 disables the hash table.

hash off
Disable hash table.
hash info
Print information about hash table.
hash stats
Print hash table statistics.
hash replace scheme
Set hash table replacement scheme. Currently available schemes are:
  • always

    Always replace existing entries by new entries.

  • depth

    Replace existing entries only by entries with same or higher search depth.

ignore command
From now on, ignore the command command. This is basically intended for debugging.

See also command obey.

obey command
Do not ignore the command command anymore.

See also command ignore.

pawnhash ...
Configure the pawn hash table. The available options are the same as for the main hash table (see command hash), with the exception that pawnhash replace is not available, because the pawn hash table always uses the ``always replace'' strategy.
verbose level
Set verbosity level to level.

If level is omitted, the current verbosity level is printed.

source file
Read commands from file, just like command line option --rcfile does.
show board
Display the chess board.
show fen
Print the current position's FEN.
show moves|captures|noncaptures|escapes
Show all legal moves, captures, non-captures or escapes.
show eval
Evaluate current position and print result.
show clocks
Show both players' clocks.
show game
Show information about entire game, e.g. past positions, moves played, etc..
solve epdfile
Run search on all positions in epdfile (testsuite mode).

Author

hoichess was written by Holger Ruckdeschel <holger@hoicher.de>.

This manual page was generated with pod2man(1).