RopeConstraint Laggy on the server

I need help with a RopeConstraint, it looks fine on the client’s perspective but looks completely different to other players and server.

I’ve tried:

  • Messing with :SetNetworkOwner() to different client and to the server
  • Render the rope and cube on the client only (the cube was just levitating to where it was dropped for the other players)

but nothing worked

Anyone knows how to fix that?

1 Like

You’re going to have to use the second method:
Render the rope and cube on the client only (the cube was just levitating to where it was dropped for the other players)

And write the functionality to attach the cube and rope on each client

2 Likes

I’ve just tried this and now there’s a little issue, the physics only render when the player goes near other people’s cube

2 Likes

Unless the sync between each client to be the same is required, have each client render their own version of the cube and attach it on its own. Else, you will need a replication system to sync the cube from the player who controls the cube if the positions are strict.

Or, try this, I don’t know if it will work though: Have the cube’s network owner set to the one who is carrying it, and only that rope constraint will be enabled. For every other’s cube that the client isn’t carrying, try setting the rope to be only visual. The cube will only be controlled by the player holding the cube.

2 Likes

Your not the only one with this issue. I’ve noticed similar behavior in other games which makes me believe that Roblox has done something with their rope physics.

Perhaps they are planning something.

2 Likes

I’m just wondering how games like ‘My Snowball’, ‘Altitorture’ and pretty much all games that require RopeConstraints make them look so smooth

1 Like

The Altitorture game isn’t so smooth. Have you ever fallen with your friend in that game and looked at how you get thrown around? That’s because of ping and because Roblox’s physics are extremely random. Try using the methods I wrote above.

1 Like

Its client sided and has been made to look server sided.

Altitorture does its tech by creating a rope between both clients locally.

So if player 1 want to connect to player 2 with rope then they both create a rope locally to each other.

1 Like

I’ve tried it and despite the cube’s network being to the owner, the cube is still laggy for the other players

what would I have to do if I tried to replicate what altitorture did in my game?

1 Like

I setup a test game, try test it with multiple people my laptop can’t handle it I’m sorry:
Pets.rbxl (57.2 KB)

1 Like

I tried your place and just like in mine, the other player’s parts do not move, although I tried absolutely everything to keep it as simple as possible but what worked at the end was:

Creating a part that gets teleported to the player’s hand every frame then putting a RopeConstraint and Attachment in that part. Make the RopeConstraint’s Att0 the new Attachment in the part and the Att1 the Ice Cube (In my case). All this in a LocalScript.

1 Like

That’s great! You should mark your post as the solution.

1 Like