locales | ||
board.png | ||
db-setup.py | ||
mastochess.py | ||
README.md | ||
requirements.txt | ||
setup.py | ||
smtp_setup.py |
Mastodon Chess
Play with other fediverse users a Chess game! Mastodon Chess control games, players and boards and even it post, graphically, every move to both players!
Mastodon Chess (mastochess) uses python-chess library.
How to play:
To start a game:
@your_bot_username new
To make a move:
@your_bot_username move e2e4
To finish game at any time:
@your_bot_username end
To list on going games:
@your_bot_username games
To get any game anotations, in ex. game 1:
@your_bot_username send 1
To promote a pawn use first letter of desired piece:
@your_bot_username move g7g8r (if you want a rook)
n = knight
b = bishop
r = rook
Don't use q for queen. Pawn is promoted to Queen by default.
ca | en | es | ex. | Observ. |
---|---|---|---|---|
nova | new | nueva | ||
mou | move | mueve | e2e3 | |
fi | end | fin | ||
jocs | games | partidas | ||
envia | send | envia | 1 | game number |
Dependencies
- Python 3
- Postgresql server
- Mastodon's bot account
- Mastodon server admin
Usage:
Within Python Virtual Environment:
-
Run
pip install -r requirements.txt
to install needed Python libraries. -
Run
python db-setup.py
to setup and create new Postgresql database and needed tables in it. -
Run
python smtp_setup.py
to setup your smtp server, user and password. Needed to send game anotations to players. -
Run
python setup.py
to get your Mastodon's bot account tokens. -
Use your favourite scheduling method to set
python mastochess.py
to run regularly.
20.11.2020 - New feature! Added link to on going games in games list
21.11.2020 - New feature! Added a warning to player in turn when has been captured one of its pieces
23.11.2020 - New feature! Now all moves are saved to file (with san anotation).
25.11.2020 - New feature! Get any game anotations via email (see point 3 above).
27.11.2020 - New feature! Pawn promotion and locales support ( ca & eng )
28.11.2020 - New feature! Added 'es' locale support