This is a personal project that I have been thinking about doing for quite some time now. It now also serves as an example of what I usually work on in Blender, since most of my projects as of now are mainly tools and procedural setups that on their own don't hold up as a whole project.
Initially the problem was that the boolean operations in geometry nodes have been quite unreliable. The method I use in this setup does not use any booleans whatsoever, meaning its faster and not as prone to glitches.
In the first version I made the building fully procedural with pre-made wall elements. This meant that I could only create square buildings. While this technically worked, I was unhappy with the amount of custom shapes, not to even talk about the absolute chaos my geo-node tree was.
Then I decided to remake the setup from scratch making the node tree much more organized, added some features that the previous one lacked, and while the new version needs a bit more work upfront, it creates a much more beliveable output.
Overall the setup allows the user to control how many floors the building has, where the destruction is happening in what shape, and some material controls such as moss and leakage spread. And of course all the distribution aspects are editable along with the seed of the generation.
(The first version is available on my gumroad for free if you want to take a poke at it!)