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/)
-   -   Çözüldü sockbot yardim (https://www.ircforumlari.net/mirc-scripting-sorunlari/872883-sockbot-yardim.html)

sdsng 13 Haziran 2020 19:26

sockbot yardim
 
Merhaba,

bot servera baglandiktan sonra otomatik kanallara girmesinden sonra benim kanal.txt içerisinde yazdiğim kanallar haricindeki kanallardan cikmasini istiyorum. aslinda cikiyor ancak kanallar.txt içerisindeki kanallardan da cikiyor. bu sorunu nasil giderebilirim?

Kod:

  if $2 == 366 {
    if $4 !== $read(kanallar.txt,w,$remove($4,:)) {
      komut part $4
    }
  }


Toprak 14 Haziran 2020 12:06

Cevap: sockbot yardim
 
Alıntı:

sdsng Nickli Üyeden Alıntı (Mesaj 1042322590)
çözdüm, kapanabilir.

Merhaba,
Çözmüşsünüz ama yinede bilgilendirme olarak ekliyelim;

TXT üzerinde sorgu yapmak için; $read(metin.txt,w,SORGU) olarak kullanılır.
Yani sizin kod tam olarak şöyle;

Kod:

if $2 == 366 {
  if !$read(kanallar.txt,w,$4) { komut part $4 }
}


Alper 30 Haziran 2020 21:32

Cevap: sockbot yardim
 
Alıntı:

sdsng Nickli Üyeden Alıntı (Mesaj 1042329814)
Merhabalar,

Farklı bir konu açmak yerine mevcut konum üzerinden bir soru sormak istiyorum.

Aşağıdaki gibi botun özeline 10'dan fazla aynı kişiden gelen bir yazı dizisinde flood olarak algılayıp kendini +RD moduna aldırıyorum. Bu koda nickserv, chanserv veya X nickten gelen bir mesaj ise yoksay dedirtmek istiyorum. Bu konuda yardımcı olabilir misiniz?

Kod:

  if $2 == PRIVMSG {
    if #* !iswm $3 {
      if * iswm $4- {
        .inc -u3 $+(%,ozflood,.,$remove($gettok($1,1,33),:))
        if $($+(%,ozflood,.,$remove($gettok($1,1,33),:)),2) > 10 {
          swbot privmsg $operchan Özel Flood Korumasi Aktif. $botnick +RD moduna alınmıştır.
          swbot mode $botnick +RD
          .timer 1 60 swbot mode $botnick -RD
        }
        else {
          write txt/kayit.txt - $date - $time - $remove($gettok($1,1,33),:) --> $remove($4-,:)
        }





Kod:

if $2 == PRIVMSG {
  if (#* !iswm $3) && (* iswm $4-) {
  if !$istok(nickserv chanserv operserv x,$remove($gettok($1,1,33),:),32) {
      .inc -u3 $+(%,ozflood,.,$remove($gettok($1,1,33),:))
      if $($+(%,ozflood,.,$remove($gettok($1,1,33),:)),2) > 10 {
        swbot privmsg $operchan Özel Flood Korumasi Aktif. $botnick +RD moduna alınmıştır.
        swbot mode $botnick +RD
        .timer 1 60 swbot mode $botnick -RD
      }
      else {
        write txt/kayit.txt - $date - $time - $remove($gettok($1,1,33),:) --> $remove($4-,:)
      }


Parantez ekleme çıkarma yapmadım ki aynı şekilde değiştirmen için. Bir parantezin eksik veya fazla olması sorun yaratabilir.

diEfoRyoU 30 Haziran 2020 21:32

Cevap: sockbot yardim
 
Bu koda göre zaten ChanServ ve NickServ'ün yazdığı mesajlar dikkate alınmaz.
Çünkü bahsi geçen servisler NOTICE ile mesaj yolluyorlar.

X nicki için ise,

Kod:

if $2 == PIRVMSG {
ile başlayan satırın hemen altına

Kod:

if $gettok($remove($1,:),1,33) == X { return }
satırını ekleyebilirsin.

ama ben X1 X2 X3 nickleride muaf kalmasını istiyorum diyorsan
ilk verdiğim yamanın yerine;
Kod:

if $istok(X1 X2 X3,$gettok($remove($1,:),1,33),32) { return }
satırını eklemen gerekiyor

Alper 30 Haziran 2020 23:29

Cevap: sockbot yardim
 
Alıntı:

sdsng Nickli Üyeden Alıntı (Mesaj 1042329904)
Teşekkürşer Alper, kod çalıştı.
Farklı bir soru sormak istiyorum. Sockbot diğerleri gibi 10 satır yazıyı aynı anda değil, 4-5 satırı bir anda, diğerlerini tane tane getiriyor. Buradaki hız kodlardan kaynaklı mıdır? Yoksa farklı bir durum söz konusu mudur? Özetlemek gerekirse fazla satırları aynı anda yazamıyor.


Oper girmiyor mu bot? Oper olmadığında o şekilde sorun oluyor diye biliyorum.


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

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