Shadow Heroes: Vengeance In Flames

Ability Sub-System

Hello Everyone,

It’s been a little while since my last update but yes we have been greenlit. We are working really hard to get a demo version of the game ready for people to play and so that we can get some feedback on actual gameplay. As it stands, I recently added a new ability system in the game. This is a generalized sub-system that can be used in different games as well so I’m fairly happy with it.

It consists of an interface that can be implemented on any object and a baseAbility object that contains simple ability mechanics like particle effects, range, type, AOE, targeting decal, cooldown, etc. Any additional implementation and special effects can be implemented on the subobjects.

Variables.png

The Hud is also updated with a simple material that can have the icon changed. This is done via a Material Instance Dynamic. The 2d Icon is passed to the material which is then desaturated and tinted red for the cooldown. Two other parameters are passed to the material to create a percentage and the result is a red bar that covers a percentage of the material based on how much of the cooldown is left.

Since the ability is called on an interface, anything can have a ability attached to it. Just give it an ability array, plug in an ability and pass it an index and optional owning player controller. The player controller is so that targeted abilities know what mouse the decal should follow. This is an example of one of my characters implementing the ability interface’s Use ability function.

To fast forward a bit, this is the kind of result that you get. Note the ability icon automatically updates with it’s cooldown timer, No hud calls required. The ability itself prevents the ability from being activated if the cooldown is running so there are no disabled buttons either. The sphere that is spawning is the abilities area of effect for damage. Every ice crystal that hits will effect this area doing a sphere overlap check for performance. (sorry for the big gif file)

http://www.alliedgames.co/images/ShadowHeroes/ExampleAbility.gif