Double atomic PSQT bonus
authorFabian Fichter <ianfab@users.noreply.github.com>
Fri, 19 Mar 2021 12:10:44 +0000 (13:10 +0100)
committerFabian Fichter <ianfab@users.noreply.github.com>
Fri, 19 Mar 2021 12:10:44 +0000 (13:10 +0100)
atomic STC
LLR: 2.94 (-2.94,2.94) [0.00,10.00]
Total: 2344 W: 840 L: 733 D: 771
http://www.variantfishtest.org:6543/tests/view/605270806e23db669974eac6

atomic LTC
LLR: 2.97 (-2.94,2.94) [0.00,10.00]
Total: 1767 W: 615 L: 517 D: 635
http://www.variantfishtest.org:6543/tests/view/605300406e23db669974ead2

src/psqt.cpp

index 1a2d1ae..53d3f4e 100644 (file)
@@ -226,7 +226,7 @@ void init(const Variant* v) {
           Rank r = rank_of(s);
           psq[ pc][s] = score + (  pt == PAWN  ? PBonus[std::min(r, RANK_8)][std::min(file_of(s), FILE_H)]
                                  : pt == KING  ? KingBonus[std::clamp(Rank(r - pawnRank + 1), RANK_1, RANK_8)][std::min(f, FILE_D)] * (1 + v->capturesToHand)
-                                 : pt <= QUEEN ? Bonus[pc][std::min(r, RANK_8)][std::min(f, FILE_D)]
+                                 : pt <= QUEEN ? Bonus[pc][std::min(r, RANK_8)][std::min(f, FILE_D)] * (1 + v->blastOnCapture)
                                  : pt == HORSE ? Bonus[KNIGHT][std::min(r, RANK_8)][std::min(f, FILE_D)]
                                  : pt == COMMONER && v->extinctionValue == -VALUE_MATE && v->extinctionPieceTypes.find(COMMONER) != v->extinctionPieceTypes.end() ? KingBonus[std::clamp(Rank(r - pawnRank + 1), RANK_1, RANK_8)][std::min(f, FILE_D)]
                                  : isSlider    ? make_score(5, 5) * (2 * f + std::max(std::min(r, Rank(v->maxRank - r)), RANK_1) - v->maxFile - 1)