Pb De Programmation Php, Récupérer infos/players/rules d'un serveur de jeu CSS avec les s |
30/03/2011 - 19:26:43 |
Post
#1
|
|
Group: Member Posts: 13 Joined: 22/03/2011 |
Bonsoir tout le monde (IMG:http://forum.17buddies.rocks/style_emoticons/default/smile.gif)
Je suis en ce moment en train de concevoir (enfin plutôt paufiner) un gestionnaire de serveurs de jeu/rapports de wars pour ma team. Actuellement, il est stable et marche bien. Cependant, j'aimerais récupérer des informations complémentaires comme par exemple les variables d'un serveur (rules) et le score des joueurs (ainsi que des infos supplémentaires sur le serveur en lui-même comme l'OS ou l'hébergeur). La plupart des infos que je récupère vient de la commande RCon "status". Je teste aussi l'état du serveur (online ou offline) en envoyant une commande par socket avec retour en une seconde (suffisant pour savoir si oui ou non le serveur est en ligne). Je me suis basé sur ceci : http://developer.valvesoftware.com/wiki/Server_queries Ainsi que sur ce cours qui l'a permis de bien comprendre le principe des sockets et de la récupération des données par ce biais : http://a-pellegrini.developpez.com/tutoriels/php/cstrike/ Avec ces deux liens, j'ai réussi à récupérer les informations du serveur et le challenge number. Cependant j'ai quand même un gros doute sur ce dernier, car les deux autres requètes, à savoir les joueurs et les rules (qui demandent d'injecter dans la commande le challenge number) ne marchent pas (en faisant un echo de la réponse en brut, cela me donne une chaine ridiculement courte (6 caractères) concernant les rules). J'ai alors essayé des solutions toutes faites : steam-condenser, GameQ, etc..., rien n'y fait, je retrouve le même problème. Je me suis aussi intéressé au petit Gadget de Windows 7 que Chapo (je crois) a conçu pour 17's Buddies, que j'utilise d'ailleurs. Et surtout aux données JSON récupérées par le Javascript du widget. pour le moment, j'utilise avec honte ces données pour mon gestionnaire, ce qui me rend très dépendant de 17's Buddies. Ma question est donc la suivante : y a-t-il une autre approche pour recueillir les informations que je recherche ? Et si non, qu'est-ce qui fait que cela ne marche pas de mon côté ? |
|
|
31/03/2011 - 17:16:08 |
Post
#2
|
|
Group: 17 Buddies Posts: 18 535 Joined: 27/12/2003 Team: Dev. 17b |
Je ne me sers du Request ID que pour une seule chose: savoir si le paquet est compressé ou pas:
Code $IsCompressed = (($RequestId & 0x80000000) != 0); La comparaison entre le RequestId et le Packet number m'importe peu (même si effectivement je devrais le faire). (IMG:http://forum.17buddies.rocks/style_emoticons/default/icon_jap.gif) |
|
|
Lo-Fi Version |
Skin © Chapo
|