Thread Tools Display Modes
04/26/14, 01:08 AM   #1
Nameious
Join Date: Apr 2014
Posts: 29
Addons and FPS drop

I'm having strange issues. I run quite a few addons and I have thought my PC should run ESO a hell of a lot better than it is. 20-40 fps 50ish in conversations. I ended up disabling all my addons and noticed around a 20 fps increase. Wykkyd's Framework itself knocks 6-10 off my fps. Can anyone tell me whats going on? Found another post here http://forums.elderscrollsonline.com...pple-framerate

My system specs
AMD 8350
Asus 990FX Sabertooth
Plexor M3Pro 256g SSD
AMD 280x's in crossfire (disabled for eso)
Silverstone 1200W PSU
Windows 7 x64

Last edited by Nameious : 04/26/14 at 01:10 AM.
  Reply With Quote
04/26/14, 06:10 AM   #2
Stormknight
 
Stormknight's Avatar
AddOn Author - Click to view addons
Join Date: Feb 2014
Posts: 128
Quite simply, addons take time to process and display.

Some addons are less optimised than others.

Some addons are just really poorly coded in terms of optimisation and will perform loads of unnecessary processing every frame.

Some addons (especially unit frames) often need to process every frame, so the performance drop is somewhat unavoidable.
  Reply With Quote
04/26/14, 06:26 AM   #3
Blackstorm
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 12
+1 : generally caused by poor optimized codes and/or poor computer resources.

It's a choice too, you can run the game at the best performance without plugins, but without theses plugins life is more complicated ^^

Don't forget too, that the release of game is fairly recent so optimized codes will come with time.
  Reply With Quote
04/28/14, 05:33 AM   #4
Sideshow
 
Sideshow's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 36
Originally Posted by Stormknight View Post
Some addons (especially unit frames) often need to process every frame, so the performance drop is somewhat unavoidable.
I'd say basic unit frames don't need the onupdate event at all
That being said, using the onupdate event still isn't an excuse for stealing frames per second
  Reply With Quote
04/28/14, 12:34 PM   #5
lyravega
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 93
From time to time, after 1-2 hours of playtime, check your FPS, then reload the UI. If you can notice a FPS increase, that means one of the mods/addOns has a real bad coding problem, and doing something wrong.
  Reply With Quote
04/28/14, 03:43 PM   #6
Nameious
Join Date: Apr 2014
Posts: 29
To be honest I wont notice a difference anyways my PC runs this game like utter **** at ultra I get like 30 fps lol
  Reply With Quote
04/28/14, 10:54 PM   #7
SpecialK
Join Date: Apr 2014
Posts: 6
Maybe too many abuses of "OnFrame" handlers.
Probably a lot of devs don't realize it gets ticked at the full frame/game-loop rate!

Do you really need your addon to be update 50-100 times a second?
Probably not..
If you have your stuff running at update speed your are basically competing with everything else
the client game loop is doing.

What devs could do here is use some kind of timer/limiter and, or, spin count to reduce the
frequency of updates.
I.E:
Lua Code:
  1. local _LastUpdateTime = -1
  2. local function _OnUpdate()
  3.     local Time = GetFrameTimeMilliseconds()
  4.     if (Time >= _LastUpdateTime) then    
  5.         _LastUpdateTime = (Time + 100)
  6.  
  7.        ... Do your code here..
  8.     end
  9. end

I saw this problem with the original "ZrMM". My FPS dropped around 10 with it enabled.
I added a limiter to it's update method like above and the problem was gone.
With a 100ms delay it's updating around 10x a second (vrs 50-75 fps for my avg frame rate).
Mind you with too much of a delay (like 500ms, 1/2 second), it made the plugin's update too jerky so
you have to find a trade-off somewhere around the ideal.

There is an updated ZrMM now (different author) that fixed this, added some features, and fixed bugs et al.

Better yet there is the "EVENT_MANAGER:RegisterForUpdate" API method that will tick at what ever delay you set it to!
No need to do a built in limiter like I first did.
Example:
Lua Code:
  1. -- Setup my update handler to tick about every 200ms (5x a second)
  2. EVENT_MANAGER:RegisterForUpdate("MyAddOnUpdate", 200, _OnUpdate)

If only everyone (that doesn't really need an update every frame) used this API instead..
  Reply With Quote
04/29/14, 03:50 PM   #8
Seerah
Fishing Trainer
 
Seerah's Avatar
WoWInterface Super Mod
AddOn Author - Click to view addons
Join Date: Feb 2014
Posts: 648
The OnUpdate handler has two returns - the frame and the time in seconds.

Lua Code:
  1. local timelastrun = 0
  2. myFrame:SetHandler("OnUpdate", function(self, timerun)
  3.     if (timerun - timelastrun) >= 1 then     --this will run the below code once every second
  4.         --do stuff
  5.         timelastrun = timerun
  6.     end
  7. end)
  Reply With Quote
05/08/14, 02:05 AM   #9
Reager
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 2
Main problem is that ESO is not a very addon friendly game. They have restricted the API too much. There are plenty of addons out there that do gimmicks in order to work around those restrictions and thus causing a worse performance overall if your CPU isn't good enough or you are running too many addons.

Last edited by Reager : 05/08/14 at 02:11 AM.
  Reply With Quote
02/05/15, 09:48 PM   #10
warloki41
Join Date: Feb 2015
Posts: 1
Fps drop with addons!

I believe most of the addons out there will cause no issue with regular game-play....Until you go to cyrodil in either large siege war or very large battles (20v20 or more). THEN you will see that fps drop that we are all talking about. Any other time and I myself do not see any loss in fps. Normally I run fps 100 all the time. Once in cyrodil and hit the first big battle....fps will drop in battle to about 20-30. This is highly annoying. Now....if i turn of ALL addons (have yet to check which ones cause this) and then go fullscreen same vid settings High to Ultra., I will have no drop in fps during battles. We just have to figure out which ones cause this and then dont use them during pvp battles. My pc specs are: Maximus IV Extreme-Z/I7 2600k(4.0ghz clock)/8 gig's dominator ram/Gtx 770 (both gpu and cpu are water cooled). I have yet to get SSD. Working with old 500gb hard drive at 7200 rpm. Also using Vizio 42" hdmi monitor.
PVE= all addons you want with no loss fps.
PVP=turn them off! Or you will have horrible time just learning any pvp skills at all.
  Reply With Quote
02/06/15, 12:50 AM   #11
QuadroTony
Banned
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 828
stop necroposting pls
  Reply With Quote
02/06/15, 03:54 AM   #12
BornDownUnder
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 59
Originally Posted by QuadroTony View Post
stop necroposting pls
While the thread is quite old, Warloki41 has a very valid point, especially for addon authors to take note of...

There really should be the general authoring consensus of doing a check for player in zone and disabling addon or functions of said addon if that addon is not required for PvP. How many players stay in Cyrodiil to de-con/craft equip, etc.

Am now wondering after thinking about it if it is possible to implement filters/profiles for the addon Addon Clearer?

Posted a reply in comments section of that particular addon in regards to thought of implementing profiles or similar as an option.
  Reply With Quote
02/06/15, 12:05 PM   #13
Randactyl
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 251
Originally Posted by BornDownUnder View Post
While the thread is quite old, Warloki41 has a very valid point, especially for addon authors to take note of...
Well now that you (kind of) bring it up, I've never understood the point of getting mad at someone who dredges up an old thread - especially if what they have to say is relevant.

If they are trying to see if there is an answer to a still open question, either answer them if you can or let the post slide back into the darkness. No harm, no foul. Berating the "necroposter" (which is a term I find incredibly amusing, by the way ) is really just perpetuating the the practice you hold in contempt.
  Reply With Quote
02/06/15, 06:24 PM   #14
BornDownUnder
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 59
Originally Posted by Randactyl View Post
Well now that you (kind of) bring it up, I've never understood the point of getting mad at someone who dredges up an old thread - especially if what they have to say is relevant.

If they are trying to see if there is an answer to a still open question, either answer them if you can or let the post slide back into the darkness. No harm, no foul. Berating the "necroposter" (which is a term I find incredibly amusing, by the way ) is really just perpetuating the the practice you hold in contempt.
I never get mad or find discontent when someone posts on a thread that hasn't been 'alive' for a while... I've even seen on other forums threads renewed and sparked to full conversation after years of a lack of post.

The way I see it, if someone posts something then they had a reason and that reason for them is relevant. Therefore I reason that if it is relevant enough for the poster then it is relevant enough for me to read, even if it means I have to review a thread years old for information regarding what the recent post is pertaining to.

Basically put, if you were to post, would you want your post to be read or to be ignored for the simple reason of time stamp on the thread creation/last post?
  Reply With Quote
02/06/15, 07:42 PM   #15
Sasky
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 231
Originally Posted by BornDownUnder View Post
Basically put, if you were to post, would you want your post to be read or to be ignored for the simple reason of time stamp on the thread creation/last post?
Some threads are time-dependent and necroing the thread can cause confusion due to outdated information. A 1.3 character build guide isn't going to help you much. The other necro'd thread was for a lack of certain addons that can easily be found.

For a more extreme example, consider if someone necro's one of the Atlas malware threads. Someone who's joined the site since then could easily start reading the thread, panic, and not finish it.

Some sites do have an explicit policy, others auto-lock. ESOUI doesn't. However, consider creating a new thread rather than posting in an old one: it quickly gets to the question and you can link to the old thread if you feel the context is useful.
  Reply With Quote

ESOUI » AddOns » AddOn Help/Support » Addons and FPS drop


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off