Jump to content

Recommended Posts

  • 40 years later...
Posted

It's since your last merge for you ? in wich rev you are before ?

For me with my crash log and my repo commit history, I think it's since [s0082] or maybe [s0048] (but i'm not sure of this one)

I can't see where :/

Posted

I was on s0036 before my merge. I kickly took a look but for now wasn't able to find anything that could be source of the problem, but I lack time lately to run a deep search through this.

Posted

Hmm I'm still investigating any problem related to the CleanupsBeforeDelete() function for a Creature type object (since THAT seems to be the problem) but no result so far, except that the Creature object doesn't seem to have it's own CleanupsBeforeDelete function but uses directly the Unit:: one (at least I suppose so), unlike WorldObject and Player objects (but I don't see how this is a problem : the code there didn't change lately AND Creature object is a Unit, so it's normal it uses the Unit::CleanupsBeforeDelete function)

I'm not sure I'm realy clear here :P Anyway, that crash happened to me once, but these last couple of days, no more crashes of that kind. I got a RemoveAura one, thought...

Posted

i've remark that when the server crash, i've got 4/5 chain crash and often i've the same value in "this" var

Map::Remove<Creature> (this=0x33d0000, obj=0x7fb2bad3e080, remove=true) at ../../../src/game/Map.cpp:796

Map::Remove<Creature> (this=0x33d0000, obj=0x7fa844312080, remove=true) at ../../../src/game/Map.cpp:796

Map::Remove<Creature> (this=0x33d0000, obj=0x7fecb4282080, remove=true) at ../../../src/game/Map.cpp:796

Posted

Kinda normal, the map is still loaded if you restart the server right after the crash so it still try to unload itself and the creature in it, so it do the same crash for everyone creature in it posing problem

Posted

I think I found the problem, and for this crash it's come from possess spell (Since s0074) in fact I think we have a problem when the core try to delete a creature in other map that the owner.

For the moment I've comment the condition for remove pet and only do the movefollow and seem to work

Further I think we can add pet->GetMap() == caster->GetMap() in the condition to remove

Posted
Kinda normal, the map is still loaded if you restart the server right after the crash

If the server restarts, everything is unloaded. It doesn't matter how long you wait, if it crashes, it's gone.

Posted

Patman128, I meant there is still chance some characters remains on the same position so the map is requested once again (the server load the map that had the problem once again) so if it has a problem, it's normal some crash come again (Dunno if I'm clear, my english is pretty lame)

Posted
Patman128, I meant there is still chance some characters remains on the same position so the map is requested once again (the server load the map that had the problem once again) so if it has a problem, it's normal some crash come again (Dunno if I'm clear, my english is pretty lame)

Yes this is what I thought you meant, but when you said "right away" it threw me off.

Posted

I confirm my idea it's this the problem

// out of range pet dismissed

if (!pet->IsWithinDistInMap(p_caster, pet->GetMap()->GetVisibilityDistance()))

{

pet->Remove(PET_SAVE_NOT_IN_SLOT, true);

}

else

{

pet->GetMotionMaster()->MoveFollow(caster, PET_FOLLOW_DIST, PET_FOLLOW_ANGLE);

pet->AddSplineFlag(SPLINEFLAG_WALKMODE);

}

I 've remove the Remove() function and now i'm at 3days uptime

I will try this but i'm waiting for a crash so this isn't apply a the moment

// out of range & same map, pet dismissed

if (!pet->IsWithinDistInMap(p_caster, pet->GetMap()->GetVisibilityDistance()) && (pet->GetMap() == caster->GetMap()))

{

pet->Remove(PET_SAVE_NOT_IN_SLOT, true);

}

else

{

pet->GetMotionMaster()->MoveFollow(caster, PET_FOLLOW_DIST, PET_FOLLOW_ANGLE);

pet->AddSplineFlag(SPLINEFLAG_WALKMODE);

}

Posted

Yes after many search and a nice report from one of my players, I got the bug that way :

In stratholme, a hunter using eye of the beast (controlling his pet) makes it enter a Ziggourat in the instance : crash. Then, everytime he tries to reconnect, the server crashes (that could explain why you got repeated crashes, one of your player should have this kind of issue and tried to reconnect regularely too).

After deleted his pet from the DB he could reconnect and the crashes stopped.

So it's definitely about the pet and around the code you pointed.

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use