Great bug, this one
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!
Quick links for Beyond New Horizons
- Download latest version
- Wiki
- FAQ
- Report bugs here
- Bug Tracker on Github
Quick links for Maelstrom
- Download the latest version of Maelstrom
- Download the latest version of ERAS II
- Download the latest version of New Horizons on Maelstrom
Quick links for PotC: New Horizons
- Download latest version
- Wiki
- FAQ
- Report bugs here
Thanks to YOUR votes, GOG.com now sells:
- Sea Dogs
- Sea Dogs: Caribbean Tales
- Sea Dogs: City of Abandoned Ships
Vote now to add Pirates of the Caribbean to the list!
Quick links for AoP2: Gentlemen of Fortune 2
- Downloads and info
- ModDB Profile
- Forums Archive
A Pirate Podcast with Interviews
Music, Comedy and all things Pirate!
- Episode Guide - About - Subscribe -
- Twitter - Facebook - iTunes - Android -
- Youtube - Fill the Coffers -
COMPILE ERROR - file: storyline\Hornblower\quests\both_reaction.c; line: 661
Undeclared identifier: locx
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;
That's cool
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.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:The first mention of "locx" in "storyline\Hornblower\quests\both_reaction.c" is here:Code:COMPILE ERROR - file: storyline\Hornblower\quests\both_reaction.c; line: 661 Undeclared identifier: locx
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.)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;
The only files that are used are PROGRAM\QUESTS\quests_common.c and the storyline-specific quest_reaction.c and both_reaction.c .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.
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.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.
Port Royale? That's odd, that is one of the places where I tested my tavern owner dialog changes.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.
That should be absolutely unrelated. How did you figure that one?Also you can't get the Aztec compas from the bosun unless you have a cursed coin, is that correct?
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.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.
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".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.
So F11 didn't fix it, but a New Game might have done. Right?I did F11 before I started taking screenies and have just started a new game, and have seen nothing unusual yet.
Perhaps it is indeed the dialog line that is the relevant one then.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".
Port Royale? That's odd, that is one of the places where I tested my tavern owner dialog changes.
I can double-check though....
That should be absolutely unrelated. How did you figure that one?
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);
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:The best solution is to avoid the SoldierReinforcements function from being called in that quest in the first place.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);
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:The best solution is to avoid the SoldierReinforcements function from being called in that quest in the first place.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);
It isn't meant for that at all as it is intended to only apply to regular town guards.
Confirmed on your savegame.Just tried to get the compass again. Dialogue yes compass no.