- Katılım
- 6 Mayıs 2022
- Mesajlar
- 45,967
Kod:
EXEC INSERT_UPGRADE 'Raptor', 15000, 0, 1
Girdiğiniz item adının + içermemesi gerekiyor örnek : "Raptor (+1)" gibi olmamalı, doğru olan sadece "Raptor" yazmanız.
EXEC INSERT_UPGRADE 'Itemin adı', Rastgele sayı, İstenilen para, Upgrade türü
Upgrade Türü
1 : BUS ile upgrade
2 : Trina ile upgrade
3 : BUS + Trina ile upgrade)
Kod:
CREATE PROCEDURE [dbo].[INSERT_UPGRADE] @itemname varchar(50), -- NAME OF ITEM TO UPGRADE @index int, -- RANDOMNUMBER as indexNumber @reqmon int, -- Required Money for upgrades (240K for unique's 0 for Normal Items) @TYPE tinyint -- Type 1 Only Bus Upgrade, Type 2 only Trina Upgrade, Type 3 Trina + Bus Upgrades at once. AS DECLARE @origitem varchar(4),@giveitem varchar(4), @give int, @otype int, @rate smallint, @reqitem int,@reqitem2 int set @otype = -1 IF @TYPE = 1 or @TYPE = 3 BEGIN set @rate=10000 -- Random rate for now. Can be editted lateron set @reqitem=379021000 -- Required Item for Upgrading. set @reqitem2=0 select top 1 @origitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and num like '%001)' and strname like '%1)%' select top 1 @giveitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and num like '%002)' and strname like '%2)%' set @give=CAST(@giveitem AS int)-CAST(@origitem AS int) insert into item_upgrade select @index+2241, 5001, @itemname, '+1 To +2', @otype, CAST(@origitem AS smallint), @reqitem, @reqitem2, 0, 0, 0, 0, 0, 0, @reqmon, 0, @rate, @give --+2 to +3 code select top 1 @origitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%2)%' select top 1 @giveitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%3)%' set @give=CAST(@giveitem AS int)-CAST(@origitem AS int ) insert into item_upgrade select @index+355, 5001, @itemname, '+2 To +3', @otype, CAST(@origitem AS smallint ), @reqitem, @reqitem2, 0, 0, 0, 0, 0, 0, @reqmon, 0, @rate, @give --+3 to +4 code select top 1 @origitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%3)%' select top 1 @giveitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%4)%' set @give=CAST(@giveitem AS int)-CAST(@origitem AS int) insert into item_upgrade select @index+461, 5001, @itemname, '+3 To +4 ', @otype, CAST(@origitem AS smallint ), @reqitem, @reqitem2, 0, 0, 0, 0, 0, 0, @reqmon, 3, @rate, @give --+4 to +5 code select top 1 @origitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%4)%' select top 1 @giveitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%5)%' set @give=CAST(@giveitem AS int)-CAST(@origitem AS int ) insert into item_upgrade select @index+521, 5001, @itemname, '+4 To +5', @otype, CAST(@origitem AS smallint ), @reqitem, @reqitem2, 0, 0, 0, 0, 0, 0, @reqmon, 5, @rate, @give --+5 to +6 code select top 1 @origitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%5)%' select top 1 @giveitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%6)%' set @give=CAST(@giveitem AS int)-CAST(@origitem AS int) insert into item_upgrade select @index+6521, 5001, @itemname, '+5 To +6', @otype, CAST(@origitem AS smallint), @reqitem, @reqitem2, 0, 0, 0, 0, 0, 0, @reqmon, 8, @rate, @give --+6 to +7 code select top 1 @origitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%6)%' select top 1 @giveitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%7)%' set @give=CAST(@giveitem AS int)-CAST(@origitem AS int) insert into item_upgrade select @index+722, 5001, @itemname, '+6 To +7', @otype, CAST(@origitem AS smallint ), @reqitem, @reqitem2, 0, 0, 0, 0, 0, 0, @reqmon, 10, @rate, @give --+7 to +8 code select top 1 @origitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%7)%' select top 1 @giveitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%8)%' set @give=CAST(@giveitem AS int)-CAST(@origitem AS int ) insert into item_upgrade select @index+81, 5001, @itemname, '+7 To +8', @otype, CAST(@origitem AS smallint ), @reqitem, @reqitem2, 0, 0, 0, 0, 0, 0, @reqmon, 11 ,@rate, @give --+8 to +9 code select top 1 @origitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%8)%' select top 1 @giveitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%9)%' set @give=CAST(@giveitem AS int)-CAST(@origitem AS int) insert into item_upgrade select @index+933, 5001, @itemname, '+8 To +9', @otype, CAST(@origitem AS smallint ), @reqitem, @reqitem2, 0, 0, 0, 0, 0, 0, @reqmon, 12, @rate, @give --+9 to +10 code select top 1 @origitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%9)%' select top 1 @giveitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%10)%' set @give=CAST(@giveitem AS int)-CAST(@origitem AS int) insert into item_upgrade select @index+101, 5001, @itemname, '+9 To +10', @otype, CAST(@origitem AS smallint ), @reqitem, @reqitem2, 0, 0, 0, 0, 0, 0, @reqmon, 13, @rate, @give END IF @TYPE = 2 or @TYPE = 3 BEGIN set @rate=10000 set @reqitem=700002000 set @reqitem2=379021000 select top 1 @origitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%1)%' select top 1 @giveitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%2)%' set @give=CAST(@giveitem AS int)-CAST(@origitem AS int) insert into item_upgrade select @index+2, 5001, @itemname, '1to2', @otype, CAST(@origitem AS smallint), @reqitem, @reqitem2, 0, 0, 0, 0, 0, 0, @reqmon, 0, @rate, @give --+2 to +3 code select top 1 @origitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%2)%' select top 1 @giveitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%3)%' set @give=CAST(@giveitem AS int)-CAST(@origitem AS int ) insert into item_upgrade select @index+3, 5001, @itemname, '2to3', @otype, CAST(@origitem AS smallint ), @reqitem, @reqitem2, 0, 0, 0, 0, 0, 0, @reqmon, 0, @rate, @give --+3 to +4 code select top 1 @origitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%3)%' select top 1 @giveitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%4)%' set @give=CAST(@giveitem AS int)-CAST(@origitem AS int) insert into item_upgrade select @index+4, 5001, @itemname, '3to4', @otype, CAST(@origitem AS smallint ), @reqitem, @reqitem2, 0, 0, 0, 0, 0, 0, @reqmon, 3, @rate, @give --+4 to +5 code select top 1 @origitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%4)%' select top 1 @giveitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%5)%' set @give=CAST(@giveitem AS int)-CAST(@origitem AS int ) insert into item_upgrade select @index+5, 5001, @itemname, '4to5', @otype, CAST(@origitem AS smallint ), @reqitem, @reqitem2, 0, 0, 0, 0, 0, 0, @reqmon, 5, @rate, @give --+5 to +6 code select top 1 @origitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%5)%' select top 1 @giveitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%6)%' set @give=CAST(@giveitem AS int)-CAST(@origitem AS int) insert into item_upgrade select @index+6, 5001, @itemname, '5to6', @otype, CAST(@origitem AS smallint), @reqitem, @reqitem2, 0, 0, 0, 0, 0, 0, @reqmon, 8, @rate, @give --+6 to +7 code select top 1 @origitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%6)%' select top 1 @giveitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%7)%' set @give=CAST(@giveitem AS int)-CAST(@origitem AS int) insert into item_upgrade select @index+7, 5001, @itemname, '6to7', @otype, CAST(@origitem AS smallint ), @reqitem, @reqitem2, 0, 0, 0, 0, 0, 0, @reqmon, 10, @rate, @give --+7 to +8 code select top 1 @origitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%7)%' select top 1 @giveitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%8)%' set @give=CAST(@giveitem AS int)-CAST(@origitem AS int ) insert into item_upgrade select @index+8, 5001, @itemname, '7to8', @otype, CAST(@origitem AS smallint ), @reqitem, @reqitem2, 0, 0, 0, 0, 0, 0, @reqmon, 11, @rate, @give --+8 to +9 code select top 1 @origitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%8)%' select top 1 @giveitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%9)%' set @give=CAST(@giveitem AS int)-CAST(@origitem AS int) insert into item_upgrade select @index+9, 5001, @itemname, '8to9', @otype, CAST(@origitem AS smallint ), @reqitem, @reqitem2, 0, 0, 0, 0, 0, 0, @reqmon, 12, @rate, @give --+9 to +10 code select top 1 @origitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%9)%' select top 1 @giveitem= SUBSTRING(CAST ( num AS varchar ( 9)), 7,10) from item where strname like '%'+@itemname+'%' and strname like '%10)%' set @give=CAST(@giveitem AS int)-CAST(@origitem AS int) insert into item_upgrade select @index+10, 5001, @itemname, '9to10', @otype, CAST(@origitem AS smallint ), @reqitem, @reqitem2, 0, 0, 0, 0, 0, 0, @reqmon, 13, @rate, @give END select * from item_upgrade where strname=@itemname GO
Alıntıdır
ITEM_UPGRADE Oluşturucu Prosedür Nedir?
Knight Online özel sunucularında (pserver), ITEM_UPGRADE oluşturucu prosedür; oyuncuların eşyaları yükseltme sistemini yöneten temel yapıdır. Bu sistem, özellikle KO geliştirme (kodev) süreçlerinde büyük önem taşır. ITEM_UPGRADE dosyası, oyuncuların eşyalarını belirli oranlarda ve kurallarla yükseltmelerini sağlar. Bu sayede sunucularda cap 83, cap 70 gibi sistemler daha verimli yönetilebilir.
ITEM_UPGRADE Dosyasının Yeri ve Önemi
Knight Online emulator geliştiricileri, ITEM_UPGRADE dosyasını genellikle server files içerisinde bulunan item.bin dosyasıyla birlikte kullanırlar. Bu dosya, eşyaların upgrade oranlarını, gerekli materyalleri ve sistemsel kuralları içerir. KO DB ile entegre çalışan bu yapı, hem PvP sunucularında hem de PvE sunucularında farklı şekillerde optimize edilebilir. Özellikle USKO, ROFD gibi bilinen sunucular, kendi ITEM_UPGRADE dosyalarını özelleştirerek oyun deneyimini zenginleştirirler.
ITEM_UPGRADE Oluşturma Adımları
Öncelikle, ITEM_UPGRADE oluşturmak için bir geliştirici (KO Dev) ITEM_UPGRADE tablosunu SQL veritabanında tanımlamalıdır. Bu tablo genellikle KO DB dosyasında yer alır. Tabloya eklenecek sütunlar şunlardır: ItemID, UpgradeLevel, SuccessRate, Cost, RequiredItems. Bu bilgiler, oyuncuların hangi eşyayı hangi malzemelerle ve ne kadar şansla yükseltebileceğini belirler. Örneğin, Iron Necklace gibi bir aksesuarın upgrade sistemi buradan yönetilir.
Hatalar ve Çözümler
ITEM_UPGRADE sistemini yanlış tanımlamak, sunucuda ciddi sorunlara yol açabilir. Örneğin, SuccessRate değerlerinin yüksek olması sunucuda inflation yaratabilir. Bu da ekonomi dengesini bozar. Aynı şekilde, RequiredItems eksik bırakılırsa oyuncular eşyalarını ücretsiz olarak yükseltebilir. Bu tür hataları önlemek için test sunucularında (örneğin MyKO, KoWotD) mutlaka test yapılması önerilir.
ITEM_UPGRADE Prosedürü ile Sunucu Geliştirme
ITEM_UPGRADE prosedürü, sadece eşya yükseltme değil aynı zamanda sunucu dengesi için de kritiktir. Özellikle PvP sunucularında upgrade oranları düşük tutularak değerli eşyaların nadirliği korunur. Cap 83 sistemleri için bu çok önemlidir. KO Bot geliştiricileri de bu sistemle entegre çalışarak, botların eşya yükseltme işlemlerini simüle edebilirler. Bu sayede gerçekçi bir oyun ortamı oluşturulabilir.
ITEM_UPGRADE ile Sunucu Tanıtımı
Knight Online private server tanıtımı yapan sitelerde ITEM_UPGRADE sisteminin nasıl çalıştığı, sunucu avantajları arasında öne çıkarılabilir. Örneğin, 'Sunucumuzda ITEM_UPGRADE sistemi ile %100 benzersiz bir PvP deneyimi!' gibi ifadeler kullanıcıları çekebilir. Bu tür açıklamalar, oyuncuların sunucuyu daha fazla tercih etmesini sağlar. Knight Lobby gibi platformlar aracılığıyla sunucuların ITEM_UPGRADE sistemleri detaylı şekilde tanıtılabilmektedir.
What is ITEM_UPGRADE Generator Procedure?
In Knight Online private servers (pserver), the ITEM_UPGRADE generator procedure is the core system that manages the item upgrade mechanics for players. This system holds significant importance during KO development (kodev). The ITEM_UPGRADE file allows players to upgrade their items at specific rates and according to defined rules. This enables systems like cap 83, cap 70 to be managed more efficiently on servers.
The Location and Importance of the ITEM_UPGRADE File
Knight Online emulator developers typically use the ITEM_UPGRADE file alongside the item.bin file located within server files. This file includes the upgrade ratios of items, required materials, and systemic rules. Integrated with KO DB, this structure can be optimized differently on both PvP and PvE servers. Well-known servers like USKO and ROFD enrich the gameplay experience by customizing their own ITEM_UPGRADE files.
Steps to Create ITEM_UPGRADE
Firstly, a developer (KO Dev) must define the ITEM_UPGRADE table in the SQL database to create ITEM_UPGRADE. This table is generally located in the KO DB file. Columns to be added to the table are: ItemID, UpgradeLevel, SuccessRate, Cost, RequiredItems. These values determine which items players can upgrade, with which materials, and at what success rate. For example, the upgrade system for accessories such as Iron Necklace is managed from here.
Errors and Solutions
Incorrectly defining the ITEM_UPGRADE system can cause serious issues on the server. For example, high SuccessRate values may lead to inflation on the server, disrupting the economic balance. Similarly, if RequiredItems is left blank, players might upgrade items freely without cost. To avoid such errors, testing on test servers (e.g., MyKO, KoWotD) is highly recommended.
Server Development with ITEM_UPGRADE Procedure
The ITEM_UPGRADE procedure is critical not only for item upgrades but also for server balance. Especially in PvP servers, keeping upgrade rates low preserves the rarity of valuable items. This is very important for cap 83 systems. KO bot developers can simulate bot item upgrading processes integrated with this system, thus creating a more realistic gaming environment.
Server Promotion with ITEM_UPGRADE
Features of the ITEM_UPGRADE system can be highlighted among server advantages during Knight Online private server promotions. For example, phrases like 'Unique PvP experience with our custom ITEM_UPGRADE system!' can attract players. Such descriptions can encourage more players to choose the server. Platforms like Knight Lobby allow detailed presentation of servers' ITEM_UPGRADE systems.
