mIRC Scripting - Channel Bot Sample

Josh-Josh- Royal Oak, MI
edited December 2003 in Internet & Media
Finished it not too long ago...pretty good sampler for a starter in mIRC remote scripting.
ctcp *:VERSION:?: {
  ctcpreply $nick VERSION Josh-1.0
}
on *:TEXT:*HELP*:*:{ .notice $nick Need some help? Type `showcommands for a list for commands. }
on 1:TEXT:`showcommands:#:{ .notice $nick Level 1 : showcommands ][ admin ][ credits ][ copyright }
on 1:TEXT:`admin:#:{
  .notice $nick -
  .notice $nick Info : [ Josh- ]
  .notice $nick Access : [ BOT ADMIN ]
  .notice $nick Auto-Op : OFF ][ Protect : OFF ][ Voice : OFF ][ Suspend : OFF
  .notice $nick Masks : *!*@*.try.wideopenwest.com
  .notice $nick -
}
on 1:TEXT:`credits:#:{ .notice $nick This bot was programmed by Josh-, who can be reached in #SUPPORT on IRC.UTCHAT.COM. }
on 1:TEXT:`copyright:#:{ .notice $nick Copyright: (C) 2003-2004 Josh- (joshn@wideopenwest.com). }
on 100:TEXT:`showcommands:#:{
  .notice $nick Level 1 : showcommands ][ admin ][ credits ][ copyright  
  .notice $nick Level 100 : kick ][ voice ][ devoice ][ invite ][ hop ][ dehop
}
on 100:TEXT:`voice *:#: { 
  //mode $chan +v $2 
  //mode $chan +v $nick
}
on 100:TEXT:`kick *:#: { 
  //kick $chan $2 Kicked by $nick
}
on 100:TEXT:`devoice *:#: { 
  //mode $chan -v $2 
  //mode $chan -v $nick
}
on 100:TEXT:`hop *:#: { 
  //mode $chan +h $2
  //mode $chan +h $nick
}
on 100:TEXT:`dehop *:#: { 
  //mode $chan -h $2
  //mode $chan -h $nick
}
on 200:TEXT:`showcommands:#:{
  .notice $nick Level 1 : showcommands ][ admin ][ credits ][ copyright  
  .notice $nick Level 100 : kick ][ voice ][ devoice ][ invite ][ hop ][ dehop
  .notice $nick Level 200 : op ][ deop
}
on 200:TEXT:`op *:#: { 
  //mode $chan +o $2 
  //mode $chan +o $nick
}
on 200:TEXT:`deop *:#: { 
  //mode $chan -o $2 
  //mode $chan -o $nick
}
on 300:TEXT:`showcommands:#:{
  .notice $nick Level 1 : showcommands ][ admin ][ credits ][ copyright  
  .notice $nick Level 100 : kick ][ voice ][ devoice ][ invite ][ hop ][ dehop
  .notice $nick Level 200 : op ][ deop
  .notice $nick Level 300 : say ][ defmodes
}
on 300:TEXT:`say *:#:{ //msg $chan $2- }
on 400:TEXT:`showcommands:#:{
  .notice $nick Level 1 : showcommands ][ admin ][ credits ][ copyright ][ auth 
  .notice $nick Level 100 : kick ][ voice ][ devoice ][ invite ][ hop ][ dehop
  .notice $nick Level 200 : op ][ deop
  .notice $nick Level 300 : say ][ defmodes
  .notice $nick Level 400 : ban ][ unban ][ msg ][ mode
}
on 400:TEXT:`ban *:#: { 
  //kick $chan $2 Kicked by $nick
  //mode $chan +b $2
}
on 400:TEXT:`unban *:#: {
  //mode $chan -b $2
}
on 400:TEXT:`msg *:#: {
  //msg $2 $3-
}
on 500:TEXT:`showcommands:#:{
  .notice $nick Level 1 : showcommands ][ admin ][ credits ][ copyright ][ auth 
  .notice $nick Level 100 : kick ][ voice ][ devoice ][ invite ][ hop ][ dehop
  .notice $nick Level 200 : op ][ deop
  .notice $nick Level 300 : say ][ defmodes
  .notice $nick Level 400 : ban ][ unban ][ msg ][ mode
  .notice $nick Level 500 : quit ][ join ][ leave
}
on 500:TEXT:`join *:#: {
  //join $2
}
on 500:TEXT:`leave *:#: {
  //leave $2
}
on 500:TEXT:`quit:#:{ quit Bye $chan ! ( $+ $1- $+ ) }
on 500:TEXT:`sban *:#: { 
  //kick $chan $2 $3
  //mode $chan +b $2
}
on *:TEXT:`mod on:*:if ( $nick == Josh- ) //mode $chan +m
on *:TEXT:`mod off:*:if ( $nick == Josh- ) //mode $chan -m
on *:TEXT:AUTH *:?:{
  if ( $2 == YOURPASSWORDHERE ) { 
    .msg $nick Login sucessful.
    .guser 500 $nick 3
  }
  else { .msg $nick Login incorrect. }
}
on *:TEXT:`AUTH:#:{
.notice $nick Correct usage: /msg $me AUTH password }
on 100:TEXT:`defmodes *:#: { 
  //mode $chan -i
  //mode $chan -m
  //mode $chan -s
  //mode $chan -l
  //mode $chan +n
  //mode $chan +r
  //mode $chan +t
}
- Josh

Timers to use:
/timer 0 30 /mode #YOURCHANNEL +l $calc($nick(#,0)+5)

Comments

  • Josh-Josh- Royal Oak, MI
    edited December 2003
    Flood protection
    //mode $chan +f 5:2 ;5 lines in 2 seconds
    
  • Josh-Josh- Royal Oak, MI
    edited December 2003
    Note: may be some extra **** in there, its the copy of the ini I have loaded (been making lots of changes)
Sign In or Register to comment.