X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fsearch.cpp;h=4b6b497a5b49b504031519b5fcb8137d6a76d1b9;hb=f436bf77ad2eb42228747d9aa58eeb7403e23d49;hp=be0f3451635611df64cfde1517ba2475099026af;hpb=232bf19be43117cdecea054c9a825735f0b47842;p=stockfish diff --git a/src/search.cpp b/src/search.cpp index be0f3451..4b6b497a 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -789,7 +789,7 @@ namespace { && depth < 8 && eval - futility_margin(depth, improving) - (ss-1)->statScore / 303 >= beta && eval >= beta - && eval < 28031) // larger than VALUE_KNOWN_WIN, but smaller than TB wins. + && eval < 28031) // larger than VALUE_KNOWN_WIN, but smaller than TB wins return eval; // Step 9. Null move search with verification search (~22 Elo) @@ -1163,7 +1163,12 @@ moves_loop: // When in check, search starts here if (singularQuietLMR) r--; - // Increase reduction if next ply has a lot of fail high else reset count to 0 + // Dicrease reduction if we move a threatened piece (~1 Elo) + if ( depth > 9 + && (mp.threatenedPieces & from_sq(move))) + r--; + + // Increase reduction if next ply has a lot of fail high if ((ss+1)->cutoffCnt > 3 && !PvNode) r++;