AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  Connexion  

Partagez | 
 

 random

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
chopsuey
Utilisateur confirmé: Rang ***
avatar

Messages : 523
Localisation : saint etienne
Projet Actuel : All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
...

MessageSujet: random   Sam 22 Mar 2014 - 1:06

Est ce qu'il n'y aurait pas un problème avec le random de GM ?
Je calcul une valeur aléatoire comprise entre par exemple -100 et 100
donc random(200)-100
La valeur obtenu se rajoute à une variable. Je lance le calcul avec une touche et je m’aperçois que si je spam la touche, la variable qui comptabilise les résultats finie toujours par descendre de plus en plus car il ya plus de valeurs négatives que positives.
Ce qui est étrange c'est que j'ai calculé en pourcentage la même chose dans une boucle for avec 100000 itérations
Et je varie toujours entre 49 à 50 % que ce soit pour les résultats positif ou négatif.
Donc dans une boucle il ne semble pas y avoir ce problème... est ce que ça viendrait du fait que les tests random se passent dans la même frame ? Du coup je ne comprend pas trop comment sont calculés ces valeurs aléatoire, est ce qu'il y aurait un rapport avec le temps ou la frame en cours ? Par ce que j'ai un ratio plus équilibré si je spam pas la touche et que j’attends quelques secondes entre chaque tests...

_________________
Spoiler:
 
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
avatar

Messages : 2213
Localisation : Oui

MessageSujet: Re: random   Sam 22 Mar 2014 - 7:29

C'est bizarre ca... Oo
T'es sur que ia pas une connerie au niveau de ton code ? Parce que je vois pas trop ce que t'appelle spammer une touche, à ma connaissance tu peux appuyer qu'une seule fois sur la même touche par step, donc ca expliquerait pas cette histoire de plusieurs random par frame... :/

_________________
Je suis partie sur les ailes du vent et la tempête m'a ramenée.
Revenir en haut Aller en bas
Asu
Utilisateur confirmé: Rang ****
avatar

Messages : 895

MessageSujet: Re: random   Sam 22 Mar 2014 - 8:05

et random_range(-100,100)?

_________________
‎<‎Cysteine‎>‎ nON mais la touche maj s'active/se désactive toute seule
‎<‎Cysteine‎>‎ et a du mal à réponDRE QUANd j'appuie dessus
‎<‎Cysteine‎>‎ et je l'ai démont2? IL Ny a rien DEDANs
Revenir en haut Aller en bas
Chlorodatafile
Utilisateur confirmé: Rang *****
avatar

Messages : 2928
Localisation : Belfort
Projet Actuel :
Paralights

MessageSujet: Re: random   Sam 22 Mar 2014 - 9:35

Le random est fonction de l'heure de l'OS. Smile
Revenir en haut Aller en bas
http://chlorodatafile.tumblr.com/
Térence
Utilisateur confirmé: Rang *****
avatar

Messages : 2213
Localisation : Oui

MessageSujet: Re: random   Sam 22 Mar 2014 - 9:41

Ouais mais ca a rien à voir là je pense... :/ En plus je viens de capter, si avec une boucle for ca marche, bah c'est pas un problème de frame, puisque toute la boucle est exécutée dans le même step. A mon avis c'est qu'il y a une ******* quelque part dans ton code  Yum! 

_________________
Je suis partie sur les ailes du vent et la tempête m'a ramenée.
Revenir en haut Aller en bas
chopsuey
Utilisateur confirmé: Rang ***
avatar

Messages : 523
Localisation : saint etienne
Projet Actuel : All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
...

MessageSujet: Re: random   Sam 22 Mar 2014 - 10:04

"à ma connaissance tu peux appuyer qu'une seule fois sur la même touche par step, "

Oui bien sûr. Je veux dire que j’appuie rapidement sur la touche.
Soundii c'est pareil mais rien d’étonnant c'est plus ou moins la même fonction.

"Le random est fonction de l'heure de l'OS."
Ca pourrait expliquer cette différence entre mes tests manuel ou avec la boucle.

"Ouais mais ca a rien à voir là je pense... :/ En plus je viens de capter, si avec une boucle for ca marche, bah c'est pas un problème de frame, puisque toute la boucle est exécutée dans le même step. A mon avis c'est qu'il y a une ******* quelque part dans ton code"

Oui justement c'est pour ça que je parlais de frame ou de temps c'est par ce que la seul chose qui différencie mes tests manuel de la boucle c'est que les calculs de la boucle sont exécuté dans le même step.

Mon code est tout simple:

if keyboard_check_pressed(vk_enter)
{
test=random(mise*2)-mise
argent+=test
}

_________________
Spoiler:
 


Dernière édition par chopsuey le Sam 22 Mar 2014 - 10:11, édité 2 fois
Revenir en haut Aller en bas
onilink_
Modérateur
avatar

Messages : 8923
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

MessageSujet: Re: random   Sam 22 Mar 2014 - 10:09

Chlorodatafile a écrit:
Le random est fonction de l'heure de l'OS. Smile
Complètement faux. Le random est fonction de la seed, et à chaque appel de random la seed est modifiée en fonction de la seed précédente.
Le seul moment ou l'horloge est prise en compte est pour l'initialisation de la seed, donc a part s'il appelle a chaque fois cette fonction (ce qui n'est absolument pas une bonne idée) le soucis ne viens pas de la.

_________________
                 
Revenir en haut Aller en bas
Chlorodatafile
Utilisateur confirmé: Rang *****
avatar

Messages : 2928
Localisation : Belfort
Projet Actuel :
Paralights

MessageSujet: Re: random   Sam 22 Mar 2014 - 10:59

Si la seed est l'heure de l'OS au lancement, alors c'est fonction de l'heure malgré tout.  mop 

Enfin bon, j'avoue que je ne savais pu exactement de quel manière il en dépendait. Wink
Revenir en haut Aller en bas
http://chlorodatafile.tumblr.com/
onilink_
Modérateur
avatar

Messages : 8923
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

MessageSujet: Re: random   Sam 22 Mar 2014 - 18:16

Oui enfin dans pas mal de jeux (avec génération procédurale) on préfère choisir une seed déterminée, et je crois que GMS utilise une seed constante pour simplifier le debug, donc on a rarement un soucis avec l'horloge :p

En revanche pour la 'précision' de random ça dépend de l'algo utilisé par GM, et je sais pas du tout comment savoir duquel il s'agit...

_________________
                 
Revenir en haut Aller en bas
Contenu sponsorisé




MessageSujet: Re: random   

Revenir en haut Aller en bas
 
random
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» kabila-deploie-ses-oreilles-electroniques-en-rdc-par-le-dispositif-random-desc

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Game Maker-
Sauter vers: