Now I wonder if it’s possible to regulate the extrusion with for example a Graph Mapper, to get an uneven extrusion on different positions. So for example one point gets an extrusion factor of 99, and another one of 45, and the next one of 210, etc.
You could extrude edge fragments differently to make the walls different heights but that ignores the roof. How would you select the positions? You can divide the floor (base) surface into a grid of points and then use points at different positions and heights as attractors to make a bumpy surface, but that ignores the walls. Have you got a sketch of what this would look like?
I opened your script, there are some older components included. What would be the easiest way to do that nowadays? And how can it be a general extrusion, and not just a waved surface?
It’s far from the only way to do it, and probably not the best.
Be sure to play with the Graph Mapper curve, its shape makes a big difference.
Be sure to try different ‘U Count’ and ‘V Count’ values (resolution) for SDivide too.
Here’s one that got very tricky - slotted interlocking waffle structure beneath a wavy surface: