1
0
Fork 0
mirror of https://github.com/sockspls/badfish synced 2025-04-30 08:43:09 +00:00

Piece mobility: filter out squares protected by pawns

Do not consider squares protected by enemy pawns
in mobility evaluation.

This reduces the mobility value by about 15%

Signed-off-by: Marco Costalba <mcostalba@gmail.com>
This commit is contained in:
Marco Costalba 2009-01-05 15:14:16 +01:00
parent dc4e2d8184
commit d0804341c5

View file

@ -575,8 +575,11 @@ namespace {
ei.kingAdjacentZoneAttacksCount[us] += count_1s_max_15(bb); ei.kingAdjacentZoneAttacksCount[us] += count_1s_max_15(bb);
} }
// Remove squares protected by enemy pawns
Bitboard bb = (b & ~ei.attackedBy[them][PAWN]);
// Mobility // Mobility
int mob = count_1s_max_15(b & ~p.pieces_of_color(us)); int mob = count_1s_max_15(bb & ~p.pieces_of_color(us));
ei.mgMobility += Sign[us] * mgBonus[mob]; ei.mgMobility += Sign[us] * mgBonus[mob];
ei.egMobility += Sign[us] * egBonus[mob]; ei.egMobility += Sign[us] * egBonus[mob];