Coder Social home page Coder Social logo

eventhorizon_continued's People

Contributors

brusalk avatar cluuey avatar dlemvigh avatar nakauri avatar salchichaky avatar stragasevera avatar texl avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

eventhorizon_continued's Issues

Abilities with recharge times and charges.

Not sure about other classes but druid has a few of these.
I suppose we'd need an option to say how many charges are possible, so the bar is empty at max charges and starts counting as soon as we use one. This would indicate a 'tic' line would be helpful while recharging so we can see when the next charge will come if we're n+1 charges below max.

http://www.wowhead.com/spell=202028/brutal-slash
This one is designed for add fights there you need to kill numerous low health targets quickly, for multiple wave fights knowing when you get new charges and how many you've got will be very useful.

Now for the tricky one which will have to have a choice made about what to display.
http://www.wowhead.com/spell=22842/frenzied-regeneration
So we've got charges, a recharge time and a short buff for the HoT.
Pretty sure that breaks the current limitation of EH.

However graphically it is done for other things already, I'm thinking of Vampiric Touch type spells. When you've cast them you have a DoT timer bar but as they have a cast time you normally cast the next one before it expires. When you do this you get a green cast bar over the top of the DoT bar.

That would work well for this but I've got no idea how much is involved in coding it. Unless there are other spells like this or you really want to beat the challenge I'd not worry about displaying the HoT. It only lasts for two GCD anyway, tracking the recharge time is more important I think. I doubt there are many players who'd actually press the button twice in a row.

Demon Hunter Fury of the Illidari requirements checking spams

[4:03 AM] Kynasha: @Brusalk my chat is being spammed with. "Matched 201467 | 1 / 1" on my demon hunter, when i disable EventHorizon_DemonHunter it goes away, I cant seem to find the cause in the code(edited)
[4:18 AM] Brusalk: @Kynasha How often are you getting spammed? is it non-stop after you login?
[4:18 AM] Kynasha: yes at a rate of once per every 2secs it seems
[4:22 AM] Brusalk: Can you run the following for me, and let me know what gets printed to your chat frame?
[4:22 AM] Kynasha: sure
[4:22 AM] Brusalk: /run print(LibStub:GetLibrary("LegionArtifacts-1.1"):GetArtifacts())
[4:23 AM] Kynasha: should i re-enable EventHorizon_DemonHunter?
[4:23 AM] Brusalk: shouldn't have to
[4:23 AM] Kynasha: table: 00000265268DCBD0
[4:25 AM] Brusalk: hmmmmm
[4:25 AM] Brusalk: something seems bugged with artifact checking
[4:25 AM] Kynasha: ive had fun with my own project and artifact libs so i feel you there
[4:26 AM] Brusalk: If you want to use the rest of the demon hunter class config, you can comment out the lines in the DemonHunter/config.lua file that reference requiredArtifactTalent
[4:28 AM] Cluey: I'm open to feedback on that config too @Kynasha, it was hard to work out without having access to all the talents.
[4:28 AM] Cluey: The feral one worked as I expected it to after I got my artifact weapon @Brusalk. ๐Ÿ˜€
[4:29 AM] Kynasha: ill see what i can do, but im pretty busy with my own project so no promises ๐Ÿ˜ƒ
[4:30 AM] Kynasha: @Brusalk i can confirm that comment out bypassed the issue
[4:35 AM] Cluey: @Kynasha how upgraded is your weapon now?
[4:35 AM] Kynasha: on Demon Hunter not far, guild needed me to roll Enhancement Shaman
[4:35 AM] Kynasha: to which im on my 5th trait
[4:35 AM] Kynasha: at level 104
[4:36 AM] Cluey: I only got far enough to get the base weapon, then I had to sleep as I'm playing tour guide for my old raid leader as she's visiting my city.
[4:37 AM] Kynasha: nice!!
[4:37 AM] Cluey: I had wondered what happened with them as you leveled them, I assumed the spell stayed the same.
[4:38 AM] Cluey: I'm wondering if I missed the spell id's up for the two DH specs.
[4:38 AM] Kynasha: on the item or the use ability?
[4:38 AM] Cluey: I'm on a train though so I can't look. 
The spell it gives.
[4:39 AM] Kynasha: the spell id on Havoc, Fury of the Illidari = 201467(edited)
[4:39 AM] Cluey: Is that the number in the line you commented out?
[4:39 AM] Kynasha: yes
[4:40 AM] Cluey: Hhmmm, all yours @Brusalk ๐Ÿ˜‰
[4:40 AM] Brusalk: It should be the spellID of the artifact trait
[4:40 AM] Brusalk: not the ability
[4:40 AM] Brusalk: unless they're the same
[4:40 AM] Kynasha: same
[4:55 AM] Brusalk: Try replacing it with the spellID of the ones listed on http://www.wowhead.com/spell=201628/fury-of-the-illidari(edited)
Wowhead
Fury of the Illidari
Throws the Twinblades of the Deceiver in a whirlwind of energy, causing [7 * (140% + 140%)] Chaos damage over 3 sec to all nearby enemies.
[4:56 AM] Brusalk: 201628
[4:56 AM] Brusalk: 201467
[4:56 AM] Brusalk: 201789
[4:57 AM] Brusalk: see if one of those works
[5:02 AM] Kynasha: 201628 and 201789 - dont spam but don't show the spell either
[5:02 AM] Kynasha: only 201467 will show the spell
[5:15 AM] Brusalk: but still spams
[5:16 AM] Kynasha: yes
[5:25 AM] Brusalk: I wonder if there may be something weird with the library and how it handles the first gold trait
[5:25 AM] Brusalk: I'll look into it

Visual options - remove just the frame border.

I've been trying to remove the border from my frame to try and get it to fit in with my UI better.
Things I tried:
config.border = false but that does nothing, I think it just defaults to the one in EventHorizon.lua which seems hard coded, for want of a better/correct phrase.
I got a solid white border by setting it to the same as the background with:
config.border = 'Interface\\ChatFrame\\ChatFrameBackground'
Setting the padding to zero doesn't work either.

config.edgesize = 8
config.inset = {top = 2, bottom = 2, left = 2, right = 2}

Changing config.edgesize = 4 and setting config.edgesize to 1 for all of them is close to not having one.

I can turn the background off completely with config.backdrop = false but it looks a bit funny without it, I suspect I could get used to it though.
I might be able to turn the background off and then set the bar backgrounds individually with the config.barbg option but the server went down before I could try and I thought I should post this while I remembered what I'd tried.

To disable just the border I had to edit the main file, this is the section I edited. I've just commented out parts of it.

  local c = self.config.backdrop
  if c then
    if not(self.styleframe) then self.styleframe = CreateFrame('Frame',nil,mainframe) end
  else
    if self.styleframe then self.styleframe:Hide() end
    return
  end
  
  local styleframe = self.styleframe
  local stylebg = self.config.bg or 'Interface\\ChatFrame\\ChatFrameBackground'
--  local styleborder = self.config.border or 'Interface\\Tooltips\\UI-Tooltip-Border'
  local stylebgcolor = self.colors.bgcolor or {0,0,0,0.6}
--  local stylebordercolor = self.colors.bordercolor or {1,1,1,1}
--  local styleinset = self.config.inset or {top = 2, bottom = 2, left = 2, right = 2}
--  local stylepadding = self.config.padding or 3
--  local styleedge = self.config.edgesize or 8

  styleframe:SetFrameStrata('BACKGROUND')
  styleframe:SetPoint('TOPRIGHT', mainframe, 'TOPRIGHT')--, stylepadding, stylepadding)
  styleframe:SetPoint('BOTTOMLEFT', mainframe, 'BOTTOMLEFT')--, -stylepadding, -stylepadding)
  styleframe:SetBackdrop({
    bgFile = stylebg,
--    edgeFile = styleborder, tileSize = 0, edgeSize = styleedge,
--    insets = styleinset,
  })
  styleframe:SetBackdropColor(unpack(stylebgcolor))
--  styleframe:SetBackdropBorderColor(unpack(stylebordercolor))
end```

Odd error.

No idea what's going on here.
This is with just EH and Bugsack/BugGrabber enabled.
I tested even fewer addons and with just EH loaded, no class module, it does the same thing. :-(

[string "@EventHorizon\EventHorizon-1.10.1-beta.lua"]:4223: in function <EventHorizon\EventHorizon.lua:4218>
[string "@EventHorizon\EventHorizon-1.10.1-beta.lua"]:4448: in function <EventHorizon\EventHorizon.lua:4447>
[string "=[C]"]: in function `TaskPOI_OnEnter'
[string "@Blizzard_SharedMapDataProviders\WorldQuestDataProvider.lua"]:436: in function <...rd_SharedMapDataProviders\WorldQuestDataProvider.lua:435>

Locals:
tooltip = nil
id = 52987
type = "QuestID:"
found = false
(for index) = 1
(for limit) = 15
(for step) = 1
i = 1
(*temporary) = <table> {
 UpdateOnBarHighlightMarksBySpell = <function> defined @FrameXML\ActionButton.lua:78
 ERR_OUT_OF_CHI = "Not enough chi"
 DH_HAVOC_CORE_ABILITY_2 = "Strong melee attack that consumes Fury. If it critical strikes, some Fury is refunded."
 MultiCastActionButton6Cooldown = MultiCastActionButton6Cooldown {
 }
 MerchantItem9ItemButtonStock = MerchantItem9ItemButtonStock {
 }
 GetTrainerServiceTypeFilter = <function> defined =[C]:-1
 UNIT_NAMES_COMBATLOG_TOOLTIP = "Color unit names."
 SetTrainerServiceTypeFilter = <function> defined =[C]:-1
 LE_GAME_ERR_CHAT_RAID_RESTRICTED_TRIAL = 741
 SPELL_FAILED_CUSTOM_ERROR_71 = "This partygoer wants to dance with you."
 LE_GAME_ERR_PET_SPELL_TARGETS_DEAD = 400
 ERROR_CLUB_TICKET_COUNT_AT_MAX_COMMUNITY = "Can't create any more invite links for this community."
 RecruitAFriendFrame = RecruitAFriendFrame {
 }
 CompactUnitFrameProfilesGeneralOptionsFrameHealthTextDropdownButtonNormalTexture = CompactUnitFrameProfilesGeneralOptionsFrameHealthTextDropdownButtonNormalTexture {
 }
 TutorialFrameLeft19 = TutorialFrameLeft19 {
 }
 MultiCastActionButton2Cooldown = MultiCastActionButton2Cooldown {
 }
 ERR_TRADE_EQUIPPED_BAG = "You can't trade equipped bags."
 PVP_RANK_6_1 = "Corporal"
 MultiBarLeftButton7 = MultiBarLeftButton7 {
 }
 InterfaceOptionsNamesPanelUnitNameplatesShowAll = InterfaceOptionsNamesPanelUnitNameplatesShowAll {
 }
 VideoOptionsFrameDefaults = VideoOptionsFrameDefaults {
 }
 MerchantItem1AltCurrencyFrameItem1Text = MerchantItem1AltCurrencyFrameItem1Text {
 }
 OPTION_TOOLTIP_ACTION_BUTTON_USE_KEY_DOWN = "Action button keybinds will respond on key down, rather than on key up."
 BINDING_NAME_NAMEPLATES = "Show Enemy Name Plates"
 CHAT_HEADER_SUFFIX = ": "
 MultiBarBottomRightButton8Shine5 = MultiBarBottomRightButton8Shine5 {
 }
 COVENANT_MISSIONS_HEALTH = "Health"
 MAIL_LETTER_TOOLTIP = "Click to make a permanent
copy of this letter."
 UnitFrameManaBar_UnregisterDefaultEvents = <function> defined @FrameXML\UnitFrame.lua:782
 PaperDollTitlesPaneButton10BgTop = PaperDollTitlesPaneButton10BgTop {
 }
 DUNGEON_FLOOR_UPPERBLACKROCKSPIRE3 = "Hall of Blackhand"
 CHAT_CONFIG_OTHER_COMBAT = <table> {
 }
 FCFDockOverflowButton_OnClick = <function> defined @FrameXML\FloatingChatFrame.lua:2379
 TutorialFrameRight19 = TutorialFrameRight19 {
 }
 ChatFrame6EditBoxFocusMid = ChatFrame6EditBoxFocusMid {
 }
 BN_UNABLE_TO_RESOLVE_NAME = "Unable to whisper '%s'. Blizzard services may be unavailable."
 AutoCompleteEditBox_OnKeyDown = <function> defined @FrameXML\AutoComplete.lua:366
 CompactRaidFrameManagerDisplayFrameHiddenModeToggleTopRight = CompactRaidFrameManagerDisplayFrameHiddenModeToggleTopRight {
 }
 LFGTeleport = <function> defined =[C]:-1
 LE_GAME_ERR_ONLY_ONE_QUIVER = 32
 INT_SPELL_DURATION_HOURS = "%d |4hour:hrs;"
 ToggleEncounterJournal = <function> defined @FrameXML\UIParent.lua:1035
 LOSS_OF_CONTROL_DISPLAY_FEAR = "Feared"
 Graphics_QualityText = Graphics_QualityText {
 }
 OverrideActionBarButton6Shine11 = OverrideActionBarButton6Shine11 {
 }
 ROGUE_COMBAT_CORE_ABILITY_4 = "Melee attack that spends Combo Points."
 JoinSkirmish = <function> defined =[C]:-1
 FriendsFriendsScrollFrameButton14 = FriendsFriendsScrollFrameButton14 {
 }
 Advanced_GraphicsAPIDropDownButtonHighlightTexture = Advanced_GraphicsAPIDropDownButtonHighlightTexture {
 }
 MultiBarRightButton7Shine9 = MultiBarRightButton7Shine9 {
 }
 BankFrameItem17SearchOverlay = BankFrameItem17SearchOverlay {
 }
 LFGListSearchPanelScrollFrameButton10BottomRight = LFGListSearchPanelScrollFrameButton10BottomRight {
 }
 DMG_LCD = "DMG"
 RaidGraphics_EnvironmentalDetailSlider = RaidGraphics_EnvironmentalDetailSlider {
 }
 GuildNewsFiltersFrameText = GuildNewsFiltersFrameText {
 }
 Is64BitClient = <function> defined =[C]:-1
 SecureCmdItemParse = <function> defined @FrameXML\ChatFrame.lua:1142
 SLASH_STOPATTACK1 = "/stopattack"
 MultiCastActionButton4H```

Recharge spells do not work correctly

This is a problem I encountered when I wrote configs for Warrior ( #99 ).

The recharge spells do not work correctly with cooldown resets. For example, Raging Blow spell for Fury do not recharge properly - when cooldown reset happens, EventHorizon does not show that I have a free charge available - it shows that both my charges have the same expiration time.

Example: https://cdn.discordapp.com/attachments/201924555818795008/470482986756866048/unknown.png
As you see, I have 1 free charge on Raging Blow, but EHZ shows it as having 0 free charges.

I found another error while building configs!

I almost forgot this one.

I was trying to find what the spellid was for a debuff as it was different from the spell, so I moved my mouse over the debuff and got an error.

EventHorizon\EventHorizon-1.9.22-beta.lua:4164: in function <EventHorizon\EventHorizon.lua:4152>
EventHorizon\EventHorizon-1.9.22-beta.lua:4199: in function <EventHorizon\EventHorizon.lua:4197>
[C]: in function `SetUnitDebuff'
[string "*:OnEnter"]:2: in function <[string "*:OnEnter"]:1>

Locals:
InCombatSkipped

Error message.

I'm not exactly sure what triggered this error, I think it might have been the mob I had targeted got a DoT put on it by me using Sunfire on the one next to it.
Does that sound plausible?
I've had it happen a couple of times but when it happens I'm in the middle of an M+ run and I don't have time to work out what the problem was. This time it happened at the start of a boss fight I was healing so I couldn't reload my UI until the end, I was half expecting WoW to crash.

244x EventHorizon\EventHorizon-1.9.24-beta.lua:1566: attempt to perform arithmetic on a nil value
EventHorizon\EventHorizon-1.9.24-beta.lua:1566: in function `UpdateDoT'
EventHorizon\EventHorizon-1.9.24-beta.lua:1306: in function `UNIT_AURA'
EventHorizon\EventHorizon-1.9.24-beta.lua:799: in function `f'
EventHorizon\EventHorizon-1.9.24-beta.lua:699: in function <EventHorizon\EventHorizon.lua:690>

Locals:
InCombatSkipped

GetCurrencyListLink error.

I got this error when I moved my cursor over a currency on my character pane.
I've been doing some research trying to make a few old addon I use work. As a result I found a summary of changes.
GetCurrencyListLink has been replaced with C_CurrencyInfo.GetCurrencyListLink and changing that removes this error.
I contemplated a pull request on the main file but that file is, mostly, way out of my league so I've just made this error report.

[string "@EventHorizon\EventHorizon-1.10.1-beta.lua"]:4434: in function <EventHorizon\EventHorizon.lua:4433>
[string "=[C]"]: ?
[string "@TheUndermineJournal\libs\LibExtraTip\LibExtraTip.lua"]:425: in function `SetCurrencyToken'
[string "*:OnEnter"]:2: in function <[string "*:OnEnter"]:1>

Locals:
self = GameTooltip {
 0 = <userdata>
 SetQuestLogRewardSpell = <function> defined @TheUndermineJournal\libs\LibExtraTip\LibExtraTip.lua:419
 OnBackdropLoaded = <function> defined @SharedXML\Backdrop.lua:205
 ItemTooltip = <unnamed> {
 }
 SetHyperlink = <function> defined @TheUndermineJournal\libs\LibExtraTip\LibExtraTip.lua:419
 RightEdge = <unnamed> {
 }
 ClearBackdrop = <function> defined @SharedXML\Backdrop.lua:335
 Show = <function> defined =[C]:-1
 SetPetAction = <function> defined @TheUndermineJournal\libs\LibExtraTip\LibExtraTip.lua:419
 SetLootItem = <function> defined @TheUndermineJournal\libs\LibExtraTip\LibExtraTip.lua:419
 numMoneyFrames = 1
 SetRecipeReagentItem = <function> defined @TheUndermineJournal\libs\LibExtraTip\LibExtraTip.lua:419
 SetBuybackItem = <function> defined @TheUndermineJournal\libs\LibExtraTip\LibExtraTip.lua:419
 SetCurrencyTokenByID = <function> defined =[C]:-1
 SetupTextureCoordinates = <function> defined @SharedXML\Backdrop.lua:267
 TopRightCorner = <unnamed> {
 }
 SetTalent = <function> defined @TheUndermineJournal\libs\LibExtraTip\LibExtraTip.lua:419
 GetEdgeSize = <function> defined @SharedXML\Backdrop.lua:241
 updateTooltip = 0.066000
 SetInventoryItem = <function> defined @TheUndermineJournal\libs\LibExtraTip\LibExtraTip.lua:419
 TopEdge = <unnamed> {
 }
 SetLootRollItem = <function> defined @TheUndermineJournal\libs\LibExtraTip\LibExtraTip.lua:419
 SetBagItem = <function> defined @TheUndermineJournal\libs\LibExtraTip\LibExtraTip.lua:419
 BottomRightCorner = <unnamed> {
 }
 SetBackdropColor = <function> defined @SharedXML\Backdrop.lua:452
 LeftEdge = <unnamed> {
 }
 SetCurrencyByID = <function> defined =[C]:-1
 textLeft1Font = "GameTooltipHeaderText"
 SetCurrencyToken = <function> defined @TheUndermineJournal\libs\LibExtraTip\LibExtraTip.lua:419
 SetGuildBankItem = <function> defined @TheUndermineJournal\libs\LibExtraTip\LibExtraTip.lua:419
 hasMoney = 1
 TopLeftCorner = <unnamed> {
 }
 SetQuestRewardSpell = <function> defined @TheUndermineJournal\libs\LibExtraTip\LibExtraTip.lua:419
 TextRight1 = GameTooltipTextRight1 {
 }
 ApplyBackdrop = <function> defined @SharedXML\Backdrop.lua:347
 SetBackdrop = <function> defined @SharedXML\Backdrop.lua:382
 TopOverlay = <unnamed> {
 }
 GetBackdropBorderColor = <function> defined @SharedXML\Backdrop.lua:462
 GetBackdrop = <function> defined @SharedXML\Backdrop.lua:400
 SetUnitDebuff = <function> defined =[C]:-1
 SetQuestItem = <function> defined @TheUndermineJournal\libs\LibExtraTip\LibExtraTip.lua:419
 SetBorderBlendMode = <function> defined @SharedXML\Backdrop.lua:319
 SetTrainerService = <function> defined @TheUndermineJournal\libs\LibExtraTip\LibExtraTip.lua:419
 comparing = false
 BottomOverlay = <unnamed> {
 }
 BottomLeftCorner = <unnamed> {
 }
 SetInboxItem = <function> defined @TheUndermineJournal\libs\LibExtraTip\LibExtraTip.lua:419
 SetMerchantItem = <function> defined @TheUndermineJournal\libs\LibExtraTip\LibExtraTip.lua:419
 TextLeft1 = GameTooltipTextLeft1 {
 }
 BottomEdge = <unnamed> {
 }
 SetShapeshift = <function> defined @TheUndermineJournal\libs\LibExtraTip\LibExtraTip.lua:419
 backdropInfo = <table> {
 }
 OnBackdropSizeChanged = <function> defined @SharedXML\Backdrop.lua:235
 SetUnitBuff = <function> defined =[C]:-1
 GetBackdropColor = <function> defined @SharedXML\Backdrop.lua:443
 SetTradePlayerItem = <function> defined @TheUndermineJournal\libs\LibExtraTip\LibExtraTip.lua:419
 textRight1Font = "GameTooltipHeaderText"
 SetSendMailItem = <function> defined @TheUndermineJournal\libs\LibExtraTip\LibExtraTip.lua:419
 HasBackdropInfo = <function> defined @Shared```

CD not always tracking.

image
When you have a talent which extends the duration of a buff on an ability with a CD the CD triggers fine the first time after a UI reload but not after that.

-- Anti-Magic Shell self:newSpell({ requiredTree = 1, cooldown = 48707, playerbuff = {{48707},{205725}}, })

Default icon size.

Since release 1.9.11 the default config.height has been 37, I really hope that was a typo as it looks really strange depending on the number of bars you have. With a low amount you can clearly work out what they are but then they start becoming undecipherable.

Ideally we'd be able to have this dynamically set by config.staticheight / #bars shown with a minimum value of about 17. No idea if that is possible to do though.
Alternatively work out an average amount of bars expected to be shown and divide config.staticheight by that.

This is what it looks like for a druid depending on spec/stance/affinity, these aren't all likely scenarios but that was the easiest way to get a different number of bars and a consistent size.

icon_size

Possibility to track shortest CD instead of longest

Is there any way to track the shortest CD when adding multiple spells to the same bar? I couldn't find any option in the documentation.
If not possible currently, would it be possible to add a flag for it?

Redshift not enabled by default

[12:01 AM] Driphter: Yeah, the code uses EventHorizonDB.redshift.isActive
[12:11 AM] Driphter: Yep it checks the config setting for changes and syncs the db setting in Redshift.Init() but won't run it unless EventHorizonDB.redshift.isActive is true
[12:11 AM] Driphter: So the db never gets updated
[12:40 AM] Brusalk: I think the idea there is that it'll not display ever if you configure it in-game to not show
[12:40 AM] Brusalk: cuz you didn't want it to show
[12:41 AM] Brusalk: So I guess you disabled it in-game sometime in the past?
[12:41 AM] Brusalk: or am I misunderstanding what you guys mean
NEW MESSAGES
[12:41 AM] Driphter: It's disabled be default in the config and in the db
[12:42 AM] Driphter: If you enable it in the config but not in-game, nothing happens.
[12:43 AM] Driphter: The config option has no bearing on anything
[12:44 AM] Driphter: Well, you might be able to disable it from the config by changing it from enabled to disabled

Lua warnings for missing myconfig files

Kind of surprised no one else brought this up, but I get these warning popups:

Message: Error loading Interface\AddOns\EventHorizon_Configs\core_my_config.lua
Time: Thu Jul 19 22:57:28 2018
Count: 3

I don't use the myconfig features, so removing the offending lines from the toc files fixed it for me.

Track PvP talents and Azerite traits.

While I remember, before I get a few hours sleep.

While adjusting the class configs and cross referencing the Wowhead, incremental, patch notes I noticed that one of the Rogue talents has been moved to a PvP one for all specs.
This made me think about how we could support that, it's a lot more relevant now as people can turn on War Mode and be PvP on any server.

Also some of the Azerite traits might need tracking, I haven't looked in detail but there might even be some active ones. I guess we need a way of supporting that too.

Tick counters without a buff/debuff.

Not sure if this is at all possible but as the title says, can we show tick indicators without an active buff or debuff?
I've only looked at 12 specs so far but there might be more where it would be useful.

Currently it's only Frost DK where I came across it:
http://bfa.wowhead.com/spell=253593/inexorable-assault
image

I've got it tracking currently but as soon as you're out of charges you lose the indicator of when you'll get the next one, we could just not track it but I think it should be as knowing if the next charge will come before the end of Pillar of Frost ends sounds like something we should help people do.

SpellBarConfig color/texture options

* Config: Added support for individual bar coloring and textures. Three new options are available in the class config. Also, an extra flag has been added for bar icons.
- bartexture: Sets a custom texture for this bar. Applies to buffs, debuffs, and cooldowns. (example: bartexture = "Interface\\Addons\\EventHorizon\\Smooth")
- barcolor: Sets a custom color for active buffs and debuffs for this bar. Does not support class coloring. (example: barcolor = {Red,Green,Blue,Alpha}, ie {1,0,0,0.6} )
- barcolorunique: Sets a custom color for 'unique' spells for this bar. If barcolor is set and this is not, unique spells will show with barcolor's setting instead. Same format as barcolor.
- keepIcon: Will force the bar icon to stay the same if it would normally change itself when a different spell is being shown. See the Warrior config for usage.

These aren't getting passed through to NewSpell by newSpell()

Handle recharge numbers better

See #49

Part of the recharge feature was a numerical display of the current charge, but our current last-write-wins approach can make this confusing for some bars.

[Destro] Wreak Havoc Visibility Issue

herper

I noticed since the update Wreak Havoc doesn't show its up unless you are targeted to the mob it is cast on. Since wreak havoc is a timed buff that causes duplicate damage of that cast on a separate mob. would it be possible the code it to show till it expires or mob with debuff dies. If you want you can tell me what to do.

Display clarity.

I've been trying to make concise configs without too many bars which are just tracking a CD.
This is hard for a few specs, Havoc springs to mind, but for others they've got a buff or a debuff without an associated CD for it. In an effort to stop the display ballooning out to 8+ bars I've been using these bars to track a CD too.

While this is great for people who look in the config or test a bit on a target dummy I suspect we've got a few users who haven't picked up on what's going on.

I'm proposing we add an icon on the RHS of the display which matches the CD being tracked.
While on CD it should be desaturated, or hidden all together if it's a long CD, but when it's coming up to being ready it should fade in, becoming full colour when it's ready.
An option to make it glow would be good for reminding about DPS CD but not an on by default thing as knowing a defensive is ready doesn't mean it should be constantly glowing.

I think this might be a bit better than the idea of a tooltip telling people what is being tracked, but while it appeals to me I might be in my own little world so feedback is welcome. :-)

New option for Covenants.

We'll need a way of tracking the different abilities the covenants give, I haven't looked them all up yet but I thought I should flag it here. I'll try and look them up if nobody else gets to it before me.

Hopefully you'll be able to modify the code you added for the artifact abilities from Legion.

Make past/future times class specific.

Now I've looked at quite a few classes I've noticed that a, one time frame fits all, model isn't that great.
Feral want's, at least I want (15), longer but hunter doesn't need long at all - 9 would do.

I've no idea how hard that is to do from the coding side.
Also being able to set that within the game, be it command line or not, would help people set it up how they'd prefer.

Add BM Config

Provided by Ourex

  -- Chi Wave
     self:newSpell
         cooldown = 115098,
         requiredTalent = 4,

    -- Keg Smash
         self:newSpell
            cooldown = 121253,
            requiredTree = 1,

        -- blackoutstrike
         self:newSpell
            cooldown = 205523,
            requiredTree = 1,


                -- breath of fire
         self:newSpell
            cooldown = 115181,
            debuff = 123725,
            requiredTree = 1,

    -- -- Chi Burst
    self:newSpell
        cooldown = 123986,
        cast = 123986,
        requiredTalent = 6,

         -- brew cooldown
         self:newSpell({
         cooldown = {115308, 119582},
    playerbuff = 215479,
        requiredTree = 1,

Use the new recharge bar code for other things?

There are some spells out there which get a charge count without being on a recharge timer, I was thinking it would be nice to be able to use the segmented bar to display the charges.
The initial spell which made me think about this was:
http://www.wowhead.com/spell=112965/fingers-of-frost
But since then I've also found another!

I've, now, noticed the big difference between these and the recharge implementation is that these are buffs!
Which is cool as that means we can track a CD underneath them.

Bonus points for being able to colour the different segments of the bar individually.
My thinking here being that it's easier to tell at a glance, or with peripheral vision, when you're at max stacks and you should use one so you don't waste the next charge.

I could make a dodgy paint picture up if you'd like but I think you know what I mean.

DoT indicators for other purposes.

We could do with a way of displaying DoT indicators working backwards from the expiry of a buff.
In this case they're not actual 'ticks' of the debuff but indicators to show when you can get a cast off before the debuff expires.

This is more relevant for Marksmanship hunters.
The [url=http://www.wowhead.com/spell=187131/vulnerable]Vulnerable[/url] debuff increases damage taken from certain abilities, Aimed Shot is one of them and the one which requires this indicator.
As [url=http://www.wowhead.com/spell=19434/aimed-shot]Aimed Shot[/url] has a cast time you need to be able to see if you've got time left to cast it.

I think this means we'd need the indicators to adjust with current haste levels.

In the current config I've just got a two second DoT indicator on the Vulnerable debuff bar, it helps a bit but is nowhere near as clear as other options out there.

Deal with area heals which don't provide a buff.

For spells like:

http://www.wowhead.com/spell=145205/efflorescence
http://www.wowhead.com/spell=114158/lights-hammer

There might be others, I don't know.
I've also got no idea how you'd track this, for Light's Hammer at least you can track the cooldown so you know when you can cast it again. There's just no way of knowing who's standing in it.
For Efflorescence it doesn't have a cooldown or provide a buff but lasts 30 seconds, once again we can't track who's standing in it.

GCD spell ID for classes without a shared no cooldown spell

How does GCD spell ID work for classes whose specs don't share an ability that has no cooldown? Warriors, at least at level 20, don't have a single ability shared between all three specs that doesn't have a cooldown, so it seems like I'm unable to have GCD tracking.

Patch 7.1.5 Talent Changes - Destro

Abilities like Cata and Erad have changed locations in the talent tree, so the class config has to be updated to match new talent changes.

Large Blurry Icons, Need help please

wowscrnshot_080516_155610
I updated to the latest version and now my icons are huge and blurry. everything else works just cant see the icons really well. Im not a programmer so please help me how to change this in the config???

Popup Messages displaying per Character, not per Account

Binkenstein: btw @Brusalk you might want to tone down all the initial load popups that happen, I think you've got about 3 with the discord one now
[2:20 PM] Binkenstein: Slightly annoying when setting up a new character ๐Ÿ˜›
[2:20 PM] Brusalk: It should only happen for the first time per-account though yeah?
[2:20 PM] Brusalk: or is it happening again for every new toon
[2:33 PM] Binkenstein: Get it on creating new characters too

Display buff count for similar abilities.

I've been trying to work out how to deal with Germination in the resto config.
http://www.wowhead.com/spell=155675/germination
It lets you cast two Rejuvination on the same target but instead of just increasing the stack size to two, like the initial version of Lifebloom did, the second one has a different spellId.

This is the current config I have for it, it works to show either buff and the icon changes, after the Rejuvination expires, to the Germination one.

-- Rejuvenation
self:newSpell({
  requiredTree = 4,
  stance = 0,
  requiredLevel = 10,
  playerbuff = {{774,3},{155777,3}},
  auraunit = usemouseover and 'mouseover' or 'target',
  hasted = true,
  refreshable = true,
})

Is it possible to add some kind of logic in there to show a stack count when both buffs are detected?
Currently you can't tell two are on your target without remembering or adding another bar to track just the second one.
There are already too many bars for this spec. ๐Ÿ‘Ž

Option for different buff colours on same bar.

Probably only useful for tracking procs on a single bar.
Would need a way of specifying which one would get priority to be displayed, I'm sure there will be more than just Guardian spec where one proc has a higher value than the other so you want to use it first. Also using the other ability might reset the other!

Doesn't work with Aurora

Event Horizon doesn't work with this addon installed and enabled. It gets as far as parsing the current class config, but doesn't get to a state where the frame can be shown or the /ehz ... commands can be used.

Add simple text-based subheader bar option

Pulled from Discord chat. Suggested by Thunder

I'm not that used to EHZ configs in detail, until now I always just adjusted my personal bars; but what could help with many bars is if you can insert (maybe smaller than default) placeholders that split up your bars in e.g. Rotation and CD segments(edited)

Error

I don't know what triggered this and I've not seen it before.
I, finally, logged my rogue in and I was near a hostile NPC which attacked me before everything had loaded.

Edit 1. It's something to do with the rogue class, I haven't spent any talent points yet and won't until I've tested some more.

Edit 2. It only happens in Assassination or Pirate (Outlaw) spec.

Edit 3. Disabling all other addons except Bugsack/Buggrabber it only errors in Pirate spec. I'm very confused now.

[string "=[C]"]: in function `min'
[string "@EventHorizon\EventHorizon-1.10.1-beta.lua"]:1899: in function `f'
[string "@EventHorizon\EventHorizon-1.10.1-beta.lua"]:806: in function <EventHorizon\EventHorizon.lua:797>

Locals:
(*temporary) = nil
(*temporary) = nil
(*temporary) = "number expected, got nil"

Error from 1.9.11

This happened on my priest when I changed specialisation a few times.


Message: Interface\AddOns\EventHorizon\EventHorizon.lua:1963: table index is nil
Time: 07/24/16 00:29:29
Count: 17
Stack: Interface\AddOns\EventHorizon\EventHorizon.lua:1963: in function `Deactivate'
Interface\AddOns\EventHorizon\EventHorizon.lua:2269: in function `CheckRequirements'
Interface\AddOns\EventHorizon\EventHorizon.lua:1997: in function <Interface\AddOns\EventHorizon\EventHorizon.lua:1992>

Locals: self = <unnamed> {
 0 = <userdata>
 Activate = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1972
 UNIT_AURA_refreshable = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1404
 SPELL_UPDATE_COOLDOWN = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1750
 RemoveChannelTicksAfter = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1263
 UNIT_SPELLCAST_CHANNEL_START = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:986
 Deactivate = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1958
 PLAYER_EQUIPMENT_CHANGED = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1807
 dot = 1
 RemoveTicksAfter = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1251
 OnUpdate = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:928
 UpdateDoT = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1486
 isType = "debuffmine"
 hasted = true
 UpdateTotem = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1611
 isActive = true
 AddTicks = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1312
 NotInteresting = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:811
 UNIT_SPELLCAST_CHANNEL_UPDATE = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1016
 interestingEvent = <table> {
 }
 BAG_UPDATE_COOLDOWN = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1750
 interestingCLEU = <table> {
 }
 castsuccess = <table> {
 }
 indicators = <table> {
 }
 UNIT_SPELLCAST_START = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:986
 UNIT_SPELLCAST_SENT = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:980
 UNIT_SPELLCAST_DELAYED = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1016
 Remove = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:910
 auraunit = "target"
 PLAYER_REGEN_ENABLED = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1736
 AddIndicator = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:832
 UNIT_SPELLCAST_STOP = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1031
 UNIT_AURA = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1404
 PLAYER_TOTEM_UPDATE = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1044
 UPDATE_MOUSEOVER_UNIT = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1908
 COMBAT_LOG_EVENT_UNFILTERED = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1346
 debuffs = <table> {
 }
 refreshable = true
 FindItemInfo = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:816
 AuraFunction = <function> defined =[C]:-1
 UNIT_SPELLCAST_CHANNEL_STOP = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1031
 cast = <table> {
 }
 AddSegment = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:900
 stacks = <unnamed> {
 }
 icon = <unnamed> {
 }
}
(*temporary) = <table> {
 Void Eruption = <unnamed> {
 }
 Shadow Word: Death = <unnamed> {
 }
 Mindbender = <unnamed> {
 }
}
(*temporary) = nil
(*temporary) = <userdata>
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = "table index is nil"
mainframe = <unnamed> {
 0 = <userdata>
 UPDATE_SHAPESHIFT_FORM = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:2285
 COMBAT_LOG_EVENT_UNFILTERED = <function> defined @Interface\AddOns\EventHorizon\E

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.