LibProcessable

14.8k Downloads

Battle for Azeroth and skill requirement woes

p3lim opened this issue ยท 0 comments

commented

With patch 8.0 Blizzard changed two things in regards to professions and how LibProcessable works.

  1. they removed all the skill requirements for processing all herbs, gear and most ores.
  2. they introduced separate categories for professions by expansions, making it a lot easier to level a profession for each upcoming expansion.

Both of these changes are much welcomed, but they introduced some issues.

Outland and Pandaria ores have actual skill requirements, e.g. they require a certain amount of skill in their profession category to be prospectable. As an example, Kyparite requires 25 skill in Outland Jewelcrafting to prospect.

Because of this change, for LibProcessable to be accurate, the information about a player's skill level in each category for each profession has to be collected. This very information requires the profession to (technically) be open to return any data.

So, to collect all the necessary information, LibProcessable needs to stop the UI from reacting to the professions being opened by unregistering the events that trigger the changes, then open the professions one by one and store the information, and lastly enable the UI to react to those events again.

This is how I implemented it in LibProcessable after the 8.0 patch arrived, and it worked quite well (except for some minor kinks that I could have ironed out), but a new issue arose - other addons also listen to the same events.

It is completely unfeasible for LibProcessable to keep a track of every single addon that uses these events, disable them before collecting the data, then re-enabling all of them again.

So, I've decided to leave LibProcessable "inaccurate" for those ores, and I hope one of the following two things occur to resolve this issue:

  1. Blizzard removing the expansion-specific skill requirements for these last few ores
    • For some reason they removed the requirements for all the herbs but not the ores
  2. A separate library is created to deal with the underlying events and when addons should treat them as player actions and not data collecting behind the scenes
    • This one will probably never going to happen, as many of the addons using these events today are very exclusive to each other (TSM and Skillet are two examples)