Salutations citoyens,

 

JukeboxLa semaine dernière, nous avons posté un message qui évoquait notre processus visant à résoudre les problèmes de lag et « d’effet élastique » dont souffre actuellement le mode multijoueur d’Arena Commander. Comme vous le savez, nous avons multiplié le nombre de joueurs y ayant accès par huit lorsque nous avons sorti le patch 12.4. Ce faisant, nous avons mis au jour différents problèmes au sein du client du jeu, des serveurs du jeu et de l’infrastructure réseau, que seule l’augmentation du nombre de joueurs a fait apparaître. Nous avons réalisé beaucoup de progrès dans la correction de ces problèmes et avons pu constater d’importantes améliorations sur les trois fronts, mais le patch n’est pas prêt à sortir aujourd’hui. C’est précisément pour réaliser ce type de test que nous avons opté pour le modèle de développement ouvert. La découverte de problèmes de ce type si tôt dans le processus va améliorer de façon significative l’expérience des joueurs sur le long terme et améliorer notre efficacité en nous permettant de faire les choses correctement dès le départ.

 

Le patch 12.5 doit ajouter le jukebox, que vous pouvez voir ci-contre, dans le hangar des abonnés actuels pour qu’ils puissent animer un peu leurs hangars en diffusant leur musique préférée. Vos jukebox ont été attribués à vos comptes mais n’apparaîtront pas dans vos hangars avant la sortie du patch. De plus, dans l’épisode d’Around The Verse de cette semaine, nous avons parlé d’une nouvelle menace Vanduul mystérieuse qui détruisait des vaisseaux de l’UEE. Cette menace sera ajoutée par le patch 12.5, moment à partir duquel nous encourageons les citoyens à partir à leur poursuite !

 

Bien qu’il n’y ait pas de patch aujourd’hui, nous aimerions vous faire part de ce sur quoi nous avons travaillé jusqu’à présent et comment nous avons approché le problème. L’équipe d’assurance qualité a travaillé dur pour en savoir plus sur le lag constaté sur les serveurs publics. Nous savons que c’est la source d’une très grande frustration, et l’AQ a mis les bouchées doubles pour isoler et reproduire ce problème afin que les ingénieurs puissent le corriger.

 

Dans le mode multijoueur d’Arena Commander, votre client reçoit des mises à jour de la part des clients distants via le serveur et, dans le cas des déplacements, l’IFCS (contrôle de vol intelligent) de votre client local simule en fait la physique de chacun des clients distants que vous pouvez voir en fonction de ces mises à jour. Votre client renvoie ensuite au serveur toutes les données de position et d’orientation pour chacun des clients distants que vous êtes en train de simuler. Le serveur compare ceci avec ses propres calculs et ceux que renvoient de leur côté les clients distants. Si une divergence apparaît entre les nombres communiqués, le serveur indiquera à votre client le décalage de la simulation des clients distants et injectera cela dans les calculs physiques de l’IFCS afin de repositionner discrètement les clients distants que vous pouvez voir en plein vol. Si la divergence devient trop prononcée pour effectuer ce repositionnement en douceur, alors les clients distants sont téléportés vers leur position correcte et la simulation reprend. Notre enquête sur ce problème a consisté principalement à trouver pourquoi parfois, pour certaines personnes, la simulation des clients distants divergeait tellement par rapport à ces derniers et par rappport au serveur que celui-ci imposait une téléportation.

 

Nous avons commencé par nous intéresser à d’éventuels problèmes au niveau des serveurs en effectuant quelques optimisations de l’équilibrage de la charge et en réduisant le nombre de serveurs par machine physique de 8 à 2, ce qui a réduit de façon drastique le trafic réseau de chaque machine ainsi que la surcharge du processeur, mais n’a pas permis de diminuer le lag ressenti par les joueurs. Cependant, cela a permis d’améliorer la stabilité et de limiter les ralentissements du CPU du serveur, ce qui va permettre d’améliorer les performances globales pour tous les joueurs.

 

Nous avons ensuite examiné la situation du côté du client en créant un environnement contrôlé dans lequel personne ne faisait usage de ses armes ou de son boost, puis nous avons progressivement augmenté le nombre de joueurs. En constatant qu’aucun lag n’apparaissait de la sorte, nous avons ensuite commencé à introduire d’autres variables dans le match.

 

Le fait de tirer sans toucher aucun joueur ne causait pas de problème, mais lorsque les vaisseaux ont commencé à se tirer dessus, le lag a fait son apparition et des joueurs ont commencé à se téléporter. Nous sommes parvenus à reproduire ce lag, mais il nous fallait une cause plus spécifique, donc nous avons essayé de rétrécir le champ d’investigation.

 

En évoquant le problème avec les ingénieurs, ceux-ci ont spéculé que la consommation énergétique induite par les tirs d’armes et l’absorption des impacts par les boucliers pouvait en retour réduire l’énergie disponible pour les propulseurs. Il était possible qu’à cause du lag ou de la surcharge des processeurs, la quantité d’énergie disponible pour vos propulseurs ne soit pas correctement communiquée entre le client distant, le serveur et votre ordinateur, impactant ainsi votre simulation physique. Cela pourrait provoquer un décalage dans la synchronisation des propulseurs entre les joueurs et occasionner des sauts de position lors de l’exécution de manœuvres erratiques. Les ingénieurs ont alors fourni à l’assurance qualité une version du jeu qui nous offrait un plus grand contrôle sur les propulseurs afin que nous puissions localiser précisément le problème.

 

Après avoir désactivé toute fluctuation d’énergie au niveau des propulseurs et les avoir tous réglés au maximum, nous sommes toujours parvenus à faire survenir le problème, bien que moins fréquemment. Ce test a mis en évidence un problème dans la façon dont les boucliers consomment de l’énergie, avec des pics énormes, ce qui a permis d’apporter quelques améliorations en termes d’équilibrage et de durcissement du code.

 

Notre équipe réseau s’est penchée sur la taille des paquets de données et les questions de bande passante. Leurs efforts ont aussi paru améliorer l’expérience du joueur et réduire la taille des paquets, et donc du trafic réseau, mais cela n’a cependant pas complètement réglé le problème.

 

Dans un même temps, nous avons effectué quelques changements supplémentaires dans la façon dont les serveurs enregistrent et stockent les informations. Nous avons tout d’abord découvert que certaines erreurs non-critiques saturaient l’enregistrement des serveurs et provoquaient des baisses de performance, ce qui occasionnait ensuite des divergences dans la simulation. Nous avons modifié les réglages du système d’enregistrement afin d’éliminer cette saturation et nous allons complètement retirer la fonction d’enregistrement du thread principal afin de réduire encore davantage son impact. Là encore, la situation a semblé s’améliorer mais le problème n’a pas été complètement éliminé. Cela a néanmoins permis d’améliorer la stabilité et les performances.

 

Nous allons générer ce soir une version qui amène des changements dans la façon dont nous synchronisons les calculs physiques. Ces changements visant à mieux synchroniser la physique entre tous les clients et le serveur devraient grandement réduire l’apparition de divergences de la simulation physique et nous donner de meilleurs outils pour les repérer et les corriger sans en passer par la téléportation.

 

À présent, tandis que j’écris ces lignes, nous venons juste de découvrir un nouveau problème potentiel qui pourrait contribuer à créer une mauvaise synchronisation du multijoueur. Cela viendrait de déconnexions du client mal gérées. Nous allons devoir nous pencher là-dessus durant le week-end.

 

La bonne nouvelle c’est que même en suivant une direction qui n’a pas permis de régler directement les problèmes de latence, nous avons tout de même fini par améliorer le jeu. Le travail accompli pour le patch 12.5 ne va pas uniquement corriger ce problème spécifique, mais bel et bien améliorer globalement l’expérience de jeu sur Arena Commander. Nous avons aussi travaillé directement à résoudre d’autres problèmes pour la version 12.5, ce qui devrait générer davantage de stabilité pour l’expérience multijoueur et corriger certains problèmes constatés par les donateurs, dont voici la liste :

 

Rejoindre une partie : actuellement, lorsqu’on rejoint un serveur, un pic de données important est transmis, qui peut provoquer du lag et des téléportations. Nos ingénieurs réseau ont cherché des moyens de compresser ces données, ce qui réduira la taille de ces paquets de connexion de 40%. Vous pouvez observer l’utilisation actuelle de la bande passante sur le graphique de données ci-joint.

 

Tentative de rejoindre des serveurs déjà pleins : les serveurs mettent actuellement un peu de temps à signaler que le nombre maximum de joueurs a été atteint. Cela signifie qu’un serveur presque plein peut malgré tout voir un nombre illimité de joueurs essayer de le rejoindre, alors qu’un seul d’entre eux y parviendra réellement et que les autres seront rejetés vers le hangar. Et avec les joueurs qui quittent la partie en cours de route, ce qui fait que le serveur est à nouveau presque plein, ce problème peut se reproduire indéfiniment au cours d’un match et provoquer un lag important. Nos ingénieurs chargés des serveurs sont en train de corriger ce problème.

 

Rejet vers le hangar : notre système VOIP actuel se connectait à tous les joueurs mais ne se déconnectait pas lorsqu’un joueur s’en allait soudainement, ce qui était la source de la majorité des problèmes de rejet vers le hangar dans les parties publiques. Un correctif a été créé.

 

Merci à vous de vous impliquer à nos côtés dans le processus de développement et de test ; vos efforts pour dénicher et cataloguer ces types de problèmes nous ont énormément aidés et nous n’aurions pas réussi à tous les trouver sans votre participation ! Nous faisons en sorte de corriger ces problèmes dans le mode multijoueur aussi vite que possible et avons hâte de pouvoir étendre le test d’Arena Commander à tous les citoyens. Comme vous pouvez le constater, beaucoup de travail a été accompli pour améliorer tous les aspects du multijoueur, que ce soit au niveau du client, du serveur ou de l’infrastructure réseau et nous pensons que le patch 12.5 devrait améliorer l’expérience de jeu de façon significative lorsqu’il sera prêt. Nous vous dirons où nous en sommes la semaine prochaine, et sortirons le patch 12.5 dès que nous serons certains qu’il puisse offrir une amélioration générale de l’expérience multijoueur d’Arena Commander.

 

Source : https://robertsspaceindustries.com/comm-link/transmission/14011-Arena-Commander-Patch-Update

Leave a comment

Your email address will not be published. Required fields are marked *