NEWS - GENNEWS – rFactor2

rF2 MIse à jour 1114

La sortie d’une nouvelle version de rFactor 2 est typiquement quelque chose que nous faisons avec un journal des modifications à puces classique, mais cette fois nous avons pensé qu’il méritait un peu plus que cela.

Lors de notre récente épreuve rF24, des problèmes techniques sont apparus qui ne nous ont pas laissé d’autre choix que d’attirer l’attention sur la course. Nous avons décidé de nous regrouper immédiatement et de réorienter nos priorités vers la dissection et la résolution de ce qui s’est avéré être des problèmes de longue date. Ce n’était pas une tâche simple, mais nous avons retroussé nos manches collectives et nous nous sommes enfoncés. Avec beaucoup d’aide des équipes participantes, nous avons analysé tous les problèmes et pour la première fois, nous avons pu reproduire la plupart d’entre eux. Leur cause s’est avérée être des cas très spécifiques dans les’rejoints’ et les’échanges de pilotes’, nous avons donc procédé en nous concentrant sur la tentative de briser ces caractéristiques de la manière la plus différente possible.

Donc, bien sûr, une grande partie des résultats s’appuyaient sur des tests intenses et ciblés au cours des dernières semaines. Devoir revenir en arrière et tester de multiples scénarios à plusieurs reprises et travailler pour trouver des correctifs et des solutions de contournement exigeait une approche bien pensée et une solide compréhension des problèmes de la part de tous les intervenants, tant du côté des essais que du côté du développement. Cette concentration intense nous a donné un aperçu des nombreuses façons dont les choses peuvent mal tourner dans le feu de l’action. Heureusement, nous avons aussi eu l’appui massif de la communauté rFactor 2 grâce à la rétroaction et aux histoires d’après course, ainsi qu’à l’enregistrement – ce qui a été inestimable et une énorme poussée pour aider à trouver la cause profonde de plusieurs de ces problèmes que les gens ont dans les événements en ligne. En tant qu’équipe, nous avons examiné méticuleusement chacun de ces rapports et cherché tous les détails spécifiques qui pourraient nous orienter dans la bonne direction.

-Sélection et mise à niveau des voitures
L’un des principaux domaines sur lesquels nous nous sommes concentrés était les problèmes liés à la reconnexion après avoir été déconnecté pendant une session, par exemple lorsque la connexion réseau est interrompue pendant un moment. rFactor 2 a toujours permis à un pilote de rejoindre une course après une panne informatique ou un problème réseau, mais dans certains cas, en rejoignant le serveur, le pilote se retrouve avec un DNF (Ne pas terminer), un DQ (exclusion) ou leur nom apparaît en bas de la liste simplement « en attendant une séance ouverte ». Bien sûr, ces résultats sont incorrects et la question pour nous était : qu’est-ce qui déclenche ces scénarios ? Nos recherches et nos essais ont rapidement montré que, dans la plupart des cas, ces problèmes étaient liés à la réintégration et soit a) au choix d’une voiture totalement différente de la voiture choisie, b) au choix de la bonne voiture avec la mauvaise livrée, soit c) au choix de la bonne voiture et de la bonne livrée, mais avec un ensemble différent de mises à niveau.

Vous vous demandez peut-être : « Pourquoi est-ce un problème, je choisis toujours les bonnes options » ? C’est peut-être vrai dans 99% des cas, mais c’est le 1% qui nous fait mal ici en fin de compte. Il est difficile de s’assurer qu’une équipe de plusieurs pilotes choisit toujours les bonnes options. Il s’avère que le fait de commettre une erreur cause des problèmes à plus de personnes que le conducteur qui rejoint le véhicule, et nous devions donc nous assurer que cela ne puisse plus se produire.

Pour résoudre ce problème, nous avons d’abord examiné le code de base du processus de réintégration pour nous assurer que toutes les options concernant la voiture et les surclassements sont héritées et restent avec chaque conducteur, indépendamment des déconnexions ou des échanges de pilotes précédents. Cela signifie que lorsque vous rejoignez la voiture A et que vous mettez à niveau X, elle sera enregistrée de manière plus robuste, ce qui évite de perdre l’historique du conducteur. Ensuite, nous avons travaillé à rendre ce processus plus convivial, de sorte qu’il est en fait impossible de faire une erreur en se joignant à nous. Nous avons amélioré le protocole réseau pour communiquer à votre client les voitures, les livrées et les mises à niveau utilisées auparavant, afin que nous puissions choisir la voiture qui vous convient. Par exemple, si vous vous joignez à une ‘BMW M8 GTE’ avec le ‘Le Mans package’ et ‘my-team-livery’, et que vous avez un problème réseau pendant la course et que vous êtes démarré, au lieu de voir la liste complète des voitures, les livrées de l’équipe, et les mises à jour à la reprise, vous voyez seulement votre BMW M8 GTE et l’option pour changer la mise à jour n’est plus disponible. Vous n’avez qu’à récupérer votre voiture !

Cela nous amène à un autre point important et l’effet secondaire de rejoindre les erreurs. Rejoindre la mauvaise voiture ou la mauvaise mise à niveau causait souvent des retards et des gels pour tous les autres conducteurs déjà sur le serveur car tout le monde était obligé de charger une voiture différente en temps réel sur la piste (au lieu de la voiture qui était garée dans le garage quand vous avez débranché).

-« Prise en charge de l’IA et noms des chauffeurs dans le menu des PITS »:
Un problème récurrent que nous avons vu, c’est que lorsqu’un échange de conducteur a lieu, l’IA prend soudainement le contrôle de la voiture sans avertissement.

Ceci a été causé par la tentative de remettre la voiture à un coéquipier qui n’était plus un passager ou même sur le serveur au moment de l’arrêt au stand. Par défaut, rFactor 2 a ensuite été configuré pour laisser l’IA prendre le relais. Cela s’est avéré être une mauvaise idée et nous avons modifié le code pour ne plus le faire. Cela signifie qu’à partir de maintenant, si le conducteur qui prend la relève n’est plus présent, vous conserverez la voiture à la fin de l’arrêt au stand. Cela vous permettra de continuer à courir et de réessayer un échange de pilote avec votre coéquipier sans que l’IA ne prenne le relais et ne gâche votre course.

Lors de la sélection d’un conducteur dans le menu DES PITS, les noms des passagers resteront coincés dans la liste et pourront être sélectionnés indépendamment du fait qu’ils aient quitté le serveur ou cessé de rouler avec vous. Cela signifie que vous sélectionnez votre coéquipier dans le menu de la fosse, qu’il quitte le serveur ou arrête de rouler avec vous, mais que son nom reste dans le menu de la fosse et peut être sélectionné. Cela a causé de multiples problèmes : Lors de la déconnexion/rejointe, on se retrouvait souvent avec un DNF, et si le nom d’un pilote qui ne roulait plus ou qui avait quitté le serveur était sélectionné, l’IA prenait le relais. Nous avons corrigé ce problème en supprimant simplement tous les pilotes de la liste du menu des stands qui ne sont plus avec vous (comme cela aurait dû être le cas depuis le début).

-Déconnexion/rejoindre 
Les déconnexions pendant qu’un autre conducteur roule, qu’il attende un échange de conducteur ou qu’il en ait terminé un, se terminent par un DNF à la rentrée. Par exemple, vous conduisez sur une piste, votre coéquipier roule avec vous et vous obtenez une déconnexion. En rejoignant l’équipe, vous ne pourrez plus courir et le nom de votre coéquipier apparaîtra dans la liste en tant que pilote avec un DNF. Nous avons corrigé ce problème en nous assurant qu’au moment de la déconnexion/rejointe, seul le conducteur actuel conserve la voiture, tous les autres membres de l’équipe restent simplement enregistrés comme  » passagers  » et ne sont pas considérés comme conducteurs tant qu’un échange de conducteur réel n’a pas eu lieu.

-Paramètres du menu DES PITS verrouillés après rejoindre
Un autre problème que nous avons examiné et que nous avons pu corriger est l’impossibilité soudaine de changer les options du menu de la fosse après s’y être réinstallés. C’était particulièrement un problème si vous aviez une déconnexion avec très peu de carburant et que vous ne pouviez pas demander plus de carburant lors de l’arrêt au stand suivant, en fin de compte vous seriez à court de carburant et finiriez la course avec un DNF. Toutes les options du menu de la fosse de voiture autorisées devraient maintenant être ouvertes à la sélection lors de la réinstallation.

-Améliorations de l’intégration à STEM
Dans le cadre de notre processus de profilage continu basé sur les logs qui nous sont envoyés par les utilisateurs, nous avons également découvert que les fonctions API « temps réel » fournies par Steam pouvaient provoquer de petits hoquets. Nous avons techniquement résolu ce problème en internalisant le plugin d’origine et en nous assurant d’exécuter ces fonctions sur un thread en arrière-plan afin qu’elles ne puissent jamais interférer avec notre boucle physique. Ce changement se fait à la fois côté client et côté serveur et cela signifie que vous ne verrez plus de SteamPlugin.DLL dans votre dossier plugins (et nous avons fait en sorte que si elle est toujours là par accident, elle est ignorée à partir de cette compilation).

-Temps de chargement plus courts
Enfin, nous avons également passé un peu de temps à profiler et à optimiser le processus de chargement de la voie et des wagons. Des tests internes ont montré des améliorations de l’ordre de 30 à 50 %, ce qui devrait aider les gens en général. Un chargement plus rapide signifie évidemment aussi que vous pouvez rejoindre le navire plus rapidement, perdant ainsi moins de temps dans l’ensemble.

-Quelle est la prochaine étape ?
Le Build 1114 est la première des deux versions prévues pour résoudre les problèmes que nous avons découverts. Nous avons décidé de diviser le processus en deux, en nous concentrant d’abord sur les bogues majeurs et ensuite sur les plus petits. Nous avons pensé qu’il était important de mettre une mise à jour entre les mains de tout le monde le plus rapidement possible, mais seulement après nous être assurés de ne plus pouvoir casser cette compilation. Comme toujours, nous encourageons les gens à mettre à jour leurs serveurs dédiés et leurs clients et à signaler tout problème. Nous nous engageons fermement à bien faire les choses et à continuer d’améliorer l’expérience en ligne dans rFactor 2. Nous prévoyons avoir une mise à jour sur ces questions le mois prochain, mais encore une fois, nous prendrons tout le temps dont nous avons besoin pour nous assurer que ces problèmes mineurs sont également complètement disparus.

 

Bouton retour en haut de la page
WP Twitter Auto Publish Powered By : XYZScripts.com
Fermer