X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fsearch.cpp;h=9dfa5193e99fd3e2e16889e6182470700aba58fa;hp=ff31e0360a76c2c5201cd13e8944024054980fc0;hb=2731bbaf6b4bed23abaae8de5c1fa9f373e30e57;hpb=1ee2838214fcbadc352fb17c8c6fa1142ae5dcb0 diff --git a/src/search.cpp b/src/search.cpp index ff31e036..9dfa5193 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -788,9 +788,8 @@ namespace { } // Step 9. ProbCut (skipped when in check) - // If we have a very good capture (i.e. SEE > seeValues[captured_piece_type]) - // and a reduced search returns a value much above beta, we can (almost) - // safely prune the previous move. + // If we have a good enough capture and a reduced search returns a value + // much above beta, we can (almost) safely prune the previous move. if ( !PvNode && depth >= 5 * ONE_PLY && abs(beta) < VALUE_MATE_IN_MAX_PLY) @@ -802,7 +801,7 @@ namespace { assert((ss-1)->currentMove != MOVE_NONE); assert((ss-1)->currentMove != MOVE_NULL); - MovePicker mp(pos, ttMove, PieceValue[MG][pos.captured_piece_type()]); + MovePicker mp(pos, ttMove, rbeta - ss->staticEval); while ((move = mp.next_move()) != MOVE_NONE) if (pos.legal(move)) @@ -936,7 +935,6 @@ moves_loop: // When in check search starts from here // Countermoves based pruning if ( predictedDepth < 3 * ONE_PLY - && move != ss->killers[0] && (!cmh || (*cmh )[moved_piece][to_sq(move)] < VALUE_ZERO) && (!fmh || (*fmh )[moved_piece][to_sq(move)] < VALUE_ZERO) && (!fmh2 || (*fmh2)[moved_piece][to_sq(move)] < VALUE_ZERO || (cmh && fmh)))