SL2 & SL360 "Restricted" Menu Navigation and Next Button - Solution / Workaround

Nov 13, 2014

Many developers are having an issue with the new "restricted" menu navigation logic in SL2.  I have come up with, what I think is a very quick, simple and viable solution.  To re-cap the issue:

  •  In SL1 the Menu Navigation options include “restricted” which allows learners to view the current slide and any slide they've previously viewed, but not use the menu to jump ahead or skip over slides.  This only restricts the learners' ability to click on menu items to navigate. If the slides included a Previous or Next button, users can still be click those to freely move forward and backward in the course at will.  Content developers could add triggers/variables to control the previous/next buttons, as they saw fit.
  • In SL2 the Menu Navigation “Restricted” logic was changed.  The restricted option still allows learners to view the current slide and any slide they've previously viewed, but not use the menu to jump ahead or skip over slides.  However, this now also disables the Next button and does not allow users to advance forward until the timeline ends.  Triggers/variables do not work to over-ride this logic change.

Here’s what I have come up with:

  1. Create your .story project and set the navigation menu options to “Free”.  This will ensure that the next and previous buttons are not restricted.  (Don't worry, we will adjust the menu navigation itself in a bit).  If needed, go ahead and create triggers/variables to control the previous/next button navigation as desired.
  2. Publish your .story project.  Go ahead and “zip” if the course will be uploaded to an LMS.
  3. In the “publish successful” pop-up window, click “OPEN” to open the Storyline output directory.
  4. Double-click and open the story_content folder.
  5. Open the frame.xml file (this can be opened with Notepad)
  6. Find and replace the following:
    <option name="flow" value="free" />
    <option name="flow" value="restricted" />
  7. Save and close the frame.xml file.
  8. Launch and play your course.  The navigation menu is now restricted, but the previous/next buttons can be used at will.  (Any triggers/variables that were added to control the previous/next button navigation should work as developed.)

If uploading to an LMS, you have a couple more steps.

  1. In the file directory, right-click and "copy" the modified frame.xml file.
  2. Navigate to the story_content folder in the ZIPPED file.
  3. Right-click and "paste" (replace) the modified file here.  You can now upload to your LMS.

This seems kind of tricky, but it is actually very easy!  And once you’ve done it a couple of times, you will see that it literally only takes a few seconds to do!

Hope this helps,


Addendum for HTML 5 (added 10/11/2016)

If publishing to HTML 5, the frame.js file must also be changed.  This can be done by following the below steps.  (NOTE: These steps must be done prior to uploading to LMS, if launching through an LMS.)

  1. Open the frame.js file (recommend opening with Notepad)
  2. Find and replace the following:
  3. Save and close the frame.js file.
192 Replies
Chad Cardwell

Hi Bobbi. Thanks so much for this information! This should solve a very frustrating "feature" that I can tell many people are pulling their hair out over (myself included).

In looking over your steps, I think we can cut out a few items to make it even less tricky for those publishing for LMS. I say this because when you choose the "zip" option, it actually zips up everything that's already been generated in the output folder, to include any edited files. 

So before you choose to zip it up, first select "open" and make your changes, then select the "zip" option, and the changes should be carried over into the zip file.
Ricky Nox

Thanks Bobbi for this tips.

 Are you sure that the Next button is Disabled when the navigation is Restricted ? 

 I have just made a test, and in fact the Next bouton is well deactivated (cannot jump to the next slide till the end of the timeline) but the button is not Disable, so I can click on it (but of course no jump). It could be confusing for developpers and learners, isn't it ?

 Moreover I can see that only the timeline is taken into account for the restriction. I mean that I can jump when timeline ends but even if I have not displayed object like markers.

Last point, you say "Triggers/variables do not work to over-ride this logic change". Not sure, I have a content where the state Enable/Disable of the Next button is controlled by trigger and it works even with the restricted navigation.

 Do you confirm ?

 Any confusion in my mind ?


Ashley Terwilliger-Pollard

Hi Eric,

Disabled in the state of the user is unable to use it to proceed - but yes, as you saw you can "click" on it. If you'd like, you could also change the next button as you mentioned either making it hidden or actually disabled. The only element the next button is set up to rely on in this scenario of locked or restricted navigation is the timeline of the slide - so if users don't click on or interact with all slide elements they would still be able to proceed.

You may still add additional triggers/variables to the next button as you saw - but it's not overriding the main logic associated with restricted/locked player navigation. 

Hopefully that helps clear up some confusion and if you need anything else please let us know. 

Michael Long

I so wish the restricted navigation feature would have not been changed from the way it worked in Storyline 1. While I really like Bobby's tips, here is where I need more help.

My module uses auto-advancing navigation which means that the next button will never work with restricted navigation since the user will never have a chance to click on it once the slides proceeds on its own once it reaches the end of the timeline.

Here is my question:

When revisiting slides, how can I begin at the start of the slide rather than at the end of the slide while seeing the next button (or similar custom button) that only appears/ or works on visited slides. Currently, the next button is useless in restricted mode when visiting previous slides as it will only advance after the timeline ends.

You will be my best new friend if you can find a simple solution for it that doesn't require a ton of variables to track slide completion.


Thanks in advance!! 


Chad Cardwell


I don't fully understand your first part about not being able to click on the Next button until the slide reaches the end of the timeline. If you incorporate the hack/fix in the OP then it should be functional.

In looking at your question, I'm understanding that you are wanting to hide/disable the Next button with a trigger when the slide starts, and then have another trigger unhide/activate the button when the timeline ends. In addition, you want the Next button to stay visible/activated when the slide is revisted, yet still have the slide start over from the beginning.

Unfortunately, given our current set of triggers in SL2, the only way I know how to do this is with a variable for each screen... Sorry!   :(

If we were given access to some sort of "on focus" trigger/event for a slide (meaning we have loaded a slide set to resume its state), combined with a "jump to mm:ss on timeline" trigger, then we'd be able to accomplish this without the use of variables.

However, a much easier solution (that I've already submitted a feature request for) is an additional set of player options to let us choose how the Next button will operate based on the selected menu navigation setting (free, restricted, locked). The same logic currently employed on the Next button in restricted mode (meaning it's disabled the first time through) could also be used to visually disable or hide the button. When the slide is revisited, the button could again use the same logic to become visibly activated in the same way it magically functions when a slide is revisited in SL2's restricted mode.

This discussion is closed. You can start a new discussion or contact Articulate Support.