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

.
Katılım
17 Şub 2021
Mesajlar
651
Çözümler
5
Tepkime puanı
428
Puanları
63
Yaş
32
Konum
Âtara
Türk Lirası
9.25₺
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

SRO[2024-10-23 20-40-03]_26.jpg

Öncelikle Buraya Eventimizi Ekleyelim
MaxiGuard_User >_RefEventRegister Tablosunu Açalım Ve Ekleyeceğimiz Eventin İsmini Yazalım
Event Register.PNG
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
tablo1.PNG

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
Ekran Alıntısı.PNG

Regist_SurvivalArena ve EventRegistrationStatus Tablolarımızı oluşturalım
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


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 MaxiGuard_User>> _Scheduler Tablosunda işlem yapalım
exec SRO_VT_DORTH.dbo.OpenEventRegistration
Capture.PNG

Ş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
sadsad.PNG
Kayıtların Kapanmasına 1 Dakika kaldı Notice geçmek istiyorum ,Saatlerini Sizler kendi düzeninize uygun ayarlarsınız.
SADAS.PNG
Kayıtların Kapandığna dair Bilgilendirme Geçmek istiyorum ayrıca EventRegistrationStatus Tablosunu Güncellemek sadsa.PNG

Eventin Başlayacağına Dair 5 Dakika Kaldı Notice Geçmek İstiyorum
startevejnt.PNG
Eventin Başlayacağına Dair 1 Dakika Kaldı Notice Geçmek İstiyorum
startevent1.PNG
Ş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.


MaxiGuard_User>> _Scheduler Tablosunda işlem yapalım
STARTEVENT.PNG
Şuanda Event Başladı lakin Skiller aktif Kapatmamız Gerekiyor Başlangıç Saati ile aynı yapın Event Başladığında Skillerde Kapansın
closeskıll.PNG
Ş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






Ş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





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..
sadsa.PNG
MaxiGuard_User > _OnCharKillLog_EDIT Eklenecek Kod



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ü



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.
 

Ekli dosyalar

  • Capture.PNG
    Capture.PNG
    3.1 KB · Görüntüleme: 12
  • sadsad.PNG
    sadsad.PNG
    3.4 KB · Görüntüleme: 12
  • pvp mode ayarları.PNG
    pvp mode ayarları.PNG
    1.6 KB · Görüntüleme: 10
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.
Kâsım reyiz eline sağlık paylaşım için teşekkür ederiz
 
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.
AARON ‘a göre düzenleyebiliriz demi
 
Geri
Üst Alt