can i ask the proc-gen step process you use for this? you create much more realistic floor plans than I've been able to. I'm interested in making internal mansion plans for a proc-gen thief-like game but i've been struggling with believable floor plans. Any insight would be great! (as a Geographic Information Systems programmer by trade, your city gen and mansion gen stuff is really really cool.
Here is a copy of my answer to a similar question somewhere else:
- I choose a size of a mansion in "squares". The smallest possible mansion is 4 squares big, the largest is about 200 I guess. When it's too big it stops looking like a a single building, more like a cluster of several ones.
- Then I generate a polyomino of that size. This becomes a ground plan of a mansion. The smallest mansions look like Tetris pieces when viewed from the top.
- Then I split this shape into rectangular "wings". For that I look for the largest rectangle within it, then the next and the next etc. Large wings have more floors, small wings have fewer of them (unless they can be seamlessly attached to large ones). One-square wings become towers.
- At the end I build a 3D model of this stuff.
If you need just a floor plan, than a short summary of this algorithm is "generate a polyomino, split it into rectangles". I hope it helps :)