SLIME AHOY
MY ROLES
Combat Design, Blueprint Scripting
PROJECT TYPE
School Project
MY RESPONSIBILITIES
-
Implement and iterate on the players controls and combat system
-
Script Power-ups & the boat
-
Implement Apex Destruction on gameobjects
PROJECT SUMMARY
Slime Ahoy is a 2-4 player local multiplayer party game. The goal is to be the last one standing by knocking the other players of the platform using projectiles fired from a cannon, with the kicker that the player firing is also knocked back by the force of the cannon.
Keep track of your slime character as the chaos unfolds with destructible environment, player power-ups, and a little pirate crew that might be taking aim at you if you accidentality (or intentionally) manage to hit their little dinghy.
GENRE
Local Multiplayer Party Game
PLATFORM
PC
YEAR
2020
DEVELOPMENT TEAM
3 Designers , 3 Artists
GAME ENGINE
Unreal Engine 4
DEVELOPMENT TIME
2 Weeks
CHARACTER GAMEPLAY & BLUEPRINTS
Gameplay & Blueprints
With only 2 weeks to work with I quickly set to get the basic of our movement and shooting to a testable state. The movement I adapted from the UE4 top down template to make the left stick move the player in world location and strafe while the right stick controls the aim at direction.
Movement using left stick (click to enlarge)
In our first iteration the aim rotation snapped to the stick axis rotation. This is functional but makes it a little finicky to aim. It was especially apparent with playtesters not used to twin-stick controls.
First iteration snapping rotation
So for the next version I added an interpolation to the change to smooth out the rotation and expose the rotation speed variable for easy access to the rotation sensitivity.
Interpolated rotation
Rotation to aim with right stick (click to enlarge)
Next i set up the cannon fire with the knockback on the player and the knockback reaction of getting hit by a cannonball as that was at the core of our combat design.
​
Additionally, holding the fire button for a longer time will charge up the cannon for a stronger shot. Stronger shots travels faster and knocks back hit opponents for a longer distance, but with the drawback that it will knockback the player that fired it a longer distance too.
​
Lastly the cannon has a cooldown, indicated by the red colour on the cannon, stopping the player from spamming the attack in quick succession.
Top short charge, bottom max charge
When the fire button is pressed the charge power is added over time and particle effects is set active.
Cannon power charge loop (click to enlarge)
When fire button is released the cannon ball is spawned and the player is launched back. Both are dependent on the power charge.
Cannon fire and knockback on self (click to enlarge)
Lastly the cooldown starts and makes it possible to charge again when finished.
Cooldown before fire is active again (click to enlarge)
And finally when hit by a cannonball the player is launched in the direction of its trajectory with the power based on the projectile speed, the more charge shot have the greater the knockback power.
Top short charge, bottom max charge
Knockback when hit by other cannonballs (click to enlarge)
DANGEROUS DINGHY & DESTRUCTIBLES
We wanted the matches to be chaotic, a little unpredictable and explosive. For this reasons we made almost all objects in the level destructible to shatter when hit by the cannon balls.
In addition we also set at little pirate boat to patrol along a set path around the island that fires back at the players when hit.
The boat does not stand out much and can therefore easily be lost in the chaos and accidentally hit when the player aims at the opponent, adding to the chaotic nature of the game.
The boat travels along a simple spline path over a set amount time. When reaching the end of the spline it does a 180 degree rotation and travels back along the spline to the start.
Boat pathing along a spline(click to enlarge)
When the boat is fired upon, the slimes on the boat will take aim at the player who fired the cannon ball, charge up their cannons to max power, and fire a cannon ball each back at the player who hit them.
Boat slimes charge up and fire (click to enlarge)
Rotate slime cannons towards target player (click to enlarge)
Fire slime cannons and reset that charge up to be ready to fire if hit again (click to enlarge)
To make destructibility I used the built in Apex plugin in Unreal Engine.
To keep it simple (as it's a 2 week project) most settings are kept at default and it mainly is the explosive amounts, impact damage and lifetime values that needed tweaking to fit our match settings
Apex plugin window with mesh to destroy (click to enlarge)