I don’t know about the technical aspect of whether the player would have to start again or not.
But could you use generic variables that are re-used for each case? It might be a whole world of pain to figure out, but if you were able to have variables like:
and so on…
Then for each new case, you can just re-set the variables and go from there.
It might make it impossible to have the level of individuality you might want from each case though