// MobilityBonus[PieceType-2][attacked] contains bonuses for middle and end game,
// indexed by piece type and number of attacked squares in the mobility area.
constexpr Score MobilityBonus[][32] = {
- { S(-75,-76), S(-57,-54), S( -9,-28), S( -2,-10), S( 6, 5), S( 14, 12), // Knights
- S( 22, 26), S( 29, 29), S( 36, 29) },
+ { S(-62,-81), S(-53,-56), S(-12,-30), S( -4,-14), S( 3, 8), S( 13, 15), // Knights
+ S( 22, 23), S( 28, 27), S( 33, 33) },
{ S(-48,-59), S(-20,-23), S( 16, -3), S( 26, 13), S( 38, 24), S( 51, 42), // Bishops
S( 55, 54), S( 63, 57), S( 63, 65), S( 68, 73), S( 81, 78), S( 81, 86),
S( 91, 88), S( 98, 97) },
{ S( -2, 1), S( 20,-12), S(-10, 6), S(-2,25) }
},
{ // Knight
- { S(-161,-105), S(-96,-82), S(-80,-46), S(-73,-14) },
- { S( -83, -69), S(-43,-54), S(-21,-17), S(-10, 9) },
- { S( -71, -50), S(-22,-39), S( 0, -7), S( 9, 28) },
- { S( -25, -41), S( 18,-25), S( 43, 6), S( 47, 38) },
- { S( -26, -46), S( 16,-25), S( 38, 3), S( 50, 40) },
- { S( -11, -54), S( 37,-38), S( 56, -7), S( 65, 27) },
- { S( -63, -65), S(-19,-50), S( 5,-24), S( 14, 13) },
- { S(-195,-109), S(-67,-89), S(-42,-50), S(-29,-13) }
+ { S(-169,-105), S(-96,-74), S(-80,-46), S(-79,-18) },
+ { S( -79, -70), S(-39,-56), S(-24,-15), S( -9, 6) },
+ { S( -64, -38), S(-20,-33), S( 4, -5), S( 19, 27) },
+ { S( -28, -36), S( 5, 0), S( 41, 13), S( 47, 34) },
+ { S( -29, -41), S( 13,-20), S( 42, 4), S( 52, 35) },
+ { S( -11, -51), S( 28,-38), S( 63,-17), S( 55, 19) },
+ { S( -67, -64), S(-21,-45), S( 6,-37), S( 37, 16) },
+ { S(-200, -98), S(-80,-89), S(-53,-53), S(-32,-16) }
},
{ // Bishop
{ S(-49,-58), S(- 7,-31), S(-10,-37), S(-34,-19) },