What's new
  • Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Visit Resources
  • Visit Downloads
  • Visit Portal

[ItemRules]Gimmz Legendaries enchantable ItemRules filter

I want to keep any legendary DH weapon that has a dps over 2900 , I added a rule to lengendary.dis ,will it work?
[QUALITY] == "Legendary" && ([ITEMTYPE] == "Bow" || [ITEMTYPE] == "Crossbow" || [ITEMTYPE] == "HandCrossbow") # [DPS] >= 2900
 
seems @ELEPHY is not supported...
201409090520597080.Hero;ERROR;NULL;Specified cast is not valid.;last use rule: [QUALITY]=="Rare"#([MAXSTAT]*[CRIT%]*[CRITDMG%]*@ELEPHY)>0;tree.Errors = 4;ParseError( 4097): Unexpected token '' found. Expected BRCLOSE;ParseError( 4097): Unexpected token '' found. Expected EOF;ParseError( 111): TryGetValue NUMBER failed '' check this key!;ParseError( 111): TryGetValue NUMBER failed '' check this key!;;[KEY]:-1901067849;[BASETYPE]:Armor;[TYPE]:Quiver;[QUALITY]:Legendary;[D3QUALITY]:Legendary;[NAME]:MeticulousBolts;[LEVEL]:70;[ONEHAND]:False;[TWOHAND]:False;[UNIDENT]:False;[INTNAME]:Quiver_norm_base_flippy_01-14224;[ITEMID]:-400579326;[DEX]:674;[VIT]:708;[AS%]:15;[WEAPDMGTYPE]:None;[HATREDREG]:1.07;[UPTOUGH]:0.13;[EXPBONUS]:186;[REQLEVEL]:70;[MAXSTAT]:674;[MAXSTATVIT]:1382;[STRVIT]:708;[DEXVIT]:1382;[INTVIT]:708;[DMGFACTOR]:15;[OFFSTATS]:1;[DEFSTATS]:1;[WEIGHTS]:11780;[@CNTPRIEXCLS]:3.99;[@CNTSEC]:1;;System.InvalidCastException: Specified cast is not valid.
at Trinity.ItemRules.Core.ParseNode.EvalSepExpr(ParseTree tree, Object[] paramlist)
at Trinity.ItemRules.Core.ParseNode.Eval(ParseTree tree, Object[] paramlist)
at Trinity.ItemRules.Core.ParseNode.GetValue(ParseTree tree, TokenType type, Int32& index)
at Trinity.ItemRules.Core.ParseNode.GetValue(ParseTree tree, TokenType type, Int32 index)
at Trinity.ItemRules.Core.ParseNode.EvalExpr(ParseTree tree, Object[] paramlist)
at Trinity.ItemRules.Core.ParseNode.Eval(ParseTree tree, Object[] paramlist)
at Trinity.ItemRules.Core.ParseNode.GetValue(ParseTree tree, TokenType type, Int32& index)
at Trinity.ItemRules.Core.ParseNode.GetValue(ParseTree tree, TokenType type, Int32 index)
at Trinity.ItemRules.Core.ParseNode.EvalStart(ParseTree tree, Object[] paramlist)
at Trinity.ItemRules.Core.ParseNode.Eval(ParseTree tree, Object[] paramlist)
at Trinity.ItemRules.Core.ParseTree.Eval(Object[] paramlist)
at Trinity.ItemRules.Interpreter.evaluate(String str, ParseErrors& parseErrors)
at Trinity.ItemRules.Interpreter.checkItem(ItemEvaluationType evaluationType)
 
[QUALITY] == "Legendary" && [NAME] == "Bottomless Potion of Rejuvenation"
patch 2.1 new potion rule,but trinity still logged as bug
201409090521065314.Hero;LOG;NULL;[KEY]:2022179004;[BASETYPE]:Misc;[TYPE]:Potion;[QUALITY]:Legendary;[D3QUALITY]:Legendary;[NAME]:BottomlessPotionofRejuvenation;[LEVEL]:61;[ONEHAND]:False;[TWOHAND]:False;[UNIDENT]:False;[INTNAME]:healthPotion_Legendary_07_x1-182;[ITEMID]:-2018707792;[WEAPDMGTYPE]:None;[DEFSTATS]:1;
 
seems @ELEPHY is not supported...
201409090520597080.Hero;ERROR;NULL;Specified cast is not valid.;last use rule: [QUALITY]=="Rare"#([MAXSTAT]*[CRIT%]*[CRITDMG%]*@ELEPHY)>0;tree.Errors = 4;ParseError( 4097): Unexpected token '' found. Expected BRCLOSE;ParseError( 4097): Unexpected token '' found. Expected EOF;ParseError( 111): TryGetValue NUMBER failed '' check this key!;ParseError( 111): TryGetValue NUMBER failed '' check this key!;;[KEY]:-1901067849;[BASETYPE]:Armor;[TYPE]:Quiver;[QUALITY]:Legendary;[D3QUALITY]:Legendary;[NAME]:MeticulousBolts;[LEVEL]:70;[ONEHAND]:False;[TWOHAND]:False;[UNIDENT]:False;[INTNAME]:Quiver_norm_base_flippy_01-14224;[ITEMID]:-400579326;[DEX]:674;[VIT]:708;[AS%]:15;[WEAPDMGTYPE]:None;[HATREDREG]:1.07;[UPTOUGH]:0.13;[EXPBONUS]:186;[REQLEVEL]:70;[MAXSTAT]:674;[MAXSTATVIT]:1382;[STRVIT]:708;[DEXVIT]:1382;[INTVIT]:708;[DMGFACTOR]:15;[OFFSTATS]:1;[DEFSTATS]:1;[WEIGHTS]:11780;[@CNTPRIEXCLS]:3.99;[@CNTSEC]:1;;System.InvalidCastException: Specified cast is not valid.
at Trinity.ItemRules.Core.ParseNode.EvalSepExpr(ParseTree tree, Object[] paramlist)
at Trinity.ItemRules.Core.ParseNode.Eval(ParseTree tree, Object[] paramlist)
at Trinity.ItemRules.Core.ParseNode.GetValue(ParseTree tree, TokenType type, Int32& index)
at Trinity.ItemRules.Core.ParseNode.GetValue(ParseTree tree, TokenType type, Int32 index)
at Trinity.ItemRules.Core.ParseNode.EvalExpr(ParseTree tree, Object[] paramlist)
at Trinity.ItemRules.Core.ParseNode.Eval(ParseTree tree, Object[] paramlist)
at Trinity.ItemRules.Core.ParseNode.GetValue(ParseTree tree, TokenType type, Int32& index)
at Trinity.ItemRules.Core.ParseNode.GetValue(ParseTree tree, TokenType type, Int32 index)
at Trinity.ItemRules.Core.ParseNode.EvalStart(ParseTree tree, Object[] paramlist)
at Trinity.ItemRules.Core.ParseNode.Eval(ParseTree tree, Object[] paramlist)
at Trinity.ItemRules.Core.ParseTree.Eval(Object[] paramlist)
at Trinity.ItemRules.Interpreter.evaluate(String str, ParseErrors& parseErrors)
at Trinity.ItemRules.Interpreter.checkItem(ItemEvaluationType evaluationType)

Is this with the new version of trinity 2.1.5? I haven't had an issue with the rules until atleast version 2.1.3. I'll check with the update today but nothing changed in the itemrules in the trinity changes as far as I saw.

About the @ELEPHY I see that's it's crashing on a quiver and it cannot roll as a normal affix only on a specific legendary so it may be that.

I have seen atleast 2potions of rejuvenation looted by my bots so I'm not sure about the potion issue.

Etrayu should be in the pick up in any conditions, I agree.
I'm updating all of this and will post it.
 
The easiest way to keep the >2900 dh weapons
[QUALITY] == "Legendary" &&[TYPE] == "Bow" # [DPS] >= 2900
[QUALITY] == "Legendary" &&[TYPE] == "Crossbow" # [DPS] >= 2900
[QUALITY] == "Legendary" &&[TYPE] == "HandCrossbow" # [DPS] >= 2900 &&
 
Oh, good point, most legendary rules are made on names so they wouldn't work. For the potion you'd want

[QUALITY] == "Legendary" &&[TYPE] == "Potion" -> [KEEP]

For the other legendaries I collected some ITEMID to use instead of names because of " ' " issues. I know there is an "use itemid instead of names" and "log itemrules" in the trinity that gives tons of information that I used to collect the ITEMID of the problematic items so if the [NAME] tag doesn't work in other langage that's the only way to use the itemrules.

Are the rules not keeping any legendaries for you? like sets and other uniques like Buriza or Pus spitter?
 
hmm.... it`s not working now
be more specific, I can see the log which is saying it will be trashed, but actually, nothing happens. My DH is just standing in the face of blacksmith.
DB log
[Trinity] ---SOME LEGENDARY--(I revised..) [Ring_flippy-130497] [Ring] = (TRASH)
[Trinity] Salvage: True
[Trinity] Clicking UI element Salvaging all Normal Quality Items (521457952)
Salvaging all normal items
Salvaging all magic items
Salvaging all rare items


It seems that the function added recently (salvaging all rare or magic items) has problem with your script

did you checked your script`s compatibility with newest DB and trinity??
 
anyway thanks for your work!! and i have one more question...

In "legendary.dis" , some items are written by its name, and some items are written by its itemcode.
then it`s working by what??

your thread says that i should not check "use itemcode instead of name".

and then why there`s itemcode in your script??

sorry if it seems rude question, but i really don`t know about it.... and i`m not good at english :p
 
The legendaries with ITEMID are in the rules because in their names they have fucked up " ’ "

as in Emimei’s or Vyr’s or Raekor’s.

The thing about itemid instead of name is that the translation should be made by demonbuddy in their library located Plugins\Trinity\ItemRules

The thing is that it doesn't always work if a legendary is not in this list it won't be filtered by the rules but by the default trinity, which I guess will stash the legendary by default. I don't have the game in another langage than english so I didn't really test the itemid instead of name thoroughly.
 
I have make a small tool to convert the item rules2 log files to a file format that excel can recognize,then can use it to do some data digging...
???7.webp

dont know if some other tools can serve same function,but if u want use it i can post it with source
 
Last edited:
Yeah that would be nice, if I can modify the column in the sources to get ITEMID and types that could be really useful.
 
i did some debug about the IR2Bugs.log
???.3png.webp

I found some code in TrinityItemManager.cs in function ShouldStashItem
if (tItemType == GItemType.TieredLootrunKey)
{
if (evaluationType == ItemEvaluationType.Keep)
Logger.Log(TrinityLogLevel.Info, LogCategory.UserInformation, "{0} [{1}] [{2}] = (ignoring Tiered Rift Keys)", cItem.RealName,
cItem.InternalName, tItemType);
return false;
}

it seems when ShouldStashItem returned false,trinity will try to decide to salvage or sell it,but since we have no rules for Keystone Fragment type in SalvageSell.dis so it reported as a bug.
but it will not do any harm because there is no rules for it ,it will stay in backpack.
 
Last edited:
Oh that's nice, there is a TYPE KeystoneFragment, I uploaded a new set of rules, for now I'm going to filter a bit more and just have one set of rule so only good items are stashed.
 
The easiest way to keep the >2900 dh weapons
[QUALITY] == "Legendary" &&[TYPE] == "Bow" # [DPS] >= 2900
[QUALITY] == "Legendary" &&[TYPE] == "Crossbow" # [DPS] >= 2900
[QUALITY] == "Legendary" &&[TYPE] == "HandCrossbow" # [DPS] >= 2900 &&

Hi Gimmz,

Was wondering if there was a way to only keep weaps above a certain DPS for the enabled list of weaps in legendary.dis.

Thanks much!
 
Cant seem to get these loot rules working with....
DemonbuddyBETA 1.1.2090.474
Trinity 2.1.7
QT 2.1.22

The problem is when I enable the loot rules it stashes all blues and yellows. I would like it to Salvage them instead. It works fine with Trinity rules but now I have a bunch of legendary junk filling my stash.
It was working well with 2.1.5 and previous and I havent changed the rules at all. Is there something I am missing with 2.1.7?
 
Yep Trinity 2.1.7+ changed something that broke the rules, I'll check if it's the macros or something else tomorrow.
 
Yep Trinity 2.1.7+ changed something that broke the rules, I'll check if it's the macros or something else tomorrow.
Thanks Gimmz

I made a DB install of 468 and 2.1.5 just to use your rules and get rid of junk lol
 
Back
Top