Download
(51Kb)
Download
Updated: 01-02-11 01:16 PM
Updated:01-02-11 01:16 PM
Created:04-01-09 11:22 AM
Downloads:21,762
Favorites:97
MD5:

AloftCastWarning (Beta)  Popular! (More than 5000 hits)

Version: AloftCastWarning-4.0.1-2048
by: acapela [More]

NOTE: This addon is now part of core Aloft, incorporated as a module. Versions of Aloft from 4.2.X onwards (including the mainline Aloft-4.3.X version and onwards) all incorporate this functionality. It is no longer necessary to install this as a separate addon. Standalone versions of this addon will NOT work with WoW 4.1 or later.
-----
NOTE: This is now an Ace3 addon. AloftCastWarning-1.0.0 (and subsequent versions) will NOT WORK with any Ace2 version of Aloft. You will need Aloft-4.X.
-----
This addon provides a "pseudo" cast bar for identifiable non-target units with visible nameplates (in addition to Aloft's normal target cast bar). This addon ignores the player's current target (on the assumption that the normal target cast bar is available for that purpose).

There are limitations (gory details in README.txt, which is enclosed within the addon. Please review it). To summarize: for PvE (and NPC targets generally), you need to be in a group/raid, a groupmember needs to have the unit targeted, and the unit needs to have a raid target assignment (i.e. an icon). For battlegrounds (PvP, PC targets), a groupmember needs to have the unit targeted. In arenas (PvP, PC targets), it should just work (though it has not been extensively tested there).
-----
This is packaged as a standalone addon, and should be installed as such, but it requires Aloft in order to function. Without Aloft, this addon will just silently fail to initialize.

Remember to enable this addon, as well as Aloft, on the Blizzard addon control screen.

NOTE: Aloft installs into .../Interface/AddOns/Aloft, and THIS addon should install into .../Interface/AddOns/AloftCastWarning. i.e. Copy the contents of this addon's ZIP into .../Interface/AddOns as you would any other standalone addon.

This addon requires Aloft-4.X (preferably the most recent), and is intended to work under WoW 4.0.1 (and the Cataclysm Beta). This will also work with the Aloft Alpha.

The major version numbers of AloftCastWarning have been matched with Aloft, as a way to simplify which version works with which (i.e. Aloft 4.X should be compatible with AloftCastWarning 4.X).

Please delete your AloftCastWarning.lua saved variables file when you install the most recent version of AloftCastWarning.
-----
In order to track defects, PLEASE report any problems in THIS addon's comments and/or via THIS addon's bug reporting mechanism here at WoWInterface (do not use the general Aloft addon for reporting problems with THIS addon).

This addon is still EXPERIMENTAL. Incredibly detailed problem reports are probably not necessary, but please be prepared to work with the author to figure out how to reproduce your errors.

Also watch for efficiency problems. If you feel this addon is eating large amounts of runtime memory and/or slowing your framerates down, let me know, and I will investigate.

I will construct a "real" front page for this addon at some point (basically massaging README.txt into something useful). In the meantime, please review README.txt.

Enjoy!
----------
As always, AloftCastWarning is free with your materials, but if you want to donate: Click here to lend your support!

4.0.1-2048
- fixed problem in AloftCastWarningLocale.lua preventing options from loading properly

4.0.0-1893
- TOC update to 40000 (for WoW 4.0.1/Cataclysm)
- made major version match that of Aloft (both 4.X; hopefully will help avoid future confusion over which basic/major version of AloftCastWarning to use with which version of Aloft)

1.0.5-1871
- enhanced all borders to expose edgeSize (thickness) and inset (padding) as user options

1.0.4-1844
- fixed intermittent bug related to trying to track spells with zero cast duration
- enhanced to delete spells with zero cast duration from the spell database (we don't want to track them, we certainly don't need to save them)
- fixed various problems with proactive cleanup of spell database

1.0.2-1809
- simplified nameplate OnHide processing; setting backdrop/border alpha to zero (0), but leaving the actual border in place; this seems to affect the #132 crash problem? please test (enable borders again, etc)

1.0.1-1780
- added "comprehensive" checks to AloftCastWarning's options menus to insure that the associated module is enabled before updating options

1.0.0-1764
- initial production Ace3 release
- NOT COMPATIBLE with versions of Aloft before 3.1.0
- file manifest is the same as older versions (should be able to just install); your saved variables should be OK
- revised definition of "friendly", to "not UnitCanAttack()"; "UnitIsFriendly()" returns true for same-faction duel opponents, and "UnitIsEnemy()" may report false for neutral units

0.7.9-1599
- applied a blend mode on all texture regions (including backdrops) to "improve" behavior of UI object layering

0.7.8-1588
- enhanced to provide a cast warning bar in some situations when the player's target changes and the target cast bar is not available

0.7.7-1531
- small internal change that improves UI element layering in WoW 3.3 (harmless in WoW 3.2)

0.7.6-1430
- moved some target tracking capabilities into Aloft's target tracking, to facilitate Aloft combat text association with non-target/non-group nameplates
- rationalized the spell school colors more closely with Blizzard's standard combat log spell colors

0.7.5-1354
- added configurable option to direct AloftCastWarning to change alpha of visible nameplates engaged in detectable/warnable cast activity (requires Aloft-2.8.10-0000 or later, requires AloftAlpha module to be enabled)
- fixed a bug related to re-casting the same spell while the earlier cast is still "fading"

0.7.4-1254
- fixed a typo in unit channelled spellcast processing
- commented out some diagnostics that survived into the 0.7.3 release

0.7.3-1242
- replicated Blizzard "shield" graphics for uninterruptable spells with a graphic over the cast warning spell icon (look at "Cast Warning>Spell Icon>Shield" options)
- added features to detect and change cast warning color/texture/border on uninterruptable spell casts, provide separate cast warning options for interruptable/uninterruptable spells

0.7.2-1189
- updated TOC for WoW 3.2
- fixed a bug in combat log processing that was causing cast warnings to end prematurely
- fixed a bug with fade processing that was causing cast warnings never to fade

0.7.1-1150
- fixed TOC typo, now 30100
- adjusted frame level and draw layers of various cast warning assembly elements to rectify potential layering problems

0.7.0-1125
- updated TOC to interface version 31000
- extensively refactored combat log event handling, to use both "UNIT_SPELLCAST_*" and "COMBAT_LOG_*" events to detect spells
- fixed numerous small mistakes/misconceptions in combat log event handling (no doubt there will be more to come)
- cast warnings should now appear regardless of whether the addon has seen the spell before
- extensively refactored saved variables handling, so that useful spell information is collected/saved, and incomplete information is deleted at each game sessoion start
- should show spell warnings on arena opponents without needing mouseover/etc; needs testing

0.6.1-932
- added separate text colors for active cast and fade processing
- added pool for active cast records (cuts down on dynamic table construction/destruction)

0.6.0-903
- initial beta version
Optional Files (0)


Post A Reply Comment Options
Unread 01-17-11, 01:38 PM  
acapela
A Cobalt Mageweaver
AddOn Author - Click to view AddOns

Forum posts: 241
File comments: 1313
Uploads: 5
Originally posted by 1nstant
would you ever consider making a similar addon for default plates? or updating Kollektiv's Overhead mod.

I'd like to use Aloft but I have performance issues for what ever reason.
unfortunately, while the combat log sniffing mechanisms, and so forth, would be applicable... the stuff that "identifies" nameplates (and associates them with UnitGUIDs where available), the configuration menu, and the bars themselves, are all pretty closely integrated with Aloft.

teasing everything apart so that it could operate with/without Aloft, provide a configuration mechanism with/without Aloft, would be possible in theory, but i think it would be a fair bit of work (and there would be a lot of other things that would have a higher priority). same goes for taking over another addon (i have enough trouble finding the time to work on Aloft).

what form do your performance issues take? feel free to send me a PM, we can talk about it. and have you tried the new Aloft Alpha? i was able to recover a fair bit of memory by separating the configuration menu (and all of its string data) out into a separate addon.
__________________
Retired author/maintainer of Aloft (the nameplate addon)
http://www.wowinterface.com/download...AloftBeta.html
-----
Zippy said it best: "All life is a BLUR of Republicans and Meat!"
Last edited by acapela : 01-17-11 at 01:41 PM.
Report comment to moderator  
Reply With Quote
Unread 01-12-11, 08:23 PM  
1nstant
A Defias Bandit

Forum posts: 3
File comments: 28
Uploads: 0
would you ever consider making a similar addon for default plates? or updating Kollektiv's Overhead mod.

I'd like to use Aloft but I have performance issues for what ever reason.
Report comment to moderator  
Reply With Quote
Unread 01-02-11, 01:20 PM  
acapela
A Cobalt Mageweaver
AddOn Author - Click to view AddOns

Forum posts: 241
File comments: 1313
Uploads: 5
Release: AloftCastWarning-4.0.1-2048

a new release is available, pending moderator approval: AloftCastWarning-4.0.1-2048.

this has a small fix to permit AloftCastWarning to integrate its configuration menu into the configuration menu for the Aloft Alpha. it should also continue to work with older "production" versions of Aloft.

the configuration menu for this version of AloftCastWarning is "always loaded", pending me figuring out how to integrate this into the new "alpha"-style load-on-demand configuration menu (right now, i am leaning towards integrating AloftCastWarning into Aloft generically as a module). in the meantime this version of AloftCastWarning should work with all versions of Aloft-4.X.
__________________
Retired author/maintainer of Aloft (the nameplate addon)
http://www.wowinterface.com/download...AloftBeta.html
-----
Zippy said it best: "All life is a BLUR of Republicans and Meat!"
Report comment to moderator  
Reply With Quote
Unread 12-31-10, 05:49 PM  
acapela
A Cobalt Mageweaver
AddOn Author - Click to view AddOns

Forum posts: 241
File comments: 1313
Uploads: 5
Question for users

looking at AloftCastWarning, and how to merge its configuration menu into the "load-on-demand" style of presentation currently being tested in the Aloft Alpha, i would probably want to roll AloftCastWarning into Aloft as a module.

at that point, AloftCastWarning would no longer be a standalone addon, it would be a module of Aloft (which users could enable, or not, as desired; it would default to disabled). i could release a final version of it basically consisting of just a TOC that said "This is now part of Aloft, please delete me", etc.

the other option would be to continue to package AloftCastWarning as a separate addon (configuration menu and all).

does anyone care either way?
__________________
Retired author/maintainer of Aloft (the nameplate addon)
http://www.wowinterface.com/download...AloftBeta.html
-----
Zippy said it best: "All life is a BLUR of Republicans and Meat!"
Report comment to moderator  
Reply With Quote
Unread 11-06-10, 08:41 AM  
Masticor
A Kobold Labourer

Forum posts: 0
File comments: 29
Uploads: 0
Hey I solved a related Problem, i know why my other Post didn't show up!

I posted in the Castwarnings Comments instead of the other one -.-' I'm stupid!

Will post next time over there once I test it
Report comment to moderator  
Reply With Quote
Unread 11-05-10, 09:45 PM  
acapela
A Cobalt Mageweaver
AddOn Author - Click to view AddOns

Forum posts: 241
File comments: 1313
Uploads: 5
Originally posted by Masticor
Yeah you don't have to go through that much extra trouble, just a black(or whatever colored) background would do the trick.

Only Problem with that solution is that a transparent Healthbar-Background would then be impossible. Though I think, given the option, most people would rather have smooth Borders in exchange for the transparent Background..
the overall "Frame" border issue may be resolved (an Aloft update on 2010/11/05 with a workaround for the problem fixes it "almost completely" for me).

two things still pending: finding out whether this is "good enough" for other people, and applying a similar fix to other problem areas (threat bar and target cast bar are the ones i see regularly enough to be noticeable... but this is unfortunately not going well; so far, applying a similar fix doesn't seem to affect the problem in those other elements).
__________________
Retired author/maintainer of Aloft (the nameplate addon)
http://www.wowinterface.com/download...AloftBeta.html
-----
Zippy said it best: "All life is a BLUR of Republicans and Meat!"
Report comment to moderator  
Reply With Quote
Unread 11-05-10, 08:24 AM  
Masticor
A Kobold Labourer

Forum posts: 0
File comments: 29
Uploads: 0
Yeah you don't have to go through that much extra trouble, just a black(or whatever colored) background would do the trick.

Only Problem with that solution is that a transparent Healthbar-Background would then be impossible. Though I think, given the option, most people would rather have smooth Borders in exchange for the transparent Background..
Report comment to moderator  
Reply With Quote
Unread 11-04-10, 03:16 PM  
acapela
A Cobalt Mageweaver
AddOn Author - Click to view AddOns

Forum posts: 241
File comments: 1313
Uploads: 5
Originally posted by Masticor
Here is my thought now: Couldn't you make something similiar just instead of a filled rectangle that is sollid, you make the middle transparent (Sorry endlish is not my first language and at this hour I don't know how to explain this better)
this idea is not half bad. a rectangle with the center cut out of it might be difficult (would need a custom texture, but maybe doable), but layering the health bar on top of its background, and then layering the two of those on top of a third, larger rectangle, to simulate a border, might work.

you could simulate this already, with Aloft as it currently exists, using the health bar/background as a "foreground", and then use the "Frame" options, which offer a "background" capability, to create that slightly larger/rearmost rectangle. play with that, see if it works for you.

historically, Aloft re-used the health bar component of the default Blizzard nameplate (just reskinned it), and it was not possible to alter frame levels (via Frame:SetFrameLevel()) in nameplates during combat. this made it difficult to add frames and layer them properly (they had to layer with the health bar, and there was no way to change the level of the health bar in combat). but at this point Aloft has replaced the nameplate health bar and cast-bar completely (due to more Blizzard bugs), slaves the updates of these replacement graphics to the Blizzard graphics but otherwise hides the default Blizzard graphics, so there might not be any limitations on adding an extra "box" to nameplates (and getting it to layer properly with everything else) to achieve this effect you are thinking of. however, i would have to play with it to make certain.
__________________
Retired author/maintainer of Aloft (the nameplate addon)
http://www.wowinterface.com/download...AloftBeta.html
-----
Zippy said it best: "All life is a BLUR of Republicans and Meat!"
Last edited by acapela : 11-04-10 at 03:39 PM.
Report comment to moderator  
Reply With Quote
Unread 11-03-10, 06:26 PM  
Masticor
A Kobold Labourer

Forum posts: 0
File comments: 29
Uploads: 0
Just had a stupid idea regarding the Border-Corruption-Problem:

A Budy of mine startet making his own Nameplate Addon and his also have Border. But he doesn't use an actual Border like say the Tooltip-Border, he simply puts a black background behind the Namplate, and thanks to it beeing larger then the actual Healthbar, it looks like it has a Border around it.

Here is my thought now: Couldn't you make something similiar just instead of a filled rectangle that is sollid, you make the middle transparent (Sorry endlish is not my first language and at this hour I don't know how to explain this better)

I mean simply drawing a Border around the Healthframe. Color could still be adjusted by the user.

I know it's not a perfect solution but it might be alright until the real bug gets fixed by blizz.

And you don't have to remove the other borders, just make it a Option in the Border-Type-Drop down. Something like Masticors-Border *kidding* ;p
Report comment to moderator  
Reply With Quote
Unread 11-03-10, 12:43 PM  
acapela
A Cobalt Mageweaver
AddOn Author - Click to view AddOns

Forum posts: 241
File comments: 1313
Uploads: 5
Release: AloftCastWarning-4.0.0-1893

a new release of Aloft is available, pending moderator approval: AloftCastWarning-4.0.0-1893.

the only real change here is a TOC update to 4.0.0 (no changes to this addon were required for WoW 4.0.1/etc). this version should also work with the PTR and with the Cataclysm Beta
__________________
Retired author/maintainer of Aloft (the nameplate addon)
http://www.wowinterface.com/download...AloftBeta.html
-----
Zippy said it best: "All life is a BLUR of Republicans and Meat!"
Report comment to moderator  
Reply With Quote
Unread 10-27-10, 07:43 PM  
1nstant
A Defias Bandit

Forum posts: 3
File comments: 28
Uploads: 0
Originally posted by acapela if a unitid exists (and unitids for opponents do exists in arenas, and AloftCastWarning is supposed to be using them ), AloftCastWarning listens to one set of events, to identify spell cast activity, and can actually "watch" the unit, query for cast information, and get accurate cast duration timing (which takes into account the associated unit's talents/etc). if not, AloftCastWarning listens for a different set of events that allows it to watch the combat log, and it does its best to "guess" cast duration timing (based on prior observation of the same spell), and etc.[/b]
I didn't realize this, I just started using this in 4.0 and skirmishes have been disabled, but this is great.
Report comment to moderator  
Reply With Quote
Unread 10-27-10, 02:19 PM  
acapela
A Cobalt Mageweaver
AddOn Author - Click to view AddOns

Forum posts: 241
File comments: 1313
Uploads: 5
Originally posted by 1nstant
Thanks for writing this addon!

Also, it's possible to have actual cast bars on every nameplate in arena and not just 'predicting casts', you probably already know this though. Don't know if you have any plans on implementing it, but it would be extremely helpful. this addon does it, but hasn't been touched in a year. http://wow.curse.com/downloads/wow-a.../overhead.aspx

thanks again
i am not entirely following you here (though that is probably because this is all actually a bit trickier than you may realize).

the WoW Client supplies an "actual" cast bar on the player's current target, and Aloft (the main addon) manages that cast bar (reskins it, etc, per the player's setting). the WoW client itself turns it on and off, controls its timing, etc.

as far as i know, no "actual" cast bar appears on nameplates except for the player's current target (if any).

(by "actual" cast bar i mean: a cast bar operated directly by the WoW client, as a direct consequence of player spellcast activity.)

so, what AloftCastWarning does is (try to) supply a cast bar, when "possible", on nameplates associated with units other than the player's current target. this "predictive" cast bar is entirely under the control of AloftCastWarning (the WoW client doesn't have anything directly to do with it).

if a unitid exists (and unitids for opponents do exists in arenas, and AloftCastWarning is supposed to be using them ), AloftCastWarning listens to one set of events, to identify spell cast activity, and can actually "watch" the unit, query for cast information, and get accurate cast duration timing (which takes into account the associated unit's talents/etc). if not, AloftCastWarning listens for a different set of events that allows it to watch the combat log, and it does its best to "guess" cast duration timing (based on prior observation of the same spell), and etc.

either way (whether there is a unitid or not), Aloft/AloftCastWarning must be able to "identify" the associated nameplate (either because it is a PC nameplate and Aloft can assume the unit name is "unique", or because it is an NPC nameplate and it has a raid target icon on it), in order to be able to stick a cast bar on it.

so, having said all that, i remember looking at "Overhead", and this is basically the same thing it did (watched for spell cast events on arena unitids, queried for spellcast details for those arena unitids, and provided a cast bar... all restricted specifically to arenas, where it knew there would be unitids and unique unit names).

additional: looks like bosses now have dedicated unitids as well, so i should figure out how to use them .
__________________
Retired author/maintainer of Aloft (the nameplate addon)
http://www.wowinterface.com/download...AloftBeta.html
-----
Zippy said it best: "All life is a BLUR of Republicans and Meat!"
Report comment to moderator  
Reply With Quote
Unread 10-27-10, 01:40 AM  
1nstant
A Defias Bandit

Forum posts: 3
File comments: 28
Uploads: 0
Thanks for writing this addon!

Also, it's possible to have actual cast bars on every nameplate in arena and not just 'predicting casts', you probably already know this though. Don't know if you have any plans on implementing it, but it would be extremely helpful. this addon does it, but hasn't been touched in a year. http://wow.curse.com/downloads/wow-a.../overhead.aspx

thanks again
Report comment to moderator  
Reply With Quote
Unread 10-12-10, 01:13 PM  
acapela
A Cobalt Mageweaver
AddOn Author - Click to view AddOns

Forum posts: 241
File comments: 1313
Uploads: 5
The "current" version of AloftCastWarning (AloftCastWarning-1.0.5-1871) is compatible with Cataclysm Beta, and should be compatible with WoW 4.X (which is currently patching to North America "now", 2010/10/12), without changes.

However, the TOC will be out of date, so don't forget to enable out-of-date addons on your Blizzard addon selection screen.

I will get a TOC-update out as soon as I can. In the meantime, report any/all bugs with AloftCastWarning here.
__________________
Retired author/maintainer of Aloft (the nameplate addon)
http://www.wowinterface.com/download...AloftBeta.html
-----
Zippy said it best: "All life is a BLUR of Republicans and Meat!"
Last edited by acapela : 10-13-10 at 12:20 PM.
Report comment to moderator  
Reply With Quote
Unread 08-23-10, 04:18 PM  
acapela
A Cobalt Mageweaver
AddOn Author - Click to view AddOns

Forum posts: 241
File comments: 1313
Uploads: 5
Originally posted by xxavx
...In case you were not around in The Burning Crusade Aloft team (I didnt take the time to research you, sorry!)...
yeah, i took over Aloft just before BC came out (started working on it privately in August of that year... what was it, 2006?). went "official" around October of that year (with a release intended for the WoW 3.0 PTR, just before BC was released), and have supported it ever since.

currently waiting for the Cataclysm beta to enable addon usage (Blizzard currently has all addons disabled while they debug the default UI), so that i can get Aloft ready for that. (THANK YOU, WoWInterface, for my beta key; my Worgen Druid is level 10, enough to get a basic feel for things .)

however, i have never been big into PvP, so i don't know what features were available on nameplates in PvP back then, nor am i aware of what changed when WotLK came out.

Originally posted by xxavx
...I still cannot understand why Aloft needs the mouseover...
this ends up being incredibly complicated (in terms of the actual sequence of events Aloft engages in).

but basically, it comes down to being able to associate spell cast activity, from the combat log, with a visible nameplate on the screen.

Blizzard does not provide any help with identifying nameplates or associating them with in-game actors (aka "units"). nameplates are just anonymous screen objects with graphics and text associated with them (health bar, unit name/level, etc). very "primitive", actually. so, Aloft has to have a way to "connect the dots".

in PvP, when you mouse over a nameplate (or a 3D model), the "mouseover" unitid becomes active for a moment, and Aloft can determine whether the associated unit is a player (and therefore has a unique unit name; being able to assume a unique unit name is a vital simplifying assumption Aloft has to be able to rely on in PvP), and if so, Aloft makes an internal record of the unit name and the unit GUID. GUID is used because every unit has one (including PvE mobs, which Aloft also handles, though there are more restrictions).

(stuff like "unitid" and "GUID" are specific terms of art in the WoW addon world; links to the WoWWiki pages on them are provided in the text above. if you haven't ever done any computer programming, the stuff at WoWWiki will probably be very cryptic.)

from there, in PvP, Aloft can identify the nameplate (if it is visible) by unit name, and it can watch the combat log for spell cast activity, tracked by unit GUID, and use the unit name<->GUID record that it keeps to connect the dots and animate a cast bar on the nameplate (based on activity in the combat log).

without that mouseover action, Aloft never has the opportunity to gather/record those little bits of information required to connect the dots.
__________________
Retired author/maintainer of Aloft (the nameplate addon)
http://www.wowinterface.com/download...AloftBeta.html
-----
Zippy said it best: "All life is a BLUR of Republicans and Meat!"
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.