1. Neos VR
  2. News
  3. 2020.10.12.499 - Deleted item/world recovery command, MMC badges, fixes & tweaks

2020.10.12.499 - Deleted item/world recovery command, MMC badges, fixes & tweaks

Sorry for lack of builds this week! The MMC took most of my time and energy (plus I didn't want to break any of the entries in the middle of judging). Here are some gooddies though, mostly tweaks and bugfixes, but there are some new commands! Also getting the MMC badges ready, should be assigned to everyone soon!

You now have access to new function which will recover deleted items and worlds from Audit records for up to 30 days. If you accidentally delete some world or item, this can help you save it! Don't rely on it though, as the recovery might not be 100% right now and it will be tedious on your end to recover a lot of items. It's not a trash bin!

If you're owner of a Group, you can now also add and remove members by yourself, without having to ask team mebers to help using the commands!

For the commands - you send those as messages in-game to the Neos account. Use /echo to test this. You can also use the included AdminX tool in the Neos install, but omit the initial forward slash with those. Any command that as multiple arguments must wrap the arguments in quotes if they contain spaces.

[h2]New Features:[/h2]
- Added MMC badges designed by @Medra (they're not assigned to users yet, but once they are they will show up right away)
- Added new command /requestDeleteRecovery which will recover deleted items/worlds from your account
-- indicates how long ago in the history to search. Syntax is flexible, e.g. "1d", "2h", "30m", "1 hour 30 minutes" will all work. Default unit is day.
-- will filter out any items that don't contain given term anywhere in their path or name. Use * to recover everything
-- You will be emailed a ZIP file with special files representing items of your inventory in the same folder structure. To actually recover the item/world, you need to import those files into Neos and save them again. DO NOT CLEAR YOUR CACHE!
-- Maximum recovery time period is 30 days, after this the items are deleted permanently
-- This command can only be used by Patreon users directly. If you have an emergency and are not Patreon, contact a team member
-- THIS IS LAST RESORT EMERGENCY OPTION! Full recovery isn't 100% guaranteed, it relies on other asset files still being in the cloud or being in your cache to recover fully. Please take every step necessary to make sure you don't need to use it in the first place.

- Group admins can now add and remove members of their groups, without relying on the Neos team members
-- To add new member, use /addMember command (quota is in GB, use -1 for unlimited)
-- To remove member, use /removeMember

- Upgraded to SRAnipal Eye & Lip tracking SDK 1.3.0.9 (from 1.1.0.1) and added support for tracking tongue left/right and up/down movements (untested, I currently don't have the lip tracker, but should work)
- Added "Group" input to PlayOneShot node, which allows overriding which audio type group does the sound belong to (requested by @SmolCookie)
- All filter materials now have ZTest property
-- This allows always rendering them on top of everything, simplifying their use as screenspace filters
-- This includes Blur, Depth, Gamma, Grayscale, HSV, ChannelMatrix, Invert, LUT, Pixelate, Posterize, Refract and Threshold

[h2]Tweaks:[/h2]
- DataPresetValue with quaternion or matrix as type will now be initialized to identity value on creation
- Interaction laser will now show up to other users when it's used to scale hold objects, instead of just when it's holding one
- "Headless Sessions" category will now filter all occupied sessions that aren't headless, showing only occupied and empty headless sessions as a result (suggested by @Shifty | Quality Control Lead)
- Cloud Security improvements
- Upgraded to Unity 2019.4.12f1 from 2019.4.11f1

[h2]Bugfixes:[/h2]
- Added exception guards to initialization of platform connectors, to prevent Neos from locking up during startup due to errors (based on report by @フリック)
-- This will result in some loss of functionality (e.g. no clipboard support or Discord rich presence), but will allow rest of Neos to operate
- Fixed networking global announcer throwing an exception when the associated world isn't properly assigned (found in log from @Enverex)
- Fixed HSV filter material not wrapping the hue correctly, resulting in incorrect colors for values outside of the 0...1 range
- Added type validation to DataPresetValue to prevent crashes when creating it with invalid generic parameter (reported by @Blaze)
- Fixed Neos hanging due to null instance validators (e.g. when the associated permission component has been removed)
-- This fixes any world with corrupted/removed permissions when changing the world configuration (e.g. world reported by @Enverex and the MMC Iron Scavengers by @Ukilop)
- Fixed bright artifacts at the edges of Fog Box Volume when Gradient color more is used (discovered by @Turk, reported by @Shifty | Quality Control Lead)
- Fixed incorrect root bone detection when some of the bones are null, causing other behaviors to break (e.g. approximate bounds calculations) (reported by @Earthmark on behalf of @Nammi)
- Added workaround for race conditions in async streams, to prevent background exceptions and streams potentially getting corrupted as a result (based on report by @Shifty | Quality Control Lead, @Rukio and @Princess)
- Grabbable LogiX events are now scheduled after the grab/release fully finish, preventing the grabbable from getting messed up due to being released in the middle of the grab event (based on report by @Turk)