Passing Variable Data Between Storyline Blocks in Rise (a guide)

Mar 04, 2021

Did you know that you can use the computer's local storage to pass data from one Storyline block to another one within the same Rise course? Well you can and all it takes is a few simple lines of JavaScript code. 

This gives you all kinds of customization options for your Rise courses, including capturing and remembering the learners name and other selections they might make as shown here in this Rise example. What other ways might you use this?

https://360.articulate.com/review/content/b56569f8-4679-4c5c-a937-738eb98cc3fa/review 

38 Replies
Math Notermans

Nope in Rise i want to use the 'Complete' element. When using it with basic Rise blocks it works ( more or less )

complete1
When using it with a Storyline block however it ignores it...
complete2

Do it need to add some trigger in Storyline to ensure it will be used for completion in Rise ?
Checking that now...

Math

Brian McCann

Owen, thank you for sharing this. I've wanted to do something like this for a while. However, my lack of JavaScript knowledge has been a problem, and continues to be as I try to replicate this for one of my own projects.

I'm hoping someone can help me out. I tried to modify the code snippets Owen shared in a quick demo, but they're not working, which means I'm screwing something up. I'm not sure what I'm doing wrong though.

I've attached the Rise and both SL files. I wanted to design it so that in the first SL block someone puts their name in, clicks 1 of 2 guide characters, and then clicks submit. After they click the Continue button in Rise, the second SL block should show their name and the guide character they selected.

Another question related to the example: how does the print certificate feature work in SL block 3? I've looked at some other threads, but they don't seem to work in HTML5 output.

Any help is greatly appreciated. Thank you!

~Brian

OWEN HOLT

I haven't taken time to fully debug but one thing I noticed is the use of spaces in your JavaScript before the open parenthesis. This will break your code.

For example: var name = player.GetVar ("TextEntry") ;

Should be: var name = player.GetVar("TextEntry");

Try eliminating all of the extra spaces in your code and test it again. 

 

Jackie Senuk

Thank you for sharing this excellent example, Owen! I hope you will see my response. Your example was almost exactly what I need, minus the guide character selection. I just need learners to enter their name then have it show up in the certificate. I’ve attempted to recreate your example, but I don’t really know much about JavaScript and I’m stuck on having the name entered from the first Storyline block to show up in the second, certificate Storyline block. It just keeps showing up as null. The course we are creating will not be in an LMS, only posted to a website. I’m including my files here in the hopes that you or someone else from the Community might be able to help me figure out where I have gone wrong. Thank so much in advance for any help that can be provided!

Review file: Storyline Block Test | Review 360 (articulate.com)

Rise 0

If we could get some pre-made templates for this type of use from articulate would be interesting. However, i think it should be picked up from rise what variables are made available for use and how to handle those should not be needing code.. maybe in the future this type of functions are part of rise blocks. I dont see any reasons why it could not be.

Owen showing the way , hopefully Articulate listens and add their ease of use touch from within rise.

Rise 0

I would like to have some kind of defined content path branched depending on selections for what role the student have. Engineer or sales for instance..
3C seems highly suitable for this..so that choices have consequences for what content to present to the user.

Much more scenarios in my head. But im guessing a lot more coding.. and i am not a fan of custom coding, two main reasons, i dont like coding :) Second a nightmare to maintain none standard code in large number of courses.

It needs to be built into the tool for anyone to figure out how to use.

I sort of coded in Director, Authorware, flash and c++  back in the day.. But today im over it :)

I shun away from any coding. But i know its power when unleashing  good coding with ease of use for the none coder is enormous. Rise is a good example. Limited but growing.

Thank you Owen for pushing the combo of Rise and Storyline blocks boundaries!

I remember a few years ago when i talked about finding the strength in two. Many people said why not only use storyline? Some even said , Rise was not allowed.. 
Completely missing the point of ease of use and the power that gives for many more people then Storyline specialist. Now rise is standard for most productions but - the combo thinking is gaining ground.

Lia Lee

Hi Owen! I am attempting this project and I am having an issue retrieving the selected guides. In my retrieval scene I first had the slide executing JS at slide launch. Next, all guide images are set to hidden at slide launch. They each have a trigger to change to normal if their variable is true. Following your instructions I have local storage calling up all variables at slide launch. I did this in hopes that once variables were recalled, then the SL variables would display the conditional images based on the T/F boolean values. Sadly, no guide displayed. Is this because I created two different SL projects? Should this all pull from one project?