Millisecond Forums

how to present feedback in list regardless of openended answer

https://forums.millisecond.com/Topic34842.aspx

By elliesassak - 10/17/2022

i'm trying to customize the anagram tests so that the feedback such as "correct" or "good job" is displayed at the end of the trial regardless of whether the subject answered correctly, skipped the anagram, or ran out of time (though that is unlikely as each anagram presentation is set to 20 mins). the purpose of the experiment is to see whether positive affirmations will affect the time spent on an anagram, so i need specific phrases to appear even if the subject did not solve the anagram (since 2 are insoluble anyways). 

there are 5 different feedback phrases that i want to appear in order (phrase 1, 2, 3, 4, 5, 1, 2, 3, 4, 5) after each anagram. the 10 anagrams are also presented in sequential order.

right now i defined the item.feedback, but i don't know how to get the script to have an openended answer box, but ignore the subject's answer, and just present the feedback phrase once the anagram is either solved or skipped. 

thanks.
By Dave - 10/17/2022

elliesassak - 10/17/2022
i'm trying to customize the anagram tests so that the feedback such as "correct" or "good job" is displayed at the end of the trial regardless of whether the subject answered correctly, skipped the anagram, or ran out of time (though that is unlikely as each anagram presentation is set to 20 mins). the purpose of the experiment is to see whether positive affirmations will affect the time spent on an anagram, so i need specific phrases to appear even if the subject did not solve the anagram (since 2 are insoluble anyways). 

there are 5 different feedback phrases that i want to appear in order (phrase 1, 2, 3, 4, 5, 1, 2, 3, 4, 5) after each anagram. the 10 anagrams are also presented in sequential order.

right now i defined the item.feedback, but i don't know how to get the script to have an openended answer box, but ignore the subject's answer, and just present the feedback phrase once the anagram is either solved or skipped. 

thanks.

If you want an answer, you will need to provide your code. Put your script and all files it requires to run (if any) in a ZIP archive and then attach said archive to your post per +Insert -> Add FIle.
By elliesassak - 10/17/2022

elliesassak - 10/17/2022
i'm trying to customize the anagram tests so that the feedback such as "correct" or "good job" is displayed at the end of the trial regardless of whether the subject answered correctly, skipped the anagram, or ran out of time (though that is unlikely as each anagram presentation is set to 20 mins). the purpose of the experiment is to see whether positive affirmations will affect the time spent on an anagram, so i need specific phrases to appear even if the subject did not solve the anagram (since 2 are insoluble anyways). 

there are 5 different feedback phrases that i want to appear in order (phrase 1, 2, 3, 4, 5, 1, 2, 3, 4, 5) after each anagram. the 10 anagrams are also presented in sequential order.

right now i defined the item.feedback, but i don't know how to get the script to have an openended answer box, but ignore the subject's answer, and just present the feedback phrase once the anagram is either solved or skipped. 

thanks.

By Dave - 10/17/2022

elliesassak - 10/17/2022
elliesassak - 10/17/2022
i'm trying to customize the anagram tests so that the feedback such as "correct" or "good job" is displayed at the end of the trial regardless of whether the subject answered correctly, skipped the anagram, or ran out of time (though that is unlikely as each anagram presentation is set to 20 mins). the purpose of the experiment is to see whether positive affirmations will affect the time spent on an anagram, so i need specific phrases to appear even if the subject did not solve the anagram (since 2 are insoluble anyways). 

there are 5 different feedback phrases that i want to appear in order (phrase 1, 2, 3, 4, 5, 1, 2, 3, 4, 5) after each anagram. the 10 anagrams are also presented in sequential order.

right now i defined the item.feedback, but i don't know how to get the script to have an openended answer box, but ignore the subject's answer, and just present the feedback phrase once the anagram is either solved or skipped. 

thanks.


I'm confused. The script you attached seems incomplete -- there isn't any openended or block element at all, so this code will not do anything, much less present any anagrams to solve, etc. Please provide the actual script.
By elliesassak - 10/17/2022

Dave - 10/17/2022
elliesassak - 10/17/2022
elliesassak - 10/17/2022
i'm trying to customize the anagram tests so that the feedback such as "correct" or "good job" is displayed at the end of the trial regardless of whether the subject answered correctly, skipped the anagram, or ran out of time (though that is unlikely as each anagram presentation is set to 20 mins). the purpose of the experiment is to see whether positive affirmations will affect the time spent on an anagram, so i need specific phrases to appear even if the subject did not solve the anagram (since 2 are insoluble anyways). 

there are 5 different feedback phrases that i want to appear in order (phrase 1, 2, 3, 4, 5, 1, 2, 3, 4, 5) after each anagram. the 10 anagrams are also presented in sequential order.

right now i defined the item.feedback, but i don't know how to get the script to have an openended answer box, but ignore the subject's answer, and just present the feedback phrase once the anagram is either solved or skipped. 

thanks.


I'm confused. The script you attached seems incomplete -- there isn't any openended or block element at all, so this code will not do anything, much less present any anagrams to solve, etc. Please provide the actual script.

I'm sorry. I attached the wrong one. This one should be right.
By Dave - 10/17/2022

elliesassak - 10/17/2022
Dave - 10/17/2022
elliesassak - 10/17/2022
elliesassak - 10/17/2022
i'm trying to customize the anagram tests so that the feedback such as "correct" or "good job" is displayed at the end of the trial regardless of whether the subject answered correctly, skipped the anagram, or ran out of time (though that is unlikely as each anagram presentation is set to 20 mins). the purpose of the experiment is to see whether positive affirmations will affect the time spent on an anagram, so i need specific phrases to appear even if the subject did not solve the anagram (since 2 are insoluble anyways). 

there are 5 different feedback phrases that i want to appear in order (phrase 1, 2, 3, 4, 5, 1, 2, 3, 4, 5) after each anagram. the 10 anagrams are also presented in sequential order.

right now i defined the item.feedback, but i don't know how to get the script to have an openended answer box, but ignore the subject's answer, and just present the feedback phrase once the anagram is either solved or skipped. 

thanks.


I'm confused. The script you attached seems incomplete -- there isn't any openended or block element at all, so this code will not do anything, much less present any anagrams to solve, etc. Please provide the actual script.

I'm sorry. I attached the wrong one. This one should be right.

> there are 5 different feedback phrases that i want to appear in order (phrase 1, 2, 3, 4, 5, 1, 2, 3, 4, 5) after each anagram. the 10 anagrams are also presented in sequential order.

Where are those five different feedback phrases in the script you attached?
By elliesassak - 10/17/2022

Dave - 10/17/2022
elliesassak - 10/17/2022
Dave - 10/17/2022
elliesassak - 10/17/2022
elliesassak - 10/17/2022
i'm trying to customize the anagram tests so that the feedback such as "correct" or "good job" is displayed at the end of the trial regardless of whether the subject answered correctly, skipped the anagram, or ran out of time (though that is unlikely as each anagram presentation is set to 20 mins). the purpose of the experiment is to see whether positive affirmations will affect the time spent on an anagram, so i need specific phrases to appear even if the subject did not solve the anagram (since 2 are insoluble anyways). 

there are 5 different feedback phrases that i want to appear in order (phrase 1, 2, 3, 4, 5, 1, 2, 3, 4, 5) after each anagram. the 10 anagrams are also presented in sequential order.

right now i defined the item.feedback, but i don't know how to get the script to have an openended answer box, but ignore the subject's answer, and just present the feedback phrase once the anagram is either solved or skipped. 

thanks.


I'm confused. The script you attached seems incomplete -- there isn't any openended or block element at all, so this code will not do anything, much less present any anagrams to solve, etc. Please provide the actual script.

I'm sorry. I attached the wrong one. This one should be right.

> there are 5 different feedback phrases that i want to appear in order (phrase 1, 2, 3, 4, 5, 1, 2, 3, 4, 5) after each anagram. the 10 anagrams are also presented in sequential order.

Where are those five different feedback phrases in the script you attached?

Currently, I'm working on this script for another person, and she hasn't given me those phrases she wants yet. I was just using the correct, incorrect, etc. as placeholders. Should I change it to "positive phrase 1", "phrase 2", etc.? 
By Dave - 10/17/2022

elliesassak - 10/17/2022

Currently, I'm working on this script for another person, and she hasn't given me those phrases she wants yet. I was just using the correct, incorrect, etc. as placeholders. Should I change it to "positive phrase 1", "phrase 2", etc.? 

Okay, i can change them myself. I need you to spell out clearly, however, how exactly you want the script to behave in contrast to the original task:
(1) In the original, if the participant submits a wrong solution, the task does not move on to the next anagram, but the participant may continue trying to solve the current anagram as long as the time allotted for each anagram (2 minutes in the original) has not been reached. How is your modification supposed to behave? I'm guessing it should move on to the next anagram and provide positive feedback regardless of solution correctness, but it's not 100% clear.
(2) Similarly, it's not 100% clear how the modiication is supposed to behave if the current anagram times out, even though that's unlikely to happen with 20 mins permitted per anagram. So, what is it? Move on with positive feedback? Move on without any feedback whatsoever?
(3) In the original, a participant can explicitly skip the current anagram and move on to the next. Is the modification supposed to allow participants to skip the current anagram and move on? What sort of feedback, if any, is supposed to be provided in the event of such a skip?

While you stated in your original post that " feedback such as "correct" or "good job" [shoudl be] displayed at the end of the trial regardless of whether the subject answered correctly, skipped the anagram, or ran out of time", the presence of

<item feedback>
/1 = "You did a good job!" //correct
/2 = "You are so good 2" //incorrect
/3 = "It's okay, you can still do it" //out of time
/4 = "" //empty for wrong answers
</item>

suggests you want some kind of different behavior.
By elliesassak - 10/17/2022

Dave - 10/17/2022
elliesassak - 10/17/2022

Currently, I'm working on this script for another person, and she hasn't given me those phrases she wants yet. I was just using the correct, incorrect, etc. as placeholders. Should I change it to "positive phrase 1", "phrase 2", etc.? 

Okay, i can change them myself. I need you to spell out clearly, however, how exactly you want the script to behave in contrast to the original task:
(1) In the original, if the participant submits a wrong solution, the task does not move on to the next anagram, but the participant may continue trying to solve the current anagram as long as the time allotted for each anagram (2 minutes in the original) has not been reached. How is your modification supposed to behave? I'm guessing it should move on to the next anagram and provide positive feedback regardless of solution correctness, but it's not 100% clear.
(2) Similarly, it's not 100% clear how the modiication is supposed to behave if the current anagram times out, even though that's unlikely to happen with 20 mins permitted per anagram. So, what is it? Move on with positive feedback? Move on without any feedback whatsoever?
(3) In the original, a participant can explicitly skip the current anagram and move on to the next. Is the modification supposed to allow participants to skip the current anagram and move on? What sort of feedback, if any, is supposed to be provided in the event of such a skip?

While you stated in your original post that " feedback such as "correct" or "good job" [shoudl be] displayed at the end of the trial regardless of whether the subject answered correctly, skipped the anagram, or ran out of time", the presence of

<item feedback>
/1 = "You did a good job!" //correct
/2 = "You are so good 2" //incorrect
/3 = "It's okay, you can still do it" //out of time
/4 = "" //empty for wrong answers
</item>

suggests you want some kind of different behavior.

1. Like the original task, the participant should be able to keep submitting wrong answers in the allotted time. The only time the positive feedback should be presented is when they get it correct or when they skip or if the anagram times out. Then after the feedback is presented, it moves onto the next anagram. 
2. If the anagram times out, then positive feedback should be presented and it should move onto the next anagram. 
3. Yes, participants can skip. If they skip, the same positive feedback should be presented as if they got it right.

The feedback that you have mentioned was me just trying to figure out how the script was originally coded. It can be completely disregarded.

Thank so much for your help.
By Dave - 10/17/2022

elliesassak - 10/17/2022
Dave - 10/17/2022
elliesassak - 10/17/2022

Currently, I'm working on this script for another person, and she hasn't given me those phrases she wants yet. I was just using the correct, incorrect, etc. as placeholders. Should I change it to "positive phrase 1", "phrase 2", etc.? 

Okay, i can change them myself. I need you to spell out clearly, however, how exactly you want the script to behave in contrast to the original task:
(1) In the original, if the participant submits a wrong solution, the task does not move on to the next anagram, but the participant may continue trying to solve the current anagram as long as the time allotted for each anagram (2 minutes in the original) has not been reached. How is your modification supposed to behave? I'm guessing it should move on to the next anagram and provide positive feedback regardless of solution correctness, but it's not 100% clear.
(2) Similarly, it's not 100% clear how the modiication is supposed to behave if the current anagram times out, even though that's unlikely to happen with 20 mins permitted per anagram. So, what is it? Move on with positive feedback? Move on without any feedback whatsoever?
(3) In the original, a participant can explicitly skip the current anagram and move on to the next. Is the modification supposed to allow participants to skip the current anagram and move on? What sort of feedback, if any, is supposed to be provided in the event of such a skip?

While you stated in your original post that " feedback such as "correct" or "good job" [shoudl be] displayed at the end of the trial regardless of whether the subject answered correctly, skipped the anagram, or ran out of time", the presence of

<item feedback>
/1 = "You did a good job!" //correct
/2 = "You are so good 2" //incorrect
/3 = "It's okay, you can still do it" //out of time
/4 = "" //empty for wrong answers
</item>

suggests you want some kind of different behavior.

1. Like the original task, the participant should be able to keep submitting wrong answers in the allotted time. The only time the positive feedback should be presented is when they get it correct or when they skip or if the anagram times out. Then after the feedback is presented, it moves onto the next anagram. 
2. If the anagram times out, then positive feedback should be presented and it should move onto the next anagram. 
3. Yes, participants can skip. If they skip, the same positive feedback should be presented as if they got it right.

The feedback that you have mentioned was me just trying to figure out how the script was originally coded. It can be completely disregarded.

Thank so much for your help.

The attached should do the trick. (Note that both /anagramTimeout and /feedbackDuration are significantly decreased in the file for testing purposes, so one does not have to wait 20 minutes for the timeout to kick in.)
By elliesassak - 10/17/2022

Dave - 10/17/2022
elliesassak - 10/17/2022
Dave - 10/17/2022
elliesassak - 10/17/2022

Currently, I'm working on this script for another person, and she hasn't given me those phrases she wants yet. I was just using the correct, incorrect, etc. as placeholders. Should I change it to "positive phrase 1", "phrase 2", etc.? 

Okay, i can change them myself. I need you to spell out clearly, however, how exactly you want the script to behave in contrast to the original task:
(1) In the original, if the participant submits a wrong solution, the task does not move on to the next anagram, but the participant may continue trying to solve the current anagram as long as the time allotted for each anagram (2 minutes in the original) has not been reached. How is your modification supposed to behave? I'm guessing it should move on to the next anagram and provide positive feedback regardless of solution correctness, but it's not 100% clear.
(2) Similarly, it's not 100% clear how the modiication is supposed to behave if the current anagram times out, even though that's unlikely to happen with 20 mins permitted per anagram. So, what is it? Move on with positive feedback? Move on without any feedback whatsoever?
(3) In the original, a participant can explicitly skip the current anagram and move on to the next. Is the modification supposed to allow participants to skip the current anagram and move on? What sort of feedback, if any, is supposed to be provided in the event of such a skip?

While you stated in your original post that " feedback such as "correct" or "good job" [shoudl be] displayed at the end of the trial regardless of whether the subject answered correctly, skipped the anagram, or ran out of time", the presence of

<item feedback>
/1 = "You did a good job!" //correct
/2 = "You are so good 2" //incorrect
/3 = "It's okay, you can still do it" //out of time
/4 = "" //empty for wrong answers
</item>

suggests you want some kind of different behavior.

1. Like the original task, the participant should be able to keep submitting wrong answers in the allotted time. The only time the positive feedback should be presented is when they get it correct or when they skip or if the anagram times out. Then after the feedback is presented, it moves onto the next anagram. 
2. If the anagram times out, then positive feedback should be presented and it should move onto the next anagram. 
3. Yes, participants can skip. If they skip, the same positive feedback should be presented as if they got it right.

The feedback that you have mentioned was me just trying to figure out how the script was originally coded. It can be completely disregarded.

Thank so much for your help.

The attached should do the trick. (Note that both /anagramTimeout and /feedbackDuration are significantly decreased in the file for testing purposes, so one does not have to wait 20 minutes for the timeout to kick in.)

Thank you so much, Dave! I greatly appreciate the help.
By Dave - 10/17/2022

elliesassak - 10/17/2022
Dave - 10/17/2022
elliesassak - 10/17/2022
Dave - 10/17/2022
elliesassak - 10/17/2022

Currently, I'm working on this script for another person, and she hasn't given me those phrases she wants yet. I was just using the correct, incorrect, etc. as placeholders. Should I change it to "positive phrase 1", "phrase 2", etc.? 

Okay, i can change them myself. I need you to spell out clearly, however, how exactly you want the script to behave in contrast to the original task:
(1) In the original, if the participant submits a wrong solution, the task does not move on to the next anagram, but the participant may continue trying to solve the current anagram as long as the time allotted for each anagram (2 minutes in the original) has not been reached. How is your modification supposed to behave? I'm guessing it should move on to the next anagram and provide positive feedback regardless of solution correctness, but it's not 100% clear.
(2) Similarly, it's not 100% clear how the modiication is supposed to behave if the current anagram times out, even though that's unlikely to happen with 20 mins permitted per anagram. So, what is it? Move on with positive feedback? Move on without any feedback whatsoever?
(3) In the original, a participant can explicitly skip the current anagram and move on to the next. Is the modification supposed to allow participants to skip the current anagram and move on? What sort of feedback, if any, is supposed to be provided in the event of such a skip?

While you stated in your original post that " feedback such as "correct" or "good job" [shoudl be] displayed at the end of the trial regardless of whether the subject answered correctly, skipped the anagram, or ran out of time", the presence of

<item feedback>
/1 = "You did a good job!" //correct
/2 = "You are so good 2" //incorrect
/3 = "It's okay, you can still do it" //out of time
/4 = "" //empty for wrong answers
</item>

suggests you want some kind of different behavior.

1. Like the original task, the participant should be able to keep submitting wrong answers in the allotted time. The only time the positive feedback should be presented is when they get it correct or when they skip or if the anagram times out. Then after the feedback is presented, it moves onto the next anagram. 
2. If the anagram times out, then positive feedback should be presented and it should move onto the next anagram. 
3. Yes, participants can skip. If they skip, the same positive feedback should be presented as if they got it right.

The feedback that you have mentioned was me just trying to figure out how the script was originally coded. It can be completely disregarded.

Thank so much for your help.

The attached should do the trick. (Note that both /anagramTimeout and /feedbackDuration are significantly decreased in the file for testing purposes, so one does not have to wait 20 minutes for the timeout to kick in.)

Thank you so much, Dave! I greatly appreciate the help.

Come to think of it, doing

/ branch = [
    if (values.nextAnagram == 1){//participant is done with the current anagram and should move on to the next
        if (!values.skip && !values.noresp) {
            values.selectFeedback = 0;
        };
        return trial.easyAnagramData;
    } else if (values.selectFeedback != 0){
        values.nextAnagram = 1;//the openended trial should only be presented once more for the Correct Feedback stim
        values.defaultResponse = openended.easyAnagram.response;
        values.anagramOffsettime = script.elapsedtime + parameters.feedbackDuration; //the next openended trial only runs for the duration of the feedback trial
        return openended.easyAnagram;
    } else {
        return openended.easyAnagram;
    };
]

in <openended easyAnagram> is actually kind of unnecessary (my bad). Reconsidering, I would change that to

/ branch = [
  if (values.nextAnagram == 1){//participant is done with the current anagram and should move on to the next
   if (true) {
    values.selectFeedback = 0;
   };
   return trial.easyAnagramData;
  } else if (values.selectFeedback != 0){
   values.nextAnagram = 1;//the openended trial should only be presented once more for the Correct Feedback stim
   values.defaultResponse = openended.easyAnagram.response;
   values.anagramOffsettime = script.elapsedtime + parameters.feedbackDuration; //the next openended trial only runs for the duration of the feedback trial
   return openended.easyAnagram;
  } else {
   return openended.easyAnagram;
  };
]
By elliesassak - 10/17/2022

Dave - 10/17/2022
elliesassak - 10/17/2022
Dave - 10/17/2022
elliesassak - 10/17/2022
Dave - 10/17/2022
elliesassak - 10/17/2022

Currently, I'm working on this script for another person, and she hasn't given me those phrases she wants yet. I was just using the correct, incorrect, etc. as placeholders. Should I change it to "positive phrase 1", "phrase 2", etc.? 

Okay, i can change them myself. I need you to spell out clearly, however, how exactly you want the script to behave in contrast to the original task:
(1) In the original, if the participant submits a wrong solution, the task does not move on to the next anagram, but the participant may continue trying to solve the current anagram as long as the time allotted for each anagram (2 minutes in the original) has not been reached. How is your modification supposed to behave? I'm guessing it should move on to the next anagram and provide positive feedback regardless of solution correctness, but it's not 100% clear.
(2) Similarly, it's not 100% clear how the modiication is supposed to behave if the current anagram times out, even though that's unlikely to happen with 20 mins permitted per anagram. So, what is it? Move on with positive feedback? Move on without any feedback whatsoever?
(3) In the original, a participant can explicitly skip the current anagram and move on to the next. Is the modification supposed to allow participants to skip the current anagram and move on? What sort of feedback, if any, is supposed to be provided in the event of such a skip?

While you stated in your original post that " feedback such as "correct" or "good job" [shoudl be] displayed at the end of the trial regardless of whether the subject answered correctly, skipped the anagram, or ran out of time", the presence of

<item feedback>
/1 = "You did a good job!" //correct
/2 = "You are so good 2" //incorrect
/3 = "It's okay, you can still do it" //out of time
/4 = "" //empty for wrong answers
</item>

suggests you want some kind of different behavior.

1. Like the original task, the participant should be able to keep submitting wrong answers in the allotted time. The only time the positive feedback should be presented is when they get it correct or when they skip or if the anagram times out. Then after the feedback is presented, it moves onto the next anagram. 
2. If the anagram times out, then positive feedback should be presented and it should move onto the next anagram. 
3. Yes, participants can skip. If they skip, the same positive feedback should be presented as if they got it right.

The feedback that you have mentioned was me just trying to figure out how the script was originally coded. It can be completely disregarded.

Thank so much for your help.

The attached should do the trick. (Note that both /anagramTimeout and /feedbackDuration are significantly decreased in the file for testing purposes, so one does not have to wait 20 minutes for the timeout to kick in.)

Thank you so much, Dave! I greatly appreciate the help.

Come to think of it, doing

/ branch = [
    if (values.nextAnagram == 1){//participant is done with the current anagram and should move on to the next
        if (!values.skip && !values.noresp) {
            values.selectFeedback = 0;
        };
        return trial.easyAnagramData;
    } else if (values.selectFeedback != 0){
        values.nextAnagram = 1;//the openended trial should only be presented once more for the Correct Feedback stim
        values.defaultResponse = openended.easyAnagram.response;
        values.anagramOffsettime = script.elapsedtime + parameters.feedbackDuration; //the next openended trial only runs for the duration of the feedback trial
        return openended.easyAnagram;
    } else {
        return openended.easyAnagram;
    };
]

in <openended easyAnagram> is actually kind of unnecessary (my bad). Reconsidering, I would change that to

/ branch = [
  if (values.nextAnagram == 1){//participant is done with the current anagram and should move on to the next
   if (true) {
    values.selectFeedback = 0;
   };
   return trial.easyAnagramData;
  } else if (values.selectFeedback != 0){
   values.nextAnagram = 1;//the openended trial should only be presented once more for the Correct Feedback stim
   values.defaultResponse = openended.easyAnagram.response;
   values.anagramOffsettime = script.elapsedtime + parameters.feedbackDuration; //the next openended trial only runs for the duration of the feedback trial
   return openended.easyAnagram;
  } else {
   return openended.easyAnagram;
  };
]

Okay, I made the change, and it works beautifully. Thanks for all your help!