How to approach deleting and adding random rooms?

Hi! I’m currently making a top-down shooter and I’m considering adding random rooms, where once the player clears a room, they get access to a few doors, and on the other side is a new room, etc, going on theoretically indefinitely. So the game would place a room based on a few premade templates, matching the door position, then delete the previous room when entered.

What you would suggest would be the best approach for something like this?

I’ve experimented with level streaming, but I don’t want to predetermine what rooms go where, how many etc. I need to add them dynamically and continously as the player progresses, and then delete the old rooms as they are left.

It really depends on how complex the rooms are. I made a procedural maze in my game, using blueprints. Each chunk of the maze was a BP, but as you walked through the maze, what’s coming next was randomly determined.

You can see it in this trailer:

( just after half way ).

Tell me if you need more info.