Use Tasks and Assignments to Create Missions

Contents:

Motive Tasks and Assignments let you author engaging, multi-step missions for your players. First, let’s get some definitions out of the way:

  • A Task defines a single thing for the player to do. You can think of it as a line in a checklist. When the Task has been completed, you check it off. (In fact the Explore AR Tasks UI uses this exact approach.)
  • An Assignment defines a set of Objectives that the player needs to complete. Objectives can be linked to Tasks (i.e. completing a Task completes any linked Objectives.)

Using Tasks

In many cases you can just use Tasks to create missions. Let’s consider a couple of use cases.

Give the player a sequence of Tasks

Let’s create a sequence of Tasks where the player needs to collect an item from a location and drop it off at another.

  1. Create a “take” Location Task
    1. Create a new Frame for the Task
    2. Find Location Tasks in the Resources
    3. Configure the Task values

  2. On close, create a “put” Location Task that uses the same item
    1. Auto-create a new Frame that listens for the “close” event

    2. Add a new “put” Location Task that puts the same item

Now if you play through this sequence, you’ll notice that the second Task only shows up in your Tasks list after the first Task is complete.

Note that we’re showing the flow using Location Tasks, but the same rules apply for any type of task. Read more about Location Tasks.

Give the player two Tasks at the same time

Now let’s author these Tasks so that they show up at the same time. With this approach, the user can choose to do either Task. Note, however, that they can’t complete the “put” Task until they have the item from the “take” Task.

Using Assignments

Assignments are more complicated to use than Tasks, but they give you much more power and flexibility.

Assignments define a set of Objectives that the user needs to complete in order to complete the Assignment. When an Assignment is active, the Tasks screen will display all of the visible Objectives for the Assignment regardless of whether there is an active Task that will let you complete the Objective. This has the following benefits:

  • By showing all of the Objectives up front, the player gets a clear sense of progress and an idea of how long it will take to complete them all. We’ve found this to be particularly important in Location-AR games.
  • You can use Motive Scripting to complete Objectives outside of a Task. This lets you use the power of Motive’s Scripting Engine to create an almost unlimited number of unique experiences for your users–for example, you could create an Objective that requires the player to play the game any night between 1am and 3am, then use a Time Frame Condition to monitor it.

So let’s look at a simple example of how to use an Assignment.

  1. Create a “Task Objective” Catalog. Objectives are authored in Catalogs so that you can reference them from any Task or Script.

  2. Create three Objectives
    1. Collect the item
    2. Place the item
    3. “Night Owl”
  3. Add an Assignment to your Script and add these Objectives.

  4. Now follow the pattern above to author two Tasks, one after the other. Link each Task to the relevant Objective using its “Outcomes” property. (You’ll need to “View Advanced” to set this property.)
  5. And finally, add one more Frame with a Time Frame Condition that completes the final Objective if they play the game between 1am and 3am.

    Note that you can use the “Debug Clock Controller” (on Motive > Diagnostics) to mimic a different date or time of day:

  6. On Assignment Complete, pop up a Screen Message or kick off a new Assignment, etc…

Additional work

  • Play around with the “Optional” and “Hidden” fields on the Assignment Objectives. Note that hidden Objectives can be un-hidden using the “Activate Objective” Resource.
  • Author multiple Assignments. Explore AR only shows one Assignment at a time in the order they are activated. In your own app you may choose to alter the UI to show multiple Assignments at once.

Related