C/C++ Anti-Bot et Changement de map

Inscrit
13 Octobre 2020
Messages
5
Reactions
11
#1
Bonjour à tous, après une lourde période d’examens me revoilà à développer mon bot.

Mes problèmes cette fois:

Problème 1:
-Mon bot suit un path prédéfini à l'aide d'un fichier de config json, le path est correctement suivi pendant 4-5 maps et ensuite le message de changement de map ne fonctionne plus et je dois cliquer à la main pour le faire changer de map et ensuite tout refonctionne à nouveau pour 4-5 maps et après encore la même histoire. Je m'explique, quand mon bot arrive sur une map il attend entre 1 et 2 secondes avant d'envoyer le message de déplacement sur la carte pour venir se coller contre le côté de la carte qui va bien pour passer à la suivante. Ensuite, il attend 200 millisecondes (après avoir reçu le message de confirmation de déplacement évidemment) avant d'envoyer le message de changement de map. Souvent cela fonctionne parfaitement mais parfois j'ai bien le log d'envoi du message de changement de map mais rien ne se passe... J'ai donc effectuer une dizaine de tests en cherchant à reproduire ce "BUG" et j'ai ensuite à chaque fois vérifier que le bot envoi bien le bon mapID de changement de map. Le bot envoi le bon mapID de changement de map je ne comprend absolument pas pourquoi le message est "ignoré" par le serveur, si cela fonctionne les autres fois le message est forcément bien formé (ce n'est donc pas une erreur de sérialization du message je pense)... De plus j'ai aussi vérifier que la cellule sur laquelle se positionne le bot permet bien le changement de map est c'est le cas je pense (le bot se colle sur les cellules les plus contre le bord de la map et à chaque fois quand je le fait bouger à la main le personnage ne rebouge pas de cellule avant le changement de map...). Je précise aussi que cela n'arrive pas toujours sur les mêmes maps et que un coup le bot fonctionne sur une map et le coup d'après il ne fonctionne plus sur la même map !

Problème 2:
-Le bot se fait déco. Parfois en pleine exécution du path (avant-même d'avoir fait une boucle complète du path sinon c'est juste que l'anti-bot détecte que le même chemin est refait une nouvelle fois) le client me déco, si quelqu'un sait si cela vient directement du client ou du serveur ce serait une information intéressante. Pour ce point je pense que mon compte de test est peut-être juste déjà classé dans les comptes douteux parce que je fais tous mes tests dessus donc beaucoup de messages erronés et autres problèmes obvious se sont déjà passer sur ce compte mais si quelqu’un avait un indice sur une autre raison ?

Merci d'avance à ceux qui ont pris le temps de me lire et qui laisseront un petit indice pour la suite de mon développement merci beaucoup ;).
PS: Pour l'instant c'est surtout le problème 1 qui m'embête :).

EDSDEV
 
Inscrit
2 Janvier 2021
Messages
4
Reactions
3
#2
Salut,

Pour le pb 1: des fois ça m'arrivait aussi, certains changemap ne fonctionnaient pas et pour corriger je relançais juste un move sur une autre cell du même côté avant de faire un nouveau changemap. Tu peux essayer ça déjà je pense. Après peut-être que tu exécutes ton move trop rapidement (et du coup le confirm aussi) ?

J'ai pas d'autres pistes pour l'instant, essaie de voir déjà avec ça ^^'
 
Inscrit
13 Octobre 2020
Messages
5
Reactions
11
#3
C'est vrai que juste bouger vers une autre cell pour relancer est une très bonne idée ! Ca devrait fonctionner puisque c'est ce que je fait à la main pour me débloquer pendant les tests. Nan le confirm est gérer par le client en fait je ne fais que regarder si il passe et dans le cas où il ne passe pas je l'envoie par Timeout mais après le temps normal du client donc normalement jamais trop tôt. Merci pour cette piste je regarde ça tout de suite !
 
Haut Bas