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
- Minimal UCI support.
- Lichess integration (see this repository).
Getting started
- Create a venv with
python -m venv .venv. The exact Python required version can be found at pyproject.toml. - Install poetry and run
$ poetry installto install dependencies. - Run it with
$ poetry run chessyor manually with$ .venv/bin/activatefollowed by$ python -m chessy.core.- If you are trying to debug some problem, you can use the
--debug(-dfor short) flag to increase log level:$ poetry run chessy -d.
- If you are trying to debug some problem, you can use the
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
wtimeandbtime. - Ponder.
- Report more info (e.g.
seldepth). - Maybe support customization options.
- Adapt playstyle according to
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.
Metadata
Release files for chessy 0.2.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| chessy-0.2.3.tar.gz | 36.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| chessy-0.2.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 92.3 kB
Release files / chessy-0.2.3.tar.gz
| Download URL | chessy-0.2.3.tar.gz |
|---|---|
| Size | 36.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a38d5872a7a1fe3678df7f5b05323674fcde199965fbe81feb33e9df8b0a496e
|
|
BLAKE2b-256 checksum How to use checksums |
6a36cd2ed404c6cb4629bf50bb137797363f9ca235e66a6b3f91d3a4e56450d6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.6.1 CPython/3.11.3 Linux/6.2.0-1015-azure
|
Release files / chessy-0.2.3-py3-none-any.whl
| Download URL | chessy-0.2.3-py3-none-any.whl |
|---|---|
| Size | 55.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
11425630a26e8fd7456d862ec142a076bc152ad34d8c7208eb7c75fd70d9b432
|
|
BLAKE2b-256 checksum How to use checksums |
b0b16f9cf2fa0c0c6d30023f6f340ca1d325bfe634fefcb3260bbcaa6492b0df
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.6.1 CPython/3.11.3 Linux/6.2.0-1015-azure
|