Right now am trying to make a handcuff detain system, right now the detainer gets network ownership of the detainee, and moves the detainee from the client. However there is no walking animation so I would like to make it use a :MoveTo() function instead to move the detainee from the client, however the :MoveTo() function doesn’t seem to work when you use it on the detainee’s humanoid from the client even though you have network ownership over them.
I don’t want to send a remote event so the server runs :MoveTo() as that would cause a delay + it would run a remote event on every frame which is baddd.
Done on a very short delay such as RenderStepped or something should teleport the character with no delay. And done on the server, since I remember that setting it is not replicated on the client-server boundary.
Move the player on server without any RemoteEvents, do the MoveTo() on server in a while loop with a 0.5 delay. If you really don’t want that, then just fire the event when the player is moving, so it doesn’t fire when it shouldn’t.
I’ve tried having the server handle the movement and that won’t work either as only the client has the most recent position, there’s a lil bit of a delay between what the server thinks the client’s position is and what the client thinks it’s position is.
To be honest I don’t think you can/should set the networkownership of other player’s characters, as they automatically get networkownership of their own character. Tbh I never tried it though.
You could send just one remote event to the server, and keep following from there. Actually since you set networkownership you can go from there instead without the remote event. Yes it would stream on every update (maybe doing so every heartbeat is a little overdone), but that would kind of happen anyway. Yes there is slightly more latency on the players side, but maybe you could still hide that with some local behaviour.
It would probably be tedious to make a clone of the other player’s character and use that instead. Not sure if this helps, but good luck!
In my opinion characters are one of the most rigid and least customizable things in roblox. Also why would u need the remote every frame? Plus the delay is there in every multiplayer game, can’t help it much. Just fire the remote everytime u want the player to move the npc then move the npc there on the server, won’t require it to be sent every frame.
Edit: nevermind misread your post, maybe u could go inside the animate script inside the detainees character then get the walk animation and play it?