Bonjour à toutes et à tous,
Voici la première de nos présentations trimestrielles de l’amélioration de performance de jeu. Écrite par notre équipe d’Ingénierie, elle explique les différentes améliorations de performance prévues pour la Mise à Jour 27. Si ce n’est pas encore le cas, nous vous encourageons à consulter également la Présentation du combat dans la Mise à Jour 27,
ici.
--
Salut les amis !
Nous voici, prêts à vous présenter certaines des améliorations de performance prévues pour la Mise à Jour 27. Il est impossible de présenter tout ce que l’équipe a fait, nous voulions souligner certains domaines sur lesquels nous nous sommes concentrés, et le résultat que nous espérons retirer de notre intervention.
Amélioration de zones d’effet persistantes : les compétences à zones d’effet qui durent longtemps peuvent potentiellement adresser de nombreux messages au client. C’est particulièrement vrai dans des zones comme Cyrodiil, où de nombreux joueurs lancent régulièrement ce type de compétences pour se protéger ou attaquer. Pour diminuer cet effet, nous avons mis en place une nouvelle technologie de gestion des zones d’effet sur le serveur, qui conservera les mêmes fonctionnalités, mais réduira radicalement le nombre de messages que le client devra traiter. Les tests internes ont été concluants, et ont amené une réduction de la latence et des chutes de rafraîchissement sur le client. Nous adoptons une approche prudente dans le déploiement de cette nouvelle technologie : pour la Mise à Jour 27, nous ne l’emploierons que sur l’Étendard de Chevalier dragon (et ses évolutions). Nous évaluerons les améliorations que cela générera sur le PTS, et étendrons ce système à d’autres compétences dans les mises à jour à venir.
Note : outre notre travail sur les zones d’effet persistantes, l’équipe mènera aussi une série de tests sur les serveurs live au cours des prochaines semaines. Ces tests se centreront sur les zones d’effet en Cyrodiil, et nous permettront de recueillir encore plus de relevés sur les scénarios réels. Nous vous donnerons davantage de précisions sur ces tests au cours des semaines à venir.
Compétences d’ensembles d’objets : l’équipe a inspecté et rationalisé chaque compétence d’ensemble d’objets, afin de trouver des moyens d’améliorer leur performance. Cela a permis de réduire le nombre de calculs effectués par le serveur et, comme pour les améliorations des effets de zone, une réduction du nombre de messages envoyés au client.
Situations de mémoire critique : nous savons à quel point il peut être rageant de se téléporter dans une ville très active et de voir le jeu planter instantanément. Nous avons grandement réduit le nombre de plantages liés à la saturation de mémoire avec les mises à jour récentes, mais cela peut encore se produire. Pour empêcher ces plantages, les versions consoles détecteront en amont l’imminence d’une saturation de mémoire, et réagiront en déchargeant de manière temporaire les familiers pacifiques et les personnalités des joueurs extérieurs à votre groupe. Nous avons pu mettre à profit le travail fourni pour la Mise à Jour 26, qui déplaçait les familiers pacifiques vers le client. Une fois la mémoire revenue à un état stable, ces ressources seront à nouveau chargées à mesure que les joueurs se déplaceront.
Simulation physique : notre implémentation du moteur physique Havok, spécifiquement pour les éléments des forteresses en Cyrodiil, a connu quelques problèmes au fil des ans. Nous avons pris le temps de nettoyer le code de cette mécanique, pour réduire les complexités inutiles et donner aux éléments des forteresses le même comportement que les mobiliers ordinaires. En l’essence, leur comportement et leur apparence ne changeront pas. Pendant ce temps, nous avons aussi réglé son compte à un bug assez sournois, à cause duquel certains éléments physiques n’étaient pas correctement purgés de la mémoire. Ce problème n’était pas spécifique à une zone en particulier, et provoquait le plantage du client. Donc, ce travail sur le moteur physique devrait réduire le nombre de bugs et de plantages.
Performance des Épreuves : nos statistiques ont montré que la performance des Épreuves sur le serveur n’est pas une expérience constante. Nous avons pu déterminer la cause de ce problème : les lanceurs d’instance qui géraient simultanément plusieurs Épreuves généraient généralement de moins bonnes performances. Nous avons inspecté l’algorithme qui déterminait la distribution des instances d’Épreuves, afin qu’il tienne compte de ce fait. Cela diminuera les chances que nos lanceurs d’instances soient surchargés par des utilisations intenses, ce qui avait un impact sur les Épreuves.
Améliorations de bases de données : nous avons changé les systèmes de gestion pour inclure un cache de base de données dans la mémoire de nos processus serveur, ce qui réduira les tensions dans nos bases de données de production lors des périodes de charge. À l’origine, pour la Mise à Jour 27, nous voulions poser les fondations du système et nous concentrer sur une petite partie de l’outil de recherche d’activités, ce qui aurait fluidifié le traitement. Une fois que nous aurons évalué l’effet de la chose sur les serveurs live, cela permettra lors des prochaines mises à jour d’ajouter d’autres fonctionnalités, et donc d’effectuer davantage de tâches simultanées sans dégrader les performances.
Écrans de chargement intermittents : il est toujours frustrant de courir ventre à terre en Cyrodiil et de se retrouver interrompu par un écran de chargement. Nous avons identifié deux domaines qui pouvaient créer cette situation. La première est un bug dans le stream des ressources mises à l’échelle, qui changent entre les modèles principaux et les modèles simplifiés. Cela devrait être réglé par un patch incrémental de la Mise à Jour 26 sur les serveurs live. Le deuxième problème concerne un bug qui peut considérablement agrandir le rayon de stream physique lorsque le client est réglé sur un champ de vision très profond, ce qui augmente le nombre de chargements nécessaires. Ce correctif sera déployé avec la Mise à Jour 27. Nous surveillerons activement les statistiques des serveurs live après le déploiement de la MàJ 27 pour déterminer s’il faut continuer de travailler à ce problème.
Nous sommes conscients que cela ne réglera pas tous les problèmes que nos joueurs rencontrent, et qu’il reste beaucoup à accomplir. Nous allons continuer de travailler d’arrache-pied pour vous apporter la meilleure expérience possible. La Mise à Jour 27 apportera d’ailleurs quelques changements expérimentaux en Cyrodiil. Nous vous annoncerons les détails dans une Mise à Jour à venir. Merci !