Attention! Cette news a été publiée avec l'ancienne version du site. Il peut y avoir quelques problèmes d'affichage des informations dans des versions de navigateur spécifiques.
12 mars 2015

La mécanique des dommages



Armement 

Nous sommes vraiments fans de la diversité des technologies militaires des différents pays, et nous avons toujours essayé de coller à la réalité autant que faire se peut. Pour cette raison nous faisons attention à ce que nos armes reflètent les armes réelles - c’est la seule manière de mettre en valeur l'ensemble des véhicules militaires, après leur puissance de feu. Chaque arme est unique à sa manière, et afin de maintenir leurs caractéristiques, nous étudions de nombreux documents et ajustons en fonction non seulement les armes, mais aussi chaque munition. Cette approche nous permet de vous transcrire l'esprit de chaque véhicule le plus précisément possible.

Tout d'abord nous allons vous montrer comment nous allons accorder canon et autres mitrailleuses. Les armes des avions et des tanks fonctionnent sur des principes similaires dont voici un exemple, pour ne citer que celui-là. Le canon D-25T 122 mm, qui était installé sur les tanks IS-2, IS-3 et IS-4M. En utilisant l'accord de cette arme comme exemple, nous reflèterons le travail qui sera fait sur toutes les autres armes du jeu et comment elles fonctionnent. 

Les paramètres des armes incluent de nombreuses variables comme sa propagation et des limites techniques comme sa vitesse de tir. Pour ajuster ces paramètres, nous utilisons diverses sources d'information comme les champs de tir et les documentations techniques des véhicules eux-mêmes. C'est la recherche d'une documentation véritable qui est l'étape la plus chronophage et la plus difficile puisque des sources donnent des données différentes les unes des autres. La vérification des sources prend du temps, un temps nécessaire ensuite pour trouver toutes les données disponibles. Nous utilisons ici des données depuis “Données de visée du canon du tank 122mm de 1943 variante D-25T” Publication militaire MO URSS Moscou, 1969, mais aussi “Munitions des canons 122mm pour tanks, véhicules terrestres  et artillerie autopropulsée. Instruction” Ministère de la Guerre de l'URSS 1952, “manuel d'artillerie du Sergent ” publication militaire NKO 1944. 


Tableau de valeurs de visée des munitions ‘BR-471’ urilisées pour les canons 12,2-cm-D-25T 


 

(Ellipse et échelle de dispersion selon la distance, direction et hauteur.)

Actuellement, la vitesse de feu de notre jeu est une valeur moyenne alors que dans la vie réelle le temps de rechargement subit une multitude de variables. Parmis ces variables nous trouvons l'aménagement des munitions (lors de l'envoi des munitions, celà force le mitrailleur à prendre des bombes à une place moins pratique dans le véhicule). Nous pouvons simuler le rechargement grâce à des plans prenant en compte les mécaniques, ce qui signifie introduire une vitesse de feu variable selon la fatigue du cannonier, la position de la tourelle elle-même, qui définit quel est le réservoir de munition le plus proche et lequel est le plus éloigné. Par exemple le Patton place une petite partie de ses munitions juste à côté du cannonier, le reste étant stocké en étage, ce qui rend le rechargement beaucoup plus long. Si nous mettons en place un système similaire, celà entrainera un rechargement plus rapide des premières munitions par rapport au temps de rechargement actuel, tandis que les rechargement futurs seront plus chronophages. Ce système n'en est encore qu'au développement pour l'instant.

La vitesse de tir est affichée en nombre de tirs par secondes, et celle de notre arme est de 0.048 tirs par seconde, soit un tir toutes les 20.8 secondes. C'est le temps de rechargement minimal de toute munition pour ce véhicule avec les compétences de l'équipage poussées au maximum. 

La propagation est calculée depuis le tableau de données suivant où nous prenons les valeurs moyennes de déviation sur une distance de 1000m, dans le cas où notre cannon est à 0.3 mètres, et à partir de ces données nous calculons l'index de l'angle de dispersion de l'arme. L'axe médium de l'ellipse représente quatre fois la valeur moyenne de déviation sur les axes verticaux et horizontaux, ce qui correspond dans notre cas à 1.2m, à 0.069 degrés sur les axes verticaux et horizontaux. Celà signifie qu'à 1000 m, la propagation maximale du D-25T atteindra grossièrement les 2.4 mètres, ce qui signifie que même avec une propagation maximale, vous pourrez toujours toucher la silhouette du tank à cette distance.

Beaucoup d'armes, bien entendu, auront des valeurs de déviation différentes sur les axes horizontaux et verticaux et dessineront une ellipse. Dans le même temps, dans la moitié des cas, l'obus touchera à mi-chemin entre le début et le centre plutôt qu'au niveau maximal d'angle de déplacement. C'est ainsi que nous simulons le niveau de précision des armes du jeu en comparaison des véhicules réels de combat.

Obus

Maintenant que l'arme possède ses premières caractéristiques et est prêt pour la bataille, occupons-nous de ses munitions. Une grande variété de formes de munitions furent utilisées, les lister toutes et décrire leur fonctionnement est un sujet à part entière à traiter séparément. Pour vous montrer les ajustement effectués, nous utiliserons une des munitions de notre arme en exemple : une munition perforante hautement explosive. 



Tout d'abord, nous paramétrons certaines données comme le poids de l'obus (25 kg), son calibre (0.122 m), sa vitesse initiale (795 m/s), et son type (munition perforante hautement explosive – APHE). Ces valeurs déterminent son ricochet et sa normalisation, les paramètres des dommages cinétiques ainsi que ses propriétés additionnelles, comme la présence de matériau explosif. Nous avons ensuite des paramètres ballistiques (la perte d'énergie de la munition, et la possibilité que celle-ci s’enflamme en percutant un module inflammable) – ce paramètre est différent de la fonction explosive, et nous pouvons l'utiliser pour simuler la possibilité de lui mettre feu depuis les traceurs (dans le cas de munitions traçantes) ou encore depuis les étincelles produites par l'impact d'une munition sur un obstacle. 

Le mur protège une partie du tank des débris et de l'onde de choc de l'explosion)​

D'autres paramètres existent comme la fragmentation, le détonateur ou l'explosivité. La vague d'explosions et les éclats d'obus tiennent compte non seulement la structure du paysage mais aussi des obstacles rencontrés sur leur chemin (dans la vie réelle les explosifs ne se dispersent pas en ligne droite ou depuis un seul et même point). Celà signifie qu'un tank peut se cacher des ondes de chocs et des fragments derrière divers obstacles, et des modules du tank peuvent en protéger d'autres en absorbant les dommages additionnels. par exemple, une munition pénétrant le blindage arrière d'un tank et qui explose derrière le moteur ne devrait pas blesser l'équipage, le moteur absorbant l'onde de choc. 

Chaque munition individuelle de nos modèles physiques possède ses propres caractéristiques, comme le pouvoir explosif, l'importance de son onde de choc peut pénétrer à petite distance, et le rayon d'explosion à cette distance est à son maximum pour la disparaître totalement. Hormis l'explosion elle-même, l'obus possède aussi une action fragmentatrice à qui nous donnons un rayon, une capacité de fragmentation et une capacité de pénétration. Il est également intéressant de noter que des éclats d’obus secondaire sont aussi ajoutés aux éclats d’obus après que la cible elle-même est pénétrée. 

Comme vous pouvez le voir, il y a un assez grand nombre de ces paramètres et nous considérons comme important de permettre aux joueurs de déterminer l’effet d’un obus sans devoir lire une longue liste de caractéristiques. C’est précisément pourquoi les icônes d’obus sont différentes selon les paramètres. Si la munition a une forte pénétration, alors l’icône montrera exactement cela. Si elle a une substance explosive et / ou un effet de fragmentation de l’obus lui-même, alors c’est ajouté à l’icône. Soyez prudent lors du choix d’obus, les variations n’ont pas uniquement des caractéristiques des propriétés explosives, de pénétration ou de fragmentation différentes, ils perdent aussi leur énergie différemment. Notez comment la valeur numérique de pénétration d’armure change selon la distance de tir. Cela est indiqué sur l’infobulle de l’obus.


Vous pouvez facilement comprendre les différents effets de l’obus simplement en regardant les icônes

Lorsque nous évoquons le système de modélisation des dégâts, il est très important d’au moins souligner le fait que dans notre jeu, nous modélisons les caractéristiques des différents types de matériaux. Le verre, verre renforcé, bois, divers types de métaux utilisés dans l’aviation et les véhicules terrestres. Chaque matériau possède sa propre durabilité face à l’épaisseur d’acier de chaque blindage. Par exemple, nous calculons que 40 mm de blindage laminé à une épaisseur équivalente à un blindage en acier équivalant à 40mm, un blindage coulé à 37.6 mm d’équivalent en épaisseur, le verre renforcé à 88m et le bois est à 4mm.

Définir le point d’impact

Une des questions les plus importantes, en particulier pour les jeux en ligne est la question de la définition du point d’impact sur un ennemi lorsque deux joueurs peuvent avoir des connexions internet avec des niveaux de qualité totalement différentes. C’est particulièrement pertinent lors de parties où les combattants peuvent se déplacer à grande vitesse ce qui est le cas dans les batailles aériennes.

Pour notre jeu, nous avons développé un système afin de définir la position de chaque joueur indépendamment du délai avec lequel ils jouent. Nous n’irons pas dans les petits détails mais pour résumé, cela fonctionne de la manière suivante : le serveur reçoit uniquement les propres commandes du joueur (par exemple : le mouvement du joystick, les boutons utilisés, commandes des volets etc.) et les actions individuelles (comme l’activation des extincteurs et les requêtes de respawn) et en utilisant ces informations, le système calcul le mouvement et actions de chaque joueur. Simultanément, il calcule séparément chaque obus tiré en y incluant la balistique complète ainsi que la différence entre la vitesse des véhicules (un obus fera plus de dégâts en attaque frontale comparée à la même munition utilisée sur un avion s’éloignant) et les effets que ces obus ont. Tout cela est indépendant de la cadence de tir du véhicule et sans aucune simplification !

Par exemple, les mitrailleuses du Hurricane ont une cadence de feu de 1000 coups par minute ce qui signifie qu’en appuyant sur la seconde gâchette du Hurricane, qui contient 12 mitrailleuses, cet avion seul peut tirer 200 balles par seconde et chacune d’entre elles à son propre vol et trajectoire calculé individuellement par le serveur

Nous allons vous rappeler comment le calcul des dégâts fonctionne dans le jeu pour l’aviation et les véhicules au sol après qu’un tir ait lieu :

  • Vérification de brèche : si le calibre est six fois supérieur à l’épaisseur de la plaque, celle-ci est automatiquement percée.
  • Si il n’y a pas de brèche : vérification de l’impact.
  • S’il n’y a pas d’impact de tir, une vérification de pénétration se met en route et les caractéristiques suivantes sont prises en considération : valeur de la pénétration actuelle, angle d’inclinaison du blindage, angle d’inclinaison de la machine, angle d’impact. L’épaisseur de l’armure est calculée puis il y a une vérification afin de constater si oui ou non l’obus peut pénétrer le blindage. Si ce n’est pas le cas et que l’obus est explosif, il explose et les parties adjacentes peuvent être endommagées.
  • S’il y a pénétration, l’obus inflige des dégâts au blindage, l’obus perd de la valeur de pénétration et dégâts cinétiques proportionnellement à l’épaisseur de l’armure et continue sa trajectoire. Ainsi, chaque obus cinétique créé un cône de fragmentation qui peut endommager les composants et l’équipage dans sa zone d’impact
  • L’obus lui-même continue son trajet et va percuter des composants internes après que chaque vérification ci-dessus ait eu lieu (hors cas lorsque l’obus frappe un blindage ayant une épaisseur inférieure à 3-4 mm, il n’y aura de cône de fragmentation dans ce cas). Des vérifications sont effectuées jusqu’à ce que la valeur de pénétration de l’obus soit suffisante afin de pénétrer un composant ou jusqu’à ce que le fusible d’amorçage soit désactivée (si l’obus est explosif et que le blindage n’était pas assez épais afin de l’arrêter). La distance nécessaire pour le fusible d’amorçage est de 0.5-1.5m depuis le point de pénétration selon le calibre et le type.
  • Lorsque le fusible d’amorçage se déclenche, une explosion s’ensuit créant des sphères de fragmentations de dégâts. Les membres d’équipage et les composants à l’intérieur de ces sphères peuvent être endommagés par les éclats et l’onde de choc.

Le serveur envoie alors les résultats de ces calculs à chaque joueur dans la partie afin de synchroniser les données avec celles calculés par les machines de chaque joueur. 

Grâce à la compensation du temps de latence, qui consiste en une extrapolation des données physiques, l’affichage des modèles est aussi interprété par le biais d’une simulation physique supplémentaire, vous verrez donc toujours les joueurs à la position la plus proche possible de leur véritable position ce qui permet aux adversaires de pouvoir cibler les zones critiques de leurs cibles peu importe le temps de latence de chacun des participants à la bataille (jusqu’à un certain point, bien entendu). Tous les objets physiques de ce monde, en particulier les véhicules lourds, possèdent une inertie et des propriétés physiques qui contraignent leur « cône d’incertitude » c’est-à-dire les états possibles dans un espace donné lors d’un temps de latence. Cela donne la possibilité d’atteindre des résultats significativement meilleurs aux jeux de tir en ligne sur la compensation de la latence. Cela permet aussi d’obtenir une réponse entièrement indépendante dans le jeu de la réponse réciproque du serveur ce qui veut dire que toutes vos actions (tirs, manœuvres) sont immédiatement prises en compte par votre client sans délai. Nous essayons autant que possible de faire en sorte que la latence lors du contact avec le serveur ne remette pas en cause le plaisir de jeu et grâce à ce système, les joueurs avec différentes valeurs de ping sur différents serveurs remarqueront à peine la différence dans l’expérience de jeu. Seuls les joueurs ayant une ping élevé remarqueront les manœuvres brusques en retard et de façons exagérées comparé à ce qui s’est réellement passé.

Bien sûr, aucun algorithme ne peut remplacer une connexion instable lorsque les paquets de données n’atteignent pas le serveur ou le client. Dans de tels cas, les joueurs peuvent voir les manœuvres des adversaires avec un temps de retard ou d’une façon différente ainsi qu’éventuellement d’autres soucis lors de la partie. Tout dépend de la fréquence de perte des paquets de données. Cependant, même dans ce cas, nous avons mis en place des mécanismes dédiés à limiter autant que possible les soucis rencontrés par les joueurs. Par exemple, le mouvement principal et les contrôles de tirs peuvent souffrir d’une perte de paquets de données au-delà de 50%. Cela nous permet de réduire encore davantage les conséquences d’une mauvaise connexion. Cependant, il est utile de rappeler que n’importe quel jeu en ligne sera meilleur avec une bonne connexion internet !


L'équipe War Thunder


Rejoignez-nous sur  et   , ou encore sur le Forum !

Cookie-files

Ce site utilise des cookies. En continuant à naviguer sur ce site, vous acceptez l'utilisation des cookies.