source-sdk-2013 icon indicating copy to clipboard operation
source-sdk-2013 copied to clipboard

SaveRestore is broken (especially in vphysics)

Open RoyaleNoir opened this issue 11 months ago • 9 comments

Many datadescs have not been updated to account for new data sizes in 64 bit, meaning that loading saves causes multiple issues, especially with physics objects. (A notable example of this is reloading a save with city scanners or manhacks causes them to fall out of the sky).

RoyaleNoir avatar Feb 19 '25 00:02 RoyaleNoir

one contributing factor to the error spew is bad CUtlMapDataOps code. Though most of the worst of it comes from vphysics, which is likely not handling the different pointer size correctly.

RoyaleNoir avatar Feb 19 '25 02:02 RoyaleNoir

Some footage of the more notable symptoms

https://github.com/user-attachments/assets/27bd9e3a-4098-47cb-af01-3a9c6380ac64

https://github.com/user-attachments/assets/c8cfddee-9957-4068-97c3-b452c3519776

RoyaleNoir avatar Feb 19 '25 02:02 RoyaleNoir

Curious, is this on SP (maxplayers 1) or MP (maxplayers 2++) mode?

AnOldLady avatar Feb 19 '25 08:02 AnOldLady

The game also crashes when restoring a save with a vehicle, such as the jeep, airboat, or APC. The stack trace leads to code within vphysics.dll when running CPhysSaveRestoreBlockHandler::RestorePhysicsObject.

Blixibon avatar Feb 20 '25 07:02 Blixibon

Curious, is this on SP (maxplayers 1) or MP (maxplayers 2++) mode?

Saving isn't normally possible in multiplayer. This is in singleplayer with cl_localnetworkbackdoor set to 0 as a workaround for the current issue with it.

Blixibon avatar Feb 20 '25 07:02 Blixibon

has this been fixed?

FriskTheFallenHuman avatar Mar 09 '25 17:03 FriskTheFallenHuman

The game also crashes when restoring a save with a vehicle, such as the jeep, airboat, or APC. The stack trace leads to code within vphysics.dll when running CPhysSaveRestoreBlockHandler::RestorePhysicsObject.

Does not occur with choreo vehicles despite models/blackout.mdl having a valid physics mesh

https://github.com/user-attachments/assets/f004078a-4953-4950-9457-fde6132020d8

pivotman319-owo avatar May 14 '25 23:05 pivotman319-owo

Physics constraints do not function under saverestore.

Image

Intended behavior:

https://github.com/user-attachments/assets/c9920c39-1434-41e6-a953-3114b1c9ea1a

Under saverestore:

https://github.com/user-attachments/assets/827d7abf-e521-414b-a5ee-77025bb54b2e

pivotman319-owo avatar May 14 '25 23:05 pivotman319-owo

Valve should pay more attention to Source 2013

bruhhhxyt avatar Jun 03 '25 12:06 bruhhhxyt