• 05 Juin 2026, 16:37:14


Auteur Sujet: [TuTo]AntiBot  (Lu 2257 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne Eloctro

  • Pawno Fan
  • *
  • Grand Banditisme
  • Aight !
  • Messages: 846
    • Voir le profil
    • GtaSA-RP
[TuTo]AntiBot
« le: 09 Juillet 2008, 12:18:57 »
Salut,
Nous allons éloignez ses bots qui nous embète grrr .


Alors à connexion les bots prenne un tempa se chargé :


//Toute en haut

Code: (pawn) [Sélectionner]
forward StopBot();
//Dans OnPlayerConnect
Code: (pawn) [Sélectionner]
SetTimer("StopBot",2000,0);
Toute en bas :

Code: (pawn) [Sélectionner]
public StopBot()
{
for (new i = 0; i < MAX_PLAYERS; i++)
if(GetPlayerPing(i) <= 0)
{
Kick(i);//On le kick car le bannir change rien car l'ip change
}
}

Voila les bots ne vous embétrons plus .
« Modifié: 09 Juillet 2008, 12:30:22 par coco76 »

Hors ligne Tunsi

  • *
  • Criminel
  • Messages: 35
    • Voir le profil
    • Water-Closet
Re : [TuTo]AntiBot
« Réponse #1 le: 09 Juillet 2008, 12:23:18 »
Les bots ne reste pas 10secondes ..........


Hors ligne spykerc8

  • *
  • 'The GTAOnline.fr GodFather'
  • Messages: 3821
    • Voir le profil
    • http://www.gtaonline.fr
Re : [TuTo]AntiBot
« Réponse #2 le: 09 Juillet 2008, 12:28:10 »
En plus, si tu lances le timer à la connexion, si 100 bots se connectaient d'un coup tu auraient 100 timers de lancés qui exécuteraient 100 fois la fonction, ce qui ne sert à rien et va juste faire ramer le serveur.

Ce que tu peux faire aussi c'est tester si l'IP est déjà présente sur le serveur et ne pas afficher les messages de connexion, puis kicker direct.


~ Leader honoraire de la FsK Team ~ -
~ Membre honoraire de la PCP Team ~

Co-fondateur de GTAO - Retraité de la communauté

"Nous ne sommes rien, soyons tout !"


Hors ligne Eloctro

  • Pawno Fan
  • *
  • Grand Banditisme
  • Aight !
  • Messages: 846
    • Voir le profil
    • GtaSA-RP
Re : [TuTo]AntiBot
« Réponse #3 le: 09 Juillet 2008, 12:30:52 »
La sa doit marcher 2 secondes
Et 100 bots ses impossbile enfin pour l'instant normalement ses 2 je ses pu la moyene
Ou je peut faire un ou des KillTimer();
« Modifié: 09 Juillet 2008, 12:34:36 par coco76 »

Hors ligne Tunsi

  • *
  • Criminel
  • Messages: 35
    • Voir le profil
    • Water-Closet
Re : Re : [TuTo]AntiBot
« Réponse #4 le: 09 Juillet 2008, 12:55:28 »
La sa doit marcher 2 secondes
Et 100 bots ses impossbile enfin pour l'instant normalement ses 2 je ses pu la moyene
Ou je peut faire un ou des KillTimer();


Tout est possible ;)


Hors ligne Bayshore

  • *
  • Grand Banditisme
  • Messages: 923
    • Voir le profil
Re : [TuTo]AntiBot
« Réponse #5 le: 09 Juillet 2008, 13:17:52 »
Kyeman avait donné le script pour se protéger des bots qui se déco/réco mais je ne le retrouve plus. :(

Il prenait l'IP du client et si l'IP revenait 5 fois dans un labs de temps de 15 secondes alors le serveur bannissait.


++
Alexandre

Hors ligne MasterOfQuebec

  • Pawn Compiler
  • *
  • Criminel
  • Messages: 29
    • Voir le profil
    • SA-MP.fr
Re : [TuTo]AntiBot
« Réponse #6 le: 09 Juillet 2008, 18:53:07 »
Crée un seul timer qui sera appelé tous les secondes.
Crée une variable pour tous les joueurs (tableau, ex: new secondes[MAX_PLAYERS]; ).
Quand un joueur se connecte met la variable secondes a 5.
Chaque seconde, pour chaque joueur connecté si la variable secondes est plus grande que 0 réduit la de 1.
Quand la variable seconde atteint 0, vérifie si le ping du joueur est plus petit ou égal a 0, si oui banni le joueur.
Si un joueur se déconnecte avant que sa variable secondes soit a 0 (5 secondes) tu peut le bannir temporairement à l'aide d'une fonction personnalisé.
« Modifié: 09 Juillet 2008, 18:57:56 par MasterOfQuebec »