A simple recreation of the classic Asteroids arcade game, built using Python and Pygame.
- Player movement & rotation
- Randomly spawning asteroids
- Bullet firing with cooldown
- Collision detection
- Asteroid splitting logic
- W – Move forward
- S – Move backward
- A / D – Rotate
- Space – Shoot
- Python 3.10+
- pygame 2.6+
- (Optional) uv (package manager)
Using uv:
uv venv
uv pip install -e .
uv pip install pygameUsing pip:
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txt # or: pip install pygameUsing uv:
uv run python main.py Using Python:
python main.py- Better collision effects
- Add background music + SFX
- Multiple levels and difficulty scaling
- Scoreboard and high‑score saving
- Health system or shield mechanic
- Asteroid variation (sizes, speed, rotation)
- Power‑ups (triple‑shot, rapid‑fire, etc.)
- Game menu + pause screen
- Publish as an executable
- Optional controller support
