Let us besiege cities. Not just attack cities, besiege them. Currently, city defenders get defensive bonuses for occupying a city, thus with two relatively balanced armies the city the attacker will always be at an disadvantage. This is a relatively straight forward and also very good concept. It SHOULD be hard to attack cities, attacking should require more/better forces than defending. In many respects I think the defensive bonus of cities needs to be increased, especially in the early game. However, any strategy should also have a weakness that can be exploited.
Currently, the only method attackers have to draw cities defenders out is pillaging resource tiles. However, if you're building your cities properly, you've snaked out your build to attach any outlying resources to your city defenses, making this method useless. An attacker has no reliable method of drawing out a defender that has attached all nearby resources to main city. Even if you've been unable to incorporate a certain resource, a proper build will leave the least valuable (or most easily reconstructed) ones outside. Go ahead and pillage my clay pit, I've still got 1000 materials stockpiled; I don't think I'll be running out soon. Thus the one method attackers have of drawing defenders out is nerfed, especially in late game when most cities will be properly built out.
Here is what I propose:
Allow attacking stacks the option to besiege a city, once besieged certain penalties start to kick in. For instance, the besieged city no longer contributes resources to the global pool, besieged city produces at much lower rate, besieged city does not grow or perhaps even begins to shrink, units stationed in the besieged city start taking a low amount of damage each turn, etc.
This mechanic could also be used to tame down the impetus mentioned earlier to unrealistically snake a city across miles of wasteland in order to get a resource inside you walls. For instance, make the damage per turn units stationed inside the city take proportional to the length of the city walls/# soldiers stationed in the city (i.e. the number of tiles on the exterior of the city for calculation purposes/number of soldiers in the army). Intuitively, soldiers forced to patrol miles and miles of walls on ever decreasing rations would begin to get a little weary and might not fight as effectively. Allow any siege weapons or certain creatures (dragons, earth elementals, etc.) the attacker has to increase these penalties.
This in turn leads to much more interesting strategic choices when faced with an attack. Do I march out immediately and attack to preserve my strength and production, taking the risk that I may ultimately lose the city? Do I let the enemy besiege my town and hope I can eventually produce enough units locally in order to break the siege? Do I bring in an army from another city or call on an ally to break the siege (Charge of Rohan in Return of the King anyone?)? Do I counter attack into my enemies territory at a different location to draw off the besieging forces? All the while I know that every turn I wait my soldiers are getting closer and closer to falling to a final assault.
This also opens up some interesting new building ideas: structures that help a town endure a siege. Granaries and wells reduce the damage taken by units and keep population growing, Warehouses that allow the city to continue to produce at normal rates, secret tunnels allow the city to continue to contribute a portion of production to global stores, etc.
Just an Idea... suggestions?