File Details
v0.9.5
- R
- Apr 11, 2026
- 764.50 KB
- 28
- 12.0.1
- Retail
File Name
DjinnisDataTexts-v0.9.5.zip
Supported Versions
- 12.0.1
Changelog
All notable changes to Djinni's Data Texts will be documented in this file.
[0.9.5] - 2026-04-11
Fixed
- Scrollable tooltips (Guild, Communities, and all modules using the shared tooltip factory) - scroll position no longer resets to the top when the underlying data refreshes while the tooltip is open.
FinalizeLayoutnow preserves the current scroll offset (clamped to the new content bounds) on re-populate, and only resets on a fresh show.
[0.9.3] - 2026-04-11
Major Update: ActiveActivity Aggregator, Combat and Secret Safety Pass, Delve Tier 11+ Support
This release consolidates three beta iterations (0.9.0-beta, 0.9.1-beta, 0.9.2-beta) into a single stable release.
ActiveActivity (New)
Unified LDB broker that routes hover, click, and label updates to whichever sub-tracker is currently engaged. Sub-trackers register via RegisterActivityTracker API rather than owning their own brokers.
- Delve and Prey Tracker now register as sub-trackers and notify on label change
- Idle-state click actions configurable independently of active-tracker click actions
- Single data broker replaces multiple empty brokers when no activity is active
Secret API Safety (Midnight hardening)
Every module that reads identity, aura, or cooldown data is now guarded against Midnight-era secret return values.
- Guild / Communities —
C_Club.GetClubMemberssecret-table crashes fixed.C_Secrets.ShouldUnitIdentityBeSecret("player")predicate fast-path pluspcallbackstop around the member iteration (the predicate does not always pair perfectly with this API's secrecy state on tooltip-hover paths). Fallback toGetGuildInfo("player")for guild name. - Movement Speed / Delve / Professions — Aura reads guarded with
C_Secrets.ShouldAurasBeSecret(). - Pet Info / Professions — Cooldown reads guarded with
C_Secrets.ShouldCooldownsBeSecret(). - Core.ExpandTag —
pcallaroundtostring/gsubso secret label values degrade gracefully to?instead of erroring the entire label.
Combat Safety
Audit pass on protected frame operations. Protected calls (SetAttribute, RegisterForClicks) now gated behind InCombatLockdown() checks with PLAYER_REGEN_ENABLED deferral.
Delve
- Tier 11+ Sanctified Banner detection — Newer delve variants (Atal'Aman and later) grant no player aura on banner click, so detection now matches the on-screen "Sanctified Spoils Will Manifest Upon Delve Completion" notification across
UI_INFO_MESSAGE,CHAT_MSG_RAID_BOSS_EMOTE,CHAT_MSG_MONSTER_EMOTE,CHAT_MSG_MONSTER_YELL, andCHAT_MSG_SYSTEM. /ddtdelve watch— New diagnostic command. Live aura-diff monitor that prints gained/lost player auras on everyUNIT_AURAfire. Used for identifying aura signals on future delve variants.
Other Fixes
- VolumeControl —
OnMouseWheelnow hooked on the display frame inOnEnter(display addons like ElvUI do not wire updataobj.OnMouseWheel). - SavedInstances / AudioOutput — Non-ASCII glyphs replaced with ASCII equivalents so WoW's default font renders them.
- Professions — Catch-up currency row rendered in KP section; Wild Perception buff tracker gains
namefield. - ActiveActivity — Registration key normalized from
activeactivitytoActiveActivityto match the canonical module name.
[0.9.2-beta] - 2026-04-11
Fixed
- ActiveActivity — Registration key normalized from
activeactivitytoActiveActivityto match the canonical module name used elsewhere in the codebase.
[0.9.1-beta] - 2026-04-11
Fixed
- Guild / Communities —
C_Club.GetClubMemberscan return a secret value on tooltip-hover paths even whenC_Secrets.ShouldUnitIdentityBeSecret("player")is false. Added apcallbackstop around the member iteration in both modules. Previous cached state is preserved when a secret is encountered; the next refresh out of lockdown repopulates. Safe to usepcallhere because these are pure tooltip-render paths with no downstream secure frame ops.
Added
- Delve — Sanctified Banner detection now works on Tier 11+ delves (Atal'Aman and later). Newer delve variants grant no player aura on banner click, so detection now matches on the on-screen notification ("Sanctified Spoils Will Manifest Upon Delve Completion") across
UI_INFO_MESSAGE,CHAT_MSG_RAID_BOSS_EMOTE,CHAT_MSG_MONSTER_EMOTE,CHAT_MSG_MONSTER_YELL, andCHAT_MSG_SYSTEM. - Delve — New
/ddtdelve watchcommand — live aura-diff monitor that prints gained/lost player auras on everyUNIT_AURAfire. Used to identify aura signals on future delve variants.
[0.9.0-beta] - 2026-04-11
Major Update: ActiveActivity Aggregator, Combat and Secret Safety Pass
ActiveActivity (New)
Unified LDB broker that routes hover, click, and label updates to whichever sub-tracker is currently engaged. Sub-trackers register via RegisterActivityTracker API rather than owning their own brokers.
- Delve and Prey Tracker now register as sub-trackers and notify on label change
- Idle-state click actions configurable independently of active-tracker click actions
- Single data broker replaces multiple empty brokers when no activity is active
Secret API Safety (Midnight hardening)
Every module that reads identity, aura, or cooldown data is now guarded against Midnight-era secret return values.
- Guild / Communities —
C_Club.GetClubMemberssecret-table crashes fixed. AddedC_Secrets.ShouldUnitIdentityBeSecret("player")predicate fast-path and fallback toGetGuildInfo("player")for guild name. - Movement Speed / Delve / Professions — Aura reads guarded with
C_Secrets.ShouldAurasBeSecret(). - Pet Info / Professions — Cooldown reads guarded with
C_Secrets.ShouldCooldownsBeSecret(). - Core.ExpandTag —
pcallaroundtostring/gsubso secret label values degrade gracefully to?instead of erroring out the entire label.
Combat Safety
Audit pass on protected frame operations. Protected calls (SetAttribute, RegisterForClicks) now gated behind InCombatLockdown() checks with PLAYER_REGEN_ENABLED deferral where appropriate.
Other Fixes
- VolumeControl —
OnMouseWheelnow hooked on the display frame inOnEnterrather than the LDB data object (display addons like ElvUI do not wire updataobj.OnMouseWheel). - SavedInstances / AudioOutput — Non-ASCII glyphs (arrows, ellipsis) replaced with ASCII equivalents so WoW's default font renders them.
- Professions/Core — Catch-up currency row now rendered inside the KP section.
- Professions/Data_Mining — Wild Perception buff tracker now has
namefield.
[0.8.1] - 2026-04-06
Major Update: Professions Framework, Volume Control, Audio Output
Professions Framework (New, Alpha)
Per-profession LDB brokers for all 11 Midnight professions with integrated knowledge point tracking, skill/concentration display, and profession-specific features.
- Knowledge Point Tracking — Counts earned vs. total KP from unique treasures, books, and weekly sources (Alchemy, Blacksmithing, Enchanting, Engineering, Herbalism, Inscription, Jewelcrafting, Leatherworking, Mining, Skinning, Tailoring)
- Darkmoon Faire awareness — Weeklies automatically exclude DMF sources during non-DMF weeks
- Hide Known KP — Enabled by default; hides completed treasures/books from tooltip while preserving sub-header completion counts
- Majestic Beasts (Skinning only) — Daily lure-based beast tracking with 5 beasts (Eversong, Zul'Aman, Harandar, Voidstorm, Grand Beast):
- Shows lure count in bags, missing reagents (with item names), and kill status per beast
- Talent point gating respected (beasts locked until required points earned)
- Click rows to set waypoints
- Visual distinction: killed beasts shown in grey, available in lure colors
- Buffs — Active gathering/crafting buff detection and profession-specific consumable tracking (Skinning: Sanguithorn Tea, Haranir Phial of Perception, Root Crab)
- Timers — Daily and weekly reset countdowns
- MajesticBeastTracker migration — Automatically imports lure kill history, talent points, and settings from standalone MBT addon
- Label templates —
<name>,<skill>,<maxskill>,<kp_earned>,<kp_total>,<concentration>+ Skinning-specific<mb_kills>,<mb_total>,<mb_next> - Per-profession settings — Individual label templates, tooltip overrides, show/hide toggles, click actions (one settings section per profession, collapsed by default)
Volume Control (New, Alpha)
Interactive per-stream volume control with sliders and mute toggles.
- Five streams — Master, Music, Effects, Ambience, Dialog
- Interactive tooltip — Drag sliders in real-time or use checkboxes to mute individual streams
- Mouse wheel support — Scroll on tooltip or individual sliders to adjust volume; Shift+scroll for 1% fine control
- LDB scroll — Scrolling on the datatext itself adjusts master volume (respects invert setting)
- Configurable increment — Default 5%, adjustable 1–20% in settings
- Invert scroll — Toggle to reverse scroll direction (scroll up = volume down)
- Label tags —
<master>,<music>,<sfx>,<ambience>,<dialog>,<muted>
Audio Output (New, Alpha)
Switch between system audio output devices from a tooltip list.
- Device list — Shows all available output devices with click-to-switch and scroll-to-cycle
- Current device highlighted — Blue background and blue text for active device
- Label tags —
<device>(current device name),<index>(1-based device number),<count>(total device count) - Truncation — Device names truncated to configurable length (default 24 chars) to fit DataText bar
- Sound system restart — Automatically handles restart delay (0.5s) and double-syncs label after completion
Settings Panel Fixes (Professions)
- Fixed overlapping sections issue by building all 11 profession sections upfront from
ns.PROF_DEFSinstead of dynamically rebuilding fromprofState(now deferred, settings weren't created) - Removed
AddLabelEditBoxfrom per-profession sections (requires top-level panel access) — switched toAddEditBox+AddDescriptionshowing available tags - Each profession settings section is independent: label template, tooltip scale/width overrides, show/hide toggles, click actions
Major Update: Social Module Refactor, Smart Tooltip Anchoring, Prey Tracker, Majestic Beast Enhancements
Social Module Consistency Refactor
- Friends, Guild, Communities now follow the standard module registration pattern — each has its own DEFAULTS, settingsLabel, BuildSettingsPanel, and RegisterModule call
- Settings panels moved from centralized Settings.lua into each module file
- Removed ~310 lines of hardcoded social panel code from Settings.lua
Smart Tooltip Anchoring
- Auto grow direction — tooltips now detect whether the DataText is at the top or bottom of the screen and grow in the appropriate direction (down or up) to avoid overlapping the label
- Per-module grow direction — each module has a new "Tooltip Grow Direction" dropdown (Auto/Up/Down) in its tooltip settings section
- Copy From — tooltip grow direction is included in the "Copy Tooltip Settings From" feature
Prey Tracker (New Module)
- Zone mapping — 30 prey targets mapped to their zones (Eversong Woods, Zul'Aman, Harandar, Voidstorm) sourced from Wowhead NPC spawn data
- Active hunt tracking — shows prey name, zone, difficulty, and progress state (Cold/Warm/Hot/Final) via UI widget scanning
- Weekly completions — tracks completed prey quests with zone and difficulty columns
- Currency tracking — displays Remnant of Anguish quantity
- Waypoint click action — set a waypoint to the active prey target
- Configurable zone overrides — per-prey zone dropdowns in settings panel; prey names are clickable Wowhead links
- Label tags —
<status>,<zone>,<progress>,<difficulty>,<prey>,<weekly>,<currency>
Majestic Beast Tracker Enhancements
- Beast Routes section — per-zone clickable rows with lure icon, zone name, reagent counts, and kill status; replaces the old Daily Kills grid
- Multi-character columns — when multiple characters have skinning, beast route rows show checkmark/X icons per character aligned under class-colored name headers
- Secure lure buttons — left-click uses the lure item via SecureActionButtonTemplate (matching MBT's implementation); right-click sets waypoint
- Row click actions — configurable per beast row: Set Waypoint, Use Lure, Open Lure Recipe, Shop Zone Reagents, Open Map
- Consumable Buffs section — shows Sanguithorn Tea, Haranir Phial of Perception, and Root Crab with stock count and active buff status; left-click uses the consumable, right-click creates AH search
- Buff Shopping List — new click action creates an Auctionator shopping list for all three consumables
- Per-zone reagent shopping — right-click a beast row to create an Auctionator shopping list for just that zone's lure ingredients
Saved Instances
- New label preset — "Full":
R: <raids> M+: <mplus> Dv: <delves>
[0.8.0] - 2026-04-06
Professions Framework, Volume Control, Audio Output
This release introduces a comprehensive per-profession framework with knowledge point tracking and profession-specific features, plus two new utility modules for system audio control.
Professions Framework (New)
- Per-profession LDB brokers — One broker per detected profession (all 11 Midnight professions supported: Alchemy, Blacksmithing, Enchanting, Engineering, Herbalism, Inscription, Jewelcrafting, Leatherworking, Mining, Skinning, Tailoring)
- Knowledge Point tracking — Unique treasures, books, and weekly sources with earned vs. total counts
- Darkmoon Faire awareness — Weekly sources skip DMF quest during non-DMF weeks
- Hide Known KP — Toggle to hide completed treasures/books (enabled by default)
- Majestic Beasts (Skinning) — 5 daily lures with lure count in bags, missing reagents (with item names), and kill status; talent point gating; click to waypoint
- Buffs — Active buff detection and profession-specific consumable tracking
- Timers — Daily and weekly reset countdowns
- MajesticBeastTracker migration — Auto-import lure kills, talent points, settings from standalone MBT
- Settings — Per-profession sections with label templates, tooltip overrides, show/hide toggles, click actions
Volume Control (New)
- Per-stream sliders — Master, Music, Effects, Ambience, Dialog with real-time drag or checkbox mute
- Interactive tooltip — Slider drag, checkbox clicks, and mouse wheel (Shift = 1% fine control)
- LDB scroll — Scroll on datatext to adjust master volume
- Configurable increment — 1–20%, default 5%
- Invert scroll — Toggle to reverse scroll direction
Audio Output (New)
- Device list tooltip — Click to switch; scroll to cycle through output devices
- Current device highlighted — Blue background and text
- Auto-restart — Handles sound system restart delay with label double-sync
Settings Panel Fixes
- Professions settings — Build all sections upfront from
ns.PROF_DEFSinstead of deferred rebuild (avoids orphaned/hidden frames and overlapping layout) - Per-profession label editor — Use
AddEditBox+ description (avoidAddLabelEditBoxwhich requires top-level panel)
[0.7.0] - 2026-04-02
Social Module Refactor, Smart Tooltip Anchoring, Prey Tracker, Majestic Beast Enhancements
Social Module Consistency Refactor
- Friends, Guild, Communities — Now follow standard module registration with per-module DEFAULTS, settingsLabel, BuildSettingsPanel
- Settings panels — Moved from centralized Settings.lua into each module (~310 lines removed from Settings.lua)
Smart Tooltip Anchoring
- Auto grow direction — Detect top/bottom screen position and grow tooltip away from label
- Per-module grow direction — Dropdown (Auto/Up/Down) in tooltip settings
- Copy From — Grow direction included in copy tooltip settings
Prey Tracker (New Module)
- Active hunt tracking — Prey name, zone, difficulty, progress (Cold/Warm/Hot/Final)
- Weekly completions — Track completed prey with zone/difficulty columns
- Zone mapping — 30 targets mapped to zones (Eversong, Zul'Aman, Harandar, Voidstorm)
- Currency tracking — Remnant of Anguish display
- Waypoint action — Click to set waypoint to active prey
- Label tags —
<status>,<zone>,<progress>,<difficulty>,<prey>,<weekly>,<currency>
Majestic Beast Tracker Enhancements
- Beast Routes — Per-zone rows with lure icon, zone name, reagent counts, kill status
- Multi-character view — Checkmark/X icons per character when multiple have skinning
- Secure lure buttons — Left-click uses lure (SecureActionButtonTemplate), right-click waypoint
- Row click actions — Waypoint, Use Lure, Open Lure Recipe, Shop Zone Reagents, Open Map
- Consumable Buffs — Sanguithorn Tea, Haranir Phial of Perception, Root Crab with stock and buff status
- Shopping Lists — Buff list and per-zone reagent shopping via Auctionator
Saved Instances
- New label preset — "Full":
R: <raids> M+: <mplus> Dv: <delves>
[0.6.2] - 2026-04-02
Bugfix Release: Settings Panel, Professions Settings, MajesticBeast Tooltip
Professions Module Fixes
- Settings panel rebuild — Removed deferred rebuild approach; all 11 profession sections now built upfront from
ns.PROF_DEFS - Label template — Switched from
AddLabelEditBoxtoAddEditBox+ description (avoids panel access requirements) - Settings overlap fixed — Static section building prevents orphaned/hidden frame accumulation
Volume Control & Audio Output Fixes
- AudioOutput device name — Removed count guard; always call
GetDeviceName()directly, usePLAYER_ENTERING_WORLDfor reliable sound system startup - VolumeControl LDB scroll — Added
OnMouseWheelto dataobj; scrolling on datatext adjusts master volume - Invert scroll — New setting to reverse scroll direction; applied across LDB button, tooltip frame, and all sliders via shared
ScrollDelta()helper
[0.6.0] - 2026-04-01
Release v0.6.0
Initial unified release combining core DDT framework with 20+ modules covering social, character, economy, instances, time/location, and system categories.
[0.5.1] - 2026-04-01
ItemLevel: Durability Tracking + Auctionator Category Search + Bug Fixes
This release significantly expands the Item Level module with real-time durability tracking, fixes several tooltip display issues, and upgrades the Auctionator enchant search to use proper category filters.
Durability Tracking
- Per-slot durability column — Dedicated right-hand column in the tooltip showing each slot's durability percentage, color-coded: green (100%), yellow (<100%), orange (≤50%), red (≤25%)
- Overall durability summary — Header line showing weighted average durability across all gear with the same color coding
- Needs Repair summary — Lists all slots below 100% durability at the bottom of the tooltip
- Label template tags —
<durability>(lowest slot %) and<repair>(count of slots needing repair) - Settings — Toggle durability display on/off; threshold slider controls the % below which per-slot values appear
- Live updates — Registers
UPDATE_INVENTORY_DURABILITYevent for immediate refresh
Auctionator Enchant Search
- Right-clicking a slot row (default) now opens an Auctionator shopping list using the advanced category filter format:
;Item Enhancements/<Slot>;...;CurrentExpansion;— no search term, just the category + current expansion filter - Slots map correctly: Finger → Finger subcategory, Feet → Feet, Weapon → Weapon, etc.
- Gem search similarly scoped to the Gems category + current expansion
- Bulk shopping list (Ctrl+L) uses the same format for all missing enchants
Bug Fixes
- Settings crash — Fixed
AddSliderbeing called with a table argument instead of positional args, which blocked the entire settings panel from loading (breaking/ddtand Options → Addons) - CopyToClipboard — Removed call to the hardware-protected
CopyToClipboard()global; now always shows a scrollable popup editbox (Ctrl+A, Ctrl+C, Escape) - SlashCmdList nil — Added nil guard before calling
SlashCmdList["SIMULATIONCRAFT"] - LDB dataobj nil — Added
LDB:GetDataObjectByName()fallback for when the LDB name is already registered on reload - Tooltip row overlap — Label is now bounded by the status column so slot names never overlap "No Enchant" or socket warnings
- Summary row overflow — Missing Enchants / Missing Gems / Needs Repair summary rows now use the full row width (slot list in label, value/status cleared)
- Frame type — Tooltip rows now correctly created as
Buttonframes (required forOnClickandRegisterForClicks)
Friends Module
- Fixed class color detection: removed access to undocumented
FriendInfofields (classTag,classFileName,classFile,classToken); now uses onlyclassName(localized lookup) and the documented fields - Fixed BNet friends class detection similarly — removed nonexistent
classTag/classFile/classTokenfromBNetGameAccountInfo
[0.8.2] - 2026-04-07
Major Update: Professions Framework, Volume Control, Audio Output
Professions Framework (New, Alpha)
Per-profession LDB brokers for all 11 Midnight professions with integrated knowledge point tracking, skill/concentration display, and profession-specific features.
- Knowledge Point Tracking — Counts earned vs. total KP from unique treasures, books, and weekly sources (Alchemy, Blacksmithing, Enchanting, Engineering, Herbalism, Inscription, Jewelcrafting, Leatherworking, Mining, Skinning, Tailoring)
- Darkmoon Faire awareness — Weeklies automatically exclude DMF sources during non-DMF weeks
- Hide Known KP — Enabled by default; hides completed treasures/books from tooltip while preserving sub-header completion counts
- Majestic Beasts (Skinning only) — Daily lure-based beast tracking with 5 beasts (Eversong, Zul'Aman, Harandar, Voidstorm, Grand Beast):
- Shows lure count in bags, missing reagents (with item names), and kill status per beast
- Talent point gating respected (beasts locked until required points earned)
- Click rows to set waypoints
- Visual distinction: killed beasts shown in grey, available in lure colors
- Buffs — Active gathering/crafting buff detection and profession-specific consumable tracking (Skinning: Sanguithorn Tea, Haranir Phial of Perception, Root Crab)
- Timers — Daily and weekly reset countdowns
- MajesticBeastTracker migration — Automatically imports lure kill history, talent points, and settings from standalone MBT addon
- Label templates —
<name>,<skill>,<maxskill>,<kp_earned>,<kp_total>,<concentration>+ Skinning-specific<mb_kills>,<mb_total>,<mb_next> - Per-profession settings — Individual label templates, tooltip overrides, show/hide toggles, click actions (one settings section per profession, collapsed by default)
Volume Control (New, Alpha)
Interactive per-stream volume control with sliders and mute toggles.
- Five streams — Master, Music, Effects, Ambience, Dialog
- Interactive tooltip — Drag sliders in real-time or use checkboxes to mute individual streams
- Mouse wheel support — Scroll on tooltip or individual sliders to adjust volume; Shift+scroll for 1% fine control
- LDB scroll — Scrolling on the datatext itself adjusts master volume (respects invert setting)
- Configurable increment — Default 5%, adjustable 1–20% in settings
- Invert scroll — Toggle to reverse scroll direction (scroll up = volume down)
- Label tags —
<master>,<music>,<sfx>,<ambience>,<dialog>,<muted>
Audio Output (New, Alpha)
Switch between system audio output devices from a tooltip list.
- Device list — Shows all available output devices with click-to-switch and scroll-to-cycle
- Current device highlighted — Blue background and blue text for active device
- Label tags —
<device>(current device name),<index>(1-based device number),<count>(total device count) - Truncation — Device names truncated to configurable length (default 24 chars) to fit DataText bar
- Sound system restart — Automatically handles restart delay (0.5s) and double-syncs label after completion
Settings Panel Fixes (Professions)
- Fixed overlapping sections issue by building all 11 profession sections upfront from
ns.PROF_DEFSinstead of dynamically rebuilding fromprofState(now deferred, settings weren't created) - Removed
AddLabelEditBoxfrom per-profession sections (requires top-level panel access) — switched toAddEditBox+AddDescriptionshowing available tags - Each profession settings section is independent: label template, tooltip scale/width overrides, show/hide toggles, click actions
Major Update: Social Module Refactor, Smart Tooltip Anchoring, Prey Tracker, Majestic Beast Enhancements
Social Module Consistency Refactor
- Friends, Guild, Communities now follow the standard module registration pattern — each has its own DEFAULTS, settingsLabel, BuildSettingsPanel, and RegisterModule call
- Settings panels moved from centralized Settings.lua into each module file
- Removed ~310 lines of hardcoded social panel code from Settings.lua
Smart Tooltip Anchoring
- Auto grow direction — tooltips now detect whether the DataText is at the top or bottom of the screen and grow in the appropriate direction (down or up) to avoid overlapping the label
- Per-module grow direction — each module has a new "Tooltip Grow Direction" dropdown (Auto/Up/Down) in its tooltip settings section
- Copy From — tooltip grow direction is included in the "Copy Tooltip Settings From" feature
Prey Tracker (New Module)
- Zone mapping — 30 prey targets mapped to their zones (Eversong Woods, Zul'Aman, Harandar, Voidstorm) sourced from Wowhead NPC spawn data
- Active hunt tracking — shows prey name, zone, difficulty, and progress state (Cold/Warm/Hot/Final) via UI widget scanning
- Weekly completions — tracks completed prey quests with zone and difficulty columns
- Currency tracking — displays Remnant of Anguish quantity
- Waypoint click action — set a waypoint to the active prey target
- Configurable zone overrides — per-prey zone dropdowns in settings panel; prey names are clickable Wowhead links
- Label tags —
<status>,<zone>,<progress>,<difficulty>,<prey>,<weekly>,<currency>
Majestic Beast Tracker Enhancements
- Beast Routes section — per-zone clickable rows with lure icon, zone name, reagent counts, and kill status; replaces the old Daily Kills grid
- Multi-character columns — when multiple characters have skinning, beast route rows show checkmark/X icons per character aligned under class-colored name headers
- Secure lure buttons — left-click uses the lure item via SecureActionButtonTemplate (matching MBT's implementation); right-click sets waypoint
- Row click actions — configurable per beast row: Set Waypoint, Use Lure, Open Lure Recipe, Shop Zone Reagents, Open Map
- Consumable Buffs section — shows Sanguithorn Tea, Haranir Phial of Perception, and Root Crab with stock count and active buff status; left-click uses the consumable, right-click creates AH search
- Buff Shopping List — new click action creates an Auctionator shopping list for all three consumables
- Per-zone reagent shopping — right-click a beast row to create an Auctionator shopping list for just that zone's lure ingredients
Saved Instances
- New label preset — "Full":
R: <raids> M+: <mplus> Dv: <delves>
[0.9.4] - 2026-04-11
Major Update: ActiveActivity Aggregator, Combat and Secret Safety Pass, Delve Tier 11+ Support
This release consolidates three beta iterations (0.9.0-beta, 0.9.1-beta, 0.9.2-beta) into a single stable release.
ActiveActivity (New)
Unified LDB broker that routes hover, click, and label updates to whichever sub-tracker is currently engaged. Sub-trackers register via RegisterActivityTracker API rather than owning their own brokers.
- Delve and Prey Tracker now register as sub-trackers and notify on label change
- Idle-state click actions configurable independently of active-tracker click actions
- Single data broker replaces multiple empty brokers when no activity is active
Secret API Safety (Midnight hardening)
Every module that reads identity, aura, or cooldown data is now guarded against Midnight-era secret return values.
- Guild / Communities —
C_Club.GetClubMemberssecret-table crashes fixed.C_Secrets.ShouldUnitIdentityBeSecret("player")predicate fast-path pluspcallbackstop around the member iteration (the predicate does not always pair perfectly with this API's secrecy state on tooltip-hover paths). Fallback toGetGuildInfo("player")for guild name. - Movement Speed / Delve / Professions — Aura reads guarded with
C_Secrets.ShouldAurasBeSecret(). - Pet Info / Professions — Cooldown reads guarded with
C_Secrets.ShouldCooldownsBeSecret(). - Core.ExpandTag —
pcallaroundtostring/gsubso secret label values degrade gracefully to?instead of erroring the entire label.
Combat Safety
Audit pass on protected frame operations. Protected calls (SetAttribute, RegisterForClicks) now gated behind InCombatLockdown() checks with PLAYER_REGEN_ENABLED deferral.
Delve
- Tier 11+ Sanctified Banner detection — Newer delve variants (Atal'Aman and later) grant no player aura on banner click, so detection now matches the on-screen "Sanctified Spoils Will Manifest Upon Delve Completion" notification across
UI_INFO_MESSAGE,CHAT_MSG_RAID_BOSS_EMOTE,CHAT_MSG_MONSTER_EMOTE,CHAT_MSG_MONSTER_YELL, andCHAT_MSG_SYSTEM. /ddtdelve watch— New diagnostic command. Live aura-diff monitor that prints gained/lost player auras on everyUNIT_AURAfire. Used for identifying aura signals on future delve variants.
Other Fixes
- VolumeControl —
OnMouseWheelnow hooked on the display frame inOnEnter(display addons like ElvUI do not wire updataobj.OnMouseWheel). - SavedInstances / AudioOutput — Non-ASCII glyphs replaced with ASCII equivalents so WoW's default font renders them.
- Professions — Catch-up currency row rendered in KP section; Wild Perception buff tracker gains
namefield. - ActiveActivity — Registration key normalized from
activeactivitytoActiveActivityto match the canonical module name.