In my project, each floor has an integer value that relates to the "strength" of the creatures on that floor.  So for example, level 1 has a value of 0.  So, you will get creatures with a relative "difficulty" of 0.  Creatures can roam up to one value up or down, so you may find a level 1 creature in a level 0 floor, or a level 1 creature in a level 2 floor.  The fine mechanics are a little more complex, but that's the general idea. I'm hoping it's balanced.