Ah, that would mean something isn't initialized fast enough. I suspect "room start" is not the same when using rollback.
The shadow buffer variable is just a pointer that is first set to "noone" which is -4. In the end step event it should check with the shadow grid for which static buffer to use and then append any dynamic shadows to that as a vertex buffer. So, if that does not happen it would remain as -4.
In the next update I will add dummy buffer that renders a single triangle with no area. That is faster than adding checks for validity since the vast majority of the time it the buffer will always have something there.
Chances are the shadow grid is actually created and ready, but depending on the position of the view it could grab nothing from the grid depending on how your game is setup. So, this will add a failsafe for that. I'll add the dummy buffer in the next update and you won't need to do anything like you did. Thanks for bringing that to my attention.