[1222] Text chat isn't persistent.
closed
Silent
The current implementation of text chat lacks any kind of persistence. Combined with the restrictions on it, it is difficult to use in a conversation.
TL;DR: Either implement a chat log like an MMO, or make the text buffer something that stays around indefinitely. Doing it this way is the worst of both systems.
The OSC-based text chat systems that have been developed to this point have a neat quirk - they are essentially a block of values which correspond to a tileset. All updates are just changing the state of the values, and all updates have the same priority. There's no permanence because it's just a state or configuration of the underlying system, but that's okay because the source controls what's in the buffer. Given that avatar parameters sync fast, you can type quickly and respond to people in a conversation as fast or as slow as you want.
A traditional text chat system, on the other hand, is something you submit messages to, and the messages are relayed to other people. Messages are appended to their logs and can't be edited. However, because of the visible logs, you can always see what someone has said in your presence and any corrections they follow it up with.
This system takes the worst aspects of both systems and combines them with new problems.
Users submit messages to a text buffer which is heavily rate limited (so it can't be updated often) and has no history (so following what's been said is difficult to impossible).
The default settings limit to friends only and have a long timeout when an arbitrarily chosen message rate is reached. The rate picked is so low a typical conversation overflows it. It is possible for people to be talked to and not realise it, or miss messages and never know.
On top of that, the way messages appear depends on the receiver rather than the sender's settings.
Other platforms like cluster implement a conventional text chat system on top of their bubbles which appends the messages to a log. Generally speaking, text chat has been implemented in games and online services fine for the past 20 years. It would be a good idea to either study their best practises, or make a proper attempt to refine the new systems the community has created.
Log In
Tupper - VRChat Head of Community
closed
We do not plan on making text chat persistent. It not having persistence is by design.
Our intent was to make text chat as close to voice as possible, within reason. There's some places where this boundary line is hard to draw, but some places are pretty solid. In particular, voice is ephemeral (unless you record it). So, text is also ephemeral (unless you record it).
You mention some other changes which have been addressed:
- You can update text up to 5 times per 5 seconds before being rate limited (alternately, you have a cooldown of ~1.1 seconds)
- In an upcoming (but unscheduled) update, default display will be changed to Everyone
- Timeout or "Display Duration" is now a slider in the QM
Regardless, we thank you for your feedback!
Yewnyx
Tupper - VRChat Head of Community
Wasn't a fan of mine being merged in for this reason.
Would you consider a "resend previous message" feature sufficiently ephemeral? It strikes me as useful for QoL without materially prolonging the lifetime of the text (and also shouldn't have any negative impact if it were to be cleared on client launch or even map change)
Tupper - VRChat Head of Community
Yewnyx: That's fine, I un-merged it. I agree that's a separate feature request and doesn't cover the same ground as this post.
Ophura
Tupper - VRChat Head of Community: you do say "Our intent was to make text chat as close to voice as possible" meanwhile, at least to my knowledge, Emojis are representatives of things including: facial expressions, food, flags etc... most of which can be represented with word(s), however, facial expressions are not as close to voice at all... would you explain why they're even allowed?
Tupper - VRChat Head of Community
Ophura: They're part of the standard UTF-8 codepoint set and removing them seemed unnecessary.
If you'd like to have emojis removed from the chatbox, I'd encourage you to create another feedback item!
Scout - VRChat Head of Quality Assurance
tracked
Lhun
If the concern on vrchat's end is server space, text chat can be persistent to user cache. In "traditional" vrchat, if you miss the beginning of the conversation that's to be expected, but we should be able to keep our own buffer.