Yeah but both myself and Robs script are using 16 directions which is still limited to 22.5 deg angles. If you get a square building at some funny angle the roof tiles can be up to 11 degrees out so it can look a little odd even then. We could do more angles but you need more processing to do it. Ideally you want to snap the angle for the buildings to 22.5 degrees and use house height maps that don't have long runs of odd angled bits of roof.

Theres an option in my app to spray down stamps at random angles but I might have to add an option to snap that angle to a value so that you can set 45 or 22.5 or whatever. That might be useful.