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

vSro Paylaşım vSRO Haritadaki Canavar Spawn Sayılarını Listeleme

Cevaplar0
Görüntüleme11
Ticaret Puanı
0
Katılım
8 Eyl 2026
Mesajlar
88
Tepkime puanı
1
Puanları
0
Mevcut Bakiye
2960 ₺
[REHBER & ANALİZ] vSRO Haritadaki Canavar Spawn Sayılarını Listeleme (/worldstatus Kontrolü)
Seviye ve Türlerine Göre Tab_RefNest Üzerindeki Toplam Canavar ve Unique Sayısını Raporlama



Merhaba değerli forum sakinleri,

Sunucunuzda oyun içi /worldstatus GM komutunu kullandığınızda karşınıza çıkan aktif toplam canavar sayısı ile veritabanınızdaki spawn yuvalarının (Tab_RefNest) birebir örtüşüp örtüşmediğini kontrol etmek, hangi canavardan haritada toplam kaç adet doğduğunu seviye seviye listelemek için bu sorguyu kullanabilirsiniz.

Teknik Bilgilendirme (Rarity Değerleri)' Alıntı:
Aşağıdaki sorguda bulunan d.Rarity filtresini hedefinize göre düzenleyebilirsiniz:
  • Rarity IN (0, 6): Normal ve Giant mobları listeler (Varsayılan kasılma slotları).
  • Rarity = 3: Yalnızca Unique canavarları listeler (Tiger Girl, Uruchi, Demon Shaitan vb.).
  • Rarity IN (3, 8): Hem Unique hem de Elite canavarları birlikte listeler.
  • Rarity = 1: Champion mobları listeler.



Optimize Edilmiş SQL Raporlama Sorgusu

SQL:
USE [SRO_VT_SHARD]
GO

-- ===================================================================
-- CANAVAR SPAWN ANALİZİ VE SAYIM RAPORU
-- ===================================================================
SELECT 
    d.CodeName128 AS [Canavar Kodu],
    e.Lvl AS [Seviye],
    CASE d.Rarity
        WHEN 0 THEN 'Normal'
        WHEN 1 THEN 'Champion'
        WHEN 3 THEN 'Unique'
        WHEN 6 THEN 'Giant'
        WHEN 7 THEN 'Titan'
        WHEN 8 THEN 'Elite'
        ELSE 'Diger'
    END AS [Canavar Turu],
    COUNT(a.dwNestID) AS [Toplam Slot/Yuva Sayisi],
    SUM(a.dwMaxTotalCount) AS [Maksimum Canli Mob Sayisi]
FROM dbo.Tab_RefNest a WITH (NOLOCK)
INNER JOIN dbo.Tab_RefTactics b WITH (NOLOCK) ON a.dwTacticsID = b.dwTacticsID
INNER JOIN dbo.Tab_RefHive c WITH (NOLOCK) ON a.dwHiveID = c.dwHiveID
INNER JOIN dbo._RefObjCommon d WITH (NOLOCK) ON b.dwObjID = d.ID
INNER JOIN dbo._RefObjChar e WITH (NOLOCK) ON d.Link = e.ID
INNER JOIN dbo._RefRegion f WITH (NOLOCK) ON a.nRegionDBID = f.wRegionID
WHERE 
    d.Service = 1 
    AND d.CodeName128 LIKE 'MOB_%'
    AND d.CodeName128 NOT LIKE 'MOB_GOD_%' -- Dimension Pillar türevlerini hariç tut
    AND f.ContinentName NOT LIKE 'GOD_TOGUI' -- Etkinlik zindanlarını hariç tut
    -- FILTRE: (Normal ve Giant moblar için: IN (0, 6) | Sadece Unique için: = 3)
    AND d.Rarity IN (0, 6)
GROUP BY 
    d.CodeName128, 
    e.Lvl, 
    d.Rarity
ORDER BY 
    e.Lvl ASC, 
    [Maksimum Canli Mob Sayisi] DESC



Farklı Filtreleme Varyasyonları

  • Sadece Unique Canavarları Görmek İçin:
    SQL:
    AND d.Rarity = 3
  • Unique ve Elite Canavarları Birlikte Görmek İçin:
    SQL:
    AND d.Rarity IN (3, 8)
  • Haritadaki Tüm Canavarları (Tüm Türler Dahil) Listelemek İçin:
    SQL:
    -- 'AND d.Rarity ...' satırının başına '--' koyarak devre dışı bırakmanız yeterlidir.



Nasıl Uygulanır ve Doğrulanı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. F5 tuşuna basarak çalıştırın.
  4. Alt panelde gelen sonuç tablosundaki toplam Maksimum Canli Mob Sayisi toplamı, oyun içinde GM karakterinizle /worldstatus yazdığınızda konsola basılan toplam aktif mob sayısıyla birebir örtüşmelidir.

Sorularınızı ve takıldığınız yerleri bu konu altından paylaşabilirsiniz. Herkese keyifli geliştirmeler!
 

Konuyu görüntüleyenler

Yükleniyor...
Yükleniyor...
Şu anda sitemizde 40,331 Aktif Kullanıcı
Çevrimiçi üyeler
Konular 1,311
Mesajlar 4,191
Kullanıcılar 1,624
Son üye mrt
Geri
Üst