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.
In reply to Lilyoptra:
As a very late follow-up:
I think the issue should be fixed with the next release, though some more testing is needed.
My game freezes for a few seconds whenever i hover over the minimap button, any fix? just downloaded the addon
In reply to Nhes:
If you have a lot of items listed in the tooltip (i.e., items that aren't yet collected), it's probably too slow because there are too many and the tooltip library simply cannot handle it.
This is a known issue and can't easily be resolved at this time as the entire GUI would have to be remade, but some workarounds users have reported are minimizing some groups, disabling some categories, or otherwise reducing the amount of items displayed at once. Some also reported success after changing the sorting order.
I assume the tooltip is shown normally and just takes too long to load here. If it's something else, I'll need more information.
In reply to Cakechart:
Is there a way to disable "battle pets" category for example? I really hope it's not like manually untracking every single pet there.
What is this BUG???
(Just clicked on Auctionhouse and also happens when closing...)
-------------------------------
Message: Interface\AddOns\Rarity\Core\Debugging.lua:20: bad argument #2 to 'format' (string expected, got nil)
Time: Fri Mar 27 09:02:38 2020
Count: 1
Stack: Interface\AddOns\Rarity\Core\Debugging.lua:20: bad argument #2 to 'format' (string expected, got nil)
[string "@Interface\AddOns\TradeSkillMaster\LibTSM\Service\ErrorHandler.lua"]:733: in function <...Ons\TradeSkillMaster\LibTSM\Service\ErrorHandler.lua:693>
[string "=[C]"]: ?
[string "=[C]"]: ?
[string "@Interface\AddOns\Rarity\Core\Debugging.lua"]:20: in function `Debug'
[string "@Interface\AddOns\Rarity\Core\Session.lua"]:126: in function `End'
[string "@Interface\AddOns\Rarity\Core\Session.lua"]:56: in function `func'
[string "@Interface\AddOns\Ace3\AceTimer-3.0\AceTimer-3.0.lua"]:57: in function <Interface\AddOns\Ace3\AceTimer-3.0\AceTimer-3.0.lua:50>
Locals: errMsg = "Interface\AddOns\Rarity\Core\Debugging.lua:20: bad argument #2 to 'format' (string expected, got nil)"
tsmErrMsg = nil
oldModule = nil
private = <table> {
CreateErrorFrame = <function> defined @Interface\AddOns\TradeSkillMaster\LibTSM\Service\ErrorHandler.lua:514
num = 0
ErrorHandler = <function> defined @Interface\AddOns\TradeSkillMaster\LibTSM\Service\ErrorHandler.lua:132
hitInternalError = false
origErrorHandler = <function> defined @Interface\SharedXML\SharedBasicControls.lua:295
FormatErrorMessageSection = <function> defined @Interface\AddOns\TradeSkillMaster\LibTSM\Service\ErrorHandler.lua:495
AddonBlockedHandler = <function> defined @Interface\AddOns\TradeSkillMaster\LibTSM\Service\ErrorHandler.lua:480
SanitizeString = <function> defined @Interface\AddOns\TradeSkillMaster\LibTSM\Service\ErrorHandler.lua:488
GetStackLevelInfo = <function> defined @Interface\AddOns\TradeSkillMaster\LibTSM\Service\ErrorHandler.lua:328
ParseLocals = <function> defined @Interface\AddOns\TradeSkillMaster\LibTSM\Service\ErrorHandler.lua:380
errorReports = <table> {
}
IsTSMAddon = <function> defined @Interface\AddOns\TradeSkillMaster\LibTSM\Service\ErrorHandler.lua:456
localLinesTemp = <table> {
}
GetStackInfo = <function> defined @Interface\AddOns\TradeSkillMaster\LibTSM\Service\ErrorHandler.lua:297
}
MAX_STACK_DEPTH = 50
OLD_TSM_MODULES = <table> {
1 = "TradeSkillMaster_Accounting"
2 = "TradeSkillMaster_AuctionDB"
3 = "TradeSkillMaster_Auctioning"
4 = "TradeSkillMaster_Crafting"
5 = "TradeSkillMaster_Destroying"
6 = "TradeSkillMaster_Mailing"
7 = "TradeSkillMaster_Shopping"
8 = "TradeSkillMaster_Vendoring"
9 = "TradeSkillMaster_Warehousing"
}
In reply to Forge_User_39912282:
I've been getting the same error for about a week as well. Pops up every time rarirty should update
In reply to Forge_User_39912282:
I've been getting the same error for about a week as well. Pops up every time rarirty should update
In reply to pazypax:
Doesn't appear to happen for me, but I can look into it. Did you try disabling all other addons?
Status: https://github.com/SacredDuckwhale/Rarity/issues/171
Hi,
When I hover over the mini map button to see all rares and attempts, I get this error:
Date: 2020-03-26 09:58:20
ID: 3
Error occured in: Global
Count: 1
Message: ..\AddOns\Rarity\Core\GUI.lua line 1198:
Usage: GetItemInfo(itemID|"name"|"itemlink")
Debug:
[string "=[C]"]: ?
[string "=[C]"]: ?
[string "@Rarity\Core\GUI.lua"]:1198:
Rarity\Core\GUI.lua:1127
[string "@Rarity\Core\GUI.lua"]:1704: ShowTooltip()
[string "@Rarity\Core\GUI.lua"]:404: OnEnter()
[string "@DBM-Core\Libs\LibDBIcon-1.0\LibDBIcon-1.0.lua"]:77:
...AddOns\DBM-Core\Libs\LibDBIcon-1.0\LibDBIcon-1.0.lua:60
In reply to Forge_User_51747777:
According to some other reports, this appears to be caused by a custom item with an invalid item ID. I'm looking into a workaround for the issue, but you should be able to delete (and re-add) any affected items to restore functionality in the meantime.
In reply to Cakechart:
Not an IT brainiac here ... what do you mean by deleting and re adding items? i never added an item before, i only use your addon for the list and attempts
In reply to Forge_User_51747777:
This issue was reportedly caused by Custom items, are you sure you haven't entered anything under the "custom" tab? If the data for an item can't be retrieved from the server, this appears to be a cause for this error.
I'll have to look into it more if you're saying you literally haven't touched any settings at all. Does it still occur if you switch to a different (new/empty) profile?
Status: https://github.com/SacredDuckwhale/Rarity/issues/166
Date: 2020-03-17 05:58:08Date: 2020-03-17 05:58:08ID: 3Error occured in: GlobalCount: 1Message: ..\AddOns\Rarity\Core\Debugging.lua line 20: bad argument #2 to 'format' (string expected, got nil)Debug: [string "=[C]"]: ? [string "=[C]"]: ? [string "@Rarity\Core\Debugging.lua"]:20: Debug() [string "@Rarity\Core\Session.lua"]:95: End() [string "@Rarity\Core\Session.lua"]:56: func() [string "@AckisRecipeList\libs\AceTimer-3.0\AceTimer-3.0.lua"]:57: ...s\AckisRecipeList\libs\AceTimer-3.0\AceTimer-3.0.lua:50Locals:
AddOns: Swatter, v7.3.1 (<%codename%>) AccountantClassic, vv2.11.08.11302 AckisRecipeList, v8.3.0.2 AckisRecipeListQuickScan, v7.3.0.1 AddFriend, v3.29 AdventureGuideLockouts, v1.3.3 AlreadyKnown, v1.26 Armory, vv15.9.0 ArmoryGuildBank, vv15.9.0 AuctionProfit, vv1.8 Auctionator, v8.3.0 BagSlots, v80205-2 CharacterAchievements, v3.1 DBMArchaeology, v DBMCore, v8.3.17 DBMDefaultSkin, v DBMInterrupts, v8.3.0 DBMRaidLeadTools, vr124 DBMSoundEventsPack, v1.6.5 DBMSpellTimers, v DBMStatusBarTimers, v DBMTimelessIsle, v Decursive, v2.7.6.7 ExtTabardUI, v1.0.2 FactionAddict, v1.58 GatherLite, v1.3.0-retail GoldenPortrait, v GoldTracker, vv1.0 GTFO, v4.55 IHearYouAll, v5.2 JPostal, vv4.0.2 KibsItemLevel, v8.0.1.4 LibSharedMedia30, v3.0-113 LockedOut, v1.10.5 Mappy, v3.8.5 Oilvl, v8.3 Omen, v3.2.2 OmniCC, v8.3.5 OmniCCConfig, v Overachiever, v1.0.9 OverachieverCache, v1.0.9 OverachieverTabs, v1.0.9 PlayerXPBar, v2.6.2 Quartz, v3.5.2 RareScanner, v7.0.0 Rarity, v1.0 (r696-release) RarityOptions, v Recount, vv8.3.0c Scrap, v8.3.2 ScrapConfig, v ScrapMerchant, v ShowLevel, v5.1.2 SlideBar, v7.3.1 (<%codename%>) Soldit, vv2.6 Stackpack, v8.2.5 SushiSort, v7.0.0.0 TargetClassIcon, v1.3.3-8.3.0 TomTom, vv80300-1.1.2 VuhDo, v3.112 VuhDoOptions, v3.112 WorkComplete, vv8.3.0.20200120 WorldBossStatus, vv6.0.6 WorldBossTimers, vv1.4 ZygorGuidesViewer, v7.0 BlizRuntimeLib_enUS v8.3.0.80300 <none> (ck=5f0)
In reply to merthalde:
What were you doing when this error occured? And does it affect the functionality of the addon? It appears the item that was supposed to be tracked wasn't yet loaded from the server, which should happen after logging in.
It takes a bit to load all the items, since there are so many of them and the server doesn't like being queried for them all at once, so Rarity spaces it out a little during the initialization phase (after logging in). It might happen that some data hasn't loaded yet under such circumstances.
Hello, I've noticed there's a report being made when I attempt to fish at Darkmoon Faire, Garrison, and several other locations. Figured I'd pass along the info I have on hand. (If more is needed, please let me know)
UI Error Report
---------------------
Message: Interface\AddOns\Rarity\Core\EventHandlers.lua:1165: attempt to index global 'fishzones' (a nil value)
Time: Mon Mar 2 03:37:26 2020
Count: 12
Stack: Interface\AddOns\Rarity\Core\EventHandlers.lua:1165: attempt to index global 'fishzones' (a nil value)
Locals: <none>
---------------------
Debug Log
---------------
Rarity: Debug mode ON
Rarity: BAG_UPDATE
Rarity: Detected UNIT_SPELLCAST_SENT for unit = player, spellID = 131474, castGUID = Cast-3-3788-974-16643-131474-00055CD3CD, target = nil
Rarity: Detected relevant spell: 131474 ~ Fishing
Rarity: Fishing or opening something
Rarity: Getting world target nil
Rarity:OnSpellcastSucceeded triggered with relevant spell 131474
Rarity: Getting world target nil
Rarity: Getting world target nil
Rarity: Getting world target nil
Rarity: LOOT_READY with target: NO TARGET
Rarity: Locking session for 1 second(s) to prevent duplicate attempts from being counted
Rarity: Successfully fished
Rarity: Getting world target Fishing Bobber
Rarity: LOOT_READY with target: NO TARGET
Rarity: Session is locked; ignoring this LOOT_READY event
Rarity: Unlocking session to continue scanning for new LOOT_READY events
Rarity: Setting lastNode to nil
Rarity: Setting lastNode to nil
Rarity: You didn't loot anything from that fishing. Giving Up.
Rarity: Debug mode OFF
In reply to Blushadows:
Thanks for the report! The latest beta has a lot of potentially risky changes and that seemingly caused some (a hopefully small number of) bugs. I'll get it fixed with the next beta version :)
In reply to Cakechart:
Authors have a pretty thankless job so anytime I find something, I try to provide what I can.
My thanks to all involved in keeping this addon viable for so many years.
In reply to Blushadows:
Thanks, that error was caused by a mere oversight and is now fixed (in r696-beta-2). Please let me know if you encounter anything else!
my wow lagt is laggi froze for seconds with rarity
In reply to Forge_User_13442166:
I have a similar problem, when Rarity is loaded and used in-game, I have random freezes which sometimes can take a couple of seconds.
For that reason I don't use the addon anymore. Which is a shame because I love Rarity, hopefully it will be fixed in the near future.