From 078625e33389536addc9f94b7fc197230ef2f0fb Mon Sep 17 00:00:00 2001 From: Alain SAVARD Date: Sat, 18 Apr 2015 22:12:56 +0100 Subject: [PATCH] Exclude queen from Rook Contact Check computation In ei.attackedBy, Queen does not x-ray through Rook, but the Rook does X-ray through the Queen. So most of the rook contact checks supported by queen are, in fact, Queen Contact Checks and they are already scored separately. Bench: 7762189 Resolves #338 --- src/evaluate.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/evaluate.cpp b/src/evaluate.cpp index b50792da..563e707f 100644 --- a/src/evaluate.cpp +++ b/src/evaluate.cpp @@ -438,7 +438,7 @@ namespace { { // ...and then remove squares not supported by another enemy piece b &= ( ei.attackedBy[Them][PAWN] | ei.attackedBy[Them][KNIGHT] - | ei.attackedBy[Them][BISHOP] | ei.attackedBy[Them][QUEEN]); + | ei.attackedBy[Them][BISHOP]); if (b) attackUnits += RookContactCheck * popcount(b); -- 2.39.2