Improving VRChat's Communication Methods

This appears to have left the realm of realism and we’ve moved into your view of how AI will solve everything and tomorrow I assume. Nobody needs to know Ben Golus to use Unity for gosh sakes. :slight_smile:

Yes but the format doesn’t allow readily visible question asking. Even wikipedia most people are not aware that article history and article discussion threads exist; making this information buried. It’s just not a good format for this type of content.

I could see having an evolving wiki built upon discussion forums, but not primary resource.

Yes but Ben Golus is 1000x better and more productive help, the unity documentation is known to be insufficient, and it’s all just arbitrarily in the unity forums. Also vrchat isn’t .net. .net is an established language, it’s done until new versions come out, and also has a massive corporation and industry behind it. Vrchat is in unity and uses c#, .net is irrelevant to creators here.

What’s unrealistic is expecting anyone to be able to generate a comprehensive all-encompassing documentation for literally every little hack and trick and technique possible in vrchat, and have it sufficiently updated for every new one implemented.

And again, peoples’ problems are very often unique. I cannot count how many times i’ve run into problems that nobody anywhere has ever had before. Nobody technical has any clues, no results in searches anywhere, and many of which are proprietary problems to vrchat. You need to be able to discuss things and figure them out.

This isn’t a debate. You can like someone without them being the best thing since sliced bread to others. He is one person he isn’t on call he isn’t going to spend 8 hours explaining something to you, etc., etc.

Written documentation has existed since writing was invented. You can explain its limitations but don’t think we are unaware of it. Those limitations exist with Ben Golus and anyone else who is answering questions online. We understand the principle but thanks.

People’s problems are often “not unique” and of course there are probably people who have identical or nearly identical problems. You do not know those people. Not seeing their messages doesn’t mean the people don’t exist.

In any case I’m not trying to convince you of anything. I posted my results of using chatbots, post yours. Two bots produced code that would not compile.

I am hoping that the management at VRC considerers corporate support for documentation, orientation videos and possibly even new users events and a yearly, semi-yearly or even quarterly online event where we hear about future plans.

You seemingly do not run a business if you think that documentation and support is restricted to “massive corporations”. It simply is not a true statement and any simple search of the Internet will dispel that notion. You are making things up…

Ask Ben what he thinks and post his reply here.

First of all take the question out of the code and focus on the existing problem.
Otherwise I’ll start with a question, how to convert String (with various languages) to base64 encoding for sending on the current VRchat?

You can think about it and come up with a solution or get a robot to get the answer and see if it works and convert back and forth.

Seriously, if there is a programmatic problem, I think the official exposure of the API design policy is responsible for it, which leads to a very limited design and the inability to use a lot of libs.

Other problems are just clichés, and robots answering simple questions are exactly the right thing to do.

I just want to say that closing important and mostly niche information behind Discord’s gates would be a big mistake. It’s hard to google anything about content creation for VRChat anyway.

Discord is primarily designed for real-time chat, and managing content, tutorials, or resources may not be as intuitive. For organizing and archiving important information, a more structured platform or forum might be more suitable.

Not to talk about how relying solely on Discord may create a dependency on a third-party platform. If Discord undergoes changes, experiences downtime, or faces any other issues, it could disrupt communication within the community.

tl;dr: Discord is a big no no if it comes to archiving and communicating important information.

We’ve done an internal review of all the comments here and arrived at this spot:

  1. We want a centralized place where creators can have discussion that can be referenced and indexed for later usage
  2. We want a centralized, creator-editable set of documentation
  3. We want as many creators as possible to use it, and for everyone to be able to read it
  4. We want to improve our release process

1: Centralized Discussion

A Discourse forum makes the most sense here! Discord, while convenient and widely used, is very hard to index and search. Our experiments with Discord forums have been unimpressive, and they aren’t searchable on the web.

As such, we think that creating a discussion space on this Discourse would work best.

In addition, regarding posting permissions, we think that allowing everyone to post but encouraging creators to lead discussions works best. If it turns out that we must somehow vet creators, we can make that change later. But, for now, that seems hostile to newer creators.

What do you think?

2: Centralized, Creator-Editable Documentation

We looked into Discourse’s capabilities here. Discourse has wiki posts, which anyone with the right permissions can edit. The advantage here is that Discourse is already set up, and it’d be in the same place as the discussions.

We’ve also looked into traditional wikis, like MediaWiki and its many variants. This would involve setting up a new service, requiring the Communications team to bring in new resources. This is a harder sell.

So, right now, our choices are using a Discourse wiki category or creating a brand new wiki that Creators can modify, edit, etc.

The intent of this documentation would be different from the VRChat docs. Instead of being “API-reference” flavored, this would be more like instructional documentation, showing how to use the systems for common use cases.

We plan on seeding this documentation with a few starter pages written by VRChat team members of various expertise. A few ideas come to mind, like “how to create UI in worlds”, or “things to know when writing shaders for VRChat”, or etc.

I think it’d also be good to poke a few people who maintain their own guides and see if they’d like to adapt it for this community documentation. We’d also like feedback from them to ensure this process is easy and straightforward.

Thoughts? Personally, I am leaning towards using the Discourse wiki posts.

3. Encourage Creator Usage

For this one, we will likely ask the Creators team to put in links and promotions for the space on the VRChat Creator Companion. That is our current best way to get in front of the eyes of creators!

Shipping out emails is more challenging for various logistical reasons. In-app notifications aren’t possible due to various limitations.

So, the VCC seems like the best place to do so. Thoughts?

4. Improve Release Process

A lot of feedback requested a release cadence and a roadmap.

We’re going to work with the release team to see how we can best lay this out without disrupting the development process!

A release cadence (so you get things like “The April Update”) is fairly reasonable, and might just involve a slight change to our processes.

A roadmap, however, is more challenging. We are worried that people will be angry or disheartened to see projects sit stale for longer than they’re comfortable – or worse, get delayed indefinitely or canceled.

Priorities shift, dependencies get delayed, and as a result, our roadmap will be inaccurate beyond a 3-month range. We worry about discussions turning into debates about what priorities should be shifted higher or lower and fear that productive conversation might be hard to get out of those discussions.

In addition, we have many projects with “when it’s done” release dates, which makes it hard to map out! Complex projects, in particular, tend to have dependencies that, if delayed, also delay the parent project.

Despite these challenges, we’ll work with the release team to see how best to communicate our “on deck” projects and work to you.


Thank you for all the posts and feedback! In the new year, we hope to make changes that’ll make it easier and more enjoyable to be a VRChat creator of any kind. We welcome all of your feedback, and we read it all, so please keep it coming!

2 Likes

I think everything here is perfect and a great starting point. Discourse has been great, but it just doesn’t get a lot of traffic because people don’t know about it. So at least promoting it in the VCC is great (and I think promoting it in VRChat somehow would also be good).

The only thing I ask: Please be open to change over time. As the systems are used, they should adapt to existing real problems that come up (not perceived issues), whether that be things with information accuracy, who can edit stuff, etc.

I think if the Wiki has some ability for version control/rollbacks + suggested edits that can be viewed/implemented, that would work best. It means everyone can offer suggestions, but people can maintain it to make sure it doesn’t get cluttered or anything.

This needs to persist for a long time. I think the starting point is good, but don’t be afraid to adjust as needed. The priority should be a centralized location for people to learn and reference. The documentation needs to be concise, clear, accurate, and most of all: easy to understand.

It is possible to provide a complete path to learning in a number of directions, and to make it clear that some existing APIs and designs are radically inefficient and should not be used.

It is also important to be strict and clear about when these features should be used.

After spending a lot of time identifying problems, it turns out that features like instantiation, for example, should not be used or should be used very carefully unless the maximum number of objects is likely to be exceeded.

In terms of performance, there are concerns about GC, especially in Unity, where GC is poor and constantly affects the design of the upper-level APIs, which tend to favor object pool design after Unity 2021.

This alone will split the general use of C# from the use of C# on Unity3D, and there are potential memory allocation overhead issues with the implementation of various high level easy to use functions.

There are also some issues with the instantiation function, as some people have tried many times before realizing that they can’t synchronize over the network, and then discovering this from the documentation, which is already a waste of time.

In addition to these documents, some commonly used designs also need to update the API from time to time to encapsulate and reuse, for example, some people need to customize the camera, and like VRChat’s mirrors in the invisible does not generate overhead, some cases of combination of use may be out of control and lead to abnormal overhead.

Expect VRchat to get better.

I wonder if VRChat sees its purpose as a launchpad for future forms of social VR communities, and to what extent its active participation in cultivating the outgrowth from that is desirable or necessary.

From my point of view I personally think it’s clear that it needs to be an active participant in crafting and shaping this culture until it reaches escape velocity. Especially the creator culture; I think that the need for this has long been masked by the availability of a substantial community of world and prefab creators with tight cohesion.

With time, that cohesion has loosened, and I think that it is a torch that VRChat should in some way pick up or take official responsibility for, such that the creator community’s priorities can align well with VRChat’s priorities and in so doing prioritize a healthier relationship with the broader userbase as it actually exists, not just as it is experienced by power users, nascent creators, and seasoned operators.

These questions will naturally follow from curating a good developer resource and discussion platform. If not immediately, then as the forum matures, if serious time and attention are invested in it on VRChat’s end.

1 Like

I like most of what is decided.


I do hope that optimization topics are not too dogmatic in this forum/wiki though. There’s an absurd amount of misinformation and snake-oil in the performance optimization topic, and it’s a very delicate and diverse and ever evolving topic as new information is uncovered and tests are performed (especially when it comes to varying hardware). Such tests, like science papers, are still up for potential dialectic, where another paper or independent critic could question the conclusiveness of the others’ experiment, and provide their own logic or studies/tests.



Maybe having a new SDK install popup inside the editor as well; a panel that pops up with links to documentation, the discord and the discourse etc (make it eye-catching as well so it’s obvious what it is for immediately). Give it a “don’t show again” tick-box for people that don’t want or need it anymore. Not everyone exclusively pays attention to VCC itself other than to just initialize projects and such.

What limitations prevent in-game notifications? Add it to the quick menu launch pad slides. Even make an extra panel appear overtop the quick menu when you upload your first avatar or world (api already has flagging for that, no?) that you can hit X on.

This is valuable information nonetheless.
If something ends up on the backburner for a while, and then suddenly half the community is like “yeah but we want/need that thing more than the rest” then you have the knowledge to consider shifting it up in priority. A few people being upset about their favourite feature not coming to fruition is just an unfortunate reality that they’ll have to cope with.

It’s a different topic to creator advice. Just have a separate channel/subforum that is exclusively for discussing stuff about feature priority, and tell everyone to go there if they start discussing it. Just give them their own to have their debates.

The big issue is just people in general have no idea if they’re being heard or if their wants/needs are being considered seriously or not.

I don’t think everyone’s expecting exact dates. Even just a “pending development”, “in-progress” or a “in QA stage” or even “soon™” is adequate… annoying, but at least it gives a vague idea and lets who know how patient they ought to be. Having a “wanna do it someday” section is good too. If stuff is on schedule then you can give an approximate estimated release window.

People know delays happen, and are actually more accepting/tolerant of them than it may seem; people rather a delayed product than a broken product.




Like github pull requests.

1 Like

Bit late to the party responding to the response. But I really like what is outlined in this post. I think it hits most of the big points.

Here are a few of the things that I noticed:

I like the use of a forum over a discord for information preservation and search reasons, however I would like to note that I still think discord style communication is important as a less concrete and time consuming form of discussion. Creating a forum post or even a comment is a lot higher effort than a discord message for many people. It also fosters the unofficial discussion that often later becomes a concrete post.

For example, a chart with unverified performance information might be posted for other knowledgeable creators to look at, sanity check, and critique in a low stakes environment like a discord channel. From there, later, a full forum post with all the important (and at this point) verified information is made that can be referenced as an actual reliable source by those who may be less knowledgeable.

While I feel like this kind of discussion is already fostered by the community in community run discord servers, it may be a good idea to leverage something like Discourses “Discourse Chat” official plugin on the forum to help bridge that gap.


When it comes to the release schedule/features stuff, just knowing what is on deck and a rough idea of current focus would be great. Also having that list be updated when things change.

Things that come to mind in reference to this are the ability to save images to the users library on the world end, which I believe was first “sneak peeked” in the NYE2023 dev update, since then I can’t seem to think of any mention of it (though I could absolutely be wrong).

Likewise with native world persistence, which was first mentioned in 2021 with clear information that it was a long time off from being released (based on a quick google search), then later in 2023 a “its coming soon, please don’t implement this via VRCX” issue was made mentioning it again. I understand that this was mentioned there for a variety of reasons that are outlined in the github issue made, and that it was strictly no guarantees. But knowing that its a possibility, hearing its probably coming soon, hearing once more after the rough timeline was overshot, and then hearing nothing about it since just breeds discontent. I personally think that knowing that a feature is being worked on, and then delayed, at the time the shift happens, rather than not knowing if the feature is being worked on at all is much superior. Let alone knowing a feature is being worked on, and then never knowing what its current state is (though, again, I understand that this is not the ideal situation at all).

Maybe its just rose tinted glasses, but I think out of all the different groups of people that play this game, creators, some of the people most heavily invested, are a group that can be reasonable and understanding when it comes to delays. Provided that there is a level of trust built between the creators and VRC (which hopefully this whole thread is a step towards building). We get that stuff happens, things get cut, features get reprioritized.

What really sucks is not knowing what’s going on at all. Not knowing that priorities have changed.

1 Like

This seems to be actually the common sentiment across the industry, especially with the way AAA has been lately, people pretty unanimously agree that they rather the game take another year than be released broken and have to wait for patches before it’s playable. People are learning they rather be patient than demand a botched rushed product.

2 Likes

The fundamental structure of a Wiki is often misunderstood. People often think of it as “ordered” in some way but to use the phrase from here Wiki - Wikipedia it has “non-linear navigation”.

If in the middle of page describing UdonSharp the author wanted to show an example there are several possibilities. Directly in-lining the code in the same page using the appropriate “code” tags of course. Works but is limited as the only way to that example is via that page. So, someone refactors that example to it’s own wiki page and provides a link in the UdonSharp page. This provides two things. First the UdonSharp page is a shorter/faster read and it can easily support links to multiple examples and second that example page can be referenced from a completely different page named (perhaps) UdonSharp Examples and that can be referenced from VRChat code examples, etc.

It is network not a hierarchy and that is part of it’s beauty and power.

2 Likes

I’m late. I’ve been thinking about this issue during winter break and re-read what’s written here many times. However, I still don’t understand how VRChat Inc. views communication issues. And also, I feel VRChat doesn’t appreciate our creators’ problems.

What do you expect from the proposed “centralized discussion” and “centralized, creator-editable documentation”? We creators have no trouble communicating among ourselves. At least, that’s the case among the Japanese creators around me. There are places to go for advice when you need help understanding something, and there are also documents that teach techniques for creating worlds and avatars.

So, before discussing how to construct new things, please explain these:

  1. What is currently in operation?
  2. How is it in an undesirable state?
  3. How do you analyze why things are not going well?
  4. How is the new different from the old so that we can expect it to be in the desired state?

From my perspective, what needs to be improved in communication is the response from VRChat Inc.'s side.

When we give feedback, we often don’t get a response. As mentioned in this discussion, Canny “can feel a bit like a black hole” and “Pull Requests to UdonSharp have been abandoned for a long time”. I’m also involved in a localization project, and inquiries about the project’s policies are left unattended.

VRChat Inc. often provides a place for users to express their opinions openly, but that alone is not communication. That’s also happening here right now. For example, “What are the imagined benefits for a Creator Partnership program?” was unanswered. If I don’t know what it’s like, I can’t say anything appropriate, even if you ask for my opinion.

This lack of response is the most significant communication problem for us creators. We are not able to have a continuous exchange of opinions on specific topics. I understand this is the source of creator dissatisfaction and mistrust: pretending to listen, listening, and then ignoring it.


I think it’s a bad habit of VRChat Inc. to promote new things without talking about the past. That may have been good practice when you were a small startup, but that time has passed. Please tell us how you perceive the situation and the feedback you have received. Otherwise, mutual understanding will not be possible.

  • How has Discord been so far?
  • What state do you think the current document is in?
  • How was YouTube’s VRChat Learning Channel?
  • How has this forum (ask.vrchat.com) been so far?

etc. Please tell us how communication has been from VRChat Inc.'s perspective.


As I understand it, not being realized is not a problem. Understandably, circumstances may change from the original intention (for example, it was challenging to implement, or the business environment changed).

The problem is that you refrain from providing information out of fear of criticism and end up saying nothing.

  • Why did the plan change?
  • How can the original issue be repositioned in the current situation?
  • So, what are you planning to do next?

I would like you to explain these things, including the negative aspects.

(Of course, there may be things that you cannot say due to business strategy, etc. In that case, please say that you can’t inform us in detail. It would be more acceptable.)

I want to answer the first question. The key feature of VRChat’s communication pipeline is that VRChat Inc. is responsive. The communication problem for creators is that they can’t understand what VRC plans to do.


Regarding In-App Articles, it’s a good idea, but I would also like you to post the text on the website. That way, it can be machine-translated, and everyone in non-English-speaking people can read it.
I previously requested this (Canny ). And it is ignored. This is an example of a black hole.

5 Likes

I would like this as inclusive as possible. The Server should be open to everyone who is willing to go the painfull day as a creator. Tools and questions shouldn’t be limited to talanted people or selected people. As @tupper wrote “In some of the solutions and methods we list above, other creators might also benefit – for example, we envision the Creators Discord being a place where video content creators could also go to provide feedback and ask questions.” everybody should be allowed to provide feedback and ask questions. The only requirement i could think of would be to link your Discord account with VRChat to avoid all this trash scammers.
Depending on what services/information/… are avaialable in this Discord, i’m also not sure if a 3th party platform is in generel inclusive enough. What if somebody has something against a TOS change or discord stops there server in one country? How would this people get access to this informations?

We are probably not going to use Discord, and will instead use Discourse (these forums) instead, for a lot of the reasons that you mentioned and more!

2 Likes

I didn’t clue-in these forums were discourse…

If that’s the case, then this site needs an overhaul; the current way it’s arranged, both functionally and visually is very limiting, painfully mobile-centric, and doesn’t visually box-in information enough, along with wasting an absurd amount of screen real estate with empty space, making it not efficient to navigate at all.

There’s no clear way to see what categories, subforums, etc you are in without having to scroll through a mile of partially-loaded posts in any longer threads. It needs the UI structure more akin to traditional forums to give more information where you are on the site. It’s really not great for searching and navigating.

Without this information it just looks like a random facebook chat, or one of those messy comment sections at the bottom of news articles or something and you can get lost easily.

Unfortunately the Ask Forums are not very inviting nor particularly friendly to navigate.
Hyper-minimalism isn’t objectively good, it’s just a crappy corporate style trend.

the site needs to be as pleasant to use as possible if you want a lot of traffic here


ps: there should also be clear links to the vrchat support tickets system in the help, as well as the canny (or if you replace that god forsaken thing with something better)

Yeah. I had troubles when I browse Posts by searching a certain word. Because this Discourse system’s “smart” partial loading (or infinite scrolling) prevents me to use browser’s search function as usual.

Though I don’t understand this system well, I guess the key point is to organize Topics well and present them.

I just want to give a +1 to communication and resources outside of discord. I feel like perhaps an audience composed of entirely discord users (i.e. members of a discord server) may be slightly biased towards using discord. People who prefer to avoid discord may be underrepresented if outside resources like these forums have been a lower priority.

This goes extra if an invite-only or somehow exclusive creator discord is under consideration. Think of how the experience would be for someone trying to get into creating VRChat content. How do they find out this discord exists? What resources are available to them outside of it? How do they get support and ask questions outside of it? I just want to voice a strong opinion that the public Web is a much better format for this kind of information and discussion.

We are probably not going to use Discord, and will instead use Discourse (these forums) instead, for a lot of the reasons that you mentioned and more!

Edit: I should read the whole thread before commenting '^^. Good to hear this.