ChandlerKenworthy / ChessEngine

Personal project to improve my C++ skills and develop a chess engine that can consistently beat me (I am about ~1500 chess elo).
0 stars 0 forks source link

Fix engine to be consistent with Stockfish up to a depth of 7 #14

Closed ChandlerKenworthy closed 9 months ago

ChandlerKenworthy commented 9 months ago

Various bug fixes to ensure consistency of my engine against the test engine (Stockfish 16) up to a depth of 7 from the standard chess board starting position. Bugs patched included:

  1. Fix queenside castling mask to include B-file
  2. Fix absolute pinning calculation (resetting isLegal by accident)
  3. Prevent castling moves when in check

See results from the Perft(7) test below: My Engine: h2h3: 106678423 h2h4: 138495290 g2g3: 135987651 g2g4: 130293018 f2f3: 102021008 f2f4: 119614841 e2e3: 306138410 e2e4: 309478263 d2d3: 227598692 d2d4: 269605599 c2c3: 144074944 c2c4: 157756443 b2b3: 133233975 b2b4: 134087476 a2a3: 106743106 a2a4: 137077337 g1h3: 120669525 g1f3: 147678554 b1c3: 148527161 b1a3: 120142144

Stockfish: a2a3: 106743106 b2b3: 133233975 c2c3: 144074944 d2d3: 227598692 e2e3: 306138410 f2f3: 102021008 g2g3: 135987651 h2h3: 106678423 a2a4: 137077337 b2b4: 134087476 c2c4: 157756443 d2d4: 269605599 e2e4: 309478263 f2f4: 119614841 g2g4: 130293018 h2h4: 138495290 b1a3: 120142144 b1c3: 148527161 g1f3: 147678554 g1h3: 120669525