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

Simplify Safe Checks

STC:
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 11796 W: 2211 L: 2074 D: 7511

LTC:
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 14324 W: 1935 L: 1806 D: 10583

Bench: 8075202

Resolves #600
This commit is contained in:
mstembera 2016-03-14 20:49:25 -07:00 committed by Joona Kiiski
parent 647402ff79
commit 04be84e0e2

View file

@ -424,36 +424,20 @@ namespace {
b2 = pos.attacks_from<BISHOP>(ksq) & safe;
// Enemy queen safe checks
b = (b1 | b2) & ei.attackedBy[Them][QUEEN];
if (b)
{
attackUnits += QueenCheck * popcount<Max15>(b);
score -= Checked;
}
if ((b1 | b2) & ei.attackedBy[Them][QUEEN])
attackUnits += QueenCheck, score -= Checked;
// Enemy rooks safe checks
b = b1 & ei.attackedBy[Them][ROOK];
if (b)
{
attackUnits += RookCheck * popcount<Max15>(b);
score -= Checked;
}
if (b1 & ei.attackedBy[Them][ROOK])
attackUnits += RookCheck, score -= Checked;
// Enemy bishops safe checks
b = b2 & ei.attackedBy[Them][BISHOP];
if (b)
{
attackUnits += BishopCheck * popcount<Max15>(b);
score -= Checked;
}
if (b2 & ei.attackedBy[Them][BISHOP])
attackUnits += BishopCheck, score -= Checked;
// Enemy knights safe checks
b = pos.attacks_from<KNIGHT>(ksq) & ei.attackedBy[Them][KNIGHT] & safe;
if (b)
{
attackUnits += KnightCheck * popcount<Max15>(b);
score -= Checked;
}
if (pos.attacks_from<KNIGHT>(ksq) & ei.attackedBy[Them][KNIGHT] & safe)
attackUnits += KnightCheck, score -= Checked;
// Finally, extract the king danger score from the KingDanger[]
// array and subtract the score from the evaluation.