Nina
|
|
Group: Forum Members
Posts: 14,
Visits: 73
|
+x+xFor anyone who's interested, here's a small sample script that shows how to implement a 'real' VAS with Inquisit 3 (see attached file). Hopefully this will be useful for some. Regards, ~Dave Hi Dave, I tried your script and found it to be quite what I was looking for. There´s just one problem i have. In my experiment participants are asked to rate quite a number of questions and I tried to fill in the questions in the <text question> . <text question> / items = ("I am confident I get the sucess I deserve in life", "Sometimes I feel depressed.", "When I try I generally suceed") / position = (50, 25) / select = sequence / erase = false </text> The problem now is that since the questions aren´t of the same length there is always a part of the old question text displayed when the next question is presented. Is there a way to solve this problem or am I supposed to built a new item for each question? And if I have to do so, how do I implement that into the script (blocks, trials, etc.)? I hope it get´s clear what I mean. Best regards, Nina Oh and by the way, is there a way to use screencaptures with VASs? My paradigm requires participants to answer these questions twice and use their first rating as an orientation. It would be best if they could use the very same VAS to do so but if that is not possible it would also be fine if they just see their past response. Can someone help me with that?
|
|
|
Dave
|
|
Group: Administrators
Posts: 13K,
Visits: 103K
|
+x+x+xFor anyone who's interested, here's a small sample script that shows how to implement a 'real' VAS with Inquisit 3 (see attached file). Hopefully this will be useful for some. Regards, ~Dave Hi Dave, I tried your script and found it to be quite what I was looking for. There´s just one problem i have. In my experiment participants are asked to rate quite a number of questions and I tried to fill in the questions in the <text question> . <text question> / items = ("I am confident I get the sucess I deserve in life", "Sometimes I feel depressed.", "When I try I generally suceed") / position = (50, 25) / select = sequence / erase = false </text> The problem now is that since the questions aren´t of the same length there is always a part of the old question text displayed when the next question is presented. Is there a way to solve this problem or am I supposed to built a new item for each question? And if I have to do so, how do I implement that into the script (blocks, trials, etc.)? I hope it get´s clear what I mean. Best regards, Nina Oh and by the way, is there a way to use screencaptures with VASs? My paradigm requires participants to answer these questions twice and use their first rating as an orientation. It would be best if they could use the very same VAS to do so but if that is not possible it would also be fine if they just see their past response. Can someone help me with that? Add a <shape> to the script that covers the entire screen and thus "erases" / overwrites any previous questions fully. Display it as the 1st stimulus in <trial VisualAnalogueScale> <shape eraser> / shape = rectangle / size = (100%,100%) / color = white / erase = false </shape> <trial VisualAnalogueScale> / stimulusframes = [1= eraser, question, leftborder, rightborder, line, leftanchor, rightanchor] / inputdevice = mouse / validresponse = (line) / branch = [trial.showresponse] </trial> To get screencaptures, set the /screencapture attribute to true in <trial showresponse>: <trial showresponse> / stimulusframes = [1=X, responsevalue] / inputdevice = mouse / validresponse = (noresponse) / timeout = 1500 / recorddata = false / screencapture = true</trial>
|
|
|
Nina
|
|
Group: Forum Members
Posts: 14,
Visits: 73
|
+x+x+x+xFor anyone who's interested, here's a small sample script that shows how to implement a 'real' VAS with Inquisit 3 (see attached file). Hopefully this will be useful for some. Regards, ~Dave Hi Dave, I tried your script and found it to be quite what I was looking for. There´s just one problem i have. In my experiment participants are asked to rate quite a number of questions and I tried to fill in the questions in the <text question> . <text question> / items = ("I am confident I get the sucess I deserve in life", "Sometimes I feel depressed.", "When I try I generally suceed") / position = (50, 25) / select = sequence / erase = false </text> The problem now is that since the questions aren´t of the same length there is always a part of the old question text displayed when the next question is presented. Is there a way to solve this problem or am I supposed to built a new item for each question? And if I have to do so, how do I implement that into the script (blocks, trials, etc.)? I hope it get´s clear what I mean. Best regards, Nina Oh and by the way, is there a way to use screencaptures with VASs? My paradigm requires participants to answer these questions twice and use their first rating as an orientation. It would be best if they could use the very same VAS to do so but if that is not possible it would also be fine if they just see their past response. Can someone help me with that? Add a <shape> to the script that covers the entire screen and thus "erases" / overwrites any previous questions fully. Display it as the 1st stimulus in <trial VisualAnalogueScale> <shape eraser> / shape = rectangle / size = (100%,100%) / color = white / erase = false </shape> <trial VisualAnalogueScale> / stimulusframes = [1= eraser, question, leftborder, rightborder, line, leftanchor, rightanchor] / inputdevice = mouse / validresponse = (line) / branch = [trial.showresponse] </trial> To get screencaptures, set the /screencapture attribute to true in <trial showresponse>: <trial showresponse> / stimulusframes = [1=X, responsevalue] / inputdevice = mouse / validresponse = (noresponse) / timeout = 1500 / recorddata = false / screencapture = true</trial> Thank you, that helps a lot :)
|
|
|
Nina
|
|
Group: Forum Members
Posts: 14,
Visits: 73
|
+x+x+x+x+xFor anyone who's interested, here's a small sample script that shows how to implement a 'real' VAS with Inquisit 3 (see attached file). Hopefully this will be useful for some. Regards, ~Dave Hi Dave, I tried your script and found it to be quite what I was looking for. There´s just one problem i have. In my experiment participants are asked to rate quite a number of questions and I tried to fill in the questions in the <text question> . <text question> / items = ("I am confident I get the sucess I deserve in life", "Sometimes I feel depressed.", "When I try I generally suceed") / position = (50, 25) / select = sequence / erase = false </text> The problem now is that since the questions aren´t of the same length there is always a part of the old question text displayed when the next question is presented. Is there a way to solve this problem or am I supposed to built a new item for each question? And if I have to do so, how do I implement that into the script (blocks, trials, etc.)? I hope it get´s clear what I mean. Best regards, Nina Oh and by the way, is there a way to use screencaptures with VASs? My paradigm requires participants to answer these questions twice and use their first rating as an orientation. It would be best if they could use the very same VAS to do so but if that is not possible it would also be fine if they just see their past response. Can someone help me with that? Add a <shape> to the script that covers the entire screen and thus "erases" / overwrites any previous questions fully. Display it as the 1st stimulus in <trial VisualAnalogueScale> <shape eraser> / shape = rectangle / size = (100%,100%) / color = white / erase = false </shape> <trial VisualAnalogueScale> / stimulusframes = [1= eraser, question, leftborder, rightborder, line, leftanchor, rightanchor] / inputdevice = mouse / validresponse = (line) / branch = [trial.showresponse] </trial> To get screencaptures, set the /screencapture attribute to true in <trial showresponse>: <trial showresponse> / stimulusframes = [1=X, responsevalue] / inputdevice = mouse / validresponse = (noresponse) / timeout = 1500 / recorddata = false / screencapture = true</trial> Thank you, that helps a lot :) And how can I use the screencaptures later on in the experiment?
|
|
|
Dave
|
|
Group: Administrators
Posts: 13K,
Visits: 103K
|
+x+x+x+x+x+xFor anyone who's interested, here's a small sample script that shows how to implement a 'real' VAS with Inquisit 3 (see attached file). Hopefully this will be useful for some. Regards, ~Dave Hi Dave, I tried your script and found it to be quite what I was looking for. There´s just one problem i have. In my experiment participants are asked to rate quite a number of questions and I tried to fill in the questions in the <text question> . <text question> / items = ("I am confident I get the sucess I deserve in life", "Sometimes I feel depressed.", "When I try I generally suceed") / position = (50, 25) / select = sequence / erase = false </text> The problem now is that since the questions aren´t of the same length there is always a part of the old question text displayed when the next question is presented. Is there a way to solve this problem or am I supposed to built a new item for each question? And if I have to do so, how do I implement that into the script (blocks, trials, etc.)? I hope it get´s clear what I mean. Best regards, Nina Oh and by the way, is there a way to use screencaptures with VASs? My paradigm requires participants to answer these questions twice and use their first rating as an orientation. It would be best if they could use the very same VAS to do so but if that is not possible it would also be fine if they just see their past response. Can someone help me with that? Add a <shape> to the script that covers the entire screen and thus "erases" / overwrites any previous questions fully. Display it as the 1st stimulus in <trial VisualAnalogueScale> <shape eraser> / shape = rectangle / size = (100%,100%) / color = white / erase = false </shape> <trial VisualAnalogueScale> / stimulusframes = [1= eraser, question, leftborder, rightborder, line, leftanchor, rightanchor] / inputdevice = mouse / validresponse = (line) / branch = [trial.showresponse] </trial> To get screencaptures, set the /screencapture attribute to true in <trial showresponse>: <trial showresponse> / stimulusframes = [1=X, responsevalue] / inputdevice = mouse / validresponse = (noresponse) / timeout = 1500 / recorddata = false / screencapture = true</trial> Thank you, that helps a lot :) And how can I use the screencaptures later on in the experiment? That is not possible.
|
|
|
Dave
|
|
Group: Administrators
Posts: 13K,
Visits: 103K
|
+x+x+x+x+x+x+xFor anyone who's interested, here's a small sample script that shows how to implement a 'real' VAS with Inquisit 3 (see attached file). Hopefully this will be useful for some. Regards, ~Dave Hi Dave, I tried your script and found it to be quite what I was looking for. There´s just one problem i have. In my experiment participants are asked to rate quite a number of questions and I tried to fill in the questions in the <text question> . <text question> / items = ("I am confident I get the sucess I deserve in life", "Sometimes I feel depressed.", "When I try I generally suceed") / position = (50, 25) / select = sequence / erase = false </text> The problem now is that since the questions aren´t of the same length there is always a part of the old question text displayed when the next question is presented. Is there a way to solve this problem or am I supposed to built a new item for each question? And if I have to do so, how do I implement that into the script (blocks, trials, etc.)? I hope it get´s clear what I mean. Best regards, Nina Oh and by the way, is there a way to use screencaptures with VASs? My paradigm requires participants to answer these questions twice and use their first rating as an orientation. It would be best if they could use the very same VAS to do so but if that is not possible it would also be fine if they just see their past response. Can someone help me with that? Add a <shape> to the script that covers the entire screen and thus "erases" / overwrites any previous questions fully. Display it as the 1st stimulus in <trial VisualAnalogueScale> <shape eraser> / shape = rectangle / size = (100%,100%) / color = white / erase = false </shape> <trial VisualAnalogueScale> / stimulusframes = [1= eraser, question, leftborder, rightborder, line, leftanchor, rightanchor] / inputdevice = mouse / validresponse = (line) / branch = [trial.showresponse] </trial> To get screencaptures, set the /screencapture attribute to true in <trial showresponse>: <trial showresponse> / stimulusframes = [1=X, responsevalue] / inputdevice = mouse / validresponse = (noresponse) / timeout = 1500 / recorddata = false / screencapture = true</trial> Thank you, that helps a lot :) And how can I use the screencaptures later on in the experiment? That is not possible. You'll have to do something like this instead: *** Default Settings & Data Specifications *** <defaults> / fontstyle = ("Arial", -19, true, false, false, false, 5, 0) </defaults> <data> / columns = [subject, date, time, blockcode, trialcode, trialnum, latency, text.question.currentitem, expressions.correctedscore] </data> *** Response Scoring Routines *** <expressions> / correctionvalue = (display.width - shape.line.width) / 2 / correctedscore = (values.responsex - expressions.correctionvalue) / shape.line.width * 100 / roundedvalue = format("%.2f", expressions.correctedscore) </expressions> *** Block Definition *** <block VAS> / trials = [1-3=VisualAnalogueScale; 4-6=VisualAnalogueScaleRepeat] </block> *** Trial Definitions *** <trial VisualAnalogueScale> / ontrialend = [ counter.Xstore.item = trial.VisualAnalogueScale.responsex; values.responseX = trial.VisualAnalogueScale.responsex; ] / stimulusframes = [1=eraser, question, leftborder, rightborder, line, leftanchor, rightanchor] / inputdevice = mouse / validresponse = (line) / branch = [trial.showresponse] </trial> <trial showresponse> / stimulusframes = [1=X, responsevalue] / inputdevice = mouse / validresponse = (noresponse) / timeout = 1500 / recorddata = false </trial> <trial VisualAnalogueScaleRepeat> / ontrialbegin = [ values.prevX = counter.Xstore.selectedvalue; ] / ontrialend = [ values.responseX = trial.VisualAnalogueScaleRepeat.responsex; ] / stimulusframes = [1=eraser, question, leftborder, rightborder, line, leftanchor, rightanchor, prevX] / inputdevice = mouse / validresponse = (line) / branch = [trial.showresponse] </trial> *** Scale Items *** <shape line> / shape = rectangle / color = (0, 0, 0) / size = (700, 6) / position = (50, 75) / erase = false </shape> <shape leftborder> / shape = rectangle / color = (0, 0, 0) / size = (6, 30) / position = (16, 75) / erase = false </shape> <shape rightborder> / shape = rectangle / color = (0, 0, 0) / size = (6, 30) / position = (84, 75) / erase = false </shape> <shape eraser> / shape = rectangle / size = (100%,100%) / color = white / erase = false </shape> <text question> / items = ("I am confident I get the sucess I deserve in life", "Sometimes I feel depressed.", "When I try I generally suceed") / position = (50, 25) / select = sequence / erase = false </text> <text leftanchor> / items = ("Left Anchor") / position = (10, 75) / size = (50, 50) / erase = false </text> <text rightanchor> / items = ("Right Anchor") / position = (90, 75) / size = (50, 50) / erase = false </text> *** Response Indicator *** <text X> / fontstyle = ("Arial", -35, true, false, false, false, 5, 0) / items = ("X") / txcolor = (255, 0, 0) / txbgcolor = (transparent) / hposition = (values.responsex / display.width) * 100 / vposition = shape.line.vposition </text> <text prevX> / fontstyle = ("Arial", -35, true, false, false, false, 5, 0) / items = ("X") / txcolor = (0, 0, 255) / txbgcolor = (transparent) / erase = false / hposition = (values.prevX / display.width) * 100 / vposition = shape.line.vposition </text> <text responsevalue> / items = ("<% expressions.roundedvalue %> %") / position = (50, 85) </text> <counter Xstore> / select = sequence </counter> <values> / responseX = 0 / prevX = 0 </values> *** End Of File *** I.e.: Store the responses of the 1st run-through somewhere (e.g. a <counter> or <list>) and then retrieve them for the 2nd run-through. During the 2nd run-through, the previous response to the question will be indicated by a blue X.
|
|
|
Nina
|
|
Group: Forum Members
Posts: 14,
Visits: 73
|
+x+x+x+x+x+x+x+xFor anyone who's interested, here's a small sample script that shows how to implement a 'real' VAS with Inquisit 3 (see attached file). Hopefully this will be useful for some. Regards, ~Dave Hi Dave, I tried your script and found it to be quite what I was looking for. There´s just one problem i have. In my experiment participants are asked to rate quite a number of questions and I tried to fill in the questions in the <text question> . <text question> / items = ("I am confident I get the sucess I deserve in life", "Sometimes I feel depressed.", "When I try I generally suceed") / position = (50, 25) / select = sequence / erase = false </text> The problem now is that since the questions aren´t of the same length there is always a part of the old question text displayed when the next question is presented. Is there a way to solve this problem or am I supposed to built a new item for each question? And if I have to do so, how do I implement that into the script (blocks, trials, etc.)? I hope it get´s clear what I mean. Best regards, Nina Oh and by the way, is there a way to use screencaptures with VASs? My paradigm requires participants to answer these questions twice and use their first rating as an orientation. It would be best if they could use the very same VAS to do so but if that is not possible it would also be fine if they just see their past response. Can someone help me with that? Add a <shape> to the script that covers the entire screen and thus "erases" / overwrites any previous questions fully. Display it as the 1st stimulus in <trial VisualAnalogueScale> <shape eraser> / shape = rectangle / size = (100%,100%) / color = white / erase = false </shape> <trial VisualAnalogueScale> / stimulusframes = [1= eraser, question, leftborder, rightborder, line, leftanchor, rightanchor] / inputdevice = mouse / validresponse = (line) / branch = [trial.showresponse] </trial> To get screencaptures, set the /screencapture attribute to true in <trial showresponse>: <trial showresponse> / stimulusframes = [1=X, responsevalue] / inputdevice = mouse / validresponse = (noresponse) / timeout = 1500 / recorddata = false / screencapture = true</trial> Thank you, that helps a lot :) And how can I use the screencaptures later on in the experiment? That is not possible. You'll have to do something like this instead: *** Default Settings & Data Specifications *** <defaults> / fontstyle = ("Arial", -19, true, false, false, false, 5, 0) </defaults> <data> / columns = [subject, date, time, blockcode, trialcode, trialnum, latency, text.question.currentitem, expressions.correctedscore] </data> *** Response Scoring Routines *** <expressions> / correctionvalue = (display.width - shape.line.width) / 2 / correctedscore = (values.responsex - expressions.correctionvalue) / shape.line.width * 100 / roundedvalue = format("%.2f", expressions.correctedscore) </expressions> *** Block Definition *** <block VAS> / trials = [1-3=VisualAnalogueScale; 4-6=VisualAnalogueScaleRepeat] </block> *** Trial Definitions *** <trial VisualAnalogueScale> / ontrialend = [ counter.Xstore.item = trial.VisualAnalogueScale.responsex; values.responseX = trial.VisualAnalogueScale.responsex; ] / stimulusframes = [1=eraser, question, leftborder, rightborder, line, leftanchor, rightanchor] / inputdevice = mouse / validresponse = (line) / branch = [trial.showresponse] </trial> <trial showresponse> / stimulusframes = [1=X, responsevalue] / inputdevice = mouse / validresponse = (noresponse) / timeout = 1500 / recorddata = false </trial> <trial VisualAnalogueScaleRepeat> / ontrialbegin = [ values.prevX = counter.Xstore.selectedvalue; ] / ontrialend = [ values.responseX = trial.VisualAnalogueScaleRepeat.responsex; ] / stimulusframes = [1=eraser, question, leftborder, rightborder, line, leftanchor, rightanchor, prevX] / inputdevice = mouse / validresponse = (line) / branch = [trial.showresponse] </trial> *** Scale Items *** <shape line> / shape = rectangle / color = (0, 0, 0) / size = (700, 6) / position = (50, 75) / erase = false </shape> <shape leftborder> / shape = rectangle / color = (0, 0, 0) / size = (6, 30) / position = (16, 75) / erase = false </shape> <shape rightborder> / shape = rectangle / color = (0, 0, 0) / size = (6, 30) / position = (84, 75) / erase = false </shape> <shape eraser> / shape = rectangle / size = (100%,100%) / color = white / erase = false </shape> <text question> / items = ("I am confident I get the sucess I deserve in life", "Sometimes I feel depressed.", "When I try I generally suceed") / position = (50, 25) / select = sequence / erase = false </text> <text leftanchor> / items = ("Left Anchor") / position = (10, 75) / size = (50, 50) / erase = false </text> <text rightanchor> / items = ("Right Anchor") / position = (90, 75) / size = (50, 50) / erase = false </text> *** Response Indicator *** <text X> / fontstyle = ("Arial", -35, true, false, false, false, 5, 0) / items = ("X") / txcolor = (255, 0, 0) / txbgcolor = (transparent) / hposition = (values.responsex / display.width) * 100 / vposition = shape.line.vposition </text> <text prevX> / fontstyle = ("Arial", -35, true, false, false, false, 5, 0) / items = ("X") / txcolor = (0, 0, 255) / txbgcolor = (transparent) / erase = false / hposition = (values.prevX / display.width) * 100 / vposition = shape.line.vposition </text> <text responsevalue> / items = ("<% expressions.roundedvalue %> %") / position = (50, 85) </text> <counter Xstore> / select = sequence </counter> <values> / responseX = 0 / prevX = 0 </values> *** End Of File *** I.e.: Store the responses of the 1st run-through somewhere (e.g. a <counter> or <list>) and then retrieve them for the 2nd run-through. During the 2nd run-through, the previous response to the question will be indicated by a blue X. Wow, thank you so much!! :) :) :) That's really great! Best regards, Nina
|
|
|
Nina
|
|
Group: Forum Members
Posts: 14,
Visits: 73
|
Hey Dave,
I am so sorry, but I´ve got another question. I´ve been working with your script (which works really great, so thank you very much again!!) and tried to include another VAS. To specify where the problem is I´ll have to give a short overview over the entire experiment. So after a few demographic questions participants are asked to rate how much they agree to certain statements (and they do so on the VAS). They are supposed to to so for three scales (Satisfaction with Life Scale (SWLS), Core Self Evaluation Scale (CSES) and PANAS). Afterwards they do a different task, where they interact with someone directly (so no Inquisit here) and then I want to reassess the three scales again but in a different order (PANAS, Satisfaction with Life Scale, Core Self Evaluation Scale) I tried to just copy the <trial VisualAnalogeScale> and the <trial VisualAnalogeScaleRepeat> and rename them for the Scales but now I face the problem that when repeating the scales Inquisit does show an old response but not the one the participant gave on the very current item. I know that I somehow have to tell Inquisit where to get the old response from but I have absolutly now idea how to do so.
I include my script here and hope it isn´t a problem that the items and instructions are in German.
Would be great if you could give me a hint on how to solve the problem :) Thank you!
|
|
|
Dave
|
|
Group: Administrators
Posts: 13K,
Visits: 103K
|
+xHey Dave, I am so sorry, but I´ve got another question. I´ve been working with your script (which works really great, so thank you very much again!!) and tried to include another VAS. To specify where the problem is I´ll have to give a short overview over the entire experiment. So after a few demographic questions participants are asked to rate how much they agree to certain statements (and they do so on the VAS). They are supposed to to so for three scales (Satisfaction with Life Scale (SWLS), Core Self Evaluation Scale (CSES) and PANAS). Afterwards they do a different task, where they interact with someone directly (so no Inquisit here) and then I want to reassess the three scales again but in a different order (PANAS, Satisfaction with Life Scale, Core Self Evaluation Scale) I tried to just copy the <trial VisualAnalogeScale> and the <trial VisualAnalogeScaleRepeat> and rename them for the Scales but now I face the problem that when repeating the scales Inquisit does show an old response but not the one the participant gave on the very current item. I know that I somehow have to tell Inquisit where to get the old response from but I have absolutly now idea how to do so. I include my script here and hope it isn´t a problem that the items and instructions are in German. Would be great if you could give me a hint on how to solve the problem :) Thank you! You need separate <counter>s to store the responses -- one per scale. See attached.
|
|
|
Nina
|
|
Group: Forum Members
Posts: 14,
Visits: 73
|
+x+xHey Dave, I am so sorry, but I´ve got another question. I´ve been working with your script (which works really great, so thank you very much again!!) and tried to include another VAS. To specify where the problem is I´ll have to give a short overview over the entire experiment. So after a few demographic questions participants are asked to rate how much they agree to certain statements (and they do so on the VAS). They are supposed to to so for three scales (Satisfaction with Life Scale (SWLS), Core Self Evaluation Scale (CSES) and PANAS). Afterwards they do a different task, where they interact with someone directly (so no Inquisit here) and then I want to reassess the three scales again but in a different order (PANAS, Satisfaction with Life Scale, Core Self Evaluation Scale) I tried to just copy the <trial VisualAnalogeScale> and the <trial VisualAnalogeScaleRepeat> and rename them for the Scales but now I face the problem that when repeating the scales Inquisit does show an old response but not the one the participant gave on the very current item. I know that I somehow have to tell Inquisit where to get the old response from but I have absolutly now idea how to do so. I include my script here and hope it isn´t a problem that the items and instructions are in German. Would be great if you could give me a hint on how to solve the problem :) Thank you! You need separate <counter>s to store the responses -- one per scale. See attached. Ah, I see. Thank you so much!! :)
|
|
|