SilverDragon - Rare Scanner
SilverDragon tracks rares. It will try everything possible to notice them and tell you about them.
How does it search?
Vignettes
Those little skull icons you see on the minimap. If one of them is a rare SilverDragon knows about, it'll yell at you.
Targets
If you mouse over or target a rare mob, SilverDragon will notice it.
Nameplates
If you have enemy nameplates turned on, SilverDragon will keep an eye on them to look for the names of known rares.
Macro
SilverDragon can also create a macro to target any rares that are known in the current zone. You can stick this on your actionbars as a button to spam while chasing after a rare, or bind it to a key. This is sort of a last resort.
How will I know when a rare is seen?
Frame
When a rare appears, SilverDragon will pop up a frame that you can click on to target it.
Warning: If you're in combat, secure action restrictions mean that it won't show up until combat finishes.
Sounds
You can choose from assorted sounds to play when a rare is seen. The sound can loop for a while, to make sure you don't miss it.
There's special settings for rares that drop mounts and world boss rares which you might want to call up a group for. If you're sitting mostly-AFK on a Time-Lost Proto Drake spawn, you probably want the sound that plays to be utterly ridiculous and go on for a good long while, to make sure you don't miss that sucker.
Messages
A notice can be sent to a number of places:
- your scrolling combat text
- your chat frame
- a channel in your chat frame (announcing it to your party, for instance)
- a popup window
- etc
Other useful things?
Custom mobs
In SilverDragon's options you'll find a "Mobs" section. In the "Always" section, you can add any mob you want to be scanned for. All you need to know is the mob id.
So, let's say you wanted to keep an eye out for Lil Timmy in Stormwind, to buy the kitten he sells. You would...
- Go to his wowhead page.
- Grab his id from the URL. It's
8666
. - Enter
8666
into the "add" field, and click "okay". - Play with your new kitten.
Yes, this example dates me.
Ignoring mobs
If there's some mob you don't want to hear about for whatever reason, just go to the "Ignore" section of the options. Again, enter the mob's id into the "add" box, then click okay. Bam! You will never again be told that Vern is up.
(Actually, Vern is ignored by default. But you get the idea.)
Syncs
SilverDragon will talk to itself. It can communicate with other copies of itself run by people in your party / guild, and tell you when they see a rare mob. (If there's a group of you camping all the Time-Lost Proto Drake spawns, say...)
You can turn this off completely, if you want to be private about it.
Tooltips
Some rares are part of an achievement. When you mouse over a rare mob, SilverDragon will add to the tooltip whether you've already killed it, so you know whether you need to rush for it.
Broker
SilverDragon includes a Broker plugin. It'll attach itself to your minimap, or a Broker container you have installed, and show you a list of the mobs it knows about in the current zone.
Other addons you may find useful
- AppearanceTooltip integrates with the SilverDragon loot popups and shows transmog-known status.
- ServerRestartSound: plays a sound when the server's about to restart. If you're AFK-camping for a rare spawn, you probably want to know about this.
- ObjectScanner: A few rares are hidden away behind interacting with world-objects like the Edge of Reality. These have to be localized individually, so you need to work out what they're called in your language and set up a watch for tooltips mentioning them. This addon does that bit.
- ButtonBin: a broker display. SilverDragon's minimap icon will show up on it (or any other addon like it) instead of cluttering up your minimap, if you have it installed.
why is Silver Dragon blocked by "AddonSkins" addon?
Hello! Thanks for your hard work. I wondering if there is any way to mark the mobs for the last time you kill them .. to keep track of the rares kill after the reset .. in Pandaria remix
I'm struggling to get this to work in Zaralek Caverns for hunting rares. I turned on the latest setting for Infinite Distance Vignettes, but it only appears to scan for them on zone entry or on world entry. New vignettes for rares won't generate an alert as they spawn. None of the mobs are being ignored and the correct rares (when alive) are properly generating alerts when I go out of my way to /reload
Hi! Thanks for your awesome work.
I started getting a little "Announce" button center screen since Tuesday. Does that happen to belong to you and if so, how do I turn it off? Thanks!
Latest release is spamming errors on Cata Pre-patch
In reply to RorthronTheWise:
Yeah, there was a bug in ChatThrottleLib -- I'm doing a rerelease to pick up the new version.
In reply to Kemayo: thank you! had to rollback to last patch which worked fine, tried to paste bug, but bugsack wouldn't let me copy for some reason =/
53102x ...SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:428: attempt to call method 'Link' (a nil value)
[string "@SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua"]:428: in function <...SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:409>
Locals:
this = Frame {
0 = <userdata>
}
delay = 0.019000
self = <table> {
Hook_SendAddonMessage = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:269
Hook_SendChatMessage = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:260
avail = 6.480000
SendAddonMessageLogged = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:608
MSG_OVERHEAD = 40
bChoking = true
Enqueue = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:487
securelyHookedLogged = true
MIN_FPS = 20
BURST = 4000
Hook_SendAddonMessageLogged = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:279
BlockedQueuesDelay = 0.425000
OnUpdate = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:409
Despool = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:359
bQueueing = true
securelyHooked = true
MAX_CPS = 800
LastAvailUpdate = 2036662.521000
OnUpdateDelay = 0
UpdateAvail = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:289
nBypass = 99
OnEvent = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:399
Init = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:186
Prio = <table> {
}
version = 26
SendChatMessage = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:503
SendAddonMessage = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:594
nTotalSent = 0
Frame = Frame {
}
HardThrottlingBeginTime = 2036660.897000
}
(for generator) = <function> defined =[C]:-1
(for state) = <table> {
BULK = <table> {
}
NORMAL = <table> {
}
ALERT = <table> {
}
}
(for control) = "BULK"
_ = "BULK"
Prio = <table> {
ByName = <table> {
}
avail = 0
nTotalSent = 0
Ring = <table> {
}
Blocked = <table> {
}
}
(*temporary) = nil
(*temporary) = <table> {
}
(*temporary) = <table> {
}
(*temporary) = "attempt to call method 'Link' (a nil value)"
ChatThrottleLib = <table> {
Hook_SendAddonMessage = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:269
Hook_SendChatMessage = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:260
avail = 6.480000
SendAddonMessageLogged = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:608
MSG_OVERHEAD = 40
bChoking = true
Enqueue = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:487
securelyHookedLogged = true
MIN_FPS = 20
BURST = 4000
Hook_SendAddonMessageLogged = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:279
BlockedQueuesDelay = 0.425000
OnUpdate = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:409
Despool = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:359
bQueueing = true
securelyHooked = true
MAX_CPS = 800
LastAvailUpdate = 2036662.521000
OnUpdateDelay = 0
UpdateAvail = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:289
nBypass = 99
OnEvent = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:399
Init = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:186
Prio = <table> {
}
version = 26
SendChatMessage = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:503
SendAddonMessage = <function> defined @SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:594
nTotalSent = 0
Frame = Frame {
}
HardThrottlingBeginTime = 2036660.897000
}
pairs = <function> defined =[C]:-1
math_min = <function> defined =[C]:-1
Same here :/
In reply to determined_khorana59:
Yeah, there was a bug in ChatThrottleLib -- I'm doing a rerelease to pick up the new version.
I updated my addon today and after that i get this error all time even after an reload:
Message: ...SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:428: attempt to call method 'Link' (a nil value)
Time: Mon May 6 10:44:13 2024
Count: 77
Stack: ...SilverDragon/lib/ChatThrottleLib/ChatThrottleLib.lua:428: attempt to call method 'Link' (a nil value)
Locals:
In reply to IngemarA:
Yeah, there was a bug in ChatThrottleLib -- I'm doing a rerelease to pick up the new version.
latest version is producing endless errors O_O
Latest version:
Date: 2024-05-04 23:17:10
ID: 2
Error occured in: Global
Count: 1
Message: Interface/AddOns/SilverDragon/loot.lua line 103:
attempt to call field 'PlayerHasTransmogByItemInfo' (a nil value)
Debug:
[string "=[C]"]: PlayerHasTransmogByItemInfo()
[string "@Interface/AddOns/SilverDragon/loot.lua"]:103:
Interface/AddOns/SilverDragon/loot.lua:94
[string "=(tail call)"]: ?
[string "@Interface/AddOns/SilverDragon/loot.lua"]:351:
Interface/AddOns/SilverDragon/loot.lua:350
[string "@Interface/AddOns/SilverDragon/loot.lua"]:361: Transmog()
[string "@Interface/AddOns/SilverDragon/outputs/ldb.lua"]:376: completion_function()
[string "@Interface/AddOns/SilverDragon/outputs/ldb.lua"]:365: SetupCompletion()
[string "@Interface/AddOns/SilverDragon/outputs/ldb.lua"]:360: SetupCell()
Is there a discord channel or something for help with this addon as i cant work out whats going on, the mini map button lists all the rares in the zone in greens or reds, what does that mean, i have rares on the ignore list i want to pop up and i dont know how they got there or if they are actually being ignored as there is a check box you can turn on and off on them but i dont know why or what it does, i must be missing something as this is known as a really good addon but i cant see any easy explanation on how to use it and its not obvious in the settings .
Edit so its just alerted me to a rare that i have no achievement, quest or items left to collect but ignored the one rare i actually need that has a recipe i want, what am i missing lol
The spellID for "Race Starting" is 403192. The spellID for "Racing / You are racing!" is 369968. At least for one specific race in Zaralek. I captured this by grabbing a screenshot of the tooltip while starting the race (instead of actually racing).
What I don't know is how to do something with that.
As far as I can tell the taxi code just uses the API to ask if you're on a taxi, so I think this might be a sneakier problem. I mean, in theory I can probably have something look for the aura and hide the popping art, but that won't change that it's doing scanning.
I suspect I should be asking this on Issues instead of comments - but yeah, I'd like to see it off during dragonraces too.
In reply to starshinewindlord: Would not really even need it to stop scanning. Just hold off announcing until the race is over.
In reply to starshinewindlord: I've got a stab at this in the current alpha.
Is there a way to automatically disable Silverdragon during Dragonriding races? Then turn it back on as soon as the race is finished?
I gotta say the default sound notifications, specifically the trinkets one is one of the most obnoxious default settings ive ever had to turn off.