Engage 360 and Storyline 360 - Free Movement inside Engage while requiring full audio before clicking next interaction?

Hello Friends!

In an attempt to meet adult learning needs of self-directed learning, we want to provide the participant of a Storyline course the ability to select which slide element to view next. At the same time, we need to require they view/listen to everything at some point. This is for certain compliance standards.

We love creating layered slides from scratch in Storyline for this purpose, but sometimes good old fashioned Engage 360 interactions seem to suit just fine. 

Well, except for one snag. While Engage 360 allows authors to lock the Seekbar so learners cant skip ahead within the narration of a particular element, the learner can circumvent this safeguard simply by clicking a different element before the narration is complete.

How can we leverage the ease of Engage 360 building; allow learner choice in certain interactions; while still ensuring that the entire narration is played before the learner can then again choose their next item?



8 Replies
Leslie McKerchie

Hey Jeff,

It sounds like you have your Engage Playback mode set to Interactive, correct? As you can see from the description, this allows the user to navigate as they wish. 

I'm curious if you are utilizing the restricted navigation within Storyline or are you manually controlling the movement with layers as you mentioned above?

Jeff Momsen

Hi Leslie,

Yes, the Engage mode is Interactive, and the Storyline menu is Restricted. This combination is right for our needs. Learners must complete each slide in order, but when they come to an Engage slide, they have freedom to explore in any order they wish. Once they review all Engage elements, they can then continue to the next slide. So far so good.

The problem is each slide (and each Engage slide element) has timed narration which the learner must hear before continuing. At the slide level, no problem; but on the Engage element level is where the problem occurs. The learner can click another Engage element before the narration ends on the element they are currently reviewing, thus skipping the required narration. This is what we are seeking a solution to.

While a Linear setting in the Engage element can help ensure they hear the whole narration for each element, that setting defeats the entire purpose of making the slide into an Engage for us. Letting the adult learner drive a portion of their experience is why we chose the Engage approach for those portions of the learning.

Any help?



Jeff Momsen

Hey Ashley, 

I completely understand. I had to at least ask though right? :)

So, here was the solution in Storyline 360:

  1. Build the interactions into the slide in individual layers, including the narration audio for each layer.
  2. Build a button on the Base Layer for each interaction.
  3. Set a trigger on each button to "Show layer Layer Name When the user clicks" the related button.
  4. On each layer add a trigger "Hide layer this layer When the timeline ends." We wanted it to automatically move on after each narration.
  5. On each layer I also placed a 100% transparent rectangle over the buttons on the Base layer. THIS was the main solution to the original problem. Without this rectangle in front of the buttons, the presentation acted just like the Engage interactions and would let the user click somewhere else before the narration was finished. With that invisible rectangle on top of the buttons on each slide layer, the buttons are not available, and therefore the narration plays out to the end regardless of the users actions.
  6. Then on the base layer, I added conditions to the Next button trigger so it would only "Jump to next slide When the user clicks the next button or swipes next If (conditions) Button 1 state is equal to Visited and Button 2 state is equal to Visited and Button 3 state is equal to Visited and Button 4 state is equal to Visited and etc..." This prevents them from moving to the next slide before seeing all the interactive layers.

This solution allows the user to view the elements in any order they prefer. It tracks the layers they have already visited while still allowing them to review if they wish. It prevents them from missing narration on each layer, and requires they view each element before moving on to the next slide.

The only two issues are:

  1. it took 2 hours to experiment with and build the 8 interactive layers and all the triggers (which is why I tried the Engage route first, but heck, the outcome was worth the extra work). 
  2. and the user can click the Next button as soon as the last interactive button it selected because the Visited status changes as soon at the click on it takes place.
  • We just wont advertise that and most users wont try it after having the Next button frozen on the previous 7 layers.

I would have posted the sample, but I work in Healthcare, and even I need to pace myself with the images involved. :)



Tyler Shirai-Rielly
Jeff Momsen

Once they review all Engage elements, they can then continue to the next slide.

How did you restrict the user from continuing to the next slide until "reviewing all engage elements"? I am trying to figure this out, but it seems like there are no triggers associated with the engage interaction completion. I want to have a continue to next slide (in storyline) button appear after the user clicked through the imported engage interaction. Please help!!! @

Jeff Momsen

Katie, I'm still here.  :)


I don't know if this will work with your imported Engage, but after I discovered the shortcomings of importing my attempt from Engage, I built it over in Storyline. Then I addressed the advancement issue as follows:

Since Storyline doesn't currently have variable controls over the appearance of the Next button, I just turned it off for the slide.

TO allow them to continue, I created a "Continue" button with 2 States; Normal and Revealed

  1. Create the Continue button and place it offscreen
  2. Create a Trigger on the Continue button to "Jump to next slide When user clicks"
  3. Edit states of the Continue button and create a Revealed state, moving the Revealed button position to where you want the button when all slide actions are met.
  4. Create a variable called ContinueButton and set the default value to False.
  5. Create a Trigger as follows:
    • Action: Adjust Variable
    • Variable: ContinueButton
    • Operator: = Assignment
    • Value: Value -True
    • When: State
    • On: All of
      • Select all action required for slide to be considered complete. In the case where I wanted all the layers visited, I selected all the buttons I had created that led to each layer (see my post above responding to Ashley). 
      • Are: Visited

Test the daylights out of this. But it should keep the Continue button off screen until each layer is viewed.


Have fun.