İçeriğe geç
Türkiye'nin SRO tanıtım & topluluk platformu

vSro Paylaşım vSRO Durability (Dayanıklılık) Reset & Repair Scroll Sistemi

Cevaplar0
Görüntüleme394
serkankacan paylaşımı beğendiysen ona bir kahve ısmarlayabilirsin
Kahve ısmarla
Ticaret Puanı
0
Katılım
8 Eyl 2026
Mesajlar
200
Tepkime puanı
33
Puanları
0
Mevcut Bakiye
290 ₺
[REHBER & QUERY] vSRO Durability (Dayanıklılık) Reset & Repair Scroll Sistemi
Slot 13'teki Eşyanın Statlarına Dokunmadan Dayanıklılığını (Data) Maksimuma Eşitleme​



Merhaba değerli forum sakinleri,

Sunucunuzda dayanıklılığı (Durability) sıfırlanmış, yıpranmış veya tamir edilmesi gereken eşyalar için özel bir **Durability Reset Scroll** tasarlamak isteyebilirsiniz.

İnternette dolaşan eski paylaşımlarda MagParamNum = 0, MagParam1 = NULL şeklinde kodlar bulunmaktadır; BU KODLARI KESİNLİKLE KULLANMAYINIZ! Çünkü o kodlar durability düzeltmez; eşyanın üzerindeki STR, INT, HP, MP, Critical gibi **tüm blue statlarını tamamen siler ve itemi çöp eder!**

Silkroad veritabanında eşyanın mevcut dayanıklılığı `_Items` tablosundaki Data sütununda tutulur. Aşağıda eşyanın hiçbir statına dokunmadan sadece dayanıklılığını maksimum değere eşitleyen ve senkronizasyon için oyuncuyu güvenle DC eden hatasız prosedürü paylaşıyoruz.

Önemli Uyarı' Alıntı:
DİKKAT (Kullanım Kuralı):
  • Oyuncu tamir etmek istediği eşyayı çantasının **ilk yuvasına (Slot 13)** koymalıdır.
  • Scroll basıldığında sunucu belleğindeki eşya verisinin veritabanıyla çakışmaması için oyuncu anında oyundan düşürülür (DC edilir). Tekrar girdiğinde eşyası %100 tamir edilmiş olur.
  • İşlem öncesinde SRO_VT_LOG ve SRO_VT_SHARD yedeğinizi almayı unutmayınız.



Hatasız & Güvenli _AddLogItem Kodu

SRO_VT_LOG
veritabanını açın, **Programmability -> Stored Procedures -> _AddLogItem** prosedürüne sağ tıklayıp **Modify** deyin. AS bloğunun uygun bir yerine aşağıdaki kodu ekleyin:





Neden Bu Yöntem Doğru?

  1. Stat Güvenliği: MagParam sütunlarına dokunulmadığı için silah veya zırhın üzerindeki hiçbir Blue, White veya Advanced Elixir özelliği kaybolmaz.
  2. Dinamik Dayanıklılık: Eşyanın orijinal maksimum dayanıklılığı _RefObjItem tablosundan çekilerek yazılır; böylece ister kalkan ister silah olsun her eşya kendi orijinal kapasitesine göre tamir edilir.
  3. Bellek Koruması (Sec_Primary = 1): Karakter anında oyundan düşürülerek GameServer'ın bozuk dayanıklılık verisini veritabanının üzerine tekrar yazması (Rollback bugu) kesin olarak engellenir.



Nasıl Test Edilir?

  1. SQL kodunu `_AddLogItem` prosedürüne kaydedin (F5 / Execute).
  2. Dayanıklılığı azalmış veya kırılmış bir eşyayı envanterin **en sol üst köşesine (1. Slot - Sistemdeki Slot 13)** yerleştirin.
  3. 78343 numaralı parşömene sağ tıklayarak basın.
  4. Karakteriniz oyundan düşecektir (Disconnect).
  5. Oyuna tekrar girdiğinizde eşyanın dayanıklılığının hiçbir stat kaybı olmadan %100 tamir olduğunu göreceksiniz.

Sorularınızı ve takıldığınız yerleri bu konu altından iletebilirsiniz. Herkese keyifli geliştirmeler!
 
Moderatör tarafında düzenlendi:

Konuyu görüntüleyenler

Yükleniyor...
Yükleniyor...
Etiketler
Etiketler Etiketler
database durability item sql vsro
Şu anda sitemizde 217 Aktif Kullanıcı
Çevrimiçi üyeler
Konular 1,451
Mesajlar 4,568
Kullanıcılar 1,853
Son üye Vael
Geri
Üst