![]() |
|
|||||||
| mIRC Scripting Dersleri mIRC veya IRC komutları hakkında detaylı anlatı, bilgi. |
![]() |
|
|
LinkBack | Seçenekler | Stil |
|
|
#1 (permalink) |
|
Giriş Tarihi: 30-06-2008
Yaş: 23
Mesajlar: 359
Ruh Hali:
İtibar Gücü: 5
Rep Puanı : 30
Rep Derecesi :
![]()
|
Rawlarla işlem yapmak
Öncelikle raw nedir onu bir açıklayalım. Raw sunucu tarafından size gönderilen mesajlardır. Bunların chanserv nickserv gibi servislerle alakası yoktur. Farkında olmadan chat yaptığımız her saniye aslında raw'ları kullanırız. Örneğin bir kanala mesaj yazdığınızda hiçbir komut kullanmıyormuşuz gibi sanıyorsak da mIRC bizim yerimize sunucuya "/raw privmsg #kanal selam millet" komutunu gönderir. Kanala bir mesaj geldiğinde ise sunucu bize ":nick!ident@IP PRIVMSG #deneme :selam" şeklinde bir mesaj yollar. mIRC de bu mesajı otomatikman yorumlayarak #deneme kanalında nick isimli kişinin selam yazdığını gösterir. Aslında çoğumuzun kullandığı /nick /join gibi komutlar mIRC komutları değildir. mIRC'e bir komut girdiğinizde mIRC önce kendi kodları arasında böyle bir komut olup olmadığına bakar, yoksa komutu raw mesajı olarak sunucuya yollar. Örneğin siz /umode +m yazdığınızda mIRC'de böyle bir komut olmadığı için mIRC komutu düzenleyerek /raw umode +m şeklinde yollar. Çoğu arkadaş raw mesajları ile servis mesajlarını karıştırıyorlar. Aslında çok kolay bir şekilde ayırt etmek mümkündür. Örneğin: [18:51:23] * You were kicked from #deneme by denemeee (denemeee) bu mesaj sunucudan gelen raw mesajının mIRC tarafından yorumlanmış halidir. Şimdi bir de notice örneği görelim: [18:54:40] -ChanServ- #deneme kanali kayitli degil. Bu ise bir servis mesajıdır. Aralarındaki farkı çok rahat anlayabilirsiniz, servis mesajına baktığınızda tire (-) işaretleri arasına alınmış bir sunucu ismi veya servis ismi görürsünüz: [18:43:36] -irc.xxx.xxx- Setting/removing of usermode(s) 'ixBwCs' has been disabled. Raw mesajlarında ise servis ismi veya sunucu ismi yoktur: Current Local Users: 33 Max: 77 Current Global Users: 57 Max: 64 End of /MOTD command. [18:52:42] #deneme unable to join channel (address is banned) Raw mesajı ile servis mesajları için son olarak örnek bir sunucuya girerek çıkan mesajları ayıklayalım: [18:43:34] * Connecting to irc.xxx-xxx.net (6667) [18:43:35] [IRC FINGER] (RAW) [18:43:35] [IRC PING] (RAW) [18:43:35] [Version VERSION] (RAW) [18:43:35] -xxx.xxx.Net- *** Version Korumasindan Geciyorsunuz. (SERVİS) [18:43:35] -xxx.xxx.Net- *** Version Cevabi Alindi. (SERVİS) There are 22 users and 35 invisible on 2 servers (RAW) 11 operator(s) online 29 channels formed I have 33 clients and 1 servers Current Local Users: 33 Max: 77 (RAW) Current Global Users: 57 Max: 64 Message of the Day, xxx.xxx.Net (RAW) - • GeneL Sunucu KuraLLarı - - 1. T.C Devleti ve yoneticilerine Saygısızlık (hakaret etmek) - 2. Sunucu Yoneticilerine hakaret etmek. - 3. Sunucuda politik, onur kırıcı nick ve kanalları kullanmak. - 4. Clone, proxy, trojan, izinsiz reklam/inviter botu sokmak, - 5. Web Site veya Sunucu Reklamı yapmak. - 6. Aşırı derecede Kanal reklamı yapmak. - 7. Küfretmek, Flood yapmak. - 8. Kufurlu kick/akick/away/to*** (kanal başlığı) atmak. - 9. Yönetimden ısrarla OP, IRCOP, Helper istemek. - 10. Kanal genelinde TÜRKÇE harici bir dil ile konuşmak. - 11. Kanal Genelinde Siyaset, Politika YASAKTIR. - 12. Sunucuya giren her kullanici bu kurallari kabul etmis demektir. End of /MOTD command. (RAW) [18:36:08] * denemeee sets mode: +iwxt (RAW) [18:36:08] -Global- [Logon Haberler - Ksm 20 2006] Güvenlik hatırlatması: (SERVİS) [18:36:08] -ChanServ- (#Zurna) (SERVİS) [18:36:08] -ChanServ- (#oyun) (SERVİS) [18:36:09] -xxx.xxx.Net- Setting/removing of usermode(s) 'ixBwCs' has been disabled. (SERVİS) Artık raw mesajları ile servis mesajlarını ayırabildiğimize göre, nasıl faydalanabileceğimizden bahsedelim. Şüphesiz rawların en çok işimize yaradığı amaç mIRC'in el atmadığı çoğu raw mesajını kullanarak otomatik işlem yapabilen bir mIRC yaratmaktır. Buna genelde script adı verilse de benim burada öğretmeyi amaçladığım şey script yazmak değil, basit kodlarla mIRC'i daha kullanışlı hale getirmektir Şimdi de aşama aşama mIRC nasıl daha kullanışlı hale getirilebilir ondan bahsedelim. 1- Hayal kurma: mIRC 15 dk'yı geçen banları kontrol edip süresi dolanları kendisi açsa ne güzel olurdu 2- Plan & Proje: /mode #kanal +b yazdığımızda banları görebiliyoruz, eğer bu raw mesajlarını ayıklayabilirsem mIRC'e her dakika banları kontrol ettirmesini sağlayabilir, süresi dolanları açtırabilirim. 3- Kullanacağımız raw mesajını bulma: A- Bu bölümde daha önceden yazdığım bir kodu kullancağız: raw *:*:{ haltdef var %x = $numtok($1-,32) var %y = 1 while %y <= %x { echo -a Raw numarası: $numeric $+(%y,.) Değer: $gettok($1-,%y,32) inc %y } echo -a *** } Bu kodu mIRC'imize ekliyoruz. Ekledikten sonra /mode #kanal +b yapıyoruz. B- Bu kod sayesinde normalde; denemeee #deneme *!*@D302D439.13AC6357.99661133.IP denemeee 1165164794 bu şekilde gelecek olan mesaj, daha basit kullanmak için şu şekilde gelecektir: Raw numarası: 367 1. Değer: denemeee Raw numarası: 367 2. Değer: #deneme Raw numarası: 367 3. Değer: *!*@D302D439.13AC6357.99661133.IP Raw numarası: 367 4. Değer: denemeee Raw numarası: 367 5. Değer: 1165164794 *** Önce mesajın içeriğini kavrayalım. 367 mesajda da yazdığı gibi raw mesajının numarası, yani kodumuz raw 367:*:{ şeklinde başlayacak. 1. değerim kendi nickimiz. 2. değer ban listesine baktığımız kanalın adı. 3. değer banmask, yani açacak olduğumuz banın IPsi, nicki vs. 4. değerimiz banlayan kişi. 5 değerimiz ise banın atıldığı zaman. Not: 5. değerdeki zaman 1 Ocak 1970 tarihinden banın atıldığı dakikaya kadar geçen saniyeyi belirtir. Bunu normal tarih standartına çevirmek için $asctime(1165164794), şu anki bulunduğumuz tarih saat dakika ve saniyeyi o değere çevirmek için $ctime kullanılır. 4- Mantığı oluşturuyoruz: 367. raw mesajı geldiğinde şu anki zamanı raw mesajındaki zaman biçimine dönüştürdüğümüzde eğer şu anki zaman raw mesajındakinden 900 fazla ise (veya daha da fazla) ise 2. değerdeki kanalda 3. değerdeki banmask'i açacağız. Ayrıca kanalda akickler de olduğu için onların süresinin dolmasını beklemesi mantıksız. O yüzden chanserv'in attığı banları süresi dolmadan açacağız, yani 4. değer chanserv ise süreye bakmadan direkt olarak aç diyeceğiz. 5- Kodluyoruz: raw 367:*:{ ;raw mesajını kullanmaya başladık haltdef ;raw mesajını kontrolümüze aldık ve başka bir işlem yapmasını engelledik if ($4 == chanserv) { mode $2 -b $3 } ;eğer 4. değer chanserv ise $2 kanalında $3 mask'inin banını aç elseif ($calc($5 + 900) >= $ctime) { mode $2 -b $3 } ;yukarıdaki if durumu geçersizse ve 5. değere 900 eklediğimizde $ctime değerinden büyük oluyorsa veya eşit oluyorsa $2 kanalında $3 mask'inin banını aç else { echo -s Kanal: $2 Banlanan: $3 Banlayan: $4 Ban tarihi: $asctime($5) } } ;hiçbiri değilse statüste kanalı banlayanı ban tarihini göster İşte kodumuz: raw 367:*:{ haltdef if ($4 == chanserv) { mode $2 -b $3 } elseif ($calc($5 + 900) >= $ctime) { mode $2 -b $3 } else { echo -s Kanal: $2 Banlanan: $3 Banlayan: $4 Ban tarihi: $asctime($5) } } Alıntıdır ..
__________________
Kod:
By SinnéR |
|
|
|
![]() |
| Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir) | |
| Seçenekler | |
| Stil | |
|
|
Benzer Konular
|
||||
| Konu | Konuyu Başlatan | Forum | Cevaplar | Son Mesaj |
| Sizi neler bekliyor? | IRCForumda | Genel ve Güncel Konular, Son Haberler | 0 | 21-02-2009 11:59 |
| 3G hayatımıza neler katacak? | IRCForumda | Genel ve Güncel Konular, Son Haberler | 0 | 30-11-2008 13:07 |
| Obama neler tavsiye ederdi? | IRCForumda | Genel ve Güncel Konular, Son Haberler | 0 | 14-11-2008 03:40 |
| Direkhizmet.CoM | IRCD Kampanya | 20 YTL Neler Alabilirsiniz ? | DirekHizmet | Shell - Hosting Firmaları | 0 | 10-11-2008 06:43 |
| Bebeğiniz neler yapabilir? | Stripling | Aile Evlilik ve Çocuklar | 0 | 16-10-2008 17:42 |
| Bağlantılar | Temel Forum Bilgileri ve Yasal Uyarılar |
|
IRCForumda.Net, vBulletin® 3.8.3 altyapısı kullanılarak tasarlanmıştır.
Telif hakkı ©2000-2012, Jelsoft Enterprises Ltd. şirketine aittir. Site açıklaması: IRC Forum Sitesi - IRC sunucuları, mIRC Scripting, IRCd yardım, Webmaster ve her tür forumlara yer veren IRC forumu! IRCForumda.Net, bir forum sitesi olduğu için kullanıcılar her türlü görüşünü, onay beklemeksizin siteye ileti olarak gönderebilmektedir. 5651 sayılı yasaya göre bu yazılardan doğabilecek tüm sorumluluk ilgili kullanıcıya ait olup, yine 5651 sayılı yasaya göre sitemiz, iletileri kontrol etmekle yükümlü değildir. Forum yöneticilerinin gözünden kaçan bu tür durumlarda, şikâyetlerinizi admin@ircforumda.net elektronik posta adresine bildirirseniz gerekli işlemler iki iş günü içerisinde forum sorumlularınca gerçekleştirilecektir. |