Neon Tower Defence
About the Project
My Roles
Programmer (Gameplay, Systems, UI)
Team Size
Solo Developer
Development Time
2 Months
Engine & Language
Unreal Engine, C++
Platforms
Windows
Long Desciption
In this Tower Defence game, kill waves of robots with different kinds of defences. From exploding them with the mortar turret or vaporising them with the tesla turret, there are many ways to defeat the robots in glorious neon colours!
Game Type
Tower Defence Game
Project Context
Student and Personal Project
Presented at CG Spectrum’s GameChanger Academy November Student Showcase, 2025
What I Did
My Roles:
-
Solo Developer, which includes
-
Gameplay Programmer
-
Systems Programmer
-
UI Programmer and Designer
-
Level and game designer
-
VFX Artist
-
My Responsibilities
-
Creation of turrets using vector math and projectile motion calculations
-
Programming of an enemy wave spawning system using data assets for easy modification by designers
-
Development of an event-based UI system
-
Implementation of an RTS-style turret building system
-
QA and balance testing
Turrets and shooting:
The first thing I did as part of the project was make it so the turrets could shoot the enemies. Although this may seem simple, it's a lot more complicated because of everything that has to be taken into account. The first is that the projectiles are fired in an arc towards their target. However, the projectiles always hit their target, so they need some degree of homing. That works, but it looks strange, so I made the turrets shoot where they think the enemy will be when the projectile hits the target.
In addition to just launching the projectile, I also had to make the turret aim where they are going to shoot and make all the turret variants.
Enemies, waves and spawning:
Another significant contribution to the project was the wave-spawning system. Though simple-sounding, it was made to handle spawning a preset number of different kinds of enemies. The wave system was also made to read this information from a data asset outside of the level. Other than the wave spawning, I also made the different kinds of enemies. These were made to inherit from an enemy base class, each with different values such as health, speed and colour, which were also stored in an easily accessible data asset.
Building system and UI
The final big contribution was the whole user interface. A major part of this was the building system. Of course, this had to handle the selection of a new type of turret and its placement. This also had to include the cost of each turret and the gain of resources from killing the enemies.
This information was all displayed on the user interface, which includes the available buildings at the bottom, with the resources, enemy count and wave number at the top of the screen. This whole system used events to communicate the relevant game systems to their UI elements.
For a more detailed account of what I did and how I went about implementing the features of the game, please look at the readme on the project's GitHub.
It can be found here:
https://github.com/R0binicus/Tower-Defence-Project
Game Screenshots





