xboard and fifty move rule

Discussion of chess software programming and technical issues.

Moderators: bob, hgm, Harvey Williamson

Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
Post Reply
User avatar
Fabio Gobbato
Posts: 125
Joined: Fri Apr 11, 2014 8:45 am
Contact:

xboard and fifty move rule

Post by Fabio Gobbato » Fri Dec 11, 2015 12:41 pm

If I open xboard (without engines) and paste this position 8/8/2kr4/8/4R3/5K2/5B2/8 w - - 99 70 and then edit game the GUI doesn't detect the draw after a move but goes on until 102 half moves.

If I run xboard with an engine and I repeat the same operations the GUI works well.

The xboard version that I used is 4.8.0

It's not a big problem but maybe could be fixed.

User avatar
hgm
Posts: 23718
Joined: Fri Mar 10, 2006 9:06 am
Location: Amsterdam
Full name: H G Muller
Contact:

Re: xboard and fifty move rule

Post by hgm » Fri Dec 11, 2015 1:10 pm

I don't think adjudications are supposed to work, while you are editing a game. Perhaps apart from detecting mates (and I think it does that). 50-move draws must be claimed, and it is perfectly possible that players decide to play on after 50 reversible moves. It would be pretty annoying if you could not enter such a game in WinBoard.

User avatar
Fabio Gobbato
Posts: 125
Joined: Fri Apr 11, 2014 8:45 am
Contact:

Re: xboard and fifty move rule

Post by Fabio Gobbato » Fri Dec 11, 2015 6:51 pm

So why adjudication works if I edit a game with an engine launched and it doesn't work without?
It's not wrong adjudication if you can edit a game with a 101 half move counter.
I know it's not a problem because it does not affect the game play, but it seems wrong to me.

User avatar
hgm
Posts: 23718
Joined: Fri Mar 10, 2006 9:06 am
Location: Amsterdam
Full name: H G Muller
Contact:

Re: xboard and fifty move rule

Post by hgm » Fri Dec 11, 2015 8:03 pm

That is indeed strange. Are you sure it is XBoard that adjudicates the game, and not the engine? What exactly is the message that is printed?

User avatar
Fabio Gobbato
Posts: 125
Joined: Fri Apr 11, 2014 8:45 am
Contact:

Re: xboard and fifty move rule

Post by Fabio Gobbato » Sat Dec 12, 2015 9:27 am

With this command line:

Code: Select all

xboard
Then past position, edit game, and I made some moves, the counter in engine output reach 102 reversible plies and in the xboard window "{XBoard adjudication: 50-move rule}".

With this command line:

Code: Select all

xboard -fcp ./stockfish -fUCI
Then past position, edit game, and i made one move, the counter in engine output reach 100 reversible plies and in the xboard window "{Draw by fifty-move rule}".

You're right maybe is polyglot.

User avatar
hgm
Posts: 23718
Joined: Fri Mar 10, 2006 9:06 am
Location: Amsterdam
Full name: H G Muller
Contact:

Re: xboard and fifty move rule

Post by hgm » Sat Dec 12, 2015 10:57 am

OK, so the second case is not an adjudication by XBoard, as all such adjudications would have "XBoard adjudication:" in the message. That means it must come from Stockfish. And as Stockfish is UCI, that means it must come from Polyglot.

This actually sounds like a Polyglot bug: when in force mode, XBoard engines are not supposed to claim results, are they? It seems to me that a result claim is a kind of move. (Although I am not sure about mates: this is more like observing a fact that taking an action, as by FIDE rules the game would already have ended. XBoard uses engines in Edit Game (=force) mode to enforce the rules when regality testing is off. Which it would be in variants XBoard does not know the rules of. And then XBoard would not know whether a position is a checkmate either, so it would be very useful if the engine would point that out.)

Note that the number of reversible plies after which XBoard adjudicates a draw is a user-adjustable parameter. This because it is not the same in every variant (E.g. Makruk has a 64-move rule). And to allow people to test this logic in their engine: If the GUI would already adjudicate on move 50, the engine would never get an opportunity to claim, and you would not notice if its claim logic is defective. For this reason we distribute XBoard with the parameter configured to 51, rather than 50. (And the number of repeats at 6 instead of 3.) It would accept draw claims from the engine already at 50 moves, however. (Even in Makruk, which should be considered a bug. There should really be two adjustable parameters: claimMoves and adjudicateMoves.)

User avatar
Fabio Gobbato
Posts: 125
Joined: Fri Apr 11, 2014 8:45 am
Contact:

Re: xboard and fifty move rule

Post by Fabio Gobbato » Sat Dec 12, 2015 1:14 pm

I tried with Gaviota and EXchess: Gaviota adjudicated the game, EXchess didn't.

However it's not a real problem. Thank you.

User avatar
hgm
Posts: 23718
Joined: Fri Mar 10, 2006 9:06 am
Location: Amsterdam
Full name: H G Muller
Contact:

Re: xboard and fifty move rule

Post by hgm » Sat Dec 12, 2015 1:34 pm

This was Gaviota running as XBoard engine?


User avatar
hgm
Posts: 23718
Joined: Fri Mar 10, 2006 9:06 am
Location: Amsterdam
Full name: H G Muller
Contact:

Re: xboard and fifty move rule

Post by hgm » Sat Dec 12, 2015 1:48 pm

Perhaps I should make XBoard ignore draw claims from engines that are in force mode.

Post Reply