A Shogi USI engine written in Go.
Currently, calling it Shogi engine might be a bit of an exaggeration: hifumi plays by choosing a move at random. Only the movement generator is implemented but it is slow and certainly buggy. At least we have already been able to play and lose lots of games against Fairy Stockfish 😆 .
Clone this repository then run go build -o hifumi cmd/hifumi/main.go
.
- Board representation
- Hybrid solution mixing mailbox (9x9) and bitboards
- Move generation
- Using bitboards for non-sliding pieces
- Magic bitboards for sliding pieces (lance, bishop and rook)