12-03-2013, 01:07 AM
Bonjour,
le besoin:
j'aimerais avoir de nouveaux avis face a un problème purement technique, à savoir comment gérer les déplacements de personnage en temps réel, via les touches claviers (ce sujet ne parlera pas de la technique du "je clique pour me déplacer" qui ne se gère pas du tout de la même manière).
Le problème:
Actuellement j'ai implémenter mon mouvement via les touches zqsd du clavier (classique), l'animation en temps réel marche. Le soucis est plutôt que le serveur ne suit pas derrière. C'est à dire qu'a chaque mouvement, je fais une requête ajax pour synchroniser le mouvement du client avec le serveur pour rester dans un monde cohérent.
Je ne peux pas ne pas vérifier ou vérifier que de temps en temps l'emplacement des joueurs. Pour que tout fonctionne, il faut que tout soit cohérent. Si je ne vérifie pas l'emplacement, je ne pourrais donc pas vérifier le lancement d'une action (attaque par exemple), et si je ne vérifie rien à cause de cela, via javascript c'est la porte ouverte à toutes les triches! pas très envisageable même si ça serait tellement plus simple...
Donc le problème c'est qu'en laissant appuyer sur les touches de mouvements, les requêtes ajax prenne du retard dans leurs exécutions par rapport à ma position réel, ce qui fausse donc tout le jeu.
De plus, le changement de map (quand on arrive au bord pour passer à une autre) demande lui aussi une requête ajax. Du coup il y a un gros lag dans le sens où toutes les requêtes ajax de mouvements se font une par une dans l'ordre dans mon firebug, avant d'arriver à celle du changement de map, qui débloquera la situation (puisqu'en attendant rien ne se passe).
Voilà les faits et le problème, j'aimerais vos avis, comment gérer cette aspect? En plus si ça lag en étant seul et en local, qu'es ce que ça donne en multijoueur...? On imagine aisément que c'est encore pire.
je suis tout ouïe ! Tout idées, retour d’expérience et autres remarques constructives
Merci!
PS: je n'utilise pas canvas pour le projet dont il est question, mais même avec un jeu en canvas en temps réel, il y aurait tjs se problème de syncro avec le serveur en temps réel...
le besoin:
j'aimerais avoir de nouveaux avis face a un problème purement technique, à savoir comment gérer les déplacements de personnage en temps réel, via les touches claviers (ce sujet ne parlera pas de la technique du "je clique pour me déplacer" qui ne se gère pas du tout de la même manière).
Le problème:
Actuellement j'ai implémenter mon mouvement via les touches zqsd du clavier (classique), l'animation en temps réel marche. Le soucis est plutôt que le serveur ne suit pas derrière. C'est à dire qu'a chaque mouvement, je fais une requête ajax pour synchroniser le mouvement du client avec le serveur pour rester dans un monde cohérent.
Je ne peux pas ne pas vérifier ou vérifier que de temps en temps l'emplacement des joueurs. Pour que tout fonctionne, il faut que tout soit cohérent. Si je ne vérifie pas l'emplacement, je ne pourrais donc pas vérifier le lancement d'une action (attaque par exemple), et si je ne vérifie rien à cause de cela, via javascript c'est la porte ouverte à toutes les triches! pas très envisageable même si ça serait tellement plus simple...
Donc le problème c'est qu'en laissant appuyer sur les touches de mouvements, les requêtes ajax prenne du retard dans leurs exécutions par rapport à ma position réel, ce qui fausse donc tout le jeu.
De plus, le changement de map (quand on arrive au bord pour passer à une autre) demande lui aussi une requête ajax. Du coup il y a un gros lag dans le sens où toutes les requêtes ajax de mouvements se font une par une dans l'ordre dans mon firebug, avant d'arriver à celle du changement de map, qui débloquera la situation (puisqu'en attendant rien ne se passe).
Voilà les faits et le problème, j'aimerais vos avis, comment gérer cette aspect? En plus si ça lag en étant seul et en local, qu'es ce que ça donne en multijoueur...? On imagine aisément que c'est encore pire.
je suis tout ouïe ! Tout idées, retour d’expérience et autres remarques constructives
Merci!
PS: je n'utilise pas canvas pour le projet dont il est question, mais même avec un jeu en canvas en temps réel, il y aurait tjs se problème de syncro avec le serveur en temps réel...
Dévotion, jeu multijoueur gratuit par navigateur de stratégie et de conquête
The Magic Institute, le jeu de magie médieval fantastique gratuit en ligne
Rapture Studio : créateur de divertissement pour tous
JePolitique.fr - débattons ensemble
JécrisLaConstitution.fr - ne laissons pas les Hommes aux pouvoirs écrire les règles du pouvoir
Je Deviens Citoyen (Association à but non lucratif)
The Magic Institute, le jeu de magie médieval fantastique gratuit en ligne
Rapture Studio : créateur de divertissement pour tous
JePolitique.fr - débattons ensemble
JécrisLaConstitution.fr - ne laissons pas les Hommes aux pouvoirs écrire les règles du pouvoir
Je Deviens Citoyen (Association à but non lucratif)