Currently :SetUniverseId()
and :SetPlaceId()
do not sync up the universe’s localization cloud data, unlike the datastore which does gain access to read/write when setting these parameters.
In addition to this, any async functions returning a translator takes ages to return in the RBXL compared to the non-RBXL variant (GetTranslatorForLocaleAsync
and GetTranslatorForPlayerAsync
)
Uploaded place output
Synced RBXL output
Reproduction:
- create (or use) a universe and note down the GameId and PlaceId
- add an entry to the localization of that universe, im using german (de-de), with the key “Edit” and make sure its fully finished translating.
- create a new rbxl file
- run
game:SetUniverseId(GameId) game:SetPlaceId(PlaceId)
in the rbxl’s console, replacing the texts with their respective IDs - make sure stuff is synced up, the asset manager should now be displaying folders/places/assets of said universe
- add a (local)script with the following content to the rbxl
local LocalizationService = game:GetService("LocalizationService")
local success, translator = pcall(function()
return LocalizationService:GetTranslatorForLocaleAsync("de-de")
end)
if success then
print("GameId:", game.GameId)
print("PlaceId:", game.PlaceId)
print("localeId:", translator.LocaleId)
print("RBXL. Key: Edit")
print("Key format value:", translator:FormatByKey("Edit"))
end
- press play
If done correctly the PlaceId and GameId should be the same as what was inputted in step 4