In this tutorial we’ll set up some more schematics to animate battle actions.
Currently, our enemy’s game object is just destroyed when killed, and our player also shows no reaction on death. Like abilities, we can animate the death of a combatant using schematics – and that’s what we’ll do now.
We’ll also set up a schematic to animate the use of items and non-physical attacks (spells, support).
We’ll set up 3 schematics:
- player death
- enemy death
- use (items/magic)
Let’s get to it.
Player Death Schematic #
First, we’ll set up the schematic to animate the player’s death. It’s pretty simple.
We’ll start with the player’s death – it’ll play the Death sound type on the combatant and play the Death animation.
As usual, the user of the action (i.e. the dying combatant) is the Machine Object.
Open the Makinom editor and navigate to Schematics.
Play Sound #
Add Node > Audio > Audio > Play Sound
Play the Death sound type on the user.
- Object (Play On)
Select Machine Object. - Use Sound Type
Enable this setting. - Sound Type
Select Death. - Play One Shot
Enable this setting.
Combatant Animation #
Add Node > Animation > Combatant > Combatant Animation
We’ll play the Death animation.
- Object
Select Machine Object. - Animation Type
Select Death. - Wait
Enable this setting.
Calculate Action #
Add Node > Battle > Action Outcome > Calculate Action
Death doesn’t need to be calculated, but it sets some things that are used by other features, e.g. as the latest damaged combatant for the (optional) battle camera. It’s good practice to always do this for your schematics animating battle actions.
And that’s it for the schematic. Click on Save Schematic to save it, e.g. as DeathPlayer.
Enemy Death Schematic #
Next, we’ll let the enemy die – beside playing the death sound/animation, we’ll also fade it’s game object to black and let it sink into the ground.
Play Sound #
Add Node > Audio > Audio > Play Sound
Play the Death sound type on the user.
- Object (Play On)
Select Machine Object. - Use Sound Type
Enable this setting. - Sound Type
Select Death. - Play One Shot
Enable this setting.
Combatant Animation #
Add Node > Animation > Combatant > Combatant Animation
We’ll play the Death animation.
- Object
Select Machine Object. - Animation Type
Select Death. - Wait
Enable this setting.
Enable Component #
Add Node > Game Object > Component > Enable Component
This node enables or disables a defined component.
We’ll use it to disable a NavMeshAgent component on our enemy, otherwise it’d block our movement into the ground if one is added.
- Enable/Disable
Disable this setting. - Component Name
Set to: NavMeshAgent - Scope
Select In Children. - Object
Select Machine Object.
Change Color #
Add Node > Animation > Fade > Change Color
We’ll fade the color of the combatant’s game object.
- Color Type
Select Renderer. - Fade
Select Fade. - Time
Select Value > Value.
Set the value to 1. - Fade Alpha/Red/Green/Blue
Enable these settings. - From Current
Enable this setting. - End Color
Select a black color with no alpha.
Though, the used renderer doesn’t really support transparency. - Object
Select Machine Object. - Scope
Select All In Children.
Move Into Direction #
Add Node > Movement > Movement > Move Into Direction
Now we’ll move the combatant down into the ground.
- Object (Moving Object)
Select Machine Object. - Move Component
Select Transform.
This’ll prevent any physics from getting in the way. - Time
Select Value > Value.
Set the value to 1. - Wait
Enable this setting. - Speed Type
Select Value. - Speed
Select Value > Value.
Set the value to 1. - Vector3 Type (Direction)
Select Value > Direction. - Direction
Select Down. - Local Space
Disable this setting.
Calculate Action #
Add Node > Battle > Action Outcome > Calculate Action
Like with the player’s death, we’ll calculate the death outcome.
And that’s it for the schematic. Click on Save Schematic to save it, e.g. as DeathEnemy.
Use Schematic #
And finally, we’ll set up a schematic to animate using something, e.g. an item or magic spell. We’ll play the Use animation, play an audio clip and spawn a prefab.
Create a new schematic.
Settings #
We’ll add a prefab and audio clip to the schematic – however, we don’t select assets for them.
We’ll later use the asset override settings to set them depending on which item or ability they’re used in.
Prefabs #
Click on Add Prefab Resource.
Audio Clips #
Click on Add Audio Clip Resource.
Combatant Animation #
Add Node > Animation > Combatant > Combatant Animation
- Object
Select Machine Object. - Animation Type
Select Use. - Wait
Enable this setting.
Wait #
Add Node > Base > Wait
We’ll wait for a short time.
- Time
Select Value > Value.
Set the value to 0.2.
Play Sound #
Add Node > Audio > Audio > Play Sound
Play the audio clip on the target.
- Object (Play On)
Select Starting Object. - Audio Clip
Select 0: (the audio clip we set up). - Play One Shot
Enable this setting.
Spawn Prefab #
Add Node > Game Object > Prefab > Spawn Prefab
We’ll spawn the prefab on the target (Starting Object).
- Prefab
Select Prefab 0. - Use Prefab Rotation
Enable this setting. - Target Type
Select Object. - Object (Target Object)
Select Starting Object. - On Child
Select Path.
We’ll define a path to a child object. - Find Child
Set to: Center
We’ll spawn the prefab at the center of the target’s game object.
The Center child object is already set up on all combatant prefabs. - Spawn At
Select All.
Wait #
Add Node > Base > Wait
We’ll wait again.
- Time
Select Value > Value.
Set the value to 0.5.
Calculate Action #
Add Node > Battle > Action Outcome > Calculate Action
We now calculate the outcome of the action.
No further settings needed.
Wait #
Add Node > Base > Wait
We’ll wait again.
- 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 Use.
Default Battle Animations #
Back to the default battle animations.
Navigate to Combatants > Combatants > General Settings.
Battle Settings > Default Battle Animations #
We’ll set up the death animations for player and enemies, and also use the Use animation to animate the defend command.
Defend Animation #
Click on Add Battle Animation.
- Schematic Asset
Select the Use schematic.
Death Animation #
We’ll use different setups for player and enemy combatants.
Click on Add Battle Animation.
- Schematic Asset
Select the DeathPlayer schematic. - Player/Ally
Enable these settings. - Enemy
Disable this setting.
Click on Add Battle Animation again, now it’s time for the enemy.
- Schematic Asset
Select the DeathEnemy schematic. - Player/Ally
Disable these settings. - Enemy
Enable this setting.
Save Changes #
And that’s it!
Save the changes using the Save Settings button at the bottom of the editor.
Testing #
Hit play and start a battle.
The enemy dies properly (so does the player), defend is animated – everything works.
Next, we’ll add some items.