18/10/2017

Blog des développeurs : abus de ping, 'Peeker's Advantage', et prochaines étapes

Nous surveillons les commentaires de la communauté quant aux abus liés au ping, à la latence et au "Peeker's Advantage". Dans cet article, nous allons vous expliquer de quoi il s'agit, comment ces problèmes affectent le gameplay, et ce que nous faisons pour les corriger.

Avant de plonger plus en détails dans les problèmes de latence, nous tenons à préciser que pour Rainbow Six Siege, la reproduction et la validation des coups doivent favoriser les joueurs dont la connexion est la plus stable et la plus rapide. Pour ce faire, nous allons continuer à améliorer nos systèmes afin d'offrir la meilleure expérience possible aux joueurs dont le ping est faible et stable, tout en préservant l'accessibilité pour les joueurs au ping élevé.

Ping élevé et "Peeker's Advantage"

La reproduction est le procédé nous permettant de copier une série d'actions et de déplacements effectuée par un joueur sur un ordinateur distant (un serveur de jeu, par exemple). On peut comparer cela à un "fantôme" qui suivrait les joueurs, représentant leur position telle que vue par le serveur. Par exemple, si votre ping est de 200 ms, votre "fantôme" se trouve là où vous étiez 100 ms plus tôt (puisque le ping représente une durée aller-retour). Plus le ping d'un joueur est élevé, plus son "fantôme" est éloigné.

Cependant, si vous jetez un œil hors de votre couverture ("peek"), un ping plus élevé ne vous laissera pas plus de temps pour réagir et tirer avant de devenir visible par les autres joueurs. Ceci s'explique par le fait que tous les tirs doivent être validés par le serveur, en conséquence de quoi tout prolongement de la durée s'appliquera également à vos tirs.

Le "Peeker's Advantage" est une conséquence directe de cet effet de "fantôme", mais nous ne pouvons pas supprimer celui-ci : tous les déplacements devraient alors être validés par le serveur avant d'être effectifs sur votre client. Le délai de prise en compte s'en verrait rallongé (d'une durée égale à votre ping), ce qui serait contraire à la philosophie du jeu, qui vise à rendre les mouvements le plus réactifs possible. Cela étant, le "Peeker's Advantage" dépend uniquement de la vitesse de connexion de la victime, et pas de celle du "Peeker".

On appelle "fenêtre d'opportunité" la durée maximum qu'a la victime pour tirer et s'imposer une fois le "Peeker" visible. Le "Peeker's Advantage" vient du fait que cette fenêtre d'opportunité est toujours plus courte que le temps de réaction du "Peeker".

Fenêtre d'opportunité = Temps de réaction du "Peeker" – Ping de la victime (incluant le temps de traitement)

Dans la vidéo qui suit, nous allons vous montrer la différence lorsque la victime (le joueur 2) a une réaction plus rapide (150 ms) que le "Peeker" (le joueur 1) (300 ms). Vous remarquerez que le ping plus élevé du "Peeker" n'influe en rien sur le vainqueur : à mesure que le ping augmente, l'opportunité ne s'en trouve pas améliorée. Si le "Peeker" a pu tirer, la victime avait déjà réussi un tir à la tête validé par le serveur, et la mort du "Peeker" a eu pour conséquence le rejet de son tir.

Dans la vidéo qui suit, nous allons vous montrer l'impact du ping de la victime sur l'arbitrage des tirs. Si le temps de réaction reste inchangé (150 ms pour la victime, 300 ms pour le "Peeker"), nous augmentons progressivement le ping de la victime. Le ping du "Peeker" reste constant, et nous le réglons arbitrairement à une valeur élevée : 400 ms. L'augmentation du ping de la victime a pour conséquence une réduction de sa fenêtre d'opportunité. Si elle peut remporter le duel avec un ping bas (50-100 ms), elle commence à perdre dès que son ping est un peu élevé (200 ms).

Nous avons créé l'image suivante de façon à démontrer ce que vous avez pu voir dans les vidéos précédentes, sans le gameplay. Il s'agit d'une chronologie d'actions, l'ordre dans lequel les serveurs acceptent les informations, et la façon dont la latence influe sur ces étapes.

Peek1

Les données ci-dessus vous montrent comment le temps de réaction du "Peeker" est préservé sur le serveur, puis sur la simulation de la victime, même si le "Peeker" joue avec un ping élevé.

Peek2

Les données ci-dessus représentent l'impact du ping de la victime sur ses chances de survie. La victime devra faire feu sur son adversaire avant que le tir du "Peeker" n'atteigne le serveur, ce qui n'est possible qu'en tirant lors de sa fenêtre d'opportunité. Cette fenêtre d'opportunité n'est pas modifiée par le ping du "Peeker". Une fois un joueur officiellement mort sur le serveur, toutes ses actions suivantes sont rejetées, comme expliqué au tout début de cet article : le joueur disposant de la connexion la plus rapide et stable devrait toujours avoir l'avantage.

Prochaines étapes

Avec les renforts de mi-saison de la saison 3 (2e année), nous allons régler la façon dont le jeu prend en compte la latence, le traitement et la validation des coups. Nous prévoyons de continuer à travailler sur ces questions tout au long des saisons à venir.

Alignement de la latence

L'alignement de la latence permet au serveur de répercuter plus précisément le temps de réaction d'un tireur dont la connexion est instable. Si un joueur envoie des informations sur sa position à une cadence irrégulière, le serveur ajustera le timing des messages du tir à venir, de façon à mieux correspondre aux commandes de ce joueur. Même si l'impact n'est que de quelques millisecondes, il en résulte une plus large fenêtre d'opportunité lors d'affrontement contre des joueurs à la latence instable.

Physique "Pawn-to-Pawn"

Nous avons mis au point une nouvelle physique "Pawn-to-Pawn", qui devrait régler la question des joueurs se téléportant derrière les utilisateurs de bouclier. Ce problème était surtout récurrent lorsque vous bloquiez une porte avec Montagne.

Validation des coups améliorée

Nous allons réduire la limite de latence maximale requise, de façon à introduire plus d'étapes lors de la validation des coups. Nous vous donnerons plus de détails à ce sujet dans un prochain article.

Reproduction améliorée

Nous allons également optimiser la reproduction des actions, afin d'offrir une expérience plus réactive à tous les joueurs, en plus d'une réduction de la latence.

Délai de traitement et ping

Actuellement, la valeur du ping affichée dans les menus inclut le délai de traitement, ce qui peut induire le joueur en erreur, puisqu'un framerate plus rapide entraînera un ping moins élevé qu'indiqué. Nous allons donc retirer ce délai de traitement de la valeur du ping. Bien que cette modification n'ait pas d'impact sur le gameplay, la valeur affichée représentera plus précisément la vitesse de votre connexion aux serveurs.

Icônes de connexion

Nous allons mettre en place une série d'ajustements qui vous aideront à mieux surveiller votre client, le serveur et votre connexion réseau.

Avec ce changement, le jeu affichera jusqu'à quatre icônes dans le coin supérieur droit de votre écran. Celles-ci représentent la qualité de votre expérience de jeu, en fonction de votre ping, de la stabilité de votre connexion, du taux de rafraîchissement et de la stabilité de l'hôte (de gauche à droite).

Peek1

L'icône à l'écran vous préviendra en cas de dégradation risquant d'influer sur vos performances. Nous souhaitons ainsi vous offrir une représentation plus précise de votre statut de connexion, au-delà d'un simple ping. Les icônes se présentent sous deux formes : jaune et rouge. Les paliers peuvent être modifiés à tout moment par l'équipe de développement, les valeurs qui suivent ne sont donc qu'une simple approximation des paramètres actuels.

  • Icône de latence : l'icône de latence apparaît si votre ping est élevé. Une latence jaune signifie que votre ping est suffisamment élevé (entre 100 et 140 ms) pour que des étapes de validation additionnelles soient déclenchées par le serveur. Ces étapes s'appliquent lors du traitement de vos tirs, et pour déterminer s'ils touchent leur cible ou non. Vous remarquerez peut-être que certains de vos tirs ne sont pas pris en compte. Un ping élevé peut également avoir pour conséquence une mort désagréable à couvert. Une icône rouge signifie que votre ping est trop élevé (autour de 400-500 ms). S'il reste aussi élevé trop longtemps, vous risquez d'être exclu du serveur. Lorsque l'icône rouge est visible, presque tous vos coups seront volontairement rejetés par le serveur.
  • Icône de connexion : l'icône de connexion s'affiche lorsque vous rencontrez une perte de paquets ou une latence instable (par exemple, lorsque certains de vos paquets sont redirigés). Lorsque cette icône est à l'écran, vous pouvez rencontrer des problèmes de téléportation et de latence anormale, et vos tirs peuvent être rejetés par le serveur, des situations encore plus probables si l'icône devient rouge.
  • Icône de taux de rafraîchissement : l'icône de taux de rafraîchissement apparaît lorsque ce dernier est limité ou instable, et que le nombre de paquets envoyés par votre client au serveur n'est pas suffisant. Vos coups peuvent être rejetés par le serveur et vous risquez de rencontrer une latence anormale, causée par le serveur pour empêcher les autres joueurs de voir votre personnage se bloquer à l'écran. Vous risquez également de vous téléporter si l'icône est rouge.
  • Icône de l'hôte : l'icône de l'hôte apparaît lorsque le serveur rencontre des problèmes et ne peut pas préserver la stabilité de la simulation. Tous les joueurs connectés à ce serveur verront l'icône s'afficher en même temps. Lorsqu'elle est à l'écran, vous risquez de vous téléporter, et de rencontrer des problèmes de latence anormale ou de validation des coups, des situations plus gênantes si l'icône est rouge.

La plupart de nos changements à venir rendront l'expérience de jeu moins confortable pour les joueurs au ping élevé, mais nous y procédons en toute connaissance de cause, puisque nous estimons ainsi rendre service au jeu dans son ensemble.

N'hésitez pas à partager vos commentaires sur le subreddit de Rainbow Six !

Visiter nos autres réseaux sociaux

facebook icontwitter iconyoutube icontwitch icon