• Home
  • Servers
  • Chat
  • Channels
  • Commands
  • Forum
  • FAQ
  • Software
  • Quotes
Topic Options
Rate This Topic
#5213 - 06/17/09 08:01 PM Pandoras Talking Bot
FordLawnmower Offline
Over 100 posts

Registered: 02/15/09
Posts: 111
Loc: Ohio
This is a talking bot script similar to the tcl one, with a few more features.
To activate the script in a channel, just right click the channel window and select a botname from the Pandoras list.

Once the script is turned on the bot is activated by calling it's NickName(IRC Name).
Saying the bots nickname will place the bots focus on you. It will always be talking to the last person who said it's name.

To make the bot stop talking, any Op or the person who said the bots name last, can just type shutup. All one word (shutup)!
Also. Anyone can type the bots name followed by shutup and it will turn off.

To deactivate the bot just right click the channel window and select Off.

You can use different bots in different channels.
I scripted this for multi-channel/multi-network use, so you have separate controls for every channel.
Code:
;Pandora's talking Bot Script by Ford_Lawnmower -- irc.mindforge.org #USA-Chat
On *:Text:*:#: {
  if ($hget(Pandora,$+($network,$chan))) {
    var %text $strip($1-)
    if ($me isin %text) { hadd Pandora $+($network,$chan) $puttok($hget(Pandora,$+($network,$chan)),$wildsite,6,32) }
    if (shutup isin %text) && ($nick isop $chan || $gettok($hget(Pandora,$+($network,$chan)),6,32) == $wildsite) {
      .msg $chan I will not be silenced forever :P
      hadd Pandora $+($network,$chan) $puttok($hget(Pandora,$+($network,$chan)),0,6,32)
      return
    }
    if ($gettok($hget(Pandora,$+($network,$chan)),6,32) == $wildsite) {
      var %sockname $+(pandora,$nick,$ticks)
      sockopen %sockname $gettok($hget(Pandora,$+($network,$chan)),1,32) 80
      sockmark %sockname $chan $fixurl($wildsite) $fixurl($replace(%text,$me,$gettok($hget(Pandora,$+($network,$chan)),5,32))) $hget(Pandora,$+($network,$chan))
    }
  }
}
On *:Action:$(* $+ $me $+ *):#: {
  if ($nick !isreg $chan) {
    var %sockname $+(pandora,$nick,$ticks)
    sockopen %sockname $gettok($hget(Pandora,$+($network,$chan)),1,32) 80
    sockmark %sockname $chan $fixurl($wildsite) $fixurl($replace($strip($1-),$me,$gettok($hget(Pandora,$+($network,$chan)),5,32))) $hget(Pandora,$+($network,$chan))
  }
}
On *:Sockopen:Pandora*: {
  tokenize 32 $sock($sockname).mark
  var %post $+(&botcust2=,$2,$iif($gettok($hget(Pandora,$+($network,$chan)),7,32),&message=,&input=),$3)
  .sockwrite -n $sockname POST $5 HTTP/1.1
  .sockwrite -n $sockname User-Agent: Opera 9.6
  .sockwrite -n $sockname Host: $4
  .sockwrite -n $sockname Content-Type: application/x-www-form-urlencoded
  .sockwrite -n $sockname Content-Length: $calc($len(%post) + 1)
  .sockwrite -n $sockname $crlf %post
}
On *:Sockread:Pandora*: {
  if ($sockerr) { echo -at >sockerror Pandora< }
  else {
    var %pandora | sockread %pandora
    if ($between(%pandora,$gettok($sock($sockname).mark,6,32),$gettok($sock($sockname).mark,7,32),1)) {
      var %ifmatch $ifmatch
      if (%ifmatch != I will pass it along to my botmaster.) {
        .timer $+ $+(PD,$network,$gettok($sock($sockname).mark,1,32)) 1 2 .msg $httpstrip($gettok($sock($sockname).mark,1,32) $remove(%ifmatch,www dot pandorabots dot com pandora talk botid,$&
          I will pass it along to my botmaster.,demo vhost pandorabots dot com pandora talk botid))
        sockclose $sockname
      }
    }
  }
}
On *:Start: {
  hmake Pandora
  if ($exists(Pandora.hsh)) { hload Pandora Pandora.hsh }
}
On *:Exit: {
  if ($hget(Pandora)) { 
    hsave Pandora Pandora.hsh
    hfree Pandora 
  }
}
alias -l fixurl return $regsubex($1-,/([^a-z0-9])/ig,% $+ $base($asc(\t),10,16,2))
alias -l httpstrip {
  var %x, %i = $regsub($1-,/(^[^<]*>|<[^>]*>|<[^>]*$)/g,$null,%x), %x = $remove(%x,&nbsp;)
  return %x
}
;alias by Gummo
alias -l between { 
  noop $regex($1,/\Q $+ $2 $+ \E(.*?)\Q $+ $3 $+ \E/gi)
  return $regml($iif($gettok($hget(Pandora,$+($network,$gettok($sock($sockname).mark,1,32))),8,32),1,$regml(0))) 
}
menu channel {
  $iif($hget(Pandora,$+($network,$chan)),$style(1)) Pandora
  .$iif($gettok($hget(Pandora,$+($network,$chan)),5,32) == Alice,$style(1)) Alice: {
    hadd -m Pandora $+($network,$chan) www.pandorabots.com /pandora/talk?botid=f5d922d97e345aa1&skin=custom_input ALICE:<em> </em> Alice 0
  } 
  .$iif($gettok($hget(Pandora,$+($network,$chan)),5,32) == God,$style(1)) God: {
    hadd -m Pandora $+($network,$chan) www.pandorabots.com /pandora/talk?botid=b21f0d757e36f385 God:<em> </em> God 0
  }
  .$iif($gettok($hget(Pandora,$+($network,$chan)),5,32) == Laurie,$style(1)) Laurie: {
    hadd -m Pandora $+($network,$chan) demo.vhost.pandorabots.com /pandora/talk?botid=b800da72be34d5d9 says: </b> Laurie 0
  }
  .$iif($gettok($hget(Pandora,$+($network,$chan)),5,32) == Chabba,$style(1)) Chabba(German): {
    hadd -m Pandora $+($network,$chan) www.pandorabots.com /pandora/talk?botid=9e129a956e3548fd > </font> Chabba 0
  }
  .$iif($gettok($hget(Pandora,$+($network,$chan)),5,32) == Nickie,$style(1)) Nickie(Adult): {
    hadd -m Pandora $+($network,$chan) demo.vhost.pandorabots.com /pandora/talk?botid=d179a7ed2e35eaed <I><b> </b></I> Nickie 0
  }
  .$iif($gettok($hget(Pandora,$+($network,$chan)),5,32) == Ronin,$style(1)) Ronin: {
    hadd -m Pandora $+($network,$chan) www.pandorabots.com /pandora/talk?botid=d3012a1f2e377a96 > </font> Ronin 0
  }
  .$iif($gettok($hget(Pandora,$+($network,$chan)),5,32) == Wraith,$style(1)) Wraith: {
    hadd -m Pandora $+($network,$chan) www.pandorabots.com /pandora/talk?botid=e2ee8c6c9e377a87 > </font> Wraith 0
  }
  .$iif($gettok($hget(Pandora,$+($network,$chan)),5,32) == Dawnstar,$style(1)) Dawnstar: {
    hadd -m Pandora $+($network,$chan) rj.vhost.pandorabots.com /pandora/talk?botid=c1776ae8ce354d1f 2"> </font> Dawnstar 0
  }
  .$iif($gettok($hget(Pandora,$+($network,$chan)),5,32) == AFRObot,$style(1)) AFRObot(Rude): {
    hadd -m Pandora $+($network,$chan) www.pandorabots.com /pandora/talk?botid=9d3dc63c7e34956d purple"> </font> AFRObot 0
  } 
  .$iif($gettok($hget(Pandora,$+($network,$chan)),5,32) == Spambot,$style(1)) Spambot(Rude): {
    hadd -m Pandora $+($network,$chan) www.pandorabots.com /pandora/talk?botid=d3b8db41ee36d42d <b> </b> Spambot 0 &message=
  }   
  .$iif($gettok($hget(Pandora,$+($network,$chan)),5,32) == Smoshinator,$style(1)) Smoshinator(Rude): {
    hadd -m Pandora $+($network,$chan) demo.vhost.pandorabots.com /pandora/talk?botid=b4db4c279e3420eb <b> </b> Smoshinator 0
  }  
  .$iif($gettok($hget(Pandora,$+($network,$chan)),5,32) == Zog,$style(1)) Zog: {
    hadd -m Pandora $+($network,$chan) www.pandorabots.com /pandora/talk?botid=c1baddb74e35ebd0 <I><b> </b></I> Zog 0
  }  
  .$iif($gettok($hget(Pandora,$+($network,$chan)),5,32) == Incognita,$style(1)) Incognita: {
    hadd -m Pandora $+($network,$chan) elizabeth.vhost.pandorabots.com /pandora/talk?botid=f7634aec7e3652ed Incognita:</b> <br> Incognita 0 &message= 1
  }  
  .$iif($gettok($hget(Pandora,$+($network,$chan)),5,32) == Grandma_Elaine,$style(1)) Grandma Elaine: {
    hadd -m Pandora $+($network,$chan) www.pandorabots.com /pandora/talk?botid=8f02c14a0e34bbe4 0000A0"><big><big> </big></big> Grandma_Elaine
  } 
  .$iif($gettok($hget(Pandora,$+($network,$chan)),5,32) == Eliza,$style(1)) Eliza(German): {
    hadd -m Pandora $+($network,$chan) demo.vhost.pandorabots.com /pandora/talk?botid=e4fc10b06e3632ef typing"> < Eliza 0 &message=
  }  
  .$iif($gettok($hget(Pandora,$+($network,$chan)),5,32) == Gabi,$style(1)) Gabi(German-Adault): {
    hadd -m Pandora $+($network,$chan) www.pandorabots.com /pandora/talk?botid=bd81f97c0e354f35 green"> </font> Gabi 0
  }  
  .$iif($gettok($hget(Pandora,$+($network,$chan)),5,32) == Hector_van_Daemon,$style(1)) Hector van Daemon: {
    hadd -m Pandora $+($network,$chan) www.pandorabots.com /pandora/talk?botid=be43a1422e36ad7b Daemon:</b> <br> Hector_van_Daemon 0 &message 1
  }  
  .$iif($gettok($hget(Pandora,$+($network,$chan)),5,32) == Dr_Duck,$style(1)) Dr. Duck: {
    hadd -m Pandora $+($network,$chan) demo.vhost.pandorabots.com /pandora/talk?botid=f3b9b50cbe344c44 blue"> </font> Dr_Duck 0
  }  
  .$iif($gettok($hget(Pandora,$+($network,$chan)),5,32) == Mathilde,$style(1)) Mathilde(French): {
    hadd -m Pandora $+($network,$chan) www.pandorabots.com /pandora/talk?botid=eff729829e36e89c mathilde:</b> <br> Mathilde 0 &message = 1
  }    
  .$iif($gettok($hget(Pandora,$+($network,$chan)),5,32) == Sara,$style(1)) Sara(Spainish): {
    hadd -m Pandora $+($network,$chan) codony.vhost.pandorabots.com /pandora/talk?botid=e71c0d43fe35093a&skin=input_sara Sara:</b> <script Sara 0 &message=
  }    
  .$iif($gettok($hget(Pandora,$+($network,$chan)),5,32) == Lilith,$style(1)) Lilith: {
    hadd -m Pandora $+($network,$chan) www.pandorabots.com /pandora/talk?botid=b9b96b247e34f4f2 Lilith</b>: <br> Lilith 0 &message=
  }    
  .$iif(!$hget(Pandora,$+($network,$chan)),$style(2)) Off:hdel Pandora $+($network,$chan)
}
_________________________
If you already know everything, You can never learn anything :P

Top
Sponsored Links
Sponsored Links
Member
*****

Registered: 27/08/04
Posts: 10136
Loc: Mountain View, CA
Top


Moderator:  Jeff, mandy, usrbingeek