How bMotion "Works"
bMotion is not artificial intelligence.
At best, bMotion is artificial stupidity.
There are two key parts to bMotion's interactivity: pattern matching and output generation.
Pattern Matching
For each line said on IRC, bMotion compares it to a list of regular expressions (patterns). There are several types of pattern that bMotion can use, but for now just pretend it's all one big list. Any patterns which match the line on IRC get noted.
After all the patterns have been compared, bMotion executes the code associated with each one in alphabetical order (by plugin name). Each plugin is executed in turn, unless one returns a code to indicate execution should stop. This is generally after a plugin has generated output, as it would look dumb to have two different responses for one trigger. bMotion is never dumb.
