Skip to content

Conversation

@alwey
Copy link
Contributor

@alwey alwey commented Jan 29, 2022

This PR consists of two parts:

  1. An addition to XboardEngine (CECP engine forfeits on claim of illegal move #411) leads to some problems. Older CECP engines do not understand many of the version 2 protocol keywords. During initialisation they claim "Illegal Move" when given an unknown command. This causes game terminations even before the first move.
    This PR Introduces the flag m_comPhase, an enumeration to discriminate the initialisation phase from the phase of game play.
    Now "Illegal move" claims by an CECP engine are only checked during the game phase.

  2. Older CECP engines send their resignation or a result claim in a different format. The second patch of this PR converts the older format into new result strings and calls XboardEngine::parseLine again. The new flag m_parserMode is used to leave out these additional tests for older result codes if a version 2 engine has been initialised.

Resolves #645

alwey added 2 commits January 29, 2022 14:07
to avoid problems with illegal move claims by older engines during
initialisation
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Problem with old xboard engines sending resign w/o result

1 participant