This is a platform for the schnapsen card game. To get to know the concept of the game, please visit this web page.
To use the platform, your python version must be at least 3.10. The code has been tested with python 3.13, let us know if you encounter issues.
We strongly suggest installing conda (or pip) and using an environment.
An easy way to get that is using virtual environments. We suggest you install conda to manage them. Then, you can use conda to create a new environment by running
conda create --name project_is python=3.10
With this environment created, you can start it
conda activate project_is
Inside this environment you can install the dependencies as instructed below. Some IDEs also support the use of environments, and can help you install dependencies.
After you have created the environment, make sure it is enabled. Then, clone the repository, go into the folder and install the schnapsen package and its dependencies in editable mode by running:
pip install -e .
To run the tests, run:
pip install -e '.[test]' # on Linux / MacOS
pip install -e ".[test]" # on Windows
pytest ./tests
If the above fails, try deactivating your environment and activating it again. Then retry installing the dependencies.
After intalling, you can try the provided command line interface examples. Most examples are bots playing against each other; read the code for details.
To run the CLI, run:
python executables/cli.py
This will list the available commands.
For example, if you want try a RandBot play against another RandBot, type
python executables/cli.py random-game
.
The graphical user interface (GUI) lets you play visually against a bot (e.g., You vs. RandBot).
To start the GUI, run:
python executables/server.py
Now, open your webbrowser and type in the server address (i.e., http://127.0.0.1:8080). By default, you are playing against RandBot. You can modify the code in executables/server.py to play against other bots.
You will find bot examples in the src/schnapsen/bots
folder.
You can look at the example_bot.py file for various methods provided to your bot.
The documentation for the platform is hosted at https://intelligent-systems-course.github.io/schnapsen/
If you install conda and create an environment, you can run python by just running the python
command.
However, often your system also provides a python version.
To know which python is running, use
which python # on linux
where python # on windows (untested)
Now, you want to look at the output and make sure that this executable is inside the anaconda folder and not where your system stores its executables.