The below stats are from brandybarrel's FAUST for M2TW v1.2. I have added a metric labeled "10-turn cost," which gives an idea of the true total cost of a unit, based on a unit life expectancy of 10 turns.
Code:
Artillery Cost upkeep 10-turn cost Att_Bldg Att_Men Ammo Range
Culverin 800 250 3300 230 65 30 425
Cannon 870 250 3370 250 65 30 380
Serpentine 700 150 2200 10 65 36 450
Basilisk 1080 400 5080 330 65 30 450
I have limited exposure to artillery, since my M2TW long campaigns have always ended before I or my opponents get any gunpowder units at all. However, I have used artillery some in Kingdoms campaigns, and have read a lot of threads on the subject. Here is my 2-cents worth:
The extra range on the culverin over the cannon is worth the very slight hit on attack power vs. buildings, since I usually use these as anti-personnel weapons, and often against units inside settlements. But the lower cost and excellent range of serpentines make them a much better buy than either of the former two, for the anti-personnel mission.
For anti-building: the Basilisk is not the best buy if you figure simply on fire power per florin. It would be more cost effective to use 3 cannon, for 10110 total cost (or even 3 culverin, for 9900), which have slightly more total fire power against buildings and 50% more firepower agianst personnel than 2 basilisks (total cost = 10160). HOWEVER, if you are going after tough opponents in fortresses and the like, using the 2 basilisks opens up an extra slot in your stack (for another basilisk, if you please).
So, my rankings, from best to worst:
Most Cost-effective Anti- personnel Artillery
Code:
1. Serpentine
2. Culverin
3. Cannon
4. Basilisk
Most Cost-effective Anti-building Artillery
Code:
1. Cannon
2. Culverin
3. Basilisk
(Serpentine is so bad it is not even ranked in this list)
Best general purpose spam artillery: Culverin
Best piece of artillery to have for assaulting Fortresses and Citidels: Basilisk.
I hope that helps.