I've been knee deep in developing my own game that takes place in the NorthWest Indiana/Chicago suburbs area. After spending a lot of time trying to find premade buildings like I could see in real life, I decided to choose a few to base some background models on, and then make variations based on that. Then I built out assets I could swap with to create more variations on the fly.
I tried to keep them as low poly as I could because most are not going to be hero assets, but in the background. Even so I tried to keep quality consistent across all of the buildings.
Particular decisions made:
Windows: a lot of them are very basic. Some will stay because they will not be close up, others will be replaced with models already in the engine. The texture is also temporary depending on how close to the camera they will be. Since we don't need to see inside every building, having a texture like this serves the purpose.
Similar textures: For the initial pass I reused a lot of the same textures as the buildings will be in roughly the same block. I'll need to have more variation when the time comes, but I focused on architecture and silhouette. This also made getting them out a bit faster instead of coming up with unique textures for each one, at least initially. As I place them in the game and see where they stand, I'll be reworking these to better reflect their location and condition.
Location: These buildings are based on existing structures that I have lived around most of my life, and I find when you look at the details, you can find some unique things. Some houses are clean and precise, while others are cobbled together, and that served my worldbuilding purposes here.