Introducing our New Localization Tools!

No need to ask.

1 Like

That doesn’t answer my question. He only confirms they are working on supporting more languages.

I’m asking if they plan to add support other languages for studio itself which right now it only supports English.

1 Like

Thought you meant the built-in plugin. My bad.

1 Like

No problem - I’m just curious if they will support other languages for studio itself. It would make sense that they would in the future, but I haven’t seen anything on it yet.

1 Like

This could be used to create a language learning game… I’m currently using LingoDeer to learn Japanese, but it’d be fun to create an interactive learning experience.
I don’t see many of those on Roblox.

+1 If you think there should be a “Learning” category/genre.

5 Likes

We definitely plan on supporting studio in other languages long term. I’m not sure of where that is on the roadmap right now though.

2 Likes

This is actually a really cool idea! Perhaps one day schools could even use educational games on Roblox to teacher younger students other languages.

Also, Roblox no doubt should add a new genre, but I think it should be called “Educational” instead of “Learning”.

3 Likes

Do ServerScriptService, ReplicatedStorage and ServerStorage empty for anyone else when using es-es in play solo?

1 Like

Small issue here is that whether or not the game stays up is up to some random person. No obligation to keep it up. It’s a small issue, but it makes other resources more feasible.

1 Like

Mine seem to be fine.

Image

image

1 Like

Where can I find the supported local ids? Can’t find any information about them on the wiki.

1 Like

It would be nice for it to have a page on the wiki for clarity, but this page is probably helpful:

5 Likes

Hey @Polyhex,

At least officially, at the moment our only “supported” locale ids are en-us and es-es. “Officially.” :weary:

More generally we use IETF RFC 5646 language tags. Conventionally the country code is upper cased, but here at Roblox we lower case the whole thing (don’t ask).

As an example here’s one more exhaustive list. No guarantees that we will support the one-part two letter generic language codes, which this list does include. We’re still having debates about that.

If you stick to the more popular two-part codes here you should be golden. No guarantees on the more exceptional cases, like where the same language can be used in two different scripts (e.g. Serbian, or even Chinese). The standards here are a little bit loose unfortunately, which means different companies have implemented things slightly differently. We’re still working on locking down our standards on these more complex cases.

7 Likes

Hi devs!
If you haven’t seen the localization tutorial, I’ve provided a link to it below.

I also just added a table of 15 language codes which you use to get started on localizing beyond Spanish.

IgnisRBX

8 Likes

The fact that you told me not to ask about the fact the country code is lowercased makes me want to ask.

Please, feel free to provide an answer whos own existence forces me to question my understanding and capacity to continue in the field of Computer Science and Engineering.

1 Like

Have you considered streaming fonts as if they were assets? If download size is the problem, the only thing the client really needs from an api-standpoint is data on character spacing (for TextService:GetTextSize() and .TextBounds), then maybe bundle a low-res variant of the font that gets updated in quality when they see that font in-game for the first time.

2 Likes

If you want to simply scrape all of the text from your game and put it into this, here’s some ROUGH code that you need to customise for your own usage

local tableLocal = game.LocalizationService.GeneratedLocalizationTable
local newTable = tableLocal:GetEntries()
for _, value in pairs (game.ServerStorage.Questions:GetDescendants()) do
	pcall(function()
	if value.Value ~= nil and string.len(value.Value) > 1 then
		table.insert(newTable, {Source = value.Value, Context = "Workspace.Questions.QuestionScreen.SurfaceGui.Back.Question", Example = "", Key = "", Values = {}})
	end
	end)
end

tableLocal:SetEntries(newTable)
5 Likes
2 Likes

I have a question, according to the video, we have to play out the games so it can capture the text it has seen. What if there is a lot of text in the game, that would take forever to play all the rounds! Is there any way to just capture all the text so none gets left out? Am I missing any information? Please respond, thanks!

2 Likes

At this time, it isn’t possible to capture all text at once.