Home

Gamma Game

portfolio


Gamma Game's trailer.

The Capstone Project

Gamma Game is the code name for the project I’ve worked on with my team of graduates in Full Sail University. This project was started for the purpose of academics, so we spent a good amount of time iterating on it, which means a good chunk of what we didn’t make it into the final build. While most would think of it as wasted time, due to the specific requirements we needed to meet per month, I’ve treated this as an academic project more than anything.

As a team, we’ve decided to frame a reference game called Hitman, specifically the recent trilogy. With this in mind, we started to think about the bare minimum of the game to get a gameplay loop going. We’ve put documentation on Confluence and started to tie a gameplay scenario as a milestone goal to create stories in Jira, and work towards getting that milestone scenario done. Our first month was primarily spent on brainstorming and getting the framework done.


Starting Out

Due to this game being a stealth game, the AI was the most important part to get right. I stepped up and became the primary AI Programmer in the team, and spent the majority of all the months in the project refining and mastering the AI. This is also the first time I’ve been very deep in Unreal Engine 4’s AI workflow, and thus I had learned a ton regarding the use of UE’s Blackboards and Behavior Trees. I already had a very good idea on how state machines work in games, so I got to work getting a framework done.

The first steps of my AI code.

Scaling Down

In the second month, we’ve started to trim the fat and set up the identity of the game. At this stage we had a prototype game. With this, my team was instructed to make multiple levels and also to remove any features that didn’t follow the core pillars of the game. This led us to look at our project in a critical eye, and I put up the suggestion that we should remove the majority of the combat features in the game to zero in on our stealth, give it the quality it needed in our scope. With that in agreement, we all started to prototype different levels. While level design is not my strong suit, I still had a lot of knowledge from my past instruction and work.

An unused level in the game.

Refining and Refactoring

The third month is where the majority of the features seen in the game have been made. Now with a handful of the levels we’ve all made, some of the team now started to refine and build the final levels in their entirety, and I started to work hard on the AI. At this point, I found better ways to build the behavior tree, and at this point I even refactored a lot of the code, which proved to have been a good thing as the AI was much more responsive to listening events later on.

More things interact with AI detection now!

Assisting the Team

A lot of the team needed help here and there on specific parts of Unreal Engine, and I always tried to help the best I can. However, because I was in charge of the AI code, some bugs and other cross-feature issues were reported that had to do with the AI. I knew that I was responsible for my own code, so I personally dealt with those bugs and made sure everything worked modularly with the AI system, with exceptions and flexible event handling.

In the final month, I realized my team started to go through a lot of burn out, but we pushed far into the end, this time focused on the polish and “release” of the game. A lot of my time here was spent bug fixing, as I knew the team had varied experience in programming and with Unreal Engine. I didn’t mind this, and I prefer to adapt to my team’s needs instead of forcing them to learn and change in some way at this point. We were able to finish the project on time with no issues that caused any delay, which marked the end of my education at Full Sail.

© 2023 Raul Esteban   •  Modified  Moonwalk  Theme