An artist named TuxedoPato (Martin, https://x.com/TuxedoPato) is currently developing a custom locomotion animation set for VRChat. During testing, we encountered a significant issue: the animation behaves differently on the local machine compared to how it appears to remote users. Specifically, the remote version appears unnaturally smoothed, losing much of its intended nuance.
We conducted several tests to isolate the problem. Below are key findings and comparisons:
  • Animation complexity directly affects the severity of the issue. Simpler animations show minimal discrepancy, while more intricate ones suffer noticeable degradation.
  • We tested three locomotion sets:
- Studio Moca’s Standard Motion for Women (https://moca-studio.booth.pm/items/5064825): Minimal quality loss, likely due to its relatively simple movement.
- VRSuya’s Wriggling Locomotion (https://vrsuya.booth.pm/items/4995578): Exhibited moderate degradation, especially in its exaggerated, erratic motions. I also discussed this with the creator, Levin, who confirmed similar concerns.
- TuxedoPato’s Custom Animation: Experienced the most severe quality drop. It features numerous subtle movements and a complete overhaul of the locomotion system, making the smoothing effect particularly disruptive.
Additionally, we observed that animation fidelity is significantly better in VR mode compared to Desktop mode, where the degradation is much more pronounced.
This leads us to suspect that the issue may be tied to VRChat’s polling rate, server tick rate, or network layer behaviour. It appears that locomotion animations are being transmitted over the network rather than executed locally on each client. Despite extensive testing, we were unable to bypass this network behaviour. Several community members echoed our findings, noting that animation data seems to be filtered or compressed during transmission—despite the fact that such data arguably shouldn’t require network mediation at all.
At this point, we’ve reached our limit. We’re hoping for insight into whether this behaviour is intentional, a side effect of network optimization, or a bug in how locomotion animations are handled across clients.
For testing purposes please check the following avatars that have the locomotion created and setup for your convenience.
Full version Locomotion test (walk, run, crouch, crouch run, prone, idle jump, crouch jump, prone jump).
Stripped down version (walk, run, idle jump).
Stripped down version of the locomotion system is downloadable from the link below. This file is stripped down and simplified heavily to narrow down the scope and reduce errors from other factors.
Video example between local and remote users.