GZDoom localization development thread [Split]

Discuss anything ZDoom-related that doesn't fall into one of the other categories.
User avatar
theleo_ua
Posts: 162
Joined: Sun Feb 07, 2016 11:38 am
Operating System Version (Optional): Windows 10
Graphics Processor: ATI/AMD with Vulkan/Metal Support
Location: Ukraine
Contact:

Re: [WIP] Русский перевод GZDoom/Russian translation of GZDo

Post by theleo_ua »

Graf Zahl wrote:This may be interesting for your efforts:

I just made a change that allows putting Hexen's ACS and Strife's dialogue based texts into the language files. However, because these texts are part of the game's data they are not in gzdoom.pk3 but in zd_extra.pk3.
Using this change, will it be possible (from our side of course):

1) To translate all dialogues from SVE.wad (both ogirinal campaign and "trust no one (demo)" ), using language file ?
2) To apply this fix viewtopic.php?f=3&t=13361&start=15 and make russian versions of it?
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49067
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: [WIP] Русский перевод GZDoom/Russian translation of GZDo

Post by Graf Zahl »

1) Yes. The exported texts contain everything from both Strife1.wad and the additions from sve.wad. The teasers do not add anything that isn't present in the commercial version so you won't find entries for them.

2) That Gibbet glitch requires an actual script replacement. The replaced script would - as long as it was compiled in original Hexen format - just accept the exported strings as before, because they are only indexed by map number, script string index and the first 5 alphanumeric characters of the text. The main problem would be to make the replacement seamless to the rest of the engine, that'd be a bit of work on the map loader and compatibility patcher, but not on the localization.
User avatar
theleo_ua
Posts: 162
Joined: Sun Feb 07, 2016 11:38 am
Operating System Version (Optional): Windows 10
Graphics Processor: ATI/AMD with Vulkan/Metal Support
Location: Ukraine
Contact:

Re: [WIP] Русский перевод GZDoom/Russian translation of GZDo

Post by theleo_ua »

Graf Zahl wrote:1) Yes. The exported texts contain everything from both Strife1.wad and the additions from sve.wad. The teasers do not add anything that isn't present in the commercial version so you won't find entries for them.

2) That Gibbet glitch requires an actual script replacement. The replaced script would - as long as it was compiled in original Hexen format - just accept the exported strings as before, because they are only indexed by map number, script string index and the first 5 alphanumeric characters of the text. The main problem would be to make the replacement seamless to the rest of the engine, that'd be a bit of work on the map loader and compatibility patcher, but not on the localization.
big thanks! You are the best, as always
User avatar
Kostov
 
 
Posts: 2020
Joined: Thu Dec 26, 2013 3:26 pm
Location: Sweden
Contact:

Re: [WIP] Русский перевод GZDoom/Russian translation of GZDo

Post by Kostov »

Graf Zahl wrote:This may be interesting for your efforts:

I just made a change that allows putting Hexen's ACS and Strife's dialogue based texts into the language files. However, because these texts are part of the game's data they are not in gzdoom.pk3 but in zd_extra.pk3.
It is, indeed, interesting. How does it work? Does this mean it is up to me to find all dialogues from those games and place them in the language files?
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49067
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: [WIP] Русский перевод GZDoom/Russian translation of GZDo

Post by Graf Zahl »

No, the English versions are in a language.enu in zd_extra.pk3.
I put them there because this content is not clean for free games so it got in the file with content that is copyrighted but solely intended to be used with the game it comes from.
User avatar
Kostov
 
 
Posts: 2020
Joined: Thu Dec 26, 2013 3:26 pm
Location: Sweden
Contact:

Re: [WIP] Русский перевод GZDoom/Russian translation of GZDo

Post by Kostov »

Got it. Could you send it to me in a PM so I can prepare it for the next GZDoom version?
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49067
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: [WIP] Русский перевод GZDoom/Russian translation of GZDo

Post by Graf Zahl »

The text can be found in the Github repo under wadsrc_extra\static\english.enu in the localization branch.

BTW, I just fixed the font engine to properly handle lower case Cyrillic text and added the Russian translation. There's still some work to do, e.g. making the BigFont work, and the formatting is not correct, but things are progressing.

The biggest problem I still need to solve is to take apart the binary fonts and convert them to per-character images that get handled by the same logic as the small font in the future.

I really see no point fixing the handling of these binary files. It's bad enough that there's two formats for those that are entirely different and as is par for course for lots of early ZDoom, they show a very unhealthy tendency of limiting a format to the exact problem it was intended to solve with no margin for expansion.
User avatar
Kostov
 
 
Posts: 2020
Joined: Thu Dec 26, 2013 3:26 pm
Location: Sweden
Contact:

Re: [WIP] Русский перевод GZDoom/Russian translation of GZDo

Post by Kostov »

Graf Zahl wrote:The text can be found in the Github repo under wadsrc_extra\static\english.enu in the localization branch.

BTW, I just fixed the font engine to properly handle lower case Cyrillic text and added the Russian translation. There's still some work to do, e.g. making the BigFont work, and the formatting is not correct, but things are progressing.
You’re not kidding me?! This is great news, and will make this type of work a million times easier! Thanks! (And don’t forget to credit Julian Nechaevsky for making most of the letters used in this translation!)
Graf Zahl wrote:The biggest problem I still need to solve is to take apart the binary fonts and convert them to per-character images that get handled by the same logic as the small font in the future.

I really see no point fixing the handling of these binary files. It's bad enough that there's two formats for those that are entirely different and as is par for course for lots of early ZDoom, they show a very unhealthy tendency of limiting a format to the exact problem it was intended to solve with no margin for expansion.
I can handle converting all the characters into individual images and send them to you, no problem. (Edit: Here)

On top of that, if I could get editing access to the localization branch, I can start working on a fully translated language.rus file and add it there myself.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49067
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: [WIP] Русский перевод GZDoom/Russian translation of GZDo

Post by Graf Zahl »

Undead wrote: I can handle converting all the characters into individual images and send them to you, no problem. (Edit: Here)
Thanks. But what about the Cyrillic parts you already made?
User avatar
Nash
 
 
Posts: 17439
Joined: Mon Oct 27, 2003 12:07 am
Location: Kuala Lumpur, Malaysia
Contact:

Re: [WIP] Русский перевод GZDoom/Russian translation of GZDo

Post by Nash »

Graf Zahl wrote:The text can be found in the Github repo under wadsrc_extra\static\english.enu in the localization branch.

BTW, I just fixed the font engine to properly handle lower case Cyrillic text and added the Russian translation. There's still some work to do, e.g. making the BigFont work, and the formatting is not correct, but things are progressing.

The biggest problem I still need to solve is to take apart the binary fonts and convert them to per-character images that get handled by the same logic as the small font in the future.

I really see no point fixing the handling of these binary files. It's bad enough that there's two formats for those that are entirely different and as is par for course for lots of early ZDoom, they show a very unhealthy tendency of limiting a format to the exact problem it was intended to solve with no margin for expansion.
Why do the character file names use hex instead of the familiar decimal numbers, eg 00CA instead of 202? I mean, I guess one could just have a hex calculator handy but it seems like some additional work having to figure out the file names for the characters... :D
User avatar
Rachael
Posts: 13558
Joined: Tue Jan 13, 2004 1:31 pm
Preferred Pronouns: She/Her
Contact:

Re: [WIP] Русский перевод GZDoom/Russian translation of GZDo

Post by Rachael »

Nash wrote:Why do the character file names use hex instead of the familiar decimal numbers, eg 00CA instead of 202? I mean, I guess one could just have a hex calculator handy but it seems like some additional work having to figure out the file names for the characters... :D
The entire ASCII table, and later on Unicode table, had hexadecimal-based start and ends for each field. For example, in ASCII, it's a lot easier to reference the numbers by 30h-39h rather than 48 to 57. The uppercase alphabet and several lesser-used punctuation characters are 40h to 5Fh. It's only natural for Unicode to follow suit - and with Unicode actually having more than 4 billion possible characters, it's also a lot easier to reference each character code by an 8-digit notation because, again, it gives field references for each.

In programming it is good practice to use hexadecimal notation whenever possible, except when dealing with algebra or any other advanced math, user interface elements, or floating point numbers. It is the most competent numbering system we have close to binary without actually being binary.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49067
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: [WIP] Русский перевод GZDoom/Russian translation of GZDo

Post by Graf Zahl »

The main reason here is that all Unicode references use Hex and that Unicode is grouped by hex digits. Using decimals only makes things hard to look up.
User avatar
Nash
 
 
Posts: 17439
Joined: Mon Oct 27, 2003 12:07 am
Location: Kuala Lumpur, Malaysia
Contact:

Re: [WIP] Русский перевод GZDoom/Russian translation of GZDo

Post by Nash »

Rachael wrote:and with Unicode actually having more than 4 billion possible characters
Right. I'd forgotten that GZDoom would eventually want Unicode support.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49067
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: [WIP] Русский перевод GZDoom/Russian translation of GZDo

Post by Graf Zahl »

It already HAS unicode support. All that Russian text is in UTF-8.
User avatar
Kostov
 
 
Posts: 2020
Joined: Thu Dec 26, 2013 3:26 pm
Location: Sweden
Contact:

Re: [WIP] Русский перевод GZDoom/Russian translation of GZDo

Post by Kostov »

Graf Zahl wrote:It already HAS unicode support. All that Russian text is in UTF-8.
I tried compiling the GZDoom localization branch and encoding the Russian language files in my project in UTF-8 with BOM. It really does work!

The only thing I’ve noticed is that, when writing in chat, letters still show up according to the the old Windows-125* encodings:

Image

EDIT: I even tried drawing a couple of Chinese characters and putting them in the game. This is revolutionary.

Image
Post Reply

Return to “General”