Skip to content

starvy/duchchess

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Java CI with Maven

Duch Chess Engine

Duch is a UCI Chess Engine written in Java. Version 1.0.0 is ranked around 2000 ELO

🖱️ Play it

In order to play with Duch, you need a chess GUI that supports UCI protocol like cute-chess or Arena

Motivation

My goal was to learn about chess programming and create an engine that beats me in chess. Now, it beats me every time.

🔎 Features

  • Bitboards
  • Magic Bitboards
  • Transposition Table
  • Zobrist Key Hasing
  • Static Exchange Evaluation
  • Negamax Search
    • Alpha-beta pruning
    • Late move pruning
    • Late move reductions
    • Razoring pruning
    • Futility pruning
    • Iterative deepening
  • Move Ordering
    • Hash Move
    • Most valuable victim / Least valuable attacker
    • Killer moves
    • History Heuristics
  • Evaluation
    • Material value
    • Material position
    • Piece mobility
    • Pawn evaluation

⛏️ Building

Duch is compiled using Maven

mvn package

🧑‍💻 Author

  • Sebastian Pravda

Contributing

Any contribution or help is welcomed.

Please note

This is just a hobby project. There might be some bugs in the code.