Extend mandatory captures that are only moves
authorianfab <ianfab@users.noreply.github.com>
Tue, 7 Aug 2018 21:32:13 +0000 (23:32 +0200)
committerianfab <ianfab@users.noreply.github.com>
Wed, 8 Aug 2018 20:26:07 +0000 (22:26 +0200)
STC
LLR: 2.95 (-2.94,2.94) [0.00,10.00]
Total: 485 W: 290 L: 183 D: 12

LTC
LLR: 2.97 (-2.94,2.94) [0.00,10.00]
Total: 890 W: 483 L: 371 D: 36

src/search.cpp

index 0820a47..1e6d8e3 100644 (file)
@@ -921,6 +921,10 @@ moves_loop: // When in check, search starts from here
                && !moveCountPruning
                &&  pos.see_ge(move))
           extension = ONE_PLY;
+      else if (    pos.must_capture() // Capture extension (all moves are captures)
+               &&  pos.capture(move)
+               &&  MoveList<CAPTURES>(pos).size() == 1)
+          extension = ONE_PLY;
 
       // Calculate new depth for this move
       newDepth = depth - ONE_PLY + extension;