Millisecond Forums

Present stimuli in a sequence

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

By wuaham - 11/10/2022

Good morning,

I am having an issue presenting stimuli in a simple plain sequence (as appeared in the text element) for a second - but they are presenting in random order. My script is as follows:

-----------------------Script-------------------------------------------------
<block showABC>
/ trials = [1-10 = sequence(a)]
/ recorddata = false
</block>

<trial a>
/ stimulusframes = [1=clearscreen, backgroundcolor, abc]
/ timeout = 1000
</trial>

<shape backgroundcolor>
/ shape = rectangle
/ color = black
/ erase = false
/ size = (100%, 100%)
</shape>

<text abc>
/ items = ("A", "B", "C", "D", "E", "F", "G", "H", "I", "J")
/ txcolor = white
/ txbgcolor = transparent
/ fontstyle = ("Arial", 70pt, true)
/ erase = false
</text>
---------------------End-----------------------------------------

Any help would be appreciated.

Thank you.
Best regards.

By wuaham - 11/10/2022

wuaham - 11/10/2022
Good morning,

I am having an issue presenting stimuli in a simple plain sequence (as appeared in the text element) for a second - but they are presenting in random order. My script is as follows:

-----------------------Script-------------------------------------------------
<block showABC>
/ trials = [1-10 = sequence(a)]
/ recorddata = false
</block>

<trial a>
/ stimulusframes = [1=clearscreen, backgroundcolor, abc]
/ timeout = 1000
</trial>

<shape backgroundcolor>
/ shape = rectangle
/ color = black
/ erase = false
/ size = (100%, 100%)
</shape>

<text abc>
/ items = ("A", "B", "C", "D", "E", "F", "G", "H", "I", "J")
/ txcolor = white
/ txbgcolor = transparent
/ fontstyle = ("Arial", 70pt, true)
/ erase = false
</text>
---------------------End-----------------------------------------

Any help would be appreciated.

Thank you.
Best regards.


I have got a solution but not sure if that's the best way to do - any advice? here is the script:

----------Script-----------------------------------------------
<values>
/ selectvalue = 0
</values>

<list itemsequence>
/ items = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
/ selectionmode = sequence
</list>

<block showABC>
/ trials = [1-10 = sequence(a)]
/ recorddata = false
</block>

<trial a>
/ ontrialbegin = [values.selectvalue = list.itemsequence.nextvalue;]
/ stimulusframes = [1=clearscreen, backgroundcolor, abc]
/ timeout = 1000
</trial>

<shape backgroundcolor>
/ shape = rectangle
/ color = black
/ erase = false
/ size = (100%, 100%)
</shape>

<text abc>
/ items = alphabets
/ select = values.selectvalue
/ txcolor = white
/ txbgcolor = transparent
/ fontstyle = ("Arial", 70pt, true)
/ erase = false
</text>

<item alphabets>
/1 = "A"
/2 = "B"
/3 = "C"
/4 = "D"
/5 = "E"
/6 = "F"
/7 = "G"
/8 = "H"
/9 = "I"
/10 = "J"
</item>

-------------------End-----------------------------------




By Dave - 11/10/2022

wuaham - 11/10/2022
wuaham - 11/10/2022
Good morning,

I am having an issue presenting stimuli in a simple plain sequence (as appeared in the text element) for a second - but they are presenting in random order. My script is as follows:

-----------------------Script-------------------------------------------------
<block showABC>
/ trials = [1-10 = sequence(a)]
/ recorddata = false
</block>

<trial a>
/ stimulusframes = [1=clearscreen, backgroundcolor, abc]
/ timeout = 1000
</trial>

<shape backgroundcolor>
/ shape = rectangle
/ color = black
/ erase = false
/ size = (100%, 100%)
</shape>

<text abc>
/ items = ("A", "B", "C", "D", "E", "F", "G", "H", "I", "J")
/ txcolor = white
/ txbgcolor = transparent
/ fontstyle = ("Arial", 70pt, true)
/ erase = false
</text>
---------------------End-----------------------------------------

Any help would be appreciated.

Thank you.
Best regards.


I have got a solution but not sure if that's the best way to do - any advice? here is the script:

----------Script-----------------------------------------------
<values>
/ selectvalue = 0
</values>

<list itemsequence>
/ items = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
/ selectionmode = sequence
</list>

<block showABC>
/ trials = [1-10 = sequence(a)]
/ recorddata = false
</block>

<trial a>
/ ontrialbegin = [values.selectvalue = list.itemsequence.nextvalue;]
/ stimulusframes = [1=clearscreen, backgroundcolor, abc]
/ timeout = 1000
</trial>

<shape backgroundcolor>
/ shape = rectangle
/ color = black
/ erase = false
/ size = (100%, 100%)
</shape>

<text abc>
/ items = alphabets
/ select = values.selectvalue
/ txcolor = white
/ txbgcolor = transparent
/ fontstyle = ("Arial", 70pt, true)
/ erase = false
</text>

<item alphabets>
/1 = "A"
/2 = "B"
/3 = "C"
/4 = "D"
/5 = "E"
/6 = "F"
/7 = "G"
/8 = "H"
/9 = "I"
/10 = "J"
</item>

-------------------End-----------------------------------





If you want a stimulus element's items to be selected sequentially, you need to specify /select = sequence

<text abc>
/ items = ("A", "B", "C", "D", "E", "F", "G", "H", "I", "J")
/ select = sequence
/ txcolor = white
/ txbgcolor = transparent
/ fontstyle = ("Arial", 70pt, true)
/ erase = false
</text>

Otherwise, random selection without replacement is the default,

https://www.millisecond.com/support/docs/current/html/language/attributes/select.htm
By wuaham - 11/10/2022

Dave - 11/10/2022
wuaham - 11/10/2022
wuaham - 11/10/2022
Good morning,

I am having an issue presenting stimuli in a simple plain sequence (as appeared in the text element) for a second - but they are presenting in random order. My script is as follows:

-----------------------Script-------------------------------------------------
<block showABC>
/ trials = [1-10 = sequence(a)]
/ recorddata = false
</block>

<trial a>
/ stimulusframes = [1=clearscreen, backgroundcolor, abc]
/ timeout = 1000
</trial>

<shape backgroundcolor>
/ shape = rectangle
/ color = black
/ erase = false
/ size = (100%, 100%)
</shape>

<text abc>
/ items = ("A", "B", "C", "D", "E", "F", "G", "H", "I", "J")
/ txcolor = white
/ txbgcolor = transparent
/ fontstyle = ("Arial", 70pt, true)
/ erase = false
</text>
---------------------End-----------------------------------------

Any help would be appreciated.

Thank you.
Best regards.


I have got a solution but not sure if that's the best way to do - any advice? here is the script:

----------Script-----------------------------------------------
<values>
/ selectvalue = 0
</values>

<list itemsequence>
/ items = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
/ selectionmode = sequence
</list>

<block showABC>
/ trials = [1-10 = sequence(a)]
/ recorddata = false
</block>

<trial a>
/ ontrialbegin = [values.selectvalue = list.itemsequence.nextvalue;]
/ stimulusframes = [1=clearscreen, backgroundcolor, abc]
/ timeout = 1000
</trial>

<shape backgroundcolor>
/ shape = rectangle
/ color = black
/ erase = false
/ size = (100%, 100%)
</shape>

<text abc>
/ items = alphabets
/ select = values.selectvalue
/ txcolor = white
/ txbgcolor = transparent
/ fontstyle = ("Arial", 70pt, true)
/ erase = false
</text>

<item alphabets>
/1 = "A"
/2 = "B"
/3 = "C"
/4 = "D"
/5 = "E"
/6 = "F"
/7 = "G"
/8 = "H"
/9 = "I"
/10 = "J"
</item>

-------------------End-----------------------------------





If you want a stimulus element's items to be selected sequentially, you need to specify /select = sequence

<text abc>
/ items = ("A", "B", "C", "D", "E", "F", "G", "H", "I", "J")
/ select = sequence
/ txcolor = white
/ txbgcolor = transparent
/ fontstyle = ("Arial", 70pt, true)
/ erase = false
</text>

Otherwise, random selection without replacement is the default,

https://www.millisecond.com/support/docs/current/html/language/attributes/select.htm

Thank you Dave - that's really cool - don't need to add so many lines to achieve a simple goal.