Ok, here's what the debug() calls:
For $items: 11, 88, 18, 9, 71, 43, 51, 84, 3, 19, 4, 20, 57, 36, 82, 89, 55, 49, 72, 68, 7, 46, 10, 12, 32, 13, 70, 61, 5, 52, 62, 31, 67, 76, 23, 45, 77, 24, 26, 59, 28, 85, 39, 38, 81, 22, 65, 54, 41, 50, 8, 35, 6, 83, 30, 79, 58, 29, 74, 69, 53, 86, 78, 37, 34, 40, 75, 2, 14, 48, 33, 90, 17, 15, 21, 64, 63, 16, 87, 60, 44, 56, 66, 1, 80, 42, 47, 27, 25, 73
For $bogus: 93, 91, 92, 94
For $allitems: 11, 88, 18, 9, 71, 43, 51, 84, 3, 19, 4, 20, 57, 36, 82, 89, 55, 49, 72, 68, 7, 46, 10, 12, 32, *93*, 13, 70, 61, 5, 52, 62, 31, 67, 76, 23, 45, 77, 24, 26, 59, 28, 85, 39, 38, 81, 22, 65, 54, 41, 50, *91*, 8, 35, 6, 83, 30, 79, 58, 29, 74, 69, 53, 86, 78, 37, 34, 40, 75, 2, 14, 48, *92*, 33, 90, 17, 15, 21, 64, 63, 16, 87, 60, 44, 56, 66, 1, 80, 42, 47, 27, 25, 73, *94*
I marked the bogus items with stars; the code is correct since it shows the items randomly and splits the images and bogus into the desired split arrays (i.e., 25, 25, 20, 20).
----
HOWEVER, this is what really happens as I look closer at the images and bogus displayed...
Items displayed: 53, 77, 55, 20, 82, ... [38 images in block 1], bogus 92, ...[31 images]..., bogus 93, [5 images], bogus 94, [7 images], bogus 91, [9 images].
The images don't correspond with the code the RG drew, and the split is incorrect...