JeuWeb - Crée ton jeu par navigateur
Hebergeur + socket - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : Hebergeur + socket (/showthread.php?tid=5934)

Pages : 1 2 3 4 5 6 7


RE: Hebergeur + socket - Sephi-Chan - 22-01-2012

(22-01-2012, 11:17 PM)Aleskweb a écrit : Non j'ai tendance a m’éparpiller
/biographie on
J'ai pendant longtemps hésité entre flash et java pour un jeu.
J'ai donc opté pour le flash et je suis au final arrivé a un bon rendu (Ceci http://hpics.li/9d535b6 ) , déplacement, attaques, sorts. Arrivés aux collisions et aux problèmes de coordination personnages armures, je me suis rendu compte que j'etais trop gourmand et j'ai mis en pause ce projet en 3D pour y revenir l'année prochaine une fois que j'aurais commencé mes études dans la prog.

J'ai donc tout reprogrammé pour le passer en 2D isométrique. Mais mon pote graphiste est parti a marseille et j'ai donc stoppé car j'etais du coup plus trop motivé.

Les mois sont passés et je me suis rendu compte que le flash trainait la patte alors que le java avait de l'avenir.
J'ai donc tout recommencé a prog en java
/biographie off

Maintenant je cherche a intégrer le mode multijoueur (petit a petit)
Mais pour tout avouer, je ne connais pas grand chose aux sockets ni aux échanges clients/serveur. Si je parle beacoup des sockets, c'est que je les ai utilisés pendant environ 6 moi quand je programmais un bot pour le jeu 'Dofus' (qui fesait a peu près tout) en Visual Basic a partir d'une base de reception/émission de packets.
Donc je connais a peu près comment cela ce passe pour le traitement des packets, en revanche meme avec des documentations, j'ai du mal a comprendre comment sa passe l'envoi et la réception coté client et coté serveur et comment mettre en place ces échanges.

Je pensait qu'avec Java, il existait des scripts a import, qui permettaient de se connecter au serveur et d'assurer la reception et l'envoi de paquets


Ce jeu en Flash que tu as réimplémenté en Java, c'est un jeu en solo, n'est-ce pas ?
Avec quelles technologies de Java l'as-tu crée ? Ça se joue via un navigateur ? Ou via un client lancé sur l'ordinateur ? Bref, explique un peu qu'on cerne mieux ce dont tu as besoin.

Pour mettre en place le mode multijoueur, il faudra bien que ton client communique avec un serveur de jeu (ou que les clients communiquent entre eux, même si ce serait très poilu à développer). Tu pars à nouveau sur du Java et les communications se feraient par sockets. Du coup tu n'as pas besoin de serveur Web ou du serveur de push : tu vas créer ton propre protocole d'échange entre tes clients et ton serveur. Ton serveur de jeu pourra être hébergé sur ton VPS.

Du coup, quel est le problème ?


RE: Hebergeur + socket - Aleskweb - 23-01-2012

A la base mon but est de creer un jeu multijoueur par navigateur en temps reel.
Le jeu que j'ai passé de flash a java n'avais pas encore le mode multijoueur mais il etais prévu.

Pour l'instant je l'ai créé avec le java classique, enfin celui qu'on apprend sur le sdz. Pour l'instant je n'ai pas tout retranscrit, j'ai seulement la création de la map et les déplacements. Et donc j'aimerais faire en sorte que d'autres personnes peuvent se connecter et bouger aussi.

Donc en fait je m'etais embrouillé en regardant les serveurs de push et je croyaient qu'ils étaient indispensable.
Donc oui je veux créer mon propre protocole d'échange. Je sais que java dispose de classes telles que java.net et java.io qui ont rapport avec les sockets. Il me semble qu'il y ait des tutos sur les sockets en java. En revanche je n'ai aucune idée de comment installer tout ca coté serveur

Si tu pouvais m'expliquer un peu le fonctionnement ce serait avec plaisir
Merci





RE: Hebergeur + socket - Maks - 23-01-2012

Tu dois pouvoir tout faire avec Java, côté client comme serveur je pense.
Après ça doit marcher un peu comme les sockets en PHP.

Rapidement avec google : http://queinnec.perso.enseeiht.fr/Ens/Chat/socket-java.html et http://gfx.developpez.com/tutoriel/java/network/

J'ai commencé à apprendre Java avec les cours mais on est pas encore aller assez loin, donc je peux pas vraiment plus t'aider.
Bon courage ^^


RE: Hebergeur + socket - Sephi-Chan - 23-01-2012

Côté serveur, tu dois avoir un programme Java qui tourne en permanence et qui écoute sur un port (auxquels les clients se connecteront).

Jette un œil aux exemples de EchoServer en Java. C'est la base de la base. Sauf que c'est exemple n'est pas multithread, donc un seul client peut se connecter à la fois. Il faudra ajouter cette possibilité en tirant profit des threads.

Ensuite, tu auras besoin de classes métiers (pour tes personnages, tes objets, tes monstres, etc.) et d'une couche de persistence (et la base de données qui va avec). Mais ça te donne déjà une piste.


RE: Hebergeur + socket - Aleskweb - 23-01-2012

Merci pour ta réponse Maks.
Le premier lien m'a l'air intéressant, le second j'etais déja tombé dessus.
Le problème c'est que ca dit : coté client : blabla coté serveur : blabla.
Ca devrais pas poser de problème coté client a insérer dans mon code, en revanche coté serveur j'ai aucune idée de comment my prendre.

En ce moment pour mon PPE on fait de la domotique (gerer une maison a partir d'un site). On a une carte FoxBoard, et on a fait un script qui ressemble a ce systèmes. On a codé en assembleur un script qui lancait un script python au démarage du serveur. Ce script python lit en boucle un fichier texte et quand on écrit depuis le site dans ce fichier texte, le script python traite et nous renvoie un information. Fin c'est un peu artisanal je doute que ce soit comme ca qu'il faut faire

Edit: Merci Sephi je vais voir ca.

Ps: le fait de faire tourner en boucle un script java sur le serveur m'interdira t-il de mettre mon site internet de mon jeu dessus?




RE: Hebergeur + socket - extraman - 23-01-2012

Salut,

Rien ne t'empêche de mettre ton site, mais attention aux ressources que ton serveur java va utiliser...
En plus faut pas oublier que les VPS, c'est des VCores, pas de processeur entier.


RE: Hebergeur + socket - Sephi-Chan - 23-01-2012

(23-01-2012, 12:26 AM)Aleskweb a écrit : Ps: le fait de faire tourner en boucle un script java sur le serveur m'interdira t-il de mettre mon site internet de mon jeu dessus?

Non, car les ordinateurs sont capables de faire plein de choses à la fois. Là, ton programme Java utilisera une boucle infinie pour accepter des connexion puis entretiendra chaque connexion dans un thread à part.




RE: Hebergeur + socket - Aleskweb - 23-01-2012

Hum ok, en revanche je bute toujours sur le problème de l’implantation du script sur le serveur.
Merci pour votre patience


RE: Hebergeur + socket - Sephi-Chan - 23-01-2012

Et bien, travaille. Ça ne va pas se faire tout seul.
On t'a donné les pistes utiles, à toi de les suivre. Wink


RE: Hebergeur + socket - Aleskweb - 23-01-2012

Oui merci beaucoup.
C'est déja plus clair dans ma tête je verrais donc tout ca demain.
Merci pour tout