Labyrinth
A downloadable game for Windows
Enter a shifting subterranean nightmare where the map is dynamically generated, the atmosphere is thick with tension, and the creatures hunting you down are remarkably perceptive. How deep can you survive?
The Objective: Survive the Endless Descent
The ultimate goal in Labyrinth is simple yet brutal: see how many dungeon layers you can conquer before your party falls.
- The 25-Room Gauntlet: Each dungeon layer consists of a 25-room randomly generated maze. Find the hidden portal room to escape the floor and transition to the next dungeon layout.
- Escalating Difficulty: Every time you successfully clear a dungeon and descend to the next level, the stakes rise. The dungeon layer scales in challenge, increasing enemy difficulty, behavior intensity, and survival pressure.
- Scavenge to Survive: To counteract the brutal scaling difficulty, you must explore every alcove to collect vital survival items, equipment, and resources needed to keep your heroes healthy and defeat your opponents.
The Heroes: Real-Time Character Swapping
You don't have to tackle the maze alone or stick to a single playstyle. Players can dynamically swap between three distinct character classes at the campfire to handle different tactical situations:
- The Cleric: Manipulates the battlefield from a distance using magical abilities and spellcasting.
- The Knight: Dominates close-quarters combat, utilizing a sword-and-shield system to block incoming strikes and hold the line.
- The Ranger: Controls spatial positioning and picks off threats from afar using precise long-range bow mechanics.
About the Project
Labyrinth is an atmospheric, system-driven tactical dungeon crawler. It combines a procedural layout engine with complex, object-oriented systems to create an unpredictable survival environment.
As a game development instructor, I treat this project as a live, production-grade architecture playground. It’s where I design, implement, and stress-test the exact type of advanced gameplay systems I teach in the classroom. This itch.io page is an open invitation for players, system design enthusiasts, and academic peers to download the latest alpha builds, jump into the sandbox, and see how these systems behave under real-world playtesting conditions.
Behind-the-Hood: The Core Mechanics
To give you a look at how games are structured under the hood, here is a breakdown of the core programming pipelines running in real-time behind the screen:
- Procedural Dungeon Layouts: Explore a layout that is entirely random every time you play. The map assembly system randomly builds rooms, connects corridors, and places dynamic wall-mounted torch grids on the fly.
- Contextual Dialogue & Dynamic UI: Swap between different hero classes who contextually react to their environment. Using a data-driven text and portrait configuration system, characters express unique, real-time tactical barks based on gameplay variables (like running dangerously low on food or health).
- Polymorphic AI Minds (Smart, Adaptable Brains): Face enemies that don't rely on messy, hardcoded logic. Built using the object-oriented State Pattern, enemy behavior is completely modular. Monsters smoothly transition from idling and patrolling to chasing, striking, and executing a calculated two-phase search loop to hunt you down at your last known location if you break line-of-sight.
- Two-Tiered Vision Mathematics: Use the environment to your tactical advantage. To simulate realistic sight, the AI uses vector math to check if you are in their 90-degree peripheral vision cone, and then fires a height-corrected physics raycast (a laser trace line) to ensure an absolute line-of-sight before pursuing you through solid geometry.
- Memory Optimization (Object Pooling): Spawning and deleting enemies while the player is moving causes major CPU lag spikes. To prevent this, the
SpawnPoolManagerpre-loads enemies before gameplay begins. When an enemy defeats a player or dies, it isn't deleted; it is wiped clean, hidden, and tossed back into a reusable queue to be safely re-awakened later without causing lag. - Atmospheric Distance Occlusion: Navigate a heavy, dust-choked underbelly where global visual rendering is strictly clipped to 15 units. This optimization preserves exploration mystery and forces tight, high-stakes combat distances by keeping upcoming room tiles completely hidden until you step into range.
Active Development Sandbox
This game is actively under development. Because it functions as a live testing environment for advanced gameplay code, systems are continually being rewritten and optimized. You will encounter unpolished visual placeholders, floating debug numbers, and experimental mechanics. Your feedback in the comments section below is incredibly valuable as I continue to balance the survival loops and enemy tracking behaviors!
Follow the Code: Engineering Write-ups & Dev Logs
If you are a fellow developer, a student looking to learn, or an institutional recruiter looking to assess my curriculum development standards and the underlying code architecture, spatial mathematics, and structural design choices behind Labyrinth, I document every step of the development pipeline in a series of detailed technical logs.
Official Technical Portfolio & Dev Blog:
Download the latest prototype build below, push the AI systems to their mathematical limits, and let me know what you think!
| Updated | 2 days ago |
| Published | 5 days ago |
| Status | In development |
| Platforms | Windows |
| Author | Jay Webb |
| Genre | Adventure |
| Content | No generative AI was used |
Download
Development log
- Changes and fixes in the latest build v1.42 days ago

Comments
Log in with itch.io to leave a comment.
Very cool concept and had fun playing, looking forward to seeing future updates. Would love to see multiplayer too.
(bugs/potential issues: enemies and players did levitate off the ground a bit. On lvl 2 are some almost invisible walls in spawn room, on lvl 3 two characters spawned, one with the camera and another with the movement, also on lvl 3 enemies seemed to stop targeting the player?)