- Discord
- pvpers.gg
Bu prosedür sayesinde Knight Online PvP serverınız içindeki NCS sorunlarınız tamamen ortadan kalkacaktır.
Peki, Nasıl Kullanılır?
- Oyun içi NPC üzerinden: NCS Scroll, NP veya benzeri eşyalar için NPC ekleyerek kullanım sağlayabilirsiniz.
- Panel üzerinden otomatik algılama: Oyuncu almak istediği ID'yi seçer, sistem gerekli kontrolleri yaptıktan sonra Query kodu otomatik olarak işler.
- NCS SC kısayolu olarak: Bu yöntemle işlem daha hızlı olabilir, ancak karmaşık bir yapı gerektirir. Özellikle beginner seviyesindeki bir kullanıcı için zorlu bir süreç olacaktır. Ayrıca client tarafında patch işlemi yapılması gerekecektir.
Kod:
CREATE PROCEDURE CHANGE_NEW_ID
@byType CHAR(21),
@AccountID CHAR(21),
@OldCharID CHAR(21),
@NewCharID CHAR(21),
@nRet SMALLINT OUTPUT
AS
/*
Author: AKUMA
*/
DECLARE @CheckUserID INT
SELECT @CheckUserID = COUNT(strUserID)
FROM USERDATA
WHERE strUserID = @NewCharID
IF @CheckUserID = 0
BEGIN
-- Change Account All Information
UPDATE ACCOUNT_CHAR
SET strCharID1 = @NewCharID
WHERE strCharID1 = @OldCharID AND strCharID1 IS NOT NULL
UPDATE ACCOUNT_CHAR
SET strCharID2 = @NewCharID
WHERE strCharID2 = @OldCharID AND strCharID2 IS NOT NULL
UPDATE ACCOUNT_CHAR
SET strCharID3 = @NewCharID
WHERE strCharID3 = @OldCharID AND strCharID3 IS NOT NULL
UPDATE USERDATA
SET strUserId = @NewCharID
WHERE strUserId = @OldCharID AND strUserId IS NOT NULL
-- Change Information a User in Knights
UPDATE KNIGHTS_USER
SET strUserId = @NewCharID
WHERE strUserId = @OldCharID AND strUserId IS NOT NULL
UPDATE KNIGHTS
SET Chief = @NewCharID
WHERE Chief = @OldCharID AND Chief IS NOT NULL
UPDATE KNIGHTS
SET ViceChief_1 = @NewCharID
WHERE ViceChief_1 = @OldCharID AND ViceChief_1 IS NOT NULL
UPDATE KNIGHTS
SET ViceChief_2 = @NewCharID
WHERE ViceChief_2 = @OldCharID AND ViceChief_2 IS NOT NULL
UPDATE KNIGHTS
SET ViceChief_3 = @NewCharID
WHERE ViceChief_3 = @OldCharID AND ViceChief_3 IS NOT NULL
-- Change Information a User is King
UPDATE KING_SYSTEM
SET strKingName = @NewCharID
WHERE strKingName = @OldCharID AND strKingName IS NOT NULL
UPDATE KING_ELECTION_LIST
SET strName = @NewCharID
WHERE strName = @OldCharID AND strName IS NOT NULL
-- Change User Friend List Information
UPDATE FRIEND_LIST
SET strUserID = @NewCharID
WHERE strUserID = @OldCharID
-- User Rental Item
UPDATE RENTAL_ITEM
SET strLenderCharID = @NewCharID
WHERE strLenderCharID = @OldCharID AND strLenderCharID IS NOT NULL
UPDATE RENTAL_ITEM
SET strBorrowerCharID = @NewCharID
WHERE strBorrowerCharID = @OldCharID AND strBorrowerCharID IS NOT NULL
UPDATE RENTAL_ITEM_LIST
SET strBorrowerCharID = @NewCharID
WHERE strBorrowerCharID = @OldCharID AND strBorrowerCharID IS NOT NULL
-- Change Current User
UPDATE CURRENTUSER
SET strCharID = @NewCharID
WHERE strCharID = @OldCharID
-- Change Saved Magic
UPDATE USER_SAVED_MAGIC
SET strCharID = @NewCharID
WHERE strCharID = @OldCharID
-- Change Skill Shortcut
UPDATE USERDATA_SKILLSHORTCUT
SET strCharID = @NewCharID
WHERE strCharID = @OldCharID
-- Name Change is Successful
SET @nRet = 0
RETURN
END
ELSE
BEGIN
-- Entered ID is Already Being Used by Another Character
SET @nRet = 1
RETURN
END