Rarity

Rarity

17M Downloads

Scavenging Arachnoid Harvester counts as an attempt

astavitsky opened this issue ยท 1 comments

commented

If I scavenge (engineering) Arachnoid Harvester that I did not have a tag on and therefore did not loot, Rarity counts scavenging and looting the scavenged parts as an attempt on Rusty Mechanocrawler. This happens every time. I am unsure if this also happens with other scavengeable bosses. Below is the rarity debug output after scavenging a Harvester corpse killed by the
opposite faction and the screenshots showing eventrace are attached Eventtrace.zip

 [12:24:13 PM] You thank Meowmage-Ysondre. 
 [12:26:51 PM] [12:23:41] Rarity_Debug: (5) - Scanning transmog (INITIALIZING) 
 [12:26:51 PM] [12:23:41] Rarity_Debug: (6) - Scanning calendar (INITIALIZING) 
 [12:26:51 PM] [12:23:41] Rarity_Debug: (7) - Scanning instance locks (INITIALIZING) 
 [12:26:51 PM] [12:23:41] Rarity_Debug: (8) - Currency updated (INITIALIZING) 
 [12:26:51 PM] [12:23:41] Rarity_Debug: (9) - Updating interesting things tables 
 [12:26:51 PM] [12:23:41] Rarity_Debug: (10) - Setting tracked item to 8494 (Parrot Cage (Hyacinth Macaw)) 
 [12:26:51 PM] [12:23:41] Rarity_Debug: (11) - Setting tracked item to 169849 (Azeroth Mini: Naeno Megacrash) 
 [12:26:51 PM] [12:23:41] Rarity_Debug: (12) - Scanning archaeology projects (DoEnable) 
 [12:26:51 PM] [12:23:41] Rarity_Debug: (13) - Loaded (running in debug mode) 
 [12:26:51 PM] [12:23:48] Rarity_Debug: (14) - Loading 1250 item(s) from server... 
 [12:26:51 PM] [12:23:48] Rarity_Debug: (15) - Scanning instance locks (DELAYED INIT) 
 [12:26:51 PM] [12:23:48] Rarity_Debug: (16) - Currency updated (DELAYED INIT) 
 [12:26:51 PM] [12:23:48] Rarity_Debug: (17) - Scanning instance locks (DELAYED INIT 2) 
 [12:26:51 PM] [12:23:48] Rarity_Debug: (18) - Building initial statistics table 
 [12:26:51 PM] [12:23:48] Rarity_Debug: (19) - Scanning calendar (DELAYED INIT) 
 [12:26:51 PM] [12:23:48] Rarity_Debug: (20) - Scanning toys (DELAYED INIT) 
 [12:26:51 PM] [12:23:48] Rarity_Debug: (21) - Scanning transmog (DELAYED INIT) 
 [12:26:51 PM] [12:23:48] Rarity_Debug: (22) - Scanning calendar (DELAYED INIT) 
 [12:26:51 PM] [12:23:48] Rarity_Debug: (23) - Scanning toys (DELAYED INIT) 
 [12:26:51 PM] [12:23:48] Rarity_Debug: (24) - Scanning transmog (DELAYED INIT) 
 [12:26:51 PM] [12:23:53] Rarity_Debug: (25) - Scanning calendar (DELAYED INIT) 
 [12:26:51 PM] [12:23:53] Rarity_Debug: (26) - Scanning toys (DELAYED INIT) 
 [12:26:51 PM] [12:23:53] Rarity_Debug: (27) - Scanning transmog (DELAYED INIT) 
 [12:26:51 PM] [12:24:02] Rarity_Debug: (28) - Initialization failed to retrieve 1239 item(s) 
 [12:26:51 PM] [12:24:07] Rarity_Debug: (29) - Loading 1239 item(s) from server... 
 [12:26:51 PM] [12:24:20] Rarity_Debug: (30) - Initialization failed to retrieve 89 item(s) 
 [12:26:51 PM] [12:24:23] Rarity_Debug: (31) - Scanning calendar (DELAYED INIT) 
 [12:26:51 PM] [12:24:23] Rarity_Debug: (32) - Scanning toys (DELAYED INIT) 
 [12:26:51 PM] [12:24:23] Rarity_Debug: (33) - Scanning transmog (DELAYED INIT) 
 [12:26:51 PM] [12:24:25] Rarity_Debug: (34) - Loading 89 item(s) from server... 
 [12:26:51 PM] [12:24:25] Rarity_Debug: (35) - Finished loading 89 item(s) from server 
 [12:26:51 PM] [12:24:55] Rarity_Debug: (36) - LOOT_READY with target: Creature-0-3019-1643-291-151934-000009CA1A 
 [12:26:51 PM] [12:24:55] Rarity_Debug: (37) - Locking session for 1 second(s) to prevent duplicate attempts from being counted 
 [12:26:51 PM] [12:24:55] Rarity_Debug: (38) - 3 slot(s) to loot 
 [12:26:51 PM] [12:24:55] Rarity_Debug: (39) - Checking NPC guid (1): Creature-0-3019-1643-291-151934-000009CA1A 
 [12:26:51 PM] [12:24:55] Rarity_Debug: (40) - NPC ID is one we need: 151934 
 [12:26:51 PM] [12:24:55] Rarity_Debug: (41) - New attempt found for Rusty Mechanocrawler 
 [12:26:51 PM] [12:24:55] Rarity_Debug: (42) - Starting a session 
 [12:26:51 PM] [12:24:55] Rarity_Debug: (43) - Setting tracked item to 8494 (Parrot Cage (Hyacinth Macaw)) 
 [12:26:51 PM] [12:24:55] Rarity_Debug: (44) - Setting tracked item to 168823 (Rusty Mechanocrawler) 
 [12:26:51 PM] [12:24:55] Rarity_Debug: (45) - Checking NPC guid (2): Creature-0-3019-1643-291-151934-000009CA1A 
 [12:26:51 PM] [12:24:55] Rarity_Debug: (46) - Checking NPC guid (3): Creature-0-3019-1643-291-151934-000009CA1A 
 [12:26:51 PM] [12:24:56] Rarity_Debug: (47) - LOOT_READY with target: Creature-0-3019-1643-291-151934-000009CA1A 
 [12:26:51 PM] [12:24:56] Rarity_Debug: (48) - Session is locked; ignoring this LOOT_READY event 
 [12:26:51 PM] [12:24:56] Rarity_Debug: (49) - Unlocking session to continue scanning for new LOOT_READY events 
 [12:26:51 PM] [12:25:23] Rarity_Debug: (50) - Scanning calendar (DELAYED INIT) 
 [12:26:51 PM] [12:25:23] Rarity_Debug: (51) - Scanning toys (DELAYED INIT) 
 [12:26:51 PM] [12:25:23] Rarity_Debug: (52) - Scanning transmog (DELAYED INIT) 
 [12:26:51 PM] [12:26:23] Rarity_Debug: (53) - Scanning calendar (DELAYED INIT) 
 [12:26:51 PM] [12:26:23] Rarity_Debug: (54) - Scanning toys (DELAYED INIT) 
 [12:26:51 PM] [12:26:23] Rarity_Debug: (55) - Scanning transmog (DELAYED INIT)`
commented

Thanks for the report! I can confirm that there's a surefire way to reproduce the problem:

  1. Kill and loot any NPC that has a tracked item and is using the NPC method
  2. Reload UI, or manually clear the list of "already seen" NPC GUIDs (via /run Rarity.guids = {})
  3. Salvage, skin, use herbalism, or any other spell that triggers a LOOT_READY event

When salvaging/skinning/etc. the same NPC, the second attempt would normally be blocked. But when salvaging a creature that can't be looted (e.g., because someone else killed it) Rarity counts the attempt since it believes you just looted it normally.

Step 2 above simulates this situation without having to wait for other players; the relevant code is located here.

Luckily, there's some logic to check for salvage-like spells here. Only, it doesn't support this particular spell, because it hasn't been added to the database yet. As soon as (all of) the relevant spells have been added there, the problem should be resolved.