How to keep the value of a variable same when revisiting?

Feb 01, 2014

Hello. I have a variable that is set to True when the timeline ends. I have the slide set to Resume saved state when revisiting. I would like to have the variable stay the same (True) when revisiting.

Let's say the student is viewing slide 2, and decides to click previous to view slide 1 again. When they go forward to slide 2, the variable is back to False (unless the timeline ends, which it won't because I have it set to Resume saved state).   I do not want to remove the Prev button, and I want them to finish all business on slide 2.

I hope this makes sense.  Sample file attached.

11 Replies
Phil Mayor

You need to use some different variables to achieve this, you are resetting the same variable on your feedback master for each layer.  realistically if you want the slide unlocked when they revisit you need a variable for each layer and each slide.

I alos note you have a trigger to set each picture to visited this is unnecessary as visited is an automatic state.

Variable are independent of slides and are used to pass information between slides. You could probably achieve all you need by not using variables, but by animating in the pictures after the audio (you don't want them to press them until the audio completes) and using the visited state, variables here seems like overkill.

I can understand your need to ensure the user views everything, however this is a design that I try and move my clients away from in the end it just causes frustration with the users.

Jill Freeman

Thanks, Phil. I had to change some of the layout and functionality part way through development, so the whole thing started feeling a bit convoluted. There are so many ways to accomplish things.

I reused a file when I started developing this course - and I completely forgot about the triggers on the master slides.  sheesh :o{ 

BTW, I have the trigger to change the button image to visited when a different button was clicked on a different layer.

Thanks for your expertise, Phil. Sometimes I get deep in the forest and need someone to bring me out for a different view! I can figure this out now! You are always so helpful. Thanks for your quick response.  -Jill

megan marshall

Hi there,

I have a similar question. I am working on a project where I have variable that requires the user to interact with the slide before being able to advance forward via the player Next button. Right now, variables are set as follows:

On the Slide Master there is a variable for the timeline which is set to a value of false when the timeline starts and true when the timeline ends. I have this variable on the Slide Master because it is applied to almost every slide in the project. I mention it only because I am not sure if it has an impact on my issue.

On individual slides that require the user to interact before proceeding (this variable is NOT on the Slide Master) , there is another true-false variable. It is set to a value of false when the timeline starts and true when the state of the objects I want the user to interact with are equal to visited.

The triggers for these slides allows the user to advance via the player Next button if the state of this variable is equal to true. There is also a trigger that will give a Warning telling the user to complete the interaction if they click the Next button while the variable is equal to false.

I have the base layer of these slides set to resume at saved state when the user revisits. Where there are layers, they are set to resume at the initial state so that the user can click through and re-watch/play with the material.

So, my problem is this:

When the slides with interactive components are revisited, the objects that require interaction resume in their Visited states (as I want), but if the user clicks the Next button, the slide will not advance and the Warning message appears stating that they have not completed interacting with the slide.

By default, I thought the variable would also resume at the save state since technically the conditions for it to equal true (i.e. the object states being visited) have been met because they are resuming in that saved state. However, it seems to be resetting to false.

Is it possible to make the variable true when revisiting the slide? I am happy to add additional variables....

Natasha Bomba

My issue is the same as Megan. Next button is disabled until variable becomes true. Works fine in the first go, but if I proceed to the next slide and go back, the objects are in their saved state but the next button is disabled. I changed the slide to go back to initial state (learner just has to click three boxes) but on the second try the next button stays disabled. Thoughts?

 

Leslie McKerchie

Hi KB! We do have an update that could assist with the Next button:

It’s been determined that this behavior is as expected based on what the triggers are telling Storyline, although it may not match what you wanted to occur.

Since the previous/next buttons are set to be hidden at the start of the slide via triggers, when returning to the slide the command given to Storyline is to hide the buttons as soon as the slide starts. The slide is resuming the saved state of the previous/next buttons as expected, but then the triggers tell Storyline to hide them as soon as the slide loads.

This is where applying the conditions to those initial triggers will come into play - as you’ll want to adjust the next/previous buttons to “hidden” only if the user has not visited this slide before. You can see this set up in the file attached - that has that trigger/condition set up associated with the state change of the next player button.

David Cerreta

I'm hoping someone can help. I'm also having an issue with a file where I have the "Next" button disabled until items are selected and then upon revisit, it resets back. I really need the next button available if the slides have already been visited and the items have been "visited." I'm using 360 and just can't get this to work. I'm sure I've overlooked something simple. 

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