on live DoT / DirectDamage effects from procs and off archery spells (poison/acid shot) are not affected by Dex
BUT neither should archerys mana stat = Dex, that gives them WAAAAY too much mana than they get on live
SO
in Archery
- Code: Select all
public virtual double CalculateDamageBase()
+ {
+ double spellDamage = Spell.Damage;
+ GamePlayer player = Caster as GamePlayer;
+
+ // For pets the stats of the owner have to be taken into account.
+ if (Caster is GameNPC && ((Caster as GameNPC).Brain) is IControlledBrain)
+ {
+ player = (((Caster as GameNPC).Brain) as IControlledBrain).Owner as GamePlayer;
+ }
+ if (player != null)
+ {
+ if (Caster is GamePet)
+ {
+ spellDamage = CapPetSpellDamage(spellDamage, player);
+ }
+
+ if (this.SpellLine.KeyName == GlobalSpellsLines.Combat_Styles_Effect)
+ {
+ double WeaponSkill = player.GetWeaponSkill(player.AttackWeapon);
+ WeaponSkill /= 5;
+ spellDamage *= (WeaponSkill + 200) / 275.0;
+ }
+
+ if (player.CharacterClass.ManaStat != eStat.UNDEFINED
+ && this.SpellLine.KeyName != GlobalSpellsLines.Combat_Styles_Effect
+ && this.m_spellLine.KeyName != GlobalSpellsLines.Mundane_Poisons
+ && this.SpellLine.KeyName != GlobalSpellsLines.Item_Effects
+ && player.CharacterClass.ID != (int)eCharacterClass.Mauler_Alb
+ && player.CharacterClass.ID != (int)eCharacterClass.Mauler_Mid
+ && player.CharacterClass.ID != (int)eCharacterClass.Mauler_Hib
+ && player.CharacterClass.ID != (int)eCharacterClass.Vampiir)
+ {
+ int manaStatValue = player.GetModified((eProperty)player.Dexterity);//Archery purely affected by Dex (not mana stat)
+ spellDamage *= (manaStatValue + 200) / 275.0;
+ }
+ }
+ else if (Caster is GameNPC)
+ {
+ spellDamage = CapNPCSpellDamage(spellDamage, Caster as GameNPC);
+ }
+
+ if (spellDamage < 0)
+ spellDamage = 0;
+
+ return spellDamage;
+ }
- Code: Select all
//ranger
m_manaStat = eStat.INT;//Dex isn't livelike-Int is.
//scout-hunter
m_manaStat = eStat.PIE;//Dex isn't livelike-Pie is.
want more people supporting this, (as a double check no matter how sure i am)
