Attack and Spell Aggro
As mentioned in the Wiki, a possible bug is that resisted spells don't cause aggro. I also noticed that missed attacks don't cause aggro. If I remeber correctly it use to generate aggro in eqlive. Also I noticed AvoidDamage wasn't in the if clause so i belive it was ignoring block, dodges, and other avoids. Here are the changes I made:
In attack.cpp starting at line 789 added: Code:
//check to see if we hit and a Code:
//check to see if we hit.. Code:
if (bRiposte && damage == -3) { //cannot riposte a riposte Code:
if(!other->CheckHitChance(this, attack_skill, Hand, skillinuse)) { Code:
if(!other->CheckHitChance(this, attack_skill, Hand, skillinuse) || other->AvoidDamage(this, damage)) { Finally for spells all I did was move lines 2289 - 2313 I moved it up to start on line 2253 before the resistance check. Code:
if (spelltar->IsAIControlled() && spells[spell_id].goodEffect == 0 Code:
if(spelltar->IsAIControlled()) |
I'm pretty sure a missed attack doesnt cause aggro in EQ live.
I remember swinging my sword at a bat as a young ranger and not getting any aggro until I connected with a hit. |
I played a magician for five years, and knew the mechanics of such in depth.
Spells definitely did cause a large amount of aggro even if they resisted. Pets definitely did gain aggro for misses. As for players with melee, I couldn't tell you for sure. I do remember that scenario with the bats happening to me, though. Regardless, I could tell you there would be problems with aggro on raids if players did not get aggro for their misses. Can you imagine what trying to hold aggro on the Avatar of War would be like if all your misses didn't count for anything? Every nuker would die pretty fast. Although that bat scenario did happen to me, I do believe that it might have been a fluke, or the aggro mechanics might have changed since we were newbies. |
Aggro on Live:
Weapons: SwingAggro: On a 20/50 weapon with 15 damage bonus, every swing (hit OR miss) causes 35 points of aggro. 20 (weapon damage) + 15 (weapon damage bonus) On a 6/18 weapon with 15 damage bonus, every swing causes 21 points of aggro. Hitting, critting, and missing don't matter. The attempt to hit causes X aggro. Procs: For the most part, they work like spells. As an exception, procs of spells your class cannot cast cause less aggro if they are status effects. A status effect proc (snare, stun, slow, etc) causes about 400 points of aggro (above and beyond any DD component). Spells: Nukes: Crits and resists cause the same aggro as a hit. +% damage focus effects do not change the aggro generated by a nuke. A nuke that lists at 500 damage does 500 hate. DoTs: I don't know how DoT aggro works. Slows/Stuns/Snare/other status: These do aggro that grows with the HP and Level of the mob. I don't know the formula. Heals: Heals generate aggro on every NPC who has the target on their aggro list. Small heals generate 1/2 a point of aggro for every point healed. There is a cap how much aggro a heal can generate. HoTs: These generate no more hate than a Buff. Buffs: Casting a buff on someone gives you 1 hate on every NPC who hates the person you buffed. Kick/bash: I believe these work just like melee attacks. Bash does "weapon damage" based off shield AC, and caps out at 25 "weapon damage". Kick I understand less. HTH. |
Everything you said sounds right to me. The only thing I still have questions on is I believe aggro might also be modified on what class you are, do you have any insight or opinion on this? I will try to update the way aggro works to the way you mentioned sometime this or next week, and I guess post the changes.
|
Bards are crazy. (their spells act wierd)
Casting status-modifying spells that are not "on your list" generates less aggro than casting status-modifying spells that are "on your list". (On L ~70 mobs, a status not on your list effect generates ~400 hate). This mainly is about procs, as mentioned above. Other than that, I'm not aware of any parsed difference between aggro generation of different classes. There may be something wierd with "initial aggro" and some effects. Note there are two columns in the spells_en.txt that change the hate a spell produces. One overrides the amount of hate produced by the spell (and sets it to a fixed value), the other adds to the hate produced by the spell (and is only really used by one effect: static blow). In some cases, the "slot" the effect is in seems to change how much aggro it produces. A rune effect in slot 1 generates lots of hate -- a rune effect in slot 2 or later generates "I just cast a buff" hate. Similar wierdness seems to occur with some druid AC/ATK/resist debuffs. Some generate "status effect" level hate, others generate "dispell" level hate. |
All times are GMT -4. The time now is 04:22 PM. |
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.