How to put pairs of randomized pictures together?


Author
Message
scubed
scubed
New Member (25 reputation)New Member (25 reputation)New Member (25 reputation)New Member (25 reputation)New Member (25 reputation)New Member (25 reputation)New Member (25 reputation)New Member (25 reputation)New Member (25 reputation)
Group: Forum Members
Posts: 2, Visits: 10
I have two sets of lists of pictures with certain traits that I want to be coupled together so that in a trial it shows a random picture from one of the lists and then a random picture from the list it's coupled to. For example, I have real faces that are blond with blue eyes and I have cartoon faces that are also blond haired and blue eyed, and so I want those groups of pictures to be shown together if that pairing is selected.
so the pairings I want to be randomized in the trial as well. so maybe the ones with brown hair show up in the trial instead. I tried to make this work with the following code:

<list humanblond>
/ items = ("Female-1.png" "Female-2.png")
</list>
<list virtualblond>
/ items = ("Cartoon-Eyes-Large-Blond.png" "Cartoon-Eyes-Small-Blond.png" "Cartoon-Lips-Large-Blond.png" "Cartoon-Lips-Small-Blond.png" "Cartoon-Medium-All-Blond.png")
/ selectionrate = trial
/ selectionmode = random
</list>


<list humanblbm>
/ items = ("Male-3.png" "Male-5.png")
</list>
<list virtualblbm>
/ items = ("Cartoon-eyes-large-blblm.png" "Cartoon-eyes-small-blblm.png" "Cartoon-lips-large-blblm.png" "Cartoon-lips-small-blblm.png" "Cartoon-medium-all-blblm.png")
</list>

<list humanbrown>
/ items = ("Female-3.png" "Female-4.png" "Female-9.png")
</list>
<list virtualbrown>
/ items = ("Cartoon-Eyes-Large.png" "Cartoon-Eyes-Small.png" "Cartoon-Lips-Large.png" "Cartoon-Lips-Small.png" "Cartoon-Medium-All.png")
</list>

<list humanbbm>
/ items = ("Male-1.png" "Male-4.png" "Male-10.png")
</list>
<list virtualbbm>
/ items = ("Cartoon-eyes-large-bbm.png" "Cartoon-eyes-small-bbm.png" "Cartoon-lips-large-bbm.png" "Cartoon-lips-small-bbm.png" "Cartoon-medium-all-bbm.png")
</list>

<list human>
/ items = (list.humanblond list.humanblbm list.humanbrown list.humanbbm)
</list>
<list virtual>
/ items = (list.virtualblond list.virtualblbm list.virtualbrown list.virtualbbm)
</list>


<counter facenum>
/ allowrepeats = false
/ select = noreplace(1-4)
/ selectionrate=trial
</counter>


<picture human>
/ items = ("<%list.human.item(counter.facenum.selectedvalue).nextvalue%>")
</picture>

<picture virtual>
/ items = ("<%list.virtual.item(counter.facenum.selectedvalue).nextvalue%>")
</picture>



<trial faceTrial>
/ stimulustimes = [0 = virtual; 3500 = WhiteScreen; 4000 = human]
/ recorddata = false
/ timeout = 7500
</trial>

It's unusual because when I validate the script it finds no problems.
But when I try to run the trial, this code gives me the error:
 Unable to initialize <picture virtual> item number 1. Verify the item exists and is correctly defined.

Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 13K, Visits: 105K
scubed - 1/31/2021
I have two sets of lists of pictures with certain traits that I want to be coupled together so that in a trial it shows a random picture from one of the lists and then a random picture from the list it's coupled to. For example, I have real faces that are blond with blue eyes and I have cartoon faces that are also blond haired and blue eyed, and so I want those groups of pictures to be shown together if that pairing is selected.
so the pairings I want to be randomized in the trial as well. so maybe the ones with brown hair show up in the trial instead. I tried to make this work with the following code:

<list humanblond>
/ items = ("Female-1.png" "Female-2.png")
</list>
<list virtualblond>
/ items = ("Cartoon-Eyes-Large-Blond.png" "Cartoon-Eyes-Small-Blond.png" "Cartoon-Lips-Large-Blond.png" "Cartoon-Lips-Small-Blond.png" "Cartoon-Medium-All-Blond.png")
/ selectionrate = trial
/ selectionmode = random
</list>


<list humanblbm>
/ items = ("Male-3.png" "Male-5.png")
</list>
<list virtualblbm>
/ items = ("Cartoon-eyes-large-blblm.png" "Cartoon-eyes-small-blblm.png" "Cartoon-lips-large-blblm.png" "Cartoon-lips-small-blblm.png" "Cartoon-medium-all-blblm.png")
</list>

<list humanbrown>
/ items = ("Female-3.png" "Female-4.png" "Female-9.png")
</list>
<list virtualbrown>
/ items = ("Cartoon-Eyes-Large.png" "Cartoon-Eyes-Small.png" "Cartoon-Lips-Large.png" "Cartoon-Lips-Small.png" "Cartoon-Medium-All.png")
</list>

<list humanbbm>
/ items = ("Male-1.png" "Male-4.png" "Male-10.png")
</list>
<list virtualbbm>
/ items = ("Cartoon-eyes-large-bbm.png" "Cartoon-eyes-small-bbm.png" "Cartoon-lips-large-bbm.png" "Cartoon-lips-small-bbm.png" "Cartoon-medium-all-bbm.png")
</list>

<list human>
/ items = (list.humanblond list.humanblbm list.humanbrown list.humanbbm)
</list>
<list virtual>
/ items = (list.virtualblond list.virtualblbm list.virtualbrown list.virtualbbm)
</list>


<counter facenum>
/ allowrepeats = false
/ select = noreplace(1-4)
/ selectionrate=trial
</counter>


<picture human>
/ items = ("<%list.human.item(counter.facenum.selectedvalue).nextvalue%>")
</picture>

<picture virtual>
/ items = ("<%list.virtual.item(counter.facenum.selectedvalue).nextvalue%>")
</picture>



<trial faceTrial>
/ stimulustimes = [0 = virtual; 3500 = WhiteScreen; 4000 = human]
/ recorddata = false
/ timeout = 7500
</trial>

It's unusual because when I validate the script it finds no problems.
But when I try to run the trial, this code gives me the error:
 Unable to initialize <picture virtual> item number 1. Verify the item exists and is correctly defined.

<picture virtual>
/ items = ("<%list.virtual.item(counter.facenum.selectedvalue).nextvalue%>")
</picture>

This is not a valid syntax construction. It won't work.
scubed
scubed
New Member (25 reputation)New Member (25 reputation)New Member (25 reputation)New Member (25 reputation)New Member (25 reputation)New Member (25 reputation)New Member (25 reputation)New Member (25 reputation)New Member (25 reputation)
Group: Forum Members
Posts: 2, Visits: 10
Dave - 2/1/2021
scubed - 1/31/2021
I have two sets of lists of pictures with certain traits that I want to be coupled together so that in a trial it shows a random picture from one of the lists and then a random picture from the list it's coupled to. For example, I have real faces that are blond with blue eyes and I have cartoon faces that are also blond haired and blue eyed, and so I want those groups of pictures to be shown together if that pairing is selected.
so the pairings I want to be randomized in the trial as well. so maybe the ones with brown hair show up in the trial instead. I tried to make this work with the following code:

<list humanblond>
/ items = ("Female-1.png" "Female-2.png")
</list>
<list virtualblond>
/ items = ("Cartoon-Eyes-Large-Blond.png" "Cartoon-Eyes-Small-Blond.png" "Cartoon-Lips-Large-Blond.png" "Cartoon-Lips-Small-Blond.png" "Cartoon-Medium-All-Blond.png")
/ selectionrate = trial
/ selectionmode = random
</list>


<list humanblbm>
/ items = ("Male-3.png" "Male-5.png")
</list>
<list virtualblbm>
/ items = ("Cartoon-eyes-large-blblm.png" "Cartoon-eyes-small-blblm.png" "Cartoon-lips-large-blblm.png" "Cartoon-lips-small-blblm.png" "Cartoon-medium-all-blblm.png")
</list>

<list humanbrown>
/ items = ("Female-3.png" "Female-4.png" "Female-9.png")
</list>
<list virtualbrown>
/ items = ("Cartoon-Eyes-Large.png" "Cartoon-Eyes-Small.png" "Cartoon-Lips-Large.png" "Cartoon-Lips-Small.png" "Cartoon-Medium-All.png")
</list>

<list humanbbm>
/ items = ("Male-1.png" "Male-4.png" "Male-10.png")
</list>
<list virtualbbm>
/ items = ("Cartoon-eyes-large-bbm.png" "Cartoon-eyes-small-bbm.png" "Cartoon-lips-large-bbm.png" "Cartoon-lips-small-bbm.png" "Cartoon-medium-all-bbm.png")
</list>

<list human>
/ items = (list.humanblond list.humanblbm list.humanbrown list.humanbbm)
</list>
<list virtual>
/ items = (list.virtualblond list.virtualblbm list.virtualbrown list.virtualbbm)
</list>


<counter facenum>
/ allowrepeats = false
/ select = noreplace(1-4)
/ selectionrate=trial
</counter>


<picture human>
/ items = ("<%list.human.item(counter.facenum.selectedvalue).nextvalue%>")
</picture>

<picture virtual>
/ items = ("<%list.virtual.item(counter.facenum.selectedvalue).nextvalue%>")
</picture>



<trial faceTrial>
/ stimulustimes = [0 = virtual; 3500 = WhiteScreen; 4000 = human]
/ recorddata = false
/ timeout = 7500
</trial>

It's unusual because when I validate the script it finds no problems.
But when I try to run the trial, this code gives me the error:
 Unable to initialize <picture virtual> item number 1. Verify the item exists and is correctly defined.

<picture virtual>
/ items = ("<%list.virtual.item(counter.facenum.selectedvalue).nextvalue%>")
</picture>

This is not a valid syntax construction. It won't work.

I see, I was trying to use the counter to randomly pick a number between 1 and 4, then use that number as the index to get a list of faces and then run nextvalue on it to get the actual picture filename. How would I have to refactor this to achieve that?

Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 13K, Visits: 105K
scubed - 2/1/2021
Dave - 2/1/2021
scubed - 1/31/2021
I have two sets of lists of pictures with certain traits that I want to be coupled together so that in a trial it shows a random picture from one of the lists and then a random picture from the list it's coupled to. For example, I have real faces that are blond with blue eyes and I have cartoon faces that are also blond haired and blue eyed, and so I want those groups of pictures to be shown together if that pairing is selected.
so the pairings I want to be randomized in the trial as well. so maybe the ones with brown hair show up in the trial instead. I tried to make this work with the following code:

<list humanblond>
/ items = ("Female-1.png" "Female-2.png")
</list>
<list virtualblond>
/ items = ("Cartoon-Eyes-Large-Blond.png" "Cartoon-Eyes-Small-Blond.png" "Cartoon-Lips-Large-Blond.png" "Cartoon-Lips-Small-Blond.png" "Cartoon-Medium-All-Blond.png")
/ selectionrate = trial
/ selectionmode = random
</list>


<list humanblbm>
/ items = ("Male-3.png" "Male-5.png")
</list>
<list virtualblbm>
/ items = ("Cartoon-eyes-large-blblm.png" "Cartoon-eyes-small-blblm.png" "Cartoon-lips-large-blblm.png" "Cartoon-lips-small-blblm.png" "Cartoon-medium-all-blblm.png")
</list>

<list humanbrown>
/ items = ("Female-3.png" "Female-4.png" "Female-9.png")
</list>
<list virtualbrown>
/ items = ("Cartoon-Eyes-Large.png" "Cartoon-Eyes-Small.png" "Cartoon-Lips-Large.png" "Cartoon-Lips-Small.png" "Cartoon-Medium-All.png")
</list>

<list humanbbm>
/ items = ("Male-1.png" "Male-4.png" "Male-10.png")
</list>
<list virtualbbm>
/ items = ("Cartoon-eyes-large-bbm.png" "Cartoon-eyes-small-bbm.png" "Cartoon-lips-large-bbm.png" "Cartoon-lips-small-bbm.png" "Cartoon-medium-all-bbm.png")
</list>

<list human>
/ items = (list.humanblond list.humanblbm list.humanbrown list.humanbbm)
</list>
<list virtual>
/ items = (list.virtualblond list.virtualblbm list.virtualbrown list.virtualbbm)
</list>


<counter facenum>
/ allowrepeats = false
/ select = noreplace(1-4)
/ selectionrate=trial
</counter>


<picture human>
/ items = ("<%list.human.item(counter.facenum.selectedvalue).nextvalue%>")
</picture>

<picture virtual>
/ items = ("<%list.virtual.item(counter.facenum.selectedvalue).nextvalue%>")
</picture>



<trial faceTrial>
/ stimulustimes = [0 = virtual; 3500 = WhiteScreen; 4000 = human]
/ recorddata = false
/ timeout = 7500
</trial>

It's unusual because when I validate the script it finds no problems.
But when I try to run the trial, this code gives me the error:
 Unable to initialize <picture virtual> item number 1. Verify the item exists and is correctly defined.

<picture virtual>
/ items = ("<%list.virtual.item(counter.facenum.selectedvalue).nextvalue%>")
</picture>

This is not a valid syntax construction. It won't work.

I see, I was trying to use the counter to randomly pick a number between 1 and 4, then use that number as the index to get a list of faces and then run nextvalue on it to get the actual picture filename. How would I have to refactor this to achieve that?

Can you please provide the actual files the code requires to run (and also, please, code that's actually complete enough to run)?

GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Reading This Topic

Explore
Messages
Mentions
Search