March 2024 - Present | Unity | 8 developer team
Game designer, Programmer, Sound Designer, Composer
Golf Bash: Online is a party, beat-em up, golf simulator hybrid where players have the freedom to play a wholesome game of golf, or to fight each other to get an upper hand.Â
This game was created using Unity for my senior capstone project in a team with 7 of my peers. At our end-of-year showcase, our team was acknowledged by our class with the award of Best Technical Game.
Golf Bash: Online is set to release on Steam on July 12, 2024. The game can be viewed here.
An additional website describing the game and showing development history can be viewed here.
As the sound designer for the team, I had the exciting, yet daunting task of making audio work over a network. A lot of sounds such as music and UI sound effects were straightforward, as they can be played for the player and be fine. The issue arises when sounds such as player footsteps and hitting someone with a golf club require the sound to play for all players. The solution I came up with was to make a sound manager with a network component and use ServerRPC and ClientRPC to allow the server to send a signal to all clients that a sound needs to be played. The result is having a singleton class that has API that can be called from any script which can queue sounds that are player for just the current player or all players.
In this project, I was a gameplay programmer and sound designer who worked to push gameplay features to the game. I worked on developing gameplay features that had to be synchronized over the network (changeable hats for each player, a trajectory outline for the ball swing, internal network infrastructure to allow player data to be accessed by other network components). I also mainly worked to use FMOD to provide music and sound effects to the game. A lot of sounds play only for the player, but some sounds had to be broadcast to all players which I provided implementations for.
A big part of our senior capstone required our team to do check-in's and to organize our team to make deliverables and meet deadlines. To this end, I also worked as a producer, making sure our team knew about upcoming meetings and deadlines.
I learned a lot about the game development pipeline with this project alone. We were educated on the importance of planning and pre-production, iterating on game concepts with paper and digital prototyping, constant playtesting, and effective communication as the backbone of making completed projects.
* A line renderer that accurately predicts the trajectory of the ball
* Player character ragdolled
* Hats that can be freely worn that syncs over the network
* A system for localizing using Unity's Localization manager