Захватить город без военных действий конечно же можно но все равно это будет намного дольше, ведь для этого необходимо будет сначала нанять воителей и соглядатай, именно данные юниты могут очень быстро понизить порядок в городе также именно понижение порядка как раз приведет к тому что там может возникнуть бунт. И вот вам необходимо обязательно подвести армию и в тот момент когда город начнет бунтовать вы должны будете атаковать и захватить его.