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/)
-   -   tekrar koruması sorun nerede (https://www.ircforumlari.net/mirc-scripting-sorunlari/55918-tekrar-korumasi-sorun-nerede.html)

sniper 28 Nisan 2008 15:17

tekrar koruması sorun nerede
 
on @*:text:*:#:if $prot(flood,#,$nick,3,4) { kick # $nick Flood yapma }
Yukardaki kod el33t e ait ama bi türlü çalıştıramadım nerde sorun anlayamadım yardımcı olurmusunuz ustalar şimdiden teşekkürler;oki

XcLusive 28 Nisan 2008 15:53

Cevap: tekrar koruması sorun nerede
 
"alias prot" parametresi eklimi script'inde ?

sniper 29 Nisan 2008 13:24

Cevap: tekrar koruması sorun nerede
 
hayır değil. nasıl ekleye biliriz dai şimdiden teşekkürler ;oki

Regex 29 Nisan 2008 17:16

Cevap: tekrar koruması sorun nerede
 
el33t üstadın yazdığı o kodda ($prot identifierı), muhakkak alias da vardır. Böyle tek başına çalışmaz zaten.

Kodu aldığın başlığı dikkatli incele ve oradan /prot aliasını mIRC'ine ekle.

Sinbat 29 Nisan 2008 18:17

Cevap: tekrar koruması sorun nerede
 
alias prot {
on @*:text:*:#:if $prot(repeat,#,$nick,$1-,2,5) { kick # $nick Tekrar etme! }
}

Bende bu şekilde yaptım bende de çalışmadı

sniper 29 Nisan 2008 18:41

Cevap: tekrar koruması sorun nerede
 
Evet aşağıdaki $prot() identiferı kanalınız için bir koruma identifierıdır. Kullanımı çok basit.
İçinde olan korumalar;
Tekrar koruması
$prot(repeat,#kanal-adı,nick,mesaj,satır,saniye)
Örnek: $prot(repeat,#ircforumlari,el33t,selam naber,2,5) bu identifierı on TEXT eventi içinde kullandığımızda 5 saniye içinde 2 kez selam naber yazısını tekrar edersem bu identifier $true olacaktır, yani şöyle kullanabiliriz:
on @*:text:*:#:if $prot(repeat,#,$nick,$1-,2,5) { kick # $nick Tekrar etme! }
Flood koruması
$prot(flood,#kanal,nick,satır,saniye)
Örnek:
on @*:text:*:#:if $prot(flood,#,$nick,3,4) { kick # $nick Flood yapma }
Yukardaki kod 4 saniye içinde 3 satır yazı yazanı kanaldan kickler.
Caps koruması
Belirlediğiniz orandan fazla büyük harf kullananlar içindir
$prot(caps,mesaj,oran)
Örnek:
on @*:text:*:#:if $prot(caps,$1-,80) { kick # $nick Büyük harf kullanma! }
Yazdığı yazının %80'inden fazlası büyük harf olan kişi kanaldan atılır.
Uzun yazı koruması
$prot(long,mesaj,karakter sayısı)
Örnek:
on @*:text:*:#:if $prot(long,$1-,150) { kick # $nick Uzun yazı yazma! }
150 karakterden fazla karakter içeren mesaj yazarsa kanaldan atılır
Kontrol kodu koruması
mIRC'de CTRL tuşlarına basınca çıkan kodlar içindir. (CTRL+K, CTRL+B, CTRL+U gibi)
Örnek:
on @*:text:*:#:if $prot(ctrlcode,$1-,15) { kick # $nick 15den fazla kontrol kodu kullanma! }
15'den fazla kontrol kodu kullanan kanaldan atılır.
Küfür koruması
$prot(bword,mesaj,dosya)
Örnek:
on @*:text:*:#:if $prot(bword,$1-,küfürler.txt) { kick # $nick Küfür etme! }
mIRC'de küfürler.txt dosyası oluşturup alt alta wildcardda kullanarak istediğin küfürleri eklediğinde eğer kişinin yazdığı yazıda bunlardan biri varsa kanaldan atılır. Küfürler.txt dosyasına ekleme şekli şöyle olmalı:
*****
*fuck*
*anan?*
gibi..
Reklam koruması
$prot(spam,mesaj,dosya)
Aynı küfür koruması gibi çalışır.
on @*:text:*:#:if $prot(spam,$1-,spam.txt) { kick # $nick Reklam yapma! }
spam.txt dosyasına wildcard kullanarak eklenen kelimeleri içeren mesaj yazan kanalan atılır.
Fazla Noktalama İşareti koruması
$prot(punc,mesaj,maksimum noktalama işareti sayısı)
Belirlenen sayıdan fazla noktalama işaretlerini kullananları kontrol etmek için identifierın punc özelliğini kullanabilirsiniz. Noktalama işaretleri: ?!:;,.
on @*:text:*:#:if $prot(punc,$1-,20) { kick # $nick Bu kadar fazla noktalama işareti kullanma! }
Yukardaki örnekte op olduğunuz kanalda 20'den fazla noktalama işareti kullananlar kanaldan atılır.
Ve işte kod: (Remote'a (ALT+R) koyuyoruz.)
alias prot {
if !$istok(repeat flood caps long ctrlcode bword spam punc,$1,32) { return $false }
goto $1
:repeat
var %÷ = $+(%,repeat.,$2,.,$3,.,$encode($4,m))
inc $(%÷,1)
if (!$timer($gettok(%÷,1,37))) { $+(.timer,$gettok(%÷,1,37)) 1 $6 unset $(%÷,1) }
if ($(%÷,2) >= $5) { unset $(%÷,1) | return $true }
else { return $false }
:flood
var %µ = $+(%,flood.,$2,.,$3)
inc $(%µ,1)
if (!$timer($gettok(%µ,1,37))) { $+(.timer,$gettok(%µ,1,37)) 1 $5 unset $(%µ,1) }
if ($(%µ,2) >= $4) { unset $(%µ,1) | return $true }
else { return $false }
:caps
var %e = $remove($strip($2),$chr(32))
return $iif($iif($len(%e) >= 10,$calc($regex(%e,/[A-ZÄÖÜĞÇİ]/g)/$len(%e)*100),0) >= $3,$true,$false)
:long
return $iif($len($strip($2)) >= $3,$true,$false)
:ctrlcode
return $iif($regex($2,/[[:cntrl:]]/g) >= $3,$true,$false)
:bword
var %· = 1 | while $read($3,%·) { if $v1 iswm $2 { return $true } | inc %· } | return $false
:spam
var %º = 1 | while $read($3,%º) { if $v1 iswm $2 { return $true } | inc %º } | return $false
:punc
return $iif($regex($2,/([?!:;,\.])/g) >= $3,$true,$false)
}

Umarım işinize yarar, istediğiniz gibi değiştirip, kullanmakta özgürsünüz. İsteyen ben yazdım diyebilir.
NOT: Şimdilik aklıma gelen korumalar bunlar, önerileriniz ve isteklerinizi belirtiniz.
Eğer hepsini bir on TEXT eventi içinde kullanmak isterseniz bir örnek: (küfürler.txt ve reklamlar.txt'i oluşturmayı unutmayın.)
;Op olduğum kanalda çalışması için
on @*:text:*:#:{
;Eğer kanala yazı yazan nick op/voice/halfop değilse
if ($nick isreg #) {
;150 karakterden fazla karakter kullanan kicklenir
if $prot(long,$1-,150) { kick # $nick uzunyazı(>150) }
;15'den fazla kontrol kodu kullanan kicklenir
elseif $prot(ctrlcode,$1-,15) { kick # $nick controlcode(>15) }
;%80 oranından fazla caps kullanan kicklenir
elseif $prot(caps,$1-,80) { kick # $nick caps(>%80) }
;5 saniye içinde 2 tekrar yapan kicklenir.
elseif $prot(repeat,#,$nick,$strip($1-),2,5) { kick # $nick tekrar(5sn:2) }
;1 saniye içinde 3 satır yazan kicklenir.
elseif $prot(flood,#,$nick,3,1) { kick # $nick flood(1sn:3) }
;küfürler.txt'den herhangi bir kelimeyi kullanan kicklenir
elseif $prot(bword,$1-,küfürler.txt) { kick # $nick küfür }
;reklamlar.txt'den herhangi bir kelime kullanan kicklenir
elseif $prot(spam,$1-,reklamlar.txt) { kick # $nick reklam }
;30'dan fazla noktalama işareti kullanan kicklenir
elseif $prot(punc,$1-,30) { kick # $nick noktalamaişareti(>30) }
}
}

burdan bunu anlıyorum

;Op olduğum kanalda çalışması için
on @*:text:*:#:{
;Eğer kanala yazı yazan nick op/voice/halfop değilse
if ($nick isreg #) {
;5 saniye içinde 2 tekrar yapan kicklenir.
elseif $prot(repeat,#,$nick,$strip($1-),2,5) { kick # $nick tekrar(5sn:2) }

on @*:text:*:#:{ if ($nick isreg #) { elseif $prot(repeat,#,$nick,$strip($1-),2,5) { kick # $nick tekrar(5sn:2) } } }

ben bunu anlıyorum. yanlışımız nerede anlayamadım yardımcı olan arkadaşlara şimdiden teşekkürler ;oki;oki;oki

Sinbat 29 Nisan 2008 18:47

Cevap: tekrar koruması sorun nerede
 
Kod:

alias prot {
if !$istok(repeat flood caps long ctrlcode bword spam punc,$1,32) { return $false }
goto $1
:repeat
var %÷ = $+(%,repeat.,$2,.,$3,.,$encode($4,m))
inc $(%÷,1)
if (!$timer($gettok(%÷,1,37))) { $+(.timer,$gettok(%÷,1,37)) 1 $6 unset $(%÷,1) }
if ($(%÷,2) >= $5) { unset $(%÷,1) | return $true }
else { return $false }
:flood
var %µ = $+(%,flood.,$2,.,$3)
inc $(%µ,1)
if (!$timer($gettok(%µ,1,37))) { $+(.timer,$gettok(%µ,1,37)) 1 $5 unset $(%µ,1) }
if ($(%µ,2) >= $4) { unset $(%µ,1) | return $true }
else { return $false }
:caps
var %e = $remove($strip($2),$chr(32))
return $iif($iif($len(%e) >= 10,$calc($regex(%e,/[A-ZÄÖÜĞÇİ]/g)/$len(%e)*100),0) >= $3,$true,$false)
:long
return $iif($len($strip($2)) >= $3,$true,$false)
:ctrlcode
return $iif($regex($2,/[[:cntrl:]]/g) >= $3,$true,$false)
:bword
var %· = 1 | while $read($3,%·) { if $v1 iswm $2 { return $true } | inc %· } | return $false
:spam
var %º = 1 | while $read($3,%º) { if $v1 iswm $2 { return $true } | inc %º } | return $false
:punc
return $iif($regex($2,/([?!:;,\.])/g) >= $3,$true,$false)
}

ben bunuda denedim tık yok çalışmıyo:)

XcLusive 29 Nisan 2008 18:52

Cevap: tekrar koruması sorun nerede
 
Kod:

alias prot {
if !$istok(repeat flood caps long ctrlcode bword spam punc,$1,32) { return $false }

bu satırı sonuna kadar alacaksın yani alias prot işlevini komple alman gerek..

Sinbat 29 Nisan 2008 18:59

Cevap: tekrar koruması sorun nerede
 
alias prot {
on @*:text:*:#:if $prot(flood,#,$nick,3,4) { kick # $nick Flood yapma }
}

buda çalışmıyo ben hiçbişey anlamadım

sniper 29 Nisan 2008 19:06

Cevap: tekrar koruması sorun nerede
 
alias prot {
if !$istok(repeat flood caps long ctrlcode bword spam punc,$1,32) { return $false }
on @*:text:*:#:{ if ($nick isreg #) { elseif $prot(repeat,#,$nick,$strip($1-),2,5) { kick # $nick tekrar(5sn:2) } } } }

buda olmadı :D abi bu el33t yanlış yapmaz ama biz nerede yanlış yapıyoz anlayamadım :D

XcLusive 29 Nisan 2008 19:13

Cevap: tekrar koruması sorun nerede
 
[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

düzgün bir şekilde okusanız?
en ufak birşeyde sıkışınca yardım istemeyin az çaba gösterin..
kod çalışıyor..

sniper 29 Nisan 2008 19:52

Cevap: tekrar koruması sorun nerede
 
valla haklısın halil üstat gözlerim ağrıdı okumaktan yinede bulamadım hatamızın nerede olduğuna tiyo ver bari :D inan çok aradım adam satır satır anlatmış çok süper ama nereyi eksik yapıyoz anlayamadım valla :D

Dependent 29 Nisan 2008 22:01

Cevap: tekrar koruması sorun nerede
 
Senin yazdığın ile biz ancak kurt kuranı okuruz burada,
sen yaptıklarını sırası ile ayrıntılı bir yaz bakalım hatan nerede ona göre bulunsun?
zira kod gayet düzgün.

Sinbat 30 Nisan 2008 11:26

Cevap: tekrar koruması sorun nerede
 
Kod:


alias prot {
  if !$istok(repeat flood caps long ctrlcode bword spam punc,$1,32) { return $false }
  goto $1
  :repeat
  var %÷ = $+(%,repeat.,$2,.,$3,.,$encode($4,m))
  inc $(%÷,1)
  if (!$timer($gettok(%÷,1,37))) { $+(.timer,$gettok(%÷,1,37)) 1 $6 unset $(%÷,1) }
  if ($(%÷,2) >= $5) { unset $(%÷,1) | return $true }
  else { return $false }
  :flood
  var %µ = $+(%,flood.,$2,.,$3)
  inc $(%µ,1)
  if (!$timer($gettok(%µ,1,37))) { $+(.timer,$gettok(%µ,1,37)) 1 $5 unset $(%µ,1) }
  if ($(%µ,2) >= $4) { unset $(%µ,1) | return $true }
  else { return $false }
  :caps
  var %e = $remove($strip($2),$chr(32))
  return $iif($iif($len(%e) >= 10,$calc($regex(%e,/[A-ZÄÖÜĞÇİ]/g)/$len(%e)*100),0) >= $3,$true,$false)
  :long
  return $iif($len($strip($2)) >= $3,$true,$false)
  :ctrlcode
  return $iif($regex($2,/[[:cntrl:]]/g) >= $3,$true,$false)
  :bword
  var %· = 1 | while $read($3,%·) { if $v1 iswm $2 { return $true } | inc %· } | return $false
  :spam
  var %º = 1 | while $read($3,%º) { if $v1 iswm $2 { return $true } | inc %º } | return $false
  :punc
  return $iif($regex($2,/([?!:;,\.])/g) >= $3,$true,$false)
}
on *:text:*:#:{
  if $prot(repeat,#,$nick,$1-,2,5) { .ban -k # $nick 2 Tekrar etme! }
  elseif $prot(flood,#,$nick,3,4) { .ban -k # $nick 2 Flood yapma }
  elseif $prot(caps,$1-,80) { .ban -k # $nick 2 Büyük harf kullanma! }
  elseif $prot(long,$1-,20) { .ban -k # $nick 2 Uzun yazı yazma! }
  elseif $prot(bword,$1-,kufur.txt) { .ban -k # $nick 2 Kufur etme! }
}

bu şekilde çalışıyo denedim sniper hatayı buldum yaptığımız sende gör:)

sniper 30 Nisan 2008 11:49

Cevap: tekrar koruması sorun nerede
 
yavaş yavaş anlıyorum :D evet;oki

Sinbat 30 Nisan 2008 12:20

Cevap: tekrar koruması sorun nerede
 
Kod:


alias prot {
  if !$istok(flood punc,$1,32) { return $false }
  goto $1
  :flood
  var %µ = $+(%,flood.,$2,.,$3)
  inc $(%µ,1)
  if (!$timer($gettok(%µ,1,37))) { $+(.timer,$gettok(%µ,1,37)) 1 $5 unset $(%µ,1) }
  if ($(%µ,2) >= $4) { unset $(%µ,1) | return $true }
  else { return $false }
}
on *:text:*:#:{
  if $prot(flood,#,$nick,3,4) { .ban -k # $nick 2 Flood yapma }
}

Buda sadece istediğin flood koruması:)

Dependent 30 Nisan 2008 12:57

Cevap: tekrar koruması sorun nerede
 
sadece flood korumasında goto ya gerek yok onu
Kod:

alias prot {
  var %µ = $+(%,flood.,$1,.,$2)
  inc $(%µ,1)
  if (!$timer($gettok(%µ,1,37))) { $+(.timer,$gettok(%µ,1,37)) 1 $4 unset $(%µ,1) }
  if ($(%µ,2) >= $3) { unset $(%µ,1) | return $true }
  else { return $false }
}
on *:text:*:#:{
  if $prot(#,$nick,3,4) { .ban -k # $nick 2 Flood yapma }
}

şeklinde değiştirirsek daha mantıklı olur ;oki

sniper 30 Nisan 2008 14:30

Cevap: tekrar koruması sorun nerede
 
tamam ben bu işi anladım 1 sorum daha olacak renk kontrol kodu çalışmıyor denedim olmuyo diğer korumaların hepsi çalışıyor tek tek denedim
şöyle yaptım örnek:
deneme bilemem ne falan filan gibi

15 den fazla oluyo ama hiç bir tepki vermiyor neden acaba

sniper 03 Mayıs 2008 12:06

Cevap: tekrar koruması sorun nerede
 
el33t ustamdan özür diliyorum :D renk korumasıda çalışıyormuş


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

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