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

[Plugin] "Item Rules 2" File based scripting language!

Code:
// +---------------------------------------------------------------------------+
// | ______ __                             __              
// ||      |  |--.---.-.-----.-----.-----.|  |.-----.-----.
// ||   ---|     |  _  |     |  _  |  -__||  ||  _  |  _  |
// ||______|__|__|___._|__|__|___  |_____||__||_____|___  |
// |                         |_____|                |_____|
// +---------------------------------------------------------------------------+
// | 2.011(alpha):
// | - added macro possibility
// | - some fixes at the log system
// | - added a open-source AH Parser (use on ur own risk!) documentation incl.
// | - moved from Trinity 1.7.1.6 to 1.7.1.7 thx to rrix for his hard work
// +---------------------------------------------------------------------------+
 
the author made some well documented examples ... u might start with them ...

want to help me with some stuff?... just curious as to how you made it


im going off that this is similar to d2nt pickit so
[QUALITY] == "Legendary" && [type] == "Axe" && [LEVEL] == 60
would keep butchers axe unid?
if so i believe this would be unid skorn, which is a bit more complicated since i couldnt find a two handed sword for type;
[QUALITY] == "Legendary" && [type] == "axe" && [LEVEL] == 63 && [twohand] == true
not sure if i need [basetype] == weapon..

whats the difference between maxstatvit and strvit/dexvit/intvit? im thinking maxstatvit >= 200 is the same as ( dexvit || strvit || intvit ) >= 200?

lmk thanks
 
want to help me with some stuff?... just curious as to how you made it


im going off that this is similar to d2nt pickit so
[QUALITY] == "Legendary" && [type] == "Axe" && [LEVEL] == 60
would keep butchers axe unid?
if so i believe this would be unid skorn, which is a bit more complicated since i couldnt find a two handed sword for type;
[QUALITY] == "Legendary" && [type] == "axe" && [LEVEL] == 63 && [twohand] == true
not sure if i need [basetype] == weapon..

whats the difference between maxstatvit and strvit/dexvit/intvit? im thinking maxstatvit >= 200 is the same as ( dexvit || strvit || intvit ) >= 200?

lmk thanks

unidentified stuff is not supported right now ... maybee i will that later ...


.. maxstatvit >= 200 is the same as ( dexvit >= 200 || strvit >= 200 || intvit >= 200 ) ...
and maxstat > 200 is same as ( dex> 200 || str > 200 || int > 200 )


by the way ther eis a documentation ...

Code:
// |  [MAXSTAT]                       | highest class specific stat | 200	
// |                                  | (str,int,dex)		    |
// |  [MAXSTATVIT]                    | highest class specific stat | 250		
// |                                  | (str,int,dex) + vit         |				
// |  [MAXONERES]                     | highest single resist       | 60				
// |                                  | (arcane,cold,fire,holy,     |
// |                                  |  lightning,physical,poison) |
// |  [TOTRES]                        | total resistance            | 140					
// |                                  | (allres,arcane,cold,fire,holy,
// |                                  |  lightning,physical,poison) |
// |  [DMGFACTOR]                     | dmg factor                  | 12						
// |                                  | = as% + crit%*2 + critdmg%/5|
// |                                  |   + average/20              |
// |  [STRVIT],[DEXVIT],[INTVIT]      | primary attribut vitality   | 200			
// |  [AVGDMG]                        | average dmg                 | 200						
// |                                  | = (mindmg + maxdmg) / 2	    |
// |  [OFFSTATS]                      | offensiv stats              | 3					
// |                                  | = as%,crit%,critdmg%,avgdmg |
// |                                  | counting each as one if it is
// |                                  | bigger then 0	            |
// |  [DEFSTATS]                      | defensiv stats              | 3					
// |                                  | = vit,allres,armorbonus,    |
// |                                  |   block%,life%,regen        |
// |                                  | counting each as one if it is
// |                                  | bigger then 0               |
// +----------------------------------+----------------------------------------+
 

Attachments

unidentified stuff is not supported right now ... maybee i will that later ...


.. maxstatvit >= 200 is the same as ( dexvit >= 200 || strvit >= 200 || intvit >= 200 ) ...
and maxstat > 200 is same as ( dex> 200 || str > 200 || int > 200 )


by the way ther eis a documentation ...

Code:
// |  [MAXSTAT]                       | highest class specific stat | 200	
// |                                  | (str,int,dex)		    |
// |  [MAXSTATVIT]                    | highest class specific stat | 250		
// |                                  | (str,int,dex) + vit         |				
// |  [MAXONERES]                     | highest single resist       | 60				
// |                                  | (arcane,cold,fire,holy,     |
// |                                  |  lightning,physical,poison) |
// |  [TOTRES]                        | total resistance            | 140					
// |                                  | (allres,arcane,cold,fire,holy,
// |                                  |  lightning,physical,poison) |
// |  [DMGFACTOR]                     | dmg factor                  | 12						
// |                                  | = as% + crit%*2 + critdmg%/5|
// |                                  |   + average/20              |
// |  [STRVIT],[DEXVIT],[INTVIT]      | primary attribut vitality   | 200			
// |  [AVGDMG]                        | average dmg                 | 200						
// |                                  | = (mindmg + maxdmg) / 2	    |
// |  [OFFSTATS]                      | offensiv stats              | 3					
// |                                  | = as%,crit%,critdmg%,avgdmg |
// |                                  | counting each as one if it is
// |                                  | bigger then 0	            |
// |  [DEFSTATS]                      | defensiv stats              | 3					
// |                                  | = vit,allres,armorbonus,    |
// |                                  |   block%,life%,regen        |
// |                                  | counting each as one if it is
// |                                  | bigger then 0               |
// +----------------------------------+----------------------------------------+


yea i saw and read that, was little unsure. just wanted confirmation, thanks for replay
also, im guessing there is also no gold pick? like [gold] >= 2000 or something? didnt see anything im not sure if the items tab in giles config works
 
Last edited:
Hi, finally integrated your code :p

There's a problem with symlinked plugin folders, sometimes the assembly location is not retrieved correctly (the symlink directory goes null).

So u might add an Assembly.GetEntryAssembly().location in there and build the absolute paths for customPath and logPath.

Later
 
Ok, I also have a lazy question for which I apologize in advance - is this only for 1.7.x branch or there is a version for 0.45 as well?
 
Is there a way to salvage trash legendaries, but keep set legendaries?
 
+-------------------------+
| EVENT |
| Item Stash\Trash |
| FileBasedScriptingRules |
+-----------+-------------+
|
V
+--------------+
| legendary.dis|
| rare.dis +--> <matching rule>
| magic.dis | |
| special.dis | +-> KEEP
+------+-------+ +-> TRASH
| |
V V
<no matching rule> SCORE
| |
|<-----------------+
|
V
+------------------+
| trinity scoring |
| decide if item |
| stashed/trashed |
+------------------+


Would like to check if there are no matching rules. Does it use the rules in itemvaluation.cs?
 
could you develop a function in your script, which will concatenate multiply conditions coditions by nums.

eg.
FUNCTION([MAXMANA] > 0,[MANAREG] > 0, [CRITDMG%] > 40 ,[SOCKETS] > 0,[LOH] > 500, [LS%] > 0 ,...,3)
using this function any three attributes are matched then the income will return "ture". so it will simplify the rules greatly.
 
With the pickup rules, do they evaluate one by one, or do they somehow overlap?

Trying to use this
[QUALITY] == "Rare" && [BASETYPE] == "Weapon" && [TWOHAND] == true -> [IGNORE]

Sometimes it ignores them, sometimes it picks them up, cant figure out why. I placed it at the top of the weapon pickup rules incase they evaluate in order.

ver alpha 200101
 
Maybe I did the twohand thing wrong, is it supposed to be "true" or true?

This rules is definitely working...
[QUALITY] == "Rare" && [TYPE] == "Shield" -> [IGNORE]
goodbye shields forever!!!
 
My biggest concern is that misc for some of the legendaries. If thats fixed. I can really just spend 10 min a day for 5 bots
 
Mine stopped salvaging legendaries recently, though it's still turned on. Did a new updated lower the legendary requirements to keep all?

**Nvm just saw latest update in trinity thread :D
 
trying soft/medium rules and its very rarely stashing anything on 13 bots. now either im extremly unlucky or something is really wrong with the beta version
 
Back
Top