Files
benilla-octo/crates
gromandClaude Opus 5 e2257f84e4 auras: -1 ms is "does not run out", not 49.71 days
grom's mount buff carried a "50d" countdown. pfUI formats a buff's remaining
time as `round(remaining / 86400) .. "d"` (api/api.lua:1689), so the span behind
that is 4 294 967 seconds -- 0xFFFFFFFF milliseconds read unsigned, which is the
core's own -1 for a permanent aura.

SMSG_UPDATE_AURA_DURATION is four bytes of signed milliseconds and is supposed
never to arrive for a permanent aura; this realm sends one anyway. AuraDurations
read it as u32 and stamped an expiry 50 days out. A negative span now leaves the
slot unstamped, which join_duration already answers (0, 0) for and which
GetPlayerBuffTimeLeft returns 0 from -- no countdown, which is what a mount has.
Zero is left alone: an expiring aura's last update is a real 0.

Ruled out first: nothing in the chain's SpellDuration.dbc is within three orders
of magnitude of it (the one infinite row, 21, is the usual -1).

Also adds `ironforge-lava`, a capture scenario that actually has magma in frame
-- `ironforge-forge` is a lighting shot of a railing. Its viewpoint is group
g061's pool, one of the nine static nibble-2 pools the liquid census already
pins.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SgstFWtn1RxEJ5kVrpgYwn
2026-11-09 09:26:14 -07:00
..