• 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

The first real problem I see is that Russian "Annie_dialog.h" is incomplete. The English version goes down to line 51. The Russian version only goes to line 13. And quest case "Wait_Annie_one_more" wants to use dialog case "Wants_Officer", which needs lines 36-39. But that should not normally crash the game completely; I'd expect Annie to have a blank dialog, and "error.log" should have a line about "Annie_dialog.c".
I translated this and uploaded it after you released the patch on October 3rd. So I have the full version now.
The part of "Hermit_dialog.c" which uses lines 34 and 35 is case "wrapup5". This ends by triggering quest case "Wait_Annie_one_more". "compile.log" does not show this quest case. So that is probably where the game crashed. That quest case should only make Annie O'Byrne talk to you. Is she there?
Yes, she is standing to the right of the door.
 

Attachments

  • Annie_dialog.h
    3.8 KB · Views: 67
The problem is in "Hermit_dialog.h". Line 36 is too long. Killian tells a long story about his history, with a few "\n" line breaks to make it readable. There is a pause where you say "...", then he continues. So the attached version moves the last sentence from line 36 to the beginning of line 38, with another "\n" line breaks to separate it from the original line.

The next question is, why are "Killian O'Byrne" and "Annie O'Byrne" not translated? When I set my game to Russian and loaded your savegame, the dialog was in Russian and so was the location label "Дом", but both character names were in English.

I tried starting a new game in Russian and used console to put Killian and Annie in place, then teleported myself to their house. They showed their names in Russian.
 

Attachments

  • Hermit_dialog.h
    7.3 KB · Views: 74
1) As I understand it, the plot is not finished and I won’t get to the third person... The last thing that has not been translated is the pirate ship "Pastenague"
2) Then I started a free game and didn’t find out how to turn on the engines, but I pressed some button where my location was indicated - the name of the island and the cardinal directions were not translated there. (1394 line - interface_strings)
3) Some ships are not translated in free play, these are the ones I found:
"Magicienne", "Conquistador", "Interceptor", "Badger", "Surprise", "Aguila", "Extremeca", "Neptunus", "Lebre", "Lydia", "Amazon", "Sophie", "Forester", "Caroline", "Dauntless", "Le Saint Louis", "Delaware", "Le Ruve", "Atropos", "Jamaica"
4) Some names are not translated:
"Norrington", "Gillette", "Theodore Groves", "Maturin", "Wilson", "Casse"
5)Some characters are not translated in the character selection menu:
"rabwhite1", "Rose", "Sailor1" - "Sailor10".
 

Attachments

  • 124124.png
    124124.png
    77.9 KB · Views: 43
  • 235253й.png
    235253й.png
    457 KB · Views: 68
  • 1697141468598.png
    1697141468598.png
    975.8 KB · Views: 47
  • 1697142239271.png
    1697142239271.png
    991.7 KB · Views: 55
  • 1697142456075.png
    1697142456075.png
    943.1 KB · Views: 56
  • 1697142915006.png
    1697142915006.png
    972.3 KB · Views: 48
  • 1697143117869.png
    1697143117869.png
    959.6 KB · Views: 60
  • 1697143501837.png
    1697143501837.png
    790.6 KB · Views: 62
  • 1697145559364.png
    1697145559364.png
    385 KB · Views: 48
  • 1697145577364.png
    1697145577364.png
    244.3 KB · Views: 47
  • 1697145595154.png
    1697145595154.png
    311.3 KB · Views: 41
1: Attached "storyline_strings.txt" adds a line for "Pastenague" which needs to be translated. "PROGRAM\Storyline\DevlinOpera\Characters\init\Cayman.c" changes the captain's definition to make the ship name translatable. You will need to start a new game for this to work.

2: See if the attached "PROGRAM\CCCdirectsail.c" will translate that.

3: The attached "PROGRAM\NK.c" should make function 'GiveShip2Character' always translate the ship's name, unless the translation is blank. Look for function 'GivePromotionReward', go through all the names of ships which can be given as rewards for promotion, and add them to the bottom of the attached "RESOURCE\INI\TEXTS\RUSSIAN\Storyline\storyline_strings.txt". You should already find "Dud" there - this ship belongs to Isenbrandt Jurcksen, should not normally appear in the game, but will probably appear near the end of "Tales of a Sea Hawk".

4: Most of those names are officers which can also be given to you by 'GivePromotionReward'. I'm not sure why "Norrington", "Gillette" and "Theodore Groves" are not being translated as those are already in "storyline_strings.txt" and 'GivePromotionReward' should already have 'TranslateString' commands for all these officers.

Something odd is happening with "Casse". Your last name is supposed to be "du Casse" and that is translated. How does your name appear in the F2 interface screen?

5: "Rose" is now added to the attached "storyline_strings.txt" at line 467 and needs to be translated. "rabwhite1" and the "Sailor" list are names of models, not characters, and those are generally not translated.
 

Attachments

  • Cayman.c
    16.3 KB · Views: 61
  • NK.c
    207.5 KB · Views: 55
2: See if the attached "PROGRAM\CCCdirectsail.c" will translate that.
The game didn't start:
Invalid Expression
COMPILE ERROR - file: CCCdirectsail.c; line: 1147
Something odd is happening with "Casse". Your last name is supposed to be "du Casse" and that is translated. How does your name appear in the F2 interface screen?
Attached is yesterday's picture.
5: "Rose" is now added to the attached "storyline_strings.txt" at line 467 and needs to be translated. "rabwhite1" and the "Sailor" list are names of models, not characters, and those are generally not translated.
You didn't add storyline_strings.txt or perhaps replaced it in the post.
 

Attachments

  • 124142.png
    124142.png
    758.2 KB · Views: 48
Try these. There was a typo in "CCCdirectsail.c", and I previously only added "storyline_strings.txt" for Devlin Opera. The general "storyline_strings.txt" is attached here.
Edit: file removed, look for a newer version in a later post
 
Last edited:
If you go to worldmap, sail out of range of any island, and then go back to sailing, what does pressing that button show?
 
That is what I expected. It's simply showing your location. If you're near an island, that is the code name for the island. If not, it's "".

Try this. It now uses function 'FindIslandName' to give the island's name, e.g. Nevis instead of QuebradasCostillas. If you're not near an island, it should say "Open Sea".
 

Attachments

  • CCCdirectsail.c
    46.5 KB · Views: 63
I moved all the ships to storyline_strings.txt. The translation did not appear! Something doesn't seem right. I am adding English and Russian versions.
 

Attachments

  • 1697366792974.png
    1697366792974.png
    434.5 KB · Views: 49
  • 1697366925910.png
    1697366925910.png
    617.9 KB · Views: 56
  • storyline_strings.txt
    44.1 KB · Views: 65
  • storyline_strings.txt
    44.1 KB · Views: 63
Yes, I'm still trying to find out why ship names for naval officer characters are not translated. Some of them, such as "Magicienne" and "Neptunus", should have been translated because they were already in "RESOURCE\INI\TEXTS\RUSSIAN\Storyline\storyline_strings.txt". 'TranslateString' checks that file, among others, which is why your character name is translated, and why the ship's name is translated in the storyline selection screen.

But I think I've fixed Jean-Baptiste du Casse's problem. There is something very odd happening to his name. The game splits the two-word last name "du Casse" into single word middle name "du" and last name "Casse". But it does not do the same for other two-word last names such as "de Ruyter". I tried translating "du" into "" and "Casse" into translated "du Casse", and it seemed to work, except that sometimes it showed "Jean Baptiste du du Casse" - that is, "du" twice, one translated, one not. In the end, I decided that if the game wants middle name "du" and last name "Casse", that's what it will get, so I changed his entry in "initModels.c" to have middlename and lastname. And then I did a dirty hack on "Dialog_func.c" to check for middlename "du", to not show it when any name function wants to show a middle name, but to show it as part of a last name. That almost did the trick, but the "Ship" section of the F2 interface still showed "Jean Baptiste Casse". Several places in game code use "chr.lastname" directly instead of calling 'GetMyLastName(chr)', so I changed those - in particular, the ship interface code.

The attached zip contains all the modified "PROGRAM" files, along with versions of "storyline_strings.txt" with all your added ship names - but with duplicates removed, e.g. "Magicienne" is already translated along with "Jean-Baptiste". "du Casse" is now separated into "du" and "Casse".

One thing remains - your translation of "Jean-Baptiste" seems to be missing the "p" so that it looks like Russian for "Jean-Batiste".
 

Attachments

  • DuCasse.zip
    189.4 KB · Views: 59
1) Here are some names that are also not translated:
"de Maure", "Sergio The SeaWolf", "Guibert Daudet", "de Espinosa"
2) There is something wrong with the character Catalina the Pirate in the menu it is translated correctly, but in the game this name (Каталина Корабль Пираты - Catalina Ship Pirates) seems to be taken from common.ini. "Ship" is translated as a ship and "Pirates" is translated as a nation. And where did the ship come from in the name?
3)Can some anonymous names be translated? I saw that several have translations and for example “Assassin” can be translated. Or is it a character model and will be difficult to translate?
 

Attachments

  • 234243.png
    234243.png
    329.9 KB · Views: 45
  • 3242424.png
    3242424.png
    402.7 KB · Views: 46
  • 1424й.png
    1424й.png
    316.9 KB · Views: 46
  • 43433.png
    43433.png
    296.7 KB · Views: 37
  • 42424.png
    42424.png
    232.3 KB · Views: 41
  • 24141.png
    24141.png
    381 KB · Views: 40
1: Those names are not included in "storyline_strings.txt". The attached version has them on lines 318, 178-179, 342-343, 323

2: I've no idea where "Ship" is from. It's possible that "the Pirate" is being split the same way as "du Casse", in which case "the" becomes her middle name and "Pirate" becomes her last name. "Pirate" appears as one of the nations in "common.ini", which is the file that 'TranslateString' checks first. (I wonder what would happen if, in "PROGRAM\NATIONS\nations_init.c", the nation name is changed to "Pirates"? That is already translated in "common.ini". Then "Pirate" could be translated as a description rather than a nation.)

If the game does automatically turn "the" into a middle name then Sergio the SeaWolf is going to be trouble as well. See what happens if you play as Geralt of Rivia. His last name is another two-word name, "of Rivia".

3: That's Mateus Santos and his model name is indeed "Assassin". I wouldn't try to translate model names as they are effectively game code.
 
If the game does automatically turn "the" into a middle name then Sergio the SeaWolf is going to be trouble as well. See what happens if you play as Geralt of Rivia. His last name is another two-word name, "of Rivia".
Sergio also has some sort of Ship in his name, but Herald doesn’t translate “Rivia”
 

Attachments

  • 1697466518054.png
    1697466518054.png
    530.8 KB · Views: 67
  • 1697466569947.png
    1697466569947.png
    669.7 KB · Views: 60
Time for a change of strategy. If other names have the same problem then the dirty hack on "Dialog_func.c" to correct "du Casse" won't work, or will become very messy if it has to correct others. So "Dialog_func.c" reverts back to normal, though the replacements of "chr.lastname" with 'GetMyLastName(chr)' remain.

Instead, I've gone through "initModels.c", changing all last names with more than word, replacing spaces with "_", so that "du Casse" becomes "du_Casse", for example. I've done that for all of them, even those that seem to work, such as "de_Ruyter" and "de_la_Vega". I've also changed "storyline_strings.txt" to match. Translations still have spaces; only the key text has changed. You'll still need to translate "Sergio", "The_Seawolf", "de_Maure" and "de_Espinosa". But Geralt of Rivia and Catalina the Pirate now seem to work correctly.

Edit: file removed, look for a newer version in a later post.
 
Last edited:
Yes, everything is correct now. I have downloaded the latest version of storyline_strings.txt. It remains to figure out why the ships are not transferred.
 

Attachments

  • 1697542114803.png
    1697542114803.png
    704.6 KB · Views: 47
  • 1697542545233.png
    1697542545233.png
    314 KB · Views: 50
  • storyline_strings.txt
    43.8 KB · Views: 56
Try this version of "Dialog_func.c". The line which checks general "storyline_strings.txt" needed to be told to look for it in the "Storyline" folder.
du_Casse_ship.jpg

You have now translated "du Casse" as "Ducasse". Only the key "du Casse" needed to be changed to the single word "du_Casse"; the translation can stay as two separate words. By comparison, if you play as Edmundo de la Vega, the last name is properly spaced although all the words are capitalised, "De La Vega".

Also, the translated "Jean-Baptiste" still lacks the "p" and appears as "Jean-Batiste".
 

Attachments

  • Dialog_func.c
    106.8 KB · Views: 55
Also, the translated "Jean-Baptiste" still lacks the "p" and appears as "Jean-Batiste".
In Russian he is called that in all articles.
Jean-Baptiste Ducasse, also called Jean du Casse, was one of the most brilliant French corsairs and admirals of the era of Louis XIV. He became famous for his battles in the waters of West Africa and the West Indies; became one of the prototypes of Captain Blood, the hero of Rafael Sabatini’s novel “The Odyssey of Captain Blood.”
 

Attachments

  • 1697626186211.png
    1697626186211.png
    27.5 KB · Views: 41
1) "disciple " - does not translate.
2) In the ship section, the name is written twice. This most likely happens with single names, without a surname.
3) These ships have not been translated, perhaps they need to be added to storyline_strings.
"Mefisto"; "Lindesfarne"; "Margaret Hatcher"
4) 617 line ItemsDescribe.txt - no item icon!
itmname_bladerubysb {Рубиновая Руническая Сабля}
itmdescr_bladerubysb
5) Some names have problematic translation; not everything is translated:
"Bootstrap"; "T." Thomas Terror - Has the same ship in the name as in previous posts.
 

Attachments

  • 24244.png
    24244.png
    822.6 KB · Views: 58
  • 12412.png
    12412.png
    780.4 KB · Views: 48
  • 421142.png
    421142.png
    783.4 KB · Views: 51
  • 2342442.png
    2342442.png
    641.4 KB · Views: 59
  • 141414333.png
    141414333.png
    545.7 KB · Views: 42
  • 414121.png
    414121.png
    692.7 KB · Views: 55
  • 24241.png
    24241.png
    700 KB · Views: 41
  • 12412412.png
    12412412.png
    715.3 KB · Views: 48
Back
Top