LadyLuck is a Perl IRC bot based on Bot::BasicBot::Pluggable, with a collection of modules ported over from sporksbot.
Issue 'LadyLuck, help' for a list of modules loaded, and 'LadyLuck, help <module>' for help with a specific module, or see below.
Basic Syntax: .roll 3d6
The basic command is one of: .roll, .iroll, or .rolls: .roll displays the summed die roll; .rolls displays individual die rolls, and .iroll displays both the individual rolls and the summed total.
The basic dice expression consists of 'XdY', where X is the number of dice to roll, and 'Y' is the number of sides. If the number of dice is omitted, it defaults to 1. If the number of sides is omitted, it defaults to 6. If there is not a dice expression present within the command, it defaults to 3d6. Optionally, the number of sides may be indicated as %, meaning to roll a 100-sided die, or F, meaning to roll Fudge/Fate dice. Multiple dice expressions may be listed in the command, optionally separated by a mathematical operator: +, -, *, or /.
A dice expression may be preceded by a number followed by an 'x'; this indicates that that expression is to be rolled that many times and displayed separately.
A die roll may be followed by an 'explosion' indicator: one of "'", "=", or ".". The single quote means high rolls explode; that is, for each maximum die roll, that number is added to the total and another die is rolled. A period means low rolls explode; that is, each minimum roll causes a die to be subtracted from the total, and another die is rolled. An equals sign means both high and low rolls explode.
A die roll may be followed by an optional mathematical operator and a number; this is used to modify the total roll. Instead of a mathematical operator, the modifier may be a 'b', signifying to only total the best (highest) n dice from the roll, or a 'w', signifying to only total the worst (lowest) n dice from the roll.
A dice expression may be optionally followed by a 'vs' and a number; for rolls of 3d6, this calculates success based on the GURPS rules, including margins and critical success and failure. For rolls of 1d20, this calculates success based on rolling higher than the target number. For rolls of 1d100, this calculates success based on rolling lower than the target number.
The .roll command is very generous with its input; feel free to add lots of description to your rolls, the bot will ignore anything it doesn't understand.