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 Jan 14, 2026i'm getting this bug, my spell procs aren't lighting up on the bars
1395x ...lizzard_ActionBar/Shared/ActionButtonSpellAlerts.lua:112: attempt to call field 'IsAssistedCombatAction' (a nil value)
[Blizzard_ActionBar/Shared/ActionButtonSpellAlerts.lua]:112: in function 'ShowAlert'
[Bartender4/libs/LibActionButton-1.0-138/LibActionButton-1.0.lua]:2192: in function <...er4/libs/LibActionButton-1.0/LibActionButton-1.0.lua:2190>
[Bartender4/libs/LibActionButton-1.0-138/LibActionButton-1.0.lua]:1495: in function <...er4/libs/LibActionButton-1.0/LibActionButton-1.0.lua:1357>
Locals:
self = <table> {
activeAlerts = <table> {
}
SpellAlertType = <table> {
}
}
actionButton = BT4Button5 {
NormalTexture = BT4Button5NormalTexture {
}
NewActionTexture = Texture {
}
Border = BT4Button5Border {
}
Flash = BT4Button5Flash {
}
_state_action = 5
icon = BT4Button5Icon {
}
AutoCastable = Texture {
}
HotKey = BT4Button5HotKey {
}
action = 5
flashing = 0
FlyoutBorderShadow = BT4Button5FlyoutBorderShadow {
}
Name = BT4Button5Name {
}
state_actions = <table> {
}
header = BT4Bar1 {
}
__sao = <table> {
}
SpellHighlightAnim = AnimationGroup {
}
rangeTimer = -1
Count = BT4Button5Count {
}
id = 5
AutoCastShine = BT4Button5Shine {
}
SpellHighlightTexture = Texture {
}
__LAB_Version = 138
outOfRange = false
config = <table> {
}
FlyoutBorder = BT4Button5FlyoutBorder {
}
_state_type = "action"
state_types = <table> {
}
FlyoutArrow = BT4Button5FlyoutArrow {
}
cooldown = BT4Button5Cooldown {
}
zoneAbilityDisabled = false
}
currentAlertType = nil
alertType = 1
(*temporary) = nil
(*temporary) = 5
(*temporary) = "attempt to call field 'IsAssistedCombatAction' (a nil value)"
-
View User Profile
-
Send Message
Posted Jan 14, 2026Its been about a month and my binds still dont save after relog, my n8 n- n1 on my razer mouse ether dont work or useing spells they not bind to, Im pressin n1 and it pressing n8,, etc. After disable the addon all works perfect so its not a mouse
-
View User Profile
-
Send Message
Posted Jan 14, 2026Version 4.17+ borken on Classic HC.
Game doesn't even list it in the addon list anymore.
Rollback to 4.16.6 fixed it.
-
View User Profile
-
Send Message
Posted Jan 14, 2026let's go guys you can fix it i believe in you :P
-
View User Profile
-
Send Message
Posted Jan 14, 2026When I press keybinds,they work, so the addon works, but I can't see the bars.
-
View User Profile
-
Send Message
Posted Jan 14, 2026So the Alpha shows the keybinds again but actually pressing the keybinds doesn't work.
-
View User Profile
-
Send Message
Posted Jan 14, 2026I dont understand how BCC on PTR for like 1.5 months and this isnt seemless. Games unplayable for so many addons
-
View User Profile
-
Send Message
Posted Jan 14, 2026Hey, great addon! When will there be an update for Classic TBC?
-
View User Profile
-
Send Message
Posted Jan 14, 2026can't access bartender on Rogue class, but it works for all my other charactors.. for bcc 2.5.5 version
-
View User Profile
-
Send Message
Posted Jan 14, 2026In reply to user_4k53bgwu44r3yzh0:
yeah its super weird, you cant even send "/bartender" in chat on rogue - works on my other chars ^^
-
View User Profile
-
Send Message
Posted Jan 14, 2026EDIT: Got all working but keybinds. If serves as help for the dev, the keybinds for pet works still in TBC. Also the XP bar for it so show the filling had to be set at width 1024. The bar bag keeps resetting position for some reason and no keychain icon.
-
View User Profile
-
Send Message
Posted Jan 14, 2026In reply to OndowMosa: How did you get it working? Mine just messes up all my bars, shows 2 stance bars, and while there is no minimap button if I /bt all the action bar options are blank
-
View User Profile
-
Send Message
Posted Jan 14, 2026In reply to AfroJesus: I donwloaded the Alpha version, if you go to Version in CurseForge app you can manually select it.
-
View User Profile
-
Send Message
Posted Jan 14, 2026In reply to OndowI had done that already, doesn't even appear in my addon list when I do that, thanks for trying to help, think ill just have to wait for it to update.
-
View User Profile
-
Send Message
Posted Jan 14, 2026In reply to OndowMosa:
works fine apart from keybinds - bartender keybinds are being displayed - also when im hitting the corresponding button its lighting up the button but not using the ability :D
do you found any solution for this?
Found on myself: put it on "Toggle actions on key press instead of release" and it works again
-
View User Profile
-
Send Message
Posted Jan 14, 2026In reply to nilius5318: But you cannot click then haha.
-
View User Profile
-
Send Message
Posted Jan 14, 2026In reply to OndowMosa:
In reply to AfroJesus:
restart the game, not just reload - that did it for me
-
View User Profile
-
Send Message
Posted Jan 14, 2026In reply to nilius5318: THANK YOU!!!
-
View User Profile
-
Send Message
Posted Jan 12, 2026I too have non-working buttons on the TBC PTR. Disabled every addon except Bartender and the button is lighting up but not triggering. Very odd.
-
View User Profile
-
Send Message
Posted Jan 14, 2026In reply to inthemixMike: Same. Did you make it work somehow?