Skip to content

Instantly share code, notes, and snippets.

@DarkMio
Last active February 6, 2016 13:30
Show Gist options
  • Save DarkMio/61f5a80f69a7b5bbdb63 to your computer and use it in GitHub Desktop.
Save DarkMio/61f5a80f69a7b5bbdb63 to your computer and use it in GitHub Desktop.
I should update that.

Great ideas from shitty minds

General

  • On Disconnect Renol should not crash anymore
  • Banning / allowing should be natively integrated (core), rather being a plugin
  • Maybe look what can be achieved with CTCP requests for client verification or ignoring webclients
  • Split up logging files for: System, Commands, IRC Logs
  • Maybe apply lessons-learnt from RedditRover for a web interface (???)
  • Write incredibly clean and documented code.
  • (NEW) Pipeable in/output - so you can write a handler and interface the bot from any kind of I/O

Command System

  • Maybe have two different kinds of plugin loaders:
    • Core: Lets you extend core features (maybe by overriding, just like override-vpk works?)
    • IRC Functionality: Command System that loads IRC-side commands.
  • In RenolPy3 we can have a constants library / enums that would allow something like: permission > voice
  • Make the RenolPy3 Pluginmanager so, that it can easily distinguish between normal commands, notice commands or pm commands with a bunch of annotators.
  • the pydoc annotations of command objects should map on help-commands
  • Renol should execute all commands always in a new thread.
    • execute(...): sleep(301) # should disconnect RenolPy2.7 in theory
    • offthread command execute allows way more precise command dispatching and responding to two commands at the same time (for example: Cobe takes up to 10 seconds while RenolPy2.7 is busy not responding to anyone)
  • On Disconnect Renol will pause all command threads on resume them on successful reconnect
  • (NEW) Implement DecayDictionary, which ratelimits Renols output
  • (NEW) Strict Mode: if a channel is +m, ignore +v's too.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment