I was discussing procedural city generation with a graphics person awhile back. One of the things we realized is that procedurally generated cities almost always feel "wrong" because real life cities generally have a mishmash of dozens of general architectural "styles" based on various quirks of history.
One example: in Cincinnati Ohio, working class houses in certain neighborhoods have stained glass windows. It's usually only one or two small ones, but they're there in certain neighborhoods because of a stained glass artisan "scene" that arrived on a wave of German immigrants. Another quirk about Cincinnati: there are lots of houses that are quite narrow for their plan area, because taxes were based on the width of the building on the street. There are quirks like these that cause a city to be a geographically differentiated patchwork of different styles.
Where can I learn more about the forces underlying the topography of cities? I find the connection you described between house width and taxation to be fascinating.
Have a look at the history of Edinburgh - things like geology (volcanoes, glaciation, crag and tails), city walls, wars, planned development etc. have all had a huge impact on this glorious city. :-)
Funny. I had almost the same discussion over in the UK. We decided that the most interesting city engine would be one that incorporated time driven development and the changing categorisation of land area.
I'd still love to try and write a game that included time travel and the results of historical changes on a modern city.
One example: in Cincinnati Ohio, working class houses in certain neighborhoods have stained glass windows. It's usually only one or two small ones, but they're there in certain neighborhoods because of a stained glass artisan "scene" that arrived on a wave of German immigrants. Another quirk about Cincinnati: there are lots of houses that are quite narrow for their plan area, because taxes were based on the width of the building on the street. There are quirks like these that cause a city to be a geographically differentiated patchwork of different styles.