PDA

View Full Version : Game Mechanics: pet agro issue


guineapig
11-23-2009, 09:51 PM
First of all I would like to thank you guys for fixing the rooted mob issue where pets ignore them.

I encountered something new today while in Oasis. I pulled a mob and pet was attacking it, got it down to about 10% and the mob started hobbling away. At that time a seond mob agroed the pet and the pet stopped figthing the mob that was trying to get away and turned its attention on the new mob.

Now what should happen is the pet finishes off it's current target before attacking something else but my pet just decided to switch targets and this is a behavior I have never seen before in an Enchanter Animation.

If it means anything my pet was the level 16 spell and the mobs were a Dervish Cutthroat and an orc warrior of some sort.

Haynar
11-23-2009, 11:11 PM
A mob fleeing, will return true on the fear check, and it will dump it from aggro checks (or move it to a minimum value of 0). If there is more than one mob on the aggro list, it will take the non-feared mob, no matter how low the HPs of the feared mob.

There is normally code to increase aggro for a mob low on HPs, but since it is fleeing, it will not get applied.

For this to work, we need to change the fear check part of the code to only work with feared clients.

So in hatelist.cpp, function "Mob *HateList::GetTop(Mob *center)"

Change this:

if(cur->ent->DivineAura() || cur->ent->IsMezzed() || cur->ent->IsFeared()){
if(hate == -1)
{
top = cur->ent;
hate = 0;
}
iterator.Advance();
continue;
}

To this:
if(cur->ent->DivineAura() || cur->ent->IsMezzed() || (cur->ent->IsFeared() && cur->ent->IsClient())){
if(hate == -1)
{
top = cur->ent;
hate = 0;
}
iterator.Advance();
continue;
}


This will stop it from ignoring the hate list for any mob feared or fleeing, since both return true on the IsFeared().

Then when it gets to the low HP check in the code, it will add 100% aggro on the low HP mob, the way it normally would.

Haynar

Jify
11-23-2009, 11:36 PM
Anyone notice that PC's don't get low HP agro either? I've successfully dumped agro onto my pet at 2% HP and crawled far enough to gate before. Shouldn't be able to, might be the same deal.

;)

Haynar
11-23-2009, 11:47 PM
It is a different issue for clients.

For clients, it will just add 100% to your current aggro on the hate list. If that is not enough to move you to the top, then it wont.

It would be possible, to make it go crazy for someone low on HPs.

The way i would do it, would be for client checks, if you are <20% hps, it moves you to the top of the list for aggro. Putting the lowest of all those <20% at the top.

It would be a pretty easy fix. If you just barely put the client to the top, with low HP aggro, then you have a chance at not dying if you get a heal. The way it currently is written is just doubles your hate.

If the admins say how they want it to work, I will put them some code together.

Haynar

guineapig
11-24-2009, 08:30 AM
What have I done?!?!

Aeolwind
11-24-2009, 11:56 AM
Yeah, pet honestly shouldn't be capable of saving you from LHPA. I'll do some testing and see if I need to crank that amp to 11 in the DB...to coin a phrase.

Takshaka
11-24-2009, 12:08 PM
What have I done?!?!

yeah seriously man... now I wont be able to have my pet save me as it has on a number of occasions when I am at like 4-5% hp.

Never played a mage in classic so I didnt know that this was not functioning correctly. Well, I thought it was a little too easy heh.

guineapig
11-24-2009, 12:15 PM
When you're getting chased non-stop for pulling a mob using a level 1 spell and I loose 40% health before pet can gain agro, it's not "too easy". Well, that's how it goes with chanters anyway. At least now I can root without pet loosing interest which is great!

EDIT: Granted this doesn't happen all the time, just when I'm low on mana to begin with.
I think the devs added a few Murphy's Law equasions into the codebase. :p

Insidious
11-24-2009, 03:28 PM
I love how you guys are asking to get nerfed. Sweet.

Aeolwind
11-24-2009, 03:47 PM
I love how you guys are asking to get nerfed. Sweet.

Yeah, this is a bit too easy. It's like fishing with dynamite. You feel that it is wrong, but you immediately light another stick.

guineapig
11-24-2009, 07:14 PM
Well I fully expect the Alliance line of spells to get fixed first! :(

Jify
11-24-2009, 09:02 PM
When you're getting chased non-stop for pulling a mob using a level 1 spell and I loose 40% health before pet can gain agro, it's not "too easy". Well, that's how it goes with chanters anyway. At least now I can root without pet loosing interest which is great!

EDIT: Granted this doesn't happen all the time, just when I'm low on mana to begin with.
I think the devs added a few Murphy's Law equasions into the codebase. :p

Happens for mages too. I've pulled agro using Burst of Flame at lvl 49. (by pulled I mean cast it while staying 15ft away, and mob turns and starts chasing me!)

Haynar
11-24-2009, 09:58 PM
Yeah, pet honestly shouldn't be capable of saving you from LHPA. I'll do some testing and see if I need to crank that amp to 11 in the DB...to coin a phrase.
It does look like turning up the volume would be a first shot at this.

Also, what I was seeing concerning aggro, if the person with aggro is low on HPs, the mob will still flee normally. I cannot remember exactly how live was concerning the amount of HP this started at, but if a player was below around 25% HPs, a mob that normally flees, would not flee if that low HP player is at the top of the aggro.

Haynar

guineapig
11-30-2009, 01:42 AM
So things have changed slightly but it's still not 100% the way it should be. On numerous occasions this weekend when I was dealing with two mobs I would:

A. Pull the add away from my animation and root it.
B. Pet would continue fighting the first mob that hit me.
C. Once that mob is down to 1-5% and starts trying to hobble away my animation completely forgets about it and goes after the second rooted mob.

This is particularly bad when I'm low on mana to begin with and the nuke I have up costs like 150m to cast. I have to open the spell book and look for like my lowest level nuke just to do like 15 points of damage to the mob that my pet decided wasn't important anymore. I'm sure you can see how in an enclosed area this can turn pretty ugly very quickly.