/b3-plugin-ircbot

A BigBrotherBot plugin which introduce interaction between B3 and IRC servers

Primary LanguagePython

IRC BOT Plugin for BigBrotherBot BigBrotherBot

Description

A BigBrotherBot plugin which introduces interaction between an IRC channel and your game server. The plugin implements both IRC and in-game commands and it react on both B3 and IRC events.

Download

Latest version available here.

Requirements

In order for this plugin to work you need to have B3 v1.10.4 beta installed (or greater). I will not introduce backward compatibility with B3 1.9.x version since it would require too many changes in the plugin code.

Installation

  • copy the ircbot folder into b3/extplugins

  • add to the plugins section of your b3.xml config file:

    <plugin name="ircbot" config="@b3/extplugins/ircbot/conf/plugin_ircbot.xml" />

IRC commands

Since there is the possibility of connecting multiple BOTs to the same IRC channel, every command launched from IRC must specify as first parameter the BOT name. Every IRC BOT will try to match such parameter with the BOT name itself to see if a command typed in the chat is directed to him or not: when this match fails the BOT will simply ignore the command.

  • !alias <botname> <client> display all the aliases of a client
  • !ban <botname> <client> [<reason>] ban a client
  • !b3 <botname> display the B3 version
  • !cvar <botname> <name> [<value>] set/get a cvar value
  • !exec <botname> <command> [<params>] execute a b3 command from IRC
  • !help <botname> [<command>] display the help text
  • !kick <botname> <client> [<reason>] kick a client
  • !list <botname> display the list of online clients
  • !listbans <client> list all the active bans of a given client
  • !livechat <botname> [<on|off>] enable/disable the livechat
  • !lookup <botname> <client> retrieve information on a client
  • !permban <botname> <client> [<reason>] permban a client
  • !plugins <botname> display a list of plugins loaded
  • !reconnect <botname> reconnect to the IRC network
  • !showbans <botname> [<on|off>] enable/disable the ban notifications
  • !showkicks <botname> [<on|off>] enable/disable the kick notifications
  • !showgame <botname> [<on|off>] enable/disable new game notifications
  • !status <botname> display server status information
  • !tempban <botname> <client> <duration> [<reason>] tempban a client
  • !unban <botname> <client> [<reason>] un-ban a client
  • !version <botname> display the plugin version

B3 commands

  • !livechat [<on|off>] enable/disable the livechat
  • !showbans [<on|off>] enable/disable the ban notifications
  • !showkicks [<on|off>] enable/disable the kick notifications
  • !showgame [<on|off>] enable/disable new game notifications

B3 events

The plugin make use of the folowing events to display notices in the IRC channel:

  • EVT_CLIENT_BAN and EVT_CLIENT_BAN_TEMP : send a notice upon admin bans
  • EVT_CLIENT_KICK : send a notice upon admin kicks
  • EVT_GAME_MAP_CHANGE : send a notice when a new game start

Support

If you have found a bug or have a suggestion for this plugin, please report it on the B3 forums.