Stuck on Simulation functionality

I've hit an impasse with my simulation development. (test file attached)

I am working on an in-house application, and I want to offer some relatively unguided practice. In the attached file, the user needs to enter two lines of text. If done correctly, they get to move to the next page where they enter some additional text. I am using the Fill In the Blank question type since I was really stymied on how to just use Text Entry fields to replicate the functionality.

On the first page, ideally, I'd like to have the entries checked for correctness. If either one is incorrect, they are prompted to make the change before they get to move forward.

On the second page, I'm aiming for the same thing, also using a Fill in the Blank (multiline) question type.

Where I am stuck is in the relationship between the Question Feedback Functionality and the Process Question actions.

I would be profoundly grateful for any assistance/solutions. If this is something that requires a one-on-one walkthrough, I would happily compensate you for your time.

Discussion (14)

This is a very lazy demonstration. Type text into the entry field and press Enter. It'll tell you whether any of the words Blue, Green, or Red are present. Note that capitalization matters, and note that due to my laziness, I didn't bother putting any explanatory text on the screen or including any other colors.

I feel obligated to add: your current version still has a weakness that Andrew mentioned--it will reject answers with a typo. That's something you can ameliorate by the message displayed by the "Else" action.

Unless the actual application that you are simulating requires letter-perfect entry of text (which it shouldn't), you could just not use a question at all. Accept any text input there and move on to the next step. That's how, for instance, I handle things like name entry. I assume the student knows how to type and don't try to test for that.

Mark, I really don't need (and would not be comfortable with) getting paid for this. Can we do "pay it forward"? Answer someone else's question, somewhere, and we're even!

I have to second

's statement.

Instructional Development is a small community, and I feel like the Lectora user base is even smaller. It's a very powerful software once you harness it, and once you become proficient in the tool(s), you should do what the handful of power users do, and that is sharing your knowledge to help people to get over humps in the road.

Glad that you were able to get over the roadblock, and hopefully you can then expand on what you learned to other projects.

Really? I checked on my system, and the Zip I uploaded does have the (very simple) AWT file.

Since this incredibly small project contains only the AWT, I'll upload that directly.

The problem with your underlying concept is, it's very hard to test what the user types programmatically. If a spelling difference can cause a "that's wrong" it is very hard for the student to know what to correct. If you need to test for, oh, "Contains the words 'zymurgy' and 'beer' and 'yeast' but not 'carbonation'", you'll end up having to write scripts in JavaScript. I don't believe native Lectora functionality can do that.

The most obvious thing to do (from my POV) would be to have the page react to a "press Enter" Key event by evaluating the contents of the text field, using an If with a "Contains" condition. Is that relevant to what you want to do?

Yes...that should work nicely. I set the field's initial value as Blank and added the Page condition of "OnKeyDispMsg". I set the conditions on that action using "Contains", and referencing the Text Entry field with two "Contains" AND conditions (one for each code to be included). However a soon as I run it, the message is displayed immediately upon typing any character.

Was there supposed to be a .awt file included? all that I received in the .zip when extracted was an empty file folder.

Thanks for the quick response, Carl.

In this instance, the users are drawing data from a separate source (excel) to input into this app. We are not testing for specific words,

per se

, but validating it against a correct multi-word answer.

e.g. on Page 1 "

Front Faceplate Blower Control Front 1 Circuit High Voltage

" is the correct answer for Q1 and "

B2A40-12

" is the correct answer for Q2.

Am I faced with limitations on the OnMClkProcQ action in that it will only process the question once for conditions?

I think what

is referring to is what is in the image below.

That is a fairly long answer you have entered that needs to be entered with 0 spelling or typing mistakes. For example, what happens if the user enters two spaces by accident anywhere in there? I know in the old days, people would do double spaces and I still see that today with some colleagues.

What I would do is, use JavaScript (with REGEX?) to look for core words that would be considered correct such that your IF/THEN statement would be something like (in sudo code of course)....

If input contains "front" and input contains "face" and input contains "plate" and input contains "faceplate" and input contains "blower" and input contains ....... then mark the question as correct otherwise the question is incorrect.

I too have dealt with the draw of having to correct against free form user input fields, but had to simplify it down to simple 1 or two word answers to keep the permutations and opportunities for simple typos/spacing mistakes to a minimum.

Thank you, thank you, thank you. I finally have a working solution! I added a condition that if all words were contained, it would move to the next page, which is exactly what I need the sim to do.

I repeat my previous offer...I am happy to compensate you for your time on this. Feel free to message me directly.

Thanks, Andrew and Carl.

I'd prefer to have them perform the task using the entry fields, but I'm damned if I can get them to work properly...which is why I tried the question approach as a workaround. I'd love to know what I am doing wrong...