Step Customization
Editing the generated steps.
Last updated
Editing the generated steps.
Last updated
Open Step Sequence list in ATM.
This list contains items – steps that the player will need to take. Initially, they are recorded as a sequence, with one step being activated after another. Here, the logic of each step can be edited.
Step State field is read-only and displays the step status at runtime (Done - completed, Displaying - active, Not Done Yet - not yet completed).
Blocked By Time Delay field is read-only. If Start Delay is set, the step will not be started until it has existed for the specified duration. This is an additional feature to launch steps, for example, searching objects "By Tag". Since when running simultaneously, spawning objects may not be found.
Blocked By Time field is read-only. If Min Time Amount is set, the step will not be completed until it has existed for the specified duration. This is an additional feature to prevent misclicks that accidentally close steps.
Blocked By Button field is read-only. If the step contains graphics with a confirm button, only its press will unblock the step, allowing the execution to continue.
Edit each step to suit your needs.
To change the start logic for a step:
Leave Start Step as Auto After Previous Step if you want the step to start immediately after the previous one is completed. If it is set as the Element 0, it initializes at Start().
Set Start Delay time amount, like 0.5f, to start step with delay. Recommended for "By Tag" and "By Layer" interactions.
To enable multiple steps in the sequence to start asynchronously, set the Execute In Parallel checkbox to true for each step in the group and assign them the same Parallel Group ID. This way, all steps in the group start together, but each completes only when its specific condition is met.
To change the logic by which a step is considered completed:
To change how the target for player interaction is defined, select a Check Interaction type from the supported list. For example, Click+ByGameObject = the player must click on a specific object in the scene. Click+ByTag = the player must click on any object with this tag in the scene. Click+ByLayer = the player must click on any object with this layer in the scene. Click+AnyTarget = the player can click anywhere to complete the step. This is suitable for cases where a target is not required, such as keyboard input.
To set the targets and their types directly, there are several lists. Such as specific Game Objects to interact, tags, layers, keyboard keys, and also types to specify objects (2D, 3D, UI). Use them to complement the Check Interaction. For example, if you select ByTag, make sure that the Tags list contains the tags that will be used.
If Min Time Amount is set, the step will not be completed until it has existed for the specified duration. This is an additional feature to prevent misclicks that accidentally close steps.
To attach additional logic to the steps use Additional step behaviour fields. Add methods that are triggered at the start of a tutorial step. Add methods that are triggered when the step is completed. Best methods to add to these fields:
Pausing/resuming game time via script
Collecting completion analytics (e.g., via Firebase)
Applying/removing background blur
Activating additional animations, such as a pointer-up effect when a step is completed
Displaying overall learning progress with a filling scale
Providing feedback through haptic vibrations
To illustrate a step with a UI Pointer tip, assign the required pointer prefab to the Pointer Prefab field. To attach text to the pointer, fill in the Pointer Text field.
To illustrate a step with a UI Graphic tip, assign the required graphic prefab to the Graphic Prefab field. To attach text to the graphic, fill in the Graphic Text field.
To additionally indicate the final target object, such as the endpoint for a Drag and Drop step, assign the hover prefab to the Hover Prefab field. This is another standard UI Pointer, added as a supplement to the step.
To illustrate a step with a World Pointer tip, assign the required pointer prefab to the World Pointer Prefab field. To attach text to the pointer, fill in the World Pointer Text field.
To illustrate a step with a World Graphic tip, assign the required graphic prefab to the World Graphic Prefab field. To attach text to the graphic, fill in the World Graphic Text field.
To additionally indicate the final target object, such as the endpoint for a Drag and Drop step, assign the hover prefab to the World Hover Prefab field. This is another standard World Pointer, added as a supplement to the step.
To change text values in PointerText, GraphicText, WorldPointerText, WorldGraphicText:
Edit text value in each step or go to TSR > InputTextStrings objects where all text hints are stored. These texts are interconnected and can be seamlessly edited both from the steps and from this central collection.
To save the current text values, export them to a CSV file using a dedicated button.
To prevent the step from starting automatically, set Start Step → Manually Call. The step will then wait for a trigger from the script or button click. Use public methods in TutorialSceneReferences script, for example StartTutorialStep(0);
to start step number 0. See .
To modify the type of action expected from the player, select an Interaction type from the supported list. See . For example, Click – the player must left-click or tap the target. KeyCode - the player must press all target keys listed in KeyCodes, in any order.
To change the visual representation fill the Visual Tips fields with prefabs and text strings. Different tip types are not mutually exclusive and use independent settings. The asset includes various prefabs that can be attached here or used as references to create custom ones. See .
By default, steps use the English language and a single input field for each visual. For more flexible text customization and localization see (to translate) or (to simply replace text in runtime).