20-08-2019, 06:06 PM
(20-08-2019, 02:23 PM)Chbig a écrit : Les différents types d'unités on des statistiques différentes.
Exemple.
Type 1 :
PV = 2
Attaque = 1
Défense = 1
Type 2 :
PV = 5
Attaque = 3
Défense = 2
Attaque = 3
Pour l'aléatoire je n'ai rien contre, mais idéalement je voyais plutôt le fait de toucher les différents types d'unités présentent dans le combat de façon le plus 'équitable' possible.
J'entends par la que le type d'unité ultime peut aussi bien mourir que la toute première unité du jeu.
Après tout dans le combat, tout le monde participe il n'y a pas de risque 0
Dans ce cas je vois trois solutions :
A) méthode binaire : une unité meurt ou vit (et est en pleine forme pour le prochain combat)
je distribue les dégâts globaux (calculés comme tu l'as précédemment décrit) en fonction des pv totaux de chaque type d'unités:
exemple j'ai 50 unités de type 1 ( 20 pv) et 30 unités de type 2 ( 10pv)
alors si je dois distribuer 400 dégats cela donne
les unités de type 1 reçoivent globalement 400 * (50 *20) / ( 50*20 + 30*10) = 400 * (1000 / 1300) =308
les unités de type 2 reçoivent globalement 400 * (30 *10) / ( 50*20 + 30*10) = 400 * (300 / 1300) = 92
du coup 308/20 = 15 unités de type 1 meurent
92 / 10 = 9 unités de type 2 meurent
ton armée est désormais 35 unités de type 1, 21 unités de type 2
B méthode "en masse" détaillée, les unités peuvent être blessées
je n'ai pas 50 unités de type 1 mais
10 unités de type 1 avec 20pv
7 unités de type 1 avec 19pv,
23 unités de type 1 avec 18pv,
6 unités de type 1 avec 12pv,
4 unités de type 1 avec 6 pv
une matrice (type d'unité, nb pv, nb unités)
a partir de là tu calcules, comme précédemment le nombre de dégât par type (308 pour type 1, 92 pour type 2) a une nuance près : ce n'est pas 50*20 mais (10*20 + 7*19+ 23*18 +...) pour le poids du type 1
et là tu as deux choix :
soit tu distribues les dégâts "égalitairement" j'ai 50 unités de type 1, j'ai 308 dégâts, donc chaque unité se prend 6 dégâts, il reste
10 unités de type 1 avec 14pv
7 unités de type 1 avec 13pv,
23 unités de type 1 avec 6pv,
6 unités de type 1 avec 6 pv
et 4 cadavres
soit tu tu distribues selon une loi normale ou un truc comme ça (veut pas dire grand chose vu le nombre d'unités de l'exemple mais osef) par pv:
sur les 10 unités de type 1 à 20pv, 6 ressortent du combat à 14pv, 2 avec 18 pv, 2 avec 10pv...
sur les 7 unités de type 1 à 19pv, 3 ressortent du combat à 13pv, 2 avec 17 pv, 2 avec 7pv...
etc..
et tu vas te retrouver avec une nouvelle matrice que je ne vais pas calculer mais du genre
18pv 2
17pv 2
16pv ...
etc..
et x cadavres
C la méthode à l'unité
y a plus de matrice, mais que des unités, et chacune se prend les 6 de dégâts
à mon sens aucun intérêt par rapport à B si tu ne cherches pas à aller plus loin
mais si tu veux rajouter des fonctionnalités (y a une fourmi "héros", y a des armures mais pas pour toutes les fourmis de même type, y a du hasard --> chaque fourmi reçoit un nb aléatoire de dégât entre 0 et le rapport att/def et non la différence, les fourmis se battent une contre une, pourquoi pas avec du ciseaux pierre feuille...)
Evidemment, mais je ne me prononce pas sur le résultat, faut penser perf