/HSE_ML_P2024

HSE second course final project about teaching AI to play parking game.

Primary LanguagePythonMIT LicenseMIT

Ultimate Parking

HSE second course final project about teaching AI to play parking game.

GitHub GitHub last commit GitHub top language GitHub code size in bytes GitHub release (latest by date)

Game screenshot

Description

The game is a 2D parking simulator. The player has to park a car in a parking spot. The car is controlled by the player using the WASD keys + space for hand brake. The car has to be parked in a parking spot without hitting any obstacles. The game is over when the car hits an obstacle or the parking spot. The game is won when the car is parked in the parking spot.

Special features:

  • The car has a limited amount of fuel. The fuel is consumed when the car is moving. The fuel can be refilled by picking up fuel canisters.
  • The car has a limited amount of health. The health is reduced when the car hits an obstacle. The health can be refilled by picking up health canisters.
  • The car has a limited amount of time to park. The time is reduced when the car is moving. The time can be refilled by picking up time canisters.

Special keys:

  • r - super-slowdown
  • f6 - screenshot
  • f7 - reset health

Installation

pip install -r requirements.txt

python ./main.py

Development setup

Create env:

python -m venv ultimate_parking

.\ultimate_parking\Scripts\activate

pip install -r requirements.txt

Save install:

pip freeze > requirements.txt

Build debug

python ./main.py

Check build release:

mypy .

pyinstaller.exe ./main.py

.\build\main\main.exe

Team