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,771
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 04-01-09, 11:48 AM  
Thortok2000
A Defias Bandit
 
Thortok2000's Avatar
AddOn Author - Click to view AddOns

Forum posts: 3
File comments: 367
Uploads: 3
Looking forward to trying this out. ^_^
__________________
“I don’t know half of you half as well as I should like; and I like less than half of you half as well as you deserve.” — Bilbo Baggins, from his speech on his eleventy-first birthday.
Report comment to moderator  
Reply With Quote
Unread 04-03-09, 10:03 AM  
blastermaster
A Defias Bandit

Forum posts: 3
File comments: 11
Uploads: 0
This isn't working for me. I was hoping to see cast bars for people I didn't have targeted. Was that the intention? That would be great to see the cast bars around you without having to target them.
Report comment to moderator  
Reply With Quote
Unread 04-03-09, 10:47 AM  
acapela
A Cobalt Mageweaver
AddOn Author - Click to view AddOns

Forum posts: 241
File comments: 1313
Uploads: 5
Originally posted by blastermaster
This isn't working for me. I was hoping to see cast bars for people I didn't have targeted. Was that the intention? That would be great to see the cast bars around you without having to target them.
yes, that is the intention.

however, there are limitations to this functionality, because Blizzard provides no way to associate nameplates with units (nameplates are basically just anonymous frames). i have to jump through some hoops to work around this (and it is not always possible to do this successfully). these limitations are detailed in README.txt (enclosed with the addon). go ahead and take a look at that, first, and relate it to what you are expecting out of the addon. make sure the addon is configured appropriately for what you want to do, etc.

in this case, you don't say anything about where you are, what you are doing, or etc, so there is no way for me to tell if you are simply encountering one of these limitations, or if there is a real problem.

if you believe there is a real problem, you will need to supply more detail, such as:

- do you have the main Aloft addon installed and enabled?
- whether you have the Blizzard "Combat>Class Colors in Nameplates" option enabled
- where you are (world/instance/arena/battlefield, etc)?
- whether you are grouped (solo/solo+pet/5-man/raid, etc)?
- what kind of unit you are hoping will display a cast bar (flagged enemy player, enemy NPC, ungrouped friendly player, grouped friendly player, your own pet, someone else's pet, etc)
- whether that unit has a raid target assignment (i.e. an icon assigned; this is a requirement for NPC targets)?
- whether you have ever moused over that unit
- whether you have ever targeted that unit
- whether a friendly group member (even just a pet) has that unit targeted

i will put these sorts of things into a FAQ for this addon, along with the information from README.txt, when i get a chance.
__________________
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 : 04-03-09 at 10:49 AM.
Report comment to moderator  
Reply With Quote
Unread 04-03-09, 11:09 AM  
blastermaster
A Defias Bandit

Forum posts: 3
File comments: 11
Uploads: 0
I am currently just outside of Ironforge dueling an alt. I have him conning my pet and I am conning nothing to see if i can see what he is casting. The only time the cast bar shows up is if i target him. As soon as i untarget, the cast bar goes away. Also, I did target him to get his name "registered" i guess as it said in the README
Last edited by blastermaster : 04-03-09 at 11:09 AM.
Report comment to moderator  
Reply With Quote
Unread 04-03-09, 12:13 PM  
acapela
A Cobalt Mageweaver
AddOn Author - Click to view AddOns

Forum posts: 241
File comments: 1313
Uploads: 5
"quick" answer:

this is working for me, with or without my opponent active as a unitid (i was setting my opponent up as my focus target).

some clarification:

with an active unitid (like "focus"), i have to enable the "AloftCastWarning>Players" and "AloftCastWarning>Friendly Units" options, in order to see a cast warning on a "friendly player". with no active unitid (i.e. no form of targeting at all, so that the addon cannot figure out whether the unit is a player or friendly, etc, and can't filter out spell cast activity), i see a cast warning even without those options enabled.

i was also using spells the addon had "recorded" before (see below), by being cast sometime in the past by a unit with an "active unitid" (this means a unit within combat log range, while it was my own target, my focus target, or the target of a friendly group member).

so, try setting your opponent as your focus target, then target whatever you want (nothing, the pet, whatever), and have the target engage in some spell cast activity. see if you can see cast warnings that way. after that, you can drop your focus target, and try again without any form of target, using the same spells, and see if that works. the spells should be "recorded" at that point, and you should get more useful behavior out of the addon.

additional (gory) detail:

right now, looks like i have a bug; i am not "recording" spells (see below) cast by the player's current target. i don't want to show a cast warning for the player's current target (there is a "real" cast bar for that), but i do at least want to "record" any spells cast by the player's current target. this is working correctly for the player's focus target (so play around with your focus target for now). i will fix this and get a new version out in the next day or so.

so, as for the gory detail...

the combat log in the vicinity of any group of players (i.e. like in a city) is absolutely packed with junk, an incredible flood of irrelevant detail.

if the addon tried to track/display everything, you would get buried in all that irrelevant stuff (buffs, tradeskills, mount/dismount activity, everything).

as well, i am operating on the assumption that if the addon tries to invoke GetSpellInfo() on every single last thing it sees the combat log, as a prerequisite to figuring out whether it should display a cast warning for it, that could be bad too (imagine a crowded PvP situation, or a large trash mob in a raid instance... there would just tons of stuff flying through the combat log, and only a small part of it would be interesting).

so, the addon tries to filter out everything it can, and only displays stuff it "knows" is useful.

one of the things the addon does to achieve this is require that it "sees" a spell in action, first, on an active unitid (again, within combat log range, while the player's target, the player's focus target, or the target of a friendly group member), before it tries to show cast warnings for that spell. this means it has to perform a valid UnitCastingInfo() or UnitChannelingInfo() for a spell, on an active unitid, before it will display that spell as a cast warning. otherwise, it just ignores the spell (i.e. ignores that event in the combat log).

if it can make one of these calls on an active unitid and "see" the spell being cast, it will go ahead and gather GetSpellInfo() data on the spell and "record" it in its SavedVariables. from then on, once that has happened, it will display cast warnings for the spell (and it also won't need to call GetSpellInfo() on the spell again, no matter how often it sees that spell in the combat log; it can just look it up in its SavedVariables).

one of the consequences of this is that instant cast spells are not tracked (this is by design... when i first started work on this, the addon was getting swamped with activity it could never usefully present to the user). the rationale is simple: there is no reason to have a cast warning on something you cannot interrupt; use a scrolling combat text addon, or something like WitchHunt, for that sort of generalized notification.

hope all that helps. i am looking into the bug with the player's current target right now.

Originally posted by blastermaster
I am currently just outside of Ironforge dueling an alt. I have him conning my pet and I am conning nothing to see if i can see what he is casting. The only time the cast bar shows up is if i target him. As soon as i untarget, the cast bar goes away. Also, I did target him to get his name "registered" i guess as it said in the README
alright, i will experiment with this under a same-faction "duel" scenario.
__________________
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 : 04-03-09 at 03:21 PM.
Report comment to moderator  
Reply With Quote
Unread 04-03-09, 12:32 PM  
blastermaster
A Defias Bandit

Forum posts: 3
File comments: 11
Uploads: 0
Appreciate it. I cannot get this to work for the life of me. I was just testing by dueling to see how it works and set it up how I wanted. This function would be really useful in bg/arena, sort of how Proximo/Gladius now works.
Report comment to moderator  
Reply With Quote
Unread 04-03-09, 03:23 PM  
acapela
A Cobalt Mageweaver
AddOn Author - Click to view AddOns

Forum posts: 241
File comments: 1313
Uploads: 5
Originally posted by blastermaster
Appreciate it. I cannot get this to work for the life of me. I was just testing by dueling to see how it works and set it up how I wanted. This function would be really useful in bg/arena, sort of how Proximo/Gladius now works.
i responded by editing my earlier response... take a look down there.

in short, start out by setting your opponent up as your focus target, and try things out that way. i am working on the bug i mentioned (though it looks like the bug may actually be over in Aloft... AloftCastWarning is doing some sort of garbage-in/garbage-out thing).
__________________
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 04-22-09, 08:49 PM  
acapela
A Cobalt Mageweaver
AddOn Author - Click to view AddOns

Forum posts: 241
File comments: 1313
Uploads: 5
so, is this thing generally working for folks? have not seen too much in the way of reported bugs.
__________________
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 04-28-09, 05:34 AM  
mtaher
A Kobold Labourer

Forum posts: 0
File comments: 51
Uploads: 0
first i would like to thank you for creating this addon.
sadly this addon is not working for me. not in arena or battlegrounds.
Report comment to moderator  
Reply With Quote
Unread 04-28-09, 11:10 AM  
acapela
A Cobalt Mageweaver
AddOn Author - Click to view AddOns

Forum posts: 241
File comments: 1313
Uploads: 5
Originally posted by mtaher
first i would like to thank you for creating this addon.
sadly this addon is not working for me. not in arena or battlegrounds.
can you supply more detail?

for instance (assuming PvP in a battleground):

- are you using this in conjunction with the latest version of Aloft?
- have you read through the README.txt, and understand the way the addon works, and the limitations on its behavior?
- have you modified the options in any way (i.e. are they no longer the defaults)? if so, what have you changed?
- have you at least moused over targets with visible nameplates before expecting to see cast warnings appear for those targets?
- has the addon had time to "learn" spells, from the spellcast activity of your targets or the targets of groupmembers?

i have had some additional ideas to work around some of these limitations, but i want to gather more information/feedback before i implement any changes.

thanks.
__________________
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 : 04-28-09 at 11:22 AM.
Report comment to moderator  
Reply With Quote
Unread 05-19-09, 05:51 AM  
Decoy
A Murloc Raider

Forum posts: 7
File comments: 15
Uploads: 0
Just wanted to thank you for taking the time to make this.

I'm actually the person that asked you (on the Aloft forum) to try and make something like this that would let you see non-targeted spellcasts. Pretty shocked when I saw you actually did it. So thanks, once again, for putting the time into it. You rock!
Report comment to moderator  
Reply With Quote
Unread 05-20-09, 12:56 PM  
acapela
A Cobalt Mageweaver
AddOn Author - Click to view AddOns

Forum posts: 241
File comments: 1313
Uploads: 5
Originally posted by Decoy
Just wanted to thank you for taking the time to make this.

I'm actually the person that asked you (on the Aloft forum) to try and make something like this that would let you see non-targeted spellcasts. Pretty shocked when I saw you actually did it. So thanks, once again, for putting the time into it. You rock!
heh, glad you like it.

new version in development that has cleaned up some stuff and is somewhat less restrictive/easier to use (tracks arena unitids, doesn't have to learn spells from targets first, will just use the combat log up front and then try to optimize from there). so, hopefully it will be even better. watch for it in a "few more days" (unfortunately all this recent downtime has slowed down my testing a bit).
__________________
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 06-14-09, 09:21 AM  
Abelius
A Defias Bandit
 
Abelius's Avatar

Forum posts: 3
File comments: 21
Uploads: 0
I can't get it to work

Hello Acapela, here's some feedback...

I tried it but didn't worked in my game. Here are the answers to the questions you outlined in the previous posts:


- do you have the main Aloft addon installed and enabled?

Yes, I have 2.7.8-934 version of aloft base addon. It's enabled, as well the castbar warning addon.

- whether you have the Blizzard "Combat>Class Colors in Nameplates" option enabled

Yes, it's selected in the interface options.

- where you are (world/instance/arena/battlefield, etc)?

I tested it in Goldshire, so it's the World.

- whether you are grouped (solo/solo+pet/5-man/raid, etc)?

I was a lone mage.

- what kind of unit you are hoping will display a cast bar (flagged enemy player, enemy NPC, ungrouped friendly player, grouped friendly player, your own pet, someone else's pet, etc)

I intented to see casting bars for ungrouped friendly players, which were dueling in my range. The Control+V key was pressed, so I could see all the nameplates (friendly and neutral/enemy).

- whether that unit has a raid target assignment (i.e. an icon assigned; this is a requirement for NPC targets)?

Not applicable, I suppose.

- whether you have ever moused over that unit

Yes, I mouse-overed both of the duelists, and even clicked on them previously.

- whether you have ever targeted that unit

Yes (see previous response).

- whether a friendly group member (even just a pet) has that unit targeted

Not applicable. I was alone.

- have you read through the README.txt, and understand the way the addon works, and the limitations on its behavior?

Yes, every line. I think I get it fairly in my mind... but you never know. The point is that I moused overed the units and didn't changed any default option, so...

- have you modified the options in any way (i.e. are they no longer the defaults)? if so, what have you changed?

No, nothing changed except for activating some additional aloft base modules. In any case, I can see the castbar for friendly units, if I TARGET them.

- has the addon had time to "learn" spells, from the spellcast activity of your targets or the targets of groupmembers?

Emm... I don't get this one. What do you mean by "time"? Well, I tested it primarily with mages, which were casting fireballs all the time, so I suppose the addon had the opportunity to learn about it.


I hope this feedback could help you in some way. If I see any change I'll send news.

The idea behind this addon is great, BTW. I don't want to blame you in any way, of course, and your main aloft addon is a huge improvement in my game. Please, continue to work on both.

Regards,

Abelius.
Report comment to moderator  
Reply With Quote
Unread 06-18-09, 02:27 PM  
acapela
A Cobalt Mageweaver
AddOn Author - Click to view AddOns

Forum posts: 241
File comments: 1313
Uploads: 5
Re: I can't get it to work

Originally posted by Abelius
- has the addon had time to "learn" spells, from the spellcast activity of your targets or the targets of groupmembers?

Emm... I don't get this one. What do you mean by "time"? Well, I tested it primarily with mages, which were casting fireballs all the time, so I suppose the addon had the opportunity to learn about it.
yes, this is very helpful. thank you for taking the time to supply this information.

i believe the issue i quote above is the problem. a couple of aspects of the design intent for this addon were:
  • to "learn" spells (store them in SavedVariables), so that the addon could avoid doing GetSpellInfo() calls every time something appeared in the combat log, and
  • only "learn" spells seen on active targets (via UnitCastingInfo()/UnitChannelInfo()), so that all the useless/uninteresting junk (using bandages, for instance) that streams through the combat log as "spells" or "skills" would not end up "learned" and stored in SavedVariables.

what i think you are seeing are people using spells that the addon has not "learned" yet (the addon has not yet seen those spells being cast by units you had actively targeted), hence no cast warnings. (in development, i noticed SavedVariables for this addon growing very large during testing, several megabytes on disk, so i coded things to be very strict about what was "learned" and stored in SavedVariables.)

at this point, i think this whole approach was mistaken on my part.

i have a new version of the addon that is very close to release. this new version will go ahead and "learn" everything it sees in the combat log (regardless of its relevance... the addon has no real way to tell the difference anyway; even bandages heal, for instance), and provide a cast warning on all of it, and store what it has seen in SavedVariables when the game session ends... but on game startup it will also briefly go though and clean out any "junk" loaded from SavedVariables that does not look like a "real" spell (it will only keep the stuff that it has been able to verify using UnitCastingInfo()/UnitChannelInfo(), and that it has actually seen doing damage or healing). SavedVariables will not end up collecting a bunch of junk, and this will also recover memory at the start of each game session.

this should allow the addon to access data it has already queried the game client for (without having to query again), show cast warnings for everything without any cryptic "learning" requirement, and also avoid accumulating a large amount of irrelevant nonsense in SavedVariables.
__________________
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 : 06-18-09 at 02:33 PM.
Report comment to moderator  
Reply With Quote
Unread 06-24-09, 04:30 PM  
acapela
A Cobalt Mageweaver
AddOn Author - Click to view AddOns

Forum posts: 241
File comments: 1313
Uploads: 5
Release: AloftCastWarning-0.7.0-1125

a new version of AloftCastWarning is available, AloftCastWarning-0.7.0-1125.

this has been substantially reworked. please look at the change log for the details. hopefully you will all find that it works much "better" than in the past (and hopefully still without eating memory and CPU like candy ).

this is intended to work with Aloft-2.8.0-1127, in fact this version of Aloft is required (results with earlier versions of Aloft could be somewhat flaky).

also note that there have been enough changes in this version that you should delete your AloftCastWarning.lua SavedVariables file.
__________________
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.