From: Fabian Fichter Date: Thu, 20 Feb 2020 22:11:06 +0000 (+0100) Subject: Support Three Kings Chess X-Git-Url: http://winboard.nl/cgi-bin?a=commitdiff_plain;h=ebae5d1c274897acf2f1ce8d4b6b4b35dcdf630a;p=fairystockfish.git Support Three Kings Chess Closes #79. --- diff --git a/src/variant.cpp b/src/variant.cpp index 9307ae5..3dfcf4a 100644 --- a/src/variant.cpp +++ b/src/variant.cpp @@ -245,6 +245,18 @@ namespace { v->extinctionPieceTypes = {PAWN}; return v; } + // Three Kings Chess + // https://github.com/cutechess/cutechess/blob/master/projects/lib/src/board/threekingsboard.h + Variant* threekings_variant() { + Variant* v = fairy_variant_base(); + v->remove_piece(KING); + v->add_piece(COMMONER, 'k'); + v->startFen = "knbqkbnk/pppppppp/8/8/8/8/PPPPPPPP/KNBQKBNK w - - 0 1"; + v->extinctionValue = -VALUE_MATE; + v->extinctionPieceTypes = {COMMONER}; + v->extinctionPieceCount = 2; + return v; + } Variant* horde_variant() { Variant* v = fairy_variant_base(); v->startFen = "rnbqkbnr/pppppppp/8/1PP2PP1/PPPPPPPP/PPPPPPPP/PPPPPPPP/PPPPPPPP w kq - 0 1"; @@ -872,6 +884,7 @@ void VariantMap::init() { add("codrus", codrus_variant()); add("extinction", extinction_variant()); add("kinglet", kinglet_variant()); + add("threekings", threekings_variant()); add("horde", horde_variant()); add("3check", threecheck_variant()); add("5check", fivecheck_variant());