Abnormal WeldConstraint replication behavior with tweening welded parts

I’m currently trying to tween welded parts on the server. However, it seems that the server and client aren’t seeing the same thing. This seemed to be an issue long ago, and I’m not sure if this is an engine bug or just my doing. The server sees the correct behavior, but the client does not.

Is there a way to resolve this, or at least any loopholes?

It seems like the client starts off with the wrong weld positions even before the tween. Is anything else done to the stretcher? Because of how welds replicate, if the parts get off from the welds on the client, it won’t ever be fixed.

Do you set the position or orientation of the welds on either the client or server? I would use legacy welds and tween the C0/C1 instead of trying to use position and orientation, since those aren’t relative, or use a RigidConstrant with attachments and tween the attachments, since attachments are relative.

If tweening is giving you problems, animations replicate really easily. You could add an animation controller to the stretcher and just have it play an animation to do the same thing but perhaps with fewer problems.

It doesn’t start off like that, sorry I could only fit so much in one video. It starts off normal, and when I tween it, it goes to that weird offset position. I’ll try using legacy welds and an animation controller and see if that works as well.

1 Like