File Details
v1.1.7
- R
- May 2, 2026
- 292.23 KB
- 10
- 12.0.5
- Retail
File Name
GOBIGnINTERRUPT-v1.1.7.zip
Supported Versions
- 12.0.5
GOBIGnINTERRUPT
v1.1.7 (2026-05-02)
Full Changelog Previous Releases
- v1.1.7 - kick counter double-count for addon user (Path 1 + Path 2)
User report: "kick count under the interrupt bar is always showing a
high amount for the addon user which is way more than what it is".
** Root cause **
KickCounter has two attribution paths and both fire for the local user's
own kicks. Confirmed in an earlier debug log:
kick++ Ballripper spell=6552 total=5 <-- Path 1 onCast
kick++ Ballripper (temporal-attrib via player) total=6 <-- Path 2
Same kick, +2.- Path 1: UNIT_SPELLCAST_SUCCEEDED -> onCast() credited any cast of an
interrupt spell, regardless of whether anything was actually
interrupted. - Path 2: UNIT_SPELLCAST_INTERRUPTED on an enemy unit triggers
attributeInterrupt() which credits the party member whose
UNIT_SPELLCAST_SUCCEEDED was within 0.5s — the authoritative
"this kick actually landed" signal.
Other party members weren't double-counted because:
- Without addon: their UNIT_SPELLCAST_SUCCEEDED arrives with a 12.0.5
redacted/tagged spell ID, SafeSpellID returns nil, Path 1 bails at
the type guard. Only Path 2 credits. - With addon: Path 1 still bails on the redacted ID; their CDComm "I"
broadcast hits AttributePeer which clears recentPartyCasts and
stamps recentPeerAttribAt, so Path 2's attributeInterrupt skips.
The addon user (the only player whose own spell IDs aren't redacted)
was the one and only victim of double credit.
Plus a secondary correctness bug: Path 1 credited interrupts that didn't
land at all (target not casting / stunned / dead / out of range). The
counter is supposed to track "kicks landed", not "kicks cast".
** Fix **
Drop the counts++ in onCast. UNIT_SPELLCAST_INTERRUPTED is the single
authoritative signal; attributeInterrupt routes addon user, addon peers,
and non-addon peers all through the same path with consistent
"+1 only when the interrupt actually landed" semantics. onCast becomes
a debug-log-only function so the cast event is still visible during
tracing.
Co-Authored-By: Claude Opus 4.7 (1M context) noreply@anthropic.com
- Path 1: UNIT_SPELLCAST_SUCCEEDED -> onCast() credited any cast of an

