3weapon types
3enemy types
Overview
This is a top-down survival game built with Pygame, developed on Replit. The player moves around an open arena fending off periodically spawning enemies, picking up items, and gaining experience, until health runs out and the game ends.
Features
- Free movement around a scrolling tile-grid arena
- Multiple weapon types (axe, crossbow, stick) with distinct attack behavior
- Multiple enemy types, including fire and ice zombie variants, that spawn periodically around the player
- Health and experience HUD bars with high/medium/low states
- Pickup items, including a first-aid kit for healing
- Grave stone markers left behind on enemy death
- Pause screen and a game-over screen
- Periodic health regeneration and restart support
How it works
The game loop lives in main.py, which pulls shared constants and the Pygame window from common.py, enemy behavior from creatures.py, and spawn timing from spawn.py. A small helper module, pygametools.py, provides vector math and image-cropping utilities used for rendering the player’s weapon and HUD elements.
