unity-game-enginesavescorm

Unity SCORM Suspend_Data issue


I am working on a serious game project on Unity for a client that must be playable on a browser and compatible with SCORM.

I discovered the concept of SCORM and LMS with this project. I made an internal backup system, with a JSON file, which works very well when I build for PC, my score saves well and when I restart my project, I can load my backup.

Unfortunately when I build in WebGL and publish to the SCORM Cloud website, the save and load information doesn't pass.

I found on the internet that I should use suspend_data functions, I did find the description of its functions, but I can't find how to send or retrieve my score. I must have a problem in the conversion of JSON in string. Can you help me with this, or give me a hint.

I thank you in advance. Sincerely


Solution

  • There might be a couple different issues at play here.

    First off, I'm not sure that SCORM Cloud allows for the Unity Player mime type today. That could be verified with a request to support@scorm.com and it may be able to be added if it isn't currently supported.

    Second, how are you communicating with the SCORM API? When a SCORM course is launched in the player, there is a javascript API exposed with some basic calls you need to make. This is where you'd set completion or a score (or suspend_data if needed) and it tells the LMS what data to persist for the learner session and makes values available from previous launches if set to resume.

    This won't happen automatically, so you need to handle that in your Unity package with either a wrapper, or some javascript calls to the proper context from within the package.

    Hopefully all this is helpful for your understanding of SCORM. Feel free to reach out to support@scorm.com since you're using SCORM Cloud and they can help you if you need more information.

    Note: I work for Rustici Software on the SCORM Cloud team and have some light Unity experience.