Dungeon Maze Design: Game Development Insights

Dungeon Maze 2D Top-Down Game

Freelance project

Year: August 2023 – October 2023

Dungeon Maze: Overview

The game is called Alderwood Dungeon Maze, where the player, as Mabel, needs to survive by finding the way out of the dungeon. The player must avoid getting close to guards and explore the dungeon to understand the layout. The characters include Mabel, Thomas, and the Guards, who play a role in the level design. The game designers created it using the Unity Game Engine.

Alderwood: Game Mechanic

The player can either opt to confront the guard or escape by following the unobscured path. Mabel can be controlled using the user interface on the mobile system for navigation. Before proceeding, Mabel needs to ensure that key items are in their inventory system. Mabel’s gameplay is to evade capture or detection by the guard while navigating through the dungeon maze in search of Thomas, who was crying nearby.

Alderwood: Listen and Sound

Players are tasked with finding Thomas by listening for sounds across different areas. By following the sound of the voice or sound, players can locate Thomas, pick him up, and find the exit from the dungeon maze level before the guard captures you.

Alderwood: Tweak Mechanic

Initially, Mabel ran away from the guard, but now she has the option to use a weapon instead of attempting to evade or confront the guard directly. The guard can also be touched and revived after their points hit zero, returning to a position near Mabel that can seal them.

Dungeon Maze: Programming and Coding

In programming, I faced challenges with level design; nonetheless, I managed to address these problems through the use of nested loops and comprehensive testing. A crucial takeaway from my programming errors with Mabel was to use task code rather than job code. This is also my first time using an async operation instead of the usual coroutine to delay specific actions of the object, some of which involve the player’s enemies: the guards. I experienced the truth of coding when I created the level for the first time using code instead of setting it up manually.

Graphics and Arts

For the game’s art, I was the one who created it using Krita; the graphics are inspired by a reference image, though they are not a perfect match. I successfully implemented the design and concept using the Unity game engine, where I adjusted the graphic sizes for the creation of levels, players, enemies, items, and more. I designed concept art for Mabel, the guard, Thomas, the levels, and various other elements, using the provided material as a reference.

Errors and Bug Fix

Developing the AI is necessary for the required movement throughout the dungeon maze, especially for the Guard. Using the path points and certain errors that come out after that. I had to fix certain segments of code by redoing the code until the result was stable enough. This included recognising and resolving issues discovered during game testing, as well as applying enhancements. Regarding the code system, I encountered an issue with the guard’s movement when it interacts with Mabel, where the code should execute a specific function after synchronisation. I also had to revise some key elements, such as the button system for player movement, particularly when navigating the mobile figure through the level.

Misconduct and mistake

I revised the code by using synchronize instead of coroutine, which is typically used in the Unity game engine. At that time, I wasn’t aware of async synchronisation. After recent research, I discovered the mistakes that were made, but I am unable to correct them since the client can no longer be reached.

Dungeon Maze: Conclusion

At this point, I cease communication with the client on Discord, as the workload has become significantly heavier than before. I believe it’s better to avoid the person and move forward. Today, I realised the use of the entity-component system, but I wasn’t able to incorporate the code into the game at that time.

Displaying selector guards in the Unity Editor along with their component scripts, such as Transform and Rigidbody.
AI-generated image

Example guard in the scene with their own part in the inspector

A level design script in the Unity editor includes minimum and maximum values for the X and Y positions of the level layout.
AI-generated image

Example: the path point is where the level spawns in the game

A script outlining the movements for Mabel Alderwood.
AI-generated image

Example Mabel Movement Script

Script of Mabel leaving the prison after being rescued, crying as she sees Thomas still inside.
AI-generated image

Example Mabel Exit Script

Showing Thomas’s script of Alderwood crying, which features a range of sounds.
AI-generated image

Example Thomas Script

I drafted this article from my own perspective and used AI to polish the language.
Concept art (created with generative AI, touched up manually).

Fediverse reactions

Discover more from DuRound Sanctum Studio

Subscribe to get the latest posts sent to your email.

Person hiding in stone dungeon maze corridor as two armored guards with weapons approach

Leave a Reply