From 1bb7fa69c874ad9bed2b6495e151188e2e4e882f Mon Sep 17 00:00:00 2001 From: Fabian Fichter Date: Sat, 15 Sep 2018 16:19:47 +0200 Subject: [PATCH] Add tic-tac-toe --- src/variant.cpp | 19 ++++++++++++++++++- 1 files changed, 18 insertions(+), 1 deletions(-) diff --git a/src/variant.cpp b/src/variant.cpp index 6fa1f9b..8da201a 100644 --- a/src/variant.cpp +++ b/src/variant.cpp @@ -407,11 +407,27 @@ void VariantMap::init() { v->promotionPieceTypes = {}; v->doubleStep = false; v->castling = false; - v->stalemateValue = -VALUE_MATE; + v->stalemateValue = VALUE_DRAW; v->immobilityIllegal = false; v->connectN = 4; return v; } (); + const Variant* tictactoe = [&]{ + Variant* v = new Variant(); + v->maxRank = RANK_3; + v->maxFile = FILE_C; + v->reset_pieces(); + v->add_piece(IMMOBILE_PIECE, 'p'); + v->startFen = "3/3/3[PPPPPpppp] w 0 1"; + v->pieceDrops = true; + v->promotionPieceTypes = {}; + v->doubleStep = false; + v->castling = false; + v->stalemateValue = VALUE_DRAW; + v->immobilityIllegal = false; + v->connectN = 3; + return v; + } (); // Add to UCI_Variant option add("chess", chess); @@ -447,6 +463,7 @@ void VariantMap::init() { add("clobber", clobber); add("breakthrough", breakthrough); add("connect4", connect4); + add("tictactoe", tictactoe); } void VariantMap::add(std::string s, const Variant* v) { -- 1.7.0.4