IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

NodeJS Discussion :

Inclure box2d coté server


Sujet :

NodeJS

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2012
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 78
    Par défaut Inclure box2d coté server
    Salut,

    Je développe un petit jeu tout simple "multijoueur" avec nodeJS et socket.io.
    J'ai un gros problème pour inclure box2d dans mon ficher server.js.
    Le fichier box2d.js possède bien la ligne suivante en dernière ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    module.exports = Box2D;
    Et pour l'inclure dans mon script server.js , j'utilise ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var Box2D = require('./box2d.js');
    Seulement , dés que je lance mon server dans ma console , j'obtiens l'erreur suivante:

    Type error : Cannot call method 'write' of undefined
    Et c'est bien le require qui pose problème puisque sans lui je n'obtiens aucune erreur. J'ai même essayé avec le code source trouvé sur cette page :

    http://paal.org/blog/2012/07/06/runn...via-socket-io/

    Mais ça m'affiche exactement la même erreur , je me dis donc que l'erreur vient de mon côté. Pouvez-vous m'aider ?

  2. #2
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2012
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 34
    Par défaut
    Comme je m'en doutais il s'agit d'un probleme de compatibilité entre ta version de node.js et tes differents modules:
    J'ai fait le test en prenant le code Source sur le lien que t'as posté, et j'ai eu le même problème.
    J'ai eu un peu de mal a le faire fonctionner parcequ'il faut trouver la bonne version de Node, donc vu que le post sur le site etait fait en juillet 2012 avec une version plus veille Ca fonctionne. j'ai reussi a le faire marcher avec la version 0.8.14.
    Pour installer plusieurs versions il y a un module npm qui s'appelle n (sudo npm install n), il s'agit d'un gestionnaire de versions pour node.js.
    pour installer une version de node tu dois faire:
    et pour utiliser cette version
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    sudo n use 0.8.14 box2dserver.js
    Pour moi ça marche bien. j'ai l'impression que la derniere version de socket.io qui est sur le npm n'est pas compatible avec node.js.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2012
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 78
    Par défaut
    Tu aurai la version windows des deux dernières commandes? npm install n fonctionne mais pas la suite , il me dit que n n'est pas reconnu comme commande interne.

  4. #4
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2012
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 34
    Par défaut
    ah oui désolé, ces commandes sont faites pour mac os / linux.
    essaye sans le "sudo".

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2012
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 78
    Par défaut
    Ouép j'ai essayé mais ça reconnait pas le commande "n" justement.

  6. #6
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2012
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 34
    Par défaut
    Je ne maitrise pas bien la Console Windows, mais en gros, n est un binaire que tu viens d'installer. si t'arrives pas a le lancer c'est parcque la console ne sait pas ou il se trouve.
    il se trouve dans ton dossier node_modules.
    donc execute le depuis ce dossier.et si t'as vraiment des problemes desinstalle node et installe la version 0.8.14 ou passe sous linux ou mac os ^^

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Websocket, coté server : erreur du handshake et du getheaders
    Par vinze60 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 0
    Dernier message: 05/05/2012, 13h15
  2. Process start coté server
    Par feladan dans le forum VB.NET
    Réponses: 1
    Dernier message: 09/11/2007, 10h08
  3. Ajouter un header à un tableau coté server
    Par Alec6 dans le forum JSF
    Réponses: 4
    Dernier message: 20/01/2007, 22h38
  4. coût de possession de SQL Server 2000
    Par rollins_ng dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 01/09/2006, 12h29
  5. [PHP-JS] Page d'attente / construction coté server
    Par mcheck dans le forum Langage
    Réponses: 6
    Dernier message: 24/08/2006, 15h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo