Description
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–boss5units 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 castcdSeriesSec— 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_SUCCEEDEDandUNIT_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 editunlocks 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()andUnitChannelInfo()return opaque secret numbers. The Cast Progress Bar passes these directly toSetMinMaxValues/SetValue— the only C-side methods that accept them natively. - Taint Prevention: All unit events use
RegisterUnitEventscoped to specific boss units. No globalRegisterEvent("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.NewTimerchains. Zero per-frame logic outside the 0.1s scheduler tick.
π¦ Embedded Libraries
BossReminder is fully self-contained — no separate library installs needed.
- LibStub — Library versioning
- CallbackHandler-1.0 — Internal event bus
- LibSharedMedia-3.0 — Shared fonts, textures, and sound files
π Localization
| Language | Status |
|---|---|
| English (enUS) | β Full support (default) |
| French (frFR) | β Full support |
π₯ Installation
- Download the latest release from CurseForge
- Extract the
BossReminderfolder intoWorld of Warcraft/_retail_/Interface/AddOns/ - Restart WoW or type
/reload - Type
/brto open the configuration panel - Head to the Encounters page to enable or disable specific boss mechanics
- Use
/br editto 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


