tag:blog.lilybiri.com,2013:/posts Captivate blog 2024-03-21T08:21:14Z ir. Lieve Weymeis tag:blog.lilybiri.com,2013:Post/2096496 2024-03-15T16:22:45Z 2024-03-17T05:50:16Z Multiple Failure messages (Quiz) in Captivate Classic

Intro

This blog post is meant as an answer to a question on the Adobe forum; You can see the full thread under this link.

You'll see that the title is different 'Is it possible to highlight the correct answer option?' The situation:

  • It is about Multiple Choice questions with one correct answer. Problem with a MCQ with multiple correct answers is that Captivate considers the answer to be correct even if it is partially correct. Hence that limitation.
  • Question has 3 attempts.
  • If the learner fails all attempts, the OP wants the correct answer to be highlighted.

Why did I choose a different title here? I proposed the possibility to have 3 different Failure messages (officially labeled as captions, although by default CP uses shapes) as an alternative needing less work.

As usual I create an short project (output see below) to test. In the test I included both possibilities: using a different failure message for each attempt, and highlighting the correct answer after the last attempt if it was a failure again.

Example project

This project has only two MCQ slides, with one correct answer. You'll be able to see the three failure messages, different for e

ach attempt. The arrangement the messages is not the same for both slides. When the second step (click on slide or Y) is done the correct answer will be highlighted. It is a non-responsive project. Review is possible although the learner got already immediate feedback:


Step-by-step

Workflow: use 3 Failure messages

  1. Set up the Quiz Properties like this; this setup doesn't include the appearance of a highlight (see below in the second part). In that case the Last Attempt needs an advanced or a shared action instead of 'Continue'. As usual I dragged the pausing point on each quiz slide from the default 1.5 secs closer to the end of the sldie.
  2. Due to the choice for 3 failure messages (which is the maximum), two extra failure messages will have been added on the slide. It is not a fixed location, depends on the theme. The two extra messages (2 and 3) will often be stacked.  This means you need to move the top one (3) to see message 2. To detect the message number, hover over the message. In this screenshot I hovered over the second message, after dragging the third one down because it was covering the second:
  3. Edit the messages and rearrange them, you can stack them again (as I did on the second question) or mirror the set up of the first quiz slide:

Workflow: highlighting

  1. Create the highlight shape over the correct answer. Remember: all custom shapes are stacked below the embedded quiz objects. To make it visible you have to make sure that the 'answer area' is at least partially transparent:
    In this case the answer area had a fill color, but at 60% alpha. The yellow shape behind it will blend, you'll have to look for a proper color combination.

  2. A consequence of the stacking of the highlight shape under the answer area: it is difficult to select that highlight area on the stage. Make sure to open the Timeline where selection is easier. You need to select the highlight an set it to invisible in output in its Properties panel:


  3. You need to create an advanced or shared action, to be triggered by the Last Attempt event of the question slide (Quiz Properties). This is the advanced action,  the marked items will be parameters if you convert to a shared action (recommended). Of course you can choose another Entrance effect (I used FadedZoomIn):


  4. For the shared action, which I recommend since you may want to reuse this action on multiple slides in this project and later projects, I indicated the parameters in the screenshot of the advanced action, and here is the parameter description. The highlight box will not always be in the same location, hence that parameter. It is not possible to have the highlight appear at the same time as the third failure message. That message appears with the first step of the Submit process, whereas the action to show the highlight is triggered by the Last Attempt action, which is with the second step of that process.

Q&A

You may have more questions, but I expect these to pop up. 

  1. Can this also be done in a Fluid Boxes (responsive project in Captivate Classic)?
    1. Yes, you can also have up to 3 Failure messages. The two extra messages will probably be inserted outside of the static fluid box which has all the other messages. I recommend to rearrange after editing, and have them all stacked in that fluid box.
    2. The highlight is not possible because you cannot stack a shape in the same location as an individual answer, and those answers are embedded objects which means that they have no ID and cannot have states which could be used to change the color of the correct answer.

  2. Can this workflow be done in New Captivate (12.2)?
    Not at this moment for several reasons:
    1. There is no possibility to choose more than 1 failure message. That message is a state in a multistate object, to which you can not add custom states. But even if that possibility existed, you cannot address the multistate object since it has no ID.
    2. You cannot add a highlight shape to the correct answer. You cannot add states to the individual answers, and even if that was possible, same problem arises: that multistate object would not have an ID, so you cannot change its state.




]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/2095647 2024-03-11T17:07:48Z 2024-03-11T17:07:49Z Get rid of Quiz Feedback messages In New Captivate 12.2

Intro

Multiple users asked me how to get rid of the default Success/Failure messages on quiz slides in the New Captivate version. Especially now that it is possible to have the correct answers hidden during Review, I understand this question. Depending on the situation, you do not always want an immediate feedback after each question.

The two-step Submit process which I have described multiple times on my blog remains the same as in previous versions:

  1. Learner clicks the Submit button, a Success/Last Attempt message appears. That message warns to click the slide or press Y to continue
  2. Learner presses Y or clicks the slide and the pause is released, the specified actions on Success, Last attempt will be done.

That situation is for a question slide with one attempt. If there are multiple attempts in case of Failure a Retry message will appear.

All messages in the new version are now in one multistate object. It replaces the individual messages which were in a static fluid box in the previous versions for a responsive project. 

It is impossible to delete that multistate object, there is no option to get rid of all the messages like was possible in previous versions by the setup in this screenshot:

Consequence of such an edit was that the first step of the Submit process automatically was deleted: no pausing after Submit, no need for the warning for the second step. I didn't succeed to achieve this in the New version, which means that you need to warn the learner to click another time. I have tried many workflows without success: changing the label of the Submit button to 'Continue' is only one of my failed attempts. 

Example output

It is a short quiz with 5 questions. I added an audio clip to the first quiz slide to warn about the extra click. All questions have only one attempt, and there is also one attempt on Quiz level. Review (without seeing correct answers) is possible from the Score slide. I did hide the review messages on that slide as well and added an extra slide (with exit button) after it. Like in previous versions it is still a recommendation not to have the score slide as last slide. You can watch the example below (fixed resolution) or the responsive version by clicking this link. Know that the loading time can be long for this version.

Workflow 1 - all quiz slides

This workflow can be used if you do not want any Success/Failure message. In that case it is important to change the settings before inserting the question slides! It cannot be applied to existing question slides.

Step 1: Default labels

  • Open Quiz Preferences, from the Preferences (Edit menu for Windows, Captivate menu for Mac).
  • Go to Default labels
  • Delete the text for the labels you want to hide. In this example I deleted the Success and Last Attempt message:

Step 2: System colors

You are aware of the fact that this version has no longer object styles. Each of the states in the multistate object with the feedback messages has a solid color at 100% Alpha in the default Themes. Color management has not improved, it is guessing which colors have been used. For the Success message it is the Success System color, and for the Failure message it is the Error System color. I didn't spend (waste) time trying to find by trial and error where those colors were used in other situations, but changed the Alpha for those colors to 0% which makes them transparent.

Result of those two steps: you'll not see a Success or a Last Attempt message, but still have to click the slide to proceed. If you have multiple attempts on quiz level, the Retry message will still appear because you didn't edit that message nor the fill of the box. Same for the message when learner clicks the Submit button without choosing an answer.

Workflow 2 - individual quiz slides

This workflow can be used when you don't want to hide the feedback messages for all question slides, or when you want to hide them on existing  slides.

Step 1: Text color

You cannot delete the text in a state, only edit it to create a custom feedback. You can however change the color of the text. So I changed that color to the background color of the question slide. This screenshot is taken on the Score slide, for the state 'Success' of the Review message. You need to do this for all states with messages you want to hide.

Step 2: Fill colors

This is similar to step 2 in the first workflow. For the states to hide set the Alpha of the Fill color to 0%. In the screenshot of Step 1 of this workflow, you see that this has already been done for the Success state of that area. In the last screenshot of Workflow 1 you have seen where you find the Alpha setting in the Color management dialog box.

Help?

I would be very happy if another expert could find a way to:

  • Style the Back/Next Review buttons the same way as all the other quiz buttons. I really miss the object styles. You cannot use Copy/Paste Appearance on buttons of the quiz/score slide. You cannot apply a new style to all the other objects with same type/style as in previous versions.
  • Avoid the second step of the Submit Process.µ
  • Avoid the weird state change of the images on the T//F questions. I know that you cannot disable the Hover state really, but I changed that state to look exactly like the Normal state. Nevertheless that original Hover state appears after submitting the answer.
  • Getting rid of the dimming or text and state change during Review. Light grey on white background is not very comfortable for people with weak eyes.



]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/2092819 2024-02-26T14:21:44Z 2024-02-26T14:21:44Z New Captivate 12 and AI/ChatGPT/Copilot

Intro

Whenever possible I use AI when I expect to save time. Not being a native English speaker, and maintaining a blog where I often publish live examples of Captivate’s output, it helps me designing text-based content for those examples while providing some keywords. In Photoshop and Illustrator I always have been enjoying the AI-based workflows. I love Adobe Express for features like creating a speaking avatar based on written text, and Firefly for graphics.

Warning

More recently everyone has heard about ChatGPT, and is using one or more engines to find more elaborate answers to questions than is possible with old Google.

I often chat with Copilot in Edge. I write this short post to express a warning. I have tried out other engines based on ChatGPT but I like the fact that the answers here offer the URLs of the used resources. Although you may have to offer specifications to get the answer you want, some chatting will provide what you want …. EXCEPT in case of a drastic makeover like what happens with the change from previous Captivate Classic to the present New Captivate, now in version 12.2. In many cases you’ll get a wrong answer because the resource database available world wide for this new version is very small. Copilot will often find only support resources for previous versions and will base answers on them. If you don’t see the URLs to check, this is very confusing and misleading. Here are two examples I checked out for this blog post. I mentioned explicitly the version number as context in the question.  I post the examples in the sequence I used. As expected (look at the second answer) the agent being AI it learned from its first big error.  

Questions

Question 1: Does Adobe Captivate version 12 have text to speech?

This is a screenshot of the first answer. But this is the completely outdated answer you would have gotten:

Of course I knew that this feature was not available at all. There are not even Slide Notes, and NeoSpeech died.

The used resources were all official: Adobe Captivate forum, eLearning community and the official Help documentation. 

After some re-education (my bad…) through chat a more appropriate answer was given.  I asked than for another question and learned that the re-education was not adequate.

Question Two: How to use Bookmarks in Captivate 12.2?

I have been posting blog posts about this topic, so it would clarify how up to date Copilot's database is. FYI: my blog is amongst their resources. Just try to ask anything about the now lost Shared Actions in former versions.

Answer below probably due to my 're-education'?:

Copilot still apologizes for the first wrong answer, but apparently is still confused about the version numbers and now tells me that this is another missing feature. Whereas I already posted three blog posts explicitly about Bookmarks in New Captivate (one is waiting for moderation here as well since weeks).  So, I continued the re-education, sent two URLs for two posts. Result is still bit annoying, because there are still some links to the official documents about older versions where bookmarks as frame navigation are limited to video slides only:

This happened after my detailed explanation about the changes with bookmarks from Captivate Classic to New Captivate. Only then a full search has seemed to happen.

Conclusion

Careful with answers from ChatGPT about software problems, especially with a new version like Captivate. When I was a student, I always preferred professors who did freely tell not to be able to answer immediately, but would be looking it up. ChatGPT too often proclaims to know an answer to every question, which is clearly not the case.

What is your opinion?

]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/2074240 2024-02-08T17:52:32Z 2024-02-08T17:52:33Z Static Bookmarks in New Captivate

Intro

This is a second post about bookmarks in New and Classic Captivate. I hope you have read the introduction, where I explain the terminology and show a Captivate tutorial with examples of static and dynamic bookmarks:

Intro to Bookmarking

New Captivate - version 12 - has only static bookmarks, but they are available on all content slides, with the exception of question and score slides. Captivate Classic has static bookmarks only on slides with slide video. However using micro-navigation (based on available system variables) you can mimick bookmarks on all slides, and also create dynamic bookmarks. Dynamic bookmarks are created on runtime and not available in New Captivate.

In this first part of bookmarking, I treat the topic from its original view: to navigate within a project on the level of frames.

New Captivate also has the possibility to use Bookmarks as events to trigger an (inter)action. That is an improvement over Captivate Classic which has only the Delay command to mimick that behavior. Again, this is limited to static bookmarks. I will publish some examples of bookmark-triggers in a second part.

Example in New Captivate

Scenario

After the title slide you’ll see:

  1. A list of explanations of the Steps. Appearance of each step is controlled by the user with a Continue button This slide uses bookmarks for that reason, but the original idea to use those bookmarks as navigation target from the last slide did not work. I am waiting on an answer from the team, logged a bug. Their use as event trigger has been used, but will be explained in a later blog.
  2. A video slide (slide video). On top you’ll find three buttons which allow to jump to bookmarks within the same slide. One of the buttons is the Replay button.

Example project

Play


Workflow step-by-step

Bug warning

When you open a project which has a slide video slide where the video duration is longer than the default 3 seconds duration of the video placeholder, the time ruler will disappear and be replaced by an emoticon:

Luckily it is easy to solve, just move the zoom slider and the time ruler will reappear:

Step 1: Create bookmarks

If you know the exact time for the bookmark, you can move the play head near that time. For a video I recommend to use the Play button to get the exact timing. Pause/play using the space bar as toggle is still possible, but not always in a consistent way.

Click the bookmark bar to insert a bookmark which looks like a black diamond. I strongly recommend to replace the generative name by a custom one which will make it easier to find the target bookmarks. Just double-click the proposed name and edit it. In this screenshot you see a bookmark near the start of the slide, which will be used to create a Replay button:

Beware: it can happen that while editing the name that the focus switches from the Properties to the Interactions. In that panel it looks like you forgot to define an interaction for the bookmark. This is a bit confusing because it looks like 'missing'. However a bookmark used as target for micro-navigation doesn't need an interaction. The interaction panel shows all the bookmarks on a slide (bookmarks belong to the group of Slide events) with their timing.

It is possible to move a bookmark by dragging. You can delete a bookmark using the right-click menu.


Step 2: navigation buttons

On top of the video slide I added 3 buttons (it is the maximum in New Captivate within one interactive component). The button functions as trigger for the action 'Jump to bookmark xxxx'. Here is an example screenshot for Button 'Second':

The Replay button will get back to a bookmark at the start of the slide:

The Steps slide with the explanations has 5 bookmarks:

As you could read in the scenario, I meant to have 'Jump to Bookmark' as target bookmark from the video slide. But at this moment that is not working. The jump is replaced buy Go to Previous slide.  I hope this will be fixed soon.

You may wonder why there is a fifth bookmark at the end?  Its action is 'Go to Next Slide' to mimick the smooth transition to the next slide which was typical for all previous versions. Using the On Exit slide event is not working. I am not the only user to have found this workaround. Personallty I never have liked the PPT-like presentation playbar.

The other 4 bookmarks are using the frame event to trigger an interaction. In this first part I restrict to the bookmarks in their original meaning: as navigation targets.        

Comparison New/Classic

Advantage of New Captivate: you can use bookmarks on all content slides except quiz slides. 

For Classic Captivate bookmarks are limited to slides with Slide video.  For other slides you need 'micro-navigation'. Next blog post will explain the workaround by replacing the same scenario. I may provide the shared actions to mimick the bookmark navigation on non-video slides.





]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/2031514 2023-12-15T11:48:08Z 2023-12-15T11:48:09Z Bookmarking in Captivate (Classic and New) - Introduction

Intro

One of the new features in Charm (new version 12) release is the possibility to have bookmarks on any content slide. In Captivate Classic you bookmarks are only available on a slide with slide video (to create an interactive video.

What do you expect from a bookmark in its original meaning? Looking this up in multiple dictionaries, two possible meanings appear everywhere:

  1. A strip of leather, cardboard, or other material used to mark one's place in a book. It has a digital version in ebooks as well. In the digital world you'll find this has also become..
  2. A saved shortcut that directs your browser to a specific webpage.

I planned to summarize my experiences with bookmarking fo navigation purposes in one blog post.  However, after weeks of exploring, I realize this would lead to a short booklet instead of a short article, hence the decision to split the content up in multiple articles. Main purpose is to compare and explain the present differences between the new (Charm) version 12 and Classic Captivate.

This introduction will explain the terminology. A Captivate tutorial, demonstrating the terminology is inserted. This tutorial was created in version 11.5.5.553. Explanation of workflows both for New and Classic Captivate will follow in next articles.

Example

You can watch this 8-slide tutorial using this link (to be preferred) for a scalable version, or watch the embedded static version. Please turn on your audio, there is narration. Slide 7 is a long video slide, taken from one of the presentation in an online Adobe conference. Be patient, the Next button if you want to skip appears after 30secs.




Terminology

When you watch the example output below, you'll see that I see two types of bookmarks for navigation: static and dynamic. My choice of adjectives refers to what is used for text fields as well: static text doesn't include variables and when publishing the content is defined and will not be changed on runtime. Dynamic text fields, as you see on the score/results slide in a project with scored objects and/or question slides, need to be rendered on runtime, because they contain variables for which the value will be defined based on actions by the learner.

Static bookmark: is linked to a fixed frame on a fixed slide. Examples: start of an important part in an interactive video. It is a bit similar to what you can have in a Table of Content, but on frame instead of slide level. Have a look at this interactive video, where the menu uses static bookmarks to allow you to access them easily:

Custom Play/Pause button

Static bookmarks can also link to non-video slides, and are not limited to navigation within the same slide. That is valid both for version 12 (New) and Captivate Classic. However, due to the absence of bookmarks in Captivate Classic, you need to use Micro-navigation. If you want an intro to this type of navigation to frames, have a look at:

Intro to Micro-navigation

Dynamic bookmark: the frame for the bookmark can be chosen by the learner, and will allow to return to that frame if wanted. This is the closest digital equivalent to putting a real bookmark in a book after a reading session. The bookmark is created on runtime, reason why I use the adjective "dynamic", referring to the difference between static text and dynamic text. At this moment dynamic bookmarks can only be created in Captivate Classic, not in the New version 12.

]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/2017648 2023-08-28T16:12:37Z 2024-03-21T08:21:14Z Play/Pause Button extended (Classic Captivate)

Intro

This blog post is due to a forum question. For a custom Play/Pause button the developer tried the workflow from this post. However there was a second request: the learner was expected to click an interactive object to proceed to the next slide. The original conditional action for the Play/Pause button results in a conflict: if the learner clicks that button multiple times, the Play action can override the pausing point of the interactive object meant to pause the slide indefinitely until the learner clicks it to proceed to the next slide. If you want to learn more details, please check out this thread.

My promise: a workflow, taking into account that it should be possible to use it on multiple slides. You can test it out in the Example project. Maybe some of you could be in the same situation, hence this blog post. It is based on deep understanding of Captivate's Timeline, micro-navigation, power of shared actions and objects timed for the rest of the project. 

If you are wondering: this workflow is impossible in the new version 12 for multiple reasons.

Example project

Please test this project, either by watching it using this link for a scalable version, or the static resolution version embedded below. After the introductury slides you'll find two slides with the Play/Pause button. Test them by clicking that button multiple times and watch what happens when you reach the end of the slide: the button will change its state but the play head will remain paused until you click the

 Next button.   I used some design elements/slides from the non-

responsive Quick Start Project 'League'.


Background

The basic conditional action for the custom Play/Pause button, which is timed for the rest of the project to start with is:

I used the simple commands Pause and Continue, which have exactly the same result as assigning values to cpCmndPause/cpCmndResume. Toggling those variables alhough they are Booleans, is not possible (sorry). I preferred the 'Go to Next State' for the PlayPause button. This is the object state panel of the button, this command is toggling between the two states.

Due to the timing of the button for the rest of the project, it has always the same ID and the advanced conditional action has nothing which changes when being on another slide. Problem is that when the button is clicked to the Play state on the pausing point of the Next button, the Continue command will override the pausing by this button. To solve this we need to know 'where' that pausing point is, and add a new decision to the conditional action, where Pause occurs in that situation even when the learner clicks to play again.

If you have an instance of the Next button on each slide, to time it near the end of the slide, its pausing point will be at a different frame on each slide. In the example project, to simplify, I timed the Next button for the rest of the project and took out its Pausing behavior. But I added a click box on each slide, pausing at the end of the slide. The click box is invisible (no feedback messages) to the learner. 

I need to define on which frame the slide has to pause indefinitely. In order to keep the Play/Pause button action independently from that frame, I have to store it in a user variable. The value of that user variable will be defined using the On Enter slide event. 

Step-by-step workflow

Variables

System variables

The used system variables are:

  • cpCmndPause: has value 1 when slide is paused, value 0 when it is not paused.
  • cpInfoCurrentFrame: frame number of the present frame, index starts with 0; frame number is over the project not the slide.
  • cpInfoFPS: number of frames per second; default value is 30 but can be changed.

User variables

Two user variables will be used but since they both appear in a Shared action, they'll be defined when you send this shared action to a new project:

  • v_start: will store the frame number of the first frame of the slide
  • v_end: will store the frame number of the frame where you want to pause indefinitely; it will be near the end of the slide, but it doesn't need to be the last frame.

Events and actions

You'll see an overview of the actions on the two slides where the Play/Pause button is important in the Advanced Interaction panel::

PlayPauseAct (advanced action)

This action is triggered by the Success event of the Play/Pause button:
The second decision is simple: The play head will always be paused when the frame number is higher than the on in v_end. Due to the sequence of the decisions, the state change for the button will occur, but Continue will be overridden if the second condition is fulfilled.

EnterAct (shared action)

This Shared action is triggered by the On Enter event of each slide, has 3 parameters:
The first parameter is the one who will be different on each slide. In the screenshot it is set at 18 seconds. It means that once the playhead reaches the frame at 18 seconds it will be paused by the second decision in the PlayPauseAct. Since frame numbers are on project level, the first frame of the slide is used as reference. The Expression commands are needed to perform some math operation to calculate the exact frame number. This literal depends on the Timeline. Have a look at the Timeline of slide 4
For this slide the first parameter was set at 45 seconds:
For slide 5 this was the Timeline:
In this case the first parameter was set at 9 seconds.

On the last slide (6) I used the On Enter event to hide the Play/Pause and the Next button since they were no longer needed. 




]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/2007694 2023-08-04T09:43:53Z 2023-08-04T16:53:40Z Classic Captivate vs 'Charm' test case (responsive project).

Intro

The 'All New Captivate', version 12 has been released just over a month ago.

It lives along Captivate Classic because it has not all the features which are expected in a full-blown authoring tool. Main limitation is that you can only create responsive projects. As a long-time user of Captivate I know that this implicates a lot of prohibited workflows which are possible in a non-responsive project.

To test the differences in workflow and possible bugs/lacking features I want to recreate a responsive project in the new version. The project which you'll be able to see here, was created with Fluid Boxes and based on a Quick Start Project 'Rhapsody' for the design aspect. 

'Crunch Numbers' test project

Play with the project on any device, using this link. You can also view the embedded one below, but on mobile devices you better use the link.



The topic is simple, and suited for playing on small mobile devices. There are some references to previous blog posts, but they used a non-responsive project. I focused on multistate objects because I know already that they are easier to use in the new Captivate release than in Classic Captivate.

Test follow-up

I plan to document each of the steps of the test process in another blog with limited access. Although my primary focus will be on recreation of the interactivities in the project, I will also spend time on the design features. Here is a non-restrictive first list of steps:

  • Preparation: setup of Preferences and Theme.
  • Recreating simple content slides using the slide templates and blocks
  • Eventually use of slides from Quick Start Projects.
  • Setup Multistate objects
  • Use of audio.
  • Animations tool
  • Defining user variables
  • Replacing Shared actions by Interaction tool (and Copy/Paste)
  • Replacing Advanced actions by Interaction tool (and Copy/Paste)
  • Scoring 

Steps in Bold are for me the primary goal.

After the process I will post a link to the result in this blog.

Invitations

As mentioned the new blog will not be public. If you are interested in following my test steps and conclusions, you'll need to contact me either:

  • by sending me a mail with your credentials to info@lilybiri.com
  • by adding a comment here, but I need your name and mail address
  • by filling in the form under the Contact button on my website.

You may get an invitation. It will be a limited group and I expect some engagement/reactions on the private blog.




]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/1997709 2023-07-24T17:43:35Z 2023-07-24T17:43:35Z Custom Navigation (basics)

Warning

At this moment two versions of Captivate are functional with the same license: Captivate Classic (version 11.8) and Captivate (version 12, also named Charm). The workflows described in this post are only functional in Captivate Classic. In version 12 they are not (yet) possible for multiple reasons which I will summarize at the end.

Why use Custom Navigation? 

Captivate has a playbar which includes Next and Back buttons, and a progress bar allowing to scrub to any location.

However in many projects these default buttons are not wanted, some examples:

  • The project is not linear (presentation-like). This can be due to a dashboard pointing to different parts and allowing the learner to control the sequence of the project slides.
  • There are (dummy) slides in the project which you don't want to have visited by the learner. 
  • Your client requires Forced viewing (bad idea especially for adult learners).

In those cases you don't want to have the default buttons which will be available all the time and always cause the action 'Go to Next  Slide' or 'Go to Previous Slide'. In all those cases a scrub bar is also a bad idea, but this article has its focus on custom Next and Back buttons. I have seen so many cases where the developer just puts an instance of the custom buttons on each slide - each with their individual action -  but I will propose altnernatives.

Workflows

Purpose of both workflows is the same: avoiding to have an instance of the buttons on each slide:

  1. Workflow 1: Put the buttons on the first slide where you need them, and time them for the rest of the project, always on top. For the Next button this will be on the first slide, for the Back button on the second slide. The buttons will have a unique ID. That means that they can be addressed with an action like Show/Hide when necessary. You can hide the Next button if it is no longer needed on the last slide using the On Enter event of the slide. This workflow is to be preferred if you need a lot of Forced viewing. In that case you can hide the Next button (On Enter) and use the Delay Next Actions command to show them after a certain delay. 
  2. Workflow 2: Put the buttons on master slides. They will not get an ID, but if you keep the Pausing (is activated by default) the pausing point will occur for each slide based on the master slide at the last frame, whatever the slide duration. These buttons cannot be controlled by actions like Show/Hide.

Since the buttons in both workflows will not always be used with 'Go to Next  Slide' or 'Go to Previous Slide', you'll need a 'dynamic' action to make them flexible. 

Dynamic actions

I prefer Shared actions because it is easier to transfer them to any project, using my Shared actions Library. That is a Captivate project where I store much used Shared actions. I open the library in any new project using File, Import, External Library.

Next button

The simple action ‘Go to Next Slide’ can also be achieved by this action:

Assign cpCmndGotoSlide with cpInfoCurrentSlide

This may seem weird, but the reason is the different start number of the index: for cpCmndGotoSlide it is 0, for cpInfoCurrentSlide it is 1. Example: if you are on slide 3, Next button should go to slide 4, but for cpCmndGotoSlide slide 4 is identified by number 3.

Howeveer you cannot use this action to the Next button, whether it is on the first slide (timed Rest of Project) or on the master slide(s). It is static, you cannot edit it to go to another slide than the Next one. To solve this issue I replaced the system variable by a user variable, which I label v_Next.

   Assign cpCmndGotoSlide with v_Next

Another event and action is needed on each slide to define the value of v_Next. The used event is the Slide On Enter, and it is better to use an Advanced action, because it can be applied to all On Enter events of the slides in one workflow. For its default action it will be:

   Assign v_Next with cpInfoCurrentSlide

For slides where the Next button needs to jump to a different slide, you’ll need to edit this action, replace ‘cpInfoCurrentSlide’ by the slide number you want to navigate to.. 

Back button

The simple action 'Go to Previous Slide' can be replaced by this Expression:

Expression cpCmndGotoSlide = cpInfoCurrentSlide - 2

Why 2? For the same reason as explained for the Next button, due to the difference in index for both system variables. To make this action dynamic, we'll need another user variable which I'll label v_Back. Similar to the workflow for the Next button, the value of this variable will be set with an action On Enter for each slide. For a normal Back button this would be:

   Expression v_Back  = cpInfoCurrentSlide - 1

The action for the dynamic Back button will be:

   Expression cpCmndGotoSlide = v_Back  - 1

On the slides where you want to navigate to a slide which is not the previous slide, edit the On Enter action, replacing cpInfoCurrentSlide by the wanted slide to navigate to.

I prefer also shared actions for both the Back button action and the On Enter action.

Summary

In my Shared actions Library I have three Shared actions for the Next/Back buttons:

NextAct   Assign cpCmndGotoSlide with v_Next

BackAct   Expression cpCmndGotoSlide = v_Back  - 1

EnterAct   Assign v_Next with cpInfoCurrentSlide

                 Expression v_Back  = cpInfoCurrentSlide - 1

  • In a new project, drag the shared actions to the Project Library of the new project. It is important to drag them simultaneously to avoid the variables v_Next and v_Back to be created twice.
  • Add Next/Back buttons with one of the two workflows. Apply the Shared action ‘NextAct’ directly to  the Next button and 'BackAct' to the Back button. No parameters are needed.
  • Convert the action ‘EnterAct’ to an Advanced action, by using it as template. There are no parameters to be defined. Apply the Advanced action to all Slide Enter events, which is possible by selecting all slides in the Filmstrip (Ctrl-A) and adding to the slide Enter event.
  • Identify those slides where the buttons needs to navigate to other slides and edit the Advanced action 'EnterAct' for those slides. 

What about Captivate (version 12)

This workflow is impossible due to lack of:

  • Master slides
  • Timing of objects for rest of project
  • Missing system variables from the Movie Control category
  • Missing slide Enter event

In that version you need to keep the workflow to insert or copy/paste a button on each slide and add the appropriate action using the Interaction tool.


]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/1989172 2023-06-18T18:21:48Z 2023-06-18T18:21:49Z Software simulations: Preparation phase (back to basics)

Intro

Captivate has always been famous for its interactive software simulations. Originally when it was released under the name ‘RoboDemo’ it was its primary goal. Although – in recent versions  – not much has been changed  for this feature,  it could be worthwhile to explain some tips I acquired while recording interactive tutorials for many applications (in several languages). In Flanders we often quote ‘Goed begonnen is half gewonnen’, freely translated ‘a good preparation will spare you lot of work later on’. This blog is about this preparation phase. some recommendations are also valid for Video Demo. I plan another blog will focus on the capturing workflow, and a third one on editing/polishing the sims into engaging eLearning course(s).

Preferences

Preferences can be edited before opening a project, while you are in the Welcome screen, the so-called Global Preferences. You do not have to start the Software simulation type of project to do so. Preferences are too be found under the Edit menu (Win users like me) or under the Captivate menu (Mac users).  Those global Preferences have less options because project-specific ones are missing, but the Recording category is complete.These options need to be checked, and eventually changed:

Settings:

Check the language! If you need to use another language, this is the place to be before starting the simulation. The feedback messages during capture (both shapes and captions) can be found in a file with extension rdl, like you can see in this screenshot. You can edit the messages in an editor like Notepad (don’t use Word).

I tend to keep the other settings at their default value. Lot of them can be set up later on for the project (narration, system audio..). The Camera sound and the Keystrokes audio are useful during recording, will not be included when published. The Smoothening is meant for the movie slides which have to be created for drag and other mouse actions. Later on you’ll get tips in the second part which will treat the capture itself.

Video Demo

To have a better quality for the movie slides (setting is also used for the simulation movie slides, also indicated as Full Motion Recording slides), change to 32-bit instead of 16-bit. For Video demo the temporary files are in a dedicated folder, you may want to switch to another folder on another drive if your startup drive (C) is too small. That tip is only for Video Demo, which can become rather big in file size.

Keys

Some of those shortcut keys are only for software simulations, not for Video Demo. That is the case for the Pause button, you cannot pause a Video Demo (answered that question multiple times in social media). You have to end the recording and eventually record another video at the end of the previous one..

Modes

Allows to check the setup for the three default modes (Demonstration, Training, Assessment) and eventually set up a Custom mode. Beware: you cannot choose a ‘default’ mode for future recording, which is what some users seem to believe. Choosing the mode(s) always happens at the start of a new recording. Personally I will edit some settings in this category. The feedback messages in a software sim, contrary to all other feedback messages (shapes) are by default set to be Text Captions. I prefer to switch to shapes and you can have a choice for the shape; it is easier to control the style of shapes in Captivate (see Step 2: Themes). You need to make the choice for the Demonstration mode, but it will be taken over for the Hint messages in Training/Assessment:

Take note of the objects to  be added during recording: besides the Success/Failure/Hint messages, highlight boxes, click boxes, Text Entry Boxes and eventually Rollover Captions (for Tooltips).

Defaults

This category is meant to edit the styles to be used. It is bit weird that this is included in the Preferences. Do not worry, Recording defaults will be added to the used Theme as well.
Beware: that will be the Theme set as Default theme. Of course if you opted for shapes instead of captions under 4., you only have to check the styles for shapes, not for captions. It is a bit confusing, because some captions have no counterpart as shapes: Capture Caption, Rollover caption. The styles for Smart Shape (used for both) is by default empty, but you can choose a styles there as well.
I will always create a different style for the Highlight box, instead of the thin lined Blue one which is the default. For the TEB, which often doesn’t have the wanted style that is a lot more difficult, because the wanted font and font size depends a lot on the application you’ll want to capture.

Theme

All software simulations (and the Video Demo) use the Blank master slide. It is important to keep that master slide blank. A background color or background image is not a problem. But you shouldn’t add other objects.

The Theme of your choice will need the wanted theme colors palette, theme fonts and object styles (maybe set in the Preferences, Defaults), Content and Quiz master slides are important if you want to add them later on to the course.  Once the wanted theme has been double-checked mark it as the Default theme. Especially if you do create many software simulations it is recommended to keep a Theme dedicated to them.

Storyboard

You have to know precisely what you want to capture. For long workflows, do not hesitate to split them up in small logical parts. It is a lot easier to record a limited number of slides, certainly if you want to do narration at the same time (which I do not recommend). For a software simulation you don’t have to worry that much about the synchronization with audio, since that can easily be done while editing (phase 3). While preparing, keep in mind to limit Full Motion Recording slides when possible. In many case drag and other mouse actions can be replaced by alternatives. Example: instead of dragging in scrollbars click somewhere on those bars. There are a couple of reasons. Several users have reported issues with the FMR (Full Motion Recording) slides when publishing to HTML5 in some browsers. Originally those slides are SWF-based, they are converted to MP4 when publishing but apparently the result is not always optimal. A better solution is to replace FMR by Video Demo slides, but that slows down the recording workflow (see second post).

]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/1966260 2023-04-24T18:03:12Z 2023-04-24T18:03:13Z Using State Numbers in Formula question

Intro

Review the output tutorial published in this post. The two first use cases were about a knowledge check question where the learner needs to create physics formulas, by clicking the terms in the formula. Those terms are multistate objects, used as buttons. In a previous post we created one shared action to get the 'State number' which is stored in an associated variable for each multistate object. That same post also explained how to choose the sequence of the states.

The first use case has 3 terms in the formula, the second one has 4 terms. The terms are identical multistate objects, at the start of the exercise they show the same Normal state.

In this article youi'll see how to create the action for the Submit button, and the On Enter action which is needed to reset the slide and thus allow multiple visits to the slides.

Submit actions

Those are advanced action triggered by the Success event of the Submit buttons.

Formula with 3 terms

To the left of the equal sign the term should be 'Force', which is state 3 in the multistate object.

To the right of the equal sign we need 'Pressure' and 'Area', sequence is not important. Those are states 1 and 2. The easiest way is to calculate the sum of the two state numbers, which should be 3. To avoid confusion, create another user variable v_right to calculate the sum. The condition will be very simple: v_1 (state number to the left of the equal sign) needs to be equal to v_right.  To show the result, another multistate object SS_Feedback was created with these three states:

This feedback shape is on the slide (not hidden) but the Normal state is invisible to the learner. I used the same feedback for the next slide (4 term formula) by timing it for the rest of the project. It will be hidden after the two formula slides.

The Submit action doesn't need much explanation; I used the Delay command to mimick the default time a feedback is shown, allowing a new attempt:

Formula with 4 terms

Due to the sequence of the states, a correct formula will also have the same sum to the left and to the right of the equal sign. Of course we need another user variable v_left  to store the sum to the left. However, checking the sums will not be sufficient in this case. If the learner chooses exactly the same states on both sides, the sums will also be the same. Example: if only the states for the 'oval 'are chose on both sides. To exclude that situation, I use another expression with a multiplication of the state numbers. For the result of the multiplication two extra user variables a; re defined: v_leftM and v_rightM

Example: if only 'oval' states are used sum will be: 5 = 2 + 3. However the multiplication will result in 6 = 2 * 3. Whereas for the drum the sum is 5 = 1 + 4  but the multiplcation will result in 4 = 1 * 4.  Look at the Submit action in this case:

Enter actions (reset)

Those are advanced actions triggered by the On Enter event of the slides, to reset the situation. 

Formula with 3 terms

The 3 variables storing the state numbers need to be reset to their default value (1: corresponding with the Normal state). That is not necessary for the v_right, because it is always calculated. The option 'Retain state on revisit slide' is not activated, which means that on revisiting the slide the Normal state is reset automatically. The variable v_states needs to be redefined.

Since the multistate object SS_Feedback is timed for more than one slide, and can be hidden by actions on later slides, it is important to show this object and put it back in the Normal state. The automatic reset to the Normal state is not happening due to the timing. The Next button needs to be hidden.

Formula with 4 terms

The 4 variables storing the state numbers need to be reset to their default value (1: corresponding with the Normal state). That is not necessary for v_right, v_left, v_leftM and v_rightM because they will be calculated. The option 'Retain state on revisit slide' is not activated, which means that on revisiting the slide the Normal state is reset automatically. The variable v_states needs to be redefined.

The resetting for the feedback object is for the same reason as in the other Formula slide.

More?

I used a similar workflow in this small project, which is meant as exercise for the math's class about Multiplication tables.

It is a responsie project, uses the same shared action I have used in the use case I described here. The Submit actions are a little bit more complicated. Your challenge: try to replicate this project. This is the link:

CrunchNumbers










]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/1963123 2023-04-10T13:24:01Z 2023-04-10T13:24:02Z Shared action to track State Number

Intro

In this post you can find a Captivate tutorial, illustrating 4 use cases where the state number was tracked and used to find a solution.

This post will explain the setup of one Shared action to track the state number, when a multistate object is clicked to advance to the next state. To explain I will use the first two (physics) use cases. The first one has 3 identical multistate objects, with 3 states, and two possible correct answers:

The second one has 4 identical multistate objects with 4 states, multiple correct answers are possible:

You can find one of the correct answers in those screenshots. The workflow will be described step-by-step.

Workflow 

Events

Both use cases have:

  1. Success event of the multistate objects which are used as buttons. These events will be used to advance to the next state and to fill a variable with the tracking number. The index start with 1, which means that the Normal state is state 1. Being this the only goal of all the multistate objects in both use cases, the use of a shared action is recommended over duplicated and edited advanced actions. The shared action will be labeled StateNumberAct.
  2. The Success event of the Submit button. The action triggered by this even will have two goals: first to check the answer, second to show the Next button if the answer is correct. For a wrong answer the learner can have another attempt at changing the states and submitting the new situation. Those actions are advanced actions, labeled SubmitAct_3 and SubmitAct_4. They are similar but not identical.
  3. The Success event of the Next button when it appears which is the Default 'Go to Next Slide'.
  4. The On Enter event of the slides which is a Reset action for the slide. These advanced actions are similar but not identical, and they are labeled EnterThreeStates and EnterFourStates. 

Variables

Each multistate object needs an associated variable to store the tracking number. Since that number will be used only on the same slide, the variables can be reused. They will be reset with the On Enter actions. The four variables are labeled v_1, v_2, v_3 and v_4 (only needed for the second use case). If you are a fan of my blog, you may remember that I have those variables in a shared action in my general library to be used as external library. See Creation of Variables.

For the shared action StateNumber Act an extra variable v_states is used to store the number of states in the multistate object. The value of this variable will be defined by the On Enter action of the slide.

StateNumberAct (shared action)

This action will be triggered by the Success event of each multistate object used as button:

It is a two-decision action. The value of the tracking variable (used as parameter 2) is defined by incrementing, while the command 'Go to Next State' is done on the multistate object. The second conditional decision checks if the maximum number of states is reached (stored in v_states) and resets the tracking variable to 1 in that case. The first parameter is the multistate object used as button, which is a compulsory parameter contrary to the variable which is a candidate parameter, needs to be indicated to be a parameter.

Sequence of States

The state numbers will be used to check for a correct answer in combination with mathematical operators. For that reason there is no arbitrary choice:

Use case with 3 states

It has two correct answers, left side of the equation sign needs always to be 'Force'. I choose this to be state 3.

To the right side of the equation sign it can be 'Area x Pressure' or 'Pressure x Area'. Those are in state 1 and 2, sequence less important. Reason: check for correctness will calculate the sum of the tracking variables to the right of the equation sign, which needs to be 3. That lead to a very simple condition. Try to figure it out, or wait for the next blog post.

Use case with 4 states

This is bit more complicated. Similar to the 3 state case, we can calculate the sum of the state numbers to the left and the right. This leads to a sequence of state numbers as shown in the screenshot at the start. In all cases that sum will result in '5', because it will be either '2+3' or '1+4', in all correct answers symbolized in this list:

  • 2+3 = 1+4
  • 3+2 = 1+4
  • 2+3 = 4+1
  • 3+2 = 4+1
  • 1+4 = 2+3
  • 4+1 = 2+3
  • 1+4 = 3+2
  • 4+1 = 2+3

However there is a 'booby trap' here! Because the condition based on the sum will also result in correct when the states on the left and the right side are identical. Example: 2+3 = 2+3 which is not a correct answer. More is needed than the simple sum condition. Any idea? Find the solution in the next blog post.



]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/1957804 2023-03-26T18:24:39Z 2023-04-06T16:02:32Z Intro to Tracking States

Intro

Multistate objects did change my workflows in Captivate a lot when they were introduced. Use the tag 'multistate object' or 'states' in my blog to see this proved. However I often miss the possibility to follow up states. There is no system variable for that purpose. Partially due to some questions on the forums, I set up some use cases to see the usefulness of state tracking. In this introduction you'll find a Captivate published output of 4 use cases and a short summary of the basic setup I used.

Example 

Check the tutorial below. These are the four use cases:

  1. Three identical multistate objects are used, and learner needs to reconstruct a physical formula by clicking through the states. Two solutions are correct:
  2. Four identical multistate objects, and another formula (related with the previous one). A lot more combinations are possible here, both sides need to result in the same Force.
  3. One multistate object, being a Carousel of 10 shapes (fSVG  text). Some requests (forum question):
       Flag number needs to be shown
       Back button only visible when in second state
       Forward button only hidden when in last state
       Next button on slide may appear only when all states have been visited
  4. Slot machine with 3 identical multistate objects having 8 states.

You can reach the rescalable version of this example using this link, or watch the embedded one below.


For the design I used some slides from the Quick Start Project 'Diverse'.

Basics for  Setup

Tracking variable

For each multistate object a user variable is defined. It will store the tracking number. I choose to have numbers identifying the state, with Normal being state 1, or in programming language: index starts with 1. None of the multistate objects in the example project has an 'empty' Normal state. If that were the case, the index could have been 0 which is the common approach for most system variables. However the system variable cpInfoCurrentSlide also has an index starting with 1.

For the use cases the state commands 'Go to Next State' and/or 'Go to Previous State' are used. So, it is necessary to reset the variable when either the last state or the first state is reached, to get a correct value in all situations.

Example for the first formula: once the third state is reached, the variable needs to be rest to 1 for the next click.

Events

This is more of a general tip when using advanced/shared actions. It is easier to set up a workflow if you can spread the actions over multiple events.  

For the first two use cases (formula): the multistate objects are interactive which leads to the use of a shared action because the check of the answer is done by clicking a button. This is also more user friendly: control over submitting the answer is given to the learner.

For the Carousel the multistate object is not interactive. Only the success events of the Forward and Back button are used. You'll see in the videos that this makes the action more complicated because all situations need to be cared for.

The slot machine is using JS for a random number and a While command, and can be triggered by the multistate object which is interactive. I added a Check button, to avoid a very complicated action. It is also the only example where I provided a Reset button (see previous blog).

On Enter event is used to reset variables and the situation on a slide. This is necessary when you allow to revisit the slides, but also because I tend to reuse variables.

State Choice

In the specific use cases of the formulas, the state tracking variable is used with mathematical operators to check for the correct answer. In that case it is important to choose a correct sequence for the states.

Example for the first use case: 'Force' is in the third state, because the used check function is to create the sum of the tracking variables for the first and the second state (1+2) which needs to be equal to 3 (third state). 

How?

I will post workflows for the use cases, including (interactive) video in future posts.


]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/1949134 2023-03-06T11:24:59Z 2023-03-06T11:25:00Z Score in Software Simulation

Intro

This is a short blog post, answering a software simulation (assessment mode) question on the forum. If you are interested, here is the link.

You probably know that in such an assessment scores are attached to one interactive object on each slide: either a click box or a Text Entry Box.It offten happens that the same action can be done by clicking more than one 'target' on the slide, which will need customizing that slide to add at least one extra click box, which will also be scored. However that will lead to a results slide where the acquired percentage is not correct. Reason is that all scored objects are included in the total score. You can verify that easily in the Advanced Interaction panel, to be opened from the Project menu or with the shortcut key F9. Here is an example. Slide 59 has two target click boxes, both are scored.

The OP wants to show the correct percentage to the learner in the project, but for the reporting to the LMS Pass/Fail reporting is sufficient which can be done by basing it on the required pass points.

Variables

    • A while ago this blog post described using the system variables used in the Results slide: Quizzing System Variables. For this blog post the relevant system variables are:

cpQuizInfoTotalQuizPoints: will have the value you see at the top of the Advanced Interaction panel, and is not correct in this case because it includes the scores of the extra target click boxes.

cpQuizInfoPointsscored: will be correct because on each quiz slide only one of the targets can be clicked.

cpInfoPercentage: is calculated from both previous variables and will be lower than expected for the learner.

cpQuizInfoPointsPerQuestionSlide: this system variable is not behaving as expected for slides with multiple scored objects. It will NOT show the total score of the slide, but the score of ONE scored object. I will presume that in case of a slide with two target click boxes, both of them will have the same score. This is also valid if you prefer shape buttons instead of click boxes.

Since there  is no need to transfer the percentage to the LMS, it is possible to use user variables. Create these variables:

v_TotalScore: will replace the system variable cpQuizInfoTotalQuizPoints

v_TooMuch: will store the total score of the extra click boxes. I assume that click boxes on the same slide have the same score.

v_Percentage: will store the result of the calculation from v_TotalScore and cpQuizInfoPointsscored

Workflow

Simple

The easiest way would be to count the number of extra targets. If all the click boxes have the same score of 1 point you could calculate the correct percentage with this advanced action:

You can trigger this advanced action with the On Enter event of the custom Score slide. It will allow you to display the correct Percentage. 

Advanced

Situation becomes bit more complicated if not dual targets (click box/shape button) have the same score (of 1 point). In that case you can take advantage of the weird behavior of the quizzing system variable cpQuizInfoPointsPerQuestionSlide  (see above). I used this shared action, triggered by the Success action of the targets, and the 'Last Attempt' action which is used here (Success action on a background Shape covering the complete slide). I assumed that the Last Attempt action of the targets is set to No Action. That typical workflow was used by the OP, and explained in this blog post

You see that this shared action has no parameters, you could also create an identical advanced action, if you still fear shared actions. My main reasons for this choice:

  • Shared action can have a small description
  • Shared action appears in the Library, which make it easier to check the Usage
  • This shared action has no parameters, so it takes the same time as the advanced action to be applied to all the necessary events.
  • It is much easier to transfer this shared action to another Project.

There is a small change to the action to be triggered On Enter for the Results slide:

Conclusion

On the Results slide you can insert most of the default fields, an overview:

  • You scored:  the system variable cpQuizInfoPointsscored is correct
  • Maximum score: you need to replace the system variable by the user variable v_TotalScore
  • Correct questions: will be OK, it is the system variable cpQuizInfoTotalCorrectAnswers
  • Total Questions: will not be OK, you could add a supplementary command to the shared action similar to replace the system variable cpQuizInfoTotalQuestionsPerProject by a decremented user variable.
  • Accuracy: you need to replace the system variable cpInfoPercentage by the user variable v_Percentage
  • Attempts: will be OK, it is the system variable cpQuizInfoAttempts





]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/1929832 2023-01-16T20:02:54Z 2023-01-16T20:02:55Z Multiple Failure Messages for Shape Button

Intro

Coincidence because this blog, answer to another forum question, is an alternative workflow to my most recent blog post about Software Simulation Assessments.

Summary of the request:

  • Learner needs to click a specific region, two attempts are allowed.
  • On Success the Success message appears and the project advances to the next slide.
  • On First failure a Hint message appears and an arrow indicates where to click. Moreover a Retry button appears.
  • When the Retry button is clicked the Hint text and arrow should disappear.
  • If second attempt is successful, Success message appears and the project advances to the next slide.
  • If the second attempt is failed, a Sorry message appears with a Continue button to go to the next slide.

Contrary to the previous article, the slide is created manually (no click boxes are added automatically as in a simulation). For that reason I preferred shape buttons over click boxes. A shape button can be made invisible by setting Opacity and Stroke to zero.

The same idea is at the origin of the workflow: at the bottom of the Timeline, a shape button (invisible to the learner) covering the full slide is added. Have a look at this screenshot of the Timeline of the first slide (Flags):

The Success event of this big shape button will trigger the FailureAct action to show the Failure messages. 

Sample project

Watch a scalable version using this link. The fixed resolution version is below:


The Timeline screenshot of the first slide (Flags) shows the objects on this slide, from bottom to top:

  • The shape button covering the slide SB_Back. This button will trigger an advanced action 'FailureAct' with the Success event!
  • Gr_Flags groups the four flag images
  • Title which function as instruction
  • A multistate shape SS_FailureThe normal state is invisible (same as the shape buttons), it has a state for the two Failure situations. The Hint message is stored in a user variable v_hint. Reason: this allows to time this message shape for the rest of the project. The workflow is needed in a sequence of similar slides, message can be hidden when no longer needed.
  • Shape button SB_Next, also a multistate object. I took out the Rollover and Down states, but it has a custom state 'Second' where the label changed to 'Continue'. 
  • Shape button SB_Flags, multistate object where the custom state 'Indicator' adds the arrow pointing to the correct location. This shape button is 'invisible' and over the Belgian flag on the first slide, over Portugal in the second slide (see screenshot belos). One of the advantages of shape buttons over click buttons: they can have custom states, and you can edit the form, needs not to be a rectangle:
  • The Text caption is added to show the state of the variable v_attempt. It is part of the debugging workflow, and I forgot to hide it before publishing.

Step-by-step

Variables

Two user variables are needed:

  1. v_attempt: has a start value of 0 and will be incremented on each failure (which is a click on the button SB_Backx).
  2. v_hint: will store the text to appear on the Hint message (first failure). Careful: you will need to increase the length of the inserted variable because 50 will not be sufficient in most cases.

FailureAct (Advanced Action)

This action is triggered by the Success event of the shape button SB_Back. The OP preferred to avoid Shared actions. You can assign this action to that shape button on the first slide, but you'll need a duplicate advanced action for each slide, because the color marked items need to be changed:

CleanAct (Advanced Action)

Action triggered by the Success event of the shape button SB_Next. Similar to the previous action, you'll need a duplicate action for each slide. The to be edited items are marked in color.

EnterAct (Shared Action)

It is a very simple shared action, with only one parameter. The text of the Hint is the parameter (literal). The reset of the other items has been done or is automatically happening because the option 'Retain State on Slide Revisit' is unchecked  for the multistate objects which is the default.
The following screenshot shows how the '{P}' button is clicked and opens the Parameters dialog box where you enter the parameter:

Success?

For the Success situation I just kept the default Success message. This is the Actions tab for the shape button SB_Flags and similar:

Two messages are allowed, Success 'caption' (is a shape) is activated, and the Last Attempt action is set to 'No action'.


Overview

The Advanced Interaction panel shows which actions are attached to which events:

]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/1927397 2023-01-15T14:04:49Z 2023-01-15T14:04:50Z Software Assessment: different failure messages/attempts

Intro

Thanks to a question on the Adobe forum: ‘How to have two different Failure messages for click boxes in a software simulation, assessment mode?’, I created a sample project showing the solution, and will explain the workflow step-by-step. It has become a pretty long article, be prepared.

At this moment multiple Failure messages  (up  to 3) depending on the number of the attempt, are only possible for question slides. A click box nor a button have that functionality. Moreover interactive objects, question slides, Drag&Drop slides have only two events to trigger an action: Success and Last Attempt. This means that you cannot use the first attempt to change a situation at all. Of course you could add events using JavaScript or InfoSemantics CpExtra widget. I accepted the challenge to try to figure this out only with Captivate’s features.

Example project

Watch this project either with the embedded fixed resolution version below, or by clicking this link for a rescalable one (recommended).



Step-by-step workflow

Slide setup

Have a look at the Timeline of the first slide with a scored click box:

From bottom to top you have

  • A shape button, labeled ‘SB_Back2’ (because this was slide 2 in the project). That interactive object covers the complete slide and needs to be at the bottom, behind the original click box. This means that such a workflow is impossible in a fluid box where stacking is prohibited. It may seem better to create a SVG (used as button) which has a ‘hole’ corresponding with the original click box. However that would be a lot of work, since that click box will be in another location on all slides. Only the Success event of this shape button will be used, and you can leave the number of attempts at Infinite or 1, doesn’t matter.
    Check the screenshot of the Properties, Actions tab: the Success message which appears when the Back button is clicked will act as First Failure message. You may call this ‘cheating’.
    This back button is triggering a shared action labeled ‘BackAct’.
  • The shape ‘SS_Hint’ has no role in the workflow, was in this assessment as help.
  • CB_Assess is the original click box inserted in the software sim, assessment mode. The OP provided 2 attempts, but that has to be changed to 1 (see further). I deactivated the Failure message, and kept only the Success message. You see the Properties of this click box to the right. I didn’t use the Failure message, but replaced it by a multistate shape.
    The action On Success is to proceed to the next slide with the next action to be done by the learner. Since there is only one attempt, the Last Attempt action is a Failure action. It is an advanced action ‘FailAct’.

    It is impossible to have states for the default feedback messages of interactive objects. You can see in the Timeline that this multistate shape is labeled SS_Failure and that it is displayed for the rest of the project, always on top. Its visibility is triggered by state changes.

  • The Failure message, which is the second message, is labeled ‘SS_Failure’ and you see the two states in this screenshot. The Normal state is completely transparent and has not text. The state ‘Second’ has the failure message, and the multistate object will be hidden until the ‘second’ Failure attempt happens. 

Actions

FailAct  (Advanced action)

This action is triggered by the Last Attempt event of the Click box. 

The Failure shape is shown, and will have the Second state in place (see below in the shared action ‘BackAct’. Since it is not a default feedback message, it will not appear automatically nor leave the slide paused for 3 seconds as will be the case for the Success message. That is the reason for the Delay command, followed by navigation to the next slide.

You see that this advanced action will be the same for all the click boxes, because of the Timing of the SS_Failure message for the rest of the project.

BackAct (Shared action)

This action is triggered by the Success event of the shape button SB_Back2. 

Because there are so many instances of that shape button, I largely prefer using a shared action over duplicated edited advanced actions. In the next part (other slides) you’ll see how to avoid having to enter the parameters on each slide. Here is the screenshot of that action, with the indication of its parameters:

The state of the Failure message will be changed to show the ‘second’ message when the click box is not correctly clicked. To allow such a failure you need to hide the back shape button so that a click outside of the click box is possible. But since you don’t want the Failure message to appear right away, you need to hide it. As you could see it will be made visible with the Last Attempt advanced action. Sequence of the actions is very important here: you need to change the state before hiding.

ResetAct (Shared action)

This action will be triggered On Enter for each slide with a scored click box. Since the OP provided multiple attempts on quiz level, I needed also to take into account that the slide will be revisited and custom objects have to be reset in their original status. Custom objects are the shape Back button (SB_Backx) and the multistate shape used for the second Failure message (SS_Failure). That explains why I preferred a shared action with these three parameters:

This is the screenshot of the action with parameters filled in for the first slide:

Slides setup (after first slide)

1. Slides with a Click Box

  • SS_Failure: since this shape is timed for the rest of the project, you don’t have to do anything on slides with a click box.
  • SB_Backx: the shape button covering the slide. I recommend to copy/paste SB_Back2 from the slide with the first click box, having the Shared action ‘FailAct’ applied to it. Take the time to rename the new copy which will have a generic name starting with SB_Back. I prefer to just change the number to the slide number. It is very important that you send this new instance to the Back, using either the right-click menu, Arrange or the Align toolbar, Arrange options.

    The attached shared action will be edited automatically to use the correct Back button for the slide.

  • EnterAct: needs to be applied manually to the slide. There is no workaround, you’ll need to choose the correct parameters. Only the first parameter (SB_Backs) is different, both the failure message and its state are always the same.

2. Slides with Text Entry Boxes, FMR or Video Demo slides, Static slides, Results slide

The two failure messages were only needed for the click boxes. You’ll need a simple On Enter action to make sure that the Failure shape has been hidden. With static slides I mean the very short slides which sometimes appear during capture and eventually intermediate explanation slides. You can use the Advanced Interaction panel to help with this setup. Here is an example of this panel for some slides:

Watch the labeling of the Shape back buttons on slides with Click boxes, and the applied actions to the Back button, the Click box and On Enter.

Slide 7 has a Text Entry box and shows the simple State action to hide the Failure message.

This project had 26 interactive objects, Click boxes and Text Entry Boxes. Each of them has a score of 1pt, which leads to the total score showing at the top. It is that score which is stored in the quizzing system variable cpQuizInfoTotalProjectPoints/cpQuizInfoTotalQuizPoints and is used for calculating the displayed fields on the Results slide.

Conclusion

My apologies for this rather long blog post, where I tried to explain the full workflow in detail. A simple question, however with not a real simple answer, agreed? Questions are always welcome. Post them in the comment.

]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/1925966 2023-01-08T10:32:50Z 2023-01-09T08:06:49Z Menu slide: forced view and different audio on revisit

Intro

Another post meant as answer to a more complicated question in the Adobe forums. You can find the (long) thread under this link. Title 'Play different audio on slide revisit' is not covering the final required situations. I will explain the end situation in short terms.

  • Project has a menu slide with 4 buttons. Each of the buttons jumps to a chapter of the course. There is narration on this slide, which needs CC and that means it has to be slide audio. That slide has staggered items synchronizing with the narration, and also several  effects applied to objects. The learner can click each button multiple times. Buttons are all active.
  • At the end of each chapter the learner returns to the menu slide. On return the playhead should skip immediately towards the end of the slide, when all the objects are in place and narration has finished. Except...
  • When the four buttons have been clicked at least once another audio clip needs to be played. That clip doesn't need CC.

The solution is less easy than I thought, hence this blog post. 

Example project

I created a barebone project for testing, using some slides from the Quick Start Project Safety. Have a look, to understand better what I explained about the request.



The course has 7 slides:

  • Slide 1: Title (poster image is based on this first slide)
  • Slide 2 = menu slide
  • Slides 3-6: one slide for each chapter
  • Slide 7: End slide

Analysis

The menu slide should appear in 3 possible states:

  1. First visit: default state, play head will start from the first frame and pause at the pausing point, narration (slide audio) and effects will be visible.
  2. Later visits, when not all buttons have been clicked at least once: audio shouldn't play and no need to wait for the staggered objects and their effects. The easiest way to realize both is using the shared action explained in this blog post:
    Force first view and/or play audio only on first visit
  3. Visit when all buttons have been clicked at least once: situation like in 2 BUT another audio clip needs to play. At the end of that clip something needs to happen. I choose to jump to the end slide, but this can be replaced easily by another command.

Have a look at the Timeline of the menu slide in the Example project:

You see the staggered objects including an entrance effect. Those are the white numbered shape buttons. The meaning of the top most button (SB_Done) will be explained below but you see that it has audio attached (object audio).

Step-by-step workflow

Variables

Create the user variables shown in this screenshot. The tracking variables (one per chapter) v_1 - v_4 are Booleans, default value =0. The variable v_skip will be populated with the duration of the narration audio clip in seconds. The variable v_audio gets the duration of the final audio clip. As indicated in its description v_buttons is meant for the sum of the tracking variables, which will be calculated whenever the menu slide is revisited.

Button SB_Done

Since it proved to be impossible to use Play Audio for the final audio clip in the project, I opted to use Object Audio. That type of audio plays when the object appears, or is made visible.  The shape button which I use is invisible because both Opacity (fill) and Stroke are set to 0. The eye button in its Properties is marked 'Invisible in Output'. The audio clip is added in the Options tab. The action nor the attempts matter, since the Jump to the last slide will not be done by clicking this invisible button. Have a look at the Style and Options tab in these screenshots:

ReturnAct (shared action)

This action is triggered by the success event of the Return buttons at the end of each chapter, it is pretty simple to understand from the Preview screenshot:

EnterAct (advanced action)

This action is triggered by the On Enter event of the menu slide, takes care of the three possible situations (see Analysis above). Both conditional decisions are mutually exclusive because they are based on the value of the sum variable v_Buttons.

I could have used JS to calculate the value of v_buttons to avoid the sequence of the 3 Expression commands.

If you want to reuse this action for other projects, I would recommend to convert it in a shared action. Be careful with the two literals (duration of both audio clips). They can be tricky, and it may be better to replace them by variables getting their value in the Variables dialog box.

Overview: Advanced Interaction

This screenshot shows all events and actions in the example project.


]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/1915491 2022-12-12T10:16:52Z 2022-12-12T10:16:53Z Drag&Drop: Using Types and InBuilt States (Captivate tutorial)

Intro

This course offers a detailed (video) workflow how to create and use for Drag&Drop objects.

The video is also available as standalone on YouTube, can be skipped in the interactive Captivate tutorial. The tutorial has also a Table of Content in Overlay, to allow complete free navigation.

The mastered skills are used for two games, which also take advantage of the available InBuilt states for Drag&Drop objects. More detailed workflow for the games will appear as blog posts. I used Ready-to-go slides from the Quick Start Project 'Business', non-responsive version.  Some licensed images from Adobe Stock were used as well. 

You can watch the tutorial as scalable HTML output from this link (recommended- or watch the embedded fixed resolution output below:


]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/1912986 2022-12-06T11:03:51Z 2022-12-06T11:03:51Z Quiz Basics 5: Master slides

Intro

This is the fifth blog post about default Quizzing slides. Five of the compulsory master slides in any theme are linked with Quizzing. For this article the type of project is important: non-responsive project, responsive project with Fluid Boxes, Responsive project with Breakpoints. Same master slides are used for Pretest and Knowledge Check slides.

With CP2019 Overlay Knowledge Check slides are available in an Interactive Video. Those slides also use the master slides in the chosen theme. The Quiz slides in a VR project however cannot be formatted using master slides at this moment. You have to accept the default styling. It is possible to edit the text containers (mostly shapes) but that has to be done on each slide individually. I sincerely hope that formatting functionality will be extended in next versions.

As for the object styles, for master slides editing depends on the type of project: non-responsive (can be published as scalable HTML output), responsive with Fluid boxes, responsive with Breakpoints. Between those types master slides are not interchangeable.

Non-responsive project

In the previous posts Terminology and Submit Process I explained the meaning of Embedded Objects on the quizzing master slides as being objects without an individual Timeline. You find them on the four master slides for Quizzes. They appear as placeholder on inserted Quiz slides. Each of them is using a dedicated Object style from the Quizzing Category (see Object Style Manager). As I wrote in Preferences it is a bit confusing that for the included Captivate themes, the default feedback messages use shapes as container, not captions which means you cannot change them directly for the Default Labels dialog box where only caption styles are available.

The background of the quizzing master slides can be set up like any other master slide. Since they have a lot of placeholder objects (mostly shapes) which can be styled individually you will mostly see either:

  • Master Slide Background: this means that the background of the Main Master slide is inherited. Often that will be a solid color, a gradient or eventually a not invasive texture image.
  • Custom: if the Main Master slide background is not suited, you need to use this option where you’ll find again a solid color, a gradient or a texture.

However feel free to use an image as background. Or you can override the background on individual quiz slides by inserting an image. Since the embedded objects are always on top of the stack, that image will automatically  be below the quiz objects.

Tips

  1. Use Guides (see Guides Rule) if you want to edit the layout of the placeholders, if you need a Matching, Hotspot and/or Likert question for your course to have a consistent design with the more common MCQ,T/F… questions sharing the same master slide.
  2. If you have a dark background, you can have issues with Matching slides: the link lines between the two columns are black, not possible to edit that color. Moreover since you probably would want a light color for text, the dropdown list will be unreadable. Solution is to create a duplicate master slide, where you put a light shape under Answer Area, and change font color to a dark color (new object style).
  3. If you expect to have multiline answers, the Answer area can be too small. It is not possible to edit the individual answer shapes n the master slides (which is a pity), that has to be done on the quiz slides. Increasing the height of the Answer area will make the workflow easier. Decrease the height of the other placeholders. That is possible for the Question title, the Feedback messages. Be careful with the Question placeholder: questions can also need more than one line. Eventually you can move the Progress indicator next to the Question title, to free up more space for the Answer Area.
  4. If you want some quiz slides including an image, create another duplicate of the master slide. Decrease the width of the Answer area and insert an image placeholder as shown in this screenshot:
  5. In any custom theme I create, I will always edit the results master slide: drag the Retake button over the Review button. It will avoid that the learner is confused when quiz is set up with multiple attempts, and Review is enabled. Design of Captivate’s quiz means that all attempts are considered to be exhausted  if the learner clicks the Review button. Moving that button will not cause any problems. If there is only one attempt, the Retake button is not appearing, and the Review button is visible immediately. If there is no Review functionality, no problem neither.
    If you want to override the design, and allow Review before a Retake, but without showing the correct answers, you could use the workflow described in Review before Retake.

Responsive project – Fluid Boxes

An in-depth exploration of the quizzing master slides in the Fluid Boxes themes is described in this article.

Every embedded object is in its (normal) fluid box, with the exception of the feedback messages sharing a static fluid box.  That is necessary to save space, they are stacked which is not possible in a normal fluid box.

Some of the tips mentioned for non-responsive projects are also valid for this type of project:

  1. Use of Guides is strongly recommended. For responsive projects rulers are in %. I know that CP2019 allows to use Position Properties panel for fluid boxes, but I find setting up a grid with Guides much quicker.
  2. For Matching questions using a dark background: fill the fluid box of the Answer area with a lighter (semi-transparent) color, and change the font color to avoid the mentioned problems. Do this on a duplicate master slide (MCA, T/F…).
  3. In the article mentioned above, I described the workflow for long answers in the Answer area. Instead of resizing the placeholders you need to resize the fluid boxes.
  4. For the duplicate master slide allowing adding an image, you’ll have create two fluid boxes in the present fluid box for the Answer area. That means taking out first the content by unlocking from Fluid box, dragging it into the scratch area. Create two horizontal child fluid boxes. Relock the answer area to FB and redrag it into one of the new child fluid boxes. You can insert a placeholder in the second child fluid box.
  5. The easy workflow described for a non-responsive project is not possible. The buttons are in a normal fluid box, stacking is not possible. Here a real tweak is needed. Tweaks and special situations will be explained in later blog posts.

Responsive project with Breakpoints

I have to confess that the toughest part of this type of projects is getting the quiz slides behave properly on all mobile devices. Although in some cases I prefer this type of responsive project for content slides because of the real freedom of design allowing to reduce layouts for small screens to the bare minimum by replacing items, quiz slides are a real pain.

It is very important to set up the object styles properly, especially those where fonts are included. Full explanation is to be found in ‘Object styles for Responsive Projects’.

The problem has become bigger, because Captivate no longer has included themes for Breakpoints as was the case until CP9. I still continue to use those themes, especially for the Quizzing master slides. At least they provide a start for setting up the responsiveness. For the rest a lot of testing (trial and error) is needed.

Most of the tips mentioned for non-responsive projects are fully valid, taken into account that you need to use the Position Properties to make all items responsive. No limitations however as for Fluid boxes: stacking is allowed, grouping is allowed etc… You can drag the Review button under the Retake button.

Next?

This fifth post was supposed to be the last one in the sequence about default quiz slides. However I will add another one explaining partial scores and penalties, after seeing several questions in the social media. You should now have a pretty complete overview now. Next articles will be about tweaking the default design (submit process, use of feedback images, use of audio…) and special situations like Branch aware, Pretest setup, Remediation. custom quiz slides, …

I also strongly recommend to get acquainted with the category 'Quizzing' of the system variables.

]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/1911086 2022-12-03T14:35:12Z 2022-12-03T14:35:46Z Quiz Basics 4: Preferences

Intro

In previous articles I talked about these topics:

Differences between Knowledge Check slides and Quiz slides are fully explored in this article.

This part has its focus on the Quiz Preferences. some of them have to be set up preferably before inserting any quiz slide, or creating a question pool. The same is the case for editing the design of the quizzing master slides which will be the topic of the 5th post in the series. Up till now the described content was valid for  non-responsive projects, responsive projects with Fluid Boxes and responsive projects with Breakpoints. That will also be the case for the Preferences. Sorry for this very lengthy article, sometimes bit boring but I didn't find an in-depth explanation anywhere else.

Preferences to set up BEFORE inserting quiz slides

It is also important to set up the design of quiz slides in the master slides before inserting questions, but in case you want to edit later on, it is possible. However this part of the Preferences needs to be done imperatively before inserting quiz slides. It concerns the default messages to appear, the labels on buttons etc. Too bad, not everything can be found in the same location in Preferences. And the amount of items to be edited can be different depending on the type of ‘quiz’ slides. Will try to structure everything as completely as possible for each type.

Default labels

This is the most intuitive location in Quiz Preferences.  The number of fields showing up can be different. This is a screenshot of the dialog box for normal quiz slides:

The first part of the dialog box shows the text for all the messages. I changed the text for the Correct and Incorrect Message. That change will NOT show up in the Master slides! That is the reason I insist on making those changes before inserting quiz slides. Resetting the Master slide cannot be used on existing quiz slides to revert to the changed labels.  Since I have to create courses i multiple languages, I have exported Preferences with those edited labels for each language.

Very confusing IMO is the indication of the Style used for the messages. Look at the Correct message, which tells that the ‘Default Success Caption Style would be used for that message. That is NOT true in the default setup of Captivate, the default style used will be the Default Success Shape Style.  Look at the Properties panel, I had the Success message selected on this slide. Reason is that in Preferences, Defaults normally the option to use Captions instead of Shapes for SFH is unchecked. However, this also means that you cannot switch to another shape style in the dialog box shown above. You have to switch to the Object Style Manager if you don’t like the used style for this message. You can find more details about the OSM in previous blog posts.

Second part of the dialog box shows the labels on the buttons of the quiz slides. You may already know that only the old type of buttons can be used (Text, Image or Transparent), not Shape buttons. For those buttons the label has to be entered in the Properties panel, not on the stage by double-clicking the button as is the case for shape buttons. Change the labels here in the Defaults to avoid having to do it on each quizzing slide. Change will not be transferred to the quizzing master slide neither.  Alternative could be to change labels on all the quizzing master slides.  Contrary to the messages, you can use the dropdown lists for the button styles to change the style if wanted.

The progress indicator is also in the dialog box (was on my pleading for translation reasons). It is a weird object, neither caption nor shape, just text. You can edit the style in the Object Style manager however, under Quizzing Objects.

Defaults under Settings

Quiz Results messages

Under Quiz Preferences, Settings more default messages can be found. Let us start with the Quiz Result messages, which will appear in the so-called ‘Review Area’ on the score slide:

In that dialog box you can edit the Pass and Failure messages (which do not appear on the Results master slide!) and eventually indicate which fields you want to show (but that can be done later). The legacy indicator for an email button is not valid anymore since many versions.

Question  Review messages

Under settings you also find the button for the Quiz Review messages which only is activated when Review is allowed.  Except for the Incomplete message, most of the messages will only be used for disabled learners. Since quite a lot of versions no text message appears for other learners, only checkmarks.

The Incomplete message will appear in the Review area (same name as on the score slide)? If you don’t need the Accessibility messages and do force the user to answer each question (see later), it is perfectly possible to make that review area placeholder much smaller on the quizzing master slides. However do not do that for the Review area on  the results master slide, it is needed for the Pass/Fail messages mentioned before.


Submit All

When you activate Submit All functionality, this button gets activated. The label on the Submit All button which replaces the normal Submit button, has been set already under Defaults in Quiz Preferences? But the popup dialog box that appears when that button is clicked has several defaults as well, which appear in this dialog box (I jsut corected Ok to OK).

You’ll see that contrary to the other Defaults, there is no way to set styles here at all . This default dialog popup box will take on the style of the theme. If you dont like that style, go into the Object Style Manager, and find the style ‘Runtime Dialog’. It is listed independently from Standard Objects and Quizzing objects, since it can occur for both normal slides and quizzing slides.

All dialog boxes shown in this part are valid for quiz slides, pool questions and KC slides. They are the same for responsive and non-responsive projects. Screenshots were taken in a responsive project with fluid boxes.

More Preferences

The other preferences can be set up whenever you want although I would personally prefer to activate the Submit All if you want that feature, since it has consequences for the default settings for that option. Similar for the Review functionality if you need the Incomplete message.

Reporting

I will not go into details for all the settings here because it would be almost impossible since a lot has to be tested out with the LMS you are using in your courses. If that LMS accepts only packaging using Reporting (SCO’s) you need to activate Reporting. Only a few LMS’s have a dedicated setting in the LMS dropdown list. Choose the protocol to be used, in many cases that will be SCORM 1.2, AICC is really outdated, and not every LMS supports the more powerful SCORM 2004.

Just a few tips about the marked parts in this screenshot:

Template:  is the SCORM template to be used. With the default template the reporting data are sent after each slide, you can choose to send it only at the end if the course proves to be very slow and many users are taking it on the same network. However that means that when the connection is interrupted, the learner will have to retake the quiz slides.

Slide Views: be careful with using this instead or together with Quiz requirement. I often see problems when clients use a requirement of 100% of slide views.  If you need to use that requirement, set the percentage bit lower at least. Much better is to use at least one scored object at the end slide, that needs to be clicked by the learner and which you can use for a score requirement.

Data to Report: in general most LMS’s prefer percentages, not points. Especially for SCORM 1.2 if the total score is higher than 100points.

Never Send Resume Data: under the Advanced button.  That (negative) option is unchecked by default, which means that bookmarking is turned on. On a second session learner can return to the slide where he left in a previous session. If you check that option, learner will always be returned to the first slide. Setting up the alternative, bookmarking by the TOC (Self-paced learning) makes no sense when using  a LMS.

Other Settings

In a previous article about Embedded objects some of the Settings about activating/deactivating buttons was already indicated Above I already mentioned several options under Quiz Preferences, Settings. In this new screenshot I marked some other choices:µ

Required: in almost all cases it is recommended to keep the default choice which is Optional. If you prefer one of the other choices it can lead to problems, where learners get stuck. There are better ways to achieve ‘Answer all’ or ‘Learner must take the quiz’. Set up the navigation in such a way that the learner cannot skip the quiz (do not use totally free navigation with the scrubbing bar in the playbar, or with the TOC). Once the learner is on the first question, with the default button setup he can only continue when he has answered the question. If you use remediation (go to content slide) you cannot use the more strict options neither.

Interaction ID Prefix: necessary when using same question pool in more courses to be reported to the same LMS.

Review mode navigation buttons: has to be activated if you allow Review (bit lower). If you forget those buttons, learner will be stuck on the first question slide during Review, unless you provide another navigation possibility.

Branch aware: may I point to a recent article where I explore in-depth this functionality which makes the quizzing system variables dynamic?

Show Progress: either Relative (Question x of y), or Absolute (Question x) allows to turn on/off the Progress indicator.

Allow Backward movement: it may seem strange that I allow this, whereas the Back button is unchecked on quiz slides (and playbar is hidden? Reason: if you want remediation, where the learner is sent to a content slide after failing a question, it should be possible to do so if that content slide is before the quiz.

Hide Playbar in Quiz: unless you have “Submit all” activated, you should hide the playbar at least on quizzes (if you have one in the course). Reason: it makes no sense because when going back to a previous quiz slide or content slide by playbar the learner will not be able to change the answer at all which makes it a frustrating experience.

Pass or Fail

Herre a screenshot of that easy dialog box (easy compared with the more complicated previous ones):

The passing score (cpQuizInfoQuizPassPercent or cpQuizInfoQuizPassPoints) can be set. In some cases it will prove necessary to  check if same is used in the Manifest file. Again: prefer percentage to score.

If you have more than one attempt on Quiz level, you should activate the Retake button. It will appear on the socre slide as mentioned in the previous Quizzing post. In that post I also explained that the actions on Passing and Failing (after last attempt) only occur after reaching the last frame of the score slide.

More?

This was a pretty boring article, hope you found some interesting documentation.

I didn’t yet talk about Pretest quizzes here, nor about the quiz slides in a VR project or 360 slides, nor about the KC slides in an interactive video. Articles are already pretty long.  Will be in a later post.

Quizzing master slides have been mentioned several times. There is already one article about their setup for Fluid Boxes.

And some of you will be looking forward to possible ‘tweaks’? I have been creating so many cheating workflows, expect more in the future.

]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/1908836 2022-11-26T15:32:01Z 2022-11-26T15:32:01Z Quiz Basics 3: Attempts and Scores

Intro

In the first two articles of this basic course about Quizzing, I explained the Terminology, and the Submit Process.

Those posts applied to all types of questions: scored, random, Knowledge Check, pretest slides. This post will be talking exclusively about scored (graded) quiz slides and random quiz slides which are graded. For those slides the results are stored in the quizzing system variables, and you can have the score slide in your course. You will get some tips about the default score slide at the end. Scoring doesn’t exist for Knowledge check slides, you can only choose attempts on question level, not on quiz level.  Pretest questions have scoring as well, but the values are stored in different system variables, and are only meant to navigate the learner to another slide,  based on the pretest result.

This article will explore the scoring and attempts on two available levels:

  • on question level
  • on quiz level

Attempts/Scores on Question level

Setup for both is done in the Quiz Properties panel. That panel appears automatically in the newbie UI when you insert a quiz slide (or a random slide) in the right docking station. For quizzes however I strongly recommend to switch to the Expert UI (check the option ‘Enable custom Workspaces….’ under Preferences, General Settings). Set up a workspace where both the Quiz Properties and the Properties panel are visible. Reason is that you need the Properties panel for partial scored MCQ slides with multiple correct answers.

Attempts

In the default setup the number of attempts for graded questions is set to 1. The feedback messages for Correct and Incomplete are checked and 1 Failure message. The actions for Success and Last Attempt are both set to Continue. You could check the option Infinite Attempts, but I strongly doubt you’ll want to have the learner in such an infinite loop.  A limited number of attempts however can be a good choice. If you allow more than one attempt, do not forget to check the ‘Retry message’ because that is not done automatically. Have a look at this screenshot for True/False Question, to the arts marked with a blue rectangle. I set the number of attempts to , and checked Retry. The Failure message was left at its default 1 message.

I kept the default Continue actions as well, but moved the pausing point closer to the end of the question slide (see previous article) to minimize the waiting time after the second step of the Submit process.

Score/penalty for 1 correct answer

Default score for all questions is set to 10 points. Since some LMS’s don’t like to see total scores greater than 100 points, and all questions don’t merit the same score you will certainly want to change those scores. BTW: later on I will offer an exploring post about the wonderful Advanced Interaction panel (F9), unknown to many because it never appears automatically in the newbie UI. It is not only about ‘advanced’ actions at all.

Changing the score happens in the Quiz Properties panel for all question types with a black/white score. B/W score means that you only get the score if everything is correct, score will be zero in all other cases. All question types, except the MCQ with multiple answers are validated with this rule, even Matching, Hotspot and Sequence. In the screenshot above (T/F), you see the score reduced to 4 points.

I also added a penalty: this score will be subtracted from the total score if the answer was wrong after the last attempt. You don’t have to enter a negative number here. Beware: in SCORM 1.2 reporting a negative result at the end will be reset to zero.

MCQ with multiple correct answers and partial scoring

Have a look at this screenshot, set up for such a question slide, with 5 answers. Two out of them are correct, each has a positive score of 5 points. The 3 wrong answers get a penalty of 2 points each. Neither the score nor the penalty can be set up in the Quiz Properties panel, they are dimmed. You have to select each individual answer, and setup score in the Properties panel of that answer (visible in the screenshot as floating panel next to the Quiz Properties):

The 4th answer, wrong answer, is selected in this screenshot. There is no Penalty field in the Properties panel, tab ‘Options’, only ‘points’. Since this needs to be a penalty I entered -2points. Same for the other wrong answers. The correct answers got positive points (5 for each). The dimmed numbers for Score and Penalty on the Quiz Properties panel are calculated by Captivate to 10 points and 6 points. I had to check the ‘Partial correct’ message, was not done automatically although Multiple answers was chosen.

In this example I changed the actions (Success/Last Attempt) to ‘Go to Next Slide’, didn’t move the pausing point of the quiz slide. This is the second possibility to narrow the waiting time after Submitting the result.

You see that 3 attempts are possible for this question (green markings).  But the Retry message is unavailable, dimmed. Reason is that I have chosen to show 3 Failure messages, different one after each attempt. You need to include the warning about clicking the slide (or pressing Y) for the last Failure message which appears after the last attempt.

Quizzing System Variables

These quizzing system variables (see also: Using Quizzing System Variables) are linked to individual question slides:

  • cpQuizInfoAnswerChoice: after submitting the answer (see this post for a typical use case)
  • cpQuizInfoLastSlidePointScored: after submitting the answer
  • cpQuizInfoMaxAttemptsOnCurrentQuestion: while on that slide. Beware: there is no exposed system variable telling which attempt the learner is taking at this moment on question level, only the maximum allowed attempts can be retrieved.
  • cpQuizInfoNegativePointsOnCurrentQuestionSlide: maximum penalty for this question slide
  • cpQuizInfoPointsPerQuestionSlide: maximum score for this question slide.
  • cpQuizInfoQuestionPartialScoringOn: Boolean
  • cpQuizInfoQuestionSlideTiming: if you use a time limit on the quiz slide
  • cpQuizInfoQuestionSlideType

Attempts/Score on Quiz Level

The number of allowed attempts on (total) quiz level is set up in the Quiz Preferences, Pass or Fail.  Default setup is one attempt. If you allow multiple attempts, don’t forget to check the option to ‘Show Retake Button’. When clicking that button, all questions will be reset and the quiz system variables will be cleared.

If you also allow Review (Quiz Preferences, Settings), you have to be aware of the fact that all attempts on Quiz level will be considered to be exhausted if the learner clicks the Review button (also on the score slide). To prevent confusion use this easy trick: drag the Retake button on top of the Review button on the results master slide (or the score slide). Once the attempts are exhausted the Retake button will disappear and Review button becomes visible. Problem is that this is perfectly possible for a non-responsive (blank) project or a responsive project with Breakpoints. But a normal fluid box doesn’t allow stacking of buttons, unless you define the fluid box as being static. I will post a workaround in my “tweaking posts”, later in the Quiz sequence of posts.

The Total Score on quiz level will be calculated from all the scored objects in the course (see Advanced Interaction panel) and stored in a quizzing system variable cpQuizInfoTotalQuizPoints. Except for the feature ‘Branch aware’ that will be a fixed number when starting the course.  Other quizzing variables  (see post) linked to the quiz level are:

  • cpInQuizScope
  • cpInReviewMode
  • cpInfoPercentage:  appears on the results (score) slide as ‘Accuracy’ ‘percent’
  • cpInfoAttempts: appears on the results slide as ‘Attempts’ ‘total-attempts’
  • cpQuizInfoPassFail: Boolean
  • cpQuizInfoPointsscored: appears on the results slide as ‘You scored’  ‘score’
  • cpQuizInfoQuizPassPercent
  • cpQuizInfoQuizPassPoints
  • cpQuizInfoTotalCorrectAnswers:  appears on the results slide as ‘Correct Questions’ ‘correct-questions’; beware: partially correct questions are seen as correct
  • cpQuizInfoTotalProjectPoints: appears on the results slide as ‘Maximum Score’ ‘max-score’
  • cpQuizInfoTotalQuestionsPerProject: appears on the results slide as ‘Total questions’ ‘total-questions’
  • cpQuizInfoTotalUnansweredQuestions

The Continue button on the Score slide has about the same functionality and importance as the Submit button on quiz slides. That actions specified under Quiz Preferences,  Pass or Fail (after Last attempt on Quiz level) will be done after clicking that button. The pausing point on the score slide is linked with that button. You can move that pausing point the same way as for the quiz slides, closer to the end of the score slide. It is recommended not to have the score slide as last slide in a course, but have at least one more slide. That way you’ll be sure that the results will be transferred to the LMS.

]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/1905639 2022-11-19T14:41:19Z 2022-11-19T14:41:20Z Quiz Basics 2: Submit Process

Embedded objects

In a first article about Quizzes I introduced some terminology and one of those terms is ‘Embedded Objects’: those objects on the quizzing slides and master slides which have no individual timeline, but have functionality built in. Some of those objects can be turned off, using either Quiz Preferences (for global settings) or Quiz Properties for individual slides. Here is an overview of those objects (for quiz master slide MCQ,T/F….), from top to bottom, using the numbering in this screenshot:

  1. Question title: cannot be deactivated. You can edit that title on the quiz slides, do not delete it.
  2. Question: same, change the style if wanted but never delete.
  3. Answer area: compulsory as well. If you expect long and/or many answers, I recommend to make this area as big as possible on the master slide. If you want custom objects on the quiz slide (like an image), free some space by editing the size of this area. For a Fluid boxes quiz slide, you’ll need to add a fluid box for that purpose. More information in Fluidize your quizzes.
    This area is the container for:
  4. Answers: it is not possible to resize the individual answer size on the master slide, only on the quiz slides. Of course you need this object.
  5. Feedback messages: are stacked in the same location (also in fluid boxes, by using a static fluid box). In the screenshot the Review area is also stacked in the same location. It has almost no meaning anymore since it is only used for skipped questions.
    Quiz Preferences offers no way to activate/deactivate the messages, that has to be done with Quiz Properties for the quiz slides.

    1. Correct message: is checked by default for a normal quiz slide
    2. Incomplete message: is checked by default for a normal quiz slide
    3. Failure message: normally set to 1, with the dropdown list you can choose ‘None’. If you have more than 1 attempt on quiz level, you can add up to  failure messages with that same list.
    4. Retry message: becomes available when the number of attempts is greater than  However if you have more than 1 Failure message it will be dimmed.
    5. Partially correct message will appear instead of the Correct message when Partial scores is turned on and the question is not answered fully correct.
  6. Review Mode Navigation Buttons: if you allow Review (Quiz Preferences), it is wise to activate these buttons in the Quiz Preferences. They will only appear during Review, and make navigation possible since quiz slides normally do not have a Next button (and I also recommend no Back button) except when “Submit All” is turned on (will post a future article about Quiz Preferences). Here is a partial view of Settings in Quiz Preferences:

7. Clear button:  can be turned on/off both globally (see the screenshot above from Quiz Preferences, Settings). In the default setting it is turned off. It is possible also to turn on/off on individual quiz slides using th Quiz Properties (see screenshot top right).

8. Back button:  is a bit confusing. You can turn off ‘Allow Backward movement’ in the Quiz Preferences, which will automatically result in having the Back button disappear on quiz slides. However, when using remediation, where you want to send the learner back to a content slide, you have to turn this option on. Having a Back button on a questions slide is not a good idea, since answers are frozen once the question slide is left. Learners cannot re-enter an answer. One exception: when Submit All is turned on (see future article). Even when ‘Allow Backward movement’ is turned on, you can still check off theBack button on all quiz slides with Quiz Preferences, Settings. You can also do it individually using the Quiz Properties for the question slide.

9. Skip button; is turned off by default, can be turned on both globally and for individual quiz slides.

10. SUBMIT button: is the most important object on this slide. There is no way to turn it off, not globally nor individually. It is that button which is responsible fir the two-step Submit process. Remember: quiz slides have a pausing point by default which cannot be turned off (you can move it only with the mouse).

Two-step Submit Process

When the learner clicks the Submit button:

Step 1

Feedback message appears, playhead is not released but remains paused at the pausing point. If you have added slide audio to the question slide and it is not finished, it will continue playing. The pausing point will not stop the audio. Four possible situation in this first step:

  1. There is no answer or answer is not complete: Incomplete message appears.
  2. The answers were totally or partially correct. The feedback message Correct (or Partially correct) appears.
  3. The answers were not correct (partially correct is considered as correct).
    1. If there is only one Failure message and one attempt Failure message appears
    2. If there are multiple attempts which are not exhausted,  and one failure message: Retry message appears
    3. If there are multiple attempts, not exhausted, and multiple failure message: the appropriate failure message appears. Make sure to indicate that they can retry except for the last failure message.

All messages, except the Retry message and the intermediate failure messages (not the last one) should indicate how to trigger the second step. For all types of quiz slides, except the overlay quiz slides in a VR project, that will be ‘click the slide or press Y’.

The goal of this first step is to offer the learner as much time as necessary to read the feedback messages. Some developers don’t like the present workflow, will post some possible tweaks in a future post. Personally I hope that the new workflow for the overlay quiz slides in VR projects, which is more user friendly, will be extended to the other types of quiz slides.

When the user clicks the slide or presses Y:

Step 2

With this step the playhead will be released, same way as what happens with an action when the option ‘Continue Playing the Project’ is activated. It can only happen in two cases: for a correct answer, or for a Last attempt answer.

  • Correct answer: the action ‘On Success’ specified in the Quiz Properties panel will be done. Beware: default action is set to ‘Continue’.  It means that the released playhead has to travel through the inactive part of the slide (the part after the pausing point).  It it is only the default 1.5secs, that may be OK. However if you added slide audio, and forgot to move the pausing point closer to the end of the slide, that may be a long waiting time for the learner. Alternative could be to replace the action ‘Continue’ by ‘Go to Next slide’. In most cases that works fine, some users could have issues in case of low bandwidth and slow reactions of the LMS due to hardware problems. I had that problem in college when too many students were taking the same assessment, due to outdated switches.
  • Wrong, last attempt: the action ‘Last Attempt’ will be done. Same comments as for the Correct answer concerning the pausing point and audio. Look at the screenshot below: due to the audio clip, if you leave the action to the default command ‘Continue’, the learner will have to wait 4 seconds before getting to the next slide. Better drag the pausing point to almost the end, at 4 seconds. You cannot use the Timing properties panel to do so.

]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/1903426 2022-11-14T19:40:59Z 2023-01-20T22:57:53Z Quiz basics 1: Terminology

Why?

Since 2008 I have been blogging regularly about Captivate. The most visited post is a rather old one date October 2011. It is labeled  ‘Question Question Slides‘ and believe me, still has daily views.  It is the reason why  I consider Quizzes as one of the three main topics for any Newbie in ‘Three Skills to Acquire‘.  Since 2011 quite a lot has changed in Captivate, although the basic design of quizzes is still the same.  Many peers have asked me in the past to publish a book about Quizzes  (could easily fill a book if it included custom questions). From what I feel in the community, a book is not at all the appropriate medium anymore. However I want to publish a sequence of articles about Quizzes, as I did for the Timeline (another stumbling block), with up-to-date information. It is important to understand the terminology, which is a problem when trying to answer questions everywhere: there is no ‘official’ glossary for Captivate and lot of terms are used in a haphazard way. To avoid any misunderstanding in future posts about Quizzes, I want to start with explanation of the different terms concerning quizzes. Some are ‘official’ also to be found in the Help documentation, some are terms I am using as well.

Drag&Drop will not be included in this sequence of articles, it is not following all the rules of the normal question types

Quiz Menu

Although you can insert Question slides and Knowledge Check Slides from the big button Slides, the place to be is the Quiz menu:

The red box shows the 4 possible choices:

Question slide

Is based on a dedicated Quizzing Master slide, depending on the type: True/False, Multiple Choice, Fill-in-the-Blank, Short Answer and Sequence have the same master slide, Matching, Hotspot and Likert have each an individual master slide. Beware: Likert type cannot be used in a responsive project, whether Fluid Boxes or Breakpoint workflow is used.

An inserted Question slide will have these settings by default (except Likert which is set to Survey):

  • Graded
  • 10p score, no penalty
  • 1 attempt
  • actions Success/Last Attempt are set to Continue
  • pausing point at 1.5 secs
  • 1 Failure message
  • Reporting turned on
  • Included in Quiz Total

Most settings can be changed. Only one type has the possibility for partial scoring: MCQ with multiple correct answers. MCQ with one correct answer has the functionality of Advanced Answers (message/action). If number of attempts is higher than 1, you can have up to 3 Failure messages.

Question slides have a dedicated  category of system variables, read-only. More information in this post

You can use the On Enter event of a question slide to trigger a custom action, but not the On Exit event. Question slides, like interactive objects have a Success and a Last Attempt event which can be used for actions.

Random Question Slide

Is a placeholder slide, which will be replaced by a random question from a question pool. Pool questions are based on the same quizzing master slides as normal question slides. On Enter event can be used on slides in the pool, not on the placeholder slide. The same quizzing system variables are used for random question slides as for the normal question slides.

You find the option for Random slides also in the dialog box ‘Insert Question’ which you open with Quiz, Question slide.

More details about this type in Random Questions, Do’s and Don’ts

Pretest Question Slide

Slides are based on the same master slides as the normal question slides. They have a special bunch of system variables, will not be included in the variables used for question and random slides. The Pretest slides have only one goal: to have navigation after the pretest based on the results. For that reason you set up a Pretest action. These special slides have limitations:

  • They need to appear in sequence at the start of the course.
  • All free navigation will be disabled: both by playbar and by Table of Contents (reason is that learner cannot go back to the Pretest slides).

Knowledge Check Slide

This new type was introduced with Captivate 9.  Likert questions nor random questions can be used. They are not scored, will not be present in the quizzing system variables nor in Review/Retake. They can be recognized by a special icon in the Filmstrip. This is the default setup:

  • Not graded
  • No score, no penalty, partial scoring in MCQ impossible
  • Infinite attempts
  • action Success is set to Continue
  • pausing point at 1.5 secs
  • No Failure message
  • No Reporting

Some featured can be changed: you can limit the attempts and will then get a Last Attempt action. You can turn on Failure message(s).

A complete comparison with normal quiz slides can be found in Tips for Knowledge Slides

TIPS:

  1. It is possible to copy/paste normal question slides in a question pool  to reuse them as random slides.
  2. It is possible to copy/paste a question slide from a pool as a normal question slide in a project.
  3. It is impossible to convert a normal quiz slide to a Knowledge Check slide nor to a Pretest slide.
  4. It is impossible to convert a Knowledge Check slide to a normal quiz slide nor to a Pretest slide.
  5. It is not possible to convert a Pretest slide to a normal question slide, nor to a KC or random slide.

PS: KC slides can also be used as Overlay slides in an Interactive video. You’ll find more details in Tips for Interactive Video.

Question slides can be used in 360 slides and VR projects. Styling of those slides is limited at this moment, cannot be based on a custom theme.

Import GIFT file

Instead of adding the question/answers in the individual slides, Captivate allows two alternatives, one of them being GIFT import. Moodle developed this ‘language’, you can find the full documentation here. Use a text editor which allows to publish to non-formatted txt files. This file can be used to insert all types of questions in Captivate with the exception of Likert, Hotspot and Sequence types. There are also workflows which start from an Excel file.

Lot of features are supported: for MCQ with multiple correct answers you can set up partial scoring, you can add feedback messages etc.

GIFT import is possible for normal question slides, for slides in a question pool. It is NOT possible for Pretest slides, nor for Knowledge Check Slides.

Especially when dealing with big amounts of question slides, and/or many pools I like to keep the questions ready in a GIFT file as backup and for eventual editing

Import CSV file

New import workflow appeared with CP2019: use of an Excel template which will create a CSV file that can be imported. You’ll need two files which are stored in the GalleryQuiz under the installation folder of Captivate. I published a small article about this workflow. Using the macros in CSVQuestionsCreationMacro file is pretty straightforward and documented in this tutorial by Dr. Pooja Jaisingh.  Same question slides are supported as for GIFT import (T/F, MCQ, Matching, FIB and Short Answer). There are some limitations, reason why I still stick to the GIFT alternative:

  • You cannot indicate partial scoring for MCQ with multiple correct answers
  • CSV file not really suited as backup, since you cannot edit a question once it has been added to the CSV sheet
  • Got some errors when trying CSV editing with importing to an Excel file, and exporting to CSV. File was not accepted by Captivate.

Quizzing Master Slides

All types of question slides described above are using the Quizzing Master slides. Each theme in Captivate needs at least 6 master slides, whether it is a blank (non-responsive) project, a Fluid Boxes (responsive) or a Breakpoint Views (responsive) project. Blank master slide is always required (for PPT import an software simulations), 4 question master slides and one score master slide. The Blank theme used to show this minimum set, but for some reason in CP2019 a Title master slide was added (?) which I deleted in this screenshot.

I will focus on editing those quizzing master slides in a later article. In this introduction I just want to point out some very special aspects of those slides.

Timelines

The timeline of the quizzing master slides, and the result master slide is very simple: you see only the slide timeline. There are no placeholders, no object timelines like you normally find  on content master slides. However when you look at the content of those master slides, you see a lot of objects!

You don’t see any pausing point on the master slides, not for the questions, nor for the score master. However when you insert a question slide (any type) it gets automatically a pausing point at 1.5secs. Same for the Score slide.

When you select an object on the master slide (button, a feedback, Question, Answer area) they still don’t show a timeline. Their properties will appear. I will point to the objects in a question (master) slide or a score (master) slide as:

Embedded Objects

My definition: objects that do not have an individual timeline, not on the master slide nor on the slide itself. Those objects have functionality built in, which control the workflow for the slide. I talk about the Submit process (see future article), the appearance of messages, the inclusion in quizzing system variables etc. Just one tip: be careful when dealing with Embedded objects.

Those objects have absolute priority in the z-order, also known as stacking order. They will always appear on top of extra inserted custom objects.

Puzzling: normally the only interactive object allowed on a master slide is a shape converted to a shape button. However on the quizzing and score master slides the used buttons are all Transparent buttons.

When creating a question slide or a score slide, not all objects will appear. It depends on the setup in Quiz Preferences (see later article), the Quiz Properties of the slide and… on the situation. The Review Navigation buttons (with the double arrows) on quiz slides will only appear during Review. The Retake button on the score slide can only appear if more than one Attempt on Quiz level is allowed.

Next?

So much has to be told about Quizzing, always more than I expected. In future posts I will try to write about:

  • Two-step Submit process
  • Tweaking/customizing that process
  • How to handle Embedded Objects
  • Quiz Preferences
  • Editing the Master slides for quizzing
  • (Setting up the Pretest condition)
  • Audio on Quiz slides
  • Custom objects on quiz/score slide
  • Custom score slide
  • Scoring for KC slides
  • ….

I am sure this list is not complete. If you want to add more ideas, feel free to comment.

]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/1884546 2022-09-29T16:32:41Z 2023-05-17T14:19:27Z Randomizing in Captivate

Intro

Randomizing exists in some limited situations in Captivate:

  • Question pools allow to add randomized quiz slides to a project.
  • Shuffle feature for several question types can be seen as randomizing.

However in all other situations you need to use JavaScript to get a randomized number (or text). This short blog is meant as an answer to a user request in the eLearning community, to be found under this link. In my blog you will find multiple examples of randomizing for games. This is a very simple example since the user only wants to have a random card chosen from a deck on clicking the deck. A second click on the deck needs to flip back to the cover of the cards.

Example file

There is only one slide in this project besides the Title slide. The three (tarot) decks are identical, have 14 cards. Try it out. You may get some ideas how to use this workflow for games. In the future I will post more examples of this workflow in a bigger tutorial project. 

This example can be watched below (fixed size) or you can click this link for a rescalable version.


Step-by-step workflow

The timeline of the tarot slide shows the three decks. Each deck has a Click box on top of the deck, which will trigger an advanced action with embedded JavaScript. I hear you exclamations! Why not use the deck itself (PNG image) as interactive object. It is impossible because JS is used to change the state of the object, and it is impossible in that case to use the image itself as button. Of course that is annoying, because a responsive project with Fluid Boxes will not allow stacking of the click box with the multistate object in the same location. You would need a button in another location. For a non-responsive project (like this example) it is not a problem.

Multistate object (deck)

Decks are multistate objects with 15 states. The Normal state shows the cover. Due to the script the labeling is important for the other custom states. They are all labeled Cardx  where x is a number corresponding with the rank of the card. The three decks in the example are identical, but you can have decks with a different number of cards, just use the same logic for the numbering. Look at the Object state panel for Deck1:

Variables

In Captivate I need only one variable for each deck to follow up the status: is it showing the cover, or a random card? Two possibilities means that I can use a Boolean variable. When the cover is visible, the variable has the value 0, for a random card it has the value 1.

Advanced Actions

Click boxes trigger a conditional advanced action. Here is the action for the first click box (CB_1) over Deck1:

The Boolean variable v_1 is checked. If it has the value 0, a random card needs to be shown which is done by a JS script (see below), and the variable is toggled to 1. If it has the value 1, the cover (which is the Normal state) is shown. 

For the second and third deck, the variable and the name of the deck need to be edited.

Javascript

The used trick is to create the name of the state by concatenation of two strings:

  • First string is always 'Deck1'.
  • Second string is a random number between 1 and 14, converted to string.

I have explained in depth the use of Math.floor(Math.random()*(max-min))+min) in an older blog post:

Playing-with-numbers-part-1

That random number is converted to a string with a JS method. Result of the concatenation is the name of one of the states in the deck multistate object. 

For the second and third deck, the deck name need to be changed in this script. If you do have more or less cards in those decks you need to edit the maximum number (here set at 15).

More ideas?

This basic example may have ignited your creativeness? What about creation of a jackpot game? A funny mathematics exercise for your kids? A board game where you use a dice? 

For this use case it is impossible to create a shared action. One of my long-standing feature requests for actions is the possibility to generate a command using concatenation. A second one: being able to change a state based on a variable.






]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/1876148 2022-09-08T09:19:22Z 2023-01-11T17:07:06Z Comparing Advanced and Shared Actions

Intro

If you have followed me since a while, you know that I am a great fan of Shared actions.  However I am aware that many developers seem to be afraid of those shared actions. In this post I will try to demystify the 'shared action', and answer some questions.

First of all: the biggest advantage of a shared action is its reusability. Whenever you need an action which will be used multiple times in a project, or which you plan to use in more than one project, it is worthwhile to consider the use of a shared action. Here are some other reasons. You can skip this part and come back to it later:

  • When used within one project, you are using instances of the same shared action. If you prefer using duplicated and edited advanced actions the file size will be bigger. It can be compared with the use of multiple instances of the same graphic/audio clip.
  • Shared actions appear in the Project Library with all the functionalities of Library assets: how many times uses, on which events etc..
  • You can transfer an existing advanced action to a new project using copy/paste of the object triggering the action: a button, click box, TEB (success/Last attempt events), slide (Enter/Exit event). If variables are used in the advanced action, they will be created in the new project. However, in many cases, commands in the advanced actions will revert to Continue if what they are referring to is not available in the new project. Example: missing slides for navigation commands, missing states or even multistate objects...  
  • Transferring a shared action to a new project is a breeze: drag the action from the original Library to the Library of the new project. Variables which are not used as parameters will be created (similar to copy/paste for advanced actions). Since the shared action is not connected with any event, you don't have to bother about having everything in place before transferring the shared action.
  • There is no built-in way to document Advanced actions in Captivate. A shared action however allows to add a description to the action and to the parameters if any are used. 

There are some limitations to shared actions:

  • It is not possible to trigger a shared action from a hyperlink.
  • You cannot attribute a shared action to several events at once, as is possible for an advanced action.

Beware: not all advanced actions are suited as shared action. In a recent post about 'Hint after x failed clicks' I explained a use case which was meant as introduction for Captivate users new to variables and advanced actions. You may have a look at that first blog post:  https://blog.lilybiri.com/automatic-hint-after-x-failed-clicks

Conversion to shared action

It is a good idea to create and test the action as advanced action before creating the shared action. This was the advanced action  created in the mentioned blog post, triggered by the Success event of the  'wrong' hotspots (5) in the example:

Two user variables were used: 

  • v_attempts tracks the number of clicks on the button/hotspot
  • v_failure is used in the Failure feedback message and allows to change the content of that message. The default failure message will be replaced by a Hint message after the defined number of clicks.

First version Shared Action

Open the advanced action in the dialog box, use the button Save as Shared action, and this dialog box will appear:

In the screenshot you see that I have filled in the description. It is important to do so, try to explain in short sentences what the action will do exactly. It may seem a loss of time, but if you reuse the action a couple of months later, you'll understand why I emphasize this.

In the main part you see the 'parameters', and in this particular case all of them show the green check mark. This means that you can save the shared action as it is. Result will be that the parameters remain static, cannot be changed when you attach the action to an event.  They will not need a description neither. Comparing with the advanced action:

Pro

  • The description of the action, which is impossible for an advanced action.
  • Its appearance in the Project Library with all the functionality of other assets.
  • For reusability in another project: you can drag the shared action from this library opened as external library to the Project library of the new project. For an advanced action you would need to copy/paste one of the wrong hotspots to the new project.

Con

  • You cannot attach the shared action to all wrong hotspot events at once, you need to do it one by one. The advanced action could be attached in one workflow by selecting all the wrong hotspots.
  • For another hotspot slide in the same project it will be easier to create a duplicate advanced action, and edit the Hint text (value for the variable v_failure).

Second version Shared action

In the first screenshot I marked two parameters with a question mark:

  • Parameter '2': literal indicating the number of required wrong clicks before showing the Hint.
  • Parameter 'Click on the icon 'Responsive project'': the new value (literal) for the variable v_failure to replace the failure text by the Hint text.

You can make the static parameter dynamic by clicking the check box, and entering a description for the parameter. To me the most important candidate is the Hint text. Making that parameter dynamic, means that you can enter a different Hint text for each new attachment of the action to an event. Beware: the correct checkmark will only appear after confirming the description of the active parameter:

This makes the action flexible: you only have to enter the Hint text as parameter whenever you attach the shared action to an event.

Pro

  • Besides the description of the action, the meaning of the parameter will appear whenever you apply the shared action.
  • Its appearance in the Project Library.
  • Reusability in any new project remains.
  • File size will be lower compared with using duplicate advanced actions.
  • You can edit the Hint text for each instance.

Con

  • You cannot attach the shared action to multiple events at once.
  • You need to fill in the text parameter with each attachment (copy/paste is possible)

Third version Shared action

You can make the action even more flexible by declaring the number of wrong clicks to be a dynamic parameter.  Using that shared action you'll be able to change the number of wrong clicks before showing the Hint instead of the Failure message.  Like increasing the number for a more complicated hotspot slide. I don't have to explain this screenshot anymore:


More tips

I may write out a third blog about using this shared action as template for advanced actions, including possible enhancement by adding graphical (audio) assets to the Hint text message.

If you want to learn more about using Shared actions, please have a look at my 'crash course'. 

Shared Actions : intro

Lesson 1 (video)

Lesson 1 (step-by-step)

Lesson 2 (video)

Lesson 2 (step-by-step)

To circumvent the "Con" of shared actions not being able to apply to multiple events at once, remember that you can easily create an advanced action from a shared action. Here is an example:

Using Shared action as template



]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/1873284 2022-08-26T19:12:01Z 2022-09-07T18:55:07Z Automatic Hint after x Failed clicks

Intro 

This short blog post is created to answer a question in the Adobe forum about clicking an interactive object with multiple attempts. After two wrong clicks, the Retry message should be replaced by a Hint message. There are multiple workflows possible, but I tried with this simple solution to use as much of the existing features as possible.  The Hint will be only text. A more elaborate solution could be a Hint where the text is accompanied with a highlight box and/or other graphical elements. If useful, could create such an example as well. This one is meant for relative new users of Captivate, hence the step-by-step workflow.

Example

Watch this published 3 slides project, using this link (for a scalable version).



On the second slide you'll see the results of the workflow: learner is asked to click the correct button. Number of attempts was set to Infinite but could also be lower. First two wrong clicks lead to a Retry message, on the third wrong click the Hint message replaces the Retry message.

Workflow

Slide setup

Have a look at this screenshot, where the slide (2) and its timeline are visible:

The six interactive objects are shape buttons (Alpha and Stroke both set to 0) over the buttons of the image. One of them deserves the correct click and the other ones are wrong choices. All buttons have the default pausing point at 1.5secs. They will all trigger an advanced action, which means the slide will remain paused. You see the Correct feedback message, using the Default Success Shape style (messages are no captions, but shapes).

Variables

The workflow needs setting up two user variables using the Project menu, option Variables:

  • v_attempts will track how many times a click has been done. Its default (start) value is set to 0. Its value will always be numerical.
  • v_failure: will have a text message. In the screenshot of the variables dialog box you see the default value. However it is not really necessary to define that default value if you use the Reset action described below and triggered by the On Enter slide event. 

The first variable is easy to understand. The variable v_failure will be used as placeholder in a default feedback message. That makes the message 'dynamic': by changing the value of the variable, message text will change. This is the only way to achieve such a change, because those default feedback messages do not support multiple states (although the States button is active, you cannot add states). You'll learn which message to use in the next part.

Events and Advanced Actions

As mentioned before, I did set up the 6 shape buttons with Infinite Attempts. This means that they are left with only the Success event, which occurs on clicking the button. Only the Success message will be necessary. That may seem illogical, is linked with the Captivate meaning of Success and Failure. Success means the button has been clicked, Failure means the click happens outside of the button. You understand that clicking outside of a button is useless here.

Setup SBCorrect

Clicking the Correct button should result in navigation to the next slide with the simple action 'Go to Next Slide' (happens to be the default simple action). That navigation will not happen immediately after clicking the button because the option 'Pause for Success/Failure Captions' is activated. Display time for those messages (because they often are not in a caption, but in a shape) is 3 seconds, can be changed in the Timing Properties. See the full setup in this screenshot:

The correct feedback message can be edited on the stage, uses the Default Success Shape style.

Setup 5 SB_Wrongx 

Dynamic Message

Clicking the Wrong buttons will also show the Success feedback message, and you'll get 5 of them. For the learner they should look like Retry (or Hint) messages, so I choose another Shape style for these messages (see screenshot Slide setup). Since they are linked to their buttons and all appear in a different location I also used the Align, Align and Resize to the same size from the right-click menu after selecting the 5 messages.

The trick here is to fill those messages with the same user variable v_failure to replace the normal success text. Do this by using the X-button in the Character part of the Properties panel of the message while in editing mode:

That X-button will show the 'Insert Variable' dialog box. User variable is the default choice, you just need to choose v_failure from the dropdown list. Important: the default 'length' is set to 50 characters, if you expect a longer text increase that amount. In this screenshot I increase it to 100:

Advanced Action FailureAct

This is a screenshot of the Preview window of that action:

You see that this action has two decisions:

Decision 'Tracking' is non conditional. It consist of one Increment action for the variable v_attempts.

Decision 'Message' is conditional, has only the THEN part, not an Else part. When the attempts are greater or equal to 2, the text in the variable v_failure is changed to the Hint text. Of course it is possible to change that amount of attempts if wanted.

EnterSlide Action

If you allow the learner to revisit the slide, and want to have the identical situation of the first visit, it will be necessary to Reset the variables. You'll need this non-conditional advanced action, to be triggered by the On Enter slide event:

Both variables v_attempts and v_failure are reset to their original values. Because an advanced action is not releasing the play head, I added Continue. In this example it is not really necessary, but it would mean that the play head remains in the first frame and is not advancing to the pausing point at 1.5 secs. It is possible with other setups, like having an effect or animation that you need that release of the play head.

]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/1871956 2022-08-24T08:50:56Z 2022-12-30T08:34:48Z Video Demo - Tips

Intro

You will not find in this blog post details about the basics of creating a Video Demo (cpvc-project) in Captivate, just some practical tips which could make the workflow easier. 

Since I rarely use the possibility to capture from webcam along with the screen recording, you'll not find tips about that neither. Many users reported issues with webcams or cameras. Sorry you'll not find a solution for those issues neither.

Tips for Preparation

You'll need a solid 'storyboard', similar to what you need for a software simulation. My preparation always includes:

  1. In Preferences, Recording, Video Demo set the bitrate to 32-bit instead of 16-bit. You could also change the location of the temporary working folder if you don't have enough space in the default folder under AppData. In most cases you will want to keep the default choice for capturing the mouse tracks:

    BTW this setting will also improve the quality of Full Motion Recording slides in software simulations, although it seems to be only for Video Demo.
  2. Recording requires, similar to software sims, to see 1px/px. That can be done by editing the AdobeCaptivate.ini file, DPIAwareness setting as you are invited to:

    However I prefer the alternative: lowering the screen resolution until I can set the Display Resolution to 100% and still be comfortable to manage Captivate. 
    Example: laptop used has a recommended screen resolution of 3840x2160px and a display resolution of 225%. To be able to work comfortable with Captivate at 100% I need to lower to HD (1920x1080)

Tips for Recording

As mentioned at the beginning, I will focus on screen recording, not webcam recording.

  1. Do not try to record a complete video at once, but split it up in manageable chunks. In most cases I record only a couple of minutes in one session. After recording the first part, I will use the editor to clean up, and eventually replace the audio clip (see tips about editing). Goal is to finalize the real duration of that part before adding the next recording. To add the next recording you need to move the play head to the end of the first footage and start the recording using the menu Insert, Video Recording:

    Tip: If you plan to use the recording to create an interactive video later on, you can use planned bookmarks or overlay slides to choose how to split up in chunks. 
  2. It is important to record in an appropriate rhythm. For that reason I always opt to capture video and audio at the same time. In most cases the narration will define the wanted rhythm. That narration can be a 'draft' version which you'll replace later on by a proper recording (see tips about editing). Try to make the mouse movements as swift as possible, and try a narration speed convenient for a one to one talk.

Tips for Editing

The Video Demo editor has a lot of features, and editing is non-destructive. Although it is possible to do some editing in specific editing applications like Premiere Pro and Rush (see later), those applications need a published MP4-file. It is important to do use the editor before switching to those other applications.

  1. When previewing the video you'll often find the mouse paths too boring because they are too slow. In that case I often prefer to hide the path and use only the the marker for the mouse click itself.

  2. Although you can edit the audio narration clips in Audition or in Captivate, it is possible that you want to replace the 'draft' audio by a more professionally recorded version. This is possible using either the Audio menu, Import Video Narration. However, in that case you get the full audio clip. For that reason I prefer to use the Edit options in the Library on the individual audio clips of each part. That way you'll keep even the original WAV files on top of the 'edited' clips which can be new recordings. Look at this example of a video which had 7 parts. Some audio clips have been edited, others have been replaced.
  3. The object styles are available in Video Demo projects. Use them to create proper styles for the static objects you want to insert: highlight boxes, shapes, captions.
  4. If you use text (captions or shapes) you don't have to bother about the used fonts, as in normal cptx projects. ( Fonts in Captivate). It is perfectly possible to use a cool system font.
  5. Careful with transitions which you'll need between the 'chunks' of your video. You can also bridge a gap between clips using a static object which can have transitions (no Effects).

Extra tips

Video Demo Slides in Software sims

Software simulations often need Full Motion Recording slides for mouse movements. Those slides are short videos, which are still based on the original SWF technology (FLV slides). Although they will be converted to MP4 when published, several developers have reported issues with the conversion. You can avoid those problems by replacing the FMR slide by Video Demo slides. The easiest way is during recording:

  • When you expect a FMR slide to appear, stop the recording.
  • Use the Slides button to create a Video Demo slide, the resolution will be set automatically to the chosen resolution at the start.
  • After the creation of the Video Demo slide, continue with the software simulation. 

Final touch with Adobe Premiere Rush 

The Video Demo editor has great features for mouse management, Pan and Zoom, inserting static objects. However if you want to uplevel your video with great intro and outro, you need a real video editor. This can only be used with published MP4 footage. I used Premiere Pro in the past, but always found it rather challenging for the small improvements to the videos. Adobe launched Rush a couple of years ago, available for phones, tablets and desktop. It has exactly the amount of features needed to embellish your Video Demo projects. If you have a license to Creative Cloud, give it a try:

Adobe Premiere Rush

Interactive video

It is no secret that I am not a big fan of passive video, because due to my decades of experience with coaching/training/teaching interactivity is my first goal.  A recorded Video Demo is perfect to use as Interactive Video to enhance its learning efficiency. It is not offering a big amount of interactivity but way better than passive video. Here is an example:
Custom Play/Pause button



]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/1857076 2022-07-20T18:14:15Z 2023-01-12T14:12:54Z Timer Learning Interaction - use case

Intro

That interaction is meant in the first place to show the learner the exact time he spent on a course. In that situation the interaction is often timed for the rest of the project. However it can be used in other situations. This blog is due to a user request on the Adobe forums, have a look at this link. Summarized: the course should be exited automatically when a slide is displayed longer than a certain time, because it means that the learner probably disappeared without closing the course. That caused issues due to the LMS when retaking a new session for that course. 

Example file

I used one of my previous projects to show the result of the proposed workflow. In this case the course will be exited on each slide if it is displayed for more than 3 minutes. Of course it is perfectly possible to edit that duration, or even have a different duration for each slide as you'll see in the described setup workflow. Try to be patient on at least one slide to let the 3 minutes elapse and see the course automatic exit. You can open this course in a scalable version using this link, or you can watch the embedded non-scalable one below.



Setup

Basics Timer interaction

When you insert a Timer interaction, you'll have to define the properties in this dialog box:

You need to define the amount of time (here 3 minutes 0 seconds) for the timer, and whether you want to count down or up. In a normal situation you can have a message popping up after the end of the counting, but in this case it was not needed. I marked three fields in this screenshot:

  • Background: I unchecked this option which would show the image of a clock. Since the timer should not be visible for the present use case I preferred a transparent background. 
  • Variable: is an optional field, but was needed in this case(see below). That variable is a Boolean with only two possible values (0/1). You need to define that variable in Project, Variables. It was labeled v_timer in this use case. Its default value will be 0, and toggled to 1 when Timeout occurs.
  • Jump to Slide on Timeout: which slide is not important, but you can use the On Enter event of that slide to trigger an advanced or shared action. As you'll see in the setup, I used a very short dummy slide in this case.

Even after closing the dialog box, you can always reopen it using the pencil icon in its Properties panel:

Setup workflow

Variable: Although each slide will have an instance of the Timer Interaction, the created user variable v_timer (see screenshot under Basics) can be used for all instances. The value will automatically be reset to 0 on a slide with a new instance of the interaction. It will be toggled to 1 only when the Timeout occurs on a slide, and then the course will exit. Variables do not keep their value when closing a session.

Timing Interaction instances: insert an interaction on the first slide where you want to enable the timeout, and resize it and set up the properties as indicated in the screenshot under Basics. Since its visibility is not wanted, there are two ways to make this possible. Remember that the background already has been made transparent (see screenshot of the dialog box):

  • If the slide background is a solid color, you can use that color for the Text in the interaction:
  • It is not necessary to have the complete interaction on the slide, you can move it partially to the scratch area so that the numbers (text) is not visible on the stage. That will be necessary if the slide background is not a solid color:

You can copy/paste the interaction to the other slides without any problem. All fields  will be the same. Only two possible exceptions which can need editing: the text color field (if using the first method above) and the time duration if you don't like to have the same timeout settings for each slide.

Dummy slide: in this case I used a very short slide at the beginning of the project, duration = 0.1second. It is not really necessary to use such a slide, you can choose any slide of the project. These are the reasons for my choice:

  • The On Enter event of this slide will be used to trigger an advanced action. For most slides in my projects I already have a dedicated On Enter action to reset situations. If you need to add another decision to those actions, it will be different for each project where you want to use this workflow. The Dummy slide can be copied to any project, including its advanced conditional action.
  • The first slide will already be rendered in the project whatever the slide used to navigate back to this slide. That may speed up the navigation process. However: if you have quiz slides, you need to enable Backwards navigation in the Quiz Preferences. 

Advanced action

The On Enter event of the Dummy slide triggers this advanced action:

Since this is the first slide, it has to continue to the next slide on first visit. That is the reason for the conditional action, because on first visit the timer variable v_timer will have its default value (0). Only when the slide is visited from another slide where timeout has occurred, that variable will be set to 1. 

Before exiting the navigation is returned to the "last visited slide" in order not to mess up bookmarking by LMS: last visited slide (bookmarked) will be the slide where timeout occurred. If you don't want bookmarking by LMS, you can delete that command.

Reusing workflow

User insisted on a workflow that was easily to be reproduced in multiple projects, both responsive and non-responsive. 

For another non-responsive project:

  • Copy/paste the dummy slide and use it as first slide.  An extra advantage will be that the used variable v_timer will be created in the new project.
  • Copy/paste the learning interaction. You may need to edit the timeout duration and eventually the text color to adapt to the colors of the new project.
  • Now you can proceed as described: just copy/paste the interaction to all the slides. Do not forget to check Quiz Preferences to allow Backwards movement.

For a fluid boxes project:

  • Copy/paste the dummy slide, do not bother about fluid boxes on that slide.
  • You'll need to create a fluid box for the Timer interaction, it is not possible to copy it from a non-responsive project. Edit the interaction as needed, the user variable has been created from the dummy slide.
  • It is recommended to create the fluid box on the used master slide(s), because you'll need to copy/paste the first instance to the same fluid box on each slide. 
]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/1836117 2022-06-24T19:12:10Z 2022-06-24T19:12:10Z Button states - Basics and Tips

Intro

Recently I answered several questions about button states, which proved that some information is missing. For that reason I checked the official Captivate document, and indeed to me it is not at all complete especially for buttons which are the most used interactive objects. You can have a look:

Work with multi-state objects in Adobe Captivate

Some examples: the InBuilt state 'Visited' is not mentioned at all. I couldn't find any information about the lock of InBuilt states for buttons and how to circumvent it. The recent added button types - SVG and Bitmap images - are not even mentioned. What is the meaning of the blue and red selection rectangles in button state objects? Several years ago I published an extensive blog about the InBuilt states for Drag&Drop objects (Inbuilt D&D states) to fill in gaps in the Help document.  With this blog I will try to summarize tips and workarounds for InBuilt states for buttons. After a short recapitulation of typical features of Button states, you'll get some examples.

Typical features

InBuilt states

Buttons of any type have by default three InBuilt states: Normal, Rollover and Down. Those three states are part of the object styles for text buttons, image buttons, transparent buttons and shapes (because they can always be converted to shape buttons). However no object styles can be created for bitmap images and SVGs used as buttons, the most recent types added in version 11.5. 

Less known is the fourth InBuilt state: Visited, probably because you always need to create that state. It cannot be included in the object style for the four mentioned button types neither which is a pity. Audio can be attached to the Visited state and Normal state, while that is impossible for the Rollover and Down state

InBuilt states will appear in specific situations. Rollover when hovering over the button, Down while button is pressed, Visited after the button has been pressed and released. However the Visited state can also be set using the Change State action which is impossible for any other InBuilt state (for buttons and D&D objects). Like with custom states, you can add Audio to the InBuilt states. Here are two tips based on that knowledge:

Tip 1: The Down state will disappear when you release the button. If you want to keep the down state after release, use the Visited state, looking identical to the Down state. This is valid for both responsive and non-responsive projects.

Lock Size/position

The size and position of the button is the same for all InBuilt states, based on what you designed for the Normal state. That is the reason for the lock symbol which you see on the stage when Rollover, Down or Visited are selected. 
The Normal state defines the clickable area, hence the Lock symbol. For all buttons, except the SVG used as button, this will always be the bounding box of the button. You can always edit or replace the content in a state but that content will be rescaled to the bounding box defined in the Normal state. In the example screenshot that content was a SVG where the clickable area was kept to the bounding box. That vector image type always keeps its height/width ratio. If you want to use another SVG in the Rollover or Down state, which needs more space, be sure to create a bounding box which is bigger than what is needed in the Normal state. Here is an example, the SVG in the Rollover state is wider, so the bounding box in the Normal state has a larger width.
In this example a different SVG was used in all the states. You cannot replace a SVG by a bitmap image, each replacement needs to be of the same type.

Tip 2: (answer to this thread in the eLearning community: Word Search) to create a highlight appearing after a click, use a shape button with 2 (or 4, the Rollover and Down are not important) states, one is the Normal state and the shape has no fill nor outline, the second one is a custom state where the shape has an outline. Use the action 'Go to Next State....' for that button. First click will show the custom state (outline), second click will revert to the Normal state.

Extra objects

Contrary to audio which can only be added to the InBuilt states Normal and Visited, you can add extra objects to all InBuilt states. However this is only possible in non-responsive (Blank) projects and in static fluid boxes. Normal fluid boxes do not allow adding extra objects to a state (due to the stack prohibition). 

This aspect opens a lot of tweaking possibilities. Those extra objects are not locked, nor do they need to be of the same type. Contrary to the locked button states which have a blue outline marker, extra objects will have a red outline marker (see screenshot under Tip 3). There is no real limit to the number of objects you can add. Whereas audio cannot be added to Rollover or Down states, you can add extra objects to those states.

Tip 3: Create a tooltip for a button by adding a text (or other object) to the Rollover state.

Tip 4: Quick Click/Reveal workflow, using a button with a custom state derived from the Normal state but with the Reveal objects added to it. Use 'Go to Next State' for that button, and you have a toggle button, which will hide the revealed objects when clicking again. When using a variable as explained here, you have even more control.

Tip 5: Can you increase the size of a shape button in Rollover state, was another recent question? The forementioned trick with a bigger bounding box in the Normal state is not functional in that case. Here is another possibility:

  • In the Rollover state make the shape button invisible. Depending on its setup this means Alpha for Fill set to 0, border width set to 0 and eventually take out the text.
  • Add a bigger image of the shape button to the Rollover state and align it as wanted.

Of course you can this also apply on the Down state and/or with a smaller version of the button, see screenshot:

Tip 6: Starting with an invisible Normal state for a shape button (Alpha and stroke set to 0) and adding an object to that state within the bounding box of the shape button, allows you to create a rotating button. A full description of the workflow can be found in this blog post. Of course this means the clickable area will be greater than the image itself, but most learners will not detect that incongruity.


Conclusion

You'll for sure know about more examples to use button states in a creative way. Feel free to post your ideas in a comment, always appreciated.

]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/1816033 2022-04-08T13:03:19Z 2022-09-30T06:14:18Z Fractioning (custom) motion paths

Intro

Motion effects can be customized in many ways. Pausing Captivate's timeline will also pause automatically any effect if it is not finished. This feature can be used to make boring slides more engaging. To see what I mean, have a look at this example file. It has three slides using that approach:

  • Business Model: has a simple left to right motion path use on a cover shape to deploy an infographic sequentially.
  • Career Steps: uses a custom polygon path to have an animated avatar and discovering states in a multistate object
  • Captivate Hurdles: has a custom curved path, and uses also multistate objects.

You can watch the example file full screen by clicking this link.

Or have a look at this embedded example:


Workflow

Steps

Each of these three steps will be explained in detail below:

  1. Create the motion path, and edit its duration taking into account the number of wanted fractions.
  2. Create the button and its advanced action, which will have two decisions:
    1. Decision 1 will manage the motion and pausing, and a tracking variable if you want a second decision to be done when all parts have been deployed. This decision is non-conditional
    2. Decision 2 will be done when the path has ended and is conditional
  3. Test the interaction, it will probable need tweaking the path length and fraction times. Moreover if you allow to revisit the slide, you may need an On Enter action to reset the situation.

The detailed explanation will be done using the first example ‘Business Model’ . Explore its timeline:

Slide background is a a shape filled with a gradient. That shape was duplicated to be a cover, which is stacked on top of the Infographic (with the images) and the Next button. Motion effect will be attached to that cover shape. On top of the cover you’ll see the Play button (no pausing point), title and instruction text. The Next button has a pausing point which needs to be after the end of the motion effect.

Step 1: Motion path

The effect applied to the cover is a simple Left-to-Right motion path. It has no easing because easing would be applied to the start and/on end of the complete path, but you’ll use it in fractions. This linear path will be cut in 6 parts. I used a vertical guides grid to visualize the 6 fractions, and make sure that each guide is in between two images. Have a look at this screenshot, showing the guides and their setup (using View, Create Multiple Guides):

Motion path  is visible on the stage with end and start points. Those points are always connected to the center of the bounding box of the shape. The start point is at 1024/2px = 512px because the project width is 1024px. You need to extend the length of the path by moving the end point horizontally (keep SHIFT key pressed) to the X coordinate 512+1024px = 1536px. For that reason I added another vertical guide at 1536px. Turning the snap on for the guides helps to position the end point. See screenshot:

For the duration of the Effect, start from the time to use for each fraction. I found that using a time between 1 and 2 seconds is fine. As you can see in the timeline screenshot above, for this slide a duration of 1.5secs was chosen, leading to the Effect duration of 9secs. If you look closer to the Timeline, you’ll see that the effect duration is slightly shorter, because of step 3: tweaking.

Step 2: Action for Play button

Basic setup

At first sight the needed advanced action for the Play button seems to be rather simple.:

  • Pause the slide On Enter.
  • For the Play button use this sequence:
    • Continue      to release the playhead, the motion effect will start
    • Delay Next Actions by 1.5 secs          for the Business model slide 1.5seconds is 9secs/6
    • Pause      to pause the motion effect waiting for the next step (see guides in the first screenshot )
  • The Next button will be uncovered in the last step.

However, there is no way to prevent the learner to click the Play button after the motion effect ended, and the Continue command would then override the pausing point of the Next button, which you probably want to avoid. To prevent this you need a way to track the end of the motion path. Using a variable v_counter for tracking is an easy way. Although you could use one conditional decision, I like to separate the advanced action in two decisions. Have a look at this screenshot of the basic PlayMotion action:

Supposed here is a starting value of 0 for the variable v_counter. When all 6 parts have been ‘discovered’ the Play button will be hidden. It could be possible to replace that Hide action by a pure Pause action, but it would lead to frustrated learners.

If you try out this basic action for the Business Model slide, you’ll have a flickering problem. That has been a pain since many versions. In the Tweaking section of this blog, I will show you how to solve this. Moreover in the video displayed in the previous post, you’ll see that the first part of the effect is deployed immediately. There is also need for an On Enter action on all the slides, to reset everything in the original situation including the value of the counter variable.

Extended Setup

This simple slide didn’t need to have another action to be done besides part of the motion effect. That is not the case for the Steps nor the Hurdles slides. The extra actions need to be inserted before the Delay command in the Always decision. Look at the versions for the Hurdles slide. Multistate objects were used to show explanations. There are 4 parts. At the end the Play button (is in a group with a Tooltip) needs to be hidden, and the group of extra buttons made visible:

Step 3: Tweaking

Timing

When testing the project with F11, Preview HTML in Browser, you'll see that the timing is not perfect: motion effect. There are two ways to tweak this timing, and often both are needed:

  1. Decrease the total time of the motion effect (Timeline panel or Timing Properties). That will speed up the motion, more will be shown with each part. If you look at the first screenshot, Timeline panel for the Business Model slide, you see that the duration of the effect is now 8.9secs instead of the original 9secs. For the Steps slide, I reduced the original 10secs (5steps of 2sec) to 9.7secs, for the Hurdles slide 5secs was reduced to 4.8secs

  2. Decrease the Delay time in the advanced action for the Play buttons. You could see in the Hurdles action the change to 1.8secs. 

On Enter action

You’ll need such an action to reset the situation if the learner is allowed to revisit the slide, and also to be able to reuse the unique variable v_counter.  Whenever possible, avoid to create multiple variables if you can reuse the same variable. Here is a simple On Enter action for the Steps slide:

As promised, here is the On Enter action for the Business Model slide, which is more complicated because it solves the flicker issue, and will show the first part of the image (Hence the Assign to 1 command for the counter variable):

To avoid the flickering of the InfoGraphic image, it is hidden to start with and shown after 0.3secs.  I also added a Fade in Transition The starting value of the variable is now 1 instead of 0. To deploy the first part of the infographics you’ll see the same actions as in the Play button action. The total delay for this first part is 1.6secs.

More?

It would be wonderful to hear how the described workflow could inspire you for your projects.. 

Creating custom paths - curved or polygonal - comes with some issues:

  • For polygons: you cannot create horizontal nor vertical parts for an obscure reason. I have logged this bug multiple times.
  • For curves: realizing cusp points is normally not possible... 

If you want to learn how to overcome those issues, please let me know.



]]>
ir. Lieve Weymeis
tag:blog.lilybiri.com,2013:Post/1770964 2021-12-14T14:49:52Z 2021-12-18T16:24:31Z Combining Slide Audio and 'Play Audio'

Intro

This short blog post is meant to answer another question on the Adobe forums. It is at the end of this thread:

https://community.adobe.com/t5/captivate-discussions/pausing-slide-audio/td-p/12312792

This was the goal:

  1. Slide has narration as slide audio
  2. There are multiple shapes used as buttons, which should trigger an audio clip using 'Play Audio' command; those shapes have no pausing point.
  3. When a shape button is clicked the audio clip should play, but the slide audio should pause, and resume after the audio clip ends.
  4. There is at least one more interactive object pausing the slide towards the end. Idea is that the learner can still listen to the audio clips after the slide audio has finished.

This learner tried to solve this with simple actions, using the feature 'Pause slide audio when clicked'. It cannot be solved that way however.

Example project

Watch this short project created to double-check my proposed workflow with a shared action for the shape buttons. After the Title slide you'll see a slide with a Next button to pause the slide, and a shared action triggered by each of the shape buttons. A copy of the Timeline panel can be found on the third slide. I used some slides from the Aspire Quick Start Project.

You can open a rescalable version using this link or watch the embedded version below:



Setup

You could see the slide audio (narration) in the Timeline panel. The audio clips for the shape buttons were imported to the Project library, and their exact duration was checked, because it will be needed in the shared action. Have a look at the shared action with its two parameters (name audio clip and duration clip):

It has two parameters:

The command Pause in the action will pause the slide audio automatically, contrary to a pausing point of an interactive object. You don't have to change any setting in the shape button Properties. The Continue command which will be done at the end of the audio clip will take care of resuming the slide audio.

Do not bother about having two clips playing at the same time. If the learner clicks another shape button before the first audio clip ends, that first clip is stopped automatically. No need to add a command like 'Stop triggered audio' which is only needed when you want to stop a playing clip without playing a new at the same time.

The user is concerned that applying the shared action will take more time than the approach he tried out with simple actions. However, since you don't have to change settings in the shape button Properties panel, the shared action approach needs even less clicks. Check it out. There is no danger of choking Captivate which could happen if you use duplicate advanced actions since you are using instances of one shared action (ecologically).

Problem

The previous solution works fine until the learner has reached the pausing point of the Next button. At that moment, the Continue command in the shared action will override the pausing and the playhead will continue until it reaches the end of the slide and moves to the next slide. It is necessary to cope with that different situation. The Delay command nor the Continue command take into account possible pausing points. 

There are two different situations, each needing a different workflow:

  • Learner clicks a shape button before the narration has ended. In that case the slide audio needs to be paused, and to resume after the end of the triggered audio clip.
  • Learner clicks a shape button after the narration has ended. You need to maintain the pause which occurs at the pausing point of the Next button.

This screenshot shows the Timeline panel, illustrating the two situations. Situation 1 in red, situation 2 in blue.

This needs apparently a conditional action for the shape buttons. You have to figure out which situation is valid. For that reason you need to know when the narration has ended. It is easy to see its duration in the timeline, in this case it was 28secs. To calculate the frame number at the end of the frame I used micro-navigation. If you are new to this type of navigation, please have a look at this blog post:

Intro to Micro-navigation

Solution

Variables

You need two user variables:

  • v_start: will store the frame number of the first frame of the slide with the narration and shape buttons
  • v_stop: will store the frame number at the end of the narration

Contrary to the timeline panel where seconds restart on each slide, the frame numbering continues throughout the project.

Shared Actions

EnterSlideAct

This shared action will be triggered with the Slide Enter event, and is meant to calculate the value of v_stop. Have a look:

The first frame number of the slide is stored in v_start. The duration of the narration is converted to frames, by multiplying with the system variable cpInfoFPS. The only parameter is that duration.

PlayAudio_Act

The former standard action has been transformed to a conditional action:

Same parameters as before. The condition checks if the learner clicked the shape button before or after the end of the narration. Only when the narration hadn't been finished it will need to resume. That has been done with the Delay command and Continue. That is not necessary after reaching the end of the narration, because the pausing point of the Next button needs to be kept pausing, and the narration doesn't need to resume.

This shared action is needed for each of the interactive objects used to play an audio clip.  In the project I used shape buttons. They are visible in the timeline screenshot as SB_Topic1…. SB_Topic4.

By using shared actions instead of duplicate advanced actions, you avoid choking the project if you need lot of those actions which was the case for the user asking the question. Moreover multiple instances of the same shared action also will result in a smaller file size. Of course they are also very easy to transfer to future projects. You can learn more about using shared actions in these videos:

Use Shared Actions: Lesson 1 (crash course)

(re)Use Shared Actions: Lesson 2 (crash course)

]]>
ir. Lieve Weymeis