Forum Discussion

ChabelSantac416's avatar
ChabelSantac416
Community Member
2 months ago
Solved

Tailoring / personalising path from failed questions on a randomised question bank?

🙃

All and any ideas and help much appreciated as this is breaking my tiny brain, storyline pals!

I have created the attached course, which provides the learner with two options to do a refresher. 

My issue lays within option 1 - I have created an assessment using a question bank that asks the learner 10 random questions. Now the tricky part...

I need to make it so that once the learner has answer their 10 random questions, the course returns a specific selection of scenes linked to each question they have failed. So for instance, if they fail question 1, 5 and 8 then they are presented with a path showing them scene with content on Q1, then one with Q5 and then one on Q8. And once they have viewed the content, they get to repeat the quiz.

So far I have the quiz and question bank and some empty scenes where the content linked to the specific questions will go. 


I am really struggling with how to move from here, can anyone help me with any tips or instructions on how to link each question to a new scene and how to set it all up so that it runs this way? 

I have attached the story file so you can see if that helps in any way.

  • SamHill's avatar
    SamHill
    2 months ago

    Hi ChabelSantac416 no problem.

    It's all about setting variable values that allow you to make the decision you want in your Storyline course. For example, it would be entirely up to you when you determine a user should leave the quiz and return to content that they have not understood correctly in the quiz.

    A good method I have used in projects for a couple of client is to allow the user to progress through the entire quiz even when answering questions incorrectly. The key is to ensure that when they do answer a question incorrectly, it sets that variable appropriately. Let's say we have a project starting a petrol lawnmower. We might have the key topics of:

    1) Check the fuel level (True/False variable name = "fuel")
    2) Mixing the fuel (True/False variable name = "fuelmix")
    3) Adjusting the throttle(True/False variable name = "throttle")

    …and so on.

    The user then answers three questions on each of these key topics. If the user answers a question incorrectly in the "Check the fuel level" topic, we then set the variable "fuel" to false. Let's assume they answered everything else correctly, and they arrive at the results page.

    On the results page, you could have your usual score and pass/fail information, but then present your more specific information using the variables you created, and present the results like this:

    Check the fuel level - Not passed - Revisit this topic

    Mixing the fuel level - Passed

    Adjusting the Throttle - Passed

    …and so on.

    What we have done here on the results page is used the variable to determine what we should show. For example:

    And the equivalent for the Not passed:

    If you also include a button to take the user to the content, you would also need to include triggers to show/hide the button based on the value of the variable.

    It would be worth trying to prototype something and then refining the functionality as you go through iterations of development and testing. Let me know if you have any other questions.

  • Hi ChabelSantac416 the way I have done this in the past is to create TRUE/FALSE variable for each of the "scenes" associated with the questions. By default the variable value would be TRUE. The variable is set to FALSE if one of the associated questions is answered incorrectly.

    For example, I have a TRUE/FALSE variable called "T1". I have 5 questions related to "T1". If I answer one of those questions incorrectly, simply change the variable "T1" to FALSE. You can then use that value to trigger what you would like, for example, showing specific feedback on a results page, or providing a button to take the user to the scene associated with "T1".

    Things to remember, the default value must be TRUE, and must be reset to TRUE for every new quiz attempt.

    You can get the correctness, using "Question.Correct" or using the "Incorrect" layer, of a response on each question slide when the user selects submit. Considering the example above, all the 5 questions associated with "T1" would have a trigger that would set "T1" to FALSE if the question was answered incorrectly.

    Use a separate variable "T2", "T3" for each of your sections/scenes/topics.

    This should be enough to set you on the right path.

    • ChabelSantac416's avatar
      ChabelSantac416
      Community Member

      Thanks Sam, really appreciate the help and advice!

      If you wouldn't mind answering a few follow up questions, I'd be very grateful - for context I'm very much learning as I go along and haven't got much experience with variables.

      - Would this mean that the learner would be taken to the linked scene every time they fail a question (so, as they get through the quiz)? How would you set it so thay they can take the full quiz first and then they're taken to the relevant 'failed question related' content? 

      -Would I set the variable on each question slide?

      • SamHill's avatar
        SamHill
        Super Hero

        Hi ChabelSantac416 no problem.

        It's all about setting variable values that allow you to make the decision you want in your Storyline course. For example, it would be entirely up to you when you determine a user should leave the quiz and return to content that they have not understood correctly in the quiz.

        A good method I have used in projects for a couple of client is to allow the user to progress through the entire quiz even when answering questions incorrectly. The key is to ensure that when they do answer a question incorrectly, it sets that variable appropriately. Let's say we have a project starting a petrol lawnmower. We might have the key topics of:

        1) Check the fuel level (True/False variable name = "fuel")
        2) Mixing the fuel (True/False variable name = "fuelmix")
        3) Adjusting the throttle(True/False variable name = "throttle")

        …and so on.

        The user then answers three questions on each of these key topics. If the user answers a question incorrectly in the "Check the fuel level" topic, we then set the variable "fuel" to false. Let's assume they answered everything else correctly, and they arrive at the results page.

        On the results page, you could have your usual score and pass/fail information, but then present your more specific information using the variables you created, and present the results like this:

        Check the fuel level - Not passed - Revisit this topic

        Mixing the fuel level - Passed

        Adjusting the Throttle - Passed

        …and so on.

        What we have done here on the results page is used the variable to determine what we should show. For example:

        And the equivalent for the Not passed:

        If you also include a button to take the user to the content, you would also need to include triggers to show/hide the button based on the value of the variable.

        It would be worth trying to prototype something and then refining the functionality as you go through iterations of development and testing. Let me know if you have any other questions.