Addon Information
Download Latest Version.
To add favorites please register for a free account. If you already have one you need to login. How do I install this? (FAQ)
Author:
Version:
1.3
Date:
07-18-2009 09:54 PM
Size:
31.91 Kb
Downloads:
44,237
Favorites:
349
MD5:
Pictures
Click to enlarge
cargBags_Aurora
Click to enlarge
cargBags_Nivaya
Click to enlarge
cargBags_Pernobilis
cargBags   Popular! (More than 5000 hits)
cargBags is a lightweight and modular bag framework. It is designed that you can completely focus on how your items are displayed and sorted rather than caring about getting item info, updating your bags or handle interaction with items. You can define how many virtual bags you'd like to have and what items should go into it.

The core addon only moves and sorts information between the handler and the layout - it's up to your layout how to present the items to the user!

So, to see something going on, you need a layout! See below or on the "Optional Files"-tab for additonal resources.


Filtering
cargBags can react on special rules or filters to check if an item goes into that bag, but it's completely optional. So there's the possibility to make a complete all-in-one bag or separate small bags which hide gray items or show only keys, for example.

Modular
There's the possibility to add/modify parts of cargBags on all sides. You could write a custom layout - or just a small different money display which other layouts can easily spawn in their code. Or just hook into the backend, the item data, and manipulate it, e.g. writing a handler which displays the contents of some sort of database rather than your inventory.

Lightweight
cargBags tries to be efficient in both terms of CPU- and memory usage and there are thoughts on optimization before almost every update.

But aren't item filters in conflict with the term 'lightweight'?
Well, it depends on which features you'd like to have, but the default configuration is about only 50-60 kb including the layout. The CPU-usage is of course a bit higher because of the item filters, but it tries to only do the work which is needed to be done.
Item buttons which are not used will be recycled for later use, so there are no extra frames generated which are not needed.


Default features
  • item filters
  • modular: custom layouts, plugins or handlers
  • lightweight: strip out features you don't need
  • comes with money display, space indicator and bag button bar


Additional resources and help
Planned features for 2.0
  • stack compression
  • include GetInventoryItemCount()
  • guild bank support
  • additional default plugins (e.g. search)

cargBags is licensed under the GPL 3.

And of course, please drop a comment for bugs. For feature requests, help or discussion which do not relate to the core, please use the mentioned thread above!
  Change Log - cargBags
Changes to the core prior to version 1.0 are located in the changelog.txt.
In most cases the version tagging follows the scheme rewrite.feature.bugfix.

cargBags (core)
1.3
* licensed as GPL 3
* fixed background texture of empty bag buttons
* hovering over a bag button can now fade different bag objects
* fixed tooltip-parsing not working correctly
* and now the usual developer-stuff:

- BagBar new property: BagBar.BackgroundTexture - texture path if no icon was found
- new function: object:Fire(callback, ...) - fires a callback with the defined arguments
- new function cargBags.C2I(id) - translates a ContainerID into an InventoryID
- new function cargBags.I2C(id) - translates an InventoryID into a ContainerID
- function changed: cargBags.ParseBags(bagString or bagID or table) - now returns a table every time
- new property: cargBags.BagStrings[] - holds tables of the bagID's for the different bagStrings
- :PreCheckFilters() now also fires on :GetItemInfo()

1.2
* first tooltip-scanning code, if you have wishes for more parsed infos than bindOn,
* please let me know =)

- updated for 3.2
- fixed item.id not working properly
- new item data: item.bindOn - returns "equip", "pickup", "account", "quest", "use" or nil
- 3.2 only: new item data: item.stats - returns a table of all stats of the item (see GetItemStats() for info)
- 3.2 only: new item data: item.sellValue - returns the sellValue in copper of an item
- new plugin: DataBroker - displays a databroker-object, the addon cargoShip is needed for that

1.1 r431
* completely rewritten item-data fetching (should go faster now)
* handlers before version 1.1 are not compatible

- new item data: item.id - returns the item id extracted from the link
- new item data: item.bagType - returns the type of the item's bag
- you can now add your own data to the item-table by adding a function in cargBags.ItemKeys["keyName"]
- new function: object:GetItemInfo(bagID, slotID) - returns the item table for the specified slot
- debug-mode included, see top of core.lua for details

1.0.8 r426
- new property: object.PositionEveryTime - set to true to call UpdateButtonPositions every update
- new pipe function: handler.GetContainerItemLink(bagID, slotID)
- new pipe function: handler.GetContainerItemInfo(bagID, slotID)

1.0.7 r424
- fixed keyring not initializing
- rewritten iterator-function, you can now supplement a table-sort-function in cargBags:IterateBags()
- object's buttons are now available as table-keys in object.Buttons
- fixed a typo when using the bagstring "backpack+bags"
- plugins can now be spawned outside of objects by using cargBags.SpawnPlugin(...)

1.0.6 r413
- fixed the button.bagID-errors

1.0.5 r410
- fixed problem with hidden bags
- fixed plugins not updating on login
- lots of comments in the files added
- fixed bagType not being stored in cargBags.Bags[bagID]

1.0.4 r402
- pass arguments to Update-callbacks
- timed events to reduce updating
- new callback function: cargBags:PreCheckFilters(item, updateType)

1.0.3 r398
- silent mode for setting active handler and style (set #arg2 to 'true'), returns true on success
- update bags only after init
- new callback function: object:PreUpdateBags() - fired before an object is updated
- new callback function: object:PostUpdateBags() - fired after an object is updated

1.0.2 r387
- space indicator can now fetch information of defined bags (like BagBar)
- new function cargBags:ParseBags(bags) - returns id's of bag-strings like "bags" or "bank"
- some changes on showing/hiding buttons (hopefully fixes the appearing of unused buttons)
- style-arguments changed: style(settings, self, name, ...)

1.0.1 r383
* updated .toc for patch 3.1
* removed property: cargBags.FreezeButtons - don't think it's really needed
* fixed cooldowns not updating on item move
* new callback function: object:PostCreateBag(bag, bagID) - fired after a bag was created in the object

1.0
* COMPLETE REWRITE
* your old layout won't work with this new version without major changes!
* be aware that most previous callback functions for the layout are removed / modified due to the changes
- cargBags now supports filters for item-based placing!
- unused buttons are now recycled to save memory and cpu time
- item quality glow removed, it is now handled by the layout
- additional elements are now spawned with the new plugin system
- see object:RegisterPlugin(name, func)
- and object:SpawnPlugin(name, ...)
- new callback function: object: object:UpdateButton(button, item)
- new callback function: object: object:UpdateButtonLock(button, item)
- new callback function: object: object:UpdateButtonCooldown(button, item)
  Optional Files - cargBags
File Name
Version
Size
Author
Date
Type
r19
12kB
12-11-2009 09:41 AM
Addon
1.1
6kB
07-19-2009 11:43 AM
Addon
1.3
4kB
07-18-2009 09:54 PM
Addon
r29
13kB
06-25-2009 05:59 PM
Addon
2.0
7kB
06-01-2009 07:12 AM
Addon
  Archived Versions - cargBags
File Name
Version
Size
Author
Date
1.2
16kB
Cargor
07-02-2009 11:31 AM
1.1
14kB
Cargor
06-25-2009 01:27 PM
1.0.8
14kB
Cargor
06-01-2009 07:28 AM
1.0.7
14kB
Cargor
06-01-2009 07:06 AM
  Comments - cargBags
Post A Reply Comment Options
Old 02-07-2010, 04:23 PM  
Rammoth
A Kobold Labourer
 
Rammoth's Avatar

Forum posts: 0
File comments: 103
Uploads: 0
Well maybe we can work together on the project. If you send me a message with your contacts outside of this site, like a chat program, so it's easier to stay in touch. I'll show you some mock-ups I have.

Quote:
Originally posted by Cargor
That would be great! I'm always looking for new ideas for bag layouts.
I'm rather bad at graphics - I'm trying, but it seems I don't have enough patience to get talented in there
Seems like there are two kinds of people: Designers and Coders. I never met one who can do both things together very good

I'm currently thinking about a completely new approach to the inventory frame, to solve some drawbacks I noticed in both all-in-one- and categorized bag frames. Here's a concept and my current alpha-quality implementation. The idea is that each and every item icon is scalable and movable, and you can drop them into different bags to your own liking. You could select multiple ones at once and apply an action to all of them.
Imagine, you are questing and already sorting the new items you gain: Trash would be scaled down in some small place - and if you're back in town, you would select all icons at once and sell them altogether to the merchant.

Other features would be:
- Aggregates: Spawnable buttons which can pull specified types of items around them, like magnets. Should help in filtering and searching.
- Layouts: Select a group of buttons and then order them - in a grid, radial etc
- Skins: different skins for bags / item buttons. Maybe (optional) ButtonFacade-integration.
__________________
Rammoth is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 02-06-2010, 09:16 AM  
Cargor
A Flamescale Wyrmkin
 
Cargor's Avatar
Interface Author - Click to view interfaces

Forum posts: 142
File comments: 264
Uploads: 17
That would be great! I'm always looking for new ideas for bag layouts.
I'm rather bad at graphics - I'm trying, but it seems I don't have enough patience to get talented in there
Seems like there are two kinds of people: Designers and Coders. I never met one who can do both things together very good

I'm currently thinking about a completely new approach to the inventory frame, to solve some drawbacks I noticed in both all-in-one- and categorized bag frames. Here's a concept and my current alpha-quality implementation. The idea is that each and every item icon is scalable and movable, and you can drop them into different bags to your own liking. You could select multiple ones at once and apply an action to all of them.
Imagine, you are questing and already sorting the new items you gain: Trash would be scaled down in some small place - and if you're back in town, you would select all icons at once and sell them altogether to the merchant.

Other features would be:
- Aggregates: Spawnable buttons which can pull specified types of items around them, like magnets. Should help in filtering and searching.
- Layouts: Select a group of buttons and then order them - in a grid, radial etc
- Skins: different skins for bags / item buttons. Maybe (optional) ButtonFacade-integration.
__________________
« Homepage | Git »

Oh hai!

Last edited by Cargor : 02-06-2010 at 09:20 AM.
Cargor is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 02-06-2010, 01:01 AM  
Rammoth
A Kobold Labourer
 
Rammoth's Avatar

Forum posts: 0
File comments: 103
Uploads: 0
You're welcome Cargor. I'm always up for helping out. I'm pretty good with graphics too, and I noticed that you are trying to build a theme list, am I getting this right? Like for the OpenConfig in game?

If so, I'd love to help with making more themes, but I cannot code anything for the life of me. I can make some mockups of ideas I have for bag themes, and send them to you, and you can just make them into working themes if you want? I just enjoy doing graphics, it's fun to me.

Quote:
Originally posted by Cargor
Wow, thanks for your investigation. That makes a lot of sense!

I'm already planning to delay all the login-setup until you open the bags for the first time (did this with some experimental, simplified non-modifiable version of cargBags). Well, but this requires an update of the layouts and I don't think that _Nivaya is supported at the moment.

But at the moment, my WoW goes on crashing my linux system on login, so I cannot really do anything at the moment :O

------

By the way, I'm currently thinking to change the overall design of cargBags 2.0 into another direction. I want to push it more to the 'mainstream' of users by incorporating all the existing layouts into cargBags and providing an intelligent ingame-config.

At the moment, there is the problem that there are too less layouts/modules from other people to keep an open API justified. And this kind of API really slows things down.
You can already see it in the Nivaya-sorting algorithm which really hacked into the layout with the API provided by cargBags. It would make much more sense to incorporate this into the core.

This also makes maintaining cB a lot easier. You can see the problem now: _Nivaya is the most popular layout of cB, but the author seems to be inactive. So it blocks future progression of cB, because I need to provide backwards compatibility.

If all goes well, cB should still be modular, but there is more emphasis on the core than on the layout. I'm trying to reduce CPU usage with this by spending more on memory usage.
In addition, I may release a very simple one-bag addon for the _Pernobilis users. But no worries, I still want to stay loyal to the core features of cargBags: Its flexibility and 'lightweightness'.
__________________
Rammoth is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 02-04-2010, 03:41 AM  
Cargor
A Flamescale Wyrmkin
 
Cargor's Avatar
Interface Author - Click to view interfaces

Forum posts: 142
File comments: 264
Uploads: 17
Nope. As far as I know, it's a limitation on Blizzard's side. You would have to do it the same without inventory addons.
__________________
« Homepage | Git »

Oh hai!
Cargor is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 02-03-2010, 05:34 PM  
GofG
A Kobold Labourer

Forum posts: 0
File comments: 1
Uploads: 0
Hey, this is probably a dumb question but I can't for the life of me figure it out.

I got the onyxia backpack last night and realised that I had no idea how to equip it. Right clicking, "no slot available for this item." Showing bags and dragging it, "cannot put non-empty container in container". I eventually just dragged all the items in my inventory into the "empty" slot, which put them all into the lowest slot available (starting with the top of my backpack, etc), and that worked such that I ended up with the last bag being empty, but there really aught to be a better way to do this.

is there?
GofG is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 01-30-2010, 12:16 PM  
Cargor
A Flamescale Wyrmkin
 
Cargor's Avatar
Interface Author - Click to view interfaces

Forum posts: 142
File comments: 264
Uploads: 17
Wow, thanks for your investigation. That makes a lot of sense!

I'm already planning to delay all the login-setup until you open the bags for the first time (did this with some experimental, simplified non-modifiable version of cargBags). Well, but this requires an update of the layouts and I don't think that _Nivaya is supported at the moment.

But at the moment, my WoW goes on crashing my linux system on login, so I cannot really do anything at the moment :O

------

By the way, I'm currently thinking to change the overall design of cargBags 2.0 into another direction. I want to push it more to the 'mainstream' of users by incorporating all the existing layouts into cargBags and providing an intelligent ingame-config.

At the moment, there is the problem that there are too less layouts/modules from other people to keep an open API justified. And this kind of API really slows things down.
You can already see it in the Nivaya-sorting algorithm which really hacked into the layout with the API provided by cargBags. It would make much more sense to incorporate this into the core.

This also makes maintaining cB a lot easier. You can see the problem now: _Nivaya is the most popular layout of cB, but the author seems to be inactive. So it blocks future progression of cB, because I need to provide backwards compatibility.

If all goes well, cB should still be modular, but there is more emphasis on the core than on the layout. I'm trying to reduce CPU usage with this by spending more on memory usage.
In addition, I may release a very simple one-bag addon for the _Pernobilis users. But no worries, I still want to stay loyal to the core features of cargBags: Its flexibility and 'lightweightness'.
__________________
« Homepage | Git »

Oh hai!
Cargor is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 01-30-2010, 11:33 AM  
Vaad
A Kobold Labourer

Forum posts: 0
File comments: 1
Uploads: 0
Hello,

First, i'd like to say i've been using cargbags and nivaya's layout for some time and they're really great
But i've been having the disconnect problem lately, so i've done a little investigating.

A few things i discovered about this problem:
- when wow gets stuck during login, you just have to wait to get disconnected or you kill wow (using the task manager).
- with cb_nivaya, it occurs only if you have sortbags enabled (no problems if you enable sort bank only).
- the problem can easily be reproduced by erasing the Cache directory in wow (cb_nivaya)
- seems to occur everytime after a new patch (could be related to the cache being partially invalidated after a patch).
- occurs when starting in a crowded/laggy area (dalaran), no problem in an empty area.


Sadly, i couldn't reproduce the problem using aurora or gnomed (even erasing the cache and saved variables).

My long-shot guess is :
- cargbag's layout request infos about every objects at player login.
- wow's cache does not work very well.
- if the server takes too much time to give objects infos (because the cache didn't give it), you are in a crowded area (and worse if your connection is slow) you get stuck.
- cb_niv's sorting algorithm request even more infos than other layouts to sort the objects. I'm suspecting that when the server takes too much time to give object's infos, nivaya's recursive algorithm never ends and you get either a stack overflow or a disconnect.

I tried removing the "player_login" event in cargbags core but i still get stuck after erasing the cache.
Anyway, i think delaying most of the process until the bags are displayed for the first time could help.

I hope my little investigation will help

Last edited by Vaad : 01-30-2010 at 11:41 AM.
Vaad is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 01-15-2010, 02:11 PM  
Rammoth
A Kobold Labourer
 
Rammoth's Avatar

Forum posts: 0
File comments: 103
Uploads: 0
Lightbulb Mystery Solved.

Alright, I ruled out everything I can think of now, in trying to help you figure out what's wrong here, and I've come to the conclusion that a certain addon or addons that a user is using, combined with cargBags is causing a conflict with the WoW client .EXE, and the only reason it is doing that is because Blizzard changed how addons work 'together' so in order to fix the problem, those users will have to figure out which addon or addons that are in the addons folder with cargBags, that is conflicting with the client file exe.

The original files that you had created that come with cargBags, combined with addons that you didn't create at all, is what is in question right now. Hopefully what I'm saying is making sense. I did about the best I could with figuring this out. This is what I came to the conclusion of, and I am pretty sure I'm right.

I honestly cannot see any other problem. That is apparent, and is exactly why you or I are not having this same problem. So you are actually correct here the problem does rely heavily on Blizzard's side, and actually WoW Addons can crash the game client or introduce a disconnect now, because of what Blizzard introduced in Patch 3.3.0. I did this research, and had figured it out.

Quote:
Originally posted by Cargor Normally, WoW AddOns cannot crash the game client or introduce a disconnect, because the Lua environment is normally very fail-safe.

Of course I am trying to trace down the problem, but I suspect that it relies very heavily on Blizz' side.
__________________

Last edited by Rammoth : 01-22-2010 at 06:58 AM.
Rammoth is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 01-15-2010, 10:39 AM  
Cargor
A Flamescale Wyrmkin
 
Cargor's Avatar
Interface Author - Click to view interfaces

Forum posts: 142
File comments: 264
Uploads: 17
Sorry for this response, but I have to admit that I do not have any clue at the moment, why this is happening. It seems to be a problem of the cargBags core which only affects some people, not all - and WoW does not crash on my PC, so I cannot really debug the problem.

Normally, WoW AddOns cannot crash the game client or introduce a disconnect, because the Lua environment is normally very fail-safe. My guess is that Blizz introduced some bugs in patch 3.3 in the Lua-environment which cause these rather random crashes in cargBags. I spoke to some other authors and a few of them have the same problems with their addons (not necessarily inventory-addons), but do not have any solutions. Someone reported that the cache-files could cause problems, but ... umm ... I really don't know

Of course I am trying to trace down the problem, but I suspect that it relies very heavily on Blizz' side.
__________________
« Homepage | Git »

Oh hai!
Cargor is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 01-13-2010, 06:35 AM  
Aquillian
A Kobold Labourer
 
Aquillian's Avatar

Forum posts: 0
File comments: 8
Uploads: 0
I've had the same crashing issue as someone else, and narrowed it down to this mod, and the Aurora configuration. =( This is by far my favorite bag mod, ever, so if I can help in any way by providing more information please let me know.
Aquillian is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 01-10-2010, 03:05 PM  
Rammoth
A Kobold Labourer
 
Rammoth's Avatar

Forum posts: 0
File comments: 103
Uploads: 0
I just wanna note that there is no problems with Aurora. So you can count that one out. As long as everything is in order, and done correctly when installing the plugin for cargBags, then it'll work good, when it comes to Aurora. Not sure about the rest, as I don't like them enough to try them.
__________________
Rammoth is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 12-29-2009, 07:59 PM  
Cargor
A Flamescale Wyrmkin
 
Cargor's Avatar
Interface Author - Click to view interfaces

Forum posts: 142
File comments: 264
Uploads: 17
Okay, thanks for all your comments. I'm going to make a few tests right now, but I don't really have any idea how these crashes could be caused.

If I can't reproduce them, I would like to know if these are happening with _Gnomed or other layouts too, or if it is just a _Nivaya problem.
My current guess is that it is related to _Nivaya, especially since some users mentioned a stack overflow error in its comments section. Stack overflows often take up a lot of time and maybe this forces the client to think that you were disconnected ...
__________________
« Homepage | Git »

Oh hai!

Last edited by Cargor : 12-29-2009 at 08:05 PM.
Cargor is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 12-29-2009, 02:54 AM  
Shobs
A Kobold Labourer

Forum posts: 0
File comments: 1
Uploads: 0
Quote:
Originally posted by Berb
I'm getting this sometimes also (using _Nivaya and haven't tried any others). WoW will sit at the load screen indefinitely until I end the process. I can then diable cargbags and log in just fine, log out, re-enable, and log in fine again. I'll test it a bit more tomorrow, but this only seems to happen after I delete the "Cache" folder (C:\Program Files\World of Warcraft\Cache).
I re-did my UI yesterday because I was getting random crash's, Cargbags and Cargbags_Nivaya were one of the first addons that I installed after installing Bati's minimalistic compilation. After installing them I still had to do multiple restarts/relaods while installing and configuring extra addons, I never had an issue at this point. Log back in this morning and I get client crashes, I disabled all the out of date addons, error went away and was able to log my toons. After stumbling here for an update, I re-enabled all my addons except Cargbags and _Nivaya, and I am back in the game. So from my limited testing, the issue seems to come from Cargbags or _Nivaya. I hope this helps, I love your bag mode, I really hope I'll be able to use it again in the near future. Cheers!
Shobs is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 12-27-2009, 08:08 AM  
Berb
A Murloc Raider
 
Berb's Avatar

Forum posts: 4
File comments: 44
Uploads: 0
Quote:
Originally posted by Jesamyn
I'm actually getting client crashes more often than not when I try to zone, with both _Gnomed and _Nivaya layouts. Disabling cargbags resolves the crash, though I know a mod should not be able to cause a client crash (unless something is wrong in the client code). Wiping _Nivaya's sv's didn't fix it. I'm reporting it here since I'm having the issue with two different layouts. I'm not getting a lua error, just a freeze and then client ctd.
I'm getting this sometimes also (using _Nivaya and haven't tried any others). WoW will sit at the load screen indefinitely until I end the process. I can then diable cargbags and log in just fine, log out, re-enable, and log in fine again. I'll test it a bit more tomorrow, but this only seems to happen after I delete the "Cache" folder (C:\Program Files\World of Warcraft\Cache).
Berb is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 12-20-2009, 10:42 PM  
Jesamyn
<This Space for Rent>
 
Jesamyn's Avatar
Premium Member

Forum posts: 140
File comments: 84
Uploads: 0
I no longer think this is from Cargbags, although disabling it was fixing the issue last night. So please don't waste too much time looking into it, since I think it's just plain a caching or memory issue on my machine now.
__________________

I'm not an idiot. I'm just harmlessly psychotic.

Last edited by Jesamyn : 12-20-2009 at 10:53 PM.
Jesamyn is online now Report comment to moderator   Edit/Delete Message Reply With Quote
Post A Reply



Category Jump:

Support AddOn Development!

You have just downloaded by the author . If you like this AddOn why not consider supporting the author? This author has set up a donation account. Donations ensure that authors can continue to develop useful tools for everyone.




The Network:
EQInterface | EQ2Interface | LoTROInterface | MMOInterface | War.MMOUI | WoWInterface | VGInterface | Allakhazam | Thottbot | Wowhead | Zam


©2009 MMOUI / ZAM Network
vBulletin - Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.