header
Accueil
Règles
Les 5 Races
Histoire
Classements
Forums
Inscriptions
Jouer son Trõll
Packs Graphiques
Goodies
Nous Contacter
Soutenir le Jeu.
Notre Boutique.
Liens
Webring
Crédits
 
  Ze Calendrier
calendar
 MountyHall
Référencé sur
Tour de Jeu
Ludimail
Jeux Alternatif
 
HG
Nous sommes le 19° jour de la Limace du 24° cycle après Ragnarok
HM HD
 
 
BG     BD
 Bienvenue Invité     S'enregistrer    Connexion Search the Forum   Display List of Forum Members
Forums Tous les Forums
ligne Forum Des Questions ?
DON MountyHall
Modérateurs de ce forum : Aghabeu, Dabihul, Grankausto, Loinvu, Madère, Mamoune, Modérateur 6, Modérateur1, Modérateur2, Modérateur3, Modérateur4, Modérateur5, Mr x, Rouletabille, Schtroumpf, TilK, VYS, Xaruth

Avant de poster, merci de vérifier que la réponse à votre question ne se trouve

N'hésitez pas également à utiliser le moteur de recherche du forum qui vous permettra de trouver si la question a déjà été abordée.

Les joueurs de MountyHall ont regroupé des montagnes d'informations sur le jeu dans l'encyclopédie MountyPedia. Il serait bon de la consulter avant de poser une question dans ce forum.


Version imprimable

#. Message de Zog Zog le 26-11-2003 à 16:56
  [Ami de MountyHall]
128 - ( )
Pays: France  Inscrit le : 23-05-2002  Messages: 1354 (Trõll de Compèt')   Citer Citer

j'aimerais connaitre la fonction aléatoire EXCAT utilise pour faire des tests, merci.


#. Message de VYS le 26-11-2003 à 18:03
  [MH Team]   [Grand Créateur]  [Ami de MountyHall]
175 - Tarash Tagueule (Kastar 42)
- Lonely Trollboy -
Pays: Belgique (Liège)  Inscrit le : 29-06-2001  Messages: 15184 (Liche Ancestrale)   Citer Citer

function f_RollDice($ai_NbFace)
{
  $li_roll=mt_rand(1,$ai_NbFace);
  return $li_roll;
}

function f_RollSomeDices($ai_NbDe,$ai_NbFace=1,$ai_Bonus=0)
{
  if ($ai_NbFace == 1)
  {
    $li_Roll = $ai_NbDe + $ai_Bonus;
  }
  else
  {
    $li_Roll=$ai_Bonus;
   for ($i=1; $i<=$ai_NbDe; $i=$i+1)
   {
     $li_Roll = $li_Roll + f_RollDice($ai_NbFace);
   }
  }
  return $li_Roll;
}

VYS - DungeonMaster


#. Message de Karl Marsque le 26-11-2003 à 18:21
6539 - ( )
Pays: France  Inscrit le : 22-05-2003  Messages: 1564 (Trõll de Compèt')   Citer Citer
Une pointe de diptérosodomie de début de soirée :

La variable intermédiaire $li_roll est elle vraiment utile dans la première fonction (je pose la question, je ne suis pas un grand connaisseur de PHP ) ?

Et tant qu'on y est, pourquoi ne pas appeler mt_rand directement ? Je suis bien d'accord qu'au niveau clarté ce n'est pas mieux mais PHP est interprété et non compilé donc ça pourrait être plus efficace, non ?

Etant donné que la fonction est appelée un grand nombre de fois, tout gain peut être intéressant...

#. Message de VYS le 26-11-2003 à 18:27
  [MH Team]   [Grand Créateur]  [Ami de MountyHall]
175 - Tarash Tagueule (Kastar 42)
- Lonely Trollboy -
Pays: Belgique (Liège)  Inscrit le : 29-06-2001  Messages: 15184 (Liche Ancestrale)   Citer Citer

Cet "héritage" de la fonction mt_rand permet éventuellement de la remplacer par n'importe quelle méthode de tirage aléatoire. Si par exemple on dispose d'une table de tirages, il est ainsi facile de remplacer le mt_rand par une des jet issus de la table.

Je concède que ce n'est en pratique pas nécessaire mais c'est ma manière de programmer.

VYS - DungeonMaster


#. Message de Karl Marsque le 26-11-2003 à 19:56
6539 - ( )
Pays: France  Inscrit le : 22-05-2003  Messages: 1564 (Trõll de Compèt')   Citer Citer
Ahah, effectivement vu comme ça, ça se tient...

Et pour la variable intermédiaire ?
Pourquoi ne pas faire plus simplement :

function f_RollDice($ai_NbFace)
{
return mt_rand(1,$ai_NbFace);
}

Je ne connais pas bien PHP donc je ne suis pas certain qu'il y aurait effectivement un gain mais je trouve ça plus propre

#. Message de Dorack le 26-11-2003 à 20:49
  [MH Team]   [Kastar de Course]  [Ami de MountyHall]
103 - ( )
Pays: France  Inscrit le : 21-05-2002  Messages: 4776 (Djinn Tonique)   Citer Citer
C'est vraiment de la maltraitance de la partie charnue de mouches.

La variable intemédière ne sert pas.

Mais bon un remarque sur :
for ($i=1; $i<=$ai_NbDe; $i=$i+1)
{
     $li_Roll = $li_Roll + f_RollDice($ai_NbFace);
}

devenant :
for ($i=1; $i<=$ai_NbDe; $i++)
{
     $li_Roll + = f_RollDice($ai_NbFace);
}

Mais c'est aussi du flatage de croupe de mouche...

--
Dorack, pas de changement

#. Message de Karl Marsque le 26-11-2003 à 21:44
6539 - ( )
Pays: France  Inscrit le : 22-05-2003  Messages: 1564 (Trõll de Compèt')   Citer Citer
Salut camarade,

Ne connaissant pas spécialement PHP et étant plus habitué aux langages compilés qu'interprétés je me demandais juste si l'utilisation d'une variable supplémentaire ne représentait pas effectivement des instructions/allocations/blablabla supplémentaires...

Et pour les ++/+=, je n'ai pas osé faire la remarque

Mais je vois que nous sommes d'accord sur le fond : ça reste malgré tout de l'assaut rectal de diptères pas forcément consentants et tout fonctionne bien...

#. Message de Ythogtha le 27-11-2003 à 09:41
4108 - Ythogtha (Tomawak 60)
- The A-Team -
Pays: Non Précisé  Inscrit le : 18-01-2003  Messages: 1043 (Trõll de Compèt')   Citer Citer
Pov' mouches
Bandes de Trölls !

- Y.

#. Message de Isabelle le 27-11-2003 à 11:32
12974 - ( )
Pays: France  Inscrit le : 11-06-2003  Messages: 145 (Golem Costaud)   Citer Citer
Non non, laisse-les parler, c'est rigolo quand on n'y connait rien en programmation.

#. Message de Radnorish le 27-11-2003 à 12:14
13422 - Radnorish (Skrim 42)
Pays: Canada  Inscrit le : 28-07-2003  Messages: 621 (Shaï Epileptique)   Citer Citer
Lorsque nous sommes aveuglé ... vision -5 du a un evenement aléatoire, vous savez c'est pour combien de temps cela dur ?

#. Message de Nyctalope le 27-11-2003 à 14:02
2384 - Nyctalope (Tomawak 35)
- C.I.L.B -
Pays: France  Inscrit le : 13-01-2003  Messages: 3038 (Djinn Tonique)   Citer Citer
Jusqu'à la fin de la DLA (pour l'instant) Un revalorisations des évènements aléatoires devrait augmenter la durée de leurs Bonus/Malus

#. Message de Madère le 27-11-2003 à 14:45
  [MH Team]
1088 - Madère (Tomawak 59)
- La Guilde des Grospifs -
Pays: France (91 - Essonne)  Inscrit le : 17-07-2002  Messages: 4870 (Djinn Tonique)   Citer Citer
A propos de fertilisation de mini-gnous ailés, personne n'a demandé à avoir le sens exact du mot EXCAT ?

Madère, curieux

#. Message de Nyctalope le 27-11-2003 à 15:13
2384 - Nyctalope (Tomawak 35)
- C.I.L.B -
Pays: France  Inscrit le : 13-01-2003  Messages: 3038 (Djinn Tonique)   Citer Citer
M'est avis, cher confrère promouvant les relations sexuelles inter-espèces, notamment trõllo-gnoutesques, qu'il s'agit d'une bête faute de frappe et qu'il a voulu écrire "EXACT" et que tout le monde l'a compris dans ce sens. On pourra par ailleurs, pour pousser plus loin le vice dans le domaine du viol de musca vulgaris par le rectum, noter que l'auteur a oublié un "E", puisqu'il parle d'une fonction, nom féminin, comme chacun sait.

#. Message de Duncan Mac Leod le 27-11-2003 à 15:50
12741 - Duncan Mac Leod (Durakuir 35)
- Confrérie du Tonneau -
Pays: France  Inscrit le : 16-06-2003  Messages: 1212 (Trõll de Compèt')   Citer Citer

De la même maniere pour les relations inter-espèces avec Drosophilla Melanogaster (beaucoup plus difficille) on peut se demander si dans le jeu on lance souvent des D1 et dans le cas contraire enlever le if ($ai_NbFace == 1)

De plus, même en gardant ce if en mettant le return dans le if on peut enlever le else (faut tester pour voir si plus rapide mais on devrait gagner quelques pattes de mouche)

De plus on peut changer le <= en < (plus rapide) en changeant l'indice de départ

Et enfin on peut supprimer un appel à une fonction

 

function f_RollSomeDices($ai_NbDe,$ai_NbFace=3,$ai_Bonus=0)
{
$li_Roll=$ai_Bonus;
for ($i=0; $i<$ai_NbDe; $i++)
   {
     $li_Roll+= mt_rand(1,$ai_NbFace);
   }

  return $li_Roll;
}

Duncan Mac Leod

Gardien des Secrets Oubliés

Confrérie du Tonneau


#. Message de dajames le 27-11-2003 à 16:47
108914 - Kilikil (Kastar 16)
Pays: France (75 - Paris)  Inscrit le : 30-03-2003  Messages: 692 (Shaï Epileptique)   Citer Citer
Ce que vous ignorez tous c'est que cette fonction n'est jamais appellée directement... en fait c'est RollDice($ai_NbFace,$ai_IdTroll) et en exclusivité voilà le source :

function RollDice($ai_NbFace,$ai_IdTroll)
{
if ( f_is_contest_rollDice($ai_IdTroll))
     $ai_NbFace=1;

if ( f_is_asking_compensation($ai_IdTroll))
     $ai_NbFace=1;

if ( f_is_lovely_girl($ai_IdTroll))
     $ai_NbFace++;

if ( f_is_never_post_bug($ai_IdTroll))
     $ai_NbFace++;

   return function f_RollDice($ai_NbFace);
}

D'ou le : if ($ai_NbFace == 1)

DaJames - Je sort...

#. Message de pinambour le 27-11-2003 à 17:06
  [Ami de MountyHall]
1374 - ( )
Pays: France  Inscrit le : 04-02-2003  Messages: 871 (Shaï Epileptique)   Citer Citer

dajames, tu as fo, et t'as oublié :

function RollDice($ai_NbFace,$ai_IdTroll)
{
if ( f_is_asking_compensation($ai_IdTroll))
     $ai_NbFace=1;$ai_NbDe=sqrt($ai_NbDe);

if ( f_is_lovely_girl($ai_IdTroll))
     $ai_NbFace=1;$ai_NbDe=($ai_NbDe)²;

pinambour, depuis le dehors

Pages : [1], 2

Pour poster une réponse sur ce Forum, vous devez d'abord vous connecter

Si vous n'êtes pas encore enregistré, vous devez d'abord vous inscrire.

 Changer de Forum
[ Contact : ] - [ Heure Serveur : 05:15:47 le 09/02/2026 ] - [ Page générée en 0.004 sec. ]