Go to Page... |
Compatibility: | Dragonflight (10.0.2) Shadowlands patch (9.2.7) Dragonflight Pre-patch (10.0.0) |
Updated: | 01-02-23 03:01 PM |
Created: | 10-12-09 06:05 AM |
Downloads: | 201,358 |
Favorites: | 378 |
MD5: | |
Categories: | Casting Bars, Cooldowns, Buff, Debuff, Spell, DPS, Healers, Tank, Combat Mods |
EventHorizon now has a Discord: https://discord.gg/mR8xUUK. Come say hi!
Also, EventHorizon is now on github: https://github.com/Brusalk/EventHorizon_Continued -- You can find the latest changes there, but releases will still be released here and on Curse.
-Brusalk (Kilrogg-US)
EventHorizon is now updated and working for Shadowlands. Just download the most recent version and you should be good to go!
If you have and comments, concerns, questions, suggestions, anything, don't hesitate to contact me either through comments here or via mail or whisper in game.
If you feel that the class config for your class is not up to snuff then please let me know why and update it yourself!
There is now a how-to on class configuration below!
There is also a how-to on customization of how EH looks below as well. Check it out!
Please be aware that I'm rewriting this addon from scratch to be released officially soon (tm). Addon development has had to take a backseat to real life for the past few months though I've been working on it as much as I can. (Also, coming in the rewrite is an in-game configuration menu as well as the ability to alter class-configs in-game to make it easier to customize EH.)
If you have a few extra bucks this month and you like all my work, consider chipping in
What does EventHorizon do?
EventHorizon displays all of your class/spec's rotational abilities on a common time scale. This means that instead of seeing a regular percentage-based timer bar, EH shows you exactly what is happening in relation to everything else. If that sounds complicated at all, just look at the screenshots.
The basic idea: An ability that lasts 12 seconds and has 6 seconds remaining shouldn't look exactly the same as one that lasts 5 minutes and has 2.5 minutes remaining.
Videos showing EH in action:
Dezzimal posted a great instructional video using a Shadow Priest for reference.
breakingsong demonstrated EH on a Destro Warlock.
Also, for instant gratification, here's a quick snippet showing a Shadow Priest's rotation at 1 frame per second, using an older layout:
The big white line is the current time. Future events are on the right side, past events on the left. As time goes by, the events scroll from right to left.
The green bars are your cast bars. They use exactly the same times that your normal cast bar would display, with all haste modifiers applied.
You can also see cooldowns, DoTs, and their ticks (predicted in the future, and from the combat log in the past). EventHorizon is extremely intelligent when dealing with most things DoT/HoT-related.
The white lines that appear before the cast times are the times when you press the button (send the cast message to the server). The difference between this line and the start of the cast is your lag.
How do I set it up?
EventHorizon does not include an in-game configuration UI. However, it really doesn't need one - Everything should "just work".
Power users and those wishing to theme EventHorizon for a specific UI, please read on to the advanced portion of this section. Don't worry, it's easier than it may seem.
The basics:
* The window may be moved via the drag-handle on the upper right frame corner. It may be a little hard to see at first, but will light up as soon as you mouse over it.
* You can show/hide EventHorizon manually by using /eventhorizon or /ehz.
Advanced configuration:
Note: I would highly recommend an advanced text editor such as VS Code if you wish to edit the configuration files. While this isn't required by any means, an editor with syntax highlighting makes changing the files MUCH easier.
* The default configuration for EventHorizon is located in EventHorizon\config.lua. This file contains every setting available for EH and is heavily commented to help tweak things to your liking. This file may be deleted and EventHorizon will maintain its functionality (not that I would ever recommend doing that).
* Any changes you make to config.lua will be removed when you update EventHorizon. This is by design. HOWEVER, there's an easy way to get around that. Simply create a new file (or a copy of config.lua) named "myconfig.lua". This file is automatically loaded, and because it loads after config.lua, the settings in myconfig.lua will always be the ones to appear in-game.
Files
There are 2 files which you can edit to change the physical appearance of EventHorizon including colors, size, global functionality and other things. I'm going to assume that you have the most recent version of the configuration file provided in the most recent version of EventHorizon.
config.lua:
You can think of this as the default settings of EventHorizon. If you want to change settings then you can do so here, but when you download a new version of EventHorizon you have to be careful as the new version includes config.lua and will overwrite any changes you've made to this file. You can always skip this file when overwriting, but it's better to use myconfig.lua as it's intended to avoid this problem.
myconfig.lua:
This file overwrites any values in config.lua with the values changed inside it. So if you have config.width set to 375 in config.lua and config.width set to 200 in myconfig.lua, EventHorizon will use 200 as the value.
Where this is useful is that myconfig.lua is never included in the updated versions of EventHorzion, and as such will never be overwritten when downloading a new version of EventHorizon.
As such best practice is to alter any values you wish to change in config.lua by changing the values inside myconfig.lua.
Configuration
In order to change settings of something you just have to change the text after the equals sign on the line with the setting you want to change.
For example if you wanted to change the width of the addon you would change line 33 which normally reads (by default)
config.width = 375 -- Width of a single bar....
config.width = 200 -- Width of a single bar....
local EHN,ns = ... local config = EventHorizon.config local c = EventHorizon.colors local _,class = UnitClass('player') -- These locals make in-line conditions a little easier. See the color section for a few examples. local DK = class == "DEATHKNIGHT" local Druid = class == "DRUID" local Hunter = class == "HUNTER" local Mage = class == "MAGE" local Paladin = class == "PALADIN" local Priest = class == "PRIEST" local Rogue = class == "ROGUE" local Shaman = class == "SHAMAN" local Warlock = class == "WARLOCK" local Warrior = class == "WARRIOR" --[[ EDIT BELOW THIS LINE ]]--
-- Vampiric Touch/swd cd self:newSpell({ debuff = {34914,3}, cast = 34914, cooldown = 32379, refreshable = true, hasted = true, requiredTree = 3, requiredLevel = 28, stance = 1, })
self:newSpell({ itemID = 1543 })
self:newSpell({ itemID = { 1543, 1544, ... , 1243 }, })
self:newSpell({ slotID = 13, })
self:newSpell({ cast = 1543 })
self:newSpell({ cast = { 1543, 1544, ... , 1243 }, })
self:newSpell({ channel = {1543,3}, })
self:newSpell({ channeled = { {1543,2}, {1544,4}, ... , {1254, 6} }, })
self:newSpell({ cooldown = 1543, })
self:newSpell({ cooldown = {1543, 1642, ... , 1274}, })
self:newSpell({ debuff = {1543, 3}, })
self:newSpell({ debuff = 1543, })
self:newSpell({ playerbuff = {1543, 3}, })
self:newSpell({ playerbuff = 1543, })
self:newSpell({ debuff = {1543, 3}, hasted = true, })
self:newSpell({ debuff = {1543, 3}, recast = true, })
self:newSpell({ playerbuff = {1543, 3}, minstacks = 2, })
self:newSpell({ slotID = 14, internalcooldown = 45, })
self:newSpell({ debuff = {1543, 3}, unique = true, })
self:newSpell({ debuff = {1543, 3}, keepIcon = true, })
self:newSpell({ debuff = {1543, 3}, icon = 1544, })
self:newSpell({ cooldown = 1543, smallCooldown = true, })
self:newSpell({ cooldown = 1543, smallCooldown = true, requiredGlyph = 12456, })
self:newSpell({ cooldown = 1543, smallCooldown = true, requiredTree = 3, })
self:newSpell({ cooldown = 1543, smallCooldown = true, requiredTree = {0,1,3}, })
self:newSpell({ cooldown = 1543, smallCooldown = true, requiredLevel = 84, })
self:newSpell({ cooldown = 1543, smallCooldown = true, stance = 1, })
self:newspell({ cooldown = 1543, smallCooldown = true, stance = {0, 1, 4}, })
File Name |
Version |
Size |
Author |
Date |
Type |
2.3e |
78kB |
11-10-14 11:20 PM |
Addon |
||
v1.9.3 |
71kB |
11-05-10 07:02 AM |
Patch |
Comment Options |
Brusalk |
View Public Profile |
Send a private message to Brusalk |
Find More Posts by Brusalk |
Add Brusalk to Your Buddy List |
Brusalk |
View Public Profile |
Send a private message to Brusalk |
Find More Posts by Brusalk |
Add Brusalk to Your Buddy List |
08-29-12, 06:13 PM | |
A Kobold Labourer
Forum posts: 0
File comments: 4
Uploads: 0
|
Interface bugged
Hi there,
I am an absolute fan of this mod and its great to see its return Brusalk. However my interface icons is still completly bugged for my shadow priest. any way I can fix this? |
|
sahasraka |
View Public Profile |
Send a private message to sahasraka |
Find More Posts by sahasraka |
Add sahasraka to Your Buddy List |
08-29-12, 05:55 PM | ||
|
Re: Re: Shadow Word: Pain
|
|
|
plumwd |
View Public Profile |
Send a private message to plumwd |
Visit plumwd's homepage! |
Find More Posts by plumwd |
Add plumwd to Your Buddy List |
08-29-12, 05:51 PM | |
A Kobold Labourer
Forum posts: 0
File comments: 7
Uploads: 0
|
Relentless nag
Hey sorry to nag Brusalk, did you see my earlier post? I don't mind if it's a WIP but I wonder if you'd be able to confirm what I'm seeing is fairly normal, or perhaps the config is designed to work at 90. Maybe I'll just play my druid for a bit (which works perfectly)
I'm totally lost without a working EH on my fire mage! loving your work and can't wait for what you have in store.
Last edited by 1exi : 08-29-12 at 05:54 PM.
|
|
1exi |
View Public Profile |
Send a private message to 1exi |
Visit 1exi's homepage! |
Find More Posts by 1exi |
Add 1exi to Your Buddy List |
08-29-12, 05:37 PM | ||
A Kobold Labourer
Forum posts: 0
File comments: 4
Uploads: 0
|
Edit: NOT SO FAST! when ever I switch to unholy it flips out. [ Code:
Message: Interface\AddOns\EventHorizon\EventHorizon.lua:1594: table index is nil Time: 08/29/12 16:45:58 Count: 10 Stack: Interface\AddOns\EventHorizon\EventHorizon.lua:1594: in function `Activate' Interface\AddOns\EventHorizon\EventHorizon.lua:2340: in function `CreateSpellBar' Interface\AddOns\EventHorizon\EventHorizon.lua:1804: in function `CheckRequirements' Interface\AddOns\EventHorizon\EventHorizon.lua:1611: in function <Interface\AddOns\EventHorizon\EventHorizon.lua:1606> Locals: self = <unnamed> { 0 = <userdata> Activate = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1586 UNIT_AURA_refreshable = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1149 AuraFunction = <function> defined =[C]:-1 RemoveChannelTicksAfter = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1008 UNIT_SPELLCAST_CHANNEL_START = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:807 Deactivate = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1572 PLAYER_EQUIPMENT_CHANGED = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1421 RemoveTicksAfter = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:996 OnUpdate = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:749 UpdateDoT = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1231 isType = "debuffmine" NotInteresting = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:632 UNIT_SPELLCAST_CHANNEL_UPDATE = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:837 BAG_UPDATE_COOLDOWN = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1364 indicators = <table> { } UNIT_SPELLCAST_START = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:807 UNIT_SPELLCAST_SENT = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:801 UNIT_SPELLCAST_DELAYED = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:837 Remove = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:731 auraunit = "target" PLAYER_REGEN_ENABLED = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1350 AddIndicator = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:653 UNIT_SPELLCAST_STOP = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:852 UNIT_AURA = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:865 interestingEvent = <table> { } interestingCLEU = <table> { } UPDATE_MOUSEOVER_UNIT = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1522 COMBAT_LOG_EVENT_UNFILTERED = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1091 FindItemInfo = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:637 icon = <unnamed> { } UNIT_SPELLCAST_CHANNEL_STOP = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:852 AddSegment = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:721 SPELL_UPDATE_COOLDOWN = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1364 stacks = <unnamed> { } } (*temporary) = <table> { Shadow Infusion = <unnamed> { } Blood Plague = <unnamed> { } Frost Fever = <unnamed> { } Sudden Doom = <unnamed> { } } (*temporary) = nil (*temporary) = "UNIT_SPELLCAST_SENT" (*temporary) = nil (*temporary) = <table> { UNIT_SPELLCAST_SENT = true } (*temporary) = nil (*temporary) = "UNIT_SPELLCAST_SENT" (*temporary) = "table index is nil" mainframe = <unnamed> { 0 = <userdata> UPDATE_SHAPESHIFT_FORM = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1831 COMBAT_LOG_EVENT_UNFILTERED = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1940 PLAYER_LEVEL_UP = <function> defined @Interface\AddOns\EventHorizon\EventHorizon.lua:1603 framebyspell = <table> { } PLAYER_SPECIALIZATION_UPDATE = <function> defined @Interface\AddOns\EventHorizon\EventHorizo
Last edited by xhunterzero34 : 08-29-12 at 05:48 PM.
|
|
|
xhunterzero34 |
View Public Profile |
Send a private message to xhunterzero34 |
Visit xhunterzero34's homepage! |
Find More Posts by xhunterzero34 |
Add xhunterzero34 to Your Buddy List |
08-29-12, 05:34 PM | |||
A Kobold Labourer
Forum posts: 0
File comments: 5
Uploads: 0
|
I take it xhunterzero34 that you're a Blood DK? Try modifying your DK Config to use this instead: Code:
-- Blood tree (no requiredTalent entries until trees are more solid) -- Rune Tap self:NewSpell({ spellID = 48982, cooldown = 48982, requiredTree = 1, }) -- Vampiric Blood self:NewSpell({ spellID = 55233, playerbuff = true, cooldown = 55233, requiredTree = 1, }) -- Bone Shield self:NewSpell({ spellID = 49222, playerbuff = true, cooldown = 49222, requiredTree = 1, }) -- Dancing Rune Weapon self:NewSpell({ spellID = 49028, cooldown = 49028, requiredTree = 1, }) |
||
|
RAruler |
View Public Profile |
Send a private message to RAruler |
Visit RAruler's homepage! |
Find More Posts by RAruler |
Add RAruler to Your Buddy List |
08-29-12, 05:28 PM | ||
|
That means that for some reason none of the bars are showing for you. Are you using the most recent version of EventHorizon, including the death knight config? Are you getting any Lua errors in your UI related to EventHorizon? For some reason somethings gone drastically wrong. |
|
|
Brusalk |
View Public Profile |
Send a private message to Brusalk |
Visit Brusalk's homepage! |
Find More Posts by Brusalk |
Add Brusalk to Your Buddy List |
08-29-12, 05:25 PM | |
A Kobold Labourer
Forum posts: 0
File comments: 4
Uploads: 0
|
Oh hi! I'm having a much different error than others in this thread when ever I try to use even horizon I end up with this.
Is this something I have to fix in my Death knight config lua? or general config.lua? |
|
xhunterzero34 |
View Public Profile |
Send a private message to xhunterzero34 |
Visit xhunterzero34's homepage! |
Find More Posts by xhunterzero34 |
Add xhunterzero34 to Your Buddy List |
08-29-12, 05:25 PM | ||
|
Re: Shadow Word: Pain
|
|
|
Brusalk |
View Public Profile |
Send a private message to Brusalk |
Visit Brusalk's homepage! |
Find More Posts by Brusalk |
Add Brusalk to Your Buddy List |
08-29-12, 04:00 PM | |
|
Shadow Word: Pain
Thanks for the quick fix last night, have it looking beautiful again!
My only question is, Shadow Word: Pain is no longer refreshed by Mind Flay. What needs to be updated so that it shows when the dot drops off? Here's a pic of what I mean, in the example you can see where it ends, but I'd like that to be more apparent like when VT wears off. |
|
plumwd |
View Public Profile |
Send a private message to plumwd |
Visit plumwd's homepage! |
Find More Posts by plumwd |
Add plumwd to Your Buddy List |
08-29-12, 03:41 PM | ||||||
|
Re: Re: Re: Devouring Plague
NewSpell() is the current version of EHs spec config. newSpell() is the somewhat implemented new version of EHs spec config which is somewhat converted back to NewSpell(). Code:
--Mind Flay/Sear + SW:D + Melt stacks self:newSpell({ channel = {{48045,0},{15407,0}}, cooldown = 32379, buff = 81292, refreshable = true, requiredTree = 3, stance = 1, })
Code:
self:newSpell({ channel = {{103103, 4}, {1120, 6}}, })
Files There are 2 files which you can edit to change the physical appearance of EventHorizon including colors, size, global functionality and other things. I'm going to assume that you have the most recent version of the configuration file provided in the most recent version of EventHorizon. config.lua: You can think of this as the default settings of EventHorizon. If you want to change settings then you can do so here, but when you download a new version of EventHorizon you have to be careful as the new version includes config.lua and will overwrite any changes you've made to this file. You can always skip this file when overwriting, but it's better to use myconfig.lua as it's intended to avoid this problem. myconfig.lua: This file overwrites any values in config.lua with the values changed inside it. So if you have config.width set to 375 in config.lua and config.width set to 200 in myconfig.lua, EventHorizon will use 200 as the value. Where this is useful is that myconfig.lua is never included in the updated versions of EventHorzion, and as such will never be overwritten when downloading a new version of EventHorizon. As such best practice is to alter any values you wish to change in config.lua by changing the values inside myconfig.lua. Configuration In order to change settings of something you just have to change the text after the equals sign on the line with the setting you want to change. For example if you wanted to change the width of the addon you would change line 33 which normally reads (by default) Code:
config.width = 375 -- Width of a single bar.... Code:
config.width = 200 -- Width of a single bar.... Other variables are well explained in the text which comes after the -- on the lines respective to their variables. Best practice would be to have open config.lua and myconfig.lua at the same time. Then for any changes you want to make to EventHorizon that you do not want to change you add into myconfig.lua on a new line the line you want to change by copy and paste, and then change the value to what you want. This way when you update EventHorizon you do not lose all your configuration options It may seem complicated at first, and you can completely skip the step with myconfig.lua if you want, but once you understand it it's very simple to do The default myconfig.lua with no variable changes inside it should have the following at the top of the file before any variable changes: Code:
local EHN,ns = ... local config = EventHorizon.config local c = EventHorizon.colors local _,class = UnitClass('player') -- These locals make in-line conditions a little easier. See the color section for a few examples. local DK = class == "DEATHKNIGHT" local Druid = class == "DRUID" local Hunter = class == "HUNTER" local Mage = class == "MAGE" local Paladin = class == "PALADIN" local Priest = class == "PRIEST" local Rogue = class == "ROGUE" local Shaman = class == "SHAMAN" local Warlock = class == "WARLOCK" local Warrior = class == "WARRIOR" --[[ EDIT BELOW THIS LINE ]]--
And you're correct I'm a tad more receptive to people who are civil, but I'll make my best effort to help those that have had a bad day -Brusalk (Bronzebeard-US) |
|||||
|
Brusalk |
View Public Profile |
Send a private message to Brusalk |
Visit Brusalk's homepage! |
Find More Posts by Brusalk |
Add Brusalk to Your Buddy List |
08-29-12, 03:41 PM | |
A Kobold Labourer
Forum posts: 0
File comments: 7
Uploads: 0
|
Love EH
Hi there
I love EH, have been using it since Wrath and it's easily the best addon of all time. OF ALL TIME! Anyway it's working perfectly on my feral druid, but I seem to be having issues with my Fire Mage. I've played around with the configs before and pretty familiar with how it all works, but I'll be buggered if I can get it all working for my fire mage. a) Living bomb does not appear to be showing despite deleting the requested line in the config file. b) Inferno Blast does not seem there either. c) a few other little odds and ends, it just looks a bit wonky, whereas my feral druid is perfect. beyond perfect, it's better than it's ever been. Any advice would be amazing, I really do love this addon and all the work you must have put into it. |
|
1exi |
View Public Profile |
Send a private message to 1exi |
Visit 1exi's homepage! |
Find More Posts by 1exi |
Add 1exi to Your Buddy List |
08-29-12, 02:36 PM | ||
A Kobold Labourer
Forum posts: 0
File comments: 7
Uploads: 0
|
Re: Re: Re: Why so BIG!
Slamming an addon author who puts in his own time to make something for us is NOT the way to get things done. Brusalk - thanks for your efforts so far...looking forward to the rewrite! |
|
|
Deety99 |
View Public Profile |
Send a private message to Deety99 |
Visit Deety99's homepage! |
Find More Posts by Deety99 |
Add Deety99 to Your Buddy List |
08-29-12, 01:30 PM | |||
A Kobold Labourer
Forum posts: 0
File comments: 1
Uploads: 0
|
Re: Re: Why so BIG!
|
||
|
Lokthinarra |
View Public Profile |
Send a private message to Lokthinarra |
Visit Lokthinarra's homepage! |
Find More Posts by Lokthinarra |
Add Lokthinarra to Your Buddy List |
You have just downloaded by the author . If you like this AddOn why not consider supporting the author? This author has set up a donation account. Donations ensure that authors can continue to develop useful tools for everyone.