UCI documentation

Discussion of chess software programming and technical issues.

Moderator: Ras

Bozon
Posts: 6
Joined: Wed Dec 11, 2013 9:54 pm

UCI documentation

Post by Bozon »

I know the UCI documentation available at http://download.shredderchess.com/div/uci.zip (it's from April 2006) but this seems to be incomplete. For example, the command "eval" is not mentioned anywhere but is certainly provided by at least Stockfish (although I don't even know what exactly it returns; a static evaluation!?). On the other hand, the command "debug [on | off]" mentioned in the documentation seems to work nowhere. If an engine deviates from the UCI standard as in the documentation by either adding or removing commands, is it possible to get a list of commands provided by the engine? Or is there a more recent documentation of UCI?
bhlangonijr
Posts: 482
Joined: Thu Oct 16, 2008 4:23 am
Location: Milky Way

Re: UCI documentation

Post by bhlangonijr »

'eva'l is not defined by the UCI official spec, although this command is available in many engines (in Critter too). There is no such thing as a list of available commands, each engine can add its own stuffs not defined in the official spec. The best you can get is a good documentation about the available commands in the readme files.
User avatar
hgm
Posts: 28475
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: UCI documentation

Post by hgm »

The UCI standard is defined and maintained by Stephan Mayer Kahlen, who has not changed it for many, many years, as it still serves the need of his engine perfectly.

If deviation from the standard is not mentioned in the README file that comes with the engine, I guess you are on your own. I don;t think engines have the obligation to implement every command to call themselves "UCI compatible". (E.g. "copyprotection" seems pretty useless for non-commercial engines.)

I have never heard of an "eval" command, and it is definitely not UCI.