Farion

Farion

Farion is yet another game chat to IRC bridge, with some extra features I find useful.

Features

  • IRC to game chat bridge
  • Uses new Async event, will keep transporting messages even with lag
  • IRC Flood prevention, won't get your IP banned from the network
  • Kicking and Banning from IRC
  • Player list from IRC
  • Clearing built-up chat-queue from IRC and in-game
  • Console access from IRC via private messages with the bot
  • New: Customize messages sent to and from IRC and in-game
  • New: Permission node to disable a player or group from having messages or actions relayed

Commands

IRC Commands
.playersReturns a list of users on the serverAnyone may use this command
.kick <username> (reason ...)Kicks a player from the server with the provided reason, if one is given.Requires voice or op to use this command
.ban <username> (reason ...)Bans a player from the server with the provided reason, if one is given.Requires voice or op to use this command
.clearClears all messages from the IRC message queueRequires voice or op to use this command
Game Commands
/farionPrints the Farion help messageAnyone may use this command
/farion remotePrints a list of all IRC nicks that are allowed to use the IRC-Console featureRequires the permission: farion.remoteusernames
/farion reconnectForces the bot to disconnect and rejoin the IRC serverRequires the permission: farion.reconnect
/farion clearClears all messages from the IRC message queueRequires the permission: farion.clear

Permissions

NodeAllowsDefault
farion.relayAllows player chat and actions to be relayed to IRCtrue
farion.remoteusernamesAllows the use of /farion remoteop
farion.reconnectAllows the use of /farion reconnectop
farion.clearAllows the user of /farion clearop

Configuration

# Farion config file
Bot:
    DCCPassword: "changeme"
    Nick: "Chatbot"
    NickServ: "woowoo"
    RetryConnect: true
Server:
    Hostname: irc.esper.net
    Port: 6667
    SSL: false
    Password: ""
Channel:
    Name: "#channel"
ModChannel:
    Name: "#channel"
RemoteConsoleUsers:
    - "Username"
Message:
    # Game -> IRC
    Irc:
        Message: "<{username}> {message}"
        MeMessage: "* {username} {message}"
        JoinMessage: "{username} logged in."
        PartMessage: "{username} has left the server."
    # IRC -> Game
    Game:
        Message: "&r[IRC] <{nickname}> {message}"
        MeMessage: "&r[IRC] * {nickname} {message}"
        JoinMessage: "&r[IRC] {nickname} has joined."
        PartMessage: "&r[IRC] {nickname} has left."
        NickMessage: "&r[IRC] {oldnick} is now {newnick}"
OptionTypeDescription
Bot.DCCPasswordStringUnused
Bot.NickStringThe bot will use this nick in IRC
Bot.NickServStringThe bot will use this password to identify with NickServ
Bot.RetryConnectBooleanIf set to true, the bot will try to reconnect when disconnected
Server.HostnameStringThe bot will attempt to connect to this server
Server.PortIntegerThe bot will attempt to connect on this port
Server.PasswordStringThe bot will attempt to use this password to connect to the server. This is not the NickServ password!
Channel.NameStringThe bot will attempt to connect to this channel to bridge chat
ModChannel.NameStringUnused
RemoteConsoleUsersList of StringsNicks in this list are able to use IRC Console
Message.Irc.MessageStringUsed for messages from the game to IRC
Message.Irc.MeMessageStringUsed for /me messages from the game to IRC
Message.Irc.JoinMessageStringUsed for player login messages in IRC
Message.Irc.PartMessageStringUsed for player logout messages in IRC
Message.Game.MessageStringUsed for messages from IRC to the game. Supports & color codes
Message.Game.MeMessageStringUsed for /me messages from IRC to the game. Supports & color codes
Message.Game.JoinMessageStringUsed for IRC user join messages in game. Supports & color codes
Message.Game.PartMessageStringUsed for IRC user part messages in game. Supports & color codes
Message.Game.NickMessageStringUsed for IRC user nick change messages in game. Supports & color codes

To disable any Message: Simply set it to "" and it will not be processed or sent.

Using IRC Console

IRC Console is a powerful feature provided by Farion, as it allows you to execute commands as if you were in the server console, without having to open it.

To use it, you must first add the the Nick of the IRC user you would like to be able to use this feature to the list RemoteConsoleUsers in the config.yml. Be sure you have registered this Nick with NickServ! If someone else steals your Nick on IRC they will be able to use console on your server

To enable the console, open up a private message conversation with the bot and say ".on"

  • You can use "/msg <BotNick> .on" to begin this conversation in any IRC client

After doing this the bot will now send you private messages of the console output, and all messages sent to the bot will be executed as if they were console commands.

To disable the console, in a private message with the bot say ".off"

  • You can use "/msg <BotNick> .off" in any IRC client

And that's all there is to using it, it's that simple.

Other Information

  • You can find Farion on github here!
  • If you find a bug in Farion, please submit an issue here.
  • You can find development builds of Farion here. These builds have not been approved by the BukkitDev staff. Use them at your own risk.

Comments

Posts Quoted:
Reply
Clear All Quotes

About This Project

Categories

Recent Files

Bukkit