Student: Tynan Kocet Teacher: Mr McFarlane
This project is a text-based dark-fantasy adventure game developed in Python 3.14 using Object-Oriented Programming (OOP).
The game focuses on exploration, combat, dialogue, inventory management, and strategic decision-making. The player travels between different areas, interacts with NPCs, collects and equips weapons, and fights enemies within dangerous dungeons.
- Exploration: Players travel between connected areas using directional commands and discover NPCs, weapons, dungeons, and hidden areas.
- Combat System: Players can attack, parry, or flee when facing enemies.
- Parry System: Players can attempt to parry an incoming enemy attack. A successful parry avoids the incoming damage, while a failed parry causes the player to take increased damage.
- Telegraph System: Enemies provide combat text cues ("Tells") that give the player information about their upcoming attack.
- Inventory System: Players can collect weapons, store them in their inventory, and equip weapons to increase their attack power.
- Dialogue System: NPCs use branching dialogue trees that allow players to select different responses.
- Dungeon System: Dungeons contain enemies that must be defeated before the dungeon can be cleared.
- Loot System: Defeated enemies can drop weapons or special items that the player can collect.
- Safe Areas: Players can return to safe areas, recover their health, and use commands such as
pray. - Index System: The game contains an index displaying discovered weapons, characters, enemies, and locations.
`Oakhaven Town Hub`
⬇
`Dungeon Level 1 - Ashenhollow`
⬇
`Dungeon Level 2 - Gloomwood Forest`
⬇
`Dungeon Level 3 - Ventus Azura`
⬇
`Dragon Arena - Final Boss and Final Level`
The current version of the game includes:
- Text-based exploration
- Multiple connected areas
- NPC interactions
- Branching dialogue
- Player inventory
- Weapon collection and equipment
- Enemy encounters
- Dungeon progression
- Enemy attack telegraphs
- Attack, parry, and flee combat options
- Enemy loot drops
- Safe areas and healing
- Hidden/secret areas
- In-game index
- Graphical user interface using Tkinter
I hereby declare that this repository contains my own authentic work. Development stages, troubleshooting paths, and logic structures are systematically documented through incremental git commit hashes to prevent misrepresentation and plagiarism.