+xHi guys, I do not speak English well so I can explain it strangely but I will do my best!
there is two conditions, one is 1, 2, 3, 4 the other is 5, 6, 7, 8
I want to stimulate each condition randomly in one trial while maintaining the stimulus sequence of each condition.
ex) 1, 5, 2, 3, 6, 7, 8, 4 or 5, 1, 6, 2, 7, 8, 3, 4 .......etc
but not this ; 1, 2, 4, 3, 5, 6, 7, 8 or 5, 7, 8, 6, 1, 2, 3, 4 Because the order of the stimulus belonging to each condition is wrong.
I attempted to find a way or function to randomly present stimuli of conditions that maintained a certain order in a trial, but failed.
I'm not sure if I explained well, but I would be very happy if I could get help. Thanks for reading!
It's not clear to me what exactly you're trying to do, but generally speaking you'll want to sample your stimuli from <list> elements set to sequential selection. I.e.:
<list condition1stimuli>
/ items = (text.one, text.two, text.three, text.four)
/ selectionmode = sequence
/ selectionrate = always
</list>
<text one>
/ items = ("1")
</text>
<text two>
/ items = ("2")
</text>
<text three>
/ items = ("3")
</text>
<text four>
/ items = ("4")
</text>
<list condition2stimuli>
/ items = (text.five, text.six, text.seven, text.eight)
/ selectionmode = sequence
/ selectionrate = always
</list>
<text five>
/ items = ("5")
</text>
<text six>
/ items = ("6")
</text>
<text seven>
/ items = ("7")
</text>
<text eight>
/ items = ("8")
</text>
<list masterlist>
/ items = (list.condition1stimuli.nextvalue, list.condition2stimuli.nextvalue)
/ select = values.condition
/ selectionrate = always
</list>
<list conditions>
/ items = (1,1,1,1,2,2,2,2)
/ selectionrate = always
/ selectionmode = random
/ replace = false
</list>
<values>
/ condition = 1
</values>
<trial example>
/ ontrialbegin = [
values.condition = list.conditions.nextvalue;
trial.example.insertstimulustime(list.masterlist.nextvalue, 0);
values.condition = list.conditions.nextvalue;
trial.example.insertstimulustime(list.masterlist.nextvalue, 1000);
values.condition = list.conditions.nextvalue;
trial.example.insertstimulustime(list.masterlist.nextvalue, 2000);
values.condition = list.conditions.nextvalue;
trial.example.insertstimulustime(list.masterlist.nextvalue, 3000);
values.condition = list.conditions.nextvalue;
trial.example.insertstimulustime(list.masterlist.nextvalue, 4000);
values.condition = list.conditions.nextvalue;
trial.example.insertstimulustime(list.masterlist.nextvalue, 5000);
values.condition = list.conditions.nextvalue;
trial.example.insertstimulustime(list.masterlist.nextvalue, 6000);
values.condition = list.conditions.nextvalue;
trial.example.insertstimulustime(list.masterlist.nextvalue, 7000);
]
/ validresponse = (57)
</trial>
<block exampleblock>
/ trials = [1-4 = example]
</block>