Yazılı Eğitim Event Tasarım Eğitimi (vSRO Org'a özel)

@EsteveLuis Dosya için teşekkürler :giggle:
@ryanpel

Event listesi;
1)Madness Arena
2)Survival Arena
3)LMS Arena
4)FFA Arena
5)Trivia Event
6)Kill The GM ==> Paylaşım - Kill The GM Event (En kolay ekleme yöntemi)
7)Kayıp GM
8)Unique Event
9)Kayıp Unique
10)LPN
11)Alchemy

Ön bilgi; eventlerin saatlerine göre kontrol edilebilmesi için sayaç sistemine ihtiyacınız vardır.
Database oluşturun ve saatleri 10:00 / 20:00 bazında ekleyin. Yapacağınız bot saatleri sürekli kontrol etmeli.
Saati gelen etkinliği otomatik olarak başlatmalı ve bu şekilde etkinliklerinizi çalıştırabilirsiniz.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
### --- Madness Arena --- ###

---> İçeride bir unique belirir ve herkes otomatik olarak pvp moduna geçer. Burada amaç, rakipleri öldürerek unique'yi kesmektir.
Her kesilen chardan puan alınır ve kill rankta sıralamaya char adı yazdırılır.

Ödüllerde kill rankta sıralamaya giren ilk 3 karaktere verilir.
Unique'yi kesen kişi örneğin 100 silk alıyorsa, kill ranka giren 3 kişiyede 100 silk paylaştırılır.


Etkinlik başlamasına son 10,5,1 dakika kala notice ile oyunculara bildirin.
Etkinlik başladığında bot karakterinizden belirlediğiniz uniqueID si ile spawn paketi yollayın.

_AddLogChar dan yapılacak prosedür ilede içerideki kill loglarını bir tabloya aktarın.

10 dakikalık süre tanımlayın ve süre sonunda en çok kill alan ilk 3 kişiye ödülleri paylaştırın.
Unique kesen kişiye ödül vermek için yine server paketlerinden olan 0x300C yi kontrol ederek ödülü verebilirsiniz.

Bu eventin temel çalışması bu şekildedir.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
### --- Survival Arena --- ###

---> İçeriye girildiğinde herkes otomatik olarak pvp moduna geçer. Burada amaç, 10 dakikalık süre içerisinde en çok kill'i almaktır.
10 dakika sonunda kill leri aktardığınız tablodan ilk 3 ismi alın ve notice ile duyurarak ödüllendirin.

Yapılması en kolay eventlerdendir :)

İçeride party kurulmasınıda filter yardımı ile engelleyebilirsiniz.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
### --- LMS Arena --- ###

--> İçeriye girildiğinde herkes otomatik olarak pvp moduna geçer. Burada amaç, ayakta kalan son kişi olmaktır.

Kayıt olmak için en kolay yöntemi anlatıyorum. Bir scroll yapın ve kullanıldığında bir tabloya char adlarını gönderin.

Kayıt olmak için 5 dakikalık süre verdiğinizi varsayalım. Süre sonunda botunuz ile listedeki tüm karakterleri etkinlik alanına recalluser paketini kullanarak çekin.
Herkes otomatik pvp moduna geçeceğinden, anında event başlamış olacaktır.
_AddLogChar a yapılacak prosedür ile her ölen eventten elenmiş olacak ve botunuz tarafından kayıtlı olduğu şehre geri çekilmeli.
Botunuz sürekli olarak tabloları kontrol etmek zorundadır.
Prosedür içerisinde ise içerideki char sayısını kontrol edin. 1 kişi kaldığında etkinliği durdurun ve ödülü vererek oyuncunun adını herkese notice ile duyurun.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
### --- FFA Arena --- ###

--> İçeriye girildiğinde herkes otomatik olarak pvp moduna geçer. Burada amaç, aslında survival&lms karışımı olarak diyebiliriz.
Herkes teke tek mücadele eder. Her alınan +1 kill olarak yansır. Her killde honor puanı verilebilir.
En çok kill alan kişi yada en son ayakta kalan kişiye ödül verilebilir.
Free For All = Herkes teke tek demektir.
Kayıt sistemi için LMS de verdiğim örneği kullanabilirsiniz.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
### --- Trivia Event --- ###

--> Bir database oluşturun ve içerisine istediğiniz kadar soruları cevaplarıyla birlikte ekleyin.
Botunuz saati geldiğinde rastgele bir soruyu seçsin ve global ile oyunculara duyursun.
0x3026 paketini kullanarak cevapları kontrol edin. Doğru cevabı veren kişiyi ödüllendirin ve notice ile duyurun.

Temel mantığı bu kadar.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
### --- Kill The GM --- ###

--> Üstte bir link verdim, onu kullanarak en kolay yöntem ile eventi ekleyebilirsiniz.
Ancak yinede mantığını anlatayım.

Saati geldiğinde bot bir unique spawn eder ve o unique'yi öldüren kişi ödüllendirilir.
Unique öldüğünde tekrar tekrar spawn paketi ile çıkartarak round şeklinde eventi yapabilirsiniz.
Örnek: [CharName], [GameMaster]i öldürdü ve [1]. round kazananı oldu! Bir sonraki round [30] saniye sonra başlayacaktır!

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
### --- Kayıp GM --- ###

--> Bir database oluşturun ve içerisine isimleriyle birlikte regionID,regionX,regionY,regionZ,worldID verilerini girin.
Botunuz saati geldiğinde rastgele bir regionID seçerek o bölgeye /wp paketini kullanarak gitsin ve bölgeyi notice ile duyursun.
Gittiği yerde stall açsın. Burada yapacağız iş stall'a yazılacak chatleri kontrol etmek.
0x3026 paketi stall konuşmalarınıda içermektedir. Bu paketi kontrol ederek ilk mesaj yazan kişiyi ödüllendirerek eventi durdurun ve kişiyi notice ile duyurun.
Sonra bot karakterine /gotown paketini çalıştırın.
10 dakikalık süre tanıyın ve eğer kimse bulmazsa yine /gotown paketini kullanarak eventi sonlandırın.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
### --- Unique Event --- ###

--> [GM] karakteriniz ile yaptığınız eventin bot tarafından yapılması halidir.
Bot karakterine saat sorgusu yapın. Saati geldiğinde notice ile eventin başladığını duyursun. Mesele event jangan önünde olsun.
Karakteriniz /wp paketini kullanarak jangan önüne gelsin.
Spawn paketi içerisinde yapacağınız bir liste ile uniqueID lerini tanımlayın.
Sırası ile ölen unique sonrasında tekrar spawn yaparak listeyi takip etsin.
30 dakikalık süre tanımıda yaparsınız. Süre sonunda eventi durdurun ve katılan herkese teşekkür eden bir notice gönderin.

Sürekli başında olmak zorunda kalmadan oyunculara unique eventi yapmış olursunuz.
Temel mantığı bu şekildedir.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
### --- Kayıp Unique --- ###

--> Mantığı kayıp GM ile aynıdır. Rastgele bir region seçsin ve belirlediğiniz uniqueID'yi spawn etsin ve bunu duyursun.
Spawn ettikten sonra /gotown yaparak bot karakteri şehre geri dönsün.
Örnek: [Kayıp Unique] Event, başladı! [Bandit Mountain] bölgesinde [White Knight] belirdi. Onu ara ve öldür!
0x300C paketini kullanarak unique yi öldüren kişiye ödül verebilirsiniz.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
### --- LPN --- ###

--> Mantığı çok basittir. Bot karakteri ile son açılan pt noları tarayın ve bulduğunuz son pt nosuna belirleyeceğiniz int değerini ekleyin.
Party paketlerini kullanarak yapabilirsiniz. Kaç sayfa pt form var ise hepsini tarama yapmalısınız.
Örneğin: int TargetPTNumber = LastPTNumber + IncreasePTNumber;
SendNotice("[Lucky Party] Event, başladı! Aranan parti numarası: [TargetPTNumber]!");
10 dakikalık süre tanıyın, bu süre boyunca pt formları takip ettirin ve kazanan olduğunda eventi durdurun ödülü verin ve notice ile duyurun.
Temel mantığı bu şekildedir.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
### --- Alchemy --- ###

--> Bot karakterinizi jangan önüne bırakın. Süre geldiğinde belirleyeceğiniz ItemID leri /makeitem paketini kullanarak drop yapsın.
Örneğin: [Alchemy] Event, başladı! [Bölge]: [Jangan East] [10] dakika içerisinde ilk +7 seviyesine ulaşan kazanır!
_AddLogItem prosedürüne belirlediğiniz ItemID yi kontrol eden bir prosedür yazın.
Itemleri +0 olarak drop ettirin. Rateleri ona göre zor yaparsınız.
o ItemID ile yapılan alchemyleri bir tabloya aktarın ve ilk +7 yapan kişiyi belirleyip eventi durdurun ve ödüllendirerek adını notice ile duyurun.
Etkinlik sona erdiğinde kullandığınız ItemID nin codename128'ini alarak aşağıdaki sorguyu okutun ki o item herkesten silinsin.
===> EXEC [SRO_VT_SHARD].[dbo].[_SEEK_N_DESTROY_ITEM] @ItemCodeName

Temel mantığı bu şekildedir.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 

Ekli dosyalar

Bu konuyu görüntüleyen kullanıcılar

Geri
Üst Alt