How should I secure a damage RemoteEvent?

I have a projectile that damages players. I do not want to handle the projectile’s physics on the server or on the target client because it will be delayed or sometimes inaccurate.

In short, I created a RemoteEvent that damages players with the parameters FireServer(target, damage), but this method is extremely abusable with exploits. I can not use raycasting because the projectile is affected by gravity.

How could I make it more secure, similar to games like Arsenal?

1 Like

Set up checks, such as Sanity Checks, and add some code to determinate whether the remote fire is legal.

Use FastCast, it’s a little complex if you don’t understand module scripts but it’s a good solution.

Or you can use ROBLOX physics objects, because those are generally accurate depending on what velocity object you use.

Do not trust the client with anything.