It helps on determinism for sure but there are still some issues related to that which are hard to solve. In my testing, if you truly fix the timestep for physx on UE4, you get deterministic sim at least on same computer (would assume it would be same on all computers that run the same CPU architecture at least). But… that only applies when you start the whole sim at the same point.
In multiplayer this isn’t true and even resetting the rigidbody to exact same location during the sim (even if you did it directly from physx) will somehow throw the determinism off on collisions. It’s enough that the values are off by the last digit (single precision floats used by ue4/physx are accurate to ~7.25 digits) and then the objects can bounce in completely different way. I never found the core reason why physx can’t set the exact same values (it you run set and get few times, they start to drift). Also since it’s multiplayer you are talking about, you’d usually want to quantize the transforms you send, which will be way worse than just losing the last digit. I’m not sure if you can even get the multiplayer collisions fully deterministic with physx unless you sacrifice some of the simulation fidelity or use lots of bandwidth.
And since we are talking about determinism… about that enhanced determinism flag. It doesn’t make things more precise, it only guarantees the physics engine’s internal solving order to remain the same between the rigidbodies if you add more rigidbodies to the sim while the sim is running. If you start the sim the same way on each computer, that setting probably does nothing (other than consume more CPU).