Hire Us For Your Game!

Game Mechanic Implementation : Abilities

Game Mechanic : Abilities (Prototype)

Abilities in a Unity Tower Defense Game TLDR ~ The Player character now has (prototype) recharging and re-usable abilities, including projectiles and buffs.

One of Tower Defense System’s most impactful and persistent weaknesses has been its downtime– once players have organized and purchased their towers, players who are seeking a more actiony, active experience (like me) find themselves with little to do besides watch their plan unfold. While entertaining to an extent, and common in the Tower Defense genre, the lack of player interaction during a battle leaves players like me out in the cold. Collectibles and a movable player avatar were introduced in order to remedy this and give players more to do as the battle rages on, but until this week there has not been a way for players to actively participate in the pain. This week, my inspiration came from Final Fantasy 7 Remake* and its multi-layered combat system.

The Final Fantasy 7 Remake provides many options for engaging micromanagement.

Take a few minutes and watch this FF7 combat overview / strategy video from IGN.

As shown in the video, Final Fantasy 7 Remake is uniquely great at making combat engaging over short, medium, and long term timeframes, with “many things to keep track of” at essentially all times (but not all of them required). Combat is fueled by several different “layers”, beginning with light and oft-recurring layers that may be spammed (simple attacks) that are less impactful but less time-expensive, and leading up to rarer, more impactful heavy-damage layers (Limit Break ultra-moves), some of which take an entire battle to become usable–

  • Layer 1 : Simple Attack (Costs essentially no time. Mash the square button like in a beat em up.)
  • Layer 2 : Character Attack (Costs a second or two to charge and use. Typically a heavy attack that does more damage.)
  • Layer 3 : ATB Section Action (Costs a handful of melee hits to charge ~ 5-10 seconds. Can deal large damage via special attack, or alternatively be an item or spell usage).
  • Layer 4 : Summon (Takes half of a battle to charge. 5-10 minutes. Significant damage).
  • Layer 5 : Limit Break (Charges as player takes damage. Typically only one usage per boss battle. Outrageous damage).

These 5 layers all charge (essentially) separately from each other, which means that various layers become usable at any given moment. Each layer cannot begin re-charging until used, so efficient players are incentivized to use each one ASAP as they become available (and at the proper moment, such as when an enemy is staggered or vulnerable).

Note that this is just for one character– the player usually controls 3 in any given fight, and each of these three playable characters has their own 5 layers all charging at once, creating a ceasless march of special-attack after ATB action after summon after limit break, etc. In the most heated battles, players will find themselves rapidly expending each layer, switching characters constantly to find and spend the most recently charged-up layer.

And while managing all of this activity, players need to spend some attention on dodging large attacks from bosses, consider their dwindling item counts, and play towards enemy elemental weaknesses and resistances.

While all of this may sound exhausting, much of it isn’t critical (victory may usually be achieved, albeit slower, when ignoring many of the gameplay mechanics above). Players who want a slower, less-stressful experience can stick closer to Layer 1– simple beat-em-up, button-mashing attacks, with the occasional Layer 2 and 3 usage to wittle down bosses and heal. It’s a win for accessibility, and for those who may be more used to slower-paced games, or those who are simply seeking a less-manic experience.

For players who gain satifaction from micromanagement– those who seek to optimize their damage per second– heavy use of Layer 3, Layer 4, and Layer 5 can provide a feeling of empowerment and anticipation as players swiftly switch between the layers, expending them ASAP for huge, fast, and visually-dazzling battles. How could we use this general approach in the Tower Defense genre?

Abilities Prototype Hardcoded, ugly, and fast. This early prototype did its job by proving fun quickly.

Abilities are a new system that allow players to convert a capped amount of “time-spent-alive” into special actions such as high-damage projectile attacks…

Projectiles currently fly from the feet of units, because that is where their origin and collision detection is. Looks odd, will fix.

Or useful buffs…

Buffs in a Unity Tower Defense Game A Unit’s buffs are represented by faint icons that swirl around the unit. The Arbor Interactive logo you see above is the “default_missing_image” icon. Did we mention that this is a pre-alpha Ability system?

Each ability costs time to use, and the amount of time differs per ability. Each one is represented by an icon at the right side of the UI, and each icon has multiple states–

Hooke's Law for Juicy Unity Game Ability Icons Sproing! Your abilit-y is read-y!

Shoutout to Hooke’s Law for making everything bouncy! We have created a new component (“HookesScale”) this week that makes it almost trivial to get this behavior, simply add the component, tell it what the “desired” scale is, and the component will adjust the gameobject’s localscale in a way that makes it bouncy and sproingy.

A Hooke's Law Scale-Oriented Unity Component

Jiggle Physics via Hooke's Law Every usage of Hooke’s Law makes the world a better place. Gif by FightersGeneration.com

Why is every ability icon an adorable winky-face of Spotlight? This is the nature of prototyping– don’t have an set of icons ready to represent various abilities? Don’t code written to scan your database for them? Use the cutest icon you’ve got instead. If the final system turns out to be a bust, and you end up scrapping it, less effort is wasted.

The end result is a a much more active player experience, for those who want it. The introduction of hotkeys makes for a convenient and satisfying system that makes the player feel more ownership of their situation.

Abilities in a Unity Tower Defense Game

Subscribe to Future Devblogs!

Subscribe here to be notified when we publish future devblogs, tutorials, etc.