Grenade Football
Overview
Grenade Football is a fast-paced 5v5 reimagining of football that asks, "Why not use a gun?" Players launch the ball using a small cannon that fits snugly in their arm, as they jump, double jump and dash around the pitch to tackle each other and work as a team to put the ball in the opponent's net.
It was BARB's first step back into the Everywhere art style, and was timed around the end of the World Cup to tie in with what the world was watching. I led it in parallel with the Multiplayer Races, each with its own team.
My Role
- Started with a rough prototype, developing a vertical slice over two weeks to see how the game felt.
- Once the demo was approved, we moved into full development, bringing in two technical level designers and dividing the functionality into areas: custom UI, possession tracking, overtime and goalkeeper rules. Guiding and teaching them how to implement logic in a structure that is compatible with multiplayer functionality.
- Overseeing progress of Audio, Art and Network code teams to make sure work was in line with what the project needed.
What I Built
Implemented a dynamic live commentator system, inspired by some of the more popular football games, that calls out the action as it happens.
- The commentator reacts to player movement, positioning and events, using both current and historical data, whether it is the first goal of the game or a player's 100th.
- Historical data is stored in persistent online variables for each player, fetched at the start of the match and updated live, so a player's data for the match is preserved even if they disconnect.
- Lines name the team and player involved: a missed shot gets "What a miss!", while a tackle might be called as "Blue player five gains possession" or "Red player two lost the ball".
- Each event has several recorded voiceovers, so the commentary feels unique every time and sounds like a live commentator.
- Every line has a priority. A high-priority moment such as kick-off or a goal is never interrupted, some lines are known to follow others and are delayed to fit, and lower-priority lines cannot override what is already playing.
- Timers stop the commentator repeating itself. If six or seven tackles happen within a few seconds, the same line is not called again until enough time has passed.
- Common events only have a random chance of being called, so not every pass is announced, and a tackle is randomly voiced from either the positive or the negative side.
Result
Grenade Football went from prototype to launch in three months. Football is a crowded space, from FIFA to Rocket League, and many studios release football games around the World Cup because of its international draw. The game was designed to be played as 5v5, but a late decision meant a match could not start with fewer than three players a side. Launch data showed our player base could not fill that, so many players were locked out. I personally edited the minimum player count on the live game, instantaneously changing what was accessible to players. We further added an AI goalkeeper for matches that dropped below the recommended 3v3.
Lesson
- When teaching others about multiplayer scripting, one of the best things I can do is to walk them through working examples, then let them play and poke about with the example logic themselves before jumping into actual tasks. Having the comfortability of knowledge will always help someone move faster.
- A lesson I took from it: validate player-count assumptions against the real player base before launch, not after.