I also have a lot of stuff in my User Script that's hand-tailored for Tobii and my design, which I inherited from labmates before my time. Attaching full auto-generated script for reference.
But the relevant bit seems that, when I run the experiment, it's all cool, it takes my input and everything, and then it just crashes. No error message, just "E-Prime 2.0 Release Candidate has stopped working, Windows can check online for a solution to the problem (haha...)". Also when I run the file it says "file not recognized by E-Run, but it runs anyways.
Now, the only file that gets written is the WindPos file, and it only has one object: the script I wrote to copy the list attributes! (*BELOW*) So I'm guessing that's where the problem is. Anyone wanna take a look at it and see if there are any weird in-between errors that wouldn't cause it to not-compile, but *would* cause it to crash?
'Create empty variables to store what will ultimately be copied up to the actual instructions, practice, and experimental lists
Dim CurrentList As List
Dim CurrentPracticeList As List
'Create empty variables to store empty blocks, to which will be copied the correct list depending on the if loops
Dim ExperimentalList As List
Dim PracticeList As List
'Create integer variable for level ("rows" of list "spreadsheets") below
Dim i As Integer
'Fetch actual empty lists from master procedure, so that they can be amended with the copied values from the conditionally selected lists
Set ExperimentalList = CList(Rte.GetObject("EmptyExperimentalBlock"))
Set PracticeList = CList(Rte.Getobject("EmptyPracticeBlock"))
'Nested conditionals which, depending on which values were selected for numeral/scalar (type), 0/2/4 memory load (load), and list 1-4 (list), picks the right unreferenced table from which to copy the values up to the referenced lists
if c.GetAttrib("ns") = "n" then
Set CurrentPracticeList = CList(Rte.GetObject("N4PracticeList"))
if c.GetAttrib("list") = 1 then
Set CurrentList = CList(Rte.GetObject("N4List1"))
Elseif c.GetAttrib("list") = 2 then
Set CurrentList = CList(Rte.GetObject("N4List2"))
Elseif c.GetAttrib("list") = 3 then
Set CurrentList = CList(Rte.GetObject("N4List3"))
Else
Set CurrentList = CList(Rte.GetObject("N4List4"))
End if
Else
Set CurrentPracticeList = CList(Rte.GetObject("S4PracticeList"))
if c.GetAttrib("list") = 1 then
Set CurrentList = CList(Rte.GetObject("S4List1"))
Elseif c.GetAttrib("list") = 2 then
Set CurrentList = CList(Rte.GetObject("S4List2"))
Elseif c.GetAttrib("list") = 3 then
Set CurrentList = CList(Rte.GetObject("S4List3"))
Else
Set CurrentList = CList(Rte.GetObject("S4List4"))
End if
End if
'Copy values to practice block
For i = 1 to 3
PracticeList.SetAttrib i, "item", CurrentPracticeList.GetAttrib(i, "item")
PracticeList.SetAttrib i, "load", CurrentPracticeList.GetAttrib(i, "load")
PracticeList.SetAttrib i, "type", CurrentPracticeList.GetAttrib(i, "type")
PracticeList.SetAttrib i, "strength", CurrentPracticeList.GetAttrib(i, "strength")
PracticeList.SetAttrib i, "targetObject", CurrentPracticeList.GetAttrib(i, "targetObject")
PracticeList.SetAttrib i, "targetGender", CurrentPracticeList.GetAttrib(i, "targetGender")
PracticeList.SetAttrib i, "maCategory", CurrentPracticeList.GetAttrib(i, "maCategory")
PracticeList.SetAttrib i, "faCategory", CurrentPracticeList.GetAttrib(i, "faCategory")
PracticeList.SetAttrib i, "mbCategory", CurrentPracticeList.GetAttrib(i, "mbCategory")
PracticeList.SetAttrib i, "fbCategory", CurrentPracticeList.GetAttrib(i, "fbCategory")
PracticeList.SetAttrib i, "maImage", CurrentPracticeList.GetAttrib(i, "maImage")
PracticeList.SetAttrib i, "faImage", CurrentPracticeList.GetAttrib(i, "faImage")
PracticeList.SetAttrib i, "mbImage", CurrentPracticeList.GetAttrib(i, "mbImage")
PracticeList.SetAttrib i, "fbImage", CurrentPracticeList.GetAttrib(i, "fbImage")
PracticeList.SetAttrib i, "introAudio", CurrentPracticeList.GetAttrib(i, "introAudio")
PracticeList.SetAttrib i, "aAudio", CurrentPracticeList.GetAttrib(i, "aAudio")
PracticeList.SetAttrib i, "bAudio", CurrentPracticeList.GetAttrib(i, "bAudio")
PracticeList.SetAttrib i, "commandAudio", CurrentPracticeList.GetAttrib(i, "commandAudio")
PracticeList.SetAttrib i, "letter1", CurrentPracticeList.GetAttrib(i, "letter1")
PracticeList.SetAttrib i, "letter2", CurrentPracticeList.GetAttrib(i, "letter2")
PracticeList.SetAttrib i, "letter3", CurrentPracticeList.GetAttrib(i, "letter3")
PracticeList.SetAttrib i, "letter4", CurrentPracticeList.GetAttrib(i, "letter4")
PracticeList.SetAttrib i, "correctSequence" , CurrentPracticeList.GetAttrib(i, "correctSequence")
Next i
'Copy values to experimental block
For i = 1 to 16
ExperimentalList.SetAttrib i, "item", CurrentList.GetAttrib(i, "item")
ExperimentalList.SetAttrib i, "load", CurrentList.GetAttrib(i, "load")
ExperimentalList.SetAttrib i, "type", CurrentList.GetAttrib(i, "type")
ExperimentalList.SetAttrib i, "strength", CurrentList.GetAttrib(i, "strength")
ExperimentalList.SetAttrib i, "targetObject", CurrentList.GetAttrib(i, "targetObject")
ExperimentalList.SetAttrib i, "targetGender", CurrentList.GetAttrib(i, "targetGender")
ExperimentalList.SetAttrib i, "maCategory", CurrentList.GetAttrib(i, "maCategory")
ExperimentalList.SetAttrib i, "faCategory", CurrentList.GetAttrib(i, "faCategory")
ExperimentalList.SetAttrib i, "mbCategory", CurrentList.GetAttrib(i, "mbCategory")
ExperimentalList.SetAttrib i, "fbCategory", CurrentList.GetAttrib(i, "fbCategory")
ExperimentalList.SetAttrib i, "maImage", CurrentList.GetAttrib(i, "maImage")
ExperimentalList.SetAttrib i, "faImage", CurrentList.GetAttrib(i, "faImage")
ExperimentalList.SetAttrib i, "mbImage", CurrentList.GetAttrib(i, "mbImage")
ExperimentalList.SetAttrib i, "fbImage", CurrentList.GetAttrib(i, "fbImage")
ExperimentalList.SetAttrib i, "introAudio", CurrentList.GetAttrib(i, "introAudio")
ExperimentalList.SetAttrib i, "aAudio", CurrentList.GetAttrib(i, "aAudio")
ExperimentalList.SetAttrib i, "bAudio", CurrentList.GetAttrib(i, "bAudio")
ExperimentalList.SetAttrib i, "commandAudio", CurrentList.GetAttrib(i, "commandAudio")
ExperimentalList.SetAttrib i, "letter1", CurrentList.GetAttrib(i, "letter1")
ExperimentalList.SetAttrib i, "letter2", CurrentList.GetAttrib(i, "letter2")
ExperimentalList.SetAttrib i, "letter3", CurrentList.GetAttrib(i, "letter3")
ExperimentalList.SetAttrib i, "letter4", CurrentList.GetAttrib(i, "letter4")
ExperimentalList.SetAttrib i, "correctSequence", CurrentList.GetAttrib(i, "correctSequence")
Next i