Hi all,
I was wondering if there was a way of creating a conditional branch or a timeout that would mean a block (comprised of 7 trials which are all a space bar press causing an outcome) could end based on the time since the last response, rather than on how many correct responses/ correct streaks. Ie. I was hoping that the block would time out if the participant has made no response for 4 minutes.
I was also hoping to find out if Inquisit 4 has a dual monitor capability. I can't find any information about this in the help or on the forums, except that a few years ago someone said Inquisit 4 should be coming out with this featured. Ideally I want to be able to see what the participant is doing/ view some kind of summary of results from another screen.
Thanks in advance!
You can do that by using a properly defined /stop attribute in the respective <block>.
No, Inquisit does not have that type of dual monitor support yet.
Thanks for that.
In regards to the the /stop command, the trouble is that I need the participant to keep cycling through a set of blocks until they stop responding for 4minutes. This means that I have a branch that loops based on whether they completed the block- if they have then they go on to the next block and keep getting more blocks after this, if they haven't and 4minutes has elapsed then they can finish the loop and move on. The problem with this is that the 4minute timeout is based on when they last completed a block, rather than last made any response at all. Is there any command that goes with the /stop command to say 'if (no response for 4mins) block.nextblock'? I know the 'no response' command is only to state that an individual does not have to respond on a given trial or block.
Thanks again.
You'll want to set every <trial> to /timeout after 4 mins. You'll want to /stop the respective <block> if the last observed response is 0 (i.e. no response) and the timeout is met. That information is available via block-level response and latency properties as detailed in the documentation.
That worked perfectly, thankyou.
Would you also know if there is a way to get a block to timeout/ stop based on script.elapsedtime rather than time since block/trial started? Ie. if a participant gets to say 10 minutes through the experiment and is still on a certain stage, then would a branch such as:
/branch = [ if (script.elapsedtime >= 6000000) block.get_experimenter]
work? I'm not sure if I am using the elapsedtime attribute in the right way, I have read the inquisit help and language reference from top to bottom!
Thanks again, couldn't have gotten to this stage without your help!
You can use script.elapsedtime in /stop attributes. I would not use /branch, a /branch at the <block> level is evaluated at the *end* of the block, so it won't do what you want it to if there are still trials left in the block.