Hello.
We have ran into trouble while switching languages. Here is the situation:
- move cursor over Hotspot or something. See its name in current language
- switch language
- that Hotspot remains with previous language, all other text (that wasn’t shown previously) switches normally
It happens with almost any element - Speech, Character name etc.
Where should we look to fix that?
Comments
Hey Chris,
I just wanted to add one more detail:
When the game is restarted, all UI text displays in the correct language, so the translations themselves are working fine.
The issue is that during runtime, when the language is changed using Options, with AC Cycle button, some UI elements do not update immediately — the text remains in the previous language until the game is restarted.
All UI elements are built using Adventure Creator’s menu system and use TextMeshPro components (no custom UI outside of AC). It seems like KickStarter.playerMenus.RecalculateAll might not be triggering updates for some menus or elements at runtime.
Thanks a lot!
What's your AC version? I can't reproduce this in the latest release by switching language when over a Hotspot.
Are there special steps needed to recreate this, and does it occur if you use either AC as your Menu's Source, or regular Text components?
Yes, I’ve tested it with both AC source and Unity UI (Text - Legacy) — the issue occurs in both cases.
Here’s a video showing the problem:
Thanks for the videos, though I cannot recreate such behaviour on my end.
If you create a new project, import AC, and run the 3D Demo, you should find that you can similarly switch between English and French from the Options menu. Does that have the issue there?
Thanks for the suggestion!
I tried running the 3D Demo in a fresh project, and you’re right — the language switching works perfectly there. So it does seem to be something specific to our project setup.
Is there a recommended way to reset AC settings to default across the board (e.g. Manager assets, persistent objects) just to rule out config issues?
Also, we’re using Cinemachine in the project — not sure if that could have any impact, though I did test the issue with a standard AC camera as well, and it still didn’t behave correctly.
Let me know if there’s anything else I should try — thanks again!
The translation data will be stored within the Speech Manager, but you could try swapping out your Settings and Menu Managers with those of the 3D Demo, i.e. Demo_SettingsManager / Demo_MenuManager.
Conversely, you could try running the 3D Demo with your own Speech Manager asset. The text IDs won't match, but you should at least be able to check if text is changing upon switching language.
Are you using Unity's Localization tables?
If I try the Demo in a separate project, the language switching works correctly. But when I add the Demo to our current project — loading it via
Adventure Creator > Getting Started > Load 3D Demo
, which loads everything including managers, cameras, etc. — the language also switches, but the changes only become visible after restarting or changing the scene.We’re not using Unity’s Localization tables yet, but we plan to try them soon.
This is with all of the 3D Demo's Managers loaded?
Does sound like a project issue. You might try copying over your various ProjectSettings asset files from the working demo project, though I can't think what the cause would be.
Yes, it does seem like an issue with the Unity environment. I already tried deleting the Project Settings folder and restarting the project, but that didn’t help. At this point, I have almost no idea what exactly is causing the problem.
Finally found the reason why the UI wasn’t updating when switching languages in Adventure Creator. The issue is caused by the Unity Localization package. We don’t actually use it, but it was added to the project.
I was able to reproduce the problem both in my own project and in a clean project with only Adventure Creator.
To reproduce:
Thanks, with this I was able to reproduce the issue.
I'll see this gets fixed in the upcoming update. If you remove Localization for now, it should work in the meantime.
Great, thanks! Yes, we’ve disabled it for now, and honestly, I’m not sure if we’ll use it at all going forward.