Ropes, Chains, Tracks and the like

Semi-recently The Last of Us was launched with some pretty cool rope physics.

This is something I would really like to see in a sandbox game, however, I can’t imagine a way to achieve this while being conscious about server performance. While some of the stuff you would use simulated ropes for can very well be coded in a more efficient way (pulleys, tank tracks, etc), it would certainly be cool to have the real thing.

What do you guys think? Is this something you would like to see? Can you see this being implemented in a way it wont be too demanding? Is it even worth the effort?

2 Likes

why tho

1 Like

Really the possibilities are endless… With realistic rope you could easily use it as:

  • A method to bind another player in a DarkRP setting.
  • Implement some form of grappling system to scale a wall/building.
1 Like

Depending on the particular requirements and how good Rubikon is, a rope can be constructed as a string of capsule phys-objects. I’ve seen this implemented with PhysX, and with some settings tuning it can perform very well as a “rope”, without putting a huge strain on the performance. The biggest issue here would probably be networking each individual segment to the client.

There’s probably other ways to implement that with some tight integration with the physics engine, but this is probably the simplest one.

2 Likes

The game seems to be using it just as a puzzle mechanism, I don’t see how it can be implemented anywhere other than a tool that makes straight ropes.
Best I can think of is chains that delimit an area stopping cars and maybe have them on fuel pumps, but that would get annoying to tangle yourself while refueling.

2 Likes

This is once again one of those features that should be implemented by the user and not added to the game by default, it’s very rare anyone needs such a thing. Not worth the development time.

1 Like

yea, networking a big amount of physics objects just to get one “thing” working is probably the biggest hurdle, and I don’t think it can be avoided. Maybe lower the rate at which it is networked and interpolate more aggressively clientside?

I think you are being too aggressive with that position. This is not some big character customization API or paid addons. This is barely a step up from a basic constraint. Granted, many gamemodes will not have the need for constraints at all, or the ability to spawn props even! However that doesn’t mean that those concepts shouldn’t be in the base game just because they wont be used by literally everyone.

The “base game” will not be one thing, FP will have some basic gamemodes for people to play right out the box. What I think is that this would be an interesting addition to the one that resembles a basic sandbox

It’s the kind of stuff that is just fun to play with, just like any other physics interactions or contraptions, you don’t have to think of an actual real world use case, just something you would like to try making with it.
For instance: I would try to make a realistic old-school spinning top (the type that gets spun up with a string), but if you think about it in a purely utilitarian way, the most efficient way would be to just ApplyAngForce() to the spinning top and be done with it.

Or hell, why make a spinning top at all? What’s the point?

The point is to have fun figuring stuff out and working around the limitations of the environment.

And the limitations of the engine might just make it possible to finally have some realistic ropes to play around with without hogging down the whole server.

1 Like

Ok, let’s make the tool and maybe garry will add it as default. I might give it a shot myself.

1 Like

Here’s some explanation on why such physics simulations are tough in a multiplayer game like S&Box.

1 Like

In my opinion, it will be possible, but it will 80% affect the performance in some way. (only if valve add it in source 2 as a simulation :sweat_smile:)