Files
TargetFrameBuff/README.md
T

4.3 KiB

TargetFrameBuff

ClassicAPI

Shows up to 32 buffs and 16 debuffs on the default target frame of a 1.12 client (tested target: Turtle WoW 1.18.1). Buffs sit above the frame in rows of 5-11-11-5, debuffs below it in rows of 4-4-8.

With the optional ClassicAPI client mod it also adds countdown text, stack counts, debuff-type borders, a gold border on enemy buffs you can remove, optional cooldown sweeps, and accurate tooltips. Without ClassicAPI it behaves like the original: more icons, no timers.

Installation

  1. Copy the TargetFrameBuff folder into Interface/AddOns, replacing any older copy.
  2. Restart the client (or /reload).
  3. Optional: install ClassicAPI.

ClassicAPI

Version What you get
none 32 buffs and 16 debuffs, no timers, borders or sweeps
1.17.x Timers, stack counts, borders; auras are re-read every 0.5 s
1.17.10+ Event-driven updates (UNIT_AURA_DELTA), no polling
1.17.11+ Recommended. Fixes the reverse sweep briefly showing a bright icon just before an aura ends

Harmful auras beyond the first 16 use free buff-row slots (only while the debuff limit is 16; the buff limit still applies). ClassicAPI decides aura order and lists your own auras first.

Settings

/tfb opens the AddOn Options panel (or prints help if the client has none).

Command Action Default
/tfb timers [on|off] Countdown text on
/tfb highlight [on|off] Gold border on removable enemy buffs on
/tfb sweeps [on|off] Reverse cooldown sweeps off
/tfb size 6-20 Countdown font size 9
/tfb warning 0-30 Seconds left at which text turns red 5
/tfb buffs 0-32 Most buffs shown 32
/tfb debuffs 0-16 Most debuffs shown. Below 16, extra debuffs are hidden rather than moved into the buff row. 16
/tfb test [buffs debuffs] Fake auras on your target for checking layout (default 32 and 16; 0-32 each). Run again or /tfb test off to stop. off
/tfb reset Restore defaults

Settings are saved and kept even while ClassicAPI is absent.

Test mode fills the target frame with fake buffs and debuffs so you can check layout, borders, stack counts and, with ClassicAPI, timers, sweeps and the red warning. It targets you if you have no target, restarts expiring fake auras so timers keep running, and is not saved; /reload turns it off. Debuffs past 16 spill into the buff row, as real ones do. The options panel has a matching button.

Compatibility with ShaguTweaks

Checked against the upstream ShaguTweaks source.

ShaguTweaks option Effect What to do
Unit Frames > Debuff Timer Conflict. Adds its own timer text, sweep and green stack count to debuffs 1-16, on top of ours. It ignores overflow debuffs in the buff row. Disable it. TargetFrameBuff prints a warning in chat if it detects it. Alternatively use /tfb timers off and /tfb sweeps off.
Cooldown Numbers No conflict found. It only hooks CooldownFrame_SetTimer; our sweeps use SetCooldown. Keep.
Dark UI Elements Adds a dark border to every TargetFrameBuff* button. Ours draws above it, so the gold removable-buff border should stay visible. Not verified in-game.
Target Castbar Positions the castbar from debuff 7 and 11 being shown. With the 4-4-8 layout it can sit over the second and third debuff rows. Disable it or move the castbar if it overlaps.
Move Unit Frames Buff and debuff buttons are children of TargetFrame, so they follow it. Keep.

Notes

  • Timings from ClassicAPI are best effort. Unobserved applications and some max-stack refreshes have unknown expiration; their timer and sweep stay hidden while the icon remains.
  • This is not a live WoW test. See VALIDATION.md for what was simulated and what to check in-game, and CHANGELOG.md for history.

Development

Tests simulate the WoW API under Lua 5.1: pip install lupa, then python3 tests/test_addon.py.

Credits

Based on project-949. Original author lua@lumpn.de; modified.