const Score Unstoppable = S( 0, 20);
const Score Hanging = S(31, 26);
const Score PawnAttackThreat = S(20, 20);
- const Score PawnSafePush = S( 5 , 5);
+ const Score PawnSafePush = S( 5, 5);
// Penalty for a bishop on a1/h1 (a8/h8 for black) which is trapped by
// a friendly pawn on b2/g2 (b7/g7 for black). This can obviously only
// attacked and undefended squares around our king and the quality of
// the pawn shelter (current 'score' value).
attackUnits = std::min(74, ei.kingAttackersCount[Them] * ei.kingAttackersWeight[Them])
- + 8 * ei.kingAdjacentZoneAttacksCount[Them]
+ + 8 * ei.kingAdjacentZoneAttacksCount[Them]
+ 25 * popcount<Max15>(undefended)
- + 11 * (ei.pinnedPieces[Us] != 0)
- - mg_value(score) * 31 / 256
+ + 11 * (ei.pinnedPieces[Us] != 0)
+ - mg_value(score) / 8
- !pos.count<QUEEN>(Them) * 60;
// Analyse the enemy's safe queen contact checks. Firstly, find the