Tweak piece values for drop variants
authorFabian Fichter <ianfab@users.noreply.github.com>
Mon, 23 Dec 2019 12:13:27 +0000 (13:13 +0100)
committerFabian Fichter <ianfab@users.noreply.github.com>
Mon, 23 Dec 2019 12:13:27 +0000 (13:13 +0100)
and variants where check is prohibited.

crazyhouse STC (yellow)
LLR: -2.97 (-2.94,2.94) [0.00,10.00]
Total: 16416 W: 8023 L: 7887 D: 506
http://www.variantfishtest.org:6543/tests/view/5dfe8f2f6e23db1ffe4a28ee

crazyhouse LTC
LLR: 2.95 (-2.94,2.94) [0.00,10.00]
Total: 2507 W: 1275 L: 1140 D: 92
http://www.variantfishtest.org:6543/tests/view/5dff13b16e23db1ffe4a28f3

racingkings STC
LLR: 2.98 (-2.94,2.94) [-10.00,5.00]
Total: 4507 W: 1524 L: 1501 D: 1482
http://www.variantfishtest.org:6543/tests/view/5dffdcfe6e23db1ffe4a28fb

racingkings LTC
LLR: 2.97 (-2.94,2.94) [-10.00,5.00]
Total: 1150 W: 362 L: 320 D: 468
http://www.variantfishtest.org:6543/tests/view/5dffdcf26e23db1ffe4a28f9

src/psqt.cpp

index 3242a8f..8c2cf0f 100644 (file)
@@ -150,8 +150,8 @@ void init(const Variant* v) {
 
       // For drop variants, halve the piece values
       if (v->capturesToHand || !v->checking)
-          score = make_score(mg_value(score) * int(EndgameLimit) / (2 * EndgameLimit + mg_value(score)),
-                             eg_value(score) * int(EndgameLimit) / (2 * EndgameLimit + eg_value(score)));
+          score = make_score(mg_value(score) * 3500 / (7000 + mg_value(score)),
+                             eg_value(score) * 3500 / (7000 + eg_value(score)));
       else if (pt == strongestPiece)
               score += make_score(std::max(QueenValueMg - PieceValue[MG][pt], VALUE_ZERO) / 20,
                                   std::max(QueenValueEg - PieceValue[EG][pt], VALUE_ZERO) / 20);