top of page

Zombie Disc Golf

Virtual Reality game with custom physics simulation and interactive AI.

Nothing like a calm afternoon playing Disc Golf. But it looks like there is more to these woods than just a leisurely past time. Finish the course and help eradicate the outbreak!

Roles

  • Solo Developer

  • AI Developer

  • Gameplay Programmer

  • Level Design

  • Physics Systems Engineer

  • UI artist

My Involvement

This virtual reality game was solo developed in Unreal Engine. My intent was to make a engaging experience while pushing my boundaries in game development and expanding my skills.

Being my first game in virtual reality, this game was a lot of fun tackling game mechanics like player movement and projectile physics in a new and unique way.

RadialMenu.png

UI and UX

On of the challenges I faced early on in my development was how confusing UI can be in virtual reality. I wanted to make a user experience that flowed with the functions of the game and immersed the player into the world I created.

I chose to make all button interactions to be physical grabbing with the hands rather than trying to create a VR mouse and pointer system. This helped make the game as a whole feel very physical and immersive while avoid the frustration of trying to point and click with sometimes finicky tracking hardware.

Using a radial menu, I was able to make compact inventory interaction that did not distract too much from the gameplay.

Physics Simulation

Being a very physical game, I immediately ran into an issue with Unreal's built-in physics system. While very robust, Unreal's physics system had very little to offer when it came to adding lift on thrown items. Due to the nature of a frisbee, aerodynamic lift and gyroscopic stability are integral parts to making the game feel authentic.

Aerodynamic Lift is the force produced by the motion of air resistance on an object. In the case of frisbees this force is produced upwards to create the classic "floating" sensation.

LiftMath.png

Gyroscopic Stabilization is the resistance of a rotating object to changing its plane of rotation. In terms of a frisbee, the radial movement of the disc stabilizes its movement to be parallel to the ground.

Both of these physics behaviors had to be custom programmed to work alongside Unreal's pre-existing physics controls. I also adjusted these behaviors to accommodate to the three main disc types: Driver, Mid-Range, Putter.

Artificial Intelligence

To differentiate my game from pre-existing disc golf games, I wanted to implement the mechanic of intelligent enemies.

Utilizing AI behavior trees, I developed a system of interactive zombies that range in health, speed, and attacking behavior, but also react to the player and to each other. 

Due to the performance limitations of VR, I knew that too many enemies could quickly eat up my performance power. Therefore, I created a complex sound system to alert zombies to the player location as well as each other's locations. This makes zombies react to each other and stick in relatively concise groups. While unnoticeable to the player, this limits the amount of zombies on the map while giving off the illusion of an overwhelming outbreak. Zombie spawns also adjust accordingly to the number of enemies to keep the map from being overloaded but also keeping up with the kill rate of the player.

Arguably the biggest con of VR is the fact that it can cause severe motion sickness in some players. Often the biggest reason for this lies in the the player moving in the virtual world without moving in physical space.

In my research on this issue, I found that VR games with a teleport system rather than a locomotion system often did better, and so I created a interactive teleport system within the overarching story and mechanics of my game.

Player Movement

By nature, Disc Golf involves a lot of throwing frisbees (or "discs") in physical space. Furthermore, fans of Disc Golf know that there are a variety of discs played with, similar to how traditional golf has multiple clubs. I decided that implementing player movement with this integral action of the game made for a intuitive and interesting gameplay.

Utilizing the 3 main disc types (Driver, Mid-Range, and Putter) I developed a system of teleporting the player to the location where the disc lands. Because of the sometimes overwhelming waves of zombies, I made sure the player can choose which disc they want to teleport to. I also implemented a HUD to display both where the discs were as well as the location of the next target.

bottom of page