Developer Update - 22 September 2022

Welcome to the Developer Update for Friday, September 22nd, 2022!

If you’d like to catch up, you can read our previous Developer Update from Sept 15th.

Spookality 2022

Spookality is starting up soon! We recently made a tweet announcing that the Spookality Jam will begin on October 1st, and close on the 21st. More details pending!

If you’re not familiar, Spookality is a yearly VRChat Jam that coincides with the month of October, canonically the scariest month out of the year. “Jams” are very similar to “game jams”. These are events where we present a theme, a start time, and an end time, and encourage users to create content in line with some set of rules or theme! We’ll showcase the submissions after the Jam is complete so everyone can enjoy it all.

Keep an eye on our Twitter account for more details as they release.

Just living in the Database

We’re going to be doing a bit of database clean-up in the next 24 hours, but wanted to let you know. This clean-up will be accompanied by new behavior that most won’t notice, but wanted to tell you anyhow!

After the clean-up operation, friend requests older than a year will be automatically removed. The first run of this cleanup will also include “ignored” friend requests, which are friend request notifications you’ve dismissed (but not declined) on the website.

For those that use friend requests as a way to prevent repeat requests, don’t worry, we hear you. We have future changes that should help address this problem. (no ETA just yet, but trust me, I’ll need them too)

However, in the mean time, this is a required clean-up to ensure the continued smooth operation of VRChat.

Live Beta Updates

Since the last Dev Update, we pushed a few Live Beta updates! Here’s the changes we’ve made in some previous builds.

Build 1240 (16 Sept 2022)

Client

Changes since build 1238

  • Fixed an issue where the User Details menu would show the wrong trust rank for other users
  • Fixed some issues with the Quick Menu to stop it unintentionally scrolling
  • Added back the “Current World” button on the MM World’s Page
  • Gesture toggle reverted from a notification back into an icon
  • Improved the instance owner display-- in public worlds, it now properly shows the world author as the instance owner
  • Fixed an issue where Texture Memory would not appear in QM Avatar Details
  • Improvements to fix an issue where multiple menu pages / tabs overlap each other at the same time
    • We’re still testing to see if these fixes have resolved the issue, let us know if you still notice it happening!
  • Social menu Friend Locations: Update location header text to show instance type instead of number of people in instance
  • Updated some backgrounds with higher resolution versions
  • Updated the placeholder text on the Search Bar to be centered
  • Updated the name of the noise gate slider for clarity
  • Fixed an issue with the Status button not collapsing correctly
  • VRAM and disk space usage optimizations related to new main menu textures
  • Fixed an issue where click SFX would play before the click was registered in the new Main Menu
  • Adjustments to the left sidebar to reduce the size of the Header Icon
  • Fixed an issue preventing some characters from not displaying properly in new UI, nameplates, etc
  • Fixed an issue where too few search results were being shown
  • Fixed a few display issues with the avatar preview

New Changes, Features, and Fixes

  • Moved the Quick Menu’s Microphone settings and behavior improvements to the main menu
    • Added an option to enable PTT “Push to Talk” in VR! Enable it via the Settings menu
    • Added a three-way toggle to adjust the mic’s setting when joining a new world
  • Safety & Security Improvements
Build 1241 (20 Sept 2022)

Client

Changes, Fixes, and Improvements since build 1240

  • Added different tracker models for Full Body Tracking
    • You can toggle between 4 different values in the Quick Menu’s Gear tab
    • “Sphere” - Default, same as Live. Uses the good 'ol Unity Sphere
    • “System” - Uses SteamVR’s “Render-Model” for your device. This usually looks like the physical tracker!
    • “Box” - A rounded cube with colored sides to indicate XYZ axis information
    • “Axis” - An indicator with long “spikes” tipped with colors to indicate XYZ axis information
  • The search page will now show the total number of results in the header instantly instead of incrementing as the page is scrolled
  • Added account merge / upgrade process into the new Main Menu
  • Enabled Slider Snapping for the Main Menu
  • Improved error messages when joining an instance fails instead of just telling you that you aren’t allowed to join
  • Improved the Quick Menu tab tooltips
  • Fixed a bug where worlds using Audio filters would have broken voices
  • Fixed an issue where declining friend requests didn’t remove them properly
  • Fixed the “Go Home” button that appears during loading
  • Fixed search in Main Menu returning too few results
  • Fixed menu background glow moving around when pointing at world UI
  • Fixed VRCat floating in a rather intimidating fashion when quickly swapping hands on the Quick Menu
  • Fixed article links visually breaking in the Help section

Known Issues

  • Sliders still go rogue and adjust unexpectedly sometimes
  • Logs are a little spammy
  • Article view:
    • Links in VR are not working for inline text, only the buttons at the bottom of the article
    • Link in “Send join request” is not working on desktop

We’ve got some other changes and fixes on the way, which we planned on getting out today with build 1242 but it failed QA. :frowning: We’ll try again tomorrow! Keep an eye on the Open Beta announcements channel on our Discord.

There’s still a lot of feedback and bug reports for us to work through. We’re keeping a very close eye on the Feedback boards. We’re having to be careful not to overload the engineering and development team working on the UI, as there’s just a whole lot of items. We’re spending a lot of time filtering these, scoping, and prioritizing so we can get the best results from invested development time.

Thanks for your continued feedback, keep it up!

Ongoing Development

Moving a Bunch Of Options Out of that Dang Gear Tab

You might’ve noticed that the Quick Menu Gear tab is way, way overloaded. We chose to shoehorn in UI for a lot of features that were ready, but waiting on the Main Menu. We’ve finally got room now, so we’re doing a first pass of moving (or in some cases, duplicating) those options into the Main Menu.

All of these changes will be in the next Live Beta build! We tried to get it out to Live Beta today, but we ran into a blocking bug where the Tunneling options were forced on for Desktop mode.

A wall of text
  • A WHOLE BUNCH of options, buttons, settings, and toggles have been either moved or duplicated into the Main Menu from the Quick Menu!
  • MOVED:
    • Fallback Icon: removed from Quick Menu settings, now in Main Menu/Settings/User Interface/Nameplates
    • Tooltips: removed from Quick Menu settings, now in Main Menu/Settings/User Interface/General
    • UI Haptics: removed from Quick Menu settings, now in Main Menu/Settings/User Interface/General Settings and also Menu/Settings/Accessibility/Haptics
    • Avatar Touch Haptics: removed from Quick Menu settings, now in Main Menu/Settings/Accessibility/Haptics
    • Slider Snapping: removed from Quick Menu settings, now in Main Menu/Settings/User Interface/General
    • Gesture Icons: removed from Quick Menu settings, now in Main Menu/Settings/User Interface/HUD
    • Home Instance Type: removed from Quick Menu settings, now in Main Menu/Settings/Comfort & Safety/Safety
    • Auto Disable Cloning: removed from Quick Menu settings, now in Main Menu/Settings/Comfort & Safety/Safety
    • Portal Prompt: removed from Quick Menu settings, now in Main Menu/Settings/Comfort & Safety/Safety
    • Portal Mode: removed from Quick Menu settings, now in Main Menu/Settings/Comfort & Safety/Safety
    • Clipping plane distance: removed from Quick Menu settings, now in Main Menu/Settings/Performance/Advanced Graphics Settings
    • Particle Limiter: removed from Quick Menu settings, now in Main Menu/Settings/Performance/Advanced Graphics Settings
    • Mirror Resolution: removed from Quick Menu settings, now in Main Menu/Settings/Performance/Advanced Graphics Settings
    • Clear Local Profile Data: removed from Main Menu/Settings/Performance, now in Main Menu/Settings/Debug
  • DUPLICATED:
    • Responsive Menu: Still exists in Quick menu, additionally added to Main Menu/Settings/User Interface/General and Menu/Settings/Accessibility/Comfort
    • Chatbox settings: Still exists in Quick menu, additionally added to Main Menu/Settings/Accessibility
    • Display & Visual Adjustments: Still exists in Quick menu, additionally added to Main Menu/Settings/Accessibility

Avatar Haptics

We’ve done some iteration and fixed several issues with the Avatar Haptics system. First off, we made it compatible with a lot more avatar hand rigs. It turns out that, while the system works fine with hands that have odd proportions (think a furry avatar paw vs an anime character’s hand), it didn’t work so well with completely unexpected rigs or “wow, how does this even work properly??”-level rigs. So, we did some tuning.

We’ve also improved the stability of the feature overall.

Notably, Avatar Haptics is not supported on standalone Quest because it causes significant performance issues related to the render pipeline and how the Quest GPU operates. We are re-assessing how we might best enable this feature on Quest standalone, but for now, it will not operate there.

Improved Tracker Models

This is already out on the Live Beta!

We got some feedback that the tracker models were too spiky and uncomfortable. So, we implemented a bunch of choices you can swap between!

  • Sphere: the classic default you know and love
  • System: the SteamVR “Render-Model” for the device (usually looks like the physical tracker)
  • Box: a rounded cube with colored sides to indicate xyz axis information
  • Axis: an indicator with long “spikes” tipped with colors to indicate xyz axis information

Here’s Kung showing them off.

World Discovery

When we launched Main Menu 2.0 into Live Beta, we hadn’t quite fleshed out our improvements to World Discovery. Feedback from world creators showed that we definitely needed to step things up before release, and we agreed!

So, we’ve been working on a few things to help improve discovery overall.

“Explore Worlds”

This name-not-final “header” section of the Worlds tab in the Main Menu shows a subset of snippets of categories within it! This gets more categories above the fold, giving us more options to tweak the “first look” view of the Worlds menu.

The order/presence of categories within the Explore Worlds section as shown below is not final and will change. The images are mock-ups and may not represent worlds actually in the displayed categories.

Like the other categories, you can compress this down with the grid view.

The contents of the Explore Worlds section is configured by VRChat similarly to the rest of the World categories, allowing us to experiment with different layouts and features to see what works best.

This new section will be releasing into Live Beta at some point before the Main Menu makes it to Live.

“Trending” and “Heat”

In VRChat, the first category in the menu is the “Trending” category. It’s sorted by the “heat” of a world! So, what’s “heat”?

World creators know this metric well. It’s a fairly rudimentary calculation of how popular a world is, but with some measures in place to reset the heat value every once in a while.

Honestly speaking, Heat isn’t all that hot anymore. It did well enough back when it was created (years ago, at this point) but it no longer resembles anything one might describe as a good “Trending” metric.

As such, we’re spending time to create, refine, and implement a brand new Trending algorithm. This change won’t require any client update, so it may happen at some point Soon™ going forward.

…actually, now that I’m writing this, I can’t really tell you anything except “its way better”, because otherwise I’m giving hints on how to game the system. Hmm. “dude trust me lmao” i guess??? There will be some roadbumps as we smooth things out, but even the very first version returned results that were interesting and new. Bear with us! false alarm, not a literal bear, I’m just asking you to give us a hot minute alright

ANYWAYS. We think this change will make a BIG difference in how world discovery in VRChat will work, and we’ll continue iterating, watching, listening, and improving as time goes on. Content discovery is very important, so we want to make sure creators who make good, fun, engaging worlds see the traffic they deserve.

Chatbox Improvements

We’ve got some more chatbox improvements on the way, too!

We’ve implemented a sound for when a message is sent (the current sound is a placeholder so don’t pay any attention to that) as well as a way to adjust the position of the chatbox on yourself and on others:

We’ve also added a way for you to choose a binding for your controller, so its easy to pull up!

There’s some more stuff on the way before we release these Chatbox improvements, but thought you’d like to see it.

OSCQuery

If you’re unfamiliar, OSCQuery is a way for OSC applications to automatically discover and attach to endpoints on your network, allowing them to interact with VRChat without dealing with pesky networking shenanigans. This makes it super easy to use multiple OSC applications with a single VRChat instance, as well as easily interact with VRChat on Quest with less headaches.

Here’s a very simple program that sends text to the Chatbox via OSC! No specifying of IP address, loopback, port, or anything like that was necessary here. The connection is totally automatic.

Conclusion

That’s it for this week! If you’ve got any comments or feedback, feel free to let us know below! If you’ve found bugs with the Open Beta, please report them to the Feedback boards.

The next Dev Update will be on Thursday, September 29th. See you then!

36 Likes

Definitely looking forward to hearing/seeing more about the trending changes, as well as the changes to friend requests.

4 Likes

Looking good, the world list change is what makes this.

2 Likes

Oh oops I forgot my ffmpeg script removes audio from the videos anyways so you don’t get to hear the message sound. Trust me, it’s there, and its a placeholder. :person_facepalming:

9 Likes

Oh I get it take your time to explain really slowly things I know you’re not fast people just need to get patients to wait to explain so easy things. Well try your best VR Chat to do the right thing.

exist one bug that is bothering me a lot. the microphone stops working out of nowhere and has to restart every time. maybe its just happening with me?
hello avatar search my old friend… :cry:

4 Likes

This is something I and a number of friends have to set to dynamic every single time we load vrchat because it does not persist across sessions, moving it out of the quick menu will make that more difficult. Will this option have persistence like all other options as part of the move? I can understand if the force option doesn’t persist like how horizon adjust needs confirmation each session, but the dynamic option should be something that can be saved, otherwise it makes sense to leave it on the quick menu?

4 Likes

There’s still one small thing that’s bugging me in the current version the quest camera is a bit broken and sometimes takes blank pictures

1 Like

Known bug, don’t hold it in portrait mode.

No – unlike the unlimited mirror resolution, having Nearclip set to Forced (or even Dynamic) can cause serious issues in some worlds, and we want to avoid unnecessary support issues.

We might reconsider this in the future but we’re fairly firm on this decision for now.

Can you post about this on the feedback boards if you’re experiencing it on the Open Beta? Alternately, try contacting our Support team.

Tupper, DLSS 3.0 when!!! (Sorry, I had to make the bad joke)

I love the updates to the UI. Finding new and exciting worlds has been difficult for me as a Awkward mute, I’m looking forward to seeing some new fire worlds!! The Dev team as done a fantastic job!

Thank you!! :heart:

3 Likes

Just here to keep this at the front of your minds and make sure it gets implemented eventually: The keyboard should press a key on KeyDown, not KeyUp

Also, I think the camera focus is broken as exported photos do not match what I see in the preview, but I haven’t cared enough to do testing and provide a bug report.

4 Likes

This will be addressed with an upcoming Keyboard revamp. No need to keep it in your clipboard. :slight_smile:

1 Like

No,i tried the beta version but the camera on beta dont have the option “focus” , and i use a lot for my content. i really don’t know why this is happening. maybe just my oculus are dying btw

Is it possible for avatar makers to trigger the vibration of the handle themselves?I made a gun, and my handle vibrates when she fires, and that’s so cool.

I can appreciate the concern with support volume if it’s et to be persistent. I’d just ask that it be considered to be duplicated in the quick menu if the actual volume of support cases is not high (which obviously I have no insight into) |3

1 Like

awesome stuff, i hope desktop bindings will be modifiable too! maybe an fov slider, who knows…

3 Likes

So improving Quality of Life for users is less important than having an auto-reply configured for keywords in your support software? Nice

Edit: To add, I am not sure if it’s possible, but could you then at least allow it to be configured in the JSON? I am one of probably many users that understand how jank things can be sometimes, so it’d be nice to at least have it persist with some warning or higher barrier.

Quest Standalone doesn’t have the Focus option.

Assuming you’re on PC, its right here:

Noted, that’s a good point.

Not quite yet, but eventually I think we want to have configurable keyboard bindings just overall.

FOV slider, though. Yeah sorry blue. way too controversial. NO thanks (this is a joke. the preceding was a joke. for all screenshotters please be advised, this was a joke)

Please don’t oversimplify or re-contextualize my posts! It really makes it hard to reply to you in a useful, meaningful manner.

Not all users that have issues contact Support, and not all users who see weird world issues remember turning on Forced, or even sometimes accidentally do so. We’re actually more worried about world authors getting extraneous feedback that “their world is broken” when instead it’s someone messing with Nearclip.

Edit: We’ve got an internal goal of not touching the config file again, if at all possible. We’re trying to get stuff out of it, not put stuff into it.

2 Likes

thank you, i will try again the beta =)

1 Like

Is it possible to implement layered rendering in VRCHAT?Beyond that, I wonder if the attempts to introduce FSR are still going on?If not, just sharpening can also improve the VR image.