some balance suggestions:
-Make them stronger vs building then vs units
-give them a high miss chance vs units
If Balistae had
- extremely low attack versus all units except Catapults (units can dodge, Catapults are not that agile )
- low damage to buildings
- high damage versus buildings
- the missile they throw is a single, easily dodgeable stone with high attack versus units but is fired with an extremely low rate of fire (in my opinion it's hard to justify why a hard-hitting stone that is an insta-kill when thrown by towers should do little damage to units... with a low rate of fire, the effective damage they do to troops should be low anyway)
Balista >(snipes)> Catapult >(destroys)> Watchtower >(is a way better defence than)> Balista
Also, an "ammo meter" could be added to their interface: when it's depleted, they can no longer fire; also, they could get a button that allows the player to ask for Serfs to bring them ammo.
Catapults may use Stones directly; as for the Balistae, I don't know... maybe Tree Trunks?
Or maybe the Siege Workshop could be able to produce ammo from Stones and Tree Trunks, ammo that can't be stored in Storehouses nor bought nor sold at the Market?
(Having it as a special ware exclusive to Siege Workshops should be an easier solution)
And they could employ Recruits, maybe by simply making the Siege Workshop inhabitable by Recruits (with higher priority than Towers) when there are Siege Machines ready: when the Recruit enters the workshop, then the siege machine is actually deployed on the field.
Of course, then these siege machines could actually need to eat from time to time...