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 kasmayan tarama ve cs atma (https://www.ircforumlari.net/mirc-scripting-sorunlari/526589-badnick-kasmayan-tarama-ve-cs-atma.html)

sEntieL 16 Mart 2013 22:53

Badnick kasmayan tarama ve cs atma
 
merhaba dostlar,

Badnick taramasının kasmayan modeli varmı ? benim badnick dosyam $mircdir/system/badnick.mrc dosyasından okutup buna entegre edip taramada bulup cs den atmasını sağlayabilirmiyiz? 2 .si badnick girişindede cs den atmayı sağlayabilirmiyiz 3. sü kanal girişinde badnick taraması yapıp( kasmıyorsa eğer) badnickleri atmayı sağlamak mümkünmü bunların deop olduğumuzda çalışan komutu ve op olduğumuzda çalışan komutlarını ayrı ayrı belirtirseniz memnun olurum teşekkürler

JohnGalt 16 Mart 2013 23:56

Cevap: Badnick kasmayan tarama ve cs atma
 
Kaç tane badnick arasında tarama yapılması gerekiyor? Eğer çoksa hash table ile yapman en uygunu.

sEntieL 17 Mart 2013 00:07

Cevap: Badnick kasmayan tarama ve cs atma
 
Paşam kanal ortalaması 250 - 1000 yanlız kanala giren badnickleri hem ip adresiyle atmayı hemde nickleri atmayıda yazarsanız çok iyi olur hocam

JohnGalt 17 Mart 2013 00:50

Cevap: Badnick kasmayan tarama ve cs atma
 
Sunucundaki ChanServ'de ban komutu var mı? /cs ban #kanal nick komutu ile ban atabiliyor musun yani? Yada akick komutuna erişimin var mı?

sEntieL 17 Mart 2013 01:36

Cevap: Badnick kasmayan tarama ve cs atma
 
evet var /cs akick #zurna add nick!*@* Badnick korumasına takıldınız.. gibi ekliyoruz

JohnGalt 17 Mart 2013 17:47

Cevap: Badnick kasmayan tarama ve cs atma
 
Öncelikle bazı şeyleri açıklayayım;

Bir kanalın CS'sine erişimin varsa zaten kanalda DEOP da olsan OP da olsan /CS BAN komutunu kullanabilirsin. Ama /CS BAN komutu ile atılan banlarda IP mi, Ident mi gibi değişiklikleri yapabilmen için kanaldaki seviyenin en az SET komutuna erişimin olacak şekilde olması gerekiyor. Kaldı ki AKICK ekleyebiliyorsan SET komutuna erişimin de vardır muhtemelen. (Eğer ki BANTYPE değiştirilmemişse /CS BAN komutu IP adresine ban atacak şekilde ayarlıdır.)

Badnick koruması dediğimiz şey aslında IP adresine ban atılmaması gereken bir korumadır. Yani kişi nickini değiştirdiğinde kanala tekrar girebilmeli. O nedenle de /CS BAN komutu ile değil de /mode & /kick ile yapmak en iyi sonuç verir.

Diğer bir konu ise badnick listenin ne şekilde listelendiği; belirttiğin mrc uzantılı dosyanın içindeki badnick listesini paylaşabilirsen ya da en azından listenin formatını da paylaşırsan ona göre ayarlama yapabiliriz. Ben şimdilik listenin belirttiğin dosya yolunda ve içeriğinin şu şekilde olduğunu varsayarak kodu düzenledim;


bad1 bad2 bad3 bad4
bad5 bad6 bad7
bad7 bad8 bad9 bad10 bad11


Yani her satırda boşluk ile ayrılmış badnick çeşitleri. Bu nicklerin içinde bulunmasını istemediğin kelimeler direk olarak olmalı. Mesela ***** değil, *** şeklinde.

Kod:

alias tara {
  if !$1 {
    var %x = 1 | while $read($mircdir/system/badnick.mrc,%x) {
      set -u5 %bad $+(/,$chr(40),$replace($read($mircdir/system/badnick.mrc,%x),$chr(32),$chr(124)),$chr(41),/i)
      var %y = 1 | while $nick($active,%y) {
        if ($regex($nick($active,%y),%bad)) {
          if ($me isop $active) { mode $active +b $+(*,$regml(1),*) | kick $active $nick($active,%y) SEBEP }
          else { .cs akick $active add $+(*,$regml(1),*!*@*) SEBEP }
        }
        inc %y
      }
      inc %x
      $iif(%x > $lines($mircdir/system/badnick.mrc),.cs akick $active enforce)
    }
  }
  else {
    var %z = 1 | while $read($mircdir/system/badnick.mrc,%z) {
      set -u5 %bad $+(/,$chr(40),$replace($read($mircdir/system/badnick.mrc,%z),$chr(32),$chr(124)),$chr(41),/i)
      if ($regex($1,%bad)) {
        if ($me isop $2) { mode $2 +b $+(*,$regml(1),*) | kick $2 $1 SEBEP }
        else { .cs akick $2 add $+(*,$regml(1),*!*@*) SEBEP | .cs akick $2 enforce }
      }
      inc %z
    }
  }
}
on !*:join:#kanal1,#kanal2,#kanal3:{ tara $nick $chan }

Tarama yapmasını istediğin kanal geneline /tara yazarak tarama yaptırabilirsin. Eğer kanalda OP'san /mode & /kick uygular. Eğer DEOP'san da akick ekleyerek akickten attırır.

Girişlerinde tarama yaptırmak istediğin kanalları arttırabilirsin virgül ile. Eğer bulunduğun tüm kanallarda yapmasını istiyorsan da #kanal1,#kanal2,#kanal3 kısmını silip sadece # yazabilirsin.

Sonuç olarak; CS'den ban komutunu kullanmama sebebimiz /CS BAN komut işlevinde sadece nicke ban atma şansın yok, illa ki IP ya da ident ban oluyor. Nickban olması için mode kullanmalısın. Mode komutunu kullanmak için de kanalda OP konumunda olman ya da +o (oper) flagının olması gerekiyor.

Not: Korumayı 831 kişinin olduğu kanalda 38 badnick ile denedim ve herhangi bir *aşırı* kasılma ile karşılaşmadım.

Umarım aklındaki gibi bir korumadır ve işe yarar.

sEntieL 19 Mart 2013 02:35

Cevap: Badnick kasmayan tarama ve cs atma
 
dostum eline koluna sağlık yanlız bir sorun var akickle bütün herkezi attı tarama yapınca benim badnick

[02:34] -ChanServ- *r*!*@* maskesi #sohbet kanalinin akick listesine eklendi.
[02:34] -ChanServ- #sohbet icin AKICK ENFORCE tamamlandi; 30 kullanici bundan etkilendi.
[02:34] -ChanServ- *r*!*@* #sohbet kanalinin akick listesinden silindi.
[02:34] -ChanServ- *r*!*@* maskesi #sohbet kanalinin akick listesine eklendi.
[02:34] -ChanServ- #sohbet icin AKICK ENFORCE tamamlandi; 0 kullanici bundan etkilendi.
[02:34] -ChanServ- *r*!*@* #sohbet kanalinin akick listesinden silindi.
[02:34] -ChanServ- *L*!*@* maskesi #sohbet kanalinin akick listesine eklendi.
[02:34] -ChanServ- #sohbet icin AKICK ENFORCE tamamlandi; 0 kullanici bundan etkilendi.
[02:34] -ChanServ- *L*!*@* #sohbet kanalinin akick listesinden silindi.
[02:34] -ChanServ- *i*!*@* maskesi #sohbet kanalinin akick listesine eklendi.
[02:34] -ChanServ- #sohbet icin AKICK ENFORCE tamamlandi; 6 kullanici bundan etkilendi.
[02:34] -ChanServ- *i*!*@* #sohbet kanalinin akick listesinden silindi.
[02:34] -ChanServ- *i*!*@* maskesi #sohbet kanalinin akick listesine eklendi.
[02:34] -ChanServ- #sohbet icin AKICK ENFORCE tamamlandi; 0 kullanici bundan etkilendi.
[02:34] -ChanServ- *i*!*@* #sohbet kanalinin akick listesinden silindi.
[02:34] -ChanServ- *r*!*@* maskesi #sohbet kanalinin akick listesine eklendi.
[02:34] -ChanServ- #sohbet icin AKICK ENFORCE tamamlandi; 0 kullanici bundan etkilendi.
[02:34] -ChanServ- *r*!*@* #sohbet kanalinin akick listesinden silindi.
[02:34] -ChanServ- *r*!*@* maskesi #sohbet kanalinin akick listesine eklendi.
[02:34] -ChanServ- #sohbet icin AKICK ENFORCE tamamlandi; 0 kullanici bundan etkilendi.
[02:34] -ChanServ- *r*!*@* #sohbet kanalinin akick listesinden silindi.

Sadece istediğim şey op olduğum zaman ban ve kick kullansın hem taramada hemde girişteki badnicklere deop olduğum zamanda akick kullansın akick add | enforce | akick del şeklinde vede hazır elin değmişken eğer nickim oper ise badnickleri bulunduğu bütün kanallardan sapart yapıp cinsellik kanallarına sajoin yapmalarını sağlayaiblirmiyiz yani şöyle ++ op halfop sop founder olduğum kanallarda ban ve kick ile atmasını deop olduğum kanallarda akick oper olduğum zamanda sajoin ve sapart yapmalarını sağlayabilirmiyiz.. şuda olabilir akick atılacak kanalları yazarım eğerki akick atacak diye belirtmediğim kanal var ise onlarda ban ve kick şeklinde atsın akickle atacağı kanalı ben belirleyebilirmiyim ? ve belirlediğim kanallara girişte otomatik tarasın. ve op sop olduğum kanallarda da akick atılacak kanallardada giriş yapan badnickleri otomatik atsın

son olarak halfop op ve protect ve founderlik verildiğinde tarama yaptırabilirmiyiz kanalı

deler
kazik
yalar
deler
basar
killi giib

aralarında *cinsel* de var
ayrıca akick enforce var akick del yok bunlarda

JohnGalt 20 Mart 2013 00:35

Cevap: Badnick kasmayan tarama ve cs atma
 
Belirttiğin şekilde bir sonuç aldıysan muhtemenelen hedef olarak belirttiğimiz dosyanda sadece nickler yok ya da düzgün şekilde ekleme yapmadın.

İlerde de bu tarz sorunlar yaşamaman için yeni bir dosya oluşturmanı kesinlikle öneririm. Zira hazırladığım yeni kod senin istediğin dosya yolunda badnick.txt oluşturarak oradan okuyacak.

Diyalogu açıklamakla başlayayım; üç sütun var. İlki badnick olarak ekleyeceğin kelimeler. Bu kelimeler mutlaka düz ve eksiz olmalı. Mesela nickinin içinde ist geçen nickleri atmasını istiyorsan direk olarak ist yazmalısın. *ist* gibi yazarsan kod çalışmaz. Ama *ist* yazdığındaki gibi hem direk olarak nicki ist olan kullanıcıyı hem de nickinin içinde ist geçen kullanıcıyı etkiler. Tek dikkat etmen gereken husus bu. Gerçi dalgınlığına gelir de unutursun diye diyalogda ekleme yaparken * karakterini silmeyi de ayarladım. =)

İkinci sütuna ekleyeceğin kanallar taramanın aktif olacağı kanallardır. (Ama tabii ki hala manuel olarak herhangi başka bir kanala /tara #kanal komutu ile tarama yaptırabilirsin.)

Üçüncü sütuna ekleyeceğin kanallar da sajoin yapmayı istediğin cinsellik kanalların olacak. Bu sütuna eklediğin kanallar kanaldan akick ya da mode/kick ile atılan kişilerin çekileceği kanallar olacak.

Diyalog üzerinden ban sebebini ve operken sajoin seçeneğini ayarladıktan sonra taraman kullanıma hazır olacak.

Kolay ulaşım için kanal genelinde sağ klik menüsüne tarama ve tarama ayarları menüsünün kısayolunu ekledim. Oradan ulaşabilirsin diyaloga ya da tarama yaptırabilirsin bulunduğun kanala.

Kanala girişinden 3 sn. sonra taramayı başlatmasını ayarladım. Bazen 1-2 saniyeyi alabiliyor CS'den OP almak. Bu süreyi kendin de değiştirebilirsin. Kod içerisinde yeşil olarak işaretledim.

Umarım bu sefer istediğin gibidir. ;=) Kolay gelsin.

Kod:

dialog badnick {
  title "BadNick Tarama"
  size -1 -1 237 150
  option dbu
  edit "", 1, 10 15 50 10
  list 2, 10 25 50 85, size extsel
  box "BadNick", 3, 5 5 73 110
  button "+", 4, 63 15 10 10
  button "-", 5, 63 30 10 10
  box "Tarama Kanalları", 6, 82 5 73 110
  list 7, 87 25 50 85, size extsel
  edit "", 8, 87 15 50 10
  button "+", 9, 140 15 10 10
  button "-", 10, 140 30 10 10
  box "Cinsellik Kanalları", 11, 159 5 73 110
  list 12, 164 25 50 85, size extsel
  button "+", 13, 217 15 10 10
  button "-", 14, 217 30 10 10
  edit "", 15, 164 15 50 10
  check "Opersem tarama kanallarında DEOP durumumda akick yerine 'mode/kick' ile ban atılsın.", 16, 5 135 225 10
  text "Ban Sebebi:", 17, 5 121 30 8
  edit "", 18, 35 120 197 10
}
on *:dialog:badnick:init:*:{
  if $file(system\badnick.txt) {
    var %x = 1 | while %x <= $lines(system\badnick.txt) {
      didtok $dname 2 32 $read(system\badnick.txt),%x) | inc %x
    }
  }
  $iif(%bn_kanal,didtok $dname 7 44 %bn_kanal)
  $iif(%bn_cinsellik,didtok $dname 12 44 %bn_cinsellik)
  $iif(%bn_oper,did -c $dname 16)
  $iif(%bn_sebep,did -a $dname 18 %bn_sebep)
}
on *:dialog:badnick:sclick:4,5:{
  set %bn_list 1
  if $did == 4 { did -a $dname 2 $remove($did(1),*) | did -r $dname 1 }
  if $did == 5 {
    if $did(2,0).sel > 1 { var %y = $did(2,0).sel | while %y { did -d $dname 2 $did(2,%y).sel | dec %y } }
    else { did -d $dname 2 $did(2).sel }
  }
}
on *:dialog:badnick:sclick:9,10,13,14:{
  if $did == 9 { did -a $dname 7 $iif($left($did(8),1) != $chr(35),$+($chr(35),$did(8)),$did(8)) | did -r $dname 8 }
  if $did == 10 {
    if $did(7,0).sel > 1 { var %y = $did(7,0).sel | while %y { did -d $dname 7 $did(7,%y).sel | dec %y } }
    else { did -d $dname 7 $did(7).sel }
  }
  if $did == 13 { did -a $dname 12 $iif($left($did(15),1) != $chr(35),$+($chr(35),$did(15)),$did(15)) | did -r $dname 15 }
  if $did == 14 {
    if $did(12,0).sel > 1 { var %y = $did(12,0).sel | while %y { did -d $dname 12 $did(12,%y).sel | dec %y } }
    else { did -d $dname 12 $did(7).sel }
  }
}
on *:dialog:badnick:sclick:16:{ if %bn_oper { unset %bn_oper | did -u $dname 16 } | else { set %bn_oper 1 | did -c $dname 16 } }
on *:dialog:badnick:close:*:{
  if %bn_list {
    write -c system\badnick.txt
    var %u = 1 | while %u <= $did(2).lines {
      write system\badnick.txt $did(2,%u) $did(2,$calc(%u + 1)) $did(2,$calc(%u + 2)) $did(2,$calc(%u + 3)) | inc %u 4
    }
    unset %bn_list
  }
  unset %bn_kanal | unset %bn_cinsellik
  var %ı = 1 | while %ı <= $did(7).lines { set %bn_kanal $addtok(%bn_kanal,$did(7,%ı),44) | inc %ı }
  var %o = 1 | while %o <= $did(12).lines { set %bn_cinsellik $addtok(%bn_cinsellik,$did(12,%o),44) | inc %o }
  set %bn_sebep $did(18)
}
alias tara {
  var %bn_liste = system\badnick.txt
  if !$2 {
    var %x = 1 | while $read(%bn_liste,%x) {
      set -u5 %bad $+(/,$chr(40),$replace($read(%bn_liste,%x),$chr(32),$chr(124)),$chr(41),/i)
      var %y = 1 | while $nick($1,%y) {
        if ($regex($nick($1,%y),%bad)) {
          if ($me isop $1) || ($me ishop $1) {
            mode $1 +b $+(*,$regml(1),*) | kick $1 $nick($1,%y) %bn_sebep
            $iif(%bn_oper && o isincs $usermode,sajoin $nick($1,%y) $+(0,%bn_cinsellik))
          }
          else {
            .cs akick $1 add $+(*,$regml(1),*!*@*) %bn_sebep
            set %bn_akick $addtok(%bn_akick,$+(*,$regml(1),*!*@*),44)
            $iif(%bn_oper && o isincs $usermode,sajoin $nick($1,%y) $+(0,%bn_cinsellik))
          }
        }
        inc %y
      }
      inc %x
      if %x > $lines(%bn_liste) && %bn_akick { var %k = $1 | .cs akick $1 enforce
      tokenize 44 %bn_akick | .cs akick %k del $* | unset %bn_akick }
    }
  }
  else {
    var %z = 1 | while $read(%bn_liste,%z) {
      set -u5 %bad $+(/,$chr(40),$replace($read(%bn_liste,%z),$chr(32),$chr(124)),$chr(41),/i)
      if ($regex($2,%bad)) {
        if ($me isop $1) || ($me ishop $1) {
          mode $1 +b $+(*,$regml(1),*) | kick $1 $2 %bn_sebep
          $iif(%bn_oper && o isincs $usermode,sajoin $nick($1,%y) $+(0,%bn_cinsellik))
        }
        else {
          .cs akick $1 add $+(*,$regml(1),*!*@*) %bn_sebep
          .cs akick $1 enforce | .cs akick $1 del $+(*,$regml(1),*!*@*)
          $iif(%bn_oper && o isincs $usermode,sajoin $nick($1,%y) $+(0,%bn_cinsellik))
        }
      }
      inc %z
    }
  }
}
on *:join:%bn_kanal:{ if $nick == $me { .timer 1 3 tara $chan } | else { tara $chan $nick } }
menu channel {
  -
  BadNick Taraması Yap ( $+ $active $+ ): tara $chan
  BadNick Tarama Ayarları: dialog $iif(!$dialog(badnick),-m badnick,-v) badnick
  -
}


sEntieL 20 Mart 2013 16:26

Cevap: Badnick kasmayan tarama ve cs atma
 
usta çok güzel oldu bunu dahada geliştirip

karaliste fullname ident küfür kısımlarıda ekleyebilirmiyiz tabi ban sebep kısımlarınıda yazabilirsek on numara olur

birde op halftop vs olduğunda otomatik tara butonu yapabilirmiyiz buna

hocam ve ayrıca hiç denk gelmedim badnickler kanala girdiğinde atıyormu sadece tarama yapıncamı atılıor eğer atmıyorsa onuda ayarlarsan memnun olurum

cs akick ile atılacak kanalları ben yazarım yaptığın buton gibi eklerim diğerlerinde zaten op olunca atacak

eklediğim badnickleri listede çifter 3er 5 er görüyorum 2 kere farklı farklı açtığımda bi görünüyor bir görünmüyor görünenlerde çifter 3er beşer olarak görünüyor diğerleride silinmiş oluyor :)

badnick listesindede alt alta değilde yanyana ekliyor sorun olur mu

son olarakta badnickleri oper olunca kanaldan at demişiz bunu 2 seçenekli yapabilirmiyiz kanallardan sapart yapıp belirlediğimiz cinsellik kanallarına yönlendirsek

belirttiğim kanallara girincede tarama yapmıyor

JohnGalt 20 Mart 2013 16:58

Cevap: Badnick kasmayan tarama ve cs atma
 
Listedeki nickleri yan yana eklemesi kodun özelliği. Tek sıradaki nickleri bir kerede aramaya sokuyor, o nedenle daha hızlı ve kasmadan arama yapmayı sağlıyor.

Kanala girişte nickleri atmayı yapıyor. Denk gelmemişsindir daha muhtemelen dediğin gibi. Herhangi bir uyuşma yakaladığında kanaldaki moduna göre ya akick ya da mode/kick ile atar kanaldan belirlediğin sebeple birlikte.

OP ya da halfop olduğunda tarama yapmasının gereğini anlamadım açıkçası. Çünkü zaten kanala girişinde tam tarama yapıyor, kanalda bulunduğun sürece akick ile ya da mode/kick ile atarak kanalı sürekli korumada tutuyorsun. OP'a ya da HalfOP'a geçince tekrar tam tarama yapmana o nedenle gerek yok.

Karalisteden kastını anlamadım. O terimi bilmiyorum açıkçası; açıklarsan o konuda da geliştirmeler yapabiliriz.

Fullname için illa ki servere istek gönderip karşılığında gelen sonuçtan verileri alarak taramaya sokabilirsin. Ama bu da senin ilk başta "mIRC kasmayan tarama" olarak koyduğun kriterden caymanı gerektirebilir.

Eğer bu fullname, ident ve nick taramalarını aynı listeden yaptırmayı planlıyorsan yine bir nebze ama apayrı listeler düşünüyorsan yine kasmaya yol açabilir.

Küfür koruması için de bir şeyler ayarlayabiliriz ama o da biraz sıkıntılı olabilir; nedeni ise örneğin TR karakter kullanmayan bir kullanıcının "sıkıldım" yazması bile korumaya takılabilir. Zira ı yerine i harfi kullanacağı için hedef kelime ile çakışıyor. ;=)

Ama "ben yine de istiyorum, deneyeyim de kasarsa kullanmam" diyorsan istediklerini daha detaylı bir şekilde belirtirsen yardımcı olurum.


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

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