Overview
Postmortem
Gallery
Overview
Project ApophisProject Apophis throws you into an adrenaline-pumping first-person extraction-shooter, where you'll confront an alien infestation aboard a derelict spaceship. As an explorer, you must brave the unique environment, and the Hive lurking in the shadows, to scavenge for valuable resources. Stealth becomes your best friend as you navigate the eerie surroundings, aiming to accomplish objectives, secure rare gear, and, most importantly, escape. You'll start each mission with loot carried over from previous expeditions. But if you die in the ship, you'll lose it all.
|
|
|
On Extraction ShootersExtraction Shooters are an interesting genre. A combination of the values of Roguelikes, First Person Shooters, and RPGs, they've found a snug spot in the gaming market with notable success. And yet, nobody has ever made a really good one. Project Apophis has allowed my team and I to explore this genre, to learn the "ins and outs" of how these games are made, and to create deep understandings of what each major entry does well, and what each does poorly. With this knowledge in hand, I'm now well prepared to tackle new game design challenges, and I'm more excited than ever to do so.
|
Postmortem
Apophis Postmortem - Scoot, Loot, Shoot, Die.
IntroductionExtraction Shooters are an interesting genre. A combination of the values of Roguelikes, First Person Shooters, and RPGs, they've found a snug spot in the gaming market with notable success. And yet, nobody has ever made a really good one. Project Apophis has allowed my team and I to explore this genre, to learn the "ins and outs" of how these games are made, and to create deep understandings of what each major entry does well, and what each does poorly. With this knowledge in hand, I'm now well prepared to tackle new game design challenges, and I'm more excited than ever to do so.
|
|
Key Successes
- Comprehensive Planning and Rigorous Organization: Our project's success was significantly bolstered by our commitment to extensive planning and obsessive organization. We held daily meetings without fail, including every single weekend and major holiday, ensuring that the entire team was aligned and fully informed throughout the project's lifetime. This relentless dedication to communication and coordination allowed us to anticipate challenges, adjust plans on the fly, and maintain a clear vision throughout the project. This level of engagement and structured approach was instrumental in navigating the project's complexity and driving it to completion on time and with high quality. Moreover, our project benefited greatly from the daily use of project management tools, specifically Confluence and Jira, and constant version control excellence through Perforce. These tools played a critical role in documenting our processes, managing tasks, and facilitating seamless communication across the team. This structured, tool-enhanced approach was pivotal in maintaining project momentum and achieving our ambitious goals with precision.
- Iterative Design Excellence: The project shone through its iterative design process, where each system implementation was approached with the mindset of continuous improvement. This strategy not only improved the project's quality but also deepened our understanding of how each component fits within the broader game environment. By embracing the iterative nature of design, we unlocked substantial quality improvements, showcasing our commitment to excellence and innovation.
- Robust Bug Management Practices: Our proactive stance on bug management was pivotal, enabling us to maintain a high standard of game functionality and user experience. Through meticulous testing and debugging (a LOOOT of debugging!), we were able to identify and rectify issues quickly, ensuring that gameplay remained engaging and uninterrupted. This relentless pursuit of technical integrity underpins the project's success, highlighting our team's expertise and dedication to delivering not just a game, but a polished product.
- Foundational Codebase Strength: The strategic development of a solid, reusable codebase was a cornerstone of our project's success. This foundational work facilitated efficient system refinements and feature integrations, highlighting the foresight and technical acumen of our team. The ability to build upon a robust framework meant that enhancements could be implemented with minimal friction, streamlining the development process and fostering innovation.
- Adaptive and Efficient Teamwork: Our project benefited immensely from dynamic teamwork and effective communication. The team's ability to adapt to changing circumstances, our wide range of technical and design skills, and our shared commitment to transparency and mutual support, were instrumental in navigating the project's complexities. This collaborative spirit was the engine of our project, driving us forward through challenges and enabling us to leverage diverse skill sets towards common goals, while creating lifetime relationships that none of us will ever forget.
Encountered Challenges
- Scope and Time Management: One of the project's recurring challenges was managing the ambitious scope within constrained timelines. This difficulty highlighted the importance of realistic planning and prioritization, meanwhile teaching us valuable lessons in balancing ambition with feasibility and underscoring the need for more accurate time estimations and the importance of setting achievable goals to maintain momentum and team morale. However, because of our team's aforementioned rigorous organization, we were able to manage this challenge everywhere it appeared, and still release a polished, performant, and deeply enjoyable game.
- Technical Limitations and Learning Curves: Our journey encountered specific technical limitations, notably with Unreal Engine's data-driven design intricacies in regards to File IO. These challenges required us to delve deep into engine documentation, source code, problem-solving, and dynamic memory allocation (so... the semi-scary stuff!). Tackling these obstacles head-on, we pushed our adaptability to new heights, developing an entirely new engine-level system for hot saving and loading in Unreal Engine. This experience not only honed our technical skills but also highlighted the tremendous flexibility and innovationof our team, laying a stronger foundation for our future projects, and inspiring us to continue with our heads high.
- Performance Issues and AI Overhead: A significant challenge we faced was the severe performance decline caused by spawning and managing hundreds of AI enemies simultaneously. This not only affected gameplay fluidity but also threatened to undermine the overall player experience. To address this, we embarked on a comprehensive overhaul of our AI system. By innovating a novel approach that delegated decision-making to a central AI controller attached to the player themselves, rather than individual pawns, we all but nullified computational overhead. This breakthrough allowed us to maintain dense enemy populations without sacrificing performance, again showcasing our team's ability to creatively solve complex technical problems and enhance game mechanics.
- Integration and Collaboration with New Team Members: The late addition of new team members presented significant challenges in maintaining the project's established quality and workflow. This situation shed light on the critical need for effective onboarding and integration processes. It revealed the delicate balance between welcoming fresh perspectives and preserving the project's core vision and standards, prompting us to reflect on and improve our collaborative practices.
Conclusion
Floating In My Tin Can
The development of Project Apophis was characterized by a relentless pursuit of excellence, evident in the iterative design approach, rigorous bug management, and unwavering teamwork. The project's success was due in large part to these strengths, though it also faced significant challenges in scope management and the integration of new team members. These experiences underline the importance of clear scope definition, flexible yet realistic planning, and the need for effective integration strategies for new team members.
The project's journey from conception to completion was a testament to the team's technical prowess and collaborative spirit. Key learnings include the value of foundational codebase planning, the necessity of accommodating iterative feedback loops, and the critical nature of comprehensive team integration practices. Moving forward, these insights will guide future projects towards more streamlined development processes, enhanced team dynamics, and ultimately, higher-quality game experiences. Our ability to pivot, particularly in reimagining AI and File IO systems for better performance and functionality, not only solved critical issues but also set new benchmarks for our future projects. This postmortem underscores the invaluable lessons learned in problem-solving, teamwork, and project management, laying a solid foundation for our continued success in game development.
Overall, I'm extremely pleased not only with the quality of the project we produced, not only with the way our team managed to pivot when necessary, and not only the way we overcame signifcant limitations, but I'm most proud of the way we worked together. Our team became a family during this project, and we genuinely had each other's backs, ready and willing to help at every turn. I'm proud of Project Apophis, and I'm proud of my team!
The project's journey from conception to completion was a testament to the team's technical prowess and collaborative spirit. Key learnings include the value of foundational codebase planning, the necessity of accommodating iterative feedback loops, and the critical nature of comprehensive team integration practices. Moving forward, these insights will guide future projects towards more streamlined development processes, enhanced team dynamics, and ultimately, higher-quality game experiences. Our ability to pivot, particularly in reimagining AI and File IO systems for better performance and functionality, not only solved critical issues but also set new benchmarks for our future projects. This postmortem underscores the invaluable lessons learned in problem-solving, teamwork, and project management, laying a solid foundation for our continued success in game development.
Overall, I'm extremely pleased not only with the quality of the project we produced, not only with the way our team managed to pivot when necessary, and not only the way we overcame signifcant limitations, but I'm most proud of the way we worked together. Our team became a family during this project, and we genuinely had each other's backs, ready and willing to help at every turn. I'm proud of Project Apophis, and I'm proud of my team!