Exécuter les scripts "relativement lourd" sur le pc client ou serveur? - 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 : Exécuter les scripts "relativement lourd" sur le pc client ou serveur? (/showthread.php?tid=5646) |
RE: Exécuter les scripts "relativement lourd" sur le pc client ou serveur? - Hideaki - 16-08-2011 Pour tout ce qui est donnée sensible, évite la solution avec le javascript, en revanche si cela permet au joueur de visualiser le chemin et que tu ne réutilises pas la valeur caché, à moins de la crypté ou de la haché ... Concernant ton algo : Le joueur de combien de case peut-il se déplacer grâce à ton système 5 10 20 ? Le joueur peut-il modifier son déplacement en cours de route ? Les règles de déplacement sont-ils les même pour tous à savoir s'il n'y a pas de joueur capable de franchir un mur, si un joueur peut être ralenti par l'environnement alors que d'autre non ? Ta tâche cron est-elle lancé toutes les heures ou plus ? Il me semble que les joueurs se voient, non ? RE: Exécuter les scripts "relativement lourd" sur le pc client ou serveur? - Maz - 16-08-2011 (16-08-2011, 05:42 PM)Hideaki a écrit : Le joueur de combien de case peut-il se déplacer grâce à ton système 5 10 20 ?Il n'y a pas de limite de déplacement en "nombre de case", néanmoins à chaque fois que le joueur se déplaces il risques de tomber sur des ennemis/mobs, donc combat et aucun moyen de régénéré sa vie en cours de route, donc à un moment il meurt tout simplement. Non le joueur ne peut pas modifier le trajet une fois que le formulaire a été validé. Oui les règles de déplacement sont les mêmes pour tous. Ma tâche cron est exécuté toute les 20minutes(pour l'instant, je jugerais ensuite si c'est trop, ou pas assez...), mais la tâche cron n'exécute aucun algorithme, dans la base de donnée les chemins sont enregistrer case par case, donc le cron ne fait que déplacer le joueur sur la case suivante, et si un combat est engendrer, le cron exécute le combat. Et oui & non. En fait c'est une chasse à l'aveugle: le joueur choisi le trajet, le nombre de fourmis à envoyer, valide le formulaire. Ensuite le cron est exécuté toute les 20 minutes pour déplacer le groupe de fourmis d'une case, et une fois qu'il n'y a plus de case (donc que le cron est revenue a la case départ), il génère un rapport. Le rapport peut être vide dans le cas où tout les membres du groupe de fourmis serais mort en route. Mais les joueurs "allié" verront les cités-mère(donc fixe) des autres joueurs, mais pas les personnages se déplaçant. RE: Exécuter les scripts "relativement lourd" sur le pc client ou serveur? - Hideaki - 16-08-2011 Je sais que cela ne réponds absolument pas à ta question mais au lieu de t'embêter, pourquoi ne laisse-tu pas au joueur à liberté de choisir son propre trajet ? Cela te libérait de la charge de calcul, un joueur pourrait vouloir contourner certaines zones. RE: Exécuter les scripts "relativement lourd" sur le pc client ou serveur? - Maz - 16-08-2011 Il as déjà cette liberté, enfin... plus ou moins, il choisi les cases où ils veut aller, je ne fait que tracer la diagonale entre les points de départ et d'arrivée. S'il veut contourner une zone, il n'as qu'à tracer 3 points autour de la zone par exemple. Le nombre de "point" que le joueur peut définir est infini lui aussi. RE: Exécuter les scripts "relativement lourd" sur le pc client ou serveur? - Hideaki - 17-08-2011 Au vu de ce que tu me dis, je laisserais le JS me fournir le chemin et je ferais juste une vérification de celle-ci, la case suivante est-elle adjacente ou est-elle franchissable puis ensuite je la sauvegarde. RE: Exécuter les scripts "relativement lourd" sur le pc client ou serveur? - Maz - 17-08-2011 (17-08-2011, 03:16 PM)Hideaki a écrit : Au vu de ce que tu me dis, je laisserais le JS me fournir le chemin et je ferais juste une vérification de celle-ci, la case suivante est-elle adjacente ou est-elle franchissable puis ensuite je la sauvegarde. La case suivante n'est pas franchissable a proprement parler: le groupe se deplace toujours d'une seule case mais travaillant sur une map a tuile hexagonal la case suivante peut etre axer a la precedente ou en diagonale. RE: Exécuter les scripts "relativement lourd" sur le pc client ou serveur? - Hideaki - 18-08-2011 Ce n'était pas une question mais une méthode que je préconisais : - Envoi des cases de déplacement au serveur - Vérification côté serveur : - Toutes les cases sont-elles adjacentes ? Si non erreur tentative de tricherie de la part du joueur. - les cases sont-elles valides ? Si non erreur tentative de tricherie de la part du joueur. - Tout est valide : je sauvegarde le chemin. Que tes tuiles soient hexagonales ou carrés cela ne changent pas la méthode. |