Postmortem: Last Walk
Last Walk is my fourth game and my first major Unreal Engine project. Departing from my usual horror games, it focused on reflection and simple physics-based puzzles in a surreal forest environment. While I faced challenges with packaging, performance, and time constraints, the project allowed me to experiment with new ideas and build on my game development skills. Here's a breakdown of what went right, what went wrong, what I would change, and lessons learned.
What Went Right
Physics-Based Mechanics The core mechanics, particularly the pressure plate system and the object pickup mechanic, functioned well after refinement. Using tutorials for these systems and modifying them to meet my needs worked well. The interaction system, where objects could trigger doors when placed on pressure plates, added a satisfying puzzle element and anchored the gameplay.
Sound Design The sound design added significantly to the game’s tone and atmosphere. I incorporated melancholic piano samples, ambient sounds like chirping birds, and subtle distortions to create an immersive environment. The sound design supported the game's themes and tied in well with the visuals.
Self-Made Interaction Widget The E widget interaction system, which I designed myself, was one of the most successful mechanics. It displayed a prompt when the player was in range of an interactable object or area and functioned intuitively. Implementing this system without relying on tutorials was a milestone in my Unreal Engine development journey, and I was pleased with how well it integrated into the game. It’s obviously not a huge thing, but it mans I actually understand what I’m doing which is kind of important.
Environment Design/Visuals After restarting due to technical issues, I designed a surreal forest environment that balanced realism and dreamlike qualities. The large statues and unique architecture, inspired by real-world monuments like the Didgori Battle Memorial and the Golden Hands Bridge, added character and supported the game’s reflective themes. Despite being unable to polish the environment as much as I wanted, the final design achieved the desired tone. I think it’s a cool location and I just wish I could’ve added even more to the map. I also implemented a retro pixel shader that really helped to bring everything together and emphasize the mood I was going for. It also helped it look like all my assets were part of the same world despite being in multiple styles and from various sources. I think that the game’s visuals are pretty cool overall.
What Went Wrong
Packaging Issues The game’s biggest technical challenge was the inability to package it with a functional start menu. Despite multiple rebuilds and troubleshooting, the assets failed to load properly when starting from the main menu. This consumed hours of development time and ultimately forced me to release the first version of this game without the title screen, which detracted from the final presentation.
Frame Rate Problems Although the shader I used gave the illusion of low-poly graphics, the underlying assets were realistic models, leading to high performance demands. These frame rate drops became more noticeable on less powerful hardware during playtesting.
Limited Time for World-Building Time constraints prevented me from expanding the environment and adding the level of detail I envisioned. I would have liked to incorporate more interactive elements, secrets, and visual storytelling opportunities to enrich the world and create a more immersive experience.
Missed Opportunities for Features I ran out of time to include many features I originally planned, such as multiple endings, additional mechanics, fixed camera angles, and more cutscenes. These elements could have added variety, replayability, and cinematic depth to the game.
What I Would Change
Focus More on Polishing the Environment Given more time, I would spend additional effort on refining the environment, adding more details, and creating richer world-building elements. Expanding the surreal aspects of the forest and incorporating interactable objects or hidden secrets would enhance the player's experience.
Add Features to Increase Depth Implementing multiple endings, additional mechanics, and fixed camera angles could have made the game more engaging and rewarding. Cutscenes and small in-game secrets would also provide moments of discovery and variety for players.
Address Performance Issues Earlier Optimizing assets and testing performance with the pixel shader early in development would have avoided the frame rate problems. Finding a balance between aesthetic choices and technical constraints is something I would focus on in future projects.
Debug the Start Menu Early Resolving the start menu issue earlier in the process could have saved significant time and frustration. Packaging out versions of my game as I progressed with development may have helped me catch this issue earlier. Setting aside for time for the packaging process would have also been very beneficial.
Lessons Learned
Time Management is Key Spending too much time on specific details, like trying to perfectly recreate a real-world forest, delayed progress unnecessarily. Starting with broader concepts and refining them later would have saved time and allowed for more polish in other areas.
The Importance of Optimization Balancing aesthetics with performance is critical. While the pixel shader brought everything together visually, its impact on frame rates highlighted the need to test performance implications from the start.
Self-Reliance Pays Off Creating the E widget interaction system without tutorials demonstrated my growing understanding of Unreal Engine. While tutorials can be helpful, solving problems independently often leads to more efficient and effective solutions.
Prioritization is Crucial With limited time, focusing on the most impactful features ensures the core experience is polished. By setting clear priorities, I could have avoided last-minute compromises and ensured more of my planned features made it into the final game.
Last Walk was a challenging project that pushed me to expand my skills and explore new ideas. Despite setbacks, I’m proud of what I achieved within the constraints I faced. Moving forward, I’ll apply the lessons learned to improve my workflow, manage time more effectively, and deliver more polished games.
Thanks for reading!
- BP
Did you like this post? Tell us
Leave a comment
Log in with your itch.io account to leave a comment.