Like always, I've built versions for 32-bit Windows, 32-bit Linux and 64-bit Linux. Unfortunately I upgraded my Macintosh to OSX Lion, which is not supported by the latest stable version of the Qt framework. The Lion-compatible Qt 4.8 will probably be released soon (the release candidate is out already), so when that happens I'll build a Mac version of cutechess-cli.
What's new in v0.4.0?
* The QJson dependency is gone, we now have our own JSON implementation.
This makes compiling cutechess-cli easier
* Support for multiline engine initialization strings. The lines should be
separated by the \n escape sequence.
* All engine input and output is now captured with the -debug option.
Previously the first few lines of output were often left out.
* Stricter parsing for custom engine options.
* Optimized parsing of engine output. Parsing ouput from chess engines,
especially "info" strings in UCI mode, is by far the biggest performance
bottleneck. In fast games these optimizations can often cut cutechess-cli's
CPU usage in half.
* The engine command and it's command line arguments can be passed in the
same "cmd=" parameter, eg. 'cmd="engine.exe -xbmode"'. If quote characters
are needed, the \" escape sequence should be used.
Example: cmd="\"engine name with spaces.exe\" arg1 arg2"
* Properly trim trailing line breaks from engine output.
* Fixed time per move time controls. There's a new "st=<n>" engine option for
setting the time limit to <n> seconds per move.
* Time margin for the expiry of thinking time. There's a new "timemargin=<n>"
option for allowing engines to go at most <n> milliseconds over the time
limit. This is very useful in "fixed time per move" games which most engines
can't handle without going slightly over the limit.
* Infinite time control. An engine can be given infinite thinking time by
setting the time control parameter to "inf" ("tc=inf"). This can be useful
if it's used in combination with depth and node limits.
* Improved PGN parsing. The parser now copes better with non-standard or
corrupt PGN games.
* Time delay bugfix. Now there shouldn't be any extra games in matches that
use the -wait option.
* Display more information about the match score. After each game
cutechess-cli displays the percentage of points won by the first player,
and the total number of games played.
* Engine options can be set in the engines.json config file. The contents
should look like this:
Code: Select all
[
{
"command" : "fruit",
"name" : "Fruit-2.1",
"options" : [
{
"name" : "Hash",
"value" : 32
},
{
"name" : "OwnBook",
"value" : false
},
{
"name" : "NullMove Pruning",
"value" : "Fail High"
}
],
"protocol" : "uci",
"workingDirectory" : ""
},
{
"command" : "crafty",
"name" : "Crafty-22.10",
"protocol" : "xboard",
"whitepov" : true,
"workingDirectory" : "",
"initStrings" : [
"command 1",
"command 2"
]
}
]
usual, options can be set and overridden from the command line with the
"option=value" parameter.
Source code: http://repo.or.cz/w/sloppygui.git
Linux 32-bit binary: http://koti.mbnet.fi/~ilaripih/bin/cute ... x32.tar.gz
Linux 64-bit binary: http://koti.mbnet.fi/~ilaripih/bin/cute ... x64.tar.gz
Windows 32-bit binary: http://koti.mbnet.fi/~ilaripih/bin/cute ... -win32.zip
Thanks for using cutechess-cli!