Electric Gold
Fast-Paced Survival FPS
Unreal Engine 5
Iterative Design
C++
Overview
For this solo project, I spent around 4 months creating a small-scale game to focus on improving my iterative design skills. My goal was to create playable prototypes quickly, so that I could frequently conduct playtest sessions with players. During these sessions, I collected and analyzed feedback about specific game systems to determine where impactful change needed to occur.
Through this process, several significant changes to the overall game structure were made based on the feedback I received, which resulted in the design reaching a measurably improved state from where it began.
Status: Completed
Tools Used:
- Unreal Engine 5
- Voxel Plugin (for UE5)
- Blender
- Photoshop
Project Highlights
- Rapidly developed playable game prototypes
- Consistently iterated system designs based on user feedback
- Conducted 5 unique playtest sessions with a total of 50+ participants.
- Designed and created visual elements including 3D models, Post Processing, and Materials
- Implemented destructible terrain using the UE5 Voxel Plugin
- Rigged and animated weapon and character assets using UE5’s Control Rig tools
- Blueprinted functional features within the UE5 editor, before refactoring to C++
Iterative Design Process
When I started this project, I wanted to create a fast-paced FPS that involved some kind of mining through rock mechanic. With that core description in mind, I made my primary personal goal with this project to hone my iterative design process. Because of this, I was open to changing concepts and designs as I collected feedback on prototypes. With this game concept in mind, I set to work creating an extremely basic first prototype.
For this first prototype, I was imagining a dark cave-like environment where you mine through rock to find little pockets of space containing gold and other minerals.
After briefly conducting playtests with this first prototype, I identified meaningful points for improvement for the next prototype.
The environment is difficult to navigate
Mining through the rock feels disorienting
Players do not have clear direction
Play-testers indicated that the environment was difficult to navigate, especially when drilling through the rock walls. This was due to a combination of the dark environment and claustrophobic placement of physical elements. Mining with the drills was especially disorienting because being so close to the rock caused sporadic and bright light changes because of the spot light attached to the player. Players also indicated that they were unsure of what their goal was supposed to be.
Taking this feedback into account, I devised the following changes that I would implement for the next prototype:
Make the environment more horizontal than vertical
Focus on making it easy for players to navigate their immediate environment
Give players obvious short-term goals
I identified that players felt claustrophobic because they had a tendency to walk along the ground instead of using their boost ability to fly through the air to different vertical positions. Even though there was a bit more vertical room to move around, there was not enough space to accommodate movement for the preferred playstyle of the game. Because of this, I decided that with the next prototype, I would focus heavily on reworking the environment to allow for faster unobstructed ground movement while keeping some vertical component.
For the second iteration of the prototype, I didn’t address the obvious short-term goal issue that I had previously identified. Instead, I focused on the feel of the combat and the navigability of the environment. To make mining less disorienting, I added the ability to throw your current weapon to break rock in addition to increasing the drill rock-break range.
After working on this prototype for a couple weeks, I wanted know if the changes I was making were having the impact that I intended. In order to evaluate whether or not I was heading in the right direction, I conducted another round of playtesting with this prototype.
To accomplish this, I recruited 15 participants to play the prototype and give feedback about the combat feel. After analyzing notes and survey data that I collected, I was able to identify the following issues with the prototype:
Despite the increased amount of issues identified, I believe this to be a good sign. With the previous prototype, the larger issues present prevented the identification of more specific game-feel issues.
From this point on in my design process, I would create 2 more similar prototypes to conduct user testing with. After each user testing session, I would similarly gather feedback, analyze the most impactful changes that I could make, and iterate designs before the next prototype.
Once I was reaching my self-appointed deadline, I focused on completing a final prototype.
I was able to conduct one final playtesting session. Even though I did not plan to further iterate on this design (due to the deadline), I was able to collect feedback and identify the following areas for improvement:
Players have difficulty figuring out how to get upgrades
Players often do not realize they are standing on a platform that is about to sink
Players do not know how to recharge their rage meter
If I were continue iterating on this project, I would address these issues by:
- Allowing players to interact with the short-term objective system before they enter the arena, so that they could see first-hand how upgrades are obtained.
- Providing more visual feedback and maybe some kind of alert when the player is standing on a platform that is about to sink
- Redesigning the method of replenishing your rage meter so it feels more intuitive
Through my iterative design process, I was able to easily identify and address gameplay issues. This process allowed me to build the overall design of the game around a specific and responsive combat feel, and gave me insight into how users interacted with specific elements of this game.
Key Takeaways
- This project gave me the opportunity to improve my iterative design process. It showed me that by focusing on prototyping and iterating impactful changes, I can leave room for more meaningful feedback during playtesting.
- I learned to streamline my process of quickly prototyping in blueprints, before refactoring systems in C++.
- Consistent playtesting sessions gave me valuable feedback that I could use to ground my design choices in.