BossReminder — Boss Timers, Voice Callouts & Encounter Warnings
Never get caught off guard again. Know what's coming — before it hits.
BossReminder** is a lightweight, self-contained encounter awareness addon that tracks boss mechanics and fires visual warnings and voice callouts precisely when you need them. No bloat, no external dependencies — just crisp, customizable alerts covering 76 bosses across 11 instances with ~280 pre-timed events.
Built from the ground up for Midnight 12.x — taint-free, secret-value-safe, and designed for serious raiders and M+ players who want to stay one step ahead of every mechanic._
Author: TomoAniki Version: 1.2.0
Open settings with /br • Enable Edit Mode with /br edit to reposition every widget freely
π― What BossReminder Does
BossReminder monitors encounter events and fires pre-calculated timers based on each boss's ability cooldown pattern. When a mechanic is incoming, it triggers up to 5 simultaneous display types and plays a localized voice callout — giving your whole group a clear heads-up before the ability lands.
| |
|
| 76 Bosses |
Pre-loaded encounter database across 11 Midnight instances |
| ~280 Events |
Timed abilities with first-cast offset + repeating CD series |
| 5 Display Types |
Timer Bars, Countdown, Flash Text, Ring Progress, Cast Progress Bar |
| 70+ Voice Cues |
Localized audio callouts with pack selection and channel control |
| Profiles |
Named profiles with per-spec auto-switching |
| Zero Dependencies |
Fully self-contained — no external libraries required |
π₯οΈ Display Widgets — 5 Ways to Stay Aware
Every display widget is independently toggleable, resizable, repositionable via Edit Mode, and fully customizable (font, color, texture, size).
β±οΈ Timer Bars
Classic countdown bars — the backbone of your encounter awareness.
- Up to 8 simultaneous bars stacked vertically, grow up or down
- Each bar shows the spell icon, ability name, and remaining time
- Fully themable: LibSharedMedia texture and font pickers
- Custom RGBA color, bar width/height, and spacing between bars
- Bars recycle from a frame pool — no GC overhead during progression
π’ Countdown
Large numeric 5–4–3–2–1 readout that appears in the final seconds before an ability.
- Triggers when a timer reaches the configured pre-warn threshold (default 5s)
- Displays the spell icon alongside the number (optional)
- Configurable font, font size, and screen position
- Cleans itself up automatically on encounter end
β‘ Flash Text
A bold center-screen text callout — impossible to miss.
- 3-stage animation: 0.15s fade-in → 2s hold → 0.4s fade-out
- Reads the ability name directly — zero configuration needed
- Font, size, and position fully customizable
- Ideal for high-priority mechanics that need instant attention
π΅ Ring Progress
A radial cooldown swipe for short-fuse abilities (≤ 30 seconds).
- Visual circular sweep that depletes as the timer counts down
- Custom color and size — matches any UI aesthetic
- Automatically hidden when the timer expires
- Perfect for visual learners tracking abilities by shape, not text
π― Cast Progress Bar
A dedicated bar that tracks live boss casts in real time.
- Monitors
boss1–boss5 units for casts and channels
- Handles casts (forward fill) and channels (reverse fill) natively
- Shows cast name + remaining duration
- Secret-value-safe via pcall-wrapped
UnitCastingInfo / UnitChannelInfo
π Voice System — Hear It Before You See It
BossReminder ships with a full voice callout engine powering 70+ localized audio cues across 202 packaged sound clips.
- Pack selection — choose your preferred voice pack from the config panel
- Channel control — route audio through Master, SFX, Music, or Dialog
- Volume slider with independent control
- Throttle protection — 0.15s minimum gap prevents audio spam on overlapping events
- Fallback chain: voice profile → LibSharedMedia key → raw path → generic fallback
- Test button — preview any voice cue directly from the Voice config page
- Powered by LibSharedMedia-3.0 for seamless integration with your existing media setup
π Encounter Database
BossReminder's encounter data is covering the full Midnight Season 1 content lineup.
- 76 bosses with individual per-mechanic toggles
- ~280 timed events with:
firstSeenSec — offset from pull to first cast
cdSeriesSec — repeating ability cooldown deltas
- Type tagging: Tank / Healer / Mechanic / Other
- Severity levels (0/1/2) for color-coded priority
- Optional voice label and spell ID per event
- Browse bosses by instance in the Encounters page — toggle individual mechanics on/off per boss
- Dry-run Test Mode: replay any encounter's timer sequence without entering the instance (
/br test enc <encounterID>)
ποΈ Trash CD Tracker
Don't just prepare for bosses — prepare for the pull.
BossReminder includes a lightweight Trash CD Tracker for monitoring dangerous non-boss abilities between bosses.
- Tracks cooldowns by NPC ID + Spell ID rules
- Listens to
UNIT_SPELLCAST_SUCCEEDED and UNIT_SPELLCAST_START — no CLEU dependency
- Guards against secret values via
issecretvalue() — fully Midnight-safe
- Manage rules from the dedicated Trash CD config page
- Enable/disable with a single toggle
π§· Profile System
Switch characters, switch specs — BossReminder keeps up automatically.
- Named profiles — create, rename, duplicate, delete
- Per-spec assignment — map each specialization to a profile; BossReminder auto-loads it on spec change
- Auto-save before every profile switch — never lose your settings
- Snapshot/apply pattern — deep-copy includes all display, voice, encounter, and condition settings
- Import / Export — share profiles as a compressed string (coming soon)
πΊοΈ Edit Mode — Pixel-Perfect Positioning
Every display widget is freely repositionable with a single toggle.
/br edit unlocks all 5 widgets simultaneously — drag them anywhere on screen
- Alignment Grid with 3 modes: Dimmed, Bright, Off
- Cursor flashlight — grid lines near your mouse glow for pixel-perfect alignment
- Header bar with Grid / Lock / Reload UI controls
- Positions persisted per profile — your layout follows your spec
βοΈ Configuration Panel
Open with /br — a clean, dark-themed panel with instant access to every setting.
| Page |
Contents |
| Home |
Overview, language picker (Auto/enUS/frFR), Edit Mode & Test shortcuts |
| Display |
Per-widget config — texture, font, color, size, growth direction, position |
| Voice |
Pack selection, audio channel, volume, throttle, test preview |
| Encounters |
Browse 76 bosses by instance — per-mechanic toggles, dry-run test |
| Conditions |
Rule-based event gating (preview — coming soon) |
| Trash CD |
Enable/disable tracker, manage NPC rules |
| Profiles |
Load/create/delete profiles, per-spec assignment |
| Import/Export |
Profile sharing via compressed string (preview) |
π Slash Commands
| Command |
Action |
/br |
Open the configuration panel |
/br edit / /br layout / /br l |
Toggle Edit Mode |
/br test |
Fire test timers (5s / 10s / 20s) + flash + countdown |
/br test enc <encounterID> |
Dry-run any of the 76 boss encounters |
/br debug |
Toggle verbose chat logging |
/br version |
Print the current addon version |
π§ Technical Notes (Midnight Compatibility)
BossReminder is purpose-built for the Midnight API environment:
- Secret Values:
UnitCastingInfo() and UnitChannelInfo() return opaque secret numbers. The Cast Progress Bar passes these directly to SetMinMaxValues / SetValue — the only C-side methods that accept them natively.
- Taint Prevention: All unit events use
RegisterUnitEvent scoped to specific boss units. No global RegisterEvent("UNIT_*") calls anywhere.
- Trash CD Safety:
issecretvalue() guards all cooldown comparisons in the Trash CD tracker — zero taint risk from secret returns.
- Frame Pooling: Timer Bars recycle from a pre-allocated pool — no frame creation or GC pressure during active fights.
- Encounter Engine: Timers are pre-calculated at encounter start via
C_Timer.NewTimer chains. Zero per-frame logic outside the 0.1s scheduler tick.
π¦ Embedded Libraries
BossReminder is fully self-contained — no separate library installs needed.
π Localization
| Language |
Status |
| English (enUS) |
β
Full support (default) |
| French (frFR) |
β
Full support |
π₯ Installation
- Download the latest release from CurseForge
- Extract the
BossReminder folder into World of Warcraft/_retail_/Interface/AddOns/
- Restart WoW or type
/reload
- Type
/br to open the configuration panel
- Head to the Encounters page to enable or disable specific boss mechanics
- Use
/br edit to reposition all display widgets to your preferred screen locations
π¬ Feedback & Issues
Use the CurseForge project page to report bugs or suggest features. When reporting issues, please include:
- Your class and specialization
- The boss encounter and mechanic involved
- Steps to reproduce the problem
- Any relevant Lua errors from the in-game error window