Table-Driven Slide Selection

Aug 19, 2020

I'm building a simulation of a piece of equipment with a simple keypad for a user interface.  For the specific interaction I'm simulating I have captured screenshots (as a series of slides) and created a table that maps the current screen and the button pressed to the next display screen.

For example:

                                       Buttons

Screen       F1      F2       F3     F4      F5    Up      Down    Left     Right

1                  2        3          4       5        ..       ...            ...           ...         ...

2               .... 

...

50

So if slide 1 is shown and the F4 button is pressed, I want to display slide 5.

This allows the user to navigate back and forth through the relevant screens to accomplish the task I'm trying to simulate.

I'm a Storyline beginner on a 30 day trial license with the assignment of evaluating eLearning development systems.  Any thoughts on how this could be implemented in StoryLine 3 would be greatly appreciated.

Thanks!

 

5 Replies
Judy Nollet

Hi, Kent,

It's easy to jump to any slide. 

You can use a transparent button, a transparent shape, or a hotspot, on top of each "key." Then give it a trigger to jump to the appropriate slide. Yes, you can add a trigger to any object, which, in essence, turns it into a button.

  • FYI: To make a button or shape transparent, don't use a border. Then set the fill to 99% transparency. Hotspots are always transparent when previewed/published. 

It sounds like there are different images on every slide, so you'll have to add the buttons to every slide. But you can copy and paste them, and then adjust the triggers as needed. 

  • Pro tip: When you create the first set of buttons, give them appropriate names (e.g., F1, F2). That'll make it a lot easier to edit them and troubleshoot, if necessary.

Good luck!

Kent Chesnut

Judy,

Thanks for the feedback.  Yes, I can put the 9 buttons on each of the 50 slides and then program them individually to link to the desired slide.  (But doesn't sound like a lot of fun.)

However, I think troubleshooting and updating are easier to do if all of the branching is in 1 place - like the table above. 

in other eLearning systems I've been able to have the buttons generic... each button only calls (or a similar method, like setting a variable to cause a trigger in Storyline) a routine passing in the code for the button pressed.  The routine / trigger then uses the currently displayed slide and the button activated to look up the desired slide using the table.  This seems possible using a mix of Javascript and triggers - but I haven't been able to work it out on my own.

Will Storyline support this method?  Any advice on how to implement will be greatly appreciated.

Thanks!

Judy Nollet

Hi again, Kent,

I don't work with JavaScript, so I can't help with that. But I assume calling a JavaScript routine would be the slickest way to have "generic" buttons.

There is another way to program this in Storyline if you can put the "keyboard" and buttons on a Master slide (with other images on individual slides, as needed), so all the programming could be done in the master. Here's a rundown:

 

  • Create a variable to track what slide the user is on. This could be a simple number variable. Let's call it slideNumber. 
  • On each slide, add a trigger to adjust the variable to the number of the current slide.
  • For the "key" buttons on the Master slide, use triggers with conditions. For example: when user clicks the F1 button, jump to slide 2, with the condition that slideNumber equals 1.

Unfortunately, since you have 50 slides, that could take up to 50 triggers per button, because Storyline doesn't allow nested if/then/else commands.

  • In other words, for the F1 button, you'd need a trigger to cover what happens if the user is on slide 1, another trigger for what happens if on slide 2, etc.
  • At best, you might save a few triggers if a given key goes to a given slide from multiple slides, so you could use multiple conditions. For example: when user clicks the F1 button, jump to slide 2 with the condition that slideNumber equals 1 or 13 or 27. 

I'm not sure if that programming is any easier than what I initially described. But it does keep it all in one place. 

Good luck!

Kent Chesnut

Judy,

Thanks again for the feedback.  What also hit me is that the triggers for the different buttons all appear at the slide level (other systems I've used hide the trigger-equivalent in the control itself (i.e. I'd have to open the button to edit what it does).   Since all the triggers are on the slide in StoryLine, I could build my 9 buttons and add triggers to them to simply go to any slide.  I think I could copy all the buttons and / or triggers at once and then paste them to the other slides 1 by 1.  At the slide level I could look at my table and set the destination slide as necessary.  A little tedious, but very do-able.

I'll have to think a bit about your new idea... but it seems very do-able.  And  it seems to me that this might allow the use of the table in Javascript to determine the next slide (instead of the 50  triggers / button).  I don't know how to add buttons to the master slide at this point, but that shouldn't be too hard.

Thanks again!

 

Judy Nollet

Kent,

Yup. It'd be quite easy to copy the initial set of 9 buttons (triggers included), paste them all onto the other slides, and then edit the "jump to" slide as needed. As you say, that's a little tedious. But, personally, I'd rather do that than the extra programming needed to make it all work from the Master (assuming no JavaScript). Plus, to me, it's easier to look through 9 triggers on each slide rather than to look through potentially hundreds of triggers on 1 master.

BTW, in a case like this, I'd recommend keeping the PREV button available, or temporarily putting a custom PREV button on each slide, for use during testing. That would allow you to easily test the first button on a given slide, verify it jumps to the correct slide, click PREV to return, and repeat that process for the other 8 buttons. Then move on to the next slide, and repeat the testing for those 9 buttons. Etc. Etc. Etc. 

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