UCI & Chess960...

Discussion of chess software programming and technical issues.

Moderator: Ras

User avatar
Steve Maughan
Posts: 1315
Joined: Wed Mar 08, 2006 8:28 pm
Location: Florida, USA

UCI & Chess960...

Post by Steve Maughan »

I'd like Maverick to be able to play FRC / 960 chess. I found SMK's description of how to implement FRC using UCI. It seems quite straightforward. However, I do recall discussions on this forum about different implementations - maybe of the FEN - not sure.

So my question is - is there anything else I need to know to maximize the engine's UCI compliance with Chess960 GUIs?

Thanks,

Steve
Chess960
========

UCI could easily be extended to support Chess960 (also known as Fischer Random Chess).

The engine has to tell the GUI that it is capable of playing Chess960 and the GUI has to tell
the engine that is should play according to the Chess960 rules.
This is done by the special engine option UCI_Chess960. If the engine knows about Chess960
it should send the command 'option name UCI_Chess960 type check default false'
to the GUI at program startup.
Whenever a Chess960 game is played, the GUI should set this engine option to 'true'.

Castling is different in Chess960 and the white king move when castling short is not always e1g1.
A king move could both be the castling king move or just a normal king move.
This is why castling moves are sent in the form king "takes" his own rook.
Example: e1h1 for the white short castle move in the normal chess start position.

In EPD and FEN position strings specifying the castle rights with w and q is not enough as
there could be more than one rook on the right or left side of the king.
This is why the castle rights are specified with the letter of the castle rook's line.
Upper case letters for white's and lower case letters for black's castling rights.
Example: The normal chess position would be:
rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w AHah -
User avatar
hgm
Posts: 28454
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: UCI & Chess960...

Post by hgm »

I think you should have no problems on any GUI if you stick to the standard, except on Arena, where the Chess960 UCI support seems fundamentally broken. I heard people could only run UCI Ches960 engines under Arena by using Polyglot to run them as WB engines. And even that would be broken if you try to play from setup positions (but at least it works for starting positions, and castlings won't crash the engine or hang the GUI).

I don't think there is much you could do about that, as an engine author. I don't think you should try to do anything about it.
User avatar
Steve Maughan
Posts: 1315
Joined: Wed Mar 08, 2006 8:28 pm
Location: Florida, USA

Re: UCI & Chess960...

Post by Steve Maughan »

Thanks H.G, - I think it probably was discussion about Arena support for FRC that I vaguely recollect. I agree - the engine authors should not need to do anything if the GUI is not compliant.

Forward,

Steve