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

[HELP] Dutch quest - 4 manowar for the governor bug

Frodo

Landlubber
Hi, Cabrones!! Fala moçada!! Email me

I playing the as dutch adventurer, and doing dutch quest line. In follow quest:
Peter Stuyvesant wants you to collect 4 Manowars, as the Dutch have problems building large vessels. Find 4 of those ships and hand them over to Stuyvesant.
Be careful: if you own a private Manowar, he will take them as well. (skoda's notes - Stuyvesant mentions Man-o-War's but quest log says Ship-of-the-Line, you need 4 manowars and the best way to obtain them is to either waiting for a chance to defend the city, or attacking punitive expeditions or military convoys...sometimes you can find one guarding a merchant convoy, but that's rare)

I already had four man o war but i can't delivery it for governor...The governor simply act how i dont have any ship. Then i ask: How can i delivery manowars to the governor? Or can i cheat to complete the quest, i had a several days trying finish this quest....

AoP22.jpg
 

Attachments

  • AoP2.jpg
    AoP2.jpg
    166 KB · Views: 110
I guys,

First, sorry about my english, it´'s freak....ahahah

I done, i resolve the bug... argh!!!! It´s simple a replace the hol_Governor.c file for an "patch" file.

case "TakeThreeShips_toAbordage":
dialog.text = DLG_TEXT_GUB[89];
tempQty = 0;
for (i=1; i<=COMPANION_MAX; i++)
{
chComp = GetCompanionIndex(pchar,i);
if(chComp != -1)
{
sld = GetCharacter(chComp);
iShip = sti(sld.ship.type);
iBaseType = sti(RealShips[iShip].basetype);
if (iBaseType == SHIP_MANOWAR)
{
tempQty++;
RemoveCharacterCompanion(pchar, sld);
AddPassenger(pchar, sld, false);
AddMoneyToCharacter(pchar, 50000);
}
}
}
if (tempQty == 0)
{
link.l1 = DLG_TEXT_GUB[94];
link.l1.go = "Step_9_6";
DeleteAttribute(pchar, "questTemp.QtyShips");
}
else
{
if (sti(pchar.questTemp.QtyShips) > tempQty)
{
if (tempQty > 1)
{
link.l1 = DLG_TEXT_GUB[91] + tempQty + DLG_TEXT_GUB[92];
}
else
{
link.l1 = DLG_TEXT_GUB[93];
}
link.l1.go = "Step_9_5";
pchar.questTemp.QtyShips = sti(pchar.questTemp.QtyShips) - tempQty;
AddQuestRecord("Hol_Line_9_TakeThreeShips", "2");
AddQuestUserData("Hol_Line_9_TakeThreeShips", "QtyTook", tempQty);
AddQuestUserData("Hol_Line_9_TakeThreeShips", "QtyElse", pchar.questTemp.QtyShips);
}
else
{
AddQuestRecord("Hol_Line_9_TakeThreeShips", "3");
link.l1 = DLG_TEXT_GUB[94];
link.l1.go = "Step_9_6";
DeleteAttribute(pchar, "questTemp.QtyShips");

}
}

Add the above bold italic command to the follow line in bold underline:


case "TakeThreeShips_toAbordage":
dialog.text = DLG_TEXT_GUB[89];
tempQty = 0;
for (i=1; i<=COMPANION_MAX; i++)
{
chComp = GetCompanionIndex(pchar,i);
if(chComp != -1)
{
sld = GetCharacter(chComp);
iShip = sti(sld.ship.type);
iBaseType = sti(RealShips[iShip].basetype);
if (iBaseType == SHIP_MANOWAR)
{
tempQty++;
RemoveCharacterCompanion(pchar, sld);
AddPassenger(pchar, sld, false);
AddMoneyToCharacter(pchar, 50000);
}
}
}
if (tempQty == 0)
{
link.l1 = DLG_TEXT_GUB[90];
link.l1.go = "exit";

}
else
{
if (sti(pchar.questTemp.QtyShips) > tempQty)
{
if (tempQty > 1)
{
link.l1 = DLG_TEXT_GUB[91] + tempQty + DLG_TEXT_GUB[92];
}
else
{
link.l1 = DLG_TEXT_GUB[93];
}
link.l1.go = "Step_9_5";
pchar.questTemp.QtyShips = sti(pchar.questTemp.QtyShips) - tempQty;
AddQuestRecord("Hol_Line_9_TakeThreeShips", "2");
AddQuestUserData("Hol_Line_9_TakeThreeShips", "QtyTook", tempQty);
AddQuestUserData("Hol_Line_9_TakeThreeShips", "QtyElse", pchar.questTemp.QtyShips);
}
else
{
AddQuestRecord("Hol_Line_9_TakeThreeShips", "3");
link.l1 = DLG_TEXT_GUB[94];
link.l1.go = "Step_9_6";
DeleteAttribute(pchar, "questTemp.QtyShips");
}
}
 
I think you complicate the problem, this is not a real bug.
Stuyvesant accepts only the "classic" type of Man-of-War, the ship of game Vanilla:
...

..
He does not accept different type of man-of-war or others ships Class 1.
But effectively in the game GoF the "classic" manowar is infrequent... you need to search for long...
 
Try this code, it solves both bugs.

The code is NOT tested, I'll be obligued if you test it and report back here.

Code:
////// Program\DIALOGS\russian\Governor\hol_Governor.c

//// .... [snip]
case "TakeThreeShips_toAbordage":
dialog.text = DLG_TEXT_GUB[89];
tempQty = 0;
for (i=1; i<=COMPANION_MAX; i++)
{
chComp = GetCompanionIndex(pchar,i);
if(chComp != -1)
{
sld = GetCharacter(chComp);
iShip = sti(sld.ship.type);
iBaseType = sti(RealShips[iShip].basetype);
//// {*} BUHO-FIX - Original - Deprecated - Take Three Ships quest
/*
if (iBaseType == SHIP_MANOWAR)
{
tempQty++;
RemoveCharacterCompanion(pchar, sld);
AddPassenger(pchar, sld, false);
AddMoneyToCharacter(pchar, 50000);
}
*/
//// {*} BUHO END REMOVE

//// {*} BUHO-FIX - REPLACEMENT CODE - Take Three Ships quest
/*
- Extends the match to all types or man-o-wars.
- Solves the bug where the code takes more than three man-o-wars if you have
that many.
*/
bool bFound = iBaseType == SHIP_MANOWAR || iBaseType == SHIP_MANOWAR_FAST;
bFound = bFound || iBaseType == SHIP_BATTLEMANOWAR || iBaseType == SHIP_MANOW50_GUB;
if (bFound && tempQty < sti(pchar.questTemp.QtyShips))                            
{
tempQty++;
RemoveCharacterCompanion(pchar, sld);
AddPassenger(pchar, sld, false);
AddMoneyToCharacter(pchar, 50000);
}
//// {*} BUHO END REPLACEMENT
}
}
if (tempQty == 0)               

//// .... [snip]

Cheers.
buho (A).
 
Hmmm... :glare:
This not is mod, is cheat.
Cheat for cheat, you can use the debugger.
You get on a ship any, and with button F6 your ship becomes a "classic" Man-of-War. :wp
Do this four times, and Herr Stuyvesant is satisfied. :d:
 
ok damn i try'id this that frodo said now i go to the governer and talk about hes mission now it doesnt move from there on it stays there i cant even close the conversation anyone help or sent me that part of the mission text pls !!!!!!!
 
Yes I am almost tempted to do the same, just sailing around for many months with the feeling of coming nowhere. Just wonder if it is harder to find a Manowar if I my character have Admiration to Spain
 
Try turning off realistic encounters, then you have a much better chance of finding the stock COAS MOW. But your characters rank is important for the class 1 ships to show up.

I don't play quests, so it would be nice to know if this code works from Buho.

Try this code, it solves both bugs.

The code is NOT tested, I'll be obligued if you test it and report back here.

Code:
////// Program\DIALOGS\russian\Governor\hol_Governor.c
 
//// .... [snip]
case "TakeThreeShips_toAbordage":
dialog.text = DLG_TEXT_GUB[89];
tempQty = 0;
for (i=1; i<=COMPANION_MAX; i++)
{
chComp = GetCompanionIndex(pchar,i);
if(chComp != -1)
{
sld = GetCharacter(chComp);
iShip = sti(sld.ship.type);
iBaseType = sti(RealShips[iShip].basetype);
//// {*} BUHO-FIX - Original - Deprecated - Take Three Ships quest
/*
if (iBaseType == SHIP_MANOWAR)
{
tempQty++;
RemoveCharacterCompanion(pchar, sld);
AddPassenger(pchar, sld, false);
AddMoneyToCharacter(pchar, 50000);
}
*/
//// {*} BUHO END REMOVE
 
//// {*} BUHO-FIX - REPLACEMENT CODE - Take Three Ships quest
/*
- Extends the match to all types or man-o-wars.
- Solves the bug where the code takes more than three man-o-wars if you have
that many.
*/
bool bFound = iBaseType == SHIP_MANOWAR || iBaseType == SHIP_MANOWAR_FAST;
bFound = bFound || iBaseType == SHIP_BATTLEMANOWAR || iBaseType == SHIP_MANOW50_GUB;
if (bFound && tempQty < sti(pchar.questTemp.QtyShips))                           
{
tempQty++;
RemoveCharacterCompanion(pchar, sld);
AddPassenger(pchar, sld, false);
AddMoneyToCharacter(pchar, 50000);
}
//// {*} BUHO END REPLACEMENT
}
}
if (tempQty == 0)             
 
//// .... [snip]

Cheers.
buho (A).
 
Back
Top