Unciv icon indicating copy to clipboard operation
Unciv copied to clipboard

Unit type strings are not clear for translation purposes

Open J0anJosep opened this issue 2 years ago • 1 comments

I am having problems translating unit types: Water units Land units Archery units Submarine units Gunpowder units ...

The strings that refer to unit types is not clear. It would help having a visual mark for those.

Some of them have different uses. In English it is no problem, but in certain languages it is difficult to deal with them:

  • "Submarine": Submarine refers to both a unit name and a unit type. The translation would be easier with disambiguated strings. I understand that the "Wolfpack" promotion applies to units with submarine type. But in the civilopedia, it shows that applies to "Submarine" units and not to "Nuclear submarines". (It is possible that the unit type of "Submarine" should be "WaterSubmarine" instead of the current "Submarine" type, but not sure about it)
  • "Archery" and "Gunpowder": These refer to a technology and a unit type each of them.
  • "Land" and "Water": These refer to a tile type and a unit type each of them.

I think it would help translators disambiguating those strings and marking strings for unit types in template.properties, something like:

## These strings refer to unit types. Translate them appropriately, e.g.:
##LandUnitType = Land
LandUnitType = 
WaterUnitType = 
SubmarineUnitType = 
GunpowderUnitType = 
...
Water = 
Land = 
Gunpowder = 
...

So in translated strings I could define:

## These strings refer to unit types. Translate them apropriately, e.g.:
##LandUnitType = Land
LandUnitType = terrestres
WaterUnitType = navals
SubmarineUnitType = submarines
GunpowderUnitType = amb armes de pólvora
...
Water = Aigua
Land = Terra
Submarine = Submarí
Gunpowder = Pólvora

J0anJosep avatar Aug 02 '22 19:08 J0anJosep

The same is in strings: "Open terrain" and "Rough terrain"...

pyotr71 avatar Aug 02 '22 21:08 pyotr71

This issue is stale because it has been open 90 days with no activity. Remove stale label or comment or this will be closed in 15 days.

github-actions[bot] avatar Mar 14 '24 21:03 github-actions[bot]

@yairm210 Interesting question. I assume this is still a wontfix as it breaks mod compatibility, but there maybe is merit to something that allows translations to define things with this level of granularity. Though, not sure how well handled our translation engine for this

SeventhM avatar Mar 16 '24 23:03 SeventhM

Yes, this is an open question that I don't have an answer to. This is especially hard because currently when translating a string it's easy - get the template, replace with translation, replace parameters with translated parameters. If we allow context-dependent translations, we'll need to try to figure out the context of each of the translated parameters - Not Simple. From a relatively simple string interpolation problem this becomes a "what does this string actually mean" problem - not simple at all

What we did with some of the more problematic areas in the past is change one of the sides - "Immortal" unit became "Persian Immortal" to not conflict with difficulty, "Gold" resource became "Gold Ore" to not conflict with stat, that's a viable direction for these problems as well, if we can think of something.

yairm210 avatar Mar 17 '24 06:03 yairm210