Different tasks in different blocks


I am sure this has been answered before, but I can’t find it :frowning:

I am trying to set up an experiment in which participants have to carry out two different tasks (A & B) in 8 different blocks (which have 40 trials each). I aim to use stimulus lists (sound files). My question is, how can I get superlab to present 40 randomly selected events from my different stimulus lists where my participants have to carry out task A, then display a “short break” screen, and then move on to the second block in which participants have to carry out task B (again, 40 randomly selected trials should be presented, but no repetitions from the first block). After they have finished the second block, they should again receive a short break and then carry out task A again…

I assume I can do this with expressions (e.g. number of trials presented in this block is less than 40), but I am not sure how I can get superlab to alternate between my two tasks.

Any pointers in the right direction are welcome.

  • Limit the number of trials to 40 at a time.
  • Under the [B]Block[/B] level create a macro with the expression: "Trials Presented in This Block is Less than 40 trials".
  • In the [B]Trial Editor[/B], under the [B]When to Present[/B] tab, use the expression "Number of times this trial has been presented is equal to 0". This is so the trial is presented only once.
  • Within your last block create a macro that presents your first block again.

Thanks. just to double-check, I need to prepare 8 different blocks that each link to 40 trials/events? It’s not better to prepare 2 blocks only (One for trials to be presented with task A and one for trials presented with task B) so I can avoid pre-selecting which trials are presented in which block?
Thank you.


I am still struggling to set up my experiment. As I said, I basically want to have 160 stimuli which are linked to ppts to carrying out task A and 160 different trials which are linked to task B. After every 40 trials, participants should have a short break and the task switch will be announced. I need to avoid creating 8 different blocks as that would require me to pre-select 40 stimuli for each block. Instead, I want superlab to randomly pick 40 stimuli from my set of 160 for task A, switch to the other task (B) and again present 40 random stimuli from that set. After that’s done, superlab should switch back to task A (and make sure to remember which 40 have already been presented). How can this be done in superlab?

Yes, you can use just two blocks as you mentioned. However, you will limit the number of trials presented in Block A to 40. This is done under the When to Run tab within the Block Editor. The expression is “Trials Presented in This Block is Less Than 40 Trials.” Please see my last post for the rest of the steps.

How do I create a macro that will present my first block again, please?

I am attaching a dummy version that I’ve worked with. The task switch works for the first two blocks but then I don’t get any trials presented anymore. Can someone point out what I am doing wrong?
Many thanks,


I attach a version that solved my problem so that other people who are trying to set up the same thing can use it as a starting point.


Thank you for the update and for posting your experiment for other users.