Script for emotion recognition and attractiveness?


Author
Message
USYDPSYCH
USYDPSYCH
Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)
Group: Forum Members
Posts: 8, Visits: 17
I am wanting to do a study where participants are presented with a fixation cross for 500ms, then a face for 3000ms where they firstly have to (1) identify the expression from for example happy or sad by pressing E or I, then they have to  (2) rate the attractiveness of the face using a 10 point Likert scale. This is followed by an intertrial interval of 1000ms.

Is there an existing script available for something similar?

I have looked at using an IAT script and altering it but I'm  having to re-write most of the script.
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: 12K, Visits: 98K
USYDPSYCH - 6/8/2021
I am wanting to do a study where participants are presented with a fixation cross for 500ms, then a face for 3000ms where they firstly have to (1) identify the expression from for example happy or sad by pressing E or I, then they have to  (2) rate the attractiveness of the face using a 10 point Likert scale. This is followed by an intertrial interval of 1000ms.

Is there an existing script available for something similar?

I have looked at using an IAT script and altering it but I'm  having to re-write most of the script.

You're not going to find an existing script that exactly matches what you want. The procedure you describe, however, you can just create from scratch fairly easily.

<values>
/ itemnumber = 1
</values>

<block example>
/ trials = [1-10 = noreplace(show_happy, show_sad)]
</block>

<trial show_happy>
/ ontrialbegin = [
    values.itemnumber = list.happyitems.nextindex;
]
/ stimulustimes = [0=clearscreen, fixation; 500=clearscreen, happyface; 3500=e_reminder, i_reminder;]
/ validresponse = ("E", "I")
/ correctresponse = ("E")
/ branch = [
    likert.rate_happy;
]
</trial>

<likert rate_happy>
/ stimulustimes = [0=clearscreen, ratingquestion, happyface]
/ inputdevice = mouse
/ numpoints = 5
/ anchors = [1="unattractive"; 5="attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<trial show_sad>
/ ontrialbegin = [
    values.itemnumber = list.saditems.nextindex;
]
/ stimulustimes = [0=clearscreen, fixation; 500=clearscreen, sadface; 3500=e_reminder, i_reminder;]
/ validresponse = ("E", "I")
/ correctresponse = ("I")
/ branch = [
    likert.rate_sad;
]
</trial>

<likert rate_sad>
/ stimulustimes = [0=clearscreen, ratingquestion, sadface]
/ inputdevice = mouse
/ numpoints = 5
/ anchors = [1="unattractive"; 5="attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<picture happyface>
/ items = happyfaces
/ erase = false
/ select = values.itemnumber
/ size = (40%, 50%)
</picture>

// 5 happy items in this example
<list happyitems>
/ poolsize = 5
</list>

<picture sadface>
/ items = sadfaces
/ erase = false
/ select = values.itemnumber
/ size = (40%, 50%)
</picture>

// 5 sad items in this example
<list saditems>
/ poolsize = 5
</list>

<item happyfaces>
/ 1 = "happy01.jpg"
/ 2 = "happy02.jpg"
/ 3 = "happy03.jpg"
/ 4 = "happy04.jpg"
/ 5 = "happy05.jpg"
</item>

<item sadfaces>
/ 1 = "sad01.jpg"
/ 2 = "sad02.jpg"
/ 3 = "sad03.jpg"
/ 4 = "sad04.jpg"
/ 5 = "sad05.jpg"
</item>

<text fixation>
/ items = ("+")
/ erase = false
</text>

<text e_reminder>
/ items = ("E = Happy")
/ position = (20%, 10%)
</text>

<text i_reminder>
/ items = ("I = Sad")
/ position = (80%, 10%)
</text>

<text ratingquestion>
/ items = ("How attractive?")
/ position = (50%, 10%)
</text>

USYDPSYCH
USYDPSYCH
Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)
Group: Forum Members
Posts: 8, Visits: 17
Dave - 6/8/2021
USYDPSYCH - 6/8/2021
I am wanting to do a study where participants are presented with a fixation cross for 500ms, then a face for 3000ms where they firstly have to (1) identify the expression from for example happy or sad by pressing E or I, then they have to  (2) rate the attractiveness of the face using a 10 point Likert scale. This is followed by an intertrial interval of 1000ms.

Is there an existing script available for something similar?

I have looked at using an IAT script and altering it but I'm  having to re-write most of the script.

You're not going to find an existing script that exactly matches what you want. The procedure you describe, however, you can just create from scratch fairly easily.

<values>
/ itemnumber = 1
</values>

<block example>
/ trials = [1-10 = noreplace(show_happy, show_sad)]
</block>

<trial show_happy>
/ ontrialbegin = [
    values.itemnumber = list.happyitems.nextindex;
]
/ stimulustimes = [0=clearscreen, fixation; 500=clearscreen, happyface; 3500=e_reminder, i_reminder;]
/ validresponse = ("E", "I")
/ correctresponse = ("E")
/ branch = [
    likert.rate_happy;
]
</trial>

<likert rate_happy>
/ stimulustimes = [0=clearscreen, ratingquestion, happyface]
/ inputdevice = mouse
/ numpoints = 5
/ anchors = [1="unattractive"; 5="attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<trial show_sad>
/ ontrialbegin = [
    values.itemnumber = list.saditems.nextindex;
]
/ stimulustimes = [0=clearscreen, fixation; 500=clearscreen, sadface; 3500=e_reminder, i_reminder;]
/ validresponse = ("E", "I")
/ correctresponse = ("I")
/ branch = [
    likert.rate_sad;
]
</trial>

<likert rate_sad>
/ stimulustimes = [0=clearscreen, ratingquestion, sadface]
/ inputdevice = mouse
/ numpoints = 5
/ anchors = [1="unattractive"; 5="attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<picture happyface>
/ items = happyfaces
/ erase = false
/ select = values.itemnumber
/ size = (40%, 50%)
</picture>

// 5 happy items in this example
<list happyitems>
/ poolsize = 5
</list>

<picture sadface>
/ items = sadfaces
/ erase = false
/ select = values.itemnumber
/ size = (40%, 50%)
</picture>

// 5 sad items in this example
<list saditems>
/ poolsize = 5
</list>

<item happyfaces>
/ 1 = "happy01.jpg"
/ 2 = "happy02.jpg"
/ 3 = "happy03.jpg"
/ 4 = "happy04.jpg"
/ 5 = "happy05.jpg"
</item>

<item sadfaces>
/ 1 = "sad01.jpg"
/ 2 = "sad02.jpg"
/ 3 = "sad03.jpg"
/ 4 = "sad04.jpg"
/ 5 = "sad05.jpg"
</item>

<text fixation>
/ items = ("+")
/ erase = false
</text>

<text e_reminder>
/ items = ("E = Happy")
/ position = (20%, 10%)
</text>

<text i_reminder>
/ items = ("I = Sad")
/ position = (80%, 10%)
</text>

<text ratingquestion>
/ items = ("How attractive?")
/ position = (50%, 10%)
</text>

Thanks, that is very helpful!
USYDPSYCH
USYDPSYCH
Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)
Group: Forum Members
Posts: 8, Visits: 17
Dave - 6/8/2021
USYDPSYCH - 6/8/2021
I am wanting to do a study where participants are presented with a fixation cross for 500ms, then a face for 3000ms where they firstly have to (1) identify the expression from for example happy or sad by pressing E or I, then they have to  (2) rate the attractiveness of the face using a 10 point Likert scale. This is followed by an intertrial interval of 1000ms.

Is there an existing script available for something similar?

I have looked at using an IAT script and altering it but I'm  having to re-write most of the script.

You're not going to find an existing script that exactly matches what you want. The procedure you describe, however, you can just create from scratch fairly easily.

<values>
/ itemnumber = 1
</values>

<block example>
/ trials = [1-10 = noreplace(show_happy, show_sad)]
</block>

<trial show_happy>
/ ontrialbegin = [
    values.itemnumber = list.happyitems.nextindex;
]
/ stimulustimes = [0=clearscreen, fixation; 500=clearscreen, happyface; 3500=e_reminder, i_reminder;]
/ validresponse = ("E", "I")
/ correctresponse = ("E")
/ branch = [
    likert.rate_happy;
]
</trial>

<likert rate_happy>
/ stimulustimes = [0=clearscreen, ratingquestion, happyface]
/ inputdevice = mouse
/ numpoints = 5
/ anchors = [1="unattractive"; 5="attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<trial show_sad>
/ ontrialbegin = [
    values.itemnumber = list.saditems.nextindex;
]
/ stimulustimes = [0=clearscreen, fixation; 500=clearscreen, sadface; 3500=e_reminder, i_reminder;]
/ validresponse = ("E", "I")
/ correctresponse = ("I")
/ branch = [
    likert.rate_sad;
]
</trial>

<likert rate_sad>
/ stimulustimes = [0=clearscreen, ratingquestion, sadface]
/ inputdevice = mouse
/ numpoints = 5
/ anchors = [1="unattractive"; 5="attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<picture happyface>
/ items = happyfaces
/ erase = false
/ select = values.itemnumber
/ size = (40%, 50%)
</picture>

// 5 happy items in this example
<list happyitems>
/ poolsize = 5
</list>

<picture sadface>
/ items = sadfaces
/ erase = false
/ select = values.itemnumber
/ size = (40%, 50%)
</picture>

// 5 sad items in this example
<list saditems>
/ poolsize = 5
</list>

<item happyfaces>
/ 1 = "happy01.jpg"
/ 2 = "happy02.jpg"
/ 3 = "happy03.jpg"
/ 4 = "happy04.jpg"
/ 5 = "happy05.jpg"
</item>

<item sadfaces>
/ 1 = "sad01.jpg"
/ 2 = "sad02.jpg"
/ 3 = "sad03.jpg"
/ 4 = "sad04.jpg"
/ 5 = "sad05.jpg"
</item>

<text fixation>
/ items = ("+")
/ erase = false
</text>

<text e_reminder>
/ items = ("E = Happy")
/ position = (20%, 10%)
</text>

<text i_reminder>
/ items = ("I = Sad")
/ position = (80%, 10%)
</text>

<text ratingquestion>
/ items = ("How attractive?")
/ position = (50%, 10%)
</text>

I've added in angry stimuli now which means the E and I will switch. I'm doing three blocks - happy v sad, happy v angry, and sad v angry. How do I update the script so that I can switch the "I"s and "E"s to represent the right emotion in the respective block? Thank you
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: 12K, Visits: 98K
USYDPSYCH - 6/8/2021
Dave - 6/8/2021
USYDPSYCH - 6/8/2021
I am wanting to do a study where participants are presented with a fixation cross for 500ms, then a face for 3000ms where they firstly have to (1) identify the expression from for example happy or sad by pressing E or I, then they have to  (2) rate the attractiveness of the face using a 10 point Likert scale. This is followed by an intertrial interval of 1000ms.

Is there an existing script available for something similar?

I have looked at using an IAT script and altering it but I'm  having to re-write most of the script.

You're not going to find an existing script that exactly matches what you want. The procedure you describe, however, you can just create from scratch fairly easily.

<values>
/ itemnumber = 1
</values>

<block example>
/ trials = [1-10 = noreplace(show_happy, show_sad)]
</block>

<trial show_happy>
/ ontrialbegin = [
    values.itemnumber = list.happyitems.nextindex;
]
/ stimulustimes = [0=clearscreen, fixation; 500=clearscreen, happyface; 3500=e_reminder, i_reminder;]
/ validresponse = ("E", "I")
/ correctresponse = ("E")
/ branch = [
    likert.rate_happy;
]
</trial>

<likert rate_happy>
/ stimulustimes = [0=clearscreen, ratingquestion, happyface]
/ inputdevice = mouse
/ numpoints = 5
/ anchors = [1="unattractive"; 5="attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<trial show_sad>
/ ontrialbegin = [
    values.itemnumber = list.saditems.nextindex;
]
/ stimulustimes = [0=clearscreen, fixation; 500=clearscreen, sadface; 3500=e_reminder, i_reminder;]
/ validresponse = ("E", "I")
/ correctresponse = ("I")
/ branch = [
    likert.rate_sad;
]
</trial>

<likert rate_sad>
/ stimulustimes = [0=clearscreen, ratingquestion, sadface]
/ inputdevice = mouse
/ numpoints = 5
/ anchors = [1="unattractive"; 5="attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<picture happyface>
/ items = happyfaces
/ erase = false
/ select = values.itemnumber
/ size = (40%, 50%)
</picture>

// 5 happy items in this example
<list happyitems>
/ poolsize = 5
</list>

<picture sadface>
/ items = sadfaces
/ erase = false
/ select = values.itemnumber
/ size = (40%, 50%)
</picture>

// 5 sad items in this example
<list saditems>
/ poolsize = 5
</list>

<item happyfaces>
/ 1 = "happy01.jpg"
/ 2 = "happy02.jpg"
/ 3 = "happy03.jpg"
/ 4 = "happy04.jpg"
/ 5 = "happy05.jpg"
</item>

<item sadfaces>
/ 1 = "sad01.jpg"
/ 2 = "sad02.jpg"
/ 3 = "sad03.jpg"
/ 4 = "sad04.jpg"
/ 5 = "sad05.jpg"
</item>

<text fixation>
/ items = ("+")
/ erase = false
</text>

<text e_reminder>
/ items = ("E = Happy")
/ position = (20%, 10%)
</text>

<text i_reminder>
/ items = ("I = Sad")
/ position = (80%, 10%)
</text>

<text ratingquestion>
/ items = ("How attractive?")
/ position = (50%, 10%)
</text>

I've added in angry stimuli now which means the E and I will switch. I'm doing three blocks - happy v sad, happy v angry, and sad v angry. How do I update the script so that I can switch the "I"s and "E"s to represent the right emotion in the respective block? Thank you

<values>
/ itemnumber = 1
/ happykey = ""
/ sadkey = ""
/ angrykey = ""
/ e_reminder = ""
/ i_reminder = ""
</values>

<expt>
/ blocks = [1-3 = noreplace(happy_v_sad, happy_v_angry, sad_v_angry)]
</expt>

<block happy_v_sad>
/ onblockbegin = [
    values.happykey = "E";
    values.sadkey = "I";
    values.e_reminder = "E = Happy";
    values.i_reminder = "I = Sad";
]
/ trials = [1-10 = noreplace(show_happy, show_sad)]
</block>

<block happy_v_angry>
/ onblockbegin = [
    values.happykey = "E";
    values.angrykey = "I";
    values.e_reminder = "E = Happy";
    values.i_reminder = "I = Angry";
]
/ trials = [1-10 = noreplace(show_happy, show_angry)]
</block>

<block sad_v_angry>
/ onblockbegin = [
    values.sadkey = "E";
    values.angrykey = "I";
    values.e_reminder = "E = Sad";
    values.i_reminder = "I = Angry";
]
/ trials = [1-10 = noreplace(show_sad, show_angry)]
</block>


<trial show_happy>
/ ontrialbegin = [
values.itemnumber = list.happyitems.nextindex;
]
/ stimulustimes = [0=clearscreen, fixation; 500=clearscreen, happyface; 3500=e_reminder, i_reminder;]
/ validresponse = ("E", "I")
/ correctresponse = (values.happykey)
/ branch = [
likert.rate_happy;
]
</trial>

<likert rate_happy>
/ stimulustimes = [0=clearscreen, ratingquestion, happyface]
/ inputdevice = mouse
/ numpoints = 5
/ anchors = [1="unattractive"; 5="attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<trial show_sad>
/ ontrialbegin = [
values.itemnumber = list.saditems.nextindex;
]
/ stimulustimes = [0=clearscreen, fixation; 500=clearscreen, sadface; 3500=e_reminder, i_reminder;]
/ validresponse = ("E", "I")
/ correctresponse = (values.sadkey)
/ branch = [
likert.rate_sad;
]
</trial>

<likert rate_sad>
/ stimulustimes = [0=clearscreen, ratingquestion, sadface]
/ inputdevice = mouse
/ numpoints = 5
/ anchors = [1="unattractive"; 5="attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<trial show_angry>
/ ontrialbegin = [
values.itemnumber = list.angryitems.nextindex;
]
/ stimulustimes = [0=clearscreen, fixation; 500=clearscreen, angryface; 3500=e_reminder, i_reminder;]
/ validresponse = ("E", "I")
/ correctresponse = (values.angrykey)
/ branch = [
likert.rate_angry;
]
</trial>

<likert rate_angry>
/ stimulustimes = [0=clearscreen, ratingquestion, angryface]
/ inputdevice = mouse
/ numpoints = 5
/ anchors = [1="unattractive"; 5="attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<picture happyface>
/ items = happyfaces
/ erase = false
/ select = values.itemnumber
/ size = (40%, 50%)
</picture>

// 5 happy items in this example
<list happyitems>
/ poolsize = 5
</list>

<picture sadface>
/ items = sadfaces
/ erase = false
/ select = values.itemnumber
/ size = (40%, 50%)
</picture>

// 5 sad items in this example
<list saditems>
/ poolsize = 5
</list>

<picture angryface>
/ items = angryfaces
/ erase = false
/ select = values.itemnumber
/ size = (40%, 50%)
</picture>

// 5 angry items in this example
<list angryitems>
/ poolsize = 5
</list>

<item happyfaces>
/ 1 = "happy01.jpg"
/ 2 = "happy02.jpg"
/ 3 = "happy03.jpg"
/ 4 = "happy04.jpg"
/ 5 = "happy05.jpg"
</item>

<item sadfaces>
/ 1 = "sad01.jpg"
/ 2 = "sad02.jpg"
/ 3 = "sad03.jpg"
/ 4 = "sad04.jpg"
/ 5 = "sad05.jpg"
</item>

<item angryfaces>
/ 1 = "angry01.jpg"
/ 2 = "angry02.jpg"
/ 3 = "angry03.jpg"
/ 4 = "angry04.jpg"
/ 5 = "angry05.jpg"
</item>

<text fixation>
/ items = ("+")
/ erase = false
</text>

<text e_reminder>
/ items = ("<%values.e_reminder%>")
/ position = (20%, 10%)
</text>

<text i_reminder>
/ items = ("<%values.i_reminder%>")
/ position = (80%, 10%)
</text>

<text ratingquestion>
/ items = ("How attractive?")
/ position = (50%, 10%)
</text>

USYDPSYCH
USYDPSYCH
Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)
Group: Forum Members
Posts: 8, Visits: 17
Dave - 6/8/2021
USYDPSYCH - 6/8/2021
I am wanting to do a study where participants are presented with a fixation cross for 500ms, then a face for 3000ms where they firstly have to (1) identify the expression from for example happy or sad by pressing E or I, then they have to  (2) rate the attractiveness of the face using a 10 point Likert scale. This is followed by an intertrial interval of 1000ms.

Is there an existing script available for something similar?

I have looked at using an IAT script and altering it but I'm  having to re-write most of the script.

You're not going to find an existing script that exactly matches what you want. The procedure you describe, however, you can just create from scratch fairly easily.

<values>
/ itemnumber = 1
</values>

<block example>
/ trials = [1-10 = noreplace(show_happy, show_sad)]
</block>

<trial show_happy>
/ ontrialbegin = [
    values.itemnumber = list.happyitems.nextindex;
]
/ stimulustimes = [0=clearscreen, fixation; 500=clearscreen, happyface; 3500=e_reminder, i_reminder;]
/ validresponse = ("E", "I")
/ correctresponse = ("E")
/ branch = [
    likert.rate_happy;
]
</trial>

<likert rate_happy>
/ stimulustimes = [0=clearscreen, ratingquestion, happyface]
/ inputdevice = mouse
/ numpoints = 5
/ anchors = [1="unattractive"; 5="attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<trial show_sad>
/ ontrialbegin = [
    values.itemnumber = list.saditems.nextindex;
]
/ stimulustimes = [0=clearscreen, fixation; 500=clearscreen, sadface; 3500=e_reminder, i_reminder;]
/ validresponse = ("E", "I")
/ correctresponse = ("I")
/ branch = [
    likert.rate_sad;
]
</trial>

<likert rate_sad>
/ stimulustimes = [0=clearscreen, ratingquestion, sadface]
/ inputdevice = mouse
/ numpoints = 5
/ anchors = [1="unattractive"; 5="attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<picture happyface>
/ items = happyfaces
/ erase = false
/ select = values.itemnumber
/ size = (40%, 50%)
</picture>

// 5 happy items in this example
<list happyitems>
/ poolsize = 5
</list>

<picture sadface>
/ items = sadfaces
/ erase = false
/ select = values.itemnumber
/ size = (40%, 50%)
</picture>

// 5 sad items in this example
<list saditems>
/ poolsize = 5
</list>

<item happyfaces>
/ 1 = "happy01.jpg"
/ 2 = "happy02.jpg"
/ 3 = "happy03.jpg"
/ 4 = "happy04.jpg"
/ 5 = "happy05.jpg"
</item>

<item sadfaces>
/ 1 = "sad01.jpg"
/ 2 = "sad02.jpg"
/ 3 = "sad03.jpg"
/ 4 = "sad04.jpg"
/ 5 = "sad05.jpg"
</item>

<text fixation>
/ items = ("+")
/ erase = false
</text>

<text e_reminder>
/ items = ("E = Happy")
/ position = (20%, 10%)
</text>

<text i_reminder>
/ items = ("I = Sad")
/ position = (80%, 10%)
</text>

<text ratingquestion>
/ items = ("How attractive?")
/ position = (50%, 10%)
</text>

I have changed my script around quite a bit, but now I can't get the Likert to present properly. I want the attractiveness question to display at the end of each trial with a Likert scale able to be selected by pressing a number on keyboard. Here is my script which isn't working:

<likert rate_attractiveness>
/ stimulustimes = [0=clearscreen; 3500=ratingquestion]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>



<text ratingquestion>
/ items = ("On a scale of 1-9, how attractive is this face?")
/ position = (50%, 10%)
</text>



<trial AMAF>
/ stimulustimes = [0=fix; 500=AMAF; 3500=text.ratingquestion; 3500=likert.rate_attractiveness]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ branch = [
    likert.rate_attractiveness
]
/ posttrialpause = (1000)
</trial>

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: 12K, Visits: 98K
USYDPSYCH - 7/28/2021
Dave - 6/8/2021
USYDPSYCH - 6/8/2021
I am wanting to do a study where participants are presented with a fixation cross for 500ms, then a face for 3000ms where they firstly have to (1) identify the expression from for example happy or sad by pressing E or I, then they have to  (2) rate the attractiveness of the face using a 10 point Likert scale. This is followed by an intertrial interval of 1000ms.

Is there an existing script available for something similar?

I have looked at using an IAT script and altering it but I'm  having to re-write most of the script.

You're not going to find an existing script that exactly matches what you want. The procedure you describe, however, you can just create from scratch fairly easily.

<values>
/ itemnumber = 1
</values>

<block example>
/ trials = [1-10 = noreplace(show_happy, show_sad)]
</block>

<trial show_happy>
/ ontrialbegin = [
    values.itemnumber = list.happyitems.nextindex;
]
/ stimulustimes = [0=clearscreen, fixation; 500=clearscreen, happyface; 3500=e_reminder, i_reminder;]
/ validresponse = ("E", "I")
/ correctresponse = ("E")
/ branch = [
    likert.rate_happy;
]
</trial>

<likert rate_happy>
/ stimulustimes = [0=clearscreen, ratingquestion, happyface]
/ inputdevice = mouse
/ numpoints = 5
/ anchors = [1="unattractive"; 5="attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<trial show_sad>
/ ontrialbegin = [
    values.itemnumber = list.saditems.nextindex;
]
/ stimulustimes = [0=clearscreen, fixation; 500=clearscreen, sadface; 3500=e_reminder, i_reminder;]
/ validresponse = ("E", "I")
/ correctresponse = ("I")
/ branch = [
    likert.rate_sad;
]
</trial>

<likert rate_sad>
/ stimulustimes = [0=clearscreen, ratingquestion, sadface]
/ inputdevice = mouse
/ numpoints = 5
/ anchors = [1="unattractive"; 5="attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<picture happyface>
/ items = happyfaces
/ erase = false
/ select = values.itemnumber
/ size = (40%, 50%)
</picture>

// 5 happy items in this example
<list happyitems>
/ poolsize = 5
</list>

<picture sadface>
/ items = sadfaces
/ erase = false
/ select = values.itemnumber
/ size = (40%, 50%)
</picture>

// 5 sad items in this example
<list saditems>
/ poolsize = 5
</list>

<item happyfaces>
/ 1 = "happy01.jpg"
/ 2 = "happy02.jpg"
/ 3 = "happy03.jpg"
/ 4 = "happy04.jpg"
/ 5 = "happy05.jpg"
</item>

<item sadfaces>
/ 1 = "sad01.jpg"
/ 2 = "sad02.jpg"
/ 3 = "sad03.jpg"
/ 4 = "sad04.jpg"
/ 5 = "sad05.jpg"
</item>

<text fixation>
/ items = ("+")
/ erase = false
</text>

<text e_reminder>
/ items = ("E = Happy")
/ position = (20%, 10%)
</text>

<text i_reminder>
/ items = ("I = Sad")
/ position = (80%, 10%)
</text>

<text ratingquestion>
/ items = ("How attractive?")
/ position = (50%, 10%)
</text>

I have changed my script around quite a bit, but now I can't get the Likert to present properly. I want the attractiveness question to display at the end of each trial with a Likert scale able to be selected by pressing a number on keyboard. Here is my script which isn't working:

<likert rate_attractiveness>
/ stimulustimes = [0=clearscreen; 3500=ratingquestion]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>



<text ratingquestion>
/ items = ("On a scale of 1-9, how attractive is this face?")
/ position = (50%, 10%)
</text>



<trial AMAF>
/ stimulustimes = [0=fix; 500=AMAF; 3500=text.ratingquestion; 3500=likert.rate_attractiveness]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ branch = [
    likert.rate_attractiveness
]
/ posttrialpause = (1000)
</trial>

<trial AMAF>
/ stimulustimes = [0=fix; 500=AMAF; 3500=text.ratingquestion; 3500=likert.rate_attractiveness]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ branch = [
  likert.rate_attractiveness
]
/ posttrialpause = (1000)
</trial>

A <likert> is not a stimulus. You cannot present it as a stimulus in a <trial>. A <likert> is *itsefl* a special kind of <trial>.
USYDPSYCH
USYDPSYCH
Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)
Group: Forum Members
Posts: 8, Visits: 17
Dave - 7/28/2021
USYDPSYCH - 7/28/2021
Dave - 6/8/2021
USYDPSYCH - 6/8/2021
I am wanting to do a study where participants are presented with a fixation cross for 500ms, then a face for 3000ms where they firstly have to (1) identify the expression from for example happy or sad by pressing E or I, then they have to  (2) rate the attractiveness of the face using a 10 point Likert scale. This is followed by an intertrial interval of 1000ms.

Is there an existing script available for something similar?

I have looked at using an IAT script and altering it but I'm  having to re-write most of the script.

You're not going to find an existing script that exactly matches what you want. The procedure you describe, however, you can just create from scratch fairly easily.

<values>
/ itemnumber = 1
</values>

<block example>
/ trials = [1-10 = noreplace(show_happy, show_sad)]
</block>

<trial show_happy>
/ ontrialbegin = [
    values.itemnumber = list.happyitems.nextindex;
]
/ stimulustimes = [0=clearscreen, fixation; 500=clearscreen, happyface; 3500=e_reminder, i_reminder;]
/ validresponse = ("E", "I")
/ correctresponse = ("E")
/ branch = [
    likert.rate_happy;
]
</trial>

<likert rate_happy>
/ stimulustimes = [0=clearscreen, ratingquestion, happyface]
/ inputdevice = mouse
/ numpoints = 5
/ anchors = [1="unattractive"; 5="attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<trial show_sad>
/ ontrialbegin = [
    values.itemnumber = list.saditems.nextindex;
]
/ stimulustimes = [0=clearscreen, fixation; 500=clearscreen, sadface; 3500=e_reminder, i_reminder;]
/ validresponse = ("E", "I")
/ correctresponse = ("I")
/ branch = [
    likert.rate_sad;
]
</trial>

<likert rate_sad>
/ stimulustimes = [0=clearscreen, ratingquestion, sadface]
/ inputdevice = mouse
/ numpoints = 5
/ anchors = [1="unattractive"; 5="attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<picture happyface>
/ items = happyfaces
/ erase = false
/ select = values.itemnumber
/ size = (40%, 50%)
</picture>

// 5 happy items in this example
<list happyitems>
/ poolsize = 5
</list>

<picture sadface>
/ items = sadfaces
/ erase = false
/ select = values.itemnumber
/ size = (40%, 50%)
</picture>

// 5 sad items in this example
<list saditems>
/ poolsize = 5
</list>

<item happyfaces>
/ 1 = "happy01.jpg"
/ 2 = "happy02.jpg"
/ 3 = "happy03.jpg"
/ 4 = "happy04.jpg"
/ 5 = "happy05.jpg"
</item>

<item sadfaces>
/ 1 = "sad01.jpg"
/ 2 = "sad02.jpg"
/ 3 = "sad03.jpg"
/ 4 = "sad04.jpg"
/ 5 = "sad05.jpg"
</item>

<text fixation>
/ items = ("+")
/ erase = false
</text>

<text e_reminder>
/ items = ("E = Happy")
/ position = (20%, 10%)
</text>

<text i_reminder>
/ items = ("I = Sad")
/ position = (80%, 10%)
</text>

<text ratingquestion>
/ items = ("How attractive?")
/ position = (50%, 10%)
</text>

I have changed my script around quite a bit, but now I can't get the Likert to present properly. I want the attractiveness question to display at the end of each trial with a Likert scale able to be selected by pressing a number on keyboard. Here is my script which isn't working:

<likert rate_attractiveness>
/ stimulustimes = [0=clearscreen; 3500=ratingquestion]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>



<text ratingquestion>
/ items = ("On a scale of 1-9, how attractive is this face?")
/ position = (50%, 10%)
</text>



<trial AMAF>
/ stimulustimes = [0=fix; 500=AMAF; 3500=text.ratingquestion; 3500=likert.rate_attractiveness]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ branch = [
    likert.rate_attractiveness
]
/ posttrialpause = (1000)
</trial>

<trial AMAF>
/ stimulustimes = [0=fix; 500=AMAF; 3500=text.ratingquestion; 3500=likert.rate_attractiveness]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ branch = [
  likert.rate_attractiveness
]
/ posttrialpause = (1000)
</trial>

A <likert> is not a stimulus. You cannot present it as a stimulus in a <trial>. A <likert> is *itsefl* a special kind of <trial>.

Sorry I'm not getting how to add in Likert. I've read through the other suggested code, and the help/module but I'm still not clear. How would I add in a Likert at the end of each presentation of stimuli into the following script? Many thanks in advance

***********************************************
INTRODUCTION

TITLE: Perception of emotion and attractiveness

Accurate face perception is a crucial skill involving processing of variant and invariant characteristics.
This research will firstly explore the variant characteristic of emotion expression on face perception.
Secondly this research will explore the invariant characteristic of attractiveness on face perception.
This study will present numerous faces and ask participants to firstly select the emotion from options of happy, angry, sad, and secondly rate the attractieveness of the faces using a Likert scale from 1 (very unattractive) to 10 (very attractive).
Taking part in this study is voluntary.
***********************************************

<item AMAF>
/1 = "AMAF1.jpg"
/2 = "AMAF2.jpg"
/3 = "AMAF3.jpg"
/4 = "AMAF4.jpg"
</item>

<item ALAF>
/1 = "ALAF1.jpg"
/2 = "ALAF2.jpg"
/3 = "ALAF3.jpg"
/4 = "ALAF4.jpg"
/5 = "ALAF5.jpg"
/6 = "ALAF6.jpg"
/7 = "ALAF7.jpg"
/8 = "ALAF8.jpg"
/9 = "ALAF9.jpg"
/10 = "ALAF10.jpg"
/11 = "ALAF11.jpg"
/12 = "ALAF12.jpg"
/13 = "ALAF13.jpg"
/14 = "ALAF14.jpg"
</item>

<item HMAF>
/1 = "HMAF1.jpg"
/2 = "HMAF2.jpg"
/3 = "HMAF3.jpg"
/4 = "HMAF4.jpg"
</item>

<item HLAF>
/1 = "HLAF1.jpg"
/2 = "HLAF2.jpg"
/3 = "HLAF3.jpg"
/4 = "HLAF4.jpg"
/5 = "HLAF5.jpg"
/6 = "HLAF6.jpg"
/7 = "HLAF7.jpg"
/8 = "HLAF8.jpg"
/9 = "HLAF9.jpg"
/10 = "HLAF10.jpg"
/11 = "HLAF11.jpg"
/12 = "HLAF12.jpg"
/13 = "HLAF13.jpg"
/14 = "HLAF14.jpg"
</item>

<item SMAF>
/1 = "SMAF1.jpg"
/2 = "SMAF2.jpg"
/3 = "SMAF3.jpg"
/4 = "SMAF4.jpg"
</item>

<item SLAF>
/1 = "SLAF1.jpg"
/2 = "SLAF1.jpg"
/3 = "SLAF1.jpg"
/4 = "SLAF1.jpg"
/5 = "SLAF1.jpg"
/6 = "SLAF1.jpg"
/7 = "SLAF1.jpg"
/8 = "SLAF1.jpg"
/9 = "SLAF1.jpg"
/10 = "SLAF1.jpg"
/11 = "SLAF1.jpg"
/12 = "SLAF1.jpg"
/13 = "SLAF1.jpg"
/14 = "SLAF1.jpg"
</item>

<item AMAM>
/1 = "AMAM1.jpg"
/2 = "AMAM2.jpg"
/3 = "AMAM3.jpg"
/4 = "AMAM4.jpg"
</item>

<item ALAM>
/1 = "ALAM1.jpg"
/2 = "ALAM2.jpg"
/3 = "ALAM3.jpg"
/4 = "ALAM4.jpg"
/5 = "ALAM5.jpg"
/6 = "ALAM6.jpg"
/7 = "ALAM7.jpg"
/8 = "ALAM8.jpg"
/9 = "ALAM9.jpg"
/10 = "ALAM10.jpg"
/11 = "ALAM11.jpg"
/12 = "ALAM12.jpg"
/13 = "ALAM13.jpg"
/14 = "ALAM14.jpg"
</item>

<item HMAM>
/1 = "HMAM1.jpg"
/2 = "HMAM2.jpg"
/3 = "HMAM3.jpg"
/4 = "HMAM4.jpg"
</item>

<item HLAM>
/1 = "HLAM1.jpg"
/2 = "HLAM2.jpg"
/3 = "HLAM3.jpg"
/4 = "HLAM4.jpg"
/5 = "HLAM5.jpg"
/6 = "HLAM6.jpg"
/7 = "HLAM7.jpg"
/8 = "HLAM8.jpg"
/9 = "HLAM9.jpg"
/10 = "HLAM10.jpg"
/11 = "HLAM11.jpg"
/12 = "HLAM12.jpg"
/13 = "HLAM13.jpg"
/14 = "HLAM14.jpg"
</item>

<item SMAM>
/1 = "SMAM1.jpg"
/2 = "SMAM2.jpg"
/3 = "SMAM3.jpg"
/4 = "SMAM4.jpg"
</item>

<item SLAM>
/1 = "SLAM1.jpg"
/2 = "SLAM2.jpg"
/3 = "SLAM3.jpg"
/4 = "SLAM4.jpg"
/5 = "SLAM5.jpg"
/6 = "SLAM6.jpg"
/7 = "SLAM7.jpg"
/8 = "SLAM8.jpg"
/9 = "SLAM9.jpg"
/10 = "SLAM10.jpg"
/11 = "SLAM11.jpg"
/12 = "SLAM12.jpg"
/13 = "SLAM13.jpg"
/14 = "SLAM14.jpg"
</item>

<text error>
/ items = ("ERROR")
/ position = (50, 95)
/ valign = bottom
/ fontstyle = ("Arial", 5%)
/ txcolor = (255, 0, 0)
/ txbgcolor = (0, 0, 0)
</text>

<text fix>
/ items = ("+")
/ position = (50, 50)
/ fontstyle = ("Arial", 8%)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
</text>

<picture AMAF>
/ items = AMAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture ALAF>
/ items = ALAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture HMAF>
/ items = HMAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture HLAF>
/ items = HLAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture SMAF>
/ items = SMAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture SLAF>
/ items = SLAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture AMAM>
/ items = AMAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture ALAM>
/ items = ALAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture HMAM>
/ items = HMAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture HLAM>
/ items = HLAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture SMAM>
/ items = SMAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture SLAM>
/ items = SLAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<text happyreminder>
/ items = ("Press 'A' for happy")
/ position = (15, 75)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
/ fontstyle = ("Courier New", 2.5%)
</text>

<text angryreminder>
/ items = ("Press 'L' for angry")
/ position = (85, 75)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
/ fontstyle = ("Courier New", 2.5%)
</text>

<text sadreminder_lefthandside>
/ items = ("Press 'G' for sad")
/ position = (15, 75)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
/ fontstyle = ("Courier New", 2.5%)
</text>

<text sadreminder_righthandside>
/ items = ("Press 'G' for sad")
/ position = (85, 75)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
/ fontstyle = ("Courier New", 2.5%)
</text>

<text likertattractivenessratingquestion>
/items = ("On a scale of 1-9, how attractive is this face?")
/ position = (50, 10)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
/ fontstyle = ("Courier New", 2.5%)
</text>

<likert attractivenessratingquestion>
/ stimulustimes = [0=likertattractivenessratingquestion]
/ inputdevice = keyboard
/ numpoints = 9
/ anchors=[1="very unattractive"; 2="unattractive"; 3="fairly unattractive"; 4="somewhat unattractive"; 5="neutral"; 6="somewhat attractive"; 7="fairly attractive"; 8="attractive"; 9="very attractive"]
/ position=(50, 90)
</likert>

<likert rate_attractiveness>
/ stimulustimes = [0=clearscreen; 3500=ratingquestion]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<text ratingquestion>
/ items = ("On a scale of 1-9, how attractive is this face?")
/ position = (50%, 10%)
</text>

*************************************************
Creating Instructions
*************************************************
<page intro>
^^Perception of emotion and attractiveness
^^In this experiment you will be asked to select the emotion you see on a series of faces, and rate the attractiveness of those faces.
^^It is important that you pay attention, and select the emotion you see, as quickly as possible, as the study is looking at accuracy and response time of emotion recognition.
^^You will see faces presented one at a time.
^^Your job is to categorize the expression on the face as either HAPPY, SAD, or ANGRY. Then rate the attractiveness of that face.
^^Press the 'A' key if the face is HAPPY, the 'G' key if the face is SAD, and the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
^^Please press space bar to commence the practice task.
</page>

<page practice>
^^This is the practice task.
^^Please press space bar to commence the task.
^^REMEMBER: Press the 'A' key if the face is HAPPY, and press the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

<page main>
^^This is the main task.
^^Please press space bar to commence the task.
^^REMEMBER: Press the 'A' key if the face is HAPPY, and press the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

<page end>
^^This is the end of the response time tasks.
^^Please press space bar to continue.
</page>

Happy v Sad

<page happyvsad>
^^This block will ask you to choose the emotion from happy or sad.
^^Please press space bar to commence the task.
^^Please pay careful attention as to which key to press for which emotion, as they may have changed.
^^REMEMBER: Press the 'A' key if the face is HAPPY, and press the 'G' key if the face is SAD.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

Happy v Angry

<page happyvangry>
^^This block will ask you to choose the emotion from happy or angry.
^^Please press space bar to commence the task.
^^Please pay careful attention as to which key to press for which emotion, as they may have changed.
^^REMEMBER: Press the 'A' key if the face is HAPPY, and press the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

Sad v Angry

<page sadvangry>
^^This block will ask you to choose the emtoion from sad or angry.
^^Please press space bar to commence the task.
^^Please pay careful attention as to which key to press for which emotion, as they may have changed.
^^REMEMBER: Press the 'G' key if the face is SAD, and press the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

*************************************************
Creating Trials
*************************************************

<trial AMAF>
/ stimulustimes = [0=fix; 500=AMAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial ALAF>
/ stimulustimes = [0=fix; 500=ALAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial HMAF>
/ stimulustimes = [0=fix; 500=HMAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("a")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial HLAF>
/ stimulustimes = [0=fix; 500=HLAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("a")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial SMAF>
/ stimulustimes = [0=fix; 500=SMAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("g")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial SLAF>
/ stimulustimes = [0=fix; 500=SLAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("g")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial AMAM> 
/ stimulustimes = [0=fix; 500=AMAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial ALAM>
/ stimulustimes = [0=fix; 500=ALAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial HMAM>
/ stimulustimes = [0=fix; 500=HMAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("a")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial HLAM>
/ stimulustimes = [0=fix; 500=HLAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("a")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial SMAM>
/ stimulustimes = [0=fix; 500=SMAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("g")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial SLAM>
/ stimulustimes = [0=fix; 500=SLAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("g")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

*************************************************
Creating Blocks
*************************************************

<block attr_practice>
/ trials = [1-8 = noreplace(AMAF, ALAF, HMAF, HLAF, AMAM, ALAM, HMAM, HLAM)]
/ preinstructions = (practice)
/ postinstructions = (main)
/ bgstim = (happyreminder, angryreminder)
/ errormessage = (error, 1000)
/ blockfeedback = (latency, correct)
</block>

<block attr_exp>
/ trials = [1-8 = noreplace(AMAF, ALAF, HMAF, HLAF, AMAM, ALAM, HMAM, HLAM)]
/ bgstim = (happyreminder, angryreminder)
</block>

block practice?

<block pre_happy_v_sad>
/ trials = [1-8 = noreplacenorepeat(HLAF, HMAF, HLAM, HMAM, SLAF, SMAF, SLAM, SMAM)]
/ preinstructions = (happyvsad)
/ bgstim = (happyreminder, sadreminder_righthandside)
</block>

<block pre_happy_v_angry>
/ trials = [1-8 = noreplacenorepeat(HLAF, HMAF, HLAM, HMAM, ALAF, AMAF, ALAM, AMAM)]
/ preinstructions = (happyvangry)
/ bgstim = (happyreminder, angryreminder)
</block>

<block pre_sad_v_angry>
/ trials = [1-8 = noreplacenorepeat(SLAF, SMAF, SLAM, SMAM, ALAF, AMAF, ALAM, AMAM)]
/ preinstructions = (sadvangry)
/ bgstim = (sadreminder_lefthandside, angryreminder)
</block>

<block adapt_happy_v_sad>
/ trials = [1-20 = noreplacenorepeat(HLAF, HLAM, SLAF, SLAM)]
/ preinstructions = (happyvsad)
/ bgstim = (happyreminder, sadreminder_righthandside)
</block>

<block adapt_happy_v_angry>
/ trials = [1-20 = noreplacenorepeat(HLAF, HLAM, ALAF, ALAM)]
/ preinstructions = (happyvangry)
/ bgstim = (happyreminder, angryreminder)
</block>

<block adapt_sad_v_angry>
/ trials = [1-20 = noreplacenorepeat(SLAF, SLAM, ALAF, ALAM)]
/ preinstructions = (sadvangry)
/ bgstim = (sadreminder_lefthandside, angryreminder)
</block>

<block post_happy_v_sad>
/ trials = [1-8 = noreplacenorepeat(HLAF, HMAF, HLAM, HMAM, SLAF, SMAF, SLAM, SMAM)]
/ preinstructions = (happyvsad)
/ bgstim = (happyreminder, sadreminder_righthandside)
</block>

<block post_happy_v_angry>
/ trials = [1-8 = noreplacenorepeat(HLAF, HMAF, HLAM, HMAM, ALAF, AMAF, ALAM, AMAM)]
/ preinstructions = (happyvangry)
/ bgstim = (happyreminder, angryreminder)
</block>

<block post_sad_v_angry>
/ trials = [1-8 = noreplacenorepeat(SLAF, SMAF, SLAM, SMAM, ALAF, AMAF, ALAM, AMAM)]
/ preinstructions = (sadvangry)
/ bgstim = (sadreminder_lefthandside, angryreminder)
</block>


Update instructions at the very beginning of the experiment
How do I present each and every stimuli only once throughout the entire experiment?

*************************************************
Creating an Expt
*************************************************
<expt emotion_attractiveness>
/ preinstructions = (intro)
/ postinstructions = (end)
/ blocks = [1=attr_practice;
            2=pre_happy_v_sad;
            3=pre_happy_v_angry;
            4=pre_sad_v_angry;
            5=adapt_happy_v_sad;
            6=adapt_happy_v_angry;
            7=adapt_sad_v_angry;
            8=post_happy_v_sad;
            9=post_happy_v_angry;
            10=post_sad_v_angry]
</expt>

<defaults>
/ screencolor = (0, 0, 0)
/ txcolor = (255, 255, 255)
/ fontstyle = ("Courier New", 14pt)
</defaults>

USYDPSYCH
USYDPSYCH
Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)Associate Member (93 reputation)
Group: Forum Members
Posts: 8, Visits: 17
USYDPSYCH - 8/2/2021
Dave - 7/28/2021
USYDPSYCH - 7/28/2021
Dave - 6/8/2021
USYDPSYCH - 6/8/2021
I am wanting to do a study where participants are presented with a fixation cross for 500ms, then a face for 3000ms where they firstly have to (1) identify the expression from for example happy or sad by pressing E or I, then they have to  (2) rate the attractiveness of the face using a 10 point Likert scale. This is followed by an intertrial interval of 1000ms.

Is there an existing script available for something similar?

I have looked at using an IAT script and altering it but I'm  having to re-write most of the script.

You're not going to find an existing script that exactly matches what you want. The procedure you describe, however, you can just create from scratch fairly easily.

<values>
/ itemnumber = 1
</values>

<block example>
/ trials = [1-10 = noreplace(show_happy, show_sad)]
</block>

<trial show_happy>
/ ontrialbegin = [
    values.itemnumber = list.happyitems.nextindex;
]
/ stimulustimes = [0=clearscreen, fixation; 500=clearscreen, happyface; 3500=e_reminder, i_reminder;]
/ validresponse = ("E", "I")
/ correctresponse = ("E")
/ branch = [
    likert.rate_happy;
]
</trial>

<likert rate_happy>
/ stimulustimes = [0=clearscreen, ratingquestion, happyface]
/ inputdevice = mouse
/ numpoints = 5
/ anchors = [1="unattractive"; 5="attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<trial show_sad>
/ ontrialbegin = [
    values.itemnumber = list.saditems.nextindex;
]
/ stimulustimes = [0=clearscreen, fixation; 500=clearscreen, sadface; 3500=e_reminder, i_reminder;]
/ validresponse = ("E", "I")
/ correctresponse = ("I")
/ branch = [
    likert.rate_sad;
]
</trial>

<likert rate_sad>
/ stimulustimes = [0=clearscreen, ratingquestion, sadface]
/ inputdevice = mouse
/ numpoints = 5
/ anchors = [1="unattractive"; 5="attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<picture happyface>
/ items = happyfaces
/ erase = false
/ select = values.itemnumber
/ size = (40%, 50%)
</picture>

// 5 happy items in this example
<list happyitems>
/ poolsize = 5
</list>

<picture sadface>
/ items = sadfaces
/ erase = false
/ select = values.itemnumber
/ size = (40%, 50%)
</picture>

// 5 sad items in this example
<list saditems>
/ poolsize = 5
</list>

<item happyfaces>
/ 1 = "happy01.jpg"
/ 2 = "happy02.jpg"
/ 3 = "happy03.jpg"
/ 4 = "happy04.jpg"
/ 5 = "happy05.jpg"
</item>

<item sadfaces>
/ 1 = "sad01.jpg"
/ 2 = "sad02.jpg"
/ 3 = "sad03.jpg"
/ 4 = "sad04.jpg"
/ 5 = "sad05.jpg"
</item>

<text fixation>
/ items = ("+")
/ erase = false
</text>

<text e_reminder>
/ items = ("E = Happy")
/ position = (20%, 10%)
</text>

<text i_reminder>
/ items = ("I = Sad")
/ position = (80%, 10%)
</text>

<text ratingquestion>
/ items = ("How attractive?")
/ position = (50%, 10%)
</text>

I have changed my script around quite a bit, but now I can't get the Likert to present properly. I want the attractiveness question to display at the end of each trial with a Likert scale able to be selected by pressing a number on keyboard. Here is my script which isn't working:

<likert rate_attractiveness>
/ stimulustimes = [0=clearscreen; 3500=ratingquestion]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>



<text ratingquestion>
/ items = ("On a scale of 1-9, how attractive is this face?")
/ position = (50%, 10%)
</text>



<trial AMAF>
/ stimulustimes = [0=fix; 500=AMAF; 3500=text.ratingquestion; 3500=likert.rate_attractiveness]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ branch = [
    likert.rate_attractiveness
]
/ posttrialpause = (1000)
</trial>

<trial AMAF>
/ stimulustimes = [0=fix; 500=AMAF; 3500=text.ratingquestion; 3500=likert.rate_attractiveness]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ branch = [
  likert.rate_attractiveness
]
/ posttrialpause = (1000)
</trial>

A <likert> is not a stimulus. You cannot present it as a stimulus in a <trial>. A <likert> is *itsefl* a special kind of <trial>.

Sorry I'm not getting how to add in Likert. I've read through the other suggested code, and the help/module but I'm still not clear. How would I add in a Likert at the end of each presentation of stimuli into the following script? Many thanks in advance

***********************************************
INTRODUCTION

TITLE: Perception of emotion and attractiveness

Accurate face perception is a crucial skill involving processing of variant and invariant characteristics.
This research will firstly explore the variant characteristic of emotion expression on face perception.
Secondly this research will explore the invariant characteristic of attractiveness on face perception.
This study will present numerous faces and ask participants to firstly select the emotion from options of happy, angry, sad, and secondly rate the attractieveness of the faces using a Likert scale from 1 (very unattractive) to 10 (very attractive).
Taking part in this study is voluntary.
***********************************************

<item AMAF>
/1 = "AMAF1.jpg"
/2 = "AMAF2.jpg"
/3 = "AMAF3.jpg"
/4 = "AMAF4.jpg"
</item>

<item ALAF>
/1 = "ALAF1.jpg"
/2 = "ALAF2.jpg"
/3 = "ALAF3.jpg"
/4 = "ALAF4.jpg"
/5 = "ALAF5.jpg"
/6 = "ALAF6.jpg"
/7 = "ALAF7.jpg"
/8 = "ALAF8.jpg"
/9 = "ALAF9.jpg"
/10 = "ALAF10.jpg"
/11 = "ALAF11.jpg"
/12 = "ALAF12.jpg"
/13 = "ALAF13.jpg"
/14 = "ALAF14.jpg"
</item>

<item HMAF>
/1 = "HMAF1.jpg"
/2 = "HMAF2.jpg"
/3 = "HMAF3.jpg"
/4 = "HMAF4.jpg"
</item>

<item HLAF>
/1 = "HLAF1.jpg"
/2 = "HLAF2.jpg"
/3 = "HLAF3.jpg"
/4 = "HLAF4.jpg"
/5 = "HLAF5.jpg"
/6 = "HLAF6.jpg"
/7 = "HLAF7.jpg"
/8 = "HLAF8.jpg"
/9 = "HLAF9.jpg"
/10 = "HLAF10.jpg"
/11 = "HLAF11.jpg"
/12 = "HLAF12.jpg"
/13 = "HLAF13.jpg"
/14 = "HLAF14.jpg"
</item>

<item SMAF>
/1 = "SMAF1.jpg"
/2 = "SMAF2.jpg"
/3 = "SMAF3.jpg"
/4 = "SMAF4.jpg"
</item>

<item SLAF>
/1 = "SLAF1.jpg"
/2 = "SLAF1.jpg"
/3 = "SLAF1.jpg"
/4 = "SLAF1.jpg"
/5 = "SLAF1.jpg"
/6 = "SLAF1.jpg"
/7 = "SLAF1.jpg"
/8 = "SLAF1.jpg"
/9 = "SLAF1.jpg"
/10 = "SLAF1.jpg"
/11 = "SLAF1.jpg"
/12 = "SLAF1.jpg"
/13 = "SLAF1.jpg"
/14 = "SLAF1.jpg"
</item>

<item AMAM>
/1 = "AMAM1.jpg"
/2 = "AMAM2.jpg"
/3 = "AMAM3.jpg"
/4 = "AMAM4.jpg"
</item>

<item ALAM>
/1 = "ALAM1.jpg"
/2 = "ALAM2.jpg"
/3 = "ALAM3.jpg"
/4 = "ALAM4.jpg"
/5 = "ALAM5.jpg"
/6 = "ALAM6.jpg"
/7 = "ALAM7.jpg"
/8 = "ALAM8.jpg"
/9 = "ALAM9.jpg"
/10 = "ALAM10.jpg"
/11 = "ALAM11.jpg"
/12 = "ALAM12.jpg"
/13 = "ALAM13.jpg"
/14 = "ALAM14.jpg"
</item>

<item HMAM>
/1 = "HMAM1.jpg"
/2 = "HMAM2.jpg"
/3 = "HMAM3.jpg"
/4 = "HMAM4.jpg"
</item>

<item HLAM>
/1 = "HLAM1.jpg"
/2 = "HLAM2.jpg"
/3 = "HLAM3.jpg"
/4 = "HLAM4.jpg"
/5 = "HLAM5.jpg"
/6 = "HLAM6.jpg"
/7 = "HLAM7.jpg"
/8 = "HLAM8.jpg"
/9 = "HLAM9.jpg"
/10 = "HLAM10.jpg"
/11 = "HLAM11.jpg"
/12 = "HLAM12.jpg"
/13 = "HLAM13.jpg"
/14 = "HLAM14.jpg"
</item>

<item SMAM>
/1 = "SMAM1.jpg"
/2 = "SMAM2.jpg"
/3 = "SMAM3.jpg"
/4 = "SMAM4.jpg"
</item>

<item SLAM>
/1 = "SLAM1.jpg"
/2 = "SLAM2.jpg"
/3 = "SLAM3.jpg"
/4 = "SLAM4.jpg"
/5 = "SLAM5.jpg"
/6 = "SLAM6.jpg"
/7 = "SLAM7.jpg"
/8 = "SLAM8.jpg"
/9 = "SLAM9.jpg"
/10 = "SLAM10.jpg"
/11 = "SLAM11.jpg"
/12 = "SLAM12.jpg"
/13 = "SLAM13.jpg"
/14 = "SLAM14.jpg"
</item>

<text error>
/ items = ("ERROR")
/ position = (50, 95)
/ valign = bottom
/ fontstyle = ("Arial", 5%)
/ txcolor = (255, 0, 0)
/ txbgcolor = (0, 0, 0)
</text>

<text fix>
/ items = ("+")
/ position = (50, 50)
/ fontstyle = ("Arial", 8%)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
</text>

<picture AMAF>
/ items = AMAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture ALAF>
/ items = ALAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture HMAF>
/ items = HMAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture HLAF>
/ items = HLAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture SMAF>
/ items = SMAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture SLAF>
/ items = SLAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture AMAM>
/ items = AMAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture ALAM>
/ items = ALAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture HMAM>
/ items = HMAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture HLAM>
/ items = HLAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture SMAM>
/ items = SMAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture SLAM>
/ items = SLAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<text happyreminder>
/ items = ("Press 'A' for happy")
/ position = (15, 75)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
/ fontstyle = ("Courier New", 2.5%)
</text>

<text angryreminder>
/ items = ("Press 'L' for angry")
/ position = (85, 75)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
/ fontstyle = ("Courier New", 2.5%)
</text>

<text sadreminder_lefthandside>
/ items = ("Press 'G' for sad")
/ position = (15, 75)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
/ fontstyle = ("Courier New", 2.5%)
</text>

<text sadreminder_righthandside>
/ items = ("Press 'G' for sad")
/ position = (85, 75)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
/ fontstyle = ("Courier New", 2.5%)
</text>

<text likertattractivenessratingquestion>
/items = ("On a scale of 1-9, how attractive is this face?")
/ position = (50, 10)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
/ fontstyle = ("Courier New", 2.5%)
</text>

<likert attractivenessratingquestion>
/ stimulustimes = [0=likertattractivenessratingquestion]
/ inputdevice = keyboard
/ numpoints = 9
/ anchors=[1="very unattractive"; 2="unattractive"; 3="fairly unattractive"; 4="somewhat unattractive"; 5="neutral"; 6="somewhat attractive"; 7="fairly attractive"; 8="attractive"; 9="very attractive"]
/ position=(50, 90)
</likert>

<likert rate_attractiveness>
/ stimulustimes = [0=clearscreen; 3500=ratingquestion]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<text ratingquestion>
/ items = ("On a scale of 1-9, how attractive is this face?")
/ position = (50%, 10%)
</text>

*************************************************
Creating Instructions
*************************************************
<page intro>
^^Perception of emotion and attractiveness
^^In this experiment you will be asked to select the emotion you see on a series of faces, and rate the attractiveness of those faces.
^^It is important that you pay attention, and select the emotion you see, as quickly as possible, as the study is looking at accuracy and response time of emotion recognition.
^^You will see faces presented one at a time.
^^Your job is to categorize the expression on the face as either HAPPY, SAD, or ANGRY. Then rate the attractiveness of that face.
^^Press the 'A' key if the face is HAPPY, the 'G' key if the face is SAD, and the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
^^Please press space bar to commence the practice task.
</page>

<page practice>
^^This is the practice task.
^^Please press space bar to commence the task.
^^REMEMBER: Press the 'A' key if the face is HAPPY, and press the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

<page main>
^^This is the main task.
^^Please press space bar to commence the task.
^^REMEMBER: Press the 'A' key if the face is HAPPY, and press the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

<page end>
^^This is the end of the response time tasks.
^^Please press space bar to continue.
</page>

Happy v Sad

<page happyvsad>
^^This block will ask you to choose the emotion from happy or sad.
^^Please press space bar to commence the task.
^^Please pay careful attention as to which key to press for which emotion, as they may have changed.
^^REMEMBER: Press the 'A' key if the face is HAPPY, and press the 'G' key if the face is SAD.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

Happy v Angry

<page happyvangry>
^^This block will ask you to choose the emotion from happy or angry.
^^Please press space bar to commence the task.
^^Please pay careful attention as to which key to press for which emotion, as they may have changed.
^^REMEMBER: Press the 'A' key if the face is HAPPY, and press the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

Sad v Angry

<page sadvangry>
^^This block will ask you to choose the emtoion from sad or angry.
^^Please press space bar to commence the task.
^^Please pay careful attention as to which key to press for which emotion, as they may have changed.
^^REMEMBER: Press the 'G' key if the face is SAD, and press the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

*************************************************
Creating Trials
*************************************************

<trial AMAF>
/ stimulustimes = [0=fix; 500=AMAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial ALAF>
/ stimulustimes = [0=fix; 500=ALAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial HMAF>
/ stimulustimes = [0=fix; 500=HMAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("a")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial HLAF>
/ stimulustimes = [0=fix; 500=HLAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("a")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial SMAF>
/ stimulustimes = [0=fix; 500=SMAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("g")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial SLAF>
/ stimulustimes = [0=fix; 500=SLAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("g")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial AMAM> 
/ stimulustimes = [0=fix; 500=AMAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial ALAM>
/ stimulustimes = [0=fix; 500=ALAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial HMAM>
/ stimulustimes = [0=fix; 500=HMAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("a")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial HLAM>
/ stimulustimes = [0=fix; 500=HLAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("a")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial SMAM>
/ stimulustimes = [0=fix; 500=SMAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("g")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial SLAM>
/ stimulustimes = [0=fix; 500=SLAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("g")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

*************************************************
Creating Blocks
*************************************************

<block attr_practice>
/ trials = [1-8 = noreplace(AMAF, ALAF, HMAF, HLAF, AMAM, ALAM, HMAM, HLAM)]
/ preinstructions = (practice)
/ postinstructions = (main)
/ bgstim = (happyreminder, angryreminder)
/ errormessage = (error, 1000)
/ blockfeedback = (latency, correct)
</block>

<block attr_exp>
/ trials = [1-8 = noreplace(AMAF, ALAF, HMAF, HLAF, AMAM, ALAM, HMAM, HLAM)]
/ bgstim = (happyreminder, angryreminder)
</block>

block practice?

<block pre_happy_v_sad>
/ trials = [1-8 = noreplacenorepeat(HLAF, HMAF, HLAM, HMAM, SLAF, SMAF, SLAM, SMAM)]
/ preinstructions = (happyvsad)
/ bgstim = (happyreminder, sadreminder_righthandside)
</block>

<block pre_happy_v_angry>
/ trials = [1-8 = noreplacenorepeat(HLAF, HMAF, HLAM, HMAM, ALAF, AMAF, ALAM, AMAM)]
/ preinstructions = (happyvangry)
/ bgstim = (happyreminder, angryreminder)
</block>

<block pre_sad_v_angry>
/ trials = [1-8 = noreplacenorepeat(SLAF, SMAF, SLAM, SMAM, ALAF, AMAF, ALAM, AMAM)]
/ preinstructions = (sadvangry)
/ bgstim = (sadreminder_lefthandside, angryreminder)
</block>

<block adapt_happy_v_sad>
/ trials = [1-20 = noreplacenorepeat(HLAF, HLAM, SLAF, SLAM)]
/ preinstructions = (happyvsad)
/ bgstim = (happyreminder, sadreminder_righthandside)
</block>

<block adapt_happy_v_angry>
/ trials = [1-20 = noreplacenorepeat(HLAF, HLAM, ALAF, ALAM)]
/ preinstructions = (happyvangry)
/ bgstim = (happyreminder, angryreminder)
</block>

<block adapt_sad_v_angry>
/ trials = [1-20 = noreplacenorepeat(SLAF, SLAM, ALAF, ALAM)]
/ preinstructions = (sadvangry)
/ bgstim = (sadreminder_lefthandside, angryreminder)
</block>

<block post_happy_v_sad>
/ trials = [1-8 = noreplacenorepeat(HLAF, HMAF, HLAM, HMAM, SLAF, SMAF, SLAM, SMAM)]
/ preinstructions = (happyvsad)
/ bgstim = (happyreminder, sadreminder_righthandside)
</block>

<block post_happy_v_angry>
/ trials = [1-8 = noreplacenorepeat(HLAF, HMAF, HLAM, HMAM, ALAF, AMAF, ALAM, AMAM)]
/ preinstructions = (happyvangry)
/ bgstim = (happyreminder, angryreminder)
</block>

<block post_sad_v_angry>
/ trials = [1-8 = noreplacenorepeat(SLAF, SMAF, SLAM, SMAM, ALAF, AMAF, ALAM, AMAM)]
/ preinstructions = (sadvangry)
/ bgstim = (sadreminder_lefthandside, angryreminder)
</block>


Update instructions at the very beginning of the experiment
How do I present each and every stimuli only once throughout the entire experiment?

*************************************************
Creating an Expt
*************************************************
<expt emotion_attractiveness>
/ preinstructions = (intro)
/ postinstructions = (end)
/ blocks = [1=attr_practice;
            2=pre_happy_v_sad;
            3=pre_happy_v_angry;
            4=pre_sad_v_angry;
            5=adapt_happy_v_sad;
            6=adapt_happy_v_angry;
            7=adapt_sad_v_angry;
            8=post_happy_v_sad;
            9=post_happy_v_angry;
            10=post_sad_v_angry]
</expt>

<defaults>
/ screencolor = (0, 0, 0)
/ txcolor = (255, 255, 255)
/ fontstyle = ("Courier New", 14pt)
</defaults>

Ah! I see that you mean. I've added in the likert which like you said is like a separate trial. It's working but it presents a different image. I want the emotion choice and the likert rating to be on the same image. How do I fix this? Thanks again.

***********************************************
INTRODUCTION

TITLE: Perception of emotion and attractiveness

Accurate face perception is a crucial skill involving processing of variant and invariant characteristics.
This research will firstly explore the variant characteristic of emotion expression on face perception.
Secondly this research will explore the invariant characteristic of attractiveness on face perception.
This study will present numerous faces and ask participants to firstly select the emotion from options of happy, angry, sad, and secondly rate the attractieveness of the faces using a Likert scale from 1 (very unattractive) to 10 (very attractive).
Taking part in this study is voluntary.
***********************************************

<item AMAF>
/1 = "AMAF1.jpg"
/2 = "AMAF2.jpg"
/3 = "AMAF3.jpg"
/4 = "AMAF4.jpg"
</item>

<item ALAF>
/1 = "ALAF1.jpg"
/2 = "ALAF2.jpg"
/3 = "ALAF3.jpg"
/4 = "ALAF4.jpg"
/5 = "ALAF5.jpg"
/6 = "ALAF6.jpg"
/7 = "ALAF7.jpg"
/8 = "ALAF8.jpg"
/9 = "ALAF9.jpg"
/10 = "ALAF10.jpg"
/11 = "ALAF11.jpg"
/12 = "ALAF12.jpg"
/13 = "ALAF13.jpg"
/14 = "ALAF14.jpg"
</item>

<item HMAF>
/1 = "HMAF1.jpg"
/2 = "HMAF2.jpg"
/3 = "HMAF3.jpg"
/4 = "HMAF4.jpg"
</item>

<item HLAF>
/1 = "HLAF1.jpg"
/2 = "HLAF2.jpg"
/3 = "HLAF3.jpg"
/4 = "HLAF4.jpg"
/5 = "HLAF5.jpg"
/6 = "HLAF6.jpg"
/7 = "HLAF7.jpg"
/8 = "HLAF8.jpg"
/9 = "HLAF9.jpg"
/10 = "HLAF10.jpg"
/11 = "HLAF11.jpg"
/12 = "HLAF12.jpg"
/13 = "HLAF13.jpg"
/14 = "HLAF14.jpg"
</item>

<item SMAF>
/1 = "SMAF1.jpg"
/2 = "SMAF2.jpg"
/3 = "SMAF3.jpg"
/4 = "SMAF4.jpg"
</item>

<item SLAF>
/1 = "SLAF1.jpg"
/2 = "SLAF1.jpg"
/3 = "SLAF1.jpg"
/4 = "SLAF1.jpg"
/5 = "SLAF1.jpg"
/6 = "SLAF1.jpg"
/7 = "SLAF1.jpg"
/8 = "SLAF1.jpg"
/9 = "SLAF1.jpg"
/10 = "SLAF1.jpg"
/11 = "SLAF1.jpg"
/12 = "SLAF1.jpg"
/13 = "SLAF1.jpg"
/14 = "SLAF1.jpg"
</item>

<item AMAM>
/1 = "AMAM1.jpg"
/2 = "AMAM2.jpg"
/3 = "AMAM3.jpg"
/4 = "AMAM4.jpg"
</item>

<item ALAM>
/1 = "ALAM1.jpg"
/2 = "ALAM2.jpg"
/3 = "ALAM3.jpg"
/4 = "ALAM4.jpg"
/5 = "ALAM5.jpg"
/6 = "ALAM6.jpg"
/7 = "ALAM7.jpg"
/8 = "ALAM8.jpg"
/9 = "ALAM9.jpg"
/10 = "ALAM10.jpg"
/11 = "ALAM11.jpg"
/12 = "ALAM12.jpg"
/13 = "ALAM13.jpg"
/14 = "ALAM14.jpg"
</item>

<item HMAM>
/1 = "HMAM1.jpg"
/2 = "HMAM2.jpg"
/3 = "HMAM3.jpg"
/4 = "HMAM4.jpg"
</item>

<item HLAM>
/1 = "HLAM1.jpg"
/2 = "HLAM2.jpg"
/3 = "HLAM3.jpg"
/4 = "HLAM4.jpg"
/5 = "HLAM5.jpg"
/6 = "HLAM6.jpg"
/7 = "HLAM7.jpg"
/8 = "HLAM8.jpg"
/9 = "HLAM9.jpg"
/10 = "HLAM10.jpg"
/11 = "HLAM11.jpg"
/12 = "HLAM12.jpg"
/13 = "HLAM13.jpg"
/14 = "HLAM14.jpg"
</item>

<item SMAM>
/1 = "SMAM1.jpg"
/2 = "SMAM2.jpg"
/3 = "SMAM3.jpg"
/4 = "SMAM4.jpg"
</item>

<item SLAM>
/1 = "SLAM1.jpg"
/2 = "SLAM2.jpg"
/3 = "SLAM3.jpg"
/4 = "SLAM4.jpg"
/5 = "SLAM5.jpg"
/6 = "SLAM6.jpg"
/7 = "SLAM7.jpg"
/8 = "SLAM8.jpg"
/9 = "SLAM9.jpg"
/10 = "SLAM10.jpg"
/11 = "SLAM11.jpg"
/12 = "SLAM12.jpg"
/13 = "SLAM13.jpg"
/14 = "SLAM14.jpg"
</item>

<text error>
/ items = ("ERROR")
/ position = (50, 95)
/ valign = bottom
/ fontstyle = ("Arial", 5%)
/ txcolor = (255, 0, 0)
/ txbgcolor = (0, 0, 0)
</text>

<text fix>
/ items = ("+")
/ position = (50, 50)
/ fontstyle = ("Arial", 8%)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
</text>

<picture AMAF>
/ items = AMAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture ALAF>
/ items = ALAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture HMAF>
/ items = HMAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture HLAF>
/ items = HLAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture SMAF>
/ items = SMAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture SLAF>
/ items = SLAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture AMAM>
/ items = AMAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture ALAM>
/ items = ALAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture HMAM>
/ items = HMAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture HLAM>
/ items = HLAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture SMAM>
/ items = SMAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture SLAM>
/ items = SLAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<text happyreminder>
/ items = ("Press 'A' for happy")
/ position = (15, 75)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
/ fontstyle = ("Courier New", 2.5%)
</text>

<text angryreminder>
/ items = ("Press 'L' for angry")
/ position = (85, 75)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
/ fontstyle = ("Courier New", 2.5%)
</text>

<text sadreminder_lefthandside>
/ items = ("Press 'G' for sad")
/ position = (15, 75)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
/ fontstyle = ("Courier New", 2.5%)
</text>

<text sadreminder_righthandside>
/ items = ("Press 'G' for sad")
/ position = (85, 75)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
/ fontstyle = ("Courier New", 2.5%)
</text>

<likert rate_AMAF>
/ stimulustimes = [0=clearscreen, ratingquestion, AMAF]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<likert rate_ALAF>
/ stimulustimes = [0=clearscreen, ratingquestion, ALAF]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<likert rate_HMAF>
/ stimulustimes = [0=clearscreen, ratingquestion, HMAF]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<likert rate_HLAF>
/ stimulustimes = [0=clearscreen, ratingquestion, HLAF]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<likert rate_SMAF>
/ stimulustimes = [0=clearscreen, ratingquestion, SMAF]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<likert rate_SLAF>
/ stimulustimes = [0=clearscreen, ratingquestion, SLAF]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<likert rate_AMAM>
/ stimulustimes = [0=clearscreen, ratingquestion, AMAM]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<likert rate_ALAM>
/ stimulustimes = [0=clearscreen, ratingquestion, ALAM]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<likert rate_HMAM>
/ stimulustimes = [0=clearscreen, ratingquestion, HMAM]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<likert rate_HLAM>
/ stimulustimes = [0=clearscreen, ratingquestion, HLAM]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<likert rate_SMAM>
/ stimulustimes = [0=clearscreen, ratingquestion, SMAM]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<likert rate_SLAM>
/ stimulustimes = [0=clearscreen, ratingquestion, SLAM]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<text ratingquestion>
/ items = ("On a scale of 1-9, how attractive is this face?")
/ position = (50%, 10%)
</text>

*************************************************
Creating Instructions
*************************************************
<page intro>
^^Perception of emotion and attractiveness
^^In this experiment you will be asked to select the emotion you see on a series of faces, and rate the attractiveness of those faces.
^^It is important that you pay attention, and select the emotion you see, as quickly as possible, as the study is looking at accuracy and response time of emotion recognition.
^^You will see faces presented one at a time.
^^Your job is to categorize the expression on the face as either HAPPY, SAD, or ANGRY. Then rate the attractiveness of that face.
^^Press the 'A' key if the face is HAPPY, the 'G' key if the face is SAD, and the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
^^Please press space bar to commence the practice task.
</page>

<page practice>
^^This is the practice task.
^^Please press space bar to commence the task.
^^REMEMBER: Press the 'A' key if the face is HAPPY, and press the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

<page main>
^^This is the main task.
^^Please press space bar to commence the task.
^^REMEMBER: Press the 'A' key if the face is HAPPY, and press the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

<page end>
^^This is the end of the response time tasks.
^^Please press space bar to continue.
</page>

Happy v Sad

<page happyvsad>
^^This block will ask you to choose the emotion from happy or sad.
^^Please press space bar to commence the task.
^^Please pay careful attention as to which key to press for which emotion, as they may have changed.
^^REMEMBER: Press the 'A' key if the face is HAPPY, and press the 'G' key if the face is SAD.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

Happy v Angry

<page happyvangry>
^^This block will ask you to choose the emotion from happy or angry.
^^Please press space bar to commence the task.
^^Please pay careful attention as to which key to press for which emotion, as they may have changed.
^^REMEMBER: Press the 'A' key if the face is HAPPY, and press the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

Sad v Angry

<page sadvangry>
^^This block will ask you to choose the emtoion from sad or angry.
^^Please press space bar to commence the task.
^^Please pay careful attention as to which key to press for which emotion, as they may have changed.
^^REMEMBER: Press the 'G' key if the face is SAD, and press the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

*************************************************
Creating Trials
*************************************************

<trial AMAF>
/ stimulustimes = [0=fix; 500=AMAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_AMAF;
]
</trial>

<trial ALAF>
/ stimulustimes = [0=fix; 500=ALAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_ALAF;
]
</trial>

<trial HMAF>
/ stimulustimes = [0=fix; 500=HMAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("a")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_HMAF;
]
</trial>

<trial HLAF>
/ stimulustimes = [0=fix; 500=HLAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("a")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_HLAF;
]
</trial>

<trial SMAF>
/ stimulustimes = [0=fix; 500=SMAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("g")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_SMAF;
]
</trial>

<trial SLAF>
/ stimulustimes = [0=fix; 500=SLAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("g")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_SLAF;
]
</trial>

<trial AMAM> 
/ stimulustimes = [0=fix; 500=AMAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_AMAM;
]
</trial>

<trial ALAM>
/ stimulustimes = [0=fix; 500=ALAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_ALAM;
]
</trial>

<trial HMAM>
/ stimulustimes = [0=fix; 500=HMAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("a")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_HMAM;
]
</trial>

<trial HLAM>
/ stimulustimes = [0=fix; 500=HLAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("a")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_HLAM;
]
</trial>

<trial SMAM>
/ stimulustimes = [0=fix; 500=SMAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("g")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_SMAM;
]
</trial>

<trial SLAM>
/ stimulustimes = [0=fix; 500=SLAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("g")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_SLAM;
]
</trial>

*************************************************
Creating Blocks
*************************************************

<block attr_practice>
/ trials = [1-8 = noreplace(AMAF, ALAF, HMAF, HLAF, AMAM, ALAM, HMAM, HLAM)]
/ preinstructions = (practice)
/ postinstructions = (main)
/ bgstim = (happyreminder, angryreminder)
/ errormessage = (error, 1000)
/ blockfeedback = (latency, correct)
</block>

<block attr_exp>
/ trials = [1-8 = noreplace(AMAF, ALAF, HMAF, HLAF, AMAM, ALAM, HMAM, HLAM)]
/ bgstim = (happyreminder, angryreminder)
</block>

block practice?

<block pre_happy_v_sad>
/ trials = [1-8 = noreplacenorepeat(HLAF, HMAF, HLAM, HMAM, SLAF, SMAF, SLAM, SMAM)]
/ preinstructions = (happyvsad)
/ bgstim = (happyreminder, sadreminder_righthandside)
</block>

<block pre_happy_v_angry>
/ trials = [1-8 = noreplacenorepeat(HLAF, HMAF, HLAM, HMAM, ALAF, AMAF, ALAM, AMAM)]
/ preinstructions = (happyvangry)
/ bgstim = (happyreminder, angryreminder)
</block>

<block pre_sad_v_angry>
/ trials = [1-8 = noreplacenorepeat(SLAF, SMAF, SLAM, SMAM, ALAF, AMAF, ALAM, AMAM)]
/ preinstructions = (sadvangry)
/ bgstim = (sadreminder_lefthandside, angryreminder)
</block>

<block adapt_happy_v_sad>
/ trials = [1-20 = noreplacenorepeat(HLAF, HLAM, SLAF, SLAM)]
/ preinstructions = (happyvsad)
/ bgstim = (happyreminder, sadreminder_righthandside)
</block>

<block adapt_happy_v_angry>
/ trials = [1-20 = noreplacenorepeat(HLAF, HLAM, ALAF, ALAM)]
/ preinstructions = (happyvangry)
/ bgstim = (happyreminder, angryreminder)
</block>

<block adapt_sad_v_angry>
/ trials = [1-20 = noreplacenorepeat(SLAF, SLAM, ALAF, ALAM)]
/ preinstructions = (sadvangry)
/ bgstim = (sadreminder_lefthandside, angryreminder)
</block>

<block post_happy_v_sad>
/ trials = [1-8 = noreplacenorepeat(HLAF, HMAF, HLAM, HMAM, SLAF, SMAF, SLAM, SMAM)]
/ preinstructions = (happyvsad)
/ bgstim = (happyreminder, sadreminder_righthandside)
</block>

<block post_happy_v_angry>
/ trials = [1-8 = noreplacenorepeat(HLAF, HMAF, HLAM, HMAM, ALAF, AMAF, ALAM, AMAM)]
/ preinstructions = (happyvangry)
/ bgstim = (happyreminder, angryreminder)
</block>

<block post_sad_v_angry>
/ trials = [1-8 = noreplacenorepeat(SLAF, SMAF, SLAM, SMAM, ALAF, AMAF, ALAM, AMAM)]
/ preinstructions = (sadvangry)
/ bgstim = (sadreminder_lefthandside, angryreminder)
</block>


Update instructions at the very beginning of the experiment
How do I present each and every stimuli only once throughout the entire experiment?

*************************************************
Creating an Expt
*************************************************
<expt emotion_attractiveness>
/ preinstructions = (intro)
/ postinstructions = (end)
/ blocks = [1=attr_practice;
            2=pre_happy_v_sad;
            3=pre_happy_v_angry;
            4=pre_sad_v_angry;
            5=adapt_happy_v_sad;
            6=adapt_happy_v_angry;
            7=adapt_sad_v_angry;
            8=post_happy_v_sad;
            9=post_happy_v_angry;
            10=post_sad_v_angry]
</expt>

<defaults>
/ screencolor = (0, 0, 0)
/ txcolor = (255, 255, 255)
/ fontstyle = ("Courier New", 14pt)
</defaults>

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: 12K, Visits: 98K
USYDPSYCH - 8/2/2021
USYDPSYCH - 8/2/2021
Dave - 7/28/2021
USYDPSYCH - 7/28/2021
Dave - 6/8/2021
USYDPSYCH - 6/8/2021
I am wanting to do a study where participants are presented with a fixation cross for 500ms, then a face for 3000ms where they firstly have to (1) identify the expression from for example happy or sad by pressing E or I, then they have to  (2) rate the attractiveness of the face using a 10 point Likert scale. This is followed by an intertrial interval of 1000ms.

Is there an existing script available for something similar?

I have looked at using an IAT script and altering it but I'm  having to re-write most of the script.

You're not going to find an existing script that exactly matches what you want. The procedure you describe, however, you can just create from scratch fairly easily.

<values>
/ itemnumber = 1
</values>

<block example>
/ trials = [1-10 = noreplace(show_happy, show_sad)]
</block>

<trial show_happy>
/ ontrialbegin = [
    values.itemnumber = list.happyitems.nextindex;
]
/ stimulustimes = [0=clearscreen, fixation; 500=clearscreen, happyface; 3500=e_reminder, i_reminder;]
/ validresponse = ("E", "I")
/ correctresponse = ("E")
/ branch = [
    likert.rate_happy;
]
</trial>

<likert rate_happy>
/ stimulustimes = [0=clearscreen, ratingquestion, happyface]
/ inputdevice = mouse
/ numpoints = 5
/ anchors = [1="unattractive"; 5="attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<trial show_sad>
/ ontrialbegin = [
    values.itemnumber = list.saditems.nextindex;
]
/ stimulustimes = [0=clearscreen, fixation; 500=clearscreen, sadface; 3500=e_reminder, i_reminder;]
/ validresponse = ("E", "I")
/ correctresponse = ("I")
/ branch = [
    likert.rate_sad;
]
</trial>

<likert rate_sad>
/ stimulustimes = [0=clearscreen, ratingquestion, sadface]
/ inputdevice = mouse
/ numpoints = 5
/ anchors = [1="unattractive"; 5="attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<picture happyface>
/ items = happyfaces
/ erase = false
/ select = values.itemnumber
/ size = (40%, 50%)
</picture>

// 5 happy items in this example
<list happyitems>
/ poolsize = 5
</list>

<picture sadface>
/ items = sadfaces
/ erase = false
/ select = values.itemnumber
/ size = (40%, 50%)
</picture>

// 5 sad items in this example
<list saditems>
/ poolsize = 5
</list>

<item happyfaces>
/ 1 = "happy01.jpg"
/ 2 = "happy02.jpg"
/ 3 = "happy03.jpg"
/ 4 = "happy04.jpg"
/ 5 = "happy05.jpg"
</item>

<item sadfaces>
/ 1 = "sad01.jpg"
/ 2 = "sad02.jpg"
/ 3 = "sad03.jpg"
/ 4 = "sad04.jpg"
/ 5 = "sad05.jpg"
</item>

<text fixation>
/ items = ("+")
/ erase = false
</text>

<text e_reminder>
/ items = ("E = Happy")
/ position = (20%, 10%)
</text>

<text i_reminder>
/ items = ("I = Sad")
/ position = (80%, 10%)
</text>

<text ratingquestion>
/ items = ("How attractive?")
/ position = (50%, 10%)
</text>

I have changed my script around quite a bit, but now I can't get the Likert to present properly. I want the attractiveness question to display at the end of each trial with a Likert scale able to be selected by pressing a number on keyboard. Here is my script which isn't working:

<likert rate_attractiveness>
/ stimulustimes = [0=clearscreen; 3500=ratingquestion]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>



<text ratingquestion>
/ items = ("On a scale of 1-9, how attractive is this face?")
/ position = (50%, 10%)
</text>



<trial AMAF>
/ stimulustimes = [0=fix; 500=AMAF; 3500=text.ratingquestion; 3500=likert.rate_attractiveness]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ branch = [
    likert.rate_attractiveness
]
/ posttrialpause = (1000)
</trial>

<trial AMAF>
/ stimulustimes = [0=fix; 500=AMAF; 3500=text.ratingquestion; 3500=likert.rate_attractiveness]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ branch = [
  likert.rate_attractiveness
]
/ posttrialpause = (1000)
</trial>

A <likert> is not a stimulus. You cannot present it as a stimulus in a <trial>. A <likert> is *itsefl* a special kind of <trial>.

Sorry I'm not getting how to add in Likert. I've read through the other suggested code, and the help/module but I'm still not clear. How would I add in a Likert at the end of each presentation of stimuli into the following script? Many thanks in advance

***********************************************
INTRODUCTION

TITLE: Perception of emotion and attractiveness

Accurate face perception is a crucial skill involving processing of variant and invariant characteristics.
This research will firstly explore the variant characteristic of emotion expression on face perception.
Secondly this research will explore the invariant characteristic of attractiveness on face perception.
This study will present numerous faces and ask participants to firstly select the emotion from options of happy, angry, sad, and secondly rate the attractieveness of the faces using a Likert scale from 1 (very unattractive) to 10 (very attractive).
Taking part in this study is voluntary.
***********************************************

<item AMAF>
/1 = "AMAF1.jpg"
/2 = "AMAF2.jpg"
/3 = "AMAF3.jpg"
/4 = "AMAF4.jpg"
</item>

<item ALAF>
/1 = "ALAF1.jpg"
/2 = "ALAF2.jpg"
/3 = "ALAF3.jpg"
/4 = "ALAF4.jpg"
/5 = "ALAF5.jpg"
/6 = "ALAF6.jpg"
/7 = "ALAF7.jpg"
/8 = "ALAF8.jpg"
/9 = "ALAF9.jpg"
/10 = "ALAF10.jpg"
/11 = "ALAF11.jpg"
/12 = "ALAF12.jpg"
/13 = "ALAF13.jpg"
/14 = "ALAF14.jpg"
</item>

<item HMAF>
/1 = "HMAF1.jpg"
/2 = "HMAF2.jpg"
/3 = "HMAF3.jpg"
/4 = "HMAF4.jpg"
</item>

<item HLAF>
/1 = "HLAF1.jpg"
/2 = "HLAF2.jpg"
/3 = "HLAF3.jpg"
/4 = "HLAF4.jpg"
/5 = "HLAF5.jpg"
/6 = "HLAF6.jpg"
/7 = "HLAF7.jpg"
/8 = "HLAF8.jpg"
/9 = "HLAF9.jpg"
/10 = "HLAF10.jpg"
/11 = "HLAF11.jpg"
/12 = "HLAF12.jpg"
/13 = "HLAF13.jpg"
/14 = "HLAF14.jpg"
</item>

<item SMAF>
/1 = "SMAF1.jpg"
/2 = "SMAF2.jpg"
/3 = "SMAF3.jpg"
/4 = "SMAF4.jpg"
</item>

<item SLAF>
/1 = "SLAF1.jpg"
/2 = "SLAF1.jpg"
/3 = "SLAF1.jpg"
/4 = "SLAF1.jpg"
/5 = "SLAF1.jpg"
/6 = "SLAF1.jpg"
/7 = "SLAF1.jpg"
/8 = "SLAF1.jpg"
/9 = "SLAF1.jpg"
/10 = "SLAF1.jpg"
/11 = "SLAF1.jpg"
/12 = "SLAF1.jpg"
/13 = "SLAF1.jpg"
/14 = "SLAF1.jpg"
</item>

<item AMAM>
/1 = "AMAM1.jpg"
/2 = "AMAM2.jpg"
/3 = "AMAM3.jpg"
/4 = "AMAM4.jpg"
</item>

<item ALAM>
/1 = "ALAM1.jpg"
/2 = "ALAM2.jpg"
/3 = "ALAM3.jpg"
/4 = "ALAM4.jpg"
/5 = "ALAM5.jpg"
/6 = "ALAM6.jpg"
/7 = "ALAM7.jpg"
/8 = "ALAM8.jpg"
/9 = "ALAM9.jpg"
/10 = "ALAM10.jpg"
/11 = "ALAM11.jpg"
/12 = "ALAM12.jpg"
/13 = "ALAM13.jpg"
/14 = "ALAM14.jpg"
</item>

<item HMAM>
/1 = "HMAM1.jpg"
/2 = "HMAM2.jpg"
/3 = "HMAM3.jpg"
/4 = "HMAM4.jpg"
</item>

<item HLAM>
/1 = "HLAM1.jpg"
/2 = "HLAM2.jpg"
/3 = "HLAM3.jpg"
/4 = "HLAM4.jpg"
/5 = "HLAM5.jpg"
/6 = "HLAM6.jpg"
/7 = "HLAM7.jpg"
/8 = "HLAM8.jpg"
/9 = "HLAM9.jpg"
/10 = "HLAM10.jpg"
/11 = "HLAM11.jpg"
/12 = "HLAM12.jpg"
/13 = "HLAM13.jpg"
/14 = "HLAM14.jpg"
</item>

<item SMAM>
/1 = "SMAM1.jpg"
/2 = "SMAM2.jpg"
/3 = "SMAM3.jpg"
/4 = "SMAM4.jpg"
</item>

<item SLAM>
/1 = "SLAM1.jpg"
/2 = "SLAM2.jpg"
/3 = "SLAM3.jpg"
/4 = "SLAM4.jpg"
/5 = "SLAM5.jpg"
/6 = "SLAM6.jpg"
/7 = "SLAM7.jpg"
/8 = "SLAM8.jpg"
/9 = "SLAM9.jpg"
/10 = "SLAM10.jpg"
/11 = "SLAM11.jpg"
/12 = "SLAM12.jpg"
/13 = "SLAM13.jpg"
/14 = "SLAM14.jpg"
</item>

<text error>
/ items = ("ERROR")
/ position = (50, 95)
/ valign = bottom
/ fontstyle = ("Arial", 5%)
/ txcolor = (255, 0, 0)
/ txbgcolor = (0, 0, 0)
</text>

<text fix>
/ items = ("+")
/ position = (50, 50)
/ fontstyle = ("Arial", 8%)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
</text>

<picture AMAF>
/ items = AMAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture ALAF>
/ items = ALAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture HMAF>
/ items = HMAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture HLAF>
/ items = HLAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture SMAF>
/ items = SMAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture SLAF>
/ items = SLAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture AMAM>
/ items = AMAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture ALAM>
/ items = ALAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture HMAM>
/ items = HMAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture HLAM>
/ items = HLAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture SMAM>
/ items = SMAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture SLAM>
/ items = SLAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<text happyreminder>
/ items = ("Press 'A' for happy")
/ position = (15, 75)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
/ fontstyle = ("Courier New", 2.5%)
</text>

<text angryreminder>
/ items = ("Press 'L' for angry")
/ position = (85, 75)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
/ fontstyle = ("Courier New", 2.5%)
</text>

<text sadreminder_lefthandside>
/ items = ("Press 'G' for sad")
/ position = (15, 75)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
/ fontstyle = ("Courier New", 2.5%)
</text>

<text sadreminder_righthandside>
/ items = ("Press 'G' for sad")
/ position = (85, 75)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
/ fontstyle = ("Courier New", 2.5%)
</text>

<text likertattractivenessratingquestion>
/items = ("On a scale of 1-9, how attractive is this face?")
/ position = (50, 10)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
/ fontstyle = ("Courier New", 2.5%)
</text>

<likert attractivenessratingquestion>
/ stimulustimes = [0=likertattractivenessratingquestion]
/ inputdevice = keyboard
/ numpoints = 9
/ anchors=[1="very unattractive"; 2="unattractive"; 3="fairly unattractive"; 4="somewhat unattractive"; 5="neutral"; 6="somewhat attractive"; 7="fairly attractive"; 8="attractive"; 9="very attractive"]
/ position=(50, 90)
</likert>

<likert rate_attractiveness>
/ stimulustimes = [0=clearscreen; 3500=ratingquestion]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<text ratingquestion>
/ items = ("On a scale of 1-9, how attractive is this face?")
/ position = (50%, 10%)
</text>

*************************************************
Creating Instructions
*************************************************
<page intro>
^^Perception of emotion and attractiveness
^^In this experiment you will be asked to select the emotion you see on a series of faces, and rate the attractiveness of those faces.
^^It is important that you pay attention, and select the emotion you see, as quickly as possible, as the study is looking at accuracy and response time of emotion recognition.
^^You will see faces presented one at a time.
^^Your job is to categorize the expression on the face as either HAPPY, SAD, or ANGRY. Then rate the attractiveness of that face.
^^Press the 'A' key if the face is HAPPY, the 'G' key if the face is SAD, and the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
^^Please press space bar to commence the practice task.
</page>

<page practice>
^^This is the practice task.
^^Please press space bar to commence the task.
^^REMEMBER: Press the 'A' key if the face is HAPPY, and press the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

<page main>
^^This is the main task.
^^Please press space bar to commence the task.
^^REMEMBER: Press the 'A' key if the face is HAPPY, and press the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

<page end>
^^This is the end of the response time tasks.
^^Please press space bar to continue.
</page>

Happy v Sad

<page happyvsad>
^^This block will ask you to choose the emotion from happy or sad.
^^Please press space bar to commence the task.
^^Please pay careful attention as to which key to press for which emotion, as they may have changed.
^^REMEMBER: Press the 'A' key if the face is HAPPY, and press the 'G' key if the face is SAD.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

Happy v Angry

<page happyvangry>
^^This block will ask you to choose the emotion from happy or angry.
^^Please press space bar to commence the task.
^^Please pay careful attention as to which key to press for which emotion, as they may have changed.
^^REMEMBER: Press the 'A' key if the face is HAPPY, and press the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

Sad v Angry

<page sadvangry>
^^This block will ask you to choose the emtoion from sad or angry.
^^Please press space bar to commence the task.
^^Please pay careful attention as to which key to press for which emotion, as they may have changed.
^^REMEMBER: Press the 'G' key if the face is SAD, and press the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

*************************************************
Creating Trials
*************************************************

<trial AMAF>
/ stimulustimes = [0=fix; 500=AMAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial ALAF>
/ stimulustimes = [0=fix; 500=ALAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial HMAF>
/ stimulustimes = [0=fix; 500=HMAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("a")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial HLAF>
/ stimulustimes = [0=fix; 500=HLAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("a")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial SMAF>
/ stimulustimes = [0=fix; 500=SMAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("g")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial SLAF>
/ stimulustimes = [0=fix; 500=SLAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("g")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial AMAM> 
/ stimulustimes = [0=fix; 500=AMAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial ALAM>
/ stimulustimes = [0=fix; 500=ALAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial HMAM>
/ stimulustimes = [0=fix; 500=HMAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("a")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial HLAM>
/ stimulustimes = [0=fix; 500=HLAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("a")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial SMAM>
/ stimulustimes = [0=fix; 500=SMAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("g")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

<trial SLAM>
/ stimulustimes = [0=fix; 500=SLAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("g")
/ posttrialpause = (1000)
/ timeout = (3500)
</trial>

*************************************************
Creating Blocks
*************************************************

<block attr_practice>
/ trials = [1-8 = noreplace(AMAF, ALAF, HMAF, HLAF, AMAM, ALAM, HMAM, HLAM)]
/ preinstructions = (practice)
/ postinstructions = (main)
/ bgstim = (happyreminder, angryreminder)
/ errormessage = (error, 1000)
/ blockfeedback = (latency, correct)
</block>

<block attr_exp>
/ trials = [1-8 = noreplace(AMAF, ALAF, HMAF, HLAF, AMAM, ALAM, HMAM, HLAM)]
/ bgstim = (happyreminder, angryreminder)
</block>

block practice?

<block pre_happy_v_sad>
/ trials = [1-8 = noreplacenorepeat(HLAF, HMAF, HLAM, HMAM, SLAF, SMAF, SLAM, SMAM)]
/ preinstructions = (happyvsad)
/ bgstim = (happyreminder, sadreminder_righthandside)
</block>

<block pre_happy_v_angry>
/ trials = [1-8 = noreplacenorepeat(HLAF, HMAF, HLAM, HMAM, ALAF, AMAF, ALAM, AMAM)]
/ preinstructions = (happyvangry)
/ bgstim = (happyreminder, angryreminder)
</block>

<block pre_sad_v_angry>
/ trials = [1-8 = noreplacenorepeat(SLAF, SMAF, SLAM, SMAM, ALAF, AMAF, ALAM, AMAM)]
/ preinstructions = (sadvangry)
/ bgstim = (sadreminder_lefthandside, angryreminder)
</block>

<block adapt_happy_v_sad>
/ trials = [1-20 = noreplacenorepeat(HLAF, HLAM, SLAF, SLAM)]
/ preinstructions = (happyvsad)
/ bgstim = (happyreminder, sadreminder_righthandside)
</block>

<block adapt_happy_v_angry>
/ trials = [1-20 = noreplacenorepeat(HLAF, HLAM, ALAF, ALAM)]
/ preinstructions = (happyvangry)
/ bgstim = (happyreminder, angryreminder)
</block>

<block adapt_sad_v_angry>
/ trials = [1-20 = noreplacenorepeat(SLAF, SLAM, ALAF, ALAM)]
/ preinstructions = (sadvangry)
/ bgstim = (sadreminder_lefthandside, angryreminder)
</block>

<block post_happy_v_sad>
/ trials = [1-8 = noreplacenorepeat(HLAF, HMAF, HLAM, HMAM, SLAF, SMAF, SLAM, SMAM)]
/ preinstructions = (happyvsad)
/ bgstim = (happyreminder, sadreminder_righthandside)
</block>

<block post_happy_v_angry>
/ trials = [1-8 = noreplacenorepeat(HLAF, HMAF, HLAM, HMAM, ALAF, AMAF, ALAM, AMAM)]
/ preinstructions = (happyvangry)
/ bgstim = (happyreminder, angryreminder)
</block>

<block post_sad_v_angry>
/ trials = [1-8 = noreplacenorepeat(SLAF, SMAF, SLAM, SMAM, ALAF, AMAF, ALAM, AMAM)]
/ preinstructions = (sadvangry)
/ bgstim = (sadreminder_lefthandside, angryreminder)
</block>


Update instructions at the very beginning of the experiment
How do I present each and every stimuli only once throughout the entire experiment?

*************************************************
Creating an Expt
*************************************************
<expt emotion_attractiveness>
/ preinstructions = (intro)
/ postinstructions = (end)
/ blocks = [1=attr_practice;
            2=pre_happy_v_sad;
            3=pre_happy_v_angry;
            4=pre_sad_v_angry;
            5=adapt_happy_v_sad;
            6=adapt_happy_v_angry;
            7=adapt_sad_v_angry;
            8=post_happy_v_sad;
            9=post_happy_v_angry;
            10=post_sad_v_angry]
</expt>

<defaults>
/ screencolor = (0, 0, 0)
/ txcolor = (255, 255, 255)
/ fontstyle = ("Courier New", 14pt)
</defaults>

Ah! I see that you mean. I've added in the likert which like you said is like a separate trial. It's working but it presents a different image. I want the emotion choice and the likert rating to be on the same image. How do I fix this? Thanks again.

***********************************************
INTRODUCTION

TITLE: Perception of emotion and attractiveness

Accurate face perception is a crucial skill involving processing of variant and invariant characteristics.
This research will firstly explore the variant characteristic of emotion expression on face perception.
Secondly this research will explore the invariant characteristic of attractiveness on face perception.
This study will present numerous faces and ask participants to firstly select the emotion from options of happy, angry, sad, and secondly rate the attractieveness of the faces using a Likert scale from 1 (very unattractive) to 10 (very attractive).
Taking part in this study is voluntary.
***********************************************

<item AMAF>
/1 = "AMAF1.jpg"
/2 = "AMAF2.jpg"
/3 = "AMAF3.jpg"
/4 = "AMAF4.jpg"
</item>

<item ALAF>
/1 = "ALAF1.jpg"
/2 = "ALAF2.jpg"
/3 = "ALAF3.jpg"
/4 = "ALAF4.jpg"
/5 = "ALAF5.jpg"
/6 = "ALAF6.jpg"
/7 = "ALAF7.jpg"
/8 = "ALAF8.jpg"
/9 = "ALAF9.jpg"
/10 = "ALAF10.jpg"
/11 = "ALAF11.jpg"
/12 = "ALAF12.jpg"
/13 = "ALAF13.jpg"
/14 = "ALAF14.jpg"
</item>

<item HMAF>
/1 = "HMAF1.jpg"
/2 = "HMAF2.jpg"
/3 = "HMAF3.jpg"
/4 = "HMAF4.jpg"
</item>

<item HLAF>
/1 = "HLAF1.jpg"
/2 = "HLAF2.jpg"
/3 = "HLAF3.jpg"
/4 = "HLAF4.jpg"
/5 = "HLAF5.jpg"
/6 = "HLAF6.jpg"
/7 = "HLAF7.jpg"
/8 = "HLAF8.jpg"
/9 = "HLAF9.jpg"
/10 = "HLAF10.jpg"
/11 = "HLAF11.jpg"
/12 = "HLAF12.jpg"
/13 = "HLAF13.jpg"
/14 = "HLAF14.jpg"
</item>

<item SMAF>
/1 = "SMAF1.jpg"
/2 = "SMAF2.jpg"
/3 = "SMAF3.jpg"
/4 = "SMAF4.jpg"
</item>

<item SLAF>
/1 = "SLAF1.jpg"
/2 = "SLAF1.jpg"
/3 = "SLAF1.jpg"
/4 = "SLAF1.jpg"
/5 = "SLAF1.jpg"
/6 = "SLAF1.jpg"
/7 = "SLAF1.jpg"
/8 = "SLAF1.jpg"
/9 = "SLAF1.jpg"
/10 = "SLAF1.jpg"
/11 = "SLAF1.jpg"
/12 = "SLAF1.jpg"
/13 = "SLAF1.jpg"
/14 = "SLAF1.jpg"
</item>

<item AMAM>
/1 = "AMAM1.jpg"
/2 = "AMAM2.jpg"
/3 = "AMAM3.jpg"
/4 = "AMAM4.jpg"
</item>

<item ALAM>
/1 = "ALAM1.jpg"
/2 = "ALAM2.jpg"
/3 = "ALAM3.jpg"
/4 = "ALAM4.jpg"
/5 = "ALAM5.jpg"
/6 = "ALAM6.jpg"
/7 = "ALAM7.jpg"
/8 = "ALAM8.jpg"
/9 = "ALAM9.jpg"
/10 = "ALAM10.jpg"
/11 = "ALAM11.jpg"
/12 = "ALAM12.jpg"
/13 = "ALAM13.jpg"
/14 = "ALAM14.jpg"
</item>

<item HMAM>
/1 = "HMAM1.jpg"
/2 = "HMAM2.jpg"
/3 = "HMAM3.jpg"
/4 = "HMAM4.jpg"
</item>

<item HLAM>
/1 = "HLAM1.jpg"
/2 = "HLAM2.jpg"
/3 = "HLAM3.jpg"
/4 = "HLAM4.jpg"
/5 = "HLAM5.jpg"
/6 = "HLAM6.jpg"
/7 = "HLAM7.jpg"
/8 = "HLAM8.jpg"
/9 = "HLAM9.jpg"
/10 = "HLAM10.jpg"
/11 = "HLAM11.jpg"
/12 = "HLAM12.jpg"
/13 = "HLAM13.jpg"
/14 = "HLAM14.jpg"
</item>

<item SMAM>
/1 = "SMAM1.jpg"
/2 = "SMAM2.jpg"
/3 = "SMAM3.jpg"
/4 = "SMAM4.jpg"
</item>

<item SLAM>
/1 = "SLAM1.jpg"
/2 = "SLAM2.jpg"
/3 = "SLAM3.jpg"
/4 = "SLAM4.jpg"
/5 = "SLAM5.jpg"
/6 = "SLAM6.jpg"
/7 = "SLAM7.jpg"
/8 = "SLAM8.jpg"
/9 = "SLAM9.jpg"
/10 = "SLAM10.jpg"
/11 = "SLAM11.jpg"
/12 = "SLAM12.jpg"
/13 = "SLAM13.jpg"
/14 = "SLAM14.jpg"
</item>

<text error>
/ items = ("ERROR")
/ position = (50, 95)
/ valign = bottom
/ fontstyle = ("Arial", 5%)
/ txcolor = (255, 0, 0)
/ txbgcolor = (0, 0, 0)
</text>

<text fix>
/ items = ("+")
/ position = (50, 50)
/ fontstyle = ("Arial", 8%)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
</text>

<picture AMAF>
/ items = AMAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture ALAF>
/ items = ALAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture HMAF>
/ items = HMAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture HLAF>
/ items = HLAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture SMAF>
/ items = SMAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture SLAF>
/ items = SLAF
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture AMAM>
/ items = AMAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture ALAM>
/ items = ALAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture HMAM>
/ items = HMAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture HLAM>
/ items = HLAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture SMAM>
/ items = SMAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<picture SLAM>
/ items = SLAM
/ size = (55%, 55%)
/ position = (50, 50)
/ select = noreplacenorepeat
/ resetinterval = 1
</picture>

<text happyreminder>
/ items = ("Press 'A' for happy")
/ position = (15, 75)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
/ fontstyle = ("Courier New", 2.5%)
</text>

<text angryreminder>
/ items = ("Press 'L' for angry")
/ position = (85, 75)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
/ fontstyle = ("Courier New", 2.5%)
</text>

<text sadreminder_lefthandside>
/ items = ("Press 'G' for sad")
/ position = (15, 75)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
/ fontstyle = ("Courier New", 2.5%)
</text>

<text sadreminder_righthandside>
/ items = ("Press 'G' for sad")
/ position = (85, 75)
/ txcolor = (255, 255, 255)
/ txbgcolor = (0, 0, 0)
/ fontstyle = ("Courier New", 2.5%)
</text>

<likert rate_AMAF>
/ stimulustimes = [0=clearscreen, ratingquestion, AMAF]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<likert rate_ALAF>
/ stimulustimes = [0=clearscreen, ratingquestion, ALAF]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<likert rate_HMAF>
/ stimulustimes = [0=clearscreen, ratingquestion, HMAF]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<likert rate_HLAF>
/ stimulustimes = [0=clearscreen, ratingquestion, HLAF]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<likert rate_SMAF>
/ stimulustimes = [0=clearscreen, ratingquestion, SMAF]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<likert rate_SLAF>
/ stimulustimes = [0=clearscreen, ratingquestion, SLAF]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<likert rate_AMAM>
/ stimulustimes = [0=clearscreen, ratingquestion, AMAM]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<likert rate_ALAM>
/ stimulustimes = [0=clearscreen, ratingquestion, ALAM]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<likert rate_HMAM>
/ stimulustimes = [0=clearscreen, ratingquestion, HMAM]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<likert rate_HLAM>
/ stimulustimes = [0=clearscreen, ratingquestion, HLAM]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<likert rate_SMAM>
/ stimulustimes = [0=clearscreen, ratingquestion, SMAM]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<likert rate_SLAM>
/ stimulustimes = [0=clearscreen, ratingquestion, SLAM]
/ inputdevice = mouse
/ numpoints = 9
/ anchors = [1="very unattractive"; 9="very attractive"]
/ position = (50%, 85%)
/ responsemessage = (anyresponse, clearscreen, 1000)
</likert>

<text ratingquestion>
/ items = ("On a scale of 1-9, how attractive is this face?")
/ position = (50%, 10%)
</text>

*************************************************
Creating Instructions
*************************************************
<page intro>
^^Perception of emotion and attractiveness
^^In this experiment you will be asked to select the emotion you see on a series of faces, and rate the attractiveness of those faces.
^^It is important that you pay attention, and select the emotion you see, as quickly as possible, as the study is looking at accuracy and response time of emotion recognition.
^^You will see faces presented one at a time.
^^Your job is to categorize the expression on the face as either HAPPY, SAD, or ANGRY. Then rate the attractiveness of that face.
^^Press the 'A' key if the face is HAPPY, the 'G' key if the face is SAD, and the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
^^Please press space bar to commence the practice task.
</page>

<page practice>
^^This is the practice task.
^^Please press space bar to commence the task.
^^REMEMBER: Press the 'A' key if the face is HAPPY, and press the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

<page main>
^^This is the main task.
^^Please press space bar to commence the task.
^^REMEMBER: Press the 'A' key if the face is HAPPY, and press the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

<page end>
^^This is the end of the response time tasks.
^^Please press space bar to continue.
</page>

Happy v Sad

<page happyvsad>
^^This block will ask you to choose the emotion from happy or sad.
^^Please press space bar to commence the task.
^^Please pay careful attention as to which key to press for which emotion, as they may have changed.
^^REMEMBER: Press the 'A' key if the face is HAPPY, and press the 'G' key if the face is SAD.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

Happy v Angry

<page happyvangry>
^^This block will ask you to choose the emotion from happy or angry.
^^Please press space bar to commence the task.
^^Please pay careful attention as to which key to press for which emotion, as they may have changed.
^^REMEMBER: Press the 'A' key if the face is HAPPY, and press the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

Sad v Angry

<page sadvangry>
^^This block will ask you to choose the emtoion from sad or angry.
^^Please press space bar to commence the task.
^^Please pay careful attention as to which key to press for which emotion, as they may have changed.
^^REMEMBER: Press the 'G' key if the face is SAD, and press the 'L' key if the face is ANGRY.
^^Please respond as quickly as possible but also try to avoid making errors.
</page>

*************************************************
Creating Trials
*************************************************

<trial AMAF>
/ stimulustimes = [0=fix; 500=AMAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_AMAF;
]
</trial>

<trial ALAF>
/ stimulustimes = [0=fix; 500=ALAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_ALAF;
]
</trial>

<trial HMAF>
/ stimulustimes = [0=fix; 500=HMAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("a")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_HMAF;
]
</trial>

<trial HLAF>
/ stimulustimes = [0=fix; 500=HLAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("a")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_HLAF;
]
</trial>

<trial SMAF>
/ stimulustimes = [0=fix; 500=SMAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("g")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_SMAF;
]
</trial>

<trial SLAF>
/ stimulustimes = [0=fix; 500=SLAF]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("g")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_SLAF;
]
</trial>

<trial AMAM> 
/ stimulustimes = [0=fix; 500=AMAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_AMAM;
]
</trial>

<trial ALAM>
/ stimulustimes = [0=fix; 500=ALAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("l")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_ALAM;
]
</trial>

<trial HMAM>
/ stimulustimes = [0=fix; 500=HMAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("a")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_HMAM;
]
</trial>

<trial HLAM>
/ stimulustimes = [0=fix; 500=HLAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("a")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_HLAM;
]
</trial>

<trial SMAM>
/ stimulustimes = [0=fix; 500=SMAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("g")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_SMAM;
]
</trial>

<trial SLAM>
/ stimulustimes = [0=fix; 500=SLAM]
/ validresponse = ("a", "g", "l")
/ correctresponse = ("g")
/ posttrialpause = (1000)
/ timeout = (3500)
/ branch = [
  likert.rate_SLAM;
]
</trial>

*************************************************
Creating Blocks
*************************************************

<block attr_practice>
/ trials = [1-8 = noreplace(AMAF, ALAF, HMAF, HLAF, AMAM, ALAM, HMAM, HLAM)]
/ preinstructions = (practice)
/ postinstructions = (main)
/ bgstim = (happyreminder, angryreminder)
/ errormessage = (error, 1000)
/ blockfeedback = (latency, correct)
</block>

<block attr_exp>
/ trials = [1-8 = noreplace(AMAF, ALAF, HMAF, HLAF, AMAM, ALAM, HMAM, HLAM)]
/ bgstim = (happyreminder, angryreminder)
</block>

block practice?

<block pre_happy_v_sad>
/ trials = [1-8 = noreplacenorepeat(HLAF, HMAF, HLAM, HMAM, SLAF, SMAF, SLAM, SMAM)]
/ preinstructions = (happyvsad)
/ bgstim = (happyreminder, sadreminder_righthandside)
</block>

<block pre_happy_v_angry>
/ trials = [1-8 = noreplacenorepeat(HLAF, HMAF, HLAM, HMAM, ALAF, AMAF, ALAM, AMAM)]
/ preinstructions = (happyvangry)
/ bgstim = (happyreminder, angryreminder)
</block>

<block pre_sad_v_angry>
/ trials = [1-8 = noreplacenorepeat(SLAF, SMAF, SLAM, SMAM, ALAF, AMAF, ALAM, AMAM)]
/ preinstructions = (sadvangry)
/ bgstim = (sadreminder_lefthandside, angryreminder)
</block>

<block adapt_happy_v_sad>
/ trials = [1-20 = noreplacenorepeat(HLAF, HLAM, SLAF, SLAM)]
/ preinstructions = (happyvsad)
/ bgstim = (happyreminder, sadreminder_righthandside)
</block>

<block adapt_happy_v_angry>
/ trials = [1-20 = noreplacenorepeat(HLAF, HLAM, ALAF, ALAM)]
/ preinstructions = (happyvangry)
/ bgstim = (happyreminder, angryreminder)
</block>

<block adapt_sad_v_angry>
/ trials = [1-20 = noreplacenorepeat(SLAF, SLAM, ALAF, ALAM)]
/ preinstructions = (sadvangry)
/ bgstim = (sadreminder_lefthandside, angryreminder)
</block>

<block post_happy_v_sad>
/ trials = [1-8 = noreplacenorepeat(HLAF, HMAF, HLAM, HMAM, SLAF, SMAF, SLAM, SMAM)]
/ preinstructions = (happyvsad)
/ bgstim = (happyreminder, sadreminder_righthandside)
</block>

<block post_happy_v_angry>
/ trials = [1-8 = noreplacenorepeat(HLAF, HMAF, HLAM, HMAM, ALAF, AMAF, ALAM, AMAM)]
/ preinstructions = (happyvangry)
/ bgstim = (happyreminder, angryreminder)
</block>

<block post_sad_v_angry>
/ trials = [1-8 = noreplacenorepeat(SLAF, SMAF, SLAM, SMAM, ALAF, AMAF, ALAM, AMAM)]
/ preinstructions = (sadvangry)
/ bgstim = (sadreminder_lefthandside, angryreminder)
</block>


Update instructions at the very beginning of the experiment
How do I present each and every stimuli only once throughout the entire experiment?

*************************************************
Creating an Expt
*************************************************
<expt emotion_attractiveness>
/ preinstructions = (intro)
/ postinstructions = (end)
/ blocks = [1=attr_practice;
            2=pre_happy_v_sad;
            3=pre_happy_v_angry;
            4=pre_sad_v_angry;
            5=adapt_happy_v_sad;
            6=adapt_happy_v_angry;
            7=adapt_sad_v_angry;
            8=post_happy_v_sad;
            9=post_happy_v_angry;
            10=post_sad_v_angry]
</expt>

<defaults>
/ screencolor = (0, 0, 0)
/ txcolor = (255, 255, 255)
/ fontstyle = ("Courier New", 14pt)
</defaults>

> Sorry I'm not getting how to add in Likert. I've read through the other suggested code
 
This is covered in the example code I gave you previously. You use /branch.
https://www.millisecond.com/forums/FindPost31683.aspx

P. S.: Please do not paste entire scripts into a post's body. Instead please use the option to attach files per +Insert -> Add File... And if your script requires extarnal files, such as images, to run, please always provide those files along with the script. Thank you

GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Reading This Topic

Explore
Messages
Mentions
Search