A scorekeeping program for the board game Carcassonne
|
|
6 years ago | |
|---|---|---|
| analysis | 7 years ago | |
| utilities | 7 years ago | |
| .gitignore | 7 years ago | |
| CHANGELOG.md | 6 years ago | |
| CarcassonneScore.conf.example | 7 years ago | |
| CarcassonneScore.py | 7 years ago | |
| LICENSE | 8 years ago | |
| README.md | 7 years ago | |
| cgame.py | 6 years ago | |
| manage_database.py | 7 years ago | |
| requirements.txt | 7 years ago |
Score keeping software for Carcassonne to facilitate statistical analysis of games.
Information (players, games, scores, expansions) are stored in a sqlite3 database.
The location of this database defaults to CarcassonneScore.db, but can be specified in the CarcassonneScore.conf configuration file.
Detailed information in requirements.txt
Before your first game you will need to initialize the sqlite database:
$ python manage_database.py --init
After a database has been initialized, you can score a game with:
$ python CarcassonneScore.py
This launches the interactive shell which sets up a game (gets the names and order of players, list of active expansions, and other information).
Within this shell various commands are available to record scores, advance to a next player's turn, and end the game.
Press ? within the shell for a list of commands (note that the list of available commands may change depending on the expansions being played and whether the game is in active tile-placing mode or post-game scoring mode).
To update the database (e.g., to add new players or toggle availability of expansions), use the manage_database.py command. For example, to add a new player:
$ python manage_database.py -n NEW PLAYER
Use python manage_database.py -h to see the full list of options.
Some jupyter notebooks with sample analysis and a sample sqlite database containing one game are available in the analysis/ directory.
The utilities/ directory contains scripts which may be useful for correcting issues, but these should not be needed for normal operations.