Overview
A text adventure game inspired by classics like Zork, built for CS 3620 Server-Side Web Architecture. Grade: A. I wrote the code myself. I used AI to research concepts and look things up, but the code is mine.
There are two repos:
- 1980_Style_Adventure-Game — the original Python version. This is my code.
- retro_adventure_game — an AI-expanded Django web version that's incomplete. I'm honest about that distinction.
What I Built (Original Python Version)
Course project using Python (standard library + Tkinter). No frameworks, no external dependencies beyond the standard library.
- OOP scene graph: Rooms as objects with directional connections, descriptions, and item lists
- Inventory system: Pick up, drop, use, and examine items
- Tkinter GUI: Graphical interface for the text adventure
- File-based outcomes logging: Game events written to file
- Riddle mechanics: Puzzles with progressive hints
- Command parser: Handles verb-noun patterns with synonym support
- Save/load: Serialize game state to JSON
# Room definition example
rooms = {
"entrance": {
"description": "A dimly lit cave entrance. Passages lead north and east.",
"exits": {"north": "hallway", "east": "storage"},
"items": ["torch", "note"],
}
}
Django Web Rebuild (Incomplete)
I started rebuilding this as a Django/PostgreSQL web app with session-based game state and a retro CRT visual style. That version uses AI-generated code more heavily and is not finished. The original Python version is the one I'm proud of.
What I Learned
- Designing a text parser that feels natural without NLP libraries
- Modeling game state as serializable data structures
- OOP design patterns for game entities
- Moving from a CLI prototype to thinking about web architecture
