Hello, I have a slide with 4 options, 2 of which much be selected for the continue button to appear. I have tried the following. Setting continue as hidden on load, then giving a variable "Played" a value of 0, with 1 being added to it each time a choice is made, so that when "Played" is ==> 2 Continue appears. It's not working. I welcome any other options.
Virginia: Have you considered making this an ungraded Freeform - Pick Many item? This would not exactly force the user to pick 2, but they would be forced to complete the task if you marked it as required. Let me know if you need help building it.
I would welcome some suggestions. If I create a "Pick Many" and change the score to None and feedback None. I don't know how to set it to required or to require only 2 items (any two items be selected)
Here's a screencap of the settings I would use. You would loose the custom Continue button, but they would be prompted to pick 2 on-screen and would be forced to select at least 1.
Ok, but they *need* to pick two and only two. That's where the functionality gets stuck. I can't figure out how to have a following screen omit the choice from the previous slide, either, so I was going the route of hiding one button after it is selected and then moving on after a second completes it's layer.
The "any two and only two" requirement is what's complicating this interaction. I'm trying to figure out an elegant way to do this, but it might require adding tons of triggers. Hopefully someone else can figure it out before me.
Opps sorry now I see what the problem is. and changing states will not work. You could try changing your var. to a true false Storyline appears to like those a little better.
Virginia, what do you plan to do with these two choices. Do you need them for the next slide? Am I understanding you correctly that this is not an interaction that ends, but is the setup for a following interaction?
I think I've got this Pick Two and only Two figured out. I think the problem was that there were probably some circular logic problems. I solved this by creating two different rectangles for each choice right on top of each other. Gotta run, but here's the project file for you to figure out. Good luck on part 2 of your challenge
Take a look at the attached. This uses two triggers per button and adds or subtracts depending on the state of each button / object when it's clicked. Adds to a tally. Another trigger checks the tally on change and shows another object when it's 2 or greater. Could add another to hide that object when less than 2.
Steve: My first failed version was built exactly like yours, based on the state of the object, but I would work. I think it may have something to do with the fact that I allowed the software to add the selected state automatically when I originally inserted a Freeform Pick Many.
I just rebuilt it that way, but I added the selected state manually to each rectangle and it worked perfectly. Strange.
Virginia: Although both versions work, I recommend Steve's approach because it involves fewer on-screen elements.
Hi Virginia - the way you have built the interaction looks like it should work but I have a couple of troubleshooting suggestions for you:
1) The order that the triggers are in matters. If your trigger that shows the layer, "Always on My Mind", is activated before the trigger that adds 1 to your "Played" variable, it will have already jumped to the new layer before it adds 1 to "Played", keeping its value from going up and, therefore, never getting to the value of 2 in order to show your "Continue" button. Because the order of which trigger happens first is rather confusing (I can never remember if it's the one at the bottom of the stack that is activated first or the one at the top!), I add a temporary text box on my slide to see what the variable's value is and to make sure that it changes when and how it is supposed to. By adding a text box with %Played% in it, when you preview the slide, you will be able to see if the variable is changing or getting missed. If that's the culprit, just switch the order of the "Show layer..." and "Add 1..." triggers using the light blue arrows in the trigger area to move one up or down and play the slide again - that should solve it.
2) Another way to get around the trigger order problem is to put the trigger that changes your "Played" variable on the "Always on My Mind" layer - just set it to "Add 1 to Played when the timeline ends for Always on My Mind" or something like that. I'm assuming that the "Always on My Mind" layer shows, then returns to this main screen for the user to choose a second button, so that would work. If the variable changes while the other layer is showing, the "Continue" button should be visible once the user returns to this main screen after viewing the second selection.
I hope that makes sense - I can make you an example if you need it but hopefully you can follow this as I think trigger order might have been your only problem in this case!
Virginia - I have created a sample that accomplishes the two main things that you wanted, if I interpreted your question appropriately
Slide 1 forces the user to Pick Two - Any Two to display the continue button (I used Steve's states version instead of my version with two overlapping shapes)
Slide 2 shows only the two unselected shapes from the previous slide. I accomplished this by adding a T/F variable to evaluate whether or not each shape is selected when the continue button is clicked on slide 1.
When you go back to slide 1, I have it set so everything resets. Here's a demo, and the story file is attached below.
Thank you, everyone! I knew there was a way, I was just missing on step. My problem (or one of them, at least) was I was making the buttons "Hidden" after they were selected so they wouldn't be selected a second time. And I was sending the user between layers and tried to add the "add" value there (unsuccessfully).
15 Replies
Virginia: Have you considered making this an ungraded Freeform - Pick Many item? This would not exactly force the user to pick 2, but they would be forced to complete the task if you marked it as required. Let me know if you need help building it.
I would welcome some suggestions. If I create a "Pick Many" and change the score to None and feedback None. I don't know how to set it to required or to require only 2 items (any two items be selected)
Here's a screencap of the settings I would use. You would loose the custom Continue button, but they would be prompted to pick 2 on-screen and would be forced to select at least 1.
Ok, but they *need* to pick two and only two. That's where the functionality gets stuck. I can't figure out how to have a following screen omit the choice from the previous slide, either, so I was going the route of hiding one button after it is selected and then moving on after a second completes it's layer.
The "any two and only two" requirement is what's complicating this interaction. I'm trying to figure out an elegant way to do this, but it might require adding tons of triggers. Hopefully someone else can figure it out before me.
What about changing states and a condition on the continue button to only show if those two are selected.
Opps sorry now I see what the problem is. and changing states will not work. You could try changing your var. to a true false Storyline appears to like those a little better.
Virginia, what do you plan to do with these two choices. Do you need them for the next slide? Am I understanding you correctly that this is not an interaction that ends, but is the setup for a following interaction?
Hey Virginia,
I think I've got this Pick Two and only Two figured out. I think the problem was that there were probably some circular logic problems. I solved this by creating two different rectangles for each choice right on top of each other. Gotta run, but here's the project file for you to figure out. Good luck on part 2 of your challenge
Hi Virginia,
Take a look at the attached. This uses two triggers per button and adds or subtracts depending on the state of each button / object when it's clicked. Adds to a tally. Another trigger checks the tally on change and shows another object when it's 2 or greater. Could add another to hide that object when less than 2.
I think I have it figured out also take a look and see who's fits what you need good luck
Steve: My first failed version was built exactly like yours, based on the state of the object, but I would work. I think it may have something to do with the fact that I allowed the software to add the selected state automatically when I originally inserted a Freeform Pick Many.
I just rebuilt it that way, but I added the selected state manually to each rectangle and it worked perfectly. Strange.
Virginia: Although both versions work, I recommend Steve's approach because it involves fewer on-screen elements.
Hi Virginia - the way you have built the interaction looks like it should work but I have a couple of troubleshooting suggestions for you:
1) The order that the triggers are in matters. If your trigger that shows the layer, "Always on My Mind", is activated before the trigger that adds 1 to your "Played" variable, it will have already jumped to the new layer before it adds 1 to "Played", keeping its value from going up and, therefore, never getting to the value of 2 in order to show your "Continue" button. Because the order of which trigger happens first is rather confusing (I can never remember if it's the one at the bottom of the stack that is activated first or the one at the top!), I add a temporary text box on my slide to see what the variable's value is and to make sure that it changes when and how it is supposed to. By adding a text box with %Played% in it, when you preview the slide, you will be able to see if the variable is changing or getting missed. If that's the culprit, just switch the order of the "Show layer..." and "Add 1..." triggers using the light blue arrows in the trigger area to move one up or down and play the slide again - that should solve it.
2) Another way to get around the trigger order problem is to put the trigger that changes your "Played" variable on the "Always on My Mind" layer - just set it to "Add 1 to Played when the timeline ends for Always on My Mind" or something like that. I'm assuming that the "Always on My Mind" layer shows, then returns to this main screen for the user to choose a second button, so that would work. If the variable changes while the other layer is showing, the "Continue" button should be visible once the user returns to this main screen after viewing the second selection.
I hope that makes sense - I can make you an example if you need it but hopefully you can follow this as I think trigger order might have been your only problem in this case!
Virginia - I have created a sample that accomplishes the two main things that you wanted, if I interpreted your question appropriately
When you go back to slide 1, I have it set so everything resets. Here's a demo, and the story file is attached below.
Thank you, everyone! I knew there was a way, I was just missing on step. My problem (or one of them, at least) was I was making the buttons "Hidden" after they were selected so they wouldn't be selected a second time. And I was sending the user between layers and tried to add the "add" value there (unsuccessfully).
This post was removed by the author
This discussion is closed. You can start a new discussion or contact Articulate Support.