In-Experience Text Chat Translations

I mean that’s how Arabic works… it just needs to be right to left.

3 Likes

This is allowed when using policy service

3 Likes

There a way to test if my implementation of using .Translation works? Currently if I switch my language to something else, send a message in that language, then switch my language back to English, the translation indicator doesn’t show up.

2 Likes

Happy to see that we’re getting more inclusivity with the new chat service updates. Awesome work.

2 Likes

The main reason is it’s open source and can be modified. Being able to open it up and quickly tweak it to do specifically what I want it to. I’m sure the new chat can do most things the existing module can, but there’s some things (most notably, chipio’s icon tags), or bot speakers, that just cant be done with the new one.

There’s parts of the API of the new chat service that I REALLY like, most notable TextCommands being instance based, the old system with processor commands was just funky (especially because Luau typing didn’t exist when it was written).

If the new chat service gets bot speakers and the channel bar, I may consider switching as thats what’s putting me off currently switching.

7 Likes

Do you mean like system messages? How to make a System Chat Message using the new TextChatService


I mentioned this and they said it’s coming :slight_smile:

2 Likes

Very cool!
Hopefully the channels system will be added to TextChatService soon.

2 Likes

This is kinda wicked, wonder who’s going to make a ‘language school’ game first :wink:

2 Likes

In the Legacy Chat System, you can create a new speaker using AddSpeaker, this was identifable as a non-player speaker because the Player property would be nil (obviously you can overload it but this is not abusive usecases). This is different from a system message because the message would be rendered as if another player sent it.

local ChatService = require(game:GetService("ServerScriptService"):WaitForChild("ChatServiceRunner").ChatService)

local spk = ChatService:AddSpeaker("Bot")
spk:JoinChannel("All")
print(spk)
spk:SayMessage("Hi I'm a bot speaker!", "All", {NameColor = BrickColor.new("Bright green").Color})

image

4 Likes

awsome! been waiting for this for ages, i always seem to be that guy that ends up in a server entirely filled with people speaking spanish lol

2 Likes

This is cool! Wish the post went into the technical specs behind this new feature, its disappointing to have more info shared about this on news sites than Roblox shares to developers themselves.

Here’s some extra info from The Verge:

Roblox began with building a transformer-based large language model (LLM), which trained on publicly available and internal data. It placed the LLM within a mixture of experts (MoE) architecture, an environment that ran multiple translation apps, with each one an expert in one language. This allowed Roblox to save on resources without needing to build a separate LLM for each language. Sturman said considering the scale of their project, his team believed it was easier to build their own model than modify an off-the-shelf LLM.

Paragraph on future plans:

Sturman said the hope is for the translator model to move past just translating text chats eventually. “In the future, we could use AI to translate non-compliant [banned] words to compliant words or throw it at voice chats for real-time voice translation. There’s many possibilities,” Sturman said.

7 Likes

This is neat stuff!
Though has this feature been properly tested on edge-cases?

Language is context sensitive and auto-translation tools has proven many times that context (especially when slang is used) sometimes gets lost or warped resulting in possible miscommunication.

Has the feature been tested and fine tuned for such cases yet?

4 Likes

Regarding that statement you made. There have already been rumors and speculations about LegacyChatService customization and support. Besides is it really even necessary to even customize text chat in the first place?

3 Likes

I’ve been waiting for months for this update to come out, I think it could be especially useful for learning new languages.

1 Like

Is it possible to read these new settings from a LocalScript?

Edit: It’s TextChatService.ChatTranslationEnabled.

UserSettings().GameSettings.ChatTranslationEnabled doesn’t work because it’s locked behind the RobloxScript permission.

4 Likes

Definitely, both ways probably, I wouldn’t be surprised if there is some sort of stricter filter

This is a fantastic update. More than half of the players in my game are non-English speakers. After channel tabs are supported in TextChatService, I will definitely be using this.

Amazing, I have been looking forward to this for a while! I’m a Turkish user, and often end up in Russian, Greek and Ukrainian servers judging by the alphabets used in chat messages and to be able to know what the Russians are saying now is so useful! Can’t wait to try it out for myself!

3 Likes

this is really good! one question tho. i have a custom chat gui for my game, can i use an api or something to do this same thing for my ui?

Another cool update from Roblox, thank you.
very proud of the update this time because this is what will unite the world’s roleplay games and the game team that is very needed
and a game based on a lot of communication

Once again, thank you roblox for the update developers will be very grateful for this great update

update that changes everything about the communication language