Deep in an underground lab in a classified location, an ancient human unfreezes. He’s confused and angry at first, but he pauses at the sounds of his ancestral gods calling out to him; Demanding he finish the job he couldn’t millennia ago, leading him on a quest for vengeance.
Unga Bunga is a free-flowing 3D brawler focused on having the players use what they can find around them to enact revenge and settle a 25,000 year conflict. This vertical slice was my team’s entry to our college capstone greenlight process, the culmination of a semester of work bringing it from one among several prototypes to a contender for moving forward with development. Unfortunately Unga Bunga was not selected to continue and remains a tech demo, but that doesn’t mean that we didn’t learn anything.
Unga Bunga was built in UE4 utilizing Git for version control. My primary duties on the project including building and maintaining both technical and interpersonal pipelines, taking the lead on gameplay development, implementing custom rendering and camera features, and instructing the other members of the team on Unreal development. Some of my favorite parts of the project were the 3rd-person camera controller I built to give an orthographic feel while avoiding difficulties associated with fully orthographic rendering, and the basic combo system I prototyped for our combat, although I probably enjoyed creating the main menu the most.
Creating this game was by no means an easy ride; we ran into pitfalls every step of the way. One of the biggest issues we dealt with was not having the right people for the game we wanted to make. The game was heavy on environment art; we had a character artist and a character animator. The game was extremely systems and gameplay heavy; we had a graphics programmer and a programmer who had never used Unreal before. The game needed excellent systems design and balancing; we had two level designers. Somehow we managed to pull through, but if we had the right skills for the job we would definitely have been able to get further. Honestly I don’t really know if there was a way to mitigate this, we wanted to make a certain kind of game and we only had specific resources to do it; we did the best we could, with everyone stepping up and stepping out of their comfort zone to learn and try new things. It’s weird looking back and thinking that we did the best we could realizing that we had such a massive issue but I am proud to have been a part of it.
Moving off of that another large roadblock for us was experience with the tools we were using. Only one of our programmers and one of our designers was experienced with Unreal Engine 4, and neither of the artists had spent much time in-engine. This ended up being a massive impediment, forcing us to take away from development time to teach and learn, but in the context of us being students there is no better time to do this. I think that what I take away from this aspect of the experience is that knowing your tools is important, and not always something that everyone can just pick up on the way. Sitting down at the beginning of a project and making informed decisions on what tools to use, and setting up paths for education for members of the team who don’t know them will be highly beneficial down the line.
All of these negatives being stated I think there is something that we nailed on this project: the atmosphere. Although our gameplay wasn’t quite up to par due to the above, we were able to take our ideas and craft a feeling around them, translating that feeling into audio and graphics and refining them through QA testing to elicit the exact response we wanted in our players. Additionally through our creation of solid pipelines up front, we were able to streamline the process of getting help when any team member ran into issues, with a clear understanding of who owned what features and knowledge and how they could help. This application of knowledge and experiences gained in previous projects was frankly refreshing, and reinforced in my mind how important the prep work for teamwork is.