Forumda göremedim. Çok zor birşey değil ama yine de bunun anlatımını yapayım..
strquest'i decode ederken biraz haşır neşir oldum
İlk önce quest_content_us.tbl dosyamızı açıyoruz.
Burada ilk sütun bize görevlerin numaralarını söyler.
bu numara 1 - 255 arasında olmalıdır.
1 - 255 arasında eskiden bulunmayan bir numara yazıyoruz.
Örnek vereyim;
Kod:
no level class isim açıklama gerekenler sırasına göre yazıyoruz.
(class için; (yani görevi kimler yapabilir)
1= warrior
2= rogue
3= mage
4= Priest
5= Hepsi)
Kod:
71 30 5 Herkes yapsın Ahmete git. 300 e 500 koordinatlarındaki ahmet'ten mehmet kağıdını al şevkete gönder.
Şimdi tbl kısmını hallettiğimize göre server kısmına gelelim;
Hangi npc'ye quest vereceksek o npc'yi açıyoruz.
Ben var olan bir quest'i örnek olarak kullanıp açıklayacağım..
Kod:
EVENT 20701 ; Göreve tıkladı ilk neler olacak acaba?
E RUN_EVENT 20702
E RUN_EVENT 20704
END
EVENT 20702
A CHECK_LV 1 19 ;1 ile 19 level arası ise ;
E SAY -1 -1 20709 -1 -1 -1 -1 -1 -1 -1 -1 -1 ;Levelinin yetmediğini söyle.
E RETURN
END
EVENT 20704
E RUN_EVENT 20705
E RUN_EVENT 20710
E RUN_EVENT 20713
END
EVENT 20705; ÁøÇàÁßÀÏ ¶§
A CHECK_EXIST_EVENT 71 1 ; Daha önce bu görevi alıp tamamlamamış mı?
E RUN_EVENT 20720
END
EVENT 20710; ¿Ï·áÇßÀ» ¶§
A CHECK_EXIST_EVENT 71 2 ;Daha önce bu görevi alıp tamamlamış mı?
E SAY -1 -1 20714 -1 -1 -1 -1 -1 -1 -1 -1 -1
E RETURN
END
EVENT 20713;óÀ½À϶§
A CHECK_EXIST_EVENT 71 0 ; Daha önce bu görevi alır gibi yapmış mı? (bu kod tamamen mantıksız
)
E SAY -1 20714 20701 20702 -1 -1 -1 -1 -1 -1 -1 -1
E RETURN
END
EVENT 20714
E SELECT_MSG -1 20703 20701 20715 20702 20716 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1
END
EVENT 20715
E SELECT_MSG -1 20705 20703 20740 20704 20745 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1
END
EVENT 20716
E SAY -1 -1 20704 -1 -1 -1 -1 -1 -1 -1 -1 -1
E RETURN
END ; Hata mesajları ile ilgili şeyler.
EVENT 20720
E RUN_EVENT 20725
E RUN_EVENT 20730
END
EVENT 20725
A HOWMUCH_ITEM 910017000 3 9999 ;÷÷Ó¨ãóß¾Úªù¡
E RUN_EVENT 20735
END
EVENT 20730 ;ãóß¾Úªù¡Üôğë
A HOWMUCH_ITEM 910017000 0 2;÷÷Ó¨ãóß¾Úªù¡
E SAY -1 -1 20710 -1 -1 -1 -1 -1 -1 -1 -1 -1
E RETURN
END
EVENT 20735 ;ãóß¾Úªù¡ğë?
E SELECT_MSG -1 20711 20705 20750 20706 20746 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1
END ; Görev detayları...
EVENT 20740;?öâ
E SAY -1 -1 20708 -1 -1 -1 -1 -1 -1 -1 -1 -1
E SAVE_EVENT 71 1 ; Görevi Alınmış olarak kaydet...
E RETURN
END
EVENT 20745 ;Üôηöâ
E SAY -1 -1 20704 -1 -1 -1 -1 -1 -1 -1 -1 -1
E RETURN
END
EVENT 20746 ;?ë¶ÊğîÜ̸ã§ê¬
E SAY -1 -1 20712 -1 -1 -1 -1 -1 -1 -1 -1 -1
E RETURN
END ; Görev detayları...
EVENT 20750 ;æğãıÍëìÌîÜüŞÜÃ
E SAY -1 -1 20713 -1 -1 -1 -1 -1 -1 -1 -1 -1
E ROB_ITEM 910017000 3
E EXP_CHANGE 5000
E GIVE_ITEM 389013000 10
E GIVE_ITEM 389018000 10 ; Görev ödüllerini ver.
E SAVE_EVENT 71 2 ;Görevi yapılmış olarak kaydet.
E RETURN
END
Bu şekilde görev ekleyebilirsiniz..
Herhangi bir görevi sınırsız sayıda yaptırabilir , veya 1 kereye mahsus yapılsın şekilde ayarlayabilirsiniz..
evt'i editleyip menüler olayına girmedim. Bunlar zaten forumda var..