Merhaba, Hoşgeldin!

VSRO.org, Silkroad Online, Knight Online, Metin2 ve diğer çevrimiçi oyunlar için öncü bir yardım ve geliştirme platformudur. Misyonumuz, bilgi ve deneyim sahibi bireyleri, bilgiye ihtiyaç duyanlarla bir araya getirerek, zengin bir etkileşim ortamı yaratmak ve farklı bakış açılarını birleştirmektir. Topluluğumuzda güçlü bir işbirliği ve öğrenme kültürü oluşturarak, herkesin değerli katkılarda bulunmasını sağlıyoruz.

MaxiGuard vSRO [MaxiGuard] Survival Event

@Dorth NOT: VERİTABANI SRO_VT_DORTH Olarak kullanıldı SRO_VT_DORTH Adında bir veritabanı oluşturmanız gerekir. Kendi Veritabanınızı kullanabilirsiniz gerekli yerleri değiştirerek devam edebilirsiniz..

Buradaki bizdeki SRO_VT_SHARD mı yoksa event için yeni bir veritabanı mı oluşturacağız mesela AARON_EVENTS da ki gibi
 
@Dorth NOT: VERİTABANI SRO_VT_DORTH Olarak kullanıldı SRO_VT_DORTH Adında bir veritabanı oluşturmanız gerekir. Kendi Veritabanınızı kullanabilirsiniz gerekli yerleri değiştirerek devam edebilirsiniz..

Buradaki bizdeki SRO_VT_SHARD mı yoksa event için yeni bir veritabanı mı oluşturacağız mesela AARON_EVENTS da ki gibi
Hayır Shard kullanmıyoruz SRO_VT_DORTH tamamen Kendim için oluşturduğum eventlerim için kullandığım bölüm Shard ile bir bağlantısı yok
 
Hayır Shard kullanmıyoruz SRO_VT_DORTH tamamen Kendim için oluşturduğum eventlerim için kullandığım bölüm Shard ile bir bağlantısı yok
Anladım bende eternitynin database var AARON_EVENTS yazıyor ve onun altında tablo ile prosedürler bulunuyordu bende mesela SRO_VT_AHMET adında bir tablo oluşturacağım onun altına tablo ve prosedür oluşturacağım
 
Herkese Merhaba!

Bu paylaşımı, MaxiGuard ile çeşitli etkinlikler geliştirmek veya yeni etkinlikler oluşturmak isteyenlere bir rehber olması amacıyla yapıyorum. Bu çalışmanın mükemmel olduğunu iddia etmiyorum, ancak MaxiGuard'ın sunduğu özellikleri kullanarak tamamen SQL ve MaxiGuard filtre sistemi ile hazırlanan bir etkinliktir. Herhangi bir ek program ya da yazılım kullanılmamıştır. Bu Basit mantık çerçevesinde, siz de birçok farklı etkinlik oluşturabilir ve geliştirebilirsiniz.

Ben, MaxiGuard'ın bana sağladığı komutlar ile basit bir mantıkla bir etkinlik oluşturacağım.
Ziyaretçiler için gizlenmiş link,görmek için Giriş yap veya üye ol.
buradan ulaşabilirsiniz...







Başlamadan Önce Event Kayıtları Teleport ile olmayacaktır...

Öncelikle Event Kayıtı ile Başlayalım yine MaxiGuardın bizler için Sunduğu bir özellik

Event Register Butonu

Ekli dosyayı görüntüle 19840

Öncelikle Buraya Eventimizi Ekleyelim
MaxiGuard_User >_RefEventRegister Tablosunu Açalım Ve Ekleyeceğimiz Eventin İsmini Yazalım
Ekli dosyayı görüntüle 19841
Evet Artık Event Register Penceremizde Survival Arena adlı bir eventimiz var

Event Kayıtı için Yapacağımız Diğer Bir İşlem İse

Regist_SurvivalArena adlı bir Tablo Oluşturmamız
Ekli dosyayı görüntüle 19842

Not: Tablo isminin Regist_SurvivalArena olmasının sebebi, kayıt işlemine bağlı dinamik bir prosedür kullanılmasıdır. Yani, "Regist_" ön ekinin kullanılmasının amacı budur. Örneğin, kayıt işlemi sırasında prosedür içerisinde farklı bölümler oluşturmadan kayıt yapmanızı sağlar. Bunun gibi, Regist_LastManStanding veya Regist_StyriaClash gibi isimler de kullanılabilir. Anladığınızı düşünüyorum; prosedür içeriğini düzenleyerek istediğiniz şekilde değiştirebilirsiniz.

Prosedüre Geçmeden önce Bir Tablo Daha Oluşturalım Bu Tablo İse Kayıtların Açık Olup Olmadığını Kontrol etmek için Oluşturacağız.
EventRegistrationStatus
Ekli dosyayı görüntüle 19843

Regist_SurvivalArena ve EventRegistrationStatus Tablolarımızı oluşturalım
*** Gizli metin: alıntı yapılamaz. ***

NOT: VERİTABANI SRO_VT_DORTH Olarak kullanıldı SRO_VT_DORTH Adında bir veritabanı oluşturmanız gerekir. Kendi Veritabanınızı kullanabilirsiniz gerekli yerleri değiştirerek devam edebilirsiniz..

MaxiGuard_User veritabanındaki _OnEventRegister_EDIT adlı prosedürde işlem yapacağız. Bu prosedür, bir tetikleyici (trigger) prosedürdür ve Event Register penceresindeki "Register" butonuna bağlı olarak çalışır.
_OnEventRegister_EDIT

*** Gizli metin: alıntı yapılamaz. ***


Diğer işlemlere geçmeden önce, etkinliklerin kayıtlarının açık olup olmadığını kontrol edeceğimiz bir tablo oluşturduk. Kayıtların ne zaman açılacağını ve ne zaman kapanacağını ayarlayacağız. Bunun için yine MaxiGuard’ın _Scheduler tablosunu kullanarak prosedürü istediğimiz saatte veya günde çağırabileceğiz. Bildiğim kadarıyla bu tablo, SQL Agent Server’a bağlı olarak çalışıyor. Eğer bu tabloyu kullanmak istemezseniz, kendinize özel bir tablo oluşturabilirsiniz, ancak buna gerek yok.Çağrılacak dbo.OpenEventRegistration Prosedür *** Gizli metin: alıntı yapılamaz. ***

MaxiGuard_User>> _Scheduler Tablosunda işlem yapalım
exec SRO_VT_DORTH.dbo.OpenEventRegistration
Ekli dosyayı görüntüle 19847

Şu anda etkinlik kayıtlarımız saat 21:00'de açılacaktır. Kayıtlar açıldığında etkinliğe katılabilirsiniz. Ayrıca, Regist_SurvivalArena tablosuna da bir ekleme yapıldığını göreceksiniz.
Kayıtların Kapanmasına 5 Dakika kaldı Notice geçmek istiyorum.
Örnek olarak veriyorum diğerlerini siz Yapabilirsiniz
*** Gizli metin: alıntı yapılamaz. ***

Ekli dosyayı görüntüle 19848
Kayıtların Kapanmasına 1 Dakika kaldı Notice geçmek istiyorum ,Saatlerini Sizler kendi düzeninize uygun ayarlarsınız.
Ekli dosyayı görüntüle 19849
Kayıtların Kapandığna dair Bilgilendirme Geçmek istiyorum ayrıca EventRegistrationStatus Tablosunu Güncellemek*** Gizli metin: alıntı yapılamaz. ***

Ekli dosyayı görüntüle 19850

Eventin Başlayacağına Dair 5 Dakika Kaldı Notice Geçmek İstiyorum
Ekli dosyayı görüntüle 19851
Eventin Başlayacağına Dair 1 Dakika Kaldı Notice Geçmek İstiyorum
Ekli dosyayı görüntüle 19852
Şu anda etkinliği başlatacak prosedürü çağırmamız gerekiyor. Sadece Regist tablosunda kayıtlı olan oyuncuları belirli bir bölgeye taşımamız yeterli. Başlangıçta, tüm yetenekleri (skiller) engellemek için ayrı bir prosedür ekleyeceğiz. Bu prosedürü ayrı olarak eklememin sebebi, farklı alanlarda da kullanılabilir olmasını sağlamaktır. Start prosedürüne ek olarak 60 saniyelik bir sayaç ekledik; bunun amacı, skilleri 1 dakika boyunca engellediğimiz içindir.


*** Gizli metin: alıntı yapılamaz. ***

MaxiGuard_User>> _Scheduler Tablosunda işlem yapalım
Ekli dosyayı görüntüle 19853
Şuanda Event Başladı lakin Skiller aktif Kapatmamız Gerekiyor Başlangıç Saati ile aynı yapın Event Başladığında Skillerde Kapansın*** Gizli metin: alıntı yapılamaz. ***

Ekli dosyayı görüntüle 19854
Şuanda Skillerimiz Kapalı 1 Dakika Dolduktan sonra Skilleri Açıp Tam anlamıyla Eventi Başlatıyoruz Burada Sayac Resetlenir Ve 15 dakika olarak yeniden başlatılır Süreyi Ayarlmak için _SurvivalSkillOpen Prosedürünü inceleyin *** Gizli metin: alıntı yapılamaz. ***








Şu anda etkinliğimiz başladı ve etkinliği özelleştirmek istiyorum. Bir puan sistemi eklemek güzel olur; bu puanlara göre hediyeler dağıtılabilir. Hadi başlayalım!

Öncelikle Tablo Oluşturalım SurvivalArenaPoints

*** Gizli metin: alıntı yapılamaz. ***





Tablomuzu oluşturduk. Şimdi, puanları elde etmek için MaxiGuard_User > _OnCharKillLog_EDIT tetikleyici (trigger) prosedürüne birkaç kod ekleyelim.Eklemeden önce Maxiguard Panelinden Triggeri Aktif edelim..
Ekli dosyayı görüntüle 19855
MaxiGuard_User > _OnCharKillLog_EDIT Eklenecek Kod

*** Gizli metin: alıntı yapılamaz. ***


Karakterler artık puan elde edebiliyor. Buraya kadar bir sorun yoksa, devam edelim.

Artık etkinliği bitirme zamanı geldi. 15 dakika sonra SRO_VT_DORTH..dbo._SurvivalArenaEnd prosedürünü çağırmamız gerekecek.



    • Etkinlik ödüllerini düzenleyebilirsiniz.
    • Kazanan karakterin ismi, "Notice" olarak duyurulacak.
    • Oyuncular şehir merkezine (Town) geri çekilecek.
    • Etkinliğe katılan herkese Lose Event Box verilecek.
    • En çok puan alan kazanan oyuncuya 100 silk verilecek. Bu işlemi doğrudan komut ile silk olarak verebilirsiniz.
Sonrasında, Regist tablolarını ve puan tablosunu temizleyip, etkinliği sıfırlayacağız. Diğer gün, ayarladığınız saatte etkinlik yeniden başlayacak. Prosedürü *** Gizli metin: alıntı yapılamaz. ***





Birkaç işlemimiz daha kaldı, bunları MaxiGuard panelinden yapacağız.


    • MaxiGuard > Oyun İçi Ayarlar > Pvp Mode Ayarları sekmesine girin.
    • Auto PVP-Mode Ayarları bölümünden 25580, yani Survival Arena Region kodunu girin. Bu, karakterin PvP modunda olmasını sağlar.

      Nick/Guild/Title Gizleme Ayarları ise size bağlı, ancak 25580 Region kodunu girerek devam edebilirsiniz.

      Auto Suit Giydirme Ayarları için de 25580 Region kodunu girin. Bu, etkinlik kıyafetini karaktere giydirir.
Bu ayarlar zorunlu olanlardır, diğerlerini kendi isteğinize göre ayarlayabilirsiniz.


    • Dirilme Ayarları bölümüne gidin.
    • Dirilme Ayarları (Kalkmaya çalışınca olduğu yerde kaldır) kısmına 25580 Region kodunu girerek devam edebilirsiniz.
Bölgesel Dirilme Cooldown Ayarları bölümünde ise ben 15 saniye ayarladım, siz istediğiniz süreyi seçebilirsiniz. 25580 Region kodunu girip devam edebilirsiniz.

Bu ayarlar zorunlu olanlardır, diğerlerini kendi tercihinize göre ayarlayabilirsiniz. Paneli inceleyerek daha fazla özelleştirme yapabilirsiniz.









Şu anda etkinliğimiz sona erdi. Bu etkinliği daha da geliştirebilirsiniz. Ben, elimdeki tablolar ve komutlar ile bu yapıyı oluşturdum. Daha iyi bilen arkadaşların konuyu baltalamasına gerek yok, onlar da paylaşabilirler. Umarım bu işinize yarar. Elimden geldiğince anlatmaya çalıştım. Siz de "şöyle olsa daha iyi olur" diyebilirsiniz ve bunu uygulayabilirsiniz, özgürsünüz.

Foruma yeni katılan arkadaşlar, 100 mesaj sınırı koyduğum için kusura bakmasınlar. Bunun sebebi, konuların alınıp başka forumlarda ya da platformlarda sanki kendileri yapmış gibi paylaşılmasıdır. Bu nedenle bu sınırı koymak zorunda kaldım. Umarım eksik yoktur, varsa da belirtirseniz sevinirim. İyi günler, iyi forumlar.

Not: Survival Arena dosyalarını paylaşmadım.
Ziyaretçiler için gizlenmiş link,görmek için Giriş yap veya üye ol.
@iMonarch'ın paylaşımından yararlanabilirsiniz.
Ellerine sağlık kasım hocam.
 
/ Burada spam yapmak yerine konu açtım ❤️😂
 
/ Burada spam yapmak yerine konu açtım ❤️😂
Konuya dönüş yaptım
Üst üste post gönderildiği için tek mesajda birleştirildi:

Ellerine sağlık kasım hocam.
eyvallah kral :)
 
Geri
Üst Alt