Millisecond Forums

Trial does not follow correctly

https://forums.millisecond.com/Topic18403.aspx

By Wenkuo - 2/22/2016

Hi,

I've got a question (again) about two problems I encountered when I tested out my task.

It concerns the following piece of code:

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& Creating the face picture lists 
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

<item faces_info>
/ 1 = "Faces/Order 1/Slide1.jpg"
/ 2 = "Faces/Order 1/Slide2.jpg"
/ 3 = "Faces/Order 1/Slide3.jpg"
/ 4 = "Faces/Order 1/Slide4.jpg"
/ 5 = "Faces/Order 1/Slide5.jpg"
/ 6 = "Faces/Order 1/Slide6.jpg"
/ 7 = "Faces/Order 1/Slide7.jpg"
/ 8 = "Faces/Order 1/Slide8.jpg"
/ 9 = "Faces/Order 1/Slide9.jpg"
/ 10 = "Faces/Order 1/Slide10.jpg"
/ 11 = "Faces/Order 1/Slide11.jpg"
/ 12 = "Faces/Order 1/Slide12.jpg"
</item>

<item faces_no_info>
/ 1 = "Faces/Faces Without Information/Slide1.jpg"
/ 2 = "Faces/Faces Without Information/Slide2.jpg"
/ 3 = "Faces/Faces Without Information/Slide3.jpg"
/ 4 = "Faces/Faces Without Information/Slide4.jpg"
/ 5 = "Faces/Faces Without Information/Slide5.jpg"
/ 6 = "Faces/Faces Without Information/Slide6.jpg"
/ 7 = "Faces/Faces Without Information/Slide7.jpg"
/ 8 = "Faces/Faces Without Information/Slide8.jpg"
/ 9 = "Faces/Faces Without Information/Slide9.jpg"
/ 10 = "Faces/Faces Without Information/Slide10.jpg"
/ 11 = "Faces/Faces Without Information/Slide11.jpg"
/ 12 = "Faces/Faces Without Information/Slide12.jpg"
</item>

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& Setting the defaults for the actual face pictures 
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

<picture faces_info_default>
/ items = faces_info
/ position = (50%, 50%)
/ size = (90%, 90%)
/ select = noreplacenorepeat
</picture>

<picture faces_no_info_default>
/ items = faces_no_info
/ position = (50%, 40%)
/ size = (60%, 60%)
/ select = picture.faces_info_default.currentindex
</picture>

<picture faces_no_info_default2>
/ items = faces_no_info
/ position = (50%, 40%)
/ size = (60%, 60%)
/ select = picture.faces_no_info_default.currentindex
</picture>

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& Creating the stimulusframe in which the images are shown 
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

<trial faces_info_presentation>
/ stimulusframes = [1 = faces_info_default]
/ showmousecursor = false
/ timeout = 1000
</trial>

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& Creating the buttons for faces main recall 
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

<text faces_danger_button>
/ items = ("Gevaarlijk")
/ txbgcolor = (grey)
/ vjustify = center
/ size = (210, 100)
/ position = (20%, 80%)
/ fontstyle = ("Times New Roman", 36, false, false, false, false, 5)
</text>

<text faces_safe_button>
/ items = ("Veilig")
/ txbgcolor = (grey)
/ vjustify = center
/ size = (210, 100)
/ position = (80%, 80%)
/ fontstyle = ("Times New Roman", 36, false, false, false, false, 5)
</text>

<text faces_house_button>
/ items = ("Huis")
/ txbgcolor = (grey)
/ vjustify = center
/ size = (210, 100)
/ position = (20%, 80%)
/ fontstyle = ("Times New Roman", 36, false, false, false, false, 5)
</text>

<text faces_appartment_button>
/ items = ("Appartement")
/ txbgcolor = (grey)
/ vjustify = center
/ size = (210, 100)
/ position = (80%, 80%)
/ fontstyle = ("Times New Roman", 36, false, false, false, false, 5)
</text>

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& creating the questions for the faces main recall
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

<trial faces_danger_recall>
/ stimulusframes = [1 = faces_no_info_default, faces_danger_button, faces_safe_button]
/ inputdevice = mouse
/ validresponse = (faces_danger_button, faces_safe_button)
/ posttrialpause = 500
</trial>

<trial faces_location_recall>
/ stimulusframes = [1 = faces_no_info_default2, faces_house_button, faces_appartment_button]
/ inputdevice = mouse
/ validresponse = (faces_house_button, faces_appartment_button)
/ posttrialpause = 500
</trial>

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& Creating the main block for faces 
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

<block faces_main>
/ trials = [1-12 = faces_info_presentation; 13-24 = sequence(faces_location_recall, faces_danger_recall)]
</block>

The first, although not necessarily a problem, concerns the order of picture stimuli.
I present 12 different stimuli to my participants first. After they are shown each of the stimuli, they get asked questions about the stimuli.

What I want to do, however, is to ask questions about the stimuli in the same order they are presented.

For example, if the presentation order is 4, 1, 3, then I want to ask questions using that same order. Or if it's 3, 4, 1, then I want to ask questions following the order of 3, 4, 1.  I've tried using the picture.name.currentindex, but that's not working out.

The other problem I encountered concerns the first trial of the questions part. When I used this:

<picture faces_info_default>
/ items = faces_info
/ position = (50%, 50%)
/ size = (90%, 90%)
/ select = noreplacenorepeat
</picture>

<picture faces_no_info_default>
/ items = faces_no_info
/ position = (50%, 40%)
/ size = (60%, 60%)
/ select = noreplacenorepeat
</picture>

<picture faces_no_info_default2>
/ items = faces_no_info
/ position = (50%, 40%)
/ size = (60%, 60%)
/ select = picture.faces_no_info_default.currentindex
</picture>

It came close to solving my first problem. However, when I used this, it caused the questions part to not work as it should. The first trial of sequence(faces_location_recall, faces_danger_recall)  (trial 13) should ask about 'locations' followed by 'danger' on the same stimulus. This, however, does not happen. Instead, it skips the 'danger' part. And this only happens in trial 13.

For example, after I present the stimuli, the first question (trial 13) that people get concerns picture 10. This asks for 'location'. However, instead of asking about 'danger' after this, it immediately moves on to picture 15 (or any other picture), and skips the question about 'danger' for picture 10. This does not happen in any of the other trials. 

I was hoping for an explanation on why this happens, and what I should change to prevent it from happening. 
By Dave - 2/22/2016

#1: "The first, although not necessarily a problem, concerns the order of picture stimuli. I present 12 different stimuli to my participants first. After they are shown each of the stimuli, they get asked questions about the stimuli. What I want to do, however, is to ask questions about the stimuli in the same order they are presented."

You need to record the random presentation order from the 1st part somewhere (e.g. in a <list>) and then use that list of recorded values for selection in the 2nd part. Example:

<values>
/ itemnumber = 1
</values>

<block myblock>
/ trials = [1-4 = presentationtrial; 5-8 = sequence(questiontrial_a, questiontrial_b)]
</block>

<trial presentationtrial>
/ ontrialend = [list.storedorder.appenditem(text.mytext_p.currentindex)]
/ stimulusframes = [1=mytext_p, debug]
/ validresponse = (57)
</trial>

<trial questiontrial_a>
/ ontrialbegin = [values.itemnumber = list.storedorder.nextvalue]
/ stimulusframes = [1=mytext_q, debug]
/ validresponse = (57)
</trial>

<trial questiontrial_b>
/ stimulusframes = [1=mytext_q, debug]
/ validresponse = (57)
</trial>

<text mytext_p>
/ items = myitems
/ select = noreplace
</text>

<text mytext_q>
/ items = myitems
/ select = values.itemnumber
</text>

<item myitems>
/ 1 = "A"
/ 2 = "B"
/ 3 = "C"
/ 4 = "D"
</item>

<list storedorder>
/ selectionmode = sequence
</list>

<text debug>
/ items = ("<%script.currenttrial%>")
/ position = (50%, 10%)
</text>

#2: "The other problem I encountered concerns the first trial of the questions part. When I used this [...]"

<trial faces_location_recall>
/ stimulusframes = [1 = faces_no_info_default2, faces_house_button, faces_appartment_button]
/ inputdevice = mouse
/ validresponse = (faces_house_button, faces_appartment_button)
/ posttrialpause = 500
</trial>

displays the stimulus

<picture faces_no_info_default2>
/ items = faces_no_info
/ position = (50%, 40%)
/ size = (60%, 60%)
/ select = picture.faces_no_info_default.currentindex
</picture>

Selection in that stimulus *depends* on selection in another stimulus, namely

<picture faces_no_info_default>
/ items = faces_no_info
/ position = (50%, 40%)
/ size = (60%, 60%)
/ select = noreplacenorepeat

</picture>

which is displayed by

<trial faces_danger_recall>
/ stimulusframes = [1 = faces_no_info_default, faces_danger_button, faces_safe_button]
/ inputdevice = mouse
/ validresponse = (faces_danger_button, faces_safe_button)
/ posttrialpause = 500
</trial>

For the dependency to make sense and "work", the stimulus faces_no_info_default needs to be displayed *first*, i.e., before faces_no_info_default2 is ever displayed -- after all the selection in faces_no_info_default2 is *contingent* on what happened in faces_no_info_default.

That, however, is not what you do.

<block faces_main>
/ trials = [... 13-24 = sequence(faces_location_recall, faces_danger_recall)]
</block>

You run the <trial> displaying faces_no_info_default2 first.

You'll want to change


<trial faces_location_recall>
/ stimulusframes = [1 = faces_no_info_default2, faces_house_button, faces_appartment_button]
/ inputdevice = mouse
/ validresponse = (faces_house_button, faces_appartment_button)
/ posttrialpause = 500
</trial>

to

<trial faces_location_recall>
/ stimulusframes = [1 = faces_no_info_default, faces_house_button, faces_appartment_button]
/ inputdevice = mouse
/ validresponse = (faces_house_button, faces_appartment_button)
/ posttrialpause = 500
</trial>

and conversely

<trial faces_danger_recall>
/ stimulusframes = [1 = faces_no_info_default, faces_danger_button, faces_safe_button]
/ inputdevice = mouse
/ validresponse = (faces_danger_button, faces_safe_button)
/ posttrialpause = 500
</trial>

to

<trial faces_danger_recall>
/ stimulusframes = [1 = faces_no_info_default2, faces_danger_button, faces_safe_button]
/ inputdevice = mouse
/ validresponse = (faces_danger_button, faces_safe_button)
/ posttrialpause = 500
</trial>

The above, however, is basically obsolete given what I outlined under #1 above. I'm merely including it to explain where the mistake is.
By Wenkuo - 2/22/2016

Hi Dave,

Thank you for the fast answer! This certainly explains the problems that I've encountered. 

By Wenkuo - 2/22/2016

Hi Dave,

I have one question concerning <list>. How does it know which items to use? 
Normally, you would indicate the items to be used with /items, but that's not the case here. 

Does it automatically know that it has to select from <values>? But what if <values>  has multiple values? 
It's because the script mentioned in my initial post is part of this:

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& Combining the separate tasks together 
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

<include>
/ file = "Faces Examples 3.iqx"
/ file = "Faces Main Block Order 1_3.iqx"
/ file = "Animals Examples 3.iqx"
/ file = "Animals Main Block Order 1_3.iqx"
</include>

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& Creating the instructions for faces 
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

<page instructions_presentation_faces_main1>
^^Beste deelnemer,
^^Tijdens deze taak ziet u telkens een gezicht.
^^Bij elk gezicht vertellen wij u of deze persoon gevaarlijk of veilig is.
^We vertellen u ook of deze persoon in een huis of appartement woont.
^^Probeer deze informatie te onthouden. Daar zullen vragen over komen.
</page>

<page instructions_presentation_faces_example>
^^Er volgen nu eerst 2 voorbeelden.
^^U krijgt elk gezicht 15 seconden te zien.
^^De gezichten volgen elkaar vanzelf op.
</page>

<page instructions_presentation_faces_main2>
^^Dat waren de voorbeelden.
^^Nu begint de echte taak.
^^U krijgt hierbij 12 gezichten te zien.
^^Veel succes!
</page>

<page faces_end>
^^Dit is het einde van deze taak.
^^Druk op de spatiebalk om verder te gaan met het volgende onderdeel.
</page>

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& Creating the instructions for animals 
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

<page instructions_presentation_animals_main1>
^^U heeft net 12 gezichten gezien.
^^Nu gaat u hetzelfde doen met dieren.
^^Bij elk dier vertellen wij u of het dier gevaarlijk of veilig is.
^We vertellen u ook of het dier in Afrika of Australië leeft.
^^Probeer deze informatie te onthouden. Daar zullen vragen over komen.
</page>

<page instructions_presentation_animals_example>
^^Er volgen nu eerst 2 voorbeelden.
^^U krijgt elk dier 15 seconden te zien.
^^De dieren volgen elkaar vanzelf op.
</page>

<page instructions_presentation_animals_main2>
^^Dat waren de voorbeelden.
^^Nu begint de echte taak.
^^U krijgt hierbij 12 dieren te zien.
^^Veel succes!
</page>

<page animals_end>
^^Dit is het einde van deze taak.
^^Druk op de spatiebalk om verder te gaan met het volgende onderdeel.
</page>

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& Creating the ending page 
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

<page ending>
^^Dat was het einde van deze study.
^^Bedankt voor uw deelname!
^^Voelt u vrij om dit onderzoek aan te bevelen bij vrienden, familie of kennissen.
^^Als u vragen of opmerkingen heeft over dit onderzoek, neem dan alstublieft contact op met:
^^Wenkuo Chen
^Research Master Student, 2e jaar
^w.chen@bsi.ru.nl
</page>

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& Creating the settings for data saving 
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

<data>
/ columns = [date, time, subject, trialcode, trialnum, stimulusitem, stimulus, stimulus, stimulus, response]
</data>

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& Creating the default instruction settings for the study 
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

<instruct>
/ lastlabel = "Druk op de spatiebalk om verder te gaan"
/ nextlabel = "Druk op de spatiebalk om verder te gaan"
/ prevkey = (0)
/ nextkey = (" ")
/ windowsize = (80%, 85%)
/ screencolor = (255, 255, 255)
/ fontstyle = ("Times New Roman", 28, false, false, false, false, 5)
/ txcolor = (0, 0, 0)
</instruct>

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& Creating the example block for faces 
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

<block faces_example>
/ preinstructions = (instructions_presentation_faces_main1)
/ preinstructions = (instructions_presentation_faces_example)
/ trials = [1-2 = faces_examples_info_presentation; 3-4 = sequence(faces_examples_danger_recall, faces_examples_location_recall)]
/ postinstructions = (instructions_presentation_faces_main2)
</block>

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& Creating the main block for faces 
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

<block faces_main>
/ trials = [1-12 = faces_info_presentation; 13-24 = sequence(faces_location_recall, faces_danger_recall)]
/ postinstructions = (faces_end)
</block>

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& Creating the example block for animals 
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

<block animals_example>
/ preinstructions = (instructions_presentation_animals_main1)
/ preinstructions = (instructions_presentation_animals_example)
/ trials = [1-2 = animals_examples_info_presentation; 3-4 = sequence(animals_examples_danger_recall, animals_examples_location_recall)]
/ postinstructions = (instructions_presentation_animals_main2)
</block>

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& Creating the main block of animals 
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

<block animals_main>
/ trials = [1-12 = animals_info_presentation; 13-24 = sequence(animals_location_recall, animals_danger_recall)]
</block>

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& Combining all blocks together to run the full task 
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

<expt all>
/ blocks = [1 = faces_example; 2 = faces_main; 3 = animals_example; 4 = animals_main]
/ postinstructions = (ending)
</expt>

All scripts use the same code, with just different names. 
So I was wondering how I could implement the list option into this. 
Is it, for example, possible to just create a <list>  and < values>  here, and use it then?
By Dave - 2/22/2016

> I have one question concerning <list>. How does it know which items to use?

<trial presentationtrial>
/ ontrialend = [list.storedorder.appenditem(text.mytext_p.currentindex)]
/ stimulusframes = [1=mytext_p, debug]
/ validresponse = (57)
</trial>

stores the item number that's currently selected by the stimulus mytext_p and adds it as an item to the initially empty <list>.

<trial questiontrial_a>
/ ontrialbegin = [values.itemnumber = list.storedorder.nextvalue]
/ stimulusframes = [1=mytext_q, debug]
/ validresponse = (57)
</trial>

then later selects an item number from the (now filled) list and stores it in a value. mytext_q is set to select the item number corresponding to that value.

<text mytext_q>
/ items = myitems
/ select = values.itemnumber
</text>

> Does it automatically know that it has to select from <values>?

The list does not select from a <values> entry. The item number sampled from the list is *stored* in a value (which is a global variable).

> But what if <values>  has multiple values?

You can have as many global variables as you need. It does not matter. Whenever you need to use one, you reference it by its name.

> Is it, for example, possible to just create a <list>  and < values>  here, and use it then?                               

Yes. Why would it not be? Create as many <list> elements and <values> entries as you need, use them as illustrated in the example.
By Wenkuo - 2/22/2016

Thank you for the explanation!