Envoyé par : Raphael
Date : 28/12/2006 13:43
Bonjour, je voudrais pouvoir créer un jeu mettant en relation 2 PC utilisant une application XUL.
Pour discuter avec un serveur, a priori, il faut passer par XMLHTTPREQUEST non ? Mais peut-on discuter directement avec un autre PC ? Via son IP ? Comment se code se genre de jeu ? Est-ce que l'un des 2 PC doit servir d'hôte ? Ou bien les 2 PC doivent-ils être constamment synchronisés ? Quelle approche prendre ?
Il m'est venu une idée pour promouvoir le réseau Jabber, et me délester d'une gestion fastidieuse de connexion et de gestion de joueurs. J'ai vu qu'il existe déjà de nombreux projets de clients Jabber en XUL (Mango,...) donc il est possible de mettre en relation mes joueurs via le réseau Jabber en utilisant une MUC par exemple.
Et je me demande s'il serait possible d'ajouter des données de jeu aux messages, que mon client saura parser et traduire. De cette manière, je pourrais alors faire transiter toutes les données/actions des joueurs via Jabber ce qui aurait de nombreux avantages :
Apparemment il n'existe qu'une bibliothèque en JS pour Jabber : JSJac, mais orienté web... Je ne suis pas sûr de pouvoir l'utiliser pour une application XUL. Et le code de Mango semble terriblement vaste et complexe pour moi. Existe-t-il d'autre librairies ?
Que pensez-vous de ce projet ? Est-ce réalisable ? Et l'utilisation de Jabber est-elle envisageable pour faire transiter des données de jeu ? De mon point de vue, l'idée semble novatrice et puissante mais qu'en est-il vraiment ? Est-ce trop lourd ? Est-ce techniquement réalisable ?
Merci d'avance pour votre avis sur la chose.
Envoyé par : Paul Rouget
Date : 28/12/2006 16:17
J'ai déjà eu l'occasion d'utiliser Jabber coté XUL (XPCom), mais j'avoue que c'est quelque chose d'assez compliqué. N'hésites pas à exploiter les composants de Mango, mais attends toi à avoir du boulot.
Si tu veux quelque chose de plus simple, tu peux utiliser les sockets en JS: http://www.xulplanet.com/tutorials/mozsd(..).
Mais si tu as du courage, je te conseille vraiment XMPP (jabber).
Envoyé par : Raphael
Date : 28/12/2006 21:26
Ok, il est vrai que promouvoir Jabber serait une réelle motivation !
Et donc, toi qui a bossé dessus, penses-tu qu'il est possible d'envoyer des informations en se servant de ce réseau ? Afin de jouer avec quelqu'un à un jeu ?
Un message Jabber semble être un document XML de la forme :
<message to="toto@jabber.org" type="chat"> <body>Salut !</body> </message>
Serait-il possible de le modifier en quelque chose comme :
<message to="toto@jabber.org" type="chat"> <game_status>Playing</game_status> <game_action>Attack</game_action> ... </message>
Est-ce que ce message passera au niveau des différents serveurs ? Ou bien pas du tout...
En gros, est-ce que mon projet est viable ? Et si non, comment sont habituellement développer des jeux Online tout bête comme Pong ou autres ? Comment sont gérés les échanges de données ?
Merci.
EDIT : D'après quelques réponses sur Jabberfr.org, il semblerait que ce soit possible, il y a même une JEP à propos d'un protocole pour un jeu d'échec entre Jabber Users : http://www.xmpp.org/extensions/inbox/che(..)
Il ne reste plus qu'à me mettre au boulot... =)
Envoyé par : Paul Rouget
Date : 28/12/2006 22:03
Oui oui... le protocole XMPP permet tout ce genre de choses. Mais sinon, en général, si tu veux faire communiquer deux programmes et que tu ne trouves pas de protocole adapté, crées le tien. Et pour cela, tu auras besoin des sockets (cf mon dernier msg).
Envoyé par : Raphael
Date : 29/12/2006 10:13
Merci, je considère donc mon problème comme réglé, il ne me manque plus qu'à bosser dessus dès que j'aurai un peu de temps (c'est que mon CAPES de Maths est dans moins de 3 mois maintenant, faudrait que je lâche mon PC et mes projets en XUL moi XD).
Envoyé par : Utilisateur anonyme
Date : 01/02/2007 02:44
Je pense avoir la solution à ton problème: http://xulfr.org/wiki/xmpp4moz
Il n'est plus possible de poster des messages dans ce forum.
Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.
Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™
sont des marques de la fondation Mozilla.