What if specialization happens dynamically based on what you build in a city? If your city is largely filled with economy-based buildings the city will be superior at trade; or if it's filled with military structures units will be produced faster, or training will be more effective.
Actually this reminds me of a discussion we had a while ago in another thread... let's see if I can find it. Nope, I failed. Anyways, the idea was that building multiple buildings from the same sector (like economy, military, production, etc) is more than just the sum of the parts. Basically, that there could be synergy between different types of buildings from the same sector. The result is that specializing cities (in a completely dynamic way) is more efficient than making them rounded, and you get to choose exactly how specialized to make them.
When you mentioned the first part, I was already thinking along the same lines, and after reading, I went looking.
Found it! https://forums.elementalgame.com/330349/page/1/#1944404
Further on the limited spots, specialist cities should get some form of bonus. So for example you build economy heavy buildings (market, bank, etc) then that city has a trade bonus. A city with barracks and different training grounds and a war academy should give an experience bonus to military raised there. And so on.
That would help to increase the strategy around what to build there and also make war more strategic in what goals you want to fulfill, such as taking out your neighbours trade cities to cripple their economy.
How about putting each building in a certain "ballpark"? Let's say that we have two big ballparks, Military and Economical (for the argument).
Barracks, Bear Stables & War Academy are all in the military ballpark.
Marketplace, Stock Exchange, & Trading Post are all in the economical ballpark.
Mercenary Post is in both the economical and the military ballparks.
Every time you have 1 economical building, all economical buildings unlock an extra bonus. Marketplace gives +10 Economics, but if you build another Marketplace, both marketplaces now give an -extra- +2 Economics. If you build a Trading Post (+1 trade route), you now have 3 economical buildings, unlocking another +1 extra economics from each of the marketplaces (bringing all marketplaces up to a total of 13 each). But hey, you also have that trading post, that now gives +1 trade route for every economic building, so now it gives 3 trade routes, instead of 1!
A Mercenary Post would count as two building types for the purpose of determining this; One in the military ballpark, and one in the economical ballpark.
Sort of like "item" sets, but with buildings, and for cities instead of heroes.
Edit: All numbers are of course completely arbitrary, and only used for the sake of argument. I'd want to keep them quite minor, however, to avoid having to pigeonhole cities. Often, you -want- a city to be a little bit of everything, so that a single city isn't your first and last line of defense, or you end up with a nation of poorhouses if you don't do the 'X'-tactic.
There's also the potential to give one civilization the special power to specialize, by giving them double the benefit from sets of buildings.
Aaaand back to this thread:
[...] The result is that specializing cities (in a completely dynamic way) is more efficient than making them rounded, and you get to choose exactly how specialized to make them.
I think that a bit of the point is that, depending on how you do this, it'd allow you to do either. Thanks to synergies, just a few military buildings could go a long way (thanks to the support they give eachother), even if a city is predominantly economic, instead of 1-2 military buildings carrying on a fading existance in a world of commerce.
Edit: I LOATHE quoting on these forums! Why won't it EVER work properly?! Nyyyaaarrrrrrgh!