I have incorporated it now into my script. I have four conditions of word pairs. The idea is that this drop-off learning procedure continues until all targets of the pairs from all conditions are recalled correctly once (upon seeing the cue of the pair). What I cannot seem to get running is *not specifying a trial number* in the block section, this is why it continues to only run the number that I indicate there. This is why I also do not know whether I coded the drop-off procedure correctly.
If you see mistakes in my code, I would appreciate it a lot if you could help me!
Thank you so so much!
I am attaching my script document to this message, as well as posting it under here:
<parameters>
/wordHeight = 5%
/phase1Timeout = 5000
/phase1incorrect = 2500
</parameters>
*****WORD LISTS******
<item Suppressioncue>
/ 1="VAULT"
/ 2="SERVANT"
/ 3="HELM"
/ 4="NEEDLE"
/ 5="OFFICER"
/ 6="WAFFLE"
/ 7="DOUGH"
/ 8="JOURNEY"
/ 9="CRADLE"
/ 10="REMOVE"
/ 11="FOSSIL"
/ 12="DIET"
</item>
<list Suppressioncuelist>
/ poolsize = 12
/ replace = false
/ selectionmode =random
/ selectionrate = always
</list>
<item Baselinecue>
/ 1="HUG"
/ 2="PICNIC"
/ 3="LENS"
/ 4="JOGGER"
/ 5="STUMBLE"
/ 6="ACCIDENT"
/ 7="GATE"
/ 8="BEACH"
/ 9="RUG"
/ 10="SOIL"
/ 11="NIGHTCLUB"
/ 12="NAIL"
</item>
<list Baselinecuelist>
/ poolsize = 12
/ replace = false
/ selectionmode =random
/ selectionrate = always
</list>
<item Recallcue>
/ 1="DECAY"
/ 2="VITAMIN"
/ 3="GLOW"
/ 4="NAPKIN"
/ 5="LAWN"
/ 6="ALERT"
/ 7="AVENUE"
/ 8="POLISH"
/ 9="PENCIL"
/ 10="DECISION"
/ 11="HIVE"
/ 12="ANTLER"
</item>
<list Recallcuelist>
/ poolsize = 12
/ replace = false
/ selectionmode =random
/ selectionrate = always
</list>
<item Fillercue>
/ 1="BOND"
/ 2="GARAGE"
/ 3= "ACID"
/ 4= "PRIZE"
/ 5= "LEAP"
</item>
<list Fillercuelist>
/ poolsize = 5
/ replace = false
/ selectionmode =random
/ selectionrate = always
</list>
<item Suppressiontarget>
/ 1="GOLD"
/ 2="QUEEN"
/ 3="OPERA"
/ 4="DOCTOR"
/ 5="BLUE"
/ 6="MAPLE"
/ 7="SALT"
/ 8="TROUSERS"
/ 9="PARENT"
/ 10="CANCER"
/ 11="DINOSAUR"
/ 12="CREAM"
</item>
<list Suppressiontargetlist>
/ poolsize = 12
/ selectionmode = list.Suppressioncuelist.currentindex
/ replace = false
/ selectionmode =random
/ selectionrate = always
</list>
<item Baselinetarget>
/ 1="ROSE"
/ 2="HILL"
/ 3="PHYSICS"
/ 4="COLLIE"
/ 5="CLOWN"
/ 6="SNOW"
/ 7="TRAIN"
/ 8="AFRICA"
/ 9="WOOL"
/ 10="TOMATO"
/ 11="LIPSTICK"
/ 12="PICTURE"
</item>
<list Baselinetargetlist>
/ poolsize = 12
/ selectionmode = list.Baselinecuelist.currentindex
/ replace = false
/ selectionmode =random
/ selectionrate = always
</list>
<item Recalltarget>
/ 1="CARBON"
/ 2="LEMON"
/ 3="GHOST"
/ 4="FORK"
/ 5="BEEF"
/ 6="ROBBERY"
/ 7="MILE"
/ 8="DIAMOND"
/ 9="GLUE"
/ 10="JUDGE"
/ 11="HEXAGON"
/ 12="RIFLE"
</item>
<list Recalltargetlist>
/ poolsize = 12
/ selectionmode = list.Recallcuelist.currentindex
/ replace = false
/ selectionmode =random
/ selectionrate = always
</list>
<item Fillertarget>
/ 1 = "WEDDING"
/ 2 ="BENCHPRESS"
/ 3= "DYNAMITE"
/ 4= "QUIZ"
/ 5 = "BALLET"
</item>
<list Fillertargetlist>
/ poolsize = 5
/ selectionmode = list.Fillercuelist.currentindex
/ replace = false
/ selectionmode =random
/ selectionrate = always
</list>
******VALUES****************
<values>
/stopblock=0
/index_Baselinecueword = 0
/index_Suppressioncueword = 0
/index_Recallcueword = 0
/index_Fillercueword = 0
/index_Baselinerecallword = 0
/index_Suppressionrecallword = 0
/index_Recallrecallword = 0
/index_Fillerrecallword = 0
/Baselinecueword = ""
/Suppressioncueword = ""
/Recallcueword = ""
/Fillercueword = ""
/Baselinerecallword = ""
/Suppressionrecallword = ""
/Recallrecallword = ""
/Fillerrecallword = ""
/trialCount = 0
/ncorrect=0
/countPhaseI = 0
</values>
********STIMULI***********
<text Suppressioncue>
/ items = ("<%item.Suppressioncue.item(values.index_Suppressioncueword)%>")
/ position = (49%, 50%)
/ fontstyle = ("Arial", parameters.wordHeight, true, false, false, false, 5, 1)
/ vjustify = center
</text>
<text Baselinecue>
/ items = ("<%item.Baselinecue.item(values.index_Baselinecueword)%>")
/ position = (49%, 50%)
/ fontstyle = ("Arial", parameters.wordHeight, true, false, false, false, 5, 1)
/ vjustify = center
</text>
<text Recallcue>
/ items = ("<%item.Recallcue.item(values.index_Recallcueword)%>")
/ position = (49%, 50%)
/ fontstyle = ("Arial", parameters.wordHeight, true, false, false, false, 5, 1)
/ vjustify = center
</text>
<text Fillercue>
/ items = ("<%item.Fillercue.item(values.index_Fillercueword)%>")
/ position = (49%, 50%)
/ fontstyle = ("Arial", parameters.wordHeight, true, false, false, false, 5, 1)
/ vjustify = center
</text>
<text Suppressiontarget>
/ items = ("<%item.Suppressiontarget.item(values.index_Suppressioncueword)%>")
/ position = (49%, 50%)
/ fontstyle = ("Arial", parameters.wordHeight, true, false, false, false, 5, 1)
/ vjustify = center
/ color = blue
</text>
<text Baselinetarget>
/ items = ("<%item.Baselinetarget.item(values.index_Baselinecueword)%>")
/ position = (49%, 50%)
/ fontstyle = ("Arial", parameters.wordHeight, true, false, false, false, 5, 1)
/ vjustify = center
/ color = blue
</text>
<text Recalltarget>
/ items = ("<%item.Recalltarget.item(values.index_Recallcueword)%>")
/ position = (49%, 50%)
/ fontstyle = ("Arial", parameters.wordHeight, true, false, false, false, 5, 1)
/ vjustify = center
/ color = blue
</text>
<text Fillertarget>
/ items = ("<%item.Fillertarget.item(values.index_Fillercueword)%>")
/ position = (49%, 50%)
/ fontstyle = ("Arial", parameters.wordHeight, true, false, false, false, 5, 1)
/ vjustify = center
/ color = blue
</text>
******LISTS*******************
<list teststateSuppression>
/ items = (1,1,1,1,1,1,1,1,1,1,1,1)
/ selectionmode = values.Suppressioncueword
</list>
<list teststateRecall>
/ items = (1,1,1,1,1,1,1,1,1,1,1,1)
/ selectionmode = values.Recallcueword
</list>
<list teststateBaseline>
/ items = (1,1,1,1,1,1,1,1,1,1,1,1)
/ selectionmode = values.Baselinecueword
</list>
<list teststateFiller>
/ items = (1,1,1,1,1)
/ selectionmode = values.Fillercueword
</list>
<list itemnumberSuppression>
/ items = (1,2,3,4,5,6,7,8,9,10,11,12)
</list>
<list itemnumberRecall>
/ items = (1,2,3,4,5,6,7,8,9,10,11,12)
</list>
<list itemnumberBaseline>
/ items = (1,2,3,4,5,6,7,8,9,10,11,12)
</list>
<list itemnumberFiller>
/ items = (1,2,3,4,5)
</list>
*****TRIALS*********
<trial studyrecall_BaselinePair>
/ pretrialpause = 200
/ ontrialbegin = [
values.index_Baselinecueword = list.Baselinecuelist.nextindex;
values.countPhaseI+=1;
]
/ stimulusframes = [1 = Baselinecue]
/ recorddata = true
/ inputdevice = keyboard
/ errormessage = true(Baselinetarget, 2500)
/timeout = parameters.phase1Timeout
/ validresponse = ("1", 0)
/ correctresponse = ("1")
/ ontrialend = [
if(trial.studyrecall_BaselinePair.correct==1){
list.teststateBaseline.setitem(0, values.itemnumberBaseline);
};
if(list.itemnumberBaseline.unselectedcount==0 && list.itemnumberFiller.unselectedcount==0 && list.itemnumberRecall==0 && list.itemnumberSuppression==0){
values.stopblock=1;
};
if(trial.studyrecall_BaselinePair.correct==1){
values.countPhaseI+=1;
};
]
/ branch = [
return (trial.studyrecall_BaselinePair || trial.studyrecall_FillerPair || trial.studyrecall_RecallPair || trial.studyrecall_SuppressionPair);
]
</trial>
<trial studyrecall_SuppressionPair>
/ pretrialpause = 200
/ ontrialbegin = [
values.index_Suppressioncueword = list.Suppressioncuelist.nextindex;
values.countPhaseI+=1;
]
/ stimulusframes = [1 = Suppressioncue]
/ recorddata = true
/ inputdevice = keyboard
/ errormessage = true(Suppressiontarget, 2500)
/timeout = parameters.phase1Timeout
/ validresponse = ("1", 0)
/ correctresponse = ("1")
/ ontrialend = [
if(trial.studyrecall_SuppressionPair.correct==1){
list.teststateSuppression.setitem(0, values.itemnumberSuppression);
};
if(list.itemnumberBaseline.unselectedcount==0 && list.itemnumberFiller.unselectedcount==0 && list.itemnumberRecall==0 && list.itemnumberSuppression==0){
values.stopblock=1;
};
if(trial.studyrecall_SuppressionPair.correct==1){
values.countPhaseI+=1;
};
]
/ branch = [
return (trial.studyrecall_BaselinePair || trial.studyrecall_FillerPair || trial.studyrecall_RecallPair || trial.studyrecall_SuppressionPair);
]
</trial>
<trial studyrecall_RecallPair>
/ pretrialpause = 200
/ ontrialbegin = [
values.index_Recallcueword = list.Recallcuelist.nextindex;
values.countPhaseI+=1;
]
/ stimulusframes = [1 = Recallcue]
/ recorddata = true
/ inputdevice = keyboard
/ errormessage = true(Recalltarget, 2500)
/timeout = parameters.phase1Timeout
/ validresponse = ("1", 0)
/ correctresponse = ("1")
/ ontrialend = [
if(trial.studyrecall_RecallPair.correct==1){
list.teststateRecall.setitem(0, values.itemnumberRecall);
};
if(list.itemnumberBaseline.unselectedcount==0 && list.itemnumberFiller.unselectedcount==0 && list.itemnumberRecall==0 && list.itemnumberSuppression==0){
values.stopblock=1;
};
if(trial.studyrecall_RecallPair.correct==1){
values.countPhaseI+=1;
};
]
/ branch = [
return (trial.studyrecall_BaselinePair || trial.studyrecall_FillerPair || trial.studyrecall_RecallPair || trial.studyrecall_SuppressionPair);
]
</trial>
<trial studyrecall_FillerPair>
/ pretrialpause = 200
/ ontrialbegin = [
values.index_Fillercueword = list.Fillercuelist.nextindex;
values.countPhaseI+=1;
]
/ stimulusframes = [1 = Fillercue]
/ recorddata = true
/ inputdevice = keyboard
/ errormessage = true(Fillertarget, 2500)
/timeout = parameters.phase1Timeout
/ validresponse = ("1", 0)
/ correctresponse = ("1")
/ ontrialend = [
if(trial.studyrecall_FillerPair.correct==1){
list.teststateFiller.setitem(0, values.itemnumberFiller);
};
if(list.itemnumberBaseline.unselectedcount==0 && list.itemnumberFiller.unselectedcount==0 && list.itemnumberRecall==0 && list.itemnumberSuppression==0){
values.stopblock=1;
};
if(trial.studyrecall_FillerPair.correct==1){
values.countPhaseI+=1;
};
]
/ branch = [
return (trial.studyrecall_BaselinePair || trial.studyrecall_FillerPair || trial.studyrecall_RecallPair || trial.studyrecall_SuppressionPair);
]
</trial>
******BLOCK**********
<block phaseI_recall>
/ onblockbegin = [
values.countPhaseI = 0;
values.stopblock=0;
values.ncorrect=0;
list.itemnumberFiller.reset();
list.itemnumberBaseline.reset();
list.itemnumberSuppression.reset();
list.itemnumberRecall.reset();
]
/ trials = [1 = studyrecall_FillerPair, studyrecall_RecallPair, studyrecall_BaselinePair,
studyrecall_SuppressionPair]
/ stop = [values.stopblock==1]
/ onblockend = [
values.stopblock=0;
]
</block>
*****EXPERIMENT*****
<expt test>
/ blocks = [
1 = phaseI_recall;
]
</expt>