https://github.com/starvy/duchchess
UCI Java Chess Engine ~2000 ELO
https://github.com/starvy/duchchess
chess chess-engine java
Last synced: over 1 year ago
JSON representation
UCI Java Chess Engine ~2000 ELO
- Host: GitHub
- URL: https://github.com/starvy/duchchess
- Owner: starvy
- License: gpl-3.0
- Created: 2022-02-20T12:53:58.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2022-06-06T14:20:47.000Z (about 4 years ago)
- Last Synced: 2025-03-16T19:46:35.875Z (over 1 year ago)
- Topics: chess, chess-engine, java
- Language: Java
- Homepage:
- Size: 55.7 KB
- Stars: 6
- Watchers: 3
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
[](https://github.com/starvy/duchchess/actions/workflows/maven.yml)



# Duch Chess Engine
Duch is a UCI Chess Engine written in Java. Version 1.0.0 is ranked around 2000 ELO
## :computer_mouse: 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.
## :mag_right: 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
## :pick: Building
Duch is compiled using Maven
```shell
mvn package
```
## :technologist: 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.