More documentation in variants.ini (close #30)
authorFabian Fichter <ianfab@users.noreply.github.com>
Fri, 18 Oct 2019 14:13:03 +0000 (16:13 +0200)
committerFabian Fichter <ianfab@users.noreply.github.com>
Fri, 18 Oct 2019 14:13:03 +0000 (16:13 +0200)
src/variants.ini

index 680c84e..8947091 100644 (file)
 # startFen: FEN of starting position (default: rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1)
 # promotionRank: relative rank required to reach for promotion [Rank] (default: 8)
 # promotionPieceTypes: letters of promotion piece options (default: nbrq)
-# sittuyinPromotion: [bool] (default: false)
-# promotionLimit:
-# promotedPieceType:
-# piecePromotionOnCapture: [bool] (default: false)
-# mandatoryPawnPromotion: [bool] (default: true)
-# mandatoryPiecePromotion: [bool] (default: false)
-# pieceDemotion: [bool] (default: false)
-# endgameEval: [bool] (default: false)
+# sittuyinPromotion: enable Sittuyin-style pawn promotion [bool] (default: false)
+# promotionLimit: maximum number of pieces of a type, e.g., q:1 r:2 (default: <none>)
+# promotedPieceType: mapping between unpromoted and promoted piece types, e.g., p:g s:g (default: <none>)
+# piecePromotionOnCapture: piece promotion only allowed on captures (e.g., micro shogi) [bool] (default: false)
+# mandatoryPawnPromotion: pawn promotion is mandatory [bool] (default: true)
+# mandatoryPiecePromotion: piece promotion is mandatory [bool] (default: false)
+# pieceDemotion: enable demotion of pieces (e.g., Kyoto shogi) [bool] (default: false)
+# endgameEval: enable special endgame evaluation (for very chess-like variants only) [bool] (default: false)
 # doubleStep: enable pawn double step [bool] (default: true)
-# doubleStepRank: [Rank] (default: <none>)
-# firstRankDoubleSteps: [bool] (default: false)
+# doubleStepRank: relative rank from where pawn double steps are allowed [Rank] (default: 2)
+# firstRankDoubleSteps: enable pawn double steps from first rank [bool] (default: false)
 # castling: enable castling [bool] (default: true)
-# castlingDroppedPiece: [bool] (default: false)
-# castlingKingsideFile: [File] (default: g)
-# castlingQueensideFile: [File] (default: c)
+# castlingDroppedPiece: enable castling with dropped rooks/kings [bool] (default: false)
+# castlingKingsideFile: destination file of king after kingside castling [File] (default: g)
+# castlingQueensideFile: destination file of king after queenside castling [File] (default: c)
 # castlingRank: relative rank of castling [Rank] (default: 1)
 # checking: allow checks [bool] (default: true)
-# mustCapture: [bool] (default: false)
-# mustDrop: [bool] (default: false)
-# pieceDrops: [bool] (default: false)
-# dropLoop: [bool] (default: false)
-# capturesToHand: [bool] (default: false)
-# firstRankDrops: [bool] (default: false)
-# dropOnTop: [bool] (default: false)
-# whiteDropRegion: [Bitboard]
-# blackDropRegion: [Bitboard]
-# sittuyinRookDrop: [bool] (default: false)
-# dropOppositeColoredBishop: [bool] (default: false)
-# dropPromoted: [bool] (default: false)
+# mustCapture: captures are mandatory [bool] (default: false)
+# mustDrop: drops are mandatory (e.g., for Sittuyin setup phase) [bool] (default: false)
+# pieceDrops: enable piece drops [bool] (default: false)
+# dropLoop: captures promoted pieces are not demoted [bool] (default: false)
+# capturesToHand: captured pieces are go to opponent's hand [bool] (default: false)
+# firstRankDrops: allow pawn drops to first rank [bool] (default: false)
+# dropOnTop: piece drops need to be on top of pieces on board (e.g., for connect4) [bool] (default: false)
+# whiteDropRegion: restrict region for white piece drops [Bitboard]
+# blackDropRegion: restrict region for black piece drops [Bitboard]
+# sittuyinRookDrop: restrict region of rook drops to first rank [bool] (default: false)
+# dropOppositeColoredBishop: dropped bishops have to be on opposite-colored squares [bool] (default: false)
+# dropPromoted: pieces may be dropped in promoted state [bool] (default: false)
 # shogiDoubledPawn: allow shogi pawns to be doubled [bool] (default: true)
-# immobilityIllegal: [bool] (default: false)
+# immobilityIllegal: pieces may not move to squares where they can never move from [bool] (default: false)
 # gating: maintain squares on backrank with extra rights in castling field of FEN [bool] (default: false)
 # seirawanGating: allow gating of pieces in hand like in S-Chess, requires "gating = true" [bool] (default: false)
 # cambodianMoves: enable special moves of cambodian chess, requires "gating = true" [bool] (default: false)
-# nMoveRule: [int] (default: 50)
-# nFoldRule: [int] (default: 3)
-# nFoldValue: [Value] (default: draw)
-# nFoldValueAbsolute: [bool] (default: false)
-# perpetualCheckIllegal: [bool] (default: false)
-# stalemateValue: [Value] (default: draw)
-# checkmateValue: [Value] (default: loss)
-# shogiPawnDropMateIllegal: [bool] (default: false)
-# shatarMateRule: [bool] (default: false)
-# bareKingValue: [Value] (default: <none>)
-# extinctionValue: [Value] (default: <none>)
-# bareKingMove: [bool] (default: false)
-# extinctionPieceTypes:
-# flagPiece: [PieceType] (default: <none>)
-# whiteFlag: [Bitboard] (default: <none>)
-# blackFlag: [Bitboard] (default: <none>)
-# flagMove: [bool] (default: false)
-# checkCounting: [bool] (default: false)
+# nMoveRule: move count for 50/n-move rule [int] (default: 50)
+# nFoldRule: move count for 3/n-fold repetition rule [int] (default: 3)
+# nFoldValue: result in case of 3/n-fold repetition [Value] (default: draw)
+# nFoldValueAbsolute: result in case of 3/n-fold repetition is from white's point of view [bool] (default: false)
+# perpetualCheckIllegal: prohibit perpetual checks [bool] (default: false)
+# stalemateValue: result in case of stalemate [Value] (default: draw)
+# checkmateValue: result in case of checkmate [Value] (default: loss)
+# shogiPawnDropMateIllegal: prohibit checkmate via shogi pawn drops [bool] (default: false)
+# shatarMateRule: enable shatar mating rules [bool] (default: false)
+# bareKingValue: result when player only has a lone/bare king [Value] (default: <none>)
+# extinctionValue: result when one of extinctionPieceTypes is extinct [Value] (default: <none>)
+# bareKingMove: allow additional move by opponent after lone/bare king position [bool] (default: false)
+# extinctionPieceTypes: list of piece types for extinction rules, e.g., pnbrq (* means all) (default: <none>)
+# flagPiece: piece type for capture the flag win rule [PieceType] (default: <none>)
+# whiteFlag: white's target region for capture the flag win rule [Bitboard] (default: <none>)
+# blackFlag: black's target region for capture the flag win rule [Bitboard] (default: <none>)
+# flagMove: black gets one more move after white captures the flag [bool] (default: false)
+# checkCounting: enable check count win rule (check count is communicated via FEN, see 3check) [bool] (default: false)
 # connectN: number of aligned pieces for win [int] (default: 0)
 # countingRule: enable counting rules [CountingRule] (default: <none>)