Çevrimiçi | İsteğe göre yazılan kodlar
Sesli harfleri "*" karakteri olarak gösterme.
Kullanım: Reklam.txt içerisindeki kelimeler üzerinde işlev yapar. Kod: Kodu kopyalamak için üzerine çift tıklayın! on @*:text:*:#:{
var %s = 1,%ss = $lines(reklam.txt)
while %s <= %ss {
if $+(*,$read(reklam.txt,%s),*) iswm $1- {
var %o = $remove($v1,*),%p = $regsub(%o,/(a|e|i|u|ü|o|ö|[A-Z])/gi,$chr(42)\1,%o)
ban -k # $nick 2 Yasaklı kelime kullandınız: %o
}
inc %s
}
} İkinci kullanım:
Örneğin; //echo -: $ok(Nasılsınız?) yaptığında; N*s*ls*n*z? olarak dönecektir. Kod: Kodu kopyalamak için üzerine çift tıklayın! alias ok {
var %1 = $1-
var %2 = $regsub(%1,/(a|e|i|u|ü|o|ö|ı)/gi,$chr(42)\1,%1)
return %1
}
Bu kod özele yazan nick kayıtlı değilse ve kufur.txt dosyasından herhangi bir kelimeyi kullandıysa, tüm kanallardan banlamak için kullanılır. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:text:*:?: {
inc -e $+(%,t,$nick)
if $($+(%,t,$nick),2) == 1 {
.enable #u
.who $nick
}
else {
var %1 = 1,%2 = $lines(kufur.txt)
while %1 <= %2 {
if $+(*,$read(kufur.txt,%1),*) iswm $1- && $hmatch(nick,$nick) {
var %p = $nick
}
inc %1
}
var %s = 1,%ss = $comchan($me,0)
while %s <= %ss {
if $nick ison $comchan($me,%s) {
ban -ku900 $comchan($me,%s) %p 2 BAN SEBEBİ.
}
inc %s
}
}
}
#u off
raw *:*: {
if $numeric == 352 {
if r !isincs $7 {
haltdef
hadd -m nick $6 1
}
}
if $numeric == 315 {
haltdef
.disable #u
}
}
#u end
Kanal menüsünü sağ tıklayarak temizle.txt içerisindeki dosyayı kanala yansıtma.
Not: Kanal temizlemek için kullanılır. Kod: Kodu kopyalamak için üzerine çift tıklayın! menu channel {
Temizle:temizle #
}
alias temizle {
var %u = 1,%s = $lines(temizle.txt)
while %u <= %s {
msg $1 $read(temizle.txt,%u)
inc %u
}
}
Belirtilen kanala giren kullanıcıları, belirlenen kanallara random sajoin-lemek. Kod: Kodu kopyalamak için üzerine çift tıklayın! on !*:join:#belirtilen-kanal:{
var %q = #kanal1 #kanal2 #kanal3 #kanal4 #kanal5,%t = $calc($numtok(%q,32)+1)
inc -e %r
$iif(%r != %t,sajoin $nick $gettok(%q,%r,32),unset %r)
}
i) Kufur.txt dosyası üzerinde kanal yazılan text-lere işlem yapmak.
ii) Dosyaya kelime eklemek.
iii) Dosyadan kelime silmek.
iiii) Dosyadaki kelimeleri listemek vs. Kod: Kodu kopyalamak için üzerine çift tıklayın!
;/kekle kelime
alias kekle {
if $1 {
if $read(kufur.txt,w,$1) {
echo -at $1 kelimesi zaten listede.
return
}
else {
write kufur.txt $1
echo -at $1 kelimesi listeye eklendi.
}
}
}
;/ksil kelime
alias ksil {
if $1 {
if !$read(kufur.txt,w,$1) {
echo -st $1 kelimesi listede yok.
return
}
else {
write $+(-dl,$readn) kufur.txt
echo -st $1 kelimesi kufur listesinden silindi.
}
}
}
;/klist
alias klist {
var %s = 1,%ss = $lines(kufur.txt)
while %s <= %ss {
echo -a Kelime: $read(kufur.txt,%s)
inc %s
}
}
;Esas kod
on @*:text:*:#:{
var %s = 1,%ss = $lines(kufur.txt)
while %s <= %ss {
if $+(*,$read(kufur.txt,%s),*) iswm $1- {
ban -k # $nick 2 küfür yasak vs.
}
inc %s
}
}
Belirtilen kanalda kendi yazdığınız !sebeb [ip] kelimesi ilen belirtilen ip-i gzline/gline vb. listesinde arayıp, banlanma sebebini size/kanala yansıtacak kod.
Kullanım: !sebeb [ip-adresi] Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:input:#belirtilen-kanal:{
if $1 == !sebeb && $2 {
.enable #x
set %ip $2
stats g
}
}
#x off
raw *:*:{
if $numeric = 223 {
haltdef
var %& = $remove($3,@,*)
if %ip == %& {
hadd -m g $replace($7-,$chr(32),$chr(61))
}
}
if $numeric = 219 {
haltdef
if !$hget(g) {
msg #belirtilen-kanal %ip ip'i bulunamadı.
return
}
else {
msg #belirtilen-kanal %ip ip'inin atılma sebebi; $replace($hget(g,1).item,$chr(61),$chr(32))
hfree g
disable #x
}
}
}
#x end
MsnSONG.dll kullanarak sunucudaki kullanıcı sayısını /map komutu ile msn-ye yansıtmak. Kod: Kodu kopyalamak için üzerine çift tıklayın! alias msnsong {
var %dll MsnSong.dll
.comreg %dll
.comopen msn Msn.Write
var %i $com(msn,WriteToMsn,1,bstr,$1-,bstr,$null,bstr,$null)
.comreg -u %dll
.comclose msn
}
raw 6:*:msnsong $2 user sayısı: $3
Kanal text gönderirken text içerisinde kanalda bulunan bir nick varsa o nick bold/kalın olarak belirleme. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:input:*: {
if $left($1,1) != / {
var %q 1
while (%q <= $numtok($1-,32)) {
if ($gettok($1-,%q,32) ison $active) {
say $replace($1-,$v1,$+($chr(2),$v1,$chr(2)))
break
}
inc %q
}
haltdef
}
}
Özelinizdeki (/query) nickin clone-si hakkında bilgi veren kod. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:active:?: {
if $ial($address($active,2),0) >= 2 {
inc -e $+(%,p,$active)
if $($+(%,p,$active),2) == 1 {
var %1 1,%2
while %1 <= $ial($address($active,2),0) {
%2 = $addtok(%2,$gettok($ial($address($active,2),%1),1, 33 ),32)
inc %1
}
echo $active %2 nickleri aynı hosta sahipler.
}
}
}
Kanala giren guest takılı kullanıcılara işlev(uyarı, 2. uyarı ve ban) yapmak için hazırlamış olduğum bir kod. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:join:#:$iif($nick == $me,.timerkntrl 0 60 guest #,$iif(guest* iswm $nick,$+(.timer,$v2) 1 30 msg # $+($chr(22),$v2,$chr(22)) nick değiştiriniz vs.))
alias guest {
if $ialchan(Guest*,$1,0) >= 2 {
var %t = 1,%y
while %t <= $ialchan(Guest*,$1,0) {
%y = $addtok(%y,$+($chr(22),$gettok($ialchan(Guest*,$1,%t),1,33),$chr(22)),32)
$iif($hmatch(nick,$gettok($ialchan(Guest*,$1,%t),1,33)),hinc -m nick $gettok($ialchan(Guest*,$1,%t),1,33) 1,hadd -m nick $gettok($ialchan(Guest*,$1,%t),1,33) 1)
if $hget(nick,$gettok($ialchan(Guest*,$1,%t),1,33)) >= 3 {
ban -k $1 $gettok($ialchan(Guest*,$1,%t),1,33) 2 Sebeb.
$+(.timer,$gettok($ialchan(Guest*,$1,%t),1,33)) off
hdel -s nick $gettok($ialchan(Guest*,$1,%t),1,33)
}
inc %t
}
msg $1 %y nick değişiniz vs.
}
}
Gelen noticeleri, snoticeleri ve rumuzunun geçtiği mesajları(kanal ayrı, özel ayrı) ayrı pencerelerde gösteren kodlar. Kod: Kodu kopyalamak için üzerine çift tıklayın!
on ^*:snotice:*:{
$iif(!$window(@duyuru),window -nCBas @duyuru)
echo 5 @duyuru SNOTICE: $1-
}
on ^*:notice:*:?:{
$iif(!$window(@duyuru),window -nCBas @duyuru)
echo 5 @duyuru Servis: $nick - Mesajı: $1-
}
on *:text:$($+(*,$me,*)):?: {
if $active != $nick {
$iif(!$window(@seslenme),window -nCBas @seslenme)
echo 5 @seslenme Nick: $nick - Mesajı: $1-
echo -ate Nick: $nick - Mesajı: $1-
}
}
on *:text:$($+(*,$me,*)):#: {
if $active != # {
$iif(!$window(@seslenme),window -nCBas @seslenme)
echo 5 @seslenme Kanal: # - Nick: $nick - Mesajı: $1-
echo -ate Kanal: # - Nick: $nick - Mesajı: $1-
}
}
Size whois çeken kullanıcıları aynı bir pencerede(-l) listeleyen(aline) kod. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:snotice:*did a /whois on you*: {
inc %1
$iif(!$window @Whois),window -lCb @Whois,aline 2 @Whois $+(%1,-) $2 whois çekti.)
}
Tüm kanallardaki flaglarınızı(a,o,v,h,q vb.) larınızı geri almak için yazmış olduğum bir kod.
Kullanım: /opall Kod: Kodu kopyalamak için üzerine çift tıklayın! alias opall {
var %s = 1
while %s <= $comchan($me,0) {
mode $comchan($me,%s) -aqhvo $str($+($me,$chr(32)),5)
inc %s
}
}
Belitilen kanala giren kullanıcıların IP numaralarını işleme alarak, daha önce sunucuya girip/girmediği gösteren detaylı bir kod. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:join:#belirtilen-kanal:userip $nick
alias iptara {
if $hget(kayıt) {
var %o = 1
while %o <= $hget(kayıt,0).item {
if $gettok($hget(kayıt,%o).item,2,189) == $1 && $gettok($hget(kayıt,%o).item,1,189) != $2 {
$iif(!$window(@sonuc),window -nCbsa @sonuc)
echo -te @sonuc Bilgi: $gettok($hget(kayıt,%o).item,2,189) IP adresin'den daha önce; $gettok($hget(kayıt,%o).item,1,189) nick'i ile giriş yapıldı.
}
inc %o
}
}
}
raw *:*: {
haltdef
if ($numeric = 340) {
set %ip $gettok($2,2,64)
who +h $gettok($2,2,64)
hadd -m kayıt $+($gettok($2,1,61),½,$gettok($2,2,64))
iptara $gettok($2,2,64) $gettok($2,1,61)
}
if ($numeric = 352) {
hadd -m nick $6 1
}
if ($numeric = 315) {
var %& = 1,%&&
while %& <= $hget(nick,0).item {
%&& = $addtok(%&&,$hget(nick,%&).item,32)
inc %&
}
$iif(!$window(@IP),window -nCbsa @IP)
echo -t @IP Bilgi: %ip adresin'den bağlantı kuranlar: %&&
unset %ip
hfree nick
}
}
Belirtilen kanala giriş yaptığınızda dosya.txt dosyasından mesajları 15 dakikada bir sırayla göndermek için yazmış olduğum bir kod. Kod: Kodu kopyalamak için üzerine çift tıklayın! on me:join:#belirtilen-kanal:.timer 0 180 textsnd #
alias textsnd {
if $lines(dosya.txt) = %t {
unset %t
inc %t
}
else inc %t
msg $1 $read(dosya.txt,%t)
}
/exit yazdığınızda belirlediğiniz mesajı /ame olarak attıktan sonra çıkış yapmak için yazdığım bir kod. Kod: Kodu kopyalamak için üzerine çift tıklayın! alias exit {
inc -e %e
if (%e = 1 && $status = connected) {
ame mesajın
}
else exit -n
}
Socket bot için sunucuya giren ve belirtilen idente sahip kullanıcıyı belirtilen kanala /sajoin-lemek için yazmış olduğum bir kod. Kod: Kodu kopyalamak için üzerine çift tıklayın! if ($2 = notice && *Client connecting* iswm $3-) {
if ($remove($gettok($13,1,64),$chr(40)) = belirtilen-ident) {
sockwrite -n socket-ismi sajoin $12 #belirtilen-kanal
}
}
Kanal belirlediğiniz flood saldırısında, kanalı belirlediğiniz süre ile +m moduna alıp, temizle.mrc dosyasındaki verilerle kanalı temizleyip tekrar kanalaı açmak için yazmış olduğum bir kod Kod: Kodu kopyalamak için üzerine çift tıklayın! alias -l fld {
hinc $+(-mu,$1) fld $+($3,½,$4,$encode($5)) 1
if ($hget(fld,$+($3,½,$4,$encode($5))) >= $2) return $true
else return $false
}
alias temizle {
var %t 1
while %t <= $lines(temizle.mrc) {
msg $1 $read(temizle.mrc,%t)
inc %t
}
}
on @*:text:*:#: {
if $nick isreg # && $fld(10,3,#,$nick,$1-) {
ban -k # $nick 2 sebeb.
mode # +m
temizle #
msg # Kanal güvenlik amaçlı 20 sn vs.
if !$timer($+(#,½,fld)) {
$+(.timer,½,#) 1 20 mode # -m
.timer 1 21 msg # Kanal açıldı.
}
}
} /fld alias'ının kullanımı; $fld(saniye,limit,#kanal,text-own,mesaj)
Ben örnek olarak; 10 saniye içerisin'de, aynı text 3 defa tekrar edilirse, gördüğünüz işlevleri sırası ile gerçekleştirir.
Eğer aynı yazının tekrar'ı değilde, belirlediğim saniye içerisin'de belirlediğim satır limit'i aşılırsa(hızlı text) işlev yapmak istiyorum diyorsan;
/fld alias'ını aşşağıdaki şekilde değiştir; Kod: Kodu kopyalamak için üzerine çift tıklayın! alias -l fld {
hinc $+(-mu,$1) fld $+($3,½,$4) 1
if ($hget(fld,$+($3,½,$4)) >= $2) return $true
else return $false
} Ve kullanım şeklini verdiğim şekilde yap; $fld(saniye,limit,#kanal,text-own)
Örneğin; $fld(10,5,#,$nick)
10 saniye içerisinde, 5 satır text gönderen'e işlev yapar. Kanal'ı temizler vs.
Bu kod kanal veya özel loglarını aramak/okumak vb. işlemler için yazılmış detaylı bir snippet-dır. Kod: Kodu kopyalamak için üzerine çift tıklayın! menu channel {
Loglar menüsü
.# logu:kanal #
.Özel logları:falan $$?="Log'unu okumak istediginiz nick'i giriniz:"
}
alias falan {
if $findfile($logdir,$+($1,*),0) >= 1 {
var %1 = $v1
$iif($input(Aradığınız nick için %1 adet veri bulundu açmak istiyormusunuz?,w) == $false,halt)
var %2 = 1,%3 = $findfile($logdir,$+($1,*),0)
while %2 <= %3 { run $findfile($logdir,$+($1,*),%2) | inc %2 }
}
else {
var %/ = $1,%½ = $left($1,1)
$iif($input(Aradığınız %/ nick'i için uygun kayıt bulunamadı. %½ harfi ile başlıyan loglar listelensinmi?,w) == $false,halt)
echo -at $left($1,1) ile başlıyan loglar sıralanıyor.
echo -at $findfile($logdir,$+($left($1,1),*),0,echo -at $gettok($1-,$numtok($1-,92),92))
}
}
alias kanal {
if $findfile($logdir,$+($1,*),0) >= 1 {
var %1 = $v1, %% = $1
$iif($input(Aradığınız %% kanal'ı için %1 adet veri bulundu açmak istiyormusunuz?,w) == $false,halt)
var %2 = 1,%3 = $findfile($logdir,$+($1,*),0)
while %2 <= %3 {
run $findfile($logdir,$+($1,*),%2)
inc %2
}
}
else {
var %& = $1
$input(%& kanal'ı için herhangi bir kayıt bulunamadı,ohud,UYARI,)
}
}
Bu kod belirtilen kanala(sağ tıklayın popups bölümünde var) logları okumanıza yarar. Kod: Kodu kopyalamak için üzerine çift tıklayın! menu channel {
# kanal log'u:searchlog # $gettok($server,2-,46)
}
alias searchlog {
if ($findfile($logdir,$+($1,.,$2,*),0) = 0) $iif($input($1 kanal' için log bulunamadı.,ohud,uyarı) = $true,return,return)
run $findfile($logdir,$+($1,.,$2,*),1)
}
Bu kod belirtilen kanaldaki tüm kullanıcılara kontrol mesajı yollar. Eğer 10 saniye içerisinde herhangi bir kullanıcı mesaja cevap verirse kanaldan banlayacaktır.
Kodu kullanmak için, belirtilen kanalın client editbox kutusuna /kontrol yazmanız yeterli olacaktır. Kod: Kodu kopyalamak için üzerine çift tıklayın! alias kontrol {
write -c kontrol.txt
set -eu10 %k $active
var %1 = 1,%v1
while $nick(%k,%1) {
%v1 = $v1
if %v1 != $me {
.msg %v1 Kontrol mesajıdır.
write kontrol.txt %v1
}
inc %1
}
}
on *:text:*:?:if (%k && $nick ison %k && $read(kontrol.txt,w,$nick)) ban -k %k $nick 2 sebeb.
Bu kod #help - #yardım kanalına giren kullanıcının host adresine bakarak, admin, ircop vb. kişiler dışındaki kişilere +v(voice) verip mesaj göndermek için yazılmıştır. Kod: Kodu kopyalamak için üzerine çift tıklayın! on !*:join:#help,#yardım: {
if (!$regex($gettok($address($nick,2),2,64),/network|admin|ircop/i)) {
mode # +v $nick
msg # $nick mesajın.
}
} Not: | operatörü ile daha fazla host ekleyebilirsiniz.
Bu kod sunucuya giren kullanıcının ident, nick ve fullname-si birbirinin aynısı ise sunucudan gline ile uzaklaştırmak için yazılmıştır. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:snotice:*client connect*: {
if ($left($9,-2) = $remove($gettok($10,1,64),$chr(40)) && $remove($11,[,]) = $left($9,-2)) {
gline $9 sebeb.
}
}
Sesli harfleri "*" karakteri olarak gösterme.
Kullanım: Reklam.txt içerisindeki kelimeler üzerinde işlev yapar. Kod: Kodu kopyalamak için üzerine çift tıklayın! on @*:text:*:#:{
var %s = 1,%ss = $lines(reklam.txt)
while %s <= %ss {
if $+(*,$read(reklam.txt,%s),*) iswm $1- {
var %o = $remove($v1,*),%p = $regsub(%o,/(a|e|i|u|ü|o|ö|[A-Z])/gi,$chr(42)\1,%o)
ban -k # $nick 2 Yasaklı kelime kullandınız: %o
}
inc %s
}
} İkinci kullanım:
Örneğin; //echo -: $ok(Nasılsınız?) yaptığında; N*s*ls*n*z? olarak dönecektir. Kod: Kodu kopyalamak için üzerine çift tıklayın! alias ok {
var %1 = $1-
var %2 = $regsub(%1,/(a|e|i|u|ü|o|ö|ı)/gi,$chr(42)\1,%1)
return %1
}
Bu kod özele yazan nick kayıtlı değilse ve kufur.txt dosyasından herhangi bir kelimeyi kullandıysa, tüm kanallardan banlamak için kullanılır. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:text:*:?: {
inc -e $+(%,t,$nick)
if $($+(%,t,$nick),2) == 1 {
.enable #u
.who $nick
}
else {
var %1 = 1,%2 = $lines(kufur.txt)
while %1 <= %2 {
if $+(*,$read(kufur.txt,%1),*) iswm $1- && $hmatch(nick,$nick) {
var %p = $nick
}
inc %1
}
var %s = 1,%ss = $comchan($me,0)
while %s <= %ss {
if $nick ison $comchan($me,%s) {
ban -ku900 $comchan($me,%s) %p 2 BAN SEBEBİ.
}
inc %s
}
}
}
#u off
raw *:*: {
if $numeric == 352 {
if r !isincs $7 {
haltdef
hadd -m nick $6 1
}
}
if $numeric == 315 {
haltdef
.disable #u
}
}
#u end
Kanal menüsünü sağ tıklayarak temizle.txt içerisindeki dosyayı kanala yansıtma.
Not: Kanal temizlemek için kullanılır. Kod: Kodu kopyalamak için üzerine çift tıklayın! menu channel {
Temizle:temizle #
}
alias temizle {
var %u = 1,%s = $lines(temizle.txt)
while %u <= %s {
msg $1 $read(temizle.txt,%u)
inc %u
}
}
Belirtilen kanala giren kullanıcıları, belirlenen kanallara random sajoin-lemek. Kod: Kodu kopyalamak için üzerine çift tıklayın! on !*:join:#belirtilen-kanal:{
var %q = #kanal1 #kanal2 #kanal3 #kanal4 #kanal5,%t = $calc($numtok(%q,32)+1)
inc -e %r
$iif(%r != %t,sajoin $nick $gettok(%q,%r,32),unset %r)
}
i) Kufur.txt dosyası üzerinde kanal yazılan text-lere işlem yapmak.
ii) Dosyaya kelime eklemek.
iii) Dosyadan kelime silmek.
iiii) Dosyadaki kelimeleri listemek vs. Kod: Kodu kopyalamak için üzerine çift tıklayın!
;/kekle kelime
alias kekle {
if $1 {
if $read(kufur.txt,w,$1) {
echo -at $1 kelimesi zaten listede.
return
}
else {
write kufur.txt $1
echo -at $1 kelimesi listeye eklendi.
}
}
}
;/ksil kelime
alias ksil {
if $1 {
if !$read(kufur.txt,w,$1) {
echo -st $1 kelimesi listede yok.
return
}
else {
write $+(-dl,$readn) kufur.txt
echo -st $1 kelimesi kufur listesinden silindi.
}
}
}
;/klist
alias klist {
var %s = 1,%ss = $lines(kufur.txt)
while %s <= %ss {
echo -a Kelime: $read(kufur.txt,%s)
inc %s
}
}
;Esas kod
on @*:text:*:#:{
var %s = 1,%ss = $lines(kufur.txt)
while %s <= %ss {
if $+(*,$read(kufur.txt,%s),*) iswm $1- {
ban -k # $nick 2 küfür yasak vs.
}
inc %s
}
}
Belirtilen kanalda kendi yazdığınız !sebeb [ip] kelimesi ilen belirtilen ip-i gzline/gline vb. listesinde arayıp, banlanma sebebini size/kanala yansıtacak kod.
Kullanım: !sebeb [ip-adresi] Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:input:#belirtilen-kanal:{
if $1 == !sebeb && $2 {
.enable #x
set %ip $2
stats g
}
}
#x off
raw *:*:{
if $numeric = 223 {
haltdef
var %& = $remove($3,@,*)
if %ip == %& {
hadd -m g $replace($7-,$chr(32),$chr(61))
}
}
if $numeric = 219 {
haltdef
if !$hget(g) {
msg #belirtilen-kanal %ip ip'i bulunamadı.
return
}
else {
msg #belirtilen-kanal %ip ip'inin atılma sebebi; $replace($hget(g,1).item,$chr(61),$chr(32))
hfree g
disable #x
}
}
}
#x end
MsnSONG.dll kullanarak sunucudaki kullanıcı sayısını /map komutu ile msn-ye yansıtmak. Kod: Kodu kopyalamak için üzerine çift tıklayın! alias msnsong {
var %dll MsnSong.dll
.comreg %dll
.comopen msn Msn.Write
var %i $com(msn,WriteToMsn,1,bstr,$1-,bstr,$null,bstr,$null)
.comreg -u %dll
.comclose msn
}
raw 6:*:msnsong $2 user sayısı: $3
Kanal text gönderirken text içerisinde kanalda bulunan bir nick varsa o nick bold/kalın olarak belirleme. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:input:*: {
if $left($1,1) != / {
var %q 1
while (%q <= $numtok($1-,32)) {
if ($gettok($1-,%q,32) ison $active) {
say $replace($1-,$v1,$+($chr(2),$v1,$chr(2)))
break
}
inc %q
}
haltdef
}
}
Özelinizdeki (/query) nickin clone-si hakkında bilgi veren kod. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:active:?: {
if $ial($address($active,2),0) >= 2 {
inc -e $+(%,p,$active)
if $($+(%,p,$active),2) == 1 {
var %1 1,%2
while %1 <= $ial($address($active,2),0) {
%2 = $addtok(%2,$gettok($ial($address($active,2),%1),1, 33 ),32)
inc %1
}
echo $active %2 nickleri aynı hosta sahipler.
}
}
}
Kanala giren guest takılı kullanıcılara işlev(uyarı, 2. uyarı ve ban) yapmak için hazırlamış olduğum bir kod. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:join:#:$iif($nick == $me,.timerkntrl 0 60 guest #,$iif(guest* iswm $nick,$+(.timer,$v2) 1 30 msg # $+($chr(22),$v2,$chr(22)) nick değiştiriniz vs.))
alias guest {
if $ialchan(Guest*,$1,0) >= 2 {
var %t = 1,%y
while %t <= $ialchan(Guest*,$1,0) {
%y = $addtok(%y,$+($chr(22),$gettok($ialchan(Guest*,$1,%t),1,33),$chr(22)),32)
$iif($hmatch(nick,$gettok($ialchan(Guest*,$1,%t),1,33)),hinc -m nick $gettok($ialchan(Guest*,$1,%t),1,33) 1,hadd -m nick $gettok($ialchan(Guest*,$1,%t),1,33) 1)
if $hget(nick,$gettok($ialchan(Guest*,$1,%t),1,33)) >= 3 {
ban -k $1 $gettok($ialchan(Guest*,$1,%t),1,33) 2 Sebeb.
$+(.timer,$gettok($ialchan(Guest*,$1,%t),1,33)) off
hdel -s nick $gettok($ialchan(Guest*,$1,%t),1,33)
}
inc %t
}
msg $1 %y nick değişiniz vs.
}
}
Gelen noticeleri, snoticeleri ve rumuzunun geçtiği mesajları(kanal ayrı, özel ayrı) ayrı pencerelerde gösteren kodlar. Kod: Kodu kopyalamak için üzerine çift tıklayın!
on ^*:snotice:*:{
$iif(!$window(@duyuru),window -nCBas @duyuru)
echo 5 @duyuru SNOTICE: $1-
}
on ^*:notice:*:?:{
$iif(!$window(@duyuru),window -nCBas @duyuru)
echo 5 @duyuru Servis: $nick - Mesajı: $1-
}
on *:text:$($+(*,$me,*)):?: {
if $active != $nick {
$iif(!$window(@seslenme),window -nCBas @seslenme)
echo 5 @seslenme Nick: $nick - Mesajı: $1-
echo -ate Nick: $nick - Mesajı: $1-
}
}
on *:text:$($+(*,$me,*)):#: {
if $active != # {
$iif(!$window(@seslenme),window -nCBas @seslenme)
echo 5 @seslenme Kanal: # - Nick: $nick - Mesajı: $1-
echo -ate Kanal: # - Nick: $nick - Mesajı: $1-
}
}
Size whois çeken kullanıcıları aynı bir pencerede(-l) listeleyen(aline) kod. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:snotice:*did a /whois on you*: {
inc %1
$iif(!$window @Whois),window -lCb @Whois,aline 2 @Whois $+(%1,-) $2 whois çekti.)
}
Tüm kanallardaki flaglarınızı(a,o,v,h,q vb.) larınızı geri almak için yazmış olduğum bir kod.
Kullanım: /opall Kod: Kodu kopyalamak için üzerine çift tıklayın! alias opall {
var %s = 1
while %s <= $comchan($me,0) {
mode $comchan($me,%s) -aqhvo $str($+($me,$chr(32)),5)
inc %s
}
}
Belitilen kanala giren kullanıcıların IP numaralarını işleme alarak, daha önce sunucuya girip/girmediği gösteren detaylı bir kod. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:join:#belirtilen-kanal:userip $nick
alias iptara {
if $hget(kayıt) {
var %o = 1
while %o <= $hget(kayıt,0).item {
if $gettok($hget(kayıt,%o).item,2,189) == $1 && $gettok($hget(kayıt,%o).item,1,189) != $2 {
$iif(!$window(@sonuc),window -nCbsa @sonuc)
echo -te @sonuc Bilgi: $gettok($hget(kayıt,%o).item,2,189) IP adresin'den daha önce; $gettok($hget(kayıt,%o).item,1,189) nick'i ile giriş yapıldı.
}
inc %o
}
}
}
raw *:*: {
haltdef
if ($numeric = 340) {
set %ip $gettok($2,2,64)
who +h $gettok($2,2,64)
hadd -m kayıt $+($gettok($2,1,61),½,$gettok($2,2,64))
iptara $gettok($2,2,64) $gettok($2,1,61)
}
if ($numeric = 352) {
hadd -m nick $6 1
}
if ($numeric = 315) {
var %& = 1,%&&
while %& <= $hget(nick,0).item {
%&& = $addtok(%&&,$hget(nick,%&).item,32)
inc %&
}
$iif(!$window(@IP),window -nCbsa @IP)
echo -t @IP Bilgi: %ip adresin'den bağlantı kuranlar: %&&
unset %ip
hfree nick
}
}
Belirtilen kanala giriş yaptığınızda dosya.txt dosyasından mesajları 15 dakikada bir sırayla göndermek için yazmış olduğum bir kod. Kod: Kodu kopyalamak için üzerine çift tıklayın! on me:join:#belirtilen-kanal:.timer 0 180 textsnd #
alias textsnd {
if $lines(dosya.txt) = %t {
unset %t
inc %t
}
else inc %t
msg $1 $read(dosya.txt,%t)
}
/exit yazdığınızda belirlediğiniz mesajı /ame olarak attıktan sonra çıkış yapmak için yazdığım bir kod. Kod: Kodu kopyalamak için üzerine çift tıklayın! alias exit {
inc -e %e
if (%e = 1 && $status = connected) {
ame mesajın
}
else exit -n
}
Socket bot için sunucuya giren ve belirtilen idente sahip kullanıcıyı belirtilen kanala /sajoin-lemek için yazmış olduğum bir kod. Kod: Kodu kopyalamak için üzerine çift tıklayın! if ($2 = notice && *Client connecting* iswm $3-) {
if ($remove($gettok($13,1,64),$chr(40)) = belirtilen-ident) {
sockwrite -n socket-ismi sajoin $12 #belirtilen-kanal
}
}
Kanal belirlediğiniz flood saldırısında, kanalı belirlediğiniz süre ile +m moduna alıp, temizle.mrc dosyasındaki verilerle kanalı temizleyip tekrar kanalaı açmak için yazmış olduğum bir kod Kod: Kodu kopyalamak için üzerine çift tıklayın! alias -l fld {
hinc $+(-mu,$1) fld $+($3,½,$4,$encode($5)) 1
if ($hget(fld,$+($3,½,$4,$encode($5))) >= $2) return $true
else return $false
}
alias temizle {
var %t 1
while %t <= $lines(temizle.mrc) {
msg $1 $read(temizle.mrc,%t)
inc %t
}
}
on @*:text:*:#: {
if $nick isreg # && $fld(10,3,#,$nick,$1-) {
ban -k # $nick 2 sebeb.
mode # +m
temizle #
msg # Kanal güvenlik amaçlı 20 sn vs.
if !$timer($+(#,½,fld)) {
$+(.timer,½,#) 1 20 mode # -m
.timer 1 21 msg # Kanal açıldı.
}
}
} /fld alias'ının kullanımı; $fld(saniye,limit,#kanal,text-own,mesaj)
Ben örnek olarak; 10 saniye içerisin'de, aynı text 3 defa tekrar edilirse, gördüğünüz işlevleri sırası ile gerçekleştirir.
Eğer aynı yazının tekrar'ı değilde, belirlediğim saniye içerisin'de belirlediğim satır limit'i aşılırsa(hızlı text) işlev yapmak istiyorum diyorsan;
/fld alias'ını aşşağıdaki şekilde değiştir; Kod: Kodu kopyalamak için üzerine çift tıklayın! alias -l fld {
hinc $+(-mu,$1) fld $+($3,½,$4) 1
if ($hget(fld,$+($3,½,$4)) >= $2) return $true
else return $false
} Ve kullanım şeklini verdiğim şekilde yap; $fld(saniye,limit,#kanal,text-own)
Örneğin; $fld(10,5,#,$nick)
10 saniye içerisinde, 5 satır text gönderen'e işlev yapar. Kanal'ı temizler vs.
Bu kod kanal veya özel loglarını aramak/okumak vb. işlemler için yazılmış detaylı bir snippet-dır. Kod: Kodu kopyalamak için üzerine çift tıklayın! menu channel {
Loglar menüsü
.# logu:kanal #
.Özel logları:falan $$?="Log'unu okumak istediginiz nick'i giriniz:"
}
alias falan {
if $findfile($logdir,$+($1,*),0) >= 1 {
var %1 = $v1
$iif($input(Aradığınız nick için %1 adet veri bulundu açmak istiyormusunuz?,w) == $false,halt)
var %2 = 1,%3 = $findfile($logdir,$+($1,*),0)
while %2 <= %3 { run $findfile($logdir,$+($1,*),%2) | inc %2 }
}
else {
var %/ = $1,%½ = $left($1,1)
$iif($input(Aradığınız %/ nick'i için uygun kayıt bulunamadı. %½ harfi ile başlıyan loglar listelensinmi?,w) == $false,halt)
echo -at $left($1,1) ile başlıyan loglar sıralanıyor.
echo -at $findfile($logdir,$+($left($1,1),*),0,echo -at $gettok($1-,$numtok($1-,92),92))
}
}
alias kanal {
if $findfile($logdir,$+($1,*),0) >= 1 {
var %1 = $v1, %% = $1
$iif($input(Aradığınız %% kanal'ı için %1 adet veri bulundu açmak istiyormusunuz?,w) == $false,halt)
var %2 = 1,%3 = $findfile($logdir,$+($1,*),0)
while %2 <= %3 {
run $findfile($logdir,$+($1,*),%2)
inc %2
}
}
else {
var %& = $1
$input(%& kanal'ı için herhangi bir kayıt bulunamadı,ohud,UYARI,)
}
}
Bu kod belirtilen kanala(sağ tıklayın popups bölümünde var) logları okumanıza yarar. Kod: Kodu kopyalamak için üzerine çift tıklayın! menu channel {
# kanal log'u:searchlog # $gettok($server,2-,46)
}
alias searchlog {
if ($findfile($logdir,$+($1,.,$2,*),0) = 0) $iif($input($1 kanal' için log bulunamadı.,ohud,uyarı) = $true,return,return)
run $findfile($logdir,$+($1,.,$2,*),1)
}
Bu kod belirtilen kanaldaki tüm kullanıcılara kontrol mesajı yollar. Eğer 10 saniye içerisinde herhangi bir kullanıcı mesaja cevap verirse kanaldan banlayacaktır.
Kodu kullanmak için, belirtilen kanalın client editbox kutusuna /kontrol yazmanız yeterli olacaktır. Kod: Kodu kopyalamak için üzerine çift tıklayın! alias kontrol {
write -c kontrol.txt
set -eu10 %k $active
var %1 = 1,%v1
while $nick(%k,%1) {
%v1 = $v1
if %v1 != $me {
.msg %v1 Kontrol mesajıdır.
write kontrol.txt %v1
}
inc %1
}
}
on *:text:*:?:if (%k && $nick ison %k && $read(kontrol.txt,w,$nick)) ban -k %k $nick 2 sebeb.
Bu kod #help - #yardım kanalına giren kullanıcının host adresine bakarak, admin, ircop vb. kişiler dışındaki kişilere +v(voice) verip mesaj göndermek için yazılmıştır. Kod: Kodu kopyalamak için üzerine çift tıklayın! on !*:join:#help,#yardım: {
if (!$regex($gettok($address($nick,2),2,64),/network|admin|ircop/i)) {
mode # +v $nick
msg # $nick mesajın.
}
} Not: | operatörü ile daha fazla host ekleyebilirsiniz.
Bu kod sunucuya giren kullanıcının ident, nick ve fullname-si birbirinin aynısı ise sunucudan gline ile uzaklaştırmak için yazılmıştır. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:snotice:*client connect*: {
if ($left($9,-2) = $remove($gettok($10,1,64),$chr(40)) && $remove($11,[,]) = $left($9,-2)) {
gline $9 sebeb.
}
} |