Commit Graph

204 Commits

Author SHA1 Message Date
Brian S. Stephan ebd89d35cc (hopefully) properly catch/log URLError, IndexError 2010-10-25 18:23:25 -05:00
Brian S. Stephan a45af7a0a7 Pi -> pi, fixing what I'm going to claim is a typo. 2010-10-20 11:57:31 -05:00
Brian S. Stephan c3270ef3df module to calculate pi over time, via the monte carlo method.
idea pinched from #linode.
2010-10-18 22:48:51 -05:00
Brian S. Stephan 2a1ef11d95 don't attempt recursion when the subcmd is, in fact, an empty string (i.e. text was '[]') 2010-10-12 11:54:43 -05:00
Brian S. Stephan 95a27cc44b read brainfile filename from config file, allow default 2010-10-09 20:37:15 -05:00
Brian S. Stephan 05f1ce325a put MegaHAL module load in __init__, which is now being implemented here
obviously, we need to call Module.__init__ as well, and as a nice
side effect, doing all of this lets us not need to do the on_connect
nonsense, which was the wrong thing to do anyway
2010-10-09 19:36:00 -05:00
Brian S. Stephan 52b740a52c split the register_handlers into a method other than the object constructor
the reasoning behind this is that we may want to load one object
but have it connect to multiple servers. this allows that.
2010-10-09 18:52:51 -05:00
Brian S. Stephan 599106e447 require config file on the command line 2010-10-02 21:44:03 -05:00
Brian S. Stephan 466eb6eff1 attempt to give up if we're doing too many splits 2010-09-30 19:38:21 -05:00
Brian S. Stephan 827d1b2c86 megahal library crashes if the text ends with ' for some reason, so work around it 2010-09-13 20:22:08 -05:00
Brian S. Stephan 1988662c0a have ^megahal$ trigger a no-input reply from the megahal module.
mostly useful for chaining random bot nonsense into other commands
2010-09-08 22:22:43 -05:00
Brian S. Stephan d5c4750dd8 use proper pluralization, commas in countdown output 2010-09-08 21:39:56 -05:00
Brian S. Stephan e6c9747dad remove overload of on_pubmsg() 2010-09-08 20:44:09 -05:00
Brian S. Stephan 54af309bbc and username, password options to bot, and properly connect with those options. 2010-09-08 20:32:43 -05:00
Brian S. Stephan fd7834756b add !alias list that displays the existing alias commands. limited utility, really. 2010-09-08 20:12:19 -05:00
Brian S. Stephan a7f0070a39 module reloading appears to be broken. disabling for now. 2010-09-08 20:06:20 -05:00
Brian S. Stephan f5caeb3833 add new meta options to remove_metaoptions() 2010-09-08 19:58:29 -05:00
Brian S. Stephan 3e91000acc now that we have meta.strip_bot_name_from_input there is no need to overload on_pubmsg 2010-09-08 19:51:18 -05:00
Brian S. Stephan 338c1e759f meta option 'meta.strip_bot_name_from_input' to determine just that. 2010-09-08 19:49:56 -05:00
Brian S. Stephan 14973388e5 remove pubmsg/privmsg overloading in Alias now that we have 'meta.skip_recursion_scan'.
also, the last commit's message should have referred to this meta option
instead of what it actually did. oops.
2010-09-08 19:40:16 -05:00
Brian S. Stephan fc8a61a110 meta option 'meta.pubmsg_ignore_bot_prefix' to have module not try [] recursion.
handy for the alias module, which will want to preserve that recursion stuff (if
it shows up) after it does its alias lookup
2010-09-08 19:38:19 -05:00
Brian S. Stephan 98c30e1714 module meta option to ignore when bot is addressed directly.
the motivation for this is if you have commands that have been aliased
that you do not want to fire when they normally would via 'bot: blah'
2010-09-08 19:32:06 -05:00
Brian S. Stephan f3e9568fe3 create the array of arguments in all the methods that need them 2010-09-08 19:24:26 -05:00
Brian S. Stephan 6541e6a193 first attempt at using HTTP POST for translate 2010-09-08 19:07:01 -05:00
Brian S. Stephan 47022f9428 add ctech dice rolling method, for cthulhutech.
does greatest/best set/best straight methods. use normal roll for
stuff that should be summed, like damages
2010-09-05 11:00:11 -05:00
Brian S. Stephan 27ff7e257d fix a bug that was getting the trailing semicolon wrong, and do it better anyway. 2010-09-05 10:44:59 -05:00
Brian S. Stephan 053c3f0ae6 properly call admin functions within do.
before this, recursion type stuff wasn't responded to properly because
do wasn't returning the methods' text
2010-09-04 12:26:50 -05:00
Brian S. Stephan 8c1c10a4bc remove debugging print statement 2010-09-04 12:26:20 -05:00
Brian S. Stephan 92281151ff don't display the comment twice, now that we print the entire roll string 2010-09-04 12:09:37 -05:00
Brian S. Stephan a0fd33b070 only append the roller's nick once, at the end, if there is a reply 2010-09-04 12:08:13 -05:00
Brian S. Stephan 27b27ecb61 split roll string and properly ignore "roll" from roll attempt 2010-09-04 12:04:24 -05:00
Brian S. Stephan 5b44b66c4d demand a roll prefix on the Dice module 2010-09-04 11:56:35 -05:00
Brian S. Stephan b9ef46606d don't output anything if the aliasified command is the same as the reply.
this indicates that none of the modules could actually do anything with that
text, so whatever happened probably didn't fire any modules (and if it did,
they didn't provide return text anyway)
2010-09-04 11:55:10 -05:00
Brian S. Stephan b1e1254564 reloading MegaHAL.py seems broken somehow, so just avoid doing it 2010-09-04 11:49:18 -05:00
Brian S. Stephan a5dbb27622 Alias module to turn text into other text.
mostly for sending commands to the bot without addressing the bot with
bot: (and potentially triggering MegaHAL) yet also without exposing
sensitive commands to the non-addressable mode (like wtf/quit). speak
the alias and the bot will run the looked-up text through the modules,
regardless of their addressable settings
2010-09-04 11:29:18 -05:00
Brian S. Stephan bf8fe46522 retransmit_event takes an Event and re-runs it through normal event handling.
i wrote this for something and then realized i didn't need it, but
it may be interesting for some reason in the future
2010-09-04 10:45:18 -05:00
Brian S. Stephan 1f27078f82 MegaHAL module, lets the bot partake in inane conversations. doesn't
assume a learning file or anything, starts with an empty brain and
learns from IRC
2010-09-04 09:53:11 -05:00
Brian S. Stephan 71e545b908 external MegaHAL library for incoming module 2010-09-04 09:51:44 -05:00
Brian S. Stephan 4bf2d344fc dice: only try sending something if we actually have something to say 2010-08-28 14:07:00 -05:00
Brian S. Stephan 88c83c1e45 dice: properly handle multiple-roll strings (d20; d20) in this post-
recursion world where we're supposed to return a string
2010-08-28 14:04:29 -05:00
Brian S. Stephan 713b1e560b get around occasional utf8 conversion exceptions by swallowing
those exceptions and moving on, since the output never seemed
wrong in these cases anyway
2010-08-24 13:25:30 -05:00
Brian S. Stephan 7dfdf28c19 TODO: periodic reconnects when disconnected/split 2010-08-24 12:01:55 -05:00
Brian S. Stephan d2442689ad TODO to use POST instead of GET for translate queries 2010-08-13 14:20:12 -05:00
Brian S. Stephan 9720dfe5bc Revert "Generalize translation code in GoogleTranslate.py". Previous
three reverts to undo the recent stuff from kad's branch, which was
having problems with recursion

This reverts commit 1920a12759.

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2010-08-01 19:31:09 -05:00
Brian S. Stephan 493521c3da Revert "A few minor changes to previous GoogleTranslate commit"
This reverts commit 257562f0d0.

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2010-08-01 19:27:44 -05:00
Brian S. Stephan d4fc5e77eb Revert "Remove commented code"
This reverts commit 9022159c87.

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2010-08-01 19:27:44 -05:00
kad 9022159c87 Remove commented code 2010-08-01 18:02:55 -06:00
kad 257562f0d0 A few minor changes to previous GoogleTranslate commit 2010-08-01 17:57:10 -06:00
kad 6f2ae757be Merge branch 'master' into kad 2010-08-01 17:39:58 -06:00
Brian S. Stephan 6fe2bb5fee make trigger work with regexes 2010-08-01 12:22:59 -05:00