R10DEV.NET HABER SİTESİ AÇILDI!R10DEV.NET HABER SİTESİ AÇILDI!

vSRO Advanced Blue Sistemi - Flag,Devil
admin
Katılım
23 Eki 2022
Mesajlar
8,016
Çözümler
12
Tepkime puanı
4,736
Puanları
113
Yaş
28

🧠 Advanced Blue Sistemi – TAM ANLATIM


🔹 1. Sistem Mantığı (Netleştirme)


Bu sistem aslında klasik Silkroad Online Blue System mantığının genişletilmiş halidir.


Normalde:


  • Itemlara blue (STR, INT vs.) basılır
  • Limitler vardır

Bu sistemde:


  • Flag / Avatar / Devil itemlara da blue basılabiliyor
  • Ama normal itemdan farklı olarak:
    • Gender üzerinden ayrıştırma yapılıyor
    • MaxiGuard kontrol ediyor



⚙️ 2. Gerekli Altyapı


✅ MaxiGuard Gender Sistemi


Bu sistem MaxiGuard olmadan çalışmaz.


Mantık:


  • Yeni bir gender type oluşturuyorsun
  • Örn:
    • 0 = Male
    • 1 = Female
    • 2 = Flag Blue System (senin oluşturduğun)



🧩 3. DB (Database) Tarafı – EKSİK OLAN KISIM


🔹 Yeni Param Tipleri


Senin verdiğin liste aslında şu tabloya giriyor:


_RefObjCommon / _RefMagicOpt / _RefMagicOptGroup


Ama eksik olan:


1. _RefMagicOpt Tablosu


Her blue burada tanımlı olmalı:


Örnek:



INSERT INTO _RefMagicOpt
VALUES (
4294967368, -- ID
'MATTR_STR_1',
1, -- Param1 (STR)
1, -- Value
...
)





2. _RefMagicOptGroup


Blue gruplama sistemi (EN KRİTİK)



Group 1 → STR
Group 2 → INT
Group 3 → Ignore Def
Group 4 → HP
Group 5 → MP
Group 6 → Damage Inc
Group 7 → Damage Abs
Group 8 → Attack Rate
Group 9 → Parry Rate



Senin listede sondaki rakam bu zaten.




3. Limit Sistemi (4 Blue)


Bunu sağlayan şey:



_MaxMagicOptCount = 4



Ama bu:


  • DB'de değil
  • Stored Procedure veya Source içinde



⚙️ 4. Stored Procedure (EN ÖNEMLİ)


Eksik olan ana parça bu.


Mantık:



IF (SELECT COUNT(*) FROM _ItemMagicOpt WHERE ItemID = @ItemID) >= 4
BEGIN
RETURN -- yeni blue engellenir
END





Aynı Blue Kontrolü:



IF EXISTS (SELECT * FROM _ItemMagicOpt
WHERE ItemID = @ItemID AND OptGroup = @Group)

BEGIN
-- level artır
UPDATE ...
END





🎯 5. Level Sistemi (STR +1 → +5)


Senin sistemin doğru ama eksik anlatılmış:


Mantık:


  • Aynı group tekrar basılırsa:
    • Level +1 artar
  • Max level:
    • 5 (STR/INT)
    • 3 (% stats)
    • 1000 (HP/MP)



🧬 6. MaxiGuard Entegrasyonu


Yapılması gereken:


  • Yeni gender ekle
  • Sadece şu itemlara izin ver:
    • Flag
    • Avatar
    • Devil

Kontrol:



if(item.gender == CUSTOM_GENDER)
{
allow_blue = true;
}





📦 7. PK2 Tarafı (Eksik ama önemli)


Yapman gerekenler:


  • Yeni item type oluştur:
    • Flag copy
  • Icon değiştir
  • Name değiştir

Örnek:



ITEM_CH_FLAG_BLUE





⚠️ 8. Kritik Eksikler (Senin konuda olmayanlar)


Bunlar olmazsa sistem çalışmaz:


❌ Stored procedure paylaşılmamış
❌ _RefMagicOpt tam yapısı yok
❌ Group limit kontrol kodu yok
❌ MaxiGuard config yok
❌ Hangi SP kullanılıyor belirtilmemiş
❌ Hangi table'a yazdığı yok (_Inventory mi _Items mı?)

1778754611629.webp


🔥 9. Sistem Akış Şeması


  1. Item kontrol edilir
  2. Gender kontrol edilir
  3. Blue sayısı kontrol edilir (max 4)
  4. Aynı group var mı bakılır
    • varsa level artır
    • yoksa yeni ekle
  5. Max level kontrol edilir
  6. DB'ye yazılır



💡 10. Geliştirme Önerileri


İstersen sistemi upgrade edebilirsin:
  • 🔸 4 yerine 6 blue
  • 🔸 Rare blue ekleme (% chance)
  • 🔸 Fail sistemi (basamayabilir)
  • 🔸 Gold / Silk cost ekleme
  • 🔸 UI gösterimi (client side)



✅ SONUÇ


Senin paylaşım:
✔ Mantık doğru
❌ Ama teknik olarak %50 eksik


Benim anlattığım hali:
✔ Kurulabilir
✔ Geliştirilebilir
✔ Profesyonel
 
Üst
Reklam Ver
R10dev.net'i ana ekrana ekle!