TowerDefense Toolkit v1.0 now on AssetStore

This TowerDefense Toolkit is designed and made as a code base toolkit for easy construction of TD game of any kind. It supports construction of TD game of any kind without needing of any code extension. It has been updated to version1.3.3. The addition in v1.2 are open-field gameplay mode and a path-finding component. With v1.3 the toolkit is now iOS compatible. Here’s a v1.3 demo contains 5 playable levels:

http://dl.dropbox.com/u/23073684/TD_ToolKit/Demo/TDTKv1.3.1_Demo/WebPlayer.html

Everything shown in the demo is included in the toolkit (tower prefabs, explosions effects, particle systems…). The toolkit also support another wide range of TD gameplay variety other than the one shown in the demo. Here’s a rough list of the of what the toolkit contains:

iOS compatible (tested on iPhone4)

Configurable Level

  • Configurable resource, player’s life, number/type of build-able tower for every level
  • Configurable number of wave, creep type for each wave, number of creep for each wave, interval for each wave.
  • Configurable path and spawn point (multiple spawn point and path supported).
  • Options of two play mode (fixed path or open-field play)
  • Options of two build mode (towers build on grid or build on designated platform)
  • Options of two deploy mode (drag and drop or point and build)

GUI

  • Two preset GUI type, scripted OnGUI() function and gameObject-based GUI-elements
  • Tooltip showing tower stat and info in building selection
  • Selectable tower after being built for stat display, upgrade and selling.
  • Range indicator and selection indicator for tower when selected.
  • Hitpoint Overlay for creep/unit to display hitpoint

SpawnMode Supported:

  • Continous spawn based on time.
  • Continous spawn when a wave is cleared.
  • Round-based where each round (a wave) require user initiation.
  • Option for user to skip a the waiting time for a wave for continuous mode

Creep/Unit:

  • Configurable hitpoint, speed, resource gain upon unit destroyed
  • Auto determining of waypoints.
  • Compatible to use with custom model with custom animation.
  • Can be assigned a custom effect (ie. explosion) to display upon reaching end of path or destroyed

Tower:

  • Two build mechanism, build on pre-placed tower platform or build on pre determined grid
  • Configurable damage, range, cooldown, aoe, dot, slow effect, shootobject, targeting, upgradable level, upgradable stat, resell value.
  • Compatible to used with custom model tower base and turret.
  • Support model change upon tower upgrade.
  • Auto setup component and parameter depend on model used.

Tower firing object:

  • Projectile: basic projectile type, with configurable speed, projectile curve
  • Missile: a missle type, with configurable speed, curve pattern
  • Beam: a straight laser beam
  • Shockwave: aoe wave type, with configurable appearance such as colour and fade out range.
  • Projectile, missile and beam can be assigned any custom hit effect to display upon hitting the target.

Example and Effects:

  • This package included a number of example example prefabs to demonstrate how the base script can be used or configure to its’ best effect.
  • These example include a number towers, shootobjects, creeps as well as two example scenes with different type of TD game play.
  • The package included a number of effects ready to be used in this or other game.
  • This effects are used in the example scene and the example prefab. They are mostly use as shootObject hit effects or special tower effects

Minimap:

  • Show creeps/units, tower, creeps’ path and camera position and field of view(fov).
  • Configurable position and size of the minimap on the screen.
  • Map scale can be adjusted during runtime. (zoom in/out)
  • Configurable blip appearance (texture) and size for creeps, towers and the paths as well as camera position and fov.
  • Run as a active rotating map with camera or a static map, configurable during runtime.

Camera(typical mmo character camera):

  • Pan on horizontal plane using keyboard or mouse at the edge of screen
  • Rotate camera around pivot.
  • Zoom in/out using mouse scroll.

Audio

  • Audio Manager enable playing of music as well as different audio clip for different event such as new wave spawn, tower built, tower upgrade, level lost… etc.
  • Each unit/creep and shoot object can be assigned individual sound clip for appropriate event

Update for v1.1

  • added GUI-elements based UI
  • added new tower deployment scheme
  • added scene transition facility
  • revamp code logic flow to be more organised along with lots of optimization
  • added comment on some of the script explaining the vital logic flow
  • added untested code block for touch input

Update for v1.2

  • added open-field game play mode where creep find the shortest path on the map and player are can actively block the path with towers.
  • comes with a portable A* path-finding component.

Update for v1.3

  • Optimized and tested on iOS
  • Tower can now deal over time damage

Please visit http://song-gamedev.blogspot.com/search/label/TDTK for more detailed listing of features. Or feel free to contact me if you have any question.

Finally here’s the link to the asset store: Tower-Defense Toolkit 3 (TDTK-3) | Game Toolkits | Unity Asset Store

A stand alone scripting package for the minimap is also available: http://u3d.as/content/song-game-dev/minimap-script-package/220.
A stand alone path-finding system used in this tool kit is also available: http://forum.unity3d.com/threads/109512-PathFinder-version1.0-now-on-AssetStore

If for whatever reason you have problem getting the package from the AssetStore, please contact me directly if you like to make a purchase. I’ll be giving a discount for anyone who is doing a direct purchase!

Thanks for reading!

I’m using this Toolkit , and it is very advanced!

This is Demo Game that i’m working on, it is not using all features of toolkit!. :

http://www.kongregate.com/games/ognjenm/defend-serbia-demo-test

I’m not good scripter/programmer , but this thing is so easy to work and it have a very detailed documentation. You only need to know click with your mouse and have idea for game :slight_smile: Also songtan is very support guy he will help in any problem. Game can be very stylized because toolkit support music,effects,animations and much more. I never seen such good project like this one for unity.It can be used also for learning scripts are very good commented. I strongly recommend this thing!

Is that mobile platform friendly?

Although untested, the scripts should be ready to be compiled for mobile platform. However the toolkit doesnt have a control scheme (touch-based control) for mobile platform. Everything is mouse and keyboard currently.

I’m plannning an update to make it more mobile platform friendly.

Edit: Since it’s untested at all, performance is not guaranteed when compiled for mobile platform

After some feedback from the unity community and some reconsideration. I’ve deceided that I would do the decent thing and make the package more affordable. With the hope that it would serve the community better without too high an expense to myself. The toolkit afterall is partially intended as an example project that include examples to show how certain things can be done in unity. In short, I’ve adjust the price to $65.

On that note, I’ve also update the toolkit to version 1.01 with slight improvement to the minimap component. I’ve made this submission and price adjustment since yesterday. I’m making this annoucement now that I’ve realised the new version and price has gone live.

Thanks for the adjustment, it was the tipping point for me and I picked it up this afternoon. Looking forward to working with it.

Can the build on pre-determined grid be put on a sphere? And does the turret recognize to attack flying objects?

waywardchicken: I hope you enjoy it. Let me know if you have any problem. :slight_smile:

Kheng: I dont really understand your first question. The grid based system in the toolkit assume the game area is taking place on a flat terrain if that is what you are asking. For you second question, the towers can be configured to either target only one of the flying/ground units, or both. So effectively three targeting type: targeting air unit, target gound unit, target both air and gound unit.

Yea I was hoping it didn’t have to be on flat terrain.

I was wondering if the toolset includes pathfinding for games like Desktop Tower Defence or Field Runners.

Desktop TD Pro:

Something like Breath First pathfinding?

If not, is it something you have planned for a future release?

Regardless, I’ll be picking this up. It looks great and will get me rolling fast.

Shaneneville:

Unfortunately There’s no pathfinding in the toolkit right now.

But your question just gave me the idea. I’ll probably try to put it in the next update. But I’m afraid that wont happen in very near future as I’m quite busy recently.

Hope you enjoy the toolkit.

I just downloaded Unity and starting to get familiar with it.
I was really interested in building TD game for my Android as a first personal project.
This toolkit is beyond what I could have expected for a learning tool.
Only problem is I am dead set on Android development.
I will be watching this app for future updates with great anticipation.
The day it supports mobile platforms, you’ve got another sale for sure.
Keep up the great work.

Thanks viper, I hope you could gain something from it.

I’m indeed working on the mobile platform support. Hope I could make it available in the near future.

One thing that could kill performance in mobile devices is “Instantiating” and “Destroying” GameObjects (for example: bullets and enemies). Instead of that, you should use a pool of reusable GameObjects: whenever you need a new bullet, take it from the pool… when you want to destroy the bullet, disable the GameObject and return the bullet to the pool so it can be reused later. There is some nice implementations out there, but I usually use the Prime31’s LINQ Object Recycler: http://prime31.com/unity/docs/

By the way, another interesting feature for a future version would be the possibility of choosing which kind of enemy will target each tower first (the first enemy, the last one, the slowest, the fastest, the strongest, the weakest…).

I would also like being able to position the towers wherever I want (as long as it doesn’t collide with another tower), like it’s done in this game: http://ninjakiwi.com/Espanol/Games/Tower-Defense/Play/Bloons-Tower-Defense-4.html

Thanks a lot David, I have since found that out since that particular post of mine. The point is current version is not tested at all on mobile platform. Rest assure the mobile platform compatible version when released, will be fully tested, both in term of performance and control scheme.

I will give your suggestion some thoughts. Thanks again.

Hi Song … your toolkit looks great. Here is another customer waiting for the mobile enabled version :slight_smile:
Any forecast on the release date?
Cheers

Hi Eva, thanks for the interest! I’m still not sure about the release date of the mobile compatible version as of now. It depends on how fast my tester can give me the feeback I need. Hopefully it’s no more than a month or two from now.

Still I plan to have some minor update that would improve the current version in the very near future.

I’ve noticed that Unity AssetStore has stop transaction using paypal. I’m aware that this might be an issue for of people who uses only paypal (such as myself). Please contact me directly if you like to make a purchase.

I’ll be giving a discount for anyone who is doing a direct purchase!

Updated to version1.1 on AssetStore. Please read the first post for the information.

does the purchase of this allow me to use it for a commercial project?
would i be able to take your scripts and add to/modify them?
how much is the code commented?