Quick public service announcement:
No one but Lazarus has ever encountered this bug and I cannot reproduce it. Either this is something strange that <1% of people encounter or there's an issue with one of Lazarus's settings specifically. In short, it's safe to play this mod, it won't crash on you.
Now, back to trying to figure out what's going on...
Lazarus Magni wrote...
I am sorry, it wasn't on the first map, it was on the second, and it happened when the merchant's store tried to come up.
Also, not sure if this was intended or not, but not all items were removed either, my vualt character still had it's helm and robe. I was playing with a druid/shifter/monk btw (but not polymorphed.)
All right. Unfortunately, this doesn't seem to help me figure out what happened either -- I just downloaded the exact module stored on the vault and started six different characters with it. All of them were able to open both of the merchant's stores. All of them had their items stripped correctly. Even removed the stores in the toolset before running it as an experiment and it simply failed to open the store -- didn't crash.
That said, I also tried using a druid that was shifted -- this failed to strip any of his items. This is something I'll fix but in general I will warn you playing a shifter in this module is probably a recipe for trouble. I was trying to avoid making major class changes and I have not touched Shifters at all. If you're feeling masochistic go for it, but otherwise I'd strongly recommend you play something that doesn't involve shifting (I personally tested pure fighter, pure rogue, pure sorcerer, pure bard, fighter/rogue crossbow wielder, pure cleric, pure barbarian, and fighter/weapon master).
The code to open the store is:
object oStore = GetNearestObjectByTag("sh_me_light1");
if (GetObjectType(oStore) == OBJECT_TYPE_STORE)
{
OpenStore(oStore, GetPCSpeaker(),-1);
}
The code to strip items is:
object oItem = GetFirstItemInInventory(oPC);
while (GetIsObjectValid(oItem))
{
DestroyObject(oItem);
oItem = GetNextItemInInventory(oPC);
}
int x = 0;
while (x < NUM_INVENTORY_SLOTS)
{
if (x != 17)
{
DestroyObject(GetItemInSlot(x, oPC));
}
++x;
}
Nothing really fancy there so I'm very unsure how anything would cause a crash.
Lazarus Magni wrote...
P.S. I was running as singly player mod. Is it only supposed to be run using nwserver?
No, single player mod would probably be better, frankly, but it shouldn't matter either way. Can you email your character bic to balkothwarcraft at gmail dot com (using symbols as appropriate)? I want to see if it's something with your particular character that is causing a crash.
Modifié par MagicalMaster, 06 octobre 2013 - 07:45 .