mardi 10 septembre 2013

Créer un jeu PvP : équilibrage, frustration et ragequit

Voici une réflexion non structurée autour de la création d'un jeu PvP (Player versus Player, ou JcJ, pour Joueur contre Joueur mais c'est laid) et de la tâche quasi-impossible qui vous incombe en tant que créateur (et surtout qui vous décombe) : équilibrer le gameplay !

L'équilibrage d'un jeu c'est avant tout une histoire de dosage. C'est un peu comme retrouver une recette de cuisine à l'aveugle... un peu de sel par ci, un peu moins de poivre, etc.

Si on fait n'importe quoi cela peut vite donner quelque chose d'assez triste à voir et de très difficile à rétablir.


"Parait que les elfes sont un peu trop forts avec leurs arcs...
je vais donner des RPG aux nains, ça ira mieux." NOPE.

Jouer à un jeu sur internet sans avoir d'interactions avec d'autres joueurs présente selon moi autant d'intérêt que le café décaféiné ou que la bière sans alcool. Et n'avoir pour seuls adversaires que des entités gérées par une IA présente en général un challenge assez rapidement surpassé ou lassant. Cela ne m'a pas empêché de goûter à la joie du PvE dans certains MMO, certes, mais c'était pour le côté coopératif en guilde. 

Rien ne vaut selon moi la confrontation avec de vrais joueurs et c'est tout naturellement que le projet que j'ai lancé en 2004 - avec un certain CerberusXt - repose sur un gameplay principalement axé PvP. Après plus de 9 ans d’existence le jeu est devenu un sacré bazar qui est maintenant encore difficile à équilibrer...



Au début tout va plutôt bien ...



En général on prévoit plusieurs classes ou races présentant des aptitudes qui leur sont propres afin de donner au joueur le choix entre plusieurs gameplay. Typiquement on peut imaginer une classe guerrier et une classe magicien. Le créateur va avoir besoin d'équilibrer ces différentes classes : si les guerriers sont clairement plus forts que la classe magicien, il n'y aura que des magiciens masochistes à tendance emo qui passeront leur temps à se plaindre (à raison) sur votre forum.

Au lancement du jeu il est assez facile d'équilibrer le gameplay car il y a peu de classes différentes, peu d'armes/sorts/objets accessibles. De plus pendant les premiers mois, les joueurs sont normalement encore de faibles niveaux (et avec des personnages plus ou moins équivalents).



Complexité et équilibrage



C'est avec le temps que les choses se corsent car au fil des mises à jour et des ajouts de contenu (pour garder l'intérêt de vos joueurs), on complexifie grandement les choses et en général cela finit toujours par fusiller l'équilibrage (très fragile) entre les joueurs.

Autant il me semble jouable d'équilibrer un gameplay à base de deux classes et disons dix armes/sorts/compétences; autant si à force de mises à jour vous vous retrouvez avec cinq classes et trente armes/sorts/compétences ça va commencer à être un joyeux casse-tête. 

Attention donc, plus le contenu est riche et complexe, plus il sera difficile de garder un gameplay équilibré et agréable à vos joueurs. Le concept KISS en somme.


  
D'ailleurs j'ai du revenir à plusieurs reprises en arrière sur des mises à jour qui faisaient grincer des dents les joueurs car elles déstabilisaient le jeu via un mécanisme non identifié pendant la phase de test.

Heh oui, les joueurs sont des petits malins; plus votre jeu est complexe et ouvert, plus il y a de chance que certains pensent à une action ou à une combinaison que vous n'aviez pas envisagé/anticipé. Rassurez-vous, cela arrive également très souvent sur les "gros" MMO également (techniques de farming abusées, etc) ...

Encore une fois, plus le jeu possède un gameplay simple, plus il est facile de le garder sous contrôle.



Calimeros à la pelle



Lorsque l'on pense Pvp, on pense tout de suite au couple gagnant/perdant.

Je ne parle pas ici d'un PvP digne d'un jeu d'élevage "ahah mon poussin fait 0.3 kg de plus que le tien, t'es trop deg noob!!". Je pense plutôt à un aspect compétitif où il y a un enjeu avec un gagnant et un perdant facilement identifiables (c'est ce que recherchent en général les joueurs des jeux de type Pvp) avec récompense/fessée (classement, perte de points, etc).

On peut partir du principe que la plupart des joueurs sont mauvais perdants et que parfois certains vont expliquer leur défaite par une déficience du gameplay. Ceux-ci iront hurler haut et fort que l'adversaire était "cheaté" et que le jeu n'était pas équilibré. Grâce à un fantastique effet boule de neige, un râleur en deviendra deux, puis cinq, plus trente, etc. En deux jours vous pouvez faire face à une vendetta sur votre forum afin de dénoncer un déséquilibre (pourtant inexistant) entre deux classes.

  
Ne soyez pas naïf, il ne s'agit souvent ici que d'une tentative désespérée (et parfois inconsciemment) pour avoir une mise à jour en leur faveur. Si vous tombez dans le piège sous la pression et rectifiez ce soit-disant déséquilibre en boostant ces personnages, vous risquez d'en créer un bien réel... Sans parler que c'est alors l'autre partie des joueurs qui va se plaindre, c'est sans fin et c'est fatiguant.

  

D'un autre côté il est possible qu'il y ait effectivement un problème et que des joueurs honnêtes le dénoncent.

Comment faire la part des choses entre le vrai et le faux vis à vis des ressentis des joueurs ?

Il faut garder en tête que vous seul avez (normalement) accès au code source et donc aux différents algorithmes. Vous seul pouvez savoir si il y a ou non un problème d'équilibrage, les joueurs ne se basent en général que sur des impressions ou sur des tentatives de reverse engineering en essayant de deviner les calculs des algorithmes (concrètement impossible car il y a en général une partie aléatoire dans les calculs).

Dans le doute, le plus simple c'est de refaire une passe sur ces algorithmes en faisant des modèles et des projections. Il est normalement assez simple (mais fastidieux) de faire des simulations des différents mécanismes. On peut par exemple faire un script qui teste une arme en faisant une incrémentation progressive des caractéristique du joueur attaquant. On obtient ainsi un échantillon de dégâts "brut" à comparer avec ceux des autres armes, etc.
Le problème c'est que si votre jeu est complexe (comme l'est le mien), il sera d'autant plus compliqué de faire ces simulations et de déceler les déficiences...

Après ces analyses, je n'hésite pas à un faire une modification impopulaire si je la juge nécessaire (quitte à "nerfer" méchamment...). Vous seul avez une vision objective de la situation mais cela ne veut pas dire qu'il faut faire cavalier seul et se mettre toute sa communauté à dos pour autant...



L'expérience : un déséquilibre inévitable ?



Même si vos mécanismes de jeu sont parfaitement équilibrés, il existe un gouffre entre un joueur débutant et un ancien joueur. Un joueur présent depuis quelques années sera en général de haut niveau et bien équipé. Autant dire qu'un newbie n'aura aucune chance en cas de conflit face à un grosbill (pas la boutique) sur le jeu depuis des années. A cela s'ajoute naturellement la connaissance du jeu et de ses mécanismes qui devrait favoriser encore plus le joueur expérimenté.

En somme, la différence d'expérience entre les joueurs va créer un déséquilibre au sein de votre jeu qui peut avoir des conséquences fâcheuses. Cet effet est de plus en plus visible puisque l'écart augmente avec le temps.

Je pense qu'il y a là plusieurs approches... soit vous protégez les joueurs de faibles niveaux, soit vous les laissez à leur triste sort dans un monde PvP ouvert. Je ne pense pas qu'il y ait de meilleure option, cela dépendra de l'orientation que vous souhaitez pour votre jeu.


Gameplay full PvP


Si vous optez pour ce que j'appelle ici "full pvp" (sans foi ni loi), vous exposez vos nouveaux inscrits à une tonne de frustration et à des ragequit ("putain j'arrête ce jeu de #*%@"!!#"). En gros, à terme votre jeu sera probablement une orgie où les plus anciens seront les plus forts et humilieront pour le plaisir les petits nouveaux d'un coup de masse. Ces victimes vont évoluer à force d'acharnement (tout en continuant à se faire exploser par les même anciens) jusqu'au point ils pourront eux-même se défouler sur les nouveaux joueurs (c'est un cycle, c'est beau).


  
Je ne vous cache pas que beaucoup de joueurs n'aiment pas se faire dérouiller cinq fois par jour par un joueur présent depuis 5 ans ou plus. Il y a de forte chances qu'ils quittent votre jeu dans un accès de rage ;-)

En gros je pense que sans un minimum de règles ou de protections des nouveaux joueurs, en les expose à beaucoup de frustration... Néanmoins c'est un type de jeu qui plaît aux plus "hardcore" des joueurs.

Gameplay avec Pvp orienté


Il est possible d'influencer un peu tout cela en instaurant quelques règles simples. Au lieu de rendre impossible l'attaque d'un niveau 100 sur un niveau 1, on peut supprimer tout gain d'expérience afin d'en limiter l'intérêt (l'appât du gain - ou son absence - fonctionne assez bien).

Cela n’empêchera pas les plus belliqueux de trucider les nouveaux arrivants pour autant mais vous pouvez toujours mettre en place une politique "anti-abus" en cas d'acharnement.

Gameplay avec Pvp modéré


Enfin vous pouvez tout simplement influencer le gameplay en bloquant tout simplement certaines interactions afin de protéger les joueurs. Par exemple un joueur ne pourra attaquer que des joueurs dans sa tranche de niveau (entre niveau-10 et niveau+10 par exemple) ce qui évitera trop d'abus sur les plus faibles.

Il est également possible de créer des zones accessibles à certaines niveaux ou encore des zones de jeu PvP et d'autres non (comme l'a fait WoW avec ses zones contestées, ses arènes ou ses fameux "battlegrounds") .

  
Quelle que soit l'orientation que vous choisissez pour votre jeu, elle présentera forcément des avantages et des inconvénients, tout dépend de l'expérience que vous souhaiterez donner à votre communauté.

Une dernière option serait de proposer plusieurs instances du jeu avec des politiques PvP différentes, ainsi les joueurs pourraient choisir eux-même quel type de gameplay adopter (ça augmente aussi le scope de votre public car il y a des gens fanas de PvP et d'autres qui en ont horreur).


  

Palier aux écarts de niveaux



Un joueur sera en général peu motivé à commencer un jeu PvP en ayant des années de retard sur des joueurs plus anciens (pour des raisons évidentes).


  
Pour mon jeu on a souvent évoqué une solution simple pour palier à cette différence d'expérience entre les joueurs, il s'agirait de plafonner en instaurant un niveau maximum. Il faut dire que le jeu date de 2004, autant dire qu'il y a un sacré retard à rattraper en commençant maintenant... Néanmoins cette solution de niveau maximum (que je n'aime pas spécialement) mettrait un terme à l'intérêt du jeu une fois ce niveau atteint, sauf si on arrive à renouveler le contenu ou en ajoutant ce qu'on appelle en général du Pve/Pvp HL (comprendre du contenu réservé pour les hauts niveaux afin qu'ils continuent à jouer).

C'est ce que fait WoW par exemple, avec des ajouts de contenu pour hauts niveaux et ponctuellement une remontée du niveau maximum via un add-on (pour être encore plus fort et jeter à la poubelle ses deux dernières années de farming de stuff).

Enfin, il est possible de faire des remises à zéro (ou "reset") du jeu pour que tout le monde recommence ensemble, mais cela fait perdre des années de jeu à certains et peut donc dégoûter vos joueurs qui abandonneront tout simplement...

La meilleure solution reste je pense le fait de lancer de nouvelles instances de jeu tous les un ou deux ans pour permettre aux gens de commencer le jeu avec moins de retard sur les plus anciens.

Par exemple :

  • Instance 1 : depuis 2008, niveau maximum actuel atteint 46,
  • Instance 2 : depuis 2010, niveau maximum actuel atteint 31,
  • Instance 3 : depuis 2012, niveau maximum actuel atteint 17,
  • etc.
Vous avez compris le principe hein.

L'équilibrage pour les nuls



Vous avez devant vous une balance avec des radis d'un côté et des patates de l'autre. La balance penche du côté des patates et vous souhaitez la mettre en équilibre. Instinctivement (je l'espère), vous savez distinguez deux possibilités (on a pas le droit de couper les légumes) :

  1. Enlever des patates,
  2. Ajouter des radis



Pour un jeu c'est un peu la même chose, si les elfes sont naturellement plus forts que les nains, soit :

  1. Vous améliorez les nains, ce que l'on appelle en général un "up" des nains,
  2. Vous revoyez à la baisse les elfes, ce qu'on appelle un "nerf" des elfes

En général si vous décidez l'option 1 (un "up"), les nains seront contents et les elfes resteront neutres (car on leur a rien enlevé).
Si vous décidez d'opter pour la 2 (un "nerf"), les nains seront contents et les elfes râleront (car on a modifié leurs personnages et ont l'impression de perdre quelque chose).

J'ai donc tendance à préférer les "up" car le ressenti est en général meilleur côté communauté.

Si maintenant vous avez les elfes qui sont plus forts que les nains et les humains, il sera plus logique et facile de baisser les elfes, plutôt que d'augmenter les nains et les humains. Dans ce cas, le nerf semble inévitable et une râlerie générale de la part des joueurs elfes également...

  
Dernier cas, si les elfes sont moins forts que les nains et les humains, il faudra augmenter (up) les elfes.

Bref en général, il faut comparer tous les éléments, distinguer l'état normal et en éliminer les aberrations en les augmentant ou les descendant. On ne va pas s'amuser à nerfer neuf classes quand on peut rétablir l'équilibre en n'en n’augmentant qu'une seule.

Il est ainsi très fréquents dans les patchnotes de vos MMO préférés (mais également les RTS comme Starcraft II) de voir des up et des nerfs d'unité, de classes, objets ou sorts car ils essaient d'équilibrer le tout.



Un peu de sérieux



Puisque je n'ai jamais fait d'études en game design, mes connaissances sont issues uniquement de mon expérience de joueur et de créateur; et d'un peu de bon sens. Il existe des sources très intéressantes et plus poussées sur le web comme par exemple cet excellent extrait de livre que vous devriez lire. On y parle notamment de l'expérience du joueur (le "flow"), l'équilibre de la difficulté du jeu et du ressenti de l'utilisateur face au gameplay : ennui, frustration et satisfaction.




Je vous conseille très fortement de parcourir ce livre, il y a des notions très intéressantes... Enfin je pense qu'avec un minimum de bon sens et si l'on a joué à pas mal de jeux (ce qui est le cas des gens qui créent des jeux web en général), on devrait pouvoir s'en sortir sans avoir fait des études théoriques très poussées.

Il faut avant tout se mettre à la place des joueurs et savoir rester à l'écoute de sa communauté (erreur trop souvent faite par les professionnels, d'ailleurs).

(xkcd.com)


Mot de la fin


Lorsque l'on me demande ce qui a été le plus difficile sur mon projet, je répond toujours l'équilibrage car c'est une tâche tellement nébuleuse que l'on ne sait jamais où on en est... Je me demande d'ailleurs quelles sont les méthodologies professionnelles pour équilibrer des jeux comme Starcraft II ou bien League of Legends (auquel je joue pas mal en ce moment, si jamais vous voulez faire une partie...!).

Je suis désolé pour le côté bordélique de cet article, ça part un peu dans tous les sens ;-)

Je suis bien curieux de savoir aussi comment les autres créateurs font pour gérer ces problématiques, alors n'hésitez pas à réagir !





5 commentaires:

  1. Je ne peux que confirmer la difficulté de la tâche, à tel point d'ailleurs qu'on en est parfois réduit à passer son temps à équilibrer le jeu au lieu d'y faire des ajouts de gameplay, ce qui peut être usant à la longue.

    RépondreSupprimer
    Réponses
    1. Ce qui est usant, c'est aussi l'acharnement et la fureur de certains joueurs/trolls face aux updates ;-) (j'en avais parlé là : http://www.dablog.fr/2012/02/demotivation-et-abandon.html)

      Supprimer
    2. Article très intéressant pour un joueur d'HC,
      courage DA et la xteam ;)

      Supprimer
  2. Perso je trouve HC relativement équilibré ( c 'est impossible pour moi qu'un jeu soit parfaitement équilibré ) ! Par contre , je n'ai jamais compris comment tu fais pour supporter les critiques ( limites insultantes ) a répétition de certain joueurs xD ! La plus part du temps , ils critiquent juste pour critiquer , ne se laissant jamais le temps de voir les effets d'une Maj sur le long terme !

    Bon article sinon !

    RépondreSupprimer
    Réponses
    1. Merci !

      Il faut faire la différence entre les trolls (nombreux sur HC, surtout le forum ...) et les critiques sincères et constructives ;-) Disons qu'au bout d'un moment tu apprends à ignorer les remarques désagréables sous peine de péter un cable régulièrement ... :-)

      Supprimer