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

Fixed Hornblower Storyline: Tunnel of Trouble - No Pellew in Back Room

lucho1392

Sailor Apprentice
Hi guys here I am again with some reports hahaha I should get paid for this (joking)

In this part of the story:

Find entrance to smugglers camp – go into room – go into second room. [TRAP]

return to the tunnel and find entrance to the Academy.


(You can find the Academy first but it is harder to get back) BOTH entrances must be found for the game to continue.

Return to the Back Room in the Smugglers House. Talk to Pellew. A traitor exists, but who?

There is no Pellew there so... stuck... AGAIN :modding
 

Attachments

  • logs.rar
    3.7 KB · Views: 65
  • Hornblower.rar
    1.6 MB · Views: 59
Yes, and I've had the same problem on occasion.

I go to the pirate house first, then to the academy. Make sure Sharpe has followed you out of the tunnel into the academy and then out into the open town. If your questbook does not contain an entry saying "Found the tunnels. Now to get back to Captain Pellew" then you've probably left him behind somewhere.

I've never tried going to the academy first and then to the pirate house, so I can't say whether that works.
 
Yes, and I've had the same problem on occasion.
Thanks for confirming; might be some less-than-reliable quest coding then.

I marked it as a Confirmed Bug on the Bug Tracker. Not sure when I might have time to check it.
Since it can work, it should not be such a high priority I think?
 
The one about needing to wait for Sharpe isn't really a bug. It's just a matter of me moving too quickly and leaving Sharpe behind. Whether there's a problem if you follow the tunnel to the academy first and then go to the pirate house, is at most an unconfirmed bug.
 
The one about needing to wait for Sharpe isn't really a bug. It's just a matter of me moving too quickly and leaving Sharpe behind.
Does that not mean the quest is written in an unreliable way?

Do you know any other unreliable points that could do with updating?
We might as well have a list somewhere for "some time in the future when we might actually have time for it". :facepalm
 
So could someone explain the problem a bit better?
Could we just add a teleport somewhere to make sure this works?
 
I think it is some unreliable coding, similar to the Vigila Mendes sidequest.
If somebody can post a savegame just prior to this point, I might be able to have a look at the relevant code and see if I can change it a bit.
 
Marked as "Awaiting Info". Can't do much without a save to check from.
 
Close this plz i was able to continue, the problem was that sharpe stayed away from. So just wait until he is following you.
 
If you do have a save, please do post it. Maybe some time I can do something to make it more reliable.
 
Fixed! :doff

Here's the offending code:
Code:
    case "Found_the_Academy_second":
       Pchar.Quest.Straight_to_back_room.over = "yes";

       LAi_SetActorType(characterFromID("Richard Sharpe"));
       characters[GetCharacterIndex("Richard Sharpe")].Dialog.Filename = "Richard Sharpe_dialog.c";
       LAi_ActorDialog(characterFromID("Richard Sharpe"),PChar,"",5.0,5.0);
       Characters[GetCharacterIndex("Richard Sharpe")].dialog.CurrentNode = "Tunnel_tasks_complete";
     break;

     case "Into_the_Academy_job_done":
       LAi_ActorGoToLocator(characterFromID("Richard Sharpe"), "reload", "reload1_back", "Into_the_Academy_job_done2", 20.0);
     break;

     case "Into_the_Academy_job_done2":
       Pchar.quest.Now_to_back_room_Mystery_House.win_condition.l1 = "location";
       PChar.quest.Now_to_back_room_Mystery_House.win_condition.l1.character = Pchar.id;
       Pchar.quest.Now_to_back_room_Mystery_House.win_condition.l1.location = "Charlestown_Academy";
       Pchar.quest.Now_to_back_room_Mystery_House.win_condition = "Now_to_back_room_Mystery_House";

       Pchar.quest.Tunnel_to_back_room.win_condition.l1 = "location";
       Pchar.quest.Tunnel_to_back_room.win_condition.l1.character = Pchar.id;
       Pchar.quest.Tunnel_to_back_room.win_condition.l1.location = "Back_Room";
       Pchar.quest.Tunnel_to_back_room.win_condition = "Tunnel_to_back_room";
     break;
Sharpe has a dialog about having done everything and we can return to the "Mystery House" through the town rather than back to the tunnel; this dialog exits to case "Into_the_Academy_job_done". That's where Sharpe moves towards the door and it only concludes when he gets there, leading to case "Into_the Academy_job_done2", which detects when you go to the academy (or if you prefer to go back down the tunnel). If you go through the door before Sharpe finishes his movement then "Into_the_Academy_job_done" never completes and "Into_the_Academy_job_done2" never starts.

Solution:
Code:
     case "Into_the_Academy_job_done":
       LAi_ActorGoToLocator(characterFromID("Richard Sharpe"), "reload", "reload1_back", "", 20.0);
       Pchar.quest.Now_to_back_room_Mystery_House.win_condition.l1 = "location";
       PChar.quest.Now_to_back_room_Mystery_House.win_condition.l1.character = Pchar.id;
       Pchar.quest.Now_to_back_room_Mystery_House.win_condition.l1.location = "Charlestown_Academy";
       Pchar.quest.Now_to_back_room_Mystery_House.win_condition = "Now_to_back_room_Mystery_House";

       Pchar.quest.Tunnel_to_back_room.win_condition.l1 = "location";
       Pchar.quest.Tunnel_to_back_room.win_condition.l1.character = Pchar.id;
       Pchar.quest.Tunnel_to_back_room.win_condition.l1.location = "Back_Room";
       Pchar.quest.Tunnel_to_back_room.win_condition = "Tunnel_to_back_room";
     break;

Cases "Into_the_Academy_job_done" and "Into_the_Academy_job_done2" are merged and Sharpe's movement no longer triggers a new quest case. You can go through to the Academy any time you like and the quest will continue. I tried this and it worked. Old code: if I run up to the door to the Academy before Sharpe gets there, no subsequent quest case is triggered. New version: whether I wait for Sharpe to get to the door or run ahead and go through first, the quest continues.
 
Back
Top