Experimental Study of 29 Polyhedral Dice Using Rolling Machine, OpenCV Analysis (markfickett.com)
enFi writes: All dice are slightly unfair; automating 3k rolls x 29 dice allows detailed exploration. For example: GameScience claims their d20s are fairest, and actually has the fairest die in the study. Chessex d20s are consistently mid-range and all favor the same numbers; Wiz Dice d20s are highly variable (some rival GameScience). Shape differences measurable with calipers account for some of the larger observed differences, but not everything. Read the details for graphs, a video of the Arduino-powered rolling machine, and an explanation of using OpenCV to sort die rolls.
(Disclaimer: I'm the author.)
(Disclaimer: I'm the author.)
Finally, news for nerds, stuff that matters to kill some goddamn bugbears.
Nice try, DICE inc, trying to persuade us with your subliminal, liminal and even superliminal messages!
Back in 1987 I had just purchased my Casio FX-7000G scientific calculator. I read the whole manual, and made program that output a random number 1d20 number and a 1d6 (sword) number with the touch of a button. My fellow D&Ders were reluctant to let me use it for the game, but I assured them, that it was OK. After a few rounds of poor throws, they seemed OK with it. But as the evening went on all my throws were poor. I kept having to run from monsters.
The next day I made a plot of the numbers from the calculator's uniform random number generator. They were not even close to uniform! The histogram showed many more small numbers than large ones! POS!
And that is how I discovered a poor RNG in my calculator using D&D.
>> Can we please stop using physical dice now?
Not a chance. I play with developers...
It's sad to see so many misguided comments under such a nice nerdy article.
(a) More advanced pseudo-random algorithms like Mersenne Twister are perfectly good for almost anything but crypto uses. Even much simpler Linear Congruential Generators (multiply-modulo, or multiply-add-modulo) with good parameters are perfectly good enough for applications like emulating dice. The only tricky part is how to get the seed.
(b) Arduino has an intrinsic capability to get physically random bits as it has analog input pins. Floating pins will provide perfectly usable noise in the lowest bit of the A/D converter output. You probably would be able to influence the bit pattern if you had it under physical control and tried to produce suitable RF interference hard enough (not 100% sure of that, though); but we are still talking about friggin' D&D, right?
It's not the fall that kills you. It's the sudden stop at the end. -Douglas Adams