Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Trigger of PawnEndgameExtension if capture is not a pawn

Instead of a rook.

This gives an unexpected graeat increase!

Signed-off-by: Marco Costalba <mcostalba@gmail.com>
  • Loading branch information...
commit 17000d1ea0836ff701fb83d76fbc747b88bf60a3 1 parent b09cbae
@mcostalba authored
Showing with 7 additions and 3 deletions.
  1. +7 −3 src/search.cpp
View
10 src/search.cpp
@@ -2170,6 +2170,8 @@ namespace {
Depth extension(const Position &pos, Move m, bool pvNode, bool check,
bool singleReply, bool mateThreat, bool* dangerous) {
+ assert(m != MOVE_NONE);
+
Depth result = Depth(0);
*dangerous = check || singleReply || mateThreat;
@@ -2193,10 +2195,12 @@ namespace {
*dangerous = true;
}
- if ( pos.midgame_value_of_piece_on(move_to(m)) >= RookValueMidgame
+ if ( pos.move_is_capture(m)
+ && pos.type_of_piece_on(move_to(m)) != PAWN
&& ( pos.non_pawn_material(WHITE) + pos.non_pawn_material(BLACK)
- pos.midgame_value_of_piece_on(move_to(m)) == Value(0))
- && !move_promotion(m))
+ && !move_promotion(m)
+ && !move_is_ep(m))
{
result += PawnEndgameExtension[pvNode];
*dangerous = true;
@@ -2262,7 +2266,7 @@ namespace {
// value of the threatening piece, don't prune move which defend it.
if ( !PruneDefendingMoves
&& threat != MOVE_NONE
- && pos.type_of_piece_on(tto) != NO_PIECE_TYPE
+ && pos.move_is_capture(threat)
&& ( pos.midgame_value_of_piece_on(tfrom) >= pos.midgame_value_of_piece_on(tto)
|| pos.type_of_piece_on(tfrom) == KING)
&& pos.move_attacks_square(m, tto))
Please sign in to comment.
Something went wrong with that request. Please try again.