Download
(154Kb)
Download
Updated: 08-07-15 12:28 PM
Pictures
File Info
Updated:08-07-15 12:28 PM
Created:unknown
Downloads:19,950
Favorites:279
MD5:
Categories:Action Bar Mods, Buff, Debuff, Spell, Character Advancement, TradeSkill Mods, Miscellaneous

Learning Aid  Popular! (More than 5000 hits)

Version: 1.12 Beta 3a
by: Jamash [More]

All good things must come to an end
I am not subscribed to World of Warcraft, and have not been for several years. I am not likely to resubscribe in the foreseeable future. I appreciate all the support Learning Aid has received (especially from the people who localized it into different languages), but playing an MMO is too much like a second job, and I can't justify it to myself.

If anyone wants to take over maintenance, please let me know. I would be more than happy to turn it over to a new maintainer.

Learning Aid is for all those times when you've just leveled up, retalented, or learned a new trade skill and you've had to page through your spellbook looking for all those new icons.

When you learn a new ability, or tradeskill, Learning Aid pops up a window with the new ability icon in it, ready to be dragged to your Action Bar.

Learning Aid filters the chat message spam that you get when swapping specs, unlearning talents, or learning several talents at once down to one or two lines.

Learning Aid adds a "Train All" button to tradeskill trainers.

Directions

1. Learn a new ability!
2. Drag it to your action bar!
3. Click the close box to dismiss the window!

You can also shift-click an ability button to create a chat link, just like from the spellbook.

Options

Right-click on the window's title, or click the lock icon to lock the window so it does not move.

Compatiblity

Learning Aid is compatible with World of Warcraft version 6.2.0.

Latest Changes

1.12 Beta 3a

Updated TOC to 60200 for patch 6.2.0.
Added "Ignore Auto Attack" option.
Removed more dead Spam Filter code that was causing errors.

1.12 Beta 2

Updated TOC to 60100 for patch 6.1.0.
Fixed some global pollution found with Globe (https://www.townlong-yak.com/globe/).
Added checks for spells like Flying Serpent Kick that change ID on the fly.
Added initial visible support for action bar copy and paste.
Added support for flyouts to action bar copy and paste.
Added support for dynamic shapeshift bar numbering to action bar copy and paste.
Added named bar clipboards to action bar copy and paste, replacing the single implicit clipboard.

1.12 Beta 1

Update TOC for Warlords of Draenor pre-patch 6.0.2

v1.12b3: Updated for Warlords of Draenor patch 6.2.0.
v1.12b1: Updated for Warlords of Draenor pre-patch 6.0.2.
v1.11.2: Fixed the stack overflow bug.
v1.11.1: Compatible with WoW 4.1.0, improvements to the ignore list, fixed the guild perk issue.
v1.11: Compatible with WoW 4.0.x, new "Learn All" button on trainers.
v1.10.1: Chinese localizations added (zhCN and zhTW), kindly provided by wowuicn.
v1.10: The Learning Aid window now grows wider when there are too many abilities on it to fit in one column. Korean localization added, kindly provided by talkswind.
v1.09: "Find Shapeshift Forms" toggle was backwards (fixed). New "Ignore Ability" feature available via ctrl-click and /la ignore chat command. When swapping talent specs, do not print abilities that are unlearned then immediately relearned.
v1.08: Shaman totem option in missing ability search. Fixed "wrong companion shown" bug (again). Updated TOC to 30200.
v1.07.2: Added German translation kindly provided by Freydis88.
v1.07.1: Fixed a long-standing bug that caused the wrong companion to appear in the Learning Aid window when learning a companion during a period of greater than usual server lag.
v1.07: Added a spam filter for "You have learned X." and "You have unlearned Y." system chat messages. Defaults to on. Added the ability to automatically save deleted action buttons when you unlearn your talents either at a trainer or due to a major patch, and restore the buttons to your action bar when you relearn the spells or abilities. Added Macaroon support to the macro scanner.
v1.06.1: Fixed macro search for abilities with ":" in them.
v1.06: Added a GUI configuration page in the Blizzard Addon preferences window. Added a function to search the player's action bars for missing abilities. Updated TOC version to 30100 for patch 3.1.
v1.05: Fixed a bug that could cause pet and mount tooltips to display incorrectly. Updated TOC version to 30000 for patch 3.0.
v1.04: Added ability to lock the window
v1.03: Support for pets and mounts added for WoW 3.0, and minor cosmetic fixes.
v1.02: Shift-click to create chat links added.
v1.01: Fixed bug with learning passive abilities.
Optional Files (0)


Post A Reply Comment Options
Unread 10-13-20, 10:06 AM  
Jamash
A Fallenroot Satyr
 
Jamash's Avatar
AddOn Author - Click to view AddOns

Forum posts: 20
File comments: 25
Uploads: 4
End of Life

As I wrote on the main page, I do not play WoW or any other MMO, and I have basically sworn them off. My one regret is that I am not able to maintain Learning Aid anymore. I had a great time, and I appreciate all the words of support and encouragement I received over the years.

Thanks everyone, and goodbye
Jamash, late of Kil'Jaeden.
Report comment to moderator  
Reply With Quote
Unread 12-03-13, 01:16 PM  
Jamash
A Fallenroot Satyr
 
Jamash's Avatar
AddOn Author - Click to view AddOns

Forum posts: 20
File comments: 25
Uploads: 4
Smile GOOD NEWS EVERYONE

I got my computer fixed-ish (limping along but usable) after all this time, so I can start working on Learning Aid again! I also have a new job and more of a social life so my time will be somewhat limited, but I'll try to keep you posted on my progress.
Report comment to moderator  
Reply With Quote
Unread 05-06-11, 02:56 PM  
Jamash
A Fallenroot Satyr
 
Jamash's Avatar
AddOn Author - Click to view AddOns

Forum posts: 20
File comments: 25
Uploads: 4
Originally posted by MagicSN
Jaim: The lua error you posted looks the same like the one I got when changing spec.
Fixed! Thanks for the reports.
Report comment to moderator  
Reply With Quote
Unread 05-05-11, 06:17 AM  
MagicSN
A Murloc Raider

Forum posts: 8
File comments: 29
Uploads: 0
Jaim: The lua error you posted looks the same like the one I got when changing spec.
Report comment to moderator  
Reply With Quote
Unread 05-04-11, 10:07 PM  
Jaim Sandar
A Deviate Faerie Dragon
AddOn Author - Click to view AddOns

Forum posts: 13
File comments: 357
Uploads: 1
When I first logged on with a level 76 Shadow Priest after updating to 1.11.1 I saw an error for Learning Aid. I didn't record it.
Shortly after that, I learned Artisan Archaeology and saw this error:

Code:
LearningAid-40100\LearningAid.lua:731: stack overflow
LearningAid-40100\LearningAid.lua:706: in function `UpgradeIgnoreList'
LearningAid-40100\LearningAid.lua:717: in function <LearningAid\LearningAid.lua:716>
(tail call): ?:
LearningAid-40100\LearningAid.lua:706: in function `UpgradeIgnoreList'
LearningAid-40100\LearningAid.lua:717: in function <LearningAid\LearningAid.lua:716>
(tail call): ?:
LearningAid-40100\LearningAid.lua:706: in function `UpgradeIgnoreList'
LearningAid-40100\LearningAid.lua:717: in function <LearningAid\LearningAid.lua:716>
(tail call): ?:
LearningAid-40100\LearningAid.lua:706: in function `UpgradeIgnoreList'
LearningAid-40100\LearningAid.lua:717: in function <LearningAid\LearningAid.lua:716>
(tail call): ?:
...:
LearningAid-40100\LearningAid.lua:717: in function <LearningAid\LearningAid.lua:716>
(tail call): ?:
LearningAid-40100\LearningAid.lua:706: in function `UpgradeIgnoreList'
LearningAid-40100\LearningAid.lua:769: in function `IsIgnored'
LearningAid-40100\SpellButton.lua:294: in function `UpdateButton'
LearningAid-40100\SpellButton.lua:101: in function `AddButton'
LearningAid-40100\Spell.lua:201: in function `AddSpell'
LearningAid-40100\Spell.lua:230: in function `DiffSpellBook'
LearningAid-40100\Events.lua:171: in function `?'
LearningAid-40100\LearningAid.lua:120: in function <LearningAid\LearningAid.lua:119>
Thank you.
Report comment to moderator  
Reply With Quote
Unread 04-29-11, 08:19 AM  
MagicSN
A Murloc Raider

Forum posts: 8
File comments: 29
Uploads: 0
Re: I'm back, from outer space

The new version for WoW 4.1 causes a stack overflow when you change
to your secondary spec.
Report comment to moderator  
Reply With Quote
Unread 03-07-11, 11:00 PM  
Jamash
A Fallenroot Satyr
 
Jamash's Avatar
AddOn Author - Click to view AddOns

Forum posts: 20
File comments: 25
Uploads: 4
I'm back, from outer space

Sorry for the long period of inactivity, but I'm working on a bug fix and general code cleanup version of Learning Aid, probably to be designated 1.11.1 (yay symmetry) to be released before WoW 4.1.0 drops. Also, my guild got Mobile Banking so I can easily test fixes to that problem.

Dridzt, could you create a diff of the code you wrote to detect long runs of SPELLS_CHANGED, put it on http://wowuidev.pastey.net/, and post a link here (or PM me)?
Report comment to moderator  
Reply With Quote
Unread 02-24-11, 11:28 AM  
Dridzt
A Pyroguard Emberseer
 
Dridzt's Avatar
AddOn Author - Click to view AddOns

Forum posts: 1359
File comments: 829
Uploads: 55
I did some further debugging.
It turns out the spellbook update is totally unreliable on Blizzard's end.

I added some debug prints to Learning Aid to see what's happening and the problem comes from a combination of things.

1. The guild perks part of the spellbook is not always available at PLAYER_ENTERING_WORLD.
Furthermore it appears completely random when it is and isn't.

Sometimes it's there on a cold login, sometimes not.
Even when it's there on a cold login crossing a loading screen (portal, instance etc) does a spellbook update and again guild perks may or may not be available at P_E_W.

2. Sometimes a series of many SPELLS_CHANGED events fires in quick succession after / as the player enters the world.
I'm assuming 1 for each guild perk.
Say 10 SPELLS_CHANGED fire in a second.
At some point DiffSpellBook() gets to the event that fires for "Mobile Banking" becoming available.
Since each invocation of DiffSpellBook() calls UpdateSpellbook() updating the spellbook cache,
it compares the spellbook cache of SPELLS_CHANGED #6 ("Mobile Banking" is known but hasn't yet loaded in the spellbook) to the diff taken at SPELLS_CHANGED #7 ("Mobile Banking" has loaded again) and flags it as "new" adding it to the LA frame.

Leaving aside the mess that Blizzard events seem to be, LA will need to ignore quick firing SPELLS_CHANGED and only UpdateSpellbook() when the last of a series of those has fired shortly after P_E_W.
Last edited by Dridzt : 02-24-11 at 05:43 PM.
Report comment to moderator  
Reply With Quote
Unread 02-23-11, 08:19 AM  
Dridzt
A Pyroguard Emberseer
 
Dridzt's Avatar
AddOn Author - Click to view AddOns

Forum posts: 1359
File comments: 829
Uploads: 55
The same thing will happen with "Have Group, Will Travel" at guild level 21 and "Mass Resurrection" at guild level 25.

These along with "Mobile Banking" are the 3 guild perks that are not passive bonuses and instead are cast.

This is obviously a race condition that creates the problem.
From what I can see there's 2 possible causes:
1. UpdateSpellbook() is called at PLAYER_LOGIN to build the cache of known spells from the spellbook.
DiffSpellBook() then takes a fresh snapshot and compares to that base to decide if it should add new spells to the LA frame.
There is a possibility that the spellbook hasn't fully finished loading at PLAYER_LOGIN for guilded players,
which leads to the cache being used as a "base" for comparison later being incomplete (missing the guild perks).

2. DiffSpellBook() fires from SPELLS_CHANGED but calls UpdateSpellbook() itself.
SPELLS_CHANGED can be very spammy, firing multiple times in a very short period of time.
What happens when the function taking the snapshot of spells after a change updates the "base" it compares against itself?

I've made some changes to my local copy to filter some of this spam and only run the DiffSpellBook() function on the last of a series of SPELLS_CHANGED and it seems to have solved the issue (some minor changes were also required in the spec switch logic).

I'll run with it for a bit to see if there's other adverse effects before posting.
Last edited by Dridzt : 02-23-11 at 08:22 AM.
Report comment to moderator  
Reply With Quote
Unread 02-22-11, 02:46 AM  
MagicSN
A Murloc Raider

Forum posts: 8
File comments: 29
Uploads: 0
Sadly it seems I was too fast. In some cases it STILL pops up. I will look later, if I can find out more.
Report comment to moderator  
Reply With Quote
Unread 02-19-11, 12:15 PM  
MagicSN
A Murloc Raider

Forum posts: 8
File comments: 29
Uploads: 0
Originally posted by Jamash
I don't have access to mobile banking yet so it's kind of difficult for me to test . Please send me a PM if you'd be interested in doing some debug logging, and I'll see what I can do.
You can fix this by inserting in SpellButton.lua after the line

function LA:AddButton(kind, id)

the lines

if id == 83958 then
return
end

Then Mobile Banking will be completely ignored by the addon (including the first time it pops up, though, but better than it always popping up).

MagicSN
Report comment to moderator  
Reply With Quote
Unread 01-19-11, 05:12 PM  
Jamash
A Fallenroot Satyr
 
Jamash's Avatar
AddOn Author - Click to view AddOns

Forum posts: 20
File comments: 25
Uploads: 4
Originally posted by Veyska
The new guild perk, Mobile Banking, is popping up as a new spell on a regular basis. Seems to mostly be after a loading screen. Loading in-game and releasing from an instance both trigger it but zoning back in as a ghost doesn't, for example, but I haven't been keeping meticulous track of it though. Other two guild castable abilities may trigger it too, but it's gonna' be a long while till I can check. :-P
I don't have access to mobile banking yet so it's kind of difficult for me to test . Please send me a PM if you'd be interested in doing some debug logging, and I'll see what I can do.
Report comment to moderator  
Reply With Quote
Unread 01-19-11, 05:08 PM  
Jamash
A Fallenroot Satyr
 
Jamash's Avatar
AddOn Author - Click to view AddOns

Forum posts: 20
File comments: 25
Uploads: 4
Originally posted by Akkorian
Hi Jamash,

I’ve noticed that when I learn something (for example, Master Herbalism) and Learning Aid pops up a window with that ability, I also get a message from Learning Aid in the chat window that lists not just Master Herbalism, but also everything else I’ve learned since logging on (such as class skills, and other professions), even if I learned them hours ago.

I think this is related to the feature that hides all of the “learned” and “unlearned” spam when switching specs, but I still see the regular “learned” message when it happens. Is this a bug, or a feature? If it’s a feature, is there a way to turn it off without turning off the summary feature for switching specs?

Thanks!
Yeah it's a bug, I've been trying to hunt it down for a while now.
Report comment to moderator  
Reply With Quote
Unread 01-16-11, 09:19 PM  
Akkorian
A Flamescale Wyrmkin
 
Akkorian's Avatar
AddOn Author - Click to view AddOns

Forum posts: 111
File comments: 125
Uploads: 2
Hi Jamash,

I’ve noticed that when I learn something (for example, Master Herbalism) and Learning Aid pops up a window with that ability, I also get a message from Learning Aid in the chat window that lists not just Master Herbalism, but also everything else I’ve learned since logging on (such as class skills, and other professions), even if I learned them hours ago.

I think this is related to the feature that hides all of the “learned” and “unlearned” spam when switching specs, but I still see the regular “learned” message when it happens. Is this a bug, or a feature? If it’s a feature, is there a way to turn it off without turning off the summary feature for switching specs?

Thanks!
__________________
“Be humble, for you are made of earth. Be noble, for you are made of stars.”
Report comment to moderator  
Reply With Quote
Unread 01-15-11, 09:39 PM  
Veyska
A Kobold Labourer
 
Veyska's Avatar

Forum posts: 1
File comments: 56
Uploads: 0
The new guild perk, Mobile Banking, is popping up as a new spell on a regular basis. Seems to mostly be after a loading screen. Loading in-game and releasing from an instance both trigger it but zoning back in as a ghost doesn't, for example, but I haven't been keeping meticulous track of it though. Other two guild castable abilities may trigger it too, but it's gonna' be a long while till I can check. :-P
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.