• 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!

Tales of sea hawk Bug - workaround

Hello guys I ran into a bug during the main story questline, here's a workaround.

Someone else posted the same issue in BNH: Tales of sea hawk Bug
Go check out above link. It's the exact same bug in MNH unfortunately. I actually quit using MNH only to run into the same bug in a different engine. :bonaparte
Anyway my troubles hopefully saves someone else a bit of effort. This workaround should also work for BNH, because both versions have the same file.

Problem:
During the main questline you've just spoken to a smuggler and have been teleported to Smugglers Lair. He tells you some house is guarded and that you aren't allowed to enter! In the quest log it tells you to wait for the night and sneak into some house.

Around 2s after entering house the player character turns into an actor with some self dialogue, but the dialogue itself is missing (very bugged, seems to be the last dialog you had with a NPC previously). The game is stuck now.

Fix:
Go to `PROGRAM\Storyline\standard\quests\quests_reaction.c` (also for BNH)

Search for `case "blaze_to_rheims_house_in_smugglers_find_book_complete":`

This is what you should see:
C:
        case "blaze_to_rheims_house_in_smugglers_find_book_complete":
            LAi_SetActorType(pchar);
            LAi_ActorGoToLocator(pchar, "goto", "goto2", "blaze_to_rheims_house_in_smugglers_find_book_complete_2", 2.0);
        break;

Replace it with this code:
C:
        case "blaze_to_rheims_house_in_smugglers_find_book_complete":
            characters[GetCharacterIndex("Robert Christopher Silehard")].dialog.CurrentNode = "blaze_return_to_silehard_node";
            pchar.quest.main_line = "blaze_found_book_in_rheims_house";
            GiveItem2Character(pchar, "rheims_journal");
            AddQuestrecord("Blaze_search_Rheims", 9);
            pchar.quest.main_line = "blaze_return_to_silehard";
            Locations[FindLocation("Rheims_house_in_smugglers")].reload.l1.disable = 0;
        break;

Let me know if you have any questions.
 
Last edited:
It seems to me that this bypasses almost the entire scene in Rheims' house. So you get a questbook entry which says that you had to fight and kill two cutthroats who told you that other people had been trying to get in there, but they don't fight you nor tell you anything.

How about simply replacing this line in case "blaze_to_rheims_house_in_smugglers_find_book_complete_2":
Code:
LAi_ActorSelfDialog(PChar, "");
... with this...
Code:
LAi_QuestDelay("blaze_fight_in_rheims_house_complete",0.5);

In any case, if 'LAi_ActorSelfDialog' is causing problems then other quests which use it are liable to break.
 
I'm not familiar with the codebase so just went with least effort. FYI completed all Tales of a seahawk quests yesterday and this is the only buggy section in MNH.
Tested your suggestion on an old save and it fixes everything including fight with guards.
 
It seems to me that this bypasses almost the entire scene in Rheims' house. So you get a questbook entry which says that you had to fight and kill two cutthroats who told you that other people had been trying to get in there, but they don't fight you nor tell you anything.

How about simply replacing this line in case "blaze_to_rheims_house_in_smugglers_find_book_complete_2":
Code:
LAi_ActorSelfDialog(PChar, "");
... with this...
Code:
LAi_QuestDelay("blaze_fight_in_rheims_house_complete",0.5);

In any case, if 'LAi_ActorSelfDialog' is causing problems then other quests which use it are liable to break.
that quest breaks because the code in Blaze_dialog is missing and never calls the next node in the quest. It was lost on port or something for MNH and BNH, unsure about B14
 
that quest breaks because the code in Blaze_dialog is missing and never calls the next node in the quest. It was lost on port or something for MNH and BNH, unsure about B14
B14 is the most stable in terms of storylines, believe me. I went through almost all the storylines 2 times and Grey Roger helped me fix all the bugs and mistakes. But the engine of the game is not very stable and sometimes the game just crashes.
 
that quest breaks because the code in Blaze_dialog is missing and never calls the next node in the quest. It was lost on port or something for MNH and BNH, unsure about B14
Not so. See this thread:
Tales of sea hawk Bug
I was able to compare "blaze_dialog.c" and "blaze_dialog.h" between B14 and BNH, and they're identical except for some special characters. But B15 has a new feature which appears to have interrupted normal self-dialog, so the first post in that thread shows a self-dialog which has nothing to do with "blaze_dialog".

@Edwin van de Werf, @Nydxz : did you get the same dialog as is seen in the screenshot in that thread, including "It would surely not hurt to rest a bit"? If so, Maelstrom is probably doing the same - bypassing "blaze_dialog.c" and triggering some alternative dialog.
 
Back
Top