Fjordhoj
(Fjordhoj)
August 27, 2019, 8:38am
1
Hey. I have translated our game into danish from english default language.
Some translation within the Dashboard, and the rest with Google Translator Toolkit.
So the tested flow is:
Gather Text (Ends with red error, but doesn’t show any errors in output)
Export Text
Translate Game.po to Danish in google
Replace Game.po with translated Game.po
Import Text (Translation goes to 100%)
Compile Text
Now this is where it turns weird. When i test the game everything is translated except a few widgets. Their text is shown in the Dashboard and the .po file, so it has been gathered, but the text is shown in english.
If i now gather text again, the translated percentage goes down, and these texts are shown in the “untranslated” part of the dashboard again.
If i then repeat the above, the texts goes into translated upon importing, but are again not translated, and goes back upon gathering.
This is happening for about 4% of all texs, roughly 400 words.
What can be the cause of this?
Jamie_Dale
(Jamie Dale)
August 27, 2019, 12:17pm
2
It sounds like you have some unstable keys. Try the steps under “Validating Asset Caches” and see if that helps: Pipeline Optimization for Localization in Unreal Engine | Unreal Engine 5.1 Documentation
Side note: I’ve previously seen Google Translation Toolkit mangle the formatting markup we use for placeholder tokens. It may be better now, but just be aware.
Fjordhoj
(Fjordhoj)
August 27, 2019, 12:24pm
3
Where do i add those two line of code? I use the dashboard dor the different actions, so don’t know where to add extra arguments.
These options are not exposed in the Localization Dashboard. Instead you must use the gather INI file generated by the dashboard for your localization target, and run the localization commandlet manually.
The localization dashboard will generate an X_Gather.ini file under the Config/Localization directory in your project, where X is the name of your target. You use that when manually running the UE4 editor via the command line, eg) /Path/To/UE4/Engine/Binaries/Win64/UE4Editor-Cmd.exe /Path/To/YourProject.uproject -run=GatherText -config=Config/Localization/X_Gather.ini -ReportStaleGatherCache
Fjordhoj
(Fjordhoj)
September 2, 2019, 4:22pm
5
Got around to trying this. It doesn’t seem to solve the problem.
When running from the CMD i get this error log:
[2019.09.02-16.19.09:807][ 0]LogStreaming: Display: Took 0.301s to InitEngineTextLocalization.
[2019.09.02-16.19.10:064][ 0]LogTemp: Display: Loaded TP AllDesktopTargetPlatform
[2019.09.02-16.19.10:077][ 0]LogTemp: Display: Loaded TP MacClientTargetPlatform
[2019.09.02-16.19.10:088][ 0]LogTemp: Display: Loaded TP MacNoEditorTargetPlatform
[2019.09.02-16.19.10:100][ 0]LogTemp: Display: Loaded TP MacServerTargetPlatform
[2019.09.02-16.19.10:111][ 0]LogTemp: Display: Loaded TP MacTargetPlatform
[2019.09.02-16.19.10:122][ 0]LogTemp: Display: Loaded TP WindowsClientTargetPlatform
[2019.09.02-16.19.10:133][ 0]LogTemp: Display: Loaded TP WindowsNoEditorTargetPlatform
[2019.09.02-16.19.10:144][ 0]LogTemp: Display: Loaded TP WindowsServerTargetPlatform
[2019.09.02-16.19.10:148][ 0]LogTemp: Display: Loaded TP WindowsTargetPlatform
[2019.09.02-16.19.10:214][ 0]LogTemp: Display: Loaded TP AndroidTargetPlatform
[2019.09.02-16.19.10:214][ 0]LogTemp: Display: Loaded TP AndroidTargetPlatform
[2019.09.02-16.19.10:215][ 0]LogTemp: Display: Loaded TP AndroidTargetPlatform
[2019.09.02-16.19.10:215][ 0]LogTemp: Display: Loaded TP AndroidTargetPlatform
[2019.09.02-16.19.10:215][ 0]LogTemp: Display: Loaded TP AndroidTargetPlatform
[2019.09.02-16.19.10:216][ 0]LogTemp: Display: Loaded TP AndroidTargetPlatform
[2019.09.02-16.19.10:216][ 0]LogTemp: Display: Loaded TP AndroidTargetPlatform
[2019.09.02-16.19.10:216][ 0]LogTemp: Display: Loaded TP AndroidTargetPlatform
[2019.09.02-16.19.10:216][ 0]LogTemp: Display: Loaded TP AndroidTargetPlatform
[2019.09.02-16.19.10:217][ 0]LogTemp: Display: Loaded TP AndroidTargetPlatform
[2019.09.02-16.19.10:217][ 0]LogTemp: Display: Loaded TP AndroidTargetPlatform
[2019.09.02-16.19.10:217][ 0]LogTemp: Display: Loaded TP AndroidTargetPlatform
[2019.09.02-16.19.10:218][ 0]LogTemp: Display: Loaded TP AndroidTargetPlatform
[2019.09.02-16.19.10:218][ 0]LogTemp: Display: Loaded TP AndroidTargetPlatform
[2019.09.02-16.19.10:218][ 0]LogTemp: Display: Loaded TP AndroidTargetPlatform
[2019.09.02-16.19.10:218][ 0]LogTemp: Display: Loaded TP AndroidTargetPlatform
[2019.09.02-16.19.10:219][ 0]LogTemp: Display: Loaded TP AndroidTargetPlatform
[2019.09.02-16.19.10:219][ 0]LogTemp: Display: Loaded TP AndroidTargetPlatform
[2019.09.02-16.19.10:220][ 0]LogTemp: Display: Loaded TP HTML5TargetPlatform
[2019.09.02-16.19.10:275][ 0]LogTemp: Display: Loaded TP IOSTargetPlatform
[2019.09.02-16.19.10:275][ 0]LogTemp: Display: Loaded TP IOSTargetPlatform
[2019.09.02-16.19.10:296][ 0]LogTemp: Display: Loaded TP TVOSTargetPlatform
[2019.09.02-16.19.10:296][ 0]LogTemp: Display: Loaded TP TVOSTargetPlatform
[2019.09.02-16.19.10:308][ 0]LogTemp: Display: Loaded TP LinuxClientTargetPlatform
[2019.09.02-16.19.10:318][ 0]LogTemp: Display: Loaded TP LinuxNoEditorTargetPlatform
[2019.09.02-16.19.10:328][ 0]LogTemp: Display: Loaded TP LinuxServerTargetPlatform
[2019.09.02-16.19.10:339][ 0]LogTemp: Display: Loaded TP LinuxTargetPlatform
[2019.09.02-16.19.10:346][ 0]LogTemp: Display: Loaded TP LuminTargetPlatform
[2019.09.02-16.19.10:346][ 0]LogTargetPlatformManager: Display: Building Assets For Windows
[2019.09.02-16.19.10:374][ 0]LogShaderCompilers: Display: Using Local Shader Compiler.
[2019.09.02-16.19.10:901][ 0]LogDerivedDataCache: Display: Max Cache Size: 512 MB
[2019.09.02-16.19.10:906][ 0]LogDerivedDataCache: Display: Loaded Boot cache: C:/Users/fjord/AppData/Local/UnrealEngine/4.20/DerivedDataCache/Boot.ddc
[2019.09.02-16.19.10:920][ 0]LogDerivedDataCache: Display: Pak cache opened for reading …/…/…/Engine/DerivedDataCache/Compressed.ddp.
[2019.09.02-16.19.11:597][ 0]LogOnline: Display: STEAM: Loading Steam SDK 1.39
[2019.09.02-16.19.11:838][ 0]LogGameplayTags: Display: UGameplayTagsManager::DoneAddingNativeTags. DelegateIsBound: 0
[2019.09.02-16.19.11:924][ 0]LogGatherTextCommandlet: Display: Beginning GatherText Commandlet for ‘…/…/…/…/…/…/Unreal Projects/KoRNew/Config/Localization/Game_Gather.ini’
[2019.09.02-16.19.11:926][ 0]LogGatherTextCommandlet: Display: Executing GatherTextStep0: GatherTextFromAssetsCommandlet
[2019.09.02-16.19.11:927][ 0]LogGatherTextFromAssetsCommandlet: Display: SkipGatherCache: false
[2019.09.02-16.19.11:929][ 0]LogGatherTextFromAssetsCommandlet: Display: ReportStaleGatherCache: true
[2019.09.02-16.19.11:930][ 0]LogGatherTextFromAssetsCommandlet: Display: FixStaleGatherCache: false
[2019.09.02-16.19.11:931][ 0]LogGatherTextFromAssetsCommandlet: Display: FixMissingGatherCache: false
[2019.09.02-16.19.12:627][ 0]LogGatherTextFromAssetsCommandlet: Display: Asset gather cache metrics: 2061 cached, 681 uncached (0 too old, 681 no cache or contained bytecode)
[2019.09.02-16.19.12:631][ 0]LogGatherTextFromAssetsCommandlet: Display: Loading 2763 packages in 28 batches of 100.
[2019.09.02-16.19.29:339][ 0]LogGatherTextFromAssetsCommandlet: Display: Package ‘/Game/KingOfRetail/Core/Levels/City/University’ produced 0 error(s) and 2 warning(s) while loading. Please verify that your text has gathered correctly.
[2019.09.02-16.19.29:346][ 0]Display: The following errors and warnings were reported while loading ‘/Game/KingOfRetail/Core/Levels/City/University’:
[2019.09.02-16.19.29:349][ 0]Display: LogBlueprint: Warning: [Compiler Data_Articles] Function ’ Create Dynamic Material Instance ’ is unsafe to call from blueprints of class ’ Data Master '.
[2019.09.02-16.19.29:352][ 0]Display: LogBlueprint: Warning: [Compiler Data_Articles] [0018,69] Compile of Data_Articles successful, but with 1 Warning(s) [in 7.822 ms] (/Game/KingOfRetail/Core/Data/Articles/Data_Articles.Data_Articles)
[2019.09.02-16.19.30:191][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 1 of 28. 0 failed.
[2019.09.02-16.19.31:003][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 2 of 28. 0 failed.
[2019.09.02-16.19.31:612][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 3 of 28. 0 failed.
[2019.09.02-16.19.32:353][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 4 of 28. 0 failed.
[2019.09.02-16.19.32:757][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 5 of 28. 0 failed.
[2019.09.02-16.19.32:839][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 6 of 28. 0 failed.
[2019.09.02-16.19.32:903][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 7 of 28. 0 failed.
[2019.09.02-16.19.32:984][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 8 of 28. 0 failed.
[2019.09.02-16.19.33:051][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 9 of 28. 0 failed.
[2019.09.02-16.19.33:159][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 10 of 28. 0 failed.
[2019.09.02-16.19.33:274][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 11 of 28. 0 failed.
[2019.09.02-16.19.33:367][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 12 of 28. 0 failed.
[2019.09.02-16.19.33:461][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 13 of 28. 0 failed.
[2019.09.02-16.19.33:516][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 14 of 28. 0 failed.
[2019.09.02-16.19.33:603][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 15 of 28. 0 failed.
[2019.09.02-16.19.33:670][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 16 of 28. 0 failed.
[2019.09.02-16.19.33:735][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 17 of 28. 0 failed.
[2019.09.02-16.19.33:786][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 18 of 28. 0 failed.
[2019.09.02-16.19.33:843][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 19 of 28. 0 failed.
[2019.09.02-16.19.33:901][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 20 of 28. 0 failed.
[2019.09.02-16.19.33:963][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 21 of 28. 0 failed.
[2019.09.02-16.19.34:029][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 22 of 28. 0 failed.
[2019.09.02-16.19.34:086][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 23 of 28. 0 failed.
[2019.09.02-16.19.34:145][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 24 of 28. 0 failed.
[2019.09.02-16.19.34:207][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 25 of 28. 0 failed.
[2019.09.02-16.19.35:059][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 26 of 28. 0 failed.
[2019.09.02-16.19.35:447][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 100 packages in batch 27 of 28. 0 failed.
[2019.09.02-16.19.35:505][ 0]LogGatherTextFromAssetsCommandlet: Display: Loaded 63 packages in batch 28 of 28. 0 failed.
[2019.09.02-16.19.35:507][ 0]LogGatherTextCommandlet: Display: Completed GatherTextStep0: GatherTextFromAssetsCommandlet in 23.581437 seconds
[2019.09.02-16.19.35:509][ 0]LogGatherTextCommandlet: Display: Executing GatherTextStep1: GenerateGatherManifestCommandlet
[2019.09.02-16.19.35:544][ 0]LogGatherTextCommandlet: Display: Completed GatherTextStep1: GenerateGatherManifestCommandlet in 0.035113 seconds
[2019.09.02-16.19.35:546][ 0]LogGatherTextCommandlet: Display: Executing GatherTextStep2: GenerateGatherArchiveCommandlet
[2019.09.02-16.19.35:712][ 0]LogGatherTextCommandlet: Display: Completed GatherTextStep2: GenerateGatherArchiveCommandlet in 0.165182 seconds
[2019.09.02-16.19.35:714][ 0]LogGatherTextCommandlet: Display: Executing GatherTextStep3: GenerateTextLocalizationReportCommandlet
[2019.09.02-16.19.35:813][ 0]LogGatherTextCommandlet: Display: Completed GatherTextStep3: GenerateTextLocalizationReportCommandlet in 0.098697 seconds
[2019.09.02-16.19.35:815][ 0]LogInit: Display:
[2019.09.02-16.19.35:816][ 0]LogInit: Display: Success - 0 error(s), 0 warning(s)
[2019.09.02-16.19.35:818][ 0]LogInit: Display:
Execution of commandlet took: 23.89 seconds
[2019.09.02-16.19.36:409][ 0]LogShaderCompilers: Display: Shaders left to compile 0
I notice on each time it is run, it says " 681 uncached (0 too old, 681 no cache or contained bytecode)" Don’t know if it is supposed to do that
Fjordhoj
(Fjordhoj)
September 4, 2019, 9:15am
6
Problem seems to be solved.
We updated to 4.22, and right clicked on the folder in the content browser and selected “Validate Assets”. Don’t know which of these two that fixed it, but all text stays through “gather text” phase.