About PurpleIRC

PurpleIRC is an IRC to Minecraft bridge plugin. This plugin supports running multiple bots on multiple channels. This plugin utilizes the PircBotX Java IRC framework (included in the plugin jar).




  • Relay chat from game to IRC and vice versa.
  • Relay game events to IRC.
  • Relay IRC events to game.
  • Translate colors from game to IRC and vice versa.
  • Fully configurable message templates.
  • Enable or disable any chat feature to and from the game.
  • Most of the configuration options are per bot and per channel.
  • Each bot can join multiple channels.
  • Automatically op IRC users based on user masks.
  • Control and protect the IRC topic.
  • Manage IRC channel modes.
  • Automatically reconnect to the IRC server on disconnect.
  • Respond to commands in IRC chat.
  • Send any command to the game via the console.
  • Supports prefixes and suffixes. (see sample config for details)
  • Displays IRC users in the tab list. (requires ProtocolLib)
  • Monitor player command usage.
  • Great for cross server chatting.
  • Update checker will make external HTTP connections to check for new versions.
  • SSL/TLS support.

CraftBukkit Versions

  • If you are running CraftBukkit version 1.7.2 or older then stick to PurpleIRC version v2.1.14-174 and older.
  • If you need a version that supports Spigot visit the Spigot Resource Page.

How to install

  1. Drop the PurpleIRC.jar file into your plugins directory.
  2. Restart the server. (Please don't use /reload)
  3. Copy plugins/PurpleIRC/sample bot to plugins/PurpleIRC/bots/NewBotName.yml
  4. Edit the bot yml file as needed. Each option is documented.
  5. Use /irc load bot.yml command to load and start the new bot.
  6. Configure permissions.


  • Configuration - Use /irc reloadconfig to load your changes while the bot is running.
  • Sample Bot - Use /irc reloadbotconfigs to load your changes while the bot is running.

Frequently Asked Questions


Chat Hooks

Other Hooks


  • PircBotX: The PircBotX classes are included in the plugin jar file.
  • Vault. If you need to use the %GROUP% token then install Vault.
  • ProtocolLib. If you need to use the custom tab list then install ProtocolLib.

Permissions (see plugin.yml)

irc.<COMMAND>opEvery command requires a permission node.
irc.message.chattrueReceive IRC chat messages
irc.message.gamechattrueSend game chat to IRC
irc.message.actiontrueReceive IRC chat actions (/me)
irc.message.quitfalseReceive IRC quit messages
irc.message.joinfalseReceive IRC join messages
irc.message.disconnectopReceive IRC disconnect messages
irc.message.connectopReceive IRC connect messages
irc.message.kickfalseReceive IRC kick messages
irc.message.nickchangefalseReceive IRC nick change messages
irc.message.topicfalseReceive IRC topic messages
irc.message.partfalseReceive IRC part messages
irc.tablistopDisplay IRC users in tab list


/irc load [bot.yml]Load bot file
/irc unload [bot.yml] (disable)Unload bot and optionally disable it
/irc reloadReload entire plugin (Don't use this to load changes to your configs and bots. Use reloadconfig and reloadbotconfigs instead)
/irc reloadconfigReload config.yml
/irc save([bot])Save bot configuration(s) to disk
/irc reloadbot[bot]Reload the bot config and reconnect
/irc reloadbotsReload all bot configs and reconnect
/irc reloadbotconfig[bot]Reload bot config without reconnecting
/irc reloadbotconfigsReload all bot configs without reconnecting
/irc connect([bot])Connect to configured IRC serve
/irc disconnect([bot])Disconnect from configured IRC server
/irc listbotsList loaded bots
/irc list([bot]) ([channel])List users in a channel
/irc kick[bot] [channel] [user(s)]Kick user(s) from a channel
/irc op[bot] [channel] [user(s)]Op user(s) in a channel
/irc listops[bot] [channel]List auto ops for a channel
/irc motd[bot]Display IRC motd.
/irc deop[bot] [channel] [user(s)]DeOp user(s) in a channel
/irc addop[bot] [channel] [user mask]Add user mask to op list
/irc removeop[bot] [channel] [user mask]Remove user mask from op list
/irc server[bot] [server] ([true|false])Set IRC server for bot. Optionally set autoconnect
/irc mute([bot]) ([channel]) [user(s)]Mute user(s) in a channel
/irc unmute[bot] [channel] [user(s)]Unmute user(s) in a channel
/irc nick[bot] [nick]Change the bot's IRC nickname
/irc login[bot] [login]Change the bot's IRC login
/irc join[bot] [channel]Join a channel
/irc leave[bot] [channel] ([reason)]Leave a channel
/irc whois([bot]) [nick]Get IRC user's whois info
/irc say[bot] [channel] [message]Make the bot say something
/irc send([bot]) ([channel]) [message]Send a message to a channel
/irc debug([t|f])Enable debug mode
/irc messagedelay[bot] ([milliseconds])Get or set IRC message delay. (Default: 1000)
/irc msg([bot]) [user] [message]Send a private message to IRC user
/irc ctcp([bot]) [user|channel] [message]Send ctcp command to user or channel.
/irc notice([bot]) [user|channel] [message]Send notice command to user or channel.
/irc sendraw([bot]) [command]Send raw command to IRC server.
/irc updatecheck([stable|dev])Check for new versions of PurpleIRC.

IRC User Modes

hHalf Op
qChannel Owner
sSuper Op

Change Log

Known Issues

  • AuthMe: If you are running the AuthMe plugin you will need to set enableAntiBot to false.

Additional Help

  • Tickets: Please reports bugs using the ticket tracker.
  • IRC: I'm usually hanging out in #PurpleIRC on irc.esper.net. If I'm awake you can chat with me there.
  • PM: Feel free to send me private messages here.


Bitcoin: 1P44sYgXLejo35vANvNfPTY56ANSC5w4dg



  • To post a comment, please or register a new account.
Posts Quoted:
Clear All Quotes

About This Project



Recent Files