Jump to content

[FIX] Divine Hymn, Hymn of Hope


Guest Most_Mangos

Recommended Posts

What bug does the patch fix? What features does the patch add?

Divine Hymn, Hymn of Hope Not heal and mana did not restore to itself

For which repository revision was the patch created?

[9851]

Is there a thread in the bug report section or at lighthouse? If yes, please add a link to the thread.

I didn't find thread with this problem.

Who has been writing this patch? Please include either forum user names or email addresses.

Me (Most_Mangos)

diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp
index 94212ec..d40cb8d 100644
--- a/src/game/Spell.cpp
+++ b/src/game/Spell.cpp
@@ -1969,11 +1969,11 @@ void Spell::SetTargetMap(SpellEffectIndex effIndex, uint32 targetMode, UnitList&
                    break;
                case 64844:                                     // Divine Hymn
                    // target amount stored in parent spell dummy effect but hard to access
-                    FillRaidOrPartyHealthPriorityTargets(targetUnitMap, m_caster, m_caster, radius, 3, true, false, false);
+                    FillRaidOrPartyHealthPriorityTargets(targetUnitMap, m_caster, m_caster, radius, 3, true, false, true);
                    break;
                case 64904:                                     // Hymn of Hope
                    // target amount stored in parent spell dummy effect but hard to access
-                    FillRaidOrPartyManaPriorityTargets(targetUnitMap, m_caster, m_caster, radius, 3, true, false, false);
+                    FillRaidOrPartyManaPriorityTargets(targetUnitMap, m_caster, m_caster, radius, 3, true, false, true);
                    break;
                    // Electrical Storm (periodic lightning arcs effect)
                case 43657:

Link to comment
Share on other sites

  • 1 month later...

The patch does work - but it does not work as intended.

MaNGOS Revision: 10091

UDB Revision: 391

1. Divine Hymn

How it SHOULD work: Heals 3 targets with the lowest health in the party/raid every 2 sec for 8 sec, including the priest if he/she is one of the members with the lowest health. Also provides a buff of +10% healing received to all targets affected for 8 sec. (each tick of the channel refreshes the buff timer). It also switches targets to the lowest health party/raid members after each tick.

How it DOES work: If cast with 3 members in the party/raid including the priest, all three members are healed regardless of the party/raids' health. However when cast with 4+ members in the party/raid (including the the priest), 3 random members (at any health level) other than the priest will be healed, the priest is never healed, even if the priest has the lowest amount of health. Provides the buff +10% healing for all targets affected for 8 sec. After the 3 random members have been healed with the spell once, they will continue to be targeted for every new cast of the spell. Targets do not switch (includes not switching per tick obviously). The only way to reset the targets is to remove/add people from the party/raid. Once new members join/leave, on spell cast targets will be reset and the spell will continue to be cast on those targets until another change in the group is made.

2. Hymn of Hope

How it SHOULD work: Restores 3% mana to 3 low mana party/raid members (I assume it targets the 3 lowest) every 2 sec for 8 sec. Also provides a buff of +20% mana to all targets affected for 8 secs. (each tick of the channel refreshes the buff timer). I do not know if it targets a new member with the lowest mana per tick.

How it DOES work: If cast with 3 members in the party/raid including the priest, all three members' mana is restored regardless of the party/raids' mana. However when cast with 4+ members in the party/raid (including the the priest), 3 random members (at any mana level) other than the priest will be have their mana restored, the priest's mana is never restored, even if the priest has the lowest amount of mana. Provides the buff +20% mana for all targets affected for 8 sec. After the 3 random members have had their mana restored with the spell once, they will continue to be targeted for every new cast of the spell. Targets do not switch (includes not switching per tick obviously - if applies). The only way to reset the targets is to remove/add people from the party/raid. Once new members join/leave, on spell cast targets will be reset and the spell will continue to be cast on those targets until another change in the group is made.

Without this patch the priest is never healed at all/has mana restored at all. (Only difference)

I don't really know how to get the result we need as I have just started programming at University this year (we are doing C++), but I plan on learning more from MaNGOS and the community!

Please correct me where I am wrong anywhere in this post, it is a very confusing concept!

Link to comment
Share on other sites

  • 1 month later...
Patch Confirmed. Does work.

Just for the sake of clarity, are you referring to the patch offered by Most_Mangos or the patch authored by zergtmn, linked in RxCompiLe's post?

If you did mean zergtmn's patch, am I correct in understanding that his code makes the original patch of Most_Mangos not needed?

Link to comment
Share on other sites

Just for the sake of clarity, are you referring to the patch offered by Most_Mangos or the patch authored by zergtmn, linked in RxCompiLe's post?

If you did mean zergtmn's patch, am I correct in understanding that his code makes the original patch of Most_Mangos not needed?

The original patch makes the spells also cast on the caster (if he is one of the 3 lowest).

But with the first patch, once the group is formed adn the hymn is used for the first time, the 3 players healed (or received mana) will be the same 3 receiving hp/mana untill the group is remade.

The second patch fixes that, and after each tick on mana/hp, it researches for the lowest 3 in the group.

Edit: So both patches are needed.

Link to comment
Share on other sites

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