A UCI Java Chess Engine inspired by Stockfish.
- Bitboard representation
- Integer representation for encoding moves
- Fast undo move
- Stockfish-like classical evaluation
- Negamax search with alpha-beta optimization
- Move ordering
- History heuristic
- CaptureHistory heuristic
- Buttferfly heuristic
- Killer heuristic
- Countermove heuristic
- Transposition table (1-256MB)
- Evalution pruning (Static null move pruning)
- Null move pruning
- Late move reduction
- PV search
You will have to download Java JDK 15.0.2. To run it, open terminal and enter: java -jar <name>.jar
. In the future, I will try converting .jar
to .exe
so you won't bother downloading JDKs or JREs.