X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fevaluate.cpp;h=65f7bddc76e3c4f626ac095db897f3cc9458416d;hp=60ec9c72a5b1577ed0976230fcc74c28715aa861;hb=16836f39b295ec635c9883498400f7006ac2869f;hpb=ab5cd8340f2f7f8730aa7c77476edf4a98a166e4 diff --git a/src/evaluate.cpp b/src/evaluate.cpp index 60ec9c72..65f7bddc 100644 --- a/src/evaluate.cpp +++ b/src/evaluate.cpp @@ -782,6 +782,13 @@ namespace { else sf = 22 + 3 * pos.count(strongSide); } + else if( pos.non_pawn_material(WHITE) == RookValueMg + && pos.non_pawn_material(BLACK) == RookValueMg + && !pe->passed_pawns(strongSide) + && pos.count(strongSide) - pos.count(~strongSide) <= 1 + && bool(KingSide & pos.pieces(strongSide, PAWN)) != bool(QueenSide & pos.pieces(strongSide, PAWN)) + && (attacks_bb(pos.square(~strongSide)) & pos.pieces(~strongSide, PAWN))) + sf = 36; else sf = std::min(sf, 36 + 7 * pos.count(strongSide)); }