Download
(10Kb)
Download
Updated: 02-12-10 03:48 PM
Pictures
File Info
Updated:02-12-10 03:48 PM
Created:11-08-09 12:33 PM
Downloads:677,874
Favorites:451
MD5:

SnowfallKeyPress  Popular! (More than 5000 hits)

Version: 1.4
by: Dayn [More]

*** Version 1.6.1 is temporarily unavailable while I work on a new version. In the interim, you can still download version 1.4. ***

This addon accelerates key bindings so that they are activated by key press rather than key release. This allows you to activate your abilities faster than you could otherwise. This can really make a difference for situations where you need to react quickly, like when casting heals, when dispelling, when interrupting spells, or in PvP. In these situations, the addon can have an effect similar to reducing your network latency by 100ms. Of course, the exact impact depends entirely upon how much time you personally spend between key press and release.

"Dude, this addon is going to increase my DPS by so much!" No, it's not. DPS rotations (or even priority systems) are not to any great extent affected by latency. Because they're predictable, good players can anticipate what's coming next and compensate for latency. In fact, if you're a good player who is already compensating for the press-to-release latency, you may actually find that your DPS goes down when you first use this addon until you learn to readjust to the reduced latency. Find a target dummy and practice your rotation until you're comfortable with the changed timing.


Configuration

There is an in-game configuration GUI accessible through the usual Options->Interface->Addons menu. From this panel, you can add or remove keys and mouse buttons to be accelerated. You can also globally enable or disable all key acceleration.

The GUI provides exceptionally fast entry--you can enter your whole keyboard in seconds and all your mouse buttons in a few more seconds. The easiest way to understand this GUI is to start by hitting the "Clear All" button and then adding and removing some keys. In order to add just one key or mouse button, hover over the "+" button and type the key or press the mouse button (including whatever modifiers you desire). In order to remove that key, hover over the "-" button and type that same key with its modifiers. In order to enter all 8 of a key's modified and unmodified combinations with just one key press, hover over the "+ (Modifiers: All)" button and type the key.

If you want to do mass entry of modified and unmodified keys and mouse buttons, hit the "Clear All" button. Then hover over the "+ (Modifiers: All)" button and face-roll your way across keyboard and mouse buttons. You're done.

The default configuration accelerates all the modified and unmodified keys on a standard 104-key US keyboard (except PRINTSCREEN) plus mouse buttons 3-5. If you'd like to get back to this configuration at any time, simply hit the "Reset To Defaults" button.


Mouse Buttons

SnowfallKeyPress accelerates key bindings of mouse buttons, but it doesn't accelerate mouse button clicks that interact directly with frames without any associated key binding. This means that although SnowfallKeyPress is compatible with click-casting addons like Clique and Vuhdo, it won't accelerate their mouse clicks. Vuhdo already provides its own mouse click acceleration, though, and perhaps Clique will at some point, as well. Until then, you can add support yourself by navigating to Interface\Addons\Clique, editing Clique.lua and CliqueOptions.lua, searching for instances of "AnyUp", and replacing them with "AnyDown".

Mouse scroll-wheel bindings do not need any acceleration, so don't be concerned that SnowfallKeyPress offers no way to accelerate them. Each "tick" of the mouse scroll wheel is, in effect, already a simultaneous press and release.

================================================================================
1.6.1 - 1/2/2010

Fixed a bug that may have affected compatibility with override bindings that some addons were applying.



================================================================================
1.6 - 12/20/2009

Reduced the size of the default button animation by 25%, which should help keep it from obscuring other indicators on buttons.

Added the ability for other addons to customize the SnowfallKeyPress button animations. An example is included.

Removed the deprecated Lua configuration capability (the SnowfallKeyPressSettings folder). This functionality was superseded by the in-game GUI in version 1.2, so it's not needed any longer.



================================================================================
1.5.1 - 12/14/2009

Fixed a bug introduced in 1.5 that was throwing a lua error with OPie.



================================================================================
1.5 - 12/12/2009

Added button press animations (enable or disable through the configuration panel).

Made some infrastructure changes that should be invisible to the user, but which should improve compatibility with addons written in the future that may have more complex behaviors than we generally see in addons today.

Reduced the memory footprint of the code.



================================================================================
1.4 - 12/8/2009

Updated the interface version to 30300 (patch 3.3).

No functional changes.



================================================================================
1.3 - 12/4/2009

Fixed a minor error introduced in 1.2 that was causing some people problems with Bartender4.



================================================================================
1.2 - 11/28/2009

Added an in-game configuration GUI accessible through the usual Options->Interface->Addons menu.



================================================================================
1.1 - 11/25/2009

Added complete support for Dominos and Bindpad. At this time, there are no known incompatibilites with any addons.

Added a user configuration file to control which keys are accelerated.



================================================================================
1.0 - 11/15/2009

First full release version.
Post A Reply Comment Options
Unread 01-25-10, 12:19 AM  
hid
A Kobold Labourer

Forum posts: 1
File comments: 40
Uploads: 0
ButtonFacade animation support

I hate doing this, but after trying to fiddle around with it myself for a few hours to no avail (your code is pretty obfuscated, no offence :P) I gave up and came here.

I, like some other people I've seen in these comments would like to request a way to add support for (bartender +) ButtonFacade keypress animations in this addon. I'm just too used to the keypress feedback given by my ButtonFacade style/setup, and trying to "re-learn" it with your star animation is proving difficult.

Really appreciate your work, and I hope you won't get too annoyed at my "feature request"!
Report comment to moderator  
Reply With Quote
Unread 01-25-10, 10:32 AM  
Dayn
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 69
Uploads: 6
Re: ButtonFacade animation support

Hi Hid,

What you'd like to do should be possible using the custom animations facility of SnowfallKeyPress. Have a look at the SnowfallKeyPressAnimation folder. It sounds like you're pretty capable with addon editing, so I'll just try to give you some ideas. You'd probably want to simply call button:SetButtonState("PUSHED") from your SnowfallKeyPress animation handler (instead of having the star animation). You'd also want some means of setting the state back to normal after a delay, so you could either use Blizzard's animation system as a timer with OnFinished as a callback handler, or you could create an OnUpdate function as the timer (probably less efficient). Then when the timer expired, you could call button:SetButtonState("NORMAL").
Report comment to moderator  
Reply With Quote
Unread 01-26-10, 07:13 AM  
hid
A Kobold Labourer

Forum posts: 1
File comments: 40
Uploads: 0
Re: Re: ButtonFacade animation support

Originally posted by Dayn
Hi Hid,

What you'd like to do should be possible using the custom animations facility of SnowfallKeyPress. Have a look at the SnowfallKeyPressAnimation folder. It sounds like you're pretty capable with addon editing, so I'll just try to give you some ideas. You'd probably want to simply call button:SetButtonState("PUSHED") from your SnowfallKeyPress animation handler (instead of having the star animation). You'd also want some means of setting the state back to normal after a delay, so you could either use Blizzard's animation system as a timer with OnFinished as a callback handler, or you could create an OnUpdate function as the timer (probably less efficient). Then when the timer expired, you could call button:SetButtonState("NORMAL").
I'm an experienced coder, but not with lua (I work with perl and php mainly). With the help of your guide/tips I got the PUSHED state to work just fine via the addon, but I'm having troubles finding the event/script to use to track the key release. The "AnyUp" event isn't firing at all. This is an example of the code I'm testing with:

Code:
button:SetScript("AnyUp", function(button)
  button:SetButtonState("NORMAL")
end)
All I want is as you said, PUSHED state while the key is being held down, and NORMAL state when the key is released. I must be fucking up some pretty basic stuff here, because in my mind this SHOULD work! Any help would be appreciated.
Report comment to moderator  
Reply With Quote
Unread 01-26-10, 12:59 PM  
Dayn
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 69
Uploads: 6
Re: ButtonFacade animation support

SnowfallKeyPress doesn't track key release at all. That's why I was suggesting just building a timer and setting the button state back to normal after the timer expires (200ms is probably a reasonable time).

You could use the existing AnimationGroups in the SnowfallKeyPressAnimation example and just modify them so that they don't actually animate anything, they just represent timers. Then you could do AnimationGroup:SetScript("OnFinished", SetButtonStateNormal), where SetButtonStateNormal is a function you'd build that in turn called button:SetButtonState("NORMAL"). You'd might also want to point the "OnStop" handler to your same function.

Then you could do AnimationGroup:SetScript("OnPlay", SetButtonStatePushed), where SetButtonStatePushed is a function you'd build that in turn called button:SetButtonState("PUSHED").

On key press, then, you'd do AnimationGroup:Stop() to make sure the previous button was in its normal state, then change the button associated with that AnimationGroup, then do AnimationGroup:Play() to set the state to pushed and then back to normal after the timer expired.

When you get it working, you may want to share it with others on wowinterface. The way I've set up the custom animation facility naturally allows you to just release what you've done as an addon for others to enjoy.
Report comment to moderator  
Reply With Quote
Unread 02-13-10, 11:48 PM  
Tanque
A Kobold Labourer

Forum posts: 1
File comments: 170
Uploads: 0
In addition to being a bit more stable, v1.4 has a much smaller memory footprint than v1.6. I'm kind of glad it was rolled back.
Report comment to moderator  
Reply With Quote
Unread 02-15-10, 01:07 AM  
Gennarolol
A Kobold Labourer

Forum posts: 0
File comments: 2
Uploads: 0
Originally posted by Tanque
In addition to being a bit more stable, v1.4 has a much smaller memory footprint than v1.6. I'm kind of glad it was rolled back.
I miss the animation that it used to have
Report comment to moderator  
Reply With Quote
Unread 02-15-10, 08:42 AM  
Tanque
A Kobold Labourer

Forum posts: 1
File comments: 170
Uploads: 0
Originally posted by Gennarolol
I miss the animation that it used to have
It was nice but it was a little quirky as well. It would animate buttons that were on hidden bars.
Report comment to moderator  
Reply With Quote
Unread 02-19-10, 10:57 PM  
Oxides
A Kobold Labourer

Forum posts: 0
File comments: 77
Uploads: 0
Why don't you include the version number in any of your addons .toc files?
Report comment to moderator  
Reply With Quote
Unread 03-02-10, 12:39 PM  
Deadlycuts
A Kobold Labourer
 
Deadlycuts's Avatar

Forum posts: 0
File comments: 28
Uploads: 0
thanks a lot
Last edited by Deadlycuts : 03-03-10 at 12:24 AM.
Report comment to moderator  
Reply With Quote
Unread 03-02-10, 11:20 PM  
blizzart
A Murloc Raider
 
blizzart's Avatar
AddOn Author - Click to view AddOns

Forum posts: 5
File comments: 111
Uploads: 7
Why have this addon a so big cpu usage if a push buttons?

On my screen u can see that this addon use more then 8% off the CPU usage...
http://img717.imageshack.us/img717/5...0310061636.jpg
Report comment to moderator  
Reply With Quote
Unread 03-08-10, 10:19 AM  
willgk
An Aku'mai Servant
AddOn Author - Click to view AddOns

Forum posts: 37
File comments: 147
Uploads: 1
Yeah, this add on is causing massive stuttering after combat ends.
Report comment to moderator  
Reply With Quote
Unread 03-08-10, 05:16 PM  
SquishyMage
A Deviate Faerie Dragon

Forum posts: 19
File comments: 43
Uploads: 0
Druid issues

Hi there. Having a strange thing happen with this addon and Bartender on my druid. In moonkin form, when I press my various spell keys (some macros, some straight from spellbook), I keep getting the error message "Must be in cat form". When I disabled Keypress, the problem went away. Any thoughts?
Report comment to moderator  
Reply With Quote
Unread 03-10-10, 07:54 AM  
tricksterz
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 1
Uploads: 1
So when the new version will be available, cause i need those animations ;p
Last edited by tricksterz : 03-10-10 at 08:17 AM.
Report comment to moderator  
Reply With Quote
Unread 03-11-10, 06:10 AM  
Deadlycuts
A Kobold Labourer
 
Deadlycuts's Avatar

Forum posts: 0
File comments: 28
Uploads: 0
i've noticed an issue in v1.6.1.
bartender's keybinds isn't accelerated. only 1st bar accelerated (got animation and button push reaction) but not the others. i think it's caused by bartender's specific keybindings, because when you bind 1st bar using bartender it binds Blizzard's keybindings (Action Button 1 and so on), but when you binding 2nd and others it uses his owns which you can see in "Key Bindings" menu. Bartender got own submenu in Key Bindings called "Bartender4 Bar "n" " (where "n" - number of the bar).
can you fix it, based on information i've provided?
and sorry for my "english"
i hope u understand what i mean
Last edited by Deadlycuts : 03-12-10 at 05:23 AM.
Report comment to moderator  
Reply With Quote
Unread 03-14-10, 04:06 AM  
pexy
A Defias Bandit

Forum posts: 2
File comments: 1
Uploads: 0
Addion works but i have no blink effect... Iam useing dominos btw..any ideas?
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump:

Support AddOn Development!

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.