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

vSro Paylaşım vSRO Oyunu Bırakan Oyuncuları Geri Döndürme (Comeback Ödül) Sistemi

Cevaplar1
Görüntüleme13
Ticaret Puanı
0
Katılım
8 Eyl 2026
Mesajlar
145
Tepkime puanı
24
Puanları
0
Mevcut Bakiye
3975 ₺
[REHBER & ETKİNLİK] vSRO Oyunu Bırakan Oyuncuları Geri Döndürme (Comeback Ödül) Sistemi
_Char ve LastLogout Üzerinden Belirli Tarihten Beri Oyuna Girmeyen Karakterlere Otomatik Telafi / Dönüş Ödülü Tanımlama​



Merhaba değerli forum sakinleri,

Silkroad Online sunucularınızda belirli bir süredir oyuna girmeyen veya oyunu bırakmış eski oyuncularınızı tekrar aktif etmek, onları yeni güncellemelerle sunucuya geri çağırmak için harika bir kampanya/etkinlik kurgulayabilirsiniz.

Belirleyeceğiniz bir tarihten önce oyundan çıkış yapmış ve o günden beri giriş yapmamış oyuncuların envanterlerine özel geri dönüş paketleri, Premium, rütbe veya değerli etkinlik eşyaları tanımlayabilirsiniz.

Eski Kodlardaki Hata & Optimizasyon Farkı:
İnternette paylaşılan ham sorgularda LastLogout > 'Tarih' şartı kullanılmıştır; bu durum oyunu bırakanlara değil, tam aksine aktif olarak oyuna girmeye devam eden güncel oyunculara ödül verir. Ayrıca `WHILE` döngüsü tüm silinmiş ID'leri de tek tek taradığı için binlerce boş adım atıp sunucuyu gereksiz kilitler.

Aşağıda hem mantık hatası giderilmiş hem de doğrudan hedef kitleyi (CURSOR ile yalnızca şartı sağlayan offline karakterleri) bularak ödülü saniyeler içinde teslim eden güvenli SQL şablonunu paylaşıyoruz.

Teknik Bilgilendirme & Kriterler' Alıntı:
DİKKAT:
  • Tarih Şartı (LastLogout < @TargetLogoutDate): Belirlediğiniz tarihten önce son çıkışını yapmış oyuncuları filtreler (Örn: Son 1 aydır hiç girmeyenler).
  • Karakter Durumu (CharID > 0): Yalnızca aktif ve silinmemiş karakterleri hedefler.
  • Online Kontrolü: Eşya eklenirken çanta senkronizasyonunun bozulmaması adına karakterlerin oyunda olmaması şartı gözetilir.
  • İşlem öncesinde SRO_VT_SHARD yedeğinizi almayı unutmayınız.



Hatasız & Optimize Edilmiş Geri Dönüş Ödül SQL Kodu

SRO_VT_SHARD
veritabanını seçip aşağıdaki optimize bloğu çalıştırın:





Neden Bu Optimize Versiyon Kullanılmalı?

  1. Kritik Mantık Hatası Düzeltildi: Eski koddaki > işareti yerine < kullanılarak gerçekten oyunu bırakmış olan pasif kitle filtrelenir; aktif oyunculara mükerrer eşya gitmesi engellenir.
  2. Milisaniyelik Performans (FAST_FORWARD CURSOR): Boş ID aralıklarında tek tek dönen `WHILE` döngüsü yerine doğrudan indeks üzerinden uyan kayıtları toplar; on binlerce kayıtlık tablolarda bile sunucuyu dondurmaz.
  3. Silinmiş Karakter Koruması: Silinmiş veya eksik kaydı bulunan (CharID <= 0) satırlar filtrelenerek prosedürün patlaması önlenir.



Nasıl Uygulanır?

  1. SQL Server Management Studio (SSMS) programını açın.
  2. Üst panelden New Query penceresi açıp yukarıdaki SQL kodunu yapıştırın.
  3. En üstteki @TargetLogoutDate alanına belirlediğiniz sınır tarihi, @RewardItemCode alanına ise hediye etmek istediğiniz eşyayı yazın.
  4. F5 tuşuna basarak çalıştırın.
  5. Alt panelde kaç oyuncuya ödülün başarıyla tanımlandığını kontrol edin.
  6. Sosyal medya veya Discord üzerinden eski oyuncularınıza duyuru geçerek ödüllerin çantalarına yüklendiğini bildirin.

Sorularınızı ve farklı ödül filtreleme taleplerinizi konu altından iletebilirsiniz. Herkese bol oyunculu ve keyifli sunucular!
 

Konuyu görüntüleyenler

Yükleniyor...
Yükleniyor...
Şu anda sitemizde 27,426 Aktif Kullanıcı
Çevrimiçi üyeler
Konular 1,373
Mesajlar 4,353
Kullanıcılar 1,670
Son üye Canbey
Geri
Üst