• 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 Can't change flag.

Can't quite remember.

Maybe they used to be the same, but it was found some beaches didn't connect to the ship locations and that was changed only on one side but not another?

Or perhaps we kept it deliberately easier for the standard storyline?

There was also the Evil Stormy Start that got converted into the Castaway player type.
 
Certainly some beach locations were originally unconnected to ship locations, e.g. on Hispaniola, either the ship or the player was at Ile de Vache, which doesn't connect to anywhere else. Currently the ship is at another beach if there is one and you can walk to it from the player location, otherwise the ship is in the nearest port. The only place where the ship spawns at the same place as the player in FreePlay is Cozumel as it has only one beach and no port. And on that note, I've put this into the "standard" version of "both_reaction.c":
Code:
           if(STORMY_START_CHOICES > 19) i = 19;   // GR: don't allow Cozumel because it starts with
           else i = STORMY_START_CHOICES;              //  the inaccessible island model
           switch(rand(i) )           // ccc mar 06  New islands

The standard storyline might be set to be easier (default difficulty is "Landlubber") to make it suitable for novice players. But novice players shouldn't be doing "Stormy Start" anyway, they ought to be doing either the full tutorial or at least the reduced one. If they want to have a "Stormy Start", let them have it - putting the ship on the same beach as the player tends to defeat the whole idea of "Stormy Start". ;) (And if the player can't be bothered to look for the ship, this can be regarded as a quick introduction to fast travel!)
 
Meanwhile, back to the original topic of being unable to change flag, this version of "seadogs.c" solves the problem. It adds 'bChangeNation = true;' near the top of function 'NewGame()'. I tested it by starting the standard storyline, choosing the full tutorial, quitting, then starting a different storyline. With the original "seadogs.c", I can't change flag when I go to the ship's deck. With this version, I can, but I can't change flag during the tutorial, which presumably was the intent behind disabling 'bChangeNation' until the tutorial is over.
 

Attachments

  • seadogs.c
    86.2 KB · Views: 86
And on that note, I've put this into the "standard" version of "both_reaction.c":
What are the STORMY_START_CHOICES again? If I recall, that defaults to 20 but can be set to 19 if KhaelRoa is to be excluded.
Based on what you say, perhaps it should just be hardcoded as 20 in Free Play and 19 in Standard and get rid of the toggle altogether.
 
From "InternalSettings.h":
Code:
#define STORMY_START_CHOICES   20               // Set to 19 to disable Cozumel stormy start, set to 17 to also disable Barbados stormy start
Presumably the idea of setting it to 17 is to make sure that, if you start as a British character in general or Nathaniel Hawk in particular, and you'd normally start at Speightstown, you don't end up just around the corner of the same island. So if someone chose to do that, my code doesn't override it. On the other hand, if they've left it at the default 20, "standard" caps it at 19 so you can't start on Cozumel and be unable to sail away.

Any objection to copying all the "loadPort" / "loadTown" settings from "FreePlay" to "standard" so that you have to search for your ship there as well?
 
Back
Top