Forum Discussion

HannahWright-70's avatar
HannahWright-70
Community Member
3 hours ago

"Choose Your Own Adventure" Page Numbering

I've started implementing 'choose your own adventure' style sections into our courses so that users can visit the subsections in whichever order they'd like but it's led to some issues with page numbering.

  1. We've traditionally had page numbers aligned with the page in the project (Page %Project.SlideNumber% of %Project.TotalSlides%), but this is confusing for students when they jump from 23 to 48 and then back to 30.
  2. We changed it to the number of slides viewed in the project (Page %Project.SlidesViewed% of %Project.TotalSlides%), but this is still confusing for some when they navigate backward and has created an issue where the course is not marking as complete because the numbering skips around a little. 
    1. Our finishing 'requirement' is 100% of slides viewed
  3. We now have it set to a percentage (%Project.Progress% Complete) but would prefer to use page numbers. 

 

Any tips on the best way to mark the number of pages viewed, even when students move backward in the course (very common for our students). 

(We're also soft launching the percentage thing with a group of students to see if they prefer it to page numbers anyway, they might.)

  • Some options to consider: 

    • Number the slides in each subsection separately. In other words, each subsection always starts with 1. 
    • Show a progress bar instead of a number or percentage. That would give the user a sense of how far they've come and far they have to go, without getting distracted by actual numbers. (If you search the community, you should be able to find some great examples.)
  • Hi HannahWright-70 I don't think there is a simple solution for you, with the navigation being dynamic and the page number not being consistent.

    The only way to manage this would be to use JavaScript. If you have JS skills or have access to a JS programmer, the Storyline file would just need to track each slide it has been to (I think each slide has a unique ID), and then assign a page number to that slide (incrementing based on navigation), these slide IDs would be added to an array, for example:

    userNavigation = 
    [
    {
    'slide-id': 'abcd123', 'slide-number' : 1
    },
    {
    'slide-id': 'abcd456', 'slide-number' : 2
    }
    ]
    

    Each time a slide is navigate to, the userNavigation array could be queried to see if the slide-id already exists, if it does, it means the user has been there already and there will be a slide number to display, if not, it means it's a new slide, and the new slide will be added to userNavigation array, and the 'slide-number' incremented. This is a very basic description of the requirement, and there is some passing of data between Storyline and JS, but this is the only way I can see it being possible. I'm sure it cannot be completed using native Storyline triggers, and if it can, it will be hundreds of triggers and a nightmare to maintain.

    • HannahWright-70's avatar
      HannahWright-70
      Community Member

      Oooof, no JS skills here :( 

       

      My initial thought for a workaround would be to change the 'completion' to a trigger that appears on the last page of the course but that doesn't alleviate the confusion when students go back and forth and the numbers change. 

      • SamHill's avatar
        SamHill
        Super Hero

        Yes, agree with the completion. Just add to a slide you can guarantee cannot be accessed until you want the user to access it.