Items still collide correctly with vehicles now, but turned off actual local-space parenting for all but the trains. It seems to work better in the other vehicles (HAB, scrap heli, modular car flatbeds) if the items are kept in world space and therefore allowed to roll around freely
- Trains now repeatedly check for ability to couple while colliding. Previous if the coupling failed for any reason on initial touch, it wouldn't try again until backing off and retrying.
- Two fixes for trains colliding with other trains up against a static object.
When a rigidbody is parented to another rigidbody, the child rigidbody actually inherits the velocity even while parented. Therefore the forced velocity change in OnParentChanging was actually doubling-up the velocity in those cases.
I've set it to NOT adjust the velocity in the case of the parent having its own rigidbody, and that's fixed it, apart from a remaining momentary jitter when entering and leaving the trigger (as seen here when the minicopter transitions across the wagon's trigger: https://files.facepunch.com/BillB/1b2311b1/Unity_qLfRWyks5e.mp4). I wonder if it's now a client interpolation issue.
Disable vehicle parenting on workcarts and locomotive (already disabled on wagons). We shouldn't really have this enabled unless we can get physics velocity to translate properly when entering/leaving the parenting zone.
- Added methods to check all, or individual, train track splines in prefabs for potential tangent issues.
- Fixed up the dodgy tangents in four train tunnel prefabs.
- Removed the temporary workaround for the broken ones, and some now-unused methods.
- Regenerated spline data.
- Some formatting.
One remaining problem with the updated splines joining up so this can't go on Main just yet.