John Resig was generous enough to mention Processed Tower Defense, and I decided to briefly celebrate this afternoon by adding the big missing pieces of functionality: tower upgrades and different types of creeps.
There are now four types of creeps: Normal, Fiz, Buzz, and FizBuzz. If you're a programmer, that may be enough to tip you off to when they'll occur, but if not its just a meager joke of sorts. FizBuzz creeps occur on waves divisible by fifteen, Buzz creeps occur on waves divisible by five (except those divisible by fifteen), Fiz creeps occur on waves divisible by three (except for those divisible by fifteen), and Normal creeps occur on all other waves.
Here are the differences for these new types of creeps:
Pretty much just boilerplate extension of the original CreepWave, except that the FizBuzzCreepWave only spawns one creep (since its so tough to kill).
Tower upgrades were a bit more troublesome to implement, entirely because I am drawing much of the UI using HTML widgets (a decision I reached because text rendering support is limited for the canvas). Regardless, they are working. To upgrade a tower, click on it, and then use the upgrade button that appears in the right hand side (underneath its current statistics).
The two towers upgrade a bit differently. First lets look at the Missile Tower.
Its firing rate doesn't improve at all, but its range increases substantially with each upgrade. Its damage doesn't increase quite as quickly as the laser tower, but it doesn't really matter since its initial damage is ten times higher.
The Laser Tower's damage rate increases quickly, and its range moves up a bit as well. In addition, its reload rate drops by 10 milliseconds with each upgrade (it starts out with a 250 ms reload rate), which is a handy improvement. If you managed to upgrade a Laser Tower twenty five times, then it would fire a new laser each time the rendering loop is processed. Then again, the framerate is only 60 frames per second, so it would actually max out its effective firing rate with a mere twenty four upgrades instead.
Well, I never really intended to keep working on PTD, but its kind of a dull game and I figured I would make it slightly more exciting for anyone unfortunate enough to find it. Once again, I don't really have any clear intentions of continuing work on it, but it might happen if anyone is particularly interested.
Things that I would probably want to implement, in no particular order:
More tower types. Probably something involving small ellipses (gattling?) and large ellipses (cannon). Also some of the tactical towers wouldn't be so hard to implement (slowing, damage over time, tower enhancers, etc), and would add some interest to the game as well.
More types of creep waves. Release the creeps faster sometimes. Sometimes have a fix of creep types.
Vary the number of entrance squares, doubling or tripling the number of creeps.
More arcade type elements, such as a powerful tower that must be player controlled, etc.
Pathfinding AI for the creeps. It would be nice if the creeps occasionally did more than walk in a straight line.
I'd really enjoy having support for displaying multiple tower killzones at once. See the full coverage of your towers.
Anyway, hope the game is a bit more interesting now.