Help with delayed ragdoll feedback for other clients

It’s certainly a nitpick, but I’m not too satisfied with the time it takes for ragdolls to replicate to other clients in my game:

On the left is the player that is being critically hit and ragdolled, and on the right is the player who scores the hit. It helps to look at one side each playback rather than simultaneously. There is nigh-instant feedback for the receiving player however a much more noticeable delay for the “instigating” player, and this slow feedback is really unsatisfying.

Currently, hit detection is handled on the client, resulting information is passed to the tool’s server script, and that script subsequently calls upon a ModuleScript to ragdoll the concerned player’s character. From there I just rely on Roblox to replicate the ragdolled character’s position, but it doesn’t seem to be doing a fast enough job in a case like this.

I’m curious to hear of any proposed remedies for this—I had originally thought to change the communication hierarchy to:

LocalScript → Server Script → Initiate ragdoll for the player on all clients

…but as I understand it this would only make the process of setting up the ragdoll to client-side and do nothing to help replicate position. Conversely, I had thought to let clients handle the position of a particular ragdolled player on their end temporarily, but I’d like to make this post first just in case.

Thanks in advance.

5 Likes

Bumping this—I don’t think it’s a particularly hard ask.

1 Like

I don’t know if this will cause any issues, but try activating the ragdoll on client and server side (client for smooth visual and server to replicate the visual to other players).

1 Like