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

Sparrow Search

Indeed, why not? <img src="style_emoticons/<#EMO_DIR#>/hi.gif" style="vertical-align:middle" emoid=":gday" border="0" alt="hi.gif" /> What is the question? About the looting of cursed monks?

1. "Do you mind if we change this?" Not at all, but PLEASE do make sure that it still works <img src="style_emoticons/<#EMO_DIR#>/icon_mrgreen1.gif" style="vertical-align:middle" emoid=":cheeky" border="0" alt="icon_mrgreen1.gif" />

2. "Would you change it?" Sorry, neither time nor inclination <img src="style_emoticons/<#EMO_DIR#>/no.gif" style="vertical-align:middle" emoid=":no" border="0" alt="no.gif" />

3. "Can you fix it?" I'll try but I can't promise that. Back when I wrote the haunted abbey my original corpselooting was still in effect, where you could open the looting interface with a simple click on the dialogbutton. Don't know why yet another button and the "Hamlet" report had to be introduced to perform an already working task <img src="style_emoticons/<#EMO_DIR#>/dunno.gif" style="vertical-align:middle" emoid=":shrug" border="0" alt="dunno.gif" />
But fingerpointing would be premature. If the monklooting doesn't work only in certain locations the cause might lie there.
 
As far as I understand, the only problem in Build 13 is that you can't get money from the monks through looting them and you can't get your own money back after they've stolen it either. I don't quite understand this, because this is done through the dialog, which seems to be correct. Also the whole dialog thing doesn't work in the part of the Abbey where you get through the Oxbay dungeon and I have been unable to find out why when I tried to fix it many months ago.

The Build 14 Alpha is another story. There it is pretty much messed up. The digging places now work as ordinary boxes and after looting a monk, you can't loot the next one until you press F9 (the new "clear screen" button) twice. Also some monks bring up the box looting interface instead of the dialog. Pirate_KK tried to fix it recently, but no luck yet. <img src="style_emoticons/<#EMO_DIR#>/unsure.gif" style="vertical-align:middle" emoid=":?" border="0" alt="unsure.gif" />
 
You press it and most of the on-screen interface things disappear. Strangely enough when the "Action" icon doesn't show, you can't perform the action using F3 either. However, the "clear screen" button isn't the CAUSE for the problem, but the WORKAROUND to continue anyway. Very strange indeed.
 
<!--quoteo(post=222008:date=Nov 18 2007, 06:13 AM:name=Pieter Boelen)--><div class='quotetop'>QUOTE(Pieter Boelen @ Nov 18 2007, 06:13 AM) [snapback]222008[/snapback]</div><div class='quotemain'><!--quotec-->But the whole monk looting isn't supposed to be done through the corpsemode at all. It's supposed to happen through the dialog. That is why the corpsemode was disabled for the cursed monks. That is how CouchcaptainCharles had originally intended it.<!--QuoteEnd--></div><!--QuoteEEnd-->
But that is not how it is working now, is it!
I'll just put the section of "LAi_events.c" I made changes to here. One thing I don't understand is why there are references to Corpsemode 3 when there no longer is a Corpsemode 3.


<!--c1--><div class='codetop'>CODE</div><div class='codemain'><!--ec1-->        //SCREWFACE : if a permanent crewmember is killed, his corpse disapear immediatly (don't remove that unless that will cause a bug)
        //if(CORPSEMODE == 3 && !LAi_DoCORPEMODE(chr)) // NK persist original corpse 05-07-19 //GO Add Test for Quest that doesn't work with CORPSEMODE=3      // Petros out comment Screwfaces disappearing crewmembers
        if(CORPSEMODE == 3 && !CheckAttribute(chr, "corpse")) // NK persist original corpse 05-07-19                                // Petros re-insert Kell's original code

        {
            LAi_GenerateFantomFromMe(chr);
            SetCharacterTask_Stay(chr);
            //PopCharacterTask(GetCharacter(sti(chr.index)));
            LAi_Stunned_MakeCorpse(chr);
            LAi_SetImmortal(chr, true);
        }
        else
        {
            LAi_CharacterLogoff(chr);
            PostEvent("LAi_event_Character_Dead", floatret(CORPSEMODE != 0, 500, 10000), "i", chr); // ccc jul05 corpse, time chg from 10000. NK change to 500. Make part of corpsemode != 3. //Petros re-insert Kell's original code
            //if(CORPSEMODE == 0)     PostEvent("LAi_event_Character_Dead", 10000, "i", chr); // PB: Original code if CORPSEMODE off
            //else            PostEvent("LAi_event_Character_Dead", 500, "i", chr); // ccc jul05 corpse, time chg from 10000. NK change to 500. Make part of corpsemode != 3.
        }
        // NK do this in DeadEvent below: 05-07-13 - LAi_GenerateFantomFromMe(chr);
        LAi_group_CheckGroupQuest(chr);
    }else{
        LAi_CharacterLogoff(chr);
        if(!LAi_IsBoardingProcess())
        {
            PostEvent("LAi_event_GameOver", 5000, "s", "land");
        }else{
            PostEvent("LAi_event_GameOver", 5000, "s", "boarding");
        }
    }
    LanguageCloseFile(tmpNameFileID);
}

#event_handler("LAi_event_Character_Dead", "LAi_Character_Dead_Event");
void LAi_Character_Dead_Event() // should never be run when CORPSEMODE == 3. NK 05-07-19
{
    int tmpNameFileID = LanguageOpenFile("characters_names.txt");
    int tmpLangFileID = LanguageOpenFile("interface_strings.txt");
    aref chr = GetEventData();
// changed by MAXIMUS 12.10.2006 -->
    bool bLoc = false;
    ref lcn;
    if(CheckAttribute(chr,"location") ) bLoc = true;
    if(bLoc) lcn = &Locations[FindLocation(chr.location)];    // determines where you are
// changed by MAXIMUS 12.10.2006 <--

    // TIH --> changed behavior Sep2'06
    bool DissolveBody = true;
    if(CORPSEMODE == 1) DissolveBody = false;
    if(bAbordageStarted && AUTOLOOT_BOARDINGS) DissolveBody = false;
// changed by MAXIMUS 12.10.2006 -->
    if(bLoc)
    {
        if(CheckAttribute(lcn, "id.label") && lcn.id.label == LanguageConvertString(tmpLangFileID,"Abbey of the Maltese order")) DissolveBody = true; // TIH for maltese knight abbey
    }
// changed by MAXIMUS 12.10.2006 <--
    
    if (DissolveBody)
    {
        // this removes the current body
        // we don't do this when we are leaving dead bodies around, like for AUTOLOOT_BOARDINGS, or CORPSEMODE 1
        // if CORPSEMODE is 2, a new body is created below as a lootable corpse, so it appears to 'stay'
        CharacterExitFromLocation(chr);
    }
    else
    {
        // we wont be clearing the old body nor making a new body, so we need to keep this one around
        // however we set it as a neutral entity so that the warning indicator will go out when all enemies are dead
        LAi_group_MoveCharacter(chr, LAI_GROUP_CORPSES);
        LAI_group_SetRelationWithAllStock(LAI_GROUP_CORPSES, LAI_GROUP_NEITRAL);
        LAi_CharacterLogoff(chr);
    }
    // TIH <--

    // original chr body disappears, put 'if(chr.name != "The late")' in front to keep corpses lying around after looting
    // ccc jul05 corpse for looting

    if (!CheckAttribute(chr, "name"))        // LDH added to prevent errors on dead captains
    {
        Trace("Warning: Invalid character in LAi_CharacterDeadEvent(), ignored");
        LanguageCloseFile(tmpLangFileID);
        LanguageCloseFile(tmpNameFileID);
        return;
    }
    if(chr.name != XI_ConvertString("The late") && CORPSEMODE != 3) // do not generate a corpse from a corpse  
    {
        bool GenerateCorpse = true;
        if(chr.sex == "monkey") GenerateCorpse = false; // No corpses for monkeys
        if(chr.name==LanguageConvertString(tmpNameFileID,"Crewmember")) GenerateCorpse = true; // No corpses for permanent crewmembers (Screwface)    // Petros change to true to loot crewmembers
        if(CheckAttribute(chr,"chr_ai.type") && chr.chr_ai.type == "Building") GenerateCorpse = false; // No corpses for buildings (ccc building kit Jan06)
        if(bAbordageStarted && AUTOLOOT_BOARDINGS) GenerateCorpse = false; // PB: No corpses during boardings - Instead automatic looting (at LDH's request)
        if(CORPSEMODE != 2) GenerateCorpse = false; // TIH only corpsemode 2 makes a lootable corpse Sep2'06
        // LDH 27Sep06 added CheckAttribute
// changed by MAXIMUS 12.10.2006 -->
        if(bLoc)
        {
            if(CheckAttribute(lcn, "id.label") && lcn.id.label == LanguageConvertString(tmpLangFileID,"Abbey of the Maltese order")) GenerateCorpse = true; // TIH for maltese knight abbey
        }
// changed by MAXIMUS 12.10.2006 <--<!--c2--></div><!--ec2-->
 
<!--quoteo(post=222126:date=Nov 18 2007, 02:41 PM:name=Pieter Boelen)--><div class='quotetop'>QUOTE(Pieter Boelen @ Nov 18 2007, 02:41 PM) [snapback]222126[/snapback]</div><div class='quotemain'><!--quotec-->...Also the whole dialog thing doesn't work in the part of the Abbey where you get through the Oxbay dungeon and I have been unable to find out why when I tried to fix it many months ago.
...<!--QuoteEnd--></div><!--QuoteEEnd-->

So this is a known issue from many months back?

And then we say that Build 13 wasn't abandoned?

This whole thing makes me want to go back to Post B12 (Build 13 Base) when most things worked to my liking, and just kiss the community good bye.
 
<!--quoteo(post=222184:date=Nov 19 2007, 02:15 AM:name=Petros)--><div class='quotetop'>QUOTE(Petros @ Nov 19 2007, 02:15 AM) [snapback]222184[/snapback]</div><div class='quotemain'><!--quotec-->But that is not how it is working now, is it!<!--QuoteEnd--></div><!--QuoteEEnd-->Then how IS it working now? Last time I tried the Maltese Knight Abbey in Build 13, the looting through dialog worked just fine.

<!--quoteo(post=222185:date=Nov 19 2007, 02:34 AM:name=Petros)--><div class='quotetop'>QUOTE(Petros @ Nov 19 2007, 02:34 AM) [snapback]222185[/snapback]</div><div class='quotemain'><!--quotec-->So this is a known issue from many months back?
And then we say that Build 13 wasn't abandoned?<!--QuoteEnd--></div><!--QuoteEEnd-->Hey! I TRIED to fix it, but couldn't figure it out. And I recall at least one other person, I think it was Maximus, also tried to fix it. To fix a bug, especially an elusive one, you don't just need knowledge of the code, you need to have a lot of LUCK to actually find the cause. Sometimes you just don't HAVE that luck. I made an update for Build 13 before I left to sea including all fixes available at that time. Now we have started work on another major Build 13 bugfinding effort that will hopefully result in another update to make Build 13 better. What more would you have us do?
 
<!--quoteo(post=221807:date=Nov 17 2007, 03:51 AM:name=Petros)--><div class='quotetop'>QUOTE(Petros @ Nov 17 2007, 03:51 AM) [snapback]221807[/snapback]</div><div class='quotemain'><!--quotec-->2. The monks under Greenford seem to work, at least the dialogue.
Looting the second corpse get you a sword and cross, but no money.
Worse yet, when you get to the one that steals your money, even if you catch him and kill him, you don't get the money back. It's all gone.<!--QuoteEnd--></div><!--QuoteEEnd-->I have just installed Build 13 Final and tested this. It all seems to work perfectly on the default corpsemode and looting settings. When I kill a monk, he turns into a skeleton. When I kill the skeleton, he dies. When I press [T], the looting dialogue starts. I do get money from looting them. When a skeleton steals my money, I can kill him and get my money back through looting him. In short: I cannot replicate the problem.
 
I know there is a problem in the Crypt location you enter through the Oxbay dungeon, but Petros reported a problem with getting money from the corpses in the Abbey itself and the Crypt right below it. I tested that and could not replicate that problem.
 
then i say again. what if it's one of those wierd installment flukes that i've been having i don't know how many times?
 
I don't know about those. I do know that the Build 13 Final installation file seems to act somewhat oddly: Apparently it tends to NOT overwrite the files in the main PotC directory. I don't understand why. So I installed Build 13 Final to a seperate folder, then copied all the files on top of the stock game. That might be worth a try. <img src="style_emoticons/<#EMO_DIR#>/dunno.gif" style="vertical-align:middle" emoid=":shrug" border="0" alt="dunno.gif" />
 
well, i'm not going through the process of installing the entire game AGAIN. still, it would be good to remember for next time.
 
Did you install using the Build 13 Final installer? When starting the game, do you see the stock game "wave" loading screen or the Build 13 "film poster" screen? If everything installed correctly, you should not have the "wave" loading screen in Build 13, but I think that the Build 13 Final installer you do get that. <img src="style_emoticons/<#EMO_DIR#>/wacko.gif" style="vertical-align:middle" emoid=":wacko:" border="0" alt="wacko.gif" />
 
you know i didn't. you also know that the film poster screen is in russian with my game. the wave's been replaced by the poster though, like it should. although i'd better check again.
 
Oh crap! Of course you didn't. You installed using the Pre Build 13 Base version, so the Build 13 Final installer weirdness wouldn't apply to you. I forgot. <img src="style_emoticons/<#EMO_DIR#>/mybad.gif" style="vertical-align:middle" emoid=":facepalm" border="0" alt="mybad.gif" />
 
not very surprising with all the members, so i won't bring up the 'you need a holiday' stuff. <img src="style_emoticons/<#EMO_DIR#>/icon_wink.gif" style="vertical-align:middle" emoid=";)" border="0" alt="icon_wink.gif" /> still, you do. <img src="style_emoticons/<#EMO_DIR#>/tongue.gif" style="vertical-align:middle" emoid=":blah:" border="0" alt="tongue.gif" />
 
Apparently I already didn't do enough before and am not doing enough right now, so if I were to take a break, I would be doing even less. <img src="style_emoticons/<#EMO_DIR#>/oops3.gif" style="vertical-align:middle" emoid=":eek:ops2" border="0" alt="oops3.gif" />
 
Back
Top