Forum Discussion
Recent update to Storyline breaks LMS resume
I am facing same issue in the LMS name Paradiso After replacing an Articulate SCORM package, LMS shows course as locked & doesn’t fetch old user data
I updated an existing course built in Articulate Storyline and replaced the SCORM package in our LMS. Since then:
- Some learners see the course as locked even they have attended earlier versions.
- The LMS isn’t pulling old attempt data for users who had previously started/completed the course.
- StevenBenassi4 months agoStaff
Hi RushikeshSar435!
Sorry to hear you're having trouble after updating SCORM packages in your LMS!
I see that you've already opened a support case being handled by my teammate, Darrell. As he shared:
"What you're seeing is expected SCORM behavior, not a bug in Storyline or your LMS. When an existing Storyline SCORM package is replaced or updated, the LMS treats it as new content, even if the course ID or title stays the same. Because of how SCORM works, previous learner data can't reliably carry over.
As a result:
- Learners who already started the course can't resume where they left off.
- Old data (completion status, scores, progress, suspend_data) doesn't transfer.
- Some learners may see the course as locked because their old attempt records no longer match the updated package.
- SCORM data is tied to the exact version of the course files. Once those files change, the new package can't read the old data.
Please refer to this article for more information. I hope this serves as a guide. Let me know if you have other questions".
If you have any follow-up questions, feel free to reconnect with Darrell through your case!
- MateuszSzuter-e2 hours agoCommunity Member
Hi Steven,
Your message is not exactly true. And there are solutions that Articulate could include to avoid unnecessary tickets from users, stemming from updating the content.
A little theory beforehand:
SCORM package utilizes something called suspend data. Storyline-made courses sends that info to the platform at least every slide (other thing is does an LMS read it on every occassion, or like the one I have at job - every minute), and reads it whenever you are accessing the course. It contains where the current user is in the training (bookmarking), values of variables, states of objects for slides with "resumed saved state" etc. If your LMS is not configured to clear that data from every user whenever you upload a new version of a course - it will stay in the database and be read, if the course instance on LMS stays the same.
I have courses which are created not in Articulate suite (HTML5 sites wrapped in SCORM functions) and, with a few exceptions (adding/deleting slides), I can freely update the content and it will not affect the bookmarking etc.
So, if I'm republishing the same course, but for example with the new voiceover or slightly changed text on slide (but structure stays the same) - a learner, after new version was uploaded, should jump back to his bookmarked slide. And guess what - it works also with Storyline. SOMETIMES. Which is frustrating and gives me headaches.
My case:
I'm updating weekly the same course for the past 6 weeks. It's always the same - someone spotted a typo, a button is not working, link is wrong etc., only on a 6th occasion, the course accessed through LMS produced a blank slide, telling me that suspend data doesn't match the course structure anymore. Despite the structure didn't change. as I can see in the course structure in the exported files. The only reasonable explanation is that developers has changed something in how the Suspend data is read/saved by Storyline itself and it's no longer compatible with the older version (and, guess what, I'm after a two-three updates from the original version).
If the suspend data was cleared (as you are stating) the course should start from scratch (making a new attempt automatically), and not produce a blank page, which is confusing for learners.
but I get it - sometimes, some thing changes, even unintentionally, but...
Why you don't code a mechanism, that whenever suspend data read is invalid/corrupt/cannot find a bookmarked slide - learner gets a notification?
That would solve HUNDRED of issues doing updates. People will get a prompt "The course was updated recently. Please restart it." and a button. That's it. Problem solved. Instead, many administrators needs to responds to tickets with "please use the restart button". There could be probably other mechanisms (saving ALL visited slides throughout the course, and moving back to the latest accessible, if something has changed) that will handle these updates, but this simple one is soooo easy and would solve so many problems...