Skip to content

Releases: VengeanceStudio/AbstractUI

AbstractUI v12.0.1.2

02 Mar 08:40

Choose a tag to compare

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_WORLD event, 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_WORLD now 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

01 Mar 01:00

Choose a tag to compare

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:
    1. General
    2. Unit Frames
    3. Action Bars
    4. Cooldown Manager
    5. Resource Bars
    6. CastBar
    7. Maps
    8. Tooltips
    9. Data Brokers
    10. Mailbox
    11. Skinning
    12. UI Buttons
    13. Tweaks
    14. Themes
    15. Setup
    16. Export
    17. 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.txt to 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

28 Feb 04:21

Choose a tag to compare

AbstractUI

WoW Version
License: GPL v3

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

  1. Download the latest release.
  2. Extract the AbstractUI folder.
  3. Place the folder into your WoW AddOns directory:
    • World of Warcraft\_retail_\Interface\AddOns\
  4. Launch World of Warcraft.
  5. Type /aui to open the configuration panel.

⚙️ Configuration

Access the full configuration menu via:

  • Type /aui in chat

Quick Commands

  • /aui - Open main settings
  • Toggle Move Mod...
Read more