JeuWeb - Crée ton jeu par navigateur
Carte de jeu (besoin de votre avis sur le langage) - 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 : Carte de jeu (besoin de votre avis sur le langage) (/showthread.php?tid=490)

Pages : 1 2


Carte de jeu (besoin de votre avis sur le langage) - blackduty - 09-12-2006

Salut,

Je vais tenter de vous expliquer mon dilemme.

J'essaye de faire une carte composé d'hexagone pour mon jeu php. Une carte de type plateau de jeu où il y aura des unités qui se déplacent dessus. Des terrains différents qui consommeront plus ou moins une des caractéristiques. Caractéristiques qui seront affecté par des compétences.
Et certains terrains nécessitant impérativement une compétence (genre alpinisme) pour pouvoir monter dessus. La sélection des compétences est déjà faite en javascript (merci Joshua) pour la feuille de personnage.

Ayant eu un certain nombre de problème pour la réaliser, j'ai donc demandé de l'aide et on m'a fourni un squelette de carte composé d'hexagone.

Ce squelette est fait en javascript.

Le jeu que je programme est essentiellement en php/mysql avec quelques touches de javascript.

Voici donc ma question:

Pensez vous que je dois continuer ce squelette pour aboutir a faire ma carte [donc le faire en javascript] ou bien dois je plutôt essayer de retranscrire cette partie en php ?
(dans les deux cas, je vais me pencher dessus pour tout comprendre, hein ^^)
J'aimerais si possible des réponses argumentées avec les avantages et inconvénients de faire ce fichier dans tel langage.

Considérez que j'ai le même niveau en php et en javascript, les deux seront au même niveau, sous peu. Smile
Et n'hésitez pas à dire des choses qui vous semblent evidente a propos des deux langages.

Merci d'avance pour vos réponses !


RE: Carte de jeu (besoin de votre avis sur le langage) - Raoull - 10-12-2006

Salut,

j'ai bien pensé à faire une carte en exagone aussi, mais je me suis vite rabbattu vers les carrés pour des raisons de facilité évidentes...
Je suis tout de même très interessé par la question.

Je crois que pour juger si le code de génération de ta carte doit se faire en JS ou en PHP, il faudrait que tu nous montre ce fameux code !

Sinon, le 1er inconvénient/avantage d'utiliser JS ou PHP, c'est que le JS est traité niveau client, c'est à dire par le navigateur et donc l'ordi du joueur. Ce qui peut être un gros inconvénient si ton code JS est énorme et demande bcp de traitement...
Perso, j'ai un ordi qui est un dinosaure, et il a pprécie pas vraiment les gros (tout est relatif) traitements de javascript. Et je pense qu'il y a bcp de monde dans mon cas.

L'avantage du php dans ce cas, tout est généré sur le serveur, 100 fois plus vite.

Mais encore une fois il faut juger ton code JS, et voir si le code est facilement transposable en PHP, si au niveau de ton projet c'est un reel avantage de le transposer ou pas, si le JS est propre et fiable et facilement exécutable, etc.


RE: Carte de jeu (besoin de votre avis sur le langage) - Klemmth - 10-12-2006

En effet, Raoull a assez bien résumé le problème. Le problème avec le php c'est que ça va recharger la page à chaque fois, et le problème du js c'est qu'il utilise beaucoup plus l'ordinateur du client. J'aurai donc tendance à dire qu'il est avantageux d'utiliser le php si ta carte est ( presque ) la seule chose sur ta page. Dans le cas où ta page contient beaucoup de choses à charger, des requêtes SQL, etc... je pense que le js est la meilleure alternative.


RE: Carte de jeu (besoin de votre avis sur le langage) - gtsoul - 10-12-2006

rapidement js est plus rapide car au lieu qu'un seul ordi (le serveur) gère 1.000 requêtes de déplacement, celles-ci seront gérées par 1.000 autres ordis (les clients); donc déplacement quasi-instantanné.

L'inconvenient du js est que ton script sera hyperfacile à pirater, car on peut toucher le code.

Une solution intermédiaire serait de passer par ajax.


RE: Carte de jeu (besoin de votre avis sur le langage) - blackduty - 11-12-2006

Ok, merci pour vos réponses !

Donc je résume:

Javascript:
Avantage: Plus rapide pour l'execution
Désavantage: Moins sécurisé (voir pas sûr du tout)

Php
Avantage: Plus sécurisé
Désavantage: Plus lent.

A voir avec Ajax, effectivement, mais ça va me faire encore une chose a appréhender lol.

Quelqu'un a un tuto pour Ajax ?

Rectification, pas un tuto mais un cours Wink


RE: Carte de jeu (besoin de votre avis sur le langage) - Raoull - 12-12-2006

Je trouve sincèrement que dire que javascript est plus rapide et php plus lent c'est faux. Mais j'ai déjà expliqué ca plus haut.

Et ce n'est pas un problème de nombre de requète, dans les deux cas, il faudra bien faire les memes requètes à la base...


RE: Carte de jeu (besoin de votre avis sur le langage) - gtsoul - 12-12-2006

faire une requete en js ? tu me verras surpris ...


RE: Carte de jeu (besoin de votre avis sur le langage) - Raoull - 12-12-2006

Alors je parlais sans doute d'ajax, qui revient bien au choix php/js dans son cas.

Ce n'est que humble mon avis, et je n'ai pas la science infuse, mais l'argument de vitesse, aussi bien dans l'exécution que dans les requetes, n'est pas forcement en faveur du javascript (ajax), enfin je trouve...


RE: Carte de jeu (besoin de votre avis sur le langage) - gtsoul - 12-12-2006

C'est sur que faire une page qui se recharge toute les 5 secondes consomme plus qu'une page php standard. La rapidité d'ajax vient de l'utilisation que l'on en fait;
si on n'a qu'à regénérer 5% de sa page, là on est gagnant.

Dans le cas d'une carte, tu as 3 éléments à vérifier :
_ vérifier que la vie soit positive (1 requete)
_ vérifier que la case de destinations soit vide (1 requete)
_ changer un attribut css pour modifier le positionnement du perso sur la carte
soit environ 20 lignes à tout casser

quand je vois qu'il me faut en moyenne 100 requetes et 5.000 lignes (dont 4500 de classes) pour charger une page, je comprends vite l'avantage d'un rechargement partiel.

@blackduty, ajax ne doit être qu'une surcouche à appliquer à la fin. Réalise ton code php normalement, les algos pour une carte hexagonale vont surement t'occuper un moment. Quand tout marchera, tu pourras passer à ajax,
je te conseille la librairie xajax (google est ton ami), qui est une libraire php qui génére le javascript associé, donc pas besoin de connaître le javascript.
Pour apprendre, télécharge la librairie, et cherche dans les exemples, (y'a que ca de vrai!), je te conseille l'application helloworld.php, qui fait 50 l et qui reste très compréhensible; en modifiant le code à l'intérieur de la fonction, tu peux faire ce que tu veux.


RE: Carte de jeu (besoin de votre avis sur le langage) - X-ZoD - 12-12-2006

je suis totalement d'avis avec gtsoul
a mon avis l'ajax est le meilleur compromis pour realiser une carte avec des deplacements sans trop manger de ressource et satisfaire les joueurs
lorsque ajax est sorti j'ais changer le code de toutes mes maps mdr !

pour ce aui est de l'hexagonale je ne pourai certainement pas t'aider

j'etais sur le point de te donen run lien te montrant une map et son code qui marche sous ajax mais je vien de me rendre compte qu'iil y a une erreur de bdd

jte donne ca ce soir ptete ou demain