For the complete documentation index, see llms.txt. This page is also available as Markdown.

Creating ActionSequences

Overview

This guide explains the full creation process step by step, from creating an ActionSequence and configuring its tracks to completing the presentation and verifying the result through execution.

In this document, you will create an ActionSequence directly while learning the basic workflow and how to use it.

3-Hit Combo Action

Learning Outcomes

By completing this tutorial, you will be able to create the following setup:

  • A chained attack animation sequence consisting of 3 stages (1st, 2nd, and 3rd hits)

  • Collision detection and script-based damage processing timed to each hit

  • Hit effects that play in sync with the impact timing

  • Camera shake applied during the 3rd hit phase

  • Player input disabled while the 3rd hit is in progress

  • Execution of the ActionSequence via button input

Asset List

Asset Type
Asset ID
Description

Animation

ovdrassetid://18169100

1st Hit

Animation

ovdrassetid://18171100

2nd Hit

Animation

ovdrassetid://18173300

3rd Hit

Tutorial

Step
Task
Notes
  1. Create ActionSequence

  • Add an ActionSequence instance under the ActionSequenceService.

  • Rename it to 3-HitCombo.

  • The ActionSequence name must be unique.

  1. Open ActionSequence Editor

  • Hover the mouse over the ActionSequence instance, then click the Open button that appears.

  • Changes made during play mode are not reflected immediately and are applied when you run it again.

  1. Animation Track (1st Hit)

  • Click the Add Track button to add an Animation Track.

  • Select the track, then specify the animation ID for the 1st hit in Ovdr Asset Id in the Track Property panel. (ovdrassetid://18169100)

  • Set Blend in / Out Time to 0.

  1. Preview

  • Press the Play button or Spacebar to play the timeline and check the animation.

  1. Animation Track (2nd Hit)

  • Add a new Animation Track.

  • Select the track and specify the animation ID for the 2nd hit in Ovdr Asset Id. (ovdrassetid://18171100)

  • Set Blend in / Out Time to 0.

  • Adjust the section position so that it comes after the 1st hit.

  1. Animation Track (3rd Hit)

  • Add a new Animation Track.

  • Select the track and specify the animation ID for the 2nd hit in Ovdr Asset Id. (ovdrassetid://18173300)

  • Set Blend in / Out Time to 0.

  • Adjust the section position so that it comes after the 2nd hit.

  • Play it back and check the animation.

  1. Animation Blend

  • To prevent the animation from breaking during transitions, set the Blend In / Out Time of each animation to 0.25.

  • Arrange them so that the start and end of each animation overlap.

  • Play the timeline and check the animation.

  • To prevent the original length of the animation from not being fully represented by 0.25 seconds due to the blend time, extend the section length beyond the original length.

  • Play the timeline while checking whether the animation transition looks natural, and adjust the section lengths.

  • In the blend section, the previous animation and the next animation are both applied at the same time, and the weight values change so that the transition occurs smoothly. In this section, the original animation is not played back 100% exactly as-is; instead, the result blended with the other animation is applied.

  1. Save

  • Press Save or Ctrl + S to save your work. (When the save is complete, the message Sequence Changes Saved is displayed.)

  • Save frequently so that your work is not lost.

  • If there are changes, an asterisk (*) is displayed next to the ActionSequence name and the Save button.

  1. Apply Upper Body Animation

  • Change the Slot Type of the 1st/2nd hit animation tracks to Upper Body.

  • The body region to which the animation is applied is determined by the Slot Type.

  1. Control Viewport Camera

  • After clicking Viewport, use the WASD keys to move the camera and right-click the mouse to adjust the camera position so the animation is clearly visible from the side of the character being attacked.

  1. Collision Track

  • Add a Collision Track.

  • Expand the collision track in the track list so that the Value field of the Collision Track is visible.

  • In the Value area of the timeline, add 3 markers at appropriate positions according to the animation track count by clicking the mouse wheel button or using Ctrl + left-click.

  • Move the scrubber and adjust the positions of the 3 keyframes to match the animation timing. (Do not worry about the collision position yet!)

  • The horizontal axis of the timeline can be zoomed in/out with Ctrl + mouse wheel up/down.

  1. Collision Detailed Settings

  • Select each keyframe and change the Collider Type to Box.

  • Expand all Collider fields so they are visible, then change the Box Extent of each keyframe to (100, 150, 100).

  • Expand all Attachment Offset fields so they are visible, then change the Relative Location of each keyframe to (0, 0, -100).

  • Change the Collision Event Name of each keyframe to Hit1, Hit2, Hit3.

  • Move the scrubber to check whether the collision position looks natural and adjust it.

  • Save your work.

  • The Collision Event Name is used for script event connections.

  1. Run ActionSequence

  • Add a Script under the ActionSequence and rename it to CollisionTrackScript.

  • Open the script and write the following to handle collisions:

  • Under StarterPlayer.StarterCharacterScripts, add a LocalScript and write the following content.

  • Executing ActionSequence and connecting events can be done in both server-side Scripts and LocalScripts.

  1. Verify Collision Detection

  • Set the number of players to 2 and run a play test.

  • Move Player1’s character in front of Player2’s character, then press the Play 3-Hit Combo button to execute the ActionSequence and verify that the character dies when all attacks hit successfully.

  • End the play test.

  • If you enable Show Collision in the View tab of the Studio toolbar, the collision areas will be visually displayed in the viewport when collision track detection occurs during play.

  1. Control Track

  • Add a Part under the ActionSequence, then add a VFXPreset under the Part.

  • Rename the Part to HitFXPart, and the VFXPreset to HitFX1.

  • Set CanCollide of HitFXPart to false, and Transparency to 1.

  • Change the appearance of HitFX1 to Simple Hit, and set Enabled to false.

  • Add a Control Track.

  • Select the track, then click the reference link button in the Ref Object field and select HitFXPart in the Level Browser.

  • To avoid confusion when structuring objects under ActionSequence, it is recommended not to use identical names for objects.

  1. Effect Settings (1st Hit)

  • Expand all Control Tracks so that the Value field of HitFX1 under HitFXPart is visible.

  • In the Value area of the timeline, click the mouse wheel or use Ctrl + left-click to add a keyframe.

  • Select the keyframe and set the Time field to 0. (If the Value field is not false, set it to false.)

  • Insert a keyframe at the timing of the 1st hit collision, and set the Value field to true.

  1. Control Track Fine Adjustment

  • Click the Control Track, expand all Attachment Offset fields, and change the Relative Location field to (100, 100, 0).

  • Move the scrubber to check whether the effect position looks natural and adjust it.

  1. Effect Settings (2nd Hit)

  • To reuse the same effect as the 1st hit, insert a keyframe right before the 2nd hit collision timing and set the Value field to false.

  • Then, insert a keyframe at the collision timing and set the Value field to true.

  • Save your work.

  1. Effect Settings (3rd Hit)

  • To use a new effect, add a VFXPreset under the Part.

  • Rename the VFXPreset to HitFX2.

  • Change the appearance of HitFX2 to Explosion, and set Enabled to false.

  • Expand all Control Tracks so that the Value field of HitFX2 is visible in the track list.

  • In the Value area of the timeline, click the mouse wheel or use Ctrl + left-click to add a keyframe.

  • Select the keyframe and set the Time field to 0. (If the Value field is not false, set it to false.)

  • Insert a keyframe at the 3rd hit collision timing and set the Value field to true.

  • To ensure the 3rd hit effect appears on the ground, add a keyframe to the Y value of OriginPosition in the Control Track and set the Value field to -100.

  • Adjust the keyframe position so that the position changes before the effect is played, placing it before the 3rd hit effect timing.

  • Play the timeline and check the effect positions for the 1st to 3rd hits.

  • To prevent the 1st and 2nd hit effects from being affected, add a keyframe for the Y value of OriginPosition at the start of the timeline, set the Time field to 0, and the Value field to 0.

  • To prevent the position from gradually changing between the 1st and 3rd hits, add a keyframe between the 2nd and 3rd hits and set the Value field to 0. (This ensures that after the 2nd hit, while the effect is not visible, the position changes, and the updated position is applied only at the 3rd hit.)

  • Move the scrubber to check whether the effect position looks natural and adjust it.

  1. Socket Attachment Effect Settings

  • Add a Part under the ActionSequence, then add a VFXPreset under the Part.

  • Rename the Part to HandFXPart, and the VFXPreset to HandFX.

  • Set CanCollide of HandFXPart to false, and Transparency to 1.

  • Change the appearance of HandFX to Energy Pulse, and set Enabled to false.

  • Add a Control Track.

  • In the Ref Object field, click the reference link button, then select HandFXPart in the Level Browser.

  • Change the Socket Name to LeftHand.

  • Expand all Control Tracks so that the Value field of HandFX under HandFXPart is visible.

  • In the Value area of the timeline, click the mouse wheel or use Ctrl + left-click to add a keyframe.

  • Select the keyframe and set the Time field to 0. (If the Value field is not false, set it to false.)

  • Insert a keyframe at the timing when the 2nd hit animation ends, and set the Value field to true.

  • Insert a keyframe at the timing when the 3rd hit effect plays, and set the Value field to false.

  • Move the scrubber to check whether the creation and disappearance timing of HandFX looks natural and adjust it.

  • Save your work.

  1. Camera Shake Track

  • Add a CameraShake Track.

  • Click the Edit Camera / Character Camera View Toggle button.

  • Change the Shake Type of the CameraShake Track to Ultimate.

  • Move the scrubber and adjust the section position to match the timing when the 3rd hit effect is played.

  • Play the timeline to check whether the camera shake looks natural, and adjust the section position and length.

  • Click the Edit Camera / Character Camera View Toggle again to return to the default camera.

  • Save your work.

  • To preview camera-related tracks (Camera Shake, Camera FOV, Camera Zoom, etc.), you must switch the view using the Edit Camera / Character Camera View Toggle button.

  • At runtime, camera effects are applied only to the player who executes the ActionSequence.

  1. Trigger Track

  • Add a Trigger Track.

  • Adjust the section position and length to match the duration of the 3rd hit animation.

  • Change the Trigger Name field to MovementStateControl.

  • Add a LocalScript under the ActionSequence and rename it to TriggerTrackScript.

  • Open the script and write the following to control the player state:

  1. Clean Up Playback Duration

  • Move the scrubber to the point where the 3rd hit animation ends.

  • Click the playback duration setting button to adjust the playback end position to match the actual action length.

  • Save your work.

  • To clearly define the creation and destruction timing of duplicated instances generated during ActionSequence execution, it is recommended to also clean up the playback duration when the action ends. If the playback duration is unnecessarily long, the removal of instances may be delayed.

  1. Verify Result

  • Run a play test and verify the result. (When the 3rd hit animation is executed, check whether movement is disabled until the playback ends.)

Hit Reaction

Learning Outcomes

By completing this tutorial, you will be able to create the following setup:

  • Play hit reaction upon successful attack

  • Hit effect that plays in sync with the impact timing

Asset List

Asset Type
Asset ID
Description

Animation

ovdrassetid://18178100

Hit

Tutorial

Step
Task
Notes
  1. Create ActionSequence

  • Add an Action Sequence instance under the ActionSequenceService.

  • Rename it to HitReaction.

  • The Action Sequence name must be unique.

  1. Open ActionSequence Editor

  • Hover over the Action Sequence instance and click the Open button that appears.

  • Changes made during play mode are not applied immediately and will take effect after restarting.

  1. Animation Track

  • Click the Add Track button to add an Animation Track.

  • Set the Ovdr Asset ID to the animation ID for the 1st hit. (ovdrassetid://18178100)

  • Set Blend In / Out Time to 0.

  • Adjust the playback duration to match the actual animation length.

  • Press F to fit the timeline to the playback duration.

  1. Preview

  • Press the Play button or Spacebar to play the timeline and check the animation.

  • Save your work.

  1. Run ActionSequence

  • In the LocalScript under StarterPlayer.StarterCharacterScripts, add the following code created while making the 3-hit combo action:

  • Run a play test.

  • Click the Play HitReaction button to execute the Action Sequence and verify that the action plays.

  • End the play test.

  • Action Sequences can also be executed in a LocalScript.

  1. Configure Effects

  • Add a Part under the Action Sequence, then add a VFXPreset under the Part.

  • Rename the Part to ReactionFXPart, and the VFXPreset to BloodFX.

  • Set CanCollide of ReactionFXPart to false, and Transparency to 1.

  • Change the appearance of BloodFX to Blood, and set Enabled to false.

  • Add a Control Track.

  • In the Ref Object field, click the reference link button, then select ReactionFXPart in the Level Browser.

  • Expand all Control Tracks so that the Value field of BloodFX is visible in the track list.

  • Add a keyframe in the Value area of the timeline.

  • Select the keyframe and set the Time field to 0. (If the Value field is not false, set it to false.)

  • Add another keyframe at the desired timing and set the Value to true.

  • Click the Control Track and change the Relative Location field to (0, 100, 0).

  • Move the scrubber to check and adjust the effect position naturally.

  • Save your work.

  1. Play Hit Reaction on Attack Hit

  • Open the CollisionTrackScript under the 3-HitCombo Action Sequence.

  • Add the following code below target.Health -= 40:

  1. Verify Result

  • Run a play test.

  • Move Player1’s character in front of Player2’s character, then press the Play 3-Hit Combo button to execute the Action Sequence. Verify that the hit reaction plays each time an attack lands.

Healing Action

Learning Outcomes

By completing this tutorial, you will be able to create the following setup:

  • Healing Effect Presentation

  • Handle events at specific timings by using the Event Track.

Asset List

Asset Type
Asset ID
Description

Animation

ovdrassetid://18884200

Spell Casting

Tutorial

Step
Task
Notes
  1. Create ActionSequence

  • Add an ActionSequence instance under the ActionSequenceService.

  • Rename it to HealSpell.

  • The ActionSequence name must be unique.

  1. Open ActionSequence Editor

  • Hover over the ActionSequence instance and click the Open button that appears.

  • Changes made during play mode are not applied immediately and will take effect after restarting.

  1. Animation Track

  • Click the Add Track button to add an Animation Track.

  • Set the Ovdr Asset ID to the animation ID for the 1st hit. (ovdrassetid://18884200)

  • Set Blend In / Out Time to 0.

  • Change the Slot Type to Upper Body.

  1. Preview

  • Press the Play button or Spacebar to play the timeline and check the animation.

  • Save your work.

  1. Run ActionSequence

  • In the LocalScript under StarterPlayer.StarterCharacterScripts, add the following code created while making the 3-hit combo action:

  • Run a play test.

  • Click the Play HealSpell button to execute the ActionSequence and verify that the action plays.

  • End the play test.

  • ActionSequence can also be executed in a LocalScript.

  1. Configure Effects

  • Add a Part under the ActionSequence, then add a VFXPreset under the Part.

  • Rename the Part to HealFXPart, and the VFXPreset to HealFX.

  • Set CanCollide of HealFXPart to false, and Transparency to 1.

  • Change the appearance of HealFX to Heal, and set Enabled to false.

  • Add a Control Track.

  • In the Ref Object field, click the reference link button, then select HealFXPart in the Level Browser.

  • Expand all Control Tracks so that the Value field of HealFX is visible.

  • Add a keyframe in the Value area of the timeline.

  • Select the keyframe and set the Time field to 0. (If the Value field is not false, set it to false.)

  • Add a keyframe at the timing when the animation ends, and set the Value field to true.

  • Move the scrubber to check whether the effect position looks natural and adjust it if necessary.

  • Save your work.

  1. Set Playback Duration

  • Place the scrubber at 2 seconds and adjust the playback duration.

  1. Event Track

  • Add an Event Track.

  • Expand the Event Track so that the Value field is visible.

  • Add four keyframes after the last keyframe of the Control Track. (These keyframes will be used in the script for healing processing.)

  • Set the Collision Event Name of each keyframe to: Heal1, Heal2, Heal3, Heal4

  • Save your work.

  • Add a Script under the ActionSequence and rename it to EventTrackScript.

  • Open the script and write the following to control the behavior:

  1. Verify Result

  • Run a play test and verify the result.

Learning Materials

Principle of OperationTrack Types

Useful Resources

Character Animation

Last updated