FPS Tower Defense Toolkit for Unreal Engine Marketplace

The FPS Tower Defense Toolkit is a pure blueprint framework that enables quick & easy creation of Tower Defense games from a first person shooter perspective.

Unreal Engine Marketplace Product Page: https://www.unrealengine.com/content/6f8c5ece7d39402b8b402119a9798eb6

Official Unreal Engine forum support thread: https://forums.unrealengine.com/showthread.php?79300-FPS-Tower-Defense-Toolkit

Preview Video:


- Basic FPS Movement & Combat. 

- Seven types of Towers: Tower Base, Shockwave Tower, Machine Gun Tower, Laser Tower, Sniper Tower, Boost Tower & Trap. 

- Three types of Enemy AI: Core Bomber, Melee Bot & Ranged Bot.

- Three types of AI Wave Generation systems, with support for endless waves & repeating wave cycles with dynamically escalating difficulties.

- A Focus Fire system that enables the player to request towers to focus fire on a designated target.

- Automated resource allocation between waves provide players with the abilty to Build, Upgrade, & Sell towers. 

- A Mission Stats system that provides the player with the damage & kill stats information at the end of a level. 

- Spline driven navigational paths display optimal enemy AI routes from the spawn points to the Power Core. 

- Includes a loadout menu at level start with player driven tower selection.

- Modular Grid Generators with drag & drop support to create grid cells for tower placement. The Grid Generators support grid snapping & 360 degree rotational freedom, thus facilitating placement of towers & traps on inclined surfaces & walls.

Technical Details:

- The Wave Manager allows complete customization of waves through parameters like EnemyType, NumberOfUnits, SpawnPoint, SpawnDelay, etc. 

- Variables are categorized into 'User Defined' & 'Automatically Set' to facilitate identification of customizable parameters.

- The Enemy AI is driven by a combination of modular components, thus facilitating the creation of new types of AI bots with ease. 

- The Creep AI Manager keeps track of all potential targets for the creeps, thus freeing them to focus directly on the targets. 

- The Game Mode handles initialization of all core gameplay actors from a single central location using a linear workflow design.

- The Player Controller acts as a conduit for all low level HUD update requests, while the Game Instace & HUD classes manage high level HUD changes.

- AI Spawn Points support precached & runtime generation of randomized spawning locations.

- Event driven logic used predominantly over continuously ticking services for HUD updates.

- Blueprint function library employed to easily retrieve references to core gameplay actors from all blueprints.

- All static Tower parameters are store in a centralized Tower Data Array, thus requiring only dynamic parameters such as DPS, Range, etc to be stored within the tower actors.

- The Tower Selection menu is populated dynamically based on information specified in the Tower Data Array, thus eliminating the need for manual HUD changes when adding/removing towers.

Intended Platform: Windows

Optimized for: Unreal Engine v4.12 & v4.13

I have not tested the toolkit on Consoles/Linux/Mac OS. Theoretically it should be possible, maybe with some modification. But as it's not confirmed yet, I chose not to add that in the target platform.

Here are some preview screenshots as well: