top of page
Top
Thumbnail.jpg

game description

Sticky Situation is a Third-Person Action Shooter made in just TWO DAYS using Unreal Engine 5. The player is armed with a melee weapon and bazooka with four unique types of ammunition, harassed by hordes of gummy bears that increase in number throughout five waves. The player must stun enemies using their melee weapon or the blue knockout projectile to pick them up, increasing their ammo count. Players can quickly avoid enemies using a double jump and launch pads scattered throughout the map. Survive all five waves to complete the game!

Sticky Situation can be downloaded by following the link below:

itch.io.png
Gameplay

gameplay trailer

full gameplay

Programming

programming

I elected to use Unreal Engine's Blueprint system to program this game as I only had two days to complete it. I wanted to focus on speedily creating a fun prototype rather than focus on optimization. When the two days were complete, I had fully functional combat, enemy, wave, health, player animation, ammo, UI, and audio systems!

Download the game project by visiting this GitHub repository:

GitHub-logo.png

combat

Combat

projectile types

The player wields a bazooka in their right hand. Right-clicking will launch the currently equipped projectile type.

I created a projectile base class with four child classes. The base class allowed projectiles to do direct impact damage, set speed, whether or not it could seek enemies, and set base sound and visual effects. The four projectile types include:

 

A fast red projectile that shoots straight and creates a blast radius on impact.

A green homing projectile that creates a blast radius on impact.

A blue stun projectile that stops enemy movement, allowing the player to pick up enemies to obtain more ammo.

A yellow acid projectile that spawns a pool of acid that deals damage to enemies (and the player) within its radius.

Ammo switching

The player can switch ammo types by using the 1, 2, 3, and 4 keys. 1 for red (regular), 2 for green (homing), 3 for blue (stun), and 4 for yellow (acid). When the player runs out of a certain ammo type, it will no longer be visible at the tail end of the bazooka when active.

melee

The player wields a bat in their left hand. A swing of the bat using Left Click will temporarily stun enemies as indicated by a material change to white.

pickup ammo

When an enemy is stunned by a melee attack or blue stun projectile, the player can press 'E' in their vicinity to pick them up, adding to the corresponding ammo count. For example, stunning and picking up a green enemy will increment the green ammo.

Player Health

The player will take damage from enemies and acid puddles if they overlap. When an enemy dies, there is a small chance a health pickup will spawn, regenerating a portion of the player's health if overlapped. The player's current health can be seen in in the meter at the bottom right of the screen. When damaged, a red overlay material will appear to indicate the player has taken damage. When the player's health reaches zero, they will die and will be prompted to press 'Space' to respawn.

Enemies

ENEMIES

Regular enemies

The four regular enemy types (red, green, blue, yellow) are children of a base enemy class that simply moves toward the player using a navigation volume. They burst and a damage event is triggered on the player upon overlap. They have different events that are triggered for different types of damage dealt by the player and will usually die in one hit. They will take smaller damage when in an acid puddle than when hit directly with a homing missile, for example. A stun event is triggered when hit by a melee attack or a blue projectile, disabling enemy movement and allowing the player to pick them up.

boss

The boss gummy bear spawns in on the fifth and last wave and has a large amount of health. The player will have to use a lot of ammo to defeat it, but doing so will cause all existing enemies to despawn and a win screen will appear. The player will then be taken back to the main menu. If the boss touches the player, the player will die instantly!

Wave System

wave system

The player will need to survive 5 waves of enemies and defeat the boss on wave 5 to win. Each wave will increase the number of enemies to defeat by 20 and the maximum number of enemies that can be spawned in at a time is 40.

 

Each wave will play a new music track, an audio cue from the player will play, and the current wave number will briefly appear on the HUD in addition to the permanent wave number in the top left-hand side of the screen.

Intefaces

interfaces

I used three Blueprint interfaces to allow for easy communication between projectiles, enemies, the player, and the game mode. I made an interface for Damage, Waves, and Ammo Inventory. Each of the classes that implement these interfaces can trigger events in others that also implement them. For example, when a new wave event is called in the game mode, it triggers an event that tells enemy spawners to activate and triggers an event that increments the wave number that appears on the player's screen. All of these classes must inherit these interfaces to communicate with one another about when to trigger specific events.

bottom of page