boudica

module
v0.0.0-...-87e7153 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 31, 2021 License: MIT

README

Boudica

This is the beginnings of a chess engine implemented in Go. I am a mediocre chess player and a mediocre programmer, so I have very low expectations for it. My main motivation behind the project is to improve my knowledge of Golang and try to learn how to write high-quality, performant, idiomatic code. If I make something cool in the process, that's a huge bonus.

Todo

  • Initialise standard starting position
  • standard pawn move generation
  • en passant move generation
  • sliding piece move generation
  • knight move generation
  • castling move generation
  • implement Perft
  • output UCI
  • search
  • eval

If you're interested in chess programming, the chess programming wiki is invaluable. It is my primary source of information for writing this engine, and all the techniques I've implemented are described on the wiki.

Directories

Path Synopsis
cmd
boudica
The boudica command initiates the boudica engine
The boudica command initiates the boudica engine
internal
boudica
Package boudica is an engine capable of representing the game state of a chess game, searching & evaluating legal chess moves
Package boudica is an engine capable of representing the game state of a chess game, searching & evaluating legal chess moves
state
Package state provides a way to visualise an 8x8 board as a 64 bit integer See https://www.chessprogramming.org/8x8_Board for an explanation
Package state provides a way to visualise an 8x8 board as a 64 bit integer See https://www.chessprogramming.org/8x8_Board for an explanation

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL