Developer Update - 2 May 2024

Please bully SteamLink into adding this lol


SKELETAL INPUT??? LETS GOOOOO!!! No more stiff fingers!! Also, the in dev constraints look pretty cool. Speaking of pretty cool, the new home world looks excellent! I’ll be trying it out later. Thanks for your continued work on VRChat. I know thousands of us will rejoice being able to move our fingers more fluidly.

1 Like

I don’t know if I’m misinterpreting how it works but considering that:

  1. Instances are auto-created upon launch using a Launch parameter…
  2. Instances close when everyone leaves…
  3. and we can’t craft consistent instance links anymore?

That sounds like somebody would have to create a new instance link through a website each time they are going to play, and share it before others launch VRChat?

If I’m understanding this correctly - that sounds like it effectively kills a way for people to spawn into a shared+consistent home world instance through a simple launch parameter on Steam.
Because from my perspective - the whole point is that it’s sort of spontaneous and effortless: You launch the game and passively get a benefit of seeing people from your friend group because they either stayed in that world, or you happened to launch the game at the same time.

Sort of like crossing roads with a familiar face irl as you are going on about your day.

Update: [Response]


With the localization effort, is there any plans to make VRCPlayerApi.GetCurrentLanguage and VRCPlayerApi.GetAvailableLanguages functional? currently they return dummy data in Udon and it would be nice if these allowed for dynamically updating world UIs that are based on your language

Oh my god that new home world is gorgeous


I’m glad to hear hand-tracking will be rolling out to PCVR users in due time. Something I’ve been particularly hopeful to see for quite a while. However, will there be updates to the input system past what seems to have been demonstrated? I’m not so sure a polished version of what exists right now would provide a comfortable experience for most users.

Can we get a couple of generic (boolean) mappable input actions that don’t do anything but toggle an expression parameter in the user’s avatar? This seems like the right time to add that.


Nice :+1:


Will we be able to control inputs to avatars using raw inputs? If not this desperately needs to happen. Most controllers have more than one analog input that could be extremely useful for further dynamic control of things.

Touch controllers (most common) have both a grip analog and trigger analog. The grip analog controls “fist” weight, but the trigger analog does nothing. Worlds have learned how to use trigger analog, but this remains inaccessible to avatars. having inputs filtered through a gesture stencil is very silly, and you should be allowed to declare direct inputs for avatar control.

1 Like

I use a custom instance for my homeworld, that i use as a launch parameter which is a group+ instance. Nobody is there normally, nobody holds the instance open, will i be errored out when i try to start the game doing this?

I and some others do this on purpose so if we are testing stuff in homeworld or whatever, can close and relaunch straight into the exact same instance, and that place is always a fixed location.

How are instances stored in this new method? Does the instance get stored in a reference table somewhere even if nobody is present (not update state, just it existing)…?


Solid update! Love all the input updates! Doing great work!

So… instead of implementing group home worlds like people have been requesting for a while, you instead make changes to break the workaround that made it semi-possible?

I’m so tired of this, I genuinely just want to cry. Nothing we do matters and the things we create don’t mean jack in the end. It really feel like you guys just hate us and I can’t think why you would just screw us over like this other than not caring.

1 Like

Can’t wait for the Hand Tracking update! Will be nice to have a fallback when stick drift gets out of hand.

Does this mean I won’t be able to make custom instance names like KAZYBDAY anymore? :crying_cat_face:

beautiful work with the skeletal hand tracking JC :heart:

1 Like

it wont be though because the use case mentioned is generating the instance back upon launching the game, which seemingly wont work anymore, and since you arent going to be able to specify a static instance string there is no way to auto join the same instance name repeatedly on launch. This is a case of implementing a replacement feature here before killing off the ability to do this. Even if its something like having it generate a new instance ID anyway, but it would then link a string passed in launch parameters to that instance. Either that or open up the ability to have static instances tied to groups that you can join somehow upon launch

I can actually use index controllers in VRC now oh my goodness. That touchpad is just sitting there waiting to be used like Vive wand touchpad emotes!

*Edit: Also vive tracker buttons! Mirror & Earmuff toggles on my hip; wooo!

Local space constraints are such an awesome addition!

Just to make sure, are VRC constraints executed at the time slot as normal constraints? I’ve got a few setups with FinalIK components as children of constraints. Gonna be testing that along with any other niche scenario I can think of when this hits open beta. Can’t wait!

There’s multiple comments about this now, so I’ll respond in general, Re: Shared home instance via launch parameter.

You now have to explicitly create instances rather than them just existing for any arbitrary name, but instances still continue to exist long after the last person leaves (for about a year!) - so you can keep your link running for quite a while even with no activity. Only when generating a new instance (e.g. for a new friend group) you will need to open it via the website first and copy the resulting link, once. Just make sure nobody hits “Close Instance”.

TL;DR: Current approach won’t even break, actually.

As for an official Group Home feature, we also think that’s a really neat idea, but it currently has a lower priority on our long to-do list.


Any hope we could get these as OSC endpoints too?


The new hand tracking changes look really sleek, really excited to give them a try though I probably won’t be using them a lot until Steam Link adds proper support since Virtual Desktop has some bugs which makes it a bit annoying for me to use currently :sweat_smile:

How will switching hand tracking function for PCVR users? Will we be able to switch between direct hand tracking and controllers seamlessly, or use a mix of both (i.e. multi-modal support)?

In regards to constraints, would these work better with twist bone configurations? It’s a common problem that I’ve experienced when using rotation constraints with a ratio where rotating the arm too far will cause the twist bone to invert its rotation.

Another thing I’m interested in checking about is if the new solve in local space toggle make more advanced constraint setups more useful? As an example, in the past I’ve tried using single-axis limited position constraints in conjunction with proximity contacts to try to move a contact sender along a fixed line, as a method of trying to track wrist rotation. This worked somewhat, but the value of this would get thrown off easily if the wrist bent too much in any other direction aside from simple twisting.

Apologies for the wall of questions! Really excited for the changes either way!


Very good looking update, and glad I won’t have to create a third version of the same avatar for iOs.
Waiting for the return to see very poor avatars I use on mobile phone since week 1 Alpha. Please make it an option.