3D Tower Defense Kit is designed for all users of Unity, who ever wanted to create a tower defense game. The goal of this project is to deliver you a game-ready prototype including resources and an extensive documentation, so you are able to integrate your own assets and adjustments easily, on your way to your own tower defense game – this project has all you need to do so.
- Mobile-ready: Because of a relatively positioned GUI, bypassing of garbage collection calls using the integrated Pool Manager, a smaller extra level and hardware saving particle effects, this Starter Kit is mobile-ready. For the ease of use that has not brought many code-changes – but one extra mobile camera control script (joystick controls) for the navigation through your scene as a bonus.
- C#: All scripts are written in C#. The complete source code is provided, well arranged and stuctured. What you’re going to see is a method- and object-oriented programming style with subclasses and only important public variables.
- Documentation: Nearly every line per script is documented. Additional documentation shows up connections and relations between scripts, as well as a Step by Step Guide on how to use this Starter Kit to build your own game.
- Example Scenes: Besides the actual game, several example scenes separate each manager script from others and will deepen your knowledge regarding the Step by Step Guide, so you can effectively follow along.
Tower Self Control
Talent Tree Power-Ups
Advanced Tower Logic
Simple Enemy Logic
Multiple Projectile Variations
Wave Modes & Endless Mode
Upgrade customization – edit e.g. prices, range, damage, delay and projectile count
Optional field of view restriction of turrets
Attackable types – ground, air or both and various firing order modes
Range indicator for radius visualization
Many combinations – area of effect, damage over time or slowdown
Settable particle effects, radius, weakening time and damage value
One projectile script handles them all
Adjustable speed and path following
3D HUD for health and shield
Settable particle effect, sound and animation at the moment of hit/death
Gain resources when an enemy dies, lose health points if they reach their target
- Wave Manager: Easily set up your waves and containing enemies. Drag and drop your enemy prefab in a newly created wave, type in a spawn amount and select a path to follow. Also comes with four different wave start options and support for endless waves, which can increase enemy properties after each iteration. You’ll never get involved with coding, if you don’t want to.
- PowerUp Manager: Initiate offensive or passive special abilities during the game, which affect enemies, towers or the player. You have many options to choose from, e.g. explosion damage, slow, tower boosts and increased income. Passive power-ups can have requirements and must be unlocked, allowing for skill-tree setups. Our power-up editor makes it a breeze to add new power-ups.
- Pool Manager: High memory and performance efficiency by object pooling. Avoid expensive garbage collection calls by letting your pool reuse all instantiations. There is no need to bloat your scene, activated or newly created instances are parented to your pool – besides a preload amount you can also define a maximum limit.
- Waypoint Manager: This extension is taken and modified from our Simple Waypoint System asset. A path creator interface lets you place waypoints just by clicking onto ground, they then get connected internally and form the enemy’s path. There is no limit on the amount of paths in a level, for a maximum flexibility regarding strategic possibilities.
- Audio Manager: Play your audio files whenever you need them in 2D or 3D as one shot, loop or with some pitch by calling only one line of code. We provided methods for calling your sounds in a defined or random order and to stop/pause or continue them.
- Grid Manager: Easily generate the grids on which your towers are placed. There are variables for setting your grid prefab and grid size right within the inspector. You can also set materials to show whether your grids are available or unavailable for placement.
- Tower Manager: Add or remove available towers via custom inspector GUI. Type in an optional resale value, the name of your tower, select the tower prefab and let your GUI do the rest. Caching dictionaries allow for runtime access of tower properties at any time.
- Setup Scripts: Additional editor scripts let you set up your towers, enemies and projectiles with all components needed for interacting with the game world in effective and time saving widgets. Get your models game-ready within seconds!