https://bugs.kde.org/show_bug.cgi?id=447665

Alexander Semke <alexander.se...@web.de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|REPORTED                    |RESOLVED
   Version Fixed In|                            |22.08
         Resolution|---                         |FIXED
      Latest Commit|                            |https://invent.kde.org/game
                   |                            |s/knights/commit/d7880a9ab4
                   |                            |643d2800e4a918b6b0f8aa93d89
                   |                            |999

--- Comment #2 from Alexander Semke <alexander.se...@web.de> ---
Git commit d7880a9ab4643d2800e4a918b6b0f8aa93d89999 by Alexander Semke, on
behalf of David Kaye.
Committed on 15/04/2022 at 08:05.
Pushed by asemke into branch 'master'.

Fixed incorrect promotion in the XBoard protocol.

To generate a move string including a pawn promotion, the Knights code starts
out with a generic call to move.cpp to create a string.
An example string returned is:
e7e8=Q
Then the string is modified in xboardprotocol.cpp to remove all capitals:
e7e8=q
This string is then sent to the chess engine.  But the xboard protocol
documentation requires the string to be:
e7e8q

Early on in chess engine development there were multiple formats to communicate
with chess engines.
Some utilzed an = sign between move and promotion piece.  But the Xboard system
slowly became the standard for communication.
Some chess engines will also accept the = sign in Xboard mode to be
historically compatable.
Specifically, the following engines will accept the = sign and will run:
GNUchess6, Crafty, Phalanx XXV and Gully2.

Other (usually newer) engines require the correct Xboard protocol. They will
stop play with an illegal move response if the move contains the = sign.
Some examples are:
Greko, Dreamer, Sloppy, Beowulf and Prophet4.

With this fix the behavior is more correct and all of the above engines accept
the pawn promotion move and continue to play.
FIXED-IN: 22.08

M  +2    -2    src/proto/xboardprotocol.cpp

https://invent.kde.org/games/knights/commit/d7880a9ab4643d2800e4a918b6b0f8aa93d89999

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to