Working with stimulus lists

I am trying to set up what feels like it should be a simple experiment that would have been very long winded in SuperLab 2 but should be a lot easier in version 4.

What I want is to display 6 letters of the alphabet on the screen for a short period and then ask the participant to enter which letters they saw.

The problems I’ve run into are:

Trial variables can’t be used to select what is displayed.

Variable lists can only be evaluated once per trial, so instead of having complete randomisation, I’ll need to have a variable list for each location and ensure there are plenty of trials to choose from which have sets of letters with no duplicates (I know there are some duplicates in the attached example, but that’s just because I’ve set them up quickly).

I tried to limit the number of trials in the block and neither the “When to Run” nor the macro seemed to work in 4.0.5. My macro does work in 4.0.6 except that I asked for 5 trials and I’m getting 7, which is worrying.

The text input box is visible during the presentation of the letters, but I only want it to be there after they dissappear.

Any help would be gratefully received. The actual experiment I want to set up will have more locations but if I can get this working I should be able to expand it as necessary.

Thanks in advance.

Wakefield

letters.sl4 (13.7 KB)

letters test.txt (594 Bytes)

Hi Wakefield,

I’m pretty sure that it is possible to do what you want. I’ll work on a sample experiment and post it.

Meanwhile:

I tried to limit the number of trials in the block and neither the “When to Run” nor the macro seemed to work in 4.0.5. My macro does work in 4.0.6 except that I asked for 5 trials and I’m getting 7, which is worrying.

In my case, every time the number of trials presented is off by 1 or 2, it was almost always my mistake. In looking at your experiment, try having the macro run after each trial instead of before each trial.

The text input box is visible during the presentation of the letters, but I only want it to be there after they dissappear.

This behavior can be changed:

  • Click on the Experiment menu, then Participant Input. In the dialog that appears, click on the Options tab and then select the Only if event designates a string input as correct option.

  • In the same Participant Input dialog, click on the Responses tab, then click on New. A String Response dialog will appear. Give the response a name, e.g. “Any String Input”, then turn On the Open-ended (anything will be accepted) checkbox. Finally, click on OK to create the response.

Finally, go back to the Event Editor edit the “Input” event in your experiment. In the Correct Response tab, change the correct response to One or more of the following and then select the “Any String Input” response that you just created.

Questions: Is it important that the letters appear at the same time? how long do you want the letters to remain on the screen? and is RT important at all (or just the response)?

Hisham.

Hi again,

I’m attaching an experiment that does what you want except for a caveat: it doesn’t end. :smiley:

There are two ways to make it end:

  • You can simply modify the macro a little to remove the[B] Repeat current block[/B] action, then copy and paste the block N number of times.
  • You can create a new macro that also runs after every trial and exits the block after some amount of time. You'll end up with an uneven number of trials, but if you let the experiment run long enough, you'll have enough trials to be able to delete some of them and even out the count across participants.
Make sure to check out the notes that I added in the Notes tab of the Letter event and the macro.

Cheers,

Hisham.

letters (mod by Cedrus).sl4 (9.01 KB)

Thanks for that. I hadn’t thought to create such an extensive macro at the block level, but now I’ve seen it done once I’ll be thinking of that as a way of handling experiments in the future.

I’ve seen how I can get the codes for all the letters presented into the data file, and how I can exit the block after a fixed duration. I assume from your reply, that there isn’t a way to exit the block after a fixed number of trials has been presented. However, an uneven number should be fine since I would probably intend to generate a mean score and median reaction time for each condition (the final experiment will probably have different conditions with different numbers of letters which may have to be done in separate blocks rather than randomly interleaved).

Cheers,

Wake

The difficulty we had in this case with the idea of ending the block after a fixed number of trials is that the macro is dependent on the number of trials presented, so the macro involves resetting the number of trials presented. You could get around this limitation by creating multiple copies of the macro, setting it to run at six, twelve, eighteen, etc… trials. If you don’t repeat the block, you will have randomization without replacement. If you repeat the block at each step, you will have randomization with replacement.