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/)
-   -   Mırc Kodu Socket Cevirme (https://www.ircforumlari.net/mirc-scripting-sorunlari/829798-mirc-kodu-socket-cevirme.html)

RahmetLi 19 Temmuz 2019 21:00

Mırc Kodu Socket Cevirme
 
S.a Arkadslar Çok Ugrastım ama Beceremedım Aşagıdakı Kodu Sockete Çevirmek istiyorum sürekli hata verdi Coder arkadaslarımız yardımcı olursa cok sevınırım tşkler simdiden kolay gelsın..


Kod:

alias renkle { if $istok(1 2 3 ,$1,32) { msg #SohbetLi 4 $+ $1 $+ )4 $2 2---> Satır :4 $3 } | else { msg #SohbetLi $1 $+ )2 $2 ---> Satır :5 $3 } }
on *:text:*:#SohbetLi:{
  if $istok(irc.SohbetLi.Org  chanserv OperServ SohbetLi-DUYURU Eglence Nickserv SohbetLi Nomercy,$nick,32) { return }
  if !geveze* iswm $1- {  { top10 | goto t0p10 }
    elseif !$read(puan/sohbet.txt,w,$+(*,$2,*)) { msg #SohbetLi $chan $2 puan listesinde yok }
    elseif ($2 == $me) { msg #SohbetLi | goto t0p10 }
    elseif ($2 == $nick && $read(puan/sohbet.txt,w,$+(*,$2,*))) { msg #SohbetLi $chan $read(puan/sohbet.txt,$readn) puanı var | goto t0p10 }
  }
  alias top10 {
  var %cnk = @dify, %hit = 10, %e = puan/sohbet.txt, %top10 = 1
  window -hn %cnk
  filter -fwcteu 2 32 %e %cnk
  msg #SohbetLi 5 ***4 #SohbetLi 2Kanalı Günün Gevezeleri 5 ***
  msg #SohbetLi 3-
  msg #SohbetLi 5SohbetLi ORG 3[2NoMercy Puan Sistemi3]
  while %top10 <= %hit { renkle %top10 $line(%cnk,%top10) | inc %top10 }
  window -c %cnk
}


diEfoRyoU 20 Temmuz 2019 22:44

Cevap: Mırc Kodu Socket Cevirme
 
Kod:

if $2 = privmsg && *#sohbetli* iswm $3 {
  if $istok(irc.SohbetLi.Org  chanserv OperServ SohbetLi-DUYURU Eglence Nickserv SohbetLi Nomercy,$gettok($remove($1,:),1,33),32) { return }
  if !geveze* iswm $4- {  top10 | goto t0p10 }
    elseif !$read(puan/sohbet.txt,w,$+(*,$5,*)) { sockwrite -nt nomercy privmsg #SohbetLi $3 $5 puan listesinde yok }
  ;  elseif ($2 == $me) {  goto t0p10 }
    elseif ($5 == $gettok($remove($1,:),1,33) && $read(puan/sohbet.txt,w,$+(*,$5,*))) { sockwrite -nt nomercy privmsg #SohbetLi $3 $read(puan/sohbet.txt,$readn) puanı var | goto t0p10 }
  }

değiştirilmesi gereken yerlerleri değiştirdim sanırım bu puan sistemi !puan nick şeklinde çalışıyor. eğer öyle ise bu şekilde çalışması lazım(kodu denemedim). tek yapman gereken botun if $2 == Privmsg yazan kısmını bulup, hemen üstüne yukarıdaki yamayı yapıştırmak, aşağıdaki alias'ları da bence alias kısmına yapıştır.

Not: sock sistemde $me çalışmadığı için pasifleştirdim eğer aktif olmasını istiyorsan ; karakterini silip, $2 == $me yazan yeri de $5 == botun ismini yazmalısın.


Kod:

alias renkle { if $istok(1 2 3 ,$1,32) { sockwrite -nt nomercy privmsg #SohbetLi 4 $+ $1 $+ )4 $2 2---> Satır :4 $3 } | else { sockwrite -nt nomercy privmsg #SohbetLi $1 $+ )2 $2 ---> Satır :5 $3 } }
 alias top10 {
  var %cnk = @dify, %hit = 10, %e = puan/sohbet.txt, %top10 = 1
  window -hn %cnk
  filter -fwcteu 2 32 %e %cnk
  sockwrite -nt nomercy privmsg #SohbetLi 5 ***4 #SohbetLi 2Kanalı Günün Gevezeleri 5 ***
  sockwrite -nt nomercy privmsg #SohbetLi 3-
  sockwrite -nt nomercy privmsg #SohbetLi 5SohbetLi ORG 3[2NoMercy Puan Sistemi3]
  while %top10 <= %hit { renkle %top10 $line(%cnk,%top10) | inc %top10 }
  window -c %cnk
}


RahmetLi 21 Temmuz 2019 09:47

Cevap: Mırc Kodu Socket Cevirme
 
selam DieForYou kod bu sekılde calısıyor. kanal genelıne !geveze yazınca

Kod:

[09:45] <RahmetLi> !geveze
[09:45] <Eglence>  *** #SohbetLi Kanalı Haftanın Gevezeleri  ***
[09:45] <Eglence> -
[09:45] <Eglence> SohbetLi ORG [NoMercy Puan Sistemi] -
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
1) RahmetLi ---> Satır : 1
[09:45] <Eglence> 2) ---> Satır :
[09:45] <Eglence> 3) ---> Satır :
[09:45] <Eglence> 4) ---> Satır :
[09:45] <Eglence> 5) ---> Satır :
[09:45] <Eglence> 6) ---> Satır :
[09:45] <Eglence> 7) ---> Satır :
[09:45] <Eglence> 8) ---> Satır :
[09:45] <Eglence> 9) ---> Satır :
[09:45] <Eglence> 10) ---> Satır :

en cok konuslarını verıyor mırcda sorunsuz calısıyorda ben sockete eklemek ıstıyorum tşkler kolay gelsin.

diEfoRyoU 21 Temmuz 2019 12:35

Cevap: Mırc Kodu Socket Cevirme
 
bu şekilde zaten en çok konuşanları vermez çünkü konuşulan kelime sayısını kayıt edecek bir kodlama göremiyorum ben :)

RahmetLi 21 Temmuz 2019 14:54

Cevap: Mırc Kodu Socket Cevirme
 
diEfoRyoU hocam puan.txt e kayıt edıyor mırcta calısıyor sorun yok !geveze yazınca verıyor puanları ben sockete cevırmek ıstıyorum kanala suna !geveze yazdım sonucç
PHP- Kodu:

[14:53] <RahmetLi> !geveze
[14:53] <Eglence>  *** #SohbetLi Kanalı Haftanın Gevezeleri  ***
[14:53] <Eglence> -
[
14:53] <EglenceSohbetLi ORG [NoMercy Puan Sistemi] - 
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
style="color: #007700">.
SohbetLi.ORG
[14:53] <Eglence1RahmetLi ---> Satır 3
[14:53] <Eglence2Aykız ---> Satır 3
[14:53] <Eglence3aLBaYRaK ---> Satır 3
[14:53] <Eglence4SeVDaLuK ---> Satır 2
[14:53] <Eglence5Maxsi ---> Satır 1
[14:53] <Eglence6Lost ---> Satır 1
[14:53] <Eglence7) ---> Satır :
[
14:53] <Eglence8) ---> Satır :
[
14:53] <Eglence9) ---> Satır :
[
14:53] <Eglence10) ---> Satır 

bu sekılde verıyor ama bu mırcta yapıyor ben sadece sockete gore ayarlamak ıstıyorum kusura bakmayın boyna pğost atıyorum.


bilfiğim kadaruyla burası her kelimeyı 1 opuan olarak kaıyt edıyor.
Kod:

alias top10 {
  var %cnk = @dify, %hit = 10, %e = puan/sohbet.txt, %top10 = 1
  window -hn %cnk
  filter -fwcteu 2 32 %e %cnk


diEfoRyoU 21 Temmuz 2019 17:03

Cevap: Mırc Kodu Socket Cevirme
 
düzenlediğim koddaki if !geveze* iswm $4- { top10 | goto t0p10 }
kısmını if *!geveze* iswm $4- { top10 | goto t0p10 }
olarak değiştir bakalım

RahmetLi 21 Temmuz 2019 18:27

Cevap: Mırc Kodu Socket Cevirme
 
yaptım ama hıcbır tepkı vermedı malesef :(

Feragat 27 Temmuz 2019 11:09

Cevap: Mırc Kodu Socket Cevirme
 
Alıntı:

RahmetLi Nickli Üyeden Alıntı (Mesaj 1042120889)
diEfoRyoU hocam puan.txt e kayıt edıyor mırcta calısıyor sorun yok !geveze yazınca verıyor puanları ben sockete cevırmek ıstıyorum kanala suna !geveze yazdım sonucç
PHP- Kodu:

[14:53] <RahmetLi> !geveze
[14:53] <Eglence>  *** #SohbetLi Kanalı Haftanın Gevezeleri  ***
[14:53] <Eglence> -
[
14:53] <EglenceSohbetLi ORG [NoMercy Puan Sistemi] - 
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
style="color: #007700">.
SohbetLi.ORG
[14:53] <Eglence1RahmetLi ---> Satır 3
[14:53] <Eglence2Aykız ---> Satır 3
[14:53] <Eglence3aLBaYRaK ---> Satır 3
[14:53] <Eglence4SeVDaLuK ---> Satır 2
[14:53] <Eglence5Maxsi ---> Satır 1
[14:53] <Eglence6Lost ---> Satır 1
[14:53] <Eglence7) ---> Satır :
[
14:53] <Eglence8) ---> Satır :
[
14:53] <Eglence9) ---> Satır :
[
14:53] <Eglence10) ---> Satır 

bu sekılde verıyor ama bu mırcta yapıyor ben sadece sockete gore ayarlamak ıstıyorum kusura bakmayın boyna pğost atıyorum.


bilfiğim kadaruyla burası her kelimeyı 1 opuan olarak kaıyt edıyor.
Kod:

alias top10 {
  var %cnk = @dify, %hit = 10, %e = puan/sohbet.txt, %top10 = 1
  window -hn %cnk
  filter -fwcteu 2 32 %e %cnk


Merhabalar.

1- Paylaştığın koddaki o bölüm .txt içindeki veriyi düzenlemek için filtre edilmiştir puan eklemesi yapmaz.
2- Paylaştığın mIRC kodundaki bu satırda ayraç hatası vardır: if !geveze* iswm $1- { { top10 | goto t0p10 }
3- Mevcut kodda goto döngüsündeki t0p10 hedefi bulunmuyor.

Kodun oriinal hali buradadır.(renkle Alias'ı sonradan eklenmiş.) Link: [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Kod:

on *:text:*:#Kanal:{
  if $1 == !puan {
    if ($2  == list) { top10 | goto t0p10 }
    elseif !$read(puan.txt,w,$+(*,$2,*)) { msg $chan $2 puan listesinde yok }
    elseif ($2 == $me) { msg $chan  Beni boşver,kendi puanına bak  | goto t0p10 }
    elseif ($2 == $nick && $read(puan.txt,w,$+(*,$2,*))) { msg $chan $read(puan.txt,$readn) puanı var | goto t0p10 }
  }
  if !$read(puan.txt,w,$+(*,$nick,*)) { write puan.txt $nick 100 | halt }
  else {
    var %dify $readn
    var %yeah = $calc($token($read(puan.txt,%dify),2,32) +100)
    write $+(-l,%dify) puan.txt $nick %yeah
    if %yeah == 1000 {  mode $chan +v $nick | msg $chan Tebrikler $nick 1.000 puanın oldu }
  }
  :t0p10
}
alias top10 {
  var %cnk = @dify, %hit = 10, %e = puan.txt, %top10 = 1
  window -hn %cnk
  filter -fwcteu 2 32 %e %cnk
  msg #Kanal (Top 10) Puan listesi:
  while %top10 <= %hit { msg #Kanal $ord(%top10) $line(%cnk,%top10) | inc %top10 }
  window -c %cnk
}

Sana socket mantığı hakkında kısa bir bilgi vereyim, biliyor olsan da.

Socket yapısı, bağlantı kurulan IP veya HOST üzerindeki Ham(raw) veriyi okur. Ham veri, Eventlar(Olaylar)-Çeşitli yapılar(HTML vb.) tarafından işlenmemiş/yorumlanmamış veridir.

Örneğin bir web sitesine bağlantı kurduğunda tarayıcın kaynak kodlarını alır ve bunları HTML vb olaylarla yorumlayıp sana görsel, kullanılabilir veri sunar. Web sitesindeki ham(raw) veriyi görmek için Sağ Tık "Sayfa Kaynağını Görüntüle" yapabilirsin.
Socket yapısında IRC bağlantısı ve tüm bağlantılar aynı mantıkla işler. Socket, eventlar tarafından işlenmemiş veriyi görür ve yazacağın koşullar, kurallar ile bunu sana işler/yorumlar.

Socket'in tepkilerini görmek için basit bir Remote ile Ham (raw) mesajları elde edebilirsin.

Örnek:(#xms kanalını kendine göre ayarla)
Kod:

on *:text:*:#xms:msg # $rawmsg

Çıktı örneği:
Kod:

Etki:
[10:44] <Feragat> !puan raptor

Tepki (Ham-Raw veri):
[12:31:58] <raptor> :Feragat!~
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
PRIVMSG #xms :!puan raptor

Ham verideki sıralandırma (Boşluklar baz alınır.):
Kod:

$1 = :Feragat!~
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.

$2 = PRIVMSG
$3 = #xms
$4 = :!puan
$5 = raptor

Koşulları buna göre oluşturacaksın.
Örnek:
Kod:

if ($2 == PRIVMSG) { kodlar }
if ($5 == raptor) { kodlar }
if ($3 == #xms) { kodlar }

gibi..

Faydalı olabilecek kaynaklar:
1- [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
2- [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
3- [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
4- [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
5- [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

RahmetLi 28 Temmuz 2019 08:26

Cevap: Mırc Kodu Socket Cevirme
 
Feragat tşkler ilgınız için verdıgınız lınklrere baktım ama sockete cevıremedım nomercye eklıcemde

RahmetLi 12 Ağustos 2019 10:56

mIRC kodu Socket Çevirme
 
Arkadaslar s.a Hayırlı bayramlar tüm IF Aliesine asagıdakı puan kodumu socket botunda calıstırmak ıstıyorum yardımıcı olurmusunuz şimdiden tşkler..

Kod:

on *:text:*:#Kanal:{
  if $1 == !puan {
    if ($2  == list) { top10 | goto t0p10 }
    elseif !$read(puan.txt,w,$+(*,$2,*)) { msg $chan $2 puan listesinde yok }
    elseif ($2 == $me) { msg $chan  Beni boşver,kendi puanına bak  | goto t0p10 }
    elseif ($2 == $nick && $read(puan.txt,w,$+(*,$2,*))) { msg $chan $read(puan.txt,$readn) puanı var | goto t0p10 }
  }
  if !$read(puan.txt,w,$+(*,$nick,*)) { write puan.txt $nick 100 | halt }
  else {
    var %dify $readn
    var %yeah = $calc($token($read(puan.txt,%dify),2,32) +100)
    write $+(-l,%dify) puan.txt $nick %yeah
    if %yeah == 1000 {  mode $chan +v $nick | msg $chan Tebrikler $nick 1.000 puanın oldu }
  }
  :t0p10
}
alias top10 {
  var %cnk = @dify, %hit = 10, %e = puan.txt, %top10 = 1
  window -hn %cnk
  filter -fwcteu 2 32 %e %cnk
  msg #Kanal (Top 10) Puan listesi:
  while %top10 <= %hit { msg #Kanal $ord(%top10) $line(%cnk,%top10) | inc %top10 }
  window -c %cnk
}



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

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