FR EN ES PT

Depuis la sortie des Donjons Stasis, vous avez été nombreux à nous dire que vous attendiez une nouvelle dimension au PvM dans WAKFU. C’est pourquoi nous sommes heureux de vous proposer la prochaine étape, le système de classement des Donjons Stasis : le Ladder de Donjons. Et pour vous en parler, nous avons cette fois réuni [Exi], [Enio] et [Keldawa] !

Les intentions de Game Design expliquées par [Exi]

 

Notre objectif principal est de mettre en valeur les Donjons Stasis en vous donnant une véritable motivation de vous frotter aux plus hauts niveaux. Actuellement la difficulté Stasis choisie est souvent un arbitrage entre l’expérience gagnée, le bonus de butin et le temps passé, ce qui laisse peu de place aux paliers 21+. Et c’est normal me direz-vous : le temps c’est de l’argent. Qu’à cela ne tienne ! Avec le système de classement, nous souhaitons rentabiliser vos efforts les plus fous et changer vos habitudes, en récompensant les plus téméraires d’entre vous.

Vous l’aurez compris, le second objectif est d’apporter un côté compétitif au PvM (Player Vs Monster = Joueur Contre Monstre). Vous pourrez ainsi vous situer les uns par rapport aux autres et tenter de vous améliorer à chaque tentative, en apprenant de vos erreurs. Chaque palier de difficulté Stasis devient ainsi un nouvel objectif. Mais ce n’est pas tout.

Le classement fonctionne en effet sur le principe de saisons, et est donc remis à zéro régulièrement. Cela donne de l’intérêt à réaliser régulièrement un bon score sur le plus de donjons possibles, car des récompenses sont à la clé !

Et pour ne pas perdre vos meilleurs scores de saison en saison, le système propose un classement continu qui, vous l’aurez sûrement deviné, n’est jamais remis à zéro. Il permet ainsi d’entrer dans la légende et donne une dimension supplémentaire à la compétition.

Et rassurez-vous, pour donner une chance au plus grand nombre, les récompenses ne sont octroyées que par le biais du classement périodique.

C’est aussi l’occasion de mettre en valeur les guildes les plus organisées qui auront le loisir de déterminer les combinaisons de personnages les plus efficaces pour atteindre les plus hautes difficultés Stasis. Serez-vous du côté de JeanKevinRoxXxor avec ses 6 Crâ ou plutôt de celui du classique Salade, Tomates, Dégâts ?

A vous désormais de trouver les compositions pour réussir chaque donjon le plus efficacement possible ! 

Fonctionnement du classement

 
Pour commencer, n’oubliez pas d’activer le mode compétitif avant d’entrer dans les donjons pour être pris en compte dans le classement !

Il existe un classement propre à chaque donjon qui dispose du mode de difficulté Stasis. Un personnage ne peut être classé qu’à un seul rang par donjon. Cela signifie que si vous réalisez un donjon avec des équipes différentes, votre personnage sera classé avec celle qui a réalisé le meilleur score.

A noter qu’il est possible de consulter la composition complète d’une équipe quand bien même il ne reste plus que 1 personnage (Cela signifie que les autres personnages qui la composaient ont réalisé un meilleur score avec une équipe différente).

Tous les personnages d’une équipe se trouvent tous à la même place. Les 6 premiers personnages sont 1er, les 6 suivants sont 7ème (et pas 2ème). Il s’agit donc d’un classement de personnages rangés dans des équipes. Si vous et les membres de votre équipe êtes 61ème, cela signifie qu’il y a 60 autres personnages devant vous, répartis dans un certain nombre d’équipes.

D’accord, mais comment on devient premier ? Etre le plus rapide ne veut pas dire qu’il faut courir entre chaque salle ! Le premier critère reste la difficulté Stasis. Ensuite vient le nombre total de tours du donjon (toutes salles confondues). En cas d’égalité c’est le nombre de tour du combat contre le Boss qui départagera les équipes. S’il y a encore égalité, c’est date d’arrivée dans le classement qui prévaut, premier arrivé, premier servi !

Récompenses

 
Qui dit fin de saison dit attribution des récompenses ! Il en existe 2 types : celles basées sur le meilleur score personnel et celles basées sur le score final de saison. Elles peuvent être obtenues pour chaque donjon. Ce système permet non seulement de remettre en valeur la totalité des donjons du jeu mais également de fixer des objectifs à l’échelle de chaque joueur et enfin du serveur tout entier.
 

Meilleur score personnel 

Les récompenses basées sur le meilleur score personnel sont des poudres. Cela a été l’occasion de modifier leur répartition afin de correspondre au nouveau modèle global mis en place. C’est pourquoi les poudres passent sur 13 rangs au lieu de 20. Ces rangs correspondent aux nouvelles tranches de niveaux.

En fin de saison, un personnage reçoit des récompenses dépendantes de son meilleur score personnel dans chaque donjon :

  • Pour un donjon de niveau 111 à 125, il recevra des poudres de rang 8 (Durable) qui concernent les objets de niveau 111 à 125.
  • Pour un donjon de niveau 156 à 170, il recevra des poudres de rang 11 (Exquis) qui concernent les objets de niveau 156 à 170.
  • Et ainsi de suite…

La rareté des poudres obtenues et leur quantité sont déterminées par la difficulté Stasis choisie.

A noter que les poudres de runes serviront désormais dans la confection et l'évolution (via le craft) de nouveaux objets. Nous les renommerons pour l'occasion.
 

Classement final de saison

Les récompenses basées sur le classement final de saison sont des Mystery Box. Elles contiennent principalement des récompenses cosmétiques et des consommables.

En fin de saison, un personnage reçoit des récompenses en fonction de son classement final de la saison dans chaque donjon :

  • Pour un donjon de niveau 66 à 80, il reçoit des Mystery Box de rang 5 (Rustique).
  • Pour un donjon de niveau 81 à 95, il reçoit des Mystery Box de rang 6 (Brut).
  • Et ainsi de suite…

La quantité de Mystery Box dépend du classement de votre équipe :

  • 1ère place (lauriers dorés) : 5 Mystery Box
  • 2ème à 30ème place (lauriers argentés) : 3 Mystery Box
  • 31ème à 100ème place (lauriers de bronze) : 1 Mystery Box
 

Exploits Donjons Stasis

Nous en avons également profité pour ajouter de nombreux exploits qui permettent d’engranger une quantité non négligeable de jetons :

  • Difficile (21-30) : 20 jetons de la tranche de niveau du donjon, XP de 20 monstres du niveau réel du joueur.
  • Expert (31-40) : 40 jetons de la tranche de niveau du donjon, XP de 40 monstres du niveau réel du joueur.
  • Maître (41-50) : 80 jetons de la tranche de niveau du donjon, XP de 80 monstres du niveau réel du joueur.
Nous avons donc une mécanique de Game Design bien définie ! C’est au tour de nos développeurs de prendre la main et d’intégrer tout ceci en jeu. Place donc à [Enio] et [Keldawa]. Âmes sensibles, s’abstenir…
 

Le stockage : [Enio] roule des mécaniques serveur

 

Une des principales problématiques du ladder a été la façon dont nous allions stocker toutes ces équipes. Le nombre de teams peut rapidement devenir gigantesque, surtout quand on sait que vous faites au total plus de 20 000 donjons par jour !

Après avoir envisagé plusieurs solutions et étudié diverses technologies, nous avons fini par choisir de ne se servir de la base de données que comme d'un stockage froid, et de tout gérer "in-memory". Même si la consommation en RAM et en CPU est élevée, cela nous permettait d'avoir un bien plus grand contrôle sur les données et une latence bien plus faible pour la consultation du classement.

Toutefois, ce stockage en RAM implique des limitations, par exemple, le classement permanent ne contient que le top 1000 (jusqu'à 1005 joueurs donc), et a entraîné des modifications importantes notamment sur le classement JcJ afin de mutualiser un maximum les ressources comme les pseudos, les guildes, etc.

Nous avons également choisi d'orienter notre structure serveur sur une structure en deux blocs : un servant à la gestion des teams, et un autre servant au classement. Même si ce fonctionnement est contraignant par moments en terme de code, il nous permet d'avoir une consommation de ressources bien plus basse en lecture qu'en écriture, ce qui est particulièrement intéressant vu que vous allez bien plus souvent regarder le classement que vous y inscrire !
 

Le classement : la mise en boite

 
Une fois que nous avions trouvé comment stocker toutes vos données, il était plus que temps de classer les joueurs. Sauf que vous jouez en équipe ! Ce qui ne facilite pas la tâche, c’est le moins qu’on puisse dire. Nous n'avons pas réinventé la roue, nous avons simplement copié sur nos amis les anthropologues, biologistes et autres scientifiques – si, si, Wakfu c’est très sérieux - et implémenté l'équivalent d'une hiérarchie fixe de catégories: le ladder est composé de boites contenant elle-même des boites. Il y a d'abord les boites de donjons, qui contiennent des boites de niveaux Stasis, qui contiennent des boites de nombre de tours totaux, qui contiennent des boites de nombre de tours pour finir le boss, qui contiennent des boites de date. Ces boites de dates sont l'état final et contiennent également l'id de l'équipe qu'elle représente. Chaque boite a un compte qui permet de savoir combien de personnes sont classées à chaque niveau, ainsi on peut dresser un classement très rapidement pour une équipe !
 

Les récompenses : ils sont où les cadeaux ?


La mécanique de récompenses est particulièrement lourde en terme de ressources. Tous les premiers du mois, on peut récompenser plusieurs dizaines de milliers de personnages, et leur injecter jusqu'à 65 objets chacun !

Comme nous souhaitions créer une structure permettant d'accueillir tout type futur de récompenses (JcJ, event, etc), nous ne pouvions pas nous contenter de comparer ce que chaque personne avait déjà récupéré à la liste de ce à quoi elle a droit (ce qui aurait été bien plus léger en terme de mécanique !).

Nous avons prototypé rapidement une première structure, toutefois, nous avons rapidement remarqué que si nous persistions dans cette voie, la consommation allait être tellement énorme que nous aurions risqué un crash ou des roues infinies massives à chaque injection de récompenses. Après quelques réunions, des dizaines de brouillons jetés dans la plus proche poubelle – ou à côté d’ailleurs – du café, des bonbons, et encore du café, nous avons décidé de prendre de l'avance sur quelque chose que nous souhaitions faire depuis longtemps. Roulement de tambour… Nous nous sommes penchés sur une manière simple et rapide en terme de code de créer des petits serveurs, capables de gérer de petits ensembles de feature, voire juste une feature !

Les récompenses seront donc gérées par un serveur logique à part, qui sera le tout premier d'une longue série (même si nous avons déjà des prototypes de serveurs de ce genre, on ne vous a jamais parlé du serveur de *SBAF*

*en route pour l’hôpital*

Désolée pour cette violente interruption. L’homme qui murmurait à l’oreille des serveurs étant momentanément indisposé, je vous propose de nous pencher à présent sur notre mastodonte de l’interface, [Keldawa].
 

[Keldawa] - Développeur - On met le Dawa dans les UI !

 

Le secret d’une bonne interface

 

Pour une interface de qualité, il faut avoir les bons ingrédients :

  • De la patience.
  • De la rigueur.
  • Un serviteur loyal, [Enio], qui vous envoie toutes les données qu’il faut au moment opportun.
  • Des gens qui font des dessins.
  • Beaucoup de beurre salé, le pain est optionnel.

Une fois tous ces ingrédients en poche, il faut savoir se poser les bonnes questions : Où on la met, cette interface ? Quelles sont les contraintes de taille ? Comment on la découpe ? On affiche quoi ?

Nous avions déjà une interface de donjon, très sommaire et peu utile en l’état. Réutiliser cette interface était une évidence. La taille est une contrainte majeure : l’interface doit tenir dans les plus petites résolutions supportées par le jeu. Et un classement comme celui-ci implique l’affichage de beaucoup d’informations. Le découpage s’est donc imposé naturellement : les informations propres aux donjons à gauche sur une colonne, afin d’économiser le plus de place possible à droite pour le classement même.

Une fois ce découpage acté, la recette est simple :

  • D’abord la partie gauche
  • Puis la partie droite
  • Et puis, une gorgée de Bolbic, toujours.

Un peu de sel à gauche

 

« Gardes ! Rajoutez donc un peu d’air dans la liste ! »

Allister, s'il avait voulu aérer une interface à son époque.

Donc, c’est parti ! On reprend la liste de donjons un peu vieillotte, et on en fait quelque chose d’un peu plus dans l’air du temps.

Les informations du donjon rejoignent l’entête de cette partie de l’interface. On a repris les illustrations présentes aux entrées des donjons pour vous donner une indication claire et visuelle du donjon sélectionné. Cette partie a nécessité plusieurs itérations avant d’arriver à son état final : l’espace était vraiment restreint, et les noms et localisations des donjons peuvent vite en monopoliser beaucoup, ou au contraire, ne pas le remplir assez.

La liste des donjons a également eu son lot d’itérations. 

Deux versions intermédiaires de la liste de donjons

Nous avons opté pour un aspect proche de celui utilisé pour les listes de builds dans le cadre des niveaux modulables, afin de rester homogène avec les interfaces que l’on produit actuellement, et pour éviter que la liste des donjons soit trop tape à l’œil à côté du classement. Le rappel du record à droite des donjons a été abandonné, cette information n’était pas pertinente dans le cadre d’une liste et surchargeait inutilement l’interface.
 
Les couronnes ont été ajoutées pour vous donner un objectif personnel hors du cadre compétitif. La couronne dorée s’obtient en terminant un donjon à niveau en Stasis 21+. Pourquoi ne pas avoir fait plus de paliers ? Tout simplement parce que les paliers suivant ne seraient pas atteignables partout, et nous voulions éviter le syndrome de la « barre de progression qu’on ne peut pas remplir entièrement ».
 
Trois couronnes, et une cour-off.
 
On ne pouvait pas terminer sans ajouter une option de recherche dynamique pour vous permettre de trouver rapidement les donjons qui vous intéressent.
 

Beaucoup d’épices à droite

 

On passe au gros morceau, la pièce de choix, le classement lui-même.

Ça commence par la récupération des données envoyées par le serveur, suivant le donjon et la page demandés. On reçoit un paquet d’équipes, des joueurs dedans, et on construit des vues avec tout ça. Une vue, c’est un machin qui fait le lien entre le moteur d’interface et les informations présentes dans le code. Quand on met à jour l’interface, ce sont les vues qui sont modifiées ou recréées. Une fois cette mécanique en place, reste à définir de quelle manière on affiche les vues en question.

Le lien avec le serveur étant fait, nous avons finalement donné une chaussette à Enio pour le libérer de sa servitude.

Premier prototype d’un Game Designer qui présente ses intentions.
 

En partant du design initial posé par les Game-designers, on sélectionne quelles sont les infos réellement pertinentes, on les réordonne si nécessaire. Ici, l’idée était de faire ressortir le fait que le classement est un classement « par personnage ». La composition de l’équipe n’est donc plus automatiquement affichée, chaque personnage a sa propre entrée. Les informations sont rangées par intérêt selon le sens de lecture : On commence par voir le rang, puis viennent les blasons / smileys qui donnent une vision rapide de comment se compose le classement en cas de lecture « en diagonale », puis on termine avec le détail.

Nous voulions également mettre en avant les deux éléments qui vous permettront de gagner des récompenses, à savoir le niveau Stasis atteint, ainsi que le rang.

Pour le niveau Stasis, nous avons opté pour des cadres évolutifs en fonction du palier atteint. Ils seront réutilisés à d’autres endroits pertinents, comme à l’entrée des donjons par exemple.

 
Quelques propositions de cadres, et l’ensemble finalement retenu.
 
Quant aux rangs, ils sont embellis par des lauriers Or, Argent et Bronze qui vous indiquent clairement si vous êtes éligibles à l’un des trois paliers de récompense pour un donjon donné.
 
Pour avoir son Laurel, il faut être Hardi !
 
Enfin, le score de votre personnage et de vos héros est toujours accessible en fin de tableau !
 

Dégustez, c'est prêt !

 

Le résultat final cadre avec nos intentions initiales, nous vous laissons le juger par vous-même !

Catégorie: Game design
Graoouuuw 15 Mars 2017 16:04
Très bonne chose !
Im-Treaz 15 Mars 2017 16:06
Supert !
makimimax 15 Mars 2017 16:10
comme d'hab jvais finir 2eme tfacon ...
p1995 15 Mars 2017 16:11
Nous remercions Keldawa pour ces blagues biggrin et aussi nous prions sur la santé de Enio ! Espérons qu'il va bien biggrin
Liezoun 15 Mars 2017 16:13
"JeanKevinRoxXxor avec ses 6 Crâ ou plutôt de celui du classique Salade, Tomates, Dégâts ?"

Et après on dit que Keldawa est le seul rigolo de l'équipe angry
Khawkey 15 Mars 2017 16:36
Très intéressant, notament la partie mécanique des serveurs et conception de l'interface (qui est très jolie en passant)
aracnodia 15 Mars 2017 16:47
Je ne vais pas faire de commentaires un ladder ne m'interresse vraiment pas.
Ce qui m'intrigue c'est les poudres qui vont maintenant servir dans l'ensemble des crafts, on peut en savoir plus?
Coyotebooom 15 Mars 2017 17:08
Super taff, le fait de nous donner autant d'infos (trop ?) sur la manière dont vous travaillez est une idée géniale, j'espère qu'on en aura d'autre smile Bravo au staff, on vous aime :* <3
Blitz-Ace 15 Mars 2017 17:19
Le serveur prototype est sûrement le serveur qui servira à accueillir la nouvelle feature PVP prévue pour la fin d'année , avec les Ouginaks.

C'est ma boule de cristal qui me l'a dis *hap*
TheAzrhael 15 Mars 2017 18:07
sympa