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

[ItemRules2] Gnillers Super-Tight Loot Rules

Gniller

Community Developer
Joined
Sep 29, 2012
Messages
384
Reaction score
5
[ItemRules2] Gnillers Super-Tight Loot Rules

Summary
As for many of us i have been going trough loot once in a while noticing a lot of the item stashed are just not worth my time, especially when expanding your botting situation. With ItemRules2 released in Trinity i used the opportunity to make my bots get rid of "trash" by themselves. Originally the hard rule set provided in ItemRules2 was good enough but with the market becoming less rewarding by the day items that used to be worthy are now just no longer worth it.


What does it keep?
These Item Rules are designed to keep only items worth ?5+, in the current market that means <1% of the legendaries dropped and <0.01% of the rares dropped. This is currently what it is supposed to keep and may very well differ with patches.


How about gold value?
With the value of gold in the current market i chose to completely ignore gold value, my rules are based on RMAH only. This can mean it trashes items worth 15mil. If you feel uncomfortable with this, don't use these rules :)


Some statistics
Currently these rules keep about 1% of all legendary items, meaning if you run 6 legendaries an hour (and good job if you do) it only stashes about 0.06 items an hour meaning ~ 1.44 items a day.

Of course this is just based on the idea of stability, which we don't have with RNG :D


Requirements
Trinity, any version 1.7.* should be alright :)


Bugs and Suggestions
While i don't expect any bugs, suggestions are always welcome.

When you feel like items are trashed/stashed when they shouldn't be, please report this with a full item stats report (preferably a screenshot of the item or the ItemRules2.log line of the item being valued).

Keep in mind however that these rules are made to be strict :)


Credits
(Obviously) Rrrix and Giles for Trinity, no way any of this was possible without either of them :)
Darkfriend77 - for ItemRules2, wouldn't have been possible without him!


Support
I will keep this project up-to-date and read trough all feedback and questions in this topic, if you want to say thank you please ! :)

If you are donating (which is very much appreciated!) don't forget my work is only the last piece of the puzzle, don't miss out on those that made this possible in the first place(Rrrix and Darkfriend77)!

Some people seem to think i get paid big-time for this project so here is an indication on time/money:
Money from donations for this project: 11?
Time spend on the project (including support): ~ 80 hours
[PERCENTAGE=1][/PERCENTAGE] ^ Compared to minimum wage in my country :)



Update Information
Code:
--1.4.1
- Fixed a bug in one handed rare mighty weapon rule applying to two handed rare mighty weapons
- Tightened The Witching Hour for strength (+33%)
- Tightened Inna's Favor (+10%)
- Tightened Natalya's Bloody Footprints (+7%)
- Tightened Ice Climbers without movement speed (+5%)
- Tightened Natalya's Sight (+26%)
- Tightened Visage of Giyua (+14%)
- Tightened Tal Rasha's Brace (+17%)
- Tightened Inna's Radiance (+12%)

--1.4.0
- Tightened Blackthorne's Notched Belt (+15%)
- Tightened Tal Rasha's Brace (+20%)
- Tightened Hellcat Waistguard (+15%)
- Tightened Natalya's Bloody Footprints (+5%)
- Tightened The Witching Hour (+10% for str and dex)
- Tightened Immortal King's Irons (+2.5%)
- Tightened Natalya's Sight (+8%)
- Loosened Storm Crow (-25%)
- Two hander calculation @GNILLERTWOHANDWEP := ([@GNILLERWEP]*([DPS]/1500)) added to increase accuracy for two hander calculations
- Updated all 2 handed rules to use @GNILLER2HWEP (except for ranged weapons)
- Removed old commented lines for head rules

--1.3.1.1
- Added pickup radius to @GNILLERMSD
- Fixed bug in witching hour item specific calculation resulting in stashing all

--1.3.1
- Introduced item specific calculations
	- Added item specific calculation for The Witching Hour
	- Added item specific calculation for Stone of Jordan
- Zunimassa's Marrow tightened (+13%)
- Inna's Radiance tightened (+6%)
- Fixed a small bug in pickup.dis resulting in some items being picked up with a log message (same result, no more log message)
- Added support for additional weapon pickup rules in rare.dis (all weapons are now validated properly even though normally most types aren't picked up)

--1.3.0
- Manajuma's Carving Knife tightened (+11%)
- rare hands tightened (+11%)
- @GNILLERHEAD calculation added, for head slot calculations
	- reworked all headslot validation rules to use @GNILLERHEAD
	- @GNILLERCONFIG now affects @GNILLERHEAD calculations

-- 1.2.4
- Immortal King's Eternal Reign tightened (+4%)
- rare chests updated to match tightest legendary rule
- non set legendary chests tightened (most to match Immortal King's Eternal Reign)
- Inna's Favor tightened (+25%, still almost half of rare belt rule)
- Pickup rules modified for diablo 1.0.8
	- rare gloves are now picked up ilvl 58+
	- rare jewelry is now picked up ilvl 58+ (rings & amulets)

-- 1.2.3
- Stone of Jordan rule reworked to match market value
- Immortal King's Eternal Reign tightened (+13.5%)

-- 1.2.2
- Tal Rasha's Brace tightened (+25%)
- Rare belts tightened (+12.5%)
- Removed Two handed melee rare weapons and rare belts from pickup rules, to reduce time spend in town (mainly for co-op)

-- 1.2.1
- Updated Vile Ward to use calculations
- Updated Storm Crow to use calculations
- Updated The Inquisitor to use calculations
- Updated Natalya's Embrace to use calculations
- Updated Ouroboros to use calculations
- Updated rare shoulders to use @GNILLERMSD instead of @GNILLER
- Updated rare chests, legs, boots and follower specials to use calculations
- Reworked Ice Climbers and rare boots validation for drops without movement speed

-- 1.2.0
- 2Handers thightened (+50%) to match new calculations
- Legendary Mighty betls tightened (+25%)
- intelligence Witching hours tightened a little (+12.5%)

- @GNILLERCONFIG added, the higher this number is: the more items are kept, Default: 100. Multiplies calculation outcome to easiliy increase/decrease items kept.
	WARNING: Lowering this number may result in items trashed to much!
	This value can be found on the very top of rare.dis (line 29)
- All calculations updated to support @GNILLERCONFIG 
- items that are not valued on calculations currently don't support @GNILLERCONFIG, These will be kept at my regular values
	-Not calculated: Offhands, Heads

- Chest armors are now also calculated by @GNILLERMSD, hereby also supports @GNILLERCONFIG

-- 1.1.1
- Fixed [ARMOR] is now [ARMORBONUS] in @GNILLERMSD; no longer counts default item armor value (should result in less crap legs/feet/belts stashed)

- Added multiplicative calculation for weapon offensive stats
	@GNILLEROSM := (([CRITDMG%]/100)+[SOCKETS]+([LOH]/1000)+([LS%]/3)+([MAXSTAT]/400)+([VIT]/600))
	@GNILLERWEP := (([DPS]+(([CRITDMG%]+([SOCKETS]*100)+([LOH]/100)+([LS%] * 40)+([MAXSTAT]/4)+([VIT]/6))*[@GNILLEROSM]))*([DPS]/1000))
	The idea: The more offensive stats present on the weapon, the more all of them are worth
	 - weapons with less than 1 offstat maxed out (on one handers) are worth less than they used to
	 - 2hander rulesets may need thighening as offstats can be higher, testing to be done.
	Example: 1100 DPS weapon with 100% critdmg and a socket, used to be valued 1430 - now valued 1650.

-- 1.1.0
- Slightly tightened Immortal Kings Irons rule (16% increase, still lower than rare hands)
- Slightly improved the value of Lifesteal% on all weapon types (14.3% increase)
- Immortal King's Stride tightened (~20% increase)
- Rewrote Hellcat Waistguard loot rule

- Removed pickup rules for crafting plans/reagents, trinity settings should handle these
- Rare amulet pickup rule untightend by 1 item level (now picks up 61)

- Fixed an issue in Mempho of Twilight and Immortal King's Triumph ([PICKUP] changed to [PICKRAD])
- Ivory Tower now matches Stormshield rule (hopefully another issue is solved by this)
- Tzo Krin's Gaze now stashes on dex instead of int

- Added calculation @GNILLERMSD (MaxStat+Defences), designed to simplify loot rules for legs, chests etc.
	@GNILLERMSD := ([MAXSTAT]+([VIT]*0.8)+([ALLRES]*2)+([ARMOR]*0.2)+([LIFE%]*5)+([SOCKETS]*40))
- Reworked legendary legs/feet/belts for new calculation usage
- Code cleaned, commented "old" rules and unused calculations removed (may give a tiny performance increase when judging bag, problaly not noticable)

-- 1.0.0
- Initial public release


Download
 

Attachments

Last edited:
Installation guide

How to install

Extract Files
First of all, extract all the files from the .zip file into any folder you feel appropriate. (Network drives are also an option)

DemonBuddy Configuration
Start DemonBuddy and head to the plugins tab for Trinity settings.
Jvcf0gu.png


Select the Items tab in Trinity Configurations and select File Based Script Rules.
vLw3WqA.png


Select the ItemRules tab in Trinity>Items and select Custom* RTFM!.
WMhXWWE.png


Select your folder location in the folder bar by using the Browse button.
A4tXKKI.png


Hit Reload Script rules in this screen or start/stop your bot and my item rules should be operational!

(Optional) Loot Rule Configuration
If you feel like the default loot rule values are "too tight" head to your loot rule folder and open rare.dis with any text editor.

On line 25-29 you should find the following code:
Code:
// Gniller Calculations

// GNILLERCONFIG, the higher this number is: the more items are kept, Default: 100. Multiplies calculation outcome to easiliy increase/decrease items kept.
// WARNING: Lowering this number may result in items trashed to much!
@GNILLERCONFIG := 100

Edit @GNILLERCONFIG := 100 to any amount you feel comfortable with, default is 100. Lower is not recommended as some items may no longer be able to be stashed.

Most people report 100-150 the values used depending on the time you want to spend checking your stash.

FAQ
My bot does not seem to pick up any rares, have i done something wrong?
Usually not, my pickup rules are tuned to pick up only rare items/ilvls that are able to roll valuable stats. They should pickup ~3.4 items per hour for every 100 items/hour dropped in game (this includes legendaries). These statistics may change over patches.
Recommended: do some more testing and if you haven't picked up any items in hours, there is something wrong.

How to use this for non-English game clients?
ItemRules2 enables us to translate all item names to itemID by enabling the option shown below, all versions of my rules should work in any language this way!
tdC4xkj.png


My DemonBuddy crashes when trying to reload loot rules, what to do?
This is a known ItemRules2 issue, here is a work around:
Setup your trinity to use my item rules (do not hit reload script rules) > Save trinity settings and close trinity configuration panel > Stop/start DemonBuddy !

It may still crash but this way settings are saved and work on a restart of DemonBuddy :)
 
Last edited:
nice ... gona check this ...

it should match with it should match 100'000'000 Mio gold on the eu market ...

but it looks like an other scoring approach ... :-)

Code:
// Gniller Calculations
// Armor
[B]@GNILLER[/B] := (([CRIT%]+([CRITDMG%]*0.1)+([AS%]/1.5)+([ALLRES]*0.1)+([MAXSTAT]/25)+([VIT]/30)+([AVGDMG]/20)+([LIFE%]/3)+([ARMORBONUS]/100)+([LOH]/100))*(1+(([CRIT%]/10)+([CRITDMG%]/100)+([AS%]/15))))

// Weapons
@GNILLERWEP := (([DPS]+[CRITDMG%]+([SOCKETS]*100)+([LOH]/100)+([LS%] * 35)+([MAXSTAT]/4)+([VIT]/6))*([DPS]/1000))
@GNILLERWEPMIGHT := (([DPS]+[CRITDMG%]+([SOCKETS]*100)+([LOH]/100)+([LS%] * 35)+([STR]/4)+([VIT]/6))*([DPS]/1000))
@GNILLERWEPWIZ := (([DPS]+[CRITDMG%]+([SOCKETS]*100)+([LOH]/100)+([LS%] * 35)+([INT]/4)+([VIT]/6))*([DPS]/1000))
@GNILLERWEPDH := (([DPS]+[CRITDMG%]+([SOCKETS]*100)+([LOH]/100)+([LS%] * 35)+([DEX]/4)+([VIT]/6))*([DPS]/1000))

which isnt as accurate like doing rules for each slot separatly ....

Code:
[QUALITY] == "Rare" && [TYPE] == "Gloves" # [[B]@GNILLER[/B]] >= 65
[QUALITY] == "Rare" && [TYPE] == "Amulet" # [[B]@GNILLER[/B]] >= 75
[QUALITY] == "Rare" && [TYPE] == "Ring" # [[B]@GNILLER[/B]] >= 40

thx for the work ... and for making it public ...
 
Last edited:
nice ... gona check this ...

it should match with it should match 100'000'000 Mio gold on the eu market ...

but it looks like an other scoring approach ... :-)

Code:
// Gniller Calculations
// Armor
[B]@GNILLER[/B] := (([CRIT%]+([CRITDMG%]*0.1)+([AS%]/1.5)+([ALLRES]*0.1)+([MAXSTAT]/25)+([VIT]/30)+([AVGDMG]/20)+([LIFE%]/3)+([ARMORBONUS]/100)+([LOH]/100))*(1+(([CRIT%]/10)+([CRITDMG%]/100)+([AS%]/15))))

// Weapons
@GNILLERWEP := (([DPS]+[CRITDMG%]+([SOCKETS]*100)+([LOH]/100)+([LS%] * 35)+([MAXSTAT]/4)+([VIT]/6))*([DPS]/1000))
@GNILLERWEPMIGHT := (([DPS]+[CRITDMG%]+([SOCKETS]*100)+([LOH]/100)+([LS%] * 35)+([STR]/4)+([VIT]/6))*([DPS]/1000))
@GNILLERWEPWIZ := (([DPS]+[CRITDMG%]+([SOCKETS]*100)+([LOH]/100)+([LS%] * 35)+([INT]/4)+([VIT]/6))*([DPS]/1000))
@GNILLERWEPDH := (([DPS]+[CRITDMG%]+([SOCKETS]*100)+([LOH]/100)+([LS%] * 35)+([DEX]/4)+([VIT]/6))*([DPS]/1000))

which isnt as accurate like doing rules for each slot separatly ....

Code:
[QUALITY] == "Rare" && [TYPE] == "Gloves" # [[B]@GNILLER[/B]] >= 65
[QUALITY] == "Rare" && [TYPE] == "Amulet" # [[B]@GNILLER[/B]] >= 75
[QUALITY] == "Rare" && [TYPE] == "Ring" # [[B]@GNILLER[/B]] >= 40

thx for the work ... and for making it public ...

You quite nailed it but i must admit, i might clean some commented code out of it sometime soon :P left it there as "beta-testing back-ups"

Scores are indeed accepted or denied per specific item type, calculations however are done generally.

Crit%,CritDMG and Atkspd multiply the worth of an item as well as count for scoring itself. This results in basically only items getting through that have all of these stats maxed out OR have stuff like maxstatvit (depending on how much as well as how much the previous three stats are on the item)

Weapons have basicly the same calculation but Crit etc. are replaced with overall DPS as multiplying value, meaning 1550 DPS is nice but not good enough while the same item with critdmg% is accepted. This while the worth of critdmg% (etc.) is higher on a weapon with higher DPS. (1550 was my original 2h example, if i remember correctly its a little higher now :))

Many legendaries also use these calculations, usually with a little lower outcome required to be accepted.
 
Last edited:
i just can supervise my bots each 24h
stop butthurt pls :)

and with trinity scoring you can tune up quality of the items too
 
i just can supervise my bots each 24h
stop butthurt pls :)

and with trinity scoring you can tune up quality of the items too

i used to be the same, but since i am using soft rules i am never going back to trinity scoring i rather min/max this one. you should try it, you won't regret, at least soft rules.
 
Hey I just wanted to say thank you for making these

I've had my bot running with them for the past five hours and it's clear that these rules really help effeciency

I'm only hoping that it isn't trashing rings / legendaries I could otherwise sell

Is there any way to get that log viewer app that DarkFriend showed off in the ItemRules thread?
 
Hey I just wanted to say thank you for making these

I've had my bot running with them for the past five hours and it's clear that these rules really help effeciency

I'm only hoping that it isn't trashing rings / legendaries I could otherwise sell

Is there any way to get that log viewer app that DarkFriend showed off in the ItemRules thread?

*promotion "its available on the donators repository ... its perfect for checking if there is a rule that trashes good stuff ... :-)"

ys7BPiz.png
 
Hey I just wanted to say thank you for making these

I've had my bot running with them for the past five hours and it's clear that these rules really help effeciency

I'm only hoping that it isn't trashing rings / legendaries I could otherwise sell

Is there any way to get that log viewer app that DarkFriend showed off in the ItemRules thread?

*promotion "its available on the donators repository ... its perfect for checking if there is a rule that trashes good stuff ... :-)"

As my rules are completely build on ItemRules2 it is of course compatible with all of its features including darkfriends donators Log Viewer. Other than that Trinity offers logs for both stashing and trashing which you could use to check what it stores and trashes :)

Keep in mind, items worth "almost" ?5 are considered trash so expect to see them in the trashlog once in a while :)
 
Reserved :)

(How to install coming soon)
sorry...
but... how to install it ?
1 hour try = i cant install

can i have instructions step by step ?

files *.dis copy to Plugins\GilesTrinity\ItemRules\Rules\soft . choose file based script rules = i have cyclic error..
 
Last edited:
does this work with diablo in another language? like portuguese?

Unless ItemRules2 had some kind of translation in it, i'd say nope sorry :)

sorry...
but... how to install it ?
1 hour try = i cant install

can i have instructions step by step ?

files *.dis copy to Plugins\GilesTrinity\ItemRules\Rules\soft . choose file based script rules = i have cyclic error..

Overwriting soft rule files by my .dis files and selecting soft rules in trinity should do the trick, gonna make a pictures guide sometime soon when I've got the time but it'll tell you the same :)
 
heh but a lot of botter use ru version of diablo 3 because of cheapest price... we need the translation for it may be... it wil be great
 
Back
Top