[quote]Gabriel > C’est justement ce que j’appelle “donner tout le boulot au serveur”. Pas forcément idéal pour avoir un jeu fluide 
Des clients P2P Open Source existent bel et bien, et Fran.b disait qu’il existe (et non pas qu’il pourrait exister) des clients qui ne font que télécharger, sans partager.[/quote]
Ok, je comprends, mais pour moi c’est different, j’évite juste de donner le boulot au client que devrait faire le serveur. C’est bien ici que réside la difficulté de réaliser un jeu en réseau pour moi.
Bon, il est vrai que j’ai parlé que du système de positionnement, qui pour moi est largement surmontable et optimisable. Après, il y a aussi les autres actions (attaquer, parler, etc.), mais le principe reste le même, le gros du travail reste du côté du client (rendu graphique, jouer des sons, etc.) mais la partie mise à jours des données, vérifications des positions des objets, etc. doit être faites par le serveur, pour la fluidité, je trouve pas ça génant pour 30-40 joueurs, si le serveur est bien développé et bien pensé. Après, si c’est codé par des porcs (ce qui est souvent le cas), je ne peux être que d’accord, par exemple, si à chaque message, il répond à tout le monde …
Ah si, quand tu te connectes, tu as la position de TOUS les joueurs, ce que je dis, c’est juste que quand quelqu’un bouge, il est inutile d’avertir quelqu’un qui ne te voit pas.
[quote]
Ton ébauche de protocole marche très bien pour des jeux simples. Je l’ai utilisé pas mal de fois sans problème. Pour un jeu temps réelle comme un FPS c’est extrêmement lourd. Soit tu impose une granularité (“un pas du joueur correspond à 1m”) et là ça peu être gênant pour le joueur soit tu as un cycle requète réponse 24 fois par secondes si possible à temps fixe et cela pour chaque client (il faut aussi prendre en compte les autres traitements que doit effectuer le client au moins pour créer le rendu après la réponse du serveur. Je choisi 24 fois par secondes car c’est le seuil de fluidité.[/quote]
Oui voilà, après pour des jeux ou le nombre de joueurs évoluent, il faut réfléchir différemment, surtout par rapport aux messages qui transiteront afin de limiter les notifications des joueurs (ne pas notifier des joueurs qui ne sont pas concerné). Mais pour moi, clairement, c’est le serveur qui doit travailler (en même temps, il est payé pour ça :)).