top of page
Niall Curran
Games Designer
![Main Menu](https://static.wixstatic.com/media/578581_cd7e1318f2f047f4bf81ff62de0fba76~mv2.png/v1/fill/w_980,h_613,al_c,q_90,usm_0.66_1.00_0.01,enc_avif,quality_auto/578581_cd7e1318f2f047f4bf81ff62de0fba76~mv2.png)
Main Menu
![Arena](https://static.wixstatic.com/media/578581_ea20c08de40247f4b499050aa464c0de~mv2.png/v1/fill/w_980,h_613,al_c,q_90,usm_0.66_1.00_0.01,enc_avif,quality_auto/578581_ea20c08de40247f4b499050aa464c0de~mv2.png)
Arena
![Game Over Screen](https://static.wixstatic.com/media/578581_06901c248c874a6ab053ce3d9ef0671f~mv2.png/v1/fill/w_980,h_613,al_c,q_90,usm_0.66_1.00_0.01,enc_avif,quality_auto/578581_06901c248c874a6ab053ce3d9ef0671f~mv2.png)
Game Over Screen
![Main Menu](https://static.wixstatic.com/media/578581_cd7e1318f2f047f4bf81ff62de0fba76~mv2.png/v1/fill/w_980,h_613,al_c,q_90,usm_0.66_1.00_0.01,enc_avif,quality_auto/578581_cd7e1318f2f047f4bf81ff62de0fba76~mv2.png)
Main Menu
1/11
Role: Solo Developer
Engine: Unreal Engine
Year: 2022
About:
Welcome to Globobot Inc. Your job is to test out our state of the art first-person simulation arena against countless waves of robot enemies. Grab an All-Purpose Multi-Gun and let's get to work.
The main focus of this project was to implement and utilise atomics to create a fair and balanced gameplay system.
Player's are tasked to survive continuous waves of zombies that increase in difficulty with the use of 6 weapon variants which can be upgraded along with the character statistics.
During the course of the project, I primarily worked with:
-
Atomics
-
Blueprint Visual Scripting
-
Gameplay Mechanics
-
Enemy AI
-
Level Design
-
Asset Creation
-
Sound
-
UI Design
What I learnt during this project:
-
Introduction to data tables to store atomics
-
Developed AI skills
-
Enhanced technical knowledge towards wave-based and upgrade systems
Gameplay Video
![Zomborg Banner.png](https://static.wixstatic.com/media/578581_a113e7c9f02c42478b5e02636a5291a6~mv2.png/v1/fill/w_980,h_157,al_c,q_85,usm_0.66_1.00_0.01,enc_avif,quality_auto/578581_a113e7c9f02c42478b5e02636a5291a6~mv2.png)
Let's Get Technical
Data Tables
Atomics are stored within various data tables, these data tables cover statistics for the gun variants, player, upgrades, enemies and wave system.
Example of Gun statistics
These statistics are then "broken" from the data table to be used throughout various blueprint functions
"Gun Break" function used to gather gun atomics from data table
(Right Mouse Button + Drag to Navigation) (Ctrl + Mouse Wheel to Zoom)
Example of "Gun Break" function used for ammo drain functionality
(Right Mouse Button + Drag to Navigation) (Ctrl + Mouse Wheel to Zoom)
Upgrades
Upgrades can be applied to each weapon variant to upgrade it's damage, ammo consumption and cooldown rate. Player upgrades are also available to increase their health, stamina and health regeneration speed.
Each upgrade variable is stored within a data table used to alter the current statistics when purchased with the appropriate amount of points gained through gameplay.
Damage Data Table
(Right Mouse Button + Drag to Navigation) (Ctrl + Mouse Wheel to Zoom)
Function to get atomics from Gun Damage Update Data Table
Upgrade function when damage upgrade attempts to be purchased
(Right Mouse Button + Drag to Navigation) (Ctrl + Mouse Wheel to Zoom)
Enemies
There are a total of 4 different enemy types
Z0M813
![Zombie](https://static.wixstatic.com/media/578581_7e85b890299641d49c3d0ae037036f39~mv2.png/v1/crop/x_700,y_201,w_476,h_789/fill/w_284,h_471,al_c,q_85,usm_0.66_1.00_0.01,enc_avif,quality_auto/Zombie.png)
Facts:
-
Spawns every round
-
100 health points
-
Slow Moving
-
Melee attacking
-
Will prioritize attacking upgrade station
If damaged by the player, they will focus on attacking the player -
Speed increases per wave
R3FR35H
![Refresh](https://static.wixstatic.com/media/578581_9f9d27c3745c41dabe4c545188f6f540~mv2.png/v1/crop/x_710,y_204,w_465,h_768/fill/w_285,h_471,al_c,q_85,usm_0.66_1.00_0.01,enc_avif,quality_auto/Refresh.png)
Facts:
-
Spawns every 2 rounds
-
150 health points
-
Fast Moving
-
Melee attacking
-
Will prioritize attacking the player
-
Health regenerates overtime
8RUT3
![Brute](https://static.wixstatic.com/media/578581_4ae8e51354a3477c91196cb35cda08ed~mv2.png/v1/crop/x_706,y_199,w_482,h_781/fill/w_290,h_470,al_c,q_85,usm_0.66_1.00_0.01,enc_avif,quality_auto/Brute.png)
Facts:
-
Spawns every 5 rounds
-
1000 health points
-
Slow Moving
-
Melee attacking
-
4x larger than previous enemy types
-
Will prioritize attacking the upgrade station
-
Will attack player once upgrade station is disabled
W45P
![Wasp](https://static.wixstatic.com/media/578581_990b3c36d9f241e486689c1c8481a358~mv2.png/v1/crop/x_721,y_257,w_501,h_569/fill/w_333,h_378,al_c,q_85,usm_0.66_1.00_0.01,enc_avif,quality_auto/Wasp.png)
Facts:
-
Spawns every round past wave 6
-
125 health points
-
Slow Moving
-
Ranged lazer attack
-
Flying enemy
-
Will prioritize attacking the player
Wave System
Various wave-based formulas were comprised to understand the wave progression for enemy spawn rate and Survival Bonus.
After each wave, along with the points the player has gained from killing enemies they will be given a sun of points as a ‘Survival Bonus’ which is totalled by a simple calculation
(75(Wave Number)) = Survival Bonus
(Right Mouse Button + Drag to Navigation) (Ctrl + Mouse Wheel to Zoom)
Each enemy type has its own formula for its spawn rate
Z0M813:
((Wave Number*3)+5) = Z0M813s to Spawn (With a limit of 25 spawned at once)
(Right Mouse Button + Drag to Navigation) (Ctrl + Mouse Wheel to Zoom)
R3FR35H:
(Wave Number=Even Number) if true (Wave Number/2) = R3FR35Hs to Spawn (With a limit of 10 spawned at once)
(Right Mouse Button + Drag to Navigation) (Ctrl + Mouse Wheel to Zoom)
8RUT3:
(Wave Number=multiple of 5) if true (Wave Number/5) = 8RUT3’s to Spawn (With a limit of 3 spawned at once)
(Right Mouse Button + Drag to Navigation) (Ctrl + Mouse Wheel to Zoom)
W45P:
(Wave Number ≥6) if true (Wave Number-5) = W45P’s to Spawn (With a limit of 8 spawned at once)
(Right Mouse Button + Drag to Navigation) (Ctrl + Mouse Wheel to Zoom)
bottom of page