This repo will contain the entirety of the game that will be made in the module 200
You need:
- Python 3
- pip
- pygame
- numpy
From the project folder, run:
python3 -m pip install pygame numpyIf your system blocks global Python package installs, use a virtual environment:
python3 -m venv .venv
source .venv/bin/activate
python3 -m pip install pygame numpyFrom the project folder, run:
python3 src/main.pyYou can also use the included shell script:
chmod +x ./scripts/setup_and_run.sh
./scripts/setup_and_run.shThe script will:
- Create a virtual environment named
.venvif one does not already exist. - Install or update
pygameandnumpy. - Run
main.py.
If python3 is not found, install Python 3 first.
On Debian/Ubuntu-based systems:
sudo apt update
sudo apt install python3 python3-pip python3-venvroot
| assets/
| │
| ├── art/
| │ ├── characters/
| │ │ ├── player/
| │ │ ├── goons/
| │ │ ├── elite/
| │ │ └── bosses/
| │ │
| │ ├── environment/
| │ │ ├── tilesets/
| │ │ ├── props/
| │ │
| │ ├── items/
| │ │
| │ ├── effects/
| │ │
| │ └── ui/
| │ ├── icons/
| │ ├── hud/
| │ ├── menus/
| │
| ├── audio/
| │ ├── music/
| │ │ ├── labyrinth/
| │ │ ├── boss/
| │ │ └── menu/
| │ │
| │ ├── sfx/
| │ │ ├── combat/
| │ │ ├── ui/
| │ │ ├── environment/
| │ │ └── magic/
| │ │
| │ └── voice/
| │ └── narrator/
| │
| ├── animations/
| │ ├── player/
| │ ├── enemies/
| │ ├── bosses/
| │ └── effects/
| │
| ├── maps/
| │ ├── gen_configs/
| │ └── test/
| │
| ├── data/
| ├── items/
| ├── enemies/
|
├── scripts/
|
├── src/
│ ├── engine/
| | ├── renderer/
| | ├── audio/
| | ├── collision/
│ ├── game/
├── ui/
├── player/
├── enemies/
├── labyrinth_gen/
├── Objects/
Here are the commit message types we should try to write:
-
feat : for implementation of features (kind of reserved for the first time a feature is pushed)
-
fix : for fixes of already added features / core mechanics
-
perf : performance or optimisation changes
- perf : performance or optimisation changes
- style : non-functional focussing on formatting or clean-up
- docs : add project structure explanation
- other : anything else
feat: implemented enemy pathfinding
fix: prevented player from walking through walls
perf: simplified labyrinth generation loop
chore: foolib, upgrade to 1.2.3
style: normalised indentation in rooms class/file
docs: updated README setup instructions