Bartender4
Bartender4 is a full ActionBar replacement mod. It provides you with all the features needed to fully customization most aspects of your action and related bars.
Bartender4 in Midnight: As of version 4.16.5, Midnight support is in preview - it'll be worked on until release, of course.
Major Changes since Dragonflight / 10.0
- Hold-to-cast is not currently available for addons
- Action Bars have been slightly re-arranged in Bartender4 for Dragonflight and beyond
- Bar 1-8 now reflect Blizzard Bars 1-8 (these are old 1, 3-6, and the 3 new bars)
- The old bars 7-10 are now called "Class Bar 1-4" (Shapeshifting, Stances, etc)
- The old bar 2 is now called Bonus Action Bar
Features
- Support for all Action Bars and all related bars
- 10 Action Bars (13 in Dragonflight & War Within!)
- Stance Bar
- Pet Bar
- Bag Bar
- Micro Menu
- XP/Reputation Bar
- All Bars are fully customizable (Scale, Alpha, Fade-Out settings, ...)
- Very flexible and customizable Show/Hide driver based on Macro Conditions
- Additional Layout and Paging settings for Action Bars
- Page all bars based on Stance or Modifier
- Possess Bar support
- Custom State driver support with Macro Conditions
- Options to hide specific elements of the buttons (Macro Text, HotKey, more could be added on demand)
- StickyFrames support
- Masque/ButtonFacade support!
- Easy Hotkey Binding using KeyBound
- Options to control the hiding of the default blizzard artwork (you might still want that to be displayed..)
FAQ
Q: I cannot move/drag my skills on my bars?
A: Hold Shift to move skills safely. You can also unlock your bars in the Bartender4 options, but using Shift is safer and recommended.
Q: How do i access the Configuration?
A: You can open the configuration with the Slash Commands (/bt or /bartender) or through the Bartender4 LDB plugin.
Q: Where are my keybindings? And how do i bind new keys?
A: Bartender4 buttons should automatically inherit keybindings from the Blizzard bars. For new keybindings, you can use KeyBound to re-bind your keys. You can access KeyBound by its slash command (/kb) or through the button in the BT4 config. Hover a button, press key → voila!
Q: Can I skin the buttons beyond the built-in options?
A: Bartender4 allows skinning through Masque! After installing both Bartender4 and Masque, you can customize the BT4 appearance in the Masque options.
Q: How do i disable the snapping of the bars?
A: Currently, you can temporarily override the snapping by holding down the Shift Key while moving your bars, or uncheck the option in the popup when your bars are unlocked.
Feature Requests/Bug Tracker
Please submit Bugs and/or Feature Requests using the Ticket System on the WoWAce Project page or in the Bartender4 Forum Thread. Please provide as many information as possible, including your client language, the exact version you are running, how to reproduce any errors, and a stack trace, if applicable.
Links
WoWAce Project: Bartender4 on WoWAce
Custom State Header: Info page on WoWAce
-
View User Profile
-
Send Message
Posted Oct 23, 2026P.S. I'm not sure where to post this actually, but a search on Curseforge for "Action Bars" lists pages of stuff - but Bartender is not one of the choices offered...
-
View User Profile
-
Send Message
Posted Oct 23, 2026(Adding More information) Whatever is being displayed does not appear to be a "numbered bar." Infecting myself as a zombie without any action bar addon loaded, and I see that EVERY numbered action bar you can switch to with the "roll arrows" seems to be "overloaded" with the same custom action bar which contains the following Spells: Mangle!, Retch!, Beckoning Groan, Lurch! and Zombie Explosion!.
And whatever it is, it's not just Bartender. I tried an assortment of other Action Bar replacements and they all behaved similarly (ForeverUI, Ellesmere, and a couple of other randos I'd never heard of.)
-
View User Profile
-
Send Message
Posted Oct 22, 2026The XP bar appears to be missing. Using version 4.18.3.1 on TBC classic
-
View User Profile
-
Send Message
Posted Oct 22, 2026Tonight, Blizzard introduced some form of "Zombie apocalypse" event in the Wow Forever Beta. Once you were turned into a zombie, there was no way to access the "menu bar 1" that was somehow substituted by Blizzard for your regular menu bar 1. In fact, it wasn't until I unloaded all add-ons while testing something else that I realized that the menu bar had been substituted and that were actually actions for you to use as a zombie on the action bar when you were in that form.
While I don't think it horribly likely that the zombie form will become part of normal play, I'm not certain that there are not similar instances where Blizzard does "something to the menu bar." Therefore, I wanted to point this out as it seems likely that Bartender will disrupt this "substitute menu bars" process as it did when you were changed to a zombie. If this same mechanism is used in places in normal game play it will likely be frustrating and confusing as there's no indication that you aren't seeing some intended portion of the interface unless you unload the Bartender add-on.
-
View User Profile
-
Send Message
Posted Oct 22, 2026LUA_WARNING: GetAuraDataByIndex(): Auras cannot be accessed when secret while tainted by 'Bartender4' LUA Taint: Bartender 4
136x Blizzard_ActionBar/Shared/ActionButton.lua:891: bad argument #1 to 'SetCooldown' (Usage: self:SetCooldown(start, duration [, modRate]). Secret values are only allowed during untainted execution for this argument.)
[Blizzard_ActionBar/Shared/ActionButton.lua]:891: in function <...ce/AddOns/Blizzard_ActionBar/Shared/ActionButton.lua:889>
[Blizzard_ActionBar/Shared/ActionButton.lua]:910: in function 'ActionButton_ApplyCooldown'
[Blizzard_ActionBar/Shared/ActionButton.lua]:886: in function 'ActionButton_UpdateCooldown'
[Blizzard_ActionBar/Shared/ActionButton.lua]:1011: in function 'OnEvent'
[Blizzard_ActionBar/Shared/ActionButton.lua]:233: in function <...ce/AddOns/Blizzard_ActionBar/Shared/ActionButton.lua:230>
Locals:
cooldown=MultiCastActionButton5Cooldown <ActionButtonTemplate.xml:111>
start=<secret number>
duration=<secret number>
enable=true
modRate=<secret number>
Not sure if this all Bartender or if something else is interfering. Hasn't happen before tonight.
-
View User Profile
-
Send Message
Posted Oct 18, 2026Currently enabling Bartender in Forever hides the totem bar and there is no option to enable the totem bar that I can find
-
View User Profile
-
Send Message
Posted Oct 18, 2026@stark8819 I was seeing the same thing. I wound up installing SmartTotem for now. It works with Bartender.
https://www.curseforge.com/wow/addons/smarttotem
-
View User Profile
-
Send Message
Posted Oct 19, 2026In reply to stark8819:
I posted a hack to enable it in https://www.wowace.com/projects/bartender4?comment=10159
-
View User Profile
-
Send Message
Posted Oct 17, 2026Can you fix the mouseover for WoW Forever? Its kinda pointless using Bartender if you can't mousover and have to create 100 macros again for every spell...
-
View User Profile
-
Send Message
Posted Oct 16, 2026Hi would it be possible to add CD timer threshold colors for actionbars? also is its possible to show cd timer even when you have an available charge of the ability?
-
View User Profile
-
Send Message
Posted Oct 16, 2026The mouseover options arent working on Forever. Tried the global setting and the per bar setting, same result both times.
-
View User Profile
-
Send Message
Posted Oct 16, 2026as of this morning bar1 wont page when switching stances on warrior. any advice?
-
View User Profile
-
Send Message
Posted Oct 16, 2026@junglistlol my bad.. its the blizzard problem
-
View User Profile
-
Send Message
Posted Oct 13, 2026Mouse Over casting in Forever breaks entirely, regardless of how the addon is configured. Since paging is not allowed beyond Action Bar 1 on the default UI. I was looking to use Bartender, but even when disabling Mouse Over casting in the default ui, the bars don't honor any action bar State Configuration settings for Self or Mouse Over casting.
Since I use alt, shift and ctrl in other keybinds, I can't use it configure a keybind to trigger Mouse Over with Bartender. Is there some way to test this otherwise? Is this a bug? Mouse Over casting has recently changed for Forever.
-
View User Profile
-
Send Message
Posted Oct 15, 2026In reply to Mathizsias:
Do [@mouseover] macros work for you? Ignoring whether or not you have the macro slots to spend on that.
I once investigated whether you could use that conditional in the bar state configuration. The answer is that bar page switching goes into a different state driver than target conditions, and bartender only supports the former. I suspect it would be straightforward for Nevcairiel to add support for that second state driver with a separate custom conditional box.
-
View User Profile
-
Send Message
Posted Oct 16, 2026@azymyrta Ah sorry, I've moved away from bartender and am using the default ui. My only reason for using Bartender left was action bar paging on forms, and I've fixed that in the default ui.
-
View User Profile
-
Send Message
Posted Oct 12, 2026Getting the following today with the addon. Was working fine yesterday so I assume Blizzard changed something
2021x Blizzard_GamepadActionBars/ActionBarButton.lua:965: attempt to perform boolean test on a secret boolean value (execution tainted by 'Bartender4')
[Blizzard_GamepadActionBars/ActionBarButton.lua]:965: in function '?'
[Blizzard_GamepadActionBars/ActionBarButton.lua]:1032: in function 'UpdateFlyoutActionIcon'
[Blizzard_GamepadActionBars/ActionBarButton.lua]:978: in function 'OnEvent'
[Blizzard_GamepadActionBars/ActionBarButton.lua]:1053: in function 'OnEvent'
[Blizzard_GamepadActionBars/Camelot/ClassSpellFlyout.lua]:25: in function <...zzard_GamepadActionBars/Camelot/ClassSpellFlyout.lua:24>
Locals:
self=GamepadMainActionBarFramePageUnitLeftClassAction <MainActionBarFrame.xml:94>{
bindingAction="ACTIONBUTTON0"
stateDirty=true
BorderShadow=Texture <Flyout.xml:18>
flashDirty=true
popup=GamepadSpellFlyout <SpellFlyoutRadial.xml:12>
anchorInfo=<table>
SpecialActionIcon=Texture <ActionBarButton.xml:7>
needsUpdate=false
feedback_action=1
HighlightTexture=Texture <ActionButtonTemplate.xml:158>
InterruptDisplay=Frame <ActionButtonComponentTemplate.xml:330>
flashtime=0
CooldownFlash=Frame <ActionButtonComponentTemplate.xml:333>
flashing=0
SquareGlowFocus=Texture <ActionBarButton.xml:72>
hotkeyTextKeyboardX=-4
NormalTexture=GamepadMainActionBarFramePageUnitLeftClassActionNormalTexture <ActionButtonTemplate.xml:146>
activeButtonShape="Circle"
Count=GamepadMainActionBarFramePageUnitLeftClassActionCount <ActionButtonTemplate.xml:92>
buttonIndexOnActionBar=1
flyoutArrowAngleRads=0
arrowDownTexture="UI-HUD-ActionBar-Flyout-Down"
GameplayModeCircleFocusStartAnim=AnimationGroup <ActionBarButton.xml:98>
hotkeyTextGamepadY=0
EditModeSquareFocusStartAnim=AnimationGroup <ActionBarButton.xml:87>
RangeIndicator=FontString <ActionBarButton.xml:78>
CircleGlowFocus=Texture <ActionBarButton.xml:66>
SquareShadowFocus=Texture <ActionBarButton.xml:58>
QuickKeybindHighlightTexture=Texture <QuickKeybind.xml:7>
SquareShadow=Texture <ActionBarButton.xml:52>
CircleShadowFocus=Texture <ActionBarButton.xml:46>
shoulderButton="PADLSHOULDER"
Flash=GamepadMainActionBarFramePageUnitLeftClassActionFlash <ActionButtonTemplate.xml:36>
PermaboundOverlay=Texture <ActionBarButton.xml:10>
CheckedTexture=Texture <ActionButtonTemplate.xml:164>
action=0
PushedTexture=Texture <ActionButtonTemplate.xml:152>
enableLOCCooldown=true
lossOfControlCooldown=Cooldown <ActionButtonTemplate.xml:120>
cooldown=GamepadMainActionBarFramePageUnitLeftClassActionCooldown <ActionButtonTemplate.xml:111>
SpellHighlightTexture=Texture <ActionButtonTemplate.xml:61>
AutoCastOverlay=Frame <ActionButtonTemplate.xml:104>
triggerButton="PADLTRIGGER"
TextOverlayContainer=Frame <ActionButtonTemplate.xml:82>
popupDirection="UP"
NewActionTexture=Texture <ActionButtonTemplate.xml:56>
LevelLinkLockIcon=Texture <ActionButtonTemplate.xml:66>
arrowCrossAxisSize=7
Name=GamepadMainActionBarFramePageUnitLeftClassActionName <ActionButtonTemplate.xml:43>
CircleMask=MaskTexture <ActionBarButton.xml:18>
icon=GamepadMainActionBarFramePageUnitLeftClassActionIcon <ActionButtonTemplate.xml:23>
SlotArt=Texture <ActionButtonTemplate.xml:33>
Arrow=Texture <Flyout.xml:26>
TargetReticleAnimFrame=Frame <ActionButtonComponentTemplate.xml:332>
closedArrowOffset=4
SpellCastAnimFrame=Frame <ActionButtonComponentTemplate.xml:331>
isFlyoutAction=true
enableSpellFX=true
inputPromptKey="LeftInputPrompt"
HotKey=GamepadMainActionBarFramePageUnitLeftClassActionHotKey <ActionButtonTemplate.xml:85>
hotkeyTextGamepadX=0
IconMask=MaskTexture <ActionButtonTemplate.xml:24>
arrowMainAxisSize=18
SpellHighlightAnim=AnimationGroup <ActionButtonTemplate.xml:75>
flyoutID=262
EditModeCircleFocusStartAnim=AnimationGroup <ActionBarButton.xml:94>
Border=GamepadMainActionBarFramePageUnitLeftClassActionBorder <ActionButtonTemplate.xml:49>
openArrowOffset=2
arrowNormalTexture="UI-HUD-ActionBar-Flyout"
GameplayModeSquareFocusStartAnim=AnimationGroup <ActionBarButton.xml:91>
chargeCooldown=Cooldown <ActionButtonTemplate.xml:130>
SquareMask=MaskTexture <ActionBarButton.xml:29>
popupCrossAxisSize=47
arrowOverTexture="UI-HUD-ActionBar-Flyout-Mouseover"
collapsed=false
CircleShadow=Texture <ActionBarButton.xml:40>
popupOffset=-4
eventsRegistered=true
hotkeyTextKeyboardY=-5
SlotBackground=Texture <ActionButtonTemplate.xml:32>
}
onlyKnown=true
(for state)=nil
(for control)=5487
_=5487
overrideSpellID=5487
(*temporary)=<secret boolean>
(*temporary)=5487
(*temporary)="attempt to perform boolean test on a secret boolean value (execution tainted by 'Bartender4')"
-
View User Profile
-
Send Message
Posted Oct 11, 2026Add me to this request.
-
View User Profile
-
Send Message
Posted Oct 10, 2026ActionButton_StartFlash regression in 4.18 (Auto-repeat red flash missing across all bars)
Description:
In Bartender4 version 4.18+, the native engine's red auto-repeat / targeting flash animation (ActionButton_StartFlash) fails to display on buttons when auto-attack or auto-repeat actions are active. This issue occurs across all action bars.
Troubleshooting Steps:
Verified that auto-repeat red flashing works normally with the default Blizzard UI.
Tested profile resets, frame hooks, and Masque skinning—none restored the flash on 4.18.
Rolling back to version 4.17 immediately restores the flash animation across all bars.
Expected Behavior:
Buttons with active auto-repeat actions should display the red pulsing texture layer during combat, matching default UI behavior and pre-4.18 releases.
Environment:
WoW Version: Retail (11.x)
Affected Versions: 4.18.x
Working Version: 4.17.x
Note:
Huge fan and long-time user of Bartender4! Thank you so much for all your incredible work maintaining this essential addon over the years—really appreciate everything you do!
-
View User Profile
-
Send Message
Posted Oct 10, 2026Some abilities appearing out of range, even though i'm not out of range.....on Mists and on Retail as well....example
Druid class
Tiger's fury (It's an ability with no range) - appears fully red, as i'm out of range.
Swipe (Appears out of range, even tho the mob is infront of me) both on retail and mists.
I also tried numbered out of range only keybind appearance, also same problem.