Изначально мы столкнулись с тем, что используемая библиотека chess.js
, хотя и является мощным инструментом для работы с шахматной логикой, не всегда гарантировала стопроцентное следование официальным правилам ФИДЕ. Особенно это касалось сложного механизма рокировки.
Библиотека могла, в некоторых конфигурациях или по умолчанию, допускать рокировку в ситуациях, строго запрещенных правилами ФИДЕ:
- Рокировка, при которой король начинал движение под шахом.
- Рокировка, при которой король пересекал поле, находящееся под атакой фигуры противника.