I think that was the method Ephialtes' raycasting sniper rifle used on his server, but occasionally normals/etc. miscalculated (engine problem?) and caused the projectile to miss at certain angles.
I was only using the script for tool weapons (Capture The Flag items and the Police Baton), but when I gave the script to Bushido to test it seemed to work for his 'Metal Slug' weapon fine at long ranges when tested.
If I had the entire Projectile::onCollision or miniGameCanDamage functions I could do the can damage tests reliably, that's the only problem with it. Damage is handled in mostly the same way as
Projectile::damage anyway, since it scales with the using player, can't damage more than 100*scale/below 0 and calls %obj.damage() in the right way, including damage type. Radius damage is fine with the projectile explosion doing that automatically.