Skip to main content

A simple chess engine

Project description

chessy

A simple chess engine.

This is a learning project. It is much slower than other production-ready engines and may have bugs, but feel free to contribute if you wish to.

Features

Getting started

  1. Create a venv with python -m venv .venv. The exact Python required version can be found at pyproject.toml.
  2. Install poetry and run $ poetry install to install dependencies.
  3. Run it with $ poetry run chessy or manually with $ .venv/bin/activate followed by $ python -m chessy.core.
    • If you are trying to debug some problem, you can use the --debug (-d for short) flag to increase log level: $ poetry run chessy -d.

Planned features

Short term:

  • Improve move evaluation and search.
    • Be able to process at least depth 8 within a reasonable time.
    • Quiescence search (as soon as we get some performance improvements - not right now because it will slow down things too much).

Long term:

  • Advanced UCI support
    • Adapt playstyle according to wtime and btime.
    • Ponder.
    • Report more info (e.g. seldepth).
    • Maybe support customization options.

Development utils

  • If you're using VSCode, we have a .vscode with recommended extensions / settings, and launch profiles.
  • Alternatively, use tools/format_lint_test.bash to run all available lints. Check the script source code if you want to run any of these lints separately.

License

chessy is licensed under the GNU Affero General Public License, either version 3 or any later versions at your choice. See LICENSE.txt for more details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

chessy-0.2.3.tar.gz (36.7 kB view details)

Uploaded Source

Built Distribution

chessy-0.2.3-py3-none-any.whl (55.6 kB view details)

Uploaded Python 3

File details

Details for the file chessy-0.2.3.tar.gz.

File metadata

  • Download URL: chessy-0.2.3.tar.gz
  • Upload date:
  • Size: 36.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.11.3 Linux/6.2.0-1015-azure

File hashes

Hashes for chessy-0.2.3.tar.gz
Algorithm Hash digest
SHA256 a38d5872a7a1fe3678df7f5b05323674fcde199965fbe81feb33e9df8b0a496e
MD5 1b90946ef348eac8ed0c66ebe8fb0c01
BLAKE2b-256 6a36cd2ed404c6cb4629bf50bb137797363f9ca235e66a6b3f91d3a4e56450d6

See more details on using hashes here.

File details

Details for the file chessy-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: chessy-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 55.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.11.3 Linux/6.2.0-1015-azure

File hashes

Hashes for chessy-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 11425630a26e8fd7456d862ec142a076bc152ad34d8c7208eb7c75fd70d9b432
MD5 2d5a64d55bc086deb21a15a990df79b2
BLAKE2b-256 b0b16f9cf2fa0c0c6d30023f6f340ca1d325bfe634fefcb3260bbcaa6492b0df

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page