• 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

That means you should not add anything there! Other items still have their descriptions in English, such as "bladebarrel_gpS" and "pistolbarrel_gpS"; you may want to translate those.
Of course, I will slowly translate everything. Since I'm alone, it's not that fast, but I'm trying. Everything that I change, I fill in the link Корсары 2 Новые горизонты (перевод AkrimalS) . I edited some translation when I was going through the Gold Bag line up to the moment you can already play with the powder mill, but (the ship's log is not translated in some places)
 
Last edited:
Thanks for your efforts so far, @AkrimalS! :onya I'm not trying to rush you, just to point you to files where you will find things if you want to translate them.

Ship's logs are in "RESOURCE\INI\TEXTS\RUSSIAN\shipslog_strings.txt", but I only see one line which may be for "GoldBug" and that has been translated.

Perhaps you mean questbooks? You'll find those in "RESOURCE\INI\TEXTS\RUSSIAN\Storyline\GoldBug\QUESTBOOK". Some of those have indeed not been translated.
 
Looks like good work is being done here.
I salute ye all! :cheers

Any chance the new translated files can be included inside the main modpack?
Otherwise I expect they'll start becoming outdated again as time goes on...
 
@AkrimalS: I've had a look at the blacksmith dialog files and tried to put back the variables. I can't read Russian but I was able to figure out the word for "Sir" as well as the blacksmith's name, so I could replace them with "#ssir#" and "#sfullname#", for example.

Have a look at the attached file. You can test the files by visiting these blacksmiths:

Kralendijk - "Blacksmith_dialog.h" - start a FreePlay as a Dutch character
San Juan - "Blacksmith2_dialog.h" - start a FreePlay as a Spanish character
Sao Jorge - "Blacksmith3_dialog.h" - start a FreePlay as a Portuguese character
Port Royale - "Blacksmith4_dialog.h" - start a FreePlay as a British naval officer. Other British characters start at Speightstown but naval officers start at Port Royale.
Pirate Settlement - "Blacksmith5_dialog.h" - start a FreePlay without changing anything. The default character Julian McAllister starts at Pirate Settlement.
St. Pierre - "Blacksmith6_dialog.h" - start a FreePlay as a French character
Havana and Cartagena - "Blacksmith7_dialog.h" - start a FreePlay as a Spanish character, then sail to these ports.
 

Attachments

  • Blacksmiths.zip
    14 KB · Views: 79
I made a correct translation for Blacksmiths. Корсары 2 Новые горизонты (перевод AkrimalS)

Havana and Cartagena - "Blacksmith7_dialog.h" - start a FreePlay as a Spanish character, then sail to these ports.
After starting the game for the Spaniard, I checked Blacksmith2_dialog.h , and everything was fine. Then, as you wrote, I decided to sail to Havana to check Blacksmith7_dialog.h . But my game crashes after going to the global map (it is in this free game). Adding compile.log and saving to the Blacksmith7 archive.

Kralendijk - "Blacksmith_dialog.h" - start a FreePlay as a Dutch character
In Blacksmith_dialog.h, if you have an empty inventory and you said that you brought a bunch of blades (38 line), then lines (39 and 32) are played, although the blacksmith should say that he does not see blades (43 and 44)

St. Pierre - "Blacksmith6_dialog.h" - start a FreePlay as a French character

I started for a Frenchman to check Blacksmith6_dialog.h . There were 2 plots to choose from : 1) I'm just floating away (this one turned out). 2) I kill a man and end up in prison, then I escape to the bay, where he teleports to the ship. We kill a smuggler there and nothing happens (no one talks to me). Attached the ship bug archive with saving and compile.log

Also in Blacksmith3_dialog.h and Blacksmith6_dialog.html appears in the title of the subject of the appeal to the character (Sir, Monsieur).

How do I check Blacksmith8_dialog.h you didn't write about it?
 

Attachments

  • BlackSm6.png
    BlackSm6.png
    764 KB · Views: 79
  • BlackSm3.png
    BlackSm3.png
    152.7 KB · Views: 57
  • inv.png
    inv.png
    657.3 KB · Views: 65
  • too expensive.png
    too expensive.png
    603.1 KB · Views: 68
  • Blacksmith7.7z
    597.6 KB · Views: 72
  • ship bug.7z
    514.4 KB · Views: 73
Last edited:
After starting the game for the Spaniard, I checked Blacksmith2_dialog.h , and everything was fine. Then, as you wrote, I decided to sail to Havana to check Blacksmith7_dialog.h . But my game crashes after going to the global map (it is in this free game). Adding compile.log and saving to the Blacksmith7 archive.
I'll have to look into that, though I've not had this happen in any of my games. However, there's another easy way to check Havana. You almost found it already!

In Blacksmith_dialog.h, if you have an empty inventory and you said that you brought a bunch of blades (38 line), then lines (39 and 32) are played, although the blacksmith should say that he does not see blades (43 and 44)
If "inv.png" was your inventory at the time, it's not empty. You're holding a sword. The lines about not seeing a blade only appear if you have nothing which he can sharpen. This does work, I tried it. One experiment was to carry only Francis Drake's sword; this does not have different qualities so the blacksmith can never work on it. A second was to carry no swords at all. A third was to carry a lot of swords all of which were already "Excellent", the highest quality. In all three, the blacksmith said "I'm not quite sure what blades you are talking about."

I started for a Frenchman to check Blacksmith6_dialog.h . There were 2 plots to choose from : 1) I'm just floating away (this one turned out). 2) I kill a man and end up in prison, then I escape to the bay, where he teleports to the ship. We kill a smuggler there and nothing happens (no one talks to me). Attached the ship bug archive with saving and compile.log
You probably started as Jean de la Croix, who begins the game as a Rogue. Character types Rogue and Gambler do have a special start like that. I'll need to see why you couldn't complete the quest - after killing the first smuggler, you should be able to find a way to the cabin, where you kill the captain and take over the ship. But there's another way to play this quest. In prison, refuse to pay the jailer. You have to fight some guards inside the prison and one more outside. Then you go to the church. There are two doors into the church and only one is open at night, so if you can't get in, try to find the other door. Or go to the tavern and wait until day. And now you are in Havana, which means you can visit the blacksmith to test "Blacksmith7_dialog.h".

Also in Blacksmith3_dialog.h and Blacksmith6_dialog.html appears in the title of the subject of the appeal to the character (Sir, Monsieur).
That is correct. Some characters, not just blacksmiths, do call you by title. British characters call you "Sir", French characters such as the St. Pierre blacksmith call you "Monsieur" - and Portuguese characters such as the Sao Jorge blacksmith should call you "Senhor". But he does not have a nation assigned, and a character with no nation is assumed to be British. Put the attached file "Conceicao.c" into "PROGRAM\Characters\init", then start a new game as a Portuguese character. The blacksmith should then call you "Senhor".

This is why those variables are important. The correct title based on the character's nation and your gender will be automatically filled in. Now try going to the French or Portuguese blacksmiths but start the game as a female character. (Start as Danielle Greene but change your starting nation to France or Portugal.) The French blacksmith should then call you "Mademoiselle" and the Portuguese one should call you "Senhorita".

If you change the start year to 1770 or later, Sao Jorge becomes British and so does the blacksmith. In that case, he will call you "Sir" or "Madam". He also changes his name, which is why the variables "#sfullname#" and "#sfirstname#" are important. I missed one out on line 39, though your new version completely changes that line anyway - this is supposed to be his version of the line in which you have just asked him if he can repair a lot of weapons and he replies:
"You are talking to #sfullname#! There's nothing I cannot do with guns. However, repairing your collection of scrap metal will cost you, of course."
The attached version of "Blacksmith3_dialog.h" puts that line back and replaces the name with the variable, so it should work in any year. (Your newer version changed that line to remove the name completely and may also have made it more correct to talk about a lot of weapons, not just a single weapon.)

How do I check Blacksmith8_dialog.h you didn't write about it?
That blacksmith is in Santiago. He is not in a shop, he works outside. Starting from port, walk into town, go past the town hall, and look to your left just before the steps which lead to the higher part of town. If you start as Jean de la Croix and choose to just sail away, you are near Cuba and can sail round to Santiago.
 

Attachments

  • Conceicao.c
    42.8 KB · Views: 82
  • Blacksmith3_dialog.h
    2.5 KB · Views: 67
Last edited:
"You are talking to #sfullname#! There's nothing I cannot do with guns. However, repairing your collection of scrap metal will cost you, of course."
The attached version of "Blacksmith3_dialog.h" puts that line back and replaces the name with the variable, so it should work in any year. (Your newer version changed that line to remove the name completely and may also have made it more correct to talk about a lot of weapons, not just a single weapon.)
I fixed everything, now everything is correct except for the case that in the name of the item he adds an appeal to the character. This only happens in Blacksmith3 and Blacksmith6 in excellent quality. You say that there should be a function "#sfullname#", although it is not in Blacksmith2_dialog.h. The blacksmith's name is written there manually (12-13 line). And in general, why this load of functions, so that this code is processed later and the game can lag?
 
There is not always "#sfullname#", or any other variable. Look at the English version; if it has anything beginning "#s" and ending "#", it should be included.

"Blacksmith2_dialog.h" is for the blacksmith in San Juan. The town is always Spanish, and that file is only used for that one blacksmith. So the name never changes.

"Blacksmith3_dialog.h" is for the blacksmith in Sao Jorge. Normally that is Portuguese and his name is Diego Uargo. But in "Revolutions" and "Napoleonic" periods, the town is British and the blacksmith has a random English name. So "Blacksmith3_dialog.c" finds the character's name and puts it into the dialog.

"Blacksmith7_dialog.h" is used for the blacksmith in Havana and also for the blacksmith in Cartagena. Again, "Blacksmith7_dialog.c" finds the character's name and puts it in the dialog.

"#ssir#" is used by "Blacksmith3_dialog.h" to call you by the correct title. That depends on the character's nation, your chosen language, and whether you are playing as male or female.

"Blacksmith6_dialog.h" also uses "#ssir#", as well as "#sTomasina Pickfurt#", "#sTomasina#" and #sPickfurt#. This is the blacksmith in St. Pierre, which in "Early Explorers" period is Spanish, so she gets a random Spanish name.

Variables like this should not make the game lag. They are used all over the place. For example, town and island names are always variables so that you will always see the correct name for the period. (The Portuguese island has four different names depending on period!)
 
There is not always "#sfullname#", or any other variable. Look at the English version; if it has anything beginning "#s" and ending "#", it should be included.

"Blacksmith2_dialog.h" is for the blacksmith in San Juan. The town is always Spanish, and that file is only used for that one blacksmith. So the name never changes.

"Blacksmith3_dialog.h" is for the blacksmith in Sao Jorge. Normally that is Portuguese and his name is Diego Uargo. But in "Revolutions" and "Napoleonic" periods, the town is British and the blacksmith has a random English name. So "Blacksmith3_dialog.c" finds the character's name and puts it into the dialog.

"Blacksmith7_dialog.h" is used for the blacksmith in Havana and also for the blacksmith in Cartagena. Again, "Blacksmith7_dialog.c" finds the character's name and puts it in the dialog.

"#ssir#" is used by "Blacksmith3_dialog.h" to call you by the correct title. That depends on the character's nation, your chosen language, and whether you are playing as male or female.

"Blacksmith6_dialog.h" also uses "#ssir#", as well as "#sTomasina Pickfurt#", "#sTomasina#" and #sPickfurt#. This is the blacksmith in St. Pierre, which in "Early Explorers" period is Spanish, so she gets a random Spanish name.

Variables like this should not make the game lag. They are used all over the place. For example, town and island names are always variables so that you will always see the correct name for the period. (The Portuguese island has four different names depending on period!)
Yes, everything is clear. At the moment, everything seems to be working as it should! I will translate items - ItemsDescribe.txt
 
One other thing I noticed in "PROGRAM\Storyline\standard\DIALOGS\RUSSIAN\Robert Christopher Silehard" is line 19, which ends with "#sOxbay#". That's Speightstown. It should be "#sGreenford#", which is Bridgetown. Silehard ordered you to go to Bridgetown to get a prisoner (lines 201-211). Line 19 is where you tell him that the prisoner escaped before you arrived at Bridgetown.

For some reason, I can't read your savegames. The game just says "Bad Save" and refuses to load them - it doesn't even show a picture of the character. However, I tried starting a game as Jean de la Croix and was able to complete the start quest. You escape from prison, go to the smuggler's ship and fight a deck guard. Then you need to go to this hatch near the bow. The first picture is by the hatch, looking forward; the second picture is by the hatch, looking back to where I killed the smuggler.
deck1.jpg deck2.jpg
That hatch leads to the crew quarters, where you fight some more smugglers. From there you go through a door to the captain's cabin, talk to the captain and fight him, and then the ship is yours.

But there was one problem. As you can see, I switched to Russian so you can understand the text on the pictures. But some of the dialog was in Western alphabet. The reason is in "PROGRAM\DIALOGS\Watch_dialog.c" and "PROGRAM\DIALOGS\RUSSIAN\Watch_dialog.h". They give the character different versions of dialog depending on the character's nationality, not the player's language. Jean de la Croix is French so, for example, he will say "Bonjour, Monsieur" regardless of whether I play in English, Spanish or Russian. This is fine for English and Spanish as they use the same alphabet, but does not work for Russian. So I have put all these phrases into "Watch_dialog.h" and changed "Watch_dialog.c" to use them.

The English version of "Watch_dialog.h" now has this:
Code:
"Attack",
"Hello, mister",
"Captain",
"A l'attaque",
"Bonjour, Monsieur",
"Capitaine",
"Al ataque",
"Hola, Senor",
"Capitán",
"Al ataque",
"Hola, Senhor",
"CapitÝo",
"Aanvallen",
"Hallo, Mijnheer",
"Kapitein",
"Angrip",
"Hallå, min herre",
"Kapten",
"Attack",
"Hello, mister",
"Captain",
Most of this should be converted into Russian alphabet but not translated - the words should be Russian letters which sound the same as the English, French, Spanish etc. The exception is the first group of English phrases on lines 14-16. These are for Pirate or Personal and should be in the player's language. So they should be fully translated into Russian. The same phrases appear on lines 34-36 but these are for British characters. So, for example, line 14 should be Russian for "Hello, mister". Line 34 should be "Hello, mister" with Russian letters.
 

Attachments

  • Watch_dialog.c
    3.7 KB · Views: 68
  • Watch_dialog.h
    1.1 KB · Views: 65
Thanks everything is working, I'm sorry for wasting your time...
You are not wasting my time! Though I don't speak Russian myself, I know some players do, so I want the Russian translation to make progress and I am happy to help you.

Fixed lines 19; 78; 86; 115; 169 (there are small doubts about this line, we need to test it)
Translated the name and the name of the ship
On line 169, "#spronoun2#" will be replaced by "him" or "her" depending on whether you are playing as male or female. "#sPronoun3_upper#" will be replaced by "His" or "Her". The complete sentence should then read:
"All right, all right, please! Don't be so unruly. Of course I'll answer all your questions... Just sheath your sword, Danielle, please contain him! His look makes me nervous."

Or, if you are playing a female character then your companion will be Nathaniel, and that sentence will be:
"All right, all right, please! Don't be so unruly. Of course I'll answer all your questions... Just sheath your sword, Nathaniel, please contain her! Her look makes me nervous."

What worries me now is that you have translated "Danielle" on line 168, and also lines 159, 165 and 175. Also translated are:
"Ewan Glover" (lines 109, 110, 112, 147, 148);
"counterspy" (lines 119, 133, 145);
"Raoul Rheims" (lines 184, 242, 248, 260, 271, 272, 276);
"Greenford Prison Commendant" (lines 208, 209);
"Alistair Garcilaso" (lines 232, 233);
"Isenbrandt Jurcksen" (lines 257, 258)

These lines are not used directly by the dialog. They are used in "Robert Christopher Silehard_dialog.c" as references to character definitions. They must not be translated or the dialog will not work as it will not find the characters. The character names are translated in "RESOURCE\INI\TEXTS\RUSSIAN\Storyline\standard\characters_names.txt".

The attached file should be the same as your latest version but with all those lines put back. It should be possible to test some of them fairly quickly by playing the early part of the story. Your first mission for Silehard is to go to Speightstown, find out about the ammunition ship, go to St. Pierre, meet the captain, then sink the ship and return to Silehard. Your second mission is the one to escort Ewan Glover to Bridgetown, then meet Tobias. "Counterspy" is Tobias. When Silehard tells you about this mission, watch for these names.
 

Attachments

  • Robert Christopher Silehard_dialog.h
    29.1 KB · Views: 73
The attached file should be the same as your latest version but with all those lines put back. It should be possible to test some of them fairly quickly by playing the early part of the story. Your first mission for Silehard is to go to Speightstown, find out about the ammunition ship, go to St. Pierre, meet the captain, then sink the ship and return to Silehard. Your second mission is the one to escort Ewan Glover to Bridgetown, then meet Tobias. "Counterspy" is Tobias. When Silehard tells you about this mission, watch for these names.
I'm sorry for my mistake, but is the 314 line also a code? Сhanged everything. Now I'll test everything quickly, I have a save for Nathaniel.
P.s I tested and everything seems to be working
 
Last edited:
Line 314 is not a code, but looking at "Robert Christopher Silehard_dialog.c", I don't think that line will be used anyway. It seems to be part of a dialog when you ask about entering service with England. At a guess, Silehard is supposed to use lines 310, 312 and 313, the name of England's enemy, lines 315 and 317, so that the result would be something like:
"We are currently at war with the French. Of course, Pirates are always to be sunk on sight."
If England has no enemies then he would use lines 310, 311, 312 and 314, plus lines 316 and 317:
"We aren't currently at war with any nation but Pirates are always to be sunk on sight."

However, there is nothing in "Robert Christopher Silehard_dialog.c" for any of those lines. A lot of governors have the same lines - look at "PROGRAM\DIALOGS\RUSSIAN\Joseph Claude Le Moigne_dialog.h", lines 88 to 95, for example.

The text has to stay there otherwise the numbers for lines below this part will be wrong. But the dialog for things like this, used by all governors, is now in "PROGRAM\DIALOGS\governor.c" and "PROGRAM\DIALOGS\RUSSIAN\governor.h". The code for these lines has been removed from "Robert Christopher Silehard_dialog.c", "Joseph Claude Le Moigne_dialog.c" and the code files for other governors. Silehard uses both his own dialog file and "governor.c".
 
Line 314 is not a code, but looking at "Robert Christopher Silehard_dialog.c", I don't think that line will be used anyway. It seems to be part of a dialog when you ask about entering service with England. At a guess, Silehard is supposed to use lines 310, 312 and 313, the name of England's enemy, lines 315 and 317, so that the result would be something like:
"We are currently at war with the French. Of course, Pirates are always to be sunk on sight."
If England has no enemies then he would use lines 310, 311, 312 and 314, plus lines 316 and 317:
"We aren't currently at war with any nation but Pirates are always to be sunk on sight."

However, there is nothing in "Robert Christopher Silehard_dialog.c" for any of those lines. A lot of governors have the same lines - look at "PROGRAM\DIALOGS\RUSSIAN\Joseph Claude Le Moigne_dialog.h", lines 88 to 95, for example.

The text has to stay there otherwise the numbers for lines below this part will be wrong. But the dialog for things like this, used by all governors, is now in "PROGRAM\DIALOGS\governor.c" and "PROGRAM\DIALOGS\RUSSIAN\governor.h". The code for these lines has been removed from "Robert Christopher Silehard_dialog.c", "Joseph Claude Le Moigne_dialog.c" and the code files for other governors. Silehard uses both his own dialog file and "governor.c".
I translated it, if something is wrong, we will fix it.
 
I translated it, if something is wrong, we will fix it.
That's the spirit! :cheers

The next wrong thing is that part of the dialog for Jean de la Croix's start quest is still in Western alphabet:
swear_english.jpg

The problem this time is "PROGRAM\Storyline\FreePlay\DIALOGS\Celestino Villalobos_dialog.c" and "PROGRAM\Storyline\FreePlay\DIALOGS\RUSSIAN\Celestino Villalobos_dialog.h". Like "Watch_dialog.c", "Celestino Villalobos_dialog.c" fills in some variables depending on the character's nationality and gender. One of these is either "Hijo de puta" or "Hija de puta", depending on whether you are playing a male or female character. Another line should have had "mon ami" in Western alphabet but doesn't, because the Russian version of "Celestino Villalobos_dialog.h" does not have the variable "#sfriend#" on line 8.

Attached are new versions of "Celestino Villalobos_dialog.c" and English "Celestino Villalobos_dialog.h". All the variable text is now in "Celestino Villalobos_dialog.h", and "Celestino Villalobos_dialog.c" is changed to read it from there. Like "Watch_dialog.h", most of the new text should be written with Russian letters to sound the same as the original. If you're playing a French character such as Jean de la Croix, for example, you should say "mon ami", not the Russian for "my friend". The exception is line 16, which is for Pirate and Personal characters, and should be in the player's language. Line 21 is for a British character and should be English "my friend" in Russian alphabet.

Spanish does not pronounce "h" and "j" the same way as English. Use Google Translate to translate "son" and "daughter" into Spanish. Google Translate has a button like a loudspeaker which allows you to hear the word spoken, so you can hear how "hija" and "hijo" sound, then use Russian letters to make the same sounds.
 

Attachments

  • Celestino Villalobos_dialog.c
    3 KB · Views: 77
  • Celestino Villalobos_dialog.h
    1.1 KB · Views: 66
That's the spirit! :cheers

The next wrong thing is that part of the dialog for Jean de la Croix's start quest is still in Western alphabet:
View attachment 41682

The problem this time is "PROGRAM\Storyline\FreePlay\DIALOGS\Celestino Villalobos_dialog.c" and "PROGRAM\Storyline\FreePlay\DIALOGS\RUSSIAN\Celestino Villalobos_dialog.h". Like "Watch_dialog.c", "Celestino Villalobos_dialog.c" fills in some variables depending on the character's nationality and gender. One of these is either "Hijo de puta" or "Hija de puta", depending on whether you are playing a male or female character. Another line should have had "mon ami" in Western alphabet but doesn't, because the Russian version of "Celestino Villalobos_dialog.h" does not have the variable "#sfriend#" on line 8.

Attached are new versions of "Celestino Villalobos_dialog.c" and English "Celestino Villalobos_dialog.h". All the variable text is now in "Celestino Villalobos_dialog.h", and "Celestino Villalobos_dialog.c" is changed to read it from there. Like "Watch_dialog.h", most of the new text should be written with Russian letters to sound the same as the original. If you're playing a French character such as Jean de la Croix, for example, you should say "mon ami", not the Russian for "my friend". The exception is line 16, which is for Pirate and Personal characters, and should be in the player's language. Line 21 is for a British character and should be English "my friend" in Russian alphabet.

Spanish does not pronounce "h" and "j" the same way as English. Use Google Translate to translate "son" and "daughter" into Spanish. Google Translate has a button like a loudspeaker which allows you to hear the word spoken, so you can hear how "hija" and "hijo" sound, then use Russian letters to make the same sounds.
I translated it. How did I understand lines 13-16 in Russian ? Or only 16?
 
Back
Top