Hi,
I was wondering whether there is a way of ensuring that pairs of stimuli are presented an equal number of times in each trial type. I have 120 trials in which I am going to present pairs of pictoral stimuli. There are 4 types of trials (or conditions), and 15 pairs of pictures, so I need to present each pair of pictures twice in each condition. Ideally, in each condition I would like each picture to be presented once on the left and once on the right (so I guess then I have 8 types of trials altogether??).
Is there a shorter way to do this rather than write out each trial individually?
Hope this makes sense!
Thanks in advance for your help. I've pasted the relevant parts of my script below (n.b. picture '1b' always has to be presented with picture '1a' etc).
<item chocset>
/ 1 = "1b.jpg"
/ 2 = "2b.jpg"
/ 3 = "3b.jpg"
/ 4 = "4b.jpg"
/ 5 = "5b.jpg"
/ 6 = "6b.jpg"
/ 7 = "7b.jpg"
/ 8 = "8b.jpg"
/ 9 = "9b.jpg"
/ 10 = "10b.jpg"
/ 11 = "11b.jpg"
/ 12 = "12b.jpg"
/ 13 = "13b.jpg"
/ 14 = "14b.jpg"
/ 15 = "15b.jpg"
</item>
<item controlset2>
/ 1 = "1a.jpg"
/ 2 = "2a.jpg"
/ 3 = "3a.jpg"
/ 4 = "4a.jpg"
/ 5 = "5a.jpg"
/ 6 = "6a.jpg"
/ 7 = "7a.jpg"
/ 8 = "8a.jpg"
/ 9 = "9a.jpg"
/ 10 = "10a.jpg"
/ 10 = "11a.jpg"
/ 10 = "12a.jpg"
/ 10 = "13a.jpg"
/ 10 = "14a.jpg"
/ 10 = "15a.jpg"
</item>
<picture lefttarget>
/items = ("1b.jpg","2b.jpg","3b.jpg","4b.jpg","5b.jpg","6b.jpg","7b.jpg","8b.jpg","9b.jpg","10b.jpg","11b.jpg","12b.jpg","13b.jpg","14b.jpg","15b.jpg")
/position = (20,50)
/size = (65%, 40%)
/select = picture.rightcontrol.currentindex
</picture>
<picture righttarget>
/items=("1b.jpg","2b.jpg","3b.jpg","4b.jpg","5b.jpg","6b.jpg","7b.jpg","8b.jpg","9b.jpg","10b.jpg","11b.jpg","12b.jpg","13b.jpg","14b.jpg","15b.jpg")
/position = (80,50)
/size = (65%, 40%)
/select = picture.leftcontrol.currentindex
</picture>
<picture leftcontrol>
/items = ("1a.jpg","2a.jpg","3a.jpg","4a.jpg","5a.jpg","6a.jpg","7a.jpg","8a.jpg","9a.jpg","10a.jpg","11a.jpg","12a.jpg"."13a.jpg","14a.jpg","15a.jpg")
/position = (20,50)
/size = (65%, 40%)
/select = noreplace
</picture>
<picture rightcontrol>
/items=("1a.jpg","2a.jpg","3a.jpg","4a.jpg","5a.jpg","6a.jpg","7a.jpg","8a.jpg","9a.jpg","10a.jpg","11a.jpg","12a.jpg"."13a.jpg","14a.jpg"."15a.jpg")
/size = (65%, 40%)
/position = (80,50)
/select = noreplace
</picture>
<trial right100_win>
/stimulustimes = [0 = FixationCRS ; 1000 = blank,fixation100; 2000 = blank; 2001 = leftcontrol, righttarget; 4001 = blank, ResponseC]
/correctresponse = (" ")
/ validresponse = (" ")
/ response = correct
/ branch = [if(trial.right100_win.correct) trial.winchoc]
</trial>
<trial left100_win>
/stimulustimes = [0 = FixationCRS; 1000= blank, fixation100; 2000 = blank; 2001 = rightcontrol, lefttarget; 4001 = blank,ResponseC]
/correctresponse = (" ")
/ validresponse = (" ")
/ response = correct
/ branch = [if(trial.left100_win.correct) trial.winchoc]
</trial>
<trial right50_win>
/stimulustimes = [0 = FixationCRS; 1000=blank, fixation50; 2000 = blank; 2001 = leftcontrol, righttarget; 4001 = blank,ResponseC]
/correctresponse = (" ")
/ validresponse = (" ")
/ response = correct
/ branch = [if(trial.right50_win.correct) trial.winchoc]
</trial>
<trial left50_win>
/stimulustimes = [0 = FixationCRS; 1000=blank, fixation50; 2000 = blank; 2001 = rightcontrol, lefttarget; 4001 = blank,ResponseC]
/correctresponse = (" ")
/ validresponse = (" ")
/ response = correct
/ branch = [if(trial.left50_win.correct) trial.winchoc]
</trial>
<trial right50_lose>
/stimulustimes = [0 = FixationCRS; 1000=blank, fixation50; 2000 = blank; 2001 = leftcontrol, righttarget; 4001 = blank,ResponseC]
/correctresponse = (" ")
/ validresponse = (" ")
/ response = correct
/ branch = [if(trial.right50_lose.correct) trial.winnothing]
</trial>
<trial left50_lose>
/stimulustimes = [0 = FixationCRS; 1000=blank, fixation50; 2000= blank; 2001 = rightcontrol, lefttarget; 4001 = blank,ResponseC]
/correctresponse = (" ")
/ validresponse = (" ")
/ response = correct
/ branch = [if(trial.left50_lose.correct) trial.winnothing]
</trial>
<trial right0_lose>
/stimulustimes = [0 = FixationCRS; 1000=blank, fixation0; 2000= blank; 2001 = leftcontrol, righttarget; 4001 = blank,ResponseC]
/correctresponse = (" ")
/ validresponse = (" ")
/ response = correct
/ branch = [if(trial.right0_lose.correct) trial.winnothing]
</trial>
<trial left0_lose>
/stimulustimes = [0 = FixationCRS; 1000= blank, fixation0; 2000= blank; 2001 = rightcontrol, lefttarget; 4001 = blank, ResponseC]
/correctresponse = (" ")
/ validresponse = (" ")
/ response = correct
/ branch = [if(trial.left0_lose.correct) trial.winnothing]
</trial>
***** 120 trials ******
40 x 100% win trials: 20 x target right, 20 x target left;
20 x 50% win trials: 10 x target right, 10 x target left;
20 x 50% lose trials: 10 x target right, 10 x target left;
4
0 x 0% lose trials: 20 x target right, 20 x target left.
***********************************************************
<block main_exp>
/trials = [1-60, 62-121 = noreplacenorepeat § (right100_win,right100_win,right100_win,right100_win,right100_win,right100_win,right100_win,right100_win,right100_win,right100_win,right100_win,right100_win,right100_win,right100_win,right100_win,right100_win,right100_win,right100_win,right100_win,right100_win,
left100_win, left100_win, left100_win, left100_win, left100_win, left100_win, left100_win, left100_win, left100_win, left100_win, left100_win, left100_win, left100_win, left100_win, left100_win, left100_win, left100_win, left100_win, left100_win, left100_win,
right50_win,right50_win,right50_win,right50_win,right50_win, right50_win,right50_win,right50_win,right50_win,right50_win,
right50_lose, right50_lose, right50_lose, right50_lose, right50_lose,right50_lose, right50_lose, right50_lose, right50_lose, right50_lose,
left50_win,left50_win,left50_win,left50_win,left50_win,left50_win,left50_win,left50_win,left50_win,left50_win,
left50_lose,left50_lose,left50_lose,left50_lose,left50_lose,left50_lose,left50_lose,left50_lose,left50_lose,left50_lose,
right0_lose,right0_lose,right0_lose,right0_lose,right0_lose,right0_lose,right0_lose,right0_lose,right0_lose,right0_lose,right0_lose,right0_lose,right0_lose,right0_lose,right0_lose,right0_lose,right0_lose,right0_lose,right0_lose, right0_lose,
left0_lose,left0_lose,left0_lose,left0_lose,left0_lose,left0_lose,left0_lose,left0_lose,left0_lose,left0_lose,left0_lose,left0_lose,left0_lose,left0_lose,left0_lose,left0_lose,left0_lose,left0_lose,left0_lose,left0_lose); 61 = rest1]
</block>
<expt>
/blocks = [1=practice; 2=main_exp]
/postinstructions = (end)
</expt>