Towers

The main objective of the game is to strategically place towers along the enemy's path to prevent them from reaching the castle. There are three types of towers available, each of which can be purchased using in-game currency earned by defeating enemies:
— Archer Tower: This is the cheapest tower, dealing low damage to a single target. It’s best suited for dealing with weaker enemies and serves as an affordable option for early game defense.
— Oil Tower: This tower fires an oil barrel, creating an oil splash on impact. The splash has an area-of-effect, so any enemies that enter the zone are temporarily slowed, making it easier for other towers to eliminate them. It’s a strategic choice for slowing down large groups of enemies.
— Mortar Tower: The most expensive tower in the game, the mortar deals significant area damage. It’s highly effective against clustered enemies, offering massive firepower but at a higher cost.
All towers are upgradable. Upgrading towers increases both their damage output and their rate of fire, making them more effective as the game progresses.
Enemies

In TowerDefensio, only ground enemies are currently featured, and they all use Godot's built-in pathfinding functions to navigate their way from the portal to the castle. The game is designed to be scalable, leaving room for the addition of flying enemies in future updates. The key differences between the enemies lie in their health and speed. Currently, there are three types of enemies in the game:
— Skeleton: This is the first and weakest enemy you’ll encounter. It has a small amount of health and moves at medium speed, providing a small amount of gold when defeated.
— Ghost: The ghost moves at incredible speed and has more health than the skeleton, making it harder to defeat. It presents more of a challenge but also rewards more gold.
— Stone Golem: The slowest enemy in the game, but also the one with the most health. The golem acts as a damage sponge, attracting most of the towers’ attention and taking significant damage. Defeating the golem rewards players with the highest amount of gold.
Generation: road & complexity

Each game session in TowerDefensio is unique. First, the game randomly generates the path for enemies from the portal to the castle by selecting five random points across the map. This ensures that no two sessions have the same layout.
Additionally, the composition of each wave and stage is randomly determined. The set of enemies in each wave is generated based on the complexity of the wave and the complexity value of each enemy. For instance, if a wave has a complexity cost of 200 points, the game will randomly choose enemies that collectively meet that 200-point cost. This system ensures that every wave is different, providing a new challenge each time you survive.