Est-il possible d'avoir des véhicules avec de la physique comme GTA dans un jeu MMO? [fermé]

9

Je n'ai vu aucun jeu MMO avec des véhicules avec une physique réaliste et qui pourrait atteindre une vitesse élevée, pourquoi? Est-ce à cause des limitations de la bande passante du réseau?

Second Life a des véhicules, mais la physique est médiocre et la vitesse maximale est pathétique.


la source
APB n'a-t-il pas fait tout ce genre de choses?
coderanger
J'ai couvert quelques détails sur ce genre de chose sur gamedev.stackexchange.com/questions/6645/… qui devraient expliquer en grande partie pourquoi cela peut ou ne peut pas fonctionner.
Tim Holt
Je sais que c'est une vieille question, mais je voudrais mentionner Auto Assault. C'était un MMO avec la physique des véhicules.
William Mariager

Réponses:

19

Oui et non (mais surtout, non).

Tout jeu MMO a plusieurs limitations qui affectent sa physique. Le plus important d'entre eux est la latence . La latence est le temps nécessaire à un client pour envoyer une demande au serveur et recevoir une réponse. Même dans les meilleures circonstances, cette durée est d'environ 50 à 100 millisecondes. Dans le monde réel, elle peut atteindre 500 ms. Cela signifie que chaque fois qu'un joueur fait quelque chose - comme, par exemple, fait tourner la roue de sa voiture - il peut voir le jeu y réagir seulement 100-500 ms plus tard.

100 ms, c'est beaucoup. Tout jeu qui a autant de latence ne répondra pas et 500 ms seront carrément injouables. C'est pourquoi les clients de jeux utilisent de nombreuses astuces pour masquer cette latence. Par exemple, la voiture du joueur peut commencer à tourner au moment où il tourne la roue, sans attendre le serveur. Cependant, ces astuces ne masquent que la latence et ne peuvent jamais la réduire.

Supposons, par exemple, que deux joueurs dans des voitures se dirigent simultanément l'un vers l'autre. Chaque client commencera immédiatement à tourner sa propre voiture; mais la voiture de l' autre joueur ne tournera pas - parce que les informations de son changement de cap n'ont pas encore atteint le client, en raison de la latence. Les deux joueurs pilotent joyeusement leur voiture, puis bam! - le serveur remarque qu'ils se sont réellement écrasés.

De telles situations ne peuvent être évitées. Peu importe les plans de prédiction intelligents que nous utilisons, où il y a d'autres joueurs, il y a toujours une chance que les choses tournent mal. Dans n'importe quel jeu MMO, environ une demi-seconde que vous venez de voir ne s'est pas encore vraiment produite et peut changer à tout moment. Maintenant, dans les jeux plus lents comme les MMORPG traditionnels, une demi-seconde n'est pas vraiment longue. Les personnages ne bougent que d'un mètre ou deux pendant ce temps. Cependant, si nous parlons de course automobile rapide, une demi-seconde est vraiment très longue! Vous pourriez planter, comme, trois fois en une demi-seconde (-8

En fait, un jeu rapide peut fonctionner même avec ces limitations. Cela aurait des moments désagréables, mais tant que tous les joueurs ont de bonnes connexions, ce serait jouable. C'est ainsi que fonctionnent les jeux de course multijoueurs. Cependant, il existe une autre limitation MMO: le nombre de mises à jour N-carré.

Imaginez 10 joueurs jouant simultanément. Pour qu'ils se voient, le serveur doit envoyer à chaque joueur des informations sur tous les autres joueurs. Cela signifie, dans notre exemple, 10x10 = 100 informations à préparer et à envoyer. C'est le nombre de joueurs au carré, d'où "N-carré". Ce nombre augmente assez rapidement, et même les MMORPG traditionnels commencent à avoir du mal quand il y a beaucoup de joueurs dans la même zone. Pour notre jeu imaginaire au rythme rapide avec des voitures, ces informations doivent être envoyées beaucoup plus rapidement que dans un jeu plus lent. ET ils sont probablement plus gros eux-mêmes - vous devez envoyer non seulement des positions, mais des vitesses, des accélérations, des vitesses angulaires, etc. Cela signifie que tout jeu rapide à plusieurs joueurs ne peut avoir qu'un nombre limité de joueurs.

Les deux problèmes ci-dessus ne peuvent en principe pas être résolus par un logiciel, seulement masqués dans une certaine mesure. Ils peuvent être un peu réduits en limitant le nombre de joueurs - ainsi, par exemple, un jeu où les voitures rapides ne sont utilisées que dans des cas avec un nombre limité de joueurs est probablement faisable. Je pense que c'est ce qu'a fait APB. Mais un jeu MMO complet en monde ouvert avec des voitures rapides ne se produira tout simplement pas. Pas avant d'avoir des interfaces réseau à intrication quantique ou quelque chose du genre.

Ça ne fait rien
la source
Avez-vous vu DCUO, le monde de la physique, les voyages à grande vitesse, les bus et les voitures, tout ça. Le masquage est assez efficace. Étant donné que toutes les simulations physiques ne sont en fait que des simulations dont les joueurs ont besoin, ce n'est pas la réalité mais une simulation qui semble juste et impartiale. Et vous n'avez certainement pas besoin de la physique des tracés de Star Trek comme l'intrication pour obtenir cela =)
Patrick Hughes
@Patrick Hughes Je n'ai pas joué à DCUO, mais à en juger par les vidéos, il est loin d'être physique "GTA-like". Il ne semble pas avoir de véhicules - et c'est un élément important, car vous pouvez vous en tirer avec une physique "fausse" pour les super-héros beaucoup plus facilement que pour les voitures du monde réel. Beaucoup de gens attendent beaucoup de la physique automobile "réaliste".
Nevermind
Bien que cela soit vrai, il n'est pas non plus entièrement correct. Il est possible de jouer à des jeux de combat de véhicules à grande échelle avec des voitures, des chars et des avions, Battlefield 3 est un jeu assez important, même sans être un MMO, les fabricants ont pu courir avec plus de 100 joueurs simultanément. Consultez battlegroundeurope.com pour un MMOFPS où la physique joue un rôle majeur.
Coyote
Si vous disposez d'un moteur physique déterministe, la latence n'est pas un problème, car vous pouvez simuler la physique sur le serveur et le client. Le problème est principalement la puissance de traitement nécessaire, ou sa rentabilité.
Markus von Broady
@Markus von Broady Oui, tant que la contribution de vos joueurs n'affecte en rien la physique - vous êtes en or.
Nevermind
3

Oui.

Vous devez gérer la latence du réseau et synchroniser l'état du jeu sur le réseau. Plus les voitures se déplacent rapidement, plus la latence du réseau devient notable. Les joueurs peuvent s'écraser contre un mur, car leur client de jeu ne parvient pas à mettre à jour l'état du jeu sur le serveur en raison de problèmes de réseau. Ce qui n'est pas un problème lorsque les joueurs se déplacent à une vitesse de marche ;-)

Un serveur MMO a plus de charge. Un jeu de course multijoueur peut fonctionner correctement avec 10 personnes connectées, mais plantera et brûlera si le serveur ne répond plus sous la lourde charge de centaines d'utilisateurs.

La physique des véhicules de Second Life est tout simplement mal mise en œuvre. (Est-ce toujours vivant?)

Stephen
la source
2

Le Mod de Garry est à peu près toute la physique. Je ne pense pas que cela compte comme un MMO en tant que tel - bien qu'il supporte 32 joueurs par serveur - et qui a la physique la plus réaliste que j'ai vue (pas seulement des véhicules).

Je suppose qu'il n'y a pas eu de MMO conçu pour la physique.

Le canard communiste
la source
1

Ils ont essayé d'accomplir cela dans un échec majeur d'un jeu appelé bulletin tous les points. Et bien le concept était super l'exécution pas tellement. Des voitures aléatoires surgiraient de nulle part. Vous conduiriez et heurteriez juste un mur qui se transformerait alors en voiture. Je peux voir que cela se fait d'une manière ou d'une autre au cours des cinq prochaines années bien que plus de CPU moins de GPU.

rêver grand
la source
0

Regardons d'abord votre référence.

GTA lui-même a quelques problèmes avec le multijoueur, mais c'est normal. Un exemple est lorsque la latence transforme votre poursuite en voiture en cauchemar. Parfois, les joueurs s'entretuent à cause de la latence.

Mais la latence n'est pas le seul problème, vous ne pouvez pas exécuter un MMO uniquement avec des clients, vous avez besoin de serveurs et ces serveurs doivent gérer la plupart sinon la totalité de la physique pour éviter les tricheurs.

Imaginez donc devoir courir avec des milliers de joueurs. Imaginez également le stress sur les CPU pendant les activités intensives en physique. Vous pouvez compenser une partie du stress des GPU dédiés . Bullet Physics a une implémentation qui fonctionne sur CPU.

Mais pour éviter une surcharge dans un serveur, vous devrez implémenter un mécanisme pour gérer les redéfinitions de zones dynamiques en fonction de la densité des joueurs. C'est beaucoup plus important dans ce cas que dans d'autres MMO.

C'est faisable. Le problème ici est la nécessité de faire évoluer le jeu pour gérer plus de joueurs et d'exécuter l'instance principale du jeu répartie sur les serveurs.

Si vous parvenez à optimiser votre physique, à transférer des objets rapidement et efficacement sur les serveurs et à trouver un moyen d'éviter les méga foules (instances par exemple), vous pouvez le faire avec des limitations similaires à votre référence et quelques autres en raison de la nature du MMO Du jeu.

N'oubliez pas que vous n'avez pas à envoyer toutes les mises à jour de l'état du jeu à tous les joueurs à tout moment, seules les modifications qui sont immédiatement pertinentes pour le joueur doivent être envoyées en permanence, le reste peut être envoyé à un taux inférieur.

Coyote
la source
0

vérifier le mode mp rage gta 5, l'âge rouge russe ou le jeu de rôle FiveStar ont environ au maximum 1200 à 1600 joueurs sur un seul serveur, assez impressionnant, mais ils essaient de rajouter du trafic AI avec la version 0.4

FantomX1
la source