Goodmorning all, Perhaps this is impractical
But as an idea how's this.
Cities act like watersheds, Each square on the map produces a certain number of potential citizens per turn, and each square is associated with at most one town.
In GC2 each square was under a faction's control / influence. If the same type of equation was done for each city each square would be under control of one city, and if that control was larger than some minimum the square would produce a citizen for that city.
A huge city would have a Huge reach, and thus grow quickly, a tiny city would have a tiny reach and grow slowly, and a tiny city near a big city would not grow at all.
Also two smallish cities near each other would grow slower than a single city half way between them, because that single city would have a bigger grab area thus get all the citizens the two smaller cities were getting and more.
In short the growth rate depends not directly on the cities prestige, but on it's prestige relative to the cities around it. Make too many cities and you choke your growth rates.
Just a thought
Robbie Price