Hello,
First of all thank you, Dave, for all the previous help.
Last few days I puzzled over this:
In short; I have different trials (irrelevants, probes, targets, irrelevant_sounds, probes_sounds and targets_sounds). The ..._sounds trials need different 'tooslow' feedback since they are only finished playing after 1 second (and the other stimuli present right away on the screen).
I implemented the feedback in the script (in bold) but when I run the block, the too slow feedback doesn't always appear. Often 6 out of 30 trials (1 block = 30 trials) it doesn't.
I really don't understand how this happens. Does anyone have an idea?
Thank you for checking my script!
<trial irrelevants>
/ ontrialbegin = [
trial.irrelevants.resetstimulusframes();
trial.irrelevants.insertstimulustime(list.irrelevants.nextvalue, 200);
if (trial.irrelevants.latency > 800){trial.irrelevants.insertstimulustime(text.tooslow, 800)}
]
/branch= [if(trial.irrelevants.responsetext == "s")trial.wrong]
/stimulustimes = [0 = yes, no]
/validresponse = ("s","l")
/correctresponse = ("l") // no = l-key
/timeout = 2500
/beginresponsetime = 0
</trial>
<trial targets>
/ ontrialbegin = [
trial.targets.resetstimulusframes();
trial.targets.insertstimulustime(list.targets.nextvalue, 200);
if (trial.targets.latency > 800){trial.targets.insertstimulustime(text.tooslow, 800)}
]
/branch= [if (trial.targets.responsetext == "l")trial.wrong]
/stimulustimes = [0 = yes, no]
/validresponse = ("s","l")
/correctresponse = ("s") // yes = s-key
/timeout = 2500
/beginresponsetime = 0
</trial>
<trial probes>
/ ontrialbegin = [
trial.probes.resetstimulusframes();
trial.probes.insertstimulustime(list.probes.nextvalue, 200);
if (trial.probes.latency > 800){trial.probes.insertstimulustime(text.tooslow, 800)}
]
/branch= [if (trial.probes.responsetext == "s")trial.wrong]
/stimulustimes = [0 = yes, no]
/validresponse = ("s","l")
/correctresponse = ("l")
/timeout = 2500
/beginresponsetime = 0
</trial>
TRIAL SOUNDS________
<trial irrelevants_sounds>
/ ontrialbegin = [
trial.irrelevants_sounds.resetstimulusframes();
trial.irrelevants_sounds.insertstimulustime(list.irrelevants_sounds.nextvalue, 200);
if (trial.irrelevants_sounds.latency > 1800){trial.irrelevants_sounds.insertstimulustime(text.tooslow, 1800)}
]
/branch= [if(trial.irrelevants_sounds.responsetext == "s")trial.wrong]
/stimulustimes = [0 = yes, no, soundicon]
/validresponse = ("s","l")
/correctresponse = ("l") // no = l-key
/timeout = 2500
/beginresponsetime = 0
</trial>
<trial targets_sounds>
/ ontrialbegin = [
trial.targets_sounds.resetstimulusframes();
trial.targets_sounds.insertstimulustime(list.targets_sounds.nextvalue, 200);
if (trial.targets_sounds.latency > 1800){trial.targets_sounds.insertstimulustime(text.tooslow, 1800)}
]
/branch= [if(trial.targets_sounds.responsetext == "l")trial.wrong]
/stimulustimes = [0 = yes, no, soundicon]
/validresponse = ("s","l")
/correctresponse = ("s") // no = l-key
/timeout = 2500
/beginresponsetime = 0
</trial>
<trial probes_sounds>
/ ontrialbegin = [
trial.probes_sounds.resetstimulusframes();
trial.probes_sounds.insertstimulustime(list.probes_sounds.nextvalue, 200);
if (trial.probes_sounds.latency > 1800){trial.probes_sounds.insertstimulustime(text.tooslow, 1800)}
]
/branch= [if(trial.probes_sounds.responsetext == "s")trial.wrong]
/stimulustimes = [0 = yes, no, soundicon]
/validresponse = ("s","l")
/correctresponse = ("l") // no = l-key
/timeout = 2500
/beginresponsetime = 0
</trial>