Storyline 2 - Tinkering with the story.html prevents local loading?

Nov 26, 2016

Hey guys, I was wondering if anyone else has ever attempted this and had the same result/found out why this happens/has a solution.

So recently storyline 2's limited interface options were really bothering me. I hate that if you add a logo to the interface it gets awkwardly shoved into the interface frame either to the left or right hand side in a tumor-esq fashion. So to give myself more freedom of placement I thought I'd try to dig into the story.html file and see if I could add some div graphics of my own to customize the look more.

Changing the background was easy and didn't seem to affect anything (just edited the body tag in story.html) however adding a div for a logo, and a div that wraps around the story interface and logo seems to have caused a weird bug... If you try to open the story.html locally, it gets stuck on storylines loading screen (see the screenshot below labeled 'what happens'.)

When the course is uploaded to an online server it loads without this issue (see image 'how it should look') and I'm not entirely sure why it would function fine on one and not the other. When I revert it back to the default story.html it loads locally fine (see 'without edits'.)

At first I thought maybe flash was being blocked, but if that were the case I shouldn't be able to view it locally without edits either...

My course will be viewed online, so this isn't an entirely detrimental flaw, but does have me concerned I'll have issues down the road with this custom interface. Does anyone have any tips on how to resolve this issue? Or at least why this would happen? I haven't touched any other storyline file, just purely added div tags. Seems weird to me that this would break the local functionality of the course.

6 Replies
Dave Cox

Changing the default html files is risky, and as you've found it doesn't take much to cause them to fail to load.

A solution that may work better is to make your modifications in Storyline itself. You can easily turn off the player options that you don't want such as the logo and menu panel. Then use the master slide to add the new elements that you want on your slides. For example, you can add your logo at the top of the slide, and move your course title down just below it. The logo will still be in your player, but you can position it as you please.

Are you posting your content to an LMS, or just a web server?

If you are posting to a web server, you should be able to add a div above the content for your logo, as you show in your image.

However, if you are posting to an LMS, take a look at the LMS settings. Most LMS' allow you to customize the window that the player loads into, and you should be able to add your logo there. This way it will still display above your player window, but will not destroy the functionality of the course.

S Harper

Hi Dave! I appreciate you responding.

I've worked with putting logos inside master slides and the like before, going so far as building an entirely custom menu for courses. But as a designer I feel very confined to a box with what storyline 2 has to offer upfront. And I find it frustrating that you can't use a combination of custom elements with default elements (for example: I want to use storyline's default menu for this client, but you can't summon the menu through a custom button on the master slide.)

If I put the logo inside the slide, and keep the default me nu tabs, the two get misaligned as the slide is contained within the player container where the tabs are.

Also I should explain that adding the logo via lms also doesn't work in my situation. I only have access to testing on two lms' and my client is on an entirely different lms. Typically if a couse works on scorm cloud it works on other third party lms', so we don't usually worry too much about that. But I have no control over the clients lms, so I cannot test or view how their lms would present their logo, and I'm currently working on mockups to show them what it would look like.

I was hoping to learn more about how storyline 2 communicates with the html files it produces to resolve this issue.

Worst case scenario, yes I can go back to designing within storyline's little box, but I'll probably send some feature requests asking for more options to edit the player. Being able to have an optional  background image, or having an external logo should be relatively simple features to add.

Dave Cox

As I said, editing the html file is risky. It can however be done. If you really need to add your logo outside of the player, I suggest you create a div for the area for you logo, and add your code there. I've been able to make edits like this without problems. You just have to be really careful where you put your code, and you may have to adjust the css to make room for your element. (It seems like I had to do that, but I don't remember for sure.)

Are you using flash or HTML5 for your output? If you are using flash, there is an SDK for the flash player that you may want to explore. 

Storyline communicates to the LMS using javascript. When you publish your project, take a look in the output folder and in the lms folder. There you will find the .js files with the code for communicating with the various LMS types and the overall LMSAPI.js.

As for the menu, I've deleted the logo area and I use the built in menu with no problem. I've moved the menu link to the top of the player. It opens and overlays the rest of the items in the player with not problem. 

S Harper

My logo is currently contained within a div, which is why I'm confused as to how it's broken any sort of functionality. As far as I can tell the main code has been left untouched, and the div with the logo is contained outside any code that storyline 2 should be communicating with. I'll keep tinkering and see if I bumped anything that would confuse it, but otherwise I'm not sure what would be causing the issue. 

For my output I've just been publishing to Storyline 2's lms setting. I'm not really sure if it defaults to flash or html 5 in storyline 2... I know in Storyline 360 it gives you more options of what it primarily uses. I want to say HTML 5 as we've been trying to move away from flash based while the war against flash continues (lack of browser support etc.)

Just to clarify, I've never had issues with the built in menu not working. My only gripe is if you wanted a truly custom interface that uses the default menu... you can't cross those two. You can't create a button in the master slide that calls that default menu tab function. So you're stuck keeping it at the top as a text tab with storyline's default player. There's no flexibility between the two. Storylines default menu is nice cause it auto generates the menu as you add new slides. If you make a custom menu it's a full manual overhaul that you have to update on your own. 

Anyway, I'll keep looking into the issue and if I find a solution I'll post it here for anyone that may be curious to see the answer. Thanks again for your suggestions Dave :) 

This discussion is closed. You can start a new discussion or contact Articulate Support.