top of page

Wavelength

ROLE

TIME

Solo Developer

Sept 2023 - Nov 2023

DESCRIPTION

GENRE

Wavelength is a twin-stick shooter in which the player fights off endless hordes of enemies. Each wave is affected by a 'modifier' that forces the player to think on their feet and apprach the same enemies differently for each modifier.

Twin-stick Shooter

PLATFORM

MAIN RESPONSIBILITIES

  • Design & Implementation of 3 unique enemies.
     

  • Created a gamemode that influences how the player interacts with each enemy.
     

  • Modeled and animated the player and all enemies using Blender

Windows PC

TEAM SIZE

1

ENGINE

Unreal Engine 5

Enemy Variety Through 3 Modifiers

Wavelength is an endless wave-based twin-stick shooter taking place in an arena.  The game revolves around 3 modifiers that can affect each wave.

​

The modifiers are designed to interact with each enemy in a way that requires the player to approach each enemy differently based on the currently active modifier.

Last Man Standing

The last man standing modifier grants a shield to a random enemy once the wave starts, the selected enemy also has their damage and speed increased while the shield lasts. This shield can only be broken by defeating every other enemy first.

​

Since the selected enemy can be different each time, the player will be faced with a different challenge based on the enemy.

Avenger

The avenger modifier increases the damage  and speed of every enemy after an enemy is defeated. 

​

This buff does not have a limit, so the player will quickly be overwhelmed if they let the buff stack up too much.

Toxic Waste

The toxic waste modifier spawns a pool of poison on the floor of the arena after an enemy dies that damages the player while they are standing in it.

​

The poison does not go away until the end of the wave, so the player has to be careful of the enemies' position before defeating them, or they will have nowhere left to stand.

3 Unique Enemies

The game features 3 enemies that each provide a different challenge.

​

Each enemy was designed to require a new strategy to defeat based on the active modifier.

The Archer

The archer is a ranged enemy that attempts to keep their distance from the player and flank them, putting the player between them and another enemy, before shooting them.

​

The archer is a fast unit and benefits greatly from speed buffs, as it will not only move/attack faster, but its arrows will also move faster.

The Warrior

The warrior tries to get close to the player, after which they perform a jumping attack.

​

Their attack windup and jump speed is affected by the speed granted by modifiers, so they can grow to become very hard to handle if the player isn't careful.

The Summoner

The summoner will run away from the player and periodically spawn small minions that attempt to swarm the player.

 

These minions trigger every modifier when defeated, which can very quickly overwhelm the player if the summoner is not dealt with. 

 

Defeating the summoner will despawn all its minions, without triggering any modifiers.

Modeling & Animation

For this project, I modeled, rigged and animated the player and enemies myself. Going through the entire process myself has helped me learn how to use skeletal meshes and animations in Unreal Engine and has benefited me in every project since. 

​

The models and animations are very simple, but they gave me valuable insight into the workflow of character artists & animators and has helped me communicate efficiently with them in team projects afterward.

​

I have been using the assets I made for this project in almost every initial prototype I make since, and I've received much feedback that they help communicate the prototypes very well

bottom of page