Copy link to clipboard
Copied
Hi.
I looked for this question, but could not find an answer, so I'm hoping I'm re-posting something already answered. If so, I will accept my verbal chasisement.
Anyway...
I am attemping to create a "click and reveal' type interaction in Captivate 4 using buttons and hiding/unhiding objects. Essentially, when the user clicks button A, it will reveal image A and Caption A . When they click button B, through the magic of multiple actions, image A and Caption A will disappear and image B and Caption B will appear....etc. These buttons are at about 5 or so seconds into the timeline.
Around 28 seconds into the slide timeline, I have a "Back" and "Next" button that I use for user navigation instead of using the navigation buttons on the skin. This will pause the slide until the user clicks one of them to be navigated to the next slide or previous slide.
The problem I am running into is that if the user "lingers" on the slide and clicks back and forth between buttons A, B, C, etc. to re-look at all the objects, clicking on any of those buttons will continue the slide which is paused by the "Back and Next" buttons at the end of the timeline. Try as I might, I just can't make the slide pause and wait until the user actually clicks the "Next" or "Back" buttons when I click buttons A, B, and C over and over to re-look at the images and captions.
So is there any way to tell a button NOT to continue the slide? I want my buttons A, B, and C to do the multiple actions i have assigned them (show and hide objects) but do NOT want them to make the slide continue at the pause implemented by my navigation buttons.
Thoughts?
Thanks.
Rob
Copy link to clipboard
Copied
Hello,
Do I understand you all right, that you have been trying to achieve this with 'multiple actions', not with advanced actions? Personally I would turn to advanced actions, gives you more control, certainly if you use some variables.
You could add 'No action' to a button, but this will not always work, and you really want the button to jump to the next/previous slide.
Could help you with the advanced actions, if you could give me a step by step explanation for one slide?
Lilybiri
Copy link to clipboard
Copied
I am actually using advanced actions in my final product. I'm creating this presentation for the sake of professional development for my fellow elearning professionals in my company to demonstrate the new features of Captivate, and the varied levels of using them. Ultimately, advanced actions/variables are the goal, but I'm demonstrating how to get the same effect using baby steps.
Unfortunately, I can't really link the .cp file anywhere, as I don' thave access to any place to do that. Could I email it to you?
Copy link to clipboard
Copied
Hello,
Attachments are not possible anymore. Send me a private message, I do not want to show my e-mail address to everyone on the forum. You could post the file on acrobat.com and send me the link (when you have my address). Acrobat.com is free, sign in with your Adobe-ID.
Lilybiri
Copy link to clipboard
Copied
Hi Rob,
My experience with this is that the only way to prevent the slide to continue playing is by assigning "No Action". As soon as you add an action, Captivate will automatically add a continue action even if you don't want to. The trick I used was to have different values for the "pause after" option. A button will only send the continue action once so Button A stops the clip. When you activate A, button B stops the clip and when you activate B, button C stops the clip. You get the picture ...
I noticed that if you go in sequence (A -> B -> C) it works but sometime if you skip the sequence (C -> A -> B) it might not work.
Give it a try.
Whyves
Copy link to clipboard
Copied
Yes, I think that will work. I'll try it when I get to work tomorrow.
Personally, I think this is a bug/oversight on Adobe's part. As part of
their standard actions that you can put into what passes for a "script" in
their new advanced action function, they ought to have a "stop" to stop the
timeline...it works good in Flash...should work good in Captivate, too.
I cut my teeth in eLearning using Flash...Although I was never smart enough
to be any good at programming it. With my Flash experience, though, I'm a
freakin' genius at Captivate, especially with these new features in version
4.
Thanks for your help. I plan on spending significant time on the Captivate
forums in Adobe. I did not realize the wealth of info out there!!!!
Rob
Copy link to clipboard
Copied
Yea, I played around with this more, and there is really no way (that I can
tell) to truly make this foolproof. I worked in my previous life in an
eLearning "Factory" (where Flash was the tool of choice) where we took great
pride in attempting to "break" each others projects, or otherwise make them
behave outside the scope of the way we want them to. I know that I could
set up multiple layers of invisible buttons to make it so 9 times out of 10,
the page will not accidently continue on the user, but to me, that's very
frustrating, and why shoudl I have to? It seems to be common sense for
Adobe to have a way to put in a command to completely STOP the timeline,
regardless of what the user click ons...making EVERY button a "continue"
button just does not work for me..
Oh well.
Copy link to clipboard
Copied
Hi there
Actually I do believe there is a way to make the behavior what you want. But I'll address your issue for making things known to Adobe first. Adobe has something called the "Wish Form/Bug Reporting Form" that they monitor. So you use that. (Link to that is in my sig line)
As for the button issue, you can accomplish it using Advanced Actions. What you need to do is to manipulate the Playhead to keep it paused. One way is by configuring the variable rdcmndGotoFrame with the value rdinfoCurrentFrame. Sometimes this works to just keep the playhead paused. Other times I've tried to do it with some success by repositioning the playhead farther upstream and allowing it to "float" back to the pause point of the object. And to do this you use the variable rdcmndGotoFrameAndResume and assigning it the frame number earlier in time. Of course, to do this you must first calculate the frame number to position at. I normally did this by inserting a Text Caption configured to present the rdinfoCurrentFrame variable and manipulating the pause points using a Click Box object to arrive at the desired value.
Cheers... Rick
Helpful and Handy Links Captivate Wish Form/Bug Reporting Form |
Copy link to clipboard
Copied
Hi Rick,
I ran into the same problem and tried your solution.
rdcmndGotoFrameAndResume somehow didn't work for me but rdcmndGotoFrame did the job perfectly!
Just want to say thanks.
Iyhou
Copy link to clipboard
Copied
Hi there
I'm very pleased to hear it you sorted it. And for what it's worth, I have encountered mixed results with these two commands. Sometimes one will work as I want and not the other. So you were spot on to try the other. That's what I do!
I really wish I knew exactly why. I guess some mysteries only the dev team know about!
Cheers... Rick
Helpful and Handy Links Captivate Wish Form/Bug Reporting Form |
Copy link to clipboard
Copied
Rick,
We found a problem with this approach today...
It works in preview but after publishing the course, the function brings the play head to the frame on the very first slide of the program instead of the slide this command was written on.
I'm going to try the combination of cpCmndGotoSlide and then rdcmndGotoFram. Hope that works.
Iyhou
UPDATE:
"rdcmndGotoFrame = rdinfoCurrentFrame - value" seemed to work! Woohoo!
Still don't understand why simply assigning a value to rdcmndGotoFrame would make it jump to first slide though. Any idea?
Copy link to clipboard
Copied
Hello,
Think I could explain this: frames are counted from the start till the end of the project, not per slide. So if the first slide has a length of 3sec and the frame rate is at 30, it will have 90 frames. Did not check if the counter starts with 0 (think so), in that case the last frame of the first slide is 89, the first frame of the second slide is 90 etc.
Lilybiri
Copy link to clipboard
Copied
Lilybiri,
I understand the frame concept but what happened is not really about the frame setting...
My setting is 18 fps, and the length of the slide is 3 seconds. I have a pause on a button that falls on 2 sec, and on the button I add the following functions:
1. Show a hidden object
2. Go to frame 18 (1 sec spot so it can play and hit the stop I set on 2 sec) - this prevents auto advance to next slide
This works fine in preview, but not after publish.
In preview it works as I expected, jump to frame 18 (1 sec) and run to 2 sec for a stop.
After publish if I click the button it goes to the very first slide of the entire project.
I wonder why it works differently between preview and after publish. Doesn't make sense to me.
It's not like we can set go to scene then frame as we do in Flash. What a bummer...
Note:
I end up using advance action: "go to this slide" then "show hidden object" to let the object show and hit the 2 sec stop. I was surprised to find that the system allows you to set action to go to any slide you want BUT the standard interface would not allow you to set action on a button to "go to this slide I'm currently on". That solves the entire problem this discussion started off with...
Love the sharing on this forum! I'm learning a lot from it everyday!
Iyung
Copy link to clipboard
Copied
Hello,
Do agree completely that this forum is a great way to learn about Captivate. To be honest I never tried to go to a specific frame with an absolute reference, alway using a relative move starting from the current frame.
Like you, I would love to have some extra system variables, p.e. one that let you navigate to the first frame of the current slide. Have been asking about it (Adobe team). If you agree about it, please fill in a feature request (link is in the main page of this forum). Features that are requested most do get priority.
Have a nice day,
Lilybiri
Copy link to clipboard
Copied
Hi. Sorry to bring this up, but I still can't get it to work...I must be a dummy.
I think I'm close, though.
So, per Captiv8r's suggestion, I went ahead and set up a text caption to tell me where the "pause point" on the slide is...turned out to be frame 94.
So, I went ahead and set up the rdcmndGotoFrame with that button to take me to frame 90 (4 frames before the pause point).
It works PERFECTLY in preview mode.
But, as iyhou points out, when you run it in full browser mode with all the slides, it takes you back to slide 1. Just for kicks, I put in a few other values like 580 (which shoudl have taken me at least into slide 2 or 3, I would have thought) and it STILL takes you to slide 1.
So, I tried setting up the advanced action to jump to the slide I'm on before running the rest of it...this technically works, but it looks silly, as I have fade ins on my objects on the slide, and it makes them disappear and reappear again. So, that's not a viable option, at least for me.
I am trying to make sense of what iyhou said with:
"rdcmndGotoFrame = rdinfoCurrentFrame - value". I tried that with the value being "94" and it STILL took me to the first frame in full browser mode. Did I do that right?
Anyway, any other ideas?
Copy link to clipboard
Copied
Wait. Never mind. That did work. I had not saved it. I set the value to "4" so it basically took me 4 frames before the pause point. Worked perfectly.
I have about 10 slides like this in my current project...setting this up for all of them is going to be a huge hassle, but I suppose worth it.
I have not played yet with CP 5...Hoping for the best and improvement on this very powerful feature.
Copy link to clipboard
Copied
Hello,
Is it always the same action that you want to be executed, such as: "rdcmndGotoFrame = rdinfoCurrentFrame - 5"? And is it triggered in the same way (by a button p.e. - sorry should have read the thread more thoroughly)? Prepare one button with the action, copy it, and paste it in one action to all the slides where you need it. The advanced action will be present in every instance, only the ID will be different on each slide.
Lilybiri
Copy link to clipboard
Copied
Hi
I seem to be on everbodys email list as I am receiving all the questions
from the forum, any ideas how I can remove myself?
Copy link to clipboard
Copied
Sorry...no idea. I'm kind of a novice.
Copy link to clipboard
Copied
Hi there
When you participate in a thread as this one you are automatically subscribed to it. What you need to do is visit the web form and click the link to stop receiving notifications.
Click the image below to view at larger size
Cheers... Rick
Helpful and Handy Links Captivate Wish Form/Bug Reporting Form |
Copy link to clipboard
Copied
Hello,
Was trying to achieve your goal with Advanced actions (as Rick explains), but couldn't spend much time on it until now, due to other priorities. Sorry for that. Do you want me to finish my test?
Lilybiri
Copy link to clipboard
Copied
Hello,
I agree it is rather tedious, and we should be able to accomplish this with multiple actions, which would be easier and faster. However, I've had good luck using an advanced action to show and hide as needed, and using the tip above to insert rdcmndGotoFrame := rdinfoCurrentFrame at the end of the advanced action. This effectively resets/pauses the slide. Get it?
Copy link to clipboard
Copied
YES! Excellent idea. I will try this...and it gives me an excuse to learn
a new advanced action.