ReactionBar

Encounter action bar with 4 secure slots that glow on boss triggers so you can click or keybind items and spells — never auto-used.
# ReactionBar

 

ReactionBar is a small encounter action bar for **WoW Classic Era** and **TBC Anniversary**. It gives you up to **four secure slots** for items or abilities. Each slot stays hidden or idle until its trigger fires, then it **glows** and can play a **sound** and **on-screen alert** so you know when to react. You still **click the slot or press your keybind** — ReactionBar never casts or uses items for you.

 

Built for fights where timing matters: enemy casts, debuffs, health thresholds, or a fixed set of skills for a specific encounter (raid bosses, dungeon trash, or world NPCs).

 

## Install

 

Copy the `ReactionBar` folder into:

 

```
World of Warcraft/_anniversary_/Interface/AddOns/ReactionBar/
World of Warcraft/_classic_era_/Interface/AddOns/ReactionBar/
```

 

Enable it on the character select screen.

 

## How it works

 

1. Open **/rb** (also **/reactionbar**; **/rc** works as an alias).
2. Create a **profile** per encounter (e.g. `Hyjal - Anetheron`).
3. Add **enemy names** for auto-arm, bar visibility, and combat-log cast filtering (comma-separated; must match in-game `UnitName` on **your** client language — target, focus, or `boss1`–`boss5`).
4. Assign **items or spells** to slots 1–4 by name, by prefixed ID (`item:38466`, `spell:12345`, or short forms `i:` / `s:`), or by **dragging** from bags, spellbook, or the config slot icon.
5. Pick a **trigger** for each slot: enemy cast start, aura gained, aura lost, player health %, or always visible.
6. Bind keys under **Esc → Key Bindings → ReactionBar → Slot 1–4**.
7. **Arm** the profile before pull (**Arm this** in config, `/rb arm <name>`, or auto-arm when a listed name matches target / focus / boss units).
8. When a trigger fires, the slot lights up. Use your mouse or keybind like a normal action button.

 

Optional settings (cog next to Close): bar **button size** and **alert sound**. Open **?** (between Settings and Close) for an in-game how-to guide.

 

## Triggers

 

- **Enemy cast start** — match a spell ID (combat log, filtered by enemy names when set; also `boss1`–`boss5` cast events)
- **Aura gained / lost** — combat log–based on Classic clients
- **Player health %** — fire at or below a threshold
- **Swing timer** — after your auto-attack lands (or misses), the slot stays active for a **Window** in seconds (decimals allowed, e.g. `0.5`). Optional **Aura ID**: only open that window if the buff is missing on you, or its remaining time is low enough. Optional **Aura ≤**: refresh when remaining time is at most this many seconds; leave blank to use your main-hand weapon speed so the buff can overlap into the next swing (raise it if you prefer an occasional wasted use over a gap).
- **Always visible** — slot stays ready for the whole armed profile (e.g. encounter rotation buttons)

 

**Duration / Window:** for most triggers, leave blank to stay active while the condition holds; set seconds for a fixed alert window after the trigger. For **Swing timer**, Window is required (how long after the swing the slot stays usable).

 

Optional **custom alert text**, **glow**, and **sound** per slot.

 

## Share and import

 

- **Share** copies a profile string (Ctrl+C from the share field) including name, enemy names, slots, and triggers.
- **Import** pastes that string on another character or client to recreate the profile.
- Spell/item IDs travel fine across languages. **Enemy names are locale-specific** — the export stores your client locale; if someone imports on a different language, ReactionBar warns them to check Enemy names against `UnitName` on their client.

 

## Profiles and arming

 

- **One armed profile at a time** — slot 1 is always slot 1; keybinds stay the same while the item/spell and trigger change with the profile.
- **Auto-arm** when enemy names match target, focus, or boss units.
- **Lock the bar** (`/rb lock`) to hide setup chrome; trigger slots stay invisible until they fire. `/rb unlock` to move the bar.

 

## Important: combat

 

**Secure buttons cannot change in combat.** Arm before pull (out of combat) so slots are set up correctly. If auto-arm only matches mid-fight, ReactionBar applies changes when combat ends.

 

## Commands

 

| Command | Action |
|---------|--------|
| `/rb` | Open config |
| `/rb arm <profile>` | Arm a profile |
| `/rb disarm` | Disarm |
| `/rb lock` / `/rb unlock` | Lock or unlock bar position |
| `/rb list` | List profiles |
| `/rb debug [slot]` | Debug slot state |

 

## Item vs spell IDs

 

Item and spell IDs can share the same number. Use a **name** when you can, or prefix IDs: `item:` / `i:` for items, `spell:` / `s:` for spells. A plain number alone may not resolve correctly if both exist in the client.

 

## What ReactionBar does not do

 

- No automatic casting or item use
- No macros run from addon code
- No rotation solver — you define slots, triggers, and actions yourself

 

## Feedback

 

Use the project issue tracker or CurseForge comments. Spell IDs and enemy names should be verified on your client and locale.

ReactionBar Team

profile avatar
  • 4
    Projects
  • 4.5K
    Downloads

More from ullander