Dave
|
|
Group: Administrators
Posts: 13K,
Visits: 104K
|
All good -- this isn't a competition :)
|
|
|
rouge
|
|
Group: Forum Members
Posts: 32,
Visits: 73
|
Dear Dave, ah! Just wanted to tell you proudly that I found the mistake myself :-) . But of course - the expert found the mistake quicker :-) . Thank you very much!
|
|
|
Dave
|
|
Group: Administrators
Posts: 13K,
Visits: 104K
|
<trial playvideo_Tor> / ontrialbegin = [if (trial.repeat_tor.response!=38) values.tor_item=list.tor.nextindex] / stimulustimes = [0=fixation; 1000 = Videos_kein_Tor] / timeout = 1000 / validresponse = (noresponse) / branch = [if(script.currentblock=="experimentblock_mit_wiederholung")trial.repeat_Tor else trial.showquestionaboutmyvideo_Tor] </trial>
That trial is displaying the *wrong* video element.
|
|
|
rouge
|
|
Group: Forum Members
Posts: 32,
Visits: 73
|
a correction: its
<block experimentblock_mit_wiederholung> / trials = [1 - 48=noreplace(playvideo_kein_Tor, playvideo_Tor)] </block>
|
|
|
rouge
|
|
Group: Forum Members
Posts: 32,
Visits: 73
|
Dear Dave, in regard to my experiment there is one little mistake I cannot solve. After each video presentation the participant can decide weather to repeat the video or not. As soon as the participants does not want to see the video again, he/she decides about the video outcome. If the participant does not want to repeat the video, she/he can immediately can jump to the decision outcome. What I tried is following: I always jumped directly to the decision task and always decided for a "goal". After some videos, however, the programm starts to repeat the same video as long as I decide for "goal" until I decide for "no-goal". By any chance, do you know what I did program wrong? Thank you very much in advance for your answer! Best greetings!
Experimental-Block
<video Videos_kein_Tor> / items = Videos_kein_Tor / size = (60%, 60%) / playthrough = true / valign = center / select = values.kein_tor_item </video>
<video Videos_Tor> / items = Videos_Tor / size = (60%, 60%) / playthrough = true / valign = center / select = values.tor_item </video>
<values> / kein_tor_item = 24 / tor_item = 24 </values>
<list kein_tor> / poolsize = 24 </list>
<list tor> / poolsize = 24 </list>
<trial playvideo_kein_Tor> / ontrialbegin = [if (trial.repeat_kein_Tor.response!=38) values.kein_tor_item=list.kein_tor.nextindex] / stimulustimes = [0=fixation; 1000 = Videos_kein_Tor] / timeout = 1000 / validresponse = (noresponse) / branch = [if (script.currentblock=="experimentblock_mit_wiederholung")trial.repeat_kein_Tor else trial.showquestionaboutmyvideo_kein_Tor] </trial>
<trial repeat_kein_Tor> /stimulusframes=[1=repeat_question; 1=Zeichen_Wiederholung; 1=Zeichen_Wiederholung_II; 1=Zeichen_keine_Wiederholung; 1=Zeichen_keine_Wiederholung_II] /validresponse = (30, 38) / branch = [if(trial.repeat_kein_tor.response==30) trial.showquestionaboutmyvideo_kein_Tor else trial.playvideo_kein_Tor] </trial>
<trial playvideo_Tor> / ontrialbegin = [if (trial.repeat_tor.response!=38) values.tor_item=list.tor.nextindex] / stimulustimes = [0=fixation; 1000 = Videos_kein_Tor] / timeout = 1000 / validresponse = (noresponse) / branch = [if(script.currentblock=="experimentblock_mit_wiederholung")trial.repeat_Tor else trial.showquestionaboutmyvideo_Tor] </trial>
<trial repeat_Tor> / stimulusframes = [1=repeat_question; 1=Zeichen_Wiederholung; 1=Zeichen_Wiederholung_II; 1=Zeichen_keine_Wiederholung; 1=Zeichen_keine_Wiederholung_II] / validresponse = (30,38) / branch = [if(trial.repeat_tor.response==30) trial.showquestionaboutmyvideo_Tor else trial.playvideo_tor] </trial>
<trial showquestionaboutmyvideo_kein_Tor> / stimulustimes = [0=Entscheidung_Manipulation; 0=Zeichen_Tor; 0=Zeichen_Tor_II; 0=Zeichen_kein_Tor; 0=Zeichen_kein_Tor_II] / validresponse = (30, 38) / correctresponse = (38) </trial>
<trial showquestionaboutmyvideo_Tor> / stimulustimes = [0=Entscheidung_Manipulation; 0=Zeichen_Tor; 0=Zeichen_Tor_II; 0=Zeichen_kein_Tor; 0=Zeichen_kein_Tor_II] / validresponse = (30, 38) / correctresponse = (30) </trial>
<block experimentblock_mit_wiederholung> / trials = [1 - 20=noreplace(playvideo_kein_Tor, playvideo_Tor)] </block>
<expt> /blocks=[1=testblock; 2=experimentblock_mit_wiederholung; 3=FuÃballerfahrung; 4=soccerexperience; 5=demographics] /postinstructions = (thank_you) </expt>
|
|
|
rouge
|
|
Group: Forum Members
Posts: 32,
Visits: 73
|
Ah great! Thank you very much for the explanation! All the best!
|
|
|
Dave
|
|
Group: Administrators
Posts: 13K,
Visits: 104K
|
You need the variables (<values> entries) because you must prevent a *new / different* item from being selected *if* a participant responds with "repeat". That's what the /ontrialbegin logic ensures. Only if the response was *not repeat* a new item number is selected from the respective <list>. And yes, if you have 25 items per category ("Tor" and "Kein Tor"), the poolsize needs to be 25.
|
|
|
rouge
|
|
Group: Forum Members
Posts: 32,
Visits: 73
|
Dear Dave, thank you very much for your fast answer! Maybe it´s a language barrier. Or my minor experiences in programming. I am still not understanding why I need the values entry. Or is it just the program which needs this definition? If I have 50 videos with 25 goals, and 25 no goals - do I have to define the poolsize as "25" ? Because of your help my program works! Just to make sure - did I oversee any mistakes in my text? Thank you very much in advance for your answer! And best greetings from Germany
Test-Block:
<item test_video_1> /1="Trialvideo1.mp4" </item>
<item test_video_2> /1="Trialvideo2.mp4" </item>
<video test_video_1> / items = test_video_1 / size = (60%, 60%) / playthrough = true / valign = center </video>
<video test_video_2> / items = test_video_2 / size = (60%, 60%) / playthrough = true / valign = center </video>
<values> / test_video_1_item = 1 / test_video_2_item = 1 </values>
<list test_video_1_item> / poolsize = 1 </list>
<list test_video_2_item> / poolsize = 1 </list>
<trial playvideo_test_video_1> / ontrialbegin = [if (trial.repeat_test_video_1.response!=38) values.test_video_1_item=list.test_video_1_item.nextindex] / stimulustimes = [0=fixation; 1000 = test_video_1] / timeout = 1000 / validresponse = (noresponse) / branch = [if (script.currentblock=="testblock")trial.repeat_test_video_1 else trial.showquestionaboutmyvideo] </trial>
<trial repeat_test_video_1> /stimulusframes=[1=repeat_question] /validresponse = (30, 38) / branch = [if(trial.repeat_test_video_1.response==30) trial.showquestionaboutmyvideo else trial.playvideo_test_video_1] </trial>
<trial playvideo_test_video_2> / ontrialbegin = [if (trial.repeat_test_video_2.response!=38) values.test_video_2_item=list.test_video_2_item.nextindex] / stimulustimes = [0=fixation; 1000 = test_video_2] / timeout = 1000 / validresponse = (noresponse) / branch = [if (script.currentblock=="testblock")trial.repeat_test_video_2 else trial.showquestionaboutmyvideo] </trial>
<trial repeat_test_video_2> /stimulusframes=[1=repeat_question] /validresponse = (30, 38) / branch = [if(trial.repeat_test_video_2.response==30) trial.showquestionaboutmyvideo else trial.playvideo_test_video_2] </trial>
<block testblock> / trials = [1-2=noreplace (playvideo_test_video_1, playvideo_test_video_2)] / postinstructions = (posttest) /preinstructions = (Instruktion_1, Instruktion_2, Instruktion_3, Instruktion_4) </block>
Experimental-Block
<video Videos_kein_Tor> / items = Videos_kein_Tor / size = (60%, 60%) / playthrough = true / valign = center / select = values.kein_tor_item </video>
<video Videos_Tor> / items = Videos_Tor / size = (60%, 60%) / playthrough = true / valign = center / select = values.tor_item </video>
<values> / kein_tor_item = 1 / tor_item = 1 </values>
<list kein_tor> / poolsize = 25 </list>
<list tor> / poolsize = 25 </list>
<trial playvideo_kein_Tor> / ontrialbegin = [if (trial.repeat_kein_Tor.response!=38) values.kein_tor_item=list.kein_tor.nextindex] / stimulustimes = [0=fixation; 1000 = Videos_kein_Tor] / timeout = 1000 / validresponse = (noresponse) / branch = [if (script.currentblock=="experimentblock_mit_wiederholung")trial.repeat_kein_Tor else trial.showquestionaboutmyvideo] </trial>
<trial repeat_kein_Tor> /stimulusframes=[1=repeat_question] /validresponse = (30, 38) / branch = [if(trial.repeat_kein_tor.response==30) trial.showquestionaboutmyvideo else trial.playvideo_kein_tor] </trial>
<trial playvideo_Tor> / ontrialbegin = [if (trial.repeat_tor.response!=38) values.tor_item=list.tor.nextindex] / stimulustimes = [0=Videos_Tor] / timeout = 1000 / validresponse = (noresponse) / branch = [if(script.currentblock=="experimentblock_mit_wiederholung")trial.repeat_Tor else trial.showquestionaboutmyvideo] </trial>
<trial repeat_Tor> / stimulusframes = [1=repeat_question] / validresponse = (30,38) / branch = [if(trial.repeat_tor.response==30) trial.showquestionaboutmyvideo else trial.playvideo_tor] </trial>
<trial showquestionaboutmyvideo> / stimulustimes = [0=Entscheidung_Manipulation; 0=Zeichen_Tor; 0=Zeichen_Tor_II; 0=Zeichen_kein_Tor; 0=Zeichen_kein_Tor_II] / validresponse = ("a", "l") / correctresponse = ("a", "l") </trial>
<block experimentblock_mit_wiederholung> / trials = [1 - 5=noreplace(playvideo_kein_Tor, playvideo_Tor)] </block>
<expt> /blocks=[1=testblock; 2=experimentblock_mit_wiederholung; 3=FuÃballerfahrung; 4=soccerexperience; 5=demographics] /postinstructions = (thank_you) </expt>
|
|
|
Dave
|
|
Group: Administrators
Posts: 13K,
Visits: 104K
|
A <values> entry is a global variable. In this case, it is used to store an item number. The item number is retrieved from the <list>. Because there are four items in the example code at hand ("Tor 1" to "Tor 4"), the list has a poolsize of 4.
|
|
|
rouge
|
|
Group: Forum Members
Posts: 32,
Visits: 73
|
and what does following mean? is that for structuring the values of the repetions? sorry for those questions - still an absolute beginner.
<list kein_tor> / poolsize = 4 </list>
|
|
|