[FEATURE] Snapshots - Display previous 3 GCDs
syrifgit opened this issue ยท 12 comments
Before You Begin
- I confirm that I have downloaded the latest version of the addon.
- I am not playing on a private server.
- I checked for an existing, open ticket for this request and was not able to find one.
- I edited the title of this feature request (above) so that it describes the issue I am reporting.
Feature Request
Request to have a snapshot also pull the 3 most recent casts, as it's a question I often find myself asking people "what did you cast right before the snapshot".
Additional Information
I think it would be best placed right before the Display/recommendation output, after the target_auras
targets: Nameplates are enabled.
player_buffs:
107203 - *tyraels_charger - 1 - 3600.00
225788 - *sign_of_the_emissary - 1 - 3600.00
459722 - mastery_spirit_bond - 1 - 3600.00
231390 - trailblazer - 1 - 3600.00
457666 - *dawnthread_lining - 1 - 3600.00
404464 - *flight_style_skyriding - 1 - 3600.00
player_debuffs:
target_auras: target does not exist
prev_gcd[1]: kill_shot
prev_gcd[2]: barbed_shot
prev_gcd[3]: kill_command
New Recommendations for [ Primary ] requested at 14:15:52 ( 75934.65 ); using built-in ( Survival ) priority.
*** START OF NEW DISPLAY: Primary ***
Purged 101 marked values in 0.06ms.
Contact Information
Syrif
I took a quick stab at implementing this on a separate branch:
thewarwithin...johnnylam88:hekili:feat/snapshot-prev-spells
However, there's an oddity. When I log in on my frost DK and create a snapshot after doing absolutely nothing other than zoning in, I get:
previous:
1 - raise_dead
2 - abomination_limb
3 - no_action
4 - no_action
5 - no_action
So it's saying I've just recently cast Abomination Limb then Raise Dead as my previous spells even though I've pressed zero buttons.
Subsequently, if I just cast Howling Blast five times in a row and create a snapshot, I get:
previous:
1 - raise_dead
2 - frost_strike
3 - howling_blast
4 - howling_blast
5 - howling_blast
So it's now saying that my previous two spells cast were Frost Strike then Raise Dead even though I've done nothing but cast Howling Blast.
I'll try to track down why this happens, but perhaps @Hekili already knows?
Oh, I see. It's because I show 3 icons (main, plus 2 queued abilities), and the main and first queued ability are being stored in the state.prev
table.
Thanks for taking this on. I think you need to look at the meta table in State.lua to see where prev is populated from.
Oh, I see. It's because I show 3 icons (main, plus 2 queued abilities), and the main and first queued ability are being stored in the
state.prev
table.
I guess it would have to only return the same # of buttons as are on the display it is snapshotting, instead of a static 3 like my original idea? It looks to me like the default is to fill the array with "no_action" until you actually cast.
I'm planning on displaying the info like this:
previous:
1 - raise_dead - Recommendation #2
2 - frost_strike - Recommendation #1
3 - howling_blast
4 - howling_blast
5 - howling_blast
That way it's more clear that they are the Recommendations instead of the actual history and I don't truncate anything. I'll also extend to show the entire history of 10 instead of just the past 5.
Can you do both? Would be interesting if you could see like recommended vs actual cast.
If the previous recommendation was frost strike, but they casted something else, the previous recommendation and future recommendation aren't necessary as correlated anymore.
If I had to pick one or the other, knowing the actual spellcast seems much more useful when diagnosing. Unless I'm misunderstanding what you're explaining above.
In what I'm showing above, the first N-1
items on the list are main recommendation followed by the queued abilities where N
is the number of Icons Shown. After that, it's the actual historical spellcasts by the player.
At a glance, this would tell you how many icons they're showing, what the successive recommendations are in short-form, and the previous spellcasts the player did.
In this way, you can catch all the degenerates running with 10 Icons Shown :-D
I believe this feature is now implemented correctly. Please review and let me know!
In this way, you can catch all the degenerates running with 10 Icons Shown :-D
Well to be fair that is already known based on the # of recommendations in the first line of the snapshot. ;)
The latest version of the branch now shows only the actual casts and filters out the recommended casts in the queue.