TCL Listesi
helper.tcl
trivia.tcl
radyo.tcl
istek.tcl
fjoin.tcl
merlin2.tcl
opme.tcl
trivia.tcl ve merlin2.tcl oyun botu içindir.
Trivia.tcl kullanıyorsanız
yeni.soru dosyasını scripts klasörüne, merlin2.tcl
dosyasını kullanıyorsanız
banka.txt dosyasını scripts klasörüne atmanız
gerekmektedir.
Konuşan Bot TCL'si
CODE
# Begin - Entertainment, Message Auto-Reply.
(ent_areply.tcl)
# Designed & Written by Ninja_baby (Jaysee@Jaysee.Tv),
© October 2000
# This TCL was made following the request of my
friend Imran (ImRaN-- on DALnet) for his bot.
# This was a kewl idea, he ask how can his bots
reply people who sent specific message-
# to the bot or to a channel, without getting
lagged or stuffs. Thanks Imran;) *hugs*
# Well as I said above, this TCL will make your
bot reply people who send message-
# to it or to a channel (which listed in the
variable). And that's the only purpose;p
# but do not worry, the bot will auto-ignore
people if it consider lines of messages-
# as excessive flood.
# Set this as reply channel. The bot will reply
people ONLY in channels listed here. Eventhou-
# the words are same with what you sets below. You
can set channelnames here as many as you-
# wish, but carefull you might make your bot
getting lagged coz it has too many channels to-
# greet for;p
set repchan {
"#sohbet"
}
# Ok fill this one with your words. Let me explain
a little bit about HOW to set this variable.
# The one on the left side of the ":" sign is the
trigger words. And words on the right side-
# of the ":" sign is what your bot will reply
following the left one.
# Example: you set "hi :hello hello". Your bot
will reply "hello hello" to people who said "hi"-
# in channel or to it.
# As my auto-greet does, you might set "%nick"
here as replacement of the real nick the bot-
# will reply to. Example: there's a nick called "TheLamer"
in channel, and you set-
# "hello :hi %nick". Then your bot will reply with
words "hi TheLamer" when TheLamer guy said "hello"-
# in channel or to it.
# set this carefully and you might set this as
many as you wish.;)
set repwords {
"s.a:%nick, aleyküm selam hoş geldin"
"selam:selam hoş geldin %nick.."
"nasılsınız:teşekurler sen nasılsın %nick"
"nasılsın:teşekurler bomba gibiyim sen nasılsın
%nick"
"mrb:%nick: hoş geldin?"
"bye:hoşçakal %nick"
"bye:%nick: yine gelme seni özlemiycez =P"
"lan:%nick: lan kelimesini kullanmayınız
lütfen'"
"selamun aleykum:aleykum selam hoşgeldin %nick"
"catlakFM:efendim %nick"
"bot:%nick: benmi?"
"canım:birtanem"
"askım:canımın içi"
"bebegim:sevgilim"
"sevgilim:seni cok özledim %nick"
"hayatım:bi tanem bi bi bi"
"catlakFM:catlakFM diyen dilini %nick"
"sen:hadicanım sende"
"ordamısın:evet burdayım"
"eee:sustum"
"selamun aleykum:aleykum selam %nick hoş geldin"
}
# Set this as maximum trigger or lines before your
bot consider the line of words as a flood.
# By setting this to "5:10", means if someone sent
more than 5 lines within 10 seconds, the bot-
# will consider this as flood and will auto-ignore
the person without giving any answers.
# So don't set this too low;pp
set maxmsgrep 5:10
# Set this as messages which your bot will send to
a user that just considered flooding.
# Set this as many as you wish, but remember, the
key like %nick, etc. is NOT avalable in this-
# variable. I'm too lazy to convert those key in
this variable, and will only get this script-
# work too hard;pp hehe
set msgfloodm {
"you're performing MSG which considered as FLOOD..."
}
# Set this as your bot auto-ignore time. Set this
one in Minute(s) format.
set msgrepignore 1
# This is for your benefit hehe;), you can either
set your own LOGO here, your logo will appear-
# when the bot notice you, or when it makes msgs/notices/kicks
or scripts loading. So keep smiling-
# and set this variable as you wish;), you can
either set this to "" to leave it blank.
set utlarlg "\[J-C\]:"
######### Please do not edit anything below unless
you know what you are doing;) #########
proc replyuser {nick uhost hand rest} {
global botnick repwords msgcount maxmsgrep
msgfloodm msgrepignore utlarlg
if {[string match "#*" [lindex $rest 0]]} {set
repto [lindex $rest 0]; set rest [lrange $rest 1
end]} else {set repto $nick}
set repperf 0
foreach repwrd $repwords {
set rquestion [lindex [split $repwrd :] 0]
set ranswer [string trim [lrange [split $repwrd
:] 1 end] "{}"]
if {[string match [string tolower $rquestion]* [string
tolower $rest]]} {
regsub -all "%nick" $ranswer "$nick" ranswer
set repperf 1; putquick "PRIVMSG $repto :$ranswer";
return 0
}
}
if {!$repperf && $repto != $nick} {return 0}
set repperf 0; set n [string tolower *!*@[lindex [split
$uhost @] 1]]
if {[info exists msgcount($n)]} {
set msgcount{$n} [incr msgcount($n)]; set
currmsgcount $msgcount($n); set maxmsgreprecv [lindex
[split $maxmsgrep :] 0]
if {$currmsgcount >= $maxmsgreprecv} {
set msgingrep [lindex $msgfloodm [rand [llength
$msgfloodm]]]
foreach msgreptimer [utimers] {if {[string
match "unset msgcount($n)" [lindex $msgreptimer
1]]} {killutimer [lindex $msgreptimer 2]}}
if {$repto == $nick} {putquick "NOTICE $nick :$utlarlg
$msgingrep. Ignored for: $msgrepignore min(s)."}
newignore *!*@[lindex [split $uhost @] 1] $botnick
"MSG flood" $msgrepignore
putlog "$utlarlg MSG flood ($msgcount($n)),
received from $nick. Message replies will be
stopped for $msgrepignore min(s)."; unset msgcount($n);
return 1
} else {
foreach msgreptimer [utimers] {if {[string
match "unset msgcount($n)" [lindex $msgreptimer
1]]} {return 1}}
utimer [lindex [split $maxmsgrep :] 1] "unset
msgcount($n)"
}
} else {set msgcount($n) 1}
}
proc replychan {nick uhost hand chan rest} {
global botnick repchan
foreach targchan $repchan {if {[string match *[string
tolower $targchan]* [string tolower $chan]]} {append
reps "$chan $rest"; replyuser $nick $uhost $hand $reps;
return 0}}
}
bind msgm - * replyuser
bind pubm - * replychan
putlog "*** ${utlarlg} Entertainment,
Entertainment, MSG Auto Reply + Query Flood
Protection. Loaded."
# End of - Entertainment, Message Auto-Reply. (ent_areply.tcl)
Karşılama TCL'si
CODE
proc join_greet {nick uhost handle
channel} {
putserv "NOTICE $nick :Merhaba 12$nick"
putserv "NOTICE $nick :Ben 4ileriturk 5Network
icin ayarlanmis bir robotum!"
putserv "NOTICE $nick :istekte bulunmak icin
4!istek dinlenmis parcalar incin 4!eski"
putserv "NOTICE $nick :radyo durumu icin 4!durum
yazmanız yeterlidir; 4ileriturk hos dakikalar
gecirmenizi diler"
putserv "privmsg $nick :radyoac"
}
bind join - * join_greet
putserv "privmsg $nick :* 2Radyomuzu Dinlemek
Için Aşağıdaki Linki Tıklayınız :4 http://SERVERIP:RADYOPORT/listen.pls
"
putserv "privmsg $nick :* 4 http://SERVERIP:RADYOPORT/listen.pls
"
}
bind join - * join_greet
fjoin.tcl dosyası Conference
room 'da kanala girenleri belirlediğiniz kanallara
ışınlamaya yarar.
koruma.conf ve tcl dosyalarının tamamına www.ilkshell.org/depo/Security.rar
dosyasından ulaşabilirsiniz.
www.ilkshell.org ' a Teşekkürler..