Into the Infinite is a Third-Person Action Game with Hack-and-Slash elements, proceduraly generated level layouts, and random weapon progression. Created in Unreal Engine 4.


During this project I planned, organized, and tracked the development of a complete and cohesive game in Unreal Engine 4 for release on Steam. Our team consisted 13 people including: 1 producer, 2 designers, 8 artists, and 2 programmers.

In addition to my duties as a producer, I programmed significant features for the game and helped solve assorted problems that arose during production. I often moved my focus to different teams depending on what roadblocks and important issues the project was facing at the time.

Producer Contributions

  • Managed the scope of the project by creating and maintaining a Project Backlog for all features and tasks to complete the project across all teams.

  • Generated and maintained Project Backlog, Gantt Chart, and Burndown documents.

  • Co-created the Game Design Document and Art Style Guide.

  • Created user focused Team Member Contribution Charts that tracked tasks, hour contributions, and efficiency of team members.

  • Created Pipeline Reference Documents to ensure proper workflows were followed and accelerate development.

  • Trained team members in using C++, Unreal Engine 4, and Version Control Software

  • Setup and managed the Version Control for the project.

  • Led team wide Agile Planning and Review Meetings every week.

  • Trained team members in using Unreal Engine 4 and Version Control Software.

  • Helped manage the Art Direction of the project so that assets were cohesive and consistent throughout the game.

  • Planned Game Mechanics and Gameplay Experience with the design team at the onset of the project.

  • Planned, Recorded, and Edited the Marketing Trailer.

Programmer Contributions

  • Developed the Procedural Level System which created unique level layouts at runtime.

  • Created alternate game modes including Boss Fights and Endless Mode which let players explore indefinitely.

  • Developed the Weapon Re-roll System that managed player score chains and weapon tier progress.

  • Developed and maintained Animation Control System, Animation Blueprints, and Combo Blend System.

ITI_LibraryCapsule.png

Updated_IntoTheInfinite-2.png

Producing & Documentation

The main piece of documentation I worked on was the Project Backlog. I maintained this document constantly and adjusted items within it as the project's needs changed. By keeping a well-maintained Project Backlog, I was able to plan features well in advance, protect against potential risks, and help the team complete tasks efficiently. 

In conjunction with the Art Director and Creative Director, we created the Game Design Document and Art Style Guide as reference documents that were used throughout the project. These documents were updated as the game evolved and our goals more defined. 

Working with department leads I also created pipeline documents detailing proper methodology for our asset creation pipeline, level design standards, and environment art guidelines. These documents were used both as educational tools and reference documents so that work on the project was consistent and required fewer revisions.

To help track tasks more effectively I created Team Member Contribution Charts that logged weekly hours as well as total project hours by task. This helped team members track their work quotas and allowed for better task estimates as the project went on. These charts were critical in allowing me to track the project’s rate of progress and for creating a reference Burndown Chart.  

Hour Tracking Example.png

One of the most difficult decisions I had to make on this project was to cut the third area of our game. Over the course of development asset creation and the procedural level system took longer than expected, delaying work on the third area. In addition, the goal of the project shifted its focus to high re-playability. To accommodate these factors, the third area was cut from the game, new features were added, and the schedule was restructured so that we delivered a complete experience without the third area.

IntoTheInfinite-1.png

We were able to add significantly more weapons, a boss fight, and an endless mode to our game because of this decision. These features increased the re-playability of the game considerably and ultimately created a better experience. 

HighresScreenshot00007.png

Agile Development

At the beginning of every week, I led Sprint Planning meetings. During these meetings, I assigned important tasks, reviewed task boards, and assisted with the creation of feature groups for features that required the collaboration of multiple developer skill sets. These meetings ensured all team members were on the same page and facilitated collaboration on game features. 

To prepare for Sprint Planning meetings, I reviewed the project backlog and feature roadmap to plan which key tasks would need to be assigned. I also reviewed the long-term project plan for what sprint goals needed to be met or adjusted. 

At the end of every week, I led Sprint Review meetings. During these meetings, I would ask the team for feedback about what went well during this sprint and what could be improved. This is also when team members could show off their work to the whole team and get team wide feedback for their work. 

IntoTheInfinite-3.png

Feature Development

I was involved through every stage of development for several features. I contributed to work on the design of the game’s core mechanics and overall game design. The primary programming work I did was developing the Procedural Level System, the Weapon Re-roll System, and the Combo System. The following is a list of some of the core features of the game I programmed or assisted with.

The Weapon Re-roll System pooled 25 weapons, each with 5 variants, that the player could seamlessly swap between. All weapons had adjustable animations, stats, and combos that were easily tunable by designers. This was the core mechanic of the game and always had the player engaging with different weapons to keep combat dynamic.

The Procedural Level System that loaded level chunks in a unique order and layout at runtime. The system was deterministic and could be tuned to adjust for difficulty and target play time. Our endless game mode also leveraged this system. This was a key mechanic for our game design as the level layout would be different every playthrough and contributed to the narrative that the universe was falling apart.

HighresScreenshot00008.png
Screenshot_11.png
Screenshot_10.png
Screenshot_1.png
Screenshot_6.png
Screenshot_12.png

The Combo System allowed for unique attack animations and behaviors to be applied to each weapon in unique and adjustable ways by designers. This made development of numerous weapons much more efficient and balancing the game simpler. Part of this system included the dynamic animation control system that pulled unique animation information for each weapon and applied them to the player character at runtime. This system was also repurposed for our final boss.

Screenshot_9.png

In addition to the programming work I did for specific features I often would assist other programmers with their roadblocked tasks to make sure the pace of production wasn’t halted.

Version Control

At the onset of the project, I set up a Perforce version control repository via Amazon AWS. I then created documentation and a tutorial video detailing how to set up and use Perforce with Unreal Engine 4. I also did a live demonstration for all team members where they could ask questions and try to troubleshoot any issues they were having. Throughout the project I managed the version control and would resolve major conflicts or technical difficulties related to version control.