# How do similar procs interact?

Tried looking around for an answer to this question but most guides only talk about specific items. On a lot of the loot that I get there are generic procs (`X% chance to XYZ on hit`).

If I have multiple items that have the same generic proc are these all separate rolls or one single roll for that effect? For example, lets say I have 3 items with `x% chance to blind on hit`. A has 1%, B Has 1.5 % and C Has 2.5%. Does this translate into a single roll with 5% chance to blind, or just 3 separate rolls?

• For the specific items you're referencing, are all the chances separate rolls or one single roll? I would expect it to be consistent in general. May 28, 2014 at 22:30
• Can you give an example of two items with same proc?
– ykb
May 29, 2014 at 9:08
• @ykb edited for example clarity May 30, 2014 at 0:26
• @worseone what I meant to ask for, is an example of in-game items that have the same effect proc. I just can't recall any actually sharing one...
– ykb
May 30, 2014 at 7:42
• @ykb: worseone is talking about generic items, with "Chance to Blind on Hit", "Chance to Fear on Hit", etc, as one of their random modifiers, not specific items. May 30, 2014 at 7:44

### We might never know.

The only way to know this is by looking at the code. While players are quite crafty with backwards-engineering game mechanics, I highly doubt someone will figure this out, since the difference is just too small notice.

Then again, this means it does not impact gameplay at all.

### How small is it?

According to this list I found on reddit, the maximum proc chance for generic items is 4.5%.

I have written a small Python script that loops over all unique permutations of 3 items with the same proc, ranging from 0 to 4.5 on each item, calculates the difference in chance between `X+Y+Z` (added proc chance) and `1-(1-X)*(1-Y)*(1-Z)` (seperate proc chances), and spits out the maximum difference, as well as the average.

``````M=46 #Python range() does not include the upper bound, uses integers.
a=[]
for i in range(M):
for j in range(i,M):
for k in range(min(1,j),M):
a.append(((i+j+k)/10)-((100-100*(1-i/1000)*(1-j/1000)*(1-k/1000))))
print(max(a),sum(a)/len(a))
``````

The maximum discrepancy is with three items with a chance of 4.5%, and is 0.60%. which means 13.5% proc chance with the additive calculation and 12.9% with the separate calculation.

The average discrepancy is around 0.15%. As I said above, this is too small to notice in regular gameplay. If someone has 3 4.5% items, and has singled out enemies and hit them (optimally with a regular attack) long enough to get statistically large amounts of data, feel free to answer this question.

### Logical conclusion, but pure conjecture on my part

With differences so small as to not impact gameplay, I don't think someone took the effort to program an additive calculation into the game. With a separate calculation, all of these effects can be handled independently and without any crosslinking.

• There are defintely higher rolls possible: Blind Faith or The Sultan of Blinding Sands for example, in a very short test it did not seem/feel like it was stacking... so it could be that the desciption actually is correct `chance to` instead of `chance increased by` for crit for example Jun 6, 2014 at 22:01