Darkbot Plugins -

Plugins in Darkbot are modular scripts (typically written in C, though some variants use a simplified scripting language) that extend the bot’s core functionality. They hook into events like:

Each plugin registers keywords or commands, then executes logic—fetching data, replying to users, or altering bot behavior.

Random or indexed quotes. Syntax: !addquote <text> stores it; !quote retrieves a random line; !quote #42 retrieves a specific entry. The plugin saves to a flat file (quotes.dat), making it portable. darkbot plugins

If you run multiple Darkbot instances across several channels, you can share a single knowledge base. The MySQL plugin replaces flat-file lookups with queries:

keyword weather 
  handler 
    var city [strip $args 6]
    var result [mysql_query "SELECT forecast FROM weather_cache WHERE city='$city'"]
    msg $channel "Forecast: $result"

At its core, a DarkBot plugin is a compiled module designed to interface with DarkBot’s Event API. Unlike monolithic bots that attempt to do everything, DarkBot uses a modular architecture. The core loads plugins at runtime, each responsible for a specific set of commands. Plugins in Darkbot are modular scripts (typically written

Why use plugins?

Plugins intercept IRC events: OnJoin, OnPrivmsg, OnTimer, or OnBan. They then decide whether to respond, execute logic, or pass the event to the next plugin. Each plugin registers keywords or commands, then executes

DarkBot plugins are essentially pieces of software that can be added to DarkBot to extend its functionality. They can range from simple commands that provide additional information to complex systems that integrate with external services.

Raw Darkbot is dumb. Out of the box, it knows how to connect to a server, join a channel, and learn via the @learn command. But to be useful, you need plugins. Here is why: