Football VR

A virtual reality experience placing the player into the role of the American football quarterback. Four immersive game modes will challenge the player in their ability to throw the ball, make quick decisions, and strategize against the defense.
May 2018 — HTC Vive — Unity
Football VR places you in the position of the American football quarterback, leading your team down the field. You must choose plays based upon the defense, throw the ball accurately, and manage your remaining time. Being my largest and most recent undertaking, I worked on this project as a programmer, designer, and producer for approximately 12 months.
Features
Designed and implemented
'Hoosier Hunt' level
With only three minutes to work with, The Hoosier Hunt level challenges the player to get high scores by successfully passing the ball to their teammates’ hands. Players move across the field at linear speeds, looping between the chained boundaries, and defenders will block passes from the receivers. As lead designer, I was responsible for designing, balancing, and implementing this game mode. First, I wanted all receivers to feel viable as intended targets. Noticing that distance and occlusion of the targets were correlated, I decreased the movement speed and increased the score value of receivers that were further from the player. I also wanted to emphasize consistency and accuracy over speed in this level since the player was learning how to throw the ball, so I implemented a streak system. Each time the player successfully completed three consecutive passes, they ‘caught on fire’ and earned double points until they threw an incomplete pass. This decision proved to be entertaining and intuitive to players as we tested and iterated upon this mode.
CONCEPTUALIZED AND PROGRAMMED
'RECEIVER RUSH' MODE
My responsibility as the engineer of this level included creating the system for selecting plays. I wanted players to select plays from the quarterback-sleeve interface intuitively, so I ensured visuals of routes from the selected play would appear on the field dynamically and provided the player with visual, aural, and haptic feedback to indicate their actions through the interface.
As the main programmer behind this mode, I was also responsible for creating intelligent and dynamic defenders that reacted to the player’s gaze. In order to create new and interesting situations, the positioning of defenders and the receiver they guarded were randomized before every play. The positioning of the defender after the play would be determined by the running direction of the receiver, the defender’s ‘aggression value’, and the relative position of the quarterback. These complex factors kept the player engaged and attentive as they determined their next play selection. Here is the script: Route Defender
Lastly, I was tasked with implementing gaze-based interactions, allowing players to use the head-mounted display intuitively. If the player looked at a receiver, they would become selected and defenders guarded them more closely. After the ball was thrown, selected receivers would run to its landing location and attempt to catch the ball. This created options for the player, allowing them to be less accurate or throw into open space.
calculated intended throwing path for more accurate passes
In order for the game to be fun, learnable, and replayable, we put high emphasis on the main verb/action of the game, throwing. With the unique aspects of using motion controls, being able to move and look around in real-world space, and the player having a better understanding of depth perception in an immersive 3D VR world, we knew players would be able to tell when their pass felt 'off', or didn't meet their expectation. And so, we iterated constantly on this aspect, going so far as to calculate the average direction of the ball with a linear regression modeling, getting the speed of the throw from the last few frames of the motion controller position deltas, and setting the power of the throw based on the ratio of the weight of the controller, and the weight of a real life football. We ended up following a lot of sage advice from this Gamasutra piece: Why Throwing in VR Sucks--and How to Make it Better
From play testing and user feedback, the actual game feel of the throwing was received well, and players had fun learning the limits of their abilities to throw, from a bullet pass to the chest of a guarded receiver, to bombing a long hail mary to an open player down on the field.