History UsefulNotes / RandomNumberGenerator

18th Aug '15 8:04:31 PM nombretomado
Is there an issue? Send a Message


One method commonly employed was to start a timer when the console powered up, then grab the current value from that as required. Another method was to modify the current random value by a number based on the controller input each frame. This would appear random to the user. However, through {{Emulation}}, one can actually determine the algorithm in question by reverse-engineering and then provide controller input to get whatever random number you want. In tool-assisted speed running, this is known as "luck manipulation".

to:

One method commonly employed was to start a timer when the console powered up, then grab the current value from that as required. Another method was to modify the current random value by a number based on the controller input each frame. This would appear random to the user. However, through {{Emulation}}, UsefulNotes/{{Emulation}}, one can actually determine the algorithm in question by reverse-engineering and then provide controller input to get whatever random number you want. In tool-assisted speed running, this is known as "luck manipulation".
11th Jul '15 5:17:20 PM nombretomado
Is there an issue? Send a Message


In any modern well written program, the "random" number is generally random enough. Only in the case of encryption (where massive computer power can be harnessed to discover and exploit the tiniest flaw) would there be any problem. Programmers who have the knowledge and desire to do so can ensure that any computer game has all the randomness it needs. On the other hand, it is trivially easy to [[DarthWiki/IdiotProgramming write a random number generator]] ''[[DarthWiki/IdiotProgramming wrong]]'', and it ''was'' done on several occasions. The best known (and most reviled) of them is the infamous IBM-designed RANDU, which failed even the most relaxed definition of the RNG (such as that the numbers it generates must be spread uniformly over the range, which they weren't). Unfortunately, due to the popularity of the [[MainframesAndMinicomputers IBM hardware]] and software that were supplied with it[[note]]RANDU was a part of the FORTRAN scientific library that was bundled with IBM System/360 mainframe, ''the'' most popular, used and cloned computer of the "Big Iron" era.[[/note]], it was ''the'' most widespread RNG of TheSixties and TheSeventies, and even now a lot of scientific results in computing are suspect because it was used to get them.

to:

In any modern well written program, the "random" number is generally random enough. Only in the case of encryption (where massive computer power can be harnessed to discover and exploit the tiniest flaw) would there be any problem. Programmers who have the knowledge and desire to do so can ensure that any computer game has all the randomness it needs. On the other hand, it is trivially easy to [[DarthWiki/IdiotProgramming write a random number generator]] ''[[DarthWiki/IdiotProgramming wrong]]'', and it ''was'' done on several occasions. The best known (and most reviled) of them is the infamous IBM-designed RANDU, which failed even the most relaxed definition of the RNG (such as that the numbers it generates must be spread uniformly over the range, which they weren't). Unfortunately, due to the popularity of the [[MainframesAndMinicomputers [[UsefulNotes/MainframesAndMinicomputers IBM hardware]] and software that were supplied with it[[note]]RANDU was a part of the FORTRAN scientific library that was bundled with IBM System/360 mainframe, ''the'' most popular, used and cloned computer of the "Big Iron" era.[[/note]], it was ''the'' most widespread RNG of TheSixties and TheSeventies, and even now a lot of scientific results in computing are suspect because it was used to get them.
20th Dec '14 8:02:27 AM henke37
Is there an issue? Send a Message


Note that almost all computer systems are incapable of producing truly "random" numbers on their own. Some have [[http://en.wikipedia.org/wiki/Hardware_random_number_generator special hardware]] which can achieve this, but you'd be hard-pressed to find such hardware in a home computer (It should be noted that one make of x86 [=CPU=], [=VIA=], does have a built-in hardware random number generator that uses line-noise on a certain area of the chip to produce truly random data, but their [=CPU=]s are all designed for use in low-power applications such as netbooks). As such, the random number generator is usually producing a series of numbers based on an initial "seed" value. This "seed" is assumed to be "truly" random, and often will be the time of day (down to the microsecond) when the program started.

to:

Note that almost all computer systems are incapable of producing truly "random" numbers on their own. Some have [[http://en.wikipedia.org/wiki/Hardware_random_number_generator special hardware]] which can achieve this, but you'd be hard-pressed to find such hardware in a home computer (It should be noted that one make of x86 [=CPU=], [=VIA=], does have a built-in hardware random number generator that uses line-noise on a certain area of the chip to produce truly random data, but their [=CPU=]s are all designed for use in low-power applications such as netbooks). As such, the random number generator is usually producing a series of numbers based on an initial "seed" value. This "seed" is assumed to be "truly" random, and often will be the time of day (down to the microsecond) when the program started.
started. Which of course is everything but random.
28th Apr '14 2:03:51 PM MarkLungo
Is there an issue? Send a Message


In {{Tabletop Games}} (such as {{Dungeons And Dragons}}) events and their magnitude can be determined by a simple throw of the dice; {{Video Games}} use a similar mechanism which is usually much less transparent to the user. As these rolls are hidden, a common form of {{Fake Difficulty}} is to have the random number generator roll in favour of a computer player [[TheComputerIsACheatingBastard more often than it does for you]].

For example, {{Role Playing Game}}s will commonly use a random number generator to determine if a blow landed in combat. If so, the random number generator might then be called again to determine if it is a {{Critical Hit}} or not; then yet again to determine what percentage of the character's maximum attack power will be applied to the enemy.

to:

In {{Tabletop Games}} TabletopGames (such as {{Dungeons And Dragons}}) ''TabletopGame/DungeonsAndDragons''), events and their magnitude can be determined by a simple throw of the dice; {{Video Games}} VideoGames use a similar mechanism which is usually much less transparent to the user. As these rolls are hidden, a common form of {{Fake Difficulty}} FakeDifficulty is to have the random number generator roll in favour of a computer player [[TheComputerIsACheatingBastard more often than it does for you]].

For example, {{Role Playing Game}}s will commonly use a random number generator to determine if a blow landed in combat. If so, the random number generator might then be called again to determine if it is a {{Critical Hit}} CriticalHit or not; then yet again to determine what percentage of the character's maximum attack power will be applied to the enemy.
15th Feb '14 5:44:02 AM henke37
Is there an issue? Send a Message

Added DiffLines:

One convenient result is that the seed can be reused when you want the exact same sequence of random numbers again. This is useful for things like recorded gameplay and [[ProceduralGeneration procedurally generated]] content.
28th Jan '14 12:03:20 PM StevieC
Is there an issue? Send a Message


Note that almost all computer systems are incapable of producing truly "random" numbers on their own. Some have [[http://en.wikipedia.org/wiki/Hardware_random_number_generator special hardware]] which can achieve this, but you'd be hard-pressed to find such hardware in a home computer. As such, the random number generator is usually producing a series of numbers based on an initial "seed" value. This "seed" is assumed to be "truly" random, and often will be the time of day (down to the microsecond) when the program started.

to:

Note that almost all computer systems are incapable of producing truly "random" numbers on their own. Some have [[http://en.wikipedia.org/wiki/Hardware_random_number_generator special hardware]] which can achieve this, but you'd be hard-pressed to find such hardware in a home computer.computer (It should be noted that one make of x86 [=CPU=], [=VIA=], does have a built-in hardware random number generator that uses line-noise on a certain area of the chip to produce truly random data, but their [=CPU=]s are all designed for use in low-power applications such as netbooks). As such, the random number generator is usually producing a series of numbers based on an initial "seed" value. This "seed" is assumed to be "truly" random, and often will be the time of day (down to the microsecond) when the program started.
1st Aug '13 3:43:34 AM SeptimusHeap
Is there an issue? Send a Message


In any modern well written program, the "random" number is generally random enough. Only in the case of encryption (where massive computer power can be harnessed to discover and exploit the tiniest flaw) would there be any problem. Programmers who have the knowledge and desire to do so can ensure that any computer game has all the randomness it needs. On the other hand, it is trivially easy to [[DarthWiki/IdiotProgramming write a random number generator]] ''[[DarthWiki/IdiotProgramming wrong]]'', and it ''was'' done on several occasions. The best known (and most reviled) of them is the infamous IBM-designed RANDU, which failed even the most relaxed definition of the RNG (such as that the numbers it generates must be spread uniformly over the range, which they weren't). Unfortunately, due to the popularity of the [[MainframesAndMinicomputers IBM hardware]] and software that were supplied with it[[hottip:*:RANDU was a part of the FORTRAN scientific library that was bundled with IBM System/360 mainframe, ''the'' most popular, used and cloned computer of the "Big Iron" era.]], it was ''the'' most widespread RNG of TheSixties and TheSeventies, and even now a lot of scientific results in computing are suspect because it was used to get them.

to:

In any modern well written program, the "random" number is generally random enough. Only in the case of encryption (where massive computer power can be harnessed to discover and exploit the tiniest flaw) would there be any problem. Programmers who have the knowledge and desire to do so can ensure that any computer game has all the randomness it needs. On the other hand, it is trivially easy to [[DarthWiki/IdiotProgramming write a random number generator]] ''[[DarthWiki/IdiotProgramming wrong]]'', and it ''was'' done on several occasions. The best known (and most reviled) of them is the infamous IBM-designed RANDU, which failed even the most relaxed definition of the RNG (such as that the numbers it generates must be spread uniformly over the range, which they weren't). Unfortunately, due to the popularity of the [[MainframesAndMinicomputers IBM hardware]] and software that were supplied with it[[hottip:*:RANDU it[[note]]RANDU was a part of the FORTRAN scientific library that was bundled with IBM System/360 mainframe, ''the'' most popular, used and cloned computer of the "Big Iron" era.]], [[/note]], it was ''the'' most widespread RNG of TheSixties and TheSeventies, and even now a lot of scientific results in computing are suspect because it was used to get them.
25th Dec '12 2:50:12 PM FordPrefect
Is there an issue? Send a Message


In any modern well written program, the "random" number is generally random enough. Only in the case of encryption (where massive computer power can be harnessed to discover and exploit the tiniest flaw) would there be any problem. Programmers who have the knowledge and desire to do so can ensure that any computer game has all the randomness it needs. On the other hand, it is trivially easy to [[DarthWiki/IdiotProgramming write a random number generator]] ''[[DarthWiki/IdiotProgramming wrong]]'', and it ''was'' done on several occasions.

The best known (and most reviled) of them is the infamous IBM-designed RANDU, which failed even the most relaxed definition of the RNG (such as that the number it generates must be spread uniformly over the range, which they weren't). Unfortunately, due to popularity if the [[MainframesAndMinicomputers IBM hardware]] and software that were supplied with it[[hottip:*:RANDU was a part of the FORTRAN scientific library that was bundled with IBM System/360 mainframe, ''the'' most popular, used and cloned computer of the "Big Iron" era.]], it was ''the'' most widespread RNG of TheSixties and TheSeventies, and even now a lot of scientific results in computing are suspect because it was used to get them.

to:

In any modern well written program, the "random" number is generally random enough. Only in the case of encryption (where massive computer power can be harnessed to discover and exploit the tiniest flaw) would there be any problem. Programmers who have the knowledge and desire to do so can ensure that any computer game has all the randomness it needs. On the other hand, it is trivially easy to [[DarthWiki/IdiotProgramming write a random number generator]] ''[[DarthWiki/IdiotProgramming wrong]]'', and it ''was'' done on several occasions. \n\n The best known (and most reviled) of them is the infamous IBM-designed RANDU, which failed even the most relaxed definition of the RNG (such as that the number numbers it generates must be spread uniformly over the range, which they weren't). Unfortunately, due to the popularity if of the [[MainframesAndMinicomputers IBM hardware]] and software that were supplied with it[[hottip:*:RANDU was a part of the FORTRAN scientific library that was bundled with IBM System/360 mainframe, ''the'' most popular, used and cloned computer of the "Big Iron" era.]], it was ''the'' most widespread RNG of TheSixties and TheSeventies, and even now a lot of scientific results in computing are suspect because it was used to get them.
25th Dec '12 2:49:28 PM FordPrefect
Is there an issue? Send a Message


In any modern well written program, the "random" number is generally random enough. Only in the case of encryption (where massive computer power can be harnessed to discover and exploit the tiniest flaw) would there be any problem. Programmers who have the knowledge and desire to do so can ensure that any computer game has all the randomness it needs. On the other hand it is trivially easy to [[DarthWiki/IdiotProgramming write random number generator]] ''[[DarthWiki/IdiotProgramming wrong]]'', and it ''was'' done on the several occasions.

to:

In any modern well written program, the "random" number is generally random enough. Only in the case of encryption (where massive computer power can be harnessed to discover and exploit the tiniest flaw) would there be any problem. Programmers who have the knowledge and desire to do so can ensure that any computer game has all the randomness it needs. On the other hand hand, it is trivially easy to [[DarthWiki/IdiotProgramming write a random number generator]] ''[[DarthWiki/IdiotProgramming wrong]]'', and it ''was'' done on the several occasions.
1st Dec '12 12:18:20 PM unokkun
Is there an issue? Send a Message


In any modern well written program, the "random" number is generally random. Only in the case of encryption (where massive computer power can be harnessed to discover and exploit the tiniest flaw) would there be any problem. Programmers who have the knowledge and desire to do so can ensure that any computer game has all the randomness it needs. On the other hand it is trivially easy to [[DarthWiki/IdiotProgramming write random number generator]] ''[[DarthWiki/IdiotProgramming wrong]]'', and it ''was'' done on the several occasions.

to:

In any modern well written program, the "random" number is generally random.random enough. Only in the case of encryption (where massive computer power can be harnessed to discover and exploit the tiniest flaw) would there be any problem. Programmers who have the knowledge and desire to do so can ensure that any computer game has all the randomness it needs. On the other hand it is trivially easy to [[DarthWiki/IdiotProgramming write random number generator]] ''[[DarthWiki/IdiotProgramming wrong]]'', and it ''was'' done on the several occasions.
This list shows the last 10 events of 26. Show all.
http://tvtropes.org/pmwiki/article_history.php?article=UsefulNotes.RandomNumberGenerator