Heraklia Network

Heraklia Network
Server IP: 77.245.152.68
Panel : 77.245.152.68
Bir çoğumuz artık sıkıldık, zor DB ler, boşuna kasılan charlar, emek hırsızlığı ve daha neler neler… Bunların hepsine dur diyebileceğiniz; eğlenceli, seviyeli, saygılı ve ilgili oyun yöneticilerimizle birlikte kurduğumuz bu DB’de amaç asla maddi kazanç sağlamak değildir. Bütün arkadaşlarımızı bekliyoruz
Heraklia Network Özellikleri ;
Ø Otomatik üyelik
Ø Otomatik symbol
Ø Sürekli IP takip paneli
Ø Lunar War’S
Ø Krowaz items
Ø Game master yönetim takibi
Ø Düzenli olarak Clan War’S
Ø 83 skill full patch
Ø 1299 Private
Ø (Edit item yada char satışı yapılmamaktadır.)
Ø Sürekli olarak GM desteği
Ø Sunucu Secruty
Ø So so … And No one stop us!!!
Daha fazla zırvalayıp zamanınızı almak istemiyorum. Sizler için uğraşıp, emek harcayan arkadaşlara çok teşekkür ederim ve gerçekten bu emeğe deyecek online user yakalayacağımıza inanıyorum. Hedefimiz ilk ayımızda 200 Online User ve üzerini yakalamak. Sanırım bunu sizlerin yardımarıyla başarabileceğiz. Sorularınızla ilgilenebilmek için sürekli konu takip altında olacaktır. Görüşleriniz, düşünceleriniz ve sunacağınız önerileriniz bizim için değerlidir.
Heraklia Network Yönetim İyi Eğlenceler Diler
Server Adı : HerakLia a
* Server IP : 77.245.152.68
* Server Web Site : http://77.245.152.68/
* Versiyon : 1299
* Online Süresi : 7/24
* Item : Orta Kolay
* LVL : 65 % Kolay
* Upgrade : %100
* Baslangıç NP : 100
* Üyelik : Otomatik
* Master : Oto
* Sunucu Türü : Deciated
* Joblar : Hepsi Eşit
* Baslangıç Leveli : 1
* LVL Sınırı : 83
* KoPanel : Var
* KoForum : Var
* Premium : yok
* Clan Ranking : Aktif
* User NP Simgeleri : Aktif * Castle Siege War (delos-kale savaşı) : Aktif
* Usko Colony Zone : Aktif
* Usko Eslant : Aktif
* 80-83 Skilleri : Aktif
* KK(Walkry) Armor : Aktif
*
* Krallık Sistemi : Aktif
* NICK Değiştirme : Aktif
* IRK Değiştirme : Aktif
* Chaotic Generator : Aktif
* Forgotten Temple : Aktif
* Andream : Aktif
* Pet Sistemi : Pasif
* Archery (yay ve ok) : Aktif
* Char açarken İ,I : Pasif
* Bifrost : aktif
* Reset Zamanı : 12:00
* GM Satışı :
* Lunar War (işgal savaşı) : Aktif
* Commander Horse (savaş atı) : Aktif
Pk Server Oldugu için Droplar maradondan cıkmaktadır.
Bu Konuya hiç etiket eklenmedi.+1′den +21′e Kadar Rebirth Raptor [QA Kodları + Patch]
Bu Konuya hiç etiket eklenmedi.
Pathos Gloves Patch (Sorunsuz - Tek El)
1299 Private Serverlarda, çok uzun süreden beri yapılmak istenilen pathos gloves’i sonunda Qp__ adlı arkadaşımız bunu yapmayı başardı. Fakat tek sorun tek el olması.
Classlara Göre Yanma Renkleri:
- Kırmızı: Karus Warrior ve Human Barbarian
- Yeşil: Karus Male ve Human Male
- Mavi: Karus Famele ve Human Famele
- Pembe: Karus Cüce ve Kadın Mage
Kurulum:
- Aşağıdaki linklerden Pathos Gloves Patch.exe‘yi indirin.
- İndirdiğiniz exe’yi ileri > ileri diyerek çıkartın.
- Masaüstünde oluşan klasörün içindeki " Data,Chr ve Fx" klasörlerini Clientinizin içine kopyalayın ve değişimi onaylayın..
Pathos Gloves Patch(Sorunsuz - Tek El)[Rapidshare]
Pathos Gloves Patch(Sorunsuz - Tek El)[MegaUpload]
Pathos Gloves Patch(Sorunsuz - Tek El)[MediaFire]
Pathos Gloves Patch(Sorunsuz - Tek El)[SendSpace]
Pathos Gloves Patch(Sorunsuz - Tek El)[Zshare]
Pathos Gloves Patch(Sorunsuz - Tek El)[Bodongo]
Pathos Gloves Patch(Sorunsuz - Tek El)[DepositFiles]
Pathos Gloves Patch(Sorunsuz - Tek El)[HotFile]
Pathos Gloves Patch(Sorunsuz - Tek El)[Uploading]
Pathos Gloves Patch(Sorunsuz - Tek El)[2Shared]
Pathos Gloves Patch(Sorunsuz - Tek El)[Easy-Share]
Pathos Gloves Patch(Sorunsuz - Tek El)[YouSendIt]
Cure,Buff SC,Sw Sc,Kitap,Enchant,Cake vb. Sınırsız Yapma
- Cure
- Snow Ball
- Weapon Enchant
- Armor Enchant
- Kitap
- 2000 Buff Sc
- Swift Sc
- Atack Sc
- 350 Ac Sc
- Power Of Lion
- GLutinous Cake
- STR Sc
- Başlat > Tüm Programlar > Microsoft SQL Server > Query Analyzer ‘ a giriyoruz.
- SQL Server’ a bağlanıyoruz ve açılan ekranda ” master ” yerine ” DBmizi ” seçiyoruz.
- Seçtikten sonra aşağıdaki kodu kopyalayıp , yapıştırıyoruz ve F5 yaparak kodumuzu uyguluyoruz.
update magic set useitem='0' where useitem='370005000'
update magic set useitem='0' where useitem='389077000'
update magic set useitem='0' where useitem='389155000'
update magic set useitem='0' where useitem='389156000'
update magic set useitem='0' where useitem='389026000'
update magic set useitem='0' where useitem='810081000'
update magic set useitem='0' where useitem='800015000'
update magic set useitem='0' where useitem='800014000'
update magic set useitem='0' where useitem='810080000'
update magic set useitem='0' where useitem='800028000'
update magic set useitem='0' where useitem='389035000'
update magic set useitem='0' where useitem='800023000'
-- Cure,Snow Ball,Weapon Enchant,Armor Enchant,Kitap,2000 Buff Sc,Swift Sc,Atack Sc,350 Ac Sc,Power Of Lion,GLutinous Cake,STR Sc sınırsız yapmak--Bu Konu privates.'da d0FuTr [!] Tarafından Yayımlanmıştır..
update magic set useitem='0' where useitem='370005000' --Cureupdate magic set useitem='0' where useitem='389077000' --Snow Ballupdate magic set useitem='0' where useitem='389155000' --Weapon Enchantupdate magic set useitem='0' where useitem='389156000' --Armor Enchantupdate magic set useitem='0' where useitem='389026000' --Kitapupdate magic set useitem='0' where useitem='810081000' --2000 Buff Scupdate magic set useitem='0' where useitem='800015000' --Swift Scupdate magic set useitem='0' where useitem='800014000' --Atack Scupdate magic set useitem='0' where useitem='810080000' --350 Defans Scupdate magic set useitem='0' where useitem='800028000' --Power of Lion Scupdate magic set useitem='0' where useitem='389035000' --GLutinous Cakeupdate magic set useitem='0' where useitem='800023000' --STR Sc
DB’nizde Karakter’den Karaktere İtem Aktarma
- İki Karakter Arası İtem Aktarmayı Sağlar.
- Kesinlikle Kopyalama Yapmaz.
- Aktarılan Kişinin İtemleri,Aktarıldıktan sonra silinir.
- Başlat > Tüm Programlar > Microsoft SQL Server > Query Analyzer ‘ a giriyoruz.
- SQL Server’ a bağlanıyoruz ve açılan ekranda ” master ” yerine ” DBmizi ” seçiyoruz.
- Seçtikten sonra aşağıdaki kodu kopyalayıp , yapıştırıyoruz ve F5 yaparak kodumuzu uyguluyoruz.
--Bu kod HcK_oO1 Tarafından Yazılmıştır.--Karakter'den Karaktere İtem Aktarmayı Sağlar.--Bu Konu privateserverlar.blogspot.com'da d0FuTr [!] Tarafından Yayımlanmıştır.
CREATE PROCEDURE [KARAKTER_ITEM_AKTAR]/*Author : HcK_oO1Created : 01.04.2009 - 18:03Updated : 01.04.2009 - 19:05*/
@itemlichar varchar(30),@itemsizchar varchar(30)as
DECLARE @strItem varchar(400)
update userdata set stritem=(select stritem from userdata where struserid = @itemlichar ) where struserid = @itemsizcharupdate userdata set stritem='NULL' where struserid= @itemlicharBEGIN
PRINT '# ITEM Aktarma Sonucları ;' PRINT '#' PRINT '# ' + RTRIM(LTRIM(@itemlichar)) + ' Hesabındaki Tüm Itemler Itemsiz Chara Aktarilmıştır' PRINT '#' PRINT '# ' + RTRIM(LTRIM(@itemlichar)) + ' Hesabındaki Tüm Itemler Silinmiştir'
ENDGO
--Bu kod HcK_oO1 Tarafından Yazılmıştır.--Karakter'den Karaktere İtem Aktarmayı Sağlar.
exec KARAKTER_ITEM_AKTAR'itemlichar','itemsizchar'
3 MB Data (Sorunsuz)
- Aşağıdaki linkten dosyayı indirin.
- İndirdiğiniz dosyaları setup.tan çıkarın .
- Clientiniz içindeki "Data" klasörünü silin ve Çıkardığınız "Data" klasörünü Clientiniz içerisine atın.
Bu Konuya hiç etiket eklenmedi.3 MB Data (Sorunsuz)[Rapidshare]
3 MB Data (Sorunsuz)MegaUpload]
3 MB Data (Sorunsuz)[MediaFire]
3 MB Data (Sorunsuz)[SendSpace]
3 MB Data (Sorunsuz)[Zshare]
3 MB Data (Sorunsuz)[Bodongo]
3 MB Data (Sorunsuz)[DepositFiles]
3 MB Data (Sorunsuz)[HotFile]
3 MB Data (Sorunsuz)[Uploading]
3 MB Data (Sorunsuz)[2Shared]
3 MB Data (Sorunsuz)[Easy-Share]
3 MB Data (Sorunsuz)[YouSendit]
%100 Usko Drop QA Kodu
- Başlat > Tüm Programlar > Microsoft SQL Server > Query Analyzer ‘ a giriyoruz.
- SQL Server’ a bağlanıyoruz ve açılan ekranda ” master ” yerine ” DBmizi ” seçiyoruz.
- Seçtikten sonra aşağıdaki kodu kopyalayıp , yapıştırıyoruz ve F5 yaparak kodumuzu uyguluyoruz.
TRUNCATE TABLE K_MONSTER_ITEM GO
insert into k_MONSTER_ITEM values (100 , 389074000 , 3000 , 389074000 , 5000 , 389075000 , 3500 , 330310014 , 100 , 391010000 , 3500)insert into k_MONSTER_ITEM values (101 , 379067000 , 300 , 389074000 , 5000 , 379016000 , 100 , 330310014 , 1 , 391010000 , 2000)insert into k_MONSTER_ITEM values (102 , 379067000 , 300 , 389074000 , 5000 , 379016000 , 100 , 330310014 , 1 , 391010000 , 3000)insert into k_MONSTER_ITEM values (103 , 379067000 , 300 , 389074000 , 5000 , 379016000 , 100 , 330310014 , 1 , 391010000 , 4000)insert into k_MONSTER_ITEM values (104 , 379067000 , 300 , 389074000 , 5000 , 379016000 , 100 , 330310014 , 1 , 391010000 , 5000)insert into k_MONSTER_ITEM values (105 , 379067000 , 300 , 389074000 , 5000 , 379016000 , 100 , 330310014 , 1 , 391010000 , 6000)insert into k_MONSTER_ITEM values (106 , 379067000 , 300 , 389074000 , 5000 , 379016000 , 100 , 330310014 , 1 , 391010000 , 7000)insert into k_MONSTER_ITEM values (107 , 379067000 , 300 , 389074000 , 5000 , 379016000 , 100 , 330310014 , 1 , 391010000 , 8000)insert into k_MONSTER_ITEM values (108 , 379067000 , 300 , 389074000 , 5000 , 379016000 , 100 , 330310014 , 1 , 391010000 , 9000)insert into k_MONSTER_ITEM values (109 , 379067000 , 300 , 389074000 , 5000 , 379016000 , 1000 , 330310014 , 100 , 391010000 , 10000)insert into k_MONSTER_ITEM values (111 , 800015000 , 1000 , 800013000 , 1000 , 340110255 , 400 , 330310014 , 3000 , 391010000 , 10000)insert into k_MONSTER_ITEM values (112 , 379067000 , 300 , 389074000 , 5000 , 379016000 , 1000 , 330310014 , 100 , 391010000 , 10000)insert into k_MONSTER_ITEM values (113 , 4 , 5100 , 389075000 , 800 , 379021000 , 1 , 330310014 , 1 , 391010000 , 10000)insert into k_MONSTER_ITEM values (114 , 4 , 5100 , 389075000 , 800 , 379021000 , 1 , 330310014 , 1 , 391010000 , 10000)insert into k_MONSTER_ITEM values (115 , 4 , 5100 , 389075000 , 800 , 379021000 , 1 , 330310014 , 1 , 391010000 , 10000)insert into k_MONSTER_ITEM values (116 , 800015000 , 1000 , 800013000 , 1000 , 340110255 , 400 , 330310014 , 3000 , 391010000 , 10000)insert into k_MONSTER_ITEM values (117 , 800015000 , 1000 , 800013000 , 1000 , 340110255 , 400 , 330310014 , 3000 , 391010000 , 10000)insert into k_MONSTER_ITEM values (150 , 389074000 , 3000 , 389074000 , 5000 , 389075000 , 3500 , 330310014 , 100 , 391010000 , 3500)insert into k_MONSTER_ITEM values (151 , 379067000 , 300 , 389074000 , 5000 , 379016000 , 100 , 330310014 , 1 , 391010000 , 2000)insert into k_MONSTER_ITEM values (152 , 379067000 , 300 , 389074000 , 5000 , 379016000 , 100 , 330310014 , 1 , 391010000 , 3000)insert into k_MONSTER_ITEM values (153 , 379067000 , 300 , 389074000 , 5000 , 379016000 , 100 , 330310014 , 1 , 391010000 , 4000)insert into k_MONSTER_ITEM values (154 , 379067000 , 300 , 389074000 , 5000 , 379016000 , 100 , 330310014 , 1 , 391010000 , 5000)insert into k_MONSTER_ITEM values (155 , 379067000 , 300 , 389074000 , 5000 , 379016000 , 100 , 330310014 , 1 , 391010000 , 6000)insert into k_MONSTER_ITEM values (156 , 379067000 , 300 , 389074000 , 5000 , 379016000 , 100 , 330310014 , 1 , 391010000 , 7000)insert into k_MONSTER_ITEM values (157 , 379067000 , 300 , 389074000 , 5000 , 379016000 , 100 , 330310014 , 1 , 391010000 , 8000)insert into k_MONSTER_ITEM values (158 , 379067000 , 300 , 389074000 , 5000 , 379016000 , 100 , 330310014 , 1 , 391010000 , 9000)insert into k_MONSTER_ITEM values (159 , 379067000 , 300 , 389074000 , 5000 , 379016000 , 1000 , 330310014 , 100 , 391010000 , 10000)insert into k_MONSTER_ITEM values (161 , 800015000 , 1000 , 800013000 , 1000 , 340110255 , 400 , 330310014 , 3000 , 391010000 , 10000)insert into k_MONSTER_ITEM values (200 , 379067000 , 8000 , 389076000 , 5000 , 379016000 , 3000 , 379076000 , 5000 , 379067000 , 5000)insert into k_MONSTER_ITEM values (201 , 379067000 , 300 , 389076000 , 5000
Bu Konuya hiç etiket eklenmedi.
Human ve Karus Guard Towerları %100 Fixleme
- Karus ve Human Base’deki Towerlar Sorunsuz.
- Pot ve ya Atak Yapınca Değil.
- Guard Tower’ların hedefi içine girdiği zaman seri şekilde ateş ediyor..
- Başlat > Tüm Programlar > Microsoft SQL Server > Query Analyzer ‘ a giriyoruz.
- SQL Server’ a bağlanıyoruz ve açılan ekranda ” master ” yerine ” DBmizi ” seçiyoruz.
- Seçtikten sonra aşağıdaki kodu kopyalayıp , yapıştırıyoruz ve F5 yaparak kodumuzu uyguluyoruz.
--%100 Guard Towerları Fixleme--Bu Kodlar BILAL Tarafından Düzenlenmiştir.(knightonlinepvp.net)--Bu Konu http://privateserverlar.blogspot.com 'da d0FuTr[!] Tarafından yayımlanmıştır..
DELETE FROM K_NPCPOSWHERE (NpcID = 5300) OR(NpcID = 5400)
--%100 Guard Towerları Fixleme--Bu Kodlar BILAL Tarafından Düzenlenmiştir.(knightonlinepvp.net)--Bu Konu http://privateserverlar.blogspot.com 'da d0FuTr[!] Tarafından yayımlanmıştır..
INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5300, 104, 0, 0, 0, 0, 597, 914, 599, 912, 588, 924, 610, 902, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5300, 104, 0, 0, 0, 0, 674, 930, 674, 930, 659, 939, 677, 919, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5400, 104, 0, 0, 0, 0, 1328, 1110, 1329, 1108, 1321, 1117, 1339, 1100, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5300, 104, 0, 0, 0, 0, 601, 897, 603, 895, 591, 906, 614, 885, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5300, 104, 0, 0, 0, 0, 646, 924, 648, 922, 638, 932, 658, 915, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5300, 104, 0, 0, 0, 0, 649, 910, 651, 908, 643, 916, 662, 897, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5300, 104, 0, 0, 0, 0, 593, 949, 595, 947, 585, 955, 603, 942, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5300, 104, 0, 0, 0, 0, 634, 954, 636, 952, 627, 959, 646, 945, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5300, 104, 0, 0, 0, 0, 651, 873, 653, 872, 646, 881, 662, 863, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5300, 104, 0, 0, 0, 0, 613, 864, 615, 862, 603, 872, 629, 850, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5300, 104, 0, 0, 0, 0, 633, 865, 635, 863, 628, 873, 649, 853, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5300, 104, 0, 0, 0, 0, 666, 886, 668, 884, 660, 893, 681, 873, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5300, 104, 0, 0, 0, 0, 594, 870, 596, 868, 587, 876, 608, 860, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5300, 104, 0, 0, 0, 0, 655, 949, 657, 947, 648, 956, 671, 935, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5300, 104, 0, 0, 0, 0, 679, 906, 679, 906, 658, 917, 680, 893, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5300, 104, 0, 0, 0, 0, 574, 911, 576, 908, 567, 918, 582, 901, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5400, 104, 0, 0, 0, 0, 1361, 1134, 1363, 1133, 1354, 1139, 1373, 1124, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5400, 104, 0, 0, 0, 0, 1329, 1060, 1329, 1060, 1330, 1068, 1346, 1053, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5400, 104, 0, 0, 0, 0, 1349, 1087, 1351, 1085, 1342, 1094, 1360, 1078, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5400, 104, 0, 0, 0, 0, 1354, 1072, 1356, 1071, 1348, 1079, 1363, 1062, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5400, 104, 0, 0, 0, 0, 1398, 1101, 1400, 1099, 1394, 1108, 1410, 1089, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5400, 104, 0, 0, 0, 0, 1403, 1086, 1404, 1085, 1396, 1092, 1418, 1075, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5400, 104, 0, 0, 0, 0, 1343, 1125, 1345, 1124, 1338, 1130, 1353, 1117, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5400, 104, 0, 0, 0, 0, 1383, 1136, 1385, 1134, 1379, 1141, 1392, 1128, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5400, 104, 0, 0, 0, 0, 1409, 1050, 1411, 1049, 1406, 1056, 1419, 1043, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5400, 104, 0, 0, 0, 0, 1366, 1038, 1368, 1037, 1358, 1047, 1374, 1030, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5400, 104, 0, 0, 0, 0, 1389, 1039, 1390, 1037, 1382, 1045, 1398, 1029, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5400, 104, 0, 0, 0, 0, 1423, 1066, 1424, 1065, 1418, 1072, 1436, 1055, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5400, 104, 0, 0, 0, 0, 1345, 1044, 1347, 1042, 1340, 1049, 1356, 1035, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5400, 104, 0, 0, 0, 0, 1405, 1130, 1407, 1128, 1397, 1135, 1419, 1117, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5400, 104, 0, 0, 0, 0, 1429, 1090, 1429, 1090, 1413, 1095, 1431, 1077, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5400, 104, 0, 0, 0, 0, 1421, 1111, 1421, 1111, 1407, 1117, 1423, 1101, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5300, 104, 0, 0, 0, 0, 566, 907, 566, 907, 580, 944, 589, 927, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5300, 104, 0, 0, 0, 0, 572, 884, 572, 884, 573, 894, 589, 879, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5400, 104, 0, 0, 0, 0, 1324, 1084, 1324, 1084, 1320, 1092, 1338, 1076, 1, 60, 0, 0, '' );INSERT INTO K_NPCPOS ( [ZoneID], [NpcID], [ActType], [RegenType], [DungeonFamily], [SpecialType], [TrapNumber], [LeftX], [TopZ], [RightX], [BottomZ], [LimitMinX], [LimitMinZ], [LimitMaxX], [LimitMaxZ], [NumNPC], [RegTime], [byDirection], [DotCnt], [path] ) VALUES ( 201, 5300, 104, 0, 0, 0, 0, 613, 956, 616, 954, 606, 963, 625, 946, 1, 60, 0, 0, '' );
--%100 Guard Towerları Fixleme--Bu Kodlar BILAL Tarafından Düzenlenmiştir.(knightonlinepvp.net)--Bu Konu http://privateserverlar.blogspot.com 'da d0FuTr[!] Tarafından yayımlanmıştır..
UPDATE K_NPC SET sAttackDelay = 650 WHERE sSid = 5300UPDATE K_NPC SET sAttackDelay = 650 WHERE sSid = 5400
+10,+9 İtemleri +8′e ve +5,+4 Uniqueleri +3 veya +1 Çekme.
1299 Private Serverlarda, genellikle +8 ve üstü itemler tercih ediliyor.. Fakat DB’nizde +9 ve +10 itemler olup bunların +’sını 8′e çekmek istiyorsanız.. Aşağıda tam size göre bir paylaşım var .
Aşağıdaki Kodlar Tamamen AKUMA’ya aittir. Kodların amacı;
- Bu Procedur +10 İtemleri +8 / +5 Uniqueleri +3 e veya +1 e Çekmenize yarar Girişte Tarama Yapar.
Denenmiştir , Hiçbir Sakıncası , Hiçbir BUGU Yoktur!
İlk Once ITEM Tablomuzda biraz değişiklik yapalım , +10 itemler +0 yazıyor , Onları +10 olarak değiştirelim.
DECLARE @Num int,@strName varchar(100),@ProcessCount int
/*
Author : Ceribrio
*/
DECLARE CRS_ITEM_TABLE CURSOR FOR
SELECT Num,strName FROM ITEM WHERE strName LIKE '%(+0)%' AND Kind <> 91 AND Kind <> 92 AND Kind <> 93 AND Kind <> 94
SET @ProcessCount = 0
OPEN CRS_ITEM_TABLE
FETCH NEXT FROM CRS_ITEM_TABLE INTO @Num,@strName
WHILE (@@FETCH_STATUS = 0)
BEGIN
DECLARE @ItemName varchar(100),@ItemNum int,@RealItemName varchar(100),@CheckItemName varchar(100),@NewItemName varchar(100),@FindCount int
SELECT @ItemNum = Num, @ItemName = strName FROM ITEM WHERE Num = @Num - 2
SELECT @FindCount = Count(Num) FROM ITEM WHERE Num = @ItemNum
IF @FindCount <> 0
BEGIN
SET @RealItemName = RTRIM(LTRIM(REPLACE(@strName,'(+0)','')))
SET @CheckItemName = RTRIM(LTRIM(REPLACE(@ItemName,'(+8)','')))
IF @RealItemName = @CheckItemName
BEGIN
SET @NewItemName = @RealItemName + ' (+10)'
UPDATE ITEM SET strName = @NewItemName WHERE Num = @Num
SET @ProcessCount = @ProcessCount + 1
END
END
FETCH NEXT FROM CRS_ITEM_TABLE INTO @Num,@strName
END
CLOSE CRS_ITEM_TABLE
DEALLOCATE CRS_ITEM_TABLE
PRINT 'Değiştirilen İtem Sayısı : ' + RTRIM(LTRIM(STR(@ProcessCount)))
Bu kodu Query’den çalıstırın ve bekleyin … 5- 10 Dakika ve daha fazla sürebilir …
Eklenecek tablolarımız :
/****** Object: Table [dbo].[RESULT_CHECK_USER_ITEMS] Script Date: 07/12/2008 14:12:44 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[RESULT_CHECK_USER_ITEMS](
[Num] [int] NULL,
[stacksize] [smallint] NULL,
[Durability] [smallint] NULL,
[strUserId] [varchar](50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[InventorySlot] [int] NULL,
[ItemName] [varchar](100) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[extname] [varchar](100) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
/****** Object: Table [dbo].[RESULT_CHECK_USER_ITEMS_LOGS] Script Date: 07/12/2008 14:13:15 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[RESULT_CHECK_USER_ITEMS_LOGS](
[strUserId] [varchar](50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[OldItemNum] [int] NULL,
[OldItemName] [varchar](255) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[OptimizedItemNum] [int] NULL,
[OptimizedItemName] [varchar](255) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
Editlenecek Tablo ;
Userdata'yı Desing Table diyerek açın ve , En Son'a bir Satır Ekleyin , İsmi UserStatus olsun , int Olacak ... Nulls İşaretsiz olacak ! ve Default değeri 0 olacak !
Eklenecek Prosedürler :
Eğer +4 +5 Takıların , +1 Olmasını istiyorsanız Bunu Ekleyin ! Bir Alttakini eklemeyin !
CREATE PROCEDURE [dbo].[CHECK_USER_ITEMS]
(@strUserID varchar(50))
AS
/*
Author : Ceribrio
*/
BEGIN
DECLARE @Authority int,@UserStatus int
SELECT @Authority = Authority,@UserStatus = UserStatus FROM USERDATA WHERE strUserID = @strUserID
IF (@Authority <> 0) OR (@UserStatus <> 1)
BEGIN
TRUNCATE TABLE RESULT_CHECK_USER_ITEMS
EXEC CHECK_FIND_USER_ITEMS @strUserID
DECLARE @Num int,@ItemName varchar(100),@InventorySlotNumber int
DECLARE CRS_RESULT_CHECK_USER_ITEMS CURSOR FOR
SELECT Num,ItemName,InventorySlot FROM RESULT_CHECK_USER_ITEMS WHERE strUserID = @strUserID AND ItemName <> 'Free Slot'
OPEN CRS_RESULT_CHECK_USER_ITEMS
FETCH NEXT FROM CRS_RESULT_CHECK_USER_ITEMS INTO @Num, @ItemName, @InventorySlotNumber
WHILE (@@FETCH_STATUS = 0)
BEGIN
DECLARE @ItemStrName varchar(100),@ItemNum int,@NewItemNum int,@Kind tinyint,@ItemType int,@CheckNum int
SET @ItemStrName = ''
SET @ItemNum = 0
SET @NewItemNum = 0
SET @Kind = 0
SET @ItemType = 0
SET @CheckNum = 0
IF CHARINDEX('+10',@ItemName) <> 0
BEGIN
SELECT @ItemNum = Num,@Kind = Kind FROM ITEM WHERE Num = @Num
SELECT @ItemStrName = strName,@NewItemNum = Num FROM ITEM WHERE Num = @ItemNum - 2
IF (@Kind != 91) OR (@Kind != 92) OR (@Kind != 93) OR (@Kind != 94)
BEGIN
SELECT @CheckNum = COUNT(Num) FROM ITEM WHERE Num = @NewItemNum
IF @CheckNum <> 0
BEGIN
UPDATE RESULT_CHECK_USER_ITEMS SET Num = @NewItemNum,ItemName = '# DÜZELTİLDİ : ' + RTRIM(LTRIM(@ItemStrName)) + ' #' WHERE ItemName = @ItemName AND InventorySlot = @InventorySlotNumber
INSERT INTO RESULT_CHECK_USER_ITEMS_LOGS VALUES (@strUserID,@Num,@ItemName,@NewItemNum,@ItemStrName)
END
END
END
ELSE IF CHARINDEX('+9',@ItemName) <> 0
BEGIN
SELECT @ItemNum = Num,@Kind = Kind FROM ITEM WHERE Num = @Num
SELECT @ItemStrName = strName,@NewItemNum = Num FROM ITEM WHERE Num = @ItemNum - 1
IF (@Kind != 91) OR (@Kind != 92) OR (@Kind != 93) OR (@Kind != 94)
BEGIN
SELECT @CheckNum = COUNT(Num) FROM ITEM WHERE Num = @NewItemNum
IF @CheckNum <> 0
BEGIN
UPDATE RESULT_CHECK_USER_ITEMS SET Num = @NewItemNum,ItemName = '# DÜZELTİLDİ : ' + RTRIM(LTRIM(@ItemStrName)) + ' #' WHERE ItemName = @ItemName AND InventorySlot = @InventorySlotNumber
INSERT INTO RESULT_CHECK_USER_ITEMS_LOGS VALUES (@strUserID,@Num,@ItemName,@NewItemNum,@ItemStrName)
END
END
END
ELSE IF CHARINDEX('+5',@ItemName) <> 0
BEGIN
SELECT @ItemNum = Num,@Kind = Kind,@ItemType = ItemType FROM ITEM WHERE Num = @Num
IF @Kind = 91 OR @Kind = 92 OR @Kind = 93 OR @Kind = 94
BEGIN
SELECT @CheckNum = COUNT(Num) FROM ITEM WHERE Num = @NewItemNum
IF @CheckNum <> 0
BEGIN
IF @ItemType = 4
BEGIN
SELECT @ItemStrName = strName,@NewItemNum = Num FROM ITEM WHERE Num = @ItemNum - 4
UPDATE RESULT_CHECK_USER_ITEMS SET Num = @NewItemNum, ItemName = '# DÜZELTİLDİ : ' + RTRIM(LTRIM(@ItemStrName)) + ' #' WHERE ItemName = @ItemName AND InventorySlot = @InventorySlotNumber
INSERT INTO RESULT_CHECK_USER_ITEMS_LOGS VALUES (@strUserID,@Num,@ItemName,@NewItemNum,@ItemStrName)
END
END
END
END
ELSE IF CHARINDEX('+4',@ItemName) <> 0
BEGIN
SELECT @ItemNum = Num,@Kind = Kind,@ItemType = ItemType FROM ITEM WHERE Num = @Num
IF @Kind = 91 OR @Kind = 92 OR @Kind = 93 OR @Kind = 94
BEGIN
SELECT @CheckNum = COUNT(Num) FROM ITEM WHERE Num = @NewItemNum
IF @CheckNum <> 0
BEGIN
IF @ItemType = 4
BEGIN
SELECT @ItemStrName = strName,@NewItemNum = Num FROM ITEM WHERE Num = @ItemNum - 3
UPDATE RESULT_CHECK_USER_ITEMS SET Num = @NewItemNum, ItemName = '# DÜZELTİLDİ : ' + RTRIM(LTRIM(@ItemStrName)) + ' #' WHERE ItemName = @ItemName AND InventorySlot = @InventorySlotNumber
INSERT INTO RESULT_CHECK_USER_ITEMS_LOGS VALUES (@strUserID,@Num,@ItemName,@NewItemNum,@ItemStrName)
END
END
END
END
ELSE IF CHARINDEX('+3',@ItemName) <> 0
BEGIN
SELECT @ItemNum = Num,@Kind = Kind,@ItemType = ItemType FROM ITEM WHERE Num = @Num
IF @Kind = 91 OR @Kind = 92 OR @Kind = 93 OR @Kind = 94
BEGIN
SELECT @CheckNum = COUNT(Num) FROM ITEM WHERE Num = @NewItemNum
IF @CheckNum <> 0
BEGIN
IF @ItemType = 4
BEGIN
SELECT @ItemStrName = strName,@NewItemNum = Num FROM ITEM WHERE Num = @ItemNum - 2
UPDATE RESULT_CHECK_USER_ITEMS SET Num = @NewItemNum, ItemName = '# DÜZELTİLDİ : ' + RTRIM(LTRIM(@ItemStrName)) + ' #' WHERE ItemName = @ItemName AND InventorySlot = @InventorySlotNumber
INSERT INTO RESULT_CHECK_USER_ITEMS_LOGS VALUES (@strUserID,@Num,@ItemName,@NewItemNum,@ItemStrName)
END
END
END
END
ELSE IF CHARINDEX('+2',@ItemName) <> 0
BEGIN
SELECT @ItemNum = Num,@Kind = Kind,@ItemType = ItemType FROM ITEM WHERE Num = @Num
IF @Kind = 91 OR @Kind = 92 OR @Kind = 93 OR @Kind = 94
BEGIN
SELECT @CheckNum = COUNT(Num) FROM ITEM WHERE Num = @NewItemNum
IF @CheckNum <> 0
BEGIN
IF @ItemType = 4
BEGIN
SELECT @ItemStrName = strName,@NewItemNum = Num FROM ITEM WHERE Num = @ItemNum - 1
UPDATE RESULT_CHECK_USER_ITEMS SET Num = @NewItemNum, ItemName = '# DÜZELTİLDİ : ' + RTRIM(LTRIM(@ItemStrName)) + ' #' WHERE ItemName = @ItemName AND InventorySlot = @InventorySlotNumber
INSERT INTO RESULT_CHECK_USER_ITEMS_LOGS VALUES (@strUserID,@Num,@ItemName,@NewItemNum,@ItemStrName)
END
END
END
END
FETCH NEXT FROM CRS_RESULT_CHECK_USER_ITEMS INTO @Num, @ItemName, @InventorySlotNumber
END
CLOSE CRS_RESULT_CHECK_USER_ITEMS
DEALLOCATE CRS_RESULT_CHECK_USER_ITEMS
EXEC CHECK_ENCODE_USER_ITEMS @strUserID
END
END
Eğer +4 +5 takıların , +3 olmasını istiyorsanız Bunu Ekleyin Bir Üsttekini eklemeyin !
CREATE PROCEDURE [dbo].[CHECK_USER_ITEMS]
(@strUserID varchar(50))
AS
/*
Author : Ceribrio
*/
BEGIN
DECLARE @Authority int,@UserStatus int
SELECT @Authority = Authority,@UserStatus = UserStatus FROM USERDATA WHERE strUserID = @strUserID
IF (@Authority <> 0) OR (@UserStatus <> 1)
BEGIN
TRUNCATE TABLE RESULT_CHECK_USER_ITEMS
EXEC CHECK_FIND_USER_ITEMS @strUserID
DECLARE @Num int,@ItemName varchar(100),@InventorySlotNumber int
DECLARE CRS_RESULT_CHECK_USER_ITEMS CURSOR FOR
SELECT Num,ItemName,InventorySlot FROM RESULT_CHECK_USER_ITEMS WHERE strUserID = @strUserID AND ItemName <> 'Free Slot'
OPEN CRS_RESULT_CHECK_USER_ITEMS
FETCH NEXT FROM CRS_RESULT_CHECK_USER_ITEMS INTO @Num, @ItemName, @InventorySlotNumber
WHILE (@@FETCH_STATUS = 0)
BEGIN
DECLARE @ItemStrName varchar(100),@ItemNum int,@NewItemNum int,@Kind tinyint,@ItemType int,@CheckNum int
SET @ItemStrName = ''
SET @ItemNum = 0
SET @NewItemNum = 0
SET @Kind = 0
SET @ItemType = 0
SET @CheckNum = 0
IF CHARINDEX('+10',@ItemName) <> 0
BEGIN
SELECT @ItemNum = Num,@Kind = Kind FROM ITEM WHERE Num = @Num
SELECT @ItemStrName = strName,@NewItemNum = Num FROM ITEM WHERE Num = @ItemNum - 2
IF (@Kind != 91) OR (@Kind != 92) OR (@Kind != 93) OR (@Kind != 94)
BEGIN
SELECT @CheckNum = COUNT(Num) FROM ITEM WHERE Num = @NewItemNum
IF @CheckNum <> 0
BEGIN
UPDATE RESULT_CHECK_USER_ITEMS SET Num = @NewItemNum,ItemName = '# DÜZELTİLDİ : ' + RTRIM(LTRIM(@ItemStrName)) + ' #' WHERE ItemName = @ItemName AND InventorySlot = @InventorySlotNumber
INSERT INTO RESULT_CHECK_USER_ITEMS_LOGS VALUES (@strUserID,@Num,@ItemName,@NewItemNum,@ItemStrName)
END
END
END
ELSE IF CHARINDEX('+9',@ItemName) <> 0
BEGIN
SELECT @ItemNum = Num,@Kind = Kind FROM ITEM WHERE Num = @Num
SELECT @ItemStrName = strName,@NewItemNum = Num FROM ITEM WHERE Num = @ItemNum - 1
IF (@Kind != 91) OR (@Kind != 92) OR (@Kind != 93) OR (@Kind != 94)
BEGIN
SELECT @CheckNum = COUNT(Num) FROM ITEM WHERE Num = @NewItemNum
IF @CheckNum <> 0
BEGIN
UPDATE RESULT_CHECK_USER_ITEMS SET Num = @NewItemNum,ItemName = '# DÜZELTİLDİ : ' + RTRIM(LTRIM(@ItemStrName)) + ' #' WHERE ItemName = @ItemName AND InventorySlot = @InventorySlotNumber
INSERT INTO RESULT_CHECK_USER_ITEMS_LOGS VALUES (@strUserID,@Num,@ItemName,@NewItemNum,@ItemStrName)
END
END
END
ELSE IF CHARINDEX('+5',@ItemName) <> 0
BEGIN
SELECT @ItemNum = Num,@Kind = Kind,@ItemType = ItemType FROM ITEM WHERE Num = @Num
IF @Kind = 91 OR @Kind = 92 OR @Kind = 93 OR @Kind = 94
BEGIN
IF @ItemType = 4
BEGIN
SELECT @ItemStrName = strName,@NewItemNum = Num FROM ITEM WHERE Num = @ItemNum - 4
UPDATE RESULT_CHECK_USER_ITEMS SET Num = @NewItemNum, ItemName = '# DÜZELTİLDİ : ' + RTRIM(LTRIM(@ItemStrName)) + ' #' WHERE ItemName = @ItemName AND InventorySlot = @InventorySlotNumber
INSERT INTO RESULT_CHECK_USER_ITEMS_LOGS VALUES (@strUserID,@Num,@ItemName,@NewItemNum,@ItemStrName)
END
END
END
ELSE IF CHARINDEX('+4',@ItemName) <> 0
BEGIN
SELECT @ItemNum = Num,@Kind = Kind,@ItemType = ItemType FROM ITEM WHERE Num = @Num
IF @Kind = 91 OR @Kind = 92 OR @Kind = 93 OR @Kind = 94
BEGIN
IF @ItemType = 4
BEGIN
SELECT @ItemStrName = strName,@NewItemNum = Num FROM ITEM WHERE Num = @ItemNum - 3
UPDATE RESULT_CHECK_USER_ITEMS SET Num = @NewItemNum, ItemName = '# DÜZELTİLDİ : ' + RTRIM(LTRIM(@ItemStrName)) + ' #' WHERE ItemName = @ItemName AND InventorySlot = @InventorySlotNumber
INSERT INTO RESULT_CHECK_USER_ITEMS_LOGS VALUES (@strUserID,@Num,@ItemName,@NewItemNum,@ItemStrName)
END
END
END
FETCH NEXT FROM CRS_RESULT_CHECK_USER_ITEMS INTO @Num, @ItemName, @InventorySlotNumber
END
CLOSE CRS_RESULT_CHECK_USER_ITEMS
DEALLOCATE CRS_RESULT_CHECK_USER_ITEMS
EXEC CHECK_ENCODE_USER_ITEMS @strUserID
END
END
CREATE procedure [dbo].[CHECK_ENCODE_USER_ITEMS]
@StrUserID varchar(30)
AS
DECLARE
@length int,
@row int,
@i int,
@Num int,
@pos int,
@dur int,
@dur1 int,
@ext int,
@StackSize1 int,
@strName varchar(30),
@strExtName varchar(30),
@CNum varbinary(4),
@cdur varchar(2),
@Source tinyint,
@NEWNum int,
@StackSize int,
@cstack varchar(2),
@InventorySlot int
set @InventorySlot=0
set @i = 14*0
set @length = 401
select @row=count( * ) from userdata where struserid=@StrUserID
if @row>0
begin
Select @Num=Num,
@dur = Durability,
@StackSize1 = stacksize,
@StrUserID = strUserID
From RESULT_CHECK_USER_ITEMS
Where strUserID = @StrUserID and InventorySlot=@InventorySlot
Set @CNum = Substring(cast(@Num as varbinary(4)), 4, 1) + Substring(cast(@Num as varbinary(4)), 3, 1) + Substring(cast(@Num as varbinary(4)), 2, 1) + Substring(cast(@Num as varbinary(4)), 1, 1)
Set @Cdur = cast(Substring(cast(@dur as varbinary(2)), 2, 1)+Substring(cast(@dur as varbinary(2)), 1, 1) as varchar(2))
Set @Cstack = cast(Substring(cast(@StackSize1 as varbinary(2)), 2, 1)+Substring(cast(@StackSize1 as varbinary(2)), 1, 1) as varchar(2))
update UserData set strItem = cast(cast(cast(@CNum as varchar(4)) + @Cdur + @Cstack as varchar(8)) as binary(400)) where strUserID = @strUserID
set @i=@i+8
set @InventorySlot=@InventorySlot+1
WHILE @InventorySlot < 50
Begin
Select @Num=Num,
@dur = Durability,
@StackSize1 = stacksize,
@StrUserID = strUserID
From RESULT_CHECK_USER_ITEMS
Where strUserID = @StrUserID and InventorySlot=@InventorySlot
Set @CNum = Substring(cast(@Num as varbinary(4)), 4, 1) + Substring(cast(@Num as varbinary(4)), 3, 1) + Substring(cast(@Num as varbinary(4)), 2, 1) + Substring(cast(@Num as varbinary(4)), 1, 1)
Set @Cdur = cast(Substring(cast(@dur as varbinary(2)), 2, 1)+Substring(cast(@dur as varbinary(2)), 1, 1) as varchar(2))
Set @Cstack = cast(Substring(cast(@StackSize1 as varbinary(2)), 2, 1)+Substring(cast(@StackSize1 as varbinary(2)), 1, 1) as varchar(2))
update UserData set strItem = cast( substring(strItem, 1, @i) + cast(cast(@CNum as varchar(4)) + @Cdur + @Cstack as varchar(8)) + substring(strItem, @i+8, 401-@i) as binary(400)) where strUserID = @strUserID
set @i=@i+8
set @InventorySlot=@InventorySlot+1
end
end
CREATE procedure [dbo].[CHECK_FIND_USER_ITEMS]
@StrUserID varchar(30)
AS
DECLARE
@length int,
@i int,
@Num int,
@dur int,
@duar int,
@StackSize1 int,
@InventorySlot int,
@Row int,
@name varchar(100),
@extname varchar(100),
@ext int
set @i = 14*0+1
set @length = 401
select @row=count(*) from userdata where struserid=@StrUserID
delete from RESULT_CHECK_USER_ITEMS where struserid=@StrUserID
if @row>0
begin
WHILE @i < @length
Begin
Select @Num=cast(cast(substring(cast(substring(strItem, @i,4) as varbinary(4)), 4, 1)+substring(cast(substring(strItem, @i,4) as varbinary(4)), 3, 1)+substring(cast(substring(strItem, @i,4) as varbinary(4)), 2, 1)+substring(cast(substring(strItem, @i,4) as varbinary(4)), 1, 1) as varbinary(4)) as int),
@dur = cast(cast(cast( substring(strItem, @i+5, 1) as varbinary(1))+cast(substring(strItem, @i+4, 1) as varbinary(1)) as varbinary(2)) as int),
@StackSize1 = cast(cast(cast( substring(strItem, @i+7, 1) as varbinary(1))+cast(substring(strItem, @i+6, 1) as varbinary(1)) as varbinary(2)) as int),
@StrUserID = strUserID
From UserData
Where strUserID = @StrUserID
if @Num=0
begin
set @extname='Free Slot'
set @name='Free Slot'
end
else
begin
set @extname='Not Find'
set @name='Not Using'
select @extname=strName from item where Num=@Num
if @extname='Not Find'
begin
set @ext=-1
set @name='Not Find'
select @extname=strName,@ext=Slot from item where Num= cast(substring(cast(@Num as varchar(9)), 1, 6)+'000' as int) --cast(substring(cast(@Num as varbinary(4)),0,5) as int)*1000
if @ext>-1
begin
set @duar=-1
If @ext = 0
select @duar = Duration,@name=strName From item where Num = cast(substring(cast(@Num as varchar(9)), 7, 9) as int)
end
end
end
insert into RESULT_CHECK_USER_ITEMS (Num,stacksize,Durability,struserid,InventorySlot,ItemName,extname) values(@Num,@stacksize1,@dur,@StrUserID,(@i-1) / 8,@extname,@name )
set @i=@i+8
end
end
ve Queryden ÇalıstıRınız ;
update userdata set UserStatus = '0'
Burada Her hangi bir charın UserStatus’u 1 yaparsanız, o charı kontrol etmeyecektir !
GM’leri zaten kontrol etmez …
ve En SOn Olarak ,
LOAD_USER_DATA proc’unu açarak ,
Oto Master varsa Hemen Altına yok İse ,
SELECT Nation, Race, Class, HairColor, Rank, Title, [Level], [Exp], Loyalty, Face, City, Knights, Fame,
Hp, Mp, Sp, Strong, Sta, Dex, Intel, Cha, Authority, Points, Gold, [Zone], Bind, PX, PZ, PY, dwTime, strSkill, strItem,strSerial, sQuestCount, strQuest, MannerPoint, LoyaltyMonthly
FROM USERDATA WHERE strUserId = @id
SET @nRet = @@RowCount
Bu Kodun hemen üstüne , Ekliyoruz !
Değiştirilen itemleri ; "RESULT_CHECK_USER_ITEMS_LOGS" Tablosundan gorebiliriz
Bu Konuya hiç etiket eklenmedi.


