It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
Hey, for the next version of DevilutionX we are bring multi language support.

We are adding new fonts that will let the game render any Latin or Cyrillic based language in the same style as the original English texts.

Current status:
Italian: 100%
Bulgarian: 100%
Russian: 100%
German: 99%
Chinese Simplified: 98%
French: 97%
Polish: 82%
Portuguese: 88%
Chinese Traditional: 80%
Spanish: 80%
Korean: 55%
Danish: 7%
Hungarian: 6%

Besides translation we also need people to play test and find issues with the translations as well as proof reading.

If you are interested in helping then please see our translation guide here: https://github.com/diasurgical/devilutionX/wiki/Translation-Guide
Post edited October 09, 2021 by Anders_Jenbo
You might be interested to know that someone from the french Diablo community made translated .exe files for both Diablo and HellFire several years back, which as far as I know were complete (I don't remember testing them myself much as I didn't mind playing the game in english).

These translated .exe files can be downloaded from here : https://diablo.judgehype.com/telechargements/diablofr110.zip and there : https://diablo.judgehype.com/telechargements/hellfirefr.zip

The translation may not be 100% accurate though, as they had to restrain the length of the translations to be the same or shorter as the original english text if I recall correctly, however it still may be of some use, I suppose.
Post edited August 26, 2021 by Constance
Same for German, Diablo and Hellfire translations are both 100% finished and you can find them only here (unfortunately, copies of unfinished versions of this translation circulate on various platforms, also on gog): https://planetdiablo.eu/forum/threads/diablo-auf-deutsch.1713977/post-27468448

Excuse my ignorance, I'm wondering whether this can be useful for devilutionx, or are there technical reasons for starting a new translation from scratch for devilutionx?
Defiantly would be cool if the authors of throes translations are happy with using using there work. Additionally since I don not speak these languages I thin we would need a native speaker migrate the texts and proof read it to deal with the parts that where abbreviated or somehow compromised because of the limitations around hex edit based translations.
Oh ok, as for the German translation I can say that if it helps, of course you can recycle it for devilutionx, I don't mind. There will be no problems with abbreviated or left out text passages - I simply expanded the exe file in order to have enough space to fit everything in (german is always longer than english ;-).

But I'm still uncertain about how this is going to help. You can't simply copy-paste everything to devilutionx, so how does the migration work?
You can find a translation template and manual in the DevilutionX github page which shows how the translation is handled. There are currently assets for the majority of European languages. Most of the Latin, Cyrillic and Greek based alphabets are supported. There are plans to add Asian languages in the future as well.

You can find the currently done translation here along with the translation template (.pot)
https://github.com/diasurgical/devilutionX/tree/master/Translations

Here is the translation guide
https://github.com/diasurgical/devilutionX/wiki/Translation-Guide

And also a glossary
https://github.com/diasurgical/devilutionX/blob/master/Translations/glossary.md

Hope this helps!
Post edited August 28, 2021 by NikolaiPopov
avatar
sheng_luwei: But I'm still uncertain about how this is going to help. You can't simply copy-paste everything to devilutionx, so how does the migration work?
Since DevilutionX is source based text can be handled much more dynamically than with previous methods.

We use the PO format for translations, Simply install Poedit https://poedit.net/download and the German translation file:
https://raw.githubusercontent.com/diasurgical/devilutionX/master/Translations/de.po
(this contains both Diablo and Hellfire as 1773 translatable texts)

I dumped the text content of the files you linked to, but they do not align well enough with the original for me to be comfortable doing this for a language i do not speak.

I uploaded the text dump on the GitHub issue for making a German translation: https://github.com/diasurgical/devilutionX/issues/905#issuecomment-907668296

It should then be pretty easy for a native speaker to match up the correct texts to transfer them from the text dump.

Also attached a screen shot of how the German translation looks with the new font :)
Attachments:
german.png (408 Kb)
Post edited August 28, 2021 by Anders_Jenbo
Thanks, ok well, I only had time to take a short look at the files yet.

Is the list of text lines in Poedit really exhaustive? I can't find the '%s of %s' or '{:s} of {:s}' line.
If you ask me, it's the most important line for the german translation because you have to deal with inflections of prefixes and articles, which is a vital move for the translation to sound natural or correct at least. The translation in the de.po file apparently does not do that.

The text dump you posted looks horrible because the text is scrambled by the umlaute and the ß letter. Hard to patch everything up but still better than doing everything manually altogether. I might have time next week to work on it if the whole thing hopefully turns out to be comprehensible for slow learners like me. :-)

The german font looks good. Did you add slots to the font CEL files for that?
avatar
sheng_luwei: Thanks, ok well, I only had time to take a short look at the files yet.

Is the list of text lines in Poedit really exhaustive? I can't find the '%s of %s' or '{:s} of {:s}' line.
If you ask me, it's the most important line for the german translation because you have to deal with inflections of prefixes and articles, which is a vital move for the translation to sound natural or correct at least. The translation in the de.po file apparently does not do that.

The text dump you posted looks horrible because the text is scrambled by the umlaute and the ß letter. Hard to patch everything up but still better than doing everything manually altogether. I might have time next week to work on it if the whole thing hopefully turns out to be comprehensible for slow learners like me. :-)

The german font looks good. Did you add slots to the font CEL files for that?
You can say that, we are basically redrawing the font from 0
avatar
sheng_luwei: Is the list of text lines in Poedit really exhaustive? I can't find the '%s of %s' or '{:s} of {:s}' line.
If you ask me, it's the most important line for the german translation because you have to deal with inflections of prefixes and articles, which is a vital move for the translation to sound natural or correct at least. The translation in the de.po file apparently does not do that.
Yes, the game has less then 2000 lines in it. "{:s} of {:s}" is defiantly in there, it's translated as "{:s} der {:s}" for now. We are aware of the limitation this poses, but it is a non trivial issue that cannot be solved for all languages in a generic way. Instead we plan to solve it using a LUA script, that will be called when an item is generated. This allows the translators to setup rules for there language so that a proper name can be generated.

We do have an implementation of plurality that works for most languages, but German isn't really affected by it since it has the same forms as English in this regard.
avatar
sheng_luwei: The text dump you posted looks horrible because the text is scrambled by the umlaute and the ß letter. Hard to patch everything up but still better than doing everything manually altogether. I might have time next week to work on it if the whole thing hopefully turns out to be comprehensible for slow learners like me. :-)
Yeah to much for me to figure out, glad it's of some help :) Appreciate you looking in to it.
avatar
sheng_luwei: The german font looks good. Did you add slots to the font CEL files for that?
We are switching to a Unicode font (drawn by NikolaiPopov), so technically we have up to 65535 symbols we can handle (for now we will only implement the BMP part of Unicode, so no emojis for now). At the moment we have the first 1279 symbols done. Which is a nice step up from the original 143.
What du you mean, drawing? It's insane, considering this would include chinese and japanese. I'm shocked.

Regarding the inflections I once solved half the problem (the articles) by going for '%s de%s' and naming the suffixes 's Tigers' or 'r Magie' and so on, which was a fine remedy - but I could only find a mere acceptable and correct solution for the other half of the problem (the prefixes). That script you are talking about would hence be the big hit! I like that way of approaching problems.
avatar
sheng_luwei: What du you mean, drawing? It's insane, considering this would include chinese and japanese. I'm shocked.
Most of the drawing is being done with PhotoShop and some in GIMP and other applications.

You forgot Korean :) The basic CJK block contains 20,989 symbols, we are currently investigating how to partially automate the generation of these.
At least Korean has an alphabet. :-D
Any advice on how to set up this GitHub program? I've started working on the de.po file without it, because somehow I don't know how to proceed here - according to the guide I ought to clone a repository, but I can only create or import one?

Some lines are used in two different contexts, for example 'blood stone' or 'hidden', and would require two different translations. This is nothing that can be done with Poedit.
Post edited September 04, 2021 by sheng_luwei
avatar
sheng_luwei: At least Korean has an alphabet. :-D
Any advice on how to set up this GitHub program? I've started working on the de.po file without it, because somehow I don't know how to proceed here - according to the guide I ought to clone a repository, but I can only create or import one?
Are you using the GitHub Desktop client? I do not have much experience with it as it's not available for LInux.

You need to first create a fork, and then clone it. Maybe this is helpful: https://docs.github.com/en/desktop/contributing-and-collaborating-using-github-desktop/adding-and-cloning-repositories/cloning-and-forking-repositories-from-github-desktop

avatar
sheng_luwei: Some lines are used in two different contexts, for example 'blood stone' or 'hidden', and would require two different translations. This is nothing that can be done with Poedit.
Poedit is just for doing the translation. For the two mentioned strings to appear as separate translatable texts they need to be marked as a particular instance with context in the code, I have created an issue for doing so: https://github.com/diasurgical/devilutionX/issues/2790

Feel free to add to it if you find more strings where this is relevant.
Post edited September 04, 2021 by Anders_Jenbo
Thanks, but that's all greek to me. However, somehow I might have accomplished to upload the progress I've made so far, but will not continue to dig deeper into problems like inflections or string contexts because GitHub makes me really mad.