+xHI all,
I'm currently working on a Stroop test and I am having an issue with the program selecting words from a list. My goal is for the program to select words from a general list and not have that word be shown again in a different color. E.g. "exist" is shown in green, and is taken out of the general list and never shown in red or blue. I've tried using a counter, but it only shows the first words of the lists in different colors. I've attached part of the code below.
Thank you!
<expt>
/blocks = [1=practice;2=allneustroop; 3=allemostroop]
</expt>
<block practice>
/ preinstructions = (practice)
/ trials = [1=ready; 2-11=random(neu_green, neu_blue, neu_red,emo_green, emo_blue, emo_red)]
/ errormessage =(errormessage,0)
</block>
<block allemostroop>
/preinstructions=(allemostroop)
/trials=[1=ready; 2-51=noreplace(emo_green, emo_blue, emo_red)]
/errormessage=(errormessage, 0)
</block>
<trial emo_red>
/stimulustimes = [0=emo_red]
/posttrialpause = 250
/validresponse = ("red", "green", "blue")
/correctresponse = ("red")
/timeout = 3000
</trial>
<trial emo_blue>
/stimulustimes = [0=emo_blue]
/posttrialpause = 250
/validresponse = ("green", "blue", "red")
/correctresponse = ("blue")
/timeout = 3000
</trial>
<trial emo_green>
/stimulustimes = [0=emo_green]
/posttrialpause = 250
/validresponse = ("green", "blue", "red")
/correctresponse = ("green")
/timeout = 3000
</trial>
<text emo_red>
/items=emotional
/color = (255,0,0)
/select = counter.emotional
</text>
<text emo_blue>
/items=emotional
/color = (0,0,255)
/select = counter.emotional
</text>
<text emo_green>
/items=emotional
/color = (0,255,0)
/select = counter.emotional
</text>
<item emotional>
/1 =" ABUSE "
/2 =" AGONY "
/3 =" AMPUTATE "
/4 =" ASSASSIN "
/5 =" BLEEDING "
</item>
<counter emotional>
/ items = emotional(1-50)
/ select = noreplace
</counter>
Why does your counter have 50 items / return item numbers from 1 to 50
<counter emotional>
/ items = emotional
(1-50)/ select = noreplace
</counter>
yet there are only 5 words (i.e. item numbers from 1 to 5)?
<item emotional>
/1 =" ABUSE "
/2 =" AGONY "
/3 =" AMPUTATE "
/4 =" ASSASSIN "
/5 =" BLEEDING "
</item>
I don't quite understand how that's supposed to work.
Generally speaking, though, your overall approach is correct. If you had 50 items, you would set up a <list> or <counter> with item numbers 1 to 50, and then have the three <text> elements sample item numbers from that same, single pool:
<block allemostroop>
/preinstructions=(allemostroop)
/trials=[1=ready; 2-51=noreplace(emo_green, emo_blue, emo_red)]
/errormessage=(errormessage, 0)
</block>
<trial emo_red>
/stimulustimes = [0=emo_red]
/posttrialpause = 250
/validresponse = ("red", "green", "blue")
/correctresponse = ("red")
/timeout = 3000
</trial>
<trial emo_blue>
/stimulustimes = [0=emo_blue]
/posttrialpause = 250
/validresponse = ("green", "blue", "red")
/correctresponse = ("blue")
/timeout = 3000
</trial>
<trial emo_green>
/stimulustimes = [0=emo_green]
/posttrialpause = 250
/validresponse = ("green", "blue", "red")
/correctresponse = ("green")
/timeout = 3000
</trial>
<text emo_red>
/items=emotional
/color = (255,0,0)
/select = list.emoitemnumbers.nextindex
</text>
<text emo_blue>
/items=emotional
/color = (0,0,255)
/select = list.emoitemnumbers.nextindex
</text>
<text emo_green>
/items=emotional
/color = (0,255,0)
/select = list.emoitemnumbers.nextindex
</text>
<item emotional>
/1 =" ITEM 01 "
/2 =" ITEM 02 "
/3 =" ITEM 03 "
/4 =" ITEM 04 "
/5 =" ITEM 05 "
/6 =" ITEM 06 "
/7 =" ITEM 07 "
/8 =" ITEM 08 "
/9 =" ITEM 09 "
/10 =" ITEM 10 "
/11 =" ITEM 11 "
/12 =" ITEM 12 "
/13 =" ITEM 13 "
/14 =" ITEM 14 "
/15 =" ITEM 15 "
/16 =" ITEM 16 "
/17 =" ITEM 17 "
/18 =" ITEM 18 "
/19 =" ITEM 19 "
/20 =" ITEM 20 "
/21 =" ITEM 21 "
/22 =" ITEM 22 "
/23 =" ITEM 23 "
/24 =" ITEM 24 "
/25 =" ITEM 25 "
/26 =" ITEM 26 "
/27 =" ITEM 27 "
/28 =" ITEM 28 "
/29 =" ITEM 29 "
/30 =" ITEM 30 "
/31 =" ITEM 31 "
/32 =" ITEM 32 "
/33 =" ITEM 33 "
/34 =" ITEM 34 "
/35 =" ITEM 35 "
/36 =" ITEM 36 "
/37 =" ITEM 37 "
/38 =" ITEM 38 "
/39 =" ITEM 39 "
/40 =" ITEM 40 "
/41 =" ITEM 41 "
/42 =" ITEM 42 "
/43 =" ITEM 43 "
/44 =" ITEM 44 "
/45 =" ITEM 45 "
/46 =" ITEM 46 "
/47 =" ITEM 47 "
/48 =" ITEM 48 "
/49 =" ITEM 49 "
/50 =" ITEM 50 "
</item>
<list emoitemnumbers>
/ poolsize = 50
</list>
If, say, item number 23 gets randomly selected by <text emo_red>, the two other <text> elements cannot sample item number 23 anymore.