I agree that they SHOULD take collateral, but they don't need to be nerfed more than that. This IS the first major siege weapon in history, it makes sense that it's pretty powerful.
You can't use the history argument - cats in history WEREN'T that powerful. Just reducing walls represents their historical impact (and probably exaggerates it) - they weren't awesome battlefield weapons at all. In fact they weren't battlefield weapons period - because they could never keep up with an army. They were only used as seige weapons.
They are in the game simply because the designers couldn't think of a better way to solve the stack of doom problem. Unfortunately they mainly create larger stacks of doom as the best defense vs cats - which in turn forces you to build mainly cats to counter the larger stacks of doom.
I still like removing collateral damage capability altogether from cats. They would still get built to reduce walls and maybe for defensive combat, but I just can't see them as attackers.
Cannon are different - they were battlefield weapons, and by that stage of the game large stacks are the norm and a real problem. I still don't like the collateral damage though - it doesn't make sense to me that cannon excel primarily as an attacking weapon for assaulting a big army in a defensive position and are useless in defending that big army. I'd prefer that they were stronger in defense.
I'd like to see seige weapons used more in a defensive role - something like:
- When you attack a stack that contains a seige weapon, that stack gets a first strike from the best seige weapon before the best defender fights the attacker.
- Each such seige weapon can only get one first strike per turn. So your next attacker gets hit by your next best seige weapon.
- A seige weapon that has not moved can launch a first strike attack against a neighbouring unit (bombardment). This action can be used instead of moving or bombarding. The attack hits a random defender and does not endanger the seige weapon.
- Seige weapons cannot attack. They have a combat value if attacked or to survive bombardment, but they are like explorers and scouts.
With that approach then the seige weapons would be more useful for defense because the defensive stack of seige weapons will get the first attack in as the attacker moves close. Rapid attacks by two move units protect against this. And you would get an effective zone of control where a seige weapon in a fortified position would get to bombard attackers going around it.
It doesn't stop large stacks from being useful - but why should it - the bigger army should have an advantage. But bombarding a large stack may open a weakness in their defense that can be exploited with the right counter unit.