The problem this seems to be solving, which is that the seeded random number used to generate the level is mixed with the seeded random number used to affect combat.
It just seems trivial to solve though... or maybe I'm getting something wrong... but the solution seems to be to use the seeded random number to generate the level, and then copy the the last output of the random number to seed a new random number controlling combat.
That is, the random number generating the level is immutable with respect to the combat random number?
What am I missing?