• 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

Did you try scrolling beyond the third choice? The line for the tailor is "Link.l5" and "Link.l5.go".

Otherwise, upload "system.log", and also "error.log" if it exists, after you have asked for directions and got this dialog.
I can scroll, but the dialog is empty.
Now I see that dlg_text [170], not dlg_text [172]. Sorry for the anxiety.
 

Attachments

  • error.log
    20.7 KB · Views: 18
  • system.log
    1.9 MB · Views: 13
Last edited:

Attachments

  • 1738849024797.png
    1738849024797.png
    971.9 KB · Views: 43
1) After the fight on the bridge with the Indians, you need to sheathe your sword and talk to L'Ollonais. If you don't, he won't speak near the entrance to the temple.
case "Darientemple":
Add from above - "LAi_SetFightMode(PChar, false);"
2) If I leave the temple without the idol, I will not be able to return.
 

Attachments

  • 1738932449897.png
    1738932449897.png
    675.3 KB · Views: 23
  • 1738937395029.png
    1738937395029.png
    765.6 KB · Views: 17
  • 1738937526185.png
    1738937526185.png
    560.2 KB · Views: 21
1: I've added that to my copy, so it will be in the next update.

2: Correct. Case "Darientemple4bis" sets a trigger for "Darientemple6" when you return to the jungle, and "Darientemple6" checks if you have the idol.

@Bartolomeu o Portugues: possibly unlock the entrance to the temple at case "Darientemple4bis" so that the player can go back in? Or, at case "Darientemple6", if the player does not have the idol, do something different to close the quest and the storyline - perhaps have l'Ollonais say something different. Or have you another idea?
 
One of the Russian players took a side mission to deliver cargo to Antigua Island in St. John's, but upon arrival he has no line in the dialog box about his delivery.
Attached is his save. (Hornblower's storyline)
 

Attachments

  • 1739294622099.png
    1739294622099.png
    689.8 KB · Views: 24
  • -=Player=- Антигуа.7z
    692.8 KB · Views: 20
At case "Beforepraca2", add:
Code:
PChar.quest.disable_rebirth = true;
That should prevent resurrection to the tavern.
At case "verdouwesen", add:
Code:
PChar.quest.disable_rebirth = false;
This is when you return to the outskirts, you've told l'Ollonais what you learned, and you're about to return to the ship to sail to Curaçao. Normal resurrection can now be allowed.

Incidentally, while you're in the town centre, can you teleport back to your ship?

@Bartolomeu o Portugues: have you any objection to this fix?
Ok, you can fix it.
 
At the same two cases, add:
Code:
DisableFastTravel(true);
... and:
Code:
DisableFastTravel(false);
... to disable and re-enable fast travel.

In "PROGRAM\Storyline\Bartolomeu\Locations\init", find the entry for "Major_house". Change this:
Code:
Locations[n].reload.l1.label = "Isla Muelle. Center.";
... to:
Code:
Locations[n].reload.l1.label = "#stown_name#. Center.";
This will only have any effect in a new game, and it might not work even then - we've had problems with reload labels like that before. The reload does not really lead back to the town centre. So perhaps that entire reload should be commented out. @Bartolomeu o Portugues - any thoughts? You're not supposed to turn round and go back out, you're supposed to go upstairs into the bedroom, from where you'll escape through the window.
Right, the player must exit through the window.
 
1: I've added that to my copy, so it will be in the next update.

2: Correct. Case "Darientemple4bis" sets a trigger for "Darientemple6" when you return to the jungle, and "Darientemple6" checks if you have the idol.

@Bartolomeu o Portugues: possibly unlock the entrance to the temple at case "Darientemple4bis" so that the player can go back in? Or, at case "Darientemple6", if the player does not have the idol, do something different to close the quest and the storyline - perhaps have l'Ollonais say something different. Or have you another idea?
The goal is clear. If the player doesn't have the idol, he fails the quest. In this case, l'Ollonais will fight the player to kill him. If the player wins the fight maybe he can retrieve an item ( a weapon for instance) from the l'Ollonais body but as I said the quest is closed.
 
The goal is clear. If the player doesn't have the idol, he fails the quest. In this case, l'Ollonais will fight the player to kill him. If the player wins the fight maybe he can retrieve an item ( a weapon for instance) from the l'Ollonais body but as I said the quest is closed.
That's the problem, though. If the player doesn't have the idol, l'Ollonais does not fight him. Case "Darientemple6" has the condition 'if(CheckCharacterItem(Pchar,"darien_idol"))' which triggers the confrontation with l'Ollonais if the player does have the idol. But there is no 'else' so nothing happens if the player does not have it.
 
One of the Russian players took a side mission to deliver cargo to Antigua Island in St. John's, but upon arrival he has no line in the dialog box about his delivery.
Attached is his save. (Hornblower's storyline)
The problem is that the storyline has its own version of dialog file "Antigua_victualler.c" which does not include code for trade quests. The associated ".h" files do contain most of the text, there's just no code to use it. That's easily enough copied from the standard version in "PROGRAM\DIALOGS". I did need to add a bit of extra dialog text to allow for arriving at Antigua with some of the cargo missing, but it doesn't need to be translated because I copied that from the standard version too, in English, Russian and Spanish. The attached zip has all the files.
 

Attachments

  • Hornblower_fix.zip
    7.5 KB · Views: 21
That's the problem, though. If the player doesn't have the idol, l'Ollonais does not fight him. Case "Darientemple6" has the condition 'if(CheckCharacterItem(Pchar,"darien_idol"))' which triggers the confrontation with l'Ollonais if the player does have the idol. But there is no 'else' so nothing happens if the player does not have it.
Should have some dialogue when the player goes outside without the idol before the fight....
 
If you'd like to write the dialog for l'Ollonais, I'll see about adding it to his files, then add the 'else' part to case "Darientemple6".
 
You need to make for "PROGRAM\Storyline\Bartolomeu\quests\quests_reaction.c" the same as for "PROGRAM\QUESTS\quests_side.c".
case "minefight2":
Locations[FindLocation("Battle_Rocks_Jungle_01")].reload.l2.disable = true;
Locations[FindLocation("Battle_Rocks_Jungle_01")].reload.l3.disable = true;

case "entrermine":
Locations[FindLocation("Battle_Rocks_Jungle_01")].reload.l3.disable = false;
Locations[FindLocation("Battle_Rocks_Mine")].reload.l2.disable = true;

case "allerport":
Locations[FindLocation("Battle_Rocks_Jungle_01")].reload.l2.disable = false;
Locations[FindLocation("Battle_Rocks_Mine")].reload.l2.disable = false;

Also, please change in "PROGRAM\QUESTS\quests_side.c"
case "entrermine":
Instead of
Locations[FindLocation("Battle_Rocks_Jungle_01")].reload.l2.disable = false;
Make it
Locations[FindLocation("Battle_Rocks_Jungle_01")].reload.l3.disable = false;
There was a mistake, since L2 is an exit to the camp, and L3 is the entrance to the cave. (The cave was blocked after the murder of soldiers)
And perhaps we need to translate "Battle Rocks Mine".
 

Attachments

  • 1739726129080.png
    1739726129080.png
    778.1 KB · Views: 16
Last edited:
You need to make for "PROGRAM\Storyline\Bartolomeu\quests\quests_reaction.c" the same as for "PROGRAM\QUESTS\quests_side.c".
case "minefight2":
Locations[FindLocation("Battle_Rocks_Jungle_01")].reload.l2.disable = true;
Locations[FindLocation("Battle_Rocks_Jungle_01")].reload.l3.disable = true;

case "entrermine":
Locations[FindLocation("Battle_Rocks_Jungle_01")].reload.l3.disable = false;
Locations[FindLocation("Battle_Rocks_Mine")].reload.l2.disable = true;

case "allerport":
Locations[FindLocation("Battle_Rocks_Jungle_01")].reload.l2.disable = false;
Locations[FindLocation("Battle_Rocks_Mine")].reload.l2.disable = false;
Yes, all three versions - general sidequest, "Bartolomeu" and "Hoist the Colours" should be consistent. @Bartolomeu o Portugues, any objections?

Also, please change in "PROGRAM\QUESTS\quests_side.c"
case "entrermine":
Instead of
Locations[FindLocation("Battle_Rocks_Jungle_01")].reload.l2.disable = false;
Make it
Locations[FindLocation("Battle_Rocks_Jungle_01")].reload.l3.disable = false;
There was a mistake, since L2 is an exit to the camp, and L3 is the entrance to the cave. (The cave was blocked after the murder of soldiers)
True. It also needs to be corrected in "PROGRAM\Storyline\JackSparrow\quests\both_reaction.c".

And perhaps we need to translate "Battle Rocks Mine".
Better yet, in "PROGRAM\Locations\init\BattleRocks.c", in the entry for "Battle_Rocks_mine", change the label to "#sisland_name# mine". That is already translated and should automatically fill in the translated name of the island - which in the game is "Petit Tabac".
 
1) Bandits killed Serafino Masarenhas while I was talking to him. (case "Envoy_OxbayPort")
2) The Hunter - Sail to Sao Jorge, Concepcion (Must have Emilio Soares with you as officer)
Why can't we make it here to automatically add officers after talking to the governor? (case "Meet_Queiroz")
 

Attachments

  • 1739813628601.png
    1739813628601.png
    755.1 KB · Views: 19
@Bartolomeu o Portugues:
1: Perhaps either set a 'vcskip' on location "Oxbay_Port" at case "leaveswann", then cancel it at case "Envoy_OxbayPort"; or make Serafino Masarenhas immortal at case "Envoy_OxbayPort".
2: We could do something similar to what we did for Chico Cois a few times in "Assassin". At case "Falar_Soares":
Code:
            if(Characters[GetCharacterIndex("Emilio Soares")].location != PChar.location)
            {
                PlaceCharacter(CharacterFromID("Emilio Soares"), "goto");
                if(SetOfficersIndex(PChar, -1, GetCharacterIndex("Emilio Soares")) == GetCharacterIndex("Emilio Soares")) SetOfficersIndex(PChar, 1, GetCharacterIndex("Emilio Soares"));
            }
If Emilio Soares is not where you are, put him on a nearby "goto" locator. Assign him as an officer, to any free slot if there is one, otherwise to slot 1 replacing whoever you had as an officer there.
 
@Bartolomeu o Portugues:
1: Perhaps either set a 'vcskip' on location "Oxbay_Port" at case "leaveswann", then cancel it at case "Envoy_OxbayPort"; or make Serafino Masarenhas immortal at case "Envoy_OxbayPort".
2: We could do something similar to what we did for Chico Cois a few times in "Assassin". At case "Falar_Soares":
Code:
            if(Characters[GetCharacterIndex("Emilio Soares")].location != PChar.location)
            {
                PlaceCharacter(CharacterFromID("Emilio Soares"), "goto");
                if(SetOfficersIndex(PChar, -1, GetCharacterIndex("Emilio Soares")) == GetCharacterIndex("Emilio Soares")) SetOfficersIndex(PChar, 1, GetCharacterIndex("Emilio Soares"));
            }
If Emilio Soares is not where you are, put him on a nearby "goto" locator. Assign him as an officer, to any free slot if there is one, otherwise to slot 1 replacing whoever you had as an officer there.
Ok, make the changes
 
1) In line 119 of the "Lair_crewmember.c" file, you need to remove the extra space between sentences.
d.Text = RandPhrase(TimeGreeting() + DLG_TEXT[8] + GetMyAddressForm(NPChar, PChar, ADDR_CIVIL, false, false) + " " + DLG_TEXT[9] + DLG_TEXT[10], DLG_TEXT[11] + DLG_TEXT[12], DLG_TEXT[13], &dialog, dialog.snd1, dialog.snd2, dialog.snd3);
2) After I send the carpenter to get the wood, an error occurs and "DLG_TEXT[10] + planksboarded + DLG_TEXT[11]" is not output.
 

Attachments

  • 1740360888888.png
    1740360888888.png
    694.1 KB · Views: 9
  • error.log
    5.8 KB · Views: 7
  • -=Тест2=- Сан-Сальвадор.7z
    654.9 KB · Views: 9
Back
Top