zozotte Posté(e) le 24 juillet 2015 Signaler Posté(e) le 24 juillet 2015 Bonjour, Pour de la simulation de présence, je génère plusieurs random tous les jours que j'utilises ensuite pour décaler le déclenchement d'actions. J'ai donc créé un VD avec un bouton qui génère 4 random et les stocke dans des labels. Mon soucis c'est qu'à chaque appuie sur le bouton, c'est la même random qui est généré... J'ai fait des test avec une scene et une boucle et c'est toujours la même séquence de random qui est généré (en tout cas pour les 10 premiers...) Est-ce normal ? faut il faire autrement ? Si oui, je vais créer une scène qui tourne en boucle et génère des randoms toute les heures, les stocke dans une variable globale et mon VD ira piocher tous les jours dans cette variable... (pas le plus simple mais ca devrait fonctionner...). Merci pour votre éclairage ! Zozotte
Berale64 Posté(e) le 24 juillet 2015 Signaler Posté(e) le 24 juillet 2015 C'est normal. Lire : http://www.lua.org/pil/18.html You can set a seed for the pseudo-random generator with the randomseed function; its only numeric argument is the seed. Usually, when a program starts, it initializes the generator with a fixed seed. That means that, every time you run your program, it generates the same sequence of pseudo-random numbers. For debugging, that is a nice property; but in a game, you will have the same scenario over and over. A common trick to solve this problem is to use the current time as a seed:
zozotte Posté(e) le 24 juillet 2015 Auteur Signaler Posté(e) le 24 juillet 2015 Merci ! c'est bien ce qu'il me semblait, donc toutes les scenes de simulation de présence qui ne génèrent le math.random() qu'une seule fois déclenchent les actions à la même heure chaque jour Ok donc je continue avec ma scene qui rafraichit en boucle les randoms toutes les heures (je génère plusieurs random que j'enregistre dans une table qui est stockée dans une variable globale en json. quand j'ai besoin d'une variable, je pioche dans cette variable )
Berale64 Posté(e) le 24 juillet 2015 Signaler Posté(e) le 24 juillet 2015 Non, tu fais un math.randomseed(os.time()) pour réinitialiser la fonction random puis math.random() P....n marche pas cet éditeur de texte !!!
sebcbien Posté(e) le 7 août 2015 Signaler Posté(e) le 7 août 2015 Sinon y'a mon YAPS qui fait ça aussi ;-) Sent from my SM-N910F using Tapatalk
Messages recommandés