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

Updates

Grey Roger

Sea Dog
Staff member
Administrator
Storm Modder
Here are some updates to the "Bartolomeu" storyline which I've been working on. The base directory is "PROGRAM" because there are a couple of files in "PROGRAM\DIALOGS\ENGLISH" which I changed.

Summary of changes:
StartStoryline.c:
England and Holland set to neutral relation, as they weren't at war in 1660. (Also done to "StartStoryline.c" for "Assassin".)

quests_reaction.c:
In "Search_Campos_Jungle",
Code:
SetOfficersIndex(PChar, -1, GetCharacterIndex("Augusto Queiroz"));
has the "-1" replaced by "1" so that he is forced into companion slot 1, replacing whichever officer is already there, so that unless the player actively removes him, he'll be available to say his piece in Sao Jorge. (Better might be to make him a separate character, as is done at the end of "The Cartagena Firework", then it doesn't matter what the player does to officers.)

Daniel Montbars and Roxanne Lalliere changed from "goto18" to "goto20" and "goto19" respectively, as those locators exist on the dock.

"vcskip" lines added around the tavern scene during "The Aztec Treasure" to prevent random people from sitting on Elting's lap. (Not yet tested as I can't find a savegame near that point.)

Player relation with Holland set to neutral when Elting introduces Bartolomeu to the Dutch governor in "The Cartagena Firework".

Dialogs:
Johan Elting's and Reynard Grueneveldt's dialogs changed to refer to "#sisland_Conceicao#" rather than hard-coded "Grenada", as that name does not apply until later periods, and using the variable name means it should remain correct if someone changes the island's name in "Spanish Main" period again.

A bit of proofreading on Gregario Montavez's dialog.
---

Still to do: "ItemsDescribe.txt" needs an entry for "LongRifle_BT" as no such entry exists at the moment in either the general version or the storyline specific version. Also, the description of the map of Isla de Muerte needs to be changed as the island is not between Cayman and Cuba.
 

Attachments

  • PROGRAM.zip
    80.2 KB · Views: 367
I didn't do anything to the actual story, that's your job. ;)

Any objection to me copying the code from near the end of "The Cartagena Firework" to "The Hunter" so that Queiroz becomes an independent character and you don't teleport to the governor's residence? The objective is the same in both places, Queiroz says something to you and then you go to talk to the governor, but the version in "The Cartagena Firework" is much more resistant to anything the player might do.

Also, any objection to removing the keys which you pick up in the tunnel from the Admiral's office to the fort? As mentioned in another thread, the inventory is getting quite cluttered with quest items that serve no further purpose - I think one of the letters is also stuck there permanently.

Meanwhile, here's the "Bartolomeu" specific "ItemsDescribe.txt" with an extra item on the end. This will make the rifle appear correctly in the inventory.
 

Attachments

  • ItemsDescribe.txt
    6 KB · Views: 381
I didn't do anything to the actual story, that's your job. ;)

Any objection to me copying the code from near the end of "The Cartagena Firework" to "The Hunter" so that Queiroz becomes an independent character and you don't teleport to the governor's residence? The objective is the same in both places, Queiroz says something to you and then you go to talk to the governor, but the version in "The Cartagena Firework" is much more resistant to anything the player might do.

Also, any objection to removing the keys which you pick up in the tunnel from the Admiral's office to the fort? As mentioned in another thread, the inventory is getting quite cluttered with quest items that serve no further purpose - I think one of the letters is also stuck there permanently.
Ok, for the two changes.
About the quest items (keys, letters...), they can be removed at the end of the quest (in which they are used) but not just after using them.
 
And now I have a problem. I don't know whether it's due to my changes to "quests_reaction.c". The problem is that when I've finished blowing up Cartagena fort and teleport back to the ship's cabin, Elting fails to show up. The only times I've had him appear are when I use the unmodified version of "quests_reaction.c", though even then it's not guaranteed, but I'm not sure if I'm using a savegame created by the modified or original version. Besides, I can't think what modification would foul up Elting's appearance there without also fouling up his appearance in the cabin on previous occasions. I haven't done anything to quest items, so the last modification to take effect is the one to change Bartolomeu's relation with Holland to neutral.

You can't save game while in the fort, so the nearest savegames I have are one at the beach round the corner, from where you can sail to Cartagena and do everything from the first meeting with the governor; and one in the blacksmith's when you're about to go and rescue Elting from the church. Also attached are log files from after Elting failed to show up in the cabin.
 

Attachments

  • -=Player=- Kingdom of Granada. Dolphin Sands. May 21st, 1663.zip
    1.1 MB · Views: 298
  • -=Player=- Kingdom of Granada.zip
    1.1 MB · Views: 383
  • compile.log
    136 KB · Views: 347
  • error.log
    182 bytes · Views: 334
  • system.log
    112.5 KB · Views: 333
Unfortunately I really don't have a lot of opportunity for PotC this week at all, so don't count on much.

Perhaps @Grey Roger can use the ENABLE_CHEATMODE jump-starts to get to that point with the unmodified and modified quests_reaction.c file?

It might also help to see the code from quests_reaction.c that is supposed to put Elting in place.
And what is the time of day? He isn't secretly one of those "disappear at night" characters, is he?
 
You'll first need to tell me in detail how to use cheat mode.

This is the code that's supposed to put Elting (and Arie Dierman) into your cabin:
Code:
  case "back_grenade":
     LAi_SetPlayerType(Pchar);
     ChangeCharacterAddressGroup(CharacterFromID("Elting"), "Cabin2", "rld", "loc6");
     ChangeCharacterAddressGroup(CharacterFromID("Arie Dierman"), "Cabin2", "rld", "aloc3");

     LAi_SetActorType(characterFromID("Elting"));
     Characters[GetCharacterIndex("Elting")].dialog.currentnode = "begin_149";
     LAi_ActorDialog(characterFromID("Elting"), pchar, "", 4.0, 1.0);
     break;
Arie Dierman always shows up. Elting sometimes doesn't. I've never yet seen him appear when I've been using the updated "quests_reaction.c", but as I said, my modifications are long before "back_grenade", yet there's never a problem with Elting appearing in the cabin in earlier parts of "The Cartagena Firework". Time of day can't be a factor because it's set several cases earlier:
Code:
case "prepare_operation_end":
     SetCurrentTime(23.00, 0);
So it's definitely night.

My real question, which should be solvable by a "winmerge" comparison between updated and original versions of "quests_reaction.c" by someone who actually knows how to program, is: could my modifications be in any way responsible for this? If not, then my work here is done, time to look at something else. But if I've messed up and somehow caused the problem then I'd rather like to know how, partly for general education and partly so I can update this quest properly.
 
Post here the original and updated versions of the quests_reaction.c. At least, I can check that with my netbook. However, I should test this part of the quest to understand really where the problem is. Something I can only do when my desktop repaired.
 
I posted the updated version of the file among those in the zip file included in the first post of this thread. ;) However, in case you can't get at that with the netbook, here are both versions - "quests_reaction_orig.c" should be the original as you last saw it, "quests_reaction_new.c" should be my updated version. The easy way to check is to look for case "Elting_Townhallbis": where the updated version should have "SetActualRMRelation(HOLLAND, REL_AMNESTY);" added. (Elting introduces you to the Dutch governor and you give him the letter of introduction from the Portuguese governor, which gives me enough reason to make Holland neutral to you.)
 

Attachments

  • quests_reaction_orig.c
    534.8 KB · Views: 349
  • quests_reaction_new.c
    535 KB · Views: 330
You'll first need to tell me in detail how to use cheat mode.
At the bottom of PROGRAM\InternalSettings.h set ENABLE_CHEATMODE to 1.
This enables the cheat controls from the Numpad as described in the Documentation folder.

However, it also enables the various storyline jump-starts that are available.
For the Bartolomeu and Assassin storylines, these jump-starts are part of the first quest dialog you have, so cannot be missed.
For Jack Sparrow there is a "Random Drunk" in the Tortuga Tavern and for Hornblower "C.S. Forester" is placed somewhere in Antigua Port.
Woodes Rogers has the "Head of Blackbeard" in the opening cabin.
 
Yes. (Except, presumably, if he gets killed before then, which has happened a couple of times. When it did, I assumed things weren't going to end well and quit right there.)
 
Ok, something happens when reloaded in the cabin.
I found that in your compile log :
Template <follow> -> path not found chr.id = Elting
 
Does he get placed on a locator that doesn't exist? The availability of locators might change between different player cabin types.
But then, this is all hardcoded for "cabin2" so that shouldn't be it.

Or are there too many characters (more than 32)? Seems a bit unlikely in a cabin scene, though.

Are your regular officers with you? Could one of them be generated at the same spot Elting should appear at?
 
Perhaps @Grey Roger can use the ENABLE_CHEATMODE jump-starts to get to that point with the unmodified and modified quests_reaction.c file?
Snag 1 is that you can only jump-start to the beginning of the "Cartagena Firework" quest - I can't see how to jump to a specific part of the quest. Snag 2 is that you still start off with low skill and not much equipment, and when I'm attacked on the islet by two smugglers when all I have is a dagger, low Melee skill and no armour, I don't survive very long.

Ok, something happens when reloaded in the cabin.
I found that in your compile log :
Template <follow> -> path not found chr.id = Elting
Yes, I'd spotted that. The last time I saw something like that was when Daniel Montbars failed to appear at Tortuga, which leads to one of Pieter's comments...

Does he get placed on a locator that doesn't exist? The availability of locators might change between different player cabin types.
But then, this is all hardcoded for "cabin2" so that shouldn't be it.

Or are there too many characters (more than 32)? Seems a bit unlikely in a cabin scene, though.

Are your regular officers with you? Could one of them be generated at the same spot Elting should appear at?
Elting is supposed to appear on "loc6". I tried enabling visible locators and reloading the nearest savegame I had, and "loc6" certainly exists, though it was hard to find at first because there are a lot of locators there. Besides, sometimes he does appear and the quest can continue to conclusion, which is why there's a thread about the New Santiago. ;)

The line in "compile.log" does seem similar to a line generated when Daniel Montbars fails to appear at La Tortue, which problem is indeed caused by there being too many characters, and that is indicated in "compile.log" by the line "LAi_CharacterLogin -> many logined characters in location (>32)". No such line appears in "compile.log" after Elting's non-appearance.

Any officers you have with you are dismissed when you first arrive at Cartagena dock. Suspecting that the quest might break if I put them back, I left them out.
 
Snag 1 is that you can only jump-start to the beginning of the "Cartagena Firework" quest - I can't see how to jump to a specific part of the quest. Snag 2 is that you still start off with low skill and not much equipment, and when I'm attacked on the islet by two smugglers when all I have is a dagger, low Melee skill and no armour, I don't survive very long.
It is better than starting completely from the start. :shrug
For skill issues, use those Numpad cheats to level-up.
You can also use console to trigger any quest case in the quest files.
That may work for quick checks, but will most likely not work for gameplay afterwards.
 
@Grey Roger: Looks like your changes are still based on the old version of quests_reaction.c .
I've recently reformatted it to display a bit better in Notepad.
 
Back
Top