/terminal-aichess

A Java implementation of Chess using bitboards.

Primary LanguageJava

Terminal AI-Chess

Simple Java 22 chess app that uses bitboards. This implementation is mainly for learning the bitboard data-structure. It amazes me how effective and compact this format is, even though it's hard to correctly implement bit-shifting and bit-masking.

PS: This is still work in progress. The app will only respond with random moves at the moment.

Running in your terminal: java --enable-preview --source 22 src/main/java/no/dervis/terminal_aichess/TerminalChess.java

In your terminal, this is how the app will look like.

TODOs:

  • Implement basic bitboard
  • Implement terminal ui
  • Implement basic move generation
  • Implement complete move generation (checks, attacks, castling, en-passant, promotions)
  • Implement perft move generation analysis
  • Implement basic ai (𝛼/ϐ search)
  • Implement advanced ai (monte-carlo-sim & neural networks)