- #1
Konu Sahibi
: serkankacan
[REHBER & QUERY] vSRO RemoPanel Uyumlu TL Bakiye Scroll Yapımı
_LogIsOpenItem / _ItemQuotation Üzerinden RemoPanel Web Sitesine Otomatik TL (Kuruş/Decimal) Bakiyesi Yükleme
_LogIsOpenItem / _ItemQuotation Üzerinden RemoPanel Web Sitesine Otomatik TL (Kuruş/Decimal) Bakiyesi Yükleme
Merhaba değerli forum sakinleri,
Silkroad Online sunucularında oyuncuların oyun içinden elde ettikleri TL Scrollarını sağ tıklayıp kullandıklarında, bu bakiyenin doğrudan web paneline (**RemoPanel**) yansıması en çok talep edilen sistemlerden biridir.
RemoPanel'de Neden Özel Kod Gerekir?
RemoPanel bakiye sistemi, küsuratlı yüklemelere (Kuruş sistemi) imkan tanımak için veritabanında
credit sütununu DECIMAL(8,2) veya FLOAT olarak tutar. Klasik tamsayı (INT) güncellemeleri veya NULL kalan hesaplar doğru yönetilmezse bakiye yüklenmez veya hata verir.Aşağıda paylaşılan optimize kod;
NULL bakiye korumalıdır, JID birincil anahtarı üzerinden mikrosaniyeler içinde çalışır ve yapılan yüklemeyi güvenle loglar.Teknik Bilgilendirme' Alıntı:
- Kullanılan Tablo & Sütun:
SRO_VT_ACCOUNT.dbo.TB_User.credit- Veri Tipi:
DECIMAL(8,2)(Örn:5.00,10.50,50.00)- Entegrasyon Yeri:
SRO_VT_SHARDLOG.dbo._LogIsOpenItemveya kullandığınız filtre/parşömen tetikleyici prosedürü.- @Operation = 41: Parşömenin çantada sağ tıklanarak tüketildiğini (Open/Consume) belirten resmi Joymax operasyon kodudur.
- İşlem öncesinde SRO_VT_ACCOUNT yedeğinizi almayı unutmayınız.
Hatasız & Güvenli TL Scroll Prosedür Kodu
Aşağıdaki SQL kodunu görebilmek için konuyu beğenmeli ve bir yorum bırakmalısınız:
İçeriği görüntülemek için Giriş yapın veya Kayıt olun.
Neden Bu Optimize Versiyon Kullanılmalı?
- Kuruş / Decimal Uyumlu:
5.00şeklinde tanımlanmışDECIMAL(8,2)tipi sayesinde RemoPanel bakiyesinde eksik veya hatalı kuruş yuvarlamaları oluşmaz. - ISNULL Koruması: Web sitesinden yeni açılan ve daha önce hiç bakiye yüklenmemiş (
credit = NULL) hesaplarda oluşan bakiye yüklenmeme sorunuISNULL(credit, 0.00)ile kalıcı olarak çözülmüştür. - Hızlı JID İndeksi: Karakter kimliğinden doğrudan
JIDçekilerekTB_Usertablosunun birincil indeksine temas edilir; metin araması (StrUserID) devreden çıkarılarak lag engellenir. - Tip Uyuşmazlığı Yok: Sayısal değişkenlerdeki tırnak işaretleri kaldırılmıştır.
Nasıl Uygulanır & Test Edilir?
- SQL Server Management Studio (SSMS) programını açın.
- Yukarıdaki kod bloğundaki
@ItemRefID = 95001alanlarına kendi oluşturduğunuz TL Scroll eşyalarının_RefObjCommon.IDnumaralarını yazın. - Tetikleyici prosedürünüzün (
_LogIsOpenItem) içerisine yerleştirip F5 ile derleyin. - Oyuna girip TL Scroll'u çantanıza alın ve sağ tıklayarak kullanın.
- Oyun ekranında tebrik bildiriminin çıktığını doğrulayın.
- RemoPanel web sitesine giriş yaparak kullanıcı profilinizdeki TL Bakiyesinin anında arttığını teyit edin.
Sorularınızı ve farklı panel uyarlamaları taleplerinizi konu altından paylaşabilirsiniz. Herkese keyifli geliştirmeler!
Moderatör tarafında düzenlendi:

