Originally Posted By: Longshanks
I wouldn't consider it a memory error.

This has to do with rigid body physics & collision detection. Along with how the physics are applied to complex meshes.

I imagine it starts at client ... the positions of the 2 meshes somehow break the defined physical bounds ... this updates the server state & then is propagated to the other clients when the world state update happens. This is why everyone sees the same "exploit" ... if it were a memory related error, I doubt it would propagate to the other clients. Typically in MMO programming, the clients recieve world state updates from the server -- basically the coordinates of the 2 meshes are screwed up and no correction took place.

It is a tough nut to crack & fix ... server side state correction would be the place to do it, but it has to be done sparingly ... the clocks required to test every object in state would just increase latency & if it passes the threshold of network latency, your basically fucked (rubber banding & other chaos ensues).

I have been down this road a time or two ... physics engines are brutal to program ... appling them to state is yet another hell of a task.

I wonder if AV wrote a home grown physics engine or used a commercial or open source one? I have been pretty damn impressed by it ... the gravity aspects are pretty solid and for the most part the collision detection is right on.

For example: Running part way up a tree on a horse, stopping & sliding back down is a really good example of some sophisticated physics & collision detection on multiple meshes. The bounds are small enough for the horse's hooves to make contact, the player's mesh bounds do not interfere, nor do they detatch from each other & rubberband back ... that is pretty friggin cool for a geek like me.


If I recall this was built from the ground up, or is open source, as it occurs to me during the extremely long development time that was the excuse they used for the time invested was to build a scratch physics engine, however it wouldn't surprise me if they gave up on that and used a open source, with might explain the hacks that are available.


I am Wrath, I am Steel, I am the Mercy of Angels.
mors est merces mea – death is my reward
morte in vitam non habet tenaci - Death has no grip on Life.
[Linked Image from i.redd.it]