I've read that modelsunderray is slow and can't do a thing in some places
(although I consider that BS) so I thought I'll ask the pro's about it instead.

I'm trying to write a script that both the AI and the Player will be able to
use to fire a projectile. What should I use to register that the projectile hit
something? I'm currently using modelsunderray to check in every frame if the
bullet has hit anything, is this a good choice?

If I wanted to make the projectiles do damage over an area (the nearer ground
zero, the more damage) how could I go about making this?

Thanks.