Between 2 Interviews
Alright Matt and Farns, thanks so much for breaking down all of the amazing work that the team has accomplished and giving us a look towards things still yet to come for MCC. It’s crazy to think that the last major blog we did around MCC was nearly a year ago. And of course, it wouldn’t be an MCC blog without team interviews! Today, we are going to sit down with members of the Publishing Team and discuss features that Halo Insiders got their hands on during MCC’s Season 8 flight!
Now, I’ve been sharing all of the details around this most recent flight over in our weekly MCC Development & Flighting Updates forum thread, but you know we love to go behind-the-scenes when we can. My friends and I were able to cook up a couple of interviews to share more insights so grab some snacks, a drink, and enjoy.
Today, we’re going to talk with our local pun master, Dana Jerpbak, also known as The Psycho Duck. He is a man of many talents, so much so that he has held many positions in his time working on MCC for the Publishing Team – everything from working in QA, to being a Technical Designer, and now a Programmer for the Engineering Team!
One of his greatest strengths is a love for Halo and the ability to tap into the endless possibilities that these games have. He often will go off in his spare time to work on projects that he really wants to see happen. Today, we are going to pick his brain about his latest endeavor and peek behind the curtain of his latest passion project.
Hey Dana, thank you for taking some time to talk a little bit about your recent project codenamed “Odious Tea.”
[Dana] Hey Tyler. Thanks for having me on to talk about one of the big features I’ve gotten to work on for MCC Season 8! Fun fact: the “Odious Tea” codename was the result of a bad auto transcription of “ODST”. We got a kick out of it and started using it to refer to a bucket of ODST Firefight work we were planning.
First and foremost, what made you really want to go dive into ODST’s Firefight and make some of the key changes that you did?
[Dana] For Firefight, ODST is where it all began. It delivered an awesome wave-based survival experience, but it didn’t expose many knobs for players to tune the experience to their liking. When Halo: Reach released, it introduced a very configurable Firefight experience which afforded players (and designers) a greater level of control. This opened the door for a lot of exciting arcade-y variations, but many players still preferred ODST’s rendition of the mode due to the difficulty of playing as an ODST rather than a Spartan, the addition of new difficulty-increasing skulls from one set to the next, and the overall atmosphere.
When we brought Halo 3: ODST to PC in 2020, we finally had the opportunity to bring its Firefight mode into MCC. In ODST, Firefight was an offshoot of campaign. Like in Reach, it was subject to co-op campaign’s synchronous network model (where client actions are subject to delay as the host authoritatively simulates them). This also meant that it didn’t have game variant support (for configuring options). When we brought Halo: Reach to MCC, we added asynchronous networking for Firefight. This is the model regular multiplayer game modes use where clients have authority over some actions and where the host provides them sufficient information about objects and events for them to be predicted and simulated locally (in other words, none of that delay).
In 2020, we added that asynchronous networking support to ODST and made the fundamental changes to Firefight’s core implementation to support game variants. This allowed us to provide a solid matchmaking experience which even included some arcade experiences which weren’t available in the legacy ODST release. However, we always knew we wanted to do more with it. When we initially added game variant support for ODST Firefight, we built in explicit versioning support in the hopes that we’d get to revisit it and add more – that versioning allows us to do so without invalidating existing official and user-created variants. This gave us a strong foundation to build from for our new “Odious Tea” update.
Arguably the most central component of Reach’s configurable Firefight was the concept of a wave template. In ODST, each individual Firefight mission defined its own waves. These waves were then hardcoded into each mission’s script. In Reach, a shared collection of wave templates (which could be spawned on any map as dictated by the game variant) was defined. This was the primary concept we wanted to introduce to ODST for this update as it really opens things up for new and exciting experiences.
There were a few other features we wanted to port over from Reach such as the ability to disable dropships (which dramatically reduces downtime) and to disable map extras like Jackal Snipers, Engineers, and Wraiths (which is desirable in some arcade variants). Configuring Skulls was also a must, as not all wave possibilities complement the legacy Skull progression (which was also hardcoded).
With all these new options, it was critical that the core experience of a default game variant would be as indistinguishable from the legacy experience as possible. Care was taken to ensure that the newly created wave templates covered all the bases of what was hardcoded into the legacy scripts. This also meant that we needed to offer configuration of Skulls at the Set level as opposed to just the Round level unlike Reach.
When going down the rabbit hole of finding out what and where you needed to make changes for these updates, what were some of the more difficult aspects to overcome?
[Dana] There were two main categories of challenging work here. First, adding wave template support to ODST was a significant effort. The good news is that Reach already had this support, but it still required a lot of detailed porting work to reconcile differences between the two games and incurred substantial changes across several systems in ODST. What was more time-consuming, though, was updating all of ODST’s existing content to work with these systemic changes. This required substantial rewrites of various scripts, the addition of new enemy spawn locations to various maps, and numerous other changes.
The second challenge involved supporting Flood in the new distributed simulation model we use for Firefight. Previously, Flood enemies had only ever been present in Campaign where the aforementioned synchronous simulation model is used. Our distributed model already supported most “normal” AI actions thanks to the work we did for ODST Firefight’s MCC debut last year, but the Flood throw a lot of wrenches in things. For example, Flood Pure Forms can morph between character types and Infection Forms can resurrect dead Flood (or non-Flood) units. These each required unique solutions relative to other actions we simulate. The biggest wrench, however, was the advent of Infection Forms which are of a special object type called a “creature” which the simulation formerly had no awareness of whatsoever. Their inclusion required significant changes to one of our fundamental simulation concepts. Retrofitting our simulation code to support them in an extensible way was an exciting challenge. A lot of this work wasn’t ready in time for the public flight, but you’ll see it when Odious Tea prepares to drop with Season 8.
So, I have to ask – what made you want to add the Flood into Firefight? Where did the inspiration or the thought process behind it come from?
[Dana] It wasn’t long after Joe Staten posited the infamous question “What if the phones… rang?” that fans began to ask a question of their own: “What if the Flood… were in Firefight?” The dark ambiance of New Mombasa complements the Flood just as well as the hordes of space zombies complement a wave-based survival experience. One notorious Flood enthusiast even modded them into Firefight in the Xbox 360 version of ODST. Easily the most exciting part of working on MCC for me personally has been getting to help make the things I used to dream about when playing these games a reality. I recall having a brief “Wouldn’t it be cool if” conversation about it with another engineer a couple of years ago, and we finally had the opportunity to do it!
ODST Firefight has always been about squaring off against impossible odds, and in Halo the Flood are really the epitome of that. They force you to rethink strategies and playstyles you may have employed in Firefight in the past and let you experience these maps and this sandbox in a fresh way. I think it’s a really cool mix of old and new.
The original plan was simply to create alternate Flood versions of a few of the existing Firefight missions. While that would have been cool, I’m really glad that we had the opportunity to go the extra mile and support all of the “Firefight 2.0” configurability. Including Elites and Sentinels was the icing on the cake.
To wrap things up, I had one final question. Of all of the different changes that were brought to Halo 3: ODST – what by far is your favorite and why?
[Dana] There were a few big things like templatized wave support and the network simulation additions which were really exciting to work on. But, as a player, my favorite is probably playing on Alpha Site without dropships. Alpha Site is a great Firefight mission – it’s the mission I completed Vidmaster Endure on back in the day. But, the enemy delivery was always a bit predictable and repetitive because enemies were only dropped at the two landing pads (which each have a chokepoint nearby). Now, enemies can spawn in the cubbies above the atrium and drop down right into the center of the map. Having Flood dropping into what was once a safe zone from above really turns the experience on its head. It’s just one of those little details that really epitomizes the whole feature for me.
Thank you so much for your time Dana!
[Dana] Thanks for having me!