Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Extensible Chess Interface (XCI) : updated draft

Author: Vasik Rajlich

Date: 03:01:06 03/15/05

Go up one level in this thread


On March 14, 2005 at 12:45:22, Michael Yee wrote:

>The protocol proposal has been updated to reflect several good
>comments/suggestions.
>
>(1) There is now a table of what commands are valid in each state. This makes
>the protocol clearer and even look simpler than it did before (at least to me
>:). Thanks to Harald for this suggestion.
>
>(2) New commands from GUI to engine : getstartpos, getmovelist, getresult
>
>This enables the protocol to be truly extensible since variants that aren't
>officially supported by the GUI can still be supported by letting one engine be
>the "referee" or "arbiter". This interesting idea came from Reinhard (also the
>source of the move and position formats for officially supported variants
>FRC/CRC).
>
>(3) New command from engine to GUI : error
>
>------
>
>Even if people are dead set against introducing a new protocol into the mix, I'm
>curious what UCI fans think about some of the extensions. Specifically,
>
>- describing what options mean,
>- custom thinking output, and even
>- getstartpos, getmovelist, getresult
>
>could be added without too much fuss (while maintaining the core philosophy of a
>stateless engine)...
>
>Thanks,
>Michael

It looks like quite a bit of work has gone into this. I glanced only quickly -
here are a few points to consider:

1) It's good that very little work will be involve to adapt a UCI engine.

2) Pondering (Dieter also mentions this) - you should clarify how this works. I
guess you don't want the ponder move to be made on the "internal" board. Is the
engine responsible for resuming the normal search in case of a "ponderhit"?

Also keep in mind that some GUIs (specifically Chessbase) will display the
ponder move and ponder analysis from the engine. The GUI should have some way to
get this info.

3) "move" command - there's a sort of myth floating around that this provides
"state". It's nothing more than a difference in syntax - there's a simple 1-to-1
mapping between the GUI specifying the position in UCI, and doing so in
XCI/Winboard. Personally I wouldn't break the syntax, but anyway the adaptation
to an engine is minor here.

4) Draw & resign - nice (though small) value added. I've been working on my
engine for almost two years and still haven't even touched draw offers &
resigning - this is really a "professional" topic. Keep in mind also that the
GUI should be able to adjourn games as well - users are now used to a
centralized option in the GUI for this.

5) FRC support - nice value added.

Vas



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.