
![]() |
Pandora's wrote:pauljathome wrote:I am a computer programmer and your friends are only partly right.
A GOOD random generator is going to be pretty darn random, certainly WAY more random than dice rolled in a hand the way gamers do. There is a reason when money is involved (eg, craps) dice are shaken very vigorously.
Bad random number generators are still quite likely better than most dice rolled at most tables.
Really bad generators and programmers do, however, exist
Mostly this. Technically most computers make pseudorandom numbers, which means they are not truly random in the statistical sense. With the correct information, you can predict the result, but that only matters when a sophisticated attacker is willing to take the time. For the purpose of everything but computer security, pseudorandom is much better than dice.
If you happen to really care, it is possible to generate true random numbers using special hardware that reads white noise created by solar particles. That's the nuclear option for combating dice cheaters :)
For further fun, note that some video games don't just stop at generating a random number between X and Y, they do other silly stuff that throws a wrench into the mix.
For example, in some of the Fire Emblem games they roll a d% twice and average the result for determining if you hit. This means an 80% hit chance is actually more like a 94% hit chance, while a 20% chance is closer to 6%. Only a 50% remains unchained.
Other games will skew the random results based on previous results. So if you got lots of good rolls it might deliberately force a bad roll to keep things "even". Or visa-versa, of course.
Many games save where they are in the psuedo-random sequence when you save your game. This means that if you reload and do the same things in the same order, the same things will happen. This doesn't mean that the RNG is broken! It's just to prevent people from reloading until they win. (I think X-Com does this.)
In other words, never...
Sorry for reopening old wounds but I wanted to tell a story.
I'm a DBA and I've been a programmer for several years.First time I encountered an obvious problem with random numbers generated on a computer was when preparing a mod for Quake so I ended creating my own random generator function, which still is not random but far more random than the original in the API.
A few years ago I programmed an aplication to check the diference between 4d6 keep 3 highest and 2d6+6 (sort answer: 2d6+6 excels the other by much) as a checking for some friends, I did it in Delphi 6 and the random functions were AWFULLY wrong so I ended recoding my random generator function which I recalled for long years before.
And if you are curious how the function worked i just created a huge "random" number and then took the mod of that number divided on the dice I wanted to roll (+1, of course) so at the end even if the numbers randomized by the original function were not really random, it served it purpose more than well on my tests.