Radiant Studio
Skip

Devlog #4 – Combo Attacks and More

In this session we developed couple of new features and improved on existing ones. Most of the time went on developing combined attacks using animation montages. While initially we thought of using buffered inputs to store the input action and then trigger multiple animation montages in sequence based off the buffer. However we found an easier method to do this.

Action Control

Controlling and preventing action overlapping using booleans such as isAttacking, isRolling, isMoving was added. This will be later changed to player states. The purpose of this is to prevent other actions from happening while one action is in progress such as attacking while rolling, moving while attacking, moving while rolling, rolling while attacking, rolling while moving. Later we will fire animation notifiers to better control when an action is finished. Currently is done on the BlendOut of the animation montage.

Moving with Animation

Enabling root motion on animation sequences to move the player together with the animation. If root motion is not enabled the mesh will move based of the skeleton and it will reset itself to the position of the player.

Combined Sequences (Combos)

Combining multiple sequences into one montage to produce combo attacks (Chained attacks). The logic behind the montage is that the player needs to chain the sequences to produce a combo. For example if the player clicks once with the mouse one sequence of the montage will play and the rest will stop. If the player continues to click while an attack sequence is happening the montage will continue producing a combo like attack. If the player did not click when one attack sequence was finished the montage will stop ending the combo. This is done using montage notifiers. On every end of attack sequence we fire added a notifier which is then handled on the bluprint from the OnNotifyBegin.

Directional Attack

Changing direction of the attack based on where the player camera is looking. After each attack sequence on the montage we RInterp from current player rotation to camera look at rotation. This produced more smooth and realistic combat.

Rolling

Rolling now only happens when the player is in combat mode and running. When player is not running he will dodge (to be implemented). We also increased the rate at which rolling is happening (faster).

Challenges

  • Root motion to move the character with the animation
  • Controlling animation montages to produce combos
  • Directional attack based on where the player is looking