Defiance Bot (zomg)


If you're curious about my development patterns, please read through the Changelog at the bottom of this file!

Defiance Bot is written by vsTerminus for the SocialGamer IRC network (irc.socialgamer.net:6667)

Note: This help file does not apply to a Defiance Bot found on any other network, as capabilities will be severely limited in one or more areas.



Table of Contents

1. Disclaimer

2. Introduction

2.1 What is Defiance Bot and what can it do?

2.2 How can I get Defiance Bot in my channel?

2.3 How can I control Defiance Bot?

3. The Big List of Commands

3.1 Public Commands

3.2 Voice Commands

3.3 Halfop Commands

3.4 Op commands

3.5 Admin Commands

4. Staff Commands

4.1 Extended Functionality Commands

4.2 Oper-Only commands

5. Changelog


1. Disclaimer


This section outlines a few simple terms that you must agree to if you wish to use Defiance Bot (aka zomg) in your channel.



If you do not agree to one or more of the above terms, please DO NOT invite Defiance Bot (aka zomg) into your chat.


Please do not hesitate to send a PM to vsTerminus if you have any questions.


2. Introduction


2.1 What is Defiance Bot and what can it do?

2.2 How can I get Defiance Bot in my channel?

2.3 How can I control Defiance Bot?

3. The Big List of Commands


The access you have to the bot at any given time is denoted by your status in the channel. When you have voice in a channel (+v, or a speaker in mibbit) you will have access to the voice commands, and everything below (the public commands). Similarly, if you are currently an op (@, or a star in mibbit) you have access to the Op commands and everything below that (Halfop, Voice, and Public).

Certain commands (such as !up) will be based on your permanent access level in the channel, as stored by ChanServ.

3.1 Public Commands

!version

!help

!iam <description of yourself> | undefine

Who is <user>

Who kicked <user>

What is <item>

!up

3.2 Voice Commands

!down

!alias

!whoami

!whois <user>

!lastcommand

!common [user]

!host <user>

!seen <user>

!autobans

!idle <user>

!kickme [reason]

!kickcount [user]

!peak

!listcmd <command | command alias | custom command>

!nowplaying [user]

!ccinfo <Custom Command>

!cclist

!gcinfo <Global Custom Command>

!gclist

!wins [user]

!text [user]

!top3 <wins|nicks|kicks|peak|lines|words|chars|commands|customs>

!uptime

Who is banned

!wordoftheday

!slogan <word or words>

!lastfm <option> [args]

!fml

!wtf [is] <acronym>|<man page entry>

!weather [<Zip Code> | <City> | <Username>]

!locate [<username> | <host> | <domain>]



3.3 Halfop Commands

!kick <user> [reason]

!kickban <user> [time] [reason]

!stfu <user> [duration]

!ban <user> [time]

!unban <user>

!unstfu <user>

!voice <user>

!devoice <user>

!topic <newtopic>

!status <newstatus>

!static <newstatic>

!mute <on|off>

!strip <on|off>

!censor <on|off>

3.4 Op commands

!exempt [user]

!unexempt [user]

!halfop <user>

!dehalfop <user>

!op <user>

!deop <user>

!say <something>

!me <something>

!ask <user> <question>

!tell <user> <statement>

!rr <on|off>

!nn <on|off>

!announce <on|off>

!autobans [time <seconds>|limit <kicks>]

!capsban [on|off|##|##%]

!spamban [on|off|##|r##]

!repeatban [on|off|##]

!floodban [on|off|time <seconds>|lines <lines>]

!spamfilter [on|off|kick|ban|list|add <expression>|del <expression>]

!nickfilter [on|off|list|add <regex>|del <regex>]

!greet [on|off|msg|pm|public|notice|<new greet message>]

3.5 Admin Commands

!mass <command> [args]

!part

!leave

!stay

!modelock [<modes>|off]

!cycle




4. Staff Commands


The staff commands are essentially a superset of the User Commands, made up of existing user commands, overloaded user commands, and unique staff-only commands. In this section I will list any relevant information on the staff commands. If you are staff, you can use the '.' trigger to specify that you want to use the oper version of a command, if it exists. Similarly, addressing the bot by name will default to the oper version of a command if it exists. In both cases, a missing staff version of a command will just default back to the user version, so it is perfectly OK to use the . trigger for everything.

4.1 Extended Functionality Commands

.alias [user]

.add <user> <status>

.up

.kick

.peak [#chan]

.help [user]

.kickban

.stfu

.wordoftheday [status|set <new word>|new]



4.2 Oper-Only commands

.mode <string>

.debug [on|off]

.echo [on|off]

.quit aka .die

.join aka .j <#chan>

.save

.nick <newnick>

.define <item> <description>

.define <user> <description>

.undefine <item>

.undefine user <user>

.stats <v|verbose|users|commands|customs|nicks|defs|text|peak|kicks>

.todo [newitem]

.done <item#>

.addcmd <new command> <target command>

.delcmd <command alias>

.addchan <#channel>

.whisperback [on/off]

.timers add [chan] <repeat(s)> <length> <command> [args]

.disable [<command> [reason]]

.enable <command>

.globalcustom

.award <user> <wins>

.restart




5. Changelog


In this section I will keep a log of changes I make with each version of Defiance Bot so you can see, quickly, what has changed since last time you read this file. Plus I think it's kind of cool to see how long features have been a part of the bot and how much I typically change/add in each revision.


Version 0.8.2 – In Progress

Version 0.8.1 – December 2nd 2009

Version 0.8.0 – October 28th 2009


Version 0.7.4 – September 1st 2009



Version 0.7.3 – July 29th 2009


Version 0.7.2 – July 15th 2009



Version 0.7.1 – May 11th 2009


Version 0.7.0 – April 29th 2009


Version 0.6.9 – April 19th 2009



Version 0.6.8 – April 14th 2009


Version 0.6.7 – April 1st 2009


Version 0.6.6 – March 2nd 2009


Version 0.6.5 – February 27th 2009

Version 0.6.4 – February 23rd 2009


Version 0.6.3 – February 11th 2009


Version 0.6.2 – February 11th 2009

Version 0.6.1 – February 10th 2009

Version 0.6.0 – February 10th 2009 (Initial Release)