Super Bash Goats is a local multiplayer brawler game, where you and up to three friends play as goats, trying to bash each other to death in the mountains. Turn them into a mist of blood and gore and be last goat standing!
The game started out as a two-week long school project, that we decided to continue to develop as a side project while studying at Future Games.
Super Bash Goats is released and available at Itch.io and has been downloaded over 3000 times.
Unreal Engine 4
Eight-month side project (2016-2017)
Engine Unreal Engine 4
Development Time Eight-month side project (2016-2017)
Team Size Eight people
- Combat mechanics
- Character controller
- 2D Animations & UX design
Developing the game as a side project allowed me to really delve deep into the Unreal Engine, Blueprint and Perforce.
I was responsible for designing and scripting the core combat gameplay and the character controller. I spent a lot of time on the bash mechanic, designing, balancing and scripting its functionality. I also animated the 2D UI elements and was responsible for the audio implementation and optimization.
The design of Super Bash Goats revolves around three core pillars:
- One button, one mechanic. The entire game should revolve around one simple yet dynamic core mechanic.
- Simple and tight controls. Anyone should be able to pick up a controller and start playing within seconds.
- A lighthearted contrast between the cute fluffiness and exaggerated cartoony gore.
The one combat mechanic that the entire game revolves around is the bash and you kill other players by bashing them into rocks, making them explode into a mist of blood and gory chunks. The combat is designed to be easy to pick up and fast paced with short moments of intense action, where it is easy to score a kill, but also easy to get killed.
Each goat has five lives and the last goat standing wins. Matches are short and intense and the game has a very high kills per minute ratio. A match is usually over in under three minutes. As the game is a couch brawler intended to be played with your friends, we didn’t want players waiting for too long when they are completely dead.
Bashing into another goat will knock back and stunt that goat, making the player lose control of their character for a brief moment. As long as the goat is stunned it can be killed by colliding with any rock on the map. This makes positioning your goat a key part of the combat dynamic.
The duration of the stun and the strength of the knock back is dependent on how long the bash was charged.
The player can charge the bash before releasing it, making the bash last longer and hit harder.
When charging, the player can rotate the goat to aim the bash, which automatically releases shortly after the maximum charge has been reached.
STEERING THE BASH
The player can steer their goat slightly when bashing. The steering control is gradually increased towards the end of the bash.
This is to make it easier to hit players from further away. Without the steering, it is very easy for other players to anticipate the trajectory and evade an attack, making long range engagements a sub par tactic as they usually miss the target.
The steering also makes for a less frustrating experience, as it doesn’t lock you into a state with no control, but rather makes the bash feel better to use and makes the engagement distances vary more.
If a stunned goat collides with another goat, this creates a domino effect, stunning and knocking the second goat as well. This makes it possible to perform some pretty crazy multi-kills.
If a goat is bashed onto grass, or bashed from above when they are standing on grass, they will bounce as if the grass was a trampoline.
The bounce supports our cartoony aesthetic, it makes a clear distinction between rocks and grass and since players can bounce into rocks this further increases the kills per minute and contributes to the mayhem.
BASH ON BASH
If two goats bash into each other they will enter a state I call Bash On Bash, where the goats are locked into a variation of a tug of war.
The player can rotate their goat around the impact point. Pressing the X button to make the other goat align with theirs. After a couple of seconds, both goats are knocked back in the opposite direction of the other goat.
This creates a dynamic where the players are trying to align their own goat in such a way that will knock the other goat into a rock, while also trying to not get their own goat killed.
USER INTERFACE & ANIMATIONS
All UI animations are designed to support the contrast between the cute fluffiness and the exaggerated cartoony gore of the game’s art direction. Most animations are either made to feel happy, squishy and wobbly or to grab the players attention.
Death and respawn HUD animation.
HEASD UP DISPLAY ANIMATIONS
The HUD is placed on the top of the screen but gameplay and player deaths usually happen in the lower half of the screen. To guide the player’s eyes, HUD animations are exaggerated. They have an element of anticipation in the beginning and has overlapping action and lingering effects at the end to draw attention.
It is important that players look at the portraits when they die to know how many lives they have left to prevent them from being surprised when they are completely dead and can’t respawn.
The design of the Main Menu is intended set the expectations for the game as light-hearted and family friendly and the animations are made to feel lifelike and playful, only to emphasize the game’s aesthetic contrast.
When a player has lost all their lives they are completely dead and can’t respawn. Their HUD portrait changes to a skull.
The lobby screen in the main menu. The game supports 2-4 players and as soon as at least two players are joined in and have readied up the game can be started.
At the start of a match a short count down before the match begins, while the music builds ups. Goats spawn in one by one and spawn points are fixed during the entire match to make it easier for players to find their goat when they die and respawn.
GAME PAUSED SCREEN
GAME OVER SCREEN
Before publicly releasing the game, I did some work to increase performance using Unreal’s GPU Visualizer and CPU Profiler.
I went through every object in the entire game, tweaking lighting settings to remove artifacts, merging meshes in Unreal to reduce draw calls and making sure only used directories were baked into the final build of the game.
We had two people from outside the team who produced sound effects and music for the game. I was responsible for communicating with these people and implementing the final sound effects and music into the game.
Super Bash Goats
A side project I worked on for 9 months while studying at Future Games, made in Unreal Engine.
What I did
- Character controller
- Combat design and scripting
- UI Animations