Mine Mayhem | Unreal Engine | Solo Project
Overview
Mine Mayhem is an endless runner built in Unreal Engine. Its modular spawn system gradually increases difficulty, introducing hazards such as wooden barriers, crystal walls, and colored rock formations. Power-ups like the Coin Magnet and Jump Boost add strategic depth and help maximise scores.
Technical Implementation
Balanced Difficulty & Spawn Rates
The Challenge: During early development, obstacles and power-ups spawned with equal probability. This resulted in unbalanced gameplay, with excessive hazards or frequent power-ups, which made the experience inconsistent.
The Solution: I implemented a modular system using "Random Float in Range" nodes, enabling manual control over each object's spawn probability. For example, I set a 10% chance for tall Crystal Walls and a 40% chance for jumpable Wood barriers.
2. Infinite Procedural Level Generation
The Challenge: I sought an efficient method to generate endless levels without manually constructing large maps, as this approach is inefficient and consumes excessive memory on mobile platforms.
The Solution: I developed a Master Tile Blueprint featuring a box collision at its end. When triggered by the player, this activates the "Spawn Tile" function in the Game Mode Blueprint, generating a new tile. To maintain a clean scene, I implemented a delay and a "Destroy Actor" node, allowing tiles to remove themselves after the player passes.
3. Responsive Mid-Air Control
The Challenge: During testing, I observed that after jumping, the player remained "stuck" in the animation and could not land quickly enough to avoid obstacles. This made the game feel unresponsive.
The Solution: I implemented logic in the Character Blueprint to accelerate the character’s return to the ground, enhancing player agency and control during jumps.
Reflection on Development
Developing Mine Mayhem allowed me to refine my skills in procedural generation and iterative balancing within Unreal Engine. I spent much of the development cycle improving the modular spawn system. I found that uniform probability led to inconsistent gameplay, so I implemented a manual distribution system to achieve a balanced difficulty curve. Addressing technical challenges, such as optimising actor destruction for mobile devices and adjusting character movement for more responsive input, reinforced the value of playtesting in identifying and resolving issues not visible in the editor. This project showed me that the success of an endless runner depends not only on environment design but also on subtle gameplay adjustments that give players a strong sense of control.
Assets & Credits
Developed as a solo project. Some environmental assets, audio files, and animation packs were sourced from public domain libraries and the Unreal Engine Marketplace. All original gameplay logic and systems architecture were developed by me.