Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Supported by

Two separate keyboard responses on the same stimulus

Hello and good luck with all of your projects. I am trying to create an arithmetic verification task, in which participants would report both their answer to the presented equation (whether the result they see is correct or false, via a keyboard response) and how sure they are of their answer (a second keyboard response). I have tried to put two keyboard responses referring to the same stimulus. The problem I am facing with that is that when I put two keyboard responses, the accuracy of the participant in the data is determined from the second response (how sure they are) and not from the first (the answer), as it should. Since there is no correct answer on how sure people are, I am looking for a way to add a second keyboard response, with Opensesame just logging the second answer (the letter participants press) and this not affecting the accuracy on the trial, which would be determined by their first keyboard response (if the result on the equation is true or false). Any thoughts on how I could achieve that?

I understand this might be very confusing, so I can provide further explanation should you need any. Thanks in advance!

Comments

  • Hi @Tryfonas_Bikos ,

    The correct variable indeed refers to the last response, which I assume is what you're running into. However, each response item also maintains a correct_[item name] variable that only relates to that item. If I understand correctly, this should give you the information you need.

    — Sebastiaan

  • Hi @Tryfonas_Bikos,

    The response variables related to a input (e.g., keyboard event; see https://osdoc.cogsci.nl/4.0/manual/variables/) will always refer to the latest input event. hence if you use two consecutive keyboard events, they will relate to the second and not the first.

    This is easily dealt with by using the reaponse variables specific to each keyboard event instead of using the generic ones. You can easily find these variables in the variables inspector if you're not sure what they are. But the rule is simple: add "_" and the name of the object as a siffix to the generic variable. For example, if your keyboard object is called "digit_response", the response variable for it will be: response_digit_response.

    When using conde, instead of var.response, you would use var.response_digit_response.

    If you measure response times, these will be measured from the onset of the corresponding keyboard object. So, if you have a sequence of K1 and K2 keyboard objects, the RT for K1 will be measured relative to the onset of K2, and the RT for K2 will be measured relative to the onset of K2.

    You can display feedback and assess correct responses automatically by simply using the variables as I described above. For example, at least for the first of two keyboard events*, you would want to specify a variable in the loop that contains the correct response for that event and then specify it explicitly as the correct response when you set up your keyboard event.

    * As say "at least" because for the second, since it it the last one in this case, you could siply use the generic variables. However, for clarity and as good practice, I'd recommend using precise variable names.


    (screen captures are with version 4 for Open Sesame; if using a previous version, you'd use "[ ]" instead of "{ }". I strongly recommend you always use the latest version, though).

    I attach an example I put together just now so that you can see how it works exactly (in Open Sesame v4).


    I believe that should solve your problem.

    Hope this helps.

    Fabrice.

    Buy Me A Coffee

Sign In or Register to comment.