18-09-2026, 03:54 PM
(This post was last modified: 18-09-2026, 03:59 PM by josemendez.)
Hi!
Short answer is you can't. What you are asking for is a rope that:
A) Can prevent the players from separating.
B) Does not apply any force(s) to the players.
These two conditions are completely at odds with each other. To keep the players from separating, the rope *must* be able to exert force on them, and it can only do so if it has some mass (since F = ma, zero mass means zero force).
What you are really asking for is a system that constrains the player's positions relative to each other, without directly affecting their velocities. This is unphysical by definition, so you can't rely on "accurate" physics to do it: you must fake it, see below.
Raising player mass will start making the acceleration due to a force progressively smaller (a = F/m, if you increase player mass, player acceleration due to the forces exerted by the rope is smaller). Even if you raise the amount of substeps/iterations really high, at the limit of mass = infinite (that is, a kinematic rigidbody) no forces will be able to affect the player at all. So this is not a good direction.
One idea that comes to mind is to have both your players be "kinematic for particles" (checkbox in ObiRigidbody), this makes their mass infinite as long as the rope is concerned so they won't be affected by rope forces. Then measure the separation between the players or the rope's strain (currentLength/restLength), and once it exceeds a threshold you turn "kinematic for particles" off. A similar idea would be to drive player mass using rope strain, relating both via a curve: the larger the strain, the smaller the players' mass.
Either option allows the rope to have zero or near zero influence on the characters when it has slack, but as soon as it becomes taut it will keep the players from separating.
kind regards,
(18-09-2026, 06:38 AM)Caleb1534 Wrote: how do I make the rope's mass negligible when it comes to dragging down on the players, [b]allowing the rope to be a only a distance restraint?
Short answer is you can't. What you are asking for is a rope that:
A) Can prevent the players from separating.
B) Does not apply any force(s) to the players.
These two conditions are completely at odds with each other. To keep the players from separating, the rope *must* be able to exert force on them, and it can only do so if it has some mass (since F = ma, zero mass means zero force).
What you are really asking for is a system that constrains the player's positions relative to each other, without directly affecting their velocities. This is unphysical by definition, so you can't rely on "accurate" physics to do it: you must fake it, see below.
(18-09-2026, 06:38 AM)Caleb1534 Wrote: Raising player mass seems like a good direction, but then it really starts to break the rope/ make it stretch and clip through colliders. Is the only real solution to that trying to raise the sub-steps of distance constraints and collisions really high?
Raising player mass will start making the acceleration due to a force progressively smaller (a = F/m, if you increase player mass, player acceleration due to the forces exerted by the rope is smaller). Even if you raise the amount of substeps/iterations really high, at the limit of mass = infinite (that is, a kinematic rigidbody) no forces will be able to affect the player at all. So this is not a good direction.
One idea that comes to mind is to have both your players be "kinematic for particles" (checkbox in ObiRigidbody), this makes their mass infinite as long as the rope is concerned so they won't be affected by rope forces. Then measure the separation between the players or the rope's strain (currentLength/restLength), and once it exceeds a threshold you turn "kinematic for particles" off. A similar idea would be to drive player mass using rope strain, relating both via a curve: the larger the strain, the smaller the players' mass.
Either option allows the rope to have zero or near zero influence on the characters when it has slack, but as soon as it becomes taut it will keep the players from separating.
kind regards,

