vrchat-community / vrc-oscquery-lib

OSCQuery library in .NET
MIT License
45 stars 6 forks source link

OSCQuery values have value 0 until changed at least once #61

Open fkrisi11 opened 1 week ago

fkrisi11 commented 1 week ago

Steps to reproduce:

I also tried making a new layer, with an animation state that had a parameter driver, setting one of these values to True, but that did not change anything, what so ever.

To fix such a value, the value has to be toggled in the game. After toggling it, it will show up correctly on the OSCQuery page from then on. So the bug is that wrong parameter values are being broadcasted from VRC, through OSCQuery. And this is not only broken for Booleans from what I have seen, but for other values as well, such as Int and Float parameters.

fkrisi11 commented 1 week ago

An update on this issue:

image

I added a layer with an empty animation (no keyframes at all), which transitions to another animation state in 1 second, since the exit time is 1. The second state, that the FX layer gets to after 1 second, turns "value1" to "True". This is reflected in OSCQuery correctly. This value is set to "True" correctly.

So maybe this is an issue with parameter starting values, that do not change after the avatar is initialized.

Here is a public avatar, where this can be seen: https://vrchat.com/home/avatar/avtr_d33cfc49-a608-4e93-9290-400c4e4976a1

All of these values should be true: image

image

(value1 is set to true by a parameter driver, and only that appears as true in OSCQuery)

fkrisi11 commented 1 week ago

Posted this on Canny as well, as this is a serious issue: https://feedback.vrchat.com/bug-reports/p/oscquery-broadcasts-wrong-parameter-values