UCI chess engine by Code Monkey King (CCRL: 2937 Elo)
- own online GUI
- bitboard board representation
- pre-calculated attack tables
- magic bitboards for sliding pieces
- encoding moves as integers
- copy/make approach for making moves
- negamax search with alpha beta pruning
- PV/killer/history move ordering
- iterative deepening
- PVS (Principle Variation Search)
- LMR (Late Move Reduction)
- NMP (Null Move Pruning)
- razoring
- evaluation pruning / static null move pruning
- Transposition table (up to 128MB)
- PURE Stockfish NNUE evaluation + 50 move rule penalty (gives over 600 Elo points)
- UCI protocol
NOTE: Make sure to paste *.nnue file into the same folder where engine binary executable lives