OneBag3
OneBag3 is part of a long line of bag replacements for the default game bags that will combine all of your bags into one frame.
OneBag has a long history of minimalism and OneBag3 will continue to uphold the standard of easy of use and simplicity it's predecessors set. Like the earlier versions, OneBag3 will continue to offer powerful options for those who wish to delve a little deeper.
Also in the vein of earlier iterations I've kept to the philosophy of doing as little work as possible, as a result the code base is very small, and most of it is in the OneCore library. As of the time of writing there are only 268 lines of code unique to OneBag3, and only 1804 lines of code in OneCore itself. LoC is a horrible stat in general, but it's fun none the less, and I cheat horribly since I build off the powerful Ace3 libraries.
Features
- Now with Search
- Combines all of your bags into one.
- Customizable number of columns
- Inherent support for addons that interact with the default bags
- Color coded slots by item rarity or bag type
- Will automatically open and close for you when visiting the auction house, bank, mailbox, merchant or when trading with another player.
- Allows only certain bags to be displayed, either by slot or type
- Custom bag bar which will highlight it's associated slots on mouseover. This highlighting can be locked in place by clicking.
- Customizable scale, background color, alpha, and more.
- Clean and powerful graphical configuration
- Exposes WoW's built in bag sorting
Search Syntax
Search inside of OneBag3 is powered by the LibItemSearch library by Jalibroc. As a result it supports many advanced search options.
Advanced Filters:
- Quality: q:[quality] or quality:[quality]. Example: q:epic
- Level: l:[level], lvl:[level] or level:[quality]. Example lvl:30
- Type or Subtype: t:[search], type:[search] or slot:[search]. Example t:weapon
- Name: n:[name] or name:[name]. Example: n:lockbox
- Sets: s:[set] or set:[set]. Example: s:fire
- Tooltip Info: tt:[term], tip:[term] or tooltip:[term]. Example: tt:binds
Search Operators
- Logical NOT: "!q:epic" matches items that are NOT epic.
- Logical OR: "q:epic | q:rare" matches items that are either epic OR rare.
- Logical AND: "q:epic & t:weapon" matches items that are epic AND weapons.
- Greater Than: "lvl: > 30" matches items that are higher than level 30.
- Less Than: "lvl: < 30" matches items that are less than level 30.
- Greater or Equal to: "lvl: => 30" matches items that are lvl 30 or greater.
- Lesser or Equal to: "lvl: <= 30" matches items that are lvl 30 or less.
Special Keywords
- soulbound, bound, bop - Bind on pickup items.
- bou - Bind on use items.
- boe - Bind on equip items.
- boa - Bind on account items.
- quest - Quest bound items.
The Family
- OneCore
- The brains and the brawn of the outfit, Core does all the heavy lifting both logic and layout wise. This is embedded in OneBag by default, and you shouldn't need to worry about installing it unless you're running no-lib builds.
- On WowAce
- On Curse
- OneBank3
- OneBag's brother who always like the safety of town, Bank does pretty much the exact same job for your bankslots as OneBag does for your character's bags.
- On WowAce
- On Curse
Localization
Localization is powered by WowAce's built in translation system. Please use the following links to contribute to localization.
Bug Reports & Suggestions
Please report all bug reports to my tracker on WowAce.
I want to thank all the users who've been using OneBag and OneBank for so long.
Thanks! :D
Tell your friends and guildies. ;)
after update o_O how fix it?.
Uhm.... that's interesting.
Can you enable lua errors under settings and give me a any output it's showing?
I'm getting the same error.
Don't know if this is what ya need but it is the only error I've got that relates to onebag3.
Date: 2014-10-18 23:57:36
ID: 6
Error occured in: Global
Count: 1
Message: ...ace\AddOns\OneBank3\libs\OneCore-1.0\OneCore-1.0.lua line 360:
attempt to index field 'bags' (a nil value)
Debug:
...ace\AddOns\OneBank3\libs\OneCore-1.0\OneCore-1.0.lua:360: ColorManySlotBorders()
...ace\AddOns\OneBank3\libs\OneCore-1.0\OneCore-1.0.lua:372: HighlightBagSlots()
OneBag3\OneBag3.lua:264:
OneBag3\OneBag3.lua:263
Locals:
self = <table> {
NumberActivePluginsOfType = <function> defined @Interface\AddOns\OneBank3\libs\OneCore-1.0\OnePlugin-1.0.lua:220
defaults = <table> {
}
bagIndexes = <table> {
}
leftBorder = 8
CreateBagButton = <function> defined @Interface\AddOns\OneBag3\OneBag3.lua:293
CreateSideBar = <function> defined @Interface\AddOns\OneBank3\libs\OneCore-1.0\OneFrame-1.0.lua:194
modules = <table> {
}
baseName = "OneBag3"
HighlightBagSlots = <function> defined @Interface\AddOns\OneBank3\libs\OneCore-1.0\OneCore-1.0.lua:371
SecureHook = <function> defined @Interface\AddOns\Bartender4\libs\AceHook-3.0\AceHook-3.0.lua:336
stratas = <table> {
}
RawHookScript = <function> defined @Interface\AddOns\Bartender4\libs\AceHook-3.0\AceHook-3.0.lua:395
Printf = <function> defined @Interface\AddOns\AckisRecipeList\libs\AceConsole-3.0\AceConsole-3.0.lua:69
bottomBorder = 30
SetDefaultModulePrototype = <function> defined @Interface\AddOns\AckisRecipeList\libs\AceAddon-3.0\AceAddon-3.0.lua:440
__pluginTypes = <table> {
}
Show = <function> defined @Interface\AddOns\OneBag3\OneBag3.lua:220
defaultModuleState = true
UpdateBag = <function> defined @Interface\AddOns\OneBank3\libs\OneCore-1.0\OneCore-1.0.lua:227
__pluginsByType = <table> {
}
DisableModule = <function> defined @Interface\AddOns\AckisRecipeList\libs\AceAddon-3.0\AceAddon-3.0.lua:381
ApplySearchFilter = <function> defined @Interface\AddOns\OneBank3\libs\OneCore-1.0\OneCore-1.0.lua:386
searchTerm = ""
IsBagOpen = <function> defined @Interface\AddOns\OneBag3\OneBag3.lua:196
InitializePluginSystem = <function> defined @Interface\AddOns\OneBank3\libs\OneCore-1.0\OneCore-1.0.lua:410
UnhighlightBagSlots = <function> defined @Interface\AddOns\OneBank3\libs\OneCore-1.0\OneCore-1.0.lua:377
isReopened = false
isOpened = true
IsHooked = <function> defined @Interface\AddOns\Bartender4\libs\AceHook-3.0\AceHook-3.0.lua:493
defaultSortPlugin = <table> {
}
configs = <table> {
}
db = <table> {
}
sidebar = OneBagSideFrame {
}
SendMessage = <function> defined @Interface\AddOns\LibSharedMedia-3.0\CallbackHandler-1.0\CallbackHandler-1.0.lua:87
UnhookAll = <function> defined @Interface\AddOns\Bartender4\libs\AceHook-3.0\AceHook-3.0.lua:477
SetEnabledState = <function> defined @Interface\AddOns\AckisRecipeList\libs\AceAddon-3.0\AceAddon-3.0.lua:455
Hook = <function> defined @Interface\AddOns\Bartender4\libs\AceHook-3.0\AceHook-3.0.lua:274
enabledState = true
IteratePluginTypes = <function> defined @Interface\AddOns\OneBank3\libs\OneCore-1.0\OnePlugin-1.0.lua:185
rowHeight = 39
OnEnable = <function> defined @Interface\AddOns\OneBag3\OneBag3.lua:113
SortBags = <function> defined @Interface\AddOns\OneBag3\OneBag3.lua:243
OnSearch = <function> defined @Interface\AddOns\OneBank3\libs\OneCore-1.0\OneCore-1.0.lua:381
CloseBag = <function> defined @Interface\AddOns\OneBag3\OneBag3.lua:232
IterateModules = <function> defined @Interface\AddOns\AckisRecipeList\libs\AceAddon-3.0\AceAddon-3.0.lua:468
CreateSlotFrame = <function> defined @Interface\AddOns\OneBank3\libs\OneCore-1.0\OneCore-1.0.lua:123
RawHook = <function> defined @Interface\AddOns\Bartender4\libs\AceHook-3.0\AceHook-3.0.lua:313
RegisterMessage = <function> defined @Interface\AddOns\LibSharedMedia-3.0\CallbackHandler-1.0\CallbackHandler-1.0.lua:118
frame = OneBagFrame {
}
SecureHookScript = <function> defined @Interface\AddOns\Bartender4\libs\AceHook-3.0\AceHook-3.0.lua:410
OrganizeFrame = <function> defined @Interface\AddOns\OneBank3\libs\OneCore-1.0\OneCore-1.0.lua:182
LoadCustomConfig = <function> defined @Interface\AddOns\OneBag3\OneBag3.lua:152
CreateBackpackButton = <function> defined @Interface\AddOns\OneBag3\OneBag3.lua:251
rightBorder = 5
OnInitialize = <function> defined @Interface\AddOns\OneBag3\OneBag3.lua:9
Enable = <function> defined @Interface\AddOns\AckisRecipeList\libs\AceAddon-3.0\AceAddon-3.0.lua:325
NewModule = <function> defined @Interface\AddOns\AckisRecipeList\libs\AceAddon-3.0\AceAddon-3.0.lua:266
GetArgs = <function> defined @Interface\AddOns\AckisRecipeList\libs\AceCo
AddOns:
Swatter, v4.4.1 (<%codename%>)
AckisRecipeList, v3.0.8
ACP, v3.4.14
Altoholic, v5.4.008
AtlasLoot, vv7.07.03
AtlasLootCataclysm, vv7.07.03
AtlasLootClassicWoW, vv7.07.03
AtlasLootLoader, vv7.07.03
AtlasLootMistsofPandaria, vv7.07.03
AutoRepair, v
Babylonian, v5.1.DEV.332(/embedded)
BagSlots, v60000-1
Bartender4, v4.6.2
Collectinator, v2.0.11-40-gc774f96
Configator, v5.1.DEV.359(/embedded)
DataStore, v6.0.001
DataStoreAchievements, v6.0.001
DataStoreAgenda, v6.0.001
DataStoreAuctions, v6.0.001
DataStoreCharacters, v6.0.001
DataStoreContainers, v6.0.001
DataStoreCrafts, v6.0.001
DataStoreCurrencies, v6.0.001
DataStoreInventory, v6.0.001
DataStoreMails, v6.0.001
DataStorePets, v6.0.001
DataStoreQuests, v6.0.001
DataStoreReputations, v6.0.001
DataStoreSpells, v6.0.001
DataStoreStats, v6.0.001
DataStoreTalents, v6.0.001
DBMCore, v
DBMDefaultSkin, v
DBMStatusBarTimers, v
DKIDiseases, v
DKIRunes, v
EasyMail, v
Gatherer, v4.4.1
LibMounts10, v1.0
LibRock10, v
LibSharedMedia30, v3.0-89
MogIt, vv3.3.3
Mounted, vv2.2.11-13-ge547aac
OneBag3, vv3.8.1
OneBank3, vr89
oRA3, v
Pawn, v1.9.2
Quartz, v3.2.1-1-gdbbf897
ReagentHelper2, v2.1
SellJunk, vr147
SexyMap, v2.4.16
TimelessAnswers, vv1.2.3
WoWDBProfiler, v
BlizRuntimeLib_enUS v6.0.2.60000 <none>
(ck=550)
I'm not how the hell that happened, but I'm packaging a fix for it now.
after rlog - appeared frame. it seems that just does not appear content / cell bags
Anyway we could do away with the sort button? I have screwed my bags over several times today byt hitting it by mistake.
I can look at making that an option. I'm also going to consider trying to make a better sorting system in the future, but this one was easy to integrate in with.
I say make it an option. People who dont like it can unclick it. And the people that do like it can click it on.
Is this possible w/o a lot of fuss and muss?
Yeah can definately add that option in soon.
I've added the close button back by popular demand. :)
I can look at adding profile copy.
Thanks so much for looking into this :) I have 12 characters and it would be great not to need to set up each one.
I just discovered OneBag today and so far I'm liking it better than any bag addon I've used.
I would like to add my vote for the return of the X button.
Also is there any chance of getting Profiles or copying settings across all characters?
+1 vote add X
terribly uncomfortable without it
Thanks! :D
Um, am I retarded or did there use to be an X button to close the bag display at the top right? It's not there anymore and I keep subconcsiously clicking on the new cogwheel button. :\
I removed it to make more room for other features, but if people keep asking for it (which I've seen a few) I'll be adding it back.
Thank you sweet merciful addon author! :D