@@ -275,15 +275,15 @@ Score Search(RootSearchContext &context, std::vector<Move> &pv, Board &board, Sc
275275 {
276276 if (ret >= beta)
277277 {
278- context.transpositionTable ->Store (board. GetHash () , pv.size () > 0 ? pv[0 ] : 0 , ret, 0 , LOWERBOUND);
278+ context.transpositionTable ->Store (board, pv.size () > 0 ? pv[0 ] : 0 , ret, 0 , LOWERBOUND);
279279 }
280280 else if (ret <= alpha)
281281 {
282- context.transpositionTable ->Store (board. GetHash () , 0 , ret, 0 , UPPERBOUND);
282+ context.transpositionTable ->Store (board, 0 , ret, 0 , UPPERBOUND);
283283 }
284284 else
285285 {
286- context.transpositionTable ->Store (board. GetHash () , pv.size () > 0 ? pv[0 ] : 0 , ret, 0 , EXACT);
286+ context.transpositionTable ->Store (board, pv.size () > 0 ? pv[0 ] : 0 , ret, 0 , EXACT);
287287 }
288288 }
289289
@@ -397,7 +397,7 @@ Score Search(RootSearchContext &context, std::vector<Move> &pv, Board &board, Sc
397397 {
398398 if (ENABLE_TT)
399399 {
400- context.transpositionTable ->Store (board. GetHash () , 0 , nmScore, originalNodeBudget, LOWERBOUND);
400+ context.transpositionTable ->Store (board, 0 , nmScore, originalNodeBudget, LOWERBOUND);
401401 }
402402
403403 return beta;
@@ -537,7 +537,7 @@ Score Search(RootSearchContext &context, std::vector<Move> &pv, Board &board, Sc
537537 {
538538 if (ENABLE_TT)
539539 {
540- context.transpositionTable ->Store (board. GetHash () , mv, score, originalNodeBudget, LOWERBOUND);
540+ context.transpositionTable ->Store (board, mv, score, originalNodeBudget, LOWERBOUND);
541541 }
542542
543543 context.moveEvaluator ->NotifyBestMove (board, si, miList, mv, numMovesSearched + 1 );
@@ -573,13 +573,20 @@ Score Search(RootSearchContext &context, std::vector<Move> &pv, Board &board, Sc
573573 }
574574 }
575575
576+ if (originalNodeBudget == 64 )
577+ {
578+ std::cout << " End" << std::endl;
579+ std::cout << " Best score: " << bestScore << std::endl;
580+ std::cout << " Alpha: " << alpha << std::endl;
581+ }
582+
576583 if (!context.Stopping ())
577584 {
578- if (bestScore > alpha)
585+ if (bestScore >= alpha)
579586 {
580587 if (ENABLE_TT)
581588 {
582- context.transpositionTable ->Store (board. GetHash () , pv[0 ], bestScore, originalNodeBudget, EXACT);
589+ context.transpositionTable ->Store (board, pv[0 ], bestScore, originalNodeBudget, EXACT);
583590 }
584591
585592 context.moveEvaluator ->NotifyBestMove (board, si, miList, pv[0 ], miList.GetSize ());
@@ -589,7 +596,7 @@ Score Search(RootSearchContext &context, std::vector<Move> &pv, Board &board, Sc
589596 // otherwise we failed low (and may have prunned all nodes)
590597 if (ENABLE_TT)
591598 {
592- context.transpositionTable ->Store (board. GetHash () , pv.size () > 0 ? pv[0 ] : 0 , bestScore, originalNodeBudget, UPPERBOUND);
599+ context.transpositionTable ->Store (board, pv.size () > 0 ? pv[0 ] : 0 , bestScore, originalNodeBudget, UPPERBOUND);
593600 }
594601 }
595602 }
0 commit comments