Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Supported by

Advanced loop operation weight always presented in blocks

Hi all,

I really like the advanced loop operations in OpenSesame. However, I have discovered one issue where I am not sure if the behavior is as desired.

If I use the weight operation in a loop that should be run in random order, any row that receives a weight > 1 is always presented in blocks.

That is, in the following loop (see below), the two repetitions of A are always presented adjacently (at least in my 10 tries). Is that desired? If not, I can also open an issue on GitHub.



Script of loop example:

set source_file "" set source table set repeat 1 set order random set description "Repeatedly runs another item" set cycles 3 set continuous no set break_if_on_first yes set break_if never setcycle 0 Letter A setcycle 0 Weight 2 setcycle 1 Letter B setcycle 1 Weight 1 setcycle 2 Letter C setcycle 2 Weight 1 weight Weight run new_sketchpad


  • Hi Pascal,

    This is intended behavior, but I see not that it's not documented very clearly. The logic is that:

    1. The loop table is first created (randomized or not);
    2. Then constraints are applied;
    3. And finally the advanced loop operations are applied.

    If you want randomize at the very end, you would simply add a shuffle operation below the weight operation, if you see what I mean.

    I'll clarify this on the documentation site.


  • Hi Sebastiaan,
    thanks for the clarification!

Sign In or Register to comment.