Quantcast
Download
(37 Kb)
Download
Updated: 01/07/20 01:05 PM
Pictures
File Info
Compatibility:
Dragonhold (5.2.5)
Scalebreaker (5.1.5)
Elsweyr (5.0.5)
Updated:01/07/20 01:05 PM
Created:09/11/18 09:42 AM
Monthly downloads:214
Total downloads:2,127
Favorites:12
MD5:
5.2.5
Rulebased Inventory
Version: 2.2.1
by: TaxTalis [More]
YOU ARE USING THIS ADDON AT YOUR OWN RISK!
I will not be 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.

Please see the Wiki for the documentation.
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
Supported addons and libraries



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 a crafting station UI)
  • Notification (is checked continuously (“on update”) for each new item)
  • Refinement (stats when opening the refinement tab of a crafting station UI)
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 (provided by LibPrice if installed), count of vouchers for masterwrits and the count you have in backpack, bank and craftbag
  • ...


Features and fixes in development (or at least considered)
  • Homebank
  • Guildbank
Needed libraries
Cumulative change log for version 2.2.1
  • fixed error on opening housebank

Cumulative change log for version 2.2.0
  • added function motifKnown
  • corrected testing of rule now also including items in subscriberbank

Cumulative change log for version 2.1.0
  • added Task CraftToBag which is executed on Bank visit and fetches items from craftbag to backpack
  • added simplification-functions "material" etc. (Wiki: Functions without input)
  • item-functions "name", "setName" and "creator" now support LibTextFilter (optional)
  • added context menu button in inventory to print most of the item's data for reference (requires LibCustomMenu) (optional)
  • fixed erroneous item-functions


Cumulative change log for version 2.0.0
  • Rules and Settings will be lost when updating to 2.0.0
  • Backup settings for reference by copying SavedVariables/RulebasedInventory.lua.
  • Be willing to rewrite your rules and recreate your profiles...
  • OR DO NOT UPDATE TO 2.0.0!
  • Complete rewrite
  • new rule syntax (sorry, for the now mandatory rewrite of rules)
  • added task for refinement
  • deconstruction now uses the game's multi-deconstruct feature
  • introduced RuleSets (two-leveled set of rules)
  • tasks can now have a RuleSet instead of a Rule (so, multiple rules per task instead of one!)
  • added support for LibSets and LibPrice
  • huge performance improvements (at least for me, tested on i7-7700k, GTX1080ti, 16gb DDR4)


Cumulative change log for version 1.6.2
  • Update 2.0.0 is right around the corner
  • Rules and Settings will be lost when updating to 2.0.0
  • Backup settings for reference by copying SavedVariables/RulebasedInventory.lua.
  • Be willing to rewrite your rules and recreate your profiles...
  • OR DO NOT UPDATE TO 2.0.0!


Cumulative change log for version 1.6.1
  • removed libstub (thank's Beartram!)

Cumulative change log for version 1.6.0
  • removed rulestring-colorization for output as it didn't work correctly anyway and furthermore could cause a game crash

Cumulative change log for version 1.5.2
  • Updated for API 100028
  • Source is now available at https://gitlab.com/taxtalis/rulebased-inventory, wiki there might be used in the future

Cumulative change log for version 1.5.1
  • Fixed an error with writworthy integration when ttc was not found

Cumulative change log for version 1.5.0
  • Updated for API 100027
  • renamed 'schematic' (derived from constant's name SPECIALIZED_ITEMTYPE_RECIPE_ENCHANTING_SCHEMATIC_FURNISHING) to 'praxis' (ingame name)
  • added writworthy integration with wwMatCost and wwMatCostPerVoucher (thx to ziggr)
  • added functions itemsetname and itemsetnamematch to filter for setnames

Cumulative change log for version 1.4.2
  • fixed usage of AutoCategory function

Cumulative change log for version 1.4.1
  • added general option for a message when starting a task
  • added support for AutoCategory
  • added function: autocategory("category1",...)
  • fixed multiple bugs which occurred on a full bag
  • fixed test of deconstruct
  • fixed test of notification not using an unsaved rule
  • fixed an issue where in bagCache the count of an item would not be updated

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 (16)
File Name
Version
Size
Uploader
Date
2.2.0
37kB
TaxTalis
12/30/19 02:22 AM
2.1.0
37kB
TaxTalis
12/25/19 12:17 PM
2.0.0
35kB
TaxTalis
12/18/19 05:03 AM
1.6.2
920kB
TaxTalis
11/27/19 01:48 PM
1.6.1
920kB
TaxTalis
09/06/19 08:47 AM
1.6.0
920kB
TaxTalis
08/31/19 04:02 PM
1.5.2
922kB
TaxTalis
08/14/19 09:25 AM
1.5.1
920kB
TaxTalis
05/25/19 02:57 AM
1.5.0
920kB
TaxTalis
05/24/19 10:07 AM
1.4.2
914kB
TaxTalis
10/27/18 09:00 AM
1.4.1
914kB
TaxTalis
10/26/18 02:36 PM
1.2.2
911kB
TaxTalis
10/12/18 01:27 PM
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 01/05/20, 04:17 AM  
TaxTalis
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 96
Uploads: 1
I noticed an error occurring when opening the house bank, will hopefully be able to push a fix for this later this day.

Edit: fixed in 2.2.1
Last edited by TaxTalis : 01/07/20 at 01:06 PM.
Report comment to moderator  
Reply With Quote
Unread 12/27/19, 09:56 AM  
TaxTalis
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 96
Uploads: 1
Originally Posted by demawi
thx for the changes with 2.1.0

Are there currently any chances to find out if a motif already known?
none which I know of, no
hoping for craftstore support for this since last year.

EDIT: Found one! Will push an update asap. Function is called motifKnown (following the scheme of recipeKnown). The ingame function however is called bookKnown, so it may apply to more than just motifs, but I have not yet found other items returning true to the function when known.
Last edited by TaxTalis : 12/29/19 at 04:22 AM.
Report comment to moderator  
Reply With Quote
Unread 12/27/19, 08:47 AM  
demawi

Forum posts: 0
File comments: 4
Uploads: 0
thx for the changes with 2.1.0

Are there currently any chances to find out if a motif already known?
Report comment to moderator  
Reply With Quote
Unread 12/25/19, 03:53 PM  
TaxTalis
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 96
Uploads: 1
Originally Posted by ziggr
Theoretically, they are obsolete, because the new rule system is so much more powerful and flexible. But the simplification functions are basically a built-in library of rules that us users won't have to re-invent, so you save us all a bunch of time and typos by re-introducing them. Thank you!
sure thing, you're welcome! Just tell me if there is anything else I should consider in future releases!

Originally Posted by ziggr
Oh. Em. Gee. The whole bag <-> bank exchange of dozens of mats and daily crafting rewards happens in only a second or two now. So fast! You did good. Real good.
Nice, glad it worked out!
Last edited by TaxTalis : 12/25/19 at 03:53 PM.
Report comment to moderator  
Reply With Quote
Unread 12/25/19, 02:27 PM  
ziggr
 
ziggr's Avatar
AddOn Author - Click to view AddOns

Forum posts: 25
File comments: 221
Uploads: 9
Originally Posted by TaxTalis
Sorry, it seems I should have included the simplification-functions in the first place.
I thought them to be sort of obsolete because of the new rule system, but I was wrong.
Theoretically, they are obsolete, because the new rule system is so much more powerful and flexible. But the simplification functions are basically a built-in library of rules that us users won't have to re-invent, so you save us all a bunch of time and typos by re-introducing them. Thank you!

Originally Posted by TaxTalis
What is your perceiving of the performance improvements?
Oh. Em. Gee. The whole bag <-> bank exchange of dozens of mats and daily crafting rewards happens in only a second or two now. So fast! You did good. Real good.

--Z
Report comment to moderator  
Reply With Quote
Unread 12/25/19, 12:00 PM  
TaxTalis
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 96
Uploads: 1
Sorry, it seems I should have included the simplification-functions in the first place.
I thought them to be sort of obsolete because of the new rule system, but I was wrong.

Thank you for your feedback, good to hear that my work is appreciated by some!
What is your perceiving of the performance improvements?

RbIv2.1.0 is live now!
Last edited by TaxTalis : 12/25/19 at 01:05 PM.
Report comment to moderator  
Reply With Quote
Unread 12/24/19, 11:45 PM  
ziggr
 
ziggr's Avatar
AddOn Author - Click to view AddOns

Forum posts: 25
File comments: 221
Uploads: 9
Congratulations on 2.0!

I've been looking forward to this release ever since warnings about it started popping up in chat every login.

I love the new rule/ruleset builder. Never again will I have to paste into 7 alts the same long, long, chain of OR statements defining all the stuff I want stored in the bank.

Heh. But I probably should have waited one more week: I see from the documentation wiki that the shorter functions like material_alchemy and material_raw are coming soon in RbIv2.1.0 That's what I get for being so excited and a little bit over-eager.

Or maybe I just love RbI so much because of how it makes it possible to hold all these crafting materials without an ESO+ craft bag.

Thank you for the auto-junk ability. All those ornate rewards and already-known green recipes will soon turn into gold without my ever having to even see them. That's a few more seconds of every day you've just saved me.
Report comment to moderator  
Reply With Quote
Unread 12/22/19, 03:06 PM  
TaxTalis
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 96
Uploads: 1
Re: Re: Re: Thx! for the new version!

Coloring unused entities, renaming and overview
This is the part which I won't tackle for now.

Coloring unused entities is hindered by the characters having their own set of "local" profile, which I cannot access from another character (at least this is my understanding of the character-bound savedVariables). And for example marking only rules which are used in saved RuleSets/Profiles wouldn't do the trick then. So until I figured that out, I won't implement this, but I did a proof of concept, coloring text in the dropdowns is possible!

Renaming an entity is far from critical, a typo or mismatching name will not stop the addon from executing and, with some work and dedication, can be corrected by the user. This said, I too think, renaming would be nice to have.

The Overview on the other hand - sorry, I have no idea how I would to that. My only advice would be to take MS Visio or something similar and draw a graph yourself to visualize your settings. Thank you for your understanding.

context menu
Not yet begun, shouldn't be too hard, will try to make it happen in 2.1.0, lower priority, though.

name and namematch
I am happy to inform you, that with the upcoming version 2.1.0 the name-, setName- and creator-function should exclude the suffixes (^f, ^m, ...) as well as support the extended syntax of LibTextFilter (which is required for it to work of cause, but is not mandatory to install, if this functionality is not needed).

Convenience item categories
Your favorite functions from version 1.6.2 will be back in 2.1.0!
Please check the Wiki: Functions without input for the list of functions reintroduced.

Craftbag trigger
Well, this one is a bit tricky. I got it working, but I am not quite happy with it, I don't think many will ever use it, but here's whats happening so far (and possibly within 2.1.0): There is a new Task "CraftToBag", called on opening the bank, no control to change that as of yet. Calling manually from menu is also possible. On bank-interaction however it could lead to items being transferred from CraftBag to Backpack and immediately to Bank, except the items could possibly have not yet arrived in the backpack and thus are not transferred to Bank at all (and further RbI then would think the slot is again free, which it is not, and try to send another item there, ... (repeating chain of actually full slots being filled leaving other slots full while RbI thinks they're not), but that's all that could happen, I think). This is due to the fact that I never intended to have more than two full blown tasks running in the same event, but as long as the fetched items from CraftBag are not included in your rules sending them to the bank this should be fine. I'll see to make this work, but maybe this will just stay as it is. I'll need some time off from coding and who knows when the urge to redo this addon returns. Have no fear though, I'm still around fixing the addon and helping its users! Thank you for using RbI!

ETA for 2.1.0 is some time in the upcoming week, after some further testing on my main account, depending on how many and what type of errors I encounter.
Last edited by TaxTalis : 12/22/19 at 03:11 PM.
Report comment to moderator  
Reply With Quote
Unread 12/22/19, 05:51 AM  
demawi

Forum posts: 0
File comments: 4
Uploads: 0
Re: Re: Thx! for the new version!

Thx for your "late" answer

name and namematch
I have looked into my old rules where I used "itemnamematch". Mostly I haven't specified the full name. Here are the words I have used: "gold" (to identify calendar poison and potions), "kronen" (to identify calendar drink or food), "reparatur" (to accumulate all gear-repairmaterial), "Essenz" (to identify default magicka, life, potions), "Ahorn" (acorn and lots of other materialnames to itdentify raw and refined version of it)
Function "Itemname" I also used some times but in german always have to add ^f, ^m or ^n which I only found out later.

Convenience item categories
Jep, that's right as long as you don't want to combine it with some counts, than you have to copy it. Currently I use the long "material" in 3 rules. "material_raw" 2 times. In one rule are both together. Reading those rules are not so clear as type("material") and not type("material_raw").

Craftbag trigger
Currently I would prefer on bank visit. But I don't know how much performance it needs to scan always the craftbag additionally. Perhaps as option in the settings so the user can decide.

Renaming and overview
The problem is when I have a rule or ruleset linked directly to all my character-profiles and I want to "rename" it. So the simple "make a new one, delete the old" isn't that simple because I have to go to all the profiles/tasks/rulesets and have to re-add the new rule. And that brings us also to the other "overview" problem. Perhaps I have so much rules or haven't worked on it for a long time, so I don't know where my rule is used. Currently I rename my entities via the SavedVariables and look where my entities are used.
But currently I also don't know how to represent that entity-relationship-model well on the UI.
Report comment to moderator  
Reply With Quote
Unread 12/21/19, 08:57 PM  
TaxTalis
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 96
Uploads: 1
Re: Thx! for the new version!

it's late and I am tired, so just a short answer.
first, thank you for the feedback, really appreciate it!
RuleSets can make it easier to split the "one rule" (which was set per task in the previous version) to multiple ones for better overview and modularity, at least so I thought it to be. But of cause you don't need to save them as one if you save the profile and use this to spread around except you have exactly the case you mentioned: a task which is the same across profiles. My junk-task is such a task and I am happy I have to introduce changes just once for a single RuleSet to have it present on all characters.

I haven't used name much, setName functions as is with the full name only, I thought name to be the same, but yes, there is this parameters in string, I will see to bring back the itemNameMatch-like function or at least filter the /n and so on from the string first.

Sorry, you're right, in the previous version I replaced "material" with all these types you listed, this is not the case anymore and I was not planning to bring it back due to the fact that rules can now be much smaller as they can be stacked together and used in multiple places, so one can make a rule "material" and fill it as you did and use it, I thought.

In general it would be possible to have a task taking things from craftbag and placing them in the backpack, yes. Just for brainstorming, this task would only be triggered manually? Or on bank visit?

Renaming of rules is a simple "make a new one, delete the old". On creating a new Entity, the current settings are saved for it immediately (except for rules, which's content is empty on creation).

Hm I wanted to get rid of this context menu thing as I never used it, but okey, I will see to bring it back optionally.

The marking of unused entities is a good idea, I'll note this down.

What do you mean by "(entities) linked by whom" and could you specify the overview more?
Last edited by TaxTalis : 12/22/19 at 02:36 PM.
Report comment to moderator  
Reply With Quote
Unread 12/21/19, 06:03 PM  
demawi

Forum posts: 0
File comments: 4
Uploads: 0
Thx! for the new version!

I already played a bit with the new version.. Insane performance improvement. Awesome!

Beside my main character I have additional store twinks (I do not have esoplus regularily).
I really like that rules, rulesets, profiles are saved as references now. So you have the ability to change rules across characters. But of curse you have to pay attention where you're using references and where not. That could be a bit hard to track yourself. Currently I don't use RuleSets, because it's only 1:1 to profiles. Perhaps I will use it for those tasks which are identical across all characters (like sell where I only sell "junked()"). A profile I have for each character. So I can adjust rules from all characters, without relogging.

"name" and "setName" - functions seem to work only with full qualified equality like name("seelenstein^m"). With itemnamematch in the previous version it worked much better.

Questions:
Before we had "material", "material_refined" or "material_raw" is there something similar now? Currently my all "material" looks like
Code:
type("material_armortrait", "material_furnishing", "material_raw_blacksmithing", 
"material_raw_clothier", "material_raw_jewelry", "material_raw_jewelrytrait", "material_raw_style", 
"material_raw_woodworking", "material_refined_blacksmithing", "material_refined_clothier", 
"material_refined_jewelry", "material_refined_jewelrytrait", "material_refined_style", 
"material_refined_woodworking", "material_weapontrait", "reagent", "aspect", "essence", "potency", 
"ingredient", "booster_blacksmithing", "booster_clothier", "booster_enchantment", "booster_raw_jewelry",
 "booster_refined_jewelry", "booster_weapon", "booster_woodworking", "poison_base")
Is it possible to take items out of the craftbag? I would like to sell specific excess materials.


Things that also would be nice:
- Renaming Rules, RuleSets, Profiles
- Item context menu in the inventory to show/dump metaInfo's (like in the previous version)
- Mark for unused rules, rulesets, profiles (perhaps just with a different color)
- An info which rules, rulesets, profiles where linked from whom
-- Perhaps an overview/dump how the references are set (character -> profile -> task -> ruleset -> rule)
Last edited by demawi : 12/21/19 at 06:49 PM.
Report comment to moderator  
Reply With Quote
Unread 12/19/19, 01:29 PM  
TaxTalis
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 96
Uploads: 1
Originally Posted by Balmeri
It's no big deal. I have the old rules in text file in Atom and can regenerate them.
Please be aware of the new syntax
Report comment to moderator  
Reply With Quote
Unread 12/19/19, 12:16 PM  
Balmeri

Forum posts: 0
File comments: 9
Uploads: 0
It's no big deal. I have the old rules in text file in Atom and can regenerate them.
Report comment to moderator  
Reply With Quote
Unread 12/19/19, 05:48 AM  
TaxTalis
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 96
Uploads: 1
Since 1.6.2 (27th of November 2019) there was a message in chat at login, also it was stated in change log for both 1.6.2 and 2.0.0 and on RbI's main page here. That's all I did, sorry to hear you missed the notification and unknowingly lost your rules.
If you need any help setting up your new rules or if there are any questions left, feel free to ask!
Thank you for using RbI. Would love to hear how you (all) think about the changes.

Originally Posted by Balmeri
Originally Posted by demawi
Originally Posted by Balmeri
Somehow last change broke loading my existing profiles and rules.
that has to do with version 2.0.0:

There also was a reminder for that since version 1.6.2
Ah, I rarely come to the forum unless there's an issue and there was nothing in game about it, and didn't look back past first page in thread.
Last edited by TaxTalis : 12/19/19 at 06:11 AM.
Report comment to moderator  
Reply With Quote
Unread 12/19/19, 03:42 AM  
Balmeri

Forum posts: 0
File comments: 9
Uploads: 0
Originally Posted by demawi
Originally Posted by Balmeri
Somehow last change broke loading my existing profiles and rules.
that has to do with version 2.0.0:

There also was a reminder for that since version 1.6.2
Ah, I rarely come to the forum unless there's an issue and there was nothing in game about it, and didn't look back past first page in thread.
Report comment to moderator  
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.