Code: Select all
game.check_prototype_translations({"en", "ru", "de", "it"})
Code: Select all
game.check_prototype_translations({"en", "ru", "de", "it"})
One more idea: As game.check_prototype_translations() checks all active mods for missing localizations, the report can be quite long and difficult to parse. So, an optional argument with the names of the mods to check would make the function complete faster and limit the report to actually relevant (because requested) output. Something like this:Code: Select all
game.check_prototype_translations({"en", "ru", "de", "it"})
Code: Select all
game.check_prototype_translations({"en", "ru", "de", "it"}, {"my_mod_1", "my_mod_2", "my_mod_3"})
I actually played around with this yesterday. First, I was running with the default language, and got 41 strings reported (remnants, corpses, trees etc. that don't need a translation). I then commented out some strings in the Russian localization and tested again (with English). The deactivated strings were not reported, as expected, because this was not the active language. Then I switched the game to use Russian. Again, I got just a report for the 41 completely unlocalized strings, but not for the strings I'd deactivated in locale/ru/ru.cfg. Either I made a mistake and removed unused strings (I'll have to check again to be sure -- it was quite late last night), or it really doesn't work as expected yet.Rseding91 wrote: Thu Feb 13, 2020 2:44 pm If you want to check other languages, switch to that language and run it again.
It's possible that it's broken some how, but it's also what we've been using for several years now. So, just let me know if you think you find something.Pi-C wrote: Thu Feb 13, 2020 3:07 pmI actually played around with this yesterday. First, I was running with the default language, and got 41 strings reported (remnants, corpses, trees etc. that don't need a translation). I then commented out some strings in the Russian localization and tested again (with English). The deactivated strings were not reported, as expected, because this was not the active language. Then I switched the game to use Russian. Again, I got just a report for the 41 completely unlocalized strings, but not for the strings I'd deactivated in locale/ru/ru.cfg. Either I made a mistake and removed unused strings (I'll have to check again to be sure -- it was quite late last night), or it really doesn't work as expected yet.Rseding91 wrote: Thu Feb 13, 2020 2:44 pm If you want to check other languages, switch to that language and run it again.
This is from the English locale file:Rseding91 wrote: Thu Feb 13, 2020 3:36 pm It's possible that it's broken some how, but it's also what we've been using for several years now. So, just let me know if you think you find something.
Not every string is required by the game; descriptions are optional so if you "don't have" those it's not an error. Same for some other things.
Code: Select all
[recipe-name]
bi-dart-turret=Dart turret
bi-dart-magazine-basic=Basic dart ammo
bi-dart-magazine-standard=Standard dart ammo
bi-dart-magazine-enhanced=Enhanced dart ammo
bi-dart-magazine-poison=Poison dart ammo
bi-dart-magazine-basic-c=Conversion basic dart ammo
bi-dart-magazine-standard-c=Conversion standard dart ammo
bi-dart-magazine-enhanced-c=Conversion enhanced dart ammo
bi-dart-magazine-poison-c=Conversion poison dart ammo
bi-dart-rifle=Dart Rifle
Code: Select all
[recipe-name]
bi_recipe_dart_turret=Дротиковая турель
bi_recipe_basic_dart_magazine=Базовый дротиковый снаряд
bi_recipe_standard_dart_magazine=Standard Dart Ammo
bi_recipe_enhanced_dart_magazine=Продвинутый дротиковый снаряд
bi_recipe_poison_dart_magazine=Poison Dart Ammo
bi_recipe_basic_dart_magazine_c=Conversion Basic Dart Ammo
bi_recipe_standard_dart_magazine_c=Conversion Standard Dart Ammo
bi_recipe_enhanced_dart_magazine_c=Conversion Enhanced Dart Ammo
bi_recipe_poison_dart_magazine_c=Conversion Poison Dart Ammo
bi_recipe_bi_dart_rifle=Dart Rifle
Code: Select all
202.285 Checksum for script __Natural_Evolution_Buildings__/control.lua: 2625040933
202.285 Info LuaGameScript.cpp:2298: ammo-category "Bio_Cannon_Ammo" (Natural_Evolution_Buildings) has no translation.
202.285 Info LuaGameScript.cpp:2298: ammo-category "Bio_Turret_Ammo" (Natural_Evolution_Buildings) has no translation.
202.285 Info LuaGameScript.cpp:2298: ammo-category "NE_Conversion_Ammo" (Natural_Evolution_Buildings) has no translation.
202.285 Info LuaGameScript.cpp:2298: ammo-category "Terraforming_Station" (Natural_Evolution_Buildings) has no translation.
202.285 Info LuaGameScript.cpp:2298: entity "Natural-Evolution-Spitter-Spawner-corpse" (Natural_Evolution_Buildings) has no translation.
202.285 Info LuaGameScript.cpp:2298: entity "Natural-Evolution-Biter-Spawner-corpse" (Natural_Evolution_Buildings) has no translation.
202.285 Info LuaGameScript.cpp:2298: entity "Bio-Cannon-r" (Natural_Evolution_Buildings) has no translation.
202.287 Verbose Scenario.cpp:351: Map setup finished: 0.050404 seconds.
Code: Select all
69.580 Checksum for script __Natural_Evolution_Buildings__/control.lua: 2625040933
69.581 Info LuaGameScript.cpp:2298: ammo-category "Bio_Cannon_Ammo" (Natural_Evolution_Buildings) has no translation.
69.581 Info LuaGameScript.cpp:2298: ammo-category "Bio_Turret_Ammo" (Natural_Evolution_Buildings) has no translation.
69.581 Info LuaGameScript.cpp:2298: ammo-category "NE_Conversion_Ammo" (Natural_Evolution_Buildings) has no translation.
69.581 Info LuaGameScript.cpp:2298: ammo-category "Terraforming_Station" (Natural_Evolution_Buildings) has no translation.
69.581 Info LuaGameScript.cpp:2298: entity "Natural-Evolution-Spitter-Spawner-corpse" (Natural_Evolution_Buildings) has no translation.
69.581 Info LuaGameScript.cpp:2298: entity "Natural-Evolution-Biter-Spawner-corpse" (Natural_Evolution_Buildings) has no translation.
69.581 Info LuaGameScript.cpp:2298: entity "Bio-Cannon-r" (Natural_Evolution_Buildings) has no translation.
69.583 Verbose Scenario.cpp:351: Map setup finished: 0.044683 seconds.
Code: Select all
21.556 Checksum for script __Natural_Evolution_Buildings__/control.lua: 2625040933
21.556 Info LuaGameScript.cpp:2298: ammo-category "Bio_Cannon_Ammo" (Natural_Evolution_Buildings) has no translation.
21.556 Info LuaGameScript.cpp:2298: ammo-category "Bio_Turret_Ammo" (Natural_Evolution_Buildings) has no translation.
21.556 Info LuaGameScript.cpp:2298: ammo-category "NE_Conversion_Ammo" (Natural_Evolution_Buildings) has no translation.
21.556 Info LuaGameScript.cpp:2298: ammo-category "Terraforming_Station" (Natural_Evolution_Buildings) has no translation.
21.556 Info LuaGameScript.cpp:2298: entity "bio-land-mine" (Natural_Evolution_Buildings) has no translation.
21.556 Info LuaGameScript.cpp:2298: entity "battle-marker" (Natural_Evolution_Buildings) has no translation.
21.556 Info LuaGameScript.cpp:2298: entity "Natural-Evolution-Biter-Spawner" (Natural_Evolution_Buildings) has no translation.
21.556 Info LuaGameScript.cpp:2298: entity "Natural-Evolution-Spitter-Spawner" (Natural_Evolution_Buildings) has no translation.
21.556 Info LuaGameScript.cpp:2298: entity "AlienControlStation-Area" (Natural_Evolution_Buildings) has no translation.
21.556 Info LuaGameScript.cpp:2298: entity "TerraformingStation-New" (Natural_Evolution_Buildings) has no translation.
21.556 Info LuaGameScript.cpp:2298: entity "Alien-Hatchery" (Natural_Evolution_Buildings) has no translation.
21.556 Info LuaGameScript.cpp:2298: entity "Natural-Evolution-Spitter-Spawner-corpse" (Natural_Evolution_Buildings) has no translation.
21.556 Info LuaGameScript.cpp:2298: entity "Natural-Evolution-Biter-Spawner-corpse" (Natural_Evolution_Buildings) has no translation.
21.556 Info LuaGameScript.cpp:2298: entity "Artifact-collector-r" (Natural_Evolution_Buildings) has no translation.
21.556 Info LuaGameScript.cpp:2298: entity "TerraformingStation-c" (Natural_Evolution_Buildings) has no translation.
21.556 Info LuaGameScript.cpp:2298: entity "Bio-Cannon-r" (Natural_Evolution_Buildings) has no translation.
21.556 Info LuaGameScript.cpp:2298: fluid "NE-alien-toxin" (Natural_Evolution_Buildings) has no translation.
21.556 Info LuaGameScript.cpp:2298: fluid "NE-enhanced-nutrient-solution" (Natural_Evolution_Buildings) has no translation.
21.556 Info LuaGameScript.cpp:2298: fluid "NE-nutrient-solution" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: fluid "NE-revitalization-solution" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "NE-alien-revitalization" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "NE-basic-alien-nutrientant" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "NE-enhanced-alien-nutrientant" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "bi-dart-magazine-basic" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "bi-dart-magazine-basic-c" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "bi-dart-magazine-standard" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "bi-dart-magazine-standard-c" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "bi-dart-magazine-enhanced" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "bi-dart-magazine-enhanced-c" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "bi-dart-magazine-poison" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "bi-dart-magazine-poison-c" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "Alien-Hatchery" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "Natural-Evolution-Biter-Spawner" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "Natural-Evolution-Biter-Spawner-refresh" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "firearm-magazine-c" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "copper-bullets-c" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "piercing-rounds-magazine-c" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "Biological-bullet-magazine-c" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "uranium-rounds-magazine-c" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "Building-Materials" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "AlienControlStation" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "Natural-Evolution-Spitter-Spawner" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "Natural-Evolution-Spitter-Spawner-refresh" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "TerraformingStation" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "pheromone-concrete" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "rejuvenate-pheromone-concrete" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: recipe "bio-land-mine" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: tile "exhausted-pheromone-concrete" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: tile "pheromone-concrete" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "pheromone-concrete" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "exhausted-pheromone-concrete" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "Building-Materials" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "bio-land-mine" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "bi-dart-magazine-basic" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "bi-dart-magazine-basic-c" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "bi-dart-magazine-standard" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "bi-dart-magazine-standard-c" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "bi-dart-magazine-enhanced" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "bi-dart-magazine-enhanced-c" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "bi-dart-magazine-poison" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "bi-dart-magazine-poison-c" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "firearm-magazine-c" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "copper-bullet-magazine-c" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "piercing-rounds-magazine-c" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "Biological-bullet-magazine-c" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "uranium-rounds-magazine-c" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "battle-marker" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "Natural-Evolution-Biter-Spawner" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "Natural-Evolution-Biter-Spawner-exhausted" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "Natural-Evolution-Spitter-Spawner" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "Natural-Evolution-Spitter-Spawner-exhausted" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "Alien-Hatchery" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "AlienControlStation-Area" (Natural_Evolution_Buildings) has no translation.
21.557 Info LuaGameScript.cpp:2298: item "TerraformingStation-New" (Natural_Evolution_Buildings) has no translation.
21.559 Verbose Scenario.cpp:351: Map setup finished: 0.044492 seconds.
Oh, fallback -- so it's not "any language" but English that needs to have a locale. Good to know.Rseding91 wrote: Tue Feb 18, 2020 11:03 am Ah yes, there's the fallback system. Locale falls back to English if the active language doesn't have a key so it doesn't show missing locale entries as other languages update. I can change the check logic so it doesn't use the fallback system because.... well that's kind of the point of the check function
Or, at least have it report as a warning and not an error?