Project Tower Defense

What is this project about?
Tower Defense is a game project I've developed in the first period of my second year called Project Tower Defense.
In this project, every developer would develop a Tower Defense game by themselves.
I wanted my Tower Defense to look interseting and a bit more special then the other ones, so I decided to use Aseprite to make a pixel Tower Defense.
Monsters waddle about destroying the world and devouring its inhabitants, you as the hero must make use of magic to defend the roads and citizens of this Kingdom.
You have multiple types of towers at your disposal, towers which will upgrade over time as it kills more enemies.
You as the hero can fly around the map to defend the roads at mutiple places, prepare yourself as something big is coming...
This game was made with C#, Unity, Aseprite and Github.
Game code made by Bor Dekker.
Pixel art made by Bor Dekker.
Development Team: Solo project
Project date: September 2022 - November 2022
Project duration: 8 weeks, working on it every day besides weekend.
In the video below, you'll find my gameplay video of Tower Defense.
My role and the main gameplay of my Tower Defense.
My role was making a Tower Defense game by myself.

Creating a game in 8 weeks was a very fun and challenging task to do, creating multiple functions & mechanics to create my game.
I first started small, creating 2D towers in Unity that can kill enemies and a function that can spawn enemies.
Slowly I did biger To Do's such as creating a wave system for enemies to spawn in between and placing towers with money.
After I've created a small tower defense game with the basic mechanics, I started creating art and thinking of 2 unique mechanics.
I came up with 2 major unique mechanics, a hero you can move around with your mouse & towers that will upgrade themselves the more enemies they kill.


When you click with your right mouse button, the hero will then get the location of the mouse. Then the hero will move to that location of your last click with the right mouse button. If you right click immediately after having done just a click, the hero will move to the newest click location.

When an enemy spawns they will follow a list of waypoints, each time that they reach a new waypoint they will update their waypoint index by +1 and then the enemy will go on to the next waypoint ect.
You can see the all the waypoints on the image below, the waypoints are the red dots.
The enemy spawns on the complete right & ends on the complete left.
When an enemy reaches the last waypoint, they will deal damage to the player and reset their waypoint index to 0.
They will give the player money because they've died & finally destroy themself from the game.


When an tower has killed a certain amount of enemies, let's say 10. The tower will first instantaite the new tower version that's stronger, shoots faster & has more range. Once it has instantiated the new tower at the old tower location, it will then destroy the old tower from the game.


Retrospective
I loved the development of making a video game, looking weird and small in the beginning.
But slowly looking better and everything combining with eachother.
This was an excellent way to show how game development goes, I learned a lot from this.
For example, I've learned that designing and creating the world, enemies, hero with pixel art is a lot of fun.
But that it also does take a lot of time and effort to create this world.