I’m trying to fully localize my game and i’ve done the following steps:
Set each text shown to the user as Text variable
Setup the game script in Config/Localization/Game.ini
Run the gather text commandlet
Localize all the .archive generated on Content/Localization/Game
Run the gather text commandlet again so it exports the text (? this step is not clear to me but i read it somwhere else)
Now if i run my game usin -game -culture=es, my game runs in spanish which is the language i’m trying to localize to. However what i want to do is that when the game is launched on the device (Android) it runs automatically on spanish if the device’s culture is spanish or otherwise runs in english which is the default language. Tried packaging my game an running it on a device with language set to spanish but the game shows in english.
I figured it out, I’m going to post my solution here in case someone needs it or if a staff member comes and tell me if this is the right way. So, besides doing the above, i added the localization folder to the project packaging settings in Project Settings → Packaging → Add aditional asset directories to cook and also in the ** Add aditional non-asset directories to cook ** below .
I’m using version 4.7.6, i thought it would be included by default too but after doing what i said in the answer it worked correctly, otherwise it always falls back to default culture.
This shouldn’t be necessary, as the Packaging settings page already exposes some settings to control which cultures have their localization data get packaged. The fact that this fixed your issue suggests that localization data wasn’t getting packaged up at all. Does it work if you make sure that the foreign culture’s localization data is selected for packaging and internationalization support is set to EFIGS (if the culture is one of those)?
I’ve just tested with 4.8.2 and, using the Packaging settings I described, had no problems.