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

Je suppose que ton VPS est sous Linux, mais quid de ta machine de développement ?
Si en local tu utilises du Windows, laisse tomber. Juggernaut ne fonctionne pas dessus.


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

En effet, le vps est sous linux.
Je suis en dual Boot donc il ne devrais pas y avoir de problème.
Mais pourquoi cela ne fonctionnerais pas sous windows? Enfin l'application sera en java, donc utilisables sur tous les OS, je ne comprends pas.


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

Juggernaut est écrit en Javascript et tourne sur Node. Et ça ne marche pas très bien sur Windows.
Mais si l'app est en Java, tu devrais regarder du côté des serveurs de push en Java (genre Jetty, CometD, etc.). Wink


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

Merci je vais regarder ca Big Grin
Et dans ce cas la, il faudrait que j'installe un de ses 'script de push' sur mon serveur pour le transformer en serveur de push?
Et coté client, je suppose qu'il existe des classes déja faites pour la réceptions de données non?

Je n'ai pas tout bien saisi, a la base je pensais qu'on pouvais choisir n'importe quel langage coté serveur (python, perl, php ...)


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

Tu as besoin d'un serveur de push qui maintiendra des connexions avec les navigateurs de tes utilisateurs.

À côté de ça, tu as une application Web classique. Quand quelque chose se passe sur ton application (un joueur en attaque un autre, un joueur poste un message sur le chat, …), elle va communiquer avec le serveur de push pour lui dire d'envoyer un message à certains joueurs (en réalité on raisonne plutôt en canaux, mais j'y reviendrais plus tard si besoin).

On utilise rarement le serveur de push comme intermédiaire pour les communication du navigateur vers l'application : l'Ajax est souvent plus adapté pour ça.

N'hésite pas à dire ce que tu connais et ne connais pas, qu'on puisse adapter l'explication.


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

Merci pour ces explications. Je comprends le principe, mais en fait, mon application java sera intégrée au navigateur et donc au site web, puisje me servir de mon Vps en tant que host pour mon site et y installer aussi un serveur de push?

En gros cela équivaudrais en premier a la création du chat par navigateur en java et en temps réel. Ensuite une fois que j'aurais compris comment cela fonctionne je modifierai en échange de paquets.

Que veux tu dire par "communication du navigateur vers l'application" c'est a dire faire passer les variables de php a java?


Edit: Je ne saisis pas bien, a la base je croyais que le push servais justement a gerer le temps reel, c'est a dire si je me déplace en "x/y" j'envoie au serveur "x/y" et le serveur le redistribue a tout le monde.
Je ne comprends pas bien l'utilité de l'ajax ici :/


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

J'ai l'impression que tu confonds tout donc je vais plutôt te poser des questions pour éviter le dialogue de sourds.

(22-01-2012, 09:54 PM)Aleskweb a écrit : Merci pour ces explications. Je comprends le principe, mais en fait, mon application java sera intégrée au navigateur et donc au site web, puisje me servir de mon Vps en tant que host pour mon site et y installer aussi un serveur de push?

Tu parles bien de Java et non de Javascript ?
Si oui, tu parles d'un applet Java ?


(22-01-2012, 09:54 PM)Aleskweb a écrit : Edit: Je ne saisis pas bien, a la base je croyais que le push servais justement a gerer le temps reel, c'est a dire si je me déplace en "x/y" j'envoie au serveur "x/y" et le serveur le redistribue a tout le monde.
Je ne comprends pas bien l'utilité de l'ajax ici :/

Oui, je push permet de faire ça. Mais on utilise généralement Ajax pour dire à l'application qu'on se déplace ou qu'on envoie un message sur le chat.

L'avantage du push, c'est d'envoyer des données du serveur vers le navigateur (plutôt que vérifier toutes les seconde s'il y a eu un mouvement, on demande au serveur de nous prévenir quand quelqu'un se déplace).


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

Je parle bien de Java
Je vais voir si je vais pas plutôt faire pour le moment une application java externe au navigateur, il semblerait que contrairement au flash, le java sur navigateur, c'est a dire les applets Java soient pas exactement la même syntaxe.
En fait en exemple de MMO temps réel en java par navigateur il y avait RuneScape ce qui prouve la possibilité d'un tel jeu.

Donc partons sur la base que je veuille créer un chat en java (pas sur navigateur)


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

(22-01-2012, 10:24 PM)Aleskweb a écrit : Je parle bien de Java
Je vais voir si je vais pas plutôt faire pour le moment une application java externe au navigateur, il semblerait que contrairement au flash, le java sur navigateur, c'est a dire les applets Java soient pas exactement la même syntaxe.

J'ai du mal à te suivre.

En lisant tes autres sujets (Jeu 3D par navigateur, Flash ou Java?, Faisable? PHP socket->Flash), j'ai l'impression que tu parles beaucoup de sockets, de Java et de Flash mais que tu ne sais pas programmer grand chose (sans offense). Pourquoi veux-tu absolument coller du Java partout alors qu'à l'évidence, tu ne sais pas de quoi tu parles ?


(22-01-2012, 10:24 PM)Aleskweb a écrit : En fait en exemple de MMO temps réel en java par navigateur il y avait RuneScape ce qui prouve la possibilité d'un tel jeu.

Un jeu comme RuneScape est composé de deux parties majeurs : un client et un serveur.
Le client est un applet Java : un programme écrit en Java et exécuté dans le navigateur grâce à un module. La plupart des jeux par navigateurs utilisent plutôt Javascript ou Flash dans ce rôle (mais il y en a d'autres).

Le serveur est également écrit en Java (mais pourrait très bien être écrit en PHP, en Ruby, en Python, etc.).

Les deux communiquent entre eux. Il faut déjà comprendre ça avant de discuter des technologies qu'ils utilisent pour communiquer.


(22-01-2012, 10:24 PM)Aleskweb a écrit : Donc partons sur la base que je veuille créer un chat en java (pas sur navigateur)

Là aussi c'est un peu absurde : si tu écris une application de chat en Java, comment les utilisateurs de se chat vont s'y connecter ?


Il faudrait vraiment que tu sois capable d'exprimer ce que tu veux faire, et que tu nous dises précisément ce que tu sais déjà faire. Toutes les discussions que tu lances tournent en rond à cause de ça.


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

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