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 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.
-
View User Profile
-
Send Message
Posted Oct 17, 2026@pawnzee me too
-
View User Profile
-
Send Message
Posted Oct 10, 2026hello, long time user and fan. Can we please get ''press and hold casting'' to work?
-
View User Profile
-
Send Message
Posted Oct 10, 2026The last square in the blizzard art bar is not a square but a rectangle so you cant align perfectly an actionbar inside: https://i.postimg.cc/SKCWBqFq/bt4.png
-
View User Profile
-
Send Message
Posted Oct 9, 2026I've been a big fan of Bartender for basically as long as I've played WoW. For Forever, is there a way to make the 2 action bar setting (see image) use the new blizzard art instead of the original art? https://imgur.com/a/yl6zqO4
-
View User Profile
-
Send Message
Posted Oct 8, 2026For very rudimentary totem bar support, change the following in `ActionBars.lua` (note plural):
On line 102, which starts `local LIST_ACTIONBARS =`, add `12` to the first list.
At line 336, in the function `BT4ActionBars:GetBarName(id)`, add these two lines:
```
elseif barID == 12 then
return "Totem Bar"
```