← back

dragonclash

1 July 2024

a chess engine written entirely in rust — board representation, move generation, search, and evaluation all from scratch.

what it does

dragonclash uses bitboard representation with magic bitboards for sliding piece attacks. the search is negamax with alpha-beta pruning, layered with iterative deepening, aspiration windows, quiescence search, null-move pruning, late move reductions, and futility pruning.

move ordering uses killer moves, history heuristics, and MVV-LVA. evaluation covers material balance, piece-square tables (midgame + endgame), king safety, and pawn structure.

it also has zobrist hashing with a transposition table, repetition/stalemate/draw detection (50-move rule, insufficient material), and mate distance scoring.

results

  • outranked the majority of modern engines in perft analysis
  • consistently beats stockfish at 2000 elo

what’s next

NNUE evaluation, endgame tablebases (syzygy), parallel search, and opening book support.