Maze Runner: Building an Immersive 3D Action-Puzzle Experience in Unity
Problem
Developing an engaging 3D game requires intricate level design, intuitive controls, and seamless transitions to maintain player immersion. The challenge was to create a multi-stage game that progressively introduced new mechanics and threats, delivering a compelling experience for players navigating complex environments.
Solution
Our team developed Maze Runner, a third-person 3D game built with C++ and Unity, challenging players to navigate three distinct and progressively difficult levels. The game integrates core movement mechanics, environmental hazards (like rising lava), and AI-driven enemies, culminating in a dynamic action-puzzle experience.
My Role
Lead UI/UX & Scene Management Developer:
- Primary UI/UX Developer: Designed and implemented the loading and settings screens, ensuring a polished and intuitive user experience for game configuration and transitions.
- Scene Management Architect: Programmed the logic for seamless scene switching within Unity, connecting the game's distinct levels and core menus.
- Core Gameplay Contributor: Collaborated on developing fundamental player mechanics, including running and walking capabilities.
- Version Control Strategist: Proactively managed potential GitHub merge conflicts by maintaining robust local backups, ensuring project continuity and data integrity during collaborative development.
Process & Key Features
Our development process involved collaborative programming and iterative testing:
- Collaborative Ideation: Defined core gameplay mechanics and level concepts as a team.
- Three-Layered Level Design:
- Layer 1 (Dungeon Room): Focus on coin collection, introducing basic navigation.
- Layer 2 (Pillar Room): Platforming challenge with rising lava, demanding precise jumps and timing.
- Layer 3 (Dungeon with Enemy): Combines coin collection with evasion, introducing an AI-controlled monster that actively pursues the player.
- Seamless Scene Transitions: Implemented robust scene switching logic to guide players through the distinct environments.
- Player Control Implementation: Developed responsive third-person character movement.
- AI & Environmental Hazards: Integrated rising lava mechanics and a simple enemy AI for dynamic threats.
- Alpha Testing & Feedback Integration: Conducted internal alpha testing with external players to gather feedback, identifying areas for improvement in gameplay and user experience.
- Version Control Resilience: Employed a personal strategy of local backups to mitigate GitHub merge conflicts, ensuring efficient team collaboration and preventing data loss.
Impact & Results
- Functional 3D Game: Successfully delivered a multi-level 3D game demonstrating proficiency in Unity development and C++ scripting.
- Enhanced Player Experience: Created engaging levels with varied challenges, from platforming to evasion, providing a dynamic gameplay loop.
- Robust UI/UX & Scene Flow: Implemented critical UI elements and scene management, ensuring a smooth and professional user journey through the game.
- Collaborative Problem-Solving: Demonstrated effective teamwork and personal initiative in overcoming common development challenges like version control conflicts.
- First-Time Hardware/Software Integration (Implicit): While not a hardware project, working with Unity's engine and scripting for game logic provided valuable experience in connecting high-level design with underlying code execution, akin to hardware-software integration for first-time game developers.
Key Learnings
This project provided invaluable experience in 3D game development with Unity and C++, specifically in UI/UX implementation, scene management, and collaborative coding. It also highlighted the importance of proactive version control strategies in team environments and the value of alpha testing for iterative improvement.