Computer Chess Club Archives


Search

Terms

Messages

Subject: draft of "new" chess protocol

Author: Michael Yee

Date: 18:08:58 03/12/05


Given the recent (and recurring) discussion about the virtues of winboard vs
uci, I felt the urge to facilitate the next generation of winboard to address
some of its lingering issues. Fortunately (or unfortunately :), it was suggested
that backwards compatability wasn't a good idea, and it inspired me to think
about the problem of engine-gui interaction from scratch.

The main design goals were:

- engine gets control over all aspects of the game of chess (e.g., draws,
resign)
- easy for users
- easy for engine programmers
- easy for gui programmers
- (somewhat) extensible

After generating some rough ideas, it became clear that UCI already had perfect
mechanisms for much of the required functionality. So instead of coming up with
an entirely new protocol (thereby introducing unwanted complexity for the
programmer), most of the commands and syntax are borrowed directly from UCI.

You can view the proposed protocol here:

http://web.mit.edu/myee/www/chess/xci1.html

Note that the draft is rough and the notation and explanations are not always
complete and unambiguous. The key differences from UCI are:

(from GUI)

- move
- level
- result
- go ... book
- go ... drawoffer

(from engine)

- acceptdraw
- offerdraw
- resign
- info name x description d (sent during initialization)
- info name x value y (custom output)
- info book
- option XCI_Variant

(misc)

- generalized FEN (from Reinhard)
- move format

I'd appreciate any feedback and questions... even if the protocol winds up being
supported by only one gui and engine (my own future ones)!

Michael

P.S. Reinhard, I knew about your dll-based protocol in development... The main
reason that I'm sticking with text-based standard I/O is that I don't have any
experience with dlls and it also seems like something that would be less
portable.



This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.