[Bug] When other players load an avatar faster than the avatar wearer, the expression parameters can have unintended values which may cause clothes to disappear for a split second
complete
Haï~
When other players load an avatar faster than the avatar wearer, the avatar's Expression Parameters can have unintended values from the perspective of those who have loaded the avatar.
This may cause the animator to execute remotely in a way that was not designed by the avatar author.
For instance, when all of the following are combined:
- the avatar have pieces of clothing enabled by default in the hierarchy
- the animator states are entering a default state that makes sure they are enabled on entry
- the expression parameters has a default value properly set in a way that the entry state will not transition to another state unless manually acted upon
...even when all of these conditions are satisfied, when the other players load the avatar faster than the wearer, then the Expression Parameters may be seen by others with an unintended value that is non-default, causing the animator to transition to other states after loading, which may disable said clothing.
This kind of behavior is invisible to the avatar wearer who may never be aware that this is happening. It puts a lot of burden onto the avatar creator to handle this edge case properly.
Log In
_blairx
saw this happen again yesterday though slightly differently, it showed someones avatar as the default clothing rather than what they had selected because it loaded for me before them
D
Docteh
_blairx: showing as default clothing in that time is ideal. But was for odd states.
_blairx
Docteh: true, my friend is just lazy and only had underwear on by default so it was less than ideal but yes definitely still better than what was going on before lol
ん
んなあぁ
_blairx: Did it load their correct settings after they loaded for themselves? If so, that's intended -- they won't send their parameters until they know what their parameters are -- and it should show the defaults for the avatar until then.
ん
んなあぁ
complete
GotoFinal
んなあぁ: still happens on live, seen multiple please with incorrect state and needed to rejoin to fix it, hide/unhide of avatar would do nothing. But it would sync the new changes - like if someone changed ther shoes I would see that, but the rest would be still incorrect.
ん
んなあぁ
GotoFinal: So far I haven't been able to reproduce this -- are there any avatars in particular you've seen this happen on that you're able to identify? I'd like to rule out state machine design. Thanks.
NEONTRY
んなあぁ: Unsure if it's the same issue, but I reproduce something similar with a toggle for a sound.
I have an avatar with a sound played if the avatar's nose is touched with a finger, but when changing avatar, the sound is triggered once without being triggered manually.
ん
んなあぁ
available in future release
This fix was included in the Open Beta release today.
ん
んなあぁ
bug fix in progress
Hi Haï, I addressed this recently and it should be fixed relatively soon.
Haï~
んなあぁ: 💯💯💯💯💯
zexc
A case to be added is bools and ints in the same position can be set incorrectly on load of the 2nd avatar that share same positions of the previous models.
NEONTRY
Having this happen as well, even more prevalent since my internet connection is slow, my avatar is loading with hidden mesh that should be enabled by default.
It takes me 30 seconds to download/load the avatar for myself for the first time, meaning that everybody in the same lobby as me sees the wrong state for that amount of time.
Workaround I have is to download the avatar in a private world myself first before joining other people.
D
Docteh
I have noticed some avatars have reversed how toggles are done, enabling a toggle in the menu turns the item OFF, I guess that is to work around this?
Gireison
Im noticing that issue more and more often. Especially if you are with a friend in a world and then switch worlds, where you are able to load everything faster than your friend (including the avatar), there may be a lot of unintended effects and states toggled. Said avatar is set up to have default clothing on, but spawns naked for me if im able to load the avatar faster than its wearer, but once its loaded for the wearer it immediately switches to the desired clothing.
Wild guess of mine is in that instance, that the avatar spawns with all values in the FX controller set to false/0 which may cause said effect in my case. Getting it to load with the values they are set to in the controller until the vrc parameters are synced might already help. Avatar creators would have a fallback at least if the system is messing up during loading again.