}
]
};
- ['r', 'b', 'm', 'q'].forEach(p => res[p].moves = knightSpec.moves);
+ ['p', 'r', 'b', 'm', 'q'].forEach(p => res[p].moves = knightSpec.moves);
return res;
}
return [];
const color = moves[0].vanish[0].c;
const lastRank = (color == 'w' ? 0 : this.size.x - 1);
+ const forward = (color == 'w' ? -1 : 1);
const noKnightPromotions = moves.filter(m => {
return (
- m.end.x != lastRank ||
+ (m.end.x - m.start.x) * forward > 0 &&
(
- Math.abs(m.start.x - m.end.x) <= 1 &&
- Math.abs(m.start.y - m.end.y) <= 1
+ m.end.x != lastRank ||
+ (
+ Math.abs(m.start.x - m.end.x) <= 1 &&
+ Math.abs(m.start.y - m.end.y) <= 1
+ )
)
);
});
-<p>TODO</p>
+<p>
+ In addition to their usual abilities, pawns and non-royal pieces (everything
+ but the king) may make non-capturing knight moves.
+ The Mammoth can leap two squares in any direction.
+ Pawns move forward only.
+</p>
+
+<ul>
+ <li>A pawn cannot promote with a knight move.</li>
+ <li>No en passant captures.</li>
+</ul>
+
+<a href="https://www.chessvariants.com/diffmove.dir/balaklava.html">
+ chessvariants page.
+</a>
+
+<p class="author">Gianluca Vecchi (1994).</p>
--- /dev/null
+p.boxed
+ | Your pieces remain in an undefined state until they are moved.
+
+p
+ | Bario is a chess variant invented by Panos Louridas in 1998.
+ a(href="https://www.bario-chess-checkers-chessphotography-spaceart.de/")
+ | His website
+ | contains many examples and explanations.
+ | See also the discussion
+ a(href="https://www.chessvariants.com/index/listcomments.php?order=DESC&itemid=Bario")
+ | on chessvariants.com
+ | .
+
+figure
+ img.img-center(src="/variants/Bario/chessboard2.jpg" style="width:75%")
+ figcaption.text-center.
+ [With author's permission]
+ Undefined pieces on first ranks.
+
+p.
+ Queens, rooks, bishops and knights begin the game in a reserve below
+ the board, because their location isn't determined yet.
+ At each turn, you can either move something already defined on the board, or
+ol
+ li move a piece from your reserve to any question mark, and then
+ li move the now defined piece on the board.
+
+p An undefined piece gives check if some specialization giving check exists.
+
+figure.diagram-container
+ .diagram
+ | fen:uuuuu1uk/p2p1qp1/1p6/7p/7P/5N2/PP1P1PP1/UUUKU1UU:
+ figcaption The white king cannot move, a rook might be on c8 or e8
+
+h4 Details, special cases
+
+p.
+ At the first move, you must select a square for the king anywhere on
+ the first rank — preferably in a corner. This deviates from the
+ original intention of the author, but this way you will not need to castle
+ later in the game. Click on a square to place the king.
+
+p.
+ If after your move all your pieces are defined (and weren't before), then
+ all pieces on board revert to undefined state, unless:
+ul
+ li.
+ all your pieces (board + reserve) are now of the same type,
+ in which case none is put back in reserve, or
+ li.
+ all opponent's pieces are of the same type, in which case
+ they also remain defined.
+
+figure.diagram-container
+ .diagram.diag12
+ | fen:uuu1kuuu/2p5/2n5/1p1ppppp/p4PPP/3N3Q/PPPPP1BB/1RRUK3:
+ .diagram.diag22
+ | fen:uuu1kuuu/2p5/2u5/1p1ppppp/p4PPP/3UU2U/PPPPP1UU/1UU1K3:
+ figcaption.
+ Before and after knight definition on d1 (moving to e3)
+
+p.
+ If one of your undefined pieces is captured, you first have to choose which
+ one was captured from the reserve: place it at the capture location.