Post

PROJECT: Chess

A chess engine and application

PROJECT: Chess

Chess

Github
Over the last couple of months I have been working on a rather interesting project. Building a chess engine and surrounding application from scratch. Today I would like to showcase the project, highlight some features, and share some struggles I have faced along the way

Please note this project is very much still in progress, and lots of things (especially ui) need some work to be “production ready”

Overview

The central component of this project is the chess engine. Esssentially it takes in a given chess position, and “tries” different moves to see what the best move is. Connecting this, the application side manages a chessboard and allows the user to interact with the chess engine, and play games against it. Of course this is a gross oversimplification, as you can do much more than just play an engine.

The first part of this blog will go over general features and capabilites, with the later parts diving into the specifics.

Features

Using this chess engine/application, you can:

  • Play games at various difficulties against either the custom chess engine, or stockfish
  • Play a diverse campaign against various chess personalities, starting easy and finishing at master level
  • Play 1v1 matches against another player locally
  • Play ranked online matches against others with different time modes
  • Simulate and watch games where any of the computer options can play against each other, with time constraints.
  • Play puzzles to improve your decision making skills
  • Load games through pgn
  • Take any game and analyze it, with recommended moves and evaluation of the moves you played
  • Save your progress with an account

Home Screen

Home Screen

Local 1v1 Game

Local 1v1 Game

Campaign Menu Screen

Campaign Menu

Campaign Game

Campaign Game

Move Evaluation

Move Evaluation

Move Suggestion

Move Suggestion

Online Game

Online Game

Load Pgn

Load Pgn

An easy puzzle

Easy Puzzle

A hard puzzle

Hard Puzzle

Video of my computer beating stockfish

This post is licensed under CC BY 4.0 by the author.