Skip to content
Snippets Groups Projects
  • Florian Schröder's avatar
    04ac8523
    Update directory name in installation instructions · 04ac8523
    Florian Schröder authored
    The installation instructions in README.md and __init__.py have been updated to reflect the change in directory name from 'cooperative_cuisine' to 'overcooked-simulator'. This update ensures the correct directory is specified for the 'cd' command post cloning of the repository.
    04ac8523
    History
    Update directory name in installation instructions
    Florian Schröder authored
    The installation instructions in README.md and __init__.py have been updated to reflect the change in directory name from 'cooperative_cuisine' to 'overcooked-simulator'. This update ensures the correct directory is specified for the 'cd' command post cloning of the repository.

Cooperative Cuisine Environment

Documentation

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  --url "localhost" --port 8000

The arguments are the defaults. Therefore, they are optional.

You can also start the Game Server and the PyGame GUI individually in different terminals.

python3 cooperative_cuisine/game_server.py --url "localhost" --port 8000 --manager_ids SECRETKEY1 SECRETKEY2

python3 cooperative_cuisine/pygame_2d_vis/gui.py --url "localhost" --port 8000 --manager_ids SECRETKEY1

You can start also several GUIs.

python3 cooperative_cuisine/pygame_2d_vis/gui.py --url "localhost" --port 8000 --manager_ids SECRETKEY2

You can replace the GUI with your own GUI (+ study server/matchmaking server).

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