2 reasons:
1a) Horses in the classical age were used to move troops quickly around the battlefield. They weren't trained for a medieval-style charge (horses really don't like running headlong into a large group of people waving pointy metal things at them in an unfriendly manner). There were exceptions, and cataphract charges were devastating, but the average horse wasn't trained for it and the riders didn't have lances.
1b) In contrast, soldiers were trained to charge at their enemies and use their momentum (and their shields) to bash the enemy to the ground and disrupt their formation.
2) A bug in the RTW code means that charge values have little or no effect in combat. It is not the way that people assume it is (i.e. you DON'T just add the charge value to base attack value for the first attacks following a charge). Strangely, the armour value seems to have a large effect on the extra kills caused by the charge (maybe the RTW code is just calling the wrong section from the data tables).
Bookmarks