Skip to main content

Perft to find bugs in move generation

22 Jun 2022

after 2 am

  • almost completed legal move generation function
  • issue: sometimes switches black and white during random play
  • issue: handling castling rights and enpassant squares while undoing a move

23 Jun 2022

after 12 am

  • bugfixsan notation doesn't show promotion
  • added perft and divide function
  • now we can find corner cases easily!

    2 am

  • wasted 1 hour on why I'm getting 1 move less than expected reason: code generates kingside else queenside castling moves 🥲

    3 am

  • bugfix: now engine checks threatened squares during castling
  • improved perft function
  • still a lot of things to do (getting wrong perft results)

Comments

Popular posts from this blog

Making moves with the Negamax algorithm

  10 Sept 2022 after a loooonngg time!!! 4:50 am there's a lot to tell you, but firstly, i'm very happy now because i just teached my ai to capture pieces and guess what, it doesn't just look one move into the future. yes guys, i wrote the negamax algorithm!! it's much more fun to play with it now. but still it has to prioritize other things besides captures, like promotions, checks, pins etc. and obviously, mates! now i'm going to sleep as i got many works to do :(

Move generation

1 Jun 2022 after 12 am ditching color output for now reading evening, night more reading modularizing, exceptions 2 Jun 2022 after 12 am started writing this blog lol ### started writing move generation function

Legal move generation

17 Jun 2022 after 2 am added  fen  output, generates direct url to lichess analysis! afternoon repaired enpassant and castling moves refactored move generation function minor  san  notation improvements started legal move generation function