Translating GZDoom's text content. Read if you want to help

Here, developers communicate stuff that does not go onto the main News section or the front page of the site.
[Dev Blog] [Development Builds] [Git Change Log] [GZDoom Github Repo]

Moderator: GZDoom Developers

User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 48519
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: Translating GZDoom's text content. Read if you want to help

Post by Graf Zahl »

Polish is missing one single text on the "GZDoom Engine Strings" sheet:

Code: Select all

Crushed monsters get resurrected as ghosts	CMPTMNU_VILEGHOSTS
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 48519
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: Translating GZDoom's text content. Read if you want to help

Post by Graf Zahl »

Korean hasn't seen much maintenance recently.

This is the list of missing content in the "Common" sheet

Code: Select all

Toggle rotate	MAPCNTRLMNU_ROTATE
Dark Blue	TXT_COLOR_DARKBLUE
Status Bar Scale	DSPLYMNU_SBSCALE
Pulsating message Display	MSGMNU_PULSEMESSAGES
Message Scale	MSGMNU_MESSAGESCALE
Sound enabled	SNDMNU_SNDENABLED
Music enabled	SNDMNU_MUSENABLED
DMX (Without AM voice bug)	ADLVLMODEL_DMX_FIXED
Apogee (Without AM voice bug)	ADLVLMODEL_APOGEE_FIXED
IBM Audio Library Interface	ADLVLMODEL_AIL
HMI Sound Operating System	ADLVLMODEL_HMI
HMI SOS (Old, with bugs)	ADLVLMODEL_HMIOLD
Max FPS	VIDMNU_MAXFPS
Full options menu	OPTMNU_FULLOPTIONS
Simple options menu	OPTMNU_SIMPLEON
Browse Game Config	OPTMNU_OPENCONFIG
Browse Screenshots	OPTMNU_OPENSCREENSHOTS
Browse Saved Games	OPTMNU_OPENSAVES
Swap mouse buttons	MOUSEMNU_SWAPBUTTONS
Waiting for players. 	TXT_NET_WAITINGFORPLAYERS
Press ESC to abort.	TXT_NET_PRESSESC
Done waiting.	TXT_NET_DONEWAITING
Waiting for other players.	TXT_NET_WAITFOROTHER
Contacting host.	TXT_NET_CONTACTHOST
Exchanging game information.	TXT_NET_EXCHANGE
Pause game in background	MISCMNU_PAUSEINBACKGROUND
Unknown	TXT_UNKNOWN
Automap	OPTVAL_AUTOMAP
HUD + Automap	OPTVAL_HUDANDMAP
This is the list of missing content in the "GZDoom Engine Strings" sheet

Code: Select all

	
View bob amount when firing	DSPLYMNU_BOBFIRE
Intermission and Screen Border Classic Scaling	SCALEMNU_SCALECLASSIC
Intermission background	SCALEMNU_INTER
Screen border	SCALEMNU_BORDER
Scaling factor	SCALEMNU_FACTOR
Aspect ratio	SCALEMNU_RATIO
Build	OPTVAL_BUILD
Show Tally Screen On Level Exit	MISCMNU_ALWAYSTALLY
Mod Defined	OPTVAL_MODDEFINED
Always, except within hubs	OPTVAL_NOTHUBS
Always, even within hubs	OPTVAL_WITHHUBS
Preferred keyboard layout	CNTRLMNU_LAYOUT
Classic ZDoom	OPTVAL_CLASSICZ
Modern (WASD)	OPTVAL_MODERN
Modern (Keypad)	OPTVAL_MODERNLEFT
Strict KEYCONF Weapons/Players	MISCMNU_SETSLOTSTRICT
Classic ZDoom menu scaling	MISCMNU_CLEANMENU
Use percents on summary screen	MISCMNU_WIPERCENT
Classic ZDoom scaling on summary screen	MISCMNU_CLEANSTAT
Citizen	TAG_STRIFEZOMBIE
Ceiling Turret	TAG_CEILINGTURRET
Crusader	TAG_CRUSADER
Inquisitor	TAG_INQUISITOR
Peasant	TAG_PEASANT
Reaver	TAG_REAVER
Sentinel	TAG_SENTINEL
Stalker	TAG_STALKER
The Bishop	TAG_BISHOP
The One God	TAG_ENTITY
The Programmer	TAG_PROGRAMMER
The Spectre	TAG_ALIENSPECTRE
Kneeling Guy	TAG_KNEELINGGUY
Spawn multiplayer things in coop	GMPLYMNU_MULTIPLAYERTHINGS
Sprite shadows	DSPLYMNU_SPRITESHADOW
Monsters and players	OPTVAL_SPRSHADALWAYS
FOV	DSPLYMNU_FOV
Disable MBF21 features	CMPTMNU_NOMBF21
Show time widget	ALTHUDMNU_SHOWTIMESTAT
Crushed monsters get resurrected as ghosts	CMPTMNU_VILEGHOSTS
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 48519
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: Translating GZDoom's text content. Read if you want to help

Post by Graf Zahl »

The above cover the languages where completion appars reasonable.

Aside from this, Esperanto and Polish are missing large sections of the Strife dialogue. If anybody wants to help, please come forward. (Italian also had large gaps, but these were recently completed. Thanks to Dynamo for the hard work! :) )

Serbian has not seen any work at all since the initial submission. It is missing roughly the same content in the "Common" and "GZDoom Engine Strings" sheet as Korean, but in addition also misses huge chunks of the Strife dialogue and all of Chex Quest, Harmony and Hacx, except for a few texts that were copied from elsewhere.
Right now the gaps in the menus have become big enough to be a problem. On too many pages there's English placeholders.
It may make sense to just disable the language again unless the most important gaps are being filled in.

The status for Raze is as follows:

German, Polish, Portuguese and Romanian are complete - Czech and Hungarian are almost complete, except for the few texts listed earlier
Spanish and Finnish are roughly 40% done but work has stopped.
All other languages are inactive - for non-Latin script a significant amount of engine work would be needed anyway. Cyrillic characters are missing for all fonts and not all code has fallbacks for more complex scripts like Japanese and Korean, so these two are not planned.

Again, if anybody is interested to help, please come forward.
User avatar
Captain J
 
 
Posts: 16859
Joined: Tue Oct 02, 2012 2:20 am
Location: A Year old Pizza Box

Re: Translating GZDoom's text content. Read if you want to help

Post by Captain J »

Graf Zahl wrote: Mon Nov 07, 2022 2:34 amKorean hasn't seen much maintenance recently.
About this, i'm sincerely sorry for being absent from translation. But once me and my team get the response from you, we'll be always ready.
User avatar
Rachael
Admin
Posts: 13203
Joined: Tue Jan 13, 2004 1:31 pm
Preferred Pronouns: She/Her

Re: Translating GZDoom's text content. Read if you want to help

Post by Rachael »

New string needs to be translated:
https://docs.google.com/spreadsheets/d/ ... =1355:1355
"MISCMNU_FVIEWBOB"

This string controls the float bobbing while flying, whether using Wings of Wrath (or other powerup) or using the cheat.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 48519
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: Translating GZDoom's text content. Read if you want to help

Post by Graf Zahl »

Please don't insert new texts in the middle.

This inconveniences those working on offline versions of the texts and makes it impossible to find when casually browsing the translations.
I moved this to the end.
User avatar
Rachael
Admin
Posts: 13203
Joined: Tue Jan 13, 2004 1:31 pm
Preferred Pronouns: She/Her

Re: Translating GZDoom's text content. Read if you want to help

Post by Rachael »

I didn't know, sorry.
User avatar
mjr4077au
Posts: 813
Joined: Sun Jun 16, 2019 9:17 pm
Graphics Processor: nVidia with Vulkan support
Location: Gosford NSW, Australia

Re: Translating GZDoom's text content. Read if you want to help

Post by mjr4077au »

Hello and Merry Christmas to all that celebrate it :)

I've changed the English string for "MISCMNU_NINJA" from "Ninja Slice Animation" to "Alternative Ninja Animation" to better reflect what it does in Raze and kindly ask that all translations be updated when everyone has a chance.

I've also added 4x new strings for Shadow Warrior as well:

- TXTS_BUNNYENABLED
- TXTS_BUNNYDISABLED
- TXTS_WINPACHINKOEN
- TXTS_WINPACHINKODIS
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 48519
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: Translating GZDoom's text content. Read if you want to help

Post by Graf Zahl »

I'm going to need some help reviewing a submission.
This morning some person shared the following Danish translation with me, but there's a few things in there that make me suspect it is machine translated and poorly edited afterward, like inconsistent translations of certain phrases or occasional untranslated words throughout the text.

https://docs.google.com/spreadsheets/d/ ... sp=sharing

I'd appreciate if someone with better knowledge of the language could have a quick look.
Professor Hastig
Posts: 22
Joined: Mon Jan 09, 2023 2:02 am
Graphics Processor: nVidia (Modern GZDoom)

Re: Translating GZDoom's text content. Read if you want to help

Post by Professor Hastig »

While I understand the reservations toward machine translations the experience at my workplace is that depending on the content they can often be better than manually translated texts.
Has anybody here ever tried www.deepl.com ? That is a translation engine that really runs circles around Google. As long as we put in full sentences it rarely produces bad content. And it is a lot easier to have a native speaker just review the translated texts and correct a few errors than paying people for the translation and getting a result that is rarely any better, despite the higher cost.
User avatar
wildweasel
Moderator Team Lead
Posts: 21580
Joined: Tue Jul 15, 2003 7:33 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): Win10 22H2, Win11 22H2, macOS 11.7
Graphics Processor: nVidia with Vulkan support

Re: Translating GZDoom's text content. Read if you want to help

Post by wildweasel »

The problem remains, though, that it needs a native speaker to verify it - and we're seemingly already having that problem, going by Graf's post above yours.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 48519
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: Translating GZDoom's text content. Read if you want to help

Post by Graf Zahl »

Professor Hastig wrote: Mon Jan 16, 2023 6:29 am Has anybody here ever tried www.deepl.com ?

I just did, testing a larger batch of the Strife logs.
The quality of the translation is amazingly good - really a lot better than Google. Unfortunately with German there's a huge problem and that is that the free version cannot set formal or informal tone and seems to apply it randomly - of course Google has the same problem. But if the translation for other languages that do not make this distinction is equally high quality it could actually be used to fill in some of the gaps in the translation (e.g. the huge chunk of missing Polish Strife dialogue.)
wildweasel wrote: Mon Jan 16, 2023 10:43 am The problem remains, though, that it needs a native speaker to verify it - and we're seemingly already having that problem, going by Graf's post above yours.
Correct. I'd always try to let it checked. On the other hand, finding someone to do a review of an existing translation is likely to be magnitudes easier than actually translating the text, so these tools definitely have some value.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 48519
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: Translating GZDoom's text content. Read if you want to help

Post by Graf Zahl »

BTW, entering "View bobbing while flying" to see what comes out is utterly disastrous, in all languages I sufficiently understand. I think that clearly shows where the limits of such tools are.
Gez
 
 
Posts: 17719
Joined: Fri Jul 06, 2007 3:22 pm

Re: Translating GZDoom's text content. Read if you want to help

Post by Gez »

Professor Hastig wrote: Mon Jan 16, 2023 6:29 am While I understand the reservations toward machine translations the experience at my workplace is that depending on the content they can often be better than manually translated texts.
Has anybody here ever tried www.deepl.com ? That is a translation engine that really runs circles around Google. As long as we put in full sentences it rarely produces bad content. And it is a lot easier to have a native speaker just review the translated texts and correct a few errors than paying people for the translation and getting a result that is rarely any better, despite the higher cost.
I often use DeepL, and while it is very handy and useful, it is far from infallible. Problem with AI is that often the machine behaves as if it were more intelligent than it really was. I've had instances of getting text that apparently made sense, but that I knew very well was absolutely not correct, because I had put in some text in a language it did not actually support and it identified it as a different language for some reason and produced some translated text that was superficially coherent but was completely unrelated to what the original article was talking about. I'd rather get a clear failure mode than bullshit content.

So, most of the time, the translation will be fine, but sometimes it'll be utter rubbish -- not even a translation but just pure invention -- and it's up to you to tell whether you got a translation or a pure invention.

Even when it does know the language, it does not have any awareness of context, it just fakes it, largely by borrowing sentences from a large corpus of translated texts. To give just two examples: translating to French articles talking about the current German chancellor, Olaf Scholz, I systematically get "la chancelière" instead of "le chancelier" because there's like 15 years of accumulated texts talking about Angela Merkel so a German chancellor is necessarily a woman. Translating to French articles talking about Russian bombings in Ukrainian cities, I get an about even 50/50 mix of having "strike" be translated as "frappe" (correct for an air strike), and as "grêve" (correct for a worker strike). In the same text, despite all the context clues, that translation still tried to pretend that it was people refusing to work that caused several civilian deaths.

All that to say, artificial intelligence is not actual intelligence. It's just smoke and mirror, it fakes it by using statistical tools and a large amount of reference data, but it is incapable of actually understanding what it does, therefore it is not properly intelligent.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 48519
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: Translating GZDoom's text content. Read if you want to help

Post by Graf Zahl »

Gez wrote: Mon Jan 16, 2023 3:24 pm I often use DeepL, and while it is very handy and useful, it is far from infallible. Problem with AI is that often the machine behaves as if it were more intelligent than it really was. I've had instances of getting text that apparently made sense, but that I knew very well was absolutely not correct, because I had put in some text in a language it did not actually support and it identified it as a different language for some reason and produced some translated text that was superficially coherent but was completely unrelated to what the original article was talking about. I'd rather get a clear failure mode than bullshit content.

So, most of the time, the translation will be fine, but sometimes it'll be utter rubbish -- not even a translation but just pure invention -- and it's up to you to tell whether you got a translation or a pure invention.
I actually have seen similar results from actual Human translators over the years. The results of someone having to translate a text they do not really understand but being forced to come up with a result can truly create ludicrous results, regardless whether it's man or machine doing the translation.

Like I said: Giving deepl the Strife conversations yields a mostly usable German translation, but giving it some very specific Doom jargon results in total garbage. I'd bet the same is true for other languages as well.

Return to “Developer Blog”