diff --git a/changelog.txt b/changelog.txt index 7873e9c15..e155cf06e 100644 --- a/changelog.txt +++ b/changelog.txt @@ -3,8 +3,9 @@ EQEMu Changelog (Started on Sept 24, 2003 15:50) == 03/28/2017 == Akkadius: [Performance] Fixed a large overhead issue where every single NPC in a zone was checking to depop themselves as a swarm pet every 3ms regardless of being a swarm pet or not. Swarm pets now check to depop only when their timer is up -Akkadius: [Performance] Removed Clients constantly calculating light amount on equipment every 600ms, instead clients will update - light when changing equipment or entering a zone +Akkadius: [Performance] Removed a timer where clients would constantly calculate light amount on equipment every 600ms, instead + clients will update light when changing equipment or entering a zone +Akkadius: [Performance] Disabled enraged timer checks for NPC's that do not actually have enrage as a special attack == 03/27/2017 == Akkadius: [Performance] Reworked how client to NPC aggro checks are made @@ -26,7 +27,7 @@ Akkadius: [Performance] Reduced CPU footprint in cases where a client is checkin - When zones have many players, with many NPC's, this adds up quickly == 03/12/2017 == -Akkadius: +Akkadius: [Performance] - Implemented range rules for packets and other functions RULE_INT ( Range, Say, 135 ) RULE_INT ( Range, Emote, 135 ) diff --git a/zone/npc.cpp b/zone/npc.cpp index 142dc3120..4dd65b1d4 100644 --- a/zone/npc.cpp +++ b/zone/npc.cpp @@ -717,6 +717,11 @@ bool NPC::Process() if (enraged_timer.Check()){ ProcessEnrage(); + + /* Don't keep running the check every second if we don't have enrage */ + if (!GetSpecialAbility(SPECATK_ENRAGE)) { + enraged_timer.Disable(); + } } //Handle assists...