LoLTracker

 

Nettoyage du client : sélection des champions

image-1

coulisses pour améliorer la performance du client de League of Legends et sa fiabilité.

Aujourd'hui, il s'agit du quatrième article de la série. (Voir le premier, le deuxième et le troisième article.)

Résumé : Nous avons réussi à améliorer les temps de mise en route à tel point que nous sommes prêts à nous concentrer plus amplement sur d'autres sections prioritaires comme la sélection des champions. Nous partageons également de nouvelles données recueillies en interrogeant les joueurs à propos du client et de ses problèmes.

Temps de mise en route du clientSaisissez un titre

Au début de l'année, nous avions dit vouloir faire en sorte que le temps de mise en route du client ne prenne plus que 15 secondes, même pour les joueurs aux ordinateurs très lents.

Depuis, nous avons passé beaucoup de temps à examiner l'architecture du client, décelant les problèmes majeurs liés aux plug-ins et applications qui font fonctionner le client. Et ces dernières semaines, nous avons fait des avancées significatives qui nous ont énormément rapprochés de notre objectif.

La mise en route ne prend plus que 18,5 secondes pour les joueurs du 90e centile. Ce qui signifie que pour environ 90 % d'entre vous, elle est encore plus rapide (bien que nos avancements récents ne seront principalement remarqués que par les joueurs aux ordinateurs plus lents.)

Lors d'un précédent article, nous avions évoqué des ralentissements de la mise en route dus à l'affluence plus importante de joueurs causée par la pandémie de COVID-19. Vous pouvez observer ce pic en mars de cette année dans le graphique ci-dessus.

Nos progrès dans l'amélioration des temps de mise en route ont été réguliers dans les mois qui ont suivi ce pic, mais le changement le plus significatif est survenu plus récemment lors du patch 10.16. Cela peut être expliqué par certaines mesures clés prises par l'équipe.

Tout d'abord, lors du patch 10.14, nous avons implémenté une technologie qui nous a permis de découvrir l'impact de chacun des 68 plug-ins du client sur le temps de mise en route. Il s'avère que certains plug-ins étaient plus problématiques que d'autres. Nous avons découvert que seulement huit plug-ins étaient la source de 75 % du temps de charge des plug-ins, tandis que les 60 autres étaient à l'origine des 25 % restants.

Une fois que nous avions cette information, il a été beaucoup plus simple de cibler les plug-ins à consolider. Nous avons aussi décidé d'essayer des approches traditionnelles en plus de notre travail de consolidation. Lors du patch 10.16, nous avons commencé à implémenter une solution qui nous permet de décaler le chargement de certains plug-ins et applications Ember jusqu'au moment de leur utilisation.

Maintenant que nous sommes si proches de notre objectif originel pour les temps de mise en route, nous nous sentons prêts à nous consacrer à la deuxième phase de notre campagne : améliorer la réactivité et la fiabilité de la sélection des champions et d'autres sections clés du client.

Avant que nous entrions dans les détails de ce plan, nous voudrions partager quelques données que nous avons recueillies sur le client en proposant un sondage aux joueurs du monde entier.

Sondage de ressenti vis-à-vis du client

Vous pensez sans doute : « Rito, bande de noobs, pourquoi nous interroger à propos du client ? Vous savez déjà qu'il est nul ! »

Et euh... vous n'auriez pas entièrement tort. Toutefois, nous souhaiterions des données plus nuancées concernant les problèmes. Ces problèmes sont-ils répandus ? Et lesquels sont les plus graves ? En répondant à ces questions, nous pouvons établir un ordre de priorité dans notre travail. De plus, en quantifiant votre ressenti concernant le client, cela nous permet de voir comment celui-ci évolue avec le temps.

Nos premiers sondages n'ont été effectués que dans quelques régions, mais nous prévoyons d'en proposer d'autres dans le futur, en ajustant, ajoutant et retirant des questions en fonction des besoins, afin de nous permettre de suivre notre progression.

C'est dans ce contexte que nous avons des graphiques géniaux à vous proposer.

Pour commencer, l'une des choses sur lesquelles nous souhaitons enquêter, c'est l'évolution de votre perception du client chaque mois.

Ce résultat n'est pas vraiment surprenant, mais ce sont des données importantes qui nous permettent de poursuivre ces sondages sur la durée et qui nous octroient une vue plus complète de notre progression. Nous partagerons ces données avec vous dans les mois à venir.

Avec la question de sondage suivante, nous nous sommes concentrés sur des problèmes plus spécifiques :

Bien que certains problèmes soient plus communs que d'autres, près de 50 % des joueurs interrogés disent subir l'un de ces problèmes.

Ensuite, nous avons demandé aux joueurs ayant subi un problème technique de noter à quel point celui-ci était frustrant sur une échelle allant de « Pas du tout frustrant » à « Extrêmement frustrant ». Ci-dessous, vous pouvez voir le pourcentage de personnes qui ont qualifié ces problèmes de très ou extrêmement frustrants.

Voilà une autre représentation qui permet de voir la fréquence de signalement de chaque problème comparé à la frustration occasionnée :

Les graphiques de ce genre montrent clairement que deux problèmes en particulier sortent du lot.

Tout d'abord, les problèmes vous empêchant de choisir ou de bannir lors de la sélection des champions sont de loin les plus frustrants. Puis les temps de chargement longs de l'écran de fin de partie sont très communs. Maintenant que nous avons cette info, nous savons mieux quoi cibler lors de notre prochaine phase de travail.

Les prochaines étapes

Dans les mois à venir, nous souhaitons nous concentrer sur la résolution des problèmes les plus communs et les plus frustrants auxquels les joueurs font face avec le client. Alors, la prochaine étape de notre campagne de nettoyage du client se concentrera sur l'amélioration de la sélection des champions et la transition de la fin de partie vers les honneurs et le client.

Tout d'abord, parlons de la sélection des champions.

En février, nous avions annoncé que notre but ultime était d'améliorer la réactivité des boutons de l'interface de la sélection des champions. Plus précisément, nous avions dit vouloir faire baisser le temps de réponse à 100 ms pour les éléments comme le bouton « Verrouiller », même pour les joueurs du 90e centile.

Toutefois, à présent, nous avons réalisé que si nous voulons que les joueurs soient comblés, nous devons revoir des composants clés de la sélection des champions.

Le travail que nous ferons sur la sélection des champions se divise en trois objectifs principaux. Nous comptons :

  1. Rendre la sélection des champions plus fluide et fiable. Les joueurs réclament depuis longtemps une sélection des champions plus vive et réactive. Nous aimerions redéfinir certains composants pour améliorer la réactivité, réduire la consommation de mémoire, simplifier l'architecture et limiter les abandons accidentels au cours de la sélection.
  2. Ré-évaluer l'expérience utilisateur et l'interface utilisateur de la sélection des champions. Nous travaillerons avec notre équipe de conception pour voir où il est possible de retirer ou corriger les animations de mauvaise qualité et les composants gourmands en ressources.
  3. Traiter autant de bugs connus que possible en mettant la priorité sur ceux contrariant le plus les joueurs.

En même temps que nous traitons la sélection des champions, nous emploierons certaines ressources afin de rendre plus fluide la transition depuis l'écran des honneurs vers le salon de fin de partie. Trop de joueurs indiquent subir des lags avec cette partie du jeu, c'est pourquoi nous établissons déjà un plan pour régler ce problème.

Ce procédé prendra du temps, sans doute plus que ce que nous aimerions. Mais notre engagement tout au long de notre campagne est de vous parler de notre travail de la même façon dont nous en discutons en interne : de façon honnête et transparente.

Nous reviendrons vers vous dans deux mois avec un autre article comme celui-ci pour vous faire part de nos progrès. En attendant, comme toujours, merci à vous de jouer !

RedTracker #324 : Le processus de découverte du ga...
Demandez à Riot : pétales spirituels
 
You must login to post a comment.
People in conversation:
Loading comment... The comment will be refreshed after 00:00.
  • This commment is unpublished.
    Josio · 4 years ago
    Intéressant cet article!
    Pour ma part un des points qui me frustre un peu en sélection des champions c'est quand je clique sur la sélection des champions par rôles, que je tape dans la recherche et que je ne trouve pas le mien. Si par malheur je veux jouer un pick exotique et que je clique sans faire exprès sur un rôle, il suffit qu'il ne me reste plus beaucoup de secondes pour choisir et c'est le stress.
    Je suis quelqu'un d'assez visuel, et parfois j'hésite sur le champion que je veux jouer... le fait de tous les voir, me donne des idées. Tiens je pourrais jouer Brand au lieu de Xerath, ou bien... pourquoi pas partir Sion au lieu de Shen etc... Le jeu a tellement de champions que parfois certains sont effacés de notre mémoire (coucou Skarner).
    Bon après vous me direz que c'est mon problème, je n'ai qu'à pas trier les champions par rôles ^^
    • This commment is unpublished.
      Philidia
      • Administrateur du site
      · 4 years ago
      Pas que ton problème. La sélection des champions aurait tellement d'améliorations ergonomiques à avoir... x)

      Moi c'est l'intégralité du client qui me frustre. Comment est-ce qu'on peut en arriver à un résultat aussi mauvais que même le simple fait de mettre un compteur pour choisir combien de fragment de clés on veut acheter avec des jetons d'events n'est pas possible ? ...
      • This commment is unpublished.
        Mithrandir · 4 years ago
        Personnellement j'ai le sentiment que Riot a démarré en fonctionnement start up avec du code fait à l'arrache mais qui marche et ils n'ont toujours pas osé refaire leur code proprement en suivant une bonne méthode de conception ce qui fait qu'ils ont juste des couches et des couches de patch par-dessus une base moisie faute de pouvoir faire mieux. Et maintenant qu'ils ont des moyens énormes, ils n'osent toujours pas y toucher parce que leur merdier a fini par devenir un trop gros chantier pour qu'ils osent s'y atteler et ça continue d'empirer.


        PS : Et puis il faut savoir d'où vient lol, parce qu’à sa création, les gars qui ont fondé lol il avait passé pas mal de temps sur l'éditeur de W3 et pour y avoir moi-même passé pas mal de temps, je comprends que le résultat soit dégueulasse s'ils ont récupéré son style de fonctionnement ce qui est malheureusement fort probable (mais ce point ne devrait affecter que le jeu et non le client).
        • This commment is unpublished.
          Agart · 4 years ago
          C'est vrai qu'ils ont commencés complètement en indés en codant dans leur garage sans doute, avec le fameux spaghetti code qui date du début de lol tout ça on connait. Mais c'est surtout qu'à la base ils nous ont sortis un nouveau client flambant neuf.

          Mais du coup à quoi bon en faire un "nouveau" pour que ça soit codé aussi mal voire plus mal que le précédent ? Bref avec Rito il y a un manque de sérieux sur certains aspects sur certaines choses même si ça a enfin l'air de s'améliorer depuis un moment.
          • This commment is unpublished.
            Bubu · 4 years ago
            Moi ce qui me fume le plus c'que les améliorations qu'ils ont faites récement et qui ont je pense le plus plu a la communauté ce sont des trucs que les employés ont fait sur leur temps libre (notament les VU des champs et l'amélioration de l'outil d'entrainement)
            • This commment is unpublished.
              Agart · 4 years ago
              Ouais c'est carrément ça, en partie aussi car les joueurs peuvent participer et donner des idées je pense.

              C'est le genre de truc on se demande pourquoi c'est fait en mode "bénévolat"
        • This commment is unpublished.
          Philidia
          • Administrateur du site
          · 4 years ago
          Le client actuel c'est le 3ème. C'était normal d'avoir un truc merdique à la première itération parce que le jeu sortait à peine, et qu'il avait été codé à l'arrache. Pourtant Riot a réussi à faire un gros travail de modernisation sur le jeu lui-même, pour qu'aujourd'hui on puisse avoir des concepts comme le vol d'ultime de Sylas, ou les nombreuses armes d'Aphelios. On est loin des débuts du jeu où contrôler une unité en plus était quasiment impossible.

          La 3ème itération du client utilise des standards et des frameworks modernes, en passant notamment par du chromium et d'autres outils supposés donner un résultat optimal, et déjà utilisés chez d'autres poids lourds. Donc on n'est pas sur une base moisie, Riot a refait sa copie en partant du début, ce qui aurait dû donner un bon résultat, permettant d'avoir un client stable, avec des fonctionnalités modernes comme de vrais salons de discussions et pas des clubs limités à 3, des gestions d'équipes dignes de ce nom pour Clash, un système de notifications fonctionnel, la possibilité d'offrir n'importe quoi à un ami et pas une liste prédéfinie, etc... La liste est longue, et ce qui était acceptable à la sortie du jeu ne l'est plus aujourd'hui pour une boîte de cette taille, avec un tel nombre d'année d'existence et d'expérience. C'est pas un dev indé qui fait ça sur son temps libre ou par passion, c'est une boîte qui brasse beaucoup d'argent et qui a le jeu le plus joué au monde depuis des années entre ses mains, et qui sort aujourd'hui d'autres jeux, avec des systèmes bien plus fonctionnels que le détritus à la disposition des joueurs sur LoL.

          Désolé mais il n'y a pas d'excuse valable à mes yeux actuellement. C'est de l'incompétence, du je m'en foustisme, ou les deux. Le LoL d'aujourd'hui n'a rien à voir avec le LoL d'il y a 10 ans.
          • This commment is unpublished.
            Agart · 4 years ago
            C'est ce que je dis depuis un moment, Rito n'est plus une petite compagnie indé depuis un moment. Ils ont le jeu le plus joué au monde et leur client est une énorme blague. D'ailleurs je me demande vraiment pourquoi ça prends toujours autant de temps. Genre concrètement je me souviens pour les 10 ans du jeu ils ont fait une sorte de campagne "envoyez tous les bugs du jeu". Et depuis on a quand même un assez gros nombre de bugs corrigés à chaque patch mais.
            Pourquoi attendre aussi longtemps à chaque fois avant de prendre de bonnes décisions ? Moi je pense qu'ils ont un coté je m'en foutisme presque assumé chez Rito d'où le fait que pleins de choses cools arrivent arrivent sur le "temps libre" des rioters.

            Il y a des gens très compétents chez Rito (pas tous) donc je pense juste que c'est une question de mentalité de leur entreprise. Si forcément chez Rito ils travaillent quand ils ont pas la flemme ça doit pas aider à aller très vite.
      • This commment is unpublished.
        samaz · 4 years ago
        Franchement si ma mémoire me joue pas des tours, il me semble que pendant un moment on pouvait le faire sur le PBE.
   facebook   Discord2   rss   logo twitter   

Derniers articles

LoLTracker ferme ses portes après plus de 10 ans de bons et loyaux services !
Thèmes abordés : Fermeture imminente du site, Project L, pause de fin d'année chez Riot, Riot mobile, et bien plus !...
Analysons les problèmes actuels de Yuumi et notre manière d'aborder sa refonte.
Une nouvelle mise à jour a eu lieu sur le PBE, apportant de l'équilibrage
C'est le dernier patch de l'année, la 12.23B est là !