-
Florian Schröder authored
The coverage path in .gitlab-ci.yml has been updated to point to the correct directory within the project structure. Additionally, the badge URLs in the README.md file have been corrected to display the proper pipeline and coverage status for this project.
Florian Schröder authoredThe coverage path in .gitlab-ci.yml has been updated to point to the correct directory within the project structure. Additionally, the badge URLs in the README.md file have been corrected to display the proper pipeline and coverage status for this project.
Cooperative Cuisine Environment
The overcooked-like cooperative cuisine environment for real-time human cooperative interactions and artificial agents.
The name ist still work in progress and we will probably change it.
Installation
You have two options to install the environment. Either clone it and install it locally or install it in your site-packages. You need a Python 3.10 or newer environment. Either conda or PyEnv.
Local Editable Installation
In your repo
, PyCharmProjects
or similar directory with the correct environment active:
git clone https://gitlab.ub.uni-bielefeld.de/scs/cocosy/overcooked-simulator.git
cd overcooked-simulator
pip install -e .
Run
Run it via the command line (in your pyenv/conda environment):
cooperative_cuisine -s localhost -sp 8080 -g localhost -gp 8000
The arguments shown are the defaults.
You can also start the Game Serverm Study Server (Matchmaking),and the PyGame GUI individually in different terminals.
python3 cooperative_cuisine/game_server.py -g localhost -gp 8000 --manager_ids SECRETKEY1 SECRETKEY2
python3 cooperative_cuisine/study_server.py -s localhost -sp 8080 --manager_ids SECRETKEY1
python3 cooperative_cuisine/pygame_2d_vis/gui.py -s localhost -sp 8080 -g localhost -gp 8000
You can start also several GUIs. The study server does the matchmaking.
Library Installation
The correct environment needs to be active:
pip install cooperative_cuisine@git+https://gitlab.ub.uni-bielefeld.de/scs/cocosy/overcooked-simulator@main
Run
You can now use the environment and/or simulator in your python code. Just by importing
it import cooperative_cuisine
Configuration
The environment configuration is currently done with 3 config files + GUI configuration.
Item Config
The item config defines which ingredients, cooking equipment and meals can exist and how meals and processed ingredients can be cooked/created.
Layout Config
You can define the layout of the kitchen via a layout file. The position of counters are based on a grid system, even when the players do not move grid steps but continuous steps. Each character defines a different type of counter. Which character is mapped to which counter is defined in the Environment config.
Environment Config
The environment config defines how a level/environment is defined. Here, the available plates, meals, order and player configuration is done.
PyGame Visualization Config
Here the visualisation for all objects is defined. Reference the images or define a list of base shapes that represent the counters, ingredients, meals and players.
Troubleshooting
cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri, suffix _dri)
if you have a conda environment:
conda install -c conda-forge libstdcxx-ng