State changes not immediately triggered by a variable using HTML5 (if main timeline paused)

Mar 17, 2015

I am using a change state trigger to change the state of textboxes to appear when a variable "slideprogress" changes, on condition it is the correct numerical value. However the change state trigger doesn't execute if the main timeline is paused..using HTML5. When the main timeline resumes the change state triggers immediately execute. The behaviour is different in a Flash published project, the variable changes automatically trigger the textboxes to appear immediately as the variable changes appropriately. I also noticed that play media > audio from file does trigger a sound to play immediately using when > variable changes on a paused main timeline.  Confused? The example storyline2 attachment below illustrates the differences.

My current workarounds for this project are either:

1. Not pausing the main timeline at all and put any triggered animations that need pausing in seperate layers (time consuming to redo)

2. Link the textbox state change trigger to a when > user clicks event instead of a when > variable changes event. I use the on condition to use the slideprogress variable to limit the when the trigger will show the textbox.

This could be a bug, but it's more an issue of the HTML5 and Flash behaviours being inconsistent. Having to export the whole project to HTML5 to check all these inconsistencies is cumbersome.. Is it at all possible for Storyline2 to preview slides as HTML5 instead of Flash?

5 Replies
Chris Cole

Hi Christian -

The when variable changes trigger has been difficult for us to use too - it might not be a bug, but rather they designed it to behave a certain that is different than what we keep trying to use it for, but in any case we have made it a general rule to use different logic instead of when variable changes.

Without more slides for context, it's hard to know exactly what you are after here, but it does seem like layers might simplify things for you? For us, layers often reduce the number of variables we have to use and keep track of, eliminates pausing timelines and restarting them... layers are such a simple thing but they seem to make managing objects and "actions" on the screen so much easier.

Sorry I don't have a specific answer for you but it looks like your first workaround might be your best bet in the long run?

Regards,

Chris

Christian King

Thanks Chris. I'll admit I'm new to storyline, but an old hand at Flash. My approach was more along the lines of what solution seemed to work at the time, and it was only recently that my project was far enough along that I realised that the HTML5 output is not the same as what the Flash ouput from storyline is using that logic. The main challenge I have been dealing with has been a way to allow a user to manually click through a course, with background music still playing.  I also have some animated effects like scores appearing that need a timeline which can be paused or layers triggered.

 

Creating more layers seemed to me to be an overcomplicated approach as I have to click on layer individually each to view and copying them is a pain as I have to go and then fix all the triggers inside the layer (but I suppose it's a bit like Flash's movieclips). I wish Storyline allowed you to create libraries of triggers/states/slides/layers that could be dragged and dropped. Copying  triggers individually and clicking into layers to edit is a rather cumbersome workflow.

Chris Cole

I thought your logic looked Flash-ish. :-)   I could tell you knew what you were doing and wanted to accomplish. With your experience I think you'll quickly figure out elegant workarounds for the few limitations in Storyline.

One way I try to increase efficiency in Storyline is to encapsulate repeatable functionality in objects whenever I can, so I can copy and paste them wherever needed. For example I use a beveled rectangle that lives off-screen as my "SlideComplete" gatekeeper on a lot of slides - it has conditions and triggers that check variables and ultimately sets a variable that the Next button checks to see if it is OK to navigate forward. I can copy and paste that object on different slides as needed. I have to go in and tweak the variables and maybe add or delete one or two on a given slide, but it is a huge time saver. Not an ideal solution, but once I got used to it, I could whip out completion logic quite quickly on each slide.

Libraries in SL would be awesome, as would an object hierarchy (am I actually recalling fond memories of Toolbook?) but with all of the timesaving functionality and stability of Storyline, I can live with one or two workarounds.

Good luck with your project.

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