A scorekeeping program for the board game Carcassonne

George C. Privon 68688882ad convert args to be mutually exclusive há 8 anos atrás
analysis b43c91bea7 various analysis example updates há 8 anos atrás
.gitignore 0c5683c48b ignore swap files há 8 anos atrás
CHANGELOG.md c032a8a7ac update changelog há 8 anos atrás
CarcassonneScore.py bee7604e0c remove extraneous whitespace há 8 anos atrás
LICENSE 7f294aa55a GPL3 license há 8 anos atrás
README.md 533a580260 separate db updates, fix a typo há 8 anos atrás
cgame.py e40ca0fe14 define a global time format string. this should be abstracted to a config file so the analysis script can access it há 8 anos atrás
create_database.py bee7604e0c remove extraneous whitespace há 8 anos atrás
update_database.py 68688882ad convert args to be mutually exclusive há 8 anos atrás

README.md

Carcassonne Score keeping

Score keeping software for Carcassonne to facilitate statistical analysis of games.

Requirements

  • python 3 (tested under python 3.6.x)
  • numpy
  • matplotlib (for analysis scripts)

Usage

Before your first game you will need to initialize the sqlite database:

$ python create_database.py

Score keeping

Assuming the database has been initialized, you can run a game with:

$ python CarcassonneScore.py

This launches the interactive shell. Press ? for a list of commands.

Database Maintenance

To update the database (add new players toggle availability of expansions), use the update_database.py command. For example, to add a new player:

$ python update_database.py -n NEW PLAYER

Use python update_database.py -h to see the full list of options.

Analysis

A sample analysis jupyter notebook and a sample sqlite database containing one game is available in the analysis/ directory.