Forum Discussion
Check boxes are working but need "complete" button to pop up after finishing check box
I have a scene that includes 2 check lists One check list is inside of the other. Here is the build:
https://app.screencast.com/UXtq2zjoXvffY
Slide 1: There are 3 sections. X, Y, Z. (check boxes seem to work)
X and Z leads to slides and returns back to main check list. - works correctly
Y leads to multiple slides where there is another check box with A,B,C. I have a trigger to set state of "completed" to disabled when timeline starts on this check mark slide. That works.
I Visit A, Visit B and Visit C. After visiting each one, and returning to check mark slide, each check mark populates when I return from that path. BUT I want the state of "Completed" to show when the learner returns to the slide after visiting ABC. When Completed pops up after the user has visited ABC, I need to go to the main menu with XYZ.
- PerryCoxCommunity Member
First off, to answer your question directly. I would create a true/false variable for each of your topics with the initial value set to false. This is for whether or not the user has visited those particular pages.
Then, on each of your video layers that end each of those three topics, you need to do two things. Add a trigger for when the video completes that sets that topic's variable to true. In the example below, we are watching the materiality video, so we set the materiality variable to true.
IMPORTANT: Make sure your adjust variable trigger occurs before your jump to slide trigger or it will not trigger. (I have made this mistake more times than I can count.)
Then adjust your jump to slide trigger to match the one in my example below. You will set the primary trigger to take you back to your slide 1.1 if all three variables are true. Otherwise, it jumps back to the dividing path for these three topics.
Second, a recommendation after skimming your storyline. I understand the desire to use the checkboxes to mark off each topic as the user visits them. The issue arises if a user decides to re-visit one of the topics. Currently, it unchecks your check boxes and then sends them off. This could get confusing to the end user.
My recommendation would be to replace the actual check boxes with an image of the empty check box. Then use the states for the image to have a box with the checkmark in it. Then on your menu slide create a trigger for each check box for when the timeline starts on this slide, set the state of the image to the checked state if the variable for that check equals true.
So, for example, if they click on materiality, they will go through the materiality topic, click on the video, then the video ends, the materiality variable is set to true, and the user is deposited back on 1.5. When they arrive, it checks and materiality=true so the checkbox image next to materiality is set to the checked state. Same thing for the others.
- PascaleSwans813Community Member
First of all, Thank you. I do want to do your recommendation of replacing actual check boxes with the image of the check box and use states for the image, so I've implemented it. I've spent a considerable amount of time trying to order the triggers/variables and I cannot figure out how to
1) as soon as I click a check box state, it changes state AND moves to the correct slide. And even though I have added True/False triggers to the last slide on each of the 3 sections I need learners to visit, I can press "previous slide" and the state is still considered visited.
2) Reorder the triggers so the states are in proper order.
Are you able to further explain? I'm still a bit fuzzy.
- WaltHamiltonSuper Hero
I have some thoughts that may help you. First, you should know that I speak from a learner-centric viewpoint. That means that one of the most important considerations for navigation is to give the learner maximum freedom in choosing their path, when practical. Obviously for concepts that build on each other, you need to predetermine the order. It also means that the testing phase has to include every possible mistake the learner can perform, no matter how unlikely it seems.
I see two main reasons your project won't work.
The use of Selected and Visited states in this manner is almost always guaranteed to cause problems:
Selected is a built-in state, and as such has built-in triggers to cause it to function. It's function is to change to Selected if it is clicked, and to change back to Normal when it is clicked again. It should not be used as a state for visibility, For one thing, if the learner clicks it (and who knows why they would, but they will), it will leave the Selected state. What you need to do is to duplicate the Selected state, and name it something else, like Active. Or, you can use the hidden state initially, and change it to Normal when you want it visible, like in the sample. For the same reason, you should probably use Complete state instead of Visited. They can look the same, but the name and the built-in functions of those names can be problematic.
These triggers from slide 1.8 are the problem Perry warned you about:
Once a jump trigger is initiated, no other trigger on the slide is executed, so the Misrepresentation variable is never changed to True. Change the order of them so the variable is changed first, then the jump.
Then on slide 1.6, I added a trigger to set the button that advances to visible when the timeline starts, if all the variables are true. This is why Perry recommended variables. They are a lot more reliable than states, especially the "when objects are state ..." condition.
The concept is that after a learner finishes a concept, its variable is changed to True, and the learner is returned to the menu. On return to the menu, they see the method of advancing, only if all topics have been visited, as evidenced by all their variables being true.
Those changes (and the corresponding changes on slide 1.2) will probably make the project work. The rest of this is design philosophy that may help whoever reads it, but you can safely ignore it,
The button to advance from Menu slide slide1.6 (by the way, I strongly favor this type of menu as opposed to the built-in "Try to guess where you should go from the names of the slides" Menu) has the text "Complete" This at best is a verb telling them the will finish the slide if they click it, and at worst is designing for the designer. Designing for the learner is to tell them what will happen if they click. I prefer "Continue". That's why the new trigger on slide 1.6 references "Continue" rather than "Complete"
It is so much easier to troubleshoot a project (and return later and maintain it) if things are done consistently. If things are presented to the learner consistently, it also lessens the cognitive dissonance and extra load of trying to keep track of what is happening, and how to make it happen next.
For slide 1.7 - 1.9, there are two different methods of setting the variable to True. In my opinion, both of those methods have problems, aside from the inconsistency. One sets the variable when the timeline starts. That means the learner can navigate away from the slide before seeing the content, yet get credit for completing it. The other is to set the variable and jump to the menu when the video completes. May I suggest another approach? On the last layer show an object for the learner to click when they determine that they are through with that slide and are ready to Return to the (in this case) submenu. Maybe "Menu", or "Return" would be a good name for it. When they click that, set the variable, then jump to slide 1.6. That gives them time to assimilate the content, and move at their own pace. It also provides a consistent manner of navigating.
- PascaleSwans813Community Member
Wow, way more complicated than I anticipated. I have decided to go with the button for the last layer to have them click to return to the submenu.
If I have time I may try to get a simple template for one layer, but I think it will be a difficult process.
- WaltHamiltonSuper Hero
“way more complicated than I anticipated.”
Anything that looks really good and works really well usually is.