By kulajw - 9/28/2014
Hello, I have problem whit blocks groups in exp. I have 3 blocks. Blocks should presnet sequence of 6 letters and after this should present first and sixth letter from previosly shown set ( presented letters are storing in item.set).
If I run each block separatly they work fine, but if I run block grouped in <expt> only first block run fine but 2 and 3 crush. Block 2 and 3 are presenting only first letter from item.set and not sixth
I do not know why
I atached my script.
I would be grateful if someon can help me.
|
By Dave - 9/28/2014
Not seeing any crash when running your script. Is your Inquisit installation up to date? You should be using 4.0.6.0, which you can obtain via https://www.millisecond.com/download/
There is, however, a slight syntax issue in that
<text S1L> /items = stimulus /position = (90,50) /fontstyle = ("Arial", 10%) /select = stimulus </text>
should actually read
<text S1L> /items = stimulus /position = (90,50) /fontstyle = ("Arial", 10%) /select = list.stimulus.nextvalue </text>
and so forth for the remaining <text> elements.
Also, <trial reset> should rather use the object's functions directly as in
<trial reset> / ontrialbegin = [item.set.clearitems(); list.stimulus.reset();] / stimulusframes = [1=blank] / response = noresponse / recorddata = false / posttrialpause = 200 </trial>
FInally, to avoid side-effects of clearing the <item> element between blocks, you should do
<text set_1> / items = set / txcolor = yellow / fontstyle = ("Arial", 10%) / erase = false / select = values.firstitem </text>
<text set_6> / items = set / txcolor = yellow / fontstyle = ("Arial", 10%) / erase = false / select = values.sixthitem </text>
<values> / firstitem = 1 / sixthitem = 6 </values>
|
By kulajw - 9/29/2014
I have inquisit 4.0.4.0. , but after your upgrade of my script everything is fine. Probably this syntax issue pointed by you produce some problems.
Thanks you Dave - you're great !
P.S I would like to ask if you know where I can learn how to optimize my scripts in inquisit and how to write more advanced scripts in proper way to avoid such issues? Maybe some books?
|
By Dave - 9/29/2014
I am not aware of any books dealing with Inquisit syntax specifically (unless you read Chinese; one Chinese-language book exists). I would recommend: - Work through the tutorials in the Inquisit documentation to acquire the basics. - If you have no prior programming experience, work through an "Introduction to programming" book of your choice. Which particular programming language you pick is not that importatn. Basic concepts -- variables, functions, conditional logic, etc. -- apply to virtually any programming language, including Inquisit syntax. Python is a popular choice and is perceived as a beginner-friendly language. - Study other people's Inquisit-code. Pick some scripts from the task library you're interested in and try figure out what they do / how they work by examining the code. Try to implement some interesting modifications or extensions in some. - Practice. Write lots of little prototypes to test things you are interested in / which are relevant to your own projects.
Hope this helps, -Dave
|
|