• 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: Changes Required

I don't want food consumption disabled entirely for Hornblower, just while he's in prison. And not necessarily for the whole time, just around where the "WaitDate" commands are doing their stuff. For preference, define a new variable somewhere in "quests_reaction.c", then do something like this:
Code:
old_food = FOOD_ON;
food_setting = false;
WaitDate("", 0, 0, 1, 0, 0);
FOOD_ON = old_food;
That ought to prevent any long term side-effects as well as preserving the player's choice of whether food consumption is enabled normally.
Problem is that those variables won't be stored. Recommend using pchar.old_food instead and once you're done with it you can do DeleteAttribute(pchar, "old_food"); .
Though if you do it within a single quest case, it should work.

That should not be necessary. The ship has enough food and rum to get to where it's going, unless you divert from plot and go off in search of loot and side-quests. In that case you're effectively taking over the ship and may as well take over the responsibility of feeding it. xD
Fair enough. :onya
 
Not unless I ever learn how to write quests. Otherwise whoever wants to do the job can do what he likes to the traitor. I'll think more about new stuff after I've got the existing stuff working properly. ;)
What is the simplest solution to at least close that story point? Perhaps the admiral who gives you command of the Atropos can just mention it in dialog?
Just to get it over and done with....

And on that note, nobody has said anything about how to deal with the locked boat at Anse Casse Bois...
What was that point again?

It might be a good reason for Hornblower getting a new command. He received command of Hotspur along with promotion back to Commander at the start of "Old Friends - New Enemies", and still has them when he returns from Guadeloupe to get married.
That's what I meant.... :wp
Can't even go from memory on that because I never played through Hornblower that far.
 
What is the simplest solution to at least close that story point? Perhaps the admiral who gives you command of the Atropos can just mention it in dialog?
Just to get it over and done with....
That would work. Or leave it open in case someone does get round to writing a new quest for it.

What was that point again?
Not so minor problem: when you proceed to Anse Casse Bois to rejoin Hotspur, there's a locked icon when you get to the rowing boat and you can't board the ship. There's a workround in that there's always the icon to teleport to your ship, but I'd like to know why the boat is locked and how to unlock it. Probably somewhere around "Hogan_Quest_Done" or "Hogan_Quest_Done_More".
 
Not so minor problem: when you proceed to Anse Casse Bois to rejoin Hotspur, there's a locked icon when you get to the rowing boat and you can't board the ship. There's a workround in that there's always the icon to teleport to your ship, but I'd like to know why the boat is locked and how to unlock it. Probably somewhere around "Hogan_Quest_Done" or "Hogan_Quest_Done_More".
Did you have your ship prior to reload to the location? And does the game know your ship is moored at that particular shore?
 
I found a tunnel leading to
1) academy: locked door
2) pirate camp: nothing happens here
???
 
Did you have your ship prior to reload to the location? And does the game know your ship is moored at that particular shore?
The ship should be there, since the boat is there, and anyway that's how you got to Guadeloupe in the first place - you sail to Nevis to collect Teresa Moreno, then to Anse Casse Bois to land.

In "To_Guadeloupe_shore_Hogan2", what does this line do?
Code:
Locations[FindLocation("Guadeloupe_shore_01")].reload.l2.disable = 1;
And if it's what I think it is, which is to lock the boat, what's the command to undo it?

I found a tunnel leading to
1) academy: locked door
2) pirate camp: nothing happens here
???
This is part of "Tunnel of Trouble". You have to investigate that tunnel and find both the pirate camp and the Academy. You don't go into the pirate camp yourself; Harper, who is with you, reports seeing French officers, then you go back through the tunnel to the Academy, and then across town to the Mystery House where you report to Pellew.
 
I found a tunnel leading to
1) academy: locked door
2) pirate camp: nothing happens here
???
You mean in general play? That does sound like stuff used for Hornblower.

The ship should be there, since the boat is there, and anyway that's how you got to Guadeloupe in the first place - you sail to Nevis to collect Teresa Moreno, then to Anse Casse Bois to land.

In "To_Guadeloupe_shore_Hogan2", what does this line do?
Code:
Locations[FindLocation("Guadeloupe_shore_01")].reload.l2.disable = 1;
And if it's what I think it is, which is to lock the boat, what's the command to undo it?
That is indeed very possible. Undo it by setting disable = 0 instead of 1. ;)
If you want to be sure, find "Guadeloupe_shore_01" in PROGRAM\Locations\init\Guadeloupe.c and see which locator goes with reload.l2 .
Then use the VISIBLE_LOCATORS toggle at the bottom of PROGRAM\InternalSettings.h to see which one it is.
 
Maybe a little later, but not right now. Want to finish at least part 23/25 of the GoldBug first. Maybe all.
Is the situation this: the Hornblower storyline is completed and you can continue playing in free play?
Are there any jump starts in Hornblower?
Me too. I prefer to focus my work on the Elting's quest. :facepalm
After finishing it, I'll be able to do these things if necessary.
 
This is part of "Tunnel of Trouble". You have to investigate that tunnel and find both the pirate camp and the Academy. You don't go into the pirate camp yourself; Harper, who is with you, reports seeing French officers, then you go back through the tunnel to the Academy, and then across town to the Mystery House where you report to Pellew.
Thanks, Grey Roger.
 
Update: I've added a few "WaitDate" lines in "The Duchess and the Devil". And also that code to remove your ship, though the game got upset and refused to load "quests_reaction.c" at first. A quick look at "error.log" showed why - "ch.Ship.Type = SHIP_NOTUSED_TYPE_NAME;" should actually be "pchar.Ship.Type = SHIP_NOTUSED_TYPE_NAME;". No sign of starvation, though at the moment Hornblower only spends a couple of weeks in prison; now that it's working to that point, I may increase the delays so he's stuck there for about a month. There are repeated messages about crew morale, though.

The line which I guessed was the one to lock the boat at Anse Casse Bois is correct, and adding a similar line at a relevant point with the "1" replaced by "0" does indeed unlock it. Without that added line, the boat stays locked so you have trouble boarding ship at the end of the main action on Guadeloupe as well; with the added line, the boat is unlocked there as well. (I may add additional lock and unlock lines around that main action; at a guess, the idea is to prevent you from getting back in the boat before the respective activities on Guadeloupe have happened, possibly breaking the story.)

Still to do: make Rifleman Cooper immortal during the battle in "Tunnel of Trouble" so he still is Rifleman Cooper and not a clone by the time he has to lend you a picklock and subsequently jam the gates on Guadeloupe. Remove him from Passengers at an appropriate time - actually two appropriate times, since the first Guadeloupe visit splits to two different paths depending on whether you follow Teresa Moreno onto her ship or follow Sharpe's men to join in the plantation battle, and Cooper needs to be removed in both of them. Final decision on whether to have Sharpe, Harper and a couple of other riflemen remain assigned to Hornblower or removed from Passengers. War with France, Spain and Holland to resume.

Barring unexpected problems, this ought to be finished and tested during the weekend.
 
There are repeated messages about crew morale, though.
That is even when you have no ship, no crew and no cargo?
Or do you still have crew if you have no ship?

The line which I guessed was the one to lock the boat at Anse Casse Bois is correct, and adding a similar line at a relevant point with the "1" replaced by "0" does indeed unlock it. Without that added line, the boat stays locked so you have trouble boarding ship at the end of the main action on Guadeloupe as well; with the added line, the boat is unlocked there as well. (I may add additional lock and unlock lines around that main action; at a guess, the idea is to prevent you from getting back in the boat before the respective activities on Guadeloupe have happened, possibly breaking the story.)
The Standard storyline has a point where you are landlocked in Bridgetown just before the defense battle despite having a ship.
I know there is a toggle for that somewhere to prevent you from going to sea altogether. I can't remember the exact name, but it is there so if you search for it, hopefully you can find it.

Still to do: make Rifleman Cooper immortal during the battle in "Tunnel of Trouble" so he still is Rifleman Cooper and not a clone by the time he has to lend you a picklock and subsequently jam the gates on Guadeloupe. Remove him from Passengers at an appropriate time - actually two appropriate times, since the first Guadeloupe visit splits to two different paths depending on whether you follow Teresa Moreno onto her ship or follow Sharpe's men to join in the plantation battle, and Cooper needs to be removed in both of them. Final decision on whether to have Sharpe, Harper and a couple of other riflemen remain assigned to Hornblower or removed from Passengers. War with France, Spain and Holland to resume.
Sounds good! You probably find the line to set a character immortal by now already; I've seen it used several times in Hornblower's quest_reaction.c .
 
That is even when you have no ship, no crew and no cargo?
Or do you still have crew if you have no ship?
The "Ship" option is greyed out in the F2 interface screen, so either you have no ship or it's not letting me see it. Whatever happened, it's presumably the result of me copying your code to remove the player's ship as given here.

The Standard storyline has a point where you are landlocked in Bridgetown just before the defense battle despite having a ship.
I know there is a toggle for that somewhere to prevent you from going to sea altogether. I can't remember the exact name, but it is there so if you search for it, hopefully you can find it.
Possibly one of these, from ""danielle_RepelEnglishAssault_exit"?
Code:
bQuestDisableMapEnter = true;
Island_SetReloadEnableGlobal("oxbay",false);
The locked boat ought to be enough. It's a big hint that you don't want to go to sea, and if you're determined to break the quest then there are other ways besides bypassing the lock by teleporting onto the ship...

Sounds good! You probably find the line to set a character immortal by now already; I've seen it used several times in Hornblower's quest_reaction.c .
Yes, and in fact I've posted an updated version of "quests_reaction.c" by editing my post in "List of fixes":
http://www.piratesahoy.net/threads/list-of-fixes.21176/page-16#post-505862
I've still to test whether the latest round of fixes do fix what they're meant to fix and don't break anything else, and I've yet to make a final decision on Sharpe and his men - I'll probably remove them, Cooper should already be out.
 
The "Ship" option is greyed out in the F2 interface screen, so either you have no ship or it's not letting me see it. Whatever happened, it's presumably the result of me copying your code to remove the player's ship as given here.
Yep, that is indeed what should be happening.

Possibly one of these, from ""danielle_RepelEnglishAssault_exit"?
Code:
bQuestDisableMapEnter = true;
Island_SetReloadEnableGlobal("oxbay",false);
The locked boat ought to be enough. It's a big hint that you don't want to go to sea, and if you're determined to break the quest then there are other ways besides bypassing the lock by teleporting onto the ship...
No, it was something else.
I won't have access to my computer until Sunday evening again though to check.

Yes, and in fact I've posted an updated version of "quests_reaction.c" by editing my post in "List of fixes":
http://www.piratesahoy.net/threads/list-of-fixes.21176/page-16#post-505862
I've still to test whether the latest round of fixes do fix what they're meant to fix and don't break anything else, and I've yet to make a final decision on Sharpe and his men - I'll probably remove them, Cooper should already be out.
Thanks! Please remind me next week to include them in another ZIP-update. It is getting a bit busy on my side lately. :facepalm
 
It also means that unless someone else plays "Hornblower" and reports otherwise, you can mark this one as "Fixed". ;)
 
We would just need those few dialogs added to the end to promote you and say the traitor has been caught.
 
Ok I'll take a look at the end of Hornblower on Monday.
Who is this "traitor" and what has he been up to earlier?

He is a British Admiral - who appears earlier - can't remember which one though ( the one who has a son who is an officer/companion of Hornblower)

:read
 
Thanks Talisman, sounds like something from one of the Hornblower films.
Guess it's Black Charlie Hammond,
 
No, Black Charlie Hammond commits suicide on the beach after his nephew is killed. But there are two traitors still at large.
Thomas Wolfe is known to be a traitor. He captures you and then the squad of marines during the Guadeloupe raid, and runs away from the final beach battle.
Uriah Quelp is also a traitor, though you only get to confirm that if you make a wrong decision during the land action on Antigua. There's the point where you're at the jungle junction along with Sharpe and his men, and have just discovered two dead riflemen. If you try to pull rank on Sharpe rather than following his advice, you end up on the beach, Quelp kills Sharpe, you kill Quelp, then the Earl of Edrington arrests you for murder, you're court-martialled and executed, game over.
 
And now I've run into another problem. Once again, it's "The Duchess and the Devil".

How it's supposed to start:
After dinner with the Dalrymples, you're introduced to the Duchess. You leave the building, talk to Midshipman Hunter, make your way to port and go to sea. The capture video triggers when you to to the worldmap.

What happens now:
After dinner with the Dalrymples, you're introduced to the Duchess. You leave the building, talk to Midshipman Hunter, and the capture video triggers immediately.

Here's my current version of "quests_reaction.c". Also a savegame where I'm just outside the Kingston Naval HQ, about to go for the Lieutenant's Examination, and "compile.log" and "system.log" files from after I've been captured and am in the prison fort.

Meanwhile, other changes in "quests_reaction.c" include:
. Rifleman Cooper is immortal during the Mystery House and Octopus Bay battles. He needs to be alive for the first Guadeloupe mission. If he's killed, a clone appears during that mission. Dialogs which refer to Rifleman Cooper therefore look odd if you're actually looking at Rifleman Random Name.
. Portugal no longer makes peace with France when Britain does. With Portugal still at war with France, Teresa Moreno has a reason to fight.
. Britain resumes war with France and Spain before the second Guadeloupe raid. Otherwise that raid is effectively Britain doing a "Pearl Harbor", which ought to upset Hornblower - this is a man who, having given his word not to use a lifeboat to escape and having then escaped unintentionally, demands to be sent back to the Spanihs fort so he doesn't break his word.
 

Attachments

  • quests_reaction.zip
    74.7 KB · Views: 95
  • -=Test=- Jamaica. Kingston. Center. October 4th, 1798.zip
    818.6 KB · Views: 90
  • compile.log
    24.3 KB · Views: 110
  • system.log
    7.3 KB · Views: 119
Back
Top