ChessGUI and Chess960

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

User avatar
Evert
Posts: 2929
Joined: Sat Jan 22, 2011 12:42 am
Location: NL

Re: ChessGUI and Chess960

Post by Evert »

Modern Times wrote: I don't know, I never use those GUIs for FRC. I suspect not many people do. Some use Arena, but I don't really know what works there or not either.
I never use ChessGUI or Arena, so I can't test what works there and what doesn't work there. All I can do is read the protocol specification and trust that it works.
ChessGUI has the best FRC support, and does not need to resort to adaptors. So that is what I use.
My main interest is in chess variants rather than FRC per se. So I use XBoard. Oh, and I don't have Windows.
I remember trying Sjaak and it didn't work, but that is the only FRC engine I've tried that didn't.
Ok. Next time that happens, could you consider sending me a bug report? I like to hear when things that are supposed to work don't.
As for your own engine, do what you feel is right, it is entirely up to you.
My own engine? Sjaak you mean? ;)
User avatar
hgm
Posts: 27808
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: ChessGUI and Chess960

Post by hgm »

Matthias Gemuh wrote:
hgm wrote:Mathias, why are you insisting that this is a 'new' approach? You must know (or can check easily) that this so-called 'new' approach has in fact been standard WB protocol since 2002 (and probably long before, but my knowledge does not go back that far).

It is you who uses a new approach. And today is the first time I hear about it. Why quarrel about something so obvious and trivial? It can only distracts from the real issue, and delay its resolution.
If it is that old, then why is it supported by only 3 FRC engines (plus yours ?) ?

Note that all other FRC engines run fine under ChessGUI.
I have no idea (and also no FRC engine, btw. :) ). But I hope you will agree that what is oldest is a fact and not something that should be decided by popular vote.

From the GNU archives: An excerpt from engine-intf included with WinBoard 4.0.0 (released 21-6-1998, when it still was a .txt file rather than an html file):

Code: Select all

MOVE
  See below for the syntax of moves.  If the move is illegal, print an
  error message; see the section "Commands from the engine to xboard".
  If the move is legal and in turn, make it.  If not in force mode,
  stop the opponent's clock, start the engine's clock, start thinking,
  and eventually make a move.

When xboard sends your engine a move, it always sends coordinate
algebraic notation.  There is no command name; the notation is just
sent as a line by itself.  Examples:

Normal moves:            e2e4
Pawn promotion:          e7e8q
Castling:                e1g1, e1c1, e8g8, e8c8
Bughouse drop:           P@h3
ICS Wild 0/1 castling:   d1f1, d1b1, d8f8, d8b8  (future)
FischerRandom castling:  o-o, o-o-o  (future)

If your engine can't handle this kind of output, change the routine
SendMoveToProgram in backend.c to send the kind of notation you need.
If you define SAN_TO_PROGRAM, your engine will be sent Standard
Algebraic Notation (as defined by the PGN standard); for example, e4,
Nf3, exd5, Bxf7+, Qxf7#, e8=Q, O-O, or P@h3.  (The P@h3 notation is a
nonstandard extension to SAN.)  In the future, I may make
SAN_TO_PROGRAM a runtime option if there is demand for it.

At present, xboard does not support play of ICS Wild 0/1 by a chess
engine.  It does not support FischeRandom chess at all.  This may
change in the future.  At that time commands will be added to tell
the engine what chess variant is being played, and for the engine to
tell xboard what variants it supports.
User avatar
Evert
Posts: 2929
Joined: Sat Jan 22, 2011 12:42 am
Location: NL

Re: ChessGUI and Chess960

Post by Evert »

Ok, so I'll mention what I will and will not do.

1. I will accept AHah and KQkq for castling moves in FRC. I already should, but I don't (I mis-read the protocol specs as saying XBoard will send KQkq when the king and rooks are in their normal positions and AHah when they are not). This is a bug in Sjaak, I'll fix it.

2. I may accept KxR (in long-algebraic) as a castling move as an extension, however that doesn't help if the GUI doesn't accept O-O

3. I will not send castling moves as KxR since this is contrary to the written version of the protocol, and seems likely to break the GUI I use for testing myself.

My understanding is that ChessGUI understands (and sends?) O-O when setting KQkq castling flags, so hopefully me fixing (1) takes care of that. Personally I don't see why ChessGUI wouldn't support AHah-style castling flags alongside O-O castling notation (and if I've misunderstood something and it does in fact do this, do tell), but that's not my concern.
TonyJH
Posts: 183
Joined: Tue Jun 20, 2006 4:41 am
Location: USA

Re: ChessGUI and Chess960

Post by TonyJH »

Does anyone have the list of XBoard FRC engines that use KxR notation? I'm curious how many there are.
User avatar
hgm
Posts: 27808
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: ChessGUI and Chess960

Post by hgm »

Alexander Schmidt wrote:But in the past you also mentioned the support of the wrong FRC protocol a bug.
Support of the wrong protocol is never a bug, but lack of support for the agreed protocol usually is considered such. Do you really expect me to say "this is a great feature. It prevents things from working, and in fact wrecks them to an extend that perfectly correct software cannot be used at all, but it is really a fantastic achievement"?
I know that there has never been a standard,
No, sorry, but you are again mis-informed. As you can see from my other post there was a standard already in 1998. Engines like Sjaak and TJchess simply follow that standard, which Matthias now suddenly calls a 'new standard'.
and you know that FRC was handeled in a different way as now. We should stop the beancounting of what a standars is and what not. If you re read my post you will also see that I wrote you had good reasons to change the standard.
Indeed. But in fact I did not change anything...
I asked you to get together with Matthias to solve the problem. You are also someone who doesn't beat around the bush, so why don't you stop acting like a primadonna :)
I am sure Matthias and I can work out things fine without your advice. Especially since the latter is based on so many misconceptions. If you want to help, at least get your facts straight, or it is unlikely to do any good...

And note that this can't be just a cozy get-together betwen Mathias and me. There are other GUIs that support FRC and WB protocol, and they are affected too if we change the standard in a non-backward-compatible way, as Matthias insists on. Plus that it could break many existing engines whose development has ceased. I would be surprised if Pulsar would use KxR notation, for instance.
Last edited by hgm on Sun Feb 03, 2013 8:55 pm, edited 1 time in total.
User avatar
hgm
Posts: 27808
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: ChessGUI and Chess960

Post by hgm »

Evert wrote:2. I may accept KxR (in long-algebraic) as a castling move as an extension, however that doesn't help if the GUI doesn't accept O-O
Come to think of it, I don't understand the fuss. There are many WinBoard engines that send SAN to the GUI. (To my chagrin there even is a feature san=1 to make the GUI do the same.) SAN for castling is O-O or O-O-O even in FRC. So it seems to me a GUI should understand these notations no matter what. If not, it would break much more than just running a few FRC engines...

Note that I never cared very much for the O-O / O-O-O standard myself. It seems silly to use SAN notation when all other moves are sent in long algebraic. But when there is a standard, I feel obliged to obey it.
Last edited by hgm on Sun Feb 03, 2013 8:51 pm, edited 2 times in total.
Modern Times
Posts: 3550
Joined: Thu Jun 07, 2012 11:02 pm

Re: ChessGUI and Chess960

Post by Modern Times »

Matthias Gemuh wrote:

There seems to be a total of 3 engines that use the new approach.
2 of them are Sjaak and TJchess, whose authors have posted in this thread.
Maybe TJchess goes the new way only for variants other than FRC.

The author of the 3rd engine may not be aware of the different approach.


Matthias.
OK - but TJChess runs perfectly under ChessGUI :)
User avatar
Matthias Gemuh
Posts: 3245
Joined: Thu Mar 09, 2006 9:10 am

Re: ChessGUI and Chess960

Post by Matthias Gemuh »

hgm wrote:
Matthias Gemuh wrote:
If it is that old, then why is it supported by only 3 FRC engines (plus yours ?) ?

Note that all other FRC engines run fine under ChessGUI.
I have no idea (and also no FRC engine, btw. :) ). But I hope you will agree that what is oldest is a fact and not something that should be decided by popular vote.

From the GNU archives: An excerpt from engine-intf included with WinBoard 4.0.0 (released 21-6-1998, when it still was a .txt file rather than an html file):

Code: Select all

MOVE
  See below for the syntax of moves.  If the move is illegal, print an
  error message; see the section "Commands from the engine to xboard".
  If the move is legal and in turn, make it.  If not in force mode,
  stop the opponent's clock, start the engine's clock, start thinking,
  and eventually make a move.

...
What you quote is unrelated to AHah.

Alexander is right in saying your approach has its merits.

The many variants you have introduced into Winboard necessitate adjustments of standards. ChessGUI does not intend to obstruct your efforts with variants. It is not by chance that the 2 authors in this thread supporting your adjustments are authors of multi-variant engines. I shall try to see whether the infrastructure of ChessGUI has room for the adjustments.

Matthias.
My engine was quite strong till I added knowledge to it.
http://www.chess.hylogic.de
User avatar
Matthias Gemuh
Posts: 3245
Joined: Thu Mar 09, 2006 9:10 am

Re: ChessGUI and Chess960

Post by Matthias Gemuh »

TonyJH wrote:Does anyone have the list of XBoard FRC engines that use KxR notation? I'm curious how many there are.
3 as I said, using AHah.
Last edited by Matthias Gemuh on Sun Feb 03, 2013 9:07 pm, edited 1 time in total.
My engine was quite strong till I added knowledge to it.
http://www.chess.hylogic.de
User avatar
hgm
Posts: 27808
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: ChessGUI and Chess960

Post by hgm »

OK, I am happy to hear that. It seems XBoard already supports KxR notation by accident.

It is a point of worry, though, that many engines might not work on other GUIs than WinBoard and ChessGUI, unless they all implement the dual standard. But it seems the damage is already done...

And yes, this is completely unrelated to the FEN AHah stuff. But that remark confuses me. I thought this thread was exclusively about the KxR move notation. :?
Last edited by hgm on Sun Feb 03, 2013 9:08 pm, edited 1 time in total.