- #1
Konu Sahibi
: serkankacan
[REHBER & QUERY] vSRO Tek Kodla Karakter Full Ayarlama & İtem Verme
Seviye, Stat, SP, Gold, Rütbe, Konum ve Otomatik İtem Tanımlama Query'si
Seviye, Stat, SP, Gold, Rütbe, Konum ve Otomatik İtem Tanımlama Query'si
Merhaba değerli forum sakinleri,
Test sunucularında veya GM karakterleri hazırlarken tek tek karakterle oyuna girip level kasmak, stat vermek ve item aramak yerine; tek bir SQL sorgusuyla karakterin seviyesini, stat puanlarını, altınını, SP'sini, rütbesini (Title) ve çantasını fulleyip üstüne istediğiniz eşyayı gönderebilirsiniz.
Kritik Güvenlik Uyarısı' Alıntı:DİKKAT:
- Orijinal paylaşımlarda
WHEREşartı unutulduğu için sorgu çalıştırıldığında sunucudaki tüm oyuncuların verileri değişmekteydi. Aşağıdaki optimize sorguya tekil karakter filtresi (@CharName) eklenmiştir.- Karakterin bu güncellemeleri hatasız alabilmesi için kesinlikle oyunda olmaması (Offline/Exit) gerekir. Karakter oyundayken çalıştırırsanız GameServer bellek verisini tekrar DB'ye yazarak işlemi bozar.
- İşlem öncesinde SRO_VT_SHARD yedeğinizi almayı unutmayınız.
Hatasız & Güvenli SQL Query Kodu
İçeriği görüntülemek için Giriş yapın veya Kayıt olun.
Yapılan İyileştirmeler Nelerdir?
- Karakter Güvenliği (WHERE Şartı): Sorgunun tüm veritabanındaki oyuncuları bozması engellendi; işlem yalnızca en başta tanımladığınız
@CharNamekarakterine uygulanır. - Envanter Sınırı (108 Slot): Silkroad çanta yuvası sınırı 108'dir. 109 değeri istemcide slot taşmalarına ve eşyaların kaybolmasına yol açabildiği için stabil limit olan 108'e çekildi.
- Gold Taşma Koruması: Silkroad motorunda maksimum taşınabilir altın miktarı integer sınırına tabidir. Taşma (overflow) yaşanmaması için 2 Milyar Gold olarak sabitlendi.
- Dinamik Eşya Dağıtımı:
_ADD_ITEM_EXTERNfonksiyonuna doğrudan üstteki değişken bağlanarak tek tek isim yazma zahmeti ortadan kaldırıldı.
Nasıl Uygulanır?
- Hedef karakterin oyundan tamamen çıkış yaptığından emin olun (Offline).
- SQL Server Management Studio (SSMS) programını açıp New Query deyin.
- Yukarıdaki SQL kodunu yapıştırın.
- En üstteki
@CharName = 'CharNickYazin'kısmına karakterinizin tam adını yazın. - F5 tuşuna basarak sorguyu çalıştırın.
- Karakterle oyuna giriş yaptığınızda Jangan'da ful özellikleri ve çantasındaki eşyalarıyla hazır olduğunu göreceksiniz.
Sorularınızı ve takıldığınız yerleri bu konu altından paylaşabilirsiniz. Herkese keyifli geliştirmeler!
Moderatör tarafında düzenlendi:

