World/Udon Bugs & Feature Requests

Post about current World or Udon bugs feature requests. One item per post!
Non-constructive and off-topic posts will be moved or deleted.
Add caching options for VRCImage/String/VideoDownloader components to skip request limits and lower network usage
Currently when a world loads, for example all VRCImageDownloader have to redownload their content, with a 5 second period between each. This both puts strain on hosts and also limits what we can do with worlds in a nice way since all non-bundled content has to be redownloaded every time. Not to mention it puts pressure on bandwidth for users. Ideally there should be a parameter on these functions to make a cached download request, at the very least for images/video, so it can be decided on a case-by-case basis (as this would of course not be desired for all cases where a URL is input by a user or is frequently changing on the source server.). If caching is enabled on the request and a local copy exists, you skip sending a request to the server and skip the 5-second cooldown on this downloader type, simply loading it from disk. This avoids the security concerns since no contact is made to the server. ----------------------------------------------------------- The cache could be stored as a sub-folder of a specific world, being shared across instances, which would make sense, and would make cleanup simple. But even more gains could be had from it being a global cache, so if I pasted the same URL in another world, it could instantly load it from my cache and any others who already have it cached, avoiding duplication of data. A simple dictionary file can be maintained and loaded on VRChat load to avoiding having to scan the cached files each time, as the amount of files could definitely grow pretty big. But a global cache like that isn't essential and would gladly give it up if it means implementing this request is more likely. Also, having an option to set the "TTL" (time to live) of the cached file would be a nice benefit too, though not an essential feature to have from the start. But would be pretty simple to add it as a saved property in the cache record data and compare it to the creation date and just do a redownload. (The local data should be encrypted using existing world encryption systems to prevent modifying the files and so there's no concern about illegal/awkward media ending up in a person's cache).
1
·
Feature Requests
Enable URL redirect for Stringloading / image loading
I would like to request the addition of URL redirection functionality for string loading and image loading in VRChat, similar to the existing feature for videos and livestreams. This would allow creators to serve dynamic assets like strings and images from trusted URLs easier, enhancing content flexibility and reducing redundancy. The feature should be restricted to trusted URLs to avoid potential misuse or malicious activities by third parties. Currently, VRChat supports URL redirects for videos and livestreams utilizing YT-DLP, enabling creators to dynamically update content without requiring re-uploads or modifications to assets. Extending this feature to string loading and image loading would provide similar benefits, including: Enhanced Asset Management: This feature enables creators to manage assets like images and strings on the server-side, allowing them to cycle through different versions without needing to overwrite or replace files at the same URL. A common problem is that users are forced to overwrite files ( e.g., /string/whitelist.json ) to apply changes, which can lead to caching issues depending on the service used. By simply pointing requests to /string/whitelist/ to a different file, creators can avoid overwrites and ensure more efficient updates. Consistency Across Media Types: By using URL redirection for both strings and images, the management of different media types in VRChat becomes more streamlined. This reduces the need to overwrite files, minimizing caching issues and providing a smoother workflow for creators working with text, images, and videos. Enabling URL redirects for string loading and image loading in VRChat, restricted to trusted URLs, would provide significant flexibility and efficiency to creators while maintaining security. The current implementation for videos and livestreams has proven successful, and extending the same approach to strings and images would streamline workflows and improve content management, without compromising user safety.
0
·
Feature Requests
Load More