Bienvenue, Invité. Merci de vous connecter ou de vous inscrire.
Avez-vous perdu votre e-mail d'activation ?

Auteur Sujet: Serveur / Client.. Comment faire une bonne gestion ?  (Lu 2306 fois)

0 Membres et 1 Invité sur ce sujet

Slash94

  • Jr. Member
  • **
  • Messages: 89
    • Voir le profil
Serveur / Client.. Comment faire une bonne gestion ?
« le: Mars 17, 2017, 04:00:35 pm »
Salut à tous,

Je viens vous voir car j'aurais besoin de renseignements sur le déroulement d'un bon système de gestion de serveur/clients.

Alors voilà, j'ai un serveur qui peut accueillir, admettons 8 clients, bon, ce n'est pas la question, mais voilà, je voudrais savoir s'il est plus judicieux que chaque client possède dans un sous dossier les maps à charger et que ce soit le client qui gère les collisions, la lecture des fichiers MAPS etc ou bien si il serait plus avantageux que ce soit le serveur qui calcule tout ça et qui renverrait les informations propres à chaque client

collison : OUI / NON
envoi sous forme de boucle (x/y) les coordonnées de la map aux clients pour l'affichage des tiles

etc.

Quelle serait la manière la plus optimisée et la plus intelligible selon vous ?

Merci !

janf

  • Newbie
  • *
  • Messages: 45
    • Voir le profil
Re : Serveur / Client.. Comment faire une bonne gestion ?
« Réponse #1 le: Mars 19, 2017, 03:34:19 pm »
Savoir si c'est le client ou le serveur qui gère les collisions, les positions des joueurs etc., ça répond à la question de la triche. Veux-tu réduire au maximum toute possibilité de triche ? Alors c'est le serveur qui calculera si le client peut aller dans la direction qu'il demande, ou s'il est bloqué par un mur. Si c'est le client qui calcule, alors il peut influer sur le déroulement du programme et envoyer au serveur une position pour lui signaler qu'il a traversé le mur.

Voilà déjà une chose à considérer.

D'un autre côté, si le serveur doit envoyer tout le niveau à charger au client, ça prendra beaucoup de bande passante et influera sur les performances du serveur, possiblement mêmes celles ressenties par les autres clients qui n'ont rien demandé.
Il est plus judicieux que les fichiers map soient stockés localement chez le client, après pourquoi pas tenter d'éviter la modification des maps en faisant vérifier le checksum de celles-ci par le serveur.

Bon, à part ça, je ne m'y connais pas plus que ça, je ne sais pas comment ils font dans l'industrie, surtout pour les gros MMO avec des milliers de joueurs par serveurs.
Il me semble que la plupart du temps les positions sont calculées à la fois côté serveur et client, ainsi l'affichage chez le client est ultra-rapide, pas besoin d'attendre la confirmation du serveur, et de l'autre côté, le serveur met régulièrement à jour la position du client s'il y a un décalage entre là où le client croit se trouver et là où le serveur l'a positionné.

Slash94

  • Jr. Member
  • **
  • Messages: 89
    • Voir le profil
Re : Serveur / Client.. Comment faire une bonne gestion ?
« Réponse #2 le: Mars 19, 2017, 08:07:31 pm »
Salut Renardesque :-)

Merci beaucoup pour ta réponse, tu m'as appris le terme "checksum" sur le quel je vais faire diverses recherches, merci beaucoup à toi !

janf

  • Newbie
  • *
  • Messages: 45
    • Voir le profil
Re: Serveur / Client.. Comment faire une bonne gestion ?
« Réponse #3 le: Juillet 29, 2017, 07:00:05 pm »
Hey ! J'avais pas vu ta réponse et comme il y a pas masse de topic dans le forum je me permets de remonter pour te dire : de rien ^_^ Avec plaisir :)