Jump to content

[Spirit Guide] Spirit Heal


Auntie Mangos

Recommended Posts

there was some bug with the grid searcher in aoe spells, they didnt select targets when caster and target are on different grid (Chain-Lightning-%28target-chain-damage%29"]see this) it might be happening here

Ok but according to this, spirit guide should resurrect some players and not others if they are in "right" and "wrong" grid ?

But when spirit guide doesn't cast spell, nobody is resurrected , no matter of the distance or grid where they are.

So ? :D

Link to comment
Share on other sites

  • 40 years later...

sounds for me like the problem is mostly, that people can aggro the spiritguide.. this bug might be new, since the spiritguides aren't dead now anymore..

this is the only explanation i have for this... since those spritguides have this in their ai

void UpdateAI(const uint32 uiDiff)

{

// auto cast the whole time this spell

if (!m_creature->GetCurrentSpell(CURRENT_CHANNELED_SPELL))

m_creature->CastSpell(m_creature, SPELL_SPIRIT_HEAL_CHANNEL, false);

if the aggroing is 100% reproducible, it would be good to find out which functions are called, then we can add exceptions for the isInvisibleForAlive auras.. or maybe check in those aggro-cases if units can see each other...

ps: an idea how to hackfix this:

diff --git a/scripts/battlegrounds/battleground.cpp b/scripts/battlegrounds/battleground.cpp

index 0e8daef..1493b6b 100644

--- a/scripts/battlegrounds/battleground.cpp

+++ b/scripts/battlegrounds/battleground.cpp

@@ -53,8 +53,16 @@ struct MANGOS_DLL_DECL npc_spirit_guideAI : public ScriptedAI

{

}

+ void Aggro(Unit *who)

+ {

+ //Don't do anything

+ }

+

void UpdateAI(const uint32 uiDiff)

{

+ if (!m_creature->getThreatManager().isThreatListEmpty())

+ EnterEvadeMode();

+

// auto cast the whole time this spell

if (!m_creature->GetCurrentSpell(CURRENT_CHANNELED_SPELL))

m_creature->CastSpell(m_creature, SPELL_SPIRIT_HEAL_CHANNEL, false);

Link to comment
Share on other sites

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

wrong grid search :D :D :D

one of devs of our server, frca, figured out it happens because spell has 30s duration and ressurect is triggered at 30s too. Sometimes spell update is just not fast enough, thought.

So, I just set spirit healer to cast http://www.wowhead.com/?spell=22012 every 30s, and problem is gone :)

EDIT: check that at least one periodic tick was triggered would be much better, in fact change healer's script was just test, i did not believed that it will work.

Link to comment
Share on other sites

  • 2 weeks later...
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