Bongos is a main action bar replacement developed by Tuller in 2005. Bongos takes the main action bar, as well as some related components like the casting bar, and breaks them up into movable components. From there, Bongos then adds in some basic features, like the ability to create more action bars, make a bar transparent, or change the scale of each bar. Additionally, the action bars in Bongos are enhanced over the default interface. Right click selfcast, buff and debuff highlighting, customizable bar switching conditions, an enhanced out of range indicator, and a more intuitive binding method are also included.
The minimap button is your main hub for doing Bongos configuration. It'll be the one with the Bongos icon. Right click to open the options menu, shift left click to enter and exit binding mode, and left click to enter and exit configuration mode.
The Options Menu
The options menu is where general settings are set in Bongos. The menu is split into two parts: General and Action Bars. The general panel contains all non action bar specific settings such as enabling or disabling sticky bars, bar visibility, and profile management.
You can access interface options via doing any of the following:
- The /bongos slash command
- Right clicking the Bongos minimap button
- The AddOns tab of the interface options menu
A profile in Bongos stores all Bongos related settings. It does 'not' currently save action button placement. By default, each character has a separate profile. Four profile operations are implemented: set, save, copy, and delete. Set will change the current active character to the selected profile. This allows the user to have multiple characters set to using the same settings. Save will create a copy of the user's current profile as a given name, then set the current user to that profile. Copy will copy all settings from the selected profile to the current profile. Delete will remove a profile.
Configuration mode is where it is possible to move bars around, adjust a bar's settings, or create new action bars. To adjust a bar's settings, enter configuration mode, then right click the desired bar to bring up the bar's right click menu. Every Bongos bar has a right click menu for adjusting settings. It is encouraged that all users look through the right click menus for each bar to discover all configuration options.
You can access configuration mode via doing any of the following
- The '/bongos config' or '/bongos lock' slash commands
- Left clicking the Bongos minimap button
To exit configuration mode, just use the same command you used to enter it.
Bindings mode is where it is possible to set hotkeys for all action bars, the pet bar, the class bar, the macro menu, and the spell book. To bind a key, hover over the button and press desired key combination, such as Alt + 1, W, or Mouse Wheel down. It is possible to bind keys to any mouse button recognized by the game, other than the left and right buttons. All bindings, except for the action bar, are saved in the same way as the standard binding system does, and respects the same per character option. Action bar bindings are treated as an overlay of the normal binding system, and are attached to a Bongos profile.
Bongos features a fairly rich set of slash commands. All bongos commands, with the exception of the binding mode toggle, can start with either /bongos, /bob, /bgs, or /bg3. The parameter <barList> can be either a single bar id, ex 'menu'; a space separated list of bar ids, ex 'bags pet 1'; a range of bars, ex '1-10'; 'all'; or any combination, ex '1-10 menu bags pet all'
- No arguments: Shows the options menu, if enabled.
- config: Toggles configuration mode
- sticky: Toggles the ability to dock bars to each other in configuration mode
- scale <barList> <scale>: sets <barList>'s scale to <scale>. 1 is normal scale
- setalpha <barList> <opacity>: sets the opacity of <barlist>. 0 is completely transparent, 1 is completely opaque
- setfade <barList> <opacity>: sets the faded opacity of <barList>. A bar's faded opacity is what opacity a bar has when not moused over
- show <barList>: shows <barList>
- hide <barList>: hides <barList>
- toggle <barList>: toggles <barList>
- set <profile>: switches to <profile>
- save <profile>: saves current settings as, and switches to <profile>
- copy <profile>: copies settings from <profile> to current profile
- delete <profile>: deletes <profile>
- reset: returns the current profile to default settings
- list: lists all available profiles
- version: prints the current Bongos version
- /keybound: toggles binding mode (only available with Bongos_AB)
Configuring Action Bars
Creating and Deleting Action Bars
Bongos allows the user to divide the 120 available action slots into as many bars as desired. To create a new bar, enter configuration mode, and simply hold down alt and drag to create a bar. A green or red rectangle will be displayed showing the currently selected size, such as 1x12 for an action bar with 1 row and 12 columns. If the box is green, then there are enough action slots available to create a new bar of the desired size. If the box is red, there are not.
To free up action slots, one must reduce the size of an action bar, or delete it entirely. Reducing the size of a bar can be done via lowering the rows, columns, and action sets values for a given bar in its right click menu. Deleting a bar is done via <Alt Right Click> in configuration mode.
Changing An Action Bar Under A Given Condition (Paging)
An action bar in Bongos3 has three properties: rows, columns, and pages. Together, they determine how many actions a bar actually uses by the formula of Number of Action IDs Used := Number of Rows * Number of Columns * Number of Pages. The row and column values describe the physical layout of a bar. If one wants a 2x12 bar, then he or she will set the rows value to 2 and the columns value to 12. The pages property tells how many different sets of actions a bar has. For a example, a druid would want his or her bar to show different actions based on if he or she is in cat, bear, or caster form. So, that bar would have three possible pages.
This is the fist step to setting up conditional switching for a bar: determine how many pages are needed. We've determined that to have different actions in caster, cat, and bear form, we need to set the action set value to 3. To do this, we enter configuration mode, right click the desired bar, then set the action set value to 3. You'll likely notice that both the row and column sliders changed once the action set value was adjusted. This is because, by adding another action set to the bar, we've reduced the amount of available actions, and thus reduced the maximum possible physical size of the bar.
Next, we need to tell Bongos what page to use for each state. At the top of the right click menu, there is a drop down for different settings for an action bar. Continuing from our druid example, we will select the stances option, which contains sliders for all of the druid forms. The number on each slider represents what action set to use when in the given condition. Since we want to have our bar change when in cat or bear form, we will set bear form to page 2, and cat form to page 3. The next step is to try it out. Enter cat form, and your bar should change. Enter bear form, and it should change to a completely different state.
If you do not want your bar to switch when a certain state, then set the slider for that condition to disabled. Bongos will then ignore the state when determining which page to display.
Here are all conditions Bongos checks for, and which order:
- <Modifier> Down - Occurs when you press control, alt, or shift
- Page <Number> - Occurs when you press a paging binding. These are bound, by default, to shift + 1-6 and shift + mouse wheel. Shift + 1 returns to your normal state
- Prowl (Druids Only) - Occurs when prowling
- Stances, Forms, Stealth - Occurs when you're in Defensive stance, Cat form, stealth, etc.
- Friendly/Enemy Target - Occurs when you're targeting a friendly or enemy target
So if you are holding down <Alt> down, are on page 2, and in bear form, Bongos will check for an action set > 1 for alt, then for page 2, then for bear form.
Showing An Action Bar Only Under Certain Conditions
Suppose, for example, you wish to make an action bar show only when in combat. This is possible in Bongos3. First, enter configuration mode, and right click the bar you wish to edit. Next, choose the show states option from the dropdown. You'll see an edit box and an okay button. In the text box, enter in [combat], then press the okay button. If you're not in combat, then the bar should immediately hide. To remove the setting, simply clear the edit box, and press okay. The bar should then immediately reappear.
All macro options are valid conditions for show states.
Using Bongos Bars in Lua
Bongos bars are all nameless. To retrieve a bar use:
local bar = Bongos3.Bar:Get(<id>)
Where <id> is the name of the bar you see when in configuration mode, like 1, bags, or menu.
To perform an operation on a bar use:
Bongos3.Bar:ForBar(<barList>, 'Method', arg1, arg2, ...)
The parameter <barList> can be either a single bar id, ex 'menu'; a space separated list of bar ids, ex 'bags pet 1'; a range of bars, ex '1-10'; 'all'; or any combination, ex '1-10 menu bags pet all'
Custom Paging Conditions
Say, for example, you wish to make a bar switch when under a certain condition, like when mounted, but that condition is not found within the right click menu in Bongos. It is possible to still have your action bar change, provided that condition is a valid macro option, but it will require a bit of Lua hacking. Please take a look at the example addon I've created for this, located here