I've noticed that the only time a walled city of mine ever gets attacked is when the AI has an Onager. I find this pretty boring because there are other siege weapons in the game and for the AI it's Onager or bust. I've never even seen the buildable siege weapons because of this. They'll have superior numbers but they'll never attack unless they have an Onager.

I'd like to be the defender of a walled city with barbarians trying to climb the walls not using pre-catapults.

The AI would rather siege my city and wait it out than to ever attack even with 4 stacks.

While we're on the topic of Onagers, were they even realistically used by anyone other than the Romans? It seems incredibly unrealistic for "Mercenary" Onagers to just be roaming around and too advanced for barbarians to even make these things. I think if barbarian factions have Onagers at all then they should be right at the end of the tech tree. Don't even get me started on large Onagers.