Bonjour tout le monde,
Je viens vous présenter ma nouvelle création (et à vrai dire, la seule que vous n'ayez jamais vue

) : Le
LeelaBot.
Description
LeelaBot est un bot d'administration de serveurs Urban Terror, écrit en PHP, créé dans un but d'être simple d'utilisation, puissant (enfin faut pas trop exagérer

), et simple à modifier (pour l'utilisateur confirmé en tout cas), et économe en ressources. Il est codé en POO (le plus structuré possible), possède un système de plugins assez développé, une gestion de l'administration simple... et bien plus encore !
La simplicité de ce bot réside dans le fait que pour l'installer, vous avez uniquement besoin de PHP (version 5). Pour certains plugins futurs, vous aurez peut-être besoin de MySQL et autres, mais pour la base, ce n'est pas nécéssaire.
Il dispose des commandes de base d'un bot Urban Terror, telles que !kick, !nuke, !slap, !shuffle, !teams, !slap, !help, !mute et toutes les autres...
Il possède (en plus des deux plugins de commandes de base) un plugin de logs, reproduisant le log serveur (un défaut du bot est qu'il vide le log serveur) dans les dossiers du bot, ainsi que le log des messages laissés par les clients (utile pour les discussions houleuses et les quotes

), ainsi que nombre d'autre plugins améliorant la puissance du bot.
Vous pouvez bien sûr écrire des plugins pour le bot, mais il faut suivre une certaine syntaxe (qui sera plus tard décrite dans une documentation). Par contre, si vous voulez que le plugin devienne officiel, il faudra qu'il soit soumis à validation :> .
Bon, il n'est pas aussi développé que B3 (kiwi, il en est plus près, mais loin encore

), mais je pense qu'il pourrait être utile aux personnes ayant besoin d'un bot mais ne savant pas faire fonctionner Python.
Le bot est distribué sous version GPL v3, dont le texte est contenue dans l'archive.
Dernière version "stable" : 0.2.6.2 Carlo
Téléchargez le bot ici :
http://leelabot.com/latest.html
Changelog 0.2.6.2 Carlo
- Sécurisation d'extrarights, maintenant il est impossible de gérer des droits supérieurs à ceux que l'on possède (un niveau 90 ne peut pas donner des droits au niveau 100 par exemple).
Changelog 0.2.6.0 Carlo
- Correction d'un gros bug pour la fonction !auth
Changelog 0.2.5 Carlo
- Meilleure gestion des plugins, débuggage complet, nouveaux plugins, améliorations général des plugins et du noyau
- Nouveau noyau qui permet de choisir le système d'authentification
Changelog 0.2.0 Carlo :
- Refonte totale du système de droits (plus puissant, supportant en théorie le multi-bots/serveurs (à tester)) (il reste quelques commandes à faire)
- Possibilité de charger une configuration complètement en dehors du bot (pour avoir plusieurs config et un seul programme)
- Commandes de main.class.php refaites pour ressembler à celles des autres plugins
- Modification du comportement du plugin console (maintenant, il injecte des commandes dans le bot au lieu de simples RCon)
- Correction de diverses fautes d'orthographe
- Suppression de !poke
- ???
- Modification de la commande !stats
- Mise à jour de q3query (méthodes clientkick, setEcho, setMsgSend)
- La fonction !teams marche.
- Correction d'encore et toujours plus de bugs
Version de développement : 0.3.0 Eugene
[url]svn://svn.tuxfamily.org/svnroot/leelabot/leelabot[/url]
A venir pour les prochaines versions :
- BDD (intégration d'une base de données SQLite)
Fait
- Plugins : bans personnels du bot
Fait
- Noyau : système de dépendance des plugins (dans longtemps aussi)
En cours, à moitié fait
- Autre : Clarification et commentaire du code (encore)
Installation
Voir le tutoriel sur le wiki.
Site officiel :
Le site officiel du LeelaBot est disponible à l'adresse :
http://leelabot.com/
Vous pourrez y trouver des infos utiles sur le bot, ainsi qu'un forum de discussion (down en ce moment), et un wiki.
Plugins
Les plugins seront mis dans la documentation plus tard, en attendant, vous pouvez les télécharger ici :
http://leelabot.com/plugins.html
Pour les installer, il suffit de les extraire dans le répertoire racine du bot, ainsi que de configurer le ficher .ini (dans conf/plugins).
Note : Le dossier ip_files (faisant environ 3-5 Mo) du plugin fun n'est pas utile si vous désactivez l'option "hellomsg". Dans ce cas-là, vous pouvez le supprimer.
Documentation :
La documentation du bot, rédigée sous forme de wiki, est disponible à l'adresse :
http://leelabot.com/wiki
Vous pourrez aussi y trouver, en plus des articles sur le bot en lui-même, des articles sur l'administration de serveurs Urban Terror, ainsi que des articles sur la programmation en PHP. Je cherche des personnes capables de m'aider à remplir ce wiki, car je n'ai pas assez de temps pour tout faire moi-même. Contactez moi sur IRC si vous êtes intéressé.
Me contacter :
Pour me contacter, vous pouvez me joindre sur :
IRC :
Le channel officiel de LeelaBot est accessible ici : [url=irc://irc.quakenet.org/LeelaBot]#LeelaBot[/url]. Sinon, vous pouvez toujours me PM si je suis connecté.
E-Mail : à l'adresse
linkboss@gmail.com.
Le forum : Vous pouvez bien sûr poster sur ce topic

. Autrement il y a un forum sur le site de LeelaBot à l'adresse :
http://leelabot.tuxfamily.org/forum.php Down en ce moment !
Todo/Bugtracker : Nous (Je ?) diposons d'un todo/bugtracker à l'adresse :
http://leelabot.com/todo.html. Comme vous pourrez le voir, il mise sur la simplicité. Si vous trouvez un bogue dans le programme ou que vous avez une idée d'amélioration, je vous conseille très fortement de le déposer sur le Todo en premier, car ça me permet d'avoir un travail organisé (ou du moins de faire semblant d'en avoir un

), et puis aussi il restera et je vais consulter le Todo plus souvent, vu que c'est à ça qu'il sert.
Anecdote : Les noms de version du bot sont (et seront) les noms anglais des personnages d'une série animée que j'affectionne particulièrement (après Futurama) : Bob l'éponge.
Remerciements :
Merci à SRWieZ pour ses idées théoriques et pratiques qui m'ont permis d'avancer (beaucoup), Xawou pour son aide sur la toute première version du bot et ses conseils réguliers, Canard-Laquay pour avoir testé la toute première version du bot (et qui voulait que je le cite

), et Barbatos pour une fonction dont j'avais besoin.