That One Dungeon
Feb 2023 - April 2024
A 2D action adventure game where you survive as long as you can exploring an evolving dungeon.
Project Overview
Battle through an endless dungeon with randomized floors, deadly traps, and hordes of monsters. Choose your class, explore different varients of hand crafted levels, and see how long you can survive. Steam demo out now!
That One Dungeon is a fast-paced, infinite dungeon crawler made in Godot 4. The player selects a class and fights through never ending dungeon levels filled with enemies, traps, and treasure. The goal is to survive as long as possible, reaching a high score before death inevitably catches up. Every run is different, and each room may hide secrets that reveal the dungeonβs dark history.
- Custom GPT-like model (GPTModel) with positional embeddings
- Trained with cross_entropy loss and AdamW optimizer
- Evaluation at configurable intervals using validation loader
- Tokenizer: tiktoken with GPT-2 encoding
- Dataset split into context-length windows with shifting
- Dataloader provides batched training and target input tensors
- Runs multiple epochs over training data
- Tracks training/validation loss at intervals
- Optional sample generation during training
- Saves model state dict for persistence
π§ Model Architecture
π Tokenization & Data Pipeline
π§ͺ Training & Evaluation
Project Features
- π§ Three playable classes: Ranger, Wizard, Rogue
- π Increasing difficulty with each level
- π¦ Multiple enemy types (e.g., slimes, bats)
- π° Collectible treasures to increase your score
- π Random food pickups to recover health
- β οΈ Floor traps that punish reckless movement
- πΉοΈ Tight, responsive controls and smooth shooting mechanics
- π§ Subtle hidden lore scattered throughout the dungeon
- π§Ύ Score system to compete for the best run
Gameplay
Explore the dungeon from a top-down perspective, navigating maze-like rooms while avoiding traps and enemies. Combat is fast and strategic β each class has unique movement speed, attack range, and firepower. Every five levels, the dungeon becomes more intense, testing your reflexes and decision-making.
Controls:
- β / W..............Move Up
- β / S..........Move Down
- β / A...........Move Left
- β / D.........Move Right
- Left Mouse Click.........Shoot/Attack
- ESC.........Pause/Menu
Technologies Used
- π Godot 4 Engine (GDScript)
- π¨ Custom pixel art for characters and environments
- π SFX and background music for immersion
- πΎ JSON-based data for procedural content and class balancing
- π§ͺ AdamW Optimizer for stable convergence
- π Matplotlib Visualizing training and validation loss
- π File I/O Data reading and checkpoint saving
Project Images
Below are some additional images showcasing the project.
Description of this image or feature.
Explanation about this feature.
More details about the project component.