How do I simplify a complex story file using True/False variables?

Mar 28, 2024

I have a complex Storyline build that contains 80 slides and 8 scenes. This file has grown like ‘The Blob’ (old movie reference). I’m hoping David Anderson or others from Community can suggest the most efficient way to use True/False variables and route learners to English and Spanish versions of the applicable content for their location.

Scenario Details

I work for a manufacturing company that has 16 U.S. locations. I’m helping our Food Safety & Quality team redesign the Identity Preserved Foods training. We want to have one course that contains 7 topics (Halal, Kosher, Organic, etc..) that learners view if the topic applies at their plant. Many plants have requested the training in Spanish, so a Spanish Ver scene was added. The English slides were copied into the Spanish scene and our Spanish speaking intern translated all the slide text and notes. The new ‘Text to Speech’ feature was used to generate audio with a Spanish female voice. A ‘Spanish Ver’ button was added to the opening slide, which routes the learner to the Spanish scene.

In the original build, we have a scene for each topic. Yes/No questions were added at the beginning of each topic scene and 7 True/False variables were created for the topics. For example: Do you have Kosher at your plant? Yes/No. Then the learner is branched to the first scene based on their response. Some trainers at the plants are concerned learners would click No and skip content to go through the course faster.  The decision was made to have the learner select their location from a list and use triggers to branch to the first applicable scene, then the next scene, etc. I decided to make a matrix spreadsheet with plant locations for the rows and topics in the columns, so I could identify which locations need to view their applicable topics.

In the current build, I added a ‘Select your location’ slide that contains 16 buttons and created a True/False variable for each location. Now the Storyline file has 16 True/False Location variables and 7 True/False ‘Topic_Visited’ variables. To complicate things further, I realized that I need learners who selected the Spanish Ver button on the first slide, to view the Location slide so they can select their plant, then get routed to the applicable slides within the Spanish Ver scene. Navigation will be restricted and I’ll use the ‘Course Complete’ trigger on the Exit slide.

 

Questions for you

I’ve worked with Storyline for many years and have a strong understanding of the app and learn something new every time I watch an Articulate webinar recording. Last week I learned that the Selected button state is a better option to use for the Spanish Ver button, than a Visited state. Then I started thinking about using layers for the Spanish content.

  • What if I copied the Spanish content (text/audio) to the English slide on a layer called Spanish? I tested the layer idea on two slides and used the Selected button state, and successfully stopped the English audio and played only Spanish. It would be a lot of work to add the Spanish layers to each slide AND copy/paste 16 triggers (each location) to show it based on the Spanish button AND the Location. But, when it comes to updating the content every year, the English and Spanish would be on the same slide.  
  • -Or- Is it best to keep Spanish content in its own scene? I think I'd have to add 16 triggers (one for each plant) on each slide to route the learner to the applicable Spanish content for their location.
  • Articulate Functionality Wish list: I work with Qualtrics surveys. When building complex surveys, I can control the flow of the survey in the Survey Flow section by adding embedded data, variables, and IF/Then statements. As far as I know, Storyline doesn't have that type of functionality. 

Either scenario is a bunch of work. What ideas do you have to simplify the build of this course?

4 Replies
Joseph Francis

What if I copied the Spanish content (text/audio) to the English slide on a layer called Spanish?

That's pretty much what I did for several crisis-related courses I built a few years back. The courses were geared to 3 distinct audiences, and rather than having 3 separate courses (!) or 3 scenes within a course, I created 3 layers for each slide, one for each audience type. At the beginning of the course, the learner selected his/her audience type, which set a text variable to one of 3 values. When a slide with audience-specific content was encountered, a trigger fired on timeline start which put that learner into the slide layer corresponding to his/her selected audience type. The Base Layer was blank, other than shared content like an image; all of the audience-specific content including text and narration was in the child layers.

For maintenance purposes, it became much easier, as, rather than maintaining 3 files or 1 file with multiple scenes, you could go to the specific slide and see all 3 versions IN ONE PLACE.

Judy Nollet

Here are a few ideas:

  • Don't use 16 T/F variables to track the chosen location. Instead, use a text variable.
    • When the user chooses their location, have a trigger set the variable to that location, or to an appropriate abbreviation. For example, if one location is Green Bay, set the variable to "GB. 
    • This means you don't need triggers to reset T/F variables if someone accidentally selects the wrong location (changing that variable to T), and then selects the correct one. 
  • Keep the T/F variables to track whether a required section is completed.
  • To me, it'd be a hassle to add layers on top of the English slides (though that really depends on how complicated the slides are). Another option would be to have Spanish states for all of the text in the English slides. But keeping the versions in separate scenes has benefits, too. It really depends on the complexity of the programming, as well as personal preferences. 
Tanya Davidson

I appreciate your detailed explanation. This morning I watched this recorded webinar: 12-02 | Using Text Variables in Storyline 360 - Articulate 360 Training. David covers using text variables for avatars and translated languages. I realize now that I only need one Language text variable. Thanks again!