JeuWeb - Crée ton jeu par navigateur
Equilibrer les divers infos (pv. degats, objets, prix, selon le niveau) - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Gameplay, gamedesign (https://jeuweb.org/forumdisplay.php?fid=48)
+--- Sujet : Equilibrer les divers infos (pv. degats, objets, prix, selon le niveau) (/showthread.php?tid=7144)



Equilibrer les divers infos (pv. degats, objets, prix, selon le niveau) - quizzcode - 21-08-2014

Hello,

Je suis en train de finaliser mon prochain mmorpg, cependant j'ai remarquè que plus le niveau grimpe et plus les écarts se creuse entre les diffèrentes stats du jeu.

Exemple :
Le prix des objets en boutique au niveau 10 est beaucoup trop peu cher que l'argent droper par un monstre de niveau 10.

De meme, les points de vie d'un niveau 10 ne sont pas suffisant vis a vis des domages qu'un niveau 10 peu infliger.

Perso pour les points de vie des monstres, j'avais codè un pseudo algo :
(c'est une for() dans le quel j'incremente le niveau a chaque fois)

Citation :$endurance = 8 + $niveau_monstre; // on dis qu'il y a 8 endurence de base et que pour chaque niveau on en rajoute 5.
$vie_mini = ((int)((($endurance * 7) * ($niveau_monstre + 1)) + ($endurance / 100) * 35));
$vie_maxi = ((int)((($endurance * 9) * ($niveau_monstre + 1)) + ($endurance / 100) * 35));
$vie_rand = rand($vie_mini, $vie_maxi);


Donc en gros je prend en consideration le niveau du monstres, et certains facteurs externes : tel que son endurence, et quelques "coef" multiplicateur.
Cependant, ces resultats ne match pas sur du long thermes.


Alors je me demander, avez vous un Algorithme carcan sur le quel vous vous basez ?
Un algo de base "crescendo" equilibrer que vous adaptez ensuite a vos perso ?

Je suis toute ouï.


RE: Equilibrer les divers infos (pv. degats, objets, prix, selon le niveau) - Aedius - 21-08-2014

(21-08-2014, 06:56 PM)quizzcode a écrit : $endurance = 8 + $niveau_monstre; // on dis qu'il y a 8 endurence de base et que pour chaque niveau on en rajoute 5.

euh, ton commentaire correspond pas au code ( ça peu aider déjà, non ? )

Je n'ai pas d'algo tout fait, mais j'ai quand même une voie pour une solution :

As-tu pensé à faire des courbes ?
tu prends ton algo et tu fais une courbe de la vie max, une courbe de la vie min.
( elles devraient avoir la même allure dans ce que je vois )

après, il faudrait faire des courbes des PJs ( soit sur un coups, soit sur n coups si possiblité de crit )
Vu que tu sembles déjà avoir des joueurs, ça devrait être possible de calculer les dégats de chaque joueur et d'en calculer par lvl : le min, le max, la median et la moyenne

ça te ferra donc 6 courbes qui devraient idéalement avoir la même allure ( ce qui ne sera pas le cas au vu de ta description pas le cas ).


RE: Equilibrer les divers infos (pv. degats, objets, prix, selon le niveau) - Thêta Tau Tau - 21-08-2014

Avant de réfléchir en terme de caractéristiques (force/endurance/pv/dégâts...) il faut réfléchir en terme de gameplay et fixer des valeurs "qui veulent dire quelque chose".

Par exemple :
Dégâts = force * 2
PV = endurance * 10
Ça veut pas dire grand chose en soit.

Mais dire qu'un personnage de force X en tue un autre d'endurance X en 5 coups, ça veut dire quelque chose en terme de gameplay. Et on peut retomber sur l'équation précédente, mais aussi, par exemple :

Dégâts = force * 10
PV = endurance * 50
Ce qui revient exactement au même (il faut toujours 5 coups).

Il faut donc définir ce qu'on veut en terme de gameplay. Par exemple dans un mmorpg classique :
- Le nombre de coups pour tuer un mob/PJ
- Le nombre de mobs qu'on peut combattre en même temps et vaincre
- La vitesse à laquelle on dépense son mana
- La différence entre 2 niveaux (par exemple, on peut dire que si un personnage niveau n combat un niveau n-1, il lui restera 20% de ses pv en moyenne quand il gagnera).
- La différence de puissance entre niveau de rareté des objets
- Etc.

Et ensuite on créé les formules et on fixe les paramètres de façon a avoir ce qu'on veut.

Forcément vu qu'un mmorpg est un jeu très complexe (niveaux/classes/équipement/nombreux sorts...), l'équilibrage est lui aussi très complexe.




Comme l'a dit Aedius, il est vital de faire des courbes, ne serais que pour faire un équilibrage empirique.

Sinon, je te conseille d'aller voir les formules utilisées dans d'autres jeux pour comprendre comment ils sont faits. Les communautés de beaucoup de jeux les ont "theorycraftés", et du coup il y a plein de ressources. Les formules de WoW ou de LoL sont pas mal intéressantes par exemple.a


RE: Equilibrer les divers infos (pv. degats, objets, prix, selon le niveau) - quizzcode - 22-08-2014

(21-08-2014, 08:20 PM)Aedius a écrit :
(21-08-2014, 06:56 PM)quizzcode a écrit : $endurance = 8 + $niveau_monstre; // on dis qu'il y a 8 endurence de base et que pour chaque niveau on en rajoute 5.

euh, ton commentaire correspond pas au code ( ça peu aider déjà, non ? )

Coucou,
Comme je l'ai dit juste au dessus, c'est un for(), j'incrémente +5 par la suite.
Cette formule est une formule prise plus ou moins de Shakes & Fidget, mais au final ne match pas forcement pour les monstres et compagnie.


J'aime bien l'idèe de la courbe, je n'y avais pas pensé !
Thèta a raison, il faut definir un "nb de coup" pour tuer un adversaire.
Puis mixer ces infos avec les courbes.

Le soucis c'est que je n'ai pas D'attaque de base, j'ai une liste de 12 attaques différentes pour le moment.
Les attaques fonctionnent ainsi :

(pour faire simple)
Degats_mini
Degats_maxi
Rand mini/maxi
Resultat d'un degat de base.

Ce degat de base est ensuite enrrolè dans fonction qui :

mixe les degats de l'attaque + degats de l'arme + facteur force si c'est une attaque "psysique".
ou
mixe les degats de l'attaque + degats de l'arme + facteur Magie si c'est une attaque de type "magique".


èvidement tout est relier ensemble : degats de bases, stats, niveau de l'attaque (le 5 niveaux), equipement etc...


Fiuw...

Je vais jeter un coup d'oeil sur les jeu theorycraftés Smile


RE: Equilibrer les divers infos (pv. degats, objets, prix, selon le niveau) - Aedius - 22-08-2014

(22-08-2014, 03:23 PM)quizzcode a écrit : Le soucis c'est que je n'ai pas D'attaque de base, j'ai une liste de 12 attaques différentes pour le moment.

Je ne parlais pas forcément d'attaque de base mais des attaques faites par les joueurs.
Par exemple en logguant dans un .csv
type attaque ; degat base ; degat min ; degats max


RE: Equilibrer les divers infos (pv. degats, objets, prix, selon le niveau) - quizzcode - 24-08-2014

Rèussi.

Donc,

Pour la definitions des degats d'attaques : je suis partit sur l'algo de Shakes & fidget, mais au lieu de tout baser sur l'arme, j'ai fait 50% arme, 50% les degats de l'attaque.
Ainsi, les deux valeurs influent sur les degats infligès.

Le faite de definir une "base" de nombre de coups pour tuer un joueur m'a aussi beaucoup aider.
J'ai donc pu effectuer 2 courbes : une courbe de vie, une courbe de degats moyens divisès par le nombre de coups.

J'ai pu donc recuperer une valeur "moyenne" de degats pour le niveau.

Jusque là tout va bien, j'ai tester avec plusieurs perso du niveau 1 a 40 (max); tout colle Smile

Niveau Argent gagnè, prix des objets, prix des stats. La meme.

J'ai defini un "nombre de monstres" moyens a tuer avant de pouvoir acheter une stats ou un objet,
j'ai refait la courbe par niveau etc..>

Resultat la valeur des quetes, des monstres, des objets correspondent tous parfaitement a leur niveau.

Merci pour votre aide.


RE: Equilibrer les divers infos (pv. degats, objets, prix, selon le niveau) - Aedius - 25-08-2014

yeaaah

au plaisir Smile