From 59ef164406f96a7768b70a0381ca509665d62748 Mon Sep 17 00:00:00 2001 From: Fabian Fichter Date: Sat, 23 Feb 2019 10:32:43 +0100 Subject: [PATCH] Fix PSQT color symmetry for non-standard board sizes minishogi LLR: 2.99 (-2.94,2.94) [-10.00,5.00] Total: 584 W: 324 L: 259 D: 1 shogi LLR: 2.96 (-2.94,2.94) [-10.00,5.00] Total: 680 W: 363 L: 301 D: 16 --- src/psqt.cpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/src/psqt.cpp b/src/psqt.cpp index 78331c9..2c502fd 100644 --- a/src/psqt.cpp +++ b/src/psqt.cpp @@ -145,7 +145,7 @@ void init(const Variant* v) { psq[ pc][ s] = score + ( pt == KING ? KingBonus[std::min(r, RANK_8)][std::min(f, FILE_D)] : pt <= QUEEN ? Bonus[pc][std::min(r, RANK_8)][std::min(f, FILE_D)] : make_score(5, 5) * (2 * f + std::max(std::min(r, Rank(v->maxRank - r)), RANK_1) - 8)); - psq[~pc][~s] = -psq[pc][s]; + psq[~pc][rank_of(s) <= v->maxRank ? relative_square(BLACK, s, v->maxRank) : s] = -psq[pc][s]; } // pieces in pocket psq[ pc][SQ_NONE] = score + make_score(20, 20); -- 1.7.0.4