-NPC\'s are the \'basic\' low-rank soldiers
Perhaps there could be ranks within the ranks of NPCs, such as in RTS games. As in terms of advancements of units, such as in Age of Empires II. The basic unit is a Militia, but you can upgrade it to Men-at-Arms, and then Long Swordsman, Two-Handed Swordsman, and finally Champion, after you advance to the required age and pay the required price. Something like that could be used to determine how powerful NPC soldiers are, such as Spearman, Bowman, Ranger, and Troll.
-Some invading NPC army lays seige to City A
-City A is a player city
If City A is a player city, I am assuming that there are at least a certain amount of players in the city at the time of the siege. Also, perhaps NPCs can use siege weapons. Could there also, perhaps, be traitors among the people in City A, so that they open the gates to the NPC army?
-Numerous small quests are formed automatically for the seige
-The siege is scheduled on the website
-Players may operate seige weapons, experience from them is shared
As for the siege being scheduled on the website, perhaps that can only happen if a player happens to find that information. I mean, it would be more realistic for someone to know when the enemy attacks if they have spies, not a big message saying \"Hi! I\'m Bob. I\'m going to attack you with a big army of Trolls! Good-bye!\" Surprise attacks would be fun.
As for numerous small quests, I like the idea. If someone wanted to betray their fellow city-mates, then that could be a quest. \"Open the gates at 12:30 AM.\" Or \"Steal enemy plans.\" Things like that.
As for operating siege weapons, as I said before, perhaps invading NPCs can also use them. Also, the ability to \'sabotage machines\' could be implemented.