Skip to main content

Updated Interaction Task

Written by Kailin Yang

What’s an Interaction Task?

In an Interaction task, the player needs to interact with the 3D game world in a particular way in order to move on. The interaction could be clicking on something, or being in a certain zone. See example use cases.

Settings

In the Settings section, choose player action type and feedback format:

  • Player Action Type denotes what the player has to do in order to progress in this task.

  • Feedback Format defines what sort of feedback happens once the player does the specified action.

Defining Details in the Scene Editor

Once you have the player action type selected, the scene editor will become available, where you can define the details of player actions and feedbacks.

Target Selection

If the target already exists in the scene, click on the Define Target (cursor icon) button in the left-side panel and then on the target in the scene.

The target should have a green outline once successfully selected. ID of the selected target will automatically show up in the left side panel. To reselect the target, click the Define Target (cursor icon) button again.

Target Importing

If you need to spawn an actor that doesn't exist in the scene yet, click on the Import (rectangle and a plus sign icon) button. Choose the actor and the animation state it should be in, then confirm and place it in the scene.

Meshes that are imported in this task can be removed after the player interaction, if desired, creating an illusion of the object being picked up. Otherwise, they will be removed at the end of the task.

Zone Placing

If you choose "being in a zone" as the player action type, you will need define the zones by placing spheres. In the game, when the player’s character collides with the sphere, it is considered as “being in the zone”.

Click on the Define Target (cursor icon) button to spawn a sphere, and place it in the scene as you would like. You can move and scale it just like any other object.

Feedback Details Definition

Define Feedback Text on Notification Banner

Type in the feedback here:

Define Feedback Animations

First, make sure you have the correct animation target - which actor will change their animation once the player action is done.

The click target will be automatically selected as the animation target (if "remove after interaction" is not toggled on), but the animation target doesn't have to be the click target, and you can change it by clicking on the Define Target (cursor icon) button, or import an animation target by clicking on the Import Selection (rectangle and a plus sign icon) button.

It works the same way as defining a click target. The selected animation target should have a blue outline.

Then, select what animation the target should change to, and the duration of the animation.

The behaviors are varies slightly depending on the hierarchy of the animation target:

Behavior of a level-wise or quest-wise actor (targets existing prior to the task)

Behavior of a task-wise actor (targets imported during the task)

Loop for a number of times

Changes to specified animation, and changes back to its previous state after the specified number of loops

Spawns and plays specified animation, and then either changes back to its previous state (if there's one) after the specified number of loops, or keeps looping until task ends

Loop for a number of times + remove after animation

Not Allowed

Spawns and plays specified animation, and disappears after the specified number of loops

Loop until task ends

Changes to specified animation, and changes back to its previous state when progressing to the next task

Changes to specified animation, and disappears when progressing to the next task

You can have multiple animations to be triggered by the same interaction - they will occur simultaneously. Click the +Animation button to add more.

Define Feedback Sound

Choose a sound file or upload one here:

Multiple Interactions in One Task

You can have multiple click targets / target zones in the same task. Click on +Click Target / +Target Zone button to add more.

In the game, they can be interacted with in any order. The navigation guidance arrow will point to the target that's closest to the player. There will also be a progress bar on the top of the screen if there are multiple targets.

The task will progress after all click targets / target zones have been interacted with AND all feedbacks are completed:

  • a text feedback is considered completed if the banner is dismissed (either by automatic timer or manually exit);

  • an animation feedback is considered completed if the specified number of loops have been played; if an animation is set to "loop until task ends", it's considered complete after 1 loop;

  • a sound feedback is considered complete when the sound clip has been completely played.

Example Use Cases

Pick out weeds from the field

multiple "click on a target" interactions:

  • each click target is a weed that is imported during the task (because we want to remove them and pre-existing actor can not be removed)

  • each click triggers the weed to disappear, creating an illusion of it being pulled out

Quickly surveying people

multiple "click on target" interactions:

  • each click target is a person that is existing prior to the task

  • each click triggers a text response, a voiceover, and a talking animation

  • each character plays talking animation twice, then return to their previous animation state

Set off fireworks

single "click on a target" interaction:

  • the click target is a pile of fireworks that is imported during the scene (because we want to remove them and pre-existing actors can not be removed)

  • the click triggers a setting-off animation and sound effects

  • the fireworks will disappear after the animation is done

See a waterspout on top of the cliff

single "be in the zone" interaction:

  • the zone is placed on top of the cliff

  • the waterspout is imported as the feedback animation target, so it will spawn upon the player being in the zone, and disappear after the task, ensuring that player only observes the phenomena at this particular moment of the quest

Did this answer your question?