13-05-2009, 02:08 PM
je ne suis pas complètement d'accord avec toi wild-d sur la formule que tu présentes
l'aléatoire multiplicatif ne doit pas être négatif ce serait trop dangereux
prenons un exemple du genre rand(-1, 10)
si j ai des rand à -1, je "retourne" le rapport de force
exemple :
Att 1000
Def 10
Att >>> Def
et bien avec un rand à -1, le défenseur occasionne des dégâts énormes (équivalent à si lui était 100 fois supérieur à l'attaquant
deuxieme exemple. ok avec -1, prenons alors -0.001 histoire de régler le cas précédent. Et bien avec égalité ça plante :
Att 100
Def 99
avec un rand à -0.001 on arrivera à des dégâts négligeables si la défense 'gagne' par rapport aux dégats d'une attaque 'gagnante'
d'où ma notion d'aléatoire à deux niveaux (on pourrait aussi rajouter un aléatoire sur la "cible", type de personnage, type d'organe, etc...)
après on peut considérer l'aléatoire non pas comme une valeur, mais comme une fonction de paramètre
le cas simple du départ est
att - def ==> on rajoute de l'aléatoire simple att - def + aléatoire
mais si on est sur "fonction du delta entre l'attaque et la défense alors il se passe telle ou telle chose" (ex : probabilité de maladresse, de succes spéciaux, etc...) alors l'aléatoire correspond à autre chose qu'à des variables "finies" rand (1,5)
dans ce cas extrême la formalisation de wild et la mienne sont équivalentes : ce n'est pas une valeur mais une (ou deux) fonction(s)
dans le cas "simpliste" (Att-Def) * $alea, le coeff multiplicateur me paraît avoir trop d'effets de bord.
l'aléatoire multiplicatif ne doit pas être négatif ce serait trop dangereux
prenons un exemple du genre rand(-1, 10)
si j ai des rand à -1, je "retourne" le rapport de force
exemple :
Att 1000
Def 10
Att >>> Def
et bien avec un rand à -1, le défenseur occasionne des dégâts énormes (équivalent à si lui était 100 fois supérieur à l'attaquant
deuxieme exemple. ok avec -1, prenons alors -0.001 histoire de régler le cas précédent. Et bien avec égalité ça plante :
Att 100
Def 99
avec un rand à -0.001 on arrivera à des dégâts négligeables si la défense 'gagne' par rapport aux dégats d'une attaque 'gagnante'
d'où ma notion d'aléatoire à deux niveaux (on pourrait aussi rajouter un aléatoire sur la "cible", type de personnage, type d'organe, etc...)
après on peut considérer l'aléatoire non pas comme une valeur, mais comme une fonction de paramètre
le cas simple du départ est
att - def ==> on rajoute de l'aléatoire simple att - def + aléatoire
mais si on est sur "fonction du delta entre l'attaque et la défense alors il se passe telle ou telle chose" (ex : probabilité de maladresse, de succes spéciaux, etc...) alors l'aléatoire correspond à autre chose qu'à des variables "finies" rand (1,5)
dans ce cas extrême la formalisation de wild et la mienne sont équivalentes : ce n'est pas une valeur mais une (ou deux) fonction(s)
dans le cas "simpliste" (Att-Def) * $alea, le coeff multiplicateur me paraît avoir trop d'effets de bord.