This is based on a post I wrote for my guild forums, when the superstition got a little out of hand. Thought it might come in useful for others. Dissect as needed. Farmbuyer@Kilrogg 20:06, 29 April 2008 (UTC)
The original "completely wrong" post claimed that the previous random number would be a factor in the next random number. This is not the case - a completely new seed is used each time. The numbers are completely independent of each other. Really. This is how it works. It would be entirely illogical for a RNG to use the previous output as a seed.
The new explanation needs some work, but it's actually factually correct unlike the bits that were removed.
- I'm going to explain this exactly once, and then I'm going to ask the admins to investigate this edit war and possible vandalism.
- Consuming a seed for every random number would use up the seeds way, way too quickly. No PRNG in the world works like that. If you don't understand that, then you need to go to Wikipedia and look up how PRNGs function. The entire sequence is repeatable if you use the same number as the seed -- end of discussion. That's how PRNGs are judged. The seed is used once per sequence.
- Jesus, you really have no idea. The previous random number is not a factor, and nowhere on any other site, including the source you linked, does it claim at it is. You can put an accuracy tag up if you want, but you'll get insta-grilled when anyone with basic knowledge of the subject (or capability to read) sees it.
- The numbers don't repeat, or use the previous output, because that would be stupid when you can just obtain more seeds to generate more numbers. Most use the time as a seed which can be obtained instantly from the system to the degree of milliseconds, meaning a modern processor can grab hundreds of different seeds per second. Think about it. There's no disputing that an output can be repeated, but it doesn't happen because in any properly-designed system a new seed is obtained so that the system has fresh data to deal with instead.
prng and seeds Edit
I reverted the massive "this was completely wrong" erasure because, well, it is in fact correct. You can follow the link given to the source code to see that this is *exactly* how it behaves. I also reverted it because the replacement text does not (IMNSHO) do an acceptable job of explaining the process for non-technical players.