Stats 101: Understanding RNG in Diablo 3

This is from a post I made on the forums regarding RNG. The thread is here:
http://us.battle.net/d3/en/forum/topic/6193839632

The Simplest Case

To begin, consider a coin flip. Assuming the coin is fair, it has a 50% chance to land Heads (H) and a 50% chance to land Tails (T). Thus, if you throw 100 coins, you would expect 50 H and 50 T. In summary:

Experiment: 100 coin flips
Expectation: 50 H, 50 T

But if you actually try this out, you will find, perhaps surprisingly, that you will most likely not get exactly 50 H and 50 T. You might get 46/54. Or 57/43. Or 51/49. Or even, more rarely, 33/67.

As it turns out, the chance to get exactly 50/50 is only 7.959%.

This distribution is called a Binomial Distribution and the formula is [100!/(50!*50!)] * 0.5^100. For more information, see
http://en.wikipedia.org/wiki/Binomial_distribution

Diablo 3 Item Drops

Among other things, there have been many unfounded claims of a “stealth nerf” to drop rates of ilvl 63 gear. According to Blizzard, the drop rate of ilvl 63 gear in Act 1 Inferno is 4.8%http://us.battle.net/d3/en/blog/6214196/Diablo_III_Hotfixes_-_June_Updated_629-6_29_2012

Let us round this to 5% for convenience.

Now let us say someone collects 100 rare items in Act 1 Inferno. He would expect 5 of them to be of ilvl 63 quality.

Experiment: 100 rare items
Expectation: 5 ilvl 63 rares, 95 non-ilvl 63 rares

The chance to get exactly 5 ilvl 63 rares, however, is not very high: it is only 18.0%. (The formula is [100!/(5!*95!)] * .05^5 * .95^95.) What this means is that 82% of the time, you will not get 5 ilvl 63 rares.

Here is a table of the chance to obtain X ilvl 63 rares in 100 random Act 1 rares:
0 : 0.592%
1 : 3.116%
2 : 8.118%
3 : 13.958%
4 : 17.814%
5 : 18.002% (Expected Value)
6 : 15.001%
7 : 10.603%
8 : 6.487%
9 : 3.490%
10: 1.672%
11: 0.720%

It falls off rapidly after that.

Point is, if you add up the chances for 0, 1, 2, 3, or 4 drops, you end up with a 41% to find less than 5 rares, even though 5 is the expected number!

So a post that simply says “I farmed X rares, but only Y of them were ilvl 63” does not in any way imply the RNG system is broken. Fact is, there is a 41% chance to find less than 5 rares in a set of 100. This is why people often say, “Random is random.”

Short version of the table:

Chance to find X ilvl 63 rares in a random set of 100 rares in Act 1 Inferno
< 5: ~41%
= 5: ~18%
> 5: ~41%

Every time you find more than 5 or less than 5, that is NOT a sign that Blizzard stealth buffed or stealth nerfed the drop rate.

Of course, even if you find 5 ilvl 63s, the chance of any of them being remotely valuable in the current economy is absurdly small. See the thread linked at the top for more information on that. Moving on…

The same holds for goblin spawn rates, item stat rolls, etc. Every time you find >3 or ❤ goblins in 10 runs of the Ancient Path (the expectation is 3, or 30% of 10), that is not a sign that there was a stealth buff or stealth nerf.

Confusion Over Random Versus Pseudorandom

Some people have tried to argue that Diablo 3’s system is not random, and that it is pseudorandom. It turns out these people have been lost to semantics.

True randomness has the implication that sometimes you do not get what you expected, like in the examples above. In true randomness, it is possible to flip 10 Heads in a row.

A pseudorandom generator, on the other hand, might change some parameters to make it “appear” to be random, but in fact be less random. For example, a pseudorandom generator might see 5 Heads in a row, and then massively increase the chance for the next flip to be Tails.

So if Diablo 3 were pseudorandom, then when you don’t get an ilvl 63 item for a while, the drop rate of ilvl 63 items is dynamically increased, making the next item more likely to be ilvl 63. And when you get a lot of ilvl 63 items in a row, the drop rate is dynamically decreased. So your chance to find exactly 5 ilvl 63 items in 100 items will likely be higher than 18%.

Since Diablo 3, as far as we know, uses something that is practically true randomness, you can have lucky and unlucky streaks. When this happens, the Gambler’s Fallacy often kicks in. When someone doesn’t find an ilvl 63 item in a while, they think that one is “due” any moment, when in fact, the drop rate stays exactly the same, so their chance of finding an ilvl 63 item is just as low as before. See
http://en.wikipedia.org/wiki/Gambler%27s_fallacy

Edit: There are other types of pseudorandom as well, such as using the units digit in the nanosecond clock on your computer to generate seed numbers. For instance, the time right now might be 102958208392, but in approximately one second, the clock might say 103952854849.

Let’s just say that, in a super simplified example, that if the last 2 digits say 95, 96, 97, 98, or 99, you are given an ilvl 63 (5% chance). Even if you try to time the second perfectly, you cannot possibly get to nanosecond precision. This is method is practically random and, being practically random, thus explains why people think they have bad streaks of ilvl 63 finding.

New Section: The Many Layers of RNG

Many people in the comments wanted me to talk about why the average drop seems to be terrible. While the relative aspect of it is dealt with in the post linked all the way at the top, I suppose I could add a brief blurb about it here, in a thread that deals fully with RNG.

There are 5 layers of RNG. In the order they appear or roll:

  • item level
  • # of affixes
  • which affixes
  • which tiers the affixes rolled
  • the final number within that tier’s stat range

In Diablo 2, which used roughly the same system (though it was much less gear-based, so it feels different), your rolls could completely terrible on a couple of these steps, and you could still get a pretty good item.

But in Diablo 3, you have to hit every step almost perfectly to get even a remotely decent item. Doesn’t have a high enough item level? Bad item. Low # of affixes? Bad item. Wrong affixes? Bad item. Low affix tiers? Bad item. Low numbers? Bad item.

What is the chance of rolling a godly item? Just using wild estimations here, suppose you are farming Act 1, it doesn’t really matter. The chance to get an ilvl 63 is 4.8%, but we’ll round this all the way up to 10%. The chance to get a 6 properties is say ~10%. The third step, however, is a killer one. You have to roll exactly the affixes you need for 6 affixes, so the chance is absurdly low, possibly lower than 0.0001%. But let’s just say it’s 0.0001%. Then you need to roll the right tier. Say this is around 10%, but this is for each affix, so the total factor on the item needs to be counted 6 times, or 0.0001%. Finally, to roll high numbers on those, let’s say you want in the top 10%, counted 6 times, or 0.0001%.

Therefore, the chance to obtain a godly item is somewhere on the order of magnitude of .1*.1*.000001*.000001*.000001 = 0.00000000000000000001.

Basically, the chance of this happening is like drawing 2 Royal Flushes in a row, and then getting struck by lightning.

Summary

  • The chance to obtain the expected number, whether on item level, goblin spawn rates, or something else, is actually pretty low.
  • Even though Act 1 has a 4.8% (near 5%) chance to drop ilvl 63 items, the chance of actually finding 5 ilvl 63 items in a random set of 100 drops from Act 1 is only 18%.
  • There is a 41% chance of finding less than 5 ilvl 63 drops, and a 41% chance of finding more than 5 ilvl 63 drops.
  • Getting an unexpected result is normal, and even probable. It does not mean Blizzard stealth-changed something.
  • For all practical purposes, the RNG in Diablo 3 is true random and not pseudorandom. But as shown in the post, pseudorandom might in fact be better psychologically for players.
  • There are many layers of RNG in the item roll, which makes it extremely difficult, if not practically impossible, to roll a powerful item.
  • American math education is in a deplorable condition.
  • “Random is random.”
Advertisements
This entry was posted in Forums, Items. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s