@@ -30,21 +30,21 @@ namespace {
3030 #define S (mg, eg ) make_score(mg, eg)
3131
3232 // Pawn penalties
33- constexpr Score Backward = S( 8 , 27 );
34- constexpr Score Doubled = S(11 , 55 );
35- constexpr Score Isolated = S( 5 , 17 );
36- constexpr Score WeakLever = S( 2 , 54 );
37- constexpr Score WeakUnopposed = S(15 , 25 );
33+ constexpr Score Backward = S( 8 , 25 );
34+ constexpr Score Doubled = S(10 , 55 );
35+ constexpr Score Isolated = S( 3 , 15 );
36+ constexpr Score WeakLever = S( 3 , 55 );
37+ constexpr Score WeakUnopposed = S(13 , 25 );
3838
3939 // Bonus for blocked pawns at 5th or 6th rank
40- constexpr Score BlockedPawn[2 ] = { S (-13 , -4 ), S (-4 , 3 ) };
40+ constexpr Score BlockedPawn[2 ] = { S (-13 , -4 ), S (-5 , 2 ) };
4141
4242 constexpr Score BlockedStorm[RANK_NB] = {
4343 S (0 , 0 ), S (0 , 0 ), S (76 , 78 ), S (-10 , 15 ), S (-7 , 10 ), S (-4 , 6 ), S (-1 , 2 )
4444 };
4545
4646 // Connected pawn bonus
47- constexpr int Connected[RANK_NB] = { 0 , 7 , 8 , 11 , 24 , 45 , 85 };
47+ constexpr int Connected[RANK_NB] = { 0 , 5 , 7 , 11 , 24 , 48 , 86 };
4848
4949 // Strength of pawn shelter for our king by [distance from edge][rank].
5050 // RANK_1 = 0 is used for files where we have no pawn, or pawn is behind our king.
@@ -147,7 +147,7 @@ namespace {
147147 if (support | phalanx)
148148 {
149149 int v = Connected[r] * (2 + bool (phalanx) - bool (opposed))
150- + 21 * popcount (support);
150+ + 22 * popcount (support);
151151
152152 score += make_score (v, v * (r - 2 ) / 4 );
153153 }
0 commit comments