Rarity
PLEASE READ THIS COMMENT BEFORE REPORTING ANY 12.0/MIDNIGHT ERRORS!
NEW:
- 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.
-
View User Profile
-
Send Message
Posted Mar 3, 20261x Rarity/Core/Detection.lua:71: attempt to compare field 'calendarType' (a secret string value tainted by 'Rarity')
[Rarity/Core/Detection.lua]:71: in function 'ScanCalendar'
[Rarity/Core.lua]:401: in function 'DelayedInit'
[Rarity/Core.lua]:333: in function 'func'
[Ace3/AceTimer-3.0/AceTimer-3.0.lua]:57: in function <Ace3/AceTimer-3.0/AceTimer-3.0.lua:50>
Locals:
self = <table> {
lockouts_detailed = <table> {
}
modules = <table> {
}
string_methods = <table> {
}
Testing = <table> {
}
AuctionDB = <table> {
}
bagitems = <table> {
}
advancedSettingsFrame = Frame {
}
HolidayEvents = <table> {
}
itemInfoCache = <table> {
}
foundTarget = false
modulesEnabled = <table> {
}
tempbagitems = <table> {
}
db = <table> {
}
guids = <table> {
}
itemsToPrime = <table> {
}
bar = Frame {
}
toysScanned = true
lastStatCount = 47
Utils = <table> {
}
EventHandlers = <table> {
}
architems = <table> {
}
itemsMasterList = <table> {
}
defaults = <table> {
}
catIcons = <table> {
}
relevantSpells = <table> {
}
isOpening = false
string_types = <table> {
}
npcs_to_items = <table> {
}
npcs = <table> {
}
items_with_stats = <table> {
}
optionsFrame = Frame {
}
isFishing = false
name = "Rarity"
ItemDB = <table> {
}
used = <table> {
}
Statistics = <table> {
}
isPool = false
isTradeskillOpen = false
DatabaseSchema = <table> {
}
GUI = <table> {
}
lockouts_holiday = <table> {
}
optionsCategoryID = 74
string_archraces = <table> {
}
Announcements = <table> {
}
isTradeWindowOpen = false
Database = <table> {
}
isGuildBankOpen = false
Caching = <table> {
}
zones = <table> {
}
baseName = "Rarity"
pet_sources = <table> {
}
lockouts = <table> {
}
activeHolidayEvents = <table> {
}
mount_sources = <table> {
}
profileOptions = <table> {
}
CONSTANTS = <table> {
}
items = <table> {
}
defaultModuleState = true
MapInfo = <table> {
}
CopyPastePopup = <table> {
}
Waypoints = <table> {
}
Validation = <table> {
}
opennodes = <table> {
}
encounters = <table> {
}
Tracking = <table> {
}
enabledState = true
tooltipOpenDelay = false
stats_to_scan = <table> {
}
Profiling = <table> {
}
profileFrame = Frame {
}
isAuctionHouseOpen = false
ScrollingDebugMessageFrame = <table> {
}
fishnodes = <table> {
}
Debugging = <table> {
}
items_to_items = <table> {
}
isMailboxOpen = false
Item = <table> {
}
defaultModuleLibraries = <table> {
}
Serialization = <table> {
}
Output = <table> {
}
fishzones = <table> {
}
orderedModules = <table> {
}
isBankOpen = false
Enum = <table> {
}
Tooltips = <table> {
}
coins = <table> {
}
MINOR_VERSION = 752
AddonCompartment = <table> {
}
AreaPOIs = <table> {
}
barGroup = Frame {
}
collection_items = <table> {
}
Collections = <table> {
}
miningnodes = <table> {
}
Session = <table> {
}
}
reason = "DELAYED INIT"
today = <table> {
monthDay = 3
weekday = 3
month = 3
minute = 26
hour = 17
year = 2026
}
month = 3
day = 3
year = 2026
monthInfo = <table> {
firstWeekday = 1
numDays = 31
year = 2026
month = 3
}
curMonth = 3
curYear = 2026
monthOffset = 0
numEvents = 4
numLoaded = 0
(for index) = 1
(for limit) = 4
(for step) = 1
i = 1
calendarEvent = <table> {
clubID = <no value>
numSequenceDays = <no value>
eventID = <no value>
eventType = <no value>
sequenceType = <no value>
isCustomTitle = <no value>
startTime = <table> {
}
difficultyName = <no value>
endTime = <table> {
}
invitedBy = <no value>
inviteStatus = <no value>
dontDisplayEnd = <no value>
difficulty = <no value>
isLocked = <no value>
title = <no value>
calendarType = <no value>
inviteType = <no value>
sequenceIndex = <no value>
dontDisplayBanner = <no value>
modStatus = <no value>
}
(*temporary) = <no value>
(*temporary) = <no value>
(*temporary) = "Calendar event IDs should now be available in all WOW product lines"
(*temporary) = "attempt to compare field 'calendarType' (a secret string value tainted by 'Rarity')"
table = <table> {
}
C_Calendar = <table> {
}
-
View User Profile
-
Send Message
Posted Mar 2, 2026Hey man, is there a way to turn of the screenshots just for Mysterious Skyshards?
My screenshot folder is full of Mysterious Skyshards screenshots.
-
View User Profile
-
Send Message
Posted Mar 1, 2026is this going to be updated for midnight? its showing as red/incompatible for current version of retail wow T_T for version 1.0(r751-release)
-
View User Profile
-
Send Message
Posted Mar 1, 2026In reply to ArticSkoll:
yes
i know
pls read b4 asking T_T
(You can use the latest alpha)
-
View User Profile
-
Send Message
Posted Mar 4, 2026In reply to RDW:
apologies, didnt see there was a FAQ/master thread for such things prior to the above comment.
-
View User Profile
-
Send Message
Posted Feb 25, 2026This was in normal Ulduar, when I killed a boss (Thorim)
2x Rarity/Core/Detection.lua:71: attempt to compare field 'calendarType' (a secret string value tainted by 'Rarity')
[Rarity/Core/Detection.lua]:71: in function 'ScanCalendar'
[Rarity/Core.lua]:401: in function 'DelayedInit'
[Rarity/Core.lua]:327: in function 'func'
[Rarity/Libs/AceTimer-3.0/AceTimer-3.0.lua]:57: in function <...aceRarity/Libs/AceTimer-3.0/AceTimer-3.0.lua:50>
-
View User Profile
-
Send Message
Posted Mar 1, 2026In reply to KomsBoult:
Should be fixed in one of the next alpha versions (PRs on GitHub still need to be merged).
-
View User Profile
-
Send Message
Posted Feb 22, 2026edit: as RDW notes below you can set the branch to alpha on release channel and test that out which would probably be a better idea.
-
View User Profile
-
Send Message
Posted Feb 22, 2026In reply to wyrde:
Alternatively, you could just use the latest alpha. Set release channel to "alpha", done.
Many items won't track without the changes it includes, and if there's any leftover errors it would be more sensible to report them instead of asking people to use unsupported forks when there have been new alpha versions almost daily. In my humble opinion, anyway.
-
View User Profile
-
Send Message
Posted Feb 22, 2026In reply to RDW: oh neat i'll do that too.
-
View User Profile
-
Send Message
Posted Feb 12, 2026Hello,
Just after a bit of advice. When i enable Rarity i get xxx addon has been blocked message. I disable said addon & relog to get the same xxx has been blocked for another addon & this cycle continues addon after addon.
If i disable Rarity no addons display this blocked message, they all work fine just do not seem to work well with rarity. Any idea what the issue might be?
My apologies if this is a known thing.
-
View User Profile
-
Send Message
Posted Feb 12, 2026In reply to ImmortalMotion: There's something with how Rarity is using the AceEvent library which causes it to conflict with other addons. Rarity is definitely the source since the issue only reproduces with it enabled.
-
View User Profile
-
Send Message
Posted Feb 12, 2026In reply to TheCheat54:
AceEvent is a red herring. Blizzard removed certain combat events that Rarity relied on.
See GitHub issues for technical details, or wait for the 12.0 release that may "fix" it.
-
View User Profile
-
Send Message
Posted Feb 12, 2026In reply to ImmortalMotion:
Apology accepted. It is a known thing.
My advice would be to read the other comments :)
-
View User Profile
-
Send Message
Posted Feb 13, 2026In reply to ImmortalMotion: yeah i have the same error with ace3 when rarity is enabled, not a big deal but it's there
-
View User Profile
-
Send Message
Posted Jan 31, 2026This absolutly works. Though I took it one step further, not only updating the interface version in rarity.toc, but I went through every folder in both the Rarity and Rarity_Options folders and updated all RETAIL WoW ONLY *.toc files to the following: ## Interface: 120000, 120001 and ## X-Min-Interface: 120000. The only thing, so far, that I have noticed not working exactly correct, is I also use Titan Bar, and I have the Rarity addon button on Titan bar, and when I hover over the icon, there is about a 2-3 second, game lock up, delay in showing the window. Now this could be due to the amount of data its trying to show, which I have yet to modify in game settings, but so far I am glad to say, great to have this addon back and again so far working.
-
View User Profile
-
Send Message
Posted Jan 31, 2026In reply to Break977:
There is no "retail only" TOC file. The interface versions you listed describe all supported WOW product lines and are fetched automatically from Blizzard's CDN servers.
In any event, it would be a lot easier to just use the latest alpha version :)
-
View User Profile
-
Send Message
Posted Feb 3, 2026In reply to RDW:
I'm on alpha but I get an error when it's enabled from Ace3
"ace3 has been blocked ..."
It's rarity that does it
-
View User Profile
-
Send Message
Posted Feb 7, 2026In reply to Allfakennyone:
I wonder if there's any information about this issue.
Maybe others have asked about it recently?
-
View User Profile
-
Send Message
Posted Feb 13, 2026In reply to RDW: looks like someone above me posted their error with ace3
It still does it with rarity enabled but stops when it's disabled. So it's something within this addon