Hi,
I’m having an issue when adding new locales to Localization.
I’m using Addressable and CCD to deliever remote contents (levels,textures) and all the locale asset groups are local.
On my app start up, I setup the locale selector like this, using English as the fallback:
Everything works fine till I added new locales (CJK aka Chinese/Japanese/Korean) to my project recently. I try to use the previous player build (without CJK locale setup) to load new CCD content(with CJK locale setup). As we release the level updates periodically and the user wont update theri installed app immediately, this is common scenario we have to face.
In this case, after player update the catalog, Localization tries to load the CJK related assets and failed, which also leads to the failure that all locale asset failed to load.
2024/10/14 17:48:49.970 25170 25246 Info Unity Failed op : Resource<Locale>(Chinese (Traditional) (zh-hant).asset)
2024/10/14 17:48:49.971 25170 25246 Error Unity System.Exception: Unable to load asset of type UnityEngine.Localization.Locale from location Assets/BlockPuzzle/Localization/Locales/Japanese (ja).asset.
2024/10/14 17:48:49.971 25170 25246 Info Unity Failed op : Resource<Locale>(Japanese (ja).asset)
2024/10/14 17:48:49.972 25170 25246 Error Unity System.Exception: Unable to load asset of type UnityEngine.Localization.Locale from location Assets/BlockPuzzle/Localization/Locales/Korean (ko).asset.
2024/10/14 17:48:49.972 25170 25246 Info Unity Failed op : Resource<Locale>(Korean (ko).asset)
2024/10/14 17:48:49.973 25170 25246 Info Unity Failed op : Dependencies [Chinese (Traditional) (zh-hant).asset..., English (en).asset..., French (fr).asset..., German (de).asset..., Italian (it).asset..., Japanese (ja).asset..., Korean (ko).asset..., Portuguese (pt).asset..., Russian (ru).asset..., Spanish (es).asset..., Vietnamese (Vietnam) (vi-VN).asset...]
2024/10/14 17:48:49.982 25170 25246 Error Unity No Locale could be selected:
2024/10/14 17:48:49.982 25170 25246 Error Unity The following (8) Locales were considered:
2024/10/14 17:48:49.982 25170 25246 Error Unity Vietnamese (Vietnam) (vi-VN)
2024/10/14 17:48:49.982 25170 25246 Error Unity English (en)
2024/10/14 17:48:49.982 25170 25246 Error Unity French (fr)
2024/10/14 17:48:49.982 25170 25246 Error Unity German (de)
2024/10/14 17:48:49.982 25170 25246 Error Unity Italian (it)
2024/10/14 17:48:49.982 25170 25246 Error Unity Portuguese (pt)
2024/10/14 17:48:49.982 25170 25246 Error Unity Russian (ru)
2024/10/14 17:48:49.982 25170 25246 Error Unity Spanish (es)
2024/10/14 17:48:49.982 25170 25246 Error Unity The following (3) IStartupLocaleSelectors were used:
2024/10/14 17:48:49.982 25170 25246 Error Unity UnityEngine.Localization.Settings.CommandLineLocaleSelector
2024/10/14 17:48:49.982 25170 25246 Error Unity UnityEngine.Localization.Settings.SystemLocaleSelector
2024/10/14 17:48:49.982 25170 25246 Error Unity UnityEngine.Localization.Settings.SpecificLocaleSelector
As my understanding, Localization is built on Addressable system and Addressable catalog file holds all the assets management by the Addressable system, so Addressable catalog will includes all the Localization assets as internal ID, like Locales/String Tables. But I dont understand why the Localization tries to load the locales not existed in the local device and why Localization wont fallback to the existed locale in the local device.
Is there anything I can do the avoid this? At least the user could fallback to the existed locales.
My environment is as below:
- Unity: LTS 2021.3.39
- Addressable: 1.21.19
- Localization: 1.4.4
- CCD Management: 2.2.2
Thank you!

