Suite à mon précédent document sur les protocoles d’Half-Life 1, il m’a semblé nécéssaire d’écrire un nouveau document pour décrire le protocole de Source d’une part, et le nouveau protocole d’Half-Life 1 (basé sur Source) d’autre part.

C’est désormais chose faite : document sur les protocoles d’Half-Life et Source

Je copie colle ma présentation :

Ce document est purement théorique. Il décrit les échanges entre un client et un serveur durant les opérations suivantes :

  • Interrogation du serveur MASTER : lorsque vous cherchez des parties en utilisant le navigateur intégré à Steam, c’est ce serveur qui fournit la liste des serveurs de jeu en activité. En étudiant le protocole utilisé lors de cette opération, vous pouvez récupérer vous-même des listes et les utiliser à toutes fins utiles.
  • Interrogation d’un serveur Half-Life 1 ou Source : le master ne renvoie que des listes d’adresses IP. Le protocole d’interrogation (query) des serveurs vous permet d’interroger un serveur de jeu en particulier et d’obtenir de lui 3 types de données : informations générales (nom, map en cours, mod, etc.), liste des joueurs sur le serveur, et CVARs publiques (règles).
  • RCON : cette fonctionnalité bien connue des administrateurs de serveurs de jeu permet d’accéder à la console d’un serveur à distance afin d’y effectuer des opérations d’administration (changements de map, banissement, manipulation de CVARs…). Ce document décrit le protocole dans lequel sont encapsulées les commandes envoyées à la console ainsi que les réponses du serveur.
  • Log distant : ce mécanisme proche du RCON consiste à envoyer les logs (journaux) depuis le serveur vers une machine distante, et ceci en temps réel. Extrêmemement puissante, cette fonctionnalité permet, en fonction du niveau de détail des logs, d’être notifié des fins de round aux changements de CVARs en passant par le chat, voire même des dommages infligés entre joueurs !

Bonne lecture.