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

Problems with the Update 3

fudge dragon

Landlubber
Storm Modder
Ack, Installed the Update 3 for build 13 but I now get engine errors on startup. error log says this

<!--c1--><div class='codetop'>CODE</div><div class='codemain'><!--ec1-->COMPILE ERROR - file: Loc_ai\LAi_fightparams.c; line: 582
Invalid Expression
COMPILE ERROR - file: Loc_ai\LAi_fightparams.c; line: 582
Invalid Expression
COMPILE ERROR - file: Loc_ai\LAi_fightparams.c; line: 582
Invalid Expression
COMPILE ERROR - file: Loc_ai\LAi_fightparams.c; line: 582
Invalid Expression
COMPILE ERROR - file: Loc_ai\LAi_fightparams.c; line: 582
Invalid Expression
COMPILE ERROR - file: Loc_ai\LAi_fightparams.c; line: 582
Invalid Expression
COMPILE ERROR - file: Loc_ai\LAi_fightparams.c; line: 582
Invalid Expression
COMPILE ERROR - file: Loc_ai\LAi_fightparams.c; line: 582
missed ')'
<!--c2--></div><!--ec2-->
But I have checked that file manualy a few times and cant find anything wrong, let alone a missing bracket. I have also replaced it with a file from a fresh download of update 3 twice already. Please advise (Before I hit the rum!)
 
COMPILE ERROR - file: Loc_ai\LAi_fightparams.c; line: 582
Invalid Expression

Post lines about 560 to 590 from LAi_fightparams.c so we can look at what the problem might be.

Hook
 
That line is missing a "(" or has one too many ")". <!--c1--><div class='codetop'>CODE</div><div class='codemain'><!--ec1-->
if(BLOCKDAMAGE) { LAi_ApplyCharacterDamage(enemy,2)); LAi_CheckKillCharacter(enemy); } // ccc Jan07<!--c2--></div><!--ec2-->
Not being a coder I'm not sure which.
 
<!--c1--><div class='codetop'>CODE</div><div class='codemain'><!--ec1-->
if(BLOCKDAMAGE) { LAi_ApplyCharacterDamage(enemy,2); LAi_CheckKillCharacter(enemy); } // ccc Jan07<!--c2--></div><!--ec2-->

Thanks Petros. Note change above. (enemy,2)); became (enemy,2);

Hook
 
Yes, it´s true, this update 3 doesn´t work (at least for me). <img src="style_emoticons/<#EMO_DIR#>/mybad.gif" style="vertical-align:middle" emoid=":facepalm" border="0" alt="mybad.gif" />
 
<!--quoteo(post=182517:date=Feb 9 2007, 10:49 AM:name=Rad)--><div class='quotetop'>QUOTE(Rad @ Feb 9 2007, 10:49 AM) [snapback]182517[/snapback]</div><div class='quotemain'><!--quotec-->
Yes, it´s true, this update 3 doesn´t work (at least for me). <img src="style_emoticons/<#EMO_DIR#>/mybad.gif" style="vertical-align:middle" emoid=":facepalm" border="0" alt="mybad.gif" />
<!--QuoteEnd--></div><!--QuoteEEnd-->
<img src="style_emoticons/<#EMO_DIR#>/hi.gif" style="vertical-align:middle" emoid=":gday" border="0" alt="hi.gif" /> Rad,
I have to agree, I got the dreaded Engine.exe Error.
My suggestion is: Don't use it!! Wait for somebody to fix it!!!
I've not tried the 14/6 update. My 14/5 runs very well, and don't
like to mess it up!? <img src="style_emoticons/<#EMO_DIR#>/whistling.gif" style="vertical-align:middle" emoid=":wp" border="0" alt="whistling.gif" />
 
now we have to find a victim to test build 14 alpha 6. <img src="style_emoticons/<#EMO_DIR#>/mybad.gif" style="vertical-align:middle" emoid=":facepalm" border="0" alt="mybad.gif" />
 
I have loaded 14 version 6 (8 Feb) and started playing.

I am not too far into the main quest yet - just going to <strike>rip off</strike> assist the escort ship (nod, nod, wink, wink - if you know what i mean)

Enjoying direct sailing and the original map sailing - tried both no problems.
No crashes to date - have saved and re-loaded the game as I progressed, no problem.

I did NOT load the two updates Pieter showed as being untested or unstable

Hope that helps
 
Nice try Hook but that didn't fix it. I tried spreading it out onto more than one line like this
<!--c1--><div class='codetop'>CODE</div><div class='codemain'><!--ec1-->if(BLOCKDAMAGE)
{
    LAi_ApplyCharacterDamage(enemy,2);
    LAi_CheckKillCharacter(enemy);
} // ccc Jan07<!--c2--></div><!--ec2-->

and I now complains about brackets on the if(BLOCKDAMAGE) bit
as a tempory fix for those that want to play rather than get to the bottom of this put a /* in front of if(BLOCKDAMAGE) and a */ after LAi_CheckKillCharacter(enemy); to comment it out. It'll work just so long as the return; bit is left in as that was there in the previous update. You dont think that this is some experemental code that Pieter didn't mean to incude
 
<!--quoteo(post=182568:date=Feb 9 2007, 04:58 AM:name=Short Jack Gold)--><div class='quotetop'>QUOTE(Short Jack Gold @ Feb 9 2007, 04:58 AM) [snapback]182568[/snapback]</div><div class='quotemain'><!--quotec-->
I have loaded 14 version 6 (8 Feb) and started playing.

I am not too far into the main quest yet - just going to <strike>rip off</strike> assist the escort ship (nod, nod, wink, wink - if you know what i mean)

Enjoying direct sailing and the original map sailing - tried both no problems.
No crashes to date - have saved and re-loaded the game as I progressed, no problem.

I did NOT load the two updates Pieter showed as being untested or unstable

Hope that helps
<!--QuoteEnd--></div><!--QuoteEEnd-->

ok! what i'm especially interested in: do all the quests work as they should? i'm not asking to do all of them, but i'd at least like to know if the main quest can be finished. one important thing is that you should NOT sink silehards ship, as it causes a game-killing bug in the main quest. capturing it and then scuttling it causes the bug as well.
 
<!--quoteo(post=182582:date=Feb 9 2007, 10:06 AM:name=morgan terror)--><div class='quotetop'>QUOTE(morgan terror @ Feb 9 2007, 10:06 AM) [snapback]182582[/snapback]</div><div class='quotemain'><!--quotec-->
<!--quoteo(post=182568:date=Feb 9 2007, 04:58 AM:name=Short Jack Gold)--><div class='quotetop'>QUOTE(Short Jack Gold @ Feb 9 2007, 04:58 AM) [snapback]182568[/snapback]</div><div class='quotemain'><!--quotec-->
I have loaded 14 version 6 (8 Feb) and started playing.

I did NOT load the two updates Pieter showed as being untested or unstable

Hope that helps
<!--QuoteEnd--></div><!--QuoteEEnd-->

ok! what i'm especially interested in: do all the quests work as they should? i'm not asking to do all of them, but i'd at least like to know if the main quest can be finished. one important thing is that you should NOT sink silehards ship, as it causes a game-killing bug in the main quest. capturing it and then scuttling it causes the bug as well.
<!--QuoteEnd--></div><!--QuoteEEnd-->

Hi Morgan,
To keep things in order I will start a new subject on 14 ver 6 progress.

In the meantime I would be grateful if you would enlighten me on "Silehards Ship"
I know I am probably being as thick as two short planks here, but could you tell me where it appears in the main quest (or branch thereof) as I cannot recall it at the moment.
I have played the main quest through in all previous versions but just don't remember that bit. <img src="style_emoticons/<#EMO_DIR#>/modding.gif" style="vertical-align:middle" emoid=":modding" border="0" alt="modding.gif" />
Thanks in advance. <img src="style_emoticons/<#EMO_DIR#>/par-ty.gif" style="vertical-align:middle" emoid=":cheers" border="0" alt="par-ty.gif" />
 
it's the one at khael roa. big, bad, black thing. (or at least it's like that now)
 
Here is a larger chunk of code.
from Update 2 <!--c1--><div class='codetop'>CODE</div><div class='codemain'><!--ec1-->
    isBlocked = isBlocked && CheckAttribute(enemy,"equip.blade") && GetCharacterEquipByGroup(enemy,BLADE_ITEM_TYPE) != "bladeX4";
    // PB: Disable blocking for enemies with either no sword or their fists equiped
    if(isBlocked)
    {
        //Âåðîÿòíîñòü ïðîáèâêè
        float p = LAi_BladeFindPiercingProbability(attack, enemy, hitDmg);
        p = p + pBreak;
        //Åñëè øàíñîâ ïðîáèòü íåò, òî íåíàíîñèì ïðîâðåæäåíèÿ
        if(p < 0.0) return;
        //Åñëè øàíñîâ ïðîáèòü íåò, òî íåíàíîñèì ïðîâðåæäåíèÿ
        if(rand(10000) > p*10000) return;
    }
    //Âû÷èñëÿåì ïîâðåæäåíèå
    float dmg = LAi_BladeCalcDamage(attack);
    dmg = dmg*kDmg;
    //Àòòàêà ñâîåé ãðóïïû
    bool noExp = false;<!--c2--></div><!--ec2-->
from defective update 3<!--c1--><div class='codetop'>CODE</div><div class='codemain'><!--ec1-->
    isBlocked = isBlocked && CheckAttribute(enemy,"equip.blade") && GetCharacterEquipByGroup(enemy,BLADE_ITEM_TYPE) != "bladeX4";
    // PB: Disable blocking for enemies with either no sword or their fists equiped
    if(isBlocked)
    {
        //Âåðîÿòíîñòü ïðîáèâêè
        float p = LAi_BladeFindPiercingProbability(attack, enemy, hitDmg);
        p = p + pBreak;
        //Åñëè øàíñîâ ïðîáèòü íåò, òî íåíàíîñèì ïðîâðåæäåíèÿ
        if(p < 0.0) return;
        //Åñëè øàíñîâ ïðîáèòü íåò, òî íåíàíîñèì ïðîâðåæäåíèÿ
        if(rand(10000) > p*10000)
        {
            if(BLOCKDAMAGE) { LAi_ApplyCharacterDamage(enemy,2)); LAi_CheckKillCharacter(enemy); } // ccc Jan07
            return;
        }
    }
    //Âû÷èñëÿåì ïîâðåæäåíèå
    float dmg = LAi_BladeCalcDamage(attack);
    dmg = dmg*kDmg;
    //Àòòàêà ñâîåé ãðóïïû
    bool noExp = false;<!--c2--></div><!--ec2-->
 
<!--quoteo(post=182527:date=Feb 8 2007, 11:22 PM:name=Nosie)--><div class='quotetop'>QUOTE(Nosie @ Feb 8 2007, 11:22 PM) [snapback]182527[/snapback]</div><div class='quotemain'><!--quotec--> <img src="style_emoticons/<#EMO_DIR#>/hi.gif" style="vertical-align:middle" emoid=":gday" border="0" alt="hi.gif" /> Rad,
I have to agree, I got the dreaded Engine.exe Error.
<!--QuoteEnd--></div><!--QuoteEEnd-->Ya me too.
glad I had a copy of update 2 in reserve.
 
<!--quoteo(post=182601:date=Feb 9 2007, 11:04 AM:name=morgan terror)--><div class='quotetop'>QUOTE(morgan terror @ Feb 9 2007, 11:04 AM) [snapback]182601[/snapback]</div><div class='quotemain'><!--quotec-->
it's the one at khael roa. big, bad, black thing. (or at least it's like that now)
<!--QuoteEnd--></div><!--QuoteEEnd-->

Cheers ! - I'll keep an eye out for it - got a way to go yet - chasing Rehims down right now and haven't got to the second meeting with Danielle!

Anyway - thanks again
<img src="style_emoticons/<#EMO_DIR#>/par-ty.gif" style="vertical-align:middle" emoid=":cheers" border="0" alt="par-ty.gif" />
 
Make sure there's a line (probably in buildsettings.h) that says:

#define BLOCKDAMAGE 0 // or whatever

And make sure BLOCKDAMAGE spelled the same both places.

Except for the doubled )), the rest of the code looks ok.

Hook
 
<!--quoteo(post=182571:date=Feb 9 2007, 02:42 PM:name=fudge dragon)--><div class='quotetop'>QUOTE(fudge dragon @ Feb 9 2007, 02:42 PM) [snapback]182571[/snapback]</div><div class='quotemain'><!--quotec-->
You dont think that this is some experemental code that Pieter didn't mean to incude
<!--QuoteEnd--></div><!--QuoteEEnd-->
Actually, it is just that. I had tried to add some new mods into Build 13 Update 3, then found I had too little time to finish that properly, so I removed it again. Apparently I didn't remove it properly. The reason for the crash is that the BLOCKDAMAGE BuildSettings.h #define simply doesn't exist, which causes the error. The solution is simple: Put the Build 13 LAi_fightparams.c back in after installing Update 3. I attached the file to this post as well. I hope that will get Update 3 running and sorry for the trouble. That's what I get when I have too little time. <img src="style_emoticons/<#EMO_DIR#>/modding.gif" style="vertical-align:middle" emoid=":modding" border="0" alt="modding.gif" />
 
<!--c1--><div class='codetop'>CODE</div><div class='codemain'><!--ec1-->
        if(rand(10000) > p*10000)
        {
            if(BLOCKDAMAGE) { LAi_ApplyCharacterDamage(enemy,2)); LAi_CheckKillCharacter(enemy); } // ccc Jan07
            return;
        }<!--c2--></div><!--ec2-->

We can streamline and tweak that section a little:

<!--c1--><div class='codetop'>CODE</div><div class='codemain'><!--ec1-->
        if(rand(10000) > p*10000)
        {
             LAi_ApplyCharacterDamage(enemy, BLOCKDAMAGE);
             LAi_CheckKillCharacter(enemy);
             return;
        }<!--c2--></div><!--ec2-->

That would spare the program the if(BLOCKDAMAGE) check, and give the player the possibility to tweak the AMOUNT of the block damage to his liking:
#define BLOCKDAMAGE 0 would disable blockdamage, #define BLOCKDAMAGE 1 would do a tiny little bit of damage, 2 or 3 would make fighting interesting again for those who have reached a higher level <img src="style_emoticons/<#EMO_DIR#>/duel_pa.gif" style="vertical-align:middle" emoid=":ixi" border="0" alt="duel_pa.gif" />

That code is in the attached fix for Build13 Update3. Unzip it into your PotC directory. The tweak
#define BLOCKDAMAGE 1
is at the beginning of program\Loc_Ai\Lai_fightparams.c

BTW, was that the only Problem with B13 Update3, or are there others that need fixing?
 
shouldn't that be put into build 14 as well? or can this file be put into build 14 alpha 6 too?
 
Back
Top