In this update10
Full notes
Full ChilloutVR update
Read the full published notes in a cleaner layout. The original post stays linked below.
What changed
- Gameplay
- UI and audio
- Server
- Performance
- Events
- Maps
ChilloutVR changes
Player Colors
Choose between preset 15 color pallets to associate with yourself via your profile page in the Main Menu
Applies both locally and on remote clients for:
Controller Ray
Object & Player Highlight
Camera Indicator (synced)
Dropped Portals (synced)
Camera Indicator Overhaul
The Camera Indicator has been completely reworked with a fancy new model, support for the new player colors, and a neat little animation when capturing an image!
Big thanks to Exterrata and Racush for their work on this
Portable Camera Changes
New settings are now available to take more betterer pictures, including:
Show World mask (for transparency)
Lock Portable Camera UI
Anchor Camera viewport in world space (VR Only)
Pin to Player and Pin to World
Stereoscopic (side-by-side) capture mode
Support for custom sounds
...and more!
Native Modding UI Library
The popular UI library mod is now natively implemented for developers to tinker around with!
This also includes a Player List and Selector in the quick menu for easy access, as well as all of the usual player and self-moderation settings normally available on user profiles.
Mini Me
Presenting the latest improvement in mirror-dwelling technology: Mini Me Can't get enough of yourself in a mirror? Why not the menu as well?!
Portable Mirror
We heard you like mirrors, so we gave you more mirrors!
Now accessible from the Quick Menu, a mirror can be spawned from anywhere with various customization options to fit your needs.
ChatBox
Text chat messages can now be sent and seen by users in the same instance
Visibility settings
Parameter Stream integration
Works alongside Text-to-Speech
Support for custom sounds
New Login UI
Makise has invaded the UI and will now greet you when logging in
Full Changelog:
Added AddSpacer to UILib Category element
Added an attempt to fix invalid URLs that would get rejected by the game server
Added an instance creation timeout to give up checking if the created instance is up
Added a toggle to keep the current velocity upon exiting flight mode
Added automatic retry logic if authentication did not receive a response from the Voice Server
Added Avatar/Prop/World menus remembering which category was opened across restarts
It should open the official tabs when there's no previous category selected
Added copy deeplink to instance page
Added CVR Material Data Provider
This Component can be used to bind information to Materials such as
Transforms matrices, for the current frame, and last frame
Mesh Vertex and Index Information (read and writable)
Skinned Mesh Renderers Vertex Information for the current (read and writable) and last frame
Render Textures as read write Targets
Added CVR Render Controller
This component is used to control the execution order of the CVR Material Data Provider and the CVR Blitter
This component can also be used to instantiate Meshes on a per Instance of a content basis, in order for the modifications to a mesh to only happen to that specific instance.
Added CVR Utils tab to the left of home on the tab bar
Added experimental Mini Me utility to Quick Menu
This will spawn a 0.5m tall clone of yourself which you can grab
This is being used as a test for the Content Clone system which is used by the Show Attached Props in Self Mirrors graphics option
Added extra logs related to skipped clients for OSCQuery when the OSC verbose option is active
Added group moderated badge to instance details view
Added handling for instance World change
Added handling for when Unity Explorer (mod) overrides our event system input module
Desktop input is now disabled while Unity Explorer is open
Added hidden text mode to keyboard (for password/secret fields)
Added icons to Prop details page
Added initial native ChatBox implementation
Added visibility settings for the local nameplate
Added parameter stream for ChatBox IsTyping
Added ChatBox to CVRAudio mixer
Added the key Y (without any modifier) to open the Text Comms prompt
Swapped TTS button to trigger ChatBox/TTS based on settings
Support for Custom Sounds
Added Instance Info tab to "Game Information" block of big menu
Added menu push notification when user selects an OSC face tracking module with OSC disabled to remind them to enable OSC
Added native implementation of Self Portrait
You can find it's toggle in the new CVR Utils tab on the Quick Menu
You can adjust the settings for it under the User Interface settings category
Added new eye tracking module to follow the interaction ray pointer
This is set as the default and can be disabled in Implementation settings
In Desktop your eyes will follow your mouse while it is unlocked
In VR your eyes will follow your active controller ray while a menu is open
Added open in Hub buttons to all content pages
Added physical up/down arrow keys to go up/down the line, and if not multiline goes up/down history
Added physical up/down arrow keys to go up/down the line, and if not multiline goes up/down history (similar to how the virtual arrow keys work)
Added Player Colors
You can now choose between preset 15 color pallets to associate with yourself via your profile page in the Main Menu.
The selected color scheme will apply both locally and on remote clients. Currently, these will apply to:
Controller Ray
Object & Player Highlight
Camera Indicator (synced)
Dropped Portals (synced)
Added Playerlist to the QuickMenu, if you're familiar with it from UILib it's the same!
This includes the player quick settings that appear in it
Added position/rotation to auth packet
Added simple update notice on first big menu open
Added spawn radius option to CVRWorld
Added the ability to toggle rank visibility on the nameplate for those who have it
The rank information will always display in the User Details page of the Main Menu
Added verified event group badge to group details view
Added warning when joining a Group Moderated instance (More info to come shortly)
Adjusted half-body IK neck stiffness to reduce the amount your spine and hips are affected when rotating your head
Adjusted how voice ping is handled
Adjusted initial XR loading to fix an issue where attempting to start XR and failing would lead to the client partially thinking you are in VR
Adjusted interaction highlight to only render in player cameras
Adjusted Quick Menu styling to better integrate the UILib tab bar
Adjusted the terrain foliage fix to once again only run in Legacy Worlds (2019 Asset Bundles)
Built replacement schedule system and moved all jobs onto it
This should fix some strange issues where jobs failed to be removed and accumulated over time causing significant lag in some situations
Changed Nameplate render queue to 3010
This should address some worlds unintentionally over-rendering Nameplates
Changed so if you ever accept the group alert to a specific instance, you won't be prompted again
before it would prompt again if 10 mins had pass or when changing instances
Cleaned up ImageCache handling
Completely reworked avatar/prop/world list fetching and API interactions
**Completely reworked Vote Kick functionality
Required participant count is now dynamic based on the amount of users in the instance instead of hard-coded at 50% or more
The more users in the instance the less percentage of users need to agree, minimum of 25%
The result of the vote kick is now announced to all users who participated
The initiator of the vote kick is now immediately counted as a vote against the target user
Remaining lifetime of a vote kick is now reset when receiving a vote instead of the hard-coded 30 seconds
Target user will now be kicked as soon as the votes reach over the calculated threshold instead of waiting down the vote lifetime
HUD messages are sent to all EligibleParticipants for start and end with result information
Target is alerted without revealing who did it via HUD message
Vote Kick cannot be started with 2 or less users in the instance
Current state of vote kicks are displayed on all eligible participants vote kick message including current votes for, against, threshold, and time remaining
Content will no longer immediately unload on destruction
This should help to alleviate needless hitches when content is immediately respawned
Fire HUD notifications when certain GS settings are changed
Fix content filter settings scroll not working if you touch between elements
Fix CVRUIManagerBaseInput destroy getting angry if ran before CohtmlInputSystem exists
Fixed an error during async instantiate that could lock up the object loader if the source bundle was unloaded or did not contain any objects
Fixed an error when loading a World with a unreadable mesh asset with no mesh data
Fixed an issue where while filtering a World scene an error occurring would prevent connection to an online instance
Fixed Avatar & Spawnable Pickup Markers leaking textures
Calling SetGuid with an invalid ID will also now clear the pickup marker properly
Fixed comms client not removing registered pipelines on user disconnect
Fixed current instance info being cached for 10 mins
basically you wouldn't show yourself as online in the instance after you created and joined it
Fixed current instance info being cached for 10 mins
basically you wouldn't show yourself as online in the instance after you created and joined it
Fixed destroyed portals hanging around for slightly longer than they should have been
Fixed Exit button in login room not doing anything
Fixed eye tracking target position execution order
This fixes eye tracking applying relative to the underlying animated pose of the avatar instead of after IK had been solved
Fixed forced world transition effect not having its duration respected
Fixed group members list scrolling being inconsistent
Fixed group members pagination
Fixed instance join target not being reset when logging out
Fixed issue in texture parsing where content load could throw an exception in some cases
Fixed local camera indicator appearing in taken photos in some cases
Fixed Magica Cloth 2 global interactions not working
Fixed Magica Cloth gravity zone interaction not working correctly for avatars
Fixed memory leak related to profile images on nameplates
Fixed menu leaking VRAM
Fixed object/player highlighting instantiating the source mesh
This should fix the interaction highlight for players or props with magica cloth not appearing as it should
Fixed OSCQuery filtering out valid clients (oops)
Fixed Parameter Stream `IsPrivateInstance`, `IsPublicInstance`, and `IsGroupInstance` entries
Fixed Portable Camera post processing volumes applying to Player & Path cameras
Fixed potential for duplicated eye movement targets when creating player mirror reflection targets
Fixed potential issues with CVRAdvancedAvatarSettingsTrigger with multiple delayed triggers firing
Fixed proximity grab highlight not creating the highlight with filtering pass for nested interactables
Fixed regression GameInstanceController UpdateTeamList not handling local player properly
Fixed regression of invalid AAS check being busted for lifetime of remote player after first successful validation
Fixed remote synced world objects losing collision with the local player
Fixed Steam Overlay screenshots saving in the wrong color space
Fixed telegrab not actually "grabbing" the pulled object if grab is held when they cross the hand
Fixed telepathic grab toggle not working when directly aiming at a pickup
Fixed the client forgetting a World is legacy content when rejoining it
This would cause several legacy content mitigations to no longer be effective after a rejoin, like the terrain foliage fix
Fixed the clients IsLegacyContent check not being functional
Fixed the graphics selection not being initialized in the menu
Fixed the local camera not being grabbable once pinned
Fixed transition dropdown not properly enabling colour pickers
Fixed TTS modules and voices not loading on the menu
Fixed TTS not showing the current selection when loading
Fixed various issues with raycasting menus in weird cases
Fixed world anchor menu not resetting on VR mode switch
Fixed world pre-load not displaying progress meter
Fix game resolution showing as undefined when manually changing the window size
GameObjects on CVRReserved or Internal layers are now moved to Default on scene load
It is not recommended to upload with GameObjects on these layers. Undesired behaviour may be introduced as we change how we use these layers internally. A notible instance of this is the Audio Link config panel prefab, which is redistributed on an “illegal layer”, which during this Nightly cycle became invisible to the player as we changed what we use the layer for.
Hooked up portable mirror to Quick Menu button
Updated UI with new icons and a delete button
You can spawn up to 4 mirrors from Quick Menu
Implemented Avatar/World/Prop list sorting options
Implemented Dynamic Plates - All staff tags are now powered by dynamic plates - Added additional templates for newer roles
Implemented Dynamic Plates on client
Implemented dynamic tick rate controlled by GS
This is an experimental feature, you may find it being tested randomly
Implemented eyes pupil dilation and constriction for face tracking
Implemented graphics option to see held/attached/seated props in self cameras (player-only mirrors, self camera, self portrait, etc...)
Implemented local player nameplates
Added handling for newer GS rank info and API rank info changes
Implemented MockHMD toggle for debugging SPI compatibility in Desktop without VR
This can be found in the CVR Utils tab of the Quick Menu
Implemented new Haptic Touch feature which plays controller haptics when touching objects
By default it is limited to only interact with other players avatars
Configurable in the Interactions settings
Improved behaviour of selecting an input field which does not pop the CVR Keyboard
Improved Menu VRAM usage
Integrated comms authentication state into voice reconnection logic and comms HUD indicator
Invert movement direction for upside-down orientation in VR
Limited props and avatars to a max of 1000 total renderers to avoid a Unity bug causing a game freeze
Made avatar advanced settings send as unreliable
Just like the prop sync change this should increase the speed that settings sync, shouldn't have any major issues probably
Made guardian disconnect messages actually appear properly
Made instance world change preload target world
Made LoginRoom audio sources use world output mixer group
LoginRoom audio level can be controlled using world volume slider
Made modals darken the main menu as well as disable input while open
Made nameplates show when the cursor unlock key is pressed when nameplates are set to Menu Only to match VR behaviour
Made outbound comms network messages wait until successfully authenticated
Made Prop update send as unreliable
In testing this seems to have greatly increased the stability and speed for prop movement, we'll have to monitor for potential weirdness, but looks good so far
Made some changes to the keyboard (Puff Machine)
Fixed vertical alignment of placeholder text
Fixed placeholder text blocking clicks on the input element
Improved responsiveness when using a physical keyboard
The caret no longer lags behind the typed text or gets stuck when using key repeat
There is no longer a delay between the first typed character appearing and the placeholder text disappearing
Improvements to keyboard history
Pressing up with no history no longer results in "undefined"
Pressing down while in the present no longer clears the line
The current line is saved and restored when entering and exiting history
Hidden text is no longer added to the history
Made the CVR Keyboard aware of multiple variables of selected in-world input fields:
Multi-line
Character count
Placeholder text
Title
Made the list of face tracking modules in settings dynamic (Puff Machine)
Made the Steam Screenshot hook ignore Save to Steam Library toggle in the Portable Camera settings
Made UILib native (A stub exists for mods depending on UILib)
Made wormhole portals 50% bigger
Make all menu views optionally be coloured by player colour
This is off by default, you must enable "Colourize Menu" from the User Interface category of settings
You are able to adjust the max brightness of the primary menu colour from User Interface settings as well
Make the Cohtml menus collider disable later in the closing animation, so the raycast beam doesn't clip through while the menu is still fully opaque
MultiLineNewline line type is now forced to MultiLineSubmit due to the CVR Keyboard not supporting this input mode
Portable Camera Adjustments
Added Show World mask option
Toggling this off allows you to capture transparent photos
Added button to lock Portable Camera UI
Added button to anchor Camera viewport in world space (VR Only)
Added a Pin to Player option alongside Pin to World
Added Stereoscopic (side-by-side) capture mode
Added camera setting for mirrors to inherit disabled layers
This means if you disable the local/remote players in the portable camera capture they also wont display in mirrors rendered within that capture
Added always-displayed tooltip for Desktop Camera keybinds
Made the Camera anchored to screen like the menus when on Desktop
Tweaked Drone Mode to make it a bit less jank when toggling it
Tweaked the Camera settings panel a bit to make a bit more Desktop-friendly
Fixed panoramic capture not respecting post processing
Fixed hitting reset on the the FPR Debug & Capture Integrations settings headers resetting all camera settings
Added Camera setting to disable roll
potential fix for avatar leaking materials
Potentially addressed issue where world load could cause the game to crash in specific situations
Potentially fixed multiple setting dropdowns not being initialized
Prevent saving the default TTS voice when the previous one is not available
This should prevent you losing the selection of a voice provided by a mod is the mod is temporarily turned off
Registered missing bold NotoSans font to menus
Removed arm weight being included in the VRIK footstep solver
This fixes your legs gravitating towards your controllers or legs stepping when moving your arms outward
Removed closing the QM opened keyboard when the QM closes while in VR
Removed CVRAvatar from the RootComponent whitelist shared by Props
Removed debug page from Quick Menu, added playerlist in it's place
Renamed the Community Guide rank to Helpful
This was done to make the role more clear
Alongside this, we will be reaching out to more community members to offer this role
Renamed the settings category from `Audio & Voice` to `Audio & Comms`
Reworked how material instantiation works, should provide a slight speed up to filtering content
Reworked the terrain foliage fix to better handle reloading an already loaded Legacy World
Unground the player if the applied gravity direction is similar to a 70degrees slope, which is around the limit where a human can still stand
This fixes the broken gravity zones issue that was introduced during r180
Updated Christmas event objects and such (soon™)
Updated CVR Blitter to add the ability of binding multiple Render targets
The CVR Blitter can now be used to write information to multiple Render Textures at the same time
Updated default Oculus Touch SteamVR bindings
Added the `mute` action to left controller `X` button
Moved `jump` action from the left and right controllers `thumbstick` click to just right controller `A` button
Added the `gesture lock` action to left controller `thumbstick` click
Added SteamVR skeleton input to the default Oculus Touch bindings
Updated login UI and changed how login room works
Updated Magica Cloth 2 to 2.16.3
Updated MetaPort CurrentInstanceName and CurrentInstancePrivacy on GSInfoUpdate receive
Updated the Camera Indicator (Exterrata & Racush)
The camera indicator has been replaced and given new animations and color.
The capture timer and screenshot are also now visualized using a ramping up spin leading to an outward flash.
Thank you Exterrata for the new camera indicator and Racush for the flash FX!
These new visual effects are also now synced over the network, so you can now tell when a picture is taken by another user.
Updated to Unity 2022.3.58f1
Various unified to legacy expressions conversion fixes
VLC Changes (Malthbern)
Updated VLC-Unity binaries
This fixes the crashing issues VLC had previously
Gave the subtitle selection more room to breath
Added a [Language] tag on subtitle tracks
This fixes tracks that don't have names showing up blank on the selection dropdown
Fixed a bug where if 2 or more subtitle tracks have the same name the first in the list is always chosen
Remember, to enable VLC put `--enable-libvlc` in the game's launch options
Whitelisted the following UI components for Props:
Scrollbar
ScrollRect
LayoutElement
UnityEngine.UI.Mask
Notes
A big thanks to our External Contributors:
Exterrata
Malthbern
Puff Machine
Source
Changelog.gg summarizes and formats this update. How we read updates.
