Millisecond Forums

Using timers during task performance

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

By Laura_90 - 6/25/2014


Hello,
 I am discovering the possibilities of using Inquisit for my PhD research. I have a specific question regarding the use of multiple tasks within one set.
If I want to investigate 2 different tasks, which are presented in a fixed order using a questionnaires after each tasks (e.g. first digit span, then Questionnaire 1, then ANT, then Questionnaire 2) is it possible to use timers so that, for example, participants will have in total 2 minutes to complete the first task. If someone finishes earlier, he/she will get a waiting screen until the 2 minutes are finished, only then Questionnaire 1 will appear. Subsequently, they will have 1 minute to complete questionnaire 1, if finished earlier, a waiting screen will appear again until 1 minute has passed, whereafter task 2 will be presented.
Hopefully you could help me with this.

By Dave - 6/25/2014

Yes, it would certainly be possible to build using <block>-level /timeout attributes along with a bunch of expressions. The exact implementation will depend on the scripts you are using -- and I would thus recommend to study their code extensively prior to embarking on any modifications.

The basic idea goes like this:

<values>
/ tasktimeout = 120000
/ waittimeout = 0
</values>

<expt>
/ blocks = [1=taskblock; 2=waitblock]
</expt>

<block taskblock>
/ onblockend = [values.waittimeout=values.tasktimeout-block.taskblock.elapsedtime]
/ trials = [1-100=tasktrial]
/ timeout = values.tasktimeout
</block>

<block waitblock>
/ skip = [values.waittimeout <= 0]
/ trials = [1=waittrial]
</block>

<trial tasktrial>
/ stimulusframes = [1=tasktext]
/ validresponse = (57)
</trial>

<trial waittrial>
/ stimulusframes = [1=waittext]
/ validresponse = (noresponse)
/ timeout = values.waittimeout
</trial>

<text tasktext>
/ items = ("Press the SPACEBAR as quickly as possible.")
</text>

<text waittext>
/ items = ("Please take a rest for <%values.waittimeout/1000%> seconds.")
</text>