/rose-game-ai

ROSE project template for self driving car modules

Primary LanguagePythonGNU General Public License v2.0GPL-2.0

rose-game-ai

ROSE game template for self driving car modules.

This component is a template for building self driving car modules for the ROSE game.

See the examples directory for more information about creating your own driving module.

rose game components diagram

ROSE project: https://github.com/RedHat-Israel/ROSE

Requirements

Requires Version
Podman (or Docker) >= 4.8 For running containerized
Python >= 3.9 For running the code loally

ROSE game components

Component Reference
Game engine https://github.com/RedHat-Israel/rose-game-engine
Game web based user interface https://github.com/RedHat-Israel/rose-game-web-ui
Self driving car module https://github.com/RedHat-Israel/rose-game-ai
Self driving car module example https://github.com/RedHat-Israel/rose-game-ai-reference

Running a self driving module locally

Clone this repository, and make sure you have a game engine running.

Install requirements:

# Install requirements
pip install -r requirements.txt
pip install -r requirements-dev.txt

Write your own driving module, you can use the file mydriver.py:

vi mydriver.py

Run using mydriver.py as the driving module:

python main.py --driver mydriver.py

Running ROSE game components containerized

Running the game engine ( on http://127.0.0.1:8880 )

podman run --rm --network host -it quay.io/rose/rose-game-engine:latest

Running the game web based user interface ( on http://127.0.0.1:8080 )

podman run --rm --network host -it quay.io/rose/rose-game-web-ui:latest

Running your self driving module, requires a local driver.py file with your driving module. ( on http://127.0.0.1:8081 )

# NOTE: will mount mydriver.py from local directory into the container file system
podman run --rm --network host -it \
  -v $(pwd)/:/driver:z \
  -e DRIVER=/driver/mydriver.py \
  quay.io/rose/rose-game-ai:latest