What do you want to achieve? Keep it simple and clear! i want to make the ping pong paddle move smoother and no delays, i want to make it like this:
(this video is tested on the studio so it moves smooth)
What is the issue? Include screenshots / videos if possible! i couldnt make the paddle move smoothly, and it always delay, heres the clip:
What solutions have you tried so far? Did you look for solutions on the Developer Hub? i already test it using set network owner BUT, Theres some welded and anchored parts, (i just wanted to make it move smoothly and no delays)
another info: i fire a remote event which pass the mouse hit position to the server, and the server is going to move the paddle, but it doesnt move smoothly and so much delays
It appears the reason that the paddle looks not smooth is because of network ping. You could handle the paddle moving on the client then firing it to the server every tenth of a second or so. Then you might interpolate (using tweenservice) the paddle so it looks smooth.
To test the networking in Studio theres a setting called “Incoming Replication Lag”
make the movements happen on each client, like so that all the server is doing is just saying the current position of the paddle. and then all the clients move the paddle to that position that the server said Edit: Basically what tornado said
Hm, i just used tweenservice just like you said and it is now move smoother, but the problem it still the delays, i think its because of the network ping, is there any way to fix the delay?
move the paddle on the client and send the location to the server every 10th of a second. then have the server fire the other person to replicate the position of the paddle
There’s always going to be a stutter when it comes to client viewing things happening on the server, or things happening on the client. The only difference for doing it on the client is it will only stutter when you lag.
So what you’ll want to do is for the ping ball whenever it’s positioned you will want to position it on the client instead. Use FireAllClients for this. But make sure the balls created on the server so everyone can see where it is currently.
Tween it for the receiving client only, there’s no need to put additional strain on the server when it isn’t necessary, the local player moving the paddle likely doesn’t need their own paddle to be tweened but the other client(s) will for the paddle to appear smooth (from their perspective), also try decreasing updates from every 0.1 seconds to every frame with task.wait() for example.
ok its been 4 days, i think i have found the solution, i still HAVENT tried the solution but heres the explanation, so i send the mouse location to the server, then fire it to all clients BUT, i dont move the paddle from the server so it doesnt stutter. then i change the paddle script to be a local script. if the ball hits the paddle, it will fire the server and moves the ball.
well your sending the mouse location to the server, if you don’t position it on the client right there then it won’t work. Also instead of using the ball hitting the paddle just set the ball’s network owner to the client trying to hit the ball