09 Rolling on the Floor

In this tutorial we’ll set up the player’s roll ability.

The roll ability will simply roll on the floor, e.g. to use it as an evasive maneuver. Rolling will cost stamina.

We’ll set up:

  • the roll schematic
  • the roll ability
  • update Ellen (adding the ability)
  • update the control map

Let’s roll!

Roll Schematic #

First, we’ll set up the schematic animating the roll. It’s pretty simple, we’ll play a sound and an animation.

Navigate to Schematics and start working on a new schematic.

Play Sound #

Add Node > Audio > Audio > Play Sound

We’ll play a selected audio clip.

  • Object (Play On)
    Select Machine Object.
  • Audio Clip Asset
    Select footstep06.
  • Play One Shot
    Enable this setting.
  • Set Pitch
    Enable this setting.
  • Random Pitch
    Enable this setting.
  • Pitch
    Set to 0.4.
  • Pitch 2
    Set to 0.6.

Combatant Animation #

Add Node > Animation > Combatant > Combatant Animation

We’ll play the Roll animation type and wait for most of it.

  • Object
    Select Machine Object.
  • Animation Type
    Select Roll.
  • Wait
    Enable this setting.
  • Normalized Time (Wait)
    Set to 0.7.

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

Roll Ability #

The roll ability will cost 20 stamina, is just used on the user itself and doesn’t have any target changes. It’s also not cancelable (like the attacks).

Navigate to Status > Abilities and add a new ability.

  • Name
    Set to Roll.

Ability Settings #

  • Ability Type
    Select Default.
  • Useable In
    Select Both.

Target Selection Settings #

  • Target Type
    Select Self.
    The ability is used on the user without any target selection.

User Settings > Use Costs #

  • Auto Consume
    Select Always.

Status Changes #

Click on Add Status Change.

  • Change Type
    Select Status Value.
  • Status Value
    Select Stamina.
  • Operator
    Select Sub.
  • Change Value
    Select Value > Value.
    Set the value to 20.

Battle Animation #

Click on Add Battle Animation.

  • Schematic Asset
    Select EllenRoll.

Updating Ellen #

We need to add the ability to Ellen.

Navigate to Combatants > Combatants and select Ellen.

Attacks & Abilities > Ability Development #

To be able to use an ability, a combatant needs to know it.

We add the Roll ability to be learned at level 1, so we have it available at the start of the game.

Click on Add Ability.

  • Learn at Level
    Set to 1.
  • Ability
    Select Roll.

Updating the Control Map #

All that’s left to do is add the roll ability to the control map.

Navigate to Base/Control > Control Maps and select the Default control map.

Control Key 1 #

Click on Add Control Key.

Input Settings #

  • Input Key
    Select Roll.

Action Settings #

  • Type
    Select Action.
  • Action Type
    Select Ability.
  • Ability
    Select Roll.

Conditions #

  • During Target Selection
    Disable this setting.

Save Changes #

And that’s it!

Don’t forget to save your changes by clicking on Save Settings at the bottom of the editor.

Testing #

Hit play and roll around!

Our player controls aren’t blocked, so we can even change the direction of the roll (in case you don’t want that, enable the Block Player Control setting in the schematic’s Settings node).

Since our player is moved using root motion in the animator, the movement is handled by the rolling animation – our player control input just changes the direction, but since the roll animation is playing, the animator doesn’t play the movement animations.

You can also change the direction of the attacks, since the player control isn’t blocked there as well.

 

Next, we’ll add a new enemy, the spitter!