Rarity
NEW:
- Support for Cataclysm Classic (experimental)
- Rarity now has a Discord server!
If you're interested in following the development process or contributing, you should also check out the official GitHub repository. We're always in need of more hands to help us make the addon better!
Rarity tracks how many times you've tried to obtain various rare items like mounts, battle pets, and toys. It will tell you how likely you are to obtain the item, track how long you've been farming for it, and tell you how lucky you've been so far. Although it's mostly used for mounts, battle pets, and toys, it supports pretty much any item, including profession patterns, archaeology projects, and more.
Looking for Rarity Item Packs? Click here.
Out of the box, Rarity includes support for every single mount, battle pet, and toy in the game which require some time to farm. It also includes support for some mount-related items like Skyshard, Primal Egg, and Giant Dinosaur Bone. It'll even notice if you mouseover a Mysterious Camel Figurine, plus lots of other stuff. Rarity factors in the size of a typical group when determining probabilities, and can also tell you if you've killed various bosses this week (or day). Holiday just started, and you didn't notice? Rarity will give you a helpful reminder to run those holiday dungeons or daily quests if you still need an item from them.
If Rarity doesn't track something you want to track, you can add it yourself! Just about everything is user configurable.
Curious what math is going on behind the scenes? The author of Bunny Hunter created the original algorithms. He wrote an article about it here. Your chance to obtain an item doesn't increase as you farm it; Rarity is just telling you how lucky you've been so far. It can be remarkably cathartic to see a progress bar move up as you spend hours upon hours trying for that Disgusting Oozeling.
Main features
- Rarity is primarily an LDB feed with a large tooltip. It can function as either a mini-map icon (you have to turn this on in the options), or as a standard LDB feed (use a display like Fortress, Button Bin, Titan Panel, or Chocolate Bar).
- Provides a progress bar, which you can toggle by clicking the icon or feed label.
- Adds info to NPC and item tooltips, showing you if it drops or contains something that Rarity tracks. Rare mobs with a guaranteed drop show which item they drop and if you've defeated them yet.
- Includes full source info, telling you how to obtain everything Rarity tracks.
Other features
- Share packs of items with other users
- Can automatically add waypoints to TomTom for certain items
- Uses statistics whenever possible to keep track of attempts
- Breaks your farming down by session, day, week, and month
- Looks at your instance locks to see if you've defeated various bosses recently
- Reminds you if you need to farm a holiday dungeon or daily quest, and hides holiday items that aren't available right now
- Supports bonus coin rolls
- Automatically screenshots when you obtain an item
- Keeps track of rare achievements like Frostbitten and Glorious
- You can add your own items to track
- Lets you modify your attempt count without having to edit saved variables
- Automatically imports data from Bunny Hunter if you're switching
Slash Commands
Simply typing /rarity should open the options menu (unless disabled).
For troubleshooting issues:
- /rarity dump displays the most recent debug log entries (even if the debug mode is disabled)
- /rarity validate checks the consistency of your item database, including custom items (experimental)
Comments & bug reports
Help translate Rarity
Click here to help translate Rarity into your language.
Frequently Asked Questions
Click here to read the Frequently Asked Questions. Please read this before requesting support.
Hello, I’ve been having the issue of my mount attempts resetting on a weekly basis. I’ve looked through the settings to see if I could change this but am not able to see a setting for this and according to curseforge the addon is up to date. Any help is appreciated, thank you!
In reply to viserion54321:
Which mounts are affected? Have you made certain the WOW client can save your attempts to disk (no readonly flag on the Saved Variables)?
Addons have no power over the latter part, so if attempts aren't saved across sessions it's likely to be a problem unrelated to the addon itself.
In reply to Cakechart:
After uninstalling and reinstalling all my addons (including rarity) it was keeping track of everything for the past week. Once I logged on a second ago all the attempts were gone besides the ones from dungeons and raids (e.g. G.M.O.D, antoran charhound, living infernal core, etc.). None of the SavedVariable folders look to be set to read only. It is not only losing the attempts on the non instance attempts but it is also resetting small settings (e.g. minimap icon was turned off)
Thank you for any help!
In reply to viserion54321:
That very much sounds like the SavedVariables was corrupted/reset, as only the statistics gathered from Blizzard seem to have persisted (and they are pulled from the server).
Unfortunately, this still isn't something Rarity itself could fix. Those settings are managed by the WOW client and your operating system (on disk) and not by the addons themselves.
There's many reasons this could occur, from read-only files, lack of permissions on the file system, to unexpected behaviour in the WOW client itself or even an unexpected shutdown of your machine.
I've personally encountered this when updating addons while the game was running or when the client crashed, but either way I don't see how I could help you with these sorts of problems :(
In reply to Cakechart:
Yea after doing some more research I think this came from the game/computer shutting down unexpectedly. Will just have to keep a backup of the WTF folder for the future. Thanks
Hello, I've got an issue with the tracking of Larion Pouncer. The npc id of the npc that is looted seemed correct and localization also should not be an thing in this case. I've disabled the quest id 61634 but this didn't help. So I added 156339 to the npcs and it finally counted. I didn't reactivate the quest id I previously commented out, so I don't know if this matters.
My line looks like this now "line 578 npcs = {156340, 156339 }," but it wasn't counted twice. So no idea what is wrong with Orstus, but Sotiros works.
In reply to Selthi:
The quest is only checked to determine whether the item should be listed as "defeated". As for the detection, I don't know what might be the problem with this particular item, but I'd guess some of the following:
* The NPC ID is wrong (enable /rarity debug and mouse over it to check)
* The NPC that's listed doesn't actually drop the item, or even anything at all
Both should be accurate according to wowhead, but I don't have a way to test it myself. You could try checking the debug log after looting it to see if it says something about the original NPC?
In reply to Cakechart:
Yes, the NPC and item IDs appeared right for me too and I've also seen the rarity counter in his tooltip before.
Not both of this NPC pair are lootable after defeating them, only Sotiros was glimmering.
Is this the debug part you need?
This is with my changes:
[18:42:15] Rarity: LOOT_READY with target: Creature-0-3768-2222-22597-156339-0000747838
[18:42:15] Rarity: Locking session for 1 second(s) to prevent duplicate attempts from being counted
[18:42:15] Rarity: 4 slot(s) to loot
[18:42:15] Rarity: Checking NPC guid (1): Creature-0-3768-2222-22597-156339-0000747838
[18:42:15] Rarity: NPC ID is one we need: 156339
[18:42:15] Rarity: New attempt found for Larion Pouncer
[18:42:15] Rarity: Starting a session
[18:42:15] Rarity: Setting tracked item to 8494 (Papageienkäfig (Hyazinthara))
[18:42:15] Rarity: Setting tracked item to 184401 (Larion Pouncer)
[18:42:15] Rarity: Setting first tracked item to Larion Pouncer
[18:42:15] Rarity: Clearing second tracked item
[18:42:15] Rarity: Usage: SetTrackedItem(item, [index]
[18:42:15] Rarity: Checking NPC guid (2): Creature-0-3768-2222-22597-156339-0000747838
[18:42:15] Rarity: Checking NPC guid (3): Creature-0-3768-2222-22597-156339-0000747838
[18:42:15] Rarity: Checking NPC guid (4): Creature-0-3768-2222-22597-156339-0000747838
[18:42:15] Rarity: LOOT_READY with target: Creature-0-3768-2222-22597-156339-0000747838
[18:42:15] Rarity: Session is locked; ignoring this LOOT_READY event
And with my npc/quest changes undone:
[19:17:30] Rarity: LOOT_READY with target: Creature-0-3774-2222-9473-156339-0000748078
[19:17:30] Rarity: Locking session for 1 second(s) to prevent duplicate attempts from being counted
[19:17:30] Rarity: 3 slot(s) to loot
[19:17:30] Rarity: Checking NPC guid (1): Creature-0-3774-2222-9473-156339-0000748078
[19:17:30] Rarity: NPC ID not on the list of needed NPCs: 156339
[19:17:30] Rarity: Map ID not on the list of needed zones: 1533
[19:17:30] Rarity: Checking NPC guid (2): Creature-0-3774-2222-9473-156339-0000748078
[19:17:30] Rarity: NPC ID not on the list of needed NPCs: 156339
[19:17:30] Rarity: Map ID not on the list of needed zones: 1533
[19:17:30] Rarity: Checking NPC guid (3): Creature-0-3774-2222-9473-156339-0000748078
[19:17:30] Rarity: NPC ID not on the list of needed NPCs: 156339
[19:17:30] Rarity: Map ID not on the list of needed zones: 1533
[19:17:31] Rarity: LOOT_READY with target: Creature-0-3774-2222-9473-156339-0000748078
[19:17:31] Rarity: Session is locked; ignoring this LOOT_READY event
[19:17:31] Rarity: Currency updated (CURRENCY_DISPLAY_UPDATE)
[19:17:32] Rarity: Unlocking session to continue scanning for new LOOT_READY events
Update the toc file please. The addon shows still as out of date. It has been updated 8hrs ago but the author has not changed/updated .toc file "## Interface: 90002".
In reply to Devylpotato:
Done.
Argus zones have transmog sets that can be found in each zone's rotating/daily treasure chests. These chests rotate locations within a group have an internal/invisible daily quest tracking their completion status. (For instance, one such chest group and its associated tracking quest.)
In essence, each chest has a many-to-many relationship to each potential transmog item drop. Is it possible to set up custom item rules so that opening a chest counts as an attempt towards that item? I tried setting it up as a container rule, but I think that's for item containers like Paragon caches. And trying to use the tracking quest ID as an "item defeated" quest ID doesn't register either.
In reply to seleste_star:
The "item defeated" quest ID pertains to the defeat detection, which is unrelated to tracking attempts. There isn't currently a detection mode for objects (which is what the chests are), as the WOW API doesn't allow detecting those easily.
What Rarity does currently is scan the GameTooltip for specific text whenever an item requires detecting the looting of an object in the game world. This has severe limitations, such as being reliant on the object's name being localized for non-English clients, and is implemented via custom logic that has to be added for each supported item.
In short, it's not currently possible. I'll add it to the list of things to look into, but given the tremendous backlog I can't promise it will be tackled anytime soon.
Status: https://github.com/SacredDuckwhale/Rarity/issues/310
In reply to Cakechart:
No worries, I was just curious as to whether it could be done at all given the current settings. Thanks for clearing that up!
In reply to seleste_star:
It should be relatively simple to add another method that listens for an object's name (using the existing logic), with the caveat that you'd have to enter the name for your client locale and it'll work on any object with that name, even if it's a different one that merely happens to have the same name.
Anything else would probably be more complex, including the possibility to reliably track quest completion. Perhaps that would already suffice for your use case, though?
In reply to Cakechart:
At a glance, just using the object name would be insufficient because there are multiple chest groups sharing the same name within each zone, but each chest group has a different loot table. If it were the same, it'd likely be sufficient, but as it stands, it'd have to be combined with some other information like the tracking quest ID.
Out of curiosity, I took a peek at the event handling to look at existing examples... I see that the Shadowlands special caches are essentially what you're getting at, but figuring out which chest would require also consulting lockout quest status. But I suspect there might be a similar problem as Dunegorger Kraulok/Slightly Damp Pile of Fur, where the order in which the events are fired is not guaranteed. You'd have to separately handle the "Container looted" and "Quest status changed" events (is there even an event fired for internal quests?) and link them together... All in all, definitely more trouble than it's worth for a very minor set of transmog items.
In reply to seleste_star:
There's no event to signal quest completion that would be useful in this case. The only way to check would be to store a list of all completed quests, take another snapshot after the object was looted, and compare the two to find the difference. It's not impossible, but certainly unwieldy.
Do you have a list of the mapping between containers/groups and items? If that exists somewhere I can try a few things to possibly make it work, but otherwise it's going to take far too much time I'm afraid.
In reply to Cakechart:
Wowhead has all the shared containers and IDs, though it's all on separate pages and evidently a lot of work to link it together. As a test set, though, I did put together a list of IDs for the transmog set in Krokuun: https://pastebin.com/9NjGWR9q Hopefully self-explanatory, a couple of armor pieces and their itemIDs, followed by each container and the itemIDs it can contain.
If the API just had a way to actually see the object ID of the container being opened, this'd be a lot easier, but I imagine you'd already be doing that if it were possible.
In reply to seleste_star:
There's no way to retrieve any information about generic world objects (that aren't units), except for their name, which has to be extracted from the tooltip itself.
The good news is that I managed to get a working proof-of-concept for tracking these quests:
It's obviously a heuristic and may fail in some circumstances, as it simply caches the completed quests and compares it to what was cached previously after the container has been opened. In this case it seems to work well enough, however.
If you can compile a list of all the quest and item IDs, ideally in the format of a Lua table, i.e. like the one I made for the data set you provided, I could think of a way to make it available in the addon as a plugin or something (since Rarity doesn't currently track transmog items):
Hi there,
is there a way to hide the announcement popups (which are looking like achievement popups from Blizz) when looting a mount/pet?
Could'nt find an option for it in the addon menu~~
In reply to Firiel_aka_Deliawath:
Yes, the option is called "Show achievement" and can be found under "General".