pajlads / DinkPlugin

Sends level up, clue, etc. notifications to a Discord webhook or a custom web server
https://runelite.net/plugin-hub/show/dink
BSD 2-Clause "Simplified" License
40 stars 17 forks source link

Make TOA killcount PB report challenge time #616

Open BlackCoyote opened 2 hours ago

BlackCoyote commented 2 hours ago

Checklist

Describe your Suggestion

Curently, the killcount notifier includes the total completion time when completing a Tombs of Amascut raid. Since an exception was made for the Theatre of Blood to explicitly look for the challenge time, I think it would be nice to also do the same for Tombs of Amascut.

The TOA completion message when a new challenge time PB is achieved: toa

the extra metadata of the notifier message that was sent:

  "extra": {
    "boss": "Tombs of Amascut: Expert Mode",
    "count": 569,
    "gameMessage": "Your completed Tombs of Amascut: Expert Mode count is: 569.",
    "time": "PT29M40S",
    "isPersonalBest": false,
    "party": [
      "The Bc"
    ]
  },
iProdigy commented 1 hour ago

aren't the toa CAs based on total time, rather than challenge time? tob was adjusted as an exceptional case bc those CAs use challenge time

BlackCoyote commented 1 hour ago

I'm not sure which times are required for CA's in neither TOA nor TOB, the wiki doesn't really seem to specify at a glance.

I didn't really think about it in the context of Combat Achievements, but instead of in the context of what RuneLite considers your personal best time. When you use the !pb chat command for TOA, it reports the challenge time, just like for TOB, so I expected the same time to be relevant for this notifier, but I can also see the merit in keeping it consistent in what the speed Combat Achievements for that raid are based on.

If you think it's preferred to keep the overal time for TOA PBs, it would be nice though if the challenge time and whether it is a challenge time PB could also be included in the metadata under separate names, so that custom endpoints can choose whether they want to keep it consistent with RuneLite's chat command PB, or with the relevant Combat Achievement criteria. Something like this:


    "time": "PT29M40S",
    "isPersonalBest": false,
    "challengeTime": "PT26M17S",
    "isChallengePersonalBest": true,