I am designing a world where there are huge animals, both in the oceans and on land. For ease I'm just refering to them as dinosaurs, but obviously they aren't... They're a fictional class of animals. But for the purposes of this thread they are like dinosaurs. The civilizations in this world are primitive... their heaviest weapons being catapults. But I don't think catapults are fast enough to take down large fast moving predating dinosaurs. Their skins are too thick and strong for spears. They need effective ways to take down dinosaurs... what could they invent?

I can think of a few ways to take them down, like luring them off a cliff or a pit with tree sized spears, burning down a forest with them in it. Heavy ballistas. They take time to deploy though. They aren't very effective if you run into a pack of t-rexes in the field though. Research shows even huge dinosaurs hunted in packs. Ropes between trees could fell them if they're small enough like t-rexes (they'd fall hard and if that isn't enough into huge spears). The huge slow ones can be felled with catapults.

As for the defense of settlements, moats with water or filled with spears and mounted ballistas could come in handy. Settlements bordering on the wilds would need to be effective at repelling or killing them.

Can you guys think of any other ways?