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.
Save & Load persistent World Data
World persistency would increase usability since old in-world settings could load automatically when the user re-visits the same world later. As worlds get more and more complex, this is no longer a "nice to have" feature - it is now absolutely needed to make a more complex world playable (such as playing a long story through like "The Devouring" for people who don't stay 4+ hours in a single world in VR or in case VRChat crashes while playing it). But it is also needed for grinding mechanics and worlds where you can build something and farm resources - something we are currently working on. Tl;dr, either VRChat gives us a [StoreToDisk] string datatype (without a weird character limit) that saves to disk when it changes and loads again when the user joins the same world or we'll have to implement our own open-source solution reading debug log files and a third-party application running on people's PCs to send Ctrl+V to the window handle (as other world creators have already done it). But either way, we definitely can't go on without a solution here and the current "ask a VR user to copy+paste a string" is not a good way to do it - especially since it's not crash-safe, so users lose all progress when VRChat disconnects the user randomly. But also since we still don't have a "Copy to clipboard"/"Paste from clipboard" function next to a TextInput field for whatever reason, something that would be extremely useful for VR users in general anyway. Ideally, an instance could also specify to only load the progress from whoever created it, since it's not possible right now to know who's the instance creator in Udon, but that's only a minor follow-up issue.
40
·

complete

TextMeshPro incorrectly exposed
Previously exposed TMP methods are not exposed any longer (or maybe never really were). For instance, ForceMeshUpdate was exposed in update 2021.4.1 ( https://docs.vrchat.com/docs/vrchat-202141 ) for both TextMeshPro and TextMeshProUGUI but is unavailable for TextMeshPro . Note the difference that TextMeshProUGUI is for canvases and TextMeshPro for being placed inside the scene. Another issue is being TMP_CharacterInfo[] exposed (via TextMeshProUGUI.characterInfo ) but the type itself, TMP_CharacterInfo , is unexposed. Therefore I request to reiterate over this list and expose what's unexposed: TextMeshPro.textInfo TextMeshPro.meshInfo TextMeshPro.mesh TextMeshPro.enabled TextMeshPro.ForceMeshUpdate TextMeshPro.UpdateGeometry TextMeshProUGUI.textInfo TextMeshProUGUI.meshInfo TextMeshProUGUI.mesh TextMeshProUGUI.enabled TextMeshProUGUI.ForceMeshUpdate TextMeshProUGUI.UpdateGeometry Overall, all methods and fields by these two main types should be evaluated for being exposed, including base members. However without these following types doing anything but basic operations on TMP is pretty much pointless, hence I request these types (not only as array) to be exposed, including their fields and methods: TMP_MeshInfo TMP_TextInfo TMP_CharacterInfo TMP_ColorGradient TMP_Text TMP_Dropdown The first two images in the attachment show how the same method is not exposed for different TMP types. The third image is displaying how a variety of types are exposed as array only. The fourth image showcases how TextMeshPro is also mostly unexposed, the list grows even longer when including base members. In contrast, the fifth image presents TextMeshProUGUI (without base members). It will be amazing if this is being looked into because TMP is a very powerful tool. Thank you for your time!
9
·

complete

Load More