Animating a Magic Ability

Create a schematic to animate magic abilities, e.g. a fire attack or healing spell.

In this tutorial we’ll create a simple schematics to animate magic abilities with a cast animation, particle effect and audio clip.

We’ll use prefab and audio overrides to use the same schematic in different abilities, simply replacing the used prefab and audio clip.

Resources #

We’ll use different particle effect prefabs and audio clips for different spells.

You can download the particle effect prefabs and hit audio clip here:

Download Resources

Magic Ability Schematic #

This schematic will play a cast animation, spawn a particle effect prefab and play an audio clip on the target and calculate the outcome (there’s no hit chance used, so no need to react to that in the schematic).. The user is the Machine Object and the target is the Starting Object of the schematic.

You can download the finished schematic here:

Download Schematic

You’ll have to select the animation type (Combatant Animation node) to get the schematic working in your project.

 

Settings #

We’ll add a prefab and an audio clip setup to the schematic – but we don’t actually select a prefab or audio clip in it, as they’ll come from resource overrides in individual abilities.

You can select a default prefab and audio clip if you want, though.

Prefabs #

  • Destroy Prefabs
    Disable this setting.
    The particle effect will be destroyed manually in the schematic, after some time that’s ending after the schematic ends.

Click on Add Prefab Resource.

  • Name
    Set to Particle.

Audio Clips #

Click on Add Audio Clip Resource.

  • Name
    Set to Sound.

Combatant Animation #

Add Node > Animation > Combatant > Combatant Animation

We’ll play a cast animation on the user.

  • Object
    Select Machine Object.

Animation #

  • Animation Type
    Select Cast.
    Or whatever animation you want to play.
  • Wait
    Enable this setting.
  • Normalized Time
    Set to 0.4.
    We’ll only wait for 40% of the animation’s duration to spawn our particle effect during the cast animation.
    You might need to adjust this depending on your own animation.

Spawn Prefab #

Add Node > Game Object > Prefab > Spawn Prefab

Now we’ll spawn the particle effect prefab on the target.

  • Prefab
    Select Prefab 0: Particle.
  • Target Type
    Select Object.

Target Object #

  • Object
    Select Starting Object.
  • Mount
    Enable this setting.
    The prefab will be parented on the target’s game object.

Audio Settings #

We’ll also play the audio clip when spawning the prefab – all in one go!

  • Play Audio
    Enable this setting.
  • Audio Clip
    Select 0: Sound.
  • Play One Shot
    Enable this setting.

Wait #

Add Node > Base > Wait

Add a short wait time for the effect to show and start emitting particles.

  • Time
    Select Value > Value.
    Set the value to 0.5.

Calculate Action #

Add Node > Battle > Action Outcome > Calculate Action

This node is used to calculate the outcome of an action, e.g. an ability or item’s user and target changes.

  • Animate Target
    Enable this setting.
    This’ll play damage or evade animations of the ability based on the damage type of the ability.
    Learn more about damage types in this documentation.

Emit Particles #

Add Node > Game Object > Component > Emit Particles

Now we’ll stop the particle effect. It’ll take some time for the already emitted particles to vanish.

  • Emit
    Disable this setting.

Target Object #

  • Object
    Select Prefab 0: Particles.
    Set the prefab ID to -1 (i.e. using all spawned instances of the prefab).
  • Scope
    Select All In Children.

Destroy Prefab #

Add Node > Game Object > Prefab > Destroy Prefab

This node is used to destroy prefabs that where spawned by the schematic – it can also destroy them after a defined amount of time.

  • Prefab
    Select Prefab 0: Particles.
  • Spawned Prefab ID
    Set to -1.
    I.e. using all spawned instances of the prefab.
  • Destroy After Time
    Enable this setting.
  • Time
    Select Value > Value.
    Set the value to 5.
  • Wait
    Disable this setting.

Wait #

Add Node > Base > Wait

Wait a bit more before ending the action.

  • Time
    Select Value > Value.
    Set the value to 1.

And that’s it for the schematic. Click on Save Schematic to save it, e.g. as MagicAbility.

Using the Schematic #

The schematic is used to animate a magic abilities. Using resource overrides we can use it with different prefabs and audio clips to animate multiple abilities.

E.g. to animate a fire ability, navigate to Status > Abilities, select your fire ability and change the following settings.

Battle Animation #

Click on Add Battle Animation to add the schematic animating the ability and calculating the damage.

  • Schematic Asset
    Select the MagicAbility schematic (or however you named it).

The Prefab Settings allow us to override prefabs of the schematic.

  • Set Prefabs
    Enable this setting.

A prefab setup is automatically added for us, change the settings.

  • Prefab
    Select the fire effect prefab you want to use.

Similar to the prefabs, the Audio Clip Settings allow us to override the audio clips of the schematic.

  • Set Audio Clips
    Enable this setting.

Again, an audio clip setup is automatically added for us, change the settings.

  • Audio Clip
    Select the audio clip you want to use.

You can also limit using the schematics to defined battle systems or only use them for the player faction, etc.

To use the schematic in other abilities, just use a different prefab and audio clip.