Thread Tools Display Modes
07-29-16, 09:39 AM   #1
Aznamir
A Fallenroot Satyr
 
Aznamir's Avatar
AddOn Author - Click to view addons
Join Date: Sep 2006
Posts: 26
Weird addon issue with timewalking dungeons

I've encountered a weird issue upon zoning into a timetalking dungeon.
I made an addon that track buff/debuff/cooldowns using GetSpellInfo(xxx) to get a spell name and then does the usual checking using the spell name.
When I zone into a dungeon on my moonkin druid, every tracker breaks until I do reloadUI.

Is there some kind of even I could intercept and re-set my addon to avoid that?
  Reply With Quote
07-29-16, 11:24 AM   #2
VincentSDSH
Non-Canadian Luzer!
 
VincentSDSH's Avatar
AddOn Author - Click to view addons
Join Date: Jun 2006
Posts: 350
You'll have to define "breaks" a bit more clearly.
__________________
AddonsExecutive Assistant User Configurable To-Do ListLegible Mail Choose the Font for Your Mail
  Reply With Quote
07-29-16, 01:20 PM   #3
Tim
A Rage Talon Dragon Guard
 
Tim's Avatar
AddOn Author - Click to view addons
Join Date: Apr 2008
Posts: 308
Without any code posted it sounds like your addon is trying to grab information before it's available. Whenever people are in need of coding help it works best when you provide your code and your issues.
__________________
AddOns: Tim @ WoWInterface
Characters: Mage, Priest, Devoker, Pally
Battle Tag: Mysterio#11164
Current PC Setup: PCPartPicker List
  Reply With Quote
07-30-16, 05:56 AM   #4
Aznamir
A Fallenroot Satyr
 
Aznamir's Avatar
AddOn Author - Click to view addons
Join Date: Sep 2006
Posts: 26
Originally Posted by Tim View Post
Without any code posted it sounds like your addon is trying to grab information before it's available. Whenever people are in need of coding help it works best when you provide your code and your issues.
There isn't anything really special.
Similar to WeakAuras the addon has an array of trackable spells:
Code:
spells = {
	[1] = GetSpellInfo(8921),   -- Moonfire
}
and once the player enters combat it runs a 0.1s timer and check for the spell debuff on the target
Code:
spellName = spells[1]
_, _, _, _, _, buffDuration, buffExpire = UnitDebuff("target", spellName, nil, "PLAYER")
if buffExpire then
       expire = buffExpire - GetTime()
       timers[1]:SetText(expire)
else
       timers[1]:SetText("")
end
I've noticed TidyPlates having the same issue - in timewalking it shows only some of the debuffs on the target nameplace. Moonfire by some reason is not displayed. Same spell - that's a strange coincidence.
  Reply With Quote
07-30-16, 07:26 AM   #5
jeffy162
A Pyroguard Emberseer
 
jeffy162's Avatar
AddOn Author - Click to view addons
Join Date: May 2009
Posts: 2,364
Originally Posted by Aznamir View Post
There isn't anything really special.
Similar to WeakAuras the addon has an array of trackable spells:
Similar to WeakAuras is STILL not the same as. It would probably help to post the code (if it's huge, post it to a "paste" site and post the link to it).
__________________
Ahhhh, the vagueries of the aging mind. Wait.... What was I saying?


Carbonite <----- GitHub main module (Maps ONLY) download link. The other modules are also available on GitHub.
Carbonite-CLASSIC<----- GitHub link to Carbonite Classic. Thanks to ircdirk for this!
  Reply With Quote
07-30-16, 12:17 PM   #6
TOM_RUS
A Warpwood Thunder Caller
AddOn Author - Click to view addons
Join Date: Sep 2008
Posts: 95
Originally Posted by Aznamir View Post
once the player enters combat it runs a 0.1s timer and check for the spell debuff on the target
Is it really only way? Sounds like a lot of wasted resources right here. Have you tried to listen for combatlog events instead (or some UNIT_AURA event)?

Last edited by TOM_RUS : 07-30-16 at 01:08 PM.
  Reply With Quote
07-30-16, 04:51 PM   #7
Aznamir
A Fallenroot Satyr
 
Aznamir's Avatar
AddOn Author - Click to view addons
Join Date: Sep 2006
Posts: 26
Originally Posted by jeffy162 View Post
Similar to WeakAuras is STILL not the same as. It would probably help to post the code (if it's huge, post it to a "paste" site and post the link to it).
I've included the relevant code in my response.
It looks like the issue was with trying to get spells names during the addon initialization.
Had to change it slightly to use spellIDs and only get the name when it had to be checked.


Originally Posted by TOM_RUS View Post
Is it really only way? Sounds like a lot of wasted resources right here. Have you tried to listen for combatlog events instead (or some UNIT_AURA event)?
Parsing combat log means a lot more housekeeping such as re-setting timers upon spell recasts, creating and killing timers to update the UI, etc. As I see in the profiler my addon is pretty much at the bottom of memory/cpu usage.
  Reply With Quote

WoWInterface » Developer Discussions » General Authoring Discussion » Weird addon issue with timewalking dungeons

Thread Tools
Display Modes

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