MrBot

(Redirected from RS IRC Bot)
Jump to navigationJump to search

Currently online in the major RS channels as MrBot. MrBot has been online since August 4, 2007. He was offline for four months, 2008.02.07-2008.06.07, but has been back ever since.

If MrBot is not online, send an email to Licah and he will investigate.

See http://www.rebelsquadrons.org/irc/bot.help for instructions on using the bot.

todo

Necessary before "v1.0"

  • Bot doesn't reconnect sometimes :(
  • Bot sometimes just vanishes and ceases operation without error. Only possible clues are that Josh was peered immediately beforehand, and there was a batch of mysql connection errors just before that. Bot should never reach end of script without !quit.. research!
  • Aggressively attempt to regain nick MrBot if stolen

and then

  • Don't respond to !lookup in #db
  • Fix topics to allow more than one word :P
  • MrBot loses track of you if you change your nick to the same characters, but different cases. (Licah > LICAH)
  • is there some kind of autotopic going on? weird...investigate
  • Update "seen" if person PARTs a channel
  • Automatically set +nst if opped or entering channel
  • Don't reply to X's msgs
  • Swear filter: allow setting via PM?
  • further standardize error messages? -- make everything work like !op - including self-op-recognition
  • resolve owner but not manager problems - e.g. Swifty #rid.
  • !access - if only one channel, remove "s"
  • Find out what's causing the occasional fwrite() errors
  • (Website) Make it possible to edit stuff via website.
  • (Website) figure out /irc/ folder, update /chat/ a little bit more - need to put /irc/tutorial.html back up (see http://icte.darkjedibrotherhood.com/schedule.html)
  • slashes in channels or nicks are fatal; simply need to mres every channel and nick
  • make sure log off mode is 100% error-free? though no one uses it.
  • (!op) trying to op multiple people at once is bad:
[2008.07.24 20:06:25] <Lespin> !op Codyman Lespin
[2008.07.24 20:06:25] MrBot sets mode: +pino Codyman
  • support for channel modes (+n, +s, +t) - put in mysql table?
  • after kick, need to update seen/online (also after part?) - this is supposed to be in there already..
  • "I've been online for 1 week, 6 days, 23 hours, 59 minutes, 60 seconds, since 2008.11.23 10:28:23pm EST." After 2 weeks uptime, command works improperly. (Nice to get that much uptime!)

other updates to consider

  • "Target change too fast." message clogs up some logs. remove from logs entirely.
  • update to use servers from db
  • !access - people still not getting the right order - figure out what to do
  • !topic - keep track of topic? allow !topic to have mrbot say topic (since undernet servers sometimes make it be lost)
  • (!seen) searchroster(): search ABG chars too
  • seen: recursive nick checks? licah|afk has not /nick'd LicahEvlDead, so there are now two results for "licah" while licah is licah|afk (because of different hostmasks)
  • logs: consider making monthly archives of logs for filesize purposes
  • Scrambler: !pause?
  • Scrambler: option for private games
  • !seen - should take a parameter of how many results - provide some way to see all? maybe on chat website
  • !logout ability, more than just !private
  • ops recognition: bot doesn't realize it has ops when it creates a channel, like #scrambler.
  • consider dealing with this msg? :mesa.az.us.undernet.org 482 MrBot #rsio :You're not channel operator
  • make command to have MrBot state which channels he does and does not have ops
  • +ooo does not work for MrBot to recognize itself being opped?
  • \ in nicks is not saved to seen list
  • socket_accept() constantly generates errors? suppressed for now
  • (re)connecting: lots of php errors generated -- need to suppress some (especially related to sockets, since we use error-handling for that)
  • !dice: any logged-in person should be able to control this (also true w/!scrambler?)

expanded functionality

  • (ICTE) matchmaking mode in multiple channels?
  • (Games) trivia / hangman / wheel of fortune
  • dictionary def: !def can use http://www.mso.anu.edu.au/~ralph/OPTED/ -- !etym can use http://www.etymonline.com/index.php?term=zephyr -- add links to urbandictionary and a comprehensive dictionary site for definitions that seem to fail (answers.com?)
  • add support to reconnect to MySQL if the service is rebooted and/or the connection doesn't exist. Makes bot more robust, and we can restart mysql service as needed.
  • I kinda want to revamp ICTE a lot and start awarding idle points, like the plan was for ORW3. That would involve some bot stuff, too. We can set that up with auto-on and auto-off for MrBot... it could be a completely automated ICTE system.. some sweet stuff could happen. It'd take a fair amount of time, but not as much as you might think. let's think about it.. also, maybe icte.rs.org? since it's going to be a major site of its own. Or, maybe just rs.org/icte will still work. That's a whole project to consider.. woot
  • (RS-wide merits) add support for the two potential bot things
  • (Stats) add support for line-counting, etc.
  • keep track of everyone's status (+v, +o)
  • !access doesn't work without providing a channel name - providing this ability would be tricky, since 1,2,3 are pins as well. Should be doable in some fashion.

Scrambler logs

  • do some RS lists (can pull automatically from db and format -- like ABG chars, medals, etc)
  • add logs from other scrambler (morelogs.rar)
  • List of unusual words -- huge. http://phrontistery.info/a.html