PyMoronBot
A modular IRC bot with extensive aliasing capabilities, written in Python.
Initially a language port/rewrite of MoronBot (C#), but now somewhat diverged.
Features
- Alias any of the following to create new commands on-the-fly, and then alias those aliases to create even more
- Use Slurp to extract data from HTML/XML
- Use Sub or Chain to link multiple modules together
- and use Var to store data for use within the same command (eg, a URL you want to slurp multiple times)
- Follows URLs posted in chat to see where they lead (following all redirects), responding with the page title and final hostname
- with specialised follows to get extra relevant information from Imgur, KickStarter, Steam, Twitch, Twitter, and YouTube links
- Recognizes sed-like patterns in chat and replaces the most recent match in the last 20 messages
- Also recognizes
*correction
style corrections and replaces the most likely candidate word in that user's previous message
- AutoPasteEE detects when single responses are longer than ~2 IRC messages, and submits them to paste.ee instead, replacing the response with a link
- Consistent help for any module via the Help module
- And many more (take a look in modules)
All of these features can be individually enabled/disabled by loading or unloading the module that provides them
Installation Instructions
- Install Python 2.7+
- Clone the repo with
git clone https://github.com/TyranicMoron/PyMoronBot.git
- Create a virtualenv to run the bot in, and activate it
- Run
pip install -r requirements.txt
to install all the requirements
- Edit _defaults.yaml to set the bot owner and other details
- Copy server.yaml.example and create a server config (you'll want one of these per IRC network)
Running the Bot
Activate your virtualenv, and run python start.py -c configs/server.yaml
You can run python start.py -h
for help with the command line args