diff --git a/src/search.cpp b/src/search.cpp index aa27ec2b..e8824b6b 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -935,8 +935,7 @@ moves_loop: // When in check, search starts from here int lmrDepth = std::max(newDepth - reduction(improving, depth, moveCount), DEPTH_ZERO) / ONE_PLY; // Countermoves based pruning (~20 Elo) - if ( lmrDepth < 4 - && (lmrDepth < 3 || ((ss - 1)->statScore > 0 && !PvNode)) + if ( lmrDepth <= ((ss-1)->statScore > 0 ? 3 : 2) && (*contHist[0])[movedPiece][to_sq(move)] < CounterMovePruneThreshold && (*contHist[1])[movedPiece][to_sq(move)] < CounterMovePruneThreshold) continue;