Avatar Board - VRChat World Prefab - PC/Android/Quest
- Free¥ 0
- Donation¥ 100
This is a batch loader for avatar pedestals in VRChat! Have fun sharing your favorite avatars with friends! The input field type can sync up to 390 avatars. The world type theoretically supports 25,565,281 avatars per string, but it's configured to support 1,000 by default, adjustable by altering the page count or pedestals per page. The combo type integrates both. [KNOWN ISSUE] The world type has been found to have a small realistic maximum due to program execution time exceeding the maximum allowance of ten seconds when increasing the avatar pedestal count somewhere beyond double the default configuration of 1,000, although the actual point of failure varies. Currently, the available programs use a multi-page setup instead of a single-page setup, making for more objects in the hierarchy. There was a working prototype for a single-page method, but I opted to initially release a multi-page setup because a single-page method lacks the instantaneous appearance players are accustomed to when re-enabling avatar pedestals with actively loaded avatar pedestal data. Production of a single-page method is presently at a standstill partly due to VRChat's poor handling of loading avatar pedestal data from the cache as noted in the demo world, Avatar Pedestal Systems, but it is a project I would someday like to resume. "Free" and "Donation" are identical. I have no plans to charge for the avatar pedestal systems I build. I appreciate the kindness of donators!
Demo World
https://vrchat.com/home/world/wrld_a6f048b2-0345-458a-bdd5-b464aa6f0b70
Where do I find avatar IDs?
You can go to https://vrchat.com/home/avatars to find IDs for active, favorited, uploaded, and featured avatars. The ID is at the end of the avatar's URL. For example, the default avatar's URL is https://vrchat.com/home/avatar/avtr_c38a1615-5bf5-42b4-84eb-a8b6c37cbd11, so you can feed avtr_c38a1615-5bf5-42b4-84eb-a8b6c37cbd11 to a pedestal to load it. You can also try my PowerShell scripts here: https://besttomodachi.booth.pm/items/3745916
Basic Setup Guide
First, follow instructions provided by VRChat's documentation, found here: https://docs.vrchat.com/docs/worlds After confirming creation of a working world, import Avatar Board's Unity Package file. Locate the prefab of the Avatar Board type you would like to use within Unity's Project window and place it inside the scene hierarchy in Unity's Hierarchy window. You can do this via the search bar or browsing through folders. Avatar Board's PC/Windows prefabs are located within "Assets > Best Tomodachi > Avatar Pedestal Systems > Avatar Board", and the Quest folder within contains Avatar Board's Quest/Android prefabs. (Input fields are handled differently on Quest, thus an alternate prefab.) Use PC prefabs when publishing to PC and Quest prefabs when publishing to Quest. When creating a cross-platform world, both versions should be published with an identical hierarchy using the respective platform's matching Avatar Board type. "Avatar Board (Global).prefab" Supporting up to 390 avatar IDs following the standard format, this type allows players in the world to load avatar pedestals via input field and syncs the loaded pedestals. To change this to local, navigate to "Avatar Board (Global) > Canvas > Global" in Unity's Hierarchy window, and inside Unity's Inspector window, change the Udon Behavior component's synchronization type to "None". "Avatar Board (World).prefab" Theoretically supporting up to 25,565,281 avatar IDs following the standard format, but 1,000 by default, this type allows the world author to predefine avatar pedestals to be loaded via public string array. Navigate to "Avatar Board (World) > Canvas > World" in Unity's Hierarchy window, and inside Unity's Inspector window locate the Udon Behavior component. Expand the public string array named "AvatarIDList" and you will see a length followed by a matching index count. In index 0, input a list of avatar IDs you would like to load during runtime. IDs can be separated by newline, comma, or space. (Newline will convert to space when pasting.) [KNOWN ISSUE] The world type has been found to have a small realistic maximum due to program execution time exceeding the maximum allowance of ten seconds when increasing the avatar pedestal count somewhere beyond double the default configuration of 1,000, although the actual point of failure varies. "Avatar Board (Combo).prefab" This combines the functionality of the aforementioned types.
Version History
[2022/04/21] Adjustments made to arrow positions for "Avatar Board (World)(Quest).prefab" and "Avatar Board (Combo)(Quest).prefab" for a more centered appearance when using Quest. [2022/03/28] A modified setup designed for world authors to display avatars has been added, as well as a combined format. [2022/03/24] -New sync data was not received when inactive, so the main program's object is no longer targeted by the toggling program. -Now utilizes Udon Behavior arrays instead of Input Field arrays. The main program targets Udon Behaviors on Avatar Pedestal components within PageArrayObject, so this will maintain the ability to utilize Udon programs within environments created with the paging system. -Page Input Field now enforces a character limit to prevent an extremely large number from causing TryParse to return False and set Page to 1, rather than to the presumably much smaller and final value. Also, TryParse now no longer changes Page when returning False. -Main Input Field now imposes a character limit of 16,381, down from Unity's internal limit of 16,382, in order to allow overwriting selected text when at the limit. -Added input string handling for Unity's 16,382 character limit on Input Fields. Not for use with a direct string method. -In "Reject blank or identical", False for Inequality now sets SyncString to Main Input Field. -IsElementSizeperPageSame is now True by default. -Unity Input Fields behave differently for Quest, so a modified version has been added for compatibility. [2022/02/18] Fixed issue of page resetting to 1 for non-owners when new players join. [2022/02/17] Initial release of Avatar Board.