Duck Chess

Discussion of chess software programming and technical issues.

Moderator: Ras

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

Re: Duck Chess

Post by hgm »

MTaktikos wrote: Sun Dec 04, 2022 4:09 pm Made a test vs DuckSlayer. Although DuckSlayer reaches always the better positions, luckily for MayhemDuck he still makes illegal moves (castling 0-0-0 by jumping with the Rook a8 over the Duck, or by not moving the Ra8 at all and dropping the Duck on d8 where after the 0-0-0 the Rook belongs). And now this illegal moves don't produce a crash of MayhemDuck, but defeat of DuckSlayer by Winboard adjucation.
I uploaded a version of DuckSlayer that should fix the 'blocked-castling' problem. It is at http://hgm.nubati.net/ducks.exe . Didn't have time to test it.
MTaktikos
Posts: 59
Joined: Fri Oct 25, 2019 7:58 pm
Full name: Michael Taktikos

Re: Duck Chess

Post by MTaktikos »

TonyJH wrote: Mon Dec 05, 2022 8:46 pm Congrats to FSF devs! Thanks for posting the game.

I don't know if you tried setting the number of cores for TJchessDuck, but currently, TJchessDuck can use a maximum of 16 cores. But I usually don't set it higher than the number of physical cores available.
Thank you.
Had set in Winboard for TJChessDuck 20 threads and 2048 MB RAM, the same settings as for FSF. If the engine can use less threads than the setting in Winboard, then the maximum is taken, in the case of TJChess 16 threads
MTaktikos
Posts: 59
Joined: Fri Oct 25, 2019 7:58 pm
Full name: Michael Taktikos

Re: Duck Chess

Post by MTaktikos »

hgm wrote: Mon Dec 05, 2022 8:52 pm I uploaded a version of DuckSlayer that should fix the 'blocked-castling' problem. It is at http://hgm.nubati.net/ducks.exe . Didn't have time to test it.
Thank you, HG. Will test it in this week.
BTW will send you also a copy of the FSFDuck compile, hope that you can find out which syntax differences, especially in promotions, are the problem that FSFDuck is still not compatible with the Winboard GUI
TonyJH
Posts: 183
Joined: Tue Jun 20, 2006 4:41 am
Location: USA

Re: Duck Chess

Post by TonyJH »

MTaktikos wrote: Mon Dec 05, 2022 9:54 pm
TonyJH wrote: Mon Dec 05, 2022 8:46 pm Congrats to FSF devs! Thanks for posting the game.

I don't know if you tried setting the number of cores for TJchessDuck, but currently, TJchessDuck can use a maximum of 16 cores. But I usually don't set it higher than the number of physical cores available.
Thank you.
Had set in Winboard for TJChessDuck 20 threads and 2048 MB RAM, the same settings as for FSF. If the engine can use less threads than the setting in Winboard, then the maximum is taken, in the case of TJChess 16 threads
It seems I made a mistake when I implemented the "cores" command. TJchessDuck ignores the command if the number of cores is higher than it can support. So for cores set to 20, it will use only 1 core. To workaround, set cores to 16 or lower for now. I can upload a fixed version later.
TonyJH
Posts: 183
Joined: Tue Jun 20, 2006 4:41 am
Location: USA

Re: Duck Chess

Post by TonyJH »

New version of TJchessDuck with "cores" command fix. Also increased supported number of cores to 32.
http://tonyjh.com/chess/TJchessDuck_0.2.zip
MTaktikos
Posts: 59
Joined: Fri Oct 25, 2019 7:58 pm
Full name: Michael Taktikos

Re: Duck Chess

Post by MTaktikos »

TonyJH wrote: Tue Dec 06, 2022 6:37 am New version of TJchessDuck with "cores" command fix. Also increased supported number of cores to 32.
http://tonyjh.com/chess/TJchessDuck_0.2.zip
Thanks, will start tomorrow a new match, both engines with 20 threads (BTW the xboard command "cores" that I used has the meaning of "threads". Obviously this xboard command is from a time before hyperthreading was invented)
TonyJH
Posts: 183
Joined: Tue Jun 20, 2006 4:41 am
Location: USA

Re: Duck Chess

Post by TonyJH »

MTaktikos wrote: Mon Dec 05, 2022 10:02 pm Thank you, HG. Will test it in this week.
BTW will send you also a copy of the FSFDuck compile, hope that you can find out which syntax differences, especially in promotions, are the problem that FSFDuck is still not compatible with the Winboard GUI
I tried compiling and running FSF duck version. A couple problems I saw in xboard mode for duck variant. (Assuming I'm using it correctly.)
1) FSF is sending the "setup" command to xboard/winboard when it shouldn't. Looks like this is due to "duck" not in std::set<string> standard_variants.
2) When FSF sends its own move to xboard/winboard, it is sending (for example): "move d2d4,d4f6" on one line.
It should send this as two lines:
move d2d4,
move d4d6

I hacked the FSF code to try fixing these and then it was able to play out a full game in Winboard. There were no promotions in the game, though, so I don't know if it's fully working.
TonyJH
Posts: 183
Joined: Tue Jun 20, 2006 4:41 am
Location: USA

Re: Duck Chess

Post by TonyJH »

After a little more testing: looks like FSF reported a false illegal move error when its opponent promoted a pawn.
MTaktikos
Posts: 59
Joined: Fri Oct 25, 2019 7:58 pm
Full name: Michael Taktikos

Re: Duck Chess

Post by MTaktikos »

TonyJH wrote: Tue Dec 06, 2022 6:29 pm After a little more testing: looks like FSF reported a false illegal move error when its opponent promoted a pawn.
I think in your corrected FSFDuck version, the promotion looks like this (for promotion in the b-line to a Queen and then dropping the Duck to empty square c8):

move b7b8q,
move b8c8

while Winboard expects this:

move b7b8,
move b8c8q

This part was once correct and, unfortunately by my intervention, was changed to the wrong syntax,
https://github.com/ianfab/Fairy-Stockfi ... 1ab763fc02

If you in your corrected FSFDuck code, revert this commit to the former version, probably (hopefully) it will be fully Winboard compatible.
TonyJH
Posts: 183
Joined: Tue Jun 20, 2006 4:41 am
Location: USA

Re: Duck Chess

Post by TonyJH »

MTaktikos wrote: Tue Dec 06, 2022 8:47 pm
TonyJH wrote: Tue Dec 06, 2022 6:29 pm After a little more testing: looks like FSF reported a false illegal move error when its opponent promoted a pawn.
I think in your corrected FSFDuck version, the promotion looks like this (for promotion in the b-line to a Queen and then dropping the Duck to empty square c8):

move b7b8q,
move b8c8

while Winboard expects this:

move b7b8,
move b8c8q

This part was once correct and, unfortunately by my intervention, was changed to the wrong syntax,
https://github.com/ianfab/Fairy-Stockfi ... 1ab763fc02

If you in your corrected FSFDuck code, revert this commit to the former version, probably (hopefully) it will be fully Winboard compatible.
You may be right, but isn't that piece of code only affecting FSF's move output format (to xboard) and not how it parses moves received (from xboard)? Or maybe it affects both, I don't really know without looking further.