Presenter package trying to access assets/files relative to parent

Hi,

I'm trying to implement a collection of Presenter pieces into a larger shell built in Flash - basically it's a menu that contains mixed media elements (Presenter, video, etc.). The shell loads the Presenter shell SWF into its own display area.

This has worked fine for years. However, for this recent iteration, the company switched from Adobe Presenter to Articulate Presenter and the exported package acts differently. With Adobe's package I could simply load the "viewer.swf" into the shell and it worked fine as it was a self-contained, relatively-referenced package. With Articulate's package things are organized a little differently but I thought I could just load "player/playershell.swf" into the shell. Unfortunately, this doesn't work as playershell.swf is trying to load assets relative to its parent rather than relative to itself. The parent file is actually several levels up the directory structure and I can't simply move all the assets up to that level (it's a "clean" directory that is visible to the user and only includes the file to launch the menu and an "assets" directory that contains everything else).

In other words, when I load playershell.swf into my shell, the activity monitor shows that it's trying to load "slidegroup.swf" from TopLevel/slidegroup.swf rather than from TopLevel/assets/presenter/myPresentation/player/slidegroup.swf which is the same location as playershell.swf.

Is there a way to change this behavior when authoring/publishing with Articulate Presenter?

Cheers!

7 Replies
Randy Kato

Kevin Mulvihill said:

Just a thought... what about moving the parent file that launches the program into the nested directory where playershell.swf is, and then creating an alias/shortcut for the parent file and moving that back out to the top level directory?

Kevin


Thanks, Kevin.

The problem is I'll have multiple Presenter packages, and burying the parent inside one of them would only solve the problem for that one.... and it would screw up my access to the rest of the assets since the shell would no longer be at the top level.

I really hope there's a way to change this behavior, because the way it is the packages are not very portable/flexible.

Kevin Mulvihill

What about creating a master Presenter file, like a course or curriculum menu, and use the fix I suggested for that project. Then, within that project, you have screens associated with each Presenter file using Insert Flash Movie. This is not an elegant solution, obviously, and it won't work if you need LMS reporting from each Presenter file.

I'm pretty sure the Articulate developers weren't thinking of your situation when they architected Presenter.

I wish you the best of luck!

Kevin

Randy Kato

Kevin Mulvihill said:

What about creating a master Presenter file, like a course or curriculum menu, and use the fix I suggested for that project. Then, within that project, you have screens associated with each Presenter file using Insert Flash Movie. This is not an elegant solution, obviously, and it won't work if you need LMS reporting from each Presenter file.

I'm pretty sure the Articulate developers weren't thinking of your situation when they architected Presenter.

I wish you the best of luck!

Kevin


Interesting idea... so I would basically be loading the same "master" presenter package each time, but sending it do a different screen with each screen loading a different presenter package? Or is everything wrapped up into one master package? I'd still have the same problem with accessing the other non-presenter media but it might work. Forgive my ignorance, but I'm a Flash developer, not really too familiar with Presenter.

As to my original question, do you know for sure that there isn't a way to adjust the behavior in the authoring environment? Since that would be the simplest solution I'd like to know if I should rule that out before looking into smoke and mirror solutions.

As for the developers not thinking of my situation, I think they ought to have been. It's not really a matter of a specific use case, but more of a modular, scalable model. I mean Adobe's version does it "properly" - though it has its issues as well (which is probably why the company switched to Articulate).

I did read that Adobe Presenter can import Articulate Presenter, so maybe I'll have to look into that option as well.

Thanks again!

Kevin Mulvihill

I'm a Flash guy too, so no worries. I could tell you were savvy by your original post.

There's no way to adjust the behavior in the authoring environment. I'm not sure if there's an XML file you could tinker with somehow. Might be some SDK hook you could exploit too.

Re: my idea. You just have one "master" Presenter file (a new one). It loads to some kind of menu. Learner clicks on menu and PowerPoint hyperlink goes to that slide. For each separate Presenter file that you now have, you have a different screen. On each screen, you've used Articluate/Insert/Flash Movie to drop the playershell.swf and it's set to run on screen load. Alternatively, you can load a web page containing the Presenter file (use Insert/Web Object for that). That should work with assets in their own respective sub-directories, but there's another problem: you're not going to see a menu/Table of Contents for each of the "child" .swfs if you needed that.

Also, bear in mind that Presenter 09 is still AS2, FYI.

Kevin

Randy Kato

Kevin Mulvihill said:

I'm a Flash guy too, so no worries. I could tell you were savvy by your original post.

There's no way to adjust the behavior in the authoring environment. I'm not sure if there's an XML file you could tinker with somehow. Might be some SDK hook you could exploit too.

Re: my idea. You just have one "master" Presenter file (a new one). It loads to some kind of menu. Learner clicks on menu and PowerPoint hyperlink goes to that slide. For each separate Presenter file that you now have, you have a different screen. On each screen, you've used Articluate/Insert/Flash Movie to drop the playershell.swf and it's set to run on screen load. Alternatively, you can load a web page containing the Presenter file (use Insert/Web Object for that). That should work with assets in their own respective sub-directories, but there's another problem: you're not going to see a menu/Table of Contents for each of the "child" .swfs if you needed that.

Also, bear in mind that Presenter 09 is still AS2, FYI.

Kevin


OK, thanks. I did try tinkering with some of the XML but to no avail. Anything with a path specified seems tied to the HTML, which I'm bypassing completely.

Unfortunately, the shell I'm using IS a menu already, so having a menu selection lead to another menu is unacceptable.

This is starting to look like a dead end... time to backtrack and investigate alternate routes.