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,119 |
Favorites: | 380 |
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 |
Everdreamer |
View Public Profile |
Send a private message to Everdreamer |
Find More Posts by Everdreamer |
Add Everdreamer to Your Buddy List |
Taroven |
View Public Profile |
Send a private message to Taroven |
Find More Posts by Taroven |
Add Taroven to Your Buddy List |
Everdreamer |
View Public Profile |
Send a private message to Everdreamer |
Find More Posts by Everdreamer |
Add Everdreamer to Your Buddy List |
Taroven |
View Public Profile |
Send a private message to Taroven |
Find More Posts by Taroven |
Add Taroven to Your Buddy List |
SlayerIssac |
View Public Profile |
Send a private message to SlayerIssac |
Find More Posts by SlayerIssac |
Add SlayerIssac to Your Buddy List |
10-26-10, 09:34 AM | |
A Kobold Labourer
Forum posts: 1
File comments: 34
Uploads: 0
|
Thanks for this amazing addon.
I am wondering what you need to change in the lua file to get a transparent background? |
|
artiq |
View Public Profile |
Send a private message to artiq |
Find More Posts by artiq |
Add artiq to Your Buddy List |
10-26-10, 09:43 AM | ||
|
config.backdrop = nil |
|
|
Taroven |
View Public Profile |
Send a private message to Taroven |
Find More Posts by Taroven |
Add Taroven to Your Buddy List |
10-27-10, 11:11 PM | |
|
v1.9.2 has been uploaded. This release marks a switch from SVN to Git (link in sig), and some pretty intense changes to the packaging script I use. Feel free to use the issue tracker and other utilities if you like.
Anyway, this one adds the NewSpell recast flag, which can add recast segments to any bar with a cast time. Sometime in the next release or two I'll expand on the syntax to allow some conditions to be set, for now it just tries to keep track of the last spellcast tracked by that bar. Not entirely sure if any class changes made it into this one from r378. Prot Paladin bars may have a tweak or two though. I'll try to make some adjustments over the next week or so, but no promises on a timely release. Turns out I'm moving over the weekend instead of Monday, so we'll see what happens. Changelog: Code:
v1.9.2: Switched to Git, revision numbers go byebye. * Core: Added a 'recast' NewSpell flag. 'recast = true,' (or really anything but nil/false) will force the recast segment to show for any aura on the bar. * Core: Recast lines will try to use the most recent tracked spellcast. (see note) * Probably some more fixes and changes here and there, but not many. Been focusing on getting things set up with the new repository. Note: Let's say a bar is tracking a proc and two spells with differing cast times, with the recast flag on. The following situation may happen: 1 - Begin a 1.5 second cast (which procs the aura) 2 - Cast completes and spell's in the air. Begin a 3 second cast (which doesn't proc the aura) 3 - The procced aura appears with a 3 second recast segment, which probably isn't what you wanted to see. I'll be adding a way to set which casts affect the recast duration in a later release, probably in v1.9.2. For now I don't believe it'll be a huge issue to leave it as is. |
|
Taroven |
View Public Profile |
Send a private message to Taroven |
Find More Posts by Taroven |
Add Taroven to Your Buddy List |
10-28-10, 01:21 AM | |
|
Still the best dot-timer ever made. Thanks again for all your hard work Taroven, I can't imagine playing my feral without this mod. Good luck on your move!
|
|
Kogasu |
View Public Profile |
Send a private message to Kogasu |
Find More Posts by Kogasu |
Add Kogasu to Your Buddy List |
10-31-10, 08:54 AM | |
A Kobold Labourer
Forum posts: 0
File comments: 1
Uploads: 0
|
Hi, I'm gettin a error message on my warrior when someone else in group or raid uses a shout (battle/commanding)
"Interface\AddOns\EventHorizon\EventHorizon.lua:662: bad argument #1 to 'unpack' (table expected, got nil) Time: 10/29/10 21:03:11 Count: 12 Stack: [C]: in function `unpack' Interface\AddOns\EventHorizon\EventHorizon.lua:662: in function `AddIndicator' Interface\AddOns\EventHorizon\EventHorizon.lua:680: in function `AddSegment' Interface\AddOns\EventHorizon\EventHorizon.lua:1177: in function `UpdateDoT' Interface\AddOns\EventHorizon\EventHorizon.lua:913: in function `UNIT_AURA' Interface\AddOns\EventHorizon\EventHorizon.lua:558: in function `f' Interface\AddOns\EventHorizon\EventHorizon.lua:469: in function <Interface\AddOns\EventHorizon\EventHorizon.lua:465> Locals: (*temporary) = nil (*temporary) = "table expected, got nil" " |
|
Lazaruz |
View Public Profile |
Send a private message to Lazaruz |
Find More Posts by Lazaruz |
Add Lazaruz to Your Buddy List |
10-31-10, 11:35 AM | |
A Kobold Labourer
Forum posts: 0
File comments: 3
Uploads: 0
|
Hunter Pets
You probably have already heard this, but the Frenzy stack counter for BM Hunter pets doesn't properly track the stacks. It shows up in the bars and such with the right icon, but nothing happens to it so I guess it's a problem with the core code or something.
Granted, this isn't really as important now with Blizzard's new default implementation of Power Aura. |
|
SlayerIssac |
View Public Profile |
Send a private message to SlayerIssac |
Find More Posts by SlayerIssac |
Add SlayerIssac to Your Buddy List |
11-02-10, 09:49 AM | |
A Kobold Labourer
Forum posts: 0
File comments: 1
Uploads: 0
|
I've been trying to add improved soul fire bar and here's what i have so far:
Code:
-- Improved Soul Fire self:NewSpell({ spellID = 6353, playerbuff = 85385, cast = true, requiredTree = 3, }) Any help would be appreciated
Last edited by Devourer : 11-02-10 at 09:51 AM.
|
|
Devourer |
View Public Profile |
Send a private message to Devourer |
Find More Posts by Devourer |
Add Devourer to Your Buddy List |
11-02-10, 02:59 PM | |
|
Alright, finally got internet access after the move. Almost back in business.
Lazaruz: I'll take a look, thanks for the report. SlayerIssac: I hadn't heard actually. Pretty sure I know what's going on with that, but I'll have to mess around with it a bit to be sure. Devourer: Check the changelog. Adding 'recast = true,' (no quotes, of course) will get it to do that. |
|
Taroven |
View Public Profile |
Send a private message to Taroven |
Find More Posts by Taroven |
Add Taroven to Your Buddy List |
11-04-10, 04:47 PM | |
|
Holy crap for changelogs. v1.9.3 is nearly ready.
TLDR version: * Tick detection has improved. A lot. Jumpy and inaccurate ticks should be a thing of the past. * Shadow Priests, Feral and Resto Druids, and Hunters all got overhauled. Most of the changes are based purely on user input - Please spend at least ten minutes in a complete rotation against a target dummy if you're considering a complaint. * A quick hack has made Redshift usable regardless of settings in config.lua. Just type /ehz redshift and you're all set. You may need to repeat the command once or twice when enabling Redshift in this manner. * The current version of Vitals probably won't load with this one. My local copy does work, just need to make a few quick adjustments before releasing either addon. Code:
v1.9.3: Mmm, ticks. And math. And updates. * Core: Tick detection has been completely rewritten and is nearly 100% accurate. I'll spare the details here, check beta comments for how it all works. * Core: Added a NewSpell flag, 'smallCooldown', indended to improve visibility of certain auras without removing their cooldowns. See the Priest config (Devouring Plague bar) for usage. * Core: Redshift may now be enabled via slash command when disabled via config.lua. (see note) * Core: Single spell stack numbers (or spells that show a single stack for no reason) are no longer displayed. * Core: Recast lines were using some incorrect info in certain conditions. * Core: Buffs cast by other players should no longer cause EH to panic. * Core: Various module API refinements, little fixes across the board, and probably a lot of stuff I haven't mentioned in the changelog so far. * Config: Added a new entry for use with the tick-related changes, nonAffectingHaste = {spellID,multiplier} or {{spellID,multiplier},{spellID,multiplier},...}. - Warlocks seem to be the only ones needing this at present. If you find other spells affecting cast haste but not tick haste, and your ticks are improperly calculated because of it, by all means let me know. * Config: Added a new entry to the layout section for the smallCooldown NewSpell flag. * Druid: Removed Omen of Clarity across all specs. Revive used as haste comparison. - Feral/Cat: Bars reorganized to better reflect priorities. - Feral/Bear: Added Swipe CD to Pulverize. Enrage removed (commented out if you prefer seeing it). - Balance: Shooting Stars added to Starsurge. - Resto: Tweaks a'la malsudon. + Moved Swiftmend cooldown to the Rejuvenation bar. + Added Nature's Swiftness cooldown to the casted heals bar. + Added Tree of Life. * Mage: Conjure Refreshment used as haste comparison. * Hunter: Steady/Cobra bar now tracks Improved Steady Shot (with recast segment). - BM: Usability tweaks. + Frenzy bar now tracks Focus Fire cooldown, Focus Fire buff is no longer tracked (same CD as buff time). + Killing Streak is now shown on Kill Command as originally intended. - Marks: Aimed Shot cast and Master Marksman buffs moved to Chimaera Shot bar. * Paladin: Redemption used as haste comparison. * Priest: Resurrection used as haste comparison. - All specs: Evangelism and Archangel folded into a single bar. - Shadow: Please spend some time on the target dummy to get used to the changes. Most will find the layout more intuitive than it has been in recent releases. + Moved Shadowfiend CD to the Devouring Plague bar. Uses the new smallCooldown flag to improve usability. + Filler separated into two bars. Cast filler tracks Mind Melt buff, channel filler tracks Shadow Orbs. + Moved Shadow Word: Death CD to the channel filler bar. * Shaman: Ancestral Spirit used as haste comparison. * Warlock: Create Healthstone used as haste comparison. Eradication defined as not affecting DoT haste. Redshift note: You may need to repeat the command a couple of times due to an elusive little glitch, but the settings stick between login/reloadui without further issues. Redshift remembers your last enableRedshift setting from config.lua. If that's changed, Redshift will default to whatever the new setting is. |
|
Taroven |
View Public Profile |
Send a private message to Taroven |
Find More Posts by Taroven |
Add Taroven to Your Buddy List |
11-05-10, 03:06 PM | |
|
When I saw the changenotes I was a little O_O at the eradication note, I never consider that it might not effect dot haste- however agreed that it does make sense in the context of the tooltip.
So anyway, I decided to test it; eradication does effect dot haste. |
|
Warlocomotif |
View Public Profile |
Send a private message to Warlocomotif |
Find More Posts by Warlocomotif |
Add Warlocomotif 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.