[1095] Avatars with chairs cause players to be stuck on spawn/origin for late joiners
knah
Steps to reproduce:
- Players A and B join the instance
- Player A changes into an avatar with a chair/station on it, then back out of it. During this, player B sees them normally.
- Player B rejoins the instance and observes player A stuck on spawn (sometimes under/near/nowhere; maybe origin, world used for testing had them in about the same spot), spinning wildly, regardless of actual position or view direction of player A.
4a. If player A changes avatar into any other avatar without chairs, they will stay stuck.
4b. If player A changes avatar into any avatar with chairs, they will get unstuck for player B (late joiners will still see them stuck if they later switch to a chair-free avatar)
4c. If player A rejoins the instance (while in a chair-free avatar), others (including late joiners) will see them fine.
4d. If player A sits in a chair while stuck, they will be visible and audible from that chair. Once they get out, they're back to being stuck (tested with SDK2 avatar chair)
Tested with an SDK2 avatar as breakage-inducking (didn't test with SDK3 avatar), both SDK2 and SDK3 avatars breakage-fixing.
Screenshot of someone stuck (yoinked from https://feedback.vrchat.com/bug-reports/p/1095-rotates-sometimes-people-by-90-degree-to-the-left, looks close enough):
Log In
g6qwerty
They Broke this again with the IK 2.0 beta update forward.
When I have avatars that have VRCstation's on them my avatar lags or frezzes in place for everybody else, dose it worse when I have 4 to 6 stations on an avatar. Seats are on both Wrists, Shoulders, and Knees. Also I am using the Index with Index controllers, don't seam to break for users with other headset types though. Using latest SDK version too.
Zab
I believe PC VR players are still frozen for others in many Worlds on SDK3 Avatars (Current SDK), if using any Humanoid Rig with 6 Stations. Black Cat is an example world where this happens. I think it might be any SDK3 world, but I'm not 100% certain. The freezing for others, at spawn or otherwise, didn't happen if the user was on Quest (mobile) or Desktop mode.
Reducing to 5 stations fixes it too, or you can use 6 Stations/seats again if you originally uploaded with the March Avatar SDK3 2021.03.22.18.27 but reuploading with the old SDK now seems to be questionable. I did think an SDK change late in Spring was the cause, now I'm not sure what changed. I do know this has only been noticed by players on the current SDK who have asked me for help uploading in the past few weeks.
Also I have uploaded 2 examples:
June SDK with 5 Stations: avtr_a7dc5902-2d66-4148-838a-ce3110499243
June SDK with 6 Stations: avtr_fa6ea3e4-e104-4371-a623-1ac736cb5e5a
Fresh project with only Dynamic Bones, Xiexe Shader, and VRCSDK3. Basic example avatar is from the SDK, with 6 stations added, and no customizations to avatar descriptor or station scripts. Black Cat was the test world used. Old worlds from VRCSDK2 did not seem to have the issue.
Edit: Updated after more tests
knah
I did a few more tests on build 1097, and looks like there are a few more new issues now.
Required setup: Index controllers, SDK3 world.
Observed issues:
* SDK3 Avatar with 10 chairs on it just prevents you from syncing. Completely. You're frozen for all other players. If someone joins the instance, your state gets updated. Once.
* SDK3 Avatar with 3 chairs on it: works fine, until you open a radial puppet (or whatever you call the spinny slider in the action menu) - with it open, you appear completely frozen to other players (position, IK, slider value are all frozen). Closing the menu resumes the sync.
* Changing from the 10-chair avatar to a chairless SDK2 avatar can keep you frozen for others. Changing to the 3-chair avatar inbetween prevents that.
* No issues for late joiners as far as I can tell.
* Users without Index controllers are seemingly not affected even by the 10-chair avatar.
* In SDK2 world, seemingly nobody is affected, even Index controller users.
* Switching from index controllers to vive wands fixes sync issues (without world rejoin/avatar change). Switching back to index breaks sync again.
* If user A with index controllers used the avatar with 3 chairs and swaps into another chairless SDK3 avatar, then another user B in the 3-chair avatar opening the radial puppet will freeze both user A and user B for everyone.
Kaugumme
knah: you cant have more than 6 chairs btw, they get didabled at runtime and only the first 6 scripts will get enabled
knah
Kaugumme: true, four chairs on the 10-chair one get disabled. Still, regardless of that, the issue is still reproducible.
KillFrenzy
This issue also reliably occurs on an SDK3 avatar with 5 chairs or more while inside an Udon world. With 4 chairs, the issue can seem random.
knah
Appears to be fixed in 1097 based on light testing
Kaugumme
knah: didnt occur yet me either. This prob was the quickest vrc bugfix in a very long time
Asovrix
Kaugumme: What is even weirder is that this canny post hasn't even been seen by any VRC Team member? It's still open.
Kaugumme
Oi, nice observation. Can happen with multiple ppl at the same time btw
Asovrix
I observed that happening in Just B Club world, on top of the pool table, which requires having it at 0, 0, 0 coordinates to work properly afaik, so it is world origin.