Storyline v3.82 SCORM 1.2 initialisation issue

Dec 11, 2023

Hello,
We've upgraded to SL v3.82 and published a course to SCORM 1.2.
The course launches correctly initially but if you exit and resume the course, the SCORM engine appears to try to initialise twice.  Our SCORM API returned "false" on the second call to LMSInitialize() (as per spec) and then errors the whole course from resuming.

I've attached the SCORM log from Storyline and highlighted the point where it appears to go wrong and also where it finally falls over.

We've been able to recreate the problem is SCORM Cloud but it only occurs if you run the window in a frameset and not a new window.  I suspect the API discovery routines are the issue here.
(just a reminder: the error occurs when you resume a course, not on first launch)

We'll downgrade to v3.81 until you've had a chance to investigate.

Thanks

Chris

9 Replies
Steven Benassi

Hi Chris!

Sorry to hear you've run into this behavior!

Thank you for providing such detailed feedback. I've opened a support case on your behalf so our support engineers can investigate this issue. You should be hearing from them shortly!

We can continue the conversation through your case to keep all information in one spot.

Chris Walsh

Articulate technical support and I have had some direct communication.  The problem has been reproduced at their end under certain circumstances.  I've had to implement a code workaround on our LMS so that if Storyline v3.82+ is detected to silently allow a subsequent LMSInitialise() to run without raising an error (as SCORM specification states we should).  This has got us around the problem but this was only an option for us because we've build our own LMS.

Sharon Rathke

Thanks for the response.  We have a customer seeing the same issue with a SCORM 2004 package published in v3.83.  Removing the error on the LMS side for us would not be possible. The content would have to be coded to ignore the required error from the LMS in response to the 2nd Initialize call.  I will also put in a ticket with the affected content.

Chris Walsh

If you're hot on JavaScript, you could edit the SCORM_CallLMSInitialize() function in lms \scormdriver.js in the published Storyline output.  Add a global boolean flag which can be used to determine if this is the first or subsequent call to the function.  If subsequent then just return true.  A handle to the API adaptor has already been retrieved at this point so it should work okay assuming that the double-initialise doesn't completely reload the js file. 

NOTE: I'm looking at published SCORM 1.2 output rather than SCORM 2004 so names, functions and files may differ.

Eric Santos

Hello Chris and Sharon,

I'm sorry for the trouble with your courses! As Chris shared, the problem you encountered is related to a bug in Storyline with courses set to Always Resume. We just released a new Storyline version addressing this bug. Please update Storyline to the latest version (Update 84) and see if it helps.

Please let me know if you have any questions.