Hello, I been dying and losing my mind over just making a simple projectile tool for over months
I have a tool that fires a remote event to a server script, the server script fires a remote event to all clients and also makes and moves projectiles in the server for the bullet hitbox. The local script that takes the server remote signal also creates and moves projectiles.
Green bullet: Client ------ Red bullet: Server
Everything works fine but the server projectile is so behind the client one. Which I think it will be a problem because if a player shoots another character, the damage will be done like 0.5 seconds after the bullet hits and that just doesnt seem like its fun to play.
Also this way seems to sometimes destroy 1 of the bullets before coming out of the gun because the server bullet touches with client and vice versa. Sometimes
My steps: Client → Server → All Clients
Client
Server
Client
I tried almost every other way, I tried BodyVelocity, BodyForce, AssembleyVelocity, Velocity, Heartbeat, and TweenService. TweenService was fine, the server projectile was very close to client but it didnt detected part.Touched until it reached mouse.Hit.Position.
So when i clicked behind a character, the bullet would go through the character and only detected a hit when it reached the mouse.Hit.Position
I tried to make everything in client and only let the server do damage when projectiles touched a character but I learned this way wasnt secure and couldbe easily exploited.
So what can I do? What other ways are left to move a projectile that smooth, responsive and secure from exploiters
I looked at so many devforms and youtube videos related to making projectiles smooth and secure but I still havent found a way that is secure and smooth