+x+xYou wrote:
"1. In the Prac_both block are 4 trials: 2 trials of setsize 2 and 2 trials of setsize 3. Three out of 4 trials have the correct sequence; show_math, solve_math, show_letter_practice, recall_letter, and letter_feedback. In one of these 4 trials, the solve_math isn't invoked. "
There aren't 2 trials of setsize 2 and 2 trials of setsize 3 for the prac_both block in the code you pasted. The list controlling the set sizes for that block has 3 times the set size 2.
<list PracBothSetSize>
/ items = (2,2,2)
/ selectionmode = sequence
/ selectionrate = trial
</list>
You further stated (
https://www.millisecond.com/forums/FindPost28514.aspx ) that you had integrated the logic for the additional blocks in your init trial. The init trial in the code you posted contains no such extended logic:
<trial InitSetSize>
/ ontrialbegin = [values.currentsetsize=0; values.lettercount=0; values.correctletters=0;
values.recallcount=0; values.recalledletters=""]
/ ontrialbegin = [if(script.currentblock=="PracLetter")
{values.currentsetsize=list.PracLetterSetSize.nextvalue}]
/ ontrialbegin = [if(script.currentblock=="PracBoth")
{values.currentsetsize=list.PracBothSetSize.nextvalue; reset(list.TestLetterList)}]
/ ontrialbegin = [if(script.currentblock=="TestBoth")
{values.currentsetsize=list.TestBothSetSize.nextvalue; reset(list.TestLetterList)}]
/ ontrialend = [clear(item.PresentedLetters); clear(item.RecalledLetters)]
/ branch = [if(script.currentblock=="PracLetter")trial.show_letter_practice else trial.InitMathProblem01]
/ validresponse = (noresponse)
/ trialduration = 0
/ recorddata = false
</trial>
Similarly, the two additional <list> elements you mention in
https://www.millisecond.com/forums/FindPost28514.aspx are nowhere to be found in the code you posted.
So, can I please get the actual, correct script from you? Obviously you are working with something else than what you ended up posting. Thank you.
My apologies! After your comments previously today, I tried to solve my problem by making an InitSetSize_NonActing and InitSetSize_Acting. However, it didn't work and I forgot to update this in my previous comment.
Attached is the file that I'm currently working in.
<trial InitSetSize>
/ ontrialbegin = [values.currentsetsize=0; values.lettercount=0; values.correctletters=0;
values.recallcount=0; values.recalledletters=""]
/ ontrialbegin = [if(script.currentblock=="PracLetter")
{values.currentsetsize=list.PracLetterSetSize.nextvalue}]
/ ontrialbegin = [if(script.currentblock=="PracBoth")
{values.currentsetsize=list.PracBothSetSize.nextvalue; reset(list.TestLetterList)}]
/ ontrialbegin = [if(script.currentblock=="
TestBoth_NonActing")
{values.currentsetsize=list.Non_ActingSetSize.nextvalue; reset(list.TestLetterList)}]
/ ontrialbegin = [if(script.currentblock=="
TestBoth_Acting")
{values.currentsetsize=list.ActingSetSize.nextvalue; reset(list.TestLetterList)}]
/ ontrialend = [clear(item.PresentedLetters); clear(item.RecalledLetters)]
/ branch = [if(script.currentblock=="PracLetter")trial.show_letter_practice else trial.InitMathProblem01]
/ validresponse = (noresponse)
/ trialduration = 0
/ recorddata = false
</trial>
That's not what those blocks are actually called in your script. They're called "Non_Acting"
<block
Non_Acting>
/ onblockbegin = [if(script.subjectid!="debug")
{text.currentsetsize.textcolor=white; text.letterstrings.textcolor=white;
text.mathdebug.textcolor=silver; text.mathtimeout.textcolor=silver;
text.scoredebug.textcolor=white}]
/ onblockbegin = [text.MathFeedback.textcolor=black; text.MathScore.textcolor=red]
/ onblockbegin = [values.mathcurrenterrors=0; values.mathaccuracy=0; values.mathaccerrors=0;
values.mathtotalerrors=0; values.mathspeederrors=0; values.mathproblemcount=0;
values.lettercount=0; values.correctletters=0; values.currentsetsize=0;
values.recallcount=0; values.recalledletters=""; values.totalrecalledsets=0;
values.totalcorrectletters=0; values.ospan=0]
/ stop = [values.stopblock==1]
/ onblockend = [values.stopblock=0]
/ trials = [1=InitSetSize]
</block>
and "Acting"
<block
Acting>
/ onblockbegin = [if(script.subjectid!="debug")
{text.currentsetsize.textcolor=white; text.letterstrings.textcolor=white;
text.mathdebug.textcolor=silver; text.mathtimeout.textcolor=silver;
text.scoredebug.textcolor=white}]
/ onblockbegin = [text.MathFeedback.textcolor=black; text.MathScore.textcolor=red]
/ onblockbegin = [values.mathcurrenterrors=0; values.mathaccuracy=0; values.mathaccerrors=0;
values.mathtotalerrors=0; values.mathspeederrors=0; values.mathproblemcount=0;
values.lettercount=0; values.correctletters=0; values.currentsetsize=0;
values.recallcount=0; values.recalledletters=""; values.totalrecalledsets=0;
values.totalcorrectletters=0; values.ospan=0]
/ stop = [values.stopblock==1]
/ trials = [1=instructions_acting; 2=InitSetSize]
</block>
For the rest, review the attached revision closely, please.