An easily extendible chess implementation designed to support any custom rule or feature
Project description
ChessMaker
An easily extendible chess implementation designed to support any custom rule or feature.
Play: https://chessmaker.azurewebsites.net
Documentation: https://wolfdwyc.github.io/ChessMaker
Source Code: https://github.com/WolfDWyc/ChessMaker
What is ChessMaker?
ChessMaker is a Python (3.11+) chess implementation that can be extended to support any custom rule or feature. It allows you to build almost any variant you can think of easily and quickly.
It was inspired by r/AnarchyChess - and the packaged optional rules are almost all inspired by that subreddit.
ChessMaker isn't tied to any GUI, but comes with a thin, pywebio, multiplayer web interface. The web interface supports choosing from the packaged rules, singleplayer (vs Yourself), and multiplayer (vs a friend or random opponent). It also supports saving and loading games - which can be shared with others and be used as puzzles.
The packaged rules are:
- Chess960
- Knooks
- Forced En Passant
- Knight Boosting
- Siberian Swipe
- Il Vaticano
- Beta Decay
- La Bastarda
- Omnipotent F6 Pawn
- King Cant Move to C2
- Vertical Castling
- Double Check to Win
- Capture All Pieces to Win
- Duck Chess
Contributions of new variants or anything else you'd like to see in the project are welcome!
What ChessMaker isn't
- A complete chess server - It currently doesn't support users, matchmaking, ratings, cheating detection, and is very thin. The frontend is very simple and currently not the focus of the project.
- A chess engine - The design choices are not optimized for speed, and it doesn't provide any analysis or AI.
- A compliant or standard chess implementation - It doesn't support UCI or existing chess GUIs, because it allows rules that wouldn't be possible with those.
-Note: While ChessMaker isn't a chess server, one could be built on top of it, and development of alternative clients to it is welcomed and encouraged. If this project gets enough interest, a more complete server might be added.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file chessmaker-0.5.0.tar.gz
.
File metadata
- Download URL: chessmaker-0.5.0.tar.gz
- Upload date:
- Size: 35.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.4.2 CPython/3.11.3 Windows/10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fdd6e11b2a7e7364749d0b6360479596a970f8228a14c7f86ef5dfd0745b9b58 |
|
MD5 | cd58f6c689b55198843abb5e161931e2 |
|
BLAKE2b-256 | 44aa1548de1416ad226734f6c74d6e7e235a983b61d2fedc70fc263695c25d73 |
File details
Details for the file chessmaker-0.5.0-py3-none-any.whl
.
File metadata
- Download URL: chessmaker-0.5.0-py3-none-any.whl
- Upload date:
- Size: 53.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.4.2 CPython/3.11.3 Windows/10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 24a8542d73f4d8bf99ef072779c16d7f0c9701e21c932ad71eac0bd2f01bddae |
|
MD5 | 55dac365a13268522fc094b9c9860b3e |
|
BLAKE2b-256 | 21670b165e38fbf4f4f2c594191a01d81a1d59a18ef2f777198cad13ba5ce913 |