Passer au contenu principal

Random Number Generator

En informatique, l'aléatoire n'existe pas (expliquer pourquoi serait long et compliqué). Tout est déterministe et reproductible. Pour pallier à ça, On génère des nombres pseudo-aléatoires, en se basant sur des éléments impossibles à prévoir et manipuler sur une échelle humaine.

Ce processus de génération de nombre aléatoire est appelé le Random Number Generator (souvent appelé "La RNG"). Par vulgarisation, quand on parle de RNG, on parle d'aléatoire.

Seed

Une seed ("graine" en Anglais) est, dans la RNG, l'élément "clé" qui va déterminer toute la génération aléatoire. En général (l'immense majorité du temps), l'algorithme lui-même ne change pas. Seul la seed va changer.

Les critères sur lesquels sont générés ces seed vont varier en fonction des choix des développeurs. On retrouvera notamment:

  • l'heure interne de la console
  • les touches pressées par le joueur
  • le nom du fichier ou les noms donnés aux personnages dans le jeu
  • sur PC, les mouvements de souris du joueur pendant une fenêtre de temps
  • des "planifications aléatoires" (qui ne sont évidemment pas aléatoires mais qui essayent d'en donner l'impression, comme par exemple la table des loots du jeu The Legend of Zelda sur NES)

GdfzsDSsBxev6pcn-zeldaitemdropsnr2.jpg

La seed peut soit être unique pour toute une partie (ce qui arrive parfois ou peut survenir volontairement sur certains romhack, par exemple sur certains randomizer), soit changer régulièrement (le plus souvent, surtout sur les jeux les plus récents). Le fait que la seed soit unique ou non va être grandement influencé par ses critères de génération et va déterminer la faisabilité d'une RNG Manipulation, trick qui consiste à être maître de la génération aléatoire du jeu.