| Yazan Kullanıcı | Yazdığı Mesaj #25682 2008-11-20 13:26 GMT | |||||||
|
Yarışmaya katılamadım çünkü HDD m yoktu biliyorsunuz, artık kavuştum ve Mutluyum , katılma konusunda kararsızdım denebilir.Çoğu yerde bu sistemi, ya container yardımı ile yada 5 6 for döngüsü ile karma karışık halde bulabilirsiniz. Bu sistemi sizler için sonuçlandırdım. İlk bakışta basit gibi görünüyor fakat algoritması baya yordu :S Kod: on=@kill //sadece playerları öldürmesi gerektiğini sorgulatmak size kalıyor toplist [defname topplayer] topplayer 30 //değiştirilebilir topplayer değeri [function toplist] tag0.puan_action +=1 for 1 <ddef.topplayer> var.remove <ddef.topplayer> for y 1 <ddef.topplayer> ref1=<var.topplayer_<dlocal.y>> if (<ref1> = <uid>) var.remove <dlocal.y> endif endfor ref2=<var.topplayer_<dlocal._for>> if (<dtag.puan_action> >= <ref2.dtag.puan_action>) var.topplayer_<dvar.remove> for x <dvar.remove> <dlocal._for> var.topplayer_<dlocal.x> <var.topplayer_<eval <dlocal.x> -1>> endfor var.topplayer_<dlocal._for> <uid> var.remove return 1 endif endfor Sonuç olarak size var.topplayer_1 2 3 sıralamasını tag.puan_action yardımı ile yapmak kalıyor. Saygılar Mac-Fusion Bu mesaj Mac-Fusion tarafından 2008-11-20 13:49 GMT, 47 gün önce düzenlendi. Savaşma! Kod Yaz! Birşeyler oluyor (Hermes UO) http://www.hermesuo.com |||| %10 Lalelerden ayıklanmış yepyeni bir Sphere-Wiki |
|||||||
| Yazan Kullanıcı | Yazdığı Mesaj #25684 2008-11-20 14:33 GMT | |||||||
|
Algoritma çok güzel.Tebrikler. Sphere script destek | Bug fix | Yeni script/sistem Pm ile iletişim kurabilirsiniz. |
|||||||
| Yazan Kullanıcı | Yazdığı Mesaj #25690 2008-11-20 15:08 GMT | |||||||
|
Kafayı tırlattım denebilir x) onu al ordan onu yap, bide localde çalışmak ıyyyy, hatırlamak bile kabus. Function yapmıştım kolaylık sağlasın diye 5 tane zombi çıkartıp onları sıralamaya sokuyordum x) Savaşma! Kod Yaz! Birşeyler oluyor (Hermes UO) http://www.hermesuo.com |||| %10 Lalelerden ayıklanmış yepyeni bir Sphere-Wiki |
|||||||
| Yazan Kullanıcı | Yazdığı Mesaj #25692 2008-11-20 15:17 GMT | |||||||
|
mysql kullanarak yazılırsa güncelleme ve sıralama çok daha performanslı olur. ilgili link ahanda bu link |
|||||||
| Yazan Kullanıcı | Yazdığı Mesaj #25696 2008-11-20 15:26 GMT | |||||||
|
MySQL da sıralama daha basit, fakat sürekli olarak bir ölüm olacağından her veriyi MySQL a yansıtıp ordan çekmek kasıntı yaratabilir. Bahsettiğin şey buysa tabi. Savaşma! Kod Yaz! Birşeyler oluyor (Hermes UO) http://www.hermesuo.com |||| %10 Lalelerden ayıklanmış yepyeni bir Sphere-Wiki |
|||||||
| Yazan Kullanıcı | Yazdığı Mesaj #25703 2008-11-20 17:26 GMT | |||||||
|
Mysql spheredan daha hızlı. Genel olarak bu konuda herkesin yanıldığını görüyorum. Yukarıda yaptığın işlemde güncellemek için 30 adet sorgu yapıyorsun for ile. hatta for içirisinde for kullanarak n = ( 30 x <for sayısı> ) diyebilirim, saymaya üşendim forları. Boş bir vakitte test/debug yaparız, sonuca bakarız. |
|||||||
| Yazan Kullanıcı | Yazdığı Mesaj #25704 2008-11-20 17:44 GMT | |||||||
|
her türlü sıralamada mysql tabiki çok daha hızlı ve çok daha stabil. üstelik mysql kullanılırsa her ölümde sıralama işlemi yapmaya gerek de yok. sadece tabloya yazılır, görüntüleneceği zaman oradan alınır. |
|||||||
| Yazan Kullanıcı | Yazdığı Mesaj #25705 2008-11-20 18:03 GMT | |||||||
|
Benim de oyum MySQLden yana, ne kadar Sphere'in kullandigi MySQL kütüphanesi rezil olsa da... |
|||||||
| Yazan Kullanıcı | Yazdığı Mesaj #25706 2008-11-20 18:04 GMT | |||||||
|
Mac-Fusion konuyla alakası yok eline sağlık ama birşey sorucam. Senin meslek ne çalışıyor musun yoksa full Uoya mı yüklendin ? |
|||||||
| Yazan Kullanıcı | Yazdığı Mesaj #25710 2008-11-20 18:33 GMT | |||||||
|
MySQL ile yapılanı görmek istedim şimdi x) Branxian, çok iş yaptım, ama script yazmak sadece zevk x) savaş değil Savaşma! Kod Yaz! Birşeyler oluyor (Hermes UO) http://www.hermesuo.com |||| %10 Lalelerden ayıklanmış yepyeni bir Sphere-Wiki |
|||||||
| Yazan Kullanıcı | Yazdığı Mesaj #25712 2008-11-20 19:27 GMT | |||||||
|
şöyle bir şey olurdu. Kod: on @kill
tag0.point ++ update_topPlayer [function createTable_for_topPlayer] db.connect db.execute "create table if not exists topPlayer (uid text, point int);" db.close [function update_topPlayer] db.connect db.query "select * from topPlayer where uid = '<uid>';" if <db.row.numrows> update_topPlayer else insert_topPlayer endif db.close [function insert_topPlayer] db.connect db.execute "insert into topPlayer values ('<uid>', '<dtag.point>');" db.close [function update_topPlayer] db.connect db.execute "update topPlayer set point = '<dtag.point>' where uid='<uid>'" db.close [function show_topPlayer] db.connect db.query "select * from topPlayer order by point desc"; for d 0 <eval <db.row.numrows> - 1> sysmessage <uid.<db.row.<dlocal.d>.uid>.name> : <db.row.<dlocal.d>.point> endfor db.close |
|||||||
| Yazan Kullanıcı | Yazdığı Mesaj #25713 2008-11-20 20:04 GMT | |||||||
|
Kod: on=@kill //sadece playerları öldürmesi gerektiğini sorgulatmak size kalıyor //if (<argo.isplayer>) // player sorgusunuda ekledim isteyen aktifedebilir. toplist //endif [defname topplayer] topplayer 30 //değiştirilebilir topplayer değeri database dat_example table_1 dat_example_2 table_2 dat_example_3 [function toplist] tag0.puan_action +=1 if <db.row.numrows> db.execute "update <def.database> set point = '<def.table,_1>' where uid='<uid>'" else db.execute "insert into `<def.database>` (`<def.table,_1>` ,`<def.table_2>`) values ('<uid>', '<dtag0.puan_action>');" endif [function tabloyap] if !(<DB.CONNECTED>) db.connect endif db.execute "create table if not exists <def.database> (<def.table,_1> text, <def.table_2> int);" db.close [function f_toplist] if !(<DB.CONNECTED>) db.connect endif db.query "select * from <def.database> order by <def.table_2> desc"; for order 0 <eval <db.row.numrows> - 1> sysmessage @1153,,1 <uid.<db.row.<dlocal.order>.<def.table_1>>.name> isimli oyuncu <db.row.<dlocal.order>.<def.table_2>> puana sahip. // dialog olarak yapmak size kalmı$. endfor Deneme fırsatım olmadı. Not: Suicide'ın verdiği linkten birşeyler öğrendim ve uyguladım. bazı benzerliklerin olması doğaldır yanlış anlaşılmasın. Bu arada Suicide sanki aynı isimde 2 farklı function war sanki ? Sanma şahım herkezi sen sadıkhane yar olur. Herkezi sen dostmu sandın belki ol ağyar olur. Sadıkhane belki ol alemde serdar olur. Yar olur,ağyar olur,serdar olur,didar olur. Selimi |
|||||||
| Yazan Kullanıcı | Yazdığı Mesaj #25717 2008-11-20 20:14 GMT | |||||||
|
Belirlenen top player sayısından sonrakileri silmesi falan gerekiyor onlar yok. Gerçi onlar eklenir problem o değilde, Bahsettiğim şey oldu, sphere den, MySQL a veri aktarıldı, alırken desc edilip sıralandı. Bilmiyorum MySQL ile yaptığım tek çalışma, sunucu durumunu yansıtmak Fazlasını bilmediğimden değil gerek duymadığımdam uğraşmadım. Bence fuzuli bir hareket. Tabiki Nedim in gıpta edilecek kodları var MySQL ile birlikte yapılmış, ama hiçbirinde benim postum yok. Tastik etmiyorum, zevkler ve renkler sorry x)) Benim koduma gelince x) kusura bakmayında 1,5 haftadan fazla uğraştım bu 4 satırlık kod için x) tırlatma derecesine gelmiştim. Savaşma! Kod Yaz! Birşeyler oluyor (Hermes UO) http://www.hermesuo.com |||| %10 Lalelerden ayıklanmış yepyeni bir Sphere-Wiki |
|||||||
| Yazan Kullanıcı | Yazdığı Mesaj #25719 2008-11-20 20:28 GMT | |||||||
|
bence gayet güzel olmuş emeğine sağlık. MySql Kullanmayı bence çok tercih etmem. Ama gerekli olduğu yerler oluyor. Sanma şahım herkezi sen sadıkhane yar olur. Herkezi sen dostmu sandın belki ol ağyar olur. Sadıkhane belki ol alemde serdar olur. Yar olur,ağyar olur,serdar olur,didar olur. Selimi |
|||||||
| Yazan Kullanıcı | Yazdığı Mesaj #25720 2008-11-20 20:36 GMT | |||||||
|
Yok canim, algortima asil bu isin sanati... Ancak SQL varken, kullanmamak sacma. Performansda cok farkediyor, SQLin olma amaci bu tarz seyler yani =) |
|||||||
| Yazan Kullanıcı | Yazdığı Mesaj #25724 2008-11-20 21:05 GMT | |||||||
|
2 tane aynı fonksiyondan yazmısım evet. Bir de 1,5 hafta uğraşmana değmemiş açıkçası Mutlu. Az satır daha optimize anlamına gelmiyor. Bu da yanlış bir olgu. |
|||||||
| Yazan Kullanıcı | Yazdığı Mesaj #25727 2008-11-20 21:51 GMT | |||||||
|
Peki Nedim -_- Savaşma! Kod Yaz! Birşeyler oluyor (Hermes UO) http://www.hermesuo.com |||| %10 Lalelerden ayıklanmış yepyeni bir Sphere-Wiki |
|||||||
| Yazan Kullanıcı | Yazdığı Mesaj #25797 2008-11-22 01:34 GMT | |||||||
|
Ellerine sağlık
|
|||||||
| Yazan Kullanıcı | Yazdığı Mesaj #25800 2008-11-22 08:34 GMT | |||||||
|
eline sağlık şekerim. |
|||||||
> 1 <
, katılma konusunda kararsızdım denebilir.



