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

Mod Release Build 14 Beta 3.5 Internal WIP For Testing

Man that was some storm that hit yesterday!

Beta 3 2015-03-25 18-09-42-46.jpg Beta 3 2015-03-25 18-10-11-02.jpg
 
I know there is a corpse thing that is used twice in the game. It is not supposed to show up at random though.

That ship wreck doesn't move, does it?
Probably another random item.

Can you try starting a new game? There was an error with quest Items before, but I think it should be fixed now.
Or at least press F11 and see if it still happens after that.
 
Report from Horatio Hornblower:

The new installer plus the zip file from 24th March does recognise old savegames - IS_SGV has not changed from the earlier version of Beta 3.5. The first thing which happened when I loaded a savegame was an error which appeared on screen and was the only thing in "error.log", so rather than post the file I'll just say:
Code:
COMPILE ERROR - file: storyline\Hornblower\quests\both_reaction.c; line: 661
Undeclared identifier: locx
The first mention of "locx" in "storyline\Hornblower\quests\both_reaction.c" is here:
Code:
    case "dagger":
       locx = stf(loadedLocation.locators.camera.locator4.x);
       locy = stf(loadedLocation.locators.camera.locator4.y);
       locz = stf(loadedLocation.locators.camera.locator4.z);
       locCameraToPos(locx, locy, locz, false);
       LAi_LocationMonstersGen(&locations[FindLocation("Douwesen_town_exit")], true);
       LAi_SetActorType(characterFromID("blaze"));
       LAi_SetImmortal(pchar, true);
       LAi_ActorAttack(characterFromID("danielle"), characterFromID("blaze"), "");
       LAi_QuestDelay("dagger_2", 2.0);
     break;
I don't know what that's doing in Hornblower's quest files. That and subsequent case sections refer to the part of the "Standard" story in which you're in Rheims' house when Danielle reacts violently upon learning that you work for Silehard. When I commented out the entire "dagger" section and loaded a savegame, there was no error message. (There are other references to "locx" elsewhere in the file. I didn't touch those and they do not cause the error.)

From my savegame just after "Land Battle", I went to St. Pierre with William Chumley in tow. After talking to Milon Blaque, Orable Caron, Fred Bob, Harduin Aufort and Fred Bob again, I hired Fred Bob, who still displaced Chumley despite the change to the "SetOfficersIndex" line in "both_reaction.c". I changed it from -1 to 3, repeated the process, no effect. I added a "logit" line which should have put a message on screen when I hired Fred Bob, no message appeared. Finally I commented out the "SetOfficersIndex" line, no effect - he still gets hired and displaced Chumley, which should not happen with that line inactive. Perhaps the game is getting the Fred Bob side quest from somewhere else. Granted, I can avoid trouble with Fred Bob by simply not doing his side quest at that point, but if the game really is getting side quests from elsewhere then that has implications for further development of side quests for Hornblower.

After editing "CCCFunction.c" to comment out the "StartQuestMovie" line at the end, I loaded the savegame just before the attack on the Spanish fort. No effect - the fort commander still joins in the attack by reinforcements and gets himself killed. Then I commented out everything in "SoldierReinforcements()" and tried again, and the commander behaved himself. Finally I put "CCCFunction.c" back the way it was (re-extracted it from the installer), commented out only the "Ambush" line, and again the commander stood still and surrendered as he's meant to. It is therefore "Ambush" which is causing him to join in the ambush.
 
Playing BFF I think the tavern keeper in port royal is missing some dialogue. You don't get gossip or the chance to hire officers.

Also you can't get the Aztec compas from the bosun unless you have a cursed coin, is that correct?
 
New game? Drat. I'm trying to get 3.5 to the same place as 3.3 is so I can compare them side to side. Right now it seems that overall 3.5 is running slightly faster than 3.3, but I can't be sure.

Port Royal.
Beta 3 2015-03-25 21-15-28-63.jpg Beta 3 2015-03-25 21-24-53-86.jpg
 
The first thing which happened when I loaded a savegame was an error which appeared on screen and was the only thing in "error.log", so rather than post the file I'll just say:
Code:
COMPILE ERROR - file: storyline\Hornblower\quests\both_reaction.c; line: 661
Undeclared identifier: locx
The first mention of "locx" in "storyline\Hornblower\quests\both_reaction.c" is here:
Code:
    case "dagger":
       locx = stf(loadedLocation.locators.camera.locator4.x);
       locy = stf(loadedLocation.locators.camera.locator4.y);
       locz = stf(loadedLocation.locators.camera.locator4.z);
       locCameraToPos(locx, locy, locz, false);
       LAi_LocationMonstersGen(&locations[FindLocation("Douwesen_town_exit")], true);
       LAi_SetActorType(characterFromID("blaze"));
       LAi_SetImmortal(pchar, true);
       LAi_ActorAttack(characterFromID("danielle"), characterFromID("blaze"), "");
       LAi_QuestDelay("dagger_2", 2.0);
     break;
I don't know what that's doing in Hornblower's quest files. That and subsequent case sections refer to the part of the "Standard" story in which you're in Rheims' house when Danielle reacts violently upon learning that you work for Silehard. When I commented out the entire "dagger" section and loaded a savegame, there was no error message. (There are other references to "locx" elsewhere in the file. I didn't touch those and they do not cause the error.)
I'll double-check that. Looks like the same issue we had with Nelson two days ago and I fixed that but in the Nelson files only.

From my savegame just after "Land Battle", I went to St. Pierre with William Chumley in tow. After talking to Milon Blaque, Orable Caron, Fred Bob, Harduin Aufort and Fred Bob again, I hired Fred Bob, who still displaced Chumley despite the change to the "SetOfficersIndex" line in "both_reaction.c". I changed it from -1 to 3, repeated the process, no effect. I added a "logit" line which should have put a message on screen when I hired Fred Bob, no message appeared. Finally I commented out the "SetOfficersIndex" line, no effect - he still gets hired and displaced Chumley, which should not happen with that line inactive. Perhaps the game is getting the Fred Bob side quest from somewhere else. Granted, I can avoid trouble with Fred Bob by simply not doing his side quest at that point, but if the game really is getting side quests from elsewhere then that has implications for further development of side quests for Hornblower.
The only files that are used are PROGRAM\QUESTS\quests_common.c and the storyline-specific quest_reaction.c and both_reaction.c .
Quest_reaction.c should be purely the main quest without sidequests, with both_reaction.c containing the sidequests. Can you check those files and see if the same case is doubled up somehow?
Wouldn't quite surprise me with all the large changes we've been doing lately.

After editing "CCCFunction.c" to comment out the "StartQuestMovie" line at the end, I loaded the savegame just before the attack on the Spanish fort. No effect - the fort commander still joins in the attack by reinforcements and gets himself killed. Then I commented out everything in "SoldierReinforcements()" and tried again, and the commander behaved himself. Finally I put "CCCFunction.c" back the way it was (re-extracted it from the installer), commented out only the "Ambush" line, and again the commander stood still and surrendered as he's meant to. It is therefore "Ambush" which is causing him to join in the ambush.
Good to know. If you look at the top of "CCCFunction.c", that is where the Ambush function is defined. There are some lines there messing around with AI group relations which are probably the cause.

Playing BFF I think the tavern keeper in port royal is missing some dialogue. You don't get gossip or the chance to hire officers.
Port Royale? That's odd, that is one of the places where I tested my tavern owner dialog changes.
I can double-check though....

Also you can't get the Aztec compas from the bosun unless you have a cursed coin, is that correct?
That should be absolutely unrelated. How did you figure that one? :shock

New game? Drat. I'm trying to get 3.5 to the same place as 3.3 is so I can compare them side to side. Right now it seems that overall 3.5 is running slightly faster than 3.3, but I can't be sure.
Just start with pressing F11 and see if that makes a difference. Apparently this is fairly common, so you should notice quickly enough if anything changes.
Other people should notice the same thing if it is still a valid bug and hasn't been fixed yet....
 
The only files that are used are PROGRAM\QUESTS\quests_common.c and the storyline-specific quest_reaction.c and both_reaction.c .
Quest_reaction.c should be purely the main quest without sidequests, with both_reaction.c containing the sidequests. Can you check those files and see if the same case is doubled up somehow?
Wouldn't quite surprise me with all the large changes we've been doing lately.
I can't find reference to Fred Bob anywhere in Hornblower's "quests_reaction.c" or any of the files in "PROGRAM\QUESTS". Moreover, the only reference in Hornblower's "both_reaction.c" is near the bottom in the area headed by a comment "CatalinaThePirate FB Quest", and that only seems to handle Fred Bob being hired and fired, as well as (at least some of) the "Help the Lady" side quest which is the follow-on to "Help the Boatswain".

There's another "SetOfficersIndex(Pchar, 2, GetCharacterIndex("Fred Bob"));" line in "PROGRAM\DIALOGS\Fred Bob_dialog.c". I'll need to see what happens if I mess with that...
 
I did F11 before I started taking screenies and have just started a new game, and have seen nothing unusual yet.
 
I did F11 before I started taking screenies and have just started a new game, and have seen nothing unusual yet.
So F11 didn't fix it, but a New Game might have done. Right?
We'll find out, I suppose.....

I can't find reference to Fred Bob anywhere in Hornblower's "quests_reaction.c" or any of the files in "PROGRAM\QUESTS". Moreover, the only reference in Hornblower's "both_reaction.c" is near the bottom in the area headed by a comment "CatalinaThePirate FB Quest", and that only seems to handle Fred Bob being hired and fired, as well as (at least some of) the "Help the Lady" side quest which is the follow-on to "Help the Boatswain".
Perhaps it is indeed the dialog line that is the relevant one then.
 
Port Royale? That's odd, that is one of the places where I tested my tavern owner dialog changes.
I can double-check though....

Never mind. Third time I went back I git the full dialogue.

That should be absolutely unrelated. How did you figure that one? :shock

Because went talk to him he said he had something for me but I didn't get the compass. (In the latest fix) I just thought I didn't get it because I didn't have the coin.
 
@Jason: There was indeed something weird with the Jamaica tavern owner dialog. Found now.
It is possible that the same issue applies to some other tavern owners here and there, so please keep an eye out for that one.

I cannot confirm the Mr. Gibbs issue; he gave me the compass just fine in BFF when I tested now.
There was a problem with this last week, but I fixed it on Monday. Perhaps you didn't have the latest update installed when you started your game?

@Grey Roger: Hornblower both_reaction.c is confirmed and fixed.
At the moment the both_reaction.c file for Hornblower doesn't make any sense; I think it is a copy of the Standard storyline quests_reaction.c at the moment.
Once Nelson is sorted out, Hornblower and the other storylines will automatically follow suit.

And that "Fred Bob hired" quest case is indeed not used anywhere. Changing the line in his dialog file should have an effect though.

In the Ambush function, the Hornblower quest problem is probably due to one of these lines:
Code:
  LAi_group_SetRelation(LAI_GROUP_PLAYER, group, mainrel);
   if(mainrel=="enemy")
   {
     // PB: Don't draw blades if not necessary -->
     if(CheckAttribute(PChar, "locationLock"))
     {
       LAi_group_SetHearRadius(group, 40000000.0);
       LAi_group_SetSayRadius(group, 40000000.0);
     }
     // PB: Don't draw blades if not necessary <--
     else
     {
       LAi_group_FightGroups(group, LAI_GROUP_PLAYER, true);
     }
   }

   LAi_group_SetRelation(LAI_GROUP_GUARDS, "ambush", npcrel);
   LAi_group_SetRelation(LAI_DEFAULT_GROUP, "ambush", npcrel);
   LAi_group_SetRelation(LAI_GROUP_MONSTERS, "ambush", npcrel);

   // ccc Nov05 set relation to local soldiers (which are NOT! LAI_GROUP_GUARDS) with NK's new function
   SetAllNormalGroupsRel("ambush", npcrel);
   
   if(npcrel=="enemy") LAi_group_FightGroups("ambush", LAI_GROUP_GUARDS, true);
The best solution is to avoid the SoldierReinforcements function from being called in that quest in the first place.
It isn't meant for that at all as it is intended to only apply to regular town guards.
 
ZIP attached to opening post updated again. Stuff changed:
- Hornblower both_reaction.c fixed to work again
- Strange Things sidequest missing characters restored (requires new game to apply!)
- Fred Bob added to different officer slot (for testing by @Grey Roger)
- Fred Bob "hiring" quest case removed because it wasn't used anywhere
- Jamaica tavern owner fixed to show the "tavern news" and "find specific officer" dialog options properly

@Grey Roger: Do you have a savegame prior to the scene where the fort commander joins the fight when he shouldn't?
I'd like to play through it myself so I can see why SoldierReinforcements is being triggered and hopefully figure out a way to avoid it.
 
ZIP attached to opening post updated again. Stuff changed:
- Hornblower both_reaction.c fixed to work again
- Strange Things sidequest missing characters restored (requires new game to apply!)
- Fred Bob added to different officer slot (for testing by @Grey Roger)
- Fred Bob "hiring" quest case removed because it wasn't used anywhere
- Jamaica tavern owner fixed to show the "tavern news" and "find specific officer" dialog options properly

@Grey Roger: Do you have a savegame prior to the scene where the fort commander joins the fight when he shouldn't?
I'd like to play through it myself so I can see why SoldierReinforcements is being triggered and hopefully figure out a way to avoid it.
@Jason: There was indeed something weird with the Jamaica tavern owner dialog. Found now.
It is possible that the same issue applies to some other tavern owners here and there, so please keep an eye out for that one.

I cannot confirm the Mr. Gibbs issue; he gave me the compass just fine in BFF when I tested now.
There was a problem with this last week, but I fixed it on Monday. Perhaps you didn't have the latest update installed when you started your game.

No I had the latest version installed.

@Grey Roger: Hornblower both_reaction.c is confirmed and fixed.
At the moment the both_reaction.c file for Hornblower doesn't make any sense; I think it is a copy of the Standard storyline quests_reaction.c at the moment.
Once Nelson is sorted out, Hornblower and the other storylines will automatically follow suit.

And that "Fred Bob hired" quest case is indeed not used anywhere. Changing the line in his dialog file should have an effect though.

In the Ambush function, the Hornblower quest problem is probably due to one of these lines:
Code:
  LAi_group_SetRelation(LAI_GROUP_PLAYER, group, mainrel);
   if(mainrel=="enemy")
   {
     // PB: Don't draw blades if not necessary -->
     if(CheckAttribute(PChar, "locationLock"))
     {
       LAi_group_SetHearRadius(group, 40000000.0);
       LAi_group_SetSayRadius(group, 40000000.0);
     }
     // PB: Don't draw blades if not necessary <--
     else
     {
       LAi_group_FightGroups(group, LAI_GROUP_PLAYER, true);
     }
   }

   LAi_group_SetRelation(LAI_GROUP_GUARDS, "ambush", npcrel);
   LAi_group_SetRelation(LAI_DEFAULT_GROUP, "ambush", npcrel);
   LAi_group_SetRelation(LAI_GROUP_MONSTERS, "ambush", npcrel);

   // ccc Nov05 set relation to local soldiers (which are NOT! LAI_GROUP_GUARDS) with NK's new function
   SetAllNormalGroupsRel("ambush", npcrel);
  
   if(npcrel=="enemy") LAi_group_FightGroups("ambush", LAI_GROUP_GUARDS, true);
The best solution is to avoid the SoldierReinforcements function from being called in that quest in the first place.
It isn't meant for that at all as it is intended to only apply to regular town guards.
@Jason: There was indeed something weird with the Jamaica tavern owner dialog. Found now.
It is possible that the same issue applies to some other tavern owners here and there, so please keep an eye out for that one.

I cannot confirm the Mr. Gibbs issue; he gave me the compass just fine in BFF when I tested now.
There was a problem with this last week, but I fixed it on Monday. Perhaps you didn't have the latest update installed when you started your game?

@Grey Roger: Hornblower both_reaction.c is confirmed and fixed.
At the moment the both_reaction.c file for Hornblower doesn't make any sense; I think it is a copy of the Standard storyline quests_reaction.c at the moment.
Once Nelson is sorted out, Hornblower and the other storylines will automatically follow suit.

And that "Fred Bob hired" quest case is indeed not used anywhere. Changing the line in his dialog file should have an effect though.

In the Ambush function, the Hornblower quest problem is probably due to one of these lines:
Code:
  LAi_group_SetRelation(LAI_GROUP_PLAYER, group, mainrel);
   if(mainrel=="enemy")
   {
     // PB: Don't draw blades if not necessary -->
     if(CheckAttribute(PChar, "locationLock"))
     {
       LAi_group_SetHearRadius(group, 40000000.0);
       LAi_group_SetSayRadius(group, 40000000.0);
     }
     // PB: Don't draw blades if not necessary <--
     else
     {
       LAi_group_FightGroups(group, LAI_GROUP_PLAYER, true);
     }
   }

   LAi_group_SetRelation(LAI_GROUP_GUARDS, "ambush", npcrel);
   LAi_group_SetRelation(LAI_DEFAULT_GROUP, "ambush", npcrel);
   LAi_group_SetRelation(LAI_GROUP_MONSTERS, "ambush", npcrel);

   // ccc Nov05 set relation to local soldiers (which are NOT! LAI_GROUP_GUARDS) with NK's new function
   SetAllNormalGroupsRel("ambush", npcrel);
  
   if(npcrel=="enemy") LAi_group_FightGroups("ambush", LAI_GROUP_GUARDS, true);
The best solution is to avoid the SoldierReinforcements function from being called in that quest in the first place.
It isn't meant for that at all as it is intended to only apply to regular town guards.
 
@Jason: Any chance you can edit your post above? Usually I can figure them out when they're quoted like that, but today I'm a bit lost....

Anyway, I'm redoing the EXE installer to be correct so I'd recommend you use that one when it's done.
Might as well ensure your installation is equal to mine.
 
Just tried to get the compass again. Dialogue yes compass no.

Here is the save.
 

Attachments

  • -=Player=- Nevis.rar
    439.8 KB · Views: 63
Installer EXE linked to in the opening post is updated now as well and should work properly on a clean install as well as existing Beta 3 versions.
It results in the same as using the current ZIP, but makes for a cleaner install.

Additionally, the EXE enforces a new game to be started, but the ZIP leaves the choice to you guys.
I suggest using the EXE if you have doubts on your current game version and I'd definitely recommend it for @Jason because some weird things seem to be happening for him.

Just tried to get the compass again. Dialogue yes compass no.
Confirmed on your savegame.
However, pressing F11 to reinitialize prior to talking to Mr. Gibbs fixes it and does give me the compass.
Looks like your game was started before I fixed the item initialization error, but it is OK now.
 
Back
Top