JeuWeb - Crée ton jeu par navigateur
Anti-triche - 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 : Anti-triche (/showthread.php?tid=4319)

Pages : 1 2 3 4


Anti-triche - Gabriel - 31-08-2009

Bonjour, c'est encore moi !

Cette fois-ci, j'aimerais supprimer une faille qui permet à mes joueurs de gagner facilement tous leurs combats !

J'ai nommé "le bouton précédent", la "Croix en haut à droite" ou encore "la barre d'URL"

Et oui ! Quoi de plus simple lorsque l'on perd (et que l'on risque de perdre pas mal d'expérience) que de fermer tout simplement le naviguateur ?

Je trouve cela assez problématique notamment au niveau de l'écart que ça créera entre les joueurs "honnêtes" et les "tricheurs"

Se pose maintenant ma question : J'aimerais que si un joueur quitte un combat "illégalement ^^ " il écope d'un malus lorsqu'il se reconnecte ou revient à la page de jeu (un truc du genre => "vous avez tenté de tricher : -50PV")

Comment faire ça ??
Merci d'avance ! Smile


RE: Anti-triche - Sephi-Chan - 31-08-2009

Ton système est mal fichu. Une fois le combat livré, on devrait pouvoir revenir sur l'URL sans problème et sans que ça livre un nouveau combat.

Pour t'expliquer ce qui ne va pas, détaille nous précisément comment tu gères les combats (mal ! :p) : ce qui se passe en base du début à la fin du combat, etc. Ainsi on pourra te dire quoi faire.


Sephi-Chan


RE: Anti-triche - Gabriel - 31-08-2009

ta pas compris mon problème j'ai dû mal m'expliquer

Bon je recommence. Ce que je ne veux pas c'est que l'on puisse quitter la page combat autrement que par les manières normalles qui sont :
"<a href="page_principale.php">vous perdez : retour au jeu</a> (lien qui ne s'affiche que si on meurt)"
ou
"<a href="page_principale.php">vous gagnez : retour au jeu</a> (lien qui ne s'affiche que si on gagne)"

Voila ce que ça donne en ultra ultra simplifié ^^

Le problème c'est qu'il y a des tricheurs qui pour ne pas perdre ferment leur naviguateur (par exemple)
Je voudrais que lorsqu'ils font cela, lancer un script anti-triche qui leur donne un malus (vie en moins ou autre)

Voila


RE: Anti-triche - Allwise - 31-08-2009

Quand un combat est engagé il ne peut se terminer que la victoire / défaite de l'un des deux joueurs. Si l'un d'eux est déconnecté, soit il perd, soit son perso passe en mode pilote automatique et il termine le combat.

Pour la technique, ça dépend de comment tu t'y prends, mais par exemple, tu peux faire des requêtes Ajax qui mettent un timestamp à jour toutes les x secondes. Si le timestamp de l'un des joueurs est supérieur à x, c'est qu'il n'est plus connecté, et là PAN !


RE: Anti-triche - Argorate - 31-08-2009

Gabriel: ne te fait pas d'illusion, il n'existe AUCUNE manière de contrôler ce que tu demandes.
A savoir bloquer les fonctionnalités de navigateur (url/bouton précédant etc....)

C'est a toi, lorsque le combat s'engage de faire en sorte de soit stocker se qui se passe et de permettre au joueurs de continuer en vérifiant les données cotés serveurs (pour les combats qui se fond a plusieurs fois)

Soit pour les combat qui se calcul "instantanément", tu n'as qu'a lancer le moteur de recherche et mettre a jour tes données sur ton serveur (en BDD généralement) et dans ce cas, le joueur pourra faire précédant autant qu'il veux, les données auront déjà était enregistrer, ils ne pourra pas y échapper...

Bon courage^^


RE: Anti-triche - Gabriel - 31-08-2009

Citation : Gabriel: ne te fait pas d'illusion, il n'existe AUCUNE manière de contrôler ce que tu demandes.
A savoir bloquer les fonctionnalités de navigateur (url/bouton précédant etc....)

Je me suis déjà dit ça plein de fois et pourtant j'ai souvent trouvé des fonctions qui me paraissaient improbables tellement certains langages sont puissants alors j'ai voulu testé ^^

Je me suis demandé ==> avec un onUnload ça pourrait pas marcher ?


RE: Anti-triche - phenix - 31-08-2009

Ton jeu ce base trop sur le coter "client". C'est pour sa que tu as des problèmes, un joueur peut facilement falsifier ses informations pour tricher Smile.


Citation :Je me suis demandé ==> avec un onUnload ça pourrait pas marcher ?

Le javascript est facilement contournable car il est coter client Smile. D'une manière général, le jeu en lui même ne doit pas conter sur javascript pour fonctionner Smile. Si tu ne peux pas jouer a ton jeu "en mode texte" c'est que tu as des problèmes de conceptions Smile. (Tout est relatif hein, c'est juste une manière de présenter)


RE: Anti-triche - wild-D - 31-08-2009

tu sais que javascript ça se désactive ?
donc *toute* sécurité/fonctionnalité basée là-dessus peut facilement être contournée. C'est une règle générique valable pour tout ce qui s'exécute chez le client.
Car rien n'interdit à un joueur de communiquer avec le serveur en utilisant autre chose que ton interface utilisateur (les pages de ton site web généralement) => donc tu dois toujours tout vérifier coté serveur.


RE: Anti-triche - Gabriel - 31-08-2009

Effectivement, j'y avais pensé et puis j'avais oublié ce problème avec le JS...

Bon, va falloir que je regarde mon code pour voir ce que je peux faire pour empêcher ce genre de problème...

Merci


RE: Anti-triche - Argorate - 31-08-2009

si tu en disait plus sur ton systeme de combat on pourrait peut etre t'aider, mais généralement il suffit de mettre a jour la BDD...