• New Horizons on Maelstrom
    Maelstrom New Horizons


    Visit our website www.piratehorizons.com to quickly find download links for the newest versions of our New Horizons mods Beyond New Horizons and Maelstrom New Horizons!

Need Help Updating the Russian Translation

Files in PROGRAM\DIALOGS\RUSSIAN have been supplemented with translation and corrected due to the latest patch dated March 31.
Here are the main : Arnaud Matton_dialog.h ; baldewyn coffier_dialog.h ; Charlestown_citizen_dialog.h; Cole Arkwright_dialog.h; Elizabeth Swann_dialog.h; Enc_Officer_dialog.h; Enc_Walker.h; governor.h; Gunsmith_fetch.h; Habitue_dialog.h; Havana citizen_dialog.h; John Clifford Brin_dialog.h; patrol_dialog.h; Pedro Fructoso_dialog.h; Quest_ANIMISTS_dialog.h; random_patrol_dialog.h; Santiago citizen_dialog.h; Will Turner_dialog.h
 
Added some files and changed taking into account the April 6 update in the folder

PROGRAM\Storyline\DevlinOpera\dialogs\RUSSIAN
Old files:
Blaze Devlin_dialog.h; blaze_dialog.h; Bonnie Devlin_dialog.h; Crewmember Devlin_dialog.h; Devlin Jumpstart_dialog.h; Mystery Messenger_dialog.h
New files:
Chorizo_dialog.h; Don Evaristo Torres_dialog.h; Dragan van Mourik_dialog.h; Fake Storeman_dialog.h; Jorge_dialog.h; Juan_dialog.h; Kevin Poor_dialog.h; Paolo_dialog.h; Pedro_dialog.h; Ricardo_dialog.h; Rocoso Balboa_dialog.h; Simon Hanpool_dialog.h

PROGRAM\Storyline\FreePlay\DIALOGS\RUSSIAN
Agent_crewman_dialog.h; Robert Fletcher_dialog.h

PROGRAM\Storyline\Hornblower\dialogs\RUSSIAN
Lt. Uriah Quelp_Dialog.h; Maria Mason_dialog.h; Richard Sharpe_Dialog.h

PROGRAM\Storyline\JackSparrow\dialogs\RUSSIAN
(Old) Annamaria_dialog.h; blaze_dialog.h; Bootstrap Bill Turner_dialog.h; Davy Jones_dialog.h; James Norrington_Dialog.h; Lucas Da Saldanha_dialog.h; Sao Feng_dialog.h; slave_dialog.h; Tia Dalma_dialog.h; Mr. Gibbs_dialog.h
(New) Atwood_Paddley_dialog.h; Elton Garfield_dialog.h; Turks_prison_captain_dialog.h; Turks_prison_guard1_dialog.h

PROGRAM\Storyline\standard\DIALOGS\RUSSIAN
Robert Christopher Silehard_dialog.h; Virgile Boon_dialog.h

Updated files RESOURCE\INI\TEXTS\RUSSIAN - about_build.txt; characters_names.txt; common.ini
 
Last edited:
@Grey Roger We have a problem with the translation. The person @EugeneFox decided to help me with the translation and translated Characters_names_ru.c, but for some reason the game doesn't seem to see this file. For example, the surname is translated, but it is not translated in the game. What is the problem?
He also found a mistake in the name, but we do not know where these names are located. Through indexing they are not searched.
 

Attachments

  • Characters_names_ru.c
    101.2 KB · Views: 194
  • rn_image_picker_lib_temp_99a74ed4-8844-4bf2-978e-39a7dc5aac48.jpg
    rn_image_picker_lib_temp_99a74ed4-8844-4bf2-978e-39a7dc5aac48.jpg
    1.1 MB · Views: 67
  • 1681150654752.png
    1681150654752.png
    474.2 KB · Views: 83
You probably need to start a new game for the new version of "Character_names_ru.c" to take effect. The file is used in function 'GetLanguageParameters()', defined in "PROGRAM\MAXIMUS_functions.c":
Code:
            LanguageSetLanguage("Russian");
            if(LoadSegment("Characters\Russian\Characters_names_ru.c"))
            {
                InitCharactersNamesRu();
                UnloadSegment("Characters\Russian\Characters_names_ru.c");
            }

"Characters_names_ru.c" (or "Characters_names.c" for any language other than Russian) is used for randomly generated names. Permanent characters have their names translated in "RESOURCE\INI\TEXTS\RUSSIAN\characters_names.txt" (or "RESOURCE\INI\TEXTS\RUSSIAN\Storyline\JackSparrow\characters_names.txt" for Edward Teague).
 
You probably need to start a new game for the new version of "Character_names_ru.c" to take effect. The file is used in function 'GetLanguageParameters()', defined in "PROGRAM\MAXIMUS_functions.c":
That's just the point, I tried to start a new game, but nothing changed.
The following error also appears in the error.log file
COMPILE ERROR - file: Characters\Russian\Characters_names_ru.c; line: 107
variable not found
COMPILE ERROR - file: Characters\Russian\Characters_names_ru.c; line: 107
invalid function argument
COMPILE ERROR - file: Characters\Russian\Characters_names_ru.c; line: 107
Invalid Expression
COMPILE ERROR - file: Characters\Russian\Characters_names_ru.c; line: 107
Undeclared identifier: sRuFamilies
 
Last edited:
Try starting a FreePlay game as a Dutch character, then look for random characters in town. If the game is still somehow using the old version of "Characters_names_ru.c" then you should see the opposite problem - male first names still in English, some family names in Russian, other family names in English. The old version has no Dutch male first names translated, though female names are. About half the family names are translated.

Also, go to Charlestown on Nevis and find the street merchant. His name is Edward Pear. Function 'TranslateString' looks at the general "RESOURCE\INI\TEXTS\RUSSIAN\characters_names.txt" before it looks at the storyline version "RESOURCE\INI\TEXTS\RUSSIAN\Storyline\JackSparrow\characters_names.txt", so Edward Teague's first name is probably being translated from the general file. So the street merchant's name is probably wrong as well.
 
Yes, the merchant's name is also incorrect, although it is correct in characters_names.txt
In the initial city, I did not see English names, but there is such a problem. For some reason, some characters have the name minheer
 

Attachments

  • Безымянный.png
    Безымянный.png
    852.4 KB · Views: 63
  • sdadadadasdный.png
    sdadadadasdный.png
    8.2 KB · Views: 50
  • asdadнный.png
    asdadнный.png
    826 KB · Views: 53
  • dadadный.png
    dadadный.png
    637.4 KB · Views: 59
There's a mistake in "Characters_names_ru.c". On line 107, and on a lot of other lines:
Code:
n = AddStr2Array(&sRuFamilies, n, "Ïåòòèò,Ïåòòèòò,Ïåòòè,Ïþòõåðåð,Ôèçèê,Ïèãã,Ïèë÷åð,Ïàëãðèì,Ïèëëèíãåð,Ïèí÷åð,Ïèíäåð,Ïèíãðè,Ïèíê");
There is no array "RuFamilies" so that line breaks the translation. The attached version has all references to "RuFamilies" replaced by "EnFamilies" or "FrFamilies" as appropriate. But there are still mistakes, such as line 50:
Code:
n = AddStr2Array(&sEnFamilies, n, "×ýéôåð,×àôô,×àôôè,×ýéôåð,×îëê,×îëêåð,×ýëëåíäåð,×ýëëåíäæåð,×ýëìýðñ,×ýìáåðëåí,×ýìáåðñ");
The first letters should probably be capitals. And line 151:
Code:
n = AddStr2Array(&sHoManNames, n, "Coenkiin,Coenkijn,Coenraadt,Coenrade,Coenradus,Coenraed,Coenraet,Coenrarde,Coenrardum,Coenrardus,Coenselijn");
... is not translated at all. Neither are lines 277, 424, 440, 456, 468, 499, 542 or 577.

The problem with "Э" being replaced by "Г" is going to take some serious investigating. I can't see easily why it is happening. As an experiment, look at the attached version of "PROGRAM\console.c". It should display the entire Western alphabet in upper and lower case. Change it to show the Cyrillic alphabet and put it into your "PROGRAM" folder. Start a new game or load any saved game, it doesn't matter which. Press F12. Then show a screen shot of the result. One of three things is likely to happen:
. Nothing. This would mean that there's a mistake in "console.c", in which case, upload "error.log" which you should find in the main game installation folder, not in "PROGRAM" or "RESOURCE";
. Complete nonsense - if that happens then the game can't handle genuine Cyrillic letters;
. Proper Cyrillic letters, possibly in the wrong order if they're being swapped around.

Incidentally, my PC doesn't have a Russian font, so when I look at the Russian text files, what I see is something like this:
characters_names.jpg
The funny thing is, if I put one of those strings into Google Translate and tell it that the text is Russian, it translates the text - and then, if I tell Google to translate it back from English to Russian, it shows proper Cyrillic letters instead.
 

Attachments

  • Characters_names_ru.c
    101.2 KB · Views: 168
  • console.c
    35.3 KB · Views: 64
Here is the version with all the changes, I looked by commas to see if a word was missing, 200 or more words were missing, and I also translated what was not translated. Look... Now everything is fixed!
Also in the English version there is a typo in the form of a dot 498 line

I also want to ask if it is possible to swap these words. Must be "Уличный Торговец", but not "Торговец Уличный".

It's alphabetical
1681319276154.png
1681319503090.png
 

Attachments

  • Characters_names_ru.c
    101.5 KB · Views: 73
  • dsadad.png
    dsadad.png
    2.6 KB · Views: 46
  • asdd.png
    asdd.png
    619.8 KB · Views: 54
Last edited:
Thanks for spotting the mistake in English "Characters_names.c"! I'll put a fixed version without the dot into the next update, along with your new version of "Characters_names_ru.c".

You can correct the order of those words in "RESOURCE\INI\TEXTS\RUSSIAN\characters_names.txt". At present, look at line 1092. The part outside the brackets should be "Street Merchant" and the part inside the brackets can be swapped to the correct order.

But that file is incomplete as several lines are missing. Attached is the English version. New lines in English:
236-237:
Code:
Tancredo{Tancredo}
Pellón{Pellón}

400-403:
Code:
Josie{Josie}
Sweat Shop{Sweat Shop}
Sally{Sally}
Sweat Shop Sally{Sweat Shop Sally}

548-549:
Code:
Amarante{Amarante}
Bontin{Bontin}

607-608:
Code:
Doreen{Doreen}
Lascana{Lascana}

909:
Code:
Satanist{Satanist}

1096: after the translation of "Frechilla", delete the translation of "Dawg" as it's already translated on line 1093.

At the end, after the translation for "Quittance", add:
Code:
Scarlett{Scarlett}
Giselle{Giselle}
Harriett{Harriett}
Anamaria{Anamaria}
Scared Monk{Scared Monk}
Cursed Skeleton{Cursed Skeleton}
These are characters you'll see on Tortuga. "Anamaria" can be copied from "RESOURCE\INI\TEXTS\RUSSIAN\Storyline\JackSparrow\characters_names.txt". (That file has not been updated since 2019, so it needs some work too. A lot of lines are either blank or in English. And the English version has a few extra lines.)
 

Attachments

  • characters_names.txt
    23.1 KB · Views: 92
Thanks for spotting the mistake in English "Characters_names.c"! I'll put a fixed version without the dot into the next update, along with your new version of "Characters_names_ru.c".

You can correct the order of those words in "RESOURCE\INI\TEXTS\RUSSIAN\characters_names.txt". At present, look at line 1092. The part outside the brackets should be "Street Merchant" and the part inside the brackets can be swapped to the correct order.

But that file is incomplete as several lines are missing. Attached is the English version. New lines in English:
236-237:
Code:
Tancredo{Tancredo}
Pellón{Pellón}

400-403:
Code:
Josie{Josie}
Sweat Shop{Sweat Shop}
Sally{Sally}
Sweat Shop Sally{Sweat Shop Sally}

548-549:
Code:
Amarante{Amarante}
Bontin{Bontin}

607-608:
Code:
Doreen{Doreen}
Lascana{Lascana}

909:
Code:
Satanist{Satanist}

1096: after the translation of "Frechilla", delete the translation of "Dawg" as it's already translated on line 1093.

At the end, after the translation for "Quittance", add:
Code:
Scarlett{Scarlett}
Giselle{Giselle}
Harriett{Harriett}
Anamaria{Anamaria}
Scared Monk{Scared Monk}
Cursed Skeleton{Cursed Skeleton}
These are characters you'll see on Tortuga. "Anamaria" can be copied from "RESOURCE\INI\TEXTS\RUSSIAN\Storyline\JackSparrow\characters_names.txt". (That file has not been updated since 2019, so it needs some work too. A lot of lines are either blank or in English. And the English version has a few extra lines.)
Did you upload an old file because I have the same number of lines or I already updated it
Sweat Shop{Sweat Shop}
Sweat Shop Sally{Sweat Shop Sally} - How does it translate. I translated it, but I'm not sure if it's correct
244 line in my version of Father{Отец} , in English Vader{Vader}
 
Last edited:
Odd - I've been downloading your files and comparing them to what's in my update folder regularly, yet it does seem that an obsolete version got in there. I've just downloaded your files again and copied the correct version.

In that version, check line 1102. Again, "Street" should be "Street Merchant", and the text inside the brackets can be changed to the correct order.

About "Sweat Shop Sally": she's the mistress of the brothel in Governor's Harbour, Eleuthera. The name is a joke based on this thread:
Captcha for registration
Translate it the same way you would translate that post.
 
In that version, check line 1102. Again, "Street" should be "Street Merchant", and the text inside the brackets can be changed to the correct order. Everything worked.
It turns out that the problem was that for some reason the word was missing Merchant. I have attached screenshots.

I also changed the AbilityDescribe.txt file a bit. Fixed line 9, instead of "You have learned the skill", I wrote "You have discovered the ability", because when fencing on a ship, the ability is not studied, but only opened
About "Sweat Shop Sally": she's the mistress of the brothel in Governor's Harbour, Eleuthera. The name is a joke based on this thread:
Captcha for registration
Translate it the same way you would translate that post.
I called her Sweaty Sally

It's alphabetical
1681319276154.png
1681319503090.png
What about this?
 

Attachments

  • 1681326116799.png
    1681326116799.png
    5.6 KB · Views: 46
  • 1681326130812.png
    1681326130812.png
    5 KB · Views: 56
  • characters_names.txt
    22.8 KB · Views: 105
I also changed the AbilityDescribe.txt file a bit. Fixed line 9, instead of "You have learned the skill", I wrote "You have discovered the ability", because when fencing on a ship, the ability is not studied, but only opened
The ability is unlocked. Some abilities are locked at the start of the game and you need to do things to unlock them. Fencing with your crew unlocks "Professional Fencing". Some other abilities are unlocked by reading books. So line 9 is supposed to be "You unlocked the ability:".

I called her Sweaty Sally
Not quite right, but it will do.

What about this?
The screenshot of the results from "console.c" shows that the game does not like proper Cyrillic letters. Meanwhile, I've been trying another console trick. Edgar Attwood is the jailer in Port Royale:
edgar_attwood.jpg
For some reason, "Attwood" has been translated to the Cyrillic version of "Ettwood" - shouldn't there be "A" at the start? It is useful, though, and shows something odd. The "E" at the start of "Edgar" has been changed to "Г" as it is for "Edward", but the "E" at the start of "Ettwood" shows correctly as "Э". But from "console.c", 'TranslateString("Edward","")' and 'TranslateString("Edgar","")' both show the correct starting letter. So does 'TranslateString("Eleuthera","")' - and island name "Eleuthera" appears correctly in the list of islands in the "Colonies" interface section.

So now I need to figure out why "Edgar" and "Edward" are showing incorrectly in the game...
 
The ability is unlocked. Some abilities are locked at the start of the game and you need to do things to unlock them. Fencing with your crew unlocks "Professional Fencing". Some other abilities are unlocked by reading books. So line 9 is supposed to be "You unlocked the ability:".
Changed
For some reason, "Attwood" has been translated to the Cyrillic version of "Ettwood" - shouldn't there be "A" at the start? It is useful, though, and shows something odd.
Sometimes in Russian, instead of A, it is written E, this all happens because of the sound.

Is it possible to somehow make Russian videos, for example, in a folder RESOURCE\VIDEOS\LegendJackSparrow. Where is the Russian folder?
Does it matter if the videos weigh 1 mb more? The quality will be better! Here is an example...
 

Attachments

  • Новая папка (3).7z
    9.4 MB · Views: 58
Last edited:
The only language-dependent video folder I can see is "RESOURCE\VIDEOS\common\ENGLISH". But those appear to be specific to "Hoist the Colours".

You could try creating folder "RESOURCE\VIDEOS\LegendJackSparrow\RUSSIAN", then put the files in there. You would then need to edit "PROGRAM\Storyline\JackSparrow\quests\quests_reaction.c". Find this line:
Code:
PostVideoAndQuest("LegendJackSparrow\barbossa_speach", 25, "parlerwill");
Replace it with:
Code:
if(LanguageGetLanguage() == "RUSSIAN") PostVideoAndQuest("LegendJackSparrow\RUSSIAN\barbossa_speach", 25, "parlerwill");
else PostVideoAndQuest("LegendJackSparrow\barbossa_speach", 25, "parlerwill");
Whether the game will be able to play your video is another matter - it might skip the video or crash the game. (The game will also crash if I made a mistake in that line, so if it does crash, post "compile.log", "system.log" and "error.log".)

If it does work, you can try doing something similar to this line:
Code:
PostVideoAndQuest("LegendJackSparrow\jack_exit_DMC", 1, "DMC_prestart");

Another thing you could consider is new loading screens. We've already done them for Spanish. For example:
new_game.jpg new_game.jpg new_game.jpg

The Russian one has to be a different font because the font used for English and Spanish, which is Dolphin Bold, does not support Cyrillic characters. The translation to Russian is from Google - I can easily replace it with a more correct version if that's wrong.
 
The only language-dependent video folder I can see is "RESOURCE\VIDEOS\common\ENGLISH". But those appear to be specific to "Hoist the Colours".

You could try creating folder "RESOURCE\VIDEOS\LegendJackSparrow\RUSSIAN", then put the files in there. You would then need to edit "PROGRAM\Storyline\JackSparrow\quests\quests_reaction.c". Find this line:
Code:
PostVideoAndQuest("LegendJackSparrow\barbossa_speach", 25, "parlerwill");
Replace it with:
Code:
if(LanguageGetLanguage() == "RUSSIAN") PostVideoAndQuest("LegendJackSparrow\RUSSIAN\barbossa_speach", 25, "parlerwill");
else PostVideoAndQuest("LegendJackSparrow\barbossa_speach", 25, "parlerwill");
Whether the game will be able to play your video is another matter - it might skip the video or crash the game. (The game will also crash if I made a mistake in that line, so if it does crash, post "compile.log", "system.log" and "error.log".)
So, well, the game started, there is no error.log. Will it work is a good question
Another thing you could consider is new loading screens. We've already done them for Spanish. For example:
new_game.jpg new_game.jpg new_game.jpg

The Russian one has to be a different font because the font used for English and Spanish, which is Dolphin Bold, does not support Cyrillic characters. The translation to Russian is from Google - I can easily replace it with a more correct version if that's wrong.
I don't get it, do you have a translation? The old 2017 version had some loading screens. I planned to do them, but it needs to pick up the font
 

Attachments

  • system.log
    377 bytes · Views: 68
  • compile.log
    1.8 KB · Views: 59
  • quests_reaction.c
    488.7 KB · Views: 58
I don't have Russian translations for the texts on the loading screens. That's your job! But if you provide the translations, in proper Cyrillic letters, I can copy them onto the screens as I did for that "Start New Game" screen.

The font used for English and Spanish is Dolphin Bold. It does not include Cyrillic characters, so it can not be used for Russian. That is why I used a different font for the Russian "Start New Game" screen.
 
Back
Top