4e7c19a02a
Twitter: use Module's timer support including proper shutdown
2011-04-23 12:58:35 -05:00
80f2ff469c
Module: properly end timer threads by tracking when module's shutdown() was called
2011-04-23 12:07:30 -05:00
0c5fe348dc
Module: add timer support to modules
...
modules that want to create a timer should implement timer_interval()
to return a non-zero value (the timer interval, in seconds) and
timer_do() (the method that does stuff)
2011-04-23 11:50:02 -05:00
5885983afd
Markov: when learning lines, don't include the part direct addressing
...
e.g. if i say 'dr_botzo: hello dude', he only learns 'hello dude'.
this is mainly being done because the bot's name being in the brain
so many times was getting kind of silly, especially in channels that
have lots of conversations with the bot
2011-04-22 19:40:36 -05:00
69243ce1e5
Merge branch 'master' of ayu.incorporeal.org:dr.botzo
2011-04-22 19:25:04 -05:00
768fd1c072
BUGS: document !alias list wrong destination bug
2011-04-02 23:23:36 -05:00
9a4f8b019a
Twitter: move timer reregistration up to the top of the timer routine
...
twitter will occasionally fail hard, when it was doing so this
check for updates wasn't reregistering, making the bot stop
checking eventually
2011-03-21 18:23:59 -05:00
5913a95165
Markov: append a stop if we have nothing to append from a chain
...
somehow a chain led us down a path where there are no values for
the keys in the chain. if that happens, just abort.
i'm not quite sure how this could happen
2011-03-17 17:24:11 -05:00
2b8f0d2843
Markov: don't crash when learning a sentence that's only whitespace
2011-03-14 13:14:56 -05:00
61f960e0b5
TODO: handle disconnects
2011-03-03 23:16:01 -06:00
c17623bcf6
Karma: in the element regex, match ()ful version before ()less version
...
the motivation here is doing (foo)++ would match \S+ first, adding
(foo) to the karma database (rather than foo, which is probably what
the user meant)
2011-03-02 16:17:59 -06:00
250dd6c4b0
Merge branch 'master' of git.incorporeal.org:dr.botzo
2011-02-26 19:10:26 -06:00
cdb7a58240
Storycraft: attempt at handling unicode properly
2011-02-26 19:10:12 -06:00
87cc1ce15c
Merge branch 'master' of ayu.incorporeal.org:dr.botzo
2011-02-26 19:08:36 -06:00
e78e6faad8
Storycraft: update usage hints to provide the proper commands
2011-02-26 19:07:16 -06:00
56bd5a687b
Seen: unicode safety
2011-02-25 23:11:04 -06:00
713fb3e94a
Seen: helps to actually import sqlite3
2011-02-25 23:09:41 -06:00
e020cdb476
Seen: convert to use sqlite database
2011-02-25 21:54:09 -06:00
67403971df
Twitter: properly reverse the tweets list, remove it from the TODO
2011-02-25 21:10:54 -06:00
7a53aaa9a1
Markov: properly output unicode chains
2011-02-25 20:59:57 -06:00
87073d7fd3
Markov: cache the first word in markov chains
...
this eliminates the expensive database hit on every request for a line.
the cache is loaded when the module loads and learning new lines should
add the appropriate word to the list. seemed like a pretty good compromise
2011-02-24 21:06:29 -06:00
3d6ede5155
script to take a file of lines and create sqlite markov chains
2011-02-24 21:04:28 -06:00
1712a7db53
Markov: use sqlite backend for brain
...
this keeps us from having the entire markov chain in memory and
having to do the pickling and so on. in many ways, this is a good
thing.
in one way, this is a bad thing. each line on irc will create a
__start1,__start2 item in the database, which means starting a
chain will be an expensive process. (approx 3 seconds, from irc
logs of 600,000 K lines). following selects run much faster, but
the first one is dog slow. a later commit should hopefully fix this.
2011-02-24 20:39:32 -06:00
28694ed82f
chmod -x modules/Help.py
2011-02-23 19:40:06 -06:00
414514d3b2
Twitter: reverse the tweets list, to print in ascending order
2011-02-22 22:59:55 -06:00
902b7755e5
Web (Storycraft): since the lines array includes the prompt for the next line (''), subtract 1 when drawing the progress bar
2011-02-22 22:55:13 -06:00
cdf6b3db95
Web (Storycraft): pop h3 titles on the sections of the game summaries
2011-02-22 20:22:20 -06:00
bfe88f28cd
Storycraft: make a couple more commands fit the 'game # whatever' format
2011-02-22 19:45:57 -06:00
865a39204f
Web (Storycraft): format the story a bit by adding <p> tags, for readability
2011-02-20 19:35:37 -06:00
07b76f3e5e
Web (Storycraft): change the game ID block to show dates, not the creator
2011-02-20 18:43:59 -06:00
9240631775
Web (Storycraft): font size tweaks
2011-02-20 18:38:47 -06:00
0866651af1
Web (Storycraft): use for ... empty
2011-02-20 18:05:47 -06:00
2f5bdf5d1f
Web (Karma): add detail page to see the deltas of one key
...
this could be a graph, eventually, with more time to hack through
something like YUI.
http://developer.yahoo.com/yui/examples/charts/charts-styles_clean.html
is a solid example
2011-02-20 17:08:17 -06:00
497d9288e7
Web (Storycraft): include storycraft # in <title>
2011-02-20 16:28:21 -06:00
578c2ea29f
Karma: allow for karma/query on unicode strings
2011-02-20 16:13:00 -06:00
ca0ee4ce41
Web: autoescape in all templates
2011-02-20 13:45:39 -06:00
d2a6267d95
Web (Storycraft): show a bar indicating the progress of the detailed game
2011-02-20 13:11:49 -06:00
576cea4c0a
Web (Storycraft): only do fancy first-letter tricks on actual stories, not the message about how there isn't a story to show yet.
2011-02-20 11:42:33 -06:00
632a3f5e99
Web: add an app for storycraft, mainly for viewing completed games at the moment
2011-02-20 11:32:17 -06:00
91b276ece5
TODO: half-thought plan to move all bot config to the database
2011-02-19 14:16:29 -06:00
faef1cb802
Web: add a root index page
...
would like to display some of the bot variables, but the base config
needs to be added to the database first, which isn't done yet
2011-02-19 14:13:11 -06:00
378029321c
Web: move botweb to web
2011-02-19 13:22:36 -06:00
55ad48c805
Web: slight environment cleanup, wsgi app
2011-02-19 13:18:31 -06:00
c9046ff587
Merge remote branch 'origin/mjb.web'
2011-02-19 10:47:31 -06:00
22b35bcb94
Storycraft: add storycraft_gamestatus in order to break out getting a game's status
...
this is primarily to use a consistent format - 'game X status' rather than 'status X'
2011-02-19 01:18:14 -06:00
de04fd0d85
add TODO for fixing Twitter poll output order
2011-02-19 01:17:19 -06:00
3e63c2e458
since sending arbitrary text and replying now have very different goals, add Module.sendmsg
...
this just sends a privmsg to the specified target on the specified
connection. pretty straightforward. also, update the modules that
need it to use it.
2011-02-17 12:31:51 -06:00
752515a628
put check for pubmsg vs. privmsg in Module.reply() rather than a method where it achieved nothing
2011-02-17 12:07:41 -06:00
fca716af9e
allow for multiple modules to respond to recursion text
2011-02-17 12:01:32 -06:00
f4d69c90d4
Alias: don't crash when doing alias info output because i forgot to update the reply calls.
2011-02-17 10:07:29 -06:00