Input checkboxes with identical triggers not behaving the same

Feb 22, 2024

Hi All, 

I'm a new Storyline360 user and am currently working on my 3rd ever project in Storyline360. I had no issues with the first two, but this one is a bit more complex. I have one slide in particular that is designed to be interactive and has several layers. On one layer, learners are asked a question and should select each of 4 input checkboxes to trigger two things: 1. an feedback shape which changes from an "incorrect" state to a "correct" state when all boxes are selected, and 2. a continue button that changes from a hidden state to a normal state when all boxes are selected. 

 

The issue I'm running into is that the logic in my triggers functions perfectly well, unless I select the buttons in a certain order. I can't figure out why it works sometimes, but not others as each of the checkboxes have the same triggers. If I select the checkboxes in one particular order that SL doesn't seem to like, the "incorrect" state never changes to "correct" and the Continue button never appears even though all boxes are checked. 

 

Any ideas or help? I can upload a file if needed but I'd have to trim it out since my source file is fairly large and complex.

thanks, 

Megan

5 Replies
Judy Nollet

It's possible that there's an issue with the trigger order. However, that's just a "best guess” without seeing the .story file.

Here are the best practices for uploading that:

  • Only include slides that are involved in the problem.
  • Be sure objects, layers, motion paths, and variables have meaningful names.
  • If there is proprietary content, replace or delete it. For example, replace proprietary text with “ipsum lorem” text.
Joe Hauglie

Look at the order of your triggers in the Trigger panel (right side of the workspace). My suspicion is that you have some actions in a lower or higher order than what you are thinking they are in. Try moving them up/down as needed, then see if that makes a difference.

You may also find useful guidance here: https://community.articulate.com/articles/storyline-360-working-with-triggers 

Megan Duarte

Thanks for your responses! I am attaching the affected slide. On the base layer, you should be able to click on the item called "Checkweigher reject button" on the timeline list and this will take you to the CheckweigherRejectClicked layer which has the problematic trigger. 

 

The desired behavior is that the shape labeled "Incorrect" is set to "normal" unless >1 but <4 of the checkboxes are selected, in which case the shape would change to "Incorrect" state. When all 4 of the checkboxes are selected, then the state of "Incorrect" would change to "AllSelected". 

 

Following the same logic, the "Continue" button should be "hidden" unless all 4 of the checkboxes are selected. 

Megan Duarte

I was able to identify that the issue only occurs when the 4th option (ExceptionsinComments) is the last one to be selected. In all other scenarios, the shape "incorrect" changes states to "AllSelected" and the "Continue" button appears when all 4 checkboxes are selected. 

 

I still haven't found a solution though... open to any ideas!

Judy Nollet

I have a few concerns with the slide. 

The last button has an extra trigger that changes the feedback back to the Incorrect state. 

Triggers have conditions that check whether objects = Normal

The = Normal condition doesn't always work as expected, because there's a bit of Normal in every state. So it's better to use ≠ Selected

Unfortunately, even when I deleted that extra trigger and changed = Normal to ≠ Selected, the feedback still wouldn't change to AllSelected when the 4th button was selected last. In other words, I can't figure out what's wrong.

Fortunately, there's a simpler way to program that slide, as demonstrated in the attached file.

  • The only trigger on the checkboxes is to toggle a T/F variable. (Note: The value of the variable doesn't matter. This is done to create a "when" for other triggers.) 
  • The state of the rectangle (which I renamed "Feedback") is changed when the variable changes. Separate triggers with different conditions change it to the appropriate state. 

One nice thing about this method is that if you add checkboxes, it's easy to edit the set of triggers that changes the state of the object when the variable changes (instead of editing the conditions of triggers on different buttons, which gets harder to troubleshoot).