Riot Games donne des nouvelles de la campagne du nettoyage du client. Après l'amélioration des temps de mise en route, les développeurs parlent de la sélection des champions et de la fin de partie.
Plus tôt dans l'année, nous vous avons promis de vous parler tous les deux mois de notre travail en coulisses pour améliorer la performance du client de League of Legends et sa fiabilité.
Aujourd'hui, il s'agit du cinquième article de la série. (Voir le premier, le deuxième, le troisième et le quatrième article.)
Pour résumer : Maintenant que l'amélioration des temps de démarrage du client et de notre architecture est terminée, nous nous penchons enfin sur la sélection des champions. Nous avons aussi déterminé que la fin de partie serait notre nouvelle priorité.
La sélection des champions commence
Lorsque nous avons lancé cette série en mars, nous avions évoqué deux objectifs principaux : améliorer le temps de démarrage du client et la réactivité de la sélection des champions, dans cet ordre. En septembre, nous avons enfin réduit le temps de démarrage du client à 15,5 secondes pour 90 % de nos joueurs, et annoncé que le travail sur la sélection des champions pouvait enfin commencer.
Voici nos premières mises à jour.
Empreinte mémoire de la sélection des champions
Nous nous doutions que la sélection des champions aurait besoin d'autant de réparations que le reste du client : des applications Ember vieillissantes à consolider, du code à optimiser, des bugs à corriger et ainsi de suite. Au fil de notre exploration, nous avons découvert un problème inattendu : l'empreinte mémoire de la sélection des champions (et du client) augmente chaque fois que vous les utilisez au cours d'une même session de jeu.
Pour 90 % des joueurs, cela donnait ça :
- Pour la première sélection des champions, la consommation mémoire du client passe à 481 Mo.
- La deuxième fois, elle augmente de 56 Mo.
- La troisième fois, elle augmente un peu moins, d'entre 15 et 25 Mo.
Mais à mesure que vous cumulez les parties dans une même session, le client devient de plus en plus lent et vous finissez par devoir le redémarrer.
L'existence des fuites de mémoire dans le client n'est pas une surprise et nous pensions qu'une partie de cette fuite provenait de la sélection des champions. La taille et la fréquence des fuites constatées nous ont toutefois forcés à repenser notre approche. En parallèle de nos travaux prévus, nous allons à présent nous efforcer de concevoir des outils de développement plus spécialisés pour identifier et régler les fuites de mémoire dans tout le client de manière plus efficace, afin de réduire le temps nécessaire à la mise au point des améliorations.
Nous avons bien dit en parallèle. Nos progrès ont été légers, mais nous comptons mettre en place ces premières petites améliorations à la performance de la sélection des champions dans le patch 10.23. Nous avons amélioré la sélection du sort d'invocateur et du skin de balise pour qu'ils ne créent pas d'applis dormantes à l'ouverture. Cela nous mène à une petite réduction d'utilisation de mémoire, toutefois non négligeable (environ 1,6 Mo), lorsque les joueurs choisissent leurs sorts et skins de balise pendant la sélection des champions. Il s'agissait de deux des premières fuites de mémoire que nous avons découvertes et leur réparation fut un bon moyen de déterminer les processus utiles pour régler les plus grosses fuites qui nous attendent ! Nous comptons déployer des améliorations plus palpables d'ici la fin de l'année.
Expérience et interface de la sélection des champions
Outre la réparation de ce qui est cassé, l'amélioration de la sélection des champions passera aussi par l'identification des éléments d'expérience qui plaisent aux joueurs et de ceux dont nous pouvons nous passer parce que les joueurs les trouvent moins importants. Notre raisonnement est que l'expérience de sélection des champions est essentielle pour la boucle principale du jeu et moins cette expérience sera complexe, moins il y aura de risques de problèmes. Nous avons pris en compte les données du sondage réalisé auprès des joueurs concernant l'expérience utilisateur et l'interface de la sélection des champions et ajoutons des mesures du client pour renforcer ce sondage avec des données de l'activité des joueurs.
Voici une partie de nos premiers résultats et ce que nous comptons faire à leur sujet :
- Les joueurs veulent davantage de clarté et de rapidité sur l'effet de leurs clics, surtout lorsqu'il s'agit de choisir et d'interdire des champions. Nous améliorerons la rapidité et la fiabilité des retours auditifs et visuels de cette interface pour améliorer sa clarté.
- Les joueurs ne trouvent pas les cérémonies autour de la sélection des sorts d'invocateur et du skin de balise très importantes. Nous allons supprimer les animations associées (et réparer la fuite de mémoire susmentionnée).
- Nous allons ajouter une télémétrie pour voir à quelle fréquence les joueurs utilisent certaines fonctionnalités de la sélection des champions qui sont moins essentielles à la préparation de la partie. Si elles tombent davantage dans la catégorie amusant-mais-facultatif, nous pourrions les supprimer pour maximiser les gains de performance.
- Panneau des emotes
- Sélection des champions favoris
- Missions
Accéder à la sélection des champions
L'un des plus gros problèmes que les joueurs nous ont signalés est que l'accès à la sélection des champions peut engendrer de nombreux autres problèmes. La fiabilité de la sélection des champions est essentielle pour que les joueurs se sentent prêts à se concentrer sur la partie qui les attend. Il est essentiel de résoudre tous les problèmes qui pourraient empêcher d'interdire des champions ou de confirmer votre choix. Nous ne voulons pas non plus que vous ayez à vous demander si le skin, les sorts d'invocateur ou les runes que vous avez utilisés pendant des centaines de parties peuvent changer sans que vous le sachiez.
Maintenant que nous allons commencer à travailler dans ce domaine, les objectifs principaux de notre approche seront d'amener les joueurs à la sélection des champions avec assez de temps pour prendre des décisions critiques, afin que l'interdiction et le choix des champions soient fiables et que tous les joueurs puissent entrer dans le jeu.
Fin de partie
Ce n'était pas l'une de nos zones d'étude originelles lorsque nous avons commencé la campagne de nettoyage du client, mais la fin de partie (tout ce qui se passe entre le bouton « Continuer » sur l'écran de Victoire/Défaite et les interactions dans le salon post-partie) s'est depuis définie comme un élément frustrant, presque au même niveau que les temps de lancement et la réactivité/fiabilité de la sélection des champions. Nous concentrons cette étude des frustrations sur deux zones principales :
- Les joueurs ont signalé des problèmes au cours desquels le client reste suspendu à un bouton « reconnexion » après la fin de la partie, au lieu de tout de suite passer à l'Honneur. Nous cherchons encore la cause de ce problème.
- Parfois, le client se fige lorsque les joueurs y reviennent après l'écran de Victoire/Défaite, ce qui les empêche de voir ou d'interagir avec l'écran d'Honneur ou le salon post-partie. Nous avons des pistes prometteuses à suivre, qui devraient être disponibles pour le patch 10.23.
Bug des paramètres et pop-ups
En travaillant sur la sélection des champions et la fin de partie, nous avons aussi constaté une augmentation des rapports de bugs de paramètres dans les patchs précédents. Cela comprend des choses comme la sélection des champions qui oublie vos sorts d'invocateur, ainsi que de vieux pop-ups qui reviennent à l'écran (encore et encore et encore). Il fut pour le moins éprouvant d'analyser ces problèmes. Plusieurs équipes ont travaillé de manière indépendante pour mettre à jour leurs systèmes internes dans la même période, ce qui a créé une avalanche de plusieurs situations limites qui se sont combinées en une tempête parfaite où plusieurs joueurs ont subi au moins un problème de paramétrage. Nous avons introduit trois correctifs différents pour soulager la majorité de ces problèmes depuis le dernier article. Le plus récent était inclus dans le patch 10.21.
Nous allons continuer d'apporter des améliorations conséquentes à la sélection des champions et à la fin de partie, et nous travaillerons avec nos équipes internes pour suivre et régler les bugs que les joueurs rencontrent.