I think that you could do it all quicker with just DBPro. I think it might be a good idea to make a really low poly collision version, with each building laid out - then on your collision map, use the limb position of each building to place the real detail model. That way you could lay it out however you like in Max, no need for an external editor. You would have some trial and error, finding which limb corresponds to which building model, but I think that's a very fast an efficient way to do it. Once you have a collision model, adding sliding collision would be real easy with Sparky's collision plugin.