• 0

posted a message on The Probability of Finding a Zod Rune
Quote from Lt. Venom

I think you can wait another 60 days.

Other than that, nice work. Professor should give you credit for doing that.

Thank you! You're right! I think it will be awesome to start fresh at the release. Another 59 days, then Diablo will get his/her face smashed!
Posted in: Diablo II
• 0

posted a message on The Probability of Finding a Zod Rune
I just started a course in mathematical statistics. I found an interesting formula that computes the probability of something happening, given the chance of it happening and the number of times the chance occurs.

P(find) = 1-(1-P(drop))^(n)
where
P(find) = the probability of finding a Zod
P(drop) = the probability of a Zod drop
n = drops

The drop rates of the Runes (Diablo II) can be found in our wiki and it gave me the drop rate of a Zod rune being 0.00003% chance.

Wich gives:
P(drop) = 0.00003/100
n = 10^8 (100 million)

To be 99.999% sure you get a Zod rune you have to get 38 376 412 drops!

But what if you take crafting into account? I wrote this MATLAB file to make an experiment. It's not 100% valid as the random number generator (RNG) in MATLAB isn't a true RNG. It's based on an algorithm and is supposed to give you the same result if you restart the program and do another run. I may have to do another version of this experiment if I find a better way to compute it. (=Have gone to more than 2 lectures in mathematical statistics).

I inserted Runes (Diablo II) stats and Horadric Cube Recipes (Diablo II) into my MATLAB code:

%Baal runs to find or craft a Zod rune

El = 50.0570/100;
Eld = 35.7067/100;
Tir = 25.2019/100;
Nef = 17.3264/100;
Eth = 18.1371/100;
Ith = 12.3528/100;
Tal = 15.2770/100;
Ral = 10.3674/100;
Ort = 10.8664/100;
Thul = 7.3346/100;
Amn = 6.7373/100;
Sol = 4.5255/100;
Shael = 3.5940/100;
Dol = 2.4055/100;
Hel = 1.8576/100;
Io = 1.2409/100;
Lum = 0.9323/100;
Ko = 0.6222/100;
Fal = 0.4701/100;
Lem = 0.3136/100;
Pul = 0.2361/100;
Um = 0.1574/100;
Mal = 0.1352/100;
Ist = 0.0901/100;
Gul = 0.0011/100;
Vex = 0.0008/100;
Ohm = 0.0011/100;
Lo = 0.0004/100;
Sur = 0.0004/100;
Ber = 0.0002/100;
Jah = 0.0002/100;
Cham = 0.0001/100;
Zod = 0.00003/100;

nEl = 0;
nEld = 0;
nTir = 0;
nNef = 0;
nEth = 0;
nIth = 0;
nTal = 0;
nRal = 0;
nOrt = 0;
nThul = 0;
nAmn = 0;
nSol = 0;
nShael = 0;
nDol = 0;
nHel = 0;
nIo = 0;
nLum = 0;
nKo = 0;
nFal = 0;
nLem = 0;
nPul = 0;
nUm = 0;
nMal = 0;
nIst = 0;
nGul = 0;
nVex = 0;
nOhm = 0;
nLo = 0;
nSur = 0;
nBer = 0;
nJah = 0;
nCham = 0;
nZod = 0;

%Gems
chipped_topaz = 0;
chipped_amethyst = 0;
chipped_sapphire = 0;
chipped_ruby = 0;
chipped_emerald = 0;
chipped_diamond = 0;
flawed_topaz = 0;
flawed_amethyst = 0;
flawed_sapphire = 0;
flawed_ruby = 0;
flawed_emerald = 0;
flawed_diamond = 0;
topaz = 0;
amethyst = 0;
sapphire = 0;
ruby = 0;
emerald = 0;
diamond = 0;
flawless_topaz = 0;
flawless_amethyst = 0;
flawless_sapphire = 0;
flawless_ruby = 0;
flawless_emerald = 0;

baal_runs=0;

while(nZod == 0)

%El rune
if(rand(1) <= El)
nEl = nEl + 1;
end
if(nEl >= 3)
nEld = nEld + 1;
nEl = nEl - 3;
end

%Eld rune
if(rand(1) <= Eld)
nEld = nEld + 1;
end
if(nEld >= 3)
nTir = nTir + 1;
nEld = nEld - 3;
end

%Tir rune
if(rand(1) <= Tir)
nTir = nTir + 1;
end
if(nTir >= 3)
nNef = nNef + 1;
nTir = nTir - 3;
end

%Nef rune
if(rand(1) <= Nef)
nNef = nNef + 1;
end
if(nNef >= 3)
nEth = nEth + 1;
nNef = nNef - 3;
end

%Eth rune
if(rand(1) <= Eth)
nEth = nEth + 1;
end
if(nEth >= 3)
nIth = nIth + 1;
nEth = nEth - 3;
end

%Ith rune
if(rand(1) <= Ith)
nIth = nIth + 1;
end
if(nIth >= 3)
nTal = nTal + 1;
nIth = nIth - 3;
end

%Tal rune
if(rand(1) <= Tal)
nTal = nTal + 1;
end
if(nTal >= 3)
nRal = nRal + 1;
nTal = nTal - 3;
end

%Ral rune
if(rand(1) <= Ral)
nRal = nRal + 1;
end
if(nRal >= 3)
nOrt = nOrt + 1;
nRal = nRal - 3;
end

%Ort rune
if(rand(1) <= Ort)
nOrt = nOrt + 1;
end
if(nOrt >= 3)
nThul = nThul + 1;
nOrt = nOrt - 3;
end

%Thul rune
if(rand(1) <= Thul)
nThul = nThul + 1;
end
if(nThul >= 3)
nAmn = nAmn + 1;
nThul = nThul - 3;
chipped_topaz = chipped_topaz + 1;
end

%Amn rune
if(rand(1) <= Amn)
nAmn = nAmn + 1;
end
if(nAmn >= 3)
nSol = nSol + 1;
nAmn = nAmn - 3;
chipped_amethyst = chipped_amethyst + 1;
end

%Sol rune
if(rand(1) <= Sol)
nSol = nSol + 1;
end
if(nSol >= 3)
nShael = nShael + 1;
nSol = nSol - 3;
chipped_sapphire = chipped_sapphire +1;
end

%Shael rune
if(rand(1) <= Shael)
nShael = nShael + 1;
end
if(nShael >= 3)
nDol = nDol + 1;
nShael = nShael - 3;
chipped_ruby = chipped_ruby +1;
end

%Dol rune
if(rand(1) <= Dol)
nDol = nDol + 1;
end
if(nDol >= 3)
nHel = nHel + 1;
nDol = nDol - 3;
chipped_emerald = chipped_emerald +1;
end

%Hel rune
if(rand(1) <= Hel)
nHel = nHel + 1;
end
if(nHel >= 3)
nIo = nIo + 1;
nHel = nHel - 3;
chipped_diamond = chipped_diamond +1;
end

%Io rune
if(rand(1) <= Io)
nIo = nIo + 1;
end
if(nIo >= 3)
nLum = nLum + 1;
nIo = nIo - 3;
flawed_topaz = flawed_topaz +1;
end

%Lum rune
if(rand(1) <= Lum)
nLum = nLum + 1;
end
if(nLum >= 3)
nKo = nKo + 1;
nLum = nLum - 3;
flawed_amethyst = flawed_amethyst +1;
end

%Ko rune
if(rand(1) <= Ko)
nKo = nKo + 1;
end
if(nKo >= 3)
nFal = nFal + 1;
nKo = nKo - 3;
flawed_sapphire = flawed_sapphire +1;
end

%Fal rune
if(rand(1) <= Fal)
nFal = nFal + 1;
end
if(nFal >= 3)
nLem = nLem + 1;
nFal = nFal - 3;
flawed_ruby = flawed_ruby +1;
end

%Lem rune
if(rand(1) <= Lem)
nLem = nLem + 1;
end
if(nLem >= 3)
nPul = nPul + 1;
nLem = nLem - 3;
flawed_emerald = flawed_emerald +1;
end

%Pul rune
if(rand(1) <= Pul)
nPul = nPul + 1;
end
if(nPul >= 2)
nUm = nUm + 1;
nPul = nPul - 2;
flawed_diamond = flawed_diamond +1;
end

%Um rune
if(rand(1) <= Um)
nUm = nUm + 1;
end
if(nUm >= 2)
nMal = nMal + 1;
nUm = nUm - 2;
topaz = topaz +1;
end

%Mal rune
if(rand(1) <= Mal)
nMal = nMal + 1;
end
if(nMal >= 2)
nIst = nIst + 1;
nMal = nMal - 2;
amethyst = amethyst +1;
end

%Ist rune
if(rand(1) <= Ist)
nIst = nIst + 1;
end
if(nMal >= 2)
nGul = nGul + 1;
nIst = nIst - 2;
sapphire = sapphire +1;
end

%Gul rune
if(rand(1) <= Gul)
nGul = nGul + 1;
end
if(nGul >= 2)
nVex = nVex + 1;
nGul = nGul - 2;
ruby = ruby +1;
end

%Vex rune
if(rand(1) <= Vex)
nVex = nVex + 1;
end
if(nVex >= 2)
nOhm = nOhm + 1;
nVex = nVex - 2;
emerald = emerald +1;
end

%Ohm rune
if(rand(1) <= Ohm)
nOhm = nOhm + 1;
end
if(nOhm >= 2)
nLo = nLo + 1;
nOhm = nOhm - 2;
diamond = diamond +1;
end

%Lo rune
if(rand(1) <= Lo)
nLo = nLo + 1;
end
if(nLo >= 2)
nSur = nSur + 1;
nLo = nLo - 2;
flawless_topaz = flawless_topaz +1;
end

%Sur rune
if(rand(1) <= Sur)
nSur = nSur + 1;
end
if(nSur >= 2)
nBer = nBer + 1;
nSur = nSur - 2;
flawless_amethyst = flawless_amethyst +1;
end

%Ber rune
if(rand(1) <= Ber)
nBer = nBer + 1;
end
if(nBer >= 2)
nJah = nJah + 1;
nBer = nBer - 2;
flawless_sapphire = flawless_sapphire +1;
end

%Jah rune
if(rand(1) <= Jah)
nJah = nJah + 1;
end
if(nJah >= 2)
nCham = nCham + 1;
nJah = nJah - 2;
flawless_ruby = flawless_ruby +1;
end

%Cham rune
if(rand(1) <= Cham)
nCham = nCham + 1;
end
if(nCham >= 2)
nZod = nZod + 1;
nCham = nCham - 2;
flawless_emerald = flawless_emerald +1;
end

%Zod rune
if(rand(1) <= Zod)
nZod = nZod + 1;
end

baal_runs = baal_runs + 1;
end

The results from first run:
You only have to do 509 329 Baal runs!
You also need:

22 104 Chipped Topaz
18 741 Chipped Amethyst
13 876 Chipped Sapphire
10 698 Chipped Ruby
7 610 Chipped Emerald
5 700 Chipped Diamond
4 017 Flawed Topaz
2 914 Flawed Amethyst
2 019 Flawed Sapphire
1 488 Flawed Ruby
1 027 Flawed Emerald
1 094 Flawed Diamond
941 Topaz
825 Amethyst
0 Sapphire
2 Ruby
1 Emerald
3 Diamond
2 Flawless Topaz
1 Flawless Amethyst
1 Flawless Sapphire
2 Flawless Ruby
1 Flawless Emerald

For a proper result one should do a bunch of runs and do statistics of them to get a usefull result. But it takes a while for the computer to do one run, so not this time.

If you like my crazy calculations, please give me a comment and if you have a spare beta key... I wouldn't mind it.

Have a nice day!
Posted in: Diablo II
• 0

posted a message on Diablo III Launching May 15 – Digital Pre-Sales NOW OPEN
Where is the big countdown clock on the front page?
Posted in: News & Announcements
• 0

posted a message on Diablo III Launching May 15 – Digital Pre-Sales NOW OPEN
Jaay! Been wating for this since 2008! Can't believe we finaly got a date (Me and D3^^)!
Posted in: News & Announcements
• 0

I just wonder about these videos. They are nice but runes isn't in beta, right? And you can't spawn enemies with an hotkey either? Are they made by Dokaroth?
Posted in: News & Announcements
• 0

posted a message on Is It Soon Soon™?
Back in the good old days when D3 was announced I was hoping for a Q3-4 2010 release. Hahaha!

And the game is still in development... got to be a good game!
Posted in: News & Announcements
• 0

posted a message on Is It Soon Soon™?
Well done Don_guillotine! As always I enjoy reading your article: very well written, impartial arguments and cold logics.

Yet I personaly don't believe in a january release, delaying a game (thats been under developments for... I don't know but many years) for just 1 month does not make sense. +Blizzard employes working 24/7 during Christmas? At least 2 more months of development time will give us D3 in late February - mid or late March.

Either way. One day soon™ we will all know who was right
Posted in: News & Announcements
• 0

posted a message on To Pillar or Not to Pillar
Wonder what it will look like with runes?
Posted in: News & Announcements
• 0

posted a message on Diablo 3 Beta Key Sweepstakes
The Diablo 3 Facebook page has 1 202 295 likes (it only had 1 200 061 ~30 min ago), that's 2000 likes in 30 min!

2000 beta keys / 1 202 295 likes = 0.166% chance to win. I do hate to know my maths!

During the time this post was written, the FB page got another 200... 270... 365 likes!
Posted in: Diablo III General Discussion
• 0

posted a message on Beta Key Contest #2
Posted in: News & Announcements
• 0

posted a message on Beta Key Contest #2
Posted in: News & Announcements
• 0

posted a message on Diablo 3 Has Officially Been Pushed Back
This is good for my studies! If Diablo 3 was released just before my christmas exams, my studies would be completely screwed up. Think positive!
Posted in: News & Announcements
• 0

posted a message on Closed Beta Begins
Beta is Live! Hell yea!
Posted in: News & Announcements
• 0

posted a message on DiabloFans Tools: Diablo 3
EDIT: OK, Barb skills all fixed! Refresh if it's still showing the Wizard skills.

Are you sure this was a mistake Sixen? We all know how much you prefer the Wizard before the Barb.
Posted in: News & Announcements