IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası

IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası (https://www.ircforumlari.net/)
-   mIRC Scripting Sorunları (https://www.ircforumlari.net/mirc-scripting-sorunlari/)
-   -   Badnick Koruması Hakkında. (https://www.ircforumlari.net/mirc-scripting-sorunlari/700276-badnick-korumasi-hakkinda.html)

bluecr 05 Ağustos 2015 13:23

Badnick Koruması Hakkında.
 
Arkadaşlar biraz yeniyim bir konuda yardımcı olmanızı rica ediyorum , bir script ye gerçekten çalışan bir badnick koruması ve içinde listesi olan birde yapmasını istediğim şey şu atıyorum örnek armut kanalında badnick otomatik atıldı elma kanalına otomatik yazsın işte armut kanalından şu nick badnick sebebi ile atıldı gibi.

KuL 05 Ağustos 2015 14:04

Cevap: Badnick Koruması Hakkında.
 
Alıntı:

bluecr Nickli Üyeden Alıntı (Mesaj 1041675810)
Arkadaşlar biraz yeniyim bir konuda yardımcı olmanızı rica ediyorum , bir script ye gerçekten çalışan bir badnick koruması ve içinde listesi olan birde yapmasını istediğim şey şu atıyorum örnek armut kanalında badnick otomatik atıldı elma kanalına otomatik yazsın işte armut kanalından şu nick badnick sebebi ile atıldı gibi.

Selamun Aleykum, Hosgeldin bluecr Foruma.

Badnick artik Forumda yeterince cok var gibi, Üst Bölümde Arama -> Gelismis Arama yapinca bile bu Kategoride 487 Sonuc veriyor.

Istersen su Konuya bir bak. Toprak yapmisti bir Kod diger Sistemler gibi user kismindan yada .txt den karsilastirma yapmadigi icin daha hizli calisiyor. Hash tablolari ile calisiyor cünki Badnick Korumasi (Hash).

Ve atilmalardada #Opers Kanalina Bildiri gönderiyor.

Diledigin Bölümü kendine göre ayarlayabilirsin. Takildigin yerde tabiki yine Sorup Yardim alabilirsin :)

Konu: [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

---------

Edit:

Eger diger Badnick Korumalarini kullanicaksan, istedigin mesaji göndermek icinde Kick komutunun altina veya Yanina birde msg Komutu eklersin ve diledigin Mesaji gönderirsin.

Örnek Kick Bölümü:

Kod:

ban -k # $nick Badnick Sebebiyle Kanaldan atildiniz
msg #armut $nick Nicki Badnick Sebebiyle # Kanalindan atildi.


SuLh 05 Ağustos 2015 14:10

Cevap: Badnick Koruması Hakkında.
 
Badnickleri atmak için birden fazla yöntem uygulayabilirsin. Bir badnick.txt dosyası oluşturabilir bu dosyada ki nickleri kontrol ettirebilir ve atabilirsin. Bunun için join eventini kullabilirsin. Örneğin bir badnick.txt dosyası oluşturdun ve bunun içindeki nickleri armut kanalında kontrol ettirmek istiyorsun.

Kod:

on *:join:#armut: {
if $read(badnick.txt,w,$nick) {
;Join eveniyle #armut kanalina giren nickleri, $read yardımıyla badnick.txt içinde tarattın, veri eşleşirse buraya yazacağın komutlar uygulanır. Mesela aktif ekrana Badnick bulundu diyelim ve kanaldan atalım. Ayrıca istediğin gibi elma kanalına badnickin atıldığının haberini verelim.
echo -a Badnick bulundu! : $nick
ban #armut $nick
kick #armut $nick
msg #elma $nick Nicki badnick özelliği taşıdığı için #armut kanalından atıldı.
}
}

Ayrıca bir alias yazıp script içinden dilediğin badnickleri, badnick.txt dosyasına yazdıralım.

Kod:

alias badekle { write badnick.txt $1 | echo -a $1 Nicki badnick.txt dosyasına yazdırıldı. }
;silmek istersen, write komutunun -c operatorunu kullanman gerekir. -c Satır var ise txt'den siler.
alias badsil { write -c badnick.txt $1 }

Bir başka yöntem Users(Kullanıcı) kısmına nick ekleyerek script içinden kontrol ettirebilirsin;

Kod:

on @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]:join:#armut: {
ban #armut $nick
kick #armut $nick Badnick özelliği gösterdiniz.
msg #elma $nick Nicki badnick olduğu gerekçesiyle #armut kanalından atıldı.
}

Badnickleri Users bölümüne eklemek için;

Kod:

auser Badnick YazacaginBadnick
;silmek için
ruser Badnick SileceginBadnick

Ya da benim yazacağım nick sayısı az diyorsan şu tarz bir şey de yapabilirsin.

Kod:

on *:join:#armut: {
if $regex($nick,/^(badnick|badnick1|badnick2)$/i) {
ban #armut $nick
kick $nick Badnick gerekçesiyle atıldınız.
msg #elma $nick Nicki badnick olduğu gerekçesiyle #armut kanalından atıldı.
}
}

ve evet, aramaya inanmak. ;x

bluecr 05 Ağustos 2015 14:20

Cevap: Badnick Koruması Hakkında.
 
Alıntı:

Ku|L| Nickli Üyeden Alıntı (Mesaj 1041675815)
Selamun Aleykum, Hosgeldin bluecr Foruma.

Badnick artik Forumda yeterince cok var gibi, Üst Bölümde Arama -> Gelismis Arama yapinca bile bu Kategoride 487 Sonuc veriyor.

Istersen su Konuya bir bak. Toprak yapmisti bir Kod diger Sistemler gibi user kismindan yada .txt den karsilastirma yapmadigi icin daha hizli calisiyor. Hash tablolari ile calisiyor cünki Badnick Korumasi (Hash).

Ve atilmalardada #Opers Kanalina Bildiri gönderiyor.

Diledigin Bölümü kendine göre ayarlayabilirsin. Takildigin yerde tabiki yine Sorup Yardim alabilirsin :)

Konu: [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

---------

Edit:

Eger diger Badnick Korumalarini kullanicaksan, istedigin mesaji göndermek icinde Kick komutunun altina veya Yanina birde msg Komutu eklersin ve diledigin Mesaji gönderirsin.

Örnek Kick Bölümü:

Kod:

ban -k # $nick Badnick Sebebiyle Kanaldan atildiniz
msg #armut $nick Nicki Badnick Sebebiyle # Kanalindan atildi.



Verdiğin Badnick Korumasını Script ye nasıl ekleyeceğimi az yazarmısınız ? :) Fazla Bilgim yok ama genede idare eder.

KuL 05 Ağustos 2015 14:25

Cevap: Badnick Koruması Hakkında.
 
Ellerine Saglik @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] cok Güzel anlatmissin Masallah.

Yanliz Kick Komutunun arkasina Sebep kismini eklemeyi unutmussun sanirim aceleden :)

Bide su var, Event Kisminda Kanal ismi yaziyorsan Örnek

Kod:

on *:join:#kanal: {
gibi ozaman Kodun icinde mecbur hep #kanal , #kanal yazman gerekmez. # yazsanda olur kisaltma olarak yani.

Bide basitlestirmek icin ban ve kick ayri kullanmak yerine ban -k # $nick sebep ilede atabilirsin, kolaylik saglar.

Hatda bide -u parametresi kullanirsan sürede vermis olabilirsin

Örnek 60 Saniyelik banli kalsin dersen

Kod:

ban -ku60 # $nick Kurallara uymadigin icin 60 Saniyelik uzaklastirildin.

bluecr , SuLh Arkadasinda dedigi gibi farkli yöntemleri var. Ama Hizli dersen Hash Koruma kullan derim. Eger yok onu istemiyorum dersen Users Bölümü üzerinden olan Korumayi kullan derim. Yok onuda istemiyorum dersen son olarak .txt kullanirsin.

Bide Badnick Listesi icinde, En sagliklisi kendi atdigin badnickleri kendin eklersen olur. Cünki her Sunucudaki Badnickler baska Sunucudakiyle ayni olmuyor.

Bazi Sunucularda Ali_a yasak, basisinda izin veriliyor. Listem kabarik ve cok kisi atsin dersen, cok yanlis atmalarda olur icinde. O yüzden ilk eklediginde listeyi iyi takip et, yanlis atmalar oluyorsa o nickleri temizle listenden.

bluecr 05 Ağustos 2015 14:29

Kod:

on *:start:{ $iif(!$isfile(badnick.tprk),.write badnick.tprk) | .hmake badnick 100 | .hload badnick badnick.tprk }
on @*:join:#:{
  if $hfind(badnick,$nick,1,W).data {
    mode # +b $nick
    kick # $nick 1Nick değiştirip(/nick yeninick) tekrar kanala giriş yapabilirsiniz..
    if !$hget(bdnck,$nick) {
      .hinc -msu20 bdnck $nick
      msg #Lucas [ JOIN ] $nick nicki badnick olarak tespit edildi. $+([,$chr(32),$hget(badnick,$hfind(badnick,$nick,1,W).data),$chr(32),])
    }
  }
}
on *:nick:{
  if $hfind(badnick,$newnick,1,W).data {
    msg #lucas [ NICK ] $newnick nicki badnick olarak tespit edildi. $+([,$chr(32),$hget(badnick,$hfind(badnick,$newnick,1,W).data),$chr(32),])
    var %:c $regsubex($str(-,$comchan($newnick,0)),/./g, $iif($regex($nick($comchan($newnick,\n),$me).pnick,/(%|@|&|~\.)/i),$comchan($newnick,\n) $chr(32)))
    var %c = 1 | while %c <= $token(%:c,0,32) {
      mode $token(%:c,%c,32) +b $newnick | kick $token(%:c,%c,32) $newnick 1Nick değiştirip(/nick yeninick) tekrar kanala giriş yapabilirsiniz..
      inc %c
    }
  }
}
on *:text:*:#:{
  if $regex($1,/^[!\.]badnick$/Si) {
    if $regex($2,/^ekle$/Si) {
      if (!$3) { msg # Lütfen nick belirtiniz | return }       
      if $hfind(badnick,$strip($3),0,W).data { msg # Eklemeye çalıştığınız badnick zaten $+([,$chr(32),$hget(badnick,$hfind(badnick,$strip($3),1,W).data),$chr(32),]) maskesi ile uyuşmakta. | return }
      var %n = $left($calc($ctime * $rand(1000,9999)),7)
      .hadd -m badnick %n $strip($3)
      .hsave -o badnick badnick.tprk
      msg # $strip($3) Badnick listesine eklendi.
    }
    if $regex($2,/^s[ıiİ]l$/Si) {
      if (!$3) { msg # Lütfen nick belirtiniz | return }       
      if !$hfind(badnick,$strip($3),0,W).data { msg # Bad nick listesinde bulunmamaktadir. | return }
      .hdel -m badnick $hfind(badnick,$strip($3),1,W).data
      .hsave -o badnick badnick.tprk
      msg # $strip($3) Badnick listesinden silindi.
    }
    if $regex($2,/^tara$/Si) {
      if (!$3) { msg # Lütfen nick belirtiniz | return }       
      if !$hfind(badnick,$strip($3),0,W).data { msg # Badnick listem'de $strip($3) ait bir mask yok. | return }
      msg # Nick: $strip($3) - 4Mask: $+([,$chr(32),$hget(badnick,$hfind(badnick,$strip($3),1,W).data),$chr(32),])
    }
    if $regex($2,/^l[ıiİ]st$/Si) {
      if ($hget(badnick,0).data == 0) { msg # Badnick listesi boş. | return }
      msg # Badnick listesi
      msg # -
      var %i = 1 | while (%i <= $hget(badnick,0).data) { msg # %i $+ .4) [ $hget(badnick,%i).data ] | inc %i }
      msg # -
      msg # Badnick listesi sonu
    } 
  }
  if $regex($1,/^[!\.]tara$/Si) {
    if !$regex($2,/^#/Si) { msg # Lütfen #kanal belirtiniz | return } 
    if !$chan($2) { msg # $2 kanal'ında bulunmuyorum | return }
    var %:tara = 1 | while %:tara <= $nick($2,0) {
      if $hfind(badnick,$nick($2,%:tara),1,W).data {
        msg #lucas [ TARAMA ] $nick($2,%:tara) nicki badnick olarak tespit edildi. $+([,$chr(32),$hget(badnick,$hfind(badnick,$nick($2,%:tara),1,W).data),$chr(32),])
        mode $2 +b $nick($2,%:tara) | kick $2 $nick($2,%:tara) 1Nick değiştirip(/nick yeninick) tekrar kanala giriş yapabilirsiniz..
      }
      inc %:tara
    }   
  }
}


Bu Komutu bir txt içerisine ekleyip /load -rs şeklinde mi mırc'a uygulamalıyım " badnick.tprk" dosyasını o şekilde yapacağım ama bunu nereye ekleyeceğim

popups Alias Remote nereye eklemeliyim bunu

Feragat 05 Ağustos 2015 14:33

Cevap: Badnick Koruması Hakkında.
 
Alıntı:

bluecr Nickli Üyeden Alıntı (Mesaj 1041675817)
Verdiğin Badnick Korumasını Script ye nasıl ekleyeceğimi az yazarmısınız ? :) Fazla Bilgim yok ama genede idare eder.

Burayı incelersen bilgi sahibi olabilirsin. Link: [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Bunun dışında write -c parametresi dosyanın içeriğini siler.

KuL 05 Ağustos 2015 14:37

Cevap: Badnick Koruması Hakkında.
 
Feragat Hoca zaten Cevap vermis :)

Dipnot: Kodu Bota falan ekliceksen böyle ekliyeceksin.

Kod:

on *:start:{ $iif(!$isfile(badnick.tprk),.write badnick.tprk) | .hmake badnick 100 | .hload badnick badnick.tprk }
on @*:join:#:{
  if $hfind(badnick,$nick,1,W).data {
    mode # +b $nick
    kick # $nick 1Nick değiştirip(/nick yeninick) tekrar kanala giriş yapabilirsiniz..
    if !$hget(bdnck,$nick) {
      .hinc -msu20 bdnck $nick
      msg #Opers [ JOIN ] $nick nicki badnick olarak tespit edildi. $+([,$chr(32),$hget(badnick,$hfind(badnick,$nick,1,W).data),$chr(32),])
    }
  }
}
on *:nick:{
  if $hfind(badnick,$newnick,1,W).data {
    msg #Opers [ NICK ] $newnick nicki badnick olarak tespit edildi. $+([,$chr(32),$hget(badnick,$hfind(badnick,$newnick,1,W).data),$chr(32),])
    var %:c $regsubex($str(-,$comchan($newnick,0)),/./g, $iif($regex($nick($comchan($newnick,\n),$me).pnick,/(%|@|&|~\.)/i),$comchan($newnick,\n) $chr(32)))
    var %c = 1 | while %c <= $token(%:c,0,32) {
      mode $token(%:c,%c,32) +b $newnick | kick $token(%:c,%c,32) $newnick 1Nick değiştirip(/nick yeninick) tekrar kanala giriş yapabilirsiniz..
      inc %c
    }
  }
}
on *:text:*:#:{
  if $regex($1,/^[!\.]badnick$/Si) {
    if $regex($2,/^ekle$/Si) {
      if (!$3) { msg # Lütfen nick belirtiniz | return }       
      if $hfind(badnick,$strip($3),0,W).data { msg # Eklemeye çalıştığınız badnick zaten $+([,$chr(32),$hget(badnick,$hfind(badnick,$strip($3),1,W).data),$chr(32),]) maskesi ile uyuşmakta. | return }
      var %n = $left($calc($ctime * $rand(1000,9999)),7)
      .hadd -m badnick %n $strip($3)
      .hsave -o badnick badnick.tprk
      msg # $strip($3) Badnick listesine eklendi.
    }
    if $regex($2,/^s[ıiİ]l$/Si) {
      if (!$3) { msg # Lütfen nick belirtiniz | return }       
      if !$hfind(badnick,$strip($3),0,W).data { msg # Bad nick listesinde bulunmamaktadir. | return }
      .hdel -m badnick $hfind(badnick,$strip($3),1,W).data
      .hsave -o badnick badnick.tprk
      msg # $strip($3) Badnick listesinden silindi.
    }
    if $regex($2,/^tara$/Si) {
      if (!$3) { msg # Lütfen nick belirtiniz | return }       
      if !$hfind(badnick,$strip($3),0,W).data { msg # Badnick listem'de $strip($3) ait bir mask yok. | return }
      msg # Nick: $strip($3) - 4Mask: $+([,$chr(32),$hget(badnick,$hfind(badnick,$strip($3),1,W).data),$chr(32),])
    }
    if $regex($2,/^l[ıiİ]st$/Si) {
      if ($hget(badnick,0).data == 0) { msg # Badnick listesi boş. | return }
      msg # Badnick listesi
      msg # -
      var %i = 1 | while (%i <= $hget(badnick,0).data) { msg # %i $+ .4) [ $hget(badnick,%i).data ] | inc %i }
      msg # -
      msg # Badnick listesi sonu
    } 
  }
  if $regex($1,/^[!\.]tara$/Si) {
    if !$regex($2,/^#/Si) { msg # Lütfen #kanal belirtiniz | return } 
    if !$chan($2) { msg # $2 kanal'ında bulunmuyorum | return }
    var %:tara = 1 | while %:tara <= $nick($2,0) {
      if $hfind(badnick,$nick($2,%:tara),1,W).data {
        msg #Opers [ TARAMA ] $nick($2,%:tara) nicki badnick olarak tespit edildi. $+([,$chr(32),$hget(badnick,$hfind(badnick,$nick($2,%:tara),1,W).data),$chr(32),])
        mode $2 +b $nick($2,%:tara) | kick $2 $nick($2,%:tara) 1Nick değiştirip(/nick yeninick) tekrar kanala giriş yapabilirsiniz..
      }
      inc %:tara
    }   
  }
}

Kendin kullanicaksan Text Eventini input yapman gerek.

Bunun gibi:

Kod:

on *:start:{ $iif(!$isfile(badnick.tprk),.write badnick.tprk) | .hmake badnick 100 | .hload badnick badnick.tprk }
on @*:join:#:{
  if $hfind(badnick,$nick,1,W).data {
    mode # +b $nick
    kick # $nick 1Nick değiştirip(/nick yeninick) tekrar kanala giriş yapabilirsiniz..
    if !$hget(bdnck,$nick) {
      .hinc -msu20 bdnck $nick
      msg #Opers [ JOIN ] $nick nicki badnick olarak tespit edildi. $+([,$chr(32),$hget(badnick,$hfind(badnick,$nick,1,W).data),$chr(32),])
    }
  }
}
on *:nick:{
  if $hfind(badnick,$newnick,1,W).data {
    msg #Opers [ NICK ] $newnick nicki badnick olarak tespit edildi. $+([,$chr(32),$hget(badnick,$hfind(badnick,$newnick,1,W).data),$chr(32),])
    var %:c $regsubex($str(-,$comchan($newnick,0)),/./g, $iif($regex($nick($comchan($newnick,\n),$me).pnick,/(%|@|&|~\.)/i),$comchan($newnick,\n) $chr(32)))
    var %c = 1 | while %c <= $token(%:c,0,32) {
      mode $token(%:c,%c,32) +b $newnick | kick $token(%:c,%c,32) $newnick 1Nick değiştirip(/nick yeninick) tekrar kanala giriş yapabilirsiniz..
      inc %c
    }
  }
}
on *:input:*:{
  if $regex($1,/^[!\.]badnick$/Si) {
    if $regex($2,/^ekle$/Si) {
      if (!$3) { echo -a Lütfen nick belirtiniz | return }       
      if $hfind(badnick,$strip($3),0,W).data { echo -a Eklemeye çalıştığınız badnick zaten $+([,$chr(32),$hget(badnick,$hfind(badnick,$strip($3),1,W).data),$chr(32),]) maskesi ile uyuşmakta. | return }
      var %n = $left($calc($ctime * $rand(1000,9999)),7)
      .hadd -m badnick %n $strip($3)
      .hsave -o badnick badnick.tprk
      echo -a $strip($3) Badnick listesine eklendi.
    }
    if $regex($2,/^s[ıiİ]l$/Si) {
      if (!$3) { msg # Lütfen nick belirtiniz | return }       
      if !$hfind(badnick,$strip($3),0,W).data { echo -a Bad nick listesinde bulunmamaktadir. | return }
      .hdel -m badnick $hfind(badnick,$strip($3),1,W).data
      .hsave -o badnick badnick.tprk
      echo -a $strip($3) Badnick listesinden silindi.
    }
    if $regex($2,/^tara$/Si) {
      if (!$3) { msg # Lütfen nick belirtiniz | return }       
      if !$hfind(badnick,$strip($3),0,W).data { echo -a Badnick listem'de $strip($3) ait bir mask yok. | return }
      echo -a Nick: $strip($3) - 4Mask: $+([,$chr(32),$hget(badnick,$hfind(badnick,$strip($3),1,W).data),$chr(32),])
    }
    if $regex($2,/^l[ıiİ]st$/Si) {
      if ($hget(badnick,0).data == 0) { echo -a Badnick listesi boş. | return }
      echo -a Badnick listesi
      echo -a -
      var %i = 1 | while (%i <= $hget(badnick,0).data) { echo -a %i $+ .4) [ $hget(badnick,%i).data ] | inc %i }
      echo -a -
      echo -a Badnick listesi sonu
    } 
  }
  if $regex($1,/^[!\.]tara$/Si) {
    if !$regex($2,/^#/Si) { echo -a Lütfen #kanal belirtiniz | return } 
    if !$chan($2) { echo -a $2 kanal'ında yokuz. | return }
    var %:tara = 1 | while %:tara <= $nick($2,0) {
      if $hfind(badnick,$nick($2,%:tara),1,W).data {
        msg #Opers [ TARAMA ] $nick($2,%:tara) nicki badnick olarak tespit edildi. $+([,$chr(32),$hget(badnick,$hfind(badnick,$nick($2,%:tara),1,W).data),$chr(32),])
        mode $2 +b $nick($2,%:tara) | kick $2 $nick($2,%:tara) 1Nick değiştirip(/nick yeninick) tekrar kanala giriş yapabilirsiniz..
      }
      inc %:tara
    }   
  }
}

Text Eventi input olarak degistirildi, ve mesaj (msg) yerleri echo olarak düzeltildi, yani sen görürsün kanala yansitilmaz.

bluecr 05 Ağustos 2015 14:46

Oldu Çok Güzel Oldu teşekkür ederim peki Badnicki hangi kanalda tespit edip attığını yapabilirmiyiz ?

[14:52] <Hang> JOIN SAXSOCUVARMI_31 nicki badnick olarak tespit edildi. [ *sax* ] kanala bu şekilde uyarı veriyor hangi kanala girdiğini söylemiyor ve statüs de sürekli -Unknown command yazıyor

cinaryigit 30 Aralık 2019 08:46

Cevap: Badnick Koruması Hakkında.
 
Selam.
Aklıma şöyle bir şey geldi. Ben bunu timer ile yapıyorum bunu join eventinde nasıl yaparız.
Şöyle izah edeyim; Kanaldan banlamak ya da atmak istemediğim bir kullanıcıyı kanalda susturmak istiyorum. Kullanıcının nickini değil IP'sinin (32649F26.B59FAB9E.FFCFEE32.IP) ~q:*!*@*FFCFEE32.IP son kısmını banlamak istiyorum.
Kısacası Kanala giren nickin IP'sinin son kısmına sus atsın.
Örnek: Giriş: FatLady (
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
)
[07:26] * Wazted mod değiştirdi:+b ~q:*!*@*FFCFE32A.IP

Şimdiden teşekkür ederim


Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 23:02.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2025 IRCForumlari.Net Sparhawk