A small Python tool that builds importable WeakAuras strings (the !WA:2!
format you paste into the in-game Import box) without the game running.
It also ships a few ready-to-use auras I made for a TBC Retribution Paladin.
A WeakAuras export string is just three steps stacked together:
- the aura table is serialized with LibSerialize
- the bytes are compressed with DEFLATE
- the result is packed into printable text and prefixed with
!WA:2!
This repo reproduces that exactly. LibSerialize is the real Lua library, run
through a Lua interpreter (lupa), so the output is byte-for-byte the same as
the game produces. DEFLATE uses Python's zlib, and the final packing is a
6-bit encoding over a fixed alphabet.
pip install lupa
LibSerialize.lua is downloaded automatically on first run.
Decode an existing string back into a table:
import weakauras_encoder as wa
data = wa.decode(open("seal-tracker.import.txt").read())
ok, table = wa.deserialize(data)
print(table["d"]["id"])Build a string from a Lua table:
import weakauras_encoder as wa
s = wa.encode_table('''
return { d = { id = "Hello", regionType = "text" }, s = "5.21.2", v = 1421, m = "d" }
''')
print(s) # !WA:2!....Check that a string is valid:
python demo_roundtrip.py ret-reminder-v3.1.import.txt
Drop-in import strings for a TBC Anniversary Retribution Paladin. See AURAS.md for what each one does and how to import.
rexhail-rotation-ret.import.txt(v3.3.0) — the main rotation helper, an adaptive Ret + Prot HUD. One import that adapts to your spec, to what you know (not your level), and to PvP vs PvE. The press-now icon is bigger and flashes gold the instant the GCD ends (the heartbeat), with a shared GCD bar and swing timer. Retribution runs a simple leveling rotation that unlocks a swing-synced seal-twist track at ~70 (Seal of Command + Seal of Blood/Martyr); Protection gets its own threat priority. A status icon on the right shows your weapon (the shield when you're in 1H+shield) and flips to a red NOT-ATTACKING warning when you should be swinging but aren't. Rotation icons (and the weapon icon) turn red when out of range of your target. Mana-aware, left-anchored row of up to 3 icons, pre-ready sweep + sparkle. See AURAS.md for macros. Published on wago: https://wago.io/f-ofmKAvLseal-tracker.import.txt— a standalone seal tracker.prot-reminder-v1.import.txt— a Protection version (any-seal tracker, Holy Shield with charges, Avenger's Shield).
- LibSerialize and LibDeflate — the serialization and compression libraries used by WeakAuras (both MIT-licensed).
- The Ret Paladin auras started from Baranor's TBC Retribution Paladin layout and were rebuilt and trimmed down from there.
MIT. See LICENSE.
Built with help from Claude (Anthropic) while figuring out the WeakAuras format.