Quantcast
Download
(911 Kb)
Download
Updated: 10/12/18 01:27 PM
Pictures
File Info
Compatibility:
Murkmire (4.2)
Wolfhunter (4.1)
Summerset (4.0)
Updated:10/12/18 01:27 PM
Created:09/11/18 09:42 AM
Monthly downloads:205
Total downloads:337
Favorites:8
MD5:
4.2
Rulebased Inventory
Version: 1.2.2
by: TaxTalis [More]
YOU ARE USING THIS ADDON AT YOUR OWN RISK!
I will not hold responsible for any damage or inconvenience this addon might cause for any reason.
This said, I have tested this addon on my main account for quite some time and try to do everything I can to make your experience with this addon as good and as safe as possible.

The main documentation is located at the addon's folder, there are all possible terms and functions for rules noted and it is quite impossible to go without it.
I admit, this is not an addon for everyone. There is no interface defining the rules for you by clicking buttons, you have to insert them by text.
A wrongly defined (but valid) rule may cause severe damage when fencing, destroying or deconstructing as the items will never return after such an action was taken.

Needed libraries
  • LibStub
  • LibAsync
  • LibAddonMenu-2.0
  • LibCustomMenu
Supported addons
  • FCOIS
  • CraftStore
  • Master Merchant
  • Tamriel Trade Centre


About Rulebased Inventory
After installing it, it does nothing. It’s simple as that.
You have to define rules for different tasks which then are executed automatically.
Tasks to define rules for are:
  • Move from Backpack to Bank (starts when opening the Bank UI)
  • Move from Bank to Backpack (starts when opening the Bank UI)
  • Sell at Store and Fence (starts when opening the Store or Fence UI)
  • Launder (starts when opening the Fence UI)
  • Junk (is checked continuously (“on update”) for each item on the backpack)
  • Destroy (is checked continuously (“on update”) for each item on the backpack)
  • Deconstruct (starts when opening the deconstruct tab of an Crafting Station UI)
  • Notification (is checked continuously (“on update”) for each new item)
Currencies and Homebank are not supported. Please see features in development.



Key Features
  • take actions on specific amounts of an item, not only on a whole stack (e.g. keep only 100 lockpicks in inventory)
  • check if your current character is the first one of a defined list in need of an item for research or a recipe to learn (so you can "hand down" a recipe if your main crafter doesn't need it to your secondary and further) (CraftStore needed)
  • save profiles and load them on multiple characters
  • a notification will include pricing from MM and TTC, count of vouchers for masterwrits and the count you have in backpack, bank and craftbag
  • ...


Features and fixes in development
  • event-based deconstruct
  • event-based refine
  • AutoCategory support
  • Homebank
  • Guildbank
Example rules
Bag-To-Bank (Exclude Bank-To-Bag is on)
Lua Code:
  1. itemnamematch("Lockpick") or (soulgem)
  2. or (survey)
  3. or (masterwrit)
  4. or (intricate)
  5. or (recipe)
Transfer all lockpicks, soulgems, surveys, masterwrits, recipes and items which are intricate to the bank.
Except items which would be transferred from bank to backpack!

Bank-To-Bag (Exclude off, otherwise rules are blocking themselves)
lua Code:
  1. ((itemnamematch("lockpick") or ((soulgem) and (filled) and not itemnamematch("Crown"))) and countbackpack < 100)
  2. or ((masterwrit) and itemnamematch("blacksmithing","clothier","woodworking"))
  3. or ((intricate) and cp >= 150)
  4. or (learnlist("Seika Kitamura", "Caelean", "Gilvalar Merohin") and ((recipe_drink) or (recipe_food)))
  5. or (learnlist("Caelean", "Seika Kitamura", "Gilvalar Merohin") and not ((recipe_drink) or (recipe_food)))
  6. or (item_enchanting)
  7. or ((item_jewelry) and not fcoisismarked)
  8. or (treasuremap)
This will transfer lockpicks and soulgems to the backpack until there are 100 of each or no more available in bank. Furthermore Blacksmithing, Clothier and Woodworking Masterwrits, intricate items with a minimal cp of 150, recipes this character is first of the list needing it (here: different lists for food/drink and other recipes), all glyphs, not by FCOIS marked jewelry and at last all treasurmaps will be transferred. All these items will be excluded from the previous task as the exclude-switch there is active. This only means for example soulgems and lockpicks ABOVE 100 in backpack will be transferred to bank.

Junk
Lua Code:
  1. (trash)
  2. or (treasure)
  3. or (ornate)
  4. or ((potion) and not ((crafted) or itemnamematch("crown", "gold")) and cp < 150)
  5. or (junk)
  6. or (((drink) or (food)) and not ((crafted) or itemnamematch("crown", "gold")))
This will junk any treasure, ornate items, potions (includes poisons), drinks and food which are not crafted, do not have "crown" or "gold" in their name and are below cp 150. Further all items of the lowest quality (like rotten food) are junked.

Destroy
Lua Code:
  1. (stolen) and (tool)

Will destroy all stolen lockpicks (and other stolen items of type tool, if there are any)
Needed libraries
  • LibStub
  • LibAsync
  • LibAddonMenu-2.0
  • LibCustomMenu

Cumulative change log for version 1.2.2
  • added filters for events to not listen to unnecessary ones
  • rewrite of action- and event-queue
  • rewrite of action execution
  • rewrite of bagCache and generation of actions from task
  • rewrites for integration of LibAsync to reduce runtime per frame for less lag
  • API bump for Murkmire

Cumulative change log for version 0.10.1
  • dropped library because of instability: LibLoadedAddons
  • functions fcoismarker and fcoismarkermatch now support the custom names for fcois markers
  • safe rule switch for deconstruct now has the tooltip it deserves
  • events (junk/notification/destroy) now only are accepted when items were added to the bag to reduce lag
  • fixed notification to try to notify about already again empty slots (like loot containers directly extracted by other addons)
  • optimized events (junk/notification/destroy) to only create a cache of the whole bag if necessary to further reduce lag

Cumulative change log for version 0.8.0
  • tasks are only executed if a rule was defined
  • output now shows intricate and ornate symbols
  • added itemdata: fcoisismarked (replaces fcoislocked)
  • added itemdata: fcoismarker
  • added function: fcoismarker
  • added function: fcoismarkermatch

Cumulative change log for version 0.6.1
  • fixed variables leaking into global namespace (thanks Votan!)
  • added German translation
  • added itemdata: tags
  • added function: itemtag
  • added function: itemtagmatch
  • added itemdata: reagenttraits
  • added function: reagenttrait
  • added function: reagenttraitmatch
  • minimum delay and timeout lowered

-Version 0.4.2 was initial release-
Archived Files (4)
File Name
Version
Size
Author
Date
0.10.1
910kB
TaxTalis
09/26/18 12:27 PM
0.8.0
911kB
TaxTalis
09/16/18 01:58 PM
0.6.1
909kB
TaxTalis
09/15/18 07:08 AM
0.4.2
903kB
TaxTalis
09/11/18 10:06 AM


Post A Reply Comment Options
Unread 10/19/18, 03:12 AM  
TaxTalis
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 39
Uploads: 1
I don‘t think this is a feature fitting the purpose of RbI.
This should be implemented in a specific fishing addon, don’t you think?

Originally Posted by SlippyCheeze
Wishlist: fillet fish on "pickup", or if that isn't possible, on opening the inventory.
Last edited by TaxTalis : 10/19/18 at 03:12 AM.
Report comment to moderator  
Reply With Quote
Unread 10/17/18, 04:24 PM  
SlippyCheeze
AddOn Author - Click to view AddOns

Forum posts: 52
File comments: 200
Uploads: 1
Wishlist: fillet fish on "pickup", or if that isn't possible, on opening the inventory.
Last edited by SlippyCheeze : 10/17/18 at 04:25 PM.
Report comment to moderator  
Reply With Quote
Unread 10/17/18, 06:30 AM  
TaxTalis
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 39
Uploads: 1
MM lags at initialization at my client too.
When I recall yes, executing an task while MM still initializes does increase this lag. Still, that’s the only occurrence I am aware of at my client. A wilde guess is MM too is using async and they somehow interfere or the load in a frame then just gets to high as there are two addons trying async calls.
RbI still retrieves values from MM on loot to check for pricing, so sure with MM disabled it would not be able to and when enabled MM too needs to run code to determine the pricing for an item just looted because RbI requests this.
Thanks for testing I’ll look into this.

Originally Posted by Chivana
I disabled all other addons and then re-enabled them one by one: No lag at all - until I enabled Master Merchant.
MM and RbI together = lag on loot, even with all other addons disabled.
MM or RbI alone = no problem.
MM also stutters a bit while initializing though. I wonder what it's doing on loot...
So the lag I encounter might be caused by MM, but it happens only when RbI is enabled.
Last edited by TaxTalis : 10/17/18 at 06:31 AM.
Report comment to moderator  
Reply With Quote
Unread 10/16/18, 10:44 PM  
Chivana

Forum posts: 0
File comments: 16
Uploads: 0
I disabled all other addons and then re-enabled them one by one: No lag at all - until I enabled Master Merchant.
MM and RbI together = lag on loot, even with all other addons disabled.
MM or RbI alone = no problem.
MM also stutters a bit while initializing though. I wonder what it's doing on loot...
So the lag I encounter might be caused by MM, but it happens only when RbI is enabled.
Last edited by Chivana : 10/16/18 at 11:21 PM.
Report comment to moderator  
Reply With Quote
Unread 10/16/18, 01:14 PM  
TaxTalis
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 39
Uploads: 1
Well good point, for looting there is no check if there is a rule defined before the addon starts collecting data.
But this is a small relieve as when rules defined the addon would still lag.
Dustman and RbI sound quite redundant, but neither Dustman nor Itemsaver should lag when RbI comes into play. Anyway what it does is: it collects data of the whole backpack when an item was looted. This isn't necessary for both notification and junk, but for destroy this is a huge advantage and as for every new item there could be a destroy waiting this cache is build up using an asynchronous library written by votan.
Apparently this isn't enough to keep the amount of lua code executed in a single frame low enough for your client to handle. I am sorry that this big update does not bring the awaited effect, mainly as I put a good amount of time in it. I will again, and try to clear things up a bit here and there and see what it'll bring for you. As said before, my client does not lag due to RbI at any moment with patch 1.2.2.. Neither while looting (even when destroy kicks in) nor at UI executing a task. Thus I have a hard time figuring out what happens when you're encountering lag, but I'm guessing it to be the caching of your inventory items.

This said, I'll try my best and the task-startup message is noted as requested feature.
Thank you.

Originally Posted by Chivana
My PC is good enough. The question is: What is the addon doing if I loot an item but there is no rule defined? Maybe it makes other addons lag? I use a lot: Dustman, Itemsaver for example All these never lag when looting.

At opening the bank (and rule defined): [RbI] working...
Last edited by TaxTalis : 10/16/18 at 01:23 PM.
Report comment to moderator  
Reply With Quote
Unread 10/16/18, 11:36 AM  
Chivana

Forum posts: 0
File comments: 16
Uploads: 0
My PC is good enough. The question is: What is the addon doing if I loot an item but there is no rule defined? Maybe it makes other addons lag? I use a lot: Dustman, Itemsaver for example All these never lag when looting.

At opening the bank (and rule defined): [RbI] working...
Report comment to moderator  
Reply With Quote
Unread 10/16/18, 12:48 AM  
TaxTalis
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 39
Uploads: 1
May I ask what hardware you‘re gaming on?
And do you want a message at login or at bankUI open?
The MM message is a login message, thus my confusion.

Originally Posted by Chivana
Lag started after I installed the latest update, and it's gone when I disable the addon. Pretty sure it's RbI causing the lag. Maybe it's because I don't use it on my main. It was activated, but no rules defined.

The start msg would tell me that the addon is actually working, and I should wait for it to finish. I don't want to wait for ever because it's not working for w/e reason. MasterMerchant for ex. hat a msg like that:
Master Merchant initializing...
Master Merchant initialized -- Holding information on 167512 sales.
Last edited by TaxTalis : 10/16/18 at 02:21 AM.
Report comment to moderator  
Reply With Quote
Unread 10/15/18, 07:32 AM  
Chivana

Forum posts: 0
File comments: 16
Uploads: 0
Lag started after I installed the latest update, and it's gone when I disable the addon. Pretty sure it's RbI causing the lag. Maybe it's because I don't use it on my main. It was activated, but no rules defined.

The start msg would tell me that the addon is actually working, and I should wait for it to finish. I don't want to wait for ever because it's not working for w/e reason. MasterMerchant for ex. hat a msg like that:
Master Merchant initializing...
Master Merchant initialized -- Holding information on 167512 sales.
Report comment to moderator  
Reply With Quote
Unread 10/15/18, 05:50 AM  
TaxTalis
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 39
Uploads: 1
Re: Lag worse!

Lag on loot again? I thought async would have tackled that :/
Can you please confirm this is RbI and not some other addon? I can try to exclude the bagCache again for events but really thought async would do the trick here...
this is like really really hard to fix, I encounter no lag at any time introduced by RbI...

As for bank and other UI: as long as you have a task defined, there will be a message of RbI when finished. I don’t see why to include a message at startup of a task as this won’t help you see if you can close the UI. You can close the UI when it proclaims it has finished. Which it will even if there were no actions to be done as long as a rule was defined. Well shouldn’t be hard to do, so I’ll see to implement one, but this won’t be in high priority if there isn’t another need for this.

Thank you for your feedback!

Originally Posted by Chivana
Async is a good idea, but it makes the client lag for a few seconds anytime an item is looted. It seems to be always active, not only when opening the bank.

And could you please add a chat msg when RbI starts, so we know it's running and don't close the bank to early?
Report comment to moderator  
Reply With Quote
Unread 10/14/18, 10:38 PM  
Chivana

Forum posts: 0
File comments: 16
Uploads: 0
Exclamation Lag worse!

Async is a good idea, but it makes the client lag for a few seconds anytime an item is looted. It seems to be always active, not only when opening the bank.

And could you please add a chat msg when RbI starts, so we know it's running and don't close the bank to early?
Last edited by Chivana : 10/15/18 at 12:35 AM.
Report comment to moderator  
Reply With Quote
Unread 10/13/18, 02:52 PM  
SlippyCheeze
AddOn Author - Click to view AddOns

Forum posts: 52
File comments: 200
Uploads: 1
Re: Re: Re: Re: Re: Update 1.2.2

Originally Posted by TaxTalis
Sounds like you have the threshold for destroy set to on? The "actions finished" is only displayed if there was a task execution at one point.
Yeah, that'd be it.

Anyway, I forgot the most important part: zero observable lags. I got them every now and then before, so ... perfect fix, as far as I can see.
Report comment to moderator  
Reply With Quote
Unread 10/13/18, 11:19 AM  
TaxTalis
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 39
Uploads: 1
Re: Re: Re: Re: Update 1.2.2

Sounds like you have the threshold for destroy set to on? The "actions finished" is only displayed if there was a task execution at one point.
At stations and shops you only need to watch out for "actions finished" and you're good
as the actions are now checked on the fly and not on beforehand, there might be an in case of timing inconsistent stream of actions displayed as when no action is to be executed for multiple uhm "actions" they are discarded without notification while then there might be an execution of an action at last resulting in an noticeable and varying delay between outputs.
Good to see it seems stable to someone else than me! Thanks for checking

Originally Posted by SlippyCheeze
Originally Posted by TaxTalis
Thank you, thank you
Let's just wait a little longer for more people to check on this and see how many bugs get reported
So, my testing says, all working. The one thing I think is different is that I get a "finished with rules" message, which I can't remember the exact phrasing of, after picking up items that have no action taken. I do have a rule to destroy any lockpick when I have 200 in my backpack.

I do seem to have developed a habit of walking away from crafting stations before work is completed by the addon, so perhaps at some point an indicator for "working" showing up might help. or not, because I already have a notice it finished, and that doesn't fix it, but *shrug* I have no better ideas.

Overall, seems really solid to me.
Last edited by TaxTalis : 10/13/18 at 01:08 PM.
Report comment to moderator  
Reply With Quote
Unread 10/13/18, 10:13 AM  
SlippyCheeze
AddOn Author - Click to view AddOns

Forum posts: 52
File comments: 200
Uploads: 1
Re: Re: Re: Update 1.2.2

Originally Posted by TaxTalis
Thank you, thank you
Let's just wait a little longer for more people to check on this and see how many bugs get reported
So, my testing says, all working. The one thing I think is different is that I get a "finished with rules" message, which I can't remember the exact phrasing of, after picking up items that have no action taken. I do have a rule to destroy any lockpick when I have 200 in my backpack.

I do seem to have developed a habit of walking away from crafting stations before work is completed by the addon, so perhaps at some point an indicator for "working" showing up might help. or not, because I already have a notice it finished, and that doesn't fix it, but *shrug* I have no better ideas.

Overall, seems really solid to me.
Report comment to moderator  
Reply With Quote
Unread 10/13/18, 02:01 AM  
TaxTalis
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 39
Uploads: 1
Re: Re: Update 1.2.2

Thank you, thank you
Let's just wait a little longer for more people to check on this and see how many bugs get reported
Last edited by TaxTalis : 10/13/18 at 02:01 AM.
Report comment to moderator  
Reply With Quote
Unread 10/12/18, 05:36 PM  
SlippyCheeze
AddOn Author - Click to view AddOns

Forum posts: 52
File comments: 200
Uploads: 1
Re: Update 1.2.2

Originally Posted by TaxTalis
The update 1.2.2 is now live and includes the asynchronous bagCache and action handling and other optimizations which hopefully reduce lag to a unnoticeable amount.
Please note that you now need LibAsync to be installed!
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: