Releases: VengeanceStudio/AbstractUI
AbstractUI v12.0.1.2
AbstractUI v12.0.1.2 Release Notes
🎯 New Features
User Interface Enhancements
- Cooldown Icon Keybinds: Keybinds now display on action bar ability icons during cooldown
- Assisted Highlight: Added spell highlight system that mirrors Blizzard's assisted casting indicators
- Quest & Dialogue Scaling: Quest tracker and dialogue windows now scale and position correctly with UI scaling settings
- Action Bar Auto-Hide: Action bars can now auto-hide and reveal on mouseover
Debug Tools
- /auimemory: Track addon memory usage with delta reporting
- /auigc: Force garbage collection for memory testing
🚀 Critical Performance Fixes
Zone Change Performance
- Fixed FPS degradation after 3-4 zone changes
- Fixed progressively slower loading screens between zones
- Root cause: Multiple modules were re-executing expensive setup functions on every
PLAYER_ENTERING_WORLDevent, creating 40-56 overlapping timers after just 4 zone changes
Memory Optimization
- 96% memory leak reduction: From 0.78 MB/10s growth to 0.04 MB/10s
- Implemented table reuse patterns to reduce allocations
- Added proper timer cancellation before recreation
Architecture Improvements
- Added initialization guards to 7 modules (Tweaks, Maps, UIButtons, ResourceBars, CastBar, Skins, UnitFrames)
- Prevents duplicate setup execution on zone transitions
- Event-driven updates replace polling loops in BrokerBar module
- Proper event registration for instance transitions (
ZONE_CHANGED_NEW_AREA)
🐛 Bug Fixes
- Fixed ADDON_ACTION_BLOCKED error: Removed unnecessary
Reload()call in bag bar visibility toggle - Fixed location broker display: Now shows actual zone name instead of "Loc"
- Fixed broker module load order: Brokers now load before BrokerBar to prevent initialization errors
- Fixed event mapping:
PLAYER_ENTERING_WORLDnow correctly triggers zone updates
⚠️ Compatibility
- WoW Version: Interface 12.0.1+ (Mainline)
- Lua Version: 5.1
- WoW Patch: Compatible with WoW 12.0+ protected function restrictions
Installation: Replace your existing AbstractUI folder with the new version and reload UI.
Known Issues: None reported in current testing.
AbstractUI v12.0.1.1
AbstractUI v12.0.1.1
🎯 Highlights
This release focuses on improving the Unit Frames configuration experience with major fixes to settings visibility, enhanced UI layout, and better organization throughout the addon.
✨ New Features
Unit Frames Improvements
- Settings Now Visible: Fixed critical issue where Health Bar, Power Bar, and Info Bar settings weren't displaying in Unit Frames tabs
- Boss Frames Auto-Enabled: Boss Frames now automatically enable when UnitFrames module is active (no separate toggle needed)
- Copy From Repositioned: "Copy From" dropdown moved to the top of Player, Target, TargetTarget, Pet, and Focus settings for easier access
- Better Space Usage: Reorganized settings to use horizontal space more efficiently with inline layout for most options
UI/UX Enhancements
- Improved Resolution Display: General settings now show both actual UI resolution and effective resolution
- Larger Version Text: Made version display on General tab more prominent
- Better Module Names: Renamed "ActionBars" → "Action Bars" and "ResourceBars" → "Resource Bars" in settings tree
- Reordered Settings Menu: Reorganized module order for better workflow:
- General
- Unit Frames
- Action Bars
- Cooldown Manager
- Resource Bars
- CastBar
- Maps
- Tooltips
- Data Brokers
- Mailbox
- Skinning
- UI Buttons
- Tweaks
- Themes
- Setup
- Export
- Import
🔧 Technical Improvements
Framework Updates
- AbstractOptionsPanel: Added fontSize support for description widgets (
small,medium,large,huge, or custom numbers) - Dynamic Database Loading: Fixed database reference capture issues in Unit Frames options generation
- Lazy Options Evaluation: Implemented proper lazy loading for Unit Frames settings using getter functions
Code Architecture
- Converted Unit Frames inline groups to header-based sections (framework compatibility)
- Updated all bar options (Health, Power, Info) to use dynamic
getDB()functions - Fixed option ordering to keep related settings grouped together
🐛 Bug Fixes
- Fixed Unit Frames settings not displaying due to database closure capture timing
- Fixed inline group rendering incompatibility with AbstractOptionsPanel framework
- Corrected resolution display calculation to use
GetPhysicalScreenSize()API - Fixed UI Scale percentage display logic
📝 Documentation
- Updated
AbstractUI Directory Structure.txtto reflect current addon structure - Added AbstractOptionsPanel and ScrollFrame to Framework documentation
- Documented CastBar, CooldownManager, ResourceBars, and Mailbox modules
🎨 Settings Layout Updates
All Unit Frames settings now display correctly with improved organization:
- Headers for each bar section (Health Bar, Power Bar, Info Bar)
- Inline layout for toggles, sliders, and dropdowns
- Full-width text inputs for text format customization
- Better visual grouping with consistent spacing
Installation: Extract to World of Warcraft\_retail_\Interface\AddOns\
Configuration: Type /aui in-game or open via ESC → Interface → AddOns
Requirements: WoW Retail 12.0.1.58162 or higher (The War Within)
🙏 Feedback
Please report any issues on GitHub Issues or join our community for support and suggestions!
AbstractUI - Initial Release
AbstractUI
AbstractUI is a complete, modular, and modern User Interface replacement for World of Warcraft.
Built for WoW 12.0+ (Midnight expansion), it prioritizes readability, performance, and a sleek aesthetic. It removes the clutter of the default Blizzard UI while retaining feature-rich functionality through a suite of integrated modules.
✨ Features
AbstractUI is divided into lightweight, independent modules. You can enable or disable each module individually.
📋 Module Overview
🌑 Skins Module
Transform your entire interface with consistent theming across all UI elements.
Features:
- Multiple Pre-defined Themes: AbstractTransparent (default), AbstractGlass, AbstractGreen, and class-specific themes
- Customizable frame backgrounds and borders with independent transparency controls
- Applies consistent theming to action bars, tooltips, minimap, unit frames, and info bars
- Color customization with RGB + alpha controls
- LibSharedMedia-3.0 integration for custom textures
📊 Data Broker Bar Module
A powerful, fully customizable bar system for displaying critical game information at a glance.
Core Features:
- Support for unlimited custom bars with independent positioning
- LibDataBroker-1.1 compatible for third-party data plugins
- Per-bar configuration: position, size, transparency, fonts, textures, and colors
- Three alignment sections per bar: Left, Center, Right
- Click-through mode option
Built-in Data Brokers:
| Broker | Description | Features |
|---|---|---|
| System Info | FPS, Latency, Memory | Color-coded alerts (green/yellow/red), click for details |
| Volume Mixer | Master sound control | Click to mute/unmute, mousewheel to adjust, visual indicator |
| Gold Tracker | Currency display | Shows total gold, click for character breakdown, WoW Token prices |
| Clock | Time display | 12/24hr format, daily/weekly reset timers, server/local time toggle |
| Bag Space | Inventory tracking | Free/total slots, bag type icons, color-coded warnings |
| Durability | Equipment condition | Percentage display, low durability alerts, click for repair window |
| Friends | Social tracking | Online friend count, click for detailed friend list with class colors |
| Guild | Guild roster | Online guild member count, click for roster with ranks and notes |
| Location | Zone information | Current zone name, coordinates (X, Y), instance difficulty |
| Difficulty | Instance settings | Shows current difficulty mode, click to change |
| WoW Token | Market prices | Current token price, trends, click for auction house link |
| Item Level | Character stats | Average equipped item level |
Interactive Features:
- Expandable friend and guild rosters with detailed information
- Class coloring for character names
- Zone level and coordinates
- Memory usage per addon breakdown
- Reset timer countdowns
⚔️ Action Bars Module
Clean, modern action bars that remove Blizzard's default clutter while maintaining full functionality.
Features:
- Removes default artwork (Gryphons, Dragons, decorative elements)
- Applies skin theming to all action buttons
- Supports all default action bars (Main, Bottom, Right 1-2, Pet, Stance)
- Customizable button sizes and spacing
- Fade-out when not in use (configurable)
- Hotkey and macro text display options
- Combat state awareness
🗺️ Maps Module
Enhanced minimap with modern aesthetics and improved functionality.
Features:
- Rectangular/Square minimap replacing the default circular design
- Clean borders matching current skin
- Auto-zoom functionality
- Coordinate display (X, Y)
- Cleaned-up tracking icons
- Customizable size and position
- Zone text overlay
- Clock integration
- Mail/LFG notifications
❤️ Unit Frames Module
Advanced, fully customizable unit frames for all unit types with a powerful tag-based text system.
Supported Frame Types:
- Player Frame - Your character with health, power, and info bars
- Target Frame - Current target with hostility coloring
- Target of Target - Your target's target
- Pet Frame - For Hunters, Warlocks, Death Knights, and other pet classes
- Focus Frame - Track your focus target
- Boss Frames - Unified system for all 5 boss encounters
Core Frame Features:
Tag System:
Advanced text formatting with dynamic tags:
[curhp]- Current health value[maxhp]- Maximum health value[perhp]- Health percentage[curpp]- Current power (mana/rage/energy)[maxpp]- Maximum power[perpp]- Power percentage[name]- Unit name[level]- Unit level[class]- Class name[classification]- Elite/Rare status
Customization Options:
- Independent transparency: Separate alpha controls for bars and backgrounds
- Color options: Class coloring, power type coloring, custom RGB colors
- Hostility coloring: Green (friendly), Yellow (neutral), Red (enemy)
- Bar positioning: Attach bars to health, power, or info sections
- Fonts & textures: Full LibSharedMedia-3.0 support
- Size & scale: Width, height, and scale adjustments per frame
- Portrait display: 2D/3D portraits (where applicable)
- Cast bars: Position, size, color, and text customization
⏱️ Cooldown Manager Module
- Built-in digital timers on ability icons
- Clear, readable cooldown display
- Customizable font and positioning
- Can attach Resource Bars to Cooldown Manager
Resource Bars and Cast Bar Modules
- Primary Power Bar (Mana, Energy, Rage, etc.)
- Secondary Power Bar (Holy Power, Chi, Runes, etc.)
- Both bars support smart attachment to Cooldown Manager
- Cast Bar with optional Spell icon
- Visual indicator for non-interruptible casts
🎯 Movable Module
Intuitive frame positioning system for complete UI customization.
Features:
- Toggle Move Mode to unlock frames
- Visual highlights showing movable frames with colored borders
- Drag-and-drop positioning for all frames
- Nudge arrows for pixel-perfect positioning
- Reset to default position functionality
- Lock/unlock individual frames
- Preview mode showing frame boundaries
- Works with all unit frames, info bars, and minimap
💬 Chat Module
Enhanced chat frame with improved readability and modern styling.
Features:
- Restyled chat frames matching current skin
- Improved text contrast
- Customizable chat frame borders
- Integrated button styling
- Copy chat functionality
- URL detection and copying
- Font and size customization
🛠️ Tweaks Module
Comprehensive quality-of-life improvements and automation features to streamline gameplay.
Features:
| Feature | Default | Description |
|---|---|---|
| Fast Loot | ✓ ON | Enforces fast auto-loot on login |
| Hide Gryphons | ✓ ON | Removes decorative gryphon/dragon artwork |
| Hide Bag Bar | ✓ ON | Removes the default bag bar for cleaner UI |
| Auto-Repair | ✓ ON | Automatically repairs all items at vendors with cost reporting |
| Auto-Repair (Guild) | OFF | Use guild bank funds for repairs (falls back to personal gold) |
| Auto-Sell Junk | ✓ ON | Automatically sells grey (poor quality) items at merchants |
| Auto-Insert Keystone | ✓ ON | Automatically places Mythic Keystones into font when near pedestal |
| Auto-Delete Confirmation | ✓ ON | Auto-fills "DELETE" text when deleting items |
| Reveal Map | ✓ ON | Attempts to reveal unexplored areas on world map |
| Auto Screenshot | OFF | Takes automatic screenshots when earning achievements |
| Skip Cutscenes | OFF | Automatically skips cinematics and movies (great for alts) |
| Talent Import Overwrite | ✓ ON | Adds checkbox to import dialog to overwrite loadouts |
Automation Details:
- Vendor Automation: Works at any merchant with repair/sell capabilities
- Keystone Support: Shadowlands/Dragonflight (ID: 180653) and BFA (ID: 158923)
- Delete Confirmation: Works for all item types (regular, good, quest items)
- Smart Talent Import: Prevents duplicate loadout creation
🎨 UI Buttons Module
Consistent styling for interface buttons and menus.
Features:
- Styled menu buttons (Character, Spellbook, Talents, Collections, etc.)
- Themed bag buttons
- Micromenu button styling
- Consistent hover effects
- Matches active skin
- Proper scaling and positioning
⚙️ Setup Module
First-time setup wizard for quick configuration.
Features:
- Initial setup wizard on first load
- Profile creation and management
- Quick preset selection
- Module enable/disable configuration
- Skin selection
- Frame positioning presets
- Reset to defaults option
📦 Dependencies
This addon includes the following libraries in the libs folder:
- Ace3 (AceAddon, AceConfig, AceDB, AceEvent, AceHook, AceConsole, AceSerializer)
- LibSharedMedia-3.0 (Fonts, Textures, Statusbars)
- LibDataBroker-1.1 (Data display integration)
- LibCompress (Data compression utilities)
- CallbackHandler-1.0 (Event handling)
🚀 Installation
- Download the latest release.
- Extract the AbstractUI folder.
- Place the folder into your WoW AddOns directory:
World of Warcraft\_retail_\Interface\AddOns\
- Launch World of Warcraft.
- Type
/auito open the configuration panel.
⚙️ Configuration
Access the full configuration menu via:
- Type
/auiin chat
Quick Commands
/aui- Open main settings- Toggle Move Mod...