Notice: Development on IRCbot has stopped, as the PircBot base is now getting tripped up by anti-bot protections. (Most notably by Inspircd.) I’m using SupyBot instead now.
What is IRCbot?
Simply put, a strange combination of LogBot (which itself is an extension of PircBot), a few of the hacks from IRC Hacks (which was written by the same person who created PircBot and LogBot), as well as bits and pieces of Java I’ve picked up during my IB Computer Science HL course. This means that, for example, you can now set the login of the bot, among other things, by editing the config file, or even use multiple different config files because the location of the config file is no longer hardcoded. Essentially, I just used what I’ve learnt to make it more useful for me, and I hope that it’ll be useful for anyone who actually wants to try it.
What does IRCbot do?
Currently? Mainly logs everything that goes on in any IRC Channel that it is connected to (and even that is optional). At this point, the only additional features included are a !seen feature (IRC Hack #40), and a !playback feature (IRC Hack #43). There are additional bits that I’ve added, such as automatically reconnecting to the channel after the bot has been disconnected from the server (added because the original would only reconnect to the server, not the channel as I discovered after wondering why nothing had been showing up in the logs.) In the future? I’m planning to mix in a few plugins from PPF, most noteably the !tell and !timeZN setting plugins. I’m also going to try and change the !seen function such that it’ll use the users’ selected timezone setting when a particular user does !seen <username>. I’m also going to clean up the code a fair bit, given the (admittedly) horrible state that it’s in right now – hacks and testing bits everywhere, commented out unused bits, etc. – and put it in a *proper* CVS, not the ‘copy the folder and rename it’ ‘trick’ that I’m doing now.
Why are you doing this?
I don’t know… for fun, really. It started with wanting to log the chats on a server, then I added a bit of functionality here and there, found the IRC Hacks book, decided to add stuff, and that’s how I got IRCbot to where it is now.
So… can I use it?
Of course! Both PircBot and PPF are licensed under the GPL which means that I have to release the code that I’ve created into the public domain. Besides, even if it wasn’t public domain code, I’d probably put a copy up here just to be sure that a backup copy exists.