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

vSro Paylaşım vSRO Devil's Spirit (Devil) Cinsiyet Değiştirici Scroll

Cevaplar0
Görüntüleme7
Ticaret Puanı
0
Katılım
8 Eyl 2026
Mesajlar
88
Tepkime puanı
1
Puanları
0
Mevcut Bakiye
2960 ₺
[REHBER & SİSTEM] vSRO Devil's Spirit (Devil) Cinsiyet Değiştirici Scroll
_AddLogItem Tetikleyicisi Üzerinden Slot 13'teki Devil'ın Cinsiyetini (Male <-> Female) Eşitleme



Merhaba değerli forum sakinleri,

Sunucunuzda oyuncuların yanlış cinsiyet için aldıkları veya karakter cinsiyeti değiştirdiklerinde kullanamaz hale geldikleri **Devil's Spirit (Melek / Şeytan)** eşyalarının cinsiyetini (Erkek <-> Kadın) pratik şekilde çevirebilmeleri için özel bir scroll sistemi hazırlayabilirsiniz.

Aşağıda paylaşılan optimize edilmiş prosedür; oyuncunun çantasının **ilk yuvasına (Slot 13)** koyduğu Devil'ın seviyesini, rengini ve türünü (Event / Item Mall, Grade A / B / S) tespit eder; **artısını (+), kalan süresini ve statlarını bozmadan** karşı cinsiyetine dönüştürür ve bellek çakışmasını engellemek için karakteri güvenle oyundan düşürür (Disconnect).

Kullanım Kuralı & Önemli Uyarı' Alıntı:
DİKKAT:
  • Oyuncu cinsiyetini değiştirmek istediği Devil'ı çantasının **en sol üst köşesindeki ilk yuvaya (Slot 13)** yerleştirmelidir.
  • Scroll basıldığında eşyanın istemcide yeni görünümünü anında alması ve GameServer hafızasıyla DB senkronizasyonunun bozulmaması için oyuncu otomatik olarak oyundan düşürülür (DC edilir).
  • İşlem öncesinde SRO_VT_LOG ve SRO_VT_SHARD yedeklerinizi almayı unutmayınız.



Desteklenen Devil Türleri (Male <-> Female Eşleşmeleri)

Devil TürüErkek (Male) IDKadın (Female) ID
Devil Spirit B (Event)2441424413Devil Spirit A (Kırmızı - Event)2497224971Devil Spirit A (Sarı - Event)2497424973Devil Spirit A (Mavi - Event)2497624975Devil Spirit S (Event)2497824977Devil Spirit A (Kırmızı - Mall)2440624405Devil Spirit A (Sarı - Mall)2440824407Devil Spirit A (Mavi - Mall)2441024409Devil Spirit S (Mall)2441224411

</TR>
[TR]

</TR>
[TR]

</TR>
[TR]

</TR>
[TR]

</TR>
[TR]

</TR>
[TR]

</TR>
[TR]

</TR>
[TR]

</TR>
[TR]



Optimize Edilmiş _AddLogItem Kodu

SRO_VT_LOG
veritabanındaki **_AddLogItem** prosedürünü açın (Modify) ve uygun bir satıra aşağıdaki tekil sorgulu, optimize bloğu ekleyin:

SQL:
-- ===================================================================
-- DEVIL GENDER (CİNSİYET) DEĞİŞTİRİCİ SCROLL SİSTEMİ
-- @Operation = 41 (Eşya Sağ Tıklanarak Tüketildiğinde Tetiklenir)
-- @ItemRefID = 78342 (Kullandığınız Scroll'un RefItemID Değeri)
-- ===================================================================
IF (@Operation = 41 AND @ItemRefID = 78342)
BEGIN
    -- 1. Slot 13'teki eşyanın ID64 ve RefItemID bilgisini al
    DECLARE @InvID64 BIGINT = NULL
    DECLARE @CurRefItemID INT = NULL

    SELECT 
        @InvID64 = INV.ItemID,
        @CurRefItemID = IT.RefItemID
    FROM SRO_VT_SHARD.dbo._Inventory INV
    INNER JOIN SRO_VT_SHARD.dbo._Items IT ON IT.ID64 = INV.ItemID
    WHERE INV.CharID = @CharID 
      AND INV.Slot = 13 
      AND INV.ItemID > 0

    -- 2. Yeni cinsiyet RefItemID değerini belirle (CASE-WHEN ile Tek Seferde)
    DECLARE @NewRefItemID INT = NULL

    SET @NewRefItemID = CASE @CurRefItemID
        -- Erkek -> Kadın Dönüşümleri:
        WHEN 24414 THEN 24413 -- Devil B Event
        WHEN 24972 THEN 24971 -- Devil A Red Event
        WHEN 24974 THEN 24973 -- Devil A Yellow Event
        WHEN 24976 THEN 24975 -- Devil A Blue Event
        WHEN 24978 THEN 24977 -- Devil S Event
        WHEN 24406 THEN 24405 -- Devil A Red Mall
        WHEN 24408 THEN 24407 -- Devil A Yellow Mall
        WHEN 24410 THEN 24409 -- Devil A Blue Mall
        WHEN 24412 THEN 24411 -- Devil S Mall

        -- Kadın -> Erkek Dönüşümleri:
        WHEN 24413 THEN 24414 -- Devil B Event
        WHEN 24971 THEN 24972 -- Devil A Red Event
        WHEN 24973 THEN 24974 -- Devil A Yellow Event
        WHEN 24975 THEN 24976 -- Devil A Blue Event
        WHEN 24977 THEN 24978 -- Devil S Event
        WHEN 24405 THEN 24406 -- Devil A Red Mall
        WHEN 24407 THEN 24408 -- Devil A Yellow Mall
        WHEN 24409 THEN 24410 -- Devil A Blue Mall
        WHEN 24411 THEN 24412 -- Devil S Mall
        ELSE NULL
    END

    -- 3. Eğer Slot 13'teki eşya geçerli bir Devil ise güncelle ve karakteri DC et
    IF (@NewRefItemID IS NOT NULL AND @InvID64 IS NOT NULL)
    BEGIN
        -- Eşyanın sadece tür referansını değiştiriyoruz (Artı ve özellikleri korunur)
        UPDATE SRO_VT_SHARD.dbo._Items
        SET RefItemID = @NewRefItemID
        WHERE ID64 = @InvID64

        -- Karakteri güvenli şekilde oyundan düşür (Senkronizasyon garantisi)
        UPDATE SRO_VT_SHARD.dbo._User
        SET Sec_Primary = 1
        WHERE CharID = @CharID
    END
END



Nasıl Test Edilir?

  1. SQL kodunu `_AddLogItem` prosedürüne yapıştırıp F5 ile derleyin.
  2. Herhangi bir erkek veya kadın Devil'ı çantanızın **ilk yuvasına (Slot 13)** yerleştirin.
  3. 78342 kodlu parşömene sağ tıklayarak kullanın.
  4. Karakter anında oyundan düşecektir (Disconnect).
  5. Oyuna tekrar girdiğinizde Slot 13'teki Devil'ın cinsiyetinin değiştiğini, artı değerinin ve süresinin ise eksiksiz korunduğunu göreceksiniz.

Sorularınızı ve eklemek istediğiniz özel Devil modellerini konu altından iletebilirsiniz. Herkese keyifli geliştirmeler!
 

Konuyu görüntüleyenler

Yükleniyor...
Yükleniyor...
Etiketler
Etiketler Etiketler
devil item prosedür scroll vsro
Şu anda sitemizde 40,422 Aktif Kullanıcı
Çevrimiçi üyeler
Konular 1,311
Mesajlar 4,191
Kullanıcılar 1,624
Son üye mrt
Geri
Üst