Generation Maps Procedural


Good to all who are reading. I have some problems that happen to me in the creation of my first "big" game

I'm creating a game with the world system of The Binding of Isaac game, but I have a big problem when it comes to generating the world

I know how to create rooms in a random way (already premade) with the "choose" but I have 2 big problems

1) Save the rooms that have been created so that when I go back to a previous one, I don't get another random one
2) Create a limit of rooms per "floor" (example, on the first floor there are 5 rooms, the second 9 and etc)
3) Pass between rooms and appear correctly, if I enter through a door on the right, start the next room from the left side but if by random generation the same room passes to the left, the room begins on the right

Sorry if I do not explain myself well, I hope and you can understand what I say

Sorry if my English is not very good, it is not my native language (I used google translate)