BukkitIRCd
BukkitIRCd by Jdbye
- A standalone IRC server plugin for Bukkit
Latest Version: v0.9.3
Features:
- Runs as either a standalone IRC server, or a IRC link to any InspIRCd server.
- Standalone IRC server with ingame chat, easily integrated with website using a IRC widget or applet.
- Whois for both IRC and ingame players, shows current world. Also works ingame.
- Nickname suffix for ingame players to differentiate between IRC and normal players.
- Nick changing on IRC, shows up ingame.
- Public chat from IRC to game, and game to IRC.
- Private messaging from game to IRC, IRC to game, and IRC to IRC.
- Kicking, banning and listing IRC users and setting topic from IRC and ingame.
- Reply quickly to messages using /ircreply
- Ingame users show as separate users on IRC.
- Execute server commands from IRC. (oper only)
- IRC notices from IRC to game, and IRC to IRC.
- IRC joins/quits show up ingame, and vice versa.
- Customizable MOTD read from motd.txt
- Customizable messages read from messages.yml
- User modes (op, protect, voice, etc.) based on permissions nodes.
- Customizable color code conversion between IRC<->Game.
- IRC formatting codes are supported ingame using ^B for bold, ^I for italic, ^U for underline, ^O for normal and ^K for color, and are stripped from ingame chat.
- Dynmap support - IRC messages show up on Dynmap, and vice versa.
Coming soon:
- HeroChat/Towny support
- UnrealIRCd linking support.
Commands: (arguments enclosed in parenthesis are optional)
- /irckick nick (reason) - Kicks someone from IRC. Aliases: /ikick
- /ircban (type) nick/ip/fullhost (reason) - Bans a online user from IRC by their host, IP, nick or ident, or offline user by IP or full hostmask. (type) means you can type either one of host/ip/ident/nick to choose the type of ban. This is optional and it will use the config file setting if it's omitted. Aliases: /iban
- /ircunban ip/fullhost - Unbans a user from IRC. Aliases: /iunban
- /irclist - Lists all users currently on IRC. Aliases: /ilist
- /ircwhois nick - Looks up any user currently on IRC. Aliases: /iwhois
- /ircmsg nick message - Private messages any user currently on IRC. Aliases: /imsg, /im
- /ircreply message - Reply to the last message you received from IRC. Aliases: /ireply, /ir
- /irctopic newtopic - Changes the IRC topic. Aliases: /itopic
- /irclink - Attempts to link to the remote IRC server if in linking mode. Aliases: /ilink
- /ircreload - Reloads the configuration file. Aliases: /ireload
- /rawsend command - For debugging purposes only. Sends a raw server command in linking mode. Disabled by default in the config file.
- !players - IRC command to list online players.
Permission Nodes (Permissions 2.x/Superperms):
- bukkitircd.kick - Permission for /irckick
- bukkitircd.ban - Permission for /ircban
- bukkitircd.unban - Permission for /ircunban
- bukkitircd.list - Permission for /irclist
- bukkitircd.whois - Permission for /ircwhois
- bukkitircd.msg - Permission for /ircmsg
- bukkitircd.reply - Permission for /ircreply
- bukkitircd.topic - Permission for /irctopic
- bukkitircd.link - Permission for /irclink
- bukkitircd.reload - Permission for /ircreload
- bukkitircd.* - Gives the player permission to all of the above.
- bukkitircd.oper - Gives the player IRC Operator status. Currently doesn't do anything apart from show it in /whois
- bukkitircd.mode.owner, bukkitircd.mode.protect, bukkitircd.mode.op, bukkitircd.mode.halfop, bukkitircd.mode.voice - Gives the player the corresponding IRC user mode.
- bukkitircd.mode.* - Gives the player every IRC user mode. (except oper)
Source is included in the JAR file and is licensed under GPLv3 GNU General Public License. This means you are free to release modified versions as long as the source is included.
awesome plugin can confim it works with 1529 - how do i set the oper? there doesnt seem to be a setting for it in the yaml file
edit
suffered a brain fade there! im so dumb imma take my self out back and cap myself :P
@Jdbye
I do /oper user pass
I'm really not sure what I'm missing. No response from /join #staff either.
@ctharvey
Please explain what you mean by "pass commands back to the server ban". If you just mean executing server/console commands, then that's already possible from the console channel (just login with /oper and the username/password you set in the config file). I might add a more flexible nick registration system in the future, but /oper does the job. As for talking on IRC without the messages showing ingame, you could just use the console channel for staff discussion, since actual commands there have to be prefixed with a "!" (but of course everyone would need the oper username/password)
@TheDarthNix As long as you /oper with the correct username and password that you set in the config file it should just work. Make sure the password in the config file does not start with a "" (tilde) however, because that's reserved for hashed passwords. Also, neither username nor password can contain spaces.
I'm feeling really stupid and can't get IRC op from an irc client. What am I missing?
Really great plugin! By far best IRC one I've used and I'm coming from CraftIRC. Running as a standalone is great as you don't have to wait for the bot to be authenticated on each reload.
Couple requests or suggestions if possible:
Leading character cancels pass of text to in-game. Most of my admins spend a lot of time in IRC monitoring and discussing things amongst themselves
Ability to register nicks and pass commands back to the server ban from IRC. This bring s up an interesting issue for you as you'd have to have some sort of authentication system. If either are implementable it'd be pretty sweet.
That´s awesome, good job :o
@JLSJonas
This doesn't really have a huge advantage over CraftIRC except of course that it doesn't require a separate IRC server. But usually you can host a bot on any IRC server so CraftIRC is about as good in this case except for the fact that it doesn't require a separate IRC server and that it shows ingame users as separate nicks. If you do have the capability to link with another IRC server it will be useful though. Opers will get all the features of the server they're oper on and banning and other features will be handled by the server you're connected to so it'll generally be more feature complete with other servers when I add the linking support.
I mostly made this for my own server though. Messages by one user was beeping the same user if he was on IRC due to how mIRC (as an example's) beeping was set up by default when connecting to CraftIRC. Some of the server staff complained because of that "bug" several times. And this plugin should be pretty lightweight and provides an easy way for people to chat on it on pretty much any device without being ingame, and even administration is possible like banning thanks to the server console on pretty much any device, even a Nintendo DS if you have a flashcart.
That's why I chose IRC for this plugin. It's just supported by such a sheer amount of devices it'd be stupid not to. EssentialsXMPP is probably good - but a lot of people just don't use XMPP and they're probably not going to just to be able to use a specific plugin. I've always been a fan of IRC though, but that's because it's the best IM chat medium you can meet completely random people on. Especially since most people you meet on Minecraft server are completely random.
However if you're currently happy with CraftIRC and none of your IRC users are complaining that they're beeing beeped by their own ingame chat there is probably no reason to switch immediately. My (our) server has a rule that all staff has to be on IRC regularly (not my choice) and therefore a lot of staff is annoyed by CraftIRC's messages. That's mostly why I made this plugin. However if anyone finds a bug in the plugin I'll be happy to help. I want this plugin to be as bug free as possible, so people can get a good experience from it. I'll most likely be adding /im (for /ircmsg) and /ircreply and /ir commands ingame tomorrow so it's easier for ingame players to respond to messages.
If any other people have any requests for more features I'd be more than happy to hear them, I'm all out of features add ideas myself.
@shinji257
That's true. However they mostly refer to all sorts of IRC communications including clients like eggdrop. I hosted one on a host that normally disallowed it but since it was on a port other than 6667 he allowed it.
If you do this on a host make sure it's permitted. Many providers do not permit irc servers in their ToS or AUP.
looks promising, not sure when I'll switch from CraftIRC to this tough...