Tekil Mesaj gösterimi
Alt 14 Mayıs 2007, 04:01   #26
Çevrimdışı
Brain
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: KelimeTuretmece TCL Halinda Alin Kullanin




Hani yapmayi o kadar cok istiyorum ama buna ayiracak o kadar cok vaktim yok mantik olarak zaten beynimde olusturdum olay sadece bunu kodlara dokmekte, su siralar firma icin ozel calismalardan dolayi buna vakit ayirmaya korkuyorum :S

Kaos Botunun mantigi:

Sorularin 1 den cok cevabi olabilecek sekilde duzenlenmis biraz karisik ve hatalari olan ama gerekli noktalardan yararlanmasi mumkun bir bot

Duzenegini su sekilde aciklayayim:

soru:cevap*cevap2*cevap3*cevap4 seklinde sinirsiz sekilde bankada cevap barindirma ozelliginin olmasi, bu da kelime oyunu icin e$siz bir ozellik olabilir kisa bir cozum getirmek gerekirse

Ama asil olmasi gereken kelime oyunu ayni spamfilter de yasadigimiz sorunlar gibi olmali rasgele bir kelime yazildiginda spamfilterdeki wilcard yuzunden bazi alakali ama alakasiz olmasi gereken eylemlere takiliyor

Ornegin: *n*e*t diye eklenen bir spamfilter 1 cok kelime ile butunlesebiliyor sebebi de uygulanmis olan wilcard'in olusacak kelimler icin cok fazla ayrinti icermesinden kaynaklaniyor.

Benim aklima gelen buna uygun butunkesecek 1 kac cumle

1: net
2: nezaket
3: network
4: netice
5: nedamet
6: anket

bu cumlelerin hepsi mutlaka spamfilter'e takilabilecek aklima gelen cumlelerdir.

Burada asil olmasi gereken olay, oyle 1 sey yazilmali ki bir banka icerisindeki kelimelerle karsilastirilabilmeli

icerisinde n e t kelimelerinin bankada bulunan cumlelerden herhangi birinin icinde de olabilmesi.

Mantik olarak yapilmasi gereken o zaman, ekrana yazdirilmis olan rasgele kelimelerin, cumlelerin bulunudugu metinde aranmasi, eger bu kelimelerin hepsi kullanicinin kanala yazdigi ile butunlesip bu bilgide banka diye adlandirdigimiz cumlelerin bulunudugu dosyada mevcutsa dogru cevap bulunmus olacaktir....


<Bot> las kelimesini turetin
<kullanici> lastik
Bot burada oncelikle kullanicinin yazdigi kelimede l a s kelimelerinin kullanilip kullanilmadigina bakacak ve sonrasinda veritabanimiz txt yada mysql ne sekilde saklayacagimiz bize kalmis, orada lastik cumlesinin olup olmadigini sorgulayacak eger lastik cumlesi varsa dogru cevap alinmis olacak, bu tabiki sureye dayali oldugu icin dogru yanit alinmis olsa bile, o belirtilen sure dolana kadar kelime uretmek mumkun olacaktir.


<bot> lastik dogru cevap <kullanici> x puan kazandiniz
<kullanici2> plastik
plastik cumlesinin icerisinde l a s kelimeleri mevcut bankamiza bakarak plastik diye birseyi yine sorgulayarak varsa kisiye puan verebiliriz.

<bot> plastik dogru cevap <kullanici2> x puan kazandiniz.
<kullanici3> sandal
sandal cumlesinin icerisinde de l a s kelimeleri yine mevcuttur, ve botun yapacagi yine ayni sey bankanin icerisinde sandal cumlesinin olup olmadigini sorgulamak.

Regex le bunu yapmak cok kolay birsey TCL icerisinde. Bunu su sekilde ornekleyebilirim:

PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
if (ereg("[las]"$kullanicinin_mesaji)){
/* 
yukaridaki sorgu l a s kelimesinin $kullanicinin_mesaji adli degiskenin 
icerisinde bulunup bulunmadigini sorgulayacaktir, bu da bankamiza 
bakmadan once denetim olarak kullanmamiz gereken 1 nokta, eger bu sorgu 
dogrulanirsa yapmamiz gereken bir txt yi nasil okuyacagimizi ve istedigimiz 
cumlenin orada olup olmadigini denetlemektir.
*/


Dosya okuma dosya icerisinde metin arama gibi 1 cok ornek script zaten ircforumlarinda da mevcuttur yapmak isteyen kisiler sorgulari denetleyerek mutlaka sonuca ulasacaklardir bu konuda.

Mantik budur ve cok zorda birsey degildir bu konuda burada emek veren 1 kac kisi mevcut, en etkini cehennem, bunu mantigi anlatildiktan sonra yapacaginada eminim umarim bu sorumlulugumu ustumden alip kendisi tasarlayabilecektir, Mantigini umarim acik ve net sekilde anlatabilmisimdir.

Kurallar:
1: zamanlaci belirtilen sure boyunca kelime turetmeye izin vermelidir ideal 30sn
2: kanalda turetilmis ve dogru olarak adlandirilmis cumle bir baskasi tarafindan kullanildiginda puan almamasi saglanmali, pratik olarak dogru adlandirilan cumleler gecici 1 TXT icerisinde saklanabilir ve orada dogru bile olsa var olan 1 cumle eslesiyorsa puan alinmaz ve bu daha once turetildi denilebilir.
3: botun soracagi rasgele kelimeler, 2 ila 4 kelimeden olusmalidir, a-z arasi rasgele kelime uretecek 1 sey yazilabilir. Son olarakta, bu kural'a uygun puanlamada cok makbule gecer, 2 kelimeli soru basit soru tipi 3 kelimeli orta duzey 4 kelimeliler ise ileri duzey ve puanlamalari da buna gore farli cagirilabilir.

Umarim yeterince anlasilir bir sekilde ve basit anlatmisimdir olmasi gerekenleri, yapacak arkadaslara mutlaka yardim etmekten zevk duyarim.

Basarilar Simdiden...

NOT Bunu yapmak Kaos botu ile ugrasmaktan cok daha kolaydir
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.

__________________
Our brain is Our Weapon
 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları reklam ver Benimmekan Mobil Sohbet