# Willie IRC Bot

**Category:** Standalone_Bot
**Original Author:** Edward Powell

## Description
Willie is a simple and extendible IRC bot written in Python. It provides basic functionality such as commands, event handling, and can be extended with various modules.

## Key Features
- Runs unattended with command triggers (!cmd/.cmd)
- Supports user-level access control
- Implements text/JOIN/KICK/OP automation
- Loads and executes external modules for additional features

## File Analysis
- **setup.py** — Defines the bot's package structure and dependencies.
- **willie.py** — Main bot script, handles core functionality and module loading.
- **make.bat** — Command file for Sphinx documentation build.
- **conf.py** — Configuration settings for bot documentation.
- **__init__.py** — Initialization module for Willie.
- **bot.py** — Core IRC protocol handling and bot operations.
- **config.py** — Bot configuration management.
- **coretasks.py** — Handles startup tasks and events.
- **db.py** — Database interface for storing preferences.
- **irc.py** — Implements IRC protocol interaction.
- **tools.py** — Utility functions used across the bot.
- **admin.py** — Admin commands for managing the bot.
- **ai.py** — Artificial intelligence module with basic responses.
- **bomb.py** — Prank game that places a bomb in user's pants.
- **bucket.py** — Module to emulate #xkcd's Bucket bot behavior.
- **calc.py** — Calculator functionality.
- **clock.py** — Time-related commands and functionalities.
- **codepoints.py** — Codepoint lookup utility.
- **countdown.py** — Countdown timer module.
- **dice.py** — Dice rolling functionality.
- **etymology.py** — Etymology lookup tool.
- **find.py** — Spell checking and word correction.
- **github.py** — Github status checker.
- **info.py** — Documentation retrieval for commands.
- **ip.py** — IP address lookups.
- **isup.py** — Website availability check.
- **meetbot.py** — Meeting logging module.
- **movie.py** — Movie information lookup.
- **netsplit.py** — Logs netsplits in the debug channel.
- **nws.py** — National Weather Service alerts.
- **oblique.py** — Web services interface.
- **ping.py** — Greeting and rudeness commands.
- **quote.py** — Random quote retrieval.
- **radio.py** — ShoutCAST radio stream information.
- **rand.py** — Random number generation.
- **reddit-info.py** — Reddit post information module.
- **reload.py** — Module reloader for admins.
- **remind.py** — Reminder functionality.
- **roulette.py** — Roulette game.
- **rss.py** — RSS feed monitoring.
- **search.py** — Web search using Google Ajax API.
- **seen.py** — Tracks when users were last seen.
- **slap.py** — Slapping commands.
- **spellcheck.py** — Spell checking utility.
- **tell.py** — Tell and ask functionality.
- **tld.py** — Top-level domain information.
- **translate.py** — Translation module using web services.
- **twit.py** — Twitter integration.
- **url.py** — URL title retrieval.
- **version.py** — Displays bot version information.
- **weather.py** — Weather lookup functionality.
- **wikipedia.py** — Wikipedia article retrieval.
- **wiktionary.py** — Wiktionary definition and etymology lookup.
- **xkcd.py** — XKCD comic retrieval.
- **youtube.py** — YouTube video search.