Can people post some screenshots of how you have Hermes setup? I am working on the design changes for bar and button layouts and I'm considering completely getting rid of the auto wrapping feature for Bars Style (I'd keep it for buttons though).

Seeing how people layout Hermes gives me a huge insight into what people want it to do.

For example, I was really surprised to far to see just how many people actually use the horizontal bar layout (bars grow left to right). I thought when I first made that feature that no one would use it but people seem to use it very often!

I've got some time this weekend due to a short raid week and I might be able to crank out some solid changes.

Just bringing up a usability feature that most people may or may not notice. The load times on Hermes are atrocious on my machine. For some background, I run a lot of addons, anywhere in the neighborhood of 150-200. So load times end up mattering a bit to me; 0.1 seconds times 200 addons is a solid 20 seconds of load time. I ran into a pretty big issue a month or two ago where one addon (Elkano's BuffBars) was using an old Broker implementation that caused every addon that had a Broker plugin to take 1-2 seconds to load. You can imagine what that did to my load times.

Since then, I've monitored addon load time pretty carefully. I use Warmup to see how much time each addon takes to load (you'll have to make the edits mentioned in the comments to get it to work in 4.x). Most addons take less than 0.1s each, with one or two at around 0.2s. However, there are still three addons that seem to be pretty slow:

2.890s Hermes2.499 RaidBuffStatus0.980 MountedEverything else <0.1s

I'm not sure what could be causing it, but keep in mind that "everything else" includes some addons with pretty heavy data allocations; things like Auctionator, TSM, RatingBuster, Recount, Pitbull, etc. Many of those load 2-8 MB worth of data, and still load in under 100ms. My guess is that it's just doing something incredibly inefficient at load time that it probably doesn't need to.

<update> It seems to be an intermittant problem. Most of the time, it clocks in at around 3 seconds, but I've had one or two occasions where I've switched from one alt to another and it didn't take any appreciable time. I'm not sure what exactly caused the speedy load though.

theckhd wrote:<update> It seems to be an intermittant problem. Most of the time, it clocks in at around 3 seconds, but I've had one or two occasions where I've switched from one alt to another and it didn't take any appreciable time. I'm not sure what exactly caused the speedy load though.

I've never done much wow addon development, but I would assume that the game caches addons and doesn't clear that cache until the game is exited, so if you log out to change characters your addons shouldn't reload. Of course that's all assumption...

Thanks Theck. I'll send you a PM for some thoughts, ideas and questions. Thanks for helping!

Changing topics:I've spent the last two days deciding what I wanted to do regarding the UI and the features people are asking for. The two BIGGEST requests are:

1. Allow merged abilities.2. Get rid of dead space caused by the way the Bars Style display uses a fixed amount of bars.

Both of these actually have significant technical issues with the current UI design. Namely, they prohibit the drag and drop functionality as exists today. Which to me is a HUGE bummer. I really love the drag and drop as it makes things so easy to configure. It's hard to explain why, but it has to do with the fact that today, each "cell" is a fixed size. And as soon as I get rid of dead space it means the cell sizes can change while dragging. And this is a huge problem to solve.

My Solution:I'm essentially redesigning the DefaultUI to be more flexible, and extensible. Right now we have a concept of containers, and in the config you choose the "Style" (Buttons or Bars). When I'm done with the redesign, I'll be introducing a concept called "Views". Each container is assigned one of numerous views. Views are actually modules, they maintain their own configuration, and they are each completely separate pieces of code.

This will be a boost in code quality, stability, and opportunity. I will be able to add views in the future without affecting anything else in the addon. For example, I'll have some merged views, button views, bar views, and I have a few other ideas as well.

However, this means that drag and drop will have to go away. I'll have to replace it with a more traditional ordering config of some type.

This change brings other benefits however. You'll also be able to put a single spell into more than one container. For example, if you want a container with a merged button view holding all of the battle res spells, you'll still be able to put individual battle res spells in another container if you so choose.

When I release this, I will be releasing it as a plugin for Hermes. This means you can continue to use the Default UI if it meets your needs. But if not, you can try this other UI.

a way of getting around the loss of drag and drop could be that you define areas and call them numbers. You could then tell the addon which area to place the spell in. I don't know how hard this would be to implement (or even if it is possible)

This would group Revive, Raise Ally and Soulstone Resurrection in cell 1, DG and PW:Barr in cell 2, LoH in group 3, SThrow in 4, tide in 5 and innervate in 6

To exclude a spell put [0] in the cell.

The cells would need to change their size dynamically according to the amount of players and spells in each one, could be a problem.

--------------

Aside from this:

One feature that seems absent (or maybe I have simply not found it) is automatically hiding spells from classes that are currently not in the group and thus do not need to be tracked. If our deathknight gets swapped out for a boss I do not need to know his combat res would be ready, were he in the instance and going into the config to un-tick the box next to raise ally every time this happens is, while uncommon enough, rather long winded.

Pyrea wrote:One feature that seems absent (or maybe I have simply not found it) is automatically hiding spells from classes that are currently not in the group and thus do not need to be tracked. If our deathknight gets swapped out for a boss I do not need to know his combat res would be ready, were he in the instance and going into the config to un-tick the box next to raise ally every time this happens is, while uncommon enough, rather long winded.

Hermes has a few tools to help with this. There are a couple of options for hiding unavailable senders. If someone is out of range (such as not being in the zone) the ability will hide itself. I'm not sure this works exactly how people want it to work though as I think (from memory) it'll hide dead people too and that may not be what people want.

A feature I should add, which I've seen other addons use, is one where people not in groups 1 and 5 are ignored for 25 man, and similar pattern for 10 man. Seems like a good idea to me.

inthedrops wrote:If someone is out of range (such as not being in the zone) the ability will hide itself. I'm not sure this works exactly how people want it to work though as I think (from memory) it'll hide dead people too and that may not be what people want.

One caveat is displaying BR of dead druid/warlock/DK to know if they can be used in a ress chain, comes to mind.

I was going to post a UI of the fixed properly configured bars (duh I'm an idiot), but raid was called on account of people not hating their fathers enough.

Unless I wasn't able to find it, adding an option to use the default tooltip anchor (most tooltip addons can configure the location of this), as opposed to having it be at the cursor, would be nice. It's a personal preference type thing, but I find a tooltip at the cursor in the middle of combat to be more distraction than anything else.

Yelena wrote:Unless I wasn't able to find it, adding an option to use the default tooltip anchor (most tooltip addons can configure the location of this), as opposed to having it be at the cursor, would be nice. It's a personal preference type thing, but I find a tooltip at the cursor in the middle of combat to be more distraction than anything else.

By the way, if you have Lay on Hands glyphed and have the standard duration set to automatic, the base cooldown is set to 420 seconds instead of 600 which screws a bit with the timers of people without the glyph. I had to set LoH's CD manually to 600 seconds before the cooldown timers matched what I should have been seeing.

Pyrea wrote:By the way, if you have Lay on Hands glyphed and have the standard duration set to automatic, the base cooldown is set to 420 seconds instead of 600 which screws a bit with the timers of people without the glyph. I had to set LoH's CD manually to 600 seconds before the cooldown timers matched what I should have been seeing.

I might remove the auto feature. I think i does more harm than good to be honest. What you did was exactly the expected behavior. I just think it causes more confusion than real benefit.

Last edited by inthedrops on Tue Jun 21, 2011 7:20 pm, edited 1 time in total.

If you use Button style containers, there's a bug in v2.2 you might want to fix until I push another release. The issue is that any prior timer on the button won't go away when it's supposed to sometimes.

Make sure to apply the fix mentioned a couple posts back as well, or the timer will show on the buttons when it's not supposed to

I'm making real good progress on the new UI replacement. Here's my current project plan:

Extend Hermes API:Release new version of Hermes that contains the API additions required for my new, extremely flexible, easier to maintain, and hopefully less overwhelming UI.

Replace DefaultUI with Buttons Style UI:This will be the only UI that ships with Hermes moving forward. It'll act just like the current Buttons Style containers shipped with the DefaultUI today (drag and drop, auto-wrapping buttons with tooltips). No more bars!

Make current DefaultUI a separately downloaded plugin:It will no longer ship with Hermes. Maintain as necessary but no major feature enhancements moving forward.

Introduce new UICreate a NEW plugin for the new UI I'm working on. Give it a meaningful name. This will be the UI that many of us actually end up using. I should warn you, it'll definitely be less "easy" to configure in regard to setting up spells and the ordering of spells. But it opens up huge opportunities to create true custom "Views" (e.g. Buttons Style, Bars Style, Merged, etc). I'll be able to do pretty much anything without affecting existing Views.

It's more complex mostly due to the capability of having a spell belong to more than one View. This adds some slightly confusing spell setup that doesn't exist today.

Summary:There are a lot of reasons for this plan. Most have to do with improving first time users quality of life, software maintenance and support, current design constraints, and an improved level of quality moving forward. By breaking things out this way, I will be able to be much more responsive to enhancements and bug fixes without requiring such a significant testing effort.

Here's a progress update so you can get a sense for where I'm going. Keep in mind, everything you're seeing below is part of the new UI I'm creating which has a modular approach to displaying data. See my project plan above for what I intend to do with existing UI's.

I have no ETA on anything. Right now, I've only ported the Buttons Style UI to a View, which weeded out most of the design. I haven't touched the Bars yet and they're going to be a pain in the butt.

Hide spells without sender means that people not in the group or (possible) in range will not get cooldowns displayed.Merge spells into one button mean that you only have one button which saves screen estate.