summaryrefslogtreecommitdiff
path: root/src/chess.h
diff options
context:
space:
mode:
authorScott Gasch <[email protected]>2026-09-15 23:17:33 -0700
committerScott Gasch <[email protected]>2026-09-15 23:17:33 -0700
commitc0ac3d7845f60c7f6f2c3bfc306ceb0e4ac045ba (patch)
treee2b7427e212bd5b557f15131b815517a86b20486 /src/chess.h
parent0bb4ae3052cb8ff9ffcf951b3ef0e6f50a7efdfa (diff)
Rework check/pawn-push/recapture extension gating on real SEE (GetMoveSee, generalized from GetCheckSee), restrict LMR to leftover moves only, and tighten recapture's window back to 1x after measuring a 6.8x node blowup from sharing the wider window.
Head-to-head match at 1170 games confirms parity with the prior head (score=0.510, LLR still between bounds) -- landing as a neutral-or-better baseline rather than a regression.
Diffstat (limited to 'src/chess.h')
-rwxr-xr-xsrc/chess.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/chess.h b/src/chess.h
index 4d7015e..16cdca9 100755
--- a/src/chess.h
+++ b/src/chess.h
@@ -1113,10 +1113,13 @@ typedef struct _COUNTERS
struct
{
ULONG uPawnPush;
+ ULONG uPawnPushByQuarterPly[5]; // indexed by granted amount / QUARTER_PLY
ULONG uCheck;
+ ULONG uCheckByQuarterPly[5]; // indexed by granted amount / QUARTER_PLY
ULONG uMateThreat;
ULONG uRecapture;
ULONG uOneLegalMove;
+ ULONG uOneLegalMoveByQuarterPly[5]; // indexed by granted amount / QUARTER_PLY
ULONG uNoLegalKingMoves;
ULONG uMultiCheck;
ULONG uSingularMove;
@@ -3247,7 +3250,7 @@ ComputeReactionToCheckExtension(IN OUT SEARCHER_THREAD_CONTEXT *ctx,
IN OUT INT *piOrigExtend);
SCORE
-GetCheckSee(IN SEARCHER_THREAD_CONTEXT *ctx,
+GetMoveSee(IN SEARCHER_THREAD_CONTEXT *ctx,
IN MOVE mv,
IN ULONG uMoveNum);
@@ -3258,7 +3261,8 @@ ComputeMoveExtension(IN OUT SEARCHER_THREAD_CONTEXT *ctx,
IN ULONG uMoveNum,
IN SCORE iRoughEval,
IN ULONG uDepth,
- IN SCORE iCheckSee,
+ IN SCORE iMoveSee,
+ IN FLAG fIsLeftoverMove,
IN OUT INT *piExtend);
SCORE