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

[Plugin Addon] "Item Rules" with a file based scripting language

http://i.imgur.com/ilMQf.png

Can anyone tell me why the plugin is keeping this item?

I have the current thing set in rare.dis
[QUALITY] == Rare && [TYPE] == Amulet # [CRIT%] > 0 && ([CRITDMG%] > 0 || [AS%] > 0)

so basically I only want to keep amulets that have crit% and either crit damage or attackspeed.
but somehow this item is getting kept

Check at the bottom, there are SAFETY RULES and after the safety rules there are TRASH rules.

if you didn't delete safety rules - that is probably the reason.
if you did delete the trash rools - that is probably the reason.

Can just add after that rule:
[QUALITY] == Rare && [TYPE] == Amulet # [1] == 1 # [TRASH]
 
i dont know if this is correct but i just add something like this to interpreter:

string[] strArrayString = new string[] { "[BASETYPE]", "[TYPE]", "[QUALITY]", "[NAME]", "[ITEMID]" };
.....
case "[ITEMID]":
return item.GameBalanceId.ToString();


i think we should go this way for legendary items, but im not sure if "gameBalancedID" is proper variable... ;) (it seems to be a id of a item class like bracers etc)

meaby someone can find leg item id variable in giles trinity?
 
i dont know if this is correct but i just add something like this to interpreter:

string[] strArrayString = new string[] { "[BASETYPE]", "[TYPE]", "[QUALITY]", "[NAME]", "[ITEMID]" };
.....
case "[ITEMID]":
return item.GameBalanceId.ToString();


i think we should go this way for legendary items, but im not sure if "gameBalancedID" is proper variable... ;) (it seems to be a id of a item class like bracers etc)

meaby someone can find leg item id variable in giles trinity?

im doing a test ^^ :-) seems to be okay ...

i will implement the possibility to use BalanceID's for items .. but u will have to seek those ids ur self
 
Last edited:
Are the default rules good enough to use? I noticed that there are no explicit trash rules, how does it know to trash items? I will be honest in that I want to use this, but I dont look forward to writing thousands of rules when the development cycle of this plugin is so high. Seems like changes are being made daily.
 
Phobix - default rules check what to keep; rest is trashed (last lines in rules).

It is a bit hard to write own rules with this caleidoscope, but generally its good! For example DMGFACTOR made rules for gloves etc so simple!
 
As I've seen, ItemQuality is deprecated for Magic1,Magic2,Magic3,Rare4,Rare5,Rare6

Is there any possibility to make it force trash items that has only three available stats.
Like Belt with VIT STR And SINGLE RES and nothing else, >> TRASH?
 
shaliono - i think default rules would trash it, because no rule will keep that crap item, and rest is vendoring.

default rules:
- check rules, keep if something in this range
- vendor all rest
 
Cant read 50 pages, sorry... Possible to add Life after kill? And % Damage to demons plz :)
 
Last edited:
using latest:

Code:
[21:23:43.571 D] System.NullReferenceException: Object reference not set to an instance of an object.   at GilesTrinity.Functions.Interpreter.logItemFullTag(ACDItem item, LogType logType)
   at GilesTrinity.Functions.Interpreter.loggingAction(ACDItem item, InterpreterAction action, String rule)
   at GilesTrinity.Functions.Interpreter.checkItem(ACDItem item)
   at GilesTrinity.GilesTrinity.ShouldWeStashThis(GilesCachedACDItem thisitem)
   at GilesTrinity.GilesTrinity.GilesStashOverlord(Object ret)
   at Zeta.TreeSharp.Decorator.CanRun(Object context)
   at Zeta.TreeSharp.Decorator..()
   at Zeta.TreeSharp.Composite.Tick(Object context)
   at Zeta.TreeSharp.PrioritySelector..()
   at Zeta.TreeSharp.Composite.Tick(Object context)
   at Zeta.TreeSharp.PrioritySelector..()
   at Zeta.TreeSharp.Composite.Tick(Object context)
   at Zeta.TreeSharp.Decorator..()
   at Zeta.TreeSharp.Composite.Tick(Object context)
   at Zeta.TreeSharp.PrioritySelector..()
   at Zeta.TreeSharp.Composite.Tick(Object context)
   at Zeta.Common.HookExecutor.Run(Object context)
   at Zeta.TreeSharp.Action.RunAction(Object context)
   at Zeta.TreeSharp.Action..()
   at Zeta.TreeSharp.Composite.Tick(Object context)
   at Zeta.TreeSharp.PrioritySelector..()
   at Zeta.TreeSharp.Composite.Tick(Object context)
   at Zeta.CommonBot.BotMain.()

OVer and over once inventory gets full.
 
Armor - Chest 'Chest Armor'. Score = 40621 {legendary item}
Intelligence=159. Vitality=81. Pickup Radius=7. Sockets=3. +All Resist=77. Armor=376

Carefull with default rules. I also noticed it picks up almost any quiver regardless of high int or str.

I am not into the coding or editing part of the rules, so I stick to the default. I used TrinityCustom_10a and just updated to the latest update.

Am I wrong or did the default rules trash a potential worthy item?
 
using latest:

Code:
[21:23:43.571 D] System.NullReferenceException: Object reference not set to an instance of an object.   at GilesTrinity.Functions.Interpreter.logItemFullTag(ACDItem item, LogType logType)
   at GilesTrinity.Functions.Interpreter.loggingAction(ACDItem item, InterpreterAction action, String rule)
   at GilesTrinity.Functions.Interpreter.checkItem(ACDItem item)
   at GilesTrinity.GilesTrinity.ShouldWeStashThis(GilesCachedACDItem thisitem)
   at GilesTrinity.GilesTrinity.GilesStashOverlord(Object ret)
   at Zeta.TreeSharp.Decorator.CanRun(Object context)
   at Zeta.TreeSharp.Decorator..()
   at Zeta.TreeSharp.Composite.Tick(Object context)
   at Zeta.TreeSharp.PrioritySelector..()
   at Zeta.TreeSharp.Composite.Tick(Object context)
   at Zeta.TreeSharp.PrioritySelector..()
   at Zeta.TreeSharp.Composite.Tick(Object context)
   at Zeta.TreeSharp.Decorator..()
   at Zeta.TreeSharp.Composite.Tick(Object context)
   at Zeta.TreeSharp.PrioritySelector..()
   at Zeta.TreeSharp.Composite.Tick(Object context)
   at Zeta.Common.HookExecutor.Run(Object context)
   at Zeta.TreeSharp.Action.RunAction(Object context)
   at Zeta.TreeSharp.Action..()
   at Zeta.TreeSharp.Composite.Tick(Object context)
   at Zeta.TreeSharp.PrioritySelector..()
   at Zeta.TreeSharp.Composite.Tick(Object context)
   at Zeta.CommonBot.BotMain.()

OVer and over once inventory gets full.

Yep. Exact same thing with latest version posted to SVN.
 
Can anyone of you guys give me the last working version so I could see what broke?
 
Plugin is great but I have two suggestions.

Add a tag for each stat to calculate it by percentage of max. It would have to be dynamic based on item type but the max values are available in Giles already so you could use his existing code. Something like [pSTR] > 90. For a helm it'd match > 180 but for shoulders > 270. This would work best with your damage factor tag so you could weigh the stats to each other evenly.

I might take a ***** at that myself if you'd be willing to implement it if I did.

The other idea is adding a new type of grouping. Something like
Code:
{[STR] > 100 | [VIT] > 100 | [CRIT] > 0}2
That would match 2 (the number trailing the brackets) of the conditions inside the brackets.
 
trash log from about 20 minutes ago--hopefully not throwing lots of stuff like this away:

Armor - Pants 'Depth Diggers'. Score = 27591 {legendary item}
Dexterity=175. Magic Find %=20. Gold Find %=24. Thorns=1435. +All Resist=79. +Highest Single Resist=29
 
trash log from about 20 minutes ago--hopefully not throwing lots of stuff like this away:

Armor - Pants 'Depth Diggers'. Score = 27591 {legendary item}
Dexterity=175. Magic Find %=20. Gold Find %=24. Thorns=1435. +All Resist=79. +Highest Single Resist=29

looks crappy to me
 
SVN .40 is running great except the toon wont go to vendor after items has been identified...

If you manually go to vendor and sells off all items it starts the routine again and goes back to portal to continue the game.
 
Hello,

Is their an up to date pickit configuration that has fairly strict loot rules made yet? Not trying to just get in on the action but would be nice if someone posted a guide on how to set up these loot rules. Also will these work for a RU client? Just not sure where to begin with this. Thanks.
 
hi guys ... sry ...

i forgot to tell jubisman (Unified Giles) about the interpreter.init() command that needs to be in the OnEnable() GilesPlugin ... to get item rules readed on each plugin enable ...

the actul version should work now ...
 
Back
Top