blackfrost-server / BlackFrost-Server

Bug-Tracker del servidor BlackFrost / Bug-Tracker of BlackFrost server.
0 stars 2 forks source link

(Bug) Naxxramas - Patchwerk - Hateful strike #1

Open declart opened 4 years ago

declart commented 4 years ago

https://wow.gamepedia.com/Patchwerk

Hatefull Strike in 10 men mode, should hit only the main tank and the off tank, but i dont know the reason of this, he still hit tanks even a random melee out of his range. This seem work like the 25 men mode, but we hadn't a try to verify if in the 25 mode he hit a casual melee dps. Of course the encounter is still doable, but with a party with full casters. However the melees were behinde the boss out of the Hateful strike range. I didn't find the spell id, and i didn't find a reference more reliable.

Ps: i didn't find the commit of the AC server

Si1ker commented 4 years ago

@declart Thanks for your report, however you are not using the issue_template.md as it is required so we are closing this issue.

Also, you can check the script for Patchwerk which can confirm this boss will only hit 2 tanks in 10 mode and 3 in 25 mode:

case EVENT_SPELL_HATEFUL_STRIKE:
                {
                    //Cast Hateful strike on the player with the highest
                    //amount of HP within melee distance, and second threat amount
                    std::list<Unit*> meleeRangeTargets;
                    Unit* finalTarget = nullptr;
                    uint8 counter = 0;

                    ThreatContainer::StorageType::const_iterator i = me->getThreatManager().getThreatList().begin();
                    for (; i != me->getThreatManager().getThreatList().end(); ++i, ++counter)
                    {
                        // Gather all units with melee range
                        Unit *target = (*i)->getTarget();
                        if (me->IsWithinMeleeRange(target))
                            meleeRangeTargets.push_back(target);

                        // and add threat to most hated
                        if (counter < RAID_MODE(2,3))    **< = = = = H E R E**
                            me->AddThreat(target, 500.0f);
                    }

                    counter = 0;
                    for (std::list<Unit*>::const_iterator i = meleeRangeTargets.begin(); i != meleeRangeTargets.end(); ++i, ++counter)
                    {
                        // if there is only one target available
                        if (meleeRangeTargets.size() == 1)
                            finalTarget = (*i);
                        else if (counter > 0) // skip first target
                        {
                            if (!finalTarget || (*i)->GetHealth() > finalTarget->GetHealth())
                                finalTarget = (*i);

                            // third loop
                            if (counter >= 2)
                                break;
                        }
                    }

For further reference see: Patchwerk's script

Regards,

declart commented 4 years ago

i have to ask you apologize if i didnt respect the guide to report a bug, but yesterday we had 3 wipe becouse in 10 mode he still hit 3 players, even so we did it with 3 tank. Try it to watch that he is bugged. thank you for the times you spent on my report

declart commented 4 years ago

By the way i found the errors on the code.

https://github.com/TrinityCore/TrinityCore/blob/3.3.5/src/server/scripts/Northrend/Naxxramas/boss_patchwerk.cpp

here there is the way he should work.

i have a video from tank spot, a reliable reference, from an official guid back in the past of the offy, that explain how it should work. https://www.youtube.com/watch?v=5FCj6PQmQSc

the error in the code is here:

// and add threat to most hated if (counter < RAID_MODE(2,3)) < = = = = H E R E me->AddThreat(target, 500.0f);

it should be:

// and add threat to most hated if (counter < RAID_MODE(1,2)) < = = = = H E R E me->AddThreat(target, 500.0f);

declart commented 4 years ago

After days of searching i finally found the most reliable reference we can have. https://www.wowhead.com/spell=41926/hateful-strike#comments

5 By wOwCrUsHeR (5,389 – 1·9·40) on 2009/04/27 (Patch 3.1.0)Since one of the recent patches, it only affects the top threat targets.10-man: 2nd on aggro list will get them.25-man: 2nd on aggro list will get most of them, 3rd on aggro list will get some of them. By wOwCrUsHeR (5,389 – 1·9·40) on 2009/04/27 (Patch 3.1.0)    
By wOwCrUsHeR (5,389 – 1·9·40) on 2009/04/27 (Patch 3.1.0)    
Si1ker commented 4 years ago

@declart Thanks for the valuable source, re-opening issue. 👍