Merhaba, Hoşgeldin!

VSRO.org, Silkroad Online, Knight Online, Metin2 ve diğer çevrimiçi oyunlar için öncü bir yardım ve geliştirme platformudur. Misyonumuz, bilgi ve deneyim sahibi bireyleri, bilgiye ihtiyaç duyanlarla bir araya getirerek, zengin bir etkileşim ortamı yaratmak ve farklı bakış açılarını birleştirmektir. Topluluğumuzda güçlü bir işbirliği ve öğrenme kültürü oluşturarak, herkesin değerli katkılarda bulunmasını sağlıyoruz.

Yeni başlayanlar için Silk Scroll Ekleme (Detaylı)

emeğinize sağlık. güzel paylaşım olmuş. benim bir sorum olacakta mesela ben 5-10-25-50-100-200-300-500-750-1000-2000-3000-5000 gibi 8-10 tane silk scrool eklemek istiyorum bunun için hepsine ayrı ayrı Skilmi yapmam gerekiyor
 
emeğinize sağlık. güzel paylaşım olmuş. benim bir sorum olacakta mesela ben 5-10-25-50-100-200-300-500-750-1000-2000-3000-5000 gibi 8-10 tane silk scrool eklemek istiyorum bunun için hepsine ayrı ayrı Skilmi yapmam gerekiyor
Teşekkürler, evet prosedürde refSkillID'yi tetiklediğimiz için her silk oranı için ayrı ayrı skill yapmanız gerekir.
 
Teşekkürler, evet prosedürde refSkillID'yi tetiklediğimiz için her silk oranı için ayrı ayrı skill yapmanız gerekir.
Tamam teşekkurler ozaman 10tane silk ekliceksem bunuda 10.adete cikarip eklicem ozaman teşekkürler😊
Üst üste post gönderildiği için tek mesajda birleştirildi:


Merhabalar,
Bu konu her ne kadar daha önce açılmış olsa da, anlatımlar yetersiz kalabiliyor.
Dolayısıyla detaylı bir şekilde anlatma gereği duydum.
Silk scroll oluştururken 2 farklı yol izlenebilir,
Birincisi (dc verdirmeden)_addlogitem'e doğrudan itemin _RefObjCommon'da bulunan ID'si ile bağlanarak,
İkincisi (dc verdirerek) skill oluşturarak dc vermesini sağlayan _addtimedjob prosedürü ile.

İkinci yöntemle oluşturmanız önerilir, birinci yöntemde bug oluşabilir.

Öncelikle SQL'de yapacağımız işlem için gereken tabloları bilelim,
_RefObjCommon
_RefObjItem
_RefSkill
_RefSkillGroup
Prosedür _AddLogItem [SRO_VT_LOG]
Prosedür _AddTimedJob

Haydi başlayalım!
Excell veya notepad++'a gerekli değerli ayrı ayrı çekeceğiz.


#Birinci Yöntemle (dc verdirmeden) Silk scroll oluşturmak için;
#1.1 _RefObjCommon
Aşağıda vermiş olduğum query ile F10'da ekli olan hızlı return'un _RefObjCommon'daki satırlarını bulup alıyoruz.
SQL:
İçeriği görebilmek için Giriş yap ya da üye ol.

Rich (BB code):
İçeriği görebilmek için Giriş yap ya da üye ol.
Buradaki
Codename128 (ITEM_MALL_RETURN_SCROLL_HIGH_SPEED)
NameStrID128 (SN_ITEM_MALL_RETURN_SCROLL_HIGH_SPEED)
DescStrID128 (SN_ITEM_MALL_RETURN_SCROLL_HIGH_SPEED_TT_DESC)
girdilerini yeni oluşturacağımız scroll'a göre değiştiriyoruz.

#1.2 _RefObjItem
Daha sonra aşağıda vermiş olduğum query ile _RefObjItem'deki satırlarını bulup alıyoruz.
SQL:
İçeriği görebilmek için Giriş yap ya da üye ol.

Rich (BB code):
İçeriği görebilmek için Giriş yap ya da üye ol.
Buradaki
MaxStack (50) yazan değeri 1 yapmayı unutmayın!

#Bu aldığımız satırları _RefObjCommon'a ve _RefObjItem'e giriyoruz, bu sayede scroll'u klonlamış oluyoruz.
#Yeni oluşturduğumuz itemin _RefObjItem ID'sini _RefObjCommon'daki son sütuna Link'e giriyoruz.

#1.3 _AddLogItem Prosedürü
Bu prosedür 2 farklı yerde olduğundan dolayı kafanız karışmasın,
SRO_VT_LOG>Programmability>Stored Procedures>dbo._AddLogItem'i açıyoruz ve as'den sonra prosedürümüzü ekliyoruz;
SQL:
İçeriği görebilmek için Giriş yap ya da üye ol.
##media kısmı için, yukarıda yaptığımız işlemlere göre sadece scroll oluşturduk,
dolayısıyla db2pk2 veya dbtomedia ile Itemdata_xxx.txt'leri çıkartacağız
ve textdata_obj'e yeni oluşturduğumuz scrollun adını ekleyeceğiz.
Textdata_Obj için örnek;
Rich (BB code):
İçeriği görebilmek için Giriş yap ya da üye ol.

Itemdata_xxx.txt'leri ve textdata_object.txt'yi patch atacağız.
İşlem tamamlandı tebrikler.

====================================================================================================

Gelelim ikinci yönteme;
#İkinci yöntemle (dc verdirerek) silk scroll oluşturma;

#2.1 _RefSkillGroup
Öncelikle disconnect vermesi için skill oluşturacağız, skill oluşturmadan önce ise skillgroup oluşturmamız gerekiyor.

Rich (BB code):
İçeriği görebilmek için Giriş yap ya da üye ol.
1015 refskillgroupID'miz bu değeri sql otomatik olarak veriyor, SKILL_CRYPTO_SILK10_DC ise bizim oluşturacağımız skill'in kodu.
Burada yapacağımız işlem bu kadar.

#2.2 _RefSkill
Şimdi ise aşağıdaki örnekteki gibi skill'imizi oluşturuyoruz.

Rich (BB code):
İçeriği görebilmek için Giriş yap ya da üye ol.
Buradaki;
RefSkillID sql'in otomatik olarak verdiği ID değeridir.
GroupID _RefSkillGroup'da oluşturduğumuz ID ile aynı olmak zorundadır.
Basic_Code _RefSkillGroup'da oluşturduğumuz Skill koduyla aynı olmak zorundadır.
UI_IconFile clientinizde olan bir ddj yolunu tanımlayın.
SN_SKILL_CRYPTO_SILK10_DC oluşturduğumuz skill'e göre bunuda değiştirin.
SN_SKILL_CRYPTO_SILK10_DC_TT_DESC oluşturduğumuz skill'e göre bunuda değiştirin.

#2.3 _RefObjCommon
Yukarıda da vermiş olduğum query ile F10 Hızlı return scroll'un _RefObjCommon'daki satırlarını alıyoruz;
SQL:
İçeriği görebilmek için Giriş yap ya da üye ol.

Rich (BB code):
İçeriği görebilmek için Giriş yap ya da üye ol.
Daha sonra bu aldığımız değerleri yeni oluşturacağımız scroll'a göre düzenliyoruz.

Codename128 (ITEM_MALL_RETURN_SCROLL_HIGH_SPEED)
NameStrID128 (SN_ITEM_MALL_RETURN_SCROLL_HIGH_SPEED)
DescStrID128 (SN_ITEM_MALL_RETURN_SCROLL_HIGH_SPEED_TT_DESC)
Bu kısımları kendimize göre düzenliyoruz ve aşağıdaki verdiğim sütunların değerlerini düzeltiyoruz.
TypeID1 yerine 3
TypeID2 yerine 3
TypeID3 yerine 13
TypeID4 yerine 14
CanUse yerine 129
olacak şekilde değerlerimizi değiştiriyoruz.

#2.4 _RefObjItem
Daha sonra aşağıda vermiş olduğum query ile _RefObjItem'deki satırlarını bulup alıyoruz.
SQL:
İçeriği görebilmek için Giriş yap ya da üye ol.

Rich (BB code):
İçeriği görebilmek için Giriş yap ya da üye ol.

Buradaki işlemimiz birincidekinden biraz farklı olacak;
MaxStack 1 yapacağız ardından,

Desc2_128 kısmını RefSkill'de oluşturduğumuz basic_code'a göre düzenleyeceğiz, aşağıdaki örnekteki gibi.
[USU1:SKILL_CRYPTO_SILK10_DC]

Desc3_128'de bulunan RESURRECT'i xxx olarak değiştireceğiz.

#2.5 _AddTimedJob Prosedürü
Prosedürde bulunan return -3 disconnect vermesini sağlar. X yerine silk miktarını @JobID='den sonra 33791 yerine refskillID'nizi girerek tamamlayabilirsiniz.
SQL:
İçeriği görebilmek için Giriş yap ya da üye ol.

##media kısmı için, yukarıda yaptığımız işlemlere göre;
dbtomedia veya db2pk2 ile skilldata_xxx_enc.txt'lerimizi çıkartacağız (dbtomedia'da sorun yaşayabilirsiniz o yüzden db2pk2 kullanmanızı öneririm.)
dbtomedia veya db2pk2 ile itemdata_xxx.txt'lerimizi çıkartacağız.
pk2 çıkarıcı ile textdata_object.txt'mizi çıkartacağız ve textdata_object.txt'ye yeni oluşturduğumuz scroll'u ekleyeceğiz.
Son olarak skilldata_xxx_enc.txt & itemdata_xxx.txt & textdata_object.txt'yi patch atacağız.
İşlem tamamlandı tebrikler!
Hocam bugun anca yüklemeye başladımda prosedürde 1.tane ekleyince kabul ediyo ama çokluda hata veriyo onu nasıl devam ettiricez prosedürü
 
herhangi bir sorun yaşayan oldumu bu silk subQuerysinde
Üst üste post gönderildiği için tek mesajda birleştirildi:

Eger çoklu ve çok iyi performanslı bir şekilde eklemek isterseniz


SQL:
İçeriği görebilmek için Giriş yap ya da üye ol.
 
Geri
Üst Alt