• 19 Mai 2024, 07:09:31


Auteur Sujet: [FS] xBanSyst [v1.3]  (Lu 5195 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne Xartrick

  • *
  • C & Pawn Programmer
  • Messages: 1391
    • Voir le profil
    • Xartrick's Area
[FS] xBanSyst [v1.3]
« le: 10 Décembre 2010, 03:50:23 »
Salut à tous,

Pour mon premier code distribué dans Showroom, je vous propose un système de bannissement.
Je ne sais pas si vous avez remarqué, mais pour dé-bannir une personne, il faut aller soit même supprimer les informations du banni mais également redémarrer le serveur.
C'est pour cela qu'est né xBanSyst !




Niveau






Pourquoi xBanSyst ?



x -> Xartrick's
Ban -> Ban
Syst -> System




Pourquoi ne pas utiliser simplement la fonction Ban() ou BanEx() ?



Tous simplement car comme je l'ai dis plus haut, en utilisant la fonction Ban() ou BanEx(), les bannissements sont stockés dans le fichier samp.ban qui n'est relut seulement à chaque démarrage du serveur, c'est pour cela que mon système est là.
Il permet de pouvoir supprimer des bannissements directement en jeu mais aussi qu'ils prennent effet immédiatement.




Comment l'utiliser ?



Tout simplement en le compilant dans le dossier filterscripts, et en créant le dossier xBanSyst dans le dossier scriptfiles.
Il faudra également ajouter le fichier bannedplayer.ban dans le dossier xBanSyst.
Quand cela est fait, il vous suffit de rajouter le filterscript dans la liste du fichier server.cfg.




Téléchargement



Version 1.3 MySQL



Archive:



Code:

http://pastebin.gtaonline.fr/pastebin.php?show=970

Base de donnée:

Code: (SQL) [Sélectionner]
--
-- Structure de la table `bannedplayers`
--

CREATE TABLE IF NOT EXISTS `bannedplayers` (
  `IP` text NOT NULL COMMENT 'IP des joueurs bannis',
  UNIQUE KEY `index` (`IP`(256))
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='Table des joueurs bannis';

Citation de: Changelog v1.3 MySQL
  • Ajout d'une fonction pour bannir un joueur par sa plage d'IP.



Version 1.2 MySQL



Archive:



Code:

http://pastebin.gtaonline.fr/pastebin.php?show=969

Base de donnée:

Code: (SQL) [Sélectionner]
--
-- Structure de la table `bannedplayers`
--

CREATE TABLE IF NOT EXISTS `bannedplayers` (
  `IP` text NOT NULL COMMENT 'IP des joueurs bannis',
  UNIQUE KEY `index` (`IP`(256))
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='Table des joueurs bannis';

Citation de: Changelog v1.2 MySQL
  • Ajout d'une fonction pour bannir une IP.
  • Ajout d'un listing des commandes présentes.
  • Ajout d'une fonction pour nettoyer la base de donnée.
  • Modification des noms de quelques fonctions.
  • Modification de quelques messages faux.



Version 1.1 MySQL



Archive:



Code:

http://pastebin.gtaonline.fr/pastebin.php?show=968

Base de donnée:

Code: (SQL) [Sélectionner]
--
-- Structure de la table `bannedplayers`
--

CREATE TABLE IF NOT EXISTS `bannedplayers` (
  `IP` text NOT NULL COMMENT 'IP des joueurs bannis',
  UNIQUE KEY `index` (`IP`(256))
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='Table des joueurs bannis';

Citation de: Changelog v1.1 MySQL
  • Ajout des bannissements sur une base de donnée MySQL.



Version 1.1



Archive:



Code:

http://pastebin.gtaonline.fr/pastebin.php?show=967

Citation de: Changelog v1.1
  • Ajout d'une fonction pour vérifier si une IP est valide ou non
  • Ajout de vérification pour savoir si le joueur qu'on veut bannir est connecté ou non (idée de Sim)
  • Modification des fonctions pour quelle soit portable (idée de Sim).



Version 1.0



Archive:



Code:

http://pastebin.gtaonline.fr/pastebin.php?show=966



FaQ



Question: Bannir une plage d'IP ?
Réponse: Bannir une plage d'IP permet à un utilisateur de ne plus revenir même s'il possède une IP dynamique !
Si vous bannissez la plage d'IP d'un joueur avec l'indice 1, son IP sera banni comme ceci:

127.0.0.*Tandis que si vous utilisé l'indice 2, son IP sera banni comme ceci:
127.0.*.*
Question: J'aimerais bannir la plage d'IP d'un joueur grâce à l'indice 3 (127.*.*.*), pourquoi je ne peux pas ?
Réponse: Car cela bannirez trop de personne inutillement, pareil pour l'indice 4, tout le monde serait bannie (IPv4).

Question: Comment bannir la plage d'IP d'un joueur que il n'est pas connecté ?
Réponse: Simplement en bannissant le joueur normalement et en changeant l'IP avec des étoiles (*), mais attention, seulement les deux derniers nombres doivent être changé, sinon le bannissement devient obsolète !




Crédits



  • G-sTyLeZzZ pour son plugin pour utiliser MySQL



Hé bien c'est déjà fini ! J'espère que ma première contribution à ce forum sera apprécié !



Bonne journée !

Cordialement,
Xartrick.
« Modifié: 12 Décembre 2010, 14:24:49 par Xartrick »

Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Re : [FS] xBanSyst
« Réponse #1 le: 10 Décembre 2010, 05:36:41 »
Salut,

franchement, c'est une très bonne idée ce script. Bravo, c'est bien fait, toutefois, j'ai 2 - 3 petits commentaires:

 - tu devrais tester d'avantage l'ID rentré dans la commande /xban pour être sur qu'il est valide (un IsPlayerConnected par exemple)
 - les textes seraient mieux directement là où les fonctions sont utilisées, comme ça on pourrait utiliser les fonctions ailleurs que dans ces commandes.

Peut-être une petite suggestion pour une future version: ajouter la gestion des bannissements de plages d'IP.

++Sim++





Karting06

  • Invité
Re : [FS] xBanSyst
« Réponse #2 le: 10 Décembre 2010, 06:51:28 »
Pas mal, mais j'ajouterai une commande avec le commentaire. Comme ça on sait pourquoi on l'a banni :D

Hors ligne cristab

  • *
  • Messages: 8379
    • Voir le profil
Re : [FS] xBanSyst
« Réponse #3 le: 10 Décembre 2010, 09:17:51 »
Superbe FS rare sont les FS comme cela =)


PS sa me rapelle qu'il faudrait que je finissent mon FS voiture xD
pas d'aide en PM, vous êtes sur un forum est il me semble que vous êtes la pour avoir de l'aide donc pourquoi MP une seul personne qui ne vous répondra pas alors qu'il y a plein de membre ici

Hors ligne spiirou

  • *
  • L'avenir appartient à ceux qui se lèvent
  • Messages: 866
    • Voir le profil
Re : [FS] xBanSyst
« Réponse #4 le: 10 Décembre 2010, 11:37:10 »
Ca a l'air vraiment bien, bien joué a toi ;)

Hors ligne Leonidas300

  • *
  • Bandit
  • Pawno-Amateur, a déjà crée plusieurs système
  • Messages: 301
    • Voir le profil
Re : [FS] xBanSyst
« Réponse #5 le: 10 Décembre 2010, 12:28:26 »
bien joué, très bon boulot, le truc, c'est qu'il faudrait crée une commande /banplageip [ID/PartOfName] et /unbanplageip [ID/PartOfName], car je ne sais pas comment faire pour bannir une plage IP, même en administrateur ^^,
NB: Ce FS aideras beaucoup de personnes!

Amicalement, Leonidas




Zombi PAWN,Créateur de *** ****** ********* !

Cherche hébérgement SA:MP! [PM Moi]
Merci à vous

Hors ligne Xartrick

  • *
  • C & Pawn Programmer
  • Messages: 1391
    • Voir le profil
    • Xartrick's Area
Re : [FS] xBanSyst
« Réponse #6 le: 10 Décembre 2010, 12:50:56 »
Merci de vos commentaire.
Pour commencer, je vais faire les modifications demandé par Sim.

Hors ligne cristab

  • *
  • Messages: 8379
    • Voir le profil
Re : Re : [FS] xBanSyst
« Réponse #7 le: 10 Décembre 2010, 12:53:13 »
je ne sais pas comment faire pour bannir une plage IP, même en administrateur ^^,


/rcon banip   :)
pas d'aide en PM, vous êtes sur un forum est il me semble que vous êtes la pour avoir de l'aide donc pourquoi MP une seul personne qui ne vous répondra pas alors qu'il y a plein de membre ici

Hors ligne Xartrick

  • *
  • C & Pawn Programmer
  • Messages: 1391
    • Voir le profil
    • Xartrick's Area
Re : [FS] xBanSyst
« Réponse #8 le: 10 Décembre 2010, 19:15:23 »
Version 1.1 sortie !

Hors ligne Jerome02

  • *
  • Tueur en série
  • Messages: 211
    • Voir le profil
Re : [FS] xBanSyst
« Réponse #9 le: 10 Décembre 2010, 20:19:33 »
Bonsoir,


Franchement Bravo pour ton Boulot, et merci de le partager, car perso c'est la première fois que je vois un filterscripts de ce genre,


il a l'air pas mal je le teste, et je le prend si cela ne pose pas de soucis ( meme si tu la poster pour sa ^^ )



Bonne soirée  ;)





((** Débute dans le scripte mais connais deja pas mal de chose
mais beaucoup a apprendre encore :) **))

Hors ligne Xartrick

  • *
  • C & Pawn Programmer
  • Messages: 1391
    • Voir le profil
    • Xartrick's Area
Re : [FS] xBanSyst
« Réponse #10 le: 10 Décembre 2010, 20:36:14 »
Enfaîte, j'essaye de créer ce qui n'a pas était encore créé (c'est vraiment dur).

Hors ligne Brian Turner

  • PAWN/PHP/SQL/MAP/SQUIRIEL
  • *
  • Bandit
  • Messages: 438
    • Voir le profil
Re : [FS] xBanSyst
« Réponse #11 le: 10 Décembre 2010, 20:47:28 »
pour les bans en tant normale(sans ce FS) on peux lancer un timer toutes les x secondes qui fait un executer une CallBack avec SendRconCommand("reloadbans"); dedans, sinon, j'ai pas regarder, mais vu les commentaires, il a l'air bien, bravo.

++ Brian
Momoto33127
__________________________________________
[TRADUCTION][FS]Celular call 1.5 : Voir le poste
[ADDON/INC]Motor System (/clef et /vsortir pour Gveh) : Voir le poste
[FS]BanList (BlackListe) [Systeme de BAN] : Voir le poste

Hors ligne chneubeul

  • *
  • Gangster
  • GTA Online Addict :)
  • Messages: 1132
    • Voir le profil
Re : [FS] xBanSyst
« Réponse #12 le: 11 Décembre 2010, 12:59:41 »
Salut,
Bravo, code simple et très soft, d'une finesse incomparable :)
 :laugh

Prochaine version, un système SQL en option ? :p

Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Re : Re : [FS] xBanSyst
« Réponse #13 le: 11 Décembre 2010, 17:41:37 »
Salut,

Prochaine version, un système SQL en option ? :p
Faut avouer que ce serait une bonne idée:

 - recherches très simple en étant complètes
 - on peut aisément utilisé la fonctionnalité des plugins à "thread" dans ce genre d'application. (même si le joueur est éjecté une seconde plus tard, es-ce grave?)

Bonne chance Xartrick.

++Sim++





Hors ligne Xartrick

  • *
  • C & Pawn Programmer
  • Messages: 1391
    • Voir le profil
    • Xartrick's Area
Re : [FS] xBanSyst
« Réponse #14 le: 11 Décembre 2010, 18:05:25 »
Version 1.1 MySQL sortie !