By Nina Attridge - 7/14/2014
Hello,
I've edited the n-back experiment from the task library to include survey sections and our own instructions and I'm having two problems.
1. On each survey page the button to progress says 'Finish' and I want it to say 'Next'. I've included the line / nextlabel = "Next" in the <surveypage> and <instruct> elements but this hasn't made a difference.
2. Two of my instruction pages are being repeated. I can't see an error in the code but then I'm very new to Inquisit so am probably missing something. I've tried running the experiment on Windows and a Mac and the same thing happens on both. It is the pages immediately before and after the n-back section. I think this is all the relevant code but I've also attached the full script:
<item startendslides> /1 = "startreal.gif" /2 = "endtask.gif" <picture StartExp_slide> / items = startendslides / select = 1 / size = (720, 960) </picture>
<picture EndExp_slide> / items = startendslides / select = 2 / size = (720, 960) <trial StartExp_trial> / stimulusframes = [1 = StartExp_slide] / validresponse = (57) / recorddata = false </trial>
<trial EndExp_trial> / stimulusframes = [1 = EndExp_slide] / validresponse = (57) / recorddata = false <block StartExp> / trials = [1 = StartExp_trial] / recorddata = false / onblockbegin = [ values.TotalHits = 0; values.TotalFA = 0; values.TotalBlocks = 0; values.DV = 0 ] </block>
<block EndExp> / trials = [1 = EndExp_trial] </block>
<block s_ntask> / onblockbegin = [values.N = list.Nlevel.nextvalue] / onblockbegin = [ values.currenttarget = 0; values.minus1 = 0; values.minus2 = 0; values.minus3 = 0; values.minus4 = 0; values.Hits = 0; values.FalseA = 0; values.Misses = 0; values.CorrReject = 0; values.TotalBlocks += 1; values.starttrialcounter = 0; ] / trials = [1 = start; 2 - 31 = noreplace(nontarget, nontarget, target)] / screencolor = (0, 0, 0)
/ branch = [if (values.TotalBlocks < list.Nlevel.itemcount) block.s_ntask else block.EndExp] </block>
Thanks in advance for any help!
|
By Dave - 7/14/2014
#1: You'll want to get rid of
<survey surveypart1> / pages = [1=consent; 2=seriousness; 3=demographics; 4=health1; 5=health2; 6=health3; 7=CIPD1; 8=CIPD2] / responsefontstyle = ("Arial", 14pt, false, false, false, false, 5, 0) / itemfontstyle = ("Arial", 14pt, false, false, false, false, 5, 0) / itemspacing = 1% / showquestionnumbers = false / showpagenumbers = false / nextlabel = "Next" / backlabel = "Previous" </survey>
<survey surveypart2> / pages = [1=environment; 2=debrief; 3=code] / responsefontstyle = ("Arial", 14pt, false, false, false, false, 5, 0) / itemfontstyle = ("Arial", 14pt, false, false, false, false, 5, 0) / itemspacing = 1% / showquestionnumbers = false / showpagenumbers = false / nextlabel = "Next" / backlabel = "Previous" </survey>
These <survey> elements serve no purpose and will in fact mess things up. A <survey> is a type of <block>, yet you never explicitly run the above <survey> elements at the appropriate via your script's <expt> element.
Instead, you run all your various <surveypage>s via standard <block> elements (as you probably should if you want everything captured in a single data file). The /nextlabel etc. settings in the unused / redundant <survey> elements *do not* affect the <surveypage>s run via <block> elements.
You need to specify /nextlabel and /finishlabel at the *page-level* as in
<surveypage consent> / caption = "Please read the following information, and if you consent to take part, tick the box at the bottom." / fontstyle = ("Arial", 2%, false, false, false, false, 5, 0) / questions = [1=consent] / showquestionnumbers = false / showpagenumbers = false / nextlabel = "Next" / finishlabel = "Next" </surveypage>
#2: Your instruction "slide"-<trial>s repeat because you are effectively running the respective <block>s *twice*.
(1) Scheduled via the <expt>'s /blocks attribute: <expt> /onexptbegin = [if (values.debugmode == 1) text.targetalert.textcolor = (red)] / blocks = [ 1 = consent; 2 = demogs; 3 = Nbackinstruct_start; 4 = practice_s_ntask; 5 = StartExp; 6 = s_ntask; 7 = EndExp; 8 = enviro; ] </expt>
(2) Via conditional /branches:
<block RepeatPractice> /trials = [1 = repeatpractice] / recorddata = true / branch = [ if (trial.repeatpractice.response == 21) {values.N = values.lowestN; block.practice_s_ntask} else block.StartExp; ] / screencolor = (255,255,255) </block>
<block s_ntask> / onblockbegin = [values.N = list.Nlevel.nextvalue] / onblockbegin = [ values.currenttarget = 0; values.minus1 = 0; values.minus2 = 0; values.minus3 = 0; values.minus4 = 0; values.Hits = 0; values.FalseA = 0; values.Misses = 0; values.CorrReject = 0; values.TotalBlocks += 1; values.starttrialcounter = 0; ] / trials = [1 = start; 2 - 31 = noreplace(nontarget, nontarget, target)] / screencolor = (0, 0, 0)
/ branch = [if (values.TotalBlocks < list.Nlevel.itemcount) block.s_ntask else block.EndExp] </block>
You'll want to remove them from the <expt>'s /blocks attribute.
|
By Nina Attridge - 7/14/2014
Thank you! :)
|
|