wiki:InsiaProgPerlProjetBomberStep3

Version 2 (modified by Vincent Caron, 14 years ago) (diff)

--

Projet Perl Bomberman

Projet Perl - Bomberman réseau

Réalisation (3) - Protocole réseau

Principe du jeu en réseau

Quand un jeu fait intervenir plusieurs participant via le réseau, il faut désigner un arbitre. Il s'agit en général d'une machine dédiée, le "serveur". Cela veut dire qu'aucun client ne peut prendre de décision sans en demander la permission au serveur, cela concerne en particulier les mouvements autorisés !

En pratique, cela veut dire que le "client" se transforme en simple terminal graphique:

  • Tous les événements claviers sont interprétés en tant que commande (aller à gauche, poser une bombe) et immédiatement envoyés au serveur
  • Tous les éléments d'affichage (mises à jour) sont envoyées par le serveur: déplacer tel joueur (y compris le client lui-même), déclencher une explosion, etc.

Enfin d'un point de vue technique, cela veut dire qu'en plus des événements clavier, il va falloir traiter un nouveau type d'événement - dit réseau - pour réagir dès que le serveur nous envoie des informations.

Notez que la communication est totalement asynchrone: les évenements de sortie (envoie d'action vers le serveur) et d'entrée (réception d'ordre du serveur) ont lieu de manière indépendante.

bla