Is there an 'un-selected' state to be made?

Jan 14, 2022

Hi, 

My name is Rosanne and for one course I made a series of pick-one slide where the learner needs to choose one box (in a row of 19) and then click submit. So there are 19 vertical bullets with a box around them they can click on. Only one (15 in this case) is correct. I have made a variable only for this box (as there are 15 slides with each 19 bullets to choose from) to be set to true if they click the box. 
My problem is with the states: if the learner, during his choosing, clicks nr 15 and then later on (before submitting) chooses another box and then click submits, nr 15 is still selected and therefor they get a "correct" respons. Obviously a 7 is not 15 so it should show incorrect. Any ideas how to work this out? I feel like I am missing something very obvious but working with 19 bullets in 15 slides is making me see a little cross-eyed... 
Thanks for all and any input! 

11 Replies
Judy Nollet

Hi, Rosanne,

Put the 19 buttons into a button set. That will automatically program them so that only one can be in the Selected state. In other words, selecting one deselects whatever button had been selected. 

For more info on button sets: https://community.articulate.com/series/articulate-storyline-360/articles/articulate-storyline-360-user-guide-how-to-work-with-button-sets 

On the Submit button, use a trigger to adjust the variable with the condition that the correct button = Selected. Also, be sure that trigger appears before any trigger that jumps to another slide. (Storyline can't run a trigger if it's already left the slide.)

Pearson  Clinical

Dear Judy, 

Thanks for your reply! I actually figured out that because there is only ONE pick to be made per slide, I didn't even need the variables, buttons etc... I just used the free form as intented and it works perfectly now. I was defenitly overcomplicating things... Usually I have more than 1 field per slide, hence the other elements. But now I didn't need any of it. I will remember your advice for the future though, that sounds easy enough to so as well! 
Thanks again!

Allison Nowak

I'm actually having the same problem, but for a freeform "Pick Many" slide. I have triggers for when Button A is selected, Character A's state changes to Normal (from hidden.) 

But if a user changes their mind prior to submitting, and they de-select Button A, Character A does not disappear. 

Of course, I've tried making a second trigger: "When the state of Button A is Normal - Change state of Character A to Hidden", but it doesn't work. In fact, it prevents the initial trigger (Change state of Character A to Normal, when Button A is Selected) from functioning. 

(The initial state of each character is Hidden.)

I've also tried using the visited state - "When the state of Button A is Visited - Change state of Character A to Hidden" but this also didn't work. 

Am I missing something here?

Allison Nowak

Of course, after a day of playing around, and moments after deciding to finally post my question here, I figured it out, and it is such an easy change! 

"When the state of Button A is not Selected - Change state of Character A to Hidden." 

I didn't realize I could change the "is" part of the trigger editor to "is not." 

Olga Kanapelka

Hi Allison! 

Just wondering if you have tested your new setup and if it still working consistently. I have tried most of the triggers mentioned in this discussion thread, including adding a second trigger or using the 'not selected' state, but none of them work consistently for me. The button set doesn't work for my purpose since users are free to choose as many items as they want. 

In my case, the slide has a series of questions, some with multiple checkboxes and some text entry variables. The next slide shows only the choices the users made and asks additional questions about those. I initially programmed the items on the second slide to be hidden and to appear only if they are selected on the first slide. This worked perfectly till I started testing and realized that if you check a box and then unselect it, the second slide will still change the item's state from hidden to normal.  

I would appreciate any further details on your setup!

Thaddeus Ashcliffe

The easy way to do it is to use the pick one/many freeform question.
Then select the objects that you want to be options, and click the correct answer.

it's simple and easy, and the user can tell they are interacting with the objects.


If you care to track individual slides.  Create a variable that will trigger and change to true if object is clicked and state is unselected.  Create a second trigger to change to false if object is clicked and state is now selected.

Then route to the follow up slides if variable is true.

Allison Nowak

Hi Olga, 

I think I understand what you mean. And side note, what an interactive, personalized design you've created! I love it! 

I think I have a solution for you based on what I tried. I have a few questions to guide you. 

1. I think you have programmed your slides to be based on the state of the checkboxes. Example trigger: "When the STATE of Checkbox A is SELECTED, Change the STATE of Item A to Normal." Checkbox A is on Slide 1 and Item A is on Slide 2. Is that right? 

2. If yes, do you have a second trigger for Checkbox A? This is what solved my problem. Duplicate your trigger. Then, enter the trigger wizard where you can edit. Look at the is. Click it and change it to is not. Then, at the end of your trigger, change Normal to Hidden. 

This should override the initial trigger should the user unselect the check box. 

Let me know if this solves your problem! 

Olga Kanapelka

Thank you both Thaddeus and Allison for your super quick replies!

Since my trigger is located on one slide, and the action on the other, I am unable to follow your wonderfully clear path, Allison :(.

What I have done is closer to what Thaddeus is suggesting -  I created a True/False variable that changes if the state of object A is selected, and I added a conditional trigger on the slide where the action needs to happen, changing the state of an object from hidden to normal if Object A on the first slide got selected. I have now tried adding a second trigger changing the variable again if the object gets unselected, but for some reason this doesn't work. Could be the order of the triggers maybe? Will keep trying...

 

Thaddeus Ashcliffe

consider using the triggering event of when the learner clicks submit.

Add conditions to each trigger so it cares about the state of the objects (normal, selected, disabled).

Use this to go to different slides, on in as shown in this example via layers.

I gave feedback for their choices using layers, but you can use pathing to different slides. 

In this case I disabled previous choices so there was no reason to drag things out.

What you are trying to do will take a lot of time.  Also if you use layers order of the triggers matters, last fired goes to the top (remember to turn off hide other layers).

Olga Kanapelka

After playing with triggers some more, I submitted a request ticket to Articulate support team and with their help, I have figured out my issue. Will post here in case someone else gets stuck with it as well. The trick was to change the action from 'set' the variable to 'toggle', which will ensure that if users change their mind and unselect a checkbox, the variable changes again. 

So, if you want a checkbox on one slide to change the state of an object on a different slide:

1. Create a True/False variable (keep the default value False)

2. On the slide where your checkbox is, set a trigger: Toggle True/False variable if user clicks Checkbox A

3. On the slide where the object has to change states, add a variable: Change the state of Object A to hidden when the timeline starts on this layer if the True/False variable is False.