Jump to content

[Bug] Rapture => server crash


Guest menke
 Share

Recommended Posts

Mangos Version: 8441

Custom Patches: Death Pact & Reflective Shield disabled, Some config options who affect >SEC_PLAYER were changed to affect >SEC_MODERATOR only, disabled InCombat porting with .tele

SD2 Version: 1379

Database Name and Version: UDB 0.11.5 (382) for MaNGOS 8280 with SD2 SQL for rev. 1280 + all mangos & sd2 updates

If a priest has Rapture (ID 47535 + ranks) and attacks a mob, the server crashes. You don't need to use that spell

I think it's caused by http://github.com/mangos/mangos/commit/1474be75f1178367c7717f77b661c8bd9fd5f89a but i'm not sure..

When i delete (or unlearn) this spell in character_spell table, the player can attack mobs without crashing the server

I deleted every entry of Rapture in character_spell but i cant prevent players from learning it again (it's a talent) so I hope someone knows how to fix it.

Here's a complete crashlog: http://nopaste.ath.cx/id/9995

If you need more info just ask here

Link to comment
Share on other sites

Actually I have duplicated a crash related to Rapture recently and found the following:

If you have Serendipity (any rank) you will crash the realm if you click to learn Rapture (Rank 2).

Very strangely learning Rapture ranks 1 and 3 will NOT crash the server, however.

This can only happen to realms that have increased Talent rates as getting these 2 spells together requires at least 73 talent points.

Link to comment
Share on other sites

I confirm it, im using mangos REV 8467, using scriptdev2, and i made some custom changes in the core.

i was thinking i caused a mess changing stuff arround but even with a clean mangos installation i got the crash as soon as a priest click on the rank 2 talent from the talent tree.

Link to comment
Share on other sites

Interesting bug, but quite strange :( I'll try to figure out some more about that problem.

Edit:

Hmm, I can at least reproduce the crash desribed by goodbadguy. There is the following problem.

Rapture Rank 2 has - whyever- some familyflags, that contain (among other bits) the one of Flash heal (rank1 and 3 don't have, so I think they simpli forgot to remove it there during the update to the new effect of rapture in 3.1.3). That is why when casting rapture rank two (that means when learning this talent) Serendipity gets triggered.

The casting of the trigger spell will call ReapplyAffectedPassiveAuras() in Aura::HandleAddModifier(). The already applied aura of rapture rank two is identified as "affected" by the spellmod (because of the strange familyflags) and so gets reapplied. The new cast of rapture again triggers Serendipity that calls ReapplyAffectedPassiveAuras() - so a kind of recursive call without ending^^ Don't find out exactly why there is a crash. For me this should just be an infinite recursive loop or so.

My suggestion to get rid of this "DBC bug": Don't allow passive spells casts to trigger!

Link to comment
Share on other sites

  • 2 weeks later...
  • 3 months later...

This is still broken and crashes my server some times several times in a row upon a log in. Rapture doesn't ALWAYS crash the server as described above only in certain situations will it crash it. But when you have a lot of "testers" this can be more often than rare. Can someone please look into this issue, or is there a way to disable talents perhaps?

Im on rev 9106

Link to comment
Share on other sites

I wrote a crappy help fix to prevent a crash.

Apply the following changes to player.cpp

Search

   // spell not set in talent.dbc
   uint32 spellid = talentInfo->RankID[talentRank];
   if( spellid == 0 )
   {
       sLog.outError("Talent.dbc have for talent: %u Rank: %u spell id = 0", talentId, talentRank);
       return;
   }

Add these lines

   if( spellid == 47536 || talentId == 47536 )
   {
       //http://www.wowhead.com/?spell=47536 -  Rapture    Rank 2 
       learnSpell(47537, false);    //Learn Rank 3
       return;
   }

This will automatically learn Rapture Rank 3 instead of rank 2. This might be a bit unfair but it doesn't crash the server.

Link to comment
Share on other sites

 Share

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